基于可编程逻辑的便携式设备多节锂聚合物电池管理

分享到:

       便携式设备的便携性是与电池的发展息息相关的,从最初的铅酸电池、镍镉(Ni-Cd)电池发展到镍氢(Ni-H)、锂离子(Li-ion)电池一直到最近的锂聚合物(Li-polymer)电池,能量密度逐步提高,移动性能越来越强,电池的缺点也不断被克服。本文就将介绍一个便携式锂聚合物电池的管理系统设计。

       系统整体结构
       本设计的应用实体是一个工业上使用的便携式设备,采用Altera的FPGA和其上的NIOS II嵌入式处理器,并使用USB接口与电脑相连接,面向的是大数据量应用。这个设备需要30V直流电压,所以计划使用4个1000mAh锂聚合物电池串联的电池组;另外,出于防水防尘的考虑,对外只使用一个方形的USB接口(USB B Type Socket),这个USB口同时兼具数据传输和充电的功能。

       整体结构如图1所示。控制核心包括FPGA及其所连的接口、显示电路,需要3.3V的低电压,由高效率的DC/DC芯片从4芯锂电池组直接降压得到。这个电压很重要,所以需要保持稳定且连续,除非电池组低电量或者过流保护,否则此电压一直供给。

图1 系统整体结构框图

       执行机构需要30V直流电压,电流大约80mA左右,使用一个升压DC/DC电路,这个电路由控制核心操纵,平时是不工作的,只在需要动作之前开启。

       充电使用外部20V电源,通过USB接口连接。使用这种电源的考虑是为了进行1C或0.5C大电流高速充电。由于与普通USB共用一个端口,为了避免接入普通USB时进入充电程序,需要一个电压判断电路进行判断。
由于合乎需要的芯片解决方案市场上很难寻觅,决定使用FPGA的剩余逻辑资源来实现充电器的控制功能,添加少量的模拟电路来辅助。这就要求对控制电路的供电不能中断,电池组必须一直在线,并且电池负极需要一直与GND连接。

       电池电路
       1 电压采样
       最重要的部分就是电压采样电路的设计,要求精度高并且受温度影响小。这个设计难点在于电池电压对于GND而言是浮动的。很多方案采取了差分运放转换到对地电压然后输入专用ADC进行AD变换的方案。但这个方案由于引入了差分运放,产生了许多问题。首先,电压比较高,运放很难找;其次,运放的电源与输入电压使用同一个电源,这样一来就要求运放需要轨到轨输入的功能;再次,可能还需要一个负电源,使用DC/DC又引入了噪声;另外,运放及使用匹配的电阻使得精度降低。

图2 RC充电电路

       为了尽量简化电路,这里构造了积分型的ADC,将FPGA定时的高精度转化为电压测量的高精度。
这是一个简单的RC充电电路(见图2)。其工作流程是:J1先闭合,释放C1上的电荷;然后J1打开,由R1对C1进行充电;电压比较器U1将C1上的电压与参考电压V2比较,当C1电压超过V2时输出高电平。统计从J1打开到U1输出高电平之间的时间,便可以确定V1的电压大小。可以直观地看出,V1越高,这段时间越短。
实际的电路如图3所示,注意这幅图只画出了第一个电池的测量电路。其中,R1与C1便是积分使用的电阻与电容,Q1是常用的P-MOSFET,这里用来实现J1给电容放电的功能,U5同时实现电压基准与电压比较器双重功能。X1是放电控制,来自FPGA,X2是开关量输出,去往FPGA。电压比较器选用的是美信公司的MAX921。

图3 实际取样电路图

       这个电路在静态时仅仅消耗MAX921的4μA电流和C1、Q1、Q2的漏电流,基本可以忽略不计,非常省电。
这个电路另外一个特色是省掉了经常使用的光电耦合器,而使用电容C2代替。静态时,C2两端达到电压平衡,不消耗电能,此时,X2电压为0。U5输出高电平时,因为C2两端电压不能瞬变,故X2电压被提升。D1与D2两个肖特基二极管是起限幅作用的。仔细调整C2与R4的值就能够顺利地传递开关量信息。