launch文件记录

wiki.ros官网地址:http://wiki.ros.org/roslaunch/XML
http://wiki.ros.org/roslaunch/
http://wiki.ros.org/roslaunch/Commandline%20Tools
http://wiki.ros.org/rosparam
launch文件是一种特殊的XML格式文件,通常以.launch作为文件后缀。
roslaunch命令需要启动文件的名称。 可以指定启动文件的文件路径,也可以指定程序包名称和该程序包中的启动文件,例如

roslaunch pr2_robot/pr2_bringup/pr2.launch
roslaunch pkg_name launchfile_name.launch 

启动时也可添加参数:

 --wait     		延迟启动,直到检测到roscore。
 --local 		仅启动本地节点,远程计算机上的节点将无法运行。 
 --screen 		强制所有节点输出到屏幕, 对节点调试有用。
 eg:
 $ roslaunch --screen package filename.launch

启动的同时也可对参数赋值:

roslaunch pkg_name launchfile_name cc:=urdf/cvis.urdf  # launch file 中有参数 “cc” 需要赋值
roslaunch pkg_name launchfile_name cc:='$(find urdf_pkg)/urdf/cvis.urdf' # 用 find 命令提供路径

launch文件的主要包含内容:

<launch>    		<!--根标签-->
<node>    		<!--需要启动的node及其参数-->
<machine>     		<!--指定运行的机器-->
<include>   		<!--包含其他launch-->
<remap>  		<!--设定 topic 映射-->
<env>   		<!--为启动的节点指定环境变量-->
<param>   		<!--定义参数到参数服务器-->
<rosparam> 		<!--加载yaml文件中的参数到参数服务器-->
<group>   		<!--设定分组-->
<test>    		<!--启动测试节点-->
<arg>   		<!--定义变量-->
</launch>               <!--根标签-->

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

arg:
roslaunch支持启动参数arg,可以通过设置arg来改变程序的运行。name为启动参数的名称,default为该参数的默认值,value为该参数的参数值。default与 value两者的唯一区别在于命令行参数roslaunch pkg-name launch-file-name arg-name:=”set-value”可以覆盖默认值default,但是不能覆盖参数值 value。在launch文件中出现$(arg arg-name)的地方,运行时roslaunch 会将它替换成参数值。并且可以在include元素标签内使用arg来设置所包含的launch文件中的参数值。

param
在ROS中。parameter是运行中的ROS系统使用的数值,存储在参数服务器(parameter server)中,每个活跃的节点都可以通过 ros::param::get 函数来获取parameter的值,用户也可以通过rosparam来获得parameter的值
name=“namespace/name”
参数名称。名称空间可以包含在参数名称中,但应避免使用全局指定的名称。
value=“value”(optional)
定义参数的值。如果省略此属性,则必须指定binfile,textfile或command。

include
在launch文件中复用其他launch文件可以减少代码编写的工作量,提高文件的简洁性。使用包含元素include在launch文件中可包含其他launch文件中所有的节点和参数。

<include file="$(find pkg-name)/launch/launch-file-name">

launch 文件不需要编译

文章后续会一直添加

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值