【ROS2实战】在中国地区 Ubuntu 22.04 上安装 ROS 2 Humble 教程
本文介绍如何在中国大陆环境下顺利安装 ROS 2 Humble,包括使用清华镜像源、解决 locale 和 GPG 密钥问题、安装 ROS 软件包以及配置自动环境加载。
🌟 ROS 2 版本简介
ROS 2 是机器人操作系统的第二代版本,目前主要有两个长期支持(LTS)版本:Humble Hawksbill 和 Jazzy Jaguar。
- Humble Hawksbill:推荐用于 Ubuntu 22.04(Jammy Jellyfish),支持最新功能和改进。
- Jazzy Jaguar:推荐用于 Ubuntu 24.04(未来版本),适合需要最新功能的用户。
对于 Ubuntu 22.04 用户,建议选择 Humble Hawksbill 版本。
📌 环境要求
- 操作系统:Ubuntu 22.04(Jammy Jellyfish)
- 网络:可访问清华大学开源镜像站(或使用科学上网)
- 权限:具有
sudo
权限
1️⃣ 更换系统软件源(清华镜像)
为加快 ROS 相关依赖的下载速度,推荐先更换系统的 apt 源。
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
然后替换为清华的源(Jammy 版本):
sudo tee /etc/apt/sources.list > /dev/null <<EOF
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy main restricted universe multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-updates main restricted universe multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-backports main restricted universe multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-security main restricted universe multiverse
EOFsudo apt update
2️⃣ 设置语言环境(locale)
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 # 验证
3️⃣ 添加 ROS 2 的 APT 软件源
sudo apt install software-properties-common
sudo add-apt-repository universe
sudo apt update
sudo apt install curl -y
添加 GPG 密钥:
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
添加 ROS 软件源:
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] \
http://packages.ros.org/ros2/ubuntu $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | \
sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null
4️⃣ 更新系统并安装 ROS 2
更新系统(⚠️ 非常关键,避免依赖错误):
sudo apt update
sudo apt upgrade
推荐安装完整桌面版:
sudo apt install ros-humble-desktop
或者仅安装基础 ROS 工具(无 GUI):
sudo apt install ros-humble-ros-base
开发者工具(建议安装):
sudo apt install ros-dev-tools
5️⃣ 设置 ROS 环境变量(自动加载)
每次打开终端都需要手动执行 source
太麻烦,可以添加到 bashrc
或 zshrc
:
对于 bash 用户:
echo "source /opt/ros/humble/setup.bash" >> ~/.bashrc
source ~/.bashrc
对于 zsh 用户:
echo "source /opt/ros/humble/setup.zsh" >> ~/.zshrc
source ~/.zshrc
6️⃣ 验证安装(Talker/Listener 示例)
打开一个终端:
ros2 run demo_nodes_cpp talker
再打开另一个终端:
ros2 run demo_nodes_py listener
如果输出正常说明 ROS 2 安装成功!
🧹 卸载 ROS 2(可选)
sudo apt remove ~nros-humble-* && sudo apt autoremove
sudo rm /etc/apt/sources.list.d/ros2.list
sudo apt update