people

Bahasa pemprograman pada PLC


1.      Pengertian PLC
Programmable Logic Controllers (PLC) adalah computer elektronik yang mudah digunakan (user friendly) yang memiliki fungsi kendali untuk berbagai tipe dan tingkat kesulitan yang beraneka ragam
Definisi Programmable Logic Controller menurut Capiel (1982) adalah : system elektronik yang beroperasi secara digital dan di desainuntuk pemakaian di lingkungan industri, dimana system ini menggunakan memori yang dapat deprogram untuk penyimpanan secara internal instruksi-instruksi yang mengimplemen tasikan fungsi-fungsi spesifik seperti logika, urutan, perwaktuan, pencacahan dan operasi aritmatika untuk mengontrol mesin atau proses melalui modul-modul I/O digital maupun analog.
Berdasarkan namanya konsep PLC adalah sebagai berikut :
1. Programmable, menunjukkan kemampuan dalam hal memori untuk menyimpan program yang telah dibuat yang dengan mudah diubah-ubah fungsi atau kegunaannya.
2. Logic, menunjukkan kemampuan dalam memproses input secara aritmatik dan logic (ALU), yakni melakukan operasi membandingkan, menjumlahkan, mengalikan, membagi, mengurangi, negasi, AND, OR, dan lain sebagainya.
3. Controller, menunjukkan kemampuan dalam mengontrol dan mengatur proses sehingga menghasilkan output yang diinginkan.
PLC ini dirancang untuk menggantikan suatu rangkaian relay sequensial dalam suatu system kontrol. Selain dapat diprogram, alat ini juga dapat dikendalikan, dan dioperasikan oleh orang yang tidak memiliki pengetahuan di bidang pengoperasian computer secara khusus.PLC ini memiliki bahasa pemrograman yang mudah dipahami dan dapat dioperasikan bila program yang telah dibuat dengan menggunakan software yang sesuai dengan jenis PLC yang digunakan sudah dimasukkan.
Prinsip Kerja PLC
Prinsip kerja PLC secara singkat dapat ditunjukkan seperti pada gambar berikut :
Gambar1.1Diagram Blok Prinsip Kerja PLC
PLC dapat menerima data berupa sinyal analog dan digital dari komponen input device. Sinyal dari sinyal input device dapat berupa saklar-saklar, tombol-tombol tekan, peralatan pengindera dan peralatan sejenisnya. PLC juga dapat menerima sinyal analog dari input device yang berupa potensiometer, putaran motor dan peralatan sejenisnya. Sinyal analog ini oleh modul masukan dirubah menjadi sinyal digital.
Central Processing Unit (CPU) mengolah sinyal digital yang masuk sesuai dengan program yang telah dimasukkan.Selanjutnya CPU mengambil keputusan – keputusan yang berupa sinyal dengan logika High (1) dan Low (0). Sinyal keluaran ini dapat langsung dihubungkan ke peralatan yang akan dikontrol atau dengan bantuan kontaktor untuk mengaktifkan peralatan yang akan dikontrol. Bagian PLC pada prinsipnya terdiri dari CPU (Central Processing Unit), PM (Programming Memory), PD (Programming Device), modul masukan keluaran dan unit catu daya.
Struktur PLC
o   CENTRAL PROCESSING UNIT (CPU)
CPU berfungsi untuk mengambil instruksi dari memory, mendekodekannya dan kemudian mengeksekusi instruksi tersebut. Selama proses tersebut CPU akan menghasilkan sinyal kendali, mengalihkan data kebagian masukan atau keluaran dan sebaliknya, melakukan fungsi aritmatika dan logika juga mendeteksi sinyal luar CPU.
o   PROGRAMMING MEMORY (PM)
PM adalah bagian yang berfungsi untuk menyimpan instruksi, program dan data. Program pada PLC ini dapat dilakukan dengan cara mengetik pada papan ketik (Keyboard) yang sesuai dengan masing-masing PLC. Papan ketik ini sering juga disebut dengan Programming Device.

