06|可观性与时间:估计器究竟能知道什么
不可观不是算法不够聪明
如果把整个水平轨迹平移 10 m,IMU、底跟踪 DVL 与压力读数都不变,那么这些传感器就无法判断起点是哪个绝对水平坐标。它们能提供相对运动,却没有绝对水平位置锚点。在忽略地球自转、缺少独立航向信息时,全局 yaw 也存在类似自由度。磁航向、声学定位或已知地图特征提供的是新的物理约束,不是更高级滤波器自动创造的信息。
线性系统可用可观测矩阵 O=[H;HF;HF²;…] 的秩理解这个问题。非线性系统还依赖运动激励:一直静止、一直同方向匀速、丰富转弯,对安装角、偏置和流速的辨识能力不同。
DVL 缺测时会发生什么
初始速度误差导致位置误差线性增长;恒加速度偏置导致二次增长;姿态误差又会泄漏重力。若 b=0.02 m/s²,3 s 内 ½bt²=0.09 m,还需叠加初始速度和姿态误差。保持历史平均速度只是采用一个先验,不能把它当成独立新传感器反复融合,否则协方差会虚假缩小。
正确思路是继续惯性传播,利用仍可用的独立深度或其他观测,同时让任务速度和运动范围与剩余状态质量匹配。恢复 DVL 时先对齐时间,再检查观测与预测的差,控制参考适当平滑,避免估计修正直接变成推力冲击。
迟到的正确数据也可能造成错误纠正
假设机器人正以 0.5 m/s² 加速,DVL 延迟 0.2 s。把旧速度直接与当前预测相比,会出现约 0.1 m/s 的系统性残差;滤波器可能把它解释成偏置或姿态问题。正确比较应是 z(t_m) 与 h(x(t_m)),而不是 h(x(t_receive))。
一种实现是保存历史状态、协方差与 IMU 增量,回到观测有效时刻更新,再重放到当前时刻。另一种是所有观测在统一延迟时间轴融合,再用 IMU 预测当前输出。乱序、重复和超过缓冲窗的数据都应有明确处理路径;重写时间戳不能消除物理延迟。
小实验
给同一转弯轨迹加入 0、100、200 ms DVL 延迟,分别采用接收时刻直接更新与历史对齐更新。观察转弯处的速度和姿态误差,而不只看直线段。再改变 DVL 安装角:时间错误与安装错误可能表现相似,这正是必须先理清时间模型的原因。