电力系统课设报告 - 图文

更新时间:2023-12-30 07:08:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

电力系统分析 课程设计报告

专业班级: 电气116班 学生学号: 3110421175 学生姓名: 刘万成 指导教师: 段建东教授

平时表现(10%) 验收答辩(50%) 设计报告(40%)

总评成绩

2014 年 秋季 学期

起止时间:2015年1月5日至2015年1月16日

电力系统分析课程设计

目 录

一、 设计目的………………………. ……………………..…..2 二、 设计任务………………………. …………………...…….2

三、 基础理论

3.1不对称短路故障概述……………………….……….……2 3.2不对称短路的计算条件及近似……………………………3 3.3系统标幺值计算………………………………….………3 3.4不对称短路的计算方法

3.4.1对称分量法………………………. ……………….4

3.4.2简单不对称短路计算步骤…………………………..4 3.4.3正序等效定则………………………………….…..4 3.4.4节点导纳矩阵的计算方法………………….….……7

四、 程序设计

4.1计算程序原理………………………………….………..8 4.2变量说明………………………………………….…….9 4.3程序流程图.………………………………………..……9

五、 算例分析………………………. …………………..…….11 六、 收获建议………………………. …………………..…….14

附件一:程序源代码………………………………………………………..16 附件二:系统算例…………………………………………………………..31 附件三:输出结果…………………………………………………………..32 附件四:参考文献…………………………………………….…………….42

1

电力系统分析课程设计

一、 设计目的

1、 加深理解并巩固电力系统基础知识; 2、 掌握电力输电、配电系统的计算方法; 3、 熟悉电力系统计算程序基本编写过程;

4、 为今后从事与电力系统相关的设计、运行、管理及科学研究工作打下良好的基础。

二、 设计任务

1、 掌握电力系统不对称短路计算,理解专业理论、计算机算法; 2、 用MATLAB或C语言编写一个计算程序并调试通过;

3、 分别对教材例题与数个标准测试系统(IEEE节点系统)解出算例结果并分析。

三、 基础理论

3.1不对称短路故障的概述

在电力系统运行过程中,时常发生故障,其中大多数是短路故障。所谓短路:是指电力系统正常运行情况以外的相与相或相与地(或中性点)之间的连接。除中性点外,相与相或相与地之间都是绝缘的。电力系统可分为三相短路,单相短路,两相短路和两相接地短路等。三相短路的三相回路依然是对称的,故称为对称短路,其他的几种短路的三相回路均不对称,故称为不对称短路。电力系统运行经验表明,单相短路占大多数。

产生短路的主要原因是电气设备载流量部分的相间绝缘或相对地绝缘被损坏,主要表现在如下几个方面:①元器件损坏,例如绝缘材料的老化,设计,安装及维护不良所带来的设备缺陷发展正短路;②气象条件恶化,例如雷电造成的闪络放电,架空线路由于大风或冰雪灾害引起杆塔倒塌;③违规操作,例如运行人员在线路检修后未拆除地线就加电压。

不对称短路故障会引起很大的危害,主要表现在以下几个方面:①短路回路中的短路电流值大大增加,电流的热效应会引起导体或其绝缘的损害;另一方面;导体也会受到很大的电动力的冲击;②短路还会引起电网中电压降低,特别是靠近短路点处的电压下降得最多,结果可能使部分用户的供电受到破坏;③破坏了系统的稳定性;④不对称短路所引起的不平衡电流产生的不平衡磁通,造成对通信系统的干扰,甚至危及设备和人身安全。

短路问题是电力技术方面的基本问题之一。短路计算用于合理选择电气接线、选用有足够热稳定度和动稳定度的电气设备及载流导体、确定限制短路电流的措施、在电力系统中合理地配置各种继电保护并整定其参数等。实际电力系统中的短路故障大多数是不对称的,为了保证电力系统和它的各种电气设备的安全运行,必须进行各种不对称故障的分析和计算。

2

电力系统分析课程设计

3.2不对称短路的计算条件和近似

(1)故障前,正常情况下系统视为空载;

(2)故障点正常运行电压Uf=1,省去潮流计算; (3)系统中所有变压器均为Yd11接线; (4)不计各元件的电阻,即R=0;

(5)各元件的正序和负序电抗相等,即X1=X2; (6)不计线路电容电流的影响; (7)系统三相参数相同;

3.3系统元件标幺值计算

先选取基准值SB?100MVA,UB?Uav则主要元件的标幺值计算公式如下:

(1) 发电机:XG?XG?*SB SN*(2) 变压器:XT?uk%SB ?100SNTSB 2UB*(3) 输电线路:XL?x0?l?*(4) 电抗器:XB?XR%UNSB??2 1003INUB3.4不对称短路的计算方法

3.4.1对称分量法

电力系统中不对称短路故障包括两相短路、单相接地短路以及两相接地短路三种类型。分析计算不对称短路的方法很对,目前实际中用的最多的和最基本的方法仍是对称分量法。

对电力网络的进行不对称短路故障分析时,通常从短路点f处把网络分成两部分,对两部分分别进行讨论。用对称分量法吧该电路中任一组不对称相量分解成正序、负序、零序三组对称分量,这三组对称分量是各自独立的,即每一相序的电压只能产生本相序的电流。于是可得到三个各自独立的序网,以及三个序网方程;另一部分是短路点对地的不对称阻抗电路,反映该电路特点的是各种故障类型故障点的边界条件,即反映该不对称短路类型短路点的电压和电流的方程式。将两部分电路组合起来,即将三个序网方程与短路点边界条件

3

电力系统分析课程设计

联立起来,解出短路点的各序电流和各序电压,进而求得各节点的三相电压和各支路的三相电流。

对称分量法如下:

设Fa,Fb,Fc为三相系统中的任意一组不对称相量,可以用一组对称的相量

Fa?Fa?Fa01?Fa213i120表示, Fb??2Fa 其中 ??e???j??F?F1a2a0222Fc??FaFa2?Fa01??同样,由三个不对称的相量可以唯一地分解成三组对称的相量(即对称分量):

?????Fa1??Fa?2?1???????????1??正序分量、负序分量和零序分量,公式为?F???1?2???F?

a2b3?????111????F??F??a3??c?????3.4.2简单不对称短路计算步骤

电力系统发生不对称故障时,无论是单相接地短路,还是两相短路,两相短路接地,只是短路点的电压,电流出现不对称,利用对称分量法将不对称的电流电压分解为三组对称的序分量,由于每一序系统中三相对称,则在选好一相为基准后,每一序只需要计算一相即可,用对称分量法计算电力系统的不对称故障。其大概步骤如下:

(1) 针对正常部分,找正序、负序和零序网络,计算电力系统各个元件

的序阻抗;

(2) 针对故障点处,找边界条件(序分量),制定电力系统的各序网络; (3) 由各序网络和故障,联立3个序网方程与3个边界条件; (4) 从联立方程组解出故障点电流和电压的各序分量,将相对应各序分

量进行Park反变换,以求得故障点的各相电流和电压;

(5) 计算各序电流和各序电压在网络中的分布,进而求得各指定支路的

各相电流和指定节点的各相电压。

3.4.3正序等效定则

4

电力系统分析课程设计

依据上述步骤,不难求出三种不对称短路的电流。分析结果,可以看出这

U三种情况下短路电流的正序分量的计算式和三相短路电流f0在形式上

Z?1??很相似,只是阻抗为Z?1??Z?,Z?为附加阻抗。在单相短路时附加阻抗为Z?2???和Z?0?(或Z?0??3Zf)的串联;两相短路时附加阻抗为Z?2?(或Z?2??Zf);

????两相接地短路时为Z?2?和Z?0?(或Z?0??3Zf)的并联。对于任一种不对称

???短路,其短路电流的正序分量可以利用图3-4示出的正序增广网络计算。

Z Uf0??1?If?1?f?1?Z? 图3-4 正序增广网络

根据不同的故障,可分别利用表3-4所列公式计算故障处各序电流、电压,进

而可合成得三相电流、电压。

表3-4 各类故障处各序电流、电压计算公式 故障种类 单相短路 故障端口各序电流公式 If?1??If?2??If?0? Uf0Zff?1??Zff?2??Zff?0??3zf故障端各序电流公式 Uf?1??Uf0?If?1?Zff?1? ? Uf?2???If?2?Zff?2? Uf?0???If?0?Zff?0? Uf?1??Uf0?If?1?Zff?1? 两相短路 If?1???If?2? Uf0Zff?1??Zff?2??zf? Uf?2???If?2?Zff?2? 5

电力系统分析课程设计

两相接地短路 If?1??Zff?1??Uf0Zff?2?Zff?0??3zgUf?1??Uf0?If?1?Zff?1? ?? Zff?2??Zff?0??3zgZff?0??3zgUf?2???If?2?Zff?2? Uf?0???If?0?Zff?0? If?2???If?1?Zff?2??Zff?0??3zgZff?2?Zff?2??Zff?0??3zgIf?2???If?1? 求解得出故障处的各序电流、电压后,可根据以下公式计算网络中任一节点电压和任一支路电流。

任一节点电压的各序分量为:

Ui?1??Ui0?Zif?1?If?1?

Ui?2???Zif?2?If?2? (3-4-1) Ui?0???Zif?0?If?0?

式中:Ui0为正常运行时该节点的电压;Zif为各序网阻抗矩阵中与故障点f相关的一列元素。

任一支路电流的各序分量为:

Iij?1??Ui?1??Uj?1?

Zij?1?Ui?2??Uj?2? (3-4-2)

Zij?2?Ui?2??Uj?2?

Zij?2?Iij?2?? Iij?2??若进过变压器(Yd11接线),则正序分量和负序分量的相位要发生变化,即对于正序分量三角形侧电压、电流较星形侧超前30°(即11点钟)或落后330°,负序分量三角形侧电压、电流较星形侧落后30°或超前330°,零序分量不流通。其关系式可表达为:

6

电力系统分析课程设计

j30 Ua?1??UA?1?UA??1e?j?e?j30330

Ua?2??UA?2?e?UA?2?ej330 (3-4-3)

Ia?1??UA?1?ej30?UA?1?e?j330

Ia?2??UA?2?e?j30?UA?2?ej330 (3-4-4)

3.4.4节点导纳矩阵的计算方法

计算f节点短路电流的关键,就是求各序网形成阻抗矩阵的第f列元素。各序阻抗第f列元素等于在f节点加单位电流,其他节点注入电流都为零时,各节点的电压值。故可用节点导纳矩阵为系数矩阵的导纳型网络节点电压方程来求阻抗矩阵的第f列元素。

节点导纳矩阵的生成公式为: (1)对角线元素:Yii?Ii?Ii??yii ?Ui?1,Uj?0,i?j? (3-4-5) Ui(2)非对角线元素:Yij?求解下列方程

IjUi??yji ?Ui?1,Uj?0i,?j? (3-4-6)

?Y11???Yf1???Y?n1可得U1Un即为Z1fY1fYffYnf??Y1n??U1??0???????????Yfn??U???1??f点 (3-4-7) ??f???????????Ynn?0?????U??n?Znf。将式(3-4-7)简写成YU=I (3-4-8)

Y?LDLT?RTDR (3-4-9)

Y阵是个非奇异的对称矩阵,按照矩阵的三角分解法,Y可表示为

式中:D为对角阵;L为单位下三角阵;R为单位上三角阵;L和R互为转置阵。

式(3-4-9)说明Y阵分解为单位下三角阵,对角阵和单位上三角阵(即单位下三角阵的转置)的乘积。这些因子矩阵元素的表达式为

7

电力系统分析课程设计

2 dii?Yii??ldkk?Yii??rkidkk ?i?1,2,n,?

2ikk?1k?1i?1i?1i?11 rij? , (3-4-10) (Yij??lkirkjdkk) ?i?1,2,n,?1;j?i?1,?ndiik?1i?11 lij?(Yij??likrjkdkk) ?i?2,3,n,j;?djjk?11,2,i??,

1式中:d、l和r为矩阵D、L和R的相应元素。由于L和R互为转置,只

需算出其中一个即可。将式(3-4-9)代入式(3-4-8)得

? I RTDRU (3-4-11)

式(3-4-11)可分解为以下的三个方程,并以次求解,得

RTW?I (3-4-12)

DX?W

RU?X

(3-4-13) (3-4-14)

即由已知的节点电流相量I求W,由W求X,最后由X求得节点电压相量U,即一列阻抗元素值。

四、 程序设计

4.1计算程序原理

(1)如果要求准确计算故障前的运行情况,则需要进行潮流计算,在近似使用计算中,对短路故障可假设节点Uf0?1;

''(2)这里采用形成节点导纳矩阵的方法。发电机的正序电抗用xd,可计算故''障后瞬时量。发电机的负序的电抗近似等于xd,当计算中不计负何影响时,在

正、负序网络中不接入负荷阻抗。如果计及负荷影响时,负荷的正序阻抗可通过其额定功率和电压计算。负何阻抗很难却确定,一般取x?2??0.35(以负荷额定功率为基准)。负荷的中性点一般不接地,零序无通路;

8

电力系统分析课程设计

(3)形成三个序网的节点导纳矩阵后,利用公式(3-4-11)求得U1Un,即为Z1f,分别应用Znf。对于短路故障,只需令If?1(其余节电电流均为零)

三序因子表求解一次所得电压,即为三序网和f点有关节点阻抗;

(4)根据不同短路故障,可分别应用表3-4中相应公式计算故障处各序电流、电压,进而合成得三相电流,电压; (5)计算网络中任一点电压时,负序和零电压只须计算由故障点电流引起的电压。对于正序则还需要加上正常运行时的电压。

4.2变量说明

因为C语言不能只能直接进行复数计算,而不对称短路计算时要用到复数运算,故考虑把计算分成实部和虚部分别进行。下面以计算任意节点m的三相电压为例进行说明。

11??111?00??1?0?2?????1???0.5?0.51?j?0.8660.8660令S??????????SR??j?SI?

???21???0.5?0.51??0.866?0.8660???????????????UUUUm?a?m?1?m?1?m?1????1?????11?????2???????U???1U?SRU?jSIUmbm2m2m2???????????????????? ???????21??????????Um?c???Um?0???Um?0???Um?0????????????????UUm1_Rm1_I???????????????????SR??Um?2?_R???SI??Um?2?_I???????????Um?0?_R??Um?0?_I??????????????UUm1_Im1_R????????????????j??SR??Um?2?_I???SI??Um?2?_R?? ????????Um?0?_I??Um?0?_R????????Um?1?_I、Um?2?_I、Um?0?_I表示三序电压取实部,Um?1?_R、Um?2?_R、Um?0?_R其中:

表示三序电压取虚部 。

4.3程序框图

4.3.1主程序流程图

开始 输入数据 9

电力系统分析课程设计

运用计算机程序法,就是通过计算机形成三个序网的节点导纳矩阵,然后利用高斯消去法或三角分解法,通过相应公式对它们进行数据运算,即可求得故障端点的等值阻抗矩阵,最后根据故障类型选取相关公式计算故障处各序电流电压,进而合成三相电流电压。

本次课程设计我选择C语言编程,主要是考虑到之前接触的C语言比较多,感觉C语言有一定的功底。而在着手编写程序时才发现,由于本次课程设计用到的计算特别多,而且复杂,例如复数的计算和矩阵的计算,MATLAB对于这些计算都比较简单,但C语言却很难实现。此次编程时遇到的最大的困难就是节点阻抗矩阵的生成,指导书上给的方法是三角分解法,而我按照此思路编写程序,总是不能生成正确的节点阻抗矩阵。最后查阅资料,了解到还有一种高斯消去法,虽然高斯分解法会重复计算,但计算原理比较简单,最后采用高斯消去法。

本次设计最大的特色就是用简单的程序解决了不同相短路故障的问题,不再拘泥于只能A相为特殊相。设计中,故障计算部分,始终把A相当做特殊相,最后在输出显示之前,先做一次故障相的判定,找到特殊相,把故障计算得到的A相的数值重新赋给特殊相,在进行输出显示。另外,经过变压器的支路,程序还可以实现变压器两侧的相位变化。

当然,本次设计还存在很多不足之处。例如自己编写的用三角分解法求节点阻抗矩阵的程序始终通不过,而且发现不了错误之处;还有,本次设计的程序只能让故障发生在各个节点处,不能实现发生在输电线路上,而现实中任何点发生故障都是可能的;再者,也没用做出漂亮的人机交互界面;最后,本次设计用了很多假设,省去了很多工作,如潮流计算。课程设计虽然接触,但学习工作远未结束,我还要继续努力,完善程序,学习更多的知识。

最后,要感谢段老师以及各位学长两周来的辛勤辅导,还有各位同学的帮助。没有他们的帮助,我很难在两周内完成本次设计。通过本次设计,不仅让我对原来学过的知识有了系统的复习,还加强了我的编程能力,使我对以后的研究生生涯有了更大信心。

15

电力系统分析课程设计

附件一

/*不对称短路近似计算约定: 1、故障前,正常情况为空载; 2、Uf=1,省去潮流计算;

3、系统所有变压器均为Yd11接线;*/ #include #include

#define M 100 //最大值路数 #define N 100 //最大节点数

/***************************************************************** 全局变量定义

*****************************************************************/ int h, n, //节点数 m, //正序支路数

v, //零序支路数 L, //故障类型 F; //故障点 char k1,k2,k3; //故障相 float zp; //过渡电阻

float b1[M][M],b0[M][M]; //非零导纳元素 static float Z1[M][M],Z0[M][M]; //阻抗矩阵数组 static float If1,If2,If0; //故障口电流 static float Uf1,Uf2,Uf0; //故障口电压 static float Zf1,Zf2,Zf0; //故障口阻抗 static float If; //故障相电流 static float U0_s[M],U1_s[M],U2_s[M], //序电压 U0_x[M],U1_x[M],U2_x[M],

Ua_s[M],Ua_x[M],Ub_s[M],Ub_x[M],Uc_s[M],Uc_x[M],//相电压的实部、虚部

Ia_s[M][M],Ia_x[M][M],Ib_s[M][M],Ib_x[M][M],Ic_s[M][M],Ic_x[M][M], I1_s[M][M],I2_s[M][M],I0_s[M][M],//序电流

