文章标签:ROS2 Humble 树莓派 环境搭建 Linux
所属系列:从零搭建树莓派智能小车(共 6 篇)
难度:入门 ★☆☆☆☆
预计耗时:40 分钟阅读

从零搭建树莓派智能小车(三):ROS2 Humble 完整安装

📌 文章摘要

ROS(Robot Operating System)是机器人开发的"操作系统"。本文详细介绍在树莓派 Pi4(ARM64 + Ubuntu 22.04)上安装 ROS2 Humble 的完整流程:软件源配置(含清华镜像加速)、桌面版安装、通信自测。装好后你的树莓派就具备了机器人开发的核心能力。


目录


1. 准备工作:扩展 Swap

如果你的树莓派内存是 4GB,建议先加 4GB swap,避免后续编译 micro-ROS 时内存不足:

sudo fallocate -l 4G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

2. 配置软件源

2.1 安装依赖

sudo apt update && sudo apt install -y curl gnupg lsb-release

2.2 添加 ROS2 GPG 密钥

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

2.3 添加 ROS2 软件源

国内用户强烈建议用清华镜像(速度快很多):

echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] https://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null

3. 安装 ROS2 Humble

sudo apt update
sudo apt upgrade -y

# 完整桌面版(含 RViz2 可视化,4GB 内存推荐)
sudo apt install -y ros-humble-desktop

# 常用开发工具
sudo apt install -y python3-colcon-common-extensions python3-rosdep
sudo apt install -y ros-humble-rmw-fastrtps-cpp ros-humble-ros2launch

如果空间紧张可装最小版 ros-humble-ros-base,但会缺少 RViz2 等可视化工具。

4. 验证安装

source /opt/ros/humble/setup.bash
ros2 --help                          # 命令可用
ros2 topic list                      # 应列出 /parameter_events /rosout

5. 测试 ROS 通信

开两个终端:

# 终端 1:发布者
ros2 run demo_nodes_cpp talker

# 终端 2:订阅者
ros2 run demo_nodes_py listener

能看到双方互发消息即安装成功:

[INFO] [demo_nodes_cpp]: Publishing: 'Hello World: 1'
[INFO] [demo_nodes_py]: I heard: 'Hello World: 1'

6. 常用命令速查

命令作用
ros2 node list查看所有节点
ros2 node info <节点>查看节点详情
ros2 topic list查看所有话题
ros2 topic echo <话题>实时查看话题数据
ros2 topic pub -r 10 <话题> <类型> "{...}"发布数据(-r 频率Hz)
ros2 run <包> <节点>运行一个节点

📎 参考链接


下一篇:从零搭建树莓派智能小车(四):micro-ROS 通信与控制板配置
系列目录:1 · 2 · 3 · 4 · 5 · 6

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