第 5 章 ROS常用组件-rqt(自学二刷笔记)
重要参考:
课程链接:https://www.bilibili.com/video/BV1Ci4y1L7ZZ
讲义链接:Introduction · Autolabor-ROS机器人入门课程《ROS理论与实践》零基础教程
5.3 rqt工具箱
之前,在 ROS 中使用了一些实用的工具,比如:ros_bag 用于录制与回放、tf2_tools 可以生成 TF 树 ..... 这些工具大大提高了开发的便利性,但是也存在一些问题:这些工具的启动和使用过程中涉及到一些命令操作,应用起来不够方便,在ROS中,提供了rqt工具箱,在调用工具时以图形化操作代替了命令操作,应用更便利,提高了操作效率,优化了用户体验。
概念
ROS基于 QT 框架,针对机器人开发提供了一系列可视化的工具,这些工具的集合就是rqt
作用
可以方便的实现 ROS 可视化调试,并且在同一窗口中打开多个部件,提高开发效率,优化用户体验。
组成
rqt 工具箱组成有三大部分
-
rqt——核心实现,开发人员无需关注
-
rqt_common_plugins——rqt 中常用的工具套件
-
rqt_robot_plugins——运行中和机器人交互的插件(比如:rviz)
另请参考:
5.3.1 rqt安装启动与基本使用
1.安装
-
一般只要你安装的是desktop-full版本就会自带工具箱
-
如果需要安装可以以如下方式安装
$ sudo apt-get install ros-noetic-rqt $ sudo apt-get install ros-noetic-rqt-common-plugins
2.启动
rqt的启动方式有两种:
-
方式1:rqt
-
方式2:rqt rosrun rqt_gui rqt_gui
3.基本使用
启动 rqt 之后,可以通过 plugins 添加所需的插件
5.3.2 rqt常用插件:rqt_graph
简介:可视化显示计算图
启动:可以在 rqt 的 plugins 中添加,或者使用rqt_graph启动
5.3.3 rqt常用插件:rqt_console
简介:rqt_console 是 ROS 中用于显示和过滤日志的图形化插件
准备:编写 Node 节点输出各个级别的日志信息
/*
ROS 节点:输出各种级别的日志信息
*/
#include "ros/ros.h"
int main(int argc, char *argv[])
{
ros::init(argc,argv,"log_demo");
ros::NodeHandle nh;
ros::Rate r(0.3);
while (ros::ok())
{
ROS_DEBUG("Debug message d");
ROS_INFO("Info message oooooooooooooo");
ROS_WARN("Warn message wwwww");
ROS_ERROR("Erroe message EEEEEEEEEEEEEEEEEEEE");
ROS_FATAL("Fatal message FFFFFFFFFFFFFFFFFFFFFFFFFFFFF");
r.sleep();
}
return 0;
}
启动:
可以在 rqt 的 plugins 中添加,或者使用rqt_console启动
5.3.4 rqt常用插件:rqt_plot
简介:图形绘制插件,可以以 2D 绘图的方式绘制发布在 topic 上的数据
准备:启动 turtlesim 乌龟节点与键盘控制节点,通过 rqt_plot 获取乌龟位姿
启动:可以在 rqt 的 plugins 中添加,或者使用rqt_plot启动
5.3.5 rqt常用插件:rqt_bag
简介:录制和重放 bag 文件的图形化插件
准备:启动 turtlesim 乌龟节点与键盘控制节点
启动:可以在 rqt 的 plugins 中添加,或者使用rqt_bag启动
录制:
重放: