Qt 配置 ROS 开发环境

这篇具有很好参考价值的文章主要介绍了Qt 配置 ROS 开发环境。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

0、引言

原生的 Qt 框架是无法方便快捷地开发 ROS 项目的(比如不能创建 ROS 工作空间和功能包)。为此,ROS industrial提供了一个基于 Qt Creator 的 ROS 集成开发环境插件 —— ros_qtc_plugin,可以帮助 ROS 开发人员在 Qt Creator 中更轻松地编写、调试和测试 ROS 程序。

本文将着手探讨如何在 Qt Creator 上安装该插件,为 Qt 配置 ROS 开发环境。

  • 插件 Github 仓库地址:https://github.com/ros-industrial/ros_qtc_plugin
  • 插件维基:https://ros-qtc-plugin.readthedocs.io/en/latest/

💬 如果您的计算机还没有安装 Qt 环境的话,可以参考这篇文章。
💬 如果您的计算机还没有安装 ROS 的话,可以参考这篇文章。

当然,插件的 Github 仓库的 README 文档已经提供了 ros_qtc_plugin 插件的详尽依赖、构建及安装教程,所以本文从本质上来说也只是搬运/转载:
qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu

1、本教程使用到的相关软件或产品

  1. Ubuntu 20.04.6 LTS
  2. ROS Noetic Ninjemys LTS
  3. Qt 6.2.4 LTS 以及 Qt 5.14.2
  4. Qt Creator 10.0.1 以及 Qt Creator 4.11.1
  5. ros_qtc_plugin

2、🔔 须知

插件的 Github 仓库的 README 文档提供了两种方式可以为 Qt 配置 ROS 开发环境:直接安装带插件的 Qt Creator(暂不推荐) 或者 在原生的 Qt Creator 上安装 ros_qtc_plugin 插件

在原生的 Qt Creator 上安装 ros_qtc_plugin 插件 又分为了 在原生新版本 Qt Creator 上安装 ros_qtc_plugin 插件(推荐) 以及 在原生较老版本 Qt Creator 上安装 ros_qtc_plugin 插件

💬 如何查看自己的 Qt 和 Qt Creator 版本?

💠 下面将通过三个2级标题分别展开以上三种为 Qt 配置 ROS 开发环境的办法, 读者根据自身需要选择其中一种即可

2.1、直接安装带插件的 Qt Creator(暂不推荐)

💬 无论您之前是否安装过原生 Qt 环境,您都可以直接安装带插件的 Qt Creator。它与原生的 Qt Creator 是可以同时存在的,各自独立运行。

qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu

我们可以通过 snap 商店安装带 ROS 对应的插件的 Qt Creator,这样做的好处是可以确保 Qt Creator 版本和 ROS 插件版本会使用匹配的 API ,并且还能在软件新版本发布后自动更新。我们可以通过搜索软件中心或者从命令行安装:

sudo snap install qtcreator-ros --classic

qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu

安装完成后我们就能在桌面上打开带插件的 Qt Creator 了(从下图中可以看到同时有 Qt CreatorQt Creator ROS 是没有任何问题的):
qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu

这样虽然方便快捷,但通过 snap 商店下载的带插件的 Qt Creator 默认语言为英文并且没有中文可选项,笔者并没有研究如何为其添加中文依赖。此外,或许是缺乏某些关键设置,目前下载下来的 Qt Creator ROS 是无法直接访问用户目录的文件的(除非手动输入文件路径),您可以查看这个 issue 了解更多情况

2.2、在原生新版本 Qt Creator 上安装 ros_qtc_plugin 插件(推荐)

