Paul Riseborough
8070691aa4
EKF: Add accessor function for velocity accuracy
8 years ago
Paul Riseborough
d6abf3f2e4
EKF: add accessor function for local position accuracy
8 years ago
Paul Riseborough
b7d0b3c4d0
EKF: Improve naming of WGS-84 accuracy accessor function
8 years ago
Paul Riseborough
d22599b440
EKF: Add reporting of inertial dead-reckoning status
8 years ago
Roman
7e2597ec28
update range sensor angle parameters in case they have changed
...
Signed-off-by: Roman <bapstroman@gmail.com>
8 years ago
Roman
aa53f45f15
terrain estimator: removed unused hrt dependancy
...
Signed-off-by: Roman <bapstroman@gmail.com>
8 years ago
Roman
6480fcc3d5
terrain estimator: fixed computation of filtered time since last range update
...
- do not use hrt to compute delta time
- limit filter state
- do not use static variables
Signed-off-by: Roman <bapstroman@gmail.com>
8 years ago
Paul Riseborough
6561edb9a5
EKF: Clean up terrain estimation functionality.
...
This is a functionally equivalent. It moves all of the code for the terrain estimator into a single function call from the main filter update, making it clear that it is independent of the main filter.
8 years ago
devbharat
8004e9fe7e
EKF: Make range finder data continuous check more robust
...
Use a filtered arrival time delta to determine if range data is continuous
8 years ago
Paul Riseborough
d94068b88a
EKF: Simplify calculation of height above terrain observation variance
...
The tilt compensation being applied previously was based on a flat earth geometric model assuming perfect tilt knowledge which reduces the effect of range errors on height error as the vehicle tilts. however in the real world, variations in terrain gradient and uncertainty in vehicle tilt and sensor alignment tend to increase height error with tilt, so the adjustment of observation variance with tilt has been removed given we do not have a valid mathematical model on which to base it.
8 years ago
Paul Riseborough
3dadc98b43
EKF: enable scaling of range observation variance with height
8 years ago
Paul Riseborough
cf9c8de167
EKF: Add arbitrary pitch offset for range sensor
8 years ago
devbharat
d9688fae7d
EKF: Simplify terrain position validity check
...
Remove the relative accuracy check that was false triggering close to ground
8 years ago
Paul Riseborough
af26ade1ce
EKF: Use norm for vector length everywhere
8 years ago
Daniel Agar
2750961be6
c++11 initialization cleanup ( #237 )
8 years ago
Daniel Agar
7883085e4a
clang-tidy readability-simplify-boolean-expr ( #235 )
8 years ago
Daniel Agar
47b8ef258b
clang-tidy performance-type-promotion-in-math-fn ( #236 )
8 years ago
Paul Riseborough
bcf7cac5d9
EKF: remove hardcoded limit on optical flow time delta
...
Allow for up to 50% lost data.
8 years ago
Paul Riseborough
3fb7effb0c
EKF: Allow optical flow use when on-ground with poor data quality
8 years ago
Paul Riseborough
21270bb06a
EKF: Use last known position when resuming OF aiding
8 years ago
Lorenz Meier
453bde73f8
ECL: Simplify / correct estimator interface
8 years ago
Roman
c5a55d97aa
initialise data members properly
...
- dot not use memset for struct with non POD types
Signed-off-by: Roman <bapstroman@gmail.com>
8 years ago
Paul Riseborough
1465adca2f
EKF: Improve use of memcpy
...
Changes made to remove Coverity scan errors
8 years ago
Paul Riseborough
26a06567bb
EKF: add missing initialisation for class variables
8 years ago
Paul Riseborough
f999729d70
EKF: fix incorrect use of memcpy
8 years ago
Paul Riseborough
b536382ae1
EKF: remove dead code
8 years ago
Paul Riseborough
6358bbd257
EKF: remove self assignment
8 years ago
Paul Riseborough
3b61528f0f
EKF3: initialise default value for EV fusion gate
8 years ago
Paul Riseborough
9ddcba3ed0
EKF: remove un-used variable
8 years ago
Daniel Agar
d668a2d798
clang-tidy performance-unnecessary-value-param
8 years ago
Daniel Agar
a7cdef6c5c
clang-tidy modernize-redundant-void-arg
8 years ago
Nic
ec1a14bc6b
height counter needs to be updated with ev counter value when our primary height source is set to ev
8 years ago
Paul Riseborough
3c4c09593f
EKF: Rationalise console messages
...
Combine the observation action buffer and alignment messages
Ensure all data timeout messages are warnings.
Use consistent terminology.
8 years ago
Paul Riseborough
934890c2df
EKF: Add validity flag to ekf origin reporting
...
Flag is false until the origin has been initialised
8 years ago
Lorenz Meier
bf8a9a3d09
EKF: Whitespace fixes
8 years ago
Paul Riseborough
a776b2c549
EKF: Fix bug preventing reset to GPS position when using optical flow
8 years ago
Paul Riseborough
460c9e5250
EKF: Don't try to fuse air data if not in normal aiding mode
...
Taking off before passing GPS checks would cause airspeed or sideslip to be fused when the filter was still using a constant position assumption. This would cause large airspeed innovations, invalid wind estimates and degrade filter performance after GPS was gained and position and velocity was reset.
8 years ago
Paul Riseborough
5ad329b641
EKF: Fix variable names to match convention
8 years ago
Paul Riseborough
afd6e54b2a
EKF: Allow for worst case timing jitter when setting observation buffer length
8 years ago
Paul Riseborough
403424d55d
EKF: fix cross compiler build errors
8 years ago
Paul Riseborough
d5b398ddb1
EKF: Minimise data buffer lengths
...
Saves RAM and reduces output predictor errors by using the smallest data buffer length that meets time delay and update rate requirements.
8 years ago
Paul Riseborough
750a8874c1
EKF: Improve recovery and reporting for badly conditioned sideslip fusion
...
Do not reset the entire covariance matrix if we are only using sideslip fusion to update wind states.
Improve reporting.
8 years ago
Paul Riseborough
6c7703d485
EKF: Update tuning for synthetic sideslip fusion
...
Used value that worked well for replay of flight logs
8 years ago
Paul Riseborough
f76a2a5ff7
EKF: fix bug in sideslip fusion and reduce RAM usage
...
The bug meant the Y velocity (state index 5) covariance was not being updated correctly when sideslip was being used to constrain velocity drift (extended GPS loss).
The rework of the covariance update to reduce RAM follows the same pattern as adopted for other fusion processes
8 years ago
Paul Riseborough
951c8b77af
EKF: Improve wind state reset logic
...
Enables wind estimation without an airspeed sensor and enables synthetic sideslip to be used with an airspeed sensor for improved wind state estimation.
Wind states and covariances are reset differently depending on whether airspeed is available.
8 years ago
Paul Riseborough
2fedbc8a18
EKF: Refresh sideslip fusion auto-code and improve covariance update efficiency
8 years ago
Paul Riseborough
352b4ca177
EKF: Allow sideslip fusion with airspeed fusion
8 years ago
Paul Riseborough
fb6f4be453
EKF: don't allow sideslip fusion to affect non-airspeed states if not deae-reckoning
8 years ago
CarlOlsson
a9182259a5
fixed bug in beta fusion
8 years ago
CarlOlsson
0e3ae4b323
fixed issue with the covariance update in synthetic sideslip fusion
8 years ago