
如何在家组装一台人形机器人:Asimov 1 完整装机指南
Asimov 开源 2 万美元 DIY 人形套件:25 自由度硬件、加工代码、CAN 接线陷阱,与零微调 sim-to-real 行走策略全解。
想亲手造一台人形机器人的爱好者,往往不知道从哪里开始。他们看 Unitree 或 Figure AI 的视频,读几篇论文,也许再买一套小型 hobby 套件,然后发现"在受控实验室里翻跟头的机器人"和"我能真正造出来、改得动、看得懂的机器人"之间隔着一道巨大的鸿沟。这道鸿沟之所以存在,是因为大多数人形机器人都是封闭系统:你看不到它的内部,不可能两天内买到替换零件,想改一个关节设计更是无从下手。
Asimov 1 是一套 DIY 套件,包含在家组装一台人形机器人所需的全部东西。
本文改编自 Asimov 团队(Menlo Research)发布的装机指南,完整走一遍这条路径:硬件、加工、电子、控制栈,以及大多数指南都会跳过的 sim-to-real 迁移工作。Asimov 1 套件售价 2 万美元、送货上门,自 8 月底开始发货,客户遍布 20 多个国家;BOM、CAD 文件、仿真环境与基线行走策略全部开源。它的定位很直接:为那些想在这项技术成熟时"在场"的人,提供进入人形机器人领域最快的路径。
你要造的是什么
Asimov 1 身高 1.2 米,重 35 公斤,共 25 个主动自由度:每条腿 6 个、每条手臂 5 个、腰部 1 个、颈部 2 个。它集成传感器套件与机载算力,并自带一套可以直接在机器人上运行的基线行走策略。
| 属性 | 规格 |
|---|---|
| 身高 | 1.2 米(头部 0.17 米、躯干 0.36 米、腿部 0.7 米) |
| 体重 | 35 公斤 |
| 主动自由度 | 共 25 个:每腿 6、每臂 5、腰 1、颈 2 |
| 执行器 | 踝与颈共用 36 Nm 电机;髋俯仰与腰偏航共用 120 Nm 电机 |
| 踝关节机构 | 并联 RSU 连杆(两台电机经共享连杆驱动俯仰与翻滚) |
| 传感器 | 单目相机、IMU、麦克风、扬声器、电机关节状态反馈 |
| 算力 | 边缘计算板(高层控制)、运动控制板(内部总线)、网络板、配电板 |
| 组装耗时 | 约 20 小时(发布时预估为 100 小时) |
| 套件价格 | 20,000 美元,送货上门 |
套件里有什么
| 类别 | 内容 |
|---|---|
| 硬件 | BOM 全部未组装零部件、电源与线缆、备件 |
| 算力 | 高层控制边缘计算板、内部总线运动控制板、网络板、配电板 |
| 传感器 | 单目相机、IMU、麦克风、扬声器、电机关节状态反馈 |
| 安全 | 物理急停与无线急停、安全规范、标签、操作指南 |
| 软件 | 预训练行走策略、机器人云 API 与 CLI、底层控制边缘 API、遥操作 App、虚拟 Asimov 数字孪生 |
| 文档 | 快速上手指南、完整装配手册、DIY 视频教程 |
不含:工具、电池、4G/5G 模块,以及激光雷达、360 度相机等高端传感器。团队也给了一个诚实的提醒:这不是玩具,复杂度更接近一辆汽车,而不是一个周末手工项目。
组装:二十小时、五六个系统、一次干净的上电
预计耗时约 20 小时。设计迭代把这个数字从发布时的 100 小时降了下来;工作并没有变简单,只是变少了。人形机器人不是单一系统,而是五六个必须先协同工作、否则谁都没用的系统:机械结构必须先正确,才能接线;接线必须先正确,才能上电;上电必须先干净,才能标定;标定必须先正确,仿真才有意义。
多数人低估了接线与 bring-up。他们以为难点在机械装配,因为那是看得见的部分。实际上难点通常在第一次上电:电机转向反了、关节回零错了、装配前忘了写 CAN ID。这些都是可修复的问题,但需要时间,而且要求机器人在一个受控、安全的状态下才能被发现。每个阶段都有自己的失效模式,不能跳步。这 20 小时不是装配时间,而是理解你造出来的东西所需的最短时间。
正确的第一个里程碑不是"让它走起来",而是一次干净、安全、可验证的上电。
开工前需要具备什么
组装 Asimov 需要三个方向的能力。你不需要在任何一项上是专家,但要能独立把问题啃下来。
- 机械。你要装配结构件、按规格扭矩拧紧固件,并面对一个行为完全不像标准串联关节的并联踝机构。如果你装过 RC 车、工业设备或任何承力结构,基础就够。
- 电子。你要在 CAN 总线上接电机、写电机 ID、焊连接器、用万用表排查信号问题。如果你做过入门级以上的电子项目,就准备好了;如果没有,请在装配之前(而不是之后)先读手册的接线章节。
- 软件与仿真。你要配置控制栈、验证仿真链路,并对固件有足够理解以排查时序问题。需要具备基本的 Linux 与 Python 能力。
| 工具 | 必要性 | 用途 |
|---|---|---|
| 内六角扳手 M2–M6 | 必需 | 全程装配内六角螺钉 |
| 电烙铁 | 必需 | 焊接电子元件 |
| 剥线钳 | 必需 | 焊接或压接前处理线头 |
| 压线钳 | 必需 | 把连接器牢固压接到导线上 |
| 万用表 | 必需 | 上电前后测电压、通断、排查接线问题 |
| 热风枪 | 必需 | 线缆连接处热缩管 |
| 标签机 | 推荐 | 装配时给每根线、每个连接器贴标签,调试时你会感谢自己 |
| CAN 转 USB 适配器 | 推荐 | 装配后直连电机做 CAN 测试与验证(如 Waveshare);跳过它会让电机排障难得多 |
硬件:共享执行器家族,与一只"不是串联"的踝
Asimov 在载荷允许的地方尽可能复用执行器家族:踝与颈用同一款 36 Nm 电机,髋俯仰与腰偏航共用同一款 120 Nm 单元。电机型号越少,BOM 越简单,凌晨两点出问题时可能的故障点也越少。
踝关节是设计中最反直觉的地方。36 Nm 看起来不足以稳定整机体重,但 Asimov 的踝不是串联关节,而是并联 RSU 机构:两台电机通过共享连杆驱动俯仰与翻滚,载荷被分摊,串联关节的直觉在这里不适用。
这个区别的影响远超机械设计本身:它会传播到仿真、控制与部署。在仿真里训练行走策略时,踝常被简化为直接驱动;而硬件上并不是。因此从仿真部署到真机必须做运动学重映射,漏掉这一步,策略在关节层面就会失效,根本走不起来。腿部共 12 个主动关节、每侧 6 个,没有脚趾关节:蹬地与向前失衡恢复完全由踝承担,这也是并联踝机构承担了整个腿部设计大部分权重的原因。
加工:什么能打印,什么不能
每个零件都遵循一套命名规范,名字本身就告诉你它该怎么制造:字母编码了加工方式与材料家族。
| 代码 | 工艺 | 材料 | 典型用途 |
|---|---|---|---|
| A | CNC 机加工 | 铝合金 7075 | 承力结构件,如髋俯仰支架 |
| B | SLM 金属打印 | 316L 不锈钢 | 高应力小零件 |
| C | SLS / MJF 打印 | PA12 尼龙 | 理线支架、外壳、非承力结构 |
| X | 外购标准件 | — | 执行器、紧固件、电子件等 |
ASV1_500_02A 可拆解为项目与版本、子装配、件号,以及映射到工艺与材料的加工代码字母。(图:Asimov / Menlo Research)FDM 打印不能用于结构件,这不是偏好问题,而是公差与强度问题。7075 铝机加工的髋俯仰支架能承受 35 公斤机器人运动中的反复动载;桌面打印机打出来的 PLA 同款支架不能:它会在载荷下挠曲、给关节引入旷量,并破坏控制栈赖以建立的机械假设。支架层的坏几何会传播成脚底的坏接触几何,再传播成坏训练数据,最终产出一个无法迁移的策略。失效链的起点在加工环节。
SLS / MJF 打印的 PA12 尼龙则不同:理线支架、外壳、非承力结构可以用它,因为这些零件不在机械载荷路径上。加工代码告诉你每个零件属于哪一类,照着做。如果你自行采购,团队推荐 PCBWay 或 JLCMC 做机加工与打印件,交期与质量可预期;用套件的话,零件到手即可装配。
电子与接线:CAN 顺序是控制问题
算力栈包括高层控制的边缘计算板、内部总线的运动控制板、网络板与配电板。电机通过 CAN 通信,IMU 也经同一条通信路径进入固件。
接线是多数首次装机者花掉意外时间的地方,而 CAN 总线顺序比人们预想的更重要。Asimov 早期开发中,电机状态请求按顺序发出,但响应可能乱序返回。这在通信层完全合理,但在控制层不行:策略会把陈旧、乱序的状态当成真实的物理偏差,过猛地施加纠正动作,产生的冲激励起双腿振荡——机器人还没迈出一步就把自己抖散架了。
修法是让真实 IO 采样路径与训练环境期望的完全一致:按预定速率采样执行器、等待期望的报文顺序,不要让通信层的灵活性在控制层制造时序歧义。这类问题只有亲手装机、亲手接线才能真正理解。
仿真与控制问题
行走不是机械问题,而是数据问题。行走策略是用强化学习在仿真中训练的神经网络,核心问题不是网络有多精巧,而是策略在仿真中看到的数据,与它在硬件上看到的,是否在类型、时序、质量上同一级别。多数 sim-to-real 失败不是物理失配造成的,而是时序偏移、陈旧观测、总线抖动,或仿真与硬件上控制信号计算方式不同造成的。物理做对了、时序做错了,策略照样崩。
Asimov 已经跨过了这道坎:仿真中训练的行走策略直接在真机运行,零微调、零真机迭代。三个速率是刻意分离的。
| 回路 | 频率 | 说明 |
|---|---|---|
| 物理 | 200 Hz | 仿真步长 |
| 观测与 IO | 200 Hz | 关节按真实 CAN 轮询顺序分组,最旧一组带 0–2 步延迟 |
| 策略执行 | 50 Hz | actor 从不在"完全新鲜"的仿真状态上训练 |
策略刻意不在完全新鲜的仿真状态上训练:它训练所用的数据本身就已经带有控制回路的时序痕迹,因为真机产出的就是这样的数据。关节观测按真实 CAN 轮询顺序分组:不同关节的新鲜度不同,最旧一组带 0 到 2 步延迟,最新一组没有。这种错层结构不是仿真伪影,而是对硬件行为的刻意建模。
flowchart LR
subgraph sim ["仿真(训练)"]
phys["物理\n200 Hz"] --> obs["观测与 IO\n200 Hz\n关节按 CAN 轮询顺序分组\n0-2 步错层"]
obs --> actor["Actor MLP\n50 Hz\n45 维观测"]
obs --> critic["Critic(仅训练)\n+ 真值基座线速度\n脚高、离地时间、\n接触状态与接触力"]
end
subgraph hw ["真机(部署)"]
can["CAN 总线\n电机 + IMU"] --> io["IO 采样\n200 Hz,固定报文顺序"]
io --> actorhw["Actor MLP\n50 Hz\n关节目标下发到电机"]
end
actor -- "同一权重,零微调" --> actorhw
振荡问题,以及它教给你的事
开发早期,机器人一上电就剧烈振荡。本能反应是加阻尼、重调奖励、改硬件——都没用。真正的原因是两个问题在相互作用。
第一,仿真中的 PD 增益产生了一个欠阻尼系统。机器人底层跟踪是标准的比例-微分律:
$$\tau = K_p\,(q_{\mathrm{des}} - q) + K_d\,(\dot{q}_{\mathrm{des}} - \dot{q})$$
而策略只是一个 MLP,它的工作就是从看到的数据里拟合一个函数。在欠阻尼仿真数据上训练,它就学会欠阻尼的控制行为,并把它带上真机。真机上增益本身没问题,但策略学到的行为会过冲;每次过冲触发更大的纠正,持续振荡随之而来。第二,CAN 报文乱序让策略对着已经不代表现实的状态做纠正,每个周期都在放大振荡。两个问题必须一起修:只修增益,策略仍在吃乱序状态,不行;只修 CAN 顺序,控制器仍欠阻尼,也不行。
教训不只是"认真调增益",而是:仿真与硬件必须产出同一类别的数据。数据域一旦分叉,策略学到的行为就无法迁移,无论单个参数值看起来多么物理合理。这些不是从论文里学来的,而是通过装机、接线、看它抖、再沿控制栈往回找原因学来的。
训练行走策略
actor 网络观测 45 维:IMU 角速度、投影重力、指令速度、按 CAN 时序分组的关节位置、按 CAN 时序分组的关节速度,以及上一步动作。形式化地:
$$o_t = \big[\ \omega_t,\ \tilde{g}_t,\ v^{\mathrm{cmd}}_t,\ \{q^{(k)}_{t-\Delta_k}\}_k,\ \{\dot{q}^{(k)}_{t-\Delta_k}\}_k,\ a_{t-1}\ \big], \qquad \Delta_k \in \{0, 1, 2\}$$
其中每组关节 $k$ 带着 CAN 轮询顺序决定的陈旧度到达。真值基座线速度被刻意排除,因为真机测不到它:用不可获得的信息训练,只会产出部署即崩的脆弱策略。
这一点值得停下来想一想。多数行走 baseline 会把真值基座线速度喂给策略,因为它让训练更容易、更快:收敛更快、数字更好看。但部署时这个信号消失了。机器人有 IMU 和编码器推出的关节状态,没有真值速度传感器。用不可获得的信息训练的策略会学会依赖它,而对不可获得信息的依赖只是一种延迟发生的失败。
critic 拿到的更多。训练期间它除了 actor 看到的一切,还额外获得真值基座线速度、脚高、脚离地时间、脚接触状态与接触力:
$$s_t = \big[\ o_t,\ v^{\mathrm{base}}_t,\ h^{\mathrm{foot}}_t,\ T^{\mathrm{air}}_t,\ c_t,\ F^{\mathrm{c}}_t \big]$$
| 信号 | Actor(部署) | Critic(仅训练) |
|---|---|---|
| IMU 角速度、投影重力 | 是 | 是 |
| 指令速度 | 是 | 是 |
| 关节位置 / 速度(按 CAN 分组,0–2 步错层) | 是 | 是 |
| 上一步动作 | 是 | 是 |
| 真值基座线速度 | 否 | 是 |
| 脚高、离地时间、接触状态、接触力 | 否 | 是 |
actor 与 critic 之间的这种不对称,是整个设计里相当优雅的一处。critic 是仅训练组件,从不在真机运行,因此可以接收仿真独有信号来帮助它学出更好的价值估计;actor 是部署组件,因此被限制在硬件真实存在的信号上。结果是一个"用丰富信息训练、只用机器人测得到的信息部署"的策略:critic 在训练期扛下重活,actor 就不必在部署时作弊。
没有步态时钟。Asimov 的运动学是它硬件特有的:踝的活动范围受并联机构限制,从别的机器人几何借来的手工步态相位只会无谓地约束策略。策略自己发现适配这套硬件的步态。
奖励集合很紧凑:速度跟踪、姿态惩罚、离地时间奖励、动作平滑、扭矩效率、姿态塑形、稳定性惩罚、接触力上限。奖励设计并不是主要瓶颈。策略只有在执行器模型、时序模型、观测接口都做到准确之后才变得可部署;在糟糕的系统辨识之上调奖励,什么都调不出来。
最后你得到什么
在最终栈上,Asimov 可以前进、后退、侧向行走,并在外部推扰下恢复平衡,全部由同一个底层策略处理。数据采集支持相机、音频、IMU 与电机关节状态;基础行走可通过遥操作完成;自定义 AI agent 可以经云 API 嵌入;还提供一个数字孪生,供你在碰硬件之前先做仿真工作。
v1 设计的诚实边界:操作(manipulation)暂不在范围内(夹爪几个月后到货,操作与 loco-manipulation 会在同一硬件上跟进);跳舞这类高级运动不在范围内;onboard 训练不在范围内。这些是版本一的边界,不是永久限制。
为什么要自己造
团队称自己花了超过 10 万美元从零学会人形机器人,好让别人不必从零开始:BOM、CAD 文件、仿真环境全部公开,基线行走策略也开源,你可以读它、重训它、或替换它。
自己造一台 Asimov,你会理解踝为什么用并联机构,理解 CAN 顺序为什么对控制重要,理解真值基座线速度为什么不能进 actor,理解"纯净仿真器"与"建模了真实时序的仿真器"的差别。这些理解无法从 YouTube 视频里获得,只能通过装配机器人、接电机线、跑策略、看它失败、再修好它来获得。多数想造人形机器人的人读完这篇会继续等:等更多文档、更成熟的套件、更好的时机。那个时机不会来。真正理解人形机器人的人,都是在它还不简单的时候就动手的那批人。
来源:本文为 X 文章 《How to build a humanoid robot at home》(作者:Asimov / Menlo Research,发布于 2026-04-11)的完整改编。参考资料:menlo.ai/asimov-1、装配手册 docs.menlo.ai/asimov/1、套件页 asimov.inc/diy-kit。全部图片与视频版权归 Asimov / Menlo Research。
原文来源:Asimov (X)https://x.com/asimovinc/status/2042975993217032453


