关于inav/betaflight做了电压、电流的校准后,再来看Ardupilot的电流电压校准就比较容易,因为校准的原理都是类似的。
【1】BetaFlight开源代码之电压校准
【2】BetaFlight开源代码之电流校准
校准采用的方法都是一次线性拟合校准。
注:当BATT_MONITOR = 4的时候,系统采用ADC采样。其他数字模式(ESC、INA239_SPI等)采样就无需校准了。
_state.voltage = (_volt_pin_analog_source->voltage_average() - _volt_offset) * _volt_multiplier
_state.current_amps = (_curr_pin_analog_source->voltage_average() - _curr_amp_offset) * _curr_amp_per_volt
注:拟合工具,详见Linear regression calculator。
默认配置通常:BATT_VLT_OFFSET = 0
从拟合曲线结果看,其实默认值非常准确。
因此,该目标板配置电压参数如下:
BATT_VOLT_MULT = 11
BATT_VLT_OFFSET = 0
默认配置通常:BATT_AMP_OFFSET = 0
实测值还是有较大偏差的,拟合后会相对偏差小很多。
因此,该目标板和电调板,配置电流参数如下:
BATT_AMP_PERVLT = 55
BATT_AMP_OFFSET = 0
【1】BetaFlight开源代码之电压校准
【2】BetaFlight开源代码之电流校准
【3】ArduPilot开源飞控系统之简单介绍
【4】ArduPilot - Aocoda-RC H743Dual