ROS2:Humble 安装详解(Ubuntu 22.04)

ROS 2(Robot Operating System 2)是机器人开发的重要框架,而 Humble Hawksbill 是 ROS 2 的一个长期支持(LTS)版本,适用于 Ubuntu 22.04 。本文将详细介绍如何在 Ubuntu 22.04 上安装 ROS 2 Humble,并完成基本环境配置。

1. 系统要求

  • 操作系统: Ubuntu 22.04 (Jammy Jellyfish)
  • 语言环境: 必须支持 UTF-8 编码

2. 设置语言环境

ROS 2 要求系统支持 UTF-8 编码,可以使用以下命令检查并设置:

bash 复制代码
locale  # 检查当前语言环境是否支持 UTF-8

如果未正确配置 UTF-8,执行以下命令进行设置:

bash 复制代码
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  # 验证设置是否成功

注意:语言环境可以不同,但必须支持 UTF-8 编码。


3. 设置 ROS 2 软件源

启用 Universe 存储库

bash 复制代码
sudo apt install software-properties-common
sudo add-apt-repository universe

添加 ROS 2 APT 存储库

首先安装必要的依赖:

bash 复制代码
sudo apt update && sudo apt install curl gnupg lsb-release -y

然后添加 ROS 2 GPG 密钥:

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

最后,将 ROS 2 存储库添加到系统源列表:

bash 复制代码
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

4. 安装 ROS 2 Humble

更新 APT 缓存并升级系统:

bash 复制代码
sudo apt update
sudo apt upgrade

安装桌面版 ROS 2(推荐)

桌面版包含 ROS 核心、RViz 可视化工具、示例和教程:

bash 复制代码
sudo apt install ros-humble-desktop python3-argcomplete

安装 colcon 构建工具

colcon 是 ROS 2 的官方构建工具:

bash 复制代码
sudo apt install python3-colcon-common-extensions

5. 配置环境

每次打开新终端时,需要运行以下命令以配置 ROS 2 环境:

bash 复制代码
source /opt/ros/humble/setup.bash

为了避免每次手动执行,可以将其添加到 ~/.bashrc 文件中:

bash 复制代码
echo "source /opt/ros/humble/setup.bash" >> ~/.bashrc

这样,每次启动新的终端时,ROS 2 环境会自动加载。


6. 卸载 ROS 2(可选)

如果需要卸载 ROS 2 Humble,可以执行以下命令:

bash 复制代码
sudo apt remove ~nros-humble-* && sudo apt autoremove

还可以删除 ROS 2 存储库:

bash 复制代码
sudo rm /etc/apt/sources.list.d/ros2.list
sudo apt update
sudo apt autoremove
sudo apt upgrade

结语

至此,ROS 2 Humble 已成功安装并配置完毕!你可以开始探索 ROS 2 的强大功能,如编写节点、使用 RViz 进行可视化、以及构建自己的机器人应用。
老徐,2026/04/05

相关推荐
米糕闯编程4 天前
鱼香ros2(十二)C++话题订阅与发布
开发语言·c++·ros2·话题
朝朝辞暮i6 天前
C++ 第 36 课:Action——机械臂/VLA 非常重要
开发语言·c++·算法·ros2
朝朝辞暮i6 天前
C++ 第 39 章: 阶段性总复习——类、对象、构造、继承、this、指针与智能指针
开发语言·c++·算法·ros2
朝朝辞暮i7 天前
C++ 第 40 章:ROS2 Publisher + Timer + Subscriber + Callback + Executor 完整闭环
开发语言·c++·算法·ros2
朝朝辞暮i7 天前
C++ 第 38 课:线程、SingleThreadedExecutor、MultiThreadedExecutor、Callback Group
开发语言·c++·算法·ros2
小奇不哭7 天前
ROS2 单节点,RGB-D 深度相机局部路径提取 + B 样条平滑路径 + YOLOv8 障碍物检测 + 深度测距,用于移动机器人视觉局部循迹。
python·yolov8·ros2·cv2·路径探索循迹
zhangrelay9 天前
机械臂末端规划智能模型的误区演示
linux·笔记·学习·ubuntu·ros2
爱就是恒久忍耐10 天前
Zenoh与ROS2通信
ros2
风合星语22 天前
2026 ROS 2 Lyrical C++ 入门(五):Action 实战——任务反馈、取消与超时处理
c++·机器人·ros2·异步编程·lyrical
浅梦语1124 天前
32-1 nav2_map_server实际作用与用法图解
ros2·nav2