Ubuntu的快乐学习3——ros的launch用法

学习前言

为了联盟!
在这里插入图片描述

launch是什么

roslaunch是ros中的一个指令。
launch用于在ros中批量启动节点。

launch的使用方法

一、简单使用

<launch>
    <node pkg="package" type="pub_test" 
    		name="pub" output="screen"/>
    <node pkg="package" type="sub_test" 
    		name="sub" output="screen"/>
</launch>

其中pkg为包名,type为文件名,name为节点名。

二、常用标签

1、launch标签

launch文件的所有内容都包含在<launch> </launch>之间。

<launch>
	……
</launch>

2、node标签

node标签可以说是launch文件里最常见的标签了,每个node标签里包括了ROS图中节点的名称属性name、该节点所在的包名pkg以及节点的类型type。

1、name=“NODE_NAME”,用于指定节点名称node_name。
2、pkg=“PACKAGE_NAME”,节点所在的包名。
3、type=“FILE_NAME”,执行文件的名称如果是用Python编写的就填写xxx.py,如果是cpp就写编译生成的可执行文件名。
4、output=“screen”:终端输出转储在当前的控制台上,而不是在日志文件中,如果output="log"则输出在日志文件中。
5、respawn=“true” 当roslaunch启动完所有该启动的节点之后,会监测每一个节点,保证它们正常的运行状态。对于任意节点,当它终止时,roslaunch 会将该节点重启
6、required=“true” 如果节点死亡,杀死整个roslaunch。
7、args =“arg1 arg2 arg3” 表示输入参数

<node pkg="learning_tf" type="turtle_tf_broadcaster" args="/turtle1" name="turtle1_tf_broadcaster" />

3、include标签

可用于导入另一个launch文件
file="$(find learning_launch)/launch/simple.launch"用于指明我们想要包含进来的文件。

<include file="$(find learning_launch)/launch/simple.launch" />

4、remap标签

remap标签用于opic的重映射,remap标签里包含一个original-name和一个new-name。
如果你现在的节点订阅了"/remap_test"这个topic,然而另一个节点发布的是"/demo/remap_test"这个topic

<remap from="remap_test" to="demo/remap_test"/>

这样就可以直接把/remap_test重映射到/demo/remap_test。
如果这个remap标签写在与node元素的同一级,而且在launch 元素内的最顶层。那么这个重映射将会作用于launch文件中所有的节点。

5、param标签

param标签的作用相当于命令行中的rosparam set

<param name="test_param" type="int" value="123456"/>

6、rosparam标签

rosparam标签允许从YAML文件中一次性导入大量参数。
使用起来就像这样:

<rosparam file="$(find learning_launch)/config/param.yaml" command="load"/>
发布了167 篇原创文章 · 获赞 112 · 访问量 24万+

猜你喜欢

转载自blog.csdn.net/weixin_44791964/article/details/103660180