基于直流潮流法的电力系统潮流计算程序设计

一、设计题目

基于直流潮流法的电力系统潮流计算程序设计

二、计算方法

直流潮流法

三、设计要求

掌握基于直流潮流法的电力系统潮流计算理论,建立直流潮流法的潮流计算数学模型,制定直流潮流法的潮流计算步骤,编写直流潮流法的潮流计算程序。具体要求:根据直流潮流法计算IEEE 30节点的潮流分布,计算各支路电压相位和支路有功功率。

四、原始数据

IEEE-30节点电力系统如图1所示。节点数据如表1所示,变压器数据如表2所示,并联电容数据如表3所示,线路数据如表4所示。

图1 IEEE-30节点系统接线图

 

五、参考资料

王锡凡《现代电力系统分析》。

表1 节点数据

节点号

节点类型

节点电压

节点相角

发电机有功

发电机无功

负荷有功)

负荷无功

1

SN

1.05

0

 

 

 

 

2

PV

1.045

 

0.8

 

0.217

 

3

PQ

1

 

0

0

0.024

0.012

4

PQ

1

 

0

0

0.076

0.016

5

PV

1.01

 

0.5

 

0.942

 

6

PQ

1

 

0

0

0

0

7

PQ

1

 

0

0

0.228

0.109

8

PV

1.01

 

0.2

 

0.3

 

9

PQ

1

 

0

0

0

0

10

PQ

1

 

0

0

0.058

0.02

11

PV

1.05

 

0.2

 

0

 

12

PQ

1

 

0

0

0.112

0.075

13

PV

1.05

 

0.2

 

0

 

14

PQ

1

 

0

0

0.062

0.016

15

PQ

1

 

0

0

0.082

0.025

16

PQ

1

 

0

0

0.035

0.018

17

PQ

1

 

0

0

0.09

0.058

18

PQ

1

 

0

0

0.032

0.009

19

PQ

1

 

0

0

0.095

0.034

20

PQ

1

 

0

0

0.022

0.007

21

PQ

1

 

0

0

0.175

0.112

22

PQ

1

 

0

0

0

0

23

PQ

1

 

0

0

0.032

0.016

24

PQ

1

 

0

0

0.087

0.067

25

PQ

1

 

0

0

0

0

26

PQ

1

 

0

0

0.035

0.023

27

PQ

1

 

0

0

0

0

28

PQ

1

 

0

0

0

0

29

PQ

1

 

0

0

0.024

0.009

30

PQ

1

 

0

0

0.106

0.019

表2 变压器数据

支路号

首端节点号

末端节点号

电阻

电抗

变比

1

6

9

0

0.208

0.978

2

6

10

0

0.556

0.969

3

4

12

0

0.256

0.932

4

28

27

0

0.396

0.968

表3 并联电容数据

节点号

电钠(标幺值)

10

0.19

24

0.04

表3 线路数据

支路号

首端节点号

末端节点号

支路电阻

支路电抗

对地电纳/2

1

1

2

0.0192

0.0575

0.0264

2

1

3

0.0452

0.1852

0.0204

3

2

4

0.057

0.1737

0.0184

4

3

4

0.0132

0.0379

0.0042

5

2

5

0.0472

0.1983

0.0209

6

2

6

0.0581

0.1763

0.0187

7

4

6

0.0119

0.0414

0.0023

8

5

7

0.046

0.116

0.0102

9

6

7

0.0267

0.082

0.0085

10

6

8

0.012

0.042

0.0045

11

9

11

0

0.208

0

12

9

10

0

0.11

0

13

12

13

0

0.14

0

14

12

14

0.1231

0.2559

0

15

12

15

0.0662

0.1304

0

16

12

16

0.0945

0.1987

0

17

14

15

0.221

0.1997

0

18

16

17

0.0824

0.1932

0

19

15

18

0.107

0.2185

0

20

18

19

0.0639

0.1292

0

21

19

20

0.034

0.068

0

22

10

20

0.0936

