In ROS 1, you could limit the speed that the position controller moved at by specifying a <limit> tag within the <joint> tag. See this part of the tutorial

I'm trying a similar thing in ROS 2, but the <limit> tag has no effect, still snapping immediately. Check out this branch and this section of the partially rewritten tutorial

Does the ros2_control's JointGroupPositionController handle velocity constraints through the <joint> tag or is there something else in the <ros2_control><joint> tag that I need to specify.


1 Answer 1


No, unfortunately this isn't implemented right now by most of the ros2_controllers (except for, e.g., diff_drive_controller). But it is on the roadmap as far as I know.

In general, ros2_controllers don't parse the URDF except for the ros2_control tags (admittance controller is again an exception, which needs the kinematics from the URDF): nothing from the <joint> tag well be used. But this might change in the future, see this issue

  • $\begingroup$ @DLu did that answer your question? If so, please mark the answer :) $\endgroup$ Commented Sep 9, 2023 at 12:51

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.