<?xml version="1.0" encoding="UTF-8"?>
<robot name="widowx" xmlns:xacro="http://ros.org/wiki/xacro">
 
	<material name="yellow">
		<color rgba="0.15 0.15 0.15 1.0"/>
	</material>

	<material name="white">
		<color rgba="0.86 0.85 0.81 1.0"/>
	</material>

	<material name="black">
		<color rgba="0.15 0.15 0.15 1.0"/>
	</material>

	<material name="grey">
		<color rgba="0.34 0.35 0.36 1.0"/>
	</material>


	<material name="greyish">
		<color rgba="0.75 0.75 0.75 1.0"/>
	</material>
	
	
  
  <link name="arm_base_link">
     <visual>
        <origin xyz="0 0 0" rpy="0 0 0" />
        <geometry>
           <mesh filename="meshes/base_link.stl"/>
        </geometry>
        <material name="black"/>
   </visual>
     <collision>
        <origin xyz="0 0 0" rpy="0 0 0" />
        <geometry>
           <mesh filename="meshes/base_link.stl"/>
        </geometry>
     </collision>
     <inertial>
        <origin xyz="0 0 0" rpy="0 0 0" />
        <mass value="13" />
        <inertia ixx="1.0" ixy="0.0" ixz="0.0" iyy="1.0" iyz="0.0" izz="1.0" />
     </inertial>
  </link>
  <link name="shoulder_link">
     <visual>
        <origin xyz="0 0 0" rpy="0 0 0" />
        <geometry>
           <mesh filename="meshes/shoulder_link.stl" />
        </geometry>
        <material name="greyish"/>
     </visual>
     <collision>
        <origin xyz="0 0 0" rpy="0 0 0" />
        <geometry>
           <mesh filename="meshes/shoulder_link.stl"/>
        </geometry>
     </collision>
     <inertial>
        <origin xyz="0 0 0" rpy="0 0 0" />
        <mass value=".1" />
        <inertia ixx="1.0" ixy="0.0" ixz="0.0" iyy="1.0" iyz="0.0" izz="1.0" />
     </inertial>
  </link>
  <link name="biceps_link">
     <visual>
	      <origin xyz="0.04825 0 0.140" rpy="0 0 0" />
        <!--origin xyz="0 0 0" rpy="0 0 0" /-->
        <geometry>
           <mesh filename="meshes/biceps_link.stl" />
        </geometry>
        <material name="black"/>
     </visual>
     <collision>
        <origin xyz="0.04825 0 0.140" rpy="0 0 0" />
        <geometry>
           <mesh filename="meshes/biceps_link.stl" />
        </geometry>
     </collision>
     <inertial>
        <origin xyz="0 0 0" rpy="0 0 0" />
        <mass value=".1" />
        <inertia ixx="1.0" ixy="0.0" ixz="0.0" iyy="1.0" iyz="0.0" izz="1.0" />
     </inertial>
  </link>
  <link name="forearm_link">
     <visual>
	      <origin xyz="0 0 0.14203" rpy="0 0 0" />
	<!--origin xyz="0 0 0" rpy="0 0 0" /-->
        <geometry>
           <mesh filename="meshes/forearm_link.stl"/>
        </geometry>
       <material name="greyish"/>
     </visual>
     <collision>
        <origin xyz="0 0 0.14203" rpy="0 0 0" />
        <geometry>
           <mesh filename="meshes/forearm_link.stl"/>
        </geometry>
     </collision>
     <inertial>
        <origin xyz="0 0 0" rpy="0 0 0" />
        <mass value=".1" />
        <inertia ixx="1.0" ixy="0.0" ixz="0.0" iyy="1.0" iyz="0.0" izz="1.0"/>
     </inertial>
  </link>
  <link name="wrist_1_link">
     <visual>
        <origin xyz="0 0 0" rpy="0 0 0" />
        <geometry>
           <mesh filename="meshes/wrist_1_link.stl"/>
        </geometry>
        <material name="greyish"/>
     </visual>
     <collision>
        <origin xyz="0 0 0" rpy="0 0 0" />
        <geometry>
           <mesh filename="meshes/wrist_1_link.stl"/>
        </geometry>
     </collision>
     <inertial>
        <origin xyz="0 0 0" rpy="0 0 0" />
        <mass value=".1" />
        <inertia ixx="1.0" ixy="0.0" ixz="0.0" iyy="1.0" iyz="0.0" izz="1.0" />
     </inertial>
  </link>
  <link name="wrist_2_link">
     <visual>
        <origin xyz="0 0 0.043" rpy="0 0 0" />
        <geometry>
           <mesh filename="meshes/wrist_2_link.stl"/>
        </geometry>
        <material name="black"/>
     </visual>
     <collision>
        <origin xyz="0 0 0.043" rpy="0 0 0" />
        <geometry>
           <mesh filename="meshes/wrist_2_link.stl"/>
        </geometry>
     </collision>
     <inertial>
        <origin xyz="0 0 0" rpy="0 0 0" />
        <mass value=".1" />
        <inertia ixx="1.0" ixy="0.0" ixz="0.0" iyy="1.0" iyz="0.0" izz="1.0" />
     </inertial>
  </link>
  <link name="gripper_rail_link">
     <visual>
        <origin xyz="0 0 0" rpy="0 0 1.57" />
        <geometry>
           <mesh filename="meshes/gripper_rail_link.stl"/>
        </geometry>
        <material name="greyish"/>
     </visual>
     <collision>
        <origin xyz="0 0 0" rpy="0 0 1.57" />
        <geometry>
           <mesh filename="meshes/gripper_rail_link.stl"/>
        </geometry>
     </collision>
     <inertial>
        <origin xyz="0 0 0" rpy="0 0 0" />
        <mass value=".1" />
        <inertia ixx="1.0" ixy="0.0" ixz="0.0" iyy="1.0" iyz="0.0" izz="1.0" />
     </inertial>
  </link>
  <link name="gripper_aux_link">
  </link>
  <link name="gripper_1_link">
     <visual>
        <origin xyz="0 -0.0007 0" rpy="0 0 1.57" />
        <geometry>
           <mesh filename="meshes/gripper_hand_fixed_link.stl"/>
        </geometry>
        <material name="black"/>
     </visual>
     <collision>
        <origin xyz="0 -0.0007 0" rpy="0 0 1.57" />
        <geometry>
           <mesh filename="meshes/gripper_hand_fixed_link.stl"/>
        </geometry>
     </collision>
     <inertial>
        <origin xyz="0 0 0" rpy="0 0 0" />
        <mass value=".1" />
        <inertia ixx="1.0" ixy="0.0" ixz="0.0" iyy="1.0" iyz="0.0" izz="1.0" />
     </inertial>
  </link>
  <link name="gripper_2_link">
     <visual>
        <origin xyz="0 0.0007 0" rpy="0 0 -1.57" />
        <geometry>
           <mesh filename="meshes/gripper_hand_fixed_link.stl"/>
        </geometry>
        <material name="greyish"/>
     </visual>
     <collision>
         <origin xyz="0 0.0007 0" rpy="0 0 -1.57" />
        <geometry>
           <mesh filename="meshes/gripper_hand_fixed_link.stl"/>
        </geometry>
     </collision>
     <inertial>
        <origin xyz="0 0 0" rpy="0 0 0" />
        <mass value=".1" />
        <inertia ixx="1.0" ixy="0.0" ixz="0.0" iyy="1.0" iyz="0.0" izz="1.0" />
     </inertial>
  </link>
  <!-- joints -->
 
  <joint name="joint_1" type="revolute">
     <origin xyz="0 0 0.125" rpy="0 0 0" />
     <parent link="arm_base_link" />
     <child link="shoulder_link" />
     <axis xyz="0 0 1" />
     <limit lower="-2.617" upper="2.617" effort="0" velocity="0.785" />
  </joint>
  <joint name="joint_2" type="revolute">
     <!--origin xyz="0.04825 0 0.14203" rpy="0 0 0" /-->
     <origin xyz="0 0 0" rpy="0 0 0" />
     <parent link="shoulder_link" />
     <child link="biceps_link" />
     <axis xyz="0 1 0" />
     <limit lower="-1.571" upper="1.571" effort="0" velocity="1.571" />
  </joint>
  <joint name="joint_3" type="revolute">
     <origin xyz="0.04825 0 0.14203" rpy="0 1.5707963268 0" />
     <parent link="biceps_link" />
     <child link="forearm_link" />
     <axis xyz="0 1 0" />
     <limit lower="-1.571" upper="1.571" effort="0" velocity="1.571" />
  </joint>
  <joint name="joint_4" type="revolute">
     <origin xyz="0 0 0.14203" rpy="0 0 0" />
     <parent link="forearm_link" />
     <child link="wrist_1_link" />
     <axis xyz="0 1 0" />
     <limit lower="-1.745" upper="1.745" effort="0" velocity="1.571" />
  </joint>
  <joint name="joint_5" type="revolute">
     <origin xyz="0 0 0.0715" rpy="0 0 0" />
     <parent link="wrist_1_link" />
     <child link="wrist_2_link" />
     <axis xyz="0 0 1" />
     <limit lower="-2.617" upper="2.617" effort="0" velocity="1.571" />
  </joint>
  <joint name="joint_6" type="fixed">
     <origin xyz = "0 0 0.043" rpy="0 0 0" />
     <parent link="wrist_2_link" />
     <child link="gripper_rail_link" />
     <axis xyz="0 0 1" />
     <limit lower="-0.31" upper="0.1" effort="0" velocity="0.5" />
  </joint>
  <joint name="gripper_revolute_joint" type="revolute">
     <origin xyz = "0 0 0" rpy="0 0 0" />
     <parent link="gripper_rail_link" />
     <child link="gripper_aux_link" />
     <axis xyz="0 0 1" />
     <limit lower="0" upper="2.6" effort="0" velocity="0.5" />
  </joint>
  <joint name="gripper_prismatic_joint_1" type="prismatic">
     <origin xyz="0 0 0" rpy="0 0 0" />
     <parent link="gripper_rail_link" />
     <child link="gripper_1_link" />
     <axis xyz="0 -1 0" />
     <limit lower="0" upper="0.027" effort="0" velocity="0.5" />
  </joint>
  <joint name="gripper_prismatic_joint_2" type="prismatic">
     <origin xyz="0 0 0" rpy="0 0 0" />
     <parent link="gripper_rail_link" />
     <child link="gripper_2_link" />
     <mimic joint="gripper_prismatic_joint_1" />
     <axis xyz="0 1 0" />
     <limit lower="0" upper="0.027" effort="0" velocity="0.5" />
  </joint>

</robot>
