## IMPLEMENTASI METODE LOGIKA FUZZY PADA KONTROL KESEIMBANGAN ROBOT MOBIL BERODA DUA

## Budi Cahyo Wibowo
Mahasiswa Teknik Elektro S1, Fakultas Teknik Universitas Muria Kudus Email: royyan.myson@gmail.com

## Mohammad Iqbal
Dosen Program Studi S1 Teknik Elektro, Fakultas Teknik Universitas Muria Kudus E-mail: iqbal.umk@gmail.com

## ABSTRAK
Model  transportasi  dengan  menggunakan  dua  roda  dewasa  ini  sudah  mulai  diteliti,  fokus  dari  penelitian  yang telah  dilakukan  adalah  bagaimana  menjadikan  robot  dua  roda  ini  mampu  menjaga  keseimbangannya  sendiri,  banyak metode kontrol yang digunakan untuk menentukan optimasi kendali yang baik sehingga didapatkan nilai respon yang baik antara  pembacaan  sensor  dengan  reaksi  aktuator  (Motor).  Dengan  metode fuzzy  logic yang  meliputi  beberapa  tahapan diantaranya adalah menentukan nilai crisp input yang harus difuzzifikasi kemudian output dari fuzzifikasi ini diteruskan ke proses  inferensi  yang  didalamnya  terdapat  beberapa fuzzy  logic  rules kemudian output inferensi  diteruskan  ke  proses defuzzifikasi untuk diubah menjadi keluaran (crisp output) untuk menggerakkan motor. Dengan metode kontrol fuzzy logic ini  robot  mobil  beroda  dua  mampu  menjaga  keseimbangannya  dengan  baik  dan  waktu  respon  yang  dibutuhkan  untuk kembali  ke  kondisi  seimbang  ketika  diganggu  dengan  sudut  +5 o adalah  0,7S,  dan  ketika  diganggu  dengan  sudut  +10 o adalah 0,8S. Kata kunci: Transportasi, Logika Fuzzy , Respon Waktu

## ABSTRACT
Transportation model using two wheels these days have started investigation, the focus of research has been carried out is how to make two wheels robot is able to keep his balance it self, many control methods are used to determine a good control optimization to obtain a good response value between readings sensors with reaction of actuator (motor). With fuzzy logic method that includes several stages such as determining the values of crisp input must be fuzzification then passed to the inference process in which there are some fuzzy logic rules then  forwarded  to  the  output  defuzzification  process  to  be  transformed  into  outputs  (crisp  output)  to  drive  the motor.With  fuzzy  logic  control  method  is  a  two-wheeled  mobile  robot  is  able  to  maintain  a  good  balance  and response time it takes to return balance condition when disturbed by +5 o angle is 2mS, and when disturbed by +10 o angle is 3mS . Keywords : Transportation, Fuzzy Logic, Response Time

