1361 Commits

Author SHA1 Message Date
kamilritz
f99dbd8ca3 Improve naming and brackets 2020-01-07 08:14:59 +11:00
kamilritz
1c68709949 Rename mag ambiguous mag abbreviations with magnitude 2020-01-07 08:14:59 +11:00
kamilritz
a24aaad861 CleanUp GPS drift checks 2020-01-07 08:14:59 +11:00
kamilritz
c6e3f389d2 Replace calculation of earth NED rotation vector 2020-01-07 08:14:59 +11:00
kamilritz
9f053cb8c1 Simplify covariance getters 2020-01-02 19:26:57 +11:00
Paul Riseborough
0d0f46ec1c EKF: Don't run unnecessary makeRowColSymmetric operation
This operation is expensive when done to the whole covariance matrix and unnecessary after covariance prediction because we calculate the upper diagonal and copy across so it is already symmetric.
2020-01-02 19:26:57 +11:00
Paul Riseborough
166d260058 EKF: Provide auto-code output that uses (row, col) syntax for covariance matrix 2020-01-02 19:26:57 +11:00
kamilritz
92ba618f57 Improve on flash memory usage 2020-01-02 19:26:57 +11:00
kamilritz
459b76f9fd Make covariance matrices of type matrix::SquareMatrix
and use functions from Matrix to reset covariances.
2020-01-02 19:26:57 +11:00
Lorenz Meier
a4a694dd87 Disable Coverage option until GCC9 is default
This would simplify coverage builds, but is not widely available yet.
2020-01-01 17:03:04 +01:00
Lorenz Meier
3d3267ed1f Fix CMake configuration for coverage tests on Mac OS 2020-01-01 13:50:25 +01:00
Daniel Agar
57144beb98 gitignore update for in tree cmake builds 2019-12-31 11:18:53 -05:00
kamilritz
490c749f80 Revert if statement swap in resetMagHeading 2019-12-18 10:06:31 +01:00
kamilritz
a6bbafc7b0 Remove unnecessary initialiseCovariance
It is already called in reset()
2019-12-18 09:46:32 +01:00
kamilritz
ef9f1053d0 Random improvements 2019-12-18 09:46:32 +01:00
kamilritz
7d3814b1d8 Add orientation initialization tests 2019-12-18 09:46:32 +01:00
kritz
01495ede97 Clean initialiseFilter function (#687)
* Clean initialiseFilter

* Add const qualifiers
2019-12-17 13:36:28 +01:00
kritz
532c9abd4a Expand test framework and test cases (#685)
* Fix comment

* Ekf wrapper for testing

Add utility function for accessing information in the ekf object

* Add step function for Gps sensor

* Add RangeFinder and Flow to simulated sensors

* Add first fusion logic tests

* Add units to function name

* Use EXPECT_TRUE

* Adding missing qualifiers

* Improve EXPECT_ calls

* Improve naming
2019-12-17 11:35:45 +01:00
kritz
6c25ac5731 Tilt Initialisation: Average Filter -> LowPass Filter (#686)
* Tilt Initialisation: Average Filter -> LowPass Filter

* Add _is_first_imu_sample variable

* Remove not needed comments
2019-12-17 11:01:25 +01:00
Daniel Agar
98a1aae494 EKF: use Matrix cross product 2019-12-17 09:35:08 +01:00
kamilritz
0831c158f2 Move time update to sensor base class 2019-12-16 13:40:01 +01:00
kamilritz
1832bedd13 run_seconds 2019-12-16 13:40:01 +01:00
kamilritz
39b369d90b make ekf a shared pointer 2019-12-16 13:40:01 +01:00
kamilritz
f13f2f8452 use shared pointer 2019-12-16 13:40:01 +01:00
kamilritz
00cd720a66 Change folder name 2019-12-16 13:40:01 +01:00
kamilritz
b9dd1e54c5 Change file names 2019-12-16 13:40:01 +01:00
kamilritz
2d2edd90e3 ECL Unit Test Clean Up 2019-12-16 13:40:01 +01:00
kamilritz
6b25dbd6c7 SensorSimulator 2019-12-16 13:40:01 +01:00
kamilritz
85e0e6e89c Remove resetStates(AndCovariances) function 2019-12-13 16:50:56 +01:00
kamilritz
64652f523b Improve quality of comments 2019-12-12 08:48:10 +01:00
kamilritz
1bf09fd370 Remove EKF prefix from logged messages 2019-12-12 08:48:10 +01:00
kamilritz
88c4929c96 Use helper function to switch to gps height 2019-12-11 17:23:45 +02:00
kamilritz
042d9b6615 Remove dangerous _primary_hgt_source variable 2019-12-11 17:23:45 +02:00
kamilritz
66f707ede0 Remove non enterable if statement 2019-12-11 17:23:45 +02:00
kamilritz
cd030e7cd2 Remove switch to ev hgt during filter initialization 2019-12-11 17:23:45 +02:00
kamilritz
4bc6ae69ae Remove if statement that can not be entered 2019-12-11 17:23:45 +02:00
kamilritz
6941777e17 Remove obsolete vision sample counter during initialization 2019-12-11 17:23:45 +02:00
kamilritz
181303488c Log height innovation sensor specific 2019-12-05 20:09:34 +11:00
kamilritz
f32fce28a3 Fix gps vertical observation variance 2019-12-05 20:09:34 +11:00
kamilritz
ecd199d5d0 Fix vel pos test ratio 2019-12-05 20:09:34 +11:00
kamilritz
2df2dede2f Fix variance vs stdDev bug
(cherry picked from commit 0faea89da2a3326d070a6ecca93ec52ec3e29591)
2019-12-05 20:09:34 +11:00
kamilritz
3923c5fecb Add get*innovation* functions as overide 2019-12-05 20:09:34 +11:00
kamilritz
07e804676c Rename IMU biases 2019-12-05 20:09:34 +11:00
kamilritz
dae8c2f8dc Group velocity and position as a 3d vector 2019-12-05 20:09:34 +11:00
kamilritz
beedf1ce4f Add print statement to reset vel or pos function 2019-12-05 20:09:34 +11:00
kamilritz
5c038a3b43 Add stop*Fusion function 2019-12-05 20:09:34 +11:00
kamilritz
d5dc6bb8ea Clean get*innov* interface 2019-12-05 20:09:34 +11:00
kamilritz
86b9079bdc Refactoring velPos fusion 2019-12-05 20:09:34 +11:00
bresch
6b5f011bc2 ekf: use PDOP instead of GDOP as the TDOP (part of GDOP) is usually not available
PDOP is the position dillution of precision and is given by sqrt(VDOP^2+HDOP^2)
2019-11-25 17:18:40 -05:00
Daniel Agar
362a2dfa08
remove unnecessary <cmath> include 2019-11-22 11:16:51 -05:00