ROS2官网教程学习笔记使用rqt_console篇

学习目标:了解rqt_console

背景

rqt_console是一个用于查看ROS日志消息的GUI工具。通常日志的消息会显示在终端中。使用rqt_console的好处是,我们可以按照时间收集这些日志,以一个更有条理的方式查看日志,还可以对日志进行过滤和保存,甚至可以重新加载保存的文件对日志进行重放。
节点通过日志的方式输出它的状态、过程变换等信息。这些信息通常是编程时输出想在运行的时候看到的信息。

准备条件

需要按照rqt_console 和 turtlesim

学习内容

1. 打开节点

新打开一个终端,用下面的命令打开rqt_console

ros2 run rqt_console rqt_console

打开过后页面如下
最上面的部分是日志显示的地方
中间的框是按照日志等级不进行显示的过滤选项,选择了对应的日志信息就不会显示该等级的日志了
最下面是高级过滤条件的选项
在这里插入图片描述

现在我们打开小乌龟

ros2 run turtlesim turtlesim_node

2. rqt_console上的消息

为了产生消息我们发送一个命令让乌龟一直走直到撞到墙

ros2 topic pub -r 1 /turtle1/cmd_vel geometry_msgs/msg/Twist '{linear: {x: 2.0, y: 0.0, z: 0.0}, angular: {x: 0.0,y: 0.0,z: 0.0}}'

我们给乌龟赋了一个恒定的速度,乌龟走一会就会撞到墙上。
这个时候我们在rqt_console上就会看到有消息输出
在这里插入图片描述
现在用Ctrl + C把发布消息的节点关掉,不让乌龟继续撞墙了,这个时候我们可以看到不再有消息输出

3. 日志等级

日志按照重要程序依次排序如下

扫描二维码关注公众号,回复: 9282267 查看本文章
Fatal
Error
Warn
Info
Debug

对于每个等级没有严格的标准,可以进行和理假设:

  • Fatal 表明系统将终止以保护自身不受损害。
  • Error 表示不一定会损坏系统的重大问题,但会阻止系统正常运行。
  • Warn 表示出现一下意外或者不理想结果和表现,但不会直接导致系统不能正常运行。
  • Info 表示系统的一信息或状态更新,作为系统按预期运行的可视化验证。
  • Debug 详细说明了系统执行的整个逐步过程。
    通常默认设置的消息级别为Info,我们只能看到这个级别及其以上等级的消息

3.1 设置默认的消息等级

我们可以在节点启动的时候设置默认的消息等级,例如

ros2 run turtlesim turtlesim_node --ros-args --log-level WARN

这个时候我们就看不到程序刚刚运行的消息了,因为现在我们把默认的消息等级设置为了WARN

总结

rqt_console是一个非常有用的工具,特别是我们在调试程序的时候,会带来很多方便。

发布了63 篇原创文章 · 获赞 50 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/qq_38649880/article/details/104404971
今日推荐