Lab0_15115

13
LAPORAN EKSPERIMEN PEMROSESAN SINYAL DIGITAL “PENGENALAN MATLAB” S1 Elektronika dan Instrumentasi Nama : Zandy Yudha Perwira NIM : 12/340103/PA/15115 Tanggal : 6 Maret 2015 JURUSAN ILMU KOMPUTER DAN ELEKTRONIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS GADJAH MADA

description

praktikum

Transcript of Lab0_15115

Page 1: Lab0_15115

LAPORAN EKSPERIMEN PEMROSESAN SINYAL DIGITAL

“PENGENALAN MATLAB”

S1 Elektronika dan Instrumentasi

Nama : Zandy Yudha Perwira

NIM : 12/340103/PA/15115

Tanggal : 6 Maret 2015

JURUSAN ILMU KOMPUTER DAN ELEKTRONIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

UNIVERSITAS GADJAH MADA

Page 2: Lab0_15115

2014

1. Dasar Teori

Matlab merupakan bahasa pemrograman dengan kemampuan tinggi dalam bidang k

omputasi. Matlab memiliki kemampuan mengintegrasikan komputasi, visualisasi, da

n pemrograman. Oleh karenanya, matlab banyak digunakan dalam bidang riset‐

riset yang memerlukan komputasi numerik yang kompleks. Penggunaan Matlab mel

iputi bidang–bidang:

1) Matematika dan Komputasi

2) Pembentukan Algorithm

3) Akusisi Data

4) Pemodelan, simulasi, dan pembuatan prototype

5) Analisa data, explorasi, dan visualisasi

6) Grafik Keilmuan dan bidang Rekayasa

Matlab merupakan kepanjangan dari Matrix Laboratory. Sesuai dengan namanya, st

ruktur data yang terdapat dalam Matlab menggunakan matriks atau array berdimens

i dua (double). Oleh karenanya penguasaan teori matriks mutlak diperlukan bagi pen

gguna pemula Matlab agar mudah dalam mempelajari dan memahami operasi‐

operasi yang ada di Matlab.

Kita dapat belajar Matlab melalui berbagai macam cara seperti dari buku maupun int

ernet. Banyak situs di internet yang menyediakan tutorial tentang matlab. Seperti tut

orial dasar, toolboxes, simulink, dan sebagainya. Kita dapat menggunakan situs http:

//www.mathworks.com. Untuk memperoleh informasi dan pengetahuan terkini tent

ang matlab.

Tampilan desktop Matlab terdiri dari Current Folder, Toolstrip, Command Window,

Workspace, dan Command History.

Page 3: Lab0_15115

1. Current Folder = lokasi folder yang digunakan

2. Toolstrip = tombol2 fungsi perintah

3. Command Window = jendela perintah utama

4. Workspace = lokasi variabel2 yang digunakan

5. Command History = rekaman perintah yang telah dilakukan

Operator Aritmatika di gunakan untuk mengerjakan komputasi numerik. Operator-

operator aritmatika adalah

(+ ) berfungsi untuk penjumlahan

(-) berfungsi untuk pengurangan

(*) berfungsi untuk perkalian (aturan matriks)

(.*) berfungsi untuk perkalian masing-masing elemen yang bersesuaian ( aturan

array)

(/) berfungsi untuk pembagian kanan matriks

(./) berfungsi untuk pembagian kanan array

(\) berfungsi untuk pembagian kiri matriks

(.\) berfungsi untuk pembagian kiri array

(^) untuk pangkat matriks

(.^) untuk pangkat array

Opertor Relasional di gunakan untuk membandingkan operand-operand secara

kualitatif.Berikut yang termasuk operator relasional

(=) berfungsi sebagai tanda sama dengan

(~=) berfungsi sebagai tanda Tidak sama dengan

(<) berfungsi sebagai tanda kurang dari

(>) lebih dari

(<=) kurang dari sama dengan

(>=) lebih dari sama dengan

Operator Logika.

(&) Akan menghasilkan nilai 1 jika kedua elemen yang bersesuaian memiliki nilai

true dan 0 untuk lainnya.

Page 4: Lab0_15115

(|) Akan bernilai 1 jika salah satu elemennya true

(~) Komplemen dari elemen yang di inputkan

(xor) Akan bernilai 1 jika salah satu dari kedua elemen memilki nilai berbeda dan

bernilai 0 jika sama

2. Listing

%program pertama

t = 0:1/8000:2;

y = sin (2*pi*10*t);

plot(t,y,'r');

grid;

title('Grafik y = sin (2*pi*10*t)');

xlabel('waktu(s)');

ylabel('y(t)');

%program kedua

y2 = 1.5*cos((2*pi*8*t)+(pi/6));

figure;

plot(t,y2,'g');

grid;

title('Grafik y = 1.5*cos((2*pi*8*t)+(pi/6)');

xlabel('waktu(s)');

ylabel('y(t)');

%program ketiga

t2 = 0:1/8000:1;

A = 0.5;

f = 6;

O = pi *(2/3);

Page 5: Lab0_15115

C = -0.5;

y3 = A*cos((2*pi*f*t2)+O)+C;

figure;

plot(t2,y3,'b');

grid;

title('Grafik y = 0.5*cos((2*pi*f*t2)+pi*(2/3))-0.5');

xlabel('waktu(s)');

ylabel('y(t)');

%program keempat

y4 = y(1:8001)+y3;

figure;

plot(t2,y4,'c');

grid;

title('Grafik y4 = y+y3');

xlabel('waktu(s)');

ylabel('y(t)');

%program kelima

y1 = y;

y5 = y1.*y2;

plot(t,y5,'m');

grid;

title('Grafik y5 = y1*y2');

xlabel('waktu(s)');

ylabel('y(t)');

%sub plot

figure;

subplot(4,2,1); plot(t,y,'g'); grid;

Page 6: Lab0_15115

title('Grafik y = sin (2*pi*10*t)');

xlabel('waktu(s)'); ylabel('y(t)');

subplot(4,2,2); plot(t,y2,'m'); grid;

title('Grafik y = 1.5*cos((2*pi*8*t)+(pi/6))');

xlabel('waktu(s)'); ylabel('y(t)');

subplot(4,2,3); plot(t2,y4,'r'); grid;

title('Grafik y4 = y+y3');

xlabel('waktu(s)'); ylabel('y(t)');

subplot(4,2,[5,6]); plot(t2,y3,'k'); grid;

title('Grafik y = 0.5*cos((2*pi*f*t2)+pi*(2/3))-0.5');

xlabel('waktu(s)'); ylabel('y(t)');

subplot(4,2,[7,8]); plot(t,y5,'b'); grid;

title('Grafik Grafik y5 = y1.*y2');

xlabel('waktu(s)'); ylabel('y(t)');

3. Hasil

Page 7: Lab0_15115
Page 8: Lab0_15115
Page 9: Lab0_15115

4. Pembahasan

Pada eksperimen kali ini adalah pengenalan pengunaan matlab terutama untuk

pemrosesan sinyal digital. Pengenalan pertama adalah operasi aritmatika yang

Page 10: Lab0_15115

standar yaitu penjumlahan, pengurangan, perkalian, pembagian serta perkalian.

Operasi yang digunakan seperti bahasa-bahasa pemrograman yang lain yaitu untuk

penjumlahan (+), pengurangan(-),pembagian (/), dan perkalian (*). Selain keempat

operasi arithmatika dasar di atas masih ada lagi yaitu untuk pemangkatan dengan “^”,

pengakaran “sqrt(...)” dimana titik-titik tersebut digantikan angka yang akan di akar,

logaritma dimana logaritma tersebut ada yang menuliskan biasa dengan log(...) yang

merupakan logaritma berbasis bilangan natural, log10 (...) merupakan logaritma

berbasis bilangan 10. Operasi-operasi tersebut dilakukan dalam command window.

Setelah operasi matematika selanjutnya merupakan operasi aritmatika untuk 2

buah yaitu penambahan, pengurangan, penjumlahan, perkalian, pembagian,

transpose, dan invers. Untuk penambahan dan pengurangan sendiri kedua matriks

maka harus mempunyai dua buah dimensi matriks yang sama kalau tidak sama akan

terjadi error karena tidak bisa dihitung. Untuk perkalian dua buah matriks maka

jumlah baris pengali harus sama dengan kolom matriks yang dikali. Untuk perkalian

element makan ditambah titik (.) di sebelum tanda kali (*) jadi (.*). Untuk permbagian

matriks sama dengan perkalian matriks syaratnya. Untuk tranpise sendiri mnggunakan

tanda (‘) dan untuk menghitung invers menggunkan inv(...) dimana titik-titik tersebut

merupkan variabel matriksnya.

Program selanjutnya menggunakan sintaks sin maupaun cos untuk menghasilkan

sinyal sinusoidal dan cosinus. Pembuatan fungsi sinus maupun gelombang cosinus

dengan sintkas sin(...) dan cos(...) dimana titik-tiik tersebut merupakan sebuah nilai

inputan fungsi. Jika kita melihat pada program pertama yang menghasilkan figure 1

pertama kali adalah mendeklarasikan variabel t dimana memuat variabel input di

fungsi sin yang merupakan fungsi waktu t tersebut.

t = 0:1/8000:2;y = sin (2*pi*10*t);plot(t,y,'r');grid;title('Grafik y = sin (2*pi*10*t)');xlabel('waktu(s)');ylabel('y(t)');

Page 11: Lab0_15115

dimana t tersbut dari 0 sampai 2 dengan jarak nya yaitu 1/8000, atau dengan kata lain

terdapat 8000 titik dari 0 sampai nilai 2. Selanjutnya pendeklarasian fungsi y yang

merupakan sin dari fungsi 2xpix10xt dimana pi merupakan 3.14 atau 22/7 dengan

inputan setiap waktu t. Jadi engan katan lain hasil tersebut merupakan y(t). Fungsi plot

tersebut untuk memplot atau membuat grafik untuk nilai x merupakan nilai t dan nilia

sumbu y merupakan nilai y dengan warna garis ‘r’ atau berarti merah. Untuk

pewarnaan garis plot sendiri menggunakan

Xlabel sendiri untuk membuat nama label di sumbu x dan ylabel untuk membuat

label di sumbu y. Fungsi grid tersbeut untuk memberikan garis kotak-kotak di grafik.

%program keempaty4 = y(1:8001)+y3;figure;plot(t2,y4,'c');grid;title('Grafik y4 = y+y3');xlabel('waktu(s)');ylabel('y(t)');

fungsi figure sendiri seperti cuplikan listing di atas adalah untuk membuat windows

garfik baru yang biasa disebut figure. Pada fungsi y4 terdapat y(1:80001) yang mana

berarti hanya akan mengouptukan atau mengambilkan nilai di y hanya di rentang 1-

8001 data saja. Hanya dipilih 1-8001 saja dikarenakan karena harus adanya kesamaan

jumlaha n data di y dan di y3 yaitu 8000 dikarenakan y3 hanya meiliki inputan data 1-

8001.

%sub plotfigure;

subplot(4,2,1); plot(t,y,'g'); grid;title('Grafik y = sin (2*pi*10*t)');xlabel('waktu(s)'); ylabel('y(t)');

Page 12: Lab0_15115

subplot(4,2,2); plot(t,y2,'m'); grid;title('Grafik y = 1.5*cos((2*pi*8*t)+(pi/6))');xlabel('waktu(s)'); ylabel('y(t)');

subplot(4,2,3); plot(t2,y4,'r'); grid;title('Grafik y4 = y+y3');xlabel('waktu(s)'); ylabel('y(t)');

subplot(4,2,[5,6]); plot(t2,y3,'k'); grid;title('Grafik y = 0.5*cos((2*pi*f*t2)+pi*(2/3))-0.5');xlabel('waktu(s)'); ylabel('y(t)');

subplot(4,2,[7,8]); plot(t,y5,'b'); grid;title('Grafik Grafik y5 = y1.*y2');xlabel('waktu(s)'); ylabel('y(t)');

Fungsi subplot sendiri untuk membuat sebuah garfik dalam satu figure dengan

beberpa grafik dimana sintaksnya yaitu

Dimana m merupakan nilai yang menyatakan jumlah baris dan n merupakan jumlah

kolom. Ilustrasi jika sebagai berikut

Untuk sintaks

subplot(4,2,[5,6]);

fungsi [5,6] merupakan range 5 dan 6 akan diplot untuk satu plottingn diagram saja.

5. Kesimpulan

Page 13: Lab0_15115

- Matlab dapt sebagai kalkulator aritmatika dasar seperti penambahan,

pengurangan, perkalian, dan pembagian.

- Operasi dasar aritmatika menggunakan sintaks seperti bahasa-bahasa

pemrograman yaitu penjumlahan (+), pengurangan (-), perkalian (*), dan

pembagian(/).

- Operasi log(...) berfungsi untuk operasi logaritma berbasis bilangan natural dan

berbasis bilangan 10 yaitu log10(...)

- Selain iperasi aritmatikdasar bilangan, di matlab juga bisa digunakan untuk operasi

aritmatika dasar pada matriks.

- Operasi penjumlahan maupun pengurangan matriks harus memiliki dimensi yang

sama dengan yang akan di kenai operasi.

- Untuk perkalian maupun pembagian matriks syaratnya matriks pengali / pembangi

haru memilki jumlah baris samde ngan jengan jumlah kolom untuk yang dikenai

operasi perkalian maupun pembagian.

- Perkalian atau pejumlahan elemen matriks dengan penambahan titik (.) sebelum

operatornya misal (.*).

- Fungsi sin(..) atau cos(..) adalah untuk mengoperasikan sin atau cos nilai yang ada

di dalam titik-titik tersebut.

- Fungsi plot untuk mebuat grafik di figure. Penambahan figure dapat dilakukan

dengan mengetik figure; .

- Sintaks title untuk membuat title figure, xlabel dan y label untuk membuat label di

sumbu x dan y.

- Subplot merupakan cara untuk membuat banyak plot dalam satu figure.