1.前言
本文章是基于曾师兄的文稿《具有组网扩展功能的新能源汽车电池管理系统》而写的文章。该文章主要是对BMS(Battery Management System,电池管理系统)做一些简要的介绍,借此助各位也助我入门BMS。
有纰漏请指出,转载请说明。
学习交流请发邮件 1280253714@qq.com
2.为什么需要BMS?
在解决问题时,我最喜欢用的思路是,为什么->是什么->怎么做。
具体在本文章,我们需要解决的第一个问题是,为什么需要BMS?直接用个超大号的电池,或者把电池芯串联起来,不经过管理系统,直接给用电设备用,存在哪些问题?
文献[1]指出,锂离子电池以其输出电压高、循环寿命长、能量密度大、自放电率低、工作温度范围广等优点广泛应用于消费电子、电动汽车等领域。但同时,单个锂离子电池也存在安全和可靠性方面的问题,体现在:
1)能量大、电压高、且电解液大多为有机易燃物,应用不当时可能导致电池温度升高、着火甚至爆炸;2)过充电、过放电会导致电池内部材料特性发生变化,造成不可逆的容量损失,从而导致性能下降,寿命缩短。过放电还会使电池内部的锂离子金属化,以致引起短路甚至爆炸;3)由于工艺的差异性,电池内阻往往不一致,随着充放电的循环进行,电池组内单体电池的性能失衡,使电池组的寿命缩短。
ChatGPT对于为什么需要BMS的回复如下:
首先,没有BMS的电池使用过程中,如果电压、温度等参数不受到监测和控制,容易导致电池过充、过放、过热等情况,从而增加了电池发生安全事故的风险;其次,由于每个电池芯的性能和寿命都不同,使用时间不同步,因此在串联的过程中,电池芯之间需要进行均衡充电,否则会导致电池寿命缩短,影响整个电池组的性能和寿命;再者,准确地估算电池电量可以帮助我们及时安排充电或更换电池,保证设备正常运行,也避免过度充电或者过度放电的情况。
我个人对于为什么需要BMS的总结如下:
①锂电池能量高电压大存在诸多危险
②电池的过充或过放会导致性能下降
③单体电池各项参数存在差异,随着充放电循环,有些老得快,有些更持久
④估算电量,避免过充过放来保护电池,帮助安排充电或更换电池
解决了为什么需要BMS的问题,接下来要回答的问题是,BMS是什么,有哪些功能?
3.BMS是什么,有哪些功能?
IEC 制定BMS功能标准包含:电池数据采集、SOC 估算、电池循环寿命、告警保护。QC / T 897-2011对 BMS 功能标准包含:电池单体电压采集、电池温度采集、剩余电量估算、安全预警和控制、信息处理、信息交互。综合以上标准和实际汽车要求,电动汽车BMS 必须具备的基本功能:均衡管理功能、热管理功能、CMU通讯功能、SOC 估算、寿命估算、电池信息监控、充电和放电过程控制、数据显示和备份。
前面已经介绍了为什么需要BMS,再跟读者说BMS有以上这些功能,大家可能印象就深刻些。那么需求和方案就对应如下:
其一,锂电池温度高时会爆炸,那么BMS就需要有一个信息采集系统来监测当前电池信息,如电流、电压、温度等,当存在异常参数时,需要对做出相应的操作,如过压、欠压保护,关闭电源,降温等等。
其二,电池的过充或过放会导致电池性能下降,那么BMS就需要估算电池电量SOC(State of Charge,充电状态,取值通常是0%~100%),将采集到的电池数据提供给主控芯片,它根据算法来估算动力电池组剩余电量SOC,提供续驶里程参考。常用电流积分法、开路电压法、卡尔曼滤波等及其组合来估算。
其三,锂电池的实际容量会受到环境温度、放电电流(放电倍率)、自放电及电池老化等因素的影响。那么此时就需要监测电池的健康程度SOH(State of Health),SOH表征电池相对于新电池存储电能和能量的能力,是定量描述电池性能状态的指标。随着充放电的进行,SOH呈不断下降趋势。估算SOH需要通过长期监测和统计电池的使用情况、充放电特性以及温度等参数来进行评估。在实际应用中,通常采用多种算法来进行估算,如Kalman滤波算法、移动平均法等。
其四,单体电池各项参数存在差异,如电阻、容量、自放电等不同,对应到实际中就是电池充放电发热不一样,长时间不用剩余电量不同,有些可以用很久有些是弱鸡。那么BMS就需要做到均衡控制。
其五,需要把电池各项参数信息采集到,交给主控处理,那么这里就需要数据采集、传输、处理、显示,及最重要的控制。
几十块的小电扇,算不上BMS?我拆开了我的小电扇,里面的功能非常简单,一个18650电池和控制板。
在控制板的电容下面的芯片是一块TP4056芯片(立创商城单个近0.1元)。其功能如下:
TP4056 由于采用了内部PMOSFET 架构,加上防倒充电路,所以不需要外部隔离二极管。 热反馈可对充电电流进行自动调节,以便在大功率操作或高环境温度条件下对芯片温度 加以限制。充电电压固定于4.2V,而充电电流可通过一个电阻器进行外部设置。当充电电流在达到最终浮充电压之后降至设定值1/10 时,TP4056 将自动终止充电循环。
TP4056 当输入电压(交流适配器或USB 电源)被拿掉时,TP4056 自动进入一个低电流状 态,将电池漏电流降至2uA 以下。TP4056 在有电源时也可置于停机模式,以而将供电电流降至55uA。TP4056 的其他特点包括电池温度检测、欠压闭锁、自动在充电和两个用于指示充电、结束的LED 状态引脚。
输入过压、欠压保护
输出过流、短路保护
电池过充、过放、过流保护
IC 过温保护
充电电池温度 NTC 保护
IP2368 是一款集成 AFC/FCP/PD2.0/PD3.0 等输入输出快充协议和同步升降压转换器的锂电池充放电管理芯片; IP2368 的高集成度与丰富功能,只需一个电感实现同步降升压功能,在应用时仅需极少的外围器件,有效减小整体方案的尺寸,降低 BOM 成本。 IP2368 支持 2/3/4/5/6 节串联电芯,可通过外接电阻选择电池串联节数;IP2368 支持外接电阻选择普通锂电池还是磷酸铁锂电池,外接电阻可设置充满电压,锂电池充满电压可设置为:4.15V/4.2V/4.3V/4.35V/4.4V,磷酸铁锂电池充满电压可设置为:3.5V/3.55V/3.6V/3.65V/3.7V。 IP2368 的同步开关充放电系统,提供高达 100W 的充放电功率,可通过外接电阻设置最大充放电功率。IP2368内置IC 温度、电池NTC 温度和输入电压控制检测环路,可以根据不同功率充电器,智能调节充电电流。 IP2368 内置 14bit ADC,可以精确测量充电输入电压和电流,电池电压和电流。IP2368 内置电量计算法,可通过 IIC 获取电池电量、充电电压、充电电流等信息。 IP2368 支持 4 个电量指示灯,定制可支持 188 数码管。
明白了BMS是什么,有什么用,最重要的是解决如何做的问题。
4.如何实现一个像IP2368的简单BMS
回答这个问题之前,需要了解BMS的层次结构:
集成型的BMS,可以在电池模块(电池包)里数据就近采集,对模块进行监测、分析、管理、保护,最后将各个模块的数据传送到主控模块进行数据处理。
其三,剩余电量估算方面,目前比较常见的有OCV-SOC法,随着电池的电量越放越少,电池的开路电压(Open Circuit Voltage,OCV)也会越来越低 ,OCV-SOC模型通常采用数学模型,如二次函数模型或分段线性模型等,来描述OCV与SOC之间的非线性关系。其基本原理是通过测量电池在不同SOC下的OCV,并将其与实际充放电数据进行比对,进而拟合出一个最优的模型参数,以实现较为精确的SOC估计。
不过,OCV法还会受到多种因素的影响,因此电池电量SOC的估算实际上更为复杂。
测量电压需要非常高的精度,车用BMS的精度达到了0.03%(普通万用表精度1%),可选用专用AD采样芯片,如亚德诺的AD芯片,AD6815。此外,这颗芯片还有电池均衡的功能。
ADBMS6815是一款多单元电池堆监控器,可测量多达12个串联电池单元,总测量误差(TME)小于1.5 mV。ADBMS6815具有0 V至5 V的电池测量范围,适合大多数电池化学应用。可在304 μs内测量所有12个电池单元,并选择较低的数据采集速率以便降噪。
其四,电池健康状态SOH的估算,SOH等于当前电池容量与出厂电池容量的比值。SOH与RUL相互关联,故此处用RUL来表征。
其五,如已经采集到信息并分析当前电池状态,就要对电池进行管理了:
BMS可以根据电池的特性和工作负载需求,对电池的充放电进行精细控制,避免过充、过放和过流等情况的出现,从而保证电池的安全和稳定性。
通过温度传感器监测电池的温度,对电池进行智能温控管理。当电池温度过高时,BMS会自动降低电池的充电速度或停止充电,防止电池过热导致安全问题。
通过检测电池的异常状态,如过充、过放、短路等,自动启动保护机制,避免电池出现故障或安全问题。同时,BMS还可以记录电池的异常事件和故障信息,便于后期分析和排查。
至此,IP2368的功能(信息采集、电量指示、过充过放、欠压过压、过温保护)在前面五点都已提及,算是实现一个像IP2368的简单BMS。
有些图片来源于网络,侵删。
另外吐槽一下,CSDN的排版是真的拉跨!
参考文献/视频
[1]刘大同,周建宝,郭力萌,等. 锂离子电池健康评估和寿命预测综述[J]. 仪器仪表学报,2015,36(1):1-16.
[2]电动车快充,到底会不会伤害电池?
[3] 电动爹的续航,原来全靠猜?BMS如何让你的电池,续航更多一点?
[4]芯片选得好,续航能更长?无线BMS芯片原理解析与拆解实拍
[5]BMS电池管理系统项目实战 视频课程_哔哩哔哩_bilibili