mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-10-22 21:43:33 +08:00
AirspeedValidator: add new check (variance after boot) and disable data stuck check by default
This new check is inteded to trigger if there is no data variation published by the airspeed driver for the first 10s after the first data is published. This is to capture malfunctioning sensors/drivers that do publish a value, this value though does not come from real sensor measurements. Previously this was captured by the data stuck check, but it has shown that some drivers can publish a stuck value without being actually malfunctioning (e.g. when the airspeed is outside of their measurement range). Checking for any data variation is the more conservative check that still catches the above described failure case. Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
This commit is contained in:
@@ -162,7 +162,8 @@ private:
|
||||
CHECK_TYPE_ONLY_DATA_MISSING_BIT = (1 << 0),
|
||||
CHECK_TYPE_DATA_STUCK_BIT = (1 << 1),
|
||||
CHECK_TYPE_INNOVATION_BIT = (1 << 2),
|
||||
CHECK_TYPE_LOAD_FACTOR_BIT = (1 << 3)
|
||||
CHECK_TYPE_LOAD_FACTOR_BIT = (1 << 3),
|
||||
CHECK_TYPE_DATA_VARIATION_BIT = (1 << 4)
|
||||
};
|
||||
|
||||
DEFINE_PARAMETERS(
|
||||
@@ -479,6 +480,8 @@ void AirspeedModule::update_params()
|
||||
CheckTypeBits::CHECK_TYPE_INNOVATION_BIT);
|
||||
_airspeed_validator[i].set_enable_load_factor_check(_param_airspeed_checks_on.get() &
|
||||
CheckTypeBits::CHECK_TYPE_LOAD_FACTOR_BIT);
|
||||
_airspeed_validator[i].set_enable_data_variation_check(_param_airspeed_checks_on.get() &
|
||||
CheckTypeBits::CHECK_TYPE_DATA_VARIATION_BIT);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user