机器人操作系统(ROS)教程13:ROS的launch文件
本帖最后由 对折之内 于 2015-2-18 10:54 编辑ROS中可以把很多的命令以描述的形式写成launch文件,然后用roslaunch命令执行launch文件。它的使用方法如下:roslaunch
比如:我们切换到beginner_tutorials文件下:
roscd beginner_tutorials
注:如果提示找不到文件或文件夹,就参照前面把环境变量设置一下。执行:
cd ~/catkin_ws/devel/
和
source setup.bash
在beginner_tutorials文件夹下,创建launch文件夹,切换到该文件夹下:
mkdir launch
和
cd launch
输入:
gedit turtlemimic.launch
用ubuntu默认的编辑器gedit创建一个launch文件。
然后在打开的的launch文件中复制入下面的内容:
<launch>
<group ns="turtlesim1">
<node pkg="turtlesim" name="sim" type="turtlesim_node"/>
</group>
<group ns="turtlesim2">
<node pkg="turtlesim" name="sim" type="turtlesim_node"/>
</group>
<node pkg="turtlesim" name="mimic" type="mimic">
<remap from="input" to="turtlesim1/turtle1"/>
<remap from="output" to="turtlesim2/turtle1"/>
</node>
</launch>
保存退出就可以了。
现在使用如下命令载入刚才创建的launch文件:
roslaunch beginner_tutorials turtlemimic.launch
就可以看到新打开两个乌龟节点。
新打开一个终端,输入命令rostopic pub /turtlesim1/turtle1/cmd_vel geometry_msgs/Twist -r 1 -- '' ''
使乌龟运动起来。就可以看到两只乌龟都在运动。
输入命令:rosnode list
就可以看到启动了两个节点/turtlesim1/sim和/turtlesim2/sim。如图:
下面来解析一下launch文件的标签的意思:
<lanuch>
<lanuch>标签用来识别这是一个launch文件。
<group ns="turtlesim1">
<node pkg="turtlesim" name="sim" type="turtlesim_node"/>
</group>
<group ns="turtlesim2">
<node pkg="turtlesim" name="sim" type="turtlesim_node"/>
</group>上面的内容表示我们启动了两只乌龟。分别名为turtlesim1和turtlesim2.
<node pkg="turtlesim" name="mimic" type="mimic">
<remap from="input" to="turtlesim1/turtle1"/>
<remap from="output" to="turtlesim2/turtle1"/>
</node>上面的内容使turtlesim2模仿turtlesim1。所以虽然我们只向turtlesim1发布了话题,turtlesim2也做出了反应。
支持楼主!!!!!! 顶楼主,快要看完了,期待楼主继续更新。一起加油~ 楼主你好,请教你一个问题,我想用launch启动arduino程序节点,那么我的launch文件要建立在哪里??
页:
[1]