【ROS教程】编写launch文件
@目录
[*]1.launch文件有哪些标签
[*]2.node标签
[*]2.1 必选属性
[*]2.2 可选属性
[*]2.3 可选子级标签
[*]3.include标签
[*]3.1 必选属性
[*]3.2 可选属性
[*]3.3 可选子级标签
[*]4.remap标签
[*]4.1 必选属性
[*]5.param标签
[*]5.1 必选属性
[*]5.2 可选属性
[*]6.rosparam标签
[*]6.1 必选属性
[*]6.2 可选属性
[*]7.group标签
[*]7.1 可选属性
[*]7.2 可选子级标签
[*]8.arg标签
[*]8.1 必选属性
[*]8.2 可选属性
[*]8.3 示例
[*]9.env标签
[*]9.1 必选属性
[*]10.全局示例
1.launch文件有哪些标签
标签含义node指定 ROS 节点,是最常见的标签include用于将另一个 xml 格式的 launch 文件导入到当前文件remap话题重命名param在参数服务器上设置参数rosparam从 YAML 文件导入参数,或将参数导出到 YAML 文件,也可以用来删除参数group可以对节点分组,具有 ns 属性,可以让节点归属某个命名空间arg用于动态设置参数,可以增强launch文件的灵活性env用于设置环境变量2.node标签
2.1 必选属性
属性含义name="node-name"节点名称(在 ROS 网络拓扑中节点的名称)pkg="package-name"节点所属的包type="node-type"节点类型(与之相同名称的可执行文件)2.2 可选属性
属性含义args="arg1 arg2 arg3"将参数传递给节点machine="machine-name"在指定机器上启动节点respawn="true| false"如果节点退出,是否自动重启respawn_delay="n"如果 respawn 为 true, 那么延迟 N 秒后启动节点required="true| false"该节点是否必须,如果为 true,那么如果该节点退出,将杀死整个 roslaunchns="namespace"在指定命名空间中启动节点clear_params="true| false"在启动前,删除节点的私有空间的所有参数output="log| screen"日志发送目标,可以设置为 log 日志文件,或 screen 屏幕,默认是 log2.3 可选子级标签
[*]
[*]
[*]
[*]
3.include标签
3.1 必选属性
属性含义file="$(find pkg-name)/path/filename.launch"要包含的文件路径3.2 可选属性
属性含义ns="namespace"在指定命名空间导入文件3.3 可选子级标签
[*]
[*]
4.remap标签
4.1 必选属性
属性含义from="original-name"原始话题名称to="new-name"目标名称5.param标签
[*]作为\子级标签时,相当于私有命名空间。
5.1 必选属性
属性含义name="namespace/name"参数名称,可以包含命名空间5.2 可选属性
属性含义value="value"定义参数值,如果此处省略,必须指定外部文件作为参数源type="str|int|double|bool|yaml"指定参数类型,如果未指定,roslaunch 会尝试确定参数类型roslaunch 确定参数类型的规则如下:
[*]如果包含 '.' 的数字解析未浮点型,否则为整型
[*]"true" 和 "false" 是 bool 值(不区分大小写)
[*]其他是字符串
6.rosparam标签
6.1 必选属性
属性含义file="$(find pkg-name)/path/foo.yaml"加载或导出到的 yaml 文件param="param-name"参数名称6.2 可选属性
属性含义command="load| dump | delete"加载、导出或删除参数,默认为加载ns="namespace"将参数指定到命名空间7.group标签
7.1 可选属性
属性含义ns="namespace"将该组节点分配到指定的命名空间。命名空间可以是全局的,也可以是相对的,但不鼓励使用全局命名空间。clear_params="true|false"在启动前删除组的命名空间中的所有参数。这个功能非常危险,应该谨慎使用。7.2 可选子级标签
[*]其他所有标签都是其子级标签
8.arg标签
8.1 必选属性
属性含义name="arg-name"欲设置的参数名称8.2 可选属性
属性含义default="default value"设置参数的默认值。不能与value属性结合。value="value"设置参数的值。不能与default属性结合。doc="description for this arg"加载、导出或删除参数,默认为加载8.3 示例
<launch>
<param name="param" value="$(arg hoge)"/>
</launch>9.env标签
9.1 必选属性
属性含义name="environment-variable-name"所设置的环境变量的名字value="environment-variable-value"参数说明10.全局示例
<launch>
<param name="param" value="$(arg hoge)"/>
</launch><launch>
<param name="param" value="$(arg hoge)"/>
</launch><launch>
<param name="param" value="$(arg hoge)"/>
</launch><launch>
<param name="param" value="$(arg hoge)"/>
</launch><launch>
<param name="param" value="$(arg hoge)"/>
</launch><launch>
<param name="param" value="$(arg hoge)"/>
</launch><launch>
<param name="param" value="$(arg hoge)"/>
</launch><launch>
<param name="param" value="$(arg hoge)"/>
</launch><launch>
<param name="param" value="$(arg hoge)"/>
</launch> 本文由博客一文多发平台 OpenWrite 发布!
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
页:
[1]