Paul Riseborough
00bada8f25
EKF: Clean up logic for horizontal position fusion
...
Remove reference to optical flow fusion mode
Simplify logic flow for selection of observation noise
Remove unnecessary conditional statement
9 years ago
Paul Riseborough
6f412a73b4
EKF: Use correct height gate when using external vision
9 years ago
Carl Olsson
0fafc49a49
fixed typos ( #147 )
9 years ago
Paul Riseborough
e272d5f003
EKF: Use consistent position noise values during alignment
9 years ago
Paul Riseborough
349c731375
EKF: remove PX4 dependant text output
9 years ago
Paul Riseborough
ac9b7a3df6
EKF: Ensure use of EV aiding inhibits use of other height sources
9 years ago
devbharat
d3bad9fdb0
Correct height fusion flag when using sensor other than baro
9 years ago
Paul Riseborough
25f1d1d766
EKF: Add fusion of external vision 3D pos data
9 years ago
Paul Riseborough
feb4db6347
EKF: protect against large IMU errors during initial tilt alignment
...
Turn off innovation consistency checks for height and synthetic position measurements until the tilt as aligned
9 years ago
Paul Riseborough
00973d6215
EKF: fix pos/vel fusion innovation variance bug
9 years ago
Paul Riseborough
020b87933e
EKF: replace fault status struct with a union to facilitate logging
9 years ago
Paul Riseborough
7f5669fb2d
EKF: consolidate covariance corrections
...
Combines the forced symmetry, variance limiting and zeroing of covariances for unwanted states in the one function.
This ensures a consistent correction is applied after every covariance prediction or correction.
9 years ago
Paul Riseborough
310bd97080
EKF: Improve protection against bad pos vel fusion
9 years ago
Paul Riseborough
727a43764f
EKF: update initial angle alignment check
9 years ago
Paul Riseborough
82da832816
EKF: tidy up Kalman gain calculations
...
Inhibiting of states is controlled via zeroing rows and columns in the covariance prediction so conditional logic in gain calculations is unnecessary.
9 years ago
Paul Riseborough
fe9f88a8b4
EKF: test new derivation
...
Use direct attitude parameterisation
Discard scale factors
Add accel bias
9 years ago
Daniel Agar
22d18d638c
enable Wshadow
9 years ago
Paul Riseborough
5bf02517a7
EKF: Rationalise use of rotation matrices and improve efficiency
9 years ago
Paul Riseborough
064a0e4dbc
EKF: Don't use GPS to set position noise when not using GPS
9 years ago
Paul Riseborough
6b2e2dba90
EKF: Add GPS height option and improve height recovery
9 years ago
Paul Riseborough
c58ab3e256
EKF: Enable fallback to baro alt when using range finder for height
9 years ago
Paul Riseborough
2ff338048d
EKF: Add support for range-finder fusion as primary height reference
9 years ago
Paul Riseborough
569886a4fc
EKF: Fix bug in velocity and position innovation consistency checks
9 years ago
Paul Riseborough
a30830a7a9
EKF: Scale position observation noise with GPS quality
...
This allows the filter to adapt to variations in GPs quality.
The range of adjustment in observation noise is limited to the range between a lower limit set by the GPS observation noise parameter and an upper limit set by the no-aiding observation noise.
9 years ago
Paul Riseborough
f55a0bff53
EKF: Fix code style
9 years ago
Paul Riseborough
1d40507af8
EKF: Set Kaman gains to zero for un-used states
...
This is a defensive programming technique. In theory this should not be necessary if the corresponding covariance entries are zero.
9 years ago
CarlOlsson
1e766c7510
moved fuse function to ekf_helper.cpp
9 years ago
Paul Riseborough
40e174b81c
EKF: Correct for sensor noise and baro offset during alignment
9 years ago
Paul Riseborough
9bfc11b660
EKF: Use specific position observation noise when flying without GPS
...
A larger position uncertainty is required when flying without GPS to reduce tilt attitude estimation errors caused by vehicle manoeuvring. This needs to be tuneable to allow optimisation for different use cases (e.g. outdoor vs indoor).
9 years ago
Paul Riseborough
7de1d39ce4
EKF: Improve use of position and velocity observation noise parameters
...
Fix bug where noise parameters were not being squared when calculating the observation variance.
Use GPS reported speed accuracy to set velocity observation noise and use the parameter to set the minimum.
9 years ago
Paul Riseborough
2b1e8fe910
EKF: Update tuning parameters
...
Set conservative defaults as a baseline for tuning
Add a missing parameter for magnetometer observation noise.
Correct error in definition of magnetic heading observations noise (previous parameter defined the variance directly, not the noise).
Scale vertical GPS noise to allow for average EPV to EPH ratio.
Update documentation and display names for consistency.
9 years ago
Paul Riseborough
f1b82057c0
EKF: Combine GPS velocity innovation gate parameters
...
Separate vertical and horizontal parameters for GPS velocity innovation gates are not required
9 years ago
Paul Riseborough
46b0e9654c
Add filter control logic
9 years ago
Paul Riseborough
9236f11c80
EKF: Add position and velocity innovation consistency checks
9 years ago
Roman
8d0022ab1e
enable estimator state and innovations data logging
9 years ago
Roman
f8354bb5e9
- do not fake vertical gps measurement as we have baro
...
- formatting
Conflicts:
EKF/ekf.cpp
9 years ago
Roman
8de8b0eb76
prediction and vel pos heading fusion working
9 years ago