We use the following example to combine URDFs: https://github.com/bulletphysics/bullet ... ineUrdf.py
We subsequently converted the revolute joints to continuous joints as per: #2839
But now, during the robot control (e.g. IK computation, joint control, etc.), we want to take into account the joint limits, velocity limits, etc. Studying the kuka_iiwa/model.urdf and combined.urdf, we observe the following differences:
kuka_iiwa/model.urdf:
Code: Select all
<!-- joint between link_5 and link_6 -->
<joint name="lbr_iiwa_joint_6" type="revolute">
<parent link="lbr_iiwa_link_5"/>
<child link="lbr_iiwa_link_6"/>
<origin rpy="1.57079632679 0 0" xyz="0 0 0.2155"/>
<axis xyz="0 0 1"/>
<limit effort="300" lower="-2.09439510239" upper="2.09439510239" velocity="10"/>
<dynamics damping="0.5"/>
</joint>
Code: Select all
<joint name="lbr_iiwa_joint_6" type="continuous">
<parent link="lbr_iiwa_link_5"/>
<child link="lbr_iiwa_link_6"/>
<dynamics damping="1.0" friction="0.0001"/>
<origin rpy="1.57080 -0.00000 0.00000" xyz="0.00000 0.00000 0.21550"/>
<axis xyz="0.00000 0.00000 1.00000"/>
</joint>
The field limit effort is missing and the dynamics damping parameter is different.
So here are our questions:
- How would you recommend to proceed to incorporate the limits info such that they're taken into account for robot control, e.g. IK computation?
- If we manually add the upper_limits, lower_limits and joint_ranges in the Python script, will they be taken into account during IK computation since the joints are now of type continuous and not revolute?
- Should we modify the URDF editor to automatically add limit effort?
- How should we rectify the dynamics damping parameters?