首页 / 资讯中心 / 文章详情

孤岛微电网双机VSG控制仿真:T型三电平逆变器并联与功率均分

孤岛微电网双机VSG控制仿真:T型三电平逆变器并联与功率均分 ★ FEATURED ARTICLE
做并联逆变器仿真的人第一课基本都是下垂控制。两台变流器各自测自己的输出功率按预设斜率往下压频率和电压系统就能自动分负荷。听起来很成熟可真放到孤岛微电网里你会立刻发现一个尴尬下垂控制本质上是静态映射它把一个物理上必须平滑过渡的同步过程压成了简单的一阶惯性。负载突变那一刻频率会以多快的速率掉下去控制器根本不关心。于是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ω/dt0P_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型桥臂具体搭法一句话正负母线之间串联两个IGBTT1和T4连接点作为交流输出端输出端再通过两个背靠背IGBTT2和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模块内部大致三步瞬时功率计算用输出三相电压电流算p、q再经低通滤波得到P_e和Q_e转子方程按摇摆方程积分出角频率ω再积分出相位θ无功与电压用Q-V下垂得到参考电压幅值E。3.2 虚拟惯量J和阻尼系数D怎么定量选整个仿真里最需要“手感”的地方就在这节。从物理上看J决定了频率变化的速率上限D同时承担稳态下垂和动态阻尼两个作用。以我用的10kVA、50Hz、ω_n314rad/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/sD_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_v0.2Ω、L_v1mH的虚拟阻抗后误差降到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.4sJ≈0.08kg·m²按式(2)折算VSG阻尼D12频率跌落约1%有功滤波时间常数30ms一阶低通电压外环PIKp0.35, Ki12标幺值折算电流内环PIKp1.2, Ki8标幺值折算虚拟阻抗R_v0.2Ω, L_v1mH改善无功均分负荷阶跃t0.5s投入20kW4kVar公共母线这些值都是标幺化后反推出来的不同系统要按自己的额定电压电流重新折算。双闭环带宽要拉开电压外环100~200Hz左右电流内环500~1000Hz左右否则两个环会互相打架输出波形出现令人困惑的振荡。5.3 求解器与仿真效率三电平加12个IGBT加10kHz PWM这种模型在Simulink里标准做法是Powergui设成DiscreteTs5e-6s跑1秒仿真普通电脑要二三十分钟。调试阶段我强烈建议做一个“平均值版”来验证控制逻辑把SVPWM和IGBT桥换成理想受控源只保留VSG和双闭环方程仿真速度快几十倍。参数定得差不多了再切回详细开关模型专门看谐波和开关细节。这个做法帮我省了至少两天时间。另外数据记录别一直开着全波形scope只记录关键量并用Decimation抽稀否则内存很快就爆了。仿真时间和数据记录这两个问题往往比控制算法本身更影响进度。6. 调试中的真实踩坑记录与最终结果验证6.1 中点电位漂移波形畸变的隐形杀手第一版模型跑起来输出波形怎么看都不对劲相电压上半周宽、下半周窄直流侧上电容电压从400V慢慢爬到430V下电容跌到370V。原因很明确SVPWM里没有中点平衡逻辑且负荷无功分量导致流向中点的平均电流不为零。加上平衡控制器之后中点电压波动收敛到±4V左右相电压也对称了。这个坑最容易出现在“只搭了主电路和控制器、忘了中点平衡”的版本里。三电平不是天生就均衡必须有闭环去压住它。6.2 双机同时启动的冲击电流第一次做双机并联我在t0时刻让两台VSG同时工作、负荷同时接入结果第一毫秒电流直接冲到额定电流的3倍波形整个崩掉。查下来发现两机的θ虽然都是从0开始看起来一致但VSG内部的功率计算滤波器在初始时刻有阶跃过渡导致两机输出相位在动态过程中短暂错开。解决办法就是前面说的先让两台机各自空载运行0.2s在不切断控制器的情况下闭合公共断路器再投入负荷。这个顺序比任何控制器参数都管用。6.3 负载阶跃后的频率振荡J与D的折中参数调试时我做过一组对照H0.2sJ偏小负荷切入瞬间频率下滑很快最低到48.6Hz恢复也快但出现明显欠阻尼振荡H2sJ偏大频率变化柔和最低只到49.3Hz但要0.8s才贴近新稳态动态太钝而且有功分配在暂态阶段短暂失衡更明显H0.4s、D12频率最低约49.1Hz0.35s左右趋于稳态振荡一次过吸收最终频率49.52Hz与按下垂计算的理论值一致。最终我采用H0.4s、D12这一组。这也验证了一个经验J决定频率变化的“猛烈程度”D决定“落点和阻尼”二者要配合调不能只盯着单一参数。6.4 最终运行结果在t0.5s投入20kW4kVar公共负荷后最终测得两台机有功输出分别为10.0kW和9.97kW均分误差约0.3%无功分别为1.96kVar和2.04kVar均分误差约4%含虚拟阻抗后公共母线频率由50Hz跌落到49.52Hz并保持稳定动态最低点49.1Hz输出相电压THD约3.2%中点电位偏差在±4V以内两台机间环流在稳态时小于额定电流的2%。这个结果说明纯粹靠VSG的下垂机制、不依赖通信对称工况下功率均分是可以做到的。如果后续有无功精确均分或有功二次调节的需求再往上叠加调压调频层即可。最后说一句调试心得这套仿真里最容易被忽略、但也最值得先解决的问题是构建一个稳定可复现的启动流程。我自己的习惯是每次改参数都从空载启动开始跑确认前1秒波形正常再看负荷阶跃之后的表现。否则很容易在错误前提上调出一组看起来正常、一加负荷就崩的参数组合。上面表格里的参数是按这个流程一步步定下来的照着搭一遍应该能复现出类似的结果。
阅读完成 · 觉得有帮助?
咨询建站