[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$f2quaixnpkbwxc":3},{"code":4,"message":5,"data":6,"timestamp":38},10000,"success",{"full_name":7,"position":8,"description":9,"language":10,"stars":11,"forks":12,"stars_gained":13,"age_days":14,"hn_threads":15,"one_liner":21,"summary_md":22,"topic":23,"github_topics":26,"license":27,"homepage":28,"updated_at":29,"history":30},"pollen-robotics\u002Fmicroduck",3,"A Tiny biped duck robot 🦆","Rust",10978,1407,1263,87,[16],{"id":17,"title":18,"points":19,"comments":8,"posted_at":20},49473636,"Paging security nerds to read the microduck GitHub",1,"2026-08-28","一个巴掌大的双足机器人，行走与跌倒恢复由强化学习策略驱动，配套完整机载软件栈。","## 解决什么问题\n\n会走路的消费级或科研机器人，要么是封闭黑盒，要么是只给硬件的套件，运动控制全得自己写。让一台便宜的足式平台真正站稳、被推倒后自己爬起来、还能安全地远程升级而不变砖，这才是大部分工作量所在。本仓库就是这只约 25 厘米、800 克的鸭子的机载软件：用神经网络策略以 50 Hz 驱动十五个舵机的控制回路，加上无线、摄像头、深度传感器和一套更新机制。策略本身在配套仓库 microduck_rl 里训练，导出为 ONNX 后由这里加载。\n\n## 有什么不同\n\n常见做法有两种：买带厂商 SDK 的商业四足，或者在舵机控制板上手写一套步态。这里的运动行为来自在 MuJoCo 中用 PPO 训练、并经过 sim2real 流程的强化学习策略，最终在 Rockchip RK3566 上以 ONNX 运行。第二个差异是架构选择：若干小型 Rust 守护进程通过 Unix socket 上的同一份 JSON-RPC 契约通信，手柄、手机 App、控制台和你自己的脚本发的都是同一类调用。第三，升级被当作一等公民——签名校验、健康检查门禁、可回滚。README 对设计取舍和未解问题写得异常坦率，这在偏硬件的仓库里很少见。\n\n## 适合谁\n\n已经买了或打算买这只鸭子，想改行为、从笔记本操控、或者在其守护进程上二次开发的人。想要一台便宜的小型足式平台、需要真实 sim2real 工具链和可读懂架构的机器人方向学生与研究者，也合适。不适合想要开箱即用、不打算折腾的买家；也不适合需要生产级 SDK 稳定性和长期 API 保证的团队——项目很年轻，且绑定特定硬件。只想学步态规划理论的，训练代码在另一个仓库。\n\n## 上手成本\n\n先得有实体机器人。README 提供了模拟器，可用真实守护进程对接 MuJoCo 中的身体，但这只是开发辅助，并非项目本体。整套栈针对特定 ARM 板卡，需要嵌入式交叉编译和基于 ssh 的部署。全 Rust，Apache-2.0，没有奇怪的许可限制。README 没有给出完整安装命令和主机工具链细节，动手前请先看 CONTRIBUTING.md 和开发板配置页。真正的风险是成熟度：更新机制、JSON-RPC 契约和文档都还在变动中，硬件耦合的项目在板卡版本变化后很容易失效。\n\n## 点评\n\n项目仅 87 天，拿下 10,859 星，只上过一天趋势榜——这是一次爆发，不是长期记录。Rust 周榜 +936、Hacker News 上只有一条三评论的帖子，说明关注度远大于实际使用量。就这个价位而言，代码组织清晰、文档少见地坦诚，设计文档和模拟器确实降低了动手门槛。但它的价值离不开拥有硬件，而且项目还没时间证明升级链路、守护进程和文档能撑过一年真实机器人的磨损。手里有鸭子、或想了解小型足式机器人软件究竟怎么搭的，值得一看；需要能长期依赖的东西，再等等。",{"slug":24,"name":25},"hardware","硬件与物联网",[],"Apache-2.0","https:\u002F\u002Fpollen-robotics.com\u002Fmicroduck","2026-10-24T19:35:44Z",[31,35],{"date":32,"stars":33,"stars_gained":34},"2026-10-24",10966,381,{"date":36,"stars":37,"stars_gained":34},"2026-10-25",10972,1792887592]