1 引言
现代的移动通信设备越来越重视移动设备电源问题。移动电源的核心问题是可充电电池的管理问题,由于电池的管理与电池的化学特性密切相关,不同种类的电池具有不同的充电和使用特性,即使相同种类电池,由于采用电池材料特性不同,对充电和使用要求也不相同,因此使电池自己实现智能管理是电池用户的迫切要求。为解决电池的使用问题实现电池的“即插即用”,智能电池开始得到广泛应用,国际上一些着名的电池公司均开发了针对自己电池特性的智能电池体系。
目前电池实现智能化的途径有两种,一种是采用一些专用的集成电路来实现,一种是采用集成了模拟模块的单片机来实现。专用集成电路的方案存在以下缺点:只针对一种电池和一类电池的特性,电气接口和制式不统一,有的专用集成电路已跟不上电池技术的发展。本文采用的是单片机方案,实现对采用锂钴材料体系生产的18650电池的智能化管理,同时考虑未来电池技术的发展,并借鉴了智能电池技术成熟应用,选用了SMBus1.1做为智能电池数据通信接口,该方案具有通用、可扩展、易升级等特点。
2 系统构成及其主要功能
系统构成原理框图如图1所示。
本系统采用Motorola68HC908单片微处理器(简称MCU)对4节串联的18650型锂离子电池进行统一管理。该MCU具有12K闪速内存贮器,可在线擦写10万次。具有14路A/D 10位的信号采集口,两路增益可编程运算放大器,具有SMBus1.1接口和低功耗工作模式,可以方便实现多路模拟信号的采集和按SMBus1.1协议实现数据通信功能,另外该系列MCU在设计上具有完善的电磁兼容防护措施,具有抗干扰能力强,可靠性高的特点,可广泛应用到电力电子、汽车控制、及军工领域,可以实现对镍氢电池、镉镍电池、锂离子电池的智能控制,满足智能化电池的设计使用需求。在本方案中,通过MCU与电池组互连的方式使智能电池主要具有以下功能:
供电功能
当智能电池与用电器对接时,将自动唤醒MCU控制电池给用电器供电。另外也可与智能化充电机、手摇发电机一起为用电器浮充供电。
充电功能
通过智能充电器给智能电池充电,它们通过SMBus总线互连进行信息交换。锂离子电池充电一般分两个阶段,首先进行恒流充电,当电池电压达到一定值时改为恒压充电。因此MCU要不断的监测电池组电压,实现对充电电压的控制。
通信功能
电池与用电器、智能化充电机能够相互传送各自所需的固定信息、动态信息及告警信息。其中固定信息包括:电池厂商信息(生产厂家、生产日期、生产批号)、电池的化学成份、额定电压、额定容量、规范信息、名称等信息。动态信息包括:剩余容量、满充容量、电池模式、温度、温升、充电电压、充电电流、循环次数、剩余工作时间、电池状态(告警)等信息。
另外智能电池还具有剩余容量LED显示、自动保护等功能。
3系统硬件电路设计
3.1信号的采集
在本系统中,MCU采集的信号有电压信号、电流信号和温度信号。采集的方法如下:
电压测量
电压的测量采用电阻分压取样测量电压,通过测量分压电阻的电压值来测量电池组端电压,电阻分压比1:7, 电阻精度:±0.5%。其中分压电组的电压值采样通过MCU内部10Bit ADC 完成。
电流测量
电流的测量采用精密电流采样电阻测量电流。在电池组的负极串联一个20毫欧精密电阻,通过测量这个电阻的电压降来测量工作电流,电阻精度为0.5%。精密电阻两端电压的测量也是通过MCU内置的ADC采样完成。
温度测量
温度的测量采用负温度系数的热敏电阻测量温度,通过测量热敏电阻的阻值来测量电池温度,热敏电阻阻值精度为1%。热敏电阻应紧贴电池表面,每两只电池共用一只热敏电阻。
3.2均衡保护电路的设计
锂离子电池充放电过程中需监测每节电池的电压。因为在同一电流充放电中串联的4节电池的电压升降可能不会完全相同,这将会导致某一电池的过冲或过放,因此要增加电池均衡电路,使4节串联的电池电压大小在一定误差范围内保持时刻一致。在本方案中,利用MCU的I/O口来控制运算放大器,使电压变化较快的电池通过三极管短暂充放电来完成。
3.3保护开关的设计
保护开关选择功率MOS管作为充电和放电保护开关,MOS管选择为IRF4905。IRF4905S导通电阻为5毫欧,电流为60 A。通过MCU的I/O口来控制MOS管的导通和截止。由于I/O口的功率有限,因此本系统中在I/O口和MOS管中增加了三极管驱动电路。
3.4系统低功耗设计
对于需要连续供电的器件应选择较低漏电流的器件。稳压电源选择TPS71533,运算放大器选择低功耗运放。测量电路设计了开启和关闭的开关,在不需测量的状态下,采样电路关闭,以减少电能的损耗。在控制上选用低功耗控制策略。智能电池在充电过程、给用电器供电、显示按键按下时,MCU工作在Run 模式和Wait模式下,其余时间工作在STOP模式下,MCU工作在STOP模式时,要关闭电压测量、温度测量电路以降低电池能耗。从Stop模式进入 Run模式,需外界条件唤醒。唤醒方式采用显示按键唤醒方式、电流唤醒的方式。当显示按键按下时,CPU即由Stop模式进入Run模式;当有电流流过采样电阻时,CPU由Stop模式进入Run模式。Run模式下,10分钟内没有事件发生,MCU自动进入Stop模式。
4系统功能方案及软件设计
4.1功能方案
4.1.1电池保护管理
智能电池管理电路在电池的使用过程中,实时监控电池的电流、电压、温度、容量。智能电池管理系统通过计算,对锂离子电池实现下列保护:
(1)充电时,当总容量超过电池规定的最大容量,充电过程中温升大于3℃/2min,充电温度≤ -20℃、≥+55℃,向智能化充电机提供告警信息,并自动切断充电输入。另外当有一个单体电池电压超过4.25V,向智能化充电机发出告警信息,并能自动切断充电输入。
(2)放电时,智能管理电路通过对电压、电流测量及上次充电过程数据记录,防止电池过放电损坏。当智能管理电路发现电池继续放电会造成过度放电时(单体电池电压≤2.5V),智能电池发出告警信息并关闭放电输出。
4.1.2温度管理
温度、温升对电池的影响是不能忽视的。在使用过程中异常的温升需特别对待,特别是充电过程中大于3℃/2min的异常温升需要采取保护措施。另外温度对电池的剩余容量有显着的影响,温度是剩余容量计算、供电时间预测的重要的修正参数。
智能电池采用多点测温对电池进行温度管理,识别电池组温度,单体电池的异常温升,环境温度巨变。智能电池按以下规则识别:
(1)充电过程中2个测温点温度值相差不到2℃,连续的温度变化率相差不超过2℃,判别为电池组温度。其它智能设备读取的电池温度为所有测温点的平均值。
(2)充电过程中在电池充电容量加上起始剩余容量之和大于70%额定容量时有一个测温点的温度变化率超过3℃/2min,判别为充电异常温升。
(3)智能电池被充电唤醒后电池组温度(平均温度)变化率超过3℃/2min需试验确定,判别为环境温度巨变。
智能电池在充电的过程中,环境温度在低于电池温度-20℃情况下电池组不允许充电,-20℃~+10℃ 不允许大电流充电,+10℃~+55℃允许大电流充电,在+75℃以上不允许充电。
4.1.3容量的计算的方法
容量计算的基础是测量的电流对时间的积分,计算公式为:
Q=∫i dt
由于68HC908单片机内部的ADC采用了∑—⊿方式,转换速度很快,以累加的方式可以实现精度较高容量计算。
4.2系统软件设计
智能电池管理系统软件是被写入到68HC908的FLASH 中,经过电路处理电池的电流、电压、温度模拟信号转换成数据,根据这些数据结合电池的特性,完成系统功能方案指定的功能并且可以向与智能电池和电台提供相关电池的信息。软件的硬件平台是68HC908单片机,软件的开发平台为68HC908集成开发环境。程序结构框图如图2所示:
另外,智能电池提供统一的智能接口,这些智能的接口可以通过SMBus1.1协议进行访问。智能充电机、用电器可以采用相同的总线技术按照 SMBus1.1规范的协议简单、方便地访问这些接口。智能电池提供的这些接口能满足用电器及充电机向系统化、统一化、智能化方向发展要求。用电器、充电机通过读取这些信息可以知道智能电池制造、使用的全过程信息及电池当前使用的状况。
5结束语
本文给出了一套智能电池管理系统开发方案,阐明了管理系统的功能和实现方法。采用低功耗的设计思想,确保电路的自耗电满足电池存储的需求。充分利用 68HC908系列单片机丰富的对外接口控制功能,利用SMBus总线为用电器和智能化充电机随时提供所需的各种信息。本系统方便了用户,减少了操作,实现了智能化、一体化设计。