EKF 故障安全

EKF 故障安全系统监控 EKF(位置和姿态估计系统)的健康状况,以发现飞行器位置估计方面的问题(通常由 GPS 故障或罗盘错误引起),并防止 "失控"。

何时触发?

当罗盘、位置或速度的任何两个 EKF "差值 "高于以下值时,EKF 失效保护将触发 FS_EKF_THRESH 参数值 1 秒钟。

这些 "方差 "来自 EKF 本身,是表示 EKF 对其估计值的信心的数字。其值介于 0 和 1 之间,0 表示估计值非常可信,1.0 表示非常不可信。

EKF 通过比较多个传感器的结果来计算这些 "方差"。因此,举例来说,如果 GPS 位置突然跳变,但加速度计没有显示出突然的加速度,那么 EKF 的位置方差就会攀升(即可信度降低)。

可以在地面站上实时查看差异。如果使用Mission Planner地面站,请单击 HUD 上的 "EKF "标签。

./_images/ekf-failsafe-variance-viewer.png

触发故障安全保护后会发生什么?

  • (飞行)控制器的 LED 指示灯将闪烁红黄或蓝黄光,并发出声音警报

  • 如果连接了遥测功能,地面站的 HUD 上将显示 "EKF 变异"。

  • 在不需要 GPS 的手动飞行模式下(如稳定、Acro、AltHold),不会再发生任何情况,但飞行员将无法切换到自主飞行模式(Loiter、PosHold、RTL、Guided、Auto),直到故障清除为止。

  • 在需要 GPS 的自主模式中(如 Loiter、PosHold、RTL、Guided、Auto 等),GPS 会自动 FS_EKF_ACTION 控制行为。默认为 "1",表示载具将切换到 土地 模式。这是一种 "飞行员控制 "着陆模式,意味着飞行员可以控制翻滚和俯仰角度,但飞行器将以 "飞行员控制 "模式下降。 LAND_SPEED.它将着陆并最终拆除发动机

  • EKF 故障安全错误将写入数据闪存日志

发生 EKF 故障安全后,飞行员可以在手动飞行模式下重新获得控制权(使用飞行模式开关),例如 AltHold 将载具开回家。

调整故障触发保护机制的灵敏度

"这款" FS_EKF_THRESH 参数可进行调整,以控制失控保护功能的灵敏度。

  • 设置 FS_EKF_THRESH = 0 表示禁用 EKF 故障安全功能

  • 增加 FS_EKF_THRESH 值在 0.8 和 1.0 之间,以降低 EKF 故障安全的几率。增加该参数值的缺点是,在罗盘或 GPS 故障导致飞行器失控时,飞行器在自动切换到陆地模式之前将飞得更远。

  • 减少 FS_EKF_THRESH 低至 0.6,以增加快速触发 EKF 故障安全保护的几率。降低该值的不利之处在于,EKF 故障安全保护可能会在激烈机动时触发 LAND。

数据闪存日志示例

通过绘制数据闪存日志中的 NKF4.SP(位置创新)、NKF4.SV(速度创新)和 NKF4.SM(罗盘创新)值,可以查看 EKF 的创新情况。

下图显示了在一次实际的 EKF 故障安全事件中,EKF 对位置(绿色)、速度(红色)和罗盘(黄色)的创新。在这次事件中,外部干扰(可能来自附近的大功率无线电塔)导致 GPS 报告的位置和速度不准确。载具在速度和位置创新爬升超过 "陆地 "模式后很快切换到 "陆地 "模式。 FS_EKF_THRESH 0.8

../_images/ekf-failsafe-example-log.png

视频