ROS机器人程序设计(原书第2版)3.3.2 使用rqt_graph在线检测节点状态图

本文涉及的产品
资源编排,不限时长
简介:

3.3.2 使用rqt_graph在线检测节点状态图

可以用有向图来显示ROS会话的当前状态,其中运行的节点是图中的节点,边为发布者-订阅者在这些节点与主题间的连接。此图形由rqt_graph动态绘制。

 

为了说明如何使用rqt_graph检测节点、主题和服务,使用以下launch文件同时运行example4和example5节点:

 

example4节点在两个不同的主题中发布并调用了一个服务。同时,example5节点订阅了这些主题,并提供了一个服务器来响应查询请求并提供反馈数据。一旦这些节点开始运行,我们就能够查询到如下图所示的节点拓扑图:

 

在上图中,我们看到节点通过主题相连。由于选择Hide Debug,我们不会看到ROS服务器节点rosout以及rosout主题发布到诊断聚合器(diagnostic aggregator)上的日志信息,如我们之前做的那样。取消这个选项就可以显示该节点和主题的调试信息,以便显示ROS服务器和rqt_graph节点本身(如下图所示)。这对于调试大型系统非常有用,因为图可以使其简化。同时,ROS hydro中相同命名空间的节点被分组,例如图像管道的节点:

 

当系统出现问题时,会一直(而不只是当我们移动鼠标掠过它们时)以红色显示。在这种情况下,选择all topics查看没有连接的主题非常有用,这通常显示由于主题名称拼写错误导致节点之间连接的中断。

当节点在不同的机器上运行时,rqt_graph会显示其强大的高级调试功能,包括节点能否从各自的机器看到对方、列举连接等。

最后,我们可以启用统计查看在主题边上显示的信息速率、带宽,以及写入速率和行速率,如下一个图所示。我们必须在运行rqt_graph之前设置参数来使信息有效:

 

不幸的是,这些参数ROS hydro目前不可用。它会在ROS indigo中(下一个发行版)出现,也有可能移植回hydro中。

相关实践学习
使用ROS创建VPC和VSwitch
本场景主要介绍如何利用阿里云资源编排服务,定义资源编排模板,实现自动化创建阿里云专有网络和交换机。
阿里云资源编排ROS使用教程
资源编排(Resource Orchestration)是一种简单易用的云计算资源管理和自动化运维服务。用户通过模板描述多个云计算资源的依赖关系、配置等,并自动完成所有资源的创建和配置,以达到自动化部署、运维等目的。编排模板同时也是一种标准化的资源和应用交付方式,并且可以随时编辑修改,使基础设施即代码(Infrastructure as Code)成为可能。 产品详情:https://www.aliyun.com/product/ros/
相关文章
|
6月前
|
Ubuntu 机器人 Linux
|
5月前
|
自动驾驶 安全 机器人
ROS2:从初识到深入,探索机器人操作系统的进化之路
前言 最近开始接触到基于DDS的这个系统,是在稚晖君的机器人项目中了解和认识到。于是便开始自己买书学习起来,感觉挺有意思的,但是只是单纯的看书籍,总会显得枯燥无味,于是自己又开始在网上找了一些视频教程结合书籍一起来看,便让我对ROS系统有了更深的认识和理解。 ROS的发展历程 ROS诞生于2007年的斯坦福大学,这是早期PR2机器人的原型,这个项目很快被一家商业公司Willow Garage看中,类似现在的风险投资一样,他们投了一大笔钱给这群年轻人,PR2机器人在资本的助推下成功诞生。 2010年,随着PR2机器人的发布,其中的软件正式确定了名称,就叫做机器人操作系统,Robot Op
179 14
|
5月前
|
XML 算法 自动驾驶
ROS进阶:使用URDF和Xacro构建差速轮式机器人模型
【11月更文挑战第7天】本篇文章介绍的是ROS高效进阶内容,使用URDF 语言(xml格式)做一个差速轮式机器人模型,并使用URDF的增强版xacro,对机器人模型文件进行二次优化。
204 6
|
5月前
|
自动驾驶 安全 机器人
ROS2:从初识到深入,探索机器人操作系统的进化之路
【11月更文挑战第4天】ROS2的学习过程和应用,介绍DDS系统的框架和知识。
303 1
|
6月前
|
传感器 数据可视化 机器人
【ROS速成】半小时入门机器人ROS系统简明教程之可视化系统(三)
半小时入门机器人ROS系统简明教程之可视化系统
289 0
|
6月前
|
机器人
【ROS速成】半小时入门机器人ROS系统简明教程之安装测速(二)
半小时入门机器人ROS系统简明教程之安装测速
301 0
|
8月前
|
传感器 自然语言处理 机器人
ROS2教程03 ROS2节点
本文是关于ROS2(机器人操作系统2)节点的教程,涵盖了节点的概念、特性、使用方法,以及如何编写、测试和使用ROS2节点相关的命令行工具。文章介绍了节点的独立性、任务执行、跨硬件分布和多语言编写能力。详细解释了如何启动节点、查看节点信息、编写节点代码(包括面向过程和面向对象的方法),以及如何为功能包添加依赖和入口点。此外,还探讨了重映射节点名称和使用节点命令行工具的方法,如 `ros2 node info` 和 `ros2 node list`。适合已安装ROS2 Humble和Ubuntu 22.04操作系统,并具有Shell基础知识的读者学习。
276 1
|
8月前
|
机器人 Python
ROS2教程 03 节点Node
本文是关于ROS2(机器人操作系统2)的教程,介绍了ROS2的节点概念、与ROS1的区别、节点的编写和基本流程、ros2的node相关命令,以及如何对节点名进行重映射,旨在帮助读者理解ROS2中节点的创建和操作。
216 0
|
1月前
|
人工智能 自然语言处理 机器人
9.9K star!大模型原生即时通信机器人平台,这个开源项目让AI对话更智能!
"😎高稳定、🧩支持插件、🦄多模态 - 大模型原生即时通信机器人平台"

热门文章

最新文章

推荐镜像

更多
下一篇
oss创建bucket