Jonathan Challinger
c53125f3b5
AP_NavEKF2: apply height innovation floor only when barometer is in use
2017-03-24 14:42:36 -07:00
Jacob Walser
646d68c76d
AP_NavEKF2: Fix parameter metadata
2017-03-22 16:16:26 -07:00
priseborough
44fa82d58c
AP_NavEKF2: Reference correct derivation
2017-03-13 11:31:51 +11:00
priseborough
407a60e599
AP_NavEKF2: log correct GPS for replay
2017-03-13 11:31:51 +11:00
priseborough
8c46d4316b
AP_NavEKF2: 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
2017-03-13 11:31:51 +11:00
priseborough
b7c4945000
AP_NavEKF2: 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.
2017-03-06 17:11:39 +11: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
Jacob Walser
e7a34b0fb3
AP_NavEKF2: Add set_baro_alt_noise method
2017-02-21 11:26:14 +11:00
priseborough
1a7b5538e5
AP_NavEKF2: Enable simple heading fusion to be set for specific cores
2017-02-15 19:17:53 +00:00
priseborough
a1d41edc4e
AP_NavEKF2: 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.
2017-02-15 19:01:10 +00:00
priseborough
5cd403c0b9
AP_NavEKF2: prevent NaN if RNGFND_GNDCLEAR is zero
2017-02-15 07:04:38 +09:00
priseborough
a63eac8073
AP_NavEKF2: Add missing perf_end
2017-01-27 16:57:42 +09:00
priseborough
7ea37029b6
AP_NavEKF2: use standard unit descriptor for milliseconds
2017-01-27 16:57:42 +09:00
Dr.-Ing. Amilcar Do Carmo Lucas
715d094678
AP_NavEKF2: Correct display names, bitmask and units
2017-01-16 19:07:26 +00:00
Francisco Ferreira
c6875e1756
AP_NavEKF2: remove editor information wrongly added in d408d25
2017-01-09 16:16:14 +00:00
Dr.-Ing. Amilcar Do Carmo Lucas
9389ec2274
AP_NavEKF2: fix parameter descriptions
2017-01-09 13:30:30 +09:00
Dr.-Ing. Amilcar Do Carmo Lucas
d408d25f92
More spelling stuff
2017-01-06 10:57:39 -08:00
Dr.-Ing. Amilcar Do Carmo Lucas
8419045aea
Spell in comments
2017-01-06 10:57:39 -08:00
murata
653030b038
AP_NavEKF2: Changed if statements to switch statement.
...
AP_NavEKF2: Change indentation.
2016-12-26 10:15:55 +09:00
priseborough
6dc7d25fde
AP_NavEKF2: Fix bug in loss of aiding fallback
...
Fixes a bug introduced by the introduction of range beacon fusion to the fallback test.
2016-12-21 18:08:39 +11:00
priseborough
fe69d9a0ea
AP_NavEKF2: remove duplicate include
2016-12-18 10:28:04 +11:00
priseborough
a8f3a374e2
AP_NavEKF2: replace sqrt function calls with sqrtf
...
Prevents compiler errors and un-wanted use of double precision types
2016-12-18 10:28:04 +11:00
priseborough
76106889d5
AP_NavEKF2: Prevent unwanted core switch on startup
...
Require primary core to be healthy for 10 seconds before starting selection logic
2016-12-13 01:18:28 +00:00
priseborough
69f3c83c20
AP_NavEKF2: Don't use speed switch criteria when speed estimate is invalid
...
Prevent unwanted switches from range finder to Baro height aiding due to triggering of the speed threshold
2016-12-09 21:17:28 +00:00
priseborough
14a0155f5e
AP_NavEKF2: Allow threshold speed for range finder use to be adjusted
2016-12-09 21:17:28 +00:00
murata
25e47cce6b
AP_NavEKF2: Changed sqrt method to sqrtf method.
...
AP_NavEKF2: Changed sqrt method to sqrtf method.
2016-12-07 15:41:41 +00:00
Randy Mackay
fc5f4c20cd
AP_NavEKF2: remove redundant check of beacon nullptr
...
thanks to muramura for spotting this
2016-12-01 14:53:26 +09:00
priseborough
665ba1c009
AP_NavEKF2: Fix bug in reporting of vertical position reset
...
Fixes a bug that allows the last reported reset time to to wind back and an out of date reset delta to be reported if a switch to a core that has previously been reset occurs.
Allows multiple consumers provided they access on the same frame.
2016-12-01 10:35:38 +09:00
priseborough
7f347e39dd
AP_NavEKF2: Fix bug in reporting of horizontal position reset
...
Fixes a bug that allows the last reported reset time to to wind back and an out of date reset delta to be reported if a switch to a core that has previously been reset occurs.
Allows multiple consumers provided they access on the same frame.
2016-12-01 10:35:38 +09:00
priseborough
656d9bb2c4
AP_NavEKF2: Fix bug in reporting of yaw reset
...
Fixes a bug that allows the last reported reset time to to wind back and an out of date reset delta to be reported if a switch to a core that has previously been reset occurs.
Allows multiple consumers provided they access on the same frame
2016-12-01 10:35:38 +09: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
Randy Mackay
fbecda7eeb
AP_NavEKF2: change order of variable initialisation
...
No functional change, this modifies the init order to match the declaration order.
2016-11-30 17:56:49 +09:00
Randy Mackay
82854953e7
AP_NavEKF2: minor comment fix
2016-11-30 17:56:48 +09:00
Randy Mackay
14a73e499a
AP_NavEKF2: initialise two range beacon structures
2016-11-30 17:56:47 +09:00
priseborough
2ee8250807
AP_NavEKF2: Changes from code review by @muramura
2016-11-30 17:56:46 +09:00
Randy Mackay
1f4606e48a
AP_NavEKF2: protect against null beacon
2016-11-30 17:56:45 +09:00
Randy Mackay
51ccfca31c
AP_NavEKF2: fix format of statustext for beacon init
2016-11-30 17:56:44 +09:00
priseborough
ef03a85cd3
AP_NavEKF2: add range beacon interface and fusion method
2016-11-30 17:56:43 +09:00
priseborough
0a177d04fd
AP_NavEKF2: Simply core switch implementation
...
Functionally equivalent
2016-11-24 19:58:10 +09:00
priseborough
7d48054e6f
AP_NavEKF2: Group GPS innovation tests when compiling error score
2016-11-24 19:58:07 +09:00
Randy Mackay
e9ea06bd10
AP_NavEKF2: minor comment fix
2016-11-24 19:58:03 +09:00
priseborough
0df45703f1
AP_NavEKF2: Fix errors in position reset delta publishing
2016-11-24 19:57:47 +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
murata
c808ee2f49
Global: To nullptr from NULL.
...
RC_Channel: To nullptr from NULL.
AC_Fence: To nullptr from NULL.
AC_Avoidance: To nullptr from NULL.
AC_PrecLand: To nullptr from NULL.
DataFlash: To nullptr from NULL.
SITL: To nullptr from NULL.
GCS_MAVLink: To nullptr from NULL.
DataFlash: To nullptr from NULL.
AP_Compass: To nullptr from NULL.
Global: To nullptr from NULL.
Global: To nullptr from NULL.
2016-11-02 16:04:47 -02:00
Andrew Tridgell
82365f8670
AP_NavEKF2: save some memory in the position offsets in EKF2
...
we don't need to copy that vector3f for every sample. A uint8_t does
the job
2016-10-27 17:09:06 +11:00
priseborough
c93c3d54f3
AP_NavEKF2: Don't correct for zero IMU position offset
...
The IMU offset correction involves a significant number of floating point operations and most users will leave the offset parameter at zero.
2016-10-27 14:54:44 +11:00
priseborough
1890bbdafa
AP_NavEKF2: Don't correct GPS for zero position offset
2016-10-27 14:54:44 +11:00