Karena PLC bersifat softwire, di mana fungsi kontrol dapat secara mudah
diubah dengan mengganti programnya menggunakan suatu software, sehingga
pemrograman merupakan hal yang sangat penting dalam pembahasan tentang
PLC. Bahasa pemrograman PLC mudah dipahami sebab sebagian besar berkaitan
dengan operasi-operasi logika dan penyambungan.
Pada bagian ini akan dibahas model pemrograman PLC (difokuskan pada
ladder diagram dan kode mnemonik) dan contoh-contoh sederhana pada beberapa
jenis PLC. Setelah mengikuti perkuliahan ini, mahasiswa diharapkan dapat
membuat program-program sederhana dalam bentuk ladder diagram dan kode
mnemonik dengan fungsi-fungsi dasar logika pada beberapa jenis PLC.
52
4. Sequential Function Charts (Diagram Fungsi Sekuensial) – Metode grafis
untuk pemrograman terstruktur yang banyak melibatkan langkah-langkah
rumit, seperti pada bidang robotika, perakitan kendaraan, batch control,
dan sebagainya.
5. Structured Text (Teks Terstruktur) – Pemrograman ini menggunakan
statemen-statemen yang umum dijumpai pada bahasa level tinggi (high
level programming) seperti If/Then, Do/While, Case, For/Next, dan
sebagainya. Dalam aplikasinya, model ini cocok digunakan untuk
perhitungan-perhitungan matematis yang kompleks, pemrosesan tabel dan
data, serta fungsi-fungsi kontrol yang memerlukan algoritma khusus.
Walaupun hampir semua vendor PLC telah mendukung kelima model
pemrograman tersebut, tetapi secara de facto sampai saat ini yang sangat luas
penggunaannya terutama di industri adalah Ladder Diagram. Alasan utamanya
adalah karena diagram ini mirip dengan diagram kontrol elektromekanis yang
sebelumnya sudah banyak digunakan di industri. Berikut bahasa pemrograman
yang digunakan oleh beberapa merek PLC.
53
Dalam pembahasan selanjutnya akan dijelaskan metode pemrograman
diagram tangga (ladder diagram programming) dan metode daftar instruksi.
Metode pemrograman tangga menyediakan suatu cara untuk menuliskan program,
yang kemudian dapat dikonversikan menjadi kode mesin oleh suatu software,
sehingga dapat digunakan oleh mikroprosesor PLC. Dengan metode daftar
instruksi, kode-kode mnemonik dipergunakan, di mana tiap-tiap kode
diasosiasikan dengan sebuah elemen diagram tangga.
Diagram tangga adalah suatu diagram mirip anak tangga yang
menggambarkan urutan kerja dari sistem kontrol. Ladder diagram menggunakan
simbol standar untuk merepresentasikan elemen rangkaian dan fungsi dalam
sistem kontrol. Ladder diagram terdiri dari dua garis vertikal. Antara kedua garis
vertikal tersebut terdapat simbol-simbol switch contact normally open (NO),
switch contact normally closed (NC), timer, counter, fungsi, dan output (coil).
Menurut Bolton (2004: 63), dalam menggambarkan diagram tangga, diterapkan
konvensi-konvensi tertentu:
- Garis-garis vertikal diagram merepresentasikan rel-rel daya, di mana di antara
keduanya komponen-komponen rangkaian tersambung.
- Tiap-tiap anak tangga mendefenisikan sebuah operasi di dalam proses kontrol.
- Sebuah diagram tangga dibaca dari kiri ke kanan, dan dari atas ke bawah.
- Tiap-tiap anak tangga harus dimulai dengan sebuah input atau sejumlah input,
dan harus berakhir dengan setidaknya sebuah output.
- Perangkat-perangkat listrik ditampilkan dalam kondisi normalnya.
- Sebuah perangkat tertentu dapat digambarkan pada lebih dari satu anak
tangga. Sebagai contoh, sebuah relai dapat menyalakan satu atau lebih
perangkat listrik.
- Seluruh input dan ouput diidentifikasikan melalui alamat-alamatnya, notasi
yang digunakan bergantung pada pabrik PLC yang bersangkutan. Alamat ini
mengindikasikan lokasi input atau output di dalam memori PLC. Sebagai
contoh:
Mitsubishi mengawali alamat untuk input dengan sebuah huruf X dan untuk
output dengan huruf Y, misalnya alamat input X400, dan alamat output Y430.
54
Toshiba juga menggunakan sebuah huruf X dan huruf Y, misalnya alamat
input X000, dan alamat output Y000.
Siemens mengawali alamat-alamat input dengan huruf I dan output dengan
huruf Q, misalnya: I0.1, dan Q2.0.
Allen Bradley menggunakan huruf I dan O, misalnya: I:21/01, dan O:22/01.
Telemechanique menggunakan huruf I dan O, misalnya: I0.0, dan O0.0.
OMRON mengawali alamat input dengan 000. dan output dengan 010.
Misalnya: input 000.00, dan output 010.00.
Dalam PLC-PLC yang berukuran lebih besar, yang memiliki sejumlah rak
untuk kanal-kanal input dan output, rak-rak tersebut diberi nomor. Misalnya Allen
Bradley PLC-5, rak yang memuat prosesor diberi nomor 0 dan alamat rak-rak
lainnya diberi nomor 1, 2, 3, dan seterusnya sesuai dengan posisi yang ditetapkan
untuk saklar-saklar yang bersangkutan. Masing-masing rak dapat dapat memuat
beberapa buah modul dan tiap-tiap modul menangani sejumlah input dan atau
output. Sistem pengalamatan Allen Bradley PLC-5 diperlihatkan pada Gambar
4.1.
I = input
O = output Nomor modul
x: x x x / x x
55
Gambar 4.2. Sistem pengalamatan Siemens SIMATIC
2. OR
Sistem gerbang OR pada sebuah diagram tangga diperlihatkan pada
Gambar 4.4. Untuk menghasilkan Output ON (logika 1) maka Input A atau Input
B (atau keduanya) dalam keadaan ON.
56
Gambar 4.4. Diagram tangga untuk sebuah sistem gerbang OR
3. NOT
Sistem gerbang NOT pada sebuah diagram tangga diperlihatkan pada
gambar 4.5.
4. NAND
Gambar 4.6 memperlihatkan sebuah diagram tangga yang
mengimplementasikan sebuah gerbang NAND.
(a)
(b)
Gambar 4.6. a. Gerbang NAND, b. Diagram tangga untuk sebuah sistem
gerbang NAND
57
5. NOR
Gambar 4.7 memperlihatkan sebuah diagram tangga untuk sebuah sistem
berbasis gerbang NOR.
A NOT
A
OR NOT atau AND
B
B NOT
(a)
(b)
Gambar 4.7. a. Gerbang NOR, b. Diagram tangga untuk sebuah sistem gerbang
NOR
6. EXOR
Sebuah gerbang OR menghasilkan output ketika salah satu atau kedua
inputnya berada dalam kondisi 1. Akan tetapi, pada situasi-situasi tertentu,
dibutuhkan sebuah gerbang yang dapat menghasilkan output ketika salah satu di
antara kedua inputnya, tidak keduanya sekaligus, bernilai 1. Gerbang seperti ini
disebut gerbang OR Eksklusif atau EXOR. Salah satu cara untuk mendapatkan
gerbang semacam ini adalah dengan menggabungkan gerbang-gerbang NOT,
AND, dan OR seperti Gambar 4.8.
A NOT
AND
B
OR
AND
NOT
(a) (b)
Gambar 4.8. a. Gerbang XOR. b. Diagram tangga untuk sebuah sistem gerbang
EXOR.
58
4.2.2 STL (Statement List) atau Kode Mnemonik
Kode-kode yang digunakan berbeda-beda antara satu pabrik PLC dengan
pabrik PLC lainnya, meskipun sebuah standar IEC 1131-3 telah diajukan (Bolton,
2004: 74). Walaupun kode mnemonik setiap pabrik PLC berbeda, tetapi diagram
tangganya hampir semua sama. Tabel 4.2 memperlihatkan mnemonik beberapa
jenis PLC untuk berbagai kode instruksi.
Tabel 4.2. Mnemonik untuk berbagai kode instruksi pada beberapa PLC
Contoh:
1. Diagram tangga untuk sebuah sistem gerbang AND seperti pada Gambar 5.3,
dapat dibuat kode mnemoniknya seperti pada Tabel 4.3 (dengan
memperhatikan sistem pengalamatan setiap tipe PLC).
Tabel 4.3. Kode mnemonik dari diagram tangga sistem gerbang AND pada
Gambar 4.3.
Instruksi
Langkah
Mitsubishi Siemens Telemecanique OMRON
0 LD X400 A I0.1 L I0.1 LD 000.00
1 AND X401 A I0.2 A I0.2 AND 000.01
2 OUT Y430 = Q2.0 = Q0.0 OUT 010.00
2. Diagram tangga untuk sebuah sistem gerbang EXOR seperti pada gambar
4.8(b), dapat dibuatkan diagram tangganya dengan notasi Mitsubhisi,
59
Siemens, dan OMRON seperti pada Gambar 4.9. Kode mnemoniknya seperti
pada Tabel 4.4.
Tabel 4.4. Kode mnemonik dari diagram tangga sistem gerbang EXOR pada
Gambar 4.9
Instruksi
Langkah
Mitsubishi Siemens OMRON
(Simatic Manager)
0 LD X400 A I0.0 LD 000.00
1 ANI X401 AN I0.1 AND NOT 000.01
2 LDI X400 O LD NOT 000.00
3 AND X401 AN I0.0 AND 000.01
4 ORB A I0.1 OR LD
5 OUT Y430 = Q0.0 OUT 010.00
3. Diagram tangga pada Gambar 4.10 dapat dipandang sebagai dua blok
rangkaian yang di-AND-kan dengan menggunakan notasi Mitsubhisi,
Siemens, dan OMRON. Daftar instruksi/kode mnemoniknya seperti pada
Tabel 4.5.
60
Tabel 4.5. Kode mnemonik untuk diagram tangga pada Gambar 4.10.
Instruksi
Langkah Mitsubishi Siemens OMRON
0 LD X400 A( LD 000.00
1 OR X402 O I0.0 OR 000.02
2 LD X401 O. I0.2 LD 000.01
3 OR X403 ) OR 010.03
4 ANB A( AND LD
5 OUT Y430 O I0.1 OUT 010.00
6 O. I0.3
7 )
8 = Q2.0
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.
61
4.3.2 Relai 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 memuuskan perangkat-perangkat
lain. Oleh karena itu, dipergunakanlah sebutan relai internal (internal relay/IR).
Relai internal sebenarnya bukanlah sebuah perangkat relai dalam pengertian
sebenarnya, namun hanya merupakan bit-bit di dalam memori penyimpanan data
yang “berperilaku” sebagaimana layaknya sebuah relai. Di dalam pemrograman,
relai-relai internal dapat diperlakukan sebagaimana layaknya relai-relai input dan
output eksternal. Untuk membedakan output dari relai internal dengan output dari
perangkat relai eksternal, pada kedua jenis output diberikan alamat yang berbeda.
Sebagai contoh, Mitsubishi mempergunakan istilah relai sekunder (auxiliary
relay) atau marker dengan notasi alamat M100, M101, dan seterusnya. Siemens
mempergunakan istilah memory dan notasi pengalamatan M0.0, M0.1, dan
seterusnya. Telemechanique menggunakan istilah bit dan notasi B0, B1, dan
seterusnya. Toshiba menggunakan istilah relai 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 relai internal dalam program dengan notasi Siemens dan
OMRON, diperlihatkan pada Gambar 4.12.
62
4.4 Pembuatan Program Fungsi Logika
Prosedur pembuatan program kendali menggunakan PLC, dapat
digambarkan dalam bentuk diagram alir seperti pada gambar 4.13.
Start
Deskripsi Kontrol
Merencanakan alamat
I/O
Penulisan Program ke
Diagram Tangga
Pemrograman
Simulasi Program
Program Tidak
Koreksi Kembali
Benar?
Ya
Uji Kerja
Bekerja Tidak
Koreksi Sambungan
Benar?
Ya
Simpan Program
END
63
Pada bagian ini akan diberikan beberapa contoh dengan menggunakan
PLC OMRON CPM1A-20CDR-A dan PLC Siemens. Pengenalan terhadap
struktur memori suatu PLC sangat diperlukan, agar supaya dapat
menggunakannya dengan tepat sesuai dengan fungsinya masing-masing.
Pada PLC Omron CPM1, terdapat beberapa memori yang memiliki fungsi-
fungsi khusus. Masing-masing lokasi memori memiliki ukuran 16-bit atau 1 word.
Tabel 4.6 memperlihatkan Data Area PLC Omron CPM1.
64
PLC OMRON Model CPM1A-20CDR-A, membutuhkan catu daya/power suplly
AC, output method: relay output, mempunyai jumlah point input dan output = 20
(input points = 12, alamat 000.00 s.d. 000.11 atau 0.00 s.d. 0.11, dan output points
= 8, alamat 010.00 s.d. 010.07 atau 10.00 sd. 10.07). Terminal input-output PLC
OMRON Model CPM1A-20CDR-A diperlihatkan pada gambar 4.14.
T Timer T0 to T255
C Counter C0 to C255
65
PLC Siemens S7-200 CPU 224, memiliki total 24 Input/Output yaitu 14 Digital
Input dan 10 Digital Output, dengan alamat sebagai berikut.
Alamat Input : I0.0 – I0.7 dan I1.0 – I0.5.
Alat Output : Q0.0 – Q0.7 dan Q1.0 – Q1.1.
Contoh 1.
Buat program kendali sebuah lampu yang dapat di ON-OFF dari dua
tempat (dengan dua saklar).
Sistem tersebut merupakan salah satu aplikasi dari logika EXOR.
a. Dengan menggunakan PLC OMRON (CX-Programmer 9.0)
Sistem tersebut mempunyai 2 input (saklar1 dan saklar2), dan 1 output
(lampu), dengan pengaturan alamat input-output sebagai berikut:
Saklar1 : 000.00 atau 0.00
Saklar2 : 000.01 atau 0.01
Lampu : 010.00 atau 10.00
Program dalam bentuk Ladder Diagram
66
Program dalam bentuk Ladder Diagram
67
Contoh 2. Pengontrolan Putaran Motor dalam Dua Arah Putaran
Cara Kerja Sistem:
Sistem di-ON dan di-OFF dengan 4 push button (PB). Jika PB 1 ditekan,
maka motor berputar ke kanan (cw) ditandai dengan bekerjanya kontaktor 1 dan
akan tetap berputar meskipun PB 1 dilepas. Motor akan OFF jika PB 2 ditekan.
Jika PB 3 ditekan, maka motor berputar ke kiri (ccw) ditandai dengan bekerjanya
kontaktor 2 dan akan tetap berputar meskipun PB 3 dilepas. Motor akan OFF jika
PB 4 ditekan. Kontaktor 1 dan 2 tidak boleh bekerja bersamaan. Rangkaian daya
dan rangkaian kontrol konvensional (kontrol relai) sistem tersebut diperlihatkan
pada gambar 4.15.
Gambar 4.15. Rangkaian daya dan kontrol pengoperasian motor dengan 2 arah
putaran
68
Dalam bentuk Ladder Diagram
69
Dalam bentuk Ladder Diagram
70
c. Dengan menggunakan PLC Siemens S7-300.
Penentuan alamat input-output sama dengan pada PLC Siemens S7-200.
Dalam bentuk Ladder Diagram
71
4.5 Penutup
A. Kesimpulan
1. Ada lima model atau metode pemrograman PLC yang distandarnisasi
penggunaannya oleh IEC 61131-3, yang dapat dibagi dalam dua kelompok,
yaitu:
a. Representasi gambar/simbol dapat berupa : Diagram Tangga (Ladder
Digram / LAD), Diagram Blok Fungsi (Function Block Diagram /
FBD), Urutan Chart Fungsi (Sequential Function Charts / SFC).
b. Bentuk tabel perintah, dapat berupa: Daftar Instruksi
(Instruction/Statement List / STL), dan Teks Terstruktu (Structured
Text / ST).
2. Model pemrograman PLC yang sangat luas penggunaannya terutama di
industri adalah Ladder Diagram karena diagram ini mirip dengan diagram
kontrol elektromekanis yang sebelumnya sudah banyak digunakan di industri.
3. Pengenalan terhadap struktur memori suatu PLC sangat diperlukan, agar
supaya dapat menggunakannya dengan tepat sesuai dengan fungsinya masing-
masing.
B. Soal-soal Latihan
1. Tentukan apakah masing-masing pernyataan di bawah ini benar (B) atau salah
(S).
Gambar 4.16 memperlihatkan sebuah anak
tangga, yang:
72
2. Tentukan apakah masing-masing pernyataan di bawah ini benar (B) atau salah
(S).
Gambar 4.17 memperlihatkan sebuah anak
tangga, yang menghasilkan sebuah output
ketika:
3. Tentukan apakah masing-masing pernyataan di bawah ini benar (B) atau salah
(S).
Gambar 4.18 memperlihatkan sebuah anak
tangga, yang menghasilkan sebuah output
ketika:
73
4. Bentuk sistem gerbang logika manakah yang direpresentasikan oleh sebuah
diagram tangga dengan dua saklar normal-terbuka (NO) yang tersambung
secara paralel?
5. Bentuk sistem gerbang logika manakah yang direpresentasikan oleh sebuah
diagram tangga dengan sebuah anak tangga yang memiliki dua saklar normal-
tertutup (NC) yang tersambung secara paralel?
6. Bentuk sistem gerbang logika manakah yang direpresentasikan oleh sebuah
diagram tangga dengan sebuah anak tangga yang memiliki dua saklar normal-
tertutup (NC) yang tersambung secara seri?
7. Bentuk sistem gerbang logika manakah yang direpresentasikan oleh sebuah
diagram tangga dengan sebuah anak tangga yang memiliki dua saklar normal-
terbuka (NO) yang tersambung secara seri?
Gambar 4.19 untuk soal No. 8 sampai 10.
8. Tentukan apakah masing-masing pernyataan di bawah ini benar (B) atau salah
(S).
Relai internal IR 1 diaktifkan ketika:
(i). Terdapat sebuah input ke In 1.
(ii). Terdapat sebuah input ke In 3.
A. (i) B, (ii) B
B. (i) B, (ii) S
C. (i) S, (ii) B
D. (i) S, (ii) S
74
9. Tentukan apakah masing-masing pernyataan di bawah ini benar (B) atau salah
(S).
Relai internal IR 2 diaktifkan ketika:
(i). Relai internal IR 1 telah diaktifkan.
(ii). Input 4 diaktifkan.
A. (i) B, (ii) B
B. (i) B, (ii) S
C. (i) S, (ii) B
D. (i) S, (ii) S
10. Tentukan apakah masing-masing pernyataan di bawah ini benar (B) atau salah
(S).
Terdapat sebuah output dari Out 1 ketika:
(i). Hanya terdapat input ke In 1, In 2, dan In 4.
(ii). Hanya terdapat input ke In 3, dan In 4.
A. (i) B, (ii) B
B. (i) B, (ii) S
C. (i) S, (ii) B
D. (i) S, (ii) S
11. Buatlah diagram tangga, dan kode mnemonik sistem di bawah ini, dengan cara
yang digunakan pada PLC Siemens dan Omron.
a. Dua buah saklar normal-terbuka (NO) yang salah satunya harus menutup
agar sebuah kumparan/relai dapat dialiri listrik dan mengoperasikan
sebuah aktuator.
b. Sebuah motor yang dijalankan dengan menekan sebuah tombol mulai
(Start) yang akan dikembalikan ke posisi awalnya oleh mekanisme pegas,
dan motor akan tetap bekerja hingga sebuah tombol berhenti (Stop), yang
juga didukung oleh mekanisme pegas, ditekan.
c. Sebuah lampu yang akan menyala apabila terdapat sebuah input dari
sensor A atau sensor B.
e. Sebuah lampu yang akan menyala apabila tidak terdapat input ke sensor.
75