Implementasi Arsitektur Behavior-Based Dengan Menggunakan Fuzzy Untuk Navigasi Car-Like Mobile Robot Dalam Lingkungan Yang Tak Dikenal

BAB II
TINJAUAN PUSTAKA

Pada BAB ini akan dibahas teori penunjang yang mendukung penelitian ini.
Teori penunjang penelitian tersebut meliputi teori tentang robot CLMR, kinematika
robot CLMR, metode penentuan posisi relatif robot, karakteristik geometri CLMR,
sensor jarak, teknik pengaturan kecepatan motor DC, sistem kontrol, konsep behavior
based robotic (BBR), dan logika fuzzy. Selain itu, BAB ini juga akan menjabarkan
penelitian-penelitian terdahulu yang terkait dengan penelitian yang penulis lakukan.

2.1.

Car Like Mobile Robot (CLMR)
Istilah “Robot”berasal dari bahasa Czech yaitu robota,yang memiliki arti

bekerja. Istilah ini diperkenalkan di publik oleh Karel Capek saat mementaskan RUR
(Rossum’s Universal Robots) pada tahun 1921.
CLMR adalah salah satu tipe robot beroda (wheeled robot), dengan kontrol
kecepatan dan kemudi terpisah. CLMR memiliki dua motor dengan fungsi yang
berbeda, satu motor digunakan sebagai penggerak (roda hanya bergerak maju dan
mundur) dan satu motor lainya berfungsi sebagai kemudi.

Keunggulan CLMR adalah dapat bergerak dengan baik pada medan yang
datar ataupun pada medan yang tidak datar, mudah di kontrol karena kontrol
kecepatan dan arah terpisah.

8
Universitas Sumatera Utara

9

Kelemahan dari robot CLMR adalah tidak dapat berputar ditempat, mekanik
yang kompleks, dimana setiap motor mengendalikan dua buah roda secara
bersamaan. Gambar 2.1. menggambarkan contoh CLMR.

Gambar 2.1 Robot Car Like Mobile Robot (CLMR) [29]

2.2.

Kinematika robot
Kinematika robot didefinisikan sebagai studi tentang pergerakan (motion)


robot tanpa memperhatikan gaya (force) ataupun faktor-faktor lain yang
mempengaruhinya. Pada sebuah analisis kinematik, posisi, kecepatan dan akselerasi
dari setiap link dihitung tanpa memperhatikan gaya yang menyebabkan pergerakan
tersebut.

Universitas Sumatera Utara

10

2.2.1. Kinematika CLMR
Penelitian ini menggunakan CLMR yang memiliki empat roda dengan kontrol
kecepatan terpisah dengan kontrol kemudi. Motor Stepper digunakan sebagai kemudi
roda depan kiri yang berpasangan dengan roda depan kanan. Motor DC yang sudah
dilengkapi dengan gear box digunakan untuk menggerakkan roda belakang kiri yang
berpasangan denngan roda kanan belakang, dengan arah gerakan maju dan mundur.
Model matematika kinematika CLMR dapat dicari dengan pendekatan model
kendaraan Ackerman yang populer seperti yang ditunjukkan pada Gambar 2.2.

φ


φ

Gambar 2.2 Pendekatan kinematik model kendaraan [6]

Universitas Sumatera Utara

11

Dengan asumsi kedua roda depan mobile robot berubah sedikit demi sedikit secara
deferensial, maka pusat rotasi sesaat dapat dihitung dengan cara kinematika.
Asumsikan k (t ) adalah kelengkungan lintasan sesaat.
k (t ) =

1
........................................... (2.1)
R(t )

k (t ) =

tan φ (t )

....................................... (2.2)
L

k (t ) =

dθ (t )
........................................ (2.3)
ds

Dengan R adalah jari-jari kelengkungan, L jarak sumbu roda, φ sudut kemudi, s
posisi robot, dan θ adalah orientasi robot pada kerangka koordinat global. Dinamika


θ sebagai fungsi kendaraan dapat dihitung seperti Persamaan 2.4 s.d. 2.6.


θ =




ds
=
.
......................... (2.4)
dt
ds
dt



θ = k (t ) . ν (t ) ..................................... (2.5)


θ =

tan φ
. ν (t ) .................................. (2.6)
L

Dengan mengambil φ dan ν adalah variabel ruang aktuasi kendaraan. Ruang

konfigurasi kendaraan terdiri dari variabel posisi global robot dan orientasi yang
dinyatakan dalam ( x, y, θ ) , dengan asumsi ruang adalah bidang datar. Pemetaan dari
ruang aktuasi ke ruang konfigurasi dapat diselesaikan dengan menggunakan

Universitas Sumatera Utara

12

persamaan Fresnel, biasanya digunakan dalam navigasi inersia, Persamaan 2.7 s.d.
2.9 menunjukkan persamaan dinamika ( x, y, θ ) .


dx
= ν (t ) . cos θ (t ) ....................... (2.7)
dt



dy
= ν (t ) . sin θ (t ) ........................ (2.8)

dt

x =

y =


θ =


tan φ (t )
= ν (t ) .
...................... (2.9)
dt
L

Dengan x adalah posisi robot terhadap sumbu X dan y adalah posisi robot terhadap
sumbu Y dalam kerangka kordinat global.

2.2.2. Posisi mobile robot CLMR terhadap target

Untuk dapat mencapai target ( xt , y t ), variabel ruang aktuasi (ν ( t ) , φ( t ) ) harus
dihitung secara real-time dari variabel konfigurasi

( x, y , θ ) . Gambar 2.3

menunjukkan posisi robot terhadap target. Dari gambar 2.3 di dapat persamaan:
EP =

∆x 2 + ∆y 2 ................................ (2.10)

EO = θ − ∆θ ....................................... (2.11)
∆x = xt − x .......................................... (2.12)
∆y = yt − y .......................................... (2.13)
 ∆y 
∆θ = tan −1   ................................... (2.14)
 ∆x 

Universitas Sumatera Utara

13


Gambar 2.3 Posisi robot terhadap target [7]

Keterangan Gambar 2.3:
M = Poros titik tengah robot.
EP (position error) = Jarak robot terhadap target
EO (orientation error) = Orientasi robot terhadap target
(X,Y) = Kerangka kordinat global
(x,y) = Posisi robot terhadap kerangka kordinat global
( xT , yT ) = Target pada kerangka kordinat global
∆x = Posisi robot terhadap target pada sumbu X
∆y = Posisi robot terhadap target pada sumbu Y
Nilai EP dan EO selanjutnya akan digunakan sebagai crisp input goal seeking
behavior untuk menentukan kecepatan linear dan sudut kemudi (ν ( t ) , φ( t ) ) .

Universitas Sumatera Utara

14

2.2.3. Karakteristik geometri CLMR

CLMR harus memenuhi batas sudut kemudi − β min < β < β max . Ketika
kecepatan (ν ) konstan dan sudut kemudi (β ) tetap, maka pergerakan CLMR akan
mendekati melingkar dengan radius bergantung sudut kemudi

(β ) .

Fitur dari

kinematika kendaraan ini membantu untuk merencanakan lintasan yang sederhana
dengan gerakan melingkar.
Radius putar adalah radius dari lingkaran yang dibentuk kendaraan saat
memutar dengan sudut kemudi tetap, hal ini diperoleh dengan mendefenisikan roda
virtual ditengah poros roda depan. Gambar 2.4 menggambarkan geometris dari
kendaraan dan radius putar.

Gambar 2.4 Geometris kendaraan dan radius putar [8]

Keterangan Gambar 2.4:
l = Panjang keseluruhan kendaraan
e = Whellbase (jarak antara sumbu roda depan dan sumbu roda belakang)


Universitas Sumatera Utara

15

p = Jarak antara sumbu roda depan kebagian paling depan atau jarak sumbu
roda bagian belakang kebagian paling belakang.
w = Lebar kendaraan
β = Sudut kemudi
Berdasarkan Gambar 2.4 maka R sebagai radius dari roda virtual depan dapat
diperoleh dengan menggunakan aturan trigonometri seperti yang ditunjukkan
persamaan 2.15.
R=

e
................................................... (2.15)
sin β

Dua radius lainnya dapat didefenisikan sebagai Ri yang merupakan radius
terkecil yang dibentuk oleh roda belakang bagian dalam. Sedangkan radius terluar Re
merupakan radius terbesar yang dibentuk oleh roda depan bagian luar kendaraan
tersebut. Radius Ri dan Re dapat dihitung dari R dengan menggunakan teorema
phytagoras seperti yang ditunjukkan persamaan 2.16 dan 2.17 untuk Ri dan
persamaan 2.18 dan 2.9 untuk Re. Semakin besar sudut kemudi ( β ) tetap yang
digunakan, maka radius akan semakin kecil.
R i = R 2 - e2 -

Ri =
Re =

e2
w
w
- e 2 - ......... (2.16)
=
2
2
2
sin β

w
e
- ........................................... (2.17)
tanβ 2

(R i - w )2 + (e + p )2

......................... (2.18)

Universitas Sumatera Utara

16

Re =

(R i

+ w ) + (e + p ) ........................ (2.19)
2

2

2

w

2
R e =  R 2 - e 2 +  + (e + p ) ................ (2.20)
2


2.3.

Metode penentuan posisi relatif robot
Posisi relatif dikenal dalam aplikasi robotika, posisi tersebut bukanlah untuk

menentukan posisi absolut dari robot, tetapi hanya memperkirakan posisi robot
tersebut. Penentuan posisi relatif ini biasanya berdasarkan perhitungan rotasi roda
robot. Rotary encoder adalah sensor yang umum digunakan, data yang dihasilkan
sensor rotary encoder selanjutnya dimasukkan kedalam perhitungan odometry untuk
mendapatkan posisi relatif robot.
Odometry adalah penggunaan data dari sensor bergerak untuk memperkirakan
perubahan posisi dari waktu ke waktu. Teknik klasik untuk robot beroda untuk
menghitung posisinya untuk melacak lokasinya melalui serangkaian pengukuran
rotasi dari roda robot , metode yang sering disebut "odometry" [30].
Pada penelitian ini digunakan rotary encoder jenis DI-REV1 dari depok
instrument. Rangkaian terdiri dari dua bagian utama, yaitu:
a.

Piringan derajat dengan 36 lubang pada kelilingnya dengan sudut antara
dua lubang yang berdampingan terhadap titik tengahnya adalah 100.

b.

Rangkaian sensor pembaca putaran yang menggunakan optocoupler tipe
celah sebagai sensor pembaca perubahan posisi lubang piringan derajat.

Universitas Sumatera Utara

17

