MATA KULIAH : KONTROL CERDAS KENDALI POSISI MENGGUNAKAN LOGIKA FUZZY BERBASIS PROGAMMABLE LOGIC CONTROLLER ( PLC ) DISUSUN OLEH : 1. ANDREANOS 2. KOMARUDIN 3. SANG PUTU 4. SOULTAN GANI TEKNIK ELEKTRONIKA INDUSTRI EC- 5B POLITEKNIK NEGERI JAKARTA
KENDALI POSISI MENGGUNAKAN LOGIKA FUZZY BERBASIS PROGRAMMABLE LOGIC CONTROLLER (PLC ) I. PENDAHULUAN Pengendalian posisi menjadi penting di saat dunia bergerak ke arah otomatisasi. Penggerak yang selama ini dipergunakan dalam industri adalah motor, sistem hidrolik dan sistem pneumatik. Algoritma pengendalian juga bervariasi, misalnya PID, fuzzy, sliding mode control, learning feed forward control, dll. Sistem kendali posisi ini dengan logika fuzzy ini menggunakan PLC OMRON C-200HG, yang dilengkapi dengan FZ001 (fuzzy unit), analog output unit dan high speed counter unit. Semua prosesnya akan dilakukan oleh fuzzy unit sehingga program utama hanya tinggal mengambil nilai dari fuzzy unit.
KENDALI POSISI MENGGUNAKAN LOGIKA FUZZY BERBASIS PROGRAMMABLE LOGIC CONTROLLER (PLC ) Sebagai pendukung sistem, dipergunakan LM3524 PWM generator dan rangkaian H-Bridge untuk menggerakkan motor searah dan berlawanan arah jarum jam. PLC menerima input posisi dari shaft motor dari rotary encoder yang terhubung ke high speed counter unit, membandingkannya dengan setting point yang dimasukkan dan melakukan perhitungan. Hasilnya diberikan kepada analog output unit untuk selanjutnya dapat menggerakkan motor.
KENDALI POSISI MENGGUNAKAN LOGIKA FUZZY BERBASIS PROGRAMMABLE LOGIC CONTROLLER (PLC ) II. PERANCANGAN SISTEM Sistem ini dibuat dengan menggunakan motor DC yang terhubung dengan sebuah penggerak dan rotary encoder sebagai sensor posisi. Sebagai pengendali utama dipilih PLC OMRON C200HX karena pengendali ini merupakan pengendali umum yang digunakan di industri. Rotary encoder yang dipergunakan memiliki resolusi 500 ppr yang berarti dalam satu putaran akan dihasilkan 500 pulsa. Rotary encoder memiliki konfigurasi keluaran berupa open collector, sehingga perlu diberi sebuah tahanan pull-up. Sebagai penggerak motor dipergunakan H-Bridge. Penggerak jenis ini dipilih karena dapat meng-
KENDALI POSISI MENGGUNAKAN LOGIKA FUZZY BERBASIS PROGRAMMABLE LOGIC CONTROLLER (PLC ) gerakkan motor berputar searah (CW-Clock Wise) atau berlawanan arah jarum jam (Counter Clock Wise). Rangkaian penggerak ini dibuat dari dua pasang transistor yang komplemen yaitu TIP41C dan TIP 42C yang dipasang pada konfigurasi tertentu. Sistem juga dilengkapi dengan PWM (Pulse Width Modulation). Oleh karena PWM unit untuk PLC OMRON tidak dimiliki, maka dibuatlah rangkaian eksternal dari IC LM3524. Dengan menggunakan IC ini, maka PLC hanya cukup memberikan tegangan yang berbanding lurus dengan duty cycle yang diinginkan. Berikut ini adalah blok diagram dari sistem kendali posisi ini :
Gambar 1. Diagram Blok Sistem Gambar 2. Detail Diagram Blok Sistem KENDALI POSISI MENGGUNAKAN LOGIKA FUZZY BERBASIS PROGRAMMABLE LOGIC CONTROLLER (PLC ) Gambar 1. Diagram Blok Sistem Gambar 2. Detail Diagram Blok Sistem
Gambar 3. Membership function Gambar 4. Membership function KENDALI POSISI MENGGUNAKAN LOGIKA FUZZY BERBASIS PROGRAMMABLE LOGIC CONTROLLER (PLC ) Gambar 3. Membership function input error Gambar 4. Membership function input derror Perancangan sistem Fuzzy menggunakan 2 input dan 2 output. Sebagai input ada error dan delta error (derror). Sedangkan outputnya adalah duty cycle dan arah putar. Sistem fuzzy dirancang dengan bantuan Fuzzy Support System (FSS).
KENDALI POSISI MENGGUNAKAN LOGIKA FUZZY BERBASIS PROGRAMMABLE LOGIC CONTROLLER (PLC ) Oleh karena FZ001 tidak mengenal nilai negatif, maka semua nilai dibuat positif dengan menembahkan semacam offset. Dengan demikian, nilai terendah setiap membership function adalah nol.
KENDALI POSISI MENGGUNAKAN LOGIKA FUZZY BERBASIS PROGRAMMABLE LOGIC CONTROLLER (PLC ) Gambar 5. Membership function duty cycle Gambar 6. Membership function output arah
Gambar 7. Aturan pada pengendali Fuzzy KENDALI POSISI MENGGUNAKAN LOGIKA FUZZY BERBASIS PROGRAMMABLE LOGIC CONTROLLER (PLC ) Gambar 7. Aturan pada pengendali Fuzzy
III. HASIL DAN PEMBAHASAN KENDALI POSISI MENGGUNAKAN LOGIKA FUZZY BERBASIS PROGRAMMABLE LOGIC CONTROLLER (PLC ) III. HASIL DAN PEMBAHASAN Pada percobaan awal menunjukkan bahwa nilai awal DAC untuk menggerakkan motor adalah 460 dan bukan nol. DEengan demikian batas bawah membership function output duty cycle diubah menjadi 490 sedangkan batas atasnya tetap. Pengetesan sistem dilakukan untuk beberapa setting point untuk dua arah. Berikut ini adalah respon sistem untuk berbagai setting point yang diberikan :
KENDALI POSISI MENGGUNAKAN LOGIKA FUZZY BERBASIS PROGRAMMABLE LOGIC CONTROLLER (PLC ) Gambar 8. Titik awal 0°, setting point 90° Gambar 9. Titik awal 90°, setting point 0°
KENDALI POSISI MENGGUNAKAN LOGIKA FUZZY BERBASIS PROGRAMMABLE LOGIC CONTROLLER (PLC ) Gambar 8 dan 9 menunjukkan bahwa pada saat gerakan dari 0° ke 90°, sistem tidak bisa mencapai setting point yang ditentukan, demikian pula dengan kondisi sebaliknya. Kondisi akhir yang dicapai adalah 83° dan 0,69°. Hal ini dikarenakan terdapat backlash pada sistem transmisi motor dan encoder. Percobaan awal yang dilakukan juga telah menunjukkan bahwa backlash yang terdapat pada sistem telah membuat hasil pengukuran posisi sudut tidak sesuai dengan yang diharapkan. Kedua percobaan memberikan rise time yang sama, yaitu 2ms. Settling time pada gambar 8 dan 9 masing-masing 7ms dan 12ms.
KENDALI POSISI MENGGUNAKAN LOGIKA FUZZY BERBASIS PROGRAMMABLE LOGIC CONTROLLER (PLC ) Gambar 10. Titik awal 0°, setting point 180° Gambar 11. Titik awal 180°, setting point 0°
KENDALI POSISI MENGGUNAKAN LOGIKA FUZZY BERBASIS PROGRAMMABLE LOGIC CONTROLLER (PLC ) Untuk gambar 10 dan 11, setting point yang diinginkan tercapai, tetapi untuk kondisi sebaliknya tidak tercapai, terjadi error kecil. Pada percobaan ini didapat rise time dan settling point yang sama untuk dua kondisi, yaitu 3ms dan 7ms.
KENDALI POSISI MENGGUNAKAN LOGIKA FUZZY BERBASIS PROGRAMMABLE LOGIC CONTROLLER (PLC ) Gambar 12. Titik awal 0°, setting point 270° Gambar 13. Titik awal 270°, setting point 0°
KENDALI POSISI MENGGUNAKAN LOGIKA FUZZY BERBASIS PROGRAMMABLE LOGIC CONTROLLER (PLC ) Gambar 12 dan 13 menunjukkan bahwa rise time dan settling time kedua kondisi sama, yaitu 3ms dan 8ms. Secara umum hal ini terkesan tidak masuk akal, tetapi apabila dilihat dari keluaran duty cycle, hal ini menjadi masuk akal.
KENDALI POSISI MENGGUNAKAN LOGIKA FUZZY BERBASIS PROGRAMMABLE LOGIC CONTROLLER (PLC ) Gambar 14. Titik awal 0°, setting point 360° Gambar 15. Titik awal 360°, setting point 0°
KENDALI POSISI MENGGUNAKAN LOGIKA FUZZY BERBASIS PROGRAMMABLE LOGIC CONTROLLER (PLC ) Gambar 14 dan 15 memberikan hasil yang agak berbeda. Rise time dan settling time untuk gambar 14 adalah 3ms dan 6ms. Sedangkan untuk gambar 15, nilai rise time dan settling time masing-masing adalah 5ms dan 8ms. Keluaran duty cycle gambar 16 – 23 menunjukkan bahwa semakin settling point dari titik awalnya maka nilai duty cycle yang dihasilkan oleh Fuzzy juga semakin besar.
KENDALI POSISI MENGGUNAKAN LOGIKA FUZZY BERBASIS PROGRAMMABLE LOGIC CONTROLLER (PLC ) Gambar 16. Perubahan out ADC untuk respon gambar 8 Gambar 17. Perubahan out DAC untuk gambar 9
KENDALI POSISI MENGGUNAKAN LOGIKA FUZZY BERBASIS PROGRAMMABLE LOGIC CONTROLLER (PLC ) Gambar 18. Perubahan out ADC untuk respon gambar 10 Gambar 19. Perubahan out DAC untuk gambar 11
KENDALI POSISI MENGGUNAKAN LOGIKA FUZZY BERBASIS PROGRAMMABLE LOGIC CONTROLLER (PLC ) Gambar 20. Perubahan out ADC untuk respon gambar 12 Gambar 21. Perubahan out DAC untuk gambar 13
KENDALI POSISI MENGGUNAKAN LOGIKA FUZZY BERBASIS PROGRAMMABLE LOGIC CONTROLLER (PLC ) Gambar 22. Perubahan out ADC untuk respon gambar 12 Gambar 23. Perubahan out DAC untuk gambar 13
KENDALI POSISI MENGGUNAKAN LOGIKA FUZZY BERBASIS PROGRAMMABLE LOGIC CONTROLLER (PLC ) Nilai duty cycle dihitung dengan membagi nilai yang tercantum pada gambar 16 sampai gambar 23dengan 4905 (nilai maksimum keluaran DAC) dan dikalikan dengan 100%.
KENDALI POSISI MENGGUNAKAN LOGIKA FUZZY BERBASIS PROGRAMMABLE LOGIC CONTROLLER (PLC ) IV. KESIMPULAN Dalam PLC, sistem fuzzy tidak mengenal angka negatif, sehingga harus ditambahkan semacam offset untuk membuat batas terendah menjadi nol. Dengan demikian, semua nilai masukan harus disesuaikan terlebih dahulu. Sistem menghasilkan duty cycle yang sebanding dengan kebutuhan, artinya jika error awal besar semakin besar maka duty cycle awal yang dihasilkan oleh pengendali fuzzy juga besar. Hal ini dikarenakan sistem berusaha untuk mencapai setting point secepat mungkin. Duty cycle yang dihasilkan tidak tetap sepanjang percobaan, tetapi berubah perlahan sampai akhirnya mencapai nilai yang membuat motor tidak bergerak lagi. Sistem ini dapat dikembangkan lebih jauh untuk menggerakkan motor induksi dengan bantuan inverter. Hal ini lebih mendekati kondisi nyata di industri.