o   PROGRAMMING DEVICE (PD)
PD disebut juga Programming Device Terminal (PDT), adalah suatu perangkat yang digunakan untuk mengedit, masukkan, memodifikasi dan memantau program yang ada didalam memori PLC. Bagian – bagian dari PDT adalah monitor dan papan ketik (keyboard).
Dalam PLC ada tiga (3) jenis Programming Device yaitu :
1.      Special Purpose adalah perangkat Programming Device sejenis komputer yang khusus digunakan untuk pemrograman PLC.
2.      Keypad adalah peralatan sejenis dengan kalkulator yang khusus digunakan untuk pemrograman PLC.
3.      Personal Computer (PC) adalah perangkat Progamming Device yang digunakan dalam pemrograman PLC dengan menggunakan komputer pribadi.
o   MODUL INPUT / OUTPUT
Modul masukan atau keluaran adalah suatu peralatan atau perangkat elektronika yang berfungsi sebagai perantara atau penghubung (Interface) antara CPU dengan peralatan masukan / keluaran luar.Modul ini terpasang secara tidak permanen atau mudah untuk dilepas dan dipasang kembali ke dalam raknya.
Metode-metode pemograman pada PLC
Metode yang umum diberikan sebagai pilihan antara lain berupa metode pemrograman dengan diagram logika tangga (ladder logic diagram), mneumonic (statement list), dan atau diagram fungsi blok (function block diagram).  Adanya pilihan metode tersebut dimaksudkan agar pengguna dapat dengan mudah membuat program sesuai dengan keahlian maupun metode pemrograman yang disukai. Dan Berdasarkan Standart Internasional IEC-61131-3, bahasa pemrograman PLC ada 5 macam.

1.      Ladder Diagram
Salah satu metode pemrograman PLC yang sangat umum dipergunakan yaitu pemrograman menggunakan ladder diagram (diagram tangga).  Metode yang praktis dan cukup mudah dimengerti. Diagram ini sendiri terdiri dari dua buah garis vertikal yang melambangkan daya.Komponen-komponen rangkaian disambungkan sebagai garis-garis horisontal yang merupakan anak tangga.Komponen-komponen yang dimaksud ditempatkan di antara kedua buah garis vertical ada pun instruksi instruksi dasar dalam ladder diagram :
1.      LOAD (LD) dan LOAD NOT (LD NOT)
LOAD adalah sambungan langsung dari line dengan logika pensakelarannya seperti sakelar NO, sedangkan LOAD NOT logika pensakelarannya seperti sakelar NC.Instruksi ini dibutuhkan jika urutan kerja pada sistem kendali hanya membutuhkan satu kondisi logic saja untuk satu output. Simbol ladder diagram dari LD dan LD NOT .    
2.      AND dan AND NOT
Jika memasukkan logika AND maka harus ada rangkaian yang berada di depannya, karena penyambungannya seri. Logika pensaklaran AND seperti sakelar NO dan AND NOT seperti saklar NC. Instruksi tersebut dibutuhkan jika urutan kerja sistem kendali lebih dari satu kondisi logic yang terpenuhi semuanya untuk memperoleh satu output. Simbol ladder diagram dari AND dan AND NOT.

3.      OR dan OR  NOT
OR dan OR NOT dimasukkan seperti saklar posisinya paralel dengan rangkaian sebelumnya.instruksi tersebut dibutuhkan jika urutan kerja sistem kendali membutuhkan salah satu saja dari beberapa kondisi logic terpasang paralel untuk mengeluarkan satu output. Logika  pensaklaran OR seperti saklar NO dan logika pensaklaran NOT OR seperti saklar NC. Simbol ladder diagram dari OR dan OR NOT .
4.      Out Dan Out Not
Digunakan untuk mengeluarkan Output jika semua kondisi logika ladder diagram sudah terpenuhi. . Logika  pensaklaran OUT seperti sakelar NO dan logika pensaklaran OUT NOT seperti sakelar NC. Simbol ladder diagram dari OUT dan OUT NOT 
5.      Timer (TIM) Dan Counter (CNT)
Ø  Timer
Timer berfungsi untuk mengaktifkan suatu keluaran dengan interval waktu yang dapat diatur. Pengaturan waktu dilakukan melalui nilai setting (preset value).  Timer tersebut akan bekerja bila diberi input dan mendapat pulsa clock. Untuk pulsa clock sudah disediakan oleh pembuat PLC.Besarnya nilai pulsa clock pada setiap timer tergantung pada nomor timer yang digunakan.  Saat input timer ON maka timer mulai mencacah pulsa dari 0 sampai preset value. Bila sudah mencapai preset value maka akan mengaktifkan Outputyang telah ditentukan.

Ø  Counter
Fungsi counter adalah mencacah pulsa yang masuk. Sepintas cara kerja counter dan timer mirip. Perbedaannya adalah timer mencacah pulsa internal sedangkan counter mencacah pulsa dari luar.
1.      Jumlahnya bergantung dari masing-masing tipe PLC. Jika suatu nomor sudah dipergunakan sebagai TIMER/COUNTER, maka  nomor tersebut tidak boleh lagi dipakai lagi sebagai TIMER/COUNTER yang lain.
2.      Nilai TIMER/COUNTER bersifat menghitung mundur dari nilai awal yang ditetapkan oleh program. Setelah hitungan tersebut mencapai angka nol, maka kontak NO TIMER/COUNTER akan bekerja.
3.      TIMER mempunyai batas hitungan antara 0000 sampai 9999 dalam bentuk BCD (binary Code Decimal) dan dalam orde sampai 100 ms. Sedangkan COUNTER mempunyai orde angka BCD dan mempunyai batas antara 0000 sampai dengan 9999.

TIMER                                                      COUNTER
Keterangan :                                              Keterangan :
N   : Nomor T/C                                        CP :  Pulsa
SV : Set Value                                           R   :  Reset
2.      Function Block Diagram / Function Plan
         Function Block Diagram , bahasa pemrograman ini menitikberatkan pada hubungan antara variabel input dan output berupa gambar blok - blok diagram. Dimana dalam blok - blok tersebut terdapat fungsi - fungsi tertentu.
3.      Structure Text
         Structure Text (ST), termasuk high level language umumnya digunakan untuk beberapa prosedur yang kompleks  menggunakan bahasa yang baku untuk menyatakan  kondisi step yang berbeda. Bahasa yang digunakan mirip dengan bahasa pemrograman pada Pascal.
4.      Mnemonic / statement list
Instruction List (IL), low level language yaitu pemograman yang menggunakan statement variabel (huruf) sebagai inputnyadan  sangat efektif untuk aplikasi - aplikasi yang kecil dimana terdapat perintah - perintah yang sudah baku. Bisa menyajikan banyak input dan output
5.      Sequential Function Chart
Sequential Function Chart, bahasa pemrograman ini dibuat dengan sistem chart yang mempresentasikan tiap step ke dalam hubungan - hubungan transisi. Di dalam chart terdapat urutan langkah - langkah, transisi, dan percabangan.

Dari beberapa bahasa pemrograman PLC di atas, yang sering saya gunakan adalah Ladder Diagram. Selain mudah dipahami penggunaan Ladder Diagram juga mudah dipelajari. Penggunaannya dengan simbol - simbol menyerupai anak tangga mempermudah user dalam menyusun program dan Tidak semua PLC support kelima bahasa pemrograman diatas. Ada yang hanya support LD saja, ada juga yang support LD, FBD,SFC,ST tergantung dari PLC yang kita pakai.
Berikut bahasa pemrograman yang digunakan oleh beberapa merek PLC :
§  Allen bradley PLC-5 & SLC-500  : Ladder Diagram (LD)
§  Allen bradley Logix 5000 family  : Ladder Diagram (LD), Function Block Diagram (FBD), Sequential Function Chart (SFC), Structure Text (ST)
§  Omron CX-Programmer V8.1 : Ladder Diagram (LD), Function Block Diagram (FBD), Sequential Function Chart (SFC)
§  Schneider : Ladder Diagram (LD), Function Block Diagram (FBD), Sequential Function Chart (SFC)
§  Siemens :  Ladder Diagram (LD), Function Block Diagram (FBD), Sequential Function Chart (SFC), Instruction List (IL)