登录后签到切换到窄版
收藏本站 发布

从 Microduck 的开放实践出发:怎样一步步做出一台小型机器人

[复制链接]
查看: 32|回复: 0
发表于 2026-10-9 15:17:53 | 显示全部楼层 |阅读模式
大家好,我是 CONNOR。最近 Microduck 刷屏了,其实我很早就留意到了它。可能很多人的第一反应是:买一台回来玩玩。而今天,我想和大家一起换个角度看看:这样一台小型机器人,究竟是怎么被造出来的?

看到 Microduck 会走路、会起身,还公开了软件和强化学习训练代码,最容易产生的想法是:既然资料已经放出来了,我们能不能也做一台?

继续看官网、仓库和系统文档,会发现事情没有“下载代码、买齐零件、装起来”这么简单。Microduck 没有公开一套可以照着生产的整机图纸,但它把很多关键方法展示了出来:机器人怎样读取身体状态,走路模型怎样训练,电脑里的动作怎样放到真实机器上。

所以这篇文章只回答一个更直接的问题:

如果受到 Microduck 启发,想先做出一台自己的小型机器人,应该从哪里开始?每一步为什么要做,做到什么程度才算过关?

图:Microduck 的四种配色与不同姿态。来源:Pollen Robotics 官方 Press Kit[1]。

────────────

■ 零、先用简单的话说清楚:机器人是怎样做出来的

先把 RL、数字孪生、ONNX 等专业词全部放下。

做一台同类型的小型机器人,可以理解成“养一只会走的电子宠物”。整个过程先看成三件大事:

  |先造身体 → 再接上神经 → 然后教它站起来、走起来。

◆ 1. 机器人身体里的东西,分别有什么作用

(机器人部分 | 类似人的什么 | 它的作用)
1. 外壳、腿、关节 | 骨骼 | 决定身体长什么样、能不能站住、活动范围有多大
2. 舵机 | 肌肉 | 带动腿、头、嘴等部位运动
3. 电池、电源板 | 心脏和供血系统 | 给主控、舵机和传感器稳定供电
4. IMU | 人的内耳平衡器官 | 告诉机器人身体是否倾斜、旋转或正在摔倒
5. 摄像头、麦克风、距离传感器 | 眼睛、耳朵和触觉 | 感知人、声音、障碍物和周围环境
6. 实时控制与安全程序 | 反射神经和小脑 | 快速读取身体状态、限制危险动作、维持安全
7. RL 运动模型 | 经过训练形成的运动技能 | 决定走路时每条腿、每个关节下一刻怎样运动
8. LLM/大模型 | 负责理解和思考的大脑 | 理解语言、决定想做什么,但不直接控制电机
9. 遥控与调试工具 | 人给它下指令、医生查看检查结果 | 发送动作命令、查看传感器和故障日志

所以 RL 只是机器人其中一层。它主要解决“身体怎样运动”,并不负责聊天,也不会自动把机械、电池和电子系统设计出来。

先把机器人拆成四层,就不会把 RL、舵机和大模型混为一谈。机器人主体参考 Microduck 官方公开视觉,分层与标注根据本文整理,不是官方结构图。

◆ 2. 当机器人收到“向前走”时,里面发生了什么

    人或遥控器发出:向前走
↓
行为系统选择“走路技能”
↓
传感器读取身体状态
例如倾斜角度、关节位置和速度
↓
RL 运动模型计算
各个关节下一刻应该去哪里
↓
安全程序检查
有没有越过角度、速度、电流和温度限制
↓
舵机执行动作
↓
再次读取身体状态,继续调整
Microduck 大约每秒重复这套过程 50 次。因此它的走路不是播放一段固定动画,而是一边感受身体,一边不断修正动作:身体向左倒了,下一次计算就会调整腿部;地面变滑或有人推它,动作也会随状态变化。

一句“向前走”会在约 50 Hz 的闭环里不断经历感知、计算、安全检查和执行;所以机器人是在持续纠正,而不是播放预录动画。

◆ 3. 为什么不能一开始就造完整机器人

假设一个团队直接购买十几个舵机、打印完整外壳、装上电池,最后发现机器人站不起来。这时很难判断问题来自哪里:

· 舵机力量不够?
· 电池峰值供电不足?
· 腿太长或身体太重?
· 重心、关节方向或零位不对?
· 控制程序延迟太大?
· 还是 RL 模型本身有问题?

所以工程上会先做一个“单关节台架”,也就是只测试一只膝盖或一个关节:让一个舵机带着真实负载反复运动,测量它的力量、速度、延迟、温度、电流、摩擦和齿轮松动。

