双馈风机参与一次调频的Simulink建模与四机两区域仿真分析

📅 发布时间:2026/10/8 16:15:31
双馈风机参与一次调频的Simulink建模与四机两区域仿真分析
这两年在电力系统仿真圈子里风电并网相关的需求肉眼可见地多了起来。尤其是“双馈风机参与系统一次调频”这个方向——风电渗透率一高系统的惯量和调频能力被摊薄纯靠同步发电机扛频率已经不够了。我最近在Matlab/Simulink里把双馈风机接入经典的四机两区域模型完整跑通了带一次调频附加控制的仿真所有参数都已调好直接能出结果。这篇把建模思路、控制回路设计、参数整定和调试过程中踩过的坑从头到尾捋一遍给正在做风电频率支撑或者电力系统动态仿真的同行一个可参考的完整方案。1. 先搞清楚为什么双馈风机天生不具备一次调频能力很多刚接触这个方向的人容易犯一个思维惯性错误认为双馈风机跟同步发电机一样频率低了会自动把转子动能释放出来支撑电网。实际上并不是这样这也是整个课题成立的出发点。1.1 双馈风机的“转速-频率解耦”特性双馈风机的结构决定了它的特殊性定子直接并网转子通过背靠背变流器接回电网。转子侧变流器RSC可以主动调节转子电流的频率使得转子的机械转速和定子侧的电气频率解耦。换句话说风机运行在9~12 m/s的风速下转速可以随风速变化但定子侧输出的依然是50 Hz工频。这个特性在正常发电时是优点但在频率事故发生时就成了问题电网频率下降同步机因为有转子惯量转速会自然降低并释放动能而双馈风机的变流器控制回路会立刻维持定子侧频率输出转子转速几乎不受影响——风机对频率变化“视而不见”。我用一句话总结这个过程同步机是靠物理惯性被迫参与频率响应双馈风机是靠电力电子隔离主动回避了频率响应。1.2 一次调频的物理本质用动能或备用容量换频率支撑一次调频的物理本质并不复杂。系统频率反映的是全网旋转电机的动能平衡负荷增加或者发电机跳机有功出现缺额所有同步机的转速同步下降频率随之跌落。同步机调速器检测到转速偏差后调节汽轮机/水轮机的进汽量或进水量增加原动机输出功率把频率拉回一个可接受的范围。整个过程发生在秒级时间尺度大约需要5~30秒完成主要响应。关键点在于一次调频靠的是“现有的旋转备用”或“转子动能暂态释放”。同步机的调速器能让发电机短时超发比如汽轮机可以短时过载或者依靠转子转速下降释放动能。双馈风机要参与这个过程有两条路通过控制算法模拟同步机的惯性响应让转子转速在频率下降时主动降低释放动能让风机预先减载运行比如只发80%的可用功率保留20%的备用容量频率下降时通过附加控制把备用功率顶上去。这两条路在Simulink里都能实现区别在于前者是暂态支撑、后者是稳态支撑工程上一般结合使用。1.3 三种常见的DFIG一次调频控制方式对比我在实际仿真和查阅文献的基础上把主流的DFIG一次调频控制方式整理成了一张对比表控制方式原理优点缺点虚拟惯性控制附加功率正比于频率变化率dΔf/dt能有效抑制频率下降速度改善频率最低点频率变化剧烈时容易过激可能引起功率振荡下垂控制附加功率正比于频率偏差Δf稳态调频效果明显逻辑简单对改善频率变化率帮助有限需配合备用容量联合控制惯量下垂二者叠加兼顾动态和稳态工程常用参数整定麻烦容易互相影响我最终采用的是联合控制这也是目前文献和工程实践的主流方案。Simulink实现时就是在DFIG转子侧变流器的有功功率参考值上叠加一个附加功率增量ΔPΔP的表达式为ΔP -K_in × dΔf/dt - K_d × Δf其中K_in是虚拟惯性系数K_d是下垂系数Δf是系统频率偏差标幺值。注意这里是负号因为频率下降Δf为负时要增加出力ΔP为正。这个控制逻辑是整个模型的核心后面的四机两区域系统、DFIG本体模型全都是为了验证这个附加控制的有效性而搭建的。2. 四机两区域模型把电网搭出来才能谈频率响应做频率相关研究孤立的单机无穷大系统虽然简单但说服力不够。工程上更认可的是经典的四机两区域模型Kundur Two-Area System它能体现区域间的功率交换、联络线潮流和频率动态而且参数在电力系统领域的教材里是公开的审稿和答辩都好说话。2.1 四机两区域的结构与功率平衡四机两区域系统的拓扑很规整区域1有两台同步机G1、G2区域2有两台同步机G3、G4两个区域之间通过一条双回联络线连接。负荷集中在区域1的母线7和区域2的母线9。搭建之前必须先做功率平衡估算。系统基准容量取100 MVA初始运行点大致如下G1出力约700 MWG2出力约700 MWG3出力约716 MWG4出力约700 MW母线7负荷约967 MW母线9负荷约1767 MW区域间的联络线功率从区域2流向区域1约200 MW量级。这个初始运行点直接影响后续DFIG接入后的潮流计算。如果功率不平衡Simulink的潮流初始化会直接报错后面所有仿真都跑不起来。我的习惯是先用手算一遍功率平衡再进Simulink核对Bus电压和功率输出。2.2 同步机、调速器与励磁系统的Simulink选型四机两区域模型在Simulink里的搭建我推荐直接用Simscape Electrical原Specialized Power Systems库中的同步电机模块。具体选型思路如下发电机本体用“Synchronous Machine pu Fundamental”模块参数按经典四机两区域的标幺值设置基准容量900 MVA额定电压20 kV。这个模块能输出电磁功率、转速、内电势等信号便于后续观测。调速器用“IEEE Type 1 ST1A”或者更简单的“Governor”模块。四机两区域模型中的同步机要体现一次调频能力调速器必须有否则系统频率在负荷扰动后无法恢复平衡。调速器的下垂系数droop通常设为5%这是电力系统的经典配置。励磁系统用“Excitation System”模块典型参数取自IEEE DC1A或AC1A励磁模型。励磁系统的主要作用不是调频而是维持机端电压但它的动态特性会间接影响系统阻尼所以不要忽略。这里有一个容易踩的细节同步机模块的初始状态变量转子角度、转速、励磁电压必须与潮流计算的结果一致。Simulink的Powergui工具里可以自动完成潮流初始化和状态初始化但前提是你在模型里把负荷、发电机的有功无功都设置准确。2.3 负荷与联络线参数的设置思路负荷模块用“Three-Phase Series RLC Load”母线7的负荷967 MW 100 Mvar母线9的负荷1767 MW 100 Mvar。注意这里的无功是滞后无功直接影响电压分布不能忽略。联络线用分布式参数线路模型Distributed Parameters Line或PI型等值线路。四机两区域的经典参数中联络线电压等级230 kV长度大约200 km量级正序电抗约0.00053 p.u./km基准100 MVA下。两个区域内部母线之间的线路较短如果用PI模型每段线路分成两个半节串联就行。在做负荷阶跃扰动仿真时我的做法是给母线7并联一个额外的阶跃负荷比如100 MW在仿真时间2秒时投入模拟区域1突增负荷的场景。这个操作在Simulink里可以直接在负荷模块上并联一个“Three-Phase Breaker 电阻/电感”组合实现。3. 双馈风机模型与一次调频附加控制的实现四机两区域模型只是提供了一个频率响应测试平台真正的核心工程在于DFIG模型搭建和附加控制回路设计。3.1 DFIG本体模型Simulink自带库还是自己搭DFIG模型在Simulink里有两种选择第一种直接用Simscape Electrical自带的“Wind Turbine Doubly-Fed Induction Generator”模块。这个模块集成了风力机气动模型、传动链、DFIG电机本体、背靠背变流器RSC和GSC以及PWM调制参数按经典1.5 MW机组标定仿真模型的可靠性已经有大量文献验证。我的建议是第一次做不要自己从零搭电机模型直接用自带库跑通整体流程后面再根据需要修改内部细节。用这个模块时需要注意一个关键点模块内部的桨距角控制和最大功率追踪MPPT已经默认实现风机在额定风速以下自动追踪最优转速。我们如果要加一次调频控制需要在外部把附加功率信号注入到有功功率参考值上而这个模块默认不暴露这个端口需要做一些信号路由处理。我的做法是找到模块内部的“Power Reference”信号线把附加控制输出从这里叠加进去。第二种自己搭建DFIG矢量控制模型。这种方式灵活度高可以完全掌控转子侧和网侧变流器的控制逻辑但工作量很大而且DFIG电机的磁链模型参数整定容易出错。我不是很建议第一次做就自己搭除非你是想研究变流器内部控制细节而不是系统级频率响应。我这里用的方案是以自带DFIG模块为基础外部封装一次调频控制子系统通过“Goto”和“From”信号标签把频率偏差信号和功率参考信号连接起来。这样改动最小出波形最快。3.2 转子侧变流器的功率控制环与附加频率环DFIG转子侧变流器的核心功能是解耦控制有功功率和无功功率通常采用定子磁链定向矢量控制策略。有功功率外环的输出是转子电流的q轴参考值无功功率外环的输出是转子电流的d轴参考值。正常运行时有功参考值Pref来自MPPT计算出的当前风速下的最大功率点。加入一次调频附加控制后问题来了——这里的Pref不再来源于MPPT而是应该在MPPT的基础上再叠加ΔP。具体Simulink实现步骤用“PLL”模块或者直接测量同步机转速作为系统频率信号。计算频率偏差Δf用实际频率减去额定频率50 Hz或60 Hz转换成标幺值。对Δf求导得到dΔf/dt这一步用“Derivative”模块但要注意实际采样信号会有噪声求导前必须加滤波器。按ΔP -K_in × dΔf/dt - K_d × Δf计算附加功率。对ΔP做限幅处理。因为DFIG变流器的过载能力有限我通常把附加功率限制在风机额定功率的10%~15%范围内。将Pref_new Pref_MPPT ΔP 作为新的有功参考值送入矢量控制环。这里我补充一个工程细节频率测量环节不要直接用PLL的输出做求导PLL输出本身就带纹波求导后噪声会被放大附加控制回路会抖得厉害。我实测下来在PLL后面接一个截止频率10 Hz左右的二阶低通滤波器再送入求导环节效果会稳定很多。3.3 减载运行风机有备用容量才能谈调频这里必须说一个很多初学者忽略的前提如果风机一直在MPPT点满发运行频率下降时你根本没有额外功率可以顶上去。虚拟惯性控制顶多能短暂释放一点转子动能但几秒钟内转速就掉下来了后续支撑力就跟不上。所以工程上一般有两种减载备用方案超速减载让风机转速高于MPPT最优转速运行风机出力下降到可用功率的90%左右预留10%备用。这种方式适合中低风速段因为转速还有上升空间。变桨距角减载增大桨距角让风能利用系数Cp下降人为降低出力。这种方式适合高风速段接近额定风速时因为此时转速已经接近上限超速空间不大。在Simulink的自带DFIG模块中默认是MPPT控制。如果要模拟减载运行可以在气动模型和MPPT控制之间做改动把MPPT输出功率乘以减载系数比如0.85同时在转速参考值上做相应调整。但这个改动需要深入模块内部操作起来比较繁琐。在四机两区域模型中做系统级仿真时我一般用一个简化处理直接把DFIG的初始功率设为额定值的80%通过风速和减载系数控制然后在出结果时说明这是在减载工况下的响应验证。这样既保留了研究重点一次调频控制策略又避免了陷入风机本身控制细节的泥潭。4. 仿真工况设计与结果对比分析模型搭好了控制回路加好了接下来就是设计仿真工况验证一次调频控制到底有没有效果。4.1 负荷阶跃扰动工况怎么设置我设计的标准工况是这样的四机两区域系统稳态运行区域1的母线7负荷突然增加100 MW大约占区域1总负荷的10%在2 s时刻投入阶跃负荷仿真时长设为30 s观察频率动态过程。对比组设置三组基准组DFIG接入但不启动一次调频附加控制即附加控制开关闭合ΔP恒为0此时风机像个“透明的”电源只按MPPT出力。惯量控制组仅投入虚拟惯性控制K_in ≠ 0K_d 0。联合控制组同时投入虚拟惯性和下垂控制K_in ≠ 0K_d ≠ 0。这个对比设计很关键。基准组代表了当前很多实际风电场的行为——风机对频率变化没有响应系统频率只能靠同步机自己扛后面两组分别验证不同控制策略的改善效果。4.2 关键指标频率最低点、稳态偏差、风机出力仿真结束后我主要看以下几个指标频率最低点Nadir频率跌落过程中的最小值这是暂态安全的重要指标。如果频率最低点低于低频减载动作阈值通常49 Hz以下可能触发切负荷系统就不安全了。稳态频率偏差30 s仿真结束时频率与额定值的差。一次调频是有差调节稳态频率偏差不为零但偏差越小说明调频能力越强。DFIG有功出力曲线观察风机在频率下降过程中是否释放了功率释放了多少持续了多长时间。从实测波形来看对比结果很有代表性基准组负荷阶跃后系统频率骤降频率最低点约49.62 Hz稳态偏差约-0.32 Hz整个过程全部由四台同步机承担。惯量控制组频率下降初期风机快速释放动能频率最低点明显抬高约49.76 Hz左右但因为风机释放动能后转速下降后续功率回落稳态偏差跟基准组差别不大。联合控制组风机不仅暂态释放动能在稳态阶段也持续多输出一部分功率来自减载备用频率最低点和稳态偏差都有明显改善整体效果最好。这三组对比可以很直观地说明一个问题虚拟惯性控制改善的是“跌得深不深”下垂控制改善的是“最终稳在哪里”两者各司其职配合使用才能兼顾动态和稳态。4.3 附加控制参数K_in、K_d的整定思路参数整定是很多人的痛点我分享一个实际操作中比较有效的流程第一步先整定下垂系数K_d。把K_in设为0K_d从0开始逐步增大比如5、10、20、30观察稳态频率偏差的变化。理论上K_d越大稳态频率偏差越小但过大会导致风机长时间过载变流器可能报过流。我实测下来在1.5 MW风机模型上K_d在20~30之间比较合适标幺值基准下此时风机的稳态附加出力约为额定功率的8%~12%不会触发限幅。第二步再整定虚拟惯性系数K_in。固定K_d后增大K_in观察频率最低点的变化。K_in能有效抬高频率最低点但副作用是频率下降阶段风机功率过冲可能引起联络线功率振荡。如果振荡抑制不住说明K_in过大需要回退。第三步联合整定。在K_d和K_in单独调好之后把两者叠加再做一次扫参。此时重点看系统阻尼和联络线功率波动如果附加功率曲线的峰值超过风机限幅值说明参数偏大需要限制。我用扫参的方式做过一组对比典型结果大致如下控制参数K_d 0, K_in 0K_d 20, K_in 10K_d 20, K_in 20频率最低点49.62 Hz49.73 Hz49.81 Hz稳态频率偏差-0.32 Hz-0.27 Hz-0.27 Hz风机最大附加出力0%约8%额定功率约14%额定功率从这个表可以看出K_in从10增加到20确实进一步抬高了频率最低点但风机最大附加出力已经接近限幅值。在实际工程中如果变流器过载能力有限K_in取15左右更稳妥。5. 实操踩坑记录初始化、求解器与调试经验模型跑通之前我至少卡了三四天问题都不是控制逻辑本身而是Simulink仿真的各种“隐藏关卡”。这部分我单独拎出来写希望能帮你省下大量排查时间。5.1 初始化失败与潮流不收敛的典型原因DFIG接入四机两区域系统后最常遇到的问题就是Powergui报潮流初始化失败错误信息往往指向“initial conditions are not consistent”或者“cannot find solution for power flow”。排查顺序我建议按这个来第一看功率平衡。系统总发电功率和总负荷是否匹配包括DFIG的输出一般DFIG接入母线7或母线8从区域1侧并网你设置的DFIG初始功率会导致联络线潮流变化原四机两区域的初始运行点就变了必须重新做潮流计算。这个很容易忽略——你改了DFIG出力四台同步机的出力初始值如果没跟着调潮流必然不收敛。第二看电压基准值。DFIG模块输出端口的电压等级要和接入母线一致。自带DFIG模块默认是575 V低压侧接入230 kV母线必须经过变压器模型且变压器的连接组别和变比要正确。第三看初始化模式。Simulink中DFIG的初始化依赖于风速和风机转速的初始值。如果初始风速设置过高或过低与功率参考值不匹配初始化也会失败。我的习惯是先开环跑一下DFIG单独模型确认风机在给定风速下的稳态出力再把初始条件抄到整体模型里。5.2 求解器与步长设置电磁暂态和机电暂态的平衡这个坑非常隐蔽。四机两区域模型是典型的机电暂态系统时间常数在0.1秒到十几秒之间用ode23t或者ode15s这类变步长求解器很合适。但DFIG的背靠背变流器里有PWM调制PWM开关频率通常在几千赫兹这就引入了电磁暂态时间尺度。如果模型里包含详细的PWM脉冲信号变步长求解器为了捕捉开关动作步长会变得非常小仿真速度慢到让人怀疑人生。我在实际调试中30秒仿真时长一度跑了二十多分钟还没跑完。我的解决方案是把PWM发生器改为平均模型Average Model即不模拟具体开关脉冲而是用一个受控电压源等效替代变流器的输出。Simulink库中自带DFIG平均模型选项切换之后仿真速度提升了十倍不止而且对系统级频率响应结果几乎没有影响。在四机两区域这个尺度上研究一次调频用平均模型完全够用没必要死磕开关细节。求解器方面我最终用的是“ode23t”最大步长限制在1 ms以内容差设置默认值就能兼顾速度和精度。注意不要用固定步长求解器如ode4来跑这个模型除非你把步长设到微秒级——那仿真时间不可接受。5.3 一个容易被忽视的问题转速恢复阶段的二次频率跌落这是我自己在分析联合控制仿真结果时发现的一个细节也是文献里反复讨论的一个实际问题。虚拟惯性控制让风机释放转子动能支撑频率但释放完动能后风机转速下降比如从1.2 p.u.降到1.02 p.u.如果转速低于一定限值风机为了安全必须恢复转速。恢复转速意味着风机要重新从电网吸收有功功率或至少减少出力此时系统频率可能再次跌落形成“二次频率跌落”现象。我在仿真中观察到这个现象很典型初始频率下降时风机出力猛增频率最低点被抬高了但大约8~10秒后风机进入转速恢复阶段出力回落到MPPT值以下频率曲线出现一个二次下探的小波谷。如果转速恢复控制不够平滑这个二次波谷甚至可能超过初始频率跌落让整个控制策略前功尽弃。解决这个问题我用的方法是在转速恢复回路中增加一个“转速恢复判断器”只有当转速偏差小于某阈值比如0.02 p.u.并且频率偏差也小于某阈值时才缓慢恢复转速恢复速率用一个斜坡函数限制。这样做虽然有损一点调频效果但避免了二次频率跌落系统更安全。实际工程中许多风电场控制策略也采用了类似的协调逻辑。这个细节如果在答辩或汇报中被问到是一个很好的加分点说明你是真跑过模型、真分析过动态过程的人。最后再分享一个个人体会做这类系统级仿真不要一上来就追求PyQt界面或者自动化批处理先把核心物理过程跑通、把波形定性分析做扎实后面一切优化和扩展才有根基。参数调优的过程我建议多用“对照组 扫参表”的方式记录别靠感觉瞎调否则评审或答辩时你根本说不清楚系数为什么取这个值。我现在的习惯是每改一组参数就截一张图、存一组数据最后用表格汇总对比。这套模型后续还可以继续扩展比如把DFIG换成永磁直驱风机、或者增加AGC二次调频回路都是在现有框架上的增量工作。但前提是——一次调频这条主线你得先吃透。