3 程序设计
本系统利用电池电压、温升、充电时间以及电压变化量等参数来综合判断是否应该结束充电过程,程序由主程序和定时中断程序组成。主程序如图5所示。为了防止掉电对电池充电过程的影响,在EEPROM里面存有充电的时间和状态。如果上次不是一个完整的充电过程,再次上电时就可以根据EEPROM里面的充电的状态和充电的时间来继续充电过程。
中断服务程序如图6所示,程序每隔100ms执行一次。进入中断后先采集电池电压,充电电流,电池温度和环境温度,并计算充电时间。当充电电流偏离设定值10%时则要调整PWM参数,使电流维持在设定值附近。当现在的充电状态为快充的时候,如果电池电压,温度和充电时间满足下面的条件时,停止快充:当电池电压大于设定值或出现5~10毫伏/分钟/节的负△V变化时;电池温度超过45℃、出现10℃的温升或出现0.5℃/min的温度变化率时;充电时间超过90分钟时(本系统采用1.0C充电),都应停止快速充电;当现在的充电状态为补足充电的时候,如果补足充电的时间超过了30分钟或温度超过50℃的时候,则进入涓流充电阶段,充电结束。

为了防止由于电池的长时间闲置或过度放电而造成的充电前期的电压起伏带来的误判出现,在开始充电的前10分钟关闭电池电压变化的判断。实际的效果表明这是一种很有效的解决这种误判的方法。
4 结束语
在实验室中进行了大量的实验,实验表明该电路可靠性高,能够实现快速充电和电池保护功能,而且简单实用。该设计也已经成功投放市场,为了让产品具有更强的竞争力,该电路在充电算法和硬件电路设计方面还可以进一步提高。比如在充电过程中加入具有去极化功能的放电环节,将会进一步提高充电效率和电池组使用寿命。
|