版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PAGE26-电力系统分析课程设计报告题目:电力系统三相对称短路计算专业:电气工程及其自动化班级:姓名:学号:指导教师:平时表现(10%)验收答辩(50%)设计报告(40%)总评成绩目录电力系统分析 -0-第一章设计目的与任务 -2-1.1设计目的 -2-1.2设计任务 -2-第二章基础理论与原理 -2-2.1对称短路计算的基本方法 -2-2.2用节点阻抗矩阵的计算方法 -4-2.3用节点导纳矩阵的计算方法 -6-2.4用三角分解法求解节点阻抗矩阵 -7-2.5短路发生在线路上任意处的计算方法 -8-第三章程序设计 -9-3.1变量说明 -9-3.2程序流程图 -10-3.2.1主程序流程图 -11-3.2.2导纳矩阵流程图 -12-3.2.3三角分解法流程图 -13-3.3程序源代码见附录1 -14-第四章结果分析 -14-第五章收获与建议 -15-参考文献 -17-附录 -18-附录1:程序源代码 -18-附录2:测试系统数据与系统图 -23-附录3:测试系统的运行结果 -25-第一章设计目的与任务1.1设计目的加深理解并巩固电力系统发生短路的基本知识。掌握电力输电、配电系统发生三相对称短路计算的计算方法和计算机计算的方法。熟悉C语言或Matlab计算程序的基本编写过程。为今后从事与电力系统相关的设计、运行、管理及科学研究工作打下良好的基础。1.2设计任务在两周的时间内,利用C语言或Matlab编写电力系统三相对称短路计算的程序,并调试通过。利用教材《电力系统暂态分析》例题3-4测试程序是否正确,并与数个标注测试系统(IEEE节点系统)解出算例结果并分析。第二章基础理论与原理2.1对称短路计算的基本方法在正常运行情况下,三相电力系统可以认为是三相对称的,只要知道某一相的值就可以推算出其他两相的值,所以可以用单相电路来求解三相电力系统,即将所有Δ形接法的三相电力系统元件变换成等值的Υ形接法后,求其一臂的单相值。对称短路的一种计算方法就是在电力系统三相的同一点D上直接短接或经一很小的阻抗(如电弧电阻)三相短接(图3-1(a)、(b))。在单相电路图上就是在短路点D直接接地或经一电阻R接地(图3-1(c)、(d))。但这种短路故障并不破坏整个系统的对称性,所以对称短路的计算与一般的对称三相电路的计算没有什么本质差别。但是,在计算短路电流时,应计及由于短路而发生系统参数突变时,因磁链守恒的原因,发电机的次暂态电势(或在无阻尼绕组发电机中的暂态电势')保持不变。这个在突变前后保持不变的虚拟电势,相当于在各发电机次暂态电抗Xd"(或暂态电抗Xd')后的电势,可以根据电力系统正常运行方式的计算(潮流计算)结果,按各发电机的负荷电流和端电压算出。然后,利用这电势进行t=0秒时的短路电流计算。在对称短路计算时,上述次暂态电势经过发电机阻抗加于电网中响应的发电机母线节点i。但是,用这种方法将使一台发电机增加一个节点。由于一般用节点注入电流作为已知条件,所以可将电压源等值电路用电流源等值电路来代替。这样发电机电势的作用就相当于在其母线的节点上注入一个数值等于的电流,同时在该节点上对地并联一个阻抗,其数值等于发电机的阻抗这样就可使网络节点数不改变。在进行短路电流计算时,一般用恒定阻抗表示各节点的负荷,负荷的阻抗值ZH可用下式求得(2-1)式中为故障前负荷节点的电压;为故障前负荷电流;PH、QH为负荷的有功功率和无功功率。因为一般负荷电流较短路电流要小得多,所以在简化的短路电流计算中可以忽略负荷电流的影响,这时就可以不计算节点的负荷阻抗。另一种计算方法是应用重迭原理,即将故障后的网络状态看成是两种情况的迭加,一种是故障前的状态,见图3-2(a),即正常运行方式的计算结果;还有一种情况是各发电机电势均等于零,而仅在故障点D加一电势,该电势值刚好与第一种情况下故障点D的电压值Ud相等,但极性相反,如图3-2(b)所示。这样,当两种情况迭加时,刚好使故障点D的电压在单相图中等于零,即相当于三相短路。按第二种情况计算所得的电流即短路电流中的故障分量,与第一种情况的计算结果迭加起来,就可得到总的短路电流。2.2用节点阻抗矩阵的计算方法任一网络用节点阻抗矩阵表示的节点电压方程为(2-2)当某一节点发生三相对称故障时,相当于在此接点接上故障阻抗Zf,流过Zf的故障电流If,其参考方向(流向)地,其他节点没有外接电路,所以其注入电流为零。设在节点f发生三相对称故障,故障阻抗为Zf时,其边界条件为(2-3)可求得故障点电流为(2-4)各点电压计算公式为(2-5)各支路电流计算公式(2-6)Zij为连接节点i与j的支路阻抗。在略去输电线电容的条件下,支路电流也就是输电线电流。2.3用节点导纳矩阵的计算方法任一网络用节点导纳矩阵表示的网络节点方程为(2-7)节点导纳矩阵YB的特点是易于形成,当网络结构变化时也容易修改,而且矩阵本身是很稀疏的,但是应用它计算短路电流不如用节点阻抗矩阵ZB那样直接。一般是利用节点导纳矩阵YB求逆的方法求得节点阻抗矩阵ZB,或者利用三角分解法求得节点阻抗矩阵ZB,再根据用节点阻抗矩阵的计算方法求得短路点电流,以及各节点电压和线路电流。应用节点导纳矩阵计算短路电流,实质上是先用它计算与短路点f相关的节点阻抗矩阵的第f列元素:Z1fZffZnf,然后根据式(2-4)~式(2-6)进行短路电流的相关计算。Z1f~Znf是在f点通以单位电流(其他节点电流均为零)是1-n点的电压,故可用式(2-7)求解下列方程(2-8)求得的~即为Z1f~Znf。2.4用三角分解法求解节点阻抗矩阵节点导纳矩阵的因子表可以采用三角分解法来形成。将方程(2-8)简写为:YU=I(2-9)将Y按照矩阵的三角分解法,把Y分解为:Y=LDR(2-10)式中,D为对角阵,L为下三角阵,R为上三角阵,L和R互为转置阵。节点方程变为:LDRU=I(2-11)这个方程又可以分为三个方程:(2-12)依次求解这三个方程就能得到U1~Uf,即一列阻抗元素值。2.5短路发生在线路上任意处的计算方法若短路不是发生在网络原有节点上,而是如图2-3所示,发生在线路的任意点上,则网络增加了一个节点,其阻抗矩阵(和导纳矩阵)增加了一阶,即与f点有关的一列和一行元素。显然,采取重新形成网络矩阵的方法是不可取的,以下将介绍利用原网络阻抗矩阵中j和k两列元素直接计算与f点有关的一列阻抗元素(Z1f,,Zif,,Zff)的方法。(1)互阻抗Zfi(=Zif)根据节点阻抗矩阵元素的物理意义,当网络中任意节点i注入单位电流,而其余节点注入电流均为零时,f点的对地电压即为Zfi,故:(2-13)式中,Zji和Zki为已知的原网络的j、k对i的互阻抗元素。(2)自阻抗Zff当f点注入单位电流时,f点的对地电压即为Zff。则有:(2-14)将电压用相应的阻抗元素表示,则得:(2-15)化简后得:(2-16)式中Zjf和Zkf用式(4-13)代入,则:(2-17)式中Zjj、Zkk、Zjk和zjk均为已知。由上述算式即可求得f列的阻抗元素,从而可用式(2-4)~式(2-6)作短路电流的相关计算。第三章程序设计3.1变量说明structdata_type{intnode1;//首节点号intnode2;//末节点号floatx;//电抗值}data[SIZE];//结构体变量,用于导入数据 inti,j,k;//循环变量 intchoose;//选择短路方式变量intf,p,q;//短路位置变量 floatl;//短路点在线路上的位置变量floatIf;//短路电流 floatx[n][n]={0};//原始电抗矩阵 floaty[n][n]={0};//网络节点导纳矩阵 floatR[n][n]={0};//R矩阵 floatD[n][n]={0};//D矩阵 floatL[n][n]={0};//L矩阵 floatI[n][n]={0};//I矩阵 floatW[n][n]={0};//W矩阵 floatX[n][n]={0}; //X矩阵 floatU[n][n]={0};//U矩阵,即网络节点阻抗矩阵floatUd[n]={0};//各点电压矩阵floatIL[n][n]={0};//线路电流矩阵3.2程序流程图3.2.1主程序流程图3.2.2导纳矩阵流程图3.2.3三角分解法流程图3.3程序源代码见附录1第四章结果分析测试系统(例题3-4)的结果分析测试系统数据与系统图见附录3例题计算结果节点导纳矩阵节点3短路的短路电流各节点电压任意线路的电流测试系统的运行结果见附录4用计算机计算的结果和例题的结果一致,说明程序在运行测试系统后结果正确,适用于少节点系统。第五章收获与建议两周的电力系统课程设计,使我对电力系统发生短路的基础知识进行了复习与巩固,而且对于利用计算机计算复杂系统短路电流的原理计算有了一定了解。并亲自利用其中的用节点导纳矩阵的计算方法进行了编程,并用教材上的例题进行了验证。在编程的过程中遇到了很多问题,主要可分为两方面,理论不清楚的问题和编程方面的问题。因为是上学期上的课,所以有些理论不太清楚了,不懂的时候我就认真看书,看例题,实在不懂了就请教老师,只有理论弄清楚了,编程时思路才不会错。对于编程方面的问题大多也是翻书,看例题,查资料等,慢慢的就进入状态了。在编写导纳矩阵的时候,节点导纳矩阵是在电路中学过的,我就去翻电路课件,找到了形成节点导纳矩阵的方法:自导纳等于与该节点相关的所有导纳的和,互导纳就等于两节点之间的负导纳。有了理论编程也就不难了。另外,编写程序时还应该要注意,一个模块一个模块的编,编好后调试成功了再编下一个模块,这样就很容易知道错误出在哪儿,修改起来也会简单很多。刚开始我是采用利用矩阵求逆的方法,由节点导纳矩阵求节点阻抗矩阵的,但是编程序时发现会用到指针,而我又不会,编了好长时间也没编好,最后请教老师,老师说可以用三角分解法的方法求节点阻抗矩阵,求得Y的因子表R和D后,可以采用解方程的方法解出节点阻抗矩阵。因为形成的R、D、L都是特殊矩阵,因此用解方程的方法计算起来比用求逆的方法要简单得多。虽然中间出现了许多问题,但是最后,经过一个星期的努力,程序终于编好了,经过验证也证明程序正确,但是还是有一些缺憾,我自己对于编写子函数还是不在行,简单的没有返回的函数可以编写,但是有了返回值,特别返回值不是一个时,我就不知道该怎么编了。在编写子函数和学会用指针这两方面我还须继续努力。实际中的电力系统一般都比较复杂,人工计算不仅浪费时间,可能还会出现错误,而利用计算机进行计算,不仅速度快,而且准确率也高,因此,掌握计算机计算复杂系统短路电流的原理对于以后从事相关电力专业的工作有很大帮助。作为为以后工作打基础来说,我认为这两周的课设很有意义,不过,我认为还是侧重编程多一些。总之,这一次的课程设计我复习了课本上的知识,还学会了一些编程的技巧,收获很多。参考文献[1]陈珩编.电力系统稳态分析(第三版)[M].北京:中国电力出版社,2008年[2]何仰赞主编.电力系统分析(第三版)[M].武汉:华中科技大学出版社,2005年.[3]夏道止主编.电力系统分析[M].北京:中国电力出版社,2004年[4]陈怡主编.电力系统分析[M].北京:中国电力出版社,2005年[5]谭浩强主编.C语言程序设计.清华大学出版社,2000年[6]谭浩强主编.C语言程序设计题解与上机指导.清华大学出版社,2000年附录附录1:程序源代码三相对称短路计算程序源代码#include<stdio.h>#defineSIZE5#definen3//节点数voidshuchu(floatarray[n]);//输出一维数组voidshuchu1(floatarray[n][n]);//输出二维虚数数组voidshuchu2(floatarray[n][n]);//输出二维实数数组structdata_type{intnode1;intnode2;floatx;}data[SIZE];voidmain(){ inti,j,k;intchoose;intf,p,q; floatl,If; floatx[n][n]={0};//原始电抗矩阵 floaty[n][n]={0};//网络节点导纳矩阵矩阵 floats[n][n]={0}; floatd[n][n]={0}; floatr[n][n]={0}; floatR[n][n]={0}; floatD[n][n]={0}; floatL[n][n]={0}; floatI[n][n]={0}; floatW[n][n]={0};floatw1[n][n]={0}; floatX[n][n]={0}; floatU[n][n]={0}; floatu1[n][n]={0}; floatUz[n+1]={0};floatUd[n]={0};//各点电压矩阵floatIL[n][n]={0};//线路电流矩阵floatIL2[n+1][n+1]={0}; FILE*fp; fp=fopen("data.txt","r"); printf("首节点末节点电抗值\n"); for(i=0;i<SIZE;i++) { fscanf(fp,"%d,%d,%fi\n",&data[i].node1,&data[i].node2,&data[i].x); printf("%d\t%d\t%fi\n",data[i].node1,data[i].node2,data[i].x);} fclose(fp); for(k=0;k<SIZE;k++) { for(i=0;i<n;i++) for(j=0;j<n;j++) { if(i==(data[k].node1-1)&&j==(data[k].node2-1)) x[i][j]=data[k].x; x[j][i]=x[i][j];} } printf("**********系统原始电抗参数矩阵x=**********\n");shuchu1(x);//求网络节点导纳矩阵 for(i=0;i<n;i++) { for(j=0;j<n;j++) { if(x[i][j]!=0) y[i][i]=y[i][i]-1/x[i][j];} } for(i=0;i<n;i++) { for(j=i+1;j<n;j++) { if(x[i][j]==0) y[i][j]=0; else y[i][j]=1/x[i][j]; y[j][i]=y[i][j];} } printf("**********系统节点导纳矩阵y=**********\n"); shuchu1(y);//求R和D的元素 for(i=0;i<n;i++) {for(k=0;k<i;k++) { s[i][i]=s[i][i]+R[k][i]*R[k][i]*d[k][k]; } d[i][i]=y[i][i]-s[i][i];D[i][i]=-1/d[i][i];//求D矩阵的元素 for(j=i;j<n;j++) {for(k=0;k<i;k++) { r[i][j]=r[i][j]+R[k][i]*R[k][j]*d[k][k]; } R[i][i]=1; R[i][j]=(y[i][j]-r[i][j])/d[i][i];//求R矩阵的元素 }for(j=0;j<n;j++) L[i][j]=R[j][i];//求L矩阵的元素 }/*printf("矩阵D=\n");shuchu2(D);printf("矩阵R=\n");shuchu2(R);printf("矩阵L=\n");shuchu2(L);*///三角分解法求节点阻抗矩阵 for(i=0;i<n;i++) {for(j=0;j<n;j++) I[i][i]=1; }//printf("矩阵I=\n");//shuchu2(I);//W for(k=0;k<n;k++) for(i=1;i<n;i++) {for(j=0;j<i;j++) {W[0][0]=I[0][0]; w1[i][k]=w1[i][k]+L[i][j]*W[j][k]; } W[i][k]=I[i][k]-w1[i][k]; } //printf("矩阵W=\n");//shuchu2(W);//X for(k=0;k<n;k++) for(i=0;i<n;i++) X[i][k]=D[i][i]*W[i][k];//printf("矩阵X=\n");//shuchu1(X);//U for(k=0;k<n;k++) for(i=n-2;i>=0;i--) {for(j=n-1;j>i;j--) {U[n-1][k]=X[n-1][k]; u1[i][k]=u1[i][k]+R[i][j]*U[j][k]; } U[i][k]=X[i][k]-u1[i][k]; } printf("**********网络节点阻抗矩阵U=**********\n"); shuchu1(U); printf("请输入短路发生位置(1-节点,2-线路):"); scanf("%d",&choose); if(choose==1) { printf("请输入短路点:"); scanf("%d",&f);//求短路点电流 If=-1/U[f-1][f-1]; printf("结点%d短路电流If=%fi\n",f,If);//求各节点电压 for(i=0;i<n;i++) Ud[i]=1+If*U[i][f-1]; printf("**********节点电压矩阵Ud=**********\n"); shuchu(Ud);//求线路电流 for(i=0;i<n;i++) { for(j=0;j<n;j++) IL[i][j]=(Ud[j]-Ud[i])*y[i][j]; } printf("**********线路电流矩阵IL=**********\n"); shuchu1(IL); } else { printf("请输入短路发生所在线路小节点号:"); scanf("%d",&p); printf("请输入短路发生所在线路大节点号:"); scanf("%d",&q); printf("请输入短路发生位置(用小数表示):"); scanf("%f",&l);//求短路点相关的一列阻抗元素 for(i=0;i<n;i++) Uz[i]=(1-l)*U[i][p-1]+l*U[i][q-1]; Uz[n]=Uz[n]+(1-l)*(1-l)*U[p-1][p-1]+l*l*U[q-1][q-1]+2*l*(1-l)*U[p-1][q-1]+l*(1-l)*x[p-1][q-1]; printf("******跟短路点相关的一列阻抗元素为:****\n"); for(i=0;i<=n;i++) printf("\t%f\n",Uz[i]);//求短路点电流 If=-1/Uz[n]; printf("线路发生短路的电流If=%fi\n",If);//求各节点电压 for(i=0;i<=n;i++) Ud[i]=1+If*Uz[i]; printf("**********节点电压矩阵Ud=**********\n"); for(i=0;i<=n;i++) printf("\t%f\n",Ud[i]);//求线路电流 for(i=0;i<n;i++) {for(j=0;j<n;j++) IL2[i][j]=(Ud[j]-Ud[i])*y[i][j]; }IL2[p-1][q-1]=0; IL2[q-1][p-1]=0;IL2[n][p-1]=(Ud[p-1]-Ud[n])/(l*x[p-1][q-1]); IL2[p-1][n]=-IL2[n][p-1]; IL2[n][q-1]=Ud[q-1]/((1-l)*x[p-1][q-1]); IL2[q-1][n]=-IL2[n][q-1]; printf("**********线路电流矩阵IL=**********\n"); for(i=0;i<=n;i++) {for(j=0;j<=n;j++) printf("%fi\t",IL2[i][j]); printf("\n"); } }}/**********输出一维数组***********/voidshuchu(floatarray[n]){ inti; for(i=0;i<n;i++) printf("\t%f\n",array[i]);}/********输出二维虚数数组*********/voidshuchu1(floatarray[n][n]){ inti,j; for(i=0;i<n;i++) {for(j=0;j<n;j++) printf("%fi\t",array[i][j]);printf("\n"); }}/********输出二维实数数组*********/voidshuchu2(floatarray[n][n]){ inti,j; for(i=0;i<n;i++) {for(j=0;j<n;j++) printf("%f\t",array[i][j]);printf("\n"); }}附录2:测试系统数据与系统图测试系统数据:线路编号首节点号末节点号线路参数(电抗)111j0.1500212j0.1000313j0.1000422j0.0750523j0.10007节点网络系统数据:线路编号首节点号末节点号线路参数(电抗)111j0.2212j0.3323j0.15424j0.2533j0.15634j0.05744j0.4845j0.35946j0.351055j0.51157j0.451266j0.21367j0.0851477j0.2附录3:测试系统的运行结果测试系统结果输出网络节点导纳矩阵Y=0-26.6667i0+10.0000i0+10.0000i0+10.0000i0-33.3333i0+10.0000i0+10.0000i0+10.0000i0-20.0000i1.请输入短路发生位置:1-节点,2-线路。1请输入短路点:3If=0-9.8592iV=0.45070.53520.0000I=00+0.8451i0-4.5070i0-0.8451i00-5.3521i0+4.5070i0+5.3521i02.请输入短路发生位置:1-节点,2-线路。2请输入短路所在线路小节点号:2请输入短路所在线路大节点号:3请输入短路位置(百分数或小数):0.3Z1=0+0.0437i0+0.0531i0+0.0634i0+0.0772i短路电流If=0-12.9486i短路电压V=0.43400.31190.17870线路电流I=00-1.2209i0-2.5527i00+1.2209i000-10.3959i0+2.5527i000-2.5527i00+10.3959i0+2.5527i03.请输入短路发生位置:1-节点,2-线路。2请输入短路所在线路小节点号:1请输入短路所在线路大节点号:3请输入短路位置(百分数或小数):0.2Z1=0+0.
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年职业暴露防护试卷及答案
- 消防栓使用培训试题及答案
- 组织行为学应用授课培训试题及答案
- 2025年国企社工考试题目及答案
- 宁波市中医院门诊医疗管理考核
- 扬州市人民医院压缩空气系统考核
- 青岛市人民医院并购重组财务尽职调查与估值模拟
- 宁波市中医院风湿病心脏损害识别考核
- 宣城市中医院生殖内分泌疾病诊治考核
- 宁德市中医院血液净化中心年度质量评估
- 课题申报参考:初中与高中双向、有效、高效衔接的设计、实施与评价研究
- 皮肤基础知识培训教材
- 整本书阅读《平凡的世界》(教学课件)
- DB11-T 1448-2017 城市轨道交通工程资料管理规程
- 三年级数学小学数学答题卡模板
- 《巴托克钢琴作品《小宇宙》的作曲技法分析》
- GB/T 25738-2024核电厂电动机调试技术导则
- GB/T 8574-2024复合肥料中钾含量的测定
- 湖北工程学院《西方哲学史》2023-2024学年第一学期期末试卷
- 2024购物中心场地租赁合同
- 2024年黑龙江省哈尔滨市中考英语试题卷(含答案及解析)
评论
0/150
提交评论