ROS启动文件launch

 前几篇博客讲述了节点的订阅与发布、消息msg和服务srv的使用。这些示例的使用比较简单,但在实际工程应用中,一个功能包可能包含很多个节点,一个功能的实现往往需要运行多个节点,此时若使用rosrun命令运行节点无疑非常麻烦且不切合实际。在ROS中可以使用launch来解决这个问题,通过launch文件一次性启动多个节点。

 以博主的博客ROS节点订阅与发布为例,来演示ROS中的启动文件编辑与运行。

1. 编辑launch启动文件

 cd ~/catkin_ws

 source devel/setup.bash

 roscd ROS_Test1

 mkdir launch

 cd launch

 vim ROS_Test1.launch

 编辑内容如下所示:

<?xml version="1.0"?>
<launch>
        <node name = "node_a" pkg = "ROS_Test1" type = "Test1_node_a"/>
        <node name = "node_b" pkg = "ROS_Test1" type = "Test1_node_b"/>
</launch>
 其中node name为cpp文件中ros初始化时的节点名字(节点名字唯一);pkg为功能包名;type为cpp文件编译之后的可执行节点名字,在CMakLists.txt中可查看。例如本例中的cpp文件中init时节点名称为“node_a”,编译时将编译生成的节点命名为“Test1_node_a”,功能包为“ROS_Test1”。

2. 运行启动节点

 roslaunch ROS_Test1 ROS_Test1.launch

 运行结果如下所示:


 执行rosnode list

 使用rosluanch运行节点时,ROS_INFO输出的信息不显示,此时运行命令行:

 rqt_console

 结果如下所示:

 可以看出节点运行与消息输出情况。

3. 补充

 执行roslaunch命令行时,会自动运行roscore命令,因此使用启动文件运行节点时不需要新开终端运行roscore。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值