《精通ROS机器人编程(原书第2版) 》 —2.4 创建启动文件

举报
华章计算机 发表于 2020/02/10 14:51:00 2020/02/10
【摘要】 本节书摘来自华章计算机《精通ROS机器人编程(原书第2版) 》 一书中第2章,第2.4节,作者是[印度]郎坦·约瑟夫(Lentin Joseph)[意大利]乔纳森·卡卡切(Jonathan Cacace),张新宇 张志杰 等译 。

2.4 创建启动文件

ROS中的启动(launch)文件在启动多个节点时非常有用。在前面的示例中,我们看到最多有两个ROS节点,但想象一下,如果我们需要为一个机器人启动10个或20个节点的情形。如果我们在终端中逐个启动每个节点将是很麻烦的事。相反,我们可以在一个launch文件中基于XML格式编写所有的节点,可以使用roslaunch命令解析此文件,然后启动其中的所有节点。

roslaunch命令将自动启动ROS的节点管理器和参数服务器。因此,我们不需要再单独启动roscore命令和单个节点了。如果我们使用launch文件,那么所有的操作都将在一个命令中完成。

下面我们开始创建launch文件。进入软件包的文件夹中并创建一个名为demo_topic.launch的新启动文件,它将启动两个节点,分别是发布和订阅整型数值的ROS节点。我们需要将launch文件保存在软件包内的launch文件夹中:

 image.png

粘贴下面的内容到文件中:

 image.png

我们讨论一下代码中的内容。<launch></launch>标签是launch文件中的根元素。所有的定义都在这对标签的内部。

<node>标签指明了要启动的节点:

 image.png

<node>中的name标签表示节点的名称,pkg是软件包的名称,type是我们要启动的可执行文件的名称。

在创建了demo_topic.launch启动文件后,我们就可以使用下面的命令来启动它:

 image.png

如果启动成功的话,我们将获得如图2-8所示的输出。

 image.png

图2-8 启动demo_topic.launch文件时的终端信息

我们可以使用下面的命令来查看节点列表:

 image.png

我们还可以使用一个名为rqt_console的GUI工具来查看日志消息,并调试节点:

 image.png

我们可以在此工具中看到由这两个节点生成的日志,如图2-9所示。

 image.png

图2-9 使用rqt_console工具查看日志


【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。