跳转到内容

ROS2 安装

1.1. 简介

ROS 是面向机器人的开源元操作系统(Meta-operating system)。它提供操作系统所需的服务,例如硬件抽象、低级设备控制、常用功能实现、进程间消息通信、软件包管理等。从某种意义上说,ROS 相当于一种“机器人框架(robot frameworks)”。

1.1. 简介 图1

1.1. 简介 图1

1.1.2 ROS2 与 ROS1 的区别

ROS2 作为 ROS1 的后继版本,在保留 ROS 核心功能的同时,进行了许多改进和优化。与 ROS1 相比,ROS2 取消了 ROS1 中的 “Master” 中央节点,实现了节点的分布式发现、发布/订阅(Pub/Sub)以及请求/响应通信。ROS1 使用自有中间件(roscore),而 ROS2 使用 DDS 中间件。此外,ROS1 的构建系统使用 catkin,而 ROS2 使用 colcon。

1.1.2 ROS2 与 ROS1 的区别 图2

1.1.2 ROS2 与 ROS1 的区别 图2

1.2. ROS2 安装

1.2.1 locale(区域设置)的配置

安装 locale

Terminal window
locale \# 检查 UTF-8

1.2.1 locale(区域设置)的配置 图3

1.2.1 locale(区域设置)的配置 图3

Terminal window
sudo apt update && sudo apt install locales

# locale 的配置(生成)

Terminal window
sudo locale-gen en_US en_US.UTF-8

1.2.1 locale(区域设置)的配置 图4

1.2.1 locale(区域设置)的配置 图4

Terminal window
sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
export LANG=en_US.UTF-8

1.2.1 locale(区域设置)的配置 图5

1.2.1 locale(区域设置)的配置 图5

Terminal window
locale \# 确认设置

1.2.1 locale(区域设置)的配置 图6

1.2.1 locale(区域设置)的配置 图6

1.2.2 APT 仓库(源)的配置

Terminal window
sudo apt install software-properties-common

1.2.2 APT 仓库(源)的配置 图7

1.2.2 APT 仓库(源)的配置 图7

Terminal window
sudo add-apt-repository universe

1.2.2 APT 仓库(源)的配置 图8

1.2.2 APT 仓库(源)的配置 图8

# 安装 curl 库

Terminal window
sudo apt install curl -y

# 添加环境变量

Terminal window
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}')

# 下载软件包

Terminal window
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"

1.2.2 APT 仓库(源)的配置 图9

1.2.2 APT 仓库(源)的配置 图9

# 安装软件包(解包)

Terminal window
sudo dpkg -i /tmp/ros2-apt-source.deb

1.2.2 APT 仓库(源)的配置 图10

1.2.2 APT 仓库(源)的配置 图10

1.2.3 安装

# 更新并升级新仓库的软件包

Terminal window
sudo apt update && sudo apt upgrade

安装有两个版本:

(1)Desktop 版(推荐):包含 ROS、RViz、demos 和 tutorials。

(2)Base 版:包含通信库、消息包和命令行工具。不包含 GUI 工具。

# 安装 Desktop 版时

Terminal window
sudo apt install ros-humble-desktop

# 安装开发工具(可选)

Terminal window
sudo apt install ros-dev-tools

# 设置环境变量

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

1.3. ROS2 测试

1.3.1 桌面系统远程控制

安装完成后,在 MobaXterm 上运行 xfce 桌面环境:

Terminal window
startxfce4

1.3.2 ROS2 测试

(1)发布/订阅(Pub/Sub)测试:**

打开终端(Terminal),执行以下命令:

Terminal window
ros2 run demo_nodes_cpp talker

再打开一个新的终端,执行以下命令:

Terminal window
ros2 run demo_nodes_py listener

1.3.2 ROS2 测试 图11

1.3.2 ROS2 测试 图11

(2)Turtlesim 小海龟测试:**

连接 8 英寸显示屏、鼠标和键盘,启动终端并执行以下命令:

Terminal window
ros2 run turtlesim turtlesim_node

如果想使用键盘控制小海龟,请打开新的终端并执行以下命令:

Terminal window
ros2 run turtlesim turtle_teleop_key

1.3.2 ROS2 测试 图12

1.3.2 ROS2 测试 图12