YouDuck.ai

BAM 执行器模型

最后更新

BAM(Better Actuator Models) 是 Rhoban 团队的舵机建模与参数辨识框架。microduck_rl 的所有任务都用它的 M6 模型来仿真 Dynamixel XL330。

它建模了什么

  • 电压控制律 —— 舵机接收的是电压,不是力矩
  • 反电动势 —— 转得越快,可用力矩越小
  • 库仑摩擦 —— 与速度方向相关的恒定阻力
  • Stribeck 摩擦 —— 低速区的非线性摩擦,是静摩擦到动摩擦的过渡
  • 负载相关摩擦 —— 关节受力越大,摩擦越大

为什么这层决定成败

把舵机当成理想力矩源——「我要 0.3 Nm,就得到 0.3 Nm」——训练出的策略会依赖它实际上得不到的响应

具体表现是:仿真里策略靠一个快速的小幅调整维持平衡,而真机上那个调整因为静摩擦根本没发生,或者因为反电动势幅度不够,机器人就倒了。

这类失败的诊断难点在于,它看起来像「策略没训好」,而实际上策略在它所处的世界里训得很好——只是那个世界不是真的。

相关