Browse Source

Airspeed driver: Use the known sensor offset for raw value as well

sbg
Lorenz Meier 11 years ago
parent
commit
f3549d775c
  1. 3
      src/drivers/ets_airspeed/ets_airspeed.cpp
  2. 5
      src/drivers/meas_airspeed/meas_airspeed.cpp

3
src/drivers/ets_airspeed/ets_airspeed.cpp

@ -172,6 +172,9 @@ ETSAirspeed::collect() @@ -172,6 +172,9 @@ ETSAirspeed::collect()
diff_pres_pa = diff_pres_pa_raw - _diff_pres_offset;
}
// The raw value still should be compensated for the known offset
diff_pres_pa_raw -= _diff_pres_offset;
// Track maximum differential pressure measured (so we can work out top speed).
if (diff_pres_pa > _max_differential_pressure_pa) {
_max_differential_pressure_pa = diff_pres_pa;

5
src/drivers/meas_airspeed/meas_airspeed.cpp

@ -225,7 +225,10 @@ MEASAirspeed::collect() @@ -225,7 +225,10 @@ MEASAirspeed::collect()
// correct for 5V rail voltage if possible
voltage_correction(diff_press_pa_raw, temperature);
float diff_press_pa = fabsf(diff_press_pa_raw - _diff_pres_offset);
// the raw value still should be compensated for the known offset
diff_press_pa_raw -= _diff_pres_offset;
float diff_press_pa = fabsf(diff_press_pa_raw);
/*
note that we return both the absolute value with offset

Loading…
Cancel
Save