1. 先说清楚:双端电源下距离保护到底在保护什么
做电力系统仿真的人应该都有体会,220kV这一档特别尴尬——比110kV的终端辐射网复杂,又不像500kV那样动辄上超高压保护装置。最近我把一个220kV双端电源系统的相间距离保护方案在Simulink里完整搭了一遍,从阻抗继电器逻辑到三段式配合再到故障波形分析,整个过程踩了不少坑,也把很多书本上含糊带过的细节彻底搞通了。这篇文章就把整套仿真研究的思路、模型结构和参数整定过程从头捋一遍。
先回到最基础的问题:距离保护为什么在220kV电网里是主保护?因为这套系统典型特征是双端电源、线路长、短路电流水平高,电流速断保护没法满足选择性和灵敏度的双重要求——单端电源辐射网里,电流保护按短路电流大小配合勉强能用,但双端电源意味着线路上任意一点故障,两端都会贡献故障电流,电流分布取决于两端系统阻抗的比值,根本无法用电流定值可靠地区分本线路末端和下一线路首端的故障。
距离保护的核心思路是换一个物理量:测量点到故障点的阻抗。阻抗只和线路长度、单位阻抗两个因素强相关,和系统运行方式、故障电流大小关系不大,这就天然解决了双端电源下的选择性难题。我搭的这个仿真模型,线路全长按120公里设计,单位正序阻抗0.0219Ω/m左右,算下来全线路阻抗约2.6Ω,保护测量阻抗落在阻抗平面上一眼就能分辨故障位置。
这个项目仿真的直接意义在于:不用搭物理动模实验平台,就能验证保护装置的整定逻辑、动作时序和双端配合策略,对研究双端电源特有的相继速动、振荡闭锁这类问题特别合适。
2. 从阻抗继电器到三段式配合:保护整定的核心逻辑
2.1 相间距离保护的测量方程怎么来
相间距离保护测量的是相间电压和相间电流的比值。以最常见的AB相间故障为例,保护安装处的测量阻抗表达式是:
[ Z_{AB} = \frac{U_{AB}}{I_A - I_B} ]
为什么用两相电流之差而不是单相电流?因为相间故障时,流过故障回路的电流正是两相的差流,而线电压 ( U_{AB} ) 反映的是故障点电压加上线路压降。两者相除,得到的阻抗就是保护安装点到故障点的线路正序阻抗,这个量在金属性短路时非常干净。
实际仿真中我直接用Simulink里的三相瞬时值电压电流,经过傅里叶变换提取基波相量,再按上式算出测量阻抗。这里有个关键细节:傅里叶变换的数据窗长度直接影响阻抗计算速度和精度,我用的是20ms全波傅里叶,虽然动作速度稍慢,但滤除衰减直流分量和整次谐波的效果好,对220kV这个电压等级完全够用。
2.2 三段式整定的边界条件
距离保护的分段配合是整套保护逻辑的骨架,我在模型里按经典原则整定:
| 保护段 | 整定范围 | 动作时限 | 作用 |
|---|---|---|---|
| I段 | 本线路全长的80%~85% | 瞬时(0s) | 主保护,不越限保证选择性 |
| II段 | 本线路全长的120%~150% | 0.3~0.5s | 覆盖本线路末端,留裕度防过渡电阻 |
| III段 | 相邻线路的20%~50% | 0.8~1.5s | 后备保护,兼顾远后备配合 |
I段为什么只能整定到80%~85%?因为互感器误差、线路参数误差、傅里叶算法的计算误差叠加起来,测量阻抗可能偏大,如果整定到100%,区外故障时测量阻抗可能在误差影响下落入I段范围,导致误动。留出15%~20%的裕度是所有微机保护的标准做法。
II段要和相邻线路的I段配合,保证本线路末端故障必定能被II段可靠切除,同时给过渡电阻留裕度。III段除了保护本线路,还要做相邻线路的远后备。
仿真时我在模型中把三段的阻抗定值和延时都做成了可调参数,方便扫描不同整定值对保护性能的影响。这里提一句,Zone 3的整定最容易被忽视,但它恰恰是双端电源系统里配合矛盾最集中的位置——后面在第六节单独讲。
2.3 动作特性选mho圆还是四边形
相间距离保护的阻抗动作特性,我最终选了mho圆。原因很直接:mho圆特性经过原点,具有方向性,不需要额外加方向元件就能天然躲开反方向故障,而且整定只需要两个参数(直径和阻抗角),在Simulink里实现起来非常干净。
mho圆的判定条件是:
[ 90^\circ \le \arg \frac{Z_{set} - Z_m}{Z_m} \le 270^\circ ]
等价于测量阻抗 ( Z_m ) 落在以 ( Z_{set} ) 为直径的圆内时动作。在Simulink里这个逻辑我用复数运算模块直接实现:算相位差、查阈值,延时模块控制各段动作时间。
四边形特性的优势在于能更好地适应高阻接地故障,但实现涉及R轴和X轴各自的定值,调试复杂度高,对相间短路仿真来说性价比不高。如果是实际工程中带接地距离保护(需要考虑过渡电阻),再做四边形特性的对比研究会更有意义。
3. 仿真系统搭建:220kV双端电源模型的组成与参数
3.1 系统整体拓扑
这个仿真模型的主拓扑其实很简单:两个220kV电源分别从线路两端接入,中间是一段120公里的双回线(为了简化,仿真时先按单回线处理),线路上接CT、PT,保护逻辑用Simulink的自定义模块实现,最后控制两端的断路器跳闸。
双端电源的等值参数是我反复调整过的。两端系统都用理想电压源串内阻抗等值,M端(送端)系统等效阻抗设为正序 ( Z_{sM} = 2.63 + j20.1\Omega ),N端(受端)设为 ( Z_{sN} = 1.58 + j12.6\Omega ),两端电源的相角差设为30°。这个相角差是双端电源带负荷功率流动的来源,也是后面振荡闭锁研究的核心变量。
3.2 线路模型的选择:为什么用分布参数
线路模型是这次仿真里第一个让我纠结的点。SimPowerSystems里输电线路有三种建模方式:π型等值、分布参数贝杰龙模型、带频率依赖的分布参数模型。
π型等值模型实现简单,但它是工频下的集中参数等值,对暂态过程中的高次谐波和行波过程模拟能力不足。我最终选择了分布参数贝杰龙模型,原因是距离保护动作过程中最关心的是故障暂态下的电压电流波形,贝杰龙模型用特征线法求解波动方程,能够准确模拟行波在线路上的传播延时和反射,故障后的前几个毫秒波形贴近物理真实。
不过贝杰龙模型有个注意点:它默认线路参数是恒定的,不随频率变化。这意味着仿真高频衰减过程时略有偏差,但对基波阻抗测量来说误差可以接受。如果要研究潜供电流或重合闸过程,那就得换频率依赖模型了。
线路参数我按220kV典型架空线设置:正序电阻0.011Ω/km、正序电感0.247mH/km、正序电容0.643μF/km、零序电阻0.14Ω/km、零序电感1.04mH/km。这些参数直接决定测量阻抗的基准值,整定之前必须先用潮流计算验证一遍模型稳态运行点是否正确。
3.3 CT、PT与断路器的建模细节
互感器建模这块容易被人忽视,但距离保护的测量精度直接取决于互感器的传变特性。我的做法是:CT用原边额定电流600A、变比600:1的理想互感器模型,忽略饱和特性。为什么忽略饱和?因为相间距离保护主要依靠基波分量动作,在最大短路电流不超过CT额定电流20倍的情况下,饱和影响较小。如果研究区内故障CT饱和场景,需要换带饱和特性的模型,那是另一个课题了。
PT直接用理想三相变压器模型,变比220kV:100V,把线路电压降到可以方便处理的二次侧电平。断路器用SimPowerSystems的Three-Phase Breaker,跳闸信号由保护逻辑模块给出,跳闸时间可以在模块属性里设置。
4. 相间距离保护逻辑的Simulink实现
4.1 从瞬时值到测量阻抗的信号链
整个保护逻辑模块的信号链是:线路电压电流 -> 三相电压电流变换 -> 傅里叶提取基波 -> 计算相间阻抗 -> 比相(mho判据) -> 各段延时 -> 跳闸输出。
电压电流从贝杰龙线路模型引出后,我先是直接接到傅里叶模块。这里有个重要处理:傅里叶变换在故障初瞬会出现一个过渡过程,因为故障分量中含有衰减直流分量,20ms全波傅里叶要等到一个完整周期后输出才稳定。所以我在逻辑里加了一个"启动判据"——用电流突变量启动保护计算,从启动时刻开始重新开数据窗,这样能显著缩短阻抗稳定时间。
4.2 mho判别逻辑:比相为什么比比幅更好
mho特性的实现有两种方案:比幅和比相。比幅需要计算复数模值,比相只需要判断角度范围。我在模型里用了比相方案,因为角度判断在Simulink里可以直接用复数的虚部符号来判定,不需要开平方运算,实时性好。
具体做法是:计算中间变量 ( Z_{set} - Z_m ),再算它和 ( Z_m ) 的比值,对这个复数的角度做范围判断。这里有一个工程细节——角度范围判断要处理360°环绕问题,我在模型里用cos和sin的符号组合来判断象限,替代直接的角度比较,避免wrap-around导致的误判。
4.3 三段延时的时序配合
每段的动作逻辑都是"阻抗落入特性圆 + 延时到 + 未被闭锁"三条件同时满足才出口。I段延时0s,但考虑断路器分闸时间和保护出口继电器动作时间,实际跳闸信号在故障后约20~40ms发出(取决于傅里叶数据窗)。II段0.4s,III段1.0s,这样设置保证相邻线路故障由相邻线路自己的I段瞬时切除,本线路的II段有足够时间裕度返回,不会误动。
延时模块我在Simulink里用带复位功能的定时器实现,一旦阻抗退出动作区立刻复位。复位条件很重要——如果只靠延时到出口而不监控阻抗持续动作,故障被对侧切除后测量阻抗恢复正常,但定时器还在计时,下个故障到来时可能立即出口,造成保护误动。
4.4 跳闸出口与重合闸的衔接
相间距离保护动作后,模型里直接驱动断路器跳闸。实际线路配置的是自动重合闸,但我在第一阶段仿真里先不加重合闸逻辑,专注验证保护的选择性。每个跳闸信号都增加了展宽脉冲模块,保证断路器完全分闸,防止跳闸命令在故障电流过零前消失导致电弧重燃。
5. 故障设置与仿真场景:从内部故障、外部故障到高阻接地
5.1 典型故障位置怎么选
仿真场景设计是这个项目里最考验全局观的部分。我在线路上选择了五个典型故障点:本线路20%处(近端故障)、本线路80%处(I段边界附近)、本线路95%处(II段动作区)、对侧母线(区外故障)、相邻线路50%处(III段动作区)。每个点分别做AB相间短路、BC相间短路、三相短路三组算例,总共十五组仿真。
为什么选80%这个位置?它正好卡在I段整定范围边界附近,是检验I段选择性最苛刻的场景。故障点稍微偏移,动作结果就会从"瞬时跳闸"变成"II段延时跳闸",这是判断整定是否正确的最直观指标。
5.2 金属性故障还是带过渡电阻
相间短路通常按金属性故障处理,因为相间电弧电阻相对接地故障要小得多,但我在仿真里加了两档过渡电阻验证:0Ω和10Ω。10Ω过渡电阻对220kV线路来说已经不小了,对mho圆的影响是让测量阻抗在阻抗平面上偏移一个矢端圆轨迹,可能让本该I段动作的故障偏移到II段范围。
实现方式是在故障模块里设置故障电阻参数。SimPowerSystems的Three-Phase Fault模块可以直接指定每相故障电阻Rf,模型里把它也做成仿真参数,方便批量扫描。
5.3 典型波形解读:AB相间短路全过程
我挑一组最有代表性的波形:80%处AB相间金属性短路,M端保护的动作过程。故障发生在0.2s,故障前线路传输约450MW的有功功率。故障瞬间A相和B相电流急剧增大,两相电流差 ( i_A - i_B ) 达到约7.2kA峰值,相间电压 ( u_{AB} ) 跌落到故障点残压水平。
傅里叶变换输出在故障后约25ms稳定,计算出的测量阻抗约2.08Ω,折合到线路长度约95公里(因为故障点在96公里处),明显落入I段85%范围对应的阻抗定值圆内,所以I段瞬时出口,断路器在故障后约75ms完成分闸(包含20ms数据窗、10ms保护出口、45ms断路器分闸时间),故障电流被切断,非故障相C相继续正常运行。
另一个关键观察是故障后的衰减直流分量——故障瞬间电流中混入了明显的直流偏移,峰值的直流分量达到稳态幅值的30%以上。这验证了全波傅里叶算法的必要性,也解释了为什么不能用简单的瞬时值比较来判断阻抗。
5.4 区外故障:选择性到底靠什么保证
对侧母线故障是考验选择性的关键场景。这个故障点离M端约120公里,测量阻抗约2.6Ω,虽然数值上略大于I段定值(按85%线路整定,定值约2.21Ω留有余量),但由于误差可能把阻抗拉低,I段边界附近的风险就在这里。仿真结果中测量阻抗稳定在2.55Ω,落在I段圆外、II段圆内,II段计时0.4s后动作——注意,这个时间足够让对侧(N端)自己的I段瞬时切除故障,M端II段在计时过程中检测到阻抗突然恢复正常(因为对侧跳闸切除了故障),立即复归,最终没有误动。
这个场景完美演示了"延时配合"在双端系统里的真正作用——本侧II段延时是为了等对侧I段先动作,如果对侧拒动,本侧II段才作为后备跳闸。
6. 双端电源特有的坑:助增效应、相继速动与振荡闭锁
6.1 助增效应:为什么II段定值要按最不利方式验算
双端电源线路存在一个单端辐射网没有的现象:相邻线路发生故障时,本线路流过的故障电流和对侧系统注入相邻线路的故障电流在故障点汇集,而对侧系统注入的这部分电流不经过M端保护测量,却在故障点造成额外的压降,导致M端测量到的阻抗比实际距离偏大——这就是助增电流效应。
用公式表示,M端测量阻抗为:
[ Z_m = Z_{MN} + \frac{I_N}{I_M} \cdot Z_{NF} ]
其中 ( I_N / I_M ) 是分支系数 ( K_b ),它可能大于1也可能小于1,取决于两端系统阻抗的相对大小。我在模型里把N端系统阻抗调小(短路容量增大),分支系数达到1.3左右,实测测量阻抗明显外移。
这个效应对整定最大的影响是:II段和III段的灵敏度校验必须考虑最小分支系数(最不利情况),否则可能出现相邻线路末端故障时本侧后备保护拒动。仿真中我把N端系统阻抗调大再跑一遍,对比测量阻抗变化,就能定量分析助增效应的影响范围。
6.2 相继速动:线路近末端故障的特殊处理
双端电源还有一个单端系统没有的特殊问题:故障点靠近N端时,M端测量的阻抗落在II段范围,而N端测量阻抗落在I段范围,N端先瞬时动作跳闸。N端跳闸后,M端故障电流消失,M端测量阻抗理论上会退出动作区,导致II段开始计时后还没到延时就被复归——这就是"相继速动"问题:可能造成近N端故障时M端迟迟不跳,只能靠对侧单侧切除,或者需要等待II段延时。
我在模型里验证了这个现象:故障点在距N端5%处(即距M端约114公里),N端I段在80ms内动作跳闸,M端测量阻抗从2.9Ω突然跳到无穷大(电流为零),II段定时器复归,M端最终不动作。对220kV重要线路,这种单侧切除的状态是不能接受的,工程上都配置了"相继速动"功能——检测到对侧跳闸信号后,本侧立即加速动作。我的模型里加了一个接收对侧跳闸信号的输入端,一旦检测到,把本侧II段延时压缩到0ms输出。
6.3 振荡闭锁为什么要加,怎么实现
双端电源系统另一个躲不开的问题是系统振荡。两端电源相角差摆开时,各点测量阻抗在阻抗平面上沿着特定轨迹移动,轨迹可能穿过mho圆,导致保护误动——但此时系统并没有发生故障,只是功率在来回摆动。
经典的处理是用振荡闭锁逻辑:检测到振荡时闭锁距离保护I段和II段,只保留III段,振荡平息且判别出是故障后(振荡中又发生故障)再开放。在Simulink里,我实现了一个简化的振荡闭锁:用测量阻抗变化速率作为判据——正常故障时阻抗从负荷区跳变到故障区是突变的,而振荡时阻抗是缓慢连续变化的。设置一个"阻抗变化速率超过阈值则开放保护"的判据,仿真验证在振荡摆开过程中加一个AB相间故障,保护能够区分两种情况正确动作。
这个逻辑做起来不复杂,但对理解双端电源保护的复杂性帮助很大——很多新手拿到双端电源模型做的第一个仿真都是傻乎乎的只看故障波形,完全没想过振荡场景,等到实际工程里遇到振荡误动才补课。
7. 调试经验:从波形不对到参数整定的教训
7.1 故障点到阻抗的换算最容易翻车
我调试过程中第一个让我卡了两天的问题:80%处故障,计算出来的测量阻抗数值却落在了I段范围外。排查了半天,最后发现是线路参数的单位换算出了错——Simulink里线路单位阻抗的单位是Ω/km,但我用的线路全长120km、单位正序阻抗0.0219Ω/m,直接填成0.0219导致模型里的总阻抗缩水了1000倍。
这类单位问题在电力系统仿真里太典型了,我的建议是建模开始就把所有参数统一成国际单位,并在模型里加一个"参数合理性校验"模块,用稳态潮流结果反推线路阻抗,跑一次仿真马上就能发现参数填错。
7.2 傅里叶数据窗和延时配合的矛盾
另一个典型的坑是保护动作时间比预期慢。理论上一段距离保护是"瞬时",但仿真结果里从故障发生到断路器跳闸花了将近120ms,比物理装置慢。原因在于我用的20ms全波傅里叶要等一个完整数据窗,加上故障后第一个20ms窗口内的计算结果不稳定,逻辑判定又花了额外时间。
解决思路是用变数据窗:启动元件检测到故障突变量后,用半波傅里叶先粗算阻抗(速度提高一倍),等全波数据窗结束后用全波傅里叶精算结果复核。这样既保证了速度,又不牺牲精度。我在模型里加了两套计算路径,启动后先走快速通道,全波窗口到后再切到精算通道。
7.3 断路器打开时刻对二次电弧的影响
还有一个容易被忽略的细节:断路器跳闸时刻直接决定了电弧能否熄灭。仿真里断路器在电流过零附近分闸,电弧电流能自然过零熄灭;但如果跳闸命令恰好在电流接近峰值时到达,断路器分断大电流,可能在触头间产生严重的恢复电压,需要更长燃弧时间。
我在模型里测量了不同故障条件下的跳闸时刻电流值,发现I段瞬时动作时电流相位完全随机,有可能在峰值附近分闸。一个简单的缓解措施是把跳闸信号经过一个"过零检测"窗口,在电流接近过零的5ms窗口内发出有效分闸命令。当然实际断路器是机械机构,这么精细的控制做不到,但这个细节在仿真分析中能帮你理解暂态过程中可能出现的电流拖尾现象。
7.4 批量仿真脚本:一次跑完所有算例
我把十五组故障场景全部参数化后,用MATLAB脚本批量驱动Simulink模型,每个场景输出测量阻抗轨迹、各段动作状态、跳闸时间三类结果。自动汇总成表格后,整个保护方案的动作特性一目了然。这个习惯强烈推荐——手动在Simulink里改参数跑场景,跑完一个改下一个,既容易忘改参数,又浪费时间。
脚本里最核心的部分是故障模块的参数注入——利用set_param函数在每次仿真前更新故障位置、故障类型和故障电阻,仿真结束后用simout捞数据,再用fprintf输出动作时间。整个批量循环跑下来不到十分钟,比我手动一个个点节省了一个下午。
8. 仿真结果汇总:保护方案的整体评价
把所有算例跑完后,我把结果整理成一张总表,用作评估保护方案性能的依据:
| 故障位置 | 故障类型 | M端动作段别 | M端动作时间 | 是否预期 |
|---|---|---|---|---|
| 20%处 | AB相间 | I段 | 约85ms | 是 |
| 80%处 | AB相间 | I段 | 约90ms | 是 |
| 95%处 | AB相间 | II段 | 约0.49s | 是 |
| 对侧母线 | AB相间 | II段(0.4s后复归) | 不动作 | 是 |
| 相邻线路50%处 | BC相间 | III段 | 约1.08s | 是 |
| 80%处 | 三相短路 | I段 | 约85ms | 是 |
| 95%处 | AB相间(10Ω过渡电阻) | II段 | 约0.5s | 是 |
从结果看,这套三段式配合在双端电源220kV系统上表现稳定:区内故障由主保护或近后备快速切除,区外故障靠延时段正确复归不误动,相邻线路故障后端保护按整定时间动作。过渡电阻场景下mho圆特性导致测量阻抗偏移,但II段有足够裕度覆盖。
灵敏度方面,我用最小运行方式(两端系统阻抗取最大)做了校验:本线路末端金属性短路时,II段测量阻抗的裕度为1.34,大于1.3的工程要求,灵敏度满足要求。III段做相邻线路远后备时裕度降到了1.18,偏紧,但考虑到220kV系统通常都有完备的主保护和近后备保护,这个水平在可接受范围内。
整个仿真研究做下来,我的核心体会是:Simulink里搭距离保护的过程,本质上是一次对保护原理"去理想化"的重新认知。书上的mho圆是干净的圆,实际模型的测量阻抗带着噪声和衰减直流分量;书上的三段配合是清晰的时间轴,实际系统里有助增效应、相继速动、振荡闭锁层层叠加。把这些非理想因素全部揉进模型再逐个解决的过程,才是最值钱的收获。
如果你也要做类似的研究,我的建议是先固定一个简单的两端无穷大系统模型把保护逻辑跑通,再逐步加入线路分布参数、真实互感器、系统阻抗变化这些复杂因素。一上来就追求高保真建模,往往被无数参数干扰,最后连保护逻辑本身的错误都查不出来。