Implementasi Algoritma Fuzzy Logic Pada Robot Autopilot Line Follower Berbasis Mikrokontroler ATMega32A (Studi Kasus : Miniatur Bus Lintas USU) Cholik Indriyanto1, Poltak Sihombing2, Seniman3 Program Studi S1 Ilmu Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara
[email protected] [email protected]
[email protected]
Abstrak— Robot Line Follower adalah
robot yang bergerak berdasarkan nilai masukkan dari sensor proximity yang digunakan untuk mendeteksi garis hitam atau garis putih yang telah ditentukan. Robot autopilot line follower ini merupakan robot yang dirancang untuk menggantikan kendaraan yang masih menggunakan tenaga manusia sebagai pengendali (supir) menjadi kendaraan yang otomatis. Robot ini memiliki kemampuan untuk berjalan dan mengantarkan penumpang dari satu halte ke halte berikutnya secara otomatis tanpa menggunakan bantuan tenaga manusia. Pada penelitian ini robot autopilot line follower menggunakan mikrokontroler ATMega32A sebagai pengendali dan menggunakan bahasa pemrograman C untuk membuat program utama pada robot. Hasil yang diperoleh dari penelitian ini adalah robot bergerak mengikuti miniatur jalur bus lintas usu sesuai dengan data yang dihasilkan oleh sensor proximity yang telah di kelompokkan kedalam fungsi gerak robot. Robot juga dapat mendeteksi adanya halangan didepan robot serta robot juga dapat diremote melalui smartphone android, sehingga pengguna dapat menghentikan gerakan robot ketika robot keluar dari jalur yang telah ditentukan. kunci: Autopilot, Line Follower, ATMega32A, Kendaraan Otomatis, Algoritma Fuzzy Logic, Android Remote. Kata
I.
PENDAHULUAN
A. Latar Belakang Perkembangan ilmu pengetahuan dapat dirasakan dalam berbagai dimensi kehidupan manusia. Perkembangan ilmu pengetahuan itu sendiri telah memacu perkembangan teknologi. Kedua hal tersebut merupakan tolok ukur kemajuan dalam bidang industri suatu bangsa. Ilmu pengetahuan dikembangkan untuk menciptakan teknologi yang mempermudah pekerjaan manusia. Perkembangan teknologi juga menjadi pengaruh dalam bidang transportasi.
Di era modern saat ini keberadaan peralatan transportasi menjadi sangat penting. Kebutuhan alat transportasi yang aman dan nyaman merupakan hal yang sangat didambakan. Sampai saat ini, sebagian besar sistem navigasi atau kemudi alat transportasi darat (mobil) masih banyak dilakukan dengan tenaga manusia. Untuk dapat mengendalikan mobil dengan baik seseorang harus mempunyai keterampilan khusus, juga diperlukan konsentrasi disaat mengendalikannya di jalan raya. Mengemudi kendaraan dengan konsentrasi yang kurang sangat berbahaya, karena berisiko besar terjadi kecelakaan. Untuk itu diperlukan suatu sistem yang dapat membantu manusia dalam mengendarai kendaraan. Sistem yang bersifat otomatis ini diharapkan dapat membantu atau bahkan menggantikan sebagian besar peran pengemudi dalam mengendalikan mobil. Robot merupakan mesin hasil rakitan karya manusia yang bekerja tanpa mengenal lelah. Definisi lain dari robot adalah peralatan elektro-mekanik atau bio-mekanik, atau gabungan peralatan yang menghasilkan gerakan yang otonomi maupun gerakan berdasarkan yang diperintahkan. Dalam bidang kendali otomatis, sejumlah metodologi termasuk kendali nonlinear, kendali fuzzy, neural control, dan neural fuzzy control telah diaplikasikan. Penggunaan metodologi logika fuzzy dalam pengembangan sistem kendali, termasuk dalam pengendalian mobile robot telah banyak dilakukan. Algoritma kendali logika fuzzy mampu mengkondisikan mesin atau sistem untuk mengerti dan merespon konsep yang bersifat samar atau besarnya tidak ditentukan secara pasti (vague concept) seperti ‘panas’, ‘dingin’, ‘cepat’, ‘lambat’, dan lain sebagainya. Pada penelitian sebelumnya yang dilakukan oleh Ahmad Royhan Putra S. (2014). Membuat penelitian yang berjudul Mencari Lintasan Terpendek Dengan Robot Line Follower Menggunakan Mikrokontroler ATMega32 dan Algoritma A*(A Star). Implementasi pada penelitian menggunakan garis berwarna hitam sebagai jalur untuk robot. Hasil dari penelitian yang dilakukan adalah mencari lintasan terpendek yang terdapat pada lintasan miniatur Universitas Sumatera Utara dengan menggunakan start point dan stop point yang telah ditentukan oleh user. Berdasarkan permasalahan yang ada, pada penelitian ini penulis akan membangun suatu robot autopilot line follower
yang merupakan robot daratan (ground robot) yang menggunakan roda sebagai media berjalan robot. Robot akan berjalan mengikuti lintasan dan akan berhenti pada tiap-tiap pemberhentian penumpang yang telah di beri tanda (stop marker). Robot ini akan diimplementasikan menggunakan algoritma fuzzy logic. II.
TINJAUAN PUSTAKA
(Reduced Instruction Set Computing), dengan menggunakan jumlah instruksi yang lebih sedikit, memungkinkan lahan pada chip (silicon real-estate) digunakan untuk meningkatkan kemampuan chip. Keuntungan dari RISC adalah kesederhanaan desain, chip yang lebih kecil, jumlah pin sedikit dan sangat sedikit mengkosumsi daya (Budiharto. 2010). ATMega32 dapat dilihat pada gambar 1 :
A. Line Follower Robot (Robot Pengikut Garis) Line follower robot adalah robot yang didesain untuk dapat berjalan mengikuti garis yang membentuk sebuah alur mapping tertentu (biasanya garis yang dipakai berwana hitam atau putih). Beberapa hal yang perlu dalam merancang line follower robot ini adalah mekanika, elektronik, dan algoritma (software) dari robot (Susilo. 2010). Line follower robot yang akan dibangun menggunakan dua motor penggerak dan sekaligus sebagai motor pengemudi, yaitu berupa motor kanan dan motor kiri, sensor ultrasonik sebagai pendeteksi halangan didepan robot, photosensor sebagai pendeteksi garis, dan main board yang terdiri dari mikrokontroler ATMega32A dan driver motor DC. B. Logika Fuzzy Fuzzy secara bahasa diartikan sebagai kabur atau samar-samar. Suatu nilai dapat bernilai besar atau salah secara bersamaan. Dalam fuzzy dikenal derajat keanggotaan yang memiliki rentang nilai 0 (nol) hingga 1(satu). Berbeda dengan himpunan tegas yang memiliki nilai 1 atau 0 (ya atau tidak). Logika fuzzy adalah suatu cara yang tepat untuk memetakan suatu ruang input kedalam suatu ruang output, mempunyai nilai kontinyu. Fuzzy dinyatakan dalam derajat dari suatu keanggotaan dan derajat dari kebenaran. Oleh sebab itu sesuatu dapat dikatakan sebagian benar dan sebagian salah pada waktu yang sama (Kusumadewi. 2013). Logika Fuzzy memungkinkan nilai keanggotaan antara 0 dan 1, tingkat keabuan dan juga hitam dan putih, dan dalam bentuk linguistik, konsep tidak pasti seperti "sedikit", "lumayan" dan "sangat". Kelebihan dari teori logika fuzzy adalah kemampuan dalam proses penalaran secara bahasa (linguistic reasoning). Sehingga dalam perancangannya tidak memerlukan persamaan matematik dari objek yang akan dikendalikan. C. Mikrokontroler ATMega32A Mikrokontroler adalah chip yang berisi berbagai unit penting untuk melakukan pemrosesan data (I/O, timer, memory, Arithmatic Logic Unit (ALU) dan lainnya) sehingga dapat berlaku sebagai pengendali dan computer sederhana. Mikrokontroler AVR (Alf and Vegard’s Risc processor) standar memiliki 8 bit, dimana semua instruksi dikemas dalam kode 18-bit dan sebagian besar instruksi dieksekusi dalam 1 (satu) siklus clock. AVR berteknologi RISC
Gambar 1. Konfigurasi Pin ATMega32 Untuk dapat menggunakan atau mengoprasikan mikrokontroller ATMega32, harus dibuat sistem minimum yang meliputi komponen antara lain : sumber tegangan (Vcc) sebesar 5V DC, Ground (Gnd) dan sistem reset. Mikrokontroller ATMega32 memiliki clock generator internal sebesar 1 MHz, sehingga mikrokontroller ini dapat bekerja langsung tanpa harus menggunakan clock external. D. Aktuator Motor DC adalah suatu mesin yang berfungsi untuk mengubah energi listik arus searah menjadi energi gerak atau energi mekanik. Motor DC terdiri dari dua bagian utama, yaitu rotor dan stator. Rotor adalah bagian yang berputar atau armature, berupa koil dimana arus listrik dapat mengalir. Stator adalah bagian yang tetap dan menghasilkan medan magnet dari koilnya (Budiharto. 2010). Motor DC biasanya mempunyai kecepatan putar yang cukup tinggi dan sangat cocok digunakan untuk roda robot yang membutuhkan kecepatan gerak yang tinggi. Pada penelitian ini motor DC digunakan sebagai penggerak utama robot line follower. Driver motor DC L298 memiliki dua buah rangkaian HBridge di dalamnya, sehingga dapat digunakan untuk mendrive dua buah motor DC. H-Bridge driver motor DC L298 masing-masing dapat mengantarkan arus hingga 2A.
Gambar 2. Driver Motor DC L298
E. Sensor Proximity Sensor proximity merupakan sensor yang dapat mengetahui ada atau tidaknya suatu objek. Bila objek berada di depan sensor maka keluaran dari rangkaian sensor akan berlogika “1” (high) yang berarti “objek ada”, dan sebaliknya jika objek tidak dapat ditemukan maka keluaran dari rangkaian sensor akan berlogika “0” (low) yang berarti objek “tidak ada”. Robot line follower menggunakan sensor proximity yang dapat mendeteksi ada atau tidak adanya suatu garis. Sensor ini dibuat dari pasangan IRED (InfraRed Emitting Diode) sebagai pemancar cahaya dan Photodiode sebagai sensor penerima cahaya.
Gambar 5. Arsitektur Protokol Bluetooth III.
ANALISIS DAN PERANCANGAN
A. Analisis Masalah
Gambar 3. Cara Kerja Sensor Proximity F. Sensor Ultrasonik Sensor jarak ultrasonik sangat cocok dipakai untuk aplikasiaplikasi yang membutuhkan pengukuran jarak. Sensor jarak ultrasonik yang dipakai dalam penelitian ini adalah sensor HC-SR04. Sensor HC-SR04 memiliki kemampuan membaca jarak dari 2 cm sampai 500 cm.
Untuk mengidentifikasi masalah digunakan diagram Ishikawa. Diagram Ishikawa adalah sebuah alat grafis yang digunakan untuk mengidentifikasi, mengeksplorasi dan menggambarkan masalah serta sebab dan akibat dari masalah tersebut. Ini sering disebut juga diagram sebab – akibat atau diagram tulang ikan (fishbone diagram). Masalah utama adalah tidak bisanya robot line follower untuk menentukan lintasan mana yang akan dijalaninya dan dimana robot seharusnya berhenti. Secara umum robot line follower akan bergerak secara acak mengikuti garis yang diterima oleh sensor, sehingga robot sangat sulit untuk menentukan lokasi tempat pemberhentian robot. Masalah-masalah yang ada dapat dilihat pada Gambar 6.
Gambar 4. HC-SR04Sinyal Kontrol Pada gambar 4 signal high diberikan selama 10 mikrodetik kemudian diberikan logika low, setelah itu ketika pin echo menerima signal high maka pencacah dinaikkan untuk menghitung berapa lama signal high diterima oleh mikrokontroler . Semakin tinggi nilai pencacah maka semakin jauh jarak sensor terhadap dinding dan sebaliknya. G. Bluetooth Bluetooth didefinisikan sebagai sebuah arsitektur protokol ber-layer yang mengandung protokol inti, pengganti kabel dan protokol telepon serta protokol adaptasi. Pada bagian selanjutnya akan dibahas lebih lanjut mengenai masing– masing blok dari arsitektur protokol sebagaimana yang terlihat pada Gambar 5.
Gambar 6. Ishikawa diagram B. Perancangan 1)
Konstruksi Utama
Kerangka adalah konstruksi yang nantinya akan menentukan desain, bentuk dan ukuran dari komponen fisik lainnya. Fungsi utama dari kerangka adalah sebagai tempat atau kedudukan untuk seluruh komponen robot.
Pemilihan material akan sangat berpengaruh terhadap konstruksi robot seperti berat, kekuatan, ketahananan terhadap keretakan dan kemampuan meredam getaran. Perpaduan diantaranya akan menghasilkan konstruksi yang kuat. Kerangka robot Line Follower dirancang menggunakan bahan plastik keras (acrilyc) karena mudah dalam pengerjaannya, kuat, tidak mudah retak dan mudah didapat. Kerangka robot didesain dengan dimensi berukuran 15,5 cm x 25 cm x 15 cm. Rancangan kerangka robot dapat dilihat pada Gambar 7.
Tabel 2. Tabel Nama Halte Bus Kode
Nama Halte
Nama Jalan
A
Halte Kantor Pos Pintu I
Jl. Universitas (Pintu I)
B
Halte Fasilkom-TI
Jl. Universitas (Pintu I) Jl. Universitas (Pintu I)
C
Halte Asrama Putri
D
Halte H. Anif
Jl. Dr. A Sofyan
E
Halte FISIP
Jl. Dr. A Sofyan
F
Halte FMIPA
Jl. Abdul Hakim
G
Halte F.Farmasi
Jl. Tri Dharma (Pintu IV)
H
Halte BNI Pintu IV
Jl. Tri Dharma (Pintu IV) Jl. Almamater (Pintu III)
I
Halte Biro Rektor USU
J
Halte FKG
Jl. Alumni
K
Halte GeMa
Jl. Universitas (Pintu I)
Gambar 7. Perancangan Kerangka Robot 3)
Perancangan Sensor Robot
Sensor proximity berfungsi sebagai alat yang digunakan untuk membaca garis hitam dan garis putih. Garis hitam yang terbaca oleh sensor akan menghasilkan nilai logika “1”, sedangkan garis putih yang diterima sensor akan menghasilkan nilai logika “0”. Sensor proximity yang digunakan berjumlah delapan pasang, dengan letak sensor empat buah di sebelah kiri dan empat buah di sebelah kanan. Berikut rancangan sensor proximity pada robot dapat dilihat pada Gambar 9.
G
Gambar 10. Lintasan Robot 5)
Perancangan Antar Muka Remote Dengan Smartphone
Pada perancangan remote terdapat empat tombol yang masing-masing dapat digunakan untuk mengontrol robot. Perancangan antar muka aplikasi remote pada smartphone android dapat di lihat pada Gambar 3.12.
E E Gambar 9. Rancangan sensor Proximity Pada PCB 4)
J
D K
Perancangan Lintasan Robot
Pada perancangan sistem, data peta yang digunakan adalah peta Universitas Sumatera Utara yang diperoleh dari situs USU dan Google Earth. Kemudian setiap jalan yang di lewati oleh bus lintas USU diberi warna hitam sebagai rancangan untuk lintasan robot dan untuk tempat yang lain di peta diberi warna putih.
C
B
Gambar 11. Perancangan Antar Muka Aplikasi Remote
A
Berikut keterangan tombol yang terdapat pada antar muka aplikasi remote : 1. Display Status Display status digunakan untuk menampilkan informasi tentang status robot saat ini. 2. Connect Tombol ini digunakan untuk memulai menyambungkan antara smartphone dengan robot melalui bluetooth. 3. Disconnect Tombol ini digunakan untuk memutuskan sambungan bluetooth pada smartphone dengan robot. 4. Start Tombol start digunakan untuk memberikan perintah jalan pada robot. 5. Stop Tombol stop digunakan untuk memberikan perintah berhenti pada robot ketika robot sedang berjalan. 6)
Basis Pengetahuan
Logika Pengambilan
Fuzzyfikas
Defuzzyfikasi
Keputusan
Gambar 13. Struktur Dasar Pengendali Fuzzy A)
Fuzzyfikasi
Pada tahap ini terjadi pengubahan nilai derajat dari keluaran nilai referensi sensor menjadi variabel linguistik yang ditentukan menggunakan fungsi keanggotaan. Untuk menghasilkan keputusan yang akurat, langakah awal dalam fuzzyfikasi adalah membuat fungsi keanggotaan pada sistem serta menentukan variabel linguistik didalam fungsi keanggotaann yang akan dibuat. Perancangan sistem fuzzy pada robot ini yaitu terletak pada sensor jarak yang terdapat didepan robot. Nilai referensi pada sistem diperoleh melalui persamaan berikut:
Perancangan Perangkat Lunak
Ref = (n_min + n_max) / 2 Keterangan : - n_min : nilai minimum yang didapat oleh sensor - n_max : nilai maksimum yang diperoleh sensor Pada sistem ini nilai masukan diperoleh dari sensor ultrasonik pada bagian depan robot. Masukan dari sensor mempunyai 2 variabel linguistik, yaitu dekat, dan jauh. Dengan menggunakan fungsi keanggotaan trapesium, fungsi keanggotaan dari output sensor ultrasonik ditunjukkan pada gambar 14.
Gambar 14. Fungsi Keanggotaan Gambar 12. Flowchart Robot 7)
Perancangan Fuzzy Logic
Pada sistem ini perangkat sensor ultrasonik digunakan sebagai input jarak yang setelah diolah nantinya input tersebut digunakan untuk respon gerak robot terhadap halangan yang terdapat didepan robot.
B)
Rule Inference
Pada rule inference terjadi proses pengubahan input fuzzy menjadi output fuzzy dengan cara mengikuti aturan-aturan (IF-THEN rules) yang telah ditetapkan pada basis pengetahuan fuzzy. Aturan-aturan pada sistem ini ditunjukkan pada tabel 3. Dari aturan-aturan yang dibuat inilah yang akan menentukan respon sistem terhadap kondisi-kondisi berdasarkan input dari sensor.
Tabel 3. Aturan-Aturan Pada Sistem Rule 1 2
Sensor Sensor > ref Sensor < ref
Keterangan jauh dekat
lebar 13,8 cm. Sedangkan tinggi setiap tingkat adalah kurang lebih 4,4 cm. Tahap implementasi kerangka pada robot dapat dilihat pada gambar 16.
Dari tabel di atas, maka dapat diperoleh 2 aturan sebagai berikut : - IF sensor=jauh THEN jarak=1 - IF sensor=dekat THEN jarak=0 C)
Defuzzyfikasi
Proses ini merupakan pengolahan data yang diperoleh dari fuzzyfikasi mengubah kedalam bentuk tegas. Berikut flowchart proses pengambilan keputusan pada robot :
Gambar 16. Kerangka Robot 2)
Implementasi Rangkaian Sirkuit Elektronika
Rangkaian sirkuit elektronik diimplementasikan dengan menggunakan papan PCB. Penggunaan papan PCB dapat meminimalisir noise dan lebih stabil dibandingkan dengan penggunaan protoboard, disamping itu juga peletakan komponen elektronik pada papan PCB lebih kuat dibandingkan diletakkan pada protoboard.
Gambar 15. Proses Pengambilan Keputusan IV.
IMPLEMENTASI DAN PENGUJIAN
A. Implementasi 1)
Gambar 17. Implementasi Layout ke PCB
Implementasi Kerangka Robot
Kerangka robot dibuat dengan 3 tingkat. Dimana tingkat
pertama digunakan untuk menempatkan sensor proximity. Kemudian pada tingkat kedua digunakan untuk menempatkan motor, driver motor, board sensor, regulator serta baterry. Pada tingkat ketiga ditempatkan rangkaian sistem minimum ATMega32 (MCU), sensor ultrasonik, dan power supply, dengan susunan ini nantinya user akan dengan mudah berinteraksi dengan robot (user interface). Untuk setiap tingkat kerangka dibuat dengan ukuran panjang 14 cm dan
3)
Implementasi Lintasan Robot
Implementasi lintasan robot dilakukan dengan dicetak atau diprint. Ukuran lintasan setelah di-print adalah panjang 4 meter dan lebar 2,75 meter. Lintasan dibuat sesuai dengan pemetaan yang telah dibahas pada bab sebelumnya. Lintasan ini menggunakan skala perbandingan ukuran dengan ukuran pemetaan sebenarnya. Skala perbandingan yang dibuat adalah 1 : 500. Berikut gambar hasil implementasi lintasan robot (Gambar 18).
Gambar 18. Lintasan Robot
Gambar 20. Pengujian Robot Maju
5) Implementasi Algoritma Fuzzy Logic Implementasi penerapan algoritma Fuzzy Logic dalam sistem dibuat dengan menggunakan software CodeVision AVR dengan bahasa pemprograman C. Algoritma Fuzzy Logic melakukan proses scanning jarak pada sensor ultrasonik lalu memasukkan kedalam fungsi keanggotaan yang telah dibuat. void obstacle(){
Gambar 21. Pengujian Robot Belok Kanan
ref=(n_min+n_max)/2; hcsr();
if (TCNT0
{jarak=0;// dekat}
else if (TCNT0>ref)
{jarak=1; //jauh}}
Gambar 19. Implementasi Algoritma Fuzzy Logic Gambar 22. Pengujian Robot Belok Kiri
B. Pengujian 1)
Pengujian Aktuator Robot
Pengujian aktuator robot menyangkut pada bagian penggerak motor dengan modul program. Pengujian ini dilakukan untuk melihat apakah pergerakan robot sesuai dengan modul program yang dibuat. Sebagai contoh jika modul program memanggil rutin program ‘maju()’, maka robot akan berjalan maju, dan menandakan tahap pengujian ini sudah berfungsi dengan baik, dapat dilihat pada Tabel 4.
Gambar 23. Pengujian Robot Deteksi Halangan
Tabel 4. Hasil Pengujian Aktuator
Gambar 24. Pengujian Robot Berhenti
V.
KESIMPULAN DAN SARAN
[5]
Kusumadewi, S. & Purnomo, H. 2013. Aplikasi Logika Fuzzy untuk Pendukung Keputusan. Edisi 2. Graha Ilmu : Yogyakarta.
Berdasarkan hasil dari implementasi dan pengujian perancangan robot autopilot line follower bus lintas usu menggunakan Algoritma fuzzy logic, maka penulis mengambil kesimpulan sebagai berikut:
[6]
Putra S.A.R. 2014. Mencari Lintasan Terpendek Dengan Robot Line Follower Menggunakan Mikrokontroler ATMega32 dan Algoritma A*(A Star). Skripsi. Universitas Sumatera Utara : Medan.
1.
[7] Rahmansyah, M.F. 2014. Prototipe Robot Line Follower Pengantar Makanan Berbasis Mikrokontroller ATMega32 Menggunakan Algoritma Fuzzy. Skripsi. Universitas Sumatera Utara : Medan.
A. Kesimpulan
2.
Robot Line Follower yang dibangun merupakan tipe robot yang bergerak secara otomatis dari halte satu menuju halte yang lainnya, dengan hanya menekan tombol start pada smartphone maka robot akan bergerak mengikuti lintasan bus yang telah dibuat. Robot akan berhenti ketika ada halangan didepan robot dan akan bergerak kembali setelah tidak ada lagi halangan didepan robot.
B. Saran Berikut beberapa saran yang penulis berikan pengembangan lebih lanjut dari penelitian ini: 1. 2. 3. 4.
5.
untuk
Robot bus lintas USU sebaiknya di lengkapi dengan sensor PIR (Passive Infra Red) agar dapat mendeteksi masih ada atau tidaknya penumpang di sekitar halte. Agar gerak robot lebih halus dan sempurna sebaiknya menggunakan algoritma PID (Proporsional Integral Derrivativ). Menggunakan perhitungan perputaran roda untuk menentukan robot berbelok dan berhenti. Robot bus lintas USU sebaiknya menggunakan 4 buah roda agar robot dapat berjalan dengan baik di lintasan yang tidak rata. Menambahkan sensor untuk mendeteksi adanya lubang di jalan, sehingga robot dapat berjalan perlahan di lintasan yang terdapat lubang. DAFTAR PUSTAKA
[1]
[2]
[3]
[4]
Ardiansyah, R. 2011. In System Programming AVR Menggunakan Koneksi Bluetooth. Jurnal Wima. Volume 10. No.1. Hal : 54-67. Universitas Katolik Widya Mandala Surabaya : Surabaya. Budiharto, W. 2010. Elektronika Digital dan Mikroprosesor. Penerbit Andi : Yogyakarta. Budiharto, W. 2010. Robotika Teori dan Impelemtasi. Penerbit Andi : Yogyakarta. Hamzah, M.I. & Abdalla, T.Y. 2013. Mobile Robot Navigation using Wavelet Network and Fuzzy Logic. International Journal of Computer Applications. Volume 79 - No 10. Page : 4-10. University of Basrah : Basrah. Iswanto. 2009. Mikrokontroller AT90S2313 dengan Basic Compiler. Penerbit Andi : Yogyakarta.
[8] Siegwart, R. & Nourbakhsh, I.R. 2004. Introduction to Autonomous Mobile Robots. The MIT Press : Cambridge. [9] Seniman. 2009 .Implementasi Algoritma Kriptografi AES pada Mikrokontroler ATMega32. Skripsi. Universitas Sumatra Utara : Medan. [10] Susilo, D. 2010. 48 Jam Kupas Tuntas Mikrokontroler MCS51 dan AVR. Penerbit Andi : Yogyakarta. [11] Suyadhi, T.D. S. 2010. Buku Pintar Robotika Bagaimana Merancang dan Membuat Robot Sendiri. Penerbit Andi : Yogyakarta. [12] Usman. 2008. Teknik Antarmuka dan Pemprograman Mikrokontroler AT89S52. Penerbit Andi : Yogyakarta. [13] Vans, E., Vachkov, G. & Sharma, A. 2014. Vision Based Autonomous Path Tracking of a Mobile Robot using Fuzzy Logic. IEE Asia-Pacific World Congress onComputer Science and Engineering 2014 (APWC on CSE 2014). Plantation Island : Fiji. [14] Wibowo, B.C. & Iqbal, M. 2013. Implementasi Metode Logika Fuzzy Pada Kontrol Keseimbangan Robot Mobil Beroda Dua. Jurnal SIMETRIS. Vol 3. No 1. Hal : 4151. Universitas Muria Kudus : Kudus.