☰
孤岛微电网双机VSG控制仿真:T型三电平逆变器并联与功率均分
2026/10/24 2:54:57 网站建设 项目流程

做并联逆变器仿真的人,第一课基本都是下垂控制。两台变流器各自测自己的输出功率,按预设斜率往下压频率和电压,系统就能自动分负荷。听起来很成熟,可真放到孤岛微电网里,你会立刻发现一个尴尬:下垂控制本质上是静态映射,它把一个物理上必须平滑过渡的同步过程压成了简单的一阶惯性。负载突变那一刻,频率会以多快的速率掉下去,控制器根本不关心。于是VSG(虚拟同步发电机)这两年成了热门做法——它把同步发电机的转子运动方程塞进逆变器控制里,让电力电子系统也有了“转动惯量”。我最近完成的这个Simulink仿真,就是把两台T型三电平逆变器都用VSG控制,在孤岛离网状态下实现功率均分。接下来我会把从拓扑选型、控制器搭建到仿真调参的完整过程记录下来,给做微电网并联控制的人一个可以直接参照的版本。

1. 为什么孤岛双机系统必须引入VSG:功率均分只是表象

1.1 逆变器并联首先不是“分电”,而是“稳住频率”

两台逆变器在孤岛状态下接上同一个交流母线,第一件事不是功率均分,而是“谁来定义母线电压和频率”。大电网在的时候,电压和频率由电网撑住,逆变器跟着电网走就行;孤岛离网以后,支撑没了,每一台逆变器都必须自己建立并维持一个合格的三相电压,还要在负荷变化时不让频率失控。

传统做法是下垂控制。每台机测到自己输出的P、Q,按预设斜率调整频率和幅值:负荷大的我往下压一点,负荷小的那台自然多出力。静态逻辑很清楚,缺陷也很明显——没有“惯性”。同步发电机转子上有真实机械惯量,负荷突变时转子转速不可能瞬间跳变,频率变化率被物理结构限制住了;下垂控制里的频率只是一个代数计算量,没有状态变量,负荷突变的瞬间,频率响应完全由滤波器动态决定,抗冲击能力非常差。

1.2 一个“转子运动方程”带来的本质变化

VSG的核心,是把同步发电机的摇摆方程搬进控制算法:

J·dω/dt = (P_m - P_e)/ω_n - D_p(ω - ω_n)

dθ/dt = ω

P_m是设定的有功指令对应的机械功率,P_e是量测得到的电磁功率,ω_n是额定角频率,J就是虚拟惯量,D_p是阻尼系数。把这一阶微分方程放在控制环里,输出角频率ω再积分得到相位θ,逆变器的输出相位就不是瞬时计算的,而是按照一个“转动惯量系统”的动态逐步演化。负荷突变时,虚拟转速的下降速率被J限制住,相当于逆变器有了一副看不见的转子。

这不止是“看起来像电机”。VSG还天然内嵌了下垂特性:稳态时dω/dt=0,P_e相对P_m的偏差直接对应频率偏差,D_p和J一起决定了稳态频率跌落和动态阻尼。所以它和下垂并不冲突,而是把下垂从“代数映射”升级成“二阶惯性系统”。

1.3 仿真边界设定

我做的这个模型没有外部电网,两台T型三电平逆变器独立构成一个孤岛。负荷由公共母线上的一组可切换三相RL负载模拟,两台机容量同为10kVA,控制参数完全对称。验证的目标很清晰:对称工况下VSG能否完成功率均分、负荷阶跃后的频率动态如何演变、三电平中点电位稳不稳。没有加二次调频,也没有加通信,纯粹看下垂+惯量机制本身能做成什么样。

2. T型三电平逆变器的建模细节:选型、搭建与中点电位

2.1 为什么不是两电平,也不是I型NPC

两电平逆变器在800V直流母线、10kHz开关频率下当然也能跑,但输出电平只有±400V,谐波含量和dv/dt都明显偏高,滤波电感要做得更大。三电平输出电平是+400V、0V、-400V,同样开关频率下波形质量高一个档次。而三电平主流方案是I型NPC和T型两大类:I型每相4个IGBT外加2个钳位二极管,T型把钳位二极管换成双向开关,每相仍是4个IGBT但省掉了二极管,拓扑形似字母T。

对比项I型NPCT型三电平
每相主开关4×IGBT4×IGBT
钳位器件2个钳位二极管2个IGBT(双向)
通态损耗相对较高较低,适合低压大电流
器件耐压内侧器件半母线、外侧全母线垂直桥臂器件承受全母线电压
典型应用中高压、风电、牵引低压(<1.5kV)光伏、储能、微电网

低压微电网场景下,直流侧只有几百伏,T型的耐压劣势不明显,效率和动态响应上的优势更值钱。所以这个题目选T型是合理的。仿真里我没有直接用现成的Three-Level Bridge模块——那个模块通常默认是NPC结构,我改成了手搭T型桥臂,每相4个带反并联二极管的IGBT离散元件,总共12只管。

2.2 在Simulink里手搭T型桥臂

具体搭法一句话:正负母线之间串联两个IGBT(T1和T4),连接点作为交流输出端;输出端再通过两个背靠背IGBT(T2和T3)接到直流母线中点。运行状态分为三种:

  • T1导通、其余关断:输出P电平,接正母线;
  • T2/T3导通、T1/T4关断:输出O电平,接到母线中点;
  • T4导通、其余关断:输出N电平,接负母线。

在Simscape Electrical里,我用离散IGBT模块加RC吸收支路,死区时间设在3微秒左右,12路门极脉冲全部来自控制器里的三电平SVPWM模块,经延迟模块统一加死区后再进主电路。这里提醒一句:离散IGBT的导通压降和吸收电阻会影响仿真速度和波形细节,验证控制逻辑时可以先设成理想开关,最后再回到带损耗模型看效率。

2.3 三电平SVPWM和中点电位平衡

三电平SVPWM比两电平复杂在开关状态更多:共有27个开关状态,基本电压矢量分布在大六边形扇区内,每个小扇区都有冗余矢量。实现上我不建议手推公式,直接在MATLAB Function里写“扇区判断—最近三矢量作用时间计算—七段式发波”的通用算法。输入是期望线电压矢量的幅值和角度,输出是三相开关状态序列。

中点电位平衡是T型三电平绕不开的问题。直流母线是两组电容串联,只要三相调制产生的流向中点的电流平均值不为零,上下电容电压就会分家。常规做法是利用冗余小矢量对中点电流方向相反的机制,在每个PWM周期里根据ΔU(上电容电压减下电容电压)微调正负小矢量的作用时间。我实际测下来,比例系数K取0.2~0.3,平衡效果就很明显;取太大反而让波形出现抖动。

3. VSG控制器的数学内核:转子运动方程的参数整定

3.1 从摇摆方程到控制模块

控制结构我采用的是较常见的思路:VSG生成电压参考(幅值E和相位θ),电压外环加电流内环负责跟踪,最终输出到SVPWM。VSG模块内部大致三步:

  1. 瞬时功率计算:用输出三相电压电流算p、q,再经低通滤波得到P_e和Q_e;
  2. 转子方程:按摇摆方程积分出角频率ω,再积分出相位θ;
  3. 无功与电压:用Q-V下垂得到参考电压幅值E。

3.2 虚拟惯量J和阻尼系数D怎么定量选

整个仿真里最需要“手感”的地方就在这节。从物理上看,J决定了频率变化的速率上限,D同时承担稳态下垂和动态阻尼两个作用。以我用的10kVA、50Hz、ω_n=314rad/s系统为例,惯量常数H取0.4s,则:

J = 2·H·S_N/ω_n² = 2×0.4×10000/(314²) ≈ 0.08 kg·m²

D则按想要的频率跌落率来定。如果希望额定功率10kW时频率跌落约1%(0.5Hz,对应Δω≈3.14rad/s):

D_p ≈ ΔP/(ω_n·Δω) = 10000/(314×3.14) ≈ 10 N·m·s/rad

这里能看出下垂与阻尼的本质联系:D越小,稳态频率掉得越多但也越灵敏;D越大,频率越硬朗但动态阻尼可能变弱。我调参时习惯先固定J,按目标频率跌落把D定下来,再通过负荷阶跃仿真看频率的过冲和振荡次数,最终在10~20之间微调。

实际波形还有一个规律:负荷阶跃后如果频率出现长周期摇摆,多半是J偏大;如果是高频振铃,先检查功率滤波器和PWM死区,其次再怀疑D。J不是越大越好,虚拟惯量太大,频率变化率虽然稳住了,但恢复到新稳态的时间会拖得很长,甚至和下垂特性配合出欠阻尼。

3.3 无功-电压下垂与惯量的接口

Q-V部分相对简单,我用的是:

E = E_0 + n_q(Q_ref - Q_e)

E_0是空载电压幅值,n_q按额定无功时电压变化5%来选,大约在0.0016V/var量级。注意符号别写反:无功增加时电压要降,Q_e变大时E应减小。不同论文里有不同符号约定,代码里务必定义一致。

这里有个容易被忽略的工程细节:电压幅值E会直接传给电压外环做参考,而相位θ在Simulink里由积分器不断累加,数值会越积越大。不要直接拿这个θ去和固定值比较,应该让θ驱动正弦信号生成模块,或使用三角函数自动wrap,否则几秒后角度精度就会出问题。

4. 两台VSG功率均分的实现逻辑:无功均分为何最难

4.1 频率是“全局同步量”,有功均分相对便宜

两台VSG接到同一个交流母线,稳态时母线频率是唯一的,也就是说两台机的虚拟角频率必然收敛到同一个值。而VSG的有功-频率关系是固定的:同一个频率对应唯一的P_e-P_m偏差。只要两台机的P_m和D_p一致,负荷就会被平分。这就是有功均分的底层逻辑——不需要通信,频率本身就携带了全局信息。

但要注意“稳态”二字。动态过程里,各台机的θ和ω经历了不同轨迹,总有暂态环流。为了减小这种暂态冲击,我在两台机启动时让θ初始值相同,第一瞬间没有相角差,冲击电流明显减小。

4.2 无功均分为什么难,虚拟阻抗怎么救

无功均分就没这么幸运了。Q-V下垂用的是本机端电压U,而端电压受本地负荷和线路阻抗影响很大。两台机即使下垂系数完全一致,只要到负荷点的线路阻抗有差异,公共母线电压就不同,无功分配会偏向阻抗小的一台。典型表现:有功均分误差不到1%,无功误差可以到15%以上。

常规解法是加虚拟阻抗,在VSG输出的参考电压上减去一个虚拟压降:

V_d_ref = V_d_vsg - R_v·I_d + X_v·I_q V_q_ref = V_q_vsg - R_v·I_q - X_v·I_d

这样每台逆变器对外呈现的等效输出阻抗被改造成一致且可控的感性阻抗,电压分摊更均衡。第一版仿真里我没加虚拟阻抗,无功均分误差约14%;加上每相R_v=0.2Ω、L_v=1mH的虚拟阻抗后,误差降到5%以内。代价是电压参考会有一定压降,需要在下垂里预留电压余量。

4.3 双机并机的启动流程

并联逆变器最容易出问题的就是合闸瞬间。如果两台机先各自建压、再直接闭合公共断路器,而θ和幅值没有同步,合闸瞬间会产生极大环流,波形直接顶到保护限幅。我在仿真里加了“先空载、后合闸、再加载”的顺序:两台VSG先空载运行各自稳定建压,等母线两侧电压差和相角差都小于门槛(比如幅值差<5V、相角差<0.5°),再发出合闸指令,之后才切入负荷。冲击就很小。

这个细节非常重要——很多资料只画控制框图,不写启动流程,照着搭仿真第一次就跑爆的人不在少数。

5. Simulink仿真搭建实录:从主电路到控制链路的完整走一遍

5.1 整体框架

模型分三层,信号流是:

直流电源与分裂电容 → T型三电平桥 → LC滤波与线路阻抗 → 公共母线 → RL负荷;控制侧从滤波器出口测得三相电压电流,进功率计算模块,进VSG生成θ和E,进电压电流双闭环,输出参考电压给三电平SVPWM,最后生成12路门极脉冲。两台机完全对称,只在一台机上额外加了预同步逻辑。

5.2 关键参数清单

参数数值说明
直流母线电压800V分裂为两个400V电容,中点O
直流电容C1/C23300μF中点电位平衡的物理基础
额定容量S_N10kVA/台两台一致
滤波电感L1mH(含0.05Ω电阻)LC滤波
滤波电容C50μF输出侧
线路阻抗0.08Ω + j0.5mH对称设置
开关频率10kHz三电平SVPWM
死区时间3μs12路统一
VSG惯量常数H0.4s(J≈0.08kg·m²)按式(2)折算
VSG阻尼D12频率跌落约1%
有功滤波时间常数30ms一阶低通
电压外环PIKp=0.35, Ki=12标幺值折算
电流内环PIKp=1.2, Ki=8标幺值折算
虚拟阻抗R_v=0.2Ω, L_v=1mH改善无功均分
负荷阶跃t=0.5s投入20kW+4kVar公共母线

这些值都是标幺化后反推出来的,不同系统要按自己的额定电压电流重新折算。双闭环带宽要拉开:电压外环100~200Hz左右,电流内环500~1000Hz左右,否则两个环会互相打架,输出波形出现令人困惑的振荡。

5.3 求解器与仿真效率

三电平加12个IGBT加10kHz PWM,这种模型在Simulink里标准做法是Powergui设成Discrete,Ts=5e-6s,跑1秒仿真普通电脑要二三十分钟。调试阶段我强烈建议做一个“平均值版”来验证控制逻辑:把SVPWM和IGBT桥换成理想受控源,只保留VSG和双闭环方程,仿真速度快几十倍。参数定得差不多了再切回详细开关模型,专门看谐波和开关细节。这个做法帮我省了至少两天时间。

另外,数据记录别一直开着全波形scope,只记录关键量并用Decimation抽稀,否则内存很快就爆了。仿真时间和数据记录这两个问题,往往比控制算法本身更影响进度。

6. 调试中的真实踩坑记录与最终结果验证

6.1 中点电位漂移:波形畸变的隐形杀手

第一版模型跑起来,输出波形怎么看都不对劲:相电压上半周宽、下半周窄,直流侧上电容电压从400V慢慢爬到430V,下电容跌到370V。原因很明确:SVPWM里没有中点平衡逻辑,且负荷无功分量导致流向中点的平均电流不为零。加上平衡控制器之后,中点电压波动收敛到±4V左右,相电压也对称了。

这个坑最容易出现在“只搭了主电路和控制器、忘了中点平衡”的版本里。三电平不是天生就均衡,必须有闭环去压住它。

6.2 双机同时启动的冲击电流

第一次做双机并联,我在t=0时刻让两台VSG同时工作、负荷同时接入,结果第一毫秒电流直接冲到额定电流的3倍,波形整个崩掉。查下来发现两机的θ虽然都是从0开始,看起来一致,但VSG内部的功率计算滤波器在初始时刻有阶跃过渡,导致两机输出相位在动态过程中短暂错开。

解决办法就是前面说的:先让两台机各自空载运行0.2s,在不切断控制器的情况下闭合公共断路器,再投入负荷。这个顺序比任何控制器参数都管用。

6.3 负载阶跃后的频率振荡:J与D的折中

参数调试时我做过一组对照:

  • H=0.2s(J偏小):负荷切入瞬间频率下滑很快,最低到48.6Hz,恢复也快,但出现明显欠阻尼振荡;
  • H=2s(J偏大):频率变化柔和,最低只到49.3Hz,但要0.8s才贴近新稳态,动态太钝,而且有功分配在暂态阶段短暂失衡更明显;
  • H=0.4s、D=12:频率最低约49.1Hz,0.35s左右趋于稳态,振荡一次过吸收,最终频率49.52Hz,与按下垂计算的理论值一致。

最终我采用H=0.4s、D=12这一组。这也验证了一个经验:J决定频率变化的“猛烈程度”,D决定“落点和阻尼”,二者要配合调,不能只盯着单一参数。

6.4 最终运行结果

在t=0.5s投入20kW+4kVar公共负荷后,最终测得:

  • 两台机有功输出分别为10.0kW和9.97kW,均分误差约0.3%;
  • 无功分别为1.96kVar和2.04kVar,均分误差约4%(含虚拟阻抗后);
  • 公共母线频率由50Hz跌落到49.52Hz并保持稳定,动态最低点49.1Hz;
  • 输出相电压THD约3.2%;
  • 中点电位偏差在±4V以内;
  • 两台机间环流在稳态时小于额定电流的2%。

这个结果说明,纯粹靠VSG的下垂机制、不依赖通信,对称工况下功率均分是可以做到的。如果后续有无功精确均分或有功二次调节的需求,再往上叠加调压调频层即可。

最后说一句调试心得:这套仿真里最容易被忽略、但也最值得先解决的问题,是构建一个稳定可复现的启动流程。我自己的习惯是每次改参数都从空载启动开始跑,确认前1秒波形正常,再看负荷阶跃之后的表现。否则很容易在错误前提上调出一组看起来正常、一加负荷就崩的参数组合。上面表格里的参数是按这个流程一步步定下来的,照着搭一遍,应该能复现出类似的结果。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询