PENGENDALI TEKANAN ALIRAN UDARA DALAM PIPA VERTIKAL DENGAN METODE FUZZY Radityo Wisnupradono1) 1) Program Studi S-1 Sistem Komputer, STIKOM Surabaya, email:
[email protected]
An advanced development and fast-growing technology made many methods used to control a device that moves automatically. However, the author attempts to regulate the air pressure in the plumbing by using a vertical synchronization that flown by a motor dc 24v. After traced further, the author using fuzzy methods for his research. Fuzzy methods splits into five, there are Mamdani, Sugeno, Sukamoto, Larsen and simplified fuzzy reasoning methods. The author use fuzzy for research his experiment using Sugeno methods. The purpose of this final duty is to implement fuzzy which currently many people used. The author use fuzzy tuning methods to control the ball to get a stability motion. By means of fuzzification, rule set adjustment, and defuzzification, the author expected the ball is stable. The elevation of the ball that monitoring by ultrasound sensor was inputted by user. The result of the process is Pulse Width Modulation ( PWM ). Output will be displayed in computer which communicated by serial methods. When the research have done, the ball is capable to move with good accuracy ( 10 centimeters tolerance distance from set point ). Key words: motor DC 24V, Fuzzy, Ultrasound Sensor, Pulse Width Modulation Udara menurut kamus besar bahasa Indonesia didefenisikan sebagai campuran dari senyawa gas yang tidak berwarna dan tidak berbau. Ketika udara mengalir di dalam suatu media, aliran dari udara tersebut tidaklah stabil. Hal ini dikarenakan banyaknya noise yang terjadi. Secara umum, mengendalikan tekanan aliran udara dalam pipa vertikal tidaklah mudah. Permasalahan tersebut dapat diatasi dengan metode fuzzy dan menggunakan bola sebagai alat bantu sehingga tidak akan lagi menghadapi aksi kontrol yang kurang sesuai terhadap adanya gangguan yang tidak diketahui serta ketidaktepatan dalam pemodelan sistem. Melalui metode ini pula kita dapat memenuhi kondisi guna mendapatkan performansi yang baik. Logika fuzzy mempunyai sifat yang fleksibel, artinya mampu beradaptasi dengan perubahan-perubahan, dan ketidakpastian serta memiliki kelebihan dalam proses penalaran secara bahasa (linguistic reasoning) sehingga mudah dimengerti. Untuk mengatur kestabilan aliran udara, penulis menggunakan bola sebagai alat bantu dengan harapan bola mampu melayang stabil sesuai dengan input user . Dalam pipa ini terdapat motor DC 24V yang akan mengontrol kestabilan bola yang melayang. Pengaturan motor DC 24V
dilakukan melalui proses fuzzifikasi, penentuan rule set, dan defuzzifikasi. Nilai yang dihasilkan mengacu pada nilai PWM ( Pulse Width Modulation ) sehingga motor DC akan berputar sesuai dari nilai PWM tersebut. Aturan metode fuzzy yang diusulkan adalah Sugeno (M.Sugeno dan G.T. Kang, 1988; T. Takagi dan M. Sugeno, 1985) hal ini dikarenakan metode sugeno memiliki kelebihan yaitu secara otomatis mancari nilainilai pada parameter baik premis maupun konsekuen dengan algoritma pembelajaran terhadap sekumpulan data. Berdasar pada nilai error dan delta error yang terdeteksi oleh sensor ultrasound, jika nilai error dan delta error lebih menuju arah negatif maka nilai PWM ( Pulse Width Modulation ) yang diberikan akan semakin besar . Sebaliknya jika nilai error dan delta error lebih menuju arah positif maka nilai PWM ( Pulse Width Modulation ) semakin kecil. RUMUSAN MASALAH Adapun permasalahan yang akan dihadapi oleh penulis ke depannya dalam proses pengerjaan tugas akhir adalah: 1. Bagaimana mengendalikan tekanan aliran udara dalam pipa vertikal.
1
2.
sebagai anteseden, dan k adalah suatu konstanta (tegas) sebagai konsekuen.
Bagaimana merancang merancang sistem untuk menentukan tekanan aliran udara menggunakan metode fuzzy aturan Sugeno.
TUJUAN Tujuan dari perancangan dan pembuatan perangkat ini adalah sebagai berikut: 1. Mengendalikan tekanan aliran udara dalam pipa vertikal. 2. Merancang sistem untuk menentukan ketinggian bola menggunakan metode fuzzy aturan Sugeno.
Untuk mendapatkan hasil keluaran dari sensor ultrasound yang berupa nilai untuk pengaturan kecepatan PWM ( Pulse Width Modulation), proses yang terjadi adalah fuzzifikasi, penentuan rule set, dan defuzzifikasi. Diagram alir dari proses fuzzifikasi adalah sebagai berikut : Mulai
Baca sensor
METODE Fuzzy Logic Kontroller logika fuzzy dikategorikan dalam kontrol cerdas (intelligent control). Unit logika fuzzy memiliki kemampuan menyelesaikan masalah perilaku sistem yang komplek, yang tidak dimiliki oleh kontroller konvensional. Berbeda dengan sistem kontrol bisaa, dimana harga yang dihasilkan diolah dan didefinisikan secara pasti, atau dengan istilah lain hanya mengenal logika 0 dan 1 atau bekerja pada daerah ON dan OFF, sehingga didapatkan perubahan yang kasar. Pada sistem logika fuzzy, nilai yang berada antara 0 dan 1 dapat didefinisikan, sehingga kontroller dapat bekerja seperti sistem syaraf manusia yang bisa merasakan lingkungan eksternalnya , kemudahan-kemudahan yang tidak dimiliki oleh sistem kontrol konvensional. Fuzzy
Input Set Point
Error >= -20
ya
Negative Big Error
Δ Error >= -20
tidak
Error >=-10 && Error < = 0
tidak
Error = 0
ya
Negative Small Error
Δ Error >=-10 && Δ Error < = 0
ya
Normal
Δ Error = 0
ya
Negative Small Δ Error
ya
Normal
ya
Positive Small Δ Error
ya
Positive Big Δ Error
tidak
ya
Positive Small Error
Δ Error > 0 && Δ Error <= 10
tidak
Error >= 20
Negative Big Δ Error
tidak
tidak
Error > 0 && Error <= 10
ya
tidak
tidak
terbagi menjadi lima aturan tetap yaitu Mamdani, Sugeno, Sukamoto, Larsen dan metode Simplified Fuzzy Reasoning Logika Fuzzy yang kami gunakan yaitu : Metode Sugeno Penalaran dengan metode SUGENO hampir sama dengan penalaran MAMDANI, hanya saja output (konsekuen) sistem tidak berupa himpunan fuzzy, melainkan berupa konstanta atau persamaan linear. Metode ini diperkenalkan oleh Takagi-Sugeno Kang pada tahun 1985. Model Fuzzy Sugeno Orde-Nol Secara umum bentuk model fuzzy SUGENO Orde-Nol adalah: IF (x1 is A1) • (x2 is A2) • (x3 is A3) • ...... • (xN is AN) THEN z=k dengan Ai adalah himpunan fuzzy ke-i
Δ Error = Error Baru – Error Lama
Error = Set Point – Present Value
tidak
ya
Positive Big Error
Δ Error >= 20
Sedangkan pemetaan dari masukan dan keluarannya adalah sebagai berikut : 1
NBE
NE
ZE
PE
PBE
-20
-10
0
10
20
0 -30
30
Error
Gambar 1. Grafik pemetaan error 2
NB
1
N
Z
P
PB
0 -30
-20
-10
0
10
20
30
delta Error
Gambar 2. Grafik pemetaan delta error LS
1
L
N
C
CS
0 550
650
750
850
950
1020
1050
PWM
Gambar 3. Fungsi keluaran keanggotaan himpunan fuzzy pada sensor ultrasound Rule set / Evaluasi aturan adalah proses mengevaluasi derajat keanggotaan tiap-tiap fungsi keanggotaan himpunan fuzzy masukan ke dalam basis aturan yang telah ditetapkan. Tujuan dari evaluasi aturan ini adalah menentukan derajat keanggotaan dari keluaran fuzzy. Basis aturan merupakan keseluruhan aturan dari kombinasi dua masukan yang mungkin. Secara lengkap, jumlah kombinasi yang mungkin dari dua himpunan fuzzy masukan dengan masing-masing lima fungsi keanggotaan sehingga jumlah aturannya adalah dua puluh lima aturan. Basis aturan yang dibuat berdasarkan error dan delta error dengan rumusan : Error = Set Point – Present Value Δ Error = Error Baru – Error Lama Pada bentuk yang lebih sederhana, dua puluh lima aturan kendali fuzzy dapat dilihat pada tabel MacVicarWhelan berikut :
Error
Delta Error NB N Z P PB
NB N Z CS C C C C S LS L S L L S LS L S Tabel 1. Rule Set
P L L C C C
PB LS LS CS C CS
Keterangan : NB : Negative Big N : Negative Z : Zero P : Positive PB : Positive Big CS : Cepat Sekali C : Cepat S : Sedang L : Lambat LS : Lambat Sekali
Proses terakhir adalah proses defuzzifikasi di mana hasil keluaran (crisp_out) akan menentukan kecepatan gerak motor DC 24V. Untuk mendapatkan nilai tegas (crisp) pada model fuzzy sugeno dimasukkan nilai-nilai hasil evaluasi aturan kedalam rumus : Crisp _ out =
∑ FuzzyOutput × (PosisiSingletonΧaxis ) ∑ FuzzyOutput i
i
i
i
i
Perancangan Arsitektur Sistem Secara garis besar dari keseluruhan sistem pada alat ini sesuai dengan blok diagram pada Gambar 4.
KOMPUTER
ATMEGA 8
DRIVER RELAY
SENSOR JARAK
MOTOR DC24V
Gambar 4. Blok diagram sistem keseluruhan
Dalam sistem di atas mikrokontroler sebagai pemroses akan mendapatkan data input dari satu modul ultrasound. Modul ultrasound akan memberikan data akurat tentang ketinggian bola didepan modul ultrasound kemudian data tersebut diolah, dalam hal ini proses fuzzifikasi, penentuan rule set, dan defuzzifikasi sedang berlangsung. Hasil dari proses tersebut adalah untuk 3
mengatur pergerakan bola yang sedang diterbangkan oleh motor DC 24V . Perancangan Perangkat Keras Microcontroller ATMega8 Pada perancangan ini, mikrokontroler berfungsi sebagai pusat pengendali dari sistem secara keseluruhan. Mikrokontroler mempunyai tugas menerima inputan dari sensor ultrasound dan memberikan output ke motor DC 24V, dan menampilkan data di PC. Adapun minimum system dari ATMega8 dapat dilihat pada Gambar 5 berikut:
sementara mikropon ultrasonik berfungsi untuk mendeteksi pantulan suaranya. Pada modul PING))) ™ terdapat 3 pin yang digunakan untuk jalur power supply (+5V), ground dan signal. Pin signal dapat langsung dihubungkan dengan mikrokontroler tanpa tambahan komponen apapun. PING)))™ mendeteksi objek dengan cara mengirimkan suara ultrasonik dan kemudian “mendengarkan” pantulan suara tersebut. PING)))™ hanya akan mengirimkan suara ultrasonik ketika ada pulsa trigger dari mikrokontroler (Pulsa high selama 5µS). Suara ultrasonik dengan frekuensi sebesar 40KHz akan dipancarkan selama 200µS. Suara ini akan merambat di udara dengan kecepatan 344.424m/detik (atau 1cm setiap 29.034µS), mengenai objek untuk kemudian terpantul kembali ke PING)))™. Selama menunggu pantulan, PING)))™ akan menghasilkan sebuah pulsa. Pulsa ini akan berhenti (low) ketika suara pantulan terdeteksi oleh PING)))™. Oleh karena itulah lebar pulsa tersebut dapat merepresentasikan jarak antara PING)))™ dengan objek. Selanjutnya mikrokontroler cukup mengukur lebar pulsa tersebut dan mengkonversinya dalam bentuk jarak.
Gambar 5. Minimum System ATMega8. Berdasarkan gambar 5, pin Vcc diberi tegangan operasi yang besarnya maksimal 24 volt. Port B, digunakan sebagai port yang terhubung pada motor DC 24V. Port C digunakan sebagai inputan dari sensor ultrasound. Port D digunakan sebagai tempat berlangsungnya komunikasi serial. Dalam gambar 5 di atas, pin XTAL1 dan XTAL2 dihubungkan dengan komponen XTAL sebesar 12.000000 MHz. Pemilihan frekuensi osilasi dari XTAL tersebut berdasarkan penggunaan microcontroller agar setiap clock microcontroller berlangsung setiap 1 μs. Berikut adalah perhitungan besar clock cycle yang dipakai : T(s) = 1 / F
Sensor Ultrasound PING)))™
Gambar 6. PING)))™ Satu hal yang perlu diperhatikan adalah bahwa PING)))™ tidak dapat mengukur objek yang permukaannya dapat menyerap suara, seperti busa atau sound damper lainnya. Pengukuran jarak juga akan kacau jika permukaan objek bergerigi dengan sudut tajam (meruncing). Penempatan sensor ultrasound dapat dilihat pada gambar 7.
Paralax Inc (2005) menjelaskan bahwa PING))) ™ dapat mengukur jarak dari 3 cm sampai 300 cm. Pada dasanya, PING))) ™ terdiri dari sebuah chip pembangkit sinyal 40KHz, sebuah speaker ultrasonik dan sebuah mikropon ultrasonik. Speaker ultrasonik mengubah sinyal 40 KHz menjadi suara
4
Gambar 7. Penempatan sensor ultrasound Motor DC 24V Motor DC memiliki dua kabel terhubung, kabel pertama untuk ground, kabel kedua untuk power supply dengan besar tegangan sampai 24 volt. Kecepatan putar motor dapat dikendalikan dengan mengatur besar – kecilnya tegangan yang di masukkan, atau dapat juga dengan menggunakan teknik PWM (Pulse Width Modulation). Dengan menggunakan PWM kita dapat mengatur kecepatan yang diinginkan dengan mudah. Teknik PWM untuk pengaturan kecepatan motor adalah dengan cara merubahrubah besarnya duty cycle pulsa. Pulsa yang yang berubah ubah duty cycle-nya inilah yang menentukan kecepatan motor. Penulis menggunakan mode fast PWM. Dalam mode fast PWM sifat cacahan register pencacah TCNT1 mencacah dari bottom (0x0000) terus mencacah naik (counting-up) hingga mencapai top (nilai maksimal yang ditentukan sesuai resolusi, misal resolusinya 10 bit maka nilai top = 0x01ff), kemudian mulai dari bottom lagi dan begitu seterusnya atau yang dinamakan single slope (satu arah cacahan) (Ardi Winoto, 2008). Berikut adalah gambar untuk pulsa dengan duty cycle 50% :
Gambar 8 Pulsa dengan duty cycle 50%
maka semakin cepat pula kecepatan motor. Sebagai contoh bentuk pulsa yang dikirimkan adalah seperti pada gambar 8, pulsa kotak dengan duty cycle pulsa 50%. semakin besar duty cycle pulsa kotak, maka semakin lama pula posisi logika high. Jika motor diatur agar berjalan ketika diberi logika high, maka jika memberi pulsa seperti pada gambar 8, maka motor akan berada pada kondisi “nyala-matinyala-mati” sesuai dengan bentuk pulsa tersebut. Semakin lama motor berada pada kondisi “nyala” maka semakin cepat pula kecepatan motor tersebut. Motor akan berputar dengan kecepatan maksimum jika mendapat pulsa dengan duty cycle 100%. Microcontroller akan mengirimkan gelombang pulsa ke driver motor untuk mengatur kecepatan motor. Berikut adalah gambar rangkaian driver motor DC 24V.
Gambar 9 Rangkaian driver motor DC 24V L298N Perancangan Perangkat Lunak Perancangan perangkat lunak bertujuan untuk mengirimkan dan menerima data dari user ke minimum sistem melalui komunikasi serial. Minimum sistem memperoleh data dari komputer dan sensor ultrasound yang berupa data jarak halangan antar sensor dengan bola yang kemudian dikirim ke komputer, serta mengatur kecepatan putar kipas melalui PWM yang dikirimkan ke driver motor. Perancangan perangkat lunak terbagi dalam beberapa program antara lain : program motor DC, program membaca sensor, program penerimaan dan pengiriman data melalui serial dan algoritma fuzzy. Diagram alir perangkat lunak secara umum dapat dilihat pada Gambar 10.
Besarnya amplitudo dan frekuensi pulsa adalah tetap, sedangkan besarnya duty cycle berubah-ubah sesuai dengan kecepatan yang diinginkan, semakin besar duty cylce
5
Gambar 10 Diagram alir program secara umum pada microcontroller 3.3.1 Program Membaca Jarak Halangan dan Menampilkan Pada Komputer Diagram alir untuk mengetahui jarak halangan berdasarkan pembacaan sensor ultrasound dan ditampilkan ke komputer terdapat pada Gambar 11. Pada gambar 11, pembacaan jarak halangan dimulai dengan inisialisasi sensor ultrasound. Jika jarak halangan berhasil dideteksi oleh sensor ultrasound, maka data disimpan oleh mikrokontroler dan ditampilkan ke computer.
Gambar 11. Diagram alir pembacaan jarak halangan
PENGUJIAN SISTEM Hasil pengujian Pengujian keseluruhan sistem dilakukan dengan melakukan pengamatan terhadap waktu kestabilan, dan mengamati waktu tempuh terhadap set point. a. PC dapat menampilkan sensor, grafik kestabilan bola, serta nilai PWM. b. Motor DC 24V mampu bergerak dengan baik sesuai dengan nilai PWM dan program yang telah dibuat.
6
c. Sensor ultrasound berjalan dengan baik dalam mendeteksi bola. d. Metode fuzzy dapat memberikan nilai terhadap PWM melalui pengaruh dari error dan delta error Tabel 2. Set Point 50 Set Sensor PWM Waktu Error point (s) Sensor 50 0 875 140 50 50 100 821 120 50 50 20 912 99 30 50 85 812 130 35 50 46 875 130 4 50 0 875 140 50 % Error 67.60 %
Tabel 6. Set Point 150 Set Sensor point 150 145 150 150 150 149 150 153 150 151 Mean 149.6
PWM Waktu (s)
856 855 855 854 850 854
60 50 64 70 58 60.4
% Error
Error Sensor
4 2 6 3 8 3.4 2.27%
KESIMPULAN & SARAN
Kesimpulan Set point
75 75 75 75 75 Mean
Tabel 3. Set Point 75 Sensor PWM Waktu (s)
67 65 70 77 69 69.6
812 814 811 810 810 811.4
140 148 135 150 155 145.6
% Error
Error Sensor
8 10 5 2 6 6.2 8.27%
Tabel 4. Set Point 100 Set point 100 100 100 100 100 Mean
Sensor
PWM
104 98 106 97 108
824 823 822 823 819
Waktu (s) 150 160 155 162 143
102.6
822.2
154
% Error
Error Sensor
4 2 6 3 8 2.72 2.72%
Tabel 5 Set Point 125 Set point 125 125 125 125 125 Mean
Sensor
PWM
127 126 130 124 132
919 919 916 918 914
Waktu (s) 14 16 18 19 21
127.8
917.2
16.6
% Error
Error Sensor
2 1 5 2 7 2.4
Setelah melakukan penelitian ini, penulis mengambil kesimpulan sebagai berikut: 1. Bola dapat bergerak secara stabil sesuai hanya jika nilai set point lebih besar dari 75. 2. Program fuzzy yang dibuat mampu mengendalikan kestabilan bola di dalam pipa vertical. 3. Algoritma fuzzy yang dibuat mampu mengambil keputusan terhadap error dan delta error dengan baik. 4. Ketika diberi set point 50 prosentase error yang terjadi adalah 67.60%, ketika diberi set point 75 prosentase error yang terjadi adalah 8.27%, ketika diberi set point 100 prosentase error yang terjadi adalah 2.72%, ketika diberi set point 125 prosentase error yang terjadi adalah 1.92%, dan ketika diberi set point 150 prosentase error yang terjadi adalah 2.27%. 5. Pergerakan bola akan dikatakan baik jika bola menatap dinding pipa sekitar. 5.2. Saran Sebagai pengembangan dari penelitian yang telah dilakukan, penulis memberikan saran sebagai berikut: 1. Penggunaan sensor udara sehingga bola lebih bisa terkontrol.
1.92 %
7
2. Penambahan jumlah derajat keanggotaan fuzzy sehingga pergerakan dapat lebih stabil. 3. Memperlebar pipa tempat melayangnya bola, sehingga pergerakan bola lebih halus.
Winoto, Ardi, 2008. ” Mikrokontroler AVR ATMEGA8/16/32/8535 dan Pemprogramannya dengan Bahasa C pada WinAVR”. Informatika. Bandung.
DAFTAR PUSTAKA ATMEL Corporation. 2005, ATmega8535, (Online). (http://www.atmel.com , diakses 20 Juli 2011 ) Bies, Lammert. 2011. RS232 Serial Connector Pin Assignment. Diakses pada tanggal 14 Juni 2012.URL : (http://www.lammertbies.nl/comm/cable/RS232.html). INNOVATIVE ELECTRONICS. 2009. AVR USB ISP. Diakses pada tanggal 15 Juni 2012. (http://www.innovativeelectronics.com/innovati ve_electronics/download_files/manual/Manual %20DT-HiQ%20AVR%20USB%20ISP.pdf). Mengukur Jarak Dengan Sensor Ultrasound , diakses pada 10 April 2012 URL : ( http://blog.indorobotika.com/arduino/mengukur -jarak-dengan-sensor-ultrasonik-danarduino.html ) P ARALLAX INC. 2006, PING)))TM Ultrasonic Distance Sensor, diakses 17 Juni 2012 . URL : ( www.parallax.com,) Pardosi, Mico, 2005. Microsoft Visual Basic 6.0, edisi revisi. Pengaturan Kecepatan Motor Dc Dengan Mikrokontroler « fahmizal_note, diakses 10 Juli 2012 URL : (http://fahmizaleeits.wordpress.com/2010/07/27 /pengaturan-kecepatan-motor-dc-denganmikrokontroler.html) Sri Kusumadewi, Hari Purnomo, 2010. “Aplikasi Logika Fuzzy Untuk Pendukung Keputusan,edisi 2” .Yogyakarta, Graha Ilmu.
8