## 1. PENDAHULUAN
a. Latar Belakang
Perkembangan  teknologi  elektronika  khususnya  robotika  telah  menjadikan  kehidupan  manusia  menjadi lebih mudah. Saat ini perkembangan dunia robotika telah mampu berperan dalam membantu aktifitas kehidupan manusia.  Namun    sebagian  juga  ada  yang  dimanfaatkan  sebagai  hobi  dan  media  pembelajaran  yang  salah  satu aplikasinya  adalah  robot  keseimbangan  beroda  dua  ini.  Salah  satu  cara  untuk  menambah  tingkat  kecerdasan sebuah robot adalah dengan  menambah tingkat  kecerdasan buatan pada  robot tersebut  yaitu dengan  memasang sensor  –  sensor  dan  kontrol  yang  diprogram  pada central  processing  unit- nya  dalam  hal  ini  adalah mikrokontroler[4].  Secara  umum  konsep  robot  modern  harus  memenuhi  beberapa  karakteristik  diantaranya sensing, mampu bergerak, cerdas dan membutuhkan energi yang memadai[2]. Sejak Dean Kamen,  2001 telah  mendeklarasikan  SEGWAY sebagai ”The first Self-balancing, electric powered transportation device” Kemudian diikuti oleh penelitian-penelitian sejenis di berbagai negara. Hal  ini tentunya dipicu oleh perkembangan teknologi elektronika, robotika serta IT yang cukup pesat di seluruh dunia. Self balancing robot merupakan robot yang memiliki prinsip kerja yang hampir mirip dengan sistem pendulum terbalik[3].
Banyaknya  penelitian  yang  telah  dilakukan  yang  berkaitan  dengan  robot  beroda  dua  seperti  halnya penelitian  yang  telah  dilakukan  oleh  andra  laksana,  iwan  setiawan  dan  sumardi  mahasiswa  Teknik  Elektro
Universitas  Diponegoro  pada  tahun  2010  dengan  judul balancing robot  beroda  dua  menggunakan  metode kendali proporsional integral, yang mana dalam penelitian tersebut digunakan sensor accelerometer dengan tipe MMA7260  untuk  mendeteksi  sudut  elevasi  terhadap  bumi  yang  terbaca,  dan  dalam tuning parameternya dilakukan  dengan  cara trial  and  error .  Dalam  penelitian  tersebut  diperoleh  kesimpulan  bahwa  ketika  robot diletakkan  awal  pada  posisi  sudut  15 o maka  sistem  memiliki  respon  waktu  0,35  detik  untuk  menuju  ke setting point , sedangkan pada peletakkan posisi awal pada sudut -5 o dibutuhkan waktu 1 detik untuk menuju ke setting point [4].
Dengan  alasan  diatas  maka  pada  penelitian  ini  akan  didesain  suatu  kontrol  keseimbangan  mobil  robot beroda  dua  dengan  menggunakan  metode  logika fuzzy dan  diharapkan  dengan  metode  kontrol  logika fuzzy ini akan  diperoleh  respon  waktu  yang  lebih  baik  yakni  waktu  yang  dibutuhkan  robot  mobil  ketika  memperoleh gangguan  sampai  kembali  ke  posisi  seimbang,  dan  pada  penelitian  ini  akan  digunakan  sensor accelerometer dengan tipe MMA7455L.

## b. Tujuan
Berdasarkan  uraian  pada  latar  belakang  di  atas,  maka  pembahasan  dalam paper ini  bertujuan mengimplementasikan metode kontrol logika fuzzy untuk mendapatkan respon waktu yang lebih baik yaitu waktu yang dibutuhkan robot mobil kembali ke posisi seimbang setelah memperoleh gangguan.

