RobotDescription

BamBot

Tim Qian · licence Apache-2.0 · source: github.com/timqian/bambot @ 04d902653

What you are looking at is RobotDescription.from_urdf(original).to_urdf_string(): the reference implementation's re-serialisation of the original file, not the original file itself.

MuJoCo is unavailable for this robot: Error: decoder failed for mesh file 'assets/meshes/Bambot_Body.stl'.

Loading the model…

drag to orbit · scroll to zoom · right-drag to pan

robot.urdf

<?xml version="1.0" encoding="UTF-8"?>
<!-- generated by bam_robot_descriptions (py backend), content bb202f15dd9421df -->
<robot name="bambot">
  <material name="green">
    <color rgba="0.06 0.4 0.1 1.0" />
  </material>
  <material name="black">
    <color rgba="0.06 0.1 0.1 1.0" />
  </material>
  <link name="base_link">
    <visual>
      <origin xyz="-0.5 0.0 0.4" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Bambot_Body.stl" scale="0.001 0.001 0.001" />
      </geometry>
      <material name="green" />
    </visual>
  </link>
  <link name="R_Base">
    <visual>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Base.stl" />
      </geometry>
      <material name="green" />
    </visual>
    <visual>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Base_Motor.stl" />
      </geometry>
      <material name="black" />
    </visual>
    <collision>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Base.stl" />
      </geometry>
    </collision>
    <inertial>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <mass value="1.0" />
      <inertia ixx="0.01" ixy="0.0" ixz="0.0" iyy="0.01" iyz="0.0" izz="0.01" />
    </inertial>
  </link>
  <link name="R_Rotation_Pitch">
    <visual>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Rotation_Pitch.stl" />
      </geometry>
      <material name="green" />
    </visual>
    <visual>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Rotation_Pitch_Motor.stl" />
      </geometry>
      <material name="black" />
    </visual>
    <collision>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Rotation_Pitch.stl" />
      </geometry>
    </collision>
    <inertial>
      <origin xyz="-9.07886e-05 0.0590972 0.031089" rpy="0.0 0.0 0.0" />
      <mass value="0.119226" />
      <inertia ixx="5.94278e-05" ixy="0.0" ixz="0.0" iyy="5.89975e-05" iyz="0.0" izz="3.13712e-05" />
    </inertial>
  </link>
  <link name="R_Upper_Arm">
    <visual>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Upper_Arm.stl" />
      </geometry>
      <material name="green" />
    </visual>
    <visual>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Upper_Arm_Motor.stl" />
      </geometry>
      <material name="black" />
    </visual>
    <collision>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Upper_Arm.stl" />
      </geometry>
    </collision>
    <inertial>
      <origin xyz="-1.72052e-05 0.0701802 0.00310545" rpy="0.0 0.0 0.0" />
      <mass value="0.162409" />
      <inertia ixx="0.000213312" ixy="0.0" ixz="0.0" iyy="0.000167164" iyz="0.0" izz="7.01522e-05" />
    </inertial>
  </link>
  <link name="R_Lower_Arm">
    <visual>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Lower_Arm.stl" />
      </geometry>
      <material name="green" />
    </visual>
    <visual>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Lower_Arm_Motor.stl" />
      </geometry>
      <material name="black" />
    </visual>
    <collision>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Lower_Arm.stl" />
      </geometry>
    </collision>
    <inertial>
      <origin xyz="-0.00339604 0.00137796 0.0768007" rpy="0.0 0.0 0.0" />
      <mass value="0.147968" />
      <inertia ixx="0.000138803" ixy="0.0" ixz="0.0" iyy="0.000107748" iyz="0.0" izz="4.84242e-05" />
    </inertial>
  </link>
  <link name="R_Wrist_Pitch_Roll">
    <visual>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Wrist_Pitch_Roll.stl" />
      </geometry>
      <material name="green" />
    </visual>
    <visual>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Wrist_Pitch_Roll_Motor.stl" />
      </geometry>
      <material name="black" />
    </visual>
    <collision>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Wrist_Pitch_Roll.stl" />
      </geometry>
    </collision>
    <inertial>
      <origin xyz="-0.00852653 -0.0352279 -2.34622e-05" rpy="0.0 0.0 0.0" />
      <mass value="0.0661321" />
      <inertia ixx="3.45403e-05" ixy="0.0" ixz="0.0" iyy="2.39041e-05" iyz="0.0" izz="1.94704e-05" />
    </inertial>
  </link>
  <link name="R_Fixed_Jaw">
    <visual>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Fixed_Jaw.stl" />
      </geometry>
      <material name="green" />
    </visual>
    <visual>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Fixed_Jaw_Motor.stl" />
      </geometry>
      <material name="black" />
    </visual>
    <inertial>
      <origin xyz="0.00552377 -0.0280167 0.000483583" rpy="0.0 0.0 0.0" />
      <mass value="0.0929859" />
      <inertia ixx="5.03136e-05" ixy="0.0" ixz="0.0" iyy="4.64098e-05" iyz="0.0" izz="2.72961e-05" />
    </inertial>
  </link>
  <link name="R_Moving_Jaw">
    <visual>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Moving_Jaw.stl" />
      </geometry>
      <material name="green" />
    </visual>
    <inertial>
      <origin xyz="-0.00161745 -0.0303473 0.000449646" rpy="0.0 0.0 0.0" />
      <mass value="0.0202444" />
      <inertia ixx="1.11265e-05" ixy="0.0" ixz="0.0" iyy="8.99651e-06" iyz="0.0" izz="2.99548e-06" />
    </inertial>
  </link>
  <joint name="R_to_base" type="fixed">
    <origin xyz="-0.17 -0.42 0.64" rpy="0.0 3.14158 1.5708" />
    <parent link="base_link" />
    <child link="R_Base" />
  </joint>
  <joint name="R_Rotation" type="revolute">
    <origin xyz="0.0 -0.0452 0.0165" rpy="1.57079 0.0 0.0" />
    <parent link="R_Base" />
    <child link="R_Rotation_Pitch" />
    <axis xyz="0.0 -1.0 0.0" />
    <limit effort="35.0" velocity="1.0" lower="-2.0" upper="2.0" />
    <dynamics damping="0.0" friction="0.0" />
  </joint>
  <joint name="R_Pitch" type="revolute">
    <origin xyz="0.0 0.1025 0.0306" rpy="-0.1 0.0 0.0" />
    <parent link="R_Rotation_Pitch" />
    <child link="R_Upper_Arm" />
    <axis xyz="1.0 0.0 0.0" />
    <limit effort="35.0" velocity="1.0" lower="-1.4" upper="1.7139" />
    <dynamics damping="0.0" friction="0.0" />
  </joint>
  <joint name="R_Elbow" type="revolute">
    <origin xyz="0.0 0.11257 0.028" rpy="-1.57079 0.0 0.0" />
    <parent link="R_Upper_Arm" />
    <child link="R_Lower_Arm" />
    <axis xyz="1.0 0.0 0.0" />
    <limit effort="35.0" velocity="1.0" lower="0.0" upper="3.0" />
    <dynamics damping="0.0" friction="0.0" />
  </joint>
  <joint name="R_Wrist_Pitch" type="revolute">
    <origin xyz="0.0 0.0052 0.1349" rpy="-1.57079 0.0 0.0" />
    <parent link="R_Lower_Arm" />
    <child link="R_Wrist_Pitch_Roll" />
    <axis xyz="1.0 0.0 0.0" />
    <limit effort="35.0" velocity="1.0" lower="-1.8" upper="1.8" />
    <dynamics damping="0.0" friction="0.0" />
  </joint>
  <joint name="R_Wrist_Roll" type="revolute">
    <origin xyz="0.0 -0.0601 0.0" rpy="0.0 0.0 0.0" />
    <parent link="R_Wrist_Pitch_Roll" />
    <child link="R_Fixed_Jaw" />
    <axis xyz="0.0 1.0 0.0" />
    <limit effort="35.0" velocity="1.0" lower="-1.57079" upper="1.57079" />
    <dynamics damping="0.0" friction="0.0" />
  </joint>
  <joint name="R_Jaw" type="revolute">
    <origin xyz="-0.0202 -0.0244 0.0" rpy="0.0 3.14158 0.0" />
    <parent link="R_Fixed_Jaw" />
    <child link="R_Moving_Jaw" />
    <axis xyz="0.0 0.0 1.0" />
    <limit effort="35.0" velocity="1.0" lower="-0.2" upper="1.7" />
    <dynamics damping="0.0" friction="0.0" />
  </joint>
  <link name="L_Base">
    <visual>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Base.stl" />
      </geometry>
      <material name="green" />
    </visual>
    <visual>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Base_Motor.stl" />
      </geometry>
      <material name="black" />
    </visual>
    <collision>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Base.stl" />
      </geometry>
    </collision>
    <inertial>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <mass value="1.0" />
      <inertia ixx="0.01" ixy="0.0" ixz="0.0" iyy="0.01" iyz="0.0" izz="0.01" />
    </inertial>
  </link>
  <link name="L_Rotation_Pitch">
    <visual>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Rotation_Pitch.stl" />
      </geometry>
      <material name="green" />
    </visual>
    <visual>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Rotation_Pitch_Motor.stl" />
      </geometry>
      <material name="black" />
    </visual>
    <collision>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Rotation_Pitch.stl" />
      </geometry>
    </collision>
    <inertial>
      <origin xyz="-9.07886e-05 0.0590972 0.031089" rpy="0.0 0.0 0.0" />
      <mass value="0.119226" />
      <inertia ixx="5.94278e-05" ixy="0.0" ixz="0.0" iyy="5.89975e-05" iyz="0.0" izz="3.13712e-05" />
    </inertial>
  </link>
  <link name="L_Upper_Arm">
    <visual>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Upper_Arm.stl" />
      </geometry>
      <material name="green" />
    </visual>
    <visual>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Upper_Arm_Motor.stl" />
      </geometry>
      <material name="black" />
    </visual>
    <collision>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Upper_Arm.stl" />
      </geometry>
    </collision>
    <inertial>
      <origin xyz="-1.72052e-05 0.0701802 0.00310545" rpy="0.0 0.0 0.0" />
      <mass value="0.162409" />
      <inertia ixx="0.000213312" ixy="0.0" ixz="0.0" iyy="0.000167164" iyz="0.0" izz="7.01522e-05" />
    </inertial>
  </link>
  <link name="L_Lower_Arm">
    <visual>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Lower_Arm.stl" />
      </geometry>
      <material name="green" />
    </visual>
    <visual>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Lower_Arm_Motor.stl" />
      </geometry>
      <material name="black" />
    </visual>
    <collision>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Lower_Arm.stl" />
      </geometry>
    </collision>
    <inertial>
      <origin xyz="-0.00339604 0.00137796 0.0768007" rpy="0.0 0.0 0.0" />
      <mass value="0.147968" />
      <inertia ixx="0.000138803" ixy="0.0" ixz="0.0" iyy="0.000107748" iyz="0.0" izz="4.84242e-05" />
    </inertial>
  </link>
  <link name="L_Wrist_Pitch_Roll">
    <visual>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Wrist_Pitch_Roll.stl" />
      </geometry>
      <material name="green" />
    </visual>
    <visual>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Wrist_Pitch_Roll_Motor.stl" />
      </geometry>
      <material name="black" />
    </visual>
    <collision>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Wrist_Pitch_Roll.stl" />
      </geometry>
    </collision>
    <inertial>
      <origin xyz="-0.00852653 -0.0352279 -2.34622e-05" rpy="0.0 0.0 0.0" />
      <mass value="0.0661321" />
      <inertia ixx="3.45403e-05" ixy="0.0" ixz="0.0" iyy="2.39041e-05" iyz="0.0" izz="1.94704e-05" />
    </inertial>
  </link>
  <link name="L_Fixed_Jaw">
    <visual>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Fixed_Jaw.stl" />
      </geometry>
      <material name="green" />
    </visual>
    <visual>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Fixed_Jaw_Motor.stl" />
      </geometry>
      <material name="black" />
    </visual>
    <inertial>
      <origin xyz="0.00552377 -0.0280167 0.000483583" rpy="0.0 0.0 0.0" />
      <mass value="0.0929859" />
      <inertia ixx="5.03136e-05" ixy="0.0" ixz="0.0" iyy="4.64098e-05" iyz="0.0" izz="2.72961e-05" />
    </inertial>
  </link>
  <link name="L_Moving_Jaw">
    <visual>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Moving_Jaw.stl" />
      </geometry>
      <material name="green" />
    </visual>
    <inertial>
      <origin xyz="-0.00161745 -0.0303473 0.000449646" rpy="0.0 0.0 0.0" />
      <mass value="0.0202444" />
      <inertia ixx="1.11265e-05" ixy="0.0" ixz="0.0" iyy="8.99651e-06" iyz="0.0" izz="2.99548e-06" />
    </inertial>
  </link>
  <joint name="L_to_base" type="fixed">
    <origin xyz="-0.18 -0.07 0.64" rpy="0.0 3.14158 1.5708" />
    <parent link="base_link" />
    <child link="L_Base" />
  </joint>
  <joint name="L_Rotation" type="revolute">
    <origin xyz="0.0 -0.0452 0.0165" rpy="1.57079 0.0 0.0" />
    <parent link="L_Base" />
    <child link="L_Rotation_Pitch" />
    <axis xyz="0.0 -1.0 0.0" />
    <limit effort="35.0" velocity="1.0" lower="-2.0" upper="2.0" />
    <dynamics damping="0.0" friction="0.0" />
  </joint>
  <joint name="L_Pitch" type="revolute">
    <origin xyz="0.0 0.1025 0.0306" rpy="-0.1 0.0 0.0" />
    <parent link="L_Rotation_Pitch" />
    <child link="L_Upper_Arm" />
    <axis xyz="1.0 0.0 0.0" />
    <limit effort="35.0" velocity="1.0" lower="-1.4" upper="1.7139" />
    <dynamics damping="0.0" friction="0.0" />
  </joint>
  <joint name="L_Elbow" type="revolute">
    <origin xyz="0.0 0.11257 0.028" rpy="-1.57079 0.0 0.0" />
    <parent link="L_Upper_Arm" />
    <child link="L_Lower_Arm" />
    <axis xyz="1.0 0.0 0.0" />
    <limit effort="35.0" velocity="1.0" lower="0.0" upper="3.0" />
    <dynamics damping="0.0" friction="0.0" />
  </joint>
  <joint name="L_Wrist_Pitch" type="revolute">
    <origin xyz="0.0 0.0052 0.1349" rpy="-1.57079 0.0 0.0" />
    <parent link="L_Lower_Arm" />
    <child link="L_Wrist_Pitch_Roll" />
    <axis xyz="1.0 0.0 0.0" />
    <limit effort="35.0" velocity="1.0" lower="-1.8" upper="1.8" />
    <dynamics damping="0.0" friction="0.0" />
  </joint>
  <joint name="L_Wrist_Roll" type="revolute">
    <origin xyz="0.0 -0.0601 0.0" rpy="0.0 0.0 0.0" />
    <parent link="L_Wrist_Pitch_Roll" />
    <child link="L_Fixed_Jaw" />
    <axis xyz="0.0 1.0 0.0" />
    <limit effort="35.0" velocity="1.0" lower="-1.57079" upper="1.57079" />
    <dynamics damping="0.0" friction="0.0" />
  </joint>
  <joint name="L_Jaw" type="revolute">
    <origin xyz="-0.0202 -0.0244 0.0" rpy="0.0 3.14158 0.0" />
    <parent link="L_Fixed_Jaw" />
    <child link="L_Moving_Jaw" />
    <axis xyz="0.0 0.0 1.0" />
    <limit effort="35.0" velocity="1.0" lower="-0.2" upper="1.7" />
    <dynamics damping="0.0" friction="0.0" />
  </joint>
  <link name="left_motor">
    <visual>
      <origin xyz="0.0 -0.04 0.1" rpy="3.14159 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Base_Motor.stl" />
      </geometry>
      <material name="black" />
    </visual>
  </link>
  <joint name="left_motor" type="fixed">
    <origin xyz="-0.1 0.0 -0.03" rpy="0.0 1.5708 -2.0944" />
    <parent link="base_link" />
    <child link="left_motor" />
  </joint>
  <link name="right_motor">
    <visual>
      <origin xyz="0.0 -0.04 0.1" rpy="3.14159 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Base_Motor.stl" />
      </geometry>
      <material name="black" />
    </visual>
  </link>
  <joint name="right_motor" type="fixed">
    <origin xyz="-0.1 -0.48 -0.03" rpy="0.0 1.5708 2.0944" />
    <parent link="base_link" />
    <child link="right_motor" />
  </joint>
  <link name="back_motor">
    <visual>
      <origin xyz="0.0 -0.04 0.1" rpy="3.14159 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/Base_Motor.stl" />
      </geometry>
      <material name="black" />
    </visual>
  </link>
  <joint name="back_motor" type="fixed">
    <origin xyz="-0.52 -0.25 -0.03" rpy="0.0 1.5708 0.0" />
    <parent link="base_link" />
    <child link="back_motor" />
  </joint>
  <link name="left_wheel">
    <visual>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/BambotWheel.stl" scale="0.001 0.001 0.001" />
      </geometry>
      <material name="black" />
    </visual>
  </link>
  <link name="right_wheel">
    <visual>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/BambotWheel.stl" scale="0.001 0.001 0.001" />
      </geometry>
      <material name="black" />
    </visual>
  </link>
  <link name="back_wheel">
    <visual>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
      <geometry>
        <mesh filename="meshes/BambotWheel.stl" scale="0.001 0.001 0.001" />
      </geometry>
      <material name="black" />
    </visual>
  </link>
  <joint name="left_wheel" type="continuous">
    <origin xyz="-0.1 0.0 -0.03" rpy="0.0 1.5708 -2.0944" />
    <parent link="base_link" />
    <child link="left_wheel" />
    <axis xyz="0.0 0.0 1.0" />
    <limit effort="0.0" velocity="0.0" />
    <dynamics damping="0.0" friction="0.0" />
  </joint>
  <joint name="back_wheel" type="continuous">
    <origin xyz="-0.52 -0.25 -0.03" rpy="0.0 1.5708 0.0" />
    <parent link="base_link" />
    <child link="back_wheel" />
    <axis xyz="0.0 0.0 1.0" />
    <limit effort="0.0" velocity="0.0" />
    <dynamics damping="0.0" friction="0.0" />
  </joint>
  <joint name="right_wheel" type="continuous">
    <origin xyz="-0.1 -0.48 -0.03" rpy="0.0 1.5708 2.0944" />
    <parent link="base_link" />
    <child link="right_wheel" />
    <axis xyz="0.0 0.0 1.0" />
    <limit effort="0.0" velocity="0.0" />
    <dynamics damping="0.0" friction="0.0" />
  </joint>
</robot>