作用:
可以方便的实现 ROS 可视化调试,并且在同一窗口中打开多个部件,提高开发效率,优化用户体验。
组成:
rqt工具箱组成有三大部分
rqt 核心实现,开发人员无需关注
rqt_common_plugins rqt中常用的工具套件
rqt_robot_plugins 运行中和机器人交互的插件(比如: rviz)
---------------------------------------------------------------------------------------------------------------------------------rqt安装启动与基本使用
1.安装
一般安装的是desktop-full版本就会自带工具箱。
如果需要安装可以以如下方式安装:
$ sudo apt-get install ros-noetic-rqt
$ sudo apt-get install ros-noetic-rqt-common-plugins
注意:其中的noetic需要替换相应的ROS版本。
2.启动
rqt的启动方式有两种:
$rqt 或 $rosrun rqt_gui rqt_gui
3.基本使用
启动 rqt 之后,可以通过 plugins 添加所需的插件。
话题
选中Plugins->Topics->Message Publisher
1:选择话题名称
2:添加话题相关配置
3:修改话题内容
4:发布话题
服务
选中Plugins->Services->Services Caller
1:选择消息名称
2:修改消息内容
3:发布消息
4:收到消息反馈
---------------------------------------------------------------------------------------------------------------------------------
rqt常用插件:rqt_graph
简介:可视化显示计算图
启动:可以在rqt的plugins中添加,或者使用rqt_graph启动
注意:启动如下的launch文件
<!--
tf2 实现小乌龟跟随案例
-->
<launch>
<!-- 启动乌龟节点与键盘控制节点 -->
<node pkg="turtlesim" type="turtlesim_node" name="turtle1" output="screen" />
<node pkg="turtlesim" type="turtle_teleop_key" name="key_control" output="screen"/>
<!-- 启动创建第二只乌龟的节点 -->
<node pkg="tf04_test" type="demo01_turtle2" name="turtle2" output="screen" />
<!-- 启动两个坐标发布节点 -->
<node pkg="tf04_test" type="demo02_dynamic_pub" name="caster1" output="screen" args="turtle1" />
<node pkg="tf04_test" type="demo02_dynamic_pub" name="caster2" output="screen" args="turtle2" />
<!-- 启动坐标转换节点 -->
<node pkg="tf04_test" type="demo03_tfs" name="listener" output="screen" />
</launch>
启动rqt,选中Plugins->Introspection->Node Graph
此时rqt中显示的,方框表示话题,椭圆表示节点,箭头表示数据的订阅方向。
---------------------------------------------------------------------------------------------------------------------------------
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->Logging->Console
1.选择Info,即可不显示Info的信息。
2.输入EEEEE,可以将包含EEEEE的信息高亮显示。
---------------------------------------------------------------------------------------------------------------------------------
rqt常用插件:rqt_plot
简介:图形绘制插件,可以以 2D 绘图的方式绘制发布在 topic 上的数据。
准备:启动turtlesim 乌龟节点与键盘控制节点,通过 rqt_plot 获取乌龟位姿。
启动:可以在rqt的plugins中添加,或者使用rqt_plot启动。
选中Plugins->Visualization->Plot
1.输入话题名称及包含的变量名
2.点击添加,下方即可显示
---------------------------------------------------------------------------------------------------------------------------------
rqt常用插件:rqt_bag
简介:录制和重放 bag 文件的图形化插件。
准备:启动 turtlesim 乌龟节点与键盘控制节点。
启动:可以在rqt的plugins中添加,或者使用rqt_bag启动。
选中Plugins->Logging->Bag
录制bag文件
1.开始录制
2.勾选想要录制的话题
3.确认勾选
4.输入录制文件的名称(可自定义)
如何结束录制?关闭界面即可。
播放bag文件
1.打开录制文件
2.右键影像框
3.勾选发布
4.开始播放(循环播放)