Untitled

 avatar
unknown
plain_text
2 years ago
52 kB
1
Indexable
<?xml version="1.0" ?>
<!-- =================================================================================== -->
<!-- |    This document was autogenerated by xacro from stretch_gazebo.urdf.xacro      | -->
<!-- |    EDITING THIS FILE BY HAND IS NOT RECOMMENDED                                 | -->
<!-- =================================================================================== -->
<robot name="stretch">
  <link name="base_link">
    <inertial>
      <origin rpy="0 0 0" xyz="-0.109461304328163 -0.000741018909047708 0.0914915269429946"/>
      <mass value="1.0723782659782"/>
      <inertia ixx="0.00310580907710135" ixy="1.5182848191076E-06" ixz="0.00041690466732394" iyy="0.00433798719991832" iyz="1.33487716258445E-05" izz="0.0037204727467362"/>
    </inertial>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="package://stretch_description/meshes/base_link.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="package://stretch_description/meshes/base_link.STL"/>
      </geometry>
    </collision>
  </link>
  <link name="link_right_wheel">
    <inertial>
      <origin rpy="0 0 0" xyz="1.25554620866719E-07 3.54748938447003E-07 0.0239581106165018"/>
      <mass value="0.01"/>
      <inertia ixx="0.001" ixy="0" ixz="0" iyy="0.001" iyz="0" izz="0.001"/>
    </inertial>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="package://stretch_description/meshes/link_right_wheel.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="package://stretch_description/meshes/link_right_wheel.STL"/>
      </geometry>
    </collision>
  </link>
  <joint name="joint_right_wheel" type="continuous">
    <origin rpy="-1.57079632679489 -1.11022302462516E-16 7.28583859910277E-17" xyz="-0.00300000000000034 -0.15765 0.0508000000000004"/>
    <parent link="base_link"/>
    <child link="link_right_wheel"/>
    <axis xyz="0 0 1"/>
    <dynamics damping="21.75" friction="10.48" spring_reference="0" spring_stiffness="{joint_spring_stiffness}"/>
  </joint>
  <link name="link_left_wheel">
    <inertial>
      <origin rpy="0 0 0" xyz="1.2555462092223E-07 -3.54748938502514E-07 -0.0239581106165035"/>
      <mass value="0.01"/>
      <inertia ixx="0.001" ixy="0" ixz="0" iyy="0.001" iyz="0" izz="0.001"/>
    </inertial>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="package://stretch_description/meshes/link_left_wheel.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="package://stretch_description/meshes/link_left_wheel.STL"/>
      </geometry>
    </collision>
  </link>
  <joint name="joint_left_wheel" type="continuous">
    <origin rpy="-1.5707963267949 3.16227047920818E-31 7.88745438253713E-16" xyz="-0.00300000000001899 0.15765 0.0507999999999994"/>
    <parent link="base_link"/>
    <child link="link_left_wheel"/>
    <axis xyz="0 0 1"/>
    <dynamics damping="21.75" friction="10.48" spring_reference="0" spring_stiffness="{joint_spring_stiffness}"/>
  </joint>
  <link name="caster_link">
    <collision>
      <geometry>
        <sphere radius="0.032"/>
      </geometry>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <surface>
        <friction>
          <ode>
            <mu>0</mu>
            <mu2>0</mu2>
            <slip1>1.0</slip1>
            <slip2>1.0</slip2>
          </ode>
        </friction>
      </surface>
    </collision>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="package://stretch_description/meshes/omni_wheel_m.STL"/>
      </geometry>
      <material name="">
        <color rgba="0.792156862745098 0.819607843137255 0.933333333333333 1"/>
      </material>
    </visual>
    <inertial>
      <mass value="0.01"/>
      <origin xyz="0 0 0"/>
      <inertia ixx="0.001" ixy="0" ixz="0" iyy="0.001" iyz="0" izz="0.001"/>
    </inertial>
  </link>
  <joint name="caster_joint" type="fixed">
    <parent link="base_link"/>
    <child link="caster_link"/>
    <origin rpy="-1.5707963267948966 0 0" xyz="-0.245 0.0 0.032"/>
    <axis xyz="0 0 1"/>
  </joint>
  <link name="link_mast">
    <inertial>
      <origin rpy="0 0 0" xyz="0.00755818572975822 0.773971284176834 0.00647313086620024"/>
      <mass value="0.749143203376401"/>
      <inertia ixx="0.0709854511954588" ixy="-0.00433428742758457" ixz="-0.000186110788697573" iyy="0.000437922053342648" iyz="-0.00288788257713431" izz="0.071104808501661"/>
    </inertial>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="package://stretch_description/meshes/link_mast.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="package://stretch_description/meshes/link_mast.STL"/>
      </geometry>
    </collision>
  </link>
  <joint name="joint_mast" type="fixed">
    <origin rpy="1.5707963267949 0 0.00925318926571245" xyz="-0.07 0.134999999999998 0.0284000000000001"/>
    <parent link="base_link"/>
    <child link="link_mast"/>
    <axis xyz="0 0 0"/>
  </joint>
  <link name="link_lift">
    <inertial>
      <origin rpy="0 0 0" xyz="-0.0547636346252869 0.0380939689802074 0.00933159404448308"/>
      <mass value="0.444820831236007"/>
      <inertia ixx="0.000567192946271367" ixy="-0.00024607534789508" ixz="-0.000128108442260574" iyy="0.00127108364478659" iyz="7.61916855070339E-06" izz="0.00137296635099006"/>
    </inertial>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="package://stretch_description/meshes/link_lift.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="package://stretch_description/meshes/link_lift.STL"/>
      </geometry>
    </collision>
  </link>
  <joint name="joint_lift" type="prismatic">
    <origin rpy="-1.57079632679552 1.5615431375292 -6.2942004366467E-13" xyz="-0.0369217062323472 0.165471199999996 -0.000341653286793524"/>
    <parent link="link_mast"/>
    <child link="link_lift"/>
    <axis xyz="0 0 1"/>
    <!-- for now: hand copied range_m: from lift: from ~/repos/stretch_fleet/stretch-re1-1001/stretch_re1_factory_params.yaml -->
    <!--<limit effort="100" lower="0.0" upper="1.095" velocity="1.0"/>-->
    <!-- copied value did not reach the top of mesh model with GUI sliders and RViz -->
    <limit effort="100" lower="0.0" upper="1.1" velocity="1.0"/>
  </joint>
  <link name="link_arm_l4">
    <inertial>
      <origin rpy="0 0 0" xyz="-1.61247276464493E-06 1.54715589201215E-06 -0.0953252706040035"/>
      <mass value="0.0676525455789735"/>
      <inertia ixx="0.000122002023066796" ixy="7.29593356230121E-13" ixz="9.63170353371061E-09" iyy="0.000122002023127152" iyz="-9.24154949889042E-09" izz="1.46043439809638E-12"/>
    </inertial>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="package://stretch_description/meshes/link_arm_l4.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="package://stretch_description/meshes/link_arm_l4.STL"/>
      </geometry>
    </collision>
  </link>
  <joint name="joint_arm_l4" type="fixed">
    <origin rpy="1.5708 -3.1019E-16 -1.5708" xyz="-0.25471 0 0"/>
    <parent link="link_lift"/>
    <child link="link_arm_l4"/>
    <axis xyz="0 0 0"/>
  </joint>
  <link name="link_arm_l3">
    <inertial>
      <origin rpy="0 0 0" xyz="-3.34873468621488E-07 4.7411336306924E-07 -0.0974069598289041"/>
      <mass value="0.0626921047058405"/>
      <inertia ixx="0.001" ixy="0" ixz="0" iyy="0.001" iyz="0" izz="0.001"/>
    </inertial>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="package://stretch_description/meshes/link_arm_l3.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="package://stretch_description/meshes/link_arm_l3.STL"/>
      </geometry>
    </collision>
  </link>
  <joint name="joint_arm_l3" type="prismatic">
    <origin rpy="3.5742E-16 3.2123E-16 -2.4565E-16" xyz="0 0 0.013"/>
    <parent link="link_arm_l4"/>
    <child link="link_arm_l3"/>
    <axis xyz="0 0 1"/>
    <!-- 0.13 = 0.52/4-->
    <limit effort="100" lower="0.0" upper="0.13" velocity="1.0"/>
  </joint>
  <link name="link_arm_l2">
    <inertial>
      <origin rpy="0 0 0" xyz="-3.31043560508615E-07 3.13422303999111E-07 -0.097255883541891"/>
      <mass value="0.0569074368576238"/>
      <inertia ixx="0.001" ixy="0" ixz="0" iyy="0.001" iyz="0" izz="0.001"/>
    </inertial>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="package://stretch_description/meshes/link_arm_l2.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="package://stretch_description/meshes/link_arm_l2.STL"/>
      </geometry>
    </collision>
  </link>
  <joint name="joint_arm_l2" type="prismatic">
    <origin rpy="2.91385731014123E-16 4.44300759504684E-17 3.25691080516352E-16" xyz="0 0 0.013"/>
    <parent link="link_arm_l3"/>
    <child link="link_arm_l2"/>
    <axis xyz="0 0 1"/>
    <!-- 0.13 = 0.52/4-->
    <limit effort="100" lower="0.0" upper="0.13" velocity="1.0"/>
  </joint>
  <link name="link_arm_l1">
    <inertial>
      <origin rpy="0 0 0" xyz="-3.36876635420591E-07 3.05876091066803E-07 -0.0969117032232756"/>
      <mass value="0.0511763619538321"/>
      <inertia ixx="0.001" ixy="0" ixz="0" iyy="0.001" iyz="0" izz="0.001"/>
    </inertial>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="package://stretch_description/meshes/link_arm_l1.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="package://stretch_description/meshes/link_arm_l1.STL"/>
      </geometry>
    </collision>
  </link>
  <joint name="joint_arm_l1" type="prismatic">
    <origin rpy="7.41596560408007E-17 1.33876788296791E-16 -2.44545873596083E-16" xyz="0 0 0.013"/>
    <parent link="link_arm_l2"/>
    <child link="link_arm_l1"/>
    <axis xyz="0 0 1"/>
    <!-- 0.13 = 0.52/4-->
    <limit effort="100" lower="0.0" upper="0.13" velocity="1.0"/>
  </joint>
  <link name="link_arm_l0">
    <inertial>
      <origin rpy="0 0 0" xyz="0.0230715049668191 -0.00195115833662818 -0.0360646347160285"/>
      <mass value="0.101241250325294"/>
      <inertia ixx="0.001" ixy="0" ixz="0" iyy="0.001" iyz="0" izz="0.001"/>
    </inertial>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="package://stretch_description/meshes/link_arm_l0.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="package://stretch_description/meshes/link_arm_l0.STL"/>
      </geometry>
    </collision>
  </link>
  <joint name="joint_arm_l0" type="prismatic">
    <origin rpy="-3.05317390622457E-16 -4.23236224076729E-16 -2.68425135229209E-17" xyz="0 0 -0.0137499999999938"/>
    <parent link="link_arm_l1"/>
    <child link="link_arm_l0"/>
    <axis xyz="0 0 1"/>
    <!-- 0.13 = 0.52/4-->
    <limit effort="100" lower="0.0" upper="0.13" velocity="1.0"/>
  </joint>
  <link name="link_wrist_yaw">
    <inertial>
      <origin rpy="0 0 0" xyz="-8.02795716750571E-06 1.93811447768422E-05 0.018946700595851"/>
      <mass value="0.0405398981326229"/>
      <inertia ixx="0.001" ixy="0" ixz="0" iyy="0.001" iyz="0" izz="0.001"/>
    </inertial>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="package://stretch_description/meshes/link_wrist_yaw.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="package://stretch_description/meshes/link_wrist_yaw.STL"/>
      </geometry>
    </collision>
  </link>
  <joint name="joint_wrist_yaw" type="revolute">
    <origin rpy="1.5708 4.2595E-14 2.6415E-15" xyz="0.083 -0.03075 0"/>
    <parent link="link_arm_l0"/>
    <child link="link_wrist_yaw"/>
    <axis xyz="0 0 -1"/>
    <!--
      stowed to front ~225 deg: 3.15159 x 1.25 = 3.9395
      using 4.0
      stowed to back ~100 deg:  100 / 180 x 3.14159 = 1.7453
      using -1.75
    -->
    <limit effort="100" lower="-1.75" upper="4.0" velocity="1.0"/>
  </joint>
  <link name="link_head">
    <inertial>
      <origin rpy="0 0 0" xyz="0.0372933550588956 0.045509432985552 0.0281136801213409"/>
      <mass value="0.129454717596498"/>
      <inertia ixx="0.001" ixy="0" ixz="0" iyy="0.001" iyz="0" izz="0.001"/>
    </inertial>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="package://stretch_description/meshes/link_head.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="package://stretch_description/meshes/link_head.STL"/>
      </geometry>
    </collision>
  </link>
  <joint name="joint_head" type="fixed">
    <origin rpy="1.5708 -1.5615 3.1416" xyz="0 1.33 0"/>
    <parent link="link_mast"/>
    <child link="link_head"/>
    <axis xyz="0 0 0"/>
  </joint>
  <link name="link_head_pan">
    <inertial>
      <origin rpy="0 0 0" xyz="-0.00116200255310878 0.0130365621706306 0.00137629842298681"/>
      <mass value="0.035858341182617"/>
      <inertia ixx="0.001" ixy="0" ixz="0" iyy="0.001" iyz="0" izz="0.001"/>
    </inertial>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="package://stretch_description/meshes/link_head_pan.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="package://stretch_description/meshes/link_head_pan.STL"/>
      </geometry>
    </collision>
  </link>
  <joint name="joint_head_pan" type="revolute">
    <origin rpy="-6.4986E-15 -6.068E-24 1.5708" xyz="0.135 0.0731 -0.003"/>
    <parent link="link_head"/>
    <child link="link_head_pan"/>
    <axis xyz="0 0 1"/>
    <!-- unconstrained range for now -->
    <limit effort="100" lower="-3.9" upper="1.5" velocity="1.0"/>
  </joint>
  <link name="link_head_tilt">
    <inertial>
      <origin rpy="0 0 0" xyz="0.00920211049011871 -0.0279724762416447 0.0306580436227023"/>
      <mass value="0.0701242408063442"/>
      <inertia ixx="0.001" ixy="0" ixz="0" iyy="0.001" iyz="0" izz="0.001"/>
    </inertial>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="package://stretch_description/meshes/link_head_tilt.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="package://stretch_description/meshes/link_head_tilt.STL"/>
      </geometry>
    </collision>
  </link>
  <joint name="joint_head_tilt" type="revolute">
    <origin rpy="1.5708 6.068E-24 -2.5165E-15" xyz="-0.0013 0.027507 -0.053311"/>
    <parent link="link_head_pan"/>
    <child link="link_head_tilt"/>
    <axis xyz="0 0 1"/>
    <!-- unconstrained range for now -->
    <limit effort="100" lower="-1.53" upper="0.79" velocity="1.0"/>
  </joint>
  <link name="link_aruco_right_base">
    <inertial>
      <origin rpy="0 0 0" xyz="0 0 -5.00000000014378E-07"/>
      <mass value="3.59999999990368E-06"/>
      <inertia ixx="0" ixy="0" ixz="0" iyy="0" iyz="0" izz="0"/>
    </inertial>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="package://stretch_description/meshes/link_aruco_right_base.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="package://stretch_description/meshes/link_aruco_right_base.STL"/>
      </geometry>
    </collision>
  </link>
  <joint name="joint_aruco_right_base" type="fixed">
    <origin rpy="0 0 -1.5707963267949" xyz="-0.00500000000000014 -0.1304972 0.1597482"/>
    <parent link="base_link"/>
    <child link="link_aruco_right_base"/>
    <axis xyz="0 0 0"/>
  </joint>
  <link name="link_aruco_left_base">
    <inertial>
      <origin rpy="0 0 0" xyz="0 0 -5.00000000014378E-07"/>
      <mass value="3.59999999990368E-06"/>
      <inertia ixx="0" ixy="0" ixz="0" iyy="0" iyz="0" izz="0"/>
    </inertial>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="package://stretch_description/meshes/link_aruco_left_base.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="package://stretch_description/meshes/link_aruco_left_base.STL"/>
      </geometry>
    </collision>
  </link>
  <joint name="joint_aruco_left_base" type="fixed">
    <origin rpy="0 0 -1.5707963267949" xyz="-0.00500000000000014 0.1304972 0.1597482"/>
    <parent link="base_link"/>
    <child link="link_aruco_left_base"/>
    <axis xyz="0 0 0"/>
  </joint>
  <link name="link_aruco_shoulder">
    <inertial>
      <origin rpy="0 0 0" xyz="-2.77555756156289E-17 2.56739074444567E-16 -0.000125000000000042"/>
      <mass value="0"/>
      <inertia ixx="0" ixy="0" ixz="0" iyy="0" iyz="0" izz="0"/>
    </inertial>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="package://stretch_description/meshes/link_aruco_shoulder.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="package://stretch_description/meshes/link_aruco_shoulder.STL"/>
      </geometry>
    </collision>
  </link>
  <joint name="joint_aruco_shoulder" type="fixed">
    <origin rpy="-1.53998860117704E-29 3.55962409571165E-15 0.0" xyz="-0.0133768876375287 0.0558540528812078 0.0861368272417975"/>
    <parent link="link_lift"/>
    <child link="link_aruco_shoulder"/>
    <axis xyz="0 0 0"/>
  </joint>
  <link name="link_aruco_top_wrist">
    <inertial>
      <origin rpy="0 0 0" xyz="1.11022302462516E-16 3.05311331771918E-16 -0.00012499999999821"/>
      <mass value="0"/>
      <inertia ixx="0" ixy="0" ixz="0" iyy="0" iyz="0" izz="0"/>
    </inertial>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="package://stretch_description/meshes/link_aruco_top_wrist.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="package://stretch_description/meshes/link_aruco_top_wrist.STL"/>
      </geometry>
    </collision>
  </link>
  <joint name="joint_aruco_top_wrist" type="fixed">
    <origin rpy="1.5707963267949 -8.03728587323464E-15 3.14159265358979" xyz="0.0472500000000019 0.0292850000000015 0"/>
    <parent link="link_arm_l0"/>
    <child link="link_aruco_top_wrist"/>
    <axis xyz="0 0 0"/>
  </joint>
  <link name="link_aruco_inner_wrist">
    <inertial>
      <origin rpy="0 0 0" xyz="8.32667268468867E-17 1.77635683940025E-15 -0.000125000000000264"/>
      <mass value="0"/>
      <inertia ixx="0" ixy="0" ixz="0" iyy="0" iyz="0" izz="0"/>
    </inertial>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="package://stretch_description/meshes/link_aruco_inner_wrist.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="package://stretch_description/meshes/link_aruco_inner_wrist.STL"/>
      </geometry>
    </collision>
  </link>
  <joint name="joint_aruco_inner_wrist" type="fixed">
    <origin rpy="3.14159265358979 4.23377442363088E-14 3.14159265358979" xyz="0.0472499999999947 -0.0119000000000034 -0.0272499999991938"/>
    <parent link="link_arm_l0"/>
    <child link="link_aruco_inner_wrist"/>
    <axis xyz="0 0 0"/>
  </joint>
  <material name="aluminum">
    <color rgba="0.5 0.5 0.5 1"/>
  </material>
  <material name="plastic">
    <color rgba="0.1 0.1 0.1 1"/>
  </material>
  <!-- camera body, with origin at bottom screw mount -->
  <joint name="camera_joint" type="fixed">
    <origin rpy="0.0 0.0 0.0" xyz="0.03 -0.0122 0.0182"/>
    <parent link="link_head_tilt"/>
    <child link="camera_bottom_screw_frame"/>
  </joint>
  <link name="camera_bottom_screw_frame"/>
  <joint name="camera_link_joint" type="fixed">
    <origin rpy="0 0 0" xyz="0.010600000000000002 0.0175 0.0125"/>
    <parent link="camera_bottom_screw_frame"/>
    <child link="camera_link"/>
  </joint>
  <link name="camera_link">
    <visual>
      <!-- the mesh origin is at front plate in between the two infrared camera axes -->
      <origin rpy="1.5707963267948966 0 1.5707963267948966" xyz="0.0043 -0.0175 0"/>
      <geometry>
        <mesh filename="package://realsense2_description/meshes/d435.dae"/>
      </geometry>
    </visual>
    <collision>
      <origin rpy="0 0 0" xyz="0 -0.0175 0"/>
      <geometry>
        <box size="0.02505 0.09 0.025"/>
      </geometry>
    </collision>
    <inertial>
      <!-- The following are not reliable values, and should not be used for modeling -->
      <mass value="0.072"/>
      <origin xyz="0 0 0"/>
      <inertia ixx="0.003881243" ixy="0.0" ixz="0.0" iyy="0.000498940" iyz="0.0" izz="0.003879257"/>
    </inertial>
  </link>
  <!-- camera depth joints and links -->
  <joint name="camera_depth_joint" type="fixed">
    <origin rpy="0 0 0" xyz="0 0 0"/>
    <parent link="camera_link"/>
    <child link="camera_depth_frame"/>
  </joint>
  <link name="camera_depth_frame"/>
  <joint name="camera_depth_optical_joint" type="fixed">
    <origin rpy="-1.5707963267948966 0 -1.5707963267948966" xyz="0 0 0"/>
    <parent link="camera_depth_frame"/>
    <child link="camera_depth_optical_frame"/>
  </joint>
  <link name="camera_depth_optical_frame"/>
  <!-- camera left IR joints and links -->
  <joint name="camera_infra1_joint" type="fixed">
    <origin rpy="0 0 0" xyz="0 0.0 0"/>
    <parent link="camera_link"/>
    <child link="camera_infra1_frame"/>
  </joint>
  <link name="camera_infra1_frame"/>
  <joint name="camera_infra1_optical_joint" type="fixed">
    <origin rpy="-1.5707963267948966 0 -1.5707963267948966" xyz="0 0 0"/>
    <parent link="camera_infra1_frame"/>
    <child link="camera_infra1_optical_frame"/>
  </joint>
  <link name="camera_infra1_optical_frame"/>
  <!-- camera right IR joints and links -->
  <joint name="camera_infra2_joint" type="fixed">
    <origin rpy="0 0 0" xyz="0 -0.05 0"/>
    <parent link="camera_link"/>
    <child link="camera_infra2_frame"/>
  </joint>
  <link name="camera_infra2_frame"/>
  <joint name="camera_infra2_optical_joint" type="fixed">
    <origin rpy="-1.5707963267948966 0 -1.5707963267948966" xyz="0 0 0"/>
    <parent link="camera_infra2_frame"/>
    <child link="camera_infra2_optical_frame"/>
  </joint>
  <link name="camera_infra2_optical_frame"/>
  <!-- camera color joints and links -->
  <joint name="camera_color_joint" type="fixed">
    <origin rpy="0 0 0" xyz="0 0.015 0"/>
    <parent link="camera_link"/>
    <child link="camera_color_frame"/>
  </joint>
  <link name="camera_color_frame"/>
  <joint name="camera_color_optical_joint" type="fixed">
    <origin rpy="-1.5707963267948966 0 -1.5707963267948966" xyz="0 0 0"/>
    <parent link="camera_color_frame"/>
    <child link="camera_color_optical_frame"/>
  </joint>
  <link name="camera_color_optical_frame"/>
  <link name="camera_accel_frame"/>
  <link name="camera_accel_optical_frame"/>
  <link name="camera_gyro_frame"/>
  <link name="camera_gyro_optical_frame"/>
  <joint name="camera_accel_joint" type="fixed">
    <origin rpy="0 0 0" xyz="-0.01174 -0.00552 0.0051"/>
    <parent link="camera_link"/>
    <child link="camera_accel_frame"/>
  </joint>
  <joint name="camera_accel_optical_joint" type="fixed">
    <origin rpy="-1.5707963267948966 0 -1.5707963267948966" xyz="0 0 0"/>
    <parent link="camera_accel_frame"/>
    <child link="camera_accel_optical_frame"/>
  </joint>
  <joint name="camera_gyro_joint" type="fixed">
    <origin rpy="0 0 0" xyz="-0.01174 -0.00552 0.0051"/>
    <parent link="camera_link"/>
    <child link="camera_gyro_frame"/>
  </joint>
  <joint name="camera_gyro_optical_joint" type="fixed">
    <origin rpy="-1.5707963267948966 0 -1.5707963267948966" xyz="0 0 0"/>
    <parent link="camera_gyro_frame"/>
    <child link="camera_gyro_optical_frame"/>
  </joint>
  <link name="laser">
    <inertial>
      <origin rpy="0 0 0" xyz="0 0 -0.000755956127492408"/>
      <mass value="0.0749979022894495"/>
      <inertia ixx="0" ixy="0" ixz="0" iyy="0" iyz="0" izz="0"/>
    </inertial>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="package://stretch_description/meshes/laser.STL"/>
      </geometry>
      <material name="">
        <color rgba="0.250980392156863 0.250980392156863 0.250980392156863 1"/>
      </material>
    </visual>
    <collision>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="package://stretch_description/meshes/laser.STL"/>
      </geometry>
    </collision>
  </link>
  <joint name="joint_laser" type="fixed">
    <origin rpy="0 0 -3.14159265358979" xyz="0.000502800000000914 0 0.1664"/>
    <parent link="base_link"/>
    <child link="laser"/>
    <axis xyz="0 0 0"/>
  </joint>
  <link name="respeaker_base">
    <inertial>
      <origin rpy="0 0 0" xyz="-0.00078082896792734 0.00765742173486017 -0.0042488298301937"/>
      <mass value="0.00969129410417277"/>
      <inertia ixx="8.95656300428405E-07" ixy="2.67330745809535E-08" ixz="-3.84519793580934E-08" iyy="4.0421099617056E-07" iyz="3.15533542838673E-07" izz="7.08282597118018E-07"/>
    </inertial>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="package://stretch_description/meshes/link_respeaker.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="package://stretch_description/meshes/link_respeaker.STL"/>
      </geometry>
    </collision>
  </link>
  <joint name="joint_respeaker" type="fixed">
    <!-- rpy="   ?   rotate_sound_source_direction    ?   " -->
    <origin rpy="1.57079632679553 0.0 3.14159265358916" xyz="1.09074743137871E-05 1.36992 0.00303572796911382"/>
    <parent link="link_mast"/>
    <child link="respeaker_base"/>
    <axis xyz="0 0 0"/>
  </joint>
  <link name="link_gripper">
    <inertial>
      <origin rpy="0 0 0" xyz="-0.0170229132730066 0.0131410320934285 -0.0371614759484659"/>
      <mass value="0.101902711393094"/>
      <inertia ixx="0.001" ixy="0" ixz="0" iyy="0.001" iyz="0" izz="0.001"/>
    </inertial>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="package://stretch_description/meshes/link_gripper.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="package://stretch_description/meshes/link_gripper.STL"/>
      </geometry>
    </collision>
  </link>
  <!-- rpy="3.1416 0 1.5708" -->
  <!-- rpy="0.0 0 1.5708" -->
  <joint name="joint_gripper" type="fixed">
    <origin rpy="3.14159 0 -1.5708" xyz="0 0 0"/>
    <parent link="link_wrist_yaw"/>
    <child link="link_gripper"/>
    <axis xyz="0 0 0"/>
  </joint>
  <link name="link_gripper_finger_left">
    <inertial>
      <origin rpy="0 0 0" xyz="0.0945047483510102 0.0124301080924361 -4.44089209850063E-16"/>
      <mass value="0.0476207785199474"/>
      <inertia ixx="0.001" ixy="0" ixz="0" iyy="0.001" iyz="0" izz="0.001"/>
    </inertial>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="package://stretch_description/meshes/link_gripper_finger_left.STL" scale="0.9 1.0 1.0"/>
      </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="package://stretch_description/meshes/link_gripper_finger_left.STL" scale="0.9 1.0 1.0"/>
      </geometry>
    </collision>
  </link>
  <joint name="joint_gripper_finger_left" type="revolute">
    <origin rpy="2.1762E-15 0.5236 3.1416" xyz="-0.047231 -0.010151 -0.04679"/>
    <parent link="link_gripper"/>
    <child link="link_gripper_finger_left"/>
    <axis xyz="0 0 1"/>
    <limit effort="100" lower="-0.6" upper="0.6" velocity="1.0"/>
  </joint>
  <link name="link_gripper_fingertip_left">
    <inertial>
      <origin rpy="0 0 0" xyz="-3.16381381648689E-08 -2.91408530639359E-09 0.00812579670381812"/>
      <mass value="0.00382159917455729"/>
      <inertia ixx="0.001" ixy="0" ixz="0" iyy="0.001" iyz="0" izz="0.001"/>
    </inertial>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="package://stretch_description/meshes/link_gripper_fingertip_left.STL"/>
      </geometry>
      <material name="">
        <color rgba="0.250980392156863 0.250980392156863 0.250980392156863 1"/>
      </material>
    </visual>
    <collision>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="package://stretch_description/meshes/link_gripper_fingertip_left.STL"/>
      </geometry>
    </collision>
  </link>
  <joint name="joint_gripper_fingertip_left" type="fixed">
    <origin rpy="-1.5708 -4.774E-15 -2.5545" xyz="0.171099 0.014912 0"/>
    <parent link="link_gripper_finger_left"/>
    <child link="link_gripper_fingertip_left"/>
    <axis xyz="0 0 0"/>
  </joint>
  <link name="link_gripper_finger_right">
    <inertial>
      <origin rpy="0 0 0" xyz="-0.0945047483510099 -0.0124301080924345 0"/>
      <mass value="0.0476207785199481"/>
      <inertia ixx="0.001" ixy="0" ixz="0" iyy="0.001" iyz="0" izz="0.001"/>
    </inertial>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="package://stretch_description/meshes/link_gripper_finger_right.STL" scale="0.9 1.0 1.0"/>
      </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="package://stretch_description/meshes/link_gripper_finger_right.STL" scale="0.9 1.0 1.0"/>
      </geometry>
    </collision>
  </link>
  <joint name="joint_gripper_finger_right" type="revolute">
    <origin rpy="3.1416 -0.5236 1.2943E-15" xyz="-0.047231 0.010049 -0.04679"/>
    <parent link="link_gripper"/>
    <child link="link_gripper_finger_right"/>
    <axis xyz="0 0 1"/>
    <limit effort="100" lower="-0.6" upper="0.6" velocity="1.0"/>
  </joint>
  <link name="link_gripper_fingertip_right">
    <inertial>
      <origin rpy="0 0 0" xyz="2.59386303963494E-08 6.70949018566347E-09 0.00812579516130402"/>
      <mass value="0.00382160037319545"/>
      <inertia ixx="0.001" ixy="0" ixz="0" iyy="0.001" iyz="0" izz="0.001"/>
    </inertial>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="package://stretch_description/meshes/link_gripper_fingertip_right.STL"/>
      </geometry>
      <material name="">
        <color rgba="0.250980392156863 0.250980392156863 0.250980392156863 1"/>
      </material>
    </visual>
    <collision>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="package://stretch_description/meshes/link_gripper_fingertip_right.STL"/>
      </geometry>
    </collision>
  </link>
  <joint name="joint_gripper_fingertip_right" type="fixed">
    <origin rpy="-1.5708 -2.0539E-15 0.58705" xyz="-0.171099 -0.014912 0"/>
    <parent link="link_gripper_finger_right"/>
    <child link="link_gripper_fingertip_right"/>
    <axis xyz="0 0 0"/>
  </joint>
  <link name="link_grasp_center">
  </link>
  <joint name="joint_grasp_center" type="fixed">
    <origin rpy="0 0 3.141579" xyz="-0.205478 0 -0.138154"/>
    <parent link="link_gripper"/>
    <child link="link_grasp_center"/>
  </joint>
  <gazebo>
    <plugin filename="libgazebo_ros_control.so" name="gazebo_ros_control">
      <robotNamespace>/</robotNamespace>
    </plugin>
  </gazebo>
  <!-- Base and Drive -->
  <gazebo reference="base_link">
    <material>Gazebo/Gray</material>
  </gazebo>
  <gazebo reference="link_right_wheel">
    <mu1 value="100.0"/>
    <mu2 value="200.0"/>
    <kp value="10000000.0"/>
    <kd value="100.0"/>
    <material>Gazebo/Blue</material>
    <minDepth>0.001</minDepth>
  </gazebo>
  <gazebo reference="link_left_wheel">
    <mu1 value="100.0"/>
    <mu2 value="200.0"/>
    <kp value="10000000.0"/>
    <kd value="100.0"/>
    <material>Gazebo/Blue</material>
    <minDepth>0.001</minDepth>
  </gazebo>
  <gazebo reference="caster_link">
    <turnGravityOff>false</turnGravityOff>
    <minDepth>0.001</minDepth>
    <material>Gazebo/Blue</material>
    <mu1>0.0</mu1>
    <mu2>0.0</mu2>
  </gazebo>
  <transmission name="right_wheel_trans" type="SimpleTransmission">
    <type>transmission_interface/SimpleTransmission</type>
    <actuator name="right_wheel_motor">
      <mechanicalReduction>1</mechanicalReduction>
    </actuator>
    <joint name="joint_right_wheel">
      <hardwareInterface>hardware_interface/VelocityJointInterface</hardwareInterface>
    </joint>
  </transmission>
  <transmission name="left_wheel_trans" type="SimpleTransmission">
    <type>transmission_interface/SimpleTransmission</type>
    <actuator name="left_wheel_motor">
      <mechanicalReduction>1</mechanicalReduction>
    </actuator>
    <joint name="joint_left_wheel">
      <hardwareInterface>hardware_interface/VelocityJointInterface</hardwareInterface>
    </joint>
  </transmission>
  <!-- Sensors -->
  <!-- Realsense D435i -->
  <gazebo reference="camera_color_frame">
    <sensor name="color" type="camera">
      <pose frame="">0 0 0 0 0 0</pose>
      <camera name="__default__">
        <horizontal_fov>1.5009831567151233</horizontal_fov>
        <image>
          <width>640</width>
          <height>480</height>
          <format>RGB_INT8</format>
        </image>
        <clip>
          <near>0.1</near>
          <far>100</far>
        </clip>
        <noise>
          <type>gaussian</type>
          <mean>0.0</mean>
          <stddev>0.007</stddev>
        </noise>
      </camera>
      <always_on>1</always_on>
      <update_rate>30</update_rate>
      <visualize>0</visualize>
    </sensor>
  </gazebo>
  <gazebo reference="camera_infra1_frame">
    <sensor name="ired1" type="camera">
      <pose frame="">0 0 0 0 0 0</pose>
      <camera name="__default__">
        <horizontal_fov>1.5009831567151233</horizontal_fov>
        <image>
          <width>640</width>
          <height>480</height>
          <format>L_INT8</format>
        </image>
        <clip>
          <near>0.1</near>
          <far>100</far>
        </clip>
        <noise>
          <type>gaussian</type>
          <mean>0.0</mean>
          <stddev>0.007</stddev>
        </noise>
      </camera>
      <always_on>1</always_on>
      <update_rate>30</update_rate>
      <visualize>0</visualize>
    </sensor>
  </gazebo>
  <gazebo reference="camera_infra2_frame">
    <sensor name="ired2" type="camera">
      <pose frame="">0 0 0 0 0 0</pose>
      <camera name="__default__">
        <horizontal_fov>1.5009831567151233</horizontal_fov>
        <image>
          <width>640</width>
          <height>480</height>
          <format>L_INT8</format>
        </image>
        <clip>
          <near>0.1</near>
          <far>100</far>
        </clip>
        <noise>
          <type>gaussian</type>
          <mean>0.0</mean>
          <stddev>0.007</stddev>
        </noise>
      </camera>
      <always_on>1</always_on>
      <update_rate>30</update_rate>
      <visualize>0</visualize>
    </sensor>
  </gazebo>
  <gazebo reference="camera_depth_frame">
    <sensor name="depth" type="depth">
      <pose frame="">0 0 0 0 0 0</pose>
      <camera name="__default__">
        <horizontal_fov>1.5009831567151233</horizontal_fov>
        <image>
          <width>640</width>
          <height>480</height>
        </image>
        <clip>
          <near>0.1</near>
          <far>100</far>
        </clip>
        <noise>
          <type>gaussian</type>
          <mean>0.0</mean>
          <stddev>0.007</stddev>
        </noise>
      </camera>
      <always_on>1</always_on>
      <update_rate>30</update_rate>
      <visualize>0</visualize>
    </sensor>
  </gazebo>
  <gazebo>
    <plugin filename="librealsense_gazebo_plugin.so" name="camera">
      <depthUpdateRate>30</depthUpdateRate>
      <colorUpdateRate>30</colorUpdateRate>
      <infraredUpdateRate>30</infraredUpdateRate>
      <depthTopicName>depth/image_raw</depthTopicName>
      <depthCameraInfoTopicName>depth/camera_info</depthCameraInfoTopicName>
      <colorTopicName>color/image_raw</colorTopicName>
      <colorCameraInfoTopicName>color/camera_info</colorCameraInfoTopicName>
      <infrared1TopicName>infrared/image_raw</infrared1TopicName>
      <infrared1CameraInfoTopicName>infrared/camera_info</infrared1CameraInfoTopicName>
      <infrared2TopicName>infrared2/image_raw</infrared2TopicName>
      <infrared2CameraInfoTopicName>infrared2/camera_info</infrared2CameraInfoTopicName>
      <colorOpticalframeName>camera_color_optical_frame</colorOpticalframeName>
      <depthOpticalframeName>camera_depth_optical_frame</depthOpticalframeName>
      <infrared1OpticalframeName>camera_left_ir_optical_frame</infrared1OpticalframeName>
      <infrared2OpticalframeName>camera_right_ir_optical_frame</infrared2OpticalframeName>
      <rangeMinDepth>0.1</rangeMinDepth>
      <rangeMaxDepth>10</rangeMaxDepth>
      <pointCloud>1</pointCloud>
      <pointCloudTopicName>depth/color/points</pointCloudTopicName>
      <pointCloudCutoff>0.15</pointCloudCutoff>
      <pointCloudCutoffMax>10</pointCloudCutoffMax>
    </plugin>
  </gazebo>
  <gazebo reference="camera_gyro_frame">
    <gravity>true</gravity>
    <sensor name="imu_sensor" type="imu">
      <always_on>true</always_on>
      <visualize>false</visualize>
      <plugin filename="libgazebo_ros_imu_sensor.so" name="imu_plugin">
        <topicName>camera/imu/data</topicName>
        <bodyName>camera_gyro_frame</bodyName>
        <updateRateHZ>50.0</updateRateHZ>
        <gaussianNoise>0.001</gaussianNoise>
        <xyzOffset>0 0 0</xyzOffset>
        <rpyOffset>0 0 0</rpyOffset>
        <frameName>camera_gyro_frame</frameName>
        <initialOrientationAsReference>false</initialOrientationAsReference>
      </plugin>
      <pose>0 0 0 0 0 0</pose>
    </sensor>
  </gazebo>
  <!-- Aruco -->
  <gazebo reference="link_aruco_right_base">
    <material>Gazebo/Black</material>
  </gazebo>
  <gazebo reference="link_aruco_left_base">
    <material>Gazebo/Black</material>
  </gazebo>
  <gazebo reference="link_aruco_shoulder">
    <material>Gazebo/Black</material>
  </gazebo>
  <gazebo reference="link_aruco_top_wrist">
    <material>Gazebo/Black</material>
  </gazebo>
  <gazebo reference="link_aruco_inner_wrist">
    <material>Gazebo/Black</material>
  </gazebo>
  <!-- Respeaker -->
  <gazebo reference="respeaker_base">
    <material>Gazebo/Green</material>
  </gazebo>
  <gazebo reference="laser">
    <material>Gazebo/Black</material>
    <sensor name="laser_sensor" type="ray">
      <pose>0 0 0 0 0 0</pose>
      <visualize>false</visualize>
      <update_rate>5.5</update_rate>
      <ray>
        <scan>
          <horizontal>
            <samples>2000</samples>
            <resolution>1</resolution>
            <min_angle>-0.9</min_angle>
            <max_angle>5.0</max_angle>
          </horizontal>
        </scan>
        <range>
          <min>0.15</min>
          <max>12.0</max>
          <resolution>0.01</resolution>
        </range>
        <noise>
          <type>gaussian</type>
          <mean>0.0</mean>
          <stddev>0.001</stddev>
        </noise>
      </ray>
      <plugin filename="libgazebo_ros_laser.so" name="gazebo_ros_lidar_controller">
        <topicName>scan</topicName>
        <frameName>laser</frameName>
      </plugin>
    </sensor>
  </gazebo>
  <!-- Base IMU -->
  <gazebo reference="base_link">
    <gravity>true</gravity>
    <sensor name="base_imu" type="imu">
      <always_on>true</always_on>
      <visualize>false</visualize>
      <plugin filename="libgazebo_ros_imu_sensor.so" name="imu_plugin">
        <topicName>imu/data</topicName>
        <bodyName>base_link</bodyName>
        <updateRateHZ>25.0</updateRateHZ>
        <gaussianNoise>0.001</gaussianNoise>
        <xyzOffset>0 0 0</xyzOffset>
        <rpyOffset>0 0 0</rpyOffset>
        <frameName>base_link</frameName>
        <initialOrientationAsReference>false</initialOrientationAsReference>
      </plugin>
      <pose>0 0 0 0 0 0</pose>
    </sensor>
  </gazebo>
  <!-- Wrist IMU -->
  <gazebo reference="link_wrist_yaw">
    <gravity>true</gravity>
    <sensor name="wrist_imu" type="imu">
      <always_on>true</always_on>
      <visualize>false</visualize>
      <plugin filename="libgazebo_ros_imu_sensor.so" name="imu_plugin">
        <topicName>wrist_imu/data</topicName>
        <bodyName>link_wrist_yaw</bodyName>
        <updateRateHZ>25.0</updateRateHZ>
        <gaussianNoise>0.001</gaussianNoise>
        <xyzOffset>0 0 0</xyzOffset>
        <rpyOffset>0 0 0</rpyOffset>
        <frameName>link_wrist_yaw</frameName>
        <initialOrientationAsReference>false</initialOrientationAsReference>
      </plugin>
      <pose>0 0 0 0 0 0</pose>
    </sensor>
  </gazebo>
  <!-- Lift -->
  <gazebo reference="link_lift">
    <mu1 value="10000.0"/>
    <mu2 value="10000.0"/>
    <kp value="10000000.0"/>
    <kd value="100.0"/>
    <material>Gazebo/Black</material>
    <minDepth>0.001</minDepth>
  </gazebo>
  <gazebo reference="link_mast">
    <material>Gazebo/Gray</material>
  </gazebo>
  <transmission name="trans_lift">
    <type>transmission_interface/SimpleTransmission</type>
    <actuator name="motor_lift">
      <mechanicalReduction>1</mechanicalReduction>
    </actuator>
    <joint name="joint_lift">
      <hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface>
    </joint>
  </transmission>
  <!-- Arm -->
  <gazebo reference="link_arm_l0">
    <mu1 value="100.0"/>
    <mu2 value="200.0"/>
    <kp value="10000000.0"/>
    <kd value="100.0"/>
    <material>Gazebo/Gray</material>
    <minDepth>0.001</minDepth>
  </gazebo>
  <gazebo reference="link_arm_l1">
    <mu1 value="100.0"/>
    <mu2 value="200.0"/>
    <kp value="10000000.0"/>
    <kd value="100.0"/>
    <material>Gazebo/Gray</material>
    <minDepth>0.001</minDepth>
  </gazebo>
  <gazebo reference="link_arm_l2">
    <mu1 value="100.0"/>
    <mu2 value="200.0"/>
    <kp value="10000000.0"/>
    <kd value="100.0"/>
    <material>Gazebo/Gray</material>
    <minDepth>0.001</minDepth>
  </gazebo>
  <gazebo reference="link_arm_l3">
    <mu1 value="100.0"/>
    <mu2 value="200.0"/>
    <kp value="10000000.0"/>
    <kd value="100.0"/>
    <material>Gazebo/Gray</material>
    <minDepth>0.001</minDepth>
  </gazebo>
  <gazebo reference="link_arm_l4">
    <mu1 value="100.0"/>
    <mu2 value="200.0"/>
    <kp value="10000000.0"/>
    <kd value="100.0"/>
    <material>Gazebo/Gray</material>
    <minDepth>0.001</minDepth>
  </gazebo>
  <transmission name="trans_arm_l0">
    <type>transmission_interface/SimpleTransmission</type>
    <actuator name="motor_arm_l0">
      <mechanicalReduction>1</mechanicalReduction>
    </actuator>
    <joint name="joint_arm_l0">
      <hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface>
    </joint>
  </transmission>
  <transmission name="trans_arm_l1">
    <type>transmission_interface/SimpleTransmission</type>
    <actuator name="motor_arm_l1">
      <mechanicalReduction>1</mechanicalReduction>
    </actuator>
    <joint name="joint_arm_l1">
      <hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface>
    </joint>
  </transmission>
  <transmission name="trans_arm_l2">
    <type>transmission_interface/SimpleTransmission</type>
    <actuator name="motor_arm_l2">
      <mechanicalReduction>1</mechanicalReduction>
    </actuator>
    <joint name="joint_arm_l2">
      <hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface>
    </joint>
  </transmission>
  <transmission name="trans_arm_l3">
    <type>transmission_interface/SimpleTransmission</type>
    <actuator name="motor_arm_l3">
      <mechanicalReduction>1</mechanicalReduction>
    </actuator>
    <joint name="joint_arm_l3">
      <hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface>
    </joint>
  </transmission>
  <!-- Wrist -->
  <gazebo reference="link_wrist_yaw">
    <mu1 value="100.0"/>
    <mu2 value="200.0"/>
    <kp value="10000000.0"/>
    <kd value="100.0"/>
    <material>Gazebo/Black</material>
    <minDepth>0.001</minDepth>
  </gazebo>
  <transmission name="trans_wrist_yaw">
    <type>transmission_interface/SimpleTransmission</type>
    <actuator name="motor_wrist_yaw">
      <mechanicalReduction>1</mechanicalReduction>
    </actuator>
    <joint name="joint_wrist_yaw">
      <hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface>
    </joint>
  </transmission>
  <!-- Head -->
  <gazebo reference="link_head">
    <mu1 value="100.0"/>
    <mu2 value="200.0"/>
    <material>Gazebo/Gray</material>
  </gazebo>
  <gazebo reference="link_head_tilt">
    <mu1 value="100.0"/>
    <mu2 value="200.0"/>
    <kp value="10000000.0"/>
    <kd value="100.0"/>
    <material>Gazebo/Gray</material>
    <minDepth>0.001</minDepth>
  </gazebo>
  <gazebo reference="link_head_pan">
    <mu1 value="100.0"/>
    <mu2 value="200.0"/>
    <kp value="10000000.0"/>
    <kd value="100.0"/>
    <material>Gazebo/Gray</material>
    <minDepth>0.001</minDepth>
  </gazebo>
  <transmission name="trans_head_pan">
    <type>transmission_interface/SimpleTransmission</type>
    <actuator name="motor_head_pan">
      <mechanicalReduction>1</mechanicalReduction>
    </actuator>
    <joint name="joint_head_pan">
      <hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface>
    </joint>
  </transmission>
  <transmission name="trans_head_tilt">
    <type>transmission_interface/SimpleTransmission</type>
    <actuator name="motor_head_tilt">
      <mechanicalReduction>1</mechanicalReduction>
    </actuator>
    <joint name="joint_head_tilt">
      <hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface>
    </joint>
  </transmission>
  <!-- Gripper -->
  <gazebo reference="link_gripper_finger_left">
    <mu1 value="100.0"/>
    <mu2 value="200.0"/>
    <kp value="10000000.0"/>
    <kd value="100.0"/>
    <material>Gazebo/Gray</material>
    <minDepth>0.001</minDepth>
  </gazebo>
  <gazebo reference="link_gripper_finger_right">
    <mu1 value="100.0"/>
    <mu2 value="200.0"/>
    <kp value="10000000.0"/>
    <kd value="100.0"/>
    <material>Gazebo/Gray</material>
    <minDepth>0.001</minDepth>
  </gazebo>
  <gazebo reference="link_grasp_center">
    <mu1 value="100.0"/>
    <mu2 value="200.0"/>
    <kp value="10000000.0"/>
    <kd value="100.0"/>
    <material>Gazebo/Gray</material>
    <minDepth>0.001</minDepth>
  </gazebo>
  <gazebo reference="link_gripper_fingertip_left">
    <mu1 value="100.0"/>
    <mu2 value="200.0"/>
    <kp value="10000000.0"/>
    <kd value="100.0"/>
    <material>Gazebo/Black</material>
    <minDepth>0.001</minDepth>
  </gazebo>
  <gazebo reference="link_gripper_fingertip_right">
    <mu1 value="100.0"/>
    <mu2 value="200.0"/>
    <kp value="10000000.0"/>
    <kd value="100.0"/>
    <material>Gazebo/Black</material>
    <minDepth>0.001</minDepth>
  </gazebo>
  <gazebo reference="link_gripper">
    <mu1 value="100.0"/>
    <mu2 value="200.0"/>
    <kp value="10000000.0"/>
    <kd value="100.0"/>
    <material>Gazebo/Gray</material>
    <minDepth>0.001</minDepth>
  </gazebo>
  <transmission name="trans_gripper_finger_left">
    <type>transmission_interface/SimpleTransmission</type>
    <actuator name="motor_gripper_finger_left">
      <mechanicalReduction>1</mechanicalReduction>
    </actuator>
    <joint name="joint_gripper_finger_left">
      <hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface>
    </joint>
  </transmission>
  <transmission name="trans_gripper_finger_right">
    <type>transmission_interface/SimpleTransmission</type>
    <actuator name="motor_gripper_finger_right">
      <mechanicalReduction>1</mechanicalReduction>
    </actuator>
    <joint name="joint_gripper_finger_right">
      <hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface>
    </joint>
  </transmission>
</robot>
Editor is loading...