-
Notifications
You must be signed in to change notification settings - Fork 81
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Adapt lwr_controllers to urdf with dummy links #25
Comments
Damn... didn't think of that, true. I need the stiffness joint to be like a real joint to appear in the hardware interface.
|
Actually I was wrong, it manages to start with a couple of little hacks. Still the compatibility with KDL is gone until we do things nicely (3rd option). I think I will start working on the controller subclass I mentioned in #1, so that we can confine all the hacks in there. |
@marcoesposito1988 could you mention the hacks that you used? @carlosjoserg I am bit confused about the usefulness of the stiffness parameters in the simulation. Are the efforts sent by the controllers in simulation similar to "FRI torque"? |
@nrontsis Right now, the default interface to the gazebo model emulates the "Section 9.2.3 Controller strategy 30 (axis-specific stiffness controller)", that is, the control law is: If you use position_controllers for Stiffness/Position you are actually sending K_FRI and q_FRI, while tau_FRI = D_FRI = 0. q_msr is read from the simulation and f_dyn is the gravity term computed with KDL using the URDF parameters. The stiffness joints are necessary for now to account for limits and to appear in the hardware interface as controllable joints, but actually they are not moving anything. I don't like that, but it is a temporary solution until a proper "stiffness" or "impedance" interface is implemented. The problems in this issue refers to custom controllers in the package lwr_controllers, but if you use standard ros-controllers, particularly position_controllers, you can run all packages as they are. Check the single_lwr_example. |
@nrontsis Ah, I see you want to mount the shadow hand on a kuka lwr. So, check also our vito robot where we have a custom Pisa/IIT SoftHand model as well X2. |
Thank you @carlosjoserg I will check vito to see how you integrated the hand to kuka. |
I think this problem was addressed with pull requests #26 and #28. @nrontsis, @carlosjoserg: can we close this? I will open a new issue about getting Gazebo to work again with the effort controllers. I have a very horrible hack in 675c0d7 that brings it to a working condition, we should make it into a viable solution. |
yes! |
The new dummy links added to the URDF after the merge make it impossible to initialize the controllers in lwr_controller.
In particular, kdl_tree_.getNrOfJoints() returns 14, screwing up all index computations.
Is there a way to avoid these dummy links that clutter the URDF? It looks like we cannot use KDL any more, at least not without huge hacks.
The text was updated successfully, but these errors were encountered: