多彩编程 多彩编程MZPH · CODE BLOG
ARTICLE DETAIL

文章详情

深耕前端与后端开发技术的一线实战笔记与踩坑复盘。

Simulink两机系统暂态稳定性仿真:SVC与PSS协同控制建模分析

Simulink两机系统暂态稳定性仿真:SVC与PSS协同控制建模分析 拿到这个题目的时候我先提醒自己别被“传动系统”这四个字绕进去。它不是在讲变速箱、齿轮箱那一类机械传动而是电力系统里两个发电机转子之间通过电网发生的机电耦合过程。SVC_PSS两机传动系统暂态稳定性仿真模型核心就是做成一个两机电力系统的仿真平台一台参考机一台研究对象机中间通过输电线路连接在回路上装静止无功补偿器SVC和电力系统稳定器PSS然后制造一个短路扰动观察两机能不能稳住、功角能不能收敛。这个模型最大的价值是能一次把“电压支撑”和“阻尼控制”两件事都验证到位。SVC负责在故障期间顶住母线电压PSS负责给转子振荡提供正阻尼两者配合着看暂态稳定性比单机无穷大系统能说明白更多问题。这类仿真工作最适合谁正在做电力系统稳定控制课题的本硕学生、刚接触Simulink电力系统仿真的工程师以及想快速搭一套“故障→扰动→控制→稳定评估”完整流程的科研人员。它不需要你从零推导电网微分方程但需要你真正理解同步发电机的摇摆方程、励磁系统负阻尼机理和SVC的等值电纳控制。下面我把建模思路、核心参数、仿真方法和踩坑经验拆开讲按我个人做这类模型的顺序来写。1. 项目背景与模型设计思路1.1 两机系统比单机系统到底多了什么信息常规的课程设计里大家习惯做单机无穷大系统一台发电机带一个无穷大母线故障切除后看转子角摇摆。优点是简单直观但有一个明显缺陷无穷大母线默认为电压幅值和频率恒定这就等于系统里天然存在一个“刚性的支撑点”研究低频振荡时只能看到单一的本地振荡模式没办法体现两个机组彼此之间的相对摇摆。换成两机系统之后物理图景完全不一样。两台发电机G1和G2通过联络线相互传输功率中间的母线电压不再刚硬而是随着功率流动和故障过程动态变化。此时系统的低频振荡表现为两个转子之间的相对运动振荡频率更低阻尼特性也更接近真实区域电网的情况。我在模型里把G1作为参考机相当于主网区域G2作为研究对象机相当于被研究的送端机组通过一台升压变压器接入220kV母线母线之间用双回线路连接。扰动发生时两台机的功角差Δδ δ2 - δ1的变化才是我们最关心的暂态稳定判据。这里有一个细节值得提两机系统里你没法像单机无穷大那样把参考功角固定为0。仿真中必须用锁相或者直接读取两机的转差信号计算出相对功角差。我在Simulink里是直接取G2的转子角减G1的转子角而不是去量母线电压相角因为电压相角叠加了变压器和线路的相位偏移直接用来判断失步会出偏差。1.2 SVC和PSS在稳定控制里各管哪一段很多人容易把SVC和PSS混在一起觉得它们都是“提高稳定性”的加上去就行。实际研究中它们的分工完全不同理解这点对仿真结果的分析很重要。SVC是无功补偿装置本质是一个可控的电纳接入母线后通过晶闸管控制投入的电容和电抗把母线电压维持在一个设定值附近。故障期间机端电压跌落得越深发电机的电磁功率就越低转子加速越多第一摆功角就越大。SVC的作用就是在电压跌落时快速补无功抬高母线电压从而增加电磁功率、减小加速面积。它解决的主要是“电压支撑”和“同步转矩”的问题。PSS则工作在励磁通道上。它的输入通常取转速偏差或功率偏差信号经过增益、隔直、相位补偿和限幅之后叠加到励磁调节器的参考电压上。之所以需要它是因为快速励磁系统在高放大倍数下会向系统引入负阻尼——AVR拼命维持机端电压的同时会让发电机输出的电气阻尼转矩被抵消于是故障切除后功角振荡衰减很慢甚至持续增长。PSS通过附加励磁信号人为补偿一个正阻尼转矩把振荡压下去。一句话总结SVC管“电压”PSS管“振荡”它们面对的是暂态稳定问题的两个不同侧面。仿真中只加SVC时电压恢复快但功角可能仍然大幅度摇摆只加PSS时振荡衰减快但故障期间电压支撑不足两者同时投入才是在第一摆稳定和后续动态稳定上都表现最好的组合。这个对比结果也是这类项目最有说服力的输出。2. Simulink建模与核心参数配置2.1 两机系统电气拓扑和同步发电机参数模型我用的是Simulink的Simscape Electrical库老版本叫SimPowerSystems整个回路按顺序排开两个同步发电机模块、原动机与调速器、励磁系统、升压变压器、输电线路、母线负荷、三相短路故障模块以及挂在母线处的SVC和接到励磁通道上的PSS。发电机参数直接决定振荡特性建议不要随意填我用的是典型汽轮机组参数基准容量选1000 MVA额定电压13.8 kV发电机端额定频率60 Hz直轴同步电抗Xd 1.8 pu暂态电抗Xd 0.3 pu次暂态电抗Xd 0.2 pu交轴同步电抗Xq 1.7 pu暂态电抗Xq 0.55 pu惯性时间常数H 3.5 sG2取3.2 s故意让两机惯性略有差异这样相对振荡更明显阻尼绕组和励磁绕组时间常数按默认模块参数Tdo 8 sTdo 0.03 s变压器用两台升压变G1侧13.8/220 kVG2侧13.8/220 kV漏抗均取0.1 pu额定容量与发电机匹配为各1000 MVA和500 MVA加一台。输电线路为了简化用集中参数的三相串联阻抗支路代替分布参数线路模型220 kV双回线总长度按200 km考虑单回线每公里正序电阻0.035 Ω/km正序电抗0.35 Ω/km。计算一下标幺值做参考基准阻抗ZB V_B² / S_B 220² / 1000 48.4 Ω双回并联后的线路阻抗折算到系统基准大约是0.0723 j0.7232 pu。线路充电电容在这个规模下影响较小可以在仿真中先忽略但如果你做的是长距离线路建议还是用PI型分段模型。这里有一个建模顺序的小经验先把两台机带上本地负荷跑稳态确认功率潮流正确再接入SVC和PSS。一口气全搭好再调出问题很难定位。2.2 SVC模型选型和电纳范围计算SVC在Simulink里有现成模块“Static Var Compensator”它内部等效成一个可控电纳能反映TCR晶闸管控制电抗器和TSC晶闸管投切电容器的组合调节特性。模块里需要填额定线电压220 kV、频率、无功功率调节范围以及响应时间常数。电纳范围怎么算SVC挂接母线的额定电压为220 kV系统基准容量取1000 MVA。假设我设计的SVC补偿容量是感性100 Mvar到容性300 Mvar那么折算成标幺值感性方向Q_Lmin -0.1 pu容性方向Q_Cmax 0.3 pu。由于在电压接近1.0 pu的工况下等效电纳B与无功功率Q的关系约为B Q / V²所以SVC最大等效电纳约为0.3 pu最小电纳约为-0.1 pu。在模块里我就把电纳上下限填成-0.1和0.3同时把电压控制回路的参考电压设为1.0 pu斜率设为0.03 pu/Mvar这个斜率不能设成0否则SVC会表现出无穷大刚性跟实际装置不符也会引起数值振荡。如果是自己搭SVC的内部电路而不使用现成模块门极控制逻辑要分三步做先测母线电压有效值再经过PI控制器算出所需电纳最后由晶闸管触发角把电纳转换到实际TCR/TS组合。用现成模块能省大量调试时间但是研究SVC附加阻尼控制的时候还是建议切开电压外环自己加一条附加信号通道这样后面想跟PSS做协调设计会更灵活。2.3 PSS的传递函数模型与参数初值PSS我用的标准PSS1A结构也就是基于转速偏差输入的通用模型传递函数为G(s) Kpss * [sTw/(1sTw)] * [(1sT1)(1sT3)] / [(1sT2)(1sT4)]信号链路是转速偏差Δω → 隔直环节时间常数Tw → 两级超前-滞后补偿 → 增益Kpss → 限幅 → 叠加到AVR参考电压。隔直环节的作用是保证稳态时PSS输出为0不会一直抬高机端电压超前-滞后环节用来补偿励磁系统在振荡频段造成的相位滞后增益决定阻尼强弱但过大反而会引入高频放大甚至引发励磁电压剧烈波动。我在模型里用的初值如下Kpss 12Tw 10 sT1 0.38 sT2 0.08 sT3 0.13 sT4 0.025 s输出限幅设为±0.05 pu。这个初值不是拍脑袋定的思路是先知道励磁系统在1到2 Hz振荡频段的相位滞后大约60到90度然后用两级超前环节分别补30度左右总的补偿角落在45到60度就能把输入转速信号通过励磁通道转成纯阻尼转矩。如果你用MATLAB对励磁系统做线性化还能用bode图精确查看相位滞后再反推T1到T4效果更准。增益Kpss的调节经验是从小到大加先跑到3看功角曲线有无明显改善再跑到8、12。如果加到15以后功角曲线出现高频毛刺或者机端电压波形抖动说明增益已经过大要降回来。每次改完参数后在同一个故障工况下对比千万别边改边换工况那样看不出谁起作用。2.4 三相短路故障序列的设置方法故障序列用一个Three-Phase Fault模块就能做重要的是时间设置。我把总仿真时长设为20 s故障在t 5.0 s时刻发生持续0.1 s之后切除。对于60 Hz系统0.1 s对应6个周波这是一个比较标准的临界故障持续时间。设置时在Fault模块的transition times数组填[5.0 5.1]单位秒类型选三相短路three-phase to ground接地电阻设为0.01 Ω模拟金属性短路。研究暂态稳定性时故障发生点选在G2出口升压变压器高压侧母线上这是对研究对象机冲击最大的位置因为发电机直接连接到故障点故障期间电磁功率几乎降到0转子持续加速。如果你想考察不同故障地点的严重程度也可以在输电线路中点加第二组故障模块在仿真中通过外开关切换但第一版模型建议先固定一个最恶劣工况把控制器的逻辑调通再说。3. 仿真流程与暂态稳定性分析方法3.1 四组对比工况的设计方法为了说清楚SVC和PSS各自的贡献我在仿真里固定同一个短路故障然后切换控制器投退状态形成四个工况工况SVCPSS预期关注的指标工况一退出退出原始失稳形态作为基线工况二投入退出SVC电压支撑效果功角第一摆影响工况三退出投入PSS阻尼效果电压恢复与功角收敛工况四投入投入联合控制下的最优响应切换SVC和PSS投退不建议直接暴力断开模块连线那样容易造成数值突变。我给SVC设置了外部使能信号给PSS输出设置了开关增益需要退出时把增益设成0而不是断开信号路径。这样系统拓扑始终一致控制器只是退出工作对比起来更公平。四组曲线跑完之后放在同一张图里对比。我个人的顺序是先看无控制的原始曲线明确系统故障切除后是“第一摆失稳”还是“后续振荡发散”然后再去分析控制器的作用。很多时候学生上来就把所有控制全加上得到一条好曲线却说不清楚到底是哪个环节在起主要作用这种结果写论文很容易被答辩老师问住。3.2 判稳核心指标相对功角曲线怎么看两机系统暂态稳定最直接的判据是相对功角差Δδ δ2 - δ1。故障期间G2加速Δδ从稳态值开始上升故障切除后如果系统稳定Δδ会达到一个最大值即“第一摆峰值”然后回落并逐渐收敛到新的稳态值。如果第一摆峰值超过180度两机之间就可能失去同步。实际判定的时候我给一个经验尺度故障后Δδ单调上升到超过180度且不断加速判断为第一摆失稳。切除后Δδ回落并在另一个平衡点附近衰减振荡、最终收敛判断为暂态稳定。切除后Δδ形成等幅振荡说明系统阻尼接近0临界但不可接受。Δδ持续小幅度增长几个摆动之后越过180度属于动态失稳往往由负阻尼累积导致。仿真图出来之后不要只看最终是否收敛还要看最大功角、振荡衰减速率和整定时间。比如工况三仅PSS的功角最大摆动角度可能会明显低于工况二仅SVC但第一摆峰值未必低很多可是后续摆动衰减明显更快。这就是阻尼起到了作用。同时还要结合机端电压曲线看SVC投入的工况里故障切除瞬间电压凹陷更浅、恢复更快而SVC退出的工况里电压恢复要靠发电机励磁慢慢拉会慢得多。3.3 典型结果解读和控制器贡献的区分按照前面参数跑出来的结果趋势大致是这样的我说一下我模型里的响应特征供你做对照。工况一无控制故障切除后G2相对G1的功角差达到140度以上随后第二个摆动周期内失步机端电压跌至0.6 pu附近并出现大幅波动仿真提示transmission line power flow异常两机失去同步。这个基线说明系统本身并不具备足够的稳定性裕度。工况二仅投入SVC母线电压支撑效果非常明显故障切除后电压凹陷明显变浅恢复时间从约2 s缩短到约0.8 s功角第一摆峰值下降到约115度。但是注意Δδ随后的振荡衰减仍然很慢十秒左右还在明显摆动说明SVC提升了同步转矩、改善了第一摆稳定但对系统阻尼的贡献十分有限甚至纯电压控制模式下的SVC会在某些振荡频率点上产生负阻尼贡献。工况三仅投入PSS电压恢复速度一般因为SVC没工作故障期间母线电压仍然跌得比较深但PSS对功角振荡的抑制作用非常突出。Δδ第一摆峰值约120度第二个摆动之后峰值迅速衰减大约6 s内整定到稳态。这说明PSS直接改善了阻尼转矩让振荡能量快速耗散。不过故障后电压最低点比工况二差不少可见单靠PSS解决不了电压支撑问题。工况四SVC与PSS同时投入这是最优状态。电压最低点比工况二略好电压恢复时间基本持平同时功角曲线衰减速度接近工况三甚至在多个摆动周期的最大功角指标上优于单独投入任何一方。四组曲线并排放在一起你就能直观看到“电压支撑”和“阻尼控制”是两种互相补充的控制维度。这里要特别说一个深层问题SVC和PSS之间不是天然就协调的。SVC的电压闭环在改善同步转矩的同时可能削弱PSS提供的阻尼作用反过来PSS的加励信号也会引起无功力波动影响SVC的电压调节。所以在工程研究里SVC通常也需要附加阻尼控制ADS把它接入的转速或功率信号经PSS结构的补偿后叠加到SVC的电压参考端形成双通道阻尼。你如果只做基础版仿真可以不加SVC的附加阻尼但如果导师问到“SVC和PSS协调优化”至少要有这个后续扩展的意识模型结构上提前预留附加信号输入端口会方便很多。4. 常见问题与排查技巧实录4.1 仿真发散的常见根源和对应处理做电力系统电磁暂态仿真最烦的就是一启动就数值发散。我在这类模型上遇到过的发散原因按概率排初始潮流没达到稳态、求解器刚性设置不合适、控制环节形成代数环、故障模块时间点恰好与开关切换冲突。先说初始潮流问题。Simscape Electrical里的同步电机模块在仿真开始时会根据你填写的“初始功角”“初始机端电压”自动计算初始状态但两机系统的初始状态不是单独设置的它依赖于整个网络潮流的正确性。我习惯先不给任何控制运行0到5 s的时段检查两台发电机的功率、母线电压是否稳定在期望值附近。如果看到一开始就有低频大摆动的趋势说明初始稳态没有建立好最常见的原因是两台发电机各自的调速器参考功率和励磁参考电压没有跟潮流匹配需要回头检查负荷分配和发电机输出功率设定而不是马上调控制器参数。4.2 代数环和“零延迟”反馈问题如果用自定义环节搭建SVC或PSS模型尤其是把测量信号直接反馈到同一条母线的电压控制端Simulink很可能会报代数环警告。原因是纯比例通道在同一仿真步内形成了输入到输出的瞬时依赖。处理办法要么在测量信号后面加一个极小惯性环节比如时间常数1e-4 s的传递函数把瞬时依赖打破要么改用Simscape电气库现成的测量模块它们内部往往已经做了去代数环处理。记住不要用很大的惯性时间常数1e-4量级对结果影响可以忽略但能解决代数环。故障时间设置上也有一个容易踩的坑Three-Phase Fault模块的transition times如果是[5.0 5.1]而仿真采用可变步长求解器可能在离散事件切换瞬间出现步长急剧缩小仿真运行很慢。这是正常现象不用管它。但如果你用固定步长求解器步长必须小于故障切换间隔的1/10比如0.1 s故障持续时间内至少要有10个输出点我惯用20 kHz采样率固定步长50微秒故障期间的电磁暂态细节能看得很清楚。缺点是仿真速度偏慢所以日常参数调试我切换回可变步长ode23t。4.3 功角曲线毛刺和读取错误两机系统里转子角信号直接读出来的波形经常带毛刺尤其是故障切除瞬间这是因为转子的电气位置信号中包含谐波和暂态分量。我建议不要直接用示波器显示原始转子角而是用一阶低通滤波或者均值滤波处理后再画功角曲线。低通滤波时间常数取0.01 s上下既能滤掉暂态毛刺又不会把低频振荡信息抹掉。另外一个常见错误是把220 kV母线电压的相位当成发电机功角来显示。发电机端到高压母线之间有变压器变压器存在相移和漏抗压降母线电压相位跟发电机转子角根本不是一个量用它算出来的Δδ会有明显的偏置甚至在某些工况下相位误差达到十几度直接影响第一摆峰值的判断。正确的做法是直接取同步电机模块输出端口里的“转子角”信号两台的转子角相减。如果用的是物理模型端口注意角度的单位是度还是弧度我这里习惯统一转成度再画图。4.4 参数整定的试错顺序最后讲一下参数整定的顺序这是我在跑这类模型时沉淀下来的操作流程能少走很多弯路。第一步把PSS增益置0SVC退出先调发电机励磁和调速器让无控制工况能稳定运行到故障前。第二步投入SVC只调电压外环PID让电压恢复指标达到目标这一步不用关心功角振荡衰减只看母线电压。第三步把PSS增益从0开始往上加每加一步跑一次故障观察Δδ曲线的包络衰减情况直到阻尼效果明显且无高频抖动。第四步SVC和PSS联调此时可能出现单投时都不错、联合起来效果反而变差的交互问题这时候不要急着调PI参数先检查PSS输出信号是否因为相位补偿不足在励磁通道引入了与SVC电压调节相反的动态再针对性调整PSS相位补偿环节。我还习惯在参数扫描时用MATLAB脚本批量跑sim函数把关键参数写入工作区变量然后循环仿真自动提取每一组结果的功角峰值、电压最低点和稳定时间绘制参数扫描曲线。这样比手动改参数再点运行高效得多。脚本里注意在每次sim之前要更新模型变量并关闭诊断暂停避免仿真中途弹出错误对话框中断批处理。这套模型做完之后我最大的体会是暂态稳定性研究里控制器的价值不在于“加上就稳”而在于知道它稳住了哪一段物理过程。SVC抬高电压本质上是在故障周期里稳住电磁功率的传递通道PSS注入阻尼是在振荡过程里消耗转子摇摆的动能。两机系统把这两个维度同时摆到你面前逼着你从物理角度去解读每条曲线而不是只看一个“稳定”或“失稳”的结论。如果你后续想继续扩展建议在这个平台基础上加装SVC的附加阻尼控制或者把同步发电机换成双馈风机模型看看新能源接入后对两机振荡模式的影响模型的扩展空间非常大。
返回列表