Change to user adjustable fusion of constant position (as per legacy EKF) instead of constant velocity.
Enable user to specify use of 3-axis magnetometer fusion when operating without aiding.
Don't allow gyro scale factor learning without external aiding data as it can be unreliable
master
Paul Riseborough9 years agocommitted byRandy Mackay
// @Description: This sets the amount of velocity change that the EKF allows for when operating without external measurements (eg GPs or optical flow). Increasing this parameter makes the EKF attitude estimate less affected by changes in vehicle velocity but also makes the EKF attitude estimate more affected by IMU errors.
// @Range: 0.5 25.0
// @DisplayName: Non-GPS operation position uncertainty (m)
// @Description: This sets the amount of position variation that the EKF allows for when operating without external measurements (eg GPS or optical flow). Increasing this parameter makes the EKF attitude estimate less sensitive to vehicle manoeuvres but more sensitive to IMU errors.
AP_Int8_gpsCheck;// Bitmask controlling which preflight GPS checks are bypassed
AP_Int8_imuMask;// Bitmask of IMUs to instantiate EKF2 for
AP_Int16_gpsCheckScaler;// Percentage increase to be applied to GPS pre-flight accuracy and drift thresholds
AP_Float_noaidHorizVelNoise;// horizontal velocity measurement noise assuned when synthesised zero velocity measurements are used to constrain attitude drift : m/s
AP_Float_noaidHorizNoise;// horizontal position measurement noise assumed when synthesised zero position measurements are used to constrain attitude drift : m
// Tuning parameters
constfloatgpsNEVelVarAccScale;// Scale factor applied to NE velocity measurement variance due to manoeuvre acceleration
// For data integrity checks we use the same measurement variances as used to calculate the Kalman gains for all measurements except GPS horizontal velocity
// For horizontal GPs velocity we don't want the acceptance radius to increase with reported GPS accuracy so we use a value based on best GPs perfomrance
// plus a margin for manoeuvres. It is better to reject GPS horizontal velocity errors early