Aplikasi pengenalan ucapan secara real time untuk mengatur kecerahan lampu DC menggunakan DCT dan korelasi.

(1)

viii

INTISARI

Secara umum suara adalah fenomena fisik yang diakibatkan oleh sebuah getaran. Saat manusia berbicara pita suara akan menutup dan bergetar. Getaran yang dihasilkan pun beragam sehingga menghasilkan suara yang beragam pula. Keunikan inilah yang membuat setiap manusia memiliki perbedaan suara, terutama ketika melakukan pengucapan sebuah kata. Kata-kata yang di ucapkan oleh manusia memiliki pola-pola unik sehingga memungkinkan untuk dimanfaatkan membantu aktifitas harian manusia itu sendiri. Dari keunikan ini muncul sebuah ide untuk merancang dan membuat sebuah alat sederhana untuk mengontrol tingkat kecerahan lampu DC secara real time dengan memanfaatkan suara manusia sebagai inputan. Pengenalan suara ini menggunakan metode ekstraksi ciri DCT dan fungsi korelasi. Lampu yang akan di kontrol adalah LED dan akan diserialkan dengan laptop. Proses pengenalan ucapan melalui beberapa subproses antara lain perekaman, normalisasi, pemotongan sinyal, windowing, zerro padding, ekstraksi ciri DCT, fungsi korelasi penentuan keluaran dan komunikasi serial.

Aplikasi pengenalan ucapan sudah dibuat dan dapat bekerja sesuai dengan perancangan. Pada program pengenalan ini menamplikan gelombang suara terekam, spektrum ekstraksi ciri, dan hasil keluaran yang berupa text. Pada program pengenalan secara real time mampu mengenali sebesar 92,5 % untuk user satu dan 95 persen untuk user dua dan tiga. Parameter pengenalan terbaik berada pada variasi batas potong 0,3 standar deviasi 1,7 dan segment averaging 64. Program pengenalan ucapan juga mampu mengontrol tingkat kecerahan lampu. Ucapan yang mampu dikenali ada empat yaitu

‘hidup’,‘mati’,‘terang’dan‘gelap’.

Kata kunci : suara manusia, ucapan, DCT (Discrete Cosine Transform), gaussian windowing,fungsi korelasi, komunikasi serial danLED.


(2)

ix

ABSTRACT

Generally, voice is a physical phenomenon caused by a vibration. When human speak, vocal cords will close and vibrate. The generated vibrations were varied so as to produce a variety voice anyway. This uniqueness make human have a different voice, especially when human pronouncing some words. The words spoken by humans have unique patterns making it possible to be used to help the daily activities of the man himself. This uniqueness arises an idea to design and make a simple tool to control the brightness level of the DC light in real time by utilizing the human voice as an input. The voice recognition using DCT feature extraction method and correlation functions. types of lamp that will be in control is the LED and will be serialized with a laptop. Speech recognition process through several subprocesses include recording, normalization, cutting the signal, windowing, zerro padding, DCT feature extraction, deciding output and serial communication.

Speech recognition application has been made and can work in accordance with the design. Speech recognition aplication display recorded voice waves, spectral feature extraction, and output in the form of text. The program in real time capable of recognizing 92.5% for user number one and 95 percent for user number two and three. The best parameters for cutting limit is 0,3 standard deviation is 1,7 and segment averaging 64. Speech recognition program is also able to control the light levels. Speech that is able to be recognized that there are four‘hidup’,‘mati’,‘terang’and‘gelap’.

Keywords: human voice, speech, DCT (Discrete Cosine Transform), windowing, correlation functions, communication seriall and LED.


(3)

i

TUGAS AKHIR

APLIKASI PENGENALAN UCAPAN SECARA REAL TIME

UNTUK PENGATUR KECERAHAN LAMPU DC

MENGGUNAKAN DCT DAN KORELASI

Diajukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik

Program Studi Teknik Elektro

Oleh :

Giovanni Eddy Jegarut NIM : 105114035

PROGRAM STUDI TEKNIK ELEKTRO

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA


(4)

ii

FINAL PROJECT

APPLICATION OF REAL TIME SPEECH RECOGNITION FOR DC

LAMP BRIGHTNESS CONTROLLING USING DCT AND

CORRELATION

Presented as partial fulfillment of the requirements To obtain thesarjana teknikdegree

In electrical engineering study program

Oleh :

Giovanni Eddy Jegarut NIM : 105114035

ELECTRICAL ENGINEERING STUDY PROGRAM

ELECTRICAL ENGINEERING DEPARTEMENT

FACULTY OF SCIENCE AND TECHNOLOGY

SANATA DHARMA UNIVERSITY

YOGYAKARTA

2015


(5)

(6)

(7)

(8)

vi

HALAMAN PERSEMBAHAN DAN MOTTO HIDUP

MOTTO:

Barang Siapa Ingin Mutiara

Maka Dia Harus Terjun Ke Laut Yang Dalam

Untuk Mendapatkannya

Persembahan

Karya ini kupersembahkan kepada....

Tuhan Yang Maha Esa atas seluruh berkatnya

Bapak ,Ibu dan Adik-adik saya yang selalu mendukung dalam segala hal

Semua teman-teman semasa kuliah yang menjadi teman pelipur lara


(9)

(10)

viii

INTISARI

Secara umum suara adalah fenomena fisik yang diakibatkan oleh sebuah getaran. Saat manusia berbicara pita suara akan menutup dan bergetar. Getaran yang dihasilkan pun beragam sehingga menghasilkan suara yang beragam pula. Keunikan inilah yang membuat setiap manusia memiliki perbedaan suara, terutama ketika melakukan pengucapan sebuah kata. Kata-kata yang di ucapkan oleh manusia memiliki pola-pola unik sehingga memungkinkan untuk dimanfaatkan membantu aktifitas harian manusia itu sendiri. Dari keunikan ini muncul sebuah ide untuk merancang dan membuat sebuah alat sederhana untuk mengontrol tingkat kecerahan lampu DC secara real time dengan memanfaatkan suara manusia sebagai inputan. Pengenalan suara ini menggunakan metode ekstraksi ciri DCT dan fungsi korelasi. Lampu yang akan di kontrol adalah LED dan akan diserialkan dengan laptop. Proses pengenalan ucapan melalui beberapa subproses antara lain perekaman, normalisasi, pemotongan sinyal, windowing, zerro padding, ekstraksi ciri DCT, fungsi korelasi penentuan keluaran dan komunikasi serial.

Aplikasi pengenalan ucapan sudah dibuat dan dapat bekerja sesuai dengan perancangan. Pada program pengenalan ini menamplikan gelombang suara terekam, spektrum ekstraksi ciri, dan hasil keluaran yang berupa text. Pada program pengenalan secara real time mampu mengenali sebesar 92,5 % untuk user satu dan 95 persen untuk user dua dan tiga. Parameter pengenalan terbaik berada pada variasi batas potong 0,3 standar deviasi 1,7 dan segment averaging 64. Program pengenalan ucapan juga mampu mengontrol tingkat kecerahan lampu. Ucapan yang mampu dikenali ada empat yaitu

‘hidup’,‘mati’,‘terang’dan‘gelap’.

Kata kunci : suara manusia, ucapan, DCT (Discrete Cosine Transform), gaussian windowing,fungsi korelasi, komunikasi serial danLED.


(11)

ix

ABSTRACT

Generally, voice is a physical phenomenon caused by a vibration. When human speak, vocal cords will close and vibrate. The generated vibrations were varied so as to produce a variety voice anyway. This uniqueness make human have a different voice, especially when human pronouncing some words. The words spoken by humans have unique patterns making it possible to be used to help the daily activities of the man himself. This uniqueness arises an idea to design and make a simple tool to control the brightness level of the DC light in real time by utilizing the human voice as an input. The voice recognition using DCT feature extraction method and correlation functions. types of lamp that will be in control is the LED and will be serialized with a laptop. Speech recognition process through several subprocesses include recording, normalization, cutting the signal, windowing, zerro padding, DCT feature extraction, deciding output and serial communication.

Speech recognition application has been made and can work in accordance with the design. Speech recognition aplication display recorded voice waves, spectral feature extraction, and output in the form of text. The program in real time capable of recognizing 92.5% for user number one and 95 percent for user number two and three. The best parameters for cutting limit is 0,3 standard deviation is 1,7 and segment averaging 64. Speech recognition program is also able to control the light levels. Speech that is able to be recognized that there are four‘hidup’,‘mati’,‘terang’and‘gelap’.

Keywords: human voice, speech, DCT (Discrete Cosine Transform), windowing, correlation functions, communication seriall and LED.


(12)

x

KATA PENGANTAR

Puji dan syukur penulis panjatkan kepada Tuhan Yesus Kristus karena telah memberikan rahmat-Nya sehingga penulis dapat menyelesaikan laporan tugas akhir ini dengan baik.Laporan tugas akhir ini disusun untuk memenuhi syarat memperoleh gelar sarjana.

Selama pembuatan tugas akhir ini penulis menyadari bahwa ada begitu banyak pihak yang telah memberikan bantuan baik bantuan materi, moral maupun dukungan. Oleh karena itu penulis ingin mengucapkan terimakasih kepada :

1. Petrus Setyo Prabowo, S.T., M.T., Ketua Program Studi Teknik Elektro Universitas Sanata Dharma.

2. Dr.Linggo Sumarno, dosen pembimbing yang dengan penuh setia, kesabaran dan pengertian untuk membimbing dalam menyelesaikan Tugas Akhir ini.. 3. Bapak dan Ibu dosen yang telah mengajarkan banyak ilmu yang bermanfaat

selama menempuh pendidikan di Universitas Sanata Dharma.

4. Segenap laboran dan karyawan Fakultas Sains dan Teknologi yang telah memberikan dukungan secara tidak langsung dalam kelancaran penulis mengerjakan penulisan tulisan tugas akhir ini.

5. Kedua orang tua penulis yang telah banyak memberikan dukungan doa, kasih sayang dan motivasi selama menempuh pendidikan di Universitas Sanata Dharma.

6. Adik-adik penulis yang selalu memberi dukungan dalam mengawali dan mengakhiri masa - masa menempuh pendidikan di Universitas Sanata Dharma. 7. Teman – teman seperjuangan Teknik Elektro 2010 yang telah menemani di

waktu siang ataupun malam pada saat menempuh pendidikan di Universitas Sanata Dhama.

8. Semua pihak yang tidak bisa disebutkan satu persatu yang telah banyak memberikan banyak bantuan dan dukungan dalam menyelesaikan tugas akhir ini.

Penulis menyadari bahwa dalam penyusunan laporan tugas akhir masih mengalami kesulitan dan tidak lepas dari kesalahan.Oleh karena itu, penulis mengharapkan masukan,


(13)

(14)

xii

DAFTAR ISI

Halaman

HALAMAN JUDUL

... i

HALAMAN PERSETUJUAN

.. ... iii

HALAMAN PENGESAHAN

. ... iv

PERNYATAAN KEASLIAN KARYA

... v

HALAMAN PERSEMBAHAN DAN MOTTO HIDUP

... vi

LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA

ILMIAH UNTUK KEPENTINGAN AKADEMIS

. ... vii

INTISARI

... viii

ABSTRACT

... ix

KATA PENGANTAR

. ... x

DAFTAR ISI

. ... xii

DAFTAR GAMBAR

. ... xvi

DAFTAR TABEL...

xix

BAB I PENDAHULUAN

1.1. Latar Belakang... 1

1.2. Tujuan dan Manfaat Penelitian... 2

1.3. Batasan Masalah ... 2

1.4. Metodologi Penelitian ... 2

BAB II DASAR TEORI

2.1. Ucapan ... 4

2.2. Mikrofon... 5

2.3. Kartu Suara... 7

2.4. sampling... 8

2.5. windowing... 8

2.6. Jendela Gaussian ... 8

2.7. Normalisasi... 9

2.8. Zerro Padding.. ... 10


(15)

xiii

2.10. Template Matching... 11

2.11. Segment Averaging. ... 11

2.12. Korelasi... 12

2.13. Matlab... 12

2.14. MikrokontrolerATMega8535 ... 14

2.15. Arsitektur Dan Konfigurasi Pin ATMega8535... ... 14

2.16. USART(Universal Synchronous and Asynchronous serial Receiver and Transmitter) pada ATMega 8535... 16

2.17. Pulse Width Modulation... 18

2.18. LED... 18

2.19. Driver L298... 19

2.20. ModuleK-125R.. ... 21

2.21. VoltageRegulators. ... 22

BAB III PERANCANGAN

3.1. Sistem Aplikasi Pengenalan Ucapan untuk Mengontrol Lampu DC ... 24

3.1.1. Ucapan Manusia... ... 24

3.1.2. Mikrofon... 25

3.1.3.Sound Card(Kartu Suara)... ... 26

3.1.4. Proses Perekaman... 26

3.1.5. Pengenalan Ucapan.. ... 26

a. Preprocessing. ... 28

I. Normalisasi... 28

II. Pemotongan Sinyal... 29

III.Windowing.. ... 29

IV.Zerro Padding... 30

b. Ekstraksi Ciri. ... 31

c. Korelasi. ... 32

d. Penentuan Keluaran. ... 33

e.Outputpengenalan ucapan. ... 33

3.2. Perancangan Referensi Ucapan ... 34

3.3. Suara Uji... 35

3.4. Perancangan PembuatanSoftware... 35


(16)

xiv

3.5.1. Perancangan Mekanik ... 36

3.5.2. Masukan(input)... 38

3.5.3. Perancangan Input-Output Sistem Mikrokontroler ATMega8535 ... 39

3.5.4.DriverL298 ... 39

3.5.5. PerancanganOutput (LED). ... 40

3.5.6. Perancangan Catu Daya... 41

3.5.7. Perancangan Program Mikrokontroler. ... 43

BAB IV HASIL DAN PEMBAHASAN

4.1. Pengujian Aplikasi Pengenalan Ucapan Secarareal timeMenggunakan DCT dan Korelasi... 46

4.1.1. Tombol Rekam ... 48

4.1.2. Pop UpMenu ... 52

4.1.3. Tombol Reset... 55

4.1.4. Tombol Keluar... 55

4.2. Hasil Pengujian Program Pengenalan Ucapan Untuk Tingkat Pengenalan Ucapan ... 56

4.2.1. Pengujian Pengenalan Secara TidakReal Time... 57

4.2.2. Pengujian Pengenalan SecaraReal Time... 62

4.2.3. Pengujian Waktu Perekaman Terbaik... ... 65

4.2.4. Gambar FisikHardware... 66

4.2.5. Mekanik Lampu Belajar... . 66

4.2.6. Subsistem Elektronik... 68

4.3. Pengujian Alat... ... 70

4.3.1. Rangkaian Catu Daya... ... 71

4.3.2. Rangkaian Driver L-298... 71

4.3.3. Pengujian Sistem Mikrokontroler... 72

a. Pengujian Secara TidakReal Time... .... 72

b. Pengujian SecaraReal Time... ... 73

BAB V KESIMPULAN DAN SARAN

5.1. Kesimpulan... 75

5.2. Saran ... 75


(17)

xv

LAMPIRAN

LAMPIRAN APENGHITUNGAN TEGANGAN, INTENSITAS CAHAYA, DUTY CYCLEDAN PWM (PULSE WIDTH MODULATION) ... L1

LAMPIRAN BHasil Perekaman Kata Hidup, Mati, Terang dan Gelap... L4

LAMPIRAN CListing Program Matlab ... L6

LAMPIRAN DListing Program Mikrokontroler ... L34 LAMPIRAN E Pengujian Perekaman Waktu Terbaik. ... L48


(18)

xvi

DAFTAR GAMBAR

Halaman

Gambar 1.1. Model Blok Perancangan... 3

Gambar 2.1. Gambar Artikulator Pada Saat Produksi Suara ... 4

Gambar 2.2. Gambar Tempat Produksi Suara... 5

Gambar 2.3. Cara Kerja Mikrofon Dinamik ... 6

Gambar 2.4. Cara Kerja Mikrofon Kondensor ... 6

Gambar 2.5. Contoh Mikrofon ... 6

Gambar 2.6. Contoh Kartu Suara ... 7

Gambar 2.7. Contoh Jendela Gaussian 64 Titik Dengan Nilai Standar Deviasi (Σ) Yang Beragam ... 8

Gambar 2.8. Contoh Penerapan Windowing... 9

Gambar 2.9. Contoh PenggunaanZerro Padding... 10

Gambar 2.10. Contoh DCT Dari Sinyal Dengan Menggunakan DCT 256 Titik ... 11

Gambar 2.11. Penerapansegment averaginguntuk pengurangan koefisien... 12

Gambar 2.12. MatlabCommand Window... 13

Gambar 2.13. PIN Out Atmega8535 ... 14

Gambar 2.14. Diagram Blok Arsitektur USART Mikrokontroler AVR Atmega8535 16 Gambar 2.15. Register UDR ... 17

Gambar 2.16. Bentuk Gelombang PWM Untuk 4(empat) Kondisi. ... 18

Gambar 2.17. LED... 19

Gambar 2.18. Gambar Penampang L 298... 20

Gambar 2.19. ModuleK-125R... ... 21

Gambar 2.20. Rangkaian Regulator Tegangan +12 V... 22

Gambar 3.1. Diagram Blok Keseluruhan Aplikasi Pengenalan Ucapan Untuk Mengontrol Lampu DC.. ... 24

Gambar 3.2. Microphone GeniusMIC-01A... 25

Gambar 3.3. Diagram Blok Proses Perekaman ... 27

Gambar 3.4. Diagram Blok Sistem Pengenalan Ucapan ... 27

Gambar 3.5. Diagram Alir Dari Proses Normalisasi ... 28


(19)

xvii

Gambar 3.7. Diagram Alir ProsesWindowing... 30

Gambar 3.8. Diagram Alir Zero Padding ... 31

Gambar 3.9. Diagram Alir Proses Ekstraksi CiriDCT... 31

Gambar 3.10. Diagram Alir Proses Pembandingan Korelasi ... 32

Gambar 3.11. Diagram Alir Proses Penentuan Keluaran ... 33

Gambar 3.12. Diagram Alir pengiriman serial ... 33

Gambar 3.13. Diagram Blok Dari Proses Pengambilan Referensi Ucapan ... 34

Gambar 3.14. Tampilan User ... 35

Gambar 3.15. Tampak Depan... 36

Gambar 3.16. Tampak Samping Kanan ... 37

Gambar 3.17. Tampak belakang... 37

Gambar 3.18. Tampak Samping Kiri ... 38

Gambar 3.19. GambarSchematicDriver L298 ... 39

Gambar 3.20. Rangkaian LED... 40

Gambar 3.21. Rangkaian Catu Daya... 42

Gambar 3.22. Diagram Alir Program Mikrokontroler... 44

Gambar 4.1. IconProgram Pengenalan ... 46

Gambar 4.2. Tampilan Awal Matlab... 47

Gambar 4.3 Tampilan Program Pengenalan... 47

Gambar 4.4. Grafik Pengaruh Perubahan Batas Potong Terhadap Tingkat Pengenalan Frame Averaging16... 58

Gambar 4.5. Grafik Pengaruh Perubahan Standar Deviasi Terhadap Tingkat PengenalanFrame Averaging16. ... 58

Gambar 4.6. Grafik Pengaruh Perubahan Batas Potong Terhadap Tingkat Pengenalan Frame Averaging32... 59

Gambar 4.7. Grafik Pengaruh Perubahan Standar Deviasi Terhadap Tingkat PengenalanFrame Averaging32. ... 59

Gambar 4.8. Grafik Pengaruh Perubahan Batas Potong Terhadap Tingkat Pengenalan Frame Averaging64... 60

Gambar 4.9. Grafik Pengaruh Perubahan Standar Deviasi Terhadap Tingkat Pengenalan Frame Averaging64... 60

Gambar 4.10. Grafik Pengaruh Perubahan Batas Potong Terhadap Tingkat Pengenalan Frame Averaging128... 61


(20)

xviii

Gambar 4.11. Grafik Pengaruh Perubahan Standar Deviasi Terhadap Tingkat Pengenalan

Frame Averaging128... 61

Gambar 4.12. Lampu Belajar Tampak Dari Depan... 66

Gambar 4.13. Lampu Belajar Tampak Dari Samping. ... 67

Gambar 4.14. Lampu Belajar Tampak Dari Belakang. ... 67

Gambar 4.15. Subsistem Elektronik... 68

Gambar 4.16. MinimumSistem Mikrokontroler. ... 68

Gambar 4.17. Rangkaian Catu Daya. ... 69

Gambar 4.18. Rangkaian Driver L298. ... 70


(21)

xix

DAFTAR TABEL

Halaman

Tabel 2.1. Fungsi Pin-Pin Pada ATMega 8535... 15

Tabel 2.2. Fungsi Alternatif Port D ... 15

Tabel 2.3. Perhitungan Pengaturan Register Baud Rate ... 17

Tabel 2.4. Tabel Logika Prinsip Kerja IC L 298... 20

Tabel 3.1. SpesifikasiDesktop Microphone GeniusMIC-01A... 25

Tabel 3.2. Keterangan Tampilan User... 36

Tabel 3.3. Konfigurasi Port Mikrokontroler ... 39

Tabel 3.4. SpesifikasiLEDYang Digunakan... 40

Tabel 3.5. Tabel Keterangan... ... 43

Tabel 3.6. Tabel Keadaan... 44

Tabel 4.1. Hasil Pengenalan Ucapan Yang Dikenali. ... 56

Tabel 4.2. Hasil Pengujian (%) Secara Tidak Real Time Frame Averaging16... 57

Tabel 4.3. Hasil Pengujian (%) Secara Tidak Real Time Frame Averaging32... 59

Tabel 4.4. Hasil Pengujian (%) Secara Tidak Real Time Frame Averaging 64... 60

Tabel 4.5. Hasil Pengujian (%) Secara Tidak Real Time Frame Averaging128... 61

Tabel 4.6. Batas Bawah Nilai Korelasi ... 62

Tabel 4.7. Data Hasil Pengujian SecaraReal Time UserSatu ... 63

Tabel 4.8. Data Hasil Pengujian SecaraReal Time UserDua ... 63

Tabel 4.9. Data Hasil Pengujian SecaraReal Time UserTiga... 63

Tabel 4.10. Data Hasil Pengujian Pengucapan Kata Lain... 64

Tabel 4.11. Tabel Data Hasil Pengujian Waktu Perekaman Terbaik. ... 65

Tabel 4.12. Hasil Pengukuran Keluaran Rangkaian Catu Daya... 71

Tabel 4.13. Hasil Penghitungan Tegangan Total . ... 71

Tabel 4.14 Data Hasil Pengujian Secara TidakReal TimePada Mikrokontroler ... 72

Tabel 4.15. Hasil Pengujian Pada Kecerahan Level 0... 73

Tabel 4.16. Hasil Pengujian Pada Kecerahan Level 1... 73

Tabel 4.17. Hasil Pengujian Pada Kecerahan Level 2... 73

Tabel 4.18. Hasil Pengujian Pada Kecerahan Level 3... 73


(22)

xx

Tabel 4.20. Tabel Pembandingan Antara Perancangan Dan Hasil Pengukuran


(23)

1

BAB 1

PENDAHULUAN

1.1.

Latar Belakang

Secara umum suara adalah fenomena fisik yang diakibatkan oleh sebuah getaran. Saat manusia berbicara pita suara akan menutup dan bergetar. Getaran yang dihasilkan pun beragam sehingga menghasilkan suara yang beragam pula. Keunikan inilah yang membuat setiap manusia memiliki perbedaan suara, terutama ketika melakukan pengucapan sebuah kata. Kata-kata yang di ucapkan oleh manusia memiliki pola-pola unik sehingga memungkinkan untuk dimanfaatkan membantu aktifitas harian manusia itu sendiri.

Perkembangan dunia elektronika dewasa ini semakin pesat sehingga Dengan memanfaatkan ilmu yang telah banyak penulis pelajari di Teknik Elektro, penulis ingin merancang dan membuat sebuah alat sederhana untuk mengontrol tingkat kecerahan lampu DC secarareal timedengan memanfaatkan suara manusia sebagaiinput. Pengenalan suara ini menggunakan metode ekstraksi ciri DCT dan korelasi. Lampu yang akan di kontrol adalah LED dan akan diserialkan dengan laptop. Penulis menemukan bahwa penelitian pengenalan suara sudah pernah dilakukan sebelumnya dalam penelitian Aplikasi Pengenalan Ucapan Sebagai Pengatur Mobil Dengan Pengendali Jarak Jauh [1]. Penelitian yang saya lakukan kali ini berbeda dengan yang sebelumnya. Aplikasi Pengenalan Ucapan Sebagai Pengatur Mobil Dengan Pengendali Jarak Jauh menggunakan metodeHMM (Hidden Markov Model)danLPC (Linier Predictive Coding).

Komponen yang digunakan berupa minsis, LED 12V/10 Watt, catu daya 12 Volt, mikrokontroler ATmega 8535, Driver L298, Microphone, Modulo K-125R. Alat ini akan bekerja ketikausermemberikaninput yang akan ditangkap olehmicrophonedan diolah di dalam komputer menggunakan program Matlab dengan metode ekstraksi ciri DCTdengan korelasi. Setelah itu akan di serialkan menggunakan modul K-125R ke mikrokontroler ATmega 8535. Dimana mikrokontroler ATmega 8535 yang akan mengontrol tingkat kecerahanLED12V/10WattmenggunakanPWM (Pulse Width Modulation).


(24)

1.2.

Tujuan dan Manfaat Penelitian

Tujuan dari penelitian ini adalah menciptakan sebuah aplikasi lampu belajar pintar yang bisa diatur tingkat kecerahannya sesuai dengan perintah ucapan. Manfaat dari penelitian ini adalah bisa menjadi salah satu titik pacu perkembangan teknologi yang memanfaatkan suara untuk mengontrol suatu hal.

1.3.

Batasan Masalah

Sistem pengenalan suara untuk mengontrol LED ini terdiri dari hardware dan software. Hardware berfungsi untuk mendapatkan masukan (input) dan mengelola keluaran (output).Softwareberfungsi untuk memproses masukan (input).

Batasan masalah dalam penelitian ini adalah : a. Ekstraksi ciri yang digunakan adalahDCT. b. Menggunakan korelasi sebagai pembanding.

c. Menggunakan mikrokontroler AVR ATMega 8535. d. MenggunakanLED12V/10Wattsebagai lampu DC.

e. Menggunakan modul serial K-125R untuk sambungan serial dari laptop ke Minsis ATMega 8535.

f. Ucapan yang dikenali merupakan ucapan peneliti sendiri dan pengucapan dilakukan seperti biasanya. Selain ucapan mati, hidup, terang dan gelap akan dikenali secara salah.

g. Menggunakan MATLAB untuk komputasi pengenalan suara.

h. Menggunakan driver L298 untuk mengatur tegangan keluaran sesuai PWM mikrokontroler.

i. Menggunakan catu daya 12 Volt.

j. Jarak dari mulut ke mikrofon sekitar ± 10 cm.

k. Memiliki 4(empat) tingakatan kecerahan yg diukur menggunakanLUXmeter.

1.4.

Metodologi Penelitian

Penulisan skripsi ini menggunakan metode:


(25)

b. Perancangan subsistem hardware dan software. Tahap ini bertujuan untuk mencari bentuk yang optimal dari sistem yang akan dibuat dengan mempertimbangkan permasalahan serta kebutuhan yang ditentukan.

Gambar 1.1 Model Blok Perancangan

c. Pembuatan subsistem hardware dan software. Berdasarkan gambar 1.1. Sistem akan bekerja ketika menerimainputan suara manusia menggunakan microphone yang akan diproses di sound card menggunakan MATLAB. Hasil pengenalan kemudian di serialkan menggunakan K-125R ke mikrokontroler ATmega 8535. Setelah itu mikrokontroler akan mengeluarkan PWM yang digunakan untuk mengatur tegangan keluaran driverL298 mengendalikan tingkat kecerahanLED.

d. Analisa penyimpulan dan hasil percobaan. Analisa data dilakukan dengan menyelidiki pengaruh batas potong, nilai segment averaging dan variasi

nilai standar deviasi (σ) pada jendela Gauss. Percobaan pengenalan dilakukan sebanyak 80(delapan puluh) set. Penyimpulan dilakukan dengan mencari ukuran segment averaging, batas potong dan nilai standar deviasi yang menghasilkan tingkat pengenalan yang tertinggi.

e. Pengujian sistem. Setelah mendapatkan ukuran segment averaging, batas potong dan nilai standar deviasi yang menghasilkan tingkat pengenalan yang tertinggi. Maka akan dilakukan pengujian secarareal time. Pengujian dilakukan sebanyak 40 (empat puluh) kali. Dimana setiap kata akan diuji sebanyak 10 (sepuluh) kali. Pengujian juga dilakukan dengan menggunakan suara orang lain dan kata yg lain. Hal ini diharapkan bisa merepresentasikan tingkat pengenalan ucapan yang dilakukan secara normal.


(26)

4

BAB II

DASAR TEORI

2.1.

Ucapan

Bunyi bahasa ditentukan oleh sumber bunyi serta proses dalam memproduksi bahasa itu, sehingga setiap manusia memiliki suara yang berbeda antara satu dan yang lainnya. Hal ini membuat manusia memiliki suara berbeda satu dengan yang lainnya, karena adanya perbedaan volume rongga mulut dan volume rongga tenggorokan. Untuk menghasilkan bunyi bahasa yang benar diperlukan alat bicara yang normal. Keterampilan dan kemampuan organ alat bicara dalam melakukan artikulasi. Kemampuan mengatur pernapasan untuk mengalirkan udara ke rongga tenggorokan, mulut, dan hidung. Alat bicara merupakan perangkat anggota tubuh manusia yang berfungsi sebagai sumber bunyi manusia. Sumber bunyi yang ada dalam tubuh manusia dipilah atas 3 bagian yaitu Rongga mulut, tenggorokan dan rongga badan. Gambar 2.1 adalah gambar artikulator pada saat produksi suara [2].

Gambar 2.1. Gambar Artikulator Pada Saat Produksi Suara. [2]

Artikulator atau alat ucap yang berada di rongga mulut berfungsi sebagai pengatur artikulasi dan volume ruang rongga mulut. Pengaturan volume ruang ini diperlukan untuk


(27)

menghasilkan bunyi yang diinginkan. Artikulator dibedakan menjadi 2 jenis yaitu artikulator aktif dan artikulator pasif. Artikulator aktif adalah alat ucap yang secara aktif bergerak membentuk hambatan aliran udara, yaitu bibir bawah dan lidah, sedangkan artikulator pasif adalah alat ucap yang diam (tidak aktif bergerak), yaitu bibir atas, gigi atas, gusi, langit2 keras, dan langit2 lunak, yang berfungsi sebagai daerah artikulasi yaitu lokasi tempat artikulator aktif menghambat atau menutup udara. Suara manusia biasanya memiliki rentang frekuensi 300-3000 Hz. Ada 4 proses produksi suara pada manusia yaitu proses oronasal, proses artikulasi, proses aliran udara dan proses pembunyian. Gambar 2.2 adalah gambar tempat produksi suara [2].

Gambar 2.2. Gambar Tempat Produksi Suara. [2]

2.2.

Mikrofon

Mikrofon adalah salah satu contoh transdusers yaitu perangkat yang merubah suatu gelmbang bunyi ke bentuk sinyal listrik. Ada dua jenis mikrofon yang umumnya sering digunakan dalam perekaman yaitu mikrofon dynamik dan mikrofon kondenser. Pada mikrofon dinamik gelombang suara menggetarkan lempengan logam tipis dan kumparan kawat. Getaran kumparan kawat kemudian mempengaruhi magnet untuk menghasilkan gelombang listrik. Pada mikrofon kondensor terdapat dua lempengan yang ketika terkena gelombang suara akan mengakibatkan timbulnya jarak pada kedua lempengan tersebut yang


(28)

mempengaruhi kapasitansi. Perubahan kapasitansi ini akan mempengaruhi kuat sinyal listrik yang dihasilkan mikrofon. Gambar 2.3 dan 2.4 akan menjelaskan lebih lanjut cara kerja mikrofon dinamik dan kondensor [3].

Gambar 2.3. Cara Kerja Mikrofon Dinamik [3].

Gambar 2.4. Cara Kerja Mikrofon Kondensor [3]. Berikut adalah contoh mikrfon yang akan digunakan.


(29)

2.3.

Kartu Suara

Kartu suara (sound Card) adalah sebuah ekspansi board yang memungkinkan komputer untuk memanipulasi suara dan output. Kartu suara juga memungkinkan komputer untuk merekam suara masukan mikrofon yang terhubung ke komputer, dan juga memungkinkan komputer untuk memanipulasi suara yang ada pada harddisk. Hampir semua kartu suara menggunakan standar MIDI (Musical Instrument Digital Interface) [4]. MIDI merupakan standar hardware dan software internasional untuk saling bertukar data (seperti kode musik). Kartu suara biasanya memiliki :

a. DSP (Digital Signal Processor) menangani jenis komputasi. b. DAC (Digital to Analog Converter) memprosesoutputaudio. c. ADC (Analog to Digital Converter) memprosesinputan audio. d. ROM (Read Only Memory) menyimpan data sementara.

e. MIDI (Musical Instrument Digital Interface) untuk koneksi peralatan musik eksternal.

f. Jack digunakan untuk menyambung speaker dan mikrophone sebagai line out dan line in.

Banyak komputer yang tersedia saat ini menggabungkan kartu suara sebagai chipset yang pada motherboard. Sound Blaster Pro dianggap sebagai standar de facto untuk kartu suara. Hampir setiap kartu suara di pasar saat ini termasuk Sound Blaster Prokompatibilitas sebagai standar minimal. Berikut adalah contoh kartu suara yang biasa ditemui di Laptop. Gambar 2.6 merupakan contoh dari kartu suara.


(30)

2.4.

Sampling

Sampling merupakan proses pencuplikan gelombang suara yang akan menghasilkan gelombang diskret [6]. Dalam proses sampling, ada yang disebut dengan laju pencuplikan (sampling rate). Sampling rate menandakan berapa banyak pencuplikan gelombang analog dalam satu detik. Satuan dari sampling rate ialah Hertz (Hz). Kriteria Nyquist perlu diperhatikan dalam melakukan sampling. Kriteria Nyquist menyatakan bahwa sebuah sinyal harus memiliki sampling rate yang lebih besar dari 2 dengan adalah frekuensi paling tinggi yang muncul di sebuah sinyal.

2.5.

Windowing

Pada suatu proses perekaman sinyal, biasanya pada tepi-tepi sinyal dijumpai adanya diskontinuitas. Hal ini akan menghasilkan munculnya banyak sinyal-sinyal frekuensi tinggi pada proses ekstraksi ciri DCT. Munculnya sinyal-sinyal frekuensi tinggi tersebut, akan dapat mempengaruhi keakuratan hasil ekstraksi ciri DCT. Untuk mengurangi munculnya sinyal-sinyal frekuensi tinggi tersebut, maka tepi-tepi sinyal-sinyal masukan perlu dikurangi kontinuitasnya dengan menggunakanwindowing [7].

2.6.

Jendela Gaussian

Jendela Gaussian adalah suatu jendela yang dapat digunakan untuk keperluan windowing. Jendela ini merupakan suatu jendela yang dapat diatur keruncingannya dengan

mengatur nilai standar deviasi (σ) [7]. Berikut Contoh jendela Gaussian 64 titik dengan nilai

standar deviasi (σ) yang beragampada gambar 2.7.

Gambar 2.7. Contoh Jendela Gaussian64 Titik Dengan Nilai Standar Deviasi (Σ)


(31)

Jendela Gaussian dengan panjangNtitik, dirumuskan secara matematis sebagai berikut [8]:

[ + 1] =

(2.1)

Dengan :

0 ≤ ≤ ≥ 2

Dengan σ adalah deviasi standar. Gambar 2.8 memperlihatkan contoh penerapan windowing.

Gambar 2.8. Contoh Penerapan Windowing.

2.7.

Normalisasi

Normalisasi adalah pengesetan nilai maksimum pada deretan sinyal supaya bernilai satu. Normalisasi ini bertujuan untuk menghilangkan nilai maksimum pada sejumlah deretan data hasil perekaman [7].

normalisasi = ( ( )) (2.2)

Dimana :


(32)

2.8.

Zerro Padding

Zerro padding adalah penambahan nilai nol sebanyak panjang data atau berfungsi untuk memanjangkan sinyal sampai ukuran tertentu dengan rumus 2n. Dimana DCT pada matlab dihitung menggunakan FFT radix 2 sehingga akan efisien penghitungannya jika menggunakan 2n. Gambar 2.9 berikut adalah contoh dari penggunaanzerro padding.

Gambar 2.9. Contoh PenggunaanZerro Padding.

2.9.

Discrete Cosine Transform (DCT)

DCT merupakan suatu jenis transformasi yang banyak digunakan untuk pemampatan sinyal. DCT dari suatu runtun u(n) dengan panjang N titik, dirumuskan secara matematis sebagai berikut [9]:

( ) = ( ) ∑ ( ) ( )( ), = 1, … , (2.3)

( ) = √

, = 1

, ≠ 1 (2.4)

Dengan 2≤ k ≤ N

Terlihat DCT sinyal hasil windowing terlihat lebih bersih, karena sinyal-sinyal frekuensi tinggi tidak tampak seperti gambar 2.10 berikut [7] :


(33)

Gambar 2.10. Contoh DCT Dari Sinyal Dengan Menggunakan DCT 256 Titik [7].

2.10. Template Matching

Pendekatan pengenalan pola adalah salah satu yang paling sederhana dan paling awal dengan didasarkan pada template matching. Matching adalah operasi generik dalam pengenalan pola yang digunakan untuk menetukan kesamaan antara dua entitas dari jenis yang sama. Dalam template matching, contoh atau bentuk asli dari pola yang menjadi pengenalan sudah tersedia. Pola yang menjadi pengenalan dicocokkan terhadap tempalte yang telah tersimpan. Kesamaan ukuran dapat dioptimalkan berdasarkan template yang tersedia [10].

2.11. Segment averaging

Segment averaging merupakan sebuah teknik untuk mngurangi koefisien dari suatu elemen kedalam beberapa segment dimana tiap segment dicari nilai rata-ratanya yang mana masih mempertahankan bentuk dasar pola dari sinyal yang akan diproses[11]. Dalam contoh gambar 2.11. ukuran data sinyal adalah 2048 (211). Selanjutnya data sinyal tersebut dapat disegmentasi menggunakan lebar segment dengan kelipatan 2n ( dengan 1 ≤n ≤ 11 ). Keluaran dari prosessegment averagingadalah rata-rata dari setiapsegment.


(34)

Gambar 2.11. Penerapansegment averaginguntuk data( )

2.12. Korelasi

Korelasi digunakan untuk menghitung besarnya perubahan antara dua variabel. Korelasi ini membagi dua variabel yang satu dengan yang lainnya yang saling berhubungan. Korelasi dirumuskan sebagai berikut [12] :

= ∑ ∑ ∑

{ ∑ (∑ ) }.{ ∑ (∑ ) } (2.5)

Denganx dan y adalah kedua variabel.

2.13. Matlab

MATLAB (Matrix Laboratory) adalah sebuah program untuk analisis dan komputasi numerik dan merupakan suatu bahasa pemrograman matematika lanjutan yang di bentuk dengan dasar pemikiran menggunakan sifat dan bentuk matriks. Pada awalnya, program ini merupakaninterfaceuntuk koleksi rutin-rutin numerik dari proyekLINPACK danEISPACK, dan dikembangkan menggunakan bahasa FORTRAN namun sekarang merupakan produk komersial dari perusahaan Mathworks.Inc yang dalam perkembangan selanjutnya dikembangkan menggunakan bahasa C++ dan assembler (utamanya untuk fungsi-fungsi dasar MATLAB). MATLAB telah berkembang menjadi sebuah environtment pemrrograman yang canggih yang berisi fungsi-fungsi built-in untuk melakukan tugas pengolahan sinyal, aljabar linier, dan kalkulasi matematis lainnya. MATLAB juga berisi toolbox yang berisi fungsi-fungsi tambahan untuk aplikasi khusus. MATLAB bersifat extensible, dalam arti bahwa seorang pengguna dapat menulis fungsi baru untuk ditambahkan pada library ketika


(35)

fungsi-fungsi built-in yang tersedia tidak dapat melakukan tugas tertentu [13]. Kemampuan pemrograman yang dibutuhkan tidak terlalu sulit bila anda telah memiliki pengalaman dalam pemrograman bahasa lain seperti PASCAL, C danFORTRAN. Ada beberapa window yang tersedia dalam MATLAB antara lain :

a. MATLABCommand Window / Editor

b. MATLABEditor / Debugger (Editor M-File/Pencarian kesalahan) c. Figure Windows

d. MATLABHelp Windows

Gambar 2.11 menunjukkan matlabcommand window.


(36)

2.14. Mikrokontroler ATMega 8535

Atmel adalah salah satu vendor yang bergerak di bidang mikroelektronika, telah mengembangkan AVR (Alf and Vegard’s Risc Processor) sekitar tahun 1997. Berbeda dengan mikrokontroler MCS51, AVR menggunakan arsitektur RISC (Reduce Instruction Set Computer) yang mempunyai lebar bus data 8 bit. Perbedaan ini bisa dilihat dari frekuensi kerjanya. MCS51 memiliki frekuensi kerja seperduabelas kali frekuensi osilator sedangkan frekuensi kerja AVR sama dengan frekuensi osilator. Jadi dengan frekuensi osilator yang sama, kecepatan AVR dua belas kali lebih cepat dibandingkan kecepatan MCS51 [14]. Secara umum AVR dibagi menjadi 4 kelas, yaitu :

- Attiny - AT90Sxx - ATMega - AT86RFxx

2.15. Arsitektur dan Konfigurasi Pin ATMega 8535

Perbedaan antartipe AVR terletak pada fitur-fitur yang ditawarkan, sementara dari segi arsitektur dan set instruksi yang digunakan hampir sama. Gambar 2.12 Berikut ini menunjukkan konfigurasi Pin ATMega 8535 [15] .


(37)

Tabel 2.1.Fungsi Pin-Pin Pada ATMega 8535 [15]. Pin Nama Pin Keterangan

10 VCC Masukancatudaya

11,31 GND Ground

33,34,35,36, 37,38,39,40

Port A (PA7:0)

MerupakanportI/O 8 bit duaarahdengan resistorpull-up internal tiappinnyadan pin masukan ADC.

1,2,3,4,5,6,7,8 Port B (PC7:0)

MerupakanportI/O 8 bit dengan resistorpull-upinternal tiappinnya. Fungsialternatifdari Port B dpatdilihat di

padaTabel 2.10.

9 RESET Merupakanportberfungsiuntukmeresetmikrokontroler

20 Port D (PD7:0)

MerupakanportI/O 8 bit duaarahdengan resistorpull-up internal tiappinnya. Fungsialternatifdari Port D

dapatdilihatpadaTabel 2.9.

30 AVcc Merupakan pin teganganuntukA/D converter.

32 AREF merupakan pin masukanteganganreferensi A/D converter.

Tabel 2.2.Fungsi Alternatif Port D. [15] Pin Nama Pin Keterangan

14 PD0 RXD (USARTInputPin)

15 PD1 TXD (USARTOutputPin)

16 PD2 INT0 (External Interrupt 0Input)

17 PD3 INT1 (External Interrupt 1Input)

18 PD4 OC1B (Timer/Counter1OutputCompare B Match Output)

19

PD5 OC1A (Timer/Counter1OutputCompare A Match Output)

20 PD6 ICP (Timer/Counter1InputCapture Pin)


(38)

2.16.

USART (Universal Synchronous and Asynchronous serial Receiver and Transmitter) pada ATMega 8535

Komunikasi USART (Universal Synchronous and Asynchronous serial Receiver and Transmitter) adalah fasilitas komunikasi serial yang disediakan oleh mikrokontroler Atmega8535, baik secara sinkron maupun asinkron. Komunikasi serial sinkron adalah komunikasi antara mikrokontroler dengan peripheral lain di mana sinyal clock yang digunakan anatara transmitter dan receiver berasal dari satu sumber clock sendiri. Komunikasi USART dilakukan dalam mode full duplex (dua arah) antara transmitter dan receiver[14].

Gambar 2.14. Diagram Blok Arsitektur USART Mikrokontroler AVR Atmega8535. [14]

Baud rate USART diatur pada register (UBRRn) yang dari register tersebut dapat dipilih prescaler untuk baud rate generator. Frekunsi keluaran baud rate =fosc/(UBRRn+1), fosc adalah frekuensi clock sistem. Dalam proses pengiriman data, register UDR digunakan sebagai penyangga (buffer) data yang akan dikirimkan dan penyangga data yang diterima. Transmit Data Buffer Register (TXB) berfungsi sebagai penyangga data yang akan ditulis ke


(39)

dalam register UDR. Sedang penyangga data yang diterim transmitter hanya dapat ditul set[14].

Tabel 2.3

Dalam proses pengirim data yang akan dikirimkan dan (TXB) berfungsi sebagai pe Sedangkan Receive Data Buf diterima oleh registerUDR. R ketika bit UDRE dalam regist register UDR.

ngkan Receive Data Buffer Register (RXB) erima oleh register UDR. Register UDR ditulis ketika bit UDRE dalam register UCSR

2.3 Perhitungan Pengaturan Register Baud Rate.

riman data, register UDR digunakan sebagai pe dan penyangga data yang diterima.Transmit Dat penyangga data yang akan ditulis ke dala Buffer Register (RXB) berfungsi sebagai pen

.RegisterUDR untuk menyangga transmitter ha gister UCSRA dalam keadaan set [14]. Berikut

Gambar 2.15. Register UDR [14].

B) berfungsi sebagai untuk menyangga SRA dalam keadaan

ate. [14]

i penyangga (buffer) Data Buffer Register dalam register UDR. penyangga data yang er hanya dapat ditulis erikut adalah gambar


(40)

2.17. Pulse Width Modulation

Salah satu fitur yang dimiliki AVR ATmega8535 adalah adanya PWM (pulse width modulation) yang berfungsi untuk menghasilkan pulsa-pulsa yang dapat diatur lebarnya berdasarkan penggunaan timer/counter yang sudah ada. Pulsa PWM merupakan salah satu cara yang baik dan mudah dalam mengatur pemicuan nyala lampu LED [14].

Salah satu aplikasi sinyal PWM adalah untuk mengatur kecepatan atau pengontrolan torsi pada sebuah Driver. Driver akan disuplai dengan sinyal berbentuk gelombang persegi dengan amplitude konstan dan dengan duty cycle yang berubah-ubah. Duty cycle adalah persentasi waktu pulsa high terhadap perioda pulsa. Gambar 2.15 berikut menunjukkan bentuk gelombang untuk 4(empat) tingkatkecepatan berbeda.

Gambar 2.16. Bentuk Gelombang PWM Untuk 4(empat) Kondisi [14].

2.18. LED

LED merupakan dioda semikonduktor yang memancarkan cahaya karena mekanisme emisi spontan. LED mengubah besaran arus menjadi besaran intensitas cahaya dan karakteristik arus/daya pancar optik memiliki fungsi yang linear. Daya keluaran optik LED adalah -33 dBm s/d -10 dBm. LED memiliki lebar spektral (spectral width) 30– 50 nm pada panjang gelombang 850 nm dan 50 – 150 nm pada panjang gelombang 1300 nm. LED memiliki 2 kutub yaitu anoda dan katoda seperti tampak pada Gambar 2.15. LED akan


(41)

menyala bila ada arus listrik mengalir dari anoda menuju katoda. Pemasangan kutub LED tidak boleh terbalik karena apabila terbalik kutubnya, LED tersebut tidak akan menyala. LED memiliki karakteristik berbeda-beda menurut warna yang dihasilkan. Semakin tinggi arus yang mengalir pada LED, semakin terang pula cahaya yang dihasilkan, namun perlu diperhatikan bahwa besarnya arus yang diperbolehkan 10mA – 20mA dan pada tegangan 1,6V –3,5 V menurut karakter warna yang dihasilkan. Apabila arus yang mengalir lebih dari 20 mA maka LED akan terbakar, sehingga agar LED tidak terbakar perlu digunakan resistor sebagai penghambat arus.

Gambar 2.17. LED

Berdasarkan hukum Ohm dapat diketahui bahwa:

= . (2.6)

= . (2.7)

dengan P adalah daya, V adalah tegangan, I adalah arus dan R adalah hambatan. Apabila ingin mencari nilai resistor, maka:

= (2.8)

= ( ) (2.9)

denganVsadalah tegangan sumber danVdadalah tegangan kerja LED.

2.19. Driver L298

IC H-Bridge driver motor DC L298 memiliki dua buah rangkaian H-Bridge di dalamnya, sehingga dapat digunakan untukmen-drive dua buah motor DC. IC L298 masing-masing dapat mengantarkan arus hingga 2A. Namun, dalam penggunaannya,IC ini dapat digunakan secara paralel, sehingga kemampuan menghantarkan arusnya menjadi 4A. Prinsip kerja IC L298, IC ini memiliki empat channel masukan yang didesain untuk dapat menerima masukan level logika TTL. Masing-masing channel masukan ini memiliki channel keluaran yang bersesuaian. Gambar 2.17 memperlihatkan penampang IC L298. Dengan memberi


(42)

tegangan 5 volt pada pin enable A dan enable B, masing-masing channel output akan menghasilkan logika high (1) atau low (0) sesuai dengan inputpada channel masukan. Untuk lebih jelasnya prinsip kerja IC L298 dapat dilihat pada tabel 2.5 [16].

Gambar 2.18. Gambar Penampang L298 [16] Tabel 2.4. Tabel Logika Prinsip Kerja IC L298 [16]

Enable Input 1,2 Input 3,4 Output

1 1 0 CW

1 0 1 CCW

= − (2.10)

Keterangan :

Vout = Tegangan keluaran driver L-298

Vss = Teganganinput+12 Volt


(43)

2.20. Module K-125R

Alat ini akan membantu dalam memprogram Mikrokontroler AVR semudah memasang sebuah USB konektor pada komputer PC/ Laptop kita. Kelengkapans eperti software AVRprog, AVR OSP II, CodeVision AVR, AVR Studio 4, Mikrobasic for AVR dan beberapa pendukung lainnya akan membantu dalam memprogram Mikrokontroler AVR/AT89. Jadi kapan pun dan dimanapun dapat melakukan pemrogramman Mikrokontroler AVR anda dengan mudahnya baik menggunakan OS windows XP, windows Vista dan windows 7 32/ 64bit [17].

Module K-125R memilikiSpesifikasi:

a. Format file yang didukunng adalah *.hex b. TargetIn system Programmer(ISP)

c. Kompatibel dengan Windows XP, Windows Vista dan Windows 7

d. Didukung oleh software CodeVision AVR Evaluasi, AVR OSP II dan AVR Studio4.

e. Tidak membutuhkan catu daya tambahan dari luar.

f. Terdapat selector jumper untuk power board mikrokontroler AVR jika membutuhkan power dari USB untuk Mendownload.


(44)

2.21. Voltage Regulators

IC secara luas dapat digunakan sebagai regulator tegangan. Unit regulator IC mengandung rangkaian sumber referensi, penguat komparator, perangkat pengendali dan perlindungan beban lebih. Keluaran unit regulator IC bisa berupa tegangan tetap positif, tegangan tetap negatif atau tegangan variabel [18]. IC 7812 yang terhubung untuk menghasilkan tegangan regulasi +12 volt. Tegangan masukan Vi difilter oleh kapasitor C1 dan dihubungkan ke terminal IN IC. Terminal OUT IC menghasilkan tegangan regulasi +12 volt yang difilter oleh kapasitor C2. Terminal IC yang ketiga dihubungkan ke ground (GND).

Gambar 2.20. Rangkaian Regulator Tegangan +12 V [18]

Perhitungan nilai kapasitor C1 menggunakan persamaan: [18]

=

√ ∗∗ ( ) (2.11)

dengan

C = kapasitor dalam Farad = arus beban dalam Ampere f = frekuensi dalam Hz

( ) = teganganripplerms dalam volt

Di mana nilai ( ) dapat dicari dengan menggunakan persamaan: [18]

` ( ) = ( )

√ (2.12)

dengan ( − ) adalah teganganripple peak to peak yang merupakan selisih antara tegangan masukan regulator dengan tegangan masukan minimum IC regulator yang digunakan atau dapat dirumuskan sebagai berikut: [18]

( − ) = − (2.13)

dengan:


(45)

= tegangan masukkan minimum IC regulator

Apabila tegangan masukan regulator berasal dari tegangan AC yang kemudian disearahkan menggunakan dioda, nilai dicari menggunakan persamaan: [18]

= √ 2 − 1,4 (2.14)

dengan merupakan nilai tegangan AC yang sudah diturunkan menggunakan trafo step-down(volt) dan adanya nilai 1,4 karena menggunakan dioda sebagai penyearah.


(46)

24

BAB III

PERANCANGAN

3.1.

Sistem Aplikasi Pengenalan Ucapan untuk Mengontrol Lampu DC

Sistem aplikasi pengenalan ucapan untuk mengontrol lampu DC menggunakan software yang berfungsi sebagai user interface dan menjadi pusat dari proses pengenalan ucapan itu sendiri.Softwareyang dibuat menggunakan Matlab. Gambar 3.1 berikut adalah Diagram Blok keseluruhan aplikasi pengenalan ucapan untuk mengontrol lampu DC.

Gambar 3.1. Diagram Blok Keseluruhan Aplikasi Pengenalan Ucapan Untuk Mengontrol Lampu DC.

3.1.1 Ucapan Manusia

Proses terbentuknya ucapan pada manusia terjadi ketika udara yang dikeluarkan oleh paru-paru menggerakkan pita suara. Gerakan membuka dan menutup pita suara itu menyebabkan udara di sekitar pita suara itu bergetar. Perubahan bentuk saluran suara yang terdiri atas rongga faring, rongga mulut, dan rongga hidung menghasilkan bunyi bahasa yang berbeda-beda. Pada penelitian ini ucapan yang akan dikenali merupakan ucapan


(47)

peneliti sendiri. Ucapan yang akan dikenali yaitu Mati, Hidup, Terang dan Gelap. Selain ucapan tersebut akan dikenali secara salah.

3.1.2 Mikrofon

Pada penelitian kali ini, peneliti akan menggunakan mikrofonGeniusdengan model MIC-01A. Mikrofon Genius dengan model MIC-01A ini merupakan jenis mikrofon konduser. Mikrofon ini bertujuan untuk menangkap ucapan yang diucapkan peneliti kemudian diteruskan ke proses selanjutnya. Gambar 3.2 berikut menunjukkan jenis mikrofon yang akan digunakan dan tabel 3.1 menunjukkan spesifikasi dari Microphone GeniusMIC-01A.

Gambar 3.2.Microphone GeniusMIC-01A

Table 3.1 SpesifikasiDesktop Microphone GeniusMIC-01A

Frequency Response 100 Hz - 10 KHz

Sensitivity -62dB


(48)

3.1.3 Sound Card (Kartu Suara)

Kartu suara (sound Card) adalah sebuah ekspansi board yang memungkinkan komputer untuk memanipulasi suara dan output. Kartu suara juga memungkinkan komputer untuk merekam suara masukan mikrofon yang terhubung ke komputer. Kartu saura juga merubah sinyal analog yang ditangkap melalui mikrofon menjadi sinyal digital sehingga kemudian diolah untuk proses pengenalan padaMATLAB.

3.1.4 Proses Perekaman

Pada proses ini ucapan manusia akan direkam dengan kriteria tertentu. Panjang durasi perekaman 1 detik dan frekuensi sampling adalah 6000 Hz. Penentuan panjang durasi perekaman disesuaikan dengan perkiraan pengucapan kata. Untuk keterangan lebih lanjut lihat pada lampiran hal L3. Penentuan frekuensi sampling ditentukan berdasarkan rentang suara manusia yang berkisar 300-3000 Hz. Penentuan ini diambil berdasarkan teori KriteriaNyquistmenyatakan bahwa sebuah sinyal harus memilikisampling rateyang lebih besar dari 2 dengan adalah frekuensi paling tinggi yang muncul di sebuah sinyal. Hasil perekaman juga akan digambar dalam bentuk plot pada MATLAB. Maka dengan menggunakan teori Nyquist, peneliti menentukan sampling rate dengan menggunakan rumus 2 . Gambar 3.3 berikut adalah Diagram Alir proses perekaman.

= 2 = 2 × 3000

= 6000

3.1.5 Pengenalan Ucapan

Pada pengenalan ucapan, input adalah ucapan peneliti itu sendiri dalam bentuk Wav yang sudah melalui proses sampling pada saat perekaman. Hasil sampling ucapan kemudian di normalisasikan. Setelah proses normalisasi data hasil normalisasi itu kemudian diolah lagi untuk diambil sinyal yang mengandung data ucapan dengan cara memotong sinyal. Hasil pemotongan sinyal tadi kemudian memasuki proses windowing. Ada banyak jenis dari windowing dan pada penelitian kali ini peneliti menggunakan jendela gauss . hasil proseswindowingkemudian memasuki proses Zerro Padding. Setelah


(49)

melalui proses Zerro Padding terus dilakukan penghitungan ekstraksi ciri DCT. Hasil ekstraksi ciriDCTkemudian dibandingkan dengandatabasemenggunakan fungsi korelasi. Hasil maksimum dari fungsi korelasi ini akan menjadi penentuan keluaran. Gambar 3.4 berikut menunjukkan Diagram Blok sistem pengenaln ucapan.

Gambar 3.3. Diagram Blok Proses Perekaman


(50)

a. Preprocessing I. Normalisasi

Setelah perekaman proses selanjutnya adalah normalisasi.Normalisasi adalah proses perataan amplitudo maksimum pada nada terekam dan nada referensi, sehingga kuat lemahnya pengucapan kata tidak terlalu mempengaruhi proses pengenalan. Tujuan dari penormalisasian ini adalah untuk menyamakan nilai amplitudo maksimum data base menjadi 1 atau -1 atau dengan kata lain penskalaan. Proses normalisasi dilakukan dengan membandingkan nilai data awal dengan nilai data awal maksimum. Gambar 3.5 akan menunjukkan diagram alir dari proses normalisasi.

(1) = ( 0) max(abs( 0))

Dimana :

x0 : Data masukan x1 : Hasil normalisasi


(51)

II. Pemotongan sinyal

Hasil normalisasi tadi dilanjutkan ke proses pemotongan sinyal. Pemotongan sinyal merupakan proses yang bertujuan untuk mengambil bagian dari data ucapan sinyal itu sendiri dan membuang bagian yang bukan merupakan bagian data ucapan sinyal tersebut. Pada penelitian kali ini batas potong ditentukan oleh peneliti yaitu 0,2; 0,3; 0;4; 0,5 Proses pemotongan sinyal dimulai dengan memotong bagian kiri yang tidak mengandung data ucapan. Setelah pemotongan dibagian kiri sinyal, hasil pemotongan kemudian dibalik sehingga data sinyal bagian kiri berpindah ke sebelah kanan. Setelah dibalik dilakukan pemotongan sinyal bagian kanan dan setelah selesai pemotongan sinyal bagian kanan, sinyal dibalikkan lagi ke posisi awal. Gambar 3.6 berikut akan menjelaskan Diagram Alir pemotongan sinyal.

Gambar 3.6. Diagram Alir Pemotongan Sinyal.

III. Windowing

Setalah melalui proses pemotongan sinyal, hasil dari sinyal yang dipotong kemudian memasuki proses windowing. Jendela gauss merupakan salah satu


(52)

cara untuk melakukan proses windowing. Tujuan dari proses ini adalah mengurangi diskontiniutas dari gelombang. Jendela ini merupakan suatu jendela yang dapat diatur keruncingannya dengan mengatur nilai standar deviasi sehingga membantu keakuratan hasil ekstraksi ciri. Peneliti juga melakukan variasi nilai standar deviasi mulai dari 1,3; 1,4; 1,5; 1,6; 1,7. Gambar 3.7 berikut akan menjelaskan diagram alirwindowing.

Gambar 3.7. Diagram Alir ProsesWindowing.

IV. Zero Padding

Setelah proses pemotongan sinyal dan jendela gauss, panjang sinyal antara yang satu dengan yang lainnya tidak semuanya sama.Zero Paddingmerupakan suatu proses pengolahan sinyal digital yang digunakan untuk menyamakan panjang gelombang dengan menyisipkan nilai 0 (nol) pada data. Panjangnya data bisa diatasi dengan menggunakan persamaan 2n. Gambar 3.8 berikut akan menjelaskan Diagram Alir zero padding.


(53)

Gambar 3.8. Diagram Alir Zero Padding.

b. Ekstraksi Ciri

Setelah melalui proses Zerro Padding, proses selanjutnya adalah penghitungan ekstraksi ciri DCT. DCT merupakan suatu jenis transformasi yang banyak digunakan untuk pemampatan sinyal. ektraksi ciriDCTdigunakan untuk mengubah sinyal menjadi komponen frekuensi dasarnya. Pada proses DCT dilakukan proses penghitungan nilai absolutDCTdan LogDCT. Setelah melalui menghitunganDCT proses selanjutnya adalahsegmentaveraging. Dimana hasil penghitungan nilaiDCT kemudian dibagi kedalam beberapa segment. Pembagian dilakukan dengan membagi DCT dengan 2n sampai banyak data. Setelah itu tiap segment kemudian dicari nilai rata-ratanya. Gambar 3.9 berikut merupakan diagram alir ekstraksi ciri DCT.


(54)

Gambar 3.9. Diagram Alir Proses Ekstraksi CiriDCT. c. Korelasi

Pada proses ini korelasi berfungsi untuk menghitung besarnya perubahan antara dua variabel. Fungsi ini membagi dua variabel yang satu dengan yang lainnya yang saling berhubungan. Dalam hal ini yang menjadi variabel yang akan dibandingkan adalah nada referensi dan nada terekam. Hasil penghitungan pembandingan kemudian digunakan sebagai penentuan hasil keluaran pengenalan. Gambar 3.10 berikut adalah diagram alir penghitungan korelasi.


(55)

d. Penentuan Keluaran

Pengenalan ucapan merupakan proses terakhir. Pengenalan ucapan ini ditentukan oleh fungsi korelasi berdasarkan nilai maksimum dari perbandingan antara masukan dengan database. Nilai maksimum dari korelasi akan ditentukan dengan cara mengambil nilai terkecil dari hasil perbandingan database yang bisa dikenali. Nilai korelasi maksimum ini kemudian dijadikan sebagai batasan untuk setiap kelas. Proses selanjutnya adalahThresholding. Didalam proses ini terdapat 4 kelas sesuai dengan kata yang dikenali dan nilai batasan maksimum untuk setiap kelasnya. Apabila hasil penghitungan korelasi tidak melewati nilai batasan dari salah satu kelas maka pengenalan akan dikenali secara error. Gambar 3.11 akan menunjukkan diagram alir penentuan keluaran.

Gambar 3.11. Diagram Alir Proses Penentuan Keluaran.

e. Outputpengenalan ucapan

Hasil pengenalan tadi yang berupacharacterkemudian dikirimkan secara serial ke mikrokontroler melalui modul K-125R. Setelah diterima oleh mikrokontroler kemudian diproses untuk menentukan aksi yang akan dilakukan untuk LED. Gambar 3.12 berikut menunjukkan Diagram Alir pengenalan ucapan.


(56)

Gambar 3.12. Diagram Alir pengiriman serial.

3.2.

Perancangan Referensi Ucapan

Referensi ucapan sangat diperlukan sebagai database untuk mengenali ucapan. Pada penelitian kali ini, peneliti menggunakan ucapan mati, hidup terang dan gelap sebagai referenci ucapan. Peneliti mengambil 80 set sampel. Dimana setiap set memiliki variasi segment averaging, batas potong, dan nilai standar deviasi pada windowing. Setiap sampel akan melalui proses sampling, windowing, zerro padding dan DCT. Gambar 3.4 adalah Diagram Blok dari proses pengambilan referensi ucapan :

Gambar 3.13. Diagram Blok Dari Proses Pengambilan Referensi Ucapan.

Pada penelitian kali ini, peneliti menggunakan beberapa variasi untuk nilaisegment averaging dan standar deviasi pasda jendela gauss. Referensi ucapan ini kemudian


(57)

diinisialisasi dan disimpan untuk digunakan pada fungsi korelasi sebagai pembanding. Penyimpulan dilakukan dengan mencari ukuran segment averaging dan nilai sigma yang menghasilkan tingkat pengenalan yang tertinggi.

3.3.

Suara Uji

Suara uji merupakan suara yang terekam untuk menjalankan fungsi program secara offline. Pembuatan suara uji ini adalah untuk menentukan nilai segment averaging dan standar deviasi pada saat windowing. Tujuannya adalah untuk mendapatkan hasil pengenalan tertinggi. Proses pembuatan suara uji sama dengan pembuatan referensi ucapan seperti pada gambar 3.13.

3.4.

Perancangan Pembuatan software

Pembuatan software menggunakan Matlab 7.0.4. Pembuatan software ini juga terkait dengan interface sebagai panduan untuk pengguna untuk menjalankan aplikasi. Pembuataninterfacememanfaatkan GUI (Graphical User Interface) yang ada pada matlab 7.0.4.. Berikutinterfaceyang akan di rancang peneliti.


(58)

Tabel 3.2. Keterangan TampilanUser.

NO. NAMA BAGIAN KETERANGAN 1 NILAI SIGMA Untuk memilih variasi nilai sigma untuk

windowing(1,3; 1,4; 1,5; 1,6; 1,7) 2 NILAISEGMENT

AVERAGING

Untuk memlih nilaisegment averaging (16 ;32 ;64 ;128)

3 NILAI BATAS POTONG Untuk memilih batas potong (0,2; 0,3; 0,4; 0,5)

4 REKAM Tombol tekan untuk memulai perekaman 5 KELUAR Tombol tekan untuk mengakhiri aplikasi 6 RESET Tombol tekan untuk merestart program 6 PLOT PEREKAMAN Tampilan grafik untuk suara hasil perekaman 7 PLOT HASILDCT Tampilan grafik hasil ektraksi ciriDCT 8 HASIL PENGENALAN Menunjukkan hasil pengenalan suara

9 User Untuk memilihuseryang sedang menjalankan program

3.5.

Perancangan Sistem Hardware

Sistem kontrol LED merupakan sistem yang akan mengatur tingkat kecerahan LED sesuai dengan output pengenalan ucapan. Hasil pengenalan pada matlab diinisialisasikan kemudian dijadikan input untuk melakukan komukasi serial dengan Mikrokontroler ATMega 8535. Hasil serial tadi digunakan untuk menentukan PWM (Pulse Width Modulation) yang kemudian tegangannya akan dibesarkan oleh driver untuk menyalakan dan mengontrolLED.Driver L298 mendapatkan suplai tegangan sebesar 12Voltdari Catu Daya .

3.5.1. Perancangan Mekanik

Perancanganhardware dibuat menyerupai lampu belajar yang umumnya berada di pasaran. Pada perancangan harware peneliti membagi menjadi dua bagian yaitu bagian sistem dan bagian lampu. Bagian sistem akan berbentuk kubus dengan ukuran 15x15x10 yang berisi modulo K-125R, Minsis ATMega 8535, Driver L298 dan Catu Daya 12 volt. Bagian lampu akan berbentuk seperti pipa. Untuk keterangan lebih lanjut akan dijelaskan gambar 3.15, 3.16, 3.17 dan 3.18.


(59)

Gambar 3.15. Tampak Depan.


(60)

Gambar 3.17. Tampak belakang.

Gambar 3.18. Tampak Samping Kiri.

3.5.2. Masukan (input)

Untuk masukan pada sistem kontrol LED didapat dari output pengenalan ucapan yang telah melewati proses pembandingan dengan menggunakan fungsi korelasi. Output pengenalan itu kemudian diinisialisasikan sesuai nama output pengenalan. Setelah


(61)

diinisialisasikan kemudian output ini akan dikomunikasikan secara serial menggunakan modul K-125R menuju mikrokontroler ATMega 8535.

3.5.3. Perancangan Input-Output Sistem Mikrokontroler ATMega8535

Pada penelitian ini Data hasil inisialisasi yang dikirim ke Mikrokontroler ATMega 8535 akan di proses sehingga dapat menentukan Output PWM yang akan dikeluarkan. Mikrokontroler ATMega 8535 memiliki 32 pin yang terdiri dari 4 Port. setiap portnya memiliki 8 pin. Berikut konfigurasi pin yang akan digunakan :

Tabel 3.3. Konfigurasi Port Mikrokontroler

Fungsi Hardware Port yang digunakan

Output L-298

L-298 L-298 L-298

PortD.2 PortD.3 PortD.4 PortD.5

Pada mikrokontroler Atmega 8535 terdapat program yang akan mengontrol tingkat kecerahan dari lampu LED. Program ini nantinya akan memberikan keluaran berupa sinyal pulsa keDriver L298.

3.5.4. Driver L298

Pada perancangan tugas akhir ini data Hasil Output dari Mikrokontroler ATMega 8535 di teruskan ke Driver L298 . Driver L298 merupakan sebuah rangkaian yang akan menguatkan output PWM Mikrokontroler ATMega 8535 sehingga bisa menentukan aksi yang akan dilakukan ke LED. Input 1 dan 2 berasal dari PORTC.0 pada mikrokontroler dan input 3 dan 4 berasal dari PORTC.1 sedangkan untuk enable berasal dari PORTD.5 yang merupakan OC1A pada mikrokontroler. Input 1,2,3 dan 4 berfungsi untuk menentukan polarisasioutput(lihat tabel 2.4), sedangkan enable berfungsi sebagai inputan PWM dari mikrokontroler. Berikut adalah gambarschematic DriverL298:


(62)

Gambar 3.19. GambarSchematicDriver L298

3.5.5. Perancangan Output (LED)

Pada perancangan tugas akhir ini LEDmerupakan output dari sistem ini.. LED ini akan menyala atau mati sesuai dengan hasil pengenalan ucapan. Untuk menyalakan LED ini diperlukan tegangan yang dikeluarkan oleh Driver L298. Berikut adalah spesifikasi LEDyang akan digunakan pada perancangan tugas akhir ini :

Tabel 3.4. SpesifikasiLEDYang Digunakan. Tegangan 12Volt

Daya 10Watt

Dari persamaan 2.5, 2.6 2.7 dan 2.8 maka arus dariLEDdapat hitung sehingga:

= = 10

12 = 0,833

= = 12

0,833 = 14, 40


(63)

Arus yang dibutuhkan untuk menyalakan LED adalah 0,833 A sehingga peneliti dalam tugas perancangan ini menggunakan Driver L298 yang bisa menghasilkan arus maksimal sebesar 1 A. Selain itu resistor yang digunakan sebesar 14,40 . Karena resistor 14,40 tidak ada dipasaran maka peneliti menggunakan resistor sebesar 15 . Nilai resistor hasil perhitungan diatas merupakan nilai minimum sehingga digunakan resistor dengan nilai yang sedikit besar dan ada di pasaran. Berikut adalah gambar rangkaian LED.

Gambar 3.20. Rangkaian LED.

3.5.6. Perancangan Catu Daya

pada perancangan tugas kali ini, catu daya digunakan untuk memberikan suplai tegangan kedriverL298. Rangkaian catu daya ini memperoleh sumber tegangan dari jala-jala listrik PLN. Untuk menghasilkan tegangan +12 Volt digunakan IC LM 7812. Menggunakan persamaan 2.8, dengan sebesar 1 A dan frekuensi 50 Hz. Nilai

( )dihitung menggunakan persamaan 2.11. ( − ) dihitung mengggunakan persamaan 2.12, dan dihitung menggunakan persamaan 2.13. Berikut perhitungan yang dilakukan untuk mencari nilai kapasitor C1.

LM7812

= √2 − 1,4 = 15√2 − 1,4 = 19,8

( − ) = −

( − ) = 19,8 − 14,6 ( − ) = 5,2

(

) =

( )


(64)

(

) = 1,5

=

√ ∗ ∗ ( )

=

√ ∗ ∗ ,

= 1924

µ

LM7805

= √2 − 1,4 = 15√2 − 1,4 = 19,8

( − ) = −

( − ) = 19,8 − 7,3 ( − ) = 12,5

(

) =

( )

(

) =

,

(

) = 3,61

=

√ ∗ ∗ ( )

=

√ ∗ ∗ ,

= 799 μ

Karena kapasitor C1 1924 µ dan C2 799 µF tidak ada di pasaran maka peneliti menggunakan kapasitor C1 2200 µ dan C2 1000 µF. Nilai kapasitor C1 dan C2 merupakan nilai minimum yang dibutuhkan oleh rangkaian regulator yang akan dirancang, sehingga digunakan kapasitor yang lebih besar. Selain itu semakin besar nilai kapasitansi C, nilai tegangan ripple juga akan semakin kecil.


(65)

Gambar 3.21. Rangkaian Catu Daya

3.5.7. Perancangan Program Mikrokontroler

Pada perancangan program mikrokontroler, input merupakan text hasil pengenalan pada matlab. Text hasil pengenalan matlab kemudian diubah kedalam bentuk karakter yang berbentuk kode ASCII. Karakter yang berbentuk kode ASCII kemudian dikonversi kedalam bentuk hexa desimal sehingga bisa dikenali oleh mikrokontroler. Mati, hidup,

terang dan gelap akan diinisialisasikan sebagai ‘m’ , ‘h’ , ‘t’ , dan ‘g’. Untuk keterangan lebih lanjut lihat tabel 3.6 dan 3.7. Selain itu ditetapkan inisialisasi awal ‘A’ dan ‘C’ sebagai variabel keadaan dan ‘B’ sebagai fungsi untuk memanggil output PWM (Pulse Width Modulation) dan merupakan indicator level tingkat kecerahan. Variabel A dan C berbentuk angka 0, 1 dan B 0, 1, 2, 3. Nilai PWM dari variabel B bisa dilihat di tabel 1.6 pada lembaran lampiran.

Untuk proses lebih lanjut dapat dilihat pada gambar 3.17 yang menjelaskan Diagram Alir mikrokontroler.

Tabel 3.5. Tabel Keterangan

Pengenalan Kode Ascii Bilangan Hexa

Hidup H 048

Terang T 054

Gelap G 047


(66)

Tabel 3.6. Tabel Keadaan

Keadaan Sekarang

InputUcapan

Hidup Terang Gelap Mati

L0 L3 L1 L0 L0

L1 L3 L2 L0 L0

L2 L3 L3 L1 L0


(67)

(68)

46

BAB IV

HASIL DAN PEMBAHASAN

Bab ini berisi tentang pengujian sistem pengenalan, gambar fisik hardware yang dibuat, hasil pengujian sistem, pengujian rangkaian, pembahasan data yang diperoleh. Pengujian sistem perlu dilakukan untuk mengetahui apakah suatu sistem telah bekerja dan berjalan sesuai perancangan. Data-data hasil pengujian sistem yang telah dirancang menunjukkan bahwa sistem berjalan sesuai perancangan. Analisa terhadap proses kerja sistem dapat digunakan untuk menarik penyimpulan dari apa yg diperoleh dari analisa.

4.1.

Pengujian Aplikasi Pengenalan Ucapan Secara

real time

Menggunakan DCT dan Korelasi

Pengujian aplikasi dilakukan bertujuan untuk mengetahui apakah sistem yang telah dirancang berjalan sesuai perancangan.pengujian program dilakukan dengan spesifikasi sebagai berikut:

Processor : AMD E-350 Processor1.60 Ghz RAM : 2 GB

Program pengenalan dapat dilakukan dengan langkah-langkah berikut : 1. Click dua kali padaiconmatlab seperti pada gambar 4.1.

Gambar 4.1IconProgram Pengenalan

2. Tampilan pada gambar 4.2 akan muncul sebelum masuk ke dalam tampilan utama program.

3. Mengetikkan gui1 pada command window dan pada layar akan tampil program utama seperti pada gambar 4.3


(69)

Gam 4. User dapat menjala

batas potong, stand diproses untuk peng 5. Jika telah memilih

menekan tombol ‘RE

6. Selanjutnya hasil pe

Userjuga bisa meliha

pada “Plot Hasil Pe

4.3.

Gambar 4.2 Tampilan Awal Matlab

ambar 4.3 Tampilan Program Pengenalan alankan program pengenalan ucapan dengan m

ndar deviasi, segment averaging dan memili uk pengenalan ucapan.

ih pengaturan yang diinginkan, program bisa

REKAM’.

pengenalan ucapan akan muncul pada kotak “

elihat gelombang hasil perekaman dan spektrum

Perekaman” dan “Plot Hasil Ekstraksi Ciri” se

n mengisi pengaturan ilih user yang akan

sa dijalankan dengan

k “Hasil Pengenalan”.

um hasil proses DCT seperti pada gambar


(70)

7. Apabilausertidak melakukan pengaturan maka program tidak bisa dijalankan. 8. Tombol “RESET” digunakan jika user ingin merestart program pengenalan

ucapan.

9. Tombol “Keluar” digunakan jikauseringin menyelesaikan program dan keluar dari tampilan utama program pengenalan ucapan.

4.1.1 Tombol Rekam

Tombol rekam merupakan tombol yang berfungsi melakukan pengenalan ucapan mulai dari perekaman, normalisasi, pemotongan sinyal,windowing, zero padding, ekstraksi ciri, penghitungan nilai korelasi, penentuan keluaran dan pengiriman serial. Tombol rekam menggunakan push button pada tampilan GUI yang digunakan untuk memulai program pengenalan ucapan. Plotting hasil ekstraksi ciri yang akan diteliti. Program perekaman pengenalan ucapan dibuat sesuai dengan perancangan diagram blok pada gambar 3.3. penulisan program untuk melakukan perekaman adalah sebagai berikut.

Durasi perekaman yang dipakai adalah 1 detik dengan frekuensi sampling 6000 Hz (L4). Sample_time berfungsi untuk menampilkan gambar perekaman sebesar 6000 Hz (L4). Waverecord merupakan perintah program untuk merekam dan wavwrite merupakan perintah program untuk menyimpan hasil perekaman dengan format .wav . Ucapan yang

option='n'; option_rec='n'; sample_length=1; sample_freq=6000;

sample_time=(sample_length*sample_freq); nama=input('Masukkan nama file record: ','s'); file_nama=sprintf('%s.wav',nama);

option_rec =input('tekan x untuk merekam: ','s'); if option_rec=='x'

while option=='n',

rekam=wavrecord(sample_time, sample_freq); plot(rekam);

input('tekan enter untuk mendengarkan ->'); sound(rekam, sample_freq);

option =input('x simpan,n rekam ulang: ','s'); end

wavwrite(rekam, sample_freq,file_nama); end


(71)

telah direkam kemudian ditampilkan pada “Plot Hasil Perekaman”. Program untuk

menampilkan sinyal hasil perekaman adalah sebagai berikut :

Perintah handles berfungsi untuk mengatur masukan atau keluaran program.

Ucapan yang telah terekam diinisialisasi dengan “x” kemudian diplot padaaxes.1. Setelah perekaman sub proses selanjutnya adalah pengambilan variabel nilai batas potong, nilai sigma, dansegment averaging serta pemilihan user.Variabel nilai tersebut digunakan saat pemotongan sinyal, windowing dan ekstraksi ciri sedangkan pemilihan user digunakan untuk memilih user yg menjalankan program. Program dalam subproses pengambilan variabel nilai dan pemilihanuseradalah sebagai berikut:

variasi nilai yang sudah dipilih pada pop up menu kemudian dipanggil untuk diproses pada proses pemotongan sinyal, windowing dan ekstraksi ciri. Hasil ucapan yang terekam kemudian memasuki proses normalisasi. Pembuatan program untuk normalisasi sesuai dengan blok diagram pada gambar 3.5. Program dalam proses normalisasi adalah sebagai berikut :

Hasil norlmalisasi kemudian diinisialisasikan sebagai “x1”. Proses selanjutnya

adalah proses pemotongan sinyal. Pembuatan program untuk pemotongan sinyal mengikuti diagram blok yang ada pada gambar 3.6 Pada proses ini sinyal mulai dipotong ketika mendapatkan nilai yang sudah dipilih pada pop up menu. Hasil pemotongan sinyal

kemudian diinisialisasikan sebagai “x2”. Berikut adalah program dari proses pemotongan sinyal. axes(handles.axes1) plot(x); b0=handles.pot; sig=handles.xsigma; sampling=handles.sampling; suser=handles.xuser; % Normalisasi x1=x/max(x);

% Potong kiri

b1=find(x1>b0 | x1<-b0); x1(1:b1(1))=[];

x2=fliplr(x1');


(72)

Proses selanjutnya adalah windowing. Pembuatan program windowing mengacu pada diagram blok yang telah dibuat pada gambar 3.7. Pada proses ini terdapat nilai yang di variasikan yaitu standar deviasi. Standar deviasi diambil dari variasi standar deviasi yang diinginkan user pada pop up menu. Hasil dari proses windowing kemudian

diinisialisasikan sebagai “x0”. Berikut adalah program dari proseswindowing:

Proses selanjutnya adalah zerro padding. Pembuatan program zerro padding mengacu pada diagram blok yang telah dibuat pada gambar 3.8. Proses ini bertujuan untuk menambahkan angka nol. Hasil dari zerro padding kemudian diinisialisasikan sebagai

“x1”. Berikut adalah program dari proseszerro padding :

Proses selanjutnya adalah ekstraksi ciri. Pembuatan program ekstraksi ciri mengacu pada diagram blok yang telah dibuat pada gambar 3.9. Pada proses ini terdapat variabel nilai yang divariasikan yaitu segment averaging.Segment averaging diambil dari pop up menu yang telah dipilih user. Hasil dari proses ekstraksi ciri ini kemudian

diinisialisasikan sebagai “x”. Hasil ekstraksi ciri ini akan diplot pada “Plot Hasil Ekstraksi Ciri”.Berikut adalah program dari ekstraksi ciri :

Proses selanjutnya adalah pemanggilan database. Database disesuaikan dengan variasi nilai yang dipilih user pada pop up menu. Program pemanggilan database dapat dilihat pada lampiran (L10).Pemanggilan disesuaikan dengan variasi yang dipilih user.

h=gausswin(length(x2),sig); x0=x2.*h';

usig=2048; x0(usig)=0;

x1=x0(1:sampling:usig);

x0=abs(dct(x1)); x1=abs(log(x0)); x=x1(:);

axes(handles.axes2) plot (x);

x2(1:b2(1))=[]; x2=fliplr(x2);


(73)

Pembuatan program pemanggilan database menggunakan logika if dan else. Penggunaan logika ini bertujuan agardatabase yang di panggil sesuai dengan variasi nilai yang dipilih user. Setelah proses pemanggilan database, proses selanjutnya adalah pembandingan antara nilai hasil ekstraksi ciri dari perekaman secara real time dengan database. Pembandingan dilakukan dengan mencari nilai korelasi menggunakan metode korelasi. Berikut adalah program untuk membandingkan pembandingan hasil ektraksi ciri perekaman secarareal timedengandatabase.

Pada program pembandingan ini, program korelasi dipanggil yang masih dalam 1 folder. Pembuatan program korelasi mengacu pada bolk diagram pada gambar 3.10. Program yang dipanggil adalah program yang berisi rumusan penghitungan nilai korelasi. Berikut adalah program untuk menghitung nilai korelasi.

Pada program penghitungan nilai korelasi digunakan dua variabel yaitu ‘x’ dan ‘z’. ‘x’ adalah hasil penghitungan ekstraksi ciri secarareal timedan ‘z’ adalahdatabase. Hasil

penghitungan korelasi kemudian dilanjutkan pada program ‘REKAM’. Setelah

mendapatkan nilai korelasi proses selanjutnya adalah mencari nilai maksimum. Berikut program untuk mencari nilai maksimum dari penghitungan korelasi.

Pencarian nilai maksimum dari penghitungan korelasi menggunakan fucntion

“find(max)”. Setelah mendapatkan nilai korelasi maksimum proses selanjutnya adalah

for n=1:40

korelasix(n)=korelasi(x,z(:,n)); end

function k=korelasi(x,z) mx=mean(x);

my=mean(z); k1=(x-mx).*(z-my); k2=sum(k1);

k3=sum((x-mx).^2); k4=sum((z-my).^2); k5=sqrt(k3.*k4); k=k2/k5;

korelasimax=find(max(korelasix)==korelasix); maxkorelasix=max(korelasix)


(74)

thresholding. Tujuan dari metode ini adalah agar pengenalan yang tidak sesuai dengan databaseakan dikenali secara “ERROR’.Terdapat beberapa syarat pada thresholding yaitu nilai minimum dan kelas. Penggunaan kedua syarat itu menggunakan logika if else, jika salah satu tidak terpenuhi maka program akan lanjut ke proses else. Pada metode Thresholding ini sekaligus sebagai penentuan keluaran dan pengiriman serial. Program Thresholding sekaligus penentuan keluaran dan pengiriman serial dapat dilihat pada lampiran (L20). Pada proses pengiriman serial menggunakan BaudRate sebesar 9600 dan COM PORT yang digunakan untuk mengirim serial adalah COM PORT 3. Pada pengiriman serial menggunakan functionfopen” untuk membuka komunikasi serial

dengan mikrokontroler,function“fprintf”untuk mengirimkancharacterke mikrokontroler danfuction “fclose”untuk menutup komunikasi serial dengan mikrokontroler.

4.1.2 Pop Up Menu

Pada aplikasi pengenalan kali ini terdapat berbagai variasi nilai yang digunakan untuk melakukan pengenalan ucapan. ada tiga variasi untuk aplikasi pengenalan ucapan yaitu batas potong, standar deviasi dan segment averaging. Variasi batas potong menggunakanpop up menu1 dengan nilai variasi 0,2; 0,3; 0,4; 0,5, Variasi standar deviasi menggunakan pop up menu 2 dengan nilai variasi 1,3; 1,4; 1,5; 1,6; 1,7, variasi segment averagingmenggunakanpop up menu3dengan nilai variasi 16; 32; 64; 128 dan pemilihan userpenggunakanpop up menu4dengan pilihan 1; 2; 3. Program variasi batas potong akan dituliskan seperti berikut.

Pada program pemilihan variasi batas potong , nilai batas potong diinisialisasi

dengan nama “bpot”. Inisialisasi ini digunakan untuk menginisialisasi nilai batas potong

function popupmenu1_Callback(hObject, eventdata, handles) indeks=get(handles.popupmenu1,'Value'); switch indeks case 1 bpot=0.2; case 2 bpot=0.3; case 3 bpot=0.4; case 4 bpot=0.5; end handles.pot=bpot; guidata(hObject,handles);


(75)

pada pop up menu yang selanjutnya akan diolah pada ekstraksi ciri. Inisialisasi “bpot” kemudian diubah menjadi “pot” menggunakan fungsi “handles”. Hal ini bertujuan agar nilai batas potong yang dipilih dapat dikenali sebagai bahasa program untuk proses selanjutnya. Proses pemanggilan nilai yang telah diubah menjadi nilai untuk bahasa program dikenali sebagai callback. Program untuk pemilihan nilai standar deviasi dan segment averagingkurang lebih hampir sama mengingat fungsi utama dari program adalah untuk pemilihan variasi nilai. Program untuk pemilihan nilai standar deviasi adalah sebagai berikut :

Pada program pemilihan nilai standar deviasi diinisialisasi dengan “sigma”.

Dimana inisialisasi ini digunakan untuk menginisialisasi nilai standar deviasi pada pop up menu yang selanjutnya akan diolah pada proses ekstraksi ciri. Inisialisasi “sigma” kemudian diubah menjadi “xsigma” menggunakan fungsi “handles”. Hal ini bertujuan agar nilai standar deviasi yang dipilih dapat dikenali sebagai bahasa program untuk proses selanjutnya. Proses pemanggilan nilai yang telah diubah menjadi nilai untuk bahasa program dikenali sebagaicallback.

Pada program pemilihan nilai segment averaging diinisialisasi dengan “dsamp”.

Dimana inisialisasi ini digunakan untuk menginisialisasi nilaisegment averagingpadapop up menu. Inisialisasi “dsamp” kemudian diubah menjadi “sampling” menggunakan fungsi

function popupmenu2_Callback(hObject, eventdata, handles) indeks=get(handles.popupmenu2,'Value'); switch indeks case 1 sigma=1.3; case 2 sigma=1.4; case 3 sigma=1.5; case 4 sigma=1.6; case 5 sigma=1.7; end handles.xsigma=sigma; guidata(hObject,handles);


(76)

handles. Sama seperti sebelumnya, hal ini bertujuan agar nilai segment averaging yang dipilih dapat dikenali sebagai bahasa program untuk proses selanjutnya. proses pemanggilan nilai yang telah diubah menjadi nilai untuk bahasa program dikenali sebagai callback. Program nilai variasisegment averagingadalah sebagai berikut :

Pada program pemilihan nilaiuserdiinisialisasi dengan “user”. Dimana inisialisasi

ini digunakan untuk menginisialisasi nilai user pada pop up menu. Inisialisasi “user” kemudian diubah menjadi “user” menggunakan fungsi handles. Program pemilihan user adalah sebagai berikut.

function popupmenu3_Callback(hObject, eventdata, handles) indeks=get(handles.popupmenu3,'Value'); switch indeks case 1 dsamp=16; case 2 dsamp=32; case 3 dsamp=64; case 4 dsamp=128; end handles.sampling=dsamp; guidata(hObject,handles);

function popupmenu4_Callback(hObject, eventdata, handles) indeks=get(handles.popupmenu4,'Value'); switch indeks case 1 user=1; case 2 user=2; case 3 user=3; end handles.xuser=user; guidata(hObject,handles);


(77)

4.1.3. Tombol Reset

Tombol “RESET” merupakan tombol yang digunakan untuk mereset atau

mensetting program untuk kembali ke pengaturan awal.Tombol “RESET” berfungsi untuk membersihkan “Plot Hasil Perekaman”, “Plot Hasil Ekstraksi ciri” dan “Hasil Pengenalan”. Program tombol “RESET dituliskan sebagai berikut :

Berdasarkan pengujian, tombol “RESET” dapat berjalan sesuai perancangan.

Tombol “RESET” ketika ditekan dapat mengembalikan program ke keadaan awal. Semua

yang berhubungan dengan tampilan antarmuka dikembalikan seperti keadaan awal.

4.1.4. Tombol Keluar

Tombol “KELUAR” berfungsi untuk menutup program aplikasi pengenalan ucapan. program tombol “KELUAR” dituliskan sebagai berikut :

function pushbutton2_Callback(hObject, eventdata, handles) % hObject handle to pushbutton2 (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) axes(handles.axes1); plot(0); axes(handles.axes2); plot(0); set(handles.edit1,'String',' '); s=serial('COM3','BaudRate',9600,'DataBits',8,'parity','none','StopBits',1,'FlowControl','n one'); fopen(s); fprintf(s,'%c','M') fclose(s); delete(s); clear s;

function pushbutton3_Callback(hObject, eventdata, handles) % hObject handle to pushbutton3 (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)

s=serial('COM3','BaudRate',9600,'DataBits',8,'parity','none','StopBits',1,'FlowControl','no ne');

fopen(s);

fprintf(s,'%c','M') fclose(s);


(1)

L49

Percobaan 4

Percobaan 5

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI


(2)

Percobaan 2


(3)

L51

Percobaan 5

c. Gelap

Percobaan 1

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI


(4)

Percobaan 3


(5)

L53

d. Terang

Percobaan 1

Percobaan 2

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI


(6)

Percobaan 4