<?xml version="1.0" ?>

<!-- =================================================================================== -->
<!-- |    This document was autogenerated by xacro from panda_arm.urdf.xacro           | -->
<!-- |    EDITING THIS FILE BY HAND IS NOT RECOMMENDED                                 | -->
<!-- =================================================================================== -->
<robot name="panda" xmlns:xacro="http://www.ros.org/wiki/xacro">
  <link name="panda_link0">
    <visual>
      <geometry>
        <mesh filename="meshes/visual/link0.dae"/>
      </geometry>
    </visual>
    <collision>
      <geometry>
        <mesh filename="meshes/collision/link0.stl"/>
      </geometry>
    </collision>
    <inertial>
        <mass value="3.06"/>
        <inertia ixx="0.3" ixy="0.0" ixz="0.0" iyy="0.3" iyz="0.0" izz="0.3"/>
      </inertial>
  </link>
  <link name="panda_link1">
    <visual>
      <geometry>
        <mesh filename="meshes/visual/link1.dae"/>
      </geometry>
    </visual>
    <collision>
      <geometry>
        <mesh filename="meshes/collision/link1.stl"/>
      </geometry>
    </collision>
    <inertial>
        <mass value="2.34"/>
        <inertia ixx="0.3" ixy="0.0" ixz="0.0" iyy="0.3" iyz="0.0" izz="0.3"/>
      </inertial>
  </link>
  <joint name="panda_joint1" type="revolute">
    <safety_controller k_position="100.0" k_velocity="40.0" soft_lower_limit="-2.8973" soft_upper_limit="2.8973"/>
    <origin rpy="0 0 0" xyz="0 0 0.333"/>
    <parent link="panda_link0"/>
    <child link="panda_link1"/>
    <axis xyz="0 0 1"/>
    <dynamics damping="1.0" />
    <limit effort="87" lower="-2.8973" upper="2.8973" velocity="2.1750"/>
  </joint>
  <link name="panda_link2">
    <visual>
      <geometry>
        <mesh filename="meshes/visual/link2.dae"/>
      </geometry>
    </visual>
    <collision>
      <geometry>
        <mesh filename="meshes/collision/link2.stl"/>
      </geometry>
    </collision>
    <inertial>
        <mass value="2.36"/>
        <inertia ixx="0.3" ixy="0.0" ixz="0.0" iyy="0.3" iyz="0.0" izz="0.3"/>
      </inertial>
  </link>
  <joint name="panda_joint2" type="revolute">
    <safety_controller k_position="100.0" k_velocity="40.0" soft_lower_limit="-1.7628" soft_upper_limit="1.7628"/>
    <origin rpy="-1.57079632679 0 0" xyz="0 0 0"/>
    <!-- <origin rpy="-1.57079632679 1.5 0" xyz="0 0 0"/> -->
    <parent link="panda_link1"/>
    <child link="panda_link2"/>
    <axis xyz="0 0 1"/>
    <dynamics damping="1.0" />
    <limit effort="87" lower="-1.7628" upper="1.7628" velocity="2.1750"/>
  </joint>
  <link name="panda_link3">
    <visual>
      <geometry>
        <mesh filename="meshes/visual/link3.dae"/>
      </geometry>
    </visual>
    <collision>
      <geometry>
        <mesh filename="meshes/collision/link3.stl"/>
      </geometry>
    </collision>
    <inertial>
        <mass value="2.38"/>
        <inertia ixx="0.3" ixy="0.0" ixz="0.0" iyy="0.3" iyz="0.0" izz="0.3"/>
      </inertial>

  </link>
  <joint name="panda_joint3" type="revolute">
    <safety_controller k_position="100.0" k_velocity="40.0" soft_lower_limit="-2.8973" soft_upper_limit="2.8973"/>
    <origin rpy="1.57079632679 0 0" xyz="0 -0.316 0"/>
    <parent link="panda_link2"/>
    <child link="panda_link3"/>
    <axis xyz="0 0 1"/>
    <dynamics damping="1.0" />
    <limit effort="87" lower="-2.8973" upper="2.8973" velocity="2.1750"/>
  </joint>
  <link name="panda_link4">
    <visual>
      <geometry>
        <mesh filename="meshes/visual/link4.dae"/>
      </geometry>
    </visual>
    <collision>
      <geometry>
        <mesh filename="meshes/collision/link4.stl"/>
      </geometry>
    </collision>
    <inertial>
      <mass value="2.43"/>
      <inertia ixx="0.3" ixy="0.0" ixz="0.0" iyy="0.3" iyz="0.0" izz="0.3"/>
      </inertial>
  </link>
  <joint name="panda_joint4" type="revolute">
    <safety_controller k_position="100.0" k_velocity="40.0" soft_lower_limit="-3.0718" soft_upper_limit="-0.0698"/>
    <origin rpy="1.57079632679 0 0" xyz="0.0825 0 0"/>
    <parent link="panda_link3"/>
    <child link="panda_link4"/>
    <axis xyz="0 0 1"/>
    <dynamics damping="1.0" />
    <limit effort="87" lower="-3.0718" upper="-0.0698" velocity="2.1750"/>
  </joint>
  <link name="panda_link5">
    <visual>
      <geometry>
        <mesh filename="meshes/visual/link5.dae"/>
      </geometry>
    </visual>
    <collision>
      <geometry>
        <mesh filename="meshes/collision/link5.stl"/>
      </geometry>
    </collision>
    <inertial>
        <mass value="3.5"/>
        <inertia ixx="0.3" ixy="0.0" ixz="0.0" iyy="0.3" iyz="0.0" izz="0.3"/>
      </inertial>
  </link>

  <joint name="panda_joint5" type="revolute">
    <safety_controller k_position="100.0" k_velocity="40.0" soft_lower_limit="-2.8973" soft_upper_limit="2.8973"/>
    <origin rpy="-1.57079632679 0 0" xyz="-0.0825 0.384 0"/>
    <parent link="panda_link4"/>
    <child link="panda_link5"/>
    <axis xyz="0 0 1"/>
    <dynamics damping="1.0" />
    <limit effort="12" lower="-2.8973" upper="2.8973" velocity="2.6100"/>
  </joint>
  <link name="panda_link6">
    <visual>
      <geometry>
        <mesh filename="meshes/visual/link6.dae"/>
      </geometry>
    </visual>
    <collision>
      <geometry>
        <mesh filename="meshes/collision/link6.stl"/>
      </geometry>
    </collision>
     <inertial>
        <mass value="1.47"/>
        <inertia ixx="0.3" ixy="0.0" ixz="0.0" iyy="0.3" iyz="0.0" izz="0.3"/>
      </inertial>
  </link>
  <joint name="panda_joint6" type="revolute">
    <safety_controller k_position="100.0" k_velocity="40.0" soft_lower_limit="-0.0175" soft_upper_limit="3.7525"/>
    <origin rpy="1.57079632679 0 0" xyz="0 0 0"/>
    <parent link="panda_link5"/>
    <child link="panda_link6"/>
    <axis xyz="0 0 1"/>
    <dynamics damping="1.0" />
    <limit effort="12" lower="-0.0175" upper="3.7525" velocity="2.6100"/>
  </joint>
  <link name="panda_link7">
    <visual>
      <geometry>
        <mesh filename="meshes/visual/link7.dae"/>
      </geometry>
    </visual>
    <collision>
      <geometry>
        <mesh filename="meshes/collision/link7.stl"/>
      </geometry>
    </collision>
    <inertial>
        <mass value="0.45"/>
        <inertia ixx="0.3" ixy="0.0" ixz="0.0" iyy="0.3" iyz="0.0" izz="0.3"/>
      </inertial>
  </link>
  <joint name="panda_joint7" type="revolute">
    <safety_controller k_position="100.0" k_velocity="40.0" soft_lower_limit="-2.8973" soft_upper_limit="2.8973"/>
    <origin rpy="1.57079632679 0 0" xyz="0.088 0 0"/>
    <parent link="panda_link6"/>
    <child link="panda_link7"/>
    <axis xyz="0 0 1"/>
    <dynamics damping="1.0" />
    <limit effort="12" lower="-2.8973" upper="2.8973" velocity="2.6100"/>
  </joint>
  <link name="panda_link8">
    <inertial>
      <mass value="0.001"/>
      <inertia ixx="0.3" ixy="0.0" ixz="0.0" iyy="0.3" iyz="0.0" izz="0.3"/>
      </inertial>
  </link>
  <joint name="panda_joint8" type="fixed">
    <origin rpy="0 0 0" xyz="0 0 0.107"/>
    <parent link="panda_link7"/>
    <child link="panda_link8"/>
    <axis xyz="0 0 0"/>
    <dynamics damping="100" />
  </joint>
    <joint name="panda_hand_joint" type="revolute">
    <parent link="panda_link8"/>
    <child link="panda_hand"/>
    <origin rpy="0 0 0" xyz="0 0 0"/>
    <axis xyz="0 0 1"/>
    <limit effort="12" lower="-0.78" upper="-0.78" velocity="0.01"/>
  </joint>
  <link name="panda_hand">
    <visual>
      <geometry>
        <mesh filename="meshes/visual/hand.dae"/>
      </geometry>
    </visual>
    <collision>
      <geometry>
        <mesh filename="meshes/collision/hand.stl"/>
      </geometry>
    </collision>
     <inertial>
        <mass value="0.68"/>
        <inertia ixx="0.1" ixy="0.0" ixz="0.0" iyy="0.1" iyz="0.0" izz="0.1"/>
      </inertial>
  </link>

  <link name="panda_leftfinger_upper">
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="meshes/collision/finger_upper_v2.stl"/>
      </geometry>
    </visual>
    <collision>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="meshes/collision/finger_upper_v2.stl"/>
      </geometry>
    </collision>
    <inertial>
        <mass value="0.01"/>
        <inertia ixx="0.1" ixy="0.0" ixz="0.0" iyy="0.1" iyz="0.0" izz="0.1"/>
      </inertial>
  </link>
  <link name="panda_rightfinger_upper">
    <visual>
      <origin rpy="0 0 3.14" xyz="0 0 0"/>
      <geometry>
        <mesh filename="meshes/collision/finger_upper_v2.stl"/>
      </geometry>
    </visual>
    <collision>
      <origin rpy="0 0 3.14" xyz="0 0 0"/>
      <geometry>
        <mesh filename="meshes/collision/finger_upper_v2.stl"/>
      </geometry>
    </collision>
    <inertial>
        <mass value="0.01"/>
        <inertia ixx="0.1" ixy="0.0" ixz="0.0" iyy="0.1" iyz="0.0" izz="0.1"/>
      </inertial>
  </link>
  <joint name="panda_finger_joint1" type="prismatic">
    <parent link="panda_hand"/>
    <child link="panda_leftfinger_upper"/>
    <origin rpy="0 0 0" xyz="0 0 0.065"/>
    <axis xyz="0 1 0"/>
    <limit effort="20" lower="0" upper="0.04" velocity="10"/>
  </joint>
  <joint name="panda_finger_joint2" type="prismatic">
    <parent link="panda_hand"/>
    <child link="panda_rightfinger_upper"/>
    <origin rpy="0 0 0" xyz="0 0 0.065"/>
    <axis xyz="0 -1 0"/>
    <limit effort="20" lower="0" upper="0.04" velocity="10"/>
    <mimic joint="panda_finger_joint1"/>
  </joint>

  <link name="panda_leftfinger_lower">
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0.029"/>
      <geometry>
        <!-- <box size="0.018 0.015 0.108"/> -->
        <mesh filename="meshes/collision/franka_finger_lower_v4.stl"/>
      </geometry>
    </visual>
    <collision>
      <origin rpy="0 0 0" xyz="0 0 0.029"/>
      <geometry>
        <!-- <box size="0.018 0.015 0.108"/> -->
        <mesh filename="meshes/collision/franka_finger_lower_v4.stl"/>
      </geometry>
    </collision>
    <inertial>
        <mass value="0.01"/>
        <inertia ixx="0.1" ixy="0.0" ixz="0.0" iyy="0.1" iyz="0.0" izz="0.1"/>
      </inertial>
		<!-- <contact>
			<stiffness value="3000.0"/>
			<damping value="100.0"/>
		</contact> -->
  </link>
  <link name="panda_rightfinger_lower">
    <visual>
      <origin rpy="0 0 3.14" xyz="0 0 0.029"/>
      <geometry>
        <!-- <box size="0.018 0.015 0.108"/> -->
        <mesh filename="meshes/collision/franka_finger_lower_v4.stl"/>
      </geometry>
    </visual>
    <collision>
      <origin rpy="0 0 3.14" xyz="0 0 0.029"/>
      <geometry>
        <mesh filename="meshes/collision/franka_finger_lower_v4.stl"/>
        <!-- <box size="0.018 0.015 0.108"/> -->
      </geometry>
    </collision>
    <inertial>
        <mass value="0.01"/>
        <inertia ixx="0.1" ixy="0.0" ixz="0.0" iyy="0.1" iyz="0.0" izz="0.1"/>
      </inertial>
		<!-- <contact>
			<stiffness value="3000.0"/>
			<damping value="100.0"/>
		</contact> -->
  </link>
  <joint name="panda_finger_lower_joint1" type="fixed">
    <parent link="panda_leftfinger_upper"/>
    <child link="panda_leftfinger_lower"/>
    <origin rpy="0 0 0" xyz="0 0 0"/>
  </joint>
  <joint name="panda_finger_lower_joint2" type="fixed">
    <parent link="panda_rightfinger_upper"/>
    <child link="panda_rightfinger_lower"/>
    <origin rpy="0 0 0" xyz="0 0 0"/>
    <mimic joint="panda_finger_lower_joint1"/>
  </joint>
</robot>

