电力系统.docx
《电力系统.docx》由会员分享,可在线阅读,更多相关《电力系统.docx(23页珍藏版)》请在冰豆网上搜索。
![电力系统.docx](https://file1.bdocx.com/fileroot1/2023-5/20/19d17053-35a7-407f-8e1d-2fe6ff78c9f5/19d17053-35a7-407f-8e1d-2fe6ff78c9f51.gif)
电力系统
%本程序的功能是对简单不对故障一般形式的计算方法
clc;clear;close
NF=1;%input('请输入短路点的数目:
NF=');
fori1=1;NF
clear;
n1=9;%input('请输入正序节点数:
n1=');
n2=9;%input('请输入负序节点数:
n2=');
n0=9;%input('请输入零序节点数:
n0=');
nl1=9;%input('请输入正序支路数:
nl1=');
nl2=9;%input('请输入负序支路数:
nl2=');
nl0=9;%input('请输入零序支路数:
nl0=');
Lf=2;%input('请输入短路类型:
Lf=');
f=7;%input('请输入短路节点号:
f=');
If=0;%input('请输入纵横故障标志;If=');
zf=0;%input('请输入接地阻抗:
zf=');
zg=0;%input('请输入接地阻抗:
zg=');
B1=[140.0476i010;
270.0474i010;
380.0484i010;
450.008+0.07i0.1774i10;
460.014+0.075i0.158i10;
570.026+0.133i0.302i10;
680.032+0.14i0.358i10;
790.007+0.0594i0.15i10;
890.0098+0.083i0.21i10];%input('请输入正序支路参数:
B1=');
B2=[140.0476i010;
270.0474i010;
380.0484i010;
450.008+0.07i0.1774i10;
460.014+0.075i0.158i10;
570.026+0.133i0.302i10;
680.032+0.14i0.358i10;
790.007+0.0594i0.15i10;
890.0098+0.083i0.21i10];%input('请输入负序支路参数:
B2=');
B0=[140.1428i010;
270.1422i010;
380.1452i010;
450.024+0.21i0.5322i10;
460.042+0.225i0.474i10;
570.078+0.399i0.906i10;
680.096+0.42i1.074i10;
790.021+0.1782i0.45i10;
890.0294+0.249i0.63i10];%input('请输入零序支路参数:
B0=');
A1=[111;
1-1./2-i*sqrt(3)/2-1./2+i*sqrt(3)/2;
1-1./2+i*sqrt(3)/2-1./2-i*sqrt(3)/2];%input('请输入不对称系数:
A1=');
Vcs=[1.0500;1.0430;1.0430;1.0376;1.0090;1.0268;1.0431;1.0499;1.0340];%input('请输入由各节点的初始电压标么值形成的列矩阵:
Vcs=');
Z1=zeros(n1);Z2=zeros(n2);Z0=zeros(n0);
Y1=zeros(n1);Y2=zeros(n2);
Y0=zeros(n0);V1=zeros(n1,1);V2=zeros(n2,1);
V0=zeros(n0,1);
I1=zeros(nl1,1);I2=zeros(nl2,1);I0=zeros(nl0,1);
form1=1:
3
m=0;
ifm1==1
nl=nl1;B=B1;Z=Z1;n=n1;
elseifm1==2
nl=nl2;B=B2;Z=Z2;n=n2;
elseifm1==3
nl=nl0;B=B0;Z=Z0;n=n0;
end
m=0;Z=zeros(n);V=zeros(n);I=zeros(nl);
fork1=1:
nl
p=B(k1,1);q=B(k1,2);
ifB(k1,6)==0
k=1./B(k1,5);
elsek=B(k1,5);
end
ifp==0
ifq>m%追加接地树支
Z(q,q)=B(k1,3);m=m+1;
else%追加接地树支
fori=1:
m,
Z(i,m+1)=-Z(i,q);Z(m+1,i)=-Z(q,i);
end
Z(m+1,m+1)=Z(q,q)+B(k1,3);
fori=1:
m
forj=1:
m
Z(i,j)=Z(i,j)-Z(i,m+1)*Z(m+1,j)./Z(m+1,m+1);
end
Z(i,m+1)=0;
end
fori=1:
m+1
Z(m+1,i)=0;
end
end
elseifq>m%追加不接地树支
fori=1:
m
Z(i,q)=Z(i,p)*k;Z(q,i)=Z(p,i)*k;
end
Z(q,q)=k^2*Z(p,p)+k^2*B(k1,3);
m=m+1;
else
fori=1:
m%追加不接地树支
Z(i,m+1)=k*Z(i,p)-Z(i,q);
Z(m+1,i)=k*Z(p,i)-Z(q,i);
end
Z(m+1,m+1)=k^2*Z(p,p)+Z(q,q)-2*k*Z(p,q)+k^2*B(k1,3);
fori=1:
m
forj=1:
m
Z(i,j)=Z(i,j)-Z(i,m+1)*Z(m+1,j)./Z(m+1,m+1);
end
Z(i,m+1)=0;
end
fori=1:
m+1
Z(m+1,i)=0;
end
end
end
end
ifm1==1
Z1=Z;
elseifm1==2
Z2=Z;
elseifm1==3
Z0=Z
end
end%以上程序求出正,负,零序对应的阻抗阵
ifIf==0%求出横向故障的阻抗整
Z1(f,f)=Z1(f,f);
Z2(f,f)=Z2(f,f);
Z0(f,f)=Z0(f,f);
else%求出纵向故障的阻抗阵
Z1(f,f)=Z1(f,f)+Z1(1,1)-2*Z1(f,1);
Z2(f,f)=Z2(f,f)+Z2(1,1)-2*Z2(f,1);
Z0(f,f)=Z0(f,f)+Z0(1,1)-2*Z0(f,1);
end
ifLf==1%求出正负零序短路节点的电流标么值
Z4=Z2(f,f)+Z0(f,f)+3*zf;k2=1;k0=1;I1(f)=Vcs(f)./(Z1(f,f)+Z4);
I2(f)=k2*I1(f);I0(f)=k0*I1(f);
a1=I1(f);a2=I2(f);a0=I0(f);
elseifLf==2
Z4=Z2(f,f)+2*zf;k2=-1;k0=0;
I1(f)=Vcs(f)./(Z1(f,f)+Z4);I2(f)=k2*I1(f);
I0(f)=k0*I1(f);
a1=I1(f);a2=I2(f);a0=I0(f);
elseifLf==3
Z4=zf+(Z2(f,f)+zf)*(Z0(f,f)+zf+3*zg)./(Z2(f,f)+Z0(f,f)+2*zf+3*zg);
k2=-(Z0(f,f)+zf+3*zg)./(Z2(f,f)+Z0(f,f)+2*zf+3*zg);
k0=-(Z2(f,f)+zf)./(Z2(f,f)+Z0(f,f)+2*zf+3*zg);
I1(f)=Vcs(f)./(Z1(f,f)+Z4);I2(f)=k2*I1(f);I0(f)=k0*I1(f);
a1=I1(f);a2=I2(f);a0=I0(f);
elseifLf==4
Z4=zf+(Z2(f,f)+zf)*(Z0(f,f)+zf)./(Z2(f,f)+Z0(f,f)+2*zf);
k2=-(Z0(f,f)+zf)./(Z2(f,f)+Z0(f,f)+2*zf);
k0=-(Z2(f,f)+zf)./(Z2(f,f)+Z0(f,f)+2*zf);
I1(f)=Vcs(f)./(Z1(f,f)+Z4);I2(f)=k2*I1(f);I0(f)=k0*I1(f);
a1=I1(f);a2=I2(f);a0=I0(f);
elseifLf==5
Z4=Z2(f,f)+Z0(f,f)+3*zf;k2=1;k0=1;
I1(f)=Vcs(f)./(Z1(f,f)+Z4);I2(f)=k2*I1(f);I0(f)=k0*I1(f);
a1=I1(f);a2=I2(f);a0=I0(f);
end
disp('故障点处的正序电流标么值为:
');
disp(a1);
disp('故障点处的负序电流标么值为:
');
disp(a2);
disp('故障点处的零序电流标么值为:
');
disp(a0);
fori=1:
n1
V1(i)=Vcs(i)-I1(f)*Z1(i,f);
end
fori=1:
n2
V2(i)=-I2(f)*Z2(i,f);
end
fori=1:
n0
V0(i)=-I0(f)*Z0(i,f);
end
disp('各节点的正序电压标么值为(节点号从小到大排):
');
disp(V1);
disp('各节点的负序电压标么值为(节点号从小到大排):
');
disp(V2);
disp('各节点的零序电压标么值为(节点号从小到大排):
');
disp(V0);
fori=1:
3%求各支路的各序电流标么值
ifi==1
B=B1;V=V1;nl=nl1;
elseifi==2
B=B2;V=V2;nl=nl2;
elseifi==3
B=B0;V=V0;nl=nl0;
end
forj=1:
nl
ifB(j,6)==0
k=B(j,5);
elsek=1./B(j,5);
end
p=B(j,1);q=B(j,2);
ifp==0
e=0;b=B(j,3);
I(j)=(e-V(q)./k)./b;
else
I(j)=(V(p)-V(q)./k)./B(j,3);
end
end
ifi==1
I1=I;
elseifi==2
I2=I;
elseifi==3
I0=I;
end
end
disp('各支路的正序电流标幺值为(顺序同您输入B时一样):
');
fori=1:
nl
disp(I1(i));
end
disp('各支路负序电流的标幺值为(顺序同您输入B时一样):
');
fori=1:
nl
disp(I2(i));
end
disp('各支路零序电流的标幺值为(顺序同您输入B时一样):
');
fori=1:
nl
disp(I0(i));
end
fori=1:
3%求故障点A,B,C三相各相的总电流,各个节点A,B,C三相各相的总电压,各支路A,B,C三相各相的总电流
ifi==1
s0=a0;s1=a1;s2=a2;
elseifi==2
s0=V0;s1=V1;s2=V2;
else
s0=I0;s1=I1;s2=I2;
end
forj=1:
3
CA=s0*A1(j,1)+s1*A1(j,2)+s2*A1(j,3);
ifj==1
A=CA;
elseifj==2
B=CA;
elseifj==3
C=CA;
end
end
ifi==1
Iadl=A;Ibdl=B;Icdl=C;
elseifi==2
Vajy=A;Vbjy=B;Vcjy=C;
else
Iazl=A;Ibzl=B;Iczl=C;
end
end
disp('故障点处A相电流Iadl为:
');
disp(Iadl);
disp('故障点处B相电流Ibdl为:
');
disp(Ibdl);
disp('故障点处C相电流Icdl为:
');
disp(Icdl);
disp('各节点处A相电压Vajy分别为(节点号从小到大排):
');
disp(Vajy);
disp('各节点处B相电压Vbjy分别为(节点号从小到大排):
');
disp(Vbjy);
disp('各节点处C相电压Vcjy分别为(节点号从小到大排):
');
disp(Vcjy);
disp('各支路A相电流Iazl分别为(顺序同你输入B时一样):
');
fori=1:
nl
disp(Iazl(i));
end
disp('各支路B相电流Ibzl分别为(顺序同你输入B时一样):
');
fori=1:
nl
disp(Ibzl(i));
end
%本程序的功能是对简单不对称故障一般形式的计算方法
clc;clear;close
NF=1;
n1=9;
n2=9;
n0=9;
nl1=9;
nl2=9;
nl0=9;
Lf=2;
f=7;
If=0;
zf=0;
zg=0;
%各序网的支路参数
B1=[140.0476i010;
270.0474i010;
380.0484i010;
450.008+0.07i0.1774i10;
460.014+0.075i0.158i10;
570.026+0.133i0.302i10;
680.032+0.14i0.358i10;
790.007+0.0594i0.15i10;
890.0098+0.083i0.21i10];
X1=[10.0424i;20.065i;30.0933i;40;50.7428i;61.0541i;70;80;90.9438i];
B2=[140.0476i010;
270.0474i010;
380.0484i010;
450.008+0.07i0.1774i10;
460.014+0.075i0.158i10;
570.026+0.133i0.302i10;
680.032+0.14i0.358i10;
790.007+0.0594i0.15i10;
890.0098+0.083i0.21i10];
X2=[10.0424i;20.065i;30.0933i;40;50.7428i;61.0541i;70;80;90.9438i];
B0=[140.1428i010;
270.1422i010;
380.1452i010;
450.024+0.21i0.5322i10;
460.042+0.225i0.474i10;
570.078+0.399i0.906i10;
680.096+0.42i1.074i10;
790.021+0.1782i0.45i10;
890.0294+0.249i0.63i10];
X0=[10;20;30;40;50.7428i;61.0541i;70;80;90.9438i];
A1=[111;
1-1./2-i*sqrt(3)/2-1./2+i*sqrt(3)/2;
1-1./2+i*sqrt(3)/2-1./2-i*sqrt(3)/2];
Vcs=[1.0500;1.0430;1.0430;1.0376;1.0090;1.0268;1.0431;1.0499;1.0340];
Z1=zeros(n1);Z2=zeros(n2);Z0=zeros(n0);
Y1=zeros(n1);Y2=zeros(n2);Y0=zeros(n0);
V1=zeros(n1,1);V2=zeros(n2,1);V0=zeros(n0,1);
I1=zeros(nl1,1);I2=zeros(nl2,1);I0=zeros(nl0,1);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%分三序进行循环,建立各序的阻抗阵
fori=1:
n1
ifX1(i,2)~=0;
p=X1(i,1);
Y1(p,p)=1./X1(i,2);
end
end
fori=1:
nl1
ifB1(i,6)==0
p=B1(i,1);q=B1(i,2);
else
p=B1(i,2);q=B1(i,1);
end
Y1(p,q)=Y1(p,q)-1./(B1(i,3)*B1(i,5));
Y1(q,p)=Y1(p,q);
Y1(q,q)=Y1(q,q)+1./(B1(i,3)*B1(i,5)^2)+B1(i,4)./2;
Y1(p,p)=Y1(p,p)+1./B1(i,3)+B1(i,4)./2;
end
disp('导纳矩阵Y1=');
disp(Y1)
Z1=inv(Y1)
disp(Z1)
end%以上程序求出正序对应的阻抗阵
fori=1:
n2
ifX2(i,2)~=0;
p=X2(i,1);
Y2(p,p)=1./X2(i,2);
end
end
fori=1:
nl2
ifB2(i,6)==0
p=B2(i,1);q=B2(i,2);
else
p=B2(i,2);q=B2(i,1);
end
Y2(p,q)=Y2(p,q)-1./(B2(i,3)*B2(i,5));
Y2(q,p)=Y2(p,q);
Y2(q,q)=Y2(q,q)+1./(B2(i,3)*B2(i,5)^2)+B2(i,4)./2;
Y2(p,p)=Y2(p,p)+1./B2(i,3)+B2(i,4)./2;
end
disp('导纳矩阵Y2=');
disp(Y2)
Z2=inv(Y2)
disp(Z2)
end%以上程序求出负序对应的阻抗阵
fori=1:
n0
ifX0(i,2)~=0;
p=X0(i,1);
Y0(p,p)=1./X0(i,2);
end
end
fori=1:
nl0
ifB0(i,6)==0
p=B0(i,1);q=B0(i,2);
else
p=B0(i,2);q=B0(i,1);
end
Y0(p,q)=Y0(p,q)-1./(B0(i,3)*B0(i,5));
Y0(q,p)=Y0(p,q);
Y0(q,q)=Y0(q,q)+1./(B0(i,3)*B0(i,5)^2)+B0(i,4)./2;
Y0(p,p)=Y0(p,p)+1./B0(i,3)+B0(i,4)./2;
end
disp('导纳矩阵Y0=');
disp(Y0)
Z0=inv(Y0)
disp(Z0)
end%以上程序求出零序对应的阻抗阵
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
ifIf==0%求出横向故障的故障端口输入阻抗
Z1(f,f)=Z1(f,f)
Z2(f,f)=Z2(f,f)
Z0(f,f)=Z0(f,f)
else%求出纵向故障的故障端口输入阻抗
Z1(f,f)=Z1(f,f)+Z1(1,1)-2*Z1(f,1);
Z2(f,f)=Z2(f,f)+Z2(1,1)-2*Z2(f,1);
Z0(f,f)=Z0(f,f)+Z0(1,1)-2*Z0(f,1);
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%求出正负零序短路节点的电流标么值
%Z4即正序等效定则中的附加阻抗
ifLf==1
Z4=Z2(f,f)+Z0(f,f)+3*zf;k2=1;k0=1;I1(f)=Vcs(f)./(Z1(f,f)+Z4);
I2(f)=k2*I1(f);
I0(f)=k0*I1(f);a1=I1(f);
a2=I2(f);a0=I0(f);
elseifLf==2
Z4=Z2(f,f)+2*zf;k2=-1;k0=0;
I1(f)=Vcs(f)./(Z1(f,f)+Z4);I2(f)=k2*I1(f);
I0(f)=k0*I1(f);a1=I1(f);
a2=I2(f);a0=I0(f);
elseifLf==3
Z4=zf+(Z2(f,f)+zf)*(Z0(f,f)+zf+3*zg)./(Z2(f,f)+Z0(f,f)+2*zf+3*zg);
k2=-(Z0(f,f)+zf+3*zg)./(Z2(f,f)+Z0(f,f)+2*zf+3*zg);
k0=-(Z2(f,f)+zf)./(Z2(f,f)+Z0(f,f)+2*zf+3*zg);I1(f)=Vcs(f)./(Z1(f,f)+Z4);I2(f)=k2*I1(f);
I0(f)=k0*I1(f);a1=I1(f);
a2=I2(f);a0=I0(f);
elseifLf==4
Z4=zf+(Z2(f,f)+zf)*(Z0(f,f)+zf)./(Z2(f,f)+Z0(f,f)+2*zf)
k2=-(Z0(f,f)+zf)./(Z2(f,f)+Z0(f,f)+2*zf);
k0=-(Z2(f,f)+zf)./(Z2(f,f)+Z0(f,f)+2*zf);I1(f)=Vcs(f)./(Z1(f,f)+Z4);
I2(f)=k2*I1(f);
I0(f)=k0*I1(f);a1=I1(f);
a2=I2(f);a0=I0(f);
elseifLf==5
Z4=Z2(f,f)+Z0(f,f)+3*zf;k2=1;k0=1;I1(f)=Vcs(f)./(Z1(f,f)+Z4);I2(f)=k2*I1(f);
I0(f)=k0*I1(f);
a1=I1(f);
a2=I2(f);a0=I0(f);
end
disp('故障点处的正序电流标么值为;');
disp(a1);
disp('故障点处的负序电