pen gen alan matlab

25
Laboratorium Elektronika Dan Instrumentasi - ITB MODUL 1 PENGENALAN MATLAB I. Pendahuluan Matlab singkatan dari Matrix Laboratory. Matlab merupakan bahasa pemrogaman yang dikembangkan oleh The Mathwork .Inc. Bahasa pemograman ini banyak digunakan untuk perhitungan numerik keteknikan, komputasi simbolik, visualisasi grafis, analisis data matematis, statistika, simulasi pemodelan, dan desain GUI (graphical user interface). Pada praktikum Sistem Instrumentasi ini matlab hanya digunakan untuk membantu menyelesaikan permasalahan yang berkaitan dengan bidang instrumentasi elektronika walaupun Matlab merupakan alat yang sangat ampuh untuk berbagai macam keperluan scientific ataupun engineering lainnya. Dalam bidang instrumentasi, matlab digunakan untuk menyelesaikan berbagai macam persoalan, seperti simulasi sistem kontrol, pengolahan sinyal digital, pengolahan citra (image processing), wavelet, fuzzy logic, neural network, cdma dan sistem komunikasi, dan lain sebagainya. Pada modul ini hanya akan dibahas mengenai hal-hal yang berkaitan dengan pemecahan masalah-masalah matematik, visual grafis, kontrol dan statistik. 1

Upload: wferry27

Post on 19-Jun-2015

918 views

Category:

Documents


8 download

TRANSCRIPT

Page 1: Pen Gen Alan Matlab

Laboratorium Elektronika Dan Instrumentasi - ITB

MODUL 1

PENGENALAN MATLAB

I. Pendahuluan

Matlab singkatan dari Matrix Laboratory. Matlab merupakan bahasa pemrogaman

yang dikembangkan oleh The Mathwork .Inc. Bahasa pemograman ini banyak digunakan

untuk perhitungan numerik keteknikan, komputasi simbolik, visualisasi grafis, analisis data

matematis, statistika, simulasi pemodelan, dan desain GUI (graphical user interface). Pada

praktikum Sistem Instrumentasi ini matlab hanya digunakan untuk membantu

menyelesaikan permasalahan yang berkaitan dengan bidang instrumentasi elektronika

walaupun Matlab merupakan alat yang sangat ampuh untuk berbagai macam keperluan

scientific ataupun engineering lainnya.

Dalam bidang instrumentasi, matlab digunakan untuk menyelesaikan berbagai

macam persoalan, seperti simulasi sistem kontrol, pengolahan sinyal digital, pengolahan

citra (image processing), wavelet, fuzzy logic, neural network, cdma dan sistem

komunikasi, dan lain sebagainya. Pada modul ini hanya akan dibahas mengenai hal-hal

yang berkaitan dengan pemecahan masalah-masalah matematik, visual grafis, kontrol dan

statistik.

1

Page 2: Pen Gen Alan Matlab

Laboratorium Elektronika Dan Instrumentasi - ITB

1.1 Memulai Matlab

Pada saat anda membuka matlab maka akan muncul tampilan seperti pada gambar

berikut :

Work Space

Command Window

Command History

Gambar 1 Tampilan matlab 6.5

Terlihat terdapat 3 window utama yaitu : Work Place, Command Window dan

Command History. Work Space adalah jendela yang berfungsi untuk menyimpan variabel-

variabel dan nilai-nilai yang anda buat. Command window adalah jendela untuk

menuliskan instruksi-instruksi untuk matlab. Pada bagian sebelah kiri pada window

command terdapat tanda berikut : >> , tanda tersebut merupakan penanda instruksi ,

artinya instruksi dituliskan setelah tanda tersebut. Sedangkan solusi yang ditampilkan tidak

disertakan tanda tersebut, artinya tanda >> merupakan pembeda anatara instruksi dengan

solusi. Pada command window proses eksekusi dilakukan dengan menekan enter, artinya

setelah menuliskan instruksi maka kita harus menekan enter untuk menuju pada solusi atau

penulisan instruksi yang baru. Untuk lebih jelasnya perhatikan cuplikan proses menghitung

pada command windows sbb :

>> gl = cos (3*pi / 4) ; merupakan instruksi yang diberikan pada matlab

gl = -0.7071 ; merupakan solusi/hasil yang diberikan oleh matlab

2

Page 3: Pen Gen Alan Matlab

Laboratorium Elektronika Dan Instrumentasi - ITB

1.2 Berbagai Karakter Spesial

Tanda % merupakan penanda komentar. Keterangan setelah tanda tersebut akan

diabaikan dalam proses perhitungan. Misalnya:

>> y = 2: 1: 5 %y = [2 3 4 5 ]

y = 2.00 3.00 4.00 5.00

Tanda ; merupakan perintah pembatas yang tidak ditampilkan di jendela kerja,

merupakan pemisah kolom dan baris dalam matriks.

Contoh:

Diberikan suatu Matriks sbb:

A=⎥⎦

⎤⎢⎣

⎡654321

Untuk merepresentasikan bentuk tersebut terlebih dahulu harus dilakukan penulisan

instruksi pada command window sbb :

>> A = [1 2 3; 4 5 6]

Setelah intruksi dieksekusi /menekan enter maka pada command window akan ditampilkan

bentuk matriks sbb :

A = 1 2 3

4 5 6

1.2.1 Tanda ( : ) merupakan pembatas jangkauan, pada command window,

Perhatikan contoh berikut :

>> B = [0: 3: 9]

B = 0 3.00 6.00 9.00

Keterangan : Matriks baris akan dimulai dari angka 0 [0: 3: 9] kemudian

ditambahakn 3 [0: 3: 9] dan berhenti pada angka 9 [0: 3: 9].

1.2.2 Tanda ( ’ )merupakan transpose matriks, misal :

>> A = [1 2 3; 4 5 6]

A = 1.00 2.00 3.00

4.00 5.00 6.00

>> A = A’

A = 1.00 4.00

2.00 5.00

3.00 6.00

3

Page 4: Pen Gen Alan Matlab

Laboratorium Elektronika Dan Instrumentasi - ITB

Berikut ini adalah daftar operasi dasar aritmatika di matlab:

Operasi Simbol

Penambahan +

Pengurangan -

Perkalian *

Pembagian / dan \

Perpangkatan ^

Dalam matlab tersedia file-file bantuan (help file) yang dapat anda gunakan jika

diperlukan. Caranya, dengan mengetikkan “help” pada command window atau dengan

mengklik menu Help pada daftar menu dan anda dapat mencari help file setiapkali anda

membutuhkan penjelasan tambahan.

1.3 M-File

File-file yang mengandung perintah-perintah disebut M-File. Ada dua jenis M-File

yaitu script file dan function file. Script File tidak menggunakan argumen input atau

mengembalikan argumen output. Function file dapat menggunakan argumen input atau

mengembalikan argumen output. Untuk membuka m-file klik menu File, kemudian pilih

New dan klik M-File akan tampil matlab Editor/Debugger. Di m-file ini anda dapat

mengetikkan kode, mengubah dan lain sebagainya. Selesai mengetik klik menu File dalam

layar Matlab editor/debugger dan pilih save as... pilih atau tuliskan nama file anda,

misalnya: firstgraph.m dan klik pada tombol Save. Pastikan File anda tersimpan dalam

direktori yang ada dalam jalur pencarian matlab.

4

Page 5: Pen Gen Alan Matlab

Laboratorium Elektronika Dan Instrumentasi - ITB

Gambar 2 Tampilan M-File

II. Pemecahan persoalan matematik dengan Matlab

2.1 Pendahuluan

Pada dasarnya untuk memanfaatkan matlab sebagai sebuah tools pemecah masalah

matematik maka kita harus merepresentasikan masalah tersebut kedalam bahasa matlab.

Kemudian gunakan command yang berkaitan dengan masalah yang dihadapi untuk

mencari solusi dari permasalahan yang dimaksud. Command-command untuk

penanganan masalah matematika umum sudah built–in dalam matlab, artinya kita tidak

perlu repot membuat program-program tertentu untuk membuat suatu fungsi tertentu.

2.2 Matrik

Untuk menangani masalah-masalah matrik, langkah awal yang harus kita lakukan

adalah merepresentasikan bentuk matrik yang dimaksud kedalam bentuk tertentu yang

dipahami oleh matlab. Coba tinjau kembali pada bab 1.2 mengenai representasi matrik

pada matlab.

CONTOH :

Kepada anda diberikan matrik a yang dinyatakan sebagai berikut : >> a = [ 1 2 3 4 ; 4 5 6 7 ; 7 8 9 10 ;5 6 7 8 ]

a =

1 2 3 4

4 5 6 7

7 8 9 10

5 6 7 8

Untuk mengambil nilai dari diagonal utama matrik gunakan command diag sbb : >> diag(a)

ans =

1

5

9

8

Untuk melakukan penjumlahan matrik dalam hal ini adalah penjumlahan dengan

matrik transposenya, dapat dilakukan menurut langkah berikut : >> a + a'

5

Page 6: Pen Gen Alan Matlab

Laboratorium Elektronika Dan Instrumentasi - ITB

ans =

2 6 10 9 6 10 14 13 10 14 18 17 9 13 17 16

Untuk mencari determinannya gunakan command det sbb : >> det(a) ans = 0

Note : Apabila determinan bernilai 0 maka matrik tersebut merupakan matrik singular !

Kepada anda diberikan suatu matrik y yang dinyatakan sbb : >> y = [ 1 2 3; 4 5 6;7 5 4]

y =

1 2 3 4 5 6 7 5 4

Untuk mencari inversnya gunakan command inv sbb : >> inv(y)

ans =

3.3333 -2.3333 1.0000 -8.6667 5.6667 -2.0000

5.0000 -3.0000 1.0000

Note : Matrik dikatakan singular jika matrik tersebut tidak memiliki nilai invers !

2.3 Operasi Turunan dan Integral

Dengan menggunakan matlab untuk menghitung turunan pada semua fungsi

matematik yang mungkin dapat dilakukan dengan menggunakan command diff.

Sedangkan untuk menghitung integral pada semua fungsi matematik yang mungkin pula

dapat dilakukan dengan menggunakan command int.

Untuk maksud tersebut perhatikan contoh berikut ini :

Carilah turunan dan Integral dari X3 + 2X2 +5 dengan menggunakan matlab !

>> syms x % mendeklarasikan variabel x sebagai simbol

>> diff(X^3 + 2*X^2 +5 ) % menghitung turunan ans = 3*X^2 + 4*X

>> int ( X^3 + 2*X^2 +5 ) % menghitung integral ans =

1/4*X^4 + 2/3*X^3+5*X

6

Page 7: Pen Gen Alan Matlab

Laboratorium Elektronika Dan Instrumentasi - ITB

2.4 Polinomial

Malab 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 parsial.

CONTOH :

Kepada anda diberikan sebuah persamaan polinomial berikut :

.........................................(1) 52)( 3 −−= xxxp

Untuk merepresentasikannya kedalam matlab, instruksi berikut : >> p = [1 0 -2 -5];

Untuk mencari akar polinom pada contoh diatas gunakan command roots sbb : r = roots(p)

r =

2.0946

-1.0473 + 1.1359i

-1.0473 - 1.1359i

Note : akar-akar tersebut disimpan dalam bentuk vektor kolom !

Untuk mengembalikan kepada koefisien polinomnya gunakan command poly sbb >> p2 = poly(r)

p2 =

1.0000 0 -2 -5

Untuk mencari nilai polinomial p(x) (lihat pers 1) pada x = 5, gunakan command polyval

sbb : >> Polyval(p,5)

ans =

110

Kepada anda diberikan 2 buah persamaan polinomial berikut :

a(s) =s2+2s+3 dan b(s) = 4s2+5s+6

Untuk menghitung hasil kalinya gunakan command conv sbb: >> a = [1 2 3]; b = [4 5 6];

>> c = conv(a,b)

7

Page 8: Pen Gen Alan Matlab

Laboratorium Elektronika Dan Instrumentasi - ITB

c =

4 13 28 27 18

Untuk mengerjakan operasi pembagian polinom gunakan command deconv. Pada kasus ini

dilakukan pembagian antara hasil kali polinom a dan b /polinom c dibagi dengan polinom

a, kerjakan langkah –langkah berikut :

>> [q,r] = deconv(c,a)

q =

4 5 6

r =

0 0 0 0 0

>> [q,r] = deconv(c,b)

q =

1 2 3

r =

0 0 0 0 0

Note : Notasi r menyatakan polinom sisa yang mungkin !

2.4.1 Turunan polinom

Fungsi polyder menghitung turunan setiap polinomial. Untuk mendapatkan turunan

dari polinom x3 -2x+5 = 0 dengan menggunakan matlab: >> p = [1 0 -2 5];

>> q = polyder(p)

q =

3 0 -2

Polyder juga menghitung deviasi perkalian atau pembagian dua polinomial. Sebagai

contoh, kita buat polinomial a dan b:

>> a = [1 3 5];

>> b = [2 4 6];

>> c = polyder(a,b)

c =

8 30 56 38

2.4.2 Ekspansi fraksi parsial

8

Page 9: Pen Gen Alan Matlab

Laboratorium Elektronika Dan Instrumentasi - ITB

Fungsi residu mencari rasio ekspansi fraksi parsial dari dua polinomial. Fungsi ini

sangat berguna untuk menggambarkan sistem dalam bentuk fungsi transfer. Untuk

polinomial b dan a, dirumuskan sebagai berikut:

sn

n kps

rps

rps

rps

rsasb

+−

++−

+−

+−

= ...)()(

3

3

2

2

1

1

dimana r adalah vektor kolom residu, p adalah lokasi kutub vektor kolom dan k adalah

vektor baris. Misalkan diberikan fungsi transfer berikut:

Contoh :

Diberikan fungsi transfer berikut:

61166352

)()()( 23

23

++++++

==ssssss

sAsBsH

dalam matlab dapat dituliskan sebagai berikut: >> num = [2 5 3 6];

>> den = [1 6 11 6];

>> [r,p,k] = residue(num,den)

r =

-6.0000

-4.0000

3.0000

p =

-3.0000

-2.0000

-1.0000

k =

2

hasil diatas secara analitis dapat dituliskan sebagai berikut:

21

32

43

6)()(

++

++−

++−

=ssssA

sB

untuk mengembalikan ke bentuk semula kita ketikkan:

>> [num,den] = residue(r,p,k)

num =

2.0000 5.0000 3.0000 6.0000

den =

1.0000 6.0000 11.0000 6.0000

2.5 Persamaan Differensial Biasa (ODE)

9

Page 10: Pen Gen Alan Matlab

Laboratorium Elektronika Dan Instrumentasi - ITB

Persamaan differensial sulit untuk diselesaikan. Namun, matlab merupakan suatu

alat canggih untuk menyelesaikaan persamaan differensial. Alat tersebut adalah suatu

fungsi yang benama dsolve, sintaks yang digunakan oleh dsolve harus dalam bentuk string.

Untuk lebih jelasnya misalkan diberikan suatu persamaan differensial orde pertama sebagai

berikut:

Contoh 1:

Kepada anda diberikan sebuah persamaan diferensial berikut : aydtdy

−=

Maka solusinya dapat dicari dengan menggunakan matlab sbb: >> y = dsolve('Dy = -a*y')

y =

C1*exp(-a*t)

Contoh 2:

Dari persamaan diatas yadtdy *−= , dengan menggunakan parameter 1)0( =y

Solusi khususnya dapat dicari dengan matlab sbb: >> y = dsolve('Dy = -a*y','y(0) = 1')

y =

exp(-a*t)

Contoh 3:

Diberikan persamaan berikut:

0322

2

=−− ydtdy

dtyd

solusi umumnya dapat diperoleh dengan menggunakan matlab sebagai berikut: >> y=dsolve(‘D2y-2*Dy-3*y=0’)

y =

C1*exp(t)^3+C2/exp(t)

dengan menerapkan kondisi awal y(0)=0 dan y(1)=1 menghasilkan: >> y=dsolve(‘D2y-2*Dy-3*y=0’, ’y(0)=0’, ‘y(1)=1’ )

y =

-1/(-exp(3)+exp(-1))*exp(3*t)+1/(-exp(3)+exp(-1))*exp(-t)

dengan menggunakan command simple (y) pada MATLAB maka solusinya menjadi :

10

Page 11: Pen Gen Alan Matlab

Laboratorium Elektronika Dan Instrumentasi - ITB

>> simple(y)

y =

-exp(3*t)+exp(-t))/(-exp(3)+exp(-1))

III. Import Data & Curve Fitting. 3.1 Import Data dari Microsoft Excel spreadsheet file (.xls) ke Matlab

Misalkan terdapat Microsoft Excel spreadsheet file dengan nama dataku.xls yang

mengandung data berikut :

1 6 2 7 3 text 9 5 10 untuk membacanya dalam ruang MATLAB, maka digunakan command sebagai berikut : >> A = xlsread('dataku.xls') A = 1 6 2 7 3 NaN NaN 9 5 10 Selain data numeric, MATLAB akan mengidentifikasikan data tersebut dengan NaN (Not a

Number).

Untuk mengimport data tertentu saja pada lembar kerja Excel, misal range dari A4 ke B5

pada worksheet 1, maka gunakan command berikut :

A = xlsread('dataku.xls', 1, 'A4:B5') A = NaN 9 5 10 Untuk mengimport kedua jenis data tersebut (numeric dan text) gunakan perintah berikut : [ndata, text] = xlsread('dataku.xls') ndata = 1 6 2 7 3 NaN NaN 9 5 10 text = 'text'

11

Page 12: Pen Gen Alan Matlab

Laboratorium Elektronika Dan Instrumentasi - ITB

3.2 Curve Fitting

Pencocokan kurva atau regresi ialah metoda untuk menemukan suatu kurva halus

yang paling mendekati data yang sesungguhnya. Yang dimaksud dengan yang paling

mendekati ialah meminimalkan jumlah kesalahan kuadrat pada setiap point data dan kurva

yang digunakan dibatasi pada polinomial. Perhatikan contoh dibawah.

Contoh : Perbandingan kurva

>>x = [0 .1 .2 .3 .4 .5 .6 .7 .8 .9 1]

>>y = [-.447 1.978 3.28 6.16 7.08 7.34 7.66 9.56 9.48 9.30 11.2]

Dalam MATLAB, fungsi polyfit menyelesaikan masalah pencocokan kurva kuadrat

terkecil. Data diatas kita masukkan dan tentukan derajat polinomial yang kita inginkan

paling mendekati data. Derajat n=1 maka pendekatan garis lurus (regresi linear), namun

pada contoh diatas kita akan menggunakan n=2 polinomial kuadratis.

>> p = polyfit (x,y,2)

p =

-9.8108 20.1293 -0.0317

Hasil dari polyfit ialah vektor baris yang berisi koefisien- koefisien polinomial

dengan solusi p = -9.8108x2 + 20.1293x – 0.0317. Bandingkan kurva hasil curve fitting

dengan data point to point-nya.

>> xi = linspace (0,1,100)

perintah diatas menciptakan data sumbu x untuk menggambarkan polinomial

>> z = polyval (p,xi)

perintah ini mengevaluasi polinomial p pada setiap point data dalam xi. Gambarkan data

point to point dengan ‘o’ dan kurva hasil curve fitting dengan garis terputus-putus dengan

perintah.

>> plot (x,y,’-o’,xi,z,’:’)

12

Page 13: Pen Gen Alan Matlab

Laboratorium Elektronika Dan Instrumentasi - ITB

Gambar 3. Perbandingan Kurva Point to Point VS Curve Fitting.

IV Bode Plot

Bode plot adalah representasi dari magnitudo dan fase dari fungsi transfer G(ω)

(dimana vektor frekuensi ω hanya berisi frekuensi positif). Bode plot berfungsi untuk

melihat karakteristik dari suatu filter atau sistem kontrol.

Respon frekuensi suatu sistem dapat dipandang dalam dua cara. Memilih bode plot

atau lewat diagram Nyquist. Keduanya memberikan informasi yang sama. Kita akan

memperlajari dalam praktikum ini :

• Respon frekuensi digambarkan/direpresentasikan dari system repon atas masukan

sinusoidal pada frekuensi yang beragam. Keluaran system linear atas masukan

sinusoidal pada frekuensi yang sama namun berbeda ukuran dan fasenya.

• Respon frekuensi didefinisikan sebagai ukuran (magnitude) dan beda fase antara

masukan dan keluaran sinusoidal. Dalam praktikum ini kita dapat mengetahui cara

kerja respon frekuensi loop-terbuka suatu system untuk memprediksikan tingkah

laku system dalam loop tertutup.

Contoh bode plot untuk filter lolos rendah (Low Pass Filter) LPF

13

Page 14: Pen Gen Alan Matlab

Laboratorium Elektronika Dan Instrumentasi - ITB

Gambar 4. Rangkaian LPF RC.

Bentuk fungsi transfer dari rangkaian diatas ialah :

P

P

jRC1 j

1RC1 )( G

ωωω

ωω

+=

+=

Apabila diketahui R = 150 ohm dan C = 10-7 F maka fungsi transfer :

766666.6666 j66667.66666

jRC1 j

1RC1 )( G

P

P

+=

+=

+=

ωωωω

ωω

Untuk membuat bode plot dengan menggunakan MATLAB dapat dilakukan

dengan cara : >> bode (66666.66667, [1 66666.66667])

Gambar 5. Bode Plot LPF RC.

Contoh bode plot untuk sistem kontrol :

Misalkan diberikan fungsi transfer sistem kontrol dalam Laplace sebagai berikut.

40 s30 9s s50 G(s) 23 +++

=

14

Page 15: Pen Gen Alan Matlab

Laboratorium Elektronika Dan Instrumentasi - ITB

dalam MATLAB direpresentasikan sebagai berikut : >> bode (50, [1 9 30 40])

maka hasilnya :

Gambar 6. Bode Plot Transformasi Laplace Fungsi di atas.

V. Transformasi Laplace

5.1 Pendahuluan.

Adakalanya suatu bentuk persamaan diferensial tertentu sulit untuk dipecahkan.

Oleh karena itu persamaan diferensial tersebut harus ditransformasikan kedalam bentuk

aljabar biasa sehingga persamaan difrensial tersbut akan lebih mudah untuk dipecahkan.

Salah satu caranya adalah dengan menggunakan transformasi Laplace. Perlu diketahui

bahwa persamaan diferensial yang menceritakan sebuah sistem tertentu dalam dunia

instrumentasi terkadang tidak terkontrol, sehingga akan sulit jika tidak ditransformasikan

dahulu dengan transformasi laplace.

Pada umumnnya transformasi laplace didefinisikan sebagai berikut:

F(s) = ....................................(2) ∫∞

−=0

dtetFtfL st)()}({

dimana f(t) adalah fungsi yang akan ditransformasikan ; F(s) adalah fungsi hasil

transformasi laplace ; Variabel s adalah bilangan kompleks ; L adalah simbol dari

pernyataan transormasi laplace.

15

Page 16: Pen Gen Alan Matlab

Laboratorium Elektronika Dan Instrumentasi - ITB

5.2 Sifat matematik transormasi Laplace

Beberapa sifat transformasi laplace :

a. Sifat Linear

)()()()}()()({ shsgsfthtgtfL ++=++

b. Pengubah Skala

L{f(t)} = f(t) maka

)(1}}({asf

aatfL =

c. Laplace untuk turunan

L{f(t)} = f(t) maka

)0()(}}('{ fssftfL −=

d. Laplace untuk integral

L{f(t)} = f(t) maka

)(1}}({ sfs

dttfL =∫

Beberapa contoh hasil transformasi Laplace yang telah diturunkan :

o f(t) = 1 --------- f(s) = 1/s

o f(t) = tn --------- f(s) = n!/sn+1

o f(t) = eat --------- f(s) = 1/s-a

o f(t) = sin at --------- f(s) = a / (s2 + a2)

o f(t) = cos at -------- f(t) = s / (s2 + a2)

5.2.1 Transformasi laplace dengan matlab

Dengan menggunakan matlab kita tidak perlu menggunakan persamaan 2 untuk

melakukan tranformasi laplace. Matlab telah menyediakan sebuah command untuk

menangani tranformasi laplace ,command tersbut adalah laplace.

Dibawah ini diperlihatkan mengenai penggunaan command laplace.

Contoh 1:

Misalkan diberikan fungsi , maka untuk mencari transformasi laplacenya

dengan menggunakan matlab:

atetF −=)(

>> syms t a

16

Page 17: Pen Gen Alan Matlab

Laboratorium Elektronika Dan Instrumentasi - ITB

>>laplace (exp(-a*t))

ans =

1/(s+a)

Contoh 2:

)cos()( btetF at−=

maka untuk mencari transformasi laplacenya dengan menggunakan matlab: >> syms t a b

>> laplace(exp(-a*t)*cos(b*t))

ans =

(s+a)/((s+a)^2+b^2)

5.3 Invers Laplace

Setelah suatu fungsi telah ditransformasikan kedalam tansformasi laplace dan

berhasil dipecahkan maka fungsi laplace yang bersangkutan harus dikembalikan kedalam

bentuk aslinya.

Invers matlab didefinisikan sbb:

dsesLtFjc

jc

st∫∞+

∞−

= )()( ..............................................(3)

dimana L(s) adalah hasil transformasi laplace; F(t) merupakan fungsi asli sebelum

ditransformasikan ; c merupakan suatu bilangan real.

5.3.1 Invers Laplace dalam matlab

Dengan menggunakan matlab kita tidak perlu menggunakan persamaan 3 untuk

melakukan invers laplace. Matlab telah menyediakan sebuah command untuk menangani

tranformasi laplace ,command tersbut adalah ilaplace.

Dibawah ini diperlihatkan mengenai penggunaan command ilaplace

Contoh 1:

Misal fungsi Laplace)(

1)(as

sL+

= , maka untuk mencari fungsi inversnya dengan

menggunakan matlab: >> syms s a

>> ilaplace(1/(s+a))

ans =

exp(-a*t)

17

Page 18: Pen Gen Alan Matlab

Laboratorium Elektronika Dan Instrumentasi - ITB

Contoh 2:

22 ba)a)/((s(s)( +++=sL

maka untuk mencari fungsi transformasinya dengan menggunakan matlab: >> syms s a

>> ilaplace((s+a)/((s+a)^2+b^2))

ans =

exp(-a*t)*cos(b*t)

Contoh 3:

222 )(s2.a.s)(

asL

+=

maka untuk mencari transformasi laplacenya dengan menggunakan matlab: >> syms s a

>> ilaplace( ) a^2)^2s/(s^2*a*2 +

ans =

t*sin((a^2)^(1/2)*t)

18

Page 19: Pen Gen Alan Matlab

Laboratorium Elektronika Dan Instrumentasi - ITB

CURVE FITTING TOOLBOX

Misalnya, data pengukuran simpangan osilasi pegas setiap 2 detik ialah sebagai berikut.

30 -0.9 32 0.0 34 0.3 36 0.8 38 -0.2 40 0.7 42 -0.6 44 0.8 46 -0.6 48 0.9 50 0.4 52 0.2 54 1.0 56 0.2 58 0.2

Masukkan data ini ke Matlab. Ada beberapa cara, misalnya dengan membuat matrik x

sebagai berikut.

X, detik Y, cm 0 5.5 2 3.1 4 -0.3 6 -3.0 8 -0.8

10 0.0 12 1.2 14 1.2 16 0.1 18 -0.1 20 -1.4 22 -1.0 24 0.5 26 1.3 28 -0.1

>> x = [0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44

46 48 50 52 54 56 58];

Begitu pula untuk y. Namun dengan cara ini sedikit sulit untuk mengedit data yang telah

dimasukkan, apalagi jika datanya banyak. Cara yang lebih mudah ialah dengan membuat

matrik kosong terlebih dahulu. >> x=[];

>> y=[];

Kemudian klik tab workspace, klik ganda x, untuk menampilkan Array editor – x. Jika

ingin mengedit data, cukup klik ganda pada data yang ingin diedit tersebut. Walaupun

tentu saja untuk data x ini lebih mudah dengan menulis >> x=[0:2:58];

karena untuk contoh ini data x teratur, tetapi tidak untuk data y.

Dengan cara ini anda dapat mengedit data semudah mengedit data di Ms-Excel.

19

Page 20: Pen Gen Alan Matlab

Laboratorium Elektronika Dan Instrumentasi - ITB

Gambar 7. Window Workspace, memuat name, value, dan class dari variabel

pada Command Window.

Gambar 8. Window Array Editor – x, input dan edit data berjumlah banyak menjadi

lebih mudah.

20

Page 21: Pen Gen Alan Matlab

Laboratorium Elektronika Dan Instrumentasi - ITB

Gambar 9. Mengaktifkan Toolbox Curve Fitting.

Aktifkan Toolbox Curve Fitting melalui Start > Toolboxes > Curve Fitting >

Curve Fitting Tool. Jika pada start menu tidak terdapat pilihan Toolboxes, maka

Anda dapat mengaktifkan Curve Fitting dengan mengetik >> cftool pada comand

window. Klik Data..., pilih x pada X Data, pilih y pada Y Data. Ketikkan nama data

pada Data set name, misalnya “data osilasi”, klik Create data set, tutup window Data

dengan mengklik Close.

Dapat juga menggunakan cara lain sebagai berikut. Pada window Curve Fitting Tool, klik

Fitting...untuk menampilkan window Fitting. Klik New fit, masukkan nama data

fitting pada Fit name, misalnya “fit data osilasi”. Pilih data osilasi pada Data set.

Tentukan tipe fitting pada Type of fit, tetapi dari kecenderungan data kita menduga

21

Page 22: Pen Gen Alan Matlab

Laboratorium Elektronika Dan Instrumentasi - ITB

bahwa ini data osilasi teredam, maka pilih Custom equations, klik New equation...,

klik tab General Equations. Tuliskan persamaan untuk mem-fit data, misalnya

persamaan osilasi a*exp(-b*x)*sin(c*x+d). Anda dapat mengubah tebakan awal dengan

mengganti nilai pada kolom StartPoint, klik OK. Klik Apply untuk memulai perhitungan.

Setelah beberapa detik, pada Results didapat hasil berikut.

General model:

f(x) = a*exp(-b*x)*sin(c*x+d)

Coefficients (with 95% confidence bounds):

a = 5.353 (4.269, 6.438)

b = 0.1004 (0.06505, 0.1358)

c = 0.4956 (0.4509, 0.5403)

d = 1.361 (1.034, 1.688)

Goodness of fit:

SSE: 9.442

R-square: 0.8426

Adjusted R-square: 0.8244

RMSE: 0.6026

Klik Close untuk keluar dari window Fitting. Pada window Curve Fitting muncul plot dari

data dan hasil fitting. Untuk mengubah opsi plotting, klik Plotting..., cek data apa saja

yang ingin diplot.

Untuk menganalisa data, klik Analysis.... Ubah titik-titik yang akan dianalisis pada

Analyze at Xi, misalnya masukkan 0:2:58 untuk menganalisa range data dari 0 hingga

58 dengan kenaikan (increment) 2. Masukkan tingkat kepercayaan/konfidensi pada Level.

Untuk melihat kecepatan dan percepatan, cek 1st derivative at Xi dan 2nd

derivative at Xi. Jika ingin melihat integrasi data, cek Integrate to Xi. Klik Plot

results untuk menampilkan plot analisis. Klik Apply.

22

Page 23: Pen Gen Alan Matlab

Laboratorium Elektronika Dan Instrumentasi - ITB

Gambar 10. Output plotting dari analisis data.

VI. Tugas Praktikum

1. Diberikan matriks berikut: A =

⎥⎥⎥⎥

⎢⎢⎢⎢

12311564537762

126410

a. Apakah matrik di atas termasuk matrik singular?

b. Tentukan determinannya?

c. Tentukan tranpose dari matrik A!

d. Tentukan invernya!

e. Tentukan hasil kali matrik A dengan tranposenya!

2. Carilah solusi dari persamaan berikut ini :

a) 0)2((2

=−+ − dttetydy t

b) 0)12()1( 22 =−+−− dttttydyt

23

Page 24: Pen Gen Alan Matlab

Laboratorium Elektronika Dan Instrumentasi - ITB

c) (t ln(t))y’ + y = ln(t)

d) ( 0)3()2 2323 =−++ dyyetdtete yty

e) y’’ + y’ – 2y = e2t

f) y’’ + 2y’ + 10y = 100 cos(4t)

3. Suatu rangkaian RLC dengan V=0, memiliki persamaan

Vqcdt

dqRdt

qdL =++1

2

2

diketahui R = 16 ohm, L = 0,02 H, C = 2 x 10 -4, V = 12 Volt. Carilah besarnya muatan

sebagai fungsi dari waktu.

4. Suatu kurva memiliki persamaan . Tentukan 1425050 24 +++= XXXY

a. Perpotongan dengan sumbu x.

b. Y(x), untuk x = -4, -6, 4, 9

c. Y’(x), untuk x = -3, -2, 8, 3

5. Buatlah Bode plot dari fungsi transfer di bawah ini.

a) )()()(

p

z

z

p

jjG

ωωωω

ωω

ω++

= 1)21(

1CRRp +

121CRz =ω R1= 10K, R2=5K, C1= 8μF

b) pj

jGωω

ωω+

=)( 11

1CRp =ω

R1=100 ohm, C1 = 0.8μF

6. Suatu filter memiliki fungsi transfer sebagai berikut:

a) 200

2

20

)()()(

ωωωωωω

++=

jajjG b) 2

002

2

)()()()(

ωωωωωω

++=

jajjjG

L1=1mH, C1=8mF 11

10 CL=ω

Gambarlah bode plot untuk harga a = 0,1 , a = 0,3, a = 0,5, a = 0,7 , a = 0,9, a = 1,1, a =

1,3 , a = 1,5 , a = 1,7, a = 1,9, a = 2

7. Suatu sistem kontrol memiliki fungsi transfer sebagai berikiut:

24

Page 25: Pen Gen Alan Matlab

Laboratorium Elektronika Dan Instrumentasi - ITB

a) 1225

102)( 34

3

+++++

=sss

sssG b) 2025

210)( 3 −+−

=ss

ssG

c) ⎟⎠⎞

⎜⎝⎛++

=ss

ssG

21411)(

Buatlah bode plot dari fungsi transfer tersebut.

8. Carilah transformasi laplace dari

a. L{4t2 – 3 cos(2t) + 5e-t}

b. L{e-t sin(2t)}

c. Jika F(t) = t sin(3t) tentukan L{F’(t)}

d. ∫ − dtbte t )sin(

e. ∫ − dtat))cos(1(

9. Carilah invers laplace dari persamaan berikut.

a). 221

)( ++

ss d).

25103

2 −+

ss

b). 2

252 −+−

sss e).

2046

2 ++−sss

c). 102

122 +−

−ss

s

10. Suatu sistem control dinyatakan dalam bentuk persamaan diferensial berikut :

Y’’ – 3Y’ + 2Y = exp (-3t)

Keadaan awal mensyaratkan :

Y’(0) = 3 ; Y(0) =1

Tentukan solusi khusus persamaan diferensial berikut dengan menggunakan transformasi

laplace !! Hint : Transformasikan pers diferensial tersebut dalam ruang s (laplace), tampilkan sebagai bentuk fungsi

transfer kemudian carilah rasio ekspansi fraksi parsialnya. Berikutnya adalah gunakan invers laplace untuk

memperlihatkan solusinya.

25