用urdf檔新建robot - tychien/gazebo_tutorial_zh GitHub Wiki
$ cd $HOME/catkin_ws/src
$ catkin_create_pkg my_robot_description
$ cd my_robot_description
$ mkdir launch urdf
$ cd urdf/
$ touch robot.urdf
編輯robot.urdf檔 $ vim robot.urdf
<?xml version="1.0" ?>
<robot name="my_robot" xmlns:xacro="http://www.ros.org/wiki/xacro">
<!-- 1st link -->
<link name="link_chassis">
<pose>0 0 0.1 0 0 0</pose>
<inertial>
<mass value="5"/>
<origin rpy="0 0 0" xyz="0 0 0.1"/>
<inertia ixx="0.0395416666667" ixy="0" ixz="0" iyy="0.106208333333" iyz="0" izz="0.106208333333"/>
</inertial>
<collision name="collision_chassis">
<geometry>
<box size="2 2 1"/>
</geometry>
</collision>
<visual>
<origin rpy="0 0 0" xyz="0 0 0"/>
<geometry>
<box size="2 2 1"/>
</geometry>
</visual>
</link>
</robot>
在launch
資料夾新增launch file
$ cd launch
$ vim spawn.launch
<?xml version="1.0" encoding="UTF-8"?>
<launch>
<param name="robot_description" command="$(find xacro)/xacro --inorder '$(find my_robot_description)/urdf/robot.urdf'" />
<arg name="x" default="0"/>
<arg name="y" default="0"/>
<arg name="z" default="0.5"/>
<node name="my_robot_spawn" pkg="gazebo_ros" type="spawn_model" output="screen"
args="-urdf -param robot_description -model my_robot -x $(arg x) -y $(arg y) -z $(arg z)" />
</launch>
編譯、執行
$ cd $HOME/catkin_ws
$ catkin_make
$ source devel/setup.bash
$ roslaunch my_robot_description spawn.launch