ros / joint_state_publisher

http://wiki.ros.org/joint_state_publisher
50 stars 81 forks source link

Enforce mimic joint position limits #13

Closed alextoind closed 4 years ago

alextoind commented 6 years ago

I've noted that when using mimic joints in a URDF model, they are not constrained by their own limits. Indeed the computation involves only the value of the master joint(s) together with the given factor(s) and offset(s), but this could exceed the mimic joint limits.

My proposal is just a simple example to discuss whether such a feature is interesting for the community or not. If so I'll add tests later.

Is that a good place to enforce the limits or there are better choices?

sloretz commented 4 years ago

Hey @alextoind ! Thanks for the PR. Is this a change you still need?

It looks reasonable; however, I'm concerned about it changing behavior on old robot descriptions. The URDF <limit> tag is required for revolute and prismatic joints, so I'm concerned that old URDFs have junk values for lower and upper.

I think this change would be fine in a new ROS distro, so I've retargeted this PR at noetic-devel, but since no one has spoken up in favor of this feature I'm inclined to close it. Thoughts?

alextoind commented 4 years ago

Hello @sloretz, Yes I agree with you. It is not a common feature at this point.

sloretz commented 4 years ago

Sounds good; I'll close it. Thanks for the PR!