🧭 人形机器人软件学习路线图

从零基础到具身智能 —— 软件全栈分层 · 两条学习路线 · 5 阶段计划 · 必备工具链
全栈分层 两条路线 5 阶段计划 零基础可学 软硬结合
🎯 本页学习目标
1. 能画出人形机器人软件全栈的分层结构,并说清每一层"解决什么问题"
2. 能根据自己的基础,选择"纯软件路线"或"软硬结合路线"
3. 能为自己制定一份 6 个月的阶段学习计划(含每个阶段的产出物)
4. 能说出 5 个以上必备工具及其用途
建议用时:约 20 分钟

1 软件全栈总览:人形机器人里跑着什么软件?

一台人形机器人从头到脚,软件可以分为 7 层。理解这个分层,是制定学习路线的前提 —— 你不需要同时学所有层,但必须知道每层在哪、解决什么、由谁负责。

┌────────────────────────────────────────────────────────────┐ │ 7 应用层 工业任务 / 家庭服务 / 交互 / 数据采集平台 │ ├────────────────────────────────────────────────────────────┤ │ 6 AI 层 强化学习策略 / VLA 大模型 / 世界模型 / 感知理解 │ ├────────────────────────────────────────────────────────────┤ │ 5 运动控制层 步态生成 / MPC·WBC 全身控制 / 防跌倒 / 规划 │ ├────────────────────────────────────────────────────────────┤ │ 4 中间件层 ROS2(节点/话题/服务) / DDS / TF 坐标 / 日志 │ ├────────────────────────────────────────────────────────────┤ │ 3 系统层 Linux(实时补丁) / RTOS / 设备驱动 / 启动管理 │ ├────────────────────────────────────────────────────────────┤ │ 2 板级软件 固件 Bootloader / CAN 协议 / 参数配置 / 状态机 │ ├────────────────────────────────────────────────────────────┤ │ 1 电机控制层 FOC 电流环 / 速度环 / 位置环 / 编码器处理 / 保护 │ └────────────────────────────────────────────────────────────┘ ↑ 越往下越接近硬件,越往上越接近"智能"
解决什么问题代表技术 / 项目对应本站内容
1 电机控制层让每个关节电机精准出力、平滑转动FOC、SimpleFOC、ODrive、小米 CyberGear04-02 固件与电机控制01-02 原理动画
2 板级软件让驱动板"活"起来:初始化、通信、保护STM32 固件、CAN/CANFD 协议、Bootloader01-03 驱动电路
3 系统层管理整机资源:算力分配、实时性、驱动Ubuntu + PREEMPT_RT、FreeRTOS、NVIDIA Jetson
4 中间件层让所有模块"说同一种语言",解耦开发ROS2、DDS、TF2、ros2_control04-03 ROS2 软件栈
5 运动控制层决定"下一步怎么走":站立、行走、抓取步态规划、ZMP、MPC、WBC、强化学习步态04-23 升级路线04-04 仿真与 RL
6 AI 层理解世界、听懂指令、自主决策RL 策略、VLA、世界模型、视觉感知04-05 感知与具身智能
7 应用层完成具体任务:搬运、巡检、陪伴任务编排、数据平台、人机交互
💡 认知锚点:一台真机的软件栈是"1-2 层(关节固件)+ 3-7 层(整机大脑)"的组合。绝大多数入门者从 第 1 层(FOC 固件)第 4 层(ROS2) 切入 —— 前者偏嵌入式,后者偏系统与算法,两条路最终在"仿真 + 真机部署"汇合。

2 两条学习路线:先软还是先硬?

