Aplikasi pengenalan ucapan untuk pengaturan kecepatan kipas DC menggunakan discrete cosine transform dan fungsi jarak euclidean.

(1)

viii

INTISARI

Perkembangan teknologi sekarang ini sangat cepat, sehingga perkembangan teknologi yang sangat cepat ini dapat mempermudah pekerjaan manusia. Menggunakan ucapan manusia dapat menggantikan peran penggunaan saklar yang harus menekan tombol - tombol saklar tertentu, sehingga membutuhkan waktu yang lama untuk melakukan proses penekanan tombol saklar. Menjadikan penggunaan saklar kurang efisien dalam pengunaannya. Sehingga, penulis membuat pengenalan ucapan untuk pengaturan kecepatan kipas DC.

Sistem pengenalan ucapan untuk pengaturan kecepatan kipas DC menggunakan mikrofon untuk merekam ucapan manusia. Ucapan yang terekam diproses menggunakan laptop untuk menjalankan proses pengenalan dan mengenali ucapan yang terekam. Proses pengenalan ucapan meliputi beberapa subproses diantaranya merekam, normalisasi, pemotongan sinyal, windowing, ekstraksi ciri, fungsi jarak, penentuan hasil ucapan pengenalan, komunikasi serial dan pengaturan kecepatan kipas DCdengan mikrokontroler.

Sistem pengenalan ucapan untuk pengaturan kecepatan kipas DC menggunakan

discrete cosine transform dan fungsi jarak Euclidean. Program pengenalan sudah berhasil dibuat dan dan dapat bekerja sesuai dengan yang diharapkan. Pada program pengenalan ini menampilkan gelombang ucapan yang terekam, gelombang hasil pre-processing, hasil ekstraksi ciri DCT, keluaran berupa tulisan ucapan yang berhasil dikenali dan keluaran berupa tulisan data komunikasi serial. Pada program ini, hasil pengenalan terbaik adalah 83,33 % dalam pengujian secara real time dengan parameter nilai batas potong 0,2 dan downsampling

2. Program pengenalan ucapan untuk pengaturan kecepatan kipas DC hanya mengenali empat ucapan (hidup, mati, cepat dan lambat).

Kata kunci: Suara Manusia, Discrete Cosine Transform (DCT), Fungsi Jarak Euclidean,Pengenalan ucapan “hidup”, “mati”, “cepat” dan “lambat”.


(2)

ix

ABSTRACT

The development of technology today is very fast, so that rapid technological development is to facilitate the work of man. Using human speech can replace the role of the use switches that have to press the button – specific switch button, so it takes a long time to process keystrokes switch. Making use of the switch is less efficient in its use. Thus, the authors make speech recognition for DC fan speed settings.

Speech recognition system for DC fan speed setting using the microphone to record human speech. The recorded speech is processed using a laptop to run the process of introduction and recognize the recorded greeting.Speech recognition process includes several sub-processes, such as recording, normalization, cutting, windowing, signal extraction of characteristic, the function of distance, the determination results of speech recognition, serial communications and DC fan speed settings with a microcontroller.

Speech recognition system for DC fan speed control using discrete cosine transform and euclidean distance function. Recognition program has successfully created and can work well. In this recognition program is shows the sound wave of recorded speech, wave of pre-processing, result of DCT feature extraction, output speech in form of essay which is successfully to recognize and the output data communication serial form. In this program, the best recognition result is 83,33 % in real time testing with parameter cutting limit value 0,2 and downsampling value 2. Speech recognition program for fan speed control DC only recognizes four words (hidup, mati, cepat and lambat).

Keywords: Human Voice, Discrete Cosine Transform, Euclidean distance function, speech recognition of “hidup”, “mati”, “cepat” and “lambat”.


(3)

i

TUGAS AKHIR

APLIKASI PENGENALAN UCAPAN UNTUK PENGATURAN

KECEPATAN KIPAS DC MENGGUNAKAN DISCRETE

COSINE TRANSFORM DAN FUNGSI JARAK EUCLIDEAN

Diajukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik

Program Studi Teknik Elektro

Oleh:

WIDI EKO WARDONO

NIM: 105114010

PROGRAM STUDI TEKNIK ELEKTRO

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA


(4)

ii

FINAL PROJECT

APPLICATION OF SPEECH RECOGNITION FOR DC FAN

CONTROL USING DISCRETE COSINE TRANSFORM AND

EUCLIDEAN DISTANCE FUNCTION

Presented as Partial Fulfillment of the Requirements To Obtain the Sarjana Teknik Degree

In Electrical Engineering Study Program

WIDI EKO WARDONO

NIM: 105114010

ELECTRICAL ENGINEERING STUDY PROGRAM

FACULTY OF SCIENCE AND TECHNOLOGY

SANATA DHARMA UNIVERSITY

YOGYAKARTA


(5)

Pembimbing

/,

tu

Dr. Linggo S

HALAMAN

PERSETUJUAN

TUGAS

AKHIR

APLIKASI

PENGENALAN UCAPAN UNTUK PENGATURAN

KECEPATAI\I

KIPAS

DC

MENGGT]NAKAN

DISCNETE COSINE

TRANSFORM

DAI\

FUNGSI

JARAK EUCLIDEAN

(APPLTCATTON

OF

SPEECH RECOGNTTTON

FOR DC FAr[

CONTROL

USING

DISCRETE

COSINE

TRANSFORM

AI\D

EUCLIDEAN DISTANCE FUNCTIOT9

Oleh :

WIDI

EKO WARDONO

NIM

:

105114010

Telah disetujui oleh :

'8/q

/att

ilt


(6)

HALAMAN

PENGESAHAN

TUGAS

AKHIR

APLIKASI

PENGENALAN UCAPAN UNTUK

PENGATT]RAN

KECEPATAI\I KIPAS

DC

MENGGUNAKAN

DISCRETE COSINE

TRANSFORM

DAN

TUNGSI

JARAK EACLIDEAN

(APPLICATION

OF

SPEECH

RECOGNITION

FOR DC FAI\

CONTROL

USING

DISCRETE

COSINE

TRANSFORM ANI)

EUCLIDEAI\ DISTANCE FUNCTION)

Oleh:

wrp.I EKo WARDQNO

NIM: l05ll40l0

Telah dipertahankan di depan Panitia Penguji Pada tanggal 18 Maret20ls

Dan dinyatakan memenuhi syarat

Ketua Sekretaris Anggota

SusunanPanitiaPenguj i :

Namalengkap

: Martanto, S.T., M.T.

: Dr. Linggo Sumarno

: Djoko Untoro Suwamo, S.Si., M.T.

Yogyakarta,

Z2

A?n1

2016

Fakultas Sains dan Teknologi

IV


(7)

PERIIYATAAN KEASLIAN KARYA

Saya menyatakan dengan sesungguhnya bahwa tugas akhir ini tidak memuat karya orang lain, kecuali yang telah disebutkan dalam kutipan dan daftar pustaka sebagaimana layaknya karya ilmiah:

Yogyakarla, zSApril 201 5


(8)

vi

HALAMAN PERSEMBAHAN DAN MOTTO HIDUP

Persembahan

Karya ini saya persembahkan kepada :

Tuhan Yesus Kristus

Bapak dan Ibu atas dukungan, doa dan semangat

Keluarga dan Teman-teman seperjuangan

Almamaterku Sanata Dharma

“Tuhanlah kekuatan dan mazmurku…

Dia gunung batu dan keselamatanku….”

In order to succed,


(9)

LEMBAR PERNYATAN

PERSETUJUAN

PUBLIKASI

KARYA

ILMIAH

UNTUK KEPENTINGAN

AKADEMIS

Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma :

Nama

: Widi Eko Wardono

Nomor

Mahasiswa

: 105114010

Demi

pengembangan

ilmu

pengetahuan, saya memberikan kepada perpustakaan Universitas Sanata Dharma karya ilmiah saya yang berjudul :

APLIKASI

PENGENALAN

UCAPAN

UNTUK

PENGATURAN KECEPATAN KIPAS

DC

MENGGUNAKANDI,SCRE

TE

C O S

I

N

E

TRAN

S

FOftMDAN

FUNGSI

JARAK EUCLIDEAN

beserta perangkat yang diperlukan ( bila ada ). Dengan demikian saya memberikan kepada Perpustakaan Universitas Sanata Dharrna hak untuk menyimpan, mengalihkan dalam bentuk media lain, mengelolanya dalam bentuk pangkalan data, mendistribusikan secara terbatas dan mempublikasikannya di intemet atau media lain untuk kepentingan akademis tanpa perlu meminta

ijin

dari saya maupun memberikan royalty kepada saya selama tetapmencatumkan nama saya sebagai penulis.

Demikian pernyataan ini saya buat dengan sebenarnya. Yogyakarta,29 April 20 I 5

47

(Widi Eko Wardono)


(10)

viii

INTISARI

Perkembangan teknologi sekarang ini sangat cepat, sehingga perkembangan teknologi yang sangat cepat ini dapat mempermudah pekerjaan manusia. Menggunakan ucapan manusia dapat menggantikan peran penggunaan saklar yang harus menekan tombol - tombol saklar tertentu, sehingga membutuhkan waktu yang lama untuk melakukan proses penekanan tombol saklar. Menjadikan penggunaan saklar kurang efisien dalam pengunaannya. Sehingga, penulis membuat pengenalan ucapan untuk pengaturan kecepatan kipas DC.

Sistem pengenalan ucapan untuk pengaturan kecepatan kipas DC menggunakan mikrofon untuk merekam ucapan manusia. Ucapan yang terekam diproses menggunakan laptop untuk menjalankan proses pengenalan dan mengenali ucapan yang terekam. Proses pengenalan ucapan meliputi beberapa subproses diantaranya merekam, normalisasi, pemotongan sinyal, windowing, ekstraksi ciri, fungsi jarak, penentuan hasil ucapan pengenalan, komunikasi serial dan pengaturan kecepatan kipas DCdengan mikrokontroler.

Sistem pengenalan ucapan untuk pengaturan kecepatan kipas DC menggunakan

discrete cosine transform dan fungsi jarak Euclidean. Program pengenalan sudah berhasil dibuat dan dan dapat bekerja sesuai dengan yang diharapkan. Pada program pengenalan ini menampilkan gelombang ucapan yang terekam, gelombang hasil pre-processing, hasil ekstraksi ciri DCT, keluaran berupa tulisan ucapan yang berhasil dikenali dan keluaran berupa tulisan data komunikasi serial. Pada program ini, hasil pengenalan terbaik adalah 83,33 % dalam pengujian secara real time dengan parameter nilai batas potong 0,2 dan downsampling

2. Program pengenalan ucapan untuk pengaturan kecepatan kipas DC hanya mengenali empat ucapan (hidup, mati, cepat dan lambat).

Kata kunci: Suara Manusia, Discrete Cosine Transform (DCT), Fungsi Jarak Euclidean,Pengenalan ucapan “hidup”, “mati”, “cepat” dan “lambat”.


(11)

ix

ABSTRACT

The development of technology today is very fast, so that rapid technological development is to facilitate the work of man. Using human speech can replace the role of the use switches that have to press the button – specific switch button, so it takes a long time to process keystrokes switch. Making use of the switch is less efficient in its use. Thus, the authors make speech recognition for DC fan speed settings.

Speech recognition system for DC fan speed setting using the microphone to record human speech. The recorded speech is processed using a laptop to run the process of introduction and recognize the recorded greeting.Speech recognition process includes several sub-processes, such as recording, normalization, cutting, windowing, signal extraction of characteristic, the function of distance, the determination results of speech recognition, serial communications and DC fan speed settings with a microcontroller.

Speech recognition system for DC fan speed control using discrete cosine transform and euclidean distance function. Recognition program has successfully created and can work well. In this recognition program is shows the sound wave of recorded speech, wave of pre-processing, result of DCT feature extraction, output speech in form of essay which is successfully to recognize and the output data communication serial form. In this program, the best recognition result is 83,33 % in real time testing with parameter cutting limit value 0,2 and downsampling value 2. Speech recognition program for fan speed control DC only recognizes four words (hidup, mati, cepat and lambat).

Keywords: Human Voice, Discrete Cosine Transform, Euclidean distance function, speech recognition of “hidup”, “mati”, “cepat” and “lambat”.


(12)

x

KATA PENGANTAR

Puji dan syukur penulis panjatkan kepada Tuhan Yesus Kristus karena telah memberikan anugerah-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. Keluarga kecil penulis yang telah memberi dukungan dalam mengawali dan

mengakhirimasa - masa menempuh pendidikan di Universitas Sanata Dharma. 7. Alvianika yang turut memberikan dukungan dalam kehidupan penulis.

8. Teman – teman seperjuangan Teknik Elektro 2010 yang telah menemani di waktu siang ataupun malam pada saat menempuh pendidikan di Universitas Sanata Dhama.

9. 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)

Penulis menyadari bahwa dalam penyusunan laporan tugas akhir masih mengalami kesulitan dan tidak lepas dari kesalahan.Oleh karena itu, penulis mengharapkan masukan, kritik dan saran yang membangun agar skripsi ini menjadi lebih baik.Semoga skripsi ini

dapat bermanfaat sebagaimana mestinya.

Penulis,

F

Widi Eko Wardono


(14)

xii

DAFTAR ISI

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 ... xv

DAFTAR TABEL ... xviii

BAB I PENDAHULUAN ... 1

1.1. Latar Belakang ... 1

1.2. Tujuan dan Manfaat Penelitian ... 2

1.3. Batasan Masalah... 2

1.4. Metodologi Penelitian ... 3

BAB II DASAR TEORI ... 6

2.1. Suara Manusia ... 6

2.2. Microphone ... 7

2.3. Sound Card ... 8

2.4. Matlab ... 9

2.5. Sampling ... 11

2.6. Mikrokontroler ATMega 8 ... 12


(15)

xiii

2.6.2 Timer ATMega 8 ... 13

2.6.3 USART ... 18

2.7. FT232RL ... 20

2.8. Pulse Width Modulation (PWM) ... 21

2.9. Discrete Cosine Transform (DCT) ... 22

2.10. Jarak Euclidean ... 23

2.11. Windowing ... 23

2.11.1 Jendela Hanning ... 24

2.12. Template matching ... 24

2.13. Transistor sebagai saklar ... 24

2.14. Brushless Motor DC ... 25

BAB III PERANCANGAN PENELITIAN ... 27

3.1. Perancangan Sistem ... 27

3.2. Perancangan Pengenalan Ucapan ... 29

3.2.1 Perancangan Software ... 30

3.2.2 Perancangan Hardware... 39

3.2.3 Desain Alat ... 46

3.3. Perancangan Tampilan GUI Matlab... 48

BAB IV HASIL DAN PEMBAHASAN ... 50

4.1. Antarmuka Program Pengenalan Ucapan Untuk Pengaturan Kipas DC Secara Real-Time Menggunakan Ekstraksi Ciri DCT dan Fungsi Jarak Euclidean ... 50

4.1.1.Pop up Menu ... 53

4.1.2.Push Button “Rekam” ... 54

4.1.3.Push Button “Ulang” ... 61

4.1.4.Push Button “Selesai” ... 62

4.2. Software Program Pada Mikrokontroler Untuk Mengatur Kecepatan Kipas DC Secara Real Time ... 63

4.3. Hasil Pengujian Program Pengenalan Ucapan Untuk Mengatur Kecepatan Kipas DC Untuk Tingkat Pengenalan Ucapan ... 66

4.3.1 Pengujian Parameter Pengenalan Ucapan Untuk Mengatur Kecepatan Kipas DC Secara Tidak Real Time ... 66


(16)

xiv

4.3.2 Pengujian Parameter Pengenalan Ucapan Untuk Mengatur Kecepatan Kipas

DC Secara Real Time ... 71

BAB V KESIMPULAN DAN SARAN ... 80

5.1. Kesimpulan ... 80

5.2. Saran ... 80

DAFTAR PUSTAKA ... 81

LAMPIRAN ... 83 Hasil Durasi Perekaman Ucapan ... L1

Percobaan Menggunakan Program Antarmuka Pembentukan Database ... L5

Listing Program ... L8

Hasil Perbandingan Rata – Rata Ekstraksi Ciri Pada Ucapan Yang Disimpan Dengan Setiap Ucapan Pengenalan... L30


(17)

xv

DAFTAR GAMBAR

Gambar 1.1 Alur Kerja ... 4

Gambar 1.2 Subsistem Pembuatan Software ... 4

Gambar 2.1 Alat Ucap Untuk Pembentukan Suara[5] ... 6

Gambar 2.2 Diagram Blok Produksi Suara Manusia[3] ... 7

Gambar 2.3 Microphone ... 8

Gambar 2.4 Sound Card[8] ... 9

Gambar 2.5Penulisan Program Matlab Secara Langsung[9] ... 10

Gambar 2.6 M-file Matlab[9] ... 11

Gambar 2.7 Konfigurasi ATMega 8[11] ... 12

Gambar 2.8 Diagram Waktu Mode Fast PWM[11] ... 18

Gambar 2.9 Konfigurasi IC FT232RL[12] ... 20

Gambar 2.10 Gelombang Kotak[13] ... 21

Gambar 2.11 Gambar Pulsa PWM[13] ... 22

Gambar 2.12 Fungsi Dasar Kosinus Satu Dimensi[14] ... 23

Gambar 2.13 Rangkaian Transistor Sebagai Saklar[20] ... 25

Gambar 2.14 Urutan Putaran Brushless Motor DC ... 26

Gambar 3.1 Gambaran Umum Sistem ... 27

Gambar 3.2 Diagram Blok Proses Pengenalan Ucapan ... 30

Gambar 3.3 Flowchart Proses Pengenalan Ucapan ... 31

Gambar 3.4 Flowchart Proses Pencuplikan Ucapan ... 32

Gambar 3.5 Flowchart ProsesPre-processing ... 33

Gambar 3.6 Flowchart Proses Normalisasi ... 34

Gambar 3.7 Flowchart Proses Pemotongan Sinyal ... 35


(18)

xvi

Gambar 3.9 Flowchart Proses Zero Padding ... 36

Gambar 3.10 Flowchart Proses Ekstraksi Ciri ... 37

Gambar 3.11 Flowchart Proses Pembanding ... 38

Gambar 3.12 Flowchart Proses Penentuan Keluaran ... 38

Gambar 3.13 Flowchart Komunikasi Serial Pada Matlab ... 39

Gambar 3.14 Flowchart Pembentukan Database Ucapan ... 40

Gambar 3.15 Rangkaian Minimum Sistem ATMega 8 ... 41

Gambar 3.16 Rangkaian Osilator Eksternal ... 42

Gambar 3.17 Rangkaian Reset... 43

Gambar 3.18 Rangkaian Motor Driver ... 44

Gambar 3.19 Flowchart Software Mikrokontroler ... 47

Gambar 3.20 Tampilan Desain Alat Tampak Depan ... 48

Gambar 3.21 Tampilan Desain Alat Tampak Samping ... 49

Gambar 3.22 Tampilan Desain Alat Tampak Belakang ... 49

Gambar 3.23 Tampilan GUI Matlab Pengenalan Ucapan Untuk Pengaturan Kipas DC .... 50

Gambar 4.1 Ikon Matlab 7.10.0 ... 51

Gambar 4.2 Tampilan Matlab ... 51

Gambar 4.3 Tampilan Pengenalan Ucapan Untuk Pengaturan Kipas DC ... 52

Gambar 4.4 Tampilan Antarmuka Setelah Push Button “Rekam” Ditekan ... 61

Gambar 4.5 Tampilan Antarmuka Setelah Push Button “Selesai” Ditekan ... 63

Gambar 4.6 Pengaruh Perubahan Nilai Batas Potong Terhadap Pengenalan Ucapan ... 67

Gambar 4.7 Pengaruh Perubahan Nilai Downsampling Terhadap Pengenalan Ucapan .. 68

Gambar 4.8 Proses Pembagian Data Awal Dengan Beberapa Frame ( ) ... 70

Gambar 4.9 Pola Ucapan Hasil Ekstraksi Ciri Kata “hidup” Dalam Proses Pengenalan Ucapan ... 73

Gambar 4.10 Pola Ucapan Hasil Ekstraksi Ciri Kata “mati” Dalam Proses Pengenalan Ucapan ... 74


(19)

xvii

Gambar 4.11 Pola Ucapan Hasil Ekstraksi Ciri Kata “cepat” Dalam Proses Pengenalan Ucapan ... 74

Gambar 4.12 Pola Ucapan Hasil Ekstraksi Ciri Kata “lambat” Dalam Proses Pengenalan Ucapan ... 75

Gambar 4.13 Perbandingan Rata –Rata Hasil Ekstraksi Ciri Ucapan “hidup” Database

Dengan Ucapan “cepat” Pada Pengenalan ... 77 Gambar 4.14 Perbandingan Rata –Rata Hasil Ekstraksi Ciri Ucapan “hidup” Database

Dengan Ucapan “mati” Pada Pengenalan ... 78 Gambar 4.15 Perbandingan Rata –Rata Hasil Ekstraksi Ciri Ucapan “hidup” Database

Dengan Ucapan “cepat” Pada Pengenalan ... 78 Gambar 4.16 Perbandingan Rata –Rata Hasil Ekstraksi Ciri Ucapan “hidup” Database


(20)

xviii

DAFTAR TABEL

Tabel 2.1 Register TCRR1A[11] ... 14

Tabel 2.2 Mode Normal dan CTC[11]... 14

Tabel 2.3 Mode Fast PWM[11] ... 15

Tabel 2.4 Mode Phase Correct dan Frequency Correct PWM[11] ... 15

Tabel 2.5 Mode Operasi[11] ... 16

Tabel 2.6 Sumber Clock Dengan Pemilihan Bit[11] ... 17

Tabel 2.7 Pengaturan Bit UMSEL[11] ... 19

Tabel 2.8 Pengaturan Bit Parity Mode[11] ... 19

Tabel 2.9 Pengaturan Bit Stop Select[11] ... 19

Tabel 2.10 Bit Pengaturan Ukuran Karakter[11] ... 20

Tabel 3.1 Spesifikasi Mikrofon Genius MIC-01A[5] ... 28

Tabel 3.2 Spesifikasi Kipas DC ... 29

Tabel 3.3 Kondisi Keadaan Tingkat Kecepatan Putar Kipas DC ... 46

Tabel 3.4 Pengukuran Nilai Pulse Width Mmodulation (PWM) Sebagai Tingkat Kecepatan Putar Kipas DC ... 46

Tabel 3.5 Penentuan Nilai Pulse Width Mmodulation (PWM) Sebagai Tingkat Kecepatan Putar Kipas DC ... 46

Tabel 3.6 Keterangan Tampilan GUI Matlab ... 51

Tabel 4.1 Hasil Pengenalan Ucapan Yang Dikenali ... 61

Tabel 4.2 Data Yang Diterima Mikrokontroler ... 65

Tabel 4.3 Tingkat Pengenalan Untuk Hasil Pengujian Secara Tidak Real Time ... 67

Tabel 4.4 Hasil Tingkat Pengenalan Menggunakan Segment Averaging ... 70

Tabel 4.5 Hasil Pengujian Secara Real Time ... 71

Tabel 4.6 Hasil Kecepatan Putar Kipas DC Pada Pengujian Secara Real Time ... 72


(21)

xix

Tabel 4.8 Hasil Proses Ekstraksi Ciri Dalam Bentuk Numerik Pengguna 2 ... 75


(22)

1

BAB I

PENDAHULUAN

1.1

Latar Belakang

Dalam perkembangan teknologi yang sangat cepat, dan dengan perkembangan teknologi yang sangat cepat ini dapat mempermudahkan pekerjaan manusia. Banyak aplikasi - aplikasi perkembangan teknologi yang mempermudah pekerjaan manusia, salah satunya aplikasi pengaturan kecepatan kipas DC dengan menggunakan ucapan manusia secara real time.

Dengan menggunakan ucapan manusia dapat menggantikan peran penggunaan saklar yang harus menekan tombol - tombol saklar tertentu, sehingga membutuhkan waktu yang lama untuk melakukan proses penekanan tombol saklar. Menjadikan penggunaan saklar kurang efisien dalam pengunaannya. Sehingga, penulis membuat sistem pengaturan kecepatan kipas DC menggunakan ucapan manusia secara real time.

Penulis menemukan beberapa penelitian tentang pengenalan pengucapan manusia, penelitian yang dilakukan Hidayatno, A., & Saksono [1] tentang aplikasi pengenalan ucapan sebagai pengaturan mobil dengan pengendali jarak jauh. Penulis juga menemukan penelitian yang dilakukan Adler, J., Azhar, M., & Supatmi, S [2] tentang identifikasi suara dengan Matlab sebagai aplikasi jaringan saraf tiruan. Penelitian yang yang dibuat oleh penulis ini memiliki kesamaan dalam pemberian input yaitu pengucapan manusia dan menggunakan Matlab sebagai pemograman dan pengolahan data. Tetapi penelitian yang dibuat penulis memiliki beberapa perbedaan, yaitu pengambilan data pengucapan hidup, mati, cepat dan lambat sebagai database, menggunakan metode ekstraksi ciri DCT (Discrete Cosine Transform) dan menggunakan fungsi jarak Euclidean sebagai perbandingan antara database dengan pengucapan, selain itu output yang diberikan berupa kecepatan putaran kipas DC dengan 5 step pengucapan cepat dan lambat untuk mengatur kecepatan putaran kipas.

Penelitian yang dibuat oleh penulis nantinya dapat dikembangkan menjadi aplikasi pengendalian elektronika yang membutuhkan pengucapan manusia dan pada penelitian ini juga dibuat untuk pengendalian kipas chasing komputer dengan pengucapan manusia untuk mengatur sirkulasi udara dalam komputer sesuai dengan keinginan user dengan menambah variasi kecepatan motor yang banyak dengan menambahkan step PWM (Pulse Width Modulation) untuk pengaturan kecepatan motor sesuai dengan yang dibutuhkan.


(23)

1.2

Tujuan dan Manfaat Penelitian

Tujuan dari penulisan tugas akhir ini adalah untuk menghasilkan sistem pengenalan ucapan manusia untuk mengatur kecepatan putaran kipas DC.

Manfaat dari penulisan tugas akhir ini adalah :

1. Sebagai alat bantu berupa software bagi orang lain untuk mengatur kecepatan putaran kipas DC atau alat elektronika dengan pengenalan ucapan manusia.

2. Sebagai penelitian awal sistem pengenalan ucapan manusia untuk mengatur kecepatan putaran kipas DC sehingga dapat digunakan untuk mengendalikan alat elektronika dengan aplikasi yang menggunakan pengenalan ucapan.

1.3

Batasan Masalah

Sistem pengenalan ucapan terdiri atas software dan hardware. Hardware memiliki dua fungsi yaitu memberikan input ucapan manusia dan memberikan output berupa kecepatan putaran kipas DC. Sedangkan software pada komputer berfungsi untuk mengatur semua proses pengenalan ucapan manusia.

Pada perancangan sistem ini, penulis fokus pada software komputer untuk memproses pengenalan ucapan manusia, sedangkan hardware berupa microphone yang sudah tersedia di pasaran. Penulis menetapkan beberapa batasan masalah yang dianggap perlu dalam perancangan ini, yaitu sebagai berikut :

1. Menggunakan input pengucapan tiga pengguna yang telah ditentukan dengan intonasi pengucapan kata secara normal atau biasa.

2. Suara yang dikenali “hidup”, “mati”, “cepat” dan “lambat”. Pengucapan selain kata – kata yang sudah ditentukan akan dikenali secara salah.

3. Menggunakan software Matlab dan Code Vision dalam pembuatan dan pengolahan program.

4. Menggunakan DCT ( Discrete Cosine Transform) untuk mencari ekstraksi ciri, fungsi jarak Euclidean sebagai pembanding dan jendela Hanning sebagai

windowing.

5. Pengenalan secara real time.

6. Variasi nilai pada variabel batas potong dan downsampling ditentukan sebagai berikut :


(24)

Downsampling = 1, 2 dan 4

7. Output berupa kecepatan putaran kipas DC.

8. Menggunakan komunikasi serial FT232RL untuk menghubungkan mikrokontroler dengan komputer untuk mengatur kecepatan putaran kipas DC. 9. Jarak antara microfon dengan peneliti ± 10cm.

10.Akuator yang digunakan adalah kipas DC dengan dimensi 12 x 12 x 2.5 cm. 11.Menggunakan mikrokontroler ATMega8.

12.Pengolahan data pengenalan ucapan menggunakan laptop dan mikrokontroler sebagai pengolahan data untuk pengaturan putar kipas DC.

13.Penentuan level PWM sebagai output nilai kecepatan putar kipas DC berdasarkan pengukuran kecepatan putar kipas DC.

1.4

Metodologi Penelitian

Langkah-langkah dalam pembuatan tugas akhir adalah :

1. Pengumpulan referensi berupa buku - buku dan jurnal - jurnal ilmiah mengenai pengolahan suara, pemrograman Matlab, ekstraksi ciri DCT ( Discrete Cosine Transform) dan fungsi jarak Euclidean.

2. Perancangan subsistem software dan hardware

Tahap ini bertujuan untuk mencari bentuk model yang optimal dari sistem yang akan dibuat dengan mempertimbangkan berbagai faktor–faktor permasalahan dan kebutuhan yang ditentukan. Perancangan subsistem software dan hardware

secara umum dapat dilihat pada gambar 1.1

Gambar 1.1 Alur Kerja 3. Pembuatan subsistem software dan hardware.

Sistem akan bekerja jika user menekan tombol push button yang ditampilkan dalam tampilan visual yang disediakan oleh software. Kemudian sistem akan mengolah interupsi yang diterima dan memulai dan memulai proses recording


(25)

sampai user memberikan interupsi kembali untuk menghentikan proses

recording. Setelah itu, user memberikan interupsi memulai proses pengenalan pengucapan. Matlab akan mengolah pengenalan ucapan dan memberikan output

berupa putaran kipas DC Pembuatan hardware ditunjukkan pada gambar 1.1 dengan mikrokontroler sebagai pengolah data dan penggerak kipas DC. Pembuatan subsistem software ditunjukkan pada gambar 1.2

Gambar 1.2 Subsistem Pembuatan Software

4. Pengambilan data.

Pengambilan data yang dilakukan untuk dapat menguji sistem dilakukan dalam 2 tahap yaitu :

 Pengenalan ucapan secara offline dengan merekam 20 data ucapan pada tiap kata ucapan. Pengenalan ucapan dilakukan pada data ucapan tersebut pada setiap variasi nilai variabel.

 Pengenalan ucapan secara real time dengan menangkap ucapan dan langsung diproses hingga terjadi pergerakan kipas DC.

Pengambilan data dilakukan dengan memvariasikan nilai pada variabel data yang ditentukan. Variabel yang digunakan yaitu batas potong sinyal dan faktor


(26)

5. Analisa dan penyimpulan hasil percobaan. Analisa data dilakukan dengan meneliti pengaruh variasi DCT (Discrete Cosine Transform) dengan 80 kali percobaan ( 4 pengucapan x 20 ) terhadap tingkat pengenalan dengan variablel

downsampling dan batas potong sebanyak 12 set dari database. Penyimpulan hasil dilakukan dengan mencari jumlah koefisien DCT (Discrete Cosine Transform) yang menghasilkan tingkat pengenalan yang terbaik.

6. Pengujian secara real time

Pengujain secara real time merupakan pengujian dengan 4 ucapan hidup, mati, cepat dan lambat sebanyak 10 kali secara langsung setelah mengetahui batas potong dan downsampling yang menghasilkan tingkat pengenalan yang terbaik, pengujian ini bertujuan untuk menguji kinerja sistem pengenalan ucapan pada saat real time.


(27)

6

BAB II

DASAR TEORI

2.1 Suara Manusia

Ucapan manusia dihasilkan oleh suatu sistem produksi ucapan yang dibentuk oleh alat- alat ucap manusia. Proses tersebut dimulai dengan formulasi pesan dalam otak pembicaraan. Pesan tersebut akan diubah menjadi perintah- perintah yang dibeikan kepada alat- alat ucap manusia, sehingga akhirnya dihasilkan ucapan yang sesuai dengan pesan yang ingin diucapkan. Dimulai dari vocal cord atau glottis, dan berakhir pada mulut. Vocal tract terdiri dari pharynx (koneksi antara esophagus dengan mulut) dan mulut. Panjang

vocal tract pria pada umumnya sekitar 17 cm. Daerah pertemuan vocal tract ditentukan oleh lidah, bibir, rahang dan bagian belakang langit- langit.[3]

Gambar 2.1 Alat Ucap Untuk Pembentukan Suara [5]

Pembentukan ucapan dimulai dengan adanya hembusan udara yang dihasilkan oleh paru – paru. Cara kerjanya serupa seperti piston atau pompa yang ditekan untuk menghasilkan udara. Pada saat vocal cords berada dalam keadaan tegang, aliran udara akan menyebabkan terjadinya vibrasi pada vocal cords dan menghasilkan bunyi ucapan yang disebut voiced sound. Pada saat vocal cord berada dalam keadaan lemas, aliran udara akan melalui daerah yang sempit pada vocal tract dan menyebabkan terjadinya turbulensi, sehingga menghasilkan suara yang dikenal dengan unvoiced sound.[4]


(28)

Gambar 2.2 Diagaram Blok Produksi Suara Manusia[3]

2.2 Microphone

Mikrofon atau dalam bahasa Inggris disebut dengan michrophone adalah suatu alat atau komponen elektronika yang dapat mengubah atau mengonversi energi akustik (gelombang suara) ke energi listrik (sinyal audio). Mikrofon (microphone) merupakan keluarga tranduser yang berfungsi sebagai komponen atau alat pengubah satu bentuk energi ke energi lainnya, tetapi mereka semua memiliki persamaan yaitu semua jenis mikrofon memiliki suatu bagian utama yang disebut dengan Diafragma (Diaphragm). Mikrofon merupakan komponen penting dalam perangkat elektronik seperti alat bantu pendengaran, perekam suara, penyiaran radio maupun alat komunikasi lainnya seperti

handphone, telepon, intercom, WalkieTalkie serta home entertainment seperti karaoke. Pada dasarnya sinyal listrik yang dihasilkan mikrofon sangatlah rendah, oleh karena itu diperlukan penguat suara yang biasanya disebut dengan Amplifier. Berikut ini adalah penjelasan cara kerja mikrofon (microphone)

1. Saat kita berbicara, suara kita akan membentuk gelombang suara dan menuju ke mikrofon.

2. Dalam mikrofon, gelombang suara tersebut akan menabrak diafragma (diaphragm) yang terdiri dari membran plastik yang sangat tipis Diafragma akan bergetar sesuai dengan gelombang suara yang diterima.


(29)

3. Sebuah coil atau kumparan kawat (Voice coil) yang terdapat dibagian belakang diafragma akan ikut bergerak sesuai dengan getaran diafragma

4. Sebuah magnet kecil yang permanen (tetap) yang dikelilingi oleh koil atau kumparan tersebut akan menciptakan medan magnet seiring dengan gerakan koil. 5. Pergerakan voice coil di medan ini akan menimbulkan sinyal listrik

6. Sinyal listrik yang dihasilkan tersebut kemudian mengalir ke amplifier (penguat) atau perekam suara[6].

Gambar 2.3 Microphone[7]

2.3 Sound Card

Sound card adalah perangkat keras komputer yang berfungsi untuk mengolah data berupa audio atau suara. Sound card juga sering disebut audio card, adalah periferal yang terhubung ke slot ISA atau PCI pada motherboard, yang memungkinkan untuk memasukkan input, memproses dan menghantarkan data berupa suara. Setiap sound card memiliki fungsi, yaitu :

1. Digital to Analog Converter (DAC) sebagai keluaran suara ke speaker. 2. Analog to Digital Converter (ADC) sebagai masukkan suara dari microphone. 3. Musical Instrument Digital Interface (MIDI) sebagai komunikasi alat elektronik,

kontrol dan sinkroniksasi satu sama lainnya.

4. Digital Signal Proses (DSP) sebagai pengolahan data suara.

5. Synthesizer (sintesis) sebagai pengolahan suara yang menghasilkan simulasi suara mirip dengan suara aslinya.

6. Jack sebagai penghubung sound card dengan speaker sebagai jalur out line atau microphone sebagai jalur in line.


(30)

Sound card memiliki fasilitas audio yang telah terpasang pada motherboard

berbentuk chipset (on board sound card) dan kinerja on board sound card masih membutuhkan bantuan posesor utama. Selain berbentuk chipset (on board sound card), beberapa jenis lainnya sound card memiliki fasilitas audio yang dipasangkan pada slot PCI

motherboard. Sound card tipe ini memiliki keunggulan kualitas yang dihasilkan[8].

Gambar 2.4 Sound Card[8]

2.4 Matlab

Matlab adalah singkatan dari mathematics laboratory atau matrix laboratory. Dalam ilmu komputer, Matlab didefinisikan sebagai bahasa pemrograman yang digunakan untuk mengerjakan operasi matematika atau operasi aljabar matriks. Matlab merupakan sistim interaktif yang data dasarnya adalah matriks. Matriks dianggap data dasar data Matlab karena samua masukkan di Matlab dapat ditulis dalam bentuk matriks. Beberapa bagian dari window Matlab :

1. Current Directory

Window ini menampilkan isi dari direktori kerja saja menggunakan Matlab. Kita dapat mengganti direktori ini sesuai dengan tempat direktori kerja yang diingikan. Default dari alamat direktori berada dalam folder works tempat

program files Matlab berada. 2. Command History

Window ini berfungsi untuk menyimpan perintah – perintah apa saja yang sebelumnya dilakukan oleh pengguna terhadap Matlab.


(31)

Window ini adalah window utama dari Matlab. Disini adalah tempat untuk menjalankan fungsi, mendeklarasikan variabel, menjalankan proses – proses, serta melihat isi variabel.

4. Workspace

Workspace berguna untuk menampilkan seluruh variabel – variable yang sedang aktif pada saat pemakaian Matlab. Apabila variable berupa data matriks berukuran besar maka user dapat melihat isi dari seluruh data dengan melakukan double click pada variable tersebut. Matlab secara otomatis akan menampilkan window array editor” yang berisikan data pada setiap variable yang dipilih user[9]

Terdapat dua metode yang digunakan untuk menulis program dalam Matlab. Kedua metode itu adalah metode langsung dan tidak langsung. Untuk menulis program Matlab secara langsung maka program itu ditulis langsung di Command window

Gambar 2.5 Penulisan Program Matlab Secara Langsung[9]

Untuk menulis program Matlab secara tidak langsung maka program itu dapat ditulis sebagai M-file


(32)

Gambar 2.6 M-file Matlab[9]

2.5 Sampling

Proses sampling mengubah sinyal analog, x(t) menjadi nilai – nilai waktu diskrit,

x[n] yang dinyatakan sebagai

[ ] | (2.1) Dengan Ts adalah periode sampling. Istilah lain yang sering digunakan dalam sampling adalah frekuensi sampling, yang tidak lain adalah kebalikan dari periode sampling, yaitu

(2.2)

Jika frekuensi tertinggi dari sinyal analog adalah fm aks maka sinyal harus

di-sampling dengan frekuensi di-sampling paling sedikit dua kali frekuensi tertinggi sinyal analog tersebut, atau

(2.3)

Prinsip tersebut disebut sebagai kriteria Nyquist. Frekuensi fs = 2fm aks disebut

sebagai Nyquist rate. Sebagai contoh, jika frekuensi tertinggi sinyal analog adalah 4KHz maka frekuensi sampling harus setidaknya 8KHz[11].


(33)

(2.4)

2.6 Mikrokontroler ATmega 8

AVR Atmega 8 adalah mikrokontroler CMOS 8 bit berarsitektur RISC (Reduce Instruction Set Computer) yang memiliki 8K byte in-System Programmable Flash. Mikrokontroler dengan daya rendah ini mampu mengeksekusi instruksi dengan kecepatan maksimum 16MIPS pada frekuensi 16 MHz.

Berikut ini beberapa fitur yang dimiliki ATmega8 antara lain : 1. Kinerja tinggi dan rendah penggunaan daya.

2. Advance RISC Architecture. 3. EEPROM sebesar 512Bytes. 4. 1Kbyte internal SRAM.

5. Timer/Counter sebanyak 3 buah[11].

2.6.1 Konfigurasi pin ATmega 8

Gambar 2.7 Konfigurasi ATMega8[11]

ATmega 8 memiliki 28 pin, pin- pin berikut memiliki fungsi yang berbeda- beda, yaitu

1. VCC

Digital supply voltage. 2. GND

Ground.


(34)

Port B adalah 8 bit bit-directional I/O port dengan resistor pull-up internal. Sebagai

input pin – pin yang terdapat pada port B yang secara eksternal diturunkan maka akan mengeluarkan arus jika pull-up resistor diaktifkan. Bergantung pada clock

pemilihan seting fuse bit, PB 6 dapat digunakan sebagai input kristal (inverting oscillator amplifier) dan input ke rangkaian clock internal.PB7 dapat digunakan sebagai output kristal (inverting oscillator amplifier). PB6 dab PB7 dapat digunakan sebagai I/O atau jika menggunakan Asyncronous Timer/Counter 2 maka PB6 dan PB7 (TOSC2 dan TOSC1) digunakan untuk saluran input timer.

4. Port C (PC5..PC0)

Port C adalah 7 bit bi-directional I/O dengan resistor pull-up internal. Jumlah pin hanya 7 buah, mulai dari pin C.0 sampai C.6. Sebagai pin input, pin port C secara eksternal diturunkan maka akan mengeluarkan arus jika pull-up resistor diaktifkan. 5. PC6/RESET

Jika RSTDISBL Fuse diprogram, PC6 digunakan sebagai I/O pin. Karakeristik dari pin PC6 berbeda dari pin lainnya dalam port C. Jika RSTDISBL Fuse tidak diprogram, PC6 digunakan sebagai input reset. Dan jika tegangan yang masuk ke pin ini rendah dan pulsa yang ada lebih pendek dari pulsa minimum, maka akan menghasilkan kondisi reset.

6. Port D (PD7..PD0)

Port D adalah 8 bit bi-directional I / O port dengan resistor pull-up internal (dipilih untuk setiap bit). Sebagai input, pin port D secara eksternal diturunkan maka akan mengeluarkan arus jika pull-up resistor diaktifkan.

7. AVcc

AVcc adalah pin supply untuk ADC (Analog to Digital Converter). Pin ini harus dihubungkan secara terpisah ke Vcc, karena pin ini dihubungkan ketika ADC (Analog to Digital Converter) digunakan.

8. AREF

AREF adalah pin referensi analog untuk ADC (Analog to Digital Converter)[11].

2.6.2 Timer ATMega8

ATMega 8 memiliki 3 buah timer, yaitu timer 2 timer 8-bit ( Timer / Counter 0 dan


(35)

2.6.2.1 Timer / Counter 1

Timer / Counter 1 digunakan untuk program yang akurat eksekusi waktu, pembangkit gelombang dan pengukuran waktu sinyal[11]. Fitur utama Timer / Counter 1 pada ATMega8 adalah :

1. 16-bit desain (yaitu, memungkinkan 16-bit PWM). 2. Dua unit output pembanding bebas.

3. Sebagai pembangkit sinyal PWM. 4. Sebagai frekuensi generator.

5. Terdapat 4 sumber interupsi bebas ( TOV1, OCF1A, OCF1B dan ICF1).

2.6.2.2 Register Timer / Counter 1

Timer / Counter 1 Control Register A – TCCR1A Tabel 2.1 Register TCCR1A[11]

Bit 7:6 – COM1A1:0: Compare Output Mode for Channel A Bit 5:4 – COM1B1:0: Compare Output Mode for Channel B

COM1A1:0 dan COM1A1:0 mengontrol perilaku keluaran pin ( masing – masing dari OC1A dan OC1B).


(36)

Tabel 2.3 Mode Fast PWM[11]

Tabel 2.4 Mode Phase Correct dan Frequency Correct PWM[11]

Bit 3 – FOC1A: Force Output Compare for Channel A Bit 2 – FOC1B: Force Output Compare for Channel B

Bit FOC1A / FOC1B hanya aktif ketika WGM13:0. Ketika bit ini aktif maka akan menentukan pada mode non-PWM.

Bit 1:0 – WGM11:0: Waveform Generation Mode

Dikombinasikan dengan WGM13:12 bit ini mengendalikan perhitungan urutan

counter, sumber untuk nilai maksimum (TOP) nilai counter dan jenis pembangkit gelombang yang dipakai[11]. Penggunaan bit untuk mode operasi ini dapat dilihat pada tabel 2.5


(37)

Tabel 2.5 Mode Operasi [11]

Timer / Counter 1 Control Register B – TCCR1B 1. Bit 7 – ICNC1: Input Capture Noise Canceler

Pengaturan bit ini mengaktifkan Input Capture Noise Canceler. Ketika Input Capture Noise Canceler diaktifkan, maka masukkan dari Input Capture Pin (ICP1) disaring. Fungsi saring memerlukan 4 sampel yang sama pada masukkan pin ICP1 untuk dapat mengubah output.

2. Bit 6 – ICES1: Input Capture Edge Select

Bit ini memilih pemicu atau trigger pada Input Capture Pin (ICE1) yang digunakan untuk menangkap sebuah capture. Ketika ICE1 bit ditulis ke nol, maka tepi pada saat turun atau jatuh (negatif) yang digunakan sebagai pemicu (trigger) dan ketika ICE1 ditulis ke satu, maka tepi pada saat naik (positif) yang digunakan sebagai pemicu.

3. Bit 5 –Reserved Bit Bit ini tidak digunakkan.

4. Bit 4:3 – WGM13:12: Waveform Generation Mode

Lihat deskripsi register TCCR1A pada tabel mode operasi. 5. Bit 2:0 – CS12:10: Clock Select

WGM 13 WGM 12 (CTC1)

WGM 11 (PWM11)

WGM 10 (PWM 10)

Timer / Counter Mode of

Operation TOP Update of OCR1x

TOV1 Flag Set On

0 0 0 0 Normal 0xFFFF Immediate MAX 0 0 0 1 PWM, Phase Correct, 8-bit 0x00FF TOP BOTTOM 0 0 1 0 PWM, Phase Correct, 9-bit 0x01FF TOP BOTTOM 0 0 1 1 PWM, Phase Correct, 10-bit 0x03FF TOP BOTTOM 0 1 0 0 CTC OCR1A Immediate MAX

0 1 0 1 Fast PWM, 8-bit 0x00FF BOTTOM TOP

0 1 1 0 Fast PWM, 9-bit 0x01FF BOTTOM TOP

0 1 1 1 Fast PWM, 10-bit 0x03FF BOTTOM TOP

1 1 0 0 PWM, Phase and Frequency Correct ICR1 BOTTOM BOTTOM

1 1 0 1 PWM, Phase and Frequency Correct OCR1A BOTTOM BOTTOM

1 1 1 0 PWM, Phase Correct ICR1 TOP BOTTOM 1 1 1 1 PWM, Phase Correct OCR1A TOP BOTTOM

1 1 0 0 CTC ICR1 Immediate MAX

1 1 0 1 (Reserved) - -

-1 1 1 0 Fast PWM ICR1 BOTTOM TOP


(38)

Tiga bit ini digunakan untuk memilih sumber clock yang digunakan oleh Timer / Counter[11]. Bit – bit uang digunakan untuk memilih sumber clock ditunjukkan pada tabel 2.6.

Tabel 2.6 Sumber Clock Dengan Pemilihan bit[11]

2.6.2.3 Mode operasi Fast PWM

Mode fast PWM digunakan untuk mengendalikan lama t on dan t off pada register pembanding OCR1A atau OCR1B sehingga menghasilkan besarnya perubahan duty cycle.

Fast PWM ini berbeda dari pilihan PWM lain dengan operasi single – slope (satu arah), dengan menghitung counter dari BOTTOM ke TOP kemudian kembali ke BOTTOM. Besarnya BOTTOM bernilai 0x0000 dan besarnya TOP dapat ditentukan sesuai dengan resolusi fast PWM tetap yaitu 8 bit, 9bit dan 10 bit (dapat dilihat pada tabel 2.4) atau dapat ditentukan melalui register ICR1 atau OCR1A. Resolusi minimum yang dapat dilakukan adalah 2bit (ICR1 atau OCR1A diatur ke 0x0003) dan resolusi maksimum yang dapat dilakukan adalah 16 bit (ICR1 atau OCR1A diatur ke maksimum). Resolusi PWM dalam bentuk bit dapat dihitung dengan menggunakan persamaan berikut :

(2.5)

Diagram waktu untuk mode fast PWM ditunjukkan pada gambar 2.8. Pada gambar 2.8 menunjukkan ketika OCR1A atau ICR1 digunakan untuk mendefinisikan TOP pada mode fast PWM. Nilai TCNT1 dalam diagram waktu ditunjukkan sebagai histogram operasi single – slope (satu arah). Diagram termasuk gambar output non-inverving PWM dan inverting PWM. Tanda garis horizontal pendek pada TCNTn menunjukkan kondisi

compare match antara OCR1x denganTCNT1. Bit register TOV1 interrupt flag akan bernilai 1 jika terjadi compare match.


(39)

Gambar 2.8 Diagram Waktu Mode Fast PWM[11]

Dalam mode fast PWM terdapat 2 jenis dilihat dari bentuk gelombangnya, yaitu

non-inverting dan inverting. Fast PWM non-inverting dapat dikendalikan oleh lama waktu t on dan fast PWM inverting dapat dikendalikan oleh lama waktu t off. Frekuensi PWMuntuk output dapat dihitung dengan persamaan berikut :

(2.6)

N merupakan prescale pembagi (1, 8, 64, 256, atau 1204)[11].

2.6.3 USART (Universal Synchronous and Asynchronous Serial Receiver

and Transmitter)

Universal synchronous and asynchronous serial receiver and transmitter (USART) adalah perangkat komunikasi serial yang sangat fleksibel. Fitur utama adalah

1. Operasi full duplex (Serial bebas menerima dan mengirim register). 2. Operasi synchronous dan asynchronous.

3. Baud Rate generator dengan resolusi tinggi.

4. Mendukung serial frame dengan 5, 6, 7, 8 atau 9 DataBit dan 1 atau 2 BitStop. 5. Mode komunikasi multi-prosesor[11].

USART pengirim data buffer register dan USART penerima data buffer register berbagi alamat yang sama dengan I/O disebut sebagai USART Data Register atau UDR.

Transmit Data Buffer Register (TXB) akan menjadi tujuan untuk data ditulis ke UDR Register lokasi. Membaca UDR Register lokasi akan mengembalikan isi Receiver Data


(40)

Buffer Register (RXB). Transmitter buffer hanya dapat ditulis ketika UDRE flag pada UCSRA register diatur. Jika data ditulis ke UDR ketika UDRE flag tidak diatur, maka akan diabaikan oleh USART Transmitter. Ketika data ditulis ke Transmitter buffer dan

Transmitter diaktifkan, Transmitter akan memuat data ke dalam Transmitter Shift Register

ketika Shift Register kosong. Data dengan ukuran 5 bit, 6 bit dan 7 bit akan diabaikan oleh transmitter dan di atur dengan menambahkan logika 0 pada bit bagian atas hingga bernilai 8 bit[11].

Pengaturan mode synchronous dan asynchronous diatur pada UMSEL (USART

Select Mode). Pengaturan bit pada UMSEL ini dapat dilihat pada tabel 2.7. Tabel 2.7 Pengaturan Bit UMSEL[11]

Paritas dan StopBit diatur melalui bit UPM1:0 (Parity Mode) dan USBS ( Stop Bit Select). Pengaturan bit Parity Mode dan Stop Bit Select dapat dilihat pada tabel 2.8 dan 2.9.

Tabel 2.8 Pengaturan Bit Parity Mode[11]

Tabel 2.9 Pngaturan Bit Stop Bit Select[11]

Pengaturan ukuran karakter akan diatur melalui UCSZ2:0 (Character Size). Pengaturan bit ukuran karakter UCSZ dapat dilihat pada tabel 2.10.


(41)

Tabel 2.10 Bit Pengaturan Ukuran Karakter[11]

2.7 FT232RL

IC FT232RL merupakan IC USB ke serial Universal Asynchronous Receiver-Transmitter (UART) antarmuka. Beberapa karakteristik adalah sebagai berikut :

1. Chip tunggal USB untuk serial asynchronous serial data transfer interface. 2. Kecepatan transfer data dari 300 baud sampai 3 Mbaud (RS422, RS485, RS232)

dalam level TTL.

3. Dukungan interface UART untuk 7 atau 8 bit data, 1 atau 2 bit stop dan odd / even

/ mark / space / no parity.

4. Single supply operation dengan 3.3 V ( menggunakan osilator eksternal) sampai 5.25 V ( menggunakan osilator internal).

5. Konfigurasi CBUS I/O pin.

6. Rentang suhu operasi dari -40oC sampai 85oC[12].


(42)

2.8 Pulse Width Modulation (PWM)

Pulse Width Modulation (PWM) bekerja dengan cara membuat gelombang persegi yang memiliki perbandingan pulsa high terhadap pulsa low yang telah tertentu, biasanya skala 0 hingga 100%. Perbandingan pulsa high terhadap low ini dikenal dengan nama gelombang kotak atau duty cycle seperti pada gambar berikut

Gambar 2.10 Gelombang kotak[13]

Dengan memperhatikan gambar gelombang kotak dengan ymaks dan ymin, maka nilai rata – rata dari gelombang kotak tersebut dapat dituliskan pada persamaan

̅ ∫ (2.7) Jika f(t) adalah gelombang kotak, maka nilai y maks dari 0 < t < D.T dan nilai y min dari D.T < t < T, dari pernyataan diatas di dapat :

̅ ∫ ∫ (2.8)

̅ (2.9)

̅ (2.10) Bila y min = 0, maka persamaan menjadi

̅ (2.11) Sehingga dari persamaan 2.11 maka nilai ̅ tergantung pada duty cycle. Duty cycle

merupakan prosentase keadaan logika high (pulse) dalam satu periode sinyal. Satu siklus diawali oleh transisi low to high dari sinyal dan berakhir pada transisi berikutnya[13].


(43)

Gambar 2.11 Gambar Pulsa PWM[13]

2.9 Discrete Cosine Transform (DCT)

Definisi DCT yang paling umum dengan panjang N adalah

(2.12)

Untuk u = 0,1,2,…,N-1. Demikian pula, transformasi balik didefinisikan sebagai

(2.13)

Untuk x = 0,1,2,…,N-1. Dalam kedua persamaan 1 dan 2 α(u) didefinisikan sebagai

{

√ √

(2.14)

Hal ini dijelaskan dari persamaan 2.1 bahwa untuk u = 0,

√ ∑

.

Mengabaikan komponen f(x) dan α(u) dalama komponen persamaan 1. Plot dari

untuk N = 8[14]. Berbagai nilai – nilai u ditunjukkan pada gambar 2.12.


(44)

Gambar 2.12 Fungsi Dasar Kosinus Satu Dimensi[14]

2.10 Jarak Euclidean

Jarak Euclidean digunakan untuk klasifikasi atau identifikasi suatu vektor ciri yang dimasukkan dengan ciri pada basis data yang ada. Jarak Euclidean ditentukan dengan rumus sebagai berikut :

⃑ ‖ ⃑⃑⃑⃑⃑⃑⃑⃑⃑⃑⃑ ‖ √ (2.15) Dengan :

⃑ = Jarak Euclidean

⃑ = Vektor ciri masukkan

= Vektor ciri basis data

n = Jumlah elemen vektor ciri

Pengenalan diperoleh dengan menghitung jarak terdekat, yaitu nilai jarak Euclidean yang paling kecil[15].

2.11 Windowing

Windowing adalah proses mengalikan sinyal data dengan fungsi yang mereduksi pada kedua tepi sehingga memperhalus bentuk gelombang. Ada beberapa macam fungsi


(45)

windowing yaitu Hanning, Blackman, Hamming, Bartlett-Hann, Gaussian, Flat Top[16].

Windowing diperlukan untuk mengurangi efek diskontinuitas dari potongan – potongan sinyal[17].

2.11.1 Jendela Hanning

Jendela Hanning adalah suatu jendela yang dapat digunakan untuk keperluan

windowing. Berikut merupakan persamaan dari jendela Hanning :

(2.16) Dengan :

Panjang jendela = N-1 ; ketika N dimulai dari 0.

2.12Template 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 menentukan 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 dicocokan terhadap template

yang telah tersimpan. Kesamaan ukuran dapat di optimalkan berdasarkan template

tersedia[22].

2.13 Transistor Sebagai Saklar

Pada keadaan aktif, transistor dapat berfungsi sebagai penguat arus dan pada keadaan saturasi dan cut-off, transistor dapat berfungsi sebagai saklar [20]. Ketika transistor berada dalam keadaan saturasi, transistor berfungsi sebagai saklar yang tertutup. Pada saat transistor dalam keadaan cut-off, transistor berfungsi sebagai saklar terbuka. Rangkaian transistor sebagai saklar dapat dilihat pada Gambar 2.13. Besarnya arus pada basis dapat diperoleh dengan perhitungan :

(2.17)

Beta DC (β) dalam sebuah transistor merupakan rasio arus kolektor atau dangan arus basis diperoleh dengan persamaan :

(2.18)


(46)

(2.19)

Arus IC saturasi (ICsat) adalah arus kolektor ketika nilai VCE = 0, sehingga nilai ICsat dapat diperoleh dengan persamaan:

(2.20)

Gambar 2.13 Rangkaian Transistor Sebagai Saklar[20]

2.14 Brushless Motor DC (BLDC)

Penukaran arus listrik bergantung pada umpan balik pada posisi rotor untuk memutuskan kapan untuk memberikan energi switch yang sesuai untuk menghasilkan torsi terbesar. Cara termudah dengan secara akurat mendeteksi posisi adalah dengan menggunakan sensor posisi. Perangkat sensor yang paling populer adalah Hall sensor. Kebanyakan BLDC motor memiliki Hall sensor yang tertanam dalam stator pada bagian motor yang tidak bergerak.

Gambar 2.14 menunjukan urutan pergantian fase tunggal sirkuit pengendali BLDB motor. Magnet permanen dari rotor dan terletak di dalam stator. Posisi Hall sensor (“a”) dipasang keluar stator, yang menginduksi tegangan output sebanding dengan intensitas magnetik. (mengasumsikan sensor berlogika tinggi ketika rotor kutub utara lewat dan berlogika rendah ketika rotor kutub selatan lewat). SW1 dan SW4 menyala saat output Hall sensor berlogika tinggi seperti yang ditunjukan gambar 2.14 (a) dan (b). Pada tahap ini, arus dinamo melalui kumparan stator dari OUT1 ke OUT2 dan menginduksi alternator kutub elektromagnetik stator yang sesuai. Gaya magnet yang dihasilkan oleh medan magnet rotor


(47)

dan medan elektromagnetik stator menyebabkan rotor berputar. Setelah sinyal rotor mencapat 180o, tegangan output Hall sensor terbalik terbalik karena kedekatannya dengan kutub selatan. SW2 dan SW3 kemudian di hidupkan denagn arus pembalikan dari OUT2 dan OUT1. Seperti yang ditunjukan pada gambar 11 (c) dan (d) kutub magnet stator berlawanan menginduksi rotor untuk terus berputar kearah yang sama.


(48)

27

BAB III

PERANCANGAN

3.1 Perancangan Sistem

Perancangan sistem pengenalan ucapan untuk pengaturan kipas DC ini pada dasarnya memiliki diagram blok yang digambarkan pada gambar 3.1.

Gambar 3.1. Gambaran Umum Sistem

Sistem pengenalan ucapan untuk pengaturan kipas DC dibuat untuk mengenali ucapan untuk menggerakkan kipas DC. Sistem ini memiliki 2 subsistem, yaitu bagian pengenalan ucapan dan bagian pengaturan kipas DC. Bagian pengenalan ucapan terdiri dari ucapan yang ditangkap oleh mikrofon. Ucapan kemudian akan direkam oleh sound card dalam laptop. Pengenalan ucapan akan diproses oleh Matlab. Sedangkan bagian pengaturan kipas DC terdiri dari mikrokontroler untuk menerima input data pengenalan ucapan dan mengolah data tersebut untuk mengatur kecepatan kipas DC sesuai dengan input yang diterima. Penghubung antara bagian pengenalan ucapan dan bagian pengaturan kipas DC dengan komunikasi secara serial menggunakan modul FT232.


(49)

1. Ucapan

Ucapan merupakan input untuk pengenalan ucapan pengaturan kipas DC. Ucapan hanya menggunakan hanya satu user yaitu ucapan peneliti itu sendiri. Ucapan yang digunakan untuk mengatur kipas DC adalah hidup, mati, cepat dan lambat.

2. Mikrofon

Mikrofon merupakan piranti untuk memasukkan input ucapan. Microfon yang digunakan adalah Mini Multimedia Microphone Genius MIC-01A dapat dilihat spesifikasi microfon pada tabel 3.1.

Tabel 3.1. Spesifikasi Mikrofon Genius MIC-01A[5]

Frequency Response 100Hz ~ 10KHz

Sensitivity -62dB

Output Impedance 2.2Kohm

Cable length 3.0 meters

Audio Output Connector 3.5mm Stereo Audio Plug

Microfon genus ini memiliki jarak terhadap sumber suara ±10 cm. Jarak ini didapat dari pengujian dari berbagai jarak. Jika jarak melebihi 10 cm maka hasil pada percobaan memperlihatkan adanya noise yang ditangkap oleh microfon

3. Sound Card

Sound Card berfungsi mengubah sinyal analog yang berasal dari ucapan yang ditangkap oleh microfon menjadi sinyal digital sehingga dapat diproses oleh Matlab. Sound Card yang digunakan adalah sound card yang sudah ternaman pada

motherboard (onboard sound card). 4. Matlab

Proses pengolahan suara menggunakan software Matlab. Program yang dibuat Software Matlab adalah program pembentukan database, program pengenalan ucapan dan program komunikasi dan pengiriman data.

5. FT232 Modul

Modul FT232 berfungsi untuk komunikasi data secara serial. Modul ini mengirimkan data pengenalan ucapan dari laptop yang diolah dalam software


(50)

6. Mikrokontroler ATmega8

Mikrokontroler ATmega8 digunakan untuk menerima data serial pengolahan pengenalan ucapan dan mengolah data serial untuk mengatur kecepatan kipas DC dengan mengatur PWM pada mikrokontroler.

7. Transistor sebagai saklar

Transistor sebagai saklar berguna untuk menghidupkan dan mematikan kipas DC dan mengendalikan kecepatan kipas DC dengan menyaklar output PWM pada mikrokontroler.

8. Kipas DC

Kipas DC merupakan akuator dari sistem pengenalan ucapan untuk pengaturan kipas DC. Pengaturan kipas DC ini berputar sesuai kecepatannya dengan input pengucapan yang diberikan oleh user. Kipas DC yang diunakan dapat dilihat pada tabel 3.2.

Tabel 3.2 Spesifikasi Kipas DC DC Voltage 12 Volt DC Current 0.2 Ampere

Dimensi 120 x 120 x 25 mm

3.2 Perancangan Pengenalan Ucapan

Proses pengenalan ucapan terdiri dari dua bagian, bagian perancangan software dan

hardware. Pada perancangan bagian software, proses pengenalan ucapan hampir sama dengan proses pembentukan database, perbedaannya terletak pada proses pengenalan ucapan membandingkan dengan database yang telah dibentuk sebelumnya pada prose pembentukkan database. Proses pembandingan antara pengenalan ucapan dengan database akan digunakan untuk penentuan pengenalan keluaran ucapan yang akan diolah kemudian dalam perancangan hardware. Perancangan software ini meliputi proses sampling, pre-processing, ekstraksi ciri dan pembandingan antara pengenalan dengan ucapan. Sedangkan perancangan hardware meliputi proses pengiriman data secara serial dengan modul serial FT232, mikrokontroler sebagai pengolahan data yang diterima untuk mengatur kecepatan kipas DC dan driver yang berfungsi untuk menggerakkan akuator berupa kipas DC. Perancangan software dan hardware dapat dilihat pada gambar 3.2.


(51)

Gambar 3.2. Diagram Blok Proses Pengenalan Ucapan

3.2.1 Perancangan Software

3.2.1.1 Proses pengenalan ucapan

Proses pengenalan ucapan merupakan ucapan manusia sebagai input pengenalan yang direkam akan dikenali ucapannya. Proses ini terdiri dari sampling, pre-processing, ekstraksi ciri, database, fungsi jarak (pembanding), penentuan keluaran dan pengiriman data secara serial. Proses pengenalan ucapan dapat dilihat pada gambar 3.3.


(52)

1. Sampling

Proses sampling merupakan proses pencuplikan ucapan manusia. Pencuplikan ucapan manusia dipengaruhi oleh frekuensi sampling dan banyaknya waktu pencuplikan. Ucapan manusia memiliki rentang frekuensi 250 – 3000 Herzt[18]. Frekuensi ucapan manusia tertinggi 3000 Hertz, agar dapat tercuplik dengan baik maka, frekuensi sampling ucapan sebesar 6000 Hertz. Frekuensi sampling dapat dirumuskan dengan aturan Nyquist sebagai berikut :

(3.1)

(3.2)

Banyaknya waktu pencuplikan dapa proses sampling ditentukan sebesar 1.5 detik. Rentang waktu ini digunakan untuk lamanya proses perekaman. Dengan waktu tersebut cukup untuk melakukan proses perekaman, sehingga data sinyal ucapan yang disampling tidak terpotong. Proses pencuplikan ucapan dapat dilihat pada gambar 3.4.

Gambar 3.4 Flowchart Proses Pencuplikan Ucapan

Panjang pencuplikan merupakan banyaknya jumlah data sinyal ucapan yang tercuplik selama rentang waktu pencuplikan . Panjang pencuplikan ini diperoleh sebagai berikut:


(53)

(3.4)

(3.5)

2. Pre-processing

Pre-processing merupakan proses pengkondisi sinyal data ucapan pengenalan maupun database. Proses pre-processing ini meliputi proses normalisasi, pemotongan sinyal, windowing dan zero padding. Proses pre-processing ini dapat dilihat pada gambar 3.5.

Gambar 3.5 Flowchart Proses Pre-processing

a. Normalisasi

Proses normalisasi berfungsi untuk menyetarakan besar amplitudo data ucapan pengenalan ucapan maupun database, sehingga efek dari kuat lemahnya suara pengucapan tidak terlalu mempengaruhi pada proses pengenalan. Besar amplitudo maksimum ini bernilai 1 atau -1 dan amlipitudo yang lain menyesuaikan skala tersebut. Proses normalisasi ditunjukkan pada gambar 3.6.


(54)

Gambar 3.6 Flowchart Proses Normalisasi

Pada proses normalisasi hasil pencuplikan ucapan akan akan disamakan nilai amplitudo dengan skala maksimum amplitudo maksimum 1 atau -1 menggunakan rumus normalisasi sebagai berikut :

( ) (3.6)

b. Pemotongan sinyal

Proses pemotongan sinyal ini untuk menghilangkan atau memotong sinyal yang bukan merupakan data ucapan. Tujuan dari proses ini untuk mendapatkan data ucapan yang diperlukan. Proses pemotongan sinyal memiliki variabel batas potong yang bertujuan untuk membatasi data sinyal ucapan yang akan dipotong. Pemotongan sinyal ini terdiri dari dua tahap, yaitu pemotongan sinyal sebelah kiri dan sebelah kanan. Proses pemotongan sinyal ditujukkan pada gambar 3.7.


(55)

Gambar 3.7 Flowchart Proses Pemotongan Sinyal

Hasil normalisasi akan masuk dalam proses pemotongan sinyal. Proses pertama diakukan adalah memotong sinyal pada sebelah kiri. Setelah memotong sinyal pada sebelah kiri, proses berikutnya memotong sinyal pada sebelah kanan. Kedua proses pemotongan sinyal ini ditentukan oleh variabel batas potong dengan batas potong 0,1; 0,2; 0,3 dan 0,4.

c. Windowing

Proses windowing merupakan proses perkalian antar elemen.

Windowing ini berfungsi untuk mengurangi efek diskontiunitas dari data sinyal dari hasil perekaman. Dalam perancangan ini jenis windowing yang digunakan adalah Hanning window. Proses windowing ditunjukkan pada gambar 3.8.


(56)

d. Zero padding

Zero padding adalah proses yang digunakan untuk menyamakan panjang data sinyal setelah proses pemotongan sinyal. Pada proses pemotongan sinyal, banyak terjadi perbedaan panjang sinyal data, sehingga proses zero padding menambah jumlah data sinyal dengan nilai 0 sesuai dengan panjang yang ditentukan. Panjang ukuran sinyal ditentukan oleh bilangan 2n . Proses zero padding ditunjukkan pada gambar 3.9.

Gambar 3.9 Flowchart Proses Zero Padding

Proses zero padding merupakan proses akhir dari proses pre-processing. Jika panjang sinyal data diperoleh 1641 data, maka panjang ukuran sinyal data untuk sinyal data tersebut adalah 211 atau 2048 data. Setelah data ke 1641 akan bernilai 0 sampai data ke 2048.

3. Ekstraksi ciri

Proses ekstraksi ciri terdiri dari proses downsampling dan transformasi. Proses downsampling bertujuan untuk mencuplik data sinyal ucapan menjadi lebih sedikit. Banyaknya data yang dicuplik dalam proses ekstraksi ciri ditentukan oleh nilai faktor downsampling. Variabel nilai faktor downsampling ditentukan 1 , 2 dan 4.

Data sinyal ucapan pertama sampai dengan data sinyal terakhir akan dicuplik sebesar nilai faktor downsampling yang telah ditetukan. Setelah data sinyal ucapan tercuplik dalam proses downsampling, proses selanjutnya adalah proses transformas, transformasi yang digunakan adalah transformasi DCT ( Discrete Cosine transform). Flowchart ekstraksi ciri ditunjukkan pada gambar 3.10.


(57)

Gambar 3.10 Flowchart Proses Ekstraksi Ciri 4. Pembanding

Proses pembanding ini untuk menghitung jarak data sinyal ucapan pada pengenalan dan database ucapan. Proses pembanding ini menggunakan perhitungan jarak dengan fungsi jarak Euclidean. Proses pembanding ini digunakan sebagai penentu hasil pengenalan ucapan. Hasil keluaran ini adalah nilai minimum dari proses pembanding pada data pengenalan dan database. Proses pembanding ini ditunjukan pada gambar 3.11.


(58)

Gambar 3.11 Flowchart Proses Pembandingan 5. Penentuan keluaran

Pada proses penentuan keluaran ini hasil pengenalan ucapan ditentukan oleh jarak yang paling minimum yang diperoleh dari nilai jarak minimum dalam proses pembandingan. Hasil jarak minimum pengenalan ucapan akan ditampilkan dalam bentuk teks. Proses penentuan keluaran ditunjukkan pada gambar 3.12.


(59)

6. Pengiriman data secara serial

Proses pengiriman data secara serial ini merupakan proses terakhir pada

software Matlab. Proses ini berfungsi untuk mengirimkan hasil keluaran ditentukan pada proses penentuan keluaran. Data berupa teks yang ditampilkan keluaran akan di coding dalam bentuk karakter angka. Jika keluaran teks menampilkan ucapan berikut :

a. Hidup maka akan di coding dengan karakter “1”

b. Mati maka akan di codingdengan karakter “2”

c. Cepat maka akan di codingdengan karakter “3”

d. Lambat maka akan di coding dengan karakter “4”

Proses pengiriman data secara serial pada matlab ditunjukkan pada gambar 3.13.


(60)

3.2.1.2 Database Ucapan

Sebagai pengenalan ucapan untuk pengaturan kecepatan kipas DC dibutuhkan database ucapan yang digunakan sebagai pembanding dengan proses pengenalan ucapan. Proses pengambilan sampel yang dibutuhkan sebagai database merupakan ucapan manusia dengan ucapan yang telah ditentukan, yaitu ucapan hidup, mati, cepat dan lambat. Proses pengambilan database ucapan dapat dilihat pada gambar 3.14.

Gambar 3.14 Flowchart Pembentukan Database Ucapan

Proses pembentukan database ucapan melalui memberikan masukan ucapan manusia, sampling, pre-processing, ekstraksi ciri dan keluaran database ucapan. Dalam penelitian ini, terdapat 40 database ucapan, yang terdiri dari masing- masing 10 database hidup, mati, cepat dan lambat. Variasi masukkan nilai variabel batas potong berjumlah 4 dan downsampling berjumlah 3. Variasi variabel yang dilakukan akan diperoleh 12 set dari

database.

3.2.2 Perancangan Hardware

3.2.2.1 Modul Serial FT232

Modul serial FT232 ini menghubungkan agar dapat melakukan komunikasi serial antara laptop dengan mikrokontroler ATMega8. Komunikasi serial ini digunakan mengirim data pengenalan ucapan pada laptop. Komunikasi serial ini menggunakan komunikasi satu arah dari laptop menuju mikrokontoler ATMega8. Laptop terhubung


(61)

modul serial FT232 dengan menggunakan kabel (Lihat gambar 3.1) dan pin modul serial FT232 akan terhubung dengan pin komunikasi serial pada mikrokontroler.

Pin Vcc dan pin ground pada modul serial FT232 akan terhubung ke pin Vcc dan pin ground pada mikrokontroler, yang akan digunakan sebagai supply pada mikrokontroler ATMega8. Pin Tx pada modul serial FT232 terhubung dengan pin Rx pada mikrokontroler dan pin Rx pada modul serial FT232 terhubung dengan pin Tx pada mikrokontroler.

3.2.2.2 Minimum Sistem ATMega 8

Rangkaian minimum sistem memiliki fungsi sebagai menerima data serial dan mengatur I/O yang digunakan sebagai pengolahan data. Hasil pada proses penganalan di kirim dengan menggunakan komunikasi serial modul serial FT232. Data yang telah dikirim melalui komunikasi serial akan diproses untuk mengatur kecepatan putar kipas DC. Gambar rangkaian minimum sistem ATMega8 ditunjukkan pada gambar 3.15.

Gambar 3.15 Rangkaian Minimum Sistem ATMega8

Perancangan minimum site mini menggunakan rangkaian osilator eksternal. Rangkaian osilator eksternal menggunakan Kristal 12 MHz dan kapasitor 22 pF pada

datasheet yang terhubung dengan dengan pin XTAL1 dan XTAL2 pada mikrokontroler. Rangkaian osilator ditunjukkan pada gambar 3.16.


(62)

Gambar 3.16 Rangkaian Osilator Eksternal

Rangkaian reset juga dibutuhkan dalam rangkaian minimum sistem. Rangkaian reset berfungsi untuk mengulang kembali ke awal proses kerja mikrokontroler. Rangkaian reset ini terhubung dengan pin reset pada mikrokontroler. Pin reset mikrokontroler ATMega8 akan aktif jika diberi input logika rendah. Jika push button ditekan maka akan memberikan logika aktif rendah sehingga, mikrokontroler akan mengulang proses kerja program dari awal. Rangkaian reset ditunjukkan pada gambar 3.17.


(63)

3.2.2.3 Motor Driver

Motor driver digunakan untuk menggerakkan dan mengatur kecepatan kipas DC. Motor driver menggunakan rangkaian transistor yang difungsikan sebagai saklar yang mengatur kecepatan kipas DC berdasarkan output PWM mikrokontroler pada pin PB1. Pin PB1 ini akan memberikan teganagn PWM pada transistor. Tegangan PWM digunakan untuk pensaklaran pada transistor. Rangkaian motor driver ini ditunjukkan pada gambar 3.18.

Gambar 3.18 Rangkaian Motor Driver

Pada perancangan perangkat keras rangkaian motor driver sumber tegangan Kipas DC 12 Volt yang digunakan untuk memberikan tegangan supply pada beban kipas DC.Kondisi transistor switching ini dibuat menjadi kondisi cut off dan saturasi. Diketahui ICsat = 200 mA (didapat dari arus kipas DC) dan nilai β = 40 maka resistansi pada kaki basis sebagai berikut :

(3.7)

Keluaran dari nilai PWM dari mikrokontroler maksimal 5 Volt sehingga maksimum adalah sebagai berikut :


(64)

(3.8)

Nilai adalah 940Ω, tetapi nilai ini tidak terdapat di pasaran sehingga ditentukan nilai yang mendekati nilai dari perhitungan dan terdapat dipasaran sehingga . Dioda yang digunakan sebagai rangkaian freewheeling.

3.2.2.4 Kipas DC

Kipas DC merupakan akuator dari sistem pengenalan ucapan untuk pengaturan kecepatan kipas DC. Kipas DC ini memiliki dua port, yaitu port Vcc dan ground. Port Vcc kipas DC terhubung ke tegangan supply 12 Volt dan port ground kipas DC terhubung ke kaki kolektor pada transistor. Variasi putaran kecepatan kipas DC diatur dengan variasi nilai PWM yang di berikan pada mikrokontroler.

3.2.2.5 Perancangan software pada mikrokontroler

Perancangan software pada mikrokontroler merupakan program untuk mengatur kecepatan putar kipas DC. Program mikrokontroler ini akan menerima data serial dari hasil pengenalan pada laptop dan mengolah data yang dikirimkan tersebut sampai mengatur kecepatan putar kipas DC. Flowchart software pada mikrokontroler ditunjukkan pada gambar 3.19.

Flowchart software melalui proses inisialisasi USART mikrokontroler dan inisialisasi variabel A dan B sebagai pengaturan putaran kecepatan kipas DC. Keterangan variabel A dan B dalam pengaturan kipas DC ditunjukkan pada tabel 3.3.

Pada pengukuran nilai Pulse Width Modulation (PWM) sebagai tingkat kecepatan putar kipas DC dapat dilihat pada tabel 3.4 dan penentuan nilai Pulse Width Modulation

(PWM) sebagai tingkat kecepatan putar kipas DC dapat dilihat pada tabel 3.5.Kondisi keadaan tingkat kecepatan putar kipas DC ditunjukkan pada tabel 3.3. Tabel kondisi keadaan ini menunjukkan kondisi awal tingkat kecepatan putar kipas DC dan kondisi selanjutnya tingkat kecepatan putar kipas DC yang diinginkan oleh user. Data yang diterima mikrokontroler berupa data ASCII dari karakter angka dikirim dari proses pengenalan.. Data ASCII yang dikirim berupa karakter 1, 2, 3 dan 4 akan diterima mikrokontroler berupa data 31h, 32h, 33h dan 34h.


(65)

Tabel 3.3 Kondisi Keadaan Tingkat Kecepatan Putar Kipas DC

Tabel 3.4 Pengukuran Nilai Pulse Width Modulation (PWM) Sebagai Tingkat Kecepatan Putar Kipas DC

NO Kecepatan (RPM)

Tegangan (V)

Duty Cycle

(%) PWM

1 0 0 0 0

2 126,9 1,154 23,08 236,108

3 223,6 1,681 33,62 343,932

4 348,5 2,04 40,8 417,384

5 456,1 2,675 53,5 547,305

6 531,5 3,574 71,48 731,24

7 634 4,54 90,8 928,884

8 755 4,98 99,6 1018,908

Tabel 3.5 Penentuan Nilai Pulse Width Modulation (PWM) Sebagai Tingkat Kecepatan Putar Kipas DC

NO Duty Cycle

(%) PWM

Kecepatan (RPM)

1 0 0 0

2 23,08 236 126,9

3 40,8 417 384,5

4 71,45 731 531

5 99,6 1019 755

Mati Hidup Cepat Lambat 1 Level 0 Level 0 Level 4 Level 1 Level 0 2 Level 1 Level 0 Level 4 Level 2 Level 0 3 Level 2 Level 0 Level 4 Level 3 Level 1 4 Level 3 Level 0 Level 4 Level 4 Level 2 5 Level 4 Level 0 Level 4 Level 4 Level 3

Keadaan sekarang


(66)

(67)

3.2.3 Desain Alat

Gambar bentuk desain alat ditunjukkan pada gambar tiga gambar, yaitu gambar tampak depan, tampak samping dan tampak belakang. Tampak depan ditunjukkan pada gambar 3.20 sedangkan gambar tampak samping dan tampak belakang ditunjukkan pada gambar 3.21 dan gambar 3.22.


(68)

Gambar 3.21 Tampilan Desain Alat Tampak Samping


(69)

3.3 Perancangan Tampilan GUI Matlab

Tampilan GUI dibuat agar pengguna dapat dengan mudah mengoperasikan program pengenalan ucapan untuk pengaturan kipas DC ini. Program tampilan GUI Matlab ini menampilkan plot hasil perekaman, plot hasil pre-processing, plot hasil ekstraksi ciri DCT dan teks ucapan yang dikenali. Program ini memberikan variabel bebas batas potong dan downsampling yang dapat dimasukkan oleh user. Tampilan program GUI Matlab yang yang digunakan dalam penelitian ini ditunjukkan pada gambar 3.23.

Gambar 3.23 Tampilan GUI Matlab Pengenalan Ucapan Untuk Pengaturan Kipas DC Beberapa keterangan dari tampilan GUI Matlab pengenalan ucapan untuk pengaturan kipas DC ditunjukkan pada tabel 3.6.


(70)

Tabel 3.6 Keterangan Tampilan GUI Matlab

Nama Bagian Keterangan

Tombol Rekam Tombol ini digunakan untuk mengambil data ucapan yang ingin direkam oleh user.

Tombol Selesai Tombol selesai digunakan untuk mengakhiri dan keluar dari program aplikasi pengenalan ucapan.

Ucapan yang dikenali

Digunakan untuk menampilkan data ucapan yang dikenali setelah proses pengenalan dalam bentuk teks.

Data yang dikirim

Digunakan Untuk menamplkan data yang kana dikirim untuk mikrokontroler setelah pengenalan dalam bentuk teks.

Variabel batas potong

Digunakan untuk memilih nilai batas potong dalam proses pengenalan ucapan. Variabel batas potong yang digunakan adalah 0,1; 0,2; 0,3 dan 0,4.

Variabel Downsampling

Digunakan untuk memilih nilai downsampling dalam proses pengenalan ucapan. Variabel downsampling yang digunakan adalah 1, 2 dan 4.

Plot hasil perekaman Digunakan untuk menampilkan grafik data hasil perekaman.

Plot hasil pre-processing Digunakan untuk menampilkan grafik data hasil pre-processing.

Plot hasil Ekstraksi DCT Digunakan untuk menampilkan grafik data hasil ekstraksi DCT.


(1)

TIMSK=0x00;

// USART initialization

// Communication Parameters: 8 Data, 1 Stop, No Parity // USART Receiver: On

// USART Transmitter: On // USART Mode: Asynchronous

// USART Baud Rate: 9600 (Double Speed Mode) UCSRA=0x02;

UCSRB=0xD8; UCSRC=0x86; UBRRH=0x00; UBRRL=0x0C;

// Analog Comparator initialization // Analog Comparator: Off

// Analog Comparator Input Capture by Timer/Counter 1: Off ACSR=0x80;

SFIOR=0x00;

// ADC initialization

// ADC Clock frequency: 500.000 kHz // ADC Voltage Reference: AVCC pin ADMUX=ADC_VREF_TYPE & 0xff;

ADCSRA=0x81;

// SPI initialization // SPI disabled

SPCR=0x00;

// TWI initialization // TWI disabled

TWCR=0x00;

// Global enable interrupts #asm("sei")

while (1) {

terima=getchar(); if ( terima == 0x31) {

b=4;


(2)

}

if ( terima == 0x32) {

b=0;

PORTB.2=0; }

if ( terima == 0x33) {

switch(b){ case 0 : OCR1B=236; b=b+1; break; case 1 : OCR1B=417; b=b+1; break; case 2 : OCR1B=731; b=b+1; break; case 3 : OCR1B=1019; b=b+1; break; }

}

if ( terima == 0x34) {

switch(b){

case 4 : OCR1B=731; b=b-1; break; case 3 : OCR1B=417; b=b-1;


(3)

break; case 2 : OCR1B=236; b=b-1; break;

case 1 : PORTB.2=0; b=b-1; break;

} }

} }


(4)

Hasil Perbandingan Rata

Rata Ekstraksi Ciri Pada

Ucapan Yang Telah Disimpan Dalam Databse Dengan

Setiap Ucapan Pengenalan Menggunakan Tiga Pengguna


(5)

(6)