【ROS2实战】在中国地区 Ubuntu 22.04 上安装 ROS 2 Humble 教程


本文介绍如何在中国大陆环境下顺利安装 ROS 2 Humble,包括使用清华镜像源、解决 locale 和 GPG 密钥问题、安装 ROS 软件包以及配置自动环境加载。


🌟 ROS 2 版本简介

ROS 2 是机器人操作系统的第二代版本,目前主要有两个长期支持(LTS)版本:Humble HawksbillJazzy 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
EOF

sudo 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 太麻烦,可以添加到 bashrczshrc

对于 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

### 安装ROS 2 Humble版本的指南 #### 1. 系统准备 确保系统已更新至最新状态,并安装必要的工具: ```bash sudo apt update && sudo apt install -y curl gnupg lsb-release ``` 此步骤用于确保系统环境能够正确配置 ROS 2 的软件源[^3]。 #### 2. 添加ROS 2软件源 添加 ROS 2 的官方证书到系统中,以验证软件包的真实性: ```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 ``` 上述命令将 ROS 2 的软件源添加到系统的APT源列表中[^3]。 #### 3. 更新并安装ROS 2 Humble Desktop 更新APT缓存以包含新的软件源: ```bash sudo apt update ``` 安装 ROS 2 Humble 的桌面版本(Desktop),该版本包含大多数常用的工具和库: ```bash sudo apt install -y ros-humble-desktop ``` 此命令会安装 ROS 2 Humble 的核心功能以及图形化工具[^1]。 #### 4. 初始化rosdep `rosdep` 是一个工具,用于解决依赖项问题。初始化它以便后续使用: ```bash sudo apt install -y python3-rosdep sudo rosdep init rosdep update ``` 这一步骤确保所有依赖项都可以被正确解析和安装[^3]。 #### 5. 设置环境变量 每次打开新终端时都需要设置 ROS 2 的环境变量。可以通过以下命令完成: ```bash source /opt/ros/humble/setup.bash ``` 为了永久生效,可以将其添加到用户的 `.bashrc` 文件中: ```bash echo "source /opt/ros/humble/setup.bash" >> ~/.bashrc source ~/.bashrc ``` #### 6. 安装额外工具(可选) 如果需要开发或调试,可以安装一些额外的工具: ```bash sudo apt install -y python3-colcon-common-extensions python3-rosinstall ``` --- ### 注意事项 - 如果网络连接速度较慢,建议更换为国内镜像源,例如阿里云提供的 ROS 镜像源[^2]。 - 在虚拟机中编译大型项目可能会非常耗时,推荐在物理机上执行相关操作[^2]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值