You are on page 1of 83

Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Baøi giaûng Thieát bò Siemens


S7-300
Noäi dung baøi giaûng:
Giôùi thieäu sô löôïc veà doøng saûn phaåm cuûa Siemens:
Logo: Doøng saûn phaåm sô caáp ,ñöôïc söû duïng cho nhöõng öùng duïng nhoû,coù taùc duïng thay theá
cho nhöõng öùng duïng söû duïng nhieàu rôle trung gian,timer….,nhaèm giaûm khoâng gian laép ñaët tuû
ñieän.
Do logo chæ laø nhöõng Logic Modul do vaäy chæ ñöôïc söû duïng cho vieäc thay theá nhöõng maïch soá
ñôn giaûn vôùi soá löôïng I/O nhoû 24In,16Out
Öu ñieåm cuûa Logo laø deã daøng söû duïng,deã daøng laäp trình vaø thay ñoåi döõ lieäu .Coù theå laäp trình
tröïc tieáp treân Logo baèng caùch söû duïng Logo coù maøn hình.Giaù thaønh töông ñoái hôïp lí.
ÖÙng duïng : Chuû yeáu trong heä thoáng chieáu saùng coâng coäng,heä thoáng chieáu saùng trong toaø
nhaø,söû duïng trong caùc maùy xaø goà,vaø moät soá maùy ñôn giaûn……
S7_200: Doøng saûn phaåm trung caáp,ñöôïc söû duïng trong nhöõng öùng duïng trung bình vôùi soá
löôïng I/O vöøa phaûi (khoaûng 128 ),ñoái vôùi doøng saûn phaåm S7_200 naøy ñaõ ñöôïc tích hôïp ñaày
ñuû nhöõng haøm toaùn cho taát caû nhöõng öùng duïng caàn thieát cho moïi heä thoáng töï ñoäng,ngoân ngöõ
cuõng nhö giao dieän laäp trình deã hieåu ,thaân thieän,giuùp cho moïi ngöôøi ñeàu coù theå deã daøng tieáp
caän.Tuy nhieân,thoâng thöôøng S7-200 vaãn ñöôïc söû duïng cho nhöõng öùng duïng rieâng leû,coøn
tröôøng hôïp muoán môû roäng maïng thì vaãn neân söû duïng S7_300
ÖÙng duïng : Trong caùc nghaønh ñaù,Beâ toâng ,Goám söù,Ximaêng,saét theùp……..Coù theå söû duïng cho
heä thoáng SCADA nhoû ( keát noái S7_200 vôùi maùy tính thoâng qua PC Access,ñeå coù theå truy caäp
vaø quaûn lí döõ lieäu : Traïm troän Beâ Toâng….)
S7_300,400: Doøng saûn phaåm cao caáp ,ñöôïc duøng cho nhöõng öùng duïng lôùn vôùi nhöõng yeâu caàu
I/O nhieàu vaø thôøi gian ñaùp öùng nhanh,yeâu caàu keát noái maïng,vaø coù khaû naêng môû roäng cho sau
naøy.
Ngoân ngöõ laäp trình ña daïng cho pheùp ngöôøi söû duïng coù quyeàn choïn löïa.Ñaëc ñieåm noåi baät
cuûa S7_300 ñoù laø ngoân ngöõ laäp trình cung caáp nhöõng haøm toaùn ña daïng cho nhöõng yeâu caàu
chuyeân bieät nhö : Haøm SCALE…..
Hoaëc ta coù theå söû duïng ngoân ngöõ chuyeân bieät ñeå xaây döïng haøm rieâng cho öùng duïng maø ta
caàn.
Ngoaøi ra S7-300 coøn xaây döïng phaàn cöùng theo caáu truùc Modul,nghóa laø ñoái vôùi S7-300 seõ coù
nhöõng Modul tích hôïp cho nhöõng öùng duïng ñaëc bieät nhö Modul PID,Modul Ñoïc xung toác ñoä
cao….
Maøn Hình : Siemens coøn cung caáp taát caû caùc loaïi maøn hình öùng duïng trong coâng nghieäp nhö
maøn hình maøu,maøn hình ñen traéng,maøn hình maùy tính coâng nghieäp…..
Caùc maøn hình naøy coù theå keát noái vôùi caùc loaïi PLC ñeå coù theå deã daøng thay ñoåi döõ lieäu ,hoaëc
coù theå keát noái thaønh maïng ProfiBus.
Doøng C7: Doøng C7 veà nguyeân taéc noù ñöôïc xem nhö laø söï keát hôïp giöõa PLC vaø maøn hình,töùc
laø ta coù theå hieåu C7 laø maøn hình coù theå keát hôïp vôùi I/O cho nhöõng öùng duïng trong coâng
nghieäp,ñöôïc keát noái theo maïng Profibus.
I/Ñaïi soá Boolean:
1/ Bieán vaø haøm soá 2 trò:

Ngöôøi soaïn : Haø vaên Trí 1


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Khi moâ taû ñoái töôïng baèng moâ hình toaùn hoïc ta phaûi bieåu dieãn caùc ñaïi löôïng vaøo ra cuûa ñoái
töôïng,caùc ñaïi löôïng naøy laø caùc haøm phuï thuoäc theo thôøi gian.
Bieán hai trò hay coøn goïi laø bieán Boolean laø loaïi haøm soá maø mieàn giaù trò cuûa noù chæ coù 2 phaàn
töû,hai phaàn töû ñoù laø 0 vaø 1
Vd: Coâng taéc laø moät bieán ngoõ vaøo 2 trò : ñoùng (kí hieäu laø 1) vaø môû (kí hieäu laø 0)
Ñeøn hieäu laø moät bieán ngoõ ra 2 trò : saùng (kí hieäu laø 1) vaø taét (kí hieäu laø 0)
Hai bieán ñöôïc goïi laø ñoäc laäp nhau neáu söï thay ñoåi cuûa bieán naøy khoâng aûnh höôûng ñeán bieán
kia.
2/Caùc pheùp toaùn treân haøm 2 trò:
a/Pheùp Not: x = not(y)
y X
0 1
1 0
b/Pheùp hôïp (pheùp coäng): x= y+z
y z X
0 0 0
0 1 1
1 0 1
1 1 1
c/Pheùp giao : x=y^z
y z X
0 0 0
0 1 0
1 0 0
1 1 1

- Chuyeån ñoåi töø maïch rôle nuùt nhaán ,ñeøn sang vieát chöông trình PLC
II/Bieåu dieãn soá nguyeân döông:
1/Trong heä cô soá 10 (heä thaäp phaân):
Moät soá nguyeân döông Un baát kì,trong heä cô soá 10 bao giôø cuõng ñöôïc bieåu dieãn ñaày ñuû baèng
daõy con soá nguyeân töø 0 ñeán 9
Vd: Un = 349 ñöôïc bieåu dieãn trong heä cô soá 10:
349 = 3*102 + 4*101 + 9*100.
2/Trong heä cô soá 2 (heä nhò phaân):
Caùch bieåu dieãn Un trong heä cô soá 10 chöa phuø hôïp vôùi nguyeân taéc maïch ñieän ( hay nguyeân
taéc haøm 2 trò).Ñeå söû duïng nguyeân taéc haøm 2 trò ( soá 0 hoaëc 1) ta ñöa ra 1 khaùi nieäm Bit
1 Bit bao goàm 2 trò 0 hoaëc 1,do vaäy 1 soá coù theå bieåu dieãn trong heä nhò phaân döôùi daïng Bit
vd: Un = 205 coù theå ñöôïc bieåu dieãn döôùi daïng 8 Bit:
11001101
205 = 1*2 + 1*26 + 0*25 + 0*24 + 1*23 + 1*22 + 0*21 + 1*20
7

3 / Trong heä cô soá 16 ( heä Hexadecimal):

Ngöôøi soaïn : Haø vaên Trí 2


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Cuõng gioáng nhö heä cô soá 10,1 nguyeân döông baát kì cuõng coù theå bieåu dieãn trong heä cô soá 16
nhö sau:
Vd: 7723 = 1E2B
= 1* 163 + 14* 162 + 2* 161 + 11*160
E B
4/ Maõ BCD cuûa soá nguyeân döông:
Vd: soá 259 döôùi daïng maõ BCD:

0010 0101 1001


2 5 9
III/ Thieát bò ñieàu khieån Logic khaû trình:
1/ PLC ( Progranable Logic Control) : Thieát bò ñieàu khieån Logic khaû trình PLC
Laø loaïi thieát bò cho pheùp thöïc hieän linh hoaït caùc thuaät toaùn ñieàu khieån soá thoâng qua moät
ngoân ngöõ laäp trình ,thay cho vieäc phaûi theå hieän thuaät toaùn ñoù baèng maïch soá .Nhö vaäy
vôùi chöông trình ñieàu khieån trong mình ,PLC trôû thaønh boä ñieàu khieån nhoû goïn ,deã
thay ñoåi thuaät toaùn vaø ñaëc bieät deã trao ñoåi thoâng tin vôùi moâi tröôøng xung quanh ( vôùi
caùc PLC khaùc hoaëc vôùi maùy tính).Toaøn boä chöông trình ñöôïc löu trong boä nhôù.döôùi
daïng caùc khoái chöông trình (OB,FC,FB..) vaø ñöôïc thöïc hieän vôùi chu kì queùt.
Ñeå coù theå thöïc hieän moät chöông trình ñieàu khieån.Taát nhieân PLC phaûi coù tính naêng nhö
moät maùy tính .Nghóa laø phaûi coù moät boä vi xöû lí trung taâm ( CPU),moät heä ñieàu
haønh,moät boä nhôù chöông trình ñeå löu chöông trình cuõng nhö döõ lieäu vaø taát nhieân phaûi
coù caùc coång vaøo rañeå giao tieáp vôùi caùc thieát bò beân ngoaøi..Beân caïnh ñoù ,nhaèm phuïc
vuï baøi toaùn ñieàu khieån soá ,PLC phaûi coù caùc khoái haøm chöùc naêng nhö
Timer,Counter,vaø caùc haøm chöùc naêng ñaëc bieät khaùc.

Ngöôøi soaïn : Haø vaên Trí 3


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Boä nhôù chöông trình

Khoái vi xöû kí Timer

Boä ñeäm trung taâm + Heä


Boä ñeám
vaøo ra ñieàu haønh
Bit côø

Coång vaøo
ra
Quaûn lí gheùp
Coång ngaét vaø noái
ñeám toác ñoä cao

2/ Caùc Tín hieäu keát noái vôùi PLC:


a/Tín hieäu soá : Laø caùc tín hieäu thuoäc daïng haøm Boolean, daïng tín hieäu chæ coù 2 trò 0 hoaëc
1.
Ñoái vôùi PLC Siemens :
Möùc 0 : töông öùng vôùi 0V hoaëc hôû maïch
Möùc 1 : Töông öùng vôùi 24V
Vd: Caùc tín hieäu töø nuùt nhaán ,töø caùc coâng taéc haønh trình….. ñeàu laø nhöõng tín hieäu soá
b/ Tín hieäu töông töï : Laø tín hieäu lieân tuïc, töø 0-10V hay töø 4-20mA….
Vd: Tín hieäu ñoïc töø Loadcell,töø caûm bieán löu löôïng…
c/ Tín hieäu khaùc : Bao goàm caùc tín hieäu giao tieáp vôùi maùy tính ,vôùi caùc thieát bò ngoaïi vi
khaùc baèng caùc giao thöùc khaùc nhau nhö giao thöùc RS232,RS485,Modbus….
3/ Caùc Modul cuûa PLC S7_300:
Thoâng thöôøng ñeå taêng tính meàm deûo trong öùng duïng thöïc teá maø ôû ñoù phaàn lôùn caùc ñoái töôïng ñieàu
khieån coù soá tín hieäu ñaàu vaøo ñaàu ra cuõng nhö chuûng loaïi tín hieäu vaøo ra khaùc nhau maø caùc boä ñieàu
khieån PLC ñöôïc thieát keá khoâng bò cöùng hoaù veà caáu hình .Chuùng ñöôïc chia nhoû thaønh caùc Modul.soá
caùc Modul ñöôïc söû duïng nhieàu hay ít tuyø theo töøng baøi toaùn ,song toái thieåu bao giôø cuõng coù Modul
chính laø Modul CPU. Caùc Modul coøn laïi laø nhöõng Modul nhaän truyeàn tín hieäu vôùi ñoái töôïng ñieàu
khieån ,caùc Modul chöùc naêng chuyeân duïng nhö PID,ñieàu khieån ñoäng cô….. Chuùng ñöôïc goïi chung laø
Modul môû roäng.Taát caû caùc Modul ñöôïc gaén treân nhöõng thanh ray ( Rack).

Ngöôøi soaïn : Haø vaên Trí 4


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

a/ Modul CPU: Modul CPU laø loaïi Modul chöùa vi xöû lí,heä ñieàu haønh ,boä nhôù ,caùc boä thôøi gian
,boä ñeám,coång truyeàn thoâng ( RS485)…. Vaø coù theå coøn coù moät vaøi coång vaøo ra soá.Caùc coång vaøo ra soá
treân CPU ñöôïc goïi laø coång vaøo ra Onboard.
Trong hoï PLC S7_300 coù nhieàu loaïi CPU khaùc nhau : CPU 312,CPU 314 ,CPU 315….
Nhöõng Modul cuøng söû duïng moät loaïi boä vi xöû lí ,nhöng khaùc nhau veà coång vaøo ra onboard cuõng nhö
caùc khoái haøm ñaëc bieättích hôïp saün trong thö vieän cuûa heä ñieàu haønh phuïc vuï vieäc söû duïng caùc coång
vaøo ra onboard naøy seõ ñöôïc phaân bieät vôùi nhau tong teân goïi baèng teân cuïm chöõ caùi IFM( vieát taét cuûa
Intergrated Function Module ).Ví duï Module CPU 312IFM,Modul314 IFM….
Ngoìa ra coøn coù caùc loaïi module hai coång truyeàn thoâng,trong ñoù coång truyeàn thoâng thöù 2 coù chöùc
naêng chính laø phuïc vuï vieäc noái maïng phaân taùn .Caùc loaïi module CPU ñöôïc phaân bieät vôùi nhöõng loaïi
CPU khaùc baèng theâm cuïm töø DP ( Distrubited port)trong teân goïi. Ví duï module CPU 315-DP
b/Caùc Modul môû roäng:
Caùc Modul môû roäng ñöôïc chia thaønh 5 loaïi chính:
i/ PS(Power Supply): Modul nguoàn nuoâi
ii/ SM ( Signal Module): Modul tín hieäu vaøo ra bao goàm:
DI ( Digital Input)
DO ( Digital Output)
DI/DO ( Digital In/Output)
AI ( Analog Input )
AO ( Analog Output)
AI/AO ( Analog In/Output)
iii / IM ( Interface Module) : Modul gheùp noái. Ñaây laø loaïi Modul chuyeân duïng coù nhieäm vuï
noái töøng nhoùm caùc Modul môû roäng laïi vôùi nhau thaønh töøng moät khoái vaø ñöôïc quaûn lí chung
bôûi moät module CPU. Thoâng thöôøng caùc Modul môû roäng ñöôïc gaù lieàn vôùi nhau treân moät
thanh ñôõ goïi laø Rack.
Treân moãi moät Rack chæ coù theå gaù ñöôïc nhieàu nhaát 8 module môû roäng ( khoâng keå module CPU
,module nguoàn nuoâi). Moät module CPU coù theå laøm vieäc tröïc tieáp vôùi nhieàu nhaát 4 Rack,vaø
caùc Rack naøy phaûi ñöôïc noái vôùi nhau baèng Module IM
IM360 :truyeàn IM361:nhaän.
- FM ( Function Module): Caùc Modul ñieàu khieån rieâng,nhö ñieàu khieån Servo,ñieàu
khieån PID……
- CP( Communication Module):Module truyeàn thoâng
2/ Tín Hieäu: Thoâng thöôøng coù 2 tín hieäu
Tín hieäu soá: Tín hieäu möùc 1 hoaëc möùc 0 ( true hoaëc False),
Vd: I0.0,Q0.0….
Tín hieäu töông töï : Laø tín hieäu analog ñöôïc ñoïc töø caùc Modul analog
Vd : PIW256….
3/Kieåu döõ lieäu vaø phaân chia boä nhôù:
a/Kieåu Bool: True hoaëc False ( 0 hoaëc 1)
VD: M0.0
b/Kieåu Byte : goàm 8 Bit
c/Kieåu Word

Ngöôøi soaïn : Haø vaên Trí 5


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

d/Kieåu Int
e/Kieåu Dint
f/ Kieåu Real
h/Kieåu S5T:
k/ Kieåu Char
i/Kieåu Date
j/Kieåu Tod:

4/ Boä nhôù PLC: goàm 3 vuøng chính.


a/Vuøng chöùa chöông trình öùng duïng : Vuøng chöùa chöông trình ñöôïc chia thaønh 3 mieàn
:
i/ OB ( Organisation block) : mieàn chöùa chöông trình toå chöùc.
ii/ FC ( Function) : Mieàn chöùa chöông trình con ,ñöôïc toå chöùc thaønh haøm vaø coù bieán hình
thöùc ñeå trao ñoåi döõ lieäu
iii/ FB ( Function block) : Mieàn chöùa chöông trình con ,ñöôïc toå chöùc thaønh haømvaø coù khaû
naêng trao ñoåi döõ lieäu vôùi baát cöù 1 khoái chöông trình naøo khaùc .Caùc döõ lieäu naøy phaûi ñöôïc
xaây döïng thaønh moät khoái döõ lieäu rieâng ( Data Block khoái DB)
b/ Vuøng chöùa tham soá cuûa heä ñieàu haønh: Chia thaønh 7 mieàn khaùc nhau
I ( Process image input ) : Mieàn döõ lieäu caùc coång vaøo soá,tröôùc khi baét ñaàu thöïc hieän
chöông trình ,PLC seõ ñoïc giaù trò logic cuûa taát caû caùc coång ñaàu vaøo vaø caát giöõ chuùng trong
vuøng nhôù I.Thoâng thöôøng chöông trình öùng duïng khoâng ñoïc tröïc tieáp traïng thaùi logic cuûa
coång vaøo soá maø chæ laáy döõ lieäu cuûa coång vaøo töø boä ñeäm I.
Q ( Process Image Output): Mieàn boä ñeäm caùc döõ lieäu coång ra soá .Keát thuùc giai ñoaïn
thöïc hieän chöông trình,PLC seõ chuyeån giaù trò logic cuûa boä ñeäm Q tôùi caùc coång ra
soá.Thoâng thöôøng chöông trình khoâng tröïc tieáp gaùn giaù trò tôùi taän coång ra maø chæ chuyeån
chuùng tôùi boä ñeäm Q.
M ( Mieàn caùc bieán côø): CHöông trình öùng duïng söû duïng nhöõng bieán naøy ñeå löu giöõ caùc
tham soá caàn thieát vaø coù theå truy nhaäp noù theo Bit (M) ,byte (MB),töø (MW) hay töø keùp
(MD).
T ( Timer): Mieàn nhôù phuïc vuï boä thôøi gian ( Timer) bao goàm vieäc löu tröõ giaù trò thôøi gian
ñaët tröôùc ( PV-Preset Value ),giaù trò ñeám thôøi gian töùc thôøi ( CV –Current Value) cuõng
nhö giaù trò Logic ñaàu ra cuûa boä thôøi gian.
C ( Counter): Mieàn nhôù phuïc vuï boä ñeám bao goàm vieäc löu tröõ giaù trò ñaët tröôùc ( PV- Preset
Value),giaù trò ñeám töùc thôøi ( CV _ Current Value)vaø giaù trò logic ñaàu ra cuûa boä ñeäm.
PI : Mieàn ñòa chæ coång vaøo cuûa caùc Modul töông töï ( I/O External input). Caùc giaù trò töông töï
taïi coång vaøo cuûa modul töông töï seõ ñöôïc module ñoïc vaø chuyeån töï ñoäng theo nhöõng ñòa
chæ.Chöông trình öùng duïng coù theå truy caäp mieàn nhôù PI theo töøng Byte ( PIB),töøng töø
PIW hoaëc töøng töø keùp PID .
PQ: Mieàn ñòa chæ coång ra cho caùc module töông töï ( I/O External Output).Caùc giaù trò theo
nhöõng ñòa chæ naøy seõ ñöôïc module töông töï chuyeån tôùi caùc coång ra töôïng töï .Chöông trình
öùng duïng coù theå truy nhaäp mieàn nhôù PQ theo töøng Byte (PQB),töøng töø (PQW) hoaëc theo
töøng töø keùp (PQD).

Ngöôøi soaïn : Haø vaên Trí 6


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

c/ Vuøng chöùa caùc khoái döõ lieäu: ñöôïc chia laøm 2 loaïi:
DB(Data Block):Mieàn chöùa döõ lieäu ñöôïc toå chöùc thaønh khoái .Kích thöôùc cuõng nhö soá
löôïng khoái do ngöôøi söû duïng quy ñònh ,phuø hôïp vôùi töøng baøi toaùn ñieàu khieån.Chöông trình coù
theå truy nhaäp mieàn naøy theo töøng bit (DBX),byte (DBB),töø (DBW) hoaëc töø keùp (DBD).
L (Local data block) : Mieàn döõ lieäu ñòa phöông ,ñöôïc caùc khoái chöông trình OB,FC,FB toå
chöùc vaø söû duïng cho caùc bieán nhaùp töùc thôøi vaø trao ñoåi döõ lieäu cuûa bieán hình thöùc vôùi nhöõng
khoái chöông trình goïi noù .Noäi dung cuûa moät khoái döõ lieäu trong mieàn nhôù naøy seõ bò xoaù khi
keát thuùc chöông trình töông öùng trong OB ,FC,FB.Mieàn naøy coù theå ñöôïc truy nhaäp töø chöông
trình theo bit (L),byte(LB) töø (LW) hoaëc töø keùp (LD).

5/ Voøng queùt chöông trình:


PLC thöïc hieän chöông trình theo chu kì laëp .Moãi voøng laëp ñöôïc goïi laø voøng queùt (Scan) .Moãi
voøng queùt ñöôïc baét ñaàu baèng giai ñoaïn chuyeån döõ lieäu töø caùc coång vaøo soá tôùi vuøng boä ñeäm aûo
I,tieáp theo laø giai ñoaïn thöïc hieän chöông trình .Trong töøng voøng queùt chöông trình thöïc hieän töø
leänh ñaàu tieân ñeán leänh keát thuùc cuûa khoái OB ( Block End).Sau giai ñoaïn thöïc hieän chöông
trình laø giai ñoaïn chuyeån caùc noäi dung cuûa boä ñeäm aûo Qtôùi caùc coång ra soá .Voøng queùt ñöôïc keát
thuùc baèng giai ñoaïn truyeàn thoâng noäi boävaø kieåm tra loãi.
Chuù yù raèng boä ñeäm I vaø Q khoâng lieân quan tôùi caùc coång vaøo ra töông töï neân caùc leäng truy nhaäp
coång töông töï ñöôïc thöïc hieän tröïc tieáp vôùi coång vaät lí chöù khoâng thoâng qua boä ñeäm.
Thôøi gian caàn thieát ñeå PLC thöïc hieän 1 voøng queùt goïi laø thôøi gian voøng queùt (Scan Time).Thôøi
gian voøng queùt khoâng coá ñònh ,töùc laø khoâng phaûi voøng queùt naøo cuõng ñöôïc thöïc hieän trong moät
khoaûng thôøi gian nhö nhau .Coù voøng queùt ñöôïc thöïc hieän laâu ,coù voøng queùt ñöôïc thöïc hieän
nhanh tuyø thuoäc vaøo soá leänh trong chöông trình ñöôïc thöïc hieän vaø khoái döõ lieäu truyeàn thoâng
trong voøng queùt ñoù.
Nhö vaäy giöõa vieäc ñoïc döõ lieäu töø ñoái töôïng ñeå xöû lí ,tính toaùn vaø vieäc gôûi tín hieäu ñieàu khieån
ñeán ñoái töôïng coù moät khoaûng thôøi gian treã ñuùng baèng thôøi gian voøng queùt .Noùi caùch khaùc ,thôøi
gian voøng queùt quyeát ñònh tính thôøi gian thöïc cuûa chöông trình ñieàu khieån trong PLC .Thôøi
gian voøng queùt caøng ngaén ,tính thôøi gian thöïc cuûa chöông trình caøng cao.
Neáu söû duïng caùc khoái chöông trình ñaëc bieät coù cheá ñoä ngaét ,,ví duï nhö khoái OB40,OB80…,
chöông trình cuûa caùc khoái ñoù seõ ñöôïc thöïc hieän trong voøng queùt khi xuaát hieän tín hieäu baùo ngaét
cuøng chuûng loaïi.Caùc khoái chöông trình naøy coù theå ñöôïc thöïc hieän taïi moïi ñieåm trong voøng
queùt chöù khoâng bò goø eùp laø phaûi ôû trong giai ñoaïn thöïc hieän chöông trình.Chaúng haïn neáu 1 tín
hieäu baùo ngaét xuaát hieän khi PLC ñang ôû giai ñoaïn truyeàn thoâng vaø kieåm tra noäi boä,PLC seõ
ngöøng coâng vieäc truyeàn thoâng ,kieåm tra ñeå thöïc hieän khoái chöông trình töông öùng vôùi tín hieäu
baùo ngaét ñoù .Vôùi hình thöùc xöû lí tín hieäu ngaét nhö vaäy,thôøi gian voøng queùt seõ caøng lôùn khi caøng
coù nhieàu tín hieäu ngaét xuaát hieän trong voøng queùt .Do ñoù ñeå naâng cao tính thôøi gian thöïc cho
chöông trình ñieàu khieån ,tuyeät ñoái khoâng neân vieát chöông trình xöû lí ngaét quaù daøi hoaëc quaù
laïm duïng vieäc söû duïng cheá ñoä ngaét trong chöông trình ñieàu khieån.
Taïi thôøi ñieåm thöïc hieän leänh vaøo ra ,thoâng thöôøng leänh khoâng laøm vieäc tröïc tieáp vôùi coång
vaøo ra maø chæ thoâng qua boä ñeäm aûo cuûa coång trong vuøng nhôù tham soá.Vieäc truyeàn thoâng giöõa
boä ñeäm aûo vôùi ngoaïi vi trong caùc giai ñoaïn 1 vaø 3 do heä ñieàu haønh CPU quaûn lí .ÔÛ 1 soá modul
CPU ,khi gaëp leänh vaøo ra ngay laäp töùc,heä thoáng seõ cho döøng moïi coâng vieäc khaùc ,ngay caû
chöông trình xöû lí ngaét,ñeå thöïc hieän leänh tröïc tieáp vôùi coång vaøo ra.

Ngöôøi soaïn : Haø vaên Trí 7


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

6 / Caáu truùc chöông trình:


Chöông trình trong S7_300 ñöôïc löu trong boä nhôù cuûa PLC ôû vuøng giaønh rieâng cho chöông
trình vaø coù theå ñöôïc laäp vôùi 2 daïng caáu truùc khaùc nhau.
a/ Laäp trình tuyeán tính: toaøn boä chöông trình naèm trong moät khoái trong boä nhôù .Loaïi hình
caáu truùc tuyeán tính naøy phuø hôïp vôùi nhöõng baøi toaùn töï ñoäng nhoû,khoâng phöùc taïp .Khoái ñöôïc
choïn phaûi laø khoái OB1 ,laø khoái maø PLC luoân queùt vaø thöïc hieän caùc leänh trong ñoù thöôøng
xuyeân,töø leänh ñaàu tieân ñeán leänh cuoái cuøng vaø quay laïi leänh ñaàu tieân.
b/ Laäp trình coù caáu truùc: Chöông trình ñöôïc chia thaønh nhöõng phaàn nhoû vaø moãi phaàn thöïc
thi nhöõng nhieäm vuï chuyeân bieät rieâng cuûa no,töøng phaàn naøy naèm trong nhöõng khoái chöông
trình khaùc nhau .Loaïi hình caáu truùc naøy phuø hôïp vôùi nhöõng baøi toaùn ñieàu khieån nhieàu nhieäm
vuï vaø phöùc taïp .PLC S7_300 coù 4 loaïi khoái cô baûn sau:
- Loaïi khoái OB ( Organization Block) : Khoái toå chöùc vaø quaûn lí chöông trình ñieàu khieån
.Coù nhieàu loaïi khoái OB vôùi nhöõng chöùc naêng khaùc nhau ,chuùng ñöôïc phaân bieät vôùi
nhau baèng moät soá nguyeân ñi sau nhoùm kí töï OB.
Ví duï: OB1,OB35,OB40,OB80,…..
- Loaïi khoái FC (Program block): Khoái chöông trình vôùi nhöõng chöùc naêng rieâng gioáng
nhö 1 chöông trình con hoaëc moät haøm ( chöông trình con coù bieán hình thöùc).Moät
chöông trình öùng duïng coù theå coù nhieàu khoái FC vaø caùc khoái FC naøy ñöôïc phaân bieät
vôùi nhau baèng moät soá nguyeân sau nhoùm kí töï FC.
Ví duï: FC1,FC2….
- Loaïi khoái FB ( Function Block) :Laø loaïi khoái FC ñaëc bieät coù khaû naêng trao ñoåi 1
löôïng döõ lieäu lôùn vôùi caùc khoái chöông trình khaùc .Caùc döõ lieäu naøy phhaûi ñöôïc toå chöùc
thaønh khoái döõ lieäu rieâng coù teân goïi laø Data block.Moät chöông trình öùng duïng coù theå
coù nhieàu khoái FB vaø caùc khoái Fb naøy ñöôïc phaân bieät vôùi nhau baèng moät soá nguyeân
sau nhoùm kí töï FB.Chaúng haïn nhö FB1,FB2…
- Loaïi khoái DB ( Data Block) : Khoái chöùa caùc döõ lieäu caàn thieát ñeå thöïc hieän chöông
trình .Caùc tham soá cuûa khoái do ngöôøi duøng töï ñaët .Moät chöông trình öùng duïng coù theå
coù nhieàu khoái DB vaø caùc khoái DB naøy ñöôïc phaân bieät vôùi nhau baèng moät soá nguyeân
sau nhoùm kí töï DB
Ví duï: DB1,DB2….
Chöông trình trong caùc khoái ñöôïc lieân keát vôùi nhau baèng caùc leäng goïi khoái ,chuyeån
khoái.Xem nhöõng phaàn chöông trình trong caùc khoái nhö laø caùc chöông trình con thì S7_300
cho pheùp goïi chöông trình con loàng nhau ,töùc laø chöông trình con naøy goïi moät chöông
trình con khaùc vaø töø moät chöông trình con ñöôïc goïi laïi goïi tôùi moät chöông trình con thöù 3
… Soá caùc leänh goïi loàng nhau phuï thuoäc vaøo töøng chuûng loaïi module CPU maø ta ñang söû
duïng. Ví duï ñoái vôùi module CPU 314 thì soá leänh goïi loàng nhau nhieàu nhaát coù theå cho
pheùp laø 8.Neáu soá laàn goïi khoái loàng nhau maø vöôït quaù con soá giôùi haïn cho pheùp ,PLC seõ
töï chuyeån qua cheá ñoä Stop vaø ñaët côø baùo loãi.
7/ Caùc khoái OB ñaëc bieät:
Trong khi khoái OB ñöôïc thöïc hieän ñeàu ñaën ôû töøng voøng queùt trong giai ñoaïn thöïc hieän
chöông trình thì caùc khoái OB khaùc chæ ñöôïc thöïc hieän khi xuaát hieän tín hieäu baùo ngaét
töông öùng ,noùi caùch khaùc chöông trình vieát cho caùc khoái OB naøy chính laø chöông trình
xöû lí tín hieäu ngaét (event).Chuùng bao goàm:

Ngöôøi soaïn : Haø vaên Trí 8


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

OB10 ( Time of Day Interrupt):Chöông trình trong khoái seõ ñöôïc thöïc hieän khi giaù trò
cuûa ñoàng hoà thôøi gian thöïc naèm trong moät khoaûng thôøi gian ñaõ ñöôïc quy ñònh.OB10
coù theå goïi moät laàn ,nhieàu laàn caùch ñeàu nhau töøng phuùt, töøng giô,töøng ngaøy ….Vieäc quy
ñònh khoaûng thôøi gian hay soá laàn goïi OB10 ñöôïc thöïc hieän nhôø chöông trình heä thoáng
SFC28 hoaëc trong baûng tham soá cuûa module CPU nhôø phaàn meàm Step 7.
OB20 ( Time Day Interrupt): Chöông trình trong khoái seõ ñöôïc thöïc hieän sau moät
khoaûng thôøi gian treã ñaët tröôùc keå töø khi goïi chöông trình heä thoáng SFC32 ñeå ñaët thôøi
gian treã.
OB35 (Cyclic Interrupt): Chöông trình trong OB35 seõ ñöôïc thöïc hieän caùch ñeàu nhau
1 khoaûng thôøi gian coá ñònh.Maëc ñònh khoaûng thôøi gian naøy seõ laø 100ms,xong ta coù theå
thay ñoåi noù trong baûng tham soá cuûa module CPU ,nhôø phaàn meàm Step7.
OB40 (Hardware Interrupt) : Chöông trình trong OB seõ ñöôïc thöïc hieän khi xuaát hieän
1 tín hieäu baùo ngaét töø ngoaïi vi ñöa vaøo module CPU thoâng qua caùc coång vaøo ra soá
onboard ñaëc bieät,hoaëc thoâng qua caùc module SM,CP,FM
OB80 (Cycle Time Fault): Chöông trình trong khoái OB80 seõ ñöôïc thöïc hieän khi thôøi
gian voøng queùt(Scan time) vöôït quaù khoaûng thôøi gian cöïc ñaïi ñaõ ñöôïc quy ñònh hoaëc
khi coù moät tín hieäu ngaét goïi moät khoái OB naøo ñoù maø khoái OB naøy chöa keát thuùc ôû laàn
goïi tröôùc.Maëc ñònh thôøi gian Scan time cöïc ñaïi laø 150ms ,nhöng coù theå thay ñoåi noù
thoâng qua baûng tham soá cuûa module CPU nhôø phaàn meàm Step 7.
OB81 (Power Supply fault): CPU seõ goïi chöông trình trong khoái OB81 khi phaùt
hieän thaáy coù loãi veà nguoàn nuoâi.
OB82( Diagnostic Interrupt):Chöông trình trong OB82 ñöôïc goïi khi CPU phaùt hieän
söï coá töø caùc Modul vaøo ra
OB85( Not Load fault):Chöông trình trong OB82 ñöôïc goïi khi CPU phaùt hieän thaáy
chöông trình öùng duïng coù söû duïng cheá ñoä ngaét nhöng chöông trình söû lí tín hieäu ngaét
laïi khoâng coù trong khoái OB töông öùng.
OB87 ( Communication fault):Khoái OB87 seõ ñöôïc goïi khi CPU phaùt hieän thaáy loãi
trong truyeàn thoâng ví duï nhö khoâng coù tín hieäu traû lôøi töø caùc ñoái taùc.
OB100 ( Start Up Information):Khoái OB100 seõ ñöôïc thöïc hieän 1 laàn khi CPU
chuyeån traïng thaùi Stop sang Run.
OB121 ( Synchronous error):Khoái OB121 seõ ñöôïc goïi khi CPU phaùt hieän thaáy loãi
logic trong chöông trình nhö ñoåi sai kieåu döõ lieäu hoaëc loãi truy nhaäp khoái DB ,FC,FB
khoâng coù trong boä nhôù CPU.
OB122 ( Synchronous error):Khoái OB122 seõ ñöôïc goïi khi CPU phaùt hieän thaáy loãi
truy caäp module trong chöông trình,ví duï chöông trình coù leänh truy nhaäp module vaøo
ra môû roäng nhöng laïi khoâng tìm thaáy module naøy.

8/Caùc Loaïi CPU:


CPU 312: Boä nhôù laøm vieäc 16KB ,chu kì leänh 0.1us

Ngöôøi soaïn : Haø vaên Trí 9


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

CPU 312C : Boä nhôù laøm vieäc 16KB,chu kì leänh 0.1us,tích hôïp saün 10DI/6DO,2 Xung
toác ñoä cao 2.5KHz,2 keânh ñoïc xung toác ñoä cao 10Khz.
CPU 312IFM : Boä nhôù laøm vieäc 6KB,chu kì leänh 0.6us,tích hôïp saün 10DI/6DO
CPU 313 : Boä nhôù laøm vieäc 12KB,chu kì leänh 0,6us
CPU 313C : Boä nhôù laøm vieäc 32KB,chu kì leänh 0,1us, tích hôïp saün 24DI,16DO,5AI
,2AO ,3 Keânh xuaát xung toác ñoä cao (2.5Khz) ,3 keânh ñoïc xung toác ñoä cao (30Khz)
CPU 313C-2DP: Boä nhôù laøm vieäc 32KB,chu kì leänh 0.1us ,tích hôïp saün
24DI,16DO,5AI ,2AO ,3 Keânh xuaát xung toác ñoä cao (2.5Khz) ,3 keânh ñoïc xung toác ñoä
cao (30Khz),coù 2 coång giao tieáp .
CPU 313C-2PtP : Boä nhôù laøm vieäc 32KB,chu kì leänh 0.1us ,tích hôïp saün
24DI,16DO,5AI ,2AO ,3 Keânh xuaát xung toác ñoä cao (2.5Khz) ,3 keânh ñoïc xung toác ñoä
cao (30Khz),coù 2 coång giao tieáp .
MPI+ PtP connector (RS-422/485 (ASCII, ..)
CPU 314: Boä nhôù laøm vieäc 24KB ,chu kì leänh 0.3us
CPU 314IFM : Boä nhôù laøm vieäc 24KB,chu kì leänh 0.3us, tích hôïp saün 20DI/16DO ,4AI
/ 1AO
CPU 314C-2DP:Boä nhôù laøm vieäc 48KB,chu kì leänh 0.1us,tích hôïp saün 24DI / 16DO
,5AI / 2AO , 4 keânh xuaát xung toác ñoä cao,4 keânh ñoïc xung toác ñoä cao.2 coång giao tieáp
.
CPU 314C-2PtP:Boä nhôù laøm vieäc 48KB,chu kì leänh 0.1us,tích hôïp saün 24DI / 16DO
,5AI / 2AO , 4 keânh xuaát xung toác ñoä cao,4 keânh ñoïc xung toác ñoä cao.2 coång giao tieáp
.
CPU 315 : Boä nhôù laøm vieäc 48KB ,chu kì leänh 0.3us
CPU 315-2DP: Boä nhôù laøm vieäc 48KB ,chu kì leänh 0.3us , MPI + DP
CPU 315F-2DP : Boä nhôù laøm vieäc 128KB,chu kì leänh 0.3us , 2 coång giao tieáp.
CPU 316 : Boä nhôù laøm vieäc 128KB ,chu kì leänh 0.3us
CPU 316-2DP: Boä nhôù laøm vieäc 128KB,chu kì leänh 0.3us , 2 coång MPI + DP
CPU 317-2: Boä nhôù laøm vieäc 512KB ,chu kì leänh 0.3us,2 coång giao tieáp MPI + DP
CPU 317F-2: Boä nhôù laøm vieäc 512KB,chu kì leänh 0.3us ,2 coång giao tieáp MPI + DP (
DP master hoaëc Slave)
CPU 318-2: Boä nhôù laøm vieäc 256KB ,chu kì leänh 0.3us ,2 coång giao tieáp MPI + DP (
DP Master hoaëc Slave).
CPU 614: Boä nhôù laøm vieäc 192KB,chu kì leänh 0.3us , tích hôïp saün 512DI/DO
CPU M7: RS232,MPI 64KB SRAM
10/ Caùc loaïi Function Module : FM300:
Controller Module:
FM 355C PID Module: Module ñieàu khieån PID ,4 keânh ñieàu khieån PID ,4AI + 8DI +
4AO
FM 355S PID Module: Module ñieàu khieån PID ,4 keânh ñieàu khieån PID ,4AI + 8DI +
8DO

Ngöôøi soaïn : Haø vaên Trí 10


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

FM 355 Temperature Controller: Module ñieàu khieån nhieät ñoä 4 keânh 4AI + 8DI +
4AO
FM 355 Temperature Controller: Module ñieàu khieån nhieät ñoä 4 keânh 4AI + 8DI +
8DO
M7 Application Module: 4MB,RS232,64KB Sram.
CAM Controller : FM352 CAM Module : 1 keânh ñieàu khieån.
CNC Controller : NCU 570 FM-NC : Ñieàu khieån CNC
Counter Module : FM350-1 Counter Module : Module ñeám ôû toác ñoä cao 1 keânh
FM350-2 : Module ñeám ôû toác ñoä cao 8 keânh
Possition Module : Module ñieàu khieån vò trí
FM351 FIXED SPEED POS : Module ñieàu khieån vò trí
FM353 Fstepper Motor : Module ñieàu khieån ñoäng cô böôùc 4DI + 4DO
FM354 F Servo Motor : Module ñieàu khieån ñoäng cô Servo 4DI + 4DO
Modul Nguoàn :Coù 3 loaïi Modul nguoàn 10A,5A,2A PS 307
Modul Rack : Choïn Rack (Rail) ñeå ñònh daïng cho caáu hình phaàn cöùng.
Modul SM300 : Bao goàm caùc loaïi Modul :
Modul Analog Input (AI): Modul ñoïc 2 keânh,ñoïc 8 keânh vôùi caùc loaïi tín hieäu khaùc nhau
nhö doøng :4-20mA (theo caùch ñaáu 2 daây vaø 4 daây ) ,ñoïc tín hieäu aùp 0-10VDC , ñoïc tín
hieäu RTD,TC…
Modul AI/AO : Modul vöøa ñoïc AI ,vöøa xuaát tín hieäu Analog OutPut
Modul AO : Modul xuaát tín hieäu Analog Output.
Modul DI : Modul ñoïc tín hieäu soá
Modul DO: Modul xuaát tín hieäu soá
Modul DI/DO : Modul vöøa ñoïc vaø xuaát tín hieäu soá.

1/ Caùc vuøng nhôù S7_300:


Trong S7_300 coù caùc vuøng nhôù sau:
I: Input, caùc ngoõ vaøo soá.
Q:Output, caùc ngoõ ra soá.
M: Internal Memory, vuøng nhôù noäi.
DB: Data Block, döõ lieäu. Khi söû duïng vuøng nhôù naøy thì phaûi khai baùo trong phaàn meàm.
PIW: Analog Input, ngoõ vaøo analog.
PQW: Analog Output, ngoõ ra analog.
T: Timer.
C: Counter.
Ñònh daïng döõ lieäu:
* Kieåu Bool:
VD: Q0.0, I0.0, DB1.DBX2.3, M1.7….

M1.7

Soá bit cuûa Byte


Teân vuøng nhôù

Ngöôøi soaïn : Haø vaên Trí


Soá Byte 11
Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

DB1.DBX2.3

Soá bit cuûa Byte

Teân vuøng nhôù


(khoái DB1) Soá Byte

Kieåu döõ lieäu laø


BOOL
Moät bieán kieåu Bool chæ coù 2 giaù trò laø 0 hoaëc 1 (TRUE hoaëc FALSE).
Ñoái vôùi ngoõ IN
Traïng thaùi möùc 0: OV
Traïng thaùi möùc 1:24V
Ñoái vôùi ngoõ OUT:
Traïng thaùi möùc 0: xuaát 0V hoaëc hôû tieáp ñieåm
Traïng thaùi möùc 1: xuaát 24V hoaëc ñoùng tieáp ñieåm
* Kieåu Byte:
1 Byte = 8 Bit. Suy ra, giaù trò 1 Byte trong khoûang: 0 -(28-1) hay 0-255
VD: QB0, MB3, VB10, SMB2, DB1,DBB10…

QB0

Soá Byte

Teân vuøng nhôù


Vieát taét cuûa Byte

Ngöôøi soaïn : Haø vaên Trí 12


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

DB1.DBB10

Teân vuøng nhôù


(khoái DB1) Soá Byte

Kieåu döõ lieäu laø


BYTE

* Kieåu Word:
1 Word = 2 Byte = 16 Bit. Suy ra, giaù trò 1 Word trong khoûang: 0 -(216-1)
VD: IW0, QW0, MW3, DB1.DBW10,…

QW0

Soá Word

Teân vuøng nhôù


Vieát taét cuûa Word

DB1.DBW10

Teân vuøng nhôù


(khoái DB1) Soá WORD

Kieåu döõ lieäu laø


WORD

QW0=QB0+QB1, Trong ñoù, QB0 laø byte cao, QB1 laø Byte thaáp.
DB1.DBW10=DB1.DBB10 + DB1.DBB11

Byte thaáp
Byte cao
* Kieåu DWord:
1 DWord = 2 Word = 4 Byte = 32 Bit. Suy ra, giaù trò 1 Word trong khoûang: 0 -(232-1)
VD: ID0, QD0, MD3, DB1.DBD10, …

QD0
Soá DWord

Teân vuøng nhôù

Ngöôøi soaïn : Haø vaên Trí 13


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Vieát taét cuûa DWord

DB1.DBD10

Teân vuøng nhôù


(khoái DB1) Soá DOUBLE
WORD
Kieåu döõ lieäu laø
DOUBLE WORD

MD0=MW0+MW2=MB0+MB1+MB2+MB3, Trong ñoù, MB0 laø byte cao nhaát,MB3 laø Byte
thaáp nhaát.
* Kieåu Int: Soá nguyeân
Moät bieán kieåu Int töôøng ñöông moät Word, nghóa laø dung löôïng cuûa 1 bieán kieåu Int cuõng goàm
16 bit. Tuy nhieân, bieán kieåu Int vaø Word cuõng coù nhöõng ñieåm khaùc nhau nhö sau:
1/ Bieán kieåu Word laø bieán ko daáu, bieán kieåu Int coù daáu(bit troïng soá cao nhaát laø bit daáu).
2/ Giaù trò 1 Word: 0 -(216-1), giaù trò moät Int (-215) – (215-1)
3/ Ñònh daïng moät bieán kieåu Word phaûi coù W#16# ñöùng ñaàu, coøn Int thì khoâng.
VD: W#16#1234, W#16#ABCD: moät Word
1,5,100,250…: moät Int
* Kieåu DInt: Soá nguyeân
Moät bieán kieåu DInt töôøng ñöông moät DWord, nghóa laø dung löôïng cuûa 1 bieán kieåu Int cuõng
goàm 32 bit. Tuy nhieân, bieán kieåu DInt vaø DWord cuõng coù nhöõng ñieåm khaùc nhau nhö sau:
1/ Bieán kieåu DWord laø bieán ko daáu, bieán kieåu DInt coù daáu(bit troïng soá cao nhaát laø bit daáu).
2/ Giaù trò 1 DWord: 0 -(232-1), giaù trò moät Int (-231) – (231-1)
3/ Ñònh daïng moät bieán kieåu DWord phaûi coù DW#16# ñöùng ñaàu.
Ñònh daïng moät bieán kieåu DInt phaûi coù L# ñöùng ñaàu.
VD: DW#16#12345678, DW#16#ABCDABCD: moät DWord
L#1,L#5,L# -2,L#12345: moät Dint
* Kieåu Real: Soá thöïc.
Moät bieán kieåu Real 32 bit, nghóa laø vuøng nhôù cuõng laø Dword.
Ñònh daïng: phaûi coù daáu “.” Thaäp phaân.
VD: 1.5, 2.3, 0.09, 1.0, 100.2 …

Ngöôøi soaïn : Haø vaên Trí 14


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

I/Taäp leänh trong S7_300:


Kí hieäu: KQ laø keát quaû thu ñöôïc sau pheùp tính
KT laø keát quaû tröôùc pheùp tính
A.Thanh Ghi Traïng Thaùi:
Khi thöïc hieän leänh ,CPU seõ ghi nhaän laïi traïng thaùi cuûa pheùp tính trung gian cuõng nhö cuûa keát
quaû vaøo moät thanh ghi ñaëc bieät 16 Bits,ñöôïc goïi laø thanh ghi traïng thaùi ( Status Word) >Maëc
duø thanh ghi traïng thaùi naøy coù ñoä daøi 16 Bits nhöng chæ söû duïng 9 Bits vôùi caáu truùc nhö sau:
BR CC1 CC0 OV OS OR STA RLO FC

-FC ( First check) : Khi phaûi thöïc hieän moät daõy caùc leänh logic lieân tieáp nhau goàm caùc pheùp
tính giao ,hôïp vaø nghòch ñaûo,bit FC coù giaù trò baèng 1,hay noùi caùch khaùc ,FC=0 khi daõy leänh
Logic tieáp ñieåm vöøa ñöôïc keát thuùc.
-RLO (Result of logic operation) : Keát quaû töùc thôøi cuûa pheùp tính logicvöøa ñöôïc thöïc hieän
-STA (Status bit) : Bit traïng thaùi naøy luoân coù giaù trò logic cuûa tieáp ñieåm ñöôïc chæ ñònh trong
leänh.
-OR :Ghi laïi giaù trò cuûa pheùp tính logic giao cuoái cuøng ñöôïc thöïc hieän ñeå phuï giuùp cho vieäc
thöïc hieän pheùp toaùn hôïp sau ñoù.Ñieàu naøy laø caàn thieát vì trong moät bieåu thöùc haøm 2 trò ,pheùp
tính giao bao giôø cuõng phaûi ñöôïc thöïc hieän tröôùc caùc pheùp tính hôïp.
-OS (Stored overflow bit) : Ghi laïi giaù trò Bit bò traøn ra ngoaøi maûng oâ nhôù.
-OV(Overflow Bit): Bit baùo caùo keát quaû pheùp tính bò traøn ra ngoaøi maûng oâ nhôù.
-CC0 vaø CC1 ( Condition code) : Hai bit baùo traïng thaùi cuûa keát quaû pheùp tính vôùi soá
nguyeân,soá thöïc pheùp dòch chuyeån hoaëc pheùp tính logic trong ACCU
CC1 CC0 YÙ nghóa
0 0 Keát quaû baèng 0 (=0)
0 1 Keát quaû nhoû hôn 0 ( < 0 )
1 0 Keát quaû lôùn hôn 0 ( > 0 )
Khi thöïc hieän leänh toaùn hoïc nhö coäng tröø nhaân chia vôùi soá nguyeân hoaëc soá thöïc
CC0 CC1 YÙ Nghóa
0 0 Keát quaû quaù nhoû khi thöïc hieän leänh coäng (+I,+D)
0 1 Keát quaû quaù nhoû khi thöïc hieän leänh nhaân (*I,*D) hoaëc quaù lôùn
khi thöïc hieän leänh coäng tröø (+I,+D,-I,-D)
1 0 Keát quaû quaù lôùn khi thöïc hieän leänh nhaân chia (*I,*D,/I,/D ) hoaëc
quaù nhoû khi thöïc hieän leänh coäng tröø (+I,+D,-I,-D)
1 1 Keát quaû bò traøn do thöïc hieän leänh chia cho 0 (/I,/D)
Khi thöïc hieän leänh toaùn hoïc vôùi soá nguyeân nhöng keát quaû bò traøn oâ nhôù
CC0 CC1 YÙ Nghóa
0 0 Keát quaû coù soá muõ e quaù lôùn
0 1 Keát quaû coù mantissa quaù nhoû
1 0 Keát quaû coù mantissa quaù lôùn
1 1 Pheùp tính sai quy chuaån

Ngöôøi soaïn : Haø vaên Trí 15


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Khi thöïc hieän leänh toaùn hoïc vôùi soá thöïc nnhöng keát quaû bò traøn oâ nhôù

CC0 CC1 YÙ Nghóa


0 0 Giaù trò cuûa bit bò ñaåy ra baèng 0
1 0 Giaù trò cuûa Bit bò ñaåy ra baèng 1
Khi thöïc hieän leänh dòch chuyeån
CC0 CC1 YÙ Nghóa
0 0 Keát quaû baèng 0
1 0 Keát quaû khaùc 0
Khi thöïc hieän leänh logic trong ACCU
BR ( Binary result bit) : Bit traïng thaùi cho pheùp lieân keát hai loaïi ngoân ngöõ laäp trình STL vaø
LAD .Chaúng haïn cho pheùp ngöôøi söû duïng coù theå vieát moät khoái chöông trình FB hoaëc FC treân
ngoân ngöõ STL nhöng goïi vaø söû duïng chuùng trong moät chöông trình khaùc vieát treân LAD .Ñeå
tao ra ñöôïc moái lieân keát ñoù,ta caàn phaûi keát thuùc chöông trình trong FB,FC baèng leänh ghi
BR = 1 ,neáu chöông trình chaïy khoâng coù loãi
BR = 0 ,neáu chöông trình chaïy coù loãi
Khi söû duïng caùc khoái haøm ñaëc bieät cuûa heä thoáng ( SFC hoaëc SFB) ,traïng thaùi laøm vieäc cuûa
chöông trình cuõng ñöôïc thoâng baùo ra ngoaøi qua bit traïng thaùi BR nhö sau:
BR=1 neáu SFC hay SFB thöïc hieän khoâng coù loãi
BR=0 neáu coù loãi khi thöïc hieän SFC hay SFB
1/ Leänh veà bit:
Tieáp ñieåm thöôøng hôû: KQ=KT neáu I0.0=1. KQ=0 neáu I0.0=0

Tieáp ñieåm thöôøng ñoùng : KQ=KT neáu I0.0=0. KQ=0 neáu I0.0=1

Leänh Not: KQ thu ñöôïc baèng ñaûo giaù trò cuûa KT


Neáu KT=1 thì KQ=0 ; Neáu KT=0 thì KQ=1

Ngoõ ra ( cuoän coil) : Gaùn KQ cho ngoõ ra Q0.0

Xaùc ñònh keát quaû: Gaùn KQ taïi vò trí maø leänh ñöôïc cheøn
Vd: M0.0 löu keát quaû sau 2 pheùp tính qua I0.0 vaø I0.1

Ngöôøi soaïn : Haø vaên Trí 16


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Leänh Reset Bit: Gaùn giaù trò 0 cho M0.0

Leänh Set Bit: Gaùn giaù trò 1 cho M0.0

Leänh RS:
Neáu I0.0=1 , I0.1=0 thì M0.0=1, Q0.0=0
Neáu I0.0=0 ,I0.1=1 thì M0.0=0 ,Q0.0=1
Neáu I0.0=I0.1=0 Thì khoâng coù gì thay ñoåi.
Neáu I0.0=I0.1=1 thì M0.0=Q0.0=1

Leänh SR:
Neáu I0.0=1 , I0.1=0 thì M0.0=1, Q0.0=1
Neáu I0.0=0 ,I0.1=1 thì M0.0=0 ,Q0.0=0
Neáu I0.0=I0.1=0 Thì khoâng coù gì thay ñoåi.
Neáu I0.0=I0.1=1 thì M0.0=Q0.0=0

Vi phaân caïnh leân :


M0.0 löu giaù trò KQ ôû voøng queùt tröôùc
Khi I0.0 chuyeån traïng thaùi töø 0 sang 1 vaø M0.0 =0 thì Q0.0 =1

Vi phaân caïnh xuoáng:


M0.0 löu giaù trò KQ ôû voøng queùt tröôùc
Khi I0.0 chuyeån traïng thaùi töø 1 xuoáng 0 vaø M0.0=1 thì Q0.0=1

Ngöôøi soaïn : Haø vaên Trí 17


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Nhö vaäy trong caû 2 leänh vi phaân caïnh xuoáng vaø vi phaân caïnh leân thì Q0.0 chæ ON trong 1
chu kì taïi thôøi ñieåm thoaû ñieàu kieän.
Leänh Save : Löu giaù tròRLO ( KQ) vaøo Bit côø BR (Binary Result Bit)

Leänh NEG: Khi I0.0=1 vaø I0.1 chuyeån traïng thaùi töø 1 xuoáng 0 thì Q0.0 ON trong 1 chu kì
Hay noùi caùch Khaùc Q0.0 chæ ON taïi thôøi ñieåm thoaû ñieàu kieän baøi toaùn.

Leänh POS: : Khi I0.0=1 vaø I0.1 chuyeån traïng thaùi töø 0 leân 1 thì Q0.0 ON trong 1 chu kì
Hay noùi caùch Khaùc Q0.0 chæ ON taïi thôøi ñieåm thoaû ñieàu kieän baøi toaùn.

2/ Leänh veà Timer :

Leänh S_PULSE:
Neáu I0.0=1 Timer ñöôïc kích chaïy,khi I0.0=0 hoaëc chaïy ñuû thôøi gian ñaët 2s thì Timer döøng
Hoaëc coù tín hieäu I0.1 thì Timer cuõng döøng
Timer chæ chaïy laïi khi coù tín hieäu môùi töø I0.0 ( töùc laø I0.0 chuyeån traïng thaùi töø 0 leân 1 )
Q0.0=1 khi Timer ñang chaïy.
MW100 löu giaù trò ñeám cuûa Timer theo daïng Integer
MW102 löu giaù trò cuûa Timer theo daïng BCD
Chöùc naêng cuûa Timer naøy laø taïo xung coù thôøi gian ñöôïc ñaët saün

Ngöôøi soaïn : Haø vaên Trí 18


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Leänh S_PEXT:
Timer kích coù nhôù,Khi coù tín hieäu caïnh leân ôû I0.0 Timer T5 chaïy,neáu ñuû thôøi gian ñaët Timer
döøng.
Trong quaù trình chaïy neáu coù tín hieäu môùi töø chaân I0.0 thì thôøi gian Timer laïi ñöôïc tính laïi töø
ñaàu.
Trong quaù trình chaïy neáu coù tín hieäu I0.1 thì Timer döøng
Q0.0 =1 khi Timer ñang chaïy.
Caùc oâ nhôù MW100 vaø MW102 löu giaù trò hieän thôøi cuûa Timer theo daïng Integer vaø daïng
BCD

Leänh S_ODT:
Neáu I0.0=1 Timer baét ñaàu chaïy khi ñuû thôøi gian thì ngöng khi ñoù ngoõ Q0.0 seõ leân 1 neáu I0.0
vaãn coøn giöõ traïng thaùi 1,khi coù tín hieäu I0.1 thì taát caû phaûi ñöôïc Reset veà 0

Ngöôøi soaïn : Haø vaên Trí 19


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Caùc oâ nhôù MW100 vaø MW102 löu giaù trò hieän thôøi cuûa Timer theo daïng Integer vaø daïng
BCD

Leänh S_ODTS:
Timer kích coù nhôù,khi coù xung caïnh leân ôû I0.0 Timer baét ñaàu chaïy ,ngoõ ra Q0.0=1 khi Timer
ngöng vaø chæ taét khi coù tín hieäu Reset (tín hieäu I0.1)
Trong quaù trình Timer chaïy neáu coù söï chuyeån ñoåi tín hieäu töø chaân I0.0 them 1 laàn nöõa thì
Timer seõ nhôù vaø tieáp tuïc chaïy khi heát thôøi gian laàn tröôùc.

Ngöôøi soaïn : Haø vaên Trí 20


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Leänh S_OFFDT:
Khi I0.0 ON , Q0.0 =1 ,khi I0.0 OFF Timer baét ñaàu chaïy vaø Q0.0 chæ taét khi ñuû thôøi gian vaø
I0.0 vaãn OFF
Khi coù tín hieäu Reset I0.1 thì taát caû tín hieäu ñeàu OFF

Ngöôøi soaïn : Haø vaên Trí 21


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Leänh TON:

Soá hieäu timer

Giaù trò ñaët cho timer


Soá Timer trong S7_300 phuï thuoäc vaøo loaïi CPU.
CPU 312: coù 128 Timer
CPU 313 trôû leân: coù 256 Timer.
Coù 2 caùch caøi ñaët giaù trò cho Timer:
1/ Caøi thoâng soá thôøi gian tröïc tieáp:
Ñeå caøi giaù trò tröïc tieáp cho Timer ta phaûi theâm kí töï S5T# tröôùc giaù trò ñaët. Caùc kí töï keá tieáp
laø thoâng soá thôøi gian muoán caøi ñaët cho Timer.
Toång quaùt nhö sau: S5T#aH_bM_cS_dMS. Trong ñoù:
H: giôø
M: phuùt
S: giaây
MS: mili giaây
a,b,c,d: caùc thoâng soá caøi ñaët.
VD: S5T#3S: thôøi gian caøi ñaët laø 3s
S5T#7S500MS: thôøi gian caøi ñaët laø 7,5s
S5T#1M8S200MS: thôøi gian caøi ñaët laø 1 phuùt 8 giaây 200 ms
S5T#1H1M10S: thôøi gian caøi ñaët laø 1 giôø 1 phuù 10 giaây.

Trong VD treân thì T0 ñöôïc caøi thôøi gian laø 1 giôø 30 phuùt.

Ngöôøi soaïn : Haø vaên Trí 22


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Trong VD treân, khi I0.0 ON, Timer T5 seõ ñöôïc kích hoaït. Ñuû thôøi gian caøi ñaët laø 2 s thì bit
T5 taùc ñoäng laøm cho Q0.0 ON.
Khi ngoõ vaøo I0.1 taùc ñoäng thì Timer ñöôïc reset. Giaù trò hieän taïi cuûa Timer cuõng nhö Bit T5
ñöôïc Reset veà 0.

2/ Caøi ñaët thoâng soá thôøi gian thoâng qua bieán nhôù:
Giaù trò caøi ñaët cho timer thoâng qua moät bieán kieåu WORD 16 bit:

Hai bit cao nhaát trong WORD khoâng söû duïng


Hai bit keá tieáp (Time base) caøi thoâng soá ñôn vò thôøi gian cho Timer, cuï theå:

12 bit keá tieáp laø giaù trò caøi ñaët thôøi gian cho Timer döôùi daïng soá BCD (giaù trò töø 0-999). Nhö
trong VD treân thì giaù trò caøi ñaët cho Timer seõ laø 127s.

Ngöôøi soaïn : Haø vaên Trí 23


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Nhö vaäy ñeå coù theå caøi ñaët giaù trò cho Timer thay ñoåi theo oâ nhôù:
Ta phaûi thöïc hieän caùc böôùc:
Giaù trò Timer phaûi beù hôn hoaëc baèng 999
Chuyeån giaù trò ñoù sang daïng BCD duøng leänh I_BCD
Sau ñoù choïn Time Base theo mong muoán nhö baûng treân baèng caùch choïn 4 Bit ñaàu.
TOFF:

Soá hieäu timer

Giaù trò ñaët cho timer

Trong VD treân, khi I0.0 ON, Bit T5 seõ ON ngay khi I0.0 ON. Khi I0.0 chuyeån töø ON sang
OFF, Timer T5 seõ ñöôïc kích hoaït. Ñuû thôøi gian caøi ñaët laø 2 s thì Timer T5 taùc ñoäng, bit T5
OFF laøm cho Q0.0 OFF.
Khi ngoõ vaøo I0.1 taùc ñoäng thì Timer ñöôïc reset. Giaù trò hieän taïi cuûa Timer cuõng nhö Bit T5
ñöôïc Reset veà 0.
Caùch caøi ñaët thoâng soá thôøi gian cuûa Timer OFF töông töï nhö Timer ON.

TON coù nhôù:

Ngöôøi soaïn : Haø vaên Trí 24


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Soá hieäu timer

Giaù trò ñaët cho timer

Trong VD treân, khi I0.0 ON, Timer T5 seõ ñöôïc kích hoaït. Ñuû thôøi gian caøi ñaët laø 2 s thì bit
T5 taùc ñoäng laøm cho Q0.0 ON. Trong tröôøng hôïp thôøi gian chöa ñuû 2S maø I0.0 chuyeån OFF
sang ON moät laàn nöõa, giaù trò ñeám cuûa Timer seõ ñöôïc khôûi ñoäng laïi.
Giöõa Timer ON vaø Timer ON coù nhôù coøn khaùc nhau moät ñieåm nöõa nhö sau:
Timer ON: sau khi Timer taùc ñoäng, Bit cuûa Timer ñöôïc baät ON, neáu tín hieäu kích Timer maát
ñi thì Timer seõ ñöôïc Reset, Bit timer seõ OFF.
Timer ON coù nhôù: sau khi Timer taùc ñoäng, Bit cuûa Timer ñöôïc baät ON, neáu tín hieäu kích
Timer maát ñi thì Timer vaãn khoâng Reset, Bit timer seõ vaãn ON.
Khi ngoõ vaøo I0.1 taùc ñoäng thì Timer ñöôïc reset. Giaù trò hieän taïi cuûa Timer cuõng nhö Bit T5
ñöôïc Reset veà 0.

Timer xung:

Soá hieäu timer

Giaù trò ñaët cho timer

Ngöôøi soaïn : Haø vaên Trí 25


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Moâ taû:
Khi I0.0 chuyeån töø 0 leân 1, Timer T5 seõ ñöôïc khôûi ñoäng, ngoõ ra bit T5 seõ ON ngay laäp töùc.
Khi heát thôøi gian caøi ñaët laø 2s thì bit T5 OFF (neáu ngoõ vaøo I0.0 vaãn coøn ON). Trong tröôøng
hôïp chöa ñuû 2s maø ngoõ vaøo I0.0 ñaõ OFF, Timer seõ ñöôïc reset vaø ngoõ ra bit T5 OFF.
Trong khi Timer chaïy maø chöa ñuû 2s, neáu I0.1 chuyeån töø 0 leân 1. Ngoõ ra bit T5 seõ OFF vaø
thôøi gian ñöôïc reset.

Timer xung môû roäng:

Soá hieäu timer

Giaù trò ñaët cho timer

Ngöôøi soaïn : Haø vaên Trí 26


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Moâ taû:
Khi I0.0 chuyeån töø 0 leân 1, Timer T5 seõ ñöôïc khôûi ñoäng, ngoõ ra bit T5 seõ ON ngay laäp töùc.
Khi heát thôøi gian caøi ñaët laø 2s thì bit T5 OFF (baát keå ngoõ vaøo I0.0 vaãn coøn ON hay ñaõ OFF).
Trong tröôøng hôïp chöa ñuû 2s maø ngoõ vaøo I0.0 chuyeån töø OFF leân ON moät laàn nöõa, Timer seõ
ñöôïc khôûi ñoäng laïi.
Khi I0.1 chuyeån töø 0 leân 1. Ngoõ ra bit T5 seõ OFF vaø thôøi gian ñöôïc reset.

Ngöôøi soaïn : Haø vaên Trí 27


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

3/ Counter:
Leänh ñeám leân xuoáng S_CUD:
Ngoõ vaøo I0.2=1 : ñöa giaù trò ñeám vaøo PV
Khi I0.0 chuyeån traïng thaùi töø 0 leân 1 ,C0 ñeám taêng leân 1
Khi I0.1 chuyeån traïng thaùi töø 0 leân 1 ,C0 ñeám giaûm xuoáng 1
Khi caû I0.0 vaø I0.1 ñeàu chuyeån traïng thaùi thì C0 khoâng thay ñoåi
Khi I0.3=1 thì C0 bò Reset veà 0
Giaù trò boä ñeám hieän thôøi naèm trong 2 oâ nhôù MW100 vaø MW102 döôùi daïng Integer vaø daïng
BCD ,giaù trò naøy coù taàm töø 0 – 999.
Ngoõ ra Q0.0=1 khi giaù trò ñeám lôùn hôn 0

Leänh ñeám leân S_CU:


Ngoõ vaøo I0.1=1 : ñöa giaù trò ñeám vaøo PV
Khi I0.0 chuyeån traïng thaùi töø 0 sang 1 , C0 ñeám taêng leân 1
Khi I0.2 = 1 Counter bò Reset
Ngoõ ra Q0.0=1 khi giaù trò ñeám lôùn hôn 0
Giaù trò boä ñeám hieän thôøi naèm trong 2 oâ nhôù MW100 vaø MW102 döôùi daïng Integer vaø daïng
BCD ,giaù trò naøy coù taàm töø 0 – 999.
Ngoõ ra Q0.0=1 khi giaù trò ñeám lôùn hôn 0

Leänh ñeám xuoáng S_CD:


Ngoõ vaøo I0.1=1 : ñöa giaù trò ñeám vaøo PV
Khi I0.0 chuyeån traïng thaùi töø 1 sang 0 , C0 giaûm ñi 1
Khi I0.2 = 1 Counter bò Reset
Ngoõ ra Q0.0=1 khi giaù trò ñeám lôùn hôn 0

Ngöôøi soaïn : Haø vaên Trí 28


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Giaù trò boä ñeám hieän thôøi naèm trong 2 oâ nhôù MW100 vaø MW102 döôùi daïng Integer vaø daïng
BCD ,giaù trò naøy coù taàm töø 0 – 999.
Ngoõ ra Q0.0=1 khi giaù trò ñeám lôùn hôn 0

Leänh Set Counter: (SC)

Soá hieäu Counter

Giaù trò ñaët cho Counter

S7_300 coù 1000 counter (töø C0 ñeán C999)

Moâ taû:
Khi I0.0 ON, giaù trò 100 seõ ñöôïc naïp cho Counter C5.
Khi I0.0 OFF, giaù trò Counter seõ phuï thuoäc vaøo caùc tín hieäu kích ñeám.
Leänh ñeám leân: (CU)

Soá hieäu Counter

Ngöôøi soaïn : Haø vaên Trí 29


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Moâ taû:
Khi I0.0 chuyeån töø 0 leân 1, giaù trò 100 seõ ñöôïc naïp vaøo cho Counter C10.
Cöù moãi xung caïnh leân ôû ngoõ vaøo I0.1, boä ñeám C10 seõ taêng 1 ñôn vò. Khi giaù trò taêng ñeán 999
thì tín hieäu kích taêng khoâng coøn taùc duïng.
Khi I0.2 chuyeån töø 0 leân 1, giaù trò boä ñeám vaø bit C10 seõ ñöôïc reset.
Leänh ñeám xuoáng: (CD)

Soá hieäu Counter

Moâ taû:
Khi I0.0 chuyeån töø 0 leân 1, giaù trò 100 seõ ñöôïc naïp vaøo cho Counter C10.
Cöù moãi xung caïnh leân ôû ngoõ vaøo I0.1, boä ñeám C10 seõ giaûm 1 ñôn vò. Khi giaù trò giaûm ñeán 0
thì tín hieäu kích giaûm khoâng coøn taùc duïng, ñoàng thôøi luùc ñoù C10 seõ OFF. Neáu boä ñeám khaùc
0, C10 seõ ON.
Khi I0.2 chuyeån töø 0 leân 1, giaù trò boä ñeám vaø bit C10 seõ ñöôïc reset.
4/Leänh So Saùnh:
a/Leänh so saùnh soá nguyeân:
Leänh EQ_I ( Equal Integer): So saùnh MW100 vaø MW102, neáu 2 soá nguyeân naøy baèng nhau
thì KQ=KT

Leänh NE_I ( Not Equal Integer) : So saùnh MW100 vaø MW102,neáu 2 soá naøy khaùc nhau thì
KQ=KT.

Ngöôøi soaïn : Haø vaên Trí 30


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Leänh GT_I ( Greater than Integer) : So saùnh 2 soá MW100 vaø MW102 ,neáu MW100 lôùn hôn
MW102 thì KQ=KT

Leänh LT_I ( Less than Integer ) : So saùnh 2 soá MW100 vaø MW102,Neáu MW100 beù hôn
MW102 thì KQ=KT

Leänh GE_I ( Greater than or equal Integer ) : So saùnh 2 soá MW100 vaø MW102, Neáu MW100
lôùn hôn hoaëc baèng MW102 thì KQ=KT

Leänh LE_I ( Less than or equal Integer ) : So saùnh 2 soá MW100 vaø MW102, Neáu MW100 beù
hôn hoaëc baèng MW102 thì KQ=KT

b/ Leänh so saùnh soá Double Integer:


Leänh EQ_D ( Equal Double Integer): So saùnh MD100 vaø MD104, neáu 2 soá nguyeân naøy baèng
nhau thì KQ=KT

Ngöôøi soaïn : Haø vaên Trí 31


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Leänh NE_D ( Not Equal Double Integer) : So saùnh MD100 vaø MD104,neáu 2 soá naøy khaùc
nhau thì KQ=KT.

Leänh GT_D ( Greater than DoubleInteger) : So saùnh 2 soá MD100 vaø MD104 ,neáu MD100
lôùn hôn MD104 thì KQ=KT

Leänh LT_D ( Less than DoubleInteger ) : So saùnh 2 soá MD100 vaø MD104,Neáu MD100 beù
hôn MD104 thì KQ=KT

Leänh GE_D ( Greater than or equal DoubleInteger ) : So saùnh 2 soá MD100 vaø MD104, Neáu
MD100 lôùn hôn hoaëc baèng MD104 thì KQ=KT

Leänh LE_D ( Less than or equal DoubleInteger ) : So saùnh 2 soá MD100 vaø MD104, Neáu
MD100 beù hôn hoaëc baèng MD104 thì KQ=KT

Ngöôøi soaïn : Haø vaên Trí 32


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

b/ Leänh so saùnh soá thöïc ( Real):


Leänh EQ_R ( Equal Real): So saùnh MD100 vaø MD104, neáu 2 soá nguyeân naøy baèng nhau thì
KQ=KT

Leänh NE_R ( Not Equal Real) : So saùnh MD100 vaø MD104,neáu 2 soá naøy khaùc nhau thì
KQ=KT.

Leänh GT_R ( Greater than Real) : So saùnh 2 soá MD100 vaø MD104 ,neáu MD100 lôùn hôn
MD104 thì KQ=KT

Leänh LT_R ( Less than Real ) : So saùnh 2 soá MD100 vaø MD104,Neáu MD100 beù hôn MD104
thì KQ=KT

Leänh GE_R ( Greater than or equal Real ) : So saùnh 2 soá MD100 vaø MD104, Neáu MD100
lôùn hôn hoaëc baèng MD104 thì KQ=KT

Ngöôøi soaïn : Haø vaên Trí 33


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Leänh LE_R ( Less than or equal Real ) : So saùnh 2 soá MD100 vaø MD104, Neáu MD100 beù
hôn hoaëc baèng MD104 thì KQ=KT

5 /Leänh chuyeån ñoåi:


Leänh BCD_I : Chuyeån ñoåi töø soá ñònh daïng döôùi daïng BCD ( chöùa 3 Digit)sang soá nguyeân
16 Bit
Soá BCD coù taàm (+/- 999) chöùa trong 12Bit.
Vd: MW100 =22 ñöôïc ñònh daïng döôùi daïng BCD nhö sau:
0000 0010 0010
2 2
Sau khi thöïc hieän leänh chuyeån ñoåi thaønh soá Integer 16 Bit ñöôïc ñònh daïng:
0000 0000 0001 0110 := 1*24 + 1*22 + 1*21 =22

Leänh I_BCD: Chuyeån ñoåi töø soá nguyeân sang soá ñöôïc ñònh daïng döôùi daïng BCD ( chöùa 3
Digit), do soá BCD toái ña 999 neân soá nguyeân phaûi toái ña 999

Leänh I_DI : Chuyeån ñoåi soá nguyeân töø 16Bit sang soá nguyeân 32 Bit ñeå thöïc hieän cho caùc
pheùp toaùn treân soá 32 Bit.

Leänh BCD_DI : : Chuyeån ñoåi töø soá ñònh daïng döôùi daïng BCD ( chöùa 7 Digit)sang soá
nguyeân 32 Bit
Soá BCD coù taàm (+/- 9999999) chöùa trong 28Bit.

Ngöôøi soaïn : Haø vaên Trí 34


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Vd: MD100 =22 ñöôïc ñònh daïng döôùi daïng BCD nhö sau:
0000 0000 0000 0000 0000 0010 0010
2 2
Sau khi thöïc hieän leänh chuyeån ñoåi thaønh soá DoubleInteger 32 Bit ñöôïc ñònh daïng:
0000 0000 0000 0000 0000 0000 0001 0110 := 1*24 + 1*22 + 1*21 =22

Leänh DI_BCD: : Chuyeån ñoåi töø soá nguyeân 32 Bit sang soá ñöôïc ñònh daïng döôùi daïng BCD
( chöùa 7 Digit), do soá BCD toái ña 9999999 neân soá nguyeân phaûi toái ña 9999999

Leänh DI_R : Chuyeån ñoåi töø soá nguyeân 32 Bit sang soá thöïc ñeå phuïc vuï cho caùc pheùp toaùn
treân soá thöïc.
Vd: MD100= 457 ; Sau pheùp toaùn giaù trò môùi laø MD100=457.0

Leänh INV_I : Ñaûo taát caû caùc Bit cuûa soá nguyeân 16 Bit
Vd : MW100 ban ñaàu laø 0101 0111 1000 0101 ; sau leänh chuyeån ñoåi
MW100 luùc sau 1010 1000 0111 1010

Leänh INV_DI: : Ñaûo taát caû caùc Bit cuûa soá nguyeân 32 Bit

Leänh NEG_I : Ñoåi daáu soá nguyeân 16 Bit


Vd: MW100 = 8 sau leänh MW100 = -8

Ngöôøi soaïn : Haø vaên Trí 35


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Leänh NEG_DI : Ñoåi daáu soá nguyeân 32 Bit

Leänh NEG_R : Ñoåi daáu soá thöïc

Leänh Round : Leänh chuyeån ñoåi soá thöïc thaønh soá nguyeân 32 Bit baèng caùch laøm troøn
Vd: MD100 = 20.35 laøm troøn thaønh 20

Leänh Trunc: Leänh chuyeån ñoåi soá thöïc thaønh soá nguyeân 32 Bit baèng caùch caét phaàn nguyeân
Vd: MD100 = 20.56 chuyeån thaønh 20

Leänh Ceil: Leänh chuyeån ñoåi soá thöïc thaønh soá nguyeân 32 Bit baèng caùch laøm troøn leân
Vd: MD100 = 20.04 laøm troøn leân thaønh 21

Leänh Floor: Leänh chuyeån ñoåi soá thöïc thaønh soá nguyeân 32 Bit baèng caùch laøm troøn xuoáng
Vd: MD100 = 23.45 laøm troøn xuoáng coøn 23

6 / Caùc leänh veà soá hoïc:


a/ Pheùp Toaùn treân soá nguyeân 16 Bit:
Leänh ADD_I : Leänh thöïc hieän vieäc coäng 2 soá nguyeân 16 Bit ,keát quaû caát vaøo soá nguyeân
16 Bit,neáu keát quaû vöôït quaù 16 Bit thì côø OV seõ baät leân 1 ,côø OS seõ löu Bit bò traøn ñoù.
MW104 = MW100 + MW102

Ngöôøi soaïn : Haø vaên Trí 36


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Leänh SUB_I : Leänh thöïc hieän vieäc tröø 2 soá nguyeân 16 Bit ,keát quaû caát vaøo soá nguyeân 16
Bit , neáu keát quaû vöôït quaù 16 Bit thì côø OV seõ baät leân 1 ,côø OS seõ löu Bit bò traøn ñoù.
MW104 = MW100 - MW102

Leänh MUL_I : : Leänh thöïc hieän vieäc nhaân 2 soá nguyeân 16 Bit ,keát quaû caát vaøo soá nguyeân
16 Bit , neáu keát quaû vöôït quaù 16 Bit thì côø OV seõ baät leân 1 ,côø OS seõ löu Bit bò traøn ñoù.
MW104 = MW100 * MW102

Leänh DIV_I : : Leänh thöïc hieän vieäc chia 2 soá nguyeân 16 Bit ,keát quaû caát vaøo soá nguyeân 16
Bit , neáu keát quaû vöôït quaù 16 Bit thì côø OV seõ baät leân 1 ,côø OS seõ löu Bit bò traøn ñoù.
MW104 = MW100 : MW102

b/ Pheùp Toaùn treân soá nguyeân 32 Bit:


Leänh ADD_DI : Leänh thöïc hieän vieäc coäng 2 soá nguyeân 32 Bit ,keát quaû caát vaøo soá nguyeân
32 Bit,neáu keát quaû vöôït quaù 32 Bit thì côø OV seõ baät leân 1 ,côø OS seõ löu Bit bò traøn ñoù.
MD108 = MD100 + MD104

Ngöôøi soaïn : Haø vaên Trí 37


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Leänh SUB_DI : Leänh thöïc hieän vieäc tröø 2 soá nguyeân 32 Bit ,keát quaû caát vaøo soá nguyeân 32
Bit , neáu keát quaû vöôït quaù 32 Bit thì côø OV seõ baät leân 1 ,côø OS seõ löu Bit bò traøn ñoù.
MD108 = MD100 - MD104

Leänh MUL_DI : : Leänh thöïc hieän vieäc nhaân 2 soá nguyeân 32 Bit ,keát quaû caát vaøo soá
nguyeân 32 Bit , neáu keát quaû vöôït quaù 32 Bit thì côø OV seõ baät leân 1 ,côø OS seõ löu Bit bò traøn
ñoù.
MD108 = MD100 * MD104

Leänh DIV_DI : : Leänh thöïc hieän vieäc chia 2 soá nguyeân 32 Bit ,keát quaû caát vaøo soá nguyeân
32 Bit , neáu keát quaû vöôït quaù 32 Bit thì côø OV seõ baät leân 1 ,côø OS seõ löu Bit bò traøn ñoù.
MD108 = MD100 : MD104

Leänh MOD_DI : : Leänh xaùc ñònh phaàn dö cuûa pheùp chia 2 soá nguyeân 32 Bit ,keát quaû caát
vaøo soá nguyeân 32 Bit , neáu keát quaû vöôït quaù 32 Bit thì côø OV seõ baät leân 1 ,côø OS seõ löu Bit
bò traøn ñoù.
MD108 = MD100 mod MD104

Ngöôøi soaïn : Haø vaên Trí 38


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

c/ Pheùp Toaùn treân soá nguyeân 32 Bit ( Floating Point Function):


Leänh ADD_R : Leänh thöïc hieän vieäc coäng 2 soá thöïc ,keát quaû caát vaøo soá thöïc,neáu keát quaû
vöôït quaù 32 Bit thì côø OV seõ baät leân 1 ,côø OS seõ löu Bit bò traøn ñoù.
MD108 = MD100 + MD104

Leänh SUB_R : Leänh thöïc hieän vieäc tröø 2 soá thöïc ,keát quaû caát vaøo soá thöïc , neáu keát quaû
vöôït quaù 32 Bit thì côø OV seõ baät leân 1 ,côø OS seõ löu Bit bò traøn ñoù.
MD108 = MD100 - MD104

Leänh MUL_R : : Leänh thöïc hieän vieäc nhaân 2 soá thöïc ,keát quaû caát vaøo soá thöïc , neáu keát
quaû vöôït quaù 32 Bit thì côø OV seõ baät leân 1 ,côø OS seõ löu Bit bò traøn ñoù.
MD108 = MD100 * MD104

Leänh DIV_R : : Leänh thöïc hieän vieäc chia 2 soá thöïc ,keát quaû caát vaøo soá thöïc , neáu keát quaû
vöôït quaù 32 Bit thì côø OV seõ baät leân 1 ,côø OS seõ löu Bit bò traøn ñoù.
MD108 = MD100 : MD104

Ngöôøi soaïn : Haø vaên Trí 39


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Leänh ABS: Leänh xaùc ñònh giaù trò tuyeät ñoái cuûa soá thöïc,keát quaû caát vaøo soá thöïc

Leänh SIN: Leänh tính SIN cuûa soá thöïc,keát quaû caát vaøo soá thöïc.Neáu keát quaû naèm ngoaøi
khoaûng [-1,1] thì côø OV baät leân 1

Leänh COS: Leänh tính COS cuûa soá thöïc,keát quaû caát vaøo soá thöïc.Neáu keát quaû naèm ngoaøi
khoaûng [-1,1] thì côø OV baät leân 1

Leänh TAN: Leänh tính TAN cuûa soá thöïc,keát quaû caát vaøo soá thöïc.Neáu keát quaû naèm ngoaøi
khoaûng 16Bit thì côø OV baät leân 1

Leänh ASIN: Leänh tính Arcsin cuûa soá thöïc,soá thöïc phaûi naèm trong khoaûng [-1,1] keát quaû laø
1 soá thöïc trong khoaûng [-pi/2,pi/2]vaø ñöôïc caát vaøo soá thöïc.

Leänh ACOS: Leänh tính Arccos cuûa soá thöïc,soá thöïc phaûi naèm trong khoaûng [-1,1] keát quaû
laø 1 soá thöïc trong khoaûng [-pi,0]vaø ñöôïc caát vaøo soá thöïc.

Ngöôøi soaïn : Haø vaên Trí 40


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Leänh ATAN: Leänh tính Arctang cuûa soá thöïc,keát quaû laø 1 soá thöïc trong khoaûng [-
pi/2,pi/2]vaø ñöôïc caát vaøo soá thöïc.

Leänh SQR: Leänh tính bình phöông cuûa soá thöïc, keát quaû laø 1 soá thöïc khoâng aâm ñöôïc caát
vaøo soá thöïc.

Leänh SQRT: Leänh tính caên baäc hai cuûa soá thöïc,soá thöïc naøy phaûi laø 1 soá thöïc khoâng aâm,
keát quaû laø 1 soá thöïc khoâng aâm ñöôïc caát vaøo soá thöïc.

Leänh Ln: Leänh tính ln(x) cuûa soá thöïc,soá thöïc naøy phaûi laø 1 soá thöïc khoâng aâm, keát quaû laø 1
soá thöïc ñöôïc caát vaøo soá thöïc.

Leänh EXP: Leänh tính ex cuûa soá thöïc, keát quaû laø 1 soá thöïc khoâng aâm ñöôïc caát vaøo soá thöïc.

7/ Leänh Di chuyeån :
Leänh MOV : Leänh ñöa giaù trò moät oâ nhôù sang 1 oâ nhôù khaùc,leänh naøy coù theå aùp duïng cho
moïi kieåu soá khaùc nhau.( Int,Dint,Real,Byte….)

Ngöôøi soaïn : Haø vaên Trí 41


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

8/Leänh Dòch Bit :


leänh SHR_I: Leänh thöïc hieän vieäc dòch phaûi oâ nhôù 16Bit,keát quaû caát vaøo oâ nhôù 16 Bit,N laø
soá Bit dòch.

leänh SHR_DI: Leänh thöïc hieän vieäc dòch phaûi oâ nhôù 32Bit,keát quaû caát vaøo oâ nhôù 32 Bit,N
laø soá Bit dòch.

leänh SHL_W: Leänh thöïc hieän vieäc dòch traùi oâ nhôù16Bit,keát quaû caát vaøo oâ nhôù 16 Bit,N laø
soá Bit dòch. OÂ nhôù naøy ñöôïc ñònh daïng theo kieåu Word.
Neáu N lôùn hôn 16 thì MW100 =0 vaø côø CC0,OV trong thanh ghi traïng thaùi ñeàu baèng 0

Ngöôøi soaïn : Haø vaên Trí 42


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

leänh SHR_W: Leänh thöïc hieän vieäc dòch phaûi oâ nhôù16Bit,keát quaû caát vaøo oâ nhôù 16 Bit,N laø
soá Bit dòch. OÂ nhôù naøy ñöôïc ñònh daïng theo kieåu Word.

leänh SHL_DW: Leänh thöïc hieän vieäc dòch traùi oâ nhôù 32Bit,keát quaû caát vaøo oâ nhôù 32 Bit,N
laø soá Bit dòch. OÂ nhôù naøy ñöôïc ñònh daïng theo kieåu Word.

leänh SHR_DW: Leänh thöïc hieän vieäc dòch phaûi oâ nhôù 32Bit,keát quaû caát vaøo oâ nhôù 32 Bit,N
laø soá Bit dòch. OÂ nhôù naøy ñöôïc ñònh daïng theo kieåu Word.

leänh ROL_DW: Leänh thöïc hieän vieäc dòch traùi xoay troøn oâ nhôù 32Bit,N laø soá Bit dòch. OÂ
nhôù naøy ñöôïc ñònh daïng theo kieåu Word.

Ngöôøi soaïn : Haø vaên Trí 43


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

leänh ROR_DW: Leänh thöïc hieän vieäc dòch phaûi xoay troøn oâ nhôù 32Bit,N laø soá Bit dòch. OÂ
nhôù naøy ñöôïc ñònh daïng theo kieåu Word.

9/ Caùc pheùp tính treân Word:


Leänh WAND_W : Leänh thöïc hieän vieäc giao 2 Word,keát quaû ñöôïc caát vaøo oâ Word.

Leänh WOR_W : Leänh thöïc hieän vieäc hôïp 2 Word,keát quaû ñöôïc caát vaøo oâ Word.

Leänh WXOR_W : Leänh thöïc hieän vieäc Xor 2 Word,keát quaû ñöôïc caát vaøo oâ Word.

Ngöôøi soaïn : Haø vaên Trí 44


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Leänh WAND_DW : Leänh thöïc hieän vieäc giao 2 DoubleWord,keát quaû ñöôïc caát vaøo oâ
DoubleWord.

Leänh WOR_DW : Leänh thöïc hieän vieäc hôïp 2 DoubleWord,keát quaû ñöôïc caát vaøo oâ
DoubleWord.

Leänh WXOR_DW : Leänh thöïc hieän vieäc Xor 2 DoubleWord,keát quaû ñöôïc caát vaøo oâ
DoubleWord.

10/Caùc pheùp tính treân thanh ghi traïng thaùi :

Ngöôøi soaïn : Haø vaên Trí 45


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Leänh ==0: Leänh tính KQ:= KT + (CC0^CC1)

Leänh 0>=: Leänh tính KQ:= KT + CC0

Leänh 0<=: Leänh tính KQ:= KT + CC1

Leänh 0<: Leänh tính KQ:= KT + (CC0^CC1)

Leänh 0>: Leänh tính KQ:= KT + (CC0^CC1)

Leänh 0<>: Leänh tính KQ:= KT + [(CC0^CC1)+( CC0^CC1)]

11 / Leänh nhaûy:
Leänh JMP: Nhaûy neáu RLO=1,Neáu RLO=1 chöông trình seõ nhaûy ñeán nhaõn “nhaûy”

Ngöôøi soaïn : Haø vaên Trí 46


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Leänh JMPN: Nhaûy neáu RLO=0,Neáu RLO=0 chöông trình seõ nhaûy ñeán nhaõn “nhaûy”

Leänh OPN : Leänh môû khoái DB ñeå coù theå truy caäp tröïc tieáp tôùi khoái naøy

B. Ngoân ngöõ laäp trình STL:


Moät Chöông trình vieát treân LAD hoaëc FBD coù theå chuyeån ñöôïc sang
STL,nhöng ngöôïc laïi thì khoâng.Trong STL coù nhieàu leänhkhoâng coù trong LAD
hay FBD.
Ñoái vôùi ngöôøi môùi nhaäp moân thì ngoân ngöõ LAD laø ngoân ngöõ deã tieáp caän nhaát,nhöng ngoân
ngöõ STL laø heát söùc caàn thieát cho töông lai,do vaäy chuùng toâi giôùi thieäu theâm taäp leänh trong
ngoân ngöõ STL.
1/ Nhoùm leänh logic tieáp ñieåm:
Leänh gaùn:
Cuù phaùp = < toaùn haïng >
Toaùn haïng laø ñòa chæ bit I,Q,M,L,D
Leänh gaùn giaù trò logic cuûa RLO tôùi oâ nhôù coù ñòa chæ ñöôïc chæ thò trong toaùn haïng
Ví duï : A I0.0 // Ñoïc noäi dung cuûa I0.0 vaøo RLO
= Q0.0 // Ñöa keát quaû ra coång Q0.0
Leänh thöïc hieän pheùp tính giao:
Cuù phaùp A < toaùn haïng >
Toaùn haïng laødöõ lieäu kieåu Bool hoaëc ñòa chæ bit I,Q,M,L,D,T,C
Neáu FC=0 leänh seõ gaùn giaù trò logic cuûa toaùn haïng vaøo RLO.Ngöôïc laïi khi FC=1 noù seõ thöïc
hieän pheùp tính giao giöõa RLO vôùi toaùn haïng vaø ghi laïi keát quaû vaøo RLO.
Ví duï: A I0.0 // Ñoïc noäi dung I0.0 ñöa vaøo RLO
A I0.1 // Giao RLO vôùi I0.1 keát quaû ñöa vaøo RLO
= Q0.0 // Gaùn giaù trò RLO cho Q0.0
Leänh thöïc hieän pheùp tính giao vôùi giaù trò nghòch ñaûo:
Cuù phaùp AN < toaùn haïng >
Toaùn haïng laødöõ lieäu kieåu Bool hoaëc ñòa chæ bit I,Q,M,L,D,T,C
Neáu FC=0 leänh seõ gaùn giaù trò logic nghòch ñaûo cuûa toaùn haïng vaøo RLO.Ngöôïc laïi khi FC=1
noù seõ thöïc hieän pheùp tính giao giöõa RLO vôùi giaù trò nghòch ñaûo cuûa toaùn haïng vaø ghi laïi keát
quaû vaøo RLO.
Ví duï : A I0.0 // Ñoïc noäi dung cuûa I0.0 ñöa vaøo RLO
AN I0.1 // Giao RLO vôùi giaù trò nghòch ñaûo cuûa I0.1 keát quaû ñöa vaøo
RLO

Ngöôøi soaïn : Haø vaên Trí 47


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

= Q0.0 // Gaùn giaù trò RLO cho Q0.0

Leänh thöïc hieän pheùp tính hôïp:


Cuù phaùp O < toaùn haïng >
Toaùn haïng laødöõ lieäu kieåu Bool hoaëc ñòa chæ bit I,Q,M,L,D,T,C
Neáu FC=0 leänh seõ gaùn giaù trò logic cuûa toaùn haïng vaøo RLO.Ngöôïc laïi khi FC=1 noù seõ thöïc
hieän pheùp tính hôïp giöõa RLO vôùi giaù trò nghòch ñaûo cuûa toaùn haïng vaø ghi laïi keát quaû vaøo
RLO.
Ví duï : A I0.0 // Ñoïc noäi dung cuûa I0.0 ñöa vaøo RLO
O I0.1 // hôïp RLO vôùi giaù trò I0.1 keát quaû ñöa vaøo RLO
= Q0.0 // Gaùn giaù trò RLO cho Q0.0
Leänh thöïc hieän pheùp tính hôïp vôùi giaù trò nghòch ñaûo:
Cuù phaùp ON < toaùn haïng >
Toaùn haïng laødöõ lieäu kieåu Bool hoaëc ñòa chæ bit I,Q,M,L,D,T,C
Neáu FC=0 leänh seõ gaùn giaù trò logic nghòch ñaûo cuûa toaùn haïng vaøo RLO.Ngöôïc laïi khi FC=1
noù seõ thöïc hieän pheùp tính hôïp giöõa RLO vôùi giaù trò nghòch ñaûo cuûa toaùn haïng vaø ghi laïi keát
quaû vaøo RLO.
Ví duï : A I0.0 // Ñoïc noäi dung cuûa I0.0 ñöa vaøo RLO
ON I0.1 // hôïp RLO vôùi giaù trò nghòch ñaûo cuûa I0.1 keát quaû ñöa vaøo RLO
= Q0.0 // Gaùn giaù trò RLO cho Q0.0
Leänh thöïc hieän pheùp tính giao vôùi giaù trò moät bieåu thöùc:
Cuù phaùp A(
Leänh khoâng coù toaùn haïng
Neáu FC=0 leänh seõ gaùn giaù trò logic cuûa bieåu thöùc trong daáu ngoaëc sau noù vaøo RLO.Ngöôïc laïi
khi FC=1 noù seõ thöïc hieän pheùp tính giao giöõa RLO vôùi giaù trò logic cuûa bieåu thöùc trong daáu
ngoaëc sau noù ghi laïi keát quaû vaøo RLO.
Ví duï :
A(
O I0.0
O I0.1
) // Giaù trò bieåu thöùc I0.0+I0.1 ñöôïc chuyeån vaøo RLO
A(
ON I0.2
O I0.3
)
= Q0.0
Leänh thöïc hieän pheùp tính hôïp vôùi giaù trò moät bieåu thöùc:
Cuù phaùp O(
Leänh khoâng coù toaùn haïng
Neáu FC=0 leänh seõ gaùn giaù trò logic cuûa bieåu thöùc trong daáu ngoaëc sau noù vaøo RLO.Ngöôïc laïi
khi FC=1 noù seõ thöïc hieän pheùp tính hôïp giöõa RLO vôùi giaù trò logic cuûa bieåu thöùc trong daáu
ngoaëc sau noù ghi laïi keát quaû vaøo RLO.
Ví duï :

Ngöôøi soaïn : Haø vaên Trí 48


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

A M0.0
O(
O I0.0
O I0.1
) // Giaù trò bieåu thöùc I0.0+I0.1 ñöôïc chuyeån vaøo RLO
= Q0.0
Leänh thöïc hieän pheùp tính giao vôùi giaù trò nghòch ñaûo cuûa moät bieåu thöùc:
Cuù phaùp AN (
Leänh khoâng coù toaùn haïng
Neáu FC=0 leänh seõ gaùn giaù trò logic cuûa bieåu thöùc trong daáu ngoaëc sau noù vaøo RLO.Ngöôïc laïi
khi FC=1 noù seõ thöïc hieän pheùp tính giao giöõa RLO vôùi giaù trò nghòch ñaûo logic cuûa bieåu thöùc
trong daáu ngoaëc sau ñoù ghi laïi keát quaû vaøo RLO.
Ví duï :
AN(
O I0.0
O I0.1
) // Giaù trò bieåu thöùc I0.0+I0.1 ñöôïc chuyeån vaøo RLO
= Q0.0 // Giaù trò Q0.0 baèng giaù trò nghòch ñaûo cuûa RLO
Leänh thöïc hieän pheùp tính hôïp vôùi giaù trò nghòch ñaûo moät bieåu thöùc:
Cuù phaùp ON (
Leänh khoâng coù toaùn haïng
Neáu FC=0 leänh seõ gaùn giaù trò logic nghòch ñaûo cuûa bieåu thöùc trong daáu ngoaëc sau noù vaøo
RLO.Ngöôïc laïi khi FC=1 noù seõ thöïc hieän pheùp tính hôïp giöõa RLO vôùi giaù trò nghòch ñaûo
logic nghòch ñaûo cuûa bieåu thöùc trong daáu ngoaëc sau ñoù ghi laïi keát quaû vaøo RLO.
Ví duï :
A M0.0
ON(
O I0.0
O I0.1
) // Giaù trò bieåu thöùc I0.0+I0.1 ñöôïc chuyeån vaøo RLO
= Q0.0 //
Leänh thöïc hieän pheùp exclusive or:
Cuù phaùp x < toaùn haïng >
Toaùn haïng laødöõ lieäu kieåu Bool hoaëc ñòa chæ bit I,Q,M,L,D,T,C
Neáu FC=0 leänh seõ gaùn giaù trò logic cuûa toaùn haïng vaøo RLO.Ngöôïc laïi khi FC=1 leänh seõ
kieåm tra xem noäi dung cuûa RLO vaø giaù trò logic cuûa toaùn haïng coù khaùc nhau khoâng .Trong
tröôøng hôïp khaùc nhau thì ghí vaøo RLO,ngöôïc laïi thì ghi 0.Noùi caùch khaùc ,leänh seõ ñaûo noäi
dung cuûa RLO neáu toaùn haïng coù giaù trò laø1.
Ví duï : A I0.0 // Ñoïc noäi dung cuûa I0.0 ñöa vaøo RLO
X I0.1 // nghòch ñaûo giaù trò RLO neáu I0.1 =1
= Q0.0 // Gaùn giaù trò RLO cho Q0.0
Leänh thöïc hieän pheùp exclusive or not:
Cuù phaùp XN < toaùn haïng >
Toaùn haïng laødöõ lieäu kieåu Bool hoaëc ñòa chæ bit I,Q,M,L,D,T,C

Ngöôøi soaïn : Haø vaên Trí 49


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Neáu FC=0 leänh seõ gaùn giaù trò logic nghòch ñaûo cuûa toaùn haïng vaøo RLO.Ngöôïc laïi khi FC=1
leänh seõ kieåm tra xem noäi dung cuûa RLO vaø giaù trò logic cuûa toaùn haïng coù khaùc nhau khoâng
.Trong tröôøng hôïp khaùc nhau thì ghí 1 vaøo RLO,ngöôïc laïi thì ghi 0.Noùi caùch khaùc ,leänh seõ
ñaûo noäi dung cuûa RLO neáu toaùn haïng coù giaù trò laø 0.
Ví duï : A I0.0 // Ñoïc noäi dung cuûa I0.0 ñöa vaøo RLO
XN I0.1 // nghòch ñaûo giaù trò RLO neáu I0.1 =0
= Q0.0 // Gaùn giaù trò RLO cho Q0.0
Leänh thöïc hieän pheùp exclusive or vôùi giaù trò cuûa bieåu thöùc:
Cuù phaùp X(
Leänh khoâng coù toaùn haïng.
Neáu FC=0 leänh seõ gaùn giaù trò logic cuûa bieåu thöùc trong daáu ngoaëc vaøo RLO.Ngöôïc laïi khi
FC=1 leänh seõ ñaûo noäi dung cuûa RLO khi bieåu thöùc trong daáu ngoaëc sau noù coù giaù trò 1.
Leänh thöïc hieän pheùp exclusive or not vôùi giaù trò cuûa bieåu thöùc:
Cuù phaùp XN(
Leänh khoâng coù toaùn haïng.
Neáu FC=0 leänh seõ gaùn giaù trò logic nghòch ñaûo cuûa bieåu thöùc trong daáu ngoaëc vaøo
RLO.Ngöôïc laïi khi FC=1 leänh seõ ñaûo noäi dung cuûa RLO khi bieåu thöùc trong daáu ngoaëc sau
noù coù giaù trò 0.
Leänh ghi giaù trò logic 1 vaøo RLO:
Cuù phaùp SET
Leänh khoâng coù toaùn haïng vaø coù taùc duïng ghi 1 vaøo RLO
Leänh ghi giaù trò logic 0 vaøo RLO:
Cuù phaùp CLR
Leänh khoâng coù toaùn haïng vaø coù taùc duïng ghi 0 vaøo RLO
Leänh ñaûo giaù trò RLO:
Cuù phaùp NOT
Leänh khoâng coù toaùn haïng vaø coù taùc duïng ñaûo noäi dung cuûa RLO
Leänh gaùn coù ñieàu kieän giaù trò logic 1 vaøo oâ nhôù:
Cuù phaùp S < toaùn haïng >
Toaùn haïng laø ñòa chæ Bit I,Q,M,L,D
Neáu RLO =1,leänh seõ ghi giaù trò 1 vaøo oâ nhôù coù ñòa chæ trong toaùn haïng
Leänh gaùn coù ñieàu kieän giaù trò logic 0 vaøo oâ nhôù:
Cuù phaùp R < toaùn haïng >
Toaùn haïng laø ñòa chæ Bit I,Q,M,L,D
Neáu RLO =1,leänh seõ ghi giaù trò 0 vaøo oâ nhôù coù ñòa chæ trong toaùn haïng
Leänh phaùt hieän söôøn leân
Cuù phaùp FP < toaùn haïng >
Toaùn haïng laø ñòa chæ Bit I,Q,M,L,D vaø ñöôïc söû duïng nhö moät bieán côø ñeå ghi nhaän laïi giaù trò
cuûa RLO taïi vò trí naøy trong chöông trình ,nhöng cuûa voøng queùt tröôùc
Taïi moãi voøng queùt leänh seõ kieåm tra:neáu bieán côø ( toaùn haïng)coù giaù trò 0 vaø RLO coù giaù trò 1
thì seõ ghi 1 vaøo RLO,caùc tröôøng hôïp khaùc thì ghi 0,ñoàng thôøi chuyeån noäi dung cuûa RLO vaøo
laïi bieán côø.Nhö vaäy RLOseõ coù giaù trò 1 trong voøng queùt khi coù söôøn leân trong RLO
Neáu RLO =1,leänh seõ ghi giaù trò 0 vaøo oâ nhôù coù ñòa chæ trong toaùn haïng

Ngöôøi soaïn : Haø vaên Trí 50


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Ví duï: Ñoaïn leänh sau:


A I0.0
FP M10.0
=Q0.0
Seõ töông ñöông vôùi ñoaïn leänh:
A I0.0
AN M10.0
= Q0.0
A I0.0
= M10.0
Leänh phaùt hieän söôøn xuoáng
Cuù phaùp FN < toaùn haïng >
Toaùn haïng laø ñòa chæ Bit I,Q,M,L,D vaø ñöôïc söû duïng nhö moät bieán côø ñeå ghi nhaän laïi giaù trò
cuûa RLO taïi vò trí naøy trong chöông trình ,nhöng cuûa voøng queùt tröôùc
Taïi moãi voøng queùt leänh seõ kieåm tra:neáu bieán côø ( toaùn haïng)coù giaù trò 1 vaø RLO coù giaù trò 0
thì seõ ghi 1 vaøo RLO,caùc tröôøng hôïp khaùc thì ghi 0,ñoàng thôøi chuyeån noäi dung cuûa RLO vaøo
laïi bieán côø.Nhö vaäy RLO seõ coù giaù trò 1 trong voøng queùt khi coù söôøn xuoáng trong RLO
Leänh chuyeån giaù trò cuûa RLO vaøo BR
Cuù phaùp SAVE
Leänh chuyeån noäi dung cuûa RLO vaøo bit traïng BR.Leänh khoâng laøm thay ñoåi noäi dung caùc bit
coøn laïi cuûa thanh ghi traïng thaùi.
2/ Leänh ñoïc,ghi vaø ñaûo vò trí bytes trong thanh ghi ACCU :
Caùc CPU cuûa S7_300 thöôøng coù hai thanh ghi Accumulator ( ACCU) kí hieäu laø
ACCU1 vaø ACCU2.Hai thanh ghi ACCU coù cuøng kích thöôùc 32 bits ( 1 töø
keùp).Moïi pheùp tính toaùn treân soá thöïc ,soá nguyeân,caùc pheùp tính logic vôùi maûng
nhieàu bit …ñeàu ñöôïc thöïc hieän treân hai thanh ghi naøy

Byte cao Byte thaáp Byte cao Byte thaáp

Töø cao Töø thaáp

Leänh ñoïc vaøo ACCU:


Cuù phaùp L < Toaùn haïng >
Toaùn haïng laø döõ lieäu ( soá nguyeân , thöïc , nhò phaân ) hoaëc ñòa chæ . Neáu laø ñòa chæ thì
- Byte IB,QB,PIB,MB,LB,DBB,DIB trong khoaûng 0 - 255
- Töø IW,QW,PIW,MW,LW,DBW,DIW trong khoaûng 0 - 216 - 1
- Töø keùp ID,QD,PID,MD,LD,DBD,DID trong khoaûng 0 - 232 – 1
Neáu laø kieåu döõ lieäu:
L +5 : Ghi 5 vaøo töø thaáp cuûa ACCU1 ( soá nguyeân 16 Bit)
L B#(1,8) : Ghi 1 vaøo Byte cao cuûa töø thaáp vaø ghi 8 vaøo Byte thaáp cuûa töø thaáp
L L#5 : Ghi 5 vaøo ACCU1 ( soá nguyeâ 32 Bit)
L B#16#2E :Döõ lieäu daïng cô soá 16
L 2#10001110 : Döõ lieäu daïng cô soá 2

Ngöôøi soaïn : Haø vaên Trí 51


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

L ‘AB’ :Döõ lieäu daïng kí töï


L C#1000 : Döõ lieäu daïng ñaët tröôùc cho boä ñeám ( PV )
L S5TIME#2S : Döõ lieäu daïng ñaët tröôùc cho Timer ( PV )
L P#M10.2 : Döõ lieäu laø ñòa chæ oâ nhôù ( duøng con troû)
L D#2006-1-1: Döõ lieäu laø giaù trò veà ngaøy/thaùng /naêm (16 bit)
L T#0H_1M_10S : Döõ lieäu veà thôøi gian giôø / phuùt /giaây ( 32 Bit)
Leänh L coù taùc duïng chuyeån noäi dung cuûa oâ nhôù coù ñòa chæ laø toaùn haïng vaøo thanh ghi
ACCU1 . Noäi dung cuõ cuûa ACCU1 ñöôïc chuyeån vaøo ACCU2.Trong tröôøng hôïp giaù trò
chuyeån vaøo nhoû hôn töø keùp thì chuùng seõ ñöôïc ghivaøo theo thöù töï Byte thaáp cuûa töø thaáp,Byte
thaáp cuûa töø cao,Byte cao cuûa töø cao.Nhuõng Bit coøn troáng trong ACCU1 ñöôïc ghi 0.
Ví duï : Leänh L IB0
Seõ chuyeån noäi dung IB0 vaøo Byte thaáp cuûa töø thaáp thanh ghi ACCU1
Leänh chuyeån noäi dung cuûa ACCU tôùi oâ nhôù:
Cuù phaùp T < Toaùn haïng >
Toaùn haïng laø ñòa chæ:
- Byte IB,QB,PIB,MB,LB,DBB,DIB trong khoaûng 0 - 255
- Töø IW,QW,PIW,MW,LW,DBW,DIW trong khoaûng 0 - 216 - 1
- Töø keùp ID,QD,PID,MD,LD,DBD,DID trong khoaûng 0 - 232 – 1
Leänh chuyeån noäi dung cuûa ACCU1 vaøo oâ nhôù coù ñòa chæ laø toaùn haïng
Ví duï: T VB100 // Chuyeån noäi dung Byte thaáp cuûa töø thaáp thanh ghi
ACCU1 vaøo oâ nhôù VB100.
Leänh ñoïc noäi dung thanh ghi traïng thaùi vaøo ACCU1:
Cuù phaùp L STW
Leänh chuyeån noäi dung thanh ghi traïng thaùi vaøo töø thaáp cuûa ACCU1
Leänh ghi noäi dung cuûa ACCU1 vaøo thanh ghi traïng thaùi :
Cuù phaùp T STW
Leänh chuyeån 9 bits cuûa töø thaáp cuûa ACCU1 vaøo thanh ghi traïng thaùi .
Leänh chuyeån noäi dung cuûa ACCU2 vaøo ACCU1 :
Cuù phaùp POP
Leänh chuyeån noäi dung cuûa ACCU2 vaøo ACCU1,noäi dung cuûa thanh ghi ACCU2 khoâng ñoåi .
Leänh chuyeån noäi dung cuûa ACCU1 vaøo ACCU2 :
Cuù phaùp PUSH
Leänh chuyeån noäi dung cuûa ACCU1 vaøo ACCU2,noäi dung cuûa thanh ghi ACCU1 khoâng ñoåi .
Leänh ñaûo noäi dung cuûa hai thanh ghi ACCU1 vaø ACCU2 :
Cuù phaùp TAK
Leänh chuyeån noäi dung cuûa ACCU1 vaøo ACCU2 vaø ngöôïc laïi .
Leänh ñaûo noäi dung hai Byte cuûa töø thaáp trong thanh ghi ACCU1 :
Cuù phaùp CAW
Leänh coù taùc duïng ñaûo noäi dung hai byte cuûa töø thaáp trong thanh ghi ACCU1.
Leänh ñaûo noäi dung caùc Byte trong thanh ghi ACCU1 :
Cuù phaùp CAD
Leänh coù taùc duïng ñaûo noäi dung taát caû 4 Byte trong thanh ghi ACCU1.
Leänh ñaûo giaù trò caùc Bits trong töø thaáp cuûa thanh ghi ACCU1 :
Cuù phaùp INVI

Ngöôøi soaïn : Haø vaên Trí 52


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Leänh coù taùc duïng ñaûo noäi dung taát caû caùc Bits trong töø thaáp cuûa thanh ghi ACCU1.
Leänh ñaûo giaù trò caùc Bits trong thanh ghi ACCU1 :
Cuù phaùp INVD
Leänh coù taùc duïng ñaûo noäi dung taát caû caùc Bits trong thanh ghi ACCU1.
3/ Caùc leänh Logic thöïc hieän treân thanh ghi ACCU:
Leänh thöïc hieän pheùp giao giöõa caùc bits trong töø thaáp cuûa ACCU1,ACCU2:
Cuù phaùp: AW [< Döõ lieäu haèng >]
Leänh coù theå hoaëc khoâng coù toaùn haïng
- Neáu khoâng coù toaùn haïng,leänh thöïc hieän pheùp tính giao giöõa caùc bits thuoäc töø thaáp cuûa
hai thanh ghi ACCU1 vaø ACCU2. Keát quaû ghi vaøo töø thaáp cuûa thanh ghi ACCU1.
- Neáu coù toaùn haïng thì toaùn haïng phaûi laø döõ lieäu haèng 16 bits.Khi ñoù leänh thöïc hieän
pheùp tính giao giöõa döõ lieäu vôùi töø thaáp cuûa ACCU1.Keát quaû ñöôïc ghi laïi vaøo töø thaáp
cuûa ACCU1
Leänh thöïc hieän pheùp giao giöõa caùc bits cuûa hai thanh ghi ACCU1,ACCU2:
Cuù phaùp: AD [< Döõ lieäu haèng >]
Leänh coù theå hoaëc khoâng coù toaùn haïng
- Neáu khoâng coù toaùn haïng,leänh thöïc hieän pheùp tính giao giöõa hai thanh ghi ACCU1 vaø
ACCU2. Keát quaû ghi vaøo thanh ghi ACCU1.
- Neáu coù toaùn haïng thì toaùn haïng phaûi laø döõ lieäu haèng 32 bits.Khi ñoù leänh thöïc hieän
pheùp tính giao giöõa döõ lieäu vôùi thanh ghi ACCU1.Keát quaû ñöôïc ghi laïi vaøo thanh ghi
ACCU1
Leänh thöïc hieän pheùp hôïp giöõa caùc bits trong töø thaáp cuûa ACCU1,ACCU2:
Cuù phaùp: OW [< Döõ lieäu haèng >]
Leänh coù theå hoaëc khoâng coù toaùn haïng
- Neáu khoâng coù toaùn haïng,leänh thöïc hieän pheùp tính hôïp giöõa caùc bits thuoäc töø thaáp cuûa
hai thanh ghi ACCU1 vaø ACCU2. Keát quaû ghi vaøo töø thaáp cuûa thanh ghi ACCU1.
- Neáu coù toaùn haïng thì toaùn haïng phaûi laø döõ lieäu haèng 16 bits.Khi ñoù leänh thöïc hieän
pheùp tính hôïp giöõa döõ lieäu vôùi töø thaáp cuûa ACCU1.Keát quaû ñöôïc ghi laïi vaøo töø thaáp
cuûa ACCU1
Leänh thöïc hieän pheùp giao giöõa caùc bits cuûa hai thanh ghi ACCU1,ACCU2:
Cuù phaùp: OD [< Döõ lieäu haèng >]
Leänh coù theå hoaëc khoâng coù toaùn haïng
- Neáu khoâng coù toaùn haïng,leänh thöïc hieän pheùp tính hôïp giöõa hai thanh ghi ACCU1 vaø
ACCU2. Keát quaû ghi vaøo thanh ghi ACCU1.
- Neáu coù toaùn haïng thì toaùn haïng phaûi laø döõ lieäu haèng 32 bits.Khi ñoù leänh thöïc hieän
pheùp tính hôïp giöõa döõ lieäu vôùi thanh ghi ACCU1.Keát quaû ñöôïc ghi laïi vaøo thanh ghi
ACCU1
Leänh thöïc hieän pheùp tính exclusive or 16 bits:
Cuù phaùp: XOW [< Döõ lieäu haèng >]
Leänh coù theå hoaëc khoâng coù toaùn haïng
- Neáu khoâng coù toaùn haïng,leänh thöïc hieän pheùp tính exclusive or giöõa caùc bits cuûa hai
töø thaáp cuûa hai thanh ghi ACCU1 vaø ACCU2. Keát quaû ghi vaøo töø thaáp cuûa thanh ghi
ACCU1.

Ngöôøi soaïn : Haø vaên Trí 53


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

- Neáu coù toaùn haïng thì toaùn haïng phaûi laø döõ lieäu haèng 16 bits.Khi ñoù leänh thöïc hieän
pheùp tính exclusive giöõa döõ lieäu vôùi töø thaáp cuûa ACCU1.Keát quaû ñöôïc ghi laïi vaøo töø
thaáp cuûa ACCU1
Leänh thöïc hieän pheùp tính exclusive or 16 bits:
Cuù phaùp: XOD [< Döõ lieäu haèng >]
Leänh coù theå hoaëc khoâng coù toaùn haïng
- Neáu khoâng coù toaùn haïng,leänh thöïc hieän pheùp tính exclusive or giöõa caùc bits cuûa hai
hai thanh ghi ACCU1 vaø ACCU2. Keát quaû ghi vaøo thanh ghi ACCU1.
- Neáu coù toaùn haïng thì toaùn haïng phaûi laø döõ lieäu haèng 32 bits.Khi ñoù leänh thöïc hieän
pheùp tính exclusive giöõa döõ lieäu vôùi thanh ghi ACCU1.Keát quaû ñöôïc ghi laïi vaøo
thanh ghi ACCU1
4/ Nhoùm leänh taêng giaûm noäi dung thanh ghi ACCU:
Leänh taêng noäi dung thanh ghi ACCU1:
Cuù phaùp INC < Toaùn haïng >
Toaùn haïng laø soá nguyeân 8 bits
Leänh thöïc hieän pheùp coäng giöõa byte thaáp trong ACCU1 vôùi toaùn haïng .Keát quaû ñöôïc ghi vaøo
byte thaáp cuûa töø thaáp cuûa ACCU1.Noäi dung cuûa caùc Byte khaùc khoâng thay ñoåi.
Leänh giaûm noäi dung thanh ghi ACCU1:
Cuù phaùp DEC < Toaùn haïng >
Toaùn haïng laø soá nguyeân 8 bits
Leänh thöïc hieän pheùp tröø giöõa byte thaáp trong ACCU1 vôùi toaùn haïng .Keát quaû ñöôïc ghi vaøo
byte thaáp cuûa töø thaáp cuûa ACCU1.Noäi dung cuûa caùc Byte khaùc khoâng thay ñoåi.
5/ Nhoùm leänh dòch chuyeån noäi dung thanh ghi ACCU:
Leänh xoay troøn caùc bits cuûa ACCU1 theo chieàu traùi.
Cuù phaùp RLD [ < toaùn haïng > ]
-Leänh coù theå coù hoaëc khoâng coù toaùn haïng laø soá nguyeân khoâng daáu trong khoaûng 0 – 32.Khi
ñoù leänh thöïc hieän pheùp tính xoay troøn caùc Bits cuûa ACCU1 theo chieàu traùi.Soá Bits ñöôïc xoay
ñöôïc chæ ñònh trong toaùn haïng .Taïi moãi laàn xoay ,bit thöù 31 (bit cuoái) bò ñaåy ra khoûi
ACCU1seõ ñöôïc ghi ñoàng thôøi vaøo CC1 vaø vaøo bit 0 ( bit ñaàu tieân).Neáu toaùn haïng laø moät soá
0,leänh seõ khoâng laøm gì caû.Neáu toaùn haïng baèng 32,noäi dung cuûa ACCU1khoâng bò thay ñoåi vaø
bit CC1 trong thanh ghi traïng thaùi coù giaù trò laø bit thöù 0 cuûa ACCU1. Hai bits CC0 vaø 0V
trong thanh ghi traïng thaùi seõ baèng 0 khi toaùn haïng laø moät soá lôùn hôn 0.
- Neáu khoâng coù toaùn haïng ,leänh thöïc hieän pheùp tính xoay troøn caùc bits cuûa ACCU1 theo
chieàu traùi .Soá bits ñöôïc xoay troøn ñöôïc chæ thò trong byte thaáp cuûa töø thaáp trong ACCU2.Taïi
moãi laàn xoay bit thöù 31 ( bit cuoái) bò ñaåy ra khoûi ACCU1 seõ ñöôïc ghi ñoàng thôøi vaøo CC1 vaø
vaøo bit thöù 0 ( bit ñaàu tieân) .Neáu byte thaáp cuûa töø thaáp trong thanh ghi ACCU2 baèng 0 thì
leänh khoâng laøm gì caû ,vaø neáu baèng 32 thì noäi dung thanh ghi ACCU1 khoâng bò thay ñoåi gì
caûvaø bit CC1 trong thanh ghi traïng thaùi coù giaù trò laø bit thöù 0 cuûa ACCU1.Hai bits CC0 vaø 0V
trong thanh ghi traïng thaùi seõ baèng 0 khi noäi dung cuûa byte thaáp cuûa töø thaáp trong ACCU2 laø
moät soá lôùn hôn 0.

ACCU1

CC1

Ngöôøi soaïn : Haø vaên Trí 54


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Leänh xoay troøn ACCU1 theo chieàu traùi 1 bit.


Cuù phaùp RLDA
Leänh khoâng coù toaùn haïng
Leänh thöïc hieän xoay troøn theo chieàu traùi 1 bit. Bit thöù 31 (bit cuoái ) bò ñaåy ra khoûi ACCU1 ñöôïc ghi
vaøo CC1,noäi dung bit CC1 ñöôïc chuyeån vaøo bit 0( bit ñaàu tieân).

ACCU1

CC1

Leänh xoay troøn caùc bits cuûa ACCU1 theo chieàu phaûi.
Cuù phaùp RDD [ < toaùn haïng > ]
Leänh coù theå coù hoaëc khoâng coù toaùn haïng

ACCU1

CC1

Leänh xoay troøn ACCU1 theo chieàu phaûi 1 bit.


Cuù phaùp RRDA
Leänh khoâng coù toaùn haïng

CC1

Leänh dòch traùi caùc bits cuûa töø thaáp cuûa ACCU1.
Cuù phaùp SLW [ < toaùn haïng > ]
Leänh coù theå coù hoaëc khoâng coù toaùn haïng
-Neáu coù toaùn haïng thì toaùn haïng laø soá nguyeân khoâng daáu trong khoaûng 0 – 16.Khi ñoù leänh thöïc
hieän dòch traùi caùc bits trong töø thaáp cuûa ACCU1.Soá bits ñöôïc dòch ñöôïc chæ thò trong toaùn haïng .Noäi
dung cuûa töø cao trong ACCU1 khoâng bò thay ñoåi .Taïi 1 laàn dòch ,bit thöù 15 bò ñaåy ra khoûi ACCU1
seõ ñöôïc ghi vaøo CC1 coøn bit ñaàu (bit thöù 0) ñöôïc ghi 0.Neáu toaùn haïng laø moät soá 0,leänh seõ khoâng
laøm gì caû Neáu toaùn haïng baèng 16 ,noäi dung cuûa thanh ghi ACCU1 khoâng thay ñoåi vaø bit CC1 trong
thanh ghi traïng thaùi coù giaù trò laø bit thöù 0 cuûa ACCU1.Hai bit CC0 vaø OV seõ baèng 0 khi toaùn haïng
laø 1 soá lôùn hôn 0.

Ngöôøi soaïn : Haø vaên Trí 55


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

-Neáu khoâng coù toaùn haïng ,leänh thöïc hieän pheùp tính dòch traùi cuûa caùc bit trong töø thaáp cuûa ACCU1
vôùi soá bit ñöôïc dòch laø noäi dung cuûa byte thaáp trong töø thaáp cuûa ACCU2.Noäi dung cuûa töø cao trong
ACCU1 khoâng bò thay ñoåi .Taïi moãi laàn dòch ,bit thöù 15 bò ñaåy ra khoûi ACCU1 seõ ñöôïc ghi vaøo
CC1,coøn bit ñaàu ( bit thöù 0) ñöôïc ghi 0.Neáu byte thaáp cuûa töø thaáp trong ACCU2 laø moät soá lôùn hôn
0,hai bits CC0 vaø OV seõ baèng 0.
15

Leänh dòch traùi caùc bits cuûa ACCU1. CC1


Cuù phaùp SLD [ < toaùn haïng > ]
Leänh coù theå coù hoaëc khoâng coù toaùn haïng
31
0

CC1

Leänh dòch phaûi caùc bits cuûa töø thaáp cuûa ACCU1.
Cuù phaùp SRW [ < toaùn haïng > ]
Leänh coù theå coù hoaëc khoâng coù toaùn haïng.
15
CC1

0
Leänh dòch phaûi caùc bits cuûa ACCU1.
Cuù phaùp SRD [ < toaùn haïng > ]
Leänh coù theå coù hoaëc khoâng coù toaùn haïng.
31
CC1

0
Leänh dòch phaûi soá nguyeân 16 bit trong ACCU1.
Cuù phaùp SSI [ < toaùn haïng > ]
Leänh coù theå coù hoaëc khoâng coù toaùn haïng.
- Neáu coù toaùn haïng thì toaùn haïng laø soá nguyeân khoâng daáu trong khoaûng 0 – 16 . Khi ñoù leänh thöïc
hieän pheùp tính dòch phaûi caùc bits trong töø thaáp cuûa ACCU1.Soá bits ñöôïc dòch laø toaùn haïng .Noäi
dung cuûa töø cao trong ACCU1 khoâng bò thay ñoåi .Taïi moãi laàn dòch ,bit 0 ( bit ñaàu) bò ñaåy töø
ACCU1 sang CC1coøn bit thöù 15 ñöôïc ghi laïi ñuùng baèng giaù trò cuõ cuûa noù .Neáu toaùn haïng laø soá lôùn
hôn 0 ,hai bits CC0 vaø OV seõ baèng 0
- Neáu khoâng coù toaùn haïng ,leänh thöïc hieän pheùp tính dòch phaûi caùc bits trong töø thaáp cuûa ACCU1
.Soá bit ñöôïc dòch laø noäi dung cuûa byte thaáp trong töø thaáp cuûa ACCU2.Noäi dung cuûa töø cao trong

Ngöôøi soaïn : Haø vaên Trí 56


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

ACCU1 khoâng bò thay ñoåi .Taïi moãi laàn dòch ,bit thöù 0 bò ñaåy ra khoûi ACCU1 seõ ñöôïc ghi vaøo CC1
,bit thöù 15 ñöôïc ghi laïi ñuùng baèng giaù trò cuõ cuûa noù .Neáu byte thaáp cuûa töø thaáp trong ACCU2 laø
moät soá lôùn hôn 0 ,hai bits CC0 vaø OV seõ baèng 0
15
CC1
Leänh dòch phaûi soá nguyeân 32 bit trong ACCU1.
Cuù phaùp SSD [ < toaùn haïng > ]
Leänh coù theå coù hoaëc khoâng coù toaùn haïng.
31
CC1

6 / Nhoùm leänh so saùnh soá nguyeân 16 bits:


Trong taát caû nhöõng leänh so saùnh hai soá nguyeân 16 bits naèm trong 2 töø thaáp cuûa 2 thanh ghi ACCU1
vaø ACCU2 ñöôïc trình baøy sau ñaây ñeàu taùc ñoäng vaøo thanh ghi traïng thaùi nhö sau:
CC1 CC0 YÙ Nghóa
0 0 Töø thaáp ACCU2= töø thaáp ACCU1
0 1 Töø thaáp ACCU1< töø thaáp ACCU1
1 0 Töø thaáp ACCU> töø thaáp ACCU1
Leänh so saùnh 2 soá nguyeân 16 bits:
Cuù phaùp : ==I
Leänh khoâng coù toaùn haïng .
Leänh thöïc hieän pheùp so saùnh hai soá nguyeân 16 bits naèm trong hai töø thaáp trong hai thanh ghi
ACCU1 vaø ACCU2.Neáu soá nguyeân trong töø thaáp cuûa ACCU1 coù noäi dung gioáng nhö soá nguyeân
trong töø thaáp cuûa ACCU2 thì bit traïng thaùi RLO seõ nhaän giaù trò 1,ngöôïc laïi seõ coù giaù trò 0.
Leänh so saùnh khoâng baèng nhau 2 soá nguyeân 16 bits:
Cuù phaùp : <> I
Leänh khoâng coù toaùn haïng .
Leänh thöïc hieän pheùp so saùnh hai soá nguyeân 16 bits naèm trong hai töø thaáp trong hai thanh ghi
ACCU1 vaø ACCU2.Neáu soá nguyeân trong töø thaáp cuûa ACCU1 coù noäi dung khaùc soá nguyeân trong
töø thaáp cuûa ACCU2 thì bit traïng thaùi RLO seõ nhaän giaù trò 1,ngöôïc laïi seõ coù giaù trò 0.
Leänh so saùnh lôùn hôn 2 soá nguyeân 16 bits:
Cuù phaùp : >I
Leänh khoâng coù toaùn haïng .
Leänh thöïc hieän pheùp so saùnh hai soá nguyeân 16 bits naèm trong hai töø thaáp trong hai thanh ghi
ACCU1 vaø ACCU2.Neáu soá nguyeân trong töø thaáp cuûa ACCU2 lôùn hôn soá nguyeân trong töø thaáp
cuûa ACCU1 thì bit traïng thaùi RLO seõ nhaän giaù trò 1,ngöôïc laïi seõ coù giaù trò 0.
Leänh so saùnh nhoû hôn 2 soá nguyeân 16 bits:
Cuù phaùp : <I
Leänh khoâng coù toaùn haïng .
Leänh thöïc hieän pheùp so saùnh hai soá nguyeân 16 bits naèm trong hai töø thaáp trong hai thanh ghi
ACCU1 vaø ACCU2.Neáu soá nguyeân trong töø thaáp cuûa ACCU2 nhoû hôn soá nguyeân trong töø thaáp
cuûa ACCU1 thì bit traïng thaùi RLO seõ nhaän giaù trò 1,ngöôïc laïi seõ coù giaù trò 0.
Leänh so saùnh lôùn hôn hoaëc baèng 2 soá nguyeân 16 bits:

Ngöôøi soaïn : Haø vaên Trí 57


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Cuù phaùp : >= I


Leänh khoâng coù toaùn haïng .
Leänh thöïc hieän pheùp so saùnh hai soá nguyeân 16 bits naèm trong hai töø thaáp trong hai thanh ghi
ACCU1 vaø ACCU2.Neáu soá nguyeân trong töø thaáp cuûa ACCU2 lôùn hôn hoaëc baèng soá nguyeân
trong töø thaáp cuûa ACCU1 thì bit traïng thaùi RLO seõ nhaän giaù trò 1,ngöôïc laïi seõ coù giaù trò 0.
Leänh so saùnh beù hôn hoaëc baèng 2 soá nguyeân 16 bits:
Cuù phaùp : <= I
Leänh khoâng coù toaùn haïng .
Leänh thöïc hieän pheùp so saùnh hai soá nguyeân 16 bits naèm trong hai töø thaáp trong hai thanh ghi
ACCU1 vaø ACCU2.Neáu soá nguyeân trong töø thaáp cuûa ACCU2 beù hôn hoaëc baèng soá nguyeân trong
töø thaáp cuûa ACCU1 thì bit traïng thaùi RLO seõ nhaän giaù trò 1,ngöôïc laïi seõ coù giaù trò 0.

7 / Nhoùm leänh so saùnh soá nguyeân 32 bits:


Trong taát caû nhöõng leänh so saùnh hai soá nguyeân 32 bits naèm trong 2 thanh ghi ACCU1 vaø ACCU2
ñöôïc trình baøy sau ñaây ñeàu taùc ñoäng vaøo thanh ghi traïng thaùi nhö sau:
CC1 CC0 YÙ Nghóa
0 0 ACCU2= ACCU1
0 1 ACCU2< ACCU1
1 0 ACCU2> ACCU1
Leänh so saùnh 2 soá nguyeân 32 bits:
Cuù phaùp : ==D
Leänh khoâng coù toaùn haïng .
Leänh thöïc hieän pheùp so saùnh hai soá nguyeân 32 bits naèm trong hai thanh ghi ACCU1 vaø
ACCU2.Neáu soá nguyeân trong thanh ghi ACCU1 coù noäi dung gioáng nhö soá nguyeân trong thanh
ghi ACCU2 thì bit traïng thaùi RLO seõ nhaän giaù trò 1,ngöôïc laïi seõ coù giaù trò 0.
Leänh so saùnh khoâng baèng nhau 2 soá nguyeân 32 bits:
Cuù phaùp : <> D
Leänh khoâng coù toaùn haïng .
Leänh thöïc hieän pheùp so saùnh hai soá nguyeân 32 bits naèm trong hai thanh ghi ACCU1 vaø
ACCU2.Neáu soá nguyeân trong thanh ghi ACCU1 coù noäi dung khaùc soá nguyeân trong thanh ghi
ACCU2 thì bit traïng thaùi RLO seõ nhaän giaù trò 1,ngöôïc laïi seõ coù giaù trò 0.
Leänh so saùnh lôùn hôn 2 soá nguyeân 32 bits:
Cuù phaùp : >D
Leänh khoâng coù toaùn haïng .
Leänh thöïc hieän pheùp so saùnh hai soá nguyeân 32 bits naèm trong hai thanh ghi ACCU1 vaø
ACCU2.Neáu soá nguyeân trong thanh ghi ACCU2 lôùn hôn soá nguyeân trong thanh ghi ACCU1 thì
bit traïng thaùi RLO seõ nhaän giaù trò 1,ngöôïc laïi seõ coù giaù trò 0.
Leänh so saùnh nhoû hôn 2 soá nguyeân 32 bits:
Cuù phaùp : <D
Leänh khoâng coù toaùn haïng .
Leänh thöïc hieän pheùp so saùnh hai soá nguyeân 32 bits naèm trong hai thanh ghi ACCU1 vaø
ACCU2.Neáu soá nguyeân trong thanh ghi ACCU2 nhoû hôn soá nguyeân trong thanh ghi ACCU1 thì
bit traïng thaùi RLO seõ nhaän giaù trò 1,ngöôïc laïi seõ coù giaù trò 0.

Ngöôøi soaïn : Haø vaên Trí 58


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Leänh so saùnh lôùn hôn hoaëc baèng 2 soá nguyeân 32 bits:


Cuù phaùp : >= D
Leänh khoâng coù toaùn haïng .
Leänh thöïc hieän pheùp so saùnh hai soá nguyeân 32 bits naèm trong hai thanh ghi ACCU1 vaø
ACCU2.Neáu soá nguyeân trong thanh ghi ACCU2 lôùn hôn hoaëc baèng soá nguyeân trong thanh ghi
ACCU1 thì bit traïng thaùi RLO seõ nhaän giaù trò 1,ngöôïc laïi seõ coù giaù trò 0.
Leänh so saùnh beù hôn hoaëc baèng 2 soá nguyeân 32 bits:
Cuù phaùp : <= D
Leänh khoâng coù toaùn haïng .
Leänh thöïc hieän pheùp so saùnh hai soá nguyeân 32 bits naèm trong hai thanh ghi ACCU1 vaø
ACCU2.Neáu soá nguyeân trong thanh ghi ACCU2 beù hôn hoaëc baèng soá nguyeân trong thanh ghi
ACCU1 thì bit traïng thaùi RLO seõ nhaän giaù trò 1,ngöôïc laïi seõ coù giaù trò 0.

8 / Nhoùm leänh so saùnh soá thöïc 32 bits:


Trong taát caû nhöõng leänh so saùnh hai soá thöïc 32 bits naèm trong 2 thanh ghi ACCU1 vaø ACCU2 ñöôïc
trình baøy sau ñaây ñeàu taùc ñoäng vaøo thanh ghi traïng thaùi nhö sau:
CC1 CC0 YÙ Nghóa
0 0 ACCU2= ACCU1
0 1 ACCU2< ACCU1
1 0 ACCU2> ACCU1
Leänh so saùnh 2 soá thöïc 32 bits:
Cuù phaùp : ==R
Leänh khoâng coù toaùn haïng .
Leänh thöïc hieän pheùp so saùnh hai soá thöïc 32 bits naèm trong hai thanh ghi ACCU1 vaø
ACCU2.Neáu soá thöïc trong thanh ghi ACCU1 coù noäi dung gioáng nhö soá thöïc trong thanh ghi
ACCU2 thì bit traïng thaùi RLO seõ nhaän giaù trò 1,ngöôïc laïi seõ coù giaù trò 0.
Leänh so saùnh khoâng baèng nhau 2 soá thöïc 32 bits:
Cuù phaùp : <> R
Leänh khoâng coù toaùn haïng .
Leänh thöïc hieän pheùp so saùnh hai soá thöïc 32 bits naèm trong hai thanh ghi ACCU1 vaø ACCU2.Neáu soá
thöïc trong thanh ghi ACCU1 coù noäi dung khaùc soá thöïc trong thanh ghi ACCU2 thì bit traïng thaùi
RLO seõ nhaän giaù trò 1,ngöôïc laïi seõ coù giaù trò 0.
Leänh so saùnh lôùn hôn 2 soá thöïc 32 bits:
Cuù phaùp : >R
Leänh khoâng coù toaùn haïng .
Leänh thöïc hieän pheùp so saùnh hai soá thöïc 32 bits naèm trong hai thanh ghi ACCU1 vaø ACCU2.Neáu soá
thöïc trong thanh ghi ACCU2 lôùn hôn soá thöïc trong thanh ghi ACCU1 thì bit traïng thaùi RLO seõ
nhaän giaù trò 1,ngöôïc laïi seõ coù giaù trò 0.
Leänh so saùnh nhoû hôn 2 soá thöïc 32 bits:
Cuù phaùp : <R
Leänh khoâng coù toaùn haïng .

Ngöôøi soaïn : Haø vaên Trí 59


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Leänh thöïc hieän pheùp so saùnh hai soá thöïc 32 bits naèm trong hai thanh ghi ACCU1 vaø ACCU2.Neáu soá
thöïc trong thanh ghi ACCU2 nhoû hôn soá thöïc trong thanh ghi ACCU1 thì bit traïng thaùi RLO seõ
nhaän giaù trò 1,ngöôïc laïi seõ coù giaù trò 0.
Leänh so saùnh lôùn hôn hoaëc baèng 2 soá thöïc 32 bits:
Cuù phaùp : >= R
Leänh khoâng coù toaùn haïng .
Leänh thöïc hieän pheùp so saùnh hai soá thöïc 32 bits naèm trong hai thanh ghi ACCU1 vaø ACCU2.Neáu soá
thöïc trong thanh ghi ACCU2 lôùn hôn hoaëc baèng soá thöïc trong thanh ghi ACCU1 thì bit traïng thaùi
RLO seõ nhaän giaù trò 1,ngöôïc laïi seõ coù giaù trò 0.
Leänh so saùnh beù hôn hoaëc baèng 2 soá thöïc 32 bits:
Cuù phaùp : <= R
Leänh khoâng coù toaùn haïng .
Leänh thöïc hieän pheùp so saùnh hai soá thöïc 32 bits naèm trong hai thanh ghi ACCU1 vaø ACCU2.Neáu soá
thöïc trong thanh ghi ACCU2 beù hôn hoaëc baèng soá thöïc trong thanh ghi ACCU1 thì bit traïng thaùi
RLO seõ nhaän giaù trò 1,ngöôïc laïi seõ coù giaù trò 0.

9 / Caùc leänh toaùn hoïc:


Taát caû nhöõng leänh toaùn hoïc thöïc hieän vôùi noäi dung hai thanh ghi ACCU1 vaø ACCU2 ñöôïc trình baøy
sau ñaây ñeàu taùc ñoäng vaøo thanh ghi traïng thaùi nhö sau:
CC1 CC0 YÙ Nghóa
0 0 Keát quaû baèng 0 ( = 0)
0 1 Keát quaû nhoû hôn 0 ( < 0)
1 0 Keát quaû lôùn hôn 0 ( > 0)
a/ Nhoùm leänh laøm vieäc vôùi soá nguyeân 16 bits:
Leänh coäng:
Cuù phaùp +I
Leänh thöïc hieän pheùp coäng hai soá nguyeân naèm trong töø thaáp cuûa ACCU1 vaø ACCU2.Keát quaû ñöôïc
ghi laïi vaøo töø thaáp cuûa ACCU1.Noäi dung cuûa thanh ghi ACCU2 khoâng bò thay ñoåi .Neáu giaù trò vöôït
taàm – 32768 – 32767 thì hai bit OV vaø OS seõ cuøng nhaän giaù trò laø 1.
Leänh tröø:
Cuù phaùp -I
Leänh thöïc hieän pheùp tröø hai soá nguyeân naèm trong töø thaáp cuûa ACCU1 vaø ACCU2.Keát quaû ñöôïc ghi
laïi vaøo töø thaáp cuûa ACCU1.Noäi dung cuûa thanh ghi ACCU2 khoâng bò thay ñoåi .Neáu giaù trò vöôït
taàm – 32768 – 32767 thì hai bit OV vaø OS seõ cuøng nhaän giaù trò laø 1.
Leänh nhaân:
Cuù phaùp *I
Leänh thöïc hieän pheùp nhaân hai soá nguyeân naèm trong töø thaáp cuûa ACCU1 vaø ACCU2.Keát quaû laø soá
nguyeân 32 Bits ñöôïc ghi laïi vaøo thanh ghi ACCU1.Noäi dung cuûa thanh ghi ACCU2 khoâng bò thay
ñoåi .Neáu giaù trò vöôït taàm – 32768 – 32767 thì hai bit OV vaø OS seõ cuøng nhaän giaù trò laø 1.
Leänh chia:
Cuù phaùp /I

Ngöôøi soaïn : Haø vaên Trí 60


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Leänh thöïc hieän pheùp chia hai soá nguyeân naèm trong töø thaáp cuûa ACCU2 cho töø thaáp cuûa
ACCU1.Keát quaû ñöôïc ghi laïi vaøo töø thaáp cuûa ACCU1,phaàn dö ñöôïc ghi vaøo töø cao thanh ghi
ACCU1.Noäi dung cuûa thanh ghi ACCU2 khoâng bò thay ñoåi .Neáu giaù trò vöôït taàm – 32768 – 32767
thì hai bit OV vaø OS seõ cuøng nhaän giaù trò laø 1.
b/ Nhoùm leänh laøm vieäc vôùi soá nguyeân 32 bits:
Leänh coäng:
Cuù phaùp +D
Leänh khoâng coù toaùn haïng
Leänh thöïc hieän pheùp coäng hai soá nguyeân 32 bit naèm trong hai thanh ghi ACCU1 vaø ACCU2.Keát
quaû ñöôïc ghi laïi vaøo thanh ghi ACCU1.Noäi dung cuûa thanh ghi ACCU2 khoâng bò thay ñoåi .Neáu giaù
trò vöôït taàm (– 2147483648 , 2147483648) thì hai bit OV vaø OS seõ cuøng nhaän giaù trò laø 1.
Leänh tröø:
Cuù phaùp -D
Leänh khoâng coù toaùn haïng
Leänh thöïc hieän pheùp tröø hai soá nguyeân 32 bit naèm trong hai thanh ghi ACCU1 vaø ACCU2.Keát quaû
ñöôïc ghi laïi vaøo thanh ghi ACCU1.Noäi dung cuûa thanh ghi ACCU2 khoâng bò thay ñoåi .Neáu giaù trò
vöôït taàm (– 2147483648 , 2147483648) thì hai bit OV vaø OS seõ cuøng nhaän giaù trò laø 1.
Leänh nhaân:
Cuù phaùp *D
Leänh thöïc hieän pheùp nhaân hai soá nguyeân 32 bit trong hai thanh ghi ACCU1 vaø ACCU2.Keát quaû laø
soá nguyeân 32 Bits ñöôïc ghi laïi vaøo thanh ghi ACCU1.Noäi dung cuûa thanh ghi ACCU2 khoâng bò
thay ñoåi .Neáu giaù trò vöôït taàm (– 2147483648 , 2147483648) thì hai bit OV vaø OS seõ cuøng nhaän
giaù trò laø 1.
Leänh chia:
Cuù phaùp /D
Leänh thöïc hieän pheùp chia hai soá nguyeân 32 bit trong ACCU2 cho soá nguyeân 32 bit trong thanh ghi
ACCU1.Keát quaû laø soá nguyeân 32 bit seõ ñöôïc ghi laïi vaøo thanh ghi ACCU1.Neáu giaù trò vöôït taàm(–
2147483648 , 2147483648) thì hai bit OV vaø OS seõ cuøng nhaän giaù trò laø 1.
Leänh laáy phaàn dö:
Cuù phaùp MOD
Leänh khoâng coù toaùn haïng vaø xaùc ñònh phaàn dö cuûa pheùp chia soá nguyeân 32 bit trong ACCU2 cho soá
nguyeân 32 bit trong ACCU1.Keát quaû laø soá nguyeân 32 bit ñöôïc ghi laïi vaøo ACCU1. Neáu giaù trò vöôït
taàm(– 2147483648 , 2147483648) thì hai bit OV vaø OS seõ cuøng nhaän giaù trò laø 1.
c/ Nhoùm leänh laøm vieäc vôùi soá thöïc:
Leänh coäng:
Cuù phaùp +R
Leänh khoâng coù toaùn haïng
Leänh thöïc hieän pheùp coäng hai soá thöïc naèm trong hai thanh ghi ACCU1 vaø ACCU2.Keát quaû ñöôïc
ghi laïi vaøo thanh ghi ACCU1.Noäi dung cuûa thanh ghi ACCU2 khoâng bò thay ñoåi .Neáu giaù trò vöôït
taàm (– 2147483648 , 2147483648) thì hai bit OV vaø OS seõ cuøng nhaän giaù trò laø 1.
Leänh tröø:
Cuù phaùp -R
Leänh khoâng coù toaùn haïng

Ngöôøi soaïn : Haø vaên Trí 61


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Leänh thöïc hieän pheùp tröø hai soá thöïc naèm trong hai thanh ghi ACCU1 vaø ACCU2.Keát quaû ñöôïc ghi
laïi vaøo thanh ghi ACCU1.Noäi dung cuûa thanh ghi ACCU2 khoâng bò thay ñoåi .Neáu giaù trò vöôït taàm
(– 2147483648 , 2147483648) thì hai bit OV vaø OS seõ cuøng nhaän giaù trò laø 1.
Leänh nhaân:
Cuù phaùp *R
Leänh thöïc hieän pheùp nhaân hai soá thöïc trong hai thanh ghi ACCU1 vaø ACCU2.Keát quaû laø soá thöïc
ñöôïc ghi laïi vaøo thanh ghi ACCU1.Noäi dung cuûa thanh ghi ACCU2 khoâng bò thay ñoåi .Neáu giaù trò
vöôït taàm (– 2147483648 , 2147483648) thì hai bit OV vaø OS seõ cuøng nhaän giaù trò laø 1.
Leänh chia:
Cuù phaùp /R
Leänh thöïc hieän pheùp chia hai thöïc trong ACCU2 cho soá thöïc trong thanh ghi ACCU1.Keát quaû laø soá
thöïc seõ ñöôïc ghi laïi vaøo thanh ghi ACCU1.Neáu giaù trò vöôït taàm(– 2147483648 , 2147483648) thì
hai bit OV vaø OS seõ cuøng nhaän giaù trò laø 1.
Leänh laáy phaàn dö:
Cuù phaùp MOD
Leänh khoâng coù toaùn haïng vaø xaùc ñònh phaàn dö cuûa pheùp chia soá nguyeân 32 bit trong ACCU2 cho soá
nguyeân 32 bit trong ACCU1.Keát quaû laø soá nguyeân 32 bit ñöôïc ghi laïi vaøo ACCU1. Neáu giaù trò vöôït
taàm(– 2147483648 , 2147483648) thì hai bit OV vaø OS seõ cuøng nhaän giaù trò laø 1.
Leänh laáy giaù trò tuyeät ñoái:
Cuù phaùp ABS
Leänh khoâng coù toaùn haïng vaø xaùc ñònh giaù trò tuyeät ñoái cuûa soá thöïc trong ACCU1.Keát quaû seõ ñöôïc
ghi laïi vaøo ACCU1.Ñaëc bieät leänh naøy khoâng laøm thay ñoåi noäi dung cuûa caùc bit traïng thaùi.
Leänh tính Sin:
Cuù phaùp SIN
Leänh khoâng coù toaùn haïng vaø xaùc ñònh sin cuûa soá thöïc trong ACCU1.Keát quaû seõ ñöôïc ghi laïi vaøo
ACCU1.
Leänh tính Cos:
Cuù phaùp COS
Leänh khoâng coù toaùn haïng vaø xaùc ñònh cos cuûa soá thöïc trong ACCU1.Keát quaû seõ ñöôïc ghi laïi vaøo
ACCU1.
Leänh tính Tan:
Cuù phaùp TAN
Leänh khoâng coù toaùn haïng vaø xaùc ñònh tang cuûa soá thöïc trong ACCU1.Keát quaû seõ ñöôïc ghi laïi vaøo
ACCU1. Neáu giaù trò vöôït taàm(– 2147483648 , 2147483648) thì hai bit OV vaø OS seõ cuøng nhaän giaù
trò laø 1.
Leänh tính Arsin:
Cuù phaùp ASIN
Leänh khoâng coù toaùn haïng vaø xaùc ñònh arcsin cuûa soá thöïc trong ACCU1,soá thöïc naøy phaûi naèm trong
khoaûng (-1,1).Keát quaû laø moät soá thöïc trong khoaûng (-pi/2,pi/2)seõ ñöôïc ghi laïi vaøo ACCU1.
Leänh tính Arcos:
Cuù phaùp ACOS
Leänh khoâng coù toaùn haïng vaø xaùc ñònh arccos cuûa soá thöïc trong ACCU1,soá thöïc naøy phaûi naèm trong
khoaûng (-1,1).Keát quaû laø moät soá thöïc trong khoaûng (-pi,0)seõ ñöôïc ghi laïi vaøo ACCU1.

Ngöôøi soaïn : Haø vaên Trí 62


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Leänh tính Artg:


Cuù phaùp ATAN
Leänh khoâng coù toaùn haïng vaø xaùc ñònh arctg cuûa soá thöïc trong ACCU1.Keát quaû laø moät soá thöïc trong
khoaûng (-pi/2,pi/2)seõ ñöôïc ghi laïi vaøo ACCU1.
Leänh tính bình phöông:
Cuù phaùp SQR
Leänh khoâng coù toaùn haïng vaø xaùc ñònh giaù trò bình phöông cuûa soá thöïc trong ACCU1.Keát quaû seõ
ñöôïc ghi laïi vaøo ACCU1.
Leänh tính caên baäc hai:
Cuù phaùp SQRT
Leänh khoâng coù toaùn haïng vaø xaùc ñònh caên baäc hai cuûa soá thöïc trong ACCU1,soá thöïc naøy phaûi laø soá
thöïc khoâng aâm.Keát quaû laø moät soá thöïc khoâng aâm seõ ñöôïc ghi laïi vaøo ACCU1.
Leänh ñaûo daáu:
Cuù phaùp NERG
Leänh khoâng coù toaùn haïng vaø coù taùc duïng ñoåi daáu soá thöïc trong ACCU1.Keát quaû seõ ñöôïc ghi laïi vaøo
ACCU1.Ñaëc bieät leänh naøy khoâng laøm thay ñoåi noäi dung cuûa caùc bit traïng thaùi.
10 / Leänh ñoåi kieåu döõ lieäu:
Trong ngoân ngöõ laäp trình STL cuûa S7_300 coù nhieàu daïng döõ lieäu khaùc nhau nhö:
- Soá nguyeân 16 Bits.
- Soá nguyeân 32 Bits
- Soá nguyeân daïng BCD
- Soá thöïc daáu phaåy ñoäng
- Vaø moät soá daïng döõ lieäu khaùc
Vieäc laøm vôùi nhieàu daïng döõ lieäu khaùc nhau ñaët ra cho ta vaán ñeà caàn phaûi chuyeån ñoåi chuùng .Ví
duï khi ñoïc tín hieäu töông töï töø coång töông töï ta nhaän ñöôïc soá lieäu daïng nguyeân 16 bits mang
giaù trò tín hieäu töông töï chöù khoâng phaûi baûn thaân giaù trò ñoù,bôûi vaäy ñeå xöû lyù tieáp thì caàn thieát
phaûi chuyeån soá nguyeân ñoù thaønh ñuùng giaù trò thöïc,daáu phaåy ñoäng cuûa tín hieäu töôïng töï ôû
coång.
a/ Chuyeån ñoåi soá BCD thaønh soá nguyeân vaø ngöôïc laïi:
Leänh chuyeån ñoåi BCD thaønh soá nguyeân 16 bits:
Cuù phaùp BTI
Leänh khoâng coù toaùn haïng vaø chuyeån ñoåi moät soá BCD coù 3 chöõ soá naèm trong 12 Bits ñaàu cuûa
ACCU1 thaønh soá nguyeân 16 bits.Keát quaû ñöôïc caát laïi vaøo 16 bits cuoái (töø thaáp) cuûa
ACCU1.Leänh khoâng laøm thay ñoåi noäi dung cuûa thanh ghi traïng thaùi.
31 12 11 8 7 4 3 0
4 5 9

BTI

31 16 15 0

Soá nguyeân ñònh daïng 16 bits

Ngöôøi soaïn : Haø vaên Trí 63


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Neáu soá BCD caàn chuyeån ñoåi coù caáu truùc sai ,ví duï nhö coù 1 chöõ soá 4 bits nhò phaân khoâng naèm
trong khoaûng töø 0 ñeán 9,CPU seõ goïi chöông trình ngaét xöû lí loãi OB121 hoaëc chuyeån qua cheá ñoä
Stop (neáu OB121 khoâng coù chöông trình).
Leänh chuyeån ñoåi BCD thaønh soá nguyeân 32 bits:
Cuù phaùp BTD
Leänh khoâng coù toaùn haïng vaø chuyeån ñoåi moät soá BCD coù 7 chöõ soá naèm trong 28 Bits ñaàu cuûa
ACCU1 thaønh soá nguyeân 32 bits.Keát quaû ñöôïc caát laïi vaøo thanh ghi ACCU1.Leänh khoâng laøm
thay ñoåi noäi dung cuûa thanh ghi traïng thaùi.
31 27 16 15 0
1 4 0 9 8 2 0

BTD

31 16 15 0

Soá nguyeân ñònh daïng 32 bits


Neáu soá BCD caàn chuyeån ñoåi coù caáu truùc sai ,ví duï nhö coù 1 chöõ soá 4 bits nhò phaân khoâng naèm
trong khoaûng töø 0 ñeán 9,CPU seõ goïi chöông trình ngaét xöû lí loãi OB121 hoaëc chuyeån qua cheá ñoä
Stop (neáu OB121 khoâng coù chöông trình).
Leänh chuyeån ñoåi soá nguyeân 16 bits thaønh soá BCD:
Cuù phaùp ITB
Leänh khoâng coù toaùn haïng vaø chuyeån ñoåi moät soá nguyeân 16 bits thaønh soá BCD coù 3 chöõ soá.Keát
quaû ñöôïc caát laïi vaøo töø thaáp cuûa thanh ghi ACCU1. Neáu soá nguyeân 16 bits caàn chuyeån ñoåi coù
giaù trò tuyeät ñoái lôùn hôn 999 ,CPU seõ thoâng baùo trong thanh ghi traïng thaùi döôùi daïng keát quaû
traøn
Leänh chuyeån ñoåi soá nguyeân 32 bits thaønh soá BCD:
Cuù phaùp DTB
Leänh khoâng coù toaùn haïng vaø chuyeån ñoåi moät soá nguyeân 32 bits thaønh soá BCD coù 7 chöõ soá.Keát
quaû ñöôïc caát laïi vaøo thanh ghi ACCU1. Neáu soá nguyeân 32 bits caàn chuyeån ñoåi coù giaù trò tuyeät
ñoái lôùn hôn 9999999 ,CPU seõ thoâng baùo trong thanh ghi traïng thaùi döôùi daïng keát quaû traøn
b/ Chuyeån ñoåi soá nguyeân 16 bits thaønh soá nguyeân 32 bits:
Cuù phaùp : ITD
Leänh khoâng coù toaùn haïng vaø thöïc hieän vieäc chuyeån ñoåi moät soá nguyeân 16 bits trong töø thaáp cuûa
ACCU1 thaønh soá nguyeân 32 bits .Keát quaû ñöôïc caát vaøo laïi ACCU1.Leänh khoâng laøm thay ñoåi
noäi dung cuûa thanh ghi traïng thaùi.
c/ Chuyeån ñoåi soá nguyeân 32 bits thaønh soá thöïc:
Cuù phaùp : DTR
Leänh khoâng coù toaùn haïng vaø thöïc hieän vieäc chuyeån ñoåi moät soá nguyeân 32 bits trong thanh ghi
ACCU1 thaønh soá thöïc .Keát quaû ñöôïc caát vaøo laïi ACCU1.Leänh khoâng laøm thay ñoåi noäi dung
cuûa thanh ghi traïng thaùi.
d/ Chuyeån ñoåi soá thöïc thaønh soá nguyeân 32 bits:
Leänh laøm troøn:

Ngöôøi soaïn : Haø vaên Trí 64


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Cuù phaùp : RND


Leänh khoâng coù toaùn haïng vaø thöïc hieän vieäc laøm troøn soá thöïc naèm trong thanh ghi ACCU1.Keát quaû
laø soá nguyeân 32 bits ñöôïc caát vaøo laïi ACCU1.
Leänh laøm troøn leân:
Cuù phaùp : RND+
Leänh khoâng coù toaùn haïng vaø thöïc hieän vieäc laøm troøn leân soá thöïc naèm trong thanh ghi ACCU1.Keát
quaû laø soá nguyeân 32 bits ñöôïc caát vaøo laïi ACCU1.
Leänh laøm troøn xuoáng:
Cuù phaùp : RND -
Leänh khoâng coù toaùn haïng vaø thöïc hieän vieäc laøm troøn xuoáng soá thöïc naèm trong thanh ghi
ACCU1.Keát quaû laø soá nguyeân 32 bits ñöôïc caát vaøo laïi ACCU1.
Leänh laáy phaàn nguyeân:
Cuù phaùp : TRUNC
Leänh khoâng coù toaùn haïng vaø thöïc hieän vieäc laáy phaàn nguyeân soá thöïc naèm trong thanh ghi
ACCU1.Keát quaû laø soá nguyeân 32 bits ñöôïc caát vaøo laïi ACCU1.
11/ Caùc leänh ñieàu khieån chöông trình:
a/ Nhoùm leänh keát thuùc chöông trình:
Leänh keát thuùc voâ ñieàu kieän:
Cuù phaùp : BEU
Leänh khoâng coù toaùn haïng vaø thöïc hieän keát thuùc chöông trình trong khoái moät caùch voâ ñieàu kieän.
Leänh keát thuùc coù ñieàu kieän:
Cuù phaùp : BEC
Leänh khoâng coù toaùn haïng vaø thöïc hieän keát thuùc chöông trình trong khoái neáu nhö RLO coù giaù trò
baèng 1.

b/ Nhoùm leänh reõ nhaùnh theo bit traïng thaùi:


Leänh reõ nhaùnh theo bit traïng thaùi laø loaïi leänh thöïc hieän böôùc nhaûy nhaèm boû qua moät ñoaïn chöông
trình ñeå tôùi ñoaïn chöông trình khaùc ñöôïc ñaùnh daáu baèng nhaõn neáu ñieàu kieän kieåm tra trong
thanh ghi traïng thaùi ñöôïc thoaû maõn .Nôi leänh nhaûy tôùi phaûi thuoäc cuøng moät khoái chöông trình
vôùi leänh.Khoâng theå nhaûy töø moät khoái chöông trình naøy sang moät khoái chöông trình khaùc,ví duï
khoâng theå nhaûy töø khoái FC1 sang FC10.
Nhaõn laø moät daõy vôùi nhieàu nhaát 4 kí töï hoaëc soá vaø phaûi ñöôïc baét ñaàu baèng moät kí töï.Khoaûng caùch
böôùc nhaûy tính theo oâ nhôù chöông trình ,phaûi ít hôn 32767 töø .Nôi nhaûy ñeán coù theå naèm tröôùc
hay naèm sau leänh nhaûy.
Reõ nhaùnh khi BR=1
Cuù phaùp: JBI < nhaõn >
Leänh seõ thöïc hieän vieäc nhaûy tôùi Nhaõn neáu nhö Bit BR trong thanh ghi traïng thaùi baèng 1
Reõ nhaùnh khi BR=0
Cuù phaùp: JNBI < nhaõn >
Leänh seõ thöïc hieän vieäc nhaûy tôùi Nhaõn neáu nhö Bit BR trong thanh ghi traïng thaùi baèng 0
Reõ nhaùnh khi RLO=1
Cuù phaùp: JC < nhaõn >
Leänh seõ thöïc hieän vieäc nhaûy tôùi Nhaõn neáu nhö Bit RLO trong thanh ghi traïng thaùi baèng 1

Ngöôøi soaïn : Haø vaên Trí 65


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Reõ nhaùnh khi RLO=0


Cuù phaùp: JCN < nhaõn >
Leänh seõ thöïc hieän vieäc nhaûy tôùi Nhaõn neáu nhö Bit RLO trong thanh ghi traïng thaùi baèng 0
Reõ nhaùnh khi CC1=0 vaø CC0=1
Cuù phaùp: JM < nhaõn >
Leänh seõ thöïc hieän vieäc nhaûy tôùi Nhaõn neáu nhö Bit ( CC1 = 0 vaø CC0 = 1).Noù ñöôïc söû duïng ñeå reõ
nhaùnh neáu nhö pheùp tính tröôùc ñoù coù keát quaû aâm.
Reõ nhaùnh khi CC1=1 vaø CC0=0
Cuù phaùp: JP < nhaõn >
Leänh seõ thöïc hieän vieäc nhaûy tôùi Nhaõn neáu nhö Bit ( CC1 = 1 vaø CC0 = 0).Noù ñöôïc söû duïng ñeå reõ
nhaùnh neáu nhö pheùp tính tröôùc ñoù coù keát quaû döông.
Reõ nhaùnh khi CC1=0 vaø CC0=0
Cuù phaùp: JZ < nhaõn >
Leänh seõ thöïc hieän vieäc nhaûy tôùi Nhaõn neáu nhö Bit ( CC1 = 0 vaø CC0 = 0).Noù ñöôïc söû duïng ñeå reõ
nhaùnh neáu nhö pheùp tính tröôùc ñoù coù keát quaû baèng 0.
Reõ nhaùnh khi CC1 khaùc CC0
Cuù phaùp: JN < nhaõn >
Leänh seõ thöïc hieän vieäc nhaûy tôùi Nhaõn neáu nhö Bit ( CC1 khaùc CC0).Noù ñöôïc söû duïng ñeå reõ
nhaùnh neáu nhö pheùp tính tröôùc ñoù coù keát quaû khaùc 0.
Reõ nhaùnh khi CC1=CC0=0 hoaëc (CC1=0 vaø CC0=1)
Cuù phaùp: JMZ < nhaõn >
Leänh seõ thöïc hieän vieäc nhaûy tôùi Nhaõn neáu nhö Bit ( CC1 =CC0= 0 hoaëc (CC1=0 vaø CC0 =
1)).Noù ñöôïc söû duïng ñeå reõ nhaùnh neáu nhö pheùp tính tröôùc ñoù coù keát quaû laø moät soá khoâng
döông.
Reõ nhaùnh khi CC1=CC0=0 hoaëc (CC1=1 vaø CC0=0)
Cuù phaùp: JPZ < nhaõn >
Leänh seõ thöïc hieän vieäc nhaûy tôùi Nhaõn neáu nhö Bit ( CC1 =CC0= 0 hoaëc (CC1=1 vaø CC0 =
0)).Noù ñöôïc söû duïng ñeå reõ nhaùnh neáu nhö pheùp tính tröôùc ñoù coù keát quaû laø moät soá khoâng aâm.
Reõ nhaùnh voâ ñieàu kieän
Cuù phaùp: JU < nhaõn >
Leänh seõ thöïc hieän vieäc nhaûy tôùi Nhaõn voâ ñieàu kieän khoâng phuï thuoäc vaøo bit traïng thaùi naøo.
12/ Leänh xoay voøng:
Cuù phaùp LOOP < nhaõn >
Khi gaëp leänh LOOP ,CPU cuûa S7_300 seõ töï giaûm noäi dung cuûa töø thaáp trong thanh ghi ACCU1 ñi
moät ñôn vò vaø kieåm tra xem keát quaû coù baèng 0 hay khoâng .Neáu keát quaû khaùc 0 ,CPU seõ thöïc
hieän böôùc nhaûy ñeán ñoaïn chöông trình ñöôïc ñaùnh daáu bôûi “nhaõn” .Ngöôïc laïi CPU seõ thöïc hieän
leänh keá tieáp.
Leänh xoay voøng naøy coù theå ñöôïc söû duïng ñeå moâ phoûng nguyeân taéc laøm vieäc gioáng nhö leänh
For…cuûa C baèng caùch thöïc hieän böôùc nhaûy ngöôïc.Ñoaïn chöông trình naèm giöõa nhaõn vaø leänh
LOOP seõ ñöôïc thöïc hieän cho tôùi khi noäi dung thanh ghi ACCU1 baèng 0
Leänh khoâng laøm thay ñoåi noäi dung cuûa thanh ghi traïng thaùi
13/ Boä thôøi gian ( Timer):
a/Khai baùo söû duïng:

Ngöôøi soaïn : Haø vaên Trí 66


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Vieäc khai baùo söû duïng Timer bao goàm caùc böôùc :
-Khai baùo tín hieäu enable neáu muoán söû duïng tín hieäu chuû ñoäng kích.
-Khai baùo tín hieäu ñaàu vaøo u(t)
-Khai baùo thôøi gian treã mong muoán
-Khai baùo loaïi Timer ñöôïc söû duïng ( SD,SS,SP,SE,SF).
-Khai baùo tín hieäu xoaù Timer neáu muoán söû duïng cheá ñoä reset chuû ñoäng.
Trong taát caû 5 böôùc treân,caùc böôùc 2,3,4 laø baét buoäc
i/Khai baùo tín hieäu enable ( chuû ñoäng kích)
Cuù phaùp A < Ñòa chæ bit >
FR < teân Timer >
Toaùn haïng thöù nhaát “ ñòa chæ bit” xaùc ñònh tín hieäu seõ ñöôïc söû duïng laøm tín hieäu chuû ñoäng kích
cho Timer coù teân cho trong toaùn haïng thöù hai.
ii/Khai baùo tín ñaàu vaøo
Cuù phaùp A < Ñòa chæ bit >
“ ñòa chæ bit” trong toaùn haïng xaùc ñònh ñaàu vaøo u(t) cho Timer.
iii/Khai baùo thôøi gian treã mong muoán:
Cuù phaùp L < haèng soá >
“Haèng soá” trong toaùn haïng xaùc ñònh giaù trò thôøi gian treã T ñaët tröôùc cho Timer .Haèng soá naøy coù 2
daïng
-S5T#giôøH_phuùtM_giaâyS_miligiaâyMS.Ñaây laø daïng döõ lieäu thôøi gian tröïc tieáp.
-Daïng moät soá nguyeân 16 bits coù caáu truùc nhö sau:

1 0 0 0 0 1 0 0 1 0 0 1 1 1
1s 1 2 7
iv/Khai baùo loaïi Timer:
S7_300 coù 5 loaïi timer ñöôïc khai baùo baèng caùc leänh :
- SD: treã coù söôønleân khoâng coù nhôù
- SS: Treã theo söôøn leân coù nhôù
- SP: Taïo xung khoâng coù nhôù
- SE: Taïo xung coù nhôù
- SF : Treã theo söôøn xuoáng.
a/Treã theo söôøn leân khoâng nhôù ( On delay timer):
Cuù phaùp SD < teân timer >
Thôøi gian giöõ treã ñöôïc baét ñaàu khi coù söôøn leân cuûa tín hieäu ñaàu vaøo ( hoaëc coù söôøn leân cuûa tínhieäu
enable ñoàng thôøi tín hieäu vaøo baèng 1),töùc thôøi ôû ngay thôøi ñieåm ñoù giaù trò PV ñöôïc chuyeån vaøo
thanh ghi T-WORD (CV) .Trong khoaûng thôøi gian treã T-bit coù giaù trò baèng 1 .Nhö vaäy T-bit coù
giaù trò baéng khi T-Word = 0
Khoaûng thôøi gian treã chính laø khoaûng thôøi gian giöõa thôøi ñieåm xuaát hieän söôøn leân cuûa tín hieäu vaøo
vaø söôøn leân cuûa T-bit
Khi tín hieäu vaøo baèng 0 ,T-bit vaø T-Word cuøng nhaän giaù trò 0
b/Treã theo söôøn leân coù nhôù ( On delay timer):
Cuù phaùp SS < teân timer >

Ngöôøi soaïn : Haø vaên Trí 67


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Thôøi gian giöõ treã ñöôïc baét ñaàu khi coù söôøn leân cuûa tín hieäu ñaàu vaøo ( hoaëc coù söôøn leân cuûa tínhieäu
enable ñoàng thôøi tín hieäu vaøo baèng 1),töùc thôøi ôû ngay thôøi ñieåm ñoù giaù trò PV ñöôïc chuyeån vaøo
thanh ghi T-WORD (CV) .Khi heát thôøi gian treã ,töùc laø T-Word baèng 0 ,T-bit coù giaù trò 1
Khoaûng thôøi gian treã chính laø khoaûng thôøi gian giöõa thôøi ñieåm xuaát hieän söôøn leân cuûa tín hieäu vaøo
vaø söôøn leân cuûa T-bit
Vôùi boä timer coù nhôù ,thôøi gian treã vaãn ñöôïc tính cho duø luùc ñoù tín hieäu ñaàu vaøo ñaõ veà 0
c/Timer taïo xung khoâng nhôù ( Pulse timer):
Cuù phaùp SP < teân timer >
Thôøi gian giöõ treã ñöôïc baét ñaàu khi coù söôøn leân cuûa tín hieäu ñaàu vaøo ( hoaëc coù söôøn leân cuûa tínhieäu
enable ñoàng thôøi tín hieäu vaøo baèng 1),töùc thôøi ôû ngay thôøi ñieåm ñoù giaù trò PV ñöôïc chuyeån vaøo
thanh ghi T-WORD (CV) .Trong khoaûng thôøi gian treã ,töùc laø khi T-Word #0,T-bit coù giaù trò baèng
1.Ngoaøi khoaûng thôøi gian treã T-bit coù giaù trò baèng 0.
Neáu chöa heát thôøi gian treã maø tín hieäu ñaàu vaøo veà 0 thì T-bit vaø T-Word cuõng veà giaù trò 0
d/Timer taïo xung coù nhôù (Extended Pulse timer):
Cuù phaùp SE < teân timer >
Thôøi gian giöõ treã ñöôïc baét ñaàu khi coù söôøn leân cuûa tín hieäu ñaàu vaøo ( hoaëc coù söôøn leân cuûa tínhieäu
enable ñoàng thôøi tín hieäu vaøo baèng 1),töùc thôøi ôû ngay thôøi ñieåm ñoù giaù trò PV ñöôïc chuyeån vaøo
thanh ghi T-WORD (CV) .Trong khoaûng thôøi gian treã ,töùc laø khi T-Word #0,T-bit coù giaù trò baèng
1.Ngoaøi khoaûng thôøi gian treã T-bit coù giaù trò baèng 0.
Neáu chöa heát thôøi gian treã maø tín hieäu ñaàu vaøo veà 0 thì thôøi gian treã vaãn ñöôïc tính tieáp tuïc ,töùc laø T-
bit vaø T-Word khoâng veà 0theo tín hieäu ñaàu vaøo.
e/Timer treã theo söôøn xuoáng (Off delay timer):
Cuù phaùp SF < teân timer >
Thôøi gian giöõ treã ñöôïc baét ñaàu khi coù söôøn xuoáng cuûa tín hieäu ñaàu vaøo ,töùc laø ôû thôøi ñieåm xuaát hieän
söôøn xuoáng cuûa tín hieäu ñaàu vaøo, giaù trò PV ñöôïc chuyeån vaøo thanh ghi T-WORD (CV) .Trong
khoaûng thôøi gian giöõa söôøn leân cuûa tín hieäu vaøo hoaëc T-Word #0,T-bit coù giaù trò baèng 1.Ngoaøi
khoaûng thôøi gian treã T-bit coù giaù trò baèng 0.
f/Khai baùo tín hieäu xoaù ( Reset)
Cuù phaùp A < ñòa chæ bit >
R < Teân timer >
Toaùn haïng thöù nhaát “ñòa chæ bit” xaùc ñònh tín hieäu seõ ñöôïc söû duïng laøm tín hieäu chuû ñoäng xoaù cho
timer coù teân trong toaùn haïng thöù 2
Khi tín hieäu xoaù baèng 1 ,T-Word ( Thanh ghi CV ) vaø T-bit cuøng ñoàng thôøi ñöôïc ñöa veà 0.Neáu tín
hieäu xoaù veà 0,Timer seõ chôø ñöôïc kích laïi.
g/Ñoïc noäi dung thanh ghi T-Word ( CV )
Noäi dung thanh ghi T-Word laø CV coù theå ñöôïc ñoïc vaøo ACCU1 theo hai caùch :
1/ Ñoïc soá ñeám töùc thôøi ( khoâng coù ñoä phaân giaûi)
Cuù phaùp L < teân timer >
Toaùn haïng laø teân timer maø thanh ghi T-Word cuûa noù seõ ñöôïc ñoïc vaøo ACCU1.
Giaù trò ñoïc ñuôïc laø moät soá nguyeân döông xaùc ñònh soá ñeám töùc thôøi ( khoâng coù thöù nguyeân),töùc laø
chæ laø chæ laø tæ soá giöõa khoaûng thôøi gian keå töø khi Timer ñöôïc kích ,vaø ñoä phaân giaûi.
2/ Ñoïc thôøi gian treã töùc thôøi:
Cuù phaùp LC < Teân timer >

Ngöôøi soaïn : Haø vaên Trí 68


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Toaùn haïng laø teân timer maø thanh ghi T-Word cuûa noù seõ ñöôïc ñoïc vaøo ACCU1.Giaù trò ñoïc ñöôïc goàm
2 phaàn: Moät soá BCD xaùc ñònh soá ñeám töùc thôøi (khoâng coù thöù nguyeân) vaø ñoä phaân giaûi
13/ Boä ñeám ( Counter):
a/Khai baùo söû duïng:
Vieäc khai baùo söû duïng Counter bao goàm caùc böôùc :
-Khai baùo tín hieäu enable neáu muoán söû duïng tín hieäu chuû ñoäng kích.
-Khai baùo tín hieäu ñaàu vaøo CU ñöôïc ñeám tieán
-Khai baùo tín hieäu ñaàu vaøo CD ñöôïc ñeám luøi
-Khai baùo tín hieäu ñaët (set) vaø giaù trò ñaët tröôùc (PV)
-Khai baùo tín hieäu xoaù (reset).
Trong taát caû 5 böôùc treân,caùc böôùc 2,3 laø baét buoäc
i/Khai baùo tín hieäu enable ( kích ñeám)
Cuù phaùp A < Ñòa chæ bit >
FR < teân Counter >
Toaùn haïng thöù nhaát “ ñòa chæ bit” xaùc ñònh tín hieäu seõ ñöôïc söû duïng laøm tín hieäu chuû ñoäng kích
cho boä ñeám coù teân cho trong toaùn haïng thöù hai.Teân cuûa boä ñeám coù daïng Cx vôùi x trong khoaûng
[0,255]
ii/Khai baùo tín hieäu ñöôïc ñeám tieán theo söôøn leân
Cuù phaùp A < Ñòa chæ bit >
CU < Teân Counter >
Toaùn haïng thöù nhaát “ ñòa chæ bit” xaùc ñònh tín hieäu maø söôøn leân cuûa noù ñöôïc boä ñeám vôùi teân cho
trong toaùn haïng thöù hai ñeám tieán .Teân cuûa boä ñeám coù daïng Cx .Moãi khi xuaát hieän moät söôøn leân
cuûa tín hieäu ,boä ñeám seõ taêng noäi dung cuûa thanh ghi C-Word (CV) leân 1 ñôn vò.
iii/Khai baùo tín hieäu ñöôïc ñeám luøi theo söôøn leân
Cuù phaùp A < Ñòa chæ bit >
CD < Teân Counter >
Toaùn haïng thöù nhaát “ ñòa chæ bit” xaùc ñònh tín hieäu maø söôøn leân cuûa noù ñöôïc boä ñeám vôùi teân cho
trong toaùn haïng thöù hai ñeám luøi .Teân cuûa boä ñeám coù daïng Cx .Moãi khi xuaát hieän moät söôøn leân
cuûa tín hieäu ,boä ñeám seõ giaûm noäi dung cuûa thanh ghi C-Word (CV) ñi 1 ñôn vò.
iv/Khai baùo tín hieäu ñaët ( set ) giaù trò ñaët tröôùc (PV)
Cuù phaùp A < Ñòa chæ bit >
L C# < haèng soá >
S < Teân Counter >
Toaùn haïng thöù nhaát “ ñòa chæ bit” xaùc ñònh tín hieäu maø moãi khi xuaát hieän söôøn leân cuûa noù ,haèng
soá PV cho trong leänh thöù hai döôùi daïng BCD seõ ñöôïc chuyeån vaøo thanh ghi C-Wordcuûa boä ñeám
coù teân trong toaùn haïng cuûa leänh thöù ba.
iv/Khai baùo tín hieäu xoaù ( reset )
Cuù phaùp A < Ñòa chæ bit >
R < Teân Counter >
Toaùn haïng thöù nhaát “ ñòa chæ bit” xaùc ñònh tín hieäu maø moãi khi xuaát hieän söôøn leân cuûa noù ,thanh
ghi C-Word cuûa boä ñeám coù teân trong toaùn haïng cuûa leänh thöù hai seõ ñöôïc xoaù veà
g/Ñoïc noäi dung thanh ghi C-Word
Noäi dung thanh ghi C-Word laø CV coù theå ñöôïc ñoïc vaøo ACCU1 theo hai caùch :

Ngöôøi soaïn : Haø vaên Trí 69


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

1/ Ñoïc soá ñeám töùc thôøi ( khoâng coù ñoä phaân giaûi)
Cuù phaùp L < teân counter >
Toaùn haïng laø teân boä ñeám maø thanh ghi C-Word cuûa noù seõ ñöôïc ñoïc vaøo ACCU1.
Giaù trò ñoïc ñuôïc laø moät soá nguyeân döông xaùc ñònh soá ñeám töùc thôøi
2/ Ñoïc soá ñeám töùc thôøi daïng BCD:
Cuù phaùp LC < Teân counter >
Toaùn haïng laø teân boä ñeám maø thanh ghi C-Word cuûa noù seõ ñöôïc ñoïc vaøo ACCU1.Giaù trò ñoïc ñöôïc
laø soá BCD
14/ Kyõ thuaät söû duïng con troû ( Pointer)
Con troû (Pointer) laø moät coâng cuï maïnh ,raát ñöôïc öa duøng trong caùc chöông trình ñieàu khieån .Vieäc
söû duïng con troû ñöôïc hieåu laø söï truy nhaäp giaùn tieáp tôùi moät oâ nhôù trong boä nhôù .Nhöng theá naøo
laø söï truy nhaäp giaùn tieáp .Ta haõy xeùt leänh ñoïc noäi dung cuûa oâ nhôù MW0 vaøo ACCU1 laøm ví duï
L MW0 // Ñoïc giaù trò cuûa oâ nhôù MW0 vaøo thanh ghi ACCU1
Leänh naøy laø truy nhaäp tröïc tieáp oâ nhôù MW0 vì ñòa chæ cuûa oâ nhôù ñoù laø MW0 ñaõ ñöôïc cho tröïc tieáp
trong leänh döôùi daïng toaùn haïng .Nhö vaäy coù theå hình dung ra laø leänh ñoïc noäi dung oâ nhôù MW0 maø
ñòa chæ oâ nhôù ñoù khoâng cho tröïc tieáp trong leänh seõ laø leänh truy nhaäp giaùn tieáp.
Trong truy nhaäp giaùn tieáp ,ñòa chæ oâ nhôù ñöôïc truy nhaäp seõ laø noäi dung cuûa moät oâ nhôù khaùc
maø ta goïi laø con troû .Ví duï vieäc truy nhaäp tröïc tieáp oâ nhôù MW0 ôû treân töông ñöông vôùi vieäc truy
nhaäp giaùn tieáp nhôø con troû MD10 nhö sau:
L 0
T MD10
L MW[MD10]
a/ Söû duïng töø MW hoaëc töø keùp MD laøm con troû :
Ta coù theå söû duïng moät oâ nhôù thuoäc vuøng nhôù M coù kích thöôùc laø töø ( MW) hoaëc töø keùp (MD) ñeå laøm
con troû .Trong nhöõng tröôøng hôïp nhö vaäy ,con troû MW hoaëc MD chæ coù theå laø con troû ñòa phöông (
chæ chöùa phaàn soá cuûa ñòa chæ).
Do phaàn soá cuûa ñòa chæ coù hai daïng theå hieän :
- Ñòa chæ byte :20 ,22 ,100,…..
- Ñòa chæ bit : 20.0 ,22.2 ,100.5…..
Neân con troû ñòa phöông cuõng coù hai hình thaùi
- Con troû ñòa phöông chæ vò trí byte trong vuøng
- Vaø con troû ñòa phöông chæ vò trí bit trong töøng vuøng.
i/ Con troû ñòa phöông chæ vò trí Byte: Vôùi hình thaùi con troû naøy ta duøng ñöôïc caû hai loaïi kích
thöôùc töø (MW) hoaëc töø keùp (MD) .Con troû chæ chöùa phaàn soá xaùc ñònh ñòa chæ byte .Neáu oâ nhôù caàn
ñöôïc truy nhaäp giaùn tieáp coù kích thöôùc lôùn hôn 1 byte (töø,töø keùp hay moät daõy caùc byte) thì noäi
dung cuûa con troû laø ñòa chæ byte ñaàu tieân trong daõy caùc byte ñoù .
ví duï:
L 20
T MD10
L DIB[MD10]
T MW[MD10]
ii/ Con troû ñòa phöông chæ vò trí Bit:
Vôùi hình thaùi naøy ta phaûi duøng loaïi con troû coù kích thöôùc töø keùp (MD,DBD,LD).Con troû naøy chöùa
caû phaàn soá xaùc ñònh ñòa chæ byte vaø phaàn soá xaùc ñònh soá thöù töï cuûa bit trong byteñoù theo caáu truùc.

Ngöôøi soaïn : Haø vaên Trí 70


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

0 0 0 0 0 0 0 0 0 0 0 0 0 b b b b b b b b b b b b b b b b b x x x
Khoâng söû duïng Ñòa chæ byte ( 0 – 65535 ) Ñòa chæ
Bit (0-7)
Caáu truùc döõ lieäu naøy cuûa con troû chæ ñòa chæ bit ñöôïc khai baùotrong S7-300 baèng toaùn haïng daïng:
P# < ñòa chæ byte > . < Soá thöù töï >
15/ Söû duïng thanh ghi con troû AR1 vaø AR2:
S7-300 coù hai thanh ghi 32bits ñöôïc duøng laøm con troû thay vì phaûi söû duïng moät töø
(MW,DBW,LW) hay töø keùp (MD,DBD,LD).Hai thanh ghi naøy coù teân laø AR1 vaø AR2.Ñaëc bieät
tuy hai thanh ghi con troû naøy chæ chöùa ñòa chæ bit( coù theå coù hoaëc khoâng coù phaàn chöõ cuûa ñòa
chæ),song laïi coù theå söû duïng ñeå truy nhaäp oâ nhôù coù kích thöôùc nhieàu hôn moät bit nhö byte,töø hoaëc
töø keùp.
Ta phaân bieät hai tröôøng hôïp :
- AR laø con troû ñòa phöông chæ vò trí bit trong töøng vuøng ,khoâng chöùa phaàn chöõ cuûa ñòa
chæ (area internal register)
- AR laø con troû toaøn cuïc chævò trí bit trong boä nhôù ,chöùa caû phaàn chöõ vaø phaàn soá cuûa ñòa
chæ (area crssing register)
a/Khai baùo giaù trò thanh ghi AR: Hai thanh ghi AR ñöôïc gaùn giaù trò baèng leänh
Cuù phaùp: LAR1 [P# <ñòa chæ bit >]
LAR2 [P# <ñòa chæ bit >]
Toaùn haïng cuûa leänh gaùn gia 1trò coù caáu truùc:
P#[ < teân vuøng boä nhôù >] < ñòa chæ byte > . < soá thöù töï bit >
Leänh coù theå coù hoaëc khoâng coù toaùn haïng .Neáu khoâng coù toaùn haïng ,leänh seõ chuyeån noäi dung cuûa
ACCU1 vaøo thanh ghi AR1 hoaëc AR2.Tröôøng hôïp coù toaùn haïng ,leänh chuyeån giaù trò toaùn
haïng vaøo thanh ghi AR1 hoaëc AR2.Leänh naøy khoâng laøm thay ñoåi noäi dung thanh ghi traïng
thaùi .
Giaù trò chuyeån vaøo thanh ghi AR phaûi coù caáu truùc ñuùng cuûa moät con troû chæ bit vôùi daïng nhö sau
Moät ñieåm khaùc bieät nöõa cuûa vieäc truy nhaäp giaùn tieáp thoâng qua con troû AR so vôùi con troû kieåu
MD laø oâ nhôù ñöôïc truy nhaäp coù moät khoaûng caùch nhaát ñònh theo chieàu taêng (offset) so vôùi oâ
nhôù maø AR chæ vaøo (hình 2.24).Offset coù ñôn vò nhoû nhaát tính theo bit vôùi caáu truùc trong leänh
truy nhaäp nhö sau:
<teân leänh> <vuøng vaø kích thöôùc> [ Arx,P# <soá byte >.<Soá bit>]
Offset
Tröø tröôøng hôïp truy nhaäp bit (A,O,=,….),trong leänh phaûi ghi roõ kích thöôùc maûng bit cuûa oâ nhôù ñöôïc
truy nhaäp (B,W hay D).Neáu con troû ñöôïc söû duïng laø con troû ñòa phöông ,thì coøn phaûi cho bieát
vuøng boä nhôù ñöôïc truy nhaäp trong boä nhôù ( M,P,I,Q,DB hay DI)
Ñaëc bieät thanh ghi AR khoâng chæ tôùi ñöôïc vuøng ñeäm PQ cuûa caùc coång ra töông töï .Giaù trò
P#P…. cuûa toaùn haïng chæ ñòa chæ ñöôïc töï ñoäng hieåu laø ñòa chæ cuûa coång vaøo töông töï.

Ví duï 1:
LAR1 P#1.0 //Thanh ghi AR1 ñöôïc duøng laøm con troû ñòa phöông
LAR2 P#M10.0 //Thanh ghi AR2 ñöôïc duøng laøm con troû toaøn cuïc
A [ AR2,P#1.3] //Truy nhaäp oâ nhôù M11.3
= Q[AR1,P#0.2] //Ñöa giaù trò ra coång Q1.2
L IB[AR1,P#0.0] //Ñoïc 8 coång vaøo IB1 ( I1.0 – I1.7)
T B[AR2,P#0.0] //Chuyeån giaù trò ñoïc ñöôïc vaøo byte MB10

Ngöôøi soaïn : Haø vaên Trí 71


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

L W[AR2,P#5.0] // Ñoïc MW15


T MW[AR1,P#2.0] //Chuyeån vaøo MW3
L DBD[AR1,P#9.0] //Ñoïc DBD10
T D[AR2,P#20.0]
Ví duï 2: Quay laïi ví duï veà chöông trình nhaäp döõ lieäu töø coång töông töï PIW304 vaø caát vaøo boä ñeäm
ñaõ ñöôïc trình baøy trong muïc tröôùc nhöng söõa laïi baèng caùch duøng thanh ghi con troû toaøn cuïc
AR.Boä ñeäm laø vuøng nhôù goàm 10 töø MW0 – MW18.Döõ lieäu vöøa ñoïc ñöôïc seõ ñöôïc caát vaøo töø
nhôù cuoái cuøng cuûa boä ñeäm .Caùc döõ lieäu ñaõ coù trong boä ñeäm seõ ñöôïc chuyeån daàn leân.Döõ lieäu
ñaàu tieân trong boä ñeäm seõ bò ñaåy ra khoûi boä ñeäm.Chöông trình söû duïng MB24 chöùa soá ñeám:
LAR1 P#M0.0 //Ñòa chæ oâ nhôù ñaàu tieân
L 9
Next: T MB24 //Chæ soá ñeám
L W[AR1,P#2.0]
T W[AR1,P#0.0]
+AR1 P#2.0
L MB24
LOOP Next
L PIW304
T MW18

b/ Taêng giaûm noäi dung thanh ghi AR:


Trong ví duï treân ta ñaõ söû duïng leänh taêng noäi dung thanh ghi AR.Leänh naøy coù caáu truùc chung nhö
sau :
Cuù Phaùp: +AR1 [P# < Bytes > . < Bits >]
+AR1 [P# < Bytes > . < Bits >]
Leänh coù theå coù hoaëc khoâng coù toaùn haïng .Trong tröôøng hôïp khoâng coù toaùn haïng,leänh seõ coäng noäi
dung cuûa thanh ghi AR vôùi noäi dung cuûa töø thaáp trong ACCU1 vaø caát laïi keát quaû vaøo thanh
ghi AR.
Trong tröôøng hôïp coù toaùn haïng ,thì toaùn haïng phaûi laø moät soá coù caáu truùc gioáng nhö Offset,khi ñoù
leänh seõ coäng noäi dung cuûa toaùn haïng vôùi noäi dung cuûa thanh ghi AR vaø caát laïi noäi dung vaøo
thanh ghi AR .Leänh khoâng laøm thay ñoåi noäi dung thanh ghi traïng thaùi.
Ví duï:
LAR1 P#M0.0 // Ñòa chæ oâ nhôù M0.0 ñöôïc ghi vaøo thanh ghi AR1
+AR1 P#2.0 // AR1 chöùa ñòa chæ oâ nhôù M2.0
c/ Caát giöõ noäi dung thanh ghi AR:
Ngoaøi caùc leänh khai baùo ,taêng giaûm ,ta coøn coù caùc leänh caát giöõ noäi dung thanh ghi AR vôùi caáu
truùc:
Cuù Phaùp: TAR1 [< Ñòa chæ töø keùp >]
TAR2 [< Ñòa chæ töø keùp >]
Leänh coù theå hoaëc khoâng coù toaùn haïng ,trong tröôøng hôïp khoâng coù toaùn haïng ,leänh seõ chuyeån noäi
dung thanh ghi AR vaøo ACCU1 .Neáu coù toaùn haïng ,leänh seõ chuyeån noäi dung thanh ghi AR vaøo töø
keùp coù ñòa chæ ñöôïc chæ thò trong toaùn haïng
Ví duï:
TAR1 MD0 //Chuyeån noäi dung thanh ghi AR1 vaøo töø keùp MD0
d/ Ñaûo noäi dung hai thanh ghi AR:

Ngöôøi soaïn : Haø vaên Trí 72


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Cuù Phaùp: CAR


Leänh khoâng coù toaùn haïng va thöïc hieän vieäc ñaûo noäi dung cuûa hai thanh ghi AR1,AR2.Noäi dung
cuûa AR1 ñöôïc chuyeån sang AR2 vaø ngöôïc laïi noäi dung cuûa AR2 ñöôïc ghi vaøo AR1
16/ Khai baùo vaø söû duïng khoái DB:
S7-300 coù vuøng M ñöôïc söû duïng laøm caùc oâ nhôù löu tröõ giaù trò trung gian ,caùc bieán côø .Beân caïnh
vuøng nhôù M,S7-300 coøn cung caáp theâm moät vuøng ñaëc bieät khaùc ñeå toå chöùc löu giöõ döõ lieäu döôùi
daïng khoái vaø coù teân chung laø caùc khoái döõ lieäu Data Block (DB).Kích thöôùc vuøng nhôù naøy phuï
thuoäc vaøo töøng loaïi CPU,rieâng ñoái vôùi CPU 314 thì noù coù kích thöôùc laø 8Kbytes.Ta coù theå khai
baùo nhieàu khoái DB cuøng moät luùc (toái ña 65535),ñöôïc phaân bieät vôùi nhau nhôø chæ soá khoái nhö
DB1,DB2…..DB65535.Kích thöôùc cuûa caùc khoái coù theå khaùc nhau ,nhöng toång kích thöôùc cuûa taát
caû caùc khoái DB khoâng ñöôïc vöôït quaù kích thöôùc vuøng nhôù ñaõ cho ( khoâng ñöôïc vöôït quaù 8Kbytes
vôùi CPU 314).Moïi khoái DB ñeàu coù theå truy nhaäp töøng bit.
a/Khai baùo moät khoái döõ lieäu:
Khoái döõ lieäu ( DB ) ñöôïc khai baùo nhôø phaàn meàm soaïn thaûo Step7.
Ñeå khai baùo moät khoái DB ta thöïc hieän caùc böôùc sau:
- Ñaët teân bieán
- Khai baùo kieåu bieán .Beân caïnh nhöõng kieåu bieán thoâng duïng nhö BOOL ( 1 bit ),Byte (8 bits),
Int ( 16 bits),Real ( 32 bits )…… ta coøn coù theå söû duïng caùc kieåu bieán phöùc hôïp nhö String (
chuoãi kí töï ) ,Array ( maûng döõ lieäu )….
- Ñaët giaù trò ban ñaàu cho bieán ( coù theå boû qua )
- Chuù thích ( coù theå boû qua )
i/ Kieåu String: Ñaây laø 1 bieán coù daïng moät daõy kí töï .Daõy kí töï coù ñoä daøi tính theo byte laø soá
cho trong daáu ngoaëc vuoâng .Kích thöôùc cuûa bieán baèng ñoä daøi cuûa daõy kí töï coäng theâm 2 byte
chöùa maõ keát thuùc chuoãi kí töï ñoù
ii/Kieåu bieán ARRAY: Ñaây laø bieán daïng maûng goàm nhieàu phaàn töû cuøng caáu truùc (
CHAR,BYTE,WORD,INT,DWORD hay REAL).Maûng naøy coù theå 1 chieàu ,song cuõng coù
theå nhieàu chieàu.Maûng 2 chieàu ñöôïc khai baùo bôûi ARRAY [1..x,1..y],trong ñoù x laø ñoä daøi
chieàu thöù nhaát vaø y laø ñoä daøi chieàu thöù hai.
b/Truy nhaäp vaø quaûn lí khoái döõ lieäu:
i/ Truy nhaäp xa:
Taát caû caùc leänh truy nhaäp oâ nhôù ñaõ bieát ñeàu söû duïng ñöôïc vôùi khoái döõ lieäu thoâng qua toaùn haïng:
< Teân khoái döõ lieäu > . < Kích thöôùc oâ nhôù vaø vò trí >

ví duï: DB1,DB5 DBX Truy nhaäp bit DBX1.3


DBB Truy nhaäp Byte DBB2
DBW Truy nhaäp töø DBW4
DBD Truy nhaäp töø keùp DBD6
Caùch truy nhaäp nhö treân coøn goïi laø truy nhaäp xa .Kieåu truy nhaäp naøy coù öu ñieåm laø coù theå taùc
ñoäng tôùi taát caû caùc khoái döõ lieäu nhöng coù haïn cheá cô baûn laø chaäm vaø khoâng theå söû duïng kyõ thuaät
con troû ñeå truy nhaäp xa.
Ví duï:
A DB1.DBX1.5 //Ñoïc noäi dung bit thöù 5 thuoäc byte thöù 0 cuûa khoái DB1
A DB5.DBX2.3 //Thöïc hieän pheùp ^ vôùi giaù trò cuûa bit thöù 3 ,byte 2 cuûa khoái
DB5

Ngöôøi soaïn : Haø vaên Trí 73


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

= DB10.DBX2.4 //Chuyeån vaøo bit thöù 4 byte 2 cuûa khoái DB10.


ii/Truy nhaäp gaàn:
Beân caïnh truy nhaäp xa,S7-300 coøn cung caáp theâm nhöõng leänh truy nhaäp gaàn.Ñoù laø kieåu truy nhaäp
caùc khoái döõ lieäu coù teân ñaõ ñöôïc ghi vaøo 1 trong hai thanh ghi chæ khoái döõ lieäu DB ( DB
register).Vieäc ghi teân khoái döõ lieäu vaøo hai thanh ghi ñoù ñöôïc thöïc hieän baèng leänh môû khoái coù
caáu truùc nhö sau:
Cuù Phaùp: OPN DB < Chæ soá cuûa khoái döõ lieäu >
OPN DB < Chæ soá cuûa khoái döõ lieäu >
Leänh thöù nhaát seõ ghi teân khoái döõ lieäu coù chæ soá cho trong toaùn haïng vaøo DB-register thöù
nhaát.Thanh ghi naøy seõ ñöôïc ta goïi laø thanh ghi DB.Leänh thöù hai ghi teân khoái döõ lieäu vôùi chæ soá
cho trong toaùn haïng vaøo DB-register thöù hai coù teân goïi laø thanh ghi DI
Ví duï:
OPN DB1 //Môû khoái döõ lieäu DB1( Ghi teân khoái DB1 vaøo thanh ghi DB)
L DBW35 //Ñoïc noäi dung töø DBW35 cuûa DB1 vaøo ACCU1
T MW22 //Chuyeån vaøo oâ nhôù MW22
OPN DI20 //Môû khoái döõ lieäu DB20( Ghi teân khoái DB20 vaøo thanh ghi DB)
L DIB12 //Ñoïc noäi dung byte 12 cuûa khoái DB20 vaø chuyeån vaøo ACCU1
T DBB37 //Chuyeån ACCU1 vaøo byte 37 cuûa khoái döõ lieäu DB1
Caùc oâ nhôù cuûa khoái döõ lieäu ñaõ ñöôïc môû baèng leänh OPN seõ ñöôïc truy nhaäp thoâng qua toaùn haïng:
< Kích thöôùc oâ nhôù vaø vò trí >

Thoâng qua thanh ghi DB Thoâng qua thanh ghi DI


DBX Truy nhaäp bit DIX Truy nhaäp bit
DBB Truy nhaäp byte DIB Truy nhaäp byte
DBW Truy nhaäp töø DIW Truy nhaäp töø
DBD Truy nhaäp töø keùp DID Truy nhaäp töø keùp
Khaùc vôùi vieäc truy nhaäp xa ,ôû cheá ñoä truy nhaäp gaàn ta coù theå söû duïng kyõ thuaät con troû .
Ví duï caùc leänh sau thöïc hieän vieäc chuyeån noäi dung DB10.DBW0 tôùi DB10.DBW2
OPN DB10
LAR1 P#DBX0.0
L W[AR1,P#0.0]
T W[AR1,P#2.0]
1/Ñoïc chæ soá khoái döõ lieäu coù teân trong thanh ghi DB hoaëc DI
Cuù Phaùp L DBNO
L DINO
Leänh ñoïc chæ soá cuûa khoái döõ lieäu coù teân trong thanh ghi DB (DBNO) hoaëc trong thanh ghi DI
(DINO) vaø chuyeån keát quaû ñoïc ñöôïc vaøo ACUU1 döôùi daïng soá nguyeân.Leänh khoâng laøm thay ñoåi
noäi dung thanh ghi traïng thaùi.Noäi dung cuõ cuûa ACCU1 ñöôïc chuyeån vaøo ACCU2
2/Ñoïc ñoä daøi khoái döõ lieäu coù teân trong thanh ghi DB hoaëc DI
Cuù Phaùp L DBLG
L DILG
Leänh ñoïc ñoä daøi tính theo byte cuûa khoái döõ lieäu coù teân trong thanh ghi DB (DBLG) hoaëc trong
thanh ghi DI ( DILG ) vaø chuyeån keát quaû ñoïc ñöôïc döôùi daïng soá nguyeân 32 bits vaøo
ACCU1.Leänh khoâng laøm thay ñoåi noäi dung cuûa thanh ghi traïng thaùi .Noäi dung cuõ cuûa ACCU1
ñöôïc chuyeån vaøo ACCU2.

Ngöôøi soaïn : Haø vaên Trí 74


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

3/Ñaûo noäi dung hai thanh ghi DB vaø DI


Cuù phaùp CDB
Leänh chuyeån noäi dung cuûa thanh ghi DB sang thanh ghi DI vaø ngöôïc laïi noäi dung DI sang DB
.Leänh khoâng laøm thay ñoåi noäi dung cuûa thanh ghi traïng thaùi

17/ Tín hieäu Analog :


a/ Ñoïc tín hieäu Analog:
¾ Ñeå ñoïc toát tín hieäu Analog tröôùc heát ta phaûi xaùc ñònh tín hieäu ñoïc Analog laø tín hieäu loaïi gì
( 0-10V,4-20mA,caùch ñaáu 2 daây,caùch ñaáu 4 daây……)
¾ Böôùc keá tieáp laø phaûi choïn ñuùng loaïi tín hieäu treân phaàn cöùng ( Choïn loaïi tín hieäu treân
Modul ñoïc keânh Analog) vaø choïn ñuùng treân caáu hình phaàn cöùng cho phuø hôïp,neáu choïn 2
böôùc naøy khoâng töông thích thì ñeøn System Fault cuûa Modul Analog seõ saùng vaø keânh
Analog seõ ñoïc sai.
¾ Xaùc ñònh ñuùng tín hieäu söû duïng,ñôn cöïc hay löôõng cöïc
¾ Xaùc ñònh ñòa chæ cho töøng keânh Analog ( vd: PIW256…)
¾ Söû duïng haøm SCALE nhö sau :

Haøm SCALE seõ thöïc hieän vieäc keânh chænh töø tín hieäu IN keát quaû seõ ñöôïc löu ôû OUT
OUT = (Float (IN)-K1)/(K2-K1) * ( HI_LIM – LO_LIM) + LO_LIM
Tín hieäu BIPOLAR : K1 = -27648.0 , K2 = 27648.0
Tín hieäu UNBIPOLAR : K1 = 0.0 , K2 = 27648.0

Ngöôøi soaïn : Haø vaên Trí 75


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

RET_VAL : Traû veà loãi neáu vieäc thöïc hieän haøm SCALE coù vaán ñeà
¾ Vieäc xuaát tín hieäu Analog cuõng söû duïng haøm SCALE,Tín hieäu Analog Out seõ
ñöôïc ñöa ra Modul xuaát tín hieäu Analog töông öùng
Baøi taäp :
1/ Ñoïc khoái löôïng töø ñaàu caân Redlion:
Ñaàu caân Redlion coù tích hôïp saün caùc Card Analog ( 0-10V,4-20mA ) vaø 1 soá Card khaùc nhö
RS232,RS485,ModBus,Profibus,Device Net…)
Tín hieäu Analog seõ töông öùng vôùi khoái löôïng hieän thò treân ñaàu caân tuyø thuoäc vaøo vieäc Set giaù
trò Analog töông öùng treân ñaàu caân.
Ví duï : Söû duïng keânh Analog laø 0-10VDC,choïn giaù trò Min laø 0Kg,giaù trò Max laø 100Kg thì
Neáu khoái löôïng treân ñaàu caân laø 50Kg,thì ñieän aùp ñoïc veà töông öùng laø 5VDC.
2/ Xuaát tín hieäu Analog Out ñieàu khieån bieán taàn :
Coù 1 caùch thoâng duïng ñeå thay ñoåi toác ñoä cuûa ñoäng cô laø ñieàu khieån bieán taàn baèng caùch thay ñoåi
caáp ñieän aùp töông öùng,hoaëc doøng töông öùng . Tuyø thuoäc vaøo töøng baøi toaùn cuï theå,toác ñoä ñoäng cô
seõ ñöôïc thay ñoåi töông öùng cho phuø hôïp.
18 / Ñoïc xung toác ñoä cao :
Xung toác ñoä cao ñöôïc ñoïc thoâng qua nhöõng Modul ñoïc xung toác ñoä cao hoaëc coù theå ñöôïc ñoïc
thoâng qua CPU coù tích hôïp saün nhöõng I/O coù khaû naêng ñoïc xung toác ñoä cao nhö CPU
312C,313C……
Vieäc ñoïc xung toác ñoä cao laø heát söùc caàn thieát cho nhöõng öùng duïng ñoïc xung Encoder, hay ñoïc
xung cuûa nhöõng Input toác ñoä cao.
Tuyø thuoäc töøng loaïi CPU cuõng nhö Modul ñoïc xung toác ñoä cao maø coù nhöõng caùch thöùc ñaáu noái
daây khaùc nhau,do vaäy vieäc ñaáu noái daây caàn phaûi xem taøi lieäu tröôùc khi thöïc hieän.
Caàn phaûi xaùc ñònh cheá ñoä ñoïc xung tröôùc khi ñaáu noái ( vd : cheá ñoä ñoïc 2 xung,cheá ñoä ñoïc 1 xung
……).
Haøm ñoïc xung toác ñoä cao : SFB 47

Ngöôøi soaïn : Haø vaên Trí 76


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Döõ lieäu ñöôïc löu vaøo khoái DB47 theo nguyeân taéc sau:

Maëc ñònh W#16#0300


Ñòa chæ cuûa keânh ñoïc xung toác ñoä cao,ñòa chæ naøy
thöôøng ñöôïc caøi ñaët trong caáu hình phaàn cöùng khi
thöïc hieän vieäc ñònh caáu hình phaàn cöùng.

Soá keânh,0-1 : CPU 312C, 0-2 : CPU 313C


0 – 3 : CPU 314C

Bit cho pheùp ñeám ( baét ñaàu ñeám vaø keát thuùc ñeám)
Ñöôïc ñieàu khieån baèng phaàn meàm

Cho pheùp ngoõ ra


Ñieàu khieån ngoõ ra

Maëc ñònh W#16#0000


Giaù trò cho vieäc ghi döõ lieäu cho boä ñeám.

Traïng thaùi coång beân trong

Traïng thaùi coång baét ñaàu ñeám töø beân ngoaøi

Traïng thaùi ngoõ vaøo choát


Traïng thaùi ngoõ ra

Traïng thaùi höôùng ngöôïc

Traïng thaùi höôùng thuaän.

Ngöôøi soaïn : Haø vaên Trí 77


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Giaù trò ñeám hieän taïi


Giaù trò choát taïi thôøi ñieåm
cuoái cuøng
Coù söï kieän môùi baét ñaàu
Traïng thaùi loãi

Giaù trò loãi.

Traïng thaùi so saùnh

Traïng thaùi traøn

Traïng thaùi döôùi

Traïng thaùi Zero

Giaù trò ñeám ngoõ ra

Ngöôøi soaïn : Haø vaên Trí Bit Reset


78 loãi.
Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Chi tieát cuï theå coù theå xem trong File Help cuûa SFB47 baèng caùch choïn SFB47 roài baám F1.
™ Ngoaøi vieäc ñoïc xung toác ñoä cao baèng haøm SFB47,ta coøn coù theå ñoïc taàn soá baèng haøm
SFB48

™ Caùch thöùc ñònh daïng haøm SFB48 cuõng hoaøn toaøn töông töï haøm SFB47,chæ khaùc ngoõ
ra laø taàn soá.Chi tieát cuï theå coù theå choïn haøm SFB48 roài baám F1.

Xaùc ñònh ñoä roäng xung baèng haøm SFB49

Ngöôøi soaïn : Haø vaên Trí 79


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Caùch thöùc ñònh daïng haøm cuõng nhö caùc bit ngoõ vaøo ngoõ ra hoaøn toaøn töông
töï,chæ khaùc ngoõ ra Output laø daïng ñoä roäng xung töø 0 -1.
¾ Truyeàn döõ lieäu qua CP baèng leänh SFB8:
Cöù coù 1 xung caïnh leân I0.0 thì ID,R_ID,SD_1 seõ ñöôïc truyeàn trong tröôøng hôïp
CPU300,
SD_2,SD_3,SD_4 seõ ñöôïc truyeàn trong tröôøng hôïp CPU S7_400
SD coù theå ñöôïc duøng laø Byte,Word hoaëc Dword
Ngoaøi ra coøn coù caùc Bit loãi , Bit thöïc hieän vaø thanh ghi traïng thaùi.
Döõ lieäu ñöôïc löu vaøo DB12.

¾ Nhaän döõ lieäu qua CP baèng leänh SFB9:


Cöù coù 1 xung caïnh leân I0.2 thì ID,R_ID,SD_1 seõ ñöôïc nhaän trong tröôøng hôïp
CPU300,
SD_2,SD_3,SD_4 seõ ñöôïc nhaän trong tröôøng hôïp CPU S7_400
SD coù theå ñöôïc duøng laø Byte,Word hoaëc Dword
Ngoaøi ra coøn coù caùc Bit loãi , Bit thöïc hieän vaø thanh ghi traïng thaùi.
Döõ lieäu ñöôïc löu vaøo DB13.

¾ Truyeàn döõ lieäu qua CP baèng leänh SFB12:

Ngöôøi soaïn : Haø vaên Trí 80


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Cöù coù 1 xung caïnh leân I0.0 thì ID,R_ID,SD_1 seõ ñöôïc truyeàn trong tröôøng hôïp
CPU300,soá Byte ñöôïc truyeàn ñöôïc quyeát ñònh bôûi chieàu daøi Len MW28,vò trí
Byte truyeàn ñöôïc quyeát ñònh bôûi SD_1.
SD coù theå ñöôïc duøng laø Byte,Word hoaëc Dword
Ngoaøi ra coøn coù caùc Bit loãi , Bit thöïc hieän vaø thanh ghi traïng thaùi.
Döõ lieäu ñöôïc löu vaøo DB14.

Nhaän döõ lieäu qua coång COM thoâng qua haøm SFB13

Caùch söû duïng haøm nhaän döõ lieäu thoâng qua coång COM hoaøn toaøn töông töï caùch
duøng cuûa haøm truyeàn döõ lieäu thoâng qua coång COM.
Ñoïc döõ lieäu töø CPU thoâng qua haøm SFB14

Ngöôøi soaïn : Haø vaên Trí 81


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Ghi döõ lieäu vaøo CPU thoâng qua haøm SFB15

Truyeàn döõ lieäu ra coång maùy in thoâng qua haøm SFB16

Ngöôøi soaïn : Haø vaên Trí 82


Baøi giaûng S7-300 Coâng ty TNHH TM&DV Kó thuaät SIS

Khôûi ñoäng Thieát bò thoâng qua haøm SFB19

Döøng thieát bò thoâng qua haøm SFB20

Ngöôøi soaïn : Haø vaên Trí 83

You might also like