跳转至

ROS 环境配置

ROS(Robot Operating System)是机器人开发的标准框架。本节介绍如何安装和配置 ROS。

1. 选择 ROS 版本

版本 Ubuntu 版本 状态 推荐
ROS Noetic 20.04 维护中(2025 EOL) 学习经典 ROS 1
ROS 2 Humble 22.04 LTS(2027 EOL) ✓ 推荐
ROS 2 Jazzy 24.04 LTS(2029 EOL) ✓ 最新

建议

如果你是初学者,建议从 ROS 2 Humble 开始。ROS 2 是未来趋势,社区活跃,文档完善。

2. 安装 ROS Noetic(ROS 1)

适用于 Ubuntu 20.04。

# 1. 添加 ROS 仓库
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

# 2. 添加密钥
curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -

# 3. 更新并安装
sudo apt update
sudo apt install ros-noetic-desktop-full

# 4. 设置环境变量
echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc
source ~/.bashrc

# 5. 安装构建工具
sudo apt install python3-rosdep python3-rosinstall python3-rosinstall-generator python3-wstool build-essential

# 6. 初始化 rosdep
sudo rosdep init
rosdep update

3. 安装 ROS 2 Humble

适用于 Ubuntu 22.04。

# 1. 设置 locale
sudo apt update && 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

# 2. 添加 ROS 2 仓库
sudo apt install software-properties-common
sudo add-apt-repository universe

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

# 3. 安装
sudo apt update
sudo apt install ros-humble-desktop

# 4. 设置环境变量
echo "source /opt/ros/humble/setup.bash" >> ~/.bashrc
source ~/.bashrc

验证安装

# ROS 2
ros2 run demo_nodes_cpp talker    # 终端 1
ros2 run demo_nodes_py listener   # 终端 2

4. 使用 Docker 快速体验 ROS

如果你不想在本机安装 ROS,可以用 Docker:

# ROS Noetic
docker run -it --net=host ros:noetic-desktop-full bash

# ROS 2 Humble
docker run -it --net=host ros:humble-desktop bash

# 进入容器后即可使用 ROS
ros2 run demo_nodes_cpp talker

5. 创建 ROS 工作空间

# ROS 1 (catkin)
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws
catkin_make
echo "source ~/catkin_ws/devel/setup.bash" >> ~/.bashrc

# ROS 2 (colcon)
mkdir -p ~/ros2_ws/src
cd ~/ros2_ws
colcon build
echo "source ~/ros2_ws/install/setup.bash" >> ~/.bashrc

常见问题

rosdep init 失败

# 手动创建文件
sudo mkdir -p /etc/ros/rosdep/sources.list.d
sudo curl -o /etc/ros/rosdep/sources.list.d/20-default.list https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/sources.list.d/20-default.list
rosdep update

ROS 2 命令找不到

# 确认环境已加载
source /opt/ros/humble/setup.bash

下一步


← 返回总览 | 下一页:Linux 基础 →