0.209

0

23

10

17

0.0324

0.0845

0

24

10

21

0.0348

0.0749

0

25

10

22

0.0727

0.1499

0

26

21

22

0.0116

0.0236

0

27

15

23

0.1

0.202

0

28

22

24

0.115

0.179

0

29

23

24

0.132

0.27

0

30

24

25

0.1885

0.3292

0

31

25

26

0.2544

0.38

0

32

25

27

0.1093

0.2087

0

33

27

29

0.2198

0.4153

0

34

27

30

0.3202

0.6027

0

35

29

30

0.2399

0.4533

0

36

8

28

0.0636

0.2

0.0214

37

6

28

0.0169

0.0599

0.0065

首件导入原始数据:

%因为是直流法,所以可以只统计节点有功内容
%内容中只包含节点发电机有功和负荷有功,算出节点的净有功
Bus.con=[...
1 0    0;
2 0.8    0.217;
3 0    0.024;
4 0    0.076;
5 0.5    0.942;
6 0    0;
7 0    0.228;
8 0.2    0.3;
9 0    0;
10 0    0.058;
11 0.2    0;
12 0    0.112;
13 0.2    0;
14 0    0.062;
15 0    0.082;
16 0    0.035;
17 0    0.09;
18 0    0.032;
19 0    0.095;
20 0    0.022;
21 0    0.175;
22 0    0;
23 0    0.032;
24 0    0.087;
25 0    0;
26 0    0.035;
27 0    0;
28 0    0;
29 0    0.024;
30 0    0.106;];
%线路数据(不考虑电阻)XL,Y/2
Line.con=[... 
1    2    0.0575    0.0264;
1    3    0.1852    0.0204;
2    4    0.1737    0.0184;
3    4    0.0379    0.0042;
2    5    0.1983    0.0209;
2    6    0.1763    0.0187;
4    6    0.0414    0.0023;
5    7    0.116    0.0102;
6    7    0.082    0.0085;
6    8    0.042    0.0045;
9    11    0.208    0;
9    10    0.11    0;
12    13    0.14    0;
12    14    0.2559    0;
12    15    0.1304    0;
12    16    0.1987    0;
14    15    0.1997    0;
16    17    0.1932    0;
15    18    0.2185    0;
18    19    0.1292    0;
19    20    0.068    0;
10    20    0.209    0;
10    17    0.0845    0;
10    21    0.0749    0;
10    22    0.1499    0;
21    22    0.0236    0;
15    23    0.202    0;
22    24    0.179    0;
23    24    0.27    0;
24    25    0.3292    0;
25    26    0.38    0;
25    27    0.2087    0;
27    29    0.4153    0;
27    30    0.6027    0;
29    30    0.4533    0;
8    28    0.2    0.0214;
6    28    0.0599    0.0065;];
%并联电容数据
CN.con=[...
    10 0.19;
    24 0.04;];
%变压器数据(首,末,电抗,变比)
Transformer.con=[...
6    9    0.208    0.978;
6    10    0.556    0.969;
4    12    0.256    0.932;
28    27    0.396    0.968;];
%节点命名
Bus.names = {... 
  'Bus 1'; 'Bus 2'; 'Bus 3'; 'Bus 4'; 'Bus 5'; 
  'Bus 6'; 'Bus 7'; 'Bus 8'; 'Bus 9';'Bus 10';
  'Bus 11'; 'Bus 12'; 'Bus 13'; 'Bus 14'; 'Bus 15';
  'Bus 16'; 'Bus 17'; 'Bus 18';'Bus 19';'Bus 20';
  'Bus 21'; 'Bus 22'; 'Bus 23'; 'Bus 24'; 'Bus 25'; 
  'Bus 26'; 'Bus 27'; 'Bus 28'; 'Bus 29';'Bus 30'};

之后进行数据的简化和数学模型的搭建,并最终形成导纳矩阵方便计算:

