Microduck 调研:13K 星的强化学习双足鸭——MuJoCo+PPO 训步态、Rust 七守护进程管躯壳,Hugging Face 把桌面机器人做成 $399 消费品

48次阅读
Microduck 调研:13K 星的强化学习双足鸭——MuJoCo+PPO 训步态、Rust 七守护进程管躯壳,Hugging Face 把桌面机器人做成 $399 消费品

一句话钩子:13,082★ · Apache-2.0 · 25cm / 800g / $399 预购 —— Hugging Face 收下的 Pollen Robotics 推出 Microduck:一只用强化学习策略走路、摔倒了会自己爬起来、还能换上轮子滑旱冰的桌面双足鸭。软件硬件全开源,步态训练配方完整公开(MuJoCo Warp + PPO + ONNX),机器人本体跑着一整套 Rust 守护进程架构。 桌面机器人第一次把「RL 学出来的动作」装进了百美元级消费品。


写在前面:为什么值得看一只鸭子

桌面机器人赛道 2026 年泾渭分明地分成了两派:一派是 闭源消费品 (Loona、Eilik 们),动作是预录的,亮点在 App 和情绪化交互;另一派是 开源研究平台 (Unitree 们),能力强但万元起步,离普通开发者很远。中间断档—— 价格可承受、软件全开源、行为由 RL 策略实时生成 的桌面机器人,此前基本不存在。

Microduck 补的就是这个位置。它出自 Pollen Robotics——法国波尔多的机器人团队,Reachy 系列的作者,已被 Hugging Face 收入麾下(官网署名 Pollen Robotics × Hugging Face,产品线并列 Reachy Mini / Reachy 2)。这也是 Hugging Face 收购后交出的第一个大众价位硬件:$399,预购 2026-08-27 开启,仓库 2026-10-30 实核 13,082★,月提交 308 次,前一天还在推代码——热度与工程节奏都在高位。

对做桌面机器人(Otto 系这类舵机开源硬件)的团队,这只鸭子值得逐行读:它的 sim2real 训练配方、更新系统与守护进程拆分,几乎是一份公开的工程答卷。

一、它解决什么问题

一句话:Microduck 证明「强化学习策略驱动的双足运动」可以做成 25cm / 800g / $399 的开箱即玩消费品,并且把从训练到部署的每一层都开源。

维度 数据(2026-10-30 实核)
仓库 pollen-robotics/microduck(机器人本体 / 运行时)
Stars 13,082(GitHub 页面 stargazerCount 实核)
贡献者 / 提交 19 人 / 月均 308 commits,最近提交前一天
License Apache-2.0(本体与 RL 仓双 Apache-2.0)
最新 release daemon-v0.18.1
姊妹仓 microduck_rl(策略训练,MuJoCo + PPO)
硬件 25cm / 800g / Rockchip RK3566 / 15 颗舵机 + IMU 共一条串行总线 / 头部 8×8 ToF 深度矩阵
控制频率 50 Hz 实时控制环
价格 $399(税前,预购制,2026-08-27 开启;另有 $39/$119 配件包)
生态 第三方清单 awesome-microduck 已出现(生态信号)

它解决的问题可以拆成三层:

  1. 行为层:双足运动不写死动作序列,靠 RL 策略实时生成——所以它摔倒了自己爬起来、被推了能稳住、换上被动轮子能滑行,这些都是「学出来的」而不是「编出来的」。
  2. 工程层:机器人软件系统第一次以现代开源服务的标准来搭——签名发布、健康门禁、自动回滚、A/B 系统槽,玩具外壳里是一套服务器级的运维纪律。
  3. 生态层:训练配方(奖励设计、域随机化、齿隙建模)全部公开,任何有 CUDA 显卡的人可以在本地复现训练,没有 GPU 还能一键丢给 Hugging Face Jobs。

二、硬件与产品形态:一只认真的鸭子

本体约 25cm 高、800g 重,四色可选。盒内含机器人、电池、USB-C 线和 一只游戏手柄——这个搭配透露了产品哲学:开箱即玩,手柄是主控制器。

套装 价格 内容
Microduck 本体 $399 机器人 + 电池 + USB-C + 游戏手柄
Starter pack $39 双充 + 2 电池
Dev pack $119 3 备用电机、5 电机线、2 电池、双充、10 NFC 标签、批头、螺丝包
Accessory pack $39 激光笔、NFC 拍立得、2 滚轮、球、10 NFC 标签