Rangkaian optocoupler terdiri dari dua komponen utama, yaitu infra red dan
phototransistor. Gambar 2.5. menunjukkan rangkaian optocoupler yang digunakan.
Gambar 2.6 menunjukkan piringan derajat rotary encoder.

Gambar 2.5. Rangkaian penggerak optocoupler [31].

Spesifikasi dari rotary encoder ini sebagai berikut:
a.

Sumber (VCC): 3,5 V – 5,5 V

b.

Output Low: 0 V – 0,5 V

c.

Output Hight: 3 V – 5 V

d.

Kecepatan baca pada kondisi toggle: 1500 Hz

Universitas Sumatera Utara

18

Gambar 2.6 Piringan derajat DI-REV1 [31].

2.4.

Sensor Pengukur Jarak
Untuk mengendalikan sebuah robot tanpa membentur rintangan, sensor harus

dipasang pada robot untuk merasakan lingkungan dan menginterprestasikan informasi
yang dirasakan. Banyak sensor yang dapat digunakan seperti Infra Red, Ultrasonic,
CCD, sensor laser, sistem penentuan posisi dan sebagainya. Penelitian ini
menggunakan sensor Sharp GP2D12 dan Sharp GP2D120 dengan pertimbangan jarak
jangkauan, kemudahan dalam penggunaannya dan biaya yang murah.

Universitas Sumatera Utara

19

2.4.1. Sharp GP2D12
Sensor Sharp GP2D12 adalah sensor jarak yang menggunakan infra merah.
Sensor ini dapat mendeteksi objek dengan jarak antara 10 cm s.d. 80 cm.

Output

dari sensor ini bersifat non linear dan merupakan tegangan analog, karena output
tidak linear maka dibutuhkan suatu cara untuk menentukan jarak yang sesuai dengan
tegangan. Salah satu cara kalibrasi sensor adalah dengan melakukan pengukuran
output sensor untuk setiap jarak tetap (dalam cm) seperti yang ditunjukkan pada
Gambar 2.7.

Gambar 2.7 Contoh karakteristik sensor Sharp GP2d12 [9].

Universitas Sumatera Utara

20

2.4.2. Sharp GP2D120
Sensor Sharp GP2D120 adalah sensor pengukur jarak dengan pemrosesan
sinyal terintegrasi dengan output berupa tegangan analog. Gambar 2.8 menunjukkan
grafik output sensor Sharp GP2D120.

Gambar 2.8. Contoh karakteristik output sensor Sharp GP2D120 [10].

Universitas Sumatera Utara

21

Berikut ini fitur sensor Sharp GP2D120:

2.5.

a.

Output analog

b.

Efektif pada kisaran: 4 cm sampai 30 cm

c.

Waktu respon: 39 ms

d.

Delay star-up: 44 ms

e.

Konsumsi arus rata-rata: 33 mA

Teknik Pengaturan kecepatan motor DC
Pulse Width Modulation (PWM) adalah salah satu cara untuk mengatur

kecepatan motor DC dengan menggunakan sember tegangan DC tetap, yaitu dengan
mengalihkan cepat antara kondisi ON dan OFF pada frekuensi tertentu. Untuk
mendapatkan perputaran motor DC yang halus biasanya frekuensi yang di gunakan
adalah 1 KHz atau lebih. Gambar 2.9. menggambarkan bentuk sinyal PWM.
Kondisi ON (logika high) sebagai lebar pulsa yang diatur adalah t, dengan
periode adalah T, seperti yang ditunjukkan pada persamaan 2.21.
T =

1
................................................... (2.21)
f

Gambar 2.9 Sinyal PWM

Universitas Sumatera Utara

22

Rasio perbandingan antara kondisi ON dengan periode sinyal disebut dengan duty
cycle, dinyatakan dengan rumus:
duty cycle =

t
x 100% ....................... (2.22)
T

Besar persentase duty cycle dengan kecepatan motor adalah berbanding lurus,
dimana semakin besar duty cycle maka arus rata-rata yang melalui motor juga
semakin besar sehingga motor bergerak semakin cepat. Demikian juga sebaliknya
semakin kecil duty cycle semakin lambat gerakan motor DC.

2.6.

Sistem Kontrol
Embedded system merupakan sistem berbasis komputer (computer-based)

yang diprogram untuk tugas tertentu, dan ditanamkan sebagai satu bagian didalam
sistem komputer atau didalam suatu peralatan dan kadang-kadang tidak
menampakkan bahwa peralatan itu dikendalikan oleh komputer [11].
Mikrokontroler sangat mendukung perkembangan sistem kendali otomatis
dari suatu device atau peranti-peranti pengontrol suatu peralatan yang dapat berdiri
sendiri (stand alone). Tujuan dari setiap sistem kendali adalah menghasilkan keluaran
untuk masukan yang diberikan [12].
Prosesor yang paling banyak digunakan dalam embedded system adalah
mikrokontroller, walaupun ada juga yang menggunakan mikroprosesor atau digital
signal processor. Pada penelitian ini digunakan mikrokontroller ATMega 8535 dari
rumpun AVR.

Universitas Sumatera Utara

23

Mikrokontroler AVR (Alf and Vegard’s Risc Processor) memiliki arsitektur
RISC 8 bit, dimana semua instruksi dikemas dalam kode 16-bit dan sebagian besar
instruksi dieksekusi dalam satu siklus instruksi clock, berbeda dengan instruksi MCS51 yang membutuhkan 12 siklus clock. Perbedaan tersebut dikarenakan arsitektur
yang digunakan berbeda. AVR berteknologi RISC (Reduced Instruction Set
Computing), sedangkan MCS-51 berteknologi CISC (complex Instruction Set
Computing).
Secara umum AVR dapat dikelompokkan menjadi 4 kelas, yaitu keluarga
ATtiny, keluarga AT90Sxx, keluarga ATMega, dan AT86RFxx.

