1
0
mirror of https://bitbucket.org/librepilot/librepilot.git synced 2025-03-15 07:29:15 +01:00

OP-1018: Fix ETASv3 Airspeed sensor autocalibration

This commit is contained in:
Corvus Corax 2013-06-22 12:51:05 +02:00
parent 1b1bb04305
commit ee1465fd9a

View File

@ -72,7 +72,8 @@ void baro_airspeedGetETASV3(AirspeedSensorData *airspeedSensor, AirspeedSettings
// Calibrate sensor by averaging zero point value
if (calibrationCount <= CALIBRATION_IDLE_MS / airspeedSettings->SamplePeriod) {
calibrationCount++;
calibrationCount2++;
calibrationSum = 0;
calibrationCount2 = 0;
return;
} else if (calibrationCount <= (CALIBRATION_IDLE_MS + CALIBRATION_COUNT_MS) / airspeedSettings->SamplePeriod) {
calibrationCount++;
@ -81,6 +82,9 @@ void baro_airspeedGetETASV3(AirspeedSensorData *airspeedSensor, AirspeedSettings
if (calibrationCount > (CALIBRATION_IDLE_MS + CALIBRATION_COUNT_MS) / airspeedSettings->SamplePeriod) {
airspeedSettings->ZeroPoint = (int16_t)(((float)calibrationSum) / calibrationCount2);
AirspeedSettingsZeroPointSet(&airspeedSettings->ZeroPoint);
calibrationCount = 0;
calibrationSum = 0;
calibrationCount2 = 0;
}
return;
}