Sistem Navigasi Robot Mobil Dengan Fuzzy Logic

Tugas Akhir oleh: Sony Sahli
Pembimbing: Ir. Resmana, M.Eng & Martin Setiawan S.T.

 

 samping.jpg (44202 bytes)    depan.jpg (36520 bytes)

                               (a)                                                                        (b)

Gambar 1 : (a). Tampak Samping,  (b). Tampak Depan

 

Tinjauan Umum

            Teknologi modern dewasa ini khususnya dalam dunia teknologi robot mengalami perkembangan yang sangat pesat. Banyak negara maju (Amerika, Jerman, Inggris, Jepang, Perancis) berlomba-lomba untuk menciptakan robot-robot mutakhir dengan keistimewaan-keistimewaan khusus. Pembuatan robot-robot dengan keistimewaan khusus ini sangat berkaitan erat dengan adanya kebutuhan dalam dunia industri modern yang menuntut adanya suatu alat dengan kemampuan yang tinggi yang dapat membantu menyelesaikan pekerjaan manusia ataupun untuk menyelesaikan pekerjaan yang tidak mampu diselesaikan oleh manusia. Salah satu jenis robot dengan kemampuan istimewa yang belakangan ini banyak menarik minat para ahli untuk dikembangkan adalah robot mobil. Kemampuan dari robot mobil ini sangat beragam sesuai dengan tingkat dan jenis keperluan. Misalnya :

Kemampuan bergerak dari robot mobil banyak dipakai oleh pabrik dengan lokasi area produksi yang luas untuk kebutuhan transport.
Kemampuan pengenalan lintasan, banyak dipakai oleh instansi pemadam kebakaran untuk mendeteksi daerah yang telah atau belum terbakar pada suatu bangunan yang terbakar.
Kemampuan tambahan khusus, seperti mendeteksi keaktifan gunung berapi, menyusup dalam jalur-jalur yang sempit yang tidak dapat dilewati manusia dan masih banyak lagi kemampuan tambahan yang tidak dapat disebutkan satu persatu.

Pemakaian sistem kendali Fuzzy Logic pada robot mobil mulai dikembangkan oleh negara-negara maju sekitar awal tahun 90-an. Pada saat itu pemakaian fuzzy logic terbatas hanya untuk penelitian dan percobaan. Tetapi pada tahun-tahun terakhir ini fuzzy logic sudah menjadi dasar bagi perancangan teknologi robot mobil, serta punya nilai ekonomis tersendiri untuk dijual dipasaran setelah dikembangkan pada penerapan-penerapan teknologi sekarang seperti pada beberapa jenis mobil terkemuka.

 

Kenapa Fuzzy Logic ?

Sistem control didalam robot mobil sangat kompleks dan menggunakan banyak sekali parameter. Pengolahan parameter-parameter ini akan mengalami kesulitan jika menggunakan suatu rumusan eksak matematis yang rumit. Untuk itu digunakan pengolahan "fuzzy" yang menggunakan rumusan secara linguistik dan rule-based sehingga pengolahannya dapat dipermudah.
Fuzzy Logic dapat mengatasi masalah ketidaklinearan dari sensor jarak (ultrasonic).
Fuzzy Logic mempunyai toleransi yang tinggi terhadap suatu kesalahan.
Fuzzy Logic sebagai suatu sistem Intelegensia.

 

PRINSIP DASAR DARI ROBOT MOBIL

Dalam perencanaan Robot Mobil  ini, mekanik dari robot mobil akan digambarkan sebagai berikut :

 

wpe7.jpg (6557 bytes)

Gambar 2

Mekanik Robot Mobil

Motor roda yang terpasang pada bagian belakang dari robot mobil dipakai untuk mengatur kecepatan dari gerak maju / mundur robot mobil, sedangkan motor setir digunakan untuk mengontrol arah dan besar dari sudut belokan. Ada 3 buah sensor ultrasonic sebagai sensor jarak yang diletakan dibagian depan dari robot mobil. Peletakan sensor ultrasonic secara bersilangan dimaksudkan agar :

Dapat mendeteksi besarnya halangan yang berada didepannya sehingga dapat menghindari halangan tersebut dengan baik.
Masih mampu mendeteksi adanya belokan walaupun robot mobil sudah terlalu berdekatan dengan salah satu sisi dari jalur jalan.
Pendeteksian terhadap adanya belokan dari jarak yang masih jauh lebih baik karena mempunyai sudut pantulan yang lebih kecil jika dibandingkan dengan jika dipasang secara tidak bersilangan.

 

Lebih lanjut dari sistem robot mobil ini akan dijelaskan lebih terperinci melalui blok diagram seperti yang dapat dilihat pada gambar dibawah ini.

 

wpe7.jpg (19345 bytes)

 

                                     Gambar 3

Blok Diagram Robot Mobil

Cara kerja dari blok diagram diatas dapat dijelaskan sebagai berikut :

S1, S2 dan S3 adalah transducer ultrasonic yang berfungsi sebagai sensor pengukur jarak antara robot mobil dengan semua benda yang berada pada lingkungannya seperti halangan, dinding lintasan dan lain-lain. Output dari sensor ultrasonic ini dipakai sebagai input bagi proses fuzzy. Sistem kendali fuzzy yang digunakan disini, difungsikan untuk mendeteksi adanya belokan atau halangan didepan robot mobil dan juga untuk mengatur kecepatan dari lajunya mobil. Kedua hal tersebut kemudian dimasukan ke suatu sistem pengaturan/ pengontrolan yang dikenal sebagai suatu sistem navigasi.

Sistem ini berfungsi untuk mengatur bagaimana proses perjalanan dari robot mobil ketujuan yang dituju dengan dapat mengatasi segala masalah yang terjadi didalam perjalanannya itu. Kemungkinan adanya belokan atau halangan yang diperoleh dari output fuzzy akan di bandingkan dengan titik koordinat dari tujuan yang hendak dituju serta posisi robot mobil pada saat itu untuk dapat menentukan arah dari perjalanan robot mobil tersebut. Jika arah belokan sudah diketahui maka sistem navigasi ini akan memutar roda agar mobil dapat berjalan serta membelokan setir kearah mana yang menjadi arah sebenarnya dari tujuan mobil.

Caranya yakni dengan melalui suatu rangkaian DAC guna mengubah data binary menjadi suatu besaran analog. Besaran analog inilah yang dipakai sebagai VCO (Voltage Control Oscillator) bagi IC 556 yang difungsikan sebagai pembangkit PWM. PWM ini yang kemudian dipakai sebagai controller bagi motor sehingga motor dapat berputar (roda belakang).

Untuk membelokan arah setir, pada rangkaian driver motor setir diberi suatu pulsa dengan delay time tertentu yang dapat mengaktifkan motor selama beberapa waktu yang diinginkan. Lamanya delay time ini nantinya tergantung pada seberapa besar sudut belokan yang harus di lakukan oleh robot mobil. Semakin besar sudut yang hendak di buat maka delay time nya juga akan semakin lama. Sudah tentu bahwa delay time ini mempunyai batasan waktu karena tergantung dari faktor seberapa maksimal sudut yang dapat dibuat oleh robot mobil. Pada rangkaian motor untuk penggerak setir ini, dipasang sebuah potensio meter yang difungsikan sebagai suatu sensor posisi. Posisi yang dimaksud adalah posisi seberapa besar sudut yang telah dibuat. Potensio meter ini difungsikan sebagai suatu pembagi tegangan dan harga tegangan yang diperoleh dimasukan pada rangkaian ADC untuk mengkonversikan harga tegangan analog tersebut menjadi suatu harga dalam bentuk binary.

Untuk menghitung jarak yang telah ditempuh oleh robot mobil maka digunakan rotary encoder yang diletakan pada roda belakang. Rotary encoder ini akan menghitung jumlah putaran roda mobil dan kemudian mengirimkan hasilnya kepada sistem penghitungan posisi yang dikenal dengan nama Odometer. Didalam sistem Odometer inilah proses perhitungan yang meliputi output dari ADC yang mewakili besarnya sudut belokan, dan hasil dari rotary encoder yang mewakili jarak tempuh, dilakukan untuk memperoleh suatu harga koordinat (X,Y dan f ). Harga koordinat ini kemudian di bandingkan dengan harga koordinat target yang diinputkan untuk mendapatkan error posisi dan error ini di feedback kan kembali ke sistem navigasi untuk menentukan belokan mana yang harus ditempuh oleh robot mobil atau jalan mana yang harus diambil agar dapat sampai ketujuan dengan jarak yang dibuat seminimal mungkin.

 

FUZZY LOGIC

Perencanaan Membership Function.

                Crisp input yang dipakai untuk mendeteksi adanya halangan atau belokan diperoleh dari 3 buah  sensor ultrasonic sebagai suatu sensor jarak. Harga dari crisp input ini berada dalam bentuk 8 bit binary. Harga minimum dari crisp input ini adalah 0000001 (1) dan harga maksimumnya adalah 10000000 (128).

                Dalam membuat suatu membership function harga dari crisp input ini harus diperhatikan dengan teliti. Secara mendasar, harga ketiga crisp input ini akan dibandingkan satu terhadap yang lain guna mendapatkan suatu kemungkinan keadaan yang sedang terjadi didepan mobil. Perbandingan harga-harga ini dapat dilihat secara jelas pada bagian perencanaan rules.

                Pembuatan membership function ini akan menggunakan program bantu yakni PetraFuz . Namun yang harus diperhatikan pada pembuatan membership function dengan menggunakan PetraFuz ini adalah PetraFuz mempunyai range crisp input sebesar 00 sampai 255. Sedangkan range crisp input yang diperoleh dari sensor sebesar 1 sampai 128. Untuk mengatasi masalah ini maka daerah membership function dibagi atas dua bagian dan bagian yang dipakai adalah pada bagian yang mempunyai range dari 00 sampai 128, sedangkan bagian diatas daerah tersebut dianggap termasuk dalam bagian nilai maksimum.

                Membership Function yang dirancang pada bagian ini meliputi 3 macam input membership function (sensor kanan, sensor tengah, sensor kiri) dan 2 macam output Membership Function (untuk arah dan kecepatan ).  Berikut diperlihatkan salah satu dari membership yang dibuat (membership function sensor kiri)

 

wpeD.jpg (22085 bytes)

Gambar 4

Membership Function

Perencanaan Rules

            Cara penentuan rules dapat dijelaskan sebagai berikut :

 

wpe4.jpg (5687 bytes)

 

Gambar 5

Penentuan Rule Belok Kanan

 

Pada kondisi ini diperoleh :

Sensor kanan mendeteksi jarak mobil dengan jalur kiri sangat dekat sehingga dapat dikatakan " Kanan is Very_Near ".
Sensor kiri mendeteksi jarak mobil dengan jalur kanan sangat jauh (karena ada belokan) sehingga dapat dikatakan " Kiri is Very_Far ".
Sensor tengah mendeteksi jarak mobil dengan jalur depan sangat dekat sehingga dapat dikatakan " Tengah is Very_Near ".

 

Dari ketiga keadaan ini dapat dijadikan suatu rule yang dinyatakan sebagai :

" If Kanan is Very_Near and Tengah is Very_Near and Kiri is Very_Far then Setir is Very_Positif and Speed is Slow ".

Very_Positif disini diartikan sebagai setir akan mempunyai prioritas belok kearah kanan dan Slow disini diartikan dengan kecepatan yang rendah.

 

AKSI ROBOT MOBIL

 

foto3.jpg (35421 bytes)    foto4.jpg (35149 bytes)

(a)                                                                 (b)

                                 foto5.jpg (36279 bytes)

                                                                    (c)

Gambar 6 :  (a). Robot Mobil dengan jalur belok kanan,  (b). Robot Mobil dengan jalur belok kiri

                  (c). Robot Mobil dengan halangan pada jalur lintasan.

 

File Download :

File skematik rangkaian elektronika
File penulisan buku