20621702 Matlab Loadflow

download 20621702 Matlab Loadflow

of 29

Transcript of 20621702 Matlab Loadflow

LOAD FLOW berbasis METODA GAUSS-SEIDEL 1. Persamaan Jaringan Persamaan yang menggambarkan kerja jaringan sistem daya yang menggunakan kerangka bus referensi, dalam bentuk impedansi adalah : V Bus = Z Bus I Bus atau dalam bentuk admitansi adalah : I Bus = Y Bus V Bus Apabila bus pentanahan termasuk dalam jaringan, elemen elemen matriks Impedansi bus dan admitansi bus akan memasukkan efek elemen elemen yang terpasang pararel ke tanah seperti kapasitor dan reaktor statis, line charging, dan elemen pararel pada persamaan transformator, dimana bus pentanahan dipilih sebagai titik referensi. Tegangan bus pada jaringan menghasilkan persamaan yang diukur terhadap tanah. Dan jika bus pentanahan tidak termasuk dalam jaringan, elemen elemen matriks tidak menyertakan efek elemen yang terpasang pararel dan salah satu bus yang ada dalam jaringan harus dipilih sebagai titik referensi. Dalam hal ini, efek elemen elemen yang pararel dianggap sebagai sumber arus dalam bus bus dalam jaringan, dan tegangan bus dalam persamaan diukur terhadap bus referensi yang dipilih. 2. Persamaan pembebanan pada bus Daya aktif dan reakif pada suatu bus i adalah : Pi JQi = ViI*i Dan arus adalah : 1

Ii =

Pi jQi Vi *

2

subtitusi dari persamaan diatas :

n Pi n jQi 3 = Vi yij yij V j j i Vi * 0 1 j= j=

karena penyelesaian matematika studi aliran daya merupakan persamaan aljabar nonlinier maka penyelesaiannya menggunakan metode iterasi 3. Studi aliran daya Metode Gauss Seidel Dalam kajian tentang aliran daya, penting untuk memecahkan seperangkat

persamaan non linear yang direpresentasikan dengan persamaan (3) untuk dua variabel yang tidak diketahui pada masing-masing node/simpul. Dalam metode Gaus Seidel (3) diselesaikan untuk Vi dan rangkaian iterasinya menjadi.

Vi ( k +1)

Pi sch jQisch + yijV j( k ) *( k ) Vi = yij

ji

(4)

Dimana yij yang diperlihatkan dalam huruf lowercase (bagian bawah) merupakan sebuah admitansi per unit. Pisch dan Qisch merupakan daya aktif dan daya reaktif yang dijelaskan per unit. Dalam menulis garis KCL, arus memasuki bus i diasumsikan positif. Demikian pula, untuk bus dimana daya ril dan daya reaktif diinjeksikan ke dalam bus, seperti bus generator, Pisch dan Qisch mempunyai nilai-nilai positif. Untuk memuat bus dimana daya reaktif dan daya ril mengalir jauh dari bus, Pisch dan Qisch mempunyai nilai negatif. Jika (2.3) dipecahkan untuk Pisch dan Qisch, kita mempunyai.n n Pi ( k +1) = Vi*( k ) [i( k ) yij yijV j( k ) ] j= 0 j= 0

ji

(5)

n n Qi( k +1) = Vi*( k ) [i( k ) yij yijV j( k ) ] j= 0 j=0

ji

(6)

Persamaan aliran daya biasanya dijelaskan dalam istilah unsur-unsur matriks admittance/entri bus. Karena unsur-unsur off-diagonal admitansi matriks bus Ybus,

2

diperlihatkan dengan huruf-huruf uppercase, yakni Yij = - Yij, dan unsur-unsur diagonal adalah Yij = Yij, (2.4) menjadi

Vi ( k +1)dan

Pi 6 ch jQisch + Vi *( k ) = Yii

j i

yijV j( k )

(7)

