|
|
|
|
@@ -0,0 +1,691 @@
|
|
|
|
|
<?xml version="1.0" ?>
|
|
|
|
|
<!-- =================================================================================== -->
|
|
|
|
|
<!-- | This document was autogenerated by xacro from ur_description/urdf/ur5e.xacro | -->
|
|
|
|
|
<!-- | EDITING THIS FILE BY HAND IS NOT RECOMMENDED | -->
|
|
|
|
|
<!-- =================================================================================== -->
|
|
|
|
|
<robot name="ur5e_robot">
|
|
|
|
|
<!--
|
|
|
|
|
Base UR robot series xacro macro.
|
|
|
|
|
|
|
|
|
|
NOTE: this is NOT a URDF. It cannot directly be loaded by consumers
|
|
|
|
|
expecting a flattened '.urdf' file. See the top-level '.xacro' for that
|
|
|
|
|
(but note: that .xacro must still be processed by the xacro command).
|
|
|
|
|
|
|
|
|
|
For use in '.launch' files: use one of the 'load_urX.launch' convenience
|
|
|
|
|
launch files.
|
|
|
|
|
|
|
|
|
|
This file models the base kinematic chain of a UR robot, which then gets
|
|
|
|
|
parameterised by various configuration files to convert it into a UR3(e),
|
|
|
|
|
UR5(e), UR10(e) or UR16e.
|
|
|
|
|
|
|
|
|
|
NOTE: the default kinematic parameters (ie: link lengths, frame locations,
|
|
|
|
|
offets, etc) do not correspond to any particular robot. They are defaults
|
|
|
|
|
only. There WILL be non-zero offsets between the Forward Kinematics results
|
|
|
|
|
in TF (ie: robot_state_publisher) and the values reported by the Teach
|
|
|
|
|
Pendant.
|
|
|
|
|
|
|
|
|
|
For accurate (and robot-specific) transforms, the 'kinematics_parameters_file'
|
|
|
|
|
parameter MUST point to a .yaml file containing the appropriate values for
|
|
|
|
|
the targetted robot.
|
|
|
|
|
|
|
|
|
|
If using the UniversalRobots/Universal_Robots_ROS_Driver, follow the steps
|
|
|
|
|
described in the readme of that repository to extract the kinematic
|
|
|
|
|
calibration from the controller and generate the required .yaml file.
|
|
|
|
|
|
|
|
|
|
Main author of the migration to yaml configs: Ludovic Delval.
|
|
|
|
|
|
|
|
|
|
Contributors to previous versions (in no particular order):
|
|
|
|
|
|
|
|
|
|
- Felix Messmer
|
|
|
|
|
- Kelsey Hawkins
|
|
|
|
|
- Wim Meeussen
|
|
|
|
|
- Shaun Edwards
|
|
|
|
|
- Nadia Hammoudeh Garcia
|
|
|
|
|
- Dave Hershberger
|
|
|
|
|
- G. vd. Hoorn
|
|
|
|
|
- Philip Long
|
|
|
|
|
- Dave Coleman
|
|
|
|
|
- Miguel Prada
|
|
|
|
|
- Mathias Luedtke
|
|
|
|
|
- Marcel Schnirring
|
|
|
|
|
- Felix von Drigalski
|
|
|
|
|
- Felix Exner
|
|
|
|
|
- Jimmy Da Silva
|
|
|
|
|
- Ajit Krisshna N L
|
|
|
|
|
- Muhammad Asif Rana
|
|
|
|
|
-->
|
|
|
|
|
<!--
|
|
|
|
|
NOTE: the macro defined in this file is NOT part of the public API of this
|
|
|
|
|
package. Users CANNOT rely on this file being available, or stored in
|
|
|
|
|
this location. Nor can they rely on the existence of the macro.
|
|
|
|
|
-->
|
|
|
|
|
<transmission name="shoulder_pan_trans">
|
|
|
|
|
<type>transmission_interface/SimpleTransmission</type>
|
|
|
|
|
<joint name="shoulder_pan_joint">
|
|
|
|
|
<hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface>
|
|
|
|
|
</joint>
|
|
|
|
|
<actuator name="shoulder_pan_motor">
|
|
|
|
|
<mechanicalReduction>1</mechanicalReduction>
|
|
|
|
|
</actuator>
|
|
|
|
|
</transmission>
|
|
|
|
|
<transmission name="shoulder_lift_trans">
|
|
|
|
|
<type>transmission_interface/SimpleTransmission</type>
|
|
|
|
|
<joint name="shoulder_lift_joint">
|
|
|
|
|
<hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface>
|
|
|
|
|
</joint>
|
|
|
|
|
<actuator name="shoulder_lift_motor">
|
|
|
|
|
<mechanicalReduction>1</mechanicalReduction>
|
|
|
|
|
</actuator>
|
|
|
|
|
</transmission>
|
|
|
|
|
<transmission name="elbow_trans">
|
|
|
|
|
<type>transmission_interface/SimpleTransmission</type>
|
|
|
|
|
<joint name="elbow_joint">
|
|
|
|
|
<hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface>
|
|
|
|
|
</joint>
|
|
|
|
|
<actuator name="elbow_motor">
|
|
|
|
|
<mechanicalReduction>1</mechanicalReduction>
|
|
|
|
|
</actuator>
|
|
|
|
|
</transmission>
|
|
|
|
|
<transmission name="wrist_1_trans">
|
|
|
|
|
<type>transmission_interface/SimpleTransmission</type>
|
|
|
|
|
<joint name="wrist_1_joint">
|
|
|
|
|
<hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface>
|
|
|
|
|
</joint>
|
|
|
|
|
<actuator name="wrist_1_motor">
|
|
|
|
|
<mechanicalReduction>1</mechanicalReduction>
|
|
|
|
|
</actuator>
|
|
|
|
|
</transmission>
|
|
|
|
|
<transmission name="wrist_2_trans">
|
|
|
|
|
<type>transmission_interface/SimpleTransmission</type>
|
|
|
|
|
<joint name="wrist_2_joint">
|
|
|
|
|
<hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface>
|
|
|
|
|
</joint>
|
|
|
|
|
<actuator name="wrist_2_motor">
|
|
|
|
|
<mechanicalReduction>1</mechanicalReduction>
|
|
|
|
|
</actuator>
|
|
|
|
|
</transmission>
|
|
|
|
|
<transmission name="wrist_3_trans">
|
|
|
|
|
<type>transmission_interface/SimpleTransmission</type>
|
|
|
|
|
<joint name="wrist_3_joint">
|
|
|
|
|
<hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface>
|
|
|
|
|
</joint>
|
|
|
|
|
<actuator name="wrist_3_motor">
|
|
|
|
|
<mechanicalReduction>1</mechanicalReduction>
|
|
|
|
|
</actuator>
|
|
|
|
|
</transmission>
|
|
|
|
|
<!-- links: main serial chain -->
|
|
|
|
|
<link name="base_link"/>
|
|
|
|
|
<link name="base_link_inertia">
|
|
|
|
|
<visual>
|
|
|
|
|
<origin rpy="0 0 3.141592653589793" xyz="0 0 0"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<mesh filename="meshes/ur5e/visual/base.dae"/>
|
|
|
|
|
</geometry>
|
|
|
|
|
<material name="LightGrey">
|
|
|
|
|
<color rgba="0.7 0.7 0.7 1.0"/>
|
|
|
|
|
</material>
|
|
|
|
|
</visual>
|
|
|
|
|
<collision>
|
|
|
|
|
<origin rpy="0 0 3.141592653589793" xyz="0 0 0"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<mesh filename="meshes/ur5e/collision/base.stl"/>
|
|
|
|
|
</geometry>
|
|
|
|
|
</collision>
|
|
|
|
|
<inertial>
|
|
|
|
|
<mass value="4.0"/>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0 0 0"/>
|
|
|
|
|
<inertia ixx="0.00443333156" ixy="0.0" ixz="0.0" iyy="0.00443333156" iyz="0.0" izz="0.0072"/>
|
|
|
|
|
</inertial>
|
|
|
|
|
</link>
|
|
|
|
|
<link name="shoulder_link">
|
|
|
|
|
<visual>
|
|
|
|
|
<origin rpy="0 0 3.141592653589793" xyz="0 0 0"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<mesh filename="meshes/ur5e/visual/shoulder.dae"/>
|
|
|
|
|
</geometry>
|
|
|
|
|
<material name="LightGrey">
|
|
|
|
|
<color rgba="0.7 0.7 0.7 1.0"/>
|
|
|
|
|
</material>
|
|
|
|
|
</visual>
|
|
|
|
|
<collision>
|
|
|
|
|
<origin rpy="0 0 3.141592653589793" xyz="0 0 0"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<mesh filename="meshes/ur5e/collision/shoulder.stl"/>
|
|
|
|
|
</geometry>
|
|
|
|
|
</collision>
|
|
|
|
|
<inertial>
|
|
|
|
|
<mass value="3.7"/>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0 0 0"/>
|
|
|
|
|
<inertia ixx="0.010267495893" ixy="0.0" ixz="0.0" iyy="0.010267495893" iyz="0.0" izz="0.00666"/>
|
|
|
|
|
</inertial>
|
|
|
|
|
</link>
|
|
|
|
|
<link name="upper_arm_link">
|
|
|
|
|
<visual>
|
|
|
|
|
<origin rpy="1.5707963267948966 0 -1.5707963267948966" xyz="0 0 0.138"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<mesh filename="meshes/ur5e/visual/upperarm.dae"/>
|
|
|
|
|
</geometry>
|
|
|
|
|
<material name="LightGrey">
|
|
|
|
|
<color rgba="0.7 0.7 0.7 1.0"/>
|
|
|
|
|
</material>
|
|
|
|
|
</visual>
|
|
|
|
|
<collision>
|
|
|
|
|
<origin rpy="1.5707963267948966 0 -1.5707963267948966" xyz="0 0 0.138"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<mesh filename="meshes/ur5e/collision/upperarm.stl"/>
|
|
|
|
|
</geometry>
|
|
|
|
|
</collision>
|
|
|
|
|
<inertial>
|
|
|
|
|
<mass value="8.393"/>
|
|
|
|
|
<origin rpy="0 1.5707963267948966 0" xyz="-0.2125 0.0 0.138"/>
|
|
|
|
|
<inertia ixx="0.1338857818623325" ixy="0.0" ixz="0.0" iyy="0.1338857818623325" iyz="0.0" izz="0.0151074"/>
|
|
|
|
|
</inertial>
|
|
|
|
|
</link>
|
|
|
|
|
<link name="forearm_link">
|
|
|
|
|
<visual>
|
|
|
|
|
<origin rpy="1.5707963267948966 0 -1.5707963267948966" xyz="0 0 0.007"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<mesh filename="meshes/ur5e/visual/forearm.dae"/>
|
|
|
|
|
</geometry>
|
|
|
|
|
<material name="LightGrey">
|
|
|
|
|
<color rgba="0.7 0.7 0.7 1.0"/>
|
|
|
|
|
</material>
|
|
|
|
|
</visual>
|
|
|
|
|
<collision>
|
|
|
|
|
<origin rpy="1.5707963267948966 0 -1.5707963267948966" xyz="0 0 0.007"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<mesh filename="meshes/ur5e/collision/forearm.stl"/>
|
|
|
|
|
</geometry>
|
|
|
|
|
</collision>
|
|
|
|
|
<inertial>
|
|
|
|
|
<mass value="2.275"/>
|
|
|
|
|
<origin rpy="0 1.5707963267948966 0" xyz="-0.1961 0.0 0.007"/>
|
|
|
|
|
<inertia ixx="0.031209355099586295" ixy="0.0" ixz="0.0" iyy="0.031209355099586295" iyz="0.0" izz="0.004095"/>
|
|
|
|
|
</inertial>
|
|
|
|
|
</link>
|
|
|
|
|
<link name="wrist_1_link">
|
|
|
|
|
<visual>
|
|
|
|
|
<!-- TODO: Move this to a parameter -->
|
|
|
|
|
<origin rpy="1.5707963267948966 0 0" xyz="0 0 -0.127"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<mesh filename="meshes/ur5e/visual/wrist1.dae"/>
|
|
|
|
|
</geometry>
|
|
|
|
|
<material name="LightGrey">
|
|
|
|
|
<color rgba="0.7 0.7 0.7 1.0"/>
|
|
|
|
|
</material>
|
|
|
|
|
</visual>
|
|
|
|
|
<collision>
|
|
|
|
|
<origin rpy="1.5707963267948966 0 0" xyz="0 0 -0.127"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<mesh filename="meshes/ur5e/collision/wrist1.stl"/>
|
|
|
|
|
</geometry>
|
|
|
|
|
</collision>
|
|
|
|
|
<inertial>
|
|
|
|
|
<mass value="1.219"/>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0 0 0"/>
|
|
|
|
|
<inertia ixx="0.0025598989760400002" ixy="0.0" ixz="0.0" iyy="0.0025598989760400002" iyz="0.0" izz="0.0021942"/>
|
|
|
|
|
</inertial>
|
|
|
|
|
</link>
|
|
|
|
|
<link name="wrist_2_link">
|
|
|
|
|
<visual>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0 0 -0.0997"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<mesh filename="meshes/ur5e/visual/wrist2.dae"/>
|
|
|
|
|
</geometry>
|
|
|
|
|
<material name="LightGrey">
|
|
|
|
|
<color rgba="0.7 0.7 0.7 1.0"/>
|
|
|
|
|
</material>
|
|
|
|
|
</visual>
|
|
|
|
|
<collision>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0 0 -0.0997"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<mesh filename="meshes/ur5e/collision/wrist2.stl"/>
|
|
|
|
|
</geometry>
|
|
|
|
|
</collision>
|
|
|
|
|
<inertial>
|
|
|
|
|
<mass value="1.219"/>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0 0 0"/>
|
|
|
|
|
<inertia ixx="0.0025598989760400002" ixy="0.0" ixz="0.0" iyy="0.0025598989760400002" iyz="0.0" izz="0.0021942"/>
|
|
|
|
|
</inertial>
|
|
|
|
|
</link>
|
|
|
|
|
<link name="wrist_3_link">
|
|
|
|
|
<visual>
|
|
|
|
|
<origin rpy="1.5707963267948966 0 0" xyz="0 0 -0.0989"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<mesh filename="meshes/ur5e/visual/wrist3.dae"/>
|
|
|
|
|
</geometry>
|
|
|
|
|
<material name="LightGrey">
|
|
|
|
|
<color rgba="0.7 0.7 0.7 1.0"/>
|
|
|
|
|
</material>
|
|
|
|
|
</visual>
|
|
|
|
|
<collision>
|
|
|
|
|
<origin rpy="1.5707963267948966 0 0" xyz="0 0 -0.0989"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<mesh filename="meshes/ur5e/collision/wrist3.stl"/>
|
|
|
|
|
</geometry>
|
|
|
|
|
</collision>
|
|
|
|
|
<inertial>
|
|
|
|
|
<mass value="0.1879"/>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0.0 0.0 -0.0229"/>
|
|
|
|
|
<inertia ixx="9.890410052167731e-05" ixy="0.0" ixz="0.0" iyy="9.890410052167731e-05" iyz="0.0" izz="0.0001321171875"/>
|
|
|
|
|
</inertial>
|
|
|
|
|
</link>
|
|
|
|
|
<!-- joints: main serial chain -->
|
|
|
|
|
<joint name="base_link-base_link_inertia" type="fixed">
|
|
|
|
|
<parent link="base_link"/>
|
|
|
|
|
<child link="base_link_inertia"/>
|
|
|
|
|
<!-- 'base_link' is REP-103 aligned (so X+ forward), while the internal
|
|
|
|
|
frames of the robot/controller have X+ pointing backwards.
|
|
|
|
|
Use the joint between 'base_link' and 'base_link_inertia' (a dummy
|
|
|
|
|
link/frame) to introduce the necessary rotation over Z (of pi rad).
|
|
|
|
|
-->
|
|
|
|
|
<origin rpy="0 0 3.141592653589793" xyz="0 0 0"/>
|
|
|
|
|
</joint>
|
|
|
|
|
<joint name="shoulder_pan_joint" type="revolute">
|
|
|
|
|
<parent link="base_link_inertia"/>
|
|
|
|
|
<child link="shoulder_link"/>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0 0 0.1625"/>
|
|
|
|
|
<axis xyz="0 0 1"/>
|
|
|
|
|
<limit effort="150.0" lower="-6.283185307179586" upper="6.283185307179586" velocity="3.141592653589793"/>
|
|
|
|
|
<dynamics damping="0" friction="0"/>
|
|
|
|
|
</joint>
|
|
|
|
|
<joint name="shoulder_lift_joint" type="revolute">
|
|
|
|
|
<parent link="shoulder_link"/>
|
|
|
|
|
<child link="upper_arm_link"/>
|
|
|
|
|
<origin rpy="1.570796327 0 0" xyz="0 0 0"/>
|
|
|
|
|
<axis xyz="0 0 1"/>
|
|
|
|
|
<limit effort="150.0" lower="-6.283185307179586" upper="6.283185307179586" velocity="3.141592653589793"/>
|
|
|
|
|
<dynamics damping="0" friction="0"/>
|
|
|
|
|
</joint>
|
|
|
|
|
<joint name="elbow_joint" type="revolute">
|
|
|
|
|
<parent link="upper_arm_link"/>
|
|
|
|
|
<child link="forearm_link"/>
|
|
|
|
|
<origin rpy="0 0 0" xyz="-0.425 0 0"/>
|
|
|
|
|
<axis xyz="0 0 1"/>
|
|
|
|
|
<limit effort="150.0" lower="-3.141592653589793" upper="3.141592653589793" velocity="3.141592653589793"/>
|
|
|
|
|
<dynamics damping="0" friction="0"/>
|
|
|
|
|
</joint>
|
|
|
|
|
<joint name="wrist_1_joint" type="revolute">
|
|
|
|
|
<parent link="forearm_link"/>
|
|
|
|
|
<child link="wrist_1_link"/>
|
|
|
|
|
<origin rpy="0 0 0" xyz="-0.3922 0 0.1333"/>
|
|
|
|
|
<axis xyz="0 0 1"/>
|
|
|
|
|
<limit effort="28.0" lower="-6.283185307179586" upper="6.283185307179586" velocity="3.141592653589793"/>
|
|
|
|
|
<dynamics damping="0" friction="0"/>
|
|
|
|
|
</joint>
|
|
|
|
|
<joint name="wrist_2_joint" type="revolute">
|
|
|
|
|
<parent link="wrist_1_link"/>
|
|
|
|
|
<child link="wrist_2_link"/>
|
|
|
|
|
<origin rpy="1.570796327 0 0" xyz="0 -0.0997 -2.044881182297852e-11"/>
|
|
|
|
|
<axis xyz="0 0 1"/>
|
|
|
|
|
<limit effort="28.0" lower="-6.283185307179586" upper="6.283185307179586" velocity="3.141592653589793"/>
|
|
|
|
|
<dynamics damping="0" friction="0"/>
|
|
|
|
|
</joint>
|
|
|
|
|
<joint name="wrist_3_joint" type="revolute">
|
|
|
|
|
<parent link="wrist_2_link"/>
|
|
|
|
|
<child link="wrist_3_link"/>
|
|
|
|
|
<origin rpy="1.570796326589793 3.141592653589793 3.141592653589793" xyz="0 0.0996 -2.042830148012698e-11"/>
|
|
|
|
|
<axis xyz="0 0 1"/>
|
|
|
|
|
<limit effort="28.0" lower="-6.283185307179586" upper="6.283185307179586" velocity="3.141592653589793"/>
|
|
|
|
|
<dynamics damping="0" friction="0"/>
|
|
|
|
|
</joint>
|
|
|
|
|
<!-- ROS-Industrial 'base' frame: base_link to UR 'Base' Coordinates transform -->
|
|
|
|
|
<link name="base"/>
|
|
|
|
|
<joint name="base_link-base_fixed_joint" type="fixed">
|
|
|
|
|
<!-- Note the rotation over Z of pi radians: as base_link is REP-103
|
|
|
|
|
aligned (ie: has X+ forward, Y+ left and Z+ up), this is needed
|
|
|
|
|
to correctly align 'base' with the 'Base' coordinate system of
|
|
|
|
|
the UR controller.
|
|
|
|
|
-->
|
|
|
|
|
<origin rpy="0 0 3.141592653589793" xyz="0 0 0"/>
|
|
|
|
|
<parent link="base_link"/>
|
|
|
|
|
<child link="base"/>
|
|
|
|
|
</joint>
|
|
|
|
|
<!-- ROS-Industrial 'flange' frame: attachment point for EEF models -->
|
|
|
|
|
<link name="flange"/>
|
|
|
|
|
<joint name="wrist_3-flange" type="fixed">
|
|
|
|
|
<parent link="wrist_3_link"/>
|
|
|
|
|
<child link="flange"/>
|
|
|
|
|
<origin rpy="0 -1.5707963267948966 -1.5707963267948966" xyz="0 0 0"/>
|
|
|
|
|
</joint>
|
|
|
|
|
<!-- ROS-Industrial 'tool0' frame: all-zeros tool frame -->
|
|
|
|
|
<link name="tool0"/>
|
|
|
|
|
<joint name="flange-tool0" type="fixed">
|
|
|
|
|
<!-- default toolframe: X+ left, Y+ up, Z+ front -->
|
|
|
|
|
<origin rpy="1.5707963267948966 0 1.5707963267948966" xyz="0 0 0"/>
|
|
|
|
|
<parent link="flange"/>
|
|
|
|
|
<child link="tool0"/>
|
|
|
|
|
</joint>
|
|
|
|
|
<!-- This joint was added by Kinova -->
|
|
|
|
|
<joint name="gripper_base_joint" type="fixed">
|
|
|
|
|
<parent link="tool0"/>
|
|
|
|
|
<child link="robotiq_arg2f_base_link"/>
|
|
|
|
|
<origin rpy="0.0 0.0 1.57" xyz="0.0 0.0 0.0"/>
|
|
|
|
|
</joint>
|
|
|
|
|
<link name="robotiq_arg2f_base_link">
|
|
|
|
|
<inertial>
|
|
|
|
|
<origin rpy="0 0 0" xyz="8.625E-08 -4.6583E-06 0.03145"/>
|
|
|
|
|
<mass value="0.22652"/>
|
|
|
|
|
<inertia ixx="0.00020005" ixy="-4.2442E-10" ixz="-2.9069E-10" iyy="0.00017832" iyz="-3.4402E-08" izz="0.00013478"/>
|
|
|
|
|
</inertial>
|
|
|
|
|
<visual>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0 0 0"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<mesh filename="../kinova/kortex_description/grippers/robotiq_2f_140/meshes/collision/robotiq_arg2f_base_link.stl"/>
|
|
|
|
|
</geometry>
|
|
|
|
|
<material name="">
|
|
|
|
|
<color rgba="0.1 0.1 0.1 1"/>
|
|
|
|
|
</material>
|
|
|
|
|
</visual>
|
|
|
|
|
<collision>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0 0 0"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<mesh filename="../kinova/kortex_description/grippers/robotiq_2f_140/meshes/collision/robotiq_arg2f_base_link.stl"/>
|
|
|
|
|
</geometry>
|
|
|
|
|
</collision>
|
|
|
|
|
</link>
|
|
|
|
|
|
|
|
|
|
<link name="left_outer_knuckle">
|
|
|
|
|
<inertial>
|
|
|
|
|
<origin rpy="0 0 0" xyz="-0.000200000000003065 0.0199435877845359 0.0292245259211331"/>
|
|
|
|
|
<mass value="0.00853198276973456"/>
|
|
|
|
|
<inertia ixx="2.89328108496468E-06" ixy="-1.57935047237397E-19" ixz="-1.93980378593255E-19" iyy="1.86719750325683E-06" iyz="-1.21858577871576E-06" izz="1.21905238907251E-06"/>
|
|
|
|
|
</inertial>
|
|
|
|
|
<visual>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0 0 0"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<mesh filename="../kinova/kortex_description/grippers/robotiq_2f_140/meshes/visual/robotiq_arg2f_140_outer_knuckle.stl" />
|
|
|
|
|
</geometry>
|
|
|
|
|
<material name="">
|
|
|
|
|
<color rgba="0.792156862745098 0.819607843137255 0.933333333333333 1"/>
|
|
|
|
|
</material>
|
|
|
|
|
</visual>
|
|
|
|
|
<collision>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0 0 0"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<mesh filename="../kinova/kortex_description/grippers/robotiq_2f_140/meshes/collision/robotiq_arg2f_140_outer_knuckle.stl" />
|
|
|
|
|
</geometry>
|
|
|
|
|
</collision>
|
|
|
|
|
</link>
|
|
|
|
|
<link name="left_outer_finger">
|
|
|
|
|
<inertial>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0.00030115855001899 0.0373907951953854 -0.0208027427000385"/>
|
|
|
|
|
<mass value="0.022614240507152"/>
|
|
|
|
|
<inertia ixx="1.52518312458174E-05" ixy="9.76583423954399E-10" ixz="-5.43838577022588E-10" iyy="6.17694243867776E-06" iyz="6.78636130740228E-06" izz="1.16494917907219E-05"/>
|
|
|
|
|
</inertial>
|
|
|
|
|
<visual>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0 0 0"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<mesh filename="../kinova/kortex_description/grippers/robotiq_2f_140/meshes/visual/robotiq_arg2f_140_outer_finger.stl" />
|
|
|
|
|
</geometry>
|
|
|
|
|
<material name="">
|
|
|
|
|
<color rgba="0.1 0.1 0.1 1"/>
|
|
|
|
|
</material>
|
|
|
|
|
</visual>
|
|
|
|
|
<collision>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0 0 0"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<mesh filename="../kinova/kortex_description/grippers/robotiq_2f_140/meshes/collision/robotiq_arg2f_140_outer_finger.stl" />
|
|
|
|
|
</geometry>
|
|
|
|
|
</collision>
|
|
|
|
|
</link>
|
|
|
|
|
<link name="left_inner_finger">
|
|
|
|
|
<inertial>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0.000299999999999317 0.0160078233491243 -0.0136945669206257"/>
|
|
|
|
|
<mass value="0.0104003125914103"/>
|
|
|
|
|
<inertia ixx="2.71909453810972E-06" ixy="1.35402465472579E-21" ixz="-7.1817349065269E-22" iyy="7.69100314106116E-07" iyz="6.74715432769696E-07" izz="2.30315190420171E-06"/>
|
|
|
|
|
</inertial>
|
|
|
|
|
<visual>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0 0 0"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<mesh filename="../kinova/kortex_description/grippers/robotiq_2f_140/meshes/visual/robotiq_arg2f_140_inner_finger.stl" />
|
|
|
|
|
</geometry>
|
|
|
|
|
<material name="">
|
|
|
|
|
<color rgba="0.1 0.1 0.1 1"/>
|
|
|
|
|
</material>
|
|
|
|
|
</visual>
|
|
|
|
|
<collision>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0 0 0"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<mesh filename="../kinova/kortex_description/grippers/robotiq_2f_140/meshes/collision/robotiq_arg2f_140_inner_finger.stl" />
|
|
|
|
|
</geometry>
|
|
|
|
|
</collision>
|
|
|
|
|
</link>
|
|
|
|
|
<link name="left_inner_finger_pad">
|
|
|
|
|
<visual>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0 0 0"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<box size="0.027 0.065 0.0075"/>
|
|
|
|
|
</geometry>
|
|
|
|
|
<material name="">
|
|
|
|
|
<color rgba="0.9 0.9 0.9 1"/>
|
|
|
|
|
</material>
|
|
|
|
|
</visual>
|
|
|
|
|
<collision>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0 0 0"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<box size="0.027 0.065 0.0075"/>
|
|
|
|
|
</geometry>
|
|
|
|
|
<material name="">
|
|
|
|
|
<color rgba="0.9 0.0 0.0 1"/>
|
|
|
|
|
</material>
|
|
|
|
|
</collision>
|
|
|
|
|
</link>
|
|
|
|
|
<link name="left_inner_knuckle">
|
|
|
|
|
<inertial>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0.000123011831763771 0.0507850843201817 0.00103968640075166"/>
|
|
|
|
|
<mass value="0.0271177346495152"/>
|
|
|
|
|
<inertia ixx="2.61910379223783E-05" ixy="-2.43616858946494E-07" ixz="-6.37789906117123E-09" iyy="2.8270243746167E-06" iyz="-5.37200748039765E-07" izz="2.83695868220296E-05"/>
|
|
|
|
|
</inertial>
|
|
|
|
|
<visual>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0 0 0"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<mesh filename="../kinova/kortex_description/grippers/robotiq_2f_140/meshes/visual/robotiq_arg2f_140_inner_knuckle.stl" />
|
|
|
|
|
</geometry>
|
|
|
|
|
<material name="">
|
|
|
|
|
<color rgba="0.1 0.1 0.1 1"/>
|
|
|
|
|
</material>
|
|
|
|
|
</visual>
|
|
|
|
|
<collision>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0 0 0"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<mesh filename="../kinova/kortex_description/grippers/robotiq_2f_140/meshes/collision/robotiq_arg2f_140_inner_knuckle.stl" />
|
|
|
|
|
</geometry>
|
|
|
|
|
</collision>
|
|
|
|
|
</link>
|
|
|
|
|
<link name="right_outer_knuckle">
|
|
|
|
|
<inertial>
|
|
|
|
|
<origin rpy="0 0 0" xyz="-0.000200000000003065 0.0199435877845359 0.0292245259211331"/>
|
|
|
|
|
<mass value="0.00853198276973456"/>
|
|
|
|
|
<inertia ixx="2.89328108496468E-06" ixy="-1.57935047237397E-19" ixz="-1.93980378593255E-19" iyy="1.86719750325683E-06" iyz="-1.21858577871576E-06" izz="1.21905238907251E-06"/>
|
|
|
|
|
</inertial>
|
|
|
|
|
<visual>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0 0 0"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<mesh filename="../kinova/kortex_description/grippers/robotiq_2f_140/meshes/visual/robotiq_arg2f_140_outer_knuckle.stl" />
|
|
|
|
|
</geometry>
|
|
|
|
|
<material name="">
|
|
|
|
|
<color rgba="0.792156862745098 0.819607843137255 0.933333333333333 1"/>
|
|
|
|
|
</material>
|
|
|
|
|
</visual>
|
|
|
|
|
<collision>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0 0 0"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<mesh filename="../kinova/kortex_description/grippers/robotiq_2f_140/meshes/collision/robotiq_arg2f_140_outer_knuckle.stl" />
|
|
|
|
|
</geometry>
|
|
|
|
|
</collision>
|
|
|
|
|
</link>
|
|
|
|
|
<link name="right_outer_finger">
|
|
|
|
|
<inertial>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0.00030115855001899 0.0373907951953854 -0.0208027427000385"/>
|
|
|
|
|
<mass value="0.022614240507152"/>
|
|
|
|
|
<inertia ixx="1.52518312458174E-05" ixy="9.76583423954399E-10" ixz="-5.43838577022588E-10" iyy="6.17694243867776E-06" iyz="6.78636130740228E-06" izz="1.16494917907219E-05"/>
|
|
|
|
|
</inertial>
|
|
|
|
|
<visual>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0 0 0"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<mesh filename="../kinova/kortex_description/grippers/robotiq_2f_140/meshes/visual/robotiq_arg2f_140_outer_finger.stl" />
|
|
|
|
|
</geometry>
|
|
|
|
|
<material name="">
|
|
|
|
|
<color rgba="0.1 0.1 0.1 1"/>
|
|
|
|
|
</material>
|
|
|
|
|
</visual>
|
|
|
|
|
<collision>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0 0 0"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<mesh filename="../kinova/kortex_description/grippers/robotiq_2f_140/meshes/collision/robotiq_arg2f_140_outer_finger.stl" />
|
|
|
|
|
</geometry>
|
|
|
|
|
</collision>
|
|
|
|
|
</link>
|
|
|
|
|
<link name="right_inner_finger">
|
|
|
|
|
<inertial>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0.000299999999999317 0.0160078233491243 -0.0136945669206257"/>
|
|
|
|
|
<mass value="0.0104003125914103"/>
|
|
|
|
|
<inertia ixx="2.71909453810972E-06" ixy="1.35402465472579E-21" ixz="-7.1817349065269E-22" iyy="7.69100314106116E-07" iyz="6.74715432769696E-07" izz="2.30315190420171E-06"/>
|
|
|
|
|
</inertial>
|
|
|
|
|
<visual>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0 0 0"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<mesh filename="../kinova/kortex_description/grippers/robotiq_2f_140/meshes/visual/robotiq_arg2f_140_inner_finger.stl" />
|
|
|
|
|
</geometry>
|
|
|
|
|
<material name="">
|
|
|
|
|
<color rgba="0.1 0.1 0.1 1"/>
|
|
|
|
|
</material>
|
|
|
|
|
</visual>
|
|
|
|
|
<collision>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0 0 0"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<mesh filename="../kinova/kortex_description/grippers/robotiq_2f_140/meshes/collision/robotiq_arg2f_140_inner_finger.stl" />
|
|
|
|
|
</geometry>
|
|
|
|
|
</collision>
|
|
|
|
|
</link>
|
|
|
|
|
<link name="right_inner_finger_pad">
|
|
|
|
|
<visual>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0 0 0"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<box size="0.027 0.065 0.0075"/>
|
|
|
|
|
</geometry>
|
|
|
|
|
<material name="">
|
|
|
|
|
<color rgba="0.9 0.9 0.9 1"/>
|
|
|
|
|
</material>
|
|
|
|
|
</visual>
|
|
|
|
|
<collision>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0 0 0"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<box size="0.027 0.065 0.0075"/>
|
|
|
|
|
</geometry>
|
|
|
|
|
<material name="">
|
|
|
|
|
<color rgba="0.9 0.0 0.0 1"/>
|
|
|
|
|
</material>
|
|
|
|
|
</collision>
|
|
|
|
|
</link>
|
|
|
|
|
<link name="right_inner_knuckle">
|
|
|
|
|
<inertial>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0.000123011831763771 0.0507850843201817 0.00103968640075166"/>
|
|
|
|
|
<mass value="0.0271177346495152"/>
|
|
|
|
|
<inertia ixx="2.61910379223783E-05" ixy="-2.43616858946494E-07" ixz="-6.37789906117123E-09" iyy="2.8270243746167E-06" iyz="-5.37200748039765E-07" izz="2.83695868220296E-05"/>
|
|
|
|
|
</inertial>
|
|
|
|
|
<visual>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0 0 0"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<mesh filename="../kinova/kortex_description/grippers/robotiq_2f_140/meshes/visual/robotiq_arg2f_140_inner_knuckle.stl" />
|
|
|
|
|
</geometry>
|
|
|
|
|
<material name="">
|
|
|
|
|
<color rgba="0.1 0.1 0.1 1"/>
|
|
|
|
|
</material>
|
|
|
|
|
</visual>
|
|
|
|
|
<collision>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0 0 0"/>
|
|
|
|
|
<geometry>
|
|
|
|
|
<mesh filename="../kinova/kortex_description/grippers/robotiq_2f_140/meshes/collision/robotiq_arg2f_140_inner_knuckle.stl" />
|
|
|
|
|
</geometry>
|
|
|
|
|
</collision>
|
|
|
|
|
</link>
|
|
|
|
|
|
|
|
|
|
<joint name="finger_joint" type="revolute">
|
|
|
|
|
<origin rpy="2.29579632679 0 0" xyz="0 -0.030601 0.054905"/>
|
|
|
|
|
<parent link="robotiq_arg2f_base_link"/>
|
|
|
|
|
<child link="left_outer_knuckle"/>
|
|
|
|
|
<axis xyz="-1 0 0"/>
|
|
|
|
|
<limit effort="1000" lower="0.0" upper="0.7" velocity="2.0"/>
|
|
|
|
|
</joint>
|
|
|
|
|
<joint name="left_outer_finger_joint" type="fixed">
|
|
|
|
|
<origin rpy="0 0 0" xyz="0 0.01821998610742 0.0260018192872234"/>
|
|
|
|
|
<parent link="left_outer_knuckle"/>
|
|
|
|
|
<child link="left_outer_finger"/>
|
|
|
|
|
|
|
|
|
|
</joint>
|
|
|
|
|
<joint name="left_inner_knuckle_joint" type="revolute">
|
|
|
|
|
<origin rpy="2.29579632679 0 0.0" xyz="0 -0.0127 0.06142"/>
|
|
|
|
|
<parent link="robotiq_arg2f_base_link"/>
|
|
|
|
|
<child link="left_inner_knuckle"/>
|
|
|
|
|
<axis xyz="1 0 0"/>
|
|
|
|
|
<limit lower="-0.8757" upper="0.8757" velocity="2.0" effort="1000" />
|
|
|
|
|
<mimic joint="finger_joint" multiplier="-1" offset="0" />
|
|
|
|
|
|
|
|
|
|
</joint>
|
|
|
|
|
<joint name="left_inner_finger_joint" type="revolute">
|
|
|
|
|
<origin rpy="-0.725 0 0" xyz="0 0.0817554015893473 -0.0282203446692936"/>
|
|
|
|
|
<parent link="left_outer_finger"/>
|
|
|
|
|
<child link="left_inner_finger"/>
|
|
|
|
|
<axis xyz="1 0 0"/>
|
|
|
|
|
<limit effort="1000" lower="-0.8757" upper="0.8757" velocity="2.0"/>
|
|
|
|
|
<mimic joint="finger_joint" multiplier="1" offset="0" />
|
|
|
|
|
|
|
|
|
|
</joint>
|
|
|
|
|
<joint name="left_inner_finger_pad_joint" type="fixed">
|
|
|
|
|
<origin rpy="0 0 0" xyz="0 0.0457554015893473 -0.0272203446692936"/>
|
|
|
|
|
<parent link="left_inner_finger"/>
|
|
|
|
|
<child link="left_inner_finger_pad"/>
|
|
|
|
|
</joint>
|
|
|
|
|
<joint name="right_outer_knuckle_joint" type="revolute">
|
|
|
|
|
<origin rpy="2.29579632679 0 3.14159265359" xyz="0 0.030601 0.054905"/>
|
|
|
|
|
<parent link="robotiq_arg2f_base_link"/>
|
|
|
|
|
<child link="right_outer_knuckle"/>
|
|
|
|
|
<axis xyz="1 0 0"/>
|
|
|
|
|
<limit effort="1000" lower="-0.8757" upper="0.8757" velocity="2.0"/>
|
|
|
|
|
<mimic joint="finger_joint" multiplier="-1" offset="0" />
|
|
|
|
|
|
|
|
|
|
</joint>
|
|
|
|
|
<joint name="right_outer_finger_joint" type="fixed">
|
|
|
|
|
<origin rpy="0 0 0" xyz="0 0.01821998610742 0.0260018192872234"/>
|
|
|
|
|
<parent link="right_outer_knuckle"/>
|
|
|
|
|
<child link="right_outer_finger"/>
|
|
|
|
|
</joint>
|
|
|
|
|
<joint name="right_inner_knuckle_joint" type="revolute">
|
|
|
|
|
<origin rpy="2.29579632679 0 -3.14159265359" xyz="0 0.0127 0.06142"/>
|
|
|
|
|
<parent link="robotiq_arg2f_base_link"/>
|
|
|
|
|
<child link="right_inner_knuckle"/>
|
|
|
|
|
<axis xyz="1 0 0"/>
|
|
|
|
|
<limit effort="1000" lower="-0.8757" upper="0.8757" velocity="2.0"/>
|
|
|
|
|
<mimic joint="finger_joint" multiplier="-1" offset="0" />
|
|
|
|
|
|
|
|
|
|
</joint>
|
|
|
|
|
<joint name="right_inner_finger_joint" type="revolute">
|
|
|
|
|
<origin rpy="-0.725 0 0" xyz="0 0.0817554015893473 -0.0282203446692936"/>
|
|
|
|
|
<parent link="right_outer_finger"/>
|
|
|
|
|
<child link="right_inner_finger"/>
|
|
|
|
|
<axis xyz="1 0 0"/>
|
|
|
|
|
<limit effort="1000" lower="-0.8757" upper="0.8757" velocity="2.0"/>
|
|
|
|
|
<mimic joint="finger_joint" multiplier="1" offset="0" />
|
|
|
|
|
</joint>
|
|
|
|
|
<joint name="right_inner_finger_pad_joint" type="fixed">
|
|
|
|
|
<origin rpy="0 0 0" xyz="0 0.0457554015893473 -0.0272203446692936"/>
|
|
|
|
|
<parent link="right_inner_finger"/>
|
|
|
|
|
<child link="right_inner_finger_pad"/>
|
|
|
|
|
</joint>
|
|
|
|
|
<link name="grasp_frame">
|
|
|
|
|
<inertial>
|
|
|
|
|
<!-- Dummy inertial parameters to avoid link lumping-->
|
|
|
|
|
<mass value="0.01"/>
|
|
|
|
|
<inertia ixx="0.0001" ixy="0.0" ixz="0.0" iyy="0.0001" iyz="0.0" izz="0.0001"/>
|
|
|
|
|
<origin rpy="0 0 0" xyz="0 0 0"/>
|
|
|
|
|
</inertial>
|
|
|
|
|
</link>
|
|
|
|
|
<joint name="grasp_joint" type="fixed">
|
|
|
|
|
<origin rpy="0 0 0.0" xyz="0 0 0.2"/>
|
|
|
|
|
<axis xyz="0 0 1"/>
|
|
|
|
|
<parent link="robotiq_arg2f_base_link"/>
|
|
|
|
|
<child link="grasp_frame"/>
|
|
|
|
|
</joint>
|
|
|
|
|
</robot>
|