面向机器人工程师的系统辨识入门
这篇短文为 RL、全身控制(WBC)、仿真和规划工程师提供讨论机器人系统所需的共同语言,不要求每个人成为系统辨识专家。
1. 系统、状态、观测与模型
被控系统(plant) 是被控制的真实或仿真系统。一般的状态空间模型为:
$$ \dot x = f(x,u;\theta), \qquad y = h(x;\theta) + v. $$
x:内部状态;u:指令或控制输入;y:测量观测;theta:未知或不确定的参数。
模型可以来自物理规律、经验关系或仿真器原生结构。系统辨识通过实验选择有用的模型类别,并拟合其中的未知量。
2. 模型结构与参数
这是两个不同的问题:
- 模型结构选择:系统应采用理想力矩控制、库仑摩擦、Stribeck 摩擦、柔性双质量传动、延迟系统,还是其他表示?
- 参数估计:在已选结构内部,哪些参数值最合适?
结构错误时,优化器只能得到“最合适的错误模型”;参数可能补偿缺失物理。例如真实执行器有齿轮箱柔性,而 Student 假定刚性,增大 armature、阻尼或延迟可能降低轨迹误差,却不对应真实物理量。
3. 常见执行器术语
| 术语 | 实际含义 |
|---|---|
| 惯量 | 对加速度的阻抗 |
| 折算惯量 | 经传动比映射到目标侧的电机/转子惯量 |
| 阻尼 | 随速度变化的能量耗散 |
| 摩擦 | 阻力矩,可能包含库仑、黏性、Stribeck 或负载相关项 |
| 静摩擦 | 接近零运动时的摩擦 |
| 柔顺性 | 负载下的变形程度,是刚度的倒数 |
| 回差 | 换向时的死区或齿轮间隙 |
| 共振 | 某个动力学模态被强烈放大的频率现象 |
| 饱和 | 电流、力矩、电压或速度上限 |
| 延迟 | 指令到响应或测量的滞后 |
| 带宽 | 执行器能较好跟随指令的频率范围 |
4. 激励与可辨识性
参数存在于模型中,不代表就能从数据中恢复。实验必须让它的影响在数据中显现。
- 缓慢的准静态运动适合观察重力和低速摩擦,却很少提供惯量信息;
- 高加速度运动有助于显现惯量;
- 方向反转有助于暴露回差与非对称摩擦;
- 扫频与多正弦激励有助于暴露频率相关效应和共振。
因此系统辨识包含实验设计,不只是优化。
5. 拟合与验证
不能只根据用于拟合的数据评价模型。常用划分是:
- 拟合集:优化器使用的轨迹;
- 验证集:不同轨迹、负载、频率、方向、温度或电压。
模型若只贴合训练轨迹,却在留出工况下失败,就还不是有用的系统模型。
6. 残差是诊断信号
本篇采用:
$$ e(t)=y_{real}(t)-y_{model}(t). $$
L0/L1 报告采用相反的符号 model - observed;看图时应先确认定义。残差的结构可以为缺失物理提供线索:
- 与速度相关:摩擦模型问题的可能线索;
- 与力矩/负载相关:力矩比例或负载相关摩擦;
- 集中于某个频带:缺少共振或柔性模态;
- 随温度改变:热相关效应;
- 换向后改变:回差或迟滞;
- 随电压偏移:电压/电流限幅效应。
这些关系用于提出假设,需要受控实验进一步区分。速度相关也可能由延迟引起。
7. 物理参数与等效仿真参数
拟合出的仿真参数可以有预测价值,而不具有字面物理含义。例如整机轨迹匹配得到的 MuJoCo armature 可以充当等效惯量项。除非得到独立验证,不应自动将其报告为测得的转子惯量。
8. 校准、辨识与域随机化
- 校准消除关节零点、方向、比例和偏置等确定性误差;
- 系统辨识估计动力学行为;
- 域随机化围绕剩余不确定性训练鲁棒性。
常见流程为:
已校准硬件 → 辨识后的标称模型 → 收窄不确定范围 → 鲁棒策略/控制
尽量不要用过宽的随机化范围掩盖尚未解释的系统误差。
9. 最小工程闭环
- 定义执行器/系统边界。
- 选择简单模型类别。
- 设计能显现目标动力学的激励。
- 拟合参数。
- 在留出工况上验证。
- 检查残差和频率响应。
- 只有证据需要时才增加模型复杂度。
- 在更大子系统上重复。