Paul Riseborough
1daa6c7866
EKF: update tuning defaults
2016-05-05 21:23:03 +10:00
Paul Riseborough
fc6c0c7ebf
EKF: Update covariance prediction
...
Refresh auto generated code
Make 3-axis accel fusion the default and no accel fusion the option
2016-05-05 21:23:03 +10:00
Paul Riseborough
ecaffe63af
EKF: update tuning defaults
2016-05-05 21:23:03 +10:00
Paul Riseborough
7a74d58591
EKF: reduce initial accel bias uncertainty
2016-05-05 21:23:03 +10:00
Paul Riseborough
a7d08d08fc
EKF: Relax tilt alignment check
2016-05-05 21:23:03 +10:00
Paul Riseborough
5523a4f225
EKF: Fix IMU bias compensation scale error in output filter
...
Delta angle and velocities are calculated assuming data is at the filter update rate, not the IMU update rate
2016-05-05 21:23:03 +10:00
Paul Riseborough
fd109b00ab
EKF: replace in-line code with existing function
2016-05-05 21:23:03 +10:00
Paul Riseborough
727a43764f
EKF: update initial angle alignment check
2016-05-05 21:23:03 +10:00
Paul Riseborough
bc34b14779
EKF: Initialise height state variance to a value compatible with the measurement
...
A large height state variance and small measurement variance can destabilise the filter in the first few seconds after alignment
2016-05-05 21:23:03 +10:00
Paul Riseborough
29a361d3a3
EKF: Use intuitive units for gyro and accel bias process noise
...
This also makes the tuning less sensitive to changes in the EKF update rate.
2016-05-05 21:23:03 +10:00
Paul Riseborough
799865c934
EKF: update default tuning parameters
2016-05-05 21:23:03 +10:00
Paul Riseborough
f01f4ae4b1
EKF: tidy up mag declination fusion
2016-05-05 21:23:03 +10:00
Paul Riseborough
0d31aad33a
EKF: Fix bad limit on magnetometer noise parameter
2016-05-05 21:23:03 +10:00
Paul Riseborough
7069fb7a04
EKF: refresh auto code for mag fusion
2016-05-05 21:23:03 +10:00
Paul Riseborough
ffea65e1a4
EKF: fix bug in state prediction
2016-05-05 21:23:03 +10:00
Paul Riseborough
63f093a10a
EKF: Update upper limits for state variances
...
This limiting is a last resort measure and the limiting for normal operation should be achieved by modification in the covariance prediction
2016-05-05 21:23:03 +10:00
Paul Riseborough
26a51c667d
EKF: Improve robustness to initial gyro bias errors
...
Allows for ~6 deg/sec of startup bias
2016-05-05 21:23:03 +10:00
Paul Riseborough
7530e30012
EKF: Improve IMU data collection
...
Use IMU driver published delta angle integration time to determine when enough data has been accumulated.
Perform basic first order sculling corrections on delta velocity data
Comment steps to make make method clearer
2016-05-05 21:23:03 +10:00
Paul Riseborough
f23f0b1035
EKF: fix bugs in stationary process model covariance prediction
...
Noise variance for stationary states was being overwritten by the covariance prediction operations for the kinematic states
Unwanted states could end up with non-zero covariance values
The forced symmetry operation was being applied too late to be effective
2016-05-05 21:23:03 +10:00
Paul Riseborough
a373ada858
EKF: explicitly define floating point type in hardcoded constants
2016-05-05 21:23:03 +10:00
Paul Riseborough
a189c60d33
EKF: update code fragment text files
2016-05-05 21:23:03 +10:00
Paul Riseborough
f4e84a2234
EKF: fix axis label error in comments
2016-05-05 21:23:03 +10:00
Paul Riseborough
57d3036ee7
EKF: update derivation files
2016-05-05 21:23:03 +10:00
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.
2016-05-05 21:23:03 +10:00
Paul Riseborough
311d046a26
EKF: Enable optional activation of XY delta velocity bias estimation
2016-05-05 21:23:03 +10:00
Paul Riseborough
572c2280bd
EKF: tidy up covariance prediction
2016-05-05 21:23:03 +10:00
Paul Riseborough
54e713969d
EKF: Fix rebase error
2016-05-05 21:23:03 +10:00
Paul Riseborough
67d23948b5
EKF: preliminary re-tune
2016-05-05 21:23:03 +10:00
Paul Riseborough
03c35266ef
EKF: remove unused parameter
2016-05-05 21:23:03 +10:00
Paul Riseborough
fe9f88a8b4
EKF: test new derivation
...
Use direct attitude parameterisation
Discard scale factors
Add accel bias
2016-05-05 21:23:03 +10:00
MaEtUgR
b2eb4d13d8
Matrix.setCol off by one bug fixed
...
The Column Vector you are copying from, only has one Column and it is indexed by 0 not 1.
I also completed the unit test stub that would have found this bug.
2016-05-05 13:18:51 +02:00
Lorenz Meier
e61f517bc6
Update ECL library to include all bugfixes
2016-05-05 13:18:03 +02:00
Lorenz Meier
bdaa2ee20e
Update DriverFramework to include recent improvements and fixes
2016-05-05 11:51:36 +02:00
Julian Oes
3e165c51d4
cmake: copy over changes that rebase missed
2016-05-05 09:14:11 +02:00
Julian Oes
efd20373ff
cmake: re-use the QURT build as well
...
Instead of calling the eagle cmake script from excelsior, use a shared
sdflight cmake file like in it is done for the POSIX build on
Snapdragon.
2016-05-05 09:12:46 +02:00
Julian Oes
805ef9fff1
cmake: added some comments about eagle/excelsior
2016-05-05 09:11:59 +02:00
Julian Oes
01ad1b642b
Makefile: whitespace only
2016-05-05 09:11:29 +02:00
jwilson
5b6fae5380
Adding config changes to allow PX4 to be built for the Excelsior board.
2016-05-05 08:34:31 +02:00
jwilson
c87a8bedb6
Adding config changes to allow PX4 to be built for the Excelsior board.
2016-05-05 08:34:31 +02:00
Julian Oes
0c5c111cdd
cmake: no param sculling for all eagle configs
2016-05-05 08:09:59 +02:00
David Sidrane
8d510471a1
Turn off paramter culling on eagle
2016-05-05 08:00:26 +02:00
David Sidrane
a08cce27d7
Allow paramter culling to be tunred off
2016-05-05 08:00:26 +02:00
Daniel Agar
553818b646
make submodulesclean proper order
...
-can't sync after deinit
2016-05-04 23:21:17 -04:00
Pavel Kirienko
ec84f64f5f
Warning fixes (GCC 5.3)
2016-05-05 05:30:49 +03:00
Daniel Agar
22d18d638c
enable Wshadow
2016-05-04 19:45:40 -04:00
Felix Hu
18176ea73d
change productstr
2016-05-04 23:33:48 +02:00
Felix Hu
9dd42e45d5
mod mindpx v2 prototype and defconfig
2016-05-04 23:33:48 +02:00
Lorenz Meier
45a5f2aaa4
MC vel control: Better defaults, better min and max gains
2016-05-04 22:49:36 +02:00
Julian Oes
aafcae7e6f
MPU9250: integrate using the FIFO sample interval
...
Instead of calculating time offsets between samples, it is easier just
to assume a constant sampling time. Then all samples can be integrated,
and published every forth time the FIFO buffer has been emptied.
The sampling in the sensor happens at 8kHz, the driver empties the
buffer at 1kHz, and publishes (and resets the integration) at 250 Hz.
2016-05-04 22:28:19 +02:00
Julian Oes
f528c63030
integrator: add a put method for known intervals
...
This adds a second put method to the integrator class. This allows to
integrate with known intervals between samples, rather than based on
timestamps. This makes integrating the samples coming out of the MPU9250
FIFO buffer easier.
2016-05-04 22:28:19 +02:00