Anda di halaman 1dari 39

Modul Praktikum Sistem Kendali - D10H5103

Program Studi Teknik Elektro


Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD

MODUL 1A
PENGENALAN MATLAB

BAB I
Pendahuluan

Matlab adalah singkatan dari Matrix Laboratory, software yang dibuat


dengan menggunakan bahasa ini dibuat oleh The Mathworks.inc dan telah
memasuki versi R2016a. kekuatan matlab terletak pada :
1. Kemudahan manipulasi struktur matriks.
2. Jumlah routine-routine powerful yang berlimpah yang terus berkembang.
3. Kekuatan fasilitas grafik tiga dimensi yang sangat memadai.
4. Sistem scripting yang memberikan keleluasaan bagi pengguna untuk
mengembangkan dan memodifikasi software untuk kebutuhan sendiri.
5. Kemampuan interface( misal dengan bahasa C, word dan mathematica).
6. Dilengkapi dengan toolbox, simulink, stateflow dan sebagainya, serta
mulai melimpahnya source code di internet yang dibuat dalam matlab
(contoh toolbox misalnya : signal processing, control system, neural
networks dan sebagainya).
Semua itu merupakan perangkat yang powerful untuk menyelesaikan
permasalahan sains dan teknik terutama untuk wilayah dimana komputasi
numerik harus dibuat.

GUI di Matlab
Ketika kita membuka GUI Matlab kita bisa melihat lihat dan mencoba coba
perintah pada GUI tersebut dan untuk lebih jelasnya bisa dilihat dalam demo
tersebut. Kita bisa melihat contoh contoh program dan bisa disave dengan
ektension .m(yang merupakan ektensi dari file matlab)

Salah satu yang cukup menarik dari matlab ini adalah kemudahan dan
kejelasannya dalam memahami contoh dan demo serta help yang ada pada matlab.
Kita akan berkenalan lebih dekat dengan yang satu ini. Kita bisa lihat dari demo
ini ternyata begitu banyak persoalan yang dapat dibangun dengan matlab dengan
cara lebih mudah dan lebih singkat, tanpa mengurangi kepahaman kita pada suatu
persoalan (bisa dibandingkan dengan bahasa C, pascal, delphi atau visual
lainnya). Dengan dilengkapinya matlab dengan toolbox, simulink dan

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 22
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD
sebagainya maka semakin menambah kekuatan matlab untuk menyelesaikan
permasalahan yang rumit menjadi lebih mudah.

BAB II
Dasar Teori
2.1. Pengertian Matlab
Matlab merupakan bahasa pemrograman dengan kemampuan tinggi
dalam bidang komputasi. Matlab memiliki kemampuan mengintegrasikan
komputasi, visualisasi, dan pemrograman. Oleh karenanya, matlab banyak
digunakan dalam bidang riset‐riset yang memerlukan
komputas numerik yang kompleks. Penggunaan Matlab meliputi bidang–
bidang :
a. Matematika dan Komputasi
b. Pembentukan Algorithm
c. Akusisi Data
d. Pemodelan, simulasi, dan pembuatan prototype
e. Analisa data, explorasi, dan visualisasi
f. Grafik Keilmuan dan bidang Rekayasa

Matlab merupakan kepanjangan dari Matrix Laboratory. Sesuai dengan


namanya, struktur data yang terdapat dalam Matlab menggunakan matriks
atau array berdimensi dua (double). Oleh karenanya penguasaan teori
matriks mutlak diperlukan bagi pengguna pemula Matlab agar mudah
dalam mempelajari dan memaham operasi‐operasi yang ada di Matlab.

2.2. Variabel dan Operator


a. Variabel
Seperti bahasa pemrograman lainnya, matlab pun memiliki variabel,
tetapi dalam penulisannya, variabel di dalam matlab tidak perlu
dideklarasikan, karena matlab mampu mengenali tipe data dari
variable dari isi variabel tersebut. Aturan penulisan variabel pada
matlab sama dengan aturan pada bahasa pemrograman lainnya, yaitu
bersifat case sensitive, diawali dengan huruf dan selanjutanya
boleh menggunakan gabungan huruf‐angka atau tanda garis bawah.
Matlab mampu mengenali sampai 31 karakter pertama, selanjutnya
diabaikan.
Contoh:

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 23
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD

Semua tipe data di matlab memiliki bentuk yang sama, yaitu array.
Array minimal berukuran 0x0 dan dapat bertambah menjadi array
n x m dimensi dengan sebarang ukuran. Matlab mempunyai beberapa
tipe data dasar (atau class), yaitu: logical, char, numeric, cell,
structure, java classes, function handles.
b. Operator
Di dalam matlab, operator diklasifikasikan menjadi tiga bagian, yaitu:
1. Operator Arimatika
Operator aritmatika digunakan untuk mengerjakan komputasi
numeric.

Operator Arti
+ Penjumlahan
‐ Pengurangan
* Perkalian (aturan matriks)
.* Perkalian masing‐masing eleman yang bersesuaian
(aturan array)

/ Pembagian kanan (matriks)


./ Pembagian kanan (array)
\ Pembagian kiri (matriks)
.\ Pembagian kiri (array)
^ Perpangkatan (matriks)
.^ Perpangkatan (array)
: langkah

2. Operator Relasional
Operator relasional digunakan untuk membandingkan
operand‐operand secara kuantitatif

Operator Arti
== Sama dengan
~= Tidak sama dengan
< Kurang dari
> Lebih dari
<= Kurang dari sama dengan
>= Lebih dari sama dengan
3. Operator Logika

Operator Arti

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 24
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD
& Akan menghasilkan nilai 1 jika kedua elemen yang
bersesuaian memiliki nilai true dan 0 untuk lainnya
| Akan bernilai 1 jika salah satu elemennya true
~ Komplen dari elemen yang diinputkan
xor Akan bernilai 1 jika salah satu dari kedua elemen
memiliki nilai berbeda dan bernilai nol jika sama

BAB III
Prosedur Praktikum

3.1. Prosedur Pemrograman


Prosedur pemrograman MATLAB adalah :

1. Memulai matlab dengan klik Icon seperti pada Gambar 1.1.

Gambar 1.1. Icon MATLAB pada dekstop


2. Jalankan program MATLAB sampai tampak MATLAB Command
Window dilayar monitor. MATLAB Command Window adalah tempat
yang digunakan untuk menuliskan segala perintah yang ada di MATLAB.
Perintah-perintah MATLAB dapat diketik setelah Prompt MATLAB yang
berbentuk simbol “>>” ditampilkan pada Gambar 1.2. Aktifkan editor
pada program MATLAB (saudara dapat menggunakan editor yang
lain, sepanjang dalam format *.m)

Gambar 1.2. Tampilan Command Window MATLAB

3. Menentukan direktori tempat bekerja.

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 25
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD

Gambar 1.3. Menentukant Folder tempat program

I. Perintah Sederhana
a. Buatlah sebuah variabel numerik dengan nilai 20 dengan nama “x”.
Diketik dengan :
>> x = 20 {Enter}
Perhatikan hasilnya yang tampak di MATLAB Command
Window.

Terdapat sebuah variabel x dengan nilai 20, maka saat diketikkan


variabel x nilai yang ada dalam x tersebut yang akan di proses.
b. Buatlah sebuah vektor sederhana dengan 9 elemen dengan nama “a”.
Diketik dengan :
>> a = [ 1 2 3 4 6 4 3 4 5 ] {Enter}
Perhatikan hasilnya yang tampak di MATLAB Command
Window.

Selain bentuk khusus, matlab juga menyediakan bentuk matriks yang


didefinisikan oleh pengguna, yaitu menggunakan tanda kurung siku.

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 26
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD
Tanda kurung siku pada matlab berfungsi sebagai bentuk matriks,
sedangkan spasi untuk memisahkan setiap elemen pada satu baris
tertentu.
c. Tambahkan 2 ke setiap elemen pada vektor “a” tersebut dan simpan
hasilnya ke vektor yang baru. Diketik dengan :
>> b = a + 2 {Enter}
Perhatikan hasilnya. Perhatikan juga bahwa MATLAB tidak
memerlukan penanganan khusus dalam melakukan kalkulasi
tersebut.

Barisan instruksi untuk melakukan penjumlahan. Nilai dari variabel


b diperoleh dari nilai variabel a ditambah 2.

Dalam matlab setiap variabel akan disimpan dalam bentuk matrik.


User dapat langsung menuliskan variabel baru tanpa harus
mendeklarasikannya terlebih dahulu pada command window.

d. Buat grafik dari hasil penjumlahan vektor tersebut diatas dengan


garis-garis grid. Didalam MATLAB, cara membuat grafik cukup
dengan mengetikkan perintah baris yang begitu sederhana.
>> plot(b) {Enter}
>>grid off {Enter}
Perhatikan hasilnya di Figure Window, maka akan muncul grafik
seperti pada Gambar 1.4.

Gambar 1.4. Hasil grafik 2D dengan fungsi plot

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 27
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD
Fungsi plot digunakan untuk menggambar grafik 2D dengan skala
linear pada kedua sumbunya.
MATLAB juga dapat membentuk grafik jenis lain dengan
menambahkan nama setiap sumbunya.
>> bar(b) {Enter}
>> xlabel(‘Contoh #’) {Enter}
>> ylabel(‘Kilo Gram’) {Enter}
Lihat hasilnya di Figure Window. Maka akan muncul grafik seperti
pada Gambar 1.5.

Gambar 1.5 Hasil grafik 2D dengan fungsi bar

Fungsi bar digunakan untuk menampilkan data yang berbentuk


vector maupun matriks. Grafik bar digunakan untuk menampilkan
sekumpulan data selama kurun waktu terentu.

Seperti pada Gambar 1.6 sumbu x diberi nama yaitu Contoh #,


maka akan muncul pada grafik tepatnya pada sumbu x

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 28
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD
Gambar 1.6 Grafik bar dengan xlabel

Sedangkan pada sumbu y diberi nama dengan Kilo Gram, maka


akan muncul pada grafik seperti pada Gambar 1.7.

Gambar 1.7 Grafik bar dengan ylabel

e. MATLAB juga bisa menggunakan simbol didalam grafiknya.


MATLAB memberikan berbagai jenis simbol dan garis yang dapat
ditempatkan pada grafik. Perintah dibawah ini sebuah contoh yang
digunakan untuk memberikan tanda * pada nilai-nilainya. Perlu
diperhatikan ada atau tidaknya spasi pada parameter axis
>> plot(b,’*’) {Enter}
>> axis([0 10 0 10]) {Enter}
Lihat hasilnya di Figure Window.

Setelah diketikkan perintah diatas maka akan tampilan pada figure


window seperti pada Gambar 1.8.

Gambar 1.8. Grafik plot ‘*’

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 29
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD
Mengganti gambar grafik dari bar menjadi plot 2D skala linear pada
kedua sumbunya diganti dengan tanda ‘*’. Masing-masing nilai x
dan y dimulai dari 0-10.

II. Pengolahan Matriks


a. Buat sebuah matriks (sama mudahnya seperti membuat vektor),
menggunakan tanda semicolon (;) untuk memisahkan baris-baris
matriks dan spasi untuk memisahkan setiap elemen pada satu baris
tertentu. Seperti contoh berikut :
>> A = [ 1 2 0 ; 2 5 -1 ; 4 10 -1] {Enter}
Perhatikan hasilnya.

Tanda (;) merupakan perintah pembatas yang tidak ditampilkan di


jendela kerja, merupakan pemisah kolom dan baris dalam matriks.
b. Cara mencari transpose Matriks “A” dengan :
>> A = A’ {Enter}
Perhatikan hasilnya

Hasil matriks B yaitu A’ dari matrik A. Baris dari matriks A


menjadi kolom matriks B.
c. Sekarang kalikan kedua matriks tersebut dengan :
>> C = A * B {Enter}
Perhatikan hasilnya.

Untuk mengetahui hasil dari matriks C sesuai rumus, maka matriks


A dikalikan dengan matriks B

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 30
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD
d. Hitung perkalian elemen seletak (elemen yang memiliki baris dan
kolom yang sama) menggunakan operator dot-star dengan simbol
“.*”. Perintahnya :
>> C = A .* B {Enter}
Perhatikan hasilnya.

Perkalian masing‐masing elemen yang bersesuaian (aturan array)


e. Cari Matriks invers A, dengan
>> X = inv(A) {Enter}
Perhatikan hasilnya.

Inv menghasilkan invers matriks dengan ketentuan matriks


merupakan matriks bujur sangkar

f. Kalikan matriks invers A dengan matriks asalnya, menggunakan :


>> I = inv(A) * A {Enter}
akan diperoleh Matriks Identitas dengan ukuran (dimensi) yang
sesuai.
Perhatikan hasilnya.

g. MATLAB memiliki sejumlah “function” yang sering digunakan


dalam perhitungan matriks, seperti nilai Eigen dari suatu matriks,
dengan
>> eig(A) {Enter}
Lihat hasilnya.

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 31
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD

>> svd(A) {Enter}


Lihat hasilnya

Perhatikan kedua Hasil function tersebut.


h. Polinomial karakteristik dari mariks A adalah det (lambda*|-A)
dapat dihitung dengan Function “poly” yang menghasilkan suatu
vektor yang mengandung koefisien dari polinomial karakteristik.
Caranya :
>> p = round(poly(A)) {Enter}
Perhatikan hasinya.

Round merupakan fungsi matematika dasar yaitu membulatkan


bilangan ke bilangan bulat terdekat.

i. Mencari akar polinominal dengan menggunakan function “roots”.


>> roots(p) {Enter}
Merupakan nilai eigen dari matriks asal. Perhatikan hasil terebut.

Fungsi roots pada matlab untuk mencari akar-akar polinomial

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 32
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD
j. MATLAB memiliki beberapa aplikasi dari komputasi matriks,
seperti mencari konvolusi dari dua vektor.
>> q = conv(p,p)

{Enter}
Atau di konvolusi lagi dengan
>> r = conv(p,q); plot(r) {Enter}
Lihat hasilnya di Figure Window. Maka akan tampil figure
window seperti pada Gambar 1.9.

Gambar 1.9. Grafik dengan fungsi Conv

Fungsi Conv yaitu sebagai perkalian polinomial

III. Manipulasi Perintah Baris


a. Variabel-variabel yang telah digunakan dapat dilihat setiap saat
karena variabel ini tersimpan di memori, untuk mengetahuinya
digunakan perintah “who” atau whos”.
>> whos {Enter}

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 33
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD

Perhatikan jumlah variabel yang aktif.


b. Lihat nilai dari variabel tertentu dengan mengetikkan nama variabel
tersebut. Seperti :
>> A {Enter}
Perhatikan hasil tersebut.

c. Untuk mengetik perintah lebih dari satu pernyataan (statement)


pada satu baris perintah dengan cara menambahkan koma (,) atau
semicolon (;) untuk memisahkan setiap pernyataan yang ada. Jika
tidak memberikan hasilnya kepada suatu variabel, maka hasilnya
akan disimpan pada variabel sementara yang disebut “ans”. Seperti
contoh ini.
>> sqrt(-1), log(0) {Enter}

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 34
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD

Sqrt merupakan fungsi matematika dasar untuk menghitung akar


pangkat 2 dari suatu bilangan.

Matlab memiliki tiga variabel sebagai nonnumbers yaitu: Inf


(Negative Infinity), Inf (Infinity) dan Nan (Not an number).

Pada contoh ini karena memisahkan setiap pernyataan dengan


koma, maka hasil setiap operasi pernyataan tersebut ditampilkan
dilayar.
Contoh lain MATLAB juga mempunyai function-function yang
berhubungan dengan Pengolahan Sinyal. Perhatikan tanda
semicolon (;) setiap perintah berikut :
>> A = zeros(32); A(14:16,14:16) = ones(3); {Enter}
>> y =fft2(A); {Enter}
>> mesh(abs(y)); {Enter}
>> title(‘Magnitudo FFT 2D dari Matriks’) {Enter}
Lihat hasilnya pada Figure Window. Figure akan tamoak seperti
pada Gambar 1.10.

Gambar 1.10. Grafik 3D

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 35
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD

Fungsi zeros pada matlab untuk membuat matriks yang semua


datanya bernilai 0, sedangkan ones yaitu matriks yang semua
datanya bernilai 1.

Terlihat pada Gambar 1.11, grafik tersebut disertai dengan judul


yaitu Magnitudo FFT 2D dari Matriks.

Gambar 1.11. Grafik 3D dengan judul

Untuk lebih detil lagi memahami maksud perintah-perintah


tersebut, dapat dilihat di Signal Processing Toolbox.

IV. Manipulasi Grafik


MATLAB memiliki beberapa bentuk grafik yang dapat dibuat dengan
mudah dan cara penggunaannya-pun sederhana. Berikut ini akan
diberikan contoh-contoh untuk menampilkan berbagai grafik
berdasarkan kategori :
a. Grafik 2D :
1. Grafik garis, mencetak grafik chirp.
>> x=0:0.05:5; {Enter}
>> y=sin(x.^2); {Enter}
>> plot(x,y); {Enter}
Lihat hasilnya pada Gambar 1.12.

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 36
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD

Gambar 1.12 Grafik chirp

Tanda ‘:’ merupakan pembatas jangkauan


2. Grafik Batang (Bar), mencetak kurva BELL.
>> x=2.9:0.2:2.9; {Enter}
>> bar(x,exp(-x.*x)); {Enter}
Lihat hasilnya pada Gambar 1.13.

Gambar 1.13 Grafik batang dengan kurva BELL


3. Grafik tangga, mencetak Gelombang sinus dalam grafik tangga.
>> x=0:0.25:10; {Enter}
>> stairs(x,sin(x)); {Enter}
Lihat hasilnya pada Gambar 1.14.

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 37
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD

Gambar 1.14 Grafik tangga

Sin merupakan fungsi trigonometri untuk menghitung sinus


suatu bilangan, dimana bilangan dalam radian.

4. Grafik ErrorBar, mencetak Grafik Errorbar pada fungsi dengan


kesalahan secara acak.
>> x=-2:0.1:2; {Enter}
>> y=erf(x); {Enter}
>> e=rand(size(x))/10; {Enter}
>> errorbar(x,y,e); {Enter}
Lihat hasilnya pada Gambar 1.15.

Gambar 1.15 Grafik errorbar

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 38
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD
Rand merupakan fungsi matriks dengan data random dengan
menggunakan distribusi uniform.

5. Grafik Polar, mencetak fungsi perkalian sin dan cos dalam


bentuk polar.
>> t=0:.01:2*pi; {Enter}
>> polar(t,abs(sin(2*t).*cos(2*t))); {Enter}
Lihat hasilnya pada Gambar 1.16.

Gambar 1.16 Grafik polar

6. Grafik Stem, mencetak perkalian fungsi sin dengan


eksponensial.
>> x=0:0.1:4; {Enter}
>> y=sin(x.Ʌ2).*exp(-x); {Enter}
>> stem(x,y) {Enter}
Lihat hasilnya pada Gambar 1.17.

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 39
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD

Gambar 1.17 Grafik Stem

Fungsi stem digunakan untuk menampilkan data dalam bentuk


diskrit.

b. Grafik 3D
1. Grafik mesh, mencetak bentuk grafik mesh dari funsi “peaks”
yang telah disiapkan didalam MATLAB.
>> z=peaks(25); {Enter}
>>figure(2);surf(z); {Enter}
Lihat hasilnya pada figure window 1 Gambar 1.18.

Gambar 1.18 Grafik mesh


2. Grafik surface mencetak grafik permukaan dari fungsi “peaks”
dengan pola warna “jet” yang telah didefinisikan di dalam
MATLAB.
>> z=peaks(25); {Enter}
>> surf(z); {Enter}
>> colormap(jet); {Enter}
Lihat hasilnya pada figure window 2 sepeti pada Gambar 1.19.

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 40
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD
Perhatikan bahwa figure window 1 masih tetap ada, tidak
berubah. Lihat pada Gambar 1.20, lalu menjadi seperti Gambar
1.21.

Gambar 1.19 Grafik surface figure1

Gambar 1.20 Grafik surface figure2


3. Grafik Contour, mencetak kontur dari fungsi “peaks”
>> z=peaks(25); {Enter}
>> contour(z,16); {Enter}
Lihat hasilnya pada Gambar 1.21.

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 41
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD

Gambar 1.21 Grafik Contour

Perhatikan semua figure window, ternyata figure yang terakhir


yang aktif digantikan oleh gambar grafik contour.
4. Grafik Quiver, mencetak pola arah gerakan suatu nilai.
>> x = -2:.2:2; y = -1:.2;1; {Enter}
>> [xx,yy] = meshgrid(x,y); {Enter}
>> zz = xx.*exp(-xx.Ʌ2-yy. Ʌ2); {Enter}
>> [px,py] = gradient(zz,.2,.2); {Enter}
>> quiver(x,y,px,py,2); {Enter}
Lihat hasilnya pada Gambar 1.22.

Gambar 1.22 Grafik Quiver


c. MATLAB mempunyai beberapa bentuk Skala dan GRID untuk
tampilan grafiknya.

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 42
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD
1. Skala Linier, mencetak fungsi contoh berikut dengan bentuk
Grid yang diaktifkan, baik sumbu X (Horizontal) maupun
sumbu y (Vertikal)
>> x=logspace(-2,0,500); {Enter}
>> plot(x,((sin(1./x)). Ʌ2)./x); {Enter}
>> set(gca,’XGrid’,’on’,’YGrid’,’on); {Enter}
Kita dapat menghilangkan Grid dengan mengubah “on” menjadi
“off”.
Lihat hasilnya pada Gambar 1.23 tampilan grafiknya dengan
grid, sedangkan pada Gambar 1.24 tampilan grafiknya tidak
disertai dengan grid.

Gambar 1.23 Grafik skala linier dengan grid

Gambar 1.24 Grafik skala linier tanpa grid

2. Skala Semilog-X, mencetak fungsi tersebut dengan bentuk skala


Logaritmik sumbu X.
>> x=logspace(-2,0,500); {Enter}

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 43
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD
>> plot(x,((sin(1./x)). Ʌ2)./x); {Enter}
>> set(gca,’XScale’,’log’,’YScale’,’linear’); {Enter}
>> set(gca,’XGrid’,’on’,’YGrid’,’on); {Enter}
Lihat hasilnya pada Gambar 1.25.

Gambar 1.25 Grafik skala semilog-X

3. Skala Semilog-Y, mencetak fungsi tersebut dengan bentuk skala


Logaritmik sumbu Y.
>> x=logspace(-2,0,500); {Enter}
>> plot(x,((sin(1./x)). Ʌ2)./x); {Enter}
>> set(gca,’XScale’,’linear’,’YScale’,’log’); {Enter}
>> set(gca,’XGrid’,’on’,’YGrid’,’on); {Enter}
Lihat hasilnya pada Gambar 1.26

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 44
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD

Gambar 1.26 Grafik skala semilog-Y

4. Skala Semilog-XY, mencetak fungsi tersebut dengan bentuk


skala Logaritmik sumbu X dan sumbu Y.
>> x=logspace(-2,0,500); {Enter}
>> plot(x,((sin(1./x)). Ʌ2)./x); {Enter}
>> set(gca,’XScale’,’log’,’YScale’,’log’); {Enter}
>> set(gca,’XGrid’,’on’,’YGrid’,’on’); {Enter}
Lihat hasilnya pada Gambar 1.27.

Gambar 1.27 Grafik skala semilog-XY

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 45
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD
Latihan :
1. Kerjakan masing-masing instruksi program Matlab diatas.
2. Kemudian gantilah angkanya sesuai yang kamu kehendaki (Bebas).
3. Catat hasilnya dan masukkan hasil grafiknya dalam lembar tugas.
4. Buat Analisa dari hasil dan buat Kesimpulan.

TUGAS PENDAHULUAN

1. Apakah definisi dari MATLAB dan jelaskan sejarah MATLAB?


2. Sebutkan editor apa saja pada MATLAB yang ditampilkan pada screen ?
3. Apakah yang dimaksud commad window?
4. Apakah yang dimaksud workspace pada MATLAB?
5. Bagaimana mendeklarasikan Matriks dengan MATLAB?

BAB IV
Kesimpulan

Matlab adalah singkatan dari MATrix LABoratory, merupakan bahasa


pemrograman yang dikembangkan oleh The Mathwork Inc. Yang hadir dengan
fungsi dan karakteristik yang berbeda dengan bahasa pemrograman lain yang
sudah ada lebih dahulu seperti Delphi, Basic maupun C++. Matlab merupakan
bahasa pemrograman level tinggi yang dikhususkan untuk kebutuhan komputasi
teknis, visualisasi dan pemrograman seperti komputasi matematik, analisis data,
pengembangan algoritma, simulasi dan pemodelan dan grafik-grafik perhitungan

Dengan demikian matlab dapat disimpulkan sebagai berikut :

1. Software MATLAB mampu menyelesaikan persoalan komputasi teknis,


visualisasi dan pemrograman seperti komputasi matematik, analisis data,
pengembangan algoritma, simulasi dan pemodelan dan grafik-grafik
perhitungan dalam bentuk grafikdengan fungsi plot, grafik batang dengan
fungsi bar, grafik chirp, grafik tangga, grafik errorbar, grafik polar, grafik
stem, grafikmesh, dan lain-lain
2. MatLab memiliki sensitivitas yang tinggi dalam mengeksekusi input yang
dimasukan.
3. MATLAB mampu mensimulasikan suatu data masukan dengan tampilan 2
dimensi dan 3 dimensi.

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 46
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD

MODUL 1B

PENGGUNAAN MATLAB DALAM SISTEM KENDALI


A. KOMPETENSI
Mampu menggunakan MATLAB dalam aplikasi sistem kendali.

B. SUB KOMPETENSI
Setelah selesai praktik diharapkan mahasiswa dapat:
1. Mengkaji operasi dasar paket program MATLAB untuk aplikasi sistem
kendali.
2. Mengkaji operasi fungsi matematik untuk aplikasi sistem kendali.

C. KAJIAN SINGKAT :
Berdasarkan ragam fasilitas yang tersedia dalam MATLAB, saudara
diajak untuk mencoba fungsi-fungsi dasar dari MATLAB, khususnya yang
berkaitan dengan Dasar Sistem Kendali.

Bagian I : Matriks, Fungsi Alih, Pole & Zero dan Partial Fraction
Expansion

1. Matriks
Untuk menyelesaikan persamaan yang bersifat “kolosal”, penyelesaian yang
relatif “mudah” adalah dengan memanfaatkan matrik sebagai salah satu
solusinya.
Bentuk umum :
Ax=b
dimana : A = Matrik dengan ukuran m x n.
x = vektor kolom b = vektor kolom
a11 a12 a13 ... a1n x1 = b1
a21 a22 a23 ... a2n x2 = b2
a31 a32 a33 ... a3n x3 = b3
: : : : : :
am1 am2 am3 ... amn xm = bm

A x b
Untuk mencari p,q,r,x,y,dan z sesungguhnya yang paling penting adalah mencari
terlebih dahulu Invers dari Matriks A, baru kemudian mengalikannya dengan
vektor kolom b, atau dapat dicari sebagai berikut :
Ax=b
A A x = A-1 b
-1

Karena Matriks dikalikan dengan inversnya adalah matriks Identitas


(matriks satu satuan), maka :
x = A-1 b

2. Fungsi Alih
Fungsi alih dari suatu sistem linear di definisikan perbandingan dari
transformasi Laplace dari output variable ke input variable dengan semua kondisi

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 47
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD
awal diasumsikan nol. Fungsi alih dari suatu sistem atau elemen direpresentasikan
dengan hubungan deskripsi dinamik dari sistem. Fungsi alih hanya bisa
didefinisikan untuk linear, sistem stasioner (parameter konstan).
Sistem dinamik dengan persamaan differential yaitu

dimana y(t) adalah respons dan r(t) adalah fungi input. Jika kondisi awal adalah
semual nol maka fungsi alih adalah koefisien dari R(s) dalam persamaan berikut.
Fungsi alih adalah

Contoh fungsi alih dari sistem pegas, piston, massa adalah

3. Pole dan Zero


Pole adalah akar-akar persamaan polynomial dari persamaan fungsi alih dari
bagian penyebut denumerator. Zero adalah akar-akar persamaan polynomial dari
persamaan fungsi alih dari bagian pembilang (numerator).

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 48
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD

4. Partial Fraction Expansion


Pada ‘residue’ ditentukan dari partial fraction expansion dari perbandingan
dua polynomial. Hal ini berguna diaplikasikan pada bentuk fungsi alih.
Untuk polynomial b dan a adalah

Jika pada persamaan tidak ada multi root dimana r adalah vector kolom.

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 49
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD

D. ALAT/INSTRUMENT/APARATUS/BAHAN
1. Personal Computer (PC)
2. Software MATLAB

E. KESELAMATAN KERJA
1. Pastikan personal computer (PC) telah terinstall dengan baik
2. Jangan mengubah-ubah setting pada system operasi PC

F. LANGKAH KERJA :
1. Memulai matlab dengan klik icon MATLAB
kemudian New Script M-File, ketik program di script Editor seperti pada
Gambar 2.1.

Gambar 2.1. Tampilan New Script M-File

2. Aplikasi Matrik
Cari nilai p, q, r, x, y, dan z dari keenam persamaan di bawah ini
2p + 3q – 4r + 5x + 6y – 7z = 1 .................. (1)
3p – 4q + 5r + 6x – 7y + 2z = 2 .................. (2)
-4p + 5q + 6r – 7x + 2y + 3z = 3 .................. (3)
5p + 6q – 7r + 2x + 3y – 4z = 4 .................. (4)
6p – 7q + 2r + 3x – 4y + 5z = 5 .................. (5)
-7p + 2q + 3r – 4x + 5y + 6z = 6 .................. (6)
Caranya :
a. Kelompokkan matrik A, x, dan b dalam comand window, contoh
mengelompokkan matrik A
>> d=[+2 +3 -4 +5 +6 -7;+3 -4 +5 +6 -7 +2;-4 +5 +6 -7 +2 +3;+5 +6 -7
+2 +3 -4;+6 7 +2 +3 -4 +5;-7 +2 +3 -4 +5 +6]

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 50
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD
Kemudian tekan enter:
b. Lakukan proses inversi pada matriks A
c. Hasilnya kalikan dengan vektor kolom b.

3. Fungsi Alih
Ketikkan dalam Command Windows

%Transfer Function
>>num = [1 1]
>>den = [1 2 1]
>>G = tf ( num,den )
>>p=pole(G)
>>z=zero(G)

4. Pole dan Zero


Contoh membuat model Zero-Pole-Gain (ZPK)
Buatlah spesifik masing-masing tiga komponen dalam bentuk format
vector.

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 51
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD

Plot Pole dan zero dari Sistem continue

5. Partial Fraction Expansion


Menghitung konstanta expansi pecahan parsial (Partial Fraction Expansion),
pole dan direct term dari fungsi rasional.

%Partial Fraction Expansion


>>b = [-4 8];
>>a = [1 6 8];
>>[r,p,k] = residue(b,a)
>> r =
-12
8
>> p =
-4
-2
>>k =
[]
Given three input arguments (r, p, and k), residue converts
back to polynomial form:

>>[b2,a2] = residue(r,p,k)

b2 =
-4 8 fungsi alih (transfer function) Ketikkan dalam comand window
Diberikan
a2 = alih
Fungsi
1 = 6[6, -10,
>>b 8 2]
>>a = [1, -3, 2, 0]
>>sys = tf (b,a)
>>[r, p, k] = residue (b,a)
Tekan enter

Latihan
Mencari dua polynomial dan konstanta ekspansi pecahan parsial pada pole-
pole untuk transformasi

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 52
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD

Exercise 3:

Bagian II: Scripts, Functions & Flow Control in MATLAB

Tujuan: tujuan dari sesi ini mengenalkan penulisan skrip M-file, membuat
MATLAB function dan mengenalkan MATLAB flow control seperti ‘if-elseif-
end’, ‘for loops’ dan ‘while loops’.

Overview:
MATLAB is a powerful programming language as well as an interactive
computational environment. Files that contain code in the MATLAB language are
called M-files. You create M-files using a text editor, then use them as you would
any other MATLAB function or command. There are two kinds of M-files:
Scripts, which do not accept input arguments or return output arguments. They
operate on data in the workspace. MATLAB provides a full programming
language that enables you to write a series of MATLAB statements into a file and
then execute them with a single command. You write your program in an ordinary
text file, giving the file a name of ‘filename.m’. The term you use for ‘filename’
becomes the new command that MATLAB associates with the program. The file
extension of .m makes this a MATLAB M-file.
Functions, which can accept input arguments and return output arguments.
Internal variables are local to the function. If you're a new MATLAB
Programmer, just create the M-files that you want to try out in the current

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 53
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD
directory. As you develop more of your own M-files, you will want to organize
them into other directories and personal toolboxes that you can add to your
MATLAB search path.
If you duplicate function names, MATLAB executes the one that occurs first in
the search
path.

Scripts:
When you invoke a script, MATLAB simply executes the commands found in the
file. Scripts can operate on existing data in the workspace, or they can create new
data on which to operate. Although scripts do not return output arguments, any
variables that they create remain in the workspace, to be used in subsequent
computations. In addition, scripts can produce graphical output using functions
like plot. For example, create a file called ‘myprogram.m’ that contains these
MATLAB commands:

Typing the statement ‘myprogram’ at command prompt causes MATLAB to


execute the commands, creating fifty random numbers and plots the result in a
new window. After execution of the file is complete, the variable ‘r’ remains in
the workspace.

Functions:
Functions are M-files that can accept input arguments and return output
arguments. The names of the M-file and of the function should be the same.
Functions operate on variables within their own workspace, separate from the
workspace you access at the MATLAB command prompt. An example is
provided below:

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 54
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD

The first line of a function M-file starts with the keyword ‘function’. It gives the
function name and order of arguments. In this case, there is one input arguments
and one output argument. The next several lines, up to the first blank or
executable line, are comment lines that provide the help text. These lines are
printed when you type ‘help fact’. The first line of the help text is the H1 line,
which MATLAB displays when you use the ‘lookfor’ command or request help
on a directory. The rest of the file is the executable MATLAB code defining the
function.

The variable n & f introduced in the body of the function as well as the variables
on the first line are all local to the function; they are separate from any variables
in the MATLAB workspace. This example illustrates one aspect of MATLAB
functions that is not ordinarily found in other programming languages—a variable
number of arguments. Many M-files work this way. If no output argument is
supplied, the result is stored in ans. If the second input argument is not supplied,
the function computes a default value.

Flow Control:
Conditional Control – if, else, switch

This section covers those MATLAB functions that provide conditional program
control. if, else, and elseif. The if statement evaluates a logical expression and
executes a group of statements when the expression is true. The optional elseif
and else keywords provide for the execution of alternate groups of statements. An
end keyword, which matches the if, terminates the last group of statements. The
groups of statements are delineated by the four keywords—no braces or brackets
are involved as given below.

if <condition>
<statements>;
elseif <condition>
<statements>;
else
<statements>;
end

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 55
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD
It is important to understand how relational operators and if statements work with
matrices. When you want to check for equality between two variables, you might
use

if A == B, ...

This is valid MATLAB code, and does what you expect when A and B are
scalars. But when A and B are matrices, A == B does not test if they are equal, it
tests where they are equal; the result is another matrix of 0's and 1's showing
element-by-element equality. (In fact, if A and B are not the same size, then A ==
B is an error.)

The proper way to check for equality between two variables is to use the isequal
function:

if isequal(A, B), ...

isequal returns a scalar logical value of 1 (representing true) or 0 (false), instead of


a matrix, as the expression to be evaluated by the if function.
Using the A and B matrices from above, you get

Here is another example to emphasize this point. If A and B are scalars, the
following program will never reach the "unexpected situation". But for most pairs
of matrices, including

our magic squares with interchanged columns, none of the matrix conditions A >
B, A < B,
or A == B is true for all elements and so the else clause is executed:

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 56
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD
Several functions are helpful for reducing the results of matrix comparisons to
scalar conditions for use with if, including ‘isequal’, ‘isempty’, ‘all’, ‘any’.

Switch and Case:


The switch statement executes groups of statements based on the value of a
variable or expression. The keywords case and otherwise delineate the groups.
Only the first matching case is executed.
The syntax is as follows

switch <condition or expression>


case <condition>
<statements>;

case <condition>

otherwise
<statements>;
end

There must always be an end to match the switch. An example is shown below.

Unlike the C language switch statement, MATLAB switch does not fall through.
If the first case statement is true, the other case statements do not execute. So,
break statements are not required.

For, while, break and continue:


This section covers those MATLAB functions that provide control over program
loops.

for:
The ‘for’ loop, is used to repeat a group of statements for a fixed, predetermined
number of times. A matching ‘end’ delineates the statements. The syntax is as
follows:

for <index> = <starting number>:<step or increment>:<ending number>


<statements>;
End

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 57
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD

The semicolon terminating the inner statement suppresses repeated printing, and
the r after the loop displays the final result.

It is a good idea to indent the loops for readability, especially when they are
nested:

while:
The ‘while’ loop, repeats a group of statements indefinite number of times under
control of a logical condition. So a while loop executes atleast once before it
checks the condition to stop the execution of statements. A matching ‘end’
delineates the statements. The syntax of the ‘while’ loop is as follows:

while <condition>
<statements>;
end

Here is a complete program, illustrating while, if, else, and end, that uses interval
bisection to find a zero of a polynomial:

The result is a root of the polynomial x3 - 2x - 5, namely x = 2.0945. The cautions


involving matrix comparisons that are discussed in the section on the if statement
also apply to the while statement.

break:

The break statement lets you exit early from a ‘for’ loop or ‘while’ loop. In nested
loops, break exits from the innermost loop only. Above is an improvement on the
example from the previous section. Why is this use of break a good idea?

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 58
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD

continue:
The continue statement passes control to the next iteration of the for loop or while
loop in which it appears, skipping any remaining statements in the body of the
loop. The same holds true for continue statements in nested loops. That is,
execution continues at the beginning of the loop in which the continue statement
was encountered.

G. DISKUSI

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 59
Modul Praktikum Sistem Kendali - D10H5103
Program Studi Teknik Elektro
Dilarang memperbanyak sebagian atau seluruh isi dokumen tanpa ijin tertulis dari
Departemen Teknik Elektro Fakultas - FMIPA UNPAD

TUGAS PENDAHULUAN
1. Jelaskan apa yang dimaksud fungsi alih dan bagaimana mendeklarasikan pada
MATLAB?
2. Buatlah suatu Jaringan R,L,C (variasi jaringan dapat seperti dalam teori) dan
tentukan fungsi alih sistem jaringan.
3. Apakah yang dimaksud Partial Function Expansion sertakan contohnya?
4. Apakah yang dimaksud ‘function’ dalam MATLAB dan bagaimana
mendeklarasikannya?
5. Apakah yang dimaksud dengan pole, zero berikan contoh?

Laboratorium Elektroteknik, Tenaga Listrik, dan Teknologi Komunikasi Departemen Teknik Elektro UNPAD 60

Anda mungkin juga menyukai