并联逆变器这个事说起来挺有意思。你去看现场会发现两台参数几乎一样的逆变器搁那儿并联跑输出电流愣是不一样一台烫得能煎鸡蛋另一台还在那儿优哉游哉。电流表一卡好家伙环流比负载电流还大。这个问题要是靠硬件去堆加电抗器、加粗电缆治标不治本成本还高。所以大家才把目光转向控制算法——下垂控制就是其中之一而虚拟阻抗加电压负反馈是让下垂控制真正能落地的关键一环。我这篇东西主要是把这套控制思路掰开揉碎了讲清楚环流是怎么产生的、下垂控制为什么能均流、虚拟阻抗到底在干嘛、电压负反馈又补了什么坑。适合刚接触微电网、储能逆变器并联或者UPS冗余供电的工程师也适合研究生做仿真前先建立整体概念。内容以原理为主最后会带上实际的调试经验和参数整定建议属于可以直接往自己的仿真模型里搬的那种。1. 并联逆变器环流问题的本质一台机器为什么不好带1.1 环流是怎么冒出来的先看最基本的并联模型。两台逆变器输出端接在一起共同带一个负载。如果两台逆变器的输出电压完全一致——幅值一样、相位一样、波形也一致——那它们之间不会有电流流动负载电流自然按各自容量比例分配。但现实中不可能完全一致只要幅值差一点或者相位差一点就会在逆变器之间形成一个回路电流这就是环流。用简单的电路关系理解两台逆变器等效为两个电压源各自带着输出阻抗包括逆变器自身的等效输出阻抗、滤波电感、线路阻抗。电压源之间有电压差阻抗之间有回路压差除以阻抗和就是环流。公式上写就是 I_cir (V1 - V2) / (Z1 Z2)。这个式子简单到不像话但所有的并联均流问题归根结底都是在处理它。环流分两种有功环流和无功环流。相位差引起的环流主要是有功性质的它会导致两台逆变器之间来回传输有功功率表现为一台吸收有功、一台发出有功幅值差引起的环流主要是无功性质的表现为无功功率分配不均。这俩一个烧IGBT一个烧电容都不好受。1.2 线路阻抗为什么是“看不见的搅局者”理想情况下你认为两台逆变器输出阻抗一样但实际上输出阻抗里有很大一部分来自线路——电缆长短不一样、铜排截面积不一样、端子接触电阻不一样都会让 Z1 和 Z2 出现差异。更麻烦的是阻感比。在低压配电网里400V以下线路的寄生电阻不可忽略甚至电阻分量比电感分量还大。这种情况下传统的感性下垂控制Q-V下垂就会受到严重的耦合干扰——逆变器输出有功功率时在电阻上产生的压降会直接影响输出电压幅值导致无功均分被破坏。这也就是为什么光有硬件对称还不够你做不到绝对对称即便做了对称负载变化带来的非线性也会打破它。所以必须从控制上找办法把“不可控的线路阻抗”变成“可控的东西”。2. 下垂控制的内在与外在局限均流和稳压天然冲突2.1 下垂控制的原理用“电压掉落”换“自动均流”下垂控制的思路来源于同步发电机的调速器原理。发电机并联时谁出力多转速就下降一点频率自然下垂最后达到平衡。逆变器把它数字化有功功率大的那一台频率稍微降一点无功功率大的那一台电压幅值稍微降一点。公式表达就是f f0 - m × PV V0 - n × Q这里 m 是频率下垂系数n 是电压下垂系数。两台逆变器带同一个负载时如果负载功率分配不均比如1号机出200kW、2号机出100kW那么1号机的频率会低于2号机频率差会导致两者的相位持续拉开最终迫使1号机减少出力、2号机增加出力直到频率一致、功率分配趋于均衡。这个机制的好处是不需要逆变器之间拉通信线纯靠本地电气量就能实现自动均流。这在微电网和UPS并联里非常实用尤其是那些要求高可靠性、不希望有单点故障的场合。2.2 下垂系数的“两难”调得越狠电压越差下垂系数 m 和 n 的选择本身就是一个矛盾。系数越大均流效果越好——因为微小的功率失衡就会产生较大的频率/电压偏差从而快速纠正功率分配。但系数大了带来的副作用也很明显频率偏差变大、电压跌落加深。以电压下垂为例满载时无功功率为 Q_max下垂系数 n 若取得过大输出电压可能跌到额定值的90%以下负载端的用电设备受不了。量化看一下。假设额定电压220V相电压峰值311V、额定无功10kvar取 n 5V/kvar满载时电压就掉了50V这显然不行。但取 n 0.5V/kvar满载只掉5V可当两台逆变器的线路阻抗差异导致测量到的 Q 有明显偏差时这个下垂量不足以补偿阻抗差异均流精度又不行。这个矛盾是下垂控制的“先天病”它靠电压偏差换取均流精度但你既想要小电压偏差又想要高均流精度单靠一条下垂曲线是办不到的。2.3 传统下垂控制在实际并联中的三个具体痛点第一个痛点线路阻抗差异导致的容量分配偏离。两台100kW的逆变器并联理想情况是一台出50kW。但1号机线路阻抗大、2号机线路阻抗小同样的输出电压在1号机线路上压降大负载端实际电压低用户负载就会更多地从2号机取电。结果2号机超载1号机轻载。第二个痛点阻性线路引起的功-频与功-压交叉耦合。低压线路电阻大的时候有功功率的变化主要影响电压幅值而不是频率P-f下垂变成了P-V下垂Q-V下垂变成了Q-f下垂。如果你还用传统的P-f/Q-V算法会发现无论怎么调参数功率就是均不了甚至会出现振荡。第三个痛点空载环流。两台逆变器并联但负载断开时理论上应该一台都不出力。但只要有微小的电压幅值差就会有无功环流有微小的相位差就有有功环流。空载时这些环流没有负载电流“压制”占比非常明显IGBT发热、电容发热都跟它有关系。要解决这些问题就必须引入一个“东西”来改变逆变器从输出端看进去的等效阻抗——这个“东西”就是虚拟阻抗。3. 虚拟阻抗把固有阻抗“改写”成我们想要的数值3.1 从物理阻抗到算法阻抗思路转变是关键虚拟阻抗的字面意思很直白它不是实际存在的电阻或电感而是在控制算法里“模拟”出一个阻抗来。它的实现方法很直接采样逆变器输出电流 io经过一个模拟阻抗 Zo(s)得到电压降 io × Zo(s)然后用这个压降去修正输出电压指令。数学上表达就是V_ref_修正 V_ref_original - Zo(s) × io这样做的直接效果是从逆变器的输出端口看进去逆变器的等效输出阻抗变成了“原电路固有阻抗 Zo(s)”。因为你从输出电压指令里减去了一块随电流变化的量相当于人为制造了一个电压降这就是在“充当”一个阻抗。这个思路最大的好处在于你可以把线路阻抗的影响“覆盖”掉。以前Zline是1mΩ还是10mΩ你决定不了现在你在控制里加一个虚拟阻抗比如50mΩ那么整体输出阻抗就变成了Zline 50mΩ线路那点差异就被稀释了。谁线路长、谁线路短从控制上看差别就不大了。3.2 数字实现别直接用纯微分理论推导的时候虚拟阻抗最理想的形式是纯电感即 Zo(s) sL。但在数字控制器里纯微分是非常不好处理的——你如果在C语言里写一个 sL本质上就是对电流信号做微分而电流采样里稍微有点噪声微分之后就是巨大尖峰直接给谐振控制器或者PWM调制器送去振荡是分分钟的事。工程上常用的做法有两种。一种是加一阶惯性滤波器近似Zo(s) ≈ (sL) / (1 sT)T 取电流滤波时间常数附近的值这样高频段微分增益被抑制不影响基波附近的虚拟电感效果。另一种是直接做高通滤波器的形式对低频电流不敏感、对高频电流产生阻抗作用。这个写法在消除环流和谐波方面更有效但电压跌落更明显。我调试下来比较稳的思路是先用惯性滤波形式把截止频率取在基波频率的5~10倍比如300~500Hz保证基波电流能产生完整的虚拟压降谐波电流的微分噪声被滤掉大半。3.3 dq坐标系下的实现Ld和Lq分开设计在同步旋转坐标系下三相电流变成直流量的 id 和 iq虚拟电感的压降就变成Vd_补偿 -ωL × iq耦合项 Vq_补偿 ωL × id耦合项为什么会有交叉项因为电感在dq坐标下的电压方程本来就有耦合ωL 是耦合阻抗。这就意味着要想实现虚拟电感你必须把 d 轴电压指令减去 ωL_iq同时把 q 轴电压指令加上 ωL_id。这里有个工程坑如果你只加虚拟电阻即Zo(s) R那实现就非常简单Vd_补偿 R×idVq_补偿 R×iq没有耦合项。所以很多低成本的并联方案用的是虚拟电阻而不是虚拟电感。但虚拟电阻与虚拟电感对环流的影响有本质区别虚拟电阻对有功环流和无功环流都有阻尼作用而虚拟电感主要压制无功环流、同时为下垂控制提供感性的输出阻抗特性。我个人的做法是基波环流用虚拟电感压谐波环流用虚拟电阻压两者加在一起也就是 Zo(s) R sL 带滤波。3.4 虚拟阻抗取值怎么定一个计算实例拿一个实际项目做例子两台50kW逆变器并联额定线电压400V相电压230V额定电流约72A线路阻抗大约0.05Ω 0.2mH。下垂系数取 n 2V/kvar满载10kvar时掉20V约8.7%的电压跌落勉强可接受。现在要知道虚拟阻抗取多少才能“盖住”线路阻抗差异假设线路阻抗有±50%的偏差即0.025Ω的差异那么虚拟阻抗至少应该取到差异的5倍以上才能把差异稀释到5%以内。取虚拟电感 Lv 1mH在50Hz下对应的感抗是 2π×50×0.001 ≈ 0.314Ω远大于0.025Ω的差异。整体输出阻抗从0.05Ω 0.2mH变成0.05Ω (0.2mH1mH)阻抗的差异占比迅速下降均流精度大幅度提高。但注意虚拟电感压降也会产生电压跌落72A × 0.314Ω ≈ 22.6V这可比下垂带来的跌落还大。所以虚拟阻抗不是越大越好必须和下垂系数综合起来看。整个系统的空载电压是V0满载时总跌落 下垂跌落 虚拟阻抗压降这个总跌落一定要在负载允许范围之内。这就是为什么需要电压负反馈——因为虚拟阻抗和下垂都在主动制造压降如果不加一个闭环去修正电压指令负载端的电压质量是没法保证的。4. 电压负反馈的设计虚拟阻抗控制之外的稳压闭环4.1 为什么加了虚拟阻抗还不够虚拟阻抗解决了“均流”问题但它带来的是“电压质量”问题。你人为叠加了 io × Zo(s) 的压降负载电流越大输出电压越低。如果负载是一台冲击性设备电流突然拉到额定值输出电压瞬间掉一截这在工程上是不能接受的。有人可能会想那我减小虚拟阻抗不就行了不行前面说了虚拟阻抗小了线路阻抗差异导致的环流就压不住。所以虚拟阻抗和电压质量之间靠开环补偿是解不开这个结的必须引入闭环——电压负反馈。电压负反馈的作用很直接把输出电压采样回来和参考电压比较误差经过调节器通常是PI或准PR输出作为调制波的一部分去调节逆变器的PWM占空比。只要输出电压低于参考值控制器就加大占空比把电压抬回来高于参考值就减小占空比。4.2 完整的控制环路电压外环加电流内环实际逆变器控制系统里电压负反馈极少单独使用通常采用双环结构电压外环、电流内环。电压环负责稳定输出电压、跟踪参考指令电流环负责加快动态响应、限制过流、同时抑制电容电流振荡。控制信号流是这样走的输出电压V_负载采样 → 与V_ref相减 → 经过电压调节器 → 得到电流参考I_ref → 与电感电流采样相减 → 经过电流调节器 → 得到调制波 → PWM → 逆变桥 → LC滤波器 → 输出。为什么需要电流内环因为逆变器本质是一个电压源型的开关电路LC滤波器本身是二阶系统有谐振峰。电压环单独控制动态响应慢、易振荡而且对非线性负荷整流性负载的抑制能力差。加上电流内环后系统对电感电流的响应快阻尼增强LC谐振峰的幅值被压下来稳定性大幅提升。4.3 电压调节器用PI还是准PR在同步旋转坐标系下PI调节器可以做到对基波直流分量的无静差跟踪。但在三相系统中d轴和q轴都需要一个PI而且两个轴之间有耦合通常需要做解耦控制。解耦网络本质上就是把交叉项 -ωL×iq 和 ωL×id 补偿回来。准PR调节器比例谐振调节器在静止坐标系下使用它可以在基波频率处提供足够高的增益对基波正弦指令实现近似无静差跟踪。公式形式是G_PR(s) Kp Kr × (s) / (s² ω0²)实际工程中用带带宽的准PRG(s) Kp 2Krωc s / (s² 2ωc s ω0²)ωc取5~10rad/s。准PR的好处是坐标系变换简单、实现直观而且对频率偏移比如下垂控制导致的频率变化有一定的容忍度。我在并联系统里更倾向于用准PR因为当两台逆变器频率不一致时下垂控制过程中dq坐标系解耦会变得不准确而静止坐标系下的PR调节器不需要依赖锁相环做旋转坐标变换鲁棒性更好。4.4 电压反馈采样点放在哪里反馈位置决定控制特性采样点不同控制系统看到的“输出电压”完全不一样。常见的三种采样位置逆变器桥臂出口、LC滤波器电容端、负载端。桥臂出口采样的问题桥臂电压是高频PWM方波必须经过滤波才能采样滤波相移会直接影响控制相位裕度。电容端采样是最常规的做法因为LC滤波器的电容电压就代表了输出正弦电压的主要分量且这个点离PWM开关噪干扰较远采样可靠。负载端采样需要采样线拉长在高频电磁环境下容易受干扰但在补偿线路压降方面更有优势。从控制效果看反馈点选得越靠近负载电压精度越高但采样噪声越大、稳定性越差选得越靠近桥臂稳定性越好但负载端电压误差可能达到线路压降的几伏。具体选哪里取决于系统对电压精度和抗扰能力的要求。就并联均流这个场景来说我推荐电容端采样作为主反馈另加线路压降补偿项作为前馈修正。5. 完整的并联控制系统从理论框图到能上机的代码5.1 整体控制框架功率计算-下垂-虚拟阻抗-电压环-电流环把以上所有模块串起来完整的单台逆变器控制逻辑是这样的第一步采样三相输出电压和输出电流通过功率计算得到有功P和无功Q。功率计算有瞬时功率法和滤波法工程上常用二阶低通滤波或移动平均窗来平滑功率波动。第二步P和Q进入下垂控制器输出频率指令ω和电压幅值指令E0。频率指令通过积分得到相位θ电压幅值指令经过虚拟阻抗修正环节减去 Zo×io 的压降得到电压环的参考值V_ref。第三步V_ref进入电压环和电容电压反馈比较误差经准PR调节器后得到电感电流参考值I_ref。I_ref与电感电流反馈比较误差经电流调节器工程上用P或者PI得到调制波。第四步调制波经PWM模块输出开关信号到逆变桥。这里面有一个很容易犯的错虚拟阻抗压降的计算要用“输出电流”即流向负载和线路的电流而不是电感电流。有的人直接用电感电流采样来做虚拟阻抗结果就等于额外增加了一个滤波电感压降补偿效果完全不对输出电压畸变更严重。并联场景下输出电流采样通常加在LC滤波器电容后面、并网点之前。5.2 参数整定的顺序从内到外、先电流后电压参数整定是这套系统最容易让人崩溃的环节。我的建议是严格按下面的顺序来先设计电流内环。电流环带宽要求比电压环快5~10倍通常取开关频率的1/10~1/5。比如开关频率10kHz电流环带宽取1~2kHz。电流调节器的Kp不能太大否则PWM调制饱和会引入振荡。再设计电压外环。电压环带宽取电流环的1/5~1/10即200~400Hz。准PR的Kp、Kr先按理论公式算一版再在仿真里微调。接着加虚拟阻抗。先只加虚拟电阻手动调到一个环流开始被抑制的数值然后在此基础上加虚拟电感。注意观察输出电压跌落情况如果跌落太多说明虚拟阻抗偏大或者下垂系数偏小需要折中调整。最后调下垂系数。调下垂系数时要两只机器一起看波形观察P和Q的分配是否接近容量比例同时看输出电压是否在允许范围。这个环节最花时间因为要反复加载卸载。我实测过的经验是参数整定顺序如果反过来先调下垂再调虚拟阻抗你会在环流和电压波形之间来回折腾半天因为虚拟阻抗改变了等效输出阻抗绕回来又影响了下垂环路的“增益匹配”。所以一定从内环到外环推着走。5.3 仿真与实际之间的三处落差仿真里跑得完美的系统搬到实验台上经常翻车原因基本集中在下面三个地方。第一个是采样延时。DSP里所有采样、计算、PWM更新都有延迟通常是一个开关周期或者两个开关周期。这个延迟在仿真里往往被忽略但它实实在在地削减了控制环路的相位裕度。模型里相位裕度50°的环路实际做出来可能只剩下20°。解决办法是在仿真里显式地加入一阶惯性延时或者ZOH环节模拟真实采样。第二个是滤波器的相位偏移。电压反馈和电流反馈都要经过模拟滤波或数字滤波滤波器在基波附近的相移会导致补偿方向偏差。如果你的虚拟阻抗实现里用了高通或惯性滤波务必检查它的相频响应在50Hz处的相移是否在可接受范围内。第三个是PWM死区。死区时间在轻载的时候会引入明显的电压误差而且这个误差呈现非线性。它对虚拟阻抗的干扰是轻载时虚拟压降很小死区带来的非线性压降占比变大导致环流在某些工况下突然明显。这不是算法本身的问题但往往被锅扣到下垂控制头上。为了压制它可以用死区补偿算法或者干脆在实验数据解读时段避开轻载工况来分析。6. 实测中的几个经典工况与排查思路6.1 并联瞬间的冲击电流软启动和预同步两台逆变器并联的最关键时刻是刚合闸那一下。如果1号机和2号机的输出电压相位不一致合闸瞬间就是两台交流电源直接短路冲击电流可能达到额定电流的数倍直接触发过流保护。解决思路有两个一是预同步控制即并联之前通过锁相环把待并机的输出电压相位拉到与运行机一致幅值也调到一致然后再合闸并联。这个对通信系统来说比较容易实现对没有通信的系统纯下垂则依赖每台机器自己的软启动逻辑——先并联母线再逐步抬升电压指令。实际调试中我用的方案是主从机并机时从机先运行在电压开环模式幅值略低于母线电压等锁相环收敛后将控制模式切换到下垂模式同时把电压指令平滑抬升到与母线一致。这样能有效减少合闸冲击但要注意切换瞬间的控制量衔接避免出现控制量跳变。6.2 谐波环流虚拟电阻的隐藏价值负载是整流器或者变频器时输出电流含有大量5次、7次谐波。这些谐波在并联系统里会形成谐波环流——因为每台逆变器的滤波参数、线路阻抗不一样谐波电流分配就不均匀。谐波环流的存在会让IGBT结温升高同时污染电流波形。虚拟电阻对谐波环流的抑制作用很明显谐波电流经过虚拟电阻产生的压降会强制各台逆变器的谐波输出电压趋向一致从而迫使谐波电流按照阻抗比例分配。改用虚拟电阻之后5次谐波环流振幅通常能被压低30%~50%。所以建议在虚拟阻抗里保留一个电阻分量哪怕只是很小的一点点对谐波环境也有明显的改善作用。6.3 调制饱和引发的振荡电压环积分饱和要重视负载突然增加时电压环误差变大PI积分器会快速累积输出控制量达到上限PWM占空比饱和。这时候逆变器的实际输出电压不再跟随参考电压电压环失效系统表现为“掉电压后过冲振荡”。尤其在并联系统里饱和会引起电流内环参考值突变冲击更大。我的处理办法电压环调节器加限幅限幅值按电流内环允许的最大电流计算不能超过IGBT的安全工作区积分器加抗饱和功能当输出达到限幅时冻结积分防止过度积分下垂控制输出的电压幅值指令本身也要限幅不能让下垂系数把参考电压拉到太低的位置——这会在负载恢复瞬间引发反向冲击。6.4 线路阻抗不确定下的鲁棒性虚拟阻抗的自适应思路固定参数的虚拟阻抗对付固定的线路阻抗差异绰绰有余但实际工程中线路长度可能随着现场布局变化甚至温度变化导致电阻漂移。这种情况下固定虚拟阻抗可能会过补偿或者欠补偿。自适应方案的主流思路在线辨识线路阻抗或输出阻抗然后动态调整虚拟阻抗参数。辨识方法可以注入谐波、或者利用PWM方波的间谐波分量作激励继而用最小二乘法实时拟合阻抗值。虽然目前在工业产品中还不是标配但至少在重载、长距离并联场景下值得多花一点点算力去做。对大多数研究者和工程师来说固定参数的虚拟阻抗已经能解决80%的问题。7. 关于这套控制策略的实践心得我做过的经验总结如下虚拟阻抗加电压负反馈的下垂控制不是复杂到只有学术论文能用的东西它就是在你手边可落地的方案。核心是把“物理上不可控的线路参数差异”转成“算法里可设计的等效阻抗”。这个转变需要你对逆变器的输出阻抗有清晰的建模理解同时对数字控制器的实现细节保持警觉——纯微分不能用、采样延时不能忽略、饱和限幅不能不做。调试顺序方面强烈推荐从单台机的电压环和电流环调稳开始然后做虚拟阻抗再做并联下垂。三块分开调试的定位效率远高于整体瞎调。仿真阶段就加上采样延时和滤波器的模型实测翻车的概率会大幅降低。另外说一句很多人喜欢问“虚拟阻抗到底取多大合适”这个真没有万能答案。它取决于你的线路阻抗差异、负载特性、允许的电压跌落以及下垂系数的设置。拿仿真模型慢慢扫参数找到均流精度和电压质量的最佳平衡区间再留出20%的裕量是最稳妥的路线。