手把手编写lanuch文件

roslaunch可以用来启动定义在launch文件中的多个节点。

  • 启动节点
  • 启动其他launch文件
  • 配置参数
  • 对节点设置

http://wiki.ros.org/roslaunch

http://wiki.ros.org/roslaunch/XML

1、建立launch文件夹

1
snowboy@ubuntu:~/catkin_ws/src/snowboy_tutorials/src$ mkdir launch

2、建立第一个launch文件

1
snowboy@ubuntu:~/catkin_ws/src/snowboy_tutorials/src/launch$ vi snowboy_beginner.launch

launch是一种XML格式的描述性语言,用标签来描述功能,所有的功能都是在launch标签内部完成的。

launch自动启动roscore rosmaster

1
2
3
4
<launch>
<node pkg="snowboy_tutorials" name="talker" type="talker" output="screen" respawn="true"/>
<node pkg="snowboy_tutorials" name="listener" type="listener" output="screen" respawn="true"/>
</launch>

代码的含义是:node在那个功能包中,名称(自定义),type表示可执行程序的名字,先启动C++ talker的节点,C++可执行程序的为talker,output为输出,respawn为是否为重申这个节点,将该值设为true,当这个节点因为意外、不为主动关闭情况下,可以将该节点重新启动。

启动launch文件

1
snowboy@ubuntu:~/catkin_ws/src/snowboy_tutorials/src/launch$ roslaunch snowboy_tutorials snowboy_beginner.launch