n Pi(k + 1) = Vi*(k )[Vi(k )Yi i yi V j(k ) j j= 0 j i

j i

(8)j i

n Qi(k + 1) = Vi*( k ) [Vi( k )Yi i yijV j(k ) j= 0 j i

(9)

Yij meliputi admitansi ke tanah charging susceptance dan admitansi yang lain. Yang cocok terhadap tanah. Sebuah model yang dipresentasikan untuk mentransformasikan kandungan rasio nominal-off, yang meliputi transformator. Karena kedua komponen tegangan ditetapkan untuk slack bus, ada persamaan 2(n-1) yang harus dipecahkan oleh metode iterasi. Di bawah kondisi operasi normal, besarnya tegangan bus yang berada di sekitar 1.0 per unit atau dekat dengan besarnya tegangan slack bus. Besarnya tegangan beban bus agaknya lebih rendah daripada nilai slack bus, tergantung pada keperluan daya reaktif, dimana tegangan yang dijadwalkan pada generator bus agak tinggi. serta, sudut fasa bus beban berada di bawah referensi sudut sesuai dengan permintaan daya ril, sedangkan sudut fasa generator bus mungkin berada diatas nilai referensi tergantung pada jumlah daya ril yang mengalir ke dalam bus. Demikianlah untuk metode Gaus-Seidel, estimasi awal tegangan dari 1,0 + j0,0 untuk tegangan yang tidak diketahui memuaskan, berkorelasi dengan catatan operasi aktual. Untuk bus P-Q, daya real dan reaktif Pisch dan Qisch diketahui. Diawali dengan sebuah estimasi awal, (7) dipecahkan untuk komponen tegangan yang ril dan imajiner. Untuk tegangan-berkontrol bus (P-V buses) dimana Pisch dan [VI] ditetapkan, pertama (9) dipecahkan untuk Q(k+1), dan kemudian digunakan dalam (7) untuk memecahkan Vi(k+1), dan solusi yang konvergensikan efek tap setting

3

namun demikian karena [VI] ditetapkan, hanya bagian imajiner dari Vi(k+1) ditahan, dan bagian ril dipilih agar memuaskan.( i( k +1) ) 2 + (f i( k +1) ) 2 = Vi2

(10)

atau

( 1 ei k+ ) =

Vi

2

1 (f i( k + ) ) 2

(11) merupakan komponen ril dan imajiner tegangan VI(k+1)

di mana i

( k +1)

dan f i

(k + ) 1

dalam rangkaian iteratif. Tingkat konvergensi ditingkatkan dengan menerapkan faktor kecepatan terhadap solusi yang kurang lebih dihasilkan dari masing-masing iterasi.

1 Vi( k + ) =

V1

2

1 (f i( k + ) ) 2

(12)

Dimana adalah faktor kecepatan. Nilainya tergantung pada sistem. Tingkat 1,3 hingga 1,7 ditemukan memuaskan untuk sistem-sistem khusus. Tegangan yang diperbaharui langsung menggantikan nilai sebelumnya dalam solusi persamaan berikutnya. Proses dilanjutkan sampai yang ditetapkan, misalnya.,e (ik+ 1) e (ik ) e f i(k+ 1) f i(k ) e

perubahan-perubahan dalam

komponen ril dan imajiner tegangan bus itearsi berturut-turut berada dalam akurasi

(13)

Untuk daya yang tidak sebanding yang selayaknya kecil dan dapat diterima, sangat sedikit toleransi yang harus ditetapkan pada kedua komponen tegangan. Sebuah tegangan yang secara akurat memuaskan. Praktisnya, berdasarkan berada pada tingkat 0,00001 hingga 0,00005 pu daya yang tak sebanding. Iterasi metode untuk menentukan penyelesaian sebuah solusi

indeks akurasi yang dipasang pada

4

berlanjut sampai besarnya elemen yang paling luas dalam kolom P dan Q kurang dari nilai yang ditetapkan. Sebuah akurasi daya yang tidak sebanding adalah 0,001 pu. Sekali solusi dikonvergensikan, jaringan daya ril dan reaktif pada slack bus dihitung dari (8) dan (9).

4. Aliran Daya dan Rugi-Rugi Jaringan Setelah selesai menyelesaiakan iterasi untuk tegangan tiap-tiap bus, maka langkah selanjutnya adalah menghitung aliran daya dan rugi-rugi pada jaringan. Jika kita anggap sebuah jaringan yang menghubungkan dua bus i dan j. Maka arus yang mengalir Iij, arus yang terukur pada bus i bernilai positif jika ia mengalir ke arah bus j. i j diperoleh dari Iij = Il + Ii0 = yij(Vi-Vj)+yi0VI Begitu pula jika sebaliknya j i diperoleh dari Iji = -Il + Ij0 = yji(Vj-Vi)+yj0Vj Sij = ViI*ij Sji = VjI*ij Dari persamaan diatas diperoleh SLij = Sij + Sji (18) (15) (16) (17) Daya compleks Sij dari bus I ke bus j dan Sji dari bus j ke bus I adalah : (14)

5

5. FlowchartSTART

Basemva = 100 Accuracy = 0,001 Accel = 1,8 Maxiter = 100

Baca busdata Baca linedata

Membentuk Branch Admitansi

Membuat matrix ber elemen nol

Membentuk off diagonal elemen matrix Ybus

Membentuk diagonal elemen matrix Ybus

Mulai Counter Untuk iterasi

Menghitung tegangan Bus i

B

A

6

B

A

Menghitung daya aktif pada bus i

Menghitung daya reaktif pada bus i

TidakMenguji konvergensi Cetak Voltage magnitude dan sudutnya, daya aktif dan daya reaktif dari generator dan beban, shunt capasitor, total daya generator dan total beban dan total shunt capasitor

Ya

Menghitung aliran daya dan rugi daya (losses) pada jaringan

SLij = Sij + Sji

Cetak daya yang mengalir masuk pada tiap-tiap terminal dan rugi daya (losses) dari jaringan pada tiap-tiap bus

STOP

7

Contoh Aplikasi 1 Pada gambar menunjukkan diagram segaris dalam sistim tenaga 3 (tiga) bus dengan pembangkitan pada bus 1. Harga tegangan pada bus 1 diatur sampai 1,05 pu. Beban pada bus 2 dan 3. Impedansi-impedansi saluran dalam per unit pada dasar 100 MVA, dan untuk suseptansi muatan pada saluran diabaikan. Tentukan aliran daya dan rugi-rugi dengan meoda gauss-seidel

0.02 + j0.04

1

2256.6 MW 110.2 Mvar

G0.0125 + j0.025 0.01 + j0.03 Slack Bus V1 = 1.05= epsilon iter = iter + 1; vk2 = conj(v2); ek3 = conj(e3); v2 = 1/(y12+y23)*((conj(s2)/vk2)+(y12*v1+y23*e3)); v3 = 1/(y13+y23)*((conj(s3)/ek3)+(y13*v1+y23*v2)); % arus pada saluran i13 = y13*(v1-v3); i31 = -i13; i23 = y23*(v2-v3);

10

end

% konjugat dari arus pada aluran : ik13 = conj(i13); ik31 = conj(i31); ik23 = conj(i23); % aliran daya dalam bentuk bilangan kompleks pada saluran : s13 = v1*ik13*100; s31 = v3*ik31*100; s23 = v2*ik23*100; x = abs(v3-e3); e3 = v3; fprintf('%i', iter), disp([s13, s31, s23]);

disp('___________________________________'); disp(' '); disp('==============='); disp('! lanjutan 2 !'); disp('==============='); % DAsar 100 MVA epsilon = 0.00001; x = 1; % Data impedansi pada saluran : z12 = 0.02 + j*0.04; z13 = 0.01 + j*0.03; z23 = 0.0125 + j*0.025; % Admitansi pada saluran : y12 = 1/z12; y13 = 1/z13; y23 = 1/z23; % Beban dalam per unit : s2 = -(256.6 + j*110.2)/100; s3 = -(138.6 + j*45.2)/100; % Bus 1 sebagai slack bus dengan : v1 = 1.05 + j*0.0; vk1 = conj(v1); %estimasi tegangan awal untuk : v2 = 1.0 + j*0.0; e3 = 1.0 + j*0.0; iter = 0; disp('_________________________'); disp('! ! ! '); disp('! ! aliran day daya pada ! aliran daya pada saluran !'); disp('! iterasi ! slack bus ! !'); disp('! ke : ! (bus 1) ! !'); disp('! !-----------------------------------------!'); disp('! ! S32 ! sL12 ! sl13 !'); disp('_____________________________________________________'); disp(' '); format short g while x>= epsilon iter = iter + 1; vk2 = conj(v2); ek3 = conj(e3); v2 = 1/(y12+y23)*((conj(s2)/vk2)+(y12*v1+y23*e3)); v3 = 1/(y13+y23)*((conj(s3)/ek3)+(y13*v1+y23*v2)); % arus pada saluran i12 = y12*(v1-v2);

11

end

I21 = -i12; i13 = y13*(v1-v3); i31 = -i13; i23 = y23*(v2-v3); i32 = -i23; % konjugat dari arus pada aluran : ik12 = conj(i12); ik21 = conj(i21); ik13 = conj(i13); ik31 = conj(i31); ik32 = conj(i32); % aliran daya dalam bentuk bilangan kompleks pada saluran : s12 = v1*ik12*100; s21 = v2*ik21*100; s13 = v1*ik13*100; s31 = v3*ik31*100; s32 = v3*ik32*100; % rugi-rugi daya dalam bentuk bilangan kompleks pada saluran : sl12 = s12+s21; sl13 = s13+s31; x = abs(v3-e3); e3 = v3; fprintf('%i', iter), disp([s32, sl12, sl13]);

disp('___________________________________'); disp(' '); disp('==============='); disp('! lanjutan 3 !'); disp('==============='); % DAsar 100 MVA epsilon = 0.00001; x = 1; % Data impedansi pada saluran : z12 = 0.02 + j*0.04; z13 = 0.01 + j*0.03; z23 = 0.0125 + j*0.025; % Admitansi pada saluran : y12 = 1/z12; y13 = 1/z13; y23 = 1/z23; % Beban dalam per unit : s2 = -(256.6 + j*110.2)/100; s3 = -(138.6 + j*45.2)/100; % Bus 1 sebagai slack bus dengan : v1 = 1.05 + j*0.0; vk1 = conj(v1); %estimasi tegangan awal untuk : v2 = 1.0 + j*0.0; e3 = 1.0 + j*0.0; iter = 0; disp('_________________________'); disp('! ! ! '); disp('! ! !'); disp('! iterasi ! !'); disp('! ke : ! !'); disp('! !-------------------!');

12

disp('! ! sl23 !'); disp('_____________________________________________________'); disp(' '); format short g while x>= epsilon iter = iter + 1; vk2 = conj(v2); ek3 = conj(e3); v2 = 1/(y12+y23)*((conj(s2)/vk2)+(y12*v1+y23*e3)); v3 = 1/(y13+y23)*((conj(s3)/ek3)+(y13*v1+y23*v2)); % arus pada saluran i23 = y23*(v2-v3); i32 = -i23; % konjugat dari arus pada aluran : ik23 = conj(i23); ik32 = conj(i32); % aliran daya dalam bentuk bilangan kompleks pada saluran : s23 = v2*ik23*100; s32 = v3*ik32*100; % rugi-rugi daya dalam bentuk bilangan kompleks pada saluran : sl12 = s12+s21; sl13 = s13+s31; x = abs(v3-e3); e3 = v3; fprintf('%i', iter), disp([s32, sl12, sl13]); end

Contoh Aplikasi 2

13

Single Line diagram dari sistem yang akan di hitung adalah sebagai berikut :Slack 1

G

G

2

G26

3

G5

8

G

13

18

6

7

4

9

12

14

16

11

25

19

10

23

24

15

22 21

20

17

14

Data yang diperlukan untuk melakukan perhitungan dalam makalah ini adalah berupa data : beban untuk tiap-tiap bus, data dari generator, data kapasitor shunt, data tapping transformator, dan data resistansi, reaktansi serta kapasitansi dari line transmisi dan transformator. Untuk input yang dibutuhkan oleh program untuk melakukan perhitungan data yang digunakan dibagi dalam dua bagian yaitu : a. BusdataBus Bus Voltage Angle No Code Mag. Degre 1 1 1.025 0.0 2 2 1.02 0.0 3 2 1.025 0.0 4 2 1.05 0.0 5 2 1.045 0.0 6 0 1.0 0.0 7 0 1.0 0.0 8 0 1.0 0.0 9 0 1.0 0.0 10 0 1.0 0.0 11 0 1.0 0.0 12 0 1 0 13 0 1 0 14 0 1 0 15 0 1 0 16 0 1 0 17 0 1 0 18 0 1 0 19 0 1 0 20 0 1 0 21 0 1.0 0 22 0 1.0 0 23 0 1.0 0 24 0 1.0 0 25 0 1.0 0 26 2 1.015 0 --Load-MW Mvar 0.0 0.0 22.0 15.0 64.0 50.0 25.0 10.0 50.0 30.0 76.0 29.0 0.0 0.0 0.0 0.0 89.0 50.0 0.0 0.0 25.0 15.0 89.0 48.0 31.0 15.0 24.0 12.0 70.0 31.0 55.0 27.0 78.0 38.0 153.0 67.0 75.0 15.0 48.0 27.0 46.0 23.0 45.0 22.0 25.0 12.0 54.0 27.0 28.0 13.0 40.0 20.0 ---Generator--injected MW Mvar Qmin Qmax Mvar 0.0 0.0 0 0 0 79.0 0.0 40 250 0 20.0 0.0 40 180 0 100 0.0 40 80 2 300 0.0 40 160 5 0.0 0.0 0 0 2 0.0 0.0 0 0 0 0.0 0.0 0 0 0 0.0 0.0 0 0 0 0.0 0.0 0 0 0 0.0 0.0 0 0 1.5 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 60.0 0 15 50 0

15

b. Linedata

Dari

Ke

bus 1 1 2 2 2 2 2 3 4 4 5 6 6 6 6 6 7 7 8 9 10 10 10 10 11 11 12 12 13 13 13 14 14 15 16 16 17 17 19 19 19 20 20 21 22 22 23

R bus 2 18 3 7 8 13 26 13 8 12 6 7 11 18 19 21 8 9 12 10 12 19 20 22 25 26 14 15 14 15 16 16 15 16 17 20 18 21 23 24 25 21 22 24 23 24 25

pu

X

C pu 0.0048 0.0110 0.0513 0.0586 0.0321 0.0967 0.1967 0.0054 0.0240 0.0207 0.0300 0.0306 0.0570 0.0222 0.0660 0.0900 0.0069 0.0429 0.0180 0.0493 0.0132 0.2360 0.0160 0.0298 0.2700 0.0970 0.0802 0.0598 0.0271 0.0610 0.0888 0.0888 0.0382 0.0512 0.0600 0.0585 0.0600 0.4450 0.1310 0.1250 0.2249 0.1570 0.0366 0.1510 0.0990 0.0880 0.1168

tap setting pu Transformator 0.0300 0.0600 0.050 0.0180 0.0390 0.025 0.0 0.0005 0.0001 0.0150 0.0990 0.0010 0.0001 0.0012 0.045 0.0226 0.0001 0.025 0.0200 0.0010 0.0100 0 0.0010 0.0050 0.0100 0.0040 0 0 0.0010 0 0.0010 0.0010 0 0 0 0 0.0380 0 0 0.0020 0.0040 0 0 0 0 0 0 1 1 0.960 1 1 0.960 1 1.017 1.050 1.050 1 1 1 1 0.950 1 1 0.950 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

0.0005 0.0013 0.0014 0.0103 0.0074 0.0035 0.0323 0.0007 0.0008 0.0016 0.0069 0.0053 0.0097 0.0037 0.0035 0.0050 0.0012 0.0009 0.0020 0.0010 0.0024 0.0547 0.0066 0.0069 0.0960 0.0165 0.0327 0.0180 0.0046 0.0116 0.0179 0.0179 0.0069 0.0209 0.0990 0.0239 0.0032 0.2290 0.0300 0.0300 0.1190 0.0657 0.0150 0.0476 0.0290 0.0310 0.0987

16

7. Program Matlab Program matlab yang digunakan untuk studi aliran daya metode gauss seidel ini dibagi dalam lima file program yaitu : a. program dengan nama data program ini adalah input data bagi program yang lainnya, data dalam program ini terbagi atas dua bagian yaitu : busdata yang berisi data beban, data generator, data voltage

magnitude dan data capasitor shunt untuk tiap-tiap bus. Linedata yang berisi data resistansi, reaktansi dan capasitansi

untuk line transmisi dan transformator serta tapping setting dari transformator. b. Program dengan nama lfybus program dalam file berguna untuk merubah impedansi menjadi admitansi dan membentuk matrix admitansi bus. Program ini membutuhkan input data yang berada dalam file linedata. Adapun listing dari program ini sebagai berikut :j=sqrt(-1); i = sqrt(-1); nl = linedata(:,1); nr = linedata(:,2); R = linedata(:,3); X = linedata(:,4); Bc = j*linedata(:,5); a = linedata(:, 6); nbr=length(linedata(:,1)); nbus = max(max(nl), max(nr)); Z = R + j*X; y= ones(nbr,1)./Z; %branch admittance for n = 1:nbr if a(n)