Dalam pemrograman dengan menggunakan PLC, dikenal istilah controller cycle. Controller cycle adalah rangkaian proses yang dilakukan CPU PLC secara terus-menerus dan berulang-ulang. Controller cycle ini terdiri dari 3 fase:
- fase pertama : mengambil ‘image’ dari status inputs
- fase kedua : eksekusi program
- fase ketiga : mengaktifkan atau menon-aktifkan output yang ada.
Setelah fase ketiga selesai, maka kontroller akan kembali ke fase pertama, dan seterusnya. Dalam melakukan pemrograman PLC, harus dilakukan sesuai dengan standard IEC (International Electrotechnical Commission). Yaitu merupakan Badan standardisasi dunia dalam bidang teknik elektro. Bagian khusus yang berisi tentang standard (keseragaman) untuk memprogram berbagai macam merk PLC adalah pada IEC 61131-3.
Pemrograman PLC berdasarkan IEC 61131-3 terdiri atas :
Pemrograman PLC berdasarkan IEC 61131-3 terdiri atas :
1) Ladder Diagram (Diagram Tangga)
Diagram ladder berbentuk jaringan sakelar yang dihubungkan secara seri dan paralel dan hasilnya disimpan di dalam memori tertentu. Keberhasilan dari jaringan ladder membawa data logika dari input ke output tergantung dari program yang dibuat. Diagram ladder bentuknya seperti tangga dibatasi oleh dua garis vertikal. Sisi kiri untuk aliran daya masukan positif, sisi kanan untuk keluaran. Sistem penulisan dengan cara ladder diagram ini populer digunakan orang karena sudah banyak digunakan dalam penggambaran rangkaian kontrol dengan menggunakan relay dan kontaktor. Ladder diagram akan menyederhanakan pergantian sistem kontrol berbasis relay oleh PLC serta memudahkan pemrograman oleh control engineer yang sudah familiar dengan disain sistem kontrol berbasis relay. Sedangkan telah kita ketahui bahwa PLC merupakan pengembangan dari kontrol relay. Pada penulisan ladder diagram, terdapat tampilan urutan kerja sinyal listrik sesuai dengan aksi yang diberikan. Logika pemikirannya sama seperti gambar pada diagram relay, yang berbeda adalah simbolnya saja. Simbol pada PLC :
Logika untuk input
Normally Open (NO), Logika akan benar apabila nilai boolean = 1, atau input energized . Jika input diberi energi, sakelar mengalirkan arus.
Normally closed (NC), Logika akan benar apabila nilai boolean = 0, atau input de-energized. Jadi apabila input tidak diberi energi sakelar ini mengalirkan arus.
Logika untuk output
Hasil operasi logika ditransfer ke bagian output. Jika hasil operasi logika adalah 1, maka output memberikan energi.
Hasil operasi logika diinverskan dan ditransfer ke bagian output. Jika hasil operasi adalah 1, maka output tidak akan memberikan energi.
Fungsi-fungsi blokProgram pada PLC mempunyai fasilitas selain gerbang logika. Fasilitas tersebut antara lain:
- Counter (increment dan decrement)
- Timer
- Pemanfaatan register
- Operasi aritmatik sehingga memungkinkan dilakukannya perhitungan numerik seperti halnya pada komputer.
- Operasi biner dan bit (bit-wise operation).
- Looping dan jumping operation dll.
2) Function Block Diagram (FB/FBD)Function block diagram adalah suatu fungsi-fungsi logika yang disederhanakan dalam gambar blok dan dapat dihubungkan dalam suatu fungsi atau digabungkan dengan fungsi blok lain.
Bahasa Pemrograman Function Block Diagram |
4) Structured Text (ST) atau Structure Language (SCL) Teks terstruktur merupakan bahasa tingkat tinggi yang dapat memproses system logika ataupun alogaritma dan memungkinkan pemrosesan system lain. Perintah umumnya menggunakan IF…THEN…ELSE, WHILE…DO, REPEAT…UNTIL dll. Contoh Text testruktur (ST).
Bahasa Pemrograman Structure Text |
5) Sequential Function Chart (SFC) Bahasa Program yang dibuat dan disimpan dalam chart. Bagian-bagian chart memiliki fungsi urutan langkah , transisi dan percabangan. Tiap step memiliki status proses dan bisa terdiri dari struktur yang berurutan.
Bahasa Pemrograman SFC |