AUDIO SPECTRUM ANALYSER MENGGUNAKAN MIKR
AUDIO SPECTRUM ANALYSER MENGGUNAKAN
MIKROKONTROLER ATmega32
PROYEK AKHIR
Diajukan kepada Fakultas Teknik Universitas Negeri Yogyakarta
Untuk Memenuhi Sebagian Persyaratan
Guna Memperoleh Gelar Ahli Madya
Oleh :
I Wayan Rentanu
08502241011
JURUSAN PENDIDIKAN TEKNIK ELEKTRONIKA
FAKULTAS TEKNIK
UNIVERSITAS NEGERI YOGYAKARTA
2012
LEMBAR PERSETUJUAN
PROYEK AKHIR
AUDIO SPECTRUM ANALYSER MENGGUNAKAN
MIKROKONTROLER ATmega32
Oleh :
I Wayan Rentanu
08502241011
Telah Diperiksa dan Disetujui oleh Pembimbing
untuk Diuji
Yogyakarta,
Januari 2012
Mengetahui,
Menyetujui,
Kaprodi Pendidikan Teknik Elektronika
Pembimbing Proyek Akhir
Handaru Jati, Ph.D
NIP. 19740511 199903 1 002
Aris Nasuha, M.T.
NIP. 19690615 199403 1 002
ii
LEMBAR PENGESAHAN
Proyek akhir berjudul “Audio Spectrum Analyser Menggunakan Mikrokontroler
ATmega32” ini telah dipertahankan di depan dewan penguji pada tanggal
.....…………2012 dan dinyatakan lulus.
DEWAN PENGUJI
Nama
Jabatan
Tanda Tangan
Aris Nasuha, M.T.
Ketua Penguji
…………………………
Muhammad Munir, M.Pd.
Sekretaris Penguji
…………………………
Totok Sukardiyono, M.T.
Penguji Utama
…………………………
Yogyakarta,
Januari 2012
Mengetahui,
Dekan Fakultas Teknik UNY
Dr. Moch. Bruri Triyono
NIP. 19560216 198603 1 003
iii
LEMBAR PERNYATAAN
Dengan ini saya menyatakan dalam Proyek Akhir ini tidak terdapat karya yang
pernah diajukan untuk memperoleh gelar Ahli Madya atau gelar lainnya di suatu
Perguruan Tinggi, dan sepanjang pengetahuan penulis juga tidak terdapat karya
atau pendapat yang pernah ditulis oleh orang lain, kecuali secara tertulis diacu
dalam naskah dan disebutkan dalam daftar pustaka.
Yogyakarta,
Januari 2012
Yang menyatakan,
I Wayan Rentanu
(NIM. 08502241011)
iv
MOTTO DAN PERSEMBAHAN
MOTTO
“Berani Menantang Keyakinan Untuk Menciptakan Sejarah”
(Myselft)
“Lakukanlah tugas kewajibanmu yang telah ditetapkan, sebab melakukan
demikian lebih baik daripada tidak bekerja. Seseorang tidak dapat memelihara
badan jasmaninya pun tanpa bekerja”
(Bhagawad Gita III.8)
“Setiap pikiranmu adalah hal yang nyata -suatu daya”
(The Sekret,Prentice J wlford, 1834-1891)
“Apa pun yang dapat dipikir akal…akan dapat dicapai.”
(The Sekret, W.Glement Stone, 1902-2002)
PERSEMBAHAN
Proyek akhir ini Saya persembahkan kepada :
Bapak, Ibu, adik-adik dan seluruh keluarga besar atas doa dan dukungan yang
sangat membangun.
Saudara -saudaraku yang selalu menemani
Rekan-rekan sahabat Kelas A 2008 PT Elektronika FT UNY.
Terimakasih atas dukungan, bantuan, inspirasi dan semangatnya dalam
penyelesaihan Proyek Akhir ini.
DPO HIMANIKA FT UNY 2011
(Hari Nurcahyo, Faiq Arbor, Galuh Tuhu, Ito Dwi Adha, Ardian Tiyastono, Rivai,
Masrur (Jon), Endri Sujatmiko, Bayu, Anggi, Esti, Ena Kharismaya, Deti)
“Salam HIMANIKA…., Kita ada karena kontribusi”
KMHD UNY
Sahabat semua Keluarga Mahasiswa Hindu Dharma UNY, terimakasih atas
inspirasi dan doanya.
Pembina KMHD UNY Bpk Putu Sudira yang selalu memotivasi untuk semangat
belajar dan segera lulus.
v
Audio Spectrum Analyser Mengunakan Mikrokontroler ATmega32
Oleh : I Wayan Rentanu
NIM : 0850224101
ABSTRAK
Tujuan pembuatan alat ini adalah untuk merancang perangkat keras,perangkat
lunak dan mengetahui unjuk kerja sistem Audio Spectrum Analyser menggunakan
mikrokontroler ATmega32.
Rancang bangun Audio Spectrum Analyser terdiri dari beberapa bagian
pendukung sistem perangkat keras yaitu rangkaian mixer sinyal, Low Pass Filter,
pengkondisi sinyal LM386, mikrokontroler ATmega32 sebagai prosesor utama,
tombol pengaturan dengan push button, tampilan LCD grafik 128 x 64 pixel dan
rangkaian pengisi program prosesor utama. Perancangan perangkat lunak sebagai
pengendali program pada mikrokontroler ATmega32 menggunakan bahasa C dan
program compiler CodeVisionAVR. Algoritma program terdiri dari program
utama dan 5 (lima) buah sub program yaitu sub program ADC, sub program
komputasi FFT, sub program komputasi magnitude spektrum, sub program
tampilan grafik spektrum dan tampilan bentuk gelombang pada LCD grafik 128 x
64 pixel.
Hasil pengujian alat Audio Spectrum Analyser dengan masukan sinyal
frekuensi tunggal dan sinyal frekuensi campuran untuk nilai frekuensi yang
bervariasi, alat dapat menampilkan bentuk spektrum dan besaran frekuensi
dengan bandwidth 20 Hz – 16 kHz. Alat ini terdiri dari 3 masukan sinyal dan
mempunyai rerata persentase kesalahan pengukuran sebesar 3,17 %.
Kata kunci : Mikrokontroler ATmega32, Audio Spectrum Analyser
vi
KATA PENGANTAR
Segala puja dan puji syukur penulis panjatkan kehadirat Ida Sang Hyang
Widhi Wasa / Tuhan Yang Maha Esa atas segala asung kerta wara nugraha beliau
penulis dapat menyelesaikan laporan proyek akhir ini dengan judul ” Audio
Spectrum Analyser Menggunakan Mikrokontroler ATmega32”. Pembuatan
Proyek Akhir sebagai syarat untuk memperoleh gelar Ahli Madya Fakultas
Teknik Universitas Negeri Yogyakarta.
Penulis menyadari sepenuhnya keberhasilan Proyek Akhir ini tidak lepas dari
bantuan berbagai pihak, baik itu secara langsung mapun tidak langsung. Dengan
kerendahan hati, pada kesempatan ini penulis mengucapkan rasa terimakasih
yang sebesarnya kepada :
1. Bapak Dr. Moch Bruri Triyono selaku Dekan Fakulatas Teknik
Universitas Negeri Yogyakarta
2. Bapak Muhammad Munir, S.Pd selaku Ketua Jurusan Pendidikan Teknik
Elektronika Fakultas Teknik Universitas Negeri Yogyakarta
3. Bapak Aris Nasuha, M.T selaku Dosen Pembimbing Proyek Akhir
4. Orang Tua yang telah memberikan kesempatan untuk menggapai cita-cita
5. Para Dosen, Teknisi Lab, dan Staff Jurusan Pendidikan Teknik Elektronika
yang telah memberikan bantuan sehingga terselesaikannya Proyek Akhir
ini.
6. Seluruh
teman-teman
mahasiswa
Pendidikan
Teknik
Elektronika
Universitas Negeri Yogyakarta dan Himpunan Mahasiswa Elektronika dan
Informatika yang telah memberikan bantuan dan semangatnya
7. Seluruh mahasiswa pengurus Keluarga Mahasiswa Hindu Dharma yang
yang memberikan inspirasi-inspirasi yang membangun
8. Semua pihak yang telah membantu Proyek Akhir ini
vii
Penulis menyadari dalam pembuatan Proyek Akhir ini masih jauh dari
sempurna. Oleh karena itu saran dan kritik yang sangat membangun sangat
dibutuhkan guna menyempurnakan laporan Proyek Akhir ini . semoga Proyek
Akhir ini dapat memberikan manfaat bagi siapa saja yang membacanya.
Yogyakarta, Januari 2012
Penulis
viii
DAFTAR ISI
Halaman
HALAMAN JUDUL .........................................................................
i
LEMBAR PERSETUJUAN ............................................................
ii
LEMBAR PENGESAHAN ...............................................................
iii
LEMBAR PERNYATAAN KEASLIAN KARYA .........................
iv
MOTTO DAN PERSEMBAHAN ...................................................
v
ABSTRAK ..........................................................................................
vi
KATA PENGANTAR ........................................................................
vii
DAFTAR ISI ......................................................................................
ix
DAFTAR TABEL
............................................................................
xii
DAFTAR GAMBAR .........................................................................
xiii
DAFTAR LAMPIRAN .....................................................................
xvi
BAB I
BAB II
PENDAHULUAN
......................................................
1
A. Latar Belakang .......................................................
1
B. Identifikasi Masalah ................................................
3
C. Batasan Masalah .....................................................
4
D. Rumusan Masalah .................................................
4
E. Tujuan ....................................................................
5
F. Manfaat ..................................................................
5
G. Keaslian Gagasan ...................................................
6
LANDASAN TEORI ....................................................
6
A. Spectrum Analyser ..................................................
6
B. Sinyal ........................................................................
7
C. Frekuensi Audio .......................................................
9
D. DC Prosesor
9
..........................................................
E. Filter Pasif Analog (LPF) .......................................
11
F. Pengolahan Sinyal Digital ......................................
13
G. Mikroprosesor Pengolah Sinyal Digital .................
19
H. Mikrokontroler ATmega32 ....................................
21
ix
BAB III
BAB IV
I.
Downloader ATmega8 ...........................................
29
J.
Grafik LCD 128 x 64 pixel .....................................
30
K. Mixer Sinyal Analog ..............................................
31
L. Bahasa C ..................................................................
32
M. Perangkat Lunak CodeVisionAVR ........................
33
PERANCANGAN DAN PEMBUATAN ALAT ......
36
A. Identifikasi Kebutuhan ...........................................
36
B. Analisis Kebutuhan .................................................
36
C. Blok Diagram Rangkaian ......................................
37
D. Perancangan dan Rangkaian ................................
38
E. Langkah Pembuatan Alat
....................................
41
F. Diagram Alir Program ...........................................
43
G. Perancangan Program ............................................
46
PENGUJIAN DAN PEMBAHASAN ........................
48
A. Pengujian .................................................................
48
1.
Pengujian Perbagian ........................................
a.
Pengujian rangkaian penguat LM386
dan LPF pasif.............................................
48
b.
Pengujian penggeser level tegangan ........
49
c.
Pengukuran tegangan referensi (Vref)
dan Vcc
2.
48
mikrokontroler, dan Vcc
LM386 .......................................................
50
Pengujian Keseluruhan ....................................
50
a.
Pengukuran frekuensi dengan
satu sinyal masukan ..................................
b.
Pengukuran frekuensi dengan
3 sinyal masukan ......................................
c.
d.
50
54
Pengukuran frekuensi dengan
sinyal acak ..............................................
56
Pengukuran bentuk gelombang sinus ......
58
x
B. Pembahasan .............................................................
1.
58
Analisis tegangan referensi (Vref) dan Vcc
mikrokontroler, dan Vcc LM386 .....................
58
2.
Analisis penggeser level tegangan...................
59
3.
Analisis rangkaian penguat LM386
dan LPF pasif ....................................................
59
Analisis keseluruhan kerja sistem ...................
59
KESIMPULAN DAN SARAN ....................................
62
A. Kesimpulan ..............................................................
62
B. Kelemahan Alat ......................................................
62
C. Saran ........................................................................
63
DAFTAR PUSTAKA ..........................................................................
64
LAMPIRAN .........................................................................................
66
4.
BAB V
xi
DAFTAR TABEL
Halaman
Tabel 1. Perbandingan komputasi DFT dan FFT …………… ...................... 15
Tabel 2. Pembalikan Bit ………………………………................................. 16
Tabel 3. Fungsi khusus PORTB ………………………….. .......................... 23
Tabel 4. Fungsi khusus PORTC …………………………….. ...................... 23
Tabel 5. Fungsi khusus PORTD ……. ............................................................ 23
Tabel 6. Hasil pengukuran rangkaian penguat LM386 dan LPF pasif .......... 48
Tabel 7. Hasil pengukuran Vref dan Vcc mikrokontroler ............................. 50
Tabel 8. Perbandingan hasil pengukuran sinyal osiloskop
dan Audio Spectrum Analyser ............................................................ 60
Tabel 9. Perbandingan pengukuran dengan 100 sampel sinyal ...................... 61
xii
DAFTAR GAMBAR
Halaman
Gambar
1. Block diagram dari classic superheterodyne
spectrum analyzer ......................................................................... 6
Gambar a2. Gelombang sinus……………….............. ................................... 7
Gambar a3. Sampling sinyal ............................................................................. 8
Gambar a4. Diagram blok pengolahan sinyal analog dan digital ................... 8
Gambar a5. Rangkaian ekuivalen dan kaki-kaki LM386 ............................... 9
Gambar a6. Grafik perbandingan penguatan dan frekuensi ........................... 10
Gambar a7. Skema rangkaian amplifier LM386 penguatan 200.................... 10
Gambar a8. Skema rangkaian penggeser level tegangan ................................ 11
Gambar a9. Grafik sinyal sebelum dan sesudah penggeser level................... 12
Gambar 10. Skema rangkaian dasar LPF ........................................................ 12
Gambar 11. Grafik LPF perbandingan tegangan dan frekuensi ..................... 12
Gambar 12. Skema rangkaian Flash ADCs ..................................................... 14
Gambar 13. Blok diagram Successive Approximation ADCs ........................ 14
Gambar 14. Diagram kupu-kupu (butterfly) untuk DFT 8-point ................... 18
Gambar 15. Diagram blok sistem bus arsitektur Von Neumann .................... 19
Gambar 16. Diagram blok sistem bus arsitektur Harvard .............................. 20
Gambar 17. Arsitektur Harvard mikrokontrol AVR ...................................... 22
Gambar 18. Blok diagram ATmega32 ............................................................. 25
Gambar 19. Konfigurasi pins AVR ATmega32 .............................................. 25
Gambar 20. Diagram blok skema ADC ........................................................... 26
Gambar 21. Peta memori program AVR ATmega32...................................... 27
Gambar 22. Peta memori data AVR ATmega32 ............................................. 28
Gambar 23. Pembagian clock ATmega32 ....................................................... 29
Gambar 24. Skema rangkaian Downloader ATmega8 AVRISP MKII ......... 30
Gambar 25. GLCD tipe WG12864C-TMI VN................................................ 31
Gambar 26. Skema rangkaian mixer sinyal analog ......................................... 32
Gambar 27. Tampilan IDE CodeVisionAVR versi 2.05.3 ............................. 34
xiii
DAFTAR GAMBAR
Halaman
Gambar 28. Automatic Program Generator yang digunakan untuk
menginisialisasi beberapa pustaka pada AVR ............................ 36
Gambar 29. Blok diagram Implementasi sistem Audio Spectrum Analyser. 37
Gambar 30. Skema rangkaian mixer 3 masukan ............................................. 38
Gambar 31. Skema rangkaian LPF cut-off 16 kHz ......................................... 38
Gambar 32. Skema rangkaian amplifier LM386 penguatan 200 kali ............ 38
Gambar 33. Skema rangkaian sistem minimum ATmega32 .......................... 39
Gambar 34. Skema rangkaian USB ISP .......................................................... 39
Gambar 35. Skema rangkaian push-botton ...................................................... 40
Gambar 36. Skema rangkaian LCD grafik 128 x 64 pixel.............................. 40
Gambar 37. Prosedur data_sampling_adc, proses
pengambilan sampel data ADC ................................................... 43
Gambar 38. Fungsi fix_fft (Tom Roberts.1989), proses komputasi FFT ....... 44
Gambar 39. Prosedur mendapatkan magnitude sinyal .................................... 45
Gambar 40. Prosedur menampilkan grafik spektrum LCD ............................ 45
Gambar 41. Prosedur menampilkan grafik spektrum LCD ............................ 46
Gambar 42. Respon frekuensi cut-off pada rangkaian LM386 dan LPF ....... 49
Gambar 43. Hasil pengukuran penggeser level tegangan ............................... 49
Gambar 44. Hasil pengukuran penggeser level tegangan
amplitudo maksimum ................................................................... 49
Gambar 45. Hasil pengukuran frekuensi rendah ............................................ 50
Gambar 46. Hasil pengukuran frekuensi menengah ...................................... 51
Gambar 47. Hasil pengukuran frekuensi tinggi .............................................. 52
Gambar 48. Hasil pengukuran frekuensi menengah ...................................... 53
Gambar 49. Hasil pengukuran tiga frekuensi pada osiloskop ........................ 54
Gambar 50. Hasil pengukuran tiga frekuensi pada Audio Spectrum
Analyser ...................................................................................... 55
Gambar 51. Hasil pengukuran 3 sinyal dengan amplitudo input
yang sama pada Audio Spectrum Analyser ................................. 56
xiv
DAFTAR GAMBAR
Halaman
Gambar 52. Tampilan pada Audio Spectrum Analyser
sebelum ditambahkan sinyal acak .............................................. 56
Gambar 53. Tampilan pada Audio Spectrum Analyser
setelah ditambahkan sinyal acak................................................. 57
Gambar 54. Hasil pengkuran pada Audio Spectrum Analyser
setelah ditambahkan sinyal acak frekuensi 7,869 kHz.............. 57
Gambar 55. Bentuk gelombang sinus
pada Audio Spektrum Analyser ................................................... 58
xv
DAFTAR LAMPIRAN
Halaman
Lampiran 1. Skema rangkaian Audio Spectrum Analyser .............................. 67
Lampiran 2. Layout PCB Audio Spectrum Analyser ....................................... 68
Lampiran 3. Tata letak komponen.................................................................... 69
Lampiran 4. Daftar komponen.......................................................................... 70
Lampiran 5. Listing program lengkap
Audio Spectrum Analyser bahasa C............................................ 71
Lampiran 6. Dokumentasi................................................................................. 97
Lampiran 7. Manual Operasi Audio Spectrum Analyser ................................ 100
Lampiran 8. Datasheet ATmega32................................................................... 104
Lampiran 9. Datasheet LM386 ......................................................................... 143
Lampiran 10. ATmega32Datasheet LCD 128x64 pixel ................................. 152
xvi
BAB I
PENDAHULUAN
A. Latar Belakang
Perkembangan
teknologi
khususnya
dalam
bidang
elektronika
mengalami kemajuan yang cukup pesat. Terlebih lagi kemajuan di bidang
elektronika yang sangat membantu pekerjaan manusia yang secara tidak
langsung dapat dikerjakan seperti pengukuran-pengukuran besaran listrik.
Hal ini dapat dilihat dari banyaknya perangkat pengukuran yang
menggunakan sistem elektronika, baik secara digital, mikrokontroler serta
mikroprosesor. Pengunaan sistem elektronika digital ini dimaksudkan untuk
mempercepat aktivitas kerja manusia.
Hadirnya perangkat keras (hardware) dan perangkat lunak (software)
adalah bukti perkembangan ilmu pengetahuan dan teknologi elektronika
digital. Salah satu diantaranya adalah bidang pengolahan sinyal digital.
Perkembangan dibidang ini dimulai dengan pesatnya kemajuan teknologi
digital dan mikrokomputer sehingga dimungkinkan implementasi teori-teori
pengolahan sinyal digital. Dalam pengolahan sinyal digital terdapat sub
bidang yang disebut analisa spektrum frekuensi yang disebut spectrum
analyser. Piranti ukur listrik spectrum analyser merupakan alat ukur yang
berfungsi untuk mengukur besaran frekuensi dan magnitude suatu sinyal.
Dalam perkembangannya spectrum analyser dapat mengukur frekuensi
lebih dari 1GHz seperti spectrum analyser tipe Rigol DSA1030A mampu
mengukur frekuensi hingga 3GHz (http://www.batronix.com). Dengan
kemampuannya tersebut, spectrum analyser Rigol DSA1030A harganya
sangat mahal, perangkatnya cukup berat untuk dibawa kemana-mana dan
dikhususkan untuk pengukuran Radio Frequency (RF) dan gelombang
mikro.
Mikrokontroler merupakan salah satu prosesor pengolah sinyal digital
yang digunakan dalam berbagai keperluan peralatan manusia. Mikrokontrol
1
2
merupakan teknologi semi konduktor yang didalamnya terdiri dari beriburibu transistor dan komponen lainnya dalam satu kepingan kecil (chip).
Fungsi dan tugas dari mikrokontrol ini sama seperti mikrokomputer (CPU)
tetapi perbedaannya mikrokontroler digunakan untuk aplikasi khusus
sehingga relatif lebih murah dibandingkan mikrokomputer.
ATmega32 adalah salah satu jenis mikrokontroler keluarga AVR (Alf
and Vegard Risc atau Advance Virtual - RISC) yang sekarang
dikembangkan oleh ATMEL. Beberapa keunggulan mikrokontroler AVR
dengan mikrokontrol lain yaitu memiliki kecepatan eksekusi program yang
lebih cepat karena sebagian besar instruksi dieksekusi dalam 1 (satu) siklus
clock
lebih cepat dibandingkan dengan mikrokontroler MCS51 yang
memiliki arsitektur CICS (Complex Instruction Set Compute). ATmega32
dengan flash memori 32 Kbytes, 1024 Bytes EEPROM, 2 Kbyte internal
SRAM dan fitur-fitur seperti Timer/Counter, PWM, 8 channel 10 Bit ADC,
USART, dan SPI (datasheet ATmega32) dengan fasilitas ini para desainer
dapat menggunakannya dalam berbagai aplikasi sistem elektronika seperti
robot, otomasi industri, sistem telekomunikasi contohnya sebagai pemroses
sinyal digital dan keperluan lainnya.
Mikrokontroler ATmega32 telah menggunakan bahasa pemrograman
tingkat tinggi yaitu bahasa C yang lebih mudah dimengerti dan dipahami
oleh manusia. Dengan memanfaatkan mikrokontroler ini sebagai piranti
pengolah sinyal digital dan mengimplementasikan algoritma pengolah
sinyal digital sebagai penganalisis sinyal maka pengembangan pengolahan
sinyal digital dapat lebih mudah dan cepat diantaranya sebagai analisa
spektrum frekuensi audio.
Pada saat ini kebutuhan akan piranti ukur spectrum analyser masih
relatif banyak terutama sebagai perangkat penunjang praktikum di
laboraturium sekolah maupun di kampus. Karena mahalnya harga piranti
ukur spectrum analyser sekolah-sekolah dan kampus belum banyak
menggunakan piranti ukur tersebut. Untuk menekan mahalnya harga alat
ukur spectrum analyser maka penggunaan mikrokontroler ATmega32
3
sebagai prosesor pengolah sinyal digital sangat cukup dan murah untuk
membangun suatu perangkat alat ukur audio spectrum analyser. Perangkat
ini selain relatif murah, ukuran perangkat lebih kecil dan ringan sehingga
memudahkan dalam penggunaan yang berpindah-pindah (portable) dan
diharapkan mampu menampilkan spektrum sinyal audio frequency.
Berdasarkan hasil pengamatan dari beberapa mahasiswa KKN (Kuliah
Kerja Nyata) di SMK TAV (Sekolah Menegah Kejuruan Teknik Audio
Video) di Daerah Istimewa Yogyakarta bahwa belum tersedianya alat ukur
Audio Spectrum Analyser, padahal alat tersebut dibutuhkan sebagai media
pembelajaran untuk menganalisis sinyal audio baik dalam perancangan
maupun perbaikan pesawat elektronika seperti Power Amplifier, TapeRadio Recorder, Tone Controler, dan sistem audio lainnya. Dengan adanya
suatu perangkat Audio Spectrum Analyser ini guru maupun siswa dapat
memanfaatkan teknologi yang jauh lebih murah, mudah dibawa kemanamana dan praktis untuk praktikum di sekolah-sekolah. Pemanfaatan analisa
spektrum ini pun sangat luas dan banyak membantu dalam bidang analisis
sinyal di industri khususnya bidang telekomunikasi, laboratorium praktikum
sekolah-sekolah dan kehidupan manusia pada umumnya.
Berdasarkan dari berbagai macam fakta keadaan seperti di atas, dengan
memanfaatkan mikrokontoler ATmega32 menggunakan pemrograman
bahasa C, maka dibuatlah perancangan dan pembuatan alat yang mampu
mengamati nilai besaran frekuensi yaitu “Audio Spectrum Analyser
Menggunakan Mikrokontroler ATmega32”. Sehingga dengan adanya alat
ini diharapkan lebih memudahkan dalam pengamatan dan analisis sinyal
digital yang frekuensinya bervariasi.
B. Identifikasi Masalah
Berdasarkan uraian di atas, permasalahan yang dapat diidentifikasi
adalah sebagai berikut:
1. Sinyal masukan mikrokontroler belum sesuai dengan kondisi sinyal
analog.
4
2. Mikrokontroler tidak mampu memproses sinyal frekuensi tinggi yang
dapat menyebabkan aliasing.
3. Penampil hasil pengukuran spektrum jarang digunakan dalam aplikasi
mikrokontroler.
4. Pemrograman mikrokontroler yang susah untuk komputasi pemrosesan
sinyal digital.
5. Audio Spectrum Analyser yang ada dipasaran belum terjangkau oleh
sekolah – sekolah.
C. Batasan Masalah
Berdasarkan beberapa pokok permasalahan yang telah dipaparkan dalam
identifikasi masalah, maka penulis membatasi ruang lingkup pembahasan
proyek akhir ini. Pembuatan proyek akhir berjudul “Audio Spectrum Analyser
Menggunakan Mikrokontroler ATmega32“ dengan batas frekuensi tertinggi
16 kHz, Mikrokontroler ATmega32 sebagai prosesor utama pengolah sinyal
digital menggunakan algoritma pemrograman FFT yang ditulis oleh Tom
Robert (1989) sehingga mendapatkan bentuk spektrum frekuensi pada
penampil LCD grafik 128 x 64 pixel secara realtimes.
D. Rumusan Masalah
Berdasarkan identifikasi masalah dan pembatasan masalah, dapat
dirumuskan beberapa masalah yaitu:
1. Bagaimana merealisasikan perangkat keras Audio Spectrum Analyser
menggunakan mikrokontroler ATmega32?
2. Bagaimana perangkat lunak pada mikrokontroler ATmega32, dan program
tampilan grafis spektrum frekuensi menggunakan penampil LCD Graphic
128 x 64 pixel?
3. Bagaimana unjuk kerja sistem Audio Spectrum Analyser Menggunakan
Mikrokontroler ATmega32?
5
E. Tujuan
1. Merealisasikan rancangan perangkat keras Audio Spectrum Analyser
Menggunakan Mikrokontroler ATmega32.
2. Merealisasikan perangkat lunak pada Mikrokontroler ATmega32,
dan
program tampilan grafis spektrum frekuensi menggunakan penampil LCD
Graphic 128 x 64 pixel.
3. Mendapatkan unjuk kerja sistem Audio Spectrum Analyser Menggunakan
Mikrokontroler ATmega32.
F. Manfaat
Dari pembuatan proyek akhir ini penulis mengharapkan dapat
memberikan manfaat bagi mahasiswa, lembaga pendidikan, dan masyarakat
pengguna. Berbagai manfaat yang diharapkan adalah :
1. Bagi Mahasiswa :
Dapat bermanfaat sebagai penerapan ilmu pengolahan sinyal digital yang
didapat di bangku kuliah maupun dari pengalaman di lapangan.
2. Bagi Sekolah / Universitas :
Sebagai alat bantu dalam proses pembelajaran di laboraturium atau di
bengkel sebagai alat ukur spektrum frekuensi sinyal audio.
3. Bagi Masyarakat dan Industri :
a. Dapat dimanfaatkan sebagai konsep perancangan sistem audio digital
pada equalizer dan peralatan musik lainnya.
b. Dapat dikembangkan sebagai alat praktikum di laboraturium penelitian
dalam analisis frekuensi sinyal audio.
6
G. Keaslian Gagasan
Pembuatan proyek akhir dengan judul “Audio Spectrum Analyser
Menggunakan Mikrokontroler ATmega32” ini merupakan gabungan dari ideide dasar yang telah dipublikasikan di internet seperti:
1. Real-Time Audio Spectrum Analyzer (Simon Inn, 2011).
Pada karya ini, disebutkan bandwidth frekuensinya 300 Hz – 10 kHz dan
tidak dapat menampilkan besaran frekuensi suatu sinyal, hanya tampilan
grafik bargraph pada LCD 128 x 64.
2. Audio Spectrum Monitor (Chan, 2005)
Pada karya ini, disebutkan tampilan grafik spektrum mempunyai resolusi
122 x 32 dengan menggunakan bahasa pemrograman assembly yang
komputasinya lebih cepat dan tidak dapat menampilkan besaran
frekuensi suatu sinyal dan frekuensi tertinggi yang dapat diukur sebesar
9,6 kHz.
3. Spectrum Analyser Rigol DSA1030A
Alat Spectrum Analyser Rigol DSA1030A mempunyai resolusi 800 x
480 pixel color LCD grafik dengan bandwidth frekuensinya dari 9 kHz –
3 Ghz. Alat ini mempunyai berat 6 kg – 7,5 kg dengan harga per unit
USD 5659. Teknologi tinggi yang terdapat di dalamnya mampu
mengukur RF (Radio Frequency), menyimpan data lewat USB dan
support sistem operasi Windows.
Alat Audio Spectrum Analyser mempunyai beberapa kelebihan dan
kekurangan dari karya-karya tersebut diatas. Beberapa kelebihan alat Audio
Spectrum Analyser adalah bandwidth frekuensinya dari 20 Hz – 16 kHz yang
dapat ditampilkan besaran frekuensinya pada LCD grafik dan harga perangkat
relatif murah sebagai media pembelajaran. Sedangkan kekurangan dari alat
ini adalah terbatasnya kapasitas memori untuk proses komputasi program dan
terlalu kecilnya resolusi LCD grafik penampil spektrum.
BAB II
LANDASAN TEORI
A. Spectrum Analyser
Spectrum analyzer adalah suatu program untuk menampilkan spectrum
frekuensi suara untuk setian waktu tertentu. Dalam spectrum analyzer
terdapat dua buah komponen sinyal yang dapat diteliti, yaitu frekuensi dan
amplitudo.
Pembuatan spectrum analyzer dilakukan dengan melakukan perhitungan
FFT untuk setiap N buah data pada suatu sinyal secara terus menerus dan
berurutan. Spectrum ana lyzer mempunyai kelebihan dalam proses analisis
suara disbanding dengankan dengan melihat pada time domain secara
langsung, hal ini dikarenakan spectrum analyzer bekerja pada domain
frekuensi yang cenderung konstan dan posisi frekuensinya tidak terpengaruh
oleh noise. Secara umum Spectrum analyzer dapat digambarkan dalam block
diagram berikut:
Gambar 1. Block diagram dari classic superheterodyne spectrum analyzer
Pada bagian input sinyal melewati bagian attenuator , lalau melewati low
pass filter ke mixer yang akan mencampurkan dengan local osilator . Karena
mixer bukan termasuk peralatan linier, maka pada bagian outputnya terdapat
dua sinyal pembentuk utama bersama dengan harmonisanya dan penjumlahan
serta turunan dari frekuensi asli beserta harmonisanya. Hanya sinyal yang
melalui passband intermediate filter -lah yang akan diproses lebih lanjut.
Sangat penting dilakukan pembenahan dengan envelop detector , digitized ,
dan menampilkannya. Sebab sebuah ramp generator akan menciptakan
6
7
gerakan horizontal pada display dari kiri ke kanan, ramp juga melakukan
tuning pada local oscillator sehingga memenuhi proporsi tegangan yang
diperlukan (http://digilib.petra.ac.id).
B. Sinyal
Sinyal adalah suatu besaran fisis yang merupakan fungsi waktu, ruangan,
atau beberapa variabel (Harlianto Tanudjaja, 2007:1). Dalam beberapa kasus,
sinyal berhubungan dengan data-data yang berasal dari alam seperti:
gelombang audio, gelombang radio, getaran gempa bumi (seismic vibrations),
proses kimia, intensitas cahaya, potensial listrik, gambar (visual images) dan
sebagainya. Sinyal-sinyal tersebut dapat didefinisikan dengan suatu fungsi
yang jelas dan beberapa juga tidak dapat dilihat hubungan fungsi secara nyata
dan sangat komplek. Contohnya sinyal suara manusia. Sinyal suara manusia
termasuk dalam audio frekuensi dapat dituliskan sebagai fungsi penjumlahan
dari beberapa gelombang sinus dengan amplitudo yang berbeda.
∑
Suatu sinyal mempunyai beberapa jenis informasi yang dapat diamati
misalnya amplitudo, frekuensi, perbedaan fase, dan gangguan noise. Sinyal
listrik
dapat direpresentasikan sebagai getaran yang dinyatakan dalam
tegangan dan arus. Sinyal dapat direpresentasikan sebagai beberapa
gelombang seperti gambar berikut.
Gambar 2. Gelombang sinus
Sinyal tersebut dapat diamati secara langsung dengan peralatan ukur
elektronik seperti osiloskop dan spektrum analyser yang memanfaatkan
model matematik dari sinyal tersebut.
8
Sinyal dikelompokkan menjadi 2 (dua) jenis, yaitu sinyal analog
(continue) dan sinyal diskrit (digital). Sinyal yang berasal dari alam
kebanyakan merupakan sinyal analog, contohnya sinyal listrik yang dapat
direpresentasikan sebagai getaran. Pada umumnya sinyal dinyatakan dalam
bentuk tegangan dan arus. Persamaan umum sebuah sinyal analog dinyatakan
dalam persamaan berikut.
Untuk memperoleh sinyal digital dari sinyal analog diperlukan proses
sampling atau pencuplikan. Frekuensi sampling (Fs) harus memenuhi
Kriteria Nyquist:
dengan Fmax adalah frekuensi tertinggi yang akan dilakukan proses
sampling . Frekuensi sampling yang lebih rendah dari Kriteria Nyquist akan
menyebabkan tidak tercupliknya sinyal informasi secara penuh (utuh). Gejala
ini disebut dengan aliasing. Hasil sampling sinyal ini disebut sinyal digital
yang dapat dibaca dan diproses oleh sistem digital (Digital Signal
Prosessing ).
Gambar 3. Sampling sinyal
x(t)
Processor
(a)
y(t)
y(n)
x(n)
x(t)
A/D
Processor
D/A
(b)
Gambar 4. (a) Diagram blok pengolahan sinyal analog (conventional)
(b) Diagram blok pengolahan sinyal digital (DSP)
y(t)
9
Sinyal sinusoidal analog dan digital dapat dituliskan secara matematik
berikut:
untuk sinyal analog
untuk sinyal digital
C. Frekuensi Audio
Frekuensi audio atau frekuensi suara adalah getaran frekuensi yang dapat
didengar oleh manusia dengan jangkauan frekuensi antara 20 Hz sampai 20
kHz. Sinyal audio dapat berasal dari peralatan penghasil frekuensi audio
(AFG = Audio Frekuensi Generator) dan peralatan elektronik lainnya seperti
radio, televisi, dan perangkat pemutar musik lain yang memproses frekuensi
audio. Karena jangkauan frekuensi audio dari 20 Hz – 20 kHz maka
bandwidth yang diperlukan oleh sebuah peralatan pemroses frekuensi audio
lebih besar dari frekuensi 20 kHz atau dua kali lebih besar dari frekuensi
maksimum (DSP) sehingga informasi dapat diproses dengan sempurna.
D. DC Prosesor
1. Amplifier LM386
Amplifier
LM386 sebagai penguat sinyal audio yang hanya
memerlukan tegangan suplai yang rendah dan penguatannya mencapai 20
sampai 200 kali dengan menambahkan kapasitor diantara kaki 1 dan kaki
8. Penguat ini dapat diaplikasikan untuk beberapa peralatan elektronika
seperti: penguat radio AM-FM, intercom, tape player , line driver , penguat
motor servo , power converter . Berikut adalah gambar rangkaian
ekuivalen dan kaki-kaki LM386.
Gambar 5. Rangkaian ekuivalen dan kaki-kaki LM386
10
Rangkaian amplifier LM386 dapat beroperasi pada tegangan terendah
4V sampai tegangan tertinggi 12V dan bandwidth (BW) pada tegangan
catu 6V sebesar 300 kHz jika kaki 1 dan kaki 8 terbuka atau tanpa
kapasitor. Gambar berikut adalah skema rangkaian lengkap amplifier
LM386 dan perbandingan penguatan tegangan dan lebar frekuensi.
Gambar 6. Grafik perbandingan penguatan dan frekuensi
Gambar 7. Skema rangkaian amplifier LM386 penguatan 200
2. Penggeser Level
Pengeser level merupakan rangkaian penggeser level tegangan dengan
batas penggeseran dari -2,5V sampai +2,5V. Rangkaian penggeser level
tegangan terdiri dari 2 (dua) buah resistor seperti pembagi tegangan
(voltage divider ).
11
Gambar 8. Skema rangkaian penggeser level tegangan
Tegangan Vin/Vout disebut dengan Vlevel berkisar antara -2,5v
sampai +2,5V maka sinyal input akan dapat digeser antara 0V sampai 5V.
Sinyal dapat begeser dari level negatif ke level positif berdasarkan pada
sifat-sifat sinyal analog berikut:
dengan a adalah Vlevel = 2,5V dan b adalah Vinput = -2,5V sampai
+ 2,5V. Fungsi menggeser/menaikkan level tegangan sinyal input adalah
agar sinyal input dapat disampling sesuai dengan jangkauan ADC (analog
to digital converter) pada processor pengolah sinyal.
(V)
(V)
Tegangan masukan (vin)
sebelum penggeser level
Tegangan keluaran (vout)
setelah penggeser level
5
2.5
(t)
0
-2.5
2.5
(t)
0
Gambar 9. Grafik sinyal sebelum dan sesudah penggeser level
E. Filter Pasif Analog (LPF)
Filter analog berfungsi untuk melewatkan sinyal analog tertentu dan
meredam sinyal analog tertentu sesuai dengan karakteristik dari sebuah filter
tersebut. LPF ( Low Pass Filter ) adalah sebuah filter yang melewatkan sinyal
frekuensi rendah dan meredam sinyal frekuensi tinggi. LPF analog pasif dasar
12
terdiri dari sebuah resistor dan kapasitor yang dirangkai seperti volta ge
divider seperti gambar berikut.
Gambar 10. Skema rangkaian dasar LPF
(Vo)
LPF ideal
LPF praktis
Jangkauan frekuensi
yang diredam
Jangkauan frekuensi
yang dilewatkan
Frekuensi
Gambar 11. Grafik LPF perbandingan tegangan dan frekuensi
Rangkaian dari Gambar 10 adalah filter pasif yang umum digunakan.
Penyaringan dilakukan oleh RC, dan OPAMP digunakan sebagai penguat
sinyal. Pada dasarnya rangkaian RC tersebut merupakan sebuah pembagi
tegangan dimana Vout = Vc, dimana
semakin tinggi nilai f (frekuensi) atau mendekati tak hingga berarti
= 0. Sedangkan fc (frekuensi cutoff) dihitung dari
, dengan
13
F. Pengolahan Sinyal Digital
1. Analog to Digital Converter
Analog to Digital Converter (ADC) adalah rangkaian/piranti yang
berfungsi untuk mengubah atau mengkonversi data sinyal analog menjadi
data sinyal digital. Spesifikasi ADC yang perlu menjadi perhatian seperti
ketelitian, linearitas, resolusi, kecepatan konversi, stabilitas, harga
komponen, batas tegangan input, output kode digital, teknik interfacing ,
multiplexer
internal, pengkondisi
sinyal dan memori. (Rachmad
Setiawan, 2008).
Resolusi menyatakan tegangan input yang dibutuhkan untuk
menaikkan output ADC antara suatu kode dengan kode berikutnya.
Misalnya sebuah ADC dengan 10 bit maka resolusinya 1/1024 full scale .
Differential Non-Linearity (DNL) adalah nilai penyimpangan maksimum
pada lebar kode praktis dari lebar kode idealnya. Integral Non-Linearity
adalah maksimal simpangan dari transisi praktis dibandingkan dengan
transisi ideal untuk semua kode. Waktu konversi adalah waktu yang
diperlukan ADC untuk melakukan satu kali konversi.
Beberapa jenis ADC yang digunakan dalam pengolah sinyal digital
yaitu Flash ADCs (Parallel), Successive approximation ADCs, Counting
ADCs, dan Integrating ADCs.
Flash ADCs adalah jenis ADC tercepat dalam waktu konversi dan
dapat digunakan untuk sampling rates yang tinggi. ADC dengan
konverter parallel atau flash ADC menggunakan 2 n – 1 komparator.
Successive
Approximation
ADCs
atau
disebut
Successive
Approximation Register (SAR) converter. ADC jenis ini sangat cepat
tetapi tidak secepat Flash ADCs. Kelebihan lain ADC ini mudah dalam
perancangannya dan sangat murah untuk rata-rata perancangan resolusi
(bit) yang tinggi.
Counting ADCs atau pencacah ADC adalah konverter yang
rancangannya sama dengan SAR tetapi control logic dan register
menggunakan pencacah yang lebih sederhana.
14
Gambar 12. Skema rangkaian Flash ADCs (James D.Broesch, 2009:20)
Gambar 13. Blok diagram Successive Approximation ADCs (James
D.Broesch, 2009:21)
Integrating ADCs adalah jenis ADC yang konversinya tidak langsung,
pertama konversi sebagai fungsi waktu kemudian kefungsi digital dengan
menggunakan sebuah pencacah. Pencacah jenis ini memungkinkan
konversi cukup lama. (Rachmad Setiawan, 2008)
15
2. Kuantisasi
Kuantisasi adalah proses untuk mengubah dari sinyal diskrit bernilai
kontinyu menjadi sinyal diskrit. Nilai setiap sinyal hasil sampling diwakili
oleh suatu nilai yang telah ditentukan. Dengan adanya suatu nilai yang
ditentukan/terhingga, maka akan menyebabkan terjadinya suatu galat
(error ) yang disebut galat kuantisasi (quantization error ) atau derau
kuantisasi (quantization noise ). Sinyal hasil kuantisasi dari sinyal diskrit
x(n) sebagai Q[x(n)] dan
adalah sinyal hasil kuantisasi, maka:
Galat kuantisasi adalah
yang merupakan selisih antara nilai hasil
kuantisasi dengan nilai asalnya, maka
. Dalam
pengolahan sinyal digital kuantisasi menggunakan nilai biner, contohnya
nilai kuantisasi pada interval N adalah
N = 2n
dimana n adalah panjang dari nilai biner tersebut. Nilai biner ini berkaitan
dengan resolusi pada ADC misalnya dengan n = 8 bit maka N = 256.
3. Fast Fourier Transform (FFT)
Fast Fourier Transform (FFT) adalah algoritma Transformasi Fourier
merupakan pengembangan dari algoritma Discrete Fourier Transform
(DFT).Transformasi Fourier adalah transformasi yang digunakan untuk
mengubah data sinyal dari daerah waktu (time domain) menjadi daerah
frekuensi (frequency domain). Transformasi Fourier Waktu Diskrit
(DTFT) dari x(n) dapat didefinisikan sebagai :
∑
dan Transformasi Fourier Diskrit (DFT) dari x(n) dapat didefinisikan
sebagai :
∑
16
dimana nilai bilangan kompleks dalam Rumus Euler ejθ = cosθ + j sinθ
dan bentuk polar dari x(k) adalah :
Magnitude: │X(k)│ = √
Phase: θ(k) = tan-1
Algoritma Fourier cepat atau FFT merupakan algoritma yang saat ini
banyak digunakan karena metode komputasi DFT yang lebih efisien
sehingga mempercepat proses perhitungan. Bila diterapkan dalam
kawasan waktu maka FFT juga disebut FFT DIT (Decimation In Time)
yaitu proses pembagian atau penipisan sinyal menjadi bagian yang lebih
kecil sehingga komputasi dapat lebih cepat. Perbandingan operasi
perkalian dari DFT dan FFT dapat dilihat dalam proses berikut (Harlianto
Tanudjaja, 2007).
DFT
FFT
Operasi perkalian bilangan kompleks sebanyak N 2
Operasi penjumlahan sebanyak N(N-1)
Menggunakan proses komputasi N/2
Tabel 1. Perbandingan komputasi DFT dan FFT (Embree, Paul M,
1995:31)
Transform Length (N)
DFT Operation (N2 )
8
64
24
16
256
64
32
1024
160
64
4096
384
128
16384
896
256
65536
1024
512
262144
4608
1024
1048576
10240
2048
4194304
22528
FFT Operation N
Algoritma FFT diperoleh dari persamaan DFT yang dimodifikasi
dengan mengelompokkan batas n ganjil dan batas n genap, Sehingga N
point DFT menjadi (N/2) point. Dimana
DFT menjadi
maka persamaan
17
∑
dibagi batasnya menjadi bagian genap dan ganjil pada domain waktu dan
domain frekuensi maka persamaan menjadi
∑
∑
merupakan persamaan FFT radix-2 Decimation In Time (DIT) yang mana
deretan data bagian genap dan ganjil menjadi dua DFT N/2 data (Sugeng
Riyanto, 2009).
Algoritma FFT dapat direpresentasikan dalam bentuk diagram untuk
mempermudah dalam perhitungan. Algoritma ini disebut dengan diagram
kupu-kupu (Butterfly) pada Gambar 14. Data masukan ke diagram kupukupu tersebut merupakan data yang sudah melalui proses pembalikan bit
(Bit-Reversal) melalui proses DIT. Pada masing-masing kupu-kupu
mengandung proses perkalian kompleks (N complex multiplication) yaitu
memungkinkan komputasi menjadi lebih cepat dari N 2 pada
N/2
DFT.
Dengan proses DIT tersebut, maka data hasil komputasi akhir
mempunyai urutan yang sesuai. Tabel 2 berikut menunjukkan data
masukkan disusun ulang.
Tabel 2. Pembalikan Bit (Nandra Pradipta, 2011)
Data yang telah disusun ulang (genap dan ganjil) melalui algoritma
diagram kupu-kupu data akan diurutkan kembali.
18
Gambar 14. Diagram kupu-kupu (butterfly) untuk DFT 8-point (Nandra
Pradipta, 2011)
Menurut Nandra Pradipta (2011), perancangan algoritma FFT ada
beberapa tahapan yaitu:
1. Data sinyal masukan (input) menggunakan Bit-reversal atau
pembalikan bit.
2. Komputasi FFT sebanyak N-point menggunakan algoritma kupukupu.
3. Melakukan pemisahan antara data ganjil dan genap
4. Perhitungan data sinyal keluaran akhir
4. Algoritma FFT Tom Roberts
Algoritma FFT merupakan algoritma dengan komputasi yang sangat
kompleks. Pengembangan algoritma ini telah banyak diaplikasikan pada
perangkat keras seperti microprocessor dan embedded microcontroller .
Pengembang algoritma FFT ditulis oleh Tom Roberts dengan Bahasa
Pemrograman C dan oleh Simon Inns yang diaplikasikan pada
microcontroller PIC18F4550.
19
Algoritma FFT Tom Roberts merupakan algoritma
FFT 16-Bit.
Untuk komputasi FFT (domain waktu ke domain frekuensi), algoritma
mempunyai batasan nilai tetap (fixed-scaling) 16-bit data dari
– 32768
sampai + 32768 yang mewakili nilai – 1,0 sampai + 1,0 untuk mencegah
terjadinya overflow. Algoritma FFT ini merupakan algoritma FFT Radix2 DIT dengan N complex multiplications sebesar 1024.
(http://www.jjj.de/fft/fftpage.html)
G. Mikroprosesor Pengolah Sinyal Digital
1. Conventional Microprocessor
Conventional microprocessor menggunakan arsitektur Von Neumann
dimana hanya terdapat sebuah bus untuk transfer data dan intruksi
diantara memori luar dan prosesor. Setiap microprocessor terdapat tiga
bagian bus yaitu: bus data, bus alamat (address) dan bus kendali (control).
Pada banyak kasus, sistem bus digunakan untuk operasi I/O. Proses
pengolahan sinyal yang lebih kompleks sistem bus akan mengalami
bottleneck. Processor dapat dipercepat kinerjanya dengan menambahkan
cache memory. Memori ini dapat diakses untuk proses transfer data pada
sistem bus sehingga untuk pengolahan sinyal lebih efisien. Execution unit
(EU) pada konvensional microprocessor terdiri dari Aritmatic Logic Unit
(ALU), Multiplier, Shifter, Floating Point Unit (FPU) dan beberapa data
dan Flag Regiter. Dalam pengolahan sinyal digital diperlukan operasi
MAC (Multiply and Accumulate) yang dalam processor ini menggunakan
general purpose data register.
Gambar 15. Diagram blok sistem bus arsitektur Von Neumann
20
Perkembangan saat ini banyak processor yang memiliki sistem CISC
(Complex Instruction Set Computer) dan RISC (Reduce Intruction Set
Computer) dengan eksekusi program lebih cepat yaitu sebagian besar
instruksi dieksekusi dalam 1 (satu) siklus clock. Konvensional
microprocessor yang bukan general purpose microprocessor memerlukan
banyak perangkat tambahan luar seperti hardware konverter A/D dan
D/A, konverter interface seperti SPI, I2C yang masih mengggunakan
komunikasi parallel.
2. DSP Microprocessors
DSP (Digital Signal Processors) menggunakan arsitektur Harvard
dan beberapa modifikasi dari arsitektur ini. Pada arsitektur Harvard
paling sedikit mempunyai dua sistem bus, satu untuk intruksi dan satu
untuk data. Tetapi dalam DSP dapat kita temukan tiga sistem bus yaitu
intruksi, transfer data (I/O), dan transfer coefficient untuk memori yang
terpisah. Untuk melaksanakan komputasi pengolahan sinyal digital hanya
diperlukan 12 bus cycles mencakup intruksi dan data transfer. Beberapa
chip DSP memiliki memori unternal yang dialokasikan untuk data
memory¸coeficient memory atau instruction memory.
Gambar 16. Diagram blok sistem bus arsitektur Harvard
Unit eksekusi terdiri dari sedikitnya satu (atau dua) ALU, multiplier,
Shifter, dan data dan register flag. Unit ini didesain parallel sehingga bisa
21
bekerja secara serentak. Kebanyakan DSP telah dilengkapi dengan LUT
(Look-Up Table) pada ROM. Tabel ini dilengkapi dengan array sin/cosin
untuk FFT. Microprocessor DSP dibangun untuk komunikasi serial yang
super cepat. Port serial secara langsung dapat dikoneksikan ke perangkat
coder dan decoder atau A/D dan D/A.
H. Mikrokontroler ATmega32
1. Mikrokontroler AVR
Mikrokontrol adalah prosesor kecil dan digunakan untuk aplikasi
khusus
dari
Mikrokomputer
atau
Komputer.
Perbedaan
antara
mikrokomputer dan mikrokontrol adalah kecepatan mikrokomputer
mencapai 2 GHz sedangkan mikrokontrol hanya sebatas 8 MHz – 40
MHz, mikrokontrol hanya menjalankan program yang tersimpan dalam
ROM yang bersifat non-volatile
(tetap tersimpan walupun tidak ada
sumber daya), RAM mikrokomputer sampai ukuran Mbyte sedangkan
mikrokontrol hanya berukuran sangat kecil 128 byte, 256 byte, 2Kbyte
dan seterusnya, dan mikrokomputer merupakan general purpose
computer (komputer serbaguna) sedangkan mikrokontrol merupakan
special purpose computer (komputer dengan tujuan khusus).
(http://agfi.staff.ugm.ac.id/blog/index.php/2008/11/apakahmikrokontroler-itu/ )
Mikrokontroler AVR adalah mikrokontrol sistem RISC 8 bit
berdasarkan arsitektur Harvard buatan Atmel. AVR ( Advance Versatile
RISC atau Alf and Vegard’s RISC Processor ) memiliki kecepatan
eksekusi program yang lebih cepat karena sebagian besar instruksi
dieksekusi dalam 1 siklus clock dibandingkan dengan mikrokontrol
MCS51 dengan arsitektur CISC yang membutuhkan 12 siklus clock untuk
1 instruksi. (Heri Andrianto: 2008).
2. Arsitektur Mikrokontroler ATmega32
Arsitektur mikrokontroler AVR menggunakan arsitektur Harvard
dengan memisahkan antara memori dan bus untuk program dan data
22
untuk memaksimalkan kecepatan. Proses instruksi dalam memori
program dieksekusi dengan pipelining single level. Ketika satu instruksi
dieksekusi, instruksi berikutnya diambil dari memori program. Dengan
proses ini instruksi dapat dieksekusi setiap clock cycle.
Gambar 17. Arsitektur Harvard mikrokontrol AVR
3. Fitur ATmega32
Keluarga
AVR memiliki bermacam-macam fitur yang dapat
digunakan oleh programmer dan desainer untuk mengembangkan
berbagai sistem kontrol. Fitur fitur ATmega32 adalah sebagai berikut:
a. Mikrokontroler AVR 8 bit daya rendah dengan kemampuan kinerja
tinggi.
b. Arsitektur RISC dengan kecepatan prosesor mencapai 16 MIPS
(Million Instruction Per Second ) pada frekuensi kristal 16 MHz.
c. Memiliki kapasitas memori non-volatile seperti Flash memori 32
Kbyte, EEPROM kapasitas 1024 byte dan SRAM kapasitas 2 Kbyte
d. Antarmuka JTAG yang berfungsi untuk akses debugger ke unit
perangkat internal dan eksternal RAM, file internal register, program
counter, EEPROM dan memori flash, juga digunakan dalam
memprogram memori flash, EEPROM, Fuses dan Lock bit.
23
e. Fitur Per ipheral
1) 2 buah timer/counter 8 bit
2) Sebuah timer/counter 16 bit
3) Real time counter dengan osilator yang terpisah
4) 4 buah channel PWM
5) 8 buah channel, 10 bit ADC
6) Byte-oriented Two wire Serial Interface
7) Programmable serial USART
8) Antar muka serial SPI
9) Wacthdog Timer dengan osilator internal
10) On-chip Analog Comparator
f. Saluran I/O (Input/Output) berjumlah 32 buah yaitu PORTA, PORTB,
PORTC, dan PORTD
g. Tegangan operasi mikrokontrol ATmega32L sebesar 2,7V – 5,5V
dengan osilator kristal maksimal 8 MHz, untuk ATmega32 sebesar
4,5V – 5,5V dengan osilator kristal sebesar 16 MHz.
4. Konfigurasi Pin ATmega32
ATmega32 memiliki 40 buah pin/kaki, dimana 32 pin tersebut adalah
berfungsi sebagai jalur I/O dan fungsi khusus yang dapat berkomunikasi
dari dan menuju mikrokontroler tergantung dari inisialisasi register di
dalamnya. Berikut ini adalah susunan kaki-kaki dari ATmega32 pada
kemasan PDIP ( Plastic Dual Inline Package ).
a. VCC adalah pin masukan catu daya positif
b. GND adalah pin ground dari catu daya
c. PORTA – PORTD merupakan jalur input/output dua arah yang dapat
d
MIKROKONTROLER ATmega32
PROYEK AKHIR
Diajukan kepada Fakultas Teknik Universitas Negeri Yogyakarta
Untuk Memenuhi Sebagian Persyaratan
Guna Memperoleh Gelar Ahli Madya
Oleh :
I Wayan Rentanu
08502241011
JURUSAN PENDIDIKAN TEKNIK ELEKTRONIKA
FAKULTAS TEKNIK
UNIVERSITAS NEGERI YOGYAKARTA
2012
LEMBAR PERSETUJUAN
PROYEK AKHIR
AUDIO SPECTRUM ANALYSER MENGGUNAKAN
MIKROKONTROLER ATmega32
Oleh :
I Wayan Rentanu
08502241011
Telah Diperiksa dan Disetujui oleh Pembimbing
untuk Diuji
Yogyakarta,
Januari 2012
Mengetahui,
Menyetujui,
Kaprodi Pendidikan Teknik Elektronika
Pembimbing Proyek Akhir
Handaru Jati, Ph.D
NIP. 19740511 199903 1 002
Aris Nasuha, M.T.
NIP. 19690615 199403 1 002
ii
LEMBAR PENGESAHAN
Proyek akhir berjudul “Audio Spectrum Analyser Menggunakan Mikrokontroler
ATmega32” ini telah dipertahankan di depan dewan penguji pada tanggal
.....…………2012 dan dinyatakan lulus.
DEWAN PENGUJI
Nama
Jabatan
Tanda Tangan
Aris Nasuha, M.T.
Ketua Penguji
…………………………
Muhammad Munir, M.Pd.
Sekretaris Penguji
…………………………
Totok Sukardiyono, M.T.
Penguji Utama
…………………………
Yogyakarta,
Januari 2012
Mengetahui,
Dekan Fakultas Teknik UNY
Dr. Moch. Bruri Triyono
NIP. 19560216 198603 1 003
iii
LEMBAR PERNYATAAN
Dengan ini saya menyatakan dalam Proyek Akhir ini tidak terdapat karya yang
pernah diajukan untuk memperoleh gelar Ahli Madya atau gelar lainnya di suatu
Perguruan Tinggi, dan sepanjang pengetahuan penulis juga tidak terdapat karya
atau pendapat yang pernah ditulis oleh orang lain, kecuali secara tertulis diacu
dalam naskah dan disebutkan dalam daftar pustaka.
Yogyakarta,
Januari 2012
Yang menyatakan,
I Wayan Rentanu
(NIM. 08502241011)
iv
MOTTO DAN PERSEMBAHAN
MOTTO
“Berani Menantang Keyakinan Untuk Menciptakan Sejarah”
(Myselft)
“Lakukanlah tugas kewajibanmu yang telah ditetapkan, sebab melakukan
demikian lebih baik daripada tidak bekerja. Seseorang tidak dapat memelihara
badan jasmaninya pun tanpa bekerja”
(Bhagawad Gita III.8)
“Setiap pikiranmu adalah hal yang nyata -suatu daya”
(The Sekret,Prentice J wlford, 1834-1891)
“Apa pun yang dapat dipikir akal…akan dapat dicapai.”
(The Sekret, W.Glement Stone, 1902-2002)
PERSEMBAHAN
Proyek akhir ini Saya persembahkan kepada :
Bapak, Ibu, adik-adik dan seluruh keluarga besar atas doa dan dukungan yang
sangat membangun.
Saudara -saudaraku yang selalu menemani
Rekan-rekan sahabat Kelas A 2008 PT Elektronika FT UNY.
Terimakasih atas dukungan, bantuan, inspirasi dan semangatnya dalam
penyelesaihan Proyek Akhir ini.
DPO HIMANIKA FT UNY 2011
(Hari Nurcahyo, Faiq Arbor, Galuh Tuhu, Ito Dwi Adha, Ardian Tiyastono, Rivai,
Masrur (Jon), Endri Sujatmiko, Bayu, Anggi, Esti, Ena Kharismaya, Deti)
“Salam HIMANIKA…., Kita ada karena kontribusi”
KMHD UNY
Sahabat semua Keluarga Mahasiswa Hindu Dharma UNY, terimakasih atas
inspirasi dan doanya.
Pembina KMHD UNY Bpk Putu Sudira yang selalu memotivasi untuk semangat
belajar dan segera lulus.
v
Audio Spectrum Analyser Mengunakan Mikrokontroler ATmega32
Oleh : I Wayan Rentanu
NIM : 0850224101
ABSTRAK
Tujuan pembuatan alat ini adalah untuk merancang perangkat keras,perangkat
lunak dan mengetahui unjuk kerja sistem Audio Spectrum Analyser menggunakan
mikrokontroler ATmega32.
Rancang bangun Audio Spectrum Analyser terdiri dari beberapa bagian
pendukung sistem perangkat keras yaitu rangkaian mixer sinyal, Low Pass Filter,
pengkondisi sinyal LM386, mikrokontroler ATmega32 sebagai prosesor utama,
tombol pengaturan dengan push button, tampilan LCD grafik 128 x 64 pixel dan
rangkaian pengisi program prosesor utama. Perancangan perangkat lunak sebagai
pengendali program pada mikrokontroler ATmega32 menggunakan bahasa C dan
program compiler CodeVisionAVR. Algoritma program terdiri dari program
utama dan 5 (lima) buah sub program yaitu sub program ADC, sub program
komputasi FFT, sub program komputasi magnitude spektrum, sub program
tampilan grafik spektrum dan tampilan bentuk gelombang pada LCD grafik 128 x
64 pixel.
Hasil pengujian alat Audio Spectrum Analyser dengan masukan sinyal
frekuensi tunggal dan sinyal frekuensi campuran untuk nilai frekuensi yang
bervariasi, alat dapat menampilkan bentuk spektrum dan besaran frekuensi
dengan bandwidth 20 Hz – 16 kHz. Alat ini terdiri dari 3 masukan sinyal dan
mempunyai rerata persentase kesalahan pengukuran sebesar 3,17 %.
Kata kunci : Mikrokontroler ATmega32, Audio Spectrum Analyser
vi
KATA PENGANTAR
Segala puja dan puji syukur penulis panjatkan kehadirat Ida Sang Hyang
Widhi Wasa / Tuhan Yang Maha Esa atas segala asung kerta wara nugraha beliau
penulis dapat menyelesaikan laporan proyek akhir ini dengan judul ” Audio
Spectrum Analyser Menggunakan Mikrokontroler ATmega32”. Pembuatan
Proyek Akhir sebagai syarat untuk memperoleh gelar Ahli Madya Fakultas
Teknik Universitas Negeri Yogyakarta.
Penulis menyadari sepenuhnya keberhasilan Proyek Akhir ini tidak lepas dari
bantuan berbagai pihak, baik itu secara langsung mapun tidak langsung. Dengan
kerendahan hati, pada kesempatan ini penulis mengucapkan rasa terimakasih
yang sebesarnya kepada :
1. Bapak Dr. Moch Bruri Triyono selaku Dekan Fakulatas Teknik
Universitas Negeri Yogyakarta
2. Bapak Muhammad Munir, S.Pd selaku Ketua Jurusan Pendidikan Teknik
Elektronika Fakultas Teknik Universitas Negeri Yogyakarta
3. Bapak Aris Nasuha, M.T selaku Dosen Pembimbing Proyek Akhir
4. Orang Tua yang telah memberikan kesempatan untuk menggapai cita-cita
5. Para Dosen, Teknisi Lab, dan Staff Jurusan Pendidikan Teknik Elektronika
yang telah memberikan bantuan sehingga terselesaikannya Proyek Akhir
ini.
6. Seluruh
teman-teman
mahasiswa
Pendidikan
Teknik
Elektronika
Universitas Negeri Yogyakarta dan Himpunan Mahasiswa Elektronika dan
Informatika yang telah memberikan bantuan dan semangatnya
7. Seluruh mahasiswa pengurus Keluarga Mahasiswa Hindu Dharma yang
yang memberikan inspirasi-inspirasi yang membangun
8. Semua pihak yang telah membantu Proyek Akhir ini
vii
Penulis menyadari dalam pembuatan Proyek Akhir ini masih jauh dari
sempurna. Oleh karena itu saran dan kritik yang sangat membangun sangat
dibutuhkan guna menyempurnakan laporan Proyek Akhir ini . semoga Proyek
Akhir ini dapat memberikan manfaat bagi siapa saja yang membacanya.
Yogyakarta, Januari 2012
Penulis
viii
DAFTAR ISI
Halaman
HALAMAN JUDUL .........................................................................
i
LEMBAR PERSETUJUAN ............................................................
ii
LEMBAR PENGESAHAN ...............................................................
iii
LEMBAR PERNYATAAN KEASLIAN KARYA .........................
iv
MOTTO DAN PERSEMBAHAN ...................................................
v
ABSTRAK ..........................................................................................
vi
KATA PENGANTAR ........................................................................
vii
DAFTAR ISI ......................................................................................
ix
DAFTAR TABEL
............................................................................
xii
DAFTAR GAMBAR .........................................................................
xiii
DAFTAR LAMPIRAN .....................................................................
xvi
BAB I
BAB II
PENDAHULUAN
......................................................
1
A. Latar Belakang .......................................................
1
B. Identifikasi Masalah ................................................
3
C. Batasan Masalah .....................................................
4
D. Rumusan Masalah .................................................
4
E. Tujuan ....................................................................
5
F. Manfaat ..................................................................
5
G. Keaslian Gagasan ...................................................
6
LANDASAN TEORI ....................................................
6
A. Spectrum Analyser ..................................................
6
B. Sinyal ........................................................................
7
C. Frekuensi Audio .......................................................
9
D. DC Prosesor
9
..........................................................
E. Filter Pasif Analog (LPF) .......................................
11
F. Pengolahan Sinyal Digital ......................................
13
G. Mikroprosesor Pengolah Sinyal Digital .................
19
H. Mikrokontroler ATmega32 ....................................
21
ix
BAB III
BAB IV
I.
Downloader ATmega8 ...........................................
29
J.
Grafik LCD 128 x 64 pixel .....................................
30
K. Mixer Sinyal Analog ..............................................
31
L. Bahasa C ..................................................................
32
M. Perangkat Lunak CodeVisionAVR ........................
33
PERANCANGAN DAN PEMBUATAN ALAT ......
36
A. Identifikasi Kebutuhan ...........................................
36
B. Analisis Kebutuhan .................................................
36
C. Blok Diagram Rangkaian ......................................
37
D. Perancangan dan Rangkaian ................................
38
E. Langkah Pembuatan Alat
....................................
41
F. Diagram Alir Program ...........................................
43
G. Perancangan Program ............................................
46
PENGUJIAN DAN PEMBAHASAN ........................
48
A. Pengujian .................................................................
48
1.
Pengujian Perbagian ........................................
a.
Pengujian rangkaian penguat LM386
dan LPF pasif.............................................
48
b.
Pengujian penggeser level tegangan ........
49
c.
Pengukuran tegangan referensi (Vref)
dan Vcc
2.
48
mikrokontroler, dan Vcc
LM386 .......................................................
50
Pengujian Keseluruhan ....................................
50
a.
Pengukuran frekuensi dengan
satu sinyal masukan ..................................
b.
Pengukuran frekuensi dengan
3 sinyal masukan ......................................
c.
d.
50
54
Pengukuran frekuensi dengan
sinyal acak ..............................................
56
Pengukuran bentuk gelombang sinus ......
58
x
B. Pembahasan .............................................................
1.
58
Analisis tegangan referensi (Vref) dan Vcc
mikrokontroler, dan Vcc LM386 .....................
58
2.
Analisis penggeser level tegangan...................
59
3.
Analisis rangkaian penguat LM386
dan LPF pasif ....................................................
59
Analisis keseluruhan kerja sistem ...................
59
KESIMPULAN DAN SARAN ....................................
62
A. Kesimpulan ..............................................................
62
B. Kelemahan Alat ......................................................
62
C. Saran ........................................................................
63
DAFTAR PUSTAKA ..........................................................................
64
LAMPIRAN .........................................................................................
66
4.
BAB V
xi
DAFTAR TABEL
Halaman
Tabel 1. Perbandingan komputasi DFT dan FFT …………… ...................... 15
Tabel 2. Pembalikan Bit ………………………………................................. 16
Tabel 3. Fungsi khusus PORTB ………………………….. .......................... 23
Tabel 4. Fungsi khusus PORTC …………………………….. ...................... 23
Tabel 5. Fungsi khusus PORTD ……. ............................................................ 23
Tabel 6. Hasil pengukuran rangkaian penguat LM386 dan LPF pasif .......... 48
Tabel 7. Hasil pengukuran Vref dan Vcc mikrokontroler ............................. 50
Tabel 8. Perbandingan hasil pengukuran sinyal osiloskop
dan Audio Spectrum Analyser ............................................................ 60
Tabel 9. Perbandingan pengukuran dengan 100 sampel sinyal ...................... 61
xii
DAFTAR GAMBAR
Halaman
Gambar
1. Block diagram dari classic superheterodyne
spectrum analyzer ......................................................................... 6
Gambar a2. Gelombang sinus……………….............. ................................... 7
Gambar a3. Sampling sinyal ............................................................................. 8
Gambar a4. Diagram blok pengolahan sinyal analog dan digital ................... 8
Gambar a5. Rangkaian ekuivalen dan kaki-kaki LM386 ............................... 9
Gambar a6. Grafik perbandingan penguatan dan frekuensi ........................... 10
Gambar a7. Skema rangkaian amplifier LM386 penguatan 200.................... 10
Gambar a8. Skema rangkaian penggeser level tegangan ................................ 11
Gambar a9. Grafik sinyal sebelum dan sesudah penggeser level................... 12
Gambar 10. Skema rangkaian dasar LPF ........................................................ 12
Gambar 11. Grafik LPF perbandingan tegangan dan frekuensi ..................... 12
Gambar 12. Skema rangkaian Flash ADCs ..................................................... 14
Gambar 13. Blok diagram Successive Approximation ADCs ........................ 14
Gambar 14. Diagram kupu-kupu (butterfly) untuk DFT 8-point ................... 18
Gambar 15. Diagram blok sistem bus arsitektur Von Neumann .................... 19
Gambar 16. Diagram blok sistem bus arsitektur Harvard .............................. 20
Gambar 17. Arsitektur Harvard mikrokontrol AVR ...................................... 22
Gambar 18. Blok diagram ATmega32 ............................................................. 25
Gambar 19. Konfigurasi pins AVR ATmega32 .............................................. 25
Gambar 20. Diagram blok skema ADC ........................................................... 26
Gambar 21. Peta memori program AVR ATmega32...................................... 27
Gambar 22. Peta memori data AVR ATmega32 ............................................. 28
Gambar 23. Pembagian clock ATmega32 ....................................................... 29
Gambar 24. Skema rangkaian Downloader ATmega8 AVRISP MKII ......... 30
Gambar 25. GLCD tipe WG12864C-TMI VN................................................ 31
Gambar 26. Skema rangkaian mixer sinyal analog ......................................... 32
Gambar 27. Tampilan IDE CodeVisionAVR versi 2.05.3 ............................. 34
xiii
DAFTAR GAMBAR
Halaman
Gambar 28. Automatic Program Generator yang digunakan untuk
menginisialisasi beberapa pustaka pada AVR ............................ 36
Gambar 29. Blok diagram Implementasi sistem Audio Spectrum Analyser. 37
Gambar 30. Skema rangkaian mixer 3 masukan ............................................. 38
Gambar 31. Skema rangkaian LPF cut-off 16 kHz ......................................... 38
Gambar 32. Skema rangkaian amplifier LM386 penguatan 200 kali ............ 38
Gambar 33. Skema rangkaian sistem minimum ATmega32 .......................... 39
Gambar 34. Skema rangkaian USB ISP .......................................................... 39
Gambar 35. Skema rangkaian push-botton ...................................................... 40
Gambar 36. Skema rangkaian LCD grafik 128 x 64 pixel.............................. 40
Gambar 37. Prosedur data_sampling_adc, proses
pengambilan sampel data ADC ................................................... 43
Gambar 38. Fungsi fix_fft (Tom Roberts.1989), proses komputasi FFT ....... 44
Gambar 39. Prosedur mendapatkan magnitude sinyal .................................... 45
Gambar 40. Prosedur menampilkan grafik spektrum LCD ............................ 45
Gambar 41. Prosedur menampilkan grafik spektrum LCD ............................ 46
Gambar 42. Respon frekuensi cut-off pada rangkaian LM386 dan LPF ....... 49
Gambar 43. Hasil pengukuran penggeser level tegangan ............................... 49
Gambar 44. Hasil pengukuran penggeser level tegangan
amplitudo maksimum ................................................................... 49
Gambar 45. Hasil pengukuran frekuensi rendah ............................................ 50
Gambar 46. Hasil pengukuran frekuensi menengah ...................................... 51
Gambar 47. Hasil pengukuran frekuensi tinggi .............................................. 52
Gambar 48. Hasil pengukuran frekuensi menengah ...................................... 53
Gambar 49. Hasil pengukuran tiga frekuensi pada osiloskop ........................ 54
Gambar 50. Hasil pengukuran tiga frekuensi pada Audio Spectrum
Analyser ...................................................................................... 55
Gambar 51. Hasil pengukuran 3 sinyal dengan amplitudo input
yang sama pada Audio Spectrum Analyser ................................. 56
xiv
DAFTAR GAMBAR
Halaman
Gambar 52. Tampilan pada Audio Spectrum Analyser
sebelum ditambahkan sinyal acak .............................................. 56
Gambar 53. Tampilan pada Audio Spectrum Analyser
setelah ditambahkan sinyal acak................................................. 57
Gambar 54. Hasil pengkuran pada Audio Spectrum Analyser
setelah ditambahkan sinyal acak frekuensi 7,869 kHz.............. 57
Gambar 55. Bentuk gelombang sinus
pada Audio Spektrum Analyser ................................................... 58
xv
DAFTAR LAMPIRAN
Halaman
Lampiran 1. Skema rangkaian Audio Spectrum Analyser .............................. 67
Lampiran 2. Layout PCB Audio Spectrum Analyser ....................................... 68
Lampiran 3. Tata letak komponen.................................................................... 69
Lampiran 4. Daftar komponen.......................................................................... 70
Lampiran 5. Listing program lengkap
Audio Spectrum Analyser bahasa C............................................ 71
Lampiran 6. Dokumentasi................................................................................. 97
Lampiran 7. Manual Operasi Audio Spectrum Analyser ................................ 100
Lampiran 8. Datasheet ATmega32................................................................... 104
Lampiran 9. Datasheet LM386 ......................................................................... 143
Lampiran 10. ATmega32Datasheet LCD 128x64 pixel ................................. 152
xvi
BAB I
PENDAHULUAN
A. Latar Belakang
Perkembangan
teknologi
khususnya
dalam
bidang
elektronika
mengalami kemajuan yang cukup pesat. Terlebih lagi kemajuan di bidang
elektronika yang sangat membantu pekerjaan manusia yang secara tidak
langsung dapat dikerjakan seperti pengukuran-pengukuran besaran listrik.
Hal ini dapat dilihat dari banyaknya perangkat pengukuran yang
menggunakan sistem elektronika, baik secara digital, mikrokontroler serta
mikroprosesor. Pengunaan sistem elektronika digital ini dimaksudkan untuk
mempercepat aktivitas kerja manusia.
Hadirnya perangkat keras (hardware) dan perangkat lunak (software)
adalah bukti perkembangan ilmu pengetahuan dan teknologi elektronika
digital. Salah satu diantaranya adalah bidang pengolahan sinyal digital.
Perkembangan dibidang ini dimulai dengan pesatnya kemajuan teknologi
digital dan mikrokomputer sehingga dimungkinkan implementasi teori-teori
pengolahan sinyal digital. Dalam pengolahan sinyal digital terdapat sub
bidang yang disebut analisa spektrum frekuensi yang disebut spectrum
analyser. Piranti ukur listrik spectrum analyser merupakan alat ukur yang
berfungsi untuk mengukur besaran frekuensi dan magnitude suatu sinyal.
Dalam perkembangannya spectrum analyser dapat mengukur frekuensi
lebih dari 1GHz seperti spectrum analyser tipe Rigol DSA1030A mampu
mengukur frekuensi hingga 3GHz (http://www.batronix.com). Dengan
kemampuannya tersebut, spectrum analyser Rigol DSA1030A harganya
sangat mahal, perangkatnya cukup berat untuk dibawa kemana-mana dan
dikhususkan untuk pengukuran Radio Frequency (RF) dan gelombang
mikro.
Mikrokontroler merupakan salah satu prosesor pengolah sinyal digital
yang digunakan dalam berbagai keperluan peralatan manusia. Mikrokontrol
1
2
merupakan teknologi semi konduktor yang didalamnya terdiri dari beriburibu transistor dan komponen lainnya dalam satu kepingan kecil (chip).
Fungsi dan tugas dari mikrokontrol ini sama seperti mikrokomputer (CPU)
tetapi perbedaannya mikrokontroler digunakan untuk aplikasi khusus
sehingga relatif lebih murah dibandingkan mikrokomputer.
ATmega32 adalah salah satu jenis mikrokontroler keluarga AVR (Alf
and Vegard Risc atau Advance Virtual - RISC) yang sekarang
dikembangkan oleh ATMEL. Beberapa keunggulan mikrokontroler AVR
dengan mikrokontrol lain yaitu memiliki kecepatan eksekusi program yang
lebih cepat karena sebagian besar instruksi dieksekusi dalam 1 (satu) siklus
clock
lebih cepat dibandingkan dengan mikrokontroler MCS51 yang
memiliki arsitektur CICS (Complex Instruction Set Compute). ATmega32
dengan flash memori 32 Kbytes, 1024 Bytes EEPROM, 2 Kbyte internal
SRAM dan fitur-fitur seperti Timer/Counter, PWM, 8 channel 10 Bit ADC,
USART, dan SPI (datasheet ATmega32) dengan fasilitas ini para desainer
dapat menggunakannya dalam berbagai aplikasi sistem elektronika seperti
robot, otomasi industri, sistem telekomunikasi contohnya sebagai pemroses
sinyal digital dan keperluan lainnya.
Mikrokontroler ATmega32 telah menggunakan bahasa pemrograman
tingkat tinggi yaitu bahasa C yang lebih mudah dimengerti dan dipahami
oleh manusia. Dengan memanfaatkan mikrokontroler ini sebagai piranti
pengolah sinyal digital dan mengimplementasikan algoritma pengolah
sinyal digital sebagai penganalisis sinyal maka pengembangan pengolahan
sinyal digital dapat lebih mudah dan cepat diantaranya sebagai analisa
spektrum frekuensi audio.
Pada saat ini kebutuhan akan piranti ukur spectrum analyser masih
relatif banyak terutama sebagai perangkat penunjang praktikum di
laboraturium sekolah maupun di kampus. Karena mahalnya harga piranti
ukur spectrum analyser sekolah-sekolah dan kampus belum banyak
menggunakan piranti ukur tersebut. Untuk menekan mahalnya harga alat
ukur spectrum analyser maka penggunaan mikrokontroler ATmega32
3
sebagai prosesor pengolah sinyal digital sangat cukup dan murah untuk
membangun suatu perangkat alat ukur audio spectrum analyser. Perangkat
ini selain relatif murah, ukuran perangkat lebih kecil dan ringan sehingga
memudahkan dalam penggunaan yang berpindah-pindah (portable) dan
diharapkan mampu menampilkan spektrum sinyal audio frequency.
Berdasarkan hasil pengamatan dari beberapa mahasiswa KKN (Kuliah
Kerja Nyata) di SMK TAV (Sekolah Menegah Kejuruan Teknik Audio
Video) di Daerah Istimewa Yogyakarta bahwa belum tersedianya alat ukur
Audio Spectrum Analyser, padahal alat tersebut dibutuhkan sebagai media
pembelajaran untuk menganalisis sinyal audio baik dalam perancangan
maupun perbaikan pesawat elektronika seperti Power Amplifier, TapeRadio Recorder, Tone Controler, dan sistem audio lainnya. Dengan adanya
suatu perangkat Audio Spectrum Analyser ini guru maupun siswa dapat
memanfaatkan teknologi yang jauh lebih murah, mudah dibawa kemanamana dan praktis untuk praktikum di sekolah-sekolah. Pemanfaatan analisa
spektrum ini pun sangat luas dan banyak membantu dalam bidang analisis
sinyal di industri khususnya bidang telekomunikasi, laboratorium praktikum
sekolah-sekolah dan kehidupan manusia pada umumnya.
Berdasarkan dari berbagai macam fakta keadaan seperti di atas, dengan
memanfaatkan mikrokontoler ATmega32 menggunakan pemrograman
bahasa C, maka dibuatlah perancangan dan pembuatan alat yang mampu
mengamati nilai besaran frekuensi yaitu “Audio Spectrum Analyser
Menggunakan Mikrokontroler ATmega32”. Sehingga dengan adanya alat
ini diharapkan lebih memudahkan dalam pengamatan dan analisis sinyal
digital yang frekuensinya bervariasi.
B. Identifikasi Masalah
Berdasarkan uraian di atas, permasalahan yang dapat diidentifikasi
adalah sebagai berikut:
1. Sinyal masukan mikrokontroler belum sesuai dengan kondisi sinyal
analog.
4
2. Mikrokontroler tidak mampu memproses sinyal frekuensi tinggi yang
dapat menyebabkan aliasing.
3. Penampil hasil pengukuran spektrum jarang digunakan dalam aplikasi
mikrokontroler.
4. Pemrograman mikrokontroler yang susah untuk komputasi pemrosesan
sinyal digital.
5. Audio Spectrum Analyser yang ada dipasaran belum terjangkau oleh
sekolah – sekolah.
C. Batasan Masalah
Berdasarkan beberapa pokok permasalahan yang telah dipaparkan dalam
identifikasi masalah, maka penulis membatasi ruang lingkup pembahasan
proyek akhir ini. Pembuatan proyek akhir berjudul “Audio Spectrum Analyser
Menggunakan Mikrokontroler ATmega32“ dengan batas frekuensi tertinggi
16 kHz, Mikrokontroler ATmega32 sebagai prosesor utama pengolah sinyal
digital menggunakan algoritma pemrograman FFT yang ditulis oleh Tom
Robert (1989) sehingga mendapatkan bentuk spektrum frekuensi pada
penampil LCD grafik 128 x 64 pixel secara realtimes.
D. Rumusan Masalah
Berdasarkan identifikasi masalah dan pembatasan masalah, dapat
dirumuskan beberapa masalah yaitu:
1. Bagaimana merealisasikan perangkat keras Audio Spectrum Analyser
menggunakan mikrokontroler ATmega32?
2. Bagaimana perangkat lunak pada mikrokontroler ATmega32, dan program
tampilan grafis spektrum frekuensi menggunakan penampil LCD Graphic
128 x 64 pixel?
3. Bagaimana unjuk kerja sistem Audio Spectrum Analyser Menggunakan
Mikrokontroler ATmega32?
5
E. Tujuan
1. Merealisasikan rancangan perangkat keras Audio Spectrum Analyser
Menggunakan Mikrokontroler ATmega32.
2. Merealisasikan perangkat lunak pada Mikrokontroler ATmega32,
dan
program tampilan grafis spektrum frekuensi menggunakan penampil LCD
Graphic 128 x 64 pixel.
3. Mendapatkan unjuk kerja sistem Audio Spectrum Analyser Menggunakan
Mikrokontroler ATmega32.
F. Manfaat
Dari pembuatan proyek akhir ini penulis mengharapkan dapat
memberikan manfaat bagi mahasiswa, lembaga pendidikan, dan masyarakat
pengguna. Berbagai manfaat yang diharapkan adalah :
1. Bagi Mahasiswa :
Dapat bermanfaat sebagai penerapan ilmu pengolahan sinyal digital yang
didapat di bangku kuliah maupun dari pengalaman di lapangan.
2. Bagi Sekolah / Universitas :
Sebagai alat bantu dalam proses pembelajaran di laboraturium atau di
bengkel sebagai alat ukur spektrum frekuensi sinyal audio.
3. Bagi Masyarakat dan Industri :
a. Dapat dimanfaatkan sebagai konsep perancangan sistem audio digital
pada equalizer dan peralatan musik lainnya.
b. Dapat dikembangkan sebagai alat praktikum di laboraturium penelitian
dalam analisis frekuensi sinyal audio.
6
G. Keaslian Gagasan
Pembuatan proyek akhir dengan judul “Audio Spectrum Analyser
Menggunakan Mikrokontroler ATmega32” ini merupakan gabungan dari ideide dasar yang telah dipublikasikan di internet seperti:
1. Real-Time Audio Spectrum Analyzer (Simon Inn, 2011).
Pada karya ini, disebutkan bandwidth frekuensinya 300 Hz – 10 kHz dan
tidak dapat menampilkan besaran frekuensi suatu sinyal, hanya tampilan
grafik bargraph pada LCD 128 x 64.
2. Audio Spectrum Monitor (Chan, 2005)
Pada karya ini, disebutkan tampilan grafik spektrum mempunyai resolusi
122 x 32 dengan menggunakan bahasa pemrograman assembly yang
komputasinya lebih cepat dan tidak dapat menampilkan besaran
frekuensi suatu sinyal dan frekuensi tertinggi yang dapat diukur sebesar
9,6 kHz.
3. Spectrum Analyser Rigol DSA1030A
Alat Spectrum Analyser Rigol DSA1030A mempunyai resolusi 800 x
480 pixel color LCD grafik dengan bandwidth frekuensinya dari 9 kHz –
3 Ghz. Alat ini mempunyai berat 6 kg – 7,5 kg dengan harga per unit
USD 5659. Teknologi tinggi yang terdapat di dalamnya mampu
mengukur RF (Radio Frequency), menyimpan data lewat USB dan
support sistem operasi Windows.
Alat Audio Spectrum Analyser mempunyai beberapa kelebihan dan
kekurangan dari karya-karya tersebut diatas. Beberapa kelebihan alat Audio
Spectrum Analyser adalah bandwidth frekuensinya dari 20 Hz – 16 kHz yang
dapat ditampilkan besaran frekuensinya pada LCD grafik dan harga perangkat
relatif murah sebagai media pembelajaran. Sedangkan kekurangan dari alat
ini adalah terbatasnya kapasitas memori untuk proses komputasi program dan
terlalu kecilnya resolusi LCD grafik penampil spektrum.
BAB II
LANDASAN TEORI
A. Spectrum Analyser
Spectrum analyzer adalah suatu program untuk menampilkan spectrum
frekuensi suara untuk setian waktu tertentu. Dalam spectrum analyzer
terdapat dua buah komponen sinyal yang dapat diteliti, yaitu frekuensi dan
amplitudo.
Pembuatan spectrum analyzer dilakukan dengan melakukan perhitungan
FFT untuk setiap N buah data pada suatu sinyal secara terus menerus dan
berurutan. Spectrum ana lyzer mempunyai kelebihan dalam proses analisis
suara disbanding dengankan dengan melihat pada time domain secara
langsung, hal ini dikarenakan spectrum analyzer bekerja pada domain
frekuensi yang cenderung konstan dan posisi frekuensinya tidak terpengaruh
oleh noise. Secara umum Spectrum analyzer dapat digambarkan dalam block
diagram berikut:
Gambar 1. Block diagram dari classic superheterodyne spectrum analyzer
Pada bagian input sinyal melewati bagian attenuator , lalau melewati low
pass filter ke mixer yang akan mencampurkan dengan local osilator . Karena
mixer bukan termasuk peralatan linier, maka pada bagian outputnya terdapat
dua sinyal pembentuk utama bersama dengan harmonisanya dan penjumlahan
serta turunan dari frekuensi asli beserta harmonisanya. Hanya sinyal yang
melalui passband intermediate filter -lah yang akan diproses lebih lanjut.
Sangat penting dilakukan pembenahan dengan envelop detector , digitized ,
dan menampilkannya. Sebab sebuah ramp generator akan menciptakan
6
7
gerakan horizontal pada display dari kiri ke kanan, ramp juga melakukan
tuning pada local oscillator sehingga memenuhi proporsi tegangan yang
diperlukan (http://digilib.petra.ac.id).
B. Sinyal
Sinyal adalah suatu besaran fisis yang merupakan fungsi waktu, ruangan,
atau beberapa variabel (Harlianto Tanudjaja, 2007:1). Dalam beberapa kasus,
sinyal berhubungan dengan data-data yang berasal dari alam seperti:
gelombang audio, gelombang radio, getaran gempa bumi (seismic vibrations),
proses kimia, intensitas cahaya, potensial listrik, gambar (visual images) dan
sebagainya. Sinyal-sinyal tersebut dapat didefinisikan dengan suatu fungsi
yang jelas dan beberapa juga tidak dapat dilihat hubungan fungsi secara nyata
dan sangat komplek. Contohnya sinyal suara manusia. Sinyal suara manusia
termasuk dalam audio frekuensi dapat dituliskan sebagai fungsi penjumlahan
dari beberapa gelombang sinus dengan amplitudo yang berbeda.
∑
Suatu sinyal mempunyai beberapa jenis informasi yang dapat diamati
misalnya amplitudo, frekuensi, perbedaan fase, dan gangguan noise. Sinyal
listrik
dapat direpresentasikan sebagai getaran yang dinyatakan dalam
tegangan dan arus. Sinyal dapat direpresentasikan sebagai beberapa
gelombang seperti gambar berikut.
Gambar 2. Gelombang sinus
Sinyal tersebut dapat diamati secara langsung dengan peralatan ukur
elektronik seperti osiloskop dan spektrum analyser yang memanfaatkan
model matematik dari sinyal tersebut.
8
Sinyal dikelompokkan menjadi 2 (dua) jenis, yaitu sinyal analog
(continue) dan sinyal diskrit (digital). Sinyal yang berasal dari alam
kebanyakan merupakan sinyal analog, contohnya sinyal listrik yang dapat
direpresentasikan sebagai getaran. Pada umumnya sinyal dinyatakan dalam
bentuk tegangan dan arus. Persamaan umum sebuah sinyal analog dinyatakan
dalam persamaan berikut.
Untuk memperoleh sinyal digital dari sinyal analog diperlukan proses
sampling atau pencuplikan. Frekuensi sampling (Fs) harus memenuhi
Kriteria Nyquist:
dengan Fmax adalah frekuensi tertinggi yang akan dilakukan proses
sampling . Frekuensi sampling yang lebih rendah dari Kriteria Nyquist akan
menyebabkan tidak tercupliknya sinyal informasi secara penuh (utuh). Gejala
ini disebut dengan aliasing. Hasil sampling sinyal ini disebut sinyal digital
yang dapat dibaca dan diproses oleh sistem digital (Digital Signal
Prosessing ).
Gambar 3. Sampling sinyal
x(t)
Processor
(a)
y(t)
y(n)
x(n)
x(t)
A/D
Processor
D/A
(b)
Gambar 4. (a) Diagram blok pengolahan sinyal analog (conventional)
(b) Diagram blok pengolahan sinyal digital (DSP)
y(t)
9
Sinyal sinusoidal analog dan digital dapat dituliskan secara matematik
berikut:
untuk sinyal analog
untuk sinyal digital
C. Frekuensi Audio
Frekuensi audio atau frekuensi suara adalah getaran frekuensi yang dapat
didengar oleh manusia dengan jangkauan frekuensi antara 20 Hz sampai 20
kHz. Sinyal audio dapat berasal dari peralatan penghasil frekuensi audio
(AFG = Audio Frekuensi Generator) dan peralatan elektronik lainnya seperti
radio, televisi, dan perangkat pemutar musik lain yang memproses frekuensi
audio. Karena jangkauan frekuensi audio dari 20 Hz – 20 kHz maka
bandwidth yang diperlukan oleh sebuah peralatan pemroses frekuensi audio
lebih besar dari frekuensi 20 kHz atau dua kali lebih besar dari frekuensi
maksimum (DSP) sehingga informasi dapat diproses dengan sempurna.
D. DC Prosesor
1. Amplifier LM386
Amplifier
LM386 sebagai penguat sinyal audio yang hanya
memerlukan tegangan suplai yang rendah dan penguatannya mencapai 20
sampai 200 kali dengan menambahkan kapasitor diantara kaki 1 dan kaki
8. Penguat ini dapat diaplikasikan untuk beberapa peralatan elektronika
seperti: penguat radio AM-FM, intercom, tape player , line driver , penguat
motor servo , power converter . Berikut adalah gambar rangkaian
ekuivalen dan kaki-kaki LM386.
Gambar 5. Rangkaian ekuivalen dan kaki-kaki LM386
10
Rangkaian amplifier LM386 dapat beroperasi pada tegangan terendah
4V sampai tegangan tertinggi 12V dan bandwidth (BW) pada tegangan
catu 6V sebesar 300 kHz jika kaki 1 dan kaki 8 terbuka atau tanpa
kapasitor. Gambar berikut adalah skema rangkaian lengkap amplifier
LM386 dan perbandingan penguatan tegangan dan lebar frekuensi.
Gambar 6. Grafik perbandingan penguatan dan frekuensi
Gambar 7. Skema rangkaian amplifier LM386 penguatan 200
2. Penggeser Level
Pengeser level merupakan rangkaian penggeser level tegangan dengan
batas penggeseran dari -2,5V sampai +2,5V. Rangkaian penggeser level
tegangan terdiri dari 2 (dua) buah resistor seperti pembagi tegangan
(voltage divider ).
11
Gambar 8. Skema rangkaian penggeser level tegangan
Tegangan Vin/Vout disebut dengan Vlevel berkisar antara -2,5v
sampai +2,5V maka sinyal input akan dapat digeser antara 0V sampai 5V.
Sinyal dapat begeser dari level negatif ke level positif berdasarkan pada
sifat-sifat sinyal analog berikut:
dengan a adalah Vlevel = 2,5V dan b adalah Vinput = -2,5V sampai
+ 2,5V. Fungsi menggeser/menaikkan level tegangan sinyal input adalah
agar sinyal input dapat disampling sesuai dengan jangkauan ADC (analog
to digital converter) pada processor pengolah sinyal.
(V)
(V)
Tegangan masukan (vin)
sebelum penggeser level
Tegangan keluaran (vout)
setelah penggeser level
5
2.5
(t)
0
-2.5
2.5
(t)
0
Gambar 9. Grafik sinyal sebelum dan sesudah penggeser level
E. Filter Pasif Analog (LPF)
Filter analog berfungsi untuk melewatkan sinyal analog tertentu dan
meredam sinyal analog tertentu sesuai dengan karakteristik dari sebuah filter
tersebut. LPF ( Low Pass Filter ) adalah sebuah filter yang melewatkan sinyal
frekuensi rendah dan meredam sinyal frekuensi tinggi. LPF analog pasif dasar
12
terdiri dari sebuah resistor dan kapasitor yang dirangkai seperti volta ge
divider seperti gambar berikut.
Gambar 10. Skema rangkaian dasar LPF
(Vo)
LPF ideal
LPF praktis
Jangkauan frekuensi
yang diredam
Jangkauan frekuensi
yang dilewatkan
Frekuensi
Gambar 11. Grafik LPF perbandingan tegangan dan frekuensi
Rangkaian dari Gambar 10 adalah filter pasif yang umum digunakan.
Penyaringan dilakukan oleh RC, dan OPAMP digunakan sebagai penguat
sinyal. Pada dasarnya rangkaian RC tersebut merupakan sebuah pembagi
tegangan dimana Vout = Vc, dimana
semakin tinggi nilai f (frekuensi) atau mendekati tak hingga berarti
= 0. Sedangkan fc (frekuensi cutoff) dihitung dari
, dengan
13
F. Pengolahan Sinyal Digital
1. Analog to Digital Converter
Analog to Digital Converter (ADC) adalah rangkaian/piranti yang
berfungsi untuk mengubah atau mengkonversi data sinyal analog menjadi
data sinyal digital. Spesifikasi ADC yang perlu menjadi perhatian seperti
ketelitian, linearitas, resolusi, kecepatan konversi, stabilitas, harga
komponen, batas tegangan input, output kode digital, teknik interfacing ,
multiplexer
internal, pengkondisi
sinyal dan memori. (Rachmad
Setiawan, 2008).
Resolusi menyatakan tegangan input yang dibutuhkan untuk
menaikkan output ADC antara suatu kode dengan kode berikutnya.
Misalnya sebuah ADC dengan 10 bit maka resolusinya 1/1024 full scale .
Differential Non-Linearity (DNL) adalah nilai penyimpangan maksimum
pada lebar kode praktis dari lebar kode idealnya. Integral Non-Linearity
adalah maksimal simpangan dari transisi praktis dibandingkan dengan
transisi ideal untuk semua kode. Waktu konversi adalah waktu yang
diperlukan ADC untuk melakukan satu kali konversi.
Beberapa jenis ADC yang digunakan dalam pengolah sinyal digital
yaitu Flash ADCs (Parallel), Successive approximation ADCs, Counting
ADCs, dan Integrating ADCs.
Flash ADCs adalah jenis ADC tercepat dalam waktu konversi dan
dapat digunakan untuk sampling rates yang tinggi. ADC dengan
konverter parallel atau flash ADC menggunakan 2 n – 1 komparator.
Successive
Approximation
ADCs
atau
disebut
Successive
Approximation Register (SAR) converter. ADC jenis ini sangat cepat
tetapi tidak secepat Flash ADCs. Kelebihan lain ADC ini mudah dalam
perancangannya dan sangat murah untuk rata-rata perancangan resolusi
(bit) yang tinggi.
Counting ADCs atau pencacah ADC adalah konverter yang
rancangannya sama dengan SAR tetapi control logic dan register
menggunakan pencacah yang lebih sederhana.
14
Gambar 12. Skema rangkaian Flash ADCs (James D.Broesch, 2009:20)
Gambar 13. Blok diagram Successive Approximation ADCs (James
D.Broesch, 2009:21)
Integrating ADCs adalah jenis ADC yang konversinya tidak langsung,
pertama konversi sebagai fungsi waktu kemudian kefungsi digital dengan
menggunakan sebuah pencacah. Pencacah jenis ini memungkinkan
konversi cukup lama. (Rachmad Setiawan, 2008)
15
2. Kuantisasi
Kuantisasi adalah proses untuk mengubah dari sinyal diskrit bernilai
kontinyu menjadi sinyal diskrit. Nilai setiap sinyal hasil sampling diwakili
oleh suatu nilai yang telah ditentukan. Dengan adanya suatu nilai yang
ditentukan/terhingga, maka akan menyebabkan terjadinya suatu galat
(error ) yang disebut galat kuantisasi (quantization error ) atau derau
kuantisasi (quantization noise ). Sinyal hasil kuantisasi dari sinyal diskrit
x(n) sebagai Q[x(n)] dan
adalah sinyal hasil kuantisasi, maka:
Galat kuantisasi adalah
yang merupakan selisih antara nilai hasil
kuantisasi dengan nilai asalnya, maka
. Dalam
pengolahan sinyal digital kuantisasi menggunakan nilai biner, contohnya
nilai kuantisasi pada interval N adalah
N = 2n
dimana n adalah panjang dari nilai biner tersebut. Nilai biner ini berkaitan
dengan resolusi pada ADC misalnya dengan n = 8 bit maka N = 256.
3. Fast Fourier Transform (FFT)
Fast Fourier Transform (FFT) adalah algoritma Transformasi Fourier
merupakan pengembangan dari algoritma Discrete Fourier Transform
(DFT).Transformasi Fourier adalah transformasi yang digunakan untuk
mengubah data sinyal dari daerah waktu (time domain) menjadi daerah
frekuensi (frequency domain). Transformasi Fourier Waktu Diskrit
(DTFT) dari x(n) dapat didefinisikan sebagai :
∑
dan Transformasi Fourier Diskrit (DFT) dari x(n) dapat didefinisikan
sebagai :
∑
16
dimana nilai bilangan kompleks dalam Rumus Euler ejθ = cosθ + j sinθ
dan bentuk polar dari x(k) adalah :
Magnitude: │X(k)│ = √
Phase: θ(k) = tan-1
Algoritma Fourier cepat atau FFT merupakan algoritma yang saat ini
banyak digunakan karena metode komputasi DFT yang lebih efisien
sehingga mempercepat proses perhitungan. Bila diterapkan dalam
kawasan waktu maka FFT juga disebut FFT DIT (Decimation In Time)
yaitu proses pembagian atau penipisan sinyal menjadi bagian yang lebih
kecil sehingga komputasi dapat lebih cepat. Perbandingan operasi
perkalian dari DFT dan FFT dapat dilihat dalam proses berikut (Harlianto
Tanudjaja, 2007).
DFT
FFT
Operasi perkalian bilangan kompleks sebanyak N 2
Operasi penjumlahan sebanyak N(N-1)
Menggunakan proses komputasi N/2
Tabel 1. Perbandingan komputasi DFT dan FFT (Embree, Paul M,
1995:31)
Transform Length (N)
DFT Operation (N2 )
8
64
24
16
256
64
32
1024
160
64
4096
384
128
16384
896
256
65536
1024
512
262144
4608
1024
1048576
10240
2048
4194304
22528
FFT Operation N
Algoritma FFT diperoleh dari persamaan DFT yang dimodifikasi
dengan mengelompokkan batas n ganjil dan batas n genap, Sehingga N
point DFT menjadi (N/2) point. Dimana
DFT menjadi
maka persamaan
17
∑
dibagi batasnya menjadi bagian genap dan ganjil pada domain waktu dan
domain frekuensi maka persamaan menjadi
∑
∑
merupakan persamaan FFT radix-2 Decimation In Time (DIT) yang mana
deretan data bagian genap dan ganjil menjadi dua DFT N/2 data (Sugeng
Riyanto, 2009).
Algoritma FFT dapat direpresentasikan dalam bentuk diagram untuk
mempermudah dalam perhitungan. Algoritma ini disebut dengan diagram
kupu-kupu (Butterfly) pada Gambar 14. Data masukan ke diagram kupukupu tersebut merupakan data yang sudah melalui proses pembalikan bit
(Bit-Reversal) melalui proses DIT. Pada masing-masing kupu-kupu
mengandung proses perkalian kompleks (N complex multiplication) yaitu
memungkinkan komputasi menjadi lebih cepat dari N 2 pada
N/2
DFT.
Dengan proses DIT tersebut, maka data hasil komputasi akhir
mempunyai urutan yang sesuai. Tabel 2 berikut menunjukkan data
masukkan disusun ulang.
Tabel 2. Pembalikan Bit (Nandra Pradipta, 2011)
Data yang telah disusun ulang (genap dan ganjil) melalui algoritma
diagram kupu-kupu data akan diurutkan kembali.
18
Gambar 14. Diagram kupu-kupu (butterfly) untuk DFT 8-point (Nandra
Pradipta, 2011)
Menurut Nandra Pradipta (2011), perancangan algoritma FFT ada
beberapa tahapan yaitu:
1. Data sinyal masukan (input) menggunakan Bit-reversal atau
pembalikan bit.
2. Komputasi FFT sebanyak N-point menggunakan algoritma kupukupu.
3. Melakukan pemisahan antara data ganjil dan genap
4. Perhitungan data sinyal keluaran akhir
4. Algoritma FFT Tom Roberts
Algoritma FFT merupakan algoritma dengan komputasi yang sangat
kompleks. Pengembangan algoritma ini telah banyak diaplikasikan pada
perangkat keras seperti microprocessor dan embedded microcontroller .
Pengembang algoritma FFT ditulis oleh Tom Roberts dengan Bahasa
Pemrograman C dan oleh Simon Inns yang diaplikasikan pada
microcontroller PIC18F4550.
19
Algoritma FFT Tom Roberts merupakan algoritma
FFT 16-Bit.
Untuk komputasi FFT (domain waktu ke domain frekuensi), algoritma
mempunyai batasan nilai tetap (fixed-scaling) 16-bit data dari
– 32768
sampai + 32768 yang mewakili nilai – 1,0 sampai + 1,0 untuk mencegah
terjadinya overflow. Algoritma FFT ini merupakan algoritma FFT Radix2 DIT dengan N complex multiplications sebesar 1024.
(http://www.jjj.de/fft/fftpage.html)
G. Mikroprosesor Pengolah Sinyal Digital
1. Conventional Microprocessor
Conventional microprocessor menggunakan arsitektur Von Neumann
dimana hanya terdapat sebuah bus untuk transfer data dan intruksi
diantara memori luar dan prosesor. Setiap microprocessor terdapat tiga
bagian bus yaitu: bus data, bus alamat (address) dan bus kendali (control).
Pada banyak kasus, sistem bus digunakan untuk operasi I/O. Proses
pengolahan sinyal yang lebih kompleks sistem bus akan mengalami
bottleneck. Processor dapat dipercepat kinerjanya dengan menambahkan
cache memory. Memori ini dapat diakses untuk proses transfer data pada
sistem bus sehingga untuk pengolahan sinyal lebih efisien. Execution unit
(EU) pada konvensional microprocessor terdiri dari Aritmatic Logic Unit
(ALU), Multiplier, Shifter, Floating Point Unit (FPU) dan beberapa data
dan Flag Regiter. Dalam pengolahan sinyal digital diperlukan operasi
MAC (Multiply and Accumulate) yang dalam processor ini menggunakan
general purpose data register.
Gambar 15. Diagram blok sistem bus arsitektur Von Neumann
20
Perkembangan saat ini banyak processor yang memiliki sistem CISC
(Complex Instruction Set Computer) dan RISC (Reduce Intruction Set
Computer) dengan eksekusi program lebih cepat yaitu sebagian besar
instruksi dieksekusi dalam 1 (satu) siklus clock. Konvensional
microprocessor yang bukan general purpose microprocessor memerlukan
banyak perangkat tambahan luar seperti hardware konverter A/D dan
D/A, konverter interface seperti SPI, I2C yang masih mengggunakan
komunikasi parallel.
2. DSP Microprocessors
DSP (Digital Signal Processors) menggunakan arsitektur Harvard
dan beberapa modifikasi dari arsitektur ini. Pada arsitektur Harvard
paling sedikit mempunyai dua sistem bus, satu untuk intruksi dan satu
untuk data. Tetapi dalam DSP dapat kita temukan tiga sistem bus yaitu
intruksi, transfer data (I/O), dan transfer coefficient untuk memori yang
terpisah. Untuk melaksanakan komputasi pengolahan sinyal digital hanya
diperlukan 12 bus cycles mencakup intruksi dan data transfer. Beberapa
chip DSP memiliki memori unternal yang dialokasikan untuk data
memory¸coeficient memory atau instruction memory.
Gambar 16. Diagram blok sistem bus arsitektur Harvard
Unit eksekusi terdiri dari sedikitnya satu (atau dua) ALU, multiplier,
Shifter, dan data dan register flag. Unit ini didesain parallel sehingga bisa
21
bekerja secara serentak. Kebanyakan DSP telah dilengkapi dengan LUT
(Look-Up Table) pada ROM. Tabel ini dilengkapi dengan array sin/cosin
untuk FFT. Microprocessor DSP dibangun untuk komunikasi serial yang
super cepat. Port serial secara langsung dapat dikoneksikan ke perangkat
coder dan decoder atau A/D dan D/A.
H. Mikrokontroler ATmega32
1. Mikrokontroler AVR
Mikrokontrol adalah prosesor kecil dan digunakan untuk aplikasi
khusus
dari
Mikrokomputer
atau
Komputer.
Perbedaan
antara
mikrokomputer dan mikrokontrol adalah kecepatan mikrokomputer
mencapai 2 GHz sedangkan mikrokontrol hanya sebatas 8 MHz – 40
MHz, mikrokontrol hanya menjalankan program yang tersimpan dalam
ROM yang bersifat non-volatile
(tetap tersimpan walupun tidak ada
sumber daya), RAM mikrokomputer sampai ukuran Mbyte sedangkan
mikrokontrol hanya berukuran sangat kecil 128 byte, 256 byte, 2Kbyte
dan seterusnya, dan mikrokomputer merupakan general purpose
computer (komputer serbaguna) sedangkan mikrokontrol merupakan
special purpose computer (komputer dengan tujuan khusus).
(http://agfi.staff.ugm.ac.id/blog/index.php/2008/11/apakahmikrokontroler-itu/ )
Mikrokontroler AVR adalah mikrokontrol sistem RISC 8 bit
berdasarkan arsitektur Harvard buatan Atmel. AVR ( Advance Versatile
RISC atau Alf and Vegard’s RISC Processor ) memiliki kecepatan
eksekusi program yang lebih cepat karena sebagian besar instruksi
dieksekusi dalam 1 siklus clock dibandingkan dengan mikrokontrol
MCS51 dengan arsitektur CISC yang membutuhkan 12 siklus clock untuk
1 instruksi. (Heri Andrianto: 2008).
2. Arsitektur Mikrokontroler ATmega32
Arsitektur mikrokontroler AVR menggunakan arsitektur Harvard
dengan memisahkan antara memori dan bus untuk program dan data
22
untuk memaksimalkan kecepatan. Proses instruksi dalam memori
program dieksekusi dengan pipelining single level. Ketika satu instruksi
dieksekusi, instruksi berikutnya diambil dari memori program. Dengan
proses ini instruksi dapat dieksekusi setiap clock cycle.
Gambar 17. Arsitektur Harvard mikrokontrol AVR
3. Fitur ATmega32
Keluarga
AVR memiliki bermacam-macam fitur yang dapat
digunakan oleh programmer dan desainer untuk mengembangkan
berbagai sistem kontrol. Fitur fitur ATmega32 adalah sebagai berikut:
a. Mikrokontroler AVR 8 bit daya rendah dengan kemampuan kinerja
tinggi.
b. Arsitektur RISC dengan kecepatan prosesor mencapai 16 MIPS
(Million Instruction Per Second ) pada frekuensi kristal 16 MHz.
c. Memiliki kapasitas memori non-volatile seperti Flash memori 32
Kbyte, EEPROM kapasitas 1024 byte dan SRAM kapasitas 2 Kbyte
d. Antarmuka JTAG yang berfungsi untuk akses debugger ke unit
perangkat internal dan eksternal RAM, file internal register, program
counter, EEPROM dan memori flash, juga digunakan dalam
memprogram memori flash, EEPROM, Fuses dan Lock bit.
23
e. Fitur Per ipheral
1) 2 buah timer/counter 8 bit
2) Sebuah timer/counter 16 bit
3) Real time counter dengan osilator yang terpisah
4) 4 buah channel PWM
5) 8 buah channel, 10 bit ADC
6) Byte-oriented Two wire Serial Interface
7) Programmable serial USART
8) Antar muka serial SPI
9) Wacthdog Timer dengan osilator internal
10) On-chip Analog Comparator
f. Saluran I/O (Input/Output) berjumlah 32 buah yaitu PORTA, PORTB,
PORTC, dan PORTD
g. Tegangan operasi mikrokontrol ATmega32L sebesar 2,7V – 5,5V
dengan osilator kristal maksimal 8 MHz, untuk ATmega32 sebesar
4,5V – 5,5V dengan osilator kristal sebesar 16 MHz.
4. Konfigurasi Pin ATmega32
ATmega32 memiliki 40 buah pin/kaki, dimana 32 pin tersebut adalah
berfungsi sebagai jalur I/O dan fungsi khusus yang dapat berkomunikasi
dari dan menuju mikrokontroler tergantung dari inisialisasi register di
dalamnya. Berikut ini adalah susunan kaki-kaki dari ATmega32 pada
kemasan PDIP ( Plastic Dual Inline Package ).
a. VCC adalah pin masukan catu daya positif
b. GND adalah pin ground dari catu daya
c. PORTA – PORTD merupakan jalur input/output dua arah yang dapat
d