roslaunch文件可以同時啓動多個節點,對於一些要啓動多個節點的項目來說可以很方便的實現,而不用打開多個終端來運行rosrun命令。
1.任何啓動文件的核心都是一系列的節點元素,每個節點元素指向一個需要啓動的節點,節點元素的基本形式爲:
<node
pkg=”package-name”
type=”executable-name”
name=”node-name”
/>
pkg:指明節點所在的包名;
type:給出可執行文件的名稱,具體爲CMakeLists.txt文件中add_executable()中的第一個名稱,如
add_executable(tts_voice_node src/xf_tts.cpp)
中的tts_voice_node,而不是xf_tts.cpp;
name:指派了節點名稱,它將覆蓋任何通過調用ros::init來賦予節點的名稱。
在控制檯中輸出信息,對於某個單獨的節點,只需在節點元素中配置output屬性就可以達到該目的:output=“screen”。
2.roslaunch文件的存儲位置
和其他 ROS 文件一樣,每一個啓動文件都應該和一個特定的功能包關聯起來。通常的命名方案是以.launch 作爲啓動文件的後綴。最簡單的方法是把啓動文件直接存儲在功能包的根目錄中。當查找啓動文件的時候,roslaunch 工具會同時搜索每個功能包目錄的子目錄。包括 ROS 核心包在內的很多功能包都是利用這一特性,將所有啓動文件統一存放在一個子目錄中,該子目錄通常取名爲 launch。
3.roslaunch的使用方法:
roslaunch pkg-name launch-file-name
4.最近看到一篇關於roslaunch寫的比較好的博客:http://www.cnblogs.com/zjiaxing/p/5542614.html
5.ROS中的param,rosparam,arg,env的區別:http://www.rosclub.cn/post-172.html