You are on page 1of 5

function [ output_args ] = Untitled( input_args )

clear all
clc
disp(' TUGAS II OSSDE
')
disp('Perhitungan Rugi-Rugi Transmisi Menggunakan Aliran Daya dan Persamaan
Rugi-Rugi Sebagai Fungsi Daya Pembangkit')
disp('=======================================================================
=======================================')
disp('Nama : Amrizal Karim A')
disp('Nim : 145060300111040')
disp('Kelas : Rabu')
disp('No Absen : 9')
%Kapasitansi Saluran%
disp('================Kapasitansi tiap bus, yc10 s/d yc50 dinyatakan dalam
elemen diagonal matrik yc ===============')
yc=[ 0.0166666666666667i;
0.01i;
0.00666666666666666i;
0.0111111111111111i;
0.0111111111111111i];
disp('yc= '),disp(diag(yc))
%Impedansi zsal%
disp('================Impedansi Saluran (6 buah saluran) dinyatakan dalam
elemen diagonal matrik zsal ==============')
zsal=[ 0.0444444444444444+0.177777777777778i;
0.0333333333333333+0.133333333333333i;
0.0333333333333333+0.133333333333333i;
0.0555555555555556+0.222222222222222i;
0.0888888888888889+0.355555555555556i;
0.0333333333333333+0.133333333333333i];
disp('zsal= '),disp(diag(zsal))
%Admitansi y%
disp('========================================Matrik Admintansi
Primitif============================================')
ysal=diag(inv(diag(zsal)));
y=[yc;ysal];
disp('y= '),disp(diag(y))
%A primitif %
disp('========Matrik Elemen-node bus 0 s/d 5===========')
A=[1 -1 0 0 0 0;
1 0 -1 0 0 0;
1 0 0 -1 0 0;
1 0 0 0 -1 0;
1 0 0 0 0 -1;
0 0 0 1 0 -1;
0 1 0 0 0 -1;
0 1 0 -1 0 0;
0 0 1 -1 0 0;
0 1 0 0 -1 0;
0 0 -1 0 1 0];
X=[3.48526-13.924533i -1.0588+4.2353i 0 -0.66176+2.6471i -1.7647+7.0588i;
-1.0588+4.2353i 2.3823-9.5194i 0 0 -0.3235+5.2941i;
0 0 3.5294-14.1109333i -1.7647+7.0588i -1.7647+7.0588i;
-0.66176+2.6471i 0 -1.7647+7.0588i 2.42646-9.694789i 0;
-1.7647+7.0588i -0.3235+5.2941i -1.7647+7.0588i 0 4.8529-19.400489i];
disp('A= '),disp(A)
%Matriks Ybus%
disp('=========Matrik elemen-node dengan bus 0 sebagai acuan============')
A0=A(:,2:6);
disp('A0= '),disp(A0)
disp('=================================================Matrik
Ybus========================================================')
disp('*Ybus=tranpose(A0)*diag(y)*A0')
Ybus=A0'*diag(y)*A0
disp('=================================================Matrik
Zbus========================================================')
disp('*Zbus=inv(Ybus)')
Zbus=inv(Ybus)
disp('=======================================================================
========================')
disp('================Mulai Perhitungan Aliran Daya Menggunakan Gauss Seidel
========================')
disp('=======================================================================
========================')
% Estimasi tegangan awal untuk tiap Bus %
E1=1; %(dari soal)%
E2=1; %(estimasi)%
E3=1; %(estimasi)%
E4=1; %(estimasi)%
E5=1; %(estimasi)%

fprintf('\n=====Tegangan dan Daya Awal iterasi=====\n\n')


fprintf('E1='),disp(E1)
fprintf('E2='),disp(E2)
fprintf('E3='),disp(E3)
fprintf('E4='),disp(E4)
fprintf('E5='),disp(E5)

% Matrik S berdasarkan data beban %


S1=0; %(estimasi)%
S2=0.68+0.4i; %(dari soal)%
S3=-1.064-0.56i; %(dari soal)%
S4=-0.496-0.32i; %(dari soal)%
S5=-0.12-0.08i; %(dari soal)%
fprintf('S1='),disp(S1)
a=1;
format short g
epsilon=0.00000001;
x2=1;x3=1;x4=1;x5=1;s=1;
while x2 >= epsilon & x3 >= epsilon & x4 >= epsilon & x5 >= epsilon & s >=
epsilon & a<=50

V2=E2;
V3=E3;
V4=E4;
V5=E5;

E2=(1/Ybus(2,2))*((conj(S2)/conj(E2))-
(Ybus(2,1)*E1+Ybus(2,3)*E3+Ybus(2,4)*E4+Ybus(2,5)*E5));
E3=(1/Ybus(3,3))*((conj(S3)/conj(E3))-
(Ybus(3,1)*E1+Ybus(3,2)*E2+Ybus(3,4)*E4+Ybus(3,5)*E5));
E4=(1/Ybus(4,4))*((conj(S4)/conj(E4))-
(Ybus(4,1)*E1+Ybus(4,2)*E2+Ybus(4,3)*E3+Ybus(4,5)*E5));
E5=(1/Ybus(5,5))*((conj(S5)/conj(E5))-
(Ybus(5,1)*E1+Ybus(5,2)*E2+Ybus(5,3)*E3+Ybus(5,4)*E4));
%daya pada bus 1 (S1)%
S1=conj((conj(E1)*(E1*Ybus(1,1)+(Ybus(1,2)*E2+Ybus(1,3)*E3+Ybus(1,4)*E4+Ybus(
1,5)*E5))));

%% arus dan daya pada saluran%


I52=-Ybus(5,2)*(E5-E2);I25=-I52;
S52=E5*conj(I52);
S25=E2*conj(I25);

I53=-Ybus(5,3)*(E5-E3);I35=-I53;
S53=E5*conj(I53);
S35=E3*conj(I35);

I51=-Ybus(5,1)*(E5-E1);I15=-I51;
S51=E5*conj(I51);
S15=E1*conj(I15);

I21=-Ybus(2,1)*(E2-E1);I12=-I21;
S21=E2*conj(I21);
S12=E1*conj(I12);

I41=-Ybus(4,1)*(E4-E1);I14=-I41;
S41=E4*conj(I41);
S14=E1*conj(I14);

I43=-Ybus(4,3)*(E4-E3);I34=-I43;
S43=E4*conj(I43);
S34=E3*conj(I34);

%arus dan daya pada saluran pada elemen kapasitif%


I10=yc(1,1)*(E1);
S10=E1*conj(I10);

I20=yc(2,1)*(E2);
S20=E2*conj(I20);

I30=yc(3,1)*(E3);
S30=E3*conj(I30);

I40=yc(4,1)*(E4);
S40=E4*conj(I40);

I50=yc(5,1)*(E5);
S50=E5*conj(I50);

%% Rugi-rugi dengan perhitungan saluran%


SLsal=(S52+S25+S53+S35+S51+S15+S21+S12+S41+S14+S43+S34)+(S10+S20+S30+S40+S50)
;
%Rugi-rugi dengan perhitungan total semua daya bus%
SLtot=S1+S2+S3+S4+S5;
x2=abs(E2-V2);
x3=abs(E3-V3);
x4=abs(E4-V4);
x5=abs(E5-V5);
s=abs(SLsal-SLtot);

fprintf('\n============= Iterasi %i ==========\n\n',a)


fprintf('E2='),disp(E2)
fprintf('E3='),disp(E3)
fprintf('E4='),disp(E4)
fprintf('E5='),disp(E5)
fprintf('S1='),disp(S1)

a=a+1;
end
fprintf('\n*******Deviasi lebih kecil dari epsilon, sehingga iterasi dapat
dihentikan*****\n')
fprintf('*********iterasi dilakukan sebanyak %i kali************\n\n',a-1)
fprintf('\n===== RUGI-RUGI(DENGAN PERHITUNGAN TOTAL DAYA SALURAN) ======\n')
fprintf('SLsal='),disp(SLsal)

fprintf('===== RUGI-RUGI(DENGAN PERHITUNGAN TOTAL SEMUA DAYA BUS)=====\n');


fprintf('SLtot='),disp(SLtot)

%% Matrik B%
fprintf('========PERHITUNGAN MATRIK B ========\n\n');
Ebus=[E1;E2;E3;E4;E5];
%% ibus=Ybus*Ebus%
fprintf('*ibus=Ybus*Ebus\n');
ibus=Ybus*Ebus
%id
id = ibus(4)+ibus(5);

%% dk
d4=ibus(4)/id;
d5=ibus(5)/id;
dk=[d4; d5]

Totaldk=d4+d5

%% tq
t1=Zbus(4,1)/(Zbus(4,4)*d4+Zbus(4,5)*d5);
t2=Zbus(4,2)/(Zbus(4,4)*d4+Zbus(4,5)*d5);
t3=Zbus(4,3)/(Zbus(4,4)*d4+Zbus(4,5)*d5);
t4=Zbus(4,4)/(Zbus(4,4)*d4+Zbus(4,5)*d5);
tq=[t1; t2; t3 ;t4]
%% C ij%
C41=-d4*t1;
C42=-d4*t2;
C43=-d4*t3;
C44=-d4*t4;

C51=-d5*t1;
C52=-d5*t2;
C53=-d5*t3;
C54=-d5*t4;

C=[1 0 0 0;
0 1 0 0;
0 0 1 0;
C41 C42 C43 C44;
C51 C52 C53 C54]
%% T1%
T1=conj(C')*(real(Zbus))*conj(C)

%% Ta %
ta1=(1-i*(imag(S1)/real(S1)))/conj(E1);
ta2=(1-i*(imag(S2)/real(S2)))/conj(E2);
ta3=(1-i*(imag(S3)/real(S3)))/conj(E3);

In0=-E4/Zbus(4,4);

Ta=[ta1 0 0 0;
0 ta2 0 0;
0 0 ta3 0;
0 0 0 In0]
%% T2 %
T2=Ta*T1*conj(Ta)
Blengkap=real(T2)
B=Blengkap(1:3,1:3)
Bo=[2*Blengkap(4,1);2*Blengkap(4,2);2*Blengkap(4,3)]
Boo=Blengkap(4,4)
Pg=[real(S1); real(S2); real(S3)]
fprintf('=====RUGI2 (DENGAN PERHITUNGAN MENGGUNAKAN MATRIK B=======):\n');
fprintf('*Ploss=tranpose(Pg)*B*Pg + tranpose(Pg)*Bo + Boo\n');
Ploss=Pg'*B*Pg+Pg'*Bo+Boo
end

You might also like