它的作用是:

  |先确认一块肌肉真实可靠,再决定整台机器人需要多少肌肉以及身体应该怎样设计。

单关节台架要回答力量、延迟、温度、电流、回差和断线安全六个问题。图中装置为 AI 生成的测试方法示意,不代表 Microduck 官方硬件结构。

如果一个关节都不可靠,装成整机只会让问题更难找、返工成本更高。

◆ 4. 为什么还要在电脑里造一个虚拟机器人

接下来要在电脑里建立一只实体机器人的“虚拟替身”,专业名称叫数字孪生。

它不是普通的三维动画,而是要写入真实物理数据:

· 每条腿多长、每个零件多重。
· 重心和惯量在哪里。
· 关节能够转多少度。
· 舵机力量、速度、延迟、摩擦和回差是多少。
· 电池电压如何变化。
· 地面有多硬、多滑。

为什么不直接让实体机器人练习走路?因为 RL 训练需要摔倒和失败非常多次。真实机器人每次只能训练一台,会损坏、松螺丝、消耗电池,而且速度慢、有安全风险。电脑里却可以同时放几千只虚拟机器人,让它们并行试错。

所以数字孪生的作用是:

  |给机器人提供一个摔不坏、跑得快、可以同时训练几千次的虚拟练习场。

◆ 5. RL 到底怎样把机器人“教会”走路

传统写程序可能会逐条规定:左腿抬多少度、右膝弯多少度、多少秒后落脚。RL 不这样做。

工程师主要制定“评分规则”:

· 按指定方向和速度走:加分。
· 保持身体直立:加分。
· 动作平稳、能耗较低:加分。
· 摔倒、自碰撞、关节乱甩:扣分。

虚拟机器人不断尝试动作、得到分数、调整神经网络,再重新尝试。经过大量训练,它逐渐形成一套走路经验,这套经验就是 Policy,也就是运动策略模型。

    尝试动作
↓
观察结果
↓
得到奖励或惩罚
↓
调整动作方法
↓
再次尝试
训练完成后,策略会被导出成 ONNX 文件。ONNX 可以简单理解为:

  |已经训练好的“运动技能文件”,真实机器人运行时不断调用它来计算下一步动作。

RL 的产物不是一台完整机器人,而是一份可被控制程序调用的运动技能文件;真正值得学习的是“建仿真—设计评分—训练—导出—验证”的方法。

◆ 6. 为什么开源的现成走路模型通常不能直接迁移

一个运动策略是按照特定身体训练出来的,就像一套完全按照某个人身体定制的走路方式。

如果目标机器人发生这些变化:

· 腿更长或更短。
· 身体更重、重心不同。
· 舵机力量、速度或延迟不同。
· 关节数量、顺序或旋转方向不同。
· 电池和结构的弹性不同。

原来的策略就可能立即失效。

因此,Microduck 最值得借鉴的并不是“它已经会走的模型”,而是它展示出来的整套训练方法:怎样建立仿真、设计奖励、模拟真实误差、训练策略、导出 ONNX,再把策略放进实机。符合许可证要求的代码可以继续使用;涉及具体身体参数和策略权重的部分,则需要围绕新的机器人重新完成。

◆ 7. 为什么仿真里会走,真实机器人还可能摔倒

因为虚拟世界永远比现实理想。虚拟舵机可能没有发热、松动和制造差异,电池也不会突然压降;真实机器人却会遇到这些情况。

所以必须做 Sim-to-real。它可以理解成:

  |先在虚拟学校学习,再去真实世界实习;发现哪里不适应,就回到虚拟学校针对性训练。

实际循环是:

    把策略放到实体机器人
↓
观察失败并保存完整日志
↓
找出仿真与现实的差别
↓
修改虚拟机器人的延迟、摩擦、回差、重量等参数
↓
重新训练
↓
再次放到实体机器人
Sim-to-real 不是一次“搬运模型”,而是实机测试、保存日志、查找虚实差异、修正并重新训练的循环。机器人主体为 AI 生成,流程根据本文整理。

如果仿真很稳、实机一落地就倒,通常不应该先“多训练几天”,而应检查关节方向、零位、IMU 坐标、控制延迟、动作缩放、输入归一化、执行器模型和质量惯量是否一致。

图:同一学习动作在仿真与实机中的并排对照。来源:Pollen Robotics 官方发布文[2]。

◆ 8. 为什么摄像头、语音和大模型要后做

大模型可以决定“想做什么”,但不能承担身体安全

13

主题

0

回帖

121

积分

注册会员

积分
121
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

春风AI技术论坛

在本版发帖返回顶部