Andrew Tridgell
a1508b58c1
AP_NavEKF3: use AHRS likely flying state
...
this sets inFlight when AHRS has indicated flying for 5s
8 years ago
priseborough
edee8396ba
AP_NavEKF3: Improve in-flight check for non fly forward vehicles
...
This will enable the EK3_MAG_TYPE 0 option to be used for multirotors
8 years ago
Dr.-Ing. Amilcar Do Carmo Lucas
6a01c65197
AP_NavEKF3: Fix long description of EK3_OGN_HGT_MASK parameter (NFC)
8 years ago
priseborough
49ec2b4032
AP_NavEKF3: Change default value of EK3_OGN_HGT_MASK
...
Turn off by default.
Update parameter description.
8 years ago
priseborough
6d14cf0ab8
AP_NavEKF3: Ensure reported local height = global height - origin height
8 years ago
priseborough
3ae7998f51
AP_NavEKF3: Allow reporting of origin height for specified instance
8 years ago
priseborough
e58ba8044d
AP_NavEKF3: Improve protection for badly conditioned dVel bias covariances
...
If variance falls below desired minimum, set state noise to a larger value.
If variance drops below safe value, set to desired minimum and reset off-diagonals to zero.
8 years ago
priseborough
bf963f8b65
AP_NavEKF3: Raise lower limit on del vel bias state variances
...
This is required to prevent co-variance matrix errors due to long periods without movement causing height divergence.
8 years ago
priseborough
628d140319
AP_NavEKF3: Make target covariance time step larger
...
The target covariance time step has been increased from 10 to 12 msec to improve conditioning of the covariance prediction calculation.
8 years ago
priseborough
2b97d0f5c9
AP_NavEKF3: Add public accessor for state variances
8 years ago
priseborough
9f97cbfc3b
AP_NavEKF3: Revert auto-code to original form and remove micro optimisations
...
To eliminate the possibility of editing errors, revert the covariance prediction auto-code to the original auto-code without the replacement fo the /2 and /4 operations. The compiler optimisations are able to correctly handle the /2 and /4 operations.
Also use local variables for intermediate covariance calculations. The use of class variables for these small arrays was unnecessary.
8 years ago
priseborough
f38fccd57c
AP_NavEKF3: Prevent possible race condition re-zeroing state variances
8 years ago
priseborough
7adaea6019
AP_NavEKF3: Improve partitioning and efficiency of the covariance prediction
...
This patch ensures that covariance matrix entries for inactive states are always set to zero.
It also halves the number of copy operations from the updated to stored matrix.
8 years ago
priseborough
a1c117360c
AP_NavEKF3: Ensure Kalman gain calculatons respect deactivated states
...
All Kalman gain calculations now explicity set gains for deactivated states to zero.
Previous use of loops to set gains to zero have been replaced with more efficient memset operations.
8 years ago
priseborough
5058405f8c
AP_NavEKF3: add gyro bias state inhibit and rework index limit calculation
...
Inhibiting gyro bias estimation during the initial tilt alignment speeds alignment.
The calculation of the maxmum state index required has been modified so that it can handle all combinations of inhibited states.
Limiting the maximum state index accessed by all EKF operations result in significant processing reductions when higher index states are not being used.
8 years ago
priseborough
0cba133a1e
AP_NavEKF3: Fix initialisation of state inhibit flags
8 years ago
priseborough
9da3caca47
AP_NavEKF3: Improve GPS reference height estimator
...
Fix rounding error bug preventing state from updating after initial convergence.
Decouple GPS reference height from published EKf origin height.
Add bitmask parameter to control update and publishing of GPS reference height.
8 years ago
Dr.-Ing. Amilcar Do Carmo Lucas
c1eb9fb9c3
AP_NavEKF3: Spell in comments
8 years ago
Dr.-Ing. Amilcar Do Carmo Lucas
d3a57b5965
AP_NavEKF3: Use SI units conventions in parameter units
...
Follow the rules from:
http://physics.nist.gov/cuu/Units/units.html
http://physics.nist.gov/cuu/Units/outside.html
and
http://physics.nist.gov/cuu/Units/checklist.html
one further constrain is that only printable (7bit) ASCII characters are allowed
8 years ago
Dr.-Ing. Amilcar Do Carmo Lucas
9cb068d3f4
AP_NavEKF3: Spell in coments
8 years ago
murata
46cba2c970
libraries: Delete the setting value for specific editor.
8 years ago
Dr.-Ing. Amilcar Do Carmo Lucas
23b7f1e645
AP_NavEKF3: Improve comments, typos
8 years ago
priseborough
4a898037e9
AP_NavEKF3: documentation update
8 years ago
Andrew Tridgell
a04aff7a7d
AP_NavEKF3: added inter-EKF scheduling cooperation
...
this changes the stragegy for load levelling between EKF cores so it
works between EK2 and EK3, and with future estimators as well.
It allows us to run EK3 and EK2 at the same time with good scheduling
performance
8 years ago
priseborough
0bf50fd56f
AP_NavEKF3: Add monitoring of average EKF time step
8 years ago
priseborough
3ce81967ae
AP_NavEKF3: Improve calculation and use of average EKF time step
8 years ago
priseborough
7abf9997e6
AP_NavEKF3: Correctly initialise dtIMUavg time step and apply LPF
8 years ago
priseborough
1301b9797a
AP_NavEKF3: Fix solution validity reporting bug
...
Fixes bug that causes relative position status to report as false when using optical flow and using range finder as the primary height sensor.
8 years ago
Andrew Tridgell
adb281cd4e
AP_NavEKF3: added timing statistics logging
8 years ago
priseborough
f208986d43
AP_NavEKF3: Reset covariance if bad mag fusion update
8 years ago
Andrew Tridgell
18b66f9eed
AP_NavEKF3: fixed reset of coviariance matrix
8 years ago
Randy Mackay
b255c7b370
AP_NavEKF: add setOrigin
8 years ago
priseborough
fb7104f4e3
AP_NavEKF3: add fusion method for body frame odometry data
8 years ago
Andrew Tridgell
248773a7c8
AP_NavEKF3: allow access to quaternion for each instance
8 years ago
priseborough
8250fe4943
AP_NavEKF3: fix documentation derivation references
8 years ago
priseborough
06c073e448
AP_NavEKF3: Update tilt alignment check
8 years ago
Jonathan Challinger
c7a73e84d6
AP_NavEKF3: apply height innovation floor only when barometer is in use
8 years ago
priseborough
56a9e2c462
AP_NavEKF3: Reference correct derivation
8 years ago
priseborough
18927395d7
AP_NavEKF3: log correct GPS for replay
8 years ago
priseborough
01551a4423
AP_NavEKF3: handle position jump caused by change in GPS receiver
...
If the GPS receiver selection changes and we are using GPS for height, the vertical position will be reset to the new GPS height measurement.
correct output observer history when doing a GPS height reset
8 years ago
Randy Mackay
3e039a6ba4
AP_NavEKF3: minor formatting fixes
...
No functional change
8 years ago
Randy Mackay
a80c0a231d
AP_NavEKF3: attempt to set-up every core
...
previously we would only call setup_core for the 2nd core if the first had been setup successfully
8 years ago
priseborough
7a8783f35e
AP_NavEKF3: Fix bug preventing reset to GPS
...
This fixes a bug that prevented the reset to the GPS position occurring if GPS velocity observations were still passing innovation consistency checks.
8 years ago
Randy Mackay
3f6a734a71
AP_NavEKF3: only use downward facing rangefinder
8 years ago
Michael du Breuil
1de198883d
AP_NavEKF3: Check gps vertical accuracy for aligning the GPS
8 years ago
Jacob Walser
ac1e1b9460
AP_NavEKF3: Add set_baro_alt_noise method
8 years ago
Francisco Ferreira
23f959b92f
AP_NavEKF3: fix copied parameter descriptions
8 years ago
priseborough
de7a679534
AP_NavEKF3: Enable simple heading fusion to be set for specific cores
8 years ago
priseborough
ccb952ba31
AP_NavEKF3: Use the same mag fusion method for all cores
...
The original reason for using a different method for the second core is no longer valid.
8 years ago
priseborough
e399f57ffa
AP_NavEKF3: prevent NaN if RNGFND_GNDCLEAR is zero
8 years ago