## PERANCANGAN ROBOT VACUUM CLEANER
1 Hendra Gunawan
Sekolah Tinggi Teknologi Indonesia, Jurusan Teknik Informatika E-mail: 1 hendratay96@gmail.com

## ABSTRAK
Robot merupakan salah satu bidang teknologi yang dapat meringankan pekerjaan manusia.  Sebagian  orang  menggunakan  sapu  membersihkan  rumah,  namun penggunaan  sapu  membersihkan  rumah  akan  menguras  waktu  dan  tenaga manusia.  Jika  ruangan  kecil,  maka  tidak  terlalu  menguras  waktu  dan  tenaga. Namun  apabila  ruangan  besar,  maka  akan  menguras  banyak  waktu  dan  tenaga. Maka  pada  penelitian  ini  dibuatlah  sebuah  robot  vacuum  cleaner  yang  dapat otomatisasi sendiri dan dapat dikontrol oleh pengguna.
Dalam  melakukan  penelitian  ini,  metode  yang  digunakan  adalah  studi  literature dan observasi untuk pengumpulan data dan model waterfall untuk pengembangan perangkat lunak . Sistem dimodelkan dengan menggunakan Flowmap dan Use case diagram. Hasil dari penelitian ini adalah dibangunnya suatu perangkat keras dan perangkat  lunak  untuk  meringankan  pekerjaan  manusia,  yang  dibuat  dengan bahasa  pemograman  c/c++  untuk  robot  dan  java  untuk  aplikasi  android. Diharapkan dengan  adanya robot dan aplikasi android yang  dibangun ini akan mempermudah pembersihan ruangan atau meringankan pekerjaan manusia.

## Kata kunci: robot, vacuum cleaner, otomatisasi, pengontrolan, android

## 1. PENDAHULUAN
Pada saat ini, bidang teknologi adalah bidang yang berkembang paling pesat dibandingkan  dengan  bidang  lainnya.  Perkembangan  bidang  teknologi  saat  ini sangat  membantu  manusia  dalam  kehidupan  sehari-hari.Robot  adalah  salah  satu bidang teknologi yang dapat membantu atau meringankan pekerjaan manusia dalam kehidupan  sehari-hari.  Contoh  robot  yang  dapat  membantu  atau  meringankan perkerjaan manusia adalah robot vacuum cleaner .
Sebagian  orang  pada  umumnya  menggunakan  sapu  untuk  membersihkan debu  atau  sampah  yang  terdapat  dilantai.  Namun  ada  juga  yang  menggunakan vacuum  cleaner sebagai  pembersih  debu  atau  sampah  yang  terdapat  lantai. Membersihkan  ruangan  dengan  sapu  dan vacuum  cleaner masih  membutuhkan tenaga  manusia  dan  sangat  menguras  waktu  dan  tenaga  manusia  karena menggunakan waktu dan tenaga manusia untuk mengoperasikannya. Jika ruangan yang  ingin  dibersihkan  kecil,  maka  tidak  terlalu  menguras  waktu  dan  tenaga manusia,  namun  jika  ruangan  yang  ingin  dibersihkan  besar,  maka  akan  sangat menguras waktu dan tenaga manusia.Sudah ada banyak robot vacuumcleaner yang
diciptakan  untuk  membantu  membersihkan  debu  atau  sampah  pada  ruangan. Namun  sebagian  besar  robot vacuum  cleaner yang  ada  dipasaran  terlalu  mahal untuk dibeli dan tidak menggunakan algoritma dalam navigasinya.
Dalam  jurnal    Afwan  Zikri,  Anton  Hidayat  dan  Derisma  yang  berjudul “Rancang  Bangun  Robot  Vacuum  Cleaner  Berbasis  Mikrokontroler” menyimpulkan  bahwa  robot  yang  dirancang  yang  menggunakan  logika fuzzy , tingkat kebersihan maksimal yang dicapai olehnya dalam selang waktu rata-rata 1 menit 11 detik adalah 77,4%. Dengan daya 2 buah baterai sebesar 9,6V( 3000mAH ), vacuumcleaner hanya dapat berfungsi secara baik selama 10 menit. Dan disarankan untuk menggunakan baterai lipo ( lithium polymer ) atau jenis baterai lainnya untuk efisiensi kerja robot dalam jangka waktu yang cukup lama
Dalam  jurnal    Setya  Ardhi,  S.T.,M.Kom,  Dr.  Ir.  Hari  Sutiksno  M.T.  yang berjudul  “Perancangan  dan  Pembuatan  Prototipe  Alat  Pembersih  Lantai  dengan Kendali  dari  Jaringan  Bluetooth”  menyatakan  robot  yang  dibuat  adalah  sebuah prototipe  robot  penyedot  debu  dimana  system  mekaniknya  dengan  mangadopsi sistem mobil remote controller pada umumnya dan memadukan sistem pengendali Bluetooth dari  aplikasi Android yang  dibuat  dengan  tujuan  bisa  mengendalikan robot tersebut dengan jarak yang cukup jauh dan nantinya remote controller akan digantikan oleh pengendali dari aplikasi Android dengan jaringan sinyal Bluetooth. Jadi penulis mengartikan dengan robot yang dirancang, pengguna dapat mengontrol robot vacuumcleaner dari jauh untuk membersihkan tempat-tempat tertentu untuk menghemat daya baterai.
Berdasarkan  penelitian-penelitian  diatas,  penulis  mendapatkan  sedikit gambaran apa yang akan di rancang, penulis bermaksud untuk merancang sebuah robot vacuumcleaner yang dapat membersihkan lantai ruangan secara bersih untuk meringankan pekerjaan manusia dengan menggunakan Arduino Uno sebagai otak robot vacuum cleaner dan dapat dikontrol oleh manusia dengan handphone berbasis android.

## 2. KAJIAN PUSTAKA
a. Vacuum Cleaner Penyedot debu, juga dikenal sebagai penyapu atau hoover , adalah alat yang menggunakan pompa udara (kipas sentrifugal, kecuali beberapa model yang paling tua),  untuk  membuat  vakum  parsial  untuk  menyedot  debu  dan  kotoran,  biasanya dari lantai, dan dari permukaan lain seperti jok dan gorden.
Kotoran  dikumpulkan  oleh  kantong  debu  atau  siklon  untuk  pembuangan selanjutnya. Penyedot debu, yang ada dalam berbagai ukuran dan model perangkat genggam bertenaga baterai kecil, model tabung beroda untuk penggunaan di rumah, pembersih  vakum  sentral  dalam  negeri,  peralatan  industri  stasioner  besar  yang dapat menangani beberapa ratus liter debu sebelum dikosongkan, dan truk vakum self-propelled untuk  pemulihan  tumpahan  besar  atau  pengangkatan  tanah  yang terkontaminasi. Ada vacuum cleaner khusus dapat digunakan untuk menyedot debu dan cairan.
b. Arduino Uno
Arduino  Uno berukuran  sebesar  kartu  kerdit.  Walaupun  berukuran  kecil seperti itu, papan tersebut mengandung mikrokontroler dan sejumlah input/output ( I/O ) yang memudahkan pemakai untuk menciptakan berbagai proyek elektronika yang dikhususkan untuk menangani tujuan tertentu. Bagian-bagin di Arduino Uno yang perlu diketahui ditunjukkan di Gambar 1
Gambar 1 Arduino Uno
Penjelasan bagian masing-masing seperti berikut:
1. Port USB  digunakan  untuk  menghubungkan Arduino  Uno dengan komputer, melalui sepsang kabel USB.
2. Colokan  catu  daya  eksternal  digunakan  untuk  memasok  sumber  daya listrik untuk Arduino Uno ketika tidak dihubungkan ke komputer. Jika Arduino  Uno dihubungkan  ke  komputer  melalui  kabel  USB,  pasokan daya listrik diberi oleh komputer.
3. Pin  digital  mempunyai  label  0  sampai  dengan  13.  Disebut  pin  digital karena mempunyai isyarat digital, yakni berupa 0 atau 1. Dalam praktik, nilai  0  dinyatakan  dengan  tegangan  0V  dan  nilai  1  dinyatakan  dengan tegangan 5V.
4. Pin  analog  berarti  bahwa  pin-pin  ini  mempunyai  nilai  yang  bersifat analog (nilai yang berkesinambungan). Dalam program, nilai setiap pin analog yang berlaku sebagai masukan (hasil dari sensor) berkisar antar 0 sampai dengan 1023.
5. Mikrokontroler  yang  digunakan  di Arduino  Uno adalah  Atmel  AVR Atmega328P-PU.
6. Ada  dua  pin  yang  dapat  digunakan  untuk  memasok  catu  daya  ke komponen  elektronis  yang  digunakan  dalam  mengangani  proyek,
misalnya  sensor  gas,  sensor  jarak,  dan  relai.  Tegangan  yang  tersedia adalah  3,3V  dan  5V.  Komponen-komponen  elektronis  yang  diberi tegangan  oleh Arduino  Uno adalah  yang  mermerlukan  arus  kecil. Sebagain contoh motor DC yang menarik arus lebih dari 500mA harus menggunakan catu daya tersendiri.
Arduino  Uno dilengkapi  dengan static  random-access  memory ( SRAM ) berukuran  2KB  untuk  memegang  data, Flash  memory berukuran  32KB,  dan erasable  programmable  read-only  memory ( EEPROM ). SRAM digunakan  untuk menampung  data  atau  hasil  pemrosesan  data  selama Arduino menerima  pasokan catu  daya. Flash  memory untuk  menaruh  program  yang  Anda  buat. EEPROM digunakan untuk menaruh program bawaan dari Arduino Uno dan sebagaian lagi dapat dimanfaatkan menaruh data milik Anda secara permanen.
c. Android Android adalah  nama  software  yang  dipakai  pada  perangkat  mobile  yang mencakup  berbagai  komponen,  yaitu  sistem  operasi, middle-ware dan  aplikasi kunci yang dirilis oleh Google. Jadi, Android ini mencakup keseluruhan aplikasi, mulai  dari  sistem  operasi  hingga  pengembangan  aplikasi  itu  sendiri.  Dan pengembangan  aplikasi  pada  platform Android ini  menggunakan  dasar  Bahasa pemrograman Java .  Platform  pengembangan  aplikasi Android yang  merupakan bagian  dari Android memiliki  lisensi open-source atau  terbuka,  sehingga  Anda dapat membangun aplikasi yang kaya dan inovatif. Apabila Anda ingin mengetahui atau  melihat  kode  program  yang  digunakan,  atau  bahkan  lebih  daripada  itu, diperbolehkan. Anda juga bisa memodifikasi sistem operasi Android tersebut, dan hal itu legal. Kalau mau melihat sourceAndroid , Anda bisa melihat pada halaman repository untuk mencari source code -nya di alamat http://source.android.com/.
Kernel Linux dipilih oleh tim pengembang tersebut dengan beberapa alasan, antara lain:
1. Security , kernel Linux memiliki pengaturan keamanan yang baik antara sistem dan aplikasi.
2. Manajemen memori, kernel Linux dapat mengatur  manajemen memori dengna lebih baik, sehinggan lebih hemat saat melakukan pengembangan aplikasi.
3. Manajemen  proses,  kernel  Linux  dapat  mengatur  proses  dan resource dengan  lebih  baik,  sehinggan  memudahkan  pengaturan  untuk menjalankan aplikasi.
4. Network stack , kernel Linux dapat mengatur komunikasi jaringan.
5. Driver,  kernel  Linux  menjamin  sesuatu  dapat  berjalan  dengan  baik, sehingga pabrikan hardware Android bisa mudah dikerjakan.
Framework atau  kerangka  kerja  sistem  operasi Android dikembangkan berdasarkan  kernel  Linux  dengan  berbagai  fitur  tambahan.  Fitur-fitur  ini dikembangkan secara open-source pula sehingga Anda dapat menambahkan atau memodifikasi sendiri.
Berbagai fitur yang ada, antara lain:
1. Android run-time , terdiri atas libraryJava dan Dalvikvirtual machine .
2. Open  Gl ( graphics  library ),  merupakan API ( Application  Program Interface ) yang digunakan untuk membuat grafis 2D dan 3D.
3. WebKit ,  merupakan  engine  dari  web  browser  yang  dapat  digunakan untuk  menampilkan  isi  website  dan  menyederhanakan  tampilan  dari proses loading.
4. SQLite ,  merupakan  engine  dari  relasional  database  yang  dapat diintegrasikan dengan aplikasi.
5. Media  framework ,  merupakan library yang  digunakan  untuk menjalankan dan merekam file audio atau video.
6. SSL ( Secure  Socket  Layer ),  merupakan library yang  digunakan  untuk keamanan internet ( internet security ).

## Gambar 2 Android Library
Berbagai  fitur-fitur  yang  ada  pada library yang  dapat  digunakan  secara langsung, antara lain:
1. Acitivity  Manager ,  digunakan  untuk  manajemen  siklus  hidup  dari activity .
2. Telephony  Manager ,  digunakan  untuk  akses  layanan  telepon  juga informasi  daftar  kontak,  seperti  nomor  telepon,  alamat,  dan  lain sebagainya.
3. ViewSystem ,  digunakan untuk  menangani view dan layout tampilan UI ( user interface ).
4. LocationManager ,  digunakan  untuk  menandai  lokasi  geografis pemegang device .

## 3. METODOLOGI PENELITIAN
a. Metode Pengumpulan Data
1. Metode Studi Literatur Melakukan  pengumpulan  data-data  atau  sumber-sumber  yang berhubungan dengan bidang teknologi atau berhubungan dengan judul tugas akhir  yang  bertujuan  untuk  membuat  laporan  dan  juga  untuk  menambah pengetahuan tentang bidang elektronika ataupun robot.
2. Metode Observasi
Melakukan  observasi  terhadap  robot  yang  sedang  di  uji  untuk mengetahui  kecocokan  perancangan  ataupun  algoritma  dengan  keinginan pengguna.
b. Metode Pengembangan Perangkat Lunak Metode Pengembangan Perangkat Lunak yang digunakan dalam membangun sistem ini menggunakan model Waterfall ( Classic Life Cycle ).

