Pengontrolan Multielevator Menggunakan Kendali Fuzzy
RIWAYAT HIDUP Nama : LANA Nama Lengkap : RAHMAT MAULANA YUSUF NIM : 1.31.06.015 Tempat/Tgl Lahir : Bandung/ 08 Februari 1989 Alamat : Jln. Kapten sangun Rt 01 Rw 05 Kec. Cicalengka Desa.Tenjolaya Kab.Bandung 40395 Agama : Islam No. Tlp : 085221629369 Jurusan : Teknik Elektro Fakultas : Teknik dan Ilmu Komputer Riwayat Sekolah :
1. SDNXV.Cicalengka ,Kab.Bandung
2. SMPN1.Cicalengka,Kab.Bandung
4. Universitas Komputer Indonesia, Bandung
PENGONTROLAN
MENGGUNAKAN KENDALI FUZZY
Laporan ini disusun untuk memenuhi menempuh pendidikan Program S
JURUSAN
FAKULTAS TEKNIK DAN ILMU KOMPUTER
PENGONTROLAN MULTIELEVATOR
MENGGUNAKAN KENDALI FUZZY
TUGAS AKHIR
Laporan ini disusun untuk memenuhi salah satu syarat dalam pendidikan Program Sarjana di Jurusan Teknik Elektro
Disusun Oleh :
Rahmat Maulana Yusuf 1.31.06.015
JURUSAN TEKNIK ELEKTRO
FAKULTAS TEKNIK DAN ILMU KOMPUTER
dalam Elektro
FAKULTAS TEKNIK DAN ILMU KOMPUTER
DAFTAR PUSTAKA
BukuBudiono, Eka:Programmable Automation Control (PAC) dengan LabVIEW
7.1 Terkoneksi Mikrokontroller dal PLC, Yogyakarta, Gava Media, 2009 Kusumadewi, Sri: ARTIFICIAL INTELLIGENCE (Teknik dan Aplikasinya),
Yogyakarta, Graha Ilmu, 2003 MODUL PRAKTIKUM PENGONTROLAN PID dan PENGENALAN LabVIEW REVISI 2007, Teknik Elektro, UNIKOM, Bandung, 2007.
MODUL PRAKTIKUM APLIKASI ARTIFICIAL INTELEGENT PADA PENGONTROLAN, Teknik Elektro, UNIKOM, Bandung, 2007.
Situs Web
5menitbelajarlabview.blogspot.com www.ni.com/pdf/academic/us/journals/ijee_07.pdf
eprints.utm.my/1852/
LAMPIRAN
BAB I PENDAHULUAN
1.1 Latar Belakang
Pada saat ini perkembangan ilmu pengetahuan dan teknologi semakin pesat seiring dengan perkembangan zaman. Dengan perkembangan teknologi yang semakin canggih diharapkan dapat memberikan kemudahan bagi manusia untuk melakukan aktivitasnya sehari-hari sehingga dapat menghemat waktu dan tenaga.
Kemajuan teknologi terutama di bidang piranti elektronika, mendorong manusia untuk membuat peralatan elektronika tepat guna yang dapat dimanfaatkan dalam berbagai sendi kehidupan, misalnya pembuatan peralatan yang membantu aktifitas.
Saat ini berbagai cara telah dikembangkan orang untuk membantu dan mempermudah aktivitas manusia seperti pembuatan elevator untuk mencapai gedung-gedung yang tinggi misalnya. Sistem elevator ini dapat dibangun dengan berbagai sensor, mekanik, kontruksi elevator dan komponen-komponen yang masing-masing memiliki peranan tersendiri dalam memberikan pelayanan untuk mempermudah pekerjaan manusia mencapai gedung yang tinggi.
Berdasarkan hal tersebut diatas, terpikirkan penulis untuk membuat elevator yang sederhana dengan menggunakan logika Fuzzy. Dimana logika fuzzy merupakan logika berdasar pemikiran manusia yang di terapkan pada sebuah sistem. Logika ini adalah suatu cara yang tepat untuk memetakan suatu ruang utama yaitu fuzzifier (pengubah besaran tegas ke besaran fuzzy), sekumpulan aturan atau kaidah fuzzy, mesin inferensi dan defuzzyfier (pengubah keluaran proses fuzzy ke besaran tegas). Ada beberapa alasan mengapa menggunakan logika fuzzy, diantaranya:
1. Konsep logika fuzzy mudah di mengerti. Konsep matematis yang mendasari penalaran fuzzy sangat sederhana dan mudah di mengerti.
2. Logika fuzzy sangat flexible.
3. Logika fuzzy memiliki toleransi terhadap data-data yang tidak tepat.
4. Logika fuzzy mampu memodelkan fungsi-fungsi nonlinier yang sangat kompleks.
5. Logika fuzzy dapat membangun dan mengaplikasikan pengalaman- pengalaman para pakar secara langsung tanpa harus melalui proses pelatihan.
6. Logika fuzzi dapat bekerjasama dengan teknik-teknik kendali secara konvensional.
7. Logika fuzzy didasarkan pada bahasa alami.
Logika fuzzy dapat di aplikasikan kedalam pengontrolan elevator dan memiliki banyak keunggulan diantaranya untuk meminimalkan waktu tunggu pengguna, meminimalkan waktu untuk mencapai tujuan, memeksimalkan pengguna dalam setiap waktu.
Dengan penjelasan diatas penulis ingin mengankat skripsi dengan judul “PENGONTROLAN MULTIELEVATOR MENGGUNAKAN METODE FUZZY”.
1.2 Rumusan Masalah
Mengacu pada permasalahan yang diuraikan pada latar belakang, maka rumusan masalah dapat ditekankan pada Bagaimana merancang pemrograman dengan logika fuzzy, mencari parameter atau nilai yang membuat system efektif dan fleksibel. agar dapat digunakan untuk elevator agar dapat meminimalkan waktu tunggu pengguna, memaksimalkan waktu untuk mencapai tujuan, dan memaksimalkan waktu melayani pengguna.
1.3 Tujuan Penelitian
Tujuan perancangan elevator menggunakan logika fuzzy ini adalah: 1. Meminimalkan waktu tunggu pengguna.
2. Meminimalkan waktu untuk mencapai tujuan.
3. Memaksimalkan pengguna dalam setiap waktu.
4. Meminimalkan pengunaan energi listrik
1.4 Batasan Masalah
Dalam menyusun tugas akhir ini diperlukan suatu batasan masalah agar tidak menyimpang dari ruang lingkup yang akan dibahas. Adapun batasan masalahnya : 1. Pembahasan perancangan simulasi elevator menggunakan LabVIEW.
2. Pembahasan pemrograman logika fuzzy.
3. Struktur inferensi yang akan diuji adalah berdasar pada teori mamdani.
1.5 Metodologi Penelitian
Untuk mencapai tujuan yang diinginkan dari penulisan materi tugas akhir ini, maka penulis mengadakan kegiatan antara lain :
1. Studi pustaka yang berhubungan dengan sistem logika fuzzy
2. Membuat perancangan pengendali fuzzy dalam beberapa struktur, serta membuat program simulasi dari setiap struktur pengendali fuzzy menggunakan LabVEWI
3. Melakukan proses simulasi serta melakukan penalaan parameter-parameter
4. Mengulang langkah 3 dan 4 hingga di peroleh hasil optimal
5. Melakukan analisis hasil penelitian
1.6 Sistematika Penulisan
Secara garis besar pembahasan dari Perencanaan dan Pembuatan sistem ini terbagi dalam beberapa bab yaitu :
BAB I Pendahuluan Meliputi latar belakang, rumusan masalah, tujuan, batasan masalah, metodologi, dan sistematika pembahasan. BAB II Dasar Teori Berisi tentang teori dasar yang berhubungan dengan alat yang direncanakan.
BAB IV Pengujian simulasi Membahas tentang pengujian simulasi serta analisa hasil pengujian. BAB V Penutup Berisi tentang kesimpulan dan saran.
BAB II DASAR TEORI
2.1 Logika Fuzzy
Sistem fuzzy atau logika fuzzy adalah salah satu bahasan soft computing yang memiliki karakteristik dan keunggulan dalam menangani permasalahan yang bersifat ketidakpastian dan kebenaran parsial. Logika fuzzy merupakan pengembangan dari logika boolean yang hanya memiliki nilai true (1) atau false (0).
2.1.1 Sistem Logika Fuzzy Secara umum sistem logika fuzzy dapat digambarkan seperti berikut.
Pengolahan Kaidah
Keluaran Masukan
Keluaran (tegas) (tegas) Fuzzifikasi Defuzzifikasi y=f(x) ЄY xЄX
Inferensi
Himpunan Himpunan
Fuzzy Masukan Fuzzy Keluaran
Gambar 2.1 Sitem Logika Fuzzy2.1.2 Himpunan Fuzzy
Himpunan fuzzy merupakan suatu grup yang mewakili suatu kondisi atau keadaan tertentu dalam suatu variable fuzzy.
Himpunan fuzzy memiliki 2 fungsi atribut, yaitu:
1. Linguistic, yaitu penamaan suatu grup yang memilik suatu yang mewakili suatu keadaan atau kondisi tertentu dengan menggunakan bahasa alami, seperti: MUDA, PAROBAYA, TUA.
2. Numeris, yaitu suatu nilai (angka) yang menunjukan ukuran dari suatu variable seperti: 40, 25, 50, dsb.
2.1.3 Semesta Pembicaraan
Semesta pembicaraan adalah seluruh nilai yang diperbolehkan untuk dioprasikan dalam suatu variable fuzzy. Sementara pembicaraan merupakan himpunan bilangan real yang senantiasa naik (bertambah) secara monoton dari kiri ke kanan. Nilai semesta pembicaraan dapat berupa bilangan positif maupun negatif. Adakalanya nilai semesta pembicaraan tidak di batasi batas atasnya.
2.1.4 Domain
Domain hinpunan fuzzy adalah keseluruhan nilai yang di ijinkan dalam semesta pembicaraan dan boleh dioprasikan dalam suatu himpunan fuzzy. bilangan real yang senantiasa naik (bertambah) secara monoton dari kiri ke kanan. Nilai domain dapat berupa bilangan positif maupun negative.
2.1.5 Fungsi Keanggotaan
Fungsi keanggotaan (membership function) adalah suatu kurva yang menunjukan pemetaan titik-titik input data kedalam nilai keanggotaannya (seringjuga disebut derajat keanggotaan) yang memiliki interval antara 1sampai 0. Salah satu cara yang dapat digunakan untuk mendapatkan nilai keanggotaan adalah melalui pendekatan fungsi. Ada beberapa fungsi yang bias di gunakan.
a. Representasi Linier Pada representasi linier, pemetaan input ke derajat keanggotaannya sigunakan sebagai suatu garis lurus. Bentuk ini paling sederhana dan menjadi pilihan yang baik untuk mendekati suatu konsep yang kurang jelas.
1
b a
Gambar 2.2 Representasi fuzzy keanggotaan linier−
(persamaan 1) μ[x]=
−
b. Representasi Kurva Segitiga Kurva segitiga pada dasarnya merupakan gabungan antara 2 garis (linier) seperti terlihat pada Gambar 3.
1 a b c
Gambar 2.3 Representasi keanggotaan segitigaFungsi keanggotaan
ℎ− + +ℎ−
[x]= max (persamaan 2) , ,
ℎ ℎ
c. Representasi Kurva Trapesium Kurva trapesium pada dasarnya seperti bentuk segitiga, hanya saja beberapa titik yang memiliki nilai keanggotaan 1 (Gambar 2.4).
1 Fungsi keanggotaan: μ[x] = max
− −
,
− −
, (persamaan 3)
d. Representasi Kurva Gauss
Gambar 2.5 Representasi fungsi keanggotaan gaussFungsi keanggotaan: μ[x]=
(persamaan 4) e.
Kurva Berbentuk Lonceng
Lebar (k)
Pusat γ
Domain
1
0 R1 R2 Pusat γ
1 Fungsi keanggotaan: (persamaan 5)
μ[x]=
- −
f. Representasi Kurva Signoid
Pusat γ
1
0 R1 R2
Gambar 2.7 Representasi fungsi keanggotaan signoidFungsi keanggotaan: (persamaan 6)
μ[x]=
2.2 LabVIEW
LabVIEW adalah software yang bahasa pemrogramannya menggunakan grafik. Labview merupakan software yang dapat digunakan untuk Data
Acquisition, Instrument Control, Test Automation, Instrumentasi Kendali, Analisis dan Pengolahan Sinyal, Kontrol Industri, Desain Embedded.
Fungsi dari Window Front Panel adalah untuk menampilkan antara muka program (interaksi) dengan pemakai. Sementara fungsi dari Block Diagram adalah merupakan isi program yang berbasis grafik.
Gambar 2.8 Window Front PanelGambar 2.9 Block Diagramb. Controls Palette
Gambar 2.10 Controls Palette Controls Palette merupakan salah satu bagian dari Window Front Panel.Controls Palette ini merupakan kumpulan library control yang siap digunakan untuk ditampilkan. Isi dari Controls Palette ini adalah Numeric, Boolean, String and Path, Array and Cluster, List and Tables, Graph, Ring and Enum, Containers, I/O, Dialog Controls, Classic I/O, Refnum, Decorations, Express, Select a Control dan Users Controls.
1. Numeric
Gambar 2.11 Control Palette NumericSub Palette Numeric terdiri dari control dan indicator. Control memiliki seifat sebagai penghasil sinyal, sementara indicator
Gambar 2.12 Control Palette BooleanControl Palette Boolean memiliki berbagai jenis control dan indicator seperti Push Button, Rocker, Vert Rocker,Round LED, Horizontal Toggle Switch, Vertical Toggle Switch, Square LED, Slide Switch, Vertical Slide Switch, OK Button, Cancel Button, Stop Button, Radio Button.
3. String and Path
Gambar 2.13 String and Path ControlString and Path Control memiliki kontrol String Control, String Indicator, File Path Control, dan Combo Box.
4. Function Block Palette
Gambar 2.14 Function Block PaletteFungsi-fungsi Pemrograman yang terdapat pada Function Palette adalah Structures, Numeric, Boolean, String, Array, Cluster, Comparison, Time and Dialog, File I/O, NI Measurement, Waveform, Analyze, nstrument I/O, Aplication Control, Graphic and Sound, Communication, Report generation, Advanced.
a. Structures
Gambar 2.15 Structures Sub PaletteStructures ini berisi Sequence Structure, Case Structure, For Loop, While Loop, Formula Node, Event Structure, Global Variable, Local variable
b. Numeric
Gambar 2.17 Numeric Sub PaletteIsi dari Numeric Sub Palette ini diantaranya :
Add Add akan melakukan operasi penjumlahan dua buah bilangan (x+y).
Subtract
Subtract akan melakukan operasi pengurangan dua buah bilangan (x- y).
Multiply Multiply akan melakukan operasi perkalian dua buah bilangan (x*y).
Divide
Numeric Constant
Numeric Constant akan memberikan suatu nilai numeric pada suatu terminal.
Selain itu masih terdapat banyak bagian seperti Quotient and Remainder, Increment, Decrement, Add Array Element, Multiply Array Element, Compound Arithmetic.
c. Boolean
Gambar 2.18 Boolean Sub PaletteBoolean memiliki Sub Palette sebagai berikut :
And And melakukan operasi And terhadap 2 buah nilai Boolean.
OR
Exclusive OR
Exclusive OR akan melakukan operasi Exclusive OR terhadap 2 buah nilai Boolean.
Not Not melakukan operasi Not terhadapa suatu nilai masukan Boolean.
True/False Constant
True/False Constant akan memberikan suatu nilai Boolean constant pada suatu terminal.
d. String
Sub Palette dari String
Gambar 2.19 String Sub PaletteGambar 2.20 Comparison Sub PaletteBeberapa bagian dari Comparison ini diantaranya :
Equal ?
Jika nilai x = y, maka nilai keluaran akan True, jika tidak sama maka akan False.
Not Equal ?
Jika nilai tidak sama dengan y, maka nilai keluaran akan True, jika x=y, maka akan False.
Greater ?
Jika nilai x lebih besar dari y, maka keluaran akan True, jika tidak
Jika nilai x lebih kecil dari y, maka keluaran akan True, jika tidak maka akan False.
f. Time and Dialog
Gambar 2.21 Time and DialogComparison melaksanakan berbagai fungsi pewaktuan dan mempunyai sub palette sebagai berikut : Wait Until Next ms Multiple Mennunggu eksekusi hingga kelipatan ms berikutnya. Fungsi ini sering digunakan bersama While Loop Structures.
Kemudian ada juga Sub Palette Format Date/Time String dan Get Date/Times in Second serta One Button Dialog.
g. User Libraries
BAB III PERENCANAAN DAN PERANCANGAN SIMULASI
3.1 Aturan Fuzzy Untuk mendapatkan aturan Fuzzy maka di butuhkan data-data sebagai berikut:
3.1.1 Fungsi keanggotaan
Fungsi Variabel Nama Semesta Himpunan Pembicaraan Pendek a= 0, b=0, c=1, d=2 Waiting Time Sedang a= 1, b=2, c=2, d=3 a= 2, b=3, c=4, d=5 Panjang Pendek a= 0, b=0, c=1, d=2 Input Riding time Sedang a= 1, b=2, c=2, d=3 Panjang a= 2, b=3, c=4, d=5 Dekat a= 0, b=0, c=1, d=2
Travelling a= 1, b=2, c=2, d=3 Tengah
Distance Jauh a= 2, b=3, c=4, d=5 Besar a= 0, b=0, c=0.5 Output Priority Sedang a= 0, b=0.5, c=1 Kecil a= 0.5, b=1, c=1
3.1.2 Aturan-aturan logika Fuzzy 1. jika (waiting time) pendek maka (Priority) Besar 2. jika (waiting time) sedang maka (Priority) Sedang 3. jika (waiting time) panjang maka (Priority) Kecil 4. jika (Riding time) pendek maka (Priority) Besar 5. jika (Riding time) Sedang maka (Priority) Sedang 6. jika (Riding time) Panjang maka (Priority) Kecil 7. jika (Travelling Distance) dekat maka (Priority) Besar 8. jika (Travelling Distance) tengah maka (Priority) Sedang 9. jika (Travelling Distance) jauh maka (Priority) Kecil
3.2 Perencanaan Simulasi Simulasi elevator ini dirancang menggunakan perangkat lunak LabVIEW 7.1 dari National Instruments.
Gambar 3.1 Tampilan awal LabVIEW 7.13.2.1 Perancangan Elevator
Perancangan similasi ini menggunakan komponen-komponen yang terdapat pada LabVIEW. Dan subrutin-subrutin yang di buat untuk elevator. Dengan tampilan sebagai berikut. Gambar3.2 Tampilan simulasi elevator
3.2.1.1 Subrutin-subrutin dan fungsinya
Subrutin adalah bagian dari program yang dapat digunakan berkali-kali oleh program. Dengan subrutin ini maka pembuatan program dapat lebih sedrhana. Subrutinsubrutin yang terdapat pada simulasi ini adalah:
1. Sensor Lantai
Subrutin ini berfungsi sebagai sensur lantai pendeteksi di
lantai mana elevator berada dengan front panel dan block
Gambar 3.3 Tampilan Front panel dan block diagram sensor lantai2. Sensor Pintu Sensor pintu merupakan subrutin yang berfungsi untuk mengontrol buka tutupnya pintu di suatu lantai. Dengan frontpanel dan block diagram sebagai berikut:
Gambar 3.4 Tampilan Front panel dan block diagram sensor pintu3. Arah Request Subrutin arah request berfungsi untuk mengetahui arah panggilan dari setip lantai dari elevator .
Gambar 3.4 Tampilan block diagram Arah Request Subrutin Job Task IN Lift berfungsi mengatur tugas yang masuk dari setiap elevator dan mencari tujuan yang belum dilayani.Gambar 3.7 Tampilan Front panel arah requestGambar 3.8 Tampilan Block Diagram arah requestSubrutin Job Task IN berfungsi mengatur tugas masuk dari lantai dan mencari tugas dari lantai yang belum di layani.
Gambar 3.9 Tampilan Front panel Job Task INGambar 3.10 Tampilan block Diagram Job Task IN
Subrutin Rqst Lift G berfungsi untuk mengelompokan request
lift apakan naik atau turun.Gambar 3.11 Tampilan Front panel dan block diagram Rqst Lift G7. Job Task Out
Subrutin Job Task Out berfungsi untuk mengeluarkan tugas yang sudah dikerjakan.
Subrutin motor pintu berfungsi untuk membuka dan menutup pintu
pada setiap lantai.Gambar 3.13 Tampilan Front panel dan block diagram Motor Pintu3.2.1.2 Perancangan Simulasi Elevator
Perancangan simulasi elevator ini dilakukan dengan penggabungan subrutin-subrutin yang sudah di buat seperti sensor lantai, motor pintu, job task in, job task out, di gabungkan menjadi simulasi elevator. Tampilan jadi dari simulasi elevator tertera di bawah ini:
Berdasarkan aturan aturan (Rule) FUZZY yang telah di tentukan maka dapat dibuat rangkaian FUZZY mengunakan LabVIEW.
3.2.2 Himpunan Fuzzi
Dalam pembuatan sistem Fuzzi input dan output harus di tentukan terlebih dahulu.
a. Input Inputan pada fuzzy merupakan parameter parameter yang akan di bandingkan untuk mendapatkan hasil output yang paling optimal.
Pada kasus pengontrolan elevator menggunakan fuzzy ini terdapat 3 inputan yaitu Waiting time, riding time, travelling distance.
1. Waiting time Waiting time adalah Total Waktu elevator di posisi awal hingga mencapai pangilan baru.
2. Riding time Riding time total waktu pengguna di dalam car hingga mencapai tujuan
3. Travelling Distance Travelling Distance adalah jarak antar elevator dengan panggilan baru dalam hal jumlah lantai.
b. Output
1. Priority
3.2.3 Fungsi Keanggotaan Fungsi keanggotaan pada fuzzy system elevator ini menggunakan triangle (segitiga) dan trapezoidal (trapesium).
a. Waiting Time Waiting time menggunakan fungsi keanggotaan Trapezoidal (trapesium).
Dengan parameter:
1. Short Waiting time dikatakan short apabila waktu yang diperlukan elevator mencapai tujuan pendek.
2. Medium Waiting time dikatakan medim apabila waktu yang diperlukan elevator mencapai tujuan sedang.
3. Long Waiting time dikatakan long apabila waktu yang diperlukan elevator mencapai tujuan panjang. b. Riding Time Riding Time menggunakan fungsi keanggotaan Trapezoidal (trapesium). Dengan parameter:
1. Short Riding Time dikatakan short apabila waktu yang diperlukan pengguna mencapai tujuan pendek.
2. Medium Riding Time dikatakan medim apabila waktu yang diperlukan pengguna mencapai tujuan sedang.
3. Long Waiting time dikatakan long apabila waktu yang diperlukan pengguna mencapai tujuan panjang.
Gambar 3.3 Fungsi Keanggotaan Waiting Time1. Close Travelling distance dikatakan short apabila jarak diperlukan elevator mencapai panggilan baru dekat.
4. Middle Travelling distance dikatakan medim apabila apabila jarak diperlukan elevator mencapai panggilan baru sedang.
5. Far Travelling distance dikatakan long apabila apabila jarak diperlukan elevator mencapai panggilan baru jauh.
Gambar 3.3 Fungsi Keanggotaan Waiting Timed. Priority Priority menggunakan fungsi keanggotaan Triangel (Segitiga). Dengan
Priority dikatakan small apabila parameter nilai parameter waiting time, riding time, dan treveling distance besar.
2. Medium Priority dikatakan small apabila parameter nilai parameter waiting time, riding time, dan treveling distance besar.
3. Big Priority dikatakan small apabila parameter nilai parameter waiting time, riding time, dan treveling distance besar.
3.2.4 Perancangan Fuzzy Dengan LabView Pada perancangan ini di perlukan beberapa sub rutin yang di buat untuk perancangan sistem Fuzzy yaitu:
1. Trapezoidal MF
2. Triangel MF
3. Implication
4. Defuzzifikasi Sub rutin ini berfungsi untuk pemetaan titik-titik input data kedalam nilai keanggotaannya (sering juga disebut derajat keanggotaan) yang di memiliki interval antara 0 sampai 1.
1. Trapezoidal MF
Merupakan fungsi keanggotaan yang berbentuk trapesium yaitu kurva segitiga yang memiliki beberapa titik yang nilai keanggotaannya 1.
Dalam Labview fungsi keanggotaannya dapat dibuat seperti berikut:
a. Membuat cluster pada front panel yang berisikan numerik sebagai fungsi kaenggotaan a, b, c, dan d.
b. Membuat masukan x dan keluaran y dengan numeric constrol dan indikator Dari dua langkah di atas, maka tampilan front panel akan seperti berikut:
Gambar 3.7 Front panel fungsi keanggotaan trapezoidalUntuk menghubungkan kedua fungsi masukan tersebut dengan keluaran supaya menjadi sebuah persamaan maka dapat di lakukan pada block diagram menggunakan Formula node. Tuliskan persamaan
Di sebelah kanan formula node tambahkan 5 add input dan beri nama a, b, c, d, x. Dan di sebelah kiri berikan 1 add output dan beri nama y.
Dan hasilnya dapat di tampilkan sebagai berikut:
Gambar 3.8 Tampilan blok diagram fungsi keanggotaan trapezoidalDi front panel terdapan icon di menu bar. Hubungkan konektor yang ada di menubar tersebut dengan fungsi yang telah di buat.
Funsi Keanggotaan y x
Gambar 3.9 Icon menu bar yang telah terkoneksi Merupakan fungsi keanggotaan yang berbentuk segitiga yaitu kurva yang merupakan gabungan antara 2 garis (linier). Dalam Labview fungsi keanggotaannya dapat dibuat seperti berikut:a. Membuat cluster pada front panel yang berisikan numerik sebagai fungsi kaenggotaan a, b, dan c.
b. Membuat masukan x dan keluaran y dengan numeric constrol dan indikator Dari dua langkah di atas, maka tampilan front panel akan seperti berikut:
Gambar 3.10 Front panel fungsi keanggotaan triangelUntuk menghubungkan kedua fungsi masukan tersebut dengan y=max(min((x-a)/(b-a),(c-x)/(c-b)),0); Di sebelah kanan formula node ditambahkan 4 add input dan beri nama a, b, c, , x. Dan di sebelah kiri berikan 1 add output dan beri nama y. Dan hasilnya dapat di tampilkan sebagai berikut:
Gambar 3.11 Tampilan blok diagram fungsi keanggotaan triangelDi front panel terdapan icon di menu bar. Hubungkan konektor yang ada di menubar tersebut dengan fungsi yang telah dibuat.
Funsi Keanggotaan y x
Gambar 3.12 Icon menu bar yang telah terkoneksi3. Implikasi Merupakan Subrutin yang berfungsi untuk membatasi nilai
consequent fuzzy berdasarkan keluaran bagian antecedantnya. Dalam a. Membuat cluster fungsi keanggotaan pada front panel yang berisikan numerik sebagai fungsi kaenggotaan a, b, dan c.
b. Membuat cluster Output range pada front panel yang berisikan numerik sebagai fungsi kaenggotaan max, dan min.
c. Membuat array mf dan x dengan numeric indikator sebanyak 3 buah d. Membuat keluaran y dengan numeric constrol.
Dari langkah di atas, maka tampilan front panel akan seperti berikut:
Gambar 3.13 Front panel fungsi implikasiUntuk perancangan di blok diagram dapat di jelaskan sebagai berikut:
a. Membuat array constant dengan numeric
Gambar 3.14 Tampilan blok diagram fungsi implikasiDi front panel terdapan icon di menu bar. Hubungkan konektor yang ada di menubar tersebut dengan fungsi yang telah di buat.
Funsi Keanggotaan mf Output range x w
Gambar 3.15 Icon menu bar yang telah terkoneksi4. Defuzzifikasi Merupakan sub rutin yang berfungsi untuk mengubah set keluaran fuzzy menjadi nilai tunggal. Dalam Labview Implikasi dapat dibuat seperti berikut: e. Membuat keluaran out dengan numeric control.
Dari langkah di atas, maka tampilan front panel akan seperti berikut:
Gambar 3.16 Front panel fungsi implikasiUntuk perancangan di blok diagram dapat di jelaskan sebagai berikut:
a. Menggunakan fungsi dotproduct
b. Menggunakan fungsi add array element Di front panel terdapan icon di menu bar. Hubungkan konektor yang ada di menubar tersebut dengan fungsi yang telah di buat. mf out x
Gambar 3.18 Icon menu bar yang telah terkoneksiDalam perancangan fuzzi dengan parameter dan fungsi keanggotaan yang telah di buat maka tampilannya sebagai berikut:
Gambar 3.4 Front panel untuk fungsi waiting timeGambar 3.5 Front panel untuk fungsi riding timeGambar 3.5 Front panel untuk fungsi travelling distanceTampilan keseluruhan dari sistem fuzzy ini adalah:
Gambar 3.6 Tampilan Front panel fuzzyDan rancangan blok diagramnya sebagai berikut:
Gambar 3.6 Tampilan blok diagram fuzzyDari diagram block di atas, menjelaskan tentang aturan-aturan (Rule) yang telah di buat, yaitu: 1. jika (waiting time) pendek maka (Priority) Besar 2. jika (waiting time) sedang maka (Priority) Sedang 3. jika (waiting time) panjang maka (Priority) Kecil 4. jika (Riding time) pendek maka (Priority) Besar 5. jika (Riding time) Sedang maka (Priority) Sedang 6. jika (Riding time) Panjang maka (Priority) Kecil 7. jika (Travelling Distance) dekat maka (Priority) Besar 8. jika (Travelling Distance) tengah maka (Priority) Sedang 9. jika (Travelling Distance) jauh maka (Priority) Kecil
BAB IV DATA SIMULASI DAN ANALISIS
4.1 Data Simulasi
Dari simulasi yang dilakukan dapat di ambil sampel data untuk menggambarkan sistem kerja elevator. Untuk memperoleh sebuah data hal yang dipertimbangkan yaitu : 1. Posisi awal, arah panggilan, dan jarak antara posisi awal dan pesanan.
2. Panggilan baru, dan tujuan.
Simulasi ini dilakukan pada jumlah elevator 3 dan jumlah lantai 5.
Simulasi elevator menggunakan kendali fuzzy bertujuan untuk, meminimalkan waktu tunggu pengguna,.meminimalkan waktu untuk mencapai tujuan,. memeksimalkan pengguna dalam setiap waktu, meminimalkan pengunaan energi listrik.
Data dari hasil simulasi yang di lakukan dapat di lihat pada tabel dibawah ini:
Tabel Data Simulasi : Elevator Keadaan
1
2
3 Data 1 Posisi
1
1
1 Arah layanan diam diam Diam Ruang panggilan awal diam diam Diam Riding Time
1
1
1 Waiting Time Travelling Distance
3
3
3 Panggilan Priority
3,2 0,5 0,5 0,5
Data 2 Posisi3
1
1 Arah layanan turun diam diam Ruang panggilan awal 3,2 diam diam Riding Time
2
1
1 Waiting Time
1 Travelling Distance
1
1
1 Panggilan Priority
2,1 0,83 0,83 0,83
Data 3 Posisi3
5
3 turun turun naik Arah layanan Ruang panggilan awal 3,1 5,3 3,5 Riding Time
2
2
2 Waiting Time
1
1
1 Travelling Distance
3
5
3 Panggilan Priority 0,83
2,1 0,5 0,83
Data 45
2
4 Posisi Arah layanan turun naik naik Ruang panggilan awal 5,1 2,4 4,5 Riding Time
2
2
2 Waiting Time
1
1
1 Travelling Distance Elevator Keadaan
1
2
3 Data 5
5
3
2 Posisi turun turun naik Arah layanan Ruang panggilan awal 5,2 3,1 2,4 Riding Time
2
2
2 Waiting Time
1
1
1 Travelling Distance
5
3
2 Panggilan Priority 0,58
1,4 0,5 0,35 Data 6
4
3
3 Posisi naik turun naik Arah layanan Ruang panggilan awal 4,5 3,2 3,5 Riding Time
2
2
2 Waiting Time
1
1
1 Travelling Distance
2
1
1 Panggilan Priority 0,43
2,5 0,3 0,28
4.2 Analisa Data
Dari data yang di peroleh yang terdapat pada tabel diatas dapat di analisa satu demi satu data.
1. Data pertama posisi semua elevator berada di lantai 1 dan arah layanan diam karena tidak ada panggilan lantai sebelumya.
Panggilan baru untuk semua elevator ada di lantai 3 akan turun ke lantai 2. Dari nilai priority yang di dapat semua elevator memiliki nilai yang sama yaitu (0,5). Maka elevator yang bekerja adalah elevator 1 karena pertimbangan prioritas yang di utamakan adalah
2. Data kedua, elevator 1 berada di lantai 3 akan turun ke lantai 2.
Sedangkan elevator 2 dan 3 diam. Dari nilai priority yang di dapat semua elevator memiliki nilai yang sama yaitu (0,83). maka yang bekerja adalah elevator 1 karena elevator 1 turun melewati lantai 2 dan dapat melayani pengguna lebih cepat untuk turun menuju lantai
1.
3. Data ketiga, posisi elevator 1 berada di lantai 3 akan turun menuju lantai 1. Elevator 2 berada di lantai 5 akan turun ke lantai 3. Elevator 3 berada di lantai 3 akan naik ke lantai 5. Untuk semua elevator ada panggilan baru dari lantai 2 untuk turun ke lantai 1. Nilai priority elevator 1 (0,83), elevator 2 (0,5), elevator 3 (0,83). Maka yang bekerja adalah elevator 1 karena pertimbangan priority yang di utamakan adalah elevator 1 dan elevator 1 akan turun ke lantai 1 dari lantai 3 melawati lantai 2.
4. Data keempat, posisi elevator 1 berada di lantai 5 akan turun menuju lantai 1. Elevator 2 berada di lantai 2 akan naik ke lantai 4. Elevator 3 berada di lantai 4 akan naik ke lantai 5. Untuk semua elevator ada panggilan baru dari lantai 3 untuk naik ke lantai 5. Nilai priority elevator 1 (0.17), elevator 2 (0.83), elevator 3 (0,42). Maka yang bekerja adalah elevator 2 karena nilai priority paling besar.
5. Data kelima, posisi elevator 1 berada di lantai 5 akan turun menuju lantai 2. Elevator 2 berada di lantai 3 akan turun ke lantai 1. Elevator elevator 1 (0,5), elevator 2 (0,58), elevator 3 (0,35). Maka yang bekerja adalah elevator 2 karena nilai priority paling besar.
6. Data ke enam, posisi elevator 1 berada di lantai 4 akan naik menuju lantai 5. Elevator 2 berada di lantai 3 akan turun ke lantai 2. Elevator 3 berada di lantai 3 akan naik ke lantai 5. Untuk semua elevator ada panggilan baru dari lantai 2 untuk naik ke lantai 5. Nilai priority elevator 1 (0,3), elevator 2 (0,43), elevator 3 (0,28). Maka yang bekerja adalah elevator 2 karena nilai priority paling besar.
Dari hasil analisa ke enam data, maka tujuan tercapai yaitu.
1. Meminimalkan waktu tunggu pengguna, dapat di lihat pada data 1 sampai dengan 6 semua elevator mencari jarak terdekat untuk mencapai panggian baru.
2. Meminimalkan waktu untuk mencapai tujuan, dapat dilihat pada data 2 sampai dengan 6 elevator yang telah melewati lantai panggilan baru mengabaikan panggilan baru untuk mengantarkan pengguna mencapai tujuan.
3. Memaksimalkan pengguna dalam setiap waktu, dapat dilihat pada data 2, 3, dan 4 elevator yang belum melewati panggilan baru sebelum mencapai tujuan melayani panggilan baru terlebih dahulu dan mengantarkan ke tujuan yang terdekat terlebih dahulu.
4. Meminimalkan pengunaan energi listrik, pada data 2 hanya elevator 1
BAB V KESIMPULAN DAN SARAN
5.1 Kesimpulan
Dari data yang telah diperoleh dapat di simpulkan bahwa dengan parameter yang tepat pada pengontrol Fuzzy yang di buat pada kasus “PENGONTROLAN MULTIELEVATOR MENGGUNAKAN FUZZY”, dapat meminimalkan waktu tunggu pengguna, meminimalkan waktu untuk mencapai tujuan, memaksimalkan pengguna dalam setiap waktu meminimalkan penggunaan energi listrik.
Tujuan tersebut tercapai karena komunikasi ke tiga elevator di komtrol oleh sistem fuzzi yang membandingkan waiting time, riding time, dan travelling distance yang menghasilkan output terbesar yang akan mengerjakan tugas pada elevator.
5.2 Saran
Pengontrolan elevator menggunakan fuzzy sangat efektif jika di implementasikan pada elevator masakini. Dimana gedung-gedung perkantoran yang semakain tinggi dan populasi manusia semakin bertambah, pengontrolan menggunakan fuzzy ini dapat meminimalkan waktu tunggu pengguna, meminimalkan waktu untuk mencapai tujuan, memaksimalkan pengguna dalam setiap waktu meminimalkan penggunaan energi listrik.