Skip to content
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

Velocity and Position command interfaces don't work when Effort command interface exist #343

Open
BarisYazici opened this issue Jun 13, 2024 · 5 comments
Labels
bug Something isn't working

Comments

@BarisYazici
Copy link

BarisYazici commented Jun 13, 2024

When I add the effort command interface to the test_cart_velocity.xacro.urdf example, the velocity example stops working. I modified the example to reproduce the bug https://github.com/BarisYazici/gz_ros2_control/blob/humble/ign_ros2_control_demos/urdf/test_cart_velocity.xacro.urdf.

@christophfroehlich
Copy link
Contributor

This might be a limit of ignition::gazebo::v6::EntityComponentManager.

But why would someone need velocity and effort at the same time? What should the physics engine do then?

@BarisYazici
Copy link
Author

They were not claimed by the controller at the same time. Effort interface was just available in the robot itself that triggered the bug.

@fbottarel
Copy link

@BarisYazici I've been stuck on this for a while, I want my simulated robot joints to have both an effort and velocity command interface since that reflects the real robot. Honestly I couldn't solve it so I made different URDFs and I load either one or the other according to how I want to control the joints.

@christophfroehlich christophfroehlich added the bug Something isn't working label Jul 11, 2024
@christophfroehlich
Copy link
Contributor

They were not claimed by the controller at the same time. Effort interface was just available in the robot itself that triggered the bug.

Ah I see. This shouldn't be a problem, maybe there is a bug in the logic of the perform_command_mode_switch. Maybe someone here could have a look into this?

@BarisYazici
Copy link
Author

@BarisYazici I've been stuck on this for a while, I want my simulated robot joints to have both an effort and velocity command interface since that reflects the real robot. Honestly I couldn't solve it so I made different URDFs and I load either one or the other according to how I want to control the joints.

Our workaround is also basically the same. Could take a look to perform_command_mode_switch when I find time @christophfroehlich

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants