Tugas Matlab
Ramos D Hutabalian (14S16031)
ELS3202 – Sistem Mikroprosesor
Institut Teknologi Del
A. MATLAB Program 2-1
%Program MATLAB 2-1
num1 = [10];
den1 = [1 2 10];
num2 = [5];
den2 = [1 5];
[num,den] =
series(num1,den1,num2,den2);
printsys(num,den)
[num,den] =
parallel(num1,den1,num2,den2);
printsys(num,den)
[num,den] =
feedback(num1,den1,num2,den2);
printsys(num,den)
B. MATLAB Program 2-2
Analisis: %Program MATLAB 2-2
num =[1 0];
den =[1 14 56 160];
[A,B,C,D]=tf2ss(num,den)
Pada MATLAB untuk mendapatkan persamaan fungsi
transfer dari cascaded system, parallel system, or
feedback system maka digunakan fungsi yang dapat
Pada program berikut bertujuan untuk mengubah nilai
menampilkan transfer function pada suatu control
transfer function menjadi state space representation.
system sehingga dapat memudahkannya.
Dimana keluaran hasil transformasi tersebut berupa
[num, den] = series(num1,den1,num2,den2)
matriks A, B, C, D. Dengan menggunakan command
[num, den] = parallel(num1,den1,num2,den2)
berikut:
[num, den] = feedback(num1,den1,num2,den2)
[A,B,C,D]=tf2ss(num,den)
Akan didapat nilai state space berupa elemen matriks A,
Yang kemudian akan ditampilkan menggunakan fungsi
B,C,D.
printsys(num,den)
D. MATLAB Program 2-4
%Program MATLAB 2-4
num = [2 1 1 2];
den = [1 4 5 2];
[A,B,C,D] = tf2ss(num,den)
Program ini sama dengan fungsi dari program 2-2 yang
bertujuan untuk melakukan transformasi dari transfer
function ke state space representation. Dengan inputan
berupa nilai numerator dan denumerator dari transfer
C. MATLAB Program 2-3 function-nya. Kemudian akan didapat hasil berupa nilai
%Program MATLAB 2-3 elemen tiap matriks untuk state space representation.
A=[0 1 0; 0 0 1; -5 -25 -5];
B=[0; 25; -120];
C=[1 0 0];
D=[0];
%[num,den] = ss2tf(A,B,C,D)
[num,den] = ss2tf(A,B,C,D,1)
Program ini merupakan invers dari program 2-2, dimana
bertujuan untuk melakukan transformasi dari State
Space ke transfer function. Dengan inputan berupa nilai
matriks dari A, B, C, D. Hasil dari command berikut:
[num,den] = ss2tf(A,B,C,D,iu)
Dimana variable ‘iu’ sebagai penunjuk jumlah input
yang masuk kesuatu system. Yang kemudian ketika
system tersebut hanya memiliki satu input, maka dapat
menuliskan command tanpa ada nilai iu. Akan didapat
hasil berupa nilai numerator dan denumerator dari
transfer function nya.
input pertama dari state space-nya ialah [0 1]
sedangkan input kedua matriks A ialah [25 -4].
Sehingga pada saat ingin melakukan transformasi
perlu untuk memasukkan nilai dari variable ‘iu’
pada program, untuk mengetahui detail inputan
fungsi yang akan ditransformasi.
E. MATLAB Program 2-5
%Program MATLAB 2-5
A = [0 1; 25 -4];
B = [1 1; 0 -4]; F. MATLAB Program 5-1
C = [1 0; 0 1]; %Program MATLAB 5-1
D = [0 0; 0 0];
[num,den] = ss2tf(A,B,C,D,1) A = [-1 -1; 6.5 0];
B = [1 1; 1 0];
[num,den] = ss2tf(A,B,C,D,2) C = [1 0; 0 1];
D = [0 0; 0 0];
step(A,B,C,D)
Program diata bertujuan untuk melakukan transformasi
dan bertujuan untuk menghasikan empat kurva respon langkah
seperti pada gambar dibawah. Vektor waktu ditentukan oleh
Program ini sama dengan program 2-3 yang secara otomatis karean perintah tidak termasuk t .
bertujuan untuk melakukan transformasi dari state space Untuk emplot dua kurva atau gambar langkah respon untuk
ke transfer function. Dimana menerima inputan berupa input U1 dalam satu diagram dan dua kurva respon langkah.
matriks state space yang akan ditransformasi menjadi Utnuk input U2 dalam diagram lain, kita dapat menggunakan
transfer function dengan command: perintah step(A,B,C,D,1 )
[num,den] = ss2tf(A,B,C,D,1) Dan untuk yang kedua adalah kita dapat
[num,den] = ss2tf(A,B,C,D,2) menggunakan perintah : step(A,B,C,D,2 )
Dimana nilai 1 dan 2 yang terdapat pada code
tersebut merupakan representasi dari jumlah
inputan pada state space-nya. Pada program diatas
terlihat jumlah input nya 2. Yakni pada matriks A,
G. MATLAB Program 5-2
%Program MATLAB 5-2
A = [-1 -1; 6.5 0];
B = [1 1; 1 0];
C = [1 0; 0 1];
D = [0 0; 0 0];
% To plot step-response curves when the H. MATLAB Program 5-3
input is u1, enter %Program MATLAB 5-3
% the command 'step(A,B,C,D,1)'
wn = 5;
step(A,B,C,D,1) damping_ratio = 0.4;
grid [num0,den] = ord2(wn,damping_ratio);
title('Step-Response Plots: Input = num = 5^2*num0;
u1(u2=0') printsys(num,den,'s')
text(3.4, -0.06, 'Y1') Dalam program matlab 5-3 ini bertujuan untuk
text(3.4, 1.4, 'Y2') mempertimbangkan misalanya kasus dimana VN =5 rad det
dan Z = 0.4 dan prtogram ini menghsilkan sistem orde kedua
step(A,B,C,D,2) standart dimana vn =5 dan z =0.4
grid
title('Step-Response Plots: Input =
u2(u1=0')
text(3, 0.14,'Y1')
text(2.8, 1.1,'Y2')
Program diatas bertujuan untuk membuat dua buah kurva
langkah respon untuk input U1 dalam satu diagram dan dua
kurva untukinput U2 dalam diagram lain .
1. text(3, 0.14,'Y1')
2. text(2.8, 1.1,'Y2')
pernyataan pertama utnuk meberikan komputer untuk I. MATLAB Program 5-4
menulis Y1 dimulai pada koordinat x = 3,4 y= -0.0,6.
%Program MATLAB 5-4
Demikian pula pernytaan kedua meberitahu komputer untuk
menuliskan Y2 dimulai pada koordinat x=3,4 y= 1.4
num = [25];
den = [1 4 25];
step(num,den)
grid
title('Unit-Step Response of G(s) = 25/
(s^2+4s+25)')
Dapat kita lihat bahwa label sumbu x dan sumbu y adalah
otomatis ditentukan secara matematis. Jika di inginkan untuk
meberi label label sumbu x dan sumbu y secara berbeda kita
perlu untuk memodifikasi perintah langkah. Misalnya, jika
diinginkan untuk meberi label x sebagai t dtk dan sumbu y
sebagai Output lalu gunakan perintah langkah rspons dengan
arfumen sbelah kiri
J. MATLAB Program 5-5
%Program MATLAB 5-5
num = [25];
den = [1 4 25];
t = 0:0.01:3;
[y,x,t] = step(num,den,t);
plot(t,y)
grid
title('Unit-Step Response of G(s)=25/
(s^2+4s+25)')
xlabel('t Sec')
ylabel('Output')