电力系统就像个巨大的旋转木马,所有发电机必须保持同步旋转。当发生短路故障时,相当于突然给旋转中的木马踹了一脚——有的机器转得快了,有的慢了,功角差越来越大,最终导致系统解列。我处理过最夸张的案例是某区域电网故障后,发电机功角在0.5秒内摆过180度,直接引发连锁跳闸。
暂态稳定的核心是阻尼转子摇摆,这涉及到两个关键物理量:
其中δ就是那个要命的功角。当故障发生时,Pe突然下降,转子加速;故障清除后,Pe恢复但δ已经偏移,如果没有足够阻尼,系统就会像钟摆一样越晃越大。
在Simulink里搭建单机无穷大系统(SMIB)时,这几个参数最容易踩坑:
matlab复制% 推荐的基础参数设置
machineParams = struct(...
'Sn', 1000e6,... % 额定容量(MVA)
'Vn', 22e3,... % 额定电压(V)
'fn', 50,... % 频率(Hz)
'H', 6.0,... % 惯性常数
'Xd', 1.8,... % 同步电抗
'Xdp', 0.3,... % 暂态电抗
'Td0p', 8.0); % 暂态时间常数
三相短路不是唯一需要关注的工况,实际调试时建议测试:
重要提示:故障位置要选在电气距离适中的位置,通常建议设在发电机出口到线路中点之间。太近会使得故障过于严苛,太远则可能无法激发系统动态特性。
PSS本质是个带通滤波器,其传递函数典型结构:
G(s) = K·[sTw/(1+sTw)]·[(1+sT1)/(1+sT2)]·[(1+sT3)/(1+sT4)]
各环节作用:
matlab复制% PSS参数优化工具函数示例
function optimalK = tunePSSGain(sysOpenLoop)
[gm,pm,wcg,wcp] = margin(sysOpenLoop);
targetDamping = 0.6; % 目标阻尼比
optimalK = (2*targetDamping)/abs(evalfr(sysOpenLoop,wcp));
end
实测案例:某电厂PSS投入后反而引发1.2Hz振荡,后发现是T1/T2时间常数与本地模式共振。调整T1从0.12改为0.18秒后问题解决。
SVC的等效导纳B = B_TSC - B_TCR,其动态响应由三个因素决定:
matlab复制% SVC电压控制环设计示例
Kp = 2*pi*10*Tsvc; % 比例增益,Tsvc为期望响应时间
Ki = Kp/(4*Tsvc); % 积分增益
svcCtrl = pid(Kp,Ki,0,'Ts',0.001);
TCR会产生显著的5、7次谐波,解决方法有:
matlab复制function [alpha] = harmonicCompensation(u, h)
% u: 测量电压
% h: 谐波次数(5或7)
persistent z;
if isempty(z)
z = zeros(2*h,1);
end
w0 = 2*pi*50;
Ts = 0.001;
a = cos(h*w0*Ts);
b = sin(h*w0*Ts);
z = [a*b; -b*a]*z + [1-a; b]*u;
alpha = 0.1*z(1); % 补偿角度
end
PSS和SVC的时间尺度必须错开:
调试步骤:
问题现象:投入SVC后出现2Hz左右振荡
问题现象:故障清除后电压恢复过冲
问题现象:PSS效果随运行方式变化大
对于特别重要的枢纽变电站,可以考虑:
经验之谈:某500kV变电站实施PSS+SVC改造后,暂态稳定极限提升了18%。关键是在SVC控制中加入了基于本地频率变化的附加阻尼控制,这个技巧在常规文献里很少提及。