I am building a simulation of a custom-designed robotic arm. In the simulation, I am controlling it using 'effort_controllers/JointVelocityController'. However, I want the joint to remain still when the velocity reference is 0, and as of right now, with a reference equal to 0 or close to it, the joint falls instead. I am getting up the joints like this:

<xacro:macro name="rev_junc" params="name parent child xyz rpy axis effort vel" >
    <joint name="${name}" type="continuous">
        <parent link="${parent}"/>
        <child link="${child}"/>
        <origin rpy="${rpy}" xyz="${xyz}"/>
        <limit effort="${effort}" velocity="${vel}"/>
        <axis xyz="${axis}"/>

Is there any way I can achieve the explained behavior?

  • $\begingroup$ Have you tried increasing the allowable joint effort, and decreasing the simulation max_step_size? $\endgroup$
    – Mike973
    Commented Jun 23 at 17:09


Your Answer

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

Browse other questions tagged or ask your own question.