Paul Riseborough
7612fa40ed
EKF: Don't start using GPS for height until all validity checks have passed
...
Consolidate intermittent data checks, improve variable and clarify usage.
6 years ago
Roman
cef2ba5ab9
implemented Kahan summation algorithm for adding process noise to delta
...
angle- and delta velocity bias variance
- the contribution of process noise per iteration for these states can be so
small that it gets lost if using standard floating point summation
Signed-off-by: Roman <bapstroman@gmail.com>
6 years ago
RomanBapst
0f49eb34a0
fixed method which calculates validity of terrain estimate
...
Signed-off-by: RomanBapst <bapstroman@gmail.com>
6 years ago
Daniel Agar
cd34ab802d
mathlib delete floorf in favor of math.h
6 years ago
Robert de Vries
340d85afc1
EKF: fix variable names in estimator_interface.h
...
This fixes issue #566
6 years ago
Matthias Grob
90b4c7c065
mathlib: fix floorf indentation
6 years ago
Sebastian Verling
710c52980e
fixed calculation of magentic table values by using floor instead of int casting
6 years ago
Beat Küng
54ac147ae8
Ekf: add set_min_required_gps_health_time() to allow configure minimum GPS health time
...
This does not change the default of 10 seconds.
6 years ago
Roman
770cd3c5cc
added python script for terrain flow derivation (optical flow for terrain
...
height estimation)
Signed-off-by: Roman <bapstroman@gmail.com>
6 years ago
Roman
c085d7295d
addressed review comments
6 years ago
Roman
8673ab0346
terrain estimator: constrain terrain state properly
...
Signed-off-by: Roman <bapstroman@gmail.com>
6 years ago
Roman
fbb51147b7
implemented use of optical flow for terrain estimation
...
Signed-off-by: Roman <bapstroman@gmail.com>
6 years ago
Hamish Willee
a27a43eafa
Fix up link to EKF docs
6 years ago
Mohammed Kabir
3f691891c4
EKF: control: stop vision yaw fusion on timeout
6 years ago
Martina
c4492b17c1
do not reset yaw if vehicle on ground
6 years ago
Julian Oes
14227eaf1d
CMakeLists.txt: fix cmake warning
...
This removes the cmake warning:
implicitly converting 'string' to 'STRING' type.
6 years ago
Paul Riseborough
f97f0b6ea3
EKF: Remove unnecessary code
...
_flt_mag_align_start_time is set on initial alignment and will always be >0 before this check can run
6 years ago
Paul Riseborough
43b5e26fe4
EKF: Fix bug causing continual yaw reset when EKF2_MAG_TYPE = 2
6 years ago
Roman
f95cd4b358
ground effect: removed dependency on local position
...
Signed-off-by: Roman <bapstroman@gmail.com>
6 years ago
CarlOlsson
7845ff4360
EKF: increase wind process noise scaler to 0.5
...
Signed-off-by: CarlOlsson <carlolsson.co@gmail.com>
6 years ago
CarlOlsson
32ca6f7030
ekf: scale wind process noise with low pass filtered height rate
6 years ago
CarlOlsson
938c8ad9ad
EKF: use hagl estimate if valid for when to trigger yaw reset on takeoff
6 years ago
Hamish Willee
8b4ae48c69
README: Fix link to EKF/ECL tuning guide
6 years ago
Carl Olsson
f0889c1760
EKF: fixed some comment typos
...
Signed-off-by: CarlOlsson <carlolsson.co@gmail.com>
6 years ago
Todd Stellanova
6e77b197c7
Add DataValidatorGroup tests, add more DataValidator tests ( #592 )
6 years ago
Daniel Agar
a892ececf8
cmake add ECL_TESTS option only enabled in standalone build
6 years ago
Paul Riseborough
fabd216ca5
EKF: Documentation edits
6 years ago
CarlOlsson
8d6e8ae078
EKF: update get_mag_decl_deg()
...
Signed-off-by: CarlOlsson <carlolsson.co@gmail.com>
6 years ago
CarlOlsson
2b17ced405
EKF: Clean up use of magnetometer declination. Before the innovation was not zero in fuseDeclination()
...
Signed-off-by: CarlOlsson <carlolsson.co@gmail.com>
6 years ago
CarlOlsson
1d91785a8e
EKF: correct quaternion order
6 years ago
CarlOlsson
000aa0de5d
EKF: do not update the newest attitude estimate in initialiseFilter(). Is is now done in alignOutputFilter()
6 years ago
CarlOlsson
96c5c14041
EKF: Change the EKF initialization to
...
1) init tilt
2) init yaw
3) init tilt uncertainty
4) init yaw uncertainty
Signed-off-by: CarlOlsson <carlolsson.co@gmail.com>
6 years ago
CarlOlsson
ea259d358d
EKF: initialize the newest attitude estimate to a valid quaternion
...
Signed-off-by: CarlOlsson <carlolsson.co@gmail.com>
6 years ago
CarlOlsson
6cf512f103
EKF: Also update the newest and oldest quaternion estimate in
...
alignOutputFilter()
Signed-off-by: CarlOlsson <carlolsson.co@gmail.com>
6 years ago
CarlOlsson
78122b20a6
EKF: fix the rotation direction of the buffered attitude solutions
...
in alignOutputFilter()
Signed-off-by: CarlOlsson <carlolsson.co@gmail.com>
6 years ago
CarlOlsson
56b6b7a778
EKF: cleanup use of _mag_filt_state
...
Signed-off-by: CarlOlsson <carlolsson.co@gmail.com>
6 years ago
CarlOlsson
37339de57c
EKF: remove unused variable
...
Signed-off-by: CarlOlsson <carlolsson.co@gmail.com>
6 years ago
Todd Stellanova
6c759e0e9f
Initial unit tests for DataValidator ( #588 )
6 years ago
Nuno Marques
4e0e68e905
Ekf: add more useful methods to interface with the covariances ( #543 )
6 years ago
Daniel Agar
a85d3a43ed
attitude_fw remove unused
6 years ago
Daniel Agar
c66f7f4a09
EKF drop unused timestamp from collect_gps() and pass data by const reference
6 years ago
Freek van Tienen
78b899c72d
Add Paparazzi compatibility ( #580 )
...
This adds support for the paparazzi autopilot to use this library as EKF.
The header order change has to be done in order to have std.h included to get certain defines at the start of the estimator_interface.h.
6 years ago
Daniel Agar
5cd331055f
cmake standalone build pin PX4/Matrix to commit
...
- 6b0777d815
6 years ago
Daniel Agar
1378ec1797
EKF mag_fusion avoid unnecessary double promotion
6 years ago
Carl Olsson
54ab8191e3
EKF: add method to get the terrain variance
6 years ago
Daniel Agar
c5554cae96
EKF tests update SWIG usage and use latest containers
6 years ago
Paul Riseborough
dd58e69549
EKF: Ensure FW yaw alignment method is used on first in-air reset
6 years ago
Paul Riseborough
3accab1ac5
EKF: protect declination fusion from badly conditioned earth field estimates
...
Fusion with large initial magnetometer biases errors can result in the the NE earth field states reducing in magnitude and effectively flipping sign.
EKF: Move declination state limiting into a separate function
EKF: Limit NE mag states after each 3-axis mag fusion
EKF: Fix bug in mag field strength look-up scale factor
6 years ago
Paul Riseborough
7bddbd1cc5
EKF: Update cleaned up autocode fragment with sign error fix and missing LD
6 years ago
Paul Riseborough
fe378fd761
EKF: Prevent unwanted declination fusion when re-starting 3-axis fusion
6 years ago