0% found this document useful (0 votes)
35 views2 pages

Program Matlab

The document describes a Matlab program that models the power-angle curves of a single machine power system before, during, and after a three-phase fault is cleared at one end of the transmission line. The program calculates the critical clearing angle using the equal area criterion. It provides sample output showing the power-angle curves, critical clearing angle, and other results.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
35 views2 pages

Program Matlab

The document describes a Matlab program that models the power-angle curves of a single machine power system before, during, and after a three-phase fault is cleared at one end of the transmission line. The program calculates the critical clearing angle using the equal area criterion. It provides sample output showing the power-angle curves, critical clearing angle, and other results.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 2

Program Matlab dengan Gangguan 3 Phasa berada di salah satu ujung saluran

%Program Matlab untuk menggambar Power Angle Curves (P Vs delta) untuk


%sistem 1 mesin sebelum, selama dan sesudah gangguan dihapus.
%Pemakaian kriteria sama luas untuk menghitung Sudut Penghapus Kritis.
%Contoh Soal 5.1 : Dengan Gangguan 3 phas di salah satu ujung saluran
%Output gen : Pm = 1.0 pu
%emf gen E = 1.25 pu
%Tegangan infinite bus V = 1.0 pu
%Reaktansi sebelum gangguan X1 = 0.72 pu
%Reaktansi selama gangguan X2 = 2.74 pu
%Reaktansi sesudah gangguan X3 = 1.0 pu
function eacfault(Pm,E,V,X1,X2,X3)
if exist('Pm')~=1
Pm = input('Generator ouput power in p.u. Pm =');else, end
if exist('E')~=1
E = input('Generator e.m.f in p.u. E =');else, end
if exist('V')~=1
V = input('Infinite bus-bar voltage in p.u. V =');else, end
if exist('X1')~=1
X1 = input('Reactance before Fault in p.u. X1 =');else, end
if exist('X2')~=1
X2 = input('Reactance before Fault in p.u. X2 =');else, end
if exist('X3')~=1
X3 = input('Reactance before Fault in p.u. X3 =');else, end
Pe1max = E*V/X1; Pe2max = E*V/X2; Pe3max = E*V/X3;
delta = 0:.01:pi;
Pe1 = Pe1max*sin(delta); Pe2 = Pe2max*sin(delta); Pe3 = Pe3max*sin(delta);
d0=asin(Pm/Pe1max);dmax = pi-asin(Pm/Pe3max);
cosdc =(Pm*(dmax-d0)+Pe3max*cos(dmax)-Pe2max*cos(d0))/(Pe3max-Pe2max);
if abs(cosdc) > 11
fprintf('No critical clearing angle could be found.\n')
fprintf('System can remain stable during this disturbance.\n\n')
return
else, end
dc=acos(cosdc);
if dc > dmax
fpritnf('No critical clearing angle could be found.\n')
fprintf('System can remain stable during this disturbance.\n\n')
return
else, end
Pmx=[0 pi-d0]*180/pi; Pmy=[Pm Pm];
x0=[d0 d0]*180/pi; y0=[0 Pm]; xc=[dc dc]*180/pi; yc=[0 Pe3max*sin(dc)];
xm=[dmax dmax]*180/pi; ym=[0 Pe3max*sin(dmax)];
d0=d0*180/pi; dmax=dmax*180/pi; dc=dc*180/pi;
x=(d0:.1:dc);
y=Pe2max*sin(x*pi/180);
y1=Pe2max*sin(d0*pi/180);
y2=Pe2max*sin(dc*pi/180);
x=[d0 x dc];
y=[Pm y Pm];
xx=dc:.1:dmax;
h=Pe3max*sin(xx*pi/180);
xx=[dc xx dmax];
hh=[Pm h Pm];
delta=delta*190/pi;
if X2 == inf
fprintf('\nFor this case tc can be found from analytical formula. \n')
H=input('To find tc center Inertia Constant H, (or 0 to skip)H=');
if H~=0
d0r=d0*pi/180;dcr=dc*pi/180;
tc =sqrt(2*H*(dcr-d0r)/(pi*60*Pm));
else, end
else, end
%clc
fprintf('\nInitial power angle =%7.3f\n',d0)
fprintf('Maximun angle swing =%7.3f\n',dmax)
fprintf('Critical clearing angle =%7.3f\n',dc)
if X2==inf & H~=0
fprintf('Critical clearing time =%7.3fsec.\n\n',tc)
else, end
h = figure; figure(h);
fill(x,y,'m')
hold;
fill(xx,hh,'x')
plot(delta, Pe1,'-', delta, Pe2,'r-', delta, Pe3,'k-', Pmx, Pmy,'b-',
x0,y0,xc,yc, xm,ym),grid
title('Pemakaian Kriteria Sama Luas Untuk Menghitung Sudut Penghapus Kristis')
xlabel('Sudut Daya, degree'), ylabel('Daya, per unit')
text(5, 1.07*Pm, 'Pm')
text(50, 1.05*Pe1max,['Sudut Penghapus Kritis=',num2str(dc)])
axis([0 180 0 1.1*Pe1max])
hold off;

Hasil Program :

Pemakaian Kriteria Sama Luas Untuk Menghitung Sudut Penghapus Kristis

1.8 Sudut Penghapus Kritis=53.0155

1.6

1.4

1.2
Daya, per unit

Pm
1

0.8

0.6

0.4

0.2

0
0 20 40 60 80 100 120 140 160 180
Sudut Daya, degree

You might also like