bresch
8626019ae0
EKF2: reset global position using variance
2024-12-03 13:04:25 +01:00
bresch
b19a6ee3b5
ekf2: store position state as lat/lon/alt
...
The position error state is still defined in a body-fixed NED frame but the
position state itself is latitude-longitude-altitude.
2024-11-22 15:13:47 +01:00
Daniel Agar
6c24413888
ekf2: filter flow vel (used for flow velocity reset)
...
- individual flow samples can be quite erratic
2024-08-27 10:38:17 -04:00
bresch
a50ef2eb5e
ekf2-terrain: make terrain validity based on uncertainty
...
When using optical flow for terrain aiding, we cannot assume that the
terrain estimate is valid if flow is fused as is can only be observed
during motion. When no direct observation is available, the terrain is
assumed to be valid if its 1sigma uncertainty is < 10% of the hagl.
2024-06-26 11:05:38 +02:00
bresch
68980b59e2
ekf2: add terrain state
2024-06-26 11:05:38 +02:00
bresch
51883fe5d4
ekf2: integrate mag heading into mag 3D
2024-04-05 22:26:03 -04:00
bresch
12fefbcfbd
ekf2: use global definition of quaternion error
2024-04-05 22:26:03 -04:00
bresch
e9d43015ce
ekf2: fix unit tests failing due to mag fusion changes
2024-02-27 12:33:43 -05:00
bresch
9d9766c6cf
ekf2: use Joseph stabilized covariance update
2024-02-26 12:32:59 -05:00
bresch
1c3a1183c8
ekf2-flow: refactor control logic
...
Use flow rates instead of integrals in backend. This allows us to delay
the data to the mitpoint integration time and simplifies the code in
general.
Gyro compensation can still be done in EKF2 if needed, but the
flow module normally already appends the correct gyro data to the flow
message.
2023-11-21 21:56:34 -05:00
Daniel Agar
153f7bbced
ekf2: update all copyright headers
2023-09-15 10:02:09 -04:00
Daniel Agar
a430f0ccae
ekf2: add simple zero velocity update when vehicle at rest ( #19149 )
...
- further decreases initial tilt alignment time (now down to 2.5 seconds if still) and improves initial bias estimates
2022-03-12 12:56:31 -05:00
bresch
340a2caa8e
ekf2_test: use motion_planning library
...
The VelocitySmoothing class from the motion_planning library is used to
generate trajectories in order to test the EKF convergence during motion
2021-10-25 18:06:38 -04:00
Daniel Agar
2cf66a5d8f
ekf2: move EKF out of ecl
2021-07-15 10:38:24 -04:00