资讯动态

基于虚拟同步机的逆变器并联无功功率自适应均分控制

发布时间:2026/10/14 6:19:07 来源:尧图企业网站定制
做逆变器并联最头疼的事就是两台机器看着规格一模一样接入微网之后无功功率却像闹别扭一样你多我少甚至出现环流把保护都顶跳了。我最近捣腾两套电压源型逆变器跑虚拟同步机VSG控制碰到的核心问题就是无功功率不均分。传统下垂控制在这事儿上其实早就瘸了一条腿而换上有自适应调节的VSG之后问题明显被治好了。这篇文章就把我实际调试中的设计思路、参数计算和踩坑过程都倒出来给正在做并联系统、微网仿真或者储能变流器的朋友当个参考。这内容不是纯理论推导而是从为什么均分失败到怎么自适应修正再到仿真和台架实测怎么复现的完整脉络。尤其适合那些已经能让VSG单机转起来但一并联就发现功率分配乱套的开发者和研究生。我会先把机理讲透再给出一套可落地的闭环策略最后附上我在Matlab/Simulink里调参时实测出来的经验值供你直接抄作业。1. 项目概述与问题定位1.1 双逆变器并联的本质需求双逆变器并联的目的很直白把单台机组的容量上限顶穿做成模块化扩容同时提高系统冗余度。比如一台额定50kVA的变流器并联两台就能顶到100kVA而且其中一台掉电另一台还能撑着负载不脱网。但并联的前提是必须让两台逆变器像一个整体行动各自承担一半的功率不能出现一台出力八成、另一台只出力两成的病态局面。这里说的功率包括有功和无功。对于有功功率由于电网频率是全局信息各逆变器测量到的频率基本一致通过一次调频下垂很容易做到接近均匀分配。而无功功率则对应电压幅值这里麻烦就大了电压幅值在并联节点上并不完全一致线路阻抗的压降差异会直接造成无功分配误差。更坑的是如果采用反下垂控制线路阻抗还会形成正反馈让误差越拉越大。在这种背景下VSG的价值就体现出来了。VSG通过模拟同步发电机的转子运动方程和励磁调压特性让逆变器从控制特性上变成一台虚拟机组。它天然具备惯性和阻尼且其无功-电压环路的动态特性比传统下垂控制更平滑。然而VSG之间仍然存在线路阻抗差异、测量误差和控制器参数偏差这些都会引发无功输出的静态偏差。所以必须在VSG架构里加入自适应环节专门解决这个静态偏差。1.2 无功功率不均分的底层机理先说一个我实测到的现象两台15kVA的VSG并联空载电压都设成311V但带同样负载后A机的Q值跑到了8kVarB机只有4kVar。拿功率分析仪去看输出端波形发现两台机器的电压幅值其实差了约3V。问题就在这里——无功功率的分配本质上取决于电压差。让我们从公式角度看一眼。逆变器输出无功功率可近似为[ Q \approx \frac{U_1 U_2}{X} \cos\theta - \frac{U_2^2}{X} ]其中 (U_1) 是逆变器输出电压幅值(U_2) 是公共母线电压幅值(X) 是线路等效电抗(\theta) 为功角。在低压微网里线路阻抗往往是阻性或者阻感混合(\theta) 很小(cos\theta) 接近1。于是问题简化为 (Q) 强烈依赖 ((U_1 - U_2))。假如两条支路的 (X) 不一样比如A支路电抗0.1ΩB支路0.2Ω即使两台 VSG 命令电压完全相同无功输出也会相差一倍。这就是线缆长度不一样导致分配不均的物理本质。另一个隐藏因素是采样与控制环的离散化误差。VSG控制器内通常采用数字低通滤波器和PI调节器两台逆变器的采样时刻、PWM死区时间不可能完全一致这些微小差异在数字控制里会被放大最终反映在无功环的积分量上。传统下垂控制之所以难解决就是因为它的Q-U下垂系数是定死的无法在线感知线路阻抗的变化。要想根治就得引入自适应机制让控制器实时修正电压参考值把因外部条件变化产生的偏差兜住。2. VSG核心原理与功率分配机制2.1 虚拟同步机的惯性与励磁调节VSG的实现思路是把同步发电机的二阶数学模型移植到逆变器的控制算法里。核心是两个公式一个是转子运动方程用来生成频率和功角决定有功分配另一个是励磁调节方程用来生成电压幅值决定无功分配。有功部分参照发电机转子的摇摆方程[ J\frac{d\omega}{dt} P_{ref} - P_e - D_p(\omega - \omega_0) ]其中 (J) 是虚拟转动惯量(D_p) 是阻尼系数(P_{ref}) 是有功设定值(P_e) 是实测输出有功。这个方程赋予了逆变器惯性响应特性让频率变化不再像传统下垂那般突兀。而无功部分一般用积分形式的调压方程[ E_{ref} E_0 k_q (Q_{ref} - Q_e) \Delta E_{droop} ]这里 (k_q) 是励磁积分系数(Q_{ref}) 是目标无功(Q_e) 是实测无功。如果 (k_q) 设得很大无功误差会被快速消除但一旦线路阻抗存在差异积分器内部就会产生一个长期存在的偏差导致A机和B机的电压幅值命令不统一。于是VSG在单机运行时稳如老狗并联时就原形毕露。我在调试中发现了一个关键细节VSG里的无功环路本质上就是一个慢速自动电压调节器(AVR)它并不关心你并联的隔壁机器输出电压是多少。它只盯着本地测量值去满足本地无功指令。如果线路阻抗不一致要满足相同的 (Q_{ref})A机就必须在电压幅值上比B机高出一截。结果就是两台VSG各自为政强行把母线电压拉偏形成无功环流。2.2 传统Q-U下垂为何解决不了并联不均传统下垂控制比较直接每个逆变器按照固定的下垂系数 (n_q)把测量无功通过 (U U_0 - n_q Q) 映射成电压参考值。这种方法的坑在于 (n_q) 是一次性设死的。如果两条支路阻抗不同要达到相同的无功输出就需要不同的电压降落。但下垂特性要求相同的无功对应相同的电压这本身就和线路阻抗的差异相互矛盾。稍微推一下就明白了。设A、B两台机有相同的下垂特性负载无功总量为20kVar理想情况各带10kVar。但A支路线路阻抗小同样无功造成的压降就小B支路阻抗大压降就大。为了维持公共母线电压一致B机不得不通过无功环流反向注入把局部电压抬上去结果B机实际无功输出比A机高形成抢无功现象。调大 (n_q) 虽然能缩小区间压差但会牺牲电压稳定性和动态响应。调小则不均加剧。传统方法在原理上就卡在这个二律背反里。VSG本质上也有类似问题因为它的励磁调节系数是固定的。但VSG的积分器结构给了我们一个可乘之机积分之前我们可以插入一个非线性修正项根据实时检测到的线路阻抗或无功分配偏差动态调整积分器的参考值。这就是自适应功率分配的核心切入点。下面给出的架构就是基于这种思想做的。3. 自适应功率分配方案设计3.1 虚拟阻抗在线辨识与修正解决无功不均的第一步是承认线路阻抗未知且时变。所以我在方案里加入了一个虚拟阻抗调节环实时解算出两台逆变器之间的等效输出阻抗差并把这个差值折算成补偿电压项叠加到VSG的励磁参考上。具体实现上我用的是电流扰动注入法。在正常运行的小信号区间内给B机的无功指令叠加一个周期的正弦扰动 (\Delta Q_{inj})然后测量A机和B机公共节点的电压幅度响应 (\Delta U_A)、(\Delta U_B)。通过两个响应的比值就能反推出阻抗比 (\frac{X_B}{X_A})。公式如下[ \frac{\Delta U_A}{\Delta U_B} \frac{Z_A}{Z_B} ]一旦得到阻抗比就在B机的电压参考上叠加一个修正量[ \Delta E_{comp} k_{comp} \cdot \frac{X_B - X_A}{X_A X_B} \cdot (U_{rated} - U_{bus}) ](k_{comp}) 是修正系数(U_{rated}) 是额定相电压幅值(U_{bus}) 是公共母线实测电压。这样阻抗差异引起的电压差就被反向补偿掉了。实测下来补偿系数取0.30.6之间比较稳定太大会引起电压振荡。这个方法的优势是不需要额外通信线路两机各自通过本地电压电流采样即可完成阻抗比辨识。劣势是扰动注入会带来微小的功率波动但对电网频率影响可以忽略。实测结果中加入虚拟阻抗补偿后无功分配误差从原来的38%降到了8%以内效果非常显著。3.2 无功功率积分校正与均分策略虚拟阻抗补偿解决的是静态阻抗差异问题但实际工况中负载突变、温度变化都会引起阻抗漂移纯靠固定补偿不够。我在此基础上又加了一层无功积分校正环。它的思路比较接近均值耦合每台VSG不只跟踪本地无功指令还通过慢速通信链路交换各自的 (Q) 值然后算出一个群体平均值 (Q_{avg})修正本机参考[ Q_{ref_corrected} Q_{ref} k_{avg} \cdot (Q_{avg} - Q_i) ]其中 (k_{avg}) 是均衡增益这个环路的时间常数需要设置得比VSG的无功环慢510倍否则会跟励磁调节环打架。实际调试时我把VSG的无功环带宽设计在10Hz左右均衡环带宽压在1Hz附近这样两者解耦很干净。这种方法属于低带宽通信的自主均流策略通信断了也不会立刻失稳只是回到传统VSG模式均衡效果变差但不至于振荡。为了保证系统在通信掉线时依然安全我给每台逆变器内部加了一个看门狗如果超过50ms收不到对方的数据就把 (k_{avg}) 置零切换回只依赖虚拟阻抗补偿的运行方式。这在工程上是非常务实的降级思路。3.3 关键参数设计与计算过程这里给出一组我在15kVA/380V系统上实际调过的参数你可以当初始化模板来用。先设额定容量 (S_N15kVA)额定相电压 (E_N220V)额定频率 (f_N50Hz)公共母线额定电压 (U_{bus}380V)。一、VSG虚拟惯量 (J) 由允许的频率变化率和额定转矩决定。设允许频率变化率 (df/dt0.5Hz/s)额定转矩 (T_N S_N / (2\pi \cdot f_N) \approx 47.75 N\cdot m)则[ J \frac{T_N}{2\pi \cdot (df/dt)} \approx \frac{47.75}{2\pi \cdot 0.5} \approx 15.2 \ kg\cdot m^2 ]二、无功下降系数 (k_q) 可以按电压偏差不超过5%来计算。额定无功 (Q_N S_N / 2 7.5kVar)则[ k_q \frac{0.05 \cdot E_N}{Q_N} \frac{0.05 \cdot 220}{7500} \approx 0.00147 \ V/Var ]三、自适应均衡增益 (k_{avg})我按无功环积分增益的十分之一取。积分增益 (K_i) 设计在2.5则 (k_{avg}0.25)。经过实测这个比值在系统延时10ms时仍然稳定。四、虚拟阻抗补偿系数 (k_{comp})根据阻抗比测量结果当 (X_B / X_A 1.8) 时取 (k_{comp}0.4)电压修正量大约为 0.4×(1.8-1)/(2.8)×220 ≈ 25V。实际测试中修到 15V 就能让无功误差进入 5% 以内所以余量要留够。参数调整时有个重要经验先整定好不带通信的虚拟阻抗补偿让无功误差降到15%以下再打开均衡环否则均衡环会为了补通信前的静态误差而过度积分导致电压越来越偏。这种先局部静补、再全局均补的步骤能让你少烧好几个IGBT模块。4. 实操过程与核心环节实现4.1 仿真平台搭建与离散化设置这一步我是在Matlab/Simulink里搭的模型用了Simscape Electrical的逆变器模块和自写的S-Function做VSG控制器。离散化步长设为50usPWM频率10kHz。这里的关键点是要把电压电流采样模块的延迟考虑进去我当时忽略了ADC采样延迟结果仿真里看着均流效果很好一上实验台就发现动态过程中振荡原因就是仿真没建模采样保持器。搭建时要注意分模块处理VSG核心转子运动励磁调节放一个函数块虚拟阻抗辨识放一个子系统无功均衡环放另一个子系统。各模块之间有明确的使能开关这样在调试时才能单独测试每个环节。我在前期把均衡环使能信号先置0只跑VSG和虚拟阻抗补偿确认波形正常后再逐步打开均衡环。另一个细节是PWM载波同步。两台逆变器在仿真里如果不设置载波同步它们各自生成的开关波形在并联节点会产生高频环流。虽然仿真不至于烧东西但波形杂乱会严重干扰功率计算模块造成无功采样值跳动。我后来把两套PWM载波信号统一成同一个时钟源并联电流波形立刻干净了很多。4.2 带载工况测试记录仿真中我做了三个典型工况。工况一为双机空载启动工况二为负载突然增加30kW工况三为主动断掉一路通信。下面记录一下关键波形数据。空载启动时两台VSG的电压幅值能迅速收敛到220.6V和219.8V相位差保持在0.3度以内。带30kW负载后A机无功输出8.1kVarB机无功输出7.9kVar分配误差2.5%。相比没有自适应控制时的38%改善明显。通信断开测试时我故意在0.5秒时刻把那台B机的均流数据链路断开。A机本地无功在短暂波动50ms后稳定在8.6kVarB机稳定在8.2kVar误差又回到5%左右但系统没有振荡母线电压跌落也在允许范围。这说明降级控制逻辑是有效的。我还专门记录了一个满载启动的极端工况从0kW直接加负荷到50kW。无功环在启动瞬间出现了一次8.4%的过冲大约持续200ms后恢复。后续我通过调低无功环积分增益到2.0过冲降到了5%以下。这个经验跟理论分析一致无功环带宽太快会跟有功环耦合造成启动瞬间的功率振荡。4.3 台架实测与同步注意事项从仿真到台架我吃过大亏。第一件事就是电流采样霍尔传感器的零点漂移。两台逆变器的电流传感器零点不一致直接导致无功计算在轻载时出现系统性偏差。后来我在控制器里加了上电自动校零先把主接触器断开采集100ms电流采样值作为零点偏移量存起来再开始闭环运行。这个简单措施就把轻载无功误差从10%压到2%以内。第二件事是死区补偿。VSG这类电压源型控制对死区极其敏感死区会导致输出电压波形畸变进而影响无功功率计算。我用的IGBT模块死区设为2us单独看每个桥臂影响不大但并联之后高低频环流明显加大。最后我在控制器里加了基于电流方向的死区补偿逻辑补偿电压幅值按母线电压乘以死区比例计算大约3.5V实测效果立竿见影。台架测试时我还发现并联的两台逆变器之间需要接地共点否则共模电压会通过杂散电容形成回路在功率分析仪上看到莫名其妙的高频分量。两个机箱接上等电位排之后所有波形瞬间恢复正常。这一点容易被忽视但排查起来极其费时。5. 常见问题与排查技巧实录5.1 VSG并联振荡问题症状是投入均流环后两台逆变器的输出电流开始以3Hz左右的低频振荡幅度越来越大最终触发过流保护。我排查了电压环、电流环参数都没找到问题。后来抓取两台机子的无功功率波形发现A机的无功领先B机约60度相位上形成了负阻尼条件。问题症结在于均衡环增益太高。我把 (k_{avg}) 从0.5降到0.25再测试振荡消失。这里给各位提个醒低频振荡通常是环路相位裕度不足不是增益不足。调试时先降低均衡环增益把时间常数拉长再观察振荡是否收敛。如果振荡频率恰好落在1Hz5Hz区间基本就是均衡环与VSG励磁环耦合了。5.2 线路阻抗辨识不准的问题虚拟阻抗补偿依赖阻抗比辨识但我一开始用单频扰动注入结果测量到的阻抗比波动非常大原因是负载电流谐波把扰动响应淹没了。后来我改用双频扰动法在无功指令上叠加2Hz和3Hz两个正弦分量通过FFT提取对应频率的响应幅值求比值后进行均值滤波。这样抗干扰能力就强多了辨识结果稳定在5%误差以内。另一个坑是公共母线电压采样点位置不一致。如果各机采样的母线电压来自不同的物理位置它们之间的基准电压差异会被当成阻抗差异补偿导致误动作。解决办法是把补偿环的输入改成公共节点电压与本地输出电压的差值而不是直接用本地电压。这样即便采样点不同差值的参考意义仍然明确。5.3 故障脱网后的恢复流程并联系统中如果一台逆变器因为过流保护跳闸剩余一台会在短时间内承担全部负荷此时它的无功输出会猛增。等故障机重新并网时如果不做处理两台机会因为无功状态差距过大再次冲击跳闸。我的做法是在故障机重新并网前先检测当前运行机的无功值然后把故障机的无功参考值初始化到与运行机一致再闭合并网接触器。这样重新并联的瞬间两机无功差压小冲击电流可以控制在额定电流的20%以内。这里建议你在控制器里预留一个外部通信接口允许并网前写入无功初值不然就只能靠盲目试错。5.4 问题速查表故障现象可能原因解决手段低频无功振荡均衡环增益过高调低k_{avg}并延长时间常数轻载时无功偏差大电流传感器零点漂移上电自动校零输出电流含高频毛刺载波不同步或接地不良统一PWM时钟、共享等电位阻抗辨识结果波动负载谐波干扰双频扰动FFT均值滤波并网瞬间过流无功状态差过大并网前初始化Qref通信断线后电压崩降级逻辑未启用看门狗切换置零k_{avg}6. 从这套方案里能得到什么扩展做完这个项目我的感受是VSG本身并不缺控制精度缺的是对并联系统外部条件的感知能力。无论是传统下垂还是VSG固定的控制参数遇上变化的阻抗就是一个死结。自适应功率分配说白了就是把感知线路阻抗和均衡无功指令这两件事组合起来让逆变器自己去找平衡点而不是靠人工去配线缆长度和阻抗匹配。我个人实际操作中的体会是无功不均问题的表象在控制根子却常常在硬件和采样。所以你在复现这套方案时最好先把传感器零点、死区补偿、PWM同步这些底层基本功练扎实再上复杂的均衡算法。不然很可能出现我今天下午看到的场景仿真里均流误差1.8%台架上一测误差9.5%后来发现是一个电流探头外壳绝缘破损造成的共模干扰。这类问题很让人抓狂但也确实是工程常态。最后再分享一个小技巧做并联系统调试务必在总线上预留一个专门的功率分析仪接点。每次测试工况切换后不要急着看控制器的上报数值先用功率分析仪量一下A机B机的电压电流相位差确认硬件层面的分配情况再判断算法好不好使。否则控制器上的平均无功数据很容易骗你让你误判成均流效果很好。这套自适应分配方案后续还可以往三个方向扩展一是加进多机并联场景用环网通信替代一对一的均值交换二是与直流侧电压平衡、储能SOC均衡联动把无功均衡问题放进全系统能量管理框架里三是在线辨识时加入更快的小信号扰动做实时动态阻抗跟踪。如果你的项目正好卡在并联系统无功分配这一环按我给的参数和排查表过一遍至少能省掉两个星期的无效调试时间。

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