Paul Riseborough
ed7c5991eb
ekf2: Fix dimensional error in gyro and accel bias variance conversions
2021-09-29 09:58:41 -04:00
Paul Riseborough
223ca11aed
ekf2: update drag fusion parameter descriptions
2021-07-08 22:19:52 -04:00
Paul Riseborough
2d6363e0ef
ekf2: Add parameter for propeller momentum drag
2021-07-08 22:19:52 -04:00
Paul Riseborough
909326e9d8
ecl: use latest version with momentum drag fusion
2021-07-08 22:19:52 -04:00
Paul Riseborough
0c15624a0c
EKF: Fix clang-tidy complaint
2021-07-06 15:20:39 +02:00
Paul Riseborough
3beb5bcbe0
EKF: Fix momentum drag density altitude scaling and update comments
2021-06-22 18:50:56 +10:00
Paul Riseborough
97b5ae1e96
EKF: Fix derivation comments for drag fusion
2021-06-22 18:50:56 +10:00
Paul Riseborough
58d376e2be
EKF: prevent /0 and use pre-computed inverses
2021-06-22 18:50:56 +10:00
Paul Riseborough
de8625d255
EKF: fix sign error in bluff body drag fusion
2021-06-22 18:50:56 +10:00
Paul Riseborough
73d1e514d0
EKF: Extend drag fusion to include propeller momnetum drag
2021-06-22 18:50:56 +10:00
Paul Riseborough
b3c1bd6d40
EKF: Remove un-used code
2021-03-09 21:23:38 +11:00
Paul Riseborough
4bad2a272c
EKF: Use debug prints for NuttX builds
2021-03-05 19:06:59 -05:00
Paul Riseborough
c1f1415696
EKF: Add usage warning comment
2021-03-05 19:06:59 -05:00
Paul Riseborough
c2b86cdb20
EKF: Provide external reset of event records
2021-03-05 19:06:59 -05:00
Paul Riseborough
9d51ab079a
EKF: Remove duplicated event recording
2021-03-05 19:06:59 -05:00
Paul Riseborough
140ca3f48f
EKF: Add external monitoring of warning and information events
2021-03-05 19:06:59 -05:00
Paul Riseborough
90a445ddbc
EKF: upgrade some events from into to warning status
2021-03-05 19:06:59 -05:00
Paul Riseborough
602e65146c
EKF: Remove unnecessary initialisation
2021-02-09 19:55:32 +11:00
Paul Riseborough
6f664abc4a
EKF: Non functional changes arising from review
2021-02-09 19:55:32 +11:00
Paul Riseborough
b87778e61d
EKF: Make clip detection logic easier to follow
2021-02-09 19:55:32 +11:00
Paul Riseborough
9aa8d93efc
EKF: Use isRecent function
2021-02-09 19:55:32 +11:00
Paul Riseborough
e948b3505f
EKF: Don't reject vertical aiding data if inertial solution is bad
...
Also reduce clipping count threshold
2021-02-09 19:55:32 +11:00
Paul Riseborough
c566318db5
EKF: misc improvements to handling of accel clipping
2021-02-09 19:55:32 +11:00
Paul Riseborough
9c89fa3b29
EKF: Use IMU clipping to adjudicate bad accel data check
2021-02-09 19:55:32 +11:00
Paul Riseborough
4b4a9a925b
logger: Log takeoff_status
2021-02-03 17:44:12 +01:00
Paul Riseborough
9d1de3118f
land_detector: Rework ground effect calculation for MC
2021-02-03 17:44:12 +01:00
Paul Riseborough
b919f3ddf4
EKF: Restore protection from extreme innovation values
2021-01-21 20:55:42 +11:00
Paul Riseborough
efb78deef9
EKF: Set position fusion gate option false by default
2021-01-21 20:55:42 +11:00
Paul Riseborough
556a195320
EKF: Improve handling of non position mode large position innovations
...
These changes fix a bug that allowed IMU gyro errors that cause large tilt errors prior to start of aiding not resulting in large innovation test ratios.
2021-01-21 20:55:42 +11:00
Paul Riseborough
99575d73e1
EKF: Add bad accel bias checking for EV and range finder height use cases
2021-01-09 11:03:31 -05:00
Paul Riseborough
ff3c0a6136
EKF: Fix bug preventing recovery from bad delta velocity bias estimates
2021-01-09 11:03:31 -05:00
Paul Riseborough
96418101e1
test: Allow for larger vel variance growth due to dvel bias variance
2021-01-09 11:03:31 -05:00
Paul Riseborough
1b1c049e81
test: Update unit test to match expected behaviour
2021-01-09 11:03:31 -05:00
Paul Riseborough
dd259a288f
EKF: Don't modify accel bias states and variances when inhibited
2021-01-09 11:03:31 -05:00
Paul Riseborough
3e1f2d8674
EKF: Set dvel bias variance to stored value when state is inactive
2021-01-09 11:03:31 -05:00
Paul Riseborough
03fed323ab
EKF: Fix formatting
2021-01-05 21:08:28 +11:00
Paul Riseborough
31fca9c31d
EKF: Update GPS loss message
2021-01-05 21:08:28 +11:00
Paul Riseborough
c65cf13bb8
EKF; Treat combined sideslip and airspeed as a horizontal aiding source
2021-01-05 21:08:28 +11:00
Paul Riseborough
944b18c63e
EKF: Remove non useful status print
...
Local position is never valid when filter is initialised so there is no use printing the status.
2020-12-08 18:03:04 -05:00
Paul Riseborough
ee94980a8f
EKF: Clean up wind state activation logic
...
Ensure wind states are deactivated in one place and always when in a non-position mode.
Activate wind states separately for each observation method.
2020-12-08 18:03:04 -05:00
Paul Riseborough
44ebfb8c43
EKF: Don't report local position as valid when in a non-position mode
2020-12-08 18:03:04 -05:00
Paul Riseborough
3e4c38f6e8
ekf2: Fix bug causing excessive lane selection switching
2020-11-25 10:00:07 -05:00
Paul Riseborough
f666ebb995
EKF: Code format fix - replace 1E-x with 1e-x
2020-10-06 20:50:52 +11:00
Paul Riseborough
e82d0af6d2
EKF: Improve code clarity - non functional change
2020-10-06 20:50:52 +11:00
Paul Riseborough
1a7c68ea72
EKF: update change indicator
2020-10-06 20:50:52 +11:00
Paul Riseborough
759d217d5a
EKF: Improve protection for GSF weight collapse
2020-10-06 20:50:52 +11:00
Paul Riseborough
7c81350c7a
EKF: Don't yaw reset if not yaw induced nav failure
2020-10-06 20:50:52 +11:00
Paul Riseborough
bf0d70fc90
EKF: Protect against collapse of GSF weights
2020-10-06 20:50:52 +11:00
Paul Riseborough
fd849e0578
EKF: Fix specific force observation noise variance
...
Also add protection for out of range value.
2020-08-18 17:05:59 +10:00
Paul Riseborough
76f393dcb0
EKF: Use const reference instead of local copy
2020-08-18 17:05:59 +10:00
Paul Riseborough
c43307b8cf
EKF: convert drag fusion from Matlab to SymPy generated auto-code
2020-08-18 17:05:59 +10:00
Paul Riseborough
1e6c6f2d3c
EKF: update all output states when aligning output time horizon filter
2020-08-16 10:00:47 +10:00
Paul Riseborough
64ab2b087a
EKF: Only record successful sideslip fusion when states updated
2020-08-16 08:45:59 +10:00
Paul Riseborough
0fa7ef3517
EKF: Use ecl::powf for integer exponents
2020-08-16 08:45:59 +10:00
Paul Riseborough
168dbdf630
EKF: Convert sideslip fusion to use SymPy generated auto-code
2020-08-16 08:45:59 +10:00
Paul Riseborough
06aa78a291
EKF: Only record airspeed fusion event when states are updated
2020-08-16 08:45:26 +10:00
Paul Riseborough
486a461a5e
EKF: airspeed fusion derivation test comparison cleanup
2020-08-16 08:45:26 +10:00
Paul Riseborough
ede6204f85
EKF: airspeed fusion cleanup
2020-08-16 08:45:26 +10:00
Paul Riseborough
a5a43dbc6c
EKF: Convert airspeed fusion to use SymPy generated auto-code
2020-08-16 08:45:26 +10:00
Paul Riseborough
5907e81ef7
EKF: optflow fusion cleanup
2020-08-16 08:44:17 +10:00
Paul Riseborough
1ad042da23
EKF: Use ecl::powf in comparison test
2020-08-16 08:44:17 +10:00
Paul Riseborough
274523bd98
EKF: Use ecl::powf for integer exponents
2020-08-16 08:44:17 +10:00
Paul Riseborough
f20a5d814d
EKF: Remove redundant tilt check
...
Also fix comment indent
2020-08-16 08:44:17 +10:00
Paul Riseborough
1592db8f34
EKF: Convert optical flow fusion to use SymPy generated equations
2020-08-16 08:44:17 +10:00
Paul Riseborough
1f386c1bb8
EKF: Add yaw estimate SymPy generated code files
2020-08-16 08:43:29 +10:00
Paul Riseborough
510d93858f
EKF: move yaw estimator derivation into main filter derivation
...
Enables use of common components
2020-08-16 08:43:29 +10:00
Paul Riseborough
f89c52e840
EKF: use ecl::powf for integer exponents
2020-08-15 08:40:59 +10:00
Paul Riseborough
c91c78dcf6
EKF: Allow reset of yaw to EKF-GSF later in flight
2020-05-22 13:05:10 +03:00