ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange |
1 | initial version |
<?xml version="1.0" encoding="utf-8"?>
<robot name="pr2">
<link name="base_link">
<inertial>
<mass value="116.0"/>
<origin xyz="-0.061 0.0 0.1465"/>
<inertia ixx="5.652232699207" ixy="-0.009719934438" ixz="1.293988226423" iyy="5.669473158652" iyz="-0.007379583694" izz="3.683196351726"/>
</inertial>
<visual>
<origin rpy="0 0 0" xyz="0 0 0"/>
<geometry>
<mesh filename="package://pr2_description/meshes/base_v0/base.dae"/>
</geometry>
<material name="White"/>
</visual>
<collision>
<origin rpy="0 0 0" xyz="0 0 0"/>
<geometry>
<mesh filename="package://pr2_description/meshes/base_v0/base_L.stl"/>
</geometry>
</collision>
</link> <joint name="torso_lift_joint" type="prismatic"> <axis xyz="0 0 1"/> <limit effort="10000" lower="0.0" upper="0.33" velocity="0.013"/> <safety_controller k_position="100" k_velocity="2000000" soft_lower_limit="0.0115" soft_upper_limit="0.325"/> <calibration falling="0.00475"/> <dynamics damping="20000.0"/> <origin rpy="0 0 0" xyz="-0.05 0 0.739675"/> <parent link="base_link"/> <child link="torso_lift_link"/> </joint>
2 | No.2 Revision |
<?xml version="1.0" encoding="utf-8"?>
<robot name="pr2"> <link name="base_link"> <inertial> <mass value="116.0"/> <origin xyz="-0.061 0.0 0.1465"/> <inertia ixx="5.652232699207" ixy="-0.009719934438" ixz="1.293988226423" iyy="5.669473158652" iyz="-0.007379583694" izz="3.683196351726"/> </inertial> <visual> <origin rpy="0 0 0" xyz="0 0 0"/> <geometry> <mesh filename="package://pr2_description/meshes/base_v0/base.dae"/> </geometry> <material name="White"/> </visual> <collision> <origin rpy="0 0 0" xyz="0 0 0"/> <geometry> <mesh filename="package://pr2_description/meshes/base_v0/base_L.stl"/> </geometry> </collision>
This is the filtered out code from pr2.urdf for realising the usage of screw joint in torso. This screw joint lifts the torso from the base_link , visual for the screw is a cuboid.
Hope this helps in understanding the implementation of screw joint.
3 | No.3 Revision |
<robot name="pr2">
<link name="base_link">
<inertial>
<mass value="116.0"/>
<origin xyz="-0.061 0.0 0.1465"/>
<inertia ixx="5.652232699207" ixy="-0.009719934438" ixz="1.293988226423" iyy="5.669473158652" iyz="-0.007379583694" izz="3.683196351726"/>
</inertial>
<visual>
<origin rpy="0 0 0" xyz="0 0 0"/>
<geometry>
<mesh filename="package://pr2_description/meshes/base_v0/base.dae"/>
</geometry>
<material name="White"/>
</visual>
<collision>
<origin rpy="0 0 0" xyz="0 0 0"/>
<geometry>
<mesh filename="package://pr2_description/meshes/base_v0/base_L.stl"/>
</geometry>
</collision>
</link>
</link>
<joint name="torso_lift_joint" type="prismatic">
<axis xyz="0 0 1"/>
<limit effort="10000" lower="0.0" upper="0.33" velocity="0.013"/>
<!-- alpha tested velocity and effort limits -->
<safety_controller k_position="100" k_velocity="2000000" soft_lower_limit="0.0115" soft_upper_limit="0.325"/>
<calibration falling="0.00475"/>
<dynamics damping="20000.0"/>
<origin rpy="0 0 0" xyz="-0.05 0 0.739675"/>
<parent link="base_link"/>
<child link="torso_lift_link"/>
</joint>
<link name="torso_lift_link">
<inertial>
<mass value="36.248046"/>
<origin xyz="-0.1 0 -0.0885"/>
<inertia ixx="2.771653750257" ixy="0.004284522609" ixz="-0.160418504506" iyy="2.510019507959" iyz="0.029664468704" izz="0.526432355569"/>
</inertial>
<visual>
<origin rpy="0 0 0" xyz="0 0 0"/>
<geometry>
<mesh filename="package://pr2_description/meshes/torso_v0/torso_lift.dae"/>
</geometry>
<material name="Grey2"/>
</visual>
<collision name="torso_lift_collision">
<origin rpy="0 0 0" xyz="0 0 0"/>
<geometry>
<mesh filename="package://pr2_description/meshes/torso_v0/torso_lift_L.stl"/>
</geometry>
</collision>
</link>
<!-- actuated motor screw joint -->
<link name="torso_lift_motor_screw_link">
<inertial>
<mass value="1.0"/>
<origin rpy="0 0 0" xyz="0 0 0"/>
<inertia ixx="0.001" ixy="0.0" ixz="0.0" iyy="0.001" iyz="0.0" izz="0.001"/>
</inertial>
<visual>
<origin xyz="0 0 0" rpy="0 0 0"/>
0" />
<geometry>
<box size="0.5 0.7 0.01"/>
0.01" />
</geometry>
</visual>
<collision>
<origin xyz="0 0 0" rpy="0 0 0"/>
0" />
<geometry>
<box size="0.5 0.7 0.01"/>
0.01" />
</geometry>
</collision>
</link>
<joint name="torso_lift_motor_screw_joint" type="continuous">
<origin xyz="-0.15 0.0 0.7"/>
<axis xyz="0 0 1"/>
<parent link="base_link"/>
<child link="torso_lift_motor_screw_link"/>
<dynamics damping="0.0001"/>
</joint>
<gazebo>
<joint name="torso_lift_screw_torso_lift_joint" type="screw">
<parent>torso_lift_link</parent>
<child>torso_lift_motor_screw_link</child>
<axis>
<xyz>0 0 1</xyz>
</axis>
<thread_pitch>3141.6</thread_pitch>
</joint>
</gazebo>
<transmission name="torso_lift_trans" type="pr2_mechanism_model/SimpleTransmission">
<actuator name="torso_lift_motor"/>
<joint name="torso_lift_joint"/>
<mechanicalreduction>-47641.53</mechanicalreduction>
<mechanicalReduction>-47641.53</mechanicalReduction>
<simulated_actuated_joint name="torso_lift_motor_screw_joint" simulated_reduction="3141.6"/>
</transmission>
</robot></robot>
This is the filtered out code from pr2.urdf for realising the usage of screw joint in torso. This screw joint lifts the torso from the base_link , visual for the screw is a cuboid.
Hope this helps in understanding the implementation of screw joint.
4 | No.4 Revision |
<robot name="pr2">
<link name="base_link">
<inertial>
<mass value="116.0"/>
<origin xyz="-0.061 0.0 0.1465"/>
<inertia ixx="5.652232699207" ixy="-0.009719934438" ixz="1.293988226423" iyy="5.669473158652" iyz="-0.007379583694" izz="3.683196351726"/>
</inertial>
<visual>
<origin rpy="0 0 0" xyz="0 0 0"/>
<geometry>
<mesh filename="package://pr2_description/meshes/base_v0/base.dae"/>
</geometry>
</visual>
<collision>
<origin rpy="0 0 0" xyz="0 0 0"/>
<geometry>
<mesh filename="package://pr2_description/meshes/base_v0/base_L.stl"/>
</geometry>
</collision>
</link>
</link>
<joint name="torso_lift_joint" type="prismatic">
<axis xyz="0 0 1"/>
<limit effort="10000" lower="0.0" upper="0.33" velocity="0.013"/>
<!-- alpha tested velocity and effort limits -->
<safety_controller k_position="100" k_velocity="2000000" soft_lower_limit="0.0115" soft_upper_limit="0.325"/>
<calibration falling="0.00475"/>
<dynamics damping="20000.0"/>
<origin rpy="0 0 0" xyz="-0.05 0 0.739675"/>
<parent link="base_link"/>
<child link="torso_lift_link"/>
</joint>
</joint>
<link name="torso_lift_link">
<inertial>
<mass value="36.248046"/>
<origin xyz="-0.1 0 -0.0885"/>
<inertia ixx="2.771653750257" ixy="0.004284522609" ixz="-0.160418504506" iyy="2.510019507959" iyz="0.029664468704" izz="0.526432355569"/>
</inertial>
<visual>
<origin rpy="0 0 0" xyz="0 0 0"/>
<geometry>
<mesh filename="package://pr2_description/meshes/torso_v0/torso_lift.dae"/>
</geometry>
</visual>
<collision name="torso_lift_collision">
<origin rpy="0 0 0" xyz="0 0 0"/>
<geometry>
<mesh filename="package://pr2_description/meshes/torso_v0/torso_lift_L.stl"/>
</geometry>
</collision>
</link>
<!-- actuated motor screw joint -->
<link name="torso_lift_motor_screw_link">
<inertial>
<mass value="1.0"/>
<origin rpy="0 0 0" xyz="0 0 0"/>
<inertia ixx="0.001" ixy="0.0" ixz="0.0" iyy="0.001" iyz="0.0" izz="0.001"/>
</inertial>
<visual>
<origin xyz="0 0 0" rpy="0 0 0" />
<geometry>
<box size="0.5 0.7 0.01" />
</geometry>
</visual>
<collision>
<origin xyz="0 0 0" rpy="0 0 0" />
<geometry>
<box size="0.5 0.7 0.01" />
</geometry>
</collision>
</link>
<joint name="torso_lift_motor_screw_joint" type="continuous">
<origin xyz="-0.15 0.0 0.7"/>
<axis xyz="0 0 1"/>
<parent link="base_link"/>
<child link="torso_lift_motor_screw_link"/>
<dynamics damping="0.0001"/>
</joint>
<gazebo>
<joint name="torso_lift_screw_torso_lift_joint" type="screw">
<parent>torso_lift_link</parent>
<child>torso_lift_motor_screw_link</child>
<axis>
<xyz>0 0 1</xyz>
</axis>
<thread_pitch>3141.6</thread_pitch>
</joint>
</gazebo>
<transmission name="torso_lift_trans" type="pr2_mechanism_model/SimpleTransmission">
<actuator name="torso_lift_motor"/>
<joint name="torso_lift_joint"/>
<mechanicalReduction>-47641.53</mechanicalReduction>
<simulated_actuated_joint name="torso_lift_motor_screw_joint" simulated_reduction="3141.6"/>
</transmission>
</robot>
This is the filtered out code from pr2.urdf for realising the usage of screw joint in torso. This screw joint lifts the torso from the base_link , visual for the screw is a cuboid.
Hope this helps in understanding the implementation of screw joint.