基于ISL9208的大容量锂电池组系统设计
ISL9208可以选择两种方式充放电, 一种是充放电电路整合到一起, 另一种是分离式。它们两者的区别在于整合方式充放电电路共用一个电路, 而分离方式则分别用2个引脚检测充放电电流, 充电时放电检测停止, 反之亦然。本系统采用整合方案, 因此, CSENSE 引脚直接接地,DSENSE引脚则通过一个外接电阻来测量电压,从而测量充放电电流。需要注意的是, 此时的参考地是DSREF引脚。
在充电过程中, 当DSENSE的测量电压超过设定值且时间超过设定延时时, ISL9208将进入过流保护和短路保护模式。此时, MCU会通过芯片控制CFET引脚电压, 以关断外部FET, 从而断开电路, 避免过流引起的电池组安全事故。同理, 在放电时, 如果检测到放电短路, 系统也通过控制DFET引脚的电压来关断外部FET以达到控制之目的。
由于本设计针对的是大容量的锂电池串联使用的场合, 其充电电流和放电电流都比较高, 因此, 电路中的外置FET推荐使用能通过大电流而且稳定性较好的IRF540NS。
(3) 芯片内部温度以及外部电池组的温度测量和控制。
芯片的内部过热主要是由于内置均衡电流产生的热能造成的, ISL9208自身集成有内部IC过热后停止电池均衡的功能, 因此不需要外置电路来监控芯片自身的温度。
锂电池的正常工作温度范围在0℃至50℃之间, 温度过低, 电池将无法工作, 而过高则容易导致爆炸, 因此, 对电池组的温度控制尤为重要。一旦温度达到一定程度, 就必须使用外部散热设备对电池组进行散热, 超过警戒温度应马上中断电路, 以保证安全。
ISL9208自带一个温度检测模块(TEMP3V引脚和TEMPI引脚), 该电路将反复开启(TEMP3V每640 ms开启5 ms)。TEMP3V引脚通过外接一个电阻分压器和一个热敏电阻来实现对电池组温度的检测, TEMPI引脚用于测量热敏电阻两端的电压, 当电压下降到设定门限值时, 表示外部过热, 此时MCU将中断电路并启动散热设备, 以等待电池组散热, 恢复正常温度。TEMPI的电压可以通过AO口, 通过MCU设置多路复用器来实现对MCU的输出。
1.3 均衡模块
电池均衡可定义为电池组中对单个电池的微分电流的应用, 电池组接受相同的电流, 每个电池需要额外的电子元件和电路来达到电池均衡。
电池均衡直接影响整个电池组的使用寿命, 特别是在大容量锂电池组的应用中, 本身电池组成本较高, 如果使用寿命很短, 则很难进行推广。
ISL9208只用少量外置电阻就能实现电池均衡, 需要说明的是, 这种均衡方式属于电压式均衡, 由于电池之间的内阻和容量差异, 即便每个单体电池电压达到一致, 也并不代表每个电池的容量就能达到一致。实际设计是采用CB1~7引脚, 并通过内部的FET, 在充电时绕过单个电池并分流一小部分电流; 而在放电时, 则从电池分出电流, 这个功能可以减小单体电池的电压。其电流最大可达200 mA, 并可以根据分流电阻下调均衡电流的大小。在均衡电流比较小的时候, 可以开启多个均衡FET, 但整体不能超过器件的功耗限制, 过多的平衡电流会导致内部IC过热而中断充放电。
2 系统软件设计
本系统的软件部分是通过MCU实现周期性测量各个参数, 并与初始化时的设定值进行比对,以判断是否需要进入保护状态或者平衡状态。整个系统的软件可采用模块化设计方法。
2.1 系统初始化模块
系统初始化模块主要完成对ISL9208的初始化, 主要设定系统的过放电保护电压、过充电保护电压、过放电电流、DFET和CFET引脚的状态、以及TEMP3V温度模块等。
2.2 参数测量模块
参数测量模块主要用于对锂电池运行状态下的电压、电流和温度等参数进行周期性测量。因为各个参数都已经设置好了测量方法, 所以, 只要MCU通过I2C通信接口向ISL9208的SDA引脚发出指令, 修改ISL9208内部多路复用器的寄存器(地址为03H) AO3:AO1的值, 就可以使AO引脚向MCU输出需要得到的各种电压值。
2.3 状态判断模块
经过参数测量模块所得到的测量值经过适当的转换, 再由MCU将其与初始设定值进行比较,如果超过上下限值, 则进入保护模式, 如无, 则进入均衡模式。
2.4 保护和均衡模块
当MCU判定系统进入保护模式时, MCU可通过设置ISL9208的FET Control寄存器(地址: 04H)后两位的值来实现对外部FET的控制。
如果周期性测量的各个参数都符合正常工作范围的要求, 那么则进入充放电均衡模式。若以当下电池组中电压最低的那个电池的电压为基准, 均衡范围为±50 mV (均衡的相差电压可根据实际需要通过电阻调节), 那么, 就可据此逐个排队判定其他电池是否需要均衡, 然后
评论