matlab untuk sistem discreteedit
DESCRIPTION
Perbedaan yang sangat mencolok antara system discrete dengan system kontinyu yaitu pada system discrete sinyal yang menjadi input maupun outputnya merupakan sinyal digital yang mengandung komponen-koponen diital seperti gerbang or, and, dan adder ataupun yang lainnya. Untuk menghubungkan atau istilahnya interface antara sinyal continu dengan system discrete maka sering digunakan ADC dan DAC. Dengan menggunakan ADC ini sebenarnya sinyal continu tersebut dicuplik tiap-tiap satuan waktu, hal ini sering dikenal dengan penyamplingan. Karena proses penyamplingan ini dilakukan tiap-tiap satuan waktu maka timbul istilah frekuensi sampling yang besarnya dinyatakan dalam Hz.TRANSCRIPT
MATLAB UNTUK SISTEM DISCRETE
Perbedaan yang sangat mencolok antara system discrete dengan system kontinyu
yaitu pada system discrete sinyal yang menjadi input maupun outputnya merupakan sinyal
digital yang mengandung komponen-koponen diital seperti gerbang or, and, dan adder
ataupun yang lainnya. Untuk menghubungkan atau istilahnya interface antara sinyal continu
dengan system discrete maka sering digunakan ADC dan DAC. Dengan menggunakan ADC
ini sebenarnya sinyal continu tersebut dicuplik tiap-tiap satuan waktu, hal ini sering dikenal
dengan penyamplingan. Karena proses penyamplingan ini dilakukan tiap-tiap satuan waktu
maka timbul istilah frekuensi sampling yang besarnya dinyatakan dalam Hz.
Untuk mendesain suatu system discrete, sebenarnya dapat dilakukan dengan beberapa
cara yaitu:
mendesain langsung dalam fungsi z
mendesain dahulu fungsi-s nya setelah itu diubah menjadi fungsi z.
Contoh-1 (Konversi dari persamaan fungsi alih kontinu ke bentuk fungsi alih diskrit)
Ubahlah persamaan transfer function ini dari fungsi S menjadi fungsi Z
dengan waktu sampling 0. 1 detik. Kemudian, carilah time respon dari fungsi alih tersebut!
Penyelesaian:
num=[2];den=[1 12.04 776.7];
[A,B,C,D]=tf2ss(num,den);
[G,H]=c2d(A,B,0.1);
[numz,denz]=ss2tf(G,H,C,D);
printsys(numz,denz,'z');
%Time respon sistem dari fungsi alih dengan transformasi Z di atas dapat dicari
dengan instruksi sbb:
step(numz,denz);
final_value=polyval(numz,0)/polyval(denz,0)
[y,x,t]=step(numz,denz);
[Y,k]=max(y);
Time_topeak=t(k)
Percent_overshoot=100*(Y-finalvalue)/finalvalue
%menghitung rise time
n=1;
while y(n)<0.1*finalvalue, n=n+1;end
m=1;
while y [m]<0.9*finalvalue.m=m+1;end
rise_time=t(m)-t(n)
%menghitung settling time
l=length(t);
while(y[l]>0,98*final value)&(y(l)<1.02*finalvalue)
l=l-1;
end
settling_time=t(l)
Hasil Matlab adalah:
Fungsi alih transformasi-Z
0.0037352 z + 0.0021874
-----------------------
z^2 + 1 z + 0.29999
finalvalue = 0.0073
time_topeak = 8.6133
percent_overshoot = 0.5375
rise_time = 3.5337
setling_time = 5.4109
Contoh-2 (konversi dari persamaan keadaan fungsi diskrit ke bentuk persamaan
fungsi alih transformasi-z)
Persamaan keadaan dari suatu system adalah sbb:
Carilah fungsi alih transformasi Z dengan menggunakan instruksi Matlab. Dan, carilah time
respon dari fungsi alih tersebut dengan instruksi Matlab juga!
Penyelesaian:
%Pembuat Fungsi Alih dengan transformasi Z
A=[0 1;-2 3];B=[0;1];C=[0 1];D=0;
[numZ,denZ]=ss2tf(A,B,C,D);
Gs=tf(numZ,denZ);
printsys(numZ,denZ,'z')
%Tahapan mencari time respon sistem
step(numZ,denZ);
finalvalue=polyval(numZ,0) polyval(denZ,0)
[y,X,t]=step[numZ,denZ);
[Y,k]=max(y);
timetopeak=t(k)
percentovershoot=100*(Y-finalvalue)/finalvalue
%menghitung rise time
n=1;
while y(n]<0.1*final value,n=n+1;end
m=1;
while y(m)<0.9*finalvalue,m=m+1;end
risetime=t(m)-t(n)
%menghitung settling time
l=length(t);
while[y(l)>0.98*finalvalue)&(y(l)<1,.02*finalvalue)
l=l-1;
end
settlingtime=t(l)
Hasil Matlab adalah:
num/den =
1 z - 8.8818e-016
-----------------
z^2 - 3 z + 2
finalvalue = -4.4409e-016
timetopeak = 1.1973
percentovershoot = -1.7234e+018
risetime = 0
settlingtime = 1.1973
Contoh-3 (konversi dari pole-zero fungsi alih kontinu ke bentuk fungsi alih diskrit)
Bila diketahui suatu fungsi alih system continu adalah:
Dengan instruksi Matlab, tentukan:
a. nilai pole dan zero dari system tersebut.
b. Dari jawaban no. a buatlah kedalam fungsi alih dengan transformasi-z dengan Ts =
0.3
Penyelesaian:
a. Instruksi Matlab dapat dituliskan sbb:
%Pembuat nilai zero dan pole
num=[1 1];den=conv([1 3],[1 2]);k=1;
gs=tf(num,den)
[Z,P,K] = TF2ZP(num,den)
Hasil Matlab adalah:
>> zero_pole
Transfer function:
s + 1
-------------
s^2 + 5 s + 6
Z = -1 ; P = -3.0000 ; -2.0000
K = 1
b.Intruksi Matlab dapat dituliskan sebagai berikut:
% Pembuat Fungsi alih dari nilai zero dan pole
Z =[-1];P =[-3;-2];K=1;Ts=0.3;
[NUM,DEN] = ZP2TF(Z,P,K);
[NUMZ,DENZ]=c2dm(NUM,DEN,Ts);
printsys(NUMZ,DENZ,'z')
Hasil Matlab adalah:
>> konv_zero_pole
num/den =
0.17003 z - 0.1354
-------------------------
z^2 - 0.95538 z + 0.22313
Latihan Soal
1. Bila diketahui suatu fungsi alih system continu adalah:
Dengan instruksi Matlab, tentukan:
a. nilai pole dan zero dari system tersebut.
b. Dari jawaban no. a buatlah kedalam fungsi alih dengan transformasi-z dengan
Ts = 0.8
2. Persamaan keadaan dari suatu system adalah sbb:
Carilah fungsi alih transformasi Z dengan menggunakan instruksi Matlab. Dan,
carilah time respon dari fungsi alih tersebut dengan instruksi Matlab juga!
3. Ubahlah persamaan transfer function ini dari fungsi S menjadi fungsi
Z dengan waktu sampling 0. 1 detik. Kemudian, carilah time respon dari fungsi alih
tersebut!
4. Bila diketahui suatu fungsi alih system continu adalah:
Dengan instruksi Matlab, tentukan:
a. nilai pole dan zero dari system tersebut.
b. Dari jawaban no. a buatlah kedalam fungsi alih dengan transformasi-z dengan
Ts = 0.7
5. Persamaan keadaan dari suatu system adalah sbb:
Carilah fungsi alih transformasi Z dengan menggunakan instruksi Matlab. Dan,
carilah time respon dari fungsi alih tersebut dengan instruksi Matlab juga!
6. Ubahlah persamaan transfer function ini dari fungsi S menjadi fungsi
Z dengan waktu sampling 0. 1 detik. Kemudian, carilah time respon dari fungsi alih
tersebut!
4. Bila diketahui suatu fungsi alih system continu adalah:
Dengan instruksi Matlab, tentukan:
a. nilai pole dan zero dari system tersebut.
b. Dari jawaban no. a buatlah kedalam fungsi alih dengan transformasi-z dengan
Ts = 0.7
5. Persamaan keadaan dari suatu system adalah sbb:
Carilah fungsi alih transformasi Z dengan menggunakan instruksi Matlab. Dan,
carilah time respon dari fungsi alih tersebut dengan instruksi Matlab juga!
6. Ubahlah persamaan transfer function ini dari fungsi S menjadi fungsi
Z dengan waktu sampling 0. 1 detik. Kemudian, carilah time respon dari fungsi alih
tersebut!
DAFTAR PUSTAKA
[1] A.Smith, Carlos, Armando B. Corripio. Principles and Practice Of Automatic
Process Control. John Willey & Sons,Inc.1985.
[2] Benjamin C. Kuo .Teknik Kontrol Automatik. Jilid 1.Terjemahan Zulfan (Kelompok
Masdali).PT. Prenhallindo.Jakarta. 1998
[3] Charles L.Philips et al . Dasar-Dasar Sistem Kontrol. Terjemahan R.J. Widodo.
PT.Prenhalindo.Jakarta. 1998.
[4] Charles L.Philips et al .Sistem Kontrol Lanjutan. Terjemahan R.J. Widodo.
PT.Prenhalindo.Jakarta. 1998.
[5] Judi Prajetno S . Dasar-Dasar Pemakaian Matlab. Judi Prajetno S. Laboratorium
Komputer Growth Centre Surabaya.
[6] Katsuhiko Ogata. Teknik Kontrol Automatik Jilid 1. Terjemahan Edi Leksono.
Erlangga. Jakarta. 1994.
[7] Katsuhiko Ogata. Teknik Kontrol Automatik. Jilid 2. Terjemahan Edi Leksono.
Erlangga. Jakarta. 1994.
[8] Katsuhiko Ogata. Discrete Time Control Systems. Prentice Hall International
Editions.1987
[9] Naomi Ehrich Leonard. Et al . Using Matlab To Analyze and Design Control Systems.
Second Edition.. The Benjamin/Cummings Publishing Company,Inc. California.1995
[10] Pakpahan,S. Kontrol Otomatik Teori dan Penerapan. Erlangga.1994
[11] Patel R.V and Munro N. Multivariable System Theory And Design, Pergamon
Press.1982.
[12] William L. Luyben .Processing Modelling Simulation and Control For Chemical
Engineers. Second Editions.. Mc.Graw Hill Publishing Company. 1990.
[13] Thomas Wahyu Dwi Hartanto,et al. Analisis Dan Desain Sistem Kontrol dengan Matlab. Andi Yogyakarta. 2003