资讯动态

ROS 2 Lyrical Luth 第1章 系统入门教程

发布时间:2026/8/13 9:33:02 来源:尧图企业网站定制
ROS 2 Lyrical Luth 第一章 系统入门教程ROS2 Lyrical正式版替换测试版记录前言本文对标原文档《ROS Noetic 入门》结构科学严谨完整讲解ROS 2 Lyrical Luth代号 lyrical覆盖版本背景、PC 原生 Ubuntu 安装、虚拟机部署、Docker 容器化、ARM 嵌入式开发板部署、环境配置、验证示例同时对比 ROS 1 Noetic 核心差异全程遵循 ROS 官方文档规范适配 2026 最新 LTS 发行版标准ROS。本书覆盖内容Ubuntu 26.04 Resolute 下二进制包安装 ROS 2 Lyrical 完整框架ROS 2 分层架构、基础核心概念与命令行操作数据可视化、日志调试、ros2 bag 数据录制回放ament 编译体系下机器人 C/Python 功能包编程传感器、执行器硬件驱动接入、机器人 URDF 模型构建Gazebo 3D 仿真、导航 2 自主导航功能包集部署多环境部署VirtualBox 虚拟机、Docker 容器、ARM64 嵌入式开发板第 1 章 ROS 2 Lyrical 概述与历史背景1.1 ROS 2 基础定义ROSRobot Operating System是机器人软件标准化开发框架ROS 2为 ROS 1 全重构迭代版本解决 ROS 1 中心化、无实时性、跨机通信弱、嵌入式适配差等缺陷。核心设计思想分布式去中心化通信、硬件完全抽象、跨平台兼容、原生实时调度、DDS 标准化通信中间件实现机器人代码跨硬件无修改复用GitHub。1.2 Lyrical Luth 版本基础信息发布时间2026 年 5 月LTS 长期支持周期至 2031 年 5 月5 年官方维护官方 Tier1 一级支持平台Ubuntu 26.04 Resolute amd64PC、arm64嵌入式对比 ROS 1 Noetic 关键区别表格维度ROS 1 NoeticROS 2 Lyrical通信架构中心化 Master 节点单故障点去中心化 DDS 发现无主节点编译工具catkinamentament_cmake/ament_python底层通信自定义 TCPROS 协议DDS 标准FastDDS 默认Zenoh 原生支持实时性无原生实时调度硬实时内核原生适配、执行器调度优化系统适配仅 Ubuntu 20.04x86 为主Ubuntu26.04、Windows11、ARM64、RHEL10安全机制无原生加密SROS2 分布式加密通信生命周期管理无标准化节点生命周期标准化 Lifecycle 节点插件生态1.3 ROS 2 分层架构Lyrical 完整五层从底层至应用层分层解耦为开发、调试提供标准化抽象DDS 传输层Fast-DDS默认、Cyclone DDS、Zenoh负责数据分发、网络发现、QoS 质量策略RMW 抽象层统一封装 DDS 接口上层应用可无修改切换中间件RCL 核心 C 库层实现节点、话题、服务、参数、日志底层基础 API客户端语言层rclcppC20、rclpyPython3.12面向开发者封装应用工具层RViz2 可视化、Gazebo 仿真、ros2cli 命令行、导航 2、感知功能包1.4 Lyrical 核心新增特性通用资源加载服务resource_retriever_serviceRViz2 跨网络加载机器人三维模型ros2 bag 丢包统计、录制带宽限流、日志分级动态配置原生 fish/zsh/bash 多 shell 环境一键配置脚本生命周期节点回调组事件执行器多线程调度性能大幅提升ARM64 嵌入式存储空间轻量化优化支持裁剪最小化部署完善工业安全 SROS2 配套工具链适配 ISO 机器人安全标准ROS1.5 开源协议与社区生态ROS 2 整体采用Apache 2.0 开源协议商用、科研完全免费可修改、分发、闭源商用二次开发区别于 ROS 1 BSD 协议第三方功能包可自定义开源协议。 全球 200 科研机构、机器人企业持续维护硬件驱动、导航、视觉、机械臂开源包硬件覆盖人形机器人、移动底盘、水下机器人、机械臂、Arduino、树莓派、BeagleBone Black 等硬件清单可查阅https://docs.ros.org/en/lyrical/Robots.html2 PC 端 Ubuntu 26.04 原生安装 ROS 2 Lyrical官方推荐二进制源安装前置条件已安装 Ubuntu 26.04 Resolute掌握 Linux 基础终端操作、vim 文件编辑、文件夹创建系统架构 amd64。2.1 系统前置配置必选步骤2.1.1 配置 UTF-8 字符集ROS 2 强制要求bashsudo apt update sudo apt install locales sudo locale-gen en_US en_US.UTF-8 sudo update-locale LC_ALLen_US.UTF-8 LANGen_US.UTF-8 export LANGen_US.UTF-82.1.2 启用 Ubuntu 标准软件源组件打开 Ubuntu Software → Edit → Software Sources勾选全部组件main官方开源软件universe社区开源软件restricted设备专有驱动multiverse版权受限软件 推荐选择国内镜像服务器清华 / 阿里源加速下载。2.1.3 添加 ROS 2 官方软件源密钥与源列表安装密钥管理工具导入 ROS 软件源可信密钥bashsudo apt install software-properties-common sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg将 ROS 2 源写入系统源文件bashecho deb [arch$(dpkg --print-architecture) signed-by/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(lsb_release -cs) main | sudo tee /etc/apt/sources.list.d/ros2.list /dev/null更新软件源缓存升级系统全量软件避免库版本冲突bashsudo apt update sudo apt upgrade -y2.2 ROS 2 Lyrical 四种安装方案按需选择方案 1桌面完整版本书推荐适合学习开发包含 RViz2 3D 可视化、rqt 工具箱、Gazebo 仿真、导航 2、视觉感知、激光雷达、深度相机全套功能包硬盘预留≥20GBbashsudo apt install ros-lyrical-desktop -y方案 2标准桌面精简版仅基础可视化无仿真导航硬盘空间不足时选用仅保留 RViz2、rqt、基础机器人库后续可单独安装仿真 / 导航包bashsudo apt install ros-lyrical-desktop-base -y方案 3基础最小化 ros-base无头设备无 GUI仅保留通信库、消息接口、命令行工具无可视化界面用于无屏幕嵌入式主机bashsudo apt install ros-lyrical-ros-base -y方案 4单独安装指定功能包通用格式将PACKAGE替换为功能包名称bashsudo apt install ros-lyrical-PACKAGE # 示例安装导航2功能包 sudo apt install ros-lyrical-navigation22.3 初始化 rosdep 依赖管理工具rosdep 用于自动解析功能包编译、运行所需系统依赖安装 ROS 后必须初始化bash# 安装工具 sudo apt install python3-rosdep python3-rosinstall python3-rosinstall-generator python3-wstool build-essential # 初始化全局依赖库 sudo rosdep init # 更新依赖索引 rosdep update2.4 配置 ROS 2 全局环境变量ROS 2 必须加载setup.bash脚本才能识别命令、库路径每次新开终端默认生效配置单次临时生效当前终端bashsource /opt/ros/lyrical/setup.bash永久全局生效所有终端自动加载bashecho source /opt/ros/lyrical/setup.bash ~/.bashrc # 立即加载配置无需重启终端 source ~/.bashrc多 ROS 发行版共存注意事项 若系统同时安装多个 ROS 2 版本jazzy/humble/lyrical~/.bashrc中仅保留目标版本的 source 语句最后一行加载的版本为当前默认版本切换版本需手动执行对应 setup 脚本。验证当前 ROS 版本bashecho $ROS_DISTRO # 输出 lyrical 代表配置成功2.5 安装 ros2cli 辅助工具集rosinstall 工具简化多功能包批量下载、源码拉取bashsudo apt install python3-rosinstall2.6 安装完成验证turtlesim 经典示例新开两个独立终端分别执行 终端 1启动仿真海龟节点bashros2 run turtlesim turtlesim_node终端 2键盘控制海龟移动bashros2 run turtlesim turtle_teleop_key操作在第二个终端按上下左右键海龟窗口中乌龟同步移动代表 ROS 2 完整安装、通信正常。3 VirtualBox 虚拟机部署 ROS 2 Lyrical适用场景不想修改本机系统、临时测试、纯净开发环境缺点无法完美直通外部传感器硬件仅适用于算法仿真调试。3.1 工具下载VirtualBox 官方安装包适配 Windows/macOS/LinuxUbuntu 26.04 amd64 官方 ISO 镜像或 OSBOX 预装好 Ubuntu26.04 的 vdi 虚拟硬盘镜像7z 解压工具bashsudo apt install p7zip-full # 解压预编译虚拟机镜像 7z x Ubuntu_26.04-amd64.vdi.7z3.2 虚拟机创建步骤打开 VirtualBox → New 新建虚拟机NameUbuntu26.04-LyricalTypeLinuxVersionUbuntu (64-bit)内存分配推荐≥4GB学习开发 8GB 最优硬盘选项选择「使用已存在虚拟硬盘文件」加载下载好的.vdi镜像启动虚拟机登录 Ubuntu 系统按照第 2 章完整步骤安装 ROS 2 Lyrical3.3 虚拟机局限性说明USB 设备直通复杂激光雷达、深度相机、机械臂驱动易失效Gazebo 3D 仿真显卡性能受限大场景仿真卡顿适合算法、话题通信、功能包编译学习硬件实操推荐物理机4 Docker 容器化部署 ROS 2 LyricalDocker 比虚拟机轻量化秒级启动、环境隔离、多版本并行、一键分发开发环境工业部署首选方案。4.1 Ubuntu 安装 Docker 引擎bash# 一键安装docker curl -fsSL get.docker.com | sudo sh # 将当前用户加入docker组免sudo执行docker命令 sudo usermod -a -G docker $(whoami) # 重启终端生效 newgrp docker4.2 拉取官方 Lyrical 镜像bash# 桌面完整版含RViz、仿真 docker pull ros:lyrical-desktop # 最小基础版嵌入式无头部署 docker pull ros:lyrical-ros-base4.3 交互式运行 ROS 2 容器带图形界面、共享主机网络启动推荐开发bashdocker run -it --rm \ --nethost \ -e DISPLAY$DISPLAY \ -v /tmp/.X11-unix:/tmp/.X11-unix \ ros:lyrical-desktop容器内加载 ROS 环境验证示例bashsource /opt/ros/lyrical/setup.bash ros2 run turtlesim turtlesim_node4.4 容器进阶操作查看运行中容器bashdocker ps -a进入已后台运行的容器NAME 替换容器名称bashdocker exec -it NAME bash自定义 Dockerfile 构建专属镜像预装本书全部示例代码 在 Dockerfile 目录执行构建bashdocker build -t lyrical-workspace .5 ARM 嵌入式开发板部署 ROS 2 LyricalBeagleBone Black / 树莓派 arm64Lyrical 官方 Tier1 支持 arm64 架构arm32 仅 Tier3 有限支持本节以 BeagleBone BlackBBB、Ubuntu 26.04 arm64 为例。5.1 硬件与系统准备硬件BeagleBone BlackmicroSD 卡≥16GB下载 Ubuntu 26.04 arm64 镜像解压写入 SD 卡烧录镜像脚本bashtar xf ubuntu-26.04-arm64-minimal.tar.xz sudo ./setup_sdcard.sh --mmc /dev/mmcblk0 --dtb beaglebone开发板启动按住 S2 按键上电HDMI 外接显示器、网线连接路由器获取 DHCP IP5.2 网络配置开发板终端获取 IPbashsudo dhclient eth0 ifconfig eth0 # 记录IP例192.168.1.100电脑 SSH 远程登录开发板bashssh ubuntu192.168.1.1005.3 ARM 平台特殊安装步骤扩展 SD 卡文件系统嵌入式卡默认分区空间不足bashsudo su fdisk /dev/mmcblk0 # 依次执行p → d → 2 → n → p → 2 → w reboot # 重启后扩容分区 sudo resize2fs /dev/mmcblk0p2字符集、软件源、密钥配置与 PC 端完全一致ARM 不推荐desktop-full完整安装存储空间不足仅安装 ros-base按需单独安装驱动、感知包bashsudo apt install ros-lyrical-ros-base # 按需安装硬件驱动示例 sudo apt install ros-lyrical-serial-driverrosdep 初始化、环境变量配置、验证话题通信流程同 PC 端跨机通信示例PC 接收 BBB 发布的话题 BBB 终端发布位姿话题bashsource /opt/ros/lyrical/setup.bash ros2 topic pub /chassis_pose geometry_msgs/msg/Pose {position: {x: 1.0, y: 0.0, z: 0.0}, orientation: {x:0,y:0,z:0,w:1}} -r 10PC 终端指定 Master 网络地址订阅话题bashsource /opt/ros/lyrical/setup.bash export ROS_DOMAIN_ID0 ros2 topic echo /chassis_pose本章小结本章完整覆盖 ROS 2 Lyrical Luth 多平台安装部署方案物理 PC 原生 Ubuntu 适合全功能开发VirtualBox 虚拟机适合无硬件改动的临时学习Docker 容器适合环境隔离、批量部署ARM 开发板适配机器人嵌入式终端。安装优先推荐二进制软件源安装编译源码仅适合深度自定义二次开发嵌入式设备建议轻量化 ros-base 安装避免存储空间溢出。ROS 2 相比 ROS 1 在分布式通信、实时性、跨平台、安全层面完成底层重构Lyrical 作为 2026 最新 LTS 版本新增大量可视化、仿真、嵌入式优化工具后续章节将深入讲解 ROS 2 核心架构、节点通信、ament 编译、机器人导航与视觉开发。ROS2 Lyrical Luth 系统入门教程摘要本文全面介绍ROS2 Lyrical2026 LTS版本的安装与部署对比ROS1 Noetic的核心差异涵盖多平台适配方案版本特性ROS2 Lyrical采用DDS去中心化通信支持实时调度与跨平台部署新增生命周期节点优化、ARM轻量化等特性。对比ROS1改进通信架构FastDDS、编译工具ament、安全机制SROS2。安装方案Ubuntu 26.04原生安装推荐二进制源安装提供桌面完整版含Gazebo/RViz2、基础版等选项。虚拟机与DockerVirtualBox适合学习仿真Docker容器轻量化支持多版本隔离与工业部署。ARM嵌入式开发适配BeagleBone Black/树莓派需轻量化安装ros-base优化存储空间。关键步骤配置UTF-8字符集、ROS官方源初始化rosdep依赖管理。验证安装通过turtlesim示例测试通信功能。跨平台通信PC与嵌入式设备通过ROS_DOMAIN_ID实现话题交互。总结ROS2 Lyrical为机器人开发提供标准化框架支持PC、虚拟化、嵌入式全场景适合从算法仿真到硬件部署的全流程开发。后续将深入节点通信、导航与视觉功能开发。

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价