ROS2系列知识【1】:Ubuntu20.4上ROS2- Rolling版安装

提要

在安装ROS2的版本,需要关注其最新版本;在近期的四个版本是:

1)rolling 2)humble 3)Galactic 4)Foxy。见ROS Documentation 。本文针对最新版的ros2的安装进行叙述。

一、设置语言环境

确保您有一个支持 UTF-8 的语言环境。如果您处于最小环境(例如 docker 容器)中,则语言环境可能是最小的,例如 POSIX。我们使用以下设置进行测试。但是,如果您使用不同的 UTF-8 支持的语言环境,应该没问题。

locale  # check for UTF-8

sudo apt update && sudo apt install locales
sudo locale-gen en_US en_US.UTF-8
sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
export LANG=en_US.UTF-8

locale  # verify settings

二、设置来源

您需要将 ROS 2 apt 存储库添加到您的系统。首先,通过检查此命令的输出确保启用了 Ubuntu Universe 存储库。

apt-cache policy | grep universe
这应该输出如下一行:
500 http://us.archive.ubuntu.com/ubuntu jammy/universe amd64 Packages
    release v=22.04,o=Ubuntu,a=jammy,n=jammy,l=Ubuntu,c=universe,b=amd64

如果您没有看到像上面那样的输出行,请使用这些说明启用 Universe 存储库。

sudo apt install software-properties-common
sudo add-apt-repository universe
现在将 ROS 2 apt 存储库添加到您的系统。首先用apt授权我们的GPG密钥。
sudo apt update && sudo apt install curl gnupg lsb-release
sudo curl -sSL https://ghproxy.com/https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
然后将存储库添加到您的源列表。
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(source /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null

三、安装 ROS 2 软件包

设置存储库后更新您的 apt 存储库缓存。

sudo apt update

ROS 2 软件包建立在经常更新的 Ubuntu 系统上。始终建议您在安装新软件包之前确保您的系统是最新的。

sudo apt upgrade

由于 Ubuntu 22.04 中的早期更新,重要的是在安装 ROS 2 之前更新 systemd 和 udev 相关包。在未升级的新安装系统上安装 ROS 2 的依赖项可能会触发关键系统包的删除。

有关详细信息,请参阅 ros2/ros2#1272 和 Launchpad #1974196。

桌面安装(推荐):含(ROS、RViz、演示、教程)的安装。

sudo apt install ros-rolling-desktop

ROS-Base Install (Bare Bones):通信库、消息包、命令行工具。没有 GUI 工具。

sudo apt install ros-rolling-ros-base

获取安装脚本
通过采购以下文件来设置您的环境。

source /opt/ros/rolling/setup.bash
尝试一些例子
说者听者
如果您在上面安装了 ros-rolling-desktop,您可以尝试一些示例。

在一个终端中,获取 setup 文件,然后运行 ​​C++ talker:
source /opt/ros/rolling/setup.bash
ros2 run demo_nodes_cpp talker
在另一个终端中获取设置文件,然后运行 ​​Python 侦听器:
source /opt/ros/rolling/setup.bash
ros2 run demo_nodes_py listener

你应该看到说话者说它正在发布消息,而听众说我听到了这些消息。这将验证 C++ 和 Python API 是否正常工作。

  • *安装后的后续步骤

继续学习教程和演示来配置您的环境,创建您自己的工作区和包,并学习 ROS 2 核心概念。

  • *使用 ROS 1 桥接器

ROS 1 桥可以连接从 ROS 1 到 ROS 2 的主题,反之亦然。请参阅有关如何构建和使用 ROS 1 桥的专用文档。

  • *其他 RMW 实施(可选)

ROS 2 使用的默认中间件是 Fast DDS,但中间件 (RMW) 可以在运行时更换。请参阅有关如何使用多个 RMW 的指南。

四、卸载

如果您需要卸载 ROS 2 或在从二进制文件安装后切换到基于源的安装,请运行以下命令:

sudo apt remove ~nros-rolling-* && sudo apt autoremove

您可能还想删除存储库:

sudo rm /etc/apt/sources.list.d/ros2.list
sudo apt update
sudo apt autoremove
Consider upgrading for packages previously shadowed.

sudo apt upgrade

五、历史上的ros版本

5.1 ROS2版本

  • 目前还在用的ros2版本是:

1)rolling 2)humble 3)Galactic 4)Foxy

  • 过期的ROS2版本

Ardent ApaloneBouncy Bolson
Crystal Clemmys Dashing Diademata Eloquent Elusor

5.2 ROS1版本

  • 目前还在用的ros1版本是:

neotic melodic

  • 过期的ROS1版本是

C Turtle Diamondback Electric Emys Fuerte Turtle Groovy Galapagos Hydro Medusa Indigo Igloo Jade Turtle Kinetic Kame Lunar Loggerhead

  • 因此,在文档查看的时候,需要知道,哪些是过期的,知道其参考意义。
  • 查看任何版本的文章:
    ROS2系列知识【1】:Ubuntu20.4上ROS2- Rolling版安装

六、安装中存在问题和解决

6.1 上不去github从而失败

在上面的语句:

sudo curl -sSL https://ghproxy.com/https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg 中,

原文为:

sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg

由于不知名原因,上不去github,可以通过加《https://ghproxy.com/》来完成。

6.2 出现:E:…package is broken

这是因为数据源混乱而导致,具体原因是:

数据源文件不一致造成,focal和bionic两个版本号。需要改成lsb_release -a查看到的那个版本号。

ROS2系列知识【1】:Ubuntu20.4上ROS2- Rolling版安装

参考文章:

Using Qt Designer and ROS2 together for a GUI – ROS Answers: Open Source Q&A Forum

Ubuntu (Debian) — ROS 2 Documentation: Rolling documentation

ROS 2 Documentation: Foxy documentation

ROS 2 Documentation: Rolling documentation

Original: https://blog.csdn.net/gongdiwudu/article/details/125856465
Author: 无水先生
Title: ROS2系列知识【1】:Ubuntu20.4上ROS2- Rolling版安装

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/558882/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球