Browse Source

EKF: add missing initialisation for class variables

master
Paul Riseborough 8 years ago committed by Lorenz Meier
parent
commit
26a06567bb
  1. 3
      EKF/ekf.cpp
  2. 9
      EKF/estimator_interface.cpp

3
EKF/ekf.cpp

@ -114,9 +114,11 @@ Ekf::Ekf():
_hagl_innov(0.0f), _hagl_innov(0.0f),
_hagl_innov_var(0.0f), _hagl_innov_var(0.0f),
_time_last_hagl_fuse(0), _time_last_hagl_fuse(0),
_terrain_initialised(false),
_baro_hgt_faulty(false), _baro_hgt_faulty(false),
_gps_hgt_faulty(false), _gps_hgt_faulty(false),
_rng_hgt_faulty(false), _rng_hgt_faulty(false),
_primary_hgt_source(VDIST_SENSOR_BARO),
_time_bad_vert_accel(0) _time_bad_vert_accel(0)
{ {
_state = {}; _state = {};
@ -141,6 +143,7 @@ Ekf::Ekf():
_imu_del_ang_of = {}; _imu_del_ang_of = {};
_gps_check_fail_status.value = 0; _gps_check_fail_status.value = 0;
_state_reset_status = {}; _state_reset_status = {};
_dt_ekf_avg = 0.001f * (float)(FILTER_UPDATE_PERIOD_MS);
} }
Ekf::~Ekf() Ekf::~Ekf()

9
EKF/estimator_interface.cpp

@ -62,6 +62,7 @@ EstimatorInterface::EstimatorInterface():
_yaw_test_ratio(0.0f), _yaw_test_ratio(0.0f),
_tas_test_ratio(0.0f), _tas_test_ratio(0.0f),
_terr_test_ratio(0.0f), _terr_test_ratio(0.0f),
_beta_test_ratio(0.0f),
_time_last_imu(0), _time_last_imu(0),
_time_last_gps(0), _time_last_gps(0),
_time_last_mag(0), _time_last_mag(0),
@ -69,6 +70,7 @@ EstimatorInterface::EstimatorInterface():
_time_last_range(0), _time_last_range(0),
_time_last_airspeed(0), _time_last_airspeed(0),
_time_last_ext_vision(0), _time_last_ext_vision(0),
_time_last_optflow(0),
_mag_declination_gps(0.0f), _mag_declination_gps(0.0f),
_mag_declination_to_save_deg(0.0f) _mag_declination_to_save_deg(0.0f)
{ {
@ -78,6 +80,13 @@ EstimatorInterface::EstimatorInterface():
_delta_ang_prev.setZero(); _delta_ang_prev.setZero();
_delta_vel_prev.setZero(); _delta_vel_prev.setZero();
memset(_vibe_metrics, 0, sizeof(_vibe_metrics)); memset(_vibe_metrics, 0, sizeof(_vibe_metrics));
memset(&_mag_sample_delayed, 0, sizeof(_mag_sample_delayed));
memset(&_baro_sample_delayed, 0, sizeof(_baro_sample_delayed));
memset(&_gps_sample_delayed, 0, sizeof(_gps_sample_delayed));
memset(&_range_sample_delayed, 0, sizeof(_range_sample_delayed));
memset(&_airspeed_sample_delayed, 0, sizeof(_airspeed_sample_delayed));
memset(&_flow_sample_delayed, 0, sizeof(_flow_sample_delayed));
memset(&_ev_sample_delayed, 0, sizeof(_ev_sample_delayed));
} }
EstimatorInterface::~EstimatorInterface() EstimatorInterface::~EstimatorInterface()

Loading…
Cancel
Save