Post on 25-Jan-2020
RANCANG BANGUN APLIKASI KUNCI PINTU
OTOMATIS DENGAN SPEECH RECOGNITION
BERBASIS ANDROID
Tugas Akhir
Diajukan Untuk Memenuhi
Persyaratan Guna Meraih Gelar Sarjana Strata 1
Teknik Informatika Universitas Muhammadiyah Malang
DWI CAHYO PUTRA
201210370311223
JURUSAN INFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS MUHAMMADIYAH MALANG
2017
LEMBAR PERSEMBAHAN
Sembah sujud serta syukur kepada Allah SWT. Taburan cinta dan kasih
sayang-Mu telah memberikanku kekuatan, membekaliku dengan ilmu serta
memperkenalkanku dengan cinta. Atas karunia serta kemudahan yang Engkau
berikan akhirnya skripsi yang sederhana ini dapat terselesaikan. Sholawat dan
salam selalu terlimpahkan keharibaan Rasullah Muhammad SAW yang telah
membimbingku menuju jalan kebenaran.
Keluarga Tercinta
Sebagai tanda bakti, hormat, dan rasa terima kasih yang tiada terhingga
kupersembahkan karya kecil ini kepada Mama, Ayah dan Kakak yang telah
memberikan kasih sayang, segala dukungan, dan cinta kasih yang tiada terhingga
yang tiada mungkin dapat kubalas hanya dengan selembar kertas yang bertuliskan
kata cinta dan persembahan. Semoga ini menjadi langkah awal untuk membuat
Mama dan Ayah bahagia karna kusadar, selama ini belum bisa berbuat yang lebih.
Untuk Mama dan Ayah yang selalu membuatku termotivasi dan selalu menyirami
kasih sayang, selalu mendoakanku, selalu menasehatiku menjadi lebih baik,
Terima Kasih Mama.... Terima Kasih Ayah...
Best Team In My World
Buat sahabatku team “Kostan Bukmul Reborn” terima kasih atas bantuan,
doa, nasehat, traktiran, dan semangat yang kalian berikan selama saya kuliah, saya
tak akan melupakan semua yang telah kalian berikan selama ini. Saya tak akan
melupakan kalian. Ayo kita sukses bersama sama team.
Dosen Pembimbing Tugas Akhirku
Bu Diah Risqiwati,S.T, M.T. dan Bapak Zamah Sari,S.T, M.T sebagai
dosen pembimbing tugas akhir saya, terima kasih banyak pak...bu.., saya sudah
dibantu selama ini, sudah dinasehati, sudah diajari, saya tidak akan lupa atas
bantuan dan kesabaran dari bapak dan ibu.
Seluruh Dosen Pengajar di Fakultas Teknik
Terima kasih banyak untuk semua ilmu, didikan dan pengalaman yg sangat
berarti yang telah kalian berikan kepada kami.
KATA PENGANTAR
Assalamu’alaikum Wr.Wb.
Puji syukur ke hadirat Allah SWT yang telah memberikan segala
kemudahan dalam rahmat serta hidayah-Nya, sehingga penulis dapat
menyelesaikan tugas akhir yang berjudul “RANCANG BANGUN APLIKASI
KUNCI PINTU OTOMATIS DENGAN SPEECH RECOGNITION BERBASIS
ANDROID”, dimana tugas akhir ini adalah sebagai persyaratan untuk
menyelesaikan studi jenjang Strata-1 di Jurusan Teknik Informatika Universitas
Muhammadyah Malang.
Penulis dengan sangat sadar mengetahui dan memahami, bahwa masih
terdapat banyak kekurangan dalam penulisan tugas akhir ini. Untuk itu, penulis
mengharapkan kritik dan saran dari pembaca sebagai langkah penyempurna
penulisan tugas akhir ini agar nantinya bisa dikembangkan dan lebih bermanfaat
bagi ilmu pengetahuan dan masyarakat di sekitar.
Malang, September 2017
Penulis
DAFTAR ISI
LEMBAR PERSETUJUAN
LEMBAR PENGESAHAN
LEMBAR PERNYATAAN
ABSTRAK ........................................................................................................ i
ABSTRACT ...................................................................................................... ii
LEMBAR PERSEMBAHAN .......................................................................... iii
KATA PENGANTAR ...................................................................................... iv
DAFTAR ISI ..................................................................................................... vi
DAFTAR GAMBAR ........................................................................................ ix
DAFTAR TABEL ............................................................................................ xii
DAFTAR LAMPIRAN .................................................................................... xiii
BAB I PENDAHULUAN ................................................................................. 1
1.1 Latar Belakang ................................................................................ 1
1.2 Rumusan Masalah ........................................................................... 2
1.3 Tujuan .............................................................................................. 2
1.4 Batasan Masalah .............................................................................. 2
1.5 Metodologi ...................................................................................... 3
1.5.1 Studi Pustaka ................................................................... 3
1.5.2 Perancangan .................................................................... 3
1.5.3 Implementasi .................................................................. 3
1.5.4 Analisa dan Pengujian ..................................................... 3
1.5.5 Pembuatan Laporan ......................................................... 4
1.6 Sistematika Penulisan ...................................................................... 4
BAB II LANDASAN TEORI .......................................................................... 6
2.1 Sistem Operasi Android .................................................................... 6
2.1.1 Arsitektur Android .......................................................... 6
2.1.2 Aplication dan Widgets ................................................... 7
2.1.3 Application Framwork .................................................... 7
2.1.4 Libraries .......................................................................... 8
2.1.5 Android Runtime ............................................................. 8
2.1.6 Linux Kernel ................................................................... 8
2.1.7 Komponen Aplikasi Android .......................................... 8
2.2 Pengenalan Suara Otomatis (Speech Recognition) ........................... 9
2.2.1 Language Model.............................................................. 10
2.2.2 Transcription File ............................................................ 10
2.2.3 Control File ..................................................................... 10
2.2.4 Phone File ....................................................................... 11
2.3 CMU Sphinx ..................................................................................... 11
2.3.1 SphinxBase ...................................................................... 12
2.3.2 PocketSphinx .................................................................. 12
2.3.3 SphinxTrain ..................................................................... 12
2.3.4 AN4 ................................................................................. 13
2.3.5 Perl .................................................................................. 13
2.3.6 SWIG .............................................................................. 13
2.4 Mikrokontroler .................................................................................. 14
2.4.1 Pengenalan Mikrokontroler ............................................. 14
2.4.2 Arduino ........................................................................... 14
2.5 Bahasa Pemrograman ........................................................................ 15
2.6 Arduino Uno ..................................................................................... 15
2.6.1 Pin Masukan dan Keluaran Arduino Uno ....................... 16
2.7 Access Point ...................................................................................... 17
2.8 Ethernet Shield .................................................................................. 17
2.9 Hidden Markov Model (HMM) ....................................................... 18
2.10 Switch Magnetik PE-905 ............................................................... 18
BAB III ANALISA DAN PERANCANGAN SISTEM ................................. 20
3.1 Analisa Sistem .................................................................................. 20
3.2 Analisa Masalah ............................................................................... 21
3.3 Deskripsi Produk .............................................................................. 21
3.4 Analisa Kebutuhan ........................................................................... 21
3.5 Perencangan Alat.............................................................................. 23
3.6 Perencangan Sistem Kendali Pintu .................................................. 24
3.7 Arsitektur Sistem PocketSphinx....................................................... 25
3.7.1 Dataset Library PocketSphinx ........................................ 27
3.7.2 Languange Model............................................................ 28
3.7.3 Testing Dataset ................................................................ 28
3.8 Flowchart Autentikasi dan Alur Kerja Sistem .................................. 29
3.9 Perencangan Antar Muka .................................................................. 31
BAB IV IMPLEMENTASI DAN PENGUJIAN ........................................... 32
4.1 Kebutuhan Sistem ............................................................................ 32
4.2 Implementasi Perangkat Lunak ........................................................ 33
4.3 Membuat Training Suara .................................................................. 33
4.3.1 Pembuatan Library Pocketsphinx dari Training Rekaman
suara ........................................................................................ 33
4.3.1.1 Pembuatan File Kata .................................................. 33
4.3.1.2 Uploud File .txt yang akan di COMPILE .................. 34
4.3.1.3 Pemilihan File Kata .................................................... 35
4.3.1.4 Hasil Setelah di COMPILE ......................................... 35
4.3.1.5 Proses Pencarian File .................................................. 36
4.3.1.6 Hasil Extract File tgz .................................................. 36
4.3.1.7 Meng-Extract Folder AN4 .......................................... 38
4.3.1.8 Merubah File Pada Folder ETC .................................. 38
4.3.1.9 Merubah Struktur File Suara yang akan di Training .. 41
4.3.1.10 Cara Menghubungkan Database AN4 ke Sphinxtrain .42
4.3.1.11 Cara Menghubungkan Folder AN4 dengan Folder
PocketSphinx .............................................................. 43
4.3.1.12 Mengubah File feat.params pada Folder Etc .............. 44
4.3.1.13 Merubah Nilai pada File sphinx-train.cfg pada
Folder Etc ................................................................... 45
4.3.1.14 Mengkonversi File Suara ............................................ 47
4.4 Source Code Aplikasi Voice Command .......................................... 50
4.4.1 Tampilan Login ............................................................... 50
4.4.2 Tampilan Register .......................................................... 52
4.4.3 Tampilan Menu Voice .................................................... 53
4.4.4 Tampilan Perintah Suara ................................................. 55
4.5 Tampilan Aplikasi PocketSphinx .................................................... 58
4.6 Konfigurasi Perintah Suara PocketSphinx untuk Pintu Rumah ........ 59
4.6.1 Mengirim Data Variable ke Server dari Android ............ 59
4.6.2 Membaca Data Variable dari Server ke Arduino ............ 60
4.6.3 Mengirim Data Variable Status Pintu dari Arduino ke
Server .............................................................................. 61
4.6.4 Konfigurasi Ethernet Shield secara Offline dan Online .. 63
4.7 Evaluasi Pengujin Sistem Prototype ................................................. 64
4.7.1 Pengujian Aplikasi Voice Command .............................. 64
4.7.2 Pengujian Webserver dengan Android............................ 67
4.7.3 Eksekusi Perintah Suara .................................................. 68
4.7.4 Pengujian Aplikasi Voice Command Control Motor
Servo ............................................................................... 69
BAB V PENUTUP ............................................................................................ 73
5.1 Kesimpulan ...................................................................................... 73
5.2 Saran ................................................................................................ 73
DAFTAR PUSTAKA ....................................................................................... xiv
DAFTAR GAMBAR
Gambar 2.1 Arsitektur Android .......................................................................... 7
Gambar 2.2 Speech Recognation ........................................................................ 10
Gambar 2.3 Arsitektur Sphinx ............................................................................ 11
Gambar 2.4 Diagram blok sederhana dari mikrokontroler Atmega328 .............. 14
Gambar 2.5 Arduino Uno .................................................................................... 16
Gambar 2.6 Ethernet Shield ................................................................................ 18
Gambar 2.7 Switch Magnetik ............................................................................. 19
Gambar 3.1 Usecase sistem................................................................................. 23
Gambar 3.2 Sistem kendali Pintu ........................................................................ 24
Gambar 3.3 Ethernet Shield ................................................................................ 25
Gambar 3.4 Pemasangan Ethernet Shield pada Arduino .................................... 25
Gambar 3.5 Setting IP Arduino ........................................................................... 26
Gambar 3.6 Library Ethernet.h ........................................................................... 26
Gambar 3.7 Diagram blok sistem pengenalan suara ........................................... 27
Gambar 3.8 Diagram blok analisis pembuatan language model ......................... 28
Gambar 3.9 Diagram blok analisis proses training dan testing ........................... 28
Gambar 3.10 Autentikasi .................................................................................... 29
Gambar 3.11 Alur Kerja Sistem ......................................................................... 30
Gambar 3.12 Interface voice command ............................................................. 30
Gambar 4.1 contoh pembuatan file .txt berisi kata yang digunakan untu
training suara ................................................................................... 34
Gambar 4.2 Web Sphinx Knowledge Base Tool – Version 3............................. 34
Gambar 4.3 Tampilan pemilihan file kata.txt yang nantinya
di COMPILE KNOWLEDGE BASE ............................................. 35
Gambar 4.4 Tampilan hasil file yang telah dikompilasi ..................................... 36
Gambar 4.5 Folder sphinxbase ............................................................................ 36
Gambar 4.6 Proses konversi language model ..................................................... 37
Gambar 4.7 Proses konversi file dump ............................................................... 37
Gambar 4.8 Folder etc dan wav pada folder an4 ................................................ 38
Gambar 4.9 Isi file an4.dic .................................................................................. 38
Gambar 4.10 Isi file an4.phone ........................................................................... 39
Gambar 4.11 file an4/etv ..................................................................................... 40
Gambar 4.12 Isi file an4_test.fileids ................................................................... 40
Gambar 4.13 Isi an4_test.transcription .............................................................. 41
Gambar 4.14 Isi folder .wav ................................................................................ 41
Gambar 4.15 Isi folder speaker 1 ....................................................................... 42
Gambar 4.16 Sintaks untuk menghubungkan database an4 ke sphinxtrain ........ 42
Gambar 4.17 Isi folder an4 setelah terhubung dengan Sphinxtrain .................... 43
Gambar 4.18 Isi folder etc setelah terhubung dengan sphinxtrain ...................... 43
Gambar 4.19 Sintak untuk menghubungkan folder an4 dengan folder
pocketsphinx ................................................................................. 43
Gambar 4.20 Isi folder etc setelah terhubung dengan folder pocketsphinx ........ 44
Gambar 4.21 Isi file feat.params ......................................................................... 44
Gambar 4.22 Tipe file suara sph dan nist diganti dengan wav dan mswav,
karena file suara yang di gunakan berupa .wav ............................ 45
Gambar 4.23 Model tipe semi ............................................................................. 45
Gambar 4.24 Besar density ................................................................................. 46
Gambar 4.25 Jumlah tiedstate ............................................................................ 46
Gambar 4.26 Sintaks untuk membuat konversi .................................................. 47
Gambar 4.27 Isi file pada folder speaker 1 ......................................................... 47
Gambar 4.28 Sintak RunAll ................................................................................ 47
Gambar 4.29 Hasil pemeriksaan kelengkapan file .............................................. 48
Gambar 4.30 Proses perhitungan module- module ............................................. 49
Gambar 4.31 Checking module module failed ................................................... 49
Gambar 4.32 Folder hasil pemetaan suara dan kata. ........................................... 50
Gambar 4.33 Model parameter hasil training ..................................................... 50
Gambar 4.34 Source code tampilan login .......................................................... 51
Gambar 4.35 Source code button login ............................................................... 51
Gambar 4.36 Source code button register ........................................................... 52
Gambar 4.37 Source code tampilan register ....................................................... 52
Gambar 4.38 Source code button register ........................................................... 53
Gambar 4.39 Source code tampilan menu voice ................................................. 53
Gambar 4.40 source code menampilkan status pintu .......................................... 54
Gambar 4.41 Source code button voice offline ................................................... 54
Gambar 4.42 Source code button voice online ................................................... 54
Gambar 4.43 Source code button logout ............................................................. 55
Gambar 4.44 Source code tampilan perintah suara ............................................. 56
Gambar 4.45 Source code algoritma pocketsphinx............................................. 56
Gambar 4.46 Source code button kirim perintah offline..................................... 57
Gambar 4.47 Source code button kirim perintah online ..................................... 57
Gambar 4.48 Menu Login dan Tampilan Utama ................................................ 58
Gambar 4.49 Tampilan Tutup Pintu dan Tampilan Buka Pintu.......................... 58
Gambar 4.50 Source code insert perintah php .................................................... 59
Gambar 4.51 Source code view status pintu php ................................................ 60
Gambar 4.52 Data tabel perintah pada database ................................................. 60
Gambar 4.53 Source code view data php ............................................................ 61
Gambar 4.54 Source code read data php di arduino ........................................... 61
Gambar 4.55 Hasil html view data php ............................................................... 61
Gambar 4.56 Source code insert status php ........................................................ 62
Gambar 4.57 Source code insert status pada arduino ......................................... 62
Gambar 4.58 Data tabel status dari Database...................................................... 63
Gambar 4.59 Konfigurasi arduino connect ethernet shield ................................. 63
Gambar 4.60 Hasil tampilan akses php ............................................................... 64
Gambar 4.61 Hasil data yang dikirim android .................................................... 69
Gambar 4.62 Hasil data terkirim menggunakan access point ............................. 69
Gambar 4.63 Hasil pengujian Ethernet ............................................................... 70
Gambar 4.64 Hasil control Servo posisi PINTU TERBUKA ............................. 71
Gambar 4.65 Hasil control servo menggunakan Acces point ............................. 71
Gambar 4.66 Hasil control Servo posisi PINTU TERTUTUP ........................... 72
DAFTAR TABEL
Tabel 2.1 Sejarah versi Android.......................................................................... 12
Tabel 4.1 Training Internal ................................................................................. 48
Tabel 4.2 Data Hasil Pengujian Ketepatan Kata Pemilik Train Suara ................ 65
Tabel 4.3 Data Hasil Pengujian Ketepatan Kata yang Tidak Mempunyai
Train Suara .......................................................................................... 66
Tabel 4.4 Data Hasil Pengujian Jarak Suara ....................................................... 66
Tabel 4.5 Data Hasil Pengujian Noise ............................................................... 67
Tabel 4.6 Hasil Model Pengucapan .................................................................... 68
DAFTAR PUSTAKA
Naja Ikmal Najib, “RANCANG BANGUN APLIKASI PENGENALAN UCAPAN UNTUK KATA DALAM HADITS BERBAHASA ARAB DENGAN FRAME WORK SPHINX,” 2016.
Veri Ferdiansyah, “Indonesian Automatic Speech Recognition System Using English-Based Acoustic Model,” pp. 60–63, 2012.
Dwi Sugeng, “Sistem Rumah Otomatis Menggunakan Perintah Suara Berbasis Platform Mikrocontroller Open Source Arduino Uno & Modul Speech Recognition EASY VR 2.0,” 2014.
T. Wijaya, S. Susanto, and A. G. Salman, “Speech Recognition Bahasa Indonesia Untuk Android,” no. 27, p. 7, 2012.
Supriyanta, W. Pudji, and S. Bekti, “Aplikasi Konversi Suara Ke Teks Berbasis Android Menggunakan Google Speech Api,” Bianglala Inform., vol. 2, no. 2, pp. 11–19, 2014.
Akhmad Wahyu Dani, “PERANCANGAN APLIKASI VOICE COMMAND RECOGNITION BERBASIS ANDROID DAN ARDUINO UNO,” vol. 7, no. nomor 3, p. 9, 2016.
H. A. Inayatul, “Aplikasi voice command berbasis android untuk mengontrol lampu menggunakan pocketsphinx dan mikrokontroler,” 2015.
Dimas Prambodo Raharjo, “SISTEM SAKLAR PINTAR PENGONTROL PERANGKAT ELEKTRONIK RUMAH MENGGUNAKAN WEB BERBASIS ARDUINO UNO R3,” Tek. Inform. STMIK AMIKOM Yogyakarta, 2017.
Elisabeth Astri D.S, “Analisis Autentikasi pada Captive Portal,” pp. 1–20, 2013.
Theresia Wuri Oktaviani ( Universitas Gadjah Mada Yogyakarta ), “PERANCANGAN USER INTERFACE BERBASIS WEB UNTUK HOME AUTOMATION GATEWAY YANG BERBASIS IQRF TR53B,” pp. 1–8, 2014.
Andrianto, “APLIKASI PENGONTROL JARAK JAUH PADA LAMPU RUMAH BERBASIS ANDROID,” pp. 1–8, 2015.
Arduino. 2015. “Arduino Ethernet Shiled”. https://www.arduino.cc/ diakses tanggal
15 September 2016.
Cmusphinx. 2015. “Basic Concepts of Speech”. http://cmusphinx.sourceforge.net/ diakses pada tanggal 2 Agustus 2016.
Fatah, Mokhammad Hilman. (tahun). Implementasi Library Pocketsphinx Untuk Pengenalan Voice Command Berbahasa Indonesia Secara Offline. Skripsi Pada Universitas Brawijaya Malang : tidak diterbitkan.
Octaviana, Irine. (2014). Rancang Bangun Aplikasi Pembelajaran Bahasa Perancis Dengan Pengenalan Suara Otomatis Berbasis Android. Skripsi pada Universitas Brawijaya Malang : tidak diterbitkan.
Randofo. 2015. “Arduino Ethernet Shield Tutorial”. http://www.instructables.com/id/Arduino-Ethernet-Shield-Tutorial/ diakses tanggal 28 September 2015.
Suryadharma, I Kadek. (2014). Perancangan Aplikasi Speech To Text Bahasa Inggris Ke Bahasa Bali Menggunakan Pocketsphinx Berbasis Android. Dalam jurnal Telkom [online]. Tersedia : https://repository.telkomuniversity.ac.id/pustaka/98002/perancangan-aplikasi-speech-to-text-bahasa-inggris-ke-bahasa-bali-menggunakan-pocketsphinx-berbasis-android.html