硬件 - BQ40Z80电量计应用详解(4) - 充电算法GG配置 -ing
目录
四、Advanced Charge Algorithm
4.1 充电电流
4.1.1 充电电流表格
4.2 充电电压
4.3 有效充电终止
4.3.1 满充后寄存器变化
4.4 SOC Flag Config
4.5 预充电
四、Advanced Charge Algorithm
充电的时候,会根据温度、电芯电压、电芯状况等,控制充电时的参数,比如图4所示
![]()
图4 根据温度和电芯电压划分区间,从而实现每个区间下提供不同的充电参数;
4.1 充电电流
在 Settings 的 Configuration 中的 Charging Configuration:[CRATE]来设置充电电流,
主要是为了解决电池老化后,容量降低后的充电电流问题,
举个例子:
- 新电池6000mAh,最大充电电流为1C,用了一段时间后,这个块电池只有5800mAh,那么此时还用6A给它充电就不合适了,应该是用5.8A;
使能CRATE=1后,会根据充满容量/设计容量,来调节充电电流;
举个例子:
- FullChargeCapacity / DesignCapacity = 90%,那么 实际充电电流 = 设计充电电流*0.9;
- 设计充电电流也会根据不同温度进行调节,比如 Rec Temp Charging:Current Med,这个可以在Advanced Charge Algorithm 里面进行配置;
4.1.1 充电电流表格
4.2 充电电压
根据充电时电芯温度,来调节充电电压;
这个可以在Advanced Charge Algorithm中,填入不同温度下的充电电压值,芯片会根据设计的串数,来决定充电电压;
4.3 有效充电终止
在Settings 的 Sbs Gauging Configuration中可以设置是否使能RSOCL,
当RSOCL=1时,剩余容量在终止结束前,会保持在99%,充完电后才达到100%,
RSOCL=0时,大于99%会向上取整,显示100%;
充电终止条件:
- 平均电流小于 Charge Term Taper电流;
- 电芯电压 + Charge Term Voltage ≥ 设计的充电电压/串数;
- 容量累积变化大于 0.25mAh;
- 上述条件需要在连续两个40s的周期内满足;
4.3.1 满充后寄存器变化
- ChargingStatus()[VCT] = 1
- ChargingStatus()[MCHG] = 1
- BatteryStatus()[FC] = 1 and GaugingStatus()[FC] = 1 if SOCFlagConfig A[FCSETVCT] = 1
- BatteryStatus()[TCA] = 1 and GaugingStatus()[TCA] = 1 if SOCFlagConfig B[TCASETVCT] = 1
VCT 表示 有效终止充电;
MCHG 表示 维护充电,也就是以小电流补充电池自放电;
FC 表示 满充
4.4 SOC Flag Config
TC和FC分别代表充电终止,满充;
TD和FD分别代表放电终止,满放;
在Settings 中的 Configuraion中有 SOC Flag Config A和B,里面有:
终止充电[TC]
- TCSetV:使能后,最大电芯电压 > 阈值电压时,触发TC
- TCSetRSOC:使能后,可以根据RSOC触发TC
- TCSetVCT:使能后,根据VCT有效终止充电触发TC
- TCClearV:使能后,最大电芯电压 ≤ 清零阈值电压,消除TC
- TCClearRSOC:使能后,根据RSOC,消除TC
满充[FC]
- FCSetV:根据电芯电压,触发FC
- FCSetRSOC:根据RSOC,触发FC
- FCSetVCT:根据VCT触发FC
- FCClearV:根据电芯电压,消除FC
- FCClearRSOC:根据RSOC,消除FC
终止放电[TD]
- TDSetV
- TDSetRSOC
- TDClearV
- TDClearRSOC
满放[FD]
- FDSetV
- FDSetRSOC
- FDClearV
- FDClearRSOC
4.5 预充电
在Settings中的Configuration 的 FET Options中可以设置 PCHG_COMM,来调节预充电方式;
PCHG_COMM=0,利用外部预充电电路,
PCHG_COMM=1,利用充电MOS来实现预充电;