ros2 基础学习16 - RQT:模块化可视化工具

RQT:模块化可视化工具

ROS中的Rviz功能已经很强大了,不过有些场景下,我们可能更需要一些简单的模块化的可视化工具,比如只显示一个摄像头的图像,使用Rviz的话,难免会觉得操作有点麻烦。

此时,我们就会用到ROS提供的另外一种模块化可视化工具——rqt。

rqt介绍

正如RQT的命名,它和Rviz一样,也是基于QT可视化工具开发而来,在使用前,我们需要通过这样一句指令进行安装,然后就可以通过rqt这个命令启动使用了。

安装
注意自己ros2 的版本,我的是humble

sudo apt install ros-humble-rqt

启动

rqt

启动成功后如图

在这里插入图片描述

里边可以加载很多小模块,每个模块都可以实现一个具体的小功能,一些常用的功能如下:

在这里插入图片描述

日志显示:

在这里插入图片描述
也可以通过命令行方式启动

ros2 run rqt_console rqt_console

从启动的界面可以看到有三个部分
Console:
The first section of the console is where log messages from your system will display.

Exclude Message:
In the middle you have the option to filter messages by excluding severity levels. You can also add more exclusion filters using the plus-sign button to the right.
用来过滤日志等级的
在这里插入图片描述

Hightlight Message…:
The bottom section is for highlighting messages that include a string you input. You can add more filters to this section as well.
自定义过滤

现在我们新开命令窗口,启动一个小乌龟节点
Now start turtlesim in a new terminal with the following command:

ros2 run turtlesim turtlesim_node

启动成功后我们会发现Console 栏中就会多两行数据,如下图所示:

在这里插入图片描述
双击某行日志可查看详情信息
在这里插入图片描述

测试定义一个不同级别日志的消息

To produce log messages for rqt_console to display, let’s have the turtle run into the wall. In a new terminal, enter the ros2 topic pub command (discussed in detail in the topics tutorial) below:

发布一条让小龟一直往前走的消息

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}}"

Since the above command is publishing the topic at a steady rate, the turtle is continuously running into the wall. In rqt_console you will see the same message with the Warn severity level displayed over and over, like so:

在这里插入图片描述

设置默认的日志等级
Set the default logger level

You can set the default logger level when you first run the /turtlesim node using remapping. Enter the following command in your terminal:

查看当前所有的topic 列表

在这里插入图片描述

发布话题数据/调用服务请求

在这里插入图片描述

数据包管理

在这里插入图片描述

节点可视化

Introspection / Node Graph

第一个是肯定是rqt_graph,插件名字叫做Node Graph,这个名字小鱼觉得更加的贴切,用rqt_graph更多的是为了延续ROS1中的用法,这个插件用于查看节点和节点之间的关系的。

在这里插入图片描述

查看节点和节点之间的关系

在这里插入图片描述

启动 Service 服务

从顶部的菜单栏中选择Plugins > Services > Service Caller
在这里插入图片描述

刷新服务列表

在这里插入图片描述

调整调用服务的参数

在这里插入图片描述

启动服务

在这里插入图片描述

查看设置节点服务的参数

在这里插入图片描述

在这里插入图片描述

RQT还有好些个插件的应用,后面会慢慢的补充

参考链接:
https://docs.ros.org/en/humble/Concepts/About-RQt.html
https://docs.ros.org/en/humble/Tutorials/Beginner-CLI-Tools/Using-Rqt-Console/Using-Rqt-Console.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/418190.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++力扣题目435-无重叠区间 763--划分字母区间

435. 无重叠区间 力扣题目链接(opens new window) 给定一个区间的集合,找到需要移除区间的最小数量,使剩余区间互不重叠。 注意: 可以认为区间的终点总是大于它的起点。 区间 [1,2] 和 [2,3] 的边界相互“接触”,但没有相互重叠。 示例 1…

React16源码: React中的renderRoot的源码实现

