© 2019 Pres Univ Press Publication, Indonesia

## SISTEM NAVIGASI MOBILE ROBOT DALAM RUANGAN BERBASIS AUTONOMOUS NAVIGATION
Dwiky Erlangga 1,a , Endang D 2,b , Rosalia H S 3,c , Sunarto 4,d ,
Kuat Rahardjo T.S 5,e , Ferrianto G 6,f
1 Jurusan Teknik Elektro Fakultas Teknologi Industri Universitas Trisakti
2 Jurusan Teknik Elektro Fakultas Teknologi Industri Universitas Trisakti
a dwikyerlangga@std.ac.id, b edjuana@trisakti.ac.id, c rosalia@trisakti.ac.id, d yuhaw@hotmail.com, e kuatrts@trisakti.ac.id, f ferrianto@trisakti.ac.id

## Abstrak.
Autonomous-navigation  kebutuhan  mutlak  dalam  mobile-robotic,  yang  terdiri  dari  empat komponen utama yaitu:  perception, localization, path-planning, dan motion-control.  Mobile robot membuat  peta  ruang  agar  dapat  melaksanakan  perintah  untuk  berpindah  dari  suatu  tempat  ke tempat  lain  dengan  metode  autonomous-navigation.  Pembuatan  peta  menggunakan  algoritma Simultaneous-Localization-and-Mapping(SLAM)  yang  mengolah  data  dari  sensor  RGB-D  camera dan  bumper  yang  di  konversi  ke  laser-scan  dan  point-cloud  digunakan  untuk  memperoleh perception. Sedangkan wheel-encoder dan gyroscope digunakan untuk mendapatkan data odometry yang digunakan untuk untuk membangun peta perjalanan dengan algoritma SLAM, gmapping dan melakukan autonomous-navigation. Sistem terdiri dari tiga sub-sistem yaitu: sensor sebagai input, single-board-computer  untuk  proses,  dan  actuator  sebagai  penggerak.  Autonomous-navigation diatur  melalui  navigation-stack  dengan  menggunakan  algoritma  Adaptive-Monte-Carlo- Localization(AMCL)  untuk  localization  dan  global-planning,  sedangkan  algoritma  Dynamic- Window-Approach(DWA) dengan Robot-Operating-System-(ROS) untuk local-planning. Hasil dari pengujian  menunjukkan  sistem  dapat  memberikan  data  depth  yang  dikonversi  ke-laser-scan,  data bumper,  dan  data  odometry  kepada  single-board-computer  berbasis  ROS  sehingga  mobile-robot yang  dikendalikan  secara  teleoperasi  dari  workstation  dapat  membangun  peta  grid  2  dimensi dengan akurasi total error rate sebesar 0.987%. Dengan menggunakan peta, data dari sensor, dan odometry  tersebut  mobile-robot  dapat  melakukan  autonomous-navigation  secara  konsisten  dan mampu  melakukan  path-replanning,  menghindari  rintangan-rintangan  statis  dan  terus  menerus melakukan localization untuk mencapai titik tujuan.
Kata kunci . Mobile-robot, Autonomous-navigation, path-replanning.

## Abstract.
Autonomous  navigation  is  absolutely  necessary  in  mobile-robotic,  which  consists  of  four main  components,  namely:  perception,  localization,  path-planning,  and  motion-control.  Mobile robots  create  maps  of  space  so  that  they  can  carry  out  commands  to  move  from  one  place  to another  using  the  autonomous-navigation  method.  Map  making  using  the  Simultaneous- Localization-and-Mapping  (SLAM) algorithm that processes data from the RGB-D camera sensor and bumper converted to laser-scan and point-cloud is used to obtain perception. While the wheel-

## Journal of Mechanical Engineering and Mechatronics 2019
encoder  and  gyroscope  are  used  to  obtain  odometry  data  which  is  used  to  construct  travel  maps with the SLAM algorithm, gmapping and performing autonomous navigation. The system consists of  three  sub-systems,  namely:  sensors  as  inputs,  single-board  computers  for  processes,  and actuators  as  movers.  Autonomous-navigation  is  regulated  through  the  navigation-stack  using  the Adaptive-Monte-Carlo-Localization (AMCL) algorithm for localization and global-planning, while the Dynamic-Window-Approach (DWA) algorithm with Robot-Operating-System-(ROS) for local  - planning. The results of the test show the system can provide depth-data that is converted to laser- scan,  bumper  data,  and  odometry  data  to  single-board-computer-based  ROS  so  that  mobile- controlled  teleoperating  robots  from  workstations  can  build  2-dimensional  grid  maps  with  total accuracy error rate of 0.987%. By using maps, data from sensors, and odometry the mobile-robot can  perform  autonomous-navigation  consistently  and  be  able  to  do  path-replanning,  avoid  static obstacles and continue to do localization to reach the destination point.
Keywords. Mobile-robot, Autonomous-navigation, path-replanning.

