总公式
目标占空比 = 负载目标 A D 值 ∗ 占空比满值 ∗ 电池 A D 值 / 实际负载 A D 值 / 电池参考电压 目标占空比 = 负载目标AD值 * 占空比满值 * 电池AD值/实际负载AD值/电池参考电压 目标占空比=负载目标AD值∗占空比满值∗电池AD值/实际负载AD值/电池参考电压
推导如下
由
实际电池比例
=
电池
A
D
值
/
参考电压
实际电池比例 = 电池AD值 / 参考电压
实际电池比例=电池AD值/参考电压
得到
目标占空比
=
负载目标
A
D
值
∗
占空比满值
∗
实际电池比例
/
实际负载
A
D
值
目标占空比 = 负载目标AD值 * 占空比满值 * 实际电池比例/实际负载AD值
目标占空比=负载目标AD值∗占空比满值∗实际电池比例/实际负载AD值
再由
实际负载相差比例
=
负载目标
A
D
值
/
实际负载
A
D
值
实际负载相差比例 = 负载目标AD值 / 实际负载AD值
实际负载相差比例=负载目标AD值/实际负载AD值
得到
目标占空比
=
实际负载相差比例
∗
占空比满值
∗
实际电池比例
目标占空比 = 实际负载相差比例 * 占空比满值 * 实际电池比例
目标占空比=实际负载相差比例∗占空比满值∗实际电池比例
推导结论
由于在应用过程中 实际负载相差比例 和 占空比满值 是固定的,在恒压的应用过程中,变量就只有 实际电池比例 的变化,所以在应用过程中电池电压的变化会造成占空比的变量,电压的下降会造成占空比的上升进行对公式的补偿平衡
代码演示
uint8_t Constant_Voltage_Calculation(void)
{
uint32_t TargetDuty = TargetLoadVol * 100 * BatVoltage_AD / ActualLoadVol / BatReferVol_AD
if(TargetDuty > 100) TargetDuty = 100;
}