基于单片机的通用型智能充电器设计
扫描二维码
随时随地手机看文章
1 概 述
电子信息技术的快速发展使得各种各样的电子产品不断涌现,并朝着便携和小型轻量化的趋势发展,这也使得更多的电气化产品采用基于电池的供电系统。目前,较多使用的电池有镍镉、镍氢、铅蓄电池和锂电池,由于它们各自的优缺点使得它们在相当长的时期内将共存发展[4]。由于不同类型的电池的充电特性不同,目前通常对不同类型,甚至不同电压、容量等级的电池使用不同的充电器,这在实际使用中有诸多不便。本文设计了一种通用型的充电器,可对电压等级为1.2V~48V的镍镉、镍氢、铅蓄电池和锂电池进行充电。为达到如此宽的充电范围,充电电源采用二级电路拓扑,并使用同一PWM信号源对两级电路进行联动控制。该电源在 85VAC~265VAC的通用输入范围内均可实现1.2V(0.3A)~60V(1.6A)的宽范围输出。同时使用单片机进行充电控制,先进的慢脉冲快速充电法[4],并综合使用定时控制、电压控制和温度控制来中止快速充电,确保不会因过充电而损伤电池。
2 充电电源的拓扑结构和控制方案
由于要求充电电源的输出变化范围为1.2V(0.3A)~60V(1.6A),采用单级变换器很难实现这 么大的变化范围,故采用了两级结构,电源主电路如图1所示,交流输入经整流滤波得到稳定的直流电压DCin,首先经单端反激变换器预稳压,并实现输入级与输出级的隔离,然后再经BUCK变换器进一步降压,得到所需输出电压。为了保证单端反激变换器能稳定工作,加入了假负载R2。由于电池等效于一个大电容,故输出端可不加滤波电容。
为简化控制,采用同一PWM信号对两级变换器进行联动控制。单端反激变换器的的占空比一般应不超过0.5,以减小开关管电压应力,而BUCK变换器则希望尽量提高占空比,以改善输出电压波形和动态响应,因此,在保证能够实现所要求的输出变化范围的情况下,应尽量提高BUCK变换器的占空比,这样就不能采用完全相同的PWM信号同时控制两级变换器。为此,本文给出了一种相对简单的控制策略,使用同一 PWM信号变换出占空比不同的两路PWM信号,分别控制两级变换器,具体实现方法如下所述。
对于任一方波信号,要改变其占空比(对应于导通时间,即信号处于高电平状态的时间),一般有两种实现途径:一是改变其导通时间而频率保持不变,二是改变其频率而导通时间保持不变。本文采用后一种途径,即用PWM控制器输出的信号直接控制BUCK变换器,而在保持导通时间不变的情况下将其信号进行二分频,得到占空比减半的信号来控制单端反激变换器。具体实现电路如图2(a)所示,源信号经分频器二分频,得到频率减半的信号,再与源信号相与,即得到导通时间不变而频率减半的信号。电路中各点波形参见图2(b)。
3 充电控制方案
近年来,如何对电池高效、快速地充电成为充电技术研究的热点,国内外研究人员也提出了不少快速充电方法,本文即参考了其中一种较实用的慢脉冲快速充电法,这种方法能确保在充电过程中及时消除或降低电池极化,电池析气量少,温升低,充电效率高。整个充电过程由恒流和恒压充电两个阶段组成,在每一阶段均以周期为几秒到几十秒的电流或电压脉冲进行充电。而两阶段的转换时刻则由电池的充电状态所决定。
由于充电方法相对较复杂,且需要对多种类型和规格的电池进行充电,故需要采用可编程器件进行控制,而单片机以其相对强大的功能和低廉的价格成为首选。本文选用Motorola公司推出的 MC68HC908GP32作为主控元件,整个系统的组成框图如图3所示,反映电池充电状态的充电电流、电池电压和温度信号经采样电路送入单片机的A/D 转换口,单片机根据充电算法,通过D/A转换口输出信号控制充电电源的电压或电流给定,从而达到控制充电电源输出的目的。
软件系统采用模块化设计方法,整个程序由主程序模块、各类电池充电子程序模块以及错误处理模块组成,各模块相对独立,以便于算法改进及功能扩充,其中主程序模块构架了软件系统的骨架,通过其对其他模块的调用来实现完整的充电过程控制,其流程图见图4。
为确保充电安全,在开始充电前检测电池电压和温度,以排除电池接反、用户选择的电池规格有误等错误,并判断电池的状态是否适合快速充电,如电池电压或温度过低,则需要进行小电流预充电,待电池电压、温度达到正常范围后再开始快速充电。在整个充电过程中均实时检测电池电压和温度,并综合采用最高电压控制、电压零增量控制、最高温度控制和定时控制等方法来终止快速充电,以确保电池不被过充。
4 实验及结论
本文采用清华大学Motorola单片机应用开发研究中心推出的MC68HC908GP32IDK作为开发系统[2],对该充电器进行了实验测试,在整个负载范围内均有稳定的输出,开关管的最小导通时间(对应于最小负载)约为1.2us,而开关管(MTP4N80)的开关时间和反向恢复时间之和小于0.7us,故充电电源能稳定工作。
本文设计了一个通用型智能充电器,给出了宽范围充电电源的一种实现方法,并充分利用了单片机强大的控制功能,绝大部分功能由软件编程实现,使得系统对硬件的依赖性较小,便于功能的扩充及改进。