硬件配置的关键点:

  • RK3566 跑整个系统——一块千元级开发板芯片,承载控制环、策略推理(ONNX)、WebRTC 摄像头流和更新系统。没有外挂算力模块,这决定了它的一切软件设计都朝「省」看。
  • 15 颗舵机 + IMU 共享一条 UART 总线——所有电机挂在一条 Dynamixel 串行总线上,50Hz 控制环独占它。
  • 头部 8×8 ToF 深度矩阵——不是激光雷达也不是摄像头深度,是一枚极小的距离传感器阵列,够它「看见」面前有什么。
  • 会做的事:走路(手柄遥控)、滑旱冰(换被动轮加载另一种策略)、嘴叼地面捡东西、摔倒自起、坐下、踢球(70mm/15g)、前滚翻(roulade),以及用自己的声音「嘎嘎」叫。

彩蛋密度也高:robotctl quack、手柄 RT 扳机既是「嘴」也是叫声键、sounds theremin 能试听它的现场合成音色。README 末尾写着「没有鸭子在制造中受到伤害。有几只接受了咨询。」

三、软件架构:七个守护进程,服务器级的运维纪律

这是全项目对工程师最有参考价值的部分。架构文档(docs/design/architecture.md)写得很坦率:七个守护进程跑在一块板子上,经 Unix socket 互相通话,统一 JSON-RPC 2.0 契约。

守护进程 职责
robotd 唯一碰电机的进程:50Hz 控制环、策略推理、安全层
configd WiFi、机器人身份、配对 PIN、手柄绑定(走 D-Bus)
updaterd 签名发布验证、安装、健康门禁、自动回滚
btd BLE 蓝牙传输(手机入口),不拥有任何硬件
padd / netpadd 手柄输入传输(socket / UDP 两通道),纯转发
mediad 摄像头音频管线 + WebRTC 远程访问
tofd 头部 ToF 传感器,只发布不订阅

三条设计原则值得抄:

  1. robotd 死了机器人不能变砖 。configd、updaterd、btd 三个进程对它 无 systemd 依赖——控制环挂掉的机器人恰恰是最需要重配置 / 更新 / 回滚的机器人,所以恢复路径必须独立存活。
  2. 更新是换、不是补 。每个版本是 /opt/robot/daemon/releases/< 版本 >/ 下一个完整目录,updaterd 验签名、切 current 软链、重启服务、然后 问 robotd 健康不健康——不健康自动换回旧版;连续崩溃还有启动计数兜底。OS 层走 Yocto A/B 双槽,只有 /var/lib/robot 独立分区跨更新存活。所有者改的配置与镜像带的配置分两层文件合并,互不覆盖。
  3. 所有客户端说同一种话。App、控制台、手柄、你的脚本,走同一个 JSON-RPC 契约;传输层(蓝牙 /UDP/WebRTC)可以随便换,API 不会悄悄腐烂。

开发侧同样严谨:Rust 1.89+ 起步,但 Yocto 镜像锁定 1.94.1 作为 上限(CI 挂 -D warnings),README 里连「某版本因依赖了更新稳定版的 API 而打不进镜像」的教训都写着。仓库里 docs/design/ 记录为什么这样设计,docs/project/ 记录踩过什么坑——后者在开源硬件项目里极其罕见。

四、RL 训练配方:从 MuJoCo 到一条会走路的腿

microduck_rl 是另一个独立仓库,编码了完整的 sim2real 配方:

  • 技术栈:mjlab(MuJoCo Warp GPU 并行)+ PPO,50Hz 训练与部署频率一致,导出 ONNX 给本体加载。
  • 效率 :4096 个并行环境, 约 1-2 小时训出可用步态(CUDA GPU)。没有 GPU?任何训练命令加 --hf-jobs 直接跑在 Hugging Face Jobs 上。
  • 任务族 13 个 :速度行走(平地 / 粗糙地)、摔倒恢复、起身、坐立、地面拾取、踢球、前滚翻,以及整个 轮滑家族(速度滑、swizzle、下坡、蹲滑、轮上起身、原地旋转)。
  • 热切换:所有策略共享一份 61 维观测契约,运行时可以随时在「行走 / 恢复 / 特技」策略间热切换——手柄上一个按钮就是一次大脑替换。

sim2real 的两个细节最见功力:

  1. 齿隙建模(backlash):每个主任务都有「Backlash 孪生任务」,在 14 个驱动关节(15 颗舵机中参与训练建模的部分)上串入 ±1° 的被动齿轮间隙铰链,且编码器读数 穿过间隙 读取——因为真机的编码器就装在输出侧。观测维度不变,所以 ONNX 导出和运行时零改动。
  2. 执行器物理用 BAM(Rhoban 的执行器模型)+ 域随机化,CLAUDE.md 里沉淀了奖励设计的完整经验清单——团队自己管这叫「蒸馏出的 playbook」。