## 2. TINJAUAN PUSTAKA
a. Sensor Accelerometer MMA7455L
Dalam perancangan kontrol keseimbangan robot mobil beroda dua ini menggunakan model sistem kontrol close loop yang menggunakan sensor accelerometer MMA7455L sebagai umpan balik dalam sistem kontrol untuk mengindera kemiringan body  robot . Acceleromete r  adalah  sebuah tranduser yang  berfungsi  untuk  mengukur  percepatan, mendeteksi dan mengukur getaran, ataupun untuk mengukur percepatan akibat gravitasi bumi[1].
Prinsip  kerja  dari accelerometer MMA7455L  ini  didasarkan  pada  deteksi  perubahan  nilai  kapasitansi  yang dikemas  dalam  bentuk  IC.  Pengindera  perubahan  nilai  kapasitansi  dibentuk  dari  bahan  jenis  semikonduktor (polysilicon) .  Hal  ini  dapat  digambarkan  seperti  halnya  satu  set  balok  yang  menempel  pada  pusat  massa  yang bergerak bebas yang berada diantara dua balok tetap. Balok yang bergerak bebas ini dapat dibelokkan dari posisi awal balok ini berada, perubahan posisi balok inilah yang dijadikan sebagai nilai percepatannya[6].
Gambar 1. Prinsip Kerja Accelerometer MMA7455L[6]
Ketika balok yang melekat pada pusat massa bergerak, maka jarak antara balok yang berada pada pusat massa dengan balok tetap akan berubah, balok yang bergerak bebas akan dekat dengan satu sisi balok tetap dan akan menjauhi satu sisi yang lain. Perubahan jarak dari ketiga balok ini yang digunakan untuk menentukan nilai akselerasinya.  Balok  yang  berada  di  tengah  bergerak  dengan  percepatan,  jarak  antara  balok  berubah  dan  nilai kapasitansi juga akan berubah,
Sehingga nilai kapasitansi dinyatakan dengan C = Aε/D, dimana: A = area balok ε  = konstanta dielektrika D = jarak diantara balok ASIC (Application  Spesific  Integrated  Circuit) menggunakan  teknik  pensaklaran  kapasitor  untuk mengukur perubahan jarak balok – balok kapasitor (dalam datasheet sering di sebut dengan g-cell )  tersebut dan mengekstrak  data  percepatan  dari  perbedaan  nilai  kapasitansi  dua  kapasitor  tersebut.  ASIC  juga  menyediakan keluaran digital yang sebanding dengan percepatan[6].
Gambar 2. (a) Konfigurasi Pin – pin dan (b) Bentuk Fisik Modul Accelerometer MMA7455L [6]
b. Fuzzy Logic
Fuzzy  logic pertama  kali  dikenalkan  kepada  publik  oleh  Lotfi  Zadeh,  seorang  profesor  di University  of California di  Berkeley. Fuzzy  logic digunakan  untuk  menyatakan  hukum  operasional  dari  suatu  sistem  dengan ungkapan bahasa, bukan dengan persamaan matematis. Banyak sistem yang terlalu kompleks untuk dimodelkan secara  akurat,  meskipun  dengan  persamaan  matematis  yang  kompleks[6].  Pendekatan fuzzy melibatkan  aturan- aturan yang dinyatakan dalam kata-kata dan tidak memerlukan presisi yang tinggi serta ada toleransi untuk data yang kurang tepat. Struktur dasar sebuah pengendali Fuzzy diperlihatkan pada Gambar 3.
Gambar 3. Struktur Dasar Pengendali Fuzzy[6]

## 3. METODOLOGI PENELITIAN
Metode yang digunakan dalam penelitian ini terdiri dari langkah – langkah sebagai berikut:
a. Metode pengumpulan data yang dilakukan dengan mempelajari literatur – literatur pada penelitian sebelumnya
b. Membuat prototype robot mobil beroda yang akan dijadikan sebagai objek penelitian
c. Melakukan ujicoba pembacaan data sensor accelerometer MMA7455L
d. Merancang desain kontrol Logika Fuzzy yang akan di implementasikan dalam sistem
e. Merancang software komputer untuk pembacaan data respon kontrol terhadap gangguan.
f. Melakukan ujicoba terhadap kontrol keseimbangan robot mobil beroda dua
4. HASIL DAN PEMBAHASAN
a. Perancangan Fuzzy Logic Controller
Sistem dalam penelitian ini dirancang dengan mengimplementasikan logika fuzzy yang terdiri dari dua input yaitu input error dan input del_error_prev . Input error adalah data pembacaan sensor accelerometer MMA7455L sedangkan
(b)
(a)
input  del_error_prev adalah input  error dikurangi error sebelumnya.  Dan  terdiri  dari  satu output berupa  nilai  respon kecepatan motor DC.
Dalam perancangan kontrol keseimbangan robot mobil beroda dua dengan menggunakan logika fuzzy ini dilakukan pendekatan dengan menggunakan himpunan fuzzy bentuk segitiga (a,b,c). Dengan persamaan[1]:
µ F (x) = (1)
Input  error  dan  del_error_prev kemudian  dijadikan  sebagai  masukan crisp untuk  proses  fuzzifikasi  dalam menentukan  besaran  RPM  motor  melalui  pengaturan  PWM (Pulse  Width  Modulation) dan  arah  putar  motor  untuk memposisikan  robot  mobil  dalam  kondisi  seimbang.  Adapun  analisa  dari  proses  fuzzifikasi  untuk  kedua input adalah sebagai berikut: a. Input error
Input error ini didasarkan pada pembacaan data oleh sensor accelerometer MMA7455L yang berupa data desimal dengan range terbaca  pada prototype mobil  robot  antara  -50  s/d  50, input  error ini  kemudian  dibagi  dalam  5 himpunan fuzzy , yaitu: NB (Negative Big) , NS (Negative Small) , ZE (Zero Error) , PS (Positive Small) , PB (Posistive Big) . Himpunan fuzzy NB akan  memiliki domain [-50, -35] dimana derajat keanggotan NB tertinggi (=1) terletak pada nilai (-50) -  (-47). Himpunan fuzzy NS memiliki domain [-45, 0] dimana derajat keanggotaan NS tertinggi (=1) terletak pada nilai -24. Himpunan fuzzy ZE memiliki domain [-35, 35] dimana derajat keanggotaan ZE tertinggi (=1) terletak  pada  nilai  0.  Himpunan fuzzy PS  memiliki  domain  [0,  45]  dimana  derajat  keanggotaan  PS  tertinggi  (=1) terletak pada nilai 24. Himpunan fuzzy PB memiliki domain [35, 50] dimana derajat keanggotaan PB tertinggi (=1) terletak pada nilai 45 – 50. Input error dipresentasikan dengan fungsi keanggotaan trapesium dan segitiga seperti gambar 4 dibawah ini.
0 0.1 0.3 0.2 0.5 0.4 0.6 0.7 0.9 0.8 1 -50 -45 -40 -35 -30 -25 -20 -15 -10 -5 0 5 10 15 20 25 30 35 40 45 50 NB NS ZE PS PB Gambar 4. Himpunan Fuzzy Untuk Input Error Keterangan: NB  = Negative Big NS = Negative Small ZE = Zero Error PS = Positive Small PB = Positive Big Persamaannya adalah:
µNB [x] = (2) µNS [x] = ; (3) µZE [x] = ;
(4) µPS [x] =
(5)
µPB [x] =
(6)
b. Input Del_error_prev
Input Del_error_prev merupakan crisp input kedua yang diperoleh dari nilai input error dikurangi nilai input error sebelumnya.  Seperti  halnya input  error , input  del_error_prev juga  dibagi  dalam  5  himpunan fuzzy .  yaitu:  PNB (Previous Negative Big) , PNS (Previous Negative Small) , PZE (Previous Zero Error) , PPS (Previous Positive Small) , PPB (Previous Posistive  Big) .  Himpunan fuzzy PNB akan  memiliki domain [-50,  -35] dimana derajat keanggotan PNB tertinggi (=1) terletak pada nilai (-50) -  (-47). Himpunan fuzzy PNS memiliki domain [-45, 0] dimana derajat keanggotaan  PNS  tertinggi  (=1)  terletak  pada  nilai  -24.  Himpunan fuzzy PZE  memiliki  domain  [-35,  35]  dimana derajat keanggotaan PZE tertinggi (=1) terletak pada nilai 0. Himpunan fuzzy PPS memiliki domain [0, 45] dimana derajat keanggotaan PPS tertinggi (=1) terletak pada nilai 24. Himpunan fuzzy PPB memiliki domain [35, 50] dimana derajat  keanggotaan  PPB  tertinggi  (=1)    terletak  pada  nilai  45  –  50. Input  error dipresentasikan  dengan  fungsi keanggotaan trapesium dan segitiga seperti gambar 5 dibawah ini.
x ≤ -45
-45 ≤ x ≤ -35
x  ≥ -35 x ≤ -45 atau x ≥ 0 -45 ≤ x ≤ -35 -35 ≤ x ≤ 0 x ≤ -35 atau x ≥ 35 -35 ≤ x ≤ 0 0 ≤ x ≤ 35 x ≤ 0 atau x ≥ 45 0 ≤ x ≤ 35 35 ≤ x ≤ 45
x ≤ 35
35 ≤ x ≤ 45 x ≥ 45
0 0.1 0.3 0.2 0.5 0.4 0.6 0.7 0.9 0.8 1 -50 -45 -40 -35 -30 -25 -20 -15 -10 -5 0 5 10 15 20 25 30 35 40 45 50 PNB PNS PZE PPS PPB Gambar 5. Himpunan Fuzzy Untuk Input Del_error_prev Keterangan: PNB = Previous Negative Big PNS = Previous Negative Small PZE = Previous Zero Error PPS = Previous Positive Small PPB = Previous Positive Big
Persamaannya adalah:
µPNB [x] =
(7)
µPNS [x] = ; (8) µPZE [x] = ;
(9)
µPPS [x] = (10)
µPPB [x] =
(11) x ≤ -45 -45 ≤ x ≤ -35
x  ≥ -35
x ≤ -45 atau x ≥ 0 -45 ≤ x ≤ -35
-35 ≤ x ≤ 0
x ≤ -35 atau x ≥ 35
-35 ≤ x ≤ 0
0 ≤ x ≤ 35
x ≤ 0 atau x ≥ 45
0 ≤ x ≤ 35
35 ≤ x ≤ 45
x ≤ 35
35 ≤ x ≤ 45
x ≥ 45
Setelah  proses  fuzzifikasi  selesai  kemudian  dilanjutkan  dengan  tahapan  berikutnya  yaitu  proses  inferensi  yang termasuk didalamnya adalah mendesain Fuzzy Logic Rule . Berikut ini adalah desain dari Fuzzy Logic Rule yang diterapkan dalam robot.
Tabel 1. Fuzzy Logic Rule NB NS ZE PS PB PNB CWB CWB CWS Z CCWS PNS CWB CWS Z Z CCWS PZE CWB CWS Z CCWS CCWB PPS CWS Z Z CCWS CCWB PPB CWS Z CCWS CCWB CCWB Keterangan: CWB = ClockWise Big CWS = ClockWise Small Z = Zero CCWS = Contra ClockWise Small CCWB = Contra ClockWise Big
Kemudian  memasuki  tahap  berikutnya  adalah  proses  defuzzifikasi,  dalam  proses  defuzzifikasi  ini  kami menggunakan metode singleton dari sugeno, adapun desain dari proses defuzzifikasi ini digambarkan sebagai berikut:
0 0.1 0.3 0.2 0.5 0.4 0.6 0.7 0.9 0.8 1 -255 -200 -175 -150 -125 -100 -75
-50 -25 0 25 50 75 100 125 150 175 200 225 255 CWB CWS Z CCWS CCWB Gambar 6. Himpunan Fuzzy Untuk Output Kecepatan Motor DC