renderRoot 1 )概述 renderRoot 是一个非常复杂的方法这个方法里处理很多各种各样的逻辑, 它主要的工作内容是什么?A. 它调用 workLoop 进行循环单元更新 遍历整个 Fiber Tree,把每一个组件或者 dom 节点对应的Fiber 节点拿出来单一的进行更…

探索世界,从一款好用的浏览器开始!

好用的浏览器分享 在这个数字化的时代,浏览器已经成为了我们生活中不可或缺的工具。从浏览新闻、社交媒体到工作学习,我们几乎无时无刻不在与浏览器打交道。那么,如何选择一款好用的浏览器呢?今天,我就来为大家分享几…

实验七 RMAN恢复管理器

🕺作者: 主页 我的专栏C语言从0到1探秘C数据结构从0到1探秘Linux 😘欢迎关注:👍点赞🙌收藏✍️留言 🏇码字不易,你的👍点赞🙌收藏❤️关注对我真的很重要&…

集合框架(三)

Set集合 特点 Set系列集合特点: 无序:添加数据的顺序和获取出的数据顺序不一致;无重复;无索引; HashSet:无序、不重复、无索引LinkedHashSet:有序、不重复、无索引TreeSet:排序、…

git提交代码到远端仓库的方法详解

一、何为git git就是版本控制器,就比如说你新建了一个git文件夹,里面用于存放你的C语言实习报告,现在要用git对该文件夹进行接管。当你修改了你的C语言实习报告点击保存之后,就用git的相关命令,提交给git,让…

第二百七十八回

文章目录 1. 概念介绍2. 使用方法2.1 DropdownMenu2.1 DropdownMenuEntry 3. 示例代码4. 内容总结 我们在上一章回中介绍了"如何禁止页面跟随手机自动旋转"相关的内容,本章回中将介绍DropdownMenu组件.闲话休提,让我们一起Talk Flutter吧。 1.…

NAT实验

一:实验要求 二:实验分析 拓扑图 三:实验配置 1:路由器配置 R1配置IP R2配置IP 2:缺省路由 查看路由表 3:端口映射 4:pc、HTTP配置 5:DNS、client配置 四:实验结果 pc可以ping…

AUTOSAR实战篇:基于ETAS工具链集成Infineon FEE模块

AUTOSAR实战篇:基于ETAS工具链集成Infineon FEE模块 前言 小T出品,必是精品! 手把手带你集成Infineon FEE模块,你值得拥有! 正文 FEE全称为“Flash EEPROM Emulation ” , 即通过Flash来模拟EEPROM操作,相比Flash&…

Vue + JS + tauri 开发一个简单的PC端桌面应用程序

Vue JS tauri 开发一个简单的PC端桌面应用程序 文章目录 Vue JS tauri 开发一个简单的PC端桌面应用程序1. 环境准备1.1 安装 Microsoft Visual Studio C 生成工具[^2]1.2 安装 Rust[^3] 2. 使用 vite 打包工具创建一个 vue 应用2.1 使用Vite创建前端Vue项目2.2 更改Vite打包…

【数据结构】C语言实现共享栈

共享栈的C语言实现 导言一、共享栈1.1 共享栈的初始化1.2 共享栈的判空1.3 共享栈的入栈1.3.1 空指针1.3.2 满栈1.3.3 入栈空间错误1.3.4 正常入栈1.3.5 小结 1.4 共享栈的查找1.5 共享栈的出栈1.6 共享栈的销毁 二、共享栈的实现演示结语 导言 大家好,很高兴又和大…

自己是如何使用单元测试

前言 自己是如何使用单元测试 进行单元测试能够让我们在编写方法的具体实现代码后,能清晰地看到其是否能实现预期的功能,有助于我们及时修正自己方法中存在的bug,以免在后续使用到某方法时出现意想不到的错误。 一、引入单元测试所使用的依赖…