mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-10-25 11:23:33 +08:00
feat(sensors): barometer thrust compensation with online estimator
Add propwash-induced barometer error compensation. Propellers create static pressure changes at the baro sensor proportional to motor output. Correction: baro_alt += SENS_BARO_PCOEF * mean_motor_output. Thrust compensation in VehicleAirData uses a motor ring buffer (8 samples) with time-matched lookup against baro timestamp_sample. BMP388 timestamp_sample corrected from read time to integration midpoint (- measurement_time/2), eliminating 38ms baro-thrust lag. Online estimator module (baro_thrust_estimator) uses a complementary filter to isolate thrust-correlated baro error at 0.05Hz crossover, and recursive least squares to identify gain K online. Saves to SENS_BARO_PCOEF on disarm. Controlled by SENS_BAR_AUTOCAL bit 1. SENS_BAR_AUTOCAL migrated from boolean to bitmask (bit 0: GNSS cal, bit 1: thrust comp). Includes offline calibration/validation tool (Tools/baro_compensation/baro_thrust_calibration.py).
This commit is contained in:
@@ -29,6 +29,13 @@ fi
|
||||
# Start Multicopter Position Controller.
|
||||
#
|
||||
mc_hover_thrust_estimator start
|
||||
|
||||
# Bit 1 of SENS_BAR_AUTOCAL enables online thrust compensation (value > 1)
|
||||
if param greater -s SENS_BAR_AUTOCAL 1
|
||||
then
|
||||
baro_thrust_estimator start
|
||||
fi
|
||||
|
||||
flight_mode_manager start
|
||||
mc_pos_control start
|
||||
|
||||
|
||||
Reference in New Issue
Block a user