程序说明书(MATLAB2009R)
20913031 朱光照
短路计算包括短路电压和短路电流的计算。程序所用的是120对称分量法。具体算法分为两部分,一部分为三相接地短路计算,另一部分为其他不对称短路计算。具体原理如下:
一、三相短路计算
由于三相电路是对称的,三相短路时短路电流的周期分量也是对称的,只需要分析一相。 根据网络的导纳矩阵Y求出其阻抗矩阵Z,短路点的短路电流即为短路点对应的网络入端阻抗的倒数。短路电压为零。所以只要求出阻抗矩阵就可以求出短路电压和电流了。非故障点的电流电压算法见后面。短路计算总体框图如下:
二、不对称短路计算(对称分量法)
所谓对称分量法,就是将一组不对称的三相分量分解成三组对称的三序分量之和。这三组对称的序分量分别称为正序分量、负序分量、零序分量,然后分别按对称的三相电路去解,在线性电路中应用叠加原理将其结果叠加起来,就是不对称三相电路的解。
???设Fa、Fb、Fc为系统中任意一组不对称的相量,分解成三组对称的三序分量:
????Fa?Fa1?Fa2?Fa0????Fb?Fb1?Fb2?Fb0????
???Fc?Fc1?Fc2?Fc0
Fa1、Fb1、Fc1为三相的正序分量,大小相等,彼此相位相差120度,与系统正常对称运
行方式下的相序相同。
??? Fa2、Fb2、Fc2为三相的负序分量,大小相等,彼此相位相差120度,与系统正常对称
运行方式下的相序相反。
???
Fa0、Fb0、Fc0为三相的零序分量,大小相等,相位相同。
若以a相为基准相,则有:
????0?Fa?Fa1?Fa2?Fa?2??Fb?aFa1?aFa2?Fa0?? Fc?aFa1?aFa2?Fa0 (1)
a?ej120?2?? 式中
??12?j32,
a?e2?j120???12?j322,且1?a?a?0。
电力系统运行一般是对称的,当电力系统中某一点发生不对称故障时,三相对称电路变成了不对称电路,但是除了故障点之外,其余部分原参数还是对称的。此时应用对称分量法将不对称的电压、电流分解为三组对称的序分量,由于每一系统中三项对称,则在选好一相为基准后,每一序只需要计算一相即可。无论哪一种短路故障,都可以找到一个三序网和三个基本电压方程的标准形式。这些方程式是以序分量表示的,一般已知电源电动势及各序阻
??????抗,而未知电压电流的序分量Ua1、Ua2、Ua0、Ia1、Ia2、Ia0,因此对于简单的不对称故障计算,只需计算出各序分量就可以进一步计算出故障电流和电压了。 各序分量计算方法如下: a) 单相接地短路时:
???边界条件: Ua?0,Ib?Ic?0 各序分量:
?
Ea1?Ia1?Ia2?Ia0?Z1??Z2??Z0?????????a2
??a0a1 a1b) 两相短路时:
U?E?Ia1Z1?,
U??Ia2Z2?,
U??Ia0Z0?
??????边界条件:Ia?0,Ib??Ic,Ubc?0,Ub?Uc 各序分量:
???Ia1??Ia2?Ea1?Z1??Z2????
??a1, Ia0?0
?
c) 两相短路接地时:
a2U?U?Ea1??Ia1Z1??IaZ12??,Ua0?0
???边界条件:Ia?0,Ub?Uc?0 各序分量:
??Ia1?Ea1?Z1??Z???
?2?//ZIa2??Ia1?0Z0?Z0??Z2?????Ia0??Ia1Z2?Z0??Z2?,
Z2??Z0?Z?Z,
?a2?a0Ua1?U?U?Ia1?Ea1??Ia1Z1?0?2?
求出各序分量之后,既可利用式(1)求出三相电流和电压。
三、非故障点的电流电压
求支路电流的方法是:先求出短路点的各序电流分量,再按各序网络的结构和参数分配到各支路中去,最后再将同一支路中的各序电流分量按对称分量法合成,得该支路的各相电流。 求其他节点电压的方法是:先求出短路点的各序电压分量,再以短路点各序电压为基础,逐段加上相应支路各序电压降,得到各节点的各序电压,最后再将同一节点上的各序电压分量按对称分量法合成,得该节点的各相电压。
四、程序清单
%电力系统故障程序
%******************************************************************* %读入潮流结果数据
%******************************************************************* fidflow = fopen('D:\\matlab\\chaoliu.txt','r');
dataflow=fscanf(fidflow,'%d %f %f',[3,inf]);
fclose(fidflow); dataflow=dataflow';
aa=dataflow(:,2); %电压幅值
theta=dataflow(:,3)*3.1416/180; %电压相角
U=aa.*(cos(theta)+sin(theta)*i);
%******************************************************************* %读入零序网络数据
%*******************************************************************
n=4%系统节点总数
malfunction_nodenumber=3%短路点的编号 malfunction_type=11%故障类型
a=cos(120*3.1416/180)+sin(120*3.1416/180)*i;%旋转因子
fid0 = fopen('D:\\matlab\\branch1.txt','r');
data0=fscanf(fid0,'%d %d %d %f',[4,inf]);
fclose(fid0); data0=data0';
%******************************************************************* Fr_i=data0(:,2); To_j=data0(:,3); x0=data0(:,4)*i; branch=size(x0);
b0=ones(branch)./x0; m=zeros(n,n);
for nb=1:branch if Fr_i(nb)~=0
m(Fr_i(nb),Fr_i(nb))=m(Fr_i(nb),Fr_i(nb))+b0(nb); end
if To_j(nb)~=0
m(To_j(nb),To_j(nb))=m(To_j(nb),To_j(nb))+b0(nb); end
if Fr_i(nb)~=0&To_j(nb)~=0 m(Fr_i(nb),To_j(nb))=-b0(nb);
m(To_j(nb),Fr_i(nb))=-b0(nb); end end
y0=m;%零序网节点导纳阵 z0=inv(y0);
%******************************************************************* %读入正序和负序网络数据
%******************************************************************* fid = fopen('D:\\matlab\\branch2.txt','r');
data1=fscanf(fid,'%d %d %d %f',[4,inf]);
fclose(fid); data1=data1';
%******************************************************************* Fr_i=data1(:,2); To_j=data1(:,3); x1=data1(:,4)*i; branch=size(x1);
b1=ones(branch)./x1; m=zeros(n,n);
for nb=1:branch if Fr_i(nb)~=0
m(Fr_i(nb),Fr_i(nb))=m(Fr_i(nb),Fr_i(nb))+b1(nb);%计算自导纳 end
if To_j(nb)~=0
m(To_j(nb),To_j(nb))=m(To_j(nb),To_j(nb))+b1(nb); end
if Fr_i(nb)~=0&To_j(nb)~=0
m(Fr_i(nb),To_j(nb))=-b1(nb);%计算互导纳 m(To_j(nb),Fr_i(nb))=-b1(nb); end end
y1=m;%正序网节点导纳阵
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库程序说明书(3)在线全文阅读。
相关推荐: