Paul Riseborough
e10ec59058
EKF: Use consistent test for navigation validity reporting
...
This will enable controller to take advantage of non-inertial dead reckoning.
7 years ago
ChristophTobler
cdf6e6cd36
EKF: use delta_time to avoid division by zero
7 years ago
Paul Riseborough
d293c4231d
EKF: Protect against divide by zero caused by invalid optical flow
7 years ago
Paul Riseborough
ab9b8e1964
EKF: Prevent bad optical flow quality causing loss of aiding when on ground
7 years ago
ChristophTobler
81a64c0479
ekf: fix flow direction when on ground
7 years ago
Paul Riseborough
fed4a9bc5a
EKF: add vertical position derivative output
...
Add calculation of a vertical position derivative to the output predictor. This will have degraded tracking relative to the EKF states, but the velocity will be closer to the first derivative of the position and reduce the effect inertial prediction errors on control loops that are operating in a pure velocity feedback mode.
Move calculation of IMU offset angular rate correction out of velocity accessor and into output predictor.
Provide separate accessor for vertical position derivative.
8 years ago
Paul Riseborough
16c7041f4a
EKF: Add a parameter to enable setting of a minimum buffer length to handle large sensor timing jitter
8 years ago
Daniel Agar
87fdee440b
EKF estimator_interface coverity fix 139419
8 years ago
Daniel Agar
b3f8fd19e0
EKF estimator_interface coverity fix 140490, 140491
8 years ago
Daniel Agar
3919d60f66
ekf2 initialization fixes
8 years ago
Paul Riseborough
c3f966f53e
EKF: remove clang build error message
8 years ago
Paul Riseborough
c607941e2f
EKF: Allow external setting of air density for multi-rotor drag fusion
8 years ago
Paul Riseborough
3758c5a09d
EKF: down-sample drag specific force data
8 years ago
Paul Riseborough
465b145929
EKF: Add multi-rotor drag model for wind estimation
8 years ago
Paul Riseborough
0d7e7e9d81
EKF: Don't use EKF origin in GPS drift check calculation
...
The GPS drift calculations need to be able to run independently of the EKF origin.
8 years ago
Paul Riseborough
2426f1dd3a
EKF: remove use of memset to initialise variable
...
When using a union of flags and integer value it is safer to initialise the value to 0 rather than memset the flags because the flags may not define all bits in the integer.
8 years ago
Paul Riseborough
040639837e
EKF: Use common timeout test for reporting deadreckoning
...
Use a parameter to set the time-out threshold
Use a class variable for the time-out flag
Clean up comments
8 years ago
Paul Riseborough
9bb54ccc08
EKF: don't accept GPS data without a 3D lock
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
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
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
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
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
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
b10b0184c5
EKF: Add IMU vibration calculation and reporting
...
Add calculation and reporting of IMU delta angle and velocity coning and high frequency vibration
8 years ago
Paul Riseborough
744b79c1b2
EKF: Publish innovation test ratios
8 years ago
Roman
d53f532079
fixed computation of range measurement timestamp
...
Signed-off-by: Roman <bapstroman@gmail.com>
9 years ago
Lucas De Marchi
2240eb6b4f
Move __STDC_FORMAT_MACROS to build system ( #174 )
...
__STDC_FORMAT_MACROS changes the behavior of inttypes.h to allow
defining format macros for printf-like functions. It needs to be defined
before any include is done, otherwise due to include chains and header
guards it may not take effect.
Instead of defining it everywhere it is used, let the PX4 build system
to deal with it.
9 years ago
Julian Oes
b8e2f79005
EKF: correct include paths
9 years ago
Julian Oes
ecfd8c867a
EKF: use ECL printfs everywhere
...
- Changes all printfs to ECL printfs
- Add ECL_ERR.
- Include ecl.h where needed.
- Add forgotten pragma once.
9 years ago
Paul Riseborough
733862f649
EKF: move the reset status struct to the Ekf class
...
This protects it from being modified externally
9 years ago
Paul Riseborough
4237269fab
EKF: add struct to capture state reset events
9 years ago
Paul Riseborough
8125717bf5
EKF: remove un-used airspeed health class variable
...
Airspeed rejection now is captured in _sensor_fault_status
9 years ago
Paul Riseborough
388e500180
EKF: remove un-used magnetometer health class variable
...
replaced by _sensor_health_status
9 years ago
Paul Riseborough
7dd123094f
EKF: correct documentation
9 years ago
Paul Riseborough
d5b5cb5899
EKF: improvements to observation collection
...
Remove unnecessary function calls
Remove un-used functions
Apply a consistent maximum safe data rate check for all observation inputs
9 years ago
Paul Riseborough
5a40aa2c1a
EKF: prevent unwanted GPS use
9 years ago
Carl Olsson
0fafc49a49
fixed typos ( #147 )
9 years ago
waltjohnson
7c158aa59b
Addressed C99 compiler issues of initializing variables in header and unused included statements.
9 years ago
Nic
1b16f3575a
added ev_pos flag check to valid_lpos, disable fake gps when ev_pos is valid
9 years ago
devbharat
6d20a426e0
Reset time_last_ext_vision
9 years ago
Paul Riseborough
3a0fcd03d7
EKF: Add interfaces and variables to use ext vision data
9 years ago