PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI TUGAS AKHIR APLIKASI PENGENALAN UCAPAN DENGAN EKSTRAKSI CIRI DCT DAN FUNGSI JARAK DIVERGENSI UNTUK MENGATUR KECEPATAN KIPAS ANGIN AC
Diajukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program Studi Teknik Elektro
Oleh:
HENRY JUAN NDOLU NIM : 105114016
PROGRAM STUDI TEKNIK ELEKTRO JURUSAN TEKNIK ELEKTRO FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS SANATA DHARMA YOGYAKARTA 2015 i
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI FINAL PROJECT APPLICATION OF SPEECH RECOGNITION USING DCT FEATURE EXTRACTION AND DIVERGENCE DISTANCE FUNCTION FOR SPEED CONTROLLING OF AC FAN Presented as Partial Fulfillment of the Requirements To Obtain the Sarjana Teknik Degree In Electrical Engineering Study Program
HENRY JUAN DOLU NIM : 105114016
ELECTRICAL ENGINEERING STUDY PROGRAM DEPARTMENT OF ELECTRICAL ENGINEERING FACULTY OF SCIENCE AND TECHNOLOGY SANATA DHARMA UNIVERSITY YOGYAKARTA 2015 ii
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
HALAMAN PERSEMBAHAN DAN MOTTO HIDUP
Skripsi ini saya persembahkan untuk:
Tuhan Yesus yang telah setia menjaga , menyertai dan melindungi saya dalam situasi dan kondisi apapun
Bapak,Mama,Nita,Esti,Ariesto dan semua keluarga yang selalu mendoakan, menasehati, mendukung, menyemangati dan menasehati tanpa henti
Elektro ’10, teman seperjuangan yang selalu mendukung dan menyemangati
Teman, di jogja, Komisi Pemuda dan Mutimedia GKI Gejayan, spesial dan dimanapun beraada yang selalu memberi doa dan semangat
Dan Semua pihak yang mendukung
MOTTO : “Tuhan menetapkan langkah-langkah orang yang hidupnya berkenan kepada-Nya; apabila ia jatuh, tidaklah sampai tergeletak, sebab TUHAN menopang tangannya” (Mazmur 37 : 23 – 24)
vi
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
INTISARI
Penelitian ini menghasilkan sebuah aplikasi pengaturan kecepatan kipas AC dengan menggunakan ucapan untuk mengatur kecepatan putaran kipas angin AC. Penelitian ini membantu manusia agar dapat dengan mudah menghidupkan kipas dan mengatur kecepatan kipas angin dengan ucapan. Ucapan “hidup”, “lambat”, “cepat” dan “mati” digunakan untuk mengatur keadaan putaran kipas angin AC. Proses pengenalan ucapan dimulai dari perekaman pengenalan ucapan, Pre-processing (normalisasi, pemotongan sinyal, windowing dan zero padding), ekstraksi ciri, fungsi jarak divergensi, penentuan keluaran menggunakan metode k-Nearest Neighbor dan data hasil pengenalan ucapan dikirim secara serial ke hardware. Sistem yang dijalankan pada hardware melalui beberapa proses yaitu modul K 125 R, , ATMega 8535, Penguat Arus, rangkaian penggerak kipas, ATMega 8535. Proses tersebut merupakan sistem kendali utama di hardware untuk menggerakan kipas angin AC. Hasil pengenalan dan pengujian ucapan secara tidak real time dengan menggunakan batas potong 0,2, segment averaging 128 dan k-nearest neighbor 7 menghasilkan tingkat pengenalan terbaik yaitu 81,6 %. Dari data pengujian tidak real time dapat dilakukan pengambilan data secara real time dengan hasil pengenalan ucapan user mencapai 85,8 %. Hasil pengenalan ucapan tersebut menghasilkan putaran kipas dari 43,6 rpm – 2275,1 rpm. Kata kunci : Ekstraksi ciri DCT, jarak divergensi, segment averaging, k-nearest neighbor, pengenalan ucapan, kipas AC
viii
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
ABSTRACT This research is to produce an application speed controling of AC fan by using speech to set the pace lap AC fan. This study help a man so as to be easily switch on a fan and set the pace a fan with utterance Speech of “hidup”, “lambat”, “cepat”, and “mati” used to speed controling of AC fan. The process of the introduction of speech starts from recording the introduction of speech , pre-processing (normalization, cutting a signal, windowing and zero padding), the features extraction, divergence distance function, The determination of output using methods k-Nearest Neighbor and The introduction of the hardware sent in a series. The system that run on hardware through several processes that is module K 125 R, ATMega 8535, current amplifier, The series of fan drive, Atmega 8535. The process is a system of control in key hardware to move the AC fan. The results of the application of speech and test in no real time by the use of The limit cut 0,2, segment averaging 128 dan K-Nearest Neighbor 7 generate a level of the introduction of best namely 81,6 %. Not the real time data from testing the data can be done in real time with the results of the introduction of users reached 85,6 % of speech. The results of the introduction of the speechs yield the rotation fan than 43,6 rpm - 2275,1 rpm Key Words: DCT feature extraction, the distance divergence, segment averaging, KNearest Neighbor, speech recognition, AC fan.
ix
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
KATA PENGANTAR Syukur kepada Tuhan Yesus Kristus karena telah memberikan rahmat dan penyertaan-Nya sehingga tugas akhir dengan judul “Aplikasi Pengenalan Ucapan Dengan Ekstraksi Ciri DCT Dan Fungsi Jarak Divergensi Untuk Mengatur Kecepatan Kipas Angin AC” dapat diselesaikan dengan baik. Tugas akhir ini dapat diselesaikan dengan bantuan banyak pihak. Oleh karena itu penulis ingin mengucapkan terima kasih 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 Martanto, S.T.,M.T. dan Bapak Pius Yozy Merucahyo, S.T.,M.T. dosen penguji yang telah bersedia memberi masukan, bimbingan dan saran dalam memperbaiki tugas akhir ini 4. Bapak dan Ibu dosen yang telah yang telah memberikan ilmu dan pengetahuan kepada penulis selama masa kuliah. 5. Segenap laboran dan karyawan Fakultas Sains dan Teknologi yang telah memberikan dukungan secara tidak langsung selama penulis mengerjakan tugas akhir ini. 6. Kedua orang tua, adek-adek dan semua keluarga yang telah banyak memberikan semangat, dukungan doa, kasih sayang dan motivasi selama mengerjakan tugas akhir dan menempuh pendidikan di Universitas Sanata Dharma. 7. Teman–teman seperjuangan Teknik Elektro 2010 yang telah memberikan semangat dalam mengerjakan tugas akhir ini dan menempuh pendidikan di Universitas Sanata Dhama. 8. Teman-teman serta pembina Komisi Pemuda dan Multimedia GKI Gejayan yang memberi semangat, dukungan doa, motivasi selama mengerjakan tugas akhir dan menempuh pendidikan di Universitas Sanata Dharma. 9. Untuk orang yang spesial yang selalu memberi semangat, motivasi, dukungan dan mendoakan selama menyelesaikan tugas akhir ini.
x
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
xi
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
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 ........................................................................................................xvi DAFTAR TABEL .............................................................................................................xix 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 ............................................................................................... 2 BAB II DASAR TEORI ................................................................................................... 5 2.1. Ucapan/Suara ............................................................................................................ 5 2.2. Mikrofon ................................................................................................................... 6 2.3. Kartu suara (Sound Card) ......................................................................................... 6 2.4.
Matlab ...................................................................................................................... 7 2.4.1 Windowing utama matlab ................................................................................. 8 2.4.2 Comand window ............................................................................................... 8 2.4.3 Matlab Editor ................................................................................................... 9
xii
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 2.5. Sampling .................................................................................................................... 9 2.6. Windowing ................................................................................................................ 9 2.6.1 Hamming .........................................................................................................10 2.7.
Discrete Cosine Transform (DCT) ...........................................................................10
2.8. Fungsi Jarak Divergensi ........................................................................................... 11 2.9. Metode Template Matching ..................................................................................... 12 2.10. Metode k-nearest neighbor ....................................................................................... 12 2.11. Modul Serial (K 125 R) ............................................................................................ 13 2.12. Mikrokontroler ATMega 8535 ..................................................................................13 2.12.1. Arsitektur ATMega 8535 .............................................................................14 2.13. Penguat Arus .............................................................................................................15 2.14. Triac .......................................................................................................................... 16 2.15. Relay .......................................................................................................................... 17 2.16. Rangkaian Pengendali Fase ....................................................................................... 18 2.16.1 Hubungan Arus dan Tegangan Sinyal Sinusoida di R dan C ........................ 18 2.16.2 Hubungan Seri RLC ....................................................................................... 19 2.17. Regulator Tegangan ..................................................................................................20 2.17.1 Pengaturan Tegangan IC 78XX ....................................................................20 BAB III PERANCANGAN PENELITIAN ....................................................................24 3.1. Gambaran Umum Perancangan Alat .........................................................................23 3.2. Perancangan Software, Proses Pengenalan dan Kerja Sistem ...................................26 3.2.1 Perancangan Proses Pengenalan Ucapan ........................................................ 26 3.2.2 Pre-processing ................................................................................................ 28 a. Normalisasi ................................................................................................ 39 b. Pemotongan Sinyal .................................................................................... 30 c. Windowing .................................................................................................30 d. Zero Padding ............................................................................................. 31 3.2.3 Ekstraksi Ciri ...................................................................................................32 3.2.4 Pembanding (Jarak Divergensi) ......................................................................33 3.2.5 Perancangan Penentuan Keluaran ....................................................................34 3.2.6 Perancangan Pengiriman Pengenalan Ucapan .................................................35 3.3. Perancangan Referensi Ucapan .................................................................................37
xiii
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 3.4. Perancangan Ucapan Uji ........................................................................................... 37 3.5. Perancangan Tampilan GUI Matlab ..........................................................................37 3.6. Perancangan Hardware Pengaturan Kipas AC ......................................................... 39 3.6.1 Masukan (input) .............................................................................................. 39 3.6.2 Perancangan Mikrokontroler ATMega 8535 .................................................40 3.6.3 Perancangan ULN 2803 ..................................................................................41 3.6.4 Perancangan Keadaan Kipas AC ...................................................................41 3.6.4 Perancangan Keadaan Kipas AC ...................................................................42 3.6.5 Rangkaian Relay ............................................................................................. 43 3.6.6 Rangkaian Penggerak Kipas ..........................................................................44 3.6.7 Perancangan Catu Daya ..................................................................................47
BAB IV HASIL DAN PEMBAHASAN ..........................................................................49 4.1. Pengujian Program Pengenalan Ucapan dengan Ekstraksi Ciri DCT dan Pembanding (jarak divergensi) ......................................................................................................49 4.1.1. Pop up menu 1 ”VARIABEL BATAS POTONG” , Pop up menu 2 “SEGMENT AVERAGING”, Pop up menu 3 “KNN” dan Pop up menu 7 “USER” .......................................................................................... 52 4.1.2. Pushbutton 1 Tombol “REKAM” .................................................................55 4.1.3. Tombol “RESET” ......................................................................................... 66 4.1.4. Tombol “KELUAR” ..................................................................................... 66 4.2. Pengujian Program Pengenalan Ucapan terhadap Tingkat Pengenalan Ucapan user Secara Real Time Dan Tidak Real Time ...................................................................67 4.2.1. Pengurangan Jumlah Elemen Koefisien Ekstraksi Ciri .................................67 4.2.2. Pengujian Tidak Real Time ...........................................................................70 4.2.3. Pengujian Real Time ...................................................................................... 78 4.3.
Gambaran Fisik Alat (Hardware) ............................................................................81 4.3.1 Subsistem Elektronik .................................................................................... 82
4.4.
Pengujian Alat (Hardware) ...................................................................................... 86 4.4.1 Pengujian Rangkaian Catu Daya ....................................................................86 4.4.2 Pengujian Program Mikrokontroler pada Alat (Hardware) ........................... 87
xiv
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI BAB V KESIMPULAN DAN SARAN ...........................................................................91 5.1. Kesimpulan ...............................................................................................................91 5.2. Saran .......................................................................................................................... 91 DAFTAR PUSTAKA ........................................................................................................92 LAMPIRAN A ..................................................................................................................L1 LAMPIRAN B ..................................................................................................................L7 LAMPIRAN C ..................................................................................................................L9 LAMPIRAN D................................................................................................................. L15 LAMPIRAN E ................................................................................................................ L16 LAMPIRAN F ................................................................................................................ L17 LAMPIRAN G ............................................................................................................... L45 DATASHEET
xv
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
DAFTAR GAMBAR 1.1
Blok diagram model perancangan ................................................................................ 3
2.1 Ucapan .......................................................................................................................... 5 2.2 Bentuk fisik mikrofon ................................................................................................... 6 2.3 Kartu suara (Sound Card) ............................................................................................. 7 2.4 Window utama matlab .................................................................................................. 8 2.5 Comand Window ......................................................................................................... 8 2.6 Window Editor .............................................................................................................. 9 2.7 Spektrum dengan window Hamming .......................................................................... 10 2.8 Contoh DCT Dari Sinyal Dengan Menggunakan DCT 256 Titik .............................. 11 2.9 Bentuk fisik modul serial (K125 R) .......................................................................... 12 2.10 Bentuk fisik port ISP .................................................................................................. 13 2.11 Bentuk fisik mikrokontroler ATMega 8535 .............................................................. 14 2.12 Konfigurasi Pin ATMega 8535 .................................................................................. 14 2.13 Bentuk fisik ULN 2803 ............................................................................................. 15 2.14 Bentuk Schematik ULN 2803 .................................................................................... 16 2.15 Simbol Triac dan rangkaian ekuivalen Triac ............................................................. 16 2.16 Normally Close ........................................................................................................... 17 2.17 Normally Open ........................................................................................................... 17 2.18 Rangkaian (a) Resistor (b) Kapasitor ...................................................................... 18 2.19 Rangkaian RLC seri ................................................................................................... 19 2.20 Rangkaian dasar regulator 78XX ............................................................................... 21 3.1 Gambaran umum system kerja alat ............................................................................ 23 3.2 Diagram blok proses sistem pengenalan .................................................................... 26 3.3 Diagram alir proses pencuplikan ucapan .................................................................... 27 3.4 Diagram alir proses pre-processing ............................................................................ 28 3.5 Diagram alir proses normalisasi ................................................................................. 39 3.6 Diagram alir proses pemotongan sinyal ..................................................................... 30 3.7 Diagram alir proses windowing .................................................................................. 31 3.8 Diagaram alir proses zero padding ............................................................................. 32 3.9 Diagram alir proses ekstraksi ciri ............................................................................... 32 3.10 Diagram alir proses pembandingan (jarak divergensi) ............................................... 33
xvi
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 3.11 Diagram alir proses penentuan keluaran .................................................................... 34 3.12 Diagram alir pengiriman serial ................................................................................... 36 3.13 Diagram blok proses pengambilan referensi ucapan .................................................. 37 3.14 Tampilan GUI Matlab pengenalan ucapan untuk pengaturan kipas AC .................... 38 3.15 Diagram Blok Perangkat Keras .................................................................................. 39 3.16 Rangkaian ATMega 8535 ........................................................................................... 40 3.17 Rangkaian ULN 2803 .................................................................................................. 41 3.18 Diagram alir pengaturan putaran keadaan kipas AC pada mikrokontroler ................ 42 3.19 Rangkaian Relay ......................................................................................................... 43 3.20 Rangkaian Penggerak Kipas AC ................................................................................ 44 3.21 Rangkaian catu daya 12 volt dan 5 volt ...................................................................... 47 4.1 Simbol Matlab ............................................................................................................ 49 4.2 Tampilan awal matlab ................................................................................................ 50 4.3 Tampilan Utama GUI setelah enter ............................................................................ 51 4.4 Tampilan Utama GUI ................................................................................................. 51 4.5 Listing program Pop up menu 1 .................................................................................. 53 4.6 Listing program “SEGMENT AVERAGING” ........................................................... 53 4.7 Listing program “KNN” .............................................................................................. 54 4.8 Listing program “USER” ............................................................................................. 55 4.9 Listing program “REKAM”......................................................................................... 55 4.10 Listing program ekstraksi ciri DCT ............................................................................ 56 4.11 Listing program pemanggilan database ..................................................................... 57 4.12 Listing program pembuatan database ........................................................................ 63 4.13 Listing program perhitungan fungsi k-nearest neighbor ............................................ 64 4.14 Listing program pengiriman data serial ke mikrokontroler ........................................ 65 4.15 Listing program tombol “RESET” ............................................................................. 66 4.16 Listing program tombol “KELUAR” ......................................................................... 67 4.17 Listing program segment averaging ........................................................................... 68 4.18 Pengaruh nilai batas potong tanpa segment averaging terhadap pengenalan ucapan . 69 4.19 Pengaruh nilai k-nearest neighbor tanpa segment averaging terhadap pengenalan ucapan ......................................................................................................................... 69 4.20 Pengaruh perubahan segment averaging (lebar frame) tanpa menggunakan k-nearest neighoar (K=1) terhadap ucapan ................................................................ 71
xvii
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 4.21 Pengaruh perubahan nilai batas potong tanpa menggunakan k-nearest neighoar (K=1) terhadap ucapan ............................................................................................... 72 4.22 Pengaruh perubahan nilai batas potong menggunakan k-nearest neighbor (k=3) terhadap ucapan .......................................................................................................... 73 4.23 Pengaruh perubahan segment averaging menggunakan k-nearest neighbor (K=3) terhadap ucapan .......................................................................................................... 74 4.24 Pengaruh perubahan nilai batas potong menggunakan k-nearest neighbor (K=5) terhadap ucapan .......................................................................................................... 75 4.25 Pengaruh perubahan segment averaging menggunakan k-nearest neighbor (K=5) terhadap ucapan .......................................................................................................... 76 4.26 Pengaruh perubahan nilai batas potong menggunakan k-nearest neighbor (K=7) terhadap ucapan .......................................................................................................... 77 4.27 Pengaruh perubahan nilai segment averaging menggunakan k-nearest neighbor (K=7) terhadap ucapan ............................................................................................... 77 4.28 Bentuk fisik alat .......................................................................................................... 80 4.29 Terminal AC dan Saklar on-off .................................................................................. 81 4.30 Tampak bagian dalam kotak ....................................................................................... 82 4.31 Rangkaian catu daya 5 volt dan 12 volt ...................................................................... 83 4.32 Rangkaian minimum sistem mikrokontroler .............................................................. 84 4.33 Modul serial (K 125 R) ............................................................................................... 85 4.34 Rangakaian relay dan rangkaian penggerak ............................................................... 85 4.35 Listing program pengiriman serial .............................................................................. 88
xviii
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
DAFTAR TABEL
2.1 Tipe IC 78XX ....................................................................................................... 20 3.1 Spesifikasi Mikrofon Genius ................................................................................ 24 3.2 Tabel Pengenalan Pada Mikrokontroler .............................................................. 35 3.3 Keterangan Tampilan Utama GUI Matlab ........................................................... 38 3.4 Konfigurasi Pin Mikrokontroler ........................................................................... 40 3.5 Tabel Keadaan Kipas AC ..................................................................................... 41 3.6 Keluaran Variabel B ............................................................................................. 43 3.7 Pengukuran Kipas ................................................................................................. 45 4.1 Tabel Pengenalan pada Mikrokontroler ............................................................... 66 4.2 Hasil Tingkat Pengenalan terbaik setelah Pembagian Data Awal dengan menggunakan segment averaging ......................................................................... 68 4.3 Tingkat Pengenalan (%) Untuk Hasil Nilai Batas Potong dan K-Nearest Neighbor Tanpa Menggunakan segment averaging ............................................................. 68 4.4 Tingkat Pengenalan (%) Untuk Hasil Nilai Batas Potong dan segment averaging tanpa menggunakan K-Nearest Neighbor ............................................................. 71 4.5 Tingkat Pengenalan (%) Untuk Hasil Nilai Batas Potong dan segment averaging menggunakan K-Nearest Neighbor (K=3) ........................................................... 73 4.6 Tingkat Pengenalan (%) Untuk Hasil Nilai Batas Potong dan segment averaging menggunakan K-Nearest Neighbor (K=5) ........................................................... 75 4.7 Tingkat Pengenalan (%) Untuk Hasil Nilai Batas Potong dan segment averaging menggunakan K-Nearest Neighbor (K=7) ........................................................... 76 4.8 Percobaan Real time user 1 .................................................................................. 79 4.9 Percobaan Real time user 2 .................................................................................. 79 4.10 Percobaan Real time user 3 .................................................................................. 79 4.11 Percobaan Pengenlan Secara Real Time Dari Masing-Masing User ..................... 80 4.12 Hasil Perbandingan Keluaran Tegangan Catu Daya ............................................ 87 4.13 Data Hasil Pengujian Secara Tidak Real Time Pada Mikrokontroler ................... 88 4.14 Data Hasil Pengujian Kecepatan Putaran Kipas Secara Real Time ...................... 89 4.15 Data Hasil Pengujian Kecepatan Putaran Untuk Ucapan Hidup ......................... 89
xix
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 4.16 Data Hasil Pengujian Kecepatan Putaran Untuk Ucapan Lambat ........................ 89 4.17 Data Hasil Pengujian Kecepatan Putaran Untuk Ucapan Cepat ........................... 90 4.18 Data Hasil Pengujian Kecepatan Putaran Untuk Ucapan Mati ............................ 90
xx
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
BAB I PENDAHULUAN 1.1
Latar Belakang Seiring dengan berjalannya waktu, kini bumi mengalami suatu perubahan iklim
yaitu terjadinya Pemanasan Global. Pemanasan Global adalah kenaikan suhu permukaan bumi yang disebabkan oleh peningkatan emisi karbon dioksida dan gas-gas lain yang dikenal sebagai gas rumah kaca yang menyelimuti bumi dan memerangkap panas[1]. Dampak dari Pemanasan Global yang terjadi pada saat ini menyebabkan suhu di bumi menjadi lebih panas, hal ini sangat mengganggu kegiatan dan aktivitas manusia[2]. Akibat dari suhu udara yang panas ini sangat mengganggu kegiatan dan aktivitas manusia di dalam atau luar ruangan. Pada saat ini manusia selalu mencari ide baru untuk mengurangi suhu panas di dalam atau luar ruangan yang terjadi akibat dari Pemanasan Global. Untuk mengurangi suhu panas maka dibuat alat atau kipas yang dapat dikendalikan secara otomatis dengan menggunakan ucapan. Kipas juga merupakan alat yang menghasilkan angin, fungsi umumnya adalah untuk pendingin udara, penyegar udara atau pengering.[3] Berdasarkan penjelasan di atas maka penulis ingin membuat alat dengan memanfaatkan ilmu yang telah penulis pelajari di Teknik Elektro yaitu aplikasi pengenalan ucapan dengan ekstraksi ciri DCT dan pembanding (jarak divergensi) untuk mengatur kecepatan kipas angin AC. Alat ini dapat dikendalikan secara otomatis dengan menggunakan ucapan hidup, lambat, cepat dan mati. Hasil putaran kecepatan kipas berupa hidup, lambat, cepat dan mati. Alat ini dapat mengganti pengoperasian kipas yang sekarang banyak dilakukan secara manual. Dengan alat ini pengguna secara otomatis dapat menghidupkan kipas, mengatur kecepatan kipas maupun mematikannya. Penelitian atau pembuatan alat seperti ini pernah dilakukan sebelumnya oleh Arysta[4] yang berjudul Pengatur Kecepatan Kipas Angin AC Berbasis Mikrokontroler AT89S51 dengan masukan menggunakan tombol Keypad. Sedangkan Penelitian yang penulis lakukan ini berbeda dengan penelitian yang dilakukan sebelumnya. Penelitian yang penulis lakukan yaitu User memberikan masukan berupa ucapan yang akan ditangkap oleh mikrofon dan akan diolah di dalam komputer menggunakan program Matlab dengan metode DCT dengan fungsi jarak divergensi. Setelah itu data hasil pengenalan ucapan akan dikirim secara serial menggunakan modul K 125 R ke Mikrokontroler ATMega 8535.
1
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
2
Dimana Mikrokontroler ATMega8535 yang akan mengontrol kecepatan putaran kipas angin AC.
1.2
Tujuan dan Manfaat Penelitian Tujuan dari penelitian ini adalah menghasilkan atau menciptakan sebuah aplikasi
pengaturan kecepatan kipas AC dengan menggunakan ucapan. Manfaat dari penelitian ini adalah membantu manusia agar dapat dengan mudah menghidupkan kipas dan mengatur kecepatan kipas angin dengan menggunakan ucapan.
1.3
Batasan Masalah Batasan masalah dalam penelitian ini adalah : a. Sistem pengenalan ucapan untuk Pengatur kecepatan kipas menggunakan hardware dan software b. Menggunakan hardware untuk mendapat masukan (input) dan mengolah keluaran (output) c. Menggunakan software untuk proses masukan (input) dan keluaran (output) d. Jarak antara user dan mikrofon ± 10 cm e. Menggunakan ekstraksi ciri DCT dan pembanding (jarak divergensi) f. Menggunakan mikrokontroler AVR ATMega 8535 g. Menggunakan Code vision AVR untuk program mikrokontroler h. Menggunakan Matlab untuk pengenalan ucapan
i. Ucapan yang dikenali untuk menggerakan kipas adalah ucapan hidup, lambat, cepat, dan mati
j. Menggunakan ucapan dari tiga user untuk menggerakkan kipas. 1.4
Metodologi Penelitian Langkah-langkah dalam mengerjakan tugas akhir ini adalah a. Pengumpulan bahan-bahan referensi berupa buku-buku dan artikel serta referensi dari internet berupa jurnal-jurnal. b. 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
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
3
telah ditentukan. Gambar 1.1. memperlihatkan blok diagram model yang akan dirancang.
Ucapan user
Kipas angin AC
Mikrofon
Komputer/Laptop Soundcard
Rangkaian penggerak kipas
Penguat arus
Modul serial K 125 R
ATMega 8535
Gambar 1.1. Blok diagram model perancangan c. Secara garis besar gambar 1.1 blok diagram model perancangan diatas menunjukan bagian perangkat keras dan perangkat lunak. Sistem dari blok diagram model perancangan akan bekerja ketika menerima masukan ucapan manusia menggunakan mikrofon yang akan diproses di-souncard menggunakan matlab. Kemudian diserialkan menggunakan modul K 125 R ke mikrokontroler ATMega 8535. Setelah itu mikrokontroler akan mengontrol relay yang sebelumnya dikuatkan oleh penguat arus untuk menggerakan relay secara bergantian. Relay ini selanjutnya akan terangkai dengan rangkaian kendali kipas. d. Pengujian sistem. Setelah mendapatkan ukuran batas potong, segment averaging dan k-nearest neighbor (KNN) yang menghasilkan tingkat pengenalan yang terbaik secara tidak real time maka selanjutnya akan dilakukan pengujian secara real time. Pengujian secara tidak real time dilakukan terhadap 120 ucapan dari tiga orang user. Setiap ucapan dari masing-masing user akan diuji sebanyak 10 kali. Hal ini diharapkan bisa merepresentasikan tingkat pengenalan ucapan yang dilakukan secara tidak real time dan real time. e. Proses pengambilan data pada software. Cara pengambilan data dilakukan dengan cara mengambil data secara tidak real time dari batas potong, segment averaging dan k-nearest neighbor (KNN) yang menghasilkan tingkat pengenalan yang terbaik. Data hasil pengenalan ucapan terbaik dipakai untuk mengambil data
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
4
secara real time sebanyak sepuluh kali pengucapan dari masing-masing ucapan untuk menguji tingkat keberhasilan program yang dibuat. f. Proses pengambilan data pada alat (hardware). Teknik pengambilan data dilakukan dengan cara mengambil data kecepatan putaran kipas yang sudah diatur kecepatan masing-masing kondisi putaran melalui trimpot.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
BAB II DASAR TEORI 2.1
Suara/Ucapan Suara merupakan suatu hal yang unik dan memiliki rentang yang bisa didengar dan
tidak bisa didengar oleh manusia, mempunyai frekuensi tertentu dan juga intensitas. Satuan dari frekuensi suara adalah Hertz diambil dari nama Fisikawan Heinrich Rudolf Hertz untuk menghargai jasa atas kontribusinya dalam bidang elektromagnetisme. Suara mempunyai rentang yang bisa didengar dan tidak bisa didengar. Rentang suara tersebut dibagi menjadi tiga bagian yaitu audible, infrasonik dan ultrasonik. Frekuensi audible adalah frekuensi yang bisa didengar oleh manusia, dengan frekuensi 20Hz - 20Khz. Frekuensi infrasonic adalah frekuensi di bawah 20 Hz, sementara frekuensi ultrasonik di atas 20 KHz.
Gambar 2.1. Ucapan
Sekarang ini hampir seluruh produksi audio menggunakan teknologi komputer untuk pemrosesan ataupun penyimpanannya. hal ini juga yang menyebabkan timbulnya berbagai macam format audio digital. Format digital yang digunakan untuk penelitian ini adalah Waveform (WAV), audio yaitu format audio standar Microsoft dan IBM untuk PC. WAV adalah data tidak terkompres sehingga seluruh sampel audio disimpan semuanya di harddisk. Software yang dapat menciptakan WAV dari Analog Sound misalnya adalah Windows Sound Recorder. WAV jarang sekali digunakan di internet karena ukurannya yang relatif besar[5]
5
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 2.2
6
Mikrofon Mikrofon adalah suatu alat yang dapat mengubah getaran suara menjadi getaran
listrik. Mikrofon merupakan masukan untuk merekam suara. Karena sangat peka dalam menerima getaran suara, peletakan mikrofon memerlukan pengaturan yang khusus agar suara-suara yang tidak diperlukan tidak ikut masuk menggetarkan membrane mikrofon. Media penghantar getaran listriknya merambat melalui kabel [6]. Untuk mendapatkan hasil rekaman yang baik maka harus mengunakan mikrofon yang baik. Hal-hal yang harus diperhatikan untuk mendapatkan mikrofon yang baik adalah : prinsip cara kerja mikrofon dari jenis mikrofon itu sendiri, daerah respon frekuensi suara yang mampu dicuplik oleh mikrofon, keluaran sinyal listrik yang dihasilkan mikrofon dan bentuk fisik mikrofon. Gambar 2.2. memperlihatkan jenis mikrofon yang digunakan.
Gambar 2.2. Bentuk fisik mikrofon
2.3
Kartu Suara (Sound Card) Sound Card adalah suatu perangkat keras komputer yang digunakan untuk
mengeluarkan suara dan merekam suara. Pada awalnya, Sound Card hanyalah sebagai pelengkap dari komputer. Sound card merupakan periferal yang terhubung ke slot ISA atau PCI pada motherboard, yang memungkinkan komputer untuk memasukkan input, memproses dan menghantarkan data berupa suara. Disebut sound card karena perangkat yang berbentuk sebuah lempengan PCB ini mampu mengolah suara. Sound card dapat digunakan untuk mengukur sinyal-sinyal yang rentang frekuensi suara (20 Hz-20 kHz) [7]. Gambar 2.3 memperlihatkan bentuk fisik sound card.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
7
Gambar 2.3. Kartu suara (Sound Card)
2.4
Matlab Matlab (Matrix Laboratory) adalah sebuah program untuk analisis dan komputasi
numerik dan merupakan suatu bahasa pemograman matematika lanjutan yang dibentuk dengan dasar pemikiran menggunakan sifat dan bentuk matriks. Pada awalnya, program ini merupakan interface untuk koleksi rutin-rutin numerik dari proyek LINPACK dan EISPACK, dan dikembangkan menggunakan bahasa FORTRAN namun sekarang merupakan produk komersial dari perusahaan Mathworks,Inc. yang dalam perkembangan selanjutnya dikembangkan menggunakan bahasa C++ dan assembler yang utamanya untuk fungsi-fungsi dasar Matlab. Matlab telah berkembang menjadi sebuah environtment pemrograman 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 fungsi-fungsi built-in yang tersedia tidak dapat melakukan tugas tertentu [8]. Ada beberapa window yang tersedia dalam Matlab yang digunakan antara lain[7]:
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
8
2.4.1 Window Utama Matlab Window ini merupakan window induk untuk pengaksesan ke seluruh lingkungan kerja menu-menu yang ada dalam Matlab. Gambar 2.4. memperlihatkan tampilan window.
Gambar 2.4. Window utama Matlab
2.4.2 Comand Window Command window ini dapat diakses dengan mengaksesnya pada menu window utama Matlab. Window ini berfungsi menerima perintah dari user untuk menjalankan seluruh fungsi yang ada di matlab. Gambar 2.5. memperlihatkan tampilan Comand window.
Gambar 2.5. Command Window
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
9
2.4.3 Matlab Editor Ketika membuka window utama Matlab, window editor ini tidak akan langsung muncul tetapi harus diakses lewat prompt matlab atau dengan cara mengklik menu file, new dan pilih M-File sehingga muncul window editor. Gambar 2.6. memperlihatkan tampilan window editor.
Gambar 2.6. Window editor
2.5
Sampling Sampling merupakan proses pencuplikan gelombang suara yang akan menghasilkan
gelombang diskret [9]. 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.6
Windowing Pada saat perekaman, hasil yang dapat dilihat berupa gambar sinyal. Pada tepi
sinyal terdapat 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 masukan perlu dikurangi kontinuitasnya dengan menggunakan windowing [10].
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
10
2.6.1 Hamming Hamming adalah suatu jendela yang dapat digunakan untuk keperluan windowing. Hamming window digunakan untuk menaikan dan menghimpitkan bentuk gelombang sehingga bantuk gelombang yang turun mempunyai nilai puncak. Hamming window dapat juga digunakan untuk perhitungan sinyal yang efektif dengan meminimalkan sinyal yang terdiskontinuitas. Hamming window dapat dirumuskan sebagai berikut[11] :
(
)
Gambar 2.7. memperlihatkan contoh hamming window.
Gambar 2.7. Spektrum dengan Window Hamming.
2.7
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
∑
[12]:
(2.2)
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
11
Dengan:
{
√
(2.3)
Gambar 2.9 memperlihatkan contoh pengaruh windowing. Pada gambar terlihat sinyal DCT hasil windowing terlihat lebih rapat, karena sinyal-sinyal frekuensi tinggi tidak tampak.[10].
Gambar 2.8. Contoh DCT Dari Sinyal Dengan Menggunakan DCT 256 Titik
2.8
Fungsi Jarak Divergensi Fungsi jarak divergensi digunakan untuk pengenalan ucapan atau suara. Jarak
divergensi dirumuskan dengan[13]
∑ Di mana: = Jarak Divergensi = Dua vektor yang akan dicari jaraknya n
= Ukuran vektor
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 2.9
12
Metode Template Matching Template Matching adalah sebuah operasi dalam pengenalan pola yang digunakan
untuk menentukan ada tidaknya perbedaan antara dua entitas (titik, kurva atau bentuk) dari jenis template (acuan) yang sama. Metode template matching adalah salah satu metode terapan, biasanya digunakan untuk mengidentifikasi citra angka, sidik jari dan aplikasi pencocokan citra lainnya. Secara umum template matching diartikan sebagai suatu cara untuk membandingkan dua deret angka untuk menentukan kesamaannya.[14]
2.10 Metode K-Nearest Neighbor (KNN) [15] Algoritma k-nearest neighbor adalah sebuah metode untuk melakukan klasifikasi terhadap obyek berdasarkan data pembelajaran yang jaraknya paling dekat dengan obyek tersebut. Dari gambar yang diberi vector x dan ukuran jarak, maka: a.
Dari vector N, mengidentifikasi k-nearest neighbor (KNN),yang lepas dari label kelas. k adalah yang dipilih untuk menjadi dua kelas bermasalah, dan secara umum tidak menjadi kelipatan dari jumlah kelas M.
b.
Dari sample k, mengidentifikasi untuk jumlah vector, kelas
c.
, yang termasuk dalam
, i = 1,2,…,M. tentunya∑
Penetapan x untuk kelas
dengan maksimal jumlah sampel dari
.
2.11 Modul Serial (K 125 R) Modul serial (K 125 R) merupakan USB atmel AVR ISP Programmer yang dilengkapi dengan komunikasi USB ke serial. K 125 R membantu dalam memprogram Mikrokontroler. Bentuk fisik K 125 R diperlihatkan pada gambar 2.9.
Gambar 2.9. Bentuk fisik modul serial (K 125 R)
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
13
Gambar 2.10. Bentuk fisik port ISP pada modul serial (K 125 R) Modul K 125 R memiliki spesifikasi sebagai berikut: a. Format file yang didukung adalah *.hex b. Target In 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 Studio 4. e. Tidak membutuhkan catu daya tambahan dari luar. f. Terdapat selector jumper untuk power board mikrokontroler AVR jika membutuhkan power dari USB untuk download program[16]
2.12 Mikrokontroler ATMega8535 Atmel adalah salah satu vendor yang bergerak di bidang mikroelektronika, telah mengembangkan AVR (Alf and Vegard’s Risc Processor). 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 dengan MCS51. Secara umum AVR dibagi menjadi 4 kelas, yaitu ATtiny, AT90Sxx, ATMega dan AT86RFxx[18].
2.12.1 Arsitektur ATMega 8535 a.
Fitur a. 8 bit AVR berbasis RISC dengan performa tinggi dan konsumsi daya rendah b. Kecepatan maksimal 16 MHz c. Memori : 8 KB Flash, 512 byte SRAM, 512 byte EEPROM
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
14
d. Timer/Counter : 2 buah 8 bit timer/counter, 1 buah 16 timer/counter, 4 kanal PWM e. 8 kanal 10/8 bit ADC f. Programable Serial USART g. Komparator Analog h. 6 pilihan sleep mode untuk penghematan daya listrik i. 32 jalur I/O yang bisa diprogram
Gambar 2.11. Bentuk fisik mikrokontroler ATMega 8535 b.
Konfigurasi PIN Mikrokontroler ATMega 8535 Mikrokontroler AVR memiliki arsitektur RISC 8 bit, sehingga semua instruksi
dikemas dalam kode 16 bit (16-bits word) dan sebagian besar instruksi dieksekusi dalam satu siklus instruksi clock. Mikrokontroler AVR ATMega 8535 mempunyai 40 kaki, 32 kaki diperlukan untuk keperluan port pararel. Setiap port terdiri dari 8 pin. Gambar 2.12. memperlihatkan konfigurasi pin ATMega 8535.
Gambar 2.12. Konfigurasi Pin ATMega 8535
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
15
a. VCC merupakan pin yang berfungsi sebagai pin masukan catu daya b. GND merupakan pin Ground c. Port A ( PA0, PA1, PA2, PA3, PA4, PA5, PA6, PA7) merupakan pin I/O dan pin masukan ADC. d. Port B ( PB0, PB1, PB2, PB3, PB4, PB5, PB6, PB7) merupakan pin I/O dan pin yang mempunyai fungsi khusus yaitu Timer/Counter, Comparator Analog dan SPI e. Port C (PC0, PC1, PC2, PC3, PC4, PC5, PC6, PC7) merupakan Port I/O dan pin yang mempunyai fungsi khusus, yaitu komparator analog dan Timer Oscillator. f. Port D (PD0, PD1, PD2, PD3, PD4, PD5, PD6, PD7) merupakan port I/O dan pin fungsi khusus yaitu komparator analog dan interrupt eksternal serta komunikasi serial. g. RESET merupakan pin yang di gunakan untuk mereset mikrokontroler h. XTAL1 dan XTAL2 merupakan pin masukan clock eksternal i. AVCC merupakan pin masukan untuk tegangan ADC j. AREF merupakan pin masukan tegangan referensi untuk ADC[17]
2.13 Penguat Arus Penguat arus yang digunakan adalah ULN 2803 yang didalamnya terdapat delapan transistor darlington yang dikemas di dalam satu IC (integrated circuit) dan mempunyai 18 pin. Setiap transistor bekerja secara individu atau terpisah sehingga beban yang dapat dipasang pada ULN 2803 sebanyak 8 buah. Gambar 2.13. Bentuk fisik ULN 2803.
Gambar 2.13. Bentuk fisik ULN 2803 ULN 2803 digunakan untuk menguatkan relay. ULN 2803 terdiri dari 16 kaki untuk input dan output. Kaki 1 sampai dengan 8 digunakan sebagai input dengan tegangan masukan sebesar 30 V dan arus maksimalnya adalah 25 mA. kaki 9 sampai 16 digunakan
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
16
sebagai keluaran dengan hasil penguatan memiliki tegangan maksimal 50 V dan arus 500 mA. Gambar 2.14 memperlihatkan bentuk Schematik kaki input dan output ULN 2803[19].
Gambar 2.14. Bentuk Schematik ULN 2803
2.14 Triac Triac atau Triode for Alternating Current (Trioda untuk arus bolak-balik) adalah komponen elektronika yang ekivalen dengan dua SCR yang disambungkan anti paralel dan kaki gerbangnya disambung bersama. TRIAC (Bidirectional Triode Thyristor) mempunyai tiga piranti yang dapat melewatkan arus dalam kedua arah melalui jalur utamanya. Terminal-terminal arus utama dikenal sebagai terminal utama-1 (T1) dan terminal utama-2 (T2). Seperti yang diperlihatkan pada gambar 2.15 a
(a)
(b)
Gambar 2.15. Simbol Triac dan rangkaian ekuivalen Triac Triac tersusun dari dua buah SCR yang di pasang paralel berkebalikan seperti pada gambar 2.15 b SCR (Silicon Controlled rectifier) adalah suatu piranti semikonduktor yang hanya dapat melewatkan arus dalam satu arah. Maka akan sangat berguna untuk mengendalikan
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
17
arus DC. Jika dua SCR digabung secara pararel berkebalikan maka didapatkan suatu pengendali fasa AC dan disebut dengan triac.
2.15 Relay Relay adalah suatu komponen elektronika yang akan bekerja bila ada arus yang melalui kumparannya. Sebuah relay terdiri dari kumparan yang dililitkan pada inti besi dan kontak-kontak penghubung. Apabila kumparan yang melilit inti besi dilalui arus listrik maka akan menimbulkan induksi medan magnet, dan induksi ini akan menarik kontakkontak penghubung relay. Relay mempunyai dua keadaan yaitu NC (Normally Close) dan NO (Normally Open) .Gambar 2.16. memperlihatkan keadaan relay NC.
Gambar 2.16. Normally Close Pada gambar di atas ditunjukan pada saat elektromagnetik tidak diberikan sumber tegangan maka tidak ada medan magnet yang menarik armature, sehingga saklar relay tetap terhubung ke terminal NC (Normally Close) seperti terlihat pada gambar di atas. Kemudian pada saat electromagnet diberikan sumber tegangan maka terdapat medan magnet yang menarik armature, sehingga saklar relay terhubung ke terminal NO (Normally Open) seperti gambar 2.17.
Gambar 2.17. Normally Open
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
18
2.16 Rangkaian Pengendali Fase 2.16.1 Hubungan Arus dan Tegangan Sinyal Sinusoida di R dan C a. Rangkaian arus bolak-balik dengan resistor murni Tegangan sinusoida dapat ditulis dalam bentuk persamaan tegangan sebagai fungsi waktu. Persamaan di bawah ini menunjukan tegangan yang melewati resistor pada waktu t
Tegangan yang melewati resistor berbentuk sinusoida. Dengan demikian arus yang dihasilkan juga sinusoida dan dapat dinyatakan dengan
Dimana
dan
adalah tegangan dan arus maksimum pada rangkaian. Dari kedua
persamaan di atas dapat dilihat bahwa tegangan dan arus pada resistor adalah sefase.
Is = Im sin wt
V1
Vs = Vm sin wt
Is
IR
IC Vs = Vm sin wt
VR (t)
(a)
VC (t)
(b)
Gambar 2.18. Rangkaian (a) Resistor (b) Kapasitor
b.
Rangkaian arus bolak-balik dengan kapasitor murni Pada gambar 2.18.b rangkaian di atas menunjukan suatu rangkaian seri antara
sumber AC dengan sebuah kapasitor. Persamaan untuk tegangan dalam sebuah kapasitor adalah
∫
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI Dengan
19
, maka:
)
Dengan reaktansi kapasitif:
Dari persamaan tersebut dapat diketahui bahwa arus pada kapasitor mendahului tegangannya sebesar 90 derajat.
2.16.2 Hubungan Seri RLC Rangkaian seri terdiri dari sebuah resistor, induktor, dan kapasitor diperlihatkan pada gambar 2.19.
L
R
Vs
Gambar 2.19. Rangkaian RLC seri Tegangan catu daya yang diberikan:
C
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
20
Dimana Z adalah impedansi rangkaian, dan besarnya adalah
√
2.12
Dan besarnya sudut fase:
Tegangan pada kapasitor dapat dicari dengan pembagi tegangan:
2.17 Regulator Tegangan Pengatur tegangan (voltage regulator) berfungsi menyediakan suatu tegangan keluaran DC tetap yang tidak dipengaruhi oleh perubahan tegangan masukan, arus beban keluaran, dan suhu. Pengatur tegangan adalah salah satu bagian dari rangkaian catu daya DC. Dimana tegangan masukannya berasal dari tegangan keluaran filter, setelah melalui proses penyearahan tegangan AC menjadi DC[20].
2.17.1. Pengatur Tegangan IC 78XX IC 78XX adalah regulator tegangan positif dengan tiga terminal, masing-masing input, ground dan output. IC 78XX tersedia untuk beberapa nilai tegangan keluaran seperti diperlihatkan pada tabel 2.1[20]. Tabel 2.1. Tipe IC 78XX Type
VOUT (Volt
IOUT (A)
VIN (Volt)
78XXC
78LXX
78MXX
Min
Maks
7805
5
1
0,1
0,5
7,5
20
7806
6
1
0,1
0,5
8,6
21
7808
8
1
0.1
0.5
10.5
23
7809
9
1
0.1
0.5
11,5
24
7810
10
1
0.1
0.5
12,5
25
7812
12
1
0.1
0.5
14,5
27
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
21
Tabel 2.1. (lanjutan) Tipe IC 78XX 7815
15
1
0.1
0.5
17,5
30
7818
18
1
0.1
0.5
21
33
7824
24
1
0.1
0.5
27
38
Meskipun semula dirancang untuk regulator tegangan tetap, namun regulator ini dapat dikembangkan untuk tegangan dan arus yang dapat diatur. Untuk tegangan dan arus output sesuai nilai nominalnya rangkaian dasar 78XX ditunjukkan pada gambar 2.20.
Gambar 2.20 Rangkaian dasar regulator 78XX C1 diperlukan jika regulator jauh dari Kapasitor filter pencatu daya sedangkan C2 diperlukan untuk memperbaiki tanggapan kilasan dan penindasan kerut (trancient response)[20]. Dalam penerapannya, tegangan masukan VIN harus lebih besar dari tegangan keluaran, jika kurang maka regulator tidak berfungsi tetapi bila melebihi nilai VIN maksimumnya dapat merusak regulator. Perhitungan nilai kapasitor C1 menggunakan persamaan:
dengan C
: Kapasitor dalam Farad : Arus beban dalam Ampere
f
: Frekuensi dalam Hz : Tegangan ripple rms dalam volt
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI Di mana nilai
dengan
22
dapat dicari dengan menggunakan persamaan[20]:
adalah tegangan ripple peak to peak yang merupakan selisih
antara tegangan masukan regulator dengan tegangan masukan minimum IC regulator yang digunakan atau dapat dirumuskan sebagai berikut:[21]
dengan: : Tegangan masukkan regulator dalam volt : Tegangan masukkan minimum IC regulator
Apabila tegangan masukan regulator berasal dari tegangan AC yang kemudian disearahkan menggunakan dioda, nilai
Dengan
dicari menggunakan persamaan[20]:
merupakan nilai tegangan AC yang sudah diturunkan menggunakan
trafo step-down (volt) dan adanya nilai 1,4 karena menggunakan dioda sebagai penyearah.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
BAB III PERANCANGAN ALAT
3.1
Gambaran Umum Perancangan Alat Perancangan sistem kerja alat adalah gambaran umum untuk mengidentifikasi
seluruh sistem kerja alat. Secara garis besar alat ini terdiri dari perangkat lunak dan perangkat keras. Gambar 3.1. memperlihatkan gambaran umum sistem kerja alat.
Gambar 3.1. Gambaran umum sistem kerja alat
23
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
24
Perangkat lunak merupakan program matlab di laptop yang berfungsi untuk menyimpan data hasil rekaman ucapan seperti hidup, lambat, cepat dan mati. Program matlab ini juga berperan untuk pengenalan tiga ucapan user mulai dari perekaman hingga menampilkan data hasil rekaman. Selain itu perangkat lunak yang lainnya yaitu program di dalam mikrokontroler yang berfungsi untuk menggerakan kipas AC sedangkan yang termasuk dalam perangkat keras yaitu Modul K 125 R untuk mendukung Mikrokontroler dan rangkaian mikrokontroler ATMega 8535 yang berfungsi untuk menerima data user dari Matlab kemudian mengolahnya untuk menggerakan kipas AC. Keluaran dari mikrokontroler ATMega 8535 berupa data yang terhubung ke penguat tegangan dan arus dan selanjutnya mikrokontroler akan menggerakan relay. Relay ini yang selanjutnya akan berfungsi sebagai saklar elektronis yang terangkai dengan rangkaian kendali kipas AC.
3.1.1 Ucapan Masukan berupa ucapan dengan jarak user dan mikrofon ± 10 cm. Ucapan yang diucpakan yaitu hidup, lambat, cepat dan mati. Setiap kata diucapkan sebanyak sepuluh kali untuk pembentukan database dan 10 kata untuk proses pengenalan. Proses terbentuknya ucapan 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.
3.1.2 Mikrofon Mikrofon yang digunakan adalah mikrofon merk genius. Tujuan menggunakan mikrofon adalah untuk menangkap sinyal analog masukan dan ucapan hidup, lambat, capat, dan mati lalu diteruskan menuju sound card pada laptop melalui line in yang ada pada sound card. Spesifikasi mikrofon dapat dilihat pada table 3.1. Tabel 3.1. Spesifikasi Mikrofon genius Frequency Response
100 Hz - 10 KHz
Sensitivity
-62dB
Output Impedance
2.2 KΩ
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
25
3.1.3 Kartu Suara (Sound Card) Kartu suara (Sound card) merupakan salah satu subsistem elektronik yang berada di laptop untuk merubah sinyal ucapan berupa sinyal analog menjadi sinyal digital sehingga dapat diproses di Matlab. Kartu suara juga digunakan untuk merekam suara masukan dari mikrofon yang terhubung pada laptop.
3.1.4 Matlab Matlab digunakan untuk mengolah data ucapan. Pada matlab dibuat program untuk pembentukan database, pengenalan ucapan, komunikasi dan pengiriman data.
3.1.5 Modul Serial K 125 R Modul serial K 125 R berfungsi untuk komunikasi data secara serial. Modul ini mengirimkan data pengenalan ucapan dari laptop yang diolah dalam software Matlab ke mikrokontroler ATMega 8535.
3.1.6 ATMega 8535 ATMega 8535 digunakan untuk menerima data serial pengolahan pengenalan ucapan dan mengolah data serial untuk mengatur kecepatan kipas AC.
3.1.7 Penguat Arus Penguat arus yang digunakan pada perancangan ini yaitu ULN 2803. Tujuan penggunaan ULN 2803 adalah untuk menguatkan keluaran tegangan dan arus dari mikrokontroler untuk dapat menggerakan relay.
3.1.8 Penggerak Kipas Rangkaian penggerak kipas merupakan rangkaian yang digunakan untuk menggerakan kipas AC berdasarkan ucapan dari user.
3.1.9 Kipas Angin Kipas angin merupakan hasil terakhir dari perancangan yang dibuat. Kipas akan berputar sesuai dengan ucapan yang diucapkan. Kipas angin yang digunakan adalah merk maspion dan mempunyai Spesifikasi 220 V / 20 W / 50Hz.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 3.2
26
Perancangan Software, Proses Pengenalan dan Kerja Sistem
3.2.1 Perancangan Proses Pengenalan Ucapan Proses perancangan untuk pengenalan ucapan user yang direkam dan akan dikenali ucapannya di database melalui proses sampling. Proses pengenalan ucapan dimulai dari proses perekaman pengenalan ucapan, Pre-processing, ekstraksi ciri, database, Pembanding (jarak divergensi), penentuan keluaran dan pengiriman data secara serial ke hardware. Gambar blok diagram 3.2. memperlihatkan proses kerja sistem.
Perekaman
Pengiriman serial
Pre processing
Penentuan keluaran
Ekstraksi ciri DCT
Pembanding (jarak divergensi)
Database Gambar 3.2. Diagram blok proses sistem pengenalan Proses sampling merupakan proses pencuplikan ucapan user. Pencuplikan ucapan user dipengaruhi oleh frekuensi sampling dan banyaknya waktu pencuplikan. Penentuan frekuensi sampling ditentukan berdasarkan rentang suara manusia yang berkisar 300 3000 Hz. Penentuan ini diambil berdasarkan teori Kriteria Nyquist menyatakan bahwa sebuah sinyal harus memiliki sampling rate yang lebih besar dari 2
dengan
adalah
frekuensi paling tinggi yang muncul disebuah sinyal. Hasil perekaman juga akan ditunjukan dalam bentuk plot pada matlab. Pada saat proses perekaman atau pencuplikan, hasil pencuplikan berupa WAV. Rentang waktu yang digunakan untuk proses perekaman adalah 1,5 detik (lihat lampiran 5). Dengan waktu tersebut cukup untuk melakukan proses pencuplikan, sehingga data sinyal ucapan yang disampling tidak terpotong. Gambar diagram alir 3.3. memperlihatkan proses pencuplikan ucapan.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
27
MULAI
Rentang waktu Pencuplikan
Masukan : (Ucapan Manusia (User))
Panjang Pencuplikan
Rekam
Keluaran : (data ucapan tercuplik)
SELESAI
Gambar 3.3. Diagram alir proses pencuplikan ucapan
Panjang pencuplikan merupakan banyaknya jumlah data sinyal ucapan yang tercuplik selama rentang waktu pencuplikan. Panjang pencuplikan ini diperoleh sebagai berikut : 2
. .2
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 3.2.2
28
Pre-Processing Pengkondisi sinyal data hasil ucapan pengenalan maupun database merupakan
proses pre-processing. Proses pre-processing ini meliputi proses normalisasi, pemotongan sinyal, windowing dan zero padding. Gambar diagram alir 3.4. memperlihatkan proses preprocessing. MULAI
Masukkan : Hasil pencuplikan ucapan
Normalisasi
Pemotongan sinyal
Windowing
Zero padding
Keluaran : Hasil pre-processing
SELESAI Gambar 3.4. Diagram alir proses pre-processing
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI a.
29
Normalisasi Proses normalisasi merupakan proses lanjutan dari hasil sampling. Tujuan dari
normalisasi adalah untuk menyamakan besar nilai amplitudo maksimum database sehingga efek dari kuat lemahnya ucapan tidak mempengaruhi pada proses pengenalan database. Pada proses normalisasi hasil pencuplikan ucapan akan disamakan nilai amplitudo dengan skala maksimum amplitudo maksimum 1 atau -1 dengan menggunakan rumus normalisasi sebagai berikut :
Dimana :
x0 = Data masukan x1 = Hasil normalisasi
Gambar 3.5. memperlihatkan proses normalisasi.
MULAI
Masukkan : Hasil pencuplikan ucapan
Normalisasi
Keluaran : Hasil normalisasi
SELESAI
Gambar 3.5. Diagram alir proses normalisasi
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI b.
30
Pemotongan sinyal Data hasil normalisasi akan dimasukan ke proses pemotongan sinyal yang
bertujuan untuk menghilangkan atau memotong sinyal yang bukan merupakan data hasil ucapan dan 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 dimulai dari bagian kiri sinyal yang tidak mengandung data sinyal ucapan dan terakhir pada bagian kanan sinyal. Pemotongan sinyal ini ditentukan oleh variabel batas potong yang sudah ditentukan yaitu 0,2; 0,3; 0;4; 0,5. Gambar diagram alir 3.6. memperlihatkan proses pemotongan sinyal.
MULAI
Masukkan : Hasil normalisasi
Potong kiri
Potong kanan
Keluaran : Hasil pemotongan sinyal
SELESAI
Gambar 3.6. Diagram alir proses pemotongan sinyal
c.
Windowing Proses selanjutnya setelah proses pemotongan sinyal adalah proses windowing .
Windowing yang digunakan adalah Hamming window. Tujuan dari menggunakan Windowing ini adalah untuk mengurangi efek diskontinuitas dari data sinyal pada ucapan,
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
31
dan mengatur nilai standar deviasi sehingga membantu keakuratan hasil ekstraksi ciri Proses windowing diperlihatkan pada gambar diagram alir 3.7.
MULAI
Masukkan : (hasil pemotongan sinyal)
Proses windowing
Keluaran : hasil windowing
SELESAI
Gambar 3.7. Diagram alir proses windowing
d.
Zero padding Proses selanjutnya setelah windowing adalah proses Zero padding. Zero padding
digunakan untuk menyamakan panjang data sinyal setelah proses pemotongan sinyal. Pada saat proses pemotongan sinyal, banyak terjadi perbedaan panjang sinyal data. Sehingga Zero padding digunakan untuk menyamakan panjang gelombang dengan menyisipkan nilai 0 (nol) pada data. Panjang ukuran sinyal data yang berlebihan bisa diatasi dengan menggunakan persamaan 2n (Ukuran sinyal). Proses Zero Padding diperlihatkan pada gambar diagram alir 3.8.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
32
MULAI
Masukan (hasil windowing)
Proses zerro padding
Keluaran : hasil Zerro padding
SELESAI Gambar 3.8. Diagram alir proses zero padding
3.2.3 Ekstraksi Ciri Setelah proses Zero Pading, proses selanjutnya yaitu ekstra ciri. Ekstraksi ciri terdiri dari proses downsampling dan transformasi. Proses downsampling bertujuan untuk mencuplik data sinyal ucapan menjadi lebih sedikit. Proses selanjutnya adalah proses transformasi, transformasi yang digunakan adalah transformasi DCT (Discrete Cosine Transform). Gambar 3.9. memperlihatkan diagram alir ekstraksi ciri.
MULAI
Masukan (hasil processing)
A
Gambar 3.9. Diagram alir proses ekstraksi ciri
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
33
A
Menghitung absolut DCT
Menghitung log
Segment averaging
keluaran hasil ekstraksi ciri DCT
SELESAI Gambar 3.9. (lanjutan) Diagram alir proses ekstraksi ciri
3.2.4 Pembanding (Jarak Divergensi) Proses pembandingan menggunakan jarak divergensi. Jarak divergensi digunakan untuk membandingkan masukan data sinyal ucapan dengan database ucapan. Hasil proses pembandingan ini digunakan sebagai penentu hasil pengenalan ucapan. Gambar 3.10. memperlihatkan proses pembanding (jarak divergensi). MULAI
Masukan (hasil ekstraksi ciri DCT)
B
Gambar 3.10. Diagram alir proses pembanding (jarak divergensi)
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
34
B
Fungsi jarak divergensi
database
Keluaran hasil pembanding (jarak divergensi)
SELESAI Gambar 3.10. (lanjutan) Diagram alir proses pembandingan (jarak divergensi)
3.2.5 Perancangan Penentuan Keluaran Pada proses penentuan keluaran ini merupakan proses terakhir yang akan dikirim secara serial ke mikrokontroler. Penentuan keluaran ini mempunyai keluaran yang berupa data hasil pengenalan ucapan yang ditentukan berdasarkan kelas yang paling banyak muncul dengan menggunakan metode k-nearest neighbor (KNN). Setelah itu hasil dari nilai kelas yang paling banyak muncul tersebut akan menjadi keluaran berupa teks ucapan yaitu hidup, lambat, cepat dan mati. Gambar 3.11 memperlihatkan proses penentuan keluaran. MULAI
Masukan hasil pembanding (jarak divergensi)
Proses k-nearest neighbor (KNN) C Gambar 3.11. Diagram alir proses penentuan keluaran
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
35
C
Inisialisasi dengan nama : 4 jenis ucapan
Keluaran kelas yang paling sering muncul dari KNN
Keluaran: hasil pengenalan
SELESAI Gambar 3.11. (lanjutan) Diagram alir proses penentuan keluaran
3.2.6 Perancangan Pengiriman Pengenalan Ucapan Pengiriman pengenalan ini merupakan proses terakhir pada matlab. Hasil pengenalan berupa teks akan dikirim secara serial dari matlab ke mikrokontroler melalui modul K 125 R dalam bentuk karakter kode ascii dan akan dilanjutkan pada proses selanjutnya. Tujuan dari penggunaaan kode ascci adalah mengubah karakter ke dalam bentuk hexadesimal sehingga bisa dikenali mikrokontroler. Tabel 3.2. memperlihatkan inisialisasi dari ucapan, hidup, lambat, cepat dan mati. Tabel 3.2. Tabel Pengenalan pada mikrokontroler Pengenalan
Kode Ascii
Bilangan Hexa
Hidup
H
048
Lambat
L
04C
Cepat
C
043
Mati
M
04D
Proses pengiriman data secara serial dari matlab ditunjukan pada diagram alir 3.12.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 36
MULAI
Buka gerbang serial
Masukan (penentuan keluaran)
Tidak Hidup
Tidak
Keluaran kirim kode ‘H’
Ya Keluaran kirim kode ‘L’
Ya Keluaran kirim kode ‘C’
Tutup gerbang serial
SELESAI Gambar 3.12. Diagram alir pengiriman serial
Tidak Mati
Cepat
Lambat
Ya
Tidak
Ya Keluaran kirim kode ‘M’
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 3.1
37
Perancangan Referensi Ucapan Pada perancangan ini ucapan hidup, lambat, cepat dan mati digunakan sebagai
referensi. Terdapat 12 set sampel yang berasal dari kombinasi variasi batas potong (0,2 ; 0,3 ; 0,4 ; 0,5) , Segment averaging (8, 16, 32, 64, 128, 256) , dan KNN (1, 3, 5, 7). Setiap sampel akan melalui proses sampling, windowing, zerro padding DCT dan KNN. Diagram blok proses diperlihatkan pada gambar 3.13.
Ucapan
Perekaman
Hasil ekstraksi ciri
Normalisasi
Ekstraksi ciri
Zero Padding
Pemotongan Sinyal
Windowing
Gambar 3.13. Diagram blok proses pengambilan referensi ucapan
3.2
Perancangan Ucapan Uji Pembuatan ucapan uji untuk menentukan batas potong dan segment averaging, dan
KNN yang optimal. Ucapan uji ada 40 (4 kata X 10 ucapan) dengan tiga user sehingga total ucapan uji adalah 120 (40 kata X 3 user).
3.3
Perancangan Tampilan GUI Matlab Pada perancangan ini menggunakan GUI matlab sebagai tampilan. Tampilan GUI
ini untuk mempermudah menggunakan alat yang dibuat. 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 batas potong, Segment averaging dan KNN yang dapat dimasukkan oleh user. Gambar 3.14 memperlihatkan tampilan GUI matlab.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
38
Gambar 3.14. Tampilan GUI Matlab pengenalan ucapan untuk pengaturan kipas AC
Tabel 3.3. Keterangan tampilan utama GUI Matlab Nama Bagian Tombol rekam
Keterangan Tombol ini digunakan untuk mengambil data ucapan yang ingin direkam oleh user
Tombol reset
Tombol ini digunakan untuk reset atau mengambil ulang data ucapan user
Tombol keluar
Tombol ini digunakan untuk keluar dari tampilan GUI
Variabel batas potong
Digunakan untuk memilih nilai batas potong dalam proses pengenalan ucapan yaitu 0.2, 0.3, 0.4 dan 0.5
KNN
Digunakan untuk menentukan nilai keluaran pada proses pengenalan. Nilai KNN yang digunakan yaitu 1, 3, 5 dan 7
User
Digunakan untuk memilih masing-masing user (3 user)
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
39
Tabel 3.3. (Lanjutan) Keterangan tampilan Utama GUI Matlab Segment averaging
Digunakan untuk memilih nilai segment averaging dalam proses pengenalan ucapan. segment averaging yang digunakan yaitu 8, 16, 32, 64, 128 dan 256
Hasil rekaman
Digunakan untuk menampilkan grafik data hasil perekaman
Hasil Ekstraksi DCT
Digunakan untuk menampilkan grafik data hasil ekstraksi DCT
3.4 Perancangan Hardware Pengaturan Kipas AC Perancangan perangkat keras terdiri dari modul K 125 R, ATMega 8535, penguat arus, penggerak kipas, ATMega 8535 merupakan kendali utama di hardware untuk menggerak kipas angin AC dengan menerima data secara serial dari program matlab. Keluaran dari mikrokontroler berupa data yang berhubungan dengan suatu penguat tegangan dan arus. Mikrokontroler akan akan menggerakan relay secara bergantian. Relay ini selanjutnya berfungsi sebagai saklar elektronis yang terangkai dengan rangkaian kendali kipas. Diagram blok rangkaian perangkat keras ditunjukan pada gambar 3.15.
Laptop
Modul Serial K 125 R
ATMega 8535
Kipas angin
Penguat Arus
Rangkaian Penggerak Kipas
Gambar 3.15. Diagram Blok Perangkat Keras (Hardware)
3.6.1
Masukan (Input) Proses perbandingan untuk menggerak kipas menggunakan pembanding (jarak
divergensi). Hasil dari proses pengenalan diinisialisasikan sesuai dengan nama pengenalan pada keluaran. Setelah diinisialisasikan hasil keluarannya akan dikomunikasikan secara serial menggunakan modul K 125 R dan data tersebut dikirim ke ATMega 8535.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 3.6.2
40
Perancangan Mikrokontroler ATMega 8535 Penerimaan data hasil inisialisasi dari matlab ke mikrokontroler akan diproses
selanjutnya untuk menentukan nilai yang mengatur relay sehingga dapat menentukan keadaan kipas AC. Mikrokontroler merupakan pusat untuk mengontrol kipas. Mikrokontroler mempunyai 4 port A, B, C dan D, dan setiap port memiliki 8 pin. Rangkaian ATMmega 8535 ditunjukan pada gambar 3.16.
Gambar 3.16. Rangkaian ATMega 8535 Konfigurasi penggunaan port ATMega 8535 sebagai masukan data serial adalah port ISP dan port yang digunakan output adalah port B.0 sampai port B.3. Konfigurasi pin diperlihatkan pada tabel 3.4. Tabel 3.4. Konfigurasi Pin Mikrokontroler Fungsi
Hardware
Port yang digunakan
Masukan
Penerima serial
Port ISP
Keluaran
Relay
Port B.0 Port B.1 Port B.2 Port B.3
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 3.6.3
41
Perancangan ULN 2803 ULN 2803 digunakan untuk menguatkan relay. ULN 2803 memiliki 16 pin seperti
untuk masukan dan keluarannya seperti pada gambar 3.17.
Gambar 3.17. Rangkaian ULN 2803 Pin satu, pin dua, pin tiga dan pin empat dihubungkan ke ATMega 8535 dengan tegangan masukan pada ULN 2803 sebesar 30 volt dan arus maksimalnya adalah 25 mA. Pin lima belas, pin enam belas, tujuh belas, delapan belas dihubungkan ke relay. Pin delapan dihubungkan ke ground dan pin delapan belas dihubungkan ke VCC.
3.6.4
Perancangan Keadaan Kipas AC Keadaan kipas untuk ucapan hidup, cepat, lambat dan mati dibagi ke dalam 5
level dengan kecepatan putaran yang berbeda seperti diperlihatkan pada tabel di bawah. Keadaan kipas AC di perlihatkan pada tabel 3.5. Tabel 3.5. Tabel Keadaan Kipas AC Keadaan
Masukan
Sekarang
Hidup
Lambat
Cepat
Mati
Level 0
Level 4
Level 0
Level 1
Level 0
Level 1
Level 4
Level 0
Level 2
Level 0
Level 2
Level 4
Level 1
Level 3
Level 0
Level 3
Level 4
Level 2
Level 4
Level 0
Level 4
Level 4
Level 3
Level 4
Level 0
Dari tabel keadaan di atas dapat dibuat diagram alir seperti diperlihatkan pada gambar 3.18.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 42
Gambar 3.18. Diagram alir pengaturan putaran keadaan kipas AC pada mikrokontroler
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
43
Dari diagram alir di atas ditentukan tiga variabel yaitu A, B dan C. Variabel A dan C digunakan untuk menentukan keadaan, sedangkan B sebagai variabel untuk menentukan keluaran seperti diperlihatkan pada tabel 3.6. Tabel 3.6. Keluaran Variabel B
3.6.1
Keluaran variabel B
0
1
2
3
4
Selektor
0000
1000
0100
0010
0001
Rangkaian Relay Rangkaian relay merupakan rangkaian yang terhubung dengan mikrokontroler.
Relay yang digunakan adalah relay lima kaki. Kumparan magnetik pada relay akan bekerja jika ada masukan 12 Volt DC. Sehingga memberikan kondisi close untuk NO dan kondisi open untuk NC. Karena tidak dimungkinkan untuk menggerakan kipas langsung dari mikrokontroler karena keluaran dari mikrokontroler hanya sebesar 5 Volt dan arus 15 mA maka harus ditambah penguatan tegangan dan penguat arus untuk dapat menggerakkan relay. Gambar 3.19. memperlihatkan rangkaian relay.
Gambar 3.19. Rangkaian Relay
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
44
Penyangga tegangan yang dimiliki ULN 2803 adalah 8 (delapan) penyangga tegangan dan arus. Perancangan ini menggunakan 4 (empat) penyangga untuk menggerakan relay, sesuai dengan 4 (empat) keadan putaran level 0 sampai level 3.
3.6.2
Rangkaian Penggerak Kipas Rangkaian penggerak kipas menggunakan triac atau dua buah thyristor yang
dirangkai secara paralel dengan satu elektroda pintu (gate). Gambar 3.20. memperlihatkan rangkaian penggerak kipas.
Gambar 3.20. Rangkaian Penggerak Kipas AC
Triac dipicu dalam conducting mode-nya oleh kondisi yang dipasang pada gerbangnya. Jika tegangan yang dipasang pada gerbang adalah nol, triac mencegah aliran arus dalam kedua arah apapun polaritas dari kedua terminal utamanya. Dari data sheet diketahui tegangan break over untuk memicu triac adalah 1.5 Volt. Pada gambar 3.18 diketahui bahwa VG (tegangan gerbang) adalah tegangan pada kapasitor (Vc), dari persamaan (2.14) di dapat : (
)
Jika nilai kapasitor ditentukan sebesar 1uF dan frekuensi sumber 50 Hz, maka nilai reaktansi kapasitifnya dapat diketahui dari persamaan (2.10)
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI ⁄(
45
) 6
(
)
= 3183,099 Ω
Jika tegangan sumber yang digunakan adalah 220 Volt, maka : (
⁄ )
(1.5/220) = (3183,099/ Z) Z = 466854,52 Ω
Perancangan alat ini, kipas angin memiliki spesifikasi 220V / 20 W / 50 Hz dan berdasarkan hasil pengukuran didapat hasil pengukuran seperti ditunjukan tabel 3.7. Tabel 3.7. Pengukuran Kipas Kecepatan Putar kipas
Tegangan sumber
Arus
(rpm)
(V)
(A)
43,6 rpm – 2275,1 rpm
221,2 V
200 mA
Dari tabel hasil pengukuran dapat dihitung reaktansi dari kipas sebagai berikut :
= 44 VA
Dari tabel hasil perhitungan didapat
, maka pada beban :
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 2
46
2
2
2
Jadi nilai reaktansi pada kipas adalah 5324
. Pada gambar 2.20 memperlihatkan
gambar rangkaian seri RLC, maka dari gambar tersebut dapat dicari nilai hambatan (R) sebagai berikut:
2
√
2 2
√
2
√
= 4,7
Dari hasil perhitungan nilai hambatan maka nilai resistor yang dapat digunakan untuk memicu triac adalah 4,7
.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
47
3.6.3 Perancangan Catu Daya Rangkaian catu daya memperoleh sumber tegangan dari jala-jala listrik PLN. Tegangan AC 220 volt harus diturunkan terlebih dahulu melalui trafo 1 A. Penurunan tegangan menjadi sekitar 15 volt. Tegangan AC tersebut kemudian disearahkan oleh dioda, sehingga menghasilkan gelombang penuh. Rangkaian catu daya berfungsi untuk menghasil tegangan DC sebesar +12 volt dan +5 volt dengan menggunakan IC LM7812 dan IC LM7805. Catu daya digunakan untuk memberikan suplai tegangan ke seluruh sistem hardware alat. Gambar 3.21. memperlihatkan rangkaian catu daya.
Gambar 3.21. Rangkaian catu daya 12 volt dan 5 volt
Nilai kapasitor C1 dihitung dengan menggunakan persamaan 2.15 dengan sebesar 1 A dan frekuensi 50 Hz. Nilai (
(
) dihitung menggunakan persamaan 2.16,
) dihitung menggunakan persamaan 2.17, dan
dihitung menggunakan
persamaan 2.18. berikut perhitungan yang dilakukan untuk mencari nilai kapasitor C1.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
b. LM7805
a. LM7812 𝑉𝑚
𝑉𝑎𝑐 √
𝑉𝑚
𝑉𝑎𝑐 √
𝑉𝑚
√
𝑉𝑚
√
𝑉𝑚
𝑉𝑚
𝑉
𝑉𝑟 (𝑝
𝑝)
𝑉𝑟 (𝑝
𝑝)
𝑉𝑟 (𝑝
𝑝)
𝑉𝑚
𝑉𝑚𝑖𝑛 𝑉
𝑉𝑟 (𝑝 𝑝)
𝑉𝑟 (𝑟𝑚𝑠)
2√3 52
𝑉𝑟 (𝑟𝑚𝑠)
2√3
𝑉𝑟 (𝑟𝑚𝑠) 𝐶1
48
𝑉 𝐼𝑑𝑐
4√3∗𝑓∗𝑉𝑟 (𝑟𝑚𝑠) 1
𝐶1
4√3∗50∗1 5
𝐶1
µ𝐹
𝑉
𝑉𝑟 (𝑝
𝑝)
𝑉𝑟 (𝑝
𝑝)
𝑉𝑟 (𝑝
𝑝)
𝑉𝑚
𝑉𝑚𝑖𝑛 𝑉
𝑉𝑟 (𝑟𝑚𝑠)
𝑉𝑟 (𝑝 𝑝)
𝑉𝑟 (𝑟𝑚𝑠)
12 5
2√3 2√3
𝑉𝑟 (𝑟𝑚𝑠) 𝐶2 𝐶2 𝐶2
𝑉 𝐼𝑑𝑐
4√3∗𝑓∗𝑉𝑟 (𝑟𝑚𝑠) 1 4√3∗50∗3 61
µ𝐹
Kapasitor C1 1924 μF dan kapasitor C2 799 μF tidak ada di pasaran, sehingga digunakan kapasitor C1 2200 μF dan kapasitor C2 1000 μF. Nilai kapasitor C1 dan C2 merupakan nilai kapasitor minimum yang dibutuhkan oleh rangkaian regulator yang akan dirancang, sehingga digunakan kapasitor yang lebih besar. Semakin besar nilai kapasitansi C, nilai tegangan ripple juga akan semakin kecil. Nilai kapasitor C3 dan C4 adalah 0,1μF diperoleh dari datasheet.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
BAB IV HASIL DAN PEMBAHASAN Bab hasil dan pembahasan berisikan pemaparan mengenai pengujian sistem software dan hardware yang sudah dirancang, gambaran tentang hardware, software yang dibuat dan hasil pengambilan data. Pengujian yang dilakukan dengan empat ucapan dari tiga user yaitu hidup, lambat, cepat dan mati. Hasil pengujian berupa data-data yang diperoleh untuk memperlihatkan bahwa alat dan program yang dirancang telah bekerja dengan baik atau tidak. Hasil pengambilan data-data dapat dilakukan analisis terhadap proses kerja alat yang akan digunakan untuk memberikan kesimpulan.
4.1
Pengujian Program Pengenalan Ucapan dengan Ekstraksi Ciri DCT dan Pembanding (Jarak Divergensi) Proses pengujian program bertujuan untuk mengetahui hasil kerja dari program
pengenalan ucapan yang telah dibuat berjalan sesuai dengan perancangan yang dibuat. Proses pengujian didukung dengan perangkat keras dan lunak yang digunakan yaitu processor intel Core I3 2350M 2.3M , RAM 2 GB dan Matlab 7.0.4. Proses menjalankan program Matlab 7.0.4 dapat dijalankan dengan langkahlangkah sebagai berikut: a. Klik gambar atau simbol Matlab pada desktop laptop. Gambar 4.1. memperlihatkan simbol matlab yang tertera pada desktop laptop.
Gambar 4.1. Simbol Matlab
49
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
50
b. Setelah selesai klik simbol matlab pada desktop maka akan muncul tampilan awal matlab seperti diperlihatkan pada gambar 4.2. 1 3
2
Gambar 4.2. Tampilan awal matlab
Keterangan gambar : 1. Directory 2. Current directory 3. Command window
c. Setelah muncul tampilan awal seperti yang ditunjukkan pada gambar 4.1 maka klik pada directory dan diganti dengan directory file yang digunakan untuk menyimpan program. Pada current directory akan muncul semua file program yang sudah dibuat seperti ditunjukkan pada tanda nomor 2. Tanda nomor 3 adalah command window digunakan untuk memanggil file GUI. Cara memanggil GUI yaitu dengan mengetik nama file “Guy” pada command window setelah itu Enter maka akan muncul tampilan GUI seperti diperlihatkan pada gambar 4.3.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
51
1 2
Gambar 4.3. Tampilan utama GUI setelah enter
d. Pada Tampilan utama GUI terdapat tampilan nilai-nilai sebagai variabel perhitungan untuk nilai batas potong, Segment averaging, KNN dan User. Seperti diperlihatkan pada gambar 4.4.
4 8
3
2
1
5 9
6 10
Gambar 4.4. Tampilan utama GUI
7
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
52
Keterangan gambar : 1. Tanda nomor 1 merupakan tampilan hasil ekstraksi rekaman 2. Tanda nomor 2 merupakan tampilan hasil ekstraksi ciri DCT 3. Tanda nomor 3 digunakan untuk menampilkan ucapan yang sesuai dengan ucapan user 4. Tanda nomor 4 merupakan tampilan variabel batas potong yang terdiri dari 0.2, 0.3, 0.4 dan 0.5 5. Tanda nomor 5 merupakan tampilan segment averaging yang terdiri dari 4, 8, 16, 32, 64, 128, dan 256 6. Tanda nomor 6 merupakan tampilan k-nearest neighbor (KNN) yang terdiri dari 1, 3, 5 dan 7 7. Tanda nomor 7 merupakan tampilan user yang terdiri dari user 1, user 2, user 3 8. Tanda nomor 8 merupakan pushbutton yang digunakan untuk memulai proses perekaman. 9. Tanda nomor 9 merupakan pushbutton digunakan untuk reset program agar dapat memulai perekaman ulang. 10. Tanda nomor 10 merupakan pushbutton digunakan untuk keluar dari program guy e. Setelah pemilihan nilai segment averaging, k-nearest neighbor (KNN), variabel batas potong dan user maka proses selanjutnya yaitu menekan tombol “REKAM” untuk merekam ucapan user. Sinyal hasil perekaman akan muncul di “HASIL REKAMAN” dan gambar sinyal hasil perhitungan DCT akan muncul di “HASIL EKSTRAKSI DCT”. f. Setelah proses perekaman selesai dan apabila ingin keluar dari program guy cukup dengan menekan tombol “KELUAR” pada GUI.
4.1.1 Pop up menu 1 ”VARIABEL BATAS POTONG” , Pop up menu 2 “SEGMENT AVERAGING”, Pop up menu 3 “KNN” dan Pop up menu 7 “USER” Pop up menu 1, pop up menu 2, pop up menu 3, pop up menu 7 merupakan bagian tampilan GUI yang digunakan untuk memilihi variabel nilai yang telah ditentukan. Pop up menu 1 diberi nama “VARIABEL BATAS POTONG” yaitu dengan variabel nilai 0.2,
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
53
0.3, 0.4, dan 0.5. Listing program “VARIABEL BATAS POTONG” diperlihatkan pada gambar 4.5. function popupmenu1_Callback(hObject, eventdata, handles) indeks=get (handles.popupmenu1, 'value'); switch indeks case 1 bataspotong=0.2; case 1 bataspotong=0.3; case 1 bataspotong=0.4; case 1 bataspotong=0.5; end handles.pot=bataspotong; guidata(hObject,handles);
Gambar 4.5. Listing program Pop up menu 1 Program di atas berisikan inisialisasi “VARIABEL BATAS POTONG”. Nilai “VARIABEL BATAS POTONG” diinisialisasi dengan nama “bataspotong”. Nama tersebut berfungsi untuk inisialisasi nilai pop up menu 1. Inisialisasi batas potong diubah menjadi “pot” dan diikuti dengan “handles”. Program di atas bertujuan agar setiap nilai batas potong yang sudah dimasukan bisa dikenali atau dipanggil. Pada pop up menu 2 diberi nama “SEGMENT AVERAGING” dengan variabel nilai 8, 16, 32, 64, 128, dan 256. Listing program pada “SEGMENT AVERAGING” hampir sama dengan “VARIABEL BATAS POTONG” karena mempunyai fungsi yang sama yaitu untuk memilih variabel nilai yang telah ditentukan. Listing program “SEGMENT AVERAGING” diperlihatkan pada gambar 4.6. function popupmenu2_Callback(hObject, eventdata, handles) indeks=get(handles.popupmenu2,'Value'); switch indeks case 1 fram=4; case 2 fram=8; case 3 fram=16; case 4 fram=32;
Gambar 4.6. Listing program “SEGMENT AVERAGING”
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
54
case 5 fram=64; case 6 fram=128; case 7 fram=256; end handles.frame=fram; guidata(hObject,handles);
Gambar 4.6. (lanjutan) Listing program “SEGMENT AVERAGING” Program
di
atas
berisi
inisialisasi
“SEGMENT
AVERAGING”.
Nilai
“SEGMENT AVERAGING” diinisialisasi dengan nama “fram”. Inisialisasi “fram” sama dengan inisialisasi “frame” yang diikuti dengan “handles”. Handles adalah sebuah inisialisasi yang digunakan agar dapat dipanggil dalam file.m . Inisialisasi program pada pop up menu 2 bertujuan agar setiap nilai segment averaging dapat dikenali atau dipanggil. Pop up menu 3 diberi nama “KNN” dengan variabel nilai 1, 3, 5, dan 7. Listing program “KNN” diperlihatkan pada gambar 4.7. function popupmenu3_Callback(hObject, eventdata, handles) indeks=get(handles.popupmenu2,'Value'); switch indeks case 1 knn=1; case 2 knn=3; case 3 knn=5; case 4 knn=7; end handles.nearest=knn; guidata(hObject,handles);
Gambar 4.7. Listing program “KNN” Program di atas berisi inisialisasi “KNN” untuk penentuan keluaran ucapan. Variabel nilai KNN digunakan untuk memilih nilai KNN yang sudah ditentukan. Inisialisasi program pada pop up menu 3 bertujuan agar setiap nilai KNN dapat dikenali atau dipanggil. Pop up menu 7 beri nama “USER”. Listing program “USER” diperlihatkan pada gambar 4.8.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
55
function popupmenu7_Callback(hObject, eventdata, handles) indeks=get(handles.popupmenu6,'Value'); switch indeks case 1 user=1; case 2 user=2; case 3 user=3;
end handles.xuser=user; guidata(hObject,handles);
Gambar 4.8. Listing program “USER” Program di atas berisi inisialisasi “USER” dengan masukan tiga user. Inisialisasi tersebut digunakan untuk memilih masing-masing user yang sudah ditentukan pada perancangan. Inisialisasi “Case” digunakan untuk menentukan user yang akan dikenali ucapannya di database sesuai dengan user yang dipilih.
4.1.2 Pushbutton 1 Tombol “REKAM” Pushbutton 1 merupakan tombol “REKAM” dan merupakan tombol utama dalam proses perekaman ucapan user untuk mengatur kecepatan putar kipas AC. Tombol “REKAM” berisikan beberapa sub proses program untuk proses perekaman ucapan user. Sub proses tersebut terdiri dari perekaman ucapan user , Normalisasi, pemotongan Sinyal (potong kiri, potong kanan),windowing (Hamming), zero padding, ekstraksi ciri DCT, pengambilan variabel batas potong, Segment averaging, KNN dan pemilihan user. Listing program perekaman ucapan user diperlihatkan pada gambar 4.9. sample_length=1,5; sample_freq=6000; sample_time=(sample_length*sample_freq); x=wavrecord(sample_time, sample_freq); axes(handles.axes1) plot(x);
Gambar 4.9. Listing program “REKAM” Listing program “REKAM” di atas berisi perekaman ucapan user. Program sample_length merupakan durasi perekaman ucapan selama 1,5 detik dan program sample_freq merupakan frekuensi yang digunakan yaitu 6000 Hz. Pada program
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
56
sample_time didapat hasil perkalian antar durasi waktu dan frekuensi yang akan ditampilkan pada gambar hasil rekaman sebesar 2400 Hz. Program wavrecord digunakan untuk merekam ucapan user dan hasil perekaman akan ditampilkan dalam bentuk plot pada “HASIL REKAMAN”. Listing Program axes(handles.axes1) digunakan untuk menampilkan hasil perekaman. Handles digunakan untuk mengatur masukan dan keluaran program. Hasil rekaman ucapan user, diinisialisasi dengan “x”. Inisialisasi “x” ini yang diplot-kan ke dalam “axes.1”. Setelah perekaman ucapan user dengan variabel batas potong, segment averaging, KNN, dan pemilihan user selesai dilakukan maka tampilan berupa plot pada “HASIL REKAMAN” maka proses selanjutnya yaitu proses ekstraksi ciri DCT dengan hasil keluarannya berupa plot yang akan ditampilkan pada “HASIL EKSTRAKSI DCT”. Pada proses eksraksi ciri DCT akan ada beberapa proses yang dijalankan yaitu preprocessing yang di dalamnya terdapat Normalisasi, pemotongan sinyal (potong kiri, potong kanan), windowing (Hamming), zero padding, DCT dan segment averaging (frame averaging) yang disimpan dalam variabel “y” . Listing program ditunjukkan pada gambar 4.10. b0=handles.bpotong; fram=handles.frame; suser=handles.xuser; knn=handles.nearest; %Normalisasi x1=x/max(abs(x)); %potong kiri b1=find(x1>b0 | x1<-b0); x1(1:b1(1))=[];
%potong kanan x2=fliplr(x1'); b2=find(x2>b0|x2<-b0); x2(1:b2(1))=[]; x2=fliplr(x2); %hamming h=hamming(length(x2)); x3=x2.*h'; %zero padding usig=2048; x3(usig)=0;
Gambar 4.10. Listing program ekstraksi ciri DCT
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
57
X4=x3(1:usig); %DCT x5=abs(dct(x4)); x5=log(x5); %reshape x6=reshape(x1,fram,[]); x7=mean(x6); y=x7(:);
axes(handles.axes2) plot(y);
Gambar 4.10. (lanjutan) Listing program ekstraksi ciri DCT Listing program di atas bertujuan untuk menampilkan keluaran plot pada “HASIL EKSTRAKSI DCT”. Setelah proses perekaman ucapan user dilanjutkan dengan Pre processing. Dari hasil ekstraksi ciri DCT di atas maka program axes(handles.axes2) akan digunakan untuk menampilkan hasil perekaman dengan plot variabel “y”. Hasil rekaman ucapan user yang diplotkan dalam axes2. Proses selanjutnya setelah gambar plot hasil ekstraksi ciri adalah proses pemanggilan database yang disesuaikan dengan variasi nilai batas potong dan segment averaging
yang telah dipilih sebelumnya. Listing program pemanggilan database
ditunjukan pada gambar 4.11. if(b0==0.2) & (fram==4) & (suser==1) load db024 elseif(b0==0.3) & (fram==4) & (suser==1) load db034 elseif(b0==0.4) & (fram==4) & (suser==1) load db044 elseif(b0==0.5) & (fram==4) & (suser==1) load db054 elseif(b0==0.2) & (fram==8) & (suser==1) load db028 elseif(b0==0.3) & (fram==8) & (suser==1) load db038
elseif(b0==0.4) & (fram==8) & (suser==1) load db048
Gambar 4.11. Listing program pemanggilan database
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
elseif(b0==0.5) & (fram==8) & (suser==1) load db058 elseif(b0==0.2) & (fram==16) & (suser==1) load db0216 elseif(b0==0.3) & (fram==16) & (suser==1) load db0316 elseif (b0==0.4) & (fram==16) & (suser==1) load db0416 elseif (b0==0.5) & (fram==16) & (suser==1) load db0516 elseif (b0==0.2) & (fram==32) & (suser==1) load db0232 elseif(b0==0.3) & (fram==32) & (suser==1) load db0332 elseif(b0==0.4) & (fram==32) & (suser==1) load db0432
elseif(b0==0.5) & (fram==32) & (suser==1) load db0532 elseif (b0==0.2) & (fram==64) & (suser==1) load db0264 elseif(b0==0.3) & (fram==64) & (suser==1) load db0364 elseif(b0==0.4) & (fram==64) & (suser==1) load db0464 elseif(b0==0.5) & (fram==64) & (suser==1) load db0564 elseif (b0==0.2) & (fram==128) & (suser==1) load db02128 elseif(b0==0.3) & (fram==128) & (suser==1) load db03128 elseif(b0==0.4) & (fram==128) & (suser==1) load db04128 elseif(b0==0.5) & (fram==128) & (suser==1) load db05128
Gambar 4.11. (lanjutan) Listing program pemanggilan database
58
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
elseif (b0==0.2) & (fram==256) & (suser==1) load db02256 elseif(b0==0.3) & (fram==256) & (suser==1) load db03256 elseif(b0==0.4) & (fram==256) & (suser==1) load db04256 elseif(b0==0.5) & (fram==256) & (suser==1) load db05256 elseif(b0==0.2) & (fram==4) & (suser==2) load db124 elseif(b0==0.3) & (fram==4) & (suser==2) load db134 elseif(b0==0.4) & (fram==4) & (suser==2) load db144 elseif(b0==0.5) & (fram==4) & (suser==2) load db154
elseif(b0==0.2) & (fram==8) & (suser==2) load db128 elseif(b0==0.3) & (fram==8) & (suser==2) load db138 elseif(b0==0.4) & (fram==8) & (suser==2) load db148 elseif(b0==0.5) & (fram==8) & (suser==2) load db158 elseif(b0==0.2) & (fram==16) & (suser==2) load db1216 elseif(b0==0.3) & (fram==16) & (suser==2) load db1316 elseif (b0==0.4) & (fram==16) & (suser==2) load db1416 elseif (b0==0.5) & (fram==16) & (suser==2) load db1516 elseif (b0==0.2) & (fram==32) & (suser==2) load db1232
Gambar 4.11. (lanjutan) Listing program pemanggilan database
59
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
elseif(b0==0.3) & (fram==32) & (suser==2) load db1332 elseif(b0==0.4) & (fram==32) & (suser==2) load db1432 elseif(b0==0.5) & (fram==32) & (suser==2) load db1532 elseif (b0==0.2) & (fram==64) & (suser==2) load db1264 elseif(b0==0.3) & (fram==64) & (suser==2) load db1364 elseif(b0==0.4) & (fram==64) & (suser==2) load db1464 elseif(b0==0.5) & (fram==64) & (suser==2) load db1564 elseif (b0==0.2) & (fram==128) & (suser==2) load db12128
elseif(b0==0.3) & (fram==128) & (suser==2) load db13128 elseif(b0==0.4) & (fram==128) & (suser==2) load db14128 elseif(b0==0.5) & (fram==128) & (suser==2) load db15128 elseif (b0==0.2) & (fram==256) & (suser==2) load db12256 elseif(b0==0.3) & (fram==256) & (suser==2) load db13256 elseif(b0==0.4) & (fram==256) & (suser==2) load db14256 elseif(b0==0.5) & (fram==256) & (suser==2) load db15256 elseif(b0==0.2) & (fram==4) & (suser==3) load db224 elseif(b0==0.3) & (fram==4) & (suser==3) load db234
Gambar 4.11. (lanjutan) Listing program pemanggilan database
60
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
elseif(b0==0.4) & (fram==4) & (suser==3) load db244 elseif(b0==0.5) & (fram==4) & (suser==3) load db254 elseif(b0==0.2) & (fram==8) & (suser==3) load db228 elseif(b0==0.3) & (fram==8) & (suser==3) load db238 elseif(b0==0.4) & (fram==8) & (suser==3) load db248 elseif(b0==0.5) & (fram==8) & (suser==3) load db258 elseif(b0==0.2) & (fram==16) & (suser==3) load db2216 elseif(b0==0.3) & (fram==16) & (suser==3) load db2316
elseif (b0==0.4) & (fram==16) & (suser==3) load db2416 elseif (b0==0.5) & (fram==16) & (suser==3) load db2516 elseif (b0==0.2) & (fram==32) & (suser==3) load db2232 elseif(b0==0.3) & (fram==32) & (suser==3) load db2332 elseif(b0==0.4) & (fram==32) & (suser==3) load db2432 elseif(b0==0.5) & (fram==32) & (suser==3) load db2532 elseif (b0==0.2) & (fram==64) & (suser==3) load db2264 elseif(b0==0.3) & (fram==64) & (suser==3) load db2364 elseif(b0==0.4) & (fram==64) & (suser==3) load db2464
Gambar 4.11. (lanjutan) Listing program pemanggilan database
61
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
62
elseif(b0==0.5) & (fram==64) & (suser==3) load db2564 elseif (b0==0.2) & (fram==256) & (suser==3) load db22256 elseif(b0==0.3) & (fram==256) & (suser==3) load db23256 elseif(b0==0.4) & (fram==256) & (suser==3) load db24256 elseif(b0==0.5) & (fram==256) & (suser==3) load db25256 end
Gambar 4.11. (lanjutan) Listing program pemanggilan database Listing program di atas merupakan pemanggilan database yang di dalam database terdapat program variabel batas potong, program segment averaging dan program pemilihan user. Program tersebut digunakan untuk mencocokan data yang telah tersimpan dengan data ucapan user. Proses pemanggilan database menggunakan fungsi if else fungsi logika yang digunakan bertujuan agar dapat mencocokan variabel batas potong, segment averaging dan pemilihan user yang dipilih oleh user. Proses pembuatan database berdasarkan masing-masing nilai variabel batas potong, segment averaging dan pemilihan user yang sudah ditentukan dan disimpan dalam bentuk file.mat di dalam satu directory dengan nama seperti contoh pada Gambar 4.11. Listing program database yaitu db25256. Tujuan pembuatan file.mat agar mudah dilakukan pemanggilan di dalam program database dan di dalam file.mat terdapat data ucapan hidup, cepat, lambat, dan mati yang sudah dimasukan variabel batas potong, segment averaging dan pemilihan user yang sudah ditentukan untuk pengenalan ucapan. Pada saat pembuatan database setiap nama file.wav sesuai dengan ucapan masing-masing user yaitu user 1 menggunakan nama file 1 sampai 10, user 2 menggunakan nama file 11 sampai 20 dan user 3 menggunakan nama file 21 sampai 30. Pembuatan database ini diperlihatkan pada program
“function
z=zciri(fwav,b0,fram)“.
diperlihatkan pada gambar 4.12.
listing
program
pembuatan
database
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
function dbxciri b0=0.5; fram=256; z1=zciri ('hidup',b0,fram); z2=zciri ('cepat',b0,fram); z3=zciri ('lambat',b0,fram); z4=zciri ('mati',b0,fram);
z=[z1 z2 z3 z4]; save db25256 z %=============================================================== %INTERNAL FUNCTION function z=zciri(fwav,b0,fram) x1=wavread([fwav '21.wav']);y=potong(x1,b0);e1=xdct(y,fram); x2=wavread([fwav '22.wav']);y=potong(x2,b0);e2=xdct(y,fram); x3=wavread([fwav '23.wav']);y=potong(x3,b0);e3=xdct(y,fram); x4=wavread([fwav '24.wav']);y=potong(x4,b0);e4=xdct(y,fram); x5=wavread([fwav '25.wav']);y=potong(x5,b0);e5=xdct(y,fram); x6=wavread([fwav '26.wav']);y=potong(x6,b0);e6=xdct(y,fram); x7=wavread([fwav '27.wav']);y=potong(x7,b0);e7=xdct(y,fram); x8=wavread([fwav '28.wav']);y=potong(x8,b0);e8=xdct(y,fram); x9=wavread([fwav '29.wav']);y=potong(x9,b0);e9=xdct(y,fram); x10=wavread([fwav '30.wav']);y=potong(x10,b0);e10=xdct(y,fram); z=[e1 e2 e3 e4 e5 e6 e7 e8 e9 e10]; %=============================================================== function bp=potong(x0,b0); %Normalisasi x1=x0/max(abs(x0));
%potong kiri b1=find(x1>b0 | x1<-b0); x1(1:b1(1))=[]; %Potong kanan x2=fliplr(x1'); b2=find(x2>b0 | x2<-b0); x2(1:b2(1))=[]; x2=fliplr(x2); bp=x2; %===============================================================
Gambar 4.12. Listing program pembuatan database
63
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
64
function y=xdct(x0,fram); %windowing h=hamming(length(x0)); x0=x0.*h'; %zero padding usig=2048; x0(usig)=0; x0=x0(1:usig); %DCT x1=abs(dct(x0)); x1=log(x1); %reshape x2=reshape(x1,fram,[]); x2=mean(x2); y=x2(:);
Gambar 4.12. (lanjutan) Listing program pembuatan database Listing program database di atas mirip dengan program pada Gambar 4.11. Pada inisialisasi Internal Function terdapat variabel x1 sampai x10 yang merupakan pemanggilan teradap file ucapan hidup, cepat, lambat dan mati yang sudah direkam dan disimpan dalam bentuk wav. Proses selanjutnya yaitu eksraksi ciri DCT dan beberapa proses yang dijalankan yaitu preprocessing yang di dalamnya terdapat Normalisasi, pemotongan sinyal (potong kiri, potong kanan), windowing (Hamming), zero padding, DCT dan segment averaging. Proses selanjutnya setelah proses pemanggilan database yang sudah dibandingkan dengan ucapan user menggunakan fungsi jarak divergensi adalah proses k-nearest neighbor untuk penentuan keluarannya sesuai nilai KNN yang sudah di tentukan yaitu 1, 3, 5 dan 7. Listing program perhitungan pembanding (jarak divergensi) dan k-nearest neighbor dipelihatkan pada gambar 4.13. for n=1:40 divergensix(n)=divergensi(y,z(:,n)); end divergensimin=find(min(divergensix)==divergensix); mindivergensix=min(divergensix) [x1,x2]=sort(divergensix,'ascend')
Gambar 4.13. Listing program perhitungan fungsi K-Nearest Neighbor
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
65
k=knn kj=x1(1:k); kn=x2(1:k) hk=ceil(kn/10) z=modus(hk) diveout={'hidup','cepat','lambat','mati'}; hasilout=diveout(z); set(handles.edit1,'string',hasilout);
Gambar 4.13. (lanjutan) Listing program perhitungan fungsi K-Nearest Neighbor Listing program pada Gambar 4.13. digunakan untuk perhitungan fungsi jarak dan K-Nearest Neighbor. Program “ascend” digunakan untuk menentukan nilai jarak minimal dan dari hasil nilai jarak digunakan untuk menentukan ucapan user yang berhasil dikenali dan
akan
ditampikan
dalam
bentuk
teks
seperti
pada
program
“diveout={'hidup','cepat','lambat','mati'}” . Program “k=knn” digunakan untuk menentukan banyaknya nilai sampel terdekat yang sering muncul dengan menggunakan variasi nilai KNN yaitu 1, 3, 5 dan 7. Setelah beberapa proses pada Gambar 4.13. dilakukan maka proses selanjutnya adalah pengiriman data “string” ke mikrokontroler. Listing program pengiriman serial diperlihatkan pada gambar 4.14. srl=strcmp('hidup',hasilout); if srl==1 delete(instrfind); pause (0.1); s=serial('COM1','BaudRate',9600,'DataBits',8,'parity','none','StopBits',1,'FlowControl','n one'); fopen(s); fprintf(s,'%c','H') fclose(s); delete(s); clear s; end
Gambar 4.14. Listing program pengiriman data serial ke mikrokontroler Listing program di atas digunakan untuk mengirim data secara serial ke mikrokontroler. Program “fprintf(s,'%c','H')” digunakan untuk mengirim data ucapan user yang berhasil dikenali berupa karakter kode ascii ke mikrokontroler melalui K 125 R. Tabel 4.1. memperlihatkan data ucapan hasil pengenalan yang akan dikirim.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
66
Tabel 4.1. Tabel Pengenalan Pada Mikrokontroler Pengenalan
Karakter
Hidup
H
Lambat
L
Cepat
C
Mati
M
4.1.3 Tombol “RESET” Fungsi dari tombol “RESET” adalah untuk mengulangi atau membersihkan gambar sinyal dan jenis ucapan hasil ekstraksi ciri DCT yang ditampilkan pada GUI. Listing program tombol “RESET” diperlihatkan pada gambar 4.15. function pushbutton2_Callback(hObject, eventdata, handles) axes(handles.axes1); plot(0); axes(handles.axes2); plot(0); set(handles.edit1,'string',' '); s=serial('COM1','BaudRate',9600,'DataBits',8,'parity','none','StopBits',1,'FlowControl','n one'); fopen(s); fprintf(s,'%c','M') fclose(s); delete(s); clear s;
Gambar 4.15. Listing program tombol “RESET”
4.1.4 Tombol “KELUAR” Tombol “KELUAR” merupakan tombol yang digunakan untuk keluar atau mengakhiri tampilan GUI. Ketika tombol “KELUAR” ditekan maka tampilan GUI akan tertutup dan kembali ke tampilan awal matlab. Listing program tombol “KELUAR” diperlihatkan pada gambar 4.16.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
67
function pushbutton4_Callback(hObject, eventdata, handles) delete(figure(Guy)); s=serial('COM1','BaudRate',9600,'DataBits',8,'parity','none','StopBits',1,'FlowControl','n one'); fopen(s); fprintf(s,'%c','M') fclose(s); delete(s); clear s;
Gambar 4.16. Listing program tombol “KELUAR”
4.2
Pengujian
Program
Pengenalan
Ucapan
terhadap
Tingkat
Pengenalan Ucapan User Secara Real Time dan Tidak Real Time Pengujian program terhadap pengenalan ucapan user dilakukan dengan mengubah nilai-nilai pada batas potong, segment averaging dan nilai fungsi k-nearest neighbor yang telah ditentukan untuk mencari tingkat pengenalan yang terbaik. Tujuan dari mencari tingkat pengenalan yang lebih baik agar program pengenalan dapat dengan mudah mengenali ucapan user dengan baik. Pada tahap pengujian dilakukan dengan dua cara yaitu secara tidak real time dan secara real time. Pengujian ucapan dilakukan secara real time dengan menggunakan variasi pengenalan terbaik dari hasil pengenalan secara tidak real time. Pengujian secara real time tidak bergantung pada pengenalan terbaik tetapi bisa menggunakan variasi pengenalan lainnya dengan masukan ucapan user.
4.2.1 Pengurangan Jumlah Elemen Koefisien Ekstraksi Ciri Pada pengenalan ucapan secara tidak real time dengan menggunakan tiga user terdapat sejumlah elemen koefisien ekstraksi ciri yang menyebabkan tingkat pengenalan terhadap ucapan sangat sedikit. Tingkat pengenalan terbaik yang didapat sebesar 89 atau 74,1 %. Untuk mengurangi jumlah elemen koefisien ekstraksi ciri maka digunakan metode segment averaging. Ukuran sinyal awal yang digunakan adalah 2048, dengan membaginya menggunakan kelipatan 2n diawali dengan n=3 sampai nilai n=7 sesuai varibel segment averaging yang sudah ditentukan dari pengujian secara tidak real time. Faktor pembagi data awal disebut dengan segment averaging dan hasil pembagian data awal dengan segment averaging menjadi hasil akhir koefisien ekstraksi ciri yang akan dipakai untuk
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
68
perhitungan selanjutnya. Tabel 4.2. memperlihatkan tingkat pengenalan setelah pembagian data awal dengan menggunakan pengenalan terbaik pada nilai KNN=1. Tabel 4.2. Hasil Tingkat Pengenalan Terbaik Setelah Pembagian Data Awal dengan Menggunakan Segment Averaging
1
Segment averaging (titik) 8
Jumlah Elemen Ekstraksi 256
2
16
128
75%
3
32
64
75,8%
4
64
32
80,8%
5
128
16
81,6%
No
Tingkat Pengenalan (%) 74,1%
Tabel 4.2. di atas memperlihatkan hasil tingkat pengenalan dengan menggunakan segment averaging. Dari data tingkat pengenalan dapat disimpulkan bahwa dengan menggunakan segment averaging tingkat pengenalan menjadi lebih baik. Listing program segment averaging diperlihatkan pada gambar 4.17. x6=reshape(x1,64,[]); x7=mean(x1); y=x7(:);
Gambar 4.17. Listing program segment averaging Pada tabel 4.3. merupakan data pengujian dengan tidak menggunakan segment averaging dengan menggunakan tingkat pengenalan pada data tidak real time. Pada pengujian tersebut menggunakan nilai batas potong 0,2, 0,3, 0,4, 0,5, dan nilai k-nearest neighbor yang digunakan yaitu 1, 3, 5 dan 7 dengan tingkat pengenalan dalam persen (%). Tabel 4.3. Tingkat Pengenalan (%) untuk Hasil Nilai Batas Potong dan K-Nearest Neighbor Tanpa Menggunakan Segment Averaging Nilai k-nearest neighbor
Nilai Batas Potong
1
3
5
7
0,2
72,5%
70,8%
72,5%
70,8%
0,3
70%
69,1%
67,5%
68,3%
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI Tabel 4.3. (lanjutan) Tingkat Pengenalan (%) untuk Hasil Nilai Batas Potong dan KNearest Neighbor Tanpa Menggunakan Segment Averaging 0,4
74,1%
71,6%
72,5%
70%
0,5
73.3%
71,6%
67,5%
70%
Presentase Pengenalan (%)
Pengaruh nilai batas potong tanpa segment averaging terhadap pengenalan ucapan 76 74 72
Batas Potong 0,2
70
Batas Potong 0,3
68
Batas Potong 0,4
66
Batas Potong 0,5
64 1
3
5
7
Nilai k-nearest neighbor Gambar 4.18. Pengaruh nilai batas potong tanpa segment averaging terhadap pengenalan ucapan
Presentase Pengenalan (%)
Pengaruh k-nearest neighbor tanpa segment averaging terhadap pengenalan ucapan 76 74 72 KNN=1
70
KNN=3
68
KNN=5
66
KNN=7
64 0,2
0,3
0,4
0,5
Batas Potong
Gambar 4.19. Pengaruh nilai k-nearest neighbor tanpa segment averaging terhadap pengenalan ucapan
69
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
70
Pada data gambar 4.18 dan gambar 4.19 di atas merupakan presentase pengenalan ucapan secara tidak real time terhadap batas potong dan k-nearest neighbor tanpa menggunakan segment averaging dengan menggunakan data ucapan tiga user secara tidak real time. Presentase yang didapat mengalami penurunan seperti diperlihatkan pada gambar 4.18 dan gambar 4.19 yang menunjukan presentase pengenalan hanya sekitar 67,5% - 74,1% . Hal disebabkan oleh pengurangan jumlah elemen koefisien ekstraksi ciri sehingga pada pengenalan dibutuhkan segment averaging agar hasil pengenalan ucapan lebih baik atau presentase pengenalan bisa meningkat.
4.2.2 Pengujian Tidak Real Time Pengujian secara tidak real time bertujuan untuk mengetahui atau mencari tingkat pengenalan terbaik dari setiap nilai variabel yang telah ditentukan yaitu pada batas potong, segment averaging, dan k-nearest neighbor. Hasil pengenalan terbaik digunakan untuk pengambilan data pengenalan ucapan secara real time. Pengujian ini menggunakan 3 user, setiap ucapan dari masing-masing user disimpan dengan nama file yang berbeda. Pada perekaman ucapan, terdapat empat macam ucapan user yang direkam yaitu hidup, lambat, cepat dan mati. Ucapan yang direkam sebanyak 20 data ucapan yang terbagi dalam 10 data ucapan pembentukan database dan 10 data percobaan pengenalan. Dengan demikian terdapat 20 data ucapan dari masing-masing user, maka total ucapan yang direkam untuk tiga user sebanyak 120 data ucapan. Pada pengujian tidak real time ini diperoleh data hasil tingkat pengenalan ucapan dari tiga user. Pengujian tidak real time dilakukan dengan cara mengubah nilai batas potong, segment averaging dan KNN pada M-file program ekstraksi ciri DCT setelah mengubah variabel dengan nilai yang pilih, program di Run sehinggga pada command window matlab didapat data hasil pengenalan ucapan. Data hasil pengenalan tidak real time yang sudah didapat diperlihatkan presentasenya dalam bentuk grafik. a.
Pengujian Tidak Real Time, Nilai Batas Potong dan segment averaging Tanpa Menggunakan Nilai K-Nearest Neighbor (K=1) Pada tabel 4.4 memperlihatkan data hasil pengujian nilai batas potong dan segment
averaging tanpa menggunakan nilai k-nearest neighbor secara tidak real time. Saat pengujian nilai dari batas potong (0,2, 0,3, 0,4, 0,5) dan segment averaging (4, 8, 16, 32, 64, 128, 256) dijalankan satu persatu untuk mendapatkan data hasil pengenalan ucapan.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
71
Data hasil pengenalan ucapan dengan menggunakan segment averaging pada tabel 4.4 bila dibandingkan dengan data tabel 4.3. Pengaruh nilai k-nearest neighbor tanpa segment averaging terhadap pengenalan ucapan menunjukan bahwa tingkat pengenalan pada tiga user terhadap ucapan meningkat. Hal ini cukup membantu untuk pengenalan ucapan secara real time. Tabel 4.4. memperlihat tingkat pengenalan tanpa KNN atau K=1. Tabel 4.4. Tingkat Pengenalan (%) untuk Hasil Nilai Batas Potong dan segment averaging Tanpa Menggunakan K-Nearest Neighbor Segment Averaging
Nilai Batas Potong
4
8
16
32
64
128
256
0,2
75,8%
74.1%
74,1%
75%
78,3%
78,3%
76,6%
0,3
71,6%
71,6%
73,3%
75%
78,3%
80%
79,1%
0,4
71,6%
70,8%
72,5%
73,3%
75%
76,6%
75,8%
0,5
73,3%
74,1%
75%
75,8%
78,3%
78,3%
78,3%
Pengaruh Segment averaging tanpa menggunakan k-nearest neighbor Presentase Pengenalan (%)
82 80 78 76
Batas Potong 0,2
74
Batas Potong 0,3
72
Batas Potong 0,4
70
Batas Potong 0,5
68 66 4
8
16
32 64 128 Segment Averaging
256
Gambar 4.20. Pengaruh perubahan segment averaging (lebar frame) tanpa menggunakan k-nearest neighoar (K=1) terhadap ucapan
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
72
Pengaruh batas potong tanpa menggunakan k-nearest neighbor 82 Presentase Pengenalan (%)
80 78
Segment averaging 4
76
Segment averaging 82
74
Segment averaging 16
72
Segment averaging 32 Segment averaging 64
70
Segment averaging 128
68
Segment averaging 256
66 0,2
0,3
0,4
0,5
Batas Potong
Gambar 4.21. Pengaruh perubahan nilai batas potong tanpa menggunakan k-nearest neighbor (K=1) terhadap ucapan Pada gambar 4.20 dan gambar 4.21 memperlihatkan presentase pengujian nilai batas potong dan segment averaging tanpa menggunakan nilai k-nearest neighbor untuk pengenalan ucapan secara tidak real time. Data yang didapat yaitu untuk pengenalan ucapan terbaik berada pada nilai batas potong 0,3 dengan segment averaging 128 yang mampu mengenali ucapan hingga 80 % sedangkan pengenalan ucapan yang paling rendah berada di batas potong 0,4 dan segment averaging 8 yang hanya mengenali ucapan 70,8 %.
b.
Pengujian Tidak Real Time Nilai Batas Potong dan Segment Averaging Dengan Menggunakan Nilai K-Nearest Neighbor (K=3) Tabel 4.5 merupakan pengenalan ucapan dengan menggunakan batas potong,
segment averaging dan k-nearest neighbor (k=3). Data tersebut dibuat dalam bentuk grafik seperti di perlihatkan pada gambar 4.22 dan gambar 4.23.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
73
Tabel 4.5. Tingkat Pengenalan (%) untuk Hasil Nilai Batas Potong Dan Segment Averaging Menggunakan K-Nearest Neighbor (K=3) Nilai
Segment Averaging
Batas Potong
4
8
16
32
64
128
256
0,2
73,3%
70,8%
70%
70%
79,1%
79,1%
79,1%
0,3
67,5%
67,5%
68,3%
70%
79,1%
81,6%
76,6%
0,4
70%
70%
70,8%
73,3%
80,8%
78,3%
79,1%
0,5
70%
70%
70,8%
71,6%
80,8%
78,3%
79,1%
Pengaruh batas potong 90
Presentase Pengenalan (%)
80 70 Segment averaging 4
60
Segment averaging 82
50
Segment averaging 16 40
Segment averaging 32 Segment averaging 64
30
Segment averaging 128
20
Segment averaging 256 10 0 0,2
0,3
0,4
0,5
Batas potong
Gambar 4.22. Pengaruh perubahan nilai batas potong menggunakan k-nearest neighbor (k=3) terhadap ucapan
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
74
Pengaruh segment averaging 100 90 Presentase pengenalan (%)
80 70 60 Batas potong 0,2
50
Batas potong 0,3
40
Batas potong 0,4
30
Batas potong 0,5
20 10 0 4
8
16
32
64
Segment Averaging
Gambar 4.23. Pengaruh perubahan segment averaging menggunakan K-Nearest Neighbor (K=3) terhadap ucapan Tabel 4.5, gambar 4.22 dan gambar 4.23 memperlihatkan hasil dari pengaruh perubahan nilai batas potong tanpa menggunakan k-nearest neighbor terhadap penganalan ucapan secara tidak real time. Pengaruh perubahan tersebut memperlihatkan hasil pengenalan ucapan terbaik sampai 81,6 % dengan mengunakan batas potong 0,3 dan segment averaging 128. Sedangkan pengenalan terendah pada 70 %. Dengan pengenalan ucapan terbaik tersebut dapat digunakan untuk pengujian secara real time. c.
Pengujian Tidak Real Time Nilai Batas Potong dan Segment Averaging Dengan Menggunakan Nilai K-Nearest Neighbor (K=5) Tabel 4.6 merupakan pengenalan ucapan dengan menggunakan batas potong,
segment averaging dan k-nearest neighbor (k=5). Data tersebut dibuat dalam bentuk grafik seperti di perlihatkan pada gambar 4.24 dan gambar 4.25 di atas
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
75
Tabel 4.6. Tingkat Pengenalan (%) untuk Hasil Nilai Batas Potong dan Segment Averaging Menggunakan K-Nearest Neighbor (K=5) Nilai
Segment Averaging
Batas Potong
4
8
16
32
64
128
256
0,2
71,6%
71,6%
70,8%
72,5%
80%
80,8%
80%
0,3
67,5%
66,6%
66,6%
69,1%
80%
81,6%
79,6%
0,4
67,5%
70%
70 %
72,5%
76,6%
80%
78,3%
0,5
67,5%
68,3%
69,1%
70,8%
75,8%
80%
77,5%
Pengaruh Batas Potong 90
Presentase pengenalan (%)
80 70 Segment averaging 4
60
Segment averaging 8
50
Segment averaging 16 40
Segment averaging 32
30
Segment averaging 64
20
Segment averaging 128 Segment averaging 256
10 0 0,2
0,3
0,4
0,5
Batas Potong
Gambar 4.24. Pengaruh perubahan nilai batas potong menggunakan k-nearest neighbor (K=5) terhadap ucapan
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
76
Pengaruh segment averaging 90
Presentase Pengenalan (%)
80 70 60 50
batas potong 0,2
40
batas potong 0,3 batas potong 0,4
30
batas potong 0,5
20 10 0 4
8
16
32
64
128
256
Segment Averaging
Gambar 4.25. Pengaruh perubahan segment averaging menggunakan k-nearest neighbor (K=5) terhadap ucapan Akibat pengaruh dari nilai-nilai tersebut, didapat hasil pengenalan ucapan terbaik yang akan digunakan untuk pengujian secara real time. Pengenalan terbaik berada pada batas potong 0,3 dan segment averaging 128 yaitu dengan hasil pengenalan 81,6 % dan hasil pengenalan ucapan terkecil yaitu 66,6 %. d.
Pengujian Tidak Real Time Nilai Batas Potong dan Segment Averaging Dengan Menggunakan Nilai K-Nearest Neighbor (K=7)
Tabel 4.7. Tingkat Pengenalan (%) untuk Hasil Nilai Batas Potong dan Segment Averaging Menggunakan K-Nearest Neighbor (K=7) Nilai
Segment Averaging
Batas Potong
4
8
16
32
64
128
256
0,2
70%
70%
69,1%
73,3%
80,8%
81,6%
80%
0,3
65%
64,1%
64,1%
67,5%
77,5%
80,8%
79,6%
0,4
65%
66,6%
67,5%
71,6%
75%
80%
79,6%
0,5
68,3%
69,1%
68,3%
70%
74,1%
77,5%
75,8%
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
77
Pengaruh Batas Potong 90
Presentase Pengenalan (%)
80 70 Segment everaging 4
60
Segment everaging 8
50
Segment everaging 16
40
Segment everaging 32
30
Segment everaging 64
20
Segment everaging 128
10
Segment everaging 256
0 0,2
0,3
0,4
0,5
Batas Potong
Gambar 4.26. Pengaruh perubahan nilai batas potong menggunakan k-nearest neighbor (K=7) terhadap ucapan
Pengaruh Segment Averaging 90 Presentase Pengenalan (%0
80 70 60 50
Batas potong 0,2
40
Batas potong 0,3
30
Batas potong 0,4
20
Batas potong 0,5
10 0 4
8
16
32
64
128
256
Segment Averaging
Gambar 4.27. Pengaruh perubahan nilai segment averaging menggunakan k-nearest neighbor (K=7) terhadap ucapan
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
78
Pada gambar 4.26 dan gambar 4.27 memperlihatkan presentase pengujian nilai batas potong dan segment averaging tanpa menggunakan nilai k-nearest neighbor untuk pengenalan ucapan secara tidak real time dengan menggunakan KNN 7. Data yang dapat digunakan untuk pengenalan ucapan terbaik berada pada nilai batas potong 0,2 dengan segment averaging 128 yang mampu mengenali ucapan hingga 81,6 % sedangkan pengenalan ucapan yang terkecil ada di batas potong 0,3 dan segment averaging 8 dan segment averaging 16 yang hanya mengenali ucapan 64,1 %. Dari beberapa grafik pengaruh batas potong, segment averaging dengan variabel KNN 1, 3, 5, 7 terhadap ucapan pada gambar di atas didapat hasil hasil pengenalan terbaik. Bila dilihat dari tabel dan grafik dapat disimpulkan bahwa pengenalan terbaik berada pada nilai batas potong 0,2 ; 0,3 ; 0,4 ; 0,5 dan segment averaging 128 dengan variasi nilai KNN (1, 3, 5, 7). Dari variasi nilai terbaik tersebut diambil pengenalan terbaik yang paling tertinggi dan digunakan untuk pengambilan data secara real time. Pengenalan ucapan terbaik tersebut dengan menggunakan batas potong 0,2, segment averaging 128, dan KNN 7 dengan total pengenalan ucapan sebesar 98 atau presentasenya sekitar 81,6 %.
4.2.3 Pengujian Real Time Pengujian real time merupakan pengujian dengan langsung menggunakan ucapan user sebagai masukan. Pengujiannya dilakukan oleh tiga user dengan cara user langsung mengucapkan ucapan ke arah mikrofon dan ucapan yang dikenali akan ditampilkan jenis ucapan pada GUI. Setiap ucapan user yang diuji yaitu ucapan yang sudah ditentukan sebelumnya dan tersimpan di database (hidup, lambat, cepat dan mati). Pada pengujian secara real time menggunakan pengenalan ucapan terbaik yang sudah dipilih pada pengujian tidak real time. Pada pengujian real time dilakukan sebanyak 10 kali pada setiap ucapan user dengan memilih batas potong 0,2, segment averaging 128 dan KNN 7 yang mempunyai total pengenalan ucapan lebih baik. Proses pengujian secara real time bertujuan untuk mengetahui keberhasilan program dalam mengenali ucapan dari masing-masing user. Tabel 4.8, 4,9, 4.10 dan 4.11 memperlihatkan data hasil percobaan secara real time dari masing-masing user.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
79
Tabel 4.8. Percobaan real time user 1 User 1 Jenis ucapan
Percobaan ke 1
2
3
4
5
6
7
8
9
10
Hidup
V
X
V
V
V
V
V
V
V
V
Lambat
V
V
V
X
V
V
V
V
V
X
Cepat
V
V
X
V
V
V
V
X
V
V
Mati
V
V
V
X
V
V
V
V
V
V
Tabel 4.9. Percobaan real time user 2 User 2 Jenis ucapan
Percobaan ke 1
2
3
4
5
6
7
8
9
10
Hidup
V
V
X
V
V
V
V
V
V
V
Lambat
V
V
V
V
V
V
V
X
X
V
Cepat
V
X
V
V
V
V
V
V
V
X
Mati
V
V
V
V
V
V
V
V
V
V
Tabel 4.10. Percobaan real time user 3 User 3 Jenis ucapan
Percobaan ke 1
2
3
4
5
6
7
8
9
10
Hidup
V
V
V
V
V
V
X
V
V
V
Lambat
V
X
V
X
V
V
V
V
V
V
Cepat
V
V
X
V
V
V
V
V
V
X
Mati
V
V
V
V
V
V
V
X
V
V
Keterangan : V = dikenali sebagai benar X = dikenali sebagai salah
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
80
Tabel 4.11. Percobaan Pengenalan Secara Real Time Dari Masing-Masing User Jumlah data pengenalan
Jumlah data percobaan
Presentase data
yang dikenal
yang dikenal
User 1
40
34
85 %
User 2
40
35
87,5 %
User 3
40
34
85 %
Jumlah
120
103
85,8 %
Data tabel 4.11 menunjukan jumlah presentase pengenalan ucapan yang dikenal dari tiga ucapan user yaitu sebesar 85,8 %. Hasil tersebut menunjukkan hasil pengenalan ucapan melebihi hasil percobaan pengenalan ucapan secara tidak real time yaitu 81,6 %. Percobaan secara real time dan tidak real time mempunyai selisih 4,2 % tetapi sistem bisa dijalankan dengan baik.
4.3
Gambaran Fisik alat (Hardware) Aplikasi pengenalan ucapan dengan ekstraksi ciri DCT dan fungsi jarak divergensi
untuk mengatur kecepatan kipas AC terdiri dari program (sofware) dan juga terdiri dari hardware yang berbentuk kotak untuk mekanik kipas AC dan menyimpan subsistem elektronik seperti diperlihatkan pada gambar 4.28.
23
23 1
13 2
Gambar 4.28. Bentuk fisik alat
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
81
Keterangan gambar: 1. Bentuk fisik kipas AC 2. Kotak untuk menyimpan subsistem elektronik Gambar 4.28 merupakan bentuk fisik alat yang terdiri dari kipas AC dan kotak yang didesain dari bahan akrilik setebal 3mm. Kotak ini memiliki panjang 23 cm, lebar 23 cm dan tinggi 13 cm. Kotak ini berfungsi sebagai pelindung subsistem rangkaian elektronik. Rangkaian elektronik pada kotak membutuhkan daya listrik untuk dapat bekerja. Rangkaian dihubungkan dengan jala-jala listrik lewat terminal AC 220 volt seperti diperlihatkan pada gambar 4.29.
1
2 3
4
Gambar 4.29. Terminal AC dan Saklar on-off Keterangan gambar: 1. Lubang pendingin rangkaian elektronik 2. Tombol reset atmega 8535 3. Terminal AC 220 volt 4. Saklar on-off Hardware pada gambar 4.29 di atas dapat bekerja apabila telah terhubung dengan jala-jala listrik yang dapat diputus dan dihubung dengan menggunakan Saklar on-off. Setelah rangkain terhubung dengan tegangan AC 220 volt dan Saklar pada posisi on maka rangkaian elektronik yang ada di dalam kotak akan bekerja. Subsistem rangkaian elektronik yang ada di dalam kotak terdiri dari rangkaian catu daya, rangkaian minimum sistem, rangkaian relay dan rangkaian penggerak kipas seperti diperlihatkan pada gambar 4.30.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
82
3 1
2
4
Gambar 4.30. Tampak bagian dalam kotak Keterangan gambar: 1. Trafo CT 1 A 2. Rangkaian catu daya 3. Rangkaian relay dan rangkaian penggerak kipas 4. Rangkaian minimum sistem
4.3.1 Subsistem Elektronik Pada gambar 4.30 diperlihatkan bagian subsistem elektronik yang terdiri dari rangkaian catu daya, rangkaian minimum sistem mikrokontroler, rangkaian relay dan rangkaian penggerak kipas. Tegangan AC 220 volt sebagai masukan diturunkan menggunakan trafo CT 1 A menjadi 15 volt kemudian tegangan tersebut diubah menjadi tegangan DC dengan menggunakan rangkaian catu daya dan diteruskan ke proses selanjutnya. Subsistem elektronik yang berada di dalam kotak seperti di perlihatkan pada gambar 4.30 saling mendukung sehingga rangkain dapat dijalankan dengan baik. Pada gambar-gambar
berikut
diperlihatkan
gambar
rangkain
yang
digunakan
untuk
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
83
menggerakan kipas diantaranya rangkaian catu daya, rangkaian minimum sistem mikrokontroler, modul K 125 R, rangkaian relay dan rangkaian penggerak kipas.
2
1
3 6
4
7
5 8
9
10
11
12
Gambar 4.31. Rangkaian catu daya 5 volt dan 12 volt Keterangan gambar : 1. Konektor AC 9 volt dan ground 2. LM 7812 3. LM 7805 4. Konektor keluaran DC 12 volt 5. Kapasitor 0,1µf 6. Dioda 1N4004 7. Konektor keluaran DC 5 volt 8. Terminal keluaran DC 12 volt 9. Terminal keluaran DC 5 volt 10. Kapasitor 0,1µF 11. Kapasitor 2200µF 12. Kapasitor 100µF Rangkaian catu daya seperti diperlihatkan pada gambar 4.31 menghasilkan tegangan DC 4,99 volt dan DC 11,78 volt. Tegangan DC 5 volt berfungsi sebagai catu daya untuk rangkaian lain yaitu rangkaian minimum sistem mikrokontroler, rangkaian relay, dan kipas pendingin di dalam kotak. Pada rangkaian catu daya keluaran 5 volt
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
84
digunakan untuk mensuplai rangkaian minimumsitem dan kipas pendingin udara di dalam kotak, sedangkan keluaran 12 volt digunakan untuk mensuplai rangkaian relay. Rangkaian minimum sistem mikrokontroler diperlihatkan pada gambar 4.32. Rangkaian ini digunakan untuk mengatur penerimaan data hasil inisialisasi dari matlab ke mikrokontroler yang akan diproses selanjutnya untuk menentukan nilai yang mengatur keadaan relay sehingga dapat menentukan keadaan kipas AC. Port ISP digunakan untuk komunikasi serial, Port B.0 – B.3 digunakan untuk mengontrol atau mengatur keadaan kipas melalui relay, port reset digunakan untuk reset program atau membersihkan program yang disimpan di atmega 8535, dan port tegangan 5 volt digunakan untuk masukan tegangan 5 volt pada rangkaian minimum sistem mikrokontroler.
1
2
5
3
6
7
4
7
Gambar 4.32. Rangkaian minimum sistem mikrokontroler Keterangan gambar : 1. Port D.0 - D.7 2. Port B.0 - B.7 3. Port C.0 - C.7 4. Port A.0 – A.7 5. Atmega 8535 6. Port reset 7. Port ISP 8. Port tegangan 5 volt
Modul serial K 125 R merupakan USB atmel AVR ISP Programmer yang dilengkapi dengan komunikasi USB ke serial. Dengan mendapat suplai dari laptop, modul
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
85
K 125 R dapat membantu dalam pemograman Mikrokontroler. Modul serial K 125 R diperlihatkan pada gambar 4.33.
3 1
2
Gambar 4.33. Modul serial (K 125 R) Keterangan gambar : 1. Port USB 2. Mode serial dan download program 3. Port ISP Rangkaian relay dan rangkaian penggerak kipas digunakan untuk mengatur keadaan putaran kipas AC. Gambar 4.34 memperlihatkan gambar rangkaian relay dan rangkaian penggerak kipas.
1
3
2
4 5
4 6
7
8
Gambar 4.34. Rangkaian relay dan rangkaian penggerak
9
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
86
Keterangan gambar : 1. Port masukkan ULN 2803 2. Penguat arus ULN 2803 3. Relay 4. Konektor dan terminal masukan 12 volt 5. Trimpot 1 M 6. Kapasitor non polar 1 µF 7. Konektor masukan AC 220 volt 8. Triac BT 137 9. Konektor kipas AC
Pada gambar 4.33 rangkaian ULN 2803 berfungsi untuk menguatkan arus keluaran dari Atmega 8535 untuk mengaktifkan relay. Terdapat 4 buah relay, salah satu common terminal relay dihubungkan dengan trimpot. Masing-masing nilai trimpot diatur nilai hambatannya agar dapat mengatur empat kondisi kecepatan kipas AC. Kipas akan berputar sesuai dangan keadaan putaran yang sudah ditentukan ketika salah satu relay diaktifkan.
4.4
Pengujian Alat (Hardware) Sebelum dilakukan pengujian terlebih dahulu port ISP K 125 R yang sudah
terhubung dengan minimum sistem mikrokontroler dihubungkan dengan port USB pada laptop. Setelah semua terhubung maka Saklar on agar semua subsistem elektronik di dalam kotak yang sudah saling terhubung bisa aktif. Rangkaian akan bekerja dan akan mengaktifkan kipas sesuai dengan 5 keadaan kipas yang sudah ditentukan ketika ada masukan ucapan atau perintah dari user.
4.4.1 Pengujian Rangkaian Catu Daya Pengujian rangkaian catu daya seperti diperlihatkan pada gambar 4.31 bertujuan agar dapat mengetahui keadaan rangkaian dapat berjalan sesuai dengan perancangan. Pada perancangan rangkain catu daya yang dirancang mempunyai keluaran tegangan DC 5 volt dan tegangan DC 12 volt agar dapat mensuplai rangkaian relay dan rangkaian minimum sistem mikrokontroler dan kipas pendingin kotak. Pengujian terhadap tegangan keluaran dari catu daya dilakukan dengan cara membandingkan nilai yang tertulis pada datasheet
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
87
(lihat lampiran datasheet LM78XX Series Voltage Regulators) dengan hasil pengukuran pada terminal keluaran rangkaian catu daya. Tabel 4.12 memperlihatkan perbandingan keluaran tegangan pada datasheet dan hasil pengukuran. Tabel. 4.12. Hasil Perbandingan Keluaran Tegangan Catu Daya Pengukuran tegangan
Pengukuran pada terminal
Datasheet
keluaran LM 7805
04,99 volt
4,8 - 5,2
LM 7812
11,78 volt
11,5 – 12,5
Tabel di atas memperlihatkan data hasil perbandingan tegangan pada catu daya. Dari data tersebut dapat disimpulkan bahwa rangkaian catu daya berjalan dengan baik atau sesuai dengan perancangan. Rangkaian catu daya dapat digunakan untuk mensuplai rangkaian minimum sistem mikrokontroler dan rangkaian relay.
4.4.2 Pengujian Program Mikrokontroler Pada Alat (Hardware) Pengujian program bertujuan untuk melihat apakah program sudah berjalan sesuai dengan perancangan. Program pada mikrokontroler ini terdiri dari program serial dan program untuk mengatur keadaan kipas angin, pada saat pengujian program dilakukan dengan dua cara yaitu pengujian secara tidak real time dan pengujian secara real time. Sebelum pengujian dilakukan secara tidak real time modul K 125 R sudah terhubung pada port USB pada laptop dan port ISP pada mikrokontroler. K 125 R berada pada Mode download program seperti pada gambar 4.33 sehingga dapat dilakukan download program dengan menggunakan program AvrOspII ke dalam minimum sistem mikrokontroler. Setelah download program selesai, mode download program diubah ke Mode serial agar dapat dilakukan pengiriman data serial.
a.
Pengujian Secara Tidak Real Time Pengujian secara tidak real time bertujuan untuk mengetahui apakah program serial
dapat bekerja dengan baik dan mengetahui apakah alat yang dibuat dapat bekerja dengan baik. Dalam pengujian ini pada program matlab dilakukan pengiriman data secara serial berupa karakter kode ascci dan akan diubah ke dalam bentuk hexadesimal sehingga dapat dikenali oleh mikrokontroler. Pengiriman data berupa karakter seperti pada listing program gambar 4.35 program “fprintf(s,'%c','M')” dilakukan pengubahan karakter secara
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
88
bergantian dan akan dikirim secara serial lewat K 125 R ke mikrokontroler . Karakter yang diterima di mikrokontroler adalah karakter yang sesuai dengan penentuan keadaan kipas pada perancangan sehingga dapat menggerakan kipas AC. Listing program pengiriman serial diperlihatkan pada gambar 4.35. s=serial('COM1','BaudRate',9600,'DataBits',8,'parity','none','StopBits',1,'FlowControl','n one'); fopen(s); fprintf(s,'%c','M') fclose(s); delete(s); clear s;
Gambar 4.35. Listing program pengiriman serial Setelah data dikirim secara serial seperti diperlihatkan pada gambar 4.35 di atas maka pada program mikrokontroler dilakukan penerimaan sehingga kipas dapat digerakkan. Listing program penerimaan data serial dapat dilihat pada lampiran 41. Setelah pengujian secara tidak real time dilakukan maka didapat data hasil pengujian seperti diperlihatkan pada tabel 4.13 Tabel. 4.13. Data Hasil Pengujian Secara Tidak Real Time Pada Mikrokontroler Karakter yang dikirim
Keterangan keadaan kipas AC
H
Berada pada level maksimal kecepatan putaran kipas AC
L
Berkurang satu level kecepatan putaran kipas AC
C
Bertambah satu level kecepatan putaran kipas AC
M
Berada pada level minimum atau tidak ada putaran kipas AC
Tabel 4.13 di atas adalah hasil putaran kipas AC. Hasil pengiriman data secara tidak real time dapat dijalankan dengan baik. Program serial dari matlab ke mikrokontroler bisa berjalan dengan baik maka dari hasil tersebut dapat dilakukan percobaan secara real time.
b.
Pengujian Secara Real Time Pengujian secara real time merupakan pengujian langsung dengan menggunakan
ucapan user atau bisa disebut dengan pengujian keseluruhan sistem yang dibuat. Tujuan pengujian ini untuk mendapatkan data hasil pengujian ucapan dan data hasil putaran kecepatan kipas angin AC. Tabel 4.14. memperlihatkan hasil pengujian kecepatan putaran kipas secara real time.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
89
Tabel. 4.14. Data Hasil Pengujian Kecepatan Putaran Kipas Secara Real Time Level
Nilai rpm kipas AC
Level 4
2279,2 rpm
Level 3
1433,5 rpm
Level 2
630,5 rpm
Level 1
44,7 rpm
Level 0
0 rpm
Dari data pada tabel 4.14 di atas berbeda dengan putaran kipas pada perancangan (lihat L7). Data putaran kipas AC tersebut dapat dibuat ke dalam bentuk tabel keadaan seperti di perlihatkan pada tabel 4.15, 4.16, 4.17, 4.18. Tabel. 4.15. Data Hasil Pengujian Kecepatan Putaran Untuk Ucapan Hidup Level sebelum
Nilai rpm setelah
pengenalan ucapan
pengenalan ucapan
Level 4
2279,2 rpm
Tabel. 4.16. Data Hasil Pengujian Kecepatan Putaran Untuk Ucapan Lambat Level sebelum
Nilai rpm setelah
pengenalan ucapan
pengenalan ucapan
Level 3
1433,5 rpm
Level 2
630,5 rpm
Level 1
44,7 rpm
Level 0
0 rpm
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
90
Tabel. 4.17. Data Hasil Pengujian Kecepatan Putaran Untuk Ucapan Cepat Level sebelum
Nilai rpm setelah
pengenalan ucapan
pengenalan ucapan
Level 1
44,7 rpm
Level 2
630,5 rpm
Level 3
1433,5 rpm
Level 4
2279,2 rpm
Tabel. 4.18. Data Hasil Pengujian Kecepatan Putaran Untuk Ucapan Mati Level sebelum
Nilai rpm setelah
pengenalan ucapan
pengenalan ucapan
Level 0
0 rpm
Level 1
0 rpm
Level 2
0 rpm
Level 3
0 rpm
Level 4
0 rpm
Data tabel di atas menunjukan keadaan putaran kipas dari ucapan hidup, lambat, cepat dan mati. Keadaan kipas seperti tabel di atas berlaku untuk ucapan dari tiga user. Tabel di atas menunjukan bahwa kecepatan putaran kipas dapat bekerja dan dijalankan dengan baik.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
BAB V KESIMPULAN DAN SARAN 5.1
Kesimpulan Dari data hasil percobaan dan pengujian aplikasi pengenalan ucapan terhadap
pangenalan ucapan user untuk pengendalikan putaran kipas AC, Maka dapat disimpulkan sebagai berikut: 1. Berdasarkan data hasil pengenalan ucapan terhadap ucapan user maka program dapat mengenali ucapan user yaitu hidup, lambat, cepat dan mati, serta program dapat dijalankan. 2. Pengujian terhadap ucapan 3 user dengan penggunaan nilai variabel batas potong 0,2, 0,3, 0,4, 0,5, segment averaging 4, 8, 16, 32, 64, 128, 265 dan K-Nearest Neighbor 1, 3, 5, 7 dapat mempengaruhi tingkat pengenalan ucapan secara tidak real time dan real time. 3. Hasil pengujian secara tidak real time dengan menggunakan variabel batas potong 0,2, segment averaging 128 dan K-Nearest Neighbor 7 menghasilkan tingkat pengenalan terbaik yaitu 81,6 %. Dengan pengujian tersebut dilakukan pengambilan data secara real time dengan hasil pengenalan ucapan user mencapai 85,8 %. 4. Pengiriman data serial secara tidak real time dan secara real time dapat mengendalikan kecepatan putaran kipas AC sesuai ucapan dari 3 user.
5.2
Saran Aplikasi pangenalan ucapan untuk pengendalikan putaran kipas AC ini masih
terdapat sejumlah kekurangan, sehingga perlu pengembangan lebih lanjut. Saran bagi pengembangan sistem ini selanjutnya yaitu 1.
Pembuatan aplikasi ucapan untuk lebih banyak user, dengan metode lain yang tidak memerlukan database yang cukup banyak.
2.
Pembuatan komunikasi jarak jauh antara kipas dan alat yang dibuat menggunakan wireless.
91
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
DAFTAR PUSTAKA
[1]
http://hermansugianto101112.blogspot.com/, diakses tanggal 27 Maret 2014
[2]
http://bengkel-oi.blogspot.com/2013/07/kipas-angin-cara-memperbaikinya.html, diakses tanggal 27 Maret 2014
[3]
http://nationalgeographic.co.id/berita/2013/01/pemanasan-global-rekor-suhu-panasnaik-lima-kali-lipat, diakses tanggal 14 april 2014
[4]
Bahtiar, Y., Arysta, 2005 ,
Pengatur Kecepatan Kipas Angina AC Berbasis
Mikrokontroler AT89S51 [5]
http://elib.unikom.ac.id/files/disk1/600/jbptunikompp-gdl-muhamadazh-29986-8unikom_m-2.pdf, diakses tanggal 3 Mei 2014
[6]
http://elektronika-dasar.web.id/teori-elektronika/microphone, diakses tanggal 5 mei 2014
[7]
Sigiro, Agnesia, Stevani, instrumentasi virtual menggunakan labview dan soundcard, http://download.portalgaruda.org/article.php?captcha=dryops&article=129798&val =4120&title=&yt0=Download%2FOpen, di akses tanggal 5 Mei 2014
[8]
http://elista.akprind.ac.id/upload/files/5361_Modul2.pdf, diakses tanggal 5 mei 2014
[9]
Eka Kartikasari, Yesika, 2006, Pembuatan Software Pembuka Program aplikasi Komputer Berbasis Pengenalan Sinyal Suara, PENS-ITS, Surabaya
[10]
Sumarno, Linggo., 2013, Pengenalan Nada Pianika Menggunakan Jendela Gaussian DCT dan Jarak Kosinus., vol. 17, no 1, hal 8-10.
[11]
http://library.binus.ac.id/eColls/eThesisdoc/Bab2/2007-2-00228-IF%20Bab2.pdf, diakses tanggal 16 April 2014
[12]
Jain, A.K. Fundamentals of Digital Image Processing. Englewood Cliffs, NJ: Prentice-Hall, 1989
[13]
Cha, Sung-Hyuk, 2007. Comprehensive Survey on Distance/Similarity Measures between Probability Density Functions., Vol 1, no 34,hal 303.
[14]
Pratt, William K. Digital Image Proccesing Second Edition. New York: John Wiley & Sons, Inc.,1991
92
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI [15]
93
sergion Theodoridis, Konstantinos Koutroumbas 2009, Pattern Recognition, Fourth edition, The Nearest Neighbor Rule.
[16]
http://indo-ware.com/produk-94-k125r-usb-avr-isp-programmer--downloader.html, diakses tanggal 20 November2014
[17]
Sasongko, bagus hari, pemograman mikrokontroler dengan bahasa C, Andi, Yogyakarta.
[18]
http://digilib.polsri.ac.id/files/disk1/72/ssptpolsri-gdl-rizkylazua-3596-3-babii.pdf, diakses tanggal 16 Mei 2014
[19]
http://eprints.uny.ac.id/7903/3/bab%202%20-08507131005.pdf, diakses tanggal 7 Juni 2014
[20]
Vladimir, G., 2006, Electric Relays Principles and Application, Teylor & Francis Grup, Ohio
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
LAMPIRAN
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
L1
LAMPIRAN A PEREKAMAN UCAPAN
1.
Tujuan : a. Mengetahui panjang durasi perekaman. b. Mengatahui pengaruh data sinyal pengenalan terhadap panjang waktu ucapan
2.
Variabel Percobaan : a. Durasi perekaman. b. Frekuensi sampling 6000 hz
3.
Program Listing program yang digunakan untuk merekam ucapan user diperlihatkan pada
gambar dibawah ini option='n'; option_rec='n'; sample_length=1.5; 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
Gambar lampiran 1.1. program perekaman ucapn user Proses perekaman ucapan user di lakukan dengan cara menjalankan program pada gambar diatas. Sebelum memanggil program pada tampilan matlab current directory sudah berada pada folder tempat penyimpanan file program perekaman. Pada jendela matlab command window dilakukan preoses pemanggilan program perekaman. User langsung
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI mengikuti perintah yang ditampilkan pada
L2
jendela matlab command window untuk
merekam ucapan dengan jarak antara user dan mikrofon kurang lebih 10 cm. Perekaman sesuai durasi waktu ucapan yang sudah ditentukan. Hasil perekaman masing-masing ucapan berupa file wav yangdi simpan bersamaan dengan program yang lain di dalam satu directory. 4.
Perekaman Dengan Durasi 0,5 Detik Pengucapan Kata Hidup
Pengucapan Kata Mati
1
1
0.8
0.8
0.6
0.6
0.4
0.4
0.2
0.2
0
0
-0.2
-0.2
-0.4
-0.4
-0.6
-0.6
-0.8 -1
-0.8 0
500
1000
1500
2000
2500
-1
3000
Pengucapan kata Cepat
0
500
1000
1500
2000
2500
3000
Pengucapan kata lambat
1
1
0.8
0.8
0.6
0.6
0.4
0.4
0.2
0.2
0
0
-0.2
-0.2
-0.4
-0.4
-0.6
-0.6
-0.8
-0.8 -1
0
500
1000
1500
2000
2500
3000
-1
0
500
1000
1500
2000
2500
3000
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
L3
5. Perekaman Dengan Durasi 1 Detik
Pengucapan Kata Hidup
Pengucapan Kata Mati 1
1 0.8
0.8
0.6
0.6
0.4
0.4
0.2
0.2
0
0
-0.2
-0.2 -0.4
-0.4 -0.6
-0.6
-0.8 -1
-0.8 0
1000
2000
3000
4000
5000
6000
-1
0
1000
Pengucapan kata Cepat
2000
3000
4000
5000
6000
Pengucapan kata lambat
1
1
0.8
0.8
0.6
0.6
0.4
0.4
0.2
0.2
0
0
-0.2
-0.2
-0.4
-0.4
-0.6
-0.6 -0.8
-0.8 -1
0
1000
2000
3000
4000
5000
6000
-1
0
1000
2000
3000
4000
5000
6000
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 6.
L4
Perekaman Dengan Durasi 1,5 Detik
Pengucapan Kata Hidup
Pengucapan Kata Mati
1
1
0.8
0.8
0.6
0.6
0.4
0.4
0.2
0.2
0
0
-0.2
-0.2
-0.4
-0.4
-0.6
-0.6
-0.8
-0.8
-1
0
1000
2000
3000
4000
5000
6000
-1
0
Pengucapan kata Cepat 1
0.8
0.8
0.6
0.6
0.4
0.4
0.2
0.2
0
0
-0.2
-0.2
-0.4
-0.4
-0.6
-0.6
-0.8
-0.8 0
1000
2000
3000
4000
2000
3000
4000
5000
6000
Pengucapan kata lambat
1
-1
1000
5000
6000
-1
0
1000
2000
3000
4000
5000
6000
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
L5
7. Perekaman Dengan Durasi 2,0 Detik Pengucapan Kata Hidup
Pengucapan Kata Mati
1
1
0.8
0.8
0.6
0.6
0.4
0.4
0.2
0.2
0
0
-0.2
-0.2
-0.4
-0.4
-0.6
-0.6
-0.8
-0.8
-1
0
2000
4000
6000
8000
10000
12000
-1
Pengucapan kata Cepat
0
2000
4000
6000
8000
10000
12000
Pengucapan kata lambat
1
1
0.8
0.8
0.6
0.6
0.4
0.4
0.2
0.2
0
0
-0.2
-0.2
-0.4
-0.4
-0.6
-0.6 -0.8
-0.8 -1
8.
0
1000
2000
3000
4000
5000
6000
-1
0
2000
4000
6000
8000
10000
12000
Analisa Terhadap Durasi Perekaman Data percobaan di atas merupakan data percobaan perkaman ucapan dengan dengan
durasi waktu perekaman 0,5 detik , 1,0 detik, 1,5 detik dan 2,0 detik . pada data 0,5 detik tidak ucapan tidak direkam secara utuh dan ucapan yang terekam terpotong. Data 1,0 detik, 1,5 detik dan 2,0 detik terekam secara utuh tetapi waktu cukup lama pada proses perekaman, sehingga data yang direkam terlalu banyak. Pada proses perekaman yang terlalu lama menyebabkan suara-suara yang tidak di inginkan juga ikut terekam. Pada percobaan dengan lama waktu 1,5 detik dianggap cukup untuk mendapatkan data yang lebih utuh dan diinginkan.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 9.
L6
Kesimpulan Terhadap Durasi Perekaman Hasil pencuplikan dengan durasi waktu 0,5 detik , 1,0 detik, 1,5 detik dan 2,0 detik
di dapat data pencuplikan yang dapat digunakan yaitu durasi 1,5 detik.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
L7
LAMPIRAN B PERCOBAAN PENGUKURAN HAMBATAH, DAN NILAI RPM KIPAS AC
1.
Tujuan : a. Mendapat nilai hambatan dan nilai RPM b. Menentukan level disetiap nilai hambatan dan nilai RPM
2.
Variabel Percobaan : a. Nilai hambatan. b. Nilai rpm kipas AC
3.
Data Hasil Pengukuran Level
Hambatan (1 M)
Nilai rpm kipas AC
Level 4
000,5 Ω
2275,1 rpm
Level 3
180,9 K Ω
2155,2 rpm
Level 2
214,5 K Ω
1903,3 rpm
Level 1
279,1 K Ω
171,8 rpm
Level 0
1M
0 rpm
4.
Keterangan Nilai hambatan terkecil
Nilai hambatan terbesar
Analisa : Data percobaan diatas merupakan data pengukuran hambatan dan putaran kipas.
Nilai hambatan yang digunakan untuk mendapatkan nilai rpm adalah 1 M. Nilai putaran maksimum kipas yang di dapat adalah 2275,1 rpm. Dari hasil tersebut dibagi kedalam 5 level putaran untuk mengatur keadaan putar kipas berdasarkan nilai hambatan yang di dapat.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 5.
L8
Kesimpulan : Berdasarkan data pengukuran nilai hambatan dan rpm kipas AC, maka dapat dibuat
tabel keadaan untuk mengatur keadaan kipas berdasarkan ucapan cepat,lambat, hidup dan mati Tabel keadaan kipas AC Keadaan
Masukan
sekarang
Hidup
Lambat
Cepat
Mati
Level 0
Level 4
Level 0
Level 1
Level 0
Level 1
Level 4
Level 0
Level 2
Level 0
Level 2
Level 4
Level 1
Level 3
Level 0
Level 3
Level 4
Level 2
Level 4
Level 0
Level 4
Level 4
Level 3
Level 4
Level 0
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI LAMPIRAN C Tabel Data Off Line (Tidak Real Time) Batas Potong 0,2
Seg. Aver 4
KNN 1
Jumlah dikenal 91
Pengenalan (%) 75,8%
0,3
4
1
86
71.6%
0,4
4
1
86
71.6%
0,5
4
1
88
73,3%
Batas Potong
Seg. Aver
KNN
Jumlah dikenal
Pengenalan (%)
0,2
8
1
89
74.1%
0,3
8
1
86
71,6%
0,4
8
1
85
70,8%
0,5
8
1
89
74,1%
Batas Potong
Seg. Aver
KNN
Jumlah dikenal
Pengenalan (%)
0,2
16
1
89
74,1%
0,3
16
1
88
73,3%
0,4
16
1
87
72,5%
0,5
16
1
90
75%
Batas Potong
Seg. Aver
KNN
Jumlah dikenal
Pengenalan (%)
0,2
32
1
90
75%
0,3
32
1
90
75%
0,4
32
1
88
73,3%
0,5
32
1
91
75,8%
Batas Potong 0,2
Seg. Aver 64
KNN 1
Jumlah dikenal 94
Pengenalan (%) 78,3%
0,3
64
1
94
78,3%
0,4
64
1
90
75%
0,5
64
1
94
78,3%
L9
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI Lanjutan Tabel Data Off Line (Tidak Real Time) Batas Potong 0,2
Seg. Aver 128
KNN 1
Jumlah dikenal 94
Pengenalan (%) 78,3%
0,3
128
1
96
80%
0,4
128
1
92
76,6%
0,5
128
1
94
78,3%
Batas Potong
Seg. Aver
KNN
Jumlah dikenal
Pengenalan (%)
0,2
256
1
92
76,6%
0,3
256
1
95
79,1%
0,4
256
1
91
75,8%
0,5
256
1
94
78,3%
Batas Potong
Seg. Aver
KNN
Jumlah dikenal
Pengenalan (%)
0,2
4
3
88
73,3%
0,3
4
3
81
67,5%
0,4
4
3
84
70%
0,5
4
3
84
70%
Batas Potong
Seg. Aver
KNN
Jumlah dikenal
Pengenalan (%)
0,2
8
3
85
70,8%
0,3
8
3
81
67,5%
0,4
8
3
84
70%
0,5
8
3
84
70%
Batas Potong 0,2
Seg. Aver 16
KNN 3
Jumlah dikenal 84
Pengenalan (%) 70%
0,3
16
3
82
68,3%
0,4
16
3
85
70,8%
0,5
16
3
85
70,8%
L10
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI Lanjutan Tabel Data Off Line (Tidak Real Time) Batas Potong 0,2
Seg. Aver 32
KNN 3
Jumlah dikenal 84
Pengenalan (%) 70%
0,3
32
3
84
70%
0,4
32
3
88
73,3%
0,5
32
3
86
71,6%
Batas Potong
Seg. Aver
KNN
Jumlah dikenal
Pengenalan (%)
0,2
64
3
95
79,1%
0,3
64
3
95
79,1%
0,4
64
3
97
80,8%
0,5
64
3
97
80,8%
Batas Potong
Seg. Aver
KNN
Jumlah dikenal
Pengenalan (%)
0,2
128
3
95
79,1%
0,3
128
3
98
81,6%
0,4
128
3
94
78,3%
0,5
128
3
94
78,3%
Batas Potong
Seg. Aver
KNN
Jumlah dikenal
Pengenalan (%)
0,2
256
3
95
79,1%
0,3
256
3
92
76,6%
0,4
256
3
95
79,1%
0,5
256
3
95
79,1%
Batas Potong 0,2
Seg. Aver 4
KNN 5
Jumlah dikenal 86
Pengenalan (%) 71,6%
0,3
4
5
81
67,5%
0,4
4
5
81
67,5%
0,5
4
5
81
67,5%
L11
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI Lanjutan Tabel Data Off Line (Tidak Real Time) Batas Potong 0,2
Seg. Aver 8
KNN 5
Jumlah dikenal 86
Pengenalan (%) 71,6%
0,3
8
5
80
66,6%
0,4
8
5
84
70%
0,5
8
5
82
68,3%
Batas Potong
Seg. Aver
KNN
Jumlah dikenal
Pengenalan (%)
0,2
16
5
85
70,8%
0,3
16
5
80
66,6%
0,4
16
5
84
70 %
0,5
16
5
83
69,1%
Batas Potong
Seg. Aver
KNN
Jumlah dikenal
Pengenalan (%)
0,2
32
5
87
72,5%
0,3
32
5
83
69,1%
0,4
32
5
87
72,5%
0,5
32
5
85
70,8%
Batas Potong
Seg. Aver
KNN
Jumlah dikenal
Pengenalan (%)
0,2
64
5
94
80%
0,3
64
5
96
80%
0,4
64
5
92
76,6%
0,5
64
5
91
75,8%
Batas Potong 0,2
Seg. Aver 128
KNN 5
Jumlah dikenal 97
Pengenalan (%) 80,8%
0,3
128
5
98
81,6%
0,4
128
5
96
80%
0,5
128
5
96
80%
L12
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI Lanjutan Tabel Data Off Line (Tidak Real Time) Batas Potong 0,2
Seg. Aver 256
KNN 5
Jumlah dikenal 96
Pengenalan (%) 80%
0,3
256
5
95
79,6%
0,4
256
5
94
78,3%
0,5
256
5
93
77,5%
Batas Potong
Seg. Aver
KNN
Jumlah dikenal
Pengenalan (%)
0,2
4
7
84
70%
0,3
4
7
78
65%
0,4
4
7
78
65%
0,5
4
7
82
68,3%
Batas Potong
Seg. Aver
KNN
Jumlah dikenal
Pengenalan (%)
0,2
8
7
84
70%
0,3
8
7
77
64,1%
0,4
8
7
80
66,6%
0,5
8
7
83
69,1%
Batas Potong
Seg. Aver
KNN
Jumlah dikenal
Pengenalan (%)
0,2
16
7
83
69,1%
0,3
16
7
77
64,1%
0,4
16
7
81
67,5%
0,5
16
7
82
68,3%
Batas Potong
Seg. Aver
KNN
Jumlah dikenal
Pengenalan (%)
0,2
32
7
88
73,3%
0,3
32
7
81
67,5%
0,4
32
7
86
71,6%
0,5
32
7
84
70%
L13
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI Lanjutan Tabel Data Off Line (Tidak Real Time) Batas Potong 0,2
Seg. Aver 64
KNN 7
Jumlah dikenal 97
Pengenalan (%) 80,8%
0,3
64
7
93
77,5%
0,4
64
7
90
75%
0,5
64
7
89
74,1%
Batas Potong
Seg. Aver
KNN
Jumlah dikenal
Pengenalan (%)
0,2
128
7
98
81,6%
0,3
128
7
97
80,8%
0,4
128
7
96
80%
0,5
128
7
93
77,5%
Batas Potong
Seg. Aver
KNN
Jumlah dikenal
Pengenalan (%)
0,2
256
7
96
80%
0,3
256
7
95
79,6%
0,4
256
7
95
79,6%
0,5
256
7
91
75,83%
L14
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI LAMPIRAN D
Tabel Data Off Line (Tidak Real Time) Tanpa Program Seg. Aver Batas Potong 0,2
KNN 1
Jumlah dikenal 87
Presentase (%) 72,5%
0,3
1
84
70%
0,4
1
89
74,1%
0,5
1
88
73.3%
Batas Potong
KNN
Jumlah dikenal
Presentase (%)
0,2
3
85
70,8%
0,3
3
83
69,1%
0,4
3
86
71,6%
0,5
3
86
71,6%
Batas Potong
KNN
Jumlah dikenal
Presentase (%)
0,2
5
84
72,5%
0,3
5
81
67,5%
0,4
5
84
72,5%
0,5
5
81
67,5%
Batas Potong
KNN
Jumlah dikenal
Presentase (%)
0,2
7
81
70,8%
0,3
7
82
68,3%
0,4
7
84
70%
0,5
7
84
70%
L15
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI LAMPIRAN E Tabel Data Off Line (Real Time)
1. User 1 Jenis ucapan
Percobaan ke 1
2
3
4
5
6
7
8
9
10
Hidup
V
X
V
V
V
V
V
V
V
V
Lambat
V
V
V
X
V
V
V
V
V
X
Cepat
V
V
X
V
V
V
V
X
V
V
Mati
V
V
V
X
V
V
V
V
V
V
2. User 2 Jenis ucapan
Percobaan ke 1
2
3
4
5
6
7
8
9
10
Hidup
V
V
X
V
V
V
V
V
V
V
Lambat
V
V
V
V
V
V
V
X
X
V
Cepat
V
X
V
V
V
V
V
V
V
X
Mati
V
V
V
V
V
V
V
V
V
V
3. User 3 Jenis ucapan
Percobaan ke 1
2
3
4
5
6
7
8
9
10
Hidup
V
V
V
V
V
V
X
V
V
V
Lambat
V
X
V
X
V
V
V
V
V
V
Cepat
V
V
X
V
V
V
V
V
V
X
Mati
V
V
V
V
V
V
V
X
V
V
Keterangan : V = dikenali sebagai benar
X = dikenali sebagai salah
L16
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
L17
LAMPIRAN F LISTING PROGRAM MATLAB 1. Listing Program Tidak Real Time function xcdct % Menggunakan ekstraksi ciri DCT clc %====================================================================== b0=0.2; % batas potong usig=2048; % ukuran sinyal --> tergantung sinyal terpanjang dsamp=1; % faktor downsampling %====================================================================== % Pembentukan database %====================================================================== %cepat %data pembentukan database user 1 (juan) [s1,s1p,s1x]=proses('cepat1.wav',b0,usig,dsamp); [s2,s2p,s2x]=proses('cepat2.wav',b0,usig,dsamp); [s3,s3p,s3x]=proses('cepat3.wav',b0,usig,dsamp); [s4,s4p,s4x]=proses('cepat4.wav',b0,usig,dsamp); [s5,s5p,s5x]=proses('cepat5.wav',b0,usig,dsamp); [s6,s6p,s6x]=proses('cepat6.wav',b0,usig,dsamp); [s7,s7p,s7x]=proses('cepat7.wav',b0,usig,dsamp); [s8,s8p,s8x]=proses('cepat8.wav',b0,usig,dsamp); [s9,s9p,s9x]=proses('cepat9.wav',b0,usig,dsamp); [s10,s10p,s10x]=proses('cepat10.wav',b0,usig,dsamp); %data pembentukan database user 2 (endrico) [s11,s11p,s11x]=proses('cepat11.wav',b0,usig,dsamp); [s12,s12p,s12x]=proses('cepat12.wav',b0,usig,dsamp); [s13,s13p,s13x]=proses('cepat13.wav',b0,usig,dsamp); [s14,s14p,s14x]=proses('cepat14.wav',b0,usig,dsamp); [s15,s15p,s15x]=proses('cepat15.wav',b0,usig,dsamp); [s16,s16p,s16x]=proses('cepat16.wav',b0,usig,dsamp); [s17,s17p,s17x]=proses('cepat17.wav',b0,usig,dsamp); [s18,s18p,s18x]=proses('cepat18.wav',b0,usig,dsamp); [s19,s19p,s19x]=proses('cepat19.wav',b0,usig,dsamp); [s20,s20p,s20x]=proses('cepat20.wav',b0,usig,dsamp); %data pembentukan database user 3 (ovan) [s21,s21p,s21x]=proses('cepat21.wav',b0,usig,dsamp); [s22,s22p,s22x]=proses('cepat22.wav',b0,usig,dsamp); [s23,s23p,s23x]=proses('cepat23.wav',b0,usig,dsamp); [s24,s24p,s24x]=proses('cepat24.wav',b0,usig,dsamp); [s25,s25p,s25x]=proses('cepat25.wav',b0,usig,dsamp); [s26,s26p,s26x]=proses('cepat26.wav',b0,usig,dsamp); [s27,s27p,s27x]=proses('cepat27.wav',b0,usig,dsamp); [s28,s28p,s28x]=proses('cepat28.wav',b0,usig,dsamp); [s29,s29p,s29x]=proses('cepat29.wav',b0,usig,dsamp); [s30,s30p,s30x]=proses('cepat30.wav',b0,usig,dsamp);
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
%lambat %data pembentukan database user 1 (juan) [d1,d1p,d1x]=proses('lambat1.wav',b0,usig,dsamp); [d2,d2p,d2x]=proses('lambat2.wav',b0,usig,dsamp); [d3,d3p,d3x]=proses('lambat3.wav',b0,usig,dsamp); [d4,d4p,d4x]=proses('lambat4.wav',b0,usig,dsamp); [d5,d5p,d5x]=proses('lambat5.wav',b0,usig,dsamp); [d6,d6p,d6x]=proses('lambat6.wav',b0,usig,dsamp); [d7,d7p,d7x]=proses('lambat7.wav',b0,usig,dsamp); [d8,d8p,d8x]=proses('lambat8.wav',b0,usig,dsamp); [d9,d9p,d9x]=proses('lambat9.wav',b0,usig,dsamp); [d10,d10p,d10x]=proses('lambat10.wav',b0,usig,dsamp); %data pembentukan database user 2 (endrico) [d11,d11p,d11x]=proses('lambat11.wav',b0,usig,dsamp); [d12,d12p,d12x]=proses('lambat12.wav',b0,usig,dsamp); [d13,d13p,d13x]=proses('lambat13.wav',b0,usig,dsamp); [d14,d14p,d14x]=proses('lambat14.wav',b0,usig,dsamp); [d15,d15p,d15x]=proses('lambat15.wav',b0,usig,dsamp); [d16,d16p,d16x]=proses('lambat16.wav',b0,usig,dsamp); [d17,d17p,d17x]=proses('lambat17.wav',b0,usig,dsamp); [d18,d18p,d18x]=proses('lambat18.wav',b0,usig,dsamp); [d19,d19p,d19x]=proses('lambat19.wav',b0,usig,dsamp); [d20,d20p,d20x]=proses('lambat20.wav',b0,usig,dsamp); %data pembentukan database user 3 (ovan) [d21,d21p,d21x]=proses('lambat21.wav',b0,usig,dsamp); [d22,d22p,d22x]=proses('lambat22.wav',b0,usig,dsamp); [d23,d23p,d23x]=proses('lambat23.wav',b0,usig,dsamp); [d24,d24p,d24x]=proses('lambat24.wav',b0,usig,dsamp); [d25,d25p,d25x]=proses('lambat25.wav',b0,usig,dsamp); [d6,d26p,d26x]=proses('lambat26.wav',b0,usig,dsamp); [d27,d27p,d27x]=proses('lambat27.wav',b0,usig,dsamp); [d28,d28p,d28x]=proses('lambat28.wav',b0,usig,dsamp); [d29,d29p,d29x]=proses('lambat29.wav',b0,usig,dsamp); [d30,d30p,d30x]=proses('lambat30.wav',b0,usig,dsamp); %hidup %data pembentukan database user 1 (juan) [g1,g1p,g1x]=proses('hidup1.wav',b0,usig,dsamp); [g2,g2p,g2x]=proses('hidup2.wav',b0,usig,dsamp); [g3,g3p,g3x]=proses('hidup3.wav',b0,usig,dsamp); [g4,g4p,g4x]=proses('hidup4.wav',b0,usig,dsamp); [g5,g5p,g5x]=proses('hidup5.wav',b0,usig,dsamp); [g6,g6p,g6x]=proses('hidup6.wav',b0,usig,dsamp); [g7,g7p,g7x]=proses('hidup7.wav',b0,usig,dsamp); [g8,g8p,g8x]=proses('hidup8.wav',b0,usig,dsamp); [g9,g9p,g9x]=proses('hidup9.wav',b0,usig,dsamp); [g10,g10p,g10x]=proses('hidup10.wav',b0,usig,dsamp); %data pembentukan database user 2 (endrico) [g11,g11p,g11x]=proses('hidup11.wav',b0,usig,dsamp); [g12,g12p,g12x]=proses('hidup12.wav',b0,usig,dsamp); [g13,g13p,g13x]=proses('hidup13.wav',b0,usig,dsamp); [g14,g14p,g14x]=proses('hidup14.wav',b0,usig,dsamp); [g15,g15p,g15x]=proses('hidup15.wav',b0,usig,dsamp);
L18
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
[g16,g16p,g16x]=proses('hidup16.wav',b0,usig,dsamp); [g17,g17p,g17x]=proses('hidup17.wav',b0,usig,dsamp); [g18,g18p,g18x]=proses('hidup18.wav',b0,usig,dsamp); [g19,g19p,g19x]=proses('hidup19.wav',b0,usig,dsamp); [g20,g20p,g20x]=proses('hidup20.wav',b0,usig,dsamp); %data pembentukan database user 3 (ovan) [g21,g21p,g21x]=proses('hidup21.wav',b0,usig,dsamp); [g22,g22p,g22x]=proses('hidup22.wav',b0,usig,dsamp); [g23,g23p,g23x]=proses('hidup23.wav',b0,usig,dsamp); [g24,g24p,g24x]=proses('hidup24.wav',b0,usig,dsamp); [g25,g25p,g25x]=proses('hidup25.wav',b0,usig,dsamp); [g26,g26p,g26x]=proses('hidup26.wav',b0,usig,dsamp); [g27,g27p,g27x]=proses('hidup27.wav',b0,usig,dsamp); [g28,g28p,g28x]=proses('hidup28.wav',b0,usig,dsamp); [g29,g29p,g29x]=proses('hidup29.wav',b0,usig,dsamp); [g30,g30p,g30x]=proses('hidup30.wav',b0,usig,dsamp); %mati %data pembentukan database user 1 (juan) [p1,p1p,p1x]=proses('mati1.wav',b0,usig,dsamp); [p2,p2p,p2x]=proses('mati2.wav',b0,usig,dsamp); [p3,p3p,p3x]=proses('mati3.wav',b0,usig,dsamp); [p4,p4p,p4x]=proses('mati4.wav',b0,usig,dsamp); [p5,p5p,p5x]=proses('mati5.wav',b0,usig,dsamp); [p6,p6p,p6x]=proses('mati6.wav',b0,usig,dsamp); [p7,p7p,p7x]=proses('mati7.wav',b0,usig,dsamp); [p8,p8p,p8x]=proses('mati8.wav',b0,usig,dsamp); [p9,p9p,p9x]=proses('mati9.wav',b0,usig,dsamp); [p10,p10p,p10x]=proses('mati10.wav',b0,usig,dsamp); %data pembentukan database user 2 (endrico) [p11,p11p,p11x]=proses('mati11.wav',b0,usig,dsamp); [p12,p12p,p12x]=proses('mati12.wav',b0,usig,dsamp); [p13,p13p,p13x]=proses('mati13.wav',b0,usig,dsamp); [p14,p14p,p14x]=proses('mati14.wav',b0,usig,dsamp); [p15,p15p,p15x]=proses('mati15.wav',b0,usig,dsamp); [p16,p16p,p16x]=proses('mati16.wav',b0,usig,dsamp); [p17,p17p,p17x]=proses('mati17.wav',b0,usig,dsamp); [p18,p18p,p18x]=proses('mati18.wav',b0,usig,dsamp); [p19,p19p,p19x]=proses('mati19.wav',b0,usig,dsamp); [p20,p20p,p20x]=proses('mati20.wav',b0,usig,dsamp); %data pembentukan database user 3 (ovan) [p21,p21p,p21x]=proses('mati21.wav',b0,usig,dsamp); [p22,p22p,p22x]=proses('mati23.wav',b0,usig,dsamp); [p23,p23p,p23x]=proses('mati23.wav',b0,usig,dsamp); [p24,p24p,p24x]=proses('mati24.wav',b0,usig,dsamp); [p25,p25p,p25x]=proses('mati25.wav',b0,usig,dsamp); [p26,p26p,p26x]=proses('mati26.wav',b0,usig,dsamp); [p27,p27p,p27x]=proses('mati27.wav',b0,usig,dsamp); [p28,p28p,p28x]=proses('mati28.wav',b0,usig,dsamp); [p29,p29p,p29x]=proses('mati29.wav',b0,usig,dsamp); [p30,p30p,p30x]=proses('mati30.wav',b0,usig,dsamp);
L19
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
L20
% Database sx=[s1x s2x s3x s4x s5x s6x s7x s8x s9x s10x s11x s12x s13x s14x s15x s16x s17x s18x s19x s20x s21x s22x s23x s24x s25x s26x s27x s28x s29x s30x]; dx=[d1x d2x d3x d4x d5x d6x d7x d8x d9x d10x d11x d12x d13x d14x d15x d16x d17x d18x d19x d20x d21x d22x d23x d24x d25x d26x d27x d28x d29x d30x]; gx=[g1x g2x g3x g4x g5x g6x g7x g8x g9x g10x g11x g12x g13x g14x g15x g16x g17x g18x g19x g20x g21x g22x g23x g24x g25x g26x g27x g28x g29x g30x]; px=[p1x p2x p3x p4x p5x p6x p7x p8x p9x p10x p11x p12x p13x p14x p15x p16x p17x p18x p19x p20x p21x p22x p23x p24x p25x p26x p27x p28x p29x p30x]; z=[sx dx gx px]; %save dbase z %====================================================================== % Percobaan pengenalan %====================================================================== %cepat %data percobaan pengenalan user 1 (juan) [a,b,c]=proses('cepat31.wav',b0,usig,dsamp);j1=hjarak(c,z); [a,b,c]=proses('cepat32.wav',b0,usig,dsamp);j2=hjarak(c,z); [a,b,c]=proses('cepat33.wav',b0,usig,dsamp);j3=hjarak(c,z); [a,b,c]=proses('cepat34.wav',b0,usig,dsamp);j4=hjarak(c,z); [a,b,c]=proses('cepat35.wav',b0,usig,dsamp);j5=hjarak(c,z); [a,b,c]=proses('cepat36.wav',b0,usig,dsamp);j6=hjarak(c,z); [a,b,c]=proses('cepat37.wav',b0,usig,dsamp);j7=hjarak(c,z); [a,b,c]=proses('cepat38.wav',b0,usig,dsamp);j8=hjarak(c,z); [a,b,c]=proses('cepat39.wav',b0,usig,dsamp);j9=hjarak(c,z); [a,b,c]=proses('cepat40.wav',b0,usig,dsamp);j10=hjarak(c,z); %data percobaan pengenalan user 2 (endrico) [a,b,c]=proses('cepat41.wav',b0,usig,dsamp);j11=hjarak(c,z); [a,b,c]=proses('cepat42.wav',b0,usig,dsamp);j12=hjarak(c,z); [a,b,c]=proses('cepat43.wav',b0,usig,dsamp);j13=hjarak(c,z); [a,b,c]=proses('cepat44.wav',b0,usig,dsamp);j14=hjarak(c,z); [a,b,c]=proses('cepat45.wav',b0,usig,dsamp);j15=hjarak(c,z); [a,b,c]=proses('cepat46.wav',b0,usig,dsamp);j16=hjarak(c,z); [a,b,c]=proses('cepat47.wav',b0,usig,dsamp);j17=hjarak(c,z); [a,b,c]=proses('cepat48.wav',b0,usig,dsamp);j18=hjarak(c,z); [a,b,c]=proses('cepat49.wav',b0,usig,dsamp);j19=hjarak(c,z); [a,b,c]=proses('cepat50.wav',b0,usig,dsamp);j20=hjarak(c,z); %data percobaan pengenalan user 3 (ovan) [a,b,c]=proses('cepat51.wav',b0,usig,dsamp);j21=hjarak(c,z); [a,b,c]=proses('cepat52.wav',b0,usig,dsamp);j22=hjarak(c,z); [a,b,c]=proses('cepat53.wav',b0,usig,dsamp);j23=hjarak(c,z); [a,b,c]=proses('cepat54.wav',b0,usig,dsamp);j24=hjarak(c,z); [a,b,c]=proses('cepat55.wav',b0,usig,dsamp);j25=hjarak(c,z); [a,b,c]=proses('cepat56.wav',b0,usig,dsamp);j26=hjarak(c,z); [a,b,c]=proses('cepat57.wav',b0,usig,dsamp);j27=hjarak(c,z); [a,b,c]=proses('cepat58.wav',b0,usig,dsamp);j28=hjarak(c,z); [a,b,c]=proses('cepat59.wav',b0,usig,dsamp);j29=hjarak(c,z); [a,b,c]=proses('cepat60.wav',b0,usig,dsamp);j30=hjarak(c,z);
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
L21
k1=pout(j1);k2=pout(j2);k3=pout(j3);k4=pout(j4);k5=pout(j5); k6=pout(j6);k7=pout(j7);k8=pout(j8);k9=pout(j9);k10=pout(j10); k11=pout(j11);k12=pout(j12);k13=pout(j13);k14=pout(j14);k15=pout(j15); k16=pout(j16);k17=pout(j17);k18=pout(j18);k19=pout(j19);k20=pout(j20); k21=pout(j21);k22=pout(j22);k23=pout(j23);k24=pout(j24);k25=pout(j25); k26=pout(j26);k27=pout(j27);k28=pout(j28);k29=pout(j29);k30=pout(j30); input_cepat={k1,k2,k3,k4,k5,k6,k7,k8,k9,k10,k11,k12,k13,k14,k15,k16,k17,k18,k19,k20,k21,k2 2,k23,k24,k25,k26,k27,k28,k29,k30} %lambat %data percobaan pengenalan user 1 (juan) [a,b,c]=proses('lambat31.wav',b0,usig,dsamp);j1=hjarak(c,z); [a,b,c]=proses('lambat32.wav',b0,usig,dsamp);j2=hjarak(c,z); [a,b,c]=proses('lambat33.wav',b0,usig,dsamp);j3=hjarak(c,z); [a,b,c]=proses('lambat34.wav',b0,usig,dsamp);j4=hjarak(c,z); [a,b,c]=proses('lambat35.wav',b0,usig,dsamp);j5=hjarak(c,z); [a,b,c]=proses('lambat36.wav',b0,usig,dsamp);j6=hjarak(c,z); [a,b,c]=proses('lambat37.wav',b0,usig,dsamp);j7=hjarak(c,z); [a,b,c]=proses('lambat38.wav',b0,usig,dsamp);j8=hjarak(c,z); [a,b,c]=proses('lambat39.wav',b0,usig,dsamp);j9=hjarak(c,z); [a,b,c]=proses('lambat40.wav',b0,usig,dsamp);j10=hjarak(c,z); %data percobaan pengenalan user 2 (endrico) [a,b,c]=proses('lambat41.wav',b0,usig,dsamp);j11=hjarak(c,z); [a,b,c]=proses('lambat42.wav',b0,usig,dsamp);j12=hjarak(c,z); [a,b,c]=proses('lambat43.wav',b0,usig,dsamp);j13=hjarak(c,z); [a,b,c]=proses('lambat44.wav',b0,usig,dsamp);j14=hjarak(c,z); [a,b,c]=proses('lambat45.wav',b0,usig,dsamp);j15=hjarak(c,z); [a,b,c]=proses('lambat46.wav',b0,usig,dsamp);j16=hjarak(c,z); [a,b,c]=proses('lambat47.wav',b0,usig,dsamp);j17=hjarak(c,z); [a,b,c]=proses('lambat48.wav',b0,usig,dsamp);j18=hjarak(c,z); [a,b,c]=proses('lambat49.wav',b0,usig,dsamp);j19=hjarak(c,z); [a,b,c]=proses('lambat50.wav',b0,usig,dsamp);j20=hjarak(c,z); %data percobaan pengenalan user 3 (ovan) [a,b,c]=proses('lambat51.wav',b0,usig,dsamp);j21=hjarak(c,z); [a,b,c]=proses('lambat52.wav',b0,usig,dsamp);j22=hjarak(c,z); [a,b,c]=proses('lambat53.wav',b0,usig,dsamp);j23=hjarak(c,z); [a,b,c]=proses('lambat54.wav',b0,usig,dsamp);j24=hjarak(c,z); [a,b,c]=proses('lambat55.wav',b0,usig,dsamp);j25=hjarak(c,z); [a,b,c]=proses('lambat56.wav',b0,usig,dsamp);j26=hjarak(c,z); [a,b,c]=proses('lambat57.wav',b0,usig,dsamp);j27=hjarak(c,z); [a,b,c]=proses('lambat58.wav',b0,usig,dsamp);j28=hjarak(c,z); [a,b,c]=proses('lambat59.wav',b0,usig,dsamp);j29=hjarak(c,z); [a,b,c]=proses('lambat60.wav',b0,usig,dsamp);j30=hjarak(c,z); k1=pout(j1);k2=pout(j2);k3=pout(j3);k4=pout(j4);k5=pout(j5); k6=pout(j6);k7=pout(j7);k8=pout(j8);k9=pout(j9);k10=pout(j10); k11=pout(j11);k12=pout(j12);k13=pout(j13);k14=pout(j14);k15=pout(j15); k16=pout(j16);k17=pout(j17);k18=pout(j18);k19=pout(j19);k20=pout(j20); k21=pout(j21);k22=pout(j22);k23=pout(j23);k24=pout(j24);k25=pout(j25); k26=pout(j26);k27=pout(j27);k28=pout(j28);k29=pout(j29);k30=pout(j30); input_lambat={k1,k2,k3,k4,k5,k6,k7,k8,k9,k10,k11,k12,k13,k14,k15,k16,k17,k18,k19,k20,k21,k 22,k23,k24,k25,k26,k27,k28,k29,k30}
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
L22
%hidup %data percobaan pengenalan user 1 (juan) [a,b,c]=proses('hidup31.wav',b0,usig,dsamp);j1=hjarak(c,z); [a,b,c]=proses('hidup32.wav',b0,usig,dsamp);j2=hjarak(c,z); [a,b,c]=proses('hidup33.wav',b0,usig,dsamp);j3=hjarak(c,z); [a,b,c]=proses('hidup34.wav',b0,usig,dsamp);j4=hjarak(c,z); [a,b,c]=proses('hidup35.wav',b0,usig,dsamp);j5=hjarak(c,z); [a,b,c]=proses('hidup36.wav',b0,usig,dsamp);j6=hjarak(c,z); [a,b,c]=proses('hidup37.wav',b0,usig,dsamp);j7=hjarak(c,z); [a,b,c]=proses('hidup38.wav',b0,usig,dsamp);j8=hjarak(c,z); [a,b,c]=proses('hidup39.wav',b0,usig,dsamp);j9=hjarak(c,z); [a,b,c]=proses('hidup40.wav',b0,usig,dsamp);j10=hjarak(c,z); %data percobaan pengenalan user 2 (endrico) [a,b,c]=proses('hidup41.wav',b0,usig,dsamp);j11=hjarak(c,z); [a,b,c]=proses('hidup42.wav',b0,usig,dsamp);j12=hjarak(c,z); [a,b,c]=proses('hidup43.wav',b0,usig,dsamp);j13=hjarak(c,z); [a,b,c]=proses('hidup44.wav',b0,usig,dsamp);j14=hjarak(c,z); [a,b,c]=proses('hidup45.wav',b0,usig,dsamp);j15=hjarak(c,z); [a,b,c]=proses('hidup46.wav',b0,usig,dsamp);j16=hjarak(c,z); [a,b,c]=proses('hidup47.wav',b0,usig,dsamp);j17=hjarak(c,z); [a,b,c]=proses('hidup48.wav',b0,usig,dsamp);j18=hjarak(c,z); [a,b,c]=proses('hidup49.wav',b0,usig,dsamp);j19=hjarak(c,z); [a,b,c]=proses('hidup50.wav',b0,usig,dsamp);j20=hjarak(c,z); %data percobaan pengenalan user 3 (ovan) [a,b,c]=proses('hidup51.wav',b0,usig,dsamp);j21=hjarak(c,z); [a,b,c]=proses('hidup52.wav',b0,usig,dsamp);j22=hjarak(c,z); [a,b,c]=proses('hidup53.wav',b0,usig,dsamp);j23=hjarak(c,z); [a,b,c]=proses('hidup54.wav',b0,usig,dsamp);j24=hjarak(c,z); [a,b,c]=proses('hidup55.wav',b0,usig,dsamp);j25=hjarak(c,z); [a,b,c]=proses('hidup56.wav',b0,usig,dsamp);j26=hjarak(c,z); [a,b,c]=proses('hidup57.wav',b0,usig,dsamp);j27=hjarak(c,z); [a,b,c]=proses('hidup58.wav',b0,usig,dsamp);j28=hjarak(c,z); [a,b,c]=proses('hidup59.wav',b0,usig,dsamp);j29=hjarak(c,z); [a,b,c]=proses('hidup60.wav',b0,usig,dsamp);j30=hjarak(c,z); k1=pout(j1);k2=pout(j2);k3=pout(j3);k4=pout(j4);k5=pout(j5); k6=pout(j6);k7=pout(j7);k8=pout(j8);k9=pout(j9);k10=pout(j10); k1=pout(j11);k2=pout(j12);k3=pout(j13);k4=pout(j14);k5=pout(j15); k6=pout(j16);k7=pout(j17);k8=pout(j18);k9=pout(j19);k10=pout(j20); k1=pout(j21);k2=pout(j22);k3=pout(j23);k4=pout(j24);k5=pout(j25); k6=pout(j26);k7=pout(j27);k8=pout(j28);k9=pout(j29);k10=pout(j30); input_hidup={k1,k2,k3,k4,k5,k6,k7,k8,k9,k10,k11,k12,k13,k14,k15,k16,k17,k18,k19,k20,k21,k2 2,k23,k24,k25,k26,k27,k28,k29,k30} %mati %data percobaan pengenalan user 1 (juan) [a,b,c]=proses('mati31.wav',b0,usig,dsamp);j1=hjarak(c,z); [a,b,c]=proses('mati32.wav',b0,usig,dsamp);j2=hjarak(c,z); [a,b,c]=proses('mati33.wav',b0,usig,dsamp);j3=hjarak(c,z); [a,b,c]=proses('mati34.wav',b0,usig,dsamp);j4=hjarak(c,z); [a,b,c]=proses('mati35.wav',b0,usig,dsamp);j5=hjarak(c,z);
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
L23
[a,b,c]=proses('mati36.wav',b0,usig,dsamp);j6=hjarak(c,z); [a,b,c]=proses('mati37.wav',b0,usig,dsamp);j7=hjarak(c,z); [a,b,c]=proses('mati38.wav',b0,usig,dsamp);j8=hjarak(c,z); [a,b,c]=proses('mati39.wav',b0,usig,dsamp);j9=hjarak(c,z); [a,b,c]=proses('mati40.wav',b0,usig,dsamp);j10=hjarak(c,z); %data percobaan pengenalan user 2 (endrico) [a,b,c]=proses('mati41.wav',b0,usig,dsamp);j11=hjarak(c,z); [a,b,c]=proses('mati42.wav',b0,usig,dsamp);j12=hjarak(c,z); [a,b,c]=proses('mati43.wav',b0,usig,dsamp);j13=hjarak(c,z); [a,b,c]=proses('mati44.wav',b0,usig,dsamp);j14=hjarak(c,z); [a,b,c]=proses('mati45.wav',b0,usig,dsamp);j15=hjarak(c,z); [a,b,c]=proses('mati46.wav',b0,usig,dsamp);j16=hjarak(c,z); [a,b,c]=proses('mati47.wav',b0,usig,dsamp);j17=hjarak(c,z); [a,b,c]=proses('mati48.wav',b0,usig,dsamp);j18=hjarak(c,z); [a,b,c]=proses('mati49.wav',b0,usig,dsamp);j19=hjarak(c,z); [a,b,c]=proses('mati50.wav',b0,usig,dsamp);j20=hjarak(c,z); %data percobaan pengenalan user 3 (ovan) [a,b,c]=proses('mati51.wav',b0,usig,dsamp);j21=hjarak(c,z); [a,b,c]=proses('mati52.wav',b0,usig,dsamp);j22=hjarak(c,z); [a,b,c]=proses('mati53.wav',b0,usig,dsamp);j23=hjarak(c,z); [a,b,c]=proses('mati54.wav',b0,usig,dsamp);j24=hjarak(c,z); [a,b,c]=proses('mati55.wav',b0,usig,dsamp);j25=hjarak(c,z); [a,b,c]=proses('mati56.wav',b0,usig,dsamp);j26=hjarak(c,z); [a,b,c]=proses('mati57.wav',b0,usig,dsamp);j27=hjarak(c,z); [a,b,c]=proses('mati58.wav',b0,usig,dsamp);j28=hjarak(c,z); [a,b,c]=proses('mati59.wav',b0,usig,dsamp);j29=hjarak(c,z); [a,b,c]=proses('mati60.wav',b0,usig,dsamp);j30=hjarak(c,z); k1=pout(j1);k2=pout(j2);k3=pout(j3);k4=pout(j4);k5=pout(j5); k6=pout(j6);k7=pout(j7);k8=pout(j8);k9=pout(j9);k10=pout(j10); k11=pout(j11);k12=pout(j12);k13=pout(j13);k14=pout(j14);k15=pout(j15); k16=pout(j16);k17=pout(j17);k18=pout(j18);k19=pout(j19);k20=pout(j20); k21=pout(j21);k22=pout(j22);k23=pout(j23);k24=pout(j24);k25=pout(j25); k26=pout(j26);k27=pout(j27);k28=pout(j28);k29=pout(j29);k30=pout(j30); input_mati={k1,k2,k3,k4,k5,k6,k7,k8,k9,k10,k11,k12,k13,k14,k15,k16,k17,k18,k19,k20,k21,k22 ,k23,k24,k25,k26,k27,k28,k29,k30} % Hitung tingkat pengenalan h1=cekout(input_cepat,1); h2=cekout(input_lambat,2); h3=cekout(input_hidup,3); h4=cekout(input_mati,4); jumlah_dikenal=h1+h2+h3+h4 %====================================================================== % INTERNAL FUNCTION %====================================================================== function [s1,s1p,s1x]=proses(fwav,b0,usig,dsamp) % Pemrosesan dari wavread hingga ekstraksi ciri DCT
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
L24
s1=wavread(fwav); s1p=potong(s1,b0); s1x=xdct(s1p,usig,dsamp); %====================================================================== function x2=potong(x0,b0) % Memotong data yang perlu % x0 : data masukan % b0 : batas pemotongan % x2 : data keluaran % Normalisasi x1=x0/max(abs(x0)); % Potong kiri b1=find(x1>b0 | x1<-b0); x1(1:b1(1))=[]; % Potong kanan x2=fliplr(x1'); b2=find(x2>b0 | x2<-b0); x2(1:b2(1))=[]; x2=fliplr(x2); %====================================================================== ==== function x1=xdct(x0,usig,dsamp) % Ekstraksi ciri DCT % x0 : data masukan % usig : ukuran sinyal % dsamp : faktor downsampling % x1 : data keluaran h=hamming(length(x0)); x0=x0.*h'; x0(usig)=0; x0=x0(1:dsamp:usig);
% hasil max 75%
% penyesuaian ukuran sinyal
x1=abs(dct(x0)); x2=log(x1); x1=reshape(x1,128,[]); x1=mean(x1); x1=x1(:);
%segment averaging
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
L25
function z=hjarak(x,y) % Menghitung jarak for k=1:30 s(k)=ejarak(x,y(:,k)); d(k)=ejarak(x,y(:,k+30)); g(k)=ejarak(x,y(:,k+60)); p(k)=ejarak(x,y(:,k+90));
% jarak untuk kelas 'cepat' % jarak untuk kelas 'lambat' % jarak untuk kelas 'hidup' % jarak untuk kelas 'mati'
end z=[s d g p]; %====================================================================== %Pembagian kelas KNN k=7; % k pada knn m=30; % Jumlah sampel per kelas [s1,s2]=sort(z,'ascend'); % s urut naik (fungsi jarak) kj=s1(1:k); kn=s2(1:k) % Pilih k nearest neighbour hk=ceil(kn/m); % Penentuan kelas-kelas yang terpilih z=modus(hk) % Pilih kelas yang paling sering muncul %====================================================================== function z=ejarak(x,y) % Jarak divergensi % x, y : data masukan % z : data keluaran a=(x-y).^2; b=(x+y).^2; c=sum(a./b); z=2*c; %====================================================================== function y=pout(x) % Penentuan keluaran kel={'cepat';'lambat';'hidup';'mati'}; %minx=find(x==min(x)); %y=kel{minx}; y=kel{x}; %====================================================================== function z=cekout(x,y) % Penghitungan keluaran yang benar kel={'cepat';'lambat';'hidup';'mati'}; z=0; for k=1:30 if length(x{k})==length(kel{y}) if x{k}==kel{y} z=z+1; end end end % ========================================================================
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 2. Listing Program GUI function varargout = Guy(varargin) % GUY M-file for Guy.fig % GUY, by itself, creates a new GUY or raises the existing % singleton*. % % H = GUY returns the handle to a new GUY or the handle to % the existing singleton*. % % GUY('CALLBACK',hObject,eventData,handles,...) calls the local % function named CALLBACK in GUY.M with the given input arguments. % % GUY('Property','Value',...) creates a new GUY or raises the % existing singleton*. Starting from the left, property value pairs are % applied to the GUI before Guy_OpeningFunction gets called. An % unrecognized property name or invalid value makes property application % stop. All inputs are passed to Guy_OpeningFcn via varargin. % % *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one % instance to run (singleton)". % % See also: GUIDE, GUIDATA, GUIHANDLES % Edit the above text to modify the response to help Guy % Last Modified by GUIDE v2.5 25-Feb-2015 12:30:19 % Begin initialization code - DO NOT EDIT gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @Guy_OpeningFcn, ... 'gui_OutputFcn', @Guy_OutputFcn, ... 'gui_LayoutFcn', [] , ... 'gui_Callback', []); if nargin && ischar(varargin{1}) gui_State.gui_Callback = str2func(varargin{1}); end if nargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else gui_mainfcn(gui_State, varargin{:}); end % End initialization code - DO NOT EDIT % --- Executes just before Guy is made visible. function Guy_OpeningFcn(hObject, eventdata, handles, varargin) % This function has no output args, see OutputFcn. % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % varargin command line arguments to Guy (see VARARGIN) % Choose default command line output for Guy handles.output = hObject;
L26
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
% Update handles structure guidata(hObject, handles); % UIWAIT makes Guy wait for user response (see UIRESUME) % uiwait(handles.figure1);
% --- Outputs from this function are returned to the command line. function varargout = Guy_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT); % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Get default command line output from handles structure varargout{1} = handles.output;
% --- Executes on selection change in popupmenu1. function popupmenu1_Callback(hObject, eventdata, handles) % hObject handle to popupmenu1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: contents = get(hObject,'String') returns popupmenu1 contents as cell array % contents{get(hObject,'Value')} returns selected item from popupmenu1 indeks=get (handles.popupmenu1, 'value'); switch indeks case 1 bataspotong=0.2; case 2 bataspotong=0.3; case 3 bataspotong=0.4; case 4 bataspotong=0.5; end handles.bpotong=bataspotong guidata(hObject,handles); % --- Executes during object creation, after setting all properties. function popupmenu1_CreateFcn(hObject, eventdata, handles) % hObject handle to popupmenu1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: popupmenu controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
L27
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
function edit1_Callback(hObject, eventdata, handles) % hObject handle to edit1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit1 as text % str2double(get(hObject,'String')) returns contents of edit1 as a double
% --- Executes during object creation, after setting all properties. function edit1_CreateFcn(hObject, eventdata, handles) % hObject handle to edit1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
% --- Executes on selection change in popupmenu2. function popupmenu2_Callback(hObject, eventdata, handles) % hObject handle to popupmenu2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: contents = get(hObject,'String') returns popupmenu2 contents as cell array % contents{get(hObject,'Value')} returns selected item from popupmenu2 indeks=get(handles.popupmenu2,'Value'); switch indeks case 1 fram=4; case 2 fram=8; case 3 fram=8; case 4 fram=16; case 5 fram=32; case 6 fram=64; case 7 fram=128; case 8 fram=256; end handles.frame=fram; guidata(hObject,handles);
L28
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
% --- Executes during object creation, after setting all properties. function popupmenu2_CreateFcn(hObject, eventdata, handles) % hObject handle to popupmenu2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: popupmenu controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
% --- Executes on button press in pushbutton1. function pushbutton1_Callback(hObject, eventdata, handles) % hObject handle to pushbutton1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) sample_length=1,5; sample_freq=6000; sample_time=(sample_length*sample_freq); x=wavrecord(sample_time, sample_freq); axes(handles.axes1) plot(x); b0=handles.bpotong; fram=handles.frame; suser=handles.xuser; knn=handles.nearest; %Normalisasi x1=x/max(abs(x)); %potong kiri b1=find(x1>b0 | x1<-b0); x1(1:b1(1))=[]; %potong kanan x2=fliplr(x1'); b2=find(x2>b0|x2<-b0); x2(1:b2(1))=[]; x2=fliplr(x2); %hamming h=hamming(length(x2)); x3=x2.*h'; %zero padding usig=2048; x3(usig)=0; x4=x3(1:usig); %DCT x5=abs(dct(x4)); x5=log(x5);
L29
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
%reshape x6=reshape(x5,fram,[]); x7=mean(x6); y=x7(:); axes(handles.axes2) plot(y); if(b0==0.2) & (fram==4) & (suser==1) load db024 elseif(b0==0.3) & (fram==4) & (suser==1) load db034 elseif(b0==0.4) & (fram==4) & (suser==1) load db044 elseif(b0==0.5) & (fram==4) & (suser==1) load db054 elseif(b0==0.2) & (fram==8) & (suser==1) load db028 elseif(b0==0.3) & (fram==8) & (suser==1) load db038 elseif(b0==0.4) & (fram==8) & (suser==1) load db048 elseif(b0==0.5) & (fram==8) & (suser==1) load db058 elseif(b0==0.2) & (fram==16) & (suser==1) load db0216 elseif(b0==0.3) & (fram==16) & (suser==1) load db0316 elseif (b0==0.4) & (fram==16) & (suser==1) load db0416 elseif (b0==0.5) & (fram==16) & (suser==1) load db0516 elseif (b0==0.2) & (fram==32) & (suser==1) load db0232 elseif(b0==0.3) & (fram==32) & (suser==1) load db0332 elseif(b0==0.4) & (fram==32) & (suser==1) load db0432
L30
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
elseif(b0==0.5) & (fram==32) & (suser==1) load db0532 elseif (b0==0.2) & (fram==64) & (suser==1) load db0264 elseif(b0==0.3) & (fram==64) & (suser==1) load db0364 elseif(b0==0.4) & (fram==64) & (suser==1) load db0464 elseif(b0==0.5) & (fram==64) & (suser==1) load db0564 elseif (b0==0.2) & (fram==128) & (suser==1) load db02128 elseif(b0==0.3) & (fram==128) & (suser==1) load db03128 elseif(b0==0.4) & (fram==128) & (suser==1) load db04128 elseif(b0==0.5) & (fram==128) & (suser==1) load db05128 elseif (b0==0.2) & (fram==256) & (suser==1) load db02256 elseif(b0==0.3) & (fram==256) & (suser==1) load db03256 elseif(b0==0.4) & (fram==256) & (suser==1) load db04256 elseif(b0==0.5) & (fram==256) & (suser==1) load db05256 elseif(b0==0.2) & (fram==4) & (suser==2) load db124 elseif(b0==0.3) & (fram==4) & (suser==2) load db134 elseif(b0==0.4) & (fram==4) & (suser==2) load db144 elseif(b0==0.5) & (fram==4) & (suser==2) load db154 elseif(b0==0.2) & (fram==8) & (suser==2) load db128
L31
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
elseif(b0==0.3) & (fram==8) & (suser==2) load db138 elseif(b0==0.4) & (fram==8) & (suser==2) load db148 elseif(b0==0.5) & (fram==8) & (suser==2) load db158 elseif(b0==0.2) & (fram==16) & (suser==2) load db1216 elseif(b0==0.3) & (fram==16) & (suser==2) load db1316 elseif (b0==0.4) & (fram==16) & (suser==2) load db1416 elseif (b0==0.5) & (fram==16) & (suser==2) load db1516 elseif (b0==0.2) & (fram==32) & (suser==2) load db1232 elseif(b0==0.3) & (fram==32) & (suser==2) load db1332 elseif(b0==0.4) & (fram==32) & (suser==2) load db1432 elseif(b0==0.5) & (fram==32) & (suser==2) load db1532 elseif (b0==0.2) & (fram==64) & (suser==2) load db1264 elseif(b0==0.3) & (fram==64) & (suser==2) load db1364 elseif(b0==0.4) & (fram==64) & (suser==2) load db1464 elseif(b0==0.5) & (fram==64) & (suser==2) load db1564 elseif (b0==0.2) & (fram==128) & (suser==2) load db12128 elseif(b0==0.3) & (fram==128) & (suser==2) load db13128 elseif(b0==0.4) & (fram==128) & (suser==2) load db14128
L32
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
elseif(b0==0.5) & (fram==128) & (suser==2) load db15128 elseif (b0==0.2) & (fram==256) & (suser==2) load db12256 elseif(b0==0.3) & (fram==256) & (suser==2) load db13256 elseif(b0==0.4) & (fram==256) & (suser==2) load db14256 elseif(b0==0.5) & (fram==256) & (suser==2) load db15256 elseif(b0==0.2) & (fram==4) & (suser==3) load db224 elseif(b0==0.3) & (fram==4) & (suser==3) load db234 elseif(b0==0.4) & (fram==4) & (suser==3) load db244 elseif(b0==0.5) & (fram==4) & (suser==3) load db254 elseif(b0==0.2) & (fram==8) & (suser==3) load db228 elseif(b0==0.3) & (fram==8) & (suser==3) load db238 elseif(b0==0.4) & (fram==8) & (suser==3) load db248 elseif(b0==0.5) & (fram==8) & (suser==3) load db258 elseif(b0==0.2) & (fram==16) & (suser==3) load db2216 elseif(b0==0.3) & (fram==16) & (suser==3) load db2316 elseif (b0==0.4) & (fram==16) & (suser==3) load db2416 elseif (b0==0.5) & (fram==16) & (suser==3) load db2516 elseif (b0==0.2) & (fram==32) & (suser==3) load db2232
L33
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
elseif(b0==0.3) & (fram==32) & (suser==3) load db2332 elseif(b0==0.4) & (fram==32) & (suser==3) load db2432 elseif(b0==0.5) & (fram==32) & (suser==3) load db2532 elseif (b0==0.2) & (fram==64) & (suser==3) load db2264 elseif(b0==0.3) & (fram==64) & (suser==3) load db2364 elseif(b0==0.4) & (fram==64) & (suser==3) load db2464 elseif(b0==0.5) & (fram==64) & (suser==3) load db2564 elseif (b0==0.2) & (fram==128) & (suser==3) load db22128 elseif(b0==0.3) & (fram==128) & (suser==3) load db23128 elseif(b0==0.4) & (fram==128) & (suser==3) load db24128 elseif(b0==0.5) & (fram==128) & (suser==3) load db25128 elseif (b0==0.2) & (fram==256) & (suser==3) load db22256 elseif(b0==0.3) & (fram==256) & (suser==3) load db23256 elseif(b0==0.4) & (fram==256) & (suser==3) load db24256 elseif(b0==0.5) & (fram==256) & (suser==3) load db25256 end %sx=size(y) %sz=size(z) for n=1:40 divergensix(n)=divergensi(y,z(:,n)); end
L34
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
L35
divergensimin=find(min(divergensix)==divergensix); mindivergensix=min(divergensix) [x1,x2]=sort(divergensix,'ascend') k=knn kj=x1(1:k); kn=x2(1:k) hk=ceil(kn/10) z=modus(hk) diveout={'hidup','cepat','lambat','mati'}; hasilout=diveout(z); set(handles.edit1,'string',hasilout); srl=strcmp('hidup',hasilout); if srl==1 delete(instrfind); pause (0.1); s=serial('COM1','BaudRate',9600,'DataBits',8,'parity','none','StopBits',1,'FlowControl','none'); fopen(s); fprintf(s,'%c','H') fclose(s); delete(s); clear s; end srl=strcmp('lambat',hasilout); if srl==1 delete(instrfind); pause (0.1); s=serial('COM1','BaudRate',9600,'DataBits',8,'parity','none','StopBits',1,'FlowControl','none'); fopen(s); fprintf(s,'%c','L') fclose(s); delete(s); clear s; end srl=strcmp('cepat',hasilout); if srl==1 delete(instrfind); pause (0.1); s=serial('COM1','BaudRate',9600,'DataBits',8,'parity','none','StopBits',1,'FlowControl','none'); fopen(s); fprintf(s,'%c','C') fclose(s); delete(s); clear s; end srl=strcmp('mati',hasilout); if srl==1 delete(instrfind); pause (0.1); s=serial('COM1','BaudRate',9600,'DataBits',8,'parity','none','StopBits',1,'FlowControl','none'); fopen(s); fprintf(s,'%c','M') fclose(s); delete(s); clear s; end
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
% --- Executes on button press in pushbutton2. 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',' '); %set(handles.text1,'string',''); % --- Executes on button press in pushbutton4. function pushbutton4_Callback(hObject, eventdata, handles) % hObject handle to pushbutton4 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) delete(figure(Guy)); function edit3_Callback(hObject, eventdata, handles) % hObject handle to edit3 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit3 as text % str2double(get(hObject,'String')) returns contents of edit3 as a double
% --- Executes during object creation, after setting all properties. function edit3_CreateFcn(hObject, eventdata, handles) % hObject handle to edit3 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
% --- Executes on selection change in popupmenu3. function popupmenu3_Callback(hObject, eventdata, handles) % hObject handle to popupmenu3 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: contents = get(hObject,'String') returns popupmenu3 contents as cell array % contents{get(hObject,'Value')} returns selected item from popupmenu3 indeks=get(handles.popupmenu3,'Value'); switch indeks case 1 knn=1; case 2 knn=3;
L36
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
case 3 knn=5; case 4 knn=7; end handles.nearest=knn; guidata(hObject,handles); % --- Executes during object creation, after setting all properties. function popupmenu3_CreateFcn(hObject, eventdata, handles) % hObject handle to popupmenu3 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: popupmenu controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
% --- Executes on selection change in popupmenu7. function popupmenu7_Callback(hObject, eventdata, handles) % hObject handle to popupmenu7 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) indeks=get(handles.popupmenu7,'Value'); switch indeks case 1 user=1; case 2 user=2; case 3 user=3;
end handles.xuser=user; guidata(hObject,handles); % Hints: contents = get(hObject,'String') returns popupmenu7 contents as cell array % contents{get(hObject,'Value')} returns selected item from popupmenu7 % --- Executes during object creation, after setting all properties. function popupmenu7_CreateFcn(hObject, eventdata, handles) % hObject handle to popupmenu7 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: popupmenu controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
L37
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
L38
3. Listing Program Pembuatan Database function dbxciri b0=0.5; fram=256; z1=zciri ('hidup',b0,fram); z2=zciri ('cepat',b0,fram); z3=zciri ('lambat',b0,fram); z4=zciri ('mati',b0,fram); z=[z1 z2 z3 z4]; save db25256 z %====================================================================== ==== %INTERNAL FUNCTION function z=zciri(fwav,b0,fram) x1=wavread([fwav '1.wav']);y=potong(x1,b0);e1=xdct(y,fram); x2=wavread([fwav '2.wav']);y=potong(x2,b0);e2=xdct(y,fram); x3=wavread([fwav '3.wav']);y=potong(x3,b0);e3=xdct(y,fram); x4=wavread([fwav '4.wav']);y=potong(x4,b0);e4=xdct(y,fram); x5=wavread([fwav '5.wav']);y=potong(x5,b0);e5=xdct(y,fram); x6=wavread([fwav '6.wav']);y=potong(x6,b0);e6=xdct(y,fram); x7=wavread([fwav '7.wav']);y=potong(x7,b0);e7=xdct(y,fram); x8=wavread([fwav '8.wav']);y=potong(x8,b0);e8=xdct(y,fram); x9=wavread([fwav '9.wav']);y=potong(x9,b0);e9=xdct(y,fram); x10=wavread([fwav '10.wav']);y=potong(x10,b0);e10=xdct(y,fram); z=[e1 e2 e3 e4 e5 e6 e7 e8 e9 e10]; %====================================================================== function bp=potong(x0,b0); %Normalisasi x1=x0/max(abs(x0)); %potong kiri b1=find(x1>b0 | x1<-b0); x1(1:b1(1))=[]; %Potong kanan x2=fliplr(x1'); b2=find(x2>b0 | x2<-b0); x2(1:b2(1))=[]; x2=fliplr(x2); bp=x2; %====================================================================== function y=xdct(x0,fram); %windowing h=hamming(length(x0)); x0=x0.*h';
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
%zero padding usig=2048; x0(usig)=0; x0=x0(1:usig); %DCT x1=abs(dct(x0)); x1=log(x1); %reshape x2=reshape(x1,fram,[]); x2=mean(x2); y=x2(:);
4. Listing Program Fungsi Jarak Divergensi function d=divergensi(x,z); % Jarak divergensi % x, z : data masukan % d : data keluaran a=(x-z).^2; b=(x+z).^2; c=sum(a./b); d=(2.*c);
5. Listing Program Modus function y=modus(x) % Mencari nilai yang paling sering muncul versi 2 N=length(x); if N==1 y=x; else terus1=1; m=1; while terus1==1 a=find(x==x(1)); b(m,:)=[length(a) x(1)]; m=m+1; x(a)=[]; c=isempty(x); if c==1 terus1=0; end
L39
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
end d=sortrows(b,1); e=find(d(:,1)==max(d(:,1))); f=d(e,:); y=f(1,2); end
6. Listing Program Pengiriman Data Serial Secara Tidak Real Time s=serial('COM1','BaudRate',9600,'DataBits',8,'parity','none','StopBits',1,'FlowControl','none'); fopen(s); fprintf(s,'%c','H') fclose(s); delete(s); clear s;
L40
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI LISTING PROGRAM MIKROKONTROLER
/***************************************************** This program was produced by the CodeWizardAVR V2.05.3 Standard Automatic Program Generator © Copyright 1998-2011 Pavel Haiduc, HP InfoTech s.r.l. http://www.hpinfotech.com Project : Version : Date : 03/03/2015 Author : HENRY Company : usd Comments:
Chip type : ATmega8535 Program type : Application AVR Core Clock frequency: 12,000000 MHz Memory model : Small External RAM size :0 Data Stack size : 128 *****************************************************/ #include <mega8535.h> char serial; int a; int b; int c; while (1) { { serial=getchar(); if ((serial==0x43)&(a==0||c==1)) //ucapan cepat { { switch (b){ case(0) : PORTB.3=1; PORTB.2=0; PORTB.1=0; PORTB.0=0; b=b+1; a=1; c=1; break;
L41
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
case(1) : PORTB.3=0; PORTB.2=1; PORTB.1=0; PORTB.0=0; b=b+1; a=1; c=1; break; case(2) : PORTB.3=0; PORTB.2=0; PORTB.1=1; PORTB.0=0; b=b+1; a=1; c=1; break; case(3) : PORTB.3=0; PORTB.2=0; PORTB.1=0; PORTB.0=1; b=b+1; a=1; c=1; break; case(4) : PORTB.3=0; PORTB.2=0; PORTB.1=0; PORTB.0=1; b=4; a=1; c=1; break; } } } if ((serial==0x4C)&(a==1||c==1)) //ucapan lambat { switch (b){ case(4) : PORTB.3=0; PORTB.2=0;
L42
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
PORTB.1=1; PORTB.0=0; b=b-1; a=1; c=1; break; case(3) : PORTB.3=0; PORTB.2=1; PORTB.1=0; PORTB.0=0; b=b-1; a=1; c=1; break; case(2) : PORTB.3=1; PORTB.2=0; PORTB.1=0; PORTB.0=0; b=b-1; a=1; c=1; break; case(1) : PORTB.3=0; PORTB.2=0; PORTB.1=0; PORTB.0=0; b=b-1; a=1; c=1; break; case(0) : PORTB.3=0; PORTB.2=0; PORTB.1=0; PORTB.0=0; b=b-1; a=1; c=1; break; }
}
L43
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
if ((serial==0x48)&(a==0||c==1)) //ucapan hidup { PORTB.0=1; a=1; b=4; } if ((serial==0x4D)&(a==1||c==1)) //ucapan mati { PORTB=0; a=0; b=0; c=0; } } } }
L44
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI L45
LAMPIRAN G KESELURUHAN RANGKAIAN PADA HARDWARE
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI L46
(LANJUTAN) KESELURUHAN RANGKAIAN PADA HARDWARE
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
DATASHEET
Order this document by ULN2803/D PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
The eight NPN Darlington connected transistors in this family of arrays are ideally suited for interfacing between low logic level digital circuitry (such as TTL, CMOS or PMOS/NMOS) and the higher current/voltage requirements of lamps, relays, printer hammers or other similar loads for a broad range of computer, industrial, and consumer applications. All devices feature open–collector outputs and free wheeling clamp diodes for transient suppression. The ULN2803 is designed to be compatible with standard TTL families while the ULN2804 is optimized for 6 to 15 volt high level CMOS or PMOS.
OCTAL PERIPHERAL DRIVER ARRAYS SEMICONDUCTOR TECHNICAL DATA
MAXIMUM RATINGS (TA = 25°C and rating apply to any one device in the package, unless otherwise noted.) Rating
Symbol
Value
Unit
Output Voltage
VO
50
V
Input Voltage (Except ULN2801)
VI
30
V
Collector Current – Continuous
IC
500
mA
Base Current – Continuous
IB
25
mA
Operating Ambient Temperature Range
TA
0 to +70
°C
Tstg
– 55 to +150
°C
TJ
125
°C
Storage Temperature Range Junction Temperature
A SUFFIX PLASTIC PACKAGE CASE 707
PIN CONNECTIONS
RθJA = 55°C/W Do not exceed maximum current limit per driver.
ORDERING INFORMATION
1
18
2
17
3
16
4
15
5
14
6
13
7
12
8
11
Gnd 9
10
Characteristics
D i Device
Input Compatibility
ULN2803A ULN2804A
TTL, 5.0 V CMOS 6 to 15 V CMOS, PMOS
VCE(Max)/IC(Max)
Operating Temperature Range
50 V/500 mA
TA = 0 to + 70°C
Motorola, Inc. 1996
MOTOROLA ANALOG IC DEVICE DATA
Rev 1
1
PLAGIAT TINDAKAN ULN2803 ULN2804 TIDAK PLAGIATMERUPAKAN MERUPAKAN TINDAKAN TIDAKTERPUJI TERPUJI ELECTRICAL CHARACTERISTICS (TA = 25°C, unless otherwise noted) Characteristic
Symbol
Output Leakage Current (Figure 1) (VO = 50 V, TA = +70°C) (VO = 50 V, TA = +25°C) (VO = 50 V, TA = +70°C, VI = 6.0 V) (VO = 50 V, TA = +70°C, VI = 1.0 V)
All Types All Types ULN2802 ULN2804
Collector–Emitter Saturation Voltage (Figure 2) (IC = 350 mA, IB = 500 µA) (IC = 200 mA, IB = 350 µA) (IC = 100 mA, IB = 250 µA)
All Types All Types All Types
Input Current – On Condition (Figure 4) (VI = 17 V) (VI = 3.85 V) (VI = 5.0 V) (VI = 12 V)
ULN2802 ULN2803 ULN2804 ULN2804
Input Voltage – On Condition (Figure 5) (VCE = 2.0 V, IC = 300 mA) (VCE = 2.0 V, IC = 200 mA) (VCE = 2.0 V, IC = 250 mA) (VCE = 2.0 V, IC = 300 mA) (VCE = 2.0 V, IC = 125 mA) (VCE = 2.0 V, IC = 200 mA) (VCE = 2.0 V, IC = 275 mA) (VCE = 2.0 V, IC = 350 mA)
ULN2802 ULN2803 ULN2803 ULN2803 ULN2804 ULN2804 ULN2804 ULN2804
Min
Typ
Max
– – – –
– – – –
– – –
1.1 0.95 0.85
1.6 1.3 1.1
– – – –
0.82 0.93 0.35 1.0
1.25 1.35 0.5 1.45
– – – – – – – –
– – – – – – – –
13 2.4 2.7 3.0 5.0 6.0 7.0 8.0
Unit µA
ICEX 100 50 500 500
VCE(sat)
V
II(on)
mA
VI(on)
V
Input Current – Off Condition (Figure 3) (IC = 500 µA, TA = +70°C)
All Types
II(off)
50
100
–
µA
DC Current Gain (Figure 2) (VCE = 2.0 V, IC = 350 mA)
ULN2801
hFE
1000
–
–
–
Input Capacitance
CI
–
15
25
pF
Turn–On Delay Time (50% EI to 50% EO)
ton
–
0.25
1.0
µs
Turn–Off Delay Time (50% EI to 50% EO)
toff
–
0.25
1.0
µs
IR
–
–
50 100
µA
VF
–
1.5
2.0
V
Clamp Diode Leakage Current (Figure 6) (VR = 50 V) Clamp Diode Forward Voltage (Figure 7) (IF = 350 mA)
2
TA = +25°C TA = +70°C
MOTOROLA ANALOG IC DEVICE DATA
PLAGIAT TINDAKAN ULN2803 ULN2804 TIDAK PLAGIATMERUPAKAN MERUPAKAN TINDAKAN TIDAKTERPUJI TERPUJI TEST FIGURES (See Figure Numbers in Electrical Characteristics Table)
Figure 1.
Figure 2.
Open
Open
VCE
+ IC I
h FE
in
µA ICEX
Open DUT
DUT
Vin
IC V VCE
Figure 3.
Figure 4. Open
Open
VCE
µA Iin
µA
µA
DUT
DUT
Open
Vin
Vin
Figure 5.
Figure 6. VR
Open
µA IR DUT
DUT
IC Vin
V
VCE
Open
V
Figure 7.
IF V VF
DUT Open
MOTOROLA ANALOG IC DEVICE DATA
3
PLAGIAT TINDAKAN ULN2803 ULN2804 TIDAK PLAGIATMERUPAKAN MERUPAKAN TINDAKAN TIDAKTERPUJI TERPUJI TYPICAL CHARACTERISTIC CURVES – TA = 25°C, unless otherwise noted Output Characteristics Figure 9. Output Current versus Input Current
IC , COLLECTOR CURRENT (mA)
IC , COLLECTOR CURRENT (mA)
Figure 8. Output Current versus Saturation Voltage
600 All Types 400
200
600 All Types 400
200
0
0 0
0.5 1.0 1.5 VCE(sat), SATURATION VOLTAGE (V)
2.0
0
200
400 600 IIN, INPUT CURRENT (µA)
800
Input Characteristics Figure 11. ULN2804 Input Current versus Input Voltage
Figure 10. ULN2803 Input Current versus Input Voltage 2.0
IIN , INPUT CURRENT (mA)
IIN , INPUT CURRENT (mA)
2.0
1.5
1.0
0.5
0 2.0
2.5
3.0
3.5 4.0 4.5 VIN, INPUT VOLTAGE (V)
5.0
5.5
6.0
1.5
1.0
0.5
0 5.0
6.0
7.0
8.0 9.0 10 VIN, INPUT VOLTAGE (V)
11
12
13
Figure 12. Representative Schematic Diagrams 1/8 ULN2803 2.7 k
Pin 10
10.5 k
Pin 10
7.2 k
7.2 k 3.0 k
4
1/8 ULN2804
3.0 k
MOTOROLA ANALOG IC DEVICE DATA
PLAGIAT TINDAKAN ULN2803 ULN2804 TIDAK PLAGIATMERUPAKAN MERUPAKAN TINDAKAN TIDAKTERPUJI TERPUJI OUTLINE DIMENSIONS A SUFFIX PLASTIC PACKAGE CASE 707–02 ISSUE C 18
10
B 1
9
NOTES: 1. POSITIONAL TOLERANCE OF LEADS (D), SHALL BE WITHIN 0.25 (0.010) AT MAXIMUM MATERIAL CONDITION, IN RELATION TO SEATING PLANE AND EACH OTHER. 2. DIMENSION L TO CENTER OF LEADS WHEN FORMED PARALLEL. 3. DIMENSION B DOES NOT INCLUDE MOLD FLASH.
A L
C
N F H
D G
K
SEATING PLANE
MOTOROLA ANALOG IC DEVICE DATA
M
J
DIM A B C D F G H J K L M N
MILLIMETERS MIN MAX 22.22 23.24 6.10 6.60 3.56 4.57 0.36 0.56 1.27 1.78 2.54 BSC 1.02 1.52 0.20 0.30 2.92 3.43 7.62 BSC 0_ 15_ 0.51 1.02
INCHES MIN MAX 0.875 0.915 0.240 0.260 0.140 0.180 0.014 0.022 0.050 0.070 0.100 BSC 0.040 0.060 0.008 0.012 0.115 0.135 0.300 BSC 0_ 15 _ 0.020 0.040
5
PLAGIAT TINDAKAN ULN2803 ULN2804 TIDAK PLAGIATMERUPAKAN MERUPAKAN TINDAKAN TIDAKTERPUJI TERPUJI
Motorola reserves the right to make changes without further notice to any products herein. Motorola makes no warranty, representation or guarantee regarding the suitability of its products for any particular purpose, nor does Motorola assume any liability arising out of the application or use of any product or circuit, and specifically disclaims any and all liability, including without limitation consequential or incidental damages. “Typical” parameters which may be provided in Motorola data sheets and/or specifications can and do vary in different applications and actual performance may vary over time. All operating parameters, including “Typicals” must be validated for each customer application by customer’s technical experts. Motorola does not convey any license under its patent rights nor the rights of others. Motorola products are not designed, intended, or authorized for use as components in systems intended for surgical implant into the body, or other applications intended to support or sustain life, or for any other application in which the failure of the Motorola product could create a situation where personal injury or death may occur. Should Buyer purchase or use Motorola products for any such unintended or unauthorized application, Buyer shall indemnify and hold Motorola and its officers, employees, subsidiaries, affiliates, and distributors harmless against all claims, costs, damages, and expenses, and reasonable attorney fees arising out of, directly or indirectly, any claim of personal injury or death associated with such unintended or unauthorized use, even if such claim alleges that Motorola was negligent regarding the design or manufacture of the part. Motorola and are registered trademarks of Motorola, Inc. Motorola, Inc. is an Equal Opportunity/Affirmative Action Employer. How to reach us: USA / EUROPE / Locations Not Listed: Motorola Literature Distribution; P.O. Box 20912; Phoenix, Arizona 85036. 1–800–441–2447 or 602–303–5454
JAPAN: Nippon Motorola Ltd.; Tatsumi–SPD–JLDC, 6F Seibu–Butsuryu–Center, 3–14–2 Tatsumi Koto–Ku, Tokyo 135, Japan. 03–81–3521–8315
MFAX:
[email protected] – TOUCHTONE 602–244–6609 INTERNET: http://Design–NET.com
ASIA/PACIFIC: Motorola Semiconductors H.K. Ltd.; 8B Tai Ping Industrial Park, 51 Ting Kok Road, Tai Po, N.T., Hong Kong. 852–26629298
6
◊
*ULN2803/D*
MOTOROLA ANALOG IC DEVICE DATA ULN2803/D
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI LM7805C, LM7812C, LM7815C www.ti.com
SNOSBR7D – MAY 2000 – REVISED APRIL 2013
LM78XX Series Voltage Regulators Check for Samples: LM7805C, LM7812C, LM7815C
FEATURES
1
• • • • • • 2
Output Current in Excess of 1A Internal Thermal Overload Protection No External Components Required Output Transistor Safe Area Protection Internal Short Circuit Current Limit Available in the Aluminum TO-3 Package
DESCRIPTION The LM78XX series of three terminal regulators is available with several fixed output voltages making them useful in a wide range of applications. One of these is local on card regulation, eliminating the distribution problems associated with single point regulation. The voltages available allow these regulators to be used in logic systems, instrumentation, HiFi, and other solid state electronic equipment. Although designed primarily as fixed voltage regulators these devices can be used with external components to obtain adjustable voltages and currents.
The LM78XX series is available in an aluminum TO-3 package which will allow over 1.0A load current if adequate heat sinking is provided. Current limiting is included to limit the peak output current to a safe value. Safe area protection for the output transistor is provided to limit internal power dissipation. If internal power dissipation becomes too high for the heat sinking provided, the thermal shutdown circuit takes over preventing the IC from overheating. Considerable effort was expanded to make the LM78XX series of regulators easy to use and minimize the number of external components. It is not necessary to bypass the output, although this does improve transient response. Input bypassing is needed only if the regulator is located far from the filter capacitor of the power supply. For output voltage other than 5V, 12V and 15V the LM117 series provides an output voltage range from 1.2V to 57V.
VOLTAGE RANGE • • •
LM7805C: 5V LM7812C: 12V LM7815C: 15V
Connection Diagrams
Figure 1. Metal Can Package TO-3 Aluminum Bottom View
Figure 2. Plastic Package TO-220 (NDE) Top View See Package Number NDE0003B
1
2
Please be aware that an important notice concerning availability, standard warranty, and use in critical applications of Texas Instruments semiconductor products and disclaimers thereto appears at the end of this data sheet. All trademarks are the property of their respective owners.
PRODUCTION DATA information is current as of publication date. Products conform to specifications per the terms of the Texas Instruments standard warranty. Production processing does not necessarily include testing of all parameters.
Copyright © 2000–2013, Texas Instruments Incorporated
PLAGIAT MERUPAKAN PLAGIAT MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI LM7805C, LM7812C, LM7815C SNOSBR7D – MAY 2000 – REVISED APRIL 2013
www.ti.com
SCHEMATIC DIAGRAM
2
Submit Documentation Feedback
Copyright © 2000–2013, Texas Instruments Incorporated
Product Folder Links: LM7805C LM7812C LM7815C
PLAGIAT TERPUJI PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAK TERPUJI LM7805C, LM7812C, LM7815C www.ti.com
SNOSBR7D – MAY 2000 – REVISED APRIL 2013
These devices have limited built-in ESD protection. The leads should be shorted together or the device placed in conductive foam during storage or handling to prevent electrostatic damage to the MOS gates.
ABSOLUTE MAXIMUM RATINGS (1) (2) Input Voltage (VO = 5V, 12V and 15V)
35V
Internal Power Dissipation (3)
Internally Limited
Operating Temperature Range (TA)
0°C to +70°C (TO-3 Package)
Maximum Junction Temperature
150°C
(NDE Package)
150°C −65°C to +150°C
Storage Temperature Range Lead Temperature (Soldering, 10 sec.) (1) (2) (3)
TO-3 Package
300°C
TO-220 Package NDE
230°C
Absolute Maximum Ratings indicate limits beyond which damage to the device may occur. For ensured specifications and the test conditions, see Electrical Characteristics. If Military/Aerospace specified devices are required, please contact the Texas Instruments Sales Office/Distributors for availability and specifications. Thermal resistance of the TO-3 package is typically 4°C/W junction to case and 35°C/W case to ambient. Thermal resistance of the TO220 package (NDE) is typically 4°C/W junction to case and 50°C/W case to ambient.
ELECTRICAL CHARACTERISTICS LM78XXC (1) 0°C ≤ TJ ≤ 125°C unless otherwise noted.
Symbol VO
Output Voltage
5V
12V
15V
Input Voltage (unless otherwise noted)
10V
19V
23V
Parameter Output Voltage
Conditions
Min
Typ
Max
Min
Typ
Max
Min
Typ
Max
Tj = 25°C, 5 mA ≤ IO ≤ 1A
4.8
5
5.2
11.5
12
12.5
14.4
15
15.6
V
PD ≤ 15W, 5 mA ≤ IO ≤ 1A
4.75
5.25
11.4
12.6
14.2
15.7
V
5
5
VMIN ≤ VIN ≤ VMAX ΔVO
Line Regulation
IO = 500 mA
Tj = 25°C ΔVIN
(7.5 ≤ VIN ≤ 20)
(14.5 ≤ VIN ≤ 27)
(17.5 ≤ VIN ≤ 30)
V
3
4
4
mV
ΔVIN IO ≤ 1A
Load Regulation
Tj = 25°C
5 mA ≤ IO ≤ 1.5A 250 mA ≤ IO ≤ 750 mA
5 mA ≤ IO ≤ 1A, 0°C ≤ Tj ≤ +125°C IQ
Quiescent Current
IO ≤ 1A
Tj = 25°C
Quiescent Current Change
120
150
(7.5 ≤ VIN ≤ 20)
(14.6 ≤ VIN ≤ 27)
(17.7 ≤ VIN ≤ 30)
25
60
75
mV V mV V mV
(8 ≤ VIN ≤ 12)
(16 ≤ VIN ≤ 22)
(20 ≤ VIN ≤ 26)
V
10
12
12
50
150
mV
25
120 60
75
mV
50
120
150
mV
8
8
8
mA
8.5
8.5
mA
5 mA ≤ IO ≤ 1A
0.5
0.5
0.5
mA
Tj = 25°C, IO ≤ 1A
1.0
1.0
1.0
mA
(14.8 ≤ VIN≤ 27)
(17.9 ≤ VIN ≤ 30)
1.0
1.0
(14.5 ≤ VIN≤ 30)
(17.5 ≤ VIN ≤ 30)
VMIN ≤ VIN ≤ VMAX IO ≤ 500 mA, 0°C ≤ Tj ≤ +125°C VMIN ≤ VIN ≤ VMAX
(1)
150 (18.5 ≤ VIN ≤ 30)
V
8.5
0°C ≤ Tj ≤ +125°C ΔIQ
(17.5 ≤ VIN ≤ 30)
120 (15 ≤ VIN ≤ 27)
150
50
0°C ≤ Tj ≤ +125°C ΔVIN
120
14.5 ≤ VIN ≤ 30)
50 (8 ≤ VIN ≤ 20)
Tj = 25°C ΔVIN
50
(7 ≤ VIN ≤ 25)
0°C ≤ Tj ≤ +125°C
ΔVO
Units
(7.5 ≤ VIN ≤ 20) 1.0 (7 ≤ VIN ≤ 25)
V mA V
All characteristics are measured with capacitor across the input of 0.22 μF, and a capacitor across the output of 0.1μF. All characteristics except noise voltage and ripple rejection ratio are measured using pulse techniques (tw ≤ 10 ms, duty cycle ≤ 5%). Output voltage changes due to changes in internal temperature must be taken into account separately.
Copyright © 2000–2013, Texas Instruments Incorporated
Product Folder Links: LM7805C LM7812C LM7815C
Submit Documentation Feedback
3
PLAGIAT MERUPAKAN PLAGIAT MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI LM7805C, LM7812C, LM7815C SNOSBR7D – MAY 2000 – REVISED APRIL 2013
www.ti.com
ELECTRICAL CHARACTERISTICS LM78XXC(1) (continued) 0°C ≤ TJ ≤ 125°C unless otherwise noted. Output Voltage
5V
Input Voltage (unless otherwise noted) Symbol VN
Parameter Output Noise Voltage Ripple Rejection
Conditions
ΔVIN/Δ VOUT
VIN
Typ
62
IO ≤ 500 mA
62
15V
19V Max
Min
40
IO ≤ 1A, Tj = 25°C or
80
Typ
23V Max
Min
75 55
72
55
54
Typ
Units Max
90
μV
70
dB
54
dB
0°C ≤ Tj ≤ +125°C VMIN ≤ VIN ≤ VMAX
RO
10V Min
TA =25°C, 10 Hz ≤ f ≤ 100 kHz f = 120 Hz
12V
(8 ≤ VIN ≤ 18)
(15 ≤ VIN ≤ 25)
(18.5 ≤ VIN ≤ 28.5)
2.0
2.0
2.0
V
8
18
19
mΩ
Short-Circuit Current Tj = 25°C
2.1
1.5
1.2
A
Peak Output Current Tj = 25°C
2.4
2.4
2.4
A
Average TC of VOUT 0°C ≤ Tj ≤ +125°C, IO = 5 mA
0.6
1.5
1.8
mV/°C
Dropout Voltage
Tj = 25°C, IOUT = 1A
Output Resistance
f = 1 kHz
V
Input Voltage Required to Maintain
Tj = 25°C, IO ≤ 1A
7.5
14.6
17.7
V
Line Regulation
4
Submit Documentation Feedback
Copyright © 2000–2013, Texas Instruments Incorporated
Product Folder Links: LM7805C LM7812C LM7815C
PLAGIAT TERPUJI PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAK TERPUJI LM7805C, LM7812C, LM7815C www.ti.com
SNOSBR7D – MAY 2000 – REVISED APRIL 2013
TYPICAL PERFORMANCE CHARACTERISTICS Maximum Average Power Dissipation
Maximum Average Power Dissipation
Figure 3.
Figure 4.
Peak Output Current
Output Voltage (Normalized to 1V at TJ = 25°C)
Figure 5.
Figure 6.
Ripple Rejection
Ripple Rejection
Figure 7.
Figure 8.
Copyright © 2000–2013, Texas Instruments Incorporated
Product Folder Links: LM7805C LM7812C LM7815C
Submit Documentation Feedback
5
PLAGIAT MERUPAKAN PLAGIAT MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI LM7805C, LM7812C, LM7815C SNOSBR7D – MAY 2000 – REVISED APRIL 2013
www.ti.com
TYPICAL PERFORMANCE CHARACTERISTICS (continued) Output Impedance
Dropout Voltage
Figure 9.
Figure 10.
Dropout Characteristics
Quiescent Current
Figure .
Figure 11. Quiescent Current
Figure 12.
6
Submit Documentation Feedback
Copyright © 2000–2013, Texas Instruments Incorporated
Product Folder Links: LM7805C LM7812C LM7815C
PLAGIAT TERPUJI PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAK TERPUJI LM7805C, LM7812C, LM7815C www.ti.com
SNOSBR7D – MAY 2000 – REVISED APRIL 2013
REVISION HISTORY Changes from Revision C (April 2013) to Revision D •
Page
Changed layout of National Data Sheet to TI format ............................................................................................................ 6
Copyright © 2000–2013, Texas Instruments Incorporated
Product Folder Links: LM7805C LM7812C LM7815C
Submit Documentation Feedback
7
PACKAGE OPTION ADDENDUM PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
www.ti.com
15-Jul-2014
PACKAGING INFORMATION Orderable Device
Status (1)
Package Type Package Pins Package Drawing Qty
Eco Plan
Lead/Ball Finish
MSL Peak Temp
(2)
(6)
(3)
Op Temp (°C)
Device Marking (4/5)
LM7805CT
ACTIVE
TO-220
NDE
3
45
TBD
Call TI
Call TI
0 to 70
LM340T5 7805 P+
LM7805CT/NOPB
ACTIVE
TO-220
NDE
3
45
Pb-Free (RoHS Exempt)
CU SN
Level-1-NA-UNLIM
0 to 70
LM340T5 7805 P+
LM7815CT
NRND
TO-220
NDE
3
45
TBD
Call TI
Call TI
0 to 70
LM340T15 7815 P+
LM7815CT/NOPB
ACTIVE
TO-220
NDE
3
45
Green (RoHS & no Sb/Br)
CU SN
Level-1-NA-UNLIM
0 to 70
LM340T15 7815 P+
(1)
The marketing status values are defined as follows: ACTIVE: Product device recommended for new designs. LIFEBUY: TI has announced that the device will be discontinued, and a lifetime-buy period is in effect. NRND: Not recommended for new designs. Device is in production to support existing customers, but TI does not recommend using this part in a new design. PREVIEW: Device has been announced but is not in production. Samples may or may not be available. OBSOLETE: TI has discontinued the production of the device. (2)
Eco Plan - The planned eco-friendly classification: Pb-Free (RoHS), Pb-Free (RoHS Exempt), or Green (RoHS & no Sb/Br) - please check http://www.ti.com/productcontent for the latest availability information and additional product content details. TBD: The Pb-Free/Green conversion plan has not been defined. Pb-Free (RoHS): TI's terms "Lead-Free" or "Pb-Free" mean semiconductor products that are compatible with the current RoHS requirements for all 6 substances, including the requirement that lead not exceed 0.1% by weight in homogeneous materials. Where designed to be soldered at high temperatures, TI Pb-Free products are suitable for use in specified lead-free processes. Pb-Free (RoHS Exempt): This component has a RoHS exemption for either 1) lead-based flip-chip solder bumps used between the die and package, or 2) lead-based die adhesive used between the die and leadframe. The component is otherwise considered Pb-Free (RoHS compatible) as defined above. Green (RoHS & no Sb/Br): TI defines "Green" to mean Pb-Free (RoHS compatible), and free of Bromine (Br) and Antimony (Sb) based flame retardants (Br or Sb do not exceed 0.1% by weight in homogeneous material) (3)
MSL, Peak Temp. - The Moisture Sensitivity Level rating according to the JEDEC industry standard classifications, and peak solder temperature.
(4)
There may be additional marking, which relates to the logo, the lot trace code information, or the environmental category on the device.
(5)
Multiple Device Markings will be inside parentheses. Only one Device Marking contained in parentheses and separated by a "~" will appear on a device. If a line is indented then it is a continuation of the previous line and the two combined represent the entire Device Marking for that device. (6)
Lead/Ball Finish - Orderable Devices may have multiple material finish options. Finish options are separated by a vertical ruled line. Lead/Ball Finish values may wrap to two lines if the finish value exceeds the maximum column width.
Addendum-Page 1
Samples
PACKAGE OPTION ADDENDUM PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
www.ti.com
15-Jul-2014
Important Information and Disclaimer:The information provided on this page represents TI's knowledge and belief as of the date that it is provided. TI bases its knowledge and belief on information provided by third parties, and makes no representation or warranty as to the accuracy of such information. Efforts are underway to better integrate information from third parties. TI has taken and continues to take reasonable steps to provide representative and accurate information but may not have conducted destructive testing or chemical analysis on incoming materials and chemicals. TI and TI suppliers consider certain information to be proprietary, and thus CAS numbers and other limited information may not be available for release. In no event shall TI's liability arising out of such information exceed the total purchase price of the TI part(s) at issue in this document sold by TI to Customer on an annual basis.
Addendum-Page 2
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI MECHANICAL DATA
NDE0003B
www.ti.com
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
IMPORTANT NOTICE Texas Instruments Incorporated and its subsidiaries (TI) reserve the right to make corrections, enhancements, improvements and other changes to its semiconductor products and services per JESD46, latest issue, and to discontinue any product or service per JESD48, latest issue. Buyers should obtain the latest relevant information before placing orders and should verify that such information is current and complete. All semiconductor products (also referred to herein as “components”) are sold subject to TI’s terms and conditions of sale supplied at the time of order acknowledgment. TI warrants performance of its components to the specifications applicable at the time of sale, in accordance with the warranty in TI’s terms and conditions of sale of semiconductor products. Testing and other quality control techniques are used to the extent TI deems necessary to support this warranty. Except where mandated by applicable law, testing of all parameters of each component is not necessarily performed. TI assumes no liability for applications assistance or the design of Buyers’ products. Buyers are responsible for their products and applications using TI components. To minimize the risks associated with Buyers’ products and applications, Buyers should provide adequate design and operating safeguards. TI does not warrant or represent that any license, either express or implied, is granted under any patent right, copyright, mask work right, or other intellectual property right relating to any combination, machine, or process in which TI components or services are used. Information published by TI regarding third-party products or services does not constitute a license to use such products or services or a warranty or endorsement thereof. Use of such information may require a license from a third party under the patents or other intellectual property of the third party, or a license from TI under the patents or other intellectual property of TI. Reproduction of significant portions of TI information in TI data books or data sheets is permissible only if reproduction is without alteration and is accompanied by all associated warranties, conditions, limitations, and notices. TI is not responsible or liable for such altered documentation. Information of third parties may be subject to additional restrictions. Resale of TI components or services with statements different from or beyond the parameters stated by TI for that component or service voids all express and any implied warranties for the associated TI component or service and is an unfair and deceptive business practice. TI is not responsible or liable for any such statements. Buyer acknowledges and agrees that it is solely responsible for compliance with all legal, regulatory and safety-related requirements concerning its products, and any use of TI components in its applications, notwithstanding any applications-related information or support that may be provided by TI. Buyer represents and agrees that it has all the necessary expertise to create and implement safeguards which anticipate dangerous consequences of failures, monitor failures and their consequences, lessen the likelihood of failures that might cause harm and take appropriate remedial actions. Buyer will fully indemnify TI and its representatives against any damages arising out of the use of any TI components in safety-critical applications. In some cases, TI components may be promoted specifically to facilitate safety-related applications. With such components, TI’s goal is to help enable customers to design and create their own end-product solutions that meet applicable functional safety standards and requirements. Nonetheless, such components are subject to these terms. No TI components are authorized for use in FDA Class III (or similar life-critical medical equipment) unless authorized officers of the parties have executed a special agreement specifically governing such use. Only those TI components which TI has specifically designated as military grade or “enhanced plastic” are designed and intended for use in military/aerospace applications or environments. Buyer acknowledges and agrees that any military or aerospace use of TI components which have not been so designated is solely at the Buyer's risk, and that Buyer is solely responsible for compliance with all legal and regulatory requirements in connection with such use. TI has specifically designated certain components as meeting ISO/TS16949 requirements, mainly for automotive use. In any case of use of non-designated products, TI will not be responsible for any failure to meet ISO/TS16949. Products
Applications
Audio
www.ti.com/audio
Automotive and Transportation
www.ti.com/automotive
Amplifiers
amplifier.ti.com
Communications and Telecom
www.ti.com/communications
Data Converters
dataconverter.ti.com
Computers and Peripherals
www.ti.com/computers
DLP® Products
www.dlp.com
Consumer Electronics
www.ti.com/consumer-apps
DSP
dsp.ti.com
Energy and Lighting
www.ti.com/energy
Clocks and Timers
www.ti.com/clocks
Industrial
www.ti.com/industrial
Interface
interface.ti.com
Medical
www.ti.com/medical
Logic
logic.ti.com
Security
www.ti.com/security
Power Mgmt
power.ti.com
Space, Avionics and Defense
www.ti.com/space-avionics-defense
Microcontrollers
microcontroller.ti.com
Video and Imaging
www.ti.com/video
RFID
www.ti-rfid.com
OMAP Applications Processors
www.ti.com/omap
TI E2E Community
e2e.ti.com
Wireless Connectivity
www.ti.com/wirelessconnectivity Mailing Address: Texas Instruments, Post Office Box 655303, Dallas, Texas 75265 Copyright © 2014, Texas Instruments Incorporated