Browse Source

EKF: Don't report local position as valid when in a non-position mode

master
Paul Riseborough 4 years ago committed by Daniel Agar
parent
commit
44ebfb8c43
  1. 8
      EKF/ekf.h
  2. 2
      EKF/estimator_interface.h

8
EKF/ekf.h

@ -196,7 +196,13 @@ public: @@ -196,7 +196,13 @@ public:
// and have not started using synthetic position observations to constrain drift
bool global_position_is_valid() const
{
return (_NED_origin_initialised && !_deadreckon_time_exceeded && !_using_synthetic_position);
return (_NED_origin_initialised && local_position_is_valid());
}
// return true if the local position estimate is valid
bool local_position_is_valid() const
{
return (!_deadreckon_time_exceeded && !_using_synthetic_position);
}
bool isTerrainEstimateValid() const { return _hagl_valid; };

2
EKF/estimator_interface.h

@ -159,7 +159,7 @@ public: @@ -159,7 +159,7 @@ public:
int getNumberOfActiveHorizontalAidingSources() const;
// return true if the local position estimate is valid
bool local_position_is_valid() const { return !_deadreckon_time_exceeded; }
bool local_position_is_valid() const { return local_position_is_valid(); }
// return true if the EKF is dead reckoning the position using inertial data only
bool inertial_dead_reckoning() const { return _is_dead_reckoning; }

Loading…
Cancel
Save