ROS机器人程序设计(原书第2版)2.4.13 启动文件
2.4.13 启动文件
启动(launch)文件是ROS中一个非常有用的功能,可以启动多个节点。在之前的小节中,我们已经学习了创建了节点,并且在不同的命令行窗口执行,想象一下,如果在每一个命令行窗口启动20个节点会是多么恐怖的一件事情!
通过启动文件我们可以在命令行窗口方便地实现以上任务,只需要运行后缀名为.launch的配置文件来启动多个节点。
为了练习这个例子,我们在功能包中创建一个新文件夹:
现在,在chapter2.launch文件中输入下面的代码:
这是个简单的例子,如果需要的话,也可以编写非常复杂的文件。例如,控制一个完整机器人,如PR2或Robonaut,包括真实的机器人和在ROS中仿真的机器人。
这个文件包括launch启动标签,在标签内部可以看到node节点标签。这个节点标签用于从功能包中启动节点,例如从chapter2_tutorials包中启动example1_a节点。
这个启动文件将执行两个节点,即这章最前的两个例子。如果你还记得,就是节点example1_a发送消息到节点example1_b。你可以通过如下命令启动这个文件:
你可以看到类似下图的显示:
运行的节点在上面的截图中列出,你可以通过下面命令查看运行的节点信息:
可以看到如右图所示的三个节点:
当执行启动文件时,并不需要在roscore命令前启动,roslaunch会启动它。
还记得节点example1_b会在屏幕输出从其他节点收到的消息,现在却看不到了,这是因为example1_b使用了ROS_INFO输出消息。当你在命令行只运行一个节点时,可以看到。但是当你运行启动文件时,则看不到。
现在,如果想看到信息,你可以运行rqt_console应用。在接下来的章节中,会做详细介绍。运行以下命令:
你从下面的截图中可以看到example1_b发送的消息:
在框中,你可以看到节点发送的消息以及来源文件。
相关文章
- 在 Go 里用 CGO?这 7 个问题你要关注!
- 9款优秀的去中心化通讯软件 Matrix 的客户端
- 求职数据分析,项目经验该怎么写
- 在OKR中,我看到了数据驱动业务的未来
- 火山引擎云原生大数据在金融行业的实践
- OpenHarmony富设备移植指南(二)—从postmarketOS获取移植资源
- 《数据成熟度指数》报告:64%的企业领袖认为大多数员工“不懂数据”
- OpenHarmony 小型系统兼容性测试指南
- 肯睿中国(Cloudera):2023年企业数字战略三大趋势预测
- 适用于 Linux 的十大命令行游戏
- GNOME 截图工具的新旧截图方式
- System76 即将推出的 COSMIC 桌面正在酝酿大变化
- 2GB 内存 8GB 存储即可流畅运行,Windows 11 极致精简版系统 Tiny11 发布
- 迎接 ecode:一个即将推出的具有全新图形用户界面框架的现代、轻量级代码编辑器
- loongarch架构介绍(三)—地址翻译
- Go 语言怎么解决编译器错误“err is shadowed during return”?
- 敏捷:可能被开发人员遗忘的部分
- Denodo预测2023年数据管理和分析的未来
- 利用数据推动可持续发展
- 在 Vue3 中实现 React 原生 Hooks(useState、useEffect),深入理解 React Hooks 的