Ros学习笔记(十):理解 launch文件

来源:互联网 发布:ei数据库高级检索 编辑:程序博客网 时间:2024/05/22 13:12

        launch文件,即启动文件,是ROS提供的一个管理启动节点的途径,一般来说,任何包都会包含启动文件,来指定和配置需要使用的节点,通常保存在launch文件目录下。

                                                                                                                                              
        如上所示,launch文件由一对launch标签定义:<launch>……<launch>,所有定义的元素都包含在这两个标签之内。

启动参数
        launch文件开始一般会定义一些参数(args),格式有以下两种
<arg name=”arg-name” default=”arg-value”/>

<arg name=”arg-name” value=”arg-value”/>

两者的区别在于,default参数可以被覆盖,但value不能被覆盖。

包含文件

我们经常需要在启动文件中包括其他启动文件的内容,如某些节点或参数,这时候可以直接使用include参数,形式如下

<include file=”$(find package-name)/launch-file-name”>

由于直接输入路径比较繁琐,因此一般使用find指令来搜索对应的功能包位置。


节点

<node> 启动节点,
    <node>常用属性tag:
    pkg:"pkg_name"  包名
    type:"exe_name"  节点类型,即编译生成的可执行文件
    name:"node_name" 节点名称,自定义但不能重复
    args:"arg1 ..."  传递节点的参数列表
    respawn:"true" 如果节点退出自动重启 default:false
    output:"screen" 标准输出/标准错误输出重定向屏幕,log重定向log文件,default:log
    required:"true" 如果节点退出,关闭全部launch进程
    launch-prefix:"prefix arguments" 前置的参数,可以使用其他工具如gdb,valgrind等


    <node>常用标签tag:
    param:设置变量到参数服务器
    remap:名称映射 from:被映射名称 to:目标名称
    rosparam:常用来加载程序的参数配置文件到参数服务器,然后程序从参数服务器取得参数值


    lannch机制不保证节点的启动顺序,虽然launch文件是顺序分析,但节点初始化的时间长度不一,启动时间不一
</node>


原创粉丝点击