Advertisement
Guest User

Untitled

a guest
May 29th, 2012
270
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
XML 13.27 KB | None | 0 0
  1. <?xml version="1.0"?>
  2.  
  3. <robot xmlns:sensor="http://playerstage.sourceforge.net/gazebo/xmlschema/#sensor"
  4.       xmlns:controller="http://playerstage.sourceforge.net/gazebo/xmlschema/#controller"
  5.       xmlns:interface="http://playerstage.sourceforge.net/gazebo/xmlschema/#interface"
  6.       xmlns:xacro="http://ros.org/wiki/xacro"
  7. name="pioneer3dx">
  8.   <property name="M_PI" value="3.14159"/>
  9.  
  10.   <include filename="$(find robina_description)/urdf/gazebo.urdf.xacro"/>
  11.   <include filename="$(find robina_description)/urdf/robina_calibration.xacro" />
  12.  
  13. <!-- Chassis -->
  14.     <link name="base_link">
  15.         <inertial>
  16.             <mass value="3.5"/>
  17.             <origin xyz="-0.025 0 -0.223"/>
  18.             <inertia ixx="1" ixy="0" ixz="0"
  19.                  iyy="1" iyz="0"
  20.                  izz="1"/>
  21.         </inertial>
  22.         <visual name="base_visual">
  23.             <origin xyz="0 0 0.177" rpy="0 0 0"/>
  24.             <geometry name="pioneer_geom">
  25.                 <mesh filename="package://robina_description/meshes/p3at_meshes/chassis.stl"/>
  26.             </geometry>
  27.             <material name="ChassisRed">
  28.                 <color rgba="0.851 0.0 0.0 1.0"/>
  29.             </material>
  30.         </visual>
  31.         <collision>
  32.             <origin xyz="0 0 0" rpy="0 0 0"/>
  33.                 <geometry>
  34.                     <box size="0.01 0.01 0.01"/>
  35.                 </geometry>
  36.         </collision>
  37.     </link>
  38.  
  39. <!-- Top -->
  40.     <link name="top_plate">
  41.         <inertial>
  42.             <mass value="0"/>  
  43.             <origin xyz="-0.025 0 -0.223"/>
  44.             <inertia ixx="1" ixy="0" ixz="0"
  45.                  iyy="1" iyz="0"
  46.                 izz="1"/>
  47.         </inertial>
  48.         <visual name="base_visual">
  49.             <origin xyz="0 0 0" rpy="0 0 0"/>
  50.             <geometry name="pioneer_geom">
  51.                 <mesh filename="package://robina_description/meshes/p3at_meshes/top.stl"/>
  52.             </geometry>
  53.             <material name="TopBlack">
  54.                     <color rgba="0.038 0.038 0.038 1.0"/>
  55.             </material>
  56.         </visual>
  57.         <collision>
  58.             <origin xyz="0 0 0" rpy="0 0 0"/>
  59.             <geometry>
  60.                 <box size="0 0 0"/>
  61.             </geometry>
  62.         </collision>
  63.     </link>
  64.  
  65.     <joint name="base_top_joint" type="fixed">
  66.         <origin xyz="0.003 0 0.41" rpy="0 0 0"/>
  67.         <parent link="base_link"/>
  68.         <child link="top_plate"/>
  69.     </joint>
  70.  
  71.    
  72.     <link name="ptu_base">
  73.      <inertial>
  74.            <mass value="1"/>
  75.            <inertia ixx="100" ixy="0" ixz="0" iyy="100" iyz="0" izz="100"/>
  76.             <origin xyz="0.003 0 0.274" rpy="0 0 0"/>
  77.          </inertial>
  78.          <visual>
  79.            <origin xyz="0 0.015 0"/>
  80.            <geometry>
  81.              <box size="0.04 .07 .05"/>
  82.            </geometry>
  83.          </visual>
  84.          <collision>
  85.            <origin xyz="0 0.015 0"/>
  86.          <geometry>
  87.            <box size="0.04 .07 .05"/>
  88.          </geometry>
  89.          </collision>
  90.          </link>
  91.     <link name="ptu_piece">
  92.     <inertial>
  93.       <mass value="1"/>
  94.       <inertia ixx="100" ixy="0" ixz="0" iyy="100" iyz="0" izz="100"/>
  95.       <origin/>
  96.     </inertial>
  97.     <visual>
  98.       <origin/>
  99.       <geometry>
  100.         <box size="0.04 .04 .06"/>
  101.       </geometry>
  102.       <!--<material name="black"/>-->
  103.     </visual>
  104.     <collision>
  105.       <origin/>
  106.       <geometry>
  107.         <box size="0.04 .04 .06"/>
  108.       </geometry>
  109.     </collision>
  110.   </link>
  111.   <joint name="pan" type="continuous">
  112.     <origin xyz="0 0 0"/>
  113.     <axis xyz="0 0 1"/>
  114.     <parent link="ptu_base"/>
  115.     <child link="ptu_piece"/>
  116.   </joint>
  117.   <link name="ptu_mount">
  118.     <inertial>
  119.       <mass value="1"/>
  120.       <inertia ixx="100" ixy="0" ixz="0" iyy="100" iyz="0" izz="100"/>
  121.       <origin/>
  122.     </inertial>
  123.     <visual>
  124.       <origin/>
  125.       <geometry>
  126.         <box size="0.04 .27 .03"/>
  127.       </geometry>
  128.       <!--<material name="gray"/>-->
  129.     </visual>
  130.     <collision>
  131.       <origin/>
  132.       <geometry>
  133.         <box size="0.04 .27 .03"/>
  134.       </geometry>
  135.     </collision>
  136.   </link>
  137.   <joint name="tilt" type="continuous">
  138.     <origin xyz="0 0 .065"/>
  139.     <axis xyz="0 -1 0"/>
  140.     <parent link="ptu_piece"/>
  141.     <child link="ptu_mount"/>
  142.   </joint>
  143.  
  144.     <joint name="top_ptu_joint" type="fixed">
  145.         <origin xyz="-0.05 0.0 0.88" rpy="0 0.2 0"/>
  146.         <parent link="top_plate"/>
  147.         <child link="ptu_base"/>
  148.     </joint>
  149.  
  150. <!-- Front + Back Sonar -->
  151.     <link name="front_sonar">
  152.         <inertial>
  153.             <mass value="0"/>  
  154.             <origin xyz="0 0 0"/>
  155.             <inertia ixx="1" ixy="0" ixz="0"
  156.                  iyy="1" iyz="0" izz="1"/>
  157.         </inertial>
  158.         <visual name="base_visual">
  159.             <origin xyz="0 0 0" rpy="0 0 0"/>
  160.             <geometry name="pioneer_geom">
  161.                 <mesh filename="package://robina_description/meshes/p3at_meshes/front_sonar.stl"/>
  162.             </geometry>
  163.             <material name="SonarYellow">
  164.                 <color rgba="0.715 0.583 0.210 1.0"/>
  165.             </material>
  166.         </visual>
  167.         <collision>
  168.             <origin xyz="0 0 0" rpy="0 0 0"/>
  169.             <geometry>
  170.                 <box size="0 0 0"/>
  171.             </geometry>
  172.         </collision>
  173.     </link>
  174.  
  175.     <joint name="base_front_joint" type="fixed">
  176.         <origin xyz="0.193 0 0.25" rpy="0 0 0"/>
  177.         <parent link="base_link"/>
  178.         <child link="front_sonar"/>
  179.     </joint>
  180.  
  181.     <link name="back_sonar">
  182.         <inertial>
  183.             <mass value="0"/>  
  184.             <origin xyz="0 0 0"/>
  185.             <inertia ixx="1" ixy="0" ixz="0"
  186.                  iyy="1" iyz="0" izz="1"/>
  187.         </inertial>
  188.         <visual name="base_visual">
  189.             <origin xyz="0 0 0" rpy="0 0 0"/>
  190.             <geometry name="pioneer_geom">
  191.                 <mesh filename="package://robina_description/meshes/p3at_meshes/back_sonar.stl"/>
  192.             </geometry>
  193.             <material name="SonarYellow">
  194.                 <color rgba="0.715 0.583 0.210 1.0"/>
  195.             </material>
  196.         </visual>
  197.         <collision>
  198.             <origin xyz="0 0 0" rpy="0 0 0"/>
  199.             <geometry>
  200.                 <box size="0 0 0"/>
  201.             </geometry>
  202.         </collision>
  203.     </link>
  204.  
  205.     <joint name="base_back_joint" type="fixed">
  206.         <origin xyz="-0.187 0 0.247" rpy="0 0 0"/>
  207.         <parent link="base_link"/>
  208.         <child link="back_sonar"/>
  209.     </joint>
  210.  
  211. <!-- Front Axles + Wheels + Hubcaps -->
  212. <xacro:macro name="p3at_front" params="suffix reflect">
  213.     <link name="p3at_front_${suffix}_axle">
  214.         <inertial>
  215.             <mass value="0"/>  
  216.             <origin xyz="0 0 0"/>
  217.             <inertia ixx="1" ixy="0" ixz="0"
  218.                  iyy="1" iyz="0" izz="1"/>
  219.         </inertial>
  220.     <visual name="base_visual">
  221.         <origin xyz="0 0 0" rpy="0 0 0"/>
  222.         <geometry name="pioneer_geom">
  223.             <mesh filename="package://robina_description/meshes/p3at_meshes/axle.stl"/>
  224.         </geometry>
  225.         <material name="AxleGrey">
  226.             <color rgba="0.5 0.5 0.5 1"/>
  227.         </material>
  228.     </visual>
  229.     <collision>
  230.         <origin xyz="0 0 0" rpy="0 0 0"/>
  231.         <geometry>
  232.             <box size="0 0 0"/>
  233.         </geometry>
  234.     </collision>
  235.     </link>
  236.  
  237.     <joint name="base_front_${suffix}_axle_joint" type="fixed">
  238.         <origin xyz="0.135 ${reflect*0.156} 0.111" rpy="0 0 0"/>
  239.         <parent link="base_link"/>
  240.         <child link="p3at_front_${suffix}_axle"/>
  241.     </joint>
  242.  
  243.     <link name="p3at_front_${suffix}_hub">
  244.         <inertial>
  245.             <mass value="0"/>  
  246.             <origin xyz="0 0 0"/>
  247.             <inertia ixx="1" ixy="0" ixz="0"
  248.                  iyy="1" iyz="0" izz="1"/>
  249.         </inertial>
  250.     <visual name="base_visual">
  251.         <origin xyz="0 0 0" rpy="0 0 0"/>
  252.         <geometry name="pioneer_geom">
  253.             <mesh filename="package://robina_description/meshes/p3at_meshes/${suffix}_hubcap.stl"/>
  254.         </geometry>
  255.         <material name="HubcapYellow">
  256.             <color rgba="1.0 0.811 0.151 1.0"/>
  257.         </material>
  258.     </visual>
  259.     <collision>
  260.         <origin xyz="0 0 0" rpy="0 0 0"/>
  261.         <geometry>
  262.             <box size="0 0 0"/>
  263.         </geometry>
  264.     </collision>
  265.     </link>
  266.  
  267.     <joint name="base_front_${suffix}_hub_joint" type="fixed">
  268.         <origin xyz="0 ${reflect*0.041} 0" rpy="0 0 0"/>
  269.         <parent link="p3at_front_${suffix}_axle"/>
  270.         <child link="p3at_front_${suffix}_hub"/>
  271.     </joint>
  272.  
  273.     <link name="p3at_front_${suffix}_wheel">
  274.         <inertial>
  275.             <mass value="0"/>  
  276.             <origin xyz="0 0 0"/>
  277.             <inertia ixx="1" ixy="0" ixz="0"
  278.                  iyy="1" iyz="0" izz="1"/>
  279.         </inertial>
  280.     <visual name="base_visual">
  281.         <origin xyz="0 0 0" rpy="0 0 0"/>
  282.         <geometry name="pioneer_geom">
  283.             <mesh filename="package://robina_description/meshes/p3at_meshes/wheel.stl"/>
  284.         </geometry>
  285.         <material name="WheelBlack">
  286.             <color rgba="0.117 0.117 0.117 1"/>
  287.         </material>
  288.     </visual>
  289.     <collision>
  290.         <origin xyz="0 0 0" rpy="0 0 0"/>
  291.         <geometry>
  292.             <box size="0 0 0"/>
  293.         </geometry>
  294.     </collision>
  295.     </link>
  296.  
  297.     <joint name="base_front_${suffix}_wheel_joint" type="fixed">
  298.         <origin xyz="0 0 0" rpy="0 0 0"/>
  299.         <parent link="p3at_front_${suffix}_hub"/>
  300.         <child link="p3at_front_${suffix}_wheel"/>
  301.     </joint>
  302.  
  303. <!-- Back Axles + Wheels + Hubcaps -->
  304.     <link name="p3at_back_${suffix}_axle">
  305.         <inertial>
  306.             <mass value="0"/>  
  307.             <origin xyz="0 0 0"/>
  308.             <inertia ixx="1" ixy="0" ixz="0"
  309.                  iyy="1" iyz="0" izz="1"/>
  310.         </inertial>
  311.     <visual name="base_visual">
  312.         <origin xyz="0 0 0" rpy="0 0 0"/>
  313.         <geometry name="pioneer_geom">
  314.             <mesh filename="package://robina_description/meshes/p3at_meshes/axle.stl"/>
  315.         </geometry>
  316.         <material name="AxleGrey">
  317.             <color rgba="0.5 0.5 0.5 1"/>
  318.         </material>
  319.     </visual>
  320.     <collision>
  321.         <origin xyz="0 0 0" rpy="0 0 0"/>
  322.         <geometry>
  323.             <box size="0 0 0"/>
  324.         </geometry>
  325.     </collision>
  326.     </link>
  327.  
  328.     <joint name="bp3at_back_${suffix}_axle_joint" type="fixed">
  329.         <origin xyz="-0.134 ${reflect*0.156} 0.111" rpy="0 0 0"/>
  330.         <parent link="base_link"/>
  331.         <child link="p3at_back_${suffix}_axle"/>
  332.     </joint>
  333.  
  334.  
  335.     <link name="p3at_back_${suffix}_hub">
  336.         <inertial>
  337.             <mass value="0"/>  
  338.             <origin xyz="0 0 0"/>
  339.             <inertia ixx="1" ixy="0" ixz="0"
  340.                  iyy="1" iyz="0" izz="1"/>
  341.         </inertial>
  342.     <visual name="base_visual">
  343.         <origin xyz="0 0 0" rpy="0 0 0"/>
  344.         <geometry name="pioneer_geom">
  345.             <mesh filename="package://robina_description/meshes/p3at_meshes/${suffix}_hubcap.stl"/>
  346.         </geometry>
  347.         <material name="HubcapYellow"/>
  348.     </visual>
  349.     <collision>
  350.         <origin xyz="0 0 0" rpy="0 0 0"/>
  351.         <geometry>
  352.             <box size="0 0 0"/>
  353.         </geometry>
  354.     </collision>
  355.     </link>
  356.  
  357.     <joint name="p3at_back_${suffix}_hub_joint" type="fixed">
  358.         <origin xyz="-0 ${reflect*0.041} 0" rpy="0 0 0"/>
  359.         <parent link="p3at_back_${suffix}_axle"/>
  360.         <child link="p3at_back_${suffix}_hub"/>
  361.     </joint>
  362.  
  363.     <link name="p3at_back_${suffix}_wheel">
  364.         <inertial>
  365.             <mass value="0"/>  
  366.             <origin xyz="0 0 0"/>
  367.             <inertia ixx="1" ixy="0" ixz="0"
  368.                  iyy="1" iyz="0" izz="1"/>
  369.         </inertial>
  370.     <visual name="base_visual">
  371.         <origin xyz="0 0 0" rpy="0 0 0"/>
  372.         <geometry name="pioneer_geom">
  373.             <mesh filename="package://robina_description/meshes/p3at_meshes/wheel.stl"/>
  374.         </geometry>
  375.         <material name="WheelBlack"/>
  376.     </visual>
  377.     <collision>
  378.         <origin xyz="0 0 0" rpy="0 0 0"/>
  379.         <geometry>
  380.             <box size="0 0 0"/>
  381.         </geometry>
  382.     </collision>
  383.     </link>
  384.  
  385.     <joint name="p3at_back_${suffix}_wheel_joint" type="fixed">
  386.         <origin xyz="0 0 0" rpy="0 0 0"/>
  387.         <parent link="p3at_back_${suffix}_hub"/>
  388.         <child link="p3at_back_${suffix}_wheel"/>
  389.     </joint>
  390. </xacro:macro>
  391.  
  392. <xacro:p3at_front suffix="left" reflect="1"/>
  393. <xacro:p3at_front suffix="right" reflect="-1"/>
  394. <xacro:p3at_back suffix="left" reflect="1"/>
  395. <xacro:p3at_back suffix="right" reflect="-1"/>
  396.  
  397. <joint name="base_camera_joint" type="fixed">
  398.     <origin xyz="${robina_calib_cam_x} ${robina_calib_cam_y} ${robina_calib_cam_z}"
  399.            rpy="${robina_calib_cam_rr} ${robina_calib_cam_rp} ${robina_calib_cam_ry}" />
  400.     <parent link="${robina_camera_parent_name}" />
  401.     <child link="camera_link" />
  402.   </joint>
  403.  
  404.   <link name="camera_link">
  405.     <inertial>
  406.       <mass value="0.01" />
  407.       <origin xyz="0 0 0" />
  408.       <inertia ixx="0.001" ixy="0.0" ixz="0.0"
  409.        iyy="0.001" iyz="0.0"
  410.        izz="0.001" />
  411.     </inertial>
  412.  
  413.     <visual>
  414.       <origin xyz=" 0 0 0 " rpy="0 0 0" />
  415.       <geometry>
  416.         <mesh filename="package://robina_description/meshes/kinect.dae"/>
  417.       </geometry>
  418.     </visual>
  419.  
  420.     <collision>
  421.       <origin xyz="0.0 0.0 0.0" rpy="0 0 0" />
  422.       <geometry>
  423.         <box size="0.0730 .2760 0.0720"/>
  424.       </geometry>
  425.     </collision>
  426.  
  427.   </link>
  428.  
  429.   <joint name="camera_depth_joint" type="fixed">
  430.     <origin xyz="0 0.018 0" rpy="0 0 0" />
  431.     <parent link="camera_link" />
  432.     <child link="camera_depth_frame" />
  433.   </joint>
  434.  
  435.   <link name="camera_depth_frame">
  436.     <inertial>
  437.       <mass value="0.01" />
  438.       <origin xyz="0 0 0" />
  439.       <inertia ixx="0.001" ixy="0.0" ixz="0.0"
  440.        iyy="0.001" iyz="0.0"
  441.        izz="0.001" />
  442.     </inertial>
  443.   </link>
  444.  
  445.   <joint name="camera_depth_optical_joint" type="fixed">
  446.     <origin xyz="0 0 0" rpy="${-M_PI/2} 0 ${-M_PI/2}" />
  447.     <parent link="camera_depth_frame" />
  448.     <child link="camera_depth_optical_frame" />
  449.   </joint>
  450.  
  451.   <link name="camera_depth_optical_frame">
  452.     <inertial>
  453.       <mass value="0.001" />
  454.       <origin xyz="0 0 0" />
  455.       <inertia ixx="0.0001" ixy="0.0" ixz="0.0"
  456.        iyy="0.0001" iyz="0.0"
  457.        izz="0.0001" />
  458.     </inertial>
  459.   </link>
  460.  
  461.   <joint name="camera_rgb_joint" type="fixed">
  462.     <origin xyz="0 -0.005 0" rpy="0 0 0" />
  463.     <parent link="camera_link" />
  464.     <child link="camera_rgb_frame" />
  465.   </joint>
  466.  
  467.   <link name="camera_rgb_frame">
  468.     <inertial>
  469.       <mass value="0.001" />
  470.       <origin xyz="0 0 0" />
  471.       <inertia ixx="0.0001" ixy="0.0" ixz="0.0"
  472.        iyy="0.0001" iyz="0.0"
  473.        izz="0.0001" />
  474.     </inertial>
  475.   </link>
  476.  
  477.   <joint name="camera_rgb_optical_joint" type="fixed">
  478.     <origin xyz="0 0 0" rpy="${-M_PI/2} 0 ${-M_PI/2}" />
  479.     <parent link="camera_rgb_frame" />
  480.     <child link="camera_rgb_optical_frame" />
  481.   </joint>
  482.  
  483.   <link name="camera_rgb_optical_frame">
  484.     <inertial>
  485.       <mass value="0.001" />
  486.       <origin xyz="0 0 0" />
  487.       <inertia ixx="0.0001" ixy="0.0" ixz="0.0"
  488.        iyy="0.0001" iyz="0.0"
  489.        izz="0.0001" />
  490.     </inertial>
  491.   </link>
  492.  
  493. </robot>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement