Commit Graph

14344 Commits

Author SHA1 Message Date
Randy Mackay
a303c40f1f AP_Beacon: initialise counter in get_next_boundary_point
This is not a bug but at least one compiler has complained about this
2017-06-20 16:34:41 +09:00
priseborough
06d40a7901 AP_NavEKF3: Fix terrain estimator innovation consistency check 2017-06-20 02:08:56 +01:00
priseborough
ce8e935896 AP_NavEKF2: Fix terrain estimator innovation consistency check 2017-06-20 02:08:56 +01:00
priseborough
284fc0f3c5 AP_NavEKF3: Fix bug in flow fusion for terrain estimation
Also remove unused class variables
2017-06-20 02:08:56 +01:00
priseborough
b7e6e6f95f AP_NavEKF2: Fix bug in flow fusion for terrain estimation
Also remove unused class variables
2017-06-20 02:08:56 +01:00
Michael du Breuil
0b26908359 Landing: Disarm on land for deepstall 2017-06-19 17:02:23 -07:00
Andrew Tridgell
a1508b58c1 AP_NavEKF3: use AHRS likely flying state
this sets inFlight when AHRS has indicated flying for 5s
2017-06-20 09:44:44 +10:00
Andrew Tridgell
cbffc29f0b AP_NavEKF2: use AHRS likely flying state
this sets inFlight when AHRS has indicated flying for 5s
2017-06-20 09:44:44 +10:00
Andrew Tridgell
770f697cfc AP_AHRS: added set/get for flying state
this allows the vehicle code to set the likely flying state, which can
be used by EKF to trigger changes which should only happen when flying
(such as mag alignment)
2017-06-20 09:44:44 +10:00
priseborough
647db728ce AP_NavEKF2: Improve is flying check for non fly forward vehicles
Will enable use of EK3_MAG_TYPE = 0 for coptersAP_NavEKF2:
2017-06-19 06:09:07 +10:00
priseborough
edee8396ba AP_NavEKF3: Improve in-flight check for non fly forward vehicles
This will enable the EK3_MAG_TYPE 0 option to be used for multirotors
2017-06-19 06:09:07 +10:00
Andrew Tridgell
a0e4ec0f3a AP_Compass: fixed bitmask typo 2017-06-18 18:15:47 +10:00
Touch
5da2e0b3fb Update code format 2017-06-18 17:25:20 +10:00
ljwang
8fff1ec4d4 add QMC5883L driver for GPS compass module 2017-06-18 17:25:20 +10:00
ljwang
e648f2e61e add QMC5883L driver for GPS compass module 2017-06-18 17:25:20 +10:00
Peter Barker
5c19f09cd7 DataFlash: handle mavlink messages, not just remote-log-block-statuses 2017-06-17 15:07:48 +01:00
Peter Barker
cf918d233f GCS_MAVLink: move MAVLINK_MSG_ID_REMOTE_LOG_BLOCK_STATUS handling up 2017-06-17 15:07:48 +01:00
Andrew Tridgell
abd0831239 AP_Motors: changed BRUSHED16kHz to BRUSHED 2017-06-17 17:37:45 +10:00
Andrew Tridgell
11396919c8 HAL_PX4: changed BRUSHED16kHz to BRUSHED 2017-06-17 17:37:45 +10:00
Andrew Tridgell
1c741e78e6 AP_HAL: changed BRUSHED16kHz to BRUSHED 2017-06-17 17:37:45 +10:00
Andrew Tridgell
96627bc4e5 HAL_PX4: allow any pulse freq in brushed mode 2017-06-17 17:37:45 +10:00
Andrew Tridgell
97e88501c6 AP_OpticalFlow: support pixart 3901 2017-06-16 17:14:10 +01:00
Peter Barker
6a03af8f3e DataFlash: make EnableWrites a frontend thing 2017-06-16 17:07:48 +01:00
Peter Barker
07e37281ef DataFlash: add a should_log method 2017-06-16 17:07:48 +01:00
Peter Barker
001d3a7118 DataFlash: correct consts on CardInserted 2017-06-16 17:07:48 +01:00
Peter Barker
244365767d DataFlash: remove DataFlash_Block and DataFlash_SITL 2017-06-16 13:52:45 +01:00
Dr.-Ing. Amilcar Do Carmo Lucas
6a01c65197 AP_NavEKF3: Fix long description of EK3_OGN_HGT_MASK parameter (NFC) 2017-06-16 12:05:20 +01:00
Dr.-Ing. Amilcar Do Carmo Lucas
7426bdb9b7 AP_NavEKF2: Fix long description of EK2_OGN_HGT_MASK parameter 2017-06-16 12:05:20 +01:00
Randy Mackay
a199604348 AP_Beacon: fix get_boundary_points num_points
Thanks @OXINARF for finding this!
2017-06-15 09:36:27 +09:00
priseborough
b42fb31d7d AP_NavEKF2: Change default value of EK2_OGN_HGT_MASK
Turn off by default.
Update parameter description
2017-06-14 12:44:41 +01:00
priseborough
49ec2b4032 AP_NavEKF3: Change default value of EK3_OGN_HGT_MASK
Turn off by default.
Update parameter description.
2017-06-14 12:44:41 +01:00
priseborough
fd25450632 AP_NavEKF2: Ensure reported local height = global height - origin height 2017-06-14 12:44:41 +01:00
priseborough
6d14cf0ab8 AP_NavEKF3: Ensure reported local height = global height - origin height 2017-06-14 12:44:41 +01:00
priseborough
798d5f85a2 DataFlash: Log EKF origin height 2017-06-14 12:44:41 +01:00
priseborough
a3483d0d34 AP_AHRS: Update for compatibility with EKF interface change 2017-06-14 12:44:41 +01:00
priseborough
3ae7998f51 AP_NavEKF3: Allow reporting of origin height for specified instance 2017-06-14 12:44:41 +01:00
priseborough
77d21f72d4 AP_NavEKF2: Allow reporting of origin height for specified instance 2017-06-14 12:44:41 +01:00
priseborough
e58ba8044d AP_NavEKF3: Improve protection for badly conditioned dVel bias covariances
If variance falls below desired minimum, set state noise to a larger value.
If variance drops below safe value, set to desired minimum and reset off-diagonals to zero.
2017-06-14 12:44:41 +01:00
priseborough
bf963f8b65 AP_NavEKF3: Raise lower limit on del vel bias state variances
This is required to prevent co-variance matrix errors due to long periods without movement causing height divergence.
2017-06-14 12:44:41 +01:00
priseborough
628d140319 AP_NavEKF3: Make target covariance time step larger
The target covariance time step has been increased from 10 to 12 msec to improve conditioning of the covariance prediction calculation.
2017-06-14 12:44:41 +01:00
priseborough
4c08622a7c DataFlash: Add logging for EKF3 state variances 2017-06-14 12:44:41 +01:00
priseborough
2b97d0f5c9 AP_NavEKF3: Add public accessor for state variances 2017-06-14 12:44:41 +01:00
priseborough
9f97cbfc3b AP_NavEKF3: Revert auto-code to original form and remove micro optimisations
To eliminate the possibility of editing errors, revert the covariance prediction auto-code to the original auto-code without the replacement fo the /2 and /4 operations. The compiler optimisations are able to correctly handle the /2 and /4 operations.