💬 这里所说的“新版本的 Qt Creator”是指 Qt Creator 5.0.0 及之后的版本。

  1. 💠 本节笔者使用的 Qt 版本为 6.2.4,Qt Creator版本为 10.0.1。

  2. 首先前往 ros_qtc_plugin 插件的 Github 仓库,下载其发布版本(请注意核对插件版本是否与您的 Qt Creator 版本匹配。比如笔者的 Qt Creator 版本为 10.0.1,那么笔者就要选择 10.0 版本的 ros_qtc_plugin 插件):
    qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu

    下载构建好的插件即可:ROSProjectManager-10.0-Linux-x86_64.zip

  3. 下载完成后,将其移动到自己的 Qt Creator 的安装根目录(笔者安装目录为 ~/Qt/Tools/QtCreator)下:
    qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu

    如果您是通过在线安装程序安装的 Qt Creator,则其安装根目录为 ~/Qt/Tools/QtCreator;如果您是通过离线安装程序安装的 Qt Creator,则其安装根目录为 ~/qtcreator-${version}

  4. 在当前目录下打开一个终端:
    qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu

  5. 使用 unzip 命令将压缩包中的内容提取到当前文件夹:
    qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu

    在使用 Linux 命令时,自动补全是一个很常用的技巧;提取完成后,就可以删除压缩包了

  6. 重启 Qt Creator。重启后在新建项目对话框里就能创建 ROS 工作空间了:
    qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu

  7. 同时新建文件对话框里也包含了不少 ROS 相关文件模板了:
    qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu

2.3、在原生较老版本 Qt Creator 上安装 ros_qtc_plugin 插件

⚠️ 较老版本的 Qt Creator(Qt Creator 5.0.0 之前)是不支持安装插件的,所以虽然本节标题是“在原生较老版本 Qt Creator 上安装 ros_qtc_plugin 插件”,我们也是要下载更新版本的 Qt Creator 然后再安装插件的。只不过本节提供的方法无需重装 Qt。

💠 本节笔者使用的 Qt 版本为 5.14.2,Qt Creator版本为 4.11.1。如下图所示:
qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu

打开 Qt Creator 后,我们可以在 “帮助” ==> “关于插件” 中查看已安装的插件,但很可惜该版本的 Qt Creator 似乎并不支持安装插件。如下图所示:
qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu

但好在,插件的源码文件内提供了一个脚本可以使用该脚本下载与插件版本匹配的 Qt Creator,我们可以使用脚本下载的 Qt Creator 安装插件。当然这同时也意味着下载完成之后我们的系统内将会同时存在两个版本的 Qt Creator,不过这并不影响正常使用。下面是详细教程:

  1. 首先前往 ros_qtc_plugin 插件的 Github 仓库,下载其发布版本:
    qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu

    我们需要下载两个东西,构建好的插件和源码:

    1. ROSProjectManager-10.0-Linux-x86_64.zip
    2. Source code (zip)
  2. 下载完成后,我们得到两个文件 —— “ROSProjectManager-10.0-Linux-x86_64.zip” 和 “ros_qtc_plugin-10.0.zip”。将其拷贝到我们安装 Qt 的根目录(笔者目录为 ~/Qt5.14.2)下,如下图所示:
    qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu

  3. 在当前目录下打开终端并使用 unzip ros_qtc_plugin-10.0.zip 命令解压源码文件或者直接右击压缩包选择“提取到此处(E)”都可;

    只需解压源码压缩包ros_qtc_plugin-10.0.zip

  4. 解压完成后就可以删除源码压缩包了,可以看到该目录多了一个名为 “ros_qtc_plugin-10.0” 的文件夹,进入该文件夹,可以看到里面有一个名为 “setup.py” 的脚本文件,如下图所示:
    qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu

    10.0 版本的 ros_qtc_plugin 插件默认匹配 Qt 6.4,当然我们也可以自己指定 Qt 版本。我们可以在 setup.py 旁边的名为 versions.yaml 的文件内内查看这些信息(这两个文件都可以用文本编辑器打开以查看/修改内容)。而 Qt 6.4 虽然不是 LTS 版本,但其支持的平台刚好是 Ubuntu 20.04,也就是笔者的 Ubuntu 版本。

  5. 既然要下载 Qt 6.4,那么可以创建一个空文件夹来存放它,执行下方命令或者直接界面上创建文件夹:

    mkdir ~/Qt6.4
    

    qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu

  6. 若要构建插件源码,则需要安装相关依赖,但我们已经下载了构建好的插件,可以不用安装依赖。如果需要,执行下方命令以安装依赖:

    sudo apt install libgl1-mesa-dev ninja-build libyaml-cpp-dev libqtermwidget5-0-dev libutf8proc-dev
    
  7. 为了使用 setup.py 脚本,我们还需要额外的 python 依赖,执行下方命令以安装依赖:

    pip install pyyaml requests py7zr
    

    如果 pip install 下载速度太慢,可以参考这篇文章。

  8. 安装完成之后,前往 setup.py 脚本所在文件夹,打开一个终端并使用下方命令执行脚本:
    qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu

    python3 setup.py --install_path ~/Qt6.4
    # 安装路径指定为我们上面创建的 “Qt6.4” 空文件夹
    

    如果在第6步时没有安装构建脚本源码的相关依赖,则这一步在执行脚本的过程中可能会报一些 Warning,但无伤大雅无视即可。

  9. 执行脚本大概耗时1分钟,完成后打开 “Qt6.4” 文件夹可以看到新增了两个文件夹,如下图所示:
    qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu

  10. 将新下载的 Qt 和 Qt Creator 路径添加到系统环境变量中:

    gedit ~/.bashrc
    
  11. 在打开的文本编辑器尾部插入如下两句代码:

    export PATH=$PATH:/home/xjy/Qt6.4/6.4.0/gcc_64/bin/
    export PATH=$PATH:/home/xjy/Qt6.4/Tools/QtCreator/bin/
    # 请根据自己的用户名称修改用户根目录
    

    qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu

  12. 保存退出,并 source 一下:

    source ~/.bashrc
    
  13. 完成后,我们就可以打开新的 Qt Creator 10.0.0 了,使用如下命令启动。

    ~/Qt6.4/Tools/QtCreator/bin/qtcreator
    

    打开后如下图所示:
    qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu

    可以看到下方有三条提示信息:
    qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu

    1. 第一个信息是询问我们要不要开始软件使用引导,相当于问我们要不要过一遍新手教程。
    2. 第二个信息是询问我们是否希望将 Qt Creator 与 Qt 安装链接起来,以便自动注册 Qt 版本和工具包;如果不链接,可以后面手动添加 Qt 版本。
    3. 第三个信息是在告诉我们我的系统可能无法满足 clangd 的内存需求,因此禁用了 clangd 作为 C/C++ 代码模型的后端。当启用 clangd 时,Qt Creator 在高亮显示代码、完成符号等方面完全支持现代 C++。与内置代码模型相比,这在 CPU 负载和内存使用方面的成本更高,因此在较旧的机器和/或遗留代码上,内置代码模型可能是更好的选择。
  14. 对于上一步提到的三条提示信息的第一条,我们可以直接忽略;而第二条如果我们在这里忽略了,那么后续我们就需要前往 “编辑(E)”>“Preferences”>“构建套件(Kit)”>“Qt 版本” 手动添加或者链接到 Qt;第三条可以忽视,影响不大,后续可以前往 “编辑(E)”>“Preferences”>“C++”>“Clangd” 选择是否启用 clangd:
    qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu
    qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu
    qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu

  15. 但是!我们可以选择不忽略第二条提示信息,直接点击提示栏给的 “Link with Qt” 按钮,此时会弹出对话框要我们链接 Qt 安装,我们直接链接之前安装的那个老版本 Qt 的安装目录即可:
    qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu

    链接完成之后会提示“重启 Qt Creator 以改动生效”,我们点击“立刻重启”就行

  16. 当然,完成上面所有步骤后,我们通过 Qt Creator 的应用程序图标打开的 Qt Creator 仍然是之前那个版本的 Qt Creator,毕竟这个图标在之前就存在了:
    qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu
    qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu
    我们有两个解决办法:

    1. 创建符号链接,以后在终端中通过命令来启动新的带 ros_qtc_plugin 的 Qt Creator:
      首先我们通过以下命令创建符号链接:

      sudo ln -sn ~/Qt6.4/Tools/QtCreator/bin/qtcreator /usr/local/bin/qtcreator-ros
      

      随后就可以在终端中使用如下命令启动带插件的 Qt Creator了:

      qtcreator-ros
      
    2. 直接修改 Qt Creator 应用程序图标的启动文件路径:
      首先我们前往以下路径找到名称中带“qtcreator”的 .desktop 文件,用文本编辑器打开:

      /usr/share/applications
      # 如果上面这个路径没有,再去下面这个
      ~/.local/share/applications
      

      qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu

      修改其中的 Exec 字段的值为我们 Qt Creator 10.0.0 可执行文件的路径。重启 Ubuntu,再点击 Qt Creator 图标运行的就是带插件的 Qt Creator 了。

  17. 以上任选一个解决办法后,就能很方便地启动新安装的 Qt Creator 了。到这一步,我们就能安装插件了:

    1. 打开新安装的 Qt Creator,前往 “帮助”==>“关于插件” 打开插件对话框:
      qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu
      点击 “Install Plugin…” 按钮;
    2. 找到我们下载好的插件压缩包 ROSProjectManager-10.0-Linux-x86_64.zip 然后一路 “下一步” 就行了:
      qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu
    3. 完成后点击插件对话框的 “确定” 按钮,此时会提示让我们重启 Qt Creator,点击 “Restart Now”。重启后在新建项目对话框里就能创建 ROS 工作空间了:
      qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu

3、查看自己的 Qt 和 Qt Creator 版本

3.1、查看 Qt 版本

  1. 您可以前往您的 Qt 安装目录,其中第一个文件夹名称即您的 Qt 框架版本号:
    qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu
    (图中 Qt 的版本为 6.2.4)
  2. 还有个方法是:打开 Qt Creator,前往 “编辑”>“Preferences” 打开首选项对话框;在 “构建套件(Kit)”>“Qt 版本” 可以查看 Qt 版本号:
    qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu
    qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu
    (图中 Qt 的版本为 6.2.4)

3.2、查看 Qt Creator 版本

打开 Qt Creator,前往 “帮助”==>“About Qt Creator…” 可以查看 Qt Creator 的相关信息(包括 Qt Creator 的版本号):
qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu
qt配置ros开发环境,Qt开发,ROS,Qt+librviz开发,qt,ubuntu
(图中 Qt Creator 的版本为 10.0.1)

返回🔔 须知

4、后续文章

在 Qt Creator 上创建 ROS 项目并新建/导入 ROS 包文章来源地址https://www.toymoban.com/news/detail-621962.html

到了这里,关于Qt 配置 ROS 开发环境的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 完整的Ubuntu20.04+ROS+PX4+Anaconda+PyTorch+GPU+CUDA+CUDNN+XTdrone配置智能无人机开发环境搭建过程

    我之前写了如何在Ubuntu18下搭配一系列软件的教程,然后近期重新安装20.04版本,于是重新记录一些东西,但是众多东西之前已经有了,所以我在这里知会在一些不同的地方和新增的地方特别说明,其他的请大家看之前的博客。 在搞了这么久的ros和px4之后,我也明白了xtdrone是

    2024年02月05日
    浏览(70)
  • RK356x基于Ubuntu20.04搭建ROS开发环境

    CPU:RK356x 操作系统:arm64 Ubuntu20.04 1、首先确保开发板是可以联网的。

    2024年01月20日
    浏览(44)
  • 机器人学环境配置(VM-16 + Ubuntu-20.04 + ROS-noetic)

    目录 一、安装好 VMware Pro 16(基于win11) 1. 下载 2. 安装过程 二、成功配置Ubuntu20.04.6 1. 下载 2. 新建虚拟机进行配置 3. 安装操作系统镜像 4. 更改Ubuntu软件源  5. Windows与Ubuntu跨系统复制粘贴 三、成功配置与Ubuntu20.04对应的ROS 1. 按ctrl+alt+t打开终端并在其中依次输入以下代码 2

    2024年02月20日
    浏览(55)
  • ubuntu20.04配置ros noetic和cuda,cudnn,anaconda,pytorch深度学习的环境

    这里介绍下本篇文章的目的,为了方便自己日后在其他主机上搭建环境,也为了帮助遇到相同问题的人。本篇文章主要是解决ubuntu20.04搭建机械臂视觉抓取的环境部署问题。第一个环境了ROS环境,第二个环境是深度学习yolov5的环境。 这里推荐鱼香ros的便携式安装方法,这里感

    2024年02月07日
    浏览(93)
  • 在 Qt Creator 上创建 ROS 项目并新建/导入 ROS 包

    ⚠️ 在开始之前,您需要确保您已经为 Qt 配置好了 ROS 开发环境了。如果您还没有配置好,可以参考这篇文章 本文将着手探讨如何在 Qt Creator 上编辑 ROS 项目(工作空间)。 Ubuntu 20.04.6 LTS ROS Noetic Ninjemys LTS Qt 6.2.4 LTS Qt Creator 10.0.1 在(零)基础概念篇介绍 ROS 工作空间 时曾说

    2024年01月23日
    浏览(42)
  • Ubuntu18.04安装配置使用Intel RealSense D435i深度相机以及在ROS环境下配置

    最近因为学习开发需要,要开始接触一些视觉相关的内容,拿到了一个Inter 的D435i深度相机,记录一下在Ubuntu18环境下配置SDK 包的历程 注意 : Intel官方最新版的librealsense版本与ROS1的ROS Wrapper是 版本不一致的 ,且ROS Wrapper支持的是较低版本的SDK ,具体可以去网站查看 如果完全

    2024年02月07日
    浏览(53)
  • 【番外】【Airsim in Windows & ROS in WSL2-Ubuntu20.04】环境配置大全

    AirSim的使用着实是一件麻烦事,我的配置过程可谓是坎坷重重。原因在于AirSim对于电脑要求较高,所以即使我手头有一个Interl mini PC,但是由于没有独立显卡,也没有办法实现在Ubuntu环境下使用AirSim。而电脑又不太想装双系统,并且在VMware虚拟机里面没有办法使用电脑的独立

    2024年02月19日
    浏览(50)
  • Linux配置QT Creator环境:ubuntu中安装QT Creator环境

      目前市面上很多公司使用QT Creator进行界面开发,基本都会选择在Linux环境进行,优点不仅是市场所需,更是方便后期代码的移植,相较于Windows系统,Linux系统移植性非常好。故此篇文章,介绍如何在Linux环境中安装QT Creator环境(注:本作者以QT Creator 5.14.2进行介绍,大家

    2024年02月13日
    浏览(46)
  • ROS学习笔记01、安装Ubuntu18.04以及ROS环境

    马上开学,目前学校很多实验室都是人工智能这块,大部分都是和机器人相关,然后软件这块就是和cv、ros相关,就打算开始学习一下。 本章节是虚拟机安装Ubuntu18.04以及安装ROS的环境。 学习教程:【Autolabor初级教程】ROS机器人入门,博客中一些知识点是来源于赵老师的笔记

    2023年04月08日
    浏览(60)
  • 【PX4】Ubuntu20.04+ROS Noetic 配置PX4-v1.13和Gazebo11联合仿真环境【教程】

    写在前面,目前中文互联网上关于 PX4 飞控的学习资料较少,笔者查阅了大量的资料整理成这篇博客,贡献一些学习内容,码字不易,如果帮助到您,请您帮我点点赞。 安装Ubuntu可以查看这篇教程,安装ros可以查看这篇教程,这里就不再赘述了。 ● 在使用apt安装的过程中(

    2024年02月08日
    浏览(53)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包