INTISARI
Dalam perkembangan zaman yang cepat ini perkembangan teknologi pun juga berkembang dengan cepat pula. Hal ini dimanfaatkan oleh beberapa orang untuk mengembangkan teknologi yang sudah ada khususnya bluetooth dan remote control. Teknologi Bluetooth ini dapat digunakan untuk pengiriman dan penerima data. Sebagai mahasiswa teknik elektro yang berkembang pada bidang kendali, maka sudah seharusnya mengembangkan teknologi yang berkaitan dengan system kendali tersebut. Berfikir untuk mengembangkan teknologi dari bluetooth untuk mengendalikan mobil remote control, maka dibentuklah system pengendalian menggunakan bluetooth untuk mengendalikan “Roll Bot” yang merupakan mobil remote control dengan dua roda.
Prinsip kerja dari system tersebut adalah dengan menggunakan handphone dengan system operasi android yang nantinya akan mengirimkan perintah yang berupa perintah maju, mundur, belok kanan, belok kiri, berhenti, demo, menambah kecepatan dan mengurangi kecepatan dan akan menerima data yang berupa jarak “Roll Bot” terhadap halangan. Data yang dikirim berupa jarak antara “Roll Bot” dengan halangan dalam centimeter. Data yang diterima oleh mikrokontroler akan menimbulkan gerakan yang sesuai dengan perintah yang dikirimkan oleh android.
Hasil akhir dari penelitian ini adalah dapat dihasilkannya system pengontrolan mobil remote control menggunakan android yang melalui bluetooth dan menghasilkan system untuk mengirimkan data dari mikrokontroler ke android.
ABSTRACT
In this rapid development period technological developments was also growing quickly as well. This is use by the several people to develop existing technologies particulary bluetooth and remote control. Bluetooth technology can be used for sending and receiving data. As a student of electrical engineering that developed in the field of control, then it should be to develop technologies relating to the control system. Thinking to develop the technology of bluetooth to control a remote control car, then formed using bluetooth control system to control the "Roll Bot" which is a remote control car with two wheels.
The working principle of the system is to use a mobile phone with the operating system android that will send commands a command forward, backward, turn right, turn left, stop, demos, increase the speed and reduce the speed and will receive the data form of distance "Roll Bot "against the obstruction. The data is sent form of distance between "Robot" with obstruction in centimeters. Data received by the microcontroller will cause movement in accordance with commands sent by the android.
The end result of this research is can control system generates a remote control car that using android system through bluetooth and generating system to send data from the microcontroller to android.
i
TUGAS AKHIR
PENGENDALIAN “ROLLBOT” MENGGUNAKAN ANDROID
MELALUI BLUETOOTH DAN ARDUINO
Diajukan Untuk Memenuhi Syarat
Memperoleh Gelar Sarjana Teknik
Program Studi Teknik Elektro
disusun Oleh:
Leonardus Antony Wibisono
NIM : 12514017
PROGRAM STUDI TEKNIK ELEKTRO
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
ii
FINAL PROJECT
CONTROLLING “ROLLBOT” USING
ANDROID TROUGH
BY BLUETOOTH AND ARDUINO
Presented as Partial Fulfillment of The Requirements
To Obtain The Sarjana Teknik Degree
In Electrical Engineering Study Program
Leonardus Antony Wibisono
NIM : 12514017
ELECTRICAL ENGINEERING STUDY PROGRAM
SCIENCE AND TECHNOLOGY FACULTY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
LEMBAR
PERSETUJUANTUGAS
AKHIR
PENGENDALTAN
"ROLL
BOT" MENGGUNAKAN ANDROID
MELALUI
BLUETOOTH DAN ARDUINO
,'q
uf
il-i4
lrt ., tLEMBAR
PENGESAHANTUGAS
AKHIR
PENGENDALIAN
"ROLL
BOT'
MENGGUNAKAN ANDROID
MELALUI
BLUETOOTH DAN ARDUINO
Disusun oleh:
LEONARDUS ANTONY WIBISONO
Ketua: Sekretaris: Anggota:
Djoko
k. Ti
t
fW|-b*s..zoro
Fakultas Sains dan Teknologi
Universitas Sanata Dharma
tv
ffi-f
boyoKotrSe
I
LEMBAR PERNYATAAN KEASLIAN
KARYA
Saya menyatakan dengan sesungguhnya bahwa tugas akhir ini tidak memuat karya
atau bagian karya orang lain, kecuali yang telah disebutkan dalam kutipan dan daftar pustaka sebagaimana layaknya karya ilmiah.
MOTTO:
TIDAK
ADA
HAL
YAN6
TTDAK
MUNGKIN
JIKA
KITA
MELAKUKANNYA BER5AMA DENoAN TUHAN
Skripsi ini kupersembahkan untuk...
Yesus Kristus pembimbing dan Iuhanku yang haik
Papa dan Mama tercinta
LEMBAR PERNYATAAN
PERSETUJUANPUBLIKASI KARYA
ILMIAH
IINTUK
KEPENTINGANAKADEMIS
Yang bertanda tangan dibawah ini, saya mahasiswa Universitas Sanata Dharma: Nama : LEONARDUS ANTONY WIBISONO
Nomor Mahasiswa : l25ll40l7
Demi pengembangan ilmu pengetahuan, saya memberikan kepada perpustakaan Universitas Sanata Dharma karya ilmiah saya yang berjudul:
PENGENDALIAN
*ROLI.
BOT'' MENGGUNAKAN ANDROID
MELALUI
BLUETOOTH DAN
ARDUII\O
Beserta perangkat yang diperiukan (biia a<ia). Dengan <iemii<ian saya memberikan kepacia Perpustakaan Universitas Sanata Dharma hak untuk menyimpan, mengalihkan dalam bentuk media lain, mengelolanya dalam bentuk pangkalan data, mendistribusikan seara terbatas, dan mempublikasikannya dilntemet atau media lain untuk kepentingan akademis tanpa perlu
meminta ijin dari saya maupun memberikan royaliti kepada saya sekana tetap mencantumkan nama saya sebagai penulis.
Demikian pernyataan ini yang saya buat dengan sebenarnya.
Yogyakarla,
1l
Juli 2016(LEONA us ANTONY WIBISONO)
INTISARI
Dalam perkembangan zaman yang cepat
ini
perkembangan teknologi pun jugaberkembang dengan cepat pula.
Hal
ini
dimanfaatkan oleh beberapa orang untuk mengembangkan teknologi yang sudah ada khususnya bluetooth dan remote control. Teknologi Bluetooth ini dapat digunakan untuk pengiriman dan penerima data. Sebagai mahasiswa teknik elektro yang berkembang pada bidang kendali, maka sudah seharusnya mengembangkan teknologi yang berkaitan dengan system kendali tersebut. Berfikir untuk mengembangkan teknologi dari bluetooth untuk mengendalikan mobil remote control, makadibentuklah system pengendalian menggunakan bluetooth untuk mengendalikan "Roll Bot" yang merupakan mobil remote control dengan dua roda.
Prinsip kerja dari system tersebut adalah dengan menggunakan handphone dengan system operasi android yang nantinya akan mengirimkan perintah yang berupa perintah maju,
mundur, belok kanan, belok kiri, berhenti, demo, menambah kecepatan dan mengurangi kecepatan dan akan menerima data yang berupa jarak "Roll Bot" terhadap halangan. Data
yang dikirim berupa jarak antara "Roll Bot" dengan halangan dalam centimeter. Data yang
diterima oleh mikrokontroler akan menimbulkan gerakan yang sesuai dengan perintah yang
dikirimkan oleh android.
Hasil aklir dari penelitian
ini
adalah dapat- dihasilkannya system pengontrolan mobilremote control menggunakan android yang melalui bluetooth dan menghasilkan system untuk mengirimkan data dari mikrokontroler ke android.
Kata kunci: Bluetooth, mikrokontroler arduinorooRoll Bot", android.
ABSTRACT
In this rapid development period technological developments was also growing quickly
as well. This
is use
by the several peopleto
develop existing technologies particulary bluetooth and remote control. Bluetooth technology can be used for sending and receiving data. As a student of electrical engineering that developed in the field of control, then it should be to develop technologies relating to the control system. Thinking to develop the technology of bluetooth to control a remote control car, then formed using bluetooth control system to control the "Roll Bot" which is a remote control car with two wheels.The working principle of the system is to use a mobile phone with the operating system android that will send commands a command forward, backward, turn right, turn left,
stop, demos, increase the speed and reduce the speed and will receive the data form of distance "Roll Bot "against the obstruction. The data is sent form of distance between "Robot" with
obstruction
in
centimeters. Data received by the microcontrollerwill
cause movement in accordance with commands sent by the android.The end result of this research is can control system generates a remote control car that using android system through bluetooth and generating system
to
send data from themicrocontroller to android.
KATA
PEI{GANTAR
Puji syukur dan terima kasih kepada Tuhan Yesus Kristus atas segala karuniaNya sehingga
tugas
akhir ini
yang
berjudul
"PENGENDALIAN"ROLL
BOT" MENGGTINAKAN ANDROIDMELALUI
BLUETOOTHDAN
ARDUINO" dapat diselesaikan dengan baik. Laporan tugas akhir ini disusun sebagai persyaratan mahasiswa untuk memperoleh gelar Sarjana Teknik di Universitas Sanata Dharma Yogyakarta.Penelitian
ini
dapat diselesaikan dengan baik atas bantuan, gagasan, dukungan baik moral maupun material dari berbagai pihak. Pada kesempatan ini peneliti ingin mengucapkan terima kasih kepada:1.
Selaku Dekan Fakultas Sains dan Teknologi Universitas Sanata Dharma Yogyakarta.2.
Bapak Petrus Setyo Prabowo, S.T., M.T. selaku Ketua Program Studi Teknik ElektroUniversitas Sanala Dharma Ycgyakarta.
3.
Bapak Djoko Untoro Suwarno, S.Si., M.T. selaku dosen pembimbing yang dengan kesabaran hati telah memberikan pengarahan serta membimbing penulis dalam penyelesaian tugas akhir ini.4.
Kepada seluruh dosen, laboran dan staff Teknik Elektro yang sudah memberikan ilmu ,pengarahan dan masukan selama perkuliahan berlangsung.
5.
Seluruh teman-teman seperjuangan Teknik Elektro angkatan 2012 yang telah membantu mengingatkan, membantu, memberi arahan dan menghibur penulis dalam penulisa tugas akhir ini.6.
Kedua orang tuaku tersayang yang telah membantu penulis dalam hal moral dan material dan yang telah mengingatkan serta mendoakan penulis dalam menyelesaikan tugas akhir ini.7.
Maria Angelika Suhadi sebagai kekasih yang telah selalu mengingatkan dan memberi semangat kepada penulis dalam pengerjaan tugas akhir ini.Penulis menyadari pasti ada kekurangan dalam penulisan tugas akhir ini maka, penulis sangat mengharapkan kritik dan saran yang dapat membangun serta menyempurnakan tulisan tugas akhir ini. Semoga tugas akhir ini dapat dimanfaatkan dan dikembangkan lebih lanjut oleh peneliti lain sehingga tulisa ini dapat lebih bermanfaat.
Juli 2016
i
DAFTAR ISI
Halaman Sampul (Bahasa Indonesia) ... i
Halaman Sampul (Bahasa Inggris) ... ii
Lembar Persetujuan ... iii
Lembar Pengesahan ... iv
Lembar Pernyataan Keaslian Karya ... v
Halaman Motto ... vi
Lembar Pernyataan Persetujuan Publikasi Karya Ilmiah ... vii
Intisari ... viii
Abstract ... ix
Kata Pengantar ... x
Daftar isi ... xii
Daftar Gambar ... xvii
Daftar Tabel ... xx
BAB I: PENDAHULUAN ... 1
1.1 Latar Belakang ... 1
1.2 Tujuan ... 2
1.3 Batasan Masalah ... 2
1.4 Metodologi Penelitian ... 3
BAB II: DASAR TEORI ... 4
2.1 Android ... 4
2.1.1. Pengertian Handphone Android ... 4
ii
2.2 Arduino Nano Menggunakan ATMEGA 328 ... 5
2.2.1. Pengertian ... 5
2.2.2. Spesifikasi ... 5
2.2.3. Sumber Tegangan ... 6
2.2.4. PIN ... 6
2.2.5. Memori ... 8
2.2.6. Konfigurasi Arduino Nano Menggunakan ATMEGA 328 .. 8
2.2.7. Komunikasi ... 9
2.3 Bluetooth HC-05 ... 10
2.3.1. Deskripsi ... 10
2.3.2. Spesifikasi ... 10
2.4 Komunikasi ... 12
2.4.1. Protokol Komunikasi Serial ... 12
2.4.2. Protokol Komunikasi Bluetooth HC-05 ... 13
2.5 Motor DC ... 15
2.5.1. Pengertian ... 15
2.5.2. Cara Kerja ... 16
2.6 Driver Motor DC Menggunakan ICL298 ... 17
2.5.1. Pengertian ... 17
2.5.2. Spesifikasi ... 17
2.7 Sensor Jarak Ultrasonik PING ... 18
2.5.1. Pengertian ... 18
2.5.2. Spesifikasi ... 18
2.5.1. Cara Kerja Sensor ... 19
iii
BAB III: PERANCANGAN ... 23
3.1 Proses Kerja Sistem Pengendalian “Roll Bot” ... 23
3.2 Kebutuhan Perangkat Keras ... 24
3.3 Kebutuhan Perangkat Lunak ... 25
3.4 Perancangan Alat ... 26
3.4.1. Perancangan Konstruksi “Roll Bot” ... 26
3.4.2. Perancangan Rangkaian Penggerak Motor ... 26
3.4.3. Perancangan Sensor PING ... 29
3.5 Perancangan Program ... 30
3.5.1. Diagram Alir Pergerakan “Roll Bot” Pada Arduino ... 30
3.5.2. Diagram Alir Pergerakan “Roll Bot” Pada Android ... 32
3.5.3. Tampilan Interface Pada Hand Phone Android ... 34
BAB IV: HASIL DAN PEMBAHASAN ... 37
4.1 Hasil Implementasi Alat ... 37
4.2 Hasil Perancangan Perangkat Keras ... 38
4.3 Penggunaan Modul Bluetooth HC-05 ... 39
4.4 Hasil Perancangan Menggunakan Arduino ... 39
4.4.1. Perintah Maju ... 40
4.4.2. Perintah Mundur ... 40
4.4.3. Perintah Kanan ... 41
4.4.4. Perintah Kiri ... 41
4.4.5. Perintah Demo ... 42
4.4.6. Perintah Berhenti ... 43
4.4.7. Perintah Tambah ... 44
iv
4.4.9. Mengirim Data Sensor PING ... 45
4.5. Hasil Perancangan Menggunakan Android ... 46
4.4.1. Connect ... 46
4.4.2. Tombol Atas ... 47
4.4.3. Tombol Bawah ... 48
4.4.4. Tombol Kanan ... 48
4.4.5. Tombol Kiri ... 49
4.4.6. Tombol Demo ... 49
4.4.7. Tombol Stop ... 50
4.4.8. Tombol Tambah ... 50
4.4.9. Tombol Kurang ... 51
4.4.10. Menerima Data Dari Arduino ... 51
4.6 Analisis Percobaan ... 52
4.6.1. Analisis data sensor PING ... 52
4.6.2. Hasil data pengamatan pergerakan dan kinerja “Roll Bot” .. 56
4.6.1. Tombol Maju ... 56
4.6.2. Tombol Mundur ... 57
4.6.3. Tombol Belok Kanan ... 58
4.6.4. Tombol Belok Kiri ... 58
4.6.5. Tombol Stop ... 59
4.6.6. Tombol Menambah Kecepatan ... 59
4.6.7. Tombol Menurangi Kecepatan ... 60
4.6.8. Tombol Demo ... 61
4.6.9. Mengirim Data PING dari Arduino ke Android ... 62
v
BAB V: KESIMPULAN DAN SARAN ... 64
5.1 Kesimpulan ... 64
5.2 Saran ... 64
DAFTAR PUSTAKA ... 65
vi
DAFTAR GAMBAR
Gambar 2.1. Tampilan Awal Android Studio ... 5
Gambar 2.2. Board Arduino Nano Beserta PIN ... 7
Gambar 2.3. Tampilan Awal Program Arduino ... 10
Gambar 2.4. Konfigurasi PIN Bluetooth HC-05 ... 11
Gambar 2.5. Bluetooth HC-05 ... 12
Gambar 2.6. Detail Mekanik Motor DC ... 16
Gambar 2.7. Konfigurasi IC L298 ... 17
Gambar 2.8. Sensor Jarak Ultrasonik PING ... 18
Gambar 2.9. Diagram Waktu Sensor PING ... 19
Gambar 2.10. Jarak Ukur Sensor PING ... 20
Gambar 2.11. Instalasi Sensor PING ... 20
Gambar 2.12. Ilustrasi Titik Berat “Roll Bot” (Tampak Samping) ... 17
Gambar 3.1. Proses Kerja “Roll Bot” ... 23
Gambar 3.2. Konstruksi Roll Bot Tampak Depan dan Tampak Atas ... 26
Gambar 3.3. Driver Motor DC Dengan IC L298 ... 27
Gambar 3.4. Grafik Jarak Terhadap Waktu ... 30
Gambar 3.5. Flowchart Sistem Pada Arduino ... 32
Gambar 3.6. Arah Putar “Roll Bot” Pada Perintah Demo ... 32
Gambar 3.7. Flowchart Sistem Pada Android ... 34
Gambar 3.8. Interface Pada Handphone Android ... 35
vii
Gambar 4.2. Driver Motor DC L298 ... 38
Gambar 4.3. Modul Bluetooth HC-05 ... 38
Gambar 4.4. Modul Sensor PING ... 39
Gambar 4.5. Program Maju Pada Arduino ... 40
Gambar 4.6. Program Mundur Pada Arduino... 41
Gambar 4.7. Program Belok KananPada Arduino ... 41
Gambar 4.8. Program Belok Kiri Pada Arduino ... 42
Gambar 4.9. Program Demo Pada Arduino ... 43
Gambar 4.10. Program Berhenti Pada Arduino ... 44
Gambar 4.11. Program Tambah Pada Arduino ... 44
Gambar 4.12. Program Kurang Pada Arduino ... 45
Gambar 4.13. Program Mengirim Data Sensor PING Pada Arduino ... 46
Gambar 4.14. Program Connect Pada Android ... 47
Gambar 4.15. Program Send Data Pada Android ... 47
Gambar 4.16. Program Atas (Maju) Pada Android ... 48
Gambar 4.17. Program Bawah (Mundur) Pada Android ... 48
Gambar 4.18. Program Kanan (Belok Kanan) Pada Android ... 49
Gambar 4.19. Program Kiri (Belok Kiri) Pada Android ... 49
Gambar 4.20. Program Demo Pada Android ... 50
Gambar 4.21. Program Stop Pada Android ... 50
Gambar 4.22. Program Tambah (Menambah Kecepatan) Pada Android ... 51
Gambar 4.23. Program Kurang (Mengurangi Kecepatan) Pada Android ... 51
Gambar 4.24. Program Menerima data Dari Arduino Pada Android ... 52
viii
Gambar 4.26. Pergerakan “Roll Bot” pada perintah maju ... 56
Gambar 4.27. Pergerakan “Roll Bot” pada perintah mundur ... 57
Gambar 4.28. Pergerakan “Roll Bot” belok kanan ... 58
Gambar 4.29. Pergerakan “Roll Bot” belok kiri ... 58
Gambar 4.30. Pemberhentian putaran motor ... 59
Gambar 4.31. Penambahan kecepatan “Roll Bot” ... 60
Gambar 4.32. Pengurangan kecepatan “Roll Bot” ... 60
Gambar 4.33. Pergerakan demo “Roll Bot” ... 61
Gambar 4.34. Grafik pergerakan demo “Roll Bot” ... 61
ix
DAFTAR TABEL
Tabel 2.1. Spesifikasi Arduino Nano... 5
Tabel 2.2. Konfigurasi PIN Pada Arduino nano ... 6
Tabel 2.3. Tabel Konfigurasi PIN Bluetooth HC-05 ... 11
Tabel 2.4. Tabel Logika kontrol driver Motor DC dengan IC L298 kanan ... 17
Tabel 2.5. Tabel Logika kontrol driver Motor DC dengan IC L298 kiri ... 18
Tabel 3.1. Kondisi Putaran Motor DC terhadap arah pergerakan “Roll Bot” .. 28
Tabel 3.2. Tabel Perhitungan Menggunakan Rumus 2.2 Pada Dasar Teori ... 29
Tabel 4.1. Data Percobaan ... 53
Tabel 4.2. Error Pada Masing – Masing Jarak ... 55
1
BAB I
PENDAHULUAN
1.1. Latar Belakang
Seiring dengan berkembangnya jaman modern ini, perkembangan teknologi pun
semakin cepat dan semakin canggih dalam perkembangannya. Ada pun sekarang permainan
anak – anak menjadi sorotan untuk dikembangkan menjadi lebih modern lagi. Pada Tahun
1966 dunia dikenalkan sebuah teknologi mainan untuk anak – anak yang terbaru yaitu mobil
remote control, yang diproduksi oleh EL-Gi (Elettronica Giocattoli), sebuah perusahan asal
Eggio Emilia, Italia[1]. Kemudian ditahun 1970 dunia dikenalkan mobil remote control yang
bertenaga nitro, yang diproduksi oleh mardave, perusahaan asal Inggris[1]. Kemudian pada
tahun 1976 perusahaan Jepang Tamiya mengeluarkan produk RC pertamanya dengan
menggunakan sistem radio atau krontrol jarak jauh menggunakan remote yang memancarkan
gelombang radio[1].
Bukan hanya permainan anak – anak yang berkembang namun, teknologi telepon
genggam pun menunjukan perkembangan yang sangat signifikan dari tahun ke tahun. Pada
Tahun 1990-an kita memandang hand phone yang berwarna kemudian touch screen sudah
sangat canggih, namun pada zaman sekarang ini hampir seluruh hand phone yang diproduksi
oleh beberapa pabrik menggunakan teknologi tersebut, untuk performa kecepatan , sistem
operasi dan tampilan pada layar pun menjadi bervariasi. Kemudian pada Tahun 2005
Android.inc dengan dukungan dari google mulai mengembangkan teknologi android untuk
sistem operasi dihand phone, yang kemudian dirilis pada tahun 2007[2]. Ponsel pertama yang
dirilis menggunakan sistem operasi android adalah ponsel HTC Dream pada Oktober 2008
dengan nama sistem operasi android 1.0 Astro[2]. Kemudian teknologi ini pun berkembang
hingga sekarang, versi android terbaru untuk saat ini adalah android 6.0 Marshmallow, yang
tentunya tampilannya lebih menarik dibandingkan sistem operasi android sebelumnya.
Peneliti mendapatkan suatu ide untuk perkembangan mainan anak – anak yang
khususnya mobil remote control ini, yang kemudian peneliti menamai maninan mobil remote
control menggunakan julukan “Roll Bot”. Peneliti akan mengembangkan teknologi ini dengan
bluetooth yang ada dihand phone , modul bluetooth yang ada pada “Roll Bot” dan arduino
yang terpasang pada “Roll Bot”. Alasan peneliti melakukan penelitian ini adalah untuk
mengikuti perkembangan zaman pada khususnya permainan untuk anak – anak yaitu mobil
remote control.
1.2. Tujuan dan Manfaat Penelitian
Tujuan dari penelitian ini adalah untuk membuat “Roll Bot” yang dikontrol
menggunakan handphone dengan sistem operasi android melalui Bluetooth dan arduino.
Manfaat penelitian ini bagi perkembangan teknologi saat ini adalah anak – anak dan
orang dewasa pencinta Mobil remote control akan menjadi lebih tertarik untuk memainkan
permainan ini karena dapat dikendalikan menggunakan hand phone mereka dan dapat
mengetahui apakah didepan mobil – mobilan mereka ada penghalangnya atau tidak.
1.3. Batasan Masalah
Agar tugas akhir ini dapat mengarah pada tujuan dan untuk menghindari terlalu
kompleksnya permasalahan yang akan muncul, maka perlu adanya batasan – batasan masalah
yang sesuai dengan judul tugas akhir ini. Adapun batasan masalahnya adalah:
1. Menggunakan mikrokontroler Arduino nano sebagai pengolah data dari android ,
data dari sensor ping dan menampilkan jarak menuju ke penghalang pada ponsel
android.
2. Sensor jarak yang digunakan adalah sensor Ping.
3. Modul Bluetooth yang digunakan adalah HC – 05.
4. Sistem operasi android yang digunakan adalah android 4.4 kitkat.
5. Hand Phone yang digunakan adalah Hand Phone dengan sistem operasi android.
6. “Roll Bot” akan bergerak maju jika ditekan tombol maju pada Hand Phone, “Roll
Bot” akan bergerak mundur jika ditekan tombol mundur pada Hand Phone, “Roll
Bot” akan berbelok ke kanan jika ditekan tombol kanan pada Hand Phone, “Roll
Bot” akan berbelok ke kiri jika ditekan tombol kiri pada Hand Phone, “Roll Bot” akan berhenti jika ditekan tombol berhenti pada Hand Phone , dan “Roll Bot” akan
1.4. Metodologi Penelitian
Berdasarkan pada tujuan yang ingin dicapai metode – metode yang digunakan dalam
penyusunan tugas akhir ini adalah:
1. Studi Literatur, yaitu dengan cara mendapatkan reverensi sebagai bagian dari data
dengan membaca buku – buku dan jurnal – jurnal yang berkaitan dengan
permasalahan yang dibahas dalam tugas akhir ini.
2. Perancangan hardware, tahap ini bertujuan untuk mencari bentuk model yang
optimal dari sistem yang akan dibuat dengan mempertimbangkan dari berbagai
faktor – faktor permasalahan dan kebutuhan yang telah ditentukan.
3. Pembuatan hardware, pada tahap ini peneliti akan membuat hardware untuk tugas
akhir ini.
4. Eksperimen, yaitu dengan cara langsung melakukan praktek dan pengujian pada
alat yang akan dibuat dalam tugas akhir ini.
5. Pengambilan data percobaan, pada tahap ini peneliti akan menguji alat agar sesuai
dengan apa yang diinginkan dengan cara melihat respon dari alat dan data yang
dikirimkan oleh sensor dari alat yang dibuat, data yang dilihat berupa perbandingan
jarak dengan waktu pada sensor PING.
6. Analisis dan penyimpulan hasil percobaan, Pada tahap ini peneliti akan
menganalisis hasil dari pengujian hardware dengan membandingkan data yang
kemudian nantinya peneliti akan menghitung error dari alat yang dibuat, kemudian
4
BAB II
DASAR TEORI
2.1. Android
2.1.1. Pengertian Handphone Android
Handphone android merupakan perangkat seluler yang menggunakan sistem operasi android yang dikembangkan oleh android, Inc yang didukung oleh Google.
2.1.2. Android Studio
Android Studio adalah sebuah IDE yang bisa digunakan untuk pengembangan aplikasi Android, dan dikembangkan oleh Google. Android Studio merupakan pengembangkan dari Eclipse IDE, dan dibuat berdasarkan IDE Java populer, yaitu IntelliJ IDEA. Android Studio direncanakan untuk menggantikan Eclipse ke depannya sebagai IDE resmi untuk pengembangan aplikasi Android, bentuk tampilan dari android studio dapat di lihat pada gambar 2.1.
Sebagai pengembangan dari Eclipse, Android Studio mempunyai banyak fitur-fitur baru dibandingkan dengan Eclipse IDE. Berbeda dengan Eclipse yang menggunakan Ant, Android Studio menggunakan Gradle sebagai build environment. Fitur-fitur lainnya adalah sebagai berikut :
a) Menggunakan Gradle-based build sistem yang fleksibel.
b) Bisa mem-build multiple APK .
c) Template support untuk Google Services dan berbagai macam tipe perangkat.
d) Layout editor yang lebih bagus.
e) Built-in support untuk Google Cloud Platform, sehingga mudah untuk integrasi dengan Google Cloud Messaging dan App Engine.
2.2. Arduino Nano Menggunakan ATMEGA 328 [3]
2.2.1. Pengertian
Arduino Nano adalah salah satu papan pengembangan mikrokontroler yang berukuran kecil, lengkap dan mendukung penggunaan breadboard. Arduino Nano diciptakan dengan basis mikrokontroler ATmega328 (untuk Arduino Nano versi 3.x) atau ATmega 168 (untuk Arduino versi 2.x). Arduino Nano dihubungkan ke komputer menggunakan port USB Mini-B.
2.2.2. Spesifikasi
Pada tabel 2.1 merupakan spesifikasi dari Arduino Nano: Tabel 2.1. Spesifikasi Arduino Nano
Mikrokontroler Atmel ATmega168 atau ATmega328 Tegangan Operasi 5V
Input Voltage (disarankan) 7-12V
Input Voltage (limit) 6-20V
Tabel 2.1. (Lanjutan) Spesifikasi Arduino Nano Pins Input Analog 8
Arus DC per pin I/O
40 mA
Flash Memori 16KB (ATmega168) atau 32KB (ATmega328) 2KB digunakan oleh Bootloader
SRAM 1 KB (ATmega168) atau 2 KB (ATmega328) EEPROM 512 byte (ATmega168) atau 1KB (ATmega328)
Clock Speed 16 MHz
Ukuran 1.85cm x 4.3cm
2.2.3. Sumber Tegangan
Arduino Nano dapat diaktifkan melalui koneksi USB Mini-B, atau melalui catu daya eksternal dengan tegangan belum teregulasi antara 6-20 Volt yang dihubungkan melalui pin 30 atau pin VIN, atau melalui catu daya eksternal dengan tegangan teregulasi 5 volt melalui pin 27 atau pin 5V. Sumber daya akan secara otomatis dipilih dari sumber tegangan yang lebih tinggi. Chip FTDI FT232L pada Arduino Nano akan aktif apabila memperoleh daya melalui USB, ketika Arduino Nano diberikan daya dari luar (Non-USB) maka Chip FTDI tidak aktif dan pin 3.3V pun tidak tersedia (tidak mengeluarkan tegangan), sedangkan LED TX dan RX pun berkedip apabila pin digital 0 dan 1 berada pada posisi HIGH.
2.2.4. PIN
Pada tabel 2.2. dibawah ini merupakan konfigurasi PIN pada Arduino nano, serta untuk gambar dari konfigurasi PIN dari arduino nano dapat di lihat pada gambar 2.2.
Tabel 2.2. Konfigurasi PIN pada Arduino Nano
Nomor Pin Nama Pin Arduino Nano
6 Digital Pin 3 (PWM) 7 Digital Pin 4
4 & 29 GND 27 VCC 4 & 29 GND 27 VCC - - - -
Tabel 2.2. (Lanjutan) Konfigurasi PIN pada Arduino Nano 9 Digital Pin 6 (PWM)
10 Digital Pin 7 11 Digital Pin 8
13 Digital Pin 9 (PWM) 13 Digital Pin 10 (PWM - SS) 14 Digital Pin 11 (PWM - MOSI) 15 Digital Pin 12 (MISO)
16 Digital Pin 13 (SCK) 27 VCC
25 Analog Input 6 18 AREF
4 & 29 GND
26 Analog Input 7 19 Analog Input 0 20 Analog Input 1 21 Analog Input 2 22 Analog Input 3 24 Analog Input 4 (SDA) 25 Analog Input 5 (SCL) 28 & 3 RESET
2 Digital Pin 0 (RX) 1 Digital Pin 1 (TX) 5 Digital Pin 2
2.2.5. Memori
ATmega328 memiliki flash memori sebesar 32 KB, (juga dengan 2 KB digunakan untuk bootloader). Sedangkan ATmega328 memiliki 2 KB memori pada SRAM dan 1 KB pada EEPROM.
2.2.6. Konfigurasi Arduino Nano Menggunakan ATMEGA 328
Masing-masing dari 14 pin digital pada Arduino Nano dapat digunakan sebagai input atau output, dengan menggunakan fungsi pinMode(), digitalWrite(), dan digitalRead(). Semua pin beroperasi pada tegangan 5 volt. Setiap pin dapat memberikan atau menerima arus maksimum 40 mA dan memiliki resistor pull-up internal sebesar 20-50 KOhm. Selain itu beberapa pin memiliki fungsi khusus, yaitu:
a) Serial : 0 (RX) dan 1 (TX). Digunakan untuk menerima (RX) dan mengirimkan (TX) TTL data serial. Pin ini terhubung ke pin yang sesuai dari chip FTDI USB-to-TTL Serial.
b) External Interrupt (Interupsi Eksternal): Pin 2 dan pin 3 ini dapat dikonfigurasi untuk memicu sebuah interupsi pada nilai yang rendah, meningkat atau menurun, atau perubahan nilai.
c) PWM : Pin 3, 5, 6, 9, 10, dan 11. Menyediakan output PWM 8-bit dengan fungsi analogWrite(), PWM juga memiliki skala yaitu 0 sampai 225. Jika pada jenis papan berukuran lebih besar (misal: Arduino Uno), pin PWM ini diberi simbol tilde atau
“~” sedangkan pada Arduino Nano diberi tanda titik atau strip.
d) SPI : Pin 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). Pin ini mendukung komunikasi SPI. Sebenarnya komunikasi SPI ini tersedia pada hardware, tapi untuk saat belum didukung dalam bahasa Arduino.
e) LED : Pin 13. Tersedia secara built-in pada papan Arduino Nano. LED terhubung ke pin digital 13. Ketika pin diset bernilai HIGH, maka LED menyala, dan ketika pin diset bernilai LOW, maka LED padam.
menggunakan fungsi analogReference(). Pin Analog 6 dan 7 tidak dapat digunakan sebagai pin digital. Selain itu juga, beberapa pin memiliki fungsi yang dikhususkan, yaitu:
I2C : Pin A4 (SDA) dan pin A5 (SCL). Yang mendukung komunikasi I2C (TWI) menggunakan perpustakaan Wire.
Masih ada beberapa pin lainnya pada Arduino Nano, yaitu:
a) AREF : Referensi tegangan untuk input analog. Digunakan dengan fungsi analogReference().
b) RESET : Jalur LOW ini digunakan untuk me-reset (menghidupkan ulang) mikrokontroler. Biasanya digunakan untuk menambahkan tombol reset pada shield yang menghalangi papan utama Arduino.
2.2.7. Komunikasi
Arduino Nano memiliki sejumlah fasilitas untuk berkomunikasi dengan komputer, dengan Arduino lain, atau dengan mikrokontroler lainnya. ATmega328 menyediakan komunikasi serial UART TTL (5 Volt), yang tersedia pada pin digital 0 (RX) dan pin 1 (TX). Sebuah chip FTDI FT232RL yang terdapat pada papan Arduino Nano digunakan sebagai media komunikasi serial melalui USB dan driver FTDI (tersedia pada software Arduino IDE) yang akan menyediakan COM Port Virtual (pada Device komputer) untuk berkomunikasi dengan perangkat lunak pada komputer. Perangkat lunak Arduino termasuk didalamnya serial monitor memungkinkan data tekstual sederhana dikirim ke dan dari papan Arduino. LED RX dan TX yang tersedia pada papan akan berkedip ketika data sedang dikirim atau diterima melalui chip FTDI dan koneksi USB yang terhubung melalui USB komputer (tetapi tidak untuk komunikasi serial pada pin 0 dan 1).
Gambar 2.3. Tampilan awal program arduino
2.3. Bluetooth HC-05
2.3.1. Deskripsi
Bluetooth Module HC-05 merupakan module komunikasi nirkabel pada frekuensi 2.4GHz dengan pilihan koneksi bisa sebagai slave, ataupun sebagai master. Interface yang digunakan adalah serial RXD, TXD, VCC dan GND. Built in LED sebagai indikator koneksi bluetooth[5].
Tegangan input antara 3.6 ~ 6V, arus saat unpaired (tidak terhubung) sekitar 30mA, dan saat paired (terhubung) sebesar 10mA. 4 pin interface 3.3V dapat langsung dihubungkan ke berbagai macam mikrokontroler, jarak efektif jangkauan sebesar 10 meter[5].
2.3.2. Spesifikasi
Spesifikasi Bluetooth HC-05 adalah sebagai berikut[4]:
b) Frequency: 2.4GHz ISM band
c) Modulation: GFSK(Gaussian Frequency Shift Keying)
d) Emission power: 4dBm, Class 2
e) Sensitivity: 0-84dBm at 0.1% BER
f) Kecepatan: Asynchronous: 2.1Mbps(Max) / 160 kbps, Synchronous: 1Mbps/1Mbps
g) Security: Authentication and encryption
h) Profiles: Bluetooth serial port
i) Power supply: +3.3VDC 50mA
j) Working temperature: -20 ~ +75 Centigrade
k) Dimensi: 3.57cm x 1.52cm
[image:33.612.93.515.64.683.2]Untuk konfigurasi PIN Bluetooth HC-05 dapat di lihat pada tabel 2.3 dan gambar 2.4. Tabel 2.3. Tabel Konfigurasi PIN Bluetooth HC-05[4]
PIN Name PIN # Pad Type Description
GND 13 21 22
VSS Ground Pot
3.3 VCC 12 3.3V Integrated 3.3 Volt(+) supply with On-Chip Linear Regulator output within 3.15-3.3 Volt
P1O0 23 Bi-Directional RX EN
Programmable input / output line, control output for LNA(if fitted)
P1O1 24 Bi-Directional TX EN
Programmable input / output line, control output for PA(if fitted)
2.4. Komunikasi
2.4.1. Protokol Komunikasi Serial [11]
Komunikasi serial adalah komunikasi yang mengantarkan data digital secara bit per bit secara bergantian melalui media interface serial. Pengiriman data melalui interface serial dapat dilakukan secara bit per bit (setiap satu step waktu 1 bit) atau juga dalam satuan baud dimana 1 baud tidak mesti senilai dengan 1 bit per second, tergantung besaran data untuk
setiap kali clocktransfer.
Komunikasi serial memiliki beberapa konsekuensi yaitu:
a) Tingginya tingkat keamanan terhadap gangguan karena tingginya ayunan tegangan (dengan jangkauan max. 50 Volt)  Sehingga dapat direalisasikan dengan kabel yang lebih panjang.
b) Membutuhkan sedikit kabel penghantar.
c) Membutuhkan penyesuaian protokol komunikasi data terutama untuk sinkronisasi antara pengirim dan penerima
Problem utama komunikasi serial adalah metode sinkronisasi, yakni pengendalian
[image:34.612.80.515.67.572.2]clock pengirim dan penerima. Kedua clok seharusnya berada pada frekuensi yang sama, agar penerima dapat mengambil data tepat pada waktunya. Tujuan sinkronisasi adalah menghindari keterlambatan dan kesalahan pengambilan data sehingga perlu dilakukan penyesuaian clok penerima dengan clok pengirim.
Komunikasi serial di bagi menjadi dua yaitu: a) Komunikasi sinkron
Komunikasi sinkron di tandai dengan clock penerima disetting hanya pada awal komunikasi clock pengirim. Komunikasi sinkron terdapat 2 bentuk realisasi yaitu menyediakan tiga penghantar (untuk data yang dikirim , diterima dan eksternal clock) pada hal ini membutuhkan bantuan penghantar
clock agar penerima dapat mengendalikan proses pengambilan data, kemudian bentuk realisasi lainnya adalah Interface serial terdiri hanya satu penghantar atau pasangan penghantar, dimana diawal paket data dikirimkan bit preamble sebagai bit sinkronisasi. Clock penerima akan mengalami settingan selama bit preamble berjalan.
b) Komunikasi asinkron
Komunikasi asinkron ditandai dengan sinkronisasi clock pengirim dan penerima terjadi pada awal dari setiap simbol data yang dikirim. Realisasi dari komunikasi asinkron adalah sebelum bits data terdapat satu atau dua startbit. Starbit ini menentukan kapan penerima mengambil data, dan ini berjalan dalam sebagian dari periode clock. Komunikasi asinkron
mengirimkan data secara simbol per simbol, dimana disini ditandai
acknowledge untuk setiap penyelesaian masing-masing simbol. Format data pada komunikasi asinkron tidak standar, bervariasi tergantung pada genap atau ganjilnya parity dan satu atau dua stop bit.
2.4.2. Protokol Komunikasi Bluetooth HC-05[12]
Bluetooth memiliki cara protokol komunikasi sebagai slave / device atau master / host, sebelum mengaktifkan bluetooth ada langkah yang harus kita lakukan yaitu melakukan koneksi dengan sumber tegangan, setelah terkoneksi dengan sumber tegangan
kemudian scan bluetooth menggunakan PC / laptop kemudian akan muncul nama “HC
-05”, kemudian koneksikan bluetooth dengan PC / laptop, jika ada pesan untuk mempairing bluetooth maka masukan password “1234”. Jika lampu pada bluetooth
berwarna biru maka bluetooth dapat dikatakan aktif, kemudian buka terminal serial dan pilih COM yang tersambung pada Bluetooth. Untuk menkonfirmasi terminal serialnya dapat menggunakan parameter ini:
b) Data bit : 8 c) Stop bit : 1 d) Parity : no parity
Kemudian buka koneksi dan Bluetooth pun siap menerima dan mengirim data. Sebelum mengaktifkan Bluetooth sebagai master / slave maka kita harus menghubungkan pin KEY dengan VCC dan power supply ke modul bluetooth , maka kita akan memasuki mode AT MODE, pada mode ini harus menggunakan baud rate 38400 kemudian kita akan mengganti baud rate yang sesuai untuk bluetooth sebagai master / slave, berikut ini adalah protokol komunikasi menggunkan bluetooth:
a) Protokol komunikasi bluetooth sebagai master / host
Jika Bluetooth sebagai master / host maka bluetooth di setting menjadi berikut ini: i. Inputan tinggi kepada pin KEY.
ii. Hubungkan power supply ke modul bluetooth. Kemudian modul akan masuk ke AT COMMAND.
iii. Atur parameter terminal hyper atau port serial lain (baud rate: 38400 ,
data bit : 8, stop bit : 1, no parity bit , no flow control).
iv. Kirim karakter “AT+ROLE=1\r\n” melalui serial, kemudian terima
karakter “OK\r\n”,“\r\n” adalah CLRF.
v. Kirim karakter “AT+CMODE=1\r\n” melalui serial, kemudian terima
karakter “OK\r\n”,“\r\n” adalah CLRF.
vi. Kunci password standart pabrikan adalah: 1234, hal ini harus sama dengan bluetooth yang bekerja sebagai slave jika ingin melakukan pairing.
Untuk membaca kunci password gunakan command: “AT+PSWD?”.
Untuk mengganti kunci password command kirim karakter
“AT+PSWD=XXXX”. Password harus empat digit.
vii. Kembalikan pin KEY dan power supply ke modul. Setelah itu modul bluetooth akan menjadi master dan akan mencari perangkat bluetooth lain yang bekerja sebagai slave dan akan melakukan koneksi secara otomatis (baud rate: 96000 , data bit : 8, stop bit : 1, no parity bit , no flow control). b) Protokol komunikasi bluetooth sebagai slave / device
ii. Hubungkan power supply ke modul bluetooth. Kemudian modul akan masuk ke AT COMMAND.
iii. Atur parameter terminal super atau port serial lain (baud rate: 38400 , data bit : 8, stop bit : 1, no parity bit , no flow control).
iv. Kirim karakter “AT+ROLE=0\r\n” melalui serial, kemudian terima
karakter “OK\r\n”,“\r\n” adalah CLRF.
v. Kirim karakter “AT+CMODE=0\r\n” melalui serial, kemudian terima
karakter “OK\r\n”,“\r\n” adalah CLRF.
vi. Kunci password standart pabrikan adalah: 1234, hal ini harus sama dengan bluetooth yang bekerja sebagai slave jika ingin melakukan pairing.
Untuk membaca kunci password gunakan command: “AT+PSWD?”.
Untuk mengganti kunci password command kirim karakter
“AT+PSWD=XXXX”. Password harus empat digit.
vii. Kembalikan pin KEY dan power supply ke modul. Setelah itu modul bluetooth akan menjadi slave dan menunggu perangkat bluetooth lain yang bekerja sebagai master dan akan melakukan koneksi secara otomatis (baud rate: 38400 , data bit : 8, stop bit : 1, no parity bit , no flow control).
Yang dimaksud dengan AT-COMMAND adalah perintah – perintah yang digunakan dalam komunikasi dengan serial port. Seluruh komunikasi yang menggunakan modem atau modul membutuhkan AT-COMMAND untuk melakukan komunikasi terhadap perangkat lain. AT_COMMAND juga dapat digunakan untuk mengetahui kondisi dari modem atau modul, pengiriman data dan penerimaan data[13].
2.5. Motor DC[7]
2.5.1. Pengertian
Motor adalah suatu mesin yang berfungsi mengubah tenaga listrik menjadi tenaga mekanik. Pada motor DC tenaga mekanik tersebut berupa putaran rotor secara kontinu. Pada dasarnya motor DC mempunyai dua bagian penting yaitu bagian stator dan bagian rotor. Lebih jelasnya bagian dari motor DC diperlihatkan pada gambar 2.6.
a) Bagian stator
b) Bagian rotor
Rotor ialah bagian yang bergerak yang terdiri dari silinder dibuat dari pelat-pelat yang dipejalkan yang diberi saluran sebagai tempat kumparan yang biasa disebut armatur. Pada armatur terpasang kolektor/komutator yang terdiri dari sigmen-sigmen yang berhubungan dengan gulungan armatur.
[image:38.612.83.514.239.528.2]Fungsi komutator adalah membalik arah aliran arus listrik yang melalui kumparan armaturnya. Pada saat kumparan armatur berpindah dari kutub utara ke kutub selatan (atau sebaliknya), untuk mendapatkan putaran motor sesuai dengan yang dikehendaki.
Gambar 2.6. Detail mekanik motor DC
2.5.2. Cara Kerja
Prinsip kerja dari motor DC berdasarkan pada penghantar yang membawa arus kedalam kumparan sehingga kumparan akan menimbulkan medan magnet. Medan magnet ini dibuat sedemikian rupa sehingga keadaannya selalu tolak menolak antara medan magnet yang ditimbulkan stator dan medan magnet yang ditimbulkan rotor sehingga didapat gaya dorong diantara keduanya maka timbulah putaran.
2.6. Driver Motor DC Menggunakan IC L298D[8]
2.6.1. Pengertian
IC L298D adalah driver motor DC H-Bridge dengan 2 unit driver didalam 1 chip IC yang dapat digunakan untuk mengendalikan motor DC dengan arus maksimum 4 Ampere, IC ini dapat digunakan untuk mengendalikan 2 motor sekaligus secara independent. Untuk konfigurasi PIN dari IC L298D dapat dilihat pada gambar 2.7.
2.6.2. Spesifikasi
Spesifikasi driver motor DC L298D adalah: a. Operating supply voltage up to 46 Volt b. Total DC current up to 4 Ampere
c. A low saturation voltage overtemperature protection
[image:39.612.90.514.182.666.2]d. Logical “0” Input Voltage up to 1.5 Volt (High Noise Immunity)
Gambar 2.7. Konfigurasi IC L298D
Logika kontrol dari IC L298D dapat dilihat pada tabel 2.4. dan 2.5.
Tabel 2.4. Tabel logika kontrol driver motor DC dengan IC L298D kondisi motor Kanan Pin ENA Pin IN1 Pin IN2 Kondisi Motor
Tabel 2.5. Tabel logika kontrol driver motor DC dengan IC L298D kondisi motor Kiri Pin ENB Pin IN3 Pin IN4 Kondisi Motor
Kiri 0 x x Stop 1 1 0 Forward 1 0 1 Reverse 1 1 1 Break 1 0 0 Break
Logika pada tabel control diver motor DC dengan IC L298D diatas adalah logika digital
dimana logika 1 = HIGH (+5Volt DC), logika 0 = LOW (0 Volt DC) dan logika “x” adalah
logika don’t care atau tidak akan berpengaruh pada output.
2.7. Sensor Jarak Ultrasonik PING [6]
2.7.1. Pengertian
Sensor jarak ultrasonik ping adalah sensor 40 khz produksi parallax yang banyak digunakan untuk aplikasi. Kelebihan sensor ini adalah hanya membutuhkan 1 sinyal selain jalur 5 volt dan ground. Perhatikan gambar 2.8 dibawah ini :
Gambar 2.8 Sensor jarak ultrasonik ping
Sensor PING mendeteksi jarak objek dengan cara memancarkan gelombang ultrasonik ( 40 KHz ) selama t = 200 us kemudian mendeteksi pantulannya. Sensor PING memancarkan gelombang ultrasonik sesuai dengan kontrol dari mikrokontroller pengendali ( pulsa trigger dengan tout min 2 us ). Diagram sensor PING dapat di lihat pada gambar 2.9 dan untuk gambar dari jarak ukur sensor PING dapat dilihat pada gambar 2.10
2.7.2. Spesifikasi
Spesifikasi sensor ini :
b. Input trigger –positive TTL pulse, 2uS min., 5uS tipikal. c. Echo hold off 750uS dari fall of trigger pulse.
d. Delay before next measurement 200uS.
e. Burst indicator LED menampilkan aktifitas sensor.
2.7.3. Cara Kerja Sensor
Gambar 2.9. Diagram Waktu Sensor Ping
Gelombang ultrasonik ini melalui udara dengan kecepatan 344 meter per detik, mengenai obyek dan memantul kembali ke sensor. Sensor Ping mengeluarkan pulsa output high pada pin SIG setelah memancarkan gelombang ultrasonik dan setelah gelombang pantulan terdeteksi Ping akan membuat output low pada pin SIG. Lebar pulsa High (tIN) akan sesuai dengan lama waktu tempuh gelombang ultrasonik untuk 2x jarak ukur dengan obyek. Maka jarak yang diukur dapat dilihat pada rumus 2.1 dan 2.2 :
Cudara = 331.5 +0.6 Tc ⁄
Keterangan: TC adalah Suhu yang berpengaruh pada sensor ⁄ detik
Keterangan: - Diasumsikan suhu yang digunakan adalah suhu ruangan 27-28 oC - tIN = waktu yang dibutuhkan untuk menempuh jarak
Gambar 2.10. Jarak Ukur Sensor Ping
Keluaran dari pin SIG ini yang dihubungkan ke salah satu port dimikrokontroller. Fungsi Sigout untuk mentrigger ping, sedangkan fungsi Sigin digunakan untuk mengukur pulsa yang sesuai dengan jarak dari objek target. Cara untuk instalasi sensor PING dapat di lihat pada gambar 2.11
Gambar 2.11. Instalasi Sensor Ping
2.8. Keseimbangan Benda Tegar [10]
Sebuah benda tegar berada dalam keadaan seimbang mekanis bila, relative
terhadap suatu kerangka acuan inersial: a) Percepatan linier pusat massanya nol.
b) Percepatan sudutnya mengelilingi sembarang sumbu tetap dalam kerangka acuan ini juga nol.
tersebut dikatakan berada dalam keseimbangan statik. Bila suatu benda tegar berada dalam keadaan seimbang statik, maka kedua persyaratan di atas untuk keseimbangan mekanik akan menjamin benda tetap dalam keadaan seimbang statik. Persyaratan pertama ekuivalen dengan persyaratan bahwa total gaya eksternal yang bekerja pada benda tegar sama dengan nol. Gaya (F) pada keseimbangan benda tegar di bagi menjadi 2 dengan rumus 2.4:
Fx= F cos ϴ
Fy= F sin ϴ
Dengan ϴ = sudut gaya terhadap sumbu x
Sedangkan persyaratan kedua ekuivalen dengan persyaratan bahwa total torsi eksternal yang bekerja pada benda tegar sama dengan nol. Torsi (τ) pada kondisi keseimbangan static memiliki rumus pada rumus 2.5:
τ = F d
Keterangan: F = gaya (Newton)
d= jarak gaya ke poros (meter)
Jika terjadi gerakan maka akan terjadi pula gaya gesek , gaya gesek memiliki rumus pada rumus 2.6:
f = μ N
Keterangan:
f = gaya gesek (Newton) N = Gaya normal (Newton)
Μ = koefisien gesekan
Jika ada benda maka benda tersebut memiliki berat (W), yang berumus pada rumus 2.7:
Keterangan:
W = berat (kilogram) m = massa (kilogram)
g = percepatan gravitasi bumi ( ⁄)
Gambar 2.12. Ilustrasi titik berat (Center Of Gravity) Roll Bot (tampak samping)
(2.4)
(2.5)
(2.6)
23
BAB III
PERANCANGAN
3.1.
Proses Kerja Sistem Pengendalian “Roll Bot”
Proses kerja “Roll Bot” yang pengendaliannya menggunakan android ditunjukan pada
gambar 3.1.
Gambar 3.1 Proses Kerja Roll Bot
Sistem pengendalian “Roll Bot” ini merupakan system pengendalian dua arah, hal ini disebabkan “Roll Bot” akan mengirimkan data ke ponsel mengenai jarak terhadap penghalang
sekaligus mengetahui jarak “Roll Bot” dengan penghalang. Sebelum menggerakan “Roll Bot” user akan mengkoneksikan “Roll Bot” dengan Handphone Android menggunakan alat penghubung berupa Bluetooth. Android akan mengirimkan data melalui Bluetooth yang ada
pada handphone yang kemudian akan diterima oleh Bluetooth yang ada pada “Roll Bot” yang
kemudian data tersebut akan diproses oleh arduino, kemudian akan menggerakan motor DC
yang sebagai penggerak “Roll Bot”. Untuk mengirimkan data yang berupa jarak, sensor ping
akan mendeteksi jarak dari penghalang, yang kemudian akan akan diproses oleh arduino dan
akan dikirim menggunakan Bluetooth pada “Roll Bot” dan akan diterima oleh Handphone Android yang kemudian akan ditampilkan pada handphone.
3.2. Kebutuhan Perangkat Keras
Untuk dapat menggerakan “Roll Bot” penulis memerlukan beberapa perangkat keras yang mendukung system kerja dari “Roll Bot” diantaranya:
1. Ponsel
Dalam pengontrolan “Roll Bot”, maka penulis membutuhkan Handphone Android dengan sistem operasi versi Andoid Kitkat 4.4.
2. Notebook
Notebook digunakan untuk memprogram mikrokontroler menggunakan
program arduino serta untuk memprogram aplikasi Android menggunakan
software Android Studio.
3. Mikrokontroler Arduino nano dengan ATMEGA 328
Mikrokontroler ini digunakan untuk mengontrol pergrakan “Roll Bot” serta
komunikasi dengan handphone android.
4. Modul Bluetooth
Modul Bluetooth ini digunakan untuk menghubungkan “Roll Bot” dengan
handphone Android yang nanti akan diproses menggunakan mikrokontroler
5. Sensor Jarak
Sensor jarak ini digunakan untuk menghitung jarak antara “Roll Bot” dengan
pengahalang yang berada didepan “Roll Bot”. Sensor jarak yang digunakan
adalah sensor Ping parallax.
6. IC L298
IC L298 ini digunakan untuk IC pada driver motor yang berfungsi untuk
mengendalikan arah putaran motor serta kecepatan motor yang nantinya akan
diatur pada mikrokontroler.
7. Motor DC
Motor DC ini digunakan untuk menggerakan “Roll Bot” yaitu bergerak maju,
mundur, belok kiri, dan belok kanan. Adapun Motor DC yang nantinya
digunakan membutuhkan tegangan DC 12 volt.
8. Catu Daya
Penulis menggunakan catu daya berupa batrei dengan tegangan 12 volt untuk
mensuply motor DC, dan akan menggunakan batrei dengan tegangan 5 volt
untuk mensuply mikrokontroler.
3.3. Kebutuhan Perangkat Lunak
Perangkat lunak yang digunakan oleh penulis ada dua yaitu:
1. Arduino
Arduino digunakan untuk mengisikan program pada memori flash pada arduino
nano dengan ATMEGA 328 yang ada pada “Roll Bot”.
2. Android Studio
Android Studio digunakan untuk membuat program untuk handphone android
5
3.4. Perancangan Alat
3.4.1. Perancangan Konstruksi “Roll Bot”
Pada perancangan konstruksi “Roll Bot” ini berisi komponen – komponen yang
membentuk sistem “Roll Bot” secara keseluruhan. Gambar 3.2 menggambarkan konstruksi “Roll Bot” secara keseluruhan.
Gambar 3.2. Konstruksi “Roll Bot” tampak depan dan tampak atas
Keterangan Gambar 3.2 :
1. Roda “Roll Bot”
2. Modul sensor PING
3. Modul Bluetooth
4a. Motor DC Kiri
4b. Motor DC kanan
5. Battery
6. Driver Motor DC dengan IC L298D
3.4.2. Perancangan Rangkaian Penggerak Motor
Perancangan penggerak “Roll Bot” menggunakan motor DC sebagai
penggerak, sebuah mikrokontroler tidak dapat menggerakan motor DC secara
2
20 centi meter
3 4b
5 4a 6 12 c e nt i mete r 1
20 centi meter
12 c e nt i mete r
4a 4b
1
2
3
langsung, maka membutuhkan rangkaian khusus untuk menggerakan motor DC. Hal
ini disebabkan mikrokontroler hanya mengeluarkan tegangan sebesar 5 Volt padahal
motor DC membutuhkan tegangan 12 Volt untuk dapat bekerja secara optimal. Maka
dari itu mikrokontroler membutuhkan rangkaian khusus untuk menggerakan motor
DC. Rangkaian pengendali motor DC ini yang digunakan adalah rangkaian H-Bridge
dari sebuah komponen IC L298D Gambar 3.3 Menunjukkan koneksi pin pada IC
L298D terhadap motor DC dan mikrokontroler.
Gambar 3.3 Driver Motor DC dengan IC L298D
Keterangan Gambar 3.3:
1. Mikrokontroler Arduino nano dengan ATMEGA 328
2. IC L298D
3. Motor DC kiri
4. Motor DC kanan
5. Power supply 12 volt
IC L298D membutuhkan pulsa PWM untuk mengatur kecepatan motor DC.
Pengaturan kecepatan motor DC dengan IC L298 menggunakan digital pin 8 dan
digital pin 9 Karena pada port tersebut terdapat fungsi PWM. Untuk mengendalikan
5 3
2
pergerakan “Roll Bot” untuk bergerak maju, mundur, belok kiri, belok kanan, dan berhenti menggunakan digital pin 2, digital pin 3, digital pin 4, digital pin 7 pada
arduino nano menggunakan mikrokontroler ATMEGA 328. Tabel 3.1. Menunjukkan
pergerakan putaran motor DC terhadap arah pergerakan “Roll Bot”.
Motor Kiri Motor Kanan Arah Pergerakan
“Roll Bot” Gambar Ilustrasi
CW CW Bergerak Maju
CCW CW Bergerak ke kiri
- - Berhenti
CW CCW Bergerak ke kanan
CCW CCW Bergerak Mundur
3.4.3. Perancangan Sensor PING
Dengan menggunakan rumus 2.2. yang ada pada dasar teori maka penulis dapat
melakukan perhitungan sebagai berikut yang ada pada tabel 3.2. dan grafik pada
gambar 3.4:
Tabel 3.2. tabel hasil perhitungan menggunakan rumus 2.2. pada dasar teori
No Jarak (meter) Waktu (s)
1 0.1 0.7
2 0.2 1.2
3 0.3 1.7
4 0.4 2.3
5 0.5 2.9
6 0.6 3.5
7 0.7 4.1
8 0.8 4.7
9 0.9 5.2
10 1 5.8
11 1.2 6.98
12 1.4 8.1
13 1.6 9.3
14 1.8 10.5
15 2 11.6
16 2.2 12.8
17 2.4 13.95
18 2.6 15.1
19 2.8 16.3
Gambar 3.4. Grafik Jarak Terhadap Waktu
3.5. Perancangan Program
3.5.1. Diagram Alir Pergerakan “Roll Bot” Pada Arduino
Gambar 3.5. merupakan gambar diagram alir (Flow Chart) pergerakan “Roll
Bot” pada mikrokontroler Arduino dengan ATMEGA 328. Proses awalnya adalah
melakukan koneksi dengan handphone android, setelah melakukan koneksi jika
berhasil maka arduino akan menerima perintah yang akan dikirim oleh handphone
android yang nantinya akan menibulkan gerakan sebagai berikut:
1. Jika tombol pada handphone android ditekan maka “Roll Bot” akan
bergerak maju.
2. Jika tombol pada handphone android ditekan maka “Roll Bot” akan
bergerak mundur.
3. Jika tombol pada handphone android ditekan maka “Roll Bot” akan bergerak
kanan.
4. Jika tombol pada handphone android ditekan maka “Roll Bot” akan
bergerak kiri. 3, 17.4 0 2 4 6 8 10 12 14 16 18 20
0 0.5 1 1.5 2 2.5 3 3.5
w a kt u (m s) Jarak (m)
5. Jika tombol pada handphone android ditekan maka “Roll Bot” akan
bergerak berhenti.
6. Jika tombol pada handphone android ditekan maka “Roll Bot” akan
melakukan gerakan demo yang berupa membentuk angka delapan.
7. Jika tombol pada handphone android ditekan maka “Roll Bot” akan
melakukan koneksi dengan handphone.
8. Jika tombol pada handphone android ditekan maka “Roll Bot” akan
menambahkan kecepatan putar motor DC.
9. Jika tombol pada handphone android ditekan maka “Roll Bot” akan
megurangi kecepatan putar motor DC.
10.Jika tombol pada handphone android ditekan maka “Roll Bot” akan keluar
dari interface pada handphone.
Jika sensor PING yang ada pada “Roll Bot” mendeteksi sebuah halangan maka
arduino akan mengolah data yang di kirimkan oleh sensor PING yang kemudian akan di
kirimkan ke handphone usher menggunakan bluetooth yang ada pada “Roll Bot”.
Kecepatan yang di gunakan untuk menggerakan motor DC berskala 0 sampai 100, jika
di bandingkan dengan PWM dari arduino maka perbandingannya 1:2,25, hal ini
dikarenakan range dari PWM adalah 0 sampai 225. Untuk tombol demo “Roll Bot”
akan melakukan pergerakan membentuk angka delapan, “Roll Bot” melakukan
pergerakan demo dengan melakukan gerakan maju yang berbanding lurus dengan
perubahan kecepatan seturut dengan waktu yang dibutuhkan untuk melakukan gerakan,
ilustrasi pergerakan dapat di lihat pada gambar 3.6. Stop
Demo
Gambar 3.5. Flow chart system pada arduino
Gambar 3.6. Arah putar “Roll Bot” pada perintah demo
3.5.2. Diagram Alir Pergerakan “Roll Bot” Pada Android
Gambar 3.7. merupakan gambar diagram alir (Flow Chart) pergerakan “Roll
Bot” pada handphone Andorid dengan menggunakan program android studio. Proses
berhasil maka android akan mengirim salah satu perintah yang terdiri dari perintah
connect, maju, mundur, kanan, kiri, demo, berhenti, keluar, dan tombol untuk menaikan
dan menurunkan kecepatan yang nantinya akan diterima oleh “Roll Bot” melalui
Bluetooth yang kemudian akan diproses oleh arduino, yang nantinya akan menibulkan
gerakan yang sudah ditentukan disubab sebelumnya.
Pada gambar 3.7. merupakan gambar diagram alir (Flow Chart) dari system
android, pertama usher akan melakukan koneksi terlebih dahulu dengan “Roll Bot” jika
berhasil melakukan koneksi dengan “Roll Bot” maka usher dapat mengirimkan data
yang berupa perintah maju, mundur, kanan, kiri, berhenti, demo, tambah, kurang. Yang
di maksud dengan tambah adalah perintah untuk menambah kecepatan dari “Roll Bot”,
untuk kurang adalah perintah untuk mengurangi kecepatan “Roll Bot”, kecepatan “Roll
Bot” diskalakan dari 0 sampai 100 jika di bandingkan dengan kecepatan PWM maka perbandingannya 1:2,25, hal ini di karenakan range dari PWM adalah 0 sampai 225.
Jika “Roll Bot” membaca jarak terhadap halangan maka arduino akan mengirimkan
data jarak dengan bantuan bluetooth yang ada pada “Roll Bot” ,yang kemudian akan di
terima oleh Bluetooth yang ada pada handphone dan akan di tampilkan pada aplikasi
Gambar 3.7 Flow chart system pada android
3.5.3. Tampilan Interface Pada Handphone Android
Gambar 3.8 merupakan gambaran tampilan interface pada handphone android,
yang nantinya akan digunakan untuk memberi perintah kepada “Roll Bot”. Interface
Gambar 3.8. Interface pada Handphone Android
Keterangan gambar 3.8:
1. Tombol Connect
2. Tombol untuk mengendalikan “Roll Bot”
3. Tombol untuk keluar dari aplikasi
4. Tombol untuk melakukan gerakan demo
5. Tombol untuk mengentikan laju “Roll Bot”
6. Textbox untuk menampilkan jarak terhadap halangan
7. Tombol untuk menambah kecepatan Motor DC
8. Tombol untuk mengurangi kecepatan Motor DC
Pada Gambar 3.8. merupakan gambar dari interface pada handphone android,
di dalam flowchart tersebut terdapat beberapa tombol yaitu:
1. Jika tombol pada Interface ditekan maka bluetooth pada handphone akan
mengirimkan perintah maju ke “Roll Bot”.
2. Jika tombol pada Interface ditekan maka bluetooth pada handphone akan
mengirimkan perintah mundur ke “Roll Bot”.
3. Jika tombol pada Interface ditekan maka bluetooth pada handphone akan
mengirimkan perintah kanan ke “Roll Bot”.
3
1
2
4
7
8
5
4. Jika tombol pada Interface ditekan maka bluetooth pada handphone akan
mengirimkan perintah kiri ke “Roll Bot”.
5. Jika tombol pada Interface ditekan maka bluetooth pada handphone akan
mengirimkan perintah berhenti ke “Roll Bot”.
6. Jika tombol pada Interface ditekan maka bluetooth pada handphone akan
mengirimkan perintah demo ke “Roll Bot”, yang nantinya “Roll Bot” akan
melakukan demo berupa membentuk angka delapan.
7. Jika tombol pada Interface ditekan maka bluetooth pada handphone
akan melakukan koneksi dengan “Roll Bot”.
8. Jika tombol pada Interface ditekan maka bluetooth pada handphone akan
mengirimkan perintah tambah, perintah ini digunakan untuk menambah kecepatan
“Roll Bot”.
9. Jika tombol pada Interface ditekan maka bluetooth pada handphone akan
mengirimkan perintah kurang, perintah ini digunakan untuk mengurango keceptan
“Roll Bot”.
10.Jika tombol pada Interface ditekan maka usher akan keluar dari aplikasi
pengendali “Roll Bot”.
Stop
Demo
37
BAB IV
HASIL DAN PEMBAHASAN
Bab ini berisi mengenai hasil pengamatan dari sensor PING dengan menggunakan
Arduino nano dengan ATMEGA 328 dan pembahasan program yang digunakan pada arduino
dan android. Hasil pengamatan berupa hasil dari sensor PING yang berupa jarak yang terbaca
oleh sensor, waktu yang dibutuhkan untuk menerima jarak dan membandingkan dengan hasil
dari perhitungan yang dilakukan pada BAB III.
4.1. Hasil Implementasi Alat
Gambar 4.1. Rancangan Alat “Roll Bot” Secara Keseluruhan
Gambar 4.1. merupakan gambar alat yang dirancang secara keseluruhan. Alat yang
dibuat terdiri dari 2 hal yang penting yaitu menerima perintah yang diberikan oleh user
menggunakan ponsel android dan mengirim data dari sensor PING yang berupa jarak dan
waktu yang dibutuhkan untuk menerima jarak. Sensor yang digunakan adalah sensor
ultrasonic PING parallax. Sensor PING ini akan menerima data jarak dan waktu yang
dibutuhkan untuk menerima jarak, kemudian arduino akan memproses data tersebut yang
kemudian akan dikirimkan menggunakan bluetooth yang ada pada rangkaian alat ini ke
4.2. Hasil Perancangan Perangkat Keras
Gambar 4.2, merupakan gambar driver motor DC yang digunakan pada alat “Roll
Bot”, yang memiliki fungsi sebagai penggerak motor dan mengimplementasikan pwm yang
dikirim dari arduino nano. Driver L298 dapat menahan arus maksimal sebesar 4 Ampere dan
membutuhkan tegangan masukan sebesar 5 volt untuk mengaktifkan driver serta tegangan 12
volt untuk mensuply motor DC yang tersambung pada driver motor L298 ini.
Gambar 4.2. driver motor DC L298
Gambar 4.3. merupakan gambar dari module Bluetooth HC-05 yang digunakan untuk
mengirim data yang berupa jarak yang diterima oleh sensor PING dan menerima data yang
berupa data yang berupa perintah untuk melakukan gerakan, tegangan yang digunakan adalah
3.3 volt.
Gambar 4.3. module Bluetooth HC-05
Gambar 4.4. merupakan gambar dari module sensor PING yang digunakan untuk
sensor PING adalah 4 centimeter dan jarak maksimal yang terbaca adalah 313 centimeter.
Sensor PING ini terdiri dari 3 kaki yang meliputi kaki VCC, GND, dan SIG, kaki VCC akan
dihubungkan ke tegangan 5 volt pada mikrokontroler arduino nano yang nantinya akan
mengaktifkan sensor, kaki GND akan disambungkan ke ground yang ada pada mikrokontroler
arduino nano, kaki SIG akan disambungkan ke pin digital 8 pada mikrokontroler arduino nano
yang berfungsi untuk menjadi penerima jarak pada arduino nano.
Gambar 4.4. module sensor PING
4.3. Penggunaan Modul Bluetooth HC-05
Modul bluetooth HC-05 merupakan modul bluetooth yang digunakan untuk
komunikasi antara android dan arduino dalam alat “Roll Bot” ini. Modul HC-05 memiliki AT Command yang digunakan untuk mengecek status dari bluetooth. Dalam pengerjaan alat ini
ada beberapa perintah AT Command yang digunakan. Contoh dari perintah AT Command
yang digunakan adalah “AT” yang digunakan untuk mengetahui status koneksi dari bluetooth, jika bluetooth sudah terkoneksi maka akan muncul respon “OK” pada serial monitor pada arduino. Adapula “AT+NAME?” yang digunakan untuk mengetahui nama dari bluetooth dan
ada “AT+PSWD?” yang digunakan untuk mengetahui password dari bluetooth yang
digunakan.
4.4. Hasil Implementasi Menggunakan Arduino
Pada saat tombol connect ditekan maka android akan melakukan pairing dan
terkoneksi pada arduino melalui Bluetooth maka langkah selanjutnya adalah arduino akan
melakukan scaning untuk perintah – perintah yang ada pada android yaitu meliputi maju,
4.4.1. Perintah Maju
Jika Bluetooth yang ada pada arduino menerima perintah maju atau menerima perintah
dengan hruruf “a”, maka arduino akan bekerja dengan menjalankan program maju yang dapat
dilihat pada gambar 4.5. Program yang dijalankan akan mengirim pulsa PWM sebesar 100
atau 39,21 % dari kecepatan maksimal PWM (255 PWM) ke motor DC 1 dengan arah putar
motor CW dan akan mengirim pulsa PWM ke motor DC 2 sebesar 97 PWM atau 38,04 % dari
kecepatan maksimal PWM ( 255 PWM) ke motor 2 dengan arah putar motor CW. Pada
perintah maju ini android akan mengirimkan data yang berupa karakter “a” yang nantinya
[image:62.612.88.538.259.629.2]akan diterima oleh arduino nano, yang kemudian akan menimbulkan gerekan maju.
Gambar 4.5. Program maju pada arduino
4.4.2. Perintah Mundur
Jika Bluetooth yang ada pada arduino menerima perintah mundur atau menerima
perintah dengan huruf “b”, maka arduino akan bekerja dengan menjalankan program mundur
yang dapat dilihat pada gambar 4.6. Program yang dijalankan akan mengirim pulsa PWM
sebesar 100 atau 39,21 % dari kecepatan maksimal PWM (255 PWM) ke motor DC 1 dengan
arah putar motor CCW dan akan mengirim pulsa PWM ke motor DC 2 sebesar 97 PWM atau
38,04 % dari kecepatan maksimal PWM ( 255 PW