di Departemen Ketenagalistrikan
P4TK Bidang Mesin dan Teknik Industri Bandung
1
PEMROGRAMAN PLC
Prepared by
Erfi Ilyas
Widyaiswara PPPG Teknologi Bandung Dosen ISO 9000 Consultant & Auditor
Alamat Kantor
P4TK BMTI (PPPG Teknologi) Bandung Jl. Pasantren Km 2 Cibabat - Cimahi, 40513 Tel (022) 6652326, 6654698 Email : erfi@tedcbandung.com
Pendidikan Formal
SD Tamat tahun 1973 SMP Tamat tahun 1976 SMA Tamat tahun 1980 S1 (FPTK IKIP) Tamat tahun 1984 S2 (STIE-IE) Tamat tahun 1999 S3 (Doktor Ilmu Ekonomi Unpar Bandung) Tamat tahun 2013
Tujuan Pembelajaran
Secara umum pembelajaran pada mata diklat ini bertujuan memberikan bekal pengetahuan dan keterampilan kepada peserta tentang pemrograman dasar Programmable Logic Control (PLC)
Tujuan Pembelajaran
Secara khusus pembelajaran ini bertujuan agar peserta mampu: 1. Mendeskripsikan sistem I/O adressing 2. Menjelaskan jenis-jenis bahasa pemrograman programmable logic control 3. Membuat program rangkaian dasar (basic circuit) 4. Memprogram berbagai jenis output 5. Memprogram berbagai jenis timer 6. Memprogram berbagai jenis counter
Ladder Diagram
Function Block Diagram Statement List Basic Circuit
3
4 5
Processing
Output
Mechanics
Actuators
Indicators
Machine process
Input
Controller
Signal transmitter
SENSOR
Push button Switch Sensor
AKTUATOR
Output Modules
Input Modules
Memory
Programmer
Personal Computer Programming Terminal Hand held programmer Light pen programmer
Program
1. Input-Output Adressing
Format I/O Addressing
Format I y,z O y,z Penjelasan I O , Input Output
Bit delimiter
Nomor grup (nomor slot dalam rak)
y
z
Contoh: I 0,1 = input nomor satu pada slot nol O 0 ,2 = output nomor 2 pada slot nol
Created by H. Erfi Ilyas - erfiilyas@yahoo.com
Modicon
Siemens S7
I Q .
I O , I 0,1
I O / I:1/1
000 010
q
. %i1.1
I 0.1
Q 0.5
00.01
O 0,5
%q2.1 O:6/1
10.01
Omron
Ladder Diagram (LAD) Instruction List (IL) Statement List (STL) Instruction Set (IS) Function Block Diagram (FBD) Function Block Language (FBL) Sequential Function Chart (SFC) Structured Text (ST)
4 5
1. Ladder Diagram
1.1. Graphic Test Symbol
Links Horizontal
Menghubungkan elemen program secara seri (input, function block, output) Menghubungkan elemen program secara paralel (input, function block, output)
1. Ladder Diagram
1.2. Graphic Action Symbol
Output Direct Inverse Latched Unlatched Jump
( (
) )
Aktif bila sinyal kontrol pada state (keadaan) 1 Tidak aktif bila sinyal kontrol pada state (keadaan) 1 Set output Men-set bit ke state 1 Reset output Me-reset bit ke state 0 Bila output ini aktif, maka eksekusi program akan melompat ke label yang diprogramkan pada output ini
(S)
(R) (J)
Modicon
Siemens
( (
) )
Mitsubishi )
( I) (L)
(U) (JMP) (S) (R) (JMP)
SET
(S)
(S)
Omron
RSET JMP
[ SET ]
(R)
(J)
(R) -->>
[ RST ]
[ CJ ]
1. Ladder Diagram
4
5
T
Ti,v P:
D R
C : input untuk memulai proses timimg E : input untuk memungkinkan preset time value D : output bit yang menandakan timer bekerja R : output bit yang menandakan timer mulai berjalan
Timing Diagram
E C
Ti,v D R
Created by H. Erfi Ilyas - erfiilyas@yahoo.com
T
Ti,v P:
D R
C : input untuk memulai proses timimg E : input untuk memungkinkan preset time value D : output bit yang menandakan timer bekerja R : output bit yang menandakan timer mulai berjalan
Timing Diagram
E C
Ti,v D R
Created by H. Erfi Ilyas - erfiilyas@yahoo.com
Timer - Siemens S7
LAD I 0.1 IN T 37 TON LD TON STL I 0.1 T 37,5
PT
Timing Diagram
I 0.1
T 37 (current) T 37 (bit)
PT=5 PT=5
Timer - Siemens S7
LAD I 0.1 T5 IN TONR LD TON I 0.1 T 5,5 STL
PT
Timing Diagram
I 0.1
T5 (current) T 5 (bit)
PT=5
Timer - Omron
LAD 000.01 TIM STL
001
# 0050
Timing Diagram
000.01
PT=5 PT=5
Timer - Mitsubishi
X1 K50
II
(T1
Timing Diagram
X1
K50 (current) T1
PT=5 PT=5
(DN)
rung conditions are true and the accumulated value is less than the preset value
(DN)
rung conditions are false and the accumulated value is less than the preset value
T
Ti,v P:
S : input untuk memulai monostabel R : output bit yang menandakan monostabel running
Timing Diagram
Mi,v
Counter Telemecanique
Simbol R P U D C0
TB: 1s P:5
E D F
R : input untuk me-reset counter ke nol P : input untuk mem-preset nilai hitung (count value) U : input untuk menjalankan upcounting D : input untuk menjalankan downcounting E : output yang menandakan counter empty D : output yang menandakan counter bekerja (done) F : output yang menandakan counter full
Counter Modicon
Simbol R S CU CD C0
TB: 1s P:5
E D F
: input untuk me-reset counter ke nol : input untuk mem-preset nilai hitung (count value) CU : input untuk menjalankan upcounting CD : input untuk menjalankan downcounting E : output yang menandakan counter empty D : output yang menandakan counter bekerja (done) F : output yang menandakan counter full
R S
I 0.1
I 0.2
LD LD LD CTUD
I 0.1 //Count Up Clock I 0.2 //Count Down Clock I 0.3 //Reset C48,4
5 4 3 4
1 0 0
C 48 (bit)
Counter Omron
000.01 CNT 000.02 001 # 0005 CNT 001 010.01
Counter Mitsubishi
X1
K5
II
C1 X2
) ) ]
II II
(DN)
rung conditions are false and the accumulated value is less than the preset value
D
F L=5
R : input untuk kembali ke step 0 U : input untuk naik ke step berikutnya F output yang menandakan cycle selesai (finish)
0 1
4
O 0,5
3
O 0,4
2
O 0,3
1 0 1 1 0
O 0,2 O 0,1
1 0
0 0
2
3 4
D
F L=5
R : input untuk kembali ke step 0 U : input untuk naik ke step berikutnya F output yang menandakan cycle selesai (finish)
Step BIT 0 1 2 3
0 1 0 0 0
1 0 1 0 0
2 0 0 1 0
(DN)
ON ON
Destination O:6.0
15 8 7 0
N7:1
2 3 4
1
2 3 4
Current Step
ON ON
F
E
I O
R I O F E
: input untuk me-reset register ke nol : input untuk memasukkan word ke register : input untuk mengeluarkan word dari register : output yang menandakan register full : output yang menandakan register empty
Basic Circuit
1. Rangkaian YES
Circuit Diagram Ladder Diagram I0,1 O0,1
II
S1
( )
K1
Basic Circuit
2. Rangkaian NOT
Circuit Diagram Ladder Diagram I0,2 O0,2
I/I
S2
( )
K2
Basic Circuit
3. Rangkaian AND
Circuit Diagram
Ladder Diagram I0,3 I0,4 O0,3
II II
S3
( )
Tabel Kebenaran
S4
K3
Input I 0,3 0 0 1 1
Input I 0,4 0 1 0 1
Output O 0,3 0 0 0 1
Basic Circuit
4. Rangkaian OR
Circuit Diagram Ladder Diagram I0,5 O0,4
II
S5
( )
S6
I0,6
II
Tabel Kebenaran
K4
Input I 0,5 0 0 1 1
Input I 0,6 0 1 0 1
Output O 0,4 0 1 1 1
Latihan 1.1
Circuit Diagram
Ladder Diagram I0,1
I0,1 I0,2
I0,3
O0,1
II
I0,2
II
( )
II
I0,3
O0,1
Latihan 1.2
Circuit Diagram Ladder Diagram I0,4
I0,4 I0,5 O0,2
I0,6
I0,7
O0,2
II
I0,5
I/I
I/I
( )
II
I0,6
O0,2
II
I0,7
O0,2
Latihan 1.3
Circuit Diagram Ladder Diagram I0,8
I0,8
I0,9
I0,10
O0,3
I/I
I/I
II
I0,11 I0,12
( )
I/I
I0,9 I0,10 I0,11 I0,12
II
O0,3
Latihan 1.4
Circuit Diagram Ladder Diagram I0,13 I0,14 O0,4
II
I0,13 I0,14
II
( )
O0,5
( )
O0,4
O0,5
Tabel Kebenaran
x 0 1
Keterangan
Output A akan logic 1 bila input x logic 1
A
0 1 A 1 0
Negation (NOT)
x A=x
x
0 1
Tabel Kebenaran
x
y 0 1 0 1 y 0 1 0 1 A 0 0 0
Keterangan
Output A hanya akan logic 1 bila kedua input x dan y logic 1
AND
&
0 0 1 1 x
A=xy
1
A 0 1 1 1 Output A akan logic 1 bila salah satu atau kedua input x dan y logic 1
OR
x y
0 0 1 1
A=xVy
Tabel Kebenaran
x
y 0 1 0 1 y 0 1 0 1 A 0 0 1
Keterangan
Output A hanya akan logic 1 bila input x logic 1 dan input y logic 0
Exclusion
&
0 0 1 1 x
A=xy
0
A 1 0 1 1 Output A hanya akan logic 0 bila input x logic 0 dan input y logic 1
Inclusion
y x
0 0 1 1
A=xVy
Tabel Kebenaran
x
y 0 1 0 1 y 0 1 0 1 A 1 1 1
Keterangan
Output A hanya akan logic 0 bila kedua input x dan y logic 1
NAND
&
0 0 1 1 x
A = (xy)
0
A 1 0 0 0 Output A hanya akan logic 1 bila kedua input x dan y logic 0
NOR
x y
0 0 1 1
A = (xVy)
Stop
I0.1
&
K1 O0.1 I0.1 Circuit Diagram Function Block Language
O0.1
Stop
I0.1
I 2 START
&
Start I0.2 K1 Q0.1 = K1 Q0.1 Q1
Q 1 MOTOR
I 1 STOP
MOTOR
Circuit Diagram
Stop
I0.1 I 0.1
&
Start
I0.2
K1 O0.1
Q 0.1
1
Q 0.1
I 0.2 K1 O0.1
Circuit Diagram
Stop
I0.1
Start
I0.2
K1 O0.1
I 0.2 Q 0.1
OR
I 0.1
AND
Q 0.1
K1
O0.1
Circuit Diagram
Latihan 2.1
Latihan 2.2
Adress
Seluruh instruksi yang diberikan akan menerima nomor lokasi memory (adress). PLC melaksanakan instruksi sesuai dengan adress yang diminta. Adress ini biasanya dinyatakan dalam angka dan menggunakan tiga digit Misal: 000 001 002 instruksi pertama instruksi kedua instruksi ke tiga dan seterusnya
Misal:
LI0.1
OI0.2 =Q0.1
Load status sinyal dari input 0.1 ke dalam working register Input 0.2 terhubung paralel dengan input 0.1 (rangkaian OR) Lokasi hasil rangkaian adalah pada output 0.1
Operand
Kalau operation menyatakan apa yang harus dilakukan, maka operand menyatakan dengan apa instruksi itu harus dilaksanakan. Dari contoh di atas yang menjadi operand adalah input 0.1, input 0.2 dan output 0.1. Untuk mengidentifikasi jenis operand digunakan notasi sebagai berikut: N I Q M : Negation : Input : Output : Marker
Operation
Operand
Parameter No Operand
005
Program terdiri dari 6 instruksi
L
L = Load atau baca status input
I
I = Input Nomor unit/slot
0.1
Nomor terminal
Mitsubishi
Klocner M PS3
Modicon
L O A N =
U O
! / & N =
LOAD
LD OR
LD OR
OR
AND NOT OUT X Y
U
N =
AND
N ST
A
N =
AND
NOT OUT
= Input
Output
I
Q
E
A
E
A
I
Q
I
Q
Omron
000
010
AEG
AEG U O UN = E1 A1 E2 A1
I0.1
K1 Q0.1
L O AN =
Stop
I0.2
BBC
! / &N = E02,01 A07,01 E02,02 A07,01
Mitsubishi
LD OR ANDI = X001 Y030 X002 Y030
K1
Q0.1
Circuit Diagram
Statement List
I0.1
K1 O0.1
LD OR ANDN ST
Stop
I0.2
Omron
LD OR ANDNOT OUT 000.01 010.01 000.02 010.01
Statement List
K1
O0.1
Circuit Diagram
Latihan 3.1
Circuit Diagram Statement List
I1.1
I1.2
Q2.1
I1.3
I1.4
Q2.1
Siemens Network //Percb 1 LD I0.1 O I0.2 O Q0.1 AN I0.3 AN I0.4 = Q0.1 Network //Akhir Prog MEND
Latihan 3.2
Circuit Diagram Statement List
I0,8
O0,3
Latihan 3.3
Circuit Diagram Statement List
TERIMAKASIH
Created by H. Erfi Ilyas - erfiilyas@yahoo.com
Tell me and I forgot Show it to me and I will remember Let me do it And I will understand
(Confuzius)