资讯动态

同步电机与构网型变流器频率稳定性仿真:虚拟惯量对比分析

发布时间:2026/10/21 19:02:36 来源:尧图企业网站定制
之前有个做新能源并网控制的朋友问我“旋转变量惯性跑哪去了”他刚接手一个项目需要评估高比例新能源接入后电网的频率抗扰动能力。聊到最后问题落在一个点上——用什么方式在软件里把“转子的物理惯量”和“变流器的虚拟惯量”放在同一个仿真环境里对比。这正是这个标题的核心同步电机与构网型变流器的频率稳定性研究基于Simulink仿真和Matlab代码。这篇内容适合电气工程研究生、新能源变流器开发者、做微电网或独立电网的频率控制工程师也适合刚接触构网型控制、想从仿真层面快速建立直观理解的人。1. 为什么构网型变流器会成为研究焦点1.1 新能源渗透率提升带来的频率难题传统电力系统里同步发电机的转子本身就是一块巨大的“储能铁块”。电网频率波动时转子通过改变动能来吸收或释放能量这个过程直接响应、无需通信本质上是一个物理层面的天然负反馈。但光伏和风电大量接入后系统里“有转子”的机组比例越来越低取而代之的是电力电子变流器。多数变流器采用跟网型控制Phase-Locked Loop 电流内环它的本质是把自己当成一个电流源跟着电网电压相位走。换句话说电网频率跌了它不会本能地释放转动惯量而是被动等待指令。于是出现了一个经典困境——系统总惯量下降同样的扰动比如一台大机组跳闸或负荷突增会引起更大的频率变化率RoCoF和更深的频率跌落。频率稳定性的研究从“大电网稳定校核”慢慢变成“新能源场站也必须参与”的问题。构网型变流器GFM正是为了把同步电机的这种物理优势“翻译”成控制算法让变流器在电压和频率层面主动建立参考而不是被动跟随。1.2 跟网型与构网型控制思路的分水岭跟网型控制的核心是锁相环。锁相环测到电网相位电流环跟踪给定指令功率响应速度很快但缺少“惯性”这个中间缓冲环节。构网型控制则完全不同它把变流器模拟成一个“虚拟同步机”内部有一条转子运动方程给定有功指令、虚拟惯量、阻尼系数计算出虚拟功角然后直接输出电压相位。这两者的区别可以类比成“公交车司机”和“代驾”跟网型是代驾得先看清路况、再决定往哪打方向盘构网型是公交车司机自己握着方向盘定义行驶轨迹乘客负荷上下车造成的扰动由发动机和车身质量来缓冲。构网型变流器输出的是一个电压源特性具备内阻能自然地分担负荷变化。从仿真层面讲跟网型模型的复杂度主要在锁相环和电流环的带宽配合上而构网型模型的关键则在虚拟转动方程的参数整定、功率外环与电压电流内环的级联稳定性。这篇博文后面的仿真搭建都是围绕构网型的这条主线来的。2. 频率稳定性的物理基础必须吃透的方程2.1 转子运动方程——同步电机频率响应的“质量-弹簧”模型如果只记住一个公式那就是转子运动方程摇摆方程[ 2H \frac{d\omega}{dt} P_m - P_e - D(\omega - \omega_0) ]H是惯量常数秒表示在额定转矩下转子从静止加速到额定转速所需的时间。P_m是机械功率P_e是电磁功率D是阻尼系数。这个方程的本质是牛顿第二定律在旋转坐标系下的表达转矩不平衡 转动惯量 × 角加速度。在Simulink里搭同步电机模型时我习惯把机械功率和电磁功率分别计算出来经过一个传递函数块得到角速度偏差。关键点是H值越大同样的功率缺额产生的频率变化率越小但恢复时间变长D值越大振荡衰减越快但稳态频率偏差会变大。这两者的矛盾是频率稳定研究的核心张力之一。同步电机的频率响应不是一个纯一阶惯性它包含励磁系统的电压调节、调速器的一次调频、负荷自身的频率调节效应。仿真的时候如果只搭一个转子运动方程得到的频率曲线会很“干净”但和真实系统差异大。所以在Simulink里建议至少带上调速器模型如TGOV1和负荷模型频率响应曲线才会呈现教科书里的那种“先跌后回升再振荡收敛”的形状。2.2 构网型变流器的虚拟惯量把方程搬到算法里构网型变流器的常见实现是虚拟同步机VSG控制或 droop 控制。两者本质上都是把转子运动方程离散化到数字控制器里[ J \frac{d\omega}{dt} P_{ref} - P_e - D_p(\omega - \omega_0) ]这里的J不再是物理转动惯量而是虚拟转动惯量单位是kg·m²跟H的关系是 ( J 2H \cdot S_{base} / \omega_s^2 )。在Matlab代码里我通常直接用标幺值形式来实现避免单位换算出错function [theta, omega] vsg_swing_equation(P_ref, P_e, H_virtual, D_p, omega_0, Ts) % 转子运动方程的离散化实现 % 输入: P_ref 参考有功, P_e 实测有功, H_virtual 虚拟惯量常数(秒) % D_p 阻尼系数(pu), omega_0 额定角速度(pu), Ts 采样时间 persistent omega_state; if isempty(omega_state) omega_state omega_0; end % 标幺值形式的摇摆方程: 2H * d(omega)/dt P_ref - P_e - D_p*(omega-omega_0) d_omega (P_ref - P_e - D_p * (omega_state - omega_0)) / (2 * H_virtual); omega_state omega_state d_omega * Ts; theta theta_accumulate(omega_state); % 角度积分 end构建虚拟惯量的时候一个常见的坑虚拟惯量不能简单取“我觉得差不多大就行”的值。惯量小了频率变化率大构网优势体现不出来惯量太大响应慢容易和电压环、电流环发生低频振荡。我在仿真里测过一组对比H从2秒调到8秒后负荷突增情况下的RoCoF从0.8Hz/s降到0.25Hz/s看起来漂亮但系统在0.6Hz附近出现了一组明显的功率振荡持续了十几秒才衰减完。这就是“惯量不是越大越好”的直观证据。3. Simulink仿真建模从同步电机到构网型变流器3.1 同步电机模型的搭建要点在Simulink里搭同步电机模型有两条路直接用Simscape Electrical的预设模块或者用Simulink基础模块从数学方程自行搭建。直接用预设模块上手快参数设置在电机子模块里能看到d轴、q轴电抗、励磁电压等参数。我更推荐用预设模块做系统级仿真但有一个前提你必须清楚每个参数背后的物理意义否则调参就是盲调。同步电机模块的输入一般有两个机械功率Pm或转速偏差和励磁电压Efd。输出包括电磁功率Pe、转速ω、功角δ等。机械功率来自调速器励磁电压来自AVR。标准做法是搭一个完整的调速器-励磁系统闭环调速器模型检测转速偏差通过PID或斜坡函数生成机械功率指令限幅后送入电机模块。AVR模型检测机端电压与参考电压比较经PI调节器生成励磁电压。一个容易被忽略的点是基准值。Simulink的电机模块默认用的是SI单位制但控制系统的PI参数很多是用标幺值整定的。仿真之前先明确系统的基准容量S_base和基准电压U_base把阻抗、时间常数的标幺值都换算好再填进去否则容易出现“PI参数怎么调都不稳”的怪问题。3.2 构网型变流器核心控制实现构网型变流器在Simulink里一般分三部分电压电流双环控制、功率外环VSG/Droop、滤波器与电网接口。功率外环的作用是计算虚拟角速度和虚拟功角输出的θ作为Park变换和反Park变换的基准角。这里和跟网型最大的区别出现了跟网型用锁相环输出的相位作为坐标变换角度构网型用自己积分出来的虚拟功角作为角度基准。锁相环此时退化成“观测电网状态”的工具而不是必需的同步环节。电压电流双环电压外环控制滤波电容电压跟踪指令值电流内环控制滤波电感电流输出调制波给PWM发生器。功率外环的输出是虚拟电动势的幅值和相位。幅值由无功-电压下垂控制生成相位由VSG的摇摆方程生成。滤波器参数的设计直接决定控制效果。LCL滤波器的谐振频率一般在1kHz到2.5kHz之间低于PWM开关频率的一半高于电流环截止频率。设计原则是谐振频率要有足够的裕度避免和电流环带宽重叠导致振荡。电感值取0.1mH到0.5mH电容值根据无功容量选取一般在滤波器无功功率不超过额定功率的5%为宜。3.3 关键参数设置与算例为了后面调试方便我这里给出一个完整的参数算例读者可以直接拿去用系统额定容量10kVA额定电压380V频率50Hz直流侧电压750V滤波电感L1 0.4mH滤波电容C 30uF陷波电阻Rd 2ΩVSG参数虚拟惯量常数 H 3s阻尼系数 D 20 pu输出功率基准下电压双环外环带宽约100Hz内环带宽约600Hz无功-电压下垂系数2%即无功功率从0变化到额定值时电压幅值变化2%把这些参数填进Simulink之前先在Matlab脚本里定义一个初始化文件把所有参数以变量的形式写入工作空间。这样做的好处是改参数时不需要在Simulink模型里翻找常量块只需要改初始化脚本重新运行一次即可。下面是一个参数脚本的片断%% VSG参数初始化 S_base 10e3; % 额定容量 VA V_base 380; % 线电压 V f0 50; % 额定频率 Hz omega_s 2*pi*f0; % 同步角速度 rad/s H_virtual 3; % 虚拟惯量常数 秒 D_p 20; % 阻尼系数 pu L_f 0.4e-3; % 滤波电感 H C_f 30e-6; % 滤波电容 F R_d 2; % 阻尼电阻 Ohm Kp_u 0.5; Ki_u 0.35; % 电压环PI参数 Kp_i 3.0; Ki_i 70; % 电流环PI参数这里有个经验值给大家作参考电流环PI参数的积分系数通常比比例系数大一个数量级左右电压环带宽要远低于电流环带宽。如果电流环响应太慢VSG输出的电压会失真如果电压环太慢负载变化时电压波动大整个系统的动态响应就差。4. 频率稳定性仿真实验案例拆解4.1 负荷突增场景频率跌落的动态过程搭建一个场景同步电机和构网型变流器并联带负载初始稳定运行在50Hz。在t 2s时突增20%额定功率的负荷观察频率的动态响应。同步电机侧机械功率无法立刻跟随负荷变化转子动能转化为电磁功率频率先快速跌落。调速器检测到频率下降后逐渐增加进汽量频率开始回升。由于调速器的机械惯性回升过程会有一定超调随后逐渐稳定在略低于50Hz的稳态值因为一次调频是有差调节。构网型变流器侧同样的负荷增量VSG的虚拟转子同样表现出“先跌后升”的动态但频率跌落的形状和同步电机有很大差异。由于虚拟惯量常数H是人为设定的可以做到和同步电机的H等值这样频率变化率就非常接近。阻尼系数D如果和同步电机的阻尼等效那振荡衰减速度也一致。我在仿真中重点对比了两种工况。工况一同步电机带20%负荷、构网变流器带80%负荷负荷突增10%。工况二两者比例互换。结果不出所料构网变流器占比高的系统频率跌落更深、恢复更慢。原因一目了然虽然VSG提供了虚拟惯量但这个惯量毕竟是被算法造出来的受限于直流侧电容能提供的能量支撑。如果把直流电压波动引入模型会发现频率跌得最猛的时候直流电压也压降得厉害。仿真里的直观表现是变流器的输出频率响应在扰动后会出现一个额外的“滞后”——这就是直流母线能量支撑上限在起作用。研究构网型频率稳定性的时候这条从转子运动方程到直流侧电容能量的耦合路径很多初学者会忽略。4.2 惯量下降与阻尼不足的振荡问题构网型变流器比例增加后系统总惯量下降仿真会自动呈现出两个典型问题一是RoCoF超标。在某些运行工况下负荷突变5%就可能导致频率变化率达到1Hz/s以上这在真实电网中是不允许的。仿真波形上可以看到频率曲线在扰动后几乎是一根垂直线往下掉。二是阻尼不足引起的功率振荡。VSG的阻尼系数D如果设得太小有功功率在扰动后会以低频率通常0.5Hz到1.5Hz振荡振荡源就是虚拟摇摆方程的第二阶极点。这时可以通过增大D来增加阻尼但代价是稳态频率偏差变大。我记得有一次调试中为了抑制一个0.8Hz的功率振荡把D从14调到30后振荡确实消失了但同样的负荷扰动稳态频率偏差从0.12Hz变成了0.29Hz这就是阻尼和一次调频能力的直接平衡。4.3 不同控制参数的对比分析我在仿真里做了一组扫描分析三个参数分别取小/中/大三档记录频率最低点nadir、RoCoF和调整时间参数取值RoCoF (Hz/s)Nadir (Hz)恢复时间 (s)H2s小0.8249.315.2H4s中0.4349.507.8H8s大0.2149.6212.3D10小0.4349.3811.5D20中0.4349.507.8D40大0.4349.454.6看出来规律了吗H主要影响RoCoFD主要影响振荡收敛速度但较大的D并不一定改善Nadir——因为阻尼项在频率偏离额定值之前就开始起作用某种程度上“拖住了”频率的回升。这也是我踩过坑之后才确认的在VSG参数整定时不要盲目追求大阻尼要结合负荷扰动量级和允许的频率偏差范围来综合考虑。5. 常见模型收敛问题与调试避坑指南5.1 Simulink仿真不收敛的排查思路构网型变流器模型经常出现“仿真刚跑几步就报错”或者“代数环无法求解”的问题。最常见的起因是功率测量环节和控制器之间的代数环。解决办法是给功率测量加一个低通滤波器把测量延迟1~2个仿真步长或者使用Simulink的Unit Delay块来打破代数环。从原理上讲任何物理系统都有测量延迟加这个滤波器反而更接近真实情况。另一种不收敛的原因是PWM调制频率和仿真步长不匹配。PWM载波频率如果是10kHz仿真步长至少要设置到1e-6秒否则三角波信号在采样点上失真严重调制波容易出现尖刺。我用的是定步长ode3求解器步长设为2e-6秒PWM频率10kHz时波形质量已经不错。如果使用变步长求解器在开关切换瞬间容易反复缩小步长仿真速度慢得离谱。5.2 锁相环在弱电网下的失效问题构网型系统本身不需要锁相环来同步但如果保留一个锁相环用于状态监测或模式切换逻辑弱电网下短路比SCR小于2锁相环会出现严重的动态耦合问题。锁相环带宽如果设置得和VSG的功角振荡频率接近两者会发生交互振荡。我调试某次仿真时系统在电网电压跌落10%后出现了频率振荡查了一圈发现是锁相环带宽设成了15Hz和VSG的虚拟振荡频率2Hz附近的谐波分量相互作用。把锁相环带宽降到5Hz振荡立刻消失。这个藕断丝连的问题提醒我即使锁相环不是主控制通道它也绝对不能成为被忽略的背景板。5.3 滤波器和控制参数整定的经验滤波器参数整定直接关系到两个指标输出电流的谐波含量和控制的稳定性。LCL滤波器在谐振点附近会有180度相角跳变如果不对它做阻尼处理电流环的设计就非常困难。我在模型里采用的是无源阻尼串联电阻这样设计简单直观代价是大约1%~2%的效率损失。如果采用有源阻尼即在控制算法里对电容电流做额外反馈初次调试容易出现负阻尼——谐振峰的尖刺反而变大。这时候用Bode图检查开环传递函数观察相角裕度在设计频率范围内是否保持在45度以上。我的原则是带宽留足、阻尼配对、谐振点避开控制带宽的1/2以上。这三个条件都满足时变流器的输出波形在现场示波器上基本是干干净净的。6. 从仿真到实测几个仿真之外的重要提醒6.1 仿真模型验证的必要性很多人在Simulink里搭完模型波形漂亮就认为研究完成。但仿真模型的准确性需要验证将仿真得到的频率响应与理论计算值对比或者与实验平台的测量数据对比。如果同步电机模型的等效惯量和调速器参数不是基于真实设备标定那么仿真的频率跌落深度和恢复时间都有可能是错的。我在完成一个微网仿真项目后把同样的VSG控制参数烧录到一台30kVA的实验平台上做负荷突增实验。结果发现仿真里的频率恢复时间比实测快了约15%。原因在于仿真里没有建模控制器的计算延迟和PWM死区效应。实验平台控制周期是100微秒PWM死区设为3微秒这些细节在初始仿真中都被忽略了。后来在仿真里加入了一阶惯性环节来等效这些延迟仿真和实验的误差才降到3%以内。6.2 参数适应性分析构网型控制参数在额定工况下表现良好并不意味着在大范围工况变化下依然稳定。有些参数在满负荷下刚好在轻载时却会导致振荡或电压稳态偏差超标。建议做参数适应性扫描把虚拟惯量、阻尼系数、无功下垂系数分别扫描10个档位在不同负荷水平下运行相同的扰动绘制三维稳定区域图。这项工作需要投入一些计算时间但成果极为实用——可以直接指导后续控制参数的分档切换策略。6.3 直流侧稳定性的联动分析研究构网型变流器的频率稳定性光盯着电流和频率是不够的。变流器能提供的虚拟惯量本质上由直流侧电容储存的能量支撑。如果直流母线电压崩溃虚拟转子方程的输出再漂亮实际功率也无法跟上。我建议仿真时把直流侧模型也搭进去容量按1J/VA来估算即在额定功率下直流电容储存的能量能维持约1秒的额定功率输出。这个值对应的时间常数恰好和惯量常数H在同一数量级。当H设置为3秒而直流电容只能支撑1秒的能量时系统在大的功率扰动下会出现频率和直流电压的耦合失稳。仿真波形上的典型特征是频率还没有跌到最低点直流电压已经先掉到保护阈值以下。这个现象很难在只关注交流侧的简化模型中看到但它恰恰是构网型变流器频率稳定性的核心物理边界。我在一个项目里把直流电容扩大了一倍同样的VSG参数下频率最低点从49.12Hz改善到49.38Hz提升效果比单纯调大虚拟惯量还明显。仿真做到这一步基本上就能把“频率稳定性”这个看起来很大的概念拆解成可以逐项验证、逐项调试的具体工程问题了。我个人的体会是构网型变流器的研究难点不在于算法本身有多玄妙而在于你要同时扮演好三个角色——懂物理的电机工程师、懂控制的电力电子工程师、懂系统分析的电网规划人员。Simulink仿真的价值就是把这三重视角压缩在一个可视化的环境里让它们互相对话。希望这篇内容能帮你把起步阶段的弯路绕过去。

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

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

免费获取报价 →
↑