VSG序阻抗扫频与双闭环稳定性分析:建模仿真实战指南

📅 发布时间:2026/9/11 19:57:02
VSG序阻抗扫频与双闭环稳定性分析:建模仿真实战指南
VSG虚拟同步发电机这几年做新能源并网、微电网和储能研究的人肯定都不陌生。但说句实话很多人仿真跑得飞起真遇到振荡问题就抓瞎——因为你根本不知道这台变流器在并网点看进去阻抗到底是什么形状。阻抗形状不对电网电感一叠加系统直接发散都是常有的事。要回答这个问题最直接的办法就是做序阻抗扫频在时域模型或样机里往并网点注入特定频率的小信号扰动测电压电流响应算出阻抗幅值和相位再拿扫频数据做稳定性分析。我这篇就围绕“VSG序阻抗扫频、电压电流双闭环、时域阻抗扫频稳定性分析、建模仿真”这条线把整个流程完整捋一遍。包含我在Simulink里搭模型的具体步骤、扰动注入怎么做、FFT参数怎么选、双闭环参数怎么调、阻抗比判据怎么用以及我一路上踩过的坑。适合正在做VSG并网稳定性研究的学生也适合要验证变流器样机稳定性的工程师。用Plecs或者PSCAD的读者同样可以参考核心思路完全一致。1. 先把概念理清楚VSG、序阻抗和双闭环在分析里各扮演什么角色1.1 VSG为什么需要阻抗视角VSG的核心是模拟同步发电机的转子运动方程用有功-频率环提供虚拟惯量和阻尼用无功-电压环提供电压支撑。相比传统的“矢量控制PLL”方案VSG靠功率同步机制自行建压建频在弱电网下具备天然的频率支撑能力。但代价是它和电网之间的交互变得比传统并网变流器更复杂。这里必须引入阻抗视角。任何变流器在并网点对外都可以等效成一个受控源加一个等效阻抗。当电网阻抗和变流器输出阻抗满足一定条件时两个子系统会出现负阻尼交互引发宽频振荡。VSG因为控制环节多功率环、电压环、电流环每个频段的主导环节不同所以它的阻抗曲线不是一条平滑直线而是分频段呈现出不同特性。你不做阻抗扫频就永远只能靠试错调参数一旦现场振荡根本不知道从哪下手。1.2 序阻抗扫频的物理含义与频段划分序阻抗这个词来自对称分量法。三相系统中正序、负序、零序是三个解耦的子系统分别对应不同类型的不平衡或扰动场景。对平衡工况下的VSG主要关心正序阻抗研究电网不平衡、单相故障或者背景谐波时负序阻抗就不能忽略零序一般被变压器隔离或没有中性线通路大部分场景可以先不碰。扫频的本质是在稳态工作点上叠加一个极小幅值的正弦扰动测出扰动电压和扰动电流的比值即该频率下的阻抗Z(f) ΔV(f) / ΔI(f)。逐点改变扰动频率就得到阻抗随频率变化的幅频和相频曲线。实际操作中我会把频率范围做这样的划分频段主导控制环节关注问题0.1Hz ~ 1Hz有功/无功功率外环虚拟惯量、下垂系数低频慢动态1Hz ~ 100Hz电压外环电压支撑能力与弱电网电感谐振100Hz ~ 1kHz电流内环中频振荡、谐波交互1kHz以上控制延迟、滤波器、调制高频谐振、采样延迟带来的相位滞后这个频段划分不是拍脑袋而是由各控制环的带宽决定的。功率环带宽最低通常只有几赫兹所以只影响最低频段。电压外环带宽一般在几十到上百赫兹电流内环带宽则可以做到数百赫兹到上千赫兹。先有这个概念后面调参会顺很多。1.3 电压电流双闭环处于阻抗形成链路的哪一环VSG主电路的控制链路是功率外环生成电压参考的幅值和相位电压电流双闭环负责让实际输出电压跟踪这个参考最终通过SVPWM驱动变流器。其中电压外环负责把电容电压控制到参考值输出的是电流指令电流内环负责快速跟踪电流指令输出的是调制电压。阻抗的形成链路其实是反过来的并网点的扰动电压经过滤波电容被电压外环感知产生电流指令扰动电流内环再对该指令做出响应形成最终的输出电流扰动。双闭环的带宽和控制增益决定了扰动被抑制还是被放大。可以说双闭环是VSG中频段阻抗特性的主要塑造者功率环则主要影响低频段。你把双闭环调好了中频段的阻抗曲线基本就定型了后面做稳定性分析也会舒服很多。2. 电压电流双闭环如何塑造VSG的序阻抗特性2.1 从功率环到电流环的阻抗链路拆解要理解双闭环对阻抗的影响先要把控制链路拆开看。以dq同步旋转坐标系为例有功-频率环根据有功功率偏差输出角频率偏差积分后得到电压相位无功-电压环根据无功功率偏差输出d轴电压幅值参考电压外环对d/q轴电容电压进行PI控制输出d/q轴电流参考电流内环对d/q轴电感电流进行PI控制叠加电压前馈后输出d/q轴调制电压经过坐标反变换和SVPWM得到三相开关信号驱动IGBT桥臂。在这个链路里每个环节都会在阻抗传递函数上留下自己的“痕迹”。比如电压外环的积分器会使低频阻抗呈现容性或阻性特征电流内环的比例增益则直接决定中频段阻抗的幅值高低。你往阻抗曲线上看一眼基本就能反推出哪个环路的参数偏大偏小。2.2 控制参数对阻抗曲线的具体影响我根据自己调参的经验给你一个大致的影响规律。具体数值会随主电路参数和功率等级变化但趋势是一致的。第一个是电流内环比例系数Kpc。这个参数增大中频段输出阻抗的幅值会显著抬高相位也会更接近90度表现为感性。原因是电流环带宽提高后对扰动电流的抑制能力增强等效于增加了变流器的输出阻抗刚性。但Kpc也不能无脑大太大会放大噪声甚至引入高频谐振峰。第二个是电流内环积分系数Kic。它主要影响电流环的低频增益对中频段阻抗影响相对较小主要改善稳态跟踪精度。第三个是电压外环比例系数Kpv。增大后低频段1Hz到几十赫兹阻抗幅值降低电压支撑能力增强。但Kpv过大时电压环与电流环的带宽会接近两个环路的交互会产生一个突出的谐振峰这在阻抗曲线上经常表现为中低频段一个明显的凸起非常影响稳定性。第四个是虚拟惯量J和阻尼系数Dp。它们影响最低频段0.1Hz到1Hz的阻抗。惯量越大低频段相位越接近-90度系统表现出“重锤”特性阻尼越大低频段阻抗的实部越正对低频振荡的抑制越好。把这些规律记住扫频看到曲线你就能大概猜出该动哪个参数。比我当初对着波特图瞎蒙效率高多了。2.3 弱电网与强电网下主导环节的切换电网的强弱通常用短路比SCRShort Circuit Ratio衡量定义是并网点短路容量与变流器额定容量之比。强电网SCR大电网阻抗小弱电网SCR小电网阻抗大。这个区别对稳定性分析是决定性的。电网阻抗Zg在频率坐标系里是一条过原点的直线Zg jωLg它会和VSG的阻抗曲线有一个交点。交点的频率落在哪个控制环节的带宽内哪个环节就成了稳定性的关键强电网SCR 10电网电感很小阻抗交点通常落在几百赫兹以上的高频段此时电流内环、控制延迟、调制器主导稳定性。你光调功率环没用得动电流环或滤波器参数。弱电网SCR 2~5电网电感大交点落在几十赫兹左右的中低频段正好是电压外环的作用范围。你调电流环可能效果甚微重点要调电压外环。极弱电网SCR 2交点可能低到几赫兹此时功率外环和虚拟惯量都会参与进来低频段的相位裕度成为核心指标。这解释了为什么同一个VSG参数在强电网下稳如泰山接到弱电网就振荡——不是控制逻辑错了而是稳定裕度被电网阻抗吃掉了。理解了主导环节切换调参才有的放矢。3. 建模仿真实操在Simulink里完成VSG阻抗扫频3.1 主电路与控制算法搭建要点我用的是MATLAB/Simulink Simscape Electrical这个组合搭VSG最直观也方便后期数据后处理。主电路部分包含直流电压源800V左右、三相两电平桥臂、LC滤波桥臂侧电感2mH滤波电容20uF、并网开关、理想电网电压源。开关频率10kHz仿真步长固定1e-5s离散求解器。控制部分我用三个子模块组织VSG功率环输入有功/无功功率输出角频率和电压参考幅值电压电流双闭环dq坐标系下电压外环输出电流指令电流内环输出调制电压注意加电压前馈和交叉解耦项SVPWM调制模块把dq调制电压反变换后生成开关信号。这里提醒一句PWM模块尽量用平均模型或SVPWM生成器如果直接搭IGBT开关级模型仿真速度会慢很多扫一个频点等得人心态崩。我个人的做法是先跑平均模型验证控制逻辑等需要验证开关纹波影响时再换回开关级模型重跑关键频点。3.2 扰动注入两种方法对比与参数设置扫频的关键是注入扰动。两种常用方法方法一串联电压扰动。在理想电网电压源上叠加上一个可控小电压源可以理解为电网模型里串了一个幅值很小的扰动源。这个方法建模最简单直接在Simulink的受控电压源里叠加正弦信号就行。用它对VSG注入扰动时测PCC点电压和VSG并网电流计算Zvsg ΔVpcc / ΔIline。方法二并联电流扰动。在PCC点并联一个受控电流源注入设定频率的扰动电流测PCC点电压变化。这个方法在硬件在环测试里更常用因为并联注入不会影响主电路潮流路径但对Simulink建模来说多一步电流源设置。我推荐在前期仿真阶段用方法一省事而且足够准确。扰动幅值要取小信号幅值一般取基波电压幅值的1%~5%。以380V系统为例相电压峰值约311V我通常叠加5V到10V的小扰动电压。幅值太大系统响应进入非线性区扫出来的阻抗不是小信号阻抗曲线会变形幅值太小干扰被FFT数值误差淹没信噪比不足。扫频序列建议从5Hz开始到2kHz结束。5Hz以下受仿真长度限制稳态需要跑好几十个周期时间成本太高2kHz以上受PWM开关频率和采样频率限制测得也不准。频点排布用对数等距或分段线性5Hz到50Hz每2Hz一个点50Hz到500Hz每10Hz一个点500Hz到2kHz每50Hz一个点全扫下来大概一百多个点。3.3 数据提取、FFT参数与阻抗计算每个频点注入扰动后要等系统进入稳态再开始取数。我一般等5个基波周期后开始采样记录PCC三相电压和并网三相电流时长取0.2s到0.5s。采样率用20kHz这样2kHz以内的频率成分都能覆盖。数据处理是关键一步。先用对称分量变换分离正序、负序分量再把对应频率的电压电流分量找出来通过FFT计算幅值和相位。FFT参数我固定这样配窗函数汉宁窗旁瓣泄漏小FFT点数8192点频率分辨率约2.4Hz加窗方式重叠50%取多段平均频率提取取扰动频率最近的FFT bin读出幅值和相位。阻抗计算结果用复数的幅值和相位表示Z(f) V_fft(f) / I_fft(f)最后把所有频点的阻抗画成Bode图前文说的高频毛刺八成就是FFT参数没配好。后面我专门讲坑。如果你要单独测负序阻抗只需要把注入的三相扰动顺序反过来也就是b相滞后a相120度而不是超前其余流程完全一样。正序和负序的阻抗曲线通常不同因为VSG在dq旋转坐标系下的正序和负序响应并不对称。研究不平衡电压下的稳定性时负序阻抗必须单独测量。3.4 Plecs在批量扫频场景下的优势很多朋友问我是用Simulink还是Plecs。我的结论是前期建模和教学演示用Simulink批量扫频和参数扫描用Plecs。Plecs的编译速度比Simulink快很多而且它对固定步长求解器的支持更高效同样一个VSG模型在Simulink里跑一个频点的仿真时间Plecs可能能跑三个。更关键的是Plecs在做参数扫描时有专门的脚本接口可以用Python或MATLAB脚本批量修改控制参数、批量跑频点、批量导出阻抗数据。我后面稳定性分析要做参数优化就是靠Plecs批量扫了十几组电流环参数一小时全部跑完然后统一画曲线对比。用Simulink的话手动改一次参数等仿真结束再记录数据要做好几轮效率差太多了。但Plecs的建模界面不像Simulink那么“所见即所得”控制逻辑里的增益和传递函数方框图要自己拖模块熟悉起来需要一点时间。如果你是新手我建议Simulink先把原理跑通再迁移到Plecs做批量任务。4. 时域阻抗扫频后的稳定性分析判据选择与参数优化4.1 阻抗比判据和中频段裕度扫频扫出来一堆阻抗数据最终要落到稳定性结论上。VSG并网系统可以等效为两个级联子系统的互联电网侧阻抗Zg和变流器侧阻抗Zvsg。根据Middlebrook准则的推广形式系统的稳定性取决于阻抗比T(s) Zg(s) / Zvsg(s)或者用逆形式取决于你定义方向。只要T(s)的奈奎斯特曲线不包围(-1, j0)点系统小信号稳定。实际工程中很少有人真的去画奈奎斯特曲线更常用的是看中频段的幅频和相频。在Zg和Zvsg的幅值曲线交点频率处如果Zg的相位减去Zvsg的相位也就是T(s)在该点的相位余量大于-180度且留有一定裕度那一般是稳定的。这个交点频率通常就是振荡发生的候选频率。你可以对比现场振荡波形里的频谱成分查一下那个频率是不是正好落在阻抗交点附近如果是基本就是控制阻抗与电网阻抗的交互作用判断依据非常直接。4.2 从扫频结果到稳定性结论的分析流程我整理了一个标准的分析流程每次做都按这个来不会漏步骤选定稳态运行点比如额定有功功率、额定无功功率记录基准工况下的电压电流搭建并验证扫频模型先跑一个频点确认阻抗值合理逐频点扫描得到VSG正序阻抗/负序阻抗的幅频相频曲线用解析公式计算电网阻抗推荐直接用Zg Rg jωLg其中Lg由短路比SCR换算得到在同一张Bode图上画出Zg和Zvsg找幅值曲线交点计算交点频率处的相位裕度判断是否稳定如果裕度不足根据前文提到的“主导环节切换”规律调整对应控制环参数重复扫描。这套流程最大的好处是可以在仿真阶段就把现场可能出现的振荡风险提前找出来。比如我做过一个30kW VSG样机验证扫频结果显示电流环带宽偏低导致中频段阻抗出现峰值与电网电感交点的相位裕度只有12度明显偏紧。后面把电流环比例系数从3提高到6交点频率略微右移相位裕度提高到35度系统就稳了。4.3 通过调整双闭环参数改善稳定性的实例我举个具体的参数优化实例方便你对照理解。某VSG系统额定功率30kW电网电压380V线路电感对应SCR约为4属于弱电网。第一轮扫频结果显示J 0.5 kg·m²Dp 50电压外环Kpv 2Ki 100电流内环Kpc 3Kic 100。此时Zg和Zvsg曲线交点约在38Hz交点处相位裕度只有9度稳定性危险。排查发现38Hz正好落在电压外环带宽范围内电压外环的响应滞后拉低了相位裕度。于是做了三组优化小幅降低电压外环比例系数从2降到1.5交点频率处相位略改善但差距不大提高电流内环比例增益从3提高到6同时把电流环积分时间常数从0.01s缩短到0.005s交点频率从38Hz右移到55Hz相位裕度提升到22度进一步增加虚拟阻尼Dp从50提高到80低频段阻抗相位抬升约10度最终相位裕度稳定在33度以上。这个例子的核心思路是尽量让阻抗交点往高频方向移动因为电流内环的相位滞后比电压外环小控制带宽高系统在高频段反而更容易获得相位裕度。这也是为什么弱电网下与其拼命调电压环不如反向思考通过提高电流环带宽把交点推到电流环主导的频段。5. 知行合一的踩坑记录与调试建议5.1 扫频数据不干净怎么办扫频最烦的问题就是曲线毛刺多看不出趋势。我碰到的第一个坑是FFT频率泄漏。当时扫出来的阻抗曲线在50Hz附近有一堆毛刺排查下来发现是没有加窗函数基波成分的能量泄漏到了相邻频点。换成汉宁窗之后毛刺立刻消失。第二个坑是扰动幅值的选择。一开始我用1%的扰动扫到高频段时信噪比明显不足阻抗幅值乱跳。后来把幅值提高到5%高频段的数据才稳定下来。不同频率段可能需要不同的扰动幅值低频段用1%高频段用3%到5%这样可以在不引起非线性的前提下保证高频信噪比。第三个坑是仿真时长不够。频率越低需要记录的周期数越多。比如扫5Hz的扰动记录0.2s数据只有1个完整扰动周期FFT结果基本没法用。低频段我至少记录1s的仿真数据保证5Hz扰动有5个完整周期。这很费仿真时间但数据质量是拿得出手的。第四个坑是扰动注入与基波的不一致。如果你在abc三相中注入扰动时三相之间相位不是严格的120度会导致正负序分量互相混叠。我建议用对称分量变换之前先检查一下注入扰动信号的相对相位确保是标准的正序或负序。5.2 双闭环整定的顺序与经验值双闭环参数整定我推荐从内到外就是先电流环后电压环最后再动功率环这个顺序不能乱。电流环整定时先只给电压环一个固定的输出电压指令让电流环单独响应观察电流阶跃响应的超调和调节时间。整定之后电流环带宽应该落在开关频率的1/10到1/5之间。10kHz开关频率的话电流环带宽做到1kHz左右比较合适再高容易引入噪声和延迟不稳定。电压环整定在电流环完成之后进行带宽要留出足够的分离度一般取电流环带宽的1/5到1/3。比如电流环带宽1kHz电压环带宽做到200Hz到300Hz。带宽太接近两个环路的谐振峰会叠加阻抗曲线上会出现一个很尖锐的凸起极易触发振荡。功率环的虚拟惯量和阻尼系数可以根据有功阶跃响应来调。惯量越大响应越慢频率变化越平缓阻尼越大振荡衰减越快。但这两个参数对阻抗的影响主要在几赫兹以下的低频段对并网稳定性的直接影响不如双闭环那么集中。这里给一组我常用的初始整定参考值以30kW、380V、10kHz开关频率为例参数经验值说明电流环Kpc3~8由电感和期望带宽估算再细调电流环Kic100~200时间常数约5~10ms电压环Kpv1~3由滤波电容和期望带宽估算电压环Kiv50~150电压环时间常数约10~20ms虚拟惯量J0.2~1 kg·m²根据额定容量与惯性时间常数换算阻尼系数Dp30~80根据系统阻尼比需求整定需要强调这组值只是起点必须根据实际主电路参数重算不能照抄。5.3 仿真平台对比Simulink、Plecs、PSCAD怎么选这三个平台我都用过各有优劣最终要看你做什么。Simulink的Simscape Electrical生态最全VSG控制算法的各种模块都有现成的搭起来直观文档资料最多遇到问题随便一搜就有答案。缺点是模型一大仿真速度明显变慢批量扫频很痛苦。Plecs编译速度快和Simulink相比更适合跑开关级模型和批量参数扫描。它的热词现在越来越火《Plecs仿真与实战从建模到高端应用》这类资料也越来越多。如果你主要做变流器级控制Plecs是效率最优解。缺点是用例相对小众调试经验要靠自己积累。PSCAD则更适合电磁暂态研究比如雷击、短路故障、过电压这类毫秒级的暂态过程。但做阻抗扫频这种频域分析PSCAD的处理能力不如前面两个灵活。我的建议是教学、系统性学原理用Simulink项目验证、批量参数优化用Plecs做电磁暂态配合工程用PSCAD。三者是互补关系不是替代关系。最后分享一个我的个人体会。扫频这套方法看着是理论和仿真的活儿但它对现场调试的指导价值远超我最初的预期。去年我参与一个微电网项目并网逆变器在并网瞬间反复出现十几赫兹的功率振荡现场工程师调了一个星期都没解决。后来我把VSG模型搭出来做了一次完整的序阻抗扫频发现并网瞬间的等效电网阻抗比设计值大很多阻抗交点落在了功率环带宽内的低频频段相位裕度几乎为零。调整虚拟惯量并提高阻尼系数之后振荡问题直接消除。事后想想如果没有阻抗视角我们可能还在盲目调PI参数不知道要折腾多久。这个例子让我意识到阻抗扫频不只是论文里的分析工具它就是工程现场诊断振荡问题的利器。希望这篇关于VSG序阻抗扫频、时域稳定性分析和建模仿真的经验总结能帮你在做并网稳定性分析时少走弯路。