## b. Perancangan Hardware
Dalam  perancangan hardware mobil  robot  beroda  dua  ini  penulis  menggunakan  beberapa  peralatan  dan  bahan yang  dibutuhkan  dan  membuat  desainnya,  adapun  blok  diagram  desain  kontrol  keseimbangan  robot  mobil  beroda  dua dapat disajikan dalam gambar 7 dibawah ini:
Accelerometer
MMA7455L Mikrokontroler Atmega8535
Driver Motor DC
L293D
M M Power Supply PC MOTOR DC FUZZY LOGIC CONTROLER Error Input Del_Error Input
Gambar 7. Blok Diagram Sistem Keseimbangan Robot Mobil Beroda Dua
Pada  diagram  blok  gambar  7  diatas  menjelaskan  bagaimana  sistem  robot  mobil  beroda  dua  mampu menyeimbangkan diri, posisi body robot akan dibaca oleh  sensor accelerometer menjadi input mikrokontroler yang  didalamnya  sudah  ditanamkan  program  dengan  pendekatan fuzzy  logic ,  hasil  dari  pengolahan  data  yang dilakukan  oleh  mikrokontroler  (menjadi output dari fuzzy  logic )  kemudian  ditransfer  ke  kedua  roda  untuk mengembalikan body robot kekondisi setimbang.
Desain robot mobil beroda dua ini dirancang dengan memasang kedua rodanya berada pada poros tengah dari body robot sehingga akan diperoleh keseimbangan pembacaan data ketika robot miring ke kanan ataupun kekiri. Kontruksi dari mobil robot beroda dua disajikan dalam gambar 8 dibawah ini.
10 cm 7 ,5 c m (a) Besi Pemberat Sensor Accelerometer 7.5 cm 1 0 c m (b)
Gambar 8. Konstruksi Robot Mobil (a) Tampak Samping  (b) Tampak Bawah
Grafik pembacaan data sensor accelerometer MMA7455L terhadap respon motor DC dalam menyeimbangkan diri.
a. Grafik data sensor accelerometer MMA7455L yang terbaca ketika robot dalam kondisi seimbang (gambar 9)
Gambar 9. Grafik Pembacaan Accelerometer MMA7455L Ketika Robot Dalam Kondisi Seimbang
Keterangan : Pembacaan data sensor dilakukan per 100mS.
b. Grafik data sensor accelerometer MMA7455L yang terbaca ketika robot diganggu sebesar +5 o (gambar 10)
Gambar 10. Grafik Pembacaan Accelerometer MMA7455L Ketika Robot Diganggu + 5 o
Keterangan: Pembacaan data sensor dilakukan per 100 mS, dengan pengaturan time/div = 1 S Dari  gambar  grafik  diatas  dapat  diketahui  bahwa  sistem  akan  kembali  ke  kondisi  seimbang  ketika  mendapat  gangguan sebesar +5 o dalam waktu 0,7S.
Gangguan
+5 o
c. Grafik data sensor accelerometer MMA7455L yang terbaca ketika robot diganggu sebesar +10 o (gambar 11)
Gambar 11. Grafik Pembacaan Accelerometer MMA7455L Ketika Robot Diganggu + 10 o
Keterangan:
Pembacaan data sensor dilakukan per 100 mS, dengan pengaturan time/div = 1S Dari  gambar  grafik  diatas  dapat  diketahui  bahwa  sistem  akan  kembali  ke  kondisi  seimbang  ketika  mendapat  gangguan sebesar +10 o dalam waktu 0,8S.
Dibawah ini adalah hasil jadi dari robot beroda dua yang dijadikan sebagai objek penelitian dalam penerapan metode logika fuzzy untuk mengontrol keseimbangan robot supaya bisa berdiri diatas dua roda (gambar 12).
(a) (b) Gambar 12. Prototype Robot Mobil Beroda Dua (a) Tampak Depan (b) Tampak Samping

