KOMUNIKASI BLUETOOTH UNTUK AKUISISI DATA
SENSOR DALAM MENENTUKAN MAPPING LAPANGAN
KRPAI BERKAKI
Felix Alexander Gunawan (1222008)
Program Studi Teknik Elektro, Fakultas Teknik, Universitas Kristen Maranatha,
Jl. Prof.Drg.Suria Sumantri, MPH no. 65, Bandung, Indonesia.
ABSTRAK
Pada tahap awal perlombaan Kontes Robot Pemadam Api Indonesia (KRPAI) kategori berkaki, panitia perlombaan menyediakan waktu selama 3 menit bagi setiap peserta untuk melakukan kalibrasi sensor dan menentukan nilai-nilai sensor yang digunakan sebagai parameter posisi check point. Posisi check point pada perlombaan berfungsi untuk memberikan pengetahuan kepada robot tentang kondisi lingkungannya, sehingga robot mengetahui tindakan yang perlu dilakukan setelah menemukan check point. Masalah kerap kali muncul pada tahap kalibrasi ini, diantaranya, proses kalibrasi yang belum selesai, peserta lupa akan data yang ditulisnya karena menulis secara acak dan tergesa-gesa. Kesalahan pada proses kalibrasi ini mengakibatkan data yang dihasilkan kurang akurat dan tentunya dapat berakibat dengan gagalnya robot dalam menyelesaikan misi. Tugas Akhir ini dibuat dengan tujuan untuk membantu menyelesaikan permasalahan ini, yaitu bagaimana dengan waktu selama 3 menit, peserta dapat mengambil data sensor secara akurat
Komunikasi bluetooth, menjadi solusi yang coba ditawarkan melalui Tugas Akhir ini. Pengendali utama mikrokontroler chipKIT Max 32 pada robot dihubungkan dengan modul bluetooth HC-05, melalui saluran komunikasi UART (Universal Asynchronous Receiver Transmiter). Modul bluetooth HC-05 ini, kemudian terhubung melalui perantara bluetooth dengan perangkat android. Dalam prakteknya, robot akan tetap melakukan manuver secara autonomous, akan tetapi, pengguna tetap memiliki kendali penuh terhadap gerak robot tersebut melalui perangkat android, dan pada posisi tertentu, pengguna dapat mengambil data sensor yang didapat oleh robot, untuk ditampilkan melalui android.
Teknik seperti ini berhasil direalisasikan pada robot KRPAI berkaki. Data yang diambil dari robot dapat ditampilkan dan didokumentasikan pada perangkat android. Akuisisi data pada Tugas Akhir ini meliputi data untuk sensor jarak ultrasonik, sensor warna tcs 230, dan kamera.
BLUETOOTH COMMUNICATION FOR DATA
ACQUISITION SENSOR FOR DETERMINING THE FIELD
MAPPING KRPAI LEGGED
Felix Alexander Gunawan (1222008)
Electrical Engineering Study Program, Faculty of Engineering, Maranatha Christian University
Jl. Prof.Drg.Suria Sumantri, MPH no. 65, Bandung, Indonesia.
ABSTRACT
In the early stages of Indonesia Fire Fighting Robot Contest (KRPAI) in legged category, the organizers of the contest provides 3 minutes for participant to perform a calibration of the sensors and determine the values of the sensors that are used as the parameters of check point position. The check points position provide the robots about the condition of their environment, so the robot knows the actions that need to do after finding the check point. Problems often arise in this calibration process, for example, the calibration process has not been completed, the participants probably forget the data that they wrote because of writing the data randomly and hastily. Errors in this calibration process have resulted in less accurate data generated and certainly could lead to the failure of robots in completing the missions. This final Project was created with the aim to help resolving this problem, that is how the participants can take the sensor data accurately in 3 minutes.
Bluetooth communication is a solution in Final Project tried to offer. The main microcontroller chipKIT Max 32 on the robot is connected to the bluetooth module HC-05, through the serial communication UART (Universal Asynchronous Receiver Transmitter). Bluetooth Module HC-05 then connected via bluetooth intermediary with android devices. In practice, the robot will remain as autonomous maneuver, however, users still have full control over the motion of the robot via android devices, and in a certain position, the user can take sensor data obtained by the robot, to be displayed through the android. This technique is successfully realized in KRPAI legged-robot. Data taken from the robot can be displayed and documented on android devices. Acquisition of the data in this Final Project included data for ultrasonic distance sensors, color sensors TCS 230, and a camera.
DAFTAR ISI
Halaman
LEMBAR PENGESAHAN
PERNYATAAN ORISINALITAS LAPORAN PENELITIAN PERNYATAAN PUBLIKASI LAPORAN TUGAS AKHIR KATA PENGANTAR
1.5 Sistematika Penulisan... 3
BAB II LANDASAN TEORI 2.1 Android ... 4
2.2 Eclipse Untuk Pemrograman Android ... 5
2.3 Konsep Mesin RISC (Reduced Instruction Set Computer) ... 5
2.4 Mikrokontroler ChipKIT Max32 ... 6
2.5 Bluetooth ... 7
2.6 Modul Blueotooh HC-05 ... 10
2.7 Sensor Jarak Ultrasonik Ping Parallax...11
2.8 Sensor Jarak Ultrasonik SRF-05 ... 12
2.9 Sensor Warna TCS 230 ... 13
2.10 Sensor Kamera Pixy CmuCam 5... 16
2.11 Kontes Robot Pemadam Api Indonesia Berkaki ... 17
3.2 Perancangan Sistem Secara Umum ... 20
3.3 Robot KRPAI Berkaki dan Posisi Sensor ... 21
3.4 Koneksi Mikrokontroler Dengan Modul Bluetooth HC-05 ... 23
3.5 Urutan Data dari Mikrokontroler ke Android ... 24
3.6 Program chipKIT Max 32 ... 26
3.7.1 Merancang Antarmuka Android ... 45
3.7.1.1 Komponen Antarmuka Menggunakan Bahasa XML ... 46
3.7.1.2 Komponen Antarmuka Pada Saat Runtime Program ... 46
3.7.2 Membangun dan Mengirim Data Melalui Koneksi Bluetooth ... 47 4.1 Bentuk Lapangan Pengambilan Data KRPAI Berkaki ... 58
4.2 Uji Coba Fungsi Tombol Perintah Pada Android ... 58
4.3 Akurasi Pengukuran Sensor Jarak Ultrasonik ... 59
4.4.1 Posisi Pengambilan Data ... 62
4.4.2 Hasil Pengambilan Data Pertama ... 64
4.4.3 Hasil Pengambilan Data Ke Dua... 66
4.4.4 Hasil Pengambilan Data Ke Tiga ... 67
4.4.5 Hasil Pengambilan Data Ke Empat ... 69
4.4.6 Hasil Pengambilan Data Ke Lima ... 70
4.4.7 Perbandingan Data ... 71
4.5 Perlombaan KRPAI Berkaki 2016 Regional 2 ... 74
BAB V KESIMPULAN DAN SARAN 5.1 Kesimpulan ... 76
5.2 Saran ... 77
DAFTAR PUSTAKA ... 78
Lampiran A – Program ChipKit Max 32 Menggunakan MPIDE
Lampiran B – Program Android Meggunakan Eclipse Galileo
DAFTAR GAMBAR
Halaman
Gambar 2.1 ChipKIT Max 32 ... 7
Gambar 2.2 Koneksi piconet bluetooth ... 8
Gambar 2.3 Frame Data Bluetooth ... 10
Gambar 2.4 Pin Bluetooth HC-05 ... 10
Gambar 2.5 Cara Kerja Sensor Jarak Ultrasonik ... 11
Gambar 2.6 Protokol Komunikasi Sensor Ping Parallax ... 12
Gambar 2.7 Diagram Waktu Sensor SRF-05 Mode 1 ... 12
Gambar 2.8 Diagram Waktu Sensor SRF-05 Mode 2 ... 13
Gambar 2.9 Spektrum Cahaya ... 14
Gambar 2.10 Konfigurasi Pin Sensor TCS 230 ... 14
Gambar 2.11 Diagram Blok Sensor TCS 230 ... 15
Gambar 2.12 Pixy CmuCam 5 ... 16
Gambar 2.13 Arena Pertandingan KRPAI ... 18
Gambar 2.14 Ukuran Arena Pertandingan KRPAI ... 18
Gambar 3.1 Contoh Konfigurasi Lapangan ... 19
Gambar 3.2 Blok Diagram Sistem ... 21
Gambar 3.3 Tampak Atas Robot ... 22
Gambar 3.4 Tampak Samping Robot ... 22
Gambar 3.5 Tampak Bawah Robot ... 22
Gambar 3.6 Koneksi Mikrokontroler ChipKit Max 32 dengan Modul Bluetooth HC-05 ... 24
Gambar 3.7 Urutan Pengiriman Data ... 24
Gambar 3.8 Tampak Atas Sensor Jarak Ultrasonik ... 24
Gambar 3.9 Diagram Alir Program Utama ... 29
Gambar 3.10 Diagram Alir Cek Buffer Serial ... 30
Gambar 3.11 Diagram Alir Telusur Dinding Kiri ... 32
Gambar 3.12 Diagram Alir U-Turn Kiri ... 34
Gambar 3.13 Diagram Alir Telusur Dinding Kanan ... 35
Gambar 3.14 Diagram Alir U-Turn Kanan ... 37
Gambar 3.16 Diagram Alir Gerakan Putar Kiri ... 39
Gambar 3.17 Diagram Alir Gerakan Mundur ... 40
Gambar 3.18 Diagram Alir Sensor_cek1 ... 42
Gambar 3.19 Diagram Alir Sensor_cek2 ... 43
Gambar 3.20 Diagram Alir Get_data ... 44
Gambar 3.21 Diagram Blok Program Android ... 45
Gambar 3.22 Antarmuka Android... 46
Gambar 3.22 Diagram Alir Membangun Koneksi dan Mengirim Data Melalui Bluetooth ... 48
Gambar 3.23 Diagram Alir Mengirim Data ... 49
Gambar 3.24 Diagram Alir Menutup Koneksi Bluetooth ... 50
Gambar 3.25 Diagram Alir Menerima Data ... 52
Gambar 3.26 Perintah yang Dapat Dikirimkan Pengguna Melalui Tombol pada Android ... 53
Gambar 3.27 Diagram Alir Menyimpan Data... 56
Gambar 3.28 Diagram Alir Menyimpan Gambar ... 57
Gambar 4.1 Lapangan Pengambilan Data KRPAI Berkaki ... 58
Gambar 4.2 Posisi Pengambilan Data Sensor Ultrasonik ... 60
Gambar 4.3 Posisi Pengambilan Data ... 63
Gambar 4.4 Gerak Robot ... 64
Gambar 4.5 Konfigurasi Lapangan Perlombaan KRPAI Berkaki ... 74
DAFTAR TABEL
Halaman
Tabel 2.1 Konfigurasi Pin S2 dan S3 ... 15
Tabel 2.2 Pengaturan Frekuensi Output Sinyal Kotak ... 15
Tabel 3.1 Penjelasan Sensor Warna ... 25
Tabel 3.2 Penjelasan Sensor Kamera ... 25
Tabel 3.3 Rangkuman Variabel Program Utama ... 27
Tabel 3.4 Hubungan Antara Tombol dengan Karakter yang Dikirim ... 53
Tabel 4.1 Uji Coba Tombol Pada Android ... 59
Tabel 4.2 Data Sensor Jarak Ultrasonik ... 60
Tabel 4.3 Pengukuran Manual Jarak Muka Sensor Jarak Ultrasonik Dengan Dinding ... 61
Tabel 4.4 Hasil Mean Absolute Percentage Error ... 61
Tabel 4.5 Pengambilan Data Pertama ... 65
Tabel 4.6 Pengambilan Data Ke Dua ... 66
Tabel 4.7 Pengambilan Data Ke Tiga ... 68
Tabel 4.8 Pengambilan Data Ke Empat ... 69
Tabel 4.9 Pengambilan Data Ke Lima ... 71
Tabel 4.10Perbandingan Data ... 73
BAB 1
PENDAHULUAN
Bab ini akan membahas latar belakang dari Tugas Akhir, rumusan
masalah, tujuan, batasan masalah dalam melaksanakan Tugas Akhir, dan
sistematika penulisan Tugas Akhir.
1.1 LATAR BELAKANG
Pada tahap awal perlombaan Kontes Robot Pemadam Api Indronesia
(KRPAI) kategori berkaki, setiap tim peserta lomba diberi kesempatan untuk
melakukan kalibrasi sensor untuk robotnya. Panitia lomba memberikan waktu
selama tiga menit kepada setiap tim untuk melakukan kalibrasi sensor robotnya.
Dengan waktu yang terbilang singkat, setiap tim diharapkan mampu mengambil
data sensornya dengan banyak, lengkap, dan akurat. Data yang diharapkan dapat
bermacam-macam, misalnya untuk jarak pembacaan sensor jarak ultrasonik.
pembacaan untuk sensor suhu, sensor warna, kamera, dan lainnya.
Dengan banyaknya data sensor yang perlu dicermati dan dicatat nilainya
selama kalibrasi, maka waktu selama tiga menit banyak dirasakan peserta cukup
kurang apabila nilai pembacaan sensor dicatat secara manual. Pada banyak kasus,
seringkali setelah melakukan kalibrasi, peserta lupa akan data kalibrasi yang telah
dicatat karena pencatatan kalibrasi dilakukan secara tergesa-gesa sehingga
pencatatannya menjadi kurang teratur. Selain itu, data yang didapatkan juga
cenderung menjadi kurang akurat karena robot diletakkan secara manual, bukan
dalam keadaan nyata bergerak.
Dari permasalahan waktu pada saat kalibrasi, timbul pertanyaan bagaimana
membuat kalibrasi menjadi lebih efisien terhadap waktu dan nilai yang didapat
tetap akurat. Tugas Akhir ini berusaha menjawab kebutuhan tersebut. Pada
prakteknya, selama proses kalibrasi, robot akan bergerak mengelilingi arena
pertandingan. Robot akan bergerak dalam mode manuver autonomous, dengan
catatan, peserta tetap dapat tetap memegang kendali terhadap robot tersebut
melalui perangkat android. Kendali meliputi perintah untuk bergerak maju,
sistem bergerak robot. Pada tempat-tempat tertentu yang di kehendaki, baik itu
posisi check point ataupun posisi yang dianggap penting oleh peserta (misalnya
daerah sekitar keberadaan api), robot dapat diperintahkan untuk berhenti dan
mengirimkan data sensornya sebanyak lima kali pada tempat yang sama. Lima
data yang didapat ini, kemudian akan dibuat rentangnya untuk menentukan data
sensor yang akan disimpan di database dan digunakan sebagai parameter posisi
check point. Data yang dikirimkan ini akan ditampilkan melalui antarmuka
perangkat android, dalam bentuk teks. Selain ditampilkan, data yang telah diambil
dapat disimpan ke internal memori dari android. Dengan teknik ini, diharapkan
pembacaan nilai-nilai untuk posisi check point akan menjadi efisien sehingga
dapat memperbaiki performa robot dalam melakukan navigasi.
1.2 RUMUSAN MASALAH
Rumusan masalah selama melaksanakan Tugas Akhir ini adalah:
1. Bagaimana cara membangun komunikasi antara mikrokontroler
dengan modul bluetooth, dan modul bluetooth dengan perangkat
android?
2. Bagaimana cara melakukan visualisasi data yang dikirim dari
mikrokontroler pada perangkat android?
1.3 TUJUAN
Tujuan melaksanakan Tugas Akhir adalah untuk melakukan akuisisi data
sensor robot KRPAI Berkaki melalui komunikasi bluetooth untuk menentukan
mapping lapangan KRPAI Berkaki
1.4 BATASAN MASALAH
Batasan masalah yang diterapkan pada Tugas Akhir ini adalah:
1. Pembahasan tidak mencakup algoritma strategi navigasi robot dan
mekanika robot.
2. Perangkat android hanya sebatas menampilkan dan menyimpan
pembacaan dari sensor dan tidak dapat mengubah parameter apapun
3. Arena pertandingan yang digunakan mengacu pada arena KRPAI
2016.
4. Data sensor yang diakuisisi adalah sensor jarak ultrasonik, sensor
warna tcs 230, dan kamera pixy CmuCam5.
1.5 SISTEMATIKA PENULISAN
BAB 1 PENDAHULUAN
Bab ini berisi latar belakang masalah, rumusan masalah, tujuan penulisan,
batasan masalah, serta sistematika penulisan.
BAB 2 LANDASAN TEORI
Bab ini membahas mengenai perangkat android, eclipse sebagai perangkat
lunak untuk pemrograman android. Kemudian membahas mengenai konsep
mesin RISC (Reduced Instruction Set Computer) dan mikrokontroler chipKIT
Max 32 sebagai bagian dan mesin RISC. Selain itu, pembahasan juga
mencakup dasar teori mengenai bluetooth, modul bluetooth HC-05, sensor
jarak ultrasonik ping parallax dan SRF-05, sensor warna tcs 230, kamera pixy
CmuCam5, dan sekilas mengenai KRPAI Berkaki.
BAB 3 PERANCANGAN DAN REALISASI
Bab ini membahas mengenai apa yang dimaksud dengan mapping lapangan
KRPAI, koneksi antara modul Bluetooth HC-05 dan mikrokontroler ChipKit
Max32, serta teknik perancangan untuk program yang dibuat baik untuk
mikrokontroler ChipKit Max32 maupun android.
BAB 4 UJI COBA
Bab ini berisi data hasil uji coba untuk mengetahui kinerja sistem yang
dibuat.
BAB 5 SIMPULAN DAN SARAN
Bab ini berisi simpulan dan saran agar studi kasus berikutnya dapat
BAB 5
SIMPULAN DAN SARAN
Pada bab ini akan berisi kesimpulan dan saran agar studi kasus berikutnya
dapat berjalan lebih baik.
5.1 Simpulan
Berdasarkan pelaksanaan dan pengamatan selama proses Tugas Akhir,
maka dapat disimpulkan bahwa:
1. Akuisisi data robot KRPAI berkaki berhasil direalisasikan.
2. Robot KRPAI berkaki berhasil mengenali dan menjalankan seluruh
perintah dari android
3. Sensor kamera selalu berhasil mendeteksi keberadaan objek boneka
4. Nilai sensor jarak ultrasonik S0, S2, S4, S5 dan nilai dari komponen
warna merah, biru, dan hijau dari sensor warna, dapat dijadikan sebagai
parameter check point. Error pembacaan untuk sensor S0, S2, S4, dan
S5 cukup kecil yaitu dibawah 5%. Nilai pembacaan sensor warna untuk
komponen merah, hijau, dan biru pada lantai berwarna hitam konsisten
lebih besar dari 10 dan lebih kecil sama dengan 30 dan pada lantai
berwarna abu-abu konsisten lebih besar dari 50 dan lebih kecil sama
dengan 110.
5. Sensor ultrasonik S1 dan S3 kurang baik bila dijadikan data check point,
terlihat dari nilai rentang di atas 50 cm dari lima kali pengulangan
mengambil data pada posisi yang relatif sama. Hal ini berkolerasi
dengan error pengukuran sensor S1 yang selalu diatas 5% dan sensor
5.2 Saran
Saran-saran yang dapat diberikan untuk mengembangkan dan
memperbaiki tugas akhir ini adalah sebagai berikut :
1. Untuk menutup koneksi bluetooth, pada Tugas Akhir ini harus dimulai
dari android. Jika mematikan robot sebelum mematikan program
android, maka kadangkala perangkat bluetooth tidak dapat saling
terhubung kembali karena koneksi sebelumnya pada android belum
dikosongkan. Diperlukan algoritma tambahan agar koneksi bluetooth
dapat diputus baik dari android, maupun dari robot
2. Untuk penempatan sensor ultrasonik, ada baiknya posisi sensor tidak
serong terhadap tembok.
3. Perlu ditambahkan algoritma tambahan untuk menentukan posisi
boneka yang terdeteksi kamera walaupun boneka berada di samping
DAFTAR PUSTAKA
1. Meier, Reto. 2009. Professional Android Application Development.
Indianapolis:Wiley
2. Mednieks, Zigurd., et al. 2011. Programming Android. Sebastopol :
O’Reilly Media
3. Oklobdzija, Vojin G. 1999. Reduced Instruction Set Computers. California
: Berkeley.
4. Krishna, B.Murali., et al. 31 July 2015. “Bluetooth Based Wireless Home
Automation System Using FPGA”. Volume 77,No 3.
5. Sen, Sonali., et al. July 2015. “Design of an Intelligent Voice Controlled
Home Automation System”. Volume 121, No 15.
http://research.ijcaonline.org/volume121/number15/pxc3904904.pdf
6. Android Developers.
Guide.Bluetooth.http://developer.android.com/guide/topics/connectivity/bl
uetooth.html. Diakses 3 November 2015
7. Android Developers.
Guide.Layouts.http://developer.android.com/guide/topics/ui/declaring-layout.html. Diakses 20 Oktober 2015
8. Data sheet Arduino TCS230 Color Recognition Sensor module.
http://www.geeetech.com/wiki/index.php/Arduino_TCS230_Color_Recog
nition_Sensor_module. Diakses 12 Februari 2016
9. Data sheet ChipKit Max32 Microcontroller.
http://ww1.microchip.com/downloads/en/DeviceDoc/chipKIT%20Max32_
rm.pdf. Diakses 8 Januari 2016
10.Data sheet CMUcam5 Pixy.
http://cmucam.org/projects/cmucam5/wiki/Hooking_up_Pixy_to_a_Micro
controller_like_an_Arduino. Diakses 27 Februari 2016
11.Data Sheet Ping Parallax.
12.Data Sheet Srf 05 data sheet.
http://www.picaxe.com/docs/srf005.pdf.Diakses 11 Januari 2016
13.Frangklin, Curt & Julia Layton. 2005. How Bluetooth Works.
www.howstuffworks.com/bluetooth.htm. Diakses 13 Januari 2016
14.De Marchi, Eduardo. 2015. HC-05 Bluetooth.
https://developer.mbed.org/users/edodm85/notebook/HC-05-bluetooth/.
Diakses 15 Januari 2016.
15.HC Serial Bluetooth Products User Instructional Manual.
http://www.tec.reutlingen-university.de/uploads/media/DatenblattHC-05_BT-Modul.pdf. Diakses 15 Januari 2016
16.Manjoo, Farhad. 2015. A Murky Road Ahead for Android, Despite Market
Dominance. The New York Times.
http://www.nytimes.com/2015/05/28/technology/personaltech/a-murky-road-ahead-for-android-despite-market-dominance.html?_r=0. Diakses 1
Desember 2015
17.Markoff, John. 2007. I, Robot: The Man Behind the Google Phone. The
New York Times.
http://www.nytimes.com/2007/11/04/technology/04google.html. Diakses
1 Desember 2015
18.Mohamed, M.A.M. 2008. Optimization Of Bluetooth Frame Format For
Efficient Performance. Progress In Electromagnetics Research M, Vol. 1,
101–110
19.Sejarah Singkat Kontes Robot Indonesia.