Paul Riseborough
c8bd415b00
AP_NavEKF : Add sideslip constraint to allow plane flight without magnetometer
2014-03-09 19:59:17 +11:00
Paul Riseborough
52fabc822f
AP_NavEKF : Add low speed magnetometer calibration option
2014-03-09 19:59:16 +11:00
priseborough
6ace31b6c1
AP_NavEKF : Fix bug that leaves height unconstrained in static mode
2014-03-09 19:27:21 +11:00
Paul Riseborough
94ff7522fc
AP_NavEKF : Fix bug in initial East mag field state variance
2014-03-08 07:44:34 +11:00
Andrew Tridgell
449d09051e
AP_NavEKF: cope with compass going offline while in flight
2014-03-02 14:32:10 +11:00
Andrew Tridgell
77f91e6250
AP_NavEKF: don't assume the number of gyros == number of accels
2014-03-02 13:53:19 +11:00
Paul Riseborough
ebb3cc3348
AP_NavEKF : Use average of dual IMU gyro data when available
2014-03-02 13:28:44 +11:00
Paul Riseborough
a39d00fc13
AP_NavEKF : Fix bug that prevents Zacc bias state variance being updated
2014-03-02 13:27:22 +11:00
Paul Riseborough
573b3210dd
AP_NavEKF : Add div0 protection to the IMU1_weighting calc
2014-03-02 08:10:06 +11:00
Paul Riseborough
bd152d332c
AP_NavEKF : Add accel aliasing protection
2014-03-02 08:10:04 +11:00
Paul Riseborough
854f013146
AP_NavEKF : Fixes zero compass offsets on initialisation
2014-02-28 19:43:12 +11:00
Andrew Tridgell
736201689b
AP_NavEKF: only use the active accel from DCM if fly_forward is set
2014-02-27 17:40:13 +11:00
Paul Riseborough
62eff63267
AP_NavEKF : Increase the tuning range for magnetometer measurement noise
2014-02-27 17:20:38 +11:00
Andrew Tridgell
a9e683dada
AP_NavEKF: use the accelerometer chosen by DCM for each step
2014-02-27 09:41:48 +11:00
Paul Riseborough
78a1cac560
AP_NavEKF : Improved heading and magnetic field state initialisation
2014-02-27 08:12:10 +11:00
Paul Riseborough
d83b382e59
AP_NavEKF : Fix variance constraint bug
...
Constraining variances to a minimum value of 1e-9 was causing problems
with gyro bias and angular accuracy in noisy GPS environments.
Because the constraint is applied after every covariance prediction
and correction, a lower value of 0 is more appropriate.
2014-02-27 08:12:03 +11:00
Paul Riseborough
72a91ccbca
AP_NavEKF : Prevents aliasing triggering innovation consistency check failures
2014-02-25 15:55:44 +11:00
Paul Riseborough
5db9a87d31
AP_NavEKF : fixed bug in velocity rate of change filter
...
This bug meant the velocity rate of change used to scale the GPS measurement variances was noisy and too small
2014-02-23 19:50:37 +11:00
Paul Riseborough
01c84c3f47
AP_NavEKF : fixed bug in height limit range
2014-02-23 19:50:36 +11:00
Paul Riseborough
36d619ec3a
AP_NavEKF : Changed default IMU bias process noise to use smallest value
2014-02-23 19:50:36 +11:00
Paul Riseborough
89e0b48320
AP_NavEKF : Bug fix for height drift due to timer wrap-around
2014-02-23 19:50:35 +11:00
Paul Riseborough
939a32a7bb
AP_NavEKF : Improved stability of Z accel bias
2014-02-23 19:50:34 +11:00
Andrew Tridgell
4e56196655
AP_NavEKF: allow states to be accessed using names as well as a Vector22
2014-02-21 20:24:47 +11:00
Andrew Tridgell
20b0444c15
AP_NavEKF: remove sleep on init of EKF
...
this prevents HIL from locking up, and also prevents a possible 1s
delay in flight on EKF init
2014-02-19 22:04:12 +11:00
Andrew Tridgell
c9d0c1face
AP_NavEKF: use ahrs->get_armed() for static mode demanded
2014-02-19 10:52:57 +11:00
Andrew Tridgell
536160a3fb
AP_NavEKF: use AHRS get_correct_centrifugal()
2014-02-19 10:28:45 +11:00
Andrew Tridgell
869e41fd03
AP_NavEKF: fixed detection of airspeed sensor
...
the get_airspeed() AHRS call can change as the user enables/disables
the airspeed sensor, plus it only gets enabled after the NavEKF
constructor runs.
2014-02-19 09:22:45 +11:00
Paul Riseborough
1ade39977a
AP_NavEKF : covariance prediction cleanup
2014-02-19 09:22:45 +11:00
Paul Riseborough
8daca145d0
AP_NavEKF : useAirspeed set automatically
2014-02-19 09:22:45 +11:00
Paul Riseborough
6fbada26d3
AP_NavEKF : Improvements to staticMode robustness
2014-02-19 09:22:45 +11:00
Paul Riseborough
7a82746fcc
AP_NavEKF : fixed bug in pos and vel reset when in static mode
2014-02-16 22:35:19 +11:00
Paul Riseborough
275ef86f86
AP_NavEKF : Position and Velocity reset bugfix
2014-02-16 21:05:37 +11:00
Paul Riseborough
b22dc706b2
AP_NavEKF : staticMode bugfix and robustness improvements
2014-02-16 21:04:55 +11:00
Paul Riseborough
2926602718
AP_NavEKF : Cleaned up InitialiseFilterDynamic
2014-02-16 21:04:51 +11:00
Paul Riseborough
404fbafe26
AP_NavEKF : Changed timout behaviour to only reset PosVel states
2014-02-16 21:04:46 +11:00
Andrew Tridgell
24e1070eb2
AP_NavEKF: initialise quaternion from rotation matrix
2014-02-15 12:21:11 +11:00
Andrew Tridgell
c6b24c521b
AP_NavEKF: force healthy false when initialising
...
this prevents us feeding off our own values when booting
Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2014-02-15 09:25:40 +11:00
Andrew Tridgell
a7a44a9a5c
AP_NavEKF: fixed init order warning
2014-02-15 05:48:24 +11:00
Paul Riseborough
b56c8211c9
AP_NavEKF: Reduced number of Mavlink tuneable parameters
2014-02-15 05:48:23 +11:00
Paul Riseborough
deb64c4cbd
AP_NavEKF: Pos Vel reset after long GPS timeout
2014-02-15 05:48:23 +11:00
Paul Riseborough
7ac0172db1
AP_NavEKF: removed repeated intialisation
2014-02-15 05:48:23 +11:00
Paul Riseborough
28fb5e364b
AP_NavEKF: Fixed bug in pos/vel/hgt reset on timout
2014-02-15 05:48:23 +11:00
Paul Riseborough
f74cce8b4e
AP_NavEKF : Removed double to float conversions
2014-02-15 05:48:23 +11:00
Paul Riseborough
80f6dba694
AP_NavEKF: Improved control of fusion update intervals
2014-02-15 05:48:23 +11:00
Paul Riseborough
13b9daeff5
AP_NavEKF: Added constraints to Mavlink tuneable parameters
2014-02-15 05:48:23 +11:00
Paul Riseborough
b123e1bb16
AP_NavEKF: Improved in-air reset behaviour
2014-02-15 05:48:22 +11:00
Paul Riseborough
1651980b9f
AP_NavEKF: Improved behaviour following loss and regaining of GPS
2014-02-15 05:48:22 +11:00
Paul Riseborough
14eb63e7c9
AP_NavEKF: Made most tuning parameters Mavlink adustable
2014-02-15 05:48:22 +11:00
Andrew Tridgell
f800f5592d
AP_NavEKF: fixup parameter handling
2014-02-15 05:48:22 +11:00
Paul Riseborough
f0f76920fa
AP_NavEKF : Mavlink tunable parameter - first attempt
2014-02-15 05:48:22 +11:00
Paul Riseborough
128f71157d
AP_NavEKF: Fixed bug in pre GPS fix updates
2014-02-15 05:48:22 +11:00
Paul Riseborough
357743ee2d
AP_NavEKF: Adjusted tuning parameters for plane use
2014-02-15 05:48:22 +11:00
Paul Riseborough
b4171853b1
AP_NavEKF: allow initialisation before GPS lock to aid indoor testing
2014-02-15 05:48:21 +11:00
Paul Riseborough
7fb60812c2
AP_NavEKF: Added pitch and roll inertial sensor to body trim adjustment
2014-02-15 05:48:21 +11:00
Paul Riseborough
9d375da550
AP_NavEKF: changed sqrt to sqrtf
2014-02-15 05:48:21 +11:00
Paul Riseborough
1f0b4b02d0
AP_NavEKF: fixed merge error that inverted static mode
2014-02-15 05:48:21 +11:00
Paul Riseborough
5219869389
AP_NavEKF : Added Z accel bias state and bootstrap initialisation method
2014-02-15 05:48:21 +11:00
Randy Mackay
301a04b74a
AP_NavEKF: update params for copter
2014-02-15 05:48:21 +11:00
Paul Riseborough
5c3dea28dc
AP_NavEKF : Enable staticMode to be set externally
2014-02-15 05:48:20 +11:00
Andrew Tridgell
ab2a5a0672
AP_NavEKF: enable some debug
2014-02-15 05:48:20 +11:00
Paul Riseborough
0d4d287215
AP_NavEKF: comment and parameter tweaks for ground testing
2014-02-15 05:48:20 +11:00
Paul Riseborough
b6b0c2a489
AP_NavEKF: fixed bug in flag reset for hgt fusion
2014-02-15 05:48:19 +11:00
Paul Riseborough
2f3b2a7111
AP_NavEKF: second attempt at higher rate baro fusion
2014-02-15 05:48:19 +11:00
Paul Riseborough
cdbc5a3f35
AP_NavEKF: added position observations to static mode
2014-02-15 05:48:19 +11:00
Paul Riseborough
da2c341914
Revert "AP_NavEKF: Modifed Vel Pos fusion to fuse height data whenever baro reading has changed"
...
This reverts commit d1e1be192a0e7ab0771edc9f2c03547da25697cf.
2014-02-15 05:48:19 +11:00
Paul Riseborough
32cc427ff4
AP_NavEKF: Modifed Vel Pos fusion to fuse height data whenever baro reading has changed
2014-02-15 05:48:19 +11:00
Paul Riseborough
2998aa1a6a
AP_NavEKF: Amended tuning parameter list, and changed from variance to noise definitions
2014-02-15 05:48:19 +11:00
Paul Riseborough
f9aae1b90b
AP_NavEKF: fixed bug in variance constraint code
2014-02-15 05:48:19 +11:00
Paul Riseborough
735c9684da
AP_NavEKF: removed error in constructor comments
2014-02-15 05:48:19 +11:00
Paul Riseborough
8f999fe787
AP_NavEKF: Misc tuning adjustments for Plane testing
2014-02-15 05:48:19 +11:00
Paul Riseborough
c87a5aaf34
AP_NavEKF: added PositionReset public function to fix pre-arm loss of solution
2014-02-15 05:48:19 +11:00
Paul Riseborough
fec4fd463c
AP_NavEKF: reduced On Ground yaw gyro bias drift variance scaler
2014-02-15 05:48:19 +11:00
Paul Riseborough
619fffec3e
AP_NavEKF: added static mode for pre-arm and bench testing
2014-02-15 05:48:18 +11:00
Paul Riseborough
d0831c708d
AP_NavEKF : Added position and height reset public method
2014-02-15 05:48:18 +11:00
Andrew Tridgell
77c6e3206a
AP_NavEKF: some debug code
2014-02-15 05:48:18 +11:00
Andrew Tridgell
9b53db66cb
AP_NavEKF: tweak parameters based on randys copter log
2014-02-15 05:48:18 +11:00
Andrew Tridgell
4c42f53636
AP_NavEKF: use INS delta_time
2014-02-15 05:48:17 +11:00
Andrew Tridgell
5193ce90dc
AP_NavEKF: copter specific dtIMUAvg
2014-02-15 05:48:17 +11:00
Paul Riseborough
8b1d056e07
AP_NavEKF: updated timeout for GPS retry and reduced onGround gyro bias noise multiplier
2014-02-15 05:48:16 +11:00
Paul Riseborough
7e026d41df
AP_NavEKF: explicitly zeroed covariance matrix priro to setting initial values
2014-02-15 05:48:16 +11:00
Paul Riseborough
6e6e3d923e
AP_NavEKF: improved covariance matrix numerical stability protection
2014-02-15 05:48:16 +11:00
Andrew Tridgell
66dbaa6657
AP_NavEKF: make health() API const
2014-02-15 05:48:16 +11:00
Andrew Tridgell
c493d980d8
AP_NavEKF: fixed check for airspeed sensor available
2014-02-15 05:48:15 +11:00
Andrew Tridgell
2dbfed19b8
AP_NavEKF: fixed airspeed estimate check
2014-02-15 05:48:15 +11:00
Paul Riseborough
e69eea3086
AP_NavEKF: Bug fix in covariance error correction
2014-02-15 05:48:15 +11:00
Paul Riseborough
43dc9bc055
AP_NavEKF: Added improved covariance matrix error fix
2014-02-15 05:48:15 +11:00
Paul Riseborough
4a56ea84b5
AP_NavEKF: Removed accel bias states
2014-02-15 05:48:15 +11:00
Andrew Tridgell
2acf1e7ce5
AP_NavEKF: allow filter to run as single or double precision
...
useful for checking if there are numerical precision issues
2014-02-15 05:29:48 +11:00
Paul Riseborough
efd444b02e
AP_NavEKF: covariance protection (not enabled) and tuning changes for stability
2014-02-15 05:29:48 +11:00
Paul Riseborough
be9f276f45
AP_NavEKF: fixed compass offset sign error
2014-02-15 05:29:48 +11:00
Andrew Tridgell
ee774f69d0
AP_NavEKF: fixed some time handling bugs
...
use get_delta_time() and removed broken time wrap code
2014-02-15 05:29:48 +11:00
Andrew Tridgell
a53fc0636a
AP_NavEKF: zero more variables on filter re-init
2014-02-15 05:29:47 +11:00
Andrew Tridgell
91cbad52a1
AP_NavEKF: handle conversion of AHRS to handle altitude
...
fixed accuracy of position for cm level lat/lng
2014-02-15 05:29:47 +11:00
Andrew Tridgell
9ef71a9dec
AP_NavEKF: added healthy() API
2014-02-15 05:29:46 +11:00
Andrew Tridgell
ea0f9392ef
AP_NavEKF: don't report altitude yet, and removed debug code
2014-02-15 05:29:45 +11:00
Andrew Tridgell
33673c954d
AP_NavEKF: implemented getRotationBodyToNED()
2014-02-15 05:28:10 +11:00
Andrew Tridgell
2c86a490ed
AP_NavEKF: make it possible for NavEKF to be a AHRS member
...
ready for AHRS integration
2014-02-15 05:28:09 +11:00
Paul Riseborough
6f31961fb5
AP_NavEKF: Added height rate adaptive wind speed process noise
2014-02-15 05:28:09 +11:00
Paul Riseborough
de884dabab
AP_NavEKF: brought some tuning parameters out to header
2014-02-15 05:28:09 +11:00
Paul Riseborough
3ee5ef852b
AP_NavEKF : improved On Ground check
2014-02-15 05:28:09 +11:00