Commit Graph

99 Commits

Author SHA1 Message Date
Peter Barker
38c6eb24cd AP_NavEKF2: avoid using struct Location
clang reports this could be a problem when compiling under some EABIs.  Remove it from most places as it is just noise, replace with class where we want to avoid including Location.h
2023-02-04 22:51:54 +11:00
Andy Piper
d3d841ec98 AP_NavEKF2: ensure wind estimation from airspeed can be used on its own 2022-12-14 19:19:58 +11:00
Peter Barker
c46a50f428 AP_NavEKF2: stop using GCS_MAVLINK.h in header files
... by passing through a reference to a link object instead
2022-08-16 09:45:51 +10:00
Peter Barker
83011580f3 AP_NavEKF2: avoid direct use of Location alt field 2022-03-22 10:33:37 +11:00
Peter Barker
dec4ba86b6 AP_NavEKF2: stop using AHRS as conduit for Compass pointer 2021-07-30 12:19:42 +10:00
Peter Barker
b5f165ce2e AP_NavEKF2: pass NavEKF failures back up to callers 2021-07-21 18:02:26 +10:00
Andrew Tridgell
6aca0bb08a AP_NavEKF2: allow for double EKF build 2021-07-10 07:20:41 +10: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