PENGENALAN MATLAB PADA SISTEM KONTROL I.
Tujuan Pe Percobaan
1. Mengenal dan dapat mengoperasikan program mengoperasikan program MATLAB pada MATLAB pada PC. 2. Memiliki keterampilan dasar menggunakan dasar menggunakan MATLAB untuk operasi untuk operasi aljabar matriks sederhana. 3. Mengenal fungsi‐fungsi dalam MATLAB. 4. Memahami Memahami penggunaan penggunaan MatLab dalam analisi analisiss dan desain sistem sistem control. control.
II. II. Baha Bahan n Perc Percob obaa aan n
1. Komp Komput uter er 2. Program Program (Software) (Software) MatLab. MatLab.
III. III. Dasar Dasar Teor Teorii 3.1. Pengenalan MATLAB
Matl Matlab ab adal adalah ah singk singkat atan an dari dari MATr MATrix ix LABor LABorat ator ory, y, meru merupa pakan kan bahas bahasaa pemrograman yang dikembangkan oleh The Mathwork Inc. yang hadir dengan deng an fungsi dan karakteristik yang berbeda dengan bahasa pemrograman lain yang sudah ada lebi lebih h dahu dahulu lu seper seperti ti Delph Delphi, i, Basi Basicc maup maupun un C++. C++. Matl Matlab ab meru merupa pakan kan bahas bahasaa pemrograman level tinggi yang dikhususkan untuk kebutuhan komputasi teknis, visu visual alis isas asii dan dan
pemro pemrogr gram aman an sepe sepert rtii komput komputas asii mate matema mati tik, k, anal analis isis is data data,,
pengembangan algoritma, simulasi dan pemodelan dan grafik-grafik perhitungan Pada awalnya Matlab dibuat untuk memberikan kemudahan mengakses data matrik pada proyek LINPACK dan EISPACK. Saat ini matlab memiliki ratusan fungsi yang dapat digunakan sebagai problem solver mulai dari simple sampai masalah-masalah yang kompleks dari berbagai disiplin ilmu. Dalam Dalam lingku lingkungan ngan pergur perguruan uan tinggi tinggi teknik teknik,, Matlab Matlab merupa merupakan kan perangk perangkat at standar untuk memperkenalkan dan mengembangkan penyajian materi matematika,
rekayasa dan kelimuan. Di industri, MATLAB merupakan perangkat pilihan untuk penelitian dengan produktifitas yang tinggi, pengembangan dan analisanya. Kegunaan MatLab secara umum adalah sebagai berikut: a) Matematika dan komputasi, b) Perkembangan algoritma, c) Pemodelan, simulasi, dan pembuatan prototype, d) Analisa data, eksplorasi dan visualisasim e) Pembuatan aplikasi, termasuk pembuatan antaramuka grafis.
3.1.1. Karakteristik MATLAB : •
Bahasa pemrogramannya didasarkan pada matriks (baris dan kolom).
•
Lambat Lambat (diban (dibandin dingkan gkan dengan dengan Fortra Fortran n atau atau C) karena karena bahasa bahasanya nya langsu langsung ng diartikan.
•
Automatic memory management , misalnya kita tidak harus mendeklarasikan arrays terlebih dahulu.
•
Tersusun rapi.
•
Waktu pengembangannya lebih cepat dibandingkan dengan Fortran atau C.
•
Dapat diubah ke bahasa C lewat MATLAB Compiler.
•
Tersedia banyak toolbox untuk aplikasi-aplikasi khusus. Beberapa kelebihan Matlab jika dibandingkan dengan program lain seperti
Fortran, dan Basic adalah : 1. Mudah dalam memanipul memanipulasi asi struktur struktur matriks matriks dan perhitungan perhitungan berbagai operasi operasi matriks yang meliputi penjumlahan, pengurangan, perkalian, invers dan fungsi matriks lainnya. 2. Menyediakan Menyediakan fasilitas fasilitas untuk memplot struktur struktur gambar (kekuatan (kekuatan fasilitas fasilitas grafik tiga dimensi yang sangat memadai). 3. Script program program yang yang dapat diubah diubah sesuai dengan dengan keinginan keinginan user. 4. Jumlah Jumlah routine-routi routine-routine ne powerful yang berlimpah berlimpah yang terus berkembang. berkembang.
5. Kemampuan Kemampuan interface interface (misal (misal dengan bahasa C, word dan mathemati mathematica). ca). 6. Dileng Dilengkapi kapi dengan toolbo toolbox, x, simuli simulink, nk, statef stateflow low dan sebaga sebagainy inya, a, serta serta mulai mulai meli melimp mpahn ahnya ya sour source ce code code di inte intern rnet et yang yang dibu dibuat at dala dalam m matl matlab ab(( conto contoh h toolbo toolbox x misaln misalnya ya : signal signal proces processin sing, g, contro controll system system,, neural neural networ networks ks dan sebagainya). 3.1.2. Lingkungan Kerja MATLAB :
Secara umum lingkungan kerja Matlab terdiri dari tiga bagian yang penting yaitu: 1.
Command Windows Window Windowss ini muncul muncul pertam pertamaa kali kali ketika ketika kita kita menjal menjalanka ankan n progra program m Matlab. Command windows digunakan untuk menjalankan perintah-perintah Matlab, memanggil tool Matlab seperti editor, fasilitas help, model simulink, dan lain-lain. Ciri dari windows ini adalah adanya prompt (tanda lebih besar) yang menyat menyataka akan n Matlab Matlab siap siap meneri menerima ma perint perintah. ah. Perint Perintah ah terseb tersebut ut dapat dapat berupa fungsi-fungsi bawaan (toolbox) Matlab itu sendiri.
•
Workspace: Menampilkan semua variable yang pernah dibuat meliputi
nama variable, ukuran, jumlah ukuran, jumlah byte byte dan class.
•
Command History
: Mena Menamp mpiilkan lkan
peri perint ntah ah-p -per eriintah ntah
yang
telah diketikkan pada command command Window.
2.
Editor Wi Windows Windows ini merupakan tool yang disediakan oleh Matlab yang berfungsi sebagai editor script Matlab Matlab (listing (listing perintah-pe perintah-perint rintah ah yang harus dilakukan oleh Matlab). Ada dua cara untuk membuka editor ini, yaitu: 1.
Klik : File, lalu New dan kemudian M-File
2.
Ketik pada command windows : ”edit”
Secara formal suatu script merupakan suatu file eksternal yang berisi tulisan perintah MatLAb. Tetapi script tersebut bukan merupakan suatu fungsi. Ketika anda menjalankan suatu script, perintah di dalamnya dieksekusi seperti ketika dimasukkan langsung pada MatLAb melalui keyboard. M-fil M-filee selain selain dipakai dipakai sebagai sebagai penamaa penamaan n file file juga juga bisa bisa dipaka dipakaii untuk untuk menamakan fungsi, sehingga fungsi fungsi yang kita buat di jendela editor bisa di simpan dengan ektensi .m sama dengan file yang kita panggi dijendela editor. Saat kita menggunakan fungsi Matlab seperti inv, abs, cos, sin dan sqrt, matlab
menerima variabel berdasarkan variabel yang kita berikan. Fungsi M-file mirip dengan script script file dimana dimana keduanya merupakan merupakan file teks dengan dengan ektensi .m . sebagai sebagaiman manaa script script M-file M-file,, fungsi fungsi m-file m-file tidak tidak dimasu dimasukka kkan n dalam dalam jendel jendelaa command window tetapi file tersendiri yang dibuat dengan editor teks. Membentuk dan menjalankan M-File: • Klik
menu File, pilih New dan klik M-File
• Pada
editor teks, tulis argumen atau perintah
Simpan • Simpan
Save As dan dengan dengan cara cara klik klik File , pili pilih h Save dan beri beri nama nama deng dengan an
ekstensi .m • Pastikan
file yang akan dijalankan berada pada direktori aktif
• Misalkan • >>
file graf1.m berada di C:\MATLAB, maka lakukan perintah cd
cd c:\matlab
• Kemudian • >>
3.
jalankan file graf1.m dengan cara
graf1
Figure Wi Windows Window Windowss ini merupa merupakan kan hasil hasil visual visualisa isasi si dari dari script script Matlab Matlab.. Matlab Matlab memb member erik ikan an kemuda kemudaha han n bagi bagi prog progra ramm mmer er untu untuk k menge mengedi ditt windo windows ws ini ini sekaligus sekaligus memberikan memberikan program program khusus untuk itu, sehingga selain selain berfungsi berfungsi sebagai visualisasi output yang berupa grafik juga sekaligus menjadi media input yang interaktif.
• Simulink
windows.
Windows ini umumnya digunakan untuk mensimulasikan system kendali berdasarkan blok diagram yang telah diketahui. Untuk mengoperasikannya ketik “simulink” pada command windows.
3.2. Karakter Spesial MatLab
•
Tanda % merupakan penanda komentar. Keterangan setelah tanda tersebut
akan diabaikan dalam proses perhitungan. Contoh :
•
y = 2:2:8
% y = [2468];
y = 2.00
4.0 0
6.00
8.00
Tanda ; merupakan perintah pembatas yang tidak ditampilkan di jendela kerja,
merupakan pemisah kolom dan baris dalam matriks. Contoh : A = [1 3 5 ; 5 3 1]; •
Tanda : merupakan pembatas jangkauan, contohnya :
B = [0:2:8] B = 0.00 2.00 •
4 .0 0
6.00
8.00
Tanda ` merupakan transpose matriks yang merupakan suatu vector kolom X = [3 2 4 5;7 6 5 8] X=
3.00
2. 0 0
4.00
5.00
7.00
6 .0 0
5.00
8.00
3.00
7 .0 0
2.00
6 .0 0
4.00
5 .0 0
5.00
8 .0 0
X=X ` X=
•
Tanda ... digunakan untuk menuliskan baris perintah yang panjang contohnya:
P = sin(1) sin(1) – sin(2) sin(2) + sin(3) sin(3) – sin(4) sin(4) + sin(5) sin(5) + cos(6) cos(6) + ... cos(7) cos(7) – cos(8) + cos(9) – cos(10) + cos(11) + cos(12) P = 1.0273 Contoh dan fungsi kode yang dapat diketik pada command windows windows : 1. >> help
: Menunjukkan semua help topic di Matlab.
↵
2. >>what general
↵
: Menunjukkan instruksi-instruksi yang tersedia di direktori general, salah satunya adalah instruksi clear.
3. >>help general
↵
: Menunjukkan instruksi-instruksi yang tersedia di direktori general , dan fungsinya secara umum.
4.
>>help clear ↵
: Menunjukkan Menunjukkan penjelasan detail
untuk instruksi clear. (Fungsinya untuk apa, syntaxnya untuk apa, fungsi lain yang terkait apa) 5.
>> help ops ↵
:
Menunjukkan
penulisan
operator2 di dalam Matlab. 6.
>>clc; >>x
↵
↵
clc digunakan untuk membersihkan layar, tetapi nilai variable yang tersimpan dimemori tidak akan hilang sehingga dapat ditampilkan kembali ke layer dengan memanggil nama variabelnya. 7. >> >>cl clea ear; r; >>x
↵
↵
clear digunakan untuk membersihkan layer sekaligus menghapus variable dari memori memori sehingga sehingga kita tidak dapat menampilkan menampilkan nilai variable variable ke layer. layer. (muncul (muncul pesan ??? Undefined function or variable 'x'.) 'x'.) 8. >> x= x=4; >> y=5; >> z=x+y; >> z Merupakan contoh barisan instruksi untuk melakukan penjumlahan.
3.3. Angka dan Operasi Aritmatika
Ada tiga jenis angka di MATLAB yaitu : 1. Bilang Bilangan an bulat bulat yaitu yaitu bilanga bilangan n yang tidak mengand mengandung ung desima desimal. l. Contoh Contohnya nya:: >> xi = 10 2. Bilangan Bilangan real yaitu yaitu bilangan yang yang mengandung mengandung desimal desimal contohnya : >> xr = 12.6054 >> realmax
% batas at atas bilangan re real di ma matlab
ans = 1.7977e+308 >> re realmin
% ba batas mi minimum bi bilangan gan re real di di mat matllab
ans = 2.2251e-308 3. Bilang Bilangan an komple kompleks ks >> i ans = 0 + 1.0000i >> x = 1 + sqrt(3)*i x = 1.0000 + 1.7321i >> A= [1 j;-j*5 2] A= 1.0000
0 + 1.0000i
0 - 5.0000i
2.0000
Bebera Beberapa pa penggun penggunaan aan operat operator or aritm aritmati atika ka antara antara dua operand operand (A dan B) ditunjukkan pada tabel berikut ini :
Operasi
Simbol
Penambahan
+
Pengurangan
-
Perkalian
*
Pembagian
/ atau \
perpangkatan
^
3.4. 3.4. Vari Variab abel el Pada Pada Matl Matlab ab
Matlab memiliki tiga variabel sebagai nonnumbers yaitu: 1.
–Inf (Negative Infinity)
2.
Inf (Infinity)
3.
Nan (Not an number) Matlab hanya memiliki dua jenis tipe data yaitu Numeric dan String. Dalam
matlab setiap variabel akan disimpan dalam bentuk matrik. User dapat langsung menuli menuliska skan n variab variabel el baru baru tanpa tanpa harus harus mendek mendeklar larasi asikan kannya nya terleb terlebih ih dahulu dahulu pada pada command window. Contoh pembuatan variabel pada matlab:
Penam Penamaan aan vari variab abel el pada pada matl matlab ab bersi bersifa fatt case caseSe Sens nsit itif if kare karena na itu itu perl perlu u diperhatika diperhatikan n penggunaan penggunaan huruf besar dan kecil pada penamaan penamaan variabel. variabel. Apabila terdapat variabel lama dengan nama yang sama maka matlab secara otomatis akan me-replace variabel lama tersebut dengan variabel baru yang dibuat dibuat user.
3.5 . Fungsi Pemrograman Dalam MATLAB 3.5.1. Fungsi Dasar
a. Fungs Fungsii Mate Matema mati tika ka Dasa Dasar r Tabel 1.1a Fungsi Matematika Dasar Fungsi Abs Ex p
Keterangan Menghitung nilai absolut Memperoleh ni n ilai da d ari e pa p angkat bi bilangan te tertentu (e (e =
2.718282)
log Sqrt Ceil
Menghitung logaritma natural (ln) suatu bilangan Menghitung akar pangkat 2 dari suatu bilangan Membulatkan bi bilangan ke ke bi bilangan bu bulat te terdekat me menuju
Fix
plus tak berhingga. Membulatkan bi bilangan ke ke bi bilangan bu bulat te terdekat me menuju
Floor
nol.. Membulatkan bi bilangan ke ke bi bilangan bu bulat te terdekat me menuju
Gcd Ispri sprim me Log10 Mod Primes Rem Round
minus tak berhingga. Menghitung nilai faktor pembagi terbesar Meng Mengha hasi sillkan kan true rue jika mer merupak upakan an bil bilanga angan n prim prima. a. Menghitung logaritma suatu bilangan untuk dasar 10. Menghitung nilai modulus. Menghasilkan da daftar bilangan. Menghitung nilai remainder. Membulatkan bilangan gan ke bilangan bulat terdek dekat.
b. Fungsi Trigonometri Fungsi trigonometri banyak digunakan terkait dengan sudut. Nilai perhitungan yang dalam fungsi trigonometri sudut dalam radian. radian. Tabel 1.1b Fungsi Trigonometri Fung Fungsi Sin
Keterangan Menghitung sinus suatu bilangan, dimana bilangan dalam
Cos
radian. Meng enghitung cosi osinus suatu bil bilangan gan, dimana bilangan gan dal dalam
Tan
radian. Meng enghitung tangen gen suatu bilangan, dim dimana ana bilangan dalam
Acos
radian. Meng enghitung arccosi osinus (invers cos) suat uatu bilanga ngan yang menghasilkan sudut dalam radian, dimana bilangan harus antara
Asin Asin
-1 dan 1. Meng Menghi hitu tung ng arc arcsi sinu nuss suat suatu u bila bilang ngan an yan yang g meng mengha hasi silk lkan an sud sudut ut
Atan
dalam radian, dimana bilangan harus antara -1 dan 1. Menghitung arctangensuatu bilangan yang menghasilkan sudut dalam radian.
Cosh Cosh Sinh Sinh Tanh Cosd Cosd
Meng Menghi hitu tung ng cosi cosinu nuss hip hiper erbol bolik ik dari dari suat suatu u sud sudut ut dala dalam m rad radia ian. n. Meng Menghi hitu tung ng sin sinus us hipe hiperb rbol olik ik dari dari suat suatu u sud sudut ut dala dalam m rad radia ian. n. Menghitung tangen hiperbolik dari suatu sudut dalam radian. Mengh enghiitung tung cosin cosinus us suat suatu u bil bilanga angan, n, dima dimana na bil bilanga angan n dal dalam
Sind Sind
derajat. Menghi Menghitun tung g sinus sinus suatu suatu bilanga bilangan, n, dimana dimana bilanga bilangan n dalam dalam
Tand Tand
derajat. Mengh enghiitung tung tang tangen en suat suatu u bila bilang ngan an,, dim dimana ana bila bilang ngan an dal dalam derajat.
Sec
Menghitung
1 cos(
x )
suatu suatu bilang bilangan, an, dimana dimana bilang bilangan an dalam dalam
radian. Csc
Menghitung
1 sin(
x )
suatu suatu bilanga bilangan, n, dimana dimana bilanga bilangan n dalam dalam
radian. Cot
Menghitung
1 tan(
x )
suatu suatu bilanga bilangan, n, dimana dimana bilanga bilangan n dalam dalam
radian. c. Fung Fungsi si Ana Anali lisi siss Data Data Matlab Matlab menyedi menyediaka akan n sejuml sejumlah ah fungsi fungsi pentin penting g untuk untuk diguna digunakan kan dalam dalam mengmenganalisis data, antara lain ditunjukkan pada Tabel 1.1c. Tabel 1.1c Fungsi Analisis Data
Fung Fungsi Max Min Mean Dll
Keterangan Menghasilkan ni nilai terbesar dari suatu ve vektor atau ma matriks Menghasilkan nilai terbesar dari suatu vektor atau matriks Menghasilkan nilai mean . ....
3.5.2. Vektor dan Matriks dalam Matlab a. Vektor
Vektor baris : >> v = [-2 sin(45) 4 6]
v= -2.0000
0.8509
4.0000
6.0000
>> length(v) % menghitung panjang vektor ans = 3 Vektor kolom : >> x = [6; 5 ; 9] x= 6 5 9 b. Matriks
Dapat diasumsikan bahwa didalam matlab setiap data akan disimpan dalam bentuk matriks. Dalam membuat suatu data d ata matriks pada matlab, setiap isi data harus dimula dimulaii dari dari kurung kurung siku siku ‘[‘ dan diakhi diakhiri ri dengan dengan kurung kurung siku siku tutup tutup ‘]’. ‘]’. Untuk Untuk membuat membuat variab variabel el dengan dengan data data yang yang terdir terdirii beberap beberapaa baris, baris, gunakan gunakan tanda tanda ‘titi ‘titik k koma’ (;) untuk memisahkan data tiap barisnya. Matl Matlab ab meny menyedi ediak akan an beber beberap apaa fung fungsi si yang yang dapat dapat kita kita gunak gunakan an untuk untuk menghasilkan bentuk-bentuk matriks yang diinginkan. Fungsi-fungsi tersebut antara lain: •
zeros : untuk membuat matriks matriks yang semua datanya bernilai 0
•
ones : matriks yang semua datanya bernilai 1
•
rand : matriks dengan data random dengan menggunakan distribusi uniform
•
randn : matris dengan data random dengan menggunakan menggunakan distribusi normal
•
eye : untuk menghasilkan matriks matriks identitas
Cara Menginp eng inputka utkan n M atrik. atri k. Contoh :
1 Matrik A= 4 7
3
2
9
5
6
8
Ada 4 cara untuk menginputkan matrik matrik yakni : Cara 1:
>>a=[1 2 3;4 5 6;7 8 9] Cara 2 :
>>a=[1 2 3 enter 5
5 6 enter
7
8 9];
Cara 3:
>>a1=[1 2 3]; >>a2=[4 5 6]; >>a3=[7 8 9]; >>a=[a1;a2;a3;]; >>a Cara 4 :
>>a=input(‘Masukkan matrik= ‘); >>Masukkan matrik=[1 2 3;4 5 6;7 8 9] >>disp(a) 3.5.3. Operasi dan Fungsi pada Matriks •
Tabel 1.2. Operasi dan fungsi pada matriks yang sering digunakan : Perintah
Keterangan
Contoh
Det
Menghasilkan determinan matriks
Det(A)
Size
Menghasilkan ukura matriks
Size(A)
+
Menjumlahkan matriks
C=A+B
*
Mengalikan matriks
C=A*B
.*
Mengalikan
elemen
dengan
elemen, C = A .* B
dengan ketentuan memiliki ukuran yang sama ^
Memangkatkan
matriks
dengan
suatu C = A^ k
elemen
per
elemen C = A .^ k
skalar .^
Memangkatkan
matriks dengan skalar ’
Transpose matriks
A’
./
Membagi el e lemen pe p er el e lemen de d engan C = A ./ B ketentuan memiliki ukuran yang sama
\
Menghasilkan solusi AX = B
C=A\B
/
Menghasilkan solusi XA = B
C=A/B
Inv
Menghasilkan
invers
matriks
dengan C = Inv(A)
kete ketent ntuan uan matr matrik ikss meru merupa pakan kan matr matrik ikss bujur sangkar
3.6. Grafik Matlab 3.6.1. Grafik 2 Dimensi
•
C o mma nd Pl Pl o t
>> Plot (X,Y,’ro’) >> Plot (Nilai fungsi,fungsi,’warna_garis/data_point’) •
Colors Colors : b(blu b(blue), e), r(red), r(red), g(green), g(green), y(yellow y(yellow), ), m(mag m(magenta enta), ), c(cyan), k(black)
•
Marker Markerss : (o),(x), (o),(x),(*) (*),( ,(.), .),(+) (+),( ,(d), d),(s (s), ),(p) (p),( ,(h) h)
•
Line Line Sty Style le : (-) (-),( ,(:) :),( ,(-. -.), ),((- -), -),
Contoh 1 :
>>n = 25 >>t = 0 : 1/n : 10 >>y = sin(t); >>plot (t,y,’ro’) >>title (‘Grafik Y = Sin(t) >>grid >>xlabel(‘t’), >>ylabel(‘Amplitude’)
Hasil Plot :
Contoh 2 : Menampilkan Menampilkan 2 grafik dalam dalam 1 bidang
>>t=0:0.1:10; >>x=sin(t); >>y=cos(t); >>z=cos(2*t+10); >>plot(t,x,'r-') >>hold on >>plot(t,y,'bo') >>hold on >>plot(t,z,'k--') >>title('Mulitple Plot') >>xlabel('t'),ylabel('Amplitude') >>grid >>legend('x=Sin(t)',… 'y=cos(t)','z=cos(2*t+10)') >>hold off
Hasil Plot :
Contoh 3 : Menampilkan 2 grafik dalam 2 bidang (terpisah) >> t=0:0.1:10; >> x=sin(t); >> y=sin(t+30); >> subplot(2,1,1) >> plot(t,x,'r-' plot(t,x,'r-') ) >> grid on >>xlabel('t' >>xlabel('t'),ylabel( ),ylabel('Amplitude' 'Amplitude') ) >> title(' title(' Grafik x = Sin(t)') Sin(t)')
>> >> >> >> >> >> >>
subplot(2,1,2) plot(t,y,'bo' plot(t,y,'bo') ) grid on xlabel('t' xlabel('t'),ylabel( ),ylabel('Amplitude' 'Amplitude') ) grid on title('Grafik title('Grafik y = sin(t+30)') sin(t+30)') hold off
Hasil Plot :
3.6.2. Grafik 3 Dimensi
Matlab mempunyai heberapa fungsi tersendiri untuk memplot 3-D object. Fungsi-fung Fungsi-fungsi si terscbut terscbut adalah adalah plot kurva di ruangan ruangan (plot3). mesh surfaces (mesh), surfaces (surf) dan plot kontur (countour) . Juga ada dua fungsi fungsi untuk untuk memplot memplot per mukaan muk aan yang ya ng khu sus, sus , sphere da n cylinder . Untuk Untuk Iebih Iebih mengeta mengetahui hui 3-D graphic, ketikkan help graph3d Command Window. Contoh :
>> n=25; >> x=0:1/n:3; >> plot3(x,sin(5*x),sin(5*x)); >> grid
Hasil Plot :
1
0. 5
0
-0.5
-1 1 0. 5
3 0
2 -0.5
1 -1
0
3.7. Matematika Dalam Teknik Kontrol 3.7.1. Fungsi Polinomial
Matlab menyediakan fungsi operasi standar dari polinom, seperti akar polinomial, evaluasi, dan turunan. Sebagai tambahan, fungsi-fungsi berikut diberikan untuk aplikasi lebih lanjut, seperti pencocokan kurva dan ekspansi fraksi parsial. Fungsi Conv Deconv Poly Polyder Polyfit Polyval Polyvalm Residue Roots
Keterangan Perkalian polinomial Pembagian polinomial Polinomial dengan akar-akar tertentu Turunan polinomial Pencocokan kurva polinomial Evaluasi polinomial Evaluasi matrik polinomial Ekspansi fraksi parsial Mencari akar-akar polinomial
3.7.2. Transformasi
a). Transformasi Laplace Contoh : Tentukan transformasi laplace dari fungsi berikut ini : f = 0,03(1-cos2t) Jawab : Command windows : >> f = sym(‘1-cos2*t)’) >> F = laplace(f) Atau pada M-file : Syms t
% Untuk inisialisasi variabel
f = 1-cos2*t laplace(g) b). Invers Laplace Contoh : Tentukan invers transformasi laplace dari fungsi berikut : F(s) =
e s
−t
−1
Jawab : Command Windows : >> F = exp(-1)/(s-1) >> f = ilaplace(f) Atau pada M-File : Syms s
% Untuk inisialisasi variabel
F = exp(-1)/(s-1) ilaplace(F)
3.7.3. Differensial
Contoh : a. Turu Turuna nan n perta pertama ma dari dari fungs fungsii y
>> syms x;
↵
>> y=x^3+2*x^2+6*x+7; >> z=diff(y)
↵
↵
Akan muncul sebagai berikut : z = 3*x^2+4*x+6
b. Turunan kedua dari fungsi y >>z=diff(y,2)
↵
Akan muncul sebagai berikut : z = 6*x+4
3.8. Kontrol PID
PID Controller Controller merupakan merupakan salah satu jenis pengatur pengatur yang banyak digunakan. digunakan. Selain itu sistem ini mudah digabungkan dengan metoda pengaturan yang lain seperti Fuzzy dan Robust. Sehingga akan menjadi menjadi suatu sistem sistem pengatur yang semakin baik Tulisan ini dibatasi pada sistem dengan Unity Feedback System, System, yang gambarnya sebagai berikut :
+
Controller
Plant
Gambar Block Diagram Untuk Unity Feedback System
3.8.1. Tiga Jenis Controller dan karakteristiknya: 1. Kontrol Kontroler er Propors Proporsion ional al (P) Pengaruh pada sistem : •
Menambah atau mengurangi kestabilan
•
Dapat memperbaiki respon transien khususnya : rise time, settling time.
•
Mengurangi waktu naik, tidak menghilangkan Error steady state Untuk menghilangkan Ess, dibutuhkan K P besar, yang akan membuat sistem lebih tidak stabil.
2. Kontrol Kontroler er Integ Integral ral (I) (I) Pengaruh pada sistem : •
Menghilangkan Error Steady State
•
Respon lebih lambat (dibanding P)
•
Dapat menimbulkan ketidakstabilan (karena menambah orde sistem)
3. Kontrol Kontroler er Deriva Derivati tiff (D) Pengaruh pada sistem : •
Memb Member erik ikan an efek efek redam redaman an pada pada sist sistem em yang yang beros berosil ilas asii sehi sehing ngga ga bisa bisa memperbesar pemberian nilai Kp .
•
Memperbaiki respon transien, karena memberikan aksi saat ada perubahan error.
•
D hanya berubah saat ada perubahan error, sehingga saat ada error statis D tidak beraksi Sehingga D tidak boleh digunakan sendiri.
Fungsi transfer dari PID controller akan tampak sebagai berikut : K P +
K I s
+ K Ds =
K D s
2
+ K P s + K I
s
•
K P = Proportional Gain
•
K I = Integral Gain
•
K D = Derivatif Gain
Tabel Respon PID Controller Terhadap Perubahan Konstanta Respon Respon Loop Loop Tertutup Kp Ki Kd
Waktu Naik
Overshoot
Waktu Turun
Menurun Menurun Perubahan Kecil
Meningkat Meningkat Menurun
Perubahan Kecil Meningkat Menurun
Kesalahan Keadaan Tunak Menurun Hilang Perubahan Kecil
3.9.
Simulasi Sistem 3.9.1. 3.9.1. Simu Simulas lasii deng dengan an M-File M-File
Untuk Untuk meng-a meng-anal nalisa isa suatu suatu sistem sistem,, softwa software re hanya hanya memerl memerlukan ukan masukan masukan berupa berupa transf transfer er functi function on yang dituli dituliss dalam dalam Laplac Laplacee Transf Transform orm (dalam (dalam s-dom s-domain ain)) atau atau matriks. contoh, suatu sistem kontrol memiliki transfer function sebagai berikut : H ( s )
=
1 s
2
+
5 s +10
Ketikkan listing berikut pada M-File : num = [1]; den = [1 2 10]; step(num,den) title(‘Open Loop Response’) Respon sistem terbuka (open loop response) dapat dilihat pada gambar di bawah ini : O p e nL o o pR e s p o n se 0.12
0.1
0.08
e d u t i l p m A
0.06
0.04
0.02
0 0
0 .5
1
1.5
2
2 .5
3
T im e(s (sec)
3.9.2.Simulasi dengan Simulink
Pada Pada M-Fi M-File le kurv kurvaa resp respon on sist sistem em dibua dibuatt denga dengan n mengg menggun unaka akan n list listin ing g program,
sedangkan
pada
simulink
kita
bisa
menganalisa
menggunakan block diagram. H ( s )
=
1 s
2
+
5 s +10
sistem
dengan
Analisa dengan mennggunakan simulink:
IV. TUGAS DAN JAWABAN
1. Buatla Buatlah h matrik matrikss A dan B ordo ordo 4x4, 4x4, dan tentu tentukan kan : >> A=[ 6 5 8 7 ; 4 6 7 4 ; 3 4 2 8 ; 8 4 6 2 ] A= 6
5
8
7
4
6
7
4
3
4
2
8
8
4
6
2
>> B=[ 5 4 6 7 ; 5 7 8 9 ; 8 6 4 2 ; 8 7 4 6 ] B= 5
4
6
7
5
7
8
9
8
6
4
2
8
7
4
6
a.
Invers matriks A dan B
>> inv(A)
ans = -0.0525
-0.1377
0.0623
0.2098
-0.3902
0.3508
0.1508
0.0607
0.2820 -0.0098 -0.2098 -0.1279 0.1443 -0.1213
0.0787 -0.0770
>> inv(B) ans = 0.2809
-0.2697
0.0618
0.0562
-0.4944
0.3146
0.0112
0.1011
0.1180
0.1067
0.2360
-0.3764
0.1236 -0.0787 -0.2528 b.
0.2247
A x (B – 1)
>> A*(B-1) ans = 149 130 110 119 117 107
95
99
98
91
73
92
104
90
92
96
c.
Invers A x B
>> inv(A)*B ans = 1.2262
0.6689 -0.3279 -0.2230
1.4951
2.2246
1.3115
1.0918
-1.3410
-1.0951
0.2623
0.6984
0.1279 -0.3393 -0.0984 -0.3869 d.
A2
>> A^2
ans = 136 120 141 140 101 100 112 116 104
79
104
98
96
116 124
e.
69
Elemen matriks A dan B dengan 4
>> A=[ 4 4 4 4 ; 4 4 4 4 ; 4 4 4 4 ; 4 4 4 4 ] A= 4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
>> B=[ 4 4 4 4 ; 4 4 4 4 ; 4 4 4 4 ; 4 4 4 4 ] B= 4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
f.
Pangkat katkan de dengan 2 setiap ma matriks A dan B
>> A.^2 ans = 16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
>> B.^2 ans = 16
16
16
16
16
16
16
16
16
16
16
16
16
16
g.
Determinan matriks A dan B
>> det A ans = 65 >> det B ans = 66 2.
Ubah Ubah per persama samaan an line linerr beri beriku kutt menja enjadi di per persama samaan an mat matriks riks dan dan cari cari
nilai x1, x2, x3, dan x4 ! b. 2x1 + x2 + 4x3 + 5x4 = 8 x1 – 2x2 - 1x3 + 5x4 = 4 9x1 + 3x2 + 3x3 + 4x4 = 10 4x1 + 3x2 + 7x3 – 1x4 = 47 Jawab : >> A = [2 1 4 5 ; 1 -2 -1 5 ; 9 3 3 4 ; 4 3 7 -1] A= 2
1
4
5
1
-2
-1
5
9
3
3
4
4
3
7
-1
>> B = [8;4;10;47] B= 8 4
10 47 >> C = inv(A)*B C= 5.9000 -17.3000 10.0000 -5.3000 >> x1=5.9000;x2=-17.3000;x3=10.0000;x4=-5.3000; >> B=[x1;x2;x3;x4]
B= 5.9000 -17.3000 10.0000 -5.3000
3.
Buat Buat tamp tampil ilan an gra grafi fik k plot plot,, ste stem, m, bar, bar, dan dan sta stair ir dari dari 2 pers persam amaa aan n dala dalam m
1 grafik! : A = (3x+2)3 B = 5x3+4 Jawab : - Bahasa programnya n=5 x=0: 1/n :10 A=(3*x+2).^3 B=(5*x.^3)+4 plot(x,A,'bp')
Dimana : n = 5; x = 0 : 1/n : 10
hold on plot(x,B,'rs') hold on title('Grafik Tugas Meri') xlabel('X'),ylabel('A dan B') grid legend('A=(3*x+2).^3','B=(5*x.^3)+4') hold off Grafik Plot
- Bahasa programnya n=5 x=0: 1/n :10 A=(3*x+2).^3 B=(5*x.^3)+4 stem(x,A,'bp') hold on stem(x,B,'rs') hold on title('Grafik Tugas Meri') xlabel('X'),ylabel('A dan B')
grid legend('A=(3*x+2).^3','B=(5*x.^3)+4') hold off Grafik Stem
Bahasa Programnya: n=5 x=0: 1/n :10 A=(3*x+2).^3 B=(5*x.^3)+4 bar(x,A,'bp') hold on bar(x,B,'rs') hold on title('Grafik Tugas Meri') xlabel('X'),ylabel('A dan B') grid legend('A=(3*x+2).^3','B=(5*x.^3)+4') hold off Grafik Bar
Bahasa Programnya: n=5 x=0: 1/n :10 A=(3*x+2).^3 B=(5*x.^3)+4 stairs(x,A,'bp') hold on stairs(x,B,'rs') hold on title('Grafik Tugas Meri') xlabel('X'),ylabel('A dan B') grid legend('A=(3*x+2).^3','B=(5*x.^3)+4') hold off Grafik Stairs
4.
Baga Bagaim iman anaa cara cara men menam ampi pilk lkan an dua dua fun fungs gsii sin sinus us dan dan cos cosin inus us pad padaa
masing fungsi yang disajikan dalam grafik yang berbeda. Misalnya anda gunakan contoh kasus pada soal ke-3, fungsi pertama anda tampilkan pada figure (1),sementara fungsi kedua anda tampilkan pada figure (2)! Jawab:
- bahasa programnya n=5 x=0 : 1/n :10 A=(3*x+2).^3 B=(5*x.^3)+4 C=sin(A) D=cos(B) figure(1) plot(x,C,'b-') hold on title('Grafik Sinus') xlabel('X'),ylabel('Fungsi Sinus') grid figure(2) plot(x,D,'r-') hold on title('Grafik Cosinus') xlabel('X'),ylabel('Fungsi Sinus') grid hold off
Grafik Soal No.3(Figure 1)
Grafik Soal No.3(Figure 2)
5.
Tent Tentuk ukan an tran transf sfor orma masi si fung fungsi si lapl laplac acee ber berik ikut ut:! :!
a.
syms t
F= (t^3 + 3*t^2 + 4*t + 3) laplace(F) F= t^3+3*t^2+4*t+3 ans = 6/s^4+6/s^3+4/s^2+3/s b.
syms t
F= 3*(2*t-3)+(t-3)
laplace(F) F= 7*t-12 ans = 7/s^2-12/s c.
syms t
F= (3*sin(5*t*(pi/180))) laplace(F) F= 3*sin(1/36*t*pi) ans = 1/12*pi/(s^2+1/1296*pi^2) d.
syms t
F=(5*cos(3*t*(pi/180))) laplace(F) F= 5*cos(1/60*t*pi) ans = 5*s/(s^2+1/3600*pi^2) Tentukan transformasi Laplace balik dari fungsi-fungsi berikut: 1.
F(s) = ((s2 +3s +2)/(s3 +5s2 +10.5s +9))
Jawab : syms s F=((s^2 +3*s +2)/(s^3 +5*s^2 +10.5*s +9)) ilaplace(F) F= (s^2+3*s+2)/(s^3+5*s^2+21/2*s+9)
ans = exp(-3/2*t)*cos(3/2*t)-1/3*exp(-3/2*t)*sin(3/2*t) F(s) = ((s+1)/(s3+6s2+11s+6))
2.
Jawab : syms s F=((s+1)/(s^3+6*s^2+11*s+6)) ilaplace(F) F= (s+1)/(s^3+6*s^2+11*s+6) ans = -exp(-3*t)+exp(-2*t) F(s) = ((4s+5)/(s2+5s+18.5))
3.
Jawab : syms s F=((4*s+5)/(s^2+5*s+18.5)) ilaplace(F) F= (4*s+5)/(s^2+5*s+37/2) ans = 4*exp(-5/2*t)*cos(7/2*t)-10/7*exp(-5/2*t)*sin(7/2*t) 4. F(s) = (( ((s2-16)/(s3+8s2+24s+32)) Jawab : syms s F==((s^2-16)/(s^3+8*s^2+24*s+32)) ilaplace(F) ans = 0 ans =
4*exp(-5/2*t)*cos(7/2*t)-10/7*exp(-5/2*t)*sin(7/2*t) 6. Buatlah gambar M-file M-file dan simulink grafik grafik keluaran sinyal sinyal dari TF persamaan berikut : G(s) = s+2/2s2+3s G(s) = 2s+1/5s2+2s+1 Jawab :
V. ANALISA
Pada praktikum kali ini, sebelum melakukan percobaan kami diperkenalkan dengan yang namanya Matlab, daerah lingkungan kerjanya, karakter-karakter spesial matlab yang juga perlu kita ketahui serta cara-cara meimplentasikan fungsi, vektor, matriks maupun grafik ke dalam matlab. Matlab adalah bahasa pemograman yang berbeda dengan bahasa pemograman tingkat tinggi seperti visual basic,Delphi dan
lain-lain, lain-lain, matlab memiliki memiliki kelebihan kelebihan sendiri sendiri yaitu dapat menyelesaika menyelesaikan n persoalan persoalan komput komputasi asi teknis teknis,, visual visualisa isasi si dan
pemrog pemrogram raman an sepert sepertii komput komputasi asi matema matematik tik,,
analisis data, pengembangan algoritma, simulasi dan pemodelan dan grafik-grafik perhitungan. Matlab memiliki aturan/kaidah sendiri dalam penulisan perintah programnya misaln misalnya ya kita kita ingin ingin membuat membuat persam persamaan aan matrik matrikss maka maka kita kita harus harus mengaw mengawali alinya nya dengan tanda [ dan diakhiri tanda ] serta tanda ; sebagai pemisah baris satu dan baris selanjutnya. Dan untuk mengetahui invers atau determinan dari matriks tersebut kita tingg inggal al ber berikan kan
per perintah ntah inv atau atau det det.
Buka Bukan n
hany hanyaa
mat matriks riks,,
bis bisa
juga uga
turunan,integral,laplace, laplace balik dan lain-lain. Selain Selain dapat dapat menyel menyelesa esaika ikan n perhit perhitunga ungan n matemat matematik, ik,Mat MatLab Lab juga juga dapat dapat menyajikan data input dalam tampilan Grafik. Grafik yang disajikan dapat berupa 3D atau 2D berupa plot, plot, stem, bar atau atau stair. Tergantung Tergantung bagaimana bagaimana input yang kita kita berikan. Bahkan matlab juga dapat bermanfaat untuk pengoperasian fungsi laplace dan dan memb membua uatt diag diagra ram m blok blok.. PID PID cont contro roll ller er yang yang meru merupa paka kan n sala salah h satu satu jeni jeniss pengaturan yang dilakukan dapat disimulasikan dengan metode Simulink pada matlab.Setelah melakukan banyak percobaan diatas saya baru mengerti bahwa dalam penulisan perintah program pada matlab diperlukan ketelitian yang sangat tinggi karena salah sedikit saja maka pesan error akan ditampilkan , tapi disini matlab lagilagi memliki kelebihan ketika mengalami kesalahan atau error maka matlab akan memberitahu kita baris mana yang mengalami kesalahan penulisan program tersebut, sehingga kita tidak susah lagi untuk mencari kesalahan dimana yang terjadi.
VI. KESIMPULAN
1. Soft Softwa ware re MATL MATLAB AB mamp mampu u meny menyel eles esai aika kan n pers persoa oala lan n komp komput utas asii tekn teknis is,, visualisasi visualisasi dan pemrograman pemrograman seperti seperti komputasi komputasi matematik, matematik, analisis analisis data, pengembangan algoritma, simulasi dan pemodelan dan grafik-grafik perhitungan.
2. MatLab MatLab memiliki memiliki sensit sensitivi ivitas tas yang tinggi tinggi dalam dalam mengeks mengekseku ekusi si input yang dimasukan. 3. MATLAB MATLAB mampu mampu mensimul mensimulasi asikan kan suatu suatu data masukan masukan dengan dengan tampilan tampilan 2 dimensi dan 3 dimensi. 4. Fasi Fasili lita tass Simu Simuli link nk Wind Window owss pada pada MATL MATLAB AB sang sangat at memb memban antu tu dala dalam m simulasi kontrol (PID Controller). 5. Softwa Software re MATLAB MATLAB,, Matrix Matrix Laborato Laboratory, ry, dikemban dikembangkan gkan berdasar berdasarkan kan metode matrik (penggunaan baris dan kolom).
DAFTAR PUSTAKA
Korps Asisten Dasar Sistem Kendali. 2009. Modul Praktikum Dasar Sistem Kendali. Inderalaya : Universitas Sriwijaya http:// www.google.co.id/pengoprasian www.google.co.id/pengoprasian program matlab. matlab. Diakses tanggal 28 mei 2009. http://www.members.ivcos.co.uk/roadevil/article.php?sid=2beton .Diakses .Diakses tanggal 28 mei 2009. Http://
[email protected] Http://
[email protected] ). Diakses tanggal 28 mei 2009. http://www.blogspot.com/elektronika. Diakses tanggal 28 mei 2009.