## 4. HASIL DAN PEMBAHASAN
Pada perancangan robot vacuum cleaner dibutuhkan sebuah gambaran aliran listrik  yang  berguna  untuk  memudahkan  instalasi  komponen-komponen  robot. Perancangan  sistem  elektronik  atau  gambaran  aliran  listrik  ini  terdiri  dari komponen-komponen robot direct current yaitu Arduino Uno , motor driver l298n, motor dc, limitswitch sensor, bluetooth hc-05, lcd display, button,relay 5v, vacuum cleaner.
Gambar 4 Diagram Sistem Elektronik Robot
Perancangan robot vacuum cleaner juga membutuhkan  perancangan sistem mekanik yang merupakan perancangan tempat letak komponen robot ataupun body robot. Perancangan sistem mekanik terdiri dari body lantai 1, body lantai 2, body lantai 3.
Pada body lantai 1 akan diletakkan komponen robot seperti motor DC, roda,
3 limit switch sensor, roda castor nylon, dan vacuum cleaner . Material body lantai 1  adalah  akrilik  yang  ketebalannya  3mm.  Ukuran  lebar  atau  diameternya  adalah 240mmx240mm. Dan ukuran lubang untuk meletakkan baut adalah 3mm.
Gambar 6 body lantai 2
Pada body lantai  2  akan  diletakkan  komponen  robot  seperti Arduino  uno , motor driver l298n, relay 5v, breadboard dan Bluetooth HC-05.  Material body lantai  2  adalah  akrilik  yang  ketebalannya  3mm.  Ukuran  lebar  atau  diameternya adalah 214mmx80mm. Dan ukuran lubang untuk meletakkan baut adalah 3mm.
Gambar 7 body lantai 3
Pada body lantai 3 akan diletakkan komponen robot seperti lcd ( liquid crystal display ),  baterai lithium  ion 11.1V,  DC to DC step  down  converter ,  saklar,  dan tombol auto . Material body lantai 2 adalah akrilik yang ketebalannya 3mm. Ukuran lebar  atau  diameternya  adalah  214mmx80mm.  Dan  ukuran  lubang  untuk meletakkan baut adalah 3mm.
Use Case Diagram di sini digunakan untuk memodelkan sistem robot vacuum cleaner dengan cara menggambarkan behavior / kelakuan sistem yang akan dibuat. Use Case Diagram di sini berguna untuk mengetahui fungsi apa saja yang ada di dalam  sebuah  sistem  dan  siapa  saja  yang  berhak  menggunakan  fungsi-fungsi tersebut.