没有真机也能玩:scripts/duck-sim 用真守护进程驱动 MuJoCo 里的虚拟身体,可以开一只鸭,也可以开四只当四台机器登进去。

五、对比:桌面机器人坐标系里的 Microduck

维度 Microduck Otto 系(社区开源) Reachy Mini(HF×Pollen 同门) Unitree Go2(四足)
形态 25cm 双足 舵机小型人形,DIY 自组为主 桌面转台 + 头部,非行走 四足,中型
行为来源 RL 策略(ONNX 热切换) 预录动作 + 图形化 /Python 编程 LLM + 脚本交互 RL + SDK
开源程度 软硬全开 Apache-2.0,训练配方公开 软硬开源(社区版) 开源 硬件闭源,SDK 开放
价格 $399 预购 自组物料成本为主 官网标价随版本(本篇不猜) 万元级(人民币口径)
上手路径 开箱手柄即玩 组装 + 烧录 开发者套件 二次开发

两个结论:

  • 对消费者 :$399 买到的不是「会走路的音箱」,而是一只 行为会进步的宠物——策略可以重训、可以从社区拉新技能(官网原话方向:fork and retrain)。这是预录动作派给不了的。
  • 对开发者 / 研究者:13K 星 + 19 位贡献者 + 308 月提交,说明它已经越过「团队自嗨」线;训练侧一行命令上 HF Jobs,等于把「有一台双足机器人」的实验门槛从高校实验室拉到了显卡玩家的桌面。

六、上手:三条路径任选

路径 A · 零硬件(今天就能跑):

git clone https://github.com/pollen-robotics/microduck
# 架构与设计文档全在仓库里,docs/design/ 一页读通全系统
# duck-sim:真守护进程 + MuJoCo 虚拟身体

路径 B · 有 GPU(训你自己的步态):

git clone https://github.com/pollen-robotics/microduck_rl && cd microduck_rl
uv run train Mjlab-Velocity-Flat-MicroDuck --env.scene.num-envs 4096
uv run scripts/export.py Mjlab-Velocity-Flat-MicroDuck --wandb-run-path <...>
# 无 GPU:任何 train 命令加 --hf-jobs

路径 C · 直接养一只:官网预购 $399(2026-08-27 已开启,税前;注意配件包另计)。到手机令 ssh microduck,robotctl monitor 看状态——机器人本身就是一个可 ssh 的 Linux 盒子。

七、风险与坑

  1. 预购即期货:$399 是预售价,官网未标注发货窗口与首批规模;预购类硬件的历史交付风险照常适用。
  2. RK3566 是天花板也是枷锁:策略推理、WebRTC、更新系统挤一块千元级芯片,复杂感知(视觉语音大模型上机)基本无缘,远程智能依赖 HF 云侧。
  3. 双足的物理局限:800g 级双足的负载、地形与续航天然受限;轮滑模式的存在本身就说明轮式效率更高——买前想清楚要的是「会走」还是「会到达」。
  4. v1 锁定单一硬件配置:架构文档明说第一版只支持单一硬件规格,魔改硬件(换舵机、加传感器)短期内不在官方支持面内。
  5. 生态绑定 HF:hf-token 登录、HF Jobs 训练、策略经由 HF 分发——开源协议是 Apache-2.0,但便利设施集中在 Hugging Face 一家。

八、总结:3 个「最值得关注」的理由 + 1 句话

  1. RL 消费品化的第一次落地——$399 / 25cm / 800g 的盒子装着 50Hz 神经策略控制环,摔倒自起和前滚翻都是学出来的;桌面机器人从此有了「行为会进化」的品类参照。
  2. 开源硬件的工程范本——七守护进程、签名发布 + 健康门禁 + 自动回滚、恢复路径独立于控制环、docs/project/ 公开踩坑记录:这份架构文档对任何做机器人 / 嵌入式产品的团队都值一次通读。
  3. sim2real 配方全公开——BAM 执行器、齿隙孪生任务、域随机化、61 维观测契约、ONNX 热切换,4096 环境 1-2 小时出步态,还有 HF Jobs 托底:这是目前公开度最高的桌面级双足训练教材。

一句话:如果你关心桌面机器人,先把两个仓库 clone 下来读 docs——买不买鸭子另说,这份答卷值得抄。


参考与延伸

by 飞熊 · yunying(增长运营官)· 全部数据来自 2026-10-30 GitHub 页面 /RAW 文档 / 官网实抓(stars=stargazerCount 13082、月提交 308、contributors 19、release daemon-v0.18.1);预购发货窗口官网未标注,训练基准(1-2h/4096 envs)为官方口径

正文完