## 5. KESIMPULAN
1. Sistem kontrol keseimbangan yang diaplikasikan dalam prototype mobil robot beroda dua ini menggunakan metode logika fuzzy .
2. Penerapan 25 rule dalam kontrol keseimbangan mobil robot dua roda ini terbukti efektif menciptakan respon waktu yang lebih baik (terhadap penelitian sebelumnya).
3. Dengan menambahkan pemberat pada poros antara kedua roda menjadikan sistem keseimbangan robot mobil dapat berfungsi dengan baik.
Gangguan +10 o

## 6. DAFTAR PUSTAKA
[ 1]    Alma’i Vidi Rahman, 2008, Aplikasi Sensor Accelerometer Pada Deteksi Posisi , hal 1-10
[2]   Budiharto Widodo, 2010, Robotika teori dan implementasi, ANDI Yogyakarta, Yogyakarta
[3]  Khoswanto  Handry,  Djoko  Purwanto, Kesetimbangan  Robot  Beroda  Dua  Menggunakan  Metode  Fuzzy Logic , paper Hal 1 – 10.
[4]  Laksana andra,  2010, Balancing Robot Beroda Dua Menggunakan Metode Kendali Proporsional Integral , Hal 1-8.
[5]    Nalwan  Paulus  Andi,  2003, Teknik  Antarmuka  dan  Pemrograman  Mikrokontroler  AT89C51 ,  Elexmedia Komputindo, Jakarta
[6]  Purwaningrum  Netika,  2007, Aplikasi  Fuzzy  Logic  Untuk  Pengendali  Penerangan  Ruangan  Berbasis Mikrokontroler Atmega8535 , UNNES, SEMARANG
[7]  Parallax inc, MMA7455 3-Axis Accelerometer , 2009, Parallax inc
[8]  Wati Dwi Ana Ratna, 2011, Sistem Kendali Cerdas, Graha Ilmu, Yogyakarta