Andrew Tridgell
edbaf9f3c1
AP_NavEKF2: allow for double EKF build
2021-07-23 10:19:46 +09:00
Patrick José Pereira
53eb2f2bf4
AP_NavEKF2: Add missing const in member functions
...
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Peter Barker
445a461f12
AP_NavEKF2: remove getFilterTimeouts access methods
2021-01-22 13:04:36 +11:00
Peter Barker
dddb285209
AP_NavEKF2: remove internal-only getTiltError method
2021-01-21 21:26:17 +11:00
Peter Barker
6b60bae068
AP_NavEKF2: remove unused getAccelNED method
2021-01-21 21:26:17 +11:00
Paul Riseborough
b372d62f35
AP_NavEKF2: Add accessor function for body frame airspeed vector
2020-12-11 15:21:41 +11:00
Peter Barker
d600b87454
AP_NavEKF2: make logging a core concern
2020-12-01 13:06:04 +11:00
Andrew Tridgell
5f0e943f0f
AP_NavEKF2: use dal reference in EKF backends
...
saves a bit of flash space
2020-11-10 16:15:45 +11:00
Andrew Tridgell
6be3d19e82
AP_NavEKF2: convert to use AP_DAL for new replay structure
...
Co-authored-by: Peter Barker <pbarker@barker.dropbear.id.au>
2020-11-10 16:15:45 +11:00
Peter Barker
032b7c81e5
AP_NavEKF2: correct includes
2020-08-07 19:20:07 +10:00
Peter Barker
081c0bbfe0
AP_NavEKF2: correct comments on getFilterFaults and getFilterTimeouts methods
2020-07-07 10:50:41 +10:00
Randy Mackay
b95bc9076b
AP_NavEKF2: fix getLLH when no GPS
2020-05-10 15:35:55 +10:00
Randy Mackay
2919491298
AP_NavEKF2: getLLH fix when no GPS available
2020-04-24 20:29:18 +09:00
Randy Mackay
a9cbd5aa29
AP_NavEKF2: getDataEKFGSF and getYawData pass by reference
2020-04-24 09:43:23 +10:00
Paul Riseborough
de0040ad69
AP_NavEKF2: Enable use of EKF-GSF yaw estimate
...
Enables the yaw to be reset in flight to a value estimated from a specialised yaw estimator. This allows faster recovery if taking off with a bad magnetometer and also allows yaw alignment and GPS use to commence in-air when operating without any yaw sensing.
AP_NavEKF2: Add missing accesor functions for default airspeed
2020-04-24 09:43:23 +10:00
Andrew Tridgell
c9755cf9e6
AP_NavEKF2: make mag variance reporting consistent
...
logged scaled variance should match the value used in MAVLink
EKF_STATUS_REPORT
2020-04-06 17:30:29 +10:00
Peter Hall
e0eeb4f863
AP_NavEKF2: add initalized flag and change to uint32_t
2020-02-19 06:45:07 +11:00
Peter Barker
060c851709
AP_NavEKF2: make send_status_report const
2019-12-11 07:54:41 +09:00
Peter Barker
369292f7f3
AP_NavEKF2: stop relying on the presence of a RangeFinder
2019-12-11 08:09:01 +11:00
Paul Riseborough
c26c6fd078
AP_NavEKF2: Add missing vertical position derivative calculation
...
Use a third order order complementary filter to estimate the rate of change of vertical position output.
2019-10-18 11:15:25 +09:00
hoangthien94
fc9ff2b09a
AP_NavEKF2: add method to check if ext nav is used for yaw
2019-08-03 08:44:11 +09:00
Andrew Tridgell
9372073f63
AP_NavEKF2: continuously update gpsGoodToAlign
...
use it to determine how to handle a height datum reset
2019-07-07 19:20:32 +10:00
Michael du Breuil
892b687c09
AP_NavEKF2: Fix AP_GPS.h include
2019-06-18 10:02:05 +10:00
Pierre Kancir
50e99b6e1a
AP_NavEKF2: use get_distance_NE instead of location_diff
2019-04-08 08:00:52 -07:00
Paul Riseborough
a40208ebd4
AP_NavEKF2: Improve optical flow height estimation
...
Updated derivation using sequential fusion of Y and X axis data.
2019-04-02 10:51:12 +11:00
Dr.-Ing. Amilcar do Carmo Lucas
79ee52917f
AP_NavEKF2: replace location_offset() and get_distance() function calls with Location object member function calls
...
This allows removing duplicated code
2019-02-28 11:44:09 +11:00
Arjun Vinod
a0e7c37f8c
AP_NavEKF2: fixed typos
2019-02-22 10:21:35 +11:00
Tom Pittenger
b32e8a4424
AP_NavEKF2: remove HAL_CPU_CLASS_150 check, 150 is already a minimum requirement
2019-02-17 12:59:52 -08:00
Peter Barker
9be604e3ce
AP_NavEKF2: adjust for location flags being moved out of union
2019-01-16 11:45:29 +11:00
Michael du Breuil
66e9286cf6
AP_NavEKF2: Fix roundoff, and missing offset handling of getLLH
2018-09-21 00:18:49 +01:00
Andrew Tridgell
fb0deba3aa
AP_NavEKF2: send airspeed variance over mavlink
2018-04-30 15:41:31 +10:00
Paul Riseborough
c680b931dc
AP_NavEKF2: Enable fusion of external nav position data
2018-03-27 20:28:42 +09:00
Peter Barker
9c8466dc03
AP_NavEKF2: use GPS singleton
2017-12-27 00:58:02 +00:00
Pierre Kancir
171e80d8dc
AP_NavEKF2: only report terrain estimator innovations with valid rng value
2017-12-18 22:51:46 +00:00
Michael du Breuil
dffa3d3b40
AP_NavEKF2: Fix possible compass nullptr dereference
2017-08-01 15:25:05 +01:00
priseborough
027552ef44
AP_NavEKF2: Fix default behaviour for height origin corrections
...
Previous default was to apply in-flight height origin changes to local position instead of to reported origin height. This caused problems with copters that took off before getting GPS lock.
2017-07-17 02:22:02 +01:00
priseborough
fd25450632
AP_NavEKF2: Ensure reported local height = global height - origin height
2017-06-14 12:44:41 +01:00
priseborough
36e7dfb5f6
AP_NavEKF2: 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.
2017-06-14 12:44:41 +01:00
Randy Mackay
563be389ee
AP_NavEKF2: only use downward facing rangefinder
2017-02-27 15:18:10 +09:00
Michael du Breuil
8b69f1708e
NavEKF2: Add optional check for GPS vertical accuracy before aligning the EKF
2017-02-22 11:53:42 -08:00
Randy Mackay
66a9093cd0
AP_NavEKF2: getRangeBeaconDebug returns false on failure to get beacon data
2016-11-30 17:56:51 +09:00
priseborough
0ec8f0932a
AP_NavEKF2: Prevent output of NaN's in range beacon debug output
...
This can happen if this accessor function is called before the EKF states are initialised
2016-11-30 17:56:50 +09:00
priseborough
ef03a85cd3
AP_NavEKF2: add range beacon interface and fusion method
2016-11-30 17:56:43 +09:00
priseborough
7d48054e6f
AP_NavEKF2: Group GPS innovation tests when compiling error score
2016-11-24 19:58:07 +09:00
priseborough
f6021c959d
AP_NavEKF2: capture and publish vertical position reset deltas
...
Calculate the change in vertical position due to a internal EKF state reset or a EKF core switch
2016-11-24 19:57:45 +09:00
priseborough
e62863f9a1
AP_NavEKF2: Reduce unnecessary EKF core switching
...
1) Do not switch to a core until its states have been updated.
2) Distinguish between mandated switches required for health failure and optional switches required due to innovation checks failing.
3) Apply hyseresis to innovation check levels
2016-11-24 19:57:41 +09:00
priseborough
13ca62b1c7
AP_NavEKF2: Correct velocity and position outputs for IMU offset
...
This can improve position hold performance where it is not practical to have the IMU located at the centroid.
Although this enables the effect of IMU position offsets to be corrected, users will still need to be instructed to place the IMU as close to the vehicle c.g. as practical as correcting for large offsets makes the velocity estimates noisy.
2016-10-27 14:54:43 +11:00
Mathieu OTHACEHE
152edf7189
Global: remove mode line from headers
...
Using a global .dir-locals.el file is a better alternative than
reincluding the same emacs header in every file of the project.
2016-10-24 09:42:01 -02:00
Jonathan Challinger
dac59cb5da
AP_NavEKF2: use exact matrix for trim rotation
2016-10-13 10:02:14 +11:00
priseborough
635826c056
AP_NavEKF2: Fix reporting of terrain estimator innovations
...
Terrain height is relevant whenever optical flow data is present
2016-10-10 14:49:35 +09:00