全钒液流电池(Vanadium Flow Battery,VFB)是绿色的产业化的新型液流电池之一[1]。钒电池具有容量大,功率和容量独立设计,循环寿命长,绿色环保以及安全性高等特点,在光伏发电、后备电源、智能电网、军用蓄电等领域都有宽泛的使用前景[2]。
电池管理系统(Battery Management System,缩写BMS)是电池与用户之间的纽带,可以提高电池的利用率,防止电池出现过充和过放,延长电池的寿命[3]。
国内外相关行业对BMS的研究和开发大部分都集中在电动汽车电池上[4]。全钒液流电池由于推广较晚、推广范围较窄、控制设备昂贵以及调试环境欠缺的限制条件,钒电池的BMS研制较晚[5]。
随着钒电池的推广,越来越多的研究机构和公司也开始重视钒电池管理系统的研发[6]。大部分研究机构像国网电力科学研究院武汉南瑞有限责任公司一样,大多采用西门子S7-200型号PLC对钒流电池进行实时监控和数据信息的采集[7],但是PLC端口有限,扩展成本较高且增加智能化接口困难。
本文以5 kW、30 kWh的VRB为对象,设计了一款基于STM32F103RB开发了全钒液流储能电池(VFB)管理系统,该电池管理系统可实现电池侧实时数据监测、故障诊断以及保护,并能存储和远程上传数据,端口扩展简单且成本低。
1 VFB管理系统的整体设计
1.1 VFB的工作原理
VFB是一种不同价态钒离子作为正负极电活性物质,活性物质溶解于支持电解质中呈液态循环流动的新型氧化还原储能液流电池[8]。VFB的工作原理图如图1所示,整个储能电池由两个半电池的电解液(正极电解液和负极电解液),外接正负循环泵,电堆以及相关管路组成[9]。
其工作原理:通过外接正负两个交流循环泵,把储液罐中的电解液泵入电堆内部,使其在不同的储液罐和半电池的闭合回路中循环流动,在两个氧化还原电堆的电势差的作用下,进入半电池的电解液在电极表面发生氧化还原反应,使电池完成充放电[10]。
![基于STM32的全钒液流电池管理系统的设计与实现 基于STM32的全钒液流电池管理系统的设计与实现](https://file.aibangfb.com/wp-content/uploads/2024/07/42cd45dd946c74f873776591047948b3.jpeg!a)
1.2 VFB管理系统的总体设计
本文设计的VFB管理系统是基于5 kW 30 kWh的全钒液流储能电池而设计,电池的功率为5 kW,电堆电压为48 V,容量可达30 kWh。全钒液流电池BMS的结构设计关键要考虑可扩展性,当储能系统规模扩大时,电池管理系统应能够方便的实现扩展、级联和组网。BMS的总体组成框图如图2所示。系统主要有采集模块、主控模块、电源模块、通信模块、继电控制模块、黑启动模块和故障指示与报警七大模块组成。
![基于STM32的全钒液流电池管理系统的设计与实现 基于STM32的全钒液流电池管理系统的设计与实现](https://file.aibangfb.com/wp-content/uploads/2024/07/6730f4c5140f2311e523d2a93f62ade9.jpeg!a)
采集模块主要负责采集电池运行过程中的开关量和模拟量信号,包括按钮信号、端电压、电流以及温度信号;控制模块采用STM32芯片,根据采集的信号进行电池SOC估计,并根据信号的采集结果控制循环泵的启停;电源模块将48 V的钒电和锂电分别转换成24 V,5 V和逆变成220 V来给系统的各个模块供电;通信模块可以实现硬件电路与组态软件的信号传输、可实现数据的远程上传和与外部其他模块的通信。
为了使VFB系统能够实现黑启动,增设了一个24 V锂电池作为系统的黑启动电源,并配备了黑启动控制模块用于控制黑启动过程,通过双向DC/DC变换器对24 V锂电池进行充放电;继电器模块则在控制A板的控制下实现钒锂切换,手自动切换和循环泵的启停;故障指示与报警模块可以根据指示灯的颜色变化和蜂鸣声提示故障,便于操作人员及时排除故障。
2 VFB管理系统的硬件设计
为了保证VFB的稳定可靠运行,在硬件电路设计过程中要充分考虑其抗干扰性、安全性和可靠性。VFB管理系统的硬件系统主要由主控电路、信号采集电路、供电电路和保护电路组成。
2.1 信号采集电路
信号采集电路主要包括电压信号采集、电流信号采集以及温度的采集,电路图如图3所示。由于STM32的工作电压为3.3 V[11],系统进行端电压采集时,需要将端电压的电压信号转换为0~3 V的电压信号,然后系统对0~3 V的电压信号进行采集。
对VFB进行运行电流采集时,利用霍尔电流传感器也是将电流转换成0~3 V的电压信号,然后系统对0~3 V的电压信号进行采集。本文采用DS18B20进行电堆温度采集,采集的温度值转换成电阻值,再将电阻值转换成电压值输入值系统[12]。STM32自带12位18通道的ADC转换器,因此,采集到的电压、电流和温度信号经过转换后进入STM32内置的ADC中进行转换[13]。
![基于STM32的全钒液流电池管理系统的设计与实现 基于STM32的全钒液流电池管理系统的设计与实现](https://file.aibangfb.com/wp-content/uploads/2024/07/ea75fdc8acfb5897b5ecd34db2ed693a.jpeg!a)
图3 信号采集电路
2.2 电源供电电路
电源是系统工作的动力。VFB管理系统中,系统启动电压和钒电池额定供电电压为48 V,因此系统内置48 V的锂电池用于启动电源,一旦钒电池开始混液,并监测钒电池端电压达40 V,该电池管理系统自动切换至钒电池供电。
48 V的系统供电电源启动后,一路经逆变器转换成220 V给交流循环泵供电,另一路先转换成24 V,给继电器、显示屏供电,再经由24 V转5 V给电流传感器和主控芯片供电。电源电路图如4所示。
![基于STM32的全钒液流电池管理系统的设计与实现 基于STM32的全钒液流电池管理系统的设计与实现](https://file.aibangfb.com/wp-content/uploads/2024/07/1e471175978d49f9dc5a3325116caabc.jpeg!a)
2.3 保护电路
BMS系统中直交流信号共存,同时还有各种开关信号。为了减少电磁干扰,本系统采用光耦和继电器二级保护设计。主控芯片STM32与tlp250相连进行直交流的隔断,tpl250的输出信号控制继电器HFD27-024-S,进行二次干扰信号隔离。保护电路图如图5(a)和(b)所示。继电器控制模块包括正负泵的启停控制、钒锂电池的供电控制、手动自动的切换、紧急制动以及上电自锁电路,本模块由17个24 V的JRC-27F继电器实现控制。
为了提高安全性,自动控制电路与手动控制电路完全分离,手动控制全部由继电器进行控制,尤在钒锂输入处采用两路继电器进行控制,大大提高了系统的可靠性,并对钒锂电池的正负两极同时进行控制,以避免出现不必要的电磁干扰,所述模块留有一个继电器与相应的接口根据控制需求可以进行扩展。
![基于STM32的全钒液流电池管理系统的设计与实现 基于STM32的全钒液流电池管理系统的设计与实现](https://file.aibangfb.com/wp-content/uploads/2024/07/661cbb98bf98ac28eb7e79fc5e6ebf85.jpeg!a)
3 VFB管理系统的软件设计
VFB管理系统的功能包括循环泵的启停控制、钒锂切换控制、故障检测与诊断、信号的采集、SOC估计以及相关参数校准。
系统上电后,初始化BMS,对VFB进行故障检测,若系统连接有问题,则关闭泵与所有阀门,开启故障状态指示灯,发出警报提醒工作人员;若连接正常,采集电池参数,进入充放电控制,同时检测开路电压估算SOC,修正恒压充电过程,控制循环泵的启停并对电堆的温度进行控制;当VFB系统因故障停运、工作电源消失时,进行钒锂切换控制,由锂电池辅助实现黑启动,如图6所示。
![基于STM32的全钒液流电池管理系统的设计与实现 基于STM32的全钒液流电池管理系统的设计与实现](https://file.aibangfb.com/wp-content/uploads/2024/07/28b7138ca0726378fa285bf542ad8aa3.jpeg!a)
3.1 BMS的SOC估计程序
SOC估计是电池管理系统的基本功能,也是重要的功能之一,对于判断电池运行状况和控制电池充放电过程至关重要[14]。SOC的正确估计可以预估电池的剩余工作时间,防止出现过充或者过放,延长电池的使用寿命。对此,系统采用修正卡尔曼滤波实现SOC估计,保证SOC的估算精度和实时性。
修正卡尔曼滤波算法是综合开路电压法、安时积分法和卡尔曼滤波算法的优点,在系统开机时使用开路电压法,根据OVC-SOC关系如图7所示,去确定SOC初始值,之后交替使用安时积分法和卡尔曼滤波法,以卡尔曼滤波法对安时积分法的估算结果进行修正,达到快速准确在线估算 SOC 的目的。基于修正卡尔曼滤波算法的SOC估计流程图如图8所示。
![基于STM32的全钒液流电池管理系统的设计与实现 基于STM32的全钒液流电池管理系统的设计与实现](https://file.aibangfb.com/wp-content/uploads/2024/07/f9d7662bb718e9c68139a2cc8050ba52.jpeg!a)
![基于STM32的全钒液流电池管理系统的设计与实现 基于STM32的全钒液流电池管理系统的设计与实现](https://file.aibangfb.com/wp-content/uploads/2024/07/05ab903abbe4d0c4cc0e4e2869b43d83.jpeg!a)
3.2 BMS的主控制程序
BMS控制程序主要通过交流循环泵的启停操作达到对电池充放电的控制以及过充过放的保护。VFB工作时的状态主要有充电、放电和待机。为了保证钒电池安全均衡高效充放电,并考虑实现的难易程度,控制电池的充电过程采用三段恒压充电,即先快充再慢充最后涓流充,达到快速充电的目的;放电过程采用恒功率放电,驱动恒功率负载。
通过采集电池状态参数,选择电池充放电阶段。进入不同阶段后,通过开路电压修正恒压过程,即利用所估计的SOC值去修正充电电压,从而实现精准控制。由于钒电池输出电压在42~60 V,充电过程中,将电压过充保护阈值设置为60 V,同时在三段恒压充电过程中,开始时电流很大,后逐渐减小,在充电末期仅有很小的电流通过,这里将快慢充电电流分界点电流设置为35 A。具体控制过程如下,其中I为电池工作电流,U为端电压:
1)首先采集初始信号,当检测到I>0且U<60 V,此时为充电状态。然后判断电流I是否大于等于35 A,若大于快慢充电流分界点,电池转入快充,否则转入慢充。
2)当进入快充阶段时,采用大电流恒流充电(根据电池的特性,具体电流设置有一定区别),待端电压U上升至58 V,但也有可能因为惯性而超过58 V,将其设置为到58 V+0.03I后转入慢充,否则仍处于快充,重复这个过程,继续等待下一时刻采集的信号进行判断。
3)当进入慢充阶段时,采用58 V恒压充电,待端电压U上升到59 V+0.03I后转入涓流充电,否则仍处于慢充,继续等待下一时刻采集的信号进行判断。
4)进入涓流充电阶段,也就是恒流浮充阶段后,设置电流低于35 A,或者更低,具体根据电池特性选择。待检测到U上升到截止电压阈值60 V时,停泵结束整个充电过程,否则继续涓流充电。
若不满足充电且U<60 V时,如果U大于等于60 V则立即停泵,即停充停放。否则,电池进入放电工作模式。放电采用恒功率放电,电池端电压下降,充电电流逐渐上升,将电压过放保护阈值设置为42 V。放电工作模式为:当检测到U大于等于42 V,继续判断电流I,若I小于35 A,继续放电,若I大于等于35 A,继续放电,直至电压小于42 V,停泵结束放电过程。
充放电以及保护控制流程图如图9所示。
![基于STM32的全钒液流电池管理系统的设计与实现 基于STM32的全钒液流电池管理系统的设计与实现](https://file.aibangfb.com/wp-content/uploads/2024/07/f0f2c59610fd50a2dabbea68989191a8.jpeg!a)
3.3 BMS的组态软件设计
系统基于MCGS组态软件进行上位机开发。上位机软件可以实时的监控电池的工作状态、采集的相关参数、运行曲线、故障点以及进行参数校准,便于远程VFB工作模式切换。
4 系统测试与分析
为了验证数据采集精度以及运行的可靠性,对系统进行了模拟试验和联机测试。
4.1 充电方法测试比较
为了比较本文充电策略的优劣性,将其与常规恒流恒压控制方法进行对比。每一组做10次充电实验,并将所测数据取平均值,得到相应的充电参数。实验结果如表1所示,其中:t为充电时间,p为过充概率,SOC末为结束SOC,可知与常规充电相比,三段恒压充电时间缩短25%,出现过充的概率不超过2%,在确保不过充的基础上提高了充电效率。
![基于STM32的全钒液流电池管理系统的设计与实现 基于STM32的全钒液流电池管理系统的设计与实现](https://file.aibangfb.com/wp-content/uploads/2024/07/42184c9bca72bd235953e4e2a2236e69.jpeg!a)
表1 充电方法的比较
4.2 SOC精度测试
进行SOC精度测试,先将电池充电至SOC的90%,达到预定的截止电压后停止充电,然后放电,每放电20分钟记录SOC估计结果,并测其开路电压,根据E-SOC曲线的规律得到SOC实际值。当电池放电至10%SOC时停止放电,再次充电,记录并比较充电状态和开路电压曲线。电池SOC测试结果如图10所示,可以看出该算法的估计SOC结果接近实际值,SOC变化趋势基本一致。采用修正卡尔曼滤波进行剩余电荷量估计,精度可控制在±2%以内。
![基于STM32的全钒液流电池管理系统的设计与实现 基于STM32的全钒液流电池管理系统的设计与实现](https://file.aibangfb.com/wp-content/uploads/2024/07/39cfa51985827b1530d17f848bb354a7.jpeg!a)
4.3 信号采集精度测试试验
在信号采集精度测试中,将BMS采集到的电池工作参数与读取到的检测值进行对比分析,参数的采样误差如图11所示。结果表明电压和电流采集通道的误差在0.1%以内,温度误差在0.15%以内。模拟供电和现场联机工作过程中,供电电源采集回的电压、电流以及温度,精度达到行业标准,VRB运行参数采集较为准确。
![基于STM32的全钒液流电池管理系统的设计与实现 基于STM32的全钒液流电池管理系统的设计与实现](https://file.aibangfb.com/wp-content/uploads/2024/07/f5829aa3317fb80a4ff45a96752f18b9.jpeg!a)
4.4 通信误码率测试
误码率是衡量数据通信传输质量的常用指标,反映了数字系统的传输质量公式,是数据传输精度的指标。通信误码率测试主要是测试VFB管理系统的通信可靠性。测试设备采集控制部分的通信误码率,经检测,可以证明系统通信稳定,能够可靠管理VFB。
除上述试验外,还进行了温度、电磁兼容、静电放电等试验,即系统在高低温环境下受到静电干扰、电磁干扰等,不会中断通信。根据控制逻辑,系统可以正确的完成泵的启停,使设备正常工作。
5 结束语
本文设计的全钒液流电池管理系统实现了电压、电流、温度等信号的采集以及工作状态的监测和控制。系统采用修正卡尔曼滤波法实现SOC估计,估计误差可控制在2%以内。系统在设计过程中采用STM32,成本低,扩展空间大。此外,系统在硬件电路和软件设计中分别采取滤波保证采集数据的精度,采用光耦加继电器双重隔离保证可靠性。系统经过实验室测试和现场联机测试,运行稳定,可投入批量研制和生产。
来源:《计算机测量与控制》2020年9期
作者:孟 青,杨 勃,牛慧芳,张 文,冯 杰,王金龙
(1.中北大学 朔州校区,太原 030051; 2.北京理工大学 机电工程学院,北京 100081)
https://m.fx361.com/news/2020/0926/12210912.html