Frequency Analysis

18
Fakultas Teknik Oktober 2014 Jurusan Sistem Komputer Binus University Pertemuan IV Frequency Analysis 1. Tujuan 1. Mahasiswa mampu menjelaskan analisis frekuensi(Transformasi Fourier) pada sinyal analog atau digital, DFT dan FFT 2. Mahasiswa mampu mendemonstrasikan DFT dan FFT dari sinyal diskrit menggunakan MATLAB 3. Mahasiswa mampu membedakan FFT dan DFT 4. Mahasiswa mampu mendesain algoritma FFT menggunakan MATLAB 2. Dasar Teori Pada tahun 1807, Jean Baptise Joseph Fourier mengatkan bahwa semua sinyal continue yang periodik bisa dinyatakan sebagai penjumlahan sinyal-sinyal sinusoidal dengna frekuensi, amplitudo dan fase tertentu. Dengan teori ini, sinyal yang bervariasi dalam domain waktu bisa direpresentasikan dalam spektrum frekuensi atau karakteristik dari sinyal tersebut. Praktikum Digital Sinyal Processing Universitas Bina Nusantara

description

Mata kuliah Digital Signal Processing, materi tentang analisis frekuensi

Transcript of Frequency Analysis

Page 1: Frequency Analysis

Fakultas Teknik Oktober 2014Jurusan Sistem KomputerBinus University

Pertemuan IV

Frequency Analysis

1. Tujuan1. Mahasiswa mampu menjelaskan analisis frekuensi(Transformasi Fourier) pada

sinyal analog atau digital, DFT dan FFT2. Mahasiswa mampu mendemonstrasikan DFT dan FFT dari sinyal diskrit

menggunakan MATLAB3. Mahasiswa mampu membedakan FFT dan DFT4. Mahasiswa mampu mendesain algoritma FFT menggunakan MATLAB

2. Dasar Teori

Pada tahun 1807, Jean Baptise Joseph Fourier mengatkan bahwa semua sinyal continue yang periodik bisa dinyatakan sebagai penjumlahan sinyal-sinyal sinusoidal dengna frekuensi, amplitudo dan fase tertentu. Dengan teori ini, sinyal yang bervariasi dalam domain waktu bisa direpresentasikan dalam spektrum frekuensi atau karakteristik dari sinyal tersebut.

Praktikum Digital Sinyal ProcessingUniversitas Bina Nusantara

Page 2: Frequency Analysis

Fakultas Teknik Oktober 2014Jurusan Sistem KomputerBinus University

Secara umum, analisis fourier bisa dibagi menjadi 4 jenis, yaitu deret fourier, transformasi fourier, discrete time fourier transform dan discreste fourier transform yang bisa dikonduksikan oleh digital sinyal prosesor, Discrete Fourier Transform(DFT), karena ini non-periodic dan continue.

Fast fourier transform adalah algoritma perhitungan persamaan DFT dengan mengurangi perkalian dan dibutuhkan penjumlahan bilangan kompleks. Algortima FFT juga membuat pola penggunaan berulang DFT.

Di MATLAB, FFT dilakukan dengan command Y=fft(y,n) dimana y adalah sinyal dalam domain waktu, n adalah jumlah sample dalam perhitungan FFT dan Y adalah hasil perhitungan FFT.

3. Daftar Alat:1. PC2. MATLAB

4. Referensi

Praktikum Digital Sinyal ProcessingUniversitas Bina Nusantara

Page 3: Frequency Analysis

Fakultas Teknik Oktober 2014Jurusan Sistem KomputerBinus University

5. Cara Kerja1. Spektrum frekuensi sebuah sinyal

1. Buka m-file baru dan ketikan program dibawah ini:

2. Simpan hasilnya

2. Sinyal filtering dan review tentang spektrum frekuensinya1. Buka m-file baru dan ketikan program dibawah ini:

2. Simpan hasilnya

Praktikum Digital Sinyal ProcessingUniversitas Bina Nusantara

Page 4: Frequency Analysis

Fakultas Teknik Oktober 2014Jurusan Sistem KomputerBinus University

6. Analisa

Percobaan 1Discrete fourier transform(DFT) adalah sebuah perhitungan yang berbasis komputer untuk analisis spektrum data diskrit. DFT dari vector x dengan panjang n adalah sebuah vector lainnya yang disebut y dengna panjang n:

Dimana omega adlah bilangan kompleks natural berbangkat:

Notasi ini menggunakan j sebagai unit imajiner, dan p dan j untuk index dari 0 sampai n-1. Index p+1 dan j+1 dimulai daro 1 sampai n, berhubungan dengan range yang telah diasosiasikan dengan vector di MATLAB.

Data didalam vector x diasumsikan dipisahkan oleh sebuah interval yang konstan dalam waktu atau ruang, dt=1/fs atau ds=1/fs, dimana fs adalah frekuensi sampling. Fungsi DFT y adalah fungsi yang berisi bilangan kompleks. Nilai absolute dari y di index p+1 mengukur jumlah frekuensi f=p(fs/n), ditunjukkan didalam data.

Element pertama dari y, berhubungan dengan frekuensi 0, adalah hasil penjumlahan data di x. Komponen DC ini sering dihilangkan dari y.

Praktikum Digital Sinyal ProcessingUniversitas Bina Nusantara

Page 5: Frequency Analysis

Fakultas Teknik Oktober 2014Jurusan Sistem KomputerBinus University

Fast fourier transform(FFT) adalah suatu cara untuk menghitung discrete fourier transform(DFT) dengan cepat dan efisien. Fast fourier transform memecah DFT menjadi bagian-bagian kecil hingga tinggal sepasang, menghilangkan perkalian-perkalian yang rumit dan menggunakan operasi bilangan kompleks untuk mempercepat perhitungan DFT.DFT dengan jutaan titik adalah hal yang umum digunakan dalam banyak aplikasi. Pemrosesan modern sinyal dan gambar tidak akan mungkin tanpa metode yang efisien untuk menghitung DFT.

Penerapan langsung dari definisi DFT untuk sebuah data yang berbentuk vektor dengan panjang n membutuhkan n perkalian dan n penjumlahan, totalnya ada operasi folating point sebanyak 2n2. Ini tidak termasuk perpangkatan akar bilangan kompleks ke-n dari kesatuan omega(frekuensi sudut dalam fungsi sinyal analog). Untuk menghitung jutaan titik DFT, sebuah komputer bisa mengerjakan 1 perkalian dan penjumlahan setiap microsecond membutuhkan jutaan detik, atau total waktu yang dibutuhkan untuk mengerjakan operasi DFT sekitar 11,5 hari.

Algoritma FFT memiliki kompleksitas perhitungan O(n log n) dari pada O(n2). Jika n adalah bilangan pangkat 2, FFT 1 dimensi sepanjang n membutuhkan waktu operasi floating-point kurang dari 3n log2 n. Ini hampir 35.000 lebih cepat dari pada 2n2.Lama waktu pengerjaan FFT tergantung dari seberapa panjang transformasinya. Operasi FFT paling cepat kalau panjang transformasi adalah bilangan pangkat 2 dan hampir mencapai waktu pengerjaan paling cepat kalau panjang transformasi memiliki faktor bilangan prima yang sedikit. Mari lihat condingan pada percobaan pertama:

close;Fs = 10000;Ts = 1/Fs;t = 0:Ts:1;y = 0.5*sin(2*pi*300*t)+3*sin(2*pi*500*t)+...0.5*sin(2*pi*1600*t); sound(y,Fs);plot(t(1:100),y(1:100))Y = fft(y,1024);Ym = abs(Y);f = Fs*(0:511)/1024;figure; plot(f,Ym(1:512))

Praktikum Digital Sinyal ProcessingUniversitas Bina Nusantara

Page 6: Frequency Analysis

Fakultas Teknik Oktober 2014Jurusan Sistem KomputerBinus University

Seperti yang telah kita ketahui, Fs adalah frekuensi sample, Ts adalah periode sample. t adalah range waktu dari data. Sinyal input(continue) dibangun dari fungsi y. Syntax sound(y,Fs) untuk menghasilkan suara dari sinyal input. Untuk menggambarkan bentuk sinyal input didalam domain waktu digunakan syntax plot(t(1:100),y(1:100)), hasilnya seperti ini:

Domain waktu memandang getaran sebagai amplitudo terhadap waktu yang memberikan fenomena getaran fisik. Y=fft(y,1024) adalah syntax untuk melakukan perhitungan DFT dengan algoritma FFT, 1024 adalah jumlah sample yang digunakan dalam operasi ini. Ym=abs(y) adalah syntax untuk amplitudo sinyal. Syntax f = Fs*(0:511)/1024 digunakan untuk menentukan range frekuensi. Hasil dari operasi DFT ini adalah grafik sinyal input dilihat dari domain frekuensinya, yang digambarkan dengan syntax figure; plot(f,Ym(1:512)). Domain frekuensi memandang getaran berupa amplitudo sebagai frekuensi, yang merupakan cara yang cocok untuk mengidentifikasi komponen-komponennya. Syntax figure digunakan agar gambar grafik sinyal input dalam domain waktu(gambar sebelumnya) tidak hilang, MATLAB akan membuat gambar sinyal dalam domain frekuensi pada sebuah window baru. Hasilnya bisa dilihat pada gambar dibawah ini:

Praktikum Digital Sinyal ProcessingUniversitas Bina Nusantara

Page 7: Frequency Analysis

Fakultas Teknik Oktober 2014Jurusan Sistem KomputerBinus University

Terlihat bahwa sinyal y terdiri dari 3 komponen sinyal-sinyal pembentuk(sesuai dengan rumus yang membentuknya), dengan frekuensi paling besar berada di nilai 500 Hz, yang dibentuk dari persamaan 3*sin(2*pi*500*t).

Praktikum Digital Sinyal ProcessingUniversitas Bina Nusantara

Page 8: Frequency Analysis

Fakultas Teknik Oktober 2014Jurusan Sistem KomputerBinus University

Percobaan 2Percobaan kali ini mengenai pemfilteran sinyal dan tentang spektrum frekuensi. Frekuensi sample, periode sample, dan range waktu data masih sama seperti pada prakrtikum 1, yang membedakan adalah fungsi w yang membentuk sinyal dasarnya. Amplitudo sinyal w semakin lama semakin membesar, sedangkan frekuensinya sendiri tetap. Bentuk sinyal dari fungsi w tergambarkan sebagai berikut:

Kemudian ada fungsi x yang juga membentuk sebuah sinyal dari fungsi random dengan menggunakan t sebagai nilai acuannya. Artinya, sinyal dari fungsi x ini adalah noise, karena nilainya random. Fungsi y adalah sinyal hasil penjumlahan antara sinyal w dan sinyal noise x. Penjumlahan 2 buah sinyal biasanya menggunakan cara superposisi. Hasilnya seperti gambar dibawah ini:

Praktikum Digital Sinyal ProcessingUniversitas Bina Nusantara

Page 9: Frequency Analysis

Fakultas Teknik Oktober 2014Jurusan Sistem KomputerBinus University

Setelah itu dilakukan operasi DFT untuk mengubah cara menganalisis sinyal, dari dalam domain waktu menjadi ke dalam domain frekuensi. Caranya sama seperti pada percobaan pertama.

Praktikum Digital Sinyal ProcessingUniversitas Bina Nusantara

Page 10: Frequency Analysis

Fakultas Teknik Oktober 2014Jurusan Sistem KomputerBinus University

Terlihat bahwa sinyal noise lumayan mempengaruhi sinyal w, tetapi frekuensi tertinggi sinyal y masih sama dengan sinyal w, yaitu pada frekuensi 1 KHz. Setelah itu dilakukan filter pada sinyal y dengan syntax z=filter(b,a,y). Sebelum syntax tentang fungsi z, terdapat syntax untuk melakukan pemfilteran dengan cara Butterworth, yaitu [b,a] = butter(15,1100/(Fs/2)), artinya syntax ini melakukan operasi pemfilteran Butterworth dengan ordo 15 dan cut-off pada frekuensi 1100 Hz. Filter Butterworth adalah tipe filter sinyal yang didesain untuk menghasilkan frekuensi yang sangat mendekati nol untuk sinyal yang tidak dilewatkan. Teori ini pertama kali diperkenalkan pada tahun 1930 oleh seorang engineer dan fisikawan berkebangsaan Inggris yang bernama Stephen Butterworth dalam papernya yang berjudul “On The Theory of Filter Amplifiers”. Terlihat pada gambar-gambar hasil pemfilteran sinyal y bahwa filter Butterworth pada percobaan ini menggunakan karakteristik Low Pass Fitler(LPF), yaitu filter yang hanya melewatkan frekuensi-frekuensi rendah.

Praktikum Digital Sinyal ProcessingUniversitas Bina Nusantara

Page 11: Frequency Analysis

Fakultas Teknik Oktober 2014Jurusan Sistem KomputerBinus University

Terlihat setelah frekuensi cut-off nya, 1100 Hz, frekuensi-frekuensi tinggi yang dihalau langsung bernilkai sangat mendekati nol(0) pada sinyal response LPF ini.

Berikut ini adalah contoh penjumlahan 2 buah sinyal yang dilihat dari spektrum frekuensinya:

Fs = 10000;Ts = 1/Fs;t = 0:Ts:1;x=4*sin(2*pi*500*t);B= fft(x,1024);Bm= abs(B);c = Fs*(0:511)/1024;figure; plot(f, Bm(1:512));title('signal x in frequency domain') y=2*cos(2*pi*1500*t);C= fft(y,1024);Cm= abs(C);d = Fs*(0:511)/1024;figure; plot(f, Cm(1:512));title('signal y in frequency domain') z= x+y;A= fft(z,1024);Am= abs(A);b = Fs*(0:511)/1024;figure; plot(f, Am(1:512));title('signal z in frequency domain')

Praktikum Digital Sinyal ProcessingUniversitas Bina Nusantara

Page 12: Frequency Analysis

Fakultas Teknik Oktober 2014Jurusan Sistem KomputerBinus University

Hasilnya adalah sebagai berikut:

Praktikum Digital Sinyal ProcessingUniversitas Bina Nusantara

Page 13: Frequency Analysis

Fakultas Teknik Oktober 2014Jurusan Sistem KomputerBinus University

Telihat bahwa penjumlahan 2 buah sinyal dengan frekuensi dan amplitudo yang berbeda hasilnya jika dilihat dari domain frekuensi adalah sebuah sinyal baru yang terdiri dari 2 buah sinyal yang dijumlahkan tersebut. Mungkin jika dilihat dari domain waktu hasilnya akan terlihat berbeda. Tapi, jika sinyal x,y dan z jika digambarkan dalam domain waktu bentuk sinyalnya tidak begitu jelas terlihat karena frekuensi mereka yang cukup tinggi.

Praktikum Digital Sinyal ProcessingUniversitas Bina Nusantara

Page 14: Frequency Analysis

Fakultas Teknik Oktober 2014Jurusan Sistem KomputerBinus University

7. Kesimpulan

DFT adalah sebuah perhitungan yang berbasis komputer untuk analisis spektrum data diskrit.

FFT adalah cara cepat menghitung DFT dengan cara memecah belah DFT yang terdiri dari jutaan titik menjadi hanya tinggal sepansang dan juga menghilangkan perkalian yang rumit dan menggunakan penjumlahan bilangan kompleks yang lebih memudahkan.

FFT berguna untuk melihat sinyal dari yang biasanya dilihat dalam domain waktu, menjadi dapat dilihat dalam domain frekuensi.

Untuk mendapatkan hasil filter sinyal yang mendekati bentuk dan nilai output yang ideal, gunakan cara Butterworth.

Hasil penjumlahan 2 buah sinyal jika dilihat dari domain frekuensi telihat sinyal-sinyal pembentuknya berada dalam 1 gambar dan berada pada frekuensi masing-masing.

Praktikum Digital Sinyal ProcessingUniversitas Bina Nusantara