Skip to content

ROS2 安装指南

  • ROS 是一个分布式通信框架
  • ROS 是一个开发工具的集合
  • ROS 是一系列开源软件包

一、通过虚拟机安装

  1. 访问下载地址:Downloads - nootrix,点击 ROS Indigo 64 位虚拟机下载打包好的虚拟机
  2. 下载预配置的 ROS Indigo 64 位虚拟机镜像文件

An image

二、一键安装

bash
#运行下面命令一键安装
wget http://fishros.com/install -O fishros && . fishros

#卸载
sudo apt remove ros-jazzy-*
sudo apt autoremove

三、官网安装步骤

基于 ROS2 Humble 版本的官方安装指南:ROS2 Humble Ubuntu 安装文档

An image

1. 区域设置

确保 locale 支持 UTF-8:

bash
locale  # check for 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  # verify settings

2. 设置源

首先确保已启用 Ubuntu Universe 软件仓库。

bash
sudo apt install software-properties-common
sudo add-apt-repository universe

ros-apt-source 软件包为各种 ROS 存储库提供密钥和 apt 源配置。

安装 ros2-apt-source 软件包将为您的系统配置 ROS 2 软件仓库。当 ROS 软件仓库发布此软件包的新版本时,软件仓库配置将自动更新。

设置仓库源就是给系统 “添加合法的应用商店地址”,让 Ubuntu 知道去哪下载原装正版且下载飞快的 ROS 2 软件包。

bash
sudo apt update && sudo apt install curl -y
export ROS_APT_SOURCE_VERSION=$(curl -s https://api.github.com/repos/ros-infrastructure/ros-apt-source/releases/latest | grep -F "tag_name" | awk -F\" '{print $4}')
curl -L -o /tmp/ros2-apt-source.deb "https://github.com/ros-infrastructure/ros-apt-source/releases/download/${ROS_APT_SOURCE_VERSION}/ros2-apt-source_${ROS_APT_SOURCE_VERSION}.$(. /etc/os-release && echo ${UBUNTU_CODENAME:-${VERSION_CODENAME}})_all.deb"
sudo dpkg -i /tmp/ros2-apt-source.deb

3. 安装开发工具

bash
sudo apt update
sudo apt upgrade
sudo apt install ros-dev-tools

4. 安装 ROS2

桌面完整版安装(推荐):

bash
sudo apt update
sudo apt upgrade
sudo apt install ros-jazzy-desktop #安装桌面版

或者基础版安装:

bash
sudo apt install ros-humble-ros-base

5. 设置环境变量

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

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

An image

6. 运行示例(发布者/订阅者)

终端 1 - 运行发布者节点:

bash
source /opt/ros/jazzy/setup.bash
ros2 run demo_nodes_cpp talker

# 或者
source /opt/ros/humble/setup.bash
ros2 run demo_nodes_cpp talker

终端 2 - 运行订阅者节点:

bash
source /opt/ros/jazzy/setup.bash
ros2 run demo_nodes_py listener

# 或者
source /opt/ros/humble/setup.bash
ros2 run demo_nodes_cpp listener

An image

7. 运行示例(TurtleSim)

终端 1 - 启动 TurtleSim:

bash
ros2 run turtlesim turtlesim_node

终端 2 - 运行 turtle 控制节点:

bash
ros2 run turtlesim turtle_teleop_key

通过键盘上下左右键控制小乌龟移动

An image

终端 3 - 查看节点信息(可选):

bash
ros2 node list
ros2 topic list

8. 运行示例(Gazebo)

终端 1 - 启动 Gazebo:

bash
# 确保已安装gazebo-ros包
sudo apt install ros-humble-gazebo-ros-pkgs

# 启动空世界
gazebo --verbose

或者使用 ROS2 启动:

bash
ros2 launch gazebo_ros gazebo.launch.py

注意:Gazebo 可能需要额外的依赖和配置,具体取决于系统和需求。

四、ROS2 基础

【示例】如何跑起一个小乌龟?

备注:Ubuntu 里面打开控制台的快捷方式是 ctrl+alt+t。

4.1 安装 colcon

安装这个就可以用 colcon 构建项目了

An image