Also use local variables for intermediate covariance calculations. The use of class variables for these small arrays was unnecessary.
2017-06-14 12:44:41 +01:00
priseborough
f38fccd57c AP_NavEKF3: Prevent possible race condition re-zeroing state variances 2017-06-14 12:44:41 +01:00
priseborough
7adaea6019 AP_NavEKF3: Improve partitioning and efficiency of the covariance prediction
This patch ensures that covariance matrix entries for inactive states are always set to zero.
It also halves the number of copy operations from the updated to stored matrix.
2017-06-14 12:44:41 +01:00
priseborough
a1c117360c AP_NavEKF3: Ensure Kalman gain calculatons respect deactivated states
All Kalman gain calculations now explicity set gains for deactivated states to zero.
Previous use of loops to set gains to zero have been replaced with more efficient memset operations.
2017-06-14 12:44:41 +01:00
priseborough
5058405f8c AP_NavEKF3: add gyro bias state inhibit and rework index limit calculation
Inhibiting gyro bias estimation during the initial tilt alignment speeds alignment.
The calculation of the maxmum state index required has been modified so that it can handle all combinations of inhibited states.
Limiting the maximum state index accessed by all EKF operations result in significant processing reductions when higher index states are not being used.
2017-06-14 12:44:41 +01:00
priseborough
0cba133a1e AP_NavEKF3: Fix initialisation of state inhibit flags 2017-06-14 12:44:41 +01:00
priseborough
36e7dfb5f6 AP_NavEKF2: Improve GPS reference height estimator
Fix rounding error bug preventing state from updating after initial convergence.
Decouple GPS reference height from published EKf origin height.
Add bitmask parameter to control update and publishing of GPS reference height.
2017-06-14 12:44:41 +01:00
priseborough
9da3caca47 AP_NavEKF3: Improve GPS reference height estimator
Fix rounding error bug preventing state from updating after initial convergence.
Decouple GPS reference height from published EKf origin height.
Add bitmask parameter to control update and publishing of GPS reference height.
2017-06-14 12:44:41 +01:00