警告

您正在阅读的 ROS 2 文档版本已达到 EOL(生命周期结束),不再受官方支持。如果您想了解最新信息,请访问 Jazzy.

RQt 概述和用法

概述

RQt 是一个图形用户界面框架,它以插件的形式实现了各种工具和界面。人们可以在 RQt 中以停靠窗口的形式运行所有现有的图形用户界面工具!这些工具仍能以传统的独立方式运行,但 RQt 使其更易于在单一屏幕布局中管理所有不同的窗口。

您可以通过以下方式轻松运行任何 RQt 工具/插件:

rqt

通过该图形用户界面,您可以选择系统中任何可用的插件。您还可以在独立窗口中运行插件。例如,RQt Python 控制台:

玫瑰2 运行 rqt_py_console rqt_py_console

用户可以通过以下两种方法之一为 RQt 创建自己的插件 PythonC++. 20 多个插件 是在 ROS 1 中创建的,这些插件目前正在移植到 ROS 2(截至 2018 年 12 月、 更多信息).

系统设置

从 Debian 安装

苏都 适切 安装 ros-foxy-rqt*

从源头开始建设

参见 从源代码构建 RQt.

RQt 组件结构

RQt 由三个元软件包组成:

  • rqt - 核心基础设施模块。

  • rqt_common_plugins - 用于构建工具的后台工具。

    TODO:截至 2018 年 12 月,该元软件包在 ROS 2 中还不可用,因为其中包含的插件尚未全部移植。

  • rqt_robot_plugins - 在运行期间与机器人互动的工具。

    TODO:截至 2018 年 12 月,该元软件包在 ROS 2 中还不可用,因为其中包含的插件尚未全部移植。

RQt 框架的优势

与从头开始构建自己的图形用户界面相比:

  • 图形用户界面的标准化通用程序(启动-关闭钩子、恢复以前的状态)。

  • 在一个窗口中可以停靠多个部件。

  • 轻松将现有的 Qt widget 变成 RQt 插件。

  • 希望在以下方面得到支持 ROS 答案 (问题的 ROS 社区网站)。

从系统架构的角度来看:

  • 支持多平台(基本上支持任何平台 QT 和 ROS 运行)和多语言(如Python, C++).

  • 可管理的生命周期:使用通用应用程序接口的 RQt 插件更易于维护和重用。

更多阅读