Tutorial Pemrograman Fuzzy Logic-1
Tutorial Pemrograman Fuzzy Logic-1
Tutorial Pemrograman Fuzzy Logic-1
https://amarnotes.wordpress.com/2013/11/09/tutorial-pemrograman-fuzzy...
Electronics Notes
All About Electronics Life
1 dari 8
5/3/2015 10:16 PM
https://amarnotes.wordpress.com/2013/11/09/tutorial-pemrograman-fuzzy...
Yang pertama kali dilakukan dalam pemrograman fuzzy logic adalah menentukan fungsi keanggotaan(membership
function) dari setiap input.
2 dari 8
5/3/2015 10:16 PM
https://amarnotes.wordpress.com/2013/11/09/tutorial-pemrograman-fuzzy...
3 dari 8
5/3/2015 10:16 PM
1
2
3
4
5
6
7
8
9
10
11
12
13
14
https://amarnotes.wordpress.com/2013/11/09/tutorial-pemrograman-fuzzy...
Contoh yang lain, berikut syntax untuk menghitung derajat keanggotaan ketinggian sedang. Perhatikan
gambar 3 dan gambar 4 untuk melakukan perhitungan berikut.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Nah sekarang buat sub program untuk masing- masing derajat keanggotaan yang akan dihitung. Berikut
adalah source code lengkap fuzzikasi dengan Codevision AVR. Data-data hasil fuzzikasi akan
ditampilkan pada kayar LCD alphanumeric.
4 dari 8
5/3/2015 10:16 PM
5 dari 8
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
https://amarnotes.wordpress.com/2013/11/09/tutorial-pemrograman-fuzzy...
/*****************************************************
FUZZIFICATION
by Amar
https://amarnotes.wordpress.com (https://amarnotes.wordpress.com)
*****************************************************/
#include
#include
// Alphanumeric LCD Module functions
#include
5/3/2015 10:16 PM
6 dari 8
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
https://amarnotes.wordpress.com/2013/11/09/tutorial-pemrograman-fuzzy...
{ beban_berat=(berat10)/5; }
else if (berat>=15)
{ beban_berat=1; }
else if (berat<=10)
{ beban_berat=0; };
return beban_berat;
};
unsigned char fuzzifikasi_ketinggian_rendah()
{
ketinggian_rendah=0;
if (ketinggian<=2 && ketinggian>0)
{ ketinggian_rendah=1; }
else if (ketinggian2)
{ ketinggian_rendah=(6ketinggian)/(4); }
else if (ketinggian>=6)
{ ketinggian_rendah=0; };
return ketinggian_rendah;
};
unsigned char fuzzifikasi_ketinggian_sedang()
{
ketinggian_sedang=0;
if (ketinggian<=2 || ketinggian>=10)
{ ketinggian_sedang=0; }
else if (ketinggian>2 && ketinggian<6)
{ ketinggian_sedang=(ketinggian2)/4; }
else if (ketinggian>6 && ketinggian<10)
{ ketinggian_sedang=(10ketinggian)/4; }
else if (ketinggian==6)
{ ketinggian_sedang=1; };
return ketinggian_sedang;
};
unsigned char fuzzifikasi_ketinggian_tinggi()
{
ketinggian_tinggi=0;
if (ketinggian>6 && ketinggian<10)
{ ketinggian_tinggi=(ketinggian6)/4; }
else if (ketinggian>=10)
{ ketinggian_tinggi=1; }
else if (ketinggian<=6)
{ ketinggian_tinggi=0; };
return ketinggian_tinggi;
};
// Kumpulkan semua sub program fuzzifikasi menjadi satu buah sub program
void fuzzifikasi()
{
fuzzifikasi_beban_ringan();
fuzzifikasi_beban_sedang();
fuzzifikasi_beban_berat();
fuzzifikasi_ketinggian_rendah();
fuzzifikasi_ketinggian_sedang();
5/3/2015 10:16 PM
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
https://amarnotes.wordpress.com/2013/11/09/tutorial-pemrograman-fuzzy...
fuzzifikasi_ketinggian_tinggi();
};
void main(void)
{
PORTA=0x00; DDRA=0x00;
PORTB=0x00; DDRB=0x00;
PORTC=0x00; DDRC=0xFF;
PORTD=0x00; DDRD=0x00;
lcd_init(16);
while (1)
{
// masukkan input berat dan tinggi benda
berat=13.2;
ketinggian=5.8;
fuzzifikasi(); // memanggil fungsi fuzzifikasi
Selesai bagian fuzzikasi, selanjutnya adalah pemrograman bagian evaluasi rule dan defuzzikasi. Akan
dibahas pada bagian 2 nanti ya.
Semoga tutorial ini bermanfaat :)
Posted on November 9, 2013, in Electronics, Fuzzy Logic, Mikrokontroler, Pemrograman, Tutorial and
tagged pemrograman fuzzy logic, pemrograman fuzzy logic bahasa c, pemrograman fuzzy logic codevision,
pemrograman fuzzy logic mikrokontroler, pemrograman logia fuzzy, pemrograman logika fuzzy bahasa c,
pemrograman logika fuzzy codevision, pemrograman logika fuzzy mikrokontroler, tutorial fuzzy logic,
tutorial logika fuzzy, tutorial pemrograman logika fuzzy. Bookmark the permalink. 5 Comments.
7 dari 8
Leave a comment
Comments 5
indra | December 12, 2013 at 2:58 PM
bagian 2 nya sudah keluar belum ?
5/3/2015 10:16 PM
https://amarnotes.wordpress.com/2013/11/09/tutorial-pemrograman-fuzzy...
8 dari 8
5/3/2015 10:16 PM