2.6.1. Fitur ATMega 8535
Kapabilitas detail dari ATMega 8535 adalah sebagai berikut:
1.

Sistem mikroprosesor 8 bit berbasis RISC dengan kecepatan maksimal
16 MHz.

2.

Kapabilitas memory flash 8 KB, SRAM sebesar 512 byte, dan
EEPROM (Electrically Erasable Programmable Read Only Memory)
sebesar 512 byte.

3.

ADC internal dengan fidelitas 10 bit sebanyak 8 channel.

4.

Portal komunikasi serial (USART) dengan kecepatan maksimal 2,5
Mbps.

5.

Enam pilihan mode sleep mengemat penggunaan daya listrik.

Universitas Sumatera Utara

24

2.6.2. Konfigurasi pin ATMega 8535
Gambar 2.10. menunjukkan konfigurasi pin ATMega 8535.

Gambar 2.10. Konfigurasi pin ATMega 8535 [13].

Dari Gambar 2.10. dapat dijelaskan secara fungsional pin ATMega 8535
sebagai berikut:
1.

VCC merupakan pin yang berfungsi sebagai pin masukan catu daya.

2.

GND merupakan pin ground.

3.

Port A (PA0..PA7) merupakan pin I/O dua arah dan pin masukan ADC.

4.

Port B (PB0.. PB7) merupakan pin I/O dua arah dan pin fungsi khusus,
yaitu Timer/Counter, komparator analog,dan SPI.

Universitas Sumatera Utara

25

5.

Port C (PC0.. PC7) merupakan pin I/O dua arah dan pin fungsi khusus,
yaitu TWI, komparator analog dan timer oscillator.

6.

Port D (PD0.. PD7) merupakan pin I/O dua arah dan pin fungsi khusus,
yaitu komparator analog, interupsi eksternal, dan Komunikasi serial.

2.7.

7.

RESET merupakan pin yang digunakan untuk me-reset mikrokontroler.

8.

XTAL1 dan XTAL2 merupakan pin masukan clock ekstenal.

9.

AVCC merupakan pin masukan tegangan untuk ADC.

10.

AREF merupakan pin masukan tegangan Referensi ADC.

Konsep behavior based robotic
Pendekatan yang biasa digunakan dalam membangun sistem kendali robot

adalah dengan menguraikan setiap permasalahan kedalam rangkaian unit fungsional
sebagaimana ditunjukkan pada Gambar 2.11.

Gambar 2.11 Teknik penguraian tradisional untuk sistem kendali mobile robot
kedalam unit-unit fungsional [14]

Universitas Sumatera Utara

26

Berbeda dengan pendekatan di atas, Behavior Based Robotic (BBR)
merupakan sistem kontrol yang didesain dengan menggunakan pendekatan task
achieving behaviors (perilaku pencapaian tugas) sebagaimana ditunjukkan pada
Gambar 2.12. Tiap tugas disebut dengan behavior.

Gambar 2.12. Dekomposisi sistem kendali mobile robot dengan task achieving
behaviors [14]

Metode dekomposisi ini memiliki arsitektur mobile robot yang sangat berbeda
dengan dekomposisi yang berdasarkan unit fungsional (Gambar 2.10.), perbedaan
secara hardware dan sejumlah kelebihan lain seperti robustness, buildability, dan
testability.
Arsitektur subsumption adalah arsitektur BBR yang diusulkan oleh Rodney
Brooks [14].

Dalam

membangun robotnya,

Rodney Brooks menguraikan

permasalahan sistem kendali robot sesuai dengan manifestasi luar yang diinginkan
oleh sistem kendali robot, tidak berdasarkan pada operasi internal dari sistem kendali

Universitas Sumatera Utara

27

robot sebagaimana yang dilakukan oleh beberapa peneliti sebelumnya. Karena itu, dia
mendefenisikan sejumlah level kompetensi untuk robot mobil mandiri. Level
kompetensi adalah spesifikasi informal dari sekelompok perilaku yang diinginkan
robot bekerja pada semua lingkungan yang akan dihadapi. Level kompetensi yang
lebih tinggi menunjukkan kelompok perilaku yang spesifik. Berikut ini, beberapa
level kompetensi yang didefinisikan:
0.

Menghindari kontak dengan objek, baik objek bergerak ataupun objek
tetap.

1.

Berkeliling tanpa tujuan tanpa mengenai sesuatu.

2.

Menjelajah dunianya dengan melihat tempat-tempat yang masih bisa
dilihat dan mengarahkan dirinya ke tempat tersebut.

3.

Membangun peta dan merencanakan rute dari satu tempat ke tempat
yang lain.

4.

Mencatat perubahan dalam lingkungan “statis”.

5.

Memikirkan dunia dalam bentuk objek yang dapat dikenali dan
melakukan tugas yang berhubungan dengan objek tertentu.

6.

Merumuskan dan melaksanakan rencana yang melibatkan perubahan
keadaan dari dunia dengan cara yang diinginkan.

Tiap level kompetensi memasukkan sub kelompok dari setiap level
kompetensi sebelumnya. Karena level kompetensi mendefinisikan kelompok perilaku
yang valid, dapat dianggap bahwa level yang lebih tinggi memberikan tambahan
batasan pada kelompok perilaku tersebut.

