基于8xC749单片机的电动自行车智能充电器的设计与实现
2006-05-07 来源:电子技术应用
摘要:介绍了PHILIPS公司的8xC749微处理器为核心的智能充电控制器的控制原理,讨论充电器的硬件结构和各主要组成部分的设计思想,并介绍智能充电器中的两种新技术:均衡充电和脉冲充电。结合铅酸电池对充电器的控制算法进行探讨。
关键词:充电器 智能控制器 均衡充电 脉冲充电 8xC749单片机
随着经济的发展,越来越多的电器走进人们的日常生活,家庭使用的小容量蓄电池的比例将会逐渐增加。因此,研究如何延长蓄电池的寿命,提高蓄电池的使用效率,并设计、生产出高质量、高效率、符合家庭使用要求的充电器,有着十分重要的意义。
评估蓄电池的优劣有很多指标,其中寿命是用户十分关心的问题之一。而电池的过充电、过放电和充电不足是引起电池故障最主要的原因,其中过充电、充电不足主要是充电方法不当而引起的。常用的直流充电器只是用恒流定压的方法给蓄电池充电,这样不但不容易使电池充满,更严重的还会造成充电不均衡的情况,影响电池的寿命。
清华大学智能技术与系统国家重点实验室经过近十年的研究开发,在智能充电算法方面的研究已经取得了一些成果。为了实现智能化充电,我们采用单片机作控制器,实时监控电压、电流,使充电过程按理想的充电曲线进行,达到既保护电池、又能使电池充满的最优效果。
1 智能充电器的硬件结构
传统的电池充电器采用电流负反馈的方法来达到恒流充电的目的。为了加入智能控制,达到实时监控的目的,我们打开电流反馈环,加入单片机及相关控制电路。硬件的结构框图如图1所示。
单片机对正在充电的电池进行实时电压、电流、温度取样,经A/D转换输入单片机。单片机根据电池不同的充电状态采取不同的充电算法,通过D/A转换输出反馈电压,对电源进行控制,通过改变电池组端电压来达到控制充电过程的目的。在充电过程中,单片机还担负着平衡电池组中各电池的容量、防止电池过充电而损坏电池的任务。另外,针对不同种类的电池,只要根据不同电池的最佳充电曲线对控制器里的程序进行相应的调整,就能对不同类型的电池进行充电。
充电器系统中的主要控制部件是单片机。在目前的市场里有很多的充电控制模块可供选择,如武汉力源电子的PS1718、BENCHMARQ的BQ2004等,只要接上适当的外围电路,就可以组成不错的充电器。但从经济的角度出发,普通的单片机就可以担负控制器的任务。出于提高系统的集成性和可靠性的考虑,我们可以选择内部带A/D、D/A转换的单片机作为控制器。在本文中,我们所选择的是PHILIPS公司的8xC749单片机。该单片机采用高密度CMOS技术制造;具有2K的ROM或EPROM、64byte的RAM,已经足够充电控制的需要;21个I/O口,可以作状态显示、输出;一个计时器/计数器,可以实现延时功能;5路8位A/D转换,可以作为电压、电流、温度检测输入;8位PWM输出,经滤波后可作为反馈电压。
电池对充电过程中的环境温度、电池温度比较敏感,对于这些电池我们可以加入温度测量电路。温度测量有不同的方法,根据精度要求的不同可以采用不同的热敏电阻、或者采用现有的温度传感器、温度检测模块。充电器根据不同的环境、电池温度采取不同的充电算法。
在单片机检测到电池组中电池不平衡的情况下,可以采用均衡充电的方法,使电量较多的电池少充电,电量较少的电池多充电。均衡充电原理图如图2所示。
2 充电算法的设计与实现
根据清华大学计算机系智能技术与系统国家重点实验室多年的研究,对于铅酸电池,采用多段恒流、定压、脉冲的充电算法最有效。程序原理框图如图3所示。
在程序的初始阶段应首先对单片机进行初始化,然后判断电池是否连接正确,根据电池状况判断应该进入哪一个充电阶段。具体实现为开始输出小电压,然后从小电压逐渐往上加,不断读入电池的电压、电流,根据所读入的数据进行判断。
当电池很空的时候,由于电池可能已经处于受损的状态,这时候应该采用小电流恒流充电。这样有利于激活电池内的反应物质,部分恢复受损的电池单元。当电池比较空的时候,可以用大电流恒流充电,使电池在短时间内冲入比较大的电量而不会损坏电池。具体算法采取多段恒流方法,实验证明多段恒流有利于充入更多的电量。当电池比较满的时候,应该采用定压充电,这时候随着充电过程的延续,电流会逐渐下降,这样能保证不会充电过量而损害电池。当电池很满的时候,可以采用的是脉冲充电算法。经试验证明,脉冲充电算法比传统的小电流充电算法不但速度快,而且充入的电量更多。
以上所说有四个充电阶段(小电流、多段恒流、恒压、脉冲)可以采用P、PI、PID算法,以保持电流/电压的恒定。在充电过程的初段,电池处于恒流充电状态,由于电池比较空,控制器对电流的精度要求不高,此时可以采用P算法。通过调整P算法的比例系数Kp,可以控制误差的大小。Kp越大,电流误差越小,但同时系统稳定性降低。根据控制理论,可以得到以下关系式:
Ui,i+1=Ui,i+Kp×(Uo,i-Uo,i-1)
ΔI=A/Kp
其中A为充电系统所确定的常数,由实验测得。
在充电过程的定压阶段,为了避免电池过充电,充电器对电压精度的要求比较高,此时应采用PI算法,以达到充电器对电池端电压无差控制的目的。定压控制的原理如图4所示。输出电压Uii+1可由下式计算:
Ui,i+1=Ui,i+Kp×Uo,i-Uo,i-1)+Ki×∑(Uo,j-Uo,j-1)
由于电池是一种容性负载,时间常数比较大,加上开关电源电路中也有一定的时延,因此整个电池充电系统的延时是比较大的。另外由于均衡充电电路也会引入很大的干扰,因此充电算法的鲁棒性非常重要,否则很容易出现控制器反应迟缓或出现超调震荡的现象。在这种情况下,PI算法中的常数Kp、Ki的数值对系统的稳定性非常重要。尤其是Ki,其取值范围比较小,很小的变化就会引起系统的震荡。一般情况下,Kp、Ki的确定可以采用以下方法:
(1)先采用P算法初步确定Kp1,选择Ki1<<Kp1;
(2)经实验调整得Ki2;
(3)再经实验调整得Kp2;
(4)重复步骤(2)、(3)一到两次;
(5)微调Ki,使系统的稳定域尽量大、时间常数尽量小。
必须注意的是,无论在任何阶段,控制器都必须不断检测以下三项关键技术指标:电路是否出现断路、电池是否出现不均衡现象、电池是否达到规定的安全电压。其中电池的断路主要通过检测电流的大小来判断。而且为了避免误判断,应该反复检测。当出现断路时,应重新返回预处理阶段。断路的判断应该在电压已经达到预定值的情况下进行,否则在电压没有达到预定值的情况下,电流比较小,可能出现误判断。均衡充电是智能电器的另一个重要特点。在充电的过程中,由于电池的质量不相同,容量小、质量差电池的电压在充入相同电量后会出现电压增加比另一个电池多的情况,如果不采取措施,它们的电压差将会增大,以至其中一个电池很快达到规定的安全电压,充电过程被迫停止。这时候应该对电压高的电池进行放电,即均衡充电。这样有利于恢复电池内受损的单元,使充电过程能顺利地进行下去。为了防止电池冲坏,在电池电压到达规定的安全电压时应立刻停止充电,否则会损坏电池。
综上所述,智能充电器是根据电动自行车、电动游览车的现实需要而开发的,在引入了单片机作为控制器以后充电效果比较理想,达到了在保证电池安全的情况下尽量多充入电量的预期效果。但由于智能充电器发展时间尚短,无论在硬件设计上还是控制算法方面还存在着一些不足,有待以后不断地改进。
- 祛魅固态电池:一文看懂这项大火的技术