## I. PENDAHULUAN
Perkembangan  teknologi  digital  telah  meningkatkan  kemampuam  dari  mikroprosesor sehingga  dapat  membentuk  single  board  computer,  yang  memungkinkan  membentuk  algorithma rumit  yang  dibutuhkan  membentuk  robot.  Mobil  robot  yang  dimulai  dengan  pergerakan  manual, dikembangkan  menjadi  line  follower  dan  saat  sekarang  telah  memungkinkan  untuk  melakukan penelitian dalam membentuk Mobile-Robot yang bergerak secara autonomous.
Kebutuhan akan Autonomous-Mobile-robot dalam ruangan dapat dipergunakan antara lain sebagai pengantar  barang(R.  Siegwart,2011),  seperti  misalnya  pada  restoran;  super  market;  resepsionis  di hotel;  pemandu  wisata  didalam  ruang  museum,  dan  home  care  robot  (M.Boisy,2007)  untuk memberikan bantuan pada orang lanjut usia maupun penyandang disabilitas, dan lain-lain.

## Studi Pustaka:
Untuk  dapat  melakukan  fungsi-fungsi  agar  dapat  beroperasi  di  dalam  ruangan  secara autonomous, memerlukan empat komponen utama yaitu:
1)  Perception:  robot  harus  dapat  membentuk  peta  ruangan  tempat  beroperasi  dan  menganalisa rintangan  dan  jalan  yang  dapat  dilalui  menuju  lokasi  yang  ditentukan  dalam  ruang.  Dalam membentuk peta menggunakan RGB-D camera yang merupakan camera 3D yang digunakan untuk mengenali lingkungan dengan membaca secara depth level dari objek-objek pada lingkungan. Hasil pembacaan tersebut diproses oleh single board computer dikonversi menjadi pembacaan laser scan untuk  membentuk  peta  ruangan  (gmapping).  Dengan  Algoritma  simultaneous  localization  and mapping  (SLAM)  gmapping  diolah  menggunakan  versi  dari  Rao-Blackwellized  Particle  Filter untuk mengkonversi gambar menjadi grid map yang menghasilkan  pengurangan ukuran sampling, sehingga secara efektif mengurangi waktu komputasi (G. Grisetti, 2005)(G. Grisetti, 2007).
2)  Localization:  Setelah  robot  bergerak,  harus  mampu  untuk  mengidentifikasi  posisinya  terhadap tujuan (odometry) dan mengevaluasi untuk menghindari rintangan  yang ada (T.Pire, 2015). Untuk mengetahui  lokasi  yang  telah  ditempuh,  selain  menggunakan  RGB-D  camera  untuk  mengenali lingkungan  dengan  membaca  depth  level  dari  objek-objek  pada  lingkungan  membutuhkan  sensor

## Journal of Mechanical Engineering and Mechatronics 2019
wheel encoder dan gyroscope untuk mendapatkan data odometry yang berupa posisi, orientasi, dan kecepatan  robot,  dari  motor  penggerak  robot  yang  digerakkan  oleh  driver  motor  di  single  board computer.  Untuk  mencegah  terjadinya  benturan  akibat  perubahan  mendadak  dari  peta  ruangan, perlu  ditambah  dengan  sensor  Bumper  yang  berfungsi  untuk  melindungi  robot  dari  benturan terhadap  objek  yang  muncul  mendadak  maupun  objek  yang  tidak  dapat  dideteksi  RGB-D  camera karena transparent maupun terlalu rendah (dianggap datar).
3) Path planning: Agar robot dapat menuju lokasi yang diperintahkan, harus dapat menentukan jalur jalan  yang layak dan optimal dari lokasinya saat  ini (path  planning) untuk  menuju ke tujuan  yang ditentukan  sekaligus  menghindari  rintangan.  Path  planning  ini  diperoleh  menggunakan  gmaping dan  Robot  Operating  System  (ROS)    yang  memanfaatkan  object-oriented  programming  (OOP), dengan mengolah objek-objek atau data untuk dibandingkan dengan data yang diperoleh dari sistem modular  Sensor  untuk  mengestimasi  depth  per  piksel  berdasarkan  referensi  pattern  yang  paling sesuai  dengan  pattern  yang  telah  diperoleh  dari  proyeksi  (R.  Zapata,  2012).  ROS  adalah  open- source  middleware  framework  berbasis  Unix  memiliki  arsitektur  modular,  fleksibel  dan  robust. pada  aplikasi  robotika  (Q.  Morgan,  2012).  Struktur  dari  ROS  mencakup  tiga  level  konsep  yang berbeda yaitu filesystem level, computational graph level, dan community level (F. Enrique, 2015) yang  dipakai  untuk  membentuk  global  planning  sebagai  path  planning.  Sedangkan  setelah  robot berjalan, untuk membentuk Local Path Planing dilakukan dengan menggunakan algorithma Monte carlo  localization  (MCL)  adalah  algoritma  localization  yang  merepresentasikan  belief 𝑏𝑒𝑙 ( 𝑥 ) dengan  partikel  di  dalam  Adaptive  monte  carlo  localization  (AMCL)  yang  di  implementasikan dengan metode Kullback-Leibler divergence KLD-sampling (S. Thrun, 2005) (D. Fox, 2003), serta untuk  dapat  menghindari  rintangan  di  dalam  local  planning  menggunakan  algoritma  Dynamic Window Approach (DWA).
4)  Motion  control:    robot  harus  dapat  melakukan  manuver  ke  tujuan  berdasarkan  peta  yang  telah dibuat.  Robotika  adalah  bidang  ilmu  yang  merasakan,  mengamati,  dan  memanipulasi  dunia  fisik melalui peralatan-peralatan penggerak (actuator) yang dikendalikan computer (S. Thrun, 2015).

## II. METODOLOGI PENELITIAN
Dalam implementasi “Sistem Navigasi Mobile Robot dalam ruangan berbasis Autonomous Navigation” membutuhkan tiga sub sistem perangkat keras yaitu: sub sistem sensor yang terdiri dari RGB-D camera, Bumper, Gyroscope dan Wheel  encoder  yang akan memberikan masukan kepada sub sistem navigation command yang mengunakan single board computer untuk mengolah seluruh data  yang  masuk  melalui  sensor.  Hasil  pengolahan  data  navigasi  yang  merupakan  perintah  untuk dikirim  ke  sub  system  actuator  yang  akan  menjalankan  robot  menuju  lokasi  yang  diperintahkan seperti dapat dilihat pada gambar 1.
Dari  ketiga  sub  system  tersebut,  yang  paling  berperan  penting  adalah  sub  system  navigation command  yang  mengolah  berbagai  masukan  dari  sub  system  sensor  menjadi  perintah  untuk menggerakkan sub system actuator yang menjalankan robot.
Sub system navigation command harus menggunakan sistem operasi ROS untuk memproses data di dalam  jaringan  peer-to-peer  agar  terjadi  interaksi  antara  sistem  dengan  sensor  dan  actuator  dan sesuai  algorithma  yang  diberikan  melalui  SLAM  untuk  membuat  peta  ruang  dan  MCL  untuk menentukan  path  dari  titik  awal  ke  tujuan  yang  diperintahkan  dan  AMCL  untuk  melakukan perubahan path jika menghadapi rintangan dalam perjalanan. ROS memiliki:
a. Nodes: adalah sebuah atau suatu kelompok  I/O yang ditugaskan untuk melayani sebuah process yang  merupakan  bagian  dari  robot  dimana  data  diterima  untuk  diproses  dan  hasil  komputasi dikirimkan ke sub system actuator untuk melakukan tugasnya.
b. Master: program utama yang berfungsi untuk mempersiapkan koneksi antara node.
c. Parameter Server: menyediakan nilai acuan suatu node ketika node sedang aktif dan melakukan komputasi dengan node lainnya.
d.  Message  (Pesan):  ROS  memiliki  banyak  tipe  message,  dan  user  membuat  tipe  message  sendiri agar Node dapat berkomunikasi satu dengan lainnya.
e. Topics (Topik): Setiap message memiliki nama topic (publish topic) yang disiapkan, agar dapat diarahkan oleh ROS untuk pelaksanaan suatu fungsi.
f. Services: pelayanan publish topic dari suatu node ke seluruh node, maupun dari sebuah node ke node tertentu menggunakan unique name.
g.  Bags:  wadah  untuk  menyimpan  dan  memutar  ulang  data  ROS  message.  Bag  digunakan  untuk menyimpan data-data sensor, yang diperlukan untuk mengembangkan dan menguji algoritma.
Koordinasi  antar  berbagai  sub  system  tersebut,  dimungkinkan  melalui  masing-masing  program yang dibuat dalam membentuk fungsi robot didalam ROS.
Gambar.1 Diagram sistem navigasi mobile robot dalam ruangan berbasis Autonomous Navigation
Simultaneous-Localization-and-Mapping (SLAM) Gmapping Data yang berasal dari RGB-D camera dipergunakan untuk membuat pemetaan ruangan secara global, program SLAM dipergunakan untuk membentuk gmapping ruangan, dengan teknik mapping occupancy grid map yang memiliki alur seperti pada flowchart pada gambar 2. Flowchart menjelaskan proses SLAM dengan algoritma gmapping membentuk peta ruangan.

## Monte Carlo Localization (MCL)
Gmapping oleh program yang dimasukkan pada algorithma MCL dihitung untuk membentuk global path seperti dapat dilihat pada Gambar 4. Flowchart proses global planning.
Adaptive Monte Carlo Localization (AMCL)
AMCL melakukan perhitungan untuk membentuk local path yang akan dilintasi agar mobile robot dapat melakukan autonomous navigation seperti dapat dilihat pada gambar 3. Flowchart proses AMCL.
AMCL setiap saat melakukan localization untuk menentukan belief pada waktu t 𝑏𝑒 ( 𝑥 ) dengan menggunakan particle filter dimana belief robot terhadap posisinya pada real world environment diestimasi oleh probability distribution dengan data-data yang diperoleh dari gyroscope dan wheel encoder, sehingga apabila menemui rintangan dapat melakukan perhitungan ulang untuk mendapatkan local path yang baru untuk mencapai tujuan seperti pada Gambar 5. Flowchart proses local planning.
Gambar 2. Flowchart proses SLAM gmapping

## Journal of Mechanical Engineering and Mechatronics 2019
Gambar 2. Flowchart proses SLAM gmapping
Gambar 4. Flowchart proses global
Gambar 5. Flowchart proses local

## Journal of Mechanical Engineering and Mechatronics 2019
Pengujian dilakukan dalam ruangan seperti pada gambar 6. Photo ruang pengujian. Dengan robot seperti pada gambar 7. Photo Mobile Robot.
Pengujian  ditujukan  untuk  mengevaluasi  kemampuan  mobile  robot  dalam  melaksanakan  perintah “Sistem  Navigasi  Mobile  Robot  dalam  ruangan  berbasis  Autonomous  Navigation”,  pengujian dilakukan di dalam ruangan seperti pada gambar  6. Menggunakan Mobile robot seperti gambar 7. Sedangkan gambar 8. merupakan denah ruang pengujian yang menunjukkan lokasi pengujian yang harus dilalui oleh mobile robot.
Pada pengujian terhadap program SLAM dalam membentuk Global map (Gmapping) diperlihatkan pada gambar 9.
Pengujian dengan perintah untuk berkeliling dari titik A menuju B lanjut menuju C menuju ke  D  dan  kembali  ke  A.  Pengujian  dilakukan  sebanyak  5  kali  dengan  kecepatan  mobile  robot dibatasi  dengan  kecepatan  maksimal  0.5m/s,  hasil  pengukuran  waktu  tempuh  serta  kemampuan menghindari rintangan seperti pada tabel 1.
Pengujian ketepatan mencapai posisi tujuan yang diperintahkan, diperoleh rata rata ketepatan untuk mencapai  lokasi  yang diperintahkan memiliki  ketepatan  yang baik  yaitu  dengan error rate sebesar 0,987 %
Tabel 1. Data hasil pengukuran wktu tempuh  mobile robot
No Ke Titik Waktu Tempuh (s) Tabrakan Registrasi rintangan 1. B 24.74  Tidak Ya C 8.11   Tidak Ya D 14.23  Tidak Ya Gambar 6.  Photo ruang pengujian Gambar 7. Photo Mobile Robot Gambar 8. Sketsa ruang Pengujian Gambar 9. Global mapping

## IV. KESIMPULAN
Dari  hasil  penelitian  yang  merupakan  Tugas  Akhir  dari  Dwiky  Erlangga  ini,  diperoleh kesimpulan sebagai berikut:
1.  Mobile  robot  yang  di-teleoperasikan  oleh  user  melalui  keyboard  pada  workstation  dapat membangun  map  dari  area  yang  tidak  diketahui  menggunakan  algoritma  SLAM  gmapping memanfaatkan data depth dari sensor RGB-D camera yang dikonversi ke laser scan dengan akurasi tinggi meskipun mengalami odometry drift error yang mengakibatkan pose mobile robot mengalami jump.
2.  Mobile  robot  dapat  melakukan  localization  secara  terus-menerus  menggunakan  algoritma AMCL, untuk kemudian melakukan global planning serta mampu untuk melakukan path replanning ketika global path awal tidak dapat mencapai titik tujuan.
3.  Mobile  robot  dapat  menghindari  objek  rintangan  statis  yang  tidak  terdapat  pada  peta  dengan melakukan local planning oleh local planner forward simulation menggunakan algoritma Dynamic Window Approach ketika melakukan autonomous navigation.
4. Mobile robot dapat melakukan autonomous navigation secara konsisten ke 4 titik sebanyak lima putaran dengan total error rate sebesar 0.987%.

## Saran
Untuk  pengembangan  lebih  lanjut  pada  penelitian  selanjutnya  dapat  meningkatkan fleksibilitas navigasi mobile robot dengan mengembangkan kemampuan mapping dari mobile robot ketika melakukan navigasi terhadap objek-objek statis yang ada ketika peta dibuat sehingga mobile robot dapat mengenali perpindahan objek-objek statis tersebut dan memperbarui posisi objek-objek tersebut pada peta.
A 11.45   Tidak Ya 2 B 24.46  Tidak Tidak C 7.56  Tidak Tidak D 14.84  Tidak Tidak A 11.12  Tidak Tidak 3 B 24.20  Tidak Tidak C 7.63  Tidak Tidak D 13.78  Tidak Tidak A 10.84  Tidak Tidak 4 B 23.96  Tidak Tidak C 7.48  Tidak Tidak D 10.65  Tidak Tidak A 24.14  Tidak Tidak 5 B 13.80  Tidak Tidak C 7.54  Tidak Tidak D 13.72  Tidak Tidak A 10.60  Tidak Tidak

## DAFTAR PUSTAKA
a. R.  Siegwart,  “Introduction  to  Autonomous  Mobile  Robots”,  Cambridge,  Massachusetts.
Amerika Serikat : MIT Press, 2011, bab 1, hal.5
b. M. Boisy, et al., “Telepresence Robot for Home Care Assistance”, AAAI Spring Symposium:
Multidisciplinary  Collaboration  for  Socially  Assistive  Robotics.  Palo  Alto,  California.  2007.  Hal: 50 – 55
c. T.Pire  et  al.,  “Stereo  Parallel  Tracking  and  Mapping  for  robot  localization”,  IEEE/RSJ
International Conference on Intelligent Robots and Systems (IROS), 2015. Hal. 7478
d. R.  Zapata  et  al.,  “Self-adaptive  Monte  Carlo  Localization  for  Mobile  Robots  Using  Range Finders”, Robotica, 2012, hal. 229-244.
e. Q.    Morgan  et  al.,  “ROS:  an  open-source  Robot  Operating  System”,  dipresentasikan  pada ICRA workshop on open source software, 2009, hal. 5 – 10.
f. F.  Enrique  et  al,  “Learning  ROS  for  Robotics  Programming”,  Edisi  kedua,  Birmingham,
Inggris: Packt Publishing, 2015, bab 1-2, hal. 23-77.
g. S.  Thrun  et  al.,  “Probabilistic  Robotics”,  Cambridge,  Massachusetts.  Amerika  Serikat:  MIT
Press, 2005, bab 1, bagian 1-2, hal. 3-8.
h. G. Grisetti et al., “Improved Techniques for Grid Mapping With Rao-Blackwellized Particle
Filters”, IEEE Transactions on Robotics, 2007, hal. 34-46.
i. G. Grisetti et  al.,  “Improving Grid-based SLAM with  Rao-Blackwellized Particle Filters by Adaptive  Proposals  and  Selective  Resampling”,  dipresentasikan  pada    IEEE  International Conference on Robotics and Automation, Barcelona, 2005, hal.24322437.
j. S.  Thrun  et  al.,  “Probabilistic  Robotics”,  Cambridge,  Massachusetts.  Amerika  Serikat:  MIT
Press, 2005, bab 8, bagian 2, hal. 250-267.
k. D. Fox, “Adapting the Sample Size in Particle Filters Through  KLD-Sampling”, Internation
Journal of Robotics Research, 2003, hal. 1-27