ZeroOne AI
← 返回文章列表

手把手做ROS2机器人系统开发(一):开发环境搭建

👁 4
分类:机器人自动化

机器人操作系统(ROS2)是当前机器人应用开发的主流平台,凭借分布式节点架构、丰富的生态组件和良好的实时性支持,被广泛用于工业机器人、移动机器人和智能装备的研发。本系列教程将带领大家从零开始,完成一套完整的ROS2机器人系统开发:以驱动常用工业机器人(SCARA)实现动态抓取目标为最终目标,既支持实

手把手做ROS2机器人系统开发(一):开发环境搭建

教程背景

机器人操作系统(ROS2)是当前机器人应用开发的主流平台,凭借分布式节点架构、丰富的生态组件和良好的实时性支持,被广泛用于工业机器人、移动机器人和智能装备的研发。本系列教程将带领大家从零开始,完成一套完整的ROS2机器人系统开发:以驱动常用工业机器人(SCARA)实现动态抓取目标为最终目标,既支持实体机器人验证,也支持仿真环境测试。

本教程使用的硬件体系包括:通过 EtherCAT 总线控制的驱动部分,以及笔记本电脑/工控机作为上位机。软件部分即本系列教程的核心内容。

万事开头难,搭建一套稳定、可复现的开发环境,是后续一切开发工作的基础。本章节完成两件事:

  1. Ubuntu 系统安装
  2. ROS2 系统环境安装

一、Ubuntu 系统安装

1. 虚拟机准备

学习阶段推荐使用 Oracle VM VirtualBox 虚拟机,便于随时随地进行实验,且不影响宿主机环境。

2. 安装注意事项

问题一:虚拟机安装界面显示不全,无法点击"下一步"。

解决办法:按 Alt + F7,用鼠标移动窗口位置即可。

问题二:安装耗时过长。

解决办法:采用最小化安装,安装过程中不连接网络或跳过系统更新,安装完成后再统一配置。

问题三:配置国内软件源并更新系统。

编辑软件源文件:

sudo gedit /etc/apt/sources.list

替换为清华镜像源(Ubuntu 22.04,代号 jammy):

# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse

deb http://security.ubuntu.com/ubuntu/ jammy-security main restricted universe multiverse

# 预发布软件源,不建议启用
# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse

执行系统更新:

sudo apt update
sudo apt upgrade

二、ROS2 系统环境安装

本教程采用 ROS2 Humble Hawksbill 版本,对应 Ubuntu 22.04。

1. 添加 ROS GPG 密钥

sudo apt install curl gnupg2
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg

若网络受限无法访问 GitHub,可直接下载 ros-archive-keyring.gpg 文件(https://download.csdn.net/download/guimotion/87722345),将其复制到 /usr/share/keyrings/ 目录即可。

2. 配置国内 ROS2 镜像源

echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] https://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null

sudo apt update
sudo apt upgrade

3. 安装 ROS2

安装标准桌面版(包含常用工具、仿真器与示例):

sudo apt install ros-humble-desktop

安装开发编译工具:

sudo apt install ros-dev-tools

4. 配置系统环境

编辑 ~/.bashrc,在末尾追加:

export ROSDISTRO_INDEX_URL=https://mirrors.tuna.tsinghua.edu.cn/rosdistro/index-v4.yaml
source /opt/ros/humble/setup.bash

三、系统运行测试

开启两个终端验证 ROS2 节点通信:

终端 1:运行发布者节点

ros2 run demo_nodes_cpp talker

终端 2:运行订阅者节点

ros2 run demo_nodes_py listener

若两个终端分别持续输出发布与订阅消息,说明 ROS2 环境搭建成功,节点通信正常。

四、补充内容

1. 检查系统安装环境

printenv | grep -i ROS

2. 使用 ROS 域 ID 功能

当同一网络中存在多组 ROS2 系统时,可通过域 ID 隔离通信:

export ROS_DOMAIN_ID=<your_domain_id 0-101 或 215-232>
echo "export ROS_DOMAIN_ID=98" >> ~/.bashrc

3. 测试小海龟(turtlesim)仿真

启动小海龟仿真器:

ros2 run turtlesim turtlesim_node

启动键盘控制节点:

ros2 run turtlesim turtle_teleop_key

通过键盘即可控制小海龟移动,直观感受 ROS2 的节点通信机制。

小结

至此,Ubuntu 22.04 + ROS2 Humble 开发环境搭建完成,并通过 talker/listener 与小海龟仿真验证了系统可用性。下一章节将带领大家熟悉 ROS2 的核心命令,为后续编程开发打下基础。

SEO关键词: ROS2开发环境搭建, ROS2 Humble安装教程, Ubuntu 22.04 虚拟机, ROS2国内镜像源, ROS2入门教程, 机器人操作系统开发

评论(0