1.launch 文件使用方式
roslaunch package_name file.launch
2.launch文件格式以及读取方式
launch文件格式XML格式。
roslaunch 读取launch文件的时候,顺序的读取。include标签被,最先处理,其它的标签全都按顺序读取,所以对于同一个参数,如果有重复定义,最后的参数生效。
3.标记值的参数设置
标记值可以使用变量参数。roslaunch会优先解析,并写入到launch启动程序
可用的标签有
$(env ENVIRONMENT_VARIABLE) 由当前环境变量来代替参数值,如果没有设置当前变量,则会失败
$(optenv ENVIRONMENT_VARIABLE) $(optenv ENVIRONMENT_VARIABLE default_value) 参数值为设置的环境变量,如果 default_value设置了就使用default_value为参数值
如:<param name=”foo” value=”$(optenv NUM_CPUS 1)” />
<param name=”foo” value=”$(optenv CONFIG_PATH /home/marvin/ros_workspace)” />
<param name=”foo” value=”$(optenv VARIABLE ros rocks)” />
$(find pkg) 使用指定package的相对路径来做参数值
$(anon name) 用来生成一个基于name的匿名的id。但是基于同一个name创建使用多次会报错,比如
<node name=”$(anon foo)” pkg=”rospy_tutorials” type=”talker.py” />
<node name=”$(anon foo)” pkg=”rospy_tutorials” type=”talker.py” />
$(arg foo) 查找使用<arg>标签定义的foo的值
$(eval <expression>) 允许计算复杂的表达式 如:
<param name=”circumference” value=”$(eval 2.* 3.1415 * arg(‘radius’))”/>
4.if和unless属性
所有的标签都支持if和unless属性,1和true认为是真值,0和false认为是假值。
-
if=value (optional)
-
如果optinal为真则执行下面的操作
unless=value (optional)
-
如果optinal值为假则执行下面的操作。
-
-