更新!整理出《ROS机器人编程》第六章ppt讲义版配套培训视频(划到最下端),请对照书籍P128-147页学习。
【说明】除了第5章介绍的输入型命令外,还有各种其他工具可以帮助用户使用ROS。应该指出,这些GUI工具是对输入型命令工具的补充。如果包括ROS用户个人发布的工具,那么 ROS工具的数量很庞大。其中,本章讨论的工具是对于ROS编程非常有用的辅助工具。
【说明】RViz是ROS的三维可视化工具。它的主要目的是以三维方式显示ROS消息,可以将数据进行可视化表达。例如,可以无需编程就能表达激光测距仪(LRF)传感器中的传感器到障碍物的距离,RealSense、Kinect或Xtion等三维距离传感器的点云数据(PCD, Point Cloud Data),从相机获取的图像值等。
另外,利用用户指定的多边形(polygon)支持各种表现形式,交互标记 (Interactive Markers)可以表达接收来自用户节点的命令和数据并互交的过程。在 ROS中,机器人以URDF(Unified Robot Description Format,统一机器人描述格式)描述,它可以表示为三维模型,并且每个模型可以根据自由度进行移动或驱动,因此可以用于仿真或控制。
【说明】从Kinect获取人的骨骼后控制机器人的画面
【说明】从Intel RealSense获取的距离、红外线数据、颜色图像值
【说明】1、3D视图(3D view): 指屏幕的黑色部分。它是可以用三维方式查看各种数据的主屏幕。3D视图的背景颜色、固定框架、网格等可以在左侧显示的全局选项(Global Options)和网格(Grid)项目中进行详细设置。
2、显示屏(Displays): 左侧的显示屏是从各种话题当中选择用户所需的数据的视图的区域。如果单击屏幕左下方的[Add],选择屏幕将如上图所示。目前有大约30种不同的显示屏可供选择,我们将在下面的描述中详细介绍。
3、菜单(Menu): 菜单位于顶部。用户可以选择保存或读取显示屏状态的命令,还可以选择各种面板。
4、工具(Tools): 工具是位于菜单下方的按钮,允许用户用各种功能按键选择多种功能的工具,例如 Interact、Move Camera、Select,Focus Camera、Measure、2D Pose Estimate、2D Navigation Goal 以及Publish Point等。
5、视图(Views): 设定三维视图的视点
6、时间(Time): 显示当前时刻(wall time)、ROS Time以及他们各自经过的时间。这主要用于仿真,如果需要重新启动,请点击底部的[Reset]按钮。
【说明】使用RViz的过程中最常用的菜单应该是显示屏菜单。该显示屏菜单用于选择三维视图(3D View)画面所显示的信息,各项目的说明请参照上表。
【说明】除了三维可视化工具RViz之外,ROS还为机器人开发提供各种GUI工具。例如,有一 个将每个节点的层次结构显示为图形,且显示当前节点和话题状态的graph;将消息显示为二维图形的plot,等。从ROS Fuerte版本开始,这些GUI开发工具被称为rqt,它集成了30多种工具,可以作为一个综合的GUI工具来使用。另外,RViz也被集成到rqt的插件中,这使rqt成为ROS的一个不可缺少的GUI工具。
另外,顾名思义,rqt是基于Qt开发的,而Qt是一个广泛用于计算机编程的GUI编程的跨平台框架,用户可以方便自由地添加和开发插件。本节介绍rqt插件中的rqt_image_ view、rqt_graph、rqt_plot和rqt_bag。
【说明】以上解释了如何安装和使用rqt工具。尽管我们没有描述本节中的所有插件,但我们建 议读者尝试一下这里举的几个例子。它并不像ROS节点一样直接处理机器人或传感器,但 是可以用作帮助进行数据的存储、修改和分析的辅助工具。
原创声明:本篇文档为原创文档。欢迎转发转载引用,请注明出处。
喜欢本文请关注微信公众号“京天机器人”
Donghu Robot Laboratory, 2nd Floor, Baogu Innovation and Entrepreneurship Center,Wuhan City,Hubei Province,China
Tel:027-87522899,027-87522877
Robot System Integration
Artificial Intelligence Robots
Mobile Robot
Collaborative Robotic Arm
ROS modular robot
Servo and sensor accessories
Scientific Research
Professional Co Construction
Training Center
Academic Conference
Experimental instruction
Jingtian Cup Event