Universitas Sumatera Utara

28

Rodney Brooks memulai dengan membangun sistem kendali robot yang
melaksanakan level kompetensi 0. Perbaikan kesalahan dilakukan dengan teliti. Dia
tidak pernah mengubah sistem ini dan menyebutnya sistem kendali level 0.
Selanjutnya dibangun lapisan kontrol yang lain yang disebut sistem kontrol level
kesatu. Level ini dapat menguji data dari level 0 dan juga di izinkan untuk
menyuntikkan data ke dalam internal interface level 0 menekan data normal yang
mengalir. Lapisan ini, dengan tambahan dari lapisan 0 melaksanakan kompetensi 1.
Lapisan ke nol melanjutkan untuk bekerja tanpa mengetahui lapisan diatasnya yang
terkadang mengganggu aliran datanya. Proses yang sama diulangi untuk
mendapatkan level kompentensi yang lebih tinggi, sebagaimana ditunjukkan pada
Gambar 2.13.

.
Gambar 2.13 Arsitektur Subsumption [14]

2.8.

Logika fuzzy
Pada pertengahan 1960, Prof. Lotfi A. Zadeh dari University of California di

Barkeley menemukan bahwa hukum benar dan salah dari logika Boolean tidak
memperhitungkan beragam kondisi yang nyata [12]. Nilai keanggotaan logika

Universitas Sumatera Utara

29

Boolean adalah 0 atau 1, sedangkan dalam logika fuzzy nilai keanggotaan bernilai
antara 0 dan 1. Logika fuzzy dapat dikatakan sebagai logika baru yang lama, sebab
ilmu tentang logika fuzzy modern baru ditemukan pada tahun 1965, padahal
sebenarnya konsep tentang fuzzy logic itu sendiri sudah ada sejak lama [15].
Prof. Lotfi A. Zadeh merupakan pencetus sekaligus yang memasarkan ide
tentang mekanisme pengolahan atau manajemen ketidakpastian yang kemudian
dikenal dengan logika fuzzy. Gambar 2.14. menunjukkan konsep dasar logika fuzzy.

Label

Degree of
Membership
Function (derajat
keanggotaan)

Zero

Positive Big

1
Membership
Function (fungsi
keanggotaan)

0,8

Crisp input
(masukan crisp)

0,2
0

0

10

18 20

30

Scope/Domain
Daerah batasan crisp

Gambar 2.14. Konsep dasar logika fuzzy [15]

Logika fuzzy adalah metodologi sistem kontrol pemecahan masalah yang
cocok di implementasikan mulai dari sistem yang sederhana, sistem kecil, embedded

Universitas Sumatera Utara

30

system, jaringan PC, multi-channel atau workstation berbasis akuisisi data, dan sistem
kontrol. Metodologi ini dapat diterapkan pada perangkat keras, perangkat lunak atau
kombinasi keduanya [5].

2.8.1. Fungsi keanggotaan
Gambar 2.15. menunjukkan grafik keanggotaan.

µ [x

]

µ [x

]

µ [x

]

µ [x ]

ℜ1

ℜn

Gambar 2.15 Grafik keanggotaan [5]

Universitas Sumatera Utara

31

Keterangan Gambar 2.15:
a. Grafik keanggotaan kurva segitiga
Fungasi keanggotaannya:

µ (x )

0; x ≤ a atau x ≥ c

= ( x − a ) / (b − a ); a ≤ x ≤ b ............ (2.23)
(b − x ) / (c − b ); b ≤ x ≤ c


b. Grafik keanggotaan kurva trapesium
Fungsi keanggotaannya:

µ (x )

0; x ≤ a atau x ≥ d

( x − a ) / (b − a ); a ≤ x ≤ b
............ (2.24)
= 
b

x

c
1
;

(b − x ) / (c − b ); b ≤ x ≤ c

c. Grafik keanggotaan kurva bahu
Fungsi keanggotaannya:

µ (x )

1; 0 ≤ x ≤ a atau c ≤ x ≤ d

= (b − x ) / (b − a ); a ≤ x ≤ b ........ (2.25)
( x − b ) / (c − b ); b ≤ x ≤ c


d. Grafik keanggotaan kurva GAUSS
Fungsi keanggotaannya:
G ( x; L, c ) = e − L ( c − x ) ................................. (2.26)
2

Universitas Sumatera Utara

32

Fungsi keanggotaan (membership function) adalah grafik yang mewakili
besar dari derajat keanggotaan masing-masing variabel input yang berada antara 0
dan 1. Derajat keanggotaan sebuah variabel x dilambangkan dengan simbol µ ( x ) .
Rule menggunakan nilai keanggotaan sebagai faktor bobot untuk menentukan
pengaruhnya pada saat melakukan inferensi untuk menarik kesimpulan. Pada
penelitian ini fungsi keanggotaan input menggunakan Grafik keanggotan bahu dan
Grafik keanggotaan segitiga.

2.8.2. Operasi himpunan fuzzy
Operasi himpunan fuzzy diperlukan untuk proses inferensi atau penalaran.
Dalam hal ini yang dioperasikan adalah derajat keanggotaannya. Derajat keanggotaan
sebagai hasil dari operasi dari dua buah himpunan fuzzy disebut sebagai fire strength
atau α-predikat.

