PERANCANGAN SISTEM PENGENDALI PINTU PAGAR OTOMATIS MENGGUNAKAN ANDROID SPEECH RECOGNITION BERBASIS
ARDUINO
SKRIPSI
MUHAMMAD RIZKI MAULANA 121402037
PROGRAM STUDI S1 TEKNOLOGI INFORMASI
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
MEDAN
2018
PERANCANGAN SISTEM PENGENDALI PINTU PAGAR OTOMATIS MENGGUNAKAN ANDROID SPEECH RECOGNITION BERBASIS
ARDUINO
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah Sarjana Teknologi Informasi
MUHAMMAD RIZKI MAULANA 121402037
PROGRAM STUDI S1 TEKNOLOGI INFORMASI
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
MEDAN 2018
PERANCANGAN SISTEM PENGENDALI PINTU PAGAR OTOMATIS MENGGUNAKAN ANDROID SPEECH RECOGNITION BERBASIS ARDUINO
SKRIPSI
Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.
Medan, l5 Mei 2018
Muhammad Rizki Maulana 121402037
UCAPAN TERIMA KASIH
Puji dan syukur penulis sampaikan ke hadirat Allah SWT, karena berkat rahmat dan izin-Nya penulis dapat menyelesaikan penyusunan penelitian skripsi sebagai syarat untuk memperoleh gelar Sarjana Komputer, pada Program Studi S1 Teknologi Informasi Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.
Pertama-tama penulis ingin mengucapkan terima kasih sebesar-besarnya kepada keluarga penulis yaitu kedua orang tua penulis, Alm. Priyanto dan Ibu saya Sri Mulyati yang selalu mendoakan dan memberikan dukungan kepada penulis. Penulis juga mengucapkan terima kasih kepada orang yang special bagi penulis yaitu Anita Siregar, A.Md
Kedua, penulis juga mengucapkan terima kasih kepada Bapak Seniman, S.Kom selaku dosen pembimbing pertama dan Bapak Romi Fadillah Rahmat, B.Comp.Sc., M.Sc selaku dosen pembimbing kedua yang telah meluangkan waktunya untuk membimbing penulis sehingga dapat menyelesaikan skripsi ini. Penulis juga mengucapkan terima kasih kepada Bapak Ainul Hizriadi, S.Kom., M.Sc sebagai dosen pembanding pertama dan Bapak Baihaqi Siregar, S.Si., M.T sebagai dosen pembanding kedua yang telah memberikan masukan serta kritik yang bermanfaat dalam penulisan skripsi ini. Penulis ucapkan terima kasih kepada Ketua dan Sekretaris Program Studi S1 Teknologi Informasi, Dekan dan Wakil Dekan FASILKOM-TI, dan seluruh dosen serta staff pegawai di lingkungan Program Studi S1 Teknologi Informasi, yang telah membantu dan membimbing penulis selama masa perkuliahan.
Ketiga, terima kasih penulis ucapkan kepada para seluruh teman-teman angkatan 2012, senior dan junior Teknologi Informasi lainnya.
Penulis menyadari bahwa skripsi ini masih terdapat kekurangan. Oleh sebab itu, penulis mengharapkan kritik dan saran yang bersifat membangun. Akhir kata penulis ucapkan terima kasih.
ABSTRAK
Setiap rumah pasti memiliki suatu pintu pagar dengan dilengkapi pintu dan pengunci. Hal tersebut sudah banyak kita temui di setiap rumah yang digunakan untuk keamanan kendaraan pribadi maupun keamanan kondisi rumah.Umumnya untuk membuka pintu pagar dan mengunci pintupun harus dilakukan manual oleh manusia.Hal ini sering mengakibatkan ketidaknyamanan dan ketidakefisienan pengguna pintu pagar, baik orang yang berada di dalam rumah, maupun yang mengendarai mobil.
Dari permasalahan diatas maka dibuat suatu sistem otomatisasi pintu pagar berbasis mikrokontroler dan android sebagai interface. Pada proyek akhir ini, diciptakan suatu system pada android berupa Speech Recognition yang dapat memberikan perintah langsung, untuk dapat membuka pintu pagar serta menguncinya secara otomatis, yang dapat di dilakukan melalui ponsel ataupun gadget berbasis android yang terhubung ke bluetooth device.
Dengan dibuatnya sistem otomatisasi dengan menggunakan system speech recognition pintu pagar berbasis mikrokontroler dan android sebagai interfacenya ini diharapkan dapat mempermudah pengguna dalam membuka dan mengunci pintu pagar tanpa harus keluar dari mobil ataupun keluar rumah serta memaksimalkan effisiensi waktu.
Kata Kunci : Sistem otomatisasi, Pagar, Pengunci, Speech Recognition Mikrokontroller, Android
SPEECH RECOGNITION SYSTEM ON ANDROID APPLICATION FOR AUTOMATIC DOOR BASED ON MICROCONTROLLER
ABSTRACT
Each house must have a fence with doors and locks. It is already a lot we meet in every house that is used for personal vehicle security and security of the condition rumah.Umumnya to open the gate and lock the door must also be done manually by humans.This often resulted in inconvenience and inefficiency of user gate, either people who are in in the house, as well as those driving the car.
From the above problems then created a system of automation of gate-based microcontroller and android as an interface. In this final project, created a system on android in the form of Speech Recognition that can give direct orders, to be able to open the gate and lock it automatically, which can be done through mobile phones or gadgets based on android connected to bluetooth device.
With the creation of automation systems using speech recognition system gate-based microcontroller and android as an interphone is expected to facilitate the user in opening and locking the gate without having to get out of the car or out of the house and maximize the efficiency of time.
Keywords: Automation System, Door Lock, Locking, Speech Recognition Microcontroller, Android Application.
DAFTAR ISI
Halaman
PERSETUJUAN ... iii
PERNYATAAN ... iv
UCAPAN TERIMAKASIH ... v
ABSTRAK ... vi
ABSTRACT ... vii
DAFTAR ISI ... viii
DAFTAR TABEL ... ix
DAFTAR GAMBAR ... x
BAB I PENDAHULUAN 1.1 Latar Belakang ... 1
1.2 Rumusan Masalah ... 2
1.3 Tujuan Penelitian ... 3
1.4 Batasan Masalah ... 3
1.5 Manfaat Penelitian ... 4
1.6 Metodologi Penelitian ... 4
1.7 Sistematika Penulisan ... 5
BAB II LANDASAN TEORI 2.1 Arduino ... 6
2.2 Motor servo ... 7
2.3 Android ... 8
2.4 Bluetooth... 9
2.5 Modul Bluetooth HC-05 ... 9
2.6 App Inventor ... 10
2.7 Voice Recognition... ... 11
2.7.1Speech Recognition ... 11
2.7.2 Fungsi Speech Recognition ... 12
2.7.3 Perkembangan Alat Pengucapan ... 13
2.7.4 Automatic Speech Recognition ... 14
2.7.5 String Matching... 15
2.8. Penelitian Terdahulu ... 16
BAB III METODE PENELITIAN 3.1 Diagram Alir Penelitian ... 18
3.2 Perancangan Alat ... 21
3.3 Perancangan Hardware ... 22
3.4 Perancangan Program dan Aplikasi ... 25
3.5 Prinsip Kerja Alat ... 30
3.7 Alat dan Bahan ... 31
BAB IV PEMBAHASAN
4.1 Pengertian Speech Recognition ... 32
4.2 Sejarah Speech Recognition ... 33
4.3 Skema Utama dan Algoritma Speech Recognition ... 34
4.4 Implementasi Speech Recognition ... 38
4.5 Pengujian Alat ... 39
4.5.1Pengujian Jarak Konektifitas Bluetooth ... 39
4.5.2Pengujian Mikrokontroler Terhadap Motor Servo ... 40
4.5.3Pengujian Penggerak Motor Servo ... 41
4.5.4 Pengujian Speech Recognition... 41
4.6 Evaluasi... 44
4.7 Penggunaan Sistem ... 46
4.8Implementasi Perancangan Antarmuka ... 49
4.9Kelebihan dan Kekurangan ... 55
BAB V KESIMPULAN DAN SARAN 5.1. Kesimpulan ... 57
5.2. Saran ... 58
DAFTAR PUSTAKA ... 59 LAMPIRAN
DAFTAR GAMBAR
Halaman
Gambar 2.1 Hardware Arduino ... 6
Gambar 2.2 Motor Servo Standard ... 7
Gambar 2.3 Motor Servo Continuous ... 8
Gambar 2.4 Bluetooth HC-05 dan Pinout ... 9
Gambar 2.5 App Inventor ... 10
Gambar 3.1 Diagram Alir Penelitian ... 18
Gambar 3.2 Diagram Alir Perancangan Alat ... 21
Gambar 3.3 Skematik Arduino Uno ... 23
Gambar 3.4 Program Arduino IDE ... 26
Gambar 3.5 Flowchart Program Arduino Uno ... 27
Gambar 3.6 Program Koneksi Bluetooth App Inventor ... 29
Gambar 4.1 Skema Speech Recognition... 37
Gambar 4.2 Spektrum Suara ... 37
Gambar 4.3 Contoh Hasil Konversi Sinyal Diskrit ... 38
Gambar 4.4 Jarak Koenktifitas Bluetooth ... 42
Gambar 4.5 Pintu Gerbang Tertutup... 43
Gambar 4.6 Pintu Gerbang Terbuka ... 43
Gambar4.7 Grafik Akurasi ... 46
Gambar 4.8 Syntag Program ... 51
Gambar 4.9 Proses Compile Program... 51
Gambar 4.10 Tampilan Login ... 52
Gambar 4.11 Tampilan Notifikasi Login ... 53
Gambar 4.12 Tampilan Menu Aplikasi ... 54
Gambar 4.13 Pengaturan User Name ... 55
Gambar 4.14 Pemilihan Bluetooth... 56
Gambar 4.15 Bluetooth Status ... 56
Gambar 4.16 Menu Speech Recognation ... 57
Gambar 4.17 Menu tombol manual ... 57
DAFTAR TABEL
Halaman
Tabel 2.1 Penelitian Terdahulu ... 17
Tabel 3.1 Penggunaan Pin Arduino ... 24
Tabel 4.1 Tabel Pengukuran Jarak Konektifitas Bluetooth ... 42
Tabel 4.2 Sudut Motor Servo ... 44
Tabel 4.3 Tabel Akurasi ... 45
Tabel 4.4 Pengujian Koneksi Bluetooth ... 48
Tabel 4.5 Pengukuran Spesifikasi Sistem ... 49
BAB 1 PENDAHULUAN
1.1. Latar Belakang
Berkembangnya ilmu pengetahuan dan teknologi saat ini semakin banyak memberikan kemudahan dalam kehidupan sehari-hari. Dimana segala hal yang banyak diterapkan ilmu pengetahuan dan teknologi dengan mesin ataupun elektronika, sehingga pekerjaan manusia dapat dikerjakan dengan mudah tanpa harus membuang tenaga dan dapat mempersingkat waktu. Berbagai alat rumah tangga hingga alat kerja kantor menggunakan alat elektronik sehingga pekerjaan manusia jauh lebih ringan dan mudah. Sebagai salah satu contoh pemanfaatan telepon genggam android yang dimanfaatkan sebagai alat pengontrol membuka dan menutup pintu/pagar, dengan adanya sistem ini dapat memudahkan dalam membuka dan menutup tanpa bersusah payah mendorong ataupun menarik pintu/pagar yang menghabiskan waktu dan tenaga.
Sedangkan bagi orang yang berada di dalam mobil dan didalam rumah merasa enggan beranjak keluar hanya untuk membuka pagar yang dirasa kurang efisiensi waktu dan tenaga. Hal tersebut meskipun terlihat sepele ternyata juga bisa membuat orang repot setiap harus membuka dan menutup pintu/pagar rumah. Permasalahan tersebut dapat diatasi dengan pengendali pintu/pagar dengan menggunakan sistem buka tutup pintu menggunakan telepon genggam android. Salah satu kemudahan yang dimiliki oleh pintu ini adalah sistem kendali buka tutup pintu/pagar dengan telepon genggam android, dengan menekan tombol ataupun perintah suara pada ponsel android pintu/pagar akan membuka sehingga kita tidak perlu untuk menarik dan mendorongnya karena ada mekanisme yang dipasangkan pada pintu/pagar.
Suara atau ucapan adalah cara berkomunikasi yang paling sering dilakukan oleh manusia. Penelitian di bidang pengolahan suara telah memotivasi banyak orang untuk menciptakan model mekanik untuk meniru kemampuan komunikasi verbal manusia.
Berbicara adalah bentuk komunikasi manusia yang paling dasar, dan pengolahan suara telah menjadi salah satu hal yang paling diperhatikan dalam bidang signal processing.
Tujuan utama dari teknologi pengenalan suara adalah menciptakan sebuah teknik dan
sistem untuk memasukkan perintah suara ke dalam mesin, agar mesin dapat mengerti apa yang manusia ucapkan dan mematuhi apa yang diperintahkannya. Voice recognition adalah suatu sistem yang dapat mengidentifikasi seseorang melalui suaranya.
Selain voice recognition juga terdapat speech recognition. Speech recognition merupakan sebuah proses menangkap kata-kata yang diucapkan melalui microphone ataupun telepon lalu mengubahnya menjadi data digital. Perbedaan diantara keduanya adalah jika voice recognition mengidentifikasi siapa yang berbicara. Sedangkan speech recognition mengidentifikasi apa yang diucapkan (Andoni, 2011).
Implementasi speech recognition bisa kita jumpai pada google voice di perangkat android. Google voice merupakan salah satu implementasi teknologi speech recognition yang semakin sempurna, bahkan bisa disetarakan dengan sistem otak manusia yang dihuni oleh berjuta-juta syaraf.
Cukup banyak aplikasi pengendalian yang diimplementasikan menggunakan Arduino.
Salah satunya seperti penelitian yang dibuat oleh Roza pada tugas akhirnya, yaitu membuat perancangan system pengaturan kecepatan zig bee pro berbasis arduino uno atmega 328P (Roza Antoni, 2013). Pada penelitian ini akan dibuat sebuah pengendali pintu otomatis yang menggunakan android speech rocognition berbasis arduino, dengan kata lain pintu pagar dapat terbuka otomatis hanya lewat android dengan ucapan suara.
1.2. Rumusan Masalah
Rumusan permasalahan dalam rencana penelitian ini adalah bagaimana membuat otomatisasi pintu pagar menggunakan speech recognition sehingga bisa dikendalikan dari smartphone android. Pengujian alat dan aplikasi dilakukan untuk mengetahui apakah fungsi – fungsi yang telah direncanakan bekerja dengan baik atau tidak.
Pengujian alat juga berguna untuk mengetahui tingkat kinerja dan fungsi tersebut.
Setelah melakukan pengujian terhadap alat dan aplikasi dapat diambil kesimpulan, yaitu telah dibuat model sistem buka tutup pintu/pagar menggunakan mikrokontrolerarduino uno, alat sistem buka tutup pintu/pagar dapat berjalan ketika menerima perintah dari smartphone android, motor dapat berputar ketika bluetooth
alat dengan smartphone saling terkoneksi, jangkauan terjauh yang didapat pada kondisi di ruang terbuka dan tertutup adalah 30 meter.
1.3. Tujuan Penelitian
Dalam penulisan laporan skripsi ini penulis memiliki tujuan penelitian untuk menciptakan alat pembuka dan penutup pintu otomatis berbasis Arduino menggunakan perintah suara melalui Smartphone Android dengan memanfaatkan fitur voice recognition.
1.4. Batasan Masalah
Penelitian ini memiliki batasan-batasana atau ruang lingkup permasalahan yang akan diteliti. Batasan-batasan yang dimaksud adalah:
a. Sistem perancangan menggunakan miniatur pintu / pagar dengan menggunakan motor servo sebagai aktuator penggerak.
b. Sistem ini menggunakan Mikrokontroller AtMega328 berbasis Arduino dengan bahasa C sebagai bahasa pemrogramannya.
c. Untuk komunikasi antara Mikrokontroller dan Smartphone Android menggunakan modul bluetooth HC-05 dengan jarak maksimal bluetooth sekitar 15 meter.
d. Pemrograman aplikasi Android menggunakan aplikasi App Inventor dengan menggunakan Code Block sebagai logika pemrogramannya.
e. Voice recognition menggunakan koneksi internet untuk terhubung ke server agar dapat mengakses database perintah suara.
f. Sistem Android yang digunakan minimal versi 4.0 (Ice Cream Sandwich) g. Tidak membahas secara lengkap mengenai voice recognition, karena
menggunakan fitur voice dari google.
1.5. Manfaat Penelitian
Hasil penelitian ini diharapkan dapat memberikan manfaat sebagai berikut :
a. Memberikan kemudahan bagi pengguna Smartphone Android yang terkoneksi ke internet untuk dapat mengendalikan pintu / pagar dengan perintah suara.
b. Adanya penelitian ini, maka dapat dijadikan dasar pengembangan tentang aplikasi sistem pengendali dengan perintah suara bagi peneliti berikutnya.
1.6. Metodologi Penelitian
Tahapan-tahapan yang akan dilakukan dalam pelaksanaan penelitian ini adalah sebagai berikut :
1. Studi Literatur
Studi Literatur dilakukan dengan mengumpulkan informasi lebih lanjut mengenai permasalahan yang akan dibahas seperti penelitian terdahulu dan metode – metode yang akan digunakan untuk permasalahan ini.
2. Analisis Permasalahan
Pada tahap ini dilakukan analisis terhadap berbagai informasi yang telah diperoleh dari berbagai sumber dengan penelitian agar didapatkan metode yang tepat untuk menyelesaikan masalah dalam penelitian ini.
3. Perancangan Sistem
Tahap ini dilakukan perancangan system untuk menyelesaikan permasalahan yang terdapat di dalam tahap analisis. Kemudian dilanjutkan dengan mengimplementasikan hasil analisis dan perancangan kedalam sistem.
4. Implementasi dan Pengujian
Pada tahap ini dilakukan implementasi kedalam kode sesuai dengan analisis dan perancangan yang telah dilakukan pada tahap sebelumnya. Dan dilakukan pengujian terhadap hasil yang didapatkan melalui implementasi speech recognition pada google voice di perangkat android dalam mengendalikan pintu secara otomatis yang menggunakan android speech recognition berbasis arduino.
5. Analisisdan Pengambilan Kesimpulan
Pada tahap ini dilakukan analisis data yang didapatkan dari implementasi speech recognition pada google voice di perangkat android dalam mengendalikan pintu secara otomatis yang menggunakan android speech recognition berbasis arduino.
1.7. Sistematika Penulisan
Sistematika penulisan dari skripsi ini terdiri atas lima bagian utama sebagai berikut:
Bab 1: Pendahuluan
Bab ini berisi latarbelakang dari penelitian yang dilaksanakan, rumusan masalah, tujuan penelitian, batasan masalah, manfaat penelitian, metodologi penelitian, serta sistematika penulisan.
Bab 2: Landasan Teori
Bab ini berisi teori-teori yang diperlukan untuk memahami permasalahan yang dibahas pada penelitian ini. Teori-teori tentang metode perancangan sistem pengendali pintu/pagar otomatis menggunakan android speech Recognation Berbasis Arduino, hal-hal yang berhubungan dengan penelitian ini, dan penelitian terdahulu.
Bab 3: Analisis dan Perancangan
Bab ini menjelaskan tentang analisis dan perancangan sistem yang dibangun. Adapun tahapan yang dijelaskan yaitu deskripsi umum sistem yang dibangun, analisis data dan arsitektur sistem, sampai kepada perancangan sistem.
Bab 4: Implementasi dan Pengujian
Bab ini berisi pembahasan tentang implementasi dari perancangan yang telah dijabarkan pada bab 3. Selain itu, hasil yang didapatkan selama proses yang terjadi pada penelitian juga dijabarkan pada bab ini.
Bab 5: Kesimpulan dan Saran
Bab ini berisi ringkasan serta kesimpulan dari rancangan yang telah dibahas pada bab 3, serta hasil penelitian yang dijabarkan pada bab 4, serta pada bagian akhir bab ini akan berisi saran-saran yang diajukan untuk pengembangan penelitian selanjutnya.
BAB 2
LANDASAN TEORI
2.1. Arduino
Arduino didefinisikan sebagai sebuah platform elektronik yang open source, berbasis pada software dan hardware yang fleksibel dan mudah digunakan, yang ditujukan untuk seniman, desainer, hobbies dan setiap orang yang tertarik dalam membuat objek atau lingkungan yang interaktif. Arduino sebagai sebuah platform komputasi fisik (Physical Computing) yang open source pada board input ouput sederhana, yang dimaksud dengan platform komputasi fisik disini adalah sebuah sistem fisik hyang interaktif dengan penggunaan software dan hardware yang dapat mendeteksi dan merespon situasi dan kondisi.
Pada Gambar. 4 dapat dilihat sebuah papan Arduino dengan beberapa bagian komponen didalamnya.
Gambar 2.1 Hardware Arduino
(http://.photobucket.com/albums/arduinouno_r3.jpg)
Pada hardware arduino terdiri dari 20 pin yang meliputi:
a. 14 pin IO Digital (pin 0–13)
Sejumlah pin digital dengan nomor 0–13 yang dapat dijadikan input atau output yang diatur dengan cara membuat program IDE.
b. 6 pin Input Analog (pin 0–5)
Sejumlah pin analog bernomor 0–5 yang dapat digunakan untuk membaca nilai input yang memiliki nilai analog dan mengubahnya ke dalam angka antara 0 dan 1023.
c. 6 pin Output Analog (pin 3, 5, 6, 9, 10 dan 11)
Sejumlah pin yang sebenarnya merupakan pin digital tetapi sejumlah pin tersebut dapat diprogram kembali menjadi pin output analog dengan cara membuat programnya pada IDE.
Papan Arduino Uno dapat mengambil daya dari USB port pada komputer dengan menggunakan USB charger atau dapat pula mengambil daya dengan menggunakan suatu AC adapter dengan tegangan 9 volt. Jika tidak terdapat power supply yang melalui AC adapter, maka papan Arduino akan mengambil daya dari USB port. Tetapi apabila diberikan daya melalui AC adapter secara bersamaan dengan USB port maka papan Arduino akan mengambil daya melalui AC adapter secara otomatis.
2.2. Motor Servo
Motor servo adalah motor yang mampu bekerja dua arah (CW dan CCW) dimana arah dan sudut pergerakan rotornya dapat dikendalikan dengan memberikan variasi lebar pulsa (duty cycle) sinyal PWM pada bagian pin kontrolnya.
Jenis Motor Servo :
a. Motor Servo Standar 180° Motor servo jenis ini hanya mampu bergerak dua arah (CW dan CCW) dengan defleksi masing-masing sudut mencapai 90°
sehingga total defleksi sudut dari kanan – tengah – kiri adalah 180°.
Gambar 2.2 Motor Servo Standart (http://www.gadgetkudus.com)
b. Motor Servo Continuous. Motor servo jenis ini mampu bergerak dua arah (CW dan CCW) tanpa batasan defleksi sudut putar (dapat berputar secara kontinyu).
Gambar 2.3 Motor Servo Continuous (http://www.gadgetkudus.com)
Pulsa Kontrol Motor Servo Operasional motor servo dikendalikan oleh sebuah pulsa selebar ± 20 ms, dimana lebar pulsa antara 0.5 ms dan 2 ms menyatakan akhir dari range sudut maksimum. Apabila motor servo diberikan pulsa dengan besar 1.5 ms mencapai gerakan 90°, maka bila kita berikan pulsa kurang dari 1.5 ms maka posisi mendekati 0° dan bila kita berikan pulsa lebih dari 1.5 ms maka posisi mendekati 180°
(Widodo, 2012)
2.3. Android
Secara umum pengertian Android adalah suatu software (perangkat lunak) yang berbasis Linux untuk telepon seluler dan komputer tablet yang meliputi sistem operasi, middleware dan aplikasi inti. Android SDK menyediakan alat dan API yang diperlukan untuk memulai pengembangan aplikasi pada platform. Android menggunakan bahasa pemrograman Java, yaitu kode Java yang terkompilasi dengan data dan file resources yang dibutuhkan aplikasi dan digabungkan oleh aapt tools menjadi paket Android. File tersebut ditandai dengan ekstensi .apk. File inilah yang didistribusikan sebagai aplikasi dan diinstall pada perangkat mobile.
Telepon seluler atau HP pertama yang memakai sistem operasi Android adalah HTC Dream, yang dirilis pada tanggal 22 Oktober 2008. pada penghujung tahun 2009 diperkirakan di dunia ini paling sedikit terdaapat 18 jenis telepon seluler yang menggunaka Android.
2.4. Bluetooth
Bluetooth adalah Sebuah teknologi wireless yang mampu menyediakan layanan komunikasi data dan suara dengan jarak jangkauan terbatas. Bluetooth adalah sebuah teknologi komunikasi wireless (tanpa kabel) yang beroperasi dalam pita frekuensi 2,4 GHz unlicensed ISM (Industrial, Scientific and Medical) dengan menggunakan sebuah frequency hopping tranceiver yang mampu menyediakan layanan komunikasi data dan suara secara real time antar host-host bluetooth dengan jarak jangkauan layanan yang terbatas. Sistem bluetooth terdiri dari sebuah radio transceiver, buseband link management dan control, baseband (processor core, SRAM, UART, PCM USB interface), flash dan voice code, sebuah link manager, baseband link controller menghubungkan perangkat keras ke radio baseband processing dan layer protokol fisik. Link manager melakukan aktivitas-aktifitas protokol tingkat tinggi seperti melakukan link setup, autentikasi dan konfigurasi.
2.5. Modul Bluetooth HC-05
Bluetooth HC-05 adalah bluetooth yang memiliki komunikasi serial UART dalam penerimaan dan pengiriman datanya. Bluetooth HC-05 memungkinkan dapat berkomunikasi langsung dengan mikrokontroler melalui jalur TX dan RX yang terdapat pada pin out nya. Pada dasarnya, bluetooth HC-05 hanya dapat dikonfigurasi sebagai slave tidak bisa digunakan sebagai master. Berikut adalah bentuk fisik dari bluetooth HC-0.
Gambar 2.4 Bluetooth HC-05 dan pinout (http://www.sidhatan.blogspot.com)
Bluetooth HC-05 memiliki spesifikasi dalam penggunaannya antara lain:
• Sensitivitas -80dBm (Typical)
• Daya transmit RF sampai dengan +4dBm.
• Operasi daya rendah 1,8V - 3,6V I/O.
• Kontrol PIO.
• Antarmuka UART dengan baudrate yang dapat diprogram.
2.6.App Inventor
Gambar 2.5 App Inventor
App Inventor untuk android adalah aplikasi yang disediakan oleh google dan sekarang dikelola oleh Massachussetts Institute of Technology (MIT). App Inventor memungkinkan setiap orang (termasuk orang – orang yang tidak mempunyai basic programming) untuk membuat aplikasi perangkat lunak untuk sistem operasi android.
App Inventor menggunakan interface grafis yang memungkinkan pengguna untuk drag-and-drop sebuah objek visual untuk menciptakan aplikasi yang dapat berjalan pada sistem android yang pada saat ini dipakai oleh banyak perangkat handphone.
Aplikasi App Inventor ini harus diakses secara online pada sebuah web browser. App Inventormemiliki 2 komponen utama yaitu, The App Inventor Designer dan The App Inventor Block Editor .
2.7. Voice Recognition
Voice/Speech recognition atau biasa kita kenal dengan pengenalan pola suara adalah suatu pengembangan teknik dan sistem yang memungkinkan komputer untuk menerima masukan berupa kata atau yang diucapkan. Teknologi ini memungkinkan suatu perangkat untuk mengenali dan memahami kata-kata yang diucapkan dengan cara digitalisasi kata dan mencocokkan sinyal digital tersebut dengan suatu pola tertentu yang tersimpan dalam suatu perangkat. Kata-kata yang diucapkan diubah bentuknya menjadi sinyal digital dengan cara mengubah gelombang suara menjadi sekumpulan angka yang kemudian disesuaikan dengan kode-kode tertentu untuk mengidentifikasikan kata-kata tersebut.
Voice recognition dibagi menjadi dua jenis, yaitu speech recognition dan speaker recognition. Speech recognition adalah proses identifikasi suara berdasarkan kata yang diucapkan. Parameter yang dibandingkan ialah tingkat penekanan suara yang kemudian akan dicocokkan dengan template database yang tersedia. Sedangkan sistem pengenalan suara berdasarkan orang yang berbicara dinamakan speaker recognition.
Pada menu tombol pilih perangkat bluetooth berfungsi sebagai pencari addresbluetooth yang sedang menyala untuk proses pairing data antara perangkat aplikasi ponsel dengan perangkat aplikasi hardware yang berada pada pintu pagar.
Tombol buka berfungsi sebagai perintah untuk membuka pintu pagar, tombol tutup berfungsi sebagai perintah untuk menutup pintu dan tombol stop berfungsi sebagai penentu pemberhentian pada titik yang diinginkan. Aplikasi speech recognition berfungsi sebagai perintah data menggunakan voice/suara yang kita hasilkan untuk proses buka, tutup atau stop pada aplikasi.
2.7.1. Speech Recognition
Dikenal juga dengan pengenal suara otomatis (automatic speech recognition) atau pengenal suara komputer (computer speech recognition). Merupakan salah satu fitur antarmuka telematika yang merubah suara menjadi tulisan. Istilah „voice recognition‟
terkadang digunakan untuk menunjuk ke speech recognition dimana sistem pengenal dilatih untuk menjadi pembicara istimewa, seperti pada kasus perangkat lunak untuk komputer pribadi, oleh karena itu disana terdapat aspek dari pengenal pembicara, dimana digunakan untuk mengenali siapa orang yang berbicara, untuk mengenali
lebih baik apa yang orang itu bicarakan. Speech recognition merupakan istilah masukan yang berarti dapat mengartikan pembicaraan siapa saja.
Speech recognition atau pengenalan pembicaraan (juga dikenal sebagai pengenalan suara otomatis atau pengakuan komputer pidato) mengkonversi diucapkan kata-kata untuk teks. The "pengenalan suara" istilah kadang-kadang digunakan untuk merujuk kepada sistem pengakuan yang harus dilatih untuk kasus-speaker tertentu seperti untuk perangkat lunak pengenal yang paling desktop. Menyadari pembicara dapat menyederhanakan tugas menerjemahkan pidato. Pengenalan pembicaraan adalah solusi yang lebih luas yang mengacu pada teknologi yang dapat mengenali pidato tanpa ditargetkan pada pembicara tunggal seperti sistem call center yang dapat mengenali suara sewenang-wenang.
Aplikasi pengenalan pembicaraan termasuk user interface seperti suara panggilan suara (misalnya, "Call home"), call routing (misalnya, "Saya ingin membuat collect call"), kontrol alat domotic, pencarian (misalnya, menemukan podcast di mana tertentu Kata-kata itu diucapkan), sederhana entri data (misalnya, memasukkan nomor kartu kredit), persiapan dokumen terstruktur (misalnya, sebuah laporan radiologi), pengolahan pidato-ke-teks (misalnya, kata prosesor atau email), dan pesawat udara (biasanya disebutInput langsung suara). Secara umum, speech recognizer memproses sinyal suara yang masuk dan menyimpannya dalam bentuk digital. Hasil proses digitalisasi tersebut kemudian dikonversi dalam bentuk spektrum suara yang akan dianalisa dengan membandingkan dengan template suara pada database sistem.
Sebelumnya, data suara masukan dipilah-pilah dan diproses satu per satu berdasarkan urutannya. Pemilahan ini dilakukan agar proses analisis dapat dilakukan secara paralel.
2.7.2. Fungsi Speech Recognation
Voice Recognition adalah suatu sistem yang dapat mengidentifikasi seseorang melalui suaranya, pada saat saya mencari pengertiaan dari voice recognition terdapat juga pengertian Speech Recognition yang hampir sama secara fungsinya. Tapi terdapat perbedaan antara keduanya, Voice Recognition mengidentifikasi siapa yang berbicara, tetapi Speech Recognition mengidentifikasi apa yang diucapkan. Voice recognition dibagi menjadi dua jenis, yaitu :
• Speech recognition : Merupakan proses yang dilakukan computer untuk identifikasi suara yang diucapkan oleh seseorang tanpa mempedulikan identitas orang terkait. Implementasi speech recognition misalnya perintah suara untuk menjalankan aplikasi komputer.
Parameter yang dibandingkan ialah tingkat penekanan suara yang kemudian akan dicocokkan dengan template database yang tersedia.
• Speaker recognition : Merupakan sistem pengenalan identitas yang diklaim oleh seseorang dari suaranya atau berdasarkan orang yang berbicara. Misalnya berupa intonasi suara, tingkat kedalaman suara, dan sebagainya. Speech recognition juga dikenal sebagai automatic speech recognition atau computer speech recognition yaitu penerjemah perkataan yang diucapkan menjadi text.
2.7.3. Perkembangan alat pengenal ucapan
Speech recognition pertama kali muncul di tahun 1952 dan terdiri dari device untuk pengenalan satu digit kata yang diucapkan. Kemudian pada tahun 1964, muncul IBM Shoebox, salah satu teknologi yang cukup terkenal di Amerika dalam bidang kesehatan adalah Medical Transcriptionist (MT) merupakan aplikasi komersial yang menggunakan speech recognition. Dan sampai sekarang banyak aplikasi yang dikembangkan menggunakan speech recognizer, antara lain di bidang kesehatan terdapat MT, di bidang militer terdapat High-performance fighter aircraft, Training air traffic controllers, sampai pada alat yang membantu orang-orang yang memiliki kesulitan dalam menggunakan tangan, maka diciptakannya komputer yang dapat dioperasikan menggunakan deteksi pengucapan user. Sebenarnya ada dua pemodelan dasar untuk speech recognition ini yaitu :
• Hidden Markov model (HMM)-based speech recognition
• Dynamic time warping (DTW)- based speech recognition.
Modern general-purpose speech recognition system umumnya menggunakan model Hidden Markov. Model ini merupakan model yang statistikal dimana output adalah sekuens dari simbol atau kuantitas. Alasan menggunakan model Hidden Markov
karena sebuah sinyal dari pengucapan bisa dilihat seperti piecewise stationary signal atau short-time stationary signal. Metode ini sangat populer, sederhana dan secara komputasional bisa digunakan. Pada Dynamic time warping yang merupakan pendekatan yang pernah digunakan untuk speech recognition yang sekarang sudah digantikan oleh model Hidden Markov.
Pada pengembangannya, speech recognizer diimplementasikan menggunakan Dynamic Time Wraping Algorithm (DTW) yang digunakan untuk menerjemahkan perkataan yang membutuhkan perbandingan antara sinyal masuk dari kata dan bermacam-macam kata yang ada di dalam kamus dengan mengukur kesamaan antara dua sekuensial pada waktu yang berbeda baik dari segi kecepatannya. Algoritma DTW diimplementasikan pada video, audio, dan grafik dan tentu saja data-data bisa diubah ke dalam bentuk representasi linear yang bisa dianalisis oleh DTW. DTW pertama kali dikenalkan pada tahun 1960an dan dieksplorasi sampai tahun 70an yang menghasilkan alat speech recognizer. DTW sering digunakan dalam area :
• handwriting and online signature matching,
• sign language recognition and gestures recognition,
• mining and time series clustering,
• computer vision and computer animation,
• surveillance,
• protein sequence alignment and chemical engineering, music and signal processing.
2.7.4. Automatic Speech Recognition
Automatic Speech Recognition (ASR) sekarang ini telah banyak dikembangkan dalam berbagai penelitian. Terdapat bermacam-macam metode yang dapat digunakan untuk mengenali ucapan manusia. Penelitian ini akan membahas penggunaan metode Hidden Markov Model (HMM) untuk pengenalan ucapan berbahasa Indonesia. Dalam penelitian ini, digunakan HMM diskrit untuk proses pelatihan dan pengujiannya.
Berdasarkan hasil pengujian dengan menggunakan metode tersebut, kemudian dianalisa faktor keberhasilannya (tingkat ketelitiannya dalam %) berdasarkan parameter-parameter Linear Predictive Coding (LPC), parameter pitch (Fo) dan parameter energi (Eo) dalam proses mengenali suatu ucapan dalam bahasa Indonesia.
Prinsip kerja sistem pengenalan ucapan adalah dengan membandingkan informasi ucapan yang ada pada referensi dengan informasi ucapan yang menjadi masukan sistem pengenal ucapan tersebut. Blok pengenalan ucapan dengan HMM dapat dibagi menjadi tiga tahap yaitu bagian depan, tahap feature extraction dan tahap sistem pengenalan HMM. Pada tahap yang pertama dilakukan pemfilteran sinyal suara dan mengubah sinyal suara analog ke digital. Tahap feature extraction adalah untuk mendapatkan parameter-parameter yang dapat merepresentasikan sinyal suara tersebut dan dilakukan analisis serta kuantisasi vektor. Tahap yang ketiga, dapat dibagi menjadi dua tugas yaitu tugas pemodelan dan tugas pengenalan . Untuk tugas pemodelan dibuatkan suatu model HMM dari data-data yang berupa sampel ucapan dari sebuah kata. HMM yang dipakai adalah densitas diskrit.
2.7.5. String Matching
Pada saat ini terdapat banyak mesin pencari atau search engine yang tersedia di internet. Mesin pencari tersebut sangat berguna jika kita ingin mencari suatu kata kunci atau keyword yang terletak dalam suatu halaman web yang berisi berita, artikel, atau informasi lainnya. Seringkali, dalam suatu sistem ketatabahasaan, kata kunci yang kita cari bukan merupakan ejaan yang baku, memiliki suatu imbuhan yang komponen katanya berbeda, ataupun salah ketik. Sebagai contoh, kita mengetikkan
“hirarki”, padahal ejaan bakunya adalah “hierarki”. Tentu saja kita tidak ingin gagal memperoleh informasi yang kita maksudkan ataupun memperoleh informasi yang kurang lengkap. Selain itu, belum tentu suatu halaman web menggunakan ejaan yang benar pula. Selain itu, suatu kata juga dapat berubah komponen katanya akibat penambahan imbuhan, seperti dalam bahasa Inggris “rate” dan “rating”. Tentu saja jika kita bermaksud untuk memperoleh informasi yang mengandung kedua kata meskipun kita hanya mengetikkan “rate”. Bahkan, kita dapat saja salah mengetikkannya, seperti “rtae”.
Oleh karena itu, diperlukanlah suatu metode pendekatan pencarian string yang dapat memenuhi keinginan tersebut. Untuk melakukan pencarian kemungkinan kata yang diinginkan tersebut, diperlukanlah suatu pendekatan pencarian string khusus. Dalam pencarian string biasa, yaitu pencarian yang eksak, terdapat berbagai algoritma yang sangat dikenal seperti Knuth - Morris - Pratt, Boyer - Moore, Rabin-Karp, dan lain- lain. Sedangkan pencarian string khusus itu adalah yaitu dengan pendekatan perkiraan
(Approximate String Matching). Dalam pendekatan tersebut, ada tiga macam operasi yang digunakan untuk mentransformasikan suatu string menjadi string yang lain.
Operasi tersebut antara lain operasi penghapusan, penyisipan, dan penggantian.
Operasi-operasi ini digunakan untuk menghitung jumlah perbedaan yang diperlukan untuk pertimbangan kecocokan suatu string dengan string sumber. Jumlah perbedaan tersebut diperoleh dari penjumlahan semua pengubahan yang terjadi dari masing- masing operasi. Penggunaan perbedaan tersebut diaplikasikan dalam berbagai macam algoritma Hamming, Levenshtein, Damerau - Levenshtein, Jaro - Winkler, Wagner - Fischer, dan lain-lain. Dalam makalah ini, dibahas algoritma Levenshtein sebagai cara pencarian perbedaan string tersebut. Algoritma Levenshtein, atau sering disebut dengan Levenshtein Distance atau Edit Distance merupakan algoritma pencarian jumlah perbedaan string yang ditemukan oleh Vladimir Levenshtein, seorang ilmuwan Rusia, pada tahun 1965. Algoritma ini digunakan secara luas dalam berbagai bidang, misalnya mesin pencari, pengecek ejaan (spell checking), pengenal pembicaraan (speech recognition), pengucapan dialek, analisis DNA, pendeteksi pemalsuan, dan lain-lain.
2.8. Penelitian Terdahulu
Penelitian tentang system pengendali pintu/pagar otomatis telah banyak dilakukan menggunakan berbagai macam metode dan pengklasifikasian. Pada tahun 2011, oleh Ashar Seppiawan N, melakukan penelitian untuk membuat sistem keamanan pintu/pagar otomatis dengan menggunakan voice recognition. Metode yang digunakan pada penelitian ini ialah berbasis mikrokontroler. Selanjutnya padatahun 2012, Fakhruddin Rizal Batubara melalukan penelitian untuk perancangan dan implementasi pengendali pintu pagar otomatis berbasis Arduino. Metode yang digunakana dalah berbasis Arduino.
Imam Fadli pada tahun 2013 melakukan penelitian untuk kendali pintu air otomatis berbasis speech recognition menggunakan metode MFCC. Penelitian ini menggunakan metode berbasis MFCC.
Astri Anggraini pada tahun 2014 melakukan penelitian untuk rancangan bangun Open/Close pintu ruangan otomatis menggunakan voice recognation berbasis RASPBERRY PI. Penelitian ini menggunakan metode berbasis RASPBERRY PI.
Pada tahun 2015, Mohamad Amirudin latief melakukan penelitian tentang voice command pengendali perangkat elektronik rumah tangga, menggunakan metode berbasis RASPBERRY PI. Rangkuman dari penelitian terdahulu dapat dilihat pada Tabel 2.1.
Tabel 2.1.Penelitian terdahulu
No Peneliti Tahun Metode Judul
1 Mohamad Amirudin Latief
2015 BerbasisRASPBERRY PI
Voice Command Pengendali Perangkat Elektronik Rumah Tangga Menggunakan RASPBERRY PI
2 Astri Anggraini 2014 BerbasisRASPBERRY PI
Rancangan Bangun
Open/Close Pintu Ruangan Otomatis Menggunakan Voice Recognation Berbasis
RASPBERRY PI
3 Imam Fadli 2013 Berbasis MFCC Kendali Pintu Air Otomatis Berbasis Speech Recognition Menggunakan Metode MFCC 4 Fakhruddin Rizal
Batubara
2012 Berbasis Arduino Perancangan dan Implementasi Pengendali Pintu Pagar Otomatis Berbasis Arduino 5 Ashar Seppiawan N 2011 Berbasis
Mikrokontroler
Sistem Keamanan Pintu Pagar Otomatis Menggunakan Voice Recognition
BAB 3 PERANCANGAN
3.1 Diagram Alir Penelitian
Pada penelitian ini di perlukan diagram alir yang digunakan untuk mengetahui langkah-langkah yang perlu dilakukan untuk menyelesaikan alat ini. Diagram alir digambarkan pada gambar berikut :
3.1 Gambar Diagram Alir Penelitian
Penjelasan diagram alir penelitian:
a. Mulai
Pada proses ini penulis memulai persiapan untuk mengerjakan penelitian dan pembuatan Perancangan Sistem Pengendali Pintu / Pagar Otomatis Menggunakan Android Speech Recognition dan Arduino.
b. Studi Pustaka
Pada tahap ini dilakukan pengumpulan data-data dan informasi yang berkaitan dan akan membantu dalam proses penelitian.
Pengumpulan data- data dilakukan melalui media internet dan buku.
c. Analisis Data
Data-data dan informasi yang telah didapatkan kemudian dilakukan analisis untuk menentukan bentuk bahan dan komponen yang akan digunakan dalam penelitian ini.
d. Perancangan Alat
Pada penelitian ini dimulai dengan melakukan perancangan alat.Pada tahap ini dilakukan perancangan alat berupa bentuk, penggunaan komponen dan tata letak dari komponen tersebut.
e. Persiapan Alat dan Bahan
Pada tahap ini penulis mempersiapkan bahan-bahan yang nantinya akan digunakan dalam pembuatan alat. Dengan adannya persiapan bahan proses pembuatan alat bisa segera dimulai. Penggunaan alat-alat yang digunakan dalam pembuatan alat ini juga disiapkan untuk mempermudah ataupun mempercepat proses perancangan dan pembuatan.
f. Pembuatan Alat
Pada proses ini merupakan proses utama dari pembuatan alat yang berupa hardware dengan menyesuaikan dengan tahapan perencanaan.
Pembuatan hardware dilakukan secara berurutan dari desain skematik rangkaian, pemasangan komponen atau modul ,wiringdan pembuatan miniatur simulasi.
g. Pembuatan Program
Pada tahap ini merupakan tahap untuk pembuatan program yang nantinnya akan dimasukan pada hardware yang telah selesai dibuat.
Pemrograman yang dilakukan adalah pemrograman untuk arduino yaitu dengan bahasa C .Arduino akan ditempatkan didalam sebagai pengontrol beban secara mikrokontroler. Selain pemrograman untuk arduino, dilakukan juga pemrograman untuk pembuatan aplikasi Android sebagai perangkat pengendali dari alat ini.
h. Uji Fungsional
Pada tahap ini dilakukan pengujian alat secara fungsional.Pengujian dilakukan secara per bagian dari alat untuk mengetahui apakah alat ini dapat berfungsi dengan baik per bagian dari hardware ataupun dari program yang diberikan. Pada tahap ini apabila terjadi error ataupun ketidaksesuaian secara fungsional maka akan dilakukan pengecekan kembali baik dari segi hardware ataupun secara software.
i. Uji Kinerja
Pada proses ini dilakukan pengujian kinerja alat dari segi kemampuan, ketahanan alat dan daya jangkau dari koneksi Bluetooth yang digunakan pada alat ini. Pada tahap ini apabila terjadi error ataupun ketidaksesuaian kinerja maka akan dilakukan pengecekan kembali baik dari segi hardware ataupun secara software.
j. Selesai
Dalam hal ini penulis telah menyelesaikan tugas akhir baik dalam pembuatan alat , pengujian alat dan perbaikan alat dan selanjutnya alat ini sudah dapat diaplikasikan dengan baik.
3.2 Perancangan Alat
Pada tahap perancangan alat ini terdapat langkah-langkah yang penulis lakukan dengan mengacu pada diagram alir proses perancangan alat sesuai gambar dibawah ini :
Gambar 3.2 Diagram Alir Perancangan Alat
Pada perancangan alat ini terdapat dua bagian utama yaitu smartphone sebagai perangkat pengirim data dari perintah suara dan rangkaian arduino sebagai penerima data dan pengatur beban berupa kipas dan lampu.
3.3 Perancangan Hardware
a. Perancangan Arduino uno R3
Dalam perancangan sistem pemrosesan digital menggunakan mikrokontroler arduino uno perlu dilakukan persiapan fungsi-fungsi pin pada arduino utuk dapat digunakan sesuai dengan yang kehendaki. Penggunaan Arduino Uno R3 tidak perlu membuat sistem minimumya dikarenakan modul ini sudah merupakan board yang dapat langsung digunakan tinggal menambahkan sumber tegangan dan memberikan program di dalamnya.
Fungsi utama Arduino Uno R3 pada alat ini adalah sebagai pemrosesan data utama dari input untuk mengontrol rangkaian output beban berupa motor servo sebagai penggerak pintu / pagar. Tahapan dalam perancangan yang dilakukan adalah sebagai berikut:
Perancangan diagram skematik menggunakan software PROTEUS ISIS.
Pada tahap ini yang dilakuan adalah menyiapkan seluruh komponen yang akan digunakan dalam perancangan skematik pada software PROTEUS ISIS.
Komponen-komponen yang sudah didapatan kemudian dilakukan integrasi antar komponen sesuai dengan tahapan perencanaan untuk dapat membuat skematik rangkaian alat secara baik. Adapun rancangan skematik rangkaian Arduino dan rangkaian pengendali beban adalah sebagai berikut :
Gambar 3.3 SkematikArduino Uno
Komponen utama pengendali diatas adalah Arduino Uno R3 dan komponen tambahannya adalah modul Bluetooth HC-05 dan motos servo sebagai motor penggerak pintu / pagar.
Adapun pin I/O yang digunakan pada Arduino Uno R3 dapat dilihat pada tabel berikut :
Tabel 3.1 Penggunaan Pin Arduino
Pin Fungsi Keterangan
2 RX Penerima komunikasi serial HC-05
3 TX Pengirim komunikasi serial HC-05
GND GND Terminal GND HC-05
5V VCC Terminal VCC HC-05
4 DATA Output Data Motor Servo
GND GND Terminal GND Motor Servo
5V VCC Terminal VCC Motor Servo
5 DATA Output Data Motor Servo
GND GND Terminal GND Motor Servo
5V VCC Terminal VCC Motor Servo
Pada pin 2 dan 3Arduino Uno R3 tersambung dengan pin Rx dan Tx modul Bluetooth HC-05. Apabila Bluetooth HC-05 sudah terkoneksi maka jika ada data yang dikirimkan dari smartphone melalui bluetooth data tersebut akan masuk ke arduino dan dapat terbaca untuk dieksekusi sesuai dengan perintah pada program. Pada bagian output Arduino Uno terdapat beban motor servo yaitu padapin 4 dan 5 yaitu output data untuk mengatur motor servo sebagai penggerak pintu / pagar.
3.4 Perancangan Program dan Aplikasi
Pada perancangan pemrograman terbagi menjadi dua bagian perancangan. Pemrograman digunakan untuk memberikan perintah pada perangkat ataupun mikrokontroler untuk mengeksekusi sesuai perintah program.
Adapun pemrograman yang penulis lakukan adalah sebagai berikut :
a. Pemrograman Arduino Uno R3
Pada pemrograman Arduino Uno R3 menggunakan software Arduino IDE.Dengan software tersebut dapat penulis melakukan permograman melalui komputer dengan menggunakan library yang ada dan perintah-perintah pemrograman bahasa C pada ArduinoIDE.
Gambar 3.4 Program Arduino IDE
Pemrograman arduino menggunakan bahasa pemrograman C. Dengan menggunakan software Arduino IDE terdapat fungsi untuk menuliskan library yang dapat digunakan untuk membantu dalam penulisan program.
Pemrograman arduino dilakukan dengan cara menentukan pin atau fungsi yang akan digunakan, kemudian membuat pemanggilan dan inisialisasi port pada arduino. Apabila port sudah disiapkan untuk dimasukan didalam program maka langkah selanjutnya adalah melakukan penulisan program dengan mengacu pada flowchart yang telah dibuat dan dengan menyesuaikan perintah-perintah yang akan digunakan pada software arduino IDE.
Adapun diagram alir dari pemrograman pada Arduino Uno sebagai perangkat pemroses data adalah sebagai berikut :
Mulai
Inisialisasi port dan variabel
Menerima Input Serial Bluetooth
If Input = ‘1’
If Input = ‘0’
Buka Pintu / Pagar
Tutup Pintu / Pagar
Selesai Ya
Ya Tidak
Tidak
Gambar 3.5 Flowchart Program Arduino Uno
Adapun untuk list program yang penulis buat untuk program pada Arduino Uno adalah sebagai berikut :
#include <SoftwareSerial.h> // library serial
#include <Servo.h> // library motor servo
SoftwareSerial bluetooth(2, 3); // register pin serial bluetooth Servo Servo1; // register variabel motor servo -1
Servo Servo2; // register variabel motor servo -2
void setup() {
Serial.begin(9600); // konfigurasi port serial monitor bluetooth.begin(57600); // konfigurasi port serial bluetooth Servo1.attach(4); // register pin data servo -1
Servo2.attach(5); // register pin data servo -2
Servo1.write(0); // atur posisi servo-1 ke sudut 0 derajat Servo2.write(0); // atur posisi servo-2 ke sudut 0 derajat }
void loop() {
if (bluetooth.available())// check terima data serial dari bluetooth {
char inChar= bluetooth.read(); // baca input data serial
Serial.println(inChar); // tampilkan data ke serial monitor if(inChar == '1') // cek perintah input serial untuk buka pintu
{
// Buka Pintu
Servo1.write(90);// atur posisi servo-2 ke sudut 90 derajat Servo2.write(90);// atur posisi servo-2 ke sudut 90 derajat
}else if(inChar == '0')// cek perintah input serial untuk tutup pintu {
// Tutup Pintu
Servo1.write(0);// atur posisi servo-2 ke sudut 0 derajat Servo2.write(0);// atur posisi servo-2 ke sudut 0 derajat }
}
a. Pemrograman aplikasi perintah suara untuk Smartphone
Pada perangkat Smartphone android yang akan digunakan sebagai media pengirim perintah suara harus sudah terinstal aplikasi perintah suara.
Dalam pembuatan aplikasi dan programnya penulis menggunakan software App Inventor dengan menggunakan fungsi voice recognition sebagai pemrosesan data dari suara manusia menjadi text yang kemudian akan dikirimkan melalui koneksi Bluetooth ke arduino. Adapun program pada APP Inventor tersebut adalah sebagai berikut:
Gambar 3.6 Program koneksi Bluetooth App Inventor
Pada program diatas merupakan list program yang digunakan untuk pengaktifan fungsi bluetooth pada smartphone. Nantinya didalam aplikasi yang dibuat pengguna dapat memilih namabluetooth yang akan dikoneksikan dari list data bluetooth yang disediakan. Fungsi clock timer digunakan untuk memberikan indicator koneksi bluetooth dengan teks berwarna apabila sudah terkoneksi maka akan muncul teks bertuliskan koneksi aktif berwarna hijau.
Terdapat pengaktifan fungsi speech recognition dan sensor accelerometer untuk mengakifkan fungsi input suara. Apabila sensor accelerometer diaktifkan dengan cara menggoyangkan perangkat smartphone, maka akan muncul fungsi speech recognition untuk diberikan input suara perintah.
Pada list program selanjutnya adalah program untuk memasukkan kode password untuk dapat mengakses menu speech recognition. Apabila password yang dimasukkan tidak benar maka kita tidak dapat mengakses menu speech recognition. Menu recognition dapat diakses apabila password yang dimasukkan sesuai dengan data yang telah disimpan. Hal ini dilakukan untuk menghidari adanya penyalahgunaan aplikasi agar meningkatkan keamanan sistem pintu/pagar.
Kemudian setelah masuk ke menu speech recognition, maka suara yang kita masukkan akan dieksekusi dan dari hasil speech recognition akan disesuaikan dengan data yang terdapat pada program tersebut. Fungsi speech recognition akan mengubah sumber perintah manusia menjadi teks yang kemudian teks tersebut akan dibandingkan, apabila teks yang dibandingkan sesuai dengan data yang ada pada program maka smartphone akan mengirimkan angka melalui koneksi bluetooth menuju ke arduino untuk selanjutnya diproses untuk menggerakkan output beban motor servo.
3.5 Prinsip Kerja Alat
Prinsip kerja dari alat ini adalah dengan mengkoneksikan smartphone dengan Bluetooth HC-05 kemudian memberikan masukan berupa perintah suara pada smartphone android yang sudah di install aplikasi perintah suara.
Apabila perintah yang diucapkan sesuai dengan perintah pada aplikasi maka akan dieksekusi dengan mengirimkan data berupa angka melalui koneksi bluetooth ke Arduino Uno. Sebagai contohnya diberikan perintah “buka pintu”
maka smartphone akan mengirimkan nilai 1 , data tersebut akan diproses oleh Arduino untuk melakukan pengontrolan beban berupa motor servo dengan memberikan output dari pin digital Arduino ke motor servo untuk menggerakkan pintu / pagar.
Apabila perintah yang diucapkan tidak sesuai dengan daftar perintah yang ada pada aplikasi di smartphone maka tidak ada yang dieksekusi pada Arduino atau tidak akan berpengaruh pada beban yang dikontrol.
3.6 Alat dan Bahan
Pembuatan alat meliputi realisasi dari seluruh rancangan rangkaian yang telah dibuat. Dimulai dari persiapan alat dan bahan yang akan digunakan dan tahapan pembuatan alat.
Bahan yang dibutuhkan:
a. Arduino Uno R3
b. Modul BluetoothHC-05 c. Motor Servo
d. Adaptor 12 V
e. Smartphone Android
Peralatan yang dibutuhkan:
a. Solder b. Timah c. Penggaris d. Multimeter e. Obeng f. Borlistrik g. Tripleks h. Lem i. Paku j. Gergaji
Software yang dibutuhkan
a. ArduinoIDE b. AppInventor c. Proteus7
BAB 4 PEMBAHASAN
4.1 Pengertian Speech Recognition
Speech Recognition adalah proses identifikasi suara berdasarkan kata yang diucapkan dengan melakukan konversi sebuah sinyal akustik, yang ditangkap oleh audio device (perangkat input suara).
Speech Recognition juga merupakan sistem yang digunakan untuk mengenaliperintah kata dari suara manusia dan kemudian diterjemahkan menjadi suatu datayang dimengerti oleh komputer. Pada saat ini, sistem ini digunakan untukmenggantikan peranan input dari keyboard dan mouse.
Keuntungan dari sistem ini adalah pada kecepatan dan kemudahan dalam penggunaannya. Kata – kata yang ditangkap dan dikenali bisa jadi sebagai hasil akhir, untuk sebuah aplikasi seperti command & control, penginputan data, dan persiapan dokumen. Parameter yang dibandingkan ialah tingkat penekanan suara yang kemudian akan dicocokkan dengan template database yang tersedia.
Sedangkan sistem pengenalan suara berdasarkan orang yang berbicara dinamakan speaker recognition. Pada makalah ini hanya akan dibahas mengenai speech recognition karena kompleksitas algoritma yang diimplementasikan lebih sederhana daripada speaker recognition. Algoritma yang akan diimplementasikan pada bahasan mengenai proses speech recognition ini adalah algoritma FFT (Fast Fourier Transform), yaitu algoritma yang cukup efisien dalam pemrosesan sinyal digital (dalam hal ini suara) dalam bentuk diskrit.
Algoritma ini mengimplementasikan algoritma Divide and Conquer untuk pemrosesannya. Konsep utama algoritma ini adalah mengubah sinyal suara yang berbasis waktu menjadi berbasis frekuensi dengan membagi masalah menjadi
beberapa masalah yang lebih kecil. Kemudian, setiap masalah diselesaikan dengan cara melakukan pencocokan pola digital suara.
4.2 Sejarah Speech Recognition
Biometrik, termasuk di dalamnya speech recognition, secara umum digunakan untuk identifikasi dan verifikasi. Identifikasi ialah mengenali identitas subyek, dilakukan perbandingan kecocokan antara data biometric subyek dalam database berisi record karakter subyek. Sedangkan verifikasi adalah menentukan apakah subyek sesuai dengan apa yang dikatakan terhadap dirinya.
Biometrik merupakan suatu metoda untuk mengenali manusia berdasarkan pada satu atau lebih ciri-ciri fisik atau tingkah laku yang unik. Biometric Recognition atau biasa disebut dengan Sistem pengenalan biometric mengacu pada identifikasi secara otomatis terhadap manusia berdasarkan psikological atau karakteristik tingkah laku manusia. Ada beberapa jenis teknologi biometric antara lain suara (speech recognition).
Metode Hidden Markov Model mulai diperkenalkan dan dipelajari pada akhir tahun 1960, metode yang berupa model statistik dari rantai Markov ini semakin banyak dipakai pada tahun-tahun terakhir terutama dalam bidang speech recognition, seperti dijelaskan oleh Lawrence R. Rabiner dalam laporannya yang berjudul “A Tutorial on Hidden Markov Models and Selected Applications in Speech Recognition”
Proses dalam dunia nyata secara umum menghasilkan observable output yang dapat dikarakterisasikan sebagai signal. Signal bisa bersifat diskrit (karakter dalam alfabet) maupun kontinu (pengukuran temperatur, alunan musik). Signal bisa bersifat stabil (nilai statistiknya tidak berubah terhadap waktu) maupun nonstabil (nilai signal berubah-ubah terhadap waktu).
Dengan melakukan pemodelan terhadap signal secara benar, dapat dilakukan simulasi terhadap sumber dan pelatihan sebanyak mungkin melalui proses simulasi tersebut. Sehingga model dapat diterapkan dalam sistem prediksi, sistem pengenalan, maupun sistem identifikasi. Secara garis besar model signal dapat dikategorikan menjadi 2 golongan yaitu : model deterministik dan model statistikal.
Model deterministik menggunakan nilai-nilai properti dari sebuah signal seperti: amplitudo, frekuensi, fase dari gelombang sinus. Sedangkan model statistikal
menggunakan nilai-nilai statistik dari sebuah signal seperti: proses Gaussian, proses Poisson, proses Markov, dan proses Hidden Markov.
Suatu model HMM secara umum memiliki unsur-unsur sebagai berikut:
- N, yaitu jumlah state dalam model. Secara umum state saling terhubung satu dengan yang lain, dan suatu state bisa mencapai semua state yang lain dan sebaliknya (disebut model ergodic). Namun hal tersebut tidak mutlak, terdapat kondisi lain dimana suatu state hanya bisa berputar ke diri sendiri dan berpindah ke satu state berikutnya, hal ini bergantung pada implementasi dari model.
- M, yaitu jumlah observation symbol secara unik pada tiap statenya, misalnya:
karakter dalam alfabet, dimana state adalah huruf dalam kata.
- State Transition Probability { } -> ij A a
- Observation Symbol Probability pada state j, { } () -> j Bb k - Initial State Distribution -> i p p
Dengan memberikan nilai pada N, M, A, B, dan p , HMM dapat digunakan sebagai generator untuk menghasilkan urutan observasi. dimana tiap observasi t o adalah salah satu simbol dari V, dan T adalah jumlah observasi dalam suatu sequence.
4.3 Skema Utama dan Algoritma Speech Recognition
Terdapat 4 langkah utama dalam sistem pengenalan suara:
- Penerimaan data input
- Ekstraksi, yaitu penyimpanan data masukan sekaligus pembuatan database untuk template.
- Pembandingan / pencocokan, yaitu tahap pencocokan data baru dengan data suara (pencocokan tata bahasa) pada template.
- Validasi identitas pengguna.
Gambar 4.1 Skema Speech Recognition
Secara umum, speech recognizer memproses sinyal suara yang masuk dan menyimpannya dalam bentuk digital. Hasit proses digitalisasi tersebut kemudian dikonversi dalam bentuk spektrum suara yang akan dianalisa dengan membandingkannya dengan template suara pada database sistem.
Gambar 4.2 Spektrum Suara
Sebelumnya, data suara masukan dipilah-pilah dan diproses satu per satu berdasarkan urutannya. Pemilahan ini dilakukan agar proses analisis dapat dilakukan
secara paralel. Proses yang pertama kali dilakukan ialah memproses gelombang kontinu spektrum suara ke dalam bentuk diskrit. Langkah berikutnya ialah proses kalkulasi yang dibagi menjadi dua bagian :
- Transformasi gelombang diskrit menjadi array data.
- Untuk masing-masing elemen pada aiTay data, hitung "ketinggian" gelombang (frekuensi).
Objek permasaiahan yang akan dibagi adalah masukan berukuran n, berupa data diskrit gelombang suara.Ketika mengkonversi gelombang suara ke dalam bentuk diskrit, gelombang diperlebar dengan cara memperinci berdasarkan waktu. Hal ini dilakukan agar proses algontma seianjutnya (pencocokan) lebih mudah dilakukan.
Namun, efek buruknya ialah array of array data yang terbentuk akan lebih banyak.
Gambar 4.3 Contoh Hasit Konversi Sinyal Diskrit
Dari tiap elemen array data tersebut, dikonversi ke dalam bentuk bilangan biner. Data biner tersebut yang nantinya akan dibandingkan dengan template data suara.
Proses divide and conquer:
- Pilih sebuah angkaN, dimana N merupakan bilangan bulat kelipatan 2.Bilangan ini berfungsi untuk menghitung jumlah elemen transformasi FFT.
- Bagi dua data diskrit secara (dengan menerapkan algoritma divide and conquer) menjadi data diskrit yang lebih kecii berukuran N = N,.N2.
- Objek data dimasukkan ke dalam table (sebagai elemen tabel).
- Untuk setiap elemen data, dicocokkan dengan data pada template (pada data template juga dilakukan pemrosesan digitalisasi menjadi data diskrit, dengan cara yang sama dengan proses digitalisasi data masukan bam yang ingin dicocokkan).
- Setiap masalah disatukan kembali dan dianalisis secara keseluruhan, kecocokan dari segi tata bahasa dan apakah data yang diucapkan sesuai dengan kata yang tersedia pada template data.
- Verifikasi data. Jika sesuai, proses iebih lanjut, sesuai dengan aplikasi yang mengimplementasikan algoritma ini.
4.4 Implementasi Speech Recognition
Hardware yang dibutuhkan dalam implementasi Speech Recognition :
- Sound card : Merupakan perangkat yang ditambahkan dalam suatu Komputer yang fungsinya sebagai perangkat input dan output suara untuk mengubah sinyal elektrik, menjadi analog maupun menjadi digital.
- Microphone : Perangkat input suara yang berfungsi untuk mengubah suara yang melewati udara, air dari benda orang menjadi sinyal elektrik.
- Komputer atau Komputer Server : Dalam proses suara digital menterjemahkan gelombang suara menjadi suatu simbol biasanya menjadi suatu nomor biner yang dapat diproses lagi kemudian diidentifikasikan dan dicocokan dengan database yang berisi berkas suara agar dapat dikenali.
Contoh Implementasi teknologi Speech Recognition :
Saat ini pada tahun 2010 Microsoft windows vista dan windows 7, speech recognition telah disertakan dalam system operasinya. sebagaimana fungsi dari speech recognition menterjemahkan pengucapan kata – kata kedalam bentuk teks digital. Salah satu implementasi speech recognition adalah pada konfrensi PBB dimana seluruh Negara tergabung dalam keanggotaannya, fungsi speech recognition dalam hal ini menterjemahkan bahasa pembicara dari suatu Negara kedalam bahasa yang dipahami pendengar.
Contoh penggunaan lain speech recognition adalah Perawatan kesehatan.Dalam perawatan kesehatan domain, bahkan di bangun meningkatkan teknologi pengenalan suara, transcriptionists medis (MTs) belum menjadi usang.
Layanan yang diberikan dapat didistribusikan daripada diganti. Pengenalan pembicaraan dapat diimplementasikan di front-end atau back-end dari proses dokumentasi medis. Front-End SR adalah salah satu alat untuk mengidentifikasi kata- kata yang ucapkan dan ditampilkan tepat setelah mereka berbicara Back-End SR atau SR tangguhan adalah di mana penyedia menentukan menjadi sebuah sistem dikte digital, dan suara yang diarahkan melalui pidato-mesin pengakuan dan draft dokumen diakui dirutekan bersama dengan file suara yang asli ke MT / editor, yang mengedit draft dan memfinalisasi laporan. Ditangguhkan SR sedang banyak digunakan dalam industri saat ini.
Banyak aplikasi Electronic Medical Records (EMR) dapat menjadi lebih efektif dan dapat dilakukan lebih mudah bila digunakan dalam hubungannya dengan pengenalan-mesin bicara. Pencarian, query, dan pengisian formulir semua bisa lebih cepat untuk melakukan dengan suara dibandingkan dengan menggunakan keyboard.
4.5 Pengujian Alat
Pada prosedur uji coba program akan dijelaskan tentang cara pengoperasian alat serta langkah-langkah yang harus dilakukan untuk menjalankan prototype.
4.5.1 Pengujian Jarak Konektifitas Bluetooth
Gambar 4.4 Jarak Konektifitas Buletooth
Konektifitas Bluetooth merupakan kunci utama untuk menjalankan keseluruhan sistem alat. Tujuan dari pengujian ini adalah untuk mengetahui sejauh mana perangkat Bluetooth pada Alat dan Handphone dapat terkoneksi. Berdasarkan pengukuran yang telah dilakukan jarak maksimum yang dapat ditangkap oleh Bluetooth adalah sebesar 12m. Berikut merupakan tabel hasil pengukuran jarak Bluetooth.
Jarak (meter) Konektifitas
3 m Terhubung
6 m Terhubung
9 m Terhubung
12 m Terhubung
15 m Tidak terhubung
Tabel 4.1Tabel Pengukuran Jarak Konektifitas Bluetooth
4.5.2 Pengujian Mikrokontroler Terhadap Motor Servo
Pengujian ini dilakukan untuk mengetahui bahwa mikrokontroler sudah bisa bekerja dengan baik untuk memberikan suplay terhadap motor servo.
Gambar 4.5 Pintu Gerbang Tertutup