善忘技术夹 Logo
善忘技术夹
善用佳软 CC BY-SA-NC 4.0 + Apache-2.0

手把手复刻 399 美元的鸭子机器人:社区开源 CAD 方案全拆解

一、399 美元的鸭子机器人,硬件居然不开源

去年 Hugging Face 开源了一只机器鸭。

叫 Microduck,25cm 高,737g,15 个舵机,用强化学习走路。官方售价 399 美元,在 Hugging Face 上开源了软件代码(Apache-2.0),但硬件不开源。没有 BOM 清单,没有可编辑的 CAD 文件,没有 PCB 原理图,没有装配文档。

你拿到手的只有一个 MJCF 仿真模型和 47 个 STL 网格文件。官方说”软件开源了,硬件你们自己看着办”。

但这难不倒开源社区。

二、社区逆向:从仿真模型反推出完整 CAD

一个叫 fanhao375 的开发者做了件很厉害的事:根据官方公开的 MJCF 物理仿真模型,逆向重建出了完整的 CAD 装配体。

项目地址:https://github.com/fanhao375/microduck-replica

MJCF 模型里包含了完整的运动学树信息:每个零件挂在谁身上、相对位置精确到 0.1mm、绕哪根轴转、行程多少、质量和惯量张量。这些数据虽然是为了物理仿真用的,但足够用来反推装配关系。

fanhao375 把这些信息还原成了三样东西:装配爆炸图(15 个部件沿运动链炸开,标注名称与质量)、完整 CAD 装配体(已应用世界变换的 STL 文件,直接导入 CAD 软件就是装好的样子)、紧固件清单(从 STL 孔位反推出 M2 螺丝系统)。

Microduck 装配爆炸图 图:Microduck 装配爆炸图,15 个部件沿运动链展开(来源:GitHub 官方仓库)

Microduck 的结构是这样的:

躯干主体 199g
├─ 左髋 yaw→roll → 左大腿 → 左小腿 → 左踝+脚
├─ 颈根 → 头 yaw/roll → 头部总成+喙 189g
└─ 右髋 yaw→roll → 右大腿 → 右小腿 → 右踝+脚

整机 737.2g   外形 144 × 141 × 264 mm

每条腿 5 个自由度,头颈 4 个,总共 14 个受控关节。整机装了 15 个 Dynamixel XL330 舵机,第 15 个驱动喙/下颚,走被动连杆,不进动作空间。

三、硬件清单:舵机、主控、电池、传感器

逆向出来的硬件清单:

组件型号/规格数量
舵机Dynamixel XL33015 个
主控Radxa Zero 3W(市售模块)1 个
电池索尼 NP-F970(2S)1 个
IMULSM6DSV16X1 个
ToF 传感器VL53L8CX1 个
摄像头IMX2191 个
轴承22×16×4 / 15×10×3若干
紧固件M2 螺丝系统77+28+20 个

主控板是 Radxa Zero 3W,一个市售的 ARM 开发板。之前有人误判是定制载板,后来从源码里确认是标准模块。

四、电控方案:从源码还原 PCB

官方没有公开 PCB 原理图,但 fanhao375 从 Rust 控制源码里把 PCB 的功能和协议完整还原了。

IMU 板:LSM6DSV16X + MCU + 半双工收发器,连接舵机和主控。协议已从源码还原,可以自己画板子。

HAT 板:负责给舵机供电和信号转发。如果不需要录音功能,可以用现成模块替代,甚至完全省略。

控制软件:官方的 Rust 运行时绑定 RK3566 芯片。因为主控是市售的 Radxa Zero 3W,官方 Rust 运行时可以直接跑,不需要移植。

运动策略:官方训练了 9 个 ONNX 策略模型。如果硬件完全照抄,策略可以直接用。如果改了电控方案,需要用官方开源的 microduck_rl 重新训练。

五、能造出来吗?

答案是:能造出机械结构,但整机复刻有挑战。

零件几何、装配关系、关节参数、紧固件清单、舵机选型、主控——这些都解决了。PCB 没有原理图,但功能已从源码还原。控制软件 Rust 运行时可直接跑。

但也有限制。

成本问题:Dynamixel XL330-M288-T 在欧洲零售约 €45.76/个,14 个舵机约 €640,已经超过了官方整机 $399 的售价。个人零散采购做不到规模化的价格。

STL 不是工程件:官方的 47 个 STL 是仿真用的,只关心外形和惯量,不保证配合公差、螺纹孔、热熔螺母座和走线空间。直接打印大概率装不起来,需要自行补充工程细节。

许可证限制:CAD 文件和装配图使用 CC BY-SA-NC 4.0 协议,不得商用。

六、构建日志:有人真的在打印

仓库里有一个构建日志,记录的是作者真的在动手做。头壳、躯干壳、腿部结构件和脚已经打印出来了,腿部件上的 M2 螺丝已经装进去了。

首批打印件 图:Microduck 首批 3D 打印件,腿部件螺丝已安装(来源:GitHub 官方仓库)

这不是纸上谈兵。作者在验证”仿真 STL 反推的装配数据在实物上到底对不对”,结论会如实记录——无论正反。

七、适合谁?

适合你,如果:

  • 你对双足机器人感兴趣,想低成本入门
  • 你有 3D 打印机,想打印一个能动的机器人
  • 你想学习硬件逆向工程的方法论
  • 你是具身智能研究者,需要一个低成本实验平台

可能不适合你,如果:

  • 你想完全零成本复刻——舵机 alone 就要 4000 多人民币
  • 你期望开箱即用——这需要自己调装配、自己画 PCB、自己调舵机参数
  • 你想商用——CC BY-SA-NC 协议不允许

八、写在最后

microduck-replica 最让我佩服的地方是它的方法论:没有官方 CAD,就从仿真模型反推。

MJCF 模型里的运动学树、质量惯量、关节参数——这些本来是给物理引擎用的数据,被 fanhao375 当成了逆向工程的线索。从仿真到实物的桥梁,就这么搭起来了。

399 美元的 Microduck 本身已经是个很酷的项目。而社区把它逆向复刻出来,让国内开发者可以用家用 3D 打印机和标准五金件在本地造出来——这件事本身就是开源精神最好的体现。

如果你想尝试,从仓库的 CAD 装配体和爆炸图开始。即使最后造不出完整的鸭子,逆向工程这套方法论本身就值得学习。


项目信息


互动时间:你对双足机器人感兴趣吗?有没有自己做过机器人项目?评论区聊聊。

喜欢这款工具?关注「善忘技术夹」全媒体

扫描二维码关注微信公众号与小程序,获取更多高品质开源软件推荐与效率工具测试。

善忘技术夹 微信公众号宣传图
微信公众号 (扫码关注)
善忘技术夹 微信小程序宣传图
微信小程序 (扫码即用)