## Gambar 8 Use case diagram
Flowchart di  sini  juga  digunakan  untuk  memodelkan  sistem  robot vacuum cleaner dengan  menggambarkan  alur  atau  rangkaian  proses  keseluruhan  sistem. Dari menghidupkan robot sampai otomatisasi robot atau pengontrolan robot.
Gambar 9 Flowchart Sistem Keseluruhan
Perancangan antar muka ini merupakan rancangan antar muka aplikasi yang mengontrol robot. Perancangan antar muka ini hanya terdiri dari satu activity atau satu  tampilan  dan  dua  dialog.  Dialog  pertama  adalah  dialog  koneksi  yang  akan
muncul  jika button  connect diklik,  Dialog  kedua  adalah  dialog input waktu otomatisasi pembersihan ruangan yang akan muncul jika button waktu otomatisasi diklik.
Gambar 10 Antar Muka Aplikasi
Setelah  perancangan  sistem  elektronik,  sistem  mekanik,  antar  muka  dan pemodelan sistem robot. Berikutnya adalah implementasi atau membangun robot dan membuat aplikasinya.
Gambar 11 Robot Bagian Depan dan Belakang
Pada gambar 11 bagian kiri, 3 kardus kecil depan berfungsi sebagai bumper dengan menggunakan 3 sensor limit switch . Apabila salah satu bumper menabrak maka robot akan mundur dan memilih jalan lain. 3 bumper ini hanya berfungsi pada otomatisasi pembersihan ruangan. Pada gambar 11 bagian kanan, komponen yang terletak di paling belakang adalah vacuum cleaner yang menggunakan dc motor 3v.
Setelah  merancang  dan  implementasi  maka  berikutnya  adalah  menguji perangkat  lunak    dan  perangkat  keras  robot vacuum  cleaner yaitu  merupakan pengujian terhadap aplikasi android dan robot vacuum cleaner yang telah dibangun sudah  sesuai  dengan  hasil  yang  diharapkan  atau  belum  yang  pengujiannya  dapat dilihat di tabel 1 untuk pengujian aplikasi dan tabel 2 untuk pengujian perangkat keras.  Metode  yang  digunakan  untuk  pengujian  adalah  metode blackbox yaitu pengujian yang dilakukan hanya mengamati hasil eksekusi melalui data uji.

## Tabel 1 Pengujian Aplikasi Android
No  Skenario Pengujian Hasil yang diharapkan Hasil Pengujian 1 Klik buttonbluetooth Muncul Dialog “ Select Device to Connect” Sesuai Harapan 2 Klik button scan Mencari Bluetooth sekitar yang  belum paired ,  dan
muncul di Available Devices Sesuai Harapan
3 Klik bluetooth yang tedapat dibawah available devices Pairing dengan Bluetooth tersebut  dan  setelah pairing sukses  muncul  di paired devices Sesuai Harapan 4 Klik Bluetooth yang terdapat dibawah paired devices Mengkoneksi dengan Bluetooth yang terdapat dirobot.  Jika  sukses  muncul dialog ” connection succesfull ”. Jika gagal muncul dialog “ connection failed ”
Sesuai Harapan
5 Lihat  tulisan No
Device Connected Jika terkoneksi dengan Bluetooth robot, muncul nama Bluetooth  robot .  Jika  tidak terkoneksi  dengan Bluetooth robot,  tulisan  tetap no  device connected Sesuai Harapan 6 Klik Button Up Menggerakan  robot  maju  ke depan Sesuai Harapan 7 Klik Button Down Menggerakan  robot  munder ke belakang Sesuai Harapan
8 Klik Button Left Menggerakan  robot  belok  ke kiri Sesuai Harapan 9 Klik Button Right Menggerakan  robot  belok  ke kanan Sesuai Harapan 10 Lepas Klik dari Button  Up,  Down, Left, Right Robot Berhenti di tempat Sesuai Harapan 11 Klik Switch vacuumon Menghidupkan vacuum cleaner Sesuai Harapan 12 Klik Switch vacuumoff Mematikan vacuum cleaner Sesuai Harapan 13 Klik button waktu otomatisasi Muncul dialog untuk memasukkan waktu otomatisasi dalam menit yang diinginkan Sesuai Harapan 14 Klik button send
yang terdapat di dialog waktu otomatisasi pembersihan ruangan Mengirimkan data waktu yang di input ke robot Sesuai Harapan 15 Klik button turn off Mengirimkan  data  waktu  “0” ke  robot  untuk  menghentikan otomatisasi robot Sesuai Harapan Tabel 2 Pengujian Robot
No  Skenario Pengujian Hasil yang diharapkan Hasil Pengujian 1 Tekan switchon/off Jika tekan on robot dihidupkan.  Jika  tekan off robot dimatikan Sesuai Harapan 2 Tekan Button Merah LCD  menampilkan  5  menit, 10  menit,  30  menit,  60  menit dan waktu countdown pemilihan waktu Sesuai Harapan
3 Tunggu 5 detik setelah menekan button merah Robot  akan  menggunakan waktu  yang  terdapat  di  LCD untuk otomatisasi pembersihan ruangan Sesuai Harapan 4 Tunggu 5, 10, 30, 60 menit  setelah  robot melakukan otomatisasi Robot akan berhenti Sesuai Harapan 5. KESIMPULAN
Berdasarkan perancangan dan pengujian robot vacuumcleaner yang telah di bangun maka penulis dapat mengambil beberapa kesimpulan yaitu sebagai berikut:
1. Robot vacuum cleaner yang di bangun dapat di kontrol pengguna serta dapat menyetel waktu otomatisasi pembersihan ruangan.
2. Robot vaccum  cleaner yang  di  bangun  dapat  otomatisasi  dalam pembersihan ruangan.
3. Otomatisasi  pembersihan  ruangan  kurang  efisien  karena  tidak  ada navigasi dalam pembersihan ruangan.
Setelah penulis merancang dan menguji robot vacuum cleaner , ada beberapa saran  yang  dapat  diusulkan  untuk  mengembangkan  robot vacuumcleaner yang dibangun adalah sebagai berikut:
1. Menambah raspberry  pi dan  kamera  untuk  menggunakan  komputer vision  sebagai  sensor  mendeteksi  sampah  dalam  navigasi  pembersihan ruangan.
2. Menambah charging port atau BMS (battery management system) agar baterai robot dapat di cas.
3. Menggantikan vacuum cleaner yang menggunakan dc motor 6v atau 12v agar kekuatan menghisap sampah lebih besar

## 6. DAFTAR PUSTAKA
Ardhi Setya S.T., M.Kom. & Dr. Ir. Sutiksno M.T., Perancangan dan Pembuatan Prototipe Alat Pembersih Lantai dengan Kendali dari Jaringan
Bluetooth, 2016, [Online] Tersedia di: lppm.stts.edu/publication/download?id=50, [diunduh: 20 Februari 2017]
Kadir Abdul, From Zero to a Pro Arduino, Penerbit Andi, 2015, Yogyakarta Nugroho Adi, Analisis dan Perancangan Sistem Informasi dengan Metodologi Berorientasi Objek, Informatika, 2004, Bandung
Tim EMS, Android All In One, PT Elex Media Komputindo, 2013, Jakarta
Vacuum Cleaner ,[Online] Tersedia di: https://en.wikipedia.org/wiki/Vacuum_cleaner[2017, Juli 23 / 22:53]
Zifkri Afwan, Hidayat Anton, Derisma, Rancang Bangun Robot Vacuum Cleaner Berbasis Mikrokontroler, 2015, [Online] Tersedia di: eprints.dinus.ac.id/16467/50/SM114.pdf, [diunduh: 20 Februari 2017]