☰
Simulink多源联合调频仿真:风火光储水电与电动汽车一次调频及AGC建模
2026/10/15 5:37:34 网站建设 项目流程

做电网频率稳定性的仿真,最头疼的不是单个电源模型怎么搭,而是把所有参与调频的电源塞进同一个Simulink框架里,还要让它们按真实电网的时序逻辑去动作。最近我正好完成了一套涵盖风、光、火、储、水电和电动汽车的联合调频仿真模型,既有一次调频的秒级响应,也有AGC二次调频的分钟级功率再分配,中间踩了不少坑,也积累了一些非常实用的建模经验,这里完整拆出来分享。

这套模型的目标很明确:负荷突增或者新能源出力骤降之后,系统频率先跌后升再回落,我要复现完整过程,并且回答一个问题——在含高比例新能源的电网里,到底靠谁把频率扛回来。下面从模型边界、单元建模、AGC框架、集成调试和调参经验五个部分展开。

1. 一次调频和AGC二次调频在模型里的边界划分

1.1 频率事故发生后,谁先动作谁后动作

真实电网里频率恢复靠的是三层力量,时间尺度完全不同,建模之前必须先把它们各自的责任边界画清楚。

第一层是系统惯量响应。故障发生瞬间,发电机转子会根据自身惯量释放或吸收动能,阻止频率快速跌落。火电、水电的同步机有天然惯量,风机通过电力电子变流器并网,转子与电网解耦,需要额外附加虚拟惯量控制才能参与这一层响应。这一层的时间尺度是0到2秒左右。

第二层是一次调频。同步发电机的调速器检测到频率偏差后,通过调整原动机输入机械功率来支撑频率,一次调频的响应时间一般在3到30秒以内。火电有锅炉和汽轮机的惯性限制,水电要防止水锤效应,风机则依赖桨距角减载或超速备用,储能在这个阶段响应最快,几乎是毫秒级到秒级完成出力。

第三层是AGC二次调频。机组调速器只能让频率稳定在某个偏差值附近,不能把频率精确恢复到额定值,通过调度端的AGC下发指令、调整机组有功出力,最终消除频率偏差和联络线功率偏差。这一层时间尺度长达几十秒到几分钟。

建模时我的原则很简单:惯量响应和一次调频用连续传递函数描述,AGC用离散控制逻辑加积分器近似,这样既能保证物理过程正确,又不至于让模型复杂到调不动参数。

1.2 Simulink里如何同时容纳秒级和分钟级动态

这是一个时间尺度矛盾:惯量响应是秒级甚至毫秒级,AGC却需要几分钟才能看到效果。

直接用一个固定步长的连续仿真,会面临数值刚性问题。我的做法是采用变步长求解器,比如ode23tb,同时设置合理的最大步长上限,确保能捕获到故障瞬间的快速动态,但不追求过小步长去模拟电力电子开关细节。

模型架构层面,采用机电暂态简化模型而不是电磁暂态模型。也就是说,发电机用二阶运动方程来描述转子动态,调速器和汽轮机/水轮机用传递函数级联,风机变流器用平均模型近似,储能用一阶惯性加功率限幅。频率动态研究只需要到这个精度,过度追求电磁过程反而会让参数整定变得极其痛苦。

2. 一次调频各电源建模细节:风机、火电、水电、储能

2.1 风机虚拟惯量与减载备用的配合

风机参与一次调频,核心问题是你拿什么功率去支撑频率。

风机正常工况下按最大功率追踪(MPPT)运行,转子转速随风速变化,几乎没有有功备用。突然要它增加出力,它只能短暂释放转子动能,如果控制不当,转速跌到最低值后就会脱网,反而恶化频率。所以风机参与一次调频需要双管齐下:

  • 转速减载备用:让风机运行在MPPT功率以下,比如减载10%,腾出功率裕量,调频时加大功率输出。
  • 虚拟惯量控制:在功率指令上叠加一个与频率变化率成正比的附加项,模拟同步机的惯性响应。

我在Simulink里的实现方法如下:

P_ref = P_MPPT * (1 - d_load) + K_v * (df/dt) + K_p * (f_n - f)

其中d_load是减载率,K_v是虚拟惯量系数,K_p是下垂系数。模型结构上,风速输入先过一个风力机模型算出机械功率,再进入转速控制环,转速控制环输出和调频附加功率相加,形成有功参考值。

这里有个关键点:虚拟惯量项必须经过滤波。因为df/dt对噪声非常敏感,实测或仿真中的瞬时毛刺会被放大成千瓦级功率波动,我的做法是加一个时间常数0.2~0.5秒的惯性滤波再参与计算。

2.2 火电机组的调速器与锅炉限幅

火电一次调频模型相对成熟,但细节决定了仿真能不能复现实际响应。

调速环节用典型的有差调节模型:频率偏差经过死区、调差系数、功率限幅,形成汽轮机阀门开度指令。汽轮机用串联多级容积惯性模型表示,锅炉则用一个较大时间常数的惯性环节来等效。

我模型的参数大致如下:

环节参数取值说明
频率死区f_dead±0.033Hz一次调频死区,防止频繁动作
调差系数R0.054%对应R=0.05的倒数关系,实际工程常见5%
汽轮机高压缸T_CH0.3s高压缸容积时间常数
汽轮机中低压缸T_RH10s再热时间常数
锅炉动态T_B60s锅炉惯性时间常数

调试时我遇到过一个问题:如果锅炉惯性时间常数设得太大,一次调频支撑功率会在20秒内持续衰减,和实际机组的大扰动响应很像,但如果研究的只是前30秒的动态,锅炉环节可以适当简化,否则反而会因为时间常数过大、参与系统特征值计算时的数值刚性,把仿真步长拖得极慢。

2.3 水电调速器的软反馈与防反调

水电和火电的一次调频特性差异巨大,主要原因是水锤效应——导叶动作后水压变化会让机械功率先向反方向变化。

所以水轮机调速器必须带软反馈环节,通常是一阶惯性反馈,减缓导叶动作速率,避免功率反调过大。模型结构是:

导叶开度指令 -> 一阶惯性伺服 -> 水轮机传递函数 -> 机械功率

水轮机传递函数我用经典的两参数模型:

P_m / G = (1 - T_w * s) / (1 + 0.5 * T_w * s)

其中T_w是水流启动时间常数,一般在1~4秒。这个模型用Simulink实现非常简洁,但要注意代数环问题——如果直接把传递函数和调速器输出耦合在同一采样步长,Simulink会报代数环告警。我的解决方案是在反馈路径上加一个很小的惯性时间常数,比如0.01秒。

2.4 储能下垂控制:一次调频里的超快支路

储能系统(BESS)是我后来加进去的,效果却最明显。它本质是一个快速功率源,能量双向流动,既可以补发功率也可以吸收功率。

一次调频层面的储能控制我用的是下垂控制加SOC反馈:

P_bess = K_bess * (f_n - f) + P_ref_AGC

功率限幅根据储能逆变器容量设定,SOC通过积分电量实时计算,并作为功率上下限的修正系数。关键问题是SOC不能做成长时间的纯积分,否则仿真十分钟后,SOC可能漂移到0%或100%,完全失真。我给SOC加了自恢复逻辑:当频率恢复后,储能逐渐回充或放电,让SOC回到初始工作点,这也更贴合实际工程中储能参与调频的运维策略。

3. AGC二次调频框架:从ACE计算到多源分配

3.1 区域控制误差ACE的计算与滤波

AGC的控制目标不是简单把频率拉回50Hz,而是同时兼顾频率偏差和联络线功率偏差。我用的ACE计算公式:

ACE = ΔP_tie + β * Δf

其中β是区域频率偏差系数,由区域内所有发电机的单位调节功率和负荷频率特性叠加而成,仿真时设为常数即可。ΔP_tie只在双区域乃至多区域互联模型里才需要考虑,单区域研究频率调节时直接取0。

ACE信号从采集到送到AGC需要滤波和限幅:

  • 用低通滤波器去除高频分量,时间常数设10~20秒,别太小,否则AGC指令会被短期波动牵着走,造成机组频繁调节。
  • 加上事件死区,比如ACE绝对值小于50MW时不允许AGC动作,防止系统正常波动时也消耗机组寿命。

3.2 参与因子分配:风电、储能、EV、水电、火电各分多少

AGC把ACE转换成机组功率调整指令后,关键是怎么分。我采用的是可变参与因子逻辑:

  • 储能优先级最高:响应快、双向可调,每次AGC指令先由储能承担一部分,通常占总调节量的20%。
  • 水电次之:爬坡速率较快,承担30%左右。
  • 火电承担剩余部分,但火电爬坡率受限,每分钟只能变化2%额定功率,所以AGC指令给火电时要做变化率限制。
  • 风电在减载运行状态下也分配少量调节量,约10%。
  • 电动汽车作为可中断负荷聚合体,按可控容量分配剩余需求。

参与因子不是定死的,可以按ACE方向动态调整。比如频率跌落到严重程度分级后,储能参与因子提高,火电参与因子降低,这样可以避免火电爬坡跟不上造成过度调节。

3.3 电动汽车集群如何进AGC框架

把电动汽车放进调频模型,最初我按单体EV模型接入,结果仿真速度惨不忍睹。后来改成集群聚合等效模型:假设一个区域内有一定数量的可控充电桩,每台车的可调功率为充电功率或放电功率,集群总可调容量就是单体数量乘以平均单车功率,再用一阶惯性等效通信与控制延迟。

EV集群在我的AGC分配里作为可中断负荷处理:频率偏低时,暂停部分充电桩充电,等效于向电网注入功率;频率偏高时,自动恢复充电甚至加大充电功率。这个逻辑用状态方程描述相对复杂,我用Simulink的Stateflow搭了一个有限状态机,状态切换条件就是频率偏差大小和持续时间,简单直观。

4. Simulink集成:模块划分、接口统一与协调调度

4.1 单区域模型还是多区域互联模型

我的模型最初是单区域,把整个电网等效为一个频率节点,所有电源并入同一个母线。单区域模型能回答“频率能不能稳、谁来支撑、支撑多少”的问题,结构简单,参数容易整定。

后来为了研究AGC的必要性,我扩展成双区域模型,加入联络线功率动态。这时ACE计算必须包含联络线偏差项,AGC的目标也从“频率归位”变成“频率归位且联络线功率归位”。

单区域和多区域的选择没有绝对标准,我的建议是:如果研究重点是一次调频的时序配合,先用单区域;如果涉及调度级AGC策略和互济效果,再升级为双区域。直接从双区域入手容易在参数整定上消耗大量时间。

4.2 标幺化与信号接口的统一规则

这是我在实际建模中体会最深的一点。电网潮流计算、发电机运动方程、风机桨距角控制、储能功率限幅,每个模块原始物理单位完全不一样,有MW、有Hz、有pu、有rad/s,如果不统一,仿着仿着就会冒出莫名其妙的正反馈。

我的统一规则是:

  • 有功功率统一用标幺值pu,基准取系统总装机容量或区域基准功率。
  • 频率统一用有名值Hz,但频率偏差用pu参加控制计算,基准是额定频率。
  • 所有电源模块输出有功后,汇总到等值负荷节点,节点频率由系统摆动方程统一解算。

这个接口约定必须写进模型注释里,或者做成Simulink Bus对象统一管理信号。我之前吃过亏:储能模块内部用的是MW,火电模块内部用的是pu,两者直接相加,结果在系统总功率平衡方程里差了一个数量级,频率曲线直接发散了,查了半天才发现是基准不一致。

4.3 Stateflow搭AGC控制逻辑

AGC逻辑我用Stateflow实现,状态划分如下:

  • 正常区:频率偏差在死区内,AGC不动作。
  • 恢复区:频率偏差超过死区,AGC根据误差符号和幅度生成调节指令。
  • 限幅区:如果储能SOC越界或火电爬坡到顶,强制改变分配逻辑,由其他机组补足缺额。

Stateflow的好处是控制逻辑的每个分支都能单独仿真验证,不用像纯连续模型那样把所有状态揉在一起。我还会在状态转移条件里加定时器,比如频率偏差连续10秒不恢复才允许提升AGC指令幅度,这样可以避免小幅波动导致AGC频繁动作。

4.4 仿真事件设置:如何制造一次可复现的频率事故

仿真的目的在于观察扰动下的系统响应,我一般在t=10s设置负荷突然增加5%~10%,模拟大负荷跳闸引起的功率缺额。

事件实现方式有三种:

  • 用Step模块叠加在负荷基准上。
  • 用信号构建器(Signal Builder)自定义负荷时序。
  • 用一个外部随机序列模拟新能源出力波动。

我推荐第二种,因为信号构建器能直观定义负荷增加和恢复的时序,一次仿真可以设置多个阶段:突增、持续、回落。

5. 调参实测中的坑与效果评估

5.1 频率骤降瞬间储能出力出现尖峰

第一次跑完整模型时,频率在故障瞬间出现一个非常尖锐的下凹,储能功率响应也出现了一个巨大的尖峰,几乎接近容量限幅的两倍。

排查后发现是微分项放大噪声的问题——储能下垂控制里我加了频率变化率项,Simulink的数值微分在有代数环或步长切换时会产生剧烈毛刺。解决方法是去掉微分项或加低通滤波,保留下垂比例项就够了,因为储能的响应速度本来就很快,并不需要靠df/dt来提前动作。

5.2 风机虚拟惯量过大导致第二跌落

风机在虚拟惯量支撑后转速下降,如果减载率不够,调频结束后无法快速恢复MPPT功率,会出现第二跌落——频率先恢复一段,随后又跌下去。

我最终确定的参数是减载率12%,虚拟惯量系数K_v取2倍额定转速惯性常数,调频结束后转速恢复速率限制在0.1pu/s以内。这个参数组合既保证了惯量支撑强度,也避免了恢复过程中过度抽取转子动能。

5.3 AGC调节速度不够,靠储能和EV补充

火电AGC爬坡慢是仿真中一定会遇到的问题。如果故障后只靠火电做二次调频,频率要两分钟以上才能回到死区内,这时候储能和EV的作用就非常关键。

我把AGC指令拆成“快速分量”和“常规分量”:快速分量给储能和EV,时间常数在5~10秒;常规分量给水电和火电,时间常数在30~60秒。改造之后,频率恢复到死区内的时间从120秒缩短到了45秒左右,效果非常明显。

5.4 调频效果怎么定量评估

仿真结果不能光看曲线,我给自己定了几项指标:

指标评估方法
频率最低点故障后频率最低值,反映了系统惯量和一次调频的支撑能力
恢复时间频率回到死区的时间,反映一次调频和AGC的配合效果
储能SOC偏移调频完成后储能SOC与初始点的偏差,评估储能能量管理合理性
火电爬坡超限次数火电指令是否频繁触及爬坡上限,反映分配策略是否合理

这些指标可以用Simulink的To Workspace记录后做后处理分析。我在后处理时发现,单独看频率曲线好像不错,但储能SOC已经漂到80%以上,说明分配策略把储能用得太狠,短期效果可以但持续运行不行,后来加入了SOC自恢复逻辑才彻底解决。

我个人的体会是,Simulink做这种多源调频联合仿真,真正的难点不在于某个电源的模型精度,而在于所有模型在同一套基准、同一个时间尺度下协调工作。把源端模型做精不难,难的是把一次调频的秒级动态和AGC的分钟级控制放在同一个仿真里,让它们既协同又不互相干扰。如果这篇内容帮你少走了弯路,那就值得了。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询