Code Monkey home page Code Monkey logo

Comments (18)

EnricoMingo avatar EnricoMingo commented on June 19, 2024

So,
I am playing with torque and I have a LOT of problems.

  • First, getTorque: in Gazebo I try this->_robot->GetJoint(joint_names[jnt_cnt])->GetForceTorque(0); that return a jointWrench that are orce/torque that parent and child links apply on the joint. So I have 2 forces and 2 torques...I d not understand how to use them (I already try to sum/subtract them...). Apparently there is no way to "measure" the torque exerted by the joint.
  • Second, setTorque: Here the problem is the ITorqueControl since if I try:
    torq set trq j[oint_index] [value]
    the method setRefTorque(int j, double t) is not called at all.

If someone has some idea pls...

from gazebo-yarp-plugins.

alessandrosettimi avatar alessandrosettimi commented on June 19, 2024

for the second point: look in test.cpp, you have to use "ref" instead of
"trq" (torq set ref j[oint_index] [value]), it should call the function
setRefTorque

2013/11/4 EnricoMingo [email protected]

So,
I am playing with torque and I have a LOT of problems.

First, getTorque: in Gazebo I try this->_robot->GetJoint(joint_names[jnt_cnt])->GetForceTorque(0);
that return a jointWrench that are orce/torque that parent and child links
apply on the joint. So I have 2 forces and 2 torques...I d not understand
how to use them (I already try to sum/subtract them...). Apparently there
is no way to "measure" the torque exerted by the joint.

Second, setTorque: Here the problem is the ITorqueControl since if I
try:
torq set trq j[oint_index] [value]
the method setRefTorque(int j, double t) is not called at all.

If someone has some idea pls...


Reply to this email directly or view it on GitHubhttps://github.com//issues/14#issuecomment-27727566
.

Alessandro Settimi

Ph.D. Student at Research Center “E. Piaggio”, Dipartimento di Ingegneria
dell'Informazione, University of Pisa, Italy

eMail: [email protected]

from gazebo-yarp-plugins.

lornat75 avatar lornat75 commented on June 19, 2024

For simpler debugging you can use the robotMotorGui, it can send torque commands. Ask Marco Randazzo (iCub Facility) for help.

from gazebo-yarp-plugins.

EnricoMingo avatar EnricoMingo commented on June 19, 2024

O_O !

...domani...

from gazebo-yarp-plugins.

EnricoMingo avatar EnricoMingo commented on June 19, 2024

torq set ref [joint_index] [value] does not work

from gazebo-yarp-plugins.

alessandrosettimi avatar alessandrosettimi commented on June 19, 2024

As I said in yammer, this command is parsed correctly but the gazebo plugin
gives an error, like that the command after "set" is not recognized. I
tried to chance testmotor in order to.user trq instead of ref and the
result is the same...
Il giorno 05/nov/2013 11:54, "EnricoMingo" [email protected] ha
scritto:

torq set ref [joint_index] [value] does not work


Reply to this email directly or view it on GitHubhttps://github.com//issues/14#issuecomment-27763669
.

from gazebo-yarp-plugins.

MirkoFerrati avatar MirkoFerrati commented on June 19, 2024

In my opinion this is a yarp problem. test.cpp was taken from the yarp documentation to be used as a quick way to send command to coman. Maybe it's time to move to something fully supported/documented.
At the moment I can't even remember the original filename of test.cpp.

from gazebo-yarp-plugins.

lornat75 avatar lornat75 commented on June 19, 2024

Update on my post: checking more carefully robotmotorgui provides access to impedance interface, which has an offset that can work similarly to setTorque(), but that implements a different command.

from gazebo-yarp-plugins.

EnricoMingo avatar EnricoMingo commented on June 19, 2024

We have Torque Control. Actually we have found the problem: you have to set to 0.0 all the PIDs. We think that doing the same is possible to have also the joint velocity control implemented trough the jointController. For YARP: we were using an old version of YARP(yarp-2.3.22) that did not implemented the methods that call the methods for the torques. Now Alberto has fix something. I will send to him the and all of you the patched version.

from gazebo-yarp-plugins.

lornat75 avatar lornat75 commented on June 19, 2024

Alberto is pushing a new version of the controlboard to YARP trunk. Please take some time to update YARP and use this new object instead, it solves many issues and implements many new features.

Also remember that sending commands through "yarp rpc" is handy but it is much easier to use interfaces (see iCub tutorials) in real code.

Sorry if I repeat myself but I don't want you guys to get stuck in local minima :)

from gazebo-yarp-plugins.

EnricoMingo avatar EnricoMingo commented on June 19, 2024

Roger Roger!

from gazebo-yarp-plugins.

MirkoFerrati avatar MirkoFerrati commented on June 19, 2024

It looks like Alberto has not yet pushed the new controlboard. robotology/yarp#90
We are having the same problems as before with the yarp torque commands. Can you confirm that the problem is not from our side?

Sorry, we were still using the old yarp version. With the new one, downloaded from yarp master, the plugin does not compile. We are still investigating.

from gazebo-yarp-plugins.

traversaro avatar traversaro commented on June 19, 2024

Little note: the automated Travis-CI testing use yarp 2.3.22. If we want to depend on master no problem, I can change the .travis.yml file as necessary (for now master seem to compile with 2.3.22).

from gazebo-yarp-plugins.

barbalberto avatar barbalberto commented on June 19, 2024

New wrappers are available in my remote branch here
https://github.com/barbalberto/yarp.git, branch named wrappers

A small cleanup is ongoing in the lib yarpdev but you can safely import the wrappers from this branch.

from gazebo-yarp-plugins.

EnricoMingo avatar EnricoMingo commented on June 19, 2024

Does anyone tested the torque control in simulation? When I try to send torques after setting all the joints control modes I have this error in simulation:

received an unknown command after a VOCAB_SET

both using the simpleClient and PD+Gravity comp. Can anyone try and see if it is my problem only?

from gazebo-yarp-plugins.

barbalberto avatar barbalberto commented on June 19, 2024

The reason probably is that the controlboard used in the plugin doesn't implement all methods of torque control as we saw last week.
The plugin should use instead the controlBoardWrapper2, newer version my branch.
To do so, simply change the string in the property before the polydriver.open.
I' ll show you tomorrow :-)

EnricoMingo [email protected] Ha scritto:

Does anyone tested the torque control in simulation? When I try to send torques after setting all the joints control modes I have this error in simulation:

received an unknown command after a VOCAB_SET

both using the simpleClient and PD+Gravity comp. Can anyone try and see if it is my problem only?


Reply to this email directly or view it on GitHubhttps://github.com//issues/14#issuecomment-28241139.

from gazebo-yarp-plugins.

traversaro avatar traversaro commented on June 19, 2024

The information about the used device is contained in the .ini files for the simulated controlboards (for the coman model check here: https://github.com/EnricoMingo/iit-coman-ros-pkg/tree/master/coman_gazebo/sdf/conf ).
A fallback solution is provided in the source code if no .ini configuration file is found but I guess it is no more in use (I hope) and will be removed in the future.

from gazebo-yarp-plugins.

traversaro avatar traversaro commented on June 19, 2024

I guess this was solved in #36 , as @DanielePucci and @francesco-romano were able to use the torque control with current master ( 48e3cd7 ).

from gazebo-yarp-plugins.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.