Appearance
模块一 · 基础概念
ROS 2 知识库《模块一:基础概念》导读。本模块回答"ROS 2 是什么、和 ROS 1 差在哪、怎么装、怎么构建、消息类型长什么样、生态由谁组成"这六个入门必答题。
本模块包含的 6 篇文档
| 序号 | 文档 | 主题 | 难度 | 一句话要点 |
|---|---|---|---|---|
| 01 | 什么是 ROS 2 | 定位与心智模型 | ⭐⭐⭐ | 它是中间件+工具集,不是操作系统;DDS 通信底座 + 节点图模型 |
| 02 | ROS 1 与 ROS 2 对比与迁移 | 差异与迁移 | ⭐⭐ | Master 单点 → DDS 去中心化;靠 ros1_bridge 渐进迁移 |
| 03 | 安装与环境配置 | 安装与环境变量 | ⭐⭐⭐ | 发行版↔Ubuntu 绑定;source setup.bash 与 rosdep 是翻车高发区 |
| 04 | 工作空间与 Colcon 构建 | 构建工程化 | ⭐⭐⭐ | src/ 布局 + package.xml + colcon 隔离构建 |
| 05 | 消息服务与类型系统 | 接口与类型 | ⭐⭐⭐ | .msg/.srv/.action → rosidl 跨语言生成 |
| 06 | ROS 2 生态与角色地图 | 组织与生态 | ⭐ | OSRF/Open Robotics、ros2 仓库、index/Discourse/ROSCon、贡献流程 |
建议学习顺序
- 01 → 06:先建立"ROS 2 是什么"与"生态长什么样"的全局观(06 难度最低,可与 01 对读)。
- 02:带着 ROS 1 或"为什么重写"的疑问,理解两大版本的架构差异。
- 03 → 04:动手装环境、建工作区、编译第一个包——这是所有后续实践的地基。
- 05:深入消息/服务/动作类型系统,为自定义接口做准备。
每篇末尾都有「核心面试三问」,覆盖边界条件/极端场景/失败模式,可直接用于自测与复习。
与后续模块的衔接
本模块是地基,后续模块在此基础上展开:
- 模块二 · 核心模块:深入通信与执行机制(话题/服务/动作的实现、QoS 与通信机制、执行器、参数/生命周期、DDS/RMW 细节)。本模块 01 里"换 RMW"与 05 里"rosidl 流水线"在此展开。
- 模块三 · 高级话题:实时性、安全(SROS2)、零拷贝、多机分布式、确定性等进阶主题。本模块 03 的环境变量(RMW/DOMAIN_ID)在此深入。
- 模块四 · 工程实践:CI、测试、发布、rosbag2、部署与容器化等落地工程。本模块 04 的 colcon/rosdep 是 CI 与发布的基础。
- 模块五 · 前沿趋势:新发行版、middleware 演进、标准化(如 Open-RMF/micro-ROS 等方向)。
使用约定
- 本模块所有「参考资料」URL 均已逐一用 web_search 验证;无法确认的一律标注
⚠️ 来源待验证,绝不编造。 - 文中源码级证据(类名/函数名/配置参数)均来自 ROS 2 官方仓库与文档,标注到具体文件/符号。
- 交叉引用使用相对链接,跨模块内容只做指引、不复制正文。
📅 最后更新:2026-08-25