PERANCANGAN ROBOT LINE FOLLOWER DENGAN MENGGUNAKAN METODE FUZZY LOGIC
Disusun untuk memenuhi salah satu tugas Mata Kuliah Sistem Instrumentasi Cerdas Dosen pengampu : Agus Heri Setyabudi S.T., M.T.
oleh :
Muhammad Renaldy (1304887)
DEPARTEMEN PENDIDIKAN TEKNIK ELEKTRO FAKULTAS PENDIDIKAN TEKNOLOGI DAN KEJURUAN
KATA PENGANTAR
Dengan memanjatkan puji dan syukur ke hadirat Allah SWT dengan berkat dan rahmat - Nya sehingga makalah tentang "Perancangan Robot Line Follower Dengan Menggunakan Metode Fuzzy Logic" dapat terselesaikan dengan baik.
Makalah ini disusun untuk memenuhi salah satu tugas yang diberikan dalam mata pelajaran Sistem instrumentasi Cerdas.
Makalah ini berisi tentang perancangan sebuah robot line follower dengan menggunakan fuzzy logic dan aplikasi matlab.
Dalam menyelesaikan makalah ini, penulis banyak bantuan dari berbagai pihak yang telah memberikan keterangan, data -data, waktu, tenaga dan pemikiran demi terselesaikannya makalah ini.
Akhirnya, tiada gading yang tak retak, meskipun dalam penyusunan makalah ini penulis telah mencurahkan semua kemampuan, namun penulis sangat menyadari bahwa hasil penyusunan makalah ini jauh dari sempurna dikarenakan keterbatasan data dan referensi maupun kemampuan penulis. Oleh karena itu penulis sangat mengharapkan saran serta kritik yang membangun dari berbagai pihak.
BAB I PENDAHULUAN
A. Latar Belakang
Pada era tahun 1960-an, Profesor Lotfi Zadeh dari University of California di Barkeley mengemukakan bahwa tidak jelas merupakan suatu aspek ketidaktentuan yang berbeda dengan keacakan. Profesor Zadeh mengusulkan suatu bentuk matematika untuk melihat bagaimana ketidakjelasan dapat dinyatakan dalam bahasa manusia yang pendekatan disebut “logika fuzzy”. Tujuan “logika fuzzy” adalah membuat computer beroperasi seperti layaknya logika manusia dan menghilangkan batas antara manusia dan kemampuan computer.
Logika adalah suatu studi tentang metode dan prinsip suatu alasan dalam semua bentuk kemungkinan. Logika klasik mengenal dua keadaan, yaitu benar atau salah. Dalam logika, kita mengenal kombinasi variable yang disebut variable logika. Penentuan property himpunan penting karena berpengaruh pada komputasi matematika dari himpunan. Komputer dan manusia mempunyai kekuatan dan kelemahan yang saling mengisi. Komputer tidak memahami konsep ketidakjelasan manusia tersebut. Oleh karena diperlukan suatu penerjemah dari konsep penalaran manusia sehingga dapat mengoptimalkan proses kerja dari system computer tersebut.
Robot pula merupakan salah satu bentuk dari integrasi system computer dan logika yang sangat menarik untuk ditelaah. Pada system robot masih banyak menerapkan system logika klasik dalam proses pengendalian. Salah satu jenis robot yaitu robot line follower. Dimana dengan penerapan logika klasik masih banyak pemetaan yang belum terwakili oleh sistem logika klasik terutama masih logika fungsi perubahan posisi terhadap fungsi kecepatan. Jika hal itu pun dibuat dalam sebuah logika klasik maka akan membuat system semakin tidak efisien.
Penerapan fuzzy logic controller pada line follower robot diharapkan dapat memberikan perubahan pergerakan robot mobil yang halus dari kondisi berbelok ke kondisi bergerak lurus maupun sebaliknya tanpa menimbulkan pergerakan yang kaku. Dalam merancang logika fuzzy ini kita dapat menggunakan aplikasi matlab untuk mensimulasikannya sebelum kita menggunakan logika pada simulasi ini untuk di aplikasikan ke program robot sebenarnya.
B. Rumusan Masalah
1. Bagaimana merancang logika Fuzzy dalam aplikasi matlab untuk line follower 2. Bagaimana logika Fuzzy bekerja untuk mengoptimalkan pengendalian system
robot line follower
C. Tujuan
1. Mengetahui sistem fuzzy logic untuk robot line folllower.
2. Mensimulasikan fuzzy logic pada robot line follower dengan menggunakan matlab.
D. Metode Penelitian
Metode yang digunakan dalam penyusunan makalah ini dengan beberapa tahap yaitu :
1. Observasi, pengumpulan data-data melalui pembacaan buku-buku teori pendukung tugas akhir, Internet, dan dari kakak tingkat serta dosen.
2. Perancangan, perancangan data pada aplikasi matlab 3. Pengujian yaitu menguji output pada aplikasi matlab.
BAB II
LANDASAN TEORI A. Fuzzy Logic
Logika fuzzy atau fuzzy logic bermula dari kenyataan bahwa dunia nyata sangat kompleks. Kompleksitas ini muncul dari ketidakpastian dalam bentuk informasi imprecision (ketidakpastian). Mengapa komputer yang dibuat oleh manusia tidak mampu menangani persoalan yang kompleks dan tidak presisi ini sedangkan manusia bisa. Jawabanya adalah manusia mempunyai kemampuan untuk menalar (Reasoning) dengan baik yaitu kemampuan yang komputer tidak mempunyainya.pada suatu sistem jika kompleksitasnya berkurang, maka persamaan matematik dapat digunakan dan ketelitian yang dihasilkan menjadi sangat berguna dalam pemodelan sistem tetapi jika kompleksitasnya bertambah dimana persamaan matematik tidak dapat digunakan , logika fuzzy menjadi salah satu alternatif penyelesaiannya. Logika fuzzy merupakan alternatif cara berpikir yang dapat memodelkan kompleks sistem menggunakan pengetahuan dan pengalaman yang dipunyai logika dimulai sebagai studi tentang bahasa dalam argument dan persuasif , dan hal itu kemungkinan digunakan untuk menilai kebenaran dari rantai reasoning, dalam bentuk matematikanya sebagai contoh adalah sebagai berikut : Dalam dua nilai logika proporsinya bisa benar atau salah , tetapi tidak keduanya. Kebenaran ditandai dengan statement(pernyataan) nilai kebenaran. Dalam fuzzy logic proporsi kemungkinan benar atau salah atau mempunyai setengah nilai kebenaran , seperti kemungkinan benar.
Ide pemikiran pada sistem fuzzy yaitu nilai kebenaran (dalam fuzzy logic) atau nilai fungsi keanggotaan (Membership function) dalam fuzzy set diindikasikan oleh nilai pada range [0.0,1.0], dengan 0.0 mewakili kesalahan absolut dan 1.0 mewakili kebenaran absolut. Dalam kasus ini berhubungan dengan multivalued logic(logika bernilai banyak). Sebagai contoh , kalimat :”Arthur is old.”
true and false kadang-kadang tidak cukup manakala menguraikan dan menggambarkan pemikiran manusia. Logika fuzzy menggunakan keseluruhan
interval 0(False) dan 1(True) untuk menguraikan pemikiran manusia . Sebagai hasilnya logika fuzzy diterapkan dalam mengatur sebuah sistem karena sifatnya yang lebih sesuai dengan cara berpikir manusia.
1. Sejarah Fuzzy Logic
Sistem fuzzy merupakan suatu alternatif untuk pemikiran tradisional dari set keanggotaan dan logika yang berasal dari filosopi yunani dan aplikasi pada intelegensia semu. Logika fuzzy pertama kali diperkenalkan oleh seseorang professor computer science dari University of California di Berkeley yang bernama Lofti A.Zadeh pada tahun 1965 dan berhasil diaplikasikan dalam bidang kontrol oleh E.H.Mamdani. Sejak itu aplikasi dari logika fuzzy ini berkembang pesat terutama dinegara Jepang dengan dihasilkannya ribuan paten mulai dari bermacam-macam produk elektronik sampai aplikasi pada kereta api di kota Sendai. Logika fuzzy pada dasarnya merupakan logika bernilai banyak(Multivalued Logic)yang dapat mendefinisikan nilai diantara keadaan yang biasa dikenal seperti ya atau tidak, hitam atau putih, benar atau salah. logika fuzzy menirukan cara manusia mengambil keputusan dengan kemampuannya bekerja dari data yang samar atau tidak rinci dan menemukan penyesuaian yang tepat.
2. Teori Set Fuzzy (Fuzzy Set Theory)
Teori set fuzzy atau Fuzzy set theory adalah perpanjangan dari teori himpunan crisp yang konvensional. Fuzzy set theory mengatur konsep dari partial truth (nilainya antara 1(True)dan 0(False)). Dikenalkan oleh Prof.Lotfi A. Zadeh di UC/Berkeley pada tahun 1965 untuk dimaksudkan sebagai memodelkan kesamaran dan ambiguitas dalam sistem yang kompleks.
gray levelnya bernilai 100. Semua gray level yang nilainya antara 0 dan 100 adalah elemen dari set ini, yang lain nya tidak termasuk dalam set ini (Gambar 2.1 bagian kiri) Tetapi kegelapannya hanya masalah pada derajat. Jadi sebuah fuzzy set bisa memodelkan properti ini dengan lebih baik.Untuk mendefinisikan himpunan ini ,kita juga membutuhkan dua threshold, katakanlah gray level 50 dan 150.Semua gray level yang dibawah 50 adalah full member dari himpunannya, gray level yang di atas 150 bukan merupakan member dari himpunannya. Gray level diantara 50 dan 150, mempunyai sebagian membership dalam himpunan (Gambar 2.1 bagian kanan).
3. Fungsi Keanggotaan
Fungsi keanggotaan (membership function) adalah suatu kurva yang menunjukkan pemetaan titik – titik input data ke dalam derajat keanggotaannya yang memiliki interval antara 0 sampai 1. Pada dasarnya ada dua cara mendefinisikan keanggotaan dari Fuzzy Set, yaitu secara numeris dan fungsional. Definisi numeris menyatakan fungsi derajat keanggotaan sebagai vektor jumlah yang tergantung pada tingkat diskretisasi. Misalnya, jumlah elemen diskret dalam semesta pembicaraan. Definisi fungsional menyatakan derajat keanggotaan sebagai batasan ekspresi analitis yang dapat dihitung. Standar atau ukuran tertentu pada fungsi keanggotaan secara umum berdasar atas semesta X bilangan real.
4. Tahap Pemodelan dalam logika Fuzzy:
Apabila diterapkan dalam pengendalian proses dapat diterapkan seperti blok di bawah ini:
Gambar 2. 2. Fuzzy logicpada proses pengendalian Keterangan :
1. Fuzzifikasi adalah proses untuk mengubah variabel non fuzzy (variabel numerik) menjadi variabel fuzzy (variabel linguistik).
2. Inferencing (Ruled Based) , pada umumnya aturan-aturan fuzzy dinyatakan dalam bentuk “IF……THEN” yang merupakan inti dari relasi fuzzy.
3. Defuzifikasi adalah proses pengubahan data fuzzy tersebut menjadi data-data numerik yang dapat dikirimkan ke peralatan pengendalian.
B.Prinsip Kerja Robot Line Follower
Robot menggunakan sensor Infrared (IR) untuk mendeteksi garis pembimbing. Masing-masing sensor terdiri dari pasangan infrared emitting diode (IRED) sebagai pemancar (Tx) dan phototransistor sebagai sensor (Rx). Jumlah sensor IR yang dipasang pada robot line follower ini terdiri dari 8 buah yang dipasang sejajar dan menghadap ke lantai. Keluaran dari sensor masih berupa sinyal analog yang bergantung dari jumlah pancaran sinar inframerah yang dipantulkan dan diterima oleh sensor phototransistor. Sensor dipasang pin ADC dan selanjutnya oleh mikrokontroler ditentukan nilai untuk menghasilkan keluaran berupa logika “0” ketika pembacaan ADC pada garis hitam, dan menghasilkan keluaran “1” ketika pembacaan ADC pada latar putih.Konfigurasi pemasangan sensor adalah sebagai berikut :
Gambar 2.3. Konfigurasi posisi sensor
Gambar 2.4 Kemungkinan posisi sensor pada lintasan
BAB III
PERANCANGAN
A. Implementasi Fuzzy Logic Controller
Perangkat lunak sistem robot line follower berupa program yang didalamnya meliputi proses pembacaan sensor, proses fuzzy logic controller untuk navigasi dan proses pengendalian gerakkan robot line follower.
Diagram alir program secara keseluruhan dapat dilihat pada gambar berikut :
Gambar 3.1. Diagram alir program
Proses Implementasi fuzzy logic controller meliputi proses fuzzifikasi (kuantisasi Crisp Input sensor dan derajat keanggotaan), evaluasi rule (aturan) dan defuzzifikasi.
START
Baca Sensor
Fuzzy Logic
Output berupa PWM motor
Proses fuzzy logic controller dalam bentuk program menggunakan bahasa C dengan kompiler CodeVision AVR.
Dalam sistem logika fuzzy, sebagai crisp input (masukan) adalah posisi dari 8 sensor IR yang dipasang didepan robot menghadap ke lantai yang akan mendeteksi lintasan. Crisp output (keluaran) dari sistem logika fuzzy adalah kecepatan putaran motor DC dengan teknik PWM dan arah kemudi robot.
Adapun lintasan yang akan digunakan memiliki banyak variasai belokan sehingga, akan ada beberapa variasi belokan agar robot dapat menelusuri garis dengan baik. Adapun lintasan yang akan digunakan.
Gambar 3.2 Lintasan Line Follower
Gambar 3.3. Derajat keanggotaan (MF) input posisi sensor
Gambar 3.3. Derajat keanggotaan (MF) crisp output untuk kecepatan PWM motor kanan
Gambar 3.4. Derajat keanggotaan (MF) crisp output untuk kecepatan PWM motor kiri
Sedangkan untuk arah kemudi robot dapat ditentukan dari perbedaan kecepatan putaran motor berdasarkan derajat keanggotaan masing-masing PWM motor. Arah navigasi ini didefinisikan sebagai berikut :
Tabel 3.1. Arah Navigasi robot
Aksi robot (navigasi) PWM kanan PWM kiri
Belok kiri tajam Sangat cepat Sangat lambat
Belok kiri agak tajam Sangat cepat Lambat
Maju Sedang Sedang
Belok kanan tajam Sangat lambat Sangat cepat
Belok kanan agak tajam Lambat Sangat cepat
Belok kanan Lambat Cepat
Rule (aturan) yang digunakan adalah sistem fuzzy berbasis aturan, aturan ini diekstak dari pemikiran manusia. Untuk robot line follower yang dirancang menggunakan rule sebagai berikut :
1. Jika posisi sensor sangat_kiri maka arah navigasi belok kanan Tajam 2. Jika sensor agak tajam kiri maka arah navigasi robot belok kanan agak
tajam
3. Jika Posisi sensor kiri maka arah navigasi belok kanan. 4. Jika Posisi sensor tengah maka navigasi maju.
5. Jika Posisi sensor kanan maka navigasi belok kiri.
6. Jika sensor agak tajam kanan maka arah navigasi robot belok kiri agak tajam
Gambar 3.5 . Proses pemasukan rule pada matlab
BAB IV ANALISIS A. Pembacaan nilai ADC
Pada robot ini sensor yang digunakan masuk kedalam pin ADC sehingga kita harus mendifinisikan garis hitam atau[un layar putih dengan mengkalibrasi sensor garis.
Adapun data pembacaan sensor adalah sebagai berikut :
Warna Nilai ADC
Hitam 785
Putih 123
status_sensor1=1; }
}
B. Output PWM motor
Output pada simulasi matlab kita dapat menggunakannya untuk program penentuan pada PWM motor. Adapun hasil dari simulasi matlab adalah sebagai berikut
Gambar 4.1 contoh output pada simulasi
PWM kanan yaitu 180 dan output PWM kiri yaitu 20, ini sangat sesuai karena robot akan bergerak belok kiri tajam.
BAB III KESIMPULAN A. Kesimpulan.
Dari percobaan-percobaan yang telah dilakukan, maka dapat diambil kesimpulan . 1. Sistem logika fuzzy dapat diimplementasikan dalam sistem navigasi untuk
sebuah robot line follower
2. Program aplikasi matlab dapat digunakan sebagai simulasi sebelum kita mengaplikasikan pada robot yang sesungguhnya
3. Robot dapat mengikuti semua kemungkinan garis pada lintasan
B. Saran
1. Respon sistem masih dapat diperbaiki dan ditingkatkan dengan men-tuning bentuk fungsi keanggotaan (Membership Function) dan aturan (rule) yang digunakan.