Hi all,
I am trying to import my custom robot which has a closed kinematic chain. The problematic part in the urdf file is:
...
<joint name="joint1" type="revolute">
<origin rpy="0 0 0" xyz="0 0 0.92"/>
<parent link="link0"/>
<child link="link1"/>
<axis xyz="0 0 1"/>
<limit effort="87" lower="-3.14" upper="3.14" velocity="2.1750"/>
</joint>
<link name="link2">
<visual>
<geometry>
<mesh filename="package://my_description/meshes/visual/link1.dae"/>
</geometry>
</visual>
<collision>
<geometry>
<mesh filename="package://my_description/meshes/visual/link1.dae"/>
</geometry>
</collision>
<inertial>
<origin rpy="0 0 0" xyz="0 0 0"/>
<mass value="250"/>
<inertia ixx="1" ixy="0" ixz="0" iyy="1" iyz="0" izz="1"/>
</inertial>
</link>
<joint name="joint2" type="prismatic">
<origin rpy="0 -0.0498132 0" xyz="3.22 0 18.58"/>
<parent link="link1"/>
<child link="link2"/>
<axis xyz="1 0 0"/>
<limit effort="87" lower="0" upper="10" velocity="2.1750"/>
</joint>
<link name="link3">
<visual>
<geometry>
<mesh filename="package://my_description/meshes/visual/link2.dae"/>
</geometry>
</visual>
<collision>
<geometry>
<mesh filename="package://my_description/meshes/visual/link2.dae"/>
</geometry>
</collision>
<inertial>
<origin rpy="0 0 0" xyz="0 0 0"/>
<mass value="50"/>
<inertia ixx="1" ixy="0" ixz="0" iyy="1" iyz="0" izz="1"/>
</inertial>
</link>
<joint name="joint3Psi" type="continuous" >
<parent link="link2" />
<child link="link3_theta" />
<axis xyz="0 0 1" />
<dynamics damping="0.005" />
</joint>
<link name="link3_theta" />
<joint name="joint3Theta" type="continuous" >
<parent link="link3_theta" />
<child link="link3_alpha" />
<axis xyz="0 1 0" />
<dynamics damping="0.005" />
</joint>
<link name="link3_alpha" />
<joint name="joint3Alpha" type="continuous" >
<parent link="link3_alpha" />
<child link="link3_psi" />
<axis xyz="1 0 0" />
<dynamics damping="0.005" />
</joint>
<link name="link3_psi" />
<joint name="joint3" type="prismatic" >
<origin xyz="0.08 0 -3" />
<parent link="link3_psi" />
<child link="link3" />
<axis xyz="0 0 -1"/>
<limit effort="87" lower="0" upper="10" velocity="2.1750"/>
</joint>
<joint name="joint3_2Psi" type="continuous" >
<parent link="link2" />
<child link="link3_2_theta" />
<axis xyz="0 0 1" />
<dynamics damping="0.005" />
</joint>
<link name="link3_2_theta" />
<joint name="joint3_2Theta" type="continuous" >
<parent link="link3_2_theta" />
<child link="link3_2_alpha" />
<axis xyz="0 1 0" />
<dynamics damping="0.005" />
</joint>
<link name="link3_2_alpha" />
<joint name="joint3_2Alpha" type="continuous" >
<parent link="link3_2_alpha" />
<child link="link3_2_psi" />
<axis xyz="1 0 0" />
<dynamics damping="0.005" />
</joint>
<link name="link3_2_psi" />
<joint name="joint3_2" type="fixed" >
<origin xyz="-0.08 0 -3" />
<parent link="link3_2_psi" />
<child link="link3" />
<axis xyz="0 0 -1"/>
<limit effort="87" lower="0" upper="10" velocity="2.1750"/>
</joint>
Since the error occurs in the joint3_2 part, I assume that ISAAC GYM does not support this closed kinematic chain… Could you guys confirm this and also suggest any walk around solution?
Best