Browse Source

EKF: Don't modify accel bias states and variances when inhibited

master
Paul Riseborough 4 years ago committed by Daniel Agar
parent
commit
dd259a288f
  1. 8
      EKF/ekf.h

8
EKF/ekf.h

@ -700,8 +700,14 @@ private: @@ -700,8 +700,14 @@ private:
// measurement update with a single measurement
// returns true if fusion is performed
template <size_t ...Idxs>
bool measurementUpdate(const Vector24f &K, const SparseVector24f<Idxs...> &H, float innovation)
bool measurementUpdate(Vector24f &K, const SparseVector24f<Idxs...> &H, float innovation)
{
for (unsigned i = 0; i < 3; i++) {
if (_accel_bias_inhibit[i]) {
K(13 + i) = 0.0f;
}
}
// apply covariance correction via P_new = (I -K*H)*P
// first calculate expression for KHP
// then calculate P - KHP

Loading…
Cancel
Save