基於直流潮流法的電力系統潮流計算程式設計
一、設計題目 |
基於直流潮流法的電力系統潮流計算程式設計 |
二、計算方法 |
直流潮流法 |
三、設計要求 |
掌握基於直流潮流法的電力系統潮流計算理論,建立直流潮流法的潮流計算數學模型,制定直流潮流法的潮流計算步驟,編寫直流潮流法的潮流計算程式。具體要求:根據直流潮流法計算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進行分析,如果有其他型別潮流分析需考慮迭代等方法。