ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

双馈风机VSG虚拟同步机控制:惯量J对频率动态响应的影响与Simulink仿真分析

双馈风机VSG虚拟同步机控制:惯量J对频率动态响应的影响与Simulink仿真分析 双馈风机、VSG、虚拟同步机、惯量J对频率的影响——这几个词放在一起基本就能定位到新能源发电并网控制里最典型的一类问题风机多了、同步机少了电网频率还撑不撑得住。这周我刚好把一个Matlab/Simulink仿真项目收尾模型核心是双馈风机转子侧变流器采用VSG虚拟同步机控制重点对比不同转动惯量J下系统频率的动态响应。这篇文章我会把项目从控制原理、参数设计、Simulink建模到结果分析讲透最后把踩过的坑也一并列出适合正在做风电并网仿真、微电网频率稳定方向的师弟师妹参考。1. 这个项目到底在解决什么问题1.1 双馈风机把电网频率“扔向”了电力电子设备先捋一下背景。双馈风机DFIG的核心结构是定子直接并网、转子通过背靠背变流器接入电网转子侧变流器控制转差功率实现变速恒频运行。好处是变流器容量只有机组容量的30%左右成本低、效率高这也是它在陆上风电里占比高的原因。但问题恰恰出在这个背靠背变流器上。转子回路被电力电子装置隔离后风轮和齿轮箱那部分机械转动惯量在电网看来是“不存在”的它不会像同步发电机那样在负荷突增、频率下降时本能地释放转子动能来阻挡频率下跌。大量双馈风机取代同步机组后系统的等效惯量快速下降频率变化率RoCoF会显著变大极端情况下第一轮频率跌落就能触发低频减载。所以风电并网研究这些年一直在做一件事用控制算法把“惯量”这个东西给虚拟出来。VSG虚拟同步机控制就是其中主流的一种它让变流器在外特性上主动模拟同步发电机的转子运动方程和调频调压特性。1.2 VSG要还原的正是同步机那套物理本能同步发电机并网运行时转子运动方程是天然存在的物理约束[ J\frac{d\omega}{dt}T_m - T_e - D(\omega-\omega_n) ]电网频率变化时转子转速不能突变电磁功率和机械功率之间的差额先靠转子动能来平衡。这个“先扛一段时间再慢慢调整”的过程就是系统惯性的来源。VSG的思路很简单粗暴在变流器的功率外环里写一个一模一样的转子运动方程用J和D两个参数人为制造出机电暂态特性然后让变流器输出电压的相位由这个虚拟转子的积分角度来决定。这样做的意义在于DFIG不再是一个单纯的电流源型并网单元而是一个在电网看来具有电压源外特性的电源。扰动发生时它会“惯性”地释放或吸收动能参与频率支撑和同步机的行为在电气层面是可类比的。1.3 用Simulink做什么、适合谁我这次做的模型属于“孤网/微电网模式下的并网控制仿真”双馈风机由VSG控制作为主电源直接带交流负荷不接无穷大系统。这种设定排除了大电网的钳位作用能最直接地看到VSG参数对系统频率的影响。仿真里通过改变虚拟惯量J对比负荷突增时的频率跌落曲线。这件事适合谁参考呢一是做风电并网控制课题的研究生二是想验证光伏、储能VSG控制是否也能迁移到风电上的工程师三是刚开始搭DFIG模型、对Simulink里变流器控制链路不熟的同学。项目不追求把调频调压做得多复杂但把原理、建模、参数、结果这条线完整跑通。2. 双馈风机VSG的整体控制方案2.1 系统拓扑与能量流向模型里的主拓扑是这样的风机叶轮捕捉风能经齿轮箱带动双馈异步电机转子定子直接并网转子经过背靠背变流器与电网交换转差功率变流器直流母线电压由网侧变流器GSC稳定转子侧变流器RSC负责输出电磁转矩和控制定子侧有功无功功率。在VSG改造之前RSC的功率外环通常是一个PI控制器接收有功功率指令和无功功率指令输出转子电流的d/q轴参考值。改造之后最关键的变化有两点有功外环由VSG的转子运动方程替代有功指令不再直接跟踪MPPT曲线上的功率值而是先经过虚拟转子运动方程得到虚拟角频率和相位电压相位不再依赖PLL锁相获取而是直接用VSG积分的θ作为坐标变换角度。这也是VSG和传统PQ控制的本质区别——PLL在功能上被虚拟转子替代了。GSC的直流母线电压控制不需要大改仍然用直流电压外环加电流内环。整体上VSG改造主要集中在RSC控制器的功率外环对硬件拓扑和底层电流环影响较小。2.2 转子侧变流器的VSG化改造我在模型中把RSC控制器分成了三层最外层是VSG算法层包含转子运动方程、虚拟调速器、无功电压控制输出两个关键物理量虚拟角频率ω_vsg和虚拟电动势幅值E。这里注意VSG的“电动势”并不是真正的转子励磁电动势而是一个控制中间量它决定了定子侧电压源特性。第二层是功率计算与指令生成层根据E、ω_vsg和机端电压测量值生成转子d/q轴电流的参考值。通常的公式是[ P_{ref}P_{mppt} k_\omega(\omega_n-\omega_{vsg}) ] [ Q_{ref}Q_{set} k_v(V_n - V_{meas}) ]也就是在MPPT和给定无功基础上叠加上频率/电压下垂补偿。最内层是dq旋转坐标系下的电流PI控制器加上解耦前馈项输出RSC的PWM调制波。这样分层的意义是仿真调试时可以先从内环开始验证电流响应再往外扩展功率外环和VSG环出了问题能快速定位是哪一层的参数不合适。2.3 VSG的有功-频率环和无功-电压环怎么搭有功-频率环直接取自同步机的转子运动方程[ J\frac{d\omega_{vsg}}{dt}\frac{P_{set}}{\omega_{vsg}}-\frac{P_{e}}{\omega_{vsg}}-D(\omega_{vsg}-\omega_n) ]其中P_set是给定的有功功率指令P_e是实测电磁功率D是阻尼系数J是虚拟惯量。这个式子的物理含义是当系统负荷增加、P_e大于P_set时虚拟转子转速下降频率跟着下降下降的速率由J决定下降的最终偏移量由D决定。无功-电压环则模拟同步机的励磁调节器[ E E_0 (k_p \frac{k_i}{s})(V_{ref} - V_{meas}) ]输出E作为虚拟电动势幅值参考。E通过磁链方程或简化模型换算成转子电流的d轴分量指令。从控制角度说VSG把DFIG从一个“快速跟随指令的电流源”变成了“具有内电势的电压源”代价是控制系统复杂度上升。尤其是虚拟角频率ω_vsg不是实时锁相得到的而是自身积分出来的在并网瞬间如果不做预同步处理会产生很大的冲击电流这属于一定要处理的细节后面会讲。3. 关键参数惯量J和阻尼D的量化设计3.1 虚拟转动惯量的物理意义与等效H值仿真里大家习惯直接给J一个数值单位是kg·m²。但J到底取多大合适很多人是瞎试的。要想让J有物理依据最好换算成电力系统惯量的标准定义——惯性时间常数H。[ H\frac{0.5J\omega_b^2}{S_B} ]其中ω_b是基准角频率S_B是额定容量。H的单位是秒它表示VSG在额定功率下能维持基准角频率运转多久。常规同步机组的H通常在2~10s之间风电场的VSG虚拟惯量也常常按这个范围来设定。我的模型基准容量是2MW电网额定角频率314.16rad/s。如果设定H4s反算出来的J大概是[ J \frac{2HS_B}{\omega_b^2} \frac{2 \times 4 \times 2\times 10^6}{314.16^2} \approx 162 \text{ kg·m}^2 ]注意这个J纯粹是算法里的一个数字不需要真的加飞轮。它的物理意义是让变流器的功率响应看起来像一台具有4秒惯性时间常数的同步机。3.2 J和D的动态响应关系把有功-频率环写成小信号形式忽略功率测量滤波等细节可以得到[ 2Hs\Delta\omega \Delta P_{set} - \Delta P_e - D\Delta\omega ]如果只考虑负荷阶跃扰动下频率的动态过程它就是一阶惯性环节[ \Delta\omega(s) -\frac{\Delta P}{2Hs D} ]时间常数是2H/D。H越大时间常数越大频率变化越平缓但过渡过程拖得越长D越大稳态频率偏差越小但同时也会增大等效阻尼。这里的核心矛盾是J决定了暂态过程中频率变化的快慢D决定了最终频率偏移的大小两者必须协同设计。实际调试中我喜欢先定D再定J。比如要让负荷突增10%时稳态频率偏差不超过0.2Hz也就是0.004pu按照下垂关系D≥0.1/0.00425取D30。然后再根据期望的RoCoF和时间常数选择H进而折算J。3.3 仿真参数的标幺化换算Simulink建模时如果直接把J的体积数值放进转子运动方程再和电磁功率的万单位混合运算很容易量纲出错。我的经验是VSG有功环内部全部用标幺值只在接口处做单位换算。具体来说功率都用额定容量归一化频率用额定频率归一化转子运动方程在标幺系下写作[ 2H\frac{d\omega_{pu}}{dt}P_{m,pu}-P_{e,pu}-D_{pu}(\omega_{pu}-1) ]这样设置的直接好处是H和D的取值与机组容量解耦结果可以直接和同步机对比。模型里我设计了三个惯量档位方案Jkg·m²等效Hs阻尼Dpu低惯量40130中惯量162430高惯量4051030三个方案D保持一致确保对比的是纯惯量差异。4. Simulink建模实操4.1 模型顶层架构与模块选型整个模型可以分为五块风轮机与传动链、双馈电机本体、背靠背变流器与RSC/GSC控制、VSG控制算法、交流电网与负荷。我用的模块基本都是Simscape Electrical早期版本叫SimPowerSystems里的标准件。DFIG本体选择“Asynchronous Machine”转子侧设置为外部电源接入模式。参数用标幺值填入极对数为3这样同步转速是1000rpm。由于DFIG变速范围一般在0.7~1.3pu额定风速附近转速工作在同步速附近转子转差功率很小符合双馈机组的典型工况。风轮机没有直接用Simulink内置模型而是自己写了一个MATLAB Function实现叶尖速比和桨距角到功率系数Cp的映射机械功率再乘到传动链转矩上。这样后面要改成减载运行或者加桨距角调频都方便。电网侧用一个三相对称电压源加等效阻抗模拟弱电网。负荷用Three-Phase Series RLC Load初始功率设为1.8MW2s时阶跃到2.0MW形成负荷突增10%的扰动工况。4.2 VSG控制模块的搭建细节VSG控制模块是模型的核心我用的是连续时间Simulink子系统里面几个关键点值得说第一转子运动方程用积分器实现积分器的输入是功率不平衡量与阻尼项的差再除以J。积分器的输出就是ω_vsg继续积分得到相位θ。注意这里必须处理积分器初值我把ω初值设为1pu即314.16rad/sθ初值根据仿真启动时电网电压相位设为零否则启动瞬间就有一个大误差冲击。第二虚拟功率计算不能直接用瞬时功率因为瞬时功率里有大量开关纹波。我在VSG反馈路径上加了一个低通滤波器截止频率设置在100~200Hz之间。没有这个滤波虚拟转子的频率波动会被PWM谐波污染波形很难看。第三有功-频率环末端必须加限幅。VSG输出的角频率要限制在0.95~1.05puP_set限制在±1.1pu防止负荷扰动过大时积分器饱和。Simulink自带的Integrator可以设置上限和下限别忘了勾选“Limit output”。第四也是最重要的VSG的θ替代PLL后用于RSC电流内环的Park变换。并网瞬间必须做预同步我的做法是仿真初始阶段先用一个PLL锁定电网相位待θ与电网相位差小于0.01rad后再切换到VSG积分角。切换用触发模块加延时开关实现。GSC的控制相对常规直流电压外环PI输出有功电流指令无功电流指令设为0。直流母线电压参考值设在1200V。GSC的电流环带宽要比VSG外环高一倍以上否则VSG功率摆动会直接反映到直流母线电压上影响控制稳定性。4.3 扰动工况设置与求解器配置仿真总时长我设置为12s2s前系统在初始负荷下运行到稳态保证所有状态量初始化完成第2s负荷突增第10s负荷恢复观察频率的恢复过程。求解器方面由于包含PWM和背靠背变流器的高频开关系统刚性比较强。我习惯用变步长ode23tb相对误差设1e-3最大步长限制为5e-5s。如果用离散求解器建议把采样时间设为1e-5s但仿真速度会慢得多。如果只是验证VSG控制逻辑、不关心开关纹波细节可以把平均模型开关模块开起来速度能提升好几倍。仿真结束前我建议把关键波形用“To Workspace”模块全部导出便于后期统一用MATLAB脚本画图对比。5. 不同惯量J的频率响应对比5.1 三种惯量方案的真实波形差异负荷在2s突增10%后三种惯量方案下系统频率的动态表现差异非常明显。我把结果导出后用MATLAB重画了曲线下面把趋势和数据说清楚。低惯量方案J40kg·m²H≈1s下频率几乎是瞬间开始下跌初始RoCoF非常大实测大约1.5~1.8Hz/s。频率在0.3s左右就跌到了最低点最大偏差接近0.3Hz。这个表现很像传统意义上“低惯量电网”的典型症状跌得快、跌得深、低频减载装置很容易误动。中惯量方案J162kg·m²H≈4s下初始RoCoF明显放缓大约0.4~0.6Hz/s频率最低点在0.8~1.2s之间出现最大偏差约0.2Hz。虽然最终稳态偏差和低惯量方案一样都由阻尼D决定但动态过程温和得多。高惯量方案J405kg·m²H≈10s下RoCoF进一步降到0.2Hz/s左右最低点出现时间推迟到2s以后。单纯从频率支撑角度大惯量确实让频率曲线更平缓给一次调频留出了充足响应窗口。5.2 从时域指标看惯量支撑的边界把三种方案的关键时域指标整理成表可以很直观地看到惯量J对频率动态的影响指标J40kg·m²H≈1sJ162kg·m²H≈4sJ405kg·m²H≈10s初始RoCoFHz/s1.5~1.80.4~0.60.15~0.25最低频率偏差Hz约0.3约0.2约0.15最低点出现时间s0.30.8~1.22.0~2.5稳态频率偏差Hz约0.16约0.16约0.16这里要注意一个容易被忽略的结论稳态频率偏差三个方案几乎一样因为稳态偏差主要由阻尼D决定和惯量J无关。J主要改变的是暂态过程也就是“频率怎么跌下去”。所以如果有人问“是不是J越大频率最终越不容易掉”正确答案是J越大频率跌落越慢、最低点越高但最终稳定值取决于调速器和阻尼参数。从支撑效果看增大J对限制RoCoF和最大频率偏差的作用是单调的但存在边际递减效应。J从40加到162效果非常明显从162加到405改善幅度就没那么大了而代价是动态响应显著变慢。5.3 J与D配合不当的振荡风险如果只增大J而不调整D会出现另外一个问题功率振荡。我在调试高惯量方案时把J直接拉到800kg·m²H≈20s但D保持30不变结果负荷扰动后电磁功率出现了明显的低频振荡振荡周期大约1.5s衰减缓慢。原因从控制理论上看很清楚J增大导致有功环时间常数变大系统等效阻尼比下降如果不相应提高D欠阻尼问题就会暴露。这个现象在实际工程里很重要。虚拟惯量不是越大越好它和阻尼之间需要一个匹配关系。从一阶近似模型2HsD来看等效时间常数是2H/D如果H20s、D30时间常数达到1.33s这个动态在电力系统里算比较慢了。一旦再叠加功率测量滤波和电流环延迟系统就有振荡的风险。我在最终对比方案里选了H10s作为上限就是为了规避这个问题。如果确实需要更大的虚拟惯量建议同步增大D或者给VSG加一个功率振荡阻尼环节用附加功率指令去反向抵消振荡模态。6. 实际坑位与调参心得6.1 建模阶段最容易翻车的三个地方第一是DFIG电机初始化报错。Simulink里Asynchronous Machine模块在仿真开始前需要做一次潮流初始化如果转子侧变流器没有设置好初始转子电流经常会报“Initialization failed”。我的解决方法是先把RSC和GSC都保持封锁状态让风机先作为鼠笼电机空载启动等定子电压基本建立后再投入转子侧励磁控制。这样做虽然多花了建模时间但能保证模型启动稳定。第二是VSG与电网的预同步问题。直接把VSG角度切到系统上几乎必然产生冲击电流轻则波形毛刺重则仿真发散。预同步电路其实不复杂启动阶段用PLL输出锁相角逐步把VSG的ω积分器和θ积分器的输出逼近到PLL值达到误差阈值后再无扰动切换。第三是坐标变换angle的一致性问题。Simulink库里面Park变换模块的方向约定并不统一dq轴方向选错功率正负号就会反VSG有功环反馈为负系统根本稳不住。调试时先给一个小功率指令检查P_e的正负号和大小是否符合物理预期确认无误后再接入完整VSG环。6.2 仿真不收敛和高耗时问题变流器仿真不收敛第一位的原因是步长和容差设置不当。ode23tb配合最大步长5e-5s是我这里比较稳的组合。如果你用的是离散模型PWM载波频率和采样时间要满足奈奎斯特条件5kHz载波对应采样时间至少1e-4s实际取2e-5s比较保险。仿真速度方面如果完整PWM开关级模型跑12秒需要很久我建议分批验证先开着平均开关模型把VSG参数调对再切回开关级模型做最终波形验证效率能提高不少。平均模型下不用等每个PWM周期都计算开关动作VSG的动态趋势是完全一致的。另外功率测量滤波的时间常数不能设得太大否则VSG环的相位裕度被吃掉很多容易振荡。我实验里100Hz左右的低通截止频率是比较折中的选择。6.3 参数修改与结果分析建议做J对比仿真时最忌讳的是只改J值然后希望所有波形自动合理。我建议每跑一组参数后都检查以下四个信号系统频率、VSG输出电磁功率、DFIG转子转速、直流母线电压。这四个信号能反映全局状态是否合理。例如增大J后如果电磁功率在负荷突增瞬间没有明显抬升说明VSG的惯性响应没有正确作用这时要检查虚拟功率P_e的反馈有没有接对、滤波时间常数是否过大。如果直流母线电压在扰动后出现大幅度尖峰说明GSC的直流电压控制器响应不够快需要提高外环带宽或增大直流侧电容。还有一个小技巧做对比曲线时把所有方案的频率波形放在同一张图里用legend区分颜色。提交论文或报告时还可以在2s扰动时刻附近加一个局部放大子图让RoCoF的差异更直观。这个细节很多同学不注意但审稿人很吃这一套。我个人的调参顺序建议是先用中等惯量设定H≈4s左右把模型跑通确认VSG环稳定、频率和功率波形合理然后逐步增大J观察频率曲线的变化每次只改一个参数记录波形并导出数据最后再反过来单独减小D看稳态偏差变大、振荡加剧的临界点在哪。整个过程有点像给真实机组做一次参数扫描实验只是台架换成了Simulink模型。做完这个对比仿真我最大的体会是虚拟同步机控制本质上是用算法给电力电子设备“补上”同步机天然的机械暂态过程J和D这对参数直接塑造了系统对扰动的“性格”——J决定反应快慢D决定最终站稳的位置。两者必须一起调只看其中一个数值没有意义。如果你后面的方向是想做惯量自适应控制这个模型就是很好的基础把J从定值改成根据频率偏差和RoCoF实时变化的函数代码量不大但能显著提升频率支撑效果这也是目前风电并网控制研究里相当活跃的一个方向。
返回列表