2.8.2.1.Operasi gabungan (union)
Operasi gabungan (sering disebut operator OR) dari himpunan fuzzy A dan B
dinyatakan sebagai A ∪ B . Dalam sistem logika fuzzy, operasi gabungan disebut
sebagai Max. Operasi Max ditulis dengan persamaan berikut:
µ A∪ B ( x ) = max .{µ A ( x ), µ B ( x )} untuk setiap x ∈ X .. (2.27)
Derajat keanggotaan setiap unsur himpunan fuzzy A ∪ B adalah derajat
keanggotaannya pada himpunan fuzzy A atau B yang memiliki nilai terbesar.

Universitas Sumatera Utara

33

2.8.2.2.Operasi irisan (intersection)
Operasi irisan (sering disebut operator AND) dari himpunan fuzzy A dan B
dinyatakan sebagai A ∩ B .
Dalam sistem logika fuzzy, operasi irisan disebut sebagai Min. Operasi Min ditulis
dengan persamaan berikut:
µ A∩ B ( x ) = min .{µ A ( x ), µ B ( x )} untuk setiap x ∈ X ... (2.28)
Derajat keanggotaan setiap unsur himpunan fuzzy A ∩ B adalah derajat
keanggotaannya pada himpunan fuzzy A dan B yang memiliki nilai terkecil.

2.8.2.3.Operator komplemen (complement)
Bila himpunan fuzzy A pada himpunan universal X mempunyai fungsi
keanggotaan µ A ( x ) maka komplemen dari himpunan fuzzy A (sering disebut NOT)
adalah himpunan fuzzy A C untuk fungsi keanggotaan untuk setiap x elemen X.
µ AC ( x ) = 1 − µ A ( x ) . ............................. (2.29)

2.8.3. Penalaran Monoton
Penalaran monoton digunakan untuk merealisasikan himpunan Fuzzy A pada
variabel x dan himpunan Fuzzy B pada variabel y dengan cara membuat implikasi
berikut:
IF x is A THEN y is B. ............................... (2.30)

Universitas Sumatera Utara

34

2.8.4. Fungsi Implikasi
Dalam basis pengetahuan fuzzy, tiap-tiap rule selalu berhubungan dengan
relasi fuzzy. Dalam fungsi implikasi, biasanya digunakan bentuk berikut:
IF x is A THEN y is B ................................ (2.31)
Dengan x dan y adalah skalar, A dan B adalah himpunan fuzzy. Proposisi
setelah IF disebut sebagai anteseden, sedangkan proposisi setelah THEN disebut
sebagai konsekuen. Dengan menggunakan operator fuzzy, proposisi ini dapat
diperluas sebagai berikut:

(

)(

)(

)

(

)

IF x1 is A1 • x 2 is A2 • x3 is A3 • ..... • x N is AN THEN y is B ........ (2.32)
Dengan • adalah operator OR atau AND. Secara umum, ada 2 fungsi implikasi dapat
digunakan yaitu:
a.

Min (minimum). Fungsi ini digunakan untuk mendapatkan nilai αpredikat hasil implikasi dengan cara memotong output himpunan fuzzy
sesuai dengan derajat keanggotaannya yang terkecil.

b.

Dot (Product). Fungsi ini digunakan untuk mendapatkan nilai α-predikat
hasil implikasi dengan cara menskala output himpunan fuzzy sesuai
dengan derajat keanggotaan yang terkecil.

2.8.5. Cara kerja logika fuzzy
Cara kerja logika fuzzy meliputi beberapa tahapan berikut:
a. Fuzzyfikasi

Universitas Sumatera Utara

35

b. Pembentukan basis pengetahuan fuzzy (Rule dalam bentuk IF … THEN)
c. Mesin inferensi (Fungsi implikasi Max-Min atau Dot-Product)
d. Defuzzyfikasi
Banyak cara untuk melakukan defuzzyfikasi, diantaranya metode berikut :
Metode rata-rata (Weighted Average)

i.

z* =
ii.

∑µ z
∑ µi

i i

........................................... (2.33)

Metode titik tengah (Center Of Area)
z* =

∫ µ (z )zdz ........................................ (2.34)
∫ µ (z )dz

2.8.6. Sistem inferensi fuzzy
Pada fuzzy inference system dikenal tiga model yang umum digunakan, yaitu
metode fuzzy Tsukamoto, metode fuzzy Mamdani, dan metode fuzzy Sugeno.
a.

Metode Tsukamoto
Secara umum bentuk model fuzzy Tsukamoto adalah seperti persamaan
2.35.
IF (X IS A) and (Y IS B) then (Z IS C) ....... (2.35)
Dimana A, B, dan C adalah himpunan fuzzy. Dalam inferensinya,
metode Tsukamoto menggunakan tahapan berikut:
i. Fuzzyfikasi

Universitas Sumatera Utara

36

ii. Pembentukan basis pengetahuan fuzzy (rule dalam bentuk IF
…THEN)
iii. Mesin inferensi
Menggunakan fungsi implikasi MIN untuk mendapatkan nilai
α − predikat

tiap-tiap rule α 1 , α 2 , α 3 ...α N ( α − predikat atau fire

strength merupakan nilai keanggotaan sebagai hasil dari operasi 2
himpunan), kemudian masing-masing α − predikat digunakan untuk
menghitung keluaran hasil inferensi secara tegas (crisp) masingmasing rule ( z1 , z 2 , z 3 ,...z N ) .
iv. Defuzzyfikasi
Menggunakan metode Metode rata-rata (Weighted Average) seperti
yang ditunjukkan pada persamaan 2.33.
b.

Metode Mamdani
Metode mamdani menggunakan operasi MIN-MAX atau MAXPRODUCT. Untuk mendapatkan output diperlukan 4 tahapan berikut:
v.

Fuzzyfikasi

vi. Pembentukan basis pengetahuan fuzzy (rule dalam bentuk IF
…THEN)
vii. Aplikasi fungsi implikasi menggunakan fungsi MIN dan komposisi
antar-rule menggunakan fungsi MAX (menghasilkan himpunan
fuzzy baru).

Universitas Sumatera Utara

37

viii. Defuzzyfikasi
Menggunakan metode Metode rata-rata (Weighted Average) seperti
yang ditunjukkan pada persamaan 2.37.
c.

Metode Sugeno
Penalaran dengan metode SUGENO hampir sama dengan penalaran
MAMDANI, hanya saja output (konsekuen) sistem tidak berupa
himpunan fuzzy, melainkan berupa konstanta atau persamaan linear.
Metode ini diperkenalkan oleh Takagi-Sugeno-Kang pada tahun 1985.
Secara umum ada dua model pada sistem inferensi Sugeno, yaitu:
i.

Metode fuzzy Sugeno orde-Nol
Secara umum bentuk fuzzy Sugeno orde-Nol seperti yang
ditunjukkan pada persamaan 2.36.
IF( x1 is A1 ) • (x2 is A2 ) • (x3 is A3 ) • ... • (x N is AN ) THEN z = k ...... (2.36)

Dengan Ai adalah himpunan fuzzy ke-i sebagai anteseden, dan k
adalah suatu konstanta (crisp) sebagai konsekuen.
ii.

Metode fuzzy Sugeno orde-Satu
Secara umum bentuk model fuzzy Sugeno orde-Satu adalah seperti
yang ditunjukkan pada persamaan 2.37.
IF(x1 is A1 ) • ... • ( xN is AN ) THENz = p1 * x1 + ... + p N * xN + q .... (2.37)

Universitas Sumatera Utara

38

Dengan Ai adalah himpunan fuzzy ke-i sebagai anteseden, dan pi
adalah suatu konstantan (crisp) ke-i dan q merupakan konstanta
dalam kosekuen.
Dalam inferensinya, metode Sugeno menggunakan tahapan sebagai
berikut:
1.

Fuzzyfikasi

2.

Pembentukan basis pengetahuan fuzzy (rule dalam bentuk IF
…THEN)

3.

Mesin inferensi
Menggunakan fungsi implikasi MIN untuk mendapatkan nilai
α − predikat tiap-tiap rule (α 1 , α 2 , α 3 ...α N ) , kemudian masingmasing α − predikat digunakan untuk menghitung keluaran hasil
inferensi secara tegas (crisp) masing-masing rule ( z1 , z 2 , z 3 ,...z N ) .

4.

Defuzzyfikasi
Menggunakan metode Metode titik tengah (Center Of Area) seperti
yang ditunjukkan pada persamaan 2.33.

2.9.

Penelitian terkait
Penelitian yang dilakukan oleh Lu, Hung-Ching., and Chuang, Chih-Ying

[16], menyajikan masalah metode navigasi berdasarkan teori himpunan fuzzy.
Penelitian ini terdiri dari dua perilaku, yaitu perilaku pencari tujuan (goal seeking

Universitas Sumatera Utara

39

behavior) dan perilaku menghindari rintangan (obstacle avoidance behavior). Mobile
robot yang digunakan jenis wheeled mobile robot tipe CLMR. Penelitian ini
menggunakan tiga buah sensor infra merah yang diletakkan pada kiri, tengah, dan
kanan mobile robot. Pada penelitian ini mengasumsikan hanya ada satu hambatan.
Kekurangan dari penelitian ini adalah kemampuan menghindari rintangan belum
kompleks, pada perilaku menghindari rintangan belum mempertimbangkan rintangan
yang meyinggung lintasan pada sudut kemudi maksimum dan menghindari rintangan
cekung.
Penelitian yang dilakukan oleh Ouadah, Noureddine., et.al [7], membahas
teknik baru yang digunakan untuk melakukan tugas penentuan posisi berorientasi
pada sebuah mobile robot non holonomic, menggunakan dua pengendali dengan
menggunakan FLC. Pengendali pertama digunakan untuk “simple positioning”, telah
di uji pada simulasi dan di implementasikan. Kemudian dikombinasikan dengan
pengendali ke dua, yang digunakan untuk “virtual following” untuk menyelesaikan
tugas yang di inginkan. Eksperimen real-time telah dilakukan pada CLMR
“Robucar”. Hasil yang diperoleh menunjukkan efektivitas teknik yang dirancang.
perilaku yang dimiliki mobile robot ini adalah

pencari tujuan (goal seeking

behavior). Kekurangan pada penelitian ini belum mengikutsertakan kemampuan
menghindari rintangan.
Penelitian yang dilakukan oleh Quing-Yong, BAO., et.al [2], membahas
sebuah arsiteketur berbasis perilaku dengan menggunakan logika fuzzy (fuzzy
behavior-based) untuk navigasi mobile robot dalam lingkungan yang tidak diketahui.

Universitas Sumatera Utara

40

Mobile robot memiliki empat behavior, yaitu goal seeking behavior, obstacle
avoidance behavior, tracking behavior, dan deadlock disarming behavior. behaviorcontroller dirancang untuk mengintegrasikan ke-empat behavior. Sensor yang
digunakan pada penelitian ini adalah sensor ultrasonic yang berjumlah 6 buah.
Penempatan sensor dibagi menjadi 3 kelompok, yaitu kiri, depan dan kanan. Masingmasing kelompok terdiri dari 2 sensor ultrasonic. Hasil simulasi eksperimental
menunjukkan bahwa arsitektur yang dirancang memungkinkan mobile robot
mencapai tujuan dengan aman tanpa bertabrakan. Kekurangan dari penelitian ini
belum adanya perilaku mundur untuk menghindari rintangan saat perilaku
menghindari rintangan dengan gerak maju tidak dapat dilaksanakan dengan baik yang
diakibatkan sudut kemudi masimum yang dimiliki tidak dapat melewati rintangan
atau keluar dari kondisi kebuntuan dengan lebar koridor kurang dari radius putar
maksimum yang dimiliki.
Penelitian yang dilakukan oleh Duan, Suolin., et.al [17], membahas sistem
kendali mobile robot dengan perilaku menghindari rintangan (obstacle avoidance
behavior) dengan menggunakan fuzzy planner. Mobile robot yang digunakan jenis
wheeled mobile robot dengan tiga roda, dengan penggerak diferensial. Sensor yang
digunakan pada penelitian ini menggunakan infra merah. Pengendali gerak roda kiri
dan kanan dilakukan dengan sistem close loop ganda. Hasil percobaan menunjukkan
efek navigasi yang sangat baik untuk memastikan mobile robot dapat menghindari
rintangan dalam lingkungan yang tidak diketahui. Penelitian ini menggunakan

Universitas Sumatera Utara

41

penggerak diferensial drive dengan tiga roda yang memiliki kelemahan mudah goyah
dan kesulitan pada medan kasar.
2.9.1. Persamaan dengan penelitian lainnya
Penelitian ini memiliki beberapa kesamaan dengan penelitian yang dilakukan
oleh Quing,Yong, BAO., et.al [2], yaitu menggunakan gabungan metode behaviorbased dan FLC sebagai sistem kendali untuk navigasi mobile robot pada lingkunan
yang tak dikenal, selain itu terdapat dua perilaku yang sama yaitu goal seeking
behavior dan obstacle avoidance behavior.
Penelitian ini menggunakan mobile robot tipe CLMR seperti yang dilakukan
peneliti Lu, Hung-Ching., dan Chuang, Chih-Ying [16] dan Duan, Suolin., et.al [17].

2.9.2. Perbedaan dengan penelitian lainnya
Terdapat perbedaan pada penelitian yang dilakukan penulis dengan peneliti
lainnya. Secara hardware penelitian ini menggunakan 5 buah sensor jarak, dengan
pengaturan sensor, tiga sensor ditempatkan pada bagian depan yang dibagi menjadi
tiga posisi, yaitu depan kiri, depan tengah, dan depan kanan (menggunakan sensor
Sharp GP2D12) dan dua sensor ditempatkan pada bagian belakang dengan dua posisi,
yaitu belakang kanan dan belakang kiri (menggunakan sensor Sharp GP2D120).
Sedangkan peneliti Quing,Yong, BAO., et.al [2] menggunakan enam buah sensor
ultrasonic yang dibagi menjadi tiga kelompok, yaitu depan kiri, depan tengah, dan
depan kanan. Masing-masing kelompok terdiri dari dua sensor ultrasonic.

Universitas Sumatera Utara

42

Secara sotftware penelitian ini menggunakan tiga basic-behavior, yaitu goal
seeking behavior, obstacle avoidance behavior, dan move backward behavior.
Sedangkan peneliti Quing,Yong, BAO., et.al [2] menggunakan empat basic-behavior,
yaitu goal seeking behavior, obstacle avoidance behavior, tracking behavior, dan
deadlock disarming behavior.
Pada behavior-controller penelitian ini menggunakan batas ambang untuk
mendeteksi adanya rintangan, ditetapkan 75 cm untuk sensor depan tengah dan 50 cm
untuk sensor depan kiri dan depan kanan. Sedangkan peneliti Quing,Yong, BAO.,
et.al [2] menetapkan batas ambang masing-masing 2 m.
Pada penelitian ini akan mengembangkan teknik menghindari rintangan untuk
navigasi CLMR dalam lingkungan tak dikenal. Selain dengan obstacle avoidance
behavior juga menggunakan kombinasi obstacle avoidance behavior dan move
backward behavior

pada saat obstacle avoidance behavior sendiri tidak dapat

berjalan dengan baik yang mungkin disebabkan keterbatasan sudut kemudi
maksimum yang dimiliki CLMR saat menemui rintangan dengan jarak relatif dekat
(lintasan CLMR yang dibentuk sudut kemudi maksimum masih menyinggung
rintangan) atau CLMR menemui rintangan cekung dengan lebar rintangan ≤ diameter
lintasan yang terbentuk dengan sudut kemudi maksimum (rintangan yang membawa
robot kedalam kondisi kebuntuan). Dengan adanya perilaku mundur permasalahan
keterbatasan sudut kemudi dapat diatasi dengan kombinasi menghindari rintangan
dengan arah maju (yang dikendalikan obstacle avoidance behavior) dan menghindari
rintangan dengan arah mundur (yang dikendalikan move backward behavior).

Universitas Sumatera Utara