EKF: Improve protection against severe IMU accel errors

Use vertical velocity and position innovation failure to detect bad accelerometer data caused by clipping or aliasing which can cause large vertical acceleration errors and loss of height estimation. When bad accel data is detected:

1) Inhibit accelerometer bias learning
2) Force fusion of vertical velocity and height data
3) Increase accelerometer process noise
This commit is contained in:
Paul Riseborough
2017-04-07 08:47:13 +10:00
parent a1a5734443
commit 2f2ac5be43
5 changed files with 37 additions and 5 deletions
+3 -1
View File
@@ -123,7 +123,9 @@ Ekf::Ekf():
_gps_hgt_faulty(false),
_rng_hgt_faulty(false),
_primary_hgt_source(VDIST_SENSOR_BARO),
_time_bad_vert_accel(0)
_time_bad_vert_accel(0),
_time_good_vert_accel(0),
_bad_vert_accel_detected(false)
{
_state = {};
_last_known_posNE.setZero();