Ubuntu20.04安装ROS2教程
- ROS 2 安装指南
- 支持的ROS 2 版本
- 设置语言环境(Set locale)
- 设置源(Setup Sources)
- 设置密钥
- 安装 ROS 2 包(Install ROS 2 packages)
- 环境设置(Environment setup)
- 源设置脚本(Sourcing the setup script)
- 测试示例(Try some examples)
- 安装后的下一步(Next steps after installing)
- 卸载 ROS 2(Uninstall)
ROS 2 安装指南
支持的ROS 2 版本
Ubuntu20.04所对应的ROS2版本有:foxy、galactic,这里准备安装galactic.
设置语言环境(Set locale)
确保你的系统支持 UTF-8 编码的语言环境。如果你在一个最小化的环境中(例如 Docker 容器),语言环境可能是像 POSIX 这样的最小化设置。我们测试时使用的是以下设置。不过,如果你使用的是其他支持 UTF-8 的语言环境,也应该没有问题。
locale # 检查 UTF-8 支持
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
locale # 验证设置
默认为en_US.UTF-8,不需要重复设置.
设置源(Setup Sources)
你需要将 ROS 2 的 apt 仓库添加到你的系统中。
通常可以采用两种方式进行设置:软件更新或者手动修改source.list
此处采用软件更新方法:
首先确保 Ubuntu Universe 仓库是启用的。
sudo apt install software-properties-common
sudo add-apt-repository universe
设置最佳服务器,这里设置为aliyun服务器
更新完成后,执行:
sudo apt-get update
设置密钥
现在使用 apt 添加 ROS 2 的 GPG 密钥。
sudo apt update && sudo apt install curl
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
安装 ROS 2 包(Install ROS 2 packages)
在设置仓库之后,更新你的 apt 仓库缓存。
sudo apt update
ROS 2 包是在频繁更新的 Ubuntu 系统上构建的。在安装新包之前,始终建议确保你的系统是最新的。
sudo apt upgrade
桌面安装(推荐):ROS、RViz、演示、教程。
sudo apt install ros-galactic-desktop
ROS-基础安装(精简版,可以上面的版本二选一):通信库、消息包、命令行工具。不包含 GUI 工具。
sudo apt install ros-galactic-ros-base
开发工具:编译器和其他构建 ROS 包的工具。
sudo apt install ros-dev-tools
环境设置(Environment setup)
源设置脚本(Sourcing the setup script)
通过源设置以下文件来设置你的环境。
# 如果你使用的不是 bash,用你的 shell 替换 ".bash"
# 可能的值有:setup.bash, setup.sh, setup.zsh
source /opt/ros/galactic/setup.bash
上述配置,每次开启终端都需运行,或者给当前用户配置永久的环境:
echo "source /opt/ros/galactic/setup.bash" >> ~/.bashrc
source ~/.bashrc
测试示例(Try some examples)
如果你上面安装了 ros-galactic-desktop,你可以尝试一些示例。
在一个终端中,源设置文件然后运行一个 C++ talker:
source /opt/ros/galactic/setup.bash # 如果永久配置不需运行
ros2 run demo_nodes_cpp talker
在另一个终端中源设置文件然后运行一个 Python listener:
source /opt/ros/galactic/setup.bash # 如果永久配置不需运行
ros2 run demo_nodes_py listener
你应该看到 talker 表示它正在发布消息,listener 表示它听到了这些消息。这验证了 C++ 和 Python API 都正常工作。太棒了!
安装后的下一步(Next steps after installing)
继续通过教程和演示来配置你的环境,创建你自己的工作空间和包,并学习 ROS 2 的核心概念。
ROS 2 说明文档:Galactic.
卸载 ROS 2(Uninstall)
如果你需要卸载 ROS 2 或在已经从二进制文件安装后切换到基于源码的安装,请运行以下命令:
sudo apt remove ~nros-galactic-* && sudo apt autoremove
你可能还想移除仓库:
sudo rm /etc/apt/sources.list.d/ros2.list
sudo apt update
sudo apt autoremove
以上步骤将帮助你从系统中移除 ROS 2 及其相关的依赖包,并清理不再需要的包。如果你之前添加了 ROS 2 的仓库,还需要删除仓库配置文件并更新系统包列表,以确保系统保持最新状态。