A路线 A · 纯软件路线
编程基础 → ROS2 → 仿真 → RL/AI
适合:程序员 / 算法爱好者,目标是做"大脑"
B路线 B · 软硬结合路线
嵌入式 → 电机控制固件 → 整机联调 → 算法
适合:电子/机械背景,目标是做"关节与整机"
共同终点
仿真中训练/验证 → 部署真机 → 数据闭环
两条路都需要:Python + Linux + Git
对比项路线 A · 纯软件路线 B · 软硬结合
起点要求会一门编程语言(Python 即可)会看原理图、懂基本电路更好
最快见效路径MuJoCo 里让 H1 模型走起来(1-2 周)SimpleFOC 让电机转起来(1-2 周)
核心产出物仿真策略、ROS2 包、数据脚本能转的关节、CAN 通信、整机调通
典型岗位方向运动规划、强化学习、感知算法嵌入式固件、电机驱动、硬件联调
最大风险只跑仿真,不懂真机约束陷在硬件里,不懂上层算法
本站配套04-03 / 04-04 / 04-0501 / 02 / 03 部分 + 04-02
⚠️ 实话实说:人形机器人是典型的"软硬不分家"领域 —— 关节力矩不够、算法再好也走不稳;算法粗糙、硬件再好也跑不出效果。建议以一条路线为主,但至少把另一条路线的 入门章节 读完(本站 01-05 部分就是为路线 B 的硬件侧准备的,06 部分为路线 A 的软件侧准备)。

3 5 阶段学习计划:6 个月从零到入门

以下计划按"每周 8-12 小时"估算,每个阶段都有可检验的产出物 —— 产出物完成 = 阶段通关,再进入下一阶段。

阶段周期目标必学内容产出物(通关标准)
① 编程与环境第 1-2 周建立编程与工具基础Python 基础、Git、Linux 常用命令、VSCode在 GitHub 建仓库并提交 3 次代码
② 电机控制固件第 3-6 周理解并跑通"关节的软件"STM32/ESP32 外设、FOC 原理、SimpleFOC 或 ODrive让电机闭环转起来并能调速调力矩
③ ROS2 与仿真第 7-12 周进入"整机软件世界"ROS2 六大概念、URDF、RViz2、MuJoCo/Isaac Lab在仿真里加载人形机器人模型并让其站立/行走
④ 运动控制与强化学习第 13-18 周掌握"怎么走"的核心算法三环/PD/前馈、MPC/WBC 概念、RL 训练流水线(PPO)训练一个策略,使仿真人形机器人在扰动下站稳
⑤ 感知与具身智能第 19-24 周了解"大脑"与前沿感知栈、VLA 原理、数据采集、世界模型趋势完成一篇前沿技术调研笔记(可发到本站 07 部分风格)
✅ 通关建议:每个阶段的产出物一定要真的做出来。只读不做的学习,三个月后基本归零;亲手跑通一个闭环,胜过看十遍教程。产出物可以小,但不能没有。

4 必备工具链清单

用途工具(全部免费/开源)备注
代码编辑VSCode + Python / C/C++ 插件远程开发插件连 Linux 服务器很实用
嵌入式开发STM32CubeIDE / PlatformIOSimpleFOC 官方推荐 PlatformIO
版本管理Git + GitHub先学 add/commit/push 三个命令就够
仿真MuJoCo(mjpython)/ Isaac Lab入门用 MuJoCo,研究 RL 用 Isaac Lab
机器人中间件ROS2(Humble 或 Jazzy LTS)Linux 上体验最佳
Python 环境Miniconda + pipRL 训练建议单独建环境,避免依赖冲突
调试硬件逻辑分析仪、示波器(可选)、串口工具调 CAN/串口必备逻辑分析仪(几十元)
AI 编程助手AI 对话/代码助手读代码、改 bug、写脚本效率翻倍

5 与本站其他部分的衔接

这个学习站不是孤立的 —— 第 0-5 部分(硬件侧)与第 6 部分(软件侧)互为上下游,建议按下面的映射对照学习:

软件学习内容配套硬件章节为什么配套
FOC 固件(04-02)01-02 原理动画 / 02-01 避坑指南先懂三相逆变与采样电路,再看代码才有画面感
电机与减速器选型00-02 减速器剖面 / 02-03 原理图/PCB软件里的"关节限位/力矩上限"来自硬件参数
整机联调(CAN + ROS2)03-01 Hdrive 指南 / 04-23 升级路线通信协议两端都要懂:固件发什么,上位机收什么
仿真与 RL(04-04)00-01 3D 解剖(H1/G1/X1 模型)仿真的 URDF 就来自真实机型结构
前沿与行业(07 部分)整站知道行业往哪走,才知道该学什么

6 常见误区与建议

