ROS中rviz使用教程


ROS中rviz使用教程

  • rviz安装
  • 启动rviz
    • 命令行启动rviz
    • 通过launch文件启动
  • rviz plugin 二次开发界面

在机器人控制过程中需要显示机器人的各种状态,例如机械臂的运动状态、受力状态等,ROS称为机器人的操作系统,其强大的功能覆盖各个方面,ROS提供的rivz可以实现各种数据的显示,同时其也提供二次开发的插件,可以打造个性化的机器人的控制界面。
rviz安装

安装ROS完整版时,rviz会自动安装,如果没有安装,可以通过下面命令安装

1
sudo apt-get install ros-kinetic-rviz

安装依赖

1
2
rosdep install rviz
rosmake rviz

启动rviz

rviz可以开通直接通过命令行启动,也可以通过launch文件启动,本文将分别介绍两种方法。

命令行启动rviz

首先输入下列命令rosrun rviz rviz启动rviz,启动后其会提供相关版本信息。

1
2
3
4
5
6
d@f:~$ rosrun rviz rviz
[ INFO] [1591015663.886947939]: rviz version 1.12.17
[ INFO] [1591015663.887040184]: compiled against Qt version 5.5.1
[ INFO] [1591015663.887060745]: compiled against OGRE version 1.9.0 (Ghadamon)
[ INFO] [1591015664.169635476]: Stereo is NOT SUPPORTED
[ INFO] [1591015664.169738498]: OpenGl version: 3 (GLSL 1.3).

启动后图形界面如下图所示,界面包括四个模块:
1 :工具栏,提供视角控制、目标设置、发布地点等工具
2 :显示项列表,用于显示当前选择的显示插件,可以配置每个插件的属性
3 :视角设置区,可以选择多种观测视角
4 :时间显示区,显示当前的系统时间和ROS时间
其中比较重要的是Fixed Frame的选取和topic的设定。
在这里插入图片描述

通过左下角的Add按钮,可以添加各种信息,如下图所示:可以通过By topic添加话题接收的信息,也可以通过By display type添加如力、路径等信息。
在这里插入图片描述

通过launch文件启动

命令启动缺陷比较大,比如要加载一个机器人模型就比较困难,相反,采用launch文件可以轻松解决。先上完整的launch文件,然后在解释其含义

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?xml version="1.0"?>
<launch>
  <!--设定命名空间-->
  <arg name="robot_namespace" default="/"/>

  <!--加载机器人模型文件-->
  <param name="robot_description" command="$(find xacro)/xacro '$(find arm_hand)/urdf/arm_hand.urdf.xacro'
  --inorder
  robot_namespace:=$(arg robot_namespace)"/>
 
  <!--Add a real joint_state publisher from hardware-->
  <node name="joint_state_publisher" pkg="joint_state_publisher" type="joint_state_publisher" />

  <!--get joint states and pub the robot tf-->
  <node name="robot_state_publisher" pkg="robot_state_publisher" type="robot_state_publisher" />

  <!--启动rviz-->
  <node name="rviz" pkg="rviz" type="rviz" args="-d $(find arm_hand)/config/visualization.rviz" required="true" />

</launch>

启动步骤:
1.设置命名空间
2.加载机器人模型文件,一般为.urdf或.xacro格式的XML文件
3.启动关节状态发布节点,用于发送关节命令给机器人
4.启动关节状态发布器,发布关节状态
5.启动rviz界面
启动结果如图所示,可以看到已经加载了机械臂模型。
在这里插入图片描述通过rqt_graph可以看到其节点关系图如下
在这里插入图片描述

rviz plugin 二次开发界面

现在还在研究阶段,可以先参照古月居写的rviz plugin