# L2 · 在固定基座腿中分离执行器与刚体误差

耦合的腿可能在一个姿态拟合得很好，却掩盖误差到底来自执行器还是连杆模型。先把这个判断说清楚：预测改变姿态或加速度的哪一种方式能区分两种解释。本课引入多关节耦合，但暂不加入接触或浮动基座。

第一目标不是恢复所有惯性属性，而是学习哪些参数组合能被这些运动区分，以及部件证据怎样改变这种歧义。

本页中，**Student** 指拟合得到的腿部模型，**Oracle** 指生成参考运动的隐藏系统。实际力矩、真实连杆参数和内部力都是**诊断信号**，除非实验契约把它们声明为观测。

## 一个姿态可能掩盖两个错误子系统 {#failure}

从两关节固定基座腿开始。先选择应该区分假设的条件。连杆惯量错误的 Student 可能通过改变执行器比例或阻尼来改善轨迹。在一个姿态上两种变化可以互相补偿，在另一个姿态或频率下却会分开。

先预测：什么新条件能暴露刚体模型错误，什么条件能暴露时序或执行器错误。说明拟合前要固定哪些量。

## 声明耦合腿边界 {#boundary}

主要边界为

```text
关节指令 → 固定执行器/控制器边界 → 两关节固定基座腿 → 编码器观测
```

一般动力学包含耦合和重力：

$$
M(q)\ddot q + C(q,\dot q)\dot q + g(q) + \tau_f = \tau.
$$

Student 先拟合一个已声明的连杆惯性组，后续对比才允许有限的执行器参数。实际力矩、真实刚体参数和内部力仍然是评估或 Oracle 诊断信号。接触和浮动基座运动不在本课范围内。

## 运行隔离与耦合案例 {#comparison}

下面四个案例是**计划中的实验契约**，说明将要比较什么；在 runner 生成轨迹和报告之前，它们不是实测结果。四个案例使用相同公开拟合动作、控制器、参数尺度和预算：

| 案例 | 隐藏失配 | 教学目的 |
|---|---|---|
| A | 只有刚体参数组 | 观察耦合证据能否恢复刚体侧效应 |
| B | 只有执行器参数组 | 观察执行器误差怎样跨姿态/频率显现 |
| C | 两组同时失配 | 暴露补偿解 |
| D | 两组失配并加入部件约束 | 检查低层证据是否减少歧义 |

留出一个姿态或频率族。参数组应依据敏感度证据和元数据选择，不能查看最终评估后再决定。

## 阅读腿部证据 {#evidence}

runner 可用后，展示同步的关节轨迹、逐关节残差、参数相关性或损失切片，以及加入部件约束前后的留出误差。这些是本页计划展示的证据视图。记录 D 案例使用的额外执行器或部件数据。

约束可以减少歧义，却不能证明剩余参数都具有物理意义。如果低层拟合错误，把它带入整腿会让全局拟合看起来比实际更确定。

## 想一想 {#exercise}

B、C 案例的拟合误差相近。C 中执行器比例与连杆惯量在不同初始点下反向变化，留出姿态表现很差。你会选择什么下一步运动？先约束哪组参数？

<details markdown="1">
<summary>查看参考思路</summary>

选择能分别改变姿态和加速度的运动，例如在两个不同的第 2 关节姿态下重复第 1 关节激励，再加入第 2 关节激励。优先约束有独立部件证据、且敏感度支持较弱的那组，不要根据最终分数选择。加入约束后重新检查留出姿态。
</details>

常见误区是按最终分数选择参数组，或把更低的拟合损失当成物理正确性的证明。如果还不能选择，检查哪一组有独立部件证据、哪个条件会改变它的敏感度，然后重新运行留出姿态。当你能说出什么证据会推翻当前选择时再继续。

## 这条腿不能证明什么 {#limits}

固定基座腿不能证明接触、浮动基座动力学，也不能保证分别恢复所有质量、质心和惯量。等效参数仍可能在测试过的姿态/频率范围内预测良好。

L3 只加入一个新的不确定性类别：法向柔性接触，并保留本课自由空间证据。继续阅读 [L3 · 在自由空间验证后加入接触](../l3/index.zh-CN.md)。