/************************************************************* 结构体定义

*************************************************************/ struct zheng {

16

I1_x[M][M],I2_x[M][M],I0_x[M][M];

电力系统分析课程设计

int h; // h=1为正序

struct ling {

int h; // h=0为零序 // int d; // 支路类型

int p1,p2; // 支路前后的两个节点

float x; // 支路的电抗 }ling[M]; // 零序结构体

FILE *fp1,*fp2; //文件指针定义

/*************************************************************************** 文件操作

***************************************************************************/ void Read_data() { int i,j;

/* 读取原始数据 */

fp1=fopen(\打开input.txt文件 if(fp1==NULL)

{printf(\文件为空,重新检查输入!\\n\

fscanf(fp1,\输入节点数,正序支路数,零序支路数 j=1; do {

for(i=1;i<=m+v;i++) {

fscanf(fp1,\ {

if(h==1) //正序阻抗

int d; // 支路类型(d=1表示变压器支路,d=0表示无变压器支路) float x; // 支路的电抗

int p1,p2; // 支路前后的两个节点 }zheng[M]; // 正序结构体

fscanf(fp1,\

j++;

17

电力系统分析课程设计

} {

fscanf(fp1,\ }

if(h==0) //零序阻抗

j++; }

} while(j<=m+v); fclose(fp1);

if((fp2=fopen(\ { printf(\文件为空,重新检查输入!\\n\ /*程序原始数据输出*/ fprintf(fp2,\原始数据\\n\ fprintf(fp2,\

fprintf(fp2,\节点数:- 正序支路数:- 零序支路数:-\\n\ fprintf(fp2,\正序数据:\\n\

fprintf(fp2,\支路类型 节点号 节点号 支路阻抗\\n\ for(i=1;i<=m;i++)

fprintf(fp2,\ %d - - X1=%f \\n\ fprintf(fp2,\零序数据:\\n\

fprintf(fp2,\节点号 节点号 支路阻抗\\n\ for(i=m+1;i<=m+v;i++)

fprintf(fp2,\ }

/*************************************************************************************** 形成阻抗矩阵

***************************************************************************************/ void Form_Y() {

int a,b,i,j,k; for(i=0;i<=m;i++)

for(j=0;j<=m;j++) { }

b1[i][j]=0;b0[i][j]=0; Z1[i][j]=0;Z0[i][j]=0;

for(i=1;i<=m;i++) {

18

电力系统分析课程设计

}

for(i=m+1;i<=m+v;i++) { a=ling[i].p1;b=ling[i].p2;

b0[a][b]=-1/ling[i].x; //零序非零元素 a=zheng[i].p1;b=zheng[i].p2;

b1[a][b]=-1/zheng[i].x; //正序非零元素 b1[b][a]=-1/zheng[i].x;

b0[b][a]=-1/ling[i].x;

}

/*节点电压法形成节点导纳矩阵*/ for(i=1;i<=n;i++) for(j=1;j<=n;j++)

Z1[i][j]=0;

for(i=1;i<=n;i++)

for(j=0;j<=n;j++)

Z1[i][i]=Z1[i][i]+b1[i][j]; // for(i=1;i<=n;i++)

for(j=1;j<=n;j++) if(i!=j)

Z1[i][j]=-b1[i][j]; // for(i=1;i<=n;i++) for(j=1;j<=n;j++)

Z0[i][j]=0;

for(i=1;i<=n;i++)

for(j=0;j<=n;j++)

Z0[i][i]=Z0[i][i]+b0[i][j]; // for(i=1;i<=n;i++)

for(j=1;j<=n;j++) if(i!=j)

Z0[i][j]=-b0[i][j]; //

/*以文件的形式输出导纳矩阵*/

fprintf(fp2,\正序导纳矩阵:

for(i=1;i<=n;i++) { fprintf(fp2,\

for(j=1;j<=n;j++)

正序自导纳

正序互导纳

零序自导纳

零序互导纳

\\n\

19

电力系统分析课程设计

}

\\n\

for(i=1;i<=n;i++) { }

fprintf(fp2,\

fprintf(fp2,\for(j=1;j<=n;j++) { }

if(Z0[i][j]>=0)

fprintf(fp2,\else { }

if(Z1[i][j]>=0)

fprintf(fp2,\fprintf(fp2,\else

fprintf(fp2,\零序导纳矩阵:

fprintf(fp2,\

}

/****************************************************************** 导纳矩阵变换成阻抗矩阵(高斯消去法)

*******************************************************************/ void Form_Z() {

int i,j,k; float Z;

float ZZ[50][50];

//求正序阻抗矩阵 for(i=1;i<=n;i++)

for(j=1;j<=n;j++)

ZZ[i][j]=0; for(k=1;k<=n;k++) {

ZZ[k][k]=-1/Z1[k][k]; for(i=1;i<=n;i++)

for(j=1;j<=n;j++) {

20

电力系统分析课程设计

if(i!=k&&j!=k) {

ZZ[i][k]=-Z1[i][k]/Z1[k][k]; ZZ[k][j]=-Z1[k][j]/Z1[k][k]; Z=Z1[i][k]*Z1[k][j]/Z1[k][k]; ZZ[i][j]=Z1[i][j]-Z;

}

}

for(i=1;i<=n;i++) for(j=1;j<=n;j++)

Z1[i][j]=ZZ[i][j];

}

//求零序阻抗矩阵 for(i=1;i<=n;i++) for(j=1;j<=n;j++) ZZ[i][j]=0; for(k=1;k<=n;k++)

{ ZZ[k][k]=-1/Z0[k][k]; for(i=1;i<=n;i++) for(j=1;j<=n;j++) { if(i!=k&&j!=k) { ZZ[i][k]=-Z0[i][k]/Z0[k][k];

ZZ[k][j]=-Z0[k][j]/Z0[k][k];

Z=Z0[i][k]*Z0[k][j]/Z0[k][k]; ZZ[i][j]=Z0[i][j]-Z; }

}

for(i=1;i<=n;i++)

for(j=1;j<=n;j++)

Z0[i][j]=ZZ[i][j]; }

fprintf(fp2,\正序阻抗矩阵:

for(i=1;i<=n;i++) { fprintf(fp2,\

for(j=1;j<=n;j++)

21

\\n\

电力系统分析课程设计

}

/************************************************************************* 串联型故障

**************************************************************************/ void CHUAN() {

float zp;

printf(\请输入发生单相接地短路故障的节点:\scanf(\

printf(\请输入发生单相接地短路故障的相:\scanf(\k1=getchar();

}

fprintf(fp2,\零序阻抗矩阵: for(i=1;i<=n;i++) { }

fprintf(fp2,\

fprintf(fp2,\for(j=1;j<=n;j++) {

if(Z0[i][j]>=0) }

fprintf(fp2,\fprintf(fp2,\else

\\n\

{ }

if(Z1[i][j]>=0)

fprintf(fp2,\fprintf(fp2,\else

printf(\请输入过渡电阻zp:\ scanf(\ Zf1=Z1[F][F]; Zf2=Z1[F][F]; Zf0=Z0[F][F];

If1=-1/(Zf1+Zf2+Zf0+3*zp); //阻抗有个j If2=If1;

22

电力系统分析课程设计

If0=If1;

If=3*If1;

Uf1=1+If1*Zf1; //本身有个j,因为j*j=-1,所以减号变加号 Uf2=If2*Zf2; Uf0=If0*Zf0; }

/************************************************************************** 并联型故障

***************************************************************************/ void BING() {

float zp;

{

printf(\请输入发生两相短路或两相接地短路故障的节点:\printf(\请输入发生两相短路或两相接地短路故障相:\scanf(\k2=getchar(); scanf(\ k3=getchar();

if(L==2||L==3)

scanf(\

printf(\请输入过渡电阻zp:\ scanf(\

Zf1=Z1[F][F]; Zf2=Z1[F][F]; Zf0=Z0[F][F];

if(L==3)

23

if(L==2) {

If1=-1/(2*Zf1+zp);

If2=-If1; If0=0;

If=sqrt(3)*If1;

Uf1=1+If1*Zf1; Uf2=If2*Zf2; Uf0=0;

}

电力系统分析课程设计

}

/**************************************************************************** 各节点的序电压、序电流

****************************************************************************/ void xu() {

int a,b,c,i; for(i=1;i<=n;i++) { }

24

c=zheng[i].d;

if(c==0) //是否为变压器支路 { }

else //经过变压器,各序分量改变相位 { }

U1_s[i]=0.866*(1+Z1[i][F]*If1); U1_x[i]=0.5*(1+Z1[i][F]*If1); U2_s[i]=0.866*Z1[i][F]*If2; U2_x[i]=-0.5*Z1[i][F]*If2; U0_s[i]=0; U0_x[i]=0;

U1_s[i]=1+Z1[i][F]*If1; U1_x[i]=0;

U2_s[i]=Z1[i][F]*If2; U2_x[i]=0; U0_x[i]=0;

{

If2=-If1*(Zf0+3*zp)/(Zf1+Zf0+3*zp); //并联分流 If0=-If1*Zf1/(Zf1+Zf0+3*zp);

If=sqrt(3)*sqrt(1-Zf1*(Zf0+3*zp)/((2*Zf1+Zf0+3*zp)*(2*Zf1+Zf0+3*zp))); Uf1=1+Zf1*If1;

If1=-1/(Zf1+Zf1*(Zf0+3*zp)/(Zf1+Zf0+3*zp));

Uf2=Zf1*If2;

Uf0=Zf0*If0; } }

U0_s[i]=Z0[i][F]*If0;

电力系统分析课程设计

}

/**************************************************************************** 相电压、相电流

****************************************************************************/ void xiang() {

int a,b,i; for(i=1;i<=n;i++) {

Ua_x[i]=U1_x[i]+U2_x[i]+U0_x[i]; //虚部(因为正常情况下节点电压为1) Ub_x[i]=(-0.5*U1_x[i]-0.5*U2_x[i]+U0_x[i])+(-0.866*(U1_s[i]-U2_s[i])); //虚部 for(i=1;i<=m;i++) { }

a=zheng[i].p1;

I1_x[a][b]=-(U1_s[a]-U1_s[b])/zheng[i].x; //因为阻抗本身有j,所以前加负号 I1_s[a][b]=(U1_x[a]-U1_x[b])/zheng[i].x; I2_x[a][b]=-(U2_s[a]-U2_s[b])/zheng[i].x; I2_s[a][b]=(U2_x[a]-U2_x[b])/zheng[i].x; a=ling[m+i].p1;b=ling[m+i].p2;

I0_x[a][b]=-(U0_s[a]-U0_s[b])/ling[m+i].x; I0_s[a][b]=(U0_x[a]-U0_x[b])/ling[m+i].x;

b=zheng[i].p2;

Ua_s[i]=U1_s[i]+U2_s[i]+U0_s[i]; //实部

Ub_s[i]=(-0.5*U1_s[i]-0.5*U2_s[i]+U0_s[i])+(0.866*(U1_x[i]-U2_x[i])); //实部

Uc_s[i]=(-0.5*U1_s[i]-0.5*U2_s[i]+U0_s[i])+(-0.866*(U1_x[i]-U2_x[i])); //实部 Uc_x[i]=(-0.5*U1_x[i]-0.5*U2_x[i]+U0_x[i])+(0.866*(U1_s[i]-U2_s[i])); //虚部

}

for(i=1;i<=m;i++) {

a=zheng[i].p1; b=zheng[i].p2;

Ia_s[a][b]=I1_s[a][b]+I2_s[a][b]+I0_s[a][b];

Ia_x[a][b]=I1_x[a][b]+I2_x[a][b]+I0_x[a][b];

Ib_x[a][b]=(-0.866*(I1_s[a][b]-I2_s[a][b]))+(-0.5*I1_x[a][b]-0.5*I2_x[a][b]+I0_x[a][b]); //虚部

Ib_s[a][b]=(-0.5*I1_s[a][b]-0.5*I2_s[a][b]+I0_s[a][b])+(-0.866*(I1_x[a][b]-I2_x[a][b]));

25

电力系统分析课程设计

//实部 ; ); }

/************************************************************************* 故障相判定

**************************************************************************/ void panding_x() { }

/**************************************************************************** 输出函数

*****************************************************************************/ void Disp() {

int a,b,i;

26

if(L==1) { } else { }

if(k2=='a'&&k3=='b')

k1='c'; k1='b'; k1='a';

else if(k2=='a'&&k3=='c') else if(k1='a')

{k2='b';k3='c';} else if(k1=='b') {k2='a';k3='c';} else

{k2='a';k3='b';} }

Ic_s[a][b]=(-0.866*(I1_x[a][b]-I2_x[a][b]))+(-0.5*I1_s[a][b]-0.5*I2_s[a][b]+I0_s[a][b]Ic_x[a][b]=(-0.5*I1_x[a][b]-0.5*I2_x[a][b]+I0_x[a][b])+(0.866*(I1_s[a][b]-I2_s[a][b]))

电力系统分析课程设计

fprintf(fp2,\故障类型: 单相接地——1、 两相短路——2、两相接地短路——3 \\n\

fprintf(fp2,\故障类型:%d 故障点:%d 过渡电阻:%f \\n\\n\

fprintf(fp2,\短路点故障相电流值:\ fprintf(fp2,\

fprintf(fp2,\

if(If>=0) else

fprintf(fp2,\

27

fprintf(fp2,\短路点序电流值:\

fprintf(fp2,\ fprintf(fp2,\ fprintf(fp2,\ fprintf(fp2,\ fprintf(fp2,\ fprintf(fp2,\

if(If1>=0)

else

fprintf(fp2,\短路点相电压值:\

fprintf(fp2,\if(Ub_x[F]>=0)

fprintf(fp2,\fprintf(fp2,\fprintf(fp2,\fprintf(fp2,\else if(Uc_x[F]>=0) else

/*故障点信息*/

fprintf(fp2,\短路点序电压值:\

fprintf(fp2,\ Uf1=%f\\n Uf2=%f\\n

Uf0=%f\

if(If2>=0)

else

if(If0>=0) else

电力系统分析课程设计

/*非故障处信息*/

fprintf(fp2,\各节点序电压值:\for(i=1;i<=n;i++) {

if(U1_x[i]>=0)

fprintf(fp2,\else

fprintf(fp2,\ if(U2_x[i]>=0)

}

fprintf(fp2,\ U1[%d]=%f U2[%d]=%f

fprintf(fp2,\else

a=ling[m+i].p1;b=ling[m+i].p2; if(U0_x[i]>=0)

fprintf(fp2,\else

fprintf(fp2,\

fprintf(fp2,\//

U0[%d]=%f\

fprintf(fp2,\各支路各序电流值:\for(i=1;i<=m;i++) {

a=zheng[i].p1;b=zheng[i].p2; if(I1_x[a][b]>=0)

fprintf(fp2,\

I1[%d][%d]=%f+j%f\\n\

else

fprintf(fp2,\I1[%d][%d]=%f-j%f\\n\ if(I2_x[a][b]>=0)

fprintf(fp2,\

I2[%d][%d]=%f+j%f\\n\

else

a=ling[m+i].p1;b=ling[m+i].p2; if(I0_x[a][b]>=0)

fprintf(fp2,\

28

fprintf(fp2,\

电力系统分析课程设计

I0[%d][%d]=%f+j%f\\n\ else

fprintf(fp2,\

}

fprintf(fp2,\各节点相电压值:\ for(i=1;i<=n;i++) { fprintf(fp2,\ if(Ub_x[i]>=0) fprintf(fp2,\ else

fprintf(fp2,\ if(Uc_x[i]>=0)

fprintf(fp2,\ else

fprintf(fp2,\ }

fprintf(fp2,\各支路相电流值:\ for(i=1;i<=m;i++) { a=zheng[i].p1;b=zheng[i].p2; if(Ia_x[a][b]>0)

fprintf(fp2,\

I%c[%d][%d]=%f

j%f\\n\

if(Ia_x[a][b]<0)

fprintf(fp2,\

I%c[%d][%d]=%f

j%f\\n\

if(Ia_x[a][b]==0) fprintf(fp2,\ if(Ib_x[a][b]>0)

fprintf(fp2,\

I%c[%d][%d]=%f

j%f\\n\

if(Ib_x[a][b]<0)

fprintf(fp2,\

I%c[%d][%d]=%f

j%f\\n\

if(Ib_x[a][b]==0)

fprintf(fp2,\ if(Ic_x[a][b]>0)

29

+

-

+

-

电力系统分析课程设计

fprintf(fp2,\

I%c[%d][%d]=%f

-

I%c[%d][%d]=%f

+

j%f\\n\

if(Ic_x[a][b]<0)

fprintf(fp2,\

j%f\\n\

if(Ic_x[a][b]==0)

fprintf(fp2,\

}

fprintf(fp2,\}

/************************************************************************************** 程序主函数

**************************************************************************************/ void main() { }

Read_data(); /*读入原始数据*/ Form_Y();

printf(\请输入故障类型:单相接地——1、 两相短路——2、两相接地短路——3 \\n\ scanf(\ if(L==1)

CHUAN(); BING(); if(L==2||L==3) xu(); xiang(); panding_x();

printf(\原始数据由input.txt输入,计算结果在output.txt中\\n\

Form_Z();

Disp();

30

电力系统分析课程设计

附件二

(1) 算例一的图及数据见正文算例分析 (2) 算例二

五节点算例系统图 五节点算例原始数据 5,9,9

1,0,0,1,0.94176 1,0,0,2,2.04189 1,0,0,4,0.36 1,0,1,3,1.2098 1,0,1,4,0.7561 1,0,3,4,0.9074 1,0,4,5,1.8147 1,0,2,5,2.4197 1,0,0,3,0.38 0,0,1,0.93 0,0,2,1.66667

31

电力系统分析课程设计

0,0,4,0.696796 0,1,3,3.6295 0,3,4,2.7221 0,1,4,2.2684 0,4,5,5.4442 0,2,5,7.2590 0,0,3,0.46388

附件三

输出结果: (1)三节点: 原始数据

节点数: 3 正序支路数: 5 零序支路数: 5

正序数据:

支路类型 节点号 节点号 支路阻抗

0 1 0 X1=0.150000 0 1 2 X1=0.100000 0 1 3 X1=0.100000 0 2 0 X1=0.075000 0 2 3 X1=0.100000 零序数据:

节点号 节点号 支路阻抗

1 0 X0=0.052500 1 2 X0=0.200000 1 3 X0=0.200000 2 0 X0=0.026300 2 3 X0=0.200000

正序导纳矩阵:

-j26.666666 j10.000000 j10.000000 j10.000000 -j33.333332 j10.000000

32

电力系统分析课程设计

j10.000000 j10.000000 -j20.000000

零序导纳矩阵:

-j29.047619 j5.000000 j5.000000 j5.000000 -j48.022812 j5.000000 j5.000000 j5.000000 -j10.000000

正序阻抗矩阵:

j0.037500 j0.000000 j0.000000 j0.000000 j19.210142 j13.750000 j0.000000 j13.750000 j0.101429

零序阻抗矩阵:

j0.039507 j0.006509 j0.023008 j0.006509 j0.023039 j0.014774 j0.023008 j0.014774 j0.118891

故障类型: 单相接地——1、 两相短路——2、两相接地短路——3

故障类型:1 故障点:3 过渡电阻:0.000000

短路点序电压值:

Uf1=0.684758 Uf2=-0.315242 Uf0=-0.369516 短路点相电压值:

Ua[3]=-0.000000

Ub[3]=-0.554274-j0.866000 Uc[3]=-0.554274+j0.866000

33

电力系统分析课程设计

短路点序电流值:

If1=-j3.108021 If2=-j3.108021 If0=-j3.108021

短路点故障相电流值: If=-j9.324062

各节点序电压值:

U1[1]=1.000000+j0.000000 U2[1]=0.000000+j0.000000 U0[1]=-0.071509+j0.000000

U1[2]=-41.735287+j0.000000 U2[2]=-42.735287+j0.000000 U0[2]=-0.045918+j0.000000

U1[3]=0.684758+j0.000000 U2[3]=-0.315242+j0.000000 U0[3]=-0.369516+j0.000000

各支路各序电流值:

I1[1][0]=0.000000-j6.666667 I2[1][0]=0.000000+j0.000000 I0[1][0]=0.000000+j1.362079

I1[1][2]=0.000000-j427.352875 I2[1][2]=0.000000-j427.352875 I0[1][2]=0.000000+j0.127954

I1[1][3]=0.000000-j3.152421 I2[1][3]=0.000000-j3.152421 I0[1][3]=0.000000-j1.490033

I1[2][0]=0.000000+j556.470459 I2[2][0]=0.000000+j569.803772 I0[2][0]=0.000000+j1.745942

34

电力系统分析课程设计

I1[2][3]=0.000000+j424.200439 I2[2][3]=0.000000+j424.200439 I0[2][3]=0.000000-j1.617988

各节点相电压值:

Ua[1]=0.928491

Ub[1]=-0.571509-j0.866000 Uc[1]=-0.571509+j0.866000

Ua[2]=-84.516495

Ub[2]=42.189369-j0.866000 Uc[2]=42.189369+j0.866000

Ua[3]=-0.000000

Ub[3]=-0.554274-j0.866000 Uc[3]=-0.554274+j0.866000

各支路相电流值:

Ia[1][0]=0.000000 - j5.304587 Ib[1][0]=5.773333 + j4.695412 Ic[1][0]=5.773333 + j4.695412

Ia[1][2]=0.000000 - j854.577820 Ib[1][2]=0.000000 + j427.480835 Ic[1][2]=0.000000 + j427.480835

Ia[1][3]=0.000000 - j7.794875 Ib[1][3]=0.000000 + j1.662388 Ic[1][3]=0.000000 + j1.662388

Ia[2][0]=0.000000 + j1128.020142 Ib[2][0]=11.546649 - j561.391174 Ic[2][0]=11.546649 - j561.391174

Ia[2][3]=0.000000 + j846.782898 Ib[2][3]=0.000000 - j425.818420 Ic[2][3]=0.000000 - j425.818420

35

电力系统分析课程设计

(2)五节点:

原始数据

节点数: 5 正序支路数: 9 零序支路数: 9

正序数据:

支路类型 节点号 节点号 支路阻抗

0 0 1 X1=0.941760 0 0 2 X1=2.041890 0 0 4 X1=0.360000 0 1 3 X1=1.209800 0 1 4 X1=0.756100 0 3 4 X1=0.907400 0 4 5 X1=1.814700 0 2 5 X1=2.419700 0 0 3 X1=0.380000 零序数据:

节点号 节点号 0 1 X0=0.930000 0 2 X0=1.666670 0 4 X0=0.696796 1 3 X0=3.629500 3 4 X0=2.722100 1 4 X0=2.268400 4 5 X0=5.444200 2 5 X0=7.259000 0 3 X0=0.463880

正序导纳矩阵:

-j3.211001 j0.000000

j0.000000 j0.413274

j0.826583 j0.000000

j1.322576 支路阻抗

j0.826583 j1.322576 -j0.903017 j0.000000 j0.000000 j0.000000 -j4.560212 j1.102050 j1.102050 -j5.753459

36

j0.000000 j0.000000

电力系统分析课程设计

j0.551055

j0.000000 j0.413274 j0.000000 j0.551055 -j0.964330

零序导纳矩阵:

-j1.791628 j0.000000 j0.275520 j0.440839 j0.000000

j0.000000 -j0.737759 j0.000000 j0.000000 j0.137760

j0.275520 j0.000000

j0.440839 j0.183682

j0.000000 -j0.321442

正序阻抗矩阵:

j0.383678 j0.081486

j0.037293 j0.643691

j0.097248 j0.054369

j0.114630 j0.163856

j0.081486 j1.406485

零序阻抗矩阵:

j0.600949 j0.078621

j0.014681 j0.665169

j0.075778 j0.045916

j0.000000 j0.000000 j0.137760 j0.037293 j1.401991 j0.024882 j0.074990 j0.643691 j0.014681 j1.479662 j0.008574 37

-j2.798614 j0.000000 j0.097248 j0.024882 j0.255398 j0.076483 j0.054369 j0.075778 j0.008574 j0.374484 j0.367363 -j2.427025 j0.183682 j0.114630 j0.074990 j0.076483 j0.230503 j0.163856 j0.126575 j0.054306 j0.073922 j0.367363

电力系统分析课程设计

j0.126575 j0.054306 j0.073922 j0.468217 j0.290828

j0.078621 j0.665169 j0.045916 j0.290828 j3.562243

故障类型: 单相接地——1、 两相短路——2、两相接地短路——3

故障类型:1 故障点:3 过渡电阻:0.000000

短路点序电压值:

Uf1=0.711506 Uf2=-0.288494 Uf0=-0.423011 短路点相电压值:

Ua[3]=-0.000000

Ub[3]=-0.634517-j0.616164 Uc[3]=-0.634517+j0.866000

短路点序电流值:

If1=-j1.129586 Uf2=-j1.129586 If0=-j1.129586

短路点故障相电流值: If=-j3.388757

各节点序电压值:

U1[1]=0.890151+j0.000000 U2[1]=-0.109849+j0.000000 U0[1]=-0.085597+j0.000000

U1[2]=0.971893+j0.000000

38

电力系统分析课程设计

U2[2]=-0.028107+j0.000000 U0[2]=-0.009685+j0.000000

U1[3]=0.711506+j0.000000 U2[3]=-0.288494+j0.000000 U0[3]=-0.423011+j0.000000

U1[4]=0.913606+j0.000000 U2[4]=-0.086394+j0.000000 U0[4]=-0.083502+j0.000000

U1[5]=0.938586+j0.000000 U2[5]=-0.061414+j0.000000 U0[5]=-0.051866+j0.000000

各支路各序电流值:

I1[0][1]=0.000000+j0.945199 I2[0][1]=0.000000-j0.116643 I0[0][1]=0.000000-j0.092040

I1[0][2]=0.000000+j0.475977 I2[0][2]=0.000000-j0.013765 I0[0][2]=0.000000-j0.005811

I1[0][4]=0.000000+j2.537796 I2[0][4]=0.000000-j0.239982 I0[0][4]=0.000000-j0.119837

I1[1][3]=0.000000-j0.147665 I2[1][3]=0.000000-j0.147665 I0[1][3]=0.000000-j0.092964

I1[1][4]=0.000000+j0.031022 I2[1][4]=0.000000+j0.031022 I0[3][4]=0.000000+j0.124723

I1[3][4]=0.000000+j0.222725 I2[3][4]=0.000000+j0.222725 I0[1][4]=0.000000+j0.000924

39

本文来源:https://www.bwwdw.com/article/7x4x.html

推荐文章
Top