HALAMAN JUDUL
RANCANG BANGUN KENDALI LAMPU MENGGUNAKAN MIKROKONTROLER ATMEGA8538 BERBASIS ANDROID MELALUI BLUETOOTH DAN SPEECH RECOGNITION
PUBLIKASI
diajukan oleh Anggit Supriyanto 09.11.2655
kepada SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER AMIKOM YOGYAKARTA YOGYAKARTA 2013
HALAMAN PUBLIKASI
Lighting Control Design Using Microcontroller ATMega8535 Based on Android Via Bluetooth and Speech Recognition Rancang Bangun Kendali Lampu Menggunakan Mikrokontroller ATMega8535 Berbasis Android Melalui Bluetooth dan Speech Recognition Anggit Supriyanto Sudarmawan Jurusan Teknik Informatika STMIK AMIKOM YOGYAKARTA ABSTRACT Nowadays, technology development motivates human to think creatively, not only try over new inventions, but also optimize performance of previous technology. Based on the above, this research will explore how a system—home automation like—be able to control the electronic devices using microcontroller technology, Android smartphone, bluetooth, and speech recognition. The system in question is a system that can control electronic devices wirelessly using Android smartphone. The purpose of this research is to optimize the functionality of Android smartphones that can control electronic devices (home automation), take advantage of existing speech recognition on Android smartphone that allow users to do commands through voice input, and facilitate user monitoring electronic devices via smartphone using feedback from the microcontroller. Based on this, research methods conducted on three things, specifically: hardware interface design, program design on hardware, and program design on Android. Communication between Android smartphone with a microcontroller can be done wirelessly using bluetooth. In order to the system microcontroller can be controlled by Android smartphone, can be done by submitting ASCII character code to received and decoded by the microcontroller. To provide feedback, microcontroller system must be able to receive input from the output of its own. Existing speech recognition feature on Android smartphone can be used to control electronic devices using voice commands. It can be done by initiate a spectrum of voice command—in string—into a ASCII character code that has been recognized by the microcontroller. Keywords: Home Automation, Mobile Application, Android, Microcontroller, Bluetooth, Speech Recognition.
1.
Pendahuluan Keberadaan sebuah sistem tidak terlepas dari beberapa faktor seperti tujuan,
input, proses, output, batas, kontrol dan feedback serta lingkungan. Dalam hal ini, kontrol merupakan mekanisme pengendalian input dan proses yang diwujudkan dengan menggunakan feedback yang menampilkan output, bertujuan agar sistem berjalan dengan optimal. Perkembangan teknologi saat ini mendorong manusia untuk terus berpikir kreatif, tidak hanya menggali penemuan-penemuan baru, tapi juga memaksimalkan kinerja sistem dari teknologi yang ada. Penggabungan atau bahkan penggantian teknologi lama dengan teknologi baru semakin banyak terjadi saat teknologi yang digantikan dirasa tidak lagi memenuhi kebutuhan manusia sekarang yang semakin hari semakin kompleks. Dampak positif yang dapat secara langsung dirasakan oleh manusia berkaitan dengan perkembangan teknologi dan informasi salah satunya adalah kemudahan dalam mengakses sistem yang dimilikinya. Berdasarkan hal di atas, dalam skripsi ini akan dibahas tentang bagaimana sebuah sistem—layaknya home automation—yang dapat melakukan kendali terhadap perangkat elektronik menggunakan teknologi mikrokontroler, smartphone Android, bluetooth serta fasilitas speech recognition. Sistem yang dimaksud adalah perangkat yang dapat mengendalikan perangkat elektronik secara wireless menggunakan smartphone Android. Kendali secara wireless tersebut dilakukan melalui bluetooth
menggunakan
aplikasi khusus yang berjalan pada sistem operasi Android. Di dalam Aplikasi tersebut juga disertakan sebuah fitur speech recognition yang memungkinkan user dapat memberikan perintah melalui suara. 2.
Landasan Teori
2.1.
DT-PROTO 40 Pin AVR Analog DT-PROTO 40 Pin AVR Analog merupakan suatu modul single chip dengan 1
mikrokontroler ATmega8535 . Modul ini delengkapi dengan pad array yang dapat digunakan sebagai tempat untuk rangkaian tambahan.
1
Innofative Electronic, DT-PROTO 40 Pin AVR Analog, hal. 1
1
2.2.
Modul Bluetooth HC-05 HC-05 merupakan modul bluetooth to serial yang menggunakan protokol
standar bluetooth V2.0 dan kebutuhan tegangan sebesar 3,3 V. 2.3.
2
Speech Recognition Speech recognition adalah proses dimana sistem komputer memetakan input
suara menjadi teks sebagai output. Kata-kata tersebut diubah bentuknya menjadi sinyal digital dengan cara mengubah gelombang suara menjadi sekumpulan angka lalu disesuaikan dengan kode-kode tertentu dan dicocokkan dengan suatu pola yang tersimpan dalam suatu perangkat. Hasil dari identifikasi kata yang diucapkan dapat ditampilkan dalam bentuk tulisan atau dapat dibaca oleh perangkat teknologi. 2.4.
3
Android Android adalah sistem operasi berbasis Linux yang digunakan pada perangkat
mobile seperti smartphone dan komputer tablet. Platform open source yang dimiliki Android memungkinkan para developer untuk menciptakan aplikasinya sendiri. 2.5.
4
Feedback 5
Feedback adalah pengembalian bagian output system ke input. Feedback merupakan teknik yang sangat berguna pada sistem kendali. Pada negative feedback, sejumlah sinyal output dikembalikan ke input melalui jalur yang berbeda dengan jalur sinyal input utama. Sedangkan pada positive feedback, sinyal feedback melalui jalur yang sama dengan jalur sinyal input utama.
2
http://www.wlelectronix.com/p/137/bluetooth-to-serial-module-hc-05.html http://www.speech.cs.cmu.edu/comp.speech/Section6/Q6.1.html 4 http://developer.android.com/about/dashboards/index.html 5 nd Allan R. Hambley, Electronics 2 Edition, hal. 555 3
2
3.
Metode Penelitian
3.1.
Alat dan Bahan Berikut ini tabel daftar kebutuhan hardware dan software pada penelitian. Tabel 3.1 Kebutuhan Hardware dan Software Kebutuhan
Objek
Hardware
Software Windows 7
Komputer Desktop Mikrokontroler
Bahasa
AVR Studio 4
DT-PROTO 40 Pin AVR Analog
C
DT-HiQ AVR USB ISP Kabel data Serial to RJ11 Ubuntu 12.04 Eclipse Indigo Laptop
Pocketsphinx 0.8 Android SDK
Aplikasi Android
Gimp
Java
Android 4.1
Samsung Galaxy Mini
Voice Search 2.1.4
Kabel data USB
3.2.
Langkah-langkah Penelitian
3.2.1.
Prinsip Kerja Sistem Dalam sistem ini, user melakukan input dari aplikasi Smart Lamp yang ada
pada pada perangkat Android. Tersedia dua macam pilihan input yaitu standar input (switch button) dan speech recogniton. Data yang di-input-kan—berupa data serial— dikirimke mikrokontroler melalui bluetooth. Data yang dikirim dari Android akan diterima oleh modul bluetooth yang ada pada sistem mikrokontroler. Data serial tersebut diterjemahakan oeleh mikrokontroler menjadi data paralel. Data paralel yang dihasilkan oleh mikrokontroler diteruskan ke relay melalui indikator LED yang berfungsi memastikan: sampai pada tahap ini proses telah berjalan dengan benar. Kemudian relay akan meneruskan data yang digunakan untuk menghidupkan atau mematikan lampu. Pada lampu terdapat indikator led—keduanya dipasang secara serial. Led berfungsi sebagai feedback, yaitu apabila lampu hidup, led juga akan hidup, begitu juga sebaliknya. Kondisi led saat hidup atau mati dimafaatkan sebagaiinputke mikrokontroler.
3
Data yang diperoleh mikrokontroler tersebut dikirimkan kembali ke perangkat android. Berikut ini gambar diagam blok prinsip kerja sistem secara garis besar.
Gambar 3.1 Diagram Blok Sistem Kendali Lampu
4
3.2.2.
Perancangan Sistem
3.2.2.1. Input Berikut ini penjelasan input sistem berdasarkan media yang digunakan: a.
Switch Button, merupakan standar input (touch) yang digunakan pada smartphone Android.
b.
Suara, adalah memanfaatkan fasilitas speech recogniton yang secara default terdapat pada smartphone Android. Sedangkan berdasarkan bentuk data, pada sistem kendali ini terdapat dua
macam data.
Gambar 3.2 Jenis Data Data yang dikirimkan oleh Android ke mikrokontroler melalui bluetooth adalah data serial. Oleh mikrokontroler, data serial tersebut diubah menjadi data paralel agar dapat digunakan untuk mengatur relay, yaitu menghidupkan atau mematikan lampu. Pada output (lampu) terdapat led sebagai indikator yang kembali mengirimkan data paralel ke mikrokontroler. Kemudian mikrokontroler menterjemahkan data paralel tersebut ke data serial dan mengirimkannya ke Android (melalui bluetooth) sebagai feedback. 3.2.2.2. Output Output utama yang dihasilakan dari sistem kendali lampu ini adalah keadaan (hidup/mati) lampu. Adapun output lainnya merupakan feedback pada aplikasi Android. 3.2.2.3. Media Transmisi Sistem
kendali
ini
menggunakan
media
transmisi
wireless
untuk
menghubungkan smartphone Android dan sistem mikrokontroler. Ada beberapa pilihan yang dapat digunakan untuk media transmisi wireless seperti infrared, bluetooth, Wi-Fi, dan lain sebagainya tergantung jarak yang diperlukan.
5
Untuk penggunaan sistem pada jarak tidak terlalu jauh—misalnya rumah dengan panjang 25 x 10 meter—cukup menggunakan bluetooth. Dengan pertimbangan: sistem mikrokontroler diletakan pada bagian tengah rumah. Jadi untuk mengakses, jarak maksimal user dengan sistem mikrokontroler adalah 12 meter. Selain efisiensi jangkauan, biaya menggunakan bluetooth juga jauh lebih murah dari pada Wi-Fi. 3.2.3.
Detail Perancangan Hardware
3.2.3.1. DT-PROTO 40 Pin AVR Analog Minkrokontroler
ATmega8535
memiliki
32
pin
jalur
input/output
yang
dikelompokan menjadi 4 port: A, B, C, dan D. Berikut ini tabel dan gambar penggunaan pin pada masing-masing port mikrokontroler Atmega8535 pada DT-PROTO 40 Pin AVR Analog. Tabel 3.2 Penggunaan Pin Atmega8535 Port
A
B
Pin
Pin
Char
-
0
3/#
Lampu 3
-
-
1
4/$
Lampu 4
-
Lampu 11
-
2
5/%
Lampu 5
-
Lampu 12
-
3
6/^
Lampu 6
-
e/E
Lampu 13
-
4
7/&
Lampu 7
-
r/R
Lampu 14
-
5
8/*
Lampu 8
-
6
t/T
Lampu 15
-
6
9/(
Lampu 9
-
7
y/Y
Lampu 16
-
7
0/)
Lampu 10
-
0
-
-
Feedback
0
-
HC-05 (TX)
1
-
-
Feedback
1
-
-
HC-05 (RX)
2
-
-
-
2
-
-
-
3
-
-
-
3
-
-
-
4
-
-
-
4
-
-
-
5
-
-
-
5
-
-
-
6
-
-
-
6
-
-
-
7
-
-
-
7
-
-
-
Char
Output
0
1/!
Lampu 1
1
2/@
Lampu 2
2
q/Q
3
w/W
4 5
Input
Port
C
D
6
Output
Input
Gambar 3.3 Penggunaan Pin ATmega8535 3.2.3.2. Modul Bluetooth HC-05 Pada modul Bluetooth HC-05 hanya 2 pin pada port D yang dihubungkan ke mikrokontroler yaitu D0 (RX) dan D1 (TX). Berikut ini gambar penggunaan pin HC-05.
7
Gambar 3.4 Hubungan Pin HC-05 dengan Atmega8535 3.2.3.3. DT-Sense Current Sensor Sensor arus DT-Sense Current Sensor memiliki 4 pin, tapi hanya pin yang digunakan. Berikut ini gambar penggunaan pin-pin tersebut.
Gambar 3.5 Hubungan Sensor Arus dengan Atmega8535
8
3.2.4.
Detail Perancangan Software
3.2.4.1. Flowchart a.
Aplikasi mobile
Gambar 3.6 Flowchart pada Aplikasi Mobile
9
b.
Aplikasi mikrokontroler
c.
Gambar 3.7 Flowchart pada Aplikasi Mikrokontroler
Bluetooth pada mikrokontroler
Gambar 3.8 Flowchart Komunikasi Bluetooth pada Mikrokontroler
10
3.2.4.2. Graphical User Interface (GUI) Berikut ini perancangan GUI pada aplikasi Android yang akan digunakan untuk mengendalikan lampu.
Gambar 3.9 Tampilan Kendali Menggunakan Switch Button
Gambar 3.10 Tampilan Kendali Menggunakan Speech Recognition
11
4.
Pembahasan
4.1.
Hardware Interface DT-PROTO 40 Pin AVR Analog yang telah dirangkai dengan modul bluetooth
HC-05 dan komponen-komponen lainnya ada pada gambar berikut.
Gambar 4.1 Rangkaian Sistem Mikrokontroler Tampak Atas
12
Rangkaian relay dibuat terpisah karena sisa ruang yang ada pada DT-PROTO 40 Pin AVR Analog tidak mecukupi.
Gambar 4.2 Rangkaian Relay Tampak Atas-Bawah 4.2.
Kelebihan dan Kelemahan Berdasarkan paparan pembahasan dan uji coba di atas, dapat digambarkan
kelebihan dan kelemahan sistem kendali lampu seperti berikut. 4.2.1.
Kelebihan
a.
User dapat melakukan kendali perangkat elektronik dalam jarak tertentu seperti yang ada pada tabel uji coba.
b.
User dapat melakukan kendali perangkat elektronik dengan lebih aman karena tidak melakukan kontak secara langsung dengan perangkat yang dialiri listrik tersebut.
c.
Karena tidak memerlukan kontak secara langsung untuk menghidupkan perangkat elektronika, sistem ini juga aman untuk anak-anak atau orang yang takut listrik agar terhindar dari kesetrum.
d.
Feedback dalam sistem ini memudahkan user mendapatkan informasi keadaan perangkat elektroniknya. Selain itu feedback yang ada juga menambah nilai
13
keamanan seperti yang dihasilkan pada uji coba dalam keadaan-keadaan tertentu. e.
Fasilitas speech recognition dalam bahasa indonesia menamabah nilai fleksibelitas aplikasi ini karena user tidak hanya dihadapkan dengan tampilan kendali menggunakan switch button.
4.2.2.
Kelemahan
a.
Walaupun dapat dimaksimalkan mejadi 16 titik output relay, pada simulasi ini hanya tersedia 2 titik relay.
b.
Feedback hanya terdapat pada satu titik relay.
c.
Fitur speech recognition membutuhkan koneksi internet (online).
d.
Jarak untuk koneksi menggunakan bluetooth cukup jauh untuk kondisi ruang tanpa penghalang, namun ketika melewati tembok, jarak akan berkurang.
5.
Kesimpulan dan Saran
5.1.
Kesimpulan Berdasarkan hasil perancangan dan implementasi yang telah dilakukan, serta
berdasarkan rumusan masalah yang ada, dapat diambil kesimpulan yaitu: a.
Komunikasi antara smartphone Android dengan mikrokontroler dapat dilakukan secara wireless menggunakan bluetooth, yang mana antara bluetooth pada smartphone Android dan modul bluetooth pada sistem mikrokontroler berkomunikasi menggunakan data serial.
b.
Agar sistem pensaklaran lampu dapat dikendalikan oleh smartphone Android, hal yang dilakukan oleh aplikasi pada android adalah mengirimkan kode karakter dalam bentuk ASCII yang kemudian diterjemahkan ke dalam bentuk serial agar dapat diterima dan diterjemahkan oleh mikrokontroler.
c.
Untuk dapat memberikan feedback, sistem mikrokontroler harus dapat menerima input dari output-nya sendiri. Secara sederhana hal ini dilakukan dengan menghubungkan secara paralel output utama (stop contact) dengan LED. LED berfungsi sebagai indikator hidup-mati stop contact. Saat stop contact dialiri arus listrik, LED akan hidup kemudian akan memberikan signal kepada mikro kontroler yang dapat diteruskan ke perangkat Android. Tetapi LED tidak dapat menerima arus dari stop contact secara langsung, harus
14
diturunkan. Maka digunakan adaptor untuk menurunkan arus tersebut agar dapat digunakan oleh LED. d.
Fitur
speech
dimanfaatkan
recognition untuk
yang
ada
mengendalikan
pada
smartphone
perangkat
elektronik
Android
dapat
menggunakan
perintah suara. Hal ini dilakukan dengan cara menginisialisasikan spektrum perintah suara—berupa string—ke dalam kode karakter yang telah dikenali mikrokontroler. 5.2.
Saran
a.
Menambahkan fitur dimmer dan timer pada sistem mikrokontroler agar lebih menarik dan lebih fungsional. Fitur dimmer berguna untuk user agar adapat mengatur tingkat keredupan lampu. Sedangkan fitur timer bertujuan agar user dapat melakukan timer dan scheduling secara otomatis terhadap perangkat yang dikendalikan.
b.
Mengintegrasikan fitur dimmer dan timer yang ada pada sistem mikrokontroler dengan aplikasi Android menggunakan GUI yang user friendly.
c.
Meng-offline-kan
fitur
speech
recognition
Pocketsphix. d.
Optimalisasi feedback agar lebih komunikatif.
15
menggunakan
library.
Misal:
DAFTAR PUSTAKA Barmawi, M dan Albert Paul Mavino. 1984. Prinsip-Prinsip Elektronika. Jakarta: Erlangga. Bishop, Owen. 2006 Dasar-Dasar Elektronika. Irzam Harmein. Jakarta: Erlangga. Budiharto, Widodo, dan Sigit Firmansyah. 2010. Elektronika Digital dan Mikroprosesor. Yogyakarta: Andi Publisher. Hambley, Allan R. 2000. Electronics 2nd Edition. New Jersey: Prentice-Hall.
Suyadhi, Taufik Dwi Septian. 2011. Buku Pintar Robotika. Yogyakarta: Andi Publisher. Syafrizal, Melwin. 2005. Teknologi (Arsitekturdan Protokol) Bluetooth. Jurnal Dasi 6 (Maret 2005): 37. Syahrul. 2012. Mikrokontroler AVR ATmega8535. Bandung: Informatika. Atmel. 2003. ATmega8535. http://www.atmel.com/images/doc2502.pdf. 12 November 2013.
diakses pada
Carnegie
Mellon Uneversity. Q6.1: What is speech recognition?. http://www.speech.cs.cmu.edu/comp.speech/Section6/Q6.1.html. diakses pada 12 November 2013.
Google.
Platform Version. 2013. Android Developer. http://developer.android.com/about/dashboards/index.html. diakses pada 12 November 2013.
Guangzhou HC Information Technology. 2011. HC-05 Product Data http://silabs.org.ua/bc4/hc05.pdf. diakses pada 12 November 2013.
Sheet.
Innovative Electronics. 2005. DT-PROTO 40 Pin AVR Analog. http://innovativeelectronics.com/innovative_electronics/download_files/manual/ Manual%20DT-PROTO%2040%20Pin%20AVR%20Analog.pdf. diakses pada 12 November 2013. Istiyanto,
WL
Jazi Eko. 2006. Embedded System: Hardware or Software?. http://jazi.staff.ugm.ac.id/Jazi- Embedded_systems.pdf. diakases pada 14 November 2013.
Electronix. 2013. Bluetooth to Serial Module (HC-05). http://www.wlelectronix.com/p/137/bluetooth-to-serial-module-hc-05.html. diakses pada 12 November 2013
16