Sabtu, 06 November 2021

Fuzzy Control System

Referensi :Introduction to Fuzzy Sets, Fuzzy Logic, and Fuzzy Control Systems (Chen G, Pham T)



1. Tujuan [back]

a. Mahasiswa mampu memahami konsep dasar Fuzzy Kontrol Sisten

b. Mahasiswa mampu merancang Fuzzy Kontrol Sistem

2. Alat dan Bahan [back]

 
Alat yang dibutuhkan pada pembelajaran ini yaitu software MATLAB


3.Dasar Teori [back]

MATLAB

MATLAB merupakan bahasa pemrograman tingkat tinggi yang dikembangkan oleh MathWorks dan dikhususkan untuk komputasi numerik, visualisasi,  dan  pemrograman.  

Tampilan MATLAB:


 

FUZZY CONTROL SYSTEM

I. Classical Programmable Logic Control

Programmable Logic Controller ( PLC ) adalah suatu rangkaian micro controller yang terdiri dari beberapa bagian, yaitu CPU, Memory, Power suplay, Data Register, Internal relay, Input / Output Counter dan Timer yang terintegrasi dalam satu perangkat.

Figure 1. Programmable Logic Controller

 

Untuk melihat cara kerja PLC, mari kita perhatikan contoh sederhana pada arm robot  yang meletakkan dan mengambil sesuatu benda dan bekerja dalam siklus otomatis di bawah kendali PLC.


A0: rotate the base counterclockwise (CCW),

A1: rotate the base clockwise (CW),

A2: lift the arm,

A3: lower the arm,

A4: extend the arm,

A5: retract the arm,

A6: close the gripper,

A7: open the gripper.

 

 

Figure 3. Time duration of activities of the robot arm. 

Time duration diatas dapat juga dinyatakan dalam tabel berikut

           

                                          

  Ladder Diagram Symbols

 

 II. Fuzzy Logic Control (I):

A.    A General Model-Free Approach

            Kontroler fuzzy umumnya dapat digambarkan dengan diagram blok seperti yang ditunjukkan pada figure 5



B. Design Principle of Fuzzy Logic Controllers (Konsep Desain Kontrol Logika Fuzzy)

Tahapan dalam perancangan Fuzzy Logic Controller (FLC), diantaranya.

 

1.      The Fuzzification Module (Proses Fuzifikasi)

Fuzifikasi merupakan tahapan untuk mengubah nilai  fisik (posisi, tegangan, derajat, dll.) sinyal proses, sinyal kesalahan yang merupakan input ke pengontrol logika fuzzy, menjadi fuzzy yang dinormalisasi subset yang terdiri dari subset (interval) untuk rentang input nilai dan fungsi keanggotaan yang dinormalisasi.


2.      The Fuzzy Logic Rule Base (Basis Aturan Logika Fuzzy)

 Prosedur umum dalam mendesain Fuzzy Logic Rule Base termasuk yang berikut:

a.       Determining the process states and control variables (Menentukan status proses dan variabel control)

Contoh  : pelacakan Temperature set-point.

.

b.      Determining input variables to the controller (Menentukan variabel input ke controller)

c.       Establishing a fuzzy logic IF-THEN rule base (Membangun logika fuzzy IF-THEN rule base)

Aturan  yang  digunakan  pada  himpunan  fuzzy  adalah  aturan  if-then. Aturan fuzzy IF-THEN merupakan pernyataan yang direpresentasikan dengan

IF < proposisi Fuzzy > THEN < proposisi fuzzy >


d.      Establishing a fuzzy logic inference engine (membangun inferensi Logika Fuzzy)

Inferensi  fuzzy  merupakan  tahap  evaluasi  pada  aturan  fuzzy. Tahap evaluasi dilakukan berdasarkan penalaran dengan menggunakan input fuzzy dan aturan fuzzy sehingga diperoleh  output berupa himpunan fuzzy.

Dalam  FIS  terdapat  dua proses yaitu:

1.  Implikasi yaitu proses mendapatkan consequent keluaran sebuah IF-THEN rule


2.  Agregasi  yaitu  proses  mengkombinasikan  keluaran  semua  IF  THEN  rule  menjadi sebuah  fuzzy  set  tunggal.

Metode inferensi fuzzy diantaranya :

·         Metode Mamdani

  Metode  Mamdani menggunakan fungsi implikasi min dan agregasi max sehingga metode  Mamdani  juga  disebut  dengan  metode  MIN-MAX  (min-max inferencing). Keluaran untuk   aturan metode Mamdani didefinisikan sebagai

 

·         Metode Tsukamoto

Metode Tsukamoto merupakan metode dimana konsekuen dari  aturan  fuzzy-nya  direpresentasikan  dengan  fungsi  keanggotaan yang monoton. Pada metode Tsukamoto,  implikasi  setiap  aturan  berbentuk  implikasi  “Sebab Akibat”/Implikasi  “Input-Output”  dimana  antara  anteseden  dan  konsekuen  harus  ada hubungannya. 

·         Metode Sugeno