%%本程序选择以30节点为例进行直流潮流分析,并选取1节点为基准点
%function flow_calculation,读取原始数据文件
clear;clc;
tic
eval('IEEE_30_mdl')
%计算节点净有功,组成新的矩阵
P=zeros(30,1);
for i=1:30
    P(i,1)=Bus.con(i,2)-Bus.con(i,3);
end
%简化变压器模型,根据节点生成新矩阵,首末节点、ZT/K,ZT/1-k,ZT/k(k-1)
T=zeros(4,5);
for m=1:4
    T(m,1)=Transformer.con(m,1);
    T(m,2)=Transformer.con(m,2);
    T(m,3)=Transformer.con(m,3)/Transformer.con(m,4);
    T(m,4)=Transformer.con(m,3)/(1-Transformer.con(m,4));
    T(m,5)=-T(m,4)/Transformer.con(m,4);
end
%生成30个点的对应的电容补偿矩阵
C=zeros(30,1);
C(10,1)=0.19;
C(24,1)=0.04;
line=size(Line.con,1);%支路数目

n=30;%节点数

Y=zeros(n);%创建导纳矩阵Y
%% 计算导纳矩阵
for m=1:line
    a=Line.con(m,1);%首节点a
    b=Line.con(m,2);%末节点b
    z=Line.con(m,3);%节点ab间的电抗
    y2=1i*Line.con(m,4);%导纳/2
    
    Y(a,b)=-1/z;%ab间互导纳
    Y(b,a)=Y(a,b);
    %Y(a,a)=Y(a,a)+y2+1/z;%求自导纳
    Y(a,a)=Y(a,a)+1/z;
    %Y(b,b)=Y(b,b)+y2+1/z;
    Y(b,b)=Y(b,b)+1/z;
    C(a)=C(a,1);%输入节点a,b的补偿电容导纳
    C(b)=C(b,1);
    Y(a,a)=Y(a,a)+C(a);
    Y(b,b)=Y(b,b)+C(b);
    %考虑变压器
    for k=1:4
        if T(k,1)==a
           %Y(a,a)=Y(a,a)+T(k,4)+1/T(k,3);
           Y(a,a)=Y(a,a)+1/T(k,3);
           Y(a,b)=Y(a,b)-T(k,3);
           Y(b,a)=Y(a,b);
        end
        if T(k,2)==b
           %Y(b,b)=Y(b,b)+T(k,5)+1/T(k,3);
           Y(b,b)=Y(b,b)+1/T(k,3);
           Y(b,a)=Y(b,a)-T(k,3);
           Y(b,a)=Y(a,b);
        end
    end
end
%存储基准点导纳相关数据
Row=Y(1,:);
Y(1,:)=[];%删除第一行
Line=Y(:,1);
%去除基准点导纳数据,取第一点为基准点
Y(:,1)=[];%删除第一列
Bus1=P(1,1);%暂存第一个点的有功
%去除基准点有功
P(1,:)=[];
%转化为相角矩阵
A=inv(Y)*P;
%加入基准点相角
A0=[0];
A=[A0;A];
%转化为角度
th=zeros(n,3);
for i=1:n
th(i,:)=[i 1 A(i,1)*180/pi];
end
%加入基准点有功
P=[Bus1;P];
%加入基准点导纳信息
Y=[Line Y];
Y=[Row;Y];
%构建有功矩阵
AP=zeros(30);
for n=1:30
    for m=1:30
        AP(n,m)=(A(n)-A(m))*(-Y(n,m));
    end
end
%节点相角输出
tab1=[{'节点'},{'节点电压'},{'节点相角'}];
tab2=[ th(:,1) th(:,2) th(:,3) ];
xlswrite('zhiliu.xls',tab1,1,'A1');
xlswrite('zhiliu.xls',tab2,1,'A2');

本程序适用于直流潮流法计算,并且针对IEEE-30节点jin进行分析,如果有其他类型潮流分析需考虑迭代等方法。

猜你喜欢

转载自blog.csdn.net/qq_35361756/article/details/85461903