<node> tag
来源:互联网 发布:深圳市淘宝运营 编辑:程序博客网 时间:2024/04/29 04:50
</pre><node> tag 用于启动node,它是最常用的roslaucnh tag,因为它提供了最重要的两个特性:bring up和 taking down nodes。<p></p><p></p><p>roslaunch不能保证node的启动顺序,ROS有意设计为:无法从外部知道一个Node什么时候完成了初始化。所以启动的所有</p><p>程序代码必须robust到可以以任意顺序启动。</p><p></p><p>1 例子</p><p><span style="white-space:pre"></span></p><pre name="code" class="html"><node name="listener1" pkg="rospy_tutorials" type="listener.py" args="--test" respawn="true" />
用rospy_tutorials 包(package)的listener.py可执行文件(executable),来启动节点:“listener1”, 并给出命令行实际参数 “--test”。如果节点死亡,
它会自动重生出来。
<node name="bar1" pkg="foo_pkg" type="bar" args="$(find baz_pkg)/resources/map.pgm" />
用foo_pkg包(package)来启动bar1节点。这个例子使用了一个带入实际参数(substitution arguments)来传入一个移动索引给
bar_pkg/resources/map.pgm。
2 节点属性 Attributes
pag = "mypackage"
Node所在的包(package)。
type = "nodetype"
Node的类型,必须有一个同名的对应可执行文件(executable)。
name = "nodename"
节点名。注意:名字不能包含命名空间 namespace。可以使用 ns 属性来使用命名空间功能。
args = "arg1 arg2 arg2"(可选属性)
将实际参数传入node。
machine = "machine-name"(可选属性)
在制定的机器上启动node。
respawn = "true"(可选属性)
当节点退出之后自动重启这个节点。
respawn_delay = "30"(可选属性,默认值为0)indigo新增
如果respawn为真的话,侦测到node报错之后,等待respawn_delay的秒数再去尝试重启node。
required = "true"(可选属性)
如果节点退出,则杀死整个roslaunch
ns = "foo"(可选属性)
在"foo"name space中启动这个node
clear_params = "true|false"(可选属性)
在启动前,删除这个节点的私有name space之中的所有形式参数
output = "log|screen"(可选属性)
如果screen的话,node 的 stdout/stderr将会被发送给屏幕,如果log的话,stdout/stderr将会被发送给一个log file,
这个log file 位于 $ROS_HOME/log 内,并且stderr将会继续发送屏幕。这个属性的默认值为log。
cwd = "ROS_HOME|node"(可选属性)
如果node的话,node的工作目录将会被设置为node的可执行文件所在的目录。在C Turtle,默认值是 ROS_HOME
在Box Turtle (ROS 1.0.X),默认值是 “ros-root”。“ros-root”的用法在 C Turtle中已经被撤销了。
launch-prefix = "prefix arguments"(可选属性)
添加 command/arguments 到节点的launch argument 里面去。有了这个强力功能,你可以激活 gdb valgrind xterm nice
或者其他方便的工具,例子可以看看 Roslaunch Nodes in Valgrind or GDB。
3 <node>tag 可以包含的元素
在<node>之中,你可以包含以下tag元素
<env> :为节点设置环境变量。
<remap>:为节点设置重映射实际参数(remapping argument)。
<rosparam>:为节点加载一个rosparame文件进入这个节点的 ~/local 名称空间。
<param>:为节点设置形式参数进入这个节点的 ~/local 名称空间。
- <node> tag
- node,tag,parentNode,parentElement,cells,rows,cellIndex,rowIndex,sectionRowIndex......
- tag
- TAG
- TAG
- tag
- Tag
- tag
- tag~~
- tag
- tag
- tag
- tag
- tag
- tag
- Tag
- tag
- Tag
- 定位元素
- Codeforces 633B A Trivial Problem 【数论】
- 最全面的C/C++编码规范总结
- 架构师和开发团队应该如何协作?组织架构怎么设置最好?
- Qt信号函数无法解析的问题解决方法
- <node> tag
- 推荐系统简述(1)基于内容的推荐系统
- Android DisplayingBitmaps笔记
- 多附件上传之动态添加input标签
- Linux系统下自行编译安装MySQL及基础配置全过程解析
- Java 回顾笔记 匿名内部类
- could not read data from '/Users/xxxx/myapp-Info.plist'
- 关于 contentWindow, contentDocument
- 【Android界面实现】XListView实现原理讲解及分析