电力系统短路故障的计算机算法程序设计课程设计_第1页
电力系统短路故障的计算机算法程序设计课程设计_第2页
电力系统短路故障的计算机算法程序设计课程设计_第3页
电力系统短路故障的计算机算法程序设计课程设计_第4页
电力系统短路故障的计算机算法程序设计课程设计_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、信息工程系电力系统分析课程设计报告书题目: 电力系统短路故障的计算机算法程序设计 专 业: 电气工程及其自动化 班 级: 学 号: 学生姓名: 指导教师: 钟建伟 2012年 03月 15 日 信息工程学院课程设计任务书学生姓名 学 号 成 绩设计题目 电力系统故障分析设计内容给定的系统接线图,按照要求手工计算出各种简单故障的电气量值;设计要求1计算机计算原理应用计算机进行电力系统计算,首先要掌握电力系统相应计算的数学模型;其次是运用合理的计算方法;第三则是选择合适的计算机语言编制计算程序。建立电力系统计算的相关数学模型,就是建立用于描述电力系统相应计算的有关参数间的相互关系的数学方程式。该数

2、学模型的建立往往要突出问题的主要方面,即考虑影响问题的主要因素,而忽略一些次要因素,使数学模型既能正确地反映实际问题,又使计算不过于复杂。运用合理的计算方法,就是要求所选用的计算方法能快速准确地得出正确结果,同时还应要求在解算过程中占用内存少,以利提高计算机的解题规模。选择合适的语言编写程序,就是首先确定用什么计算机语言来编制程序;其次是作出计算的流程图;第三根据流程图用选择的语言编写计算程序。然后上机调试,直到语法上无错误。所编制的程序难免存在逻辑错误,因此先用一个已知结果的系统作为例题进行计算。用程序计算的结果和已知结果相比较,如果结果相差甚远就要逐步分析程序的计算步骤,查出问题的出处;如

3、果结果比较接近,则逐步分析误差来源;直到结果正确为止。最后将所编制出的正确计算程序,用于电力系统的实际计算。2电力系统短路计算计算机算法一般在电力系统短路计算中,多数情况下只要计算短路电流、电压的周期分量起始值。因此,电力系统短路电流计算的数学模型,可归结为求解短路故障初始状态下的等值电路稳态解的问题。对于三相对称短路,可建立一相等值电路的计算模型,对于不对称短路,则可应用对称分量法建立系统的正、负、零序网络,从而建立故障计算的序网模型。时间安排参考资料(1)对称短路计算有关数学模型和原理框图以及已知结果的例题,参见电力系统分析第六章。常用的计算方法为节点导纳矩阵法或节点阻抗矩阵法,其形成方法

4、分别参见电力系统分析第四章。(2)简单不对称短路计算有关数学模型、原理框图以及已知结果的例题参见电力系统分析第八章8-4节 一、任务设计阶段:(一) 计算的假设1、 不计各元件的电阻,即R=0;2、 各元件的正序和负序电抗相等,即X1=X2;3、 不计线路电容电流的影响;4、 计算简单短路故障时,各发电机电势的标幺值均为E=j1。5、 各种短路均为金属性短路,纵向不对称故障指一相断相和两相断相;6、 故障形式取A相为特殊相,故障计算以A相为基准相。(二) 准备工作1、 始数据计算 根据给定的系统原始数据计算系统各元件的标幺值参数,取。 (1)发电机参数 计算公式:X = X 计算结果厂名编号X

5、S(MVA)U(KV)X(标幺值)A厂1#,2#0.18862.510.53.0083#,4#0.14575.010.51.933B厂1#0.14162.510.52.2562#,3#0.16231.256.35.184 (2)变压器 计算公式:X=, (i,j,k,=1,2,3) 计算结果: 厂站编号A厂1#、2#60.011.161.863#、4#90.010.251.139B厂1#63.010.51.6672#、3#31.510.53.333C站31.59.8116.165.913.184-0.0701.946D站50.09.8217.56.232.109-0.1451.391(3) 线

6、路 计算公式: , , , 计算结果:线路 A-CA-DC-DD-EE-B长度L(Km)4025306080X1(标幺值)1.2100.7560.9071.8152.420X0(标幺值)3.6292.2682.7225.4447.260(4)系统系统:X1=0.36 X0=0.87系统:X1=0.38 X0=0.51二、序网络的制定根据上面的基本数据可以制定出系统的正序、负序、零序网络图。由假设2可知,正、负序网络相同,故在此只需制定正、零序网络。网络如下所示: 说明:正序网络中电源支路的等效电抗为发电机电抗与变压器电抗之和,系统、均处理为发电机模型。(三)、手工计算系统故障时各电气量 为了便

7、于验证程序运行的正确性,在编制程序之前先对系统进行手工的故障计算,确定故障时系统的各个电气量。其大体步骤是:化简序网络,计算出各个序网的电流分布系数,计算特定故障点的正、零序综合电抗并由此确定故障点的短路电流,利用分布系数求出各支路电流,计算各节点电压。1、化简序网络对系统网络进行“星-三角”变换,得下图: 2、计算电流分支系数 在特定故障点加入单位电流,求出各支路电流,该电流即为支路的电流分支系数。而原网络三角形回路的支路电流可由星形支路电流求得,其关系如下: 现将计算结果列表如下:故障点网络类型母线C正序0.02750.13070.19720.0122零序0.00080.08230.110

8、40.0052 3、计算故障点综合阻抗母线C: 4、计算故障口电流各种类型的故障口基准相正序电流计算公式如下: 而基准相的负、零序电流与正序电流又存在如下关系:n01-1010据此可求出各类故障的故障口基准相序电流:C母线故障3.921.131.962.460.001.13-1.96-1.460.001.130.00-1.005、利用分支系数求解各线路的序电流C母线故障网络类型正序0.10770.51170.7720.0478负序0.000.000.000.00零序0.000.000.000.00正序0.05380.25590.38610.0239负序-0.0537-0.2559-0.3861

9、-0.0239零序0.000.000.000.00正序0.03110.14770.22280.0138负序0.03110.14770.22280.0138零序0.00090.09300.12480.0059正序0.067650.32150.48510.0300负序-0.0402-0.1908-0.2879-0.0178零序-0.0008-0.0823-0.1104-0.0052相电流计算 Ia=Ia1+Ia2+Ia3; Ib= a²Ia1+aIa2+Ia3;Ic= aIa1+²Ia2+Ia3 C母线故障相别A0.10770.51170.7720.0478B0.1077240

10、°0.5177240°0.772240°0.0478240°C0.1077120°0.5117120°0.772240°0.0478120°A0000B-j0.0932-j0.4432-j0.6687-j0.0414Cj0.0932j0.4432j0.6687j0.0414A0.06310.38840.57040.0335B0.0302-0.0547-0.098-0.0075C-0.0302-0.0547-0.098-0.0075A0.02670.04840.08680.007B0.094261.2°0.

11、4392250°0.700253° 0.0429254° C0.09498.8°0.4392110° 0.700107° 0.0429106° 6、节点电压的计算(计算A母线即节点1的电压)C母线故障网络类型正序j0.6191负序0.00零序0.00正序j0.8096负序j0.1904零序0正序j0.89负序-j0.1099零序-j0.085正序j0.7628负序j0.1431零序j0.0752 计算各相电压:Ua=Ua1+Ua2+Ua3;Ub= a²Ua1+aUa2+Ua3; Uc= aUa1+ a²U

12、a2+Ua3 C母线故障网络类型Uaj0.6191Ub0.6191-30°Uc0.6191-150°Uaj1.000Ub0.7332-43°Uc0.7332-137°Uaj0.695Ub0.974128.8°Uc0.9741151.2°Uaj0.9811Ub0.6584-35.4°Uc0.6584-144.6°三,编程设计1、 数学模型的选择电力系统网络的数学建模主要有节点阻抗方程和节点导纳方程两种,节点导纳方程与节点阻抗方程相比较,Y阵稀疏,占用内存少,Z阵为满阵,占用内存多;Y阵形成容易,速度块,Z阵形成较难,

13、速度也慢。然而,在电力系统故障计算中,节点的注入电流通常为已知量,用节点阻抗方程进行故障计算比较直观,解算简单且物理意义明确。因此,选用节点阻抗方程法计算故障系统的电气量值,而节点阻抗矩阵的形成采用Y阵求逆法。2、 程序设计的总体思想系统的原始数据以文件的形式输入,程序根据这些信息形成导纳矩阵,再对之求逆形成阻抗矩阵,由阻抗矩阵求得故障口三序电流,进而求得各节点的三序电压,并由之求得各支路三序电流,最后将序分量合成相分量,完成一个完整的故障电气量计算。程序流程图(见附录1)。3、 程序的主要功能(1) 形成网络的节点导纳矩阵和节点阻抗矩阵;(2) 可以计算各种短路故障:A) 故障口的序电流和相

14、电流;B) 网络中各支路的序电流C) 网络中各节点的序电压和相电压。(3) 能够以文件的形式清楚地输出计算结果。4、 程序使用说明本程序使用简单,只需按规定格式输入电力系统的网络信息到一个名为“in.txt”的文本文件,再运行可执行文件后按屏幕提示输入即可。运行结果保存在指定的文件里,打开它便可查看计算结果。 5、 运行结果分析 经核对,程序的运行结果与指导书和手算结果基本一致,故本程序能正确地实现故障计算的功能。手算过程与计算机计算过程之间的差别在于所选取的计算模型不同,手算的关键在于正确地化简网络,求得网络的电流分支系数和故障点综合阻抗;而计算机则是以线性方程组作为计算模型,它的关键是要形

15、成一个正确的阻抗矩阵与及能正确求解线性方程组。解算过程虽不一样但结果是基本吻合的。 附录 1 开 始 数组、变量的定义 从文件输入原始数据 形成正、零序网的导纳矩阵,并输出 对导纳矩阵求逆形成阻抗矩阵,并输出 计算各节点电压的正常分量,并输出 故障类型FType FType=1 FType=2 FType=3 FType=4 K(3)故障 K(1)故障 K(2)故障 K(1,1)故障 各节点序电压 各节点序电流 各电气量的相量 输出计算结果 结 束 附录 2 短 路 计 算 程 序 的 源 程 序 清 单 #include <math.h> #include <stdio.h

16、> #define N1 5 /*正序结点数*/ #define M1 9 /*正序支路数*/ #define N0 5 /*零序结点数*/ #define M0 9 /*零序支路数*/ float SR33,SI33; /*算子矩阵*/ FILE *rf,*wf; /*输入,输出文件指针*/ main() void prog1(); void prog2(); void prog3(); void prog4(); void prog5(); float Y1N1N1,Y0N0N0,Z1N1N1,Z0N0N0; /*结点导纳,阻抗矩阵*/ float I0N1; /*结点注入电流正常分

17、量*/ float UNN13,UN13,ILM13,IM13; /*结点序相电压,支路序相电流*/ float UP1,ZP1,ZP2,ZP0,IF3,IFX3; /*故障口电压,口阻抗,口电流*/ float z1M1,z0M0; /*正,零序支路阻抗*/ int n11M1,n12M1,n01M0,n02M0,zl1M1,zl0M0; /*支路相关结点,支路编号*/ int i,j,t,p; /*控制循环变量*/ int kp,sign; /*故障类型,故障结点*/ int n1,m1,n0,m0; /*正零序结点数支路数*/ rf=fopen("d:in.txt",

18、"r"); /*打开文件*/ wf=fopen("d:out.txt","w"); if(rf=NULL) fprintf(wf,"不能打开文件!"); return; fscanf(rf,"%d%d",&n0,&m0); /*读入数据*/ fscanf(rf,"%d%d",&n1,&m1); fscanf(rf,"%d%d",&kp,&sign); for(i=0;i<m0;i+) fscanf(rf

19、,"%d%d%d%f",&zl0i,&n01i,&n02i,&z0i); for(i=0;i<m1;i+) fscanf(rf,"%d%d%d%f",&zl1i,&n11i,&n12i,&z1i); for(i=0;i<3;i+) for(j=0;j<3;j+) fscanf(rf,"%f%f",&SRij,&SIij); for(i=0;i<n1;i+) fscanf(rf,"%f",&I0i); pr

20、og1(Y1,z1,n11,n12,n1,m1); /*形成正序结点导纳矩阵*/ prog1(Y0,z0,n01,n02,n0,m0); /*形成零序结点导纳矩阵*/ prog2(Y1,Z1,n1); /*形成正序结点阻抗矩阵*/ prog2(Y0,Z0,n0); /*形成零序结点阻抗矩阵*/ UP1=0; /*形成口电压,口阻抗*/ for(i=0;i<n1;i+) UP1+=Z1sign-1i*I0i; ZP1=ZP2=Z1sign-1sign-1; ZP0=Z0sign-1sign-1; if(kp=1) /*形成口电流*/ IF0=-UP1/ZP1; IF1=IF2=0; els

21、e if(kp=2) IF0=-UP1/(ZP2+ZP1); IF1=-IF0; IF2=0; else if(kp=3) IF0=IF1=IF2=-UP1/(ZP2+ZP1+ZP0); else if(kp=4) IF0=-UP1/(ZP1+ZP1*ZP0/(ZP1+ZP0); IF1=-(IF0*ZP0)/(ZP1+ZP0); IF2=-(IF0*ZP1)/(ZP1+ZP0); prog3(IF,IFX,1); for(i=0;i<n1;i+) /*形成结点序电压*/ for(j=0;j<3;j+) UNij=0; for(i=0;i<n1;i+) for(j=0;j&l

22、t;n1;j+) UNi0+=Z1ij*I0j; UNi0+=Z1isign-1*IF0; UNi1=Z1isign-1*IF1; UNi2=Z0isign-1*IF2; prog3(UN,U,n1); for(i=0;i<m1;i+) /*形成支路序电流*/ t=n11i; p=n12i; if(t=0) ILi0=UNp-10/z1i+I0p-1; ILi1=UNp-11/z1i; else if(p=0) ILi0=-UNt-10/z1i+I0t-1; ILi1=-UNt-11/z1i; else ILi0=(UNt-10-UNp-10)/z1i; ILi1=(UNt-11-UNp

23、-11)/z1i; for(i=0;i<m0;i+) t=n01i; p=n02i; if(t=0) ILi2=UNp-12/z0i; else if(p=0) ILi2=-UNt-12/z0i; else ILi2=(UNt-12-UNp-12)/z0i; prog3(IL,I,m1); fprintf(wf,"故障分析的计算结果为:n"); /*输出计算结果*/ fprintf(wf,"零序网络的结点数,支路数分别为:%d %dn",n0,m0); fprintf(wf,"正序网络的结点数,支路数分别为:%d %dn",n1

24、,m1); fprintf(wf,"正序结点导纳矩阵为:n"); prog4(Y1,n1); fprintf(wf,"正序结点阻抗矩阵为:n"); prog4(Z1,n1); fprintf(wf,"零序结点导纳矩阵为:n"); prog4(Y0,n0); fprintf(wf,"零序结点阻抗矩阵为:n"); prog4(Z0,n0); fprintf(wf,"故障类型为: "); if(kp=1) fprintf(wf,"k(3)n"); else if(kp=2) fpr

25、intf(wf,"k(2)n"); else if(kp=3) fprintf(wf,"k(1)n"); else if(kp=4) fprintf(wf,"k(1,1)n"); fprintf(wf,"故障结点为:N=%dn",sign); fprintf(wf,"故障点的序(1,2,0),相(A,B,C)电流为:n"); for(i=0;i<3;i+) fprintf(wf,"%f ",IFi); for(i=0;i<3;i+) fprintf(wf,&quo

26、t;%f ",IFXi); fprintf(wf,"n"); fprintf(wf,"各支路的序(1,2,0),相(A,B,C)电流为:n"); prog5(IL,I,m1); fprintf(wf,"各结点序(1,2,0),相电压(A,B,C)为:n"); prog5(UN,U,n1); void prog1(float YN1N1,float zM1,int n1M1,int n2M1,int n,int m) /*形成结点导纳矩阵*/ float yM1; int i,j,k; for(i=0;i<n;i+) f

27、or(j=0;j<n;j+)Yij=0; for(i=0;i<m;i+) yi=1/zi; for(i=0;i<n;i+) for(j=0;j<m;j+)if(n1j=i+1|n2j=i+1)Yii+=yj; for(i=0;i<n;i+) for(j=0;j<n;j+)for(k=0;k<m;k+) if(i!=j&&(n1k=i+1&&n2k=j+1)|(n1k=j+1&&n2k=i+1) Yij=-yk; void prog2(float YN1,float ZN1,int n) /*形成结点阻抗矩阵*/ /*三角分解法*/ float LN1N1,DN1,IN1,UN1; int i,j,k; for(i=0;i<n;i+) Di=Yii; for(j=0;j<i;j+)Lij=Yij; for(k=0;k<n;k+) Lkk=1; for(j=0;j<k;j+) for

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论