a. Instruksi Dasar PLC
Instruksi atau perintah dasar pada PLC dirancang melakukan pemrograman pada PLC. Perintah-perintah tersebut dibutuhkan untuk menangani sistem kontrol otomatis pada mesin industri. Tabel 2.3 menampilkan beberapa instruksi dasar.
Instruksi |
Simbol |
Keterangan |
Load |
|
Instruksi load adalah kontak normally open (NO). Perintah ini digunakan untuk mengetahui kehadiran sinyal input fisik. Ketika input fisik aktif maka simbol juga akan aktif. |
Load Bar |
|
Instruksi load bar adalah kontak normally closed (NC). Kebalikan dari perintah load, ketika input fisik non aktif maka simbol load bar akan aktif. |
Out |
|
Mirip seperti coil pada relay. Simbol akan aktif ketika mendapatkan sinyal benar (True) dari rung di sebelah kiri ladder. |
Out Bar |
|
Simbol akan aktif ketika mendapatkan sinyal salah (False) dari rung di sebelah kiri ladder. Oleh karena itu instruksi ini dapat dikatakan sebagai output normally closed atau kebalikan dari perintah out. |
b. Instruksi Timer/COUNTER
Timer/Counter pada PLC berjumlah 512 buah yang bernomor TC 000 sampai dengan TC 511 (tergantung tipe PLC). Jika suatu nomor sudah dipakai sebagai Timer/Counter maka nomor tersebut tidak boleh dipakai lagi sebagai Timer ataupun sebagai Counter. Jadi dalam satu program tidak boleh ada nomor Timer/Counter yang sama. Nilai Timer/Counter pada PLC bersifat countdown (menghitung mundur) dari nilai awal yang ditetapkan oleh program. Setelah hitungan mundur tersebut mencapai angka nol maka contact NO Timer/Counter akan ON. Timer mempunyai batas antara 0000 sampai dengan 9999 dalam bentuk BCD dan dalam orde 100ms. Sedangkan untuk counter mempunyai orde angka BCD dan mempunyai batas antara 0000 sampai dengan 9999.
1. Timer merupakan pewaktu sehingga dapat ditentukan nilainya. Dalam pengaplikasian kontrol, pengontrolan waktu sangat diperlukan, sehingga timer mendukung kebutuhan tersebut untuk mengukur waktu dengan piranti clock internal CPU. Timer memiliki beberapa bagian :
- Timer Status Bit
Untuk penulisannya adalah Tn. Timer status bit ini berfungsi untuk mengetahui status timer, yakni aktif atau tidak aktif. Nilai bit akan berubah menjadi 1 (aktif) pada saat diberi instruksi SET. Pada saat periode waktu yang diprogram telah selesai atau timer dihentikan dengan cara RESET, maka status bit akan berubah menjadi 0 (tidak aktif).
- Timer Preset
Untuk penulisannya adalah TPn. Timer preset merupakan operand multibit yang berisi nilai interval timer. Timer preset diberi nilai saat melakukan inisialisasi atau pengaktifan terhadap timer
- Timer Word
Untuk penulisannya adalah TWn. Timer word berfungsi sebagai pencacah yang nilainya berkurang secara otomatis pada interval tertentu dan teratur .
2. Counter
Counter berfungsi untuk menghitung sampai suatu data tertentu dan mempunyai kondisi ON dan OFF
- Counter Stats Bit Untuk penulisannya adalah Cn. Counter stats bit ini berfungsi untuk mengetahui status Counter, yakni aktif atau tidak aktif. Nilai bit akan berubah menjadi 1 (aktif) pada saat diberi instruksi SET. Pada saat jumlah yang diprogram telah selesai atau Counter dihentikan dengan cara RESET, maka status bit akan berubah menjadi 0 (tidak aktif).
- Counter Preset Untuk penulisannya adalah CPn. Counter preset merupakan operand multibit yang berisi batas perhitungan counter. Counter preset diberi nilai saat melakukan inisialisasi atau pengaktifan terhadap counter.
- Counter Word Untuk penulisannya adalah CWn. Counter word berisi nilai actual perhitungan yang diakibatkan oleh perintah INC maupun DEC.
3. Perbedaan Counter dan Timer
c. Instruksi Compare
Instruksi perbandingan data memerintahkan pada PLC untuk membandingkan dua buah nilai data. Jadi, PLC dapat diminta untuk membandingkan sebuah nilai digital yang dibaca dari suatu perangkat input dengan sebuah nilai lainnya yang berada dalam sebuah register. Sebagai contoh, kita mungkin menghendaki agar suatu aktivitas dimulai ketika input dari sebuah sensor suhu memberikan suatu nilai digital yang kurang daripada nilai yang telah ditetapkan, yang tersimpan di dalam sebuah register data PLC. PLC secara umum dapat melakukan perbandingan untuk bentuk-bentuk kurang dari, sama dengan, kurang dari atau sama dengan, lebih besar dari, lebih besar dari atau sama dengan, dan tidak sama dengan
.
d. Instruksi Mov
Instruksi yang umum digunakan untuk memindahkan data adalah MOV. Instruksi ini menyalin sebuah nilai dari suatu alamat ke alamat lainnya. Gambar dibawah mengilustrasikan praktek yang umum dilakukan, yaitu menggunakan satu anak tangga program untuk tiap-tiap operasi pemindahan data, dengan menampilkan bentuk yang digunakan oleh Mitsubishi, Allen Bradley, dan OMRON. Pada gambar tersebut diperlihatkan bahwa ketika terdapat sebuah input ke In, perpindahan terjadi dari suatu tempat sumber yang telah ditetapkan ke suatu alamat tujuan yang telah ditetapkan.
e. Latching dan Relay Internal
1. Latching
Seringkali terdapat situasi-situasi di mana output harus tetap berada dalam keadaan hidup meskipun input telah terputus. Istilah rangkaian latching (pengunci) dipergunakan untuk rangkaian-rangkaian yang mampu mempertahankan dirinya sendiri( self-maintaining), dalam artian bahwa setelah dihidupkan, rangkaian akan mempertahankan kondisi ini hingga input lainnya diterima.
Contoh sebuah rangkaian latching diperlihatkan pada Gambar
Ketika saklar input A menutup, dihasilkan sebuah output. Akan tetapi, ketika terdapat sebuah output, saklar lain yang diasosiasikan dengan output juga menutup.Saklar ini bersama dengan saklar input A membentuk suatu sistem gerbang logika OR. Sehingga, walaupun input A membuka, rangkaian akan tetap mempertahankan output dalam keadaan menyala. Satu-satunya cara untuk melepaskan kontak-kontak saklar output adalah dengan mengaktifkan kontak B yang normal-menutup
b. Relay Internal
Di dalam PLC terdapat elemen-elemen yang digunakan untuk menyimpan data, yaitu bit-bit, dan menjalankan fungsi-fungsi relai, yaitu dapat disambungkan dan diputuskan, dan dapat menyambungkan dan memutuskan perangkat-perangkat lain. Oleh karena itu pergunakanlah sebutan relay internal (internal relay/IR). Relay internal sebenarnya bukanlah sebuah perangkat relay dalam pengertian sebenarnya, namun hanya merupakan bit-bit di dalam memori penyimpanan data yang berperilaku sebagaimana layaknya sebuah relay. Di dalam pemrograman, relai-relai internal dapat diperlakukan sebagaimana layaknya relai-relai input dan output eksternal. Untuk membedakan output dari relay internal dengan output dari perangkat relay eksternal, pada kedua jenis output diberikan alamat yang berbeda. Sebagai contoh, Mitsubishi mempergunakan istilah relay sekunder (auxiliary relay) atau marker dengan notasi alamat M100, M101, dan seterusnya. Siemens mempergunakan istilah flag dan notasi pengalamatan F0.0, F0.1, dan seterusnya. Sprecher+Schuh menggunakan istilah kumparan dan notasi C001, C002, dan seterusnya. Telemecanique menggunakan istilah bit dan notasi B0, B1, dan seterusnya. Toshiba menggunakan istilah relay internal dan notasi R000, R001, dan seterusnya. Allen Bradley menggunakan istilah penyimpanan bit (bit storage) dan notasi pada produk PLC- 5-nya, B3/001, B3/002, dan seterusnya. OMRON menggunakan pengalamatan 20000, 20001, dan seterusnya.Contoh penggunaan relay internal dalam program dengan notasi Siemens dan OMRON, diperlihatkan pada
a. Dengan siemen
b. Dengan omron
f. Register Geser
Register geser sering digunakan untuk piranti elektronik yang dapat memuat data. Register geser adalah sejumlah relay internal yang dikelompokkan bersama-sama, sehingga memungkinkan bit-bit yang tersimpan di dalamnya dapat dipindahkan atau digeser dari satu relay ke relay berikutnya. Sebuah register geser membutuhkan tiga input, satu untuk memasukan data ke dalam lokasi pertama di dalam register, satu sebagai instruksi untuk menggeser data dari satu lokasi ke lokasi lainnya, dan satu untuk melakukan reset atau mengosongkan data yang berada di dalam register. Sebagai ilustrasi, perhatikan gambar.. Input In 3 dipergunakan untuk melakukan reset terhadap register geser, yaitu menjadikan semua nilai relainya 0. Input In 1 digunakan sebagai input ke relay internal pertama di dalam register. Input In 2 digunakan untuk menggeser (shift) status relai-relai internal sejauh satu lokasi. Tiap-tiap relay internal di dalam register, yaitu IR 1, IR 2, IR 3, dan IR 4, disambungkan ke sebuah output, yaitu Out 1, Out 2, dan Out 4. Anggaplah bahwa kita mulai dengan memberikan input sesaat ke In 3, sehingga semua relay internal memiliki nilai awal 0, mengakibatkan status keempat relay internal IR 1, IR 2, IR 3, IR 4, adalah 0, 0, 0, 0. Ketika In 1 menutup sekejap, terdapat input 1 ke relay internal pertama, sehingga status relai-relai internal IR 1, IR 2, IR 3, IR 4, menjadi 1, 0, 0, 0. Kontak IR 1 menutup, sehingga Out 1 bernilai 1 (ON). Jika kita memberikan input sekejap ke In 2, bit 1 akan tergeser dari relay internal pertama ke relay internal kedua, sehingga status relai-relai internal IR 1, IR 2, IR 3, IR 4, menjadi 0, 1, 0, 0. Hal ini mengakibatkan IR 2 menutup, sehingga yang ON adalah Out 2. Demikian seterusnya, seperti diperlihatkan pada Gambar b.