Ros学习笔记(十):理解 launch文件
2017-08-22 11:11
337 查看
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>
<?xml version="1.0"?>
如上所示,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>
相关文章推荐
- 由浅到深理解ROS- launch启动文件的理解与编写
- launch启动文件的理解与编写
- ROS launch启动文件的理解与编写
- ROS中launch启动文件的理解
- Maven中POM文件的理解
- CocosDeshion's android.mk 文件的理解
- 【linux】对于文件权限的理解
- 深入理解Java Class文件格式(五)
- sysfs文件系统的理解
- nginx 配置文件详解 深入理解nginx配置文件
- 可执行文件(ELF)格式的理解
- 理解HTTP消息头 (五)——使用multipart/form-data上传文件
- SQLServer 2005 文件理解
- 理解 Linux 配置文件
- 理解 Linux 配置文件
- 第7章 理解Linux文件权限
- roslaunch文件中的局部参数与全局参数
- ROS中launch文件编写随笔
- 文件类型声明的理解来源
- 理解 Linux 配置文件