roslaunch之node标签

一 node标签

<node>标签指定一个ROS 节点,这是最常见的roslaunch标签,因为它支持最重要的功能:启动和关闭节点。

roslaunch不保证节点开始的顺序。因为没有办法从外部知道节点何时被完全初始化,所以所有被启动的节点必须是稳健的,以便以任何顺序启动。

二 示例

<node name =“listener1”pkg =“rospy_tutorials”type =“listener.py”args =“ -  test”respawn =“true”/>

启动“listener1” 节点,使用listener.py从可执行rospy_tutorials 包与所述命令行参数--test。如果节点死亡,它将自动重新生成。

<node name =“bar1” pkg =“foo_pkg” type =“bar” args =“$(find baz_pkg)/resources/map.pgm”/>

foo_pkg包中启动bar1节点。此示例使用替换参数将可移植引用传递到baz_pkg / resources / map.pgm

三 属性

  • pkg =“mypackage”

    • 节点包。

    type =“nodetype”

    • 节点类型。必须有一个具有相同名称的相应可执行文件。

    name =“nodename”

    • 节点名称。注意:name不能包含命名空间。请改用ns属性。

    args =“arg1 arg2 arg3” (可选)

    • 传递参数到节点。

    machine =“machine-name” (可选)

    • 在指定机器上启动节点。

    respawn =“true” (可选)

    • 如果节点退出,则自动重新启动节点。

    respawn_delay =“30” (可选,默认为0)ROS indigo中的新功能

    • 如果respawntrue,请在尝试重新启动之前检测到节点故障后等待respawn_delay秒。

    required =“true” (可选)

    • ROS 0.10:如果节点死亡,杀死整个roslaunch。

    ns =“foo” (可选)

    • 在“foo”命名空间中启动节点。

    clear_params =“true | false” (可选)

    • 在启动前删除节点的私有命名空间中的所有参数。

    output =“log | screen” (可选)

    • 如果‘screen‘,stdout / stderr从节点将被发送到屏幕。如果是“log”,stdout / stderr输出将被发送到$ ROS_HOME/ log中的日志文件,stderr将继续发送到屏幕。默认值为“log”。

    cwd =“ROS_HOME | node” (可选)

    • 如果为“node”,则节点的工作目录将设置为与节点的可执行文件相同的目录。在C Turtle中,默认值为“ROS_HOME”。在Box Turtle(ROS 1.0.x)中,默认值是‘ros-root‘。使用‘ros-root‘在C Turtle中已被弃用。

    launch-prefix =“prefix arguments” (可选)

    • 用于预先添加到节点的启动参数的命令/参数。这是一个强大的功能,使您能够启用gdbvalgrindxterm漂亮或其他方便的工具。

四 元素

您可以在<node>标记中使用以下XML 标签:

  • <env>

    • 为节点设置环境变量。

    <remap>

    • 为此节点设置重新映射参数。

    <rosparam>

    • rosparam文件加载到此节点的? / local命名空间中。

    <param>

    • 在节点的? / local命名空间中设置一个参数。
时间: 2024-12-18 10:52:32

roslaunch之node标签的相关文章

SLAM+语音机器人DIY系列:(二)ROS入门——8.理解roslaunch在大型项目中的作用

摘要 ROS机器人操作系统在机器人应用领域很流行,依托代码开源和模块间协作等特性,给机器人开发者带来了很大的方便.我们的机器人"miiboo"中的大部分程序也采用ROS进行开发,所以本文就重点对ROS基础知识进行详细的讲解,给不熟悉ROS的朋友起到一个抛砖引玉的作用.本章节主要内容: 1.ROS是什么 2.ROS系统整体架构 3.在ubuntu16.04中安装ROS kinetic 4.如何编写ROS的第一个程序hello_world 5.编写简单的消息发布器和订阅器 6.编写简单的s

