Transcript
I. TUJUAN
Pada percobaan ini, Mahasiswa mampu
1. Mengoperasikan tool /fungsi yang disediakan Matlab.
2. Melakukan perhitungan matematis dalam bilangan riil dan kompleks pada Matlab.
3. Menggunakan fungsi sederhana pada Matlab.
II. DASAR TEORI
MATLAB (matrix laboratory)
tinggi level bahasa perograman semakin mudah cara menggunakannya) dengan kinerja
tinggi untuk komputasi masalah teknik. Matlab mengintegrasikan komputasi,
visualisasi, dan pemrograman dalam
sistem interaktif yangmenggunakan konsep array/matrik sebagai variabel elemennya
tanpa membutuhkan pendeklarasian array.
Matlab dikembangkan oleh Mathwork, yang pada awalnya dibuat untuk
memberikan kemudahan mengakses data matrik pada proyek LINPACK dan EISPACK.
Selanjutnya untuk komputasi numerik. Kemudian digunakan untuk pendidikan ilmiah
seperti, matematika, rekayasa/teknik dan analisis penelitan.
2.1. Angka dan Operasi Aritmatika
Operator komputasi mempunyai prioritas dengan urutan tertentu. Untuk
menentukan prioritas, digunakan tanda kurung ‘( )’. Adapun beberapa operator
komputasi dalam MATLAB adalah :
Operasi
Penambahan
Pengurangan
Perkalian
Pembagian
perpangkatan
2.1.1. Bilangan real
Dalam matematika,
bisa dituliskan dalam bentuk
real meliputi bilangan rasional
π dan . Bilangan rasional direpresentasikan dalam bentuk desimal berakhir,
sedangkan bilangan irasional memiliki representasi desimal ti
berulang. Bilangan riil juga dapat direpresentasikan sebagai salah satu titik dalam garis
bilangan
Bilangan riil dapat digambarkan sebagai titik
takhingga.
1
PERCOBAAN I
PENGENALAN MATLAB
Mahasiswa mampu :
Mengoperasikan tool /fungsi yang disediakan Matlab.
Melakukan perhitungan matematis dalam bilangan riil dan kompleks pada Matlab.
enggunakan fungsi sederhana pada Matlab.
matrix laboratory) adalah bahasa pemrograman level tinggi
tinggi level bahasa perograman semakin mudah cara menggunakannya) dengan kinerja
komputasi masalah teknik. Matlab mengintegrasikan komputasi,
rograman dalam sebuah lingkungan tunggal. Matlab memberikan
sistem interaktif yangmenggunakan konsep array/matrik sebagai variabel elemennya
tanpa membutuhkan pendeklarasian array.
Matlab dikembangkan oleh Mathwork, yang pada awalnya dibuat untuk
memberikan kemudahan mengakses data matrik pada proyek LINPACK dan EISPACK.
Selanjutnya untuk komputasi numerik. Kemudian digunakan untuk pendidikan ilmiah
seperti, matematika, rekayasa/teknik dan analisis penelitan.
Angka dan Operasi Aritmatika
komputasi mempunyai prioritas dengan urutan tertentu. Untuk
menentukan prioritas, digunakan tanda kurung ‘( )’. Adapun beberapa operator
komputasi dalam MATLAB adalah :
Operasi Simbol
Penambahan +
Pengurangan -
Perkalian *
Pembagian / atau \
perpangkatan ^
, bilangan riil atau bilangan real menyatakan bilangan yang
bisa dituliskan dalam bentuk desimal, seperti 2,4871773339… atau 3.25678. Bilangan
bilangan rasional, seperti 42 dan −23/129, dan bilangan irasional
. Bilangan rasional direpresentasikan dalam bentuk desimal berakhir,
sedangkan bilangan irasional memiliki representasi desimal tidak berakhir namun
berulang. Bilangan riil juga dapat direpresentasikan sebagai salah satu titik dalam garis
Bilangan riil dapat digambarkan sebagai titik-titik pada garis bilangan yang panjangnya
Melakukan perhitungan matematis dalam bilangan riil dan kompleks pada Matlab.
ahasa pemrograman level tinggi (semakin
tinggi level bahasa perograman semakin mudah cara menggunakannya) dengan kinerja
komputasi masalah teknik. Matlab mengintegrasikan komputasi,
sebuah lingkungan tunggal. Matlab memberikan
sistem interaktif yangmenggunakan konsep array/matrik sebagai variabel elemennya
Matlab dikembangkan oleh Mathwork, yang pada awalnya dibuat untuk
memberikan kemudahan mengakses data matrik pada proyek LINPACK dan EISPACK.
Selanjutnya untuk komputasi numerik. Kemudian digunakan untuk pendidikan ilmiah
komputasi mempunyai prioritas dengan urutan tertentu. Untuk
menentukan prioritas, digunakan tanda kurung ‘( )’. Adapun beberapa operator
menyatakan bilangan yang
, seperti 2,4871773339… atau 3.25678. Bilangan
bilangan irasional, seperti
. Bilangan rasional direpresentasikan dalam bentuk desimal berakhir,
dak berakhir namun
berulang. Bilangan riil juga dapat direpresentasikan sebagai salah satu titik dalam garis
yang panjangnya
2
2.1.2. Bilangan kompleks
Bilangan kompleks adalah bilangan yang terdiri dari bagian imaginer dan bagian
riil. Bagian imaginer ditandai dengan simbol imaginer “i“ atau ”j” . Operasi bilangan
kompleks juga menggunakan operator komputasi di atas. Bilangan kompleks selain
dapat dinyatakan dalam koordinat kartesian , dapat juga dinyatakan dalam koordinat
polar dan diagram fasor yang berupa magnitude dan sudut fase.
Beberapa fungsi dasar yang berhubungan dengan bilangan kompleks adalah:
Fungsi Keterangan
real Bagian riil dalam koordinat kartesian.
imag Bagian imaginer dalam koordinat kartesian.
abs Nilai absolute atau magnitude dalam koordinat polar.
angle Sudut fase dalam koordinat polar ( dalam satuan radian )
2.2. Fungsi Dasar Pemrograman Dalam MATLAB
2.2.1. Fungsi Matematika Dasar
Tabel Fungsi Matematika Dasar sebagai berikut :
Fungsi Keterangan
Abs Menghitung nilai absolute
Exp Memperoleh nilai dari e pangkat bilangan tertentu (e = 2.718282)
Log Menghitung logaritma natural (ln) suatu bilangan
Sqrt Menghitung akar pangkat 2 dari suatu bilangan
Ceil
Membulatkan bilangan ke bilangan bulat terdekat menuju plus tak
berhingga.
Fix Membulatkan bilangan ke bilangan bulat terdekat menuju nol.
Floor
Membulatkan bilangan ke bilangan bulat terdekat menuju minus tak
berhingga.
Log10 Menghitung logaritma suatu bilangan untuk dasar 10.
Rem Menghitung nilai remainder.
2.2.2. Fungsi Trigonometri
Fungsi trigonometri banyak digunakan terkait dengan sudut. Nilai perhitungan yang
dalam fungsi trigonometri sudut dalam radian.
Tabel Fungsi Trigonometri sebagai berikut :
Fungsi Keterangan
Sin Menghitung sinus suatu bilangan, dimana bilangan dalam radian.
Cos Menghitung cosinus suatu bilangan, dimana bilangan dalam radian.
Tan Menghitung tangen suatu bilangan, dimana bilangan dalam radian.
Acos
Menghitung arccosinus (invers cos) suatu bilangan yang menghasilkan sudut
dalam radian, dimana bilangan harus antara -1 dan 1.
Asin
Menghitung arcsinus suatu bilangan yang menghasilkan sudut dalam radian,
dimana bilangan harus antara -1 dan 1.
Atan Menghitung arctangensuatu bilangan yang menghasilkan sudut dalam radian.
3
2.3. Variabel Pada Matlab
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 menuliskan
variabel baru tanpa harus mendeklarasikannya terlebih dahulu pada command
window.
Penamaan variabel pada matlab bersifat caseSensitif karena itu perlu diperhatikan
penggunaan huruf besar dan kecil pada penamaan variabel. Apabila terdapat variabel
lama dengan nama yang sama maka matlab secara otomatis akan me-replace variabel
lama tersebut dengan variabel baru yang dibuat user.
Beberapa hal penting yang harus diperhatikan dalam penulisan bahasa pemrograman
(sintak) :
a. Penamaan variabel bersifat case sensitive, artinya matlab akan membedakan
adanya huruf besar dan kecil dalam penamaan (misal: lbr tidak sama dengan Lbr)
b. Panjang nama variabel tidak dapat melebihi 31 karakter.
c. Penamaan variabel harus selalu diawali dengan huruf, tidak boleh dengan
bilangan simbol dan lain-lain.
III. ALAT YANG DIPERLUKAN
1 unit PC yang dilengkapi dengan sistem operasi windows dan software Matlab.
IV. LANGKAH-LANGKAH PERCOBAAN
4.1. Memulai Matlab
Lihatlah dan perhatikan icon Matlab pada layar desktop, selanjutnya anda
doubleclick pada icon tersebut.
Gambar 1.1. Icon Matlab
Selanjutnya akan tampil window utama seperti berikut :
4
Penjelasan fungsi :
� Command window : sebagai penerima perintah dari pemakai untuk
menjalankan fungsi-fungsi yang disediakan oleh matlab.
(“ >> “) merupakan tanda prompt akan muncul pada saat mengetik
perintah atau fungsi di command window
� Workspace window : sebagai penuntun bagi pemakai dalam memilih
opsi dari fungsi toolbox yang ditawarkan oleh matlab.
� Command history : sebagai penyimpan perintah-perintah yang pernah
dikerjakan pada suatu workspace .
� Help : Membantu mencari keterangan seperti penggunaan fungsi dan
penggunaan syntax
� Matlab editor : untuk membuat skrip program matlab.
Contoh dan fungsi kode yang dapat diketik pada command windows :
>>what general : Menunjukkan instruksi-instruksi yang tersedia di direktori
general, salah satunya adalah instruksi clear.
>>help general : Menunjukkan instruksi-instruksi yang tersedia di direktori
general, dan fungsinya secara umum.
>>help clear : Menunjukkan penjelasan detail untuk instruksi clear.
(Fungsinya untuk apa, syntaxnya untuk apa, fungsi lain yang terkait apa)
>> help ops : Menunjukkan penulisan operator2 di dalam Matlab.
>>clc; clc digunakan untuk membersihkan layar, tetapi nilai variable yang
tersimpan dimemori tidak akan hilang sehingga dapat ditampilkan kembali
ke layar dengan memanggil nama variabelnya.
>>clear; clear digunakan untuk membersihkan layer sekaligus menghapus
variable dari memori sehingga kita tidak dapat menampilkan nilai variable
ke layer. (muncul pesan ??? Undefined function or variable ‘x’.)
5
4.2. Menentukan direktori tempak kerja
File yang anda buat bisa disimpan pada direktori Work yang ada di dalam
Matlab. Script file yang anda buat supaya lebih rapi bisa disimpan dan
buatkan folder baru dengan nama yang mudah anda ingat di dalam
direktori Work.
4.3. Memulai Perintah Sederhana
4.3.1. Membuat program matlab sederhana bisa dilakukan di command
window
Ketikan perintah kemudian tekan enter untuk mengakhiri
selanjutnya amati apa yang terjadi dan analisis hasilnya ?
a. Operasi matematika bilangan real
>> A = 18
>> B = 3
>> A+B
>> A-B
>> A*B
>> A/B
>> B\A
>> A^B
>> A+B*(A^B)/B
b. Operasi matematika bilangan kompleks >> y = 5+3i
>> real(y)
>> imag(y)
>> abs(y)
>> angle(y)
c. Fungsi dasar matematika
>> x = pi/2
>> a=0.01
>> acos(a)
>> asin(a)
>> atan(a)
>> ceil(x)
>> cos(x)
>> sin(x)
>> exp(x)
>> fix(x)
>> floor(x)
>> log(x)
d. Pembuatan variabel pada matlab >> varA = 1000
>> varB = [45 2 35 45]
6
>> var C = ‘Test Variabel‘
>> nama = = 'Sultan Syarif Kasim'
4.3.2. Membuat program yang lebih panjang dan kompleks bisa di Matlab
editor atau M File. Caranya : Click file -> pilih New -> pilih Blank M-file .
Ketikan perintah pada M File seperti pada 4.3.1. a, b, c dan d selanjutnya
amati apa yang terjadi dan analisis hasilnya ?
V. TUGAS
Buatlah program operasi matematika bilangan real, kompleks, Fungsi dasar
matematika dan variable pada matlab yang berbeda sesuai kreatifitas masing-
masing di command window dan M-File selain yang ada di langkah percobaan.
7
PERCOBAAN II
ARRAY DAN MATRIK
I. TUJUAN
Pada percobaan ini, Mahasiswa mampu :
1. Membuat program array dan matrik menggunakan fungsi pada Matlab.
2. Melakukan perhitungan matematis array dan matrik pada Matlab.
II. DASAR TEORI
2.1. Array
Array atau larik adalah bentuk penyimpanan data yang dibentuk dalam baris
atau kolom. Array dapat berupa array kosong dengan dimensi 0x0, hingga array
dengan n-dimensi. Dengan array, kita dapat membuat vector, matrik, menggunakan
subscript arrays, dan penggunaan khusus untuk iterasi. Sebuah matriks adalah sebuah
array dua dimensi dengan elemen dapat berupa riil maupun komplek.
2.1.1. Vektor Kolom
Pada vektor baris elemen dimasukkan dengan spasi atau koma antara elemen-
elemen dalam tanda kurung siku
2.1.2. Vektor Baris
Pada vektor kolom elemen yang dimasukkan dengan koma antara elemen-
elemen dalam tanda kurung siku
2.2. Matrik
Dalam matematika, matrik adalah kumpulan bilangan, simbol, atau ekspresi,
berbentuk persegi panjang yang disusun menurut baris dan kolom. Bilangan-bilangan
yang terdapat di suatu matriks disebut dengan elemen atau anggota matriks. Pada
matlab setiap data akan disimpan dalam bentuk matriks. Dalam membuat suatu data
matriks pada matlab, setiap isi data harus dimulai dari kurung siku ‘[‘ dan diakhiri
dengan kurung siku tutup ‘]’. Untuk membuat variabel dengan data yang terdiri
beberapa baris, gunakan tanda ‘titik koma’ (;) untuk memisahkan data tiap barisnya.
Matlab menyediakan beberapa fungsi yang dapat kita gunakan untuk menghasilkan
bentuk-bentuk matriks yang diinginkan. Fungsi-fungsi tersebut ditabelkan sebagai
berikut:
Fungsi Keterangan
zeros untuk membuat 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 distribusi normal
eye
untuk menghasilkan matriks identitas
2.2.1. Operasi dan Fungsi pada Matriks
Tabel Operasi dan fungsi pada matriks yang sering digunakan :
Fungsi
Det Menghasilkan determinan matriks
Size Menghasilkan ukura matriks
+ Menjumlahkan matriks
* Mengalikan matriks
.*
Mengalikan elemen dengan elemen, dengan ketentuan
memiliki ukuran yang sama
^ Memangkatkan matriks dengan suatu skalar
.^ Memangkatkan elemen per elemen matriks dengan
’ Transpose matriks
./
Membagi elemen per elemen dengan ketentuan memiliki
ukuran yang sama
\ Menghasilkan solusi AX = B
/ Menghasilkan solusi XA = B
Inv
Menghasilkan invers matriks dengan ketentuan
merupakan matriks bujur sangkar
2.3. Polinomial
Dalam matematika
adalah pernyataan matematika yang melibatkan ju
satu atau lebih variabel dengan koefisien. Sebuah polinomial dalam satu variabel
dengan koefisien konstan memiliki bentuk seperti berikut:
Pangkat tertinggi pada suatu polinomial menunjukkan
polinomial tersebut. Matlab menyediakan fungsi operasi standar dari polinom, seperti
akar poli-nomial, evaluasi, dan turunan. Sebagai tambahan, fungsi
diberikan untuk aplikasi lebih lanjut, seperti pencocokan kurva dan eks
parsial.
Tabel Fungsi yang digunakan pada Matlab sebagai berikut :
Fungsi
Conv
Deconv
Poly
Polyder
Polyfit
Polyval
Polyvalm
Residue
Roots
8
Operasi dan Fungsi pada Matriks
Tabel Operasi dan fungsi pada matriks yang sering digunakan :
Keterangan
Menghasilkan determinan matriks
Menghasilkan ukura matriks
Menjumlahkan matriks
Mengalikan matriks
Mengalikan elemen dengan elemen, dengan ketentuan
memiliki ukuran yang sama
Memangkatkan matriks dengan suatu skalar
Memangkatkan elemen per elemen matriks dengan skalar
Transpose matriks
Membagi elemen per elemen dengan ketentuan memiliki
ukuran yang sama
Menghasilkan solusi AX = B
Menghasilkan solusi XA = B
Menghasilkan invers matriks dengan ketentuan matriks
merupakan matriks bujur sangkar
matematika, polinomial atau suku banyak (juga ditulis suku
adalah pernyataan matematika yang melibatkan jumlahan perkalian pangkat dalam
satu atau lebih variabel dengan koefisien. Sebuah polinomial dalam satu variabel
dengan koefisien konstan memiliki bentuk seperti berikut:
Pangkat tertinggi pada suatu polinomial menunjukkan orde atau derajat dari
Matlab menyediakan fungsi operasi standar dari polinom, seperti
nomial, evaluasi, dan turunan. Sebagai tambahan, fungsi-fungsi berikut
diberikan untuk aplikasi lebih lanjut, seperti pencocokan kurva dan eks
Tabel Fungsi yang digunakan pada Matlab sebagai berikut :
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
Contoh
det(A)
size(A)
C = A + B
C = A * B
C = A .* B
C = A^ k
C = A .^ k
A’
C = A ./ B
C = A \ B
C = A / B
C = Inv(A)
suku banyak)
mlahan perkalian pangkat dalam
satu atau lebih variabel dengan koefisien. Sebuah polinomial dalam satu variabel
atau derajat dari
Matlab menyediakan fungsi operasi standar dari polinom, seperti
fungsi berikut
diberikan untuk aplikasi lebih lanjut, seperti pencocokan kurva dan ekspansi fraksi
9
2.4. Transformasi Laplace
Salah satu cara untuk menganalisa karakteristik dan gejala-gejala yang terjadi
pada sebuah sistem kontrol adalah menggunakan kaidah Transformasi Laplace.
Transformasi Laplace mengubah suatu fungsi dalam domain waktu, f(t), menjadi
fungsi dalam domain lain, yaitu domain kompleks, F(s) ). Secara matematis, bentuk
transformasi ini adalah sebagai berikut: ∫∞
−==0
)()]([)( dtetftfLsF st (2.1)
dimana s = σ + jω (2.2)
dimana σ (sigma) adalah bagian real, dan ω (omega) adalah bagian imaginer dari s dan
j = √-1. Pada umumnya, ω menyatakan suatu frekuensi.
Dari Persamaan 2.1 diatas, jika diinginkan mengubah kembali fungsi frekuensi,
F(s), ke fungsi waktu, f(t), maka diperlukan kebalikan dari Transformasi Laplace
(dikenal dengan istilah Invers Transformasi Laplace), yang dituliskan sebagai berikut:
f(t) = L-1
[ F(s) ] (2.3)
III. ALAT YANG DIPERLUKAN
1 unit PC yang dilengkapi dengan sistem operasi windows dan software Matlab.
IV. LANGKAH-LANGKAH PERCOBAAN
Ketikan perintah-perintah berikut di command window, amati hasilnya dan jelaskan
apa yang terjadi !
4.1. Array >> X=(0:0.1:1)*pi
>> X=linspace(0,pi,11)
>> M=logspace(0,2,11)
>> x=[2 2*pi sqrt(2) 2-3j]
Pengalamatan Array >> X = [0 2 4 6 8 10 12 14 16 18 20];
>> Y = [1 3 5 7 9 11 13 15 17 19 21];
>> X(7)
>> Y(4)
>> Y(10:-1:2)
>> X(2:6)
>> Y(1:2:8)
>> X(1:3:10)
>> Y^2
>> X.^2
>> Y./2
>> A=[1 2 3;4 5 6;7 8 9];
>> A(2,3)
>> A(1,:)
>> A(:,3)
10
Ukuran array >> A=[1 2 3 4;5 6 7 8]
>> s=size(A)
>> [r,c]=size(A)
>> r=size(A,1)
>> c=size(A,2)
>> length(A)
4.1.1. Vektor Kolom >> x = [6; 7 ; 8]
>> y=[2; 4; 5]
4.1.2. Vektor Baris >> v = [-2 sin(60) 4 6]
>> x =[2 3 5]
4.2. Matrik >> p=ones(3,4)
>> q=zeros(3,4)
>> r=eye(5,5)
>> s=rand(8,8)
4.2.1. Operasi dan Fungsi pada Matriks >> A = [2 6 -4; 9 -2 4; 2 8 -4];
>> b = [1; -2; 3];
>> C=[1 3 2;3 -4 5;1 -1 -2]
>> x = inv(A) * b
>> y = A\b
Buatlah perintahnya untuk soal berikut
(a) B–1
(b) BTA
T
(c) A2 + B
2 – AB
(d) det AB
4.3. Polinomial Diketahui polynomial ‘s
3 +3 s
2 +4', diberikan nama variabel p. Polynomial p
ditunjukan dalam bentuk vector [ 1 3 0 4] di matlab.
Ketikan perintah-perintah berikut, amati hasilnya dan berikan penjelasan :
>> p=[1 3 2 6]
>> r=roots(p)
>> p=poly(r)
>> polyval(p,sqrt(2))
>> p1=[1 3 4];
>> p2=[1 2];
>> p3=conv(p1,p2)
>> [q,r]=deconv(p1,p2)
11
>> N=[10 40];
>> D=[1 4 3 0];
>> [A,p,K]=residue(N,D)
4.4. Transformasi Laplace >> syms t x
>> f = – 5*t*exp(– 6*t);
>> laplace(f, x)
>> syms t x
>> f = 8*exp(– 2*t)*cos(t – (pi/4));
>> laplace(f, x)
>> laplace(f)
>> pretty(laplace(f))
>> syms s
>> f = s/(s*((s + 2)*(s + 6)));
>> ilaplace(f)
>> syms s
>> G = (s^2 + 9*s +7)*(s + 7)/[(s + 2)*(s + 3)*(s^2 + 12*s + 150)]
>> pretty(G)
>> g = ilaplace(G);
>> pretty(g)
V. TUGAS
Jelaskan fungsi-fungsi yang digunakan pada langkah percobaan ?
12
PERCOBAAN III
VISUALISASI DATA DENGAN MATLAB
I. TUJUAN
Pada percobaan ini, Mahasiswa mampu :
1. Membuat program dengan menggunakan fungsi visualisasi data yang disediakan
Matlab.
II. DASAR TEORI
Pemrograman data numerik yang telah kita tuliskan dapat divisualisasikan dalam
bentuk grafik dapat memudahkan analisis dan sulit untuk diperiksa hanya dengan
mengamati angka – angka yang ditampilkan.
Fungsi-fungsi yang digunakan :
• Plot
• sub plot
• Title
• Xlabel
• Ylabel
• Set
• Grid on, grid off
• Hold on
• Hold off
• Step
• rlocuss
2.1. Visualisasi Data 2D
Visualisasi Data 2D adalah menempatkan satu atau lebih titik data pada media bidang
kartesian maupun polar
Fungsi yang digunakan :
• Bar : menampilkan data dalam grafik batang
• Stem : menampilkan data dalam grafik stem
• Stairs : menampilkan dalam grafik tangga.
2.2. Visualisasi data 3D
Visualisasi Data 3D adalah menempatkan satu atau lebih titik data pada media ruang.
Berguna untuk bidang pemodelan data ruang (x y z) berupa data ketinggian,
temperatur dan kecepatan.
Fungsi yang digunakan :
– Plot 3 (x, y, z);
– Mesh : menampilkan data dalam bentuk permukaan 3D
– Surf : menampilkan data dalam bentuk permukaan 3D dan grid diisi
dengan warna tertentu sesuai bobot nilai.
13
– surfl : sepert surf bedanya pada pewarnaan berdasarkan teknik
pencahayaan
III. ALAT YANG DIPERLUKAN
1 unit PC yang dilengkapi dengan sistem operasi windows dan software Matlab.
IV. LANGKAH-LANGKAH PERCOBAAN
Buatlah program di Matlab editor atau M File. Caranya : Click file -> pilih New -> pilih Blank
M-file . Selanjutnya ketik program berikut :
1. Menampilkan visiualisasi Data 2 D
a. Menampilkan satu grafik dalam satu jendela
Program satu :
>> x = [0 : 0.1 : 15];
>> w = 15;
>> y = exp(– 0.7*x).*sin(w*x);
>> plot(x, y)
>> title(‘y(x) = e^-^0^.^7^x sin\omega x’)
>> xlabel(‘x’)
>> ylabel(‘y’)
Program 2 :
num=[25];
den=[1 6 25];
t=0:0.02:2;
c=step(num,den,t);
plot(t,c)
Xlabel(‘t-det’)
Ylabel(‘c(t)’)
Grid
Title(‘unit-step response of H(s)=25/s^2+6s+25’)
b. 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-’)
>> grid on
>>xlabel(‘t’),ylabel(‘Amplitude’)
>> title(‘ Grafik x = Sin(t)’)
>> subplot(2,1,2)
>> plot(t,y,’bo’)
>> grid on
>> xlabel(‘t’),ylabel(‘Amplitude’)
>> grid on
14
>> title(‘Grafik y = sin(t+30)’)
>> hold off
2. Menampilkan visiualisasi Data 3 D
a. Program 1
% silinder z =[0 : 0.2 : 1]’;
r = sin(5*pi*z)+3; cylinder(r)
b. Program 2 % Line plots
t = [0:0.1:6*pi];
x = sqrt(t).*sin(3*t); y = sqrt(t).*cos(3*t);
z = 0.8*t;
plot3(x, y, z, ‘k’, ‘linewidth’, 1) grid on
xlabel (‘x’); ylabel (‘y’) ; zlabel (‘z’)
V. TUGAS Buatlah program untuk menampilkan visiualisasi Data 2 D dan 3 D menggunakan 3 fungsi
selain yang telah dicobakan dan berikan penjelasan fungsi yang digunakan?
15
PERCOBAAN IV
APLIKASI GRAPHICAL USER INTERFACE (GUI) UNTUK PENGOLAHAN
CITRA
I. TUJUAN
Pada percobaan ini, Mahasiswa mampu :
1. Menggunakan tool pada GUI Matlab.
2. Membuat desain dan program aplikasi pengolahan citra yaitu menampilkan citra
dan histogram.
II. DASAR TEORI
Graphical User Interface (GUI) merupakan program aplikasi berorientasi visual
yang dibangun dengan obyek grafis sebagai pengganti perintah text untuk pemakai
berinteraksi. GUI pada MATLAB disebut juga sebagai GUIDE (Graphical User Interface
Builder). GUIDE digunakan untuk aplikasi-aplikasi berorientasi sains dan teknologi,
serta dapat untuk menyelesaikan suatu penelitian (research). Contoh aplikasinya untuk
pengolahan citra.
Komponen-komponen GUI sebagai berikut:
Penjelasan untuk gambar diatas :
Simbol Komponen Fungsi
Pointer Pointer merupakan komponen yang digunakan untuk
memilih dan memindahkan komponen yang lain.
Push Button Push Button merupakan tombol yang jika diklik akan
menghasilkan suatu tindakan.
Slider Slider menerima masukan berupa angka pada suatu
range tertentu di mana pengguna menggeser control
pada slider.
Radio Button Radio Button merupakan control yang digunakan untuk
memilih satu pilihan dari beberapa pilihan yang
ditampilkan.
16
Check box Check box merupakan kontrol yang digunakan untuk
memilih satu atau lebih pilihan dari beberapa pilihan
yang ditampilkan.
Edit text Edit text merupakan kontrol untuk meng-input-kan
atau memodifikasi teks.
Static text Static text merupakan kontrol untuk membuat teks
label.
Pop up menu Pop up menu merupakan kontrol yang digunakan
untuk membuka tampilan daftar pilihan yang telah
didefinisikan dengan mengklik tanda panah yang
terdapat pada pop up menu.
List box List box merupakan kontrol yang digunakan untuk
menampilkan semua daftar item. Kemudian, pengguna
memilih satu di antara item-item yang ada.
Toggle button Toggle button hampir sama dengan push button,
hanya jika push button diklik, tombol akan kembali ke
posisi semula. Sebaliknya, jika toggle button diklik,
tombol tidak akan kembali ke posisi semula kecuali
diklik kembali.
Axes Axes digunakan untuk menampilkan grafik atau
gambar.
Panel Panel merupakan kotak yang digunakan untuk
menandai atau mengemlompokkan daerah tertentu
pada figure.
Button group Button group hampir sama dengan panel, tetapi button
group lebih digunakan untuk mengelompokkan radio
button dan toggle button.
Aplikasi pengolahan citra untuk percobaan ini yaitu menampilkan citra dan histogram.
Citra (image) sebagai salah satu komponen multimedia memegang peranan sangat
penting sebagai bentuk informasi visual. Citra mempunyai karakteristik yang tidak
dimiliki oleh data teks, yaitu citra kaya dengan informasi. Citra merupakan gambar
pada bidang dua dimensi yang dihasilkan darigambar analog dua dimensi yang
kontinyu menjadi gambar diskrit melalui proses digitasi. Secara harafiah, citra yaitu
gambar pada bidang dua dimensi. Ditinjau dari sudut pandang matematis, citra
merupakan fungsi menerus (continue) dari intensitas cahaya pada bidang dua dimensi.
Pada pengolahan citra digital, histogram memberikan informasi cukup penting tentang
keberadaan pixel citra, apakah citra cenderung kearah gelap atau ke arah terang. Dari
histogram pula, kita dapat mengetahui rata-rata (mean) pixel penyusun citra.
III. ALAT YANG DIPERLUKAN
1 unit PC yang dilengkapi dengan sistem operasi windows dan software Matlab.
17
IV. LANGKAH-LANGKAH PERCOBAAN
1. Ketikan pada command window : >> guide
2. Pilih Blank GUI (Default)
3. Selanjutnya akan tampil layar untuk mendesain :
18
4. Selanjutnya desain seperti ini :
Tambahkan komponen pushbutton untuk buka file dan tutup.
5. Mengatur Layout Komponen
Setelah kita selesai mendesain figure, aturlah masing-masing komponen menggunakan
property inspector.
Komponen Property Inspector
Font Size Font Weight String Tag
Static Text 1 14 Bold Contoh Aplikasi
Citra Histogram
text 1
Static Text 2 12 Normal
(default)
Citra Asli text2
Static Text 3 12 Normal
(default)
Histogram text3
Static Text 4 12 Normal
(default)
Nama File text4
Static Text 5 12 Normal
(default)
Ukuran text5
Static Text 6 12 Normal
(default)
X text6
Edit Text 1 12 Normal
(default)
Kosongkan edit1
Edit Text2 12 Normal
(default)
Kosongkan edit2
19
Edit Text3 12 Normal
(default)
Kosongkan edit3
Axes 1 axes1
Axes 2 axes2
Pushbutton 1 12 Bold Buka File buka
Pushbutton 2 12 Bold Tutup Aplikasi tutup
6. Menyimpan Figure
Setelah selesai mendesain figure, langkah selanjutnya adalah menyimpan figure, beri
nama citrahist.fig, secara otomatis kita akan dibuatkan kerangka m-file dengan nama
yang sama
7. Memprogram melalu M-file
Tambahkan bebrapa program kode pada rutin callback yang diperlukan, antara lain:
� Di bawah function buka_callback, tambahkan program menjadi berikut :
% — Executes on button press in pushbutton1.
function pushbutton1_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton1 (see GCBO)
% eventdata reserved – to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
[nama_file1, nama_path1]=uigetfile( …
{‘*.bmp;,*.jpg’,'File Citra(*.bmp,*.jpg)’;
‘*.bmp’,'File Bitmap(*.bmp)’;…
‘*.jpg’,'File JPEG(*.jpg)’;
‘*.*’,'Semua File(*.*)’},…
‘Buka File Citra Host/Asli’);
if ~isequal (nama_file1, 0)
handles.data1=imread(fullfile(nama_path1,nama_file1));
guidata(hObject,handles);
handles.current_data1=handles.data1;
axes(handles.axes1);
imshow(handles.current_data1);
axes(handles.axes2);
imhist(handles.current_data1);
else
return;
end
set(handles.text2,’String’,nama_file1);
set(handles.text5,’String’,size(handle.data1,1));
set(handles.text6,’String’,size(handle.data1,2));
20
� dibawah function tutup _callback, tambahkan program menjadi berikut :
% — Executes on button press in pushbutton2.
function pushbutton2_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton2 (see GCBO)
% eventdata reserved – to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
selection=questdlg(['Keluar ' get(handles.figure1,'Name')''],…
['Keluar ' get(handles.figure1,'Name')''],…
‘Ya’,'Tidak’,'Ya’);
if strcmp(selection,’Tidak’)
return;
end
delete(handles.figure1)
8. Terakhir jalankan atau run programnya.
V. TUGAS
Buatlah desain menggunakan fungsi grayscale, imrotate dan komponen gui
sesuai kreatifitas masing –masing.
21
PERCOBAAN V
APLIKASI GUI UNTUK SISTEM KONTROL
I. TUJUAN
Pada percobaan ini, Mahasiswa mampu :
1. Menggunakan tool pada GUI Matlab.
2. Membuat desain dan program aplikasi sistem kontrol.
II. DASAR TEORI
Sistem Kontrol adalah proses pengaturan atau pengendalian terhadap satu
atau beberapa besaran (variabel atau parameter) sehingga berada pada suatu harga
atau range tertentu. Contoh variabel atau parameter fisik, adalah: tekanan (pressure),
aliran (flow), suhu (temperature), ketinggian (level), pH, kepadatan (viscosity),
kecepatan (velocity), dan lain-lain. Perangkat lunak Matlab digunakan untuk
mempermudah proses pembelajaran Sistem Kontrol. Perangkat-perangkat tersebut
ada yang sudah menjadi perangkat lunak aplikasi, sehingga pengguna hanya perlu
memasukkan simbol-simbol tertentu untuk dirangkai menjadi sebuah sistem kontrol,
seperti GUI dan SIMULINK bertujuan untuk menganalisa karakter dan performansi
sistem kontrol tersebut. Aplikasi pada percobaan ini adalah penampilan respon waktu
sistem kontrol, yaitu GUI yang mampu mengambil data sistem, berupa fungsi alih
sistem (Pembilang, Penyebut dan Sensor) serta penguat sistem (Kp) dan menampilkan
respon waktunya.
III. ALAT YANG DIPERLUKAN
1 unit PC yang dilengkapi dengan sistem operasi windows dan software Matlab.
IV. LANGKAH-LANGKAH PERCOBAAN
1. Ketikan pada command window : >> guide
2. Pilih Blank GUI (Default)
3. Selanjutnya akan tampil layar untuk mendesain dan buatlah seperti :
22
4. Mengatur Layout Komponen
Setelah kita selesai mendesain figure, aturlah masing-masing komponen menggunakan
property inspector.
Simbol Komponen Fungsi
Push Button Push Button merupakan tombol yang jika diklik akan
menghasilkan suatu tindakan.
Slider Slider menerima masukan berupa angka pada suatu
range tertentu di mana pengguna menggeser control
pada slider.
Edit text Edit text merupakan kontrol untuk meng-input-kan
atau memodifikasi teks.
Static text Static text merupakan kontrol untuk membuat teks
label.
Axes Axes digunakan untuk menampilkan grafik atau
gambar.
Panel Panel merupakan kotak yang digunakan untuk
menandai atau mengemlompokkan daerah tertentu
pada figure.
23
5. Menyimpan Figure
Setelah selesai mendesain figure, langkah selanjutnya adalah menyimpan figure, beri
nama kontrol.fig, secara otomatis kita akan dibuatkan kerangka m-file dengan nama
yang sama
6. Memprogram melalu M-file
Tambahkan bebrapa program kode pada rutin callback yang diperlukan, antara lain:
� % --- Executes on button press in pushbutton1. function pushbutton1_Callback(hObject, eventdata, handles) % hObject handle to pushbutton1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) %Menghapus grafik sebelumnya hold off %Pengambilan harga value pada slider1: Kp k = get(handles.slider1,'Value'); %Pengaturan Sistem Kontrol: Fungsi Alih, Sensor dan Fungsi Alih Tertutup num1 = str2num(get(handles.edit1,'String')); num = conv(num1,k); den = str2num(get(handles.edit2,'String')); h = str2num(get(handles.edit3,'String')); system = feedback(tf(num,den),h); %Penghitungan Respon Waktu: Step [x,y] = step(system); %Penampilan Hasil Penghitungan pada Axes plot(y,x);
� % --- Executes on button press in pushbutton2. function pushbutton2_Callback(hObject, eventdata, handles) % hObject handle to pushbutton2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) %Penghapusan Nilai sebelumnya set(handles.edit1,'String',''); set(handles.edit2,'String',''); set(handles.edit3,'String',''); set(handles.text6,'String','Konstanta (Kp)=1');
� % --- Executes on slider movement. function slider1_Callback(hObject, eventdata, handles) % hObject handle to slider1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'Value') returns position of slider
24
% get(hObject,'Min') and get(hObject,'Max') to determine range of slider %Pengambilan harga value pada slider1 k = get(handles.slider1,'Value'); %Pengaturan data string untuk ditampilkan pada text7 str = sprintf('Konstanta (Kp) = %3.2f',k); set(handles.text6,'String',str); % --- Executes during object creation, after setting all properties. function slider1_CreateFcn(hObject, eventdata, handles) % hObject handle to slider1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: slider controls usually have a light gray background. if isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor',[.9 .9 .9]); end
� % --- Executes on button press in pushbutton3.
function pushbutton3_Callback(hObject, eventdata, handles) % hObject handle to pushbutton3 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) close;
7. Terakhir jalankan atau run programnya.
V. TUGAS
Buatlah program GUI untuk menjalankan perintah untuk menampilkan root locus
fungsi matlab yaitu rlocus ?
25
PERCOBAAN VI
SIMULINK UNTUK SIMULASI SISTEM KONTROL
I. TUJUAN
Pada percobaan ini, Mahasiswa mampu :
1. Menggunakan tool pada simulink Matlab.
2. Membuat model dan simulasi untuk sistem kontrol.
II. DASAR TEORI
Pendekatan simulasi diawali dengan pembangunan model sistem nyata. Model
tersebut harus dapat menunjukkan bagaimana berbagai komponen dalam sistem
saling berinteraksi sehingga benar-benar menggambarkan perilaku sistem. Setelah
model dibuat maka model tersebut ditransformasikan ke dalam program komputer.
Penerapan simulasi dalam program komputer disebut sebagai Simulink. Simulink
adalah salah satu bagian dari MatLab (Matriks Laboratory) Program.
Simulink adalah sebuah kumpulan aplikasi dalam MatLab untuk melakukan
modeling, simulasi, dan untuk melakukan analisis dinamik pada suatu system. Dengan
simulink kita dimudahkan untuk membuat suatu simulasi secara lebih interaktif. Tiruan
sistem diharapkan mempunyai perilaku yang sangat mirip dengan sistem fisik. Jika
digunakan dengan benar, simulasi akan membantu proses analisis dan desain sistem.
supaya lebih paham, berikut ini salah satu contoh dari penggunaan Simulink. Pada
percobaan ini dimisalkan sistem kontrol untuk memvisualisasikan step respon
merupakan salah satu fungsi dari simulink, dimana kita me-generate suatu respon lalu
melihatnya dengan menggunakan scope.
III. ALAT YANG DIPERLUKAN
1 unit PC yang dilengkapi dengan sistem operasi windows dan software Matlab.
IV. LANGKAH-LANGKAH PERCOBAAN
1. Ketikkan simulink pada command window atau arahkan kursor ke ikon simulink
seperti gambar dibawah ini :
26
2. Selanjutnya akan tampil seperti ini :
3. Kemudian drag komponen-komponen yang dibutuhkan dari Simulink Library
Browser (SLB). Biasanya Komponen yang digunakan sistem kontrol terdapat pada
folder continous, math operator, sink, source dan signal routing, contohnya seperti
gambar dibawah ini :
4. Arahkan kursor dan klik ikon kertas putih yang berada dibawah menu file atau ketik
file pada toolbar kemudian pilih menu new model, sehingga terlihat lembaran
27
kosong untuk membuat program dan model seperti terlihat pada gambar di
bawah:
5. Selanjutnya membuat model dasar pengontrolan, maka aksi kontrol Proporsional
didapatkan dengan penambahan gain/penguatan sebesar konstanta Proporsional
(Kp) sehingga persamaan menjadi : ����
����� �
��
� ��� � � ���
Dengan menambahkan sebuah konstanta Kp (Proposional) sebesar 300, maka
model simulink dapat digambarkan sebagai berikut :
• Klik dan drag ikon yang dibutuhkan selanjutnya letakkan ke layar model.
• Double Klik blok Step. Step time diubah nilainya menjadi 0.
• Double Klik blok Gain. ketikan parameter gain 300.
• Double Klik blok Transfer Fcn. Ketikan numerator (num) = [ 1 ] dan
denumerator (denum) = [1 5 30]
• klik simulation � start atau ctrl t untuk melihat hasilnya double klik scoupe
untuk mengamati grafik keluaran.
• Supaya grafik keluaran skala nilainya berubah secara otomatis dan tampilan
grafiknya dapat dilihat dengan baik. Klik gambar Pada toolbar tampilan
grafik.
28
V. TUGAS
Buatlah simulasi untuk model sistem kontrol Proporsional Integral dan derivative
(PID) dengan persamaan alih fungsi :
����
�����
��� ��� ��
�� ��� ���� � � ���� ��
Apabila dalam sistem diterapkan konstanta Kp = 350, Ki=300, Kd =50 dan tampilkan
grafik keluarannya dan berikan penjelasan ?
top related