PRAKTIKUM FUZZY LOGIC
CONTROLLER
1.
Pertemuan 1
a.
Melihat
Demo Matlab, khususnya Water Tank
Langkah-Langkah:
1) Buka Command Window pada Matlab.
2) Ketikkan Demo, diikuti dengan klik tombol
‘Enter’ pada Keyboard.
Perhatikan
gambar dibawah ini:

Gambar 1. Command Window Pada Matlab
Matlab memiliki banyak
fungsi-fungsi, selain demo, seperti fuzzy, simulink, dan lain-lain. Untuk
mengetahui fungsi-fungsi yang tersedia ketik Help pada command window, diikuti
dengan menekan tombol enter pada keyboard.
3)
Kemudian
akan muncul Matlab Demos, seperti yang ditunjukkan pada gambar dibawah ini:

Gambar 2. Matlab Demo Windows
4) Double
klik pada Toolboxes, pilih
Fuzzy Logic, dan pilih Water tank (sim) yang ada pada kotak sebelah kanan.

Gambar 3. Matlab Demo Windows dengan Option Water tank
Selain water tank (sim),
matlab memiliki masih banyak demo lagi, seperti yang ditunjukkan pada gambar 3.
5)
Klik
button Run Water tank (sim). Selanjutnya akan muncul gambar model sltank
seperti yang ditunjukkan pada gambar dibawah ini.

Gambar 4.
Model sltank
6)
Klik
tanda panah pada toolbar untuk menjalankan simulasi, atau dengan menekan tombol ‘Ctrl+T’ pada
keyboard. Secara default yang bekerja sebagai pengendali pada
simulasi ini adalah blok Fuzzy Logic Controller.

Gambar 5. Simulasi Tank Demo
7)
Double
klik pada blok Comparison (Perhatikan Gambar 4), Untuk
melihat kurva respon waktunya.

Gambar 6. Kurva Respon
Waktu Simulasi Tank Demo
b.
Mengetahui Isi Blok FLC
Langkah-Langkah:
1) Buka Command Window pada Matlab.
2) Ketikkan Fuzzy, diikuti dengan klik tombol
‘Enter’ pada Keyboard.
Perhatikan
gambar dibawah ini:

Gambar 7.
Command Window Pada Matlab
3)
Kemudian
akan muncul FIS Editor, seperti yang ditunjukkan pada gambar dibawah ini:

Gambar 8. FIS Editor
Secara default fis editor diberi nama
untitled, yang terdiri dari 1 input (input1), dan 1 output (output1) serta
tanpa membership function.
4)
Pilih
File, kemudian Import, lalu pilih From
Workspace
Perhatikan
gambar dibawah ini:

Gambar 9. FIS Editor dengan Mengimpor File dari Workspace
5)
Isikan
tank pada Workspace Variable

Gambar 10. Load FIS From Workspace
tank
merupakan nama variable pada workspace
yang berekstensi .fis
6)
Klik
button OK. Selanjutnya akan muncul FIS Editor tank

Gambar 11.
FIS Editor tank
Tank.fis
memiliki 2 input (level dan rate) dan 1 output (valve).
7)
Double
klik input level dan amati membership function dan range-nya

Gambar 12.
Input Level dan Atributnya
Dari
gambar diatas terlihat input level memiliki 3 Membership Function, yaitu: high,
okay, dan low. Terlihat juga
range-nya, yaitu [-1 1].
8)
Klik
membership function high, untuk melihat atributnya.

Gambar 13.
Membership Function High Pada Input
Level
Dari gambar diatas terlihat
range untuk input level, yaitu [-1 1].
Range ini menunjukan batas minimal dan maksimal yang digunakan sebagai
skala untuk mengatur lebar sempitnya MF pada Input Level, bisa juga dengan
mengatur Params-nya, terlihat Params untuk membership function high yaitu [0.3
-1]. Type untuk MF ini adalah gaussmf.
9)
Double
klik input rate dan amati membership function dan range-nya

Gambar 14. Input Rate dan Atributnya
Dari
gambar diatas terlihat input rate memiliki 3 Membership Function, yaitu:
negative, none, dan positive. Terlihat juga range-nya, yaitu [-0.1 0.1].
10)
Klik
membership function negative, untuk melihat atributnya.

Gambar 15.
Membership Function Negative Pada Input
Rate
Dari gambar diatas terlihat
range untuk input rate, yaitu [-0.1 0.1].
Range ini menunjukan batas minimal dan maksimal yang digunakan sebagai
skala untuk mengatur lebar sempitnya MF pada Input Rate, bisa juga dengan mengatur
Params-nya, terlihat Params untuk membership function negative yaitu [0.03 -0.101].
Type untuk MF ini adalah gaussmf.
11)
Double
klik output valve dan amati membership function dan range-nya

Gambar 16. Output Valve dan Atributnya
Dari
gambar diatas terlihat output valve memiliki 5 Membership Function, yaitu:
close_fast, close_slow,
no_change, open_slow, dan
open_fast. Terlihat juga range-nya, yaitu [-1 1].
12)
Klik
membership function close_fast, untuk melihat atributnya.

Gambar 17.
Membership Function close_fast Pada Output
Valve
Dari gambar diatas terlihat
range untuk output valve, yaitu [-1 1].
Range ini menunjukan batas minimal dan maksimal yang digunakan sebagai
skala untuk mengatur lebar sempitnya MF pada Output Valve, bisa juga dengan mengatur
Params-nya, terlihat Params untuk membership function close_fast yaitu [-1 0.9
-0.8]. Type untuk MF ini adalah trimf.
13)
Klik
View, kemudian pilih View rules, atau bisa juga dengan menekan Ctrl+5 pada
keyboard.

Gambar 18. Cara Untuk Melihat Rule
14) Selanjutnya akan ditampilkan Rule Viewer,
seperti gambar dibawah ini:

Gambar 19. Rule Viewer
15)
Untuk
mengedit rule diatas klik View, lalu pilih Edit rule, atau dengan menekan
Ctrl+3 pada keyboard.

Gambar 20. Cara Untuk Mengedit Rule
16) Selanjutnya akan ditampilkan Rule Editor,
seperti gambar dibawah ini:

Gambar 21. Rule Editor
Rule diatas dibuat dengan mengatur MF input dan
output, setelah itu tinggal mengklik button Add rule.
c. Tugas: Meniru pembuatan tank.fis
secara terbimbing.
1) Buka Command Window pada Matlab.
2) Ketikkan Fuzzy, diikuti dengan klik tombol
‘Enter’ pada Keyboard.
Perhatikan
gambar dibawah ini:

Gambar 1.
Command Window Pada Matlab
3)
Kemudian
akan muncul FIS Editor, seperti yang ditunjukkan pada gambar dibawah ini:

Gambar 2. FIS Editor
Secara default fis editor diberi nama
untitled, yang terdiri dari 1 input (input1), dan 1 output (output1) serta
tanpa membership function.
4)
Klik
Edit, diikuti dengan memilih Add input.

Gambar 3.
Cara Menambah Input
Ingat!
perhatikan semua komponen yang terdapat pada tank.fis, jangan sampai ada yang
terlewatkan.
5)
Selanjutnya
akan muncul Input2, Perhatikan gambar dibawah ini:

Gambar 4. FIS Editor Untitled Dengan 2 Input dan 1 Output
6) Klik input1, untuk mengganti nama input1.
Perhatikan pada current variable, ubahlah nama input1 dengan Level, diikuti
dengan perintah enter pada keyboard.

Gambar 5. Mengubah Nama input1 Dengan Level
7) Klik input2, untuk mengganti nama input2.
Perhatikan pada current variable, ubahlah nama input2 dengan Rate, diikuti
dengan perintah enter pada keyboard.

Gambar 6. Mengubah Nama Input2 Dengan Rate
8) Klik output1, untuk mengganti nama
output1. Perhatikan pada current variable, ubahlah nama output1 dengan Valve,
diikuti dengan perintah enter pada keyboard.

Gambar 7. Mengubah Nama Output1 Dengan Valve
9) Double klik input Level, kemudian Pilih
Edit, lalu Add MFs

Gambar 8. Cara Menambah Membership Function
10) Isikan gaussmf pada MF Type dan untuk
Number of MFs 3. Perhatikan gambar
dibawah ini:

Gambar 9. Menambah Membership Function
Secara default MF Type berisi trimf dan untuk
Number of MFs berisi 3.
11) Klik OK, selanjutnya akan muncul seperti
gambar berikut:

Gambar 10. MF input Level
Secara default nama MF diberi nama mf1, mf2, mf3,....mfn.
12) Klik mf1, kemudian ganti namanya menjadi
high, dan atur params-nya sesuai dengan yang terdapat pada input level dalam tank.fis.

Gambar 11. Mengubah parameter MF pada input Level
Begitupula dengan mf2 dan
mf3, gantilah namanya menjadi okey dan low, serta aturlah params-nya seperti
yang terdapat pada tank.fis. (Perhatikan Gambar 11).
Tips: Untuk mempercepat pengaturan params pada
MF, copy-lah params yang terdapat pada tank.fis, dan paste pada params yang
kita buat.
13) Double klik input Rate, kemudian Pilih
Edit, lalu Add MFs

Gambar 12. Cara Menambah Membership Function
14) Isikan gaussmf pada MF Type dan untuk
Number of MFs 3. Perhatikan gambar
dibawah ini:

Gambar 13. Menambah Membership Function
15) Klik OK, selanjutnya akan muncul seperti
gambar berikut:

Gambar 14. MF Input Rate
16) Klik mf1, kemudian ganti namanya menjadi
negative, dan atur params-nya sesuai dengan yang terdapat pada input rate dalam
tank.fis.

Gambar 15. Mengubah parameter MF pada input Rate
Begitupula dengan mf2 dan
mf3, gantilah namanya menjadi none dan positive, serta aturlah params-nya
seperti yang terdapat pada tank.fis. (Perhatikan Gambar 15).
17) Double klik output Valve, kemudian Pilih
Edit, lalu Add MFs

Gambar 16. Cara Menambah Membership Function
18) Isikan trimf pada MF Type dan untuk Number
of MFs 5. Perhatikan gambar dibawah ini:

Gambar 17. Menambah Membership Function
19) Klik OK, selanjutnya akan muncul seperti
gambar berikut:

Gambar 18. MF Output Valve
20) Klik mf1, kemudian ganti namanya menjadi
close_fast, dan atur params-nya sesuai dengan yang terdapat pada output valve
dalam tank.fis.

Gambar 19. Mengubah parameter MF pada Output Valve
Begitupula dengan mf2, mf3,
mf4, dan mf5, gantilah namanya menjadi close_slow, no_change, open_slow, dan open_fast, serta aturlah params-nya
seperti yang terdapat pada tank.fis. (Perhatikan Gambar 19).
21)
Klik
View, lalu pilih Edir rule, atau bisa juga dengan menekan Ctrl+3 pada keyboard.

Gambar 20. Cara Membuat Rule Editor
22) Selanjutnya akan muncul Rule Editor, dan
buatlah rule seperti yang terdapat pada tank.fis. Perhatikan gambar dibawah
ini:

Gambar 21. Membuar Rule-Rule
Rule diatas dibuat dengan
mengatur MF pada input (level dan rate)
dan output (valve), kemudian memilih option Add rule. Jika ingin mengubah rule
yang kita buat dapat menggunakan perintah Change rule, atau bisa juga
menghapusnya dengan memilih option Delete rule.
23)
Aturlah
parameter And method, Or method, Implication, Aggregation, dan metote Defuzzification,
seperti gambar dibawah ini:

Gambar 22. Metode yang digunakan
24) Klik File, kemudian pilih save to
workspace as.

Gambar 23. Cara Menyimpan Pekerjaan Yang Kita Buat
25) Simpanlah dengan nama tank1, diikuti
dengan mengklik ok.

Gambar 24. Nama
Variable Yang Akan Disimpan
26) Selanjutnya bukalah sltank, dan double
klik blok fuzzy logic controller

Gambar 25. Model sltank
Model sltank ini dimunculkan dari Matlab Demos
(Buka halaman 1)
27)
Isikan
tank1 pada FIS Matrix. Kemudian klik OK.

Gambar 26. FIS Matrix
tank1 merupakan nama variable yang telah kita buat.
28)
Jalankan
model sltank dengan mengklik tanda panah pada toolbar atau dengan menekan tombol ‘Ctrl+T’ pada keyboard.
29)
Amati
respons sistem, apakah sama dengan tank.fis. jika belum telitilah semua
komponen yang terdapat pada tank.fis.,
dan perhatikan range, params, dan metode yang digunakan.
2. Pertemuan
2
a.
Membuat Workspace Sendiri
sistem
orde 2 dengan delay, dikontrol oleh FLC. Input ada 2, yaitu error dan derror.
Ada 1 output. Pada input dan output masing-masing terdiri dari 3 MF, yaitu Neg
(N), Zero (Z) dan Pos (P). Range error [-1 1], range derror [-0.1 0.1] dan
range output [-1 1]. Tipe MF yang dipakai baik pada input maupun adalah
segitiga (trimf). Rule yang digunakan adalah rule standar (pendekatan
heuristic) sebanyak 9 rule.
Langkah-Langkah:
1)
Buatlah
rangkaian simulasi seperti gambar dibawah ini:

Gambar 1.
Model Workspace Dengan Sistem Orde 2
2)
Buatlah
FIS Editor dengan 2 Input (dengan nama error dan derror), dan 1 Output (dengan
nama output).
Perhatikan
gambar dibawah ini:

Gambar 2.
FIS Editor fuzzy1
3)
Buatlah
3 membership function untuk Input error, dengan nama Neg (N), Zero (Z)
dan Pos (P), berupa trimf, dan atur range-nya menjadi [-1 1].

Gambar 3.
Input Error dengan 3 MF
4)
Buatlah
3 membership function untuk Input derror, dengan nama Neg (N), Zero (Z)
dan Pos (P), berupa trimf, dan atur range-nya menjadi [-0.1 0.1].

Gambar 4.
Input derror dengan 3 MF
5)
Buatlah
3 membership function untuk output, dengan nama Neg (N), Zero (Z) dan
Pos (P), berupa trimf, dan atur range-nya menjadi [-1 1].

Gambar 5.
Output dengan 3 MF
6)
Buatlah
9 rule standar (pendekatan heuristic), seperti yang terlihat pada gambar dibawah ini:

Gambar
6. Rule Editor fuzzy1
b. Tugas
Mengamati pengaruh perubahan parameter input. Lakukan langkah-langkah
berikut, dengan ketentuan bahwa perubahan hanya diberlakukan pada satu
parameter. Ketika satu parameter diubah, yang lain tetap pada kondisi awal. Kemudian amati respon sistem.
1)
Aturlah
range error: dari [-1 1] menjadi [-2 2] dan [-0.5 0.5]

Gambar 7. Mengubah Range Input Error
Gantilah
Range [-1 1], seperti yang ditunjukkan pada gambar diatas, kemudian ubahlah
range-nya menjadi [-2 2],
diikuti dengan menekan enter pada keyboard. Begitu juga dengan range [-0.5
0.5].
2)
Aturlah
range derror: dari [-0.1 0.1] menjadi [-0.2 0.2] dan [-0.05 0.05]

Gambar 8. Mengubah Range Input Derror
Gantilah
Range [-0.1 0.1] seperti yang
ditunjukkan pada gambar diatas, kemudian ubahlah range-nya menjadi [-0.2
0.2], diikuti dengan menekan enter
pada keyboard. Begitu juga dengan range [-0.05 0.05]
3)
Gantilah
tipe MF error: segitiga (trimf) ke gauss (gausmf) dan ke trapesium
(trapmf).

Gambar 9. Mengubah Type MF
4)
Gantilah
tipe MF derror: segitiga ke gauss dan ke trapezium
Perhatikan Gambar 9 diatas.
5)
Ubahlah
lebar sempit MF: Z dipersempit dan Z diperlebar
Tarikkah kekiri dan kekanan MF Z, sampai
menyempit atau melebar, atau bisa juga juga dengan mengatur params-nya.
3. Pertemuan
3
a.
Membuat Workspace Sendiri
sistem orde 2 dengan delay, dikontrol oleh
FLC. Input ada 2, yaitu error dan derror. Ada 1 output. Pada input dan output
masing-masing terdiri dari 3 MF, yaitu Neg (N), Zero (Z) dan Pos (P). Range
error [-1 1], range derror [-0.1 0.1] dan range output [-1 1]. Tipe MF yang
dipakai baik pada input maupun adalah segitiga (trimf). Rule yang digunakan
adalah rule standar (pendekatan heuristic) sebanyak 9 rule.
Langkah-Langkah:
1)
Buatlah
rangkaian simulasi seperti gambar dibawah ini:

Gambar 1.
Model Workspace Dengan Sistem Orde 2
2)
Buatlah
FIS Editor dengan 2 Input (dengan nama
error dan derror), dan 1 Output (dengan nama output).
Perhatikan
gambar dibawah ini:

