UNIVERSITAS BINA NUSANTARA Jurusan Sistem Komputer Program Studi Ilmu Komputer Skripsi Sarjana Komputer Semester Ganjil tahun 2003/2004 Aplikasi Digital Fuzzy Procesor Dengan MCS-52 Pada Pintu Air Ali Johan 0400525365 Fandy Lastio 0400525402 I Wayan Sandhy S.D. 0400526632 Abstrak Tujuan dari penulisan ini yaitu untuk merancang suatu prototipe dari sebuah sistem yang digunakan untuk mengendalikan pintu air yang bekerja dengan metode Fuzzy Logic. Metodologi penelitian yang digunakan yaitu studi pustaka dan penelitian laboratorium. Studi pustaka bertujuan untuk mempelajari buku-buku, skripsi terdahulu, informasi dari pengajar dan literatur yang membantu dan berhubungan dengan topik ini. Selain itu juga dilakukan pencarian informasi dari situs-situs internet yang bersangkutan dengan penulisan ini. Sedangkan penelitian laboratorium dilakukan untuk mendapatkan data dan kinerja terbaik dari sistem. Perancangan program pada sistem ini menggunakan bahasa C Keil dan perancangan hardware menggunakan MCS 52. Kesimpulan yang dicapai dari sistem ini yaitu dihasilkan suatu prototipe pintu air yang dapat mengatur ketinggian air dengan metode Fuzzy Logic yang nantinya dapat dikembangkan lebih jauh lagi pada aplikasi yang sebenarnya misalnya pada bendungan, waduk, dan lain-lain. Metode Fuzzy Logic ini juga dapat diterapkan pada pengontrolan yang lain seperti pengontrolan suhu, kecepatan, jarak, dan lain-lain. Kata kunci MCS 52, Fuzzy Logic, C Keil, pintu air, prototipe i
PRAKATA Puji syukur kepada Tuhan Yang Maha Esa atas berkat dan rahmat yang dilimpahkannya akhirnya penulis dapat menyelesaikan skripsi ini. Skripsi ini disusun untuk memenuhi salah satu syarat untuk menyelesaikan studi strata-1 (S1) pada jurusan sistem komputer Universitas Bina Nusantara. Selama pembuatan skripsi ini penulis mendapatkan banyak bantuan dari berbagai pihak. Oleh karena itu pada kesempatan ini penulis ingin mengucapkan banyak terima kasih kepada Ibu Theresia Widia S, DR selaku Rektor Universitas Bina Nusantara, yang telah memberikan kepercayaan dan kesempatan kepada penulis untuk menyelesaikan skripsi ini. Bapak Iman H. Kartowisastro, Ph.D selaku Ketua Jurusan Sistem Komputer yang telah memberikan kepercayaan dan kesempatan kepada penulis untuk menyelesaikan skripsi ini. Ibu Jurike V. Moniaga, S.Kom selaku Sekertaris Jurusan Sistem Komputer yang telah memberikan nasehat dan dukungannya kepada penulis selama penulisan skripsi ini. Bapak Drs. Satrio Dewanto M.Eng selaku dosen pembimbing skripsi yang telah memberikan bimbingan dan nasehatnya kepada penulis selama penulisan skripsi ini. Para orang tua dan saudara kami yang telah memberikan dorongan dan semangat untuk menyelesaikan skripsi ini. ii
Seluruh rekan-rekan yang telah memberi bantuan, dukungan dan masukan berharga. Seluruh pihak lain yang telah membantu kami dalam penulisan skripsi ini. Penulis menyadari bahwa skripsi ini masih jauh dari sempurna. Oleh karena itu kritik serta saran yang membangun dari rekan-rekan pembaca sangat dibutuhkan agar dapat menjadikan skripsi ini lebih baik. Jakarta, 28 Mei 2004 Penulis iii
DAFTAR ISI Halaman Judul Luar Halaman Judul Dalam Halaman Persetujuan Hard Cover Halaman Penyataan Dewan Penguji Abstrak... i Prakata... ii Daftar Isi... iv Daftar Tabel... viii Daftar Gambar... x Daftar Lampiran... xiii BAB 1 PENDAHULUAN 1.1 Latar Belakang... 1 1.2 Ruang Lingkup... 2 1.3 Tujuan dan Manfaat... 3 1.4 Metodologi Penelitian... 4 1.5 Sistematika Penulisan... 4 BAB 2 LANDASAN TEORI 2.1 Sistem... 6 2.2 Sistem Kontrol... 7 2.2.1 Sistem Kontrol Lup Terbuka... 7 iv
2.2.2 Sistem Kontrol Lup Tertutup... 8 2.3 Mikrokontroler Atmel 89C52... 9 2.3.1 Arsitektur Internal... 9 2.3.2 Konfigurasi Pin... 10 2.3.3 Blok Diagram... 11 2.3.4 Kerangka Dasar... 12 2.4 Modul Pengendali Motor Langkah... 12 2.5 Motor Langkah... 12 2.6 Prinsip Kerja Motor Langkah... 15 2.7 Sensor Pengukur Ketinggian Air... 21 2.8 Sistem Persamaan Linear... 25 2.8.1 Persamaan Garis Lurus... 25 2.8.2 Sistem Persamaan Linear Dua Variabel... 25 2.9 Fuzzy Set... 26 2.9.1 Definisi Teori Fuzzy... 29 2.9.2 Operasi Fuzzy Set... 35 2.10 Fuzzy Logic... 38 2.11 Aturan Kesimpulan Fuzzy... 39 2.11.1 Pengetahuan Dasar Fuzzy... 40 2.11.2 Aturan Defuzifikasi... 42 2.11.3 Metode defuzifikasi... 44 BAB 3 PERANCANGAN SISTEM 3.1 Perancangan Perangkat Keras... 48 v
3.1.1 Rangkaian Sistem Minimum... 50 3.1.2 Modul Pengendali Motor Langkah... 52 3.1.3 Modul Sensor Ketinggian Air... 52 3.1.4 Modul LCD... 54 3.1.5 Modul Relay... 55 3.2 Perancangan Perangkat Lunak... 56 3.2.1 Diagram Alir Pada Mikrokontroler... 56 3.3 Rancang Bangun... 62 3.3.1 Rancang Bangun Pintu Air dan Mur Baut... 62 3.3.2 Rancang Bangun Sensor Ketinggian Air... 63 3.3.3 Rancang Bangun Prototipe Akuarium... 64 3.4 Desain Fuzzy Logic... 64 3.4.1 Variabel Input... 65 3.4.2 Variabel Output... 65 3.4.3 Fungsi Keanggotaan dan Fuzzy Set... 65 3.4.4 Notasi Fuzzy Set... 71 3.4.5 Support Dari Fuzzy Set... 72 3.4.6 Crossover Point... 72 3.4.7 Ketinggian... 73 3.4.8 Scalar Cardinality... 73 3.4.9 Pendefinisian Fuzzy Rules... 73 3.4.10 Fire Strength α Dari Rules... 74 3.4.11 Defuzifikasi... 76 3.5 Spesifikasi Sistem... 81 vi
BAB 4 IMPLEMENTASI DAN EVALUASI 4.1 Spesifikasi Sistem... 82 4.1.1 Perangkat Keras... 82 4.1.2 Perangkat Lunak... 82 4.2 Prosedur Operasional... 82 4.3 Rencana Implementasi... 83 4.4 Evaluasi/Analisis Percobaan... 84 4.4.1 Percobaan Membuka dan Menutup Pintu Air... 84 4.4.2 Percobaan Pintu Menutup penuh... 87 4.4.3 Percobaan Mempertahankan Ketinggian Air... 88 4.4.4 Analisa Pintu Menggunakan Mur dan Baut... 89 4.4.5 Percobaan Kecepatan Putaran Motor... 89 4.4.6 Percobaan Clock Motor... 90 4.4.7 Analisa Spike Pada Sistem... 92 4.4.8 Percobaan Spike Pada Sistem... 96 4.4.9 Analisa Penyempitan Pintu... 97 4.4.10 Analisa Sensitivitas Sensor... 98 4.4.11 Analisa Korosi Sensor... 98 BAB 5 KESIMPULAN DAN SARAN 5.1 Kesimpulan... 99 5.2 Saran... 99 DAFTAR PUSTAKA...100 RIWAYAT HIDUP...101 vii
DAFTAR TABEL BAB 1 BAB 2 PENDAHULUAN LANDASAN TEORI 2.1 Eksitasi Kumparan Tunggal... 17 2.2 Eksitasi Dua Kumparan... 18 2.3 Eksitasi Setengah Langkah... 19 BAB 3 PERANCANGAN SISTEM 3.1 Data Debit Air... 66 3.2 Data Letak Sensor... 67 3.3 Kesimpulan Prototipe... 68 3.4 Fungsi Keanggotaan Fuzzy Set... 70 3.5 Hubungan Variabel Input dan Output... 80 3.6 Spesifikasi Sistem... 81 BAB 4 IMPLEMENTASI DAN EVALUASI 4.1 Percobaan Membuka Pintu Air... 84 4.2 Ketelitian Membukanya Pintu Air... 85 4.3 Percobaan Menutup Pintu Air... 86 4.4 Ketelitian Menutupnya Pintu Air... 86 4.5 Percobaan Pintu Menutup Penuh... 87 4.6 Percobaan Mempertahankan Ketinggian Air... 88 viii
4.7 Pengujian kecepatan pada motor langkah... 90 4.8 Pengujian clock motor langkah terhadap keakuratan pintu... 91 4.9 Percobaan spike pada sistem... 96 4.10 Data debit air... 97 BAB 5 KESIMPULAN DAN SARAN ix
DAFTAR GAMBAR BAB 1 BAB 2 PENDAHULUAN LANDASAN TEORI 2.1 Sistem Kontrol Lup Terbuka... 8 2.2 Sistem Kontrol Lup Tertutup... 9 2.3 Konfigurasi Pin Mikrokontroler AT89C52... 10 2.4 Blok Diagram Mikrokontroler AT89C52... 11 2.5 Kerangka Dasar Mikrokontroler AT89C52... 12 2.6 Motor Langkah Dengan Magnet Permanen... 14 2.7 Sensor Pelampung... 21 2.8 Sensor Ultra Sonik... 22 2.9 Sensor Infra Merah... 23 2.10 Sensor Laser... 24 2.11 Crisp Set... 27 2.12 Fuzzy Set... 28 2.13 Tingkat Keanggotaan Fuzzy... 29 2.14 Fungsi S... 32 2.15 Fungsi π... 33 2.16 Fungsi Segitiga... 34 2.17 Fungsi Keanggotaan Fuzzy Set... 34 2.18 Rule Dengan Mamdani... 42 2.19 Rule Dengan Larsen... 43 x
2.20 Defuzifikasi Dengan Center of Area... 44 2.21 Defuzifikasi Dengan Mean of Maximum... 45 2.22 Defuzifikasi Dengan High Method... 46 2.23 Defuzifikasi Dengan First / Last Maxima... 47 BAB 3 PERANCANGAN SISTEM 3.1 Diagram Blok Sistem Pengendali Pintu Air... 48 3.2 Rangkaian Sistem Minimum... 50 3.3 Modul L297 dan L298... 52 3.4 Rangkaian Sensor Ketinggian Air... 53 3.5 Rangkaian Modul LCD... 54 3.6 Rangkaian Modul Relay... 55 3.7 Diagram Alir Utama Pada Sistem Minimum... 56 3.8 Diagram Alir Cek Sensor 1... 57 3.9 Diagram Alir Cek Sensor 2... 58 3.10 Diagram Alir Putaran Motor 1... 59 3.11 Diagram Alir Putaran Motor 2... 60 3.12 Diagram AlirPutaran Motor 3... 61 3.13 Rancang Bangun Pintu... 62 3.14 Rancang Bangun Sensor Ketinggian air... 63 3.15 Rancang Bangun Prototipe Akuarium... 64 3.16 Fungsi Keanggotaan dan Fuzzy Set... 69 3.17 Penentuan Fire Strength... 75 3.18 Proses Defuzifikasi... 76 xi
3.19 Contoh Proses Defuzifikasi... 79 BAB 4 IMPLEMENTASI DAN EVALUASI 4.1 Tegangan Kejut di Pin Vcc Mikrokontroler Pada Saat Relay Aktif Skala 1 Detik Setelah Penambahan Induktor... 93 4.2 Tegangan Kejut di Pin Vcc Mikrokontroler Pada Saat Relay Aktif Skala 50 Mikro Detik Setelah Penambahan Induktor... 93 4.3 Tegangan Kejut di Pin Vcc Mikrokontroler Pada Saat Pompa Buang Skala 1 Detik Setelah Penambahan Induktor... 94 4.4 Tegangan Kejut di Pin Vcc Mikrokontroler Pada Saat Pompa Buang Skala 200 Mikro Detik Setelah Penambahan Induktor... 94 4.5 Tegangan Kejut di Pin Reset Mikrokontroler Pada Saat Relay Aktif Skala 1 Detik Setelah Penambahan Induktor... 95 4.6 Tegangan Kejut di Pin Reset Mikrokontroler Pada Saat Relay Aktif Skala 5 Detik Setelah Penambahan Induktor... 95 BAB 5 KESIMPULAN DAN SARAN xii
DAFTAR LAMPIRAN LAMPIRAN A Rangkaian modul keseluruhan... LA1 Daftar komponen... LA2 Lampiran B Listing program pada mikrokontroller... LB1 LAMPIRAN C Data Sheet AT89C52... LC1 Data Sheet L297... LC2 Data Sheet L298... LC3 LAMPIRAN D Proses Fuzifikasi Defuzifikasi Dengan COA... LD1 LAMPIRAN E Perhitungan defuzifikasi COA... LE1 LAMPIRAN F Look up Table Pada Mikrokontroler AT89C52... LF1 xiii