APLIKASI HIDDEN MARKOV MODEL PADA PINTU ...suara atau ucapan adalah Jaringan Saraf Tiruan (JST) dan...
Embed Size (px)
Transcript of APLIKASI HIDDEN MARKOV MODEL PADA PINTU ...suara atau ucapan adalah Jaringan Saraf Tiruan (JST) dan...
-
i
TUGAS AKHIR
APLIKASI HIDDEN MARKOV MODEL
PADA PINTU GESER BERBASIS SUARA
Diajukan untuk memenuhi Salah Satu Syarat
Memperoleh Gelar Sarjana Teknik
Program Studi Teknik Elektro
Oleh :
ARYADITA WIJAYA
065114008
PROGRAM STUDI TEKNIK ELEKTRO
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2011
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
ii
FINAL PROJECT
THE APPLICATION OF HIDDEN MARKOV MODEL
IN SLIDING DOOR BASED ON HUMAN VOICE
Presented as Partial Fulfillment of the Requirements
To Obtain the Sarjana Teknik Degree
In Study Program of Electrical Engineering
By:
ARYADITA WIJAYA
065114008
ELECTRICAL ENGINEERING STUDY PROGRAM
SCIENCE AND TECHNOLOGY FACULTY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
2011
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
iii
HALAMAN PERSETUJUAN
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
iv
HALAMAN PENGESAHAN
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
v
PERNYATAAN KEASLIAN KARYA
Saya menyatakan dengan sesungguhnya bahwa tugas akhir ini tidak memuat katya
atau bagian karya orang lain, kecuali yang telah saya sebutkan dalam kutipan dan daftar
pustaka sebagaiman layaknya dalam karya ilmiah.
Yogyakarta,25 Agustus 2011
Aryadita Wijaya
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
vi
HALAMAN PERSEMBAHAN DAN MOTO HIDUP
Kehidupan seseorang tidak berakhir saat ia gagal,
kehidupannya berakhir saat ia berhenti
dan tidak mau berjuang lagi
Karya ini ku persembahkan untuk :
Tuhan Yesus-ku, panutan sekaligus sumber kekuatan-ku
Kedua orang tua-ku
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
vii
LEMBAR PERNYATAAN PERSETUJUAN
PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS
Yang bertanda tangan dibawah ini, saya mahasiswa Universitas Sanata Dharma :
Nama : Aryadita Wijaya
NIM : 065114008
Demi pengembangan ilmu pengetahuan, saya memberikan kepada Perpustakaan
Universitas Sanata Dharma karya ilmiah saya yang berjudul :
APLIKASI HIDDEN MARKOV MODEL
PADA PINTU GESER BERBASIS SUARA
Beserta perangkat yang diperlukan ( bila ada ). Dengan demikian saya memberikan kepada
Perpustakaan Universitas Sanata Dharma hak untuk menyimpan, mengalihkan dalam
bentuk media lain, mengelolanya dalam bentuk pangkalan data, mendistribusikan secara
terbatas, dan mempublikasikannya di Internet atau media lain untuk kepentingan akademis
tanpa perlu meminta ijin dari saya maupun memberikan royalti kepada saya selama tetap
mencantumkan nama saya sebagai penulis.
Demikian pernyataan ini yang saya buat dengan sebenarnya.
Yogyakarta,25 Agustus 2011
( Aryadita Wijaya )
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
viii
INTISARI
Salah satu aplikasi yang dapat digunakan untuk proses pengolahan suara adalah speech recognition. Speech recognition merupakan upaya agar manusia dan mesin dapat berkomunikasi dengan media suara. Metode yang sering digunakan dalam pengolahan suara atau ucapan adalah Jaringan Saraf Tiruan (JST) dan Hidden Markov Model (HMM). Aplikasi Hidden Markov Model pada pintu geser berbasis suara ini akan menghasilkan sebuah sistem penggerakan prototype pintu geser yang diaktifkan menggunakan suara manusia. Pintu geser hanya aktif jika menerima masukan berupa kata dari orang yang sama seperti yang telah tersimpan di dalam sistem.
HMM sendiri merupakan suatu sistem yang memodelkan simbol ke dalam suatu mesin finite state (keadaan yang terbatas), sehingga diketahui simbol apa yang dapat mewakili sebuah parameter vektor dari sebuah kata yang dimasukkan ke dalam mesin dan diestimasi berulang-ulang hingga dihasilkan parameter observasi dengan mean dan kovarian yang konvergen untuk setiap statenya.
Aplikasi Hidden Markov Model pada pintu geser berbasis suara ini sudah berhasil dibuat namun belum dapat bekerja dengan maksimal. Sistem yang dibuat belum dapat mendeteksi orang yang menggunakan sistem ini. Namun sistem sudah dapat membedakan kata masukan atau password yang dimasukkan oleh user. Tingkat akurasi sistem pada proses pemodelan yaitu sebesar 95% dan pada proses pengenalan yaitu sebesar 91,667%.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
ix
ABSTRACT Speech recognition is one of an application for voice recognition. Speech recognition is an effort to make human and machine can be communicate. Several methods that can be used in the voice processing is artificial neural networks and Hidden Markov Models. The application of Hidden Markov Model in sliding door based on human voice produce a sliding door actuating system that uses voice activated. Sliding doors will be active if it receives input from the people of the same as stored in the system
HMM is a system that can be a model of the symbol into a finite state machine, and then know what the symbol represents the parameter vector of a word and it will be estimated repeatedly until the resulting parameters of observations with mean and variance for each state.
This application has been successfully to build, but it could not work with the maximum. This system can not distinguish the user's system, but the system is able to recognize the input word being entered by the user. The level of accuracy obtained is 95% for modeling process and 91,667% for the recognition process.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
x
KATA PENGANTAR
Puji dan syukur kepada Tuhan Yang Maha Esa atas berkat dan rahmatNya yang
melimpah sehingga penulis dapat menyelesaikan Laporan Tugas Akhir ini.
Pada kesempatan ini penulis ingin menyampaikan terimakasih kepada semua pihak
yang sudah membantu dalam penyelesaian skripsi ini, sehingga skripsi ini dapat
terselesaikan dengan baik. Ucapan terima kasih ini saya sampaikan terutama kepada.
1. Bapak Yosef Agung Cahyanta, S.T., M.T., selaku Dekan Fakultas Sains dan
Teknologi Universitas Sanata Dharma Yogyakarta.
2. Ibu B.Wuri Harini, S.T., M.T., selaku Ketua Jurusan Teknik Elektro Universitas
Sanata Dharma dan Dosen Pembimbing TA. Terima kasih atas bimbingan yang
selama ini telah diberikan kepada saya.
3. Ibu Ir.Th.Prima Ari, M.T. selaku Dosen Pembimbing Akademik Teknik Elektro
angkatan 2006.
4. Seluruh Dosen Teknik Elektro yang selama lima tahun ini telah membagikan
ilmunya yang sangat berguna kepada saya.
5. Seluruh Staff Universitas Sanata Dharma, yang atas kerja kerasnya, membuat
perkuliahan menjadi terasa nyaman.
6. Bapak, Ibu dan Kakak yang telah memberikan banyak doa, semangat, dukungan
baik moril maupun finansial serta cinta yang begitu besar, selalu ada dan tak akan
pernah berhenti.
7. Dominikus Catur Edi Wasesa yang telah memberikan support, semangat,
dukungan sehingga TA ini dapat selesai.
8. Serta semua pihak yang telah membantu kelancaran dalam penulisan tugas akhir
ini. Saya mengucapkan banyak terima kasih.
Penulis menyadari bahwa masih banyak kekurangan yang terdapat pada laporan
tugas akhir ini. Saran dan kritik sangat penulis harapkan untuk perbaikan-perbaikan dimasa
yang akan datang. Akhir kata, penulis berharap tulisan ini bermanfaat bagi kemajuan dan
perkembangan ilmu pengetahuan serta berbagai pengguna pada umumnya.
Yogyakarta,25 Agustus 2011
Aryadita Wijaya
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
xi
DAFTAR ISI HALAMAN JUDUL ........................................................................................................ i HALAMAN JUDUL DALAM BAHASA INGGRIS ..................................................... ii HALAMAN PERSETUJUAN ....................................................................................... iii HALAMAN PENGESAHAN .........................................................................................iv PERNYATAAN KEASLIAN KARYA ........................................................................... v HALAMAN PERSEMBAHAN DAN MOTO HIDUP ..................................................vi LEMBAR PERNYATAAN PERSETUJUAN .............................................................. vii PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS ................. vii INTISARI ..................................................................................................................... viii ABSTRACT ....................................................................................................................ix KATA PENGANTAR ...................................................................................................... x DAFTAR ISI ...................................................................................................................xi DAFTAR GAMBAR ..................................................................................................... xiv DAFTAR TABEL ......................................................................................................... xvi BAB I PENDAHULUAN ................................................................................................. 1
1.1. Latar Belakang ..................................................................................................... 1 1.2. Tujuan dan Manfaat ............................................................................................. 2 1.3. Batasan Masalah .................................................................................................. 2 1.4. Metodologi Penelitian .......................................................................................... 3
BAB II LANDASAN TEORI ........................................................................................... 5 2.1. Suara ................................................................................................................... 5 2.2. MFCC (Mel Frequency Cepstrum coefficients) .................................................... 6
2.2.1 Konversi Analog Menjadi Digital ................................................................. 8 2.2.2 Pre-emphasize Filtering ................................................................................ 9 2.2.3 Frame Blocking .......................................................................................... 10 2.2.4 Windowing ................................................................................................. 11 2.2.5 Analisis Fourier .......................................................................................... 14 2.2.6 Discrete Fourier Transform (DFT) .............................................................. 15 2.2.7 Fast Fourier Transform (FFT) ..................................................................... 16 2.2.8 Mel Frequency Warping ............................................................................. 18 2.2.9 Discrete Cosine Transform (DCT) .............................................................. 20 2.2.10 Cepstral Liftering ........................................................................................ 21
2.3. Hidden Markov Model (HMM) .......................................................................... 22 2.3.1 Observasi .................................................................................................... 22 2.3.2 Inisialisasi ................................................................................................... 23
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
xii
2.3.3 Estimasi ...................................................................................................... 24 2.3.4 Rantai Markov ............................................................................................ 27 2.3.5 Tipe HMM.................................................................................................. 27 2.3.6 Elemen HMM ............................................................................................. 28 2.3.7 Pengenalan Suara dengan HMM ................................................................. 29 2.3.8 Algoritma Baum Welch .............................................................................. 29 2.3.9 Algoritma Viterbi ....................................................................................... 31
2.4. Catu daya ........................................................................................................... 32 2.5. Mikrokontroler ATmega8535 ............................................................................ 33
2.5.1 Timer0 ........................................................................................................ 33 2.5.2 Register pengendali Timer0 ........................................................................ 33 2.5.3 Mode operasi .............................................................................................. 35
2.6. Motor servo ....................................................................................................... 37 2.7. Komunikasi Serial RS232 .................................................................................. 37
BAB III RANCANGAN PENELITIAN ........................................................................ 41 3.1. Arsitektur Sistem ............................................................................................... 41 3.2. Diagram Alir Sistem .......................................................................................... 42 3.3. Proses Pemodelan .............................................................................................. 43
3.3.1 MFCC ........................................................................................................ 44 3.4. Subsistem Software ............................................................................................ 45
3.4.1 Subsistem Software Pada PC ....................................................................... 45 3.4.1.1. Pengenalan ................................................................................................... 46
3.4.1.2. Viterbi ........................................................................................................... 47
3.4.2 Subsistem Software Pada Mikrokontroler .................................................... 48 3.5. Subsistem Hardware .......................................................................................... 49
3.5.1 Perancangan Prototype Pintu Geser ............................................................ 49 3.5.2 Perancangan Pin Mikrokontroler ATmega8535 ........................................... 50 3.5.3 Motor Servo ................................................................................................ 50 3.5.4 Indikator Kesalahan .................................................................................... 51
3.6. Komunikasi Serial RS232 .................................................................................. 51 3.7. Proses Evaluasi .................................................................................................. 52
3.7.1 Proses Evaluasi Subsistem Software............................................................ 52 3.7.2 Proses Evaluasi Subsistem Hardware ......................................................... 53
BAB IV HASIL DAN PEMBAHASAN ......................................................................... 54 4.1. Implementasi ..................................................................................................... 54
4.1.1 Implementasi Proses Pemodelan ................................................................. 55
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
xiii
4.1.2 Implementasi Antarmuka Subsistem Software............................................. 56 4.1.1.1 Halaman Utama .................................................................................................... 57
4.1.1.2 Halaman Sistem .................................................................................................... 57
4.1.1.3 Halaman Bantuan ................................................................................................. 62
4.1.3 Implementasi Antarmuka Subsistem Hardware .......................................... 63 4.1.4 Implementasi Komunikasi Subsistem Software dan Hardware .................... 64
4.2. Hasil Pengujian .................................................................................................. 65 4.2.1. Subsistem Software ..................................................................................... 65 4.2.2. Subsistem Hardware................................................................................... 72
BAB V KESIMPULAN DAN SARAN .......................................................................... 74 5.1. Kesimpulan ........................................................................................................ 74 5.2. Saran ................................................................................................................. 74
DAFTAR PUSTAKA ...................................................................................................... 75
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
xiv
DAFTAR GAMBAR
Gambar 2.1 Organ Pembetuk Suara Manusia[2] ................................................................. 5 Gambar 2.2 Contoh sinyal suara [3] ................................................................................... 7 Gambar 2.3 Blok diagram untuk MFCC [3] ....................................................................... 7 Gambar 2.4 Proses pembentukan sinyal digital [3] ............................................................. 8 Gambar 2.5 Contoh dari pre-emphasize pada sebuah frame [5] .......................................... 9 Gambar 2.6 Magnitude response dari pre-emphasize filter untuk nilai α yang berbeda [5] 10 Gambar 2.7 Short Term Spectral Analysis [5] ................................................................. 11 Gambar 2.8 Bentuk gelombang dari Hamming dan Rectangular window beserta dengan mnagnitude hasil dan proses FFT [5] ................................................................................ 13 Gambar 2.9 Contoh wideband spectrogram [5] ................................................................ 14 Gambar 2.10 Contoh narrowband spectrogram [5] .......................................................... 14 Gambar 2.11 Tiga Gelombang Sinusoidal dan Superposisinya [5] .................................... 15 Gambar 2.12 Domain Waktu menjadi Domain Frekuensi [5] ........................................... 16 Gambar 2.14 Pembagian sinyal suara menjadi dua kelompok [5] ..................................... 17 Gambar 2.15 Magnitude dari rectangular dan triangular filterbank [5] .............................. 18 Gambar 2.16 Prinsip Frekuensi Warping [5] .................................................................... 19 Gambar 2.17 Triangular filterbank dengan mel scale [5] .................................................. 20 Gambar 2.18 Perbandingan spectrum dengan dan tanpa cepstral liftering ........................ 21 Gambar 2.19 State HMM ................................................................................................. 23 Gambar 2.20 Algoritma Viterbi ........................................................................................ 24 Gambar 2.21 Diagram alir untuk estimasi ........................................................................ 25 Gambar 2.22 Contoh proses Pembelajaran dan Pengenalan .............................................. 27 Gambar 2.23 Rantai Markov ............................................................................................ 27 Gambar 2.24 HMM model ergodic .................................................................................. 28 Gambar 2.25 HMM model Kiri-kanan ............................................................................. 28 Gambar 2.26 ATmega8535 [11] ....................................................................................... 33 Gambar 2.27 Pulsa PWM [11] ........................................................................................ 36 Gambar 2.28 Pulsa Fast PWM [11] .................................................................................. 36 Gambar 2.29 Konfigurasi Konektor DB9 [12] .................................................................. 38 Gambar 2.30 Konfigurasi IC MAX232 [13] ..................................................................... 39 Gambar 2.31 Perbedaan Level Tegangan TTL dan RS232 [14] ........................................ 39 Gambar 3.1 Arsitektur umum ........................................................................................... 41 Gambar 3.2 Diagram alir sistem ....................................................................................... 42 Gambar 3.3 Proses Pemodelan ......................................................................................... 43 Gambar 3.4 Diagram blok MFCC .................................................................................... 45 Gambar 3.5 Cara kerja sistem .......................................................................................... 46 Gambar 3.6 Proses Pengenalan ........................................................................................ 47 Gambar 3.7 Proses Viterbi ............................................................................................... 48 Gambar 3.8 Pengontrolan Penggerak............................................................................... 49 Gambar 3.9 Konfigurasi kabel motor servo ...................................................................... 50 Gambar 3.10 Rangkaian indikator kesalahan .................................................................... 51 Gambar 3.11 Perancangan RS232 .................................................................................... 52 Gambar 4.1 Implementasi Sistem ..................................................................................... 54 Gambar 4.2 Halaman Utama ............................................................................................ 57 Gambar 4.3 Halaman Sistem ............................................................................................ 58 Gambar 4.4 Tampilan Text Informasi Mulai Rekam Suara ............................................... 59
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
xv
Gambar 4.5 Tampilan Text Informasi Perekaman Selesai ................................................. 59 Gambar 4.6 Tampilan Text Informasi Hasil Pengenalan Buka .......................................... 61 Gambar 4.7 Tampilan Text Informasi Hasil Pengenalan Tutup ......................................... 62 Gambar 4.8 Halaman Bantuan.......................................................................................... 62 Gambar 4.9 Tampilan Utama Sistem Hardware ............................................................... 63 Gambar 4.10 Tampilan Pintu Geser pada Posisi Terbuka ................................................. 64 Gambar 4.11 Tampilan Pintu Geser pada Posisi Tertutup ................................................. 64
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
xvi
DAFTAR TABEL Tabel 1.1 Confusion Matrix. .............................................................................................. 4 Tabel 2.1 Fungsi-fungsi window dan formulanya ............................................................. 12 Tabel 2.2 Prescaler Timer0 .............................................................................................. 34 Tabel 2.3 Mode operasi .................................................................................................... 34 Tabel 2.4 Mode Fast PWM .............................................................................................. 34 Tabel 2.5 Konfigurasi Pin dan Nama Bagian Konektor Serial DB9 [12] ........................... 38 Tabel 3.1 Pin mikrokontroler yang digunakan ................................................................. 50 Tabel 3.2 Confusion Matrix ............................................................................................. 53 Tabel 4.1 Tingkat Akurasi Hasil Pengujian (dalam %) ..................................................... 66 Tabel 4.2 Confusion Matrix Hasil Pengujian .................................................................... 66 Tabel 4.3 Confusion matrix 5ms 11state dan 6ms 14state ................................................. 67 Tabel 4.4 Confusion matrix 4ms 18state dan 6ms 18state ................................................. 67 Tabel 4.5 Pengenalan untuk kombinasi window-size 5ms jumlah state 11 ........................ 69 Tabel 4.6 Pengenalan untuk kombinasi window-size 6ms jumlah state 14 ........................ 69 Tabel 4.7 Pengenalan untuk kombinasi window-size 4ms jumlah state 18 ........................ 70 Tabel 4.8 Pengenalan untuk kombinasi window-size 6ms jumlah state 18 ........................ 70 Tabel 4.9 Pengenalan untuk orang lain berjenis kelamin perempuan ................................ 71
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
1
BAB I
PENDAHULUAN
1.1. Latar Belakang
Perkembangan dunia teknologi di bidang pengolahan suara mengalami
perkembangan yang cukup pesat. Saat ini sinyal informasi yang dikirimkan tidak hanya
berupa data teks tetapi juga suara manusia. Suara manusia sangat unik dan berbeda satu
sama lain sehingga memerlukan pengolahan secara khusus, yaitu dengan proses
pengolahan suara. Salah satu aplikasi yang dapat digunakan untuk proses pengolahan suara
adalah speech recognition. Speech recognition merupakan upaya agar manusia dan mesin
dapat berkomunikasi dengan media suara [1].
Salah satu metode yang paling sering digunakan dalam pengenalan suara atau
ucapan adalah Jaringan Saraf Tiruan (JST) dan Hidden Markov Model (HMM). Dalam
speech recognition terdapat beberapa permasalahan yang sering muncul dan berbeda untuk
setiap permasalahannya misalnya kecepatan pengenalannya, ketepatan pengenalannya, dll.
Sebagian permasalahan ini telah dapat diatasi oleh julius speech recognition yaitu suatu
modul pengolahan sinyal wicara berkecepatan tinggi yang berbasis pada N-Gram dan
HMM accoustic model [1]. Saat ini telah terdapat HTK (Hidden Markov Model Toolkit)
yaitu suatu tool atau perangkat lunak yang mudah digunakan untuk membangun dan
memanipulasi HMM.
HMM sendiri merupakan suatu sistem yang memodelkan simbol ke dalam suatu
mesin finite state (keadaan yang terbatas), sehingga diketahui simbol apa yang dapat
mewakili sebuah parameter vektor dari sebuah kata yang dimasukkan ke dalam mesin dan
diestimasi berulang-ulang hingga dihasilkan parameter observasi dengan mean dan
kovarian yang konvergen untuk setiap statenya. Dengan tool ini maka pembuatan sistem
pengenalan sinyal suara manusia dapat lebih bagus dan rapi (untuk setiap kata dari orang
yang berbeda dan logat dari orang yang berbeda pula).
Berdasarkan hal di atas, penulis akan membuat sebuah otomatisasi untuk
pengoperasian pintu yang menggunakan teknologi pengolahan suara. Sistem otomatisasi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
2
ini berupa pintu geser yang diaktifkan menggunakan suara manusia. Penggunaan suara
manusia sebagai kata kunci digunakan untuk menggantikan sistem kunci manual yang ada
saat ini. Penggunaan suara sebagai kata diharapkan akan mempermudah user karena tidak
perlu membawa kunci saat pergi meninggalkan rumah dan user juga tidak perlu khawatir
kunci tertinggal ataupun hilang.
Hasil dari pembuatan sistem ini dapat melengkapi sistem smart house/ rumah pintar
yang kini banyak dikembangkan. Seperti yang diketahui, smart house/ rumah pintar
dirancang dan dibangun sebagai rumah impian masa depan. Rumah impian masa depan ini
menggunakan teknologi terkini, di mana semua yang ada dalam rumah tersebut dapat
dioperasikan secara otomatis.
Dalam implementasinya sistem yang akan dibuat akan bekerja apabila user ingin
membuka pintu geser. Suara user akan diproses dan dicocokkan dengan suara yang telah
tersimpan dalam sistem. Jika suara user memiliki pola yang sama dengan pola suara yang
telah tersimpan maka sistem akan mengaktifkan pintu geser. Sedangkan jika pola suara
berbeda maka pintu geser tidak akan aktif.
1.2. Tujuan dan Manfaat
Tujuan dari penelitian ini adalah menghasilkan sebuah prototype pintu geser yang
diaktifkan menggunakan suara manusia. Pintu geser hanya aktif jika menerima masukan
berupa kata dari orang yang sama seperti yang telah tersimpan di dalam sistem. Manfaat
dari penelitian ini adalah sebagai pengganti sistem kunci manual.
1.3. Batasan Masalah Batasan-batasan masalah dalam pengembangan sistem ini adalah sebagai berikut:
1. Proses pengolahan suara dilakukan oleh Personal Computer (PC)
2. Metode yang digunakan untuk proses pengenalan kata adalah Hidden Markov Model
(HMM ).
3. Metode yang digunakan untuk feature extraction (ekstraksi ciri) adalah Mel Frequency
Cepstrum Coeffisients (MFCC).
4. Pintu yang dibuat berupa sebuah prototype pintu geser yang berukuran 8x18 cm.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
3
5. Penggendalian pintu dilakukan menggunakan mikrokontroler ATmega8535.
6. Motor yang digunakan untuk menggerakkan pintu adalah motor servo.
7. Sistem bersifat dependent, artinya sistem hanya dapat digunakan oleh orang tertentu.
1.4. Metodologi Penelitian Metodologi yang akan digunakan dalam pengembangan sistem ini adalah sebagai berikut:
a. Pengumpulan bahan-bahan referensi / studi pustaka
Tahap ini bertujuan untuk mencari bahan-bahan referensi yang dapat digunakan
untuk menunjang kebutuhan sistem yang akan dibuat. Penulis akan mengumpulkan serta
meninjau berbagai bahan atau referensi yang terkait dengan metode HMM.
b.Menentukan variabel yang terkait
Tahap ini bertujuan untuk menemukan variabel-variabel yang terkait dan
digunakan dalam pengembangan sistem. Pada tahap ini penulis mengambil contoh suara
user yang akan dijadikan sebagai model dari pengaktifan sistem.
c. Perancangan subsistem hardware dan software
Tahap ini bertujuan untuk mencari desain yang optimal dari sistem yang akan
dibuat dengan mempertimbangkan berbagai faktor permasalahan dan kebutuhan yang telah
ditentukan. Untuk perancangan subsistem hardware, penulis akan merancang prototype
pintu, peletakan motor penggerak, dan minimum sistem mikrokontroler. Untuk
perancangan subsistem software, penulis mempelajari dan menuliskan tentang speech
recognition, metode HMM yang memuat algoritma Baum Welch dan algoritma Viterbi,
feature extraction (ekstraksi ciri) yang menggunakan metode MFCC, dan blok diagram
pengolahan suara dan perancangan kontrol penggerak.
d.Pembuatan subsistem hardware dan software
Pada tahap ini penulis akan membuat subsistem hardware dan software. Subsistem
hardware terdiri dari prototype pintu geser, mikrokontroler dan motor penggerak,
Subsistem software terdiri dari pengolahan suara dan kontrol penggerak. Pada proses
pengolahan suara, penulis menerapkan metode HMM ke dalam bahasa komputer sesuai
dengan desain yang telah disusun. Hasil dari proses ini adalah sebuah aplikasi yang dapat
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
4
mengidentifikasi suara user. Pada proses kontrol penggerak, penulis akan mengatur
pergerakan pintu, untuk membuka dan menutup sesuai dengan hasil identifikasi pada
proses pengolahan suara.
e. Proses pengambilan data dan pengujian
Pengambilan data dan pengujian sistem dilakukan menggunakan suara user dan
suara orang lain. Suara orang lain digunakan sebagai pembanding untuk menguji apakah
sistem dapat dibuka oleh orang lain selain user. Dalam proses ini digunakan 10 orang
sebagai sampel, 5 pria dan 5 wanita. Setiap sampel akan merekam suaranya sebanyak 10
kali untuk setiap kata yang digunakan sebagai kata sandi pengoperasian pintu. Pada
pengujian langsung dilakukan dengan menggunakan suara yang direkam pada saat itu juga.
f. Analisa dan penyimpulan hasil penelitian
Analisa dilakukan dengan menggunakan confusion matrix untuk penghitungan
akurasi dari hasil pengujian sistem yang dibuat. Confusion matrix merupakan matrix
berbentuk bujur sangkar. Banyaknya kolom dan baris adalah sama yaitu sebanyak N,
dimana N adalah banyaknya model suara yang ada. Tabel 1.1 merupakan ilustrasi dari
confusion matrix.
Tabel 1.1 Confusion Matrix.
Diagonal dari tabel 1.1 yang diblok merupakan gambaran dari jumlah data yang benar
dalam pengenalan. Persamaan yang digunakan untuk menghitung akurasi yaitu :
%100_
__
datajumlahdikenaldatajumlahakurasi (1.1)
Keakuratan sitem dapat dilihat dari tingkat akurasi dalam proses pengenalan kata.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
5
BAB II
LANDASAN TEORI 2.1. Suara
Suara adalah sebuah sinyal yang merambat melalui media perantara. Suara dapat
dihantarkan dengan media air, udara maupun benda padat. Dengan kata lain, suara adalah
gelombang yang merambat dengan frekuensi dan amplitudo tertentu. Suara yang dapat
didengar oleh manusia berkisar antara 20 Hz sampai dengan 20KHz, dimana Hz adalah
satuan frekuensi yang berarti banyak getaran per detik (cps / cycle per second) [2].
Perlengkapan produksi suara pada manusia terdapat pada gambar 2.1 yang secara
garis besar terdiri dari jalur suara (vocal track) dan jalur hidung (nasal track). Jalur suara
dimulai dari pita suara (vocal cords), celah suara (glottis) dan berakhir pada bibir. Jalur
hidung dimulai dari bagian belakang langit-langit (velum) dan berakhir pada cuping hidung
(nostrils).
Gambar 2.1 Organ Pembetuk Suara Manusia[2]
Proses terjadinya suara, dimulai dari udara masuk ke paru-paru melalui pernafasan,
kemudian melalui trakea, udara masuk ke batang tenggorok dimana dalam batang
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
6
tenggorok ini terdapat pita suara. Pita suara ini kemudian bergetar dengan frekuensi
tertentu karena adanya aliran udara tersebut sehingga dihasilkan suara. Suara yang
dihasilkan ini berbeda-beda bergantung pada posisi lidah, bibir, mulut dan langit-langit
pada saat itu.
Suara yang dihasilkan terbagi menjadi tiga bagian yaitu voiced sound, unvoiced
sound serta plosive sound. Voiced sound terjadi jika pita suara bergetar dengan frekuensi
50 Hz sampai 250 Hz. Contoh voiced sound adalah bunyi pada kata ‘ah”, Unvoiced sound
teijadi jika pita suara tidak bergetar sama sekali. Contoh unvoiced sound ialah bunyi pada
kata “shh”. Sedangkan piosive sound terjadi jika pita suara tertutup sesaat dan kemudian
tiba-tiba membuka. Contoh plosive sound ialah bunyi “beh” pada kata benar dan “pah”
pada kata pasar [2].
2.2. MFCC (Mel Frequency Cepstrum coefficients) MFCC(Mel Frequency Cepstrum Coefficients) merupakan salah satu metode, yang
banyak digunakan dalam bidang speech technology, baik speaker recognition maupun
speech recognition. Metode ini digunakan untuk melakukan feature extraction (ekstraksi
ciri), sebuah proses yang mengkonversikan sinyal suara menjadi beberapa parameter.
Tujuan akhir dari proses feature extraction adalah pemberian parameter suara ke dalam
deretan feature vector yang berupa ringkasan dan informasi yang relevan dari suara
tersebut. Feature yang diekstrak diharapkan mampu membedakan suara yang serupa,
sehingga model dapat dibuat tanpa memerlukan data training yang besar. Keunggulan dari
metode ini adalah [3]:
1. Mampu untuk menangkap karakteristik suara yang sangat penting bagi pengenalan
suara atau dengan katalain, mampu menangkap informasi-informasi penting yang
terkandung dalam sinyal suara.
2. Menghasilkan data seminimal mungkin, tanpa menghilangkan informasi-informasi
penting yang ada.
3. Mereplikasi organ pendengaran manusia dalam melakukan persepsi terhadap sinyal
suara.
Perhitungan yang dilakukan dalam MFCC menggunakan dasar dari perhitungan
short-tern analysis. Hal ini dilakukan mengingat sinyal suara yang bersifat quasi
stationary. Contoh dari sinyal suara dapat dilihat pada Gambar 2.2. Pengujian yang
dilakukan untuk periode waktu yang cukup pendek (sekitar 10 sampai 30 milidetik) akan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
7
menunjukkan karakteristik sinyal suara yang stationary. Tetapi bila dilakukan dalam
periode waktu yang lebih panjang karakteristik sinyal suara akan terus berubah sesuai
dengan kata yang diucapkan.
Gambar 2.2 Contoh sinyal suara [3]
MFCC feature extraction merupakan adaptasi dan sistem pendengaran manusia,
dimana sinyal suara akan di-filter secara linear untuk frekuensi rendah (di bawah 1000 Hz)
dan secara logaritmik untuk frekuensi tinggi (di atas 1000 Hz). Berikut ini adalah blok
diagram untuk MFCC [3].
Gambar 2.3 Blok diagram untuk MFCC [3]
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
8
2.2.1 Konversi Analog Menjadi Digital
Sinyal-sinyal natural pada umumnya seperti sinyal suara merupakan sinyal
kontinyu dimana memiliki nilai yang tidak terbatas. Sedangkan pada komputer, semua
sinyal yang dapat di proses oleh komputer hanyalah sinyal diskrit atau sering dikenal
dengan isilah sinyal digital. Agar sinyal natural dapat diproses oleh komputer, maka harus
diubah terlebih dahulu dari data sinyal kontinyu menjadi sinyal diskrit. Hal itu dapat
dilakukan melalui tiga proses, diantaranya adalah proses pencuplikan data, proses
kuantisasi, dan proses pengkodean [3].
Proses pencuplikan adalah suatu proses untuk mengambil data sinyal continue
untuk setiap periode tertentu. Dalam melakukan proses pencuplikan data, berlaku aturan
Nyquist, yaitu bahwa frekuensi pencuplikan (sampling rate) minimal harus 2 kali lebih
tinggi dari frekuensi maksimum yang akan di sampling. Jika sinyal pencuplikan kurang
dan 2 kali frekuensi maksimum sinyal yang akan di sampling, maka akan timbul efek
aliasing. Aliasing adalah suatu efek dimana sinyal yang dihasilkan memiliki frekuensi
yang berbeda dengan sinyal aslinya.
Proses kuantisasi adalah proses untuk membulatkan nilai data ke dalam bilangan-
bilangan tertentu yang telah ditentukan terlebih dahulu. Semakin banyak level yang dipakai
maka semakin akurat pula data sinyal yang disimpan tetapi akan menghasilkan ukuran data
besar dan proses yang lama. Proses pengkodean adalah proses pemberian kode untuk tiap-
tiap data sinyal yang telah terkuantisasi berdasarkan level yang ditempati [3].
Berikut adalah gambaran contoh proses pembentukan sinyal digital.
Gambar 2.4 Proses pembentukan sinyal digital [3]
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
9
2.2.2 Pre-emphasize Filtering
Pre-emphasize merupakan salah satu jenis filter yang sering digunakan sebelum
sebuah sinyal diproses lebih lanjut. Filter ini mempertahankan frekuensi-frekuensi tinggi
pada sebuah spektrum yang umumnya tereliminasi pada saat proses produksi suara. Tujuan
dan pre-emphasize filter ini adalah:
1. Mengurangi noise ratio pada sinyal, sehingga dapat meningkatkan kualitas sinyal
[1, 4] .
2. Menyeimbangkan spektrum dari voiced sound [5, 6]. Pada saat memproduksi
voiced sound, glottis manusia menghasilkan sekitar -12 dB octave slope. Namun
ketika energi akustik tersebut dikeluarkan melalui bibir, terjadi peningkatan sebesar
+6 dB. Sehingga sinyal yang terekam oleh microphone adalah sekitar -6 dB octave
slope. Dampak dan efek ini dapat dilihat pada gambar 2.5.
Gambar 2.5 Contoh dari pre-emphasize pada sebuah frame [5]
Pada Gambar 2.5 tampak bahwa distribusi energi pada setiap frekuensi menjadi
lebih seimbang setelah diimplementasikan pre-emphasize filter. Bentuk yang paling umum
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
10
digunakan dalam pre-emphasize filter adalah sebagai berikut:
11 zzH (2.1) Dimana 0.9 ≤ α ≤ 1.0, dan α € R
Formula di atas dapat diimplementasikan sebagai first order differentiator,sebagai berikut:
1 nsnsny (2.2) y[n] = Sinyal hasil pre-einphasie filter
s[n] = Sinyal sebelum pre-emphasize filter
Pada umumnya nilai α yang paling sering digunakan adalah antara 0.9 sampai
dengan 1.0. Respon frekuensi dari filter tersebut adalah:
jweH jwe 1 wjw sincos1 (2.3)
Sehingga, squared magnitude response dapat dihitung dengan persamaan berikut :
jweH ww 222 sincos1 www 2222 sincoscos21
)2sin2(coscos21 2 www
2cos21 w (2.4)
Magnitude response (dB scale) untuk nilai α yang berbeda dapat dilihat pada
Gambar 2.6.
Gambar 2.6 Magnitude response dari pre-emphasize filter untuk nilai α yang berbeda [5]
2.2.3 Frame Blocking Karena sinyal suara terus mengalami perubahan akibat adanya pergeseran artikulasi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
11
dari organ produksi vokal, sinyal harus diproses secara short segments (short frame).
Panjang frame yang biasa digunakan untuk pemrosesan sinyal adalah antara 10-30
milidetik. Panjang frame yang digunakan, sangat mempengaruhi keberhasilan dalam
analisa spektral. Di satu sisi, ukuran dari frame harus sepanjang mungkin untuk dapat
menunjukkan resolusi frekuensi yang baik. Tetapi di lain sisi, ukuran frame juga harus
cukup pendek untuk dapat menunjukkan resolusi waktu yang baik.
Proses frame ini dilakukan terus sampai seluruh sinyal dapat terproses. Selain itu,
proses ini umumnya dilakukan secara overlapping untuk setiap frame. Panjang daerah
overlap yang umum digunakan adalah kurang lebih 30% sainpai 50% dari panjang frame
[5].
Gambar 2.7 Short Term Spectral Analysis [5]
2.2.4 Windowing Proses framing dapat menyebabkan terjadinya kebocoran spektral (spectral
leakage) atau aliasing. Aliasing adalah timbulnya sinyal baru dimana memiliki frekuensi
yang berbeda dengan sinyal aslinya. Efek ini dapat terjadi karena rendahnya jumlah
sampling rate, ataupun karena proses frame blocking dimana menyebabkan sinyal menjadi
discontinue. Untuk mengurangi kemungkinan terjadinya kebocoran spektral, maka hasil
dari proses framing harus melewati proses window.
Ada banyak fungsi window, w(n), seperti yang ditunjukkan pada Tabel 2.1. Sebuah
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
12
fungsi window yang baik harus menyempit pada bagian main lobe, dan melebar pada
bagian side lobe. Berikut adalah representasi fungsi window terhadap sinyal suara yang di-
input-kan.
nwnxnx i n=0,1,…,N-1 (2.5)
x(n) = Nilai Sampel Sinyal
xi(n) = Nilai Sampel dan Frame sinyal ke i
w(n) = Fungsi window
N = Frame Size, merupakan kelipatan 2.
Tabel 2.1 Fungsi-fungsi window dan formulanya Name of window Time domain sequance
Rectangular 1 Bartlett
12
121
M
mn
Blackman 1
4cos08.01
2cos5.042.0
M
nM
n
Hamming 1
2cos46.054.0
M
n
Hanning
12cos1
21
Mn
Kaiser
21
21
21 22
MIo
MnMIo
Lanczos
21
212
12
12sin
MMn
MMn
L>0, 1, 2
1
Mn ≤ 2
1
M , 0 < α < 1
Tukey
211211cos1
21
MMn
2)1( M ≤
21
Mn ≤
21M
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
13
Setiap fungsi window mempunyai karakteristik masing-masing. Diantara berbagai
fungsi window tersebut, Blackman window menghasilkan sidelobe level yang paling tinggi
(kurang Iebih -58 dB), tetapi fungsi ini juga menghasilkan noise paling besar (kurang lebih
1.73 BINS). Oleh karena itu fungsi ini jarang sekali digunakan baik untuk speaker
recognition, maupun speech recognition.
Fungsi window rectangle adalah fungsi window yang paling mudah untuk
diaplikasikan. Fungsi ini menghasilkan noise yang paling rendah yaitu sekitar
1.00 BINS. Tetapi sayangnya fungsi ini memberikan sidelobe level yang paling rendah.
Sidelobe level yang rendah tersebut menyebabkan besarnya kebocoran spektral yang terjadi
dalam proses feature extraction.
Fungsi window yang paling sering digunakan dalam aplikasi speaker recognition
adalah Hamming Window. Fungsi window ini menghasilkan sidelobe level yang tidak
terlalu tinggi (kurang lebih -43 dB), selain itu noise yang dihasilkan tidak terlalu besar
(kurang lebih 1.36 BINS).
Gambar 2.8 menunjukkan bentuk gelombang dalam time domain dan magnitude
dari Hamming window dan rectangular window. Dari contoh gambar 2.8 dapat diketahui
bahwa kebocoran spektral lebih sedikit terjadi pada hamming window dari pada pada
rectangular window.
Gambar 2.8 Bentuk gelombang dari Hamming dan Rectangular window beserta dengan mnagnitude hasil dan proses FFT [5]
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
14
2.2.5 Analisis Fourier Analisis Fourier adalah sebuah metode yang memungkinkan untuk melakukan
analisa terhadap spectral properties dari sinyal yang di-input-kan. Representasi dari
spectral properties sering disebut sebagai spectrogram. Gambar 2.9 dan Gambar 2.10
merupakan contoh dan spectrogram.
Gambar 2.9 Contoh wideband spectrogram [5]
Gambar 2.10 Contoh narrowband spectrogram [5] Dalam spectrogram terdapat hubungan yang sangat erat antara waktu dan
frekuensi. Hubungan antara frekuensi dan waktu adalah hubungan berbanding terbalik.
Bila resolusi waktu yang digunakan tinggi, maka resolusi frekuensi yang dihasilkan akan
semakin rendah. Kondisi seperti ini akan menghasilkan narrowband spectrogram.
Sedangkan wideband spectrogram adalah kebalikan dan narrowband spectrogram.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
15
Inti dari transformasi fourier adalah menguraikan sinyal ke dalam komponen-
komponen bentuk sinus yang berbeda-beda frekuensinya. Gambar 2.11 menunjukkan tiga
gelombang sinus dan superposisinya. Sinyal semula yang periodik dapat diuraikan menjadi
beberapa komponen bentuk sinus dengan frekuensi yang berbeda. Jika sinyal semula tidak
periodik maka transformasi fourier-nya merupakan fungsi frekuensi yang continue, artinya
merupakan penjumlahan bentuk sinus dari segala frekuensi. Jadi dapat disimpulkan bahwa
transformasi fourier merupakan representasi frekuensi domain dari suatu sinyal.
Representasi ini mengandung informasi yang tepat sama dengan kandungan informasi dan
sinyal semula.
Gambar 2.11 Tiga Gelombang Sinusoidal dan Superposisinya [5]
2.2.6 Discrete Fourier Transform (DFT)
DFT merupakan perluasan dari transformasi fourier yang berlaku untuk sinyal-
sinyal diskrit dengan panjang yang terhingga. Semua sinyal periodik terbentuk dari
gabungan sinyal-sinyal sinusoidal yang menjadi satu yang dalam perumusannya dapat
ditulis [5]:
1
0
/2N
n
NnkjenskS , 0 ≤ k ≤ N-1 (2.6)
N = Jumlah sampel yang akan diproses (N € N)
s(n) = Nilai Sampel Sinyal
k = Variabel frekuensi discrete, dimana akan bernilai
NkNk ,2
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
16
Dengan rumus diatas, frekuensi pembentuk dari suatu sinyal suara dalam domain
waktu dapat dicari. Hal ini adalah tujuan dari penggunaan analisa fourier
pada data suara, yaitu untuk merubah data dari domain waktu menjadi data spektrum di
domain frekuensi. Untuk pemrosesan sinyal suara, hal ini sangat menguntungkan karena
data pada domain frekuensi dapat diproses dengan lebih mudah dibandingkan data pada
domain waktu. Karena pada domain frekuensi, keras lemah suara tidak seberapa
berpengaruh.
Gambar 2.12 Domain Waktu menjadi Domain Frekuensi [5]
Untuk mendapatkan spektrum dari sebuah sinyal dengan DFT diperlukan
N buah sample data berurutan pada domain waktu. yaitu data x{m] sampai dengan
x[m+N-1]. Data tersebut dimasukkan dalam fungsi DFT maka akan dihasilkan
N buah data. Namun karena hasil dari DFT adalah simetris, maka hanya N/2 data
yang diambil sebagai spectrum[5].
2.2.7 Fast Fourier Transform (FFT)
Perhitungan DFT secara langsung dalam komputerisasi dapat menyebabkan proses
perhitungan yang sangat lama. Hal itu disebabkan karena dengan DFT, dibutuhkan N2
perkalian bilangan kompleks. Karena itu dibutuhkan cara lain untuk menghitung DFT
dengan cepat. Hal itu dapat dilakukan dengan menggunakan algoritma Fast Fourier
Transform (FFT). FFT menghilangkan proses perhitungan yang kembar dalam DFT.
Algoritma FFT hanya membutuhkan N log2 N perkalian kompleks. Berikut ini
menunjukkan perbandingan kecepatan antara FFT dan DFT[5].
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
17
Gambar 2.13 Grafik perbandingan kecepatan Direct calculation
dengan Algoritma FFT [5]
Jumlah sample sinyal yang akan di-input-kan ke dalam algoritma ini harus
merupakan kelipatan dua (2M). Algoritma Fast Fourier Transform dimulai dengan
membagi sinyal menjadi dua bagian, dimana bagian pertama berisi nilai sinyal suara pada
indeks waktu genap, dan sebagian yang lain berisi nilai sinyal suara pada indeks waktu
ganjil.Visualisasi dan proses ini dapat dilihat pada Gambar
2.14.Setelah itu, akan dilakukan analisis Fourier (recombine algebra) untuk setiap
bagiannya. Proses pembagian sinyal suara tersebut terus dilakukan sampai didapatkan dua
serinilai sinyal suara [5].
Gambar 2.14 Pembagian sinyal suara menjadi dua kelompok [5]
Algorima recombine (DFT) melakukan N perkalian koinpieks, dan dengan dengan
metode pembagian seperti ini, maka terdapat log2(N) langkah perkalian kompleks. Hal ini
berarti jumlah perkalian kompleks berkurang dan N2 (pada DFT) menjadi N log2(N).
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
18
Hasil dari proses FFT ini adalah simetris antara index 0 - (N/2 -1) dan (N/2) -(N-I).
Oleh karena itu, umumnya hanya blok pertama saja yang akan digunakan dalam proses-
proses selanjutya[5].
2.2.8 Mel Frequency Warping
Mel Frequency Warping umumnya dilakukan dengan menggunakan Filterbank.
Filterbank adalah salah satu bentuk dari filter yang dilakukan dengan tujuan untuk
mengetahui ukuran energi dari frequency band tertentu dalam sinyal suara [5]. Filterbank
dapat diterapkan baik pada domain waktu maupun domain frekuensi, tetapi untuk
keperluan MFCC, filterbank harus diterapkan dalam domain frekuensi. Gambar 2.18
menunjukkan dua jenis filterbank magnitude. Dalam kedua kasus pada Gambar 2.18 filter
yang dilakukan adalah secara linear terhadap frektLensi 0-4 kHz.
Gambar 2.15 Magnitude dari rectangular dan triangular filterbank [5]
Filterbank menggunakan representasi konvolusi dalam melakukan filter terhadap
sinyal. Konvolusi dapat dilakukan dengan melakukan multiplikasi antara spektrum sinyal
dengan koefisien filterbank. Berikut ini adalah rumus yang digunakan dalam perhitungan
filterbank.
jHjSiY iN
j
1
(2.7)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
19
N = Jumlah magnitude spectrum (N € N)
S[j] = Magnitude spectrum pada frekuensi j
Hi[j] = Koeiisien filterbank pada frekuensi j (1 ≤ i ≤M)
M = Jumlah channel dalam filterbank
Persepsi manusia terhadap frekuensi dari sinyal suara tidak mengikuti linear scale.
Frekuensi yang sebenarnya (dalam Hz) dalam sebuah sinyal akan diukur manusia secara
subyektif dengan menggunakan mel scale. Mel frequency scale adalah linear frekuensi
scale pada frekuensi dibawah 1000 Hz, dan merupakan logarithmic scale pada frekuensi
diatas 1000 Hz [5].
Gambar 2.16 Prinsip Frekuensi Warping [5]
Berikut ini adalah formula untuk menghitung mel scale.
7001log*2595 10
ffmel (2.8)
Mel(f) = Fungsi Mel Scale
f = Frekuensi
Gambar 2.17 menunjukkan triangular filterbank dengan menggunakan mel scale.
Bila diperhatikan lebih jauh, tampak bahwa untuk frekuensi dibawah 1 kHz pola filter
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
20
terdistribusikan secara linear, dan diatas 1 kHz akan terdisribusi secara logarithmic.
Gambar 2.17 Triangular filterbank dengan mel scale [5]
Dalam aplikasi speaker recognition, jumlah channel filterbank yang digunakan
akan sangat berpengaruh terhadap keberhasilan aplikasi tersebut. Semakin besar jumlah
channel yang digunakan akan semakin meningkatkan keberhasilan aplikasi, tetapi akan
membutuhkan waktu lebih besar untuk melakukan proses tersebut, begitu pula sebaliknya
[5].
2.2.9 Discrete Cosine Transform (DCT)
DCT merupakan langkah terakhir dari proses utama MFCC feature extraction.
Konsep dasar dari DCT adalah mendekorelasikan mel spectrum sehingga menghasilkan
representasi yang baik dari properti spektral lokal. Pada dasarnya konsep dari DCT sama
dengan inverse fourier transfom. Namun hasil dari DCT mendekati PCA (Principle
Component Analysis) [9]. PCA adalah metode statistik klasik yang digunakan secara luas
dalam analisa data dan kompresi.
Berikut ini adalah formula yang digunakan untuk menghitung DCT.
KknSC
K
kkn 2
1coslog1
, n=1,2,…,K (2.9)
Sk = Keluaran dari proses filterbank pada index k
K = Jumlah koefisien yang diharapkan
Koefisien ke nol dari DCT pada umumnya akan dihilangkan, walaupun sebenarnya
mengindikasikan energi dari frame sinyal tersebut. Hal ini dilakukan karena berdasarkan
penelitian-penelitian yang pernah dilakukan, koefisien ke nol ini tidak reliable terhadap
speaker recognition [9].
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
21
2.2.10 Cepstral Liftering
Cepstral hasil dari proses utarna MFCC feature extraction, memiliki beberapa
kelemahan. Low-order dari cepstral coefficients sangat sensitif terhadap spectral slope,
sedangkan bagian high-order sangat sensitif terhadap noise [9]. Oleh karena itu, maka
cepstral liftering menjadi salah satu standar teknik yang diterapkan untuk meminimalisasi
sensitifitas tersebut.
Cepstral liftering dapat dilakukan dengan mengimplementasikan fungsi window
terhadap cepstral features.
0
sin2
1L
nLnw
elsewhareLn ,...,2,1 (2.10)
L = Jumlah cepstral coefficients
n = index dari cepstral coefficients
Cepstral liftering menghaluskan spektrum hasil dari main processor sehingga dapat
digunakan lebih baik untuk pattern matching [9]. Gambar berikut ini menunjukkan
perbandingan spektrum dengan dan tanpa cepstral liftering.
Gambar 2.18 Perbandingan spectrum dengan dan tanpa cepstral liftering
Berdasarkan Gambar 2.18, dapat dilihat bahwa pola spektrum setelah dilakukannya
cepstral liftering lebih halus daripada spektrum yang tidak melalui tahap cepstral liftering.
Cepstral liftering dapat meningkatkan akurasi dan aplikasi pengenalan suara, baik speaker
recognition, maupun speech recognition [9].
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
22
2.3. Hidden Markov Model (HMM) Model Markov Tersembunyi atau lebih dikenal sebagai Hidden Markov Model
(HMM) adalah analisis statistika yang memodelkan sinyal suara dan mencari bentuk kata
yang paling sesuai. HMM berkembang dengan sangat cepat karena pemodelan ini sangat
kaya dalam struktur matematika dan mengacu pada fungsi probabilitas rantai markov [1].
Prinsip umum HMM adalah memodelkan simbol ke dalam sebuah mesin finite state,
sehingga diketahui simbol apa yang dapat mewakili sebuah parameter vektor dari sebuah
kata dimasukkan ke dalam mesin, dan diestimasi berulang–ulang hingga dihasilkan
parameter vektor atau observasi dengan mean dan kovarian yang konvergen untuk setiap
statenya [1].
Pada implementasinya sistem pengenalan suara berbasis HMM dibagi menjadi
beberapa bagian sebagai berikut [1] :
a. Data preparasi : pembentukan parameter vector (observasi)
b. Training : inisialisasi dan estimasi parameter vector
c. Testing : pengenalan
2.3.1 Observasi Pemisahaan kata menjadi simbol yang dilafalkan (phone) menghasilkan rangakaian
observasi o untuk setiap kejadian yang mungkin pada saat transisi antar state. Aggap suara
sebagai sebuah rangkaian vektor suara atau observasi, yang didefinisikan sebagai berikut
[1]:
ToooO ,...,, 21 (2.11)
Dimana oT adalah vektor suara yang diobservasi pada saat t. Observasi pada
dasarnya menentukan nilai dari persamaan berikut
OP i |maxarg_ (2.12)
Dimana ωi adalah pengucapan yang ke-i, probabilitas ini tidak dapat dihitung secara
langsung tetapi dapat dihitung dengan menggunakan aturan Bayes.
OPPOPOP iii
|
| (2.13)
Maka, prioritas kemungkinan P(ωi ) sangat tergantung pada P(O| ωi )
Dalam pengenalan suara berbasis HMM, diasumsikan bahwa rangkaian vektor
observasi berkorespondensi dengan masing masing word yang dihasilkan oleh markov
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
23
model1. Markov model adalah mesin finite state yang mengalami perubahan state sekali
setiap satuan waktu t pada saat state j dimasuki, vektor suara ot dihasilkan berdasarkan
nilai kemungkinan bj(oT). Selanjutnya transisi antara state i ke state j juga merupakan
probabilitas diskrit aij. Gambar di bawah menunjukkan contoh dari proses ini dimana lima
model state berupa rangakaian state X = 1,2,3,4,5,6 untuk membangun urutan o1 sampai
o6 [1].
Gambar 2.19 State HMM
Untuk membangun rangkaian observasi O dengan jumlah state 6. probabilitas diskrit
untuk transisi dari state i ke state j ditentukan oleh aij sedangkan bj(ot) adalah probabilitas
yang membentuk observasi pada saat t (ot) untuk state j .
Probabilitas O dibangun oleh model M yang melalui seluruh urutan state X dihitung
sabagai hasil perkalian antara kemungkinan transisi dan kemungkinan hasil. Jadi untuk
rangkaian state X pada gambar di atas.
332322221212|, obaobaobaMXOP (2.14) Meskipun demikian hanya rangkaian observasi O yang diketahui dan rangkaian state
X yang mendasari adalah tersembunyi. Itu mengapa ini disebut hidden markov model [1].
11| txtxttxX xox obMOP (2.15)
2.3.2 Inisialisasi
Inisialisasi dapat dilakukan dengan menggunakan algoritma viterbi untuk
menemukan jalur terbaik dalam sebuah matrik dimana dimensi vertikal merepresentasikan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
24
state-state HMM dan dimensi horisontal merepresentasikan frame suara. Masing masing
titik pada gambar dibawah menunjukkan kemungkinan terhadap frame saat itu dan daerah
antar titik menunjukkan kemungkinan transisi [1].
Gambar 2.20 Algoritma Viterbi
Untuk mencari urutan state setiap observasi pada frame suara diamana a35
menunjukkan kemungkinan transisi dari state 3 ke state 5 dan b3(o4) adalah probabilitas
pembentukan observasi o3 pada state 3.
Kemungkian masing masing jalur dihitung dengan menjumlah kemungkinan transisi
dan kemungkinan keluaran sepanjang path. Pada waktu t masing masing bagian path
diketahui untuk semua state i. dapat dihitung dengan persamaan di bawah [1]
tjijij obatt loglog1max (2.16) Konsep path ini sangat berguna untuk suara kontinyu pada umumnya.
2.3.3 Estimasi
Proses estimasi dilakukan dengan menggunakan metode Baum-Welch Re-estimation.
Formula Baum-Welch re-estimasi untuk mean dan kovarian pada masing masing state
HMM adalah [1]:
Tt j
T
t tjj
tL
otL
1
1 (2.17)
Dan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
25
Tt j
T
t jtjtjj
tL
ootL
1
1
(2.18)
Estimasi dilakukan terhadap mean dan varian hmm yang mana distribusi keluaran
masing masing state adalah komponen gausian, didefinisikan sebagai berikut :
i
j jijtoo
ntje
job
21
2
1 (2.19)
Parameter vector akan diestimasi dengan menggunakan algoritma foreward-
backward hingga diperoleh nilai probabilitas P(O|M) terbesar berdasarkan observasi pada
masing masing state[1]. Perhitungan algoritma Baum-Welch dilakukan berdasarkan
diagram alir berikut :
Gambar 2.21 Diagram alir untuk estimasi
Estimasi dilakukan terhadap parameter vector pada initial HMM dengan
menggunakan metode forward/backward hingga diperoleh parameter vektor yang
konvergen (tidak dapt diestimasi lagi). Kriteria update adalah nilai probabiltias observasi
terhadap model P(O|M) lebih tinggi dari nilai iterasi sebelumnya [1].
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
26
Nilai kemungkinan foreward tj untuk beberapa model M dan N state
didefinisaikan sebagai
MjtxooPt tj |,,...,1 (2.20)
kemungkinan ini dapat dihitung berdasarkan rumus :
tjN
jijij obatt
1
21 (2.21)
sedangkan nilai kemungkinan backward tj untuk model M dan N state
didefinisikan sebagai
MjtxooPt Ttj ,|,...,1 (2.22)
dan dapat dihitung dengan persamaan :
111
2
tobat jtjN
jijj (2.23)
berdasarkan persamaan
MjtxoPtt jj ,, (2.24)
maka didapat persamaan untuk menentukan nilai probabilitas Lj(t sebagai berikut :
MOjtxPtL j ,|
MOP
MjtxoP|
,,
ttP jj
1 (2.25)
dimana P = P(O|M).
Pada awalnya HMM dibelajari untuk memodelkan beberapa contoh kata dalam hal
ini adalah “one, two, three”. Hasil dari pembelajaran adalah model yang telah
diestimasi(M). Kemudian HMM digunakan untuk mengenali kata/observasi (O)
berdasarkan hasil pembelajaran tersebut. P(O|M) adalah kemungkinan rangkaian observasi
O terhadap model M. Berikut contoh proses pembelajaran dan pengenalan untuk rangkaian
observasi [1].
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
27
Gambar 2.22 Contoh proses Pembelajaran dan Pengenalan
2.3.4 Rantai Markov
Algoritma HMM didasari oleh model matematik yang dikenal dengan rantai markov.
Rantai markov secara umum ditunjukkan pada gambar 2.23. Beberapa hal yang dapat
dijelaskan tentang rantai markov yaitu [1]:
1. Transisi keadaan dari suatu keadaan tergantung pada keadaan sebelumnya.
P[qt = j|qt-1 = i, qt-2 = k......] =P[qt = j | qt-1 = i]
2. Transisi keadaan bebas terhadap waktu.
aij = P[qt = j | qt-1 = i ]
Gambar 2.23 Rantai Markov
2.3.5 Tipe HMM HMM dibagi menjadi dua tipe dasar yaitu :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
28
1. HMM ergodic.
Pada HMM model ergodic perpindahan keaadaan satu ke keadaan yang lain
semuanya memungkinkan, hal ini ditunjukkan pada Gambar 2.2. [1]
Gambar 2.24 HMM model ergodic
2. HMM Kiri-kanan(Bakis model)
Pada HMM kiri-kanan (Bakis model) perpindahan keadaan hanya dapat berpindah
dari kiri kekanan, perpindahan keadaan tidak dapat mundur ke belakang, hal ini
ditunjukkan pada Gambar 2.3. [1]
Gambar 2.25 HMM model Kiri-kanan
2.3.6 Elemen HMM Elemen yang terdapat pada HMM yaitu [1]:
a. N, jumlah dari states pada model. Tiap state diberi nama {1, 2, 3,..., N} dan state
pada saat t disimbolkan qt.
b. M, jumlah distinct observation symbols per state. Observation symbols per state
disimbolkan V= {v1, v2,.., vM}
c. Probabilitas transisi antar state adalah A = {aij}, dimana :
aij = P[qt-1 = j | qt = i ] , 1 ≤ i , j ≤ N
d. Probabilitas observation symbols pada sebuah state , B = {bj(k)}, dimana:
bj (k) = P[ot = v | qt = j ] , 1 ≤ k ≤ M
e. Inisial state distribution Π= { Πi }, dimana :
Πi = P[qt = i] , 1 ≤ i ≤ N
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
29
2.3.7 Pengenalan Suara dengan HMM Sistem pengenalan suara modern secara umum berdasarkan pada Hidden Markov
Models (HMMs). Hidden Markov Models merupakan model statistik di mana mempunyai
keluaran rangkaian simbol dan kuantitas. Dengan memiliki sebuah model yang
memberikan kemungkinan dari rangkaian akustik data yang telah diobservasi dari sebuah
atau banyak kata (rangkaian kata) akan dapat menyebabkan sistem bekerja dengan
rangkaian kata tersebut sesuai dengan aplikasi aturan Bayes [1].
)Pr()Pr()|Pr()|Pr(
acousticswordwordacousticsacousticsword (2.26)
Dari rangkaian data akustik yang ada, Pr(acoustics) adalah konstan dan tidak dapat
diabaikan. Pr(word) adalah merupakan kemungkinan terbesar dari suatu kata.
Pr(acoustics|word) massa yang paling terlibat di dalam persamaan dan diperoleh dari
Hidden Markov Models.
2.3.8 Algoritma Baum Welch Learning problem melibatkan optimalisasi dari parameter model Φ = (A,B,π) untuk
memperoleh model terbaik sebagai representasi kumpulan pengamatan tertentu. Learning
problem sebagai pendekatan menggunakan algoritma Baum Welch dimana algoritma
tersebut merupakan suatu prosedur iterative.
Kunci perhitungan parameter pada model adalah perhitungan probabilitas state
occupancy. Definisi γt(i) adalah probabilitas state Si pada waktu t, menghasilkan deretan X
dan model Φ. Dituliskan sebagai berikut :
γt(i) = P(s = S | X ,Φ) (2.27)
Persamaan di atas dapat dituliskan dalam forward backward variable sebagai
berikut :
|XP
ii
N
iii
ii
1
(2.28)
Fungsi probabilitas yang lainnya ξt(I,j), dimana probabilitas tersebut merupakan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
30
probabilitas pada state Si saat t dan akan menuju ke state Sj saat t+1, yang menghasilkan Φ
dan rangkaian observasi X sebagai berikut :
ξt(I,j) = P(st = Si, st+1 = Sj | X, Φ)
Berdasarkan definisi forward backward variable, persamaan di atas dapat
dituliskan sebagai berikut :
|, 22
XPjXbai
ji jij
Ni
N
j jij
jij
jXbat
jXbaiji
2 2 22
22,
(2.29)
Hubungan antara γτ(i) dan ξt(i,j) terlihat pada saat penjumlahan j, menghasilkan
N
jxi
1 (2.30)
Penjumlahan seluruh bagian dari γτ(i), kecuali t = T, menghasilkan angka berupa
kemungkinan state Si dikunjungi. Penjumlahan seluruh bagian dari ξt(i,j), menghasilkan
angka berupa kemungkinan transisi dari state Si ke Sj. Estimasi ulang dari parameter model
menghasilkan sebagai berikut :
πι = angka kemungkinan pada state Si saat (t = 1) = γτ(i)
i
jiij Sstatedaritransisinkemungkinaangka
SkeSstatedaritransisinkemungkinaangkad
____________
11
1
1,
T
T
iji
jid
11
1
1 22T
tt
Tttjijt
ijii
jXbad
(2.31)
jstatepadankemungkinaangka
Xasimengobservdanjstatepadankemungkinaangkakb kj ____
_______
1
1
1
Ttt
T
xx tt
jjj
jjkb k
(2.32)
Setelah mengestimasi ulang parameter model, model baru dari Φ tersebut akan
tersebut akan lebih menyerupai deretan observasi X dari pada Φ yang telah diperoleh. Hal
ini berarti P(X |Φˆ ) > P(X | Φ). Proses estimasi akan di ulang hingga diperoleh mean(rata-
rata) dan variance hasil yang konvergen.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
31
Algoritma untuk membentuk re-estimasi parameter HMM dengan Baum-Welch re-
estimasi adalah sebagai berikut [1]:
1. Untuk setiap vektor parameter/matrik, alokasikan storage untuk pembilang dan
penyebut formula Baum-Welch sebagai acumulator.
2. Hitung kemungkinan foreward dan backward untuk semua state j pada waktu t.
3. Untuk setiap state j dan waktu t, gunakan probabiltas Lj(t) dan vektor observasi
saat ini ot untuk merubah acumulator pada state itu.
4. Gunakan nilai acumulator terakhir untuk menghitung nilai parameter yang baru.
5. Jika nilai P = P(O|M) iterasi saat ini kurang dari iterasi sebelumnya maka
berhenti jika tidak ulangi langkah diatas dengan menggunakan nilai parameter
yang baru.
Algoritma Baum Welch yang telah dipaparkan di atas merupakan implementasi
dari algoritma EM (Expectation Maximization). Di awali dengan inisialisasi perkiraan
parameter HMM Φ = (A, B, π), langkah Expectation dan Maximization dijalankan
bergantian. Langkah Expectation menghitung expected state occupancy count γ dan state
transition count ξ dari probabilitas A dan B sebelumnya yang menggunakan algortima
forward-backward. Pada langkah Maximization γ dan ξ digunakan untuk memperoleh
probabilitas A, B, dan π baru. A, B, dan π yang baru tersebut dapat diperoleh dengan
menggunakan persamaan 2.30, 2.31 dan 2.32.
2.3.9 Algoritma Viterbi Algoritma Viterbi adalah algoritma dynamic programming untuk menemukan
kemungkinan rangkaian status yang tersembunyi (biasa disebut Viterbi path) yang
dihasilkan pada rangkaian pengamatan kejadian, terutama dalam lingkup HMM.
Untuk menemukan sebuah rangkaian state terbaik, q = (q1 q2 … qґ), untuk
rangkaian observasi O = (o1 o2 … oґ), perlu didefinisikan kuantitas:
δt(i) = max P[q1 q2 … qt - 1, qt = i, o1 o2 … ot|λ]
q1, q2 … qt -1.
δt(i) adalah rangkaian terbaik, yaitu dengan kemungkinan terbesar, pada waktu t di
mana perhitungan untuk pengamatan t pertama dan berakhir pada state i. Dengan
menginduksi, didapat:
δt+1(j) = [max δt(i)ij].bj(o1+1) (2.33)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
32
Untuk mendapatkan kembali rangkaian state, perlu adanya penyimpanan hasil yang
memaksimalkan persamaan 2.18. Prosedur lengkap untuk menemukan kumpulan state-
state terbaik bisa dirumuskan sebagai:
1. Inisialisasi
δ1(i) = Πibi(o1), 1 ≤ i ≥ N
Aґ(1) = 0
2. Rekursif
δt(i) = max[δt-1(i)aij]bj(ot)
Ar(j) = arg max[δt-1(i)aij] di mana: 1 ≤ i ≤ N.
2 ≤ t ≤ T.
1 ≤ j ≤ N.
3. Terminasi
P* = max[δT(i)]
qT* = arg max[δT(i)] di mana: 1 ≤ i ≤ N.
4. Lintasan status
qt* = Ar(t+1)(q*t+1) di mana: t = T-1, T-2, …, 1.
2.4. Catu daya
Perangkat elektronika dicatu oleh suplai arus searah DC (direct current) yang stabil
agar dapat bekerja dengan baik. Baterai atau accu adalah sumber catu daya DC yang paling
baik. Namun untuk aplikasi yang membutuhkan catu daya lebih besar, sumber dari baterai
tidak cukup. Sumber catu daya yang besar adalah sumber bolak-balik AC (alternating
current) dari pembangkit tenaga listrik. Untuk itu diperlukan suatu perangkat catu daya
yang dapat mengubah arus AC menjadi DC [10].
Ada dua macam catu daya, yaitu catu daya tegangan tetap dan catu daya
variabel. Catu daya tegangan tetap adalah catu daya yang memiliki tegangan keluaran
tetap dan tidak bisa diatur. Catu daya variabel merupakan catu daya yang tegangan
keluarannya dapat diubah/diatur. Catu daya yang baik selalu dilengkapi dengan regulator
tegangan. Tujuan pemasangan regulator tegangan pada catu daya adalah untuk
menstabilkan tegangan keluaran apabila terjadi perubahan tegangan masukan pada catu
daya [10].
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
33
2.5. Mikrokontroler ATmega8535
Mikrokontroler adalah sebuah sistem mikroprosesor dimana didalamnya sudah
terdapat CPU, ROM, RAM, I/O, Clock dan peralatan internal lainnya yang sudah saling
terhubung dan terorganisasi dengan baik oleh pabrik pembuatnya dan dikemas dalam satu
chip yang siap pakai [11].
Gambar 2.26 ATmega8535 [11]
2.5.1 Timer0
Timer0 adalah sebuah Timer yang dapat mencacah sumber pulsa/clock baik dari
dalam chip (timer) ataupun dari luar chip (counter) dengan kapasitas 8-bit atau 256
cacahan [11].
2.5.2 Register pengendali Timer0 Timer/Counter Control register –TCCR0
Bit 0,1,2 – CS00:CS01:CS02 bertugas untuk memilih (prescaler) atau
mendefinisikan pulsa/ clock yang akan masuk ke dalam Timer0.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
34
Tabel 2.2 Prescaler Timer0
Bit 7 - C0: Force Output Compare
Bit ini hanya dapat digunakan untuk mode pembanding. Jika bit FOC0 di- set maka akan
memaksa terjadinya compare match (TCNT0==OCR0)
Bit 6, 3 – WGM 01:0: Waveform Generation Mode
Kedua bit ini digunakan untuk memilih mode yang akan digunakan.
Tabel 2.3 Mode operasi
Bit 5:4 — COM01:0: Compare Match Output Mode
Kedua bit ini berfungsi mendefinisikan pin OC0 sebagai output timer0 (atau sebagai
saluran output PWM).
Tabel 2.4 Mode Fast PWM
Timer/CounterRegister –TCNT0
Register ini bertugas menghitung pulsa yang masuk ke dalam timer/counter. Kapasitas
register ini 8-bit atau 255 hitungan, setelah mencapai hitungan maksimal maka akan
kembali ke nol (overflow) [11].
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
35
Output Compare register – OCR0
Register ini bertugas sebagai register pembanding yang dapat ditentukan besarnya
sesuai dengan kebutuhan. Pada saat TCNT0 mencacah maka oleh CPU akan dibandingkan
dengan isi OCR0 secara kontinyu dan jika isi TCNT0 sama dengan isi OCR0 maka akan
terjadi compare match yang dapat dimanfaat untuk mode CTC dan PWM [11].
Timer/Counter Interrupt Mask Register – TIMSK
Bit 0- TOIE0: T/Co Overflow Interrupt Enable
Dalam register TIMSK timer/counter0 memiliki bit TOIE0 sebagai bit peng-aktif interupsi
timer/counter0 (TOIE0=1 enable, TOIE0=0 disable).
Bit 1- OCIE0: Output Compare Match Interrupt Enable
TIMSK timer/counter0 memiliki bit OCIE0 sebagai bit peng-aktif interupsi compare
match timer/counter0 (OCIE0=1 enable, OCIE0=0 disable).
Timer/Counter Interrupt Flag Register – TIFR
Bit 1- OCF0: Output Compare Flag 0
Flag OCF0 akan set sebagai indikator terjadinya compare match, dan akan clear sendiri
bersmaan eksekusi vektor interupsi timer0 comapare match.
Bit 0- TOVo: Timer/Counter0 Overflow Flag
Bit status timer/counter0 dalam register TIFR, dimana bit TOV0 (Timer/CounterO
Overflow Flag) akan set secara otomatis ketika terjadi overflow pada register TCNT0
bersamaan dengan eksekusi vektor interupsi.
2.5.3 Mode operasi Pemilihan mode operasi Timer0 ditentukan oleh bit-WGM01 dan bitWGM00 pada register
TCCR0 [11].
Fast PWM (Pulse Width Modulation)
Dalam mode ini dapat dibuat generator gelombang PWM, di mana PWM adalah
bentuk gelombang digital/pulsa yang bisa diatur duty cycle-nya. Duty cycle adalah
perbandingan antara lama pada saat on dan lama periode satu gelombang pulsa. Semakin
besar duty cycle maka akan semakin cepat motor berputar (duty cycle 100% = kecepatan
max motor) [11].
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
36
Gambar 2.27 Pulsa PWM [11]
%100_ xttcycleduty
p
on (2.34)
Timer0 dalam mode Fast PWM digunakan untuk mengendalikan lama ton dan toff
melalui isi register pembanding OCR0 yang akan berakibat kepada besar duty cycle yang
dihasilkan. Untuk chanel (saluran) PWM timer/counter0 adalah pin OC0 (PB3) sebagai
keluaran saluran PWM. Dalam mode Fast PWM sifat cacahan register pencacah TCNT0
mencacah dan BOTTOM (0x00) terus mencacah naik (counting-up) hingga mencapai
MAX (0xFF) kemudian mulai dan BOTTOM lagi dan begitu seterusnya atau yang
dinamakan singgle slope (satu arah cacahan) [11].
Gambar 2.28 Pulsa Fast PWM [11]
Dalam mode non-inverting PWM, output pin OC0 (PB3) di-clear pada saat
compare match (TCNT0==OCR0) dan di-set pada saat BOTTOM (TCNT0==0x00).
Dalam mode inverting PWM, output pin OC0 (PB3) di-set pada saat compare match
(TCNT0==OCR0) dan di-clear pada saat BOTTOM (TCNT0==0x00) [11].
Frekuensi pin OC0 (PB3) untuk mode ini dihitung dengan persamaan berikut:
256./_
Nf
f OIclkocnPWM (2.35)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
37
Di mana fclk_i/o adalah frekuensi clock chip yang digunakan.
N adalah prescaler sumber clock yang digunakan (1, 8, 64, 256, 1024).
2.6. Motor servo Motor servo adalah sebuah motor dengan sistem umpan balik tertutup di mana
posisi dari motor akan diinformasikan kembali ke rangkaian kontrol yang ada di dalam
motor servo. Motor ini terdiri dari sebuah motor DC, serangkaian gear, potensiometer dan
rangkaian kontrol. Potensiometer berfungsi untuk menentukan batas sudut dari putaran
servo. Sedangkan sudut dari sumbu motor servo diatur berdasarkan lebar pulsa yang
dikirim melalui kaki sinyal dari kabel motor [10].
Karena motor DC servo merupakan alat untuk mengubah energi listrik menjadi
energi mekanik, maka magnit permanen motor DC servolah yang mengubah energi listrik
ke dalam energi mekanik melalui interaksi dari dua medan magnit. Salah satu medan
dihasilkan oleh magnit permanen dan yang satunya dihasilkan oleh arus yang mengalir
dalam kumparan motor. Resultan dari dua medan magnit tersebut menghasilkan torsi yang
membangkitkan putaran motor tersebut. Saat motor berputar, arus pada kumparan motor
menghasilkan torsi yang nilainya konstan.
Secara umum terdapat 2 jenis motor servo. Yaitu motor servo standard dan motor
servo continous. Servo motor tipe standar hanya mampu berputar 180 derajat [10]. Motor
servo standard sering dipakai pada sistim robotika misalnya untuk membuat “ Robot Arm”
( Robot Lengan ), sedangkan servo motor continuous dapat berputar sebesar 360 derajat.
Motor servo continous sering dipakai untuk “Mobile Robot”.
2.7. Komunikasi Serial RS232 RS-232 (Recomended Standart 232) adalah sebuah Standard yang ditetapkan oleh
Electronic Industry Association dan Telecomunication Industry Association pada tahun
1962 [12]. Karakteristik sinyal yang diatur pada RS232 meliputi level tegangan sinyal,
kecuraman perubahan tegangan (slew rate) dari level tegangan ‘0’ menjadi ‘1’ dan
sebaliknya. Beberapa parameter yang ditetapkan EIA (Electronics Industry Association)
antara lain :
a. Level tegangan antara +3 sampai +15 Volt pada input line receiver sebagai level
tegangan ‘0’, dan tegangan antara –3 sampai –15 Volt sebagai level tegangan ‘1’.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
38
b. Level tegangan output line driver antara +5 sampai +15 Volt untuk menyatakan
level tegangan ‘0’, dan antara –5 sampai –15 Volt menyatakan level tegangan ‘1’.
c. Beda level tegangan sebesar 2 Volt disebut sebagai sebagai noise margin dari
komunikasi RS232.
RS232 pada komputer menggunakan konektor dengan 9 pin (DB9), seperti yang
ditunjukkan pada Gambar 2.29. Untuk konfigurasi pin dan nama bagian dari konektor
serial DB9 ditunjukkan pada Tabel 2.5.
Gambar 2.29 Konfigurasi Konektor DB9 [12]
Tabel 2.5 Konfigurasi Pin dan Nama Bagian Konektor Serial DB9 [12]
No
pin
Nama
pin Deskripsi Fungsi
1 DCD Data Carrier
Detect
Saluran sinyal ini akan diaktifkan ketika DTE
mendeteksi suatu carrier dari DCE.
2 RXD Received Data Sebagai penerimaan data serial.
3 TXD Transmit Data Sebagai pengiriman data serial.
4 DTR Data Terminal
Ready
Dengan saluran ini, DTE memberitahukan kesiapan
terminal.
5 GND Ground Saluran ground.
6 DSR Data Set Ready Dengan saluran ini, DTE memberitahukan bahwa siap
melakukan komunikasi.
7 RST Request To Send Dengan saluran ini , DCE diminta mengirim data oleh
DTE.
8 CTS Clear To Send Dengan saluran ini, DCE memberitahukan bahwa DTE
boleh mulai mengirim data.
9 RI Ring Indicator Dengan saluran ini, DCE memberitahukan ke DCE
bahwa sebuah stasiun menghendaki suatu hubungan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
39
Pada umumnya komunikasi serial menggunkan komponen IC MAX232. IC
MAX232 berfungsi sebagai buffer pada mode transmisi asynchronous antara komputer
dengan IC keluarga TTL. Konfigurasi IC MAX232 ditunjukkan pada Gambar 2.30. IC
MAX232 mempunyai dua receiver yang berfungsi sebagai pengubah level tegangan dari
level RS232 ke level TTL dan dua drivers yang berfungsi mengubah level tegangan dari
level TTL ke level RS232. Perbedaan Level tegangan RS232 dengan level tegangan TTL
ditunjukkan pada Gambar 2.31.
Gambar 2.30 Konfigurasi IC MAX232 [13]
Gambar 2.31 Perbedaan Level Tegangan TTL dan RS232 [14]
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
40
Untuk mengurangi kemungkinan terjadinya gangguan cross talk antara kabel
saluran sinyal RS232, kecuraman perubahan tegangan sinyal dibatasi tidak boleh lebih dari
30 Volt/mikro-detik. semakin besar kecuraman sinyal, semakin besar pula kemungkinan
terjadi cross talk. Di samping itu ditentukan pula kecepatan transmisi data seri tidak boleh
lebih besar dari 20 KiloBit/Detik. Impedansi saluran dibatasi antara 3 Kilo-Ohm sampai 7
Kilo- Ohm, dalam standard RS232 yang pertama ditentukan pula panjang kabel tidak boleh
lebih dari 15 Meter (50 feet), tapi ketentuan ini sudah direvisi pada standar RS232 versi
‘D’. Dalam ketentuan baru tidak lagi ditentukan panjang kabel maksimum, tapi ditentukan
nilai kapasitan dari kabel tidak boleh lebih besar dari 2500 pF, sehingga dengan
menggunakan kabel kualitas baik bisa dicapai jarak yang lebih dari 50 feet.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
-
41
BAB III
RANCANGAN PENELITIAN 3.1. Arsitektur Sistem
Sistem yang akan dibuat terdiri atas dua subsistem, yaitu subsistem hardware dan
subsistem software. Subsistem hardware terdiri dari motor penggerak plant,
mikrokontroler sebagai pengendali pergerakan motor dan plant berupa pintu geser
otomatis. Plant pintu yang akan dibangun berukuran 8cm x 18 cm, yang terbuat dari bahan
akrilik dengan ketebalan 3mm. Sedangkan subsistem software terdapa