Gambar 2.
FIS Editor fuzzy1
3)
Buatlah
3 membership function untuk Input error, dengan nama Neg (N), Zero (Z)
dan Pos (P), berupa trimf, dan atur range-nya menjadi [-1 1].

Gambar 3.
Input Error dengan 3 MF
4)
Buatlah
3 membership function untuk Input derror, dengan nama Neg (N), Zero (Z)
dan Pos (P), berupa trimf, dan atur range-nya menjadi [-0.1 0.1].

Gambar 4.
Input derror dengan 3 MF
5)
Buatlah
3 membership function untuk output, dengan nama Neg (N), Zero (Z) dan
Pos (P), berupa trimf, dan atur range-nya menjadi [-1 1].

Gambar 5.
Output dengan 3 MF
6)
Buatlah
9 rule standar (pendekatan heuristic), seperti yang terlihat pada gambar dibawah ini:

Gambar
6. Rule Editor fuzzy1
b. Tugas
1)
Melihat pengaruh perubahan parameter
output:
a)
Aturlah
range output: dari [-1 1] menjadi [-2 2] dan [-0.5 0.5]

Gambar 7.
Mengatur Range Output
Gantilah
Range [-1 1] seperti yang
ditunjukkan pada gambar diatas, kemudian ubahlah range-nya menjadi [-2
2], diikuti dengan menekan enter
pada keyboard. Begitu juga dengan range [-0.5 0.5].
b)
Ubahlah
tipe MF output: segitiga ke gauss dan ke trapezium

Gambar 8.
Mengubah Type MF
c)
Aturlah
lebar sempit MF: Z dipersempit, Z diperlebar, dan masing-masing MF
dibuat sempit (tanpa overlap).
Tarikkah
kekiri dan kekanan MF Z, sampai menyempit atau melebar, atau bisa juga juga
dengan mengatur params-nya.
2) Melihat pengaruh metode defuzzifikasi
Secara default, metode yang dipakai yaitu
centroid
a) Gantilah metode tersebut diganti
berturut-turut dengan bisector, MOM, LOM dan SOM.

Gambar 9.
Mengubah Metode Defuzzifikasi
4.
Pertemuan 4
a.
Buatlah
workspace seperti pertemuan sebelumnya
1) Buatlah rangkaian simulasi seperti gambar
dibawah ini:

Gambar 1.
Model Workspace Dengan Sistem Orde 2
2) Buatlah
FIS Editor dengan 2 Input (dengan nama error dan derror), dan 1 Output
(dengan nama output).
Perhatikan
gambar dibawah ini:

Gambar 2.
FIS Editor fuzzy1
3)
Buatlah
3 membership function untuk Input error, dengan nama Neg (N), Zero (Z)
dan Pos (P), berupa trimf, dan atur range-nya menjadi [-1 1].

Gambar 3.
Input Error dengan 3 MF
4)
Buatlah
3 membership function untuk Input derror, dengan nama Neg (N), Zero (Z)
dan Pos (P), berupa trimf, dan atur range-nya menjadi [-0.1 0.1].

Gambar 4.
Input derror dengan 3 MF
5)
Buatlah
3 membership function untuk output, dengan nama Neg (N), Zero (Z) dan
Pos (P), berupa trimf, dan atur range-nya menjadi [-1 1].

Gambar 5.
Output dengan 3 MF
6) Buatlah 9 rule standar (pendekatan
heuristic), seperti yang terlihat
pada gambar dibawah ini:

Gambar
6. Rule Editor fuzzy1
b.
Range, tipe MF, dan lebar sama dengan yang
standar
c.
Tugas
1) Melihat pengaruh pengubahan rule
|
N
|
Z
|
P
|
N
|
N
|
N
|
P
|
Z
|
N
|
Z
|
P
|
P
|
N
|
P
|
P
|
1)
If error is N then output is N
2)
If error is P then output is P
3)
If error is Z and derror is Z then output is Z
4)
If error is Z and derror is N then output is N
5)
If error is Z and derror is P then output is P

Gambar 7.
Rule Editor
2) Melihat pengaruh pengubahan jumlah
MF pada input dan output, menjadi masing-masing 5 MF: NB, NS, Z, PS, dan PB.

Gambar 8. MF
Input Error
2 komentar:
thanks so much :D
maaf tak ada gambar...
Posting Komentar