<?xml version="1.0"?> <robot name="universal_robot"> <link name="base_link" /> <joint name="shoulder_pan_joint" type="revolute"> <parent link="base_link" /> <child link = "shoulder_link" /> <origin xyz="0.0 0.0 0.10" rpy="0.0 0.0 0.0" /> <axis xyz="0.0 0.0 1.0" /> <limit lower="-3.14" upper="3.14" effort="10.0" velocity="1.0"/> </joint> <link name="shoulder_link"> <visual> <geometry> <cylinder length="0.20" radius="0.1"/> </geometry> </visual> </link> <joint name="shoulder_lift_joint" type="revolute"> <parent link="shoulder_link" /> <child link = "upper_arm_link" /> <axis xyz="0.0 1.0 0.0" /> <limit lower="-3.14" upper="3.14" effort="10.0" velocity="1.0"/> </joint> <link name="upper_arm_link"> <visual> <geometry> <cylinder length="0.50" radius="0.05"/> </geometry> <origin xyz="0.0 0.20 0.25" rpy="0.0 0.0 0.0" /> </visual> </link> <joint name="elbow_joint" type="revolute"> <parent link="upper_arm_link" /> <child link = "forearm_link" /> <origin xyz="0.0 0.0 0.50" rpy="0.0 0.0 0.0" /> <axis xyz="0.0 -1.0 0.0" /> <limit lower="-3.14" upper="3.14" effort="10.0" velocity="1.0"/> </joint> <link name="forearm_link"> <visual> <geometry> <cylinder length="0.50" radius="0.05"/> </geometry> <origin xyz="0.0 0.0 0.25" rpy="0.0 0.0 0.0" /> </visual> </link> </robot>