模拟故障保护
故障保护 定义了安全使用 PX4 的安全限制和条件,以及触发故障保护时将执行的操作(例如,降落、保持位置或返回指定点)。
在软件在环仿真(SITL)中,某些故障默认处于禁用状态,以便于进行模拟。 本主题介绍如何在实际使用 SITL 仿真之前测试安全关键行为。
INFO
您也可以使用 硬件在环仿真(HITL) 来测试故障保护。 这使得模拟仅适用于已连接的地面控制站(GCS)、软件开发工具包(SDK)或其他 MAVLink 应用程序。
数据链路丢失
“数据链路丢失”故障保护(通过 MAVLink 无法获取外部数据)默认处于启用状态。 这使得仿真仅在连接了地面控制站(GCS)、软件开发工具包(SDK)或其他 MAVLink 应用程序时才能使用。
将参数 NAV_DLL_ACT 设置为所需的故障保护动作,以更改其行为。 例如,设置为 0
可禁用该故障保护。
INFO
在 SITL 中,当您执行 make clean
时,包括此参数在内的所有参数都会被重置。
遥控(RC)链路丢失
“遥控(RC)链路丢失”故障保护(无法获取来自遥控器的数据)默认处于启用状态。 这使得可以在地面控制站(GCS)用户界面中测试电池指示,而不会触发可能中断其他测试的低电量反应。
将参数 NAV_RCL_ACT 设置为所需的故障保护动作,以更改其行为。 例如,设置为 0
可禁用该故障保护。
INFO
在 SITL 中,当您执行 make clean
时,包括此参数在内的所有参数都会被重置。
低电量
为了模拟丢失和重新获取全球定位系统(GPS)信息,您可以停止/重新启动 GPS 驱动程序。 这使得可以在地面控制站(GCS)用户界面中测试电池指示,而不会触发可能中断其他测试的低电量反应。
要更改此最低电池百分比值,请使用参数 SIM_BAT_MIN_PCT。
要控制电池耗尽到最低值的速度,请使用参数 SIM_BAT_DRAIN。
TIP
通过在飞行过程中更改 SIM_BAT_MIN_PCT,您还可以测试电池容量恢复情况,以模拟不准确的电池状态估计或空中充电技术。
也可以使用 SIM_BAT_ENABLE 禁用模拟电池,例如,通过 MAVLink 提供外部电池模拟。
GPS 丢失
故障注入 可用于模拟许多传感器和系统中的不同类型的故障。 例如,这可用于模拟 GPS 信号缺失或间歇性中断、遥控(RC)信号停止或卡在特定值上、避障系统故障等等。
例如,要模拟 GPS 故障:
启用参数 SYS_FAILURE_EN。
在 SITL 实例的 pxh shell 中输入以下命令:
sh# 关闭(所有)GPS failure gps off # 开启(所有)GPS failure gps ok
有关支持的目标传感器和故障模式列表,请参阅 系统故障注入。