微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 电源设计 > 一机两用的锂电池充电系统的设计方案

一机两用的锂电池充电系统的设计方案

时间:12-09 来源:互联网 点击:

T端的输入恒定为7V,此时,TP8002无法知道电池的真实电压,只认为电池电压为7V.所以,尽管电池电压高于 8.4V,仍会以恒定电流对电池进行充电。在这种情况下,需要微控制器的干预,否则,会造成电池的过充。由于微控制器内部带有ADC,可以监测电池电压的变化。当电池电压达到指定值时,减小充电电流,直至电池充满。这样就可以对9.2V的镍镉电池进行充电了。

2.5脉冲充放电电路的设计

由于TP8002是恒流充电控制芯片,因此,必须使用微控制器控制其充电使能引脚COMP.当需要TP8002输出充电脉冲时,使控制COMP引脚的端口变为高阻态,使COMP引脚自行升至360mV以上时,便有充电电流输出。放电时,必须将COMP引脚拉低,使TP8002关断充电电流。之后,再打开放电电路。微控制器选用PIC16F873,它是一款基于Flash的8位微控制器。内部有定时器、看门狗电路、10位ADC等模块。微控制器以1s为周期对镍镉电池进行脉冲充放电。

3 系统软件设计

充电单元中的微控制器主要负责充电过程的控制和与总控板的通信,系统软件设计程序流程如图4所示。充电单元首先判断是否有电池,如果有电池放入,则判断充放电状态,默认是充电状态,该状态可由总控单元改变。若充电单元处于充电状态,则继续判断电池的化学性质,针对不同的电池采用不同的充电方式。若处于放电状态,则对电池组进行放电,直到电池电压低于阈值电压后,转为充电状态。

图4充电单元主程序流程图

除主程序外,总控单元与充电单元的通信是在中断服务程序中实现的。当充电单元收到总控单元的指令后,进入中断。若指令是查询数据指令,则向总控单元发送需要的数据。若是充电状态设置指令,则依据指令设置充电单元的充电状态。

4 通信协议的实现

通过与电池组中电能计量芯片通信的方法来判断电池的性质。本系统可以与遵循HDQ16接口协议的智能电池组进行通信,除了电池组的化学性质外,还可以将电池组的容量、电压、充电电流、编号等数据一并读取,供充电器显示之用。

充电单元可以通过HDQ总线对智能电池进行读操作。HDQ16接口协议是基于指令的协议。一个处理器发送8位指令码给智能电池,这个8位的指令码由两部分组成,7位HDQ16指令码(位0~6)和1位读/写指令。读/写指令指示智能电池存储接下来的16位数据到一个指定的寄存器,或者从指定的寄存器输出 16位数据。在HDQ16里,数据字节(指令)或者字(数据)的最不重要的位会优先传输。

一个块的传输包括三个不同的部分。第一部分经由主机或者智能电池把HDQ16引脚置逻辑低状态一个tSTRH:B时间后开始发送。接下来的部分是真正的数据传输,数据位在tDSU:B时间间隔里是有效的,负边界用来开始通信。数据位被保持一个tDH:DV时间间隔,以便允许主机或智能电池采样数据位。

在负边界开始通信后,最后一部分通过返回给HDQ16引脚一个逻辑高状态,至少保持tSSU:B时间间隔来停止传输。最后一个逻辑高状态必须保持一个tCYCH:B时间间隔,以便有时间让块传输完全停止。

如果发生通信错误(e.g.,tCYCB>250ms),主机就发送给智能电池一个BREAK信号,让其控制串行接口。当HDQ16引脚在一个时间间隔,或者更长时间里为逻辑低状态时,智能电池就会侦测BREAK.然后,HDQ16引脚回到其正常预设高逻辑状态一个tBR时间间隔。然后,智能电池就准备从主机那里接收指令。

5 结语

本方案中介绍的充电系统从技术上很好地解决了上述问题,通过LCD显示屏可以清晰便捷地读出电源的剩余容量、已有充放电次数、充电及放电电流、电池电压、容量统计和电池特性等重要内容,并且通过设定,可以判断电源是否达到报废标准,及时提醒操作者更新电源。经验证,本方案具有较强的实用性。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top