储能双向DC/DC并联均流:下垂控制与虚拟电阻设计实战解析 在储能系统里蓄电池组要并入直流母线带负载中间那级双向DC/DC变换器基本是标配而当多台这种“电池变换器”单元并联的时候怎么让它们按各自的容量比例分担输出电流就成了一个绕不开的问题。下垂控制就是这个问题的经典答案其实现手段核心是在控制环里引入一个虚拟电阻。这篇文章用我自己的项目经历为主线把从并联均流的底层逻辑、双向变换器的角色、虚拟电阻的参数设计到样机调试中踩过的坑完整梳理一遍适合正在做直流微电网、储能PCS或者多机并联电源系统的朋友参考。1. 并联均流到底在解决什么为什么不能各自“设定电压”完事1.1 电压是全局量电流是局部量先想象两台双向DC/DC变换器都给定400V输出并联到同一条母线上。理论上两者输出电压都是400V母线也应该是400V。但现实是开关管的导通压降、电感电阻、采样调理电路的零漂、控制器ADC的量化误差都会让两台机器真实的输出端电压相差那么零点几伏。假设1号机实际输出399.8V2号机实际输出400.2V它俩之间的压差就是0.4V。线路阻抗如果只有几十毫欧这个0.4V压差会驱动出十几安培的环流——1号机变成“被充电”状态2号机在向1号机灌电流这既浪费能量又可能触发保护。这引出一个关键认知在并联系统里电压是一个全局量——母线上任何一点的电压对所有并联单元都是同一个而电流是局部量——每个单元对外输出的电流由自身特性决定。两个电压源并联如果没有任何“人为制造的阻抗”电流分配完全取决于寄生参数毫无可控性。生活里有个特别贴切的类比两个水龙头同时往一个水箱供水如果水压本来就有差异又没在水路上装任何阀门那水就会从压力高的那边流到压力低的那边。我们必须给每个水龙头装上“适配的阀门”来平衡压力差。在电路里这个“阀门”就是我们要引入的虚拟电阻。1.2 通信均流的局限与下垂自治的思路解决均流问题最直接的想法是引入通信让所有单元交换电流信息比如主从控制、平均电流法。这类方法在小系统、单点控制时效果很好能实现很高的均流精度。但在储能系统实际应用中我遇到过几个现实问题一是通信环节本身就增加了故障点如果主机掉线或者CAN总线被干扰整个系统的均流逻辑会瞬间失效二是通信延迟上限决定了均流动态带宽负载突变时容易先不均流、后修正三是扩容或更换单元时总要重新配置主从关系对一个希望“即插即用”的储能系统来说不够友好。下垂控制走的是另一条路不靠通信靠本地信息自治。每个单元只测量自己的输出电压和输出电流然后让输出电压参考值随输出电流的增大而线性下降。这样负载增大时所有单元共享同一个母线电压谁的“下降斜率”小谁就多承担电流谁的下降斜率大谁就少承担。没有任何单元需要知道别人在干什么但整体上自然形成稳态的比例分配。这个特性在工程上极其宝贵尤其当储能系统可能出现通信中断、单元频繁投退时。1.3 用方程看下垂输出特性曲线被刻意“做软”下垂控制对应的方程很简单[ U_o U_{ref} - R_d \times I_o ]其中R_d就是虚拟电阻也叫下垂系数。它的含义是把变换器从“理想电压源”改造成“带内阻的电压源”。多个这样的电源并联时公共母线电压U_bus满足[ U_{ref1} - R_{d1} \times I_1 U_{ref2} - R_{d2} \times I_2 U_{bus} ]如果所有单元的U_ref一致那么R_d1×I_1 R_d2×I_2输出电流与虚拟电阻成反比。这就回答了标题里那句“输出电流按虚拟电阻比例分配”——虚拟电阻小的单元承担更多电流虚拟电阻大的单元承担少一些。下一节我会讲双向DC/DC变换器在这个架构中的具体位置和实现方式。2. 双向DC/DC变换器的角色蓄电池接入母线前不能省的一级2.1 蓄电池为什么不能直接并联母线储能系统的蓄电池组端电压范围其实很宽。以磷酸铁锂为例单体电压大约在2.5V到3.65V之间一串几十节下来整组电压会随着SOC从额定值的约80%变化到110%左右。如果直接把电池组接到直流母线上母线电压会被电池组“钳住”完全不受我们控制更麻烦的是充电电流和放电电流都取决于系统状态和电池内阻根本没有主动限制的手段。一旦母线侧有其他单元在抬电压电池就可能被强行充电过流、过充的风险很大反过来电池亏电时又可能向母线灌入过大电流。所以蓄电池必须要通过双向DC/DC变换器把“被动电压源”变成“可控功率接口”。2.2 双向Buck-Boost拓扑与充放电切换逻辑在低压电池接入中压母线的场景里最常见的是非隔离双向Buck-Boost结构就是一组半桥加一个电感上管S1接母线正端下管S2接母线负端中间节点通过电感L接电池正极。放电时做BoostS1始终关断S2以占空比D高频开关。S2导通时电池正极—电感—S2构成回路电感储能S2关断时电感电流经S1的并联二极管或同步导通S1流向母线由电池和电感共同向负载供电。输出电压关系是[ V_{bus} \frac{V_{bat}}{1-D} ]所以只有V_bat比V_bus低的条件下才需要升压。充电时做BuckS2始终关断S1以占空比D工作。S1导通时母线通过S1和L给电池充电电感储能S1关断时电感电流经S2的并联二极管续流继续给电池供电。输出电压关系是[ V_{bat} D \times V_{bus} ]这种拓扑控制简单、器件少、功率密度高在储能PCS、直流微电网里非常主流。但它也有局限没有隔离输入输出共地问题需要注意电池电压和母线电压的比值不能太悬殊否则占空比会跑出合理区间。2.3 双向运行时的电流参考和控制保护模式切换的关键不是看电压高低而是看电流方向。如果以流出变换器为正方向放电时电流为正、充电时为负。两条回路的区别只在哪个管PWM、哪个管常闭。控制上建议用一套统一的电流环把电流参考值设置为“带符号”由模式选择逻辑决定电压/电流方向。实际工程里为防止模式频繁切换要加滞环同时要保证两个开关管的驱动信号之间有死区否则半桥直通会直接炸管。这个双环结构对下垂控制的实现非常关键电流内环的参考值来自电压外环的输出而下垂控制实际是在电压外环的参考端做修正[ U_{droop} U_{ref} - R_d \times I_{out} ]也就是说虚拟电阻并不物理存在而是直接把一个与输出电流成正比的电压量减在了控制参考上。这个量让变换器对外呈现“带内阻电源”的静特性而实际损耗只发生在程序计算里。3. 虚拟电阻的本质与参数设计一份能直接套用的算例3.1 为什么叫虚拟电阻不发热的“内阻”虚拟电阻的“虚拟”是指它在控制算法中模拟了真实电阻的效果但不像真实电阻那样发热、消耗能量。用戴维南等效电路来看带下垂控制的变换器可以等效成一个理想电压源U_ref串联一个电阻R_d输出端就是母线。当负载电流流过这个“电阻”就产生压降母线电压自然略低于空载值。因此我们在设计下垂参数时完全可以把它当成一个真实电阻来算确定允许的电压偏差、额定电流然后[ R_d \frac{\Delta U_{max}}{I_{rated}} ]3.2 算例两台10kW和20kW的储能单元并联设定系统直流母线额定电压400V允许最大电压偏差为20V5%。单元A容量10kW单元B容量20kW。基于额定功率和母线电压估算额定输出电流单元A: I_A 10000 / 400 25A单元B: I_B 20000 / 400 50A让两台单元在满载30kW时刚好允许跌到380V则单元A下垂系数: R_dA 20V / 25A 0.8Ω单元B下垂系数: R_dB 20V / 50A 0.4Ω可以看到20kW单元的下垂系数刚好是10kW单元的一半。一般规律是下垂系数与额定容量或额定电流成反比。这样设计之后无论负载是多少两台单元的输出电流之比恒为1:2。以10kW总负载为例I_A I_B 25A且 I_A/I_B R_dB/R_dA 0.4/0.8 1/2解得I_A≈8.3AI_B≈16.7A。此时母线电压U_bus 400 − 0.8×8.3 ≈ 393.3V。负载升高到30kW满载时I_A25A、I_B50A母线电压380V。我把三种负载工况的具体数据整理成表格负载功率总负载电流单元A电流单元B电流母线电压10kW25A8.3A16.7A393.3V20kW50A16.7A33.3A386.7V30kW75A25A50A380.0V这里实际负载电流是母线电压落在负载电阻上自然形成的工程估算用额定电压做基础划分误差在5%以内设计阶段完全够用。3.3 标幺化下垂率不同容量单元如何统一配置工程上还有一个常用参数叫“标幺化下垂率”定义为[ r_{pu} \frac{\Delta U / U_{nom}}{I_o / I_{nom}} \frac{R_d \times I_{nom}}{U_{nom}} ]上面的算例中r_pu 20V/400V 5%。也就是说两台不同容量的单元只要都配置5%的标幺下垂率它们的实际下垂系数就会自动按电流额定值成反比分配输出电流。很多商用储能控制器和发电机组控制器支持直接以百分数设置下垂率非常方便。这里我建议一个小技巧如果系统中有多台不同容量的单元先把目标均流比例换算成“空载电压一致下垂率一致”的组合而不要试图用不同的空载电压U_ref来凑比例。因为U_ref不一致会在空载和轻载时直接产生环流而下垂率一致则不会。3.4 采样误差与线路阻抗精度被吃掉的两个环节下垂控制是基于本地电压和电流的测量值来工作的所以测量误差会直接影响均流精度。以0.1%精度的电压传感器为例400V满量程误差是0.4V。当两台单元各自有±0.4V的采样偏差时相当于在并联回路里多出了一个0.8V的等效电压源差而均流要靠下垂电阻去“吸收”这个电压差。若R_d均为0.8Ω环流只有0.8/1.60.5A影响不大但如果为了母线电压质量把下垂系数压到0.1Ω环流就会上升到4A对额定25A的单元来说已经是8%的不均流。线路阻抗也需要考虑。从变换器端子到公共母线之间总有电缆或铜排这段电阻和虚拟电阻是串联关系。如果两条支路的线路阻抗严重不一致即便R_d设置得很标准公共母线上的均流依然会被线路阻抗“扭曲”。所以在设计阶段我一般会要求各支路尽量等长度、等截面布线虚拟电阻至少要取线路电阻的5~10倍必要时做线路阻抗补偿把输出电压检测点从变换器端子“前移”到母线公共点。我做了一个简洁的表格方便排查不均流时对照影响均流的因素影响机理处理建议电压采样误差直接造成空载/轻载环流用高精度电压传感器上电前校准零偏电流采样误差下垂计算输入不准校准电流传感器零点和增益线路阻抗不一致公共母线电压被支路阻抗扭曲等长等截面布线R_d取线路阻抗的5~10倍PWM死区/器件压降引入低频非线性使用同步整流配合最小占空比限制4. 从仿真到样机实测中的坑与调试经验4.1 空载环流仿真里看不见样机上躲不掉我调试第一套双机并联样机时仿真里一切完美空载电流为0负载一上来就按比例分配。但真机一上电就露馅了——两台机器都在待机状态可是直流母线上有环流一台显示输出3A另一台显示输出-3A相当于有一台在给另一台充电。排查过程我整理成三步断开负载让两台机器分别空载运行用高精度万用表直接测变换器输出端电压比较两台实测值是否一致。面板显示值只能作为参考因为这正是ADC采样的误差来源。如果发现两台空载电压不一致先做电压采样校准。把补偿系数写进软件让两台机器在空载状态下输出相同的电压读数。加一个轻载判别死区当输出电流绝对值小于额定值的1%时下垂控制的参考值不做修正。这样可避免采样噪声导致的微环流。很多做并联电源的老工程师都会告诉你空载环流是“摸”出来的不是算出来的。两台的电压差哪怕只有0.1V只要有导通回路就会有电流。4.2 负载突变母线电压的动态跌落和恢复下垂控制让输出电压跟随输出电流下降这本身是稳态行为但负载突变时电压环和电流环的动态响应会叠加在虚拟电阻上。我实测过一个现象加入虚拟电阻前突加50%负载时母线电压跌落大约8V恢复时间约20ms加入0.8Ω虚拟电阻后同样工况下跌落达到15V恢复时间也拉长到40ms。原因是虚拟电阻把变换器的等效输出阻抗从接近0提升到0.8Ω这直接改变了电源的闭环输出阻抗特性。如果负载电流变化很快虚拟电阻产生的压降也会快速变化对电压环来说是一个额外的扰动。改进思路有几条适当提高电压环带宽同时保证内环带宽是外环的5~10倍在电压环中加入负载电流前馈提前预判虚拟电阻上的压降把虚拟电阻用一阶惯性滤一下让它只影响稳态而不至于在暂态阶段引入过高谐波。这种“带惯性的下垂”在动态和稳态之间取折中更进一步可以把虚拟电阻扩展成虚拟阻抗组合比如R_d并联一个小电感利用电感对高频分量的高阻抗来抑制电流冲击。但这个方向要做好谐振阻尼不然更容易振荡。我自己的调试顺序是先不加下垂单独把电压环、电流环调稳再在轻载下加入下垂验证稳态精度最后做负载突变扫频微调下垂的惯性时间常数直到母线电压波形既不过冲也不出现振荡。4.3 SOC不一致时的自适应下垂思路储能系统的电池组SOC很难完全一致。如果两台机组容量一样但一台SOC是80%另一台是30%按固定下垂系数并联时两台都会按容量比例放电——意味着低SOC单元会被成比例地“拖累”到过放保护这不是我们希望看到的。常用的改进是SOC自适应下垂让下垂系数或空载参考电压跟随SOC变化。例如高SOC单元在放电时保持较小的下垂系数多出力低SOC单元把下垂系数调大少出力。充电模式则反过来SOC高的单元少充SOC低的单元多充。实现方式可以很简单[ R_{di} R_{d0} \times \left(\frac{SOC_{max}}{SOC_i}\right)^n ]其中n控制调节强度一般取1~3。当SOC_i降低时R_di变大该单元自动减少放电电流。要注意的是自适应下垂改变了均流精度母线电压偏差会动态波动所以要把SOC对下垂系数的调整范围限制住例如±50%以内否则系统可能在SOC差异很大的时候出现母线电压越限。从我个人的工程经验看SOC自适应一次控制比较适合纯离网、没有上层EMS的小系统如果系统已经有二次控制和通信调度我更倾向于让一次下垂控制保持固定参数SOC均衡由二次控制来处理因为二次控制的补偿精度更高也不会在动态过程中把母线电压搞乱。4.4 通信中断测试下垂控制为什么值得保留储能系统通常有通信网络上层会做功率分配、电压恢复、SOC均衡。但我在做项目验收时一定会做一项测试切断上层通信看系统靠本地控制能否继续稳定支撑母线电压。测试结果通常是母线电压会因为失去二次电压恢复而下掉一点比如从400V落到393V左右但系统不会失稳三台机组会按照各自的下垂系数分担负载均流精度依然保持在设计范围内。这正是下垂控制作为一次控制的价值——它不依赖任何通信把“保底运行”的能力给了系统。即使通信全部中断储能系统也能维持母线电压在允许范围内而不是直接停机。所以在设计储能系统控制架构时我会明确地把控制分成三层一次下垂控制负责电压支撑和基础均流二次控制负责电压无差恢复三次/上层调度负责能量管理和SOC优化。两层之间不要互相替代而是各司其职。我自己的经验是下垂控制虚拟电阻这套方案最大的优点是“简单、可靠、可复现”——只要方程写对了、电阻选对了剩下的就是逐步压实采样精度和动态整定。调试时记得按这个顺序来先单机调稳再加下垂再加负载测试最后做通信中断和SOC差异测试。每一步都确认波形和数据没问题了再往下走能省掉很多“看起来玄学”的问题。最后再分享一个细节把下垂控制投入之前先在空载下用高精度电压表记录两台变换器的输出端电压如果差值超过下垂系数×额定电流的1%那我建议先不要急着调参数优先把采样校准做好。很多所谓的“不均流”问题根源其实在采样环节而不是下垂算法本身。