⚠️ 误区一:"学 ROS2 就是学人形机器人"
ROS2 只是中间件(第 4 层)。关节怎么转(第 1 层)、怎么走(第 5 层)都不是 ROS2 解决的。先把分层图记牢,再决定主攻方向。
⚠️ 误区二:"只跑仿真,不碰真机"
仿真里随便调参,真机上 1ms 延迟、编码器噪声、力矩饱和都会教你做人。至少要有"一块驱动板 + 一个电机"的真机体验(参见 03 部分实操)。
⚠️ 误区三:"跳过数学"
线性代数(矩阵/旋转)是运动学的语言,微积分是控制的语言。不用学到数学系水平,但 向量、矩阵、导数、积分 这四个概念必须真正理解。
⚠️ 误区四:"资料收藏 = 学会"
收藏 100 个教程不如跑通 1 个最小示例。本站每个软件章节都给了"最小可运行"路径,照着跑,别只看。

7 本节自测

1. 以下哪个属于软件全栈中的"中间件层"?
💡 ROS2 的节点/话题/服务属于中间件层(第 4 层);FOC 属于电机控制层,CAN 协议属于板级软件,步态生成属于运动控制层。
2. "软硬结合路线"的第一个里程碑产出物是什么?
💡 软硬结合路线的通关标准是"电机闭环转起来"(阶段②的产出物);RL 策略是阶段④以后的事。
3. 两条学习路线(A 纯软件 / B 软硬结合)的共同必备基础是什么?
💡 两条路线都需要 Python(算法/脚本)、Git(协作/版本)、Linux(开发环境),这是共同地基。
4. 下面哪种说法符合本文对 ROS2 的定位?
💡 本文「误区一」明确指出:ROS2 只是中间件(第 4 层),关节怎么转(第 1 层)、怎么走(第 5 层)都不是 ROS2 解决的。选项 A 是典型错误认知,「学会 ROS2 就是学人形机器人」正是本文要纠正的误区。
5. 在 5 阶段学习计划中,阶段②「电机控制固件」(第 3-6 周)的通关产出物是什么?
💡 阶段②的产出物是「让电机闭环转起来」并能调速调力矩;A 是阶段①(第 1-2 周)的产出物,C 是阶段③,D 是阶段④。产出物完成 = 阶段通关,再进入下一阶段。
6. 在必备工具链清单中,SimpleFOC 官方推荐的嵌入式开发环境是哪个?
💡 工具链表中「嵌入式开发」一栏注明「SimpleFOC 官方推荐 PlatformIO」(对应 STM32CubeIDE / PlatformIO 两选一);MuJoCo 是仿真工具,Miniconda 是 Python 环境,ROS2 是机器人中间件。
📌 本节要点速查:①软件分 7 层:电机控制(FOC)→板级固件→系统(Linux/RTOS)→中间件(ROS2)→运动控制→AI→应用;②两条路线:纯软件(编程→ROS2→仿真→RL)与软硬结合(嵌入式→电机固件→联调→算法),共同地基是 Python+Git+Linux;③6 个月 5 阶段:环境→固件→ROS2/仿真→运动控制/RL→感知/AI,每阶段必须有可检验的产出物;④必备工具:VSCode、PlatformIO、Git、MuJoCo/Isaac Lab、ROS2(Humble/Jazzy)、Miniconda;⑤四大误区:ROS2≠人形机器人、别只跑仿真不碰真机、别跳过数学、收藏≠学会。
📌 本节小结:人形机器人软件分 7 层,从 FOC 固件到 AI 应用;有"纯软件"与"软硬结合"两条路线,终点都是"仿真训练 + 真机部署";按 5 阶段计划(编程环境 → 固件 → ROS2/仿真 → 运动控制/RL → 感知/AI)循序渐进,每阶段必须产出可检验的成果;Python、Git、Linux 是两条路线的共同地基。
🤔 思考题: 1. 如果你的目标是"让机器人学会走路",应该优先学哪几层?为什么?
2. 你更接近路线 A 还是路线 B?你的第一个"最小产出物"准备做什么?
3. 仿真(04-04)与真机(03 部分)各自的优势和局限是什么?

9 参考来源