node.js(API解读) - process (http://snoopyxdy.blog.163.com/blog/static/60117440201192841649337/)

node.js(API解读) - process 2011-10-28 17:05:34|  分类: node |  标签:nodejs  nodejsprocess  node.jsprocess  nodjsapi  node.jsapi   |举报 |字号 订阅 下载LOFTER 我的照片书  | nodejs的process是一个全局对象,他提供了一些方法和属性,node.js官方的API说的很简单,并没有把一些详细的应用方法和作用写出来,下面结合我自己的学习,做一下小结吧.1.Even

brew 安装旧版的node

brew详解:http://stackoverflow.com/questions/3987683/homebrew-install-specific-version-of-formula 最终我使用的命令: 1. 查看当前node版本 $ ls -l `which node` lrwxr-xr-x  1 cyper  admin  30 Jul 26 12:09 /usr/local/bin/node -> ../Cellar/node/0.12.7/bin/node 2. 查看已经安装过的所

Docker Swarm(六)Label 节点标签与服务约束

前言 多节点 Swarm 集群下,可能节点的配置不同(比如 CPU.内存等),部署着不同类型的服务(比如 Web服务.Job服务等),当这些服务以 Service 或者 Stack 的形式部署到集群,默认情况下会随机分配到各个节点. 场景1:不同类型的服务对服务器需求的资源是不同的,为了更合理的利用服务器资源,我们可能希望某些服务能够部署到指定的服务器上. 场景2:Swarm 集群中的节点跨机房,为了内部服务间通信更快,我们可能希望关联比较密切的服务能够部署到同一机房的节点上. 以上场景要如何做

ROS launch 总结

ROS launch 总结 转自博客:https://www.cnblogs.com/Jessica-jie/p/6961837.html 1 运行Launch文件2 新建Launch文件3  在namespace中启动nodes4   remapping names5 其他的launch元素 1 运行Launch文件 Launch文件是ROS提供的,可以同时运行多个nodes的文件.Launch文件以一种特殊的XML格式编写,在ROS packages中使用广泛. (1) 运行launch文件

DOM的小疑问收集

1.DOM,Doncument object model 文档对象模型 页面中的所有内容都是对象,包括所有的文字,标签,属性,就是说,DOM就是页面中大对象中有很多小对象,树形结构. 1.1xml文件是用来存储信息的,而且xml的好处是不会跟随软件的消失消失,可以在电脑中直接打开 2.js的作用最初的目的就是验证密码,后来加入了js对页面html中元素的操作,就是---DOM. 3.页面中的顶级对象是document,不是浏览器中的顶级对象,标签可以叫做节点(node==标签==元素),文档元素

拼接字符串,生成tree格式的JSON数组

之前做的执法文书的工作,现在需要从C#版本移植到网页版,从Thrift接口获取数据,加载到对应的控件中 之前用的easyui的Tree插件,通过<ul><li><span></span></li></ul>标签的方式生成node树,条理清晰,虽然麻烦点,但是用循环写几行代码就能搞定,但是,在Ajax的函数里面,tree的样式加载不上,显示的格式就是元素自带的含义,<ul>和<li>,无法点击,下面的工作也就无法

Workflow_工作流的基本概念(概念)

1. Workflow Builder的默认访问级别是100,以下是Oracle对访问级别的一个大致分类:     0-9 Oracle Workflow       10-19 Oracle Application Object Library      20-99 Oracle Application Development      100-999 Customer Organization      1000 Public 2. Oracle 工作流对象通过不同的选项和访问级别来实现对象

一个用于网站自动化测试的生态系统实现

这是我在从事网站自动化测试的工作当中构建出的一个"生态系统"."生态系统"这个概念是我从公司的前辈身上学到的,他一直以来都认为自动化测试人员不应仅仅局限于编写测试代码,还应该让整个自动化测试的过程(测试代码的持续集成.分发.执行等)都自动化,形成一个"系统",这个系统的自动化程度越高,自动化测试人员就越省力. 一.概念 这里我画了一张示意图: 之所以称之为"生态系统",是因为建成之后需要的人为干涉很少,其余的时间都是系统内部循