Paul Riseborough
eaf94935f0
EKF: Fix bug in initialisation of height and magnetic field
...
This prevents zero data being used to form the initial height and magnetic field.
Do not start sampling initial values until non-zero time values are retrieved from the buffer.
2016-04-05 22:23:37 +02:00
Paul Riseborough
03eac2f25e
EKF: Apply covariance prediction derivation changes
2016-04-05 22:23:37 +02:00
CarlOlsson
8678a939e2
removed reinitialization of intermediate variables
2016-04-05 14:18:47 +02:00
Roman Bapst
2632c930f7
Merge pull request #85 from CarlOlsson/add_error_reporting_tas
...
added fault status reporting
2016-04-04 18:52:06 +02:00
CarlOlsson
ec9902d802
added fault status reporting
2016-04-04 16:21:12 +02:00
CarlOlsson
1ea26b406a
change name to true_airspeed
2016-04-04 16:10:52 +02:00
Roman Bapst
27b894540e
put airspeed fusion logic but don't actually call it yet
2016-03-30 17:01:03 +02:00
Roman Bapst
1b7115dec9
increased airspeed fusion rate to 12.5Hz
2016-03-30 17:01:03 +02:00
CarlOlsson
f5a9afd278
moved init
2016-03-30 17:01:03 +02:00
CarlOlsson
f990d99790
fixed bug
2016-03-30 17:01:03 +02:00
CarlOlsson
4301e1105b
added commas
2016-03-30 17:01:03 +02:00
CarlOlsson
81fc086b76
adopted ekf_interface.h
2016-03-30 17:01:03 +02:00
CarlOlsson
d440c883b5
adopted ekf_interface.cpp
2016-03-30 17:01:03 +02:00
CarlOlsson
f8878d41dc
adopted ekf_helper.cpp
2016-03-30 17:01:03 +02:00
CarlOlsson
6bb2f7638c
adopted ekf.h
2016-03-30 17:01:03 +02:00
CarlOlsson
0918fa04c7
adopted ekf.cpp
2016-03-30 17:01:03 +02:00
CarlOlsson
92abf93c8f
adopted common.h
2016-03-30 17:01:03 +02:00
CarlOlsson
0fb1e0578b
added function for fusing airspeed
2016-03-30 17:01:03 +02:00
Paul Riseborough
400a6e12ba
EKF: Ensure all data in buffers is initialised
...
This is a defensive change to prevent introduction of NaN's into the filter if data is read from the incorrect place in the buffer.
2016-03-20 15:14:16 +11:00
Paul Riseborough
064a0e4dbc
EKF: Don't use GPS to set position noise when not using GPS
2016-03-16 20:12:36 +11:00
Paul Riseborough
c23d72ba29
EKF: Ensure filter control modes are correctly initialised
2016-03-16 17:22:27 +11:00
Paul Riseborough
9f3b1351f7
EKF: Don't initialise velocity to GPS on initial alignment
...
For initial alignment the velocity and position should start at zero
2016-03-16 17:20:57 +11:00
Paul Riseborough
687fcc70be
EKF: Explicitly define type conversion for GPS height
2016-03-16 17:18:20 +11:00
Paul Riseborough
e334a5dc57
EKF: Add check for NaN's on attitude states
2016-03-16 13:43:21 +11:00
Paul Riseborough
6b2e2dba90
EKF: Add GPS height option and improve height recovery
2016-03-16 10:40:51 +11:00
Paul Riseborough
63b0cf4360
EKF: Fix baro height offset bug
2016-03-14 15:51:15 +11:00
Paul Riseborough
49023f3d7e
EKF: fix travis build error
2016-03-13 21:56:28 +11:00
Paul Riseborough
7677a162aa
EKF: Don't start the output observer before the main filter has initialised
...
This prevents the possibility of output transients if alignment is delayed.
2016-03-13 21:17:51 +11:00
Paul Riseborough
d2407c3463
EKF: code style updates
2016-03-13 21:17:51 +11:00
Paul Riseborough
c58ab3e256
EKF: Enable fallback to baro alt when using range finder for height
2016-03-13 21:17:51 +11:00
Paul Riseborough
370f643f42
EKF: Enable use of range finder for primary height source
2016-03-13 18:44:34 +11:00
Paul Riseborough
109e0e6dfc
EKF: When commencing GPS aiding, don't reset local position and velocity if using optical flow
2016-03-11 11:03:43 +11:00
Paul Riseborough
26238bc2f5
EKF: Allow for change in position when defining the WGS-84 origin position
...
This allows GPS aiding to commence later in flight without step changes in local position output
2016-03-11 11:03:43 +11:00
Paul Riseborough
e0fcce1463
EKF: Make position and velocity reset publish success
...
Some users of the position and velocity reset functions will need to know if the reset has been successful.
2016-03-11 11:03:43 +11:00
Paul Riseborough
48f980b054
EKF: Fix syntax causing posix build to fail
2016-03-11 11:03:43 +11:00
Paul Riseborough
eab0ef4266
EKF: Update default process noise for terrain estimator
2016-03-11 11:03:43 +11:00
Paul Riseborough
962fd0aaf2
EKF: Adjust terrain process noise for gradient effect
2016-03-11 11:03:43 +11:00
Paul Riseborough
1a2da887ab
EKF: Fix bug in calculation of terrain estimator Kalman gain
2016-03-11 11:03:43 +11:00
Paul Riseborough
cc5512905a
EKF: prevent optical flow, GPS and baro fusion from blocking each other
2016-03-11 11:03:43 +11:00
Paul Riseborough
ffebaf384f
EKF: Set initial optical flow fusion monitor outputs to zero
2016-03-11 11:03:43 +11:00
Paul Riseborough
5acd1cbac4
EKF: Make definitions of parameters clearer for external use
2016-03-11 11:03:43 +11:00
Paul Riseborough
dd1d58bab5
EKF: Remove unnecessary matrix operations from optical flow fusion
...
The updated formulation means that H_LOS[][8] is always zero, so these operations are no longer required.
2016-03-11 11:03:43 +11:00
Paul Riseborough
b3b0f1347a
EKF: Make normal GPS mode the default
2016-03-11 11:03:43 +11:00
Paul Riseborough
d97d308ca7
EKF: Add control of optical flow and range finder fusion
2016-03-11 11:03:43 +11:00
Paul Riseborough
836fe39070
EKF: Update external interface functions to support optical flow
2016-03-11 11:03:43 +11:00
Paul Riseborough
2ff338048d
EKF: Add support for range-finder fusion as primary height reference
2016-03-11 11:03:43 +11:00
Paul Riseborough
2c2850c0ce
EKF: Add functions to get position and velocity state variance
2016-03-11 11:03:43 +11:00
Paul Riseborough
32b03819ef
EKF: Add function to calculate global position validity
2016-03-11 11:03:43 +11:00
Paul Riseborough
270451e17b
EKF: Update height reset to support range finder height use
2016-03-11 11:03:43 +11:00
Paul Riseborough
dca186c6e8
EKF: Add required declarations for optical flow
2016-03-11 11:03:43 +11:00