前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ROS 2工具-rqt, logger, bag, doctor-

ROS 2工具-rqt, logger, bag, doctor-

作者头像
zhangrelay
发布2019-12-20 14:23:42
1.5K0
发布2019-12-20 14:23:42
举报

ROS 2工具

1. rqt:

掌握rqt可以在命令行不熟悉的情况下高效调试。

比如:service caller和console

在指定位置添加一个小乌龟:

左侧可以看到,直接可以使用图形化界面进行操作。

在右侧,可以查阅消息。

2. logger:

级别:

代码语言:javascript
复制
Fatal Error Warn Info Debug

每个级别都没有确切的标准,但是可以安全地做出如下假设:

  • Fatal 消息指示系统将终止以尝试保护自身不受损害。
  • Error 消息表示重大问题,不一定会损坏系统,但会阻止其正常运行。
  • Warn 消息表示意料之外的活动或不理想的结果,可能表示更深层次的问题,但不会直接损害功能。
  • Info 消息指示事件和状态更新,可作为视觉验证系统是否按预期运行。
  • Debug 消息详细说明了系统执行的整个分步过程。

默认级别为Info。仅看到默认严重性级别和更高级别的消息。

默认情况下,debug消息是无法看到的!

修改显示的logger级别:

代码语言:javascript
复制
ros2 run turtlesim turtlesim_node --ros-args --remap __log_level:=WARN

3. bag

3.1 记录

标准命令格式:

代码语言:javascript
复制
ros2 bag record <topic_name>

如果需要记录/turtle1/cmd_vel,使用如下命令:

代码语言:javascript
复制
ros2 bag record /turtle1/cmd_vel

显示如下:

使用Ctrl+C终止记录。

记录多个主题保存为subset文件:

代码语言:javascript
复制
ros2 bag record -o subset /turtle1/cmd_vel /turtle1

如果不想系统崩溃,尽量不要选用参数-a,为啥???

There is another option you can add to the command, -a, which records all the topics on your system. However, this might cause a circular dependency and crash your system. It’s better to choose a subset of the topics that you need.

3.2 信息

标准命令格式:

代码语言:javascript
复制
ros2 bag info <bag_file_name>

3.3 回放

标准命令格式:

代码语言:javascript
复制
ros2 bag play <bag_file_name>

此处使用:

ros2 bag play rosbag2_2019_12_11-20_47_57

显示:

[INFO] [rosbag2_storage]: Opened database 'rosbag2_2019_12_11-20_47_57\rosbag2_2019_12_11-20_47_57_0.db3' for READ_ONLY.

4. ros2doctor

先运行一下看看效果:

代码语言:javascript
复制
ros2 doctor

报错很正常。

如果开启更多的节点:

有些节点发布和订阅没有对应,会出现:

代码语言:javascript
复制
UserWarning

如果需要完成版本的报告:

代码语言:javascript
复制
ros2 doctor --report

ros2doctor

它是任何ROS 2发行版的标准安装中随附的ROS 2命令行界面工具之一。 ros2doctor与ROS 1 的roswtf类似。它将检查ROS 2设置,例如发行版,平台,网络接口等,并在ROS 2运行的系统中查找潜在问题。

用法

  • 运行ros2 doctorros2 wtf(别名)进行检查。
  • 运行ros2 doctor -h/--help以打印所有可用的命令参数。
  • 运行ros2 doctor -r/--report以查看所有选中项目的报告。
  • 运行ros2 doctor -rf/--report-fail以仅查看失败检查的报告。
  • 运行ros2 doctor -iw/--include-warnings以将警告包括为失败的检查。 -iw并且-rf可以组合使用。

ros2 -h显示命令全部功能如下:

其他ROS2命令不在过多介绍了,安装好依据帮助文档和官方资料,多实践就能掌握。

之后内容将全部转为代码编写和讲解。

不再涉及基础知识的介绍。

教程适用于Windows/MacOS/Linux,考虑到通用性,以Win10和Ubuntu18.04为主,

所有案例全部通用。


本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • ROS 2工具
    • 1. rqt:
      • 2. logger:
        • 3. bag
          • 3.1 记录
          • 3.2 信息
          • 3.3 回放
        • 4. ros2doctor
          • ros2doctor
          • 用法
      相关产品与服务
      日志服务
      日志服务(Cloud Log Service,CLS)是腾讯云提供的一站式日志服务平台,提供了从日志采集、日志存储到日志检索,图表分析、监控告警、日志投递等多项服务,协助用户通过日志来解决业务运维、服务监控、日志审计等场景问题。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档