乐于分享
好东西不私藏

Ubuntu系统安装ROS2教程 Ubuntu 22.04 + ROS 2 Humble

Ubuntu系统安装ROS2教程 Ubuntu 22.04 + ROS 2 Humble

🛠️ 准备工作(5分钟)

在开始前,有几件事得先确认好:

  • 备份重要数据:虽然安装过程很安全,但备份数据能让你更安心。

  • 确保网络稳定:整个安装过程需要联网,建议有稳定的网络环境。

  • 确认系统版本:打开终端 (Ctrl+Alt+T),输入 lsb_release -a,确保输出是 Ubuntu 22.04.5 LTS

  • 更新系统:将系统升级到最新,避免依赖问题。

  • sudo apt update && sudo apt upgrade -y
  •  🛠️正式安装(10-15分钟)

准备工作做完,可以开始安装 ROS 2 Humble 了。

1. 设置系统语言环境

ROS 2 需要 UTF-8 编码环境来避免乱码等问题。

# 安装 locales 工具
sudo apt install locales
# 生成所需的 UTF-8 语言包
sudo locale-gen en_US en_US.UTF-8
# 将 UTF-8 设为系统默认语言环境
sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
# 让当前终端立即生效
export LANG=en_US.UTF-8
# 验证设置是否正确 (输出应包含 "en_US.UTF-8")
locale

2. 添加 ROS 2 软件源

添加官方源前需启用Ubuntu的“universe”源并安装curl

# 启用 universe 源并安装curl
sudo apt install software-properties-common
sudo add-apt-repository universe
sudo apt update && sudo aptinstall curl-y
方式(推荐):使用官方源,更权威
# 官方 GPG 密钥

sudo curl -sSL 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 $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null

# 更新并安装

sudo apt update

sudo apt install ros-humble-desktop

3. 安装 ROS 2 Humble 桌面版

推荐新手安装桌面版 (ros-humble-desktop),它包含 RViz、Gazebo 等工具,方便学习和开发。

# 更新软件源 (加入 ROS 2 源)

sudo apt update

# 安装 ROS 2 Humble 桌面完整版

sudo apt install ros-humble-desktop

如果网络不稳定出现依赖问题,运行 sudo apt --fix-broken install,再重新执行上述命令-

4. 设置环境变量

为方便使用,将ROS2环境变量自动添加到终端启动脚本(~/.bashrc)中。echo"source /opt/ros/humble/setup.bash">> ~/.bashrc

source ~/.bashrc

5. 安装并配置rosdep (可选但推荐)

rosdep能方便地安装项目依赖,是后续开发的常用工具。

sudo apt install python3-rosdep
sudo rosdep init
rosdep update
(如果sudo rosdep init报错或rosdep update超时,是网络问题,可搜索国内镜像解决方案)

✅ 验证安装 (3分钟)

装完用“小海龟”示例测试下。

  • 通信测试 (talker-listener)

  • # 终端 A
  • ros2 run demo_nodes_cpp talker
  • # 终端 B (新开一个)
  • ros2 run demo_nodes_py listener
  • 如果B能不断收到A发来的消息,说明ROS 2核心功能正常-11
  • 图形界面测试 (turtlesim)

    # 终端 A (启动小海龟窗口)

  • ros2 run turtlesim turtlesim_node

  • # 终端 B (启动键盘控制节点)

  • ros2 run turtlesim turtle_teleop_key