在 RK3588 上装 ROS 2 很直接,因为官方支持 Ubuntu 22.04 (arm64) + ROS 2 Humble。按下面步骤来:

第 0 步:确认系统

uname -m              # 必须是 aarch64
cat /etc/os-release   # 必须是 Ubuntu 22.04 (jammy)
  • 如果 aarch64 但系统不是 Ubuntu 22.04(比如 Debian 或 20.04),需要先刷机装对应板子型号的 Ubuntu 22.04 镜像(搜"你的板子型号 + Ubuntu 22.04 镜像",如 Orange Pi 5 / Rock 5B / Firefly 等)
  • 已经是 22.04 就直接往下

第 1 步:设置 locale(复制粘贴即可)

sudo apt update && sudo apt install -y 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

第 2 步:添加 ROS 2 软件源

sudo apt install -y software-properties-common curl
sudo add-apt-repository universe

# 添加 ROS 2 密钥
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 $(. /etc/os-release && echo $UBUNTU_CODENAME) main" \
  | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null
国内网络慢的话,把源地址换成清华镜像:把上面命令里的 http://packages.ros.org/ros2/ubuntu 改成 https://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu 即可。

第 3 步:安装

sudo apt update
sudo apt install -y ros-humble-desktop ros-dev-tools
ros-humble-desktop 已包含 rviz2、rosbag、tf2_tools、launch 等全部你作业需要的工具。装完大概几个 GB,耐心等。

第 4 步:配置环境

echo "source /opt/ros/humble/setup.bash" >> ~/.bashrc
source ~/.bashrc

第 5 步:验证

ros2 doctor

再跑个小乌龟测试(两个终端):

# 终端 1
ros2 run turtlesim turtlesim_node

# 终端 2
ros2 run turtlesim turtle_teleop_key

能弹出小乌龟窗口并且键盘能控制它,就说明装好了 ✅

这个报错是 RK3588 板子的经典坑,原因和解决如下:

原因

你的板子厂商把 Ubuntu 自带的 FFmpeg 库换成了带硬件加速的 Rockchip 版本(版本号带 +rkmpp,如 7:4.4.2-...rkmpp20230327),而 ros-humble-desktop 里的某个摄像头插件依赖严格等于官方版本号的 FFmpeg 开发库,两边版本对不上,就装不上。

好消息:这个冲突只影响桌面版附带的一个"图像/摄像头传输插件",你的作业(TF + rviz2 + rosbag)完全不需要它

解决:不装 desktop,分开装需要的组件

# 核心 + 常用工具(含 launch、tf2、rosbag 等)
sudo apt install -y ros-humble-ros-base

# 可视化 + 调试工具
sudo apt install -y ros-humble-rviz2 ros-humble-turtlesim ros-humble-tf2-tools

# 录包回放工具(保险起见显式装一下)
sudo apt install -y ros-humble-ros2bag ros-humble-rosbag2 ros-humble-rosbag2-storage-default-plugins

# 编译工具(colcon 等)
sudo apt install -y ros-dev-tools

这样装完,你作业需要的 rviz2、rosbag、tf2_tools、launch、colcon 全都有,只是少了用不到的 ffmpeg 图像插件。

验证

source /opt/ros/humble/setup.bash
ros2 doctor

小乌龟测试(两个终端):

# 终端 1
ros2 run turtlesim turtlesim_node

# 终端 2
ros2 run turtlesim turtle_teleop_key
如果 ros-humble-ros-base 也报依赖错,就先只装最核心的 ros-humble-ros-core 再单独加,把报错发我。

另外说明:你的板子硬件视频解码功能(rkmpp保留不动,不影响系统其它功能。以后真要装那个摄像头插件,再单独处理版本冲突即可。