Jika  pada  metode Mamdani  proses  defuzzifikasi  menggunakan  agregasi  daerah  kurva, maka pada metode Sugeno agregasi berupa singleton-singleton.

3.      The Defuzzification Module (Proses Defuzzifikasi)

Defuzzifikasi merupakan proses yang berkebalikan dengan proses pada fuzzifikasi. Defuzzifikasi didefinisikan sebagai pemetaan dari himpunan fuzzy ( ) ke himpunan tegas.


Berikut adalah beberapa metode yang digunakan untuk proses defuzzifikasi.

a.       Metode Centroid (Center  of  Grafity)

Proses  defuzzifikasi  pada metode  Centroid  adalah  dengan  mengambil  nilai  titk  pusat  ()  dari daerah  pada  fungsi  keanggotaan B.

b.      Metode Bisektor

Metode bisektor mengambil nilai pada doamin himpunan fuzzy  yang  memiliki  nilai  keanggotaan  pada  daerah  fuzzy  sebagai solusi tegas, dan didefinisikan sebagai:

Dengan sedangkan p = x yang membagi daerah inferensi menjadi dua bagian yang sama besar.

c.       Metode Mean of Maximum (MOM)

Solusi tegas diperoleh dengan cara mengambil nilai rata-rata domain yang memiliki nilai keanggotaan maksimum.

d.      Metode Largest of Maximum (LOM)

Solusi tegas diperoleh dengan cara mengambil nilai terbesar dari domain yang memiliki nilai keanggotaan maksimum.

e.       Metode Smallest of Maximum (SOM)

Solusi tegas diperoleh dengan cara mengambil nilai terkecil dari domain yang memiliki nilai keanggotaan maksimum

 

4.Percobaan [back]

Kasus : Parkir truk


Tujuannya adalah untuk merancang pengontrol logika fuzzy, tanpa asumsi model matematis truk, untuk memarkir truk di mana saja disumbu x. Misalkan : Truk dapat bergerak maju dengan kecepatan konstan v =0,5 m/s dan diasumsikan truk dilengkapi dengan sensor yang dapat mengukur lokasi (x,y) dan orientasi (sudut) setiap saat.

Maka:

·         Logika fuzzycontroller adalah untuk memberikan input, u, untuk memutar roda kemudi dan, akibatnya, untuk manuver truk

·         Variabel input adalah sudut truk dan koordinat posisi vertikal, y,

·         Variabel output adalah sudut kemudi (sinyal), u.

Rentang variabel telah ditetapkan sebelumnya sebagai


Linguistic term yang digunakan pada desain ini adalah

Langkah pertama adalah memilih fungsi keanggotaan. 

Fungsi keanggotaan untuk posisi y

 
 

Fungsi keanggotaan pada sudut

   

Fungsi keanggotaan untuk sinyal control u

   

Langkah kedua : Basis aturan yang digunakan

 

Langkah ketiga : defuzzifikasi

Sebanyak 12 simulasi komputer dilakukan. Berikut ini adalah model matematika sederhana untuk gerak truk. Model ini digunakan untuk membuat data untuk simulasi tetapi tidak digunakan dalam desain pengontrol. Model ini langsung mengikuti dari geometri truk

Hasil Desain control fuzzy pada parkir truk terlihat pada gambar dibawah

 

 


5.Video [back]


 



6.Link Download [back]
Download HTML    : download
Download Video 1      : download
Download Video 2     : download

Kamis, 03 Desember 2020

MODUL 1



*klik teks untuk menuju 

Modul I
General Input dan Output
  1.     Merangkai dan menguji aplikasi output pada mikrokontroller Arduino
  2.     Merangkai dan menguji input pada mikrokontroller Arduino
  3.     Merangkai dan menguji I/O pada mikrokontroller Arduino
    • Module Arduino
    • LED
    • Seven Segmen
    • Motor
    • LCD


      A.Arduino
      Arduino adalah kit elektronik atau papan rangkaian elektronik open source yang di dalamnya terdapat komponen utama yaitu sebuah chip mikrokontroler dengan jenis AVR dari perusahaan Atmel. Arduino yang kita gunakan pada prkatikum ini adalah arduino mega yang menggunakan chip AVR ATmega 2560 yang memiliki fasilitas PWM, komunikasi serial, ADC, timer, interupt, SPI dan I2C. Sehingga Arduino bisa digabungkan bersama modul atau alat lain dengan protocol yang berbeda-beda. Bahasa pemograman yang digunakan adalah bahasa C. Tetapi bahasa ini sudah dipermudah menggunakan fungsi-fungsi yang sederhana sehingga lebih mudah dalam memprogramnya. Dalam memprogram arduino, kita bisa menggunakan serial komunikasi agar arduino dapat berhubungan dengan komputer ataupun aplikasi lain.

      Beberapa fitur dari Arduino Mega 2560 ini adalah :

      Microcontroller
      ATmega2560
      Operating Voltage
      5V
      Input Voltage (recommended)
      7-12V
      Input Voltage (limits)
      6-20V
      Digital I/O Pins
      54 (of which 15 provide PWM output)
      Analog Input Pins
      16
      DC Current per I/O Pin
      20 mA
      DC Current for 3.3V Pin
      50 mA
      Flash Memory
      256 KB of which 8 KB used by bootloader
      SRAM
      8 KB
      EEPROM
      4 KB
      Clock Speed
      16 MHz

      BAGIAN-BAGIAN DARI ARDUINO MEGA 2560
      • ·         Soket USB

           Soket USB adalah soket untuk kabel USB yang disambungkan ke komputer atau laptop.
      Berfungsi untuk mengirimkan program ke Arduino dan juga sebagai port komunikasi serial.
      ·         Input / Output Digital
           Input/Output Digital atau digital pin adalah pin-pin untuk menghubungkan Arduino dengan
      komponen  atau  rangkaian  digital.  Pada  Arduino  Mega  terdapat  53  I/O  Digital  dimana  16
      diantaranya dapat dijadikan sebagai output PWM
       
      • ·         Input Analog

          Input Analog atau analog pin adalah pin-pin yang berfungsi untuk menerima sinyal dari komponen atau rangkaian analog. Misalnya dari potensiometer, sensor suhu, sensor cahaya, dsb.
      Terdapat 16 input analog pada arduino mega 2560.

      • ·         Pin POWER

           Pin-pin catu daya adalah pin yang memberikan tegangan untuk komponen atau rangkaian yang dihubungkan dengan Arduino. Pada bagian catu daya ini terdapat juga pin Vin dan Reset.Vin digunakan untuk memberikan tegangan langsung kepada Arduino tanpa melalui tegangan USB atau adaptor.

      • ·         Tombol RESET

           Reset adalah pin untuk memberikan sinyal reset melaui tombol atau rangkaian eksternal.

      • ·         Jack Baterai/Adaptor

           Soket baterai  atau adaptor digunakan untuk menyuplai Arduino dengan tegangan  dari  baterai/adaptor 9V pada saat Arduino sedang tidak disambungkan ke komputer. Kalau Arduino sedang disambungkan ke komputer melalui USB, Arduino mendapatkan suplai tegangan dari USB, jadi tidak perlu memasang baterai/adaptor saat memprogram Arduino.

      A. LED

      LED adalah suaatu semikonduktor yang memancarkan cahaya,  LED mempunyai kecenderungan polarisasi. LED mempunyai kutub positif dan negatif (p-n) dan hanya akan menyala bila diberikan arus maju. Ini dikarenakan LED terbuat dari bahan semikonduktor yang hanya akan mengizinkan arus listrik mengalir ke satu arah dan tidak ke arah sebaliknya. Bila LED diberikan arus terbalik, hanya akan ada sedikit arus yang melewati  LED. Ini menyebabkan LED tidak akan mengeluarkan emisi cahaya.

      B. Liquid Crystal Display (LCD)

      Liquid Crystal Display (LCD) adalah sebuah peralatan elektronik yang berfungsi untuk
      menampilkan output sebuah sistem dengan cara membentuk suatu citra atau gambaran pada sebuah layar. Secara garis besar komponen penyusun LCD terdiri dari kristal cair (liquid crystal) yang diapit oleh 2 buah elektroda transparan dan 2 buah filter polarisasi (polarizing filter).


      Gambar Penampang komponen penyusun LCD
      Keterangan:
      1. Film dengan polarizing filter vertical untuk memolarisasi cahaya yang masuk.
      2. Glass substrate yang berisi kolom-kolom elektroda Indium tin oxide (ITO).
      3. Twisted nematic liquid crystal (kristal cair dengan susunan terpilin).
      4. Glass substrate yang berisi baris-baris elektroda Indium tin oxide (ITO).
      5. Film dengan polarizing filter horizontal untuk memolarisasi cahaya yang masuk.
      6. Reflektor cahaya untuk memantulkan cahaya yang masuk LCD kembali ke mata pengamat.

      Sebuah citra dibentuk dengan mengombinasikan kondisi nyala dan mati dari pixel-pixel yang menyusun layar sebuah LCD. Pada umumnya LCD yang dijual di pasaran sudah memiliki integrated circuit tersendiri sehingga para pemakai dapat mengontrol tampilan LCD dengan mudah dengan menggunakan mikrokontroler untuk mengirimkan data melalui pin-pin input yang sudah tersedia.


      Kaki-kaki yang terdapat pada LCD

      C. Seven Segmen

      Layar tujuh segmen ini seringkali digunakan pada jam digital, meteran elektronik, dan perangkat elektronik lainnya yang menampilkan informasi numerik. Layar tujuh segmen ini terdiri dari 7 buah LED yang membentuk angka 8 dan 1 LED untuk titik/DP. Angka yang ditampilkan di seven segmen ini dari 0-9. Cara kerja dari seven segmen disesuaikan dengan LED. LED merupakan komponen diode yang dapat memancarkan cahaya. kondisi dalam keadaan ON jika sisi anode mendapatkan sumber positif dari Vcc dan katode mendapatkan sumber negatif dari ground.