zl程序教程

您现在的位置是:首页 >  硬件

当前栏目

ROS机器人程序设计(原书第2版)3.6 可视化节点诊断

机器人节点 可视化 程序设计 ros 原书 诊断 3.6
2023-09-11 14:16:04 时间

3.6 可视化节点诊断

ROS节点可以使用diagnostics(诊断)主题提供诊断信息,并为此提供了一个API用于以标准方式发布诊断信息。信息遵循diagnostic_msgs/DiagnositcStatus的消息类型,它允许我们指定一个级别(警告、错误)、名称、消息和硬件ID以及diagnostic_msgs /KeyValue列表,对应键(key)和值(value)字符串。

有趣的部分是收集诊断信息并将其可视化的工具。在最基本的层面上,rqt_runtime_monitor通过diagnostics主题直接发布可视化信息。运行example7节点,它通过诊断主题发布信息并可以通过可视化工具查看诊断信息:

 

前面的命令输出如下所示:

 

当系统很大时,我们可以使用diagnostic_aggregator汇总诊断信息。在diagnostics_agg里处理和归类diagnostics主题的消息并重新发布。这些汇总诊断消息通过rqt_robot_monitor实现可视化。诊断汇总器通过一个配置文件进行配置,例如下面的这一个(参看chapter3_tutorials中的config/diagnostic_aggregator.yaml文件),并使用AnalyzerGroup定义不同的analyzers(分析器):

 

launch文件已经在之前的代码中使用,并以之前的配置运行诊断节点aggregator_node,如下:

 

现在,我们可以比较rqt_runtime_monitor与rqt_robot_monitor的可视化,如下图所示。


使用Dataworks的Pyodps节点发送钉钉机器人消息 使用Dataworks的Pyodps节点发送钉钉机器人消息,需要开启沙箱白名单。否则网络不可达。 测试结果: import jsonimport requestsimport sys reminders 提醒 def send_msg(url,reminders,msg): headers.