Sie sind auf Seite 1von 74

Giao trnh PLC S7-200

1. GII THIU PLC S7-200


2. S DUNG PLC S7-200
3. BT U LP TRNH CHO S7-200
4. C BAN TRONG LP TRNH VI S7-200
5. B NH D LIU VA CACH NH A CH
6. CAC U VAO, RA
7. CAC PHNG THC TRUYN THNG

Trang 1

Giao trnh PLC S7-200

8. TP LNH SIMATIC
Trc ht, ta im qua nhng gii han thng s hp l trong S7-200:

Trang 2

Giao trnh PLC S7-200

Mt s qui nh khi tra cu lnh va s dung lnh:


Trn cung la phn tn lnh hoc nhom lnh.
Tip theo la cu phap lnh, ln lt trong LAD, FBD va STL.
Di cung la nhng loai CPU S7-200 cho phep s dung lnh, lu y y ch bao gm
03 loai CPU mi: 221, 222 va 224.
Bn canh la phn m ta hoat ng cua lnh.

Trang 3

Giao trnh PLC S7-200

Cac trng hp li la cac trng hp gy li khin u ra ENO = 0, bnh thng khi


lnh c thc hin th ENO = 1.
Cac bit c bit b anh hng la cac bit trong vung SM co gia tr thay i tuy theo kt
qua thc hin lnh.
Bang cac toan hang ch ra cac thng s hp l cua lnh.
Sau y la nhng ky hiu khi go lnh trong STEP 7:
- Trong LAD: ---> ngha la co th ni tip lnh khac (nhng khng bt buc).
- Trong LAD: --->> ngha la bt buc phai ni tip lnh khac.
- Tn bin nm trong ngoc kep (v du var) la bin toan cuc.
- Tn bin co ky t # ng trc la bin cuc b.
- Ky hiu ? hay ???? ngha la yu cu toan hang.
- Ky hiu << hoc >> yu cu hoc toan hang hoc ni lnh khac.
- Ky hiu >I cho bit o la u ra ENO.
- Ky t % trc tn bin ngha la bin trc tip trong IEC.
- Trong FBD, du tron nho u vao anh du ao (nh trong in t); mt gach
doc ngn (|) u vao anh du gia tr tc khc (u vao trc tip).

8.1 Cac lnh l gic vi bit


Cac cng tc:
Co 02 loai cng tc: cng tc thng m (Normally
Open, vit tt la NO) va cng tc thng ong (Normally
Closed, vit tt la NC).
i vi PLC, mi cng tc ai din cho trang thai mt
bit trong b nh d liu hay vung anh cua cac u vao, ra. Cng
tc thng m se ong (ON - ngha la cho dong in i qua) khi
bit bng 1 con cng tc thng ong se ong (ON) khi bit bng
0.
Trong LAD, cac lnh nay c biu din bng chnh cac
cng tc thng m va thng ong.
Trong FBD, cac cng tc thng m c biu din nh
cac u vao hoc ra cua cac khi chc nng AND hoc OR.
Cng tc thng ong c thm du ao (vong tron nho) u
vao tng ng.
Trong STL, cac cng tc thng m c s dung trong
cac lnh LOAD, AND hoc OR. Lnh LOAD ghi gia tr bit
c anh a ch bi toan hang cua lnh vao nh ngn xp,
nhng gia tr cu trong ngn xp b y xung mt bc (gia tr
di cung se mt). Cac lnh AND va OR thc hin phep toan l
Trang 4

Giao trnh PLC S7-200


gic And hay Or gia gia tr c tro n bi toan hang vi nh ngn xp, kt qua c
ghi vao nh ngn xp, nhng gia tr cu trong ngn xp b y xung mt bc. Hoan toan
tng t i vi cac cng tc thng ong, c s dung trong cac lnh LOAD NOT,
AND NOT va OR NOT (gia tr c tro n bi toan hang se b ao).

Cac cng tc trc tip (tc khc, tc thi):


Mi cng tc ai din cho trang thai mt u vao
(digital) vt ly (vung anh khng cp nht khi lnh nay c thc
hin).
Cng tc thng m trc tip (Normally Open
Immediate) ong khi u vao vt ly bng 1 va cng tc thng
ong trc tip (Normally Closed Immediate) ong khi u vao
vt ly bng 0.
Trong LAD, cac lnh nay c biu din bng cac cng
tc thng m va thng ong trc tip.
Trong FBD, cac cng tc nay c biu din nh cac
u vao cua cac khi vi ky hiu tc thi (mt gach doc ngn).
Cac cng tc thng ong tc thi cung c ky hiu thm bi
du ao (mt vong tron nho).
Trong STL, cac cng tc thng m tc khc c s
dung trong cac lnh LOAD IMMEDIATE, AND IMMEDIATE
hoc OR IMMEDIATE. Lnh LOAD IMMEDIATE ghi gia tr
u vao vt ly vao nh ngn xp, nhng gia tr cu trong ngn
xp b y xung mt bc (gia tr di cung se mt). Cac lnh AND IMMEDIATE va OR
IMMEDIATE thc hin phep toan l gic And hay Or gia gia tr u vao vt ly vi nh
ngn xp, kt qua c ghi vao nh ngn xp, nhng gia tr cu trong ngn xp b y
xung mt bc. Hoan toan tng t i vi cac cng tc thng ong tc khc, c s
dung trong cac lnh LOAD NOT IMMEDIATE, AND NOT IMMEDIATE va OR NOT
IMMEDIATE (gia tr u vao vt ly se b ao).

Trang 5

Giao trnh PLC S7-200

Lnh ao (Not):
Lnh ao thay i dong nng lng (Power Flow). Nu dong nng lng gp lnh
nay, no se b chn lai. Ngc lai nu pha trc lnh nay khng co dong nng lng, no se
tr thanh ngun cung cp dong nng lng.
Trong LAD, lnh nay c biu din nh mt cng tc.
Trong FBD, lnh ao khng co biu tng ring. No
c tch hp nh la u vao ao cua nhng khi chc nng
khac (vi vong tron nho u vao cua cac khi chc nng o).
Trong STL, lnh ao ao gia tr cua nh ngn xp: 0
thanh 1 va 1 thanh 0.
Lnh nay khng co toan hang.

Sn dng va sn m:
Cac lnh trn y u thuc nhom lnh cac cng tc, ghi
nhn trang thai cac bit d liu (0 hay 1), quen thuc vi khai
nim mc. Cac lnh v sn ghi nhn khng phai mc n
thun ma la s bin i mc.
Lnh sn dng (Positive Transition) cho dong nng
lng i qua trong khoang thi gian bng thi gian mt vong
quet khi u vao cua no co s thay i mc t 0 ln 1.
Lnh sn m (Negative Transition) cho dong nng
lng i qua trong khoang thi gian bng thi gian mt vong
quet khi u vao cua no co s thay i mc t 1 xung 0.
Trong LAD, cac lnh nay c biu din cung nh cac
cng tc.
Trong FBD, cac lnh nay c biu din bng cac khi
chc nng P va N.
Trong STL, lnh Edge Up, nu phat hin co s thay i
mc cua nh ngn xp t 0 ln 1, se t vao nh ngn xp gia

Trang 6

Giao trnh PLC S7-200


tr 1. Trong trng hp ngc lai, no t vao o gia tr 0. Tng t, lnh Edge Down, nu
phat hin co s thay i mc cua nh ngn xp t 1 xung 0, se t vao nh ngn xp
gia tr 1. Trong trng hp ngc lai, no cung t vao o gia tr 0.
Chu y: Theo cu truc hoat ng cua PLC, s thay i mc tt nhin ch c phat
hin gia cac vong quet lin tip. Do o mi lnh sn nay cn mt bit nh nh trang
thai u vao cua no vong quet k trc. V c tnh nay ma tng s lnh sn c s
dung trong mt chng trnh b han ch (do dung lng b nh danh cho chung co han).
V du trong mt chng trnh vi CPU 212 ch co th c s dung ti a 128 lnh sn.
Con s gii han nay i vi CPU 214 la 256.

Sau y la mt vai v du n gian v cach s dung cac lnh cng tc trn:

Trang 7

Giao trnh PLC S7-200

Lnh ra:
Gia tr bit c nh a ch bi toan hang cua lnh ra phan anh trang thai cua
dong nng lng (Power Flow) u vao lnh nay.

Trang 8

Giao trnh PLC S7-200


Trong LAD va FBD, lnh ra t gia tr bit c tro n
bi toan hang cua no bng gia tr dong nng lng u vao cua
lnh.
Trong STL, lnh ra sao chep gia tr nh ngn xp ra gia
tr bit c tro n bi toan hang cua lnh.

Lnh ra trc tip:


Gia tr u ra ri rac (digital) vt ly c nh a ch bi
toan hang cua lnh ra trc tip phan anh trang thai cua dong
nng lng (Power Flow) u vao lnh nay.
Trong LAD va FBD, lnh ra trc tip t ng thi gia
tr u ra vt ly c tro n bi toan hang cua no va bit anh cua
u ra nay bng gia tr dong nng lng u vao cua lnh.
iu o khac vi lnh ra thng thng ch lnh ra thng
thng ch ghi gia tr vao bit anh cua u ra.
Trong STL, lnh ra trc tip sao chep gia tr nh ngn
xp ra ng thi gia tr u ra vt ly c tro n bi toan hang
cua lnh va bit anh cua u ra nay.

Trang 9

Giao trnh PLC S7-200


Cac lnh ghi xoa gia tr tip im:
Cac lnh SET va RESET t mt s cac bit lin tip
trong b nh d liu thanh 1 (Set) hay 0 (Reset). S lng cac
bit c nh bi toan hang [N] va bt u t bit c nh a
ch bi toan hang [bit].
S lng cac bit co th Set hoc Reset nm trong khoang
t 1 n 255.
Trong trng hp s dung lnh Reset vi cac bit nm
trong nhng vung T hay C, cac b nh thi hay b m tng
ng se b reset. Ngha la bit trang thai cua chung c a v 0
va s ang m cung b xoa (se co gia tr 0).
Nhng li co th c gy nn bi cac lnh nay (ENO =
0):
+ Bit c bit SM4.3 = 1: li Run - Time.
+ Li 0006: a ch gian tip.
+ Li 0091: toan hang vt qua gii han cho phep.

Cac lnh ghi xoa gia tr tip im trc tip:


Cac lnh SET IMMEDIATE va RESET IMMEDIATE
t mt s cac u ra ri rac (digital) vt ly lin tip thanh 1
(Set) hay 0 (Reset). S lng cac u ra c nh bi toan hang
[N] va bt u t u ra c nh a ch bi toan hang [bit].
S lng cac u ra vt ly co th Set hoc Reset nm
trong khoang t 1 n 128.
Ky t I trong nhng lnh nay (Immediate) noi ln tnh
tc thi. Cac lnh nay ghi gia tr mi ra cac u ra vt ly ng
thi ghi ca vao cac gia tr anh cua chung. iu o khac vi
nhng lnh Set va Reset thng thng ch ghi gia tr mi vao
vung anh cua cac u ra.
Nhng li co th c gy nn bi cac lnh nay (ENO =
0):
+ Bit c bit SM4.3 = 1: li Run - Time.
+ Li 0006: a ch gian tip.
+ Li 0091: toan hang vt qua gii han cho phep.

Trang 10

Giao trnh PLC S7-200

Lnh khng lam g ca:


Lnh khng lam g (No Operation) khng tac ng n
chng trnh. Mc du no cung co mt toan hang [N] dang Byte,
la mt hng s trong khoang t 1 n 255.

Mt s v du v cac lnh ra:

Trang 11

Giao trnh PLC S7-200

8.2 Cac lnh so sanh


So sanh Byte:
Lnh so sanh Byte dung so sanh 02 gia tr dang byte
c nh a ch bi hai toan hang u vao cua lnh: [IN1]
va [IN2]. Co tt ca 06 phep so sanh co th c thc hin:
[IN1] = [IN2], [IN1] >= [IN2], [IN1] <= [IN2], [IN1] > [IN2],
[IN1] < [IN2], [IN1] <> [IN2].
Cac byte c em so sanh la nhng gia tr khng du.
Trong LAD, lnh nay co dang mt cng tc va cng tc
o ong (ON) khi iu kin em so sanh co gia tr ung.
Trong FBD, u ra se co gia tr 1 nu iu kin em so
sanh la ung.
Trong STL, lnh c thc hin se ghi gia tr 1 vao nh
ngn xp (vi nhng lnh Load) hoc thc hin phep toan l
gic AND hay OR (tuy theo lnh cu th) gia tr 1 vi nh ngn
xp nu iu kin so sanh ung.

Trang 12

Giao trnh PLC S7-200

So sanh s nguyn (Integer):


Lnh so sanh s nguyn dung so sanh 02 gia tr dang
Integer c nh a ch bi hai toan hang u vao cua lnh:
[IN1] va [IN2]. Co tt ca 06 phep so sanh co th c thc
hin: [IN1] = [IN2], [IN1] >= [IN2], [IN1] <= [IN2], [IN1] >
[IN2], [IN1] < [IN2], [IN1] <> [IN2].
Cac s nguyn c em so sanh la nhng gia tr co
du: 16#7FFF > 16#8000.
Trong LAD, lnh nay co dang mt cng tc va cng tc
o ong (ON) khi iu kin em so sanh co gia tr ung.
Trong FBD, u ra se co gia tr 1 nu iu kin em so
sanh la ung.
Trong STL, lnh c thc hin se ghi gia tr 1 vao nh
ngn xp (vi nhng lnh Load) hoc thc hin phep toan l
gic AND hay OR (tuy theo lnh cu th) gia tr 1 vi nh ngn
xp nu iu kin so sanh ung.

Trang 13

Giao trnh PLC S7-200

So sanh t kep (Double Word):


Lnh so sanh t kep dung so sanh 02 gia tr dang
Double Word c nh a ch bi hai toan hang u vao
cua lnh: [IN1] va [IN2]. Co tt ca 06 phep so sanh co th c
thc hin: [IN1] = [IN2], [IN1] >= [IN2], [IN1] <= [IN2],
[IN1] > [IN2], [IN1] < [IN2], [IN1] <> [IN2].
Cac gia tr t kep c em so sanh la nhng gia tr co
du: 16#7FFFFFFF > 16#80000000.
Trong LAD, lnh nay co dang mt cng tc va cng tc
o ong (ON) khi iu kin em so sanh co gia tr ung.
Trong FBD, u ra se co gia tr 1 nu iu kin em so
sanh la ung.
Trong STL, lnh c thc hin se ghi gia tr 1 vao nh
ngn xp (vi nhng lnh Load) hoc thc hin phep toan l
gic AND hay OR (tuy theo lnh cu th) gia tr 1 vi nh ngn
xp nu iu kin so sanh ung.

Trang 14

Giao trnh PLC S7-200

So sanh s thc (Real):


Lnh so sanh s thc dung so sanh 02 gia tr dang
Real c nh a ch bi hai toan hang u vao cua lnh:
[IN1] va [IN2]. Co tt ca 06 phep so sanh co th c thc
hin: [IN1] = [IN2], [IN1] >= [IN2], [IN1] <= [IN2], [IN1] >
[IN2], [IN1] < [IN2], [IN1] <> [IN2].
Cac s thc c em so sanh la nhng gia tr co du
theo kiu du phy ng.
Trong LAD, lnh nay co dang mt cng tc va cng tc
o ong (ON) khi iu kin em so sanh co gia tr ung.
Trong FBD, u ra se co gia tr 1 nu iu kin em so
sanh la ung.
Trong STL, lnh c thc hin se ghi gia tr 1 vao nh
ngn xp (vi nhng lnh Load) hoc thc hin phep toan l
gic AND hay OR (tuy theo lnh cu th) gia tr 1 vi nh ngn
xp nu iu kin so sanh ung.

V du s dung lnh so sanh:

Trang 15

Giao trnh PLC S7-200

8.3 Cac lnh lam vic vi cac b nh thi


SIMATIC S7-200 co 03 loai b nh thi:
- B ong tr (On - Delay Timer).
- B ong tr co nh (Retentive On - Delay Timer).
- B ngt tr (Off - Delay Timer).
loai th ba khng co trong cac CPU 212 va 214.
Cac b ong tr va ong tr co nh bt u m thi
gian khi co u vao EN (Enable) mc 1 (ON). Luc gia tr m
c ln hn hoc bng gia tr t trc tai u vao PT (Preset
Time) th bit trang thai se c t bng 1 (ON). iu khac
nhau gia hai loai b ong tr nay la: b ong tr bnh thng
se b reset (ca gia tr ang m ln bit trang thai u b xoa v
0) khi u vao EN bng 0; trong khi o b nh thi co nh lu
lai gia tr cua no khi u vao EN bng 0 va tip tuc m nu
u vao EN lai bng 1. Nh vy ta co th dung loai co nh
cng thi gian nhng luc u vao EN bng 1. Loai b nh thi
nay co th reset (xoa gia tr ang m v 0) bng lnh R
(Reset).
Ca hai loai b ong tr vn tip tuc m thi gian ngay
ca sau khi a at n gia tr t trc PT va ch dng m khi
Trang 16

Giao trnh PLC S7-200


at gia tr ti a 32767 (16#7FFF).
B ngt tr dung a gia tr u ra (bit trang thai) v 0 (OFF) tr mt khoang
thi gian sau khi u vao (EN) i v 0. Khi u vao EN c t bng 1 (ON) th bit
trang thai cua b ngt tr cung bng 1 ngay luc o ng thi gia tr m cua no b xoa v
0. Khi u vao EN v 0, b nh thi bt u m va m cho n khi at gia tr t trc
PT. Luc o bit trang thai cua b ngt tr se v 0 ng thi no cung ngng m.
Nu u vao EN ch bng 0 trong khoang thi gian ngn hn thi gian c t
ri quay lai bng 1 th bit trang thai cua b nh thi vn gi nguyn bng 1. B ngt tr
ch bt u m khi co sn thay i t 1 thanh 0 u vao EN.
Nu b ngt tr trong vung mt SCR (Sequence Control Relay) va vung SCR o
khng c kch hoat th gia tr m cua no c xoa v 0, bit trang thai cung bng 0
(OFF) va b nh thi khng m. Khai nim vung SCR se c nh ngha phn sau
cua tai liu nay (xem phn 8.10).

Trn y chung ta thng noi n gia tr ang m cua cac b nh thi, ma cac
b nh thi th lai m thi gian. Thc t, thi gian tr c tnh nh la tch cua s ang
m vi mt hng s thi gian (base time), hng s thi gian nay con c goi la phn
giai cua cua b nh thi.
Cac b nh thi trong S7-200 (ong tr, ong tr co nh va ngt tr) bao gm 03
nhom vi 03 phn giai khac nhau: 1ms, 10 ms va 100 ms. Mi b nh thi (c nh
a ch trong vung T) co mt phn giai xac nh theo bang sau:

Chu y nhng b nh thi co nh co a ch c qui nh ring. Nhng b nh


thi con lai (khng nh) co th c khai bao nh la b ong tr hoc ngt tr, nhng
khng th la ca hai. Ngha la khng th co, v du TON 33 va TOF 33 ng thi.
Trang 17

Giao trnh PLC S7-200


Bang sau tom tt nhng c im hoat ng cua ba loai b nh thi nu trn:

Lnh Reset (R) co th c s dung reset bt ky b nh thi nao. Cac b nh


thi co nh (loai TONR) ch co th reset bng lnh nay. Cac b nh thi sau khi reset co
bit trang thai cung nh gia tr m u c xoa v 0. Cac b ngt tr (TOF) ch bt u
m khi co s thay i t 1 xung 0 u vao IN.
Cac b nh thi co phn giai khac nhau co cach hoat ng cung khac nhau.
Chung ta xem xet ky hn v vn nay:
B nh thi vi phn giai 1 ms
B nh thi loai nay m s khoang thi gian 1 ms tri qua k t khi no c
kch hoat. B nh thi vi phn giai 1 ms c kch hoat bng lnh khai bao cua no
nhng sau o no c cp nht (bit trang thai cung nh gia tr m) mi giy mt ln mt
cach c lp khng phu thuc vao vong quet chng trnh. Noi mt cach khac, mt b
nh thi loai nay co th c cp nht nhiu ln trong mt vong quet nu nh thi gian
vong quet ln hn 1 ms.
Bi v mt b nh thi vi phn giai 1 ms co th c kch hoat bt ky mt
thi im nao trong vong 1 ms nn ta nn t gia tr t trc ln hn 1 n v so vi gia
tr yu cu cn m. V du m khoang thi gian 56 ms, ta thng t gia tr t trc
bng 57.
B nh thi vi phn giai 10 ms
B nh thi loai nay m s khoang thi gian 10 ms tri qua k t khi no c
kch hoat. B nh thi vi phn giai 10 ms c kch hoat bng lnh khai bao cua no
va sau o no c cp nht (bit trang thai cung nh gia tr m) mi vong quet mt ln
ngay u mi vong quet bng cach cng vao gia tr ang m cua no s khoang thi gian
10 ms tri qua k t u vong quet trc. Noi mt cach khac, gia tr ang m cua b
nh thi loai nay gi nguyn khng i trong sut thi gian mt vong quet.

Trang 18

Giao trnh PLC S7-200


Bi v mt b nh thi vi phn giai 10 ms co th c kch hoat bt ky mt
thi im nao trong vong 10 ms nn ta nn t gia tr t trc ln hn 1 n v so vi gia
tr yu cu cn m. V du m khoang thi gian 140 ms, ta thng t gia tr t trc
bng 15.
B nh thi vi phn giai 100 ms
B nh thi loai nay tnh s khoang thi gian 100 ms tri qua k t khi no c
cp nht ln cui. Lnh khai bao b nh thi vi phn giai 100 ms cp nht bit trang
thai cung nh gia tr m cua no bng cach cng vao gia tr ang m cua no s khoang
thi gian 100 ms tri qua k t vong quet trc.
Nh vy, gia tr ang m cua b nh thi loai nay ch c cp nht khi co lnh
khai bao no thc hin. V th nu b nh thi vi phn giai 100 ms a c kch hoat
nhng lnh khai bao no khng c thc hin trong mi vong quet th no co th khng
c cp nht kp thi va m thiu thi gian. Ngc lai nu lnh khai bao b nh thi
c thc hin nhiu ln trong mt vong quet th no co th m d thi gian do mt s
khoang thi gian 100 ms c cng nhiu ln. Tom lai nn s dung b nh thi loai nay
vi lnh khai bao thc hin chnh xac mi vong quet mt ln.
Bi v mt b nh thi vi phn giai 100 ms co th c khi ng bt ky
mt thi im nao trong vong 100 ms nn ta nn t gia tr t trc ln hn 1 n v so
vi gia tr yu cu cn m. V du m khoang thi gian 2100 ms, ta thng t gia tr
t trc bng 22.
hiu thm v c ch cp nht cua cac b nh thi vi nhng phn giai khac
nhau, chung ta xem xet v du sau:
Tao b nh thi 3 giy vi ln lt ba b nh thi khac nhau (xem chng trnh
kem theo):
u tin b nh thi vi phn giai 1 ms c s dung (T32, gia tr t trc 300).
Q0.0 se co gia tr bng 1 (ON) trong thi gian mt vong quet khi va ch khi nao thi
im cp nht cua b nh thi ma gia tr m vt qua gia tr t trc ri vao ung
gia luc thc hin hai lnh nay. Ngha la sau khi lnh trc c thc hin nhng phai
trc khi thc hin lnh sau.
Nu s dung b nh thi vi phn giai 10 ms (T33, gia tr t trc 30), Q0.0
khng bao gi co gia tr 1 (lun lun OFF).
Trng hp cui cung s dung b nh thi vi phn giai 100 ms (T37, gia tr t
trc bng 3). Q0.0 lun lun co gia tr bng 1 (ON) trong ung thi gian mt vong
quet.
am bao chc chn Q0.0 se co gia tr 1 (ON) trong thi gian mt vong quet, ta
phai dung cng tc thng ong Q0.0 kch hoat cac b nh thi thay v dung cng tc
thng ong vi bit trang thai cua no.
Trang 19

Giao trnh PLC S7-200

Sau y la nhng v du v cac loai b nh thi:

Trang 20

Giao trnh PLC S7-200

Trang 21

Giao trnh PLC S7-200

Trang 22

Giao trnh PLC S7-200


8.4 Cac lnh lam vic vi cac b m
S7-200 co ba loai b m: b m ln (Count Up), b
m xung (Count Down) va loai b m co th va m ln
va m xung (Count Up / Down).
B m ln m cho n gia tr ti a cua no (32767)
mi khi co sn ln u vao m ln (CU). Khi gia tr m
(Cxxx) ln hn hoc bng gia tr t trc (PV) th bit trang
thai (Cxxx) se co gia tr 1 (ON). B m co th b xoa (reset)
bi mc 1 u vao reset (R), luc o ca gia tr m ln bit
trang thai se b xoa v 0.
B m xung m t gia tr t trc (PV) mi khi co
sn ln u vao m xung (CD). Khi gia tr m (Cxxx)
bng 0, bit trang thai (Cxxx) se bng 1 ng thi b m ngng
m. Mc cao u vao LD xoa bit trang thai v 0 va tai gia tr
t trc PV vao gia tr m.
B m va m ln va m xung m ln khi co
sn ln u vao m ln (CU) va m xung khi co sn ln
u vao m xung (CD). Khi gia tr m (Cxxx) ln hn
hoc bng gia tr t trc (PV) th bit trang thai (Cxxx) se co
gia tr 1 (ON). B m co th b xoa (reset) bi mc 1 u
vao reset (R), luc o ca gia tr m ln bit trang thai se b xoa
v 0.
S cac b m co trong S7-200: C0 n C255. Chu y CPU 212 ch co 64 (C0 C63), CPU 214 co 128 (C0 - C127) va mi b m a c xac nh c nh la b m
tin hay b m co th va m tin va m lui (khng co b m lui). Trong CPU 221,
222 va 224 mi b m c xac nh loai tuy theo lnh khai bao nhng khng th khai
bao cac b m loai khac nhau vi cung mt a ch (trong vung C).
Trong STL, u vao reset (R) cua b m tin la bit nh cua ngn xp va u vao
m cua no (CU) la bit th hai cua ngn xp.
Trong STL, u vao tai (LD) cua b m lui la bit nh cua ngn xp va u vao
m cua no (CD) la bit th hai cua ngn xp.
Trong STL, u vao reset (R) cua b m va m tin va m lui la bit nh cua
ngn xp, u vao m lui cua no (CD) la bit th hai cua ngn xp va u vao m tin
cua no (CU) la bit th ba cua ngn xp.

Trang 23

Giao trnh PLC S7-200

Cac b m con co th b reset bi lnh Reset.


B m va tin va lui khi m n gia tr ti a (32767) ma tip tuc m ln thi
s m se nhay sang gia tr ti thiu (-32768) va tip tuc m bnh thng. Tng t, nu
no m lui khi a gia tr nho nht (-32768) th s m se nhay thanh gia tr ln nht
(32767).
Sau y la nhng v du s dung b m:

Trang 24

Giao trnh PLC S7-200

8.5 Cac lnh dch chuyn nh


Cac lnh dch chuyn mt Byte, mt t n (Word), mt t kep (Double Word)
hay mt s thc (Real):
Trang 25

Giao trnh PLC S7-200


Lnh dch chuyn mt Byte, Move Byte, sao chep ni
dung nh kch thc mt byte c nh a ch u vao IN
ln nh kch thc mt byte c nh a ch u ra OUT.
Ni dung byte nh a ch [IN] khng thay i.
Lnh dch chuyn mt T n, Move Word, sao chep
ni dung nh kch thc mt word c nh a ch u
vao IN ln nh kch thc mt word c nh a ch u
ra OUT. Ni dung t n a ch [IN] khng thay i.
Lnh dch chuyn mt T kep, Move Double Word, sao
chep ni dung nh kch thc mt t kep c nh a ch
u vao IN ln nh kch thc mt t kep c nh a ch
u ra OUT. Ni dung t kep a ch [IN] khng thay i.
Lnh dch chuyn mt S thc, Move Real, sao chep s
thc kch thc 32 bit c nh a ch u vao IN ln s
thc kch thc 32 bit c nh a ch u ra OUT. S thc
a ch [IN] khng thay i.
Nhng li co th c gy nn bi cac lnh nay (ENO =
0):
+ Bit c bit SM4.3 = 1: li Run - Time.
+ Li 0006: a ch gian tip.

Cac lnh dch chuyn mt khi cac byte, mt khi cac t n (Word) va mt khi
cac t kep (Double Word):

Trang 26

Giao trnh PLC S7-200


Lnh dch chuyn mt khi cac byte, Block Move Byte,
sao chep ni dung mt s cac nh lin tip (xac nh bi toan
hang u vao N), mi kch thc mt byte vi byte u tin
c nh a ch u vao IN ln khi cac nh lin tip kch
thc mi nh mt byte va byte u tin c nh a ch
u ra OUT. S lng cac byte co th sao chep nm trong
khoang t 1 n 255.
Lnh dch chuyn mt khi cac t n, Block Move
Word, sao chep ni dung mt s cac nh lin tip (xac nh
bi toan hang u vao N), mi kch thc mt word vi
word u tin c nh a ch u vao IN ln khi cac
nh lin tip kch thc mi nh mt word va word u tin
c nh a ch u ra OUT. S lng cac word co th sao
chep nm trong khoang t 1 n 255.
Lnh dch chuyn mt khi cac t kep, Block Move
Double Word, sao chep ni dung mt s cac nh lin tip
(xac nh bi toan hang u vao N), mi kch thc mt t
kep vi t kep u tin c nh a ch u vao IN ln khi
cac nh lin tip kch thc mi nh mt t kep va t kep
u tin c nh a ch u ra OUT. S lng cac t kep
co th sao chep nm trong khoang t 1 n 255.
Nhng li co th c gy nn bi cac lnh nay (ENO = 0):
+ Bit c bit SM4.3 = 1: li Run - Time.
+ Li 0006: a ch gian tip.
+ Li 0091: toan hang vt qua gii han cho phep.

Trang 27

Giao trnh PLC S7-200


V du cach s dung lnh dch chuyn mt khi d liu:

Lnh SWAP:
Lnh nay (Swap Bytes) co toan hang la mt t n
(Word) c nh a ch bi u vao IN. Lnh Swap trao i
ni dung hai byte nh cua mt t n: byte cao thanh byte thp
va byte thp thanh byte cao. Kt qua c ghi vao chnh t n
la toan hang cua lnh.
Nhng li co th c gy nn bi lnh nay (ENO = 0):
+ Bit c bit SM4.3 = 1: li Run - Time.
+ Li 0006: a ch gian tip.

V du v lnh dch chuyn va lnh Swap:

Trang 28

Giao trnh PLC S7-200

Lnh MEMORY FILL:

Trang 29

Giao trnh PLC S7-200


Lnh nay in y mt khoang nh bao gm mt s cac
t n lin tip (c xac nh bi u vao N) vi t n
(Word) u tin c nh a ch bi u ra OUT bng t n
c nh a ch u vao IN. Kch thc khoang nh co th
nm trong khoang t 1 n 255 t n.
Nhng li co th c gy nn bi lnh nay (ENO = 0):
+ Bit c bit SM4.3 = 1: li Run - Time.
+ Li 0006: a ch gian tip.
+ Li 0091: toan hang vt qua gii han cho phep.

V du:

8.6 Cac lnh toan s hoc


Cac lnh Cng, Tr hai s nguyn (Integer):

Trang 30

Giao trnh PLC S7-200


Cac lnh nay cng (Add) hay tr (Subtract) hai s
nguyn c nh a ch cac u vao IN1 va IN2, kt qua lu
vao s nguyn c nh a ch bi u ra OUT.
Trong LAD va FBD: [IN1] + [IN2] = [OUT]
[IN1] - [IN2] = [OUT]
Trong STL:
[IN1] + [OUT] = [OUT]
[OUT] - [IN1] = [OUT]
Nhng li co th c gy nn bi lnh nay (ENO = 0):
+ Bit c bit SM4.3 = 1: li Run - Time.
+ Li 0006: a ch gian tip.
+ Bit c bit SM1.1 = 1: li tran (Overflow).
Nhng bit nh c bit co ni dung b anh hng bi lnh nay:
+ SM1.0 (Zero): bng 1 nu kt qua bng 0.
+ SM1.1 (Overflow): bng 1 nu kt qua b tran.
+ SM1.2 (Negative): bng 1 nu kt qua la s m.

Cac lnh Cng, Tr hai s nguyn dai (Double Integer):


Cac lnh nay cng (Add) hay tr (Subtract) hai s
nguyn 32 bit c nh a ch cac u vao IN1 va IN2, kt
qua lu vao s nguyn 32 bit c nh a ch bi u ra OUT.
Trong LAD va FBD: [IN1] + [IN2] = [OUT]
[IN1] - [IN2] = [OUT]
Trong STL:
[IN1] + [OUT] = [OUT]
[OUT] - [IN1] = [OUT]
Nhng li co th c gy nn bi lnh nay (ENO = 0):
+ Bit c bit SM4.3 = 1: li Run - Time.
+ Li 0006: a ch gian tip.
+ Bit c bit SM1.1 = 1: li tran (Overflow).
Nhng bit nh c bit co ni dung b anh hng bi lnh nay:
+ SM1.0 (Zero): bng 1 nu kt qua bng 0.
+ SM1.1 (Overflow): bng 1 nu kt qua b tran.
+ SM1.2 (Negative): bng 1 nu kt qua la s m.

Trang 31

Giao trnh PLC S7-200

Cac lnh Nhn, Chia hai s nguyn (Integer):


Cac lnh nay nhn (Multiply) hay chia (Divide) hai s
nguyn 16 bit c nh a ch cac u vao IN1 va IN2, kt
qua lu vao s nguyn c nh a ch bi u ra OUT. Trong
phep chia, s d b bo qua. Bit bao tran se thanh 1 nu kt qua
ln hn mt s nguyn 16 bit. Nhng lnh nay khng co trong
cac CPU 212, 214.
Trong LAD va FBD: [IN1] * [IN2] = [OUT]
[IN1] / [IN2] = [OUT]
Trong STL:
[IN1] * [OUT] = [OUT]
[OUT] / [IN1] = [OUT]
Nhng li co th c gy nn bi lnh nay (ENO = 0):
+ Bit c bit SM4.3 = 1: li Run - Time.
+ Li 0006: a ch gian tip.
+ Bit c bit SM1.1 = 1: li tran (Overflow).
+ Bit c bit SM1.3 = 1: li chia cho 0 (Divide-byzero).
Nhng bit nh c bit co ni dung b anh hng bi lnh nay:
+ SM1.0 (Zero): bng 1 nu kt qua bng 0.
+ SM1.1 (Overflow): bng 1 nu kt qua b tran.
+ SM1.2 (Negative): bng 1 nu kt qua la s m.
+ SM1.3 (Divide-by-zero): bng 1 nu s chia bng 0.

Trong trng hp bit SM1.1 (Overflow) bng 1, kt qua se khng c ghi va cac
bit c bit khac lin quan n cac phep toan (Zero, Negative, ...) u c xoa v 0.
Trong trng hp bit SM1.3 (Divide-by-zero) bng 1, cac bit c bit khac lin
quan n cac phep toan (Zero, Negative, ...) u c gi nguyn khng thay i va cac
toan hang u vao cung khng i.

Trang 32

Giao trnh PLC S7-200


Trong cac trng hp con lai, cac bit c bit noi trn se co gia tr phan anh trang
thai cua kt qua theo tnh nng cua chung.
Cac lnh Nhn, Chia hai s nguyn dai (Double Integer):
Cac lnh nay nhn (Multiply) hay chia (Divide) hai s
nguyn 32 bit c nh a ch cac u vao IN1 va IN2, kt
qua lu vao s nguyn 32 bit c nh a ch bi u ra OUT.
Trong phep chia, s d b bo qua. Bit bao tran se thanh 1 nu
kt qua ln hn mt s nguyn 32 bit. Nhng lnh nay khng
co trong cac CPU 212, 214.
Trong LAD va FBD: [IN1] * [IN2] = [OUT]
[IN1] / [IN2] = [OUT]
Trong STL:
[IN1] * [OUT] = [OUT]
[OUT] / [IN1] = [OUT]
Nhng li co th c gy nn bi lnh nay (ENO = 0):
+ Bit c bit SM4.3 = 1: li Run - Time.
+ Li 0006: a ch gian tip.
+ Bit c bit SM1.1 = 1: li tran (Overflow).
+ Bit c bit SM1.3 = 1: li chia cho 0 (Divide-byzero).
Nhng bit nh c bit co ni dung b anh hng bi lnh nay:
+ SM1.0 (Zero): bng 1 nu kt qua bng 0.
+ SM1.1 (Overflow): bng 1 nu kt qua b tran.
+ SM1.2 (Negative): bng 1 nu kt qua la s m.
+ SM1.3 (Divide-by-zero): bng 1 nu s chia bng 0.
Trong trng hp bit SM1.1 (Overflow) bng 1, kt qua se khng c ghi va cac
bit c bit khac lin quan n cac phep toan (Zero, Negative, ...) u c xoa v 0.
Trong trng hp bit SM1.3 (Divide-by-zero) bng 1, cac bit c bit khac lin
quan n cac phep toan (Zero, Negative, ...) u c gi nguyn khng thay i va cac
toan hang u vao cung khng i.

Cac lnh Nhn, Chia hai s nguyn (Integer) va ghi kt qua vao s nguyn dai
(Double Integer):

Trang 33

Giao trnh PLC S7-200


Cac lnh nay nhn (Multiply) hay chia (Divide) hai s
nguyn 16 bit c nh a ch cac u vao IN1 va IN2, kt
qua lu vao s nguyn 32 bit c nh a ch bi u ra OUT.
Trong phep chia, kt qua bao gm s d 16 bit cao va thng
s 16 bit thp.
Trong LAD va FBD: [IN1] * [IN2] = [OUT]
[IN1] / [IN2] = [OUT]
Trong STL:
[IN1] * [OUT] = [OUT]
[OUT] / [IN1] = [OUT]
Trong STL, lnh MUL ch s dung 16 bit thp cua t
kep [OUT] lam s nhn. Tng t lnh DIV cung ch s dung
16 bit thp cua t kep [OUT] lam s b chia.
Nhng li co th c gy nn bi lnh nay (ENO = 0):
+ Bit c bit SM4.3 = 1: li Run - Time.
+ Li 0006: a ch gian tip.
+ Bit c bit SM1.1 = 1: li tran (Overflow).
+ Bit c bit SM1.3 = 1: li chia cho 0 (Divide-by-zero).
Nhng bit nh c bit co ni dung b anh hng bi lnh nay:
+ SM1.0 (Zero): bng 1 nu kt qua bng 0.
+ SM1.1 (Overflow): bng 1 nu kt qua b tran.
+ SM1.2 (Negative): bng 1 nu kt qua la s m.
+ SM1.3 (Divide-by-zero): bng 1 nu s chia bng 0.
Trong trng hp bit SM1.3 (Divide-by-zero) bng 1, cac bit c bit khac lin
quan n cac phep toan (Zero, Negative, ...) u c gi nguyn khng thay i va cac
toan hang u vao cung khng i.

V du v cac lnh s hoc:

Trang 34

Giao trnh PLC S7-200

Cac lnh tng giam mt Byte mt n v:

Trang 35

Giao trnh PLC S7-200


Cac lnh nay thm vao hay bt i mt n v t mt
Byte c nh a ch u vao IN, kt qua lu vao Byte c
nh a ch bi u ra OUT.
Cac s trong Byte toan hang c xem la cac s khng
du.
Trong LAD va FBD: [IN] + 1 = [OUT]
[IN] - 1 = [OUT]
Trong STL:
[OUT] + 1 = [OUT]
[OUT] - 1 = [OUT]
Nhng li co th c gy nn bi lnh nay (ENO = 0):
+ Bit c bit SM4.3 = 1: li Run - Time.
+ Li 0006: a ch gian tip.
+ Bit c bit SM1.1 = 1: li tran (Overflow).
Nhng bit nh c bit co ni dung b anh hng bi lnh nay:
+ SM1.0 (Zero): bng 1 nu kt qua bng 0.
+ SM1.1 (Overflow): bng 1 nu kt qua b tran.

Cac lnh tng giam mt t n mt n v:


Cac lnh nay thm vao hay bt i mt n v t mt
Word c nh a ch u vao IN, kt qua lu vao Word
c nh a ch bi u ra OUT.
Cac s trong t n toan hang c xem la cac s co
du (16#7FFF > 16#8000).
Trong LAD va FBD: [IN] + 1 = [OUT]
[IN] - 1 = [OUT]
Trong STL:
[OUT] + 1 = [OUT]
[OUT] - 1 = [OUT]
Nhng li co th c gy nn bi lnh nay (ENO = 0):
+ Bit c bit SM4.3 = 1: li Run - Time.
+ Li 0006: a ch gian tip.
+ Bit c bit SM1.1 = 1: li tran (Overflow).
Nhng bit nh c bit co ni dung b anh hng bi lnh nay:
+ SM1.0 (Zero): bng 1 nu kt qua bng 0.
+ SM1.1 (Overflow): bng 1 nu kt qua b tran.
Trang 36

Giao trnh PLC S7-200


+ SM1.2 (Negative): bng 1 nu kt qua la s m.

Cac lnh tng giam mt t kep mt n v:


Cac lnh nay thm vao hay bt i mt n v t mt t
kep c nh a ch u vao IN, kt qua lu vao t kep c
nh a ch bi u ra OUT.
Cac s trong t kep toan hang c xem la cac s co
du (16#7FFFFFFF > 16#80000000).
Trong LAD va FBD: [IN] + 1 = [OUT]
[IN] - 1 = [OUT]
Trong STL:
[OUT] + 1 = [OUT]
[OUT] - 1 = [OUT]
Nhng li co th c gy nn bi lnh nay (ENO = 0):
+ Bit c bit SM4.3 = 1: li Run - Time.
+ Li 0006: a ch gian tip.
+ Bit c bit SM1.1 = 1: li tran (Overflow).
Nhng bit nh c bit co ni dung b anh hng bi lnh nay:
+ SM1.0 (Zero): bng 1 nu kt qua bng 0.
+ SM1.1 (Overflow): bng 1 nu kt qua b tran.
+ SM1.2 (Negative): bng 1 nu kt qua la s m.

V du:

Trang 37

Giao trnh PLC S7-200

8.7 Cac lnh toan s thc


Cac lnh cng tr hai s thc:
Cac lnh nay cng (Add) hay tr (Subtract) hai s thc
32 bit c nh a ch cac u vao IN1 va IN2, kt qua lu
vao s thc 32 bit c nh a ch bi u ra OUT. Nhng
lnh nay khng co trong CPU 212.
Trong LAD va FBD: [IN1] + [IN2] = [OUT]
[IN1] - [IN2] = [OUT]
Trong STL:
[OUT] + [IN1] = [OUT]
[OUT] - [IN1] = [OUT]
Nhng li co th c gy nn bi lnh nay (ENO = 0):
+ Bit c bit SM4.3 = 1: li Run - Time.
+ Li 0006: a ch gian tip.
+ Bit c bit SM1.1 = 1: li tran (Overflow).
Nhng bit nh c bit co ni dung b anh hng bi

Trang 38

Giao trnh PLC S7-200


lnh nay:
+ SM1.0 (Zero): bng 1 nu kt qua bng 0.
+ SM1.1 (Overflow): bng 1 nu kt qua b tran.
+ SM1.2 (Negative): bng 1 nu kt qua la s m.
Bit c bit SM1.1 dung xac nh li tran hoc gia tr khng hp l. Nu
SM1.1 = 1, gia tr cac bit SM1.0, SM1.2 khng co y ngha va cac gia tr u vao khng
thay i. Nu SM1.1 = 0, phep toan hoan thanh vi kt qua hp l va cac bit SM1.0,
SM1.2 phan anh trang thai kt qua theo ung chc nng cua chung.

Cac s thc c biu din bng 32 bit di dang du phy ng theo chun
ANSI / IEEE 754 - 1985.

Cac lnh nhn chia hai s thc:


Cac lnh nay nhn (Multiply) hay chia (Divide) hai s
thc 32 bit c nh a ch cac u vao IN1 va IN2, kt qua
lu vao s thc 32 bit c nh a ch bi u ra OUT. Nhng
lnh nay khng co trong CPU 212.
Trong LAD va FBD: [IN1] * [IN2] = [OUT]
[IN1] / [IN2] = [OUT]
Trong STL:
[OUT] * [IN1] = [OUT]
[OUT] / [IN1] = [OUT]
Nhng li co th c gy nn bi lnh nay (ENO = 0):
+ Bit c bit SM4.3 = 1: li Run - Time.
+ Li 0006: a ch gian tip.
+ Bit c bit SM1.1 = 1: li tran (Overflow) hoc gia
tr u vao khng hp l (Invalid value).
Nhng bit nh c bit co ni dung b anh hng bi lnh nay:
+ SM1.0 (Zero): bng 1 nu kt qua bng 0.
+ SM1.1 (Overflow): bng 1 nu kt qua b tran.
+ SM1.2 (Negative): bng 1 nu kt qua la s m.
+ SM1.3 (Divide-by-zero): bng 1 nu s chia bng 0.
Trong trng hp bit SM1.3 (Divide-by-zero) bng 1, cac bit c bit khac lin
quan n cac phep toan (Zero, Negative, ...) u c gi nguyn khng thay i va cac
toan hang u vao cung khng i. Bit c bit SM1.1 dung xac nh li tran hoc
Trang 39

Giao trnh PLC S7-200


gia tr khng hp l. Nu SM1.1 = 1, gia tr cac bit SM1.0, SM1.2 khng co y ngha va
cac gia tr u vao khng thay i. Nu SM1.1 = 0 ng thi SM1.3 = 0 , phep toan hoan
thanh vi kt qua hp l va cac bit SM1.0, SM1.2 phan anh trang thai kt qua theo ung
chc nng cua chung.

Cac s thc c biu din bng 32 bit di dang du phy ng theo chun
ANSI / IEEE 754 - 1985.
V du s dung cac phep toan s thc:

Trang 40

Giao trnh PLC S7-200

Vong lp PID:
Lnh nay tnh toan vong lp PID (PID Loop) theo cac
u vao va nhng thng s t bang c nh a ch bi TBL.
Nhng li co th c gy nn bi lnh nay (ENO = 0):
+ Bit c bit SM4.3 = 1: li Run - Time.
+ Li 0006: a ch gian tip.
+ Bit c bit SM1.1 = 1: li tran (Overflow).
Nhng bit nh c bit co ni dung b anh hng bi lnh nay:
+ SM1.1 (Overflow): bng 1 nu kt qua b tran.

Lnh PID Loop (Proportional, Integral, Derivative Loop) c s dung tnh


toan vong lp PID. Lnh nay ch c thc hin nu nh nh cua ngn xp (Top Of
Stack) bng 1 trong STL, hay co Power Flow trong LAD. Lnh nay co hai toan hang:
[TBL] la a ch byte u tin cua mt bang d liu con [LOOP] la mt s nm trong
khoang t 0 n 7. iu nay cung co ngha la ch co ti a 8 lnh PID Loop co th c
s dung trong mt chng trnh. Nu co hai lnh PID Loop vi cung mt s [LOOP] th
du chung co s dung hai bang khac nhau i na cung vn anh hng n nhau va co th
gy nhng hu qua khng lng trc c.
Bang d liu cua lnh PID Loop bao gm 09 tham s dung iu khin hoat
ng cua vong lp: gia tr tc thi va gia tr k trc (current and previous value) cua bin
iu khin (process variable), gia tr yu cu (setpoint), gia tr x ly (output - u ra cua
PID), h s khuch ai (gain), thi gian ly mu (sample time), h s tch phn (integral
time - reset), h s vi phn (derivative time - rate) va integral sum (bias).
Trang 41

Giao trnh PLC S7-200


thc hin lnh nay mt tn sut ly mu xac nh, no phai hoc la c t
trong mt ngt thi gian hoc la c thc hin trong chng trnh chnh qua kim soat
bi mt b nh thi. ng thi, thi gian ly mu tng ng phai c a vao bang d
liu cua lnh.
Trong STEP 7 Micro / Win 32, chung ta co th s dung PID Wizard tao thut
toan vi PID cho mt mach iu khin kn bng cach chon Tools Instruction Wizard ->
PID t Menu chnh.
trang thai n nh, mt b iu khin PID se iu chnh sao cho sai s gia gia
tr yu cu (setpoint SP) va gia tr iu khin (process variable PV) bng 0. Nguyn ly
cua mt b iu khin PID nh vy th hin trong phng trnh sau:
t
de
M (t ) = Kc * e + Ki * edt + Mi + Kd *
dt
0
output = proportional +
integral
+ differential
trong o:
M(t): u ra cua PID (ai lng x ly) nh mt ham theo thi gian
Kc: hng s khuch ai
e: sai s.
e = SP - PV
Mi: gia tr ban u cua PID
Nhm muc ch ap dung b iu khin PID trn may vi tnh hay PLC noi ring va
trong ky thut s noi chung, chung ta phai tin hanh ri rac hoa phng trnh nu trn.
Cu th la ly mu va lng t hoa cac bin. Phng trnh c vit lai nh sau:

Mn

Kc * en + Ki *

i =1

ei + Mi + Kd * (en en 1 )

output = proportional +
integral
+
differential
trong o:
Mn: u ra cua PID (ai lng x ly) thi im ly mu n
Kc: hng s khuch ai
en = SPn - PVn
en: sai s thi im ly mu n.
en-1: sai s thi im ly mu ngay trc o (n-1). en-1 = SPn-1 - PVn-1
Ki: hng s khuch ai cua thanh phn tch phn
Mi: gia tr ban u cua PID
Kd: hng s khuch ai cua thanh phn vi phn
T phng trnh nay ta nhn thy rng, nu nh thanh phn t l (proportional) ch
la ham cua sai s thi im ly mu th thanh phn vi phn (differential) la ham s cua
sai s thi im ly mu ln thi im ly mu k trc con thanh phn tch phn
(integral) lai la ham cua tt ca cac sai s t thi im ly mu u tin cho n thi im

Trang 42

Giao trnh PLC S7-200


ly mu hin tai. Trong ky thut s, lu lai tt ca cac sai s la iu khng th thc hin
c, cung nh tht s khng cn thit.
V gia tr x ly lun c tnh toan moi thi im ly mu, k t thi im u
tin, nn ch cn lu lai gia tr k trc cua sai s va thanh phn tch phn. Phng trnh
c n gian thanh:
M n = Kc * en + Ki * en + MX + Kd * (en en 1 )
output = proportional +
integral
+
differential
trong o:
Mn: u ra cua PID (ai lng x ly) thi im ly mu n
Kc: hng s khuch ai
en: sai s thi im ly mu n.
en = SPn - PVn
en-1: sai s thi im ly mu ngay trc o (n-1). en-1 = SPn-1 - PVn-1
Ki: hng s khuch ai cua thanh phn tch phn
MX: gia tr thanh phn tch phn thi im ly mu k trc (n-1)
Kd: hng s khuch ai cua thanh phn vi phn
Mt cach vit khac cua phng trnh:
Mn =
MPn
+ MIn + MDn
output = proportional + integral + differential
trong o:
Mn: u ra cua PID (ai lng x ly) thi im ly mu n
MPn: thanh phn t l cua u ra PID thi im ly mu n
MIn: thanh phn tch phn cua u ra PID thi im ly mu n
MDn: thanh phn vi phn cua u ra PID thi im ly mu n
Ta ln lt xet n tng thanh phn mt cua ai lng x ly:
Thanh phn t l (proportional) MP la tch cua hng s khuch ai Kc vi sai s e.
Trong o Kc c trng cho nhay cua u ra PID (Kc cang ln, b iu khin PID cang
nhay) con e la sai s gia ai lng yu cu (setpoint SP) va ai lng thc t (process
variable PV). Phng trnh biu din:
MPn = Kc * (SPn - PVn)
trong o:
MPn: thanh phn t l cua u ra PID thi im ly mu n
Kc: hng s khuch ai
SPn: ai lng yu cu tai thi im ly mu n
PVn: ai lng thc t tai thi im ly mu n
Thanh phn tch phn (integral) MI t l vi tng cac sai s qua thi gian, th hin
bng phng trnh:
MIn = KC * Ts / Ti * (SPn - PVn ) + MX
Trang 43

Giao trnh PLC S7-200


trong o:
MIn: thanh phn tch phn cua u ra PID thi im ly mu n
Kc: hng s khuch ai
Ts: thi gian ly mu
Ti: h s tch phn
SPn: ai lng yu cu tai thi im ly mu n
PVn: ai lng thc t tai thi im ly mu n
MX: gia tr cua thanh phn tch phn thi im ly mu k trc (n-1), con c
goi la integral sum hay bias.
Sau khi tnh toan gia tr MIn, bias MX c thay th bi chnh gia tr MIn o vi
kha nng co th b iu chnh hoc ct (chn gii han), iu nay se c noi ro phn
sau. Gia tr ban u cua bias MX, Mi thng c ly la gia tr cua u ra b PID ngay
trc thi im thc hin lnh PID ln u tin. Cac hng s khac anh hng n thanh
phn nay la: Kc - hng s khuch ai, Ts - thi gian ly mu va Ti - h s tch phn la c
trng cho anh hng cua thanh phn nay ln toan b ai lng x ly.
Thanh phn vi phn (differential) MD t l vi thay i cua sai s, th hin qua
phng trnh:
MDn = KC * Td / Ts * ((SPn - PVn ) - (SPn - 1 - PVn - 1 ))
Vi c tnh co quan tnh cua moi h vt cht, chung ta co th gia thit rng ai
lng thc t PV khng bao gi co s thay i mt cach gian oan. Tuy nhin ai lng
yu cu th co th tng giam gay khuc (do c tnh trn ly thuyt). V ban cht toan hoc,
thanh phn vi phn la phep ly ao ham nn nhng s thay i gian oan co th gy nn
cac gia tr v cung ln u ra. tranh hin tng nay, trong phng trnh trn ta gia
thit SPn = SPn - 1 va co th vit:
MDn = KC * Td / Ts * (PVn - 1 - PVn)
trong o:
MDn: thanh phn vi phn cua u ra PID thi im ly mu n
Kc: hng s khuch ai
Ts: thi gian ly mu
Td: h s vi phn
SPn: ai lng yu cu tai thi im ly mu n
SPn-1: ai lng yu cu tai thi im ly mu n-1
PVn: ai lng thc t tai thi im ly mu n
PVn-1: ai lng thc t tai thi im ly mu n-1
Nh vy trn thc t khng cn nh sai s thi im ly mu k trc ma ch
cn nh ai lng thc t. Trong ln tnh toan u tin PVn-1 c ly bng PVn.

Trang 44

Giao trnh PLC S7-200


Tuy theo ng dung thc t, co th bo bt thanh phn trong b iu khin PID ch
khng nht thit phai bao gm u ca ba thanh phn, chng han co th tao b iu khin t
l (P) hay b iu khin ch cha cac thanh phn t l va tch phn (PI). S la chon nay
da trn cach t cac tham s.
Nu mun bo thanh phn tch phn (bo I), ta chon h s tch phn bng v cung
(Ti = :). Trong trng hp nay, thanh phn tch phn vn khng nht thit bng khng ma
co th bng mt gia tr khng i thng qua gia tr bias MX ban u.
Nu mun bo thanh phn vi phn (bo D), ta chon h s vi phn bng khng (Td =
0.0).
Nu mun bo thanh phn t l (bo P), ta chon h s khuch ai bng khng (Kc =
0.0). Trong trng hp nay, v cac hng s cua cac thanh phn tch phn va vi phn co
tnh theo Kc nn i vi nhng thanh phn y, Kc c hiu la bng 1.0.
Mt b iu khin PID co hai u vao: ai lng yu cu va ai lng thc t.
y la nhng ai lng tht trong ng dung nh nhit , ap sut, tc , ... a vao
tnh toan trong mt b iu khin, chung phai c o, chuyn i v gia tr thch hp va
chun hoa (nu cn). Cac bc nay u cn thit cho mt b iu khin PID, b nay oi
hoi cac gia tr u vao la nhng gia tr s thc (du phy ng) nm trong khoang t 0.0
n 1.0.
Thng thng, nhng gia tr o c c a vao PLC qua cac u vao tng t
(qui v in ap trong khoang 0 - 10VDC hoc dong in 0 - 20mADC) thanh nhng gia
tr s nguyn 16 bit co du. Trc ht nhng gia tr nay phai c i thanh cac s thc
32 bit (du phy ng), chng han theo thut toan sau:
XORD AC0, AC0
//Clear the accumulator.
MOVW AIW0, AC0
//Save the analog value in the accumulator.
LDW>= AC0, 0
//If the analog value is positive,
JMP 0
//then convert to a real number.
NOT
//Else,
ORD 16#FFFF0000, AC0 //sign extend the value in AC0.
LBL 0
DTR AC0, AC0
//Convert the 32-bit integer to a real number.
Bc tip theo la chun hoa v khoang [0.0 - 1.0] theo phng trnh:
NNorm = (NRaw / Span) + Offset
trong o:
NNorm la gia tr a chun hoa, ai din cho mt ai lng tht
NRaw la gia tr thc cha chun hoa, ai din cho mt ai lng tht
Span la hiu cua gia tr ln nht co th co tr i gia tr nho nht co th co cua gia
tr cha chun hoa. Trong S7-200 thng la 32000 - 0 = 32000 i vi cac ai lng
khng i du (unipolar) va khi o Offset = 0.0, hay 32000 - (-32000) = 64000 i vi

Trang 45

Giao trnh PLC S7-200


cac ai lng co th va co gia tr dng va co gia tr m (bipolar) va khi o Offset =
0.5.
oan lnh sau y minh hoa cho thut toan nay trong trng hp ai lng co du
(bipolar):
/R 64000.0, AC0
//Normalize the value in the accumulator
+R 0.5, AC0
//Offset the value to the range from 0.0 to 1.0
MOVR AC0, VD100 //Store the normalized value in the loop TABLE
Mt cach l gic chung ta thy rng cn phai co qua trnh ngc lai vi qua trnh
trn i vi gia tr u ra cua b iu khin PID. Ngha la bin i va a v thang gia
tr thch hp cho u ra t gia tr u ra a chun hoa trong khoang 0.0 n 1.0. Phng
trnh thut toan:
RScale = (MNorm - Offset) * Span
trong o:
RScale la gia tr thch hp cho u ra, ai din cho mt ai lng tht
MNorm la gia tr u ra chun hoa, ai din cho mt ai lng tht
Span la hiu cua gia tr ln nht co th co tr i gia tr nho nht co th co cua gia
tr cha chun hoa. Trong S7-200 thng la 32000 - 0 = 32000 i vi cac ai lng
khng i du (unipolar) va khi o Offset = 0.0, hay 32000 - (-32000) = 64000 i vi
cac ai lng co th va co gia tr dng va co gia tr m (bipolar) va khi o Offset =
0.5.
oan lnh minh hoa cho thut toan:
MOVR VD108, AC0 //Move the loop output to the accumulator.
-R 0.5, AC0
//Include this statement only if the value is
//bipolar.
*R 64000.0, AC0
//Scale the value in the accumulator.
ROUND AC0 AC0 //Convert the real number to a 32-bit integer.
MOVW AC0, AQW0 //Write the 16-bit integer value to the analog
//output.
Chung ta thng noi v vong lp iu khin thun khi h s khuch ai dng (Kc
> 0) hay vong lp iu khin ao (nghch) khi h s khuch ai m (Kc < 0). Trong
trng hp khng co thanh phn P (Kc = 0), ta xet du cua cac h s Ti va Td.
Cac gia tr yu cu va gia tr thc t (bin iu khin) la nhng u vao cua b
iu khin PID, do o cac trng tng ng vi chung trong bang d liu cua PID se
khng b thay i bi lnh nay.
Ngc lai trng tng ng vi u ra c cp nht bi PID. No se b ct (chn)
nu vt ra ngoai khoang cho phep [0.0 - 1.0].

Trang 46

Giao trnh PLC S7-200


Nu co s dung thanh phn tch phn (I), bias cung c cp nht va lai c
dung lam u vao cho ln ly mu k tip. Tuy nhin no co th c iu chnh trong
trng hp u ra b chn (v vt ra ngoai khoang [0.0 - 1.0]) theo phng trnh sau:
MX = 1.0 - (MPn + MDn )
khi u ra ln hn 1.0, hay
MX = - (MPn + MDn )
khi u ra nho hn 0.0, trong o:
MX la gia tr bias a c iu chnh
MPn la gia tr thanh phn t l (P) cua u ra thi im ly mu n
MDn la gia tr thanh phn vi phn (D) cua u ra thi im ly mu n
Mn la gia tr cua u ra thi im ly mu n
Bng s iu chnh nay, gia tr u ra se c a v khoang hp l. Gia tr bias
cung b chn trong khoang [0.0 - 1.0] va ghi vao bang d liu cho ln ly mu tip theo s
dung.
Gia tr bias trong bang d liu co th thay i c ngay trc khi thc hin lnh
PID nhng phai chu y y la mt s thc nm trong khoang [0.0 - 1.0].
Gia tr ai lng thc t cua ln ly mu trc c lu lai trong bang d liu
tnh toan thanh phn vi phn, khng bao gi c thay i gia tr nay.
Mt b iu khin PID co th hoat ng mt trong hai ch : Auto hoc
Manual. Thc ra khng co ch hoat ng nao c xy dng sn cho PID trong S7200. S tnh toan ch c thc hin khi co dong nng lng (powerflow) n u EN
(enable) cua b PID. PID c xem nh hoat ng ch Auto khi no thc hin tnh
toan mt cach tun hoan lin tuc. Trong trng hp ngc lai, PID c xem nh hoat
ng ch Manual. Vn chung ta cn xet n la s chuyn i am bao tnh lin
tuc t ch Manual sang ch Auto. iu o oi hoi u ra c tnh trong ch
Manual phai c ghi vao u vao thi im chuyn i sang ch Auto. Tng t
nh cach hoat ng cua b m, CPU s dung mt bit nh xac nh thi im chuyn
i: khi dong nng lng thay i t 0 ln 1. Luc o CPU se thc hin mt loat thao tac
cn thit:
t gia tr yu cu bng gia tr thc t: SPn = PVn
t gia tr k trc cua gia tr thc t: PVn-1 = PVn
t Bias bng gia tr u ra: MX = Mn
Bit nh cua mt b PID co gia tr mc nh la 1 (ON), c t khi CPU khi
ng hay chuyn t ch STOP sang ch RUN. iu o cung co ngha la khi b PID
c thc hin ln u tin, CPU khng nhn bit s chuyn i trang thai cua dong nng
lng t 0 ln 1 va do o khng thc hin cac thao tac nu trn.

Trang 47

Giao trnh PLC S7-200


Lnh PID la mt lnh n gian nhng rt manh trong vic tnh toan thut toan
PID. Nu cn mt s tnh nng khac, v du nh bao ng hay nhng thay i c bit, co
th s dung cac lnh khac can thip.
Khi chng trnh s dung c bin dch, li bin dch co th xut hin nu a
ch bang tham s [TBL] hoc toan hang [LOOP] cua b PID vt ra ngoai pham vi cho
phep (out of range).
Mt s pham vi cho phep khng c kim tra, v vy ngi lp trnh phai chu y.
Chng han nh nhng gia tr yu cu va thc t phai la cac s thc nm trong khoang t
0.0 n 1.0, cung nh cac gia tr thc t k trc hay Bias, nu c s dung, khng c
vt ra ngoai khoang [0.0 - 1.0].
Nu li xut hin trong qua trnh tnh toan thut toan PID, bit c bit SM1.1
(overflow) se bng 1 va qua trnh tnh toan b dng lai. Trong nhng trng hp nh vy,
u ra cua b PID co th cha c hoan thanh, v vy ngi lp trnh phai chu y kim tra
bit c bit nay s dung u ra mt cach hp ly cung nh iu chnh cac du vao nu
cn thit.
nh dang bang cac tham s cua mt b PID bao gm 36 bytes nh sau:

Sau y la mt v du cach dung b iu khin PID:

Trang 48

Giao trnh PLC S7-200


Mt b nc c dung gi mt ap lc ct nc c nh. Nc chay ra khoi b
vi tc thay i khng xac nh. at muc ch ngi ta s dung mt bm nc co
lu lng iu chnh c mt cach lin tuc bm nc vao b.
Gia tr yu cu trong v du nay la phai gi mc nc trong b 75%. Gia tr thc
t chnh la mc nc o c, thay i t 0% (khi b can) n 100% (khi b y). Gia tr
x ly (u ra b iu khin PID) la vn tc bm, iu chnh c t 0% n 100% lu
lng danh nh.
Gia tr yu cu, khng thay i, se c ghi trc tip vao bang cac tham s cua b
PID. Gia tr thc t la gia tr khng i du (ch dng - unipolar) va la gia tr tng t
oc vao t b o mc. Gia tr u ra PID cung la gia tr tng t, unipolar, dung diu
khin tc bm. Ca hai gia tr tng t nay, i vi S7-200, nm trong khoang t 0 n
32000.
Ta s dung b iu khin PI (ch bao gm thanh phn t l va tch phn, khng
cha thanh phn vi phn). Cac hng s iu khin c tnh toan da trn nhng thng s
ky thut cua h iu khin va co th iu chnh trong qua trnh khai thac thc t. y ta
khng i su vao vn nay.
Kc = 0.25
Ts = 0.1 s
Ti = 30 min
Bm c iu khin bng tay cho n khi mc nc trong b at 75% th chuyn
sang ch t ng va m van cho nc chay ra khoi b. u vao I0.0 c s dung
i ch : I0.0 = 0 la Manual; I0.0 = 1 la Auto. Khi trong ch Manual, tc bm
c xac nh bi s thc trong khoang [0.0 - 1.0] ghi VD108.
Chng trnh:

Trang 49

Giao trnh PLC S7-200

Trang 50

Giao trnh PLC S7-200

Trang 51

Giao trnh PLC S7-200

Trang 52

Giao trnh PLC S7-200


Lnh ly cn s bc hai (Square Root):
Lnh nay ly cn s bc hai cua mt s thc 32 bit c
nh a ch u vao IN, kt qua lu vao s thc 32 bit c
nh a ch bi u ra OUT theo phng trnh:
[ IN ] = [OUT ]
Nhng li co th c gy nn bi lnh nay (ENO = 0):
+ Bit c bit SM4.3 = 1: li Run - Time.
+ Li 0006: a ch gian tip.
+ Bit c bit SM1.1 = 1: li tran (Overflow) hoc gia
tr u vao khng hp l (Invalid value).
Nhng bit nh c bit co ni dung b anh hng bi lnh nay:
+ SM1.0 (Zero): bng 1 nu kt qua bng 0.
+ SM1.1 (Overflow): bng 1 nu kt qua b tran.
+ SM1.2 (Negative): bng 1 nu kt qua la s m.
Bit c bit SM1.1 dung xac nh li tran hoc gia tr khng hp l. Nu
SM1.1 = 1, gia tr cac bit SM1.0, SM1.2 khng co y ngha va cac gia tr u vao khng
thay i. Nu SM1.1 = 0, phep toan hoan thanh vi kt qua hp l va cac bit SM1.0,
SM1.2 phan anh trang thai kt qua theo ung chc nng cua chung.

Trang 53

Giao trnh PLC S7-200


8.8 Cac lnh phep toan l gic
AND bytes, OR bytes, EXCLUSIVE OR bytes:
Lnh AND Bytes thc hin phep toan l gic AND gia
cac bit tng ng cua cac byte u vao c nh a ch bi
cac u vao IN1 va IN2, kt qua lu vao byte c nh a ch
bi u ra OUT.
Lnh OR Bytes thc hin phep toan l gic OR gia cac
bit tng ng cua cac byte u vao c nh a ch bi cac
u vao IN1 va IN2, kt qua lu vao byte c nh a ch bi
u ra OUT.
Lnh EXCLUSIVE OR Bytes thc hin phep toan l gic
XOR gia cac bit tng ng cua cac byte u vao c nh a
ch bi cac u vao IN1 va IN2, kt qua lu vao byte c nh
a ch bi u ra OUT.
Nhng li co th c gy nn bi lnh nay (ENO = 0):
+ Bit c bit SM4.3 = 1: li Run - Time.
+ Li 0006: a ch gian tip.
Nhng bit nh c bit co ni dung b anh hng bi
lnh nay:
+ SM1.0 (Zero): bng 1 nu kt qua bng 0.

Trang 54

Giao trnh PLC S7-200


AND words, OR words, EXCLUSIVE OR words:
Lnh AND Words thc hin phep toan l gic AND gia
cac bit tng ng cua cac word u vao c nh a ch bi
cac u vao IN1 va IN2, kt qua lu vao word c nh a ch
bi u ra OUT.
Lnh OR Words thc hin phep toan l gic OR gia cac
bit tng ng cua cac word u vao c nh a ch bi cac
u vao IN1 va IN2, kt qua lu vao word c nh a ch bi
u ra OUT.
Lnh EXCLUSIVE OR Words thc hin phep toan l
gic XOR gia cac bit tng ng cua cac word u vao c
nh a ch bi cac u vao IN1 va IN2, kt qua lu vao word
c nh a ch bi u ra OUT.
Nhng li co th c gy nn bi lnh nay (ENO = 0):
+ Bit c bit SM4.3 = 1: li Run - Time.
+ Li 0006: a ch gian tip.
Nhng bit nh c bit co ni dung b anh hng bi
lnh nay:
+ SM1.0 (Zero): bng 1 nu kt qua bng 0.

Trang 55

Giao trnh PLC S7-200


AND double words, OR double words, EXCLUSIVE OR double words:
Lnh AND Double words thc hin phep toan l gic
AND gia cac bit tng ng cua cac double word u vao c
nh a ch bi cac u vao IN1 va IN2, kt qua lu vao double
word c nh a ch bi u ra OUT.
Lnh OR Double words thc hin phep toan l gic OR
gia cac bit tng ng cua cac double word u vao c nh
a ch bi cac u vao IN1 va IN2, kt qua lu vao double
word c nh a ch bi u ra OUT.
Lnh EXCLUSIVE OR Double words thc hin phep
toan l gic XOR gia cac bit tng ng cua cac double word
u vao c nh a ch bi cac u vao IN1 va IN2, kt qua
lu vao double word c nh a ch bi u ra OUT.
Nhng li co th c gy nn bi lnh nay (ENO = 0):
+ Bit c bit SM4.3 = 1: li Run - Time.
+ Li 0006: a ch gian tip.
Nhng bit nh c bit co ni dung b anh hng bi
lnh nay:
+ SM1.0 (Zero): bng 1 nu kt qua bng 0.

Trang 56

Giao trnh PLC S7-200


V du cac lnh l gic:

Trang 57

Giao trnh PLC S7-200


INVERT byte, INVERT word, INVERT double word:
Lnh INVERT byte thc hin phep ao kiu th nht
(ao tng bit mt, 0 thanh 1, 1 thanh 0) mt byte c nh a
ch bi u vao IN, kt qua lu vao byte c nh a ch bi
u ra OUT.
Lnh INVERT word thc hin phep ao kiu th nht
(ao tng bit mt, 0 thanh 1, 1 thanh 0) mt word c nh a
ch bi u vao IN, kt qua lu vao word c nh a ch bi
u ra OUT.
Lnh INVERT double word thc hin phep ao kiu th
nht (ao tng bit mt, 0 thanh 1, 1 thanh 0) mt double word
c nh a ch bi u vao IN, kt qua lu vao double word
c nh a ch bi u ra OUT.
Nhng li co th c gy nn bi lnh nay (ENO = 0):
+ Bit c bit SM4.3 = 1: li Run - Time.
+ Li 0006: a ch gian tip.
Nhng bit nh c bit co ni dung b anh hng bi
lnh nay:
+ SM1.0 (Zero): bng 1 nu kt qua bng 0.

Trang 58

Giao trnh PLC S7-200


V du:

8.9 Cac lnh dch (shift) va quay (rotate) ni dung cac nh


Cac lnh dch (shift) ni dung mt byte:
Nhng lnh nay ghi dch (shift) ni dung mt byte c
nh a ch bi u vao IN i [N] ln (nh bi toan hang N),
mi ln mt bit sang phai (Shift Right Byte) hoc sang trai
(Shift Left Byte), kt qua lu vao byte c nh a ch bi u
ra OUT.
Phep ghi dch (shift) in gia tr 0 (OFF) vao cac bit a
b dch i. Nh vy nu s ln dch [N] ln hn 8, thc t ch
cn dch ti a 8 ln v sau o kt qua chc chn bng 0.
Nu s ln dch [N] ln hn 0, bit cui cung trong byte
b dch ra ngoai se c ghi vao bit c bit SM1.1 (overflow).
Bit c bit SM1.0 (zero) se co gia tr 1 (ON) nu kt qua cui
cung sau phep dch bng 0.
Cac lnh ghi dch mt byte u xem cac byte la nhng
s khng du (unsigned).
Nhng li co th c gy nn bi lnh nay (ENO = 0):
+ Bit c bit SM4.3 = 1: li Run - Time.

Trang 59

Giao trnh PLC S7-200


+ Li 0006: a ch gian tip.
Nhng bit nh c bit co ni dung b anh hng bi lnh nay:
+ SM1.0 (Zero): bng 1 nu kt qua bng 0.
+ SM1.1 (Overflow): bng bit cui cung b dch ra ngoai.

Cac lnh dch (shift) ni dung mt word:


Nhng lnh nay ghi dch (shift) ni dung mt word
c nh a ch bi u vao IN i [N] ln (nh bi toan hang
N), mi ln mt bit sang phai (Shift Right Word) hoc sang trai
(Shift Left Word), kt qua lu vao word c nh a ch bi
u ra OUT.
Phep ghi dch (shift) in gia tr 0 (OFF) vao cac bit a
b dch i. Nh vy nu s ln dch [N] ln hn 16, thc t ch
cn dch ti a 16 ln v sau o kt qua chc chn bng 0.
Nu s ln dch [N] ln hn 0, bit cui cung trong word
b dch ra ngoai se c ghi vao bit c bit SM1.1 (overflow).
Bit c bit SM1.0 (zero) se co gia tr 1 (ON) nu kt qua cui
cung sau phep dch bng 0.
Cac lnh ghi dch mt word u xem cac word la nhng
s khng du (unsigned).
Nhng li co th c gy nn bi lnh nay (ENO = 0):
+ Bit c bit SM4.3 = 1: li Run - Time.
+ Li 0006: a ch gian tip.
Nhng bit nh c bit co ni dung b anh hng bi lnh nay:
+ SM1.0 (Zero): bng 1 nu kt qua bng 0.
+ SM1.1 (Overflow): bng bit cui cung b dch ra ngoai.

Trang 60

Giao trnh PLC S7-200

Cac lnh dch (shift) ni dung mt double word:


Nhng lnh nay ghi dch (shift) ni dung mt double
word c nh a ch bi u vao IN i [N] ln (nh bi toan
hang N), mi ln mt bit sang phai (Shift Right Double word)
hoc sang trai (Shift Left Double word), kt qua lu vao double
word c nh a ch bi u ra OUT.
Phep ghi dch (shift) in gia tr 0 (OFF) vao cac bit a
b dch i. Nh vy nu s ln dch [N] ln hn 32, thc t ch
cn dch ti a 32 ln v sau o kt qua chc chn bng 0.
Nu s ln dch [N] ln hn 0, bit cui cung trong
double word b dch ra ngoai se c ghi vao bit c bit SM1.1
(overflow). Bit c bit SM1.0 (zero) se co gia tr 1 (ON) nu
kt qua cui cung sau phep dch bng 0.
Cac lnh ghi dch mt double word u xem cac double
word la nhng s khng du (unsigned).
Nhng li co th c gy nn bi lnh nay (ENO = 0):
+ Bit c bit SM4.3 = 1: li Run - Time.
+ Li 0006: a ch gian tip.
Nhng bit nh c bit co ni dung b anh hng bi lnh nay:
+ SM1.0 (Zero): bng 1 nu kt qua bng 0.
+ SM1.1 (Overflow): bng bit cui cung b dch ra ngoai.

Trang 61

Giao trnh PLC S7-200


Cac lnh quay (rotate) ni dung mt byte:
Nhng lnh nay quay (rotate) ni dung mt byte c
nh a ch bi u vao IN i [N] ln (nh bi toan hang N),
mi ln mt bit sang phai (Rotate Right Byte) hoc sang trai
(Rotate Left Byte), kt qua lu vao byte c nh a ch bi
u ra OUT.
Phep quay (rotate) in gia tr bit cui cung (b quay ra
ngoai) vao bit u tin. Nh vy nu s ln quay [N] ln hn 8,
thc t ch cn quay mt s ln bng s d trong phep chia [N]
cho 8 v sau o qua trnh se c lp lai. Do o s ln quay thc
t ch nm trong khoang t 0 n 7. Nu s ln quay bng 0
(hay s ln quay chia ht cho 8), phep quay khng c thc
hin. Trong trng hp phep quay c thc hin, bit cui cung
trong byte b quay ra ngoai se c ghi vao bit c bit SM1.1
(overflow). Bit c bit SM1.0 (zero) se co gia tr 1 (ON) nu
kt qua cui cung sau phep quay bng 0.
Cac lnh ghi quay mt byte u xem cac byte la nhng s khng du (unsigned).
Nhng li co th c gy nn bi lnh nay (ENO = 0):
+ Bit c bit SM4.3 = 1: li Run - Time.
+ Li 0006: a ch gian tip.
Nhng bit nh c bit co ni dung b anh hng bi lnh nay:
+ SM1.0 (Zero): bng 1 nu kt qua bng 0.
+ SM1.1 (Overflow): bng bit cui cung b quay ra ngoai.

Trang 62

Giao trnh PLC S7-200


Cac lnh quay (rotate) ni dung mt word:
Nhng lnh nay quay (rotate) ni dung mt word c
nh a ch bi u vao IN i [N] ln (nh bi toan hang N),
mi ln mt bit sang phai (Rotate Right Word) hoc sang trai
(Rotate Left Word), kt qua lu vao word c nh a ch bi
u ra OUT.
Phep quay (rotate) in gia tr bit cui cung (b quay ra
ngoai) vao bit u tin. Nh vy nu s ln quay [N] ln hn
16, thc t ch cn quay mt s ln bng s d trong phep chia
[N] cho 16 v sau o qua trnh se c lp lai. Do o s ln
quay thc t ch nm trong khoang t 0 n 15. Nu s ln quay
bng 0 (hay s ln quay chia ht cho 16), phep quay khng
c thc hin. Trong trng hp phep quay c thc hin, bit
cui cung trong word b quay ra ngoai se c ghi vao bit c
bit SM1.1 (overflow). Bit c bit SM1.0 (zero) se co gia tr 1
(ON) nu kt qua cui cung sau phep quay bng 0.
Cac lnh ghi quay mt word u xem cac word la nhng s khng du (unsigned).
Nhng li co th c gy nn bi lnh nay (ENO = 0):
+ Bit c bit SM4.3 = 1: li Run - Time.
+ Li 0006: a ch gian tip.
Nhng bit nh c bit co ni dung b anh hng bi lnh nay:
+ SM1.0 (Zero): bng 1 nu kt qua bng 0.
+ SM1.1 (Overflow): bng bit cui cung b quay ra ngoai.

Trang 63

Giao trnh PLC S7-200


Cac lnh quay (rotate) ni dung mt double word:
Nhng lnh nay quay (rotate) ni dung mt double word
c nh a ch bi u vao IN i [N] ln (nh bi toan hang
N), mi ln mt bit sang phai (Rotate Right Double word) hoc
sang trai (Rotate Left Double word), kt qua lu vao double
word c nh a ch bi u ra OUT.
Phep quay (rotate) in gia tr bit cui cung (b quay ra
ngoai) vao bit u tin. Nh vy nu s ln quay [N] ln hn
32, thc t ch cn quay mt s ln bng s d trong phep chia
[N] cho 32 v sau o qua trnh se c lp lai. Do o s ln
quay thc t ch nm trong khoang t 0 n 31. Nu s ln quay
bng 0 (hay s ln quay chia ht cho 32), phep quay khng
c thc hin. Trong trng hp phep quay c thc hin, bit
cui cung trong double word b quay ra ngoai se c ghi vao
bit c bit SM1.1 (overflow). Bit c bit SM1.0 (zero) se co
gia tr 1 (ON) nu kt qua cui cung sau phep quay bng 0.
Cac lnh ghi quay mt double word u xem cac double word la nhng s khng
du (unsigned).
Nhng li co th c gy nn bi lnh nay (ENO = 0):
+ Bit c bit SM4.3 = 1: li Run - Time.
+ Li 0006: a ch gian tip.
Nhng bit nh c bit co ni dung b anh hng bi lnh nay:
+ SM1.0 (Zero): bng 1 nu kt qua bng 0.
+ SM1.1 (Overflow): bng bit cui cung b quay ra ngoai.

Trang 64

Giao trnh PLC S7-200


V du s dung cac phep dch va quay:

Trang 65

Giao trnh PLC S7-200


Lnh dch mt thanh ghi cac bit (Shift Register Bit):
Lnh nay dch (shift) ni dung mt khi cac bit lin tip
i mt bit, vi bit u tin b dch i c thay th bng gia tr
bit c tro n bi toan hang DATA va bit cui cung b dch
ra ngoai se c ghi vao bit c bit SM1.1. Khi cac bit lin
tip nay c xac nh vi bit u tin (bit thp nht) co a ch
nh bi toan hang S_BIT va co dai bng gia tr tuyt i
cua toan hang [N]. iu o co ngha [N] la mt s co du, du
cua [N] xac nh chiu dch chuyn: [N] dng th dch ln con
[N] m th dch xung.
Nhng li co th c gy nn bi lnh nay (ENO = 0):
+ Bit c bit SM4.3 = 1: li Run - Time.
+ Li 0006: a ch gian tip.
+ Li 0091: toan hang vt qua gii han cho phep.
+ Li 0092: li trng s (count field).
Nhng bit nh c bit co ni dung b anh hng bi lnh nay:
+ SM1.1 (Overflow): bng bit cui cung b quay ra ngoai.

Minh hoa lnh nay vi khi cac bit bt u t V33.4 va co dai 14 bit:

Trang 66

Giao trnh PLC S7-200


Mt v du khac:

Trang 67

Giao trnh PLC S7-200


8.10 Cac lnh iu khin chng trnh
Lnh END:
Lnh END co iu kin dung kt thuc chng trnh
chnh khi thoa man iu kin trc no.
Lnh END khng co toan hang, khng c s dung
trong cac chng trnh con hay trong cac chng trnh x ly
ngt.
Phn mm STEP 7 Micro / Win 32 t ng thm lnh
END khng iu kin (lnh END khng co bt c iu kin nao
trc no) vao cui mi chng trnh chnh.

Lnh STOP:
Lnh STOP dng chng trnh ang c thc hin
ngay lp tc bng cach chuyn CPU t ch hoat ng (RUN)
sang ch STOP.
Nu lnh STOP c thc hin t mt chng trnh x
ly ngt th chng trnh x ly ngt y se b kt thuc ngay ng
thi tt ca nhng ngt ang ch c x ly (nu co) cung u b
huy. Tuy nhin CPU vn x ly nt nhng lnh con lai trong
vong quet cua chng trnh chnh khi b ngt va ch dng
chng trnh cui vong quet bng cach chuyn ch t RUN
sang STOP.

Lnh WATCHDOG RESET:


Lnh nay khi ng lai ng h canh h thng (System
Watchdog). iu o cho phep keo dai thi gian thc hin vong
quet ma khng b li watchdog.
Chu y cn thn khi s dung lnh nay v khi no nm trong
cac vong lp (khng kt thuc vong quet) hay khi no keo dai
vong quet se anh hng ti h thng, chng han nh vic thc
thi cac tnh nng:
Truyn thng (tr ch FreePort)
Cp nht cac u vao ra (tr nhng lnh truy xut trc tip)
Cp nht Forcing
Trang 68

Giao trnh PLC S7-200

Cp nht cac bit c bit, nh SM0, SM5 n SM29


Chn oan li Run-Time
Cac b nh thi co phn giai 10 ms va 100ms hoat ng sai lch (c bit khi thi
gian vong quet vt qua 25s)
Lnh STOP khng c thc hin khi trong chng trnh x ly ngt
Nu thi gian vong quet co th vt qua 300ms, hoc co th co ngt keo dai vong
quet ln qua 300ms, ta phai dung lnh WDR.
Vic chuyn cng tc cua CPU sang v tr STOP se dng chng trnh trong vong
1.4 giy.
V du s dung nhng lnh nu trn:

Trang 69

Giao trnh PLC S7-200


Lnh nhay (JUMP) va nhan (LABEL):
Lnh nhay (Jump to Label) re nhanh chng trnh n
mt oan lnh c anh du bng mt nhan. Khi mt lnh
nhay c thc hin, nh ngn xp lun lun co gia tr 1.
Nhan dung anh du v tr cho cac lnh nhay.
Ca hai lnh trn co toan hang la mt s nguyn trong
khoang t 0 n 255 (s nhan). i vi CPU 212 ch c t 0
n 63.
Lnh nhay ch c phep re nhanh chng trnh n mt
nhan hoc cung trong chng trnh chnh, hoc cung trong
mt chng trnh con hay chng trnh x ly ngt.

V du:

Trang 70

Giao trnh PLC S7-200


Chng trnh con:
Lnh goi (CALL) mt chng trnh con chuyn quyn
iu khin n cho chng trnh con o. S7-200 co th goi mt
chng trnh con co hoc khng co tham s. Trong STEP 7
Micro / Win 32, ta thm chng trnh con vao chng trnh t
Menu chnh Edit > Insert > Subroutine.
Lnh kt thuc chng trnh con (Return) co iu kin
kt thuc vic thc hin chng trnh con o va tr v chng
trnh chnh khi thoa man iu kin trc no.
Mt khi vic thc hin mt chng trnh con kt thuc,
quyn iu khin c chuyn v cho lnh k tip lnh goi
chng trnh con y.
Toan hang cua lnh goi chng trnh con chnh la nh
danh cua chng trnh con, la mt s nguyn trong khoang t 0
n 255.
Nhng li co th c gy nn bi lnh nay (ENO = 0):
+ Bit c bit SM4.3 = 1: li Run - Time.
+ Li 0008: s ln goi chng trnh con vt qua con s cho phep.
STEP 7 Micro / Win 32 t ng gn lnh kt thuc va tr v t chng trnh con
(RET) vao cui mi chng trnh con c thm vao.
Mt chng trnh con co th c goi t trong mt chng trnh con, hin tng
nay goi la Nesting. su cua Nesting ti a la 08 ln goi. Vic goi n mt chng
trnh con t chnh no ( qui - Recursion) khng b cm nhng ngi lp trnh phai tht
s cn trong vi cach dung nay.
Khi goi mt chng trnh con, CPU lu lai toan b ngn xp, ghi gia tr 1 vao
nh ngn xp va 0 vao cac gia tr con lai cua ngn xp ri chuyn quyn iu khin cho
chng trnh con. Khi vic thc hin mt chng trnh con hoan tt, ngn xp c phuc
hi lai trang thai trc o va quyn iu khin c chuyn v cho chng trnh a goi.
Lu y nhng thanh ghi a nng (Accumulators) khng c lu hay phuc hi trong cac
qua trnh trn.
Vic goi mt chng trnh con vi tham s c thc hin thng qua vic nh
ngha cho chng trnh con mt bang tham s cuc b. Mi tham s bao gm tn tham s
(ti a 08 ky t), kiu bin (vao, ra hay tam thi) va kiu d liu (Bool, Byte, INT, ...).
Mi chng trnh con co th co nhiu nht 16 tham s.
Kiu bin cua tham s xac nh tham s vao cho chng trnh con (IN), va vao
va ra (IN_OUT) hay la tham s ra t chng trnh con (OUT). Cu th nh sau:
Tham s dang vao (IN) c truyn n cho chng trnh con: Nu tham s la a ch
trc tip (v du VB10), ni dung nh a ch y se c truyn vao cho chng
Trang 71

Giao trnh PLC S7-200

trnh con; Nu tham s la a ch gian tip (v du *AC1), ni dung nh c tro n


se c truyn vao cho chng trnh con; Nu tham s la hng s (v du 16#9A8B)
hay la mt a ch (v du &VB100), hng s hay a ch y se c truyn vao cho
chng trnh con.
Tham s dang vao - ra (IN_OUT): chng trnh con s dung s liu t a ch xac
nh bi tham s nay ng thi xut d liu cung ra a ch y. Hin nhin rng tham
s dang nay khng th la mt hng s (nh 16#1234) hay a ch (nh &VB100).
Tham s dang ra (OUT): chng trnh con xut d liu ra a ch nay. Tham s dang
nay khng th la mt hng s (nh 16#1234) hay a ch (nh &VB100).
Tham s cuc b (TEMP): la nhng tham s c chng trnh con s dung ch trong
pham vi chng trnh con nay.

thm vao mt tham s cho mt chng trnh con, trong bang cac tham s
u chng trnh con (hnh pha trn) t con tro vao kiu bin ta mun thm (IN,
IN/OUT, OUT hay TEMP), nhn phm phai chut va chon Insert > Row below thm
vao mt tham s mi v tr di con tro vi dang tham s thch hp.
Kiu d liu cua tham s xac nh kch thc cung nh nh dang cua no:
Kiu dong nng lng (Boolean Power Flow): c xem la kiu bit l gic nhng ch
co th la dang vao (IN) va phai c khai bao trc tt ca cac kiu khac (nh nhng
tham s EN va IN1 trong v du trn).
Kiu bit l gic (Boolean): ai din cho mt bit, co th la dang ra (OUT) hoc vao
(IN), nh IN3.
Kiu Byte, Word, DWord: tham s ra hoc vao, 1, 2 hay 4 bytes ai din cho cac s
khng du (unsigned).
Kiu Int, DInt: tham s ra hoc vao, 2 hay 4 bytes ai din cho cac s nguyn co du
(signed).
Kiu Real: tham s ra hoc vao, ai din cho cac s thc du phy ng 4 bytes (theo
chun IEEE).
Mt v du goi chng trnh con vi cac tham s c khai bao nh trn:

Trang 72

Giao trnh PLC S7-200

Trong v du trn, tham s IN4 = &VB100 c cha vao mt t kep (double word
unsigned). Nu gan cho tham s mt gia tr la hng s, 16#1234 chng han th phai xac
nh kiu d liu cho no bng cach vit DW#16#1234.
Khi mt chng trnh con c goi, no bao gm mt vung d liu cuc b cha cac
tham s (c anh a ch nh ct u tin cua bang cac tham s). Nhng tham s dang
vao se c sao chep vao vung d liu cuc b nay trc khi chng trnh con thc hin va
nhng tham s dang ra lai c sao chep ra t vung y sau khi vic thc hin chng
trnh con hoan thanh. Lu y chng trnh con khng kim tra kiu d liu nn ngi lp
chng trnh phai chu y s dung ung kiu a khai bao.
Tt nhin th t cac tham s cung phai phu hp nh a khai bao (c bit trong
STL): u tin la dang vao (IN) ri n cac dang vao - ra (IN/OUT) va dang ra (OUT).
V du s dung chng trnh con:

Trang 73

Giao trnh PLC S7-200

9. TP LNH IEC 1131-3

10. PHU LUC

Trang 74

Das könnte Ihnen auch gefallen