ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

储能BMS三级架构详解:BMU、BCU、BAU硬件设计与实战要点

储能BMS三级架构详解:BMU、BCU、BAU硬件设计与实战要点 1. 储能控制单元总体架构BMU、BCU、BAU到底各管什么事我早几年刚接触储能项目时看到图纸上一堆缩写就头疼BMU、BCU、BAU、BMS乍一看全是“B开头U结尾”不翻规格书根本分不清谁是谁。后来带过几个新人也发现大家栽跟头的地方高度一致——不是不理解某个单元的功能而是搞不清这几个单元之间的层级关系和职责边界。今天就把这个体系彻底掰开讲清楚。先从一个生活化类比入手。你把一个储能集装箱想象成一栋写字楼BAU是整栋楼的物业总控中心管全局、管对外协调BCU是每一层的楼层管理员管这一层的空调、照明、门禁还有和上下楼的沟通BMU则是每个房间里的传感器探头温度、湿度、门窗状态全靠它实时上报。对应到储能系统里BMU是电池模组管理单元BCU是电池簇控制单元BAU是电池阵列管理单元BMS则是“电池管理系统”这一整个体系的统称。顺带把那个搜索热词“bms和bmu的区别”一并解决BMS是顶层概念包含全部硬件BMU、BCU、BAU和全部软件算法BMU只是BMS里的一个底层硬件单元负责最原始的电芯数据采集。很多入行不久的人会在简历里写“熟悉BMS开发”实际接触的只是BMU层面的采样板这俩词差着好几个层级面试时容易露馅。回到工程视角。当前主流的储能BMS采用三级架构模组级BMU、簇级BCU、系统级BAU。BMU直接贴在电池模组上采集每颗电芯的电压、温度并执行均衡动作BCU管一整个电池簇汇总簇内所有BMU的数据做状态估算SOC、SOH、SOE、SOP控制高压继电器、预充电回路、绝缘检测并和PCS储能变流器、热管理系统联动BAU则站在最高层面向多簇并联的完整储能系统负责功率调度分配、多簇协调、与EMS能量管理系统/SCADA数据采集与监控系统通信、故障告警归集。选型上三个层级的主控芯片方案完全不同。BMU的MCU用主流ARM Cortex-M0/M3内核就已绰绰有余比如STM32F103、GD32F103这类百来脚的片子BCU需要跑卡尔曼滤波、SOC估算、协议栈算力要求上了一个台阶一般选Cortex-M4/M7级别甚至带双核锁步的MCU比如STM32F407、TC234、S32K144BAU更复杂要接多路CAN、以太网、B码对时、大容量存储常见方案是高算力MCU加Linux核心板或者直接上工控机。我把这套架构讲给不少朋友听的时候他们最关心的问题是为什么不能把BMU和BCU合并成一个单元非得搞三级原因主要有三点其一储能系统的电芯数量极多一个40尺集装箱可达上万颗电芯数据采集量巨大必须分散就地处理否则线束和通信负担无法承受其二电池模组和电池簇在物理上是可独立更换的单元维修、梯次利用时都需要独立管理其三三级架构天然形成故障隔离边界底层坏了不影响上层决策这在安全等级要求极高的储能场景里至关重要。2. 硬件构成拆解每一级单元的选型与设计要点2.1 BMU硬件采样精度是命根子BMU是整套系统里离电芯最近的硬件它的本职工作就三件事采电压、采温度、做均衡。但这三件事的含金量远比字面上看上去高得多。先说电压采样目前的方案几乎都是AFE模拟前端芯片加MCU的结构。AFE芯片负责把电芯电压转换成数字信号MCU负责读取并上传。AFE选型时盯紧三类指标即可采样精度、通道数量、菊花链通信能力。采样精度上主流芯片能做到±1mV到±3mV磷酸铁锂的充放电平台很平缓电压变化幅度小采样误差一旦超过±5mVSOC估算的精度就会肉眼可见地变差。通道数按模组串数选6串、8串、12串、16串都有现成产品常见的是12串和16串方案覆盖50Ah到300Ah的方形铝壳电芯模组。菊花链通信是很多新手容易忽略的环节。BMU级联时一颗AFE最多只能采十几串电芯一个模组如果超过这个串数就需要多颗AFE通过隔离菊花链例如isoSPI串联通信。这种通信是高速差分信号对PCB布局、变压器选型、线束屏蔽都有要求。我在实际项目里看到过不少因为菊花链线束没有采用双绞屏蔽线导致通信误码率飙升、BMS误报电压的案例。温度采样相对“皮实”一些但同样有讲究。一颗NTC对应2到3颗电芯的布置方式最为常见重点覆盖电芯的正负极柱和模组中部。NTC的精度等级选±1%就够用更重要的是把NTC贴在电芯表面时要涂导热硅脂保证热耦合良好。我见过现场安装工人图省事直接贴上去结果温度采集数据和实际电芯温度差了5℃以上热管理策略完全是“瞎指挥”。均衡功能是BMU硬件设计的重头戏。现在的模组级均衡以被动均衡为主本质就是通过电阻把高容量电芯的能量以热量形式释放掉让整个模组各电芯的SOC趋同。硬件上就是一颗均衡MOS管加一颗功率电阻设计时重点关注两件事均衡电流够不够散热能不能扛住。主流方案的均衡电流在100mA到200mA之间功率电阻选1Ω到5Ω具体看模组电压PCB上要给电阻留足够散热铜皮否则长时间均衡时板子能闻到糊味。2.2 BCU硬件高压采样、绝缘检测和继电器控制是三大难点BCU是整个BMS体系里硬件最复杂的单元它要对一整个电池簇负责硬件功能覆盖高压采样、电流采样、绝缘检测、继电器驱动、通信汇聚、热管理联动任何一个环节设计不到位都可能引发严重事故。先说高压采样。电池簇的总压通常在600V到1500V之间常规做法是用电阻分压后送ADC或者用隔离放大器/隔离ADC直采。设计核心是“隔离”高压侧和低压侧必须有可靠的电气隔离爬电距离和电气间隙要按标准留足否则绝缘出问题就是安全隐患。总压采样和每串电芯电压累加值之间要做交叉校验这也是BMS的入库检测项之一误差超过阈值就报故障——这套冗余校验的逻辑粗暴点说就是“我不信任何单一来源的数据”。绝缘检测是BCU的看家功能原理也不难。系统里采用电桥法或注入法通过分时切换电阻网络测量正负极母线与大地之间的绝缘电阻一旦检测值低于安全阈值立刻告警。工程上常见的绝缘电阻阈值是100Ω/V到500Ω/V按系统电压折算例如800V系统最低不能低于80kΩ。摔过的跟头是直流母线上的Y电容会导致绝缘检测误判直流母线电压纹波大时电桥法测得的值会周期性波动软件上需要做防抖滤波不然充着电突然误报绝缘故障触发系统停机用户的损失是以万元计的。电流采样也有讲究。储能系统的电流量程大充放电电流可能在几十安到几百安之间大容量系统甚至会超过一千安。分流器和霍尔传感器是两条主流路线分流器精度高、温漂小、成本低但主回路串入采样电阻会增加系统损耗霍尔传感器无插入损耗但精度受温度影响大且大电流下易饱和。现在的趋势是磁通门霍尔兼顾精度和线性度缺点是价格贵适合对性能有要求的项目。无论选哪种电流传感器都建议选带冗余的两路独立采集互为校验这可是直接关系到SOC精度和故障诊断的关键硬件。继电器控制和预充电设计是BCU硬件最容易“炸机”的地方。储能系统的母线电容很大直接闭合主继电器瞬间冲击电流可以达到数千安足以把继电器触点熔焊。标准做法是先闭合预充继电器让预充电阻限制冲击电流等母线电压充到电池电压的90%以上再闭合主继电器最终切断预充回路。预充电阻的选型要算冲击能量电阻阻值、功率、耐冲击能量都要留足余量。我们做过800V系统预充电阻选的是100Ω、50W长条绕线电阻实测预充时间大约在0.5秒到1秒整个过程很平稳。BCU和BMU之间、BCU和BCU之间、BCU和BAU之间的通信基本被CAN总线包了。储能系统的CAN通信距离长、节点多、干扰大设计上要做三件事120Ω终端电阻在总线两端必须接通信线用屏蔽双绞线且屏蔽层单端接地每个节点的物理层芯片选带隔离的比如CTM1051这类带隔离的CAN收发器模块能省掉一大截共模干扰的烦恼。2.3 BAU硬件站在系统顶层的“协调者”BAU在硬件上其实不像BMU、BCU那样有强烈的“嵌入式”色彩它更多是一个集中式控制器甚至可以直接用高性能PLC或工控机加通信板卡实现。它的工作是协调而不是采集所以硬件设计的重心在通信接口的扩展和系统冗余设计。BAU通常需要多路独立CAN接口同时对接BCU、PCS、消防系统、空调系统还需要以太网接口对接EMS/SCADA有的项目还要求4G通信模块实现远程运维。以我接触过的项目为例BAU用了双网口设计一路接站内监控系统一路接远端云平台网络断开时自动切换。CAN接口做了四路独立的其中两路和PCS通信做冗余另一路接各自电池簇的BCU还有一路备用。冗余设计在BAU阶段是必须的因为BAU一旦宕机整个储能系统的上层协调就算瘫痪了。BAU和BCU之间还需要时钟同步机制。储能系统对数据的时标有严格一致性要求事件顺序记录必须精确到毫秒级所以很多项目会引入B码对时或PTP精确时间协议让BAU、BCU、PCS的时间基准统一。之前有个项目因为各控制单元时钟漂移故障录波的时间线对不上排查了整整三天才定位到是时钟同步没做——从那以后我把B码对时列入了BAU硬件的必选项。另外要提一个BAU硬件容易被低估的部分历史数据存储。储能系统发生保护动作或者故障时需要回溯告警前后一段时间内的所有电压、温度、电流、SOC、继电器状态数据这就对BAU的大容量存储提出了要求。至少要能记录数月甚至一年的历史数据存储介质建议选工业级SD卡或者SSD并做掉电保护设计防止异常断电时数据损坏。3. 功能实战从数据采集到策略下发的完整闭环3.1 SOC估算安时积分、OCV修正与卡尔曼滤波的三层配合SOC荷电状态估算是BMS软件里最核心也最考验功底的模块。它直接影响两个用户最在意的数值续航和可用容量。储能系统用户看重的是充进去了多少电、还能放出来多少电如果SOC估不准轻则影响收益结算重则导致过充过放事故。目前工程上最成熟的方案是安时积分OCV开路电压修正卡尔曼滤波组合拳。安时积分是基础原理就是SOC等于初始SOC加上电流对时间的积分除以电池容量SOC(t) SOC(0) (∫I dt) / Q这里的Q是当前温度下的实际可用容量而不是标称容量。温度每下降10℃磷酸铁锂电池的可放容量大约下降5%到8%如果直接用标称容量算低温下SOC会严重失真。光有安时积分不行长时间运行后累积误差会越来越大所以必须引入OCV修正。电池静置足够长时间后端电压和OCV基本一致通过查OCV-SOC曲线就能得到一个比较可信的SOC值用来校准安时积分的结果。但磷酸铁锂的OCV-SOC曲线在20%到80%区间非常平缓电压变化不到几十毫伏OCV修正的效果天然有限这就是为什么很多方案最终要上卡尔曼滤波的原因。卡尔曼滤波的本质是一个结合模型预测和实测数据的最优估计算法。系统先用安时积分估算出一个先验SOC再用端电压测量值计算修正量得到后验SOC权重由模型噪声协方差和测量噪声协方差共同决定。听起来复杂实际落地时也不需要完全从零推导公式MATLAB/Simulink里有成熟的电池模型把电池的等效电路模型参数内阻、极化电容辨识准就能收敛。我个人的经验是电池模型参数辨识的权重比滤波算法本身的调参更大模型不准卡尔曼滤波也救不回来。3.2 SOP与充放电控制策略功率限制比SOC更实用储能系统里用户往往更关心SOP功率状态即当前还能充多少功率、放多少功率。这个数值是BCU/BAU给PCS下发的关键指令。SOP的计算逻辑不算复杂但要考虑的因素很多SOC约束、电压约束、温度约束、单体电芯一致性约束。SOC约束最容易理解——SOC太低时还能放的功率就小太高时还能充的功率就小接近上下限时功率要逐步降低不能突然切断。电压约束关注的是充放电过程中电芯电压会不会越限放电时电压会被拉低充电时会被抬高都要留出安全裕量。温度约束更直白锂电池低温充电会析锂所以低温下必须限制充电功率甚至禁止充电。实际策略下发时BCU计算簇级SOPBAU汇总所有簇的SOP后做全局协调。比如系统里有四个簇其中一簇SOC偏低BAU在放电时会优先增大其他三簇的输出功率尽量让四簇同时放空避免某一簇提前触底导致整个系统退出。这一套功率平衡策略说白了就是“木桶效应”的反向操作——把短板尽量抬起来而不是按最短板一刀切。3.3 均衡策略压差均衡还是SOC均衡均衡策略是最能体现BMS软件“经验含量”的地方。算法写得粗糙的单体均衡不仅浪费能量还可能在均衡过程中造成新的不一致。均衡分为被动均衡能量耗散型和主动均衡能量转移型储能系统目前大多数还是用被动均衡因为主动均衡电路复杂、成本高在模组数极多的大系统里性价比不高。被动均衡的触发条件行业内最常见的做法是系统处于静置或充电状态电池簇内最大压差超过设定阈值比如50mV就把电压最高的电芯接入均衡电阻放电。但这里有个坑如果只看压差而不看SOC可能会得出错误结论。两个电芯的电压恰好相同但一个容量大、一个容量小它们的SOC并不相同。真正的均衡目标是SOC趋同而不是电压趋同所以现在更先进的策略是在充电末端基于实时估算的SOC差异来触发均衡。充电末端是均衡的黄金窗口。因为充电末端电压抬升明显电芯之间的微小容量差异会被放大成明显的压差此时均衡效率最高。我们项目里的实际做法是当SOC大于80%且压差大于30mV时对最高电压电芯执行均衡在充电末端阶段把压差压缩到10mV以内放电时几乎不再出现某个电芯先触底的情况。均衡开关频率也要注意频繁的开关均衡MOS会缩短器件寿命设置合理的均衡滞回区间比如开启阈值50mV、关闭阈值20mV是标准做法。3.4 保护逻辑与继电器时序安全策略的最后一公里BMS软件里最不能出错的就是保护逻辑半导体行业有一个词叫“safe state”储能系统也一样每个故障状态都必须映射到唯一确定的保护动作不允许有歧义。保护分级是一个系统工程。一级故障比如温度超过65℃对应立即断开高压继电器二级故障比如单体电压低于2.5V但未到立即断开的级别对应降功率运行或限功率充电三级故障比如CAN通信短暂丢失对应告警提示允许系统继续短时运行。每一级故障都要有明确的复位条件不能故障消失了就自动恢复除非现场人员确认。继电器控制时序是BCU软件里最细节的部分。除了前面提到的预充电流程还有几个容易出问题的点一是继电器闭合瞬间要检测触点状态是否正常通过辅助触点反馈或驱动回路电流判断如果出现粘连而不自知下次闭合时就会出大事二是故障跳闸时要先断负载侧继电器再断电池侧继电器保证电弧集中在可以承受的开关器件上三是继电器的控制指令要有超时监控如果命令闭合但规定时间内没有收到反馈要按照故障处理。4. 常见问题排查与现场避坑实录4.1 现场问题速查表这里我把这几年在储能项目现场遇到过的典型问题整理成一个速查表每个做BMS相关工作的工程师都可以收藏起来当参考故障现象可能原因排查思路与解决方式电压采样值周期性跳变菊花链通信受干扰或接触不良检查AFE菊花链线束是否为双绞屏蔽线屏蔽层是否单端接地排查接插件针脚氧化温度采样值偏差明显NTC与被测电芯热耦合不良检查NTC是否涂导热硅脂安装是否紧密贴合电芯表面绝缘检测经常误报Y电容影响、直流母线纹波过大软件对绝缘电阻值增加滤波处理检查直流侧滤波电容参数是否合理预充失败、主继电器无法闭合预充电阻烧断、母线电容老化或预充回路接触不良测量预充电阻阻值用示波器抓预充电压上升曲线CAN通信偶发断线终端电阻缺失或总线接地不当检查CAN总线两端是否各有一个120Ω终端电阻屏蔽层是否单端接地均衡时板温明显升高均衡电阻散热不足检查PCB散热铜皮面积或增大均衡电阻功率等级SOC长时间漂移库仑计未校准或OCV修正失效定期进行满充校准检查OCV-SOC曲线表是否与电芯实际特性匹配4.2 真实踩坑案例高压线束干扰CAN通信之前有个项目系统刚交付时一切正常运行两周后开始出现BCU和PCS通信频繁断连随机发生有时一天几次有时几小时一次。现场工程师一度怀疑是BCU的CAN收发器质量问题换了芯片依旧复现。后来我们用示波器挂在CAN总线上抓波形发现通信断开前总是有比较大的共模噪声干扰而且和系统里空调压缩机的启停时间对得上。排查下来是CAN通信线走线时和高压动力线束捆扎到了一起布线规范上明确要求通信线和高压线束至少保持150mm间距交叉处要垂直走线。整改之后重新布线问题彻底消失。这个案例要说的是储能系统的EMC问题往往不是单纯靠换芯片能解决的布线和结构上的基础功夫得做好。尤其是大电流回路和通信回路之间的耦合干扰很多时候只能靠拉距离、加屏蔽、换线材这些“土办法”来根治。4.3 另一个高频坑簇间环流导致系统异常多簇并联的项目里簇间环流是个很隐蔽的问题。不同簇的SOC不一致、内阻有差异并联之后在充放电切换瞬间会形成环流严重时甚至触发过流保护或继电器损伤。有一次客户反映系统在从充电状态切换到放电状态时会偶发出现某一簇的电流传感器数值先反向跳变再恢复后来定位到是簇间环流叠加在传感器采样上的结果。解决方案有两层硬件层面把电流传感器的安装位置尽量靠近电池簇的正极出口减少线路压降的影响软件层面在判向逻辑中增加了电流符号变化的消抖时间防止瞬间的环流毛刺导致误判。簇间SOC不一致的根因最好在BAU协调策略层面解决——放电时优先放高SOC簇充电时优先充低SOC簇让各簇SOC在运行中逐渐趋向一致。单纯靠底层限流手段是治标不治本的。4.4 出厂前必须做好的三件事从项目管理的角度有几个习惯是吃过亏之后才养成的写在这里供大家参考。第一件出厂前做完整的继电器动作时序测试把预充失败、继电器粘连、触点反弹这些异常场景全部模拟一遍不要只测“正常流程”。这类测试能抓住的问题真到现场出了问题就不是一天两天能解决的。第二件通信链路的抗干扰测试要在满负荷工况下做空调全开、PCS满功率运行这时候最容易暴露CAN和菊花链的EMC问题。第三件对电芯数据保存一定要有冗余——BAU、BCU两级都要存一方面是为了故障回捞时数据不缺失另一方面也符合很多客户对数据安全的要求。最后再分享一个小技巧。调试BCU的SOC估算算法时别只看充放电完整循环的表现还要关注长时间静置后的SOC回滞。我习惯在项目验收前专门做一次48小时静置测试用静置前后的OCV差值验证SOC修正逻辑是否正常。这一步看着不起眼却能提前发现不少OCV-SOC曲线标定上的毛病。干这行越久越觉得储能的坑大多不在“高深的算法”而在这些看起来不起眼的细节里把细节做扎实了系统才能稳稳地跑起来。
返回列表