dapat bekerja tetapi tidak sempurna. Oleh karena itu, agar USART bekerja dengan baik dan sempurna, maka error harus diperkecil sekaligus dihilangkan. Cara menghilangkan error tersebut digunakan frekuensi osilator sebesar 11059200 Hz (11,059200 MHz). Pada perhitungan yang sama dihasilkan error 0,00%. Beberapa nilai frekuensi osilator beserta error yang dihasilkan dapat dilihat pada Lampiran 8. Analisis Hasil Percobaan Pengujian selalu disertai dengan analisis. Analisi meliputi baik tidaknya sensor sebagai masukan, serta faktor-faktor apa saja yang memengaruhinya. Hal ini dilakukan karena dapat memengaruhi keputusan dari logika fuzzy yang telah dibuat. Selain itu, analisis dari rangkaian hardware pada setiap komponen yang rentan terhadap panas yang menyebabkan dapat mengurangi kinerja dari rangkaian komponen pengendali sistem. Lingkungan Pengembangan Sistem Spesifikasi perangkat keras dan perangkat lunak komputer yang digunakan dalam penelitian ini adalah sebagai berikut: Perangkat lunak : Microsoft Windows XP Professional, Matlab 7.7.0 R2008b, CodeVisionAVR C Compiler Version 1.25.9 Profesional, Notepad ++, AVRDude Gui. Perangkat keras : Prosesor Intel Core 2 Duo CPU 2.0 GHz, Memori 2 GB DDR3, hardrive 320 GB, Mikrokontroler ATMega16, LCD karakter 16x2.
HASIL DAN PEMBAHASAN Analisis Permasalahan
kecepatan berfungsi mengatur kecepatan robot Di sisi lain, sistem pengendali sudut belok berfungsi untuk mengatur arah belok robot sesuai dengan kesesuaian jarak yang dideteksi oleh ketiga buah sensor. Analisis Sensor Ultrasonik Dalam perancangan dan implementasi logika fuzzy untuk robot penghindar halangan, hal pertama yang harus dilakukan adalah menentukan jarak objek terhadap sensor. Jarak ini dihasilkan dari suatu rancangan kalibrasi pada sensor. Kalibrasi dilakukan untuk menyesuaikan jarak yang diukur manual dengan keluran dari bacaan sensor. Kemudian dilakukan proses pemograman untuk mengukur jarak melalui compiler CodeVison AVR ke mikrokontroler. Perancangan kalibrasi sensor Port yang digunakan adalah Port A untuk LCD, Port C.0 untuk sensor, dan Port D.0 untuk buzzer. Objek yang digunakan adalah satu buah buku sebagai halangan. Kemudian dilakukan pengukuran pada jarak minimal sampai dengan jarak maksimal yang dapat dibaca oleh sensor. Jarak sensor ke objek diukur kembali menggunakan penggaris, sehingga hasilnya dapat langsung dibandingkan dengan hasil pengukuran sensor. Data hasil pengukuran, terdapat adanya ketidaksamaan nilai jarak sensor terhadap objek dengan jarak pada penggaris, sehingga perhitungan sensor harus dikalikan dengan persamaan gradien hasil pengukuran. Nilai gradien yang dihasilkan dari data hasil pengukuran sebesar 0.950 yang ditunjukkan pada Gambar 9. Perhitungan untuk mendapatkan nilai gradien dapat dilihat pada Lampiran 9.
Analisis Sistem Fuzzy Sistem fuzzy pada gerak robot meliputi kecepatan dan sudut belok. Sistem pengendali
Jarak (cm)
Grafik hubungan antara Jarak (cm) terhadap Data pengukuran (cm) 25 20 15 10 5 0
y = 0.950x - 0.982
0
5
10
15
20
25
Data pengukuran (cm) Gambar 9 Grafik fungsi persamaan gradien 8
Berdasarkan Gambar 9, keseluruhan data mengalami ketidaksesuaian dengan jarak sensor terhadap objek. Hal ini dikarenakan modul dari sensor sensitif terhadap suhu di sekitarnya, sehingga nilai cepat rambat suara berubah dan memengaruhi hasil pembacaan sensor. Objek kedua yang digunakan adalah dua buah buku sebagai halangan, dan komponen Buzzer sebagai tanda peringatan. Tujuannya adalah untuk menentukan jangkauan objek dalam derajat. Jangkauan objek terhadap sensor disebut juga sudut elevasi sensor, besarnya adalah 450. Sensor yang digunakan sebanyak satu buah dan digunakan seutas tali serta sebuah busur derajat untuk mengukur besar sudut. Kemudian dilakukan pengukuran objek pada jarak tidak lebih dari 120 cm dengan sudut dari 00 sampai dengan 900. Untuk mengetahui seberapa besar sudut elevasi sensor, Buzzer akan menyala jika objek masih terdeteksi dan sebaliknya jika tidak terdeteksi maka Buzzer akan mati. Hasil pengujian sudut elevasi dapat dilihat pada Gambar 10.
Gambar 10 Sudut elevasi sensor ultrasonik Dari hasil pengukuran, kemampuan sudut elevasi sensor dalam mendeteksi objek sebesar 40o. Nilai ini sudah cukup mendekati dengan karakteristik dari sensor yang mampu mendeteksi objek kurang dari 450.
Perancangan Perancangan sistem fuzzy 1. Masukan crisp Masukan yang berupa jarak dari sensor ultrasonik meliputi jarak dekat (Near), jarak sedang (Medium,) dan jarak jauh (Far) yang didefinisikan sebagai berikut (Zarkasih 2007): Dekat : 0 cm < jarak_objek ≤ 6 cm Sedang : 6 cm < jarak_objek ≤ 12 cm Jauh : 12 cm < jarak_objek ≤ 18 cm 2. Fuzzifikasi Setelah mendapatkan nilai masukan dari sensor, kemudian dilakukan proses fuzzifikasi untuk mendapatkan nilai derajat keanggotaan. Untuk itu, diperlukan fungsi keanggotaan masukan. Fungsi keanggotaan masukan dibagi menjadi tiga buah variabel, yaitu sensor kiri, tengah, dan kanan. Setiap variabel masukan terdiri atas tiga fungsi himpunan, yaitu dekat, sedang, dan jauh. Fungsi keanggotaan untuk sensor kiri, tengah dan kanan adalah sama. Ketiga fungsi keanggotaan sensor diwakili oleh sensor kiri seperti ditunjukan pada Gambar 11.
Gambar 11 Fungsi keanggotaan masukan dari sensor kiri. Fungsi keanggotaan untuk representasi pada Gambar 11 berdasarkan Persamaan 4 dan 5 adalah: 1; ≤6
Analisis Perangkat Lunak Sebelum program fuzzy ditanamkan dalam mikrokontroler, pemilihan komponen hardware sangat mempengaruhi keluaran data seperti internal memory untuk kecepatan proses. Hal ini dilakukan untuk mengurangi error yang besar. Selain itu, untuk mencapai keakuratan dan ketepatan data, proses pemograman pada kompilator CodeVision AVR selalu disertai dengan perhitungan secara manual.
( )=
12 − 6
;6 ≤ 0;
≤ 12
≥ 12
0; ≤6 ⎫ −6 ; 6 ≤ ≤ 12 ⎪ = 6 ⎨18 − ⎬ ⎪ ; 12 ≤ ≤ 18⎪ ⎩ 6 ⎭ ⎧ ⎪
=
0 ; ≤ 12 − 12 ; 12 ≤ ≤ 18 6 1 ; ≥ 18
Fungsi keanggotaan masukan lengkap dapat dilihat pada Lampiran 1.
secara
Berikut diberikan contoh kasus. Misalkan nilai jarak terhadap objek yang dihasilkan oleh
9
sensor_kiri sebesar 4 cm, sensor_tengah sebesar 12 cm, dan sensor_kanan sebesar 10 cm.
Perhitungan secara lengkap dapat dilihat pada Lampiran 7.
Untuk proses perhitungan fuzzy, diberikan contoh pada sensor kiri sebesar 4 cm. Nilai tersebut dimasukkan ke dalam fungsi keanggotaan fuzzy pada tiap-tiap himpunan, antara lain:
4. Operasi Implikasi dari masukan (antecedent) ke keluaran (consequent).
Himpunan fuzzy dekat, [4] = 1 diperoleh dari: f(4) = 1 ; 4<6 Himpunan fuzzy sedang, [4] = 0 Himpunan fuzzy jauh, [4] = 0 3. Evaluasi aturan Aturan fuzzy pada robot penghindar halangan sebanyak 27 aturan. Aturan tersebut dapat dilihat pada Tabel 1. Tabel 1 Aturan fuzzy. Rule
Masukan (antecedent)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
Sensor
Sensor
Sensor
Kiri (L) Dekat Dekat Dekat Dekat Dekat Dekat Dekat Dekat Dekat Sedang Sedang Sedang Sedang Sedang Sedang Sedang Sedang Sedang Jauh Jauh Jauh Jauh Jauh Jauh Jauh Jauh Jauh
Tengah (F) Dekat Dekat Dekat Sedang Sedang Sedang Jauh Jauh Jauh Dekat Dekat Dekat Sedang Sedang Sedang Jauh Jauh Jauh Dekat Dekat Dekat Sedang Sedang Sedang Jauh Jauh Jauh
Kanan (R) Dekat Sedang Jauh Dekat Sedang Jauh Dekat Sedang Jauh Dekat Sedang Jauh Dekat Sedang Jauh Dekat Sedang Jauh Dekat Sedang Jauh Dekat Sedang Jauh Dekat Sedang Jauh
Keluaran (consequent) Kecepatan
Sudut_ beok
Berhenti Berhenti Sangat_pelan Sangat_pelan Pelan Pelan Normal Normal Normal Berhenti Berhenti Sangat_pelan Pelan Pelan Pelan Normal Normal Normal Berhenti Berhenti Berhenti Pelan Pelan Pelan Normal Cepat Cepat
Tetap Kanan0 Kanan0 Tetap Kanan1 Kanan1 Tetap Tetap Tetap Kiri0 Kiri0 Kanan0 Kiri1 Tetap Kanan1 Tetap Tetap Tetap Kiri1 Kiri1 Kiri1 Kiri1 Tetap Kiri1 Tetap Tetap Tetap
Kembali pada contoh kasus yang diberikan, berdasarkan nilai masukan (antecedent), terdapat dua aturan yang berkaitan dengan nilai masukan yaitu: aturan ke4 dan ke-5. Berikut contoh perhitungan pada aturan ke-4: Operator yang digunakan adalah AND, berdasarkan Persamaan 4 diperoleh: = min ( [4], [12], [10]
Setelah didapatkan nilai derajat kebenaran dari antecedent, kemudian dilakukan implikasi untuk mendapatkan nilai keluaran (consequent). Untuk mendapatkan nilai keluaran, terlebih dahulu ditentukan fungsi himpunan keanggotaan dari setiap fungsi keanggotaan keluaran. Fungsi keanggotaan untuk keluaran kecepatan terdiri atas lima fungsi, yaitu: berhenti, sangat_pelan, pelan, normal, dan cepat. Kecepatan menggunakan rentang mulai dari 0 hingga 110. Rentang ini digunakan berdasarkan persentase dari kecepatan motor. Kecepatan minimum dari putaran motor sebesar 0% dan maksimum adalah 100%. Nilai 10 merupakan tambahan nilai ketika motor berputar lebih dari kemampuan motor untuk berputar. Fungsi keanggotaan keluaran kecepatan dapat dilihat pada Gambar 12.
Gambar 12 Fungsi keanggotaan keluaran kecepatan Fungsi keanggotaan untuk representasi pada Gambar 12 berdasarkan Persamaan 4 dan 5 adalah: 0; ≤0 ⎫ −0 ; 0 ≤ ≤ 15 ⎪ = 15 ⎨30 − ⎬ ⎪ ⎪ ⎩ 15 ; 15 ≤ ≤ 30⎭ ⎧ ⎪
_
Fungsi keanggotaan keluaran untuk kecepatan secara lengkap dapat dilihat pada Lampiran 2. Fungsi kenggotaan sudut belok terdiri dari lima fungsi, yaitu kiri0, kiri1, lurus, kanan1, dan kanan0. Fungsi keanggotaan keluaran sudut belok dapat dilihat pada Gambar 13.
= min(1;1;0,33) = 0,33
10
Sehingga fungsi himpunan tetap yang baru adalah:
Gambar 13 Fungsi keanggotaan keluaran sudut belok Sudut belok menggunakan rentang mulai dari -90 hingga 90. Rentang ini digunakan karena minimum dari putaran roda pada robot adalah 0 dan maksimum adalah 180 berdasarkan nilai derajat. Nilai derajat dibagi menjadi dua, rentang 0 hingga 90 diubah menjadi -90 hingga 0 dan 90 hingga 180 menjadi 0 hingga 90. Fungsi keanggotaan untuk representasi pada Gambar 13 adalah: 0 ; ≤ −90 ⎫ + 90 ; −90 ≤ ≤ −60 ⎪ = 30 ⎨− − 30 ⎬ ⎪ ; −60 ≤ ≤ −30⎪ ⎩ 30 ⎭ ⎧ ⎪
Fungsi keanggotaan keluaran untuk sudut_belok secara lengkap dapat dilihat pada Lampiran 2. Berikut diberikan contoh proses perhitungan untuk mendapatkan nilai keluaran (consequent) pada aturan ke-4 adalah sebagai berikut: Untuk keluaran Kecepatan :
0 ; ≤ −15 ⎧ + 15 ⎫ ⎪ ; −15 ≤ ≤ −10,05⎪ 15 = ⎨ 0,33; −10,05 ≤ ≤ 4,95 ⎬ ⎪ ⎪ ; 4,95 ≤ ≤ 15 ⎩ ⎭ 15
Proses perhitungan untuk mendapatkan nilai keluaran secara lengkap dapat dilihat pada Lampiran 7. 5. Defuzzifikasi Setelah dilakukan evaluasi atas masukan dan ditetapkan basis aturannya, pengendali logika fuzzy menghasilkan keluaran untuk diberikan kepada sistem yang dikendalikan. Pengendali logika fuzzy harus mengubah variabel keluaran samar menjadi nilai-nilai tegas yang dapat digunakan untuk mengatur sistem. Proses ini disebut sebagai defuzzifikasi. Komposisi aturan menggunakan metode Mamdani, maka defuzzifikasi dilakukan dengan cara mencari nilai rata-rata. Sebelum dilakukan defuzzifikasi, terlebih dahulu ditentukan komposisi semua keluaran yang dihasilkan dari proses implikasi dengan menggunakan metode Max. Titik potong antara aturan ke-4 dan aturan ke-5 terjadi pada saat [x] = _ [x] = 0,33. (x-15)/15 = 0,33; x = 19,95
Pada saat [x] = 0,33, nilai x dapat _ ditentukan sebagai berikut: = 0,33; x = 4,95; atau Sehingga:
= 0,33; x = 25,05 Dengan demikian, fungsi sangat_pelan yang baru adalah: ⎧ ⎪
_
0;
himpunan
≤0
⎫ −0 ; 0 ≤ ≤ 4,95 ⎪ 15 = ⎨ 0,33 ; 4,95 ≤ ≤ 25,05 ⎬ ⎪30 − ⎪ ⎩ 15 ; 25,05 ≤ ≤ 30⎭
Selanjutnya dihitung titik pusat dari semua komposisi semua keluaran yang didapat dengan menggunakan Persamaan 6. Hasil defuzzifikasi untuk keluaran kecepatan: =
Untuk keluaran Sudut_belok Pada saat [x] = 0,33, nilai x dapat ditentukan sebagai berikut: = 0,33; x = -10,05, atau = 0,33; x = 4,95
; 15 ≤ ≤ 4,95 ⎫ ⎧ ⎪ 0,33 ; 4,95 ≤ ≤ 19,95 ⎪ ⎪ ⎪ ; 19,95 ≤ ≤ 25,05 = ⎨ ⎬ ⎪0,67 ; 25,05 ≤ ≤ 38,25⎪ ⎪ ⎪ ; 38,25 ≤ ≤ 55 ⎭ ⎩
1+ 2+ 3+ 4+ 5 1+ 2+ 3+ 4+ 5
=
38,17 + 61,63 + 60,46 + 279,91 + 214,78 0,82 + 4,95 + 0,87 + 8,84 + 5,61
=
654,95 = 31,01 21,12
Proses perhitungan defuzifikasi lengkap dapat dilihat pada Lampiran 7.
secara
11
Perancangan Program Simulasi Tampilan program simulasi logika fuzzy dapat dilihat pada Gambar 14.
Gambar 14 Tampilan simulasi sistem fuzzy Pada tampilan simulasi, terdapat panel input dan output serta dua tombol. Pada panel input, pengguna memasukkan nilai-nilai numerik untuk jarak sensor kiri, tengah, dan kanan. Panel output berfungsi untuk menampilkan hasil dari proses fuzzy. Tombol Fuzzy Mamdani berfungsi untuk memproses data dengan metode Mamdani, dan tombol reset berfungsi untuk membersihkan data dari semua panel input dan output. Perancangan hardware Perancangan hardware pada sistem fuzzy dapat dibagi menjadi tiga blok, yaitu Blok I sebagai rangkaian input, Blok II sebagai rangkaian pengendali sistem, dan Blok III sebagai rangkaian output. Bentuk fisik dari rangkaian sistem fuzzy robot yang telah selesai dibangun ditunjukkan oleh Gambar 15.
Blok II terdapat komponen Mikrokontroler ATMega16 yang berfungsi sebagai pengolah keseluruhan data input analog pada sensor ultrasonik untuk mendapatkan nilai jarak objek terhadap sensor. Data yang diperoleh sebagai masukan fuzzy kemudian diolah oleh mikrokontroler, sehingga dihasilkan keluran fuzzy. Terdapat beberapa rangkaian pada Blok II, antara lain rangkaian power supply, pengendali sistem, dan buzzer (digunakan pada analisis sensor). Blok III adalah rangkaian Driver Motor L298, yang berfungsi pengendali motor DC untuk kecepatan robot (motor belakang) dan motor servo untuk derajat belok (motor depan). Nilai yang dikeluarkan bergantung pada hasil fuzzifikasi. Penelitian ini dibatasi sampai dengan tampilan pada LCD karakter. Port yang digunakan Port A untuk LCD. LCD 16x2, artinya terdapat 16 kolom dan 2 baris ruang karakter. Ruang karakter dibagi menjadi dua bagian, yaitu: 1. Baris ke-1 untuk hasil pembacaan sensor (masukan fuzzy) 2. Baris ke-2 untuk keluran fuzzy (keluaran fuzzy) dan waktu proses fuzzy Implementasi Pada tahap ini dilakukan pemrograman sistem fuzzy ke dalam mikrokontroler ATMega16 dengan kompilator CodeVision AVR dalam bahasa pemrograman C. Alur pemrograman ini terdiri atas desain program C, proses compile, download program, dan tes. Alur dari pemograman dapat dilihat pada Gambar 16.
I II
III
Gambar 15 Bentuk fisik perancangan hardware Blok I terdiri atas tiga buah sensor ultrasonik, yang digunakan untuk mendeteksi objek pada jarak 2 cm sampai dengan 20 cm. Port yang digunakan adalah Port C.0 untuk sensor kiri (L), Port C.1 untuk sensor tengah (F), dan Port C.2 untuk sensor kanan (R).
Gambar 16 Alur pemrogramam pada mikrokontroler Pada kompilator CodeVision AVR perlu dilakukan konfigurasi awal pemrograman. Seperti penentuan chip sesuai kebutuhan sistem dan port-port berdasarkan fungsinya, sebagai input atau output. Setelah dilakukan konfigurasi, kemudian program ditulis menggunakan bahasa C, setelah
12
itu di-download pada mikrokontroler setelah dilakukan proses compile untuk mengetahui apakah ada error atau tidak. Jika tidak ada error maka program siap ditanamkan pada mikrokontroler. Program yang di-download pada mikrokontroler berupa file dengan format .hex, file ini disimpan di memori flash mikrokontroler ATMega16.
embedded system diperoleh dari data hasil pengujian sistem fuzzy Matlab dari semua kemungkinan kasus percobaan yang diberikan. Bentuk perancangan percobaan ditunjukkan pada Gambar 17.
Pengujian Pengujian dilakukan dengan memasukkan data jarak pada setiap sensor. Kemudian dilakukan pengulangan dengan kombinasi data yang berbeda. Sebagai contoh dilakukan pengujian sebanyak 9 kali. Pemilihan data dilihat pada jarak dekat, sedang, dan jauh terhadap objek. Hasil pengujian dapat dilihat pada Tabel 2. Tabel 2 Contoh kasus pada pengujian sistem No 1 2 3 4 5 6 7 8 9
SenKi 6 cm 6 cm 6 cm 6 cm 6 cm 6 cm 12 cm 12 cm 12 cm
Input SenTeng 6 cm 12 cm 18 cm 6 cm 12 cm 18 cm 6 cm 12 cm 18 cm
SenKa 6 cm 6 cm 6 cm 18 cm 18 cm 18 cm 6 cm 6 cm 6 cm
Output Kec. Drj 0 0 15 0 56.7 0 0 -60 33.3 30 56.7 0 0 -60 33.3 30 56.7 0
Gambar 17 Bentuk perancangan percobaan Ket.
Percobaan
OK OK OK OK OK OK OK OK OK
Pada tahapan ini dilakukan percobaan sebanyak 27 kali untuk mendapatkan akurasi dari error dan waktu proses fuzzy pada keluaran kedua sistem. Percobaan dilakukan pada data yang mewakili setiap aturan fuzzy. Hal ini bertujuan untuk mengetahui kesesuaian keluaran pada sistem fuzzy Matlab dengan embedded system. Apabila terdapat perbedaan yang cukup besar, maka dilakukan perbaikan pada pengelompokan data pada perancangan percobaan. Hasil percobaan dapat dilihat pada Gambar 18 dan 19.
Pada pengujian ini yang diutamakan adalah kesesuain akhir keputusan fuzzy yang akan diberlakukan pada perancangan robot dengan human expert. Berdasarkan kasus pengujian pada Tabel 2, untuk semua kasus telah berhasil didapatkan keputusan yang sesuai dengan human expert. Seperti pada kasus 1, human expert mengatakan jika ketiga sensor jaraknya adalah dekat, maka robot akan berhenti atau berkecepatan 0 dan diam pada posisinya dengan sudut belok tetap. Kasus lain yaitu kasus 9, robot akan bergerak cepat dan tetap pada posisinya. Hal ini dikarenakan robot mendeteksi penghalang yang berada di depannya adalah jauh dan lebih diprioritaskan jarak penghalang dari depan dibandingkan pada penghalang samping kiri atau kanan. Perancangan Percobaan
Gambar 18 Grafik akurasi kecepatan dari error hasil percobaan
Perancangan percobaan tidak jauh berbeda dengan proses perancangan. Perbedaannya terletak pada pengujian sistem. Proses perancangan dilakukan pada pengujian sistem fuzzy, sedangkan perancangan percobaan dilakukan perbandingan pada data hasil keluran sistem fuzzy dengan embedded system mikrokontroler. Rancangan fuzzy untuk
13
Gambar 19 Grafik akurasi sudut belok dari error hasil percobaan Percobaan selanjutnya adalah menghitung waktu proses fuzzy pada embedded system. Percobaan dilakukan sebanyak tiga kali pengulangan dengan kombinasi jarak yang berbeda dan mewakili setiap aturan sebanyak 27. Waktu proses fuzzy dihitung pada saat proses fuzzy dalam mikrokontroler. Hasil dari perhitungan waktu proses dapat dilihat pada Gambar 20. Grafik Rata-rata waktu proses fuzzy pada embedded system
0.6
waktu (ms)
0.5 0.4 0.3 0.2 0.1 0 1
3
5
7
9 11 13 15 17 19 21 23 25 27 Rule ke-
Gambar 20 Rata-rata waktu proses fuzzy pada embedded sysem
fuzzy pada masing-masing sistem terdapat perbedaan seperti proses pembulatan angka. Pembulatan untuk kecepatan dilakukan hanya di embedded system karena kecepatan motor pada robot hanya mendefinisikan angka dengan rentang 0-255. Selain itu, keterbatasan memori pada mikrokontroler menyebabkan proses perhitungan fuzzy dibatasi dengan dua angka desimal. Pembulatan untuk sudut belok dilakukan pada hasil dari kedua sistem, yakni Matlab dan embedded system. Hasil dari pembulatan sudut belok menghasilkan satu kesalahan yaitu pada kasus ke-23. Hal ini dikarenakan pada aturan ke-23 diprioritaskan sudut belok adalah tetap sehingga terjadi ketidaksamaan keputusan fuzzy pada kedua sistem. Berdasarkan pada Gambar 20, rata-rata waktu proses fuzzy pada setiap aturan bervariasi. Waktu proses pada aturan ke-1 adalah cepat. Sesuai dengan aturan ke-1, yaitu ketiga jarak sensor adalah dekat, maka waktu untuk mendapatkan nilai jarak bisa dengan cepat dibaca oleh ketiga sensor, sehingga proses fuzzy tidak terlalu lama untuk menerima masukan jarak dari sensor. Begitu juga pada aturan ke-27, yaitu jarak ketiga sensor adalah jauh, sehingga waktu untuk mendapatkan jaraknya pun lebih lama dibandingkan dengan aturan ke-1. Namun demikian, terdapat aturan ke-10 dan aturan ke-19 dengan waktu proses fuzzy sama dengan aturan ke-1. Hal ini dikarenakan pada aturan ke-10 dan 19 terdapat komponen jarak yang bernilai dekat, sehingga proses fuzzy nya pun bisa cepat. Untuk waktu proses fuzzy pada setiap aturan dengan tiga pengulangan adalah sama. Hal ini menunjukkan bahwa mikrokontroler merupakan hardware yang bersifat dedicated dan melakukan looping yang sama, sehingga dengan kondisi apapun hasilnya akan bersifat sama sejauh tidak ada kesalahan pada aliran arus listrik.
Analisis Hasil Percobaan Pada percobaan ini yang diutamakan adalah kesesuaian akhir keputusan fuzzy yang diberlakukan pada perancangan robot berdasarkan tingkat akurasi sistem. Berdasarkan kasus pengujian pada Gambar 18 dan 19, ratarata error untuk kecepatan sebesar 0,44% dan sudut belok sebesar 0,22%, sehingga memiliki tingkat akurasi yang besar hampir pada setiap kasusnya. Contoh pada kasus ketiga pada Gambar 18, error yang dihasilkan cukup besar dibandingkan dengan kasus-kasus yang lain. Hal ini dikarenakan pada proses perhitungan
KESIMPULAN DAN SARAN Kesimpulan Berdasarkan hasil penelitian, dapat disimpulkan bahwa penelitian berhasil mengimplementasikan logika fuzzy dalam rancang bangun dengan menggunakan Pengendali Sistem mikrokontroler ATMega16. Beberapa hal yang dapat disimpulkan antara lain: 1. Pada pengukuran sensor ultrasonik, jarak terdekat yang dapat diukur 2 cm dan terjauh
14