You are on page 1of 82

Forrs: http://www.doksi.

hu

PLC programozs az
IEC 1131-3
szabvny szerint

Jancskrn Anweiler Ildik


fiskolai adjunktus
PTE PMMFK
Mszaki Informatika Tanszk
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

2
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Tartalomjegyzk
Az IEC-1131-3 szabvny.......................................................................................................... 6
A programszervezsi egysgek felptse ............................................................................... 6
A vltozk deklarlsa ........................................................................................................... 6
Plda egy tipikus vltozdeklarcira................................................................................ 7
A programszervezsi egysg trzse ....................................................................................... 7
Az IEC-1131-3 szabvnyban ajnlott programozsi nyelvek ............................................ 7
Az IEC programozi krnyezet .............................................................................................. 9
Erforrs eloszts..................................................................................................................... 9
A programszervezsi egysgekrl rszletesen...................................................................... 11
A programszervezsi egysg rszei...................................................................................... 11
Plda a programszervezsi egysg felptsre (fggvnyblokk).................................... 12
Deklarci ............................................................................................................................ 12
Vltoztpusok ..................................................................................................................... 13
A szervezsi egysgek kapcsoldsi felleteinek jellegzetessgei .................................. 13
A formlis paramter s a visszatrsi rtk rtelmezse .................................................... 13
Plda a FB formlis paramtereinek bels s kls rtelmezsre .................................. 14
A fggvnyblokk..................................................................................................................... 15
Hordozhatsg s objektum orientltsg.......................................................................... 15
A fggvnyblokkban hasznlhat vltoztpusok............................................................ 15
A fggvny .............................................................................................................................. 15
A fggvny vltoztpusai s a fggvnyrtk ................................................................ 16
A program............................................................................................................................... 16
Nyelvi elemek, adattpusok, vltozk ................................................................................... 17
Egyszer nyelvi elemek ....................................................................................................... 17
Foglalt kulcsszavak .............................................................................................................. 17
A klnbz adattpusok szmbrzolsa............................................................................ 17
A konstansok ttekintse...................................................................................................... 18
A felhasznl ltal definilhat nevek, cmkk ................................................................... 18
Vltozk s adattpusok ......................................................................................................... 19
A vltozdeklarci legfontosabb elemei ............................................................................ 19
Adattpusok............................................................................................................................. 19
Elemi adattpusok................................................................................................................. 19
Szrmaztatott adattpusok .................................................................................................... 20
ltalnos adattpusok ........................................................................................................... 21
A vltozattribtumok........................................................................................................... 21
Plda az attribtumok hasznlatra .................................................................................. 22
Kzvetlen cmzs vltozk................................................................................................... 22
Plda kzvetlen cmzs vltozk deklarlsra ............................................................. 23
A szervezsi egysg trzsrsze ............................................................................................... 24
Az utastslista...................................................................................................................... 24
Az akkumultor .................................................................................................................... 24
Mveletek, parancsok........................................................................................................... 24
Mdost opertorok ............................................................................................................ 25
A mveletek csoportostsa ................................................................................................... 26
Mveletek logikai (BOOL) vltozkkal .............................................................................. 26
Mveletek ltalnos (ANY) adattpussal ............................................................................. 26
Ugr s hvutastsok (programszervezsi utastsok)....................................................... 26
A fggvnyek s a fggvnyblokkok hasznlata ................................................................. 27
A fggvnyek hvsa............................................................................................................ 27

3
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Plda fggvnyhvsra ......................................................................................................... 27


Plda mveletre .................................................................................................................... 28
Plda standard fggvny hvsra ........................................................................................ 28
A fggvnyblokk hvsa....................................................................................................... 28
Plda a felhasznli fggvnyblokk hvsra .................................................................. 29
Programtervezs funkcitervben.......................................................................................... 31
A standard fggvnyek .......................................................................................................... 32
A standard fggvnyblokkok be- s kimeneti paramtereinek rtelmezse s adattpusa... 35
RS trol........................................................................................................................... 35
SR trol........................................................................................................................... 36
Felfut l detektlsa: az R_TRIG fggvnyblokk.......................................................... 36
Lefut l detektlsa: az F_TRIG fggvnyblokk ........................................................... 37
A szmllk............................................................................................................................. 38
CTD (Count Down) lefel szmll..................................................................................... 38
CTU (Count Up) felfel szmll ........................................................................................ 38
CTUD (Count Up-Down) fel-le szmll............................................................................ 39
Az idztk .............................................................................................................................. 40
Impulzus idzt (TP = Time Pulse) .................................................................................... 40
Bekapcsols-ksleltetses idzt ........................................................................................ 41
Kikapcsols-ksleltetses idzt......................................................................................... 41
A PLC konfigurlsa ............................................................................................................. 43
A PLC projekt felptse........................................................................................................ 43
A konfigurci sszetevi.................................................................................................... 44
A CONFIGURATION jellemzi ..................................................................................... 44
A RESOURCE jellemzi ................................................................................................. 44
A TASK s a fut program .............................................................................................. 45
Plda TASK deklarcira................................................................................................. 46
PLDATR............................................................................................................................ 47
sszerendelsi tblzat: ................................................................................................... 48
Funkciterv....................................................................................................................... 50
Utastslista ...................................................................................................................... 51
Ltradiagram .................................................................................................................... 52
Kvetvezrls tervezse dntsi tblzattal ....................................................................... 53
Stancols............................................................................................................................... 53
sszerendelsi tblzat .................................................................................................... 54
A dntsi tblzat ............................................................................................................. 54
A reduklt fggvnytblzat ............................................................................................ 54
Ltradiagram .................................................................................................................... 55
A program utastslistja.................................................................................................. 55
Gyakorl feladat Szivattyk vezrlse.............................................................................. 56
Kvetvezrls trolssal....................................................................................................... 57
Troltartlyrendszer: feltlts vezrlse............................................................................ 57
sszerendelsi tblzat .................................................................................................... 57
Funkciterv....................................................................................................................... 58
Krdsek:.......................................................................................................................... 59
Gyakorl feladat: Gyrkapu vezrlse .......................................................................... 60
sszerendelsi tblzat .................................................................................................... 60
sszerendelsi tblzat .................................................................................................... 61
Megolds .......................................................................................................................... 62
Utastslista ...................................................................................................................... 62

4
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Funkciterv....................................................................................................................... 62
Gyakorl feladat: utastslista elemzse I. ....................................................................... 63
Kvetvezrls impulzus idztvel ...................................................................................... 64
Ktkezes reteszels............................................................................................................... 64
sszerendelsi tblzat .................................................................................................... 64
A szktett fggvnytblzat............................................................................................ 64
Funkciterv....................................................................................................................... 65
A program utastslistja.................................................................................................. 65
Vszjelzs............................................................................................................................. 66
sszerendelsi tblzat .................................................................................................... 66
Funkciterv....................................................................................................................... 67
Utastslista ...................................................................................................................... 67
Gyakorl feladat: utastslista elemzse II....................................................................... 68
Kvetvezrls idztkkel .................................................................................................... 69
Szlltszalagok egyttes vezrlse ..................................................................................... 69
sszerendelsi tblzat .................................................................................................... 70
Funkciterv....................................................................................................................... 70
Utastslista ...................................................................................................................... 72
Gyakorl feladat: Szlltszalag vezrlse........................................................................ 75
sszerendelsi tblzat .................................................................................................... 75
Munkadarabok tmeneti trolsa ......................................................................................... 76
sszerendelsi tblzat .................................................................................................... 76
Funkciterv....................................................................................................................... 77
Utastslista ...................................................................................................................... 77
Tiszttberendezs elektro-pneumatikus vezrlse .............................................................. 78
sszerendelsi tblzat .................................................................................................... 78
Funkciterv....................................................................................................................... 79
Utastslista ...................................................................................................................... 79
Gyakorl feladat: utastslista elemzse III. .................................................................... 80

5
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Az IEC-1131-3 szabvny
Az IEC-1131-3 szabvny (International Electronical Comission : www.plcopen.org) a
programozhat logikai vezrlberendezsek (tovbbiakban: PLC = Programmable Logic
Controller) programozsi nyelvre s a PLC-projektek felptsre tartalmaz elrsokat.
A felhasznli program legkisebb, nllan kezelhet szoftveregysge az n.
programszervezsi egysg, tovbbiakban a POU (Program Organisation Unit).
A POU tpusai: a fggvny, a fggvnyblokk s a program, a sorrendnek megfelelen
nvekv funkcionalitssal. A fggvny azonos bemenetekre mindig ugyanazt az eredmnyt,
fggvnyrtket adja. A fggvnyblokknak ezzel szemben sajt adatterlete (memrija) van,
melynek segtsgvel kpes az elz llapotok informciira emlkezni (ez az n.
instanckpzs). A kimeneti rtkeket gy a bemeneteken kvl a trolt adatok is
befolysolhatjk, az elz llapotok fggvnyben ms-ms eredmnyt produklva. A
programok jelentik a felhasznli program legmagasabb hierarchia szinten lv egysgt, a
programok biztostjk a tbbi POU-nak is a PLC-perifrikhoz val hozzfrs lehetsgt.
Megklnbztethetnk standard, gyrt-specifikus s felhasznl ltal ksztett (felhasznli)
programszervezsi egysgeket. Az IEC-1131-3 szabvny elrja a leggyakrabban elfordul
standard fggvnyek (pl.: aritmetikai, sszehasonlt fggvnyek) ill. standard
fggvnyblokkok (pl.: idztk, szmllk) hvsi fellett s viselkedst.

A programszervezsi egysgek felptse


Minden POU kt rszbl tevdik ssze: a deklarcis rszbl s a programtrzsbl.

A vltozk deklarlsa
Az IEC-1131-3 szabvny az informcik trolsra s feldolgozsra vltozkat hasznl.
Vannak olyan PLC-rendszerek, amelyekben a vltozkat merkereknek (nmet nyelterlet) ill.
flageknek (angol) nevezik. A szabvny szerint a vltozk memriaterleten trtn
elhelyezsrl mr nem a programksztnek kell gondoskodnia, vagyis az n. abszolt
trolsi cmet mr nem kell manulisan megadni. A fejlesztrendszer feladata a vltozhoz az
adattpusnak megfelel mret trolterlet hozzrendelse. Elfordulhatnak azonban olyan
esetek is, amikor szksgess vlhat a pontos memriacm ismerete (pl, soros
kommunikci). A szabvny megengedi a felhasznlnak a kzvetlen memriacm
kijellst, azzal az ajnlssal, hogy ez csak a program tpus szervezsi egysg deklarcis
rszben trtnjen.
Az IEC-1131-3 szabvny tbb adattpust elre definil (BOOL, BYTE, INTEGER stb.),
amelyek a bitek szmban, az eljelek kezelsben stb. klnbzhetnek egymstl. Lehetsg
van felhasznli adattpusokat is deklarlni (struktrk, mezk).
A vltozt hozzrendelhetjk elemmel vdett fizikai cmhez is, (remanens memria) gy
ramkimarads esetn megrzi rtkt.
A vltoz rvnyessge attl fgg, hogy hol deklarljk. gy megklnbztetnek globlis s
loklis vltozkat.
A POU deklarcis rsze szveges formtum s fggetlen az alkalmazott programozsi
nyelvtl. Egy rszk grafikusan is megadhat (be- s kimeneti paramterek).

6
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Plda egy tipikus vltozdeklarcira


VAR_INPUT (*bemeneti vltoz*)
kapcsol : BOOL; (*binris rtk*)
END_VAR
VAR_OUTPUT (*kimeneti vltoz*)
fordszam : REAL; (*vals rtk*)
END_VAR
VAR_RETAIN (*loklis vltoz, elemmel pufferelt*)
motorsz : INT; (*eljeles egszszm*)
Motornev : STRING[10]; (*karakterlnc*)
Veszki : %IX2.0 : BOOL (*a bemeneti perifria 2.0-s bitje*)
END_VAR

A programszervezsi egysg trzse


A programszervezsi egysg trzse a deklarcis rszt kveti, a PLC ltal vgrehajtand
parancsok lersa, jellemzen az albb felsorolt valamelyik programozsi nyelv
szintaktikjnak megfelelen.
Az IEC-1131-3 szabvnyban ajnlott programozsi nyelvek
utastslista
jellemzje:
o gpkzeli, akkumultorra pl, assembly tpus nyelv;
o a nmet utastslista nyelven alapul (Anweisungsliste: AWL);
o soronknt egy parancs a megengedett;
o a legtbb fejleszti krnyezet biztostja a hasznlatt.

LD A
ANDN B
ST C

ltradiagram
jellemzje:
o az szak-amerikai programozsi stluson alapul, az USA-ban szabvnyos;
elektromos rajzjeleket hasznlja;
o standardizlt rel-kszlet s ltraprogramozsi szimblumok.

A B C
-| |--|/|----------------( )

funkciterv
jellemzje:
o Eurpban elterjedten hasznlt grafikus programozsi nyelv;

7
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

o a programelemek, mint blokkok sszekthetk, hasonlan a logikai ramkri


rajzokhoz;
o olyan alkalmazsokban hasznljk, amelyek vezrlkomponensek kztti adat
vagy informciramlst tartalmaznak.

AND
A C
B

strukturlt nyelv
jellemzje:
o PASCAL-ra emlkeztet, magas szint, blokkszervezs nyelv;
o megengedi az sszetett utastsokat is;
o tmogatja a ciklikus vgrehajtst (REPEAT-UNTIL; WHILE-DO);tmogatja a
feltteles vgrehajtst (IF-THEN-ELSE; CASE);
o a fggvnyeket (SQRT(), SIN()).

C:= A AND NOT B

lefut nyelv: llapotgrf, lptetlnc


jellemzje:
a vezrlsi feladat sorosan s
prhuzamosan vgrehajtand lpsek 1.lps parancs
sorozataknt tervezhet. A lptetlnc
szemlletesen mutatja be a program
lefutst, mikzben megadja, hogy felttel
mely idpontban, milyen felttelek
teljeslse estn, milyen beavatkozs
engedlyezhet a vezrelt 2.lps parancs
folyamatban. Az IEC-1131-3
szabvny a vezrl algoritmus
strukturlsban hangslyozza a felttel
programtervezsi technika
jelentsgt.
3.lps

Az IEC programozi krnyezet


A legtbb fejlesztrendszer biztostja az albbi feltteleket:

8
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

grafikus programozi fellet;


tbb ablakos rendszer;
egrmveletek;
legrdl men;
beptett hypertextes helpfunkci;
szoftveres ellenrzs a tervezs sorn.

Erforrs eloszts
Egy ltalnos vezrl berendezs (PLC) tbb kzponti egysget (CPU-t) vagy specilis
processzorokat tartalmazhat, amelyeket az IEC-1131-3 szabvny erforrsoknak (resources)
nevez. Egy erforrson tbb taszk futhat, amelyek a prioritsuk, vagy a vgrehajts tpusa
(ciklikus, periodikus, interrupt) alapjn klnbznek egymstl. A programokat taszkokhoz
rendeljk, ez eredmnyezi a futsidbeli programot. Egy program tbb taszkhoz is
hozzrendelhet (instancls).

1. bra Az IEC-1131-3 szabvny szerinti szoftvermodell


A PLCprojektet azokbl a szervezsi egysgekbl pthetjk fel, amelyeket a gyrt
mellkelt ill. a felhasznl programozott. A felhasznli programokbl knyvtr kpezhet,
amelynek tesztelt egysgei ms projektekbe is tmsolhatk.

9
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Az IEC-1131-3 szabvny tmogatja a felhasznlk trekvst a hordozhatsgra, azaz hogy


amennyire lehetsges a fggvnyek, fggvnyblokkok hardverfggetlenek legyenek. A 2.
brn lthatjuk a felhasznli programok lehetsges kompatibilitsi szintjeit. Az, hogy egy
fejlesztrendszer melyik kompatibilitsi szintet biztostja, megmutatja azt is, hogy mennyiben
felel meg a szabvny elrsainak.

2. bra Kompatibilitsi szintek

10
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

A programszervezsi egysgekrl rszletesen

POU tpus kulcssz jelents


fprogram a PLC-perifrik
program PROGRAM hozzrendelseivel, globlis
vltozkkal
ptelem be- s kimeneti
fggvnyblokk FUNCTION_BLOCK vltozkkal, a leggyakrabban
hasznlt POU tpus
A PLC mveletek kszletnek
fggvny FUNCTION kibvtsre szolgl
fggvny

Fggvny (FGV): paramterezhet POU statikus vltozk nlkl (emlkezet nlkl), amely
azonos bemeneti paramterekre mindig azonos eredmnyt szolgltat.
Fggvnyblokk (FB): paramterezhet POU statikus vltozkkal, azonos bemeneti rtkekre
adott kimeneti rtkek fggnek a bels ill. globlis vltozk memriban trolt rtkeitl.
Program (PRG): fprogramknt szolgl. Minden olyan vltozt itt kell deklarlni, amelyet
fizikai cmekhez akarunk rgzteni (pl. a PLC be- s kimeneteihez). Egybknt olyan, mint a
FB.
Mindegyik POU sajt, lezrt tulajdonsgokkal rendelkezik s a compiler a tbbi POU-tl
fggetlenl kpes lefordtani. A fordtnak egybknt szksge van minden informcira
azokrl a programelemekrl (prototpusok), amelyeket az adott POU hv. A lefordtott POU-k
ksbb a LINK eljrssal fzhetk ssze egysges programm.

A programszervezsi egysg rszei


Egy POU az albbi brn lthat rszekbl pl(het) fel.
A POU tpus megadsa a POU-nv-vel (s az adattpus is a FGV-eknl).
Deklarcis rsz a vltozdeklarlsokkal.
POU-trzs az utastsokkal.

PROGRAM PRG-nv FUNCTION_BLOCK FB_nv FUNCTION FGV_nv tpus

be/kimeneti vltozk
loklis vltozk
(deklarcis rsz)

utastsok

(POU-trzs)

END_PROGRAM END_FUNCTION_BLOCK END_FUNCTION

3. bra A POU rszei

11
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Plda a programszervezsi egysg felptsre (fggvnyblokk)

FUNCTION_BLOCK FB_nv FUNCTION_BLOCK TOVABBKAPCS

VAR_INPUT
BE1: BOOL;
END_VAR
VAR_OUTPUT
KI1: BYTE;
KI2: BOOL;
be/kimeneti vltozk END_VAR

VAR
loklis vltozk LOKALIS:
BYTE;
END_VAR

LD BE1
utastsok
AND LOKALIS
(POU-trzs) ST KI1

ST KI2

END_FUNCTION_BLOCK END_FUNCTION_BLOCK

Deklarci
Az IEC-1131-3 szabvny a vltozkat a felhasznli adatok inicializlsra, tovbbi
feldolgozsra s kztes trolsra hasznlja. Ezeket a vltozkat minden POU elejn
deklarljk A deklarci megadja, hogy a vltoz milyen adattpusba tartozik, illetve milyen
egyb sajtossgokkal rendelkezik.
A deklarci a vltoztpusoknak megfelel blokkokra tagoldik. A deklarciblokk (VAR_*
END_VAR kztt) meghatrozza a vltoz tpust, tbb vltozt is tartalmazhat.
A blokkok sorrendje, azonos vltozra vonatkoz gyakorisga tetszleges, illetve
implementcifgg, a szabvny nem rgzti.

12
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Vltoztpusok

A vltoztpusok engedlyezett hasznlata


vltoztpus engedlyezett a hasznlat
PROGRAM FUNCTION_BLOCK FUNCTION
VAR igen igen igen
VAR_INPUT igen igen igen
VAR_OUTPUT igen igen nem
VAR_IN_OUT igen igen nem
VAR_EXTERNAL igen igen nem
VAR_GLOBAL igen nem nem
VAR_ACCESS igen nem nem

Lthat, hogy a fggvnyeknl van a legnagyobb korltozs, csak loklis s bemeneti vltozi
lehetnek. A szmts eredmnyt a fggvnyrtkben adjk vissza, amely az AKKU-ban
kpzdik.
Fggvnyblokkban nem lehet globlis vltozt deklarlni, ez csak a programban (ill. az a
fltti hierarchiaszinteken lv programozsi elemekben) megengedett.
A szervezsi egysgek kapcsoldsi felleteinek jellegzetessgei
Azzal, hogy a POU vltozit vltoztpusokhoz rendeljk, meghatrozzuk azok lehetsges
kapcsolatt a tbbi POU-val, vagyis a csatlakoztatsi vltozk s a loklis vltozk adatkrt
is. A POU-kapcsoldsi fellete lehet:
hvsi fellet: formlis paramterek (be ill. Be/kimeneti paramter)
visszatrsi rtk: kimeneti rtk vagy fggvnyrtk
globlis csatlakozsi fellet: globlis/externlis vltozkkal.

A formlis paramterek helybe a POU hvsakor az n. aktulis paramterek kerlnek.

A formlis paramter s a visszatrsi rtk rtelmezse


Formlis paramter: (VAR_INPUT): az aktulis paramter tadsa rtkknt trtnik, azaz
nem maga a vltoz, hanem csak a kpija addik t a hvott POU-nak. gy a feldolgozs a
hv POU-ban lv vltozt nem mdostja.
Formlis paramter: (VAR_IN_OUT): az aktulis paramter, mint mutat kerl tadsra.
gy tulajdonkppen maga a vltoz kerl tadsra, rtke a POU-ban mdosthat.
Visszaadott rtk (VAR_OUTPUT): a hvott POU nem adja t a vltozt, csak az rtke
olvashat ki a POU futsa utn. A tovbbi feldolgozs (a hv POU-ban) nem befolysolja a
(hvott POU-ban) trolt vltozt.
Abban az esetben, ha nagymennyisg adatot, vagy adatstruktrt akarunk tadni a hvott
programszervezsi egysgnek, clszer a VAR_IN_OUT vltoztpus hasznlata, mivel gy
nem trtnik tbbszrs trterlet foglals.
A formlis paramtereknek s a visszatrsi rtknek az a klnleges tulajdonsga teht, hogy
a hv programban is lthatk s hivatkozhatunk rjuk anlkl, hogy deklarltuk volna ket.
A POU-k adatcsere fellett ezrt igyekezznk jl dokumentlni. A be- s kimeneti vltozk
vdettek a nemkvnatos fellrstl.

13
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

A vltoztpusok hozzfrsi lehetsgeinek sszefoglal tblzata


hozzfrsi
vltoztpus rtelmezs
jogosultsg
kls bels
VAR - I O A loklis vltoz csak a POU-n bell lthat,
dolgozhat fel.
VAR_INPUT I O A bemeneti vltoz a hv programban lthat s
rhat, a POU-n bell csak olvashat.
VAR_OUTPUT O I O A kimeneti vltoz a hv programban lthat s
ott csak olvashat, A POU-n bell rhat s
olvashat is.
VAR_IN_OUT IO I O A POU-n bell s kvl is rhat olvashat.
VAR_EXTERNAL I O I O Az external tpus vltozt egy msik POU-ban
mint global vltozt deklarltk. gy minden POU-
ban elrhet, s mint loklis vltoz mdosthat.
Az j rtket megrzi a POU futsa utn is.
VAR_GLOBAL IO I O A global vltozt a POU-n bell deklarljk s a
kls POU-kban mint external vltoz
deklarlhat s hasznlhat. A POU-n bell gy
viselkedik, mint egy loklis vltoz.
VAR_ACCESS IO I O Globlis vltoz a konfigurciban. Az erforrsok
kztti kommunikcis csatorna deklarlsra
szolgl. A POU-n bell mint globlis vltoz
kezelhet.
I = rhat O = olvashat

Plda a FB formlis paramtereinek bels s kls rtelmezsre

FUNCTION_BLOCK Fbketto
VAR_INPUT FUNCTION_BLOCK FBegy
bemenet : BYTE; VAR
END_VAR peldaFB: FBketto;
VAR_OUTPUT END_VAR
kimenet : BYTE;
END_VAR
VAR LD 48
lokalis: BYTE; ST peldaFB.bemenet
END_VAR CAL peldaFB
LD peldaFB.kimenet

LD bemenet
AND lokalis
ST kimenet END_FUNCTION__BLOCK

END_FUNCTION__BLOCK

14
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

A fggvnyblokk
Az IEC-1131-3 szabvny legfontosabb szoftvereleme. A strukturlt programrs hatkony
eszkze. Programbl vagy fggvnyblokkbl hvhat s fggvnyt vagy fggvnyblokkot
hvhat. A fggvnyblokk fogalmt tulajdonkppen ktfle rtelemben hasznljk. Az egyik
rtelmezs a fggvnyblokkot, mint tpust jelenti, ezt kapjuk a FB megrsval. A msik
megjelensi formja a deklarls segtsgvel egyediestett (instance) fggvnyblokk. Az
egyediests sorn a fggvnyblokk-tpusban meghatrozott mret adatterletet a fordt
lefoglalja az egyedi FB szmra, gy annak sajt, nll adatterlete lesz. Az a FB_nv teht,
amelyet a FB rs sorn a FB-nak adunk, tpusazonostknt szolgl a deklarcis rszben, a
FB hvsa az egyedi nvvel trtnik. (lsd a fenti pldban Fbketto - peldaFB )
A fggvnyblokkot abban a POU-ban, amelyben hvni akarjuk, deklarlnunk kell, mgpedig
annyiszor, ahny egymstl klnbz felhasznlst akarunk. Ezltal biztosthatjuk a
megfelel, egymstl elklnlt s vdett adatterlet lefoglalst, amely adatterlet az
egyediestett FB emlkezeteknt mkdik. Itt trolja a rendszer a FB be- s kimeneti ill.
loklis vltozit. Ez vonatkozik a standard s a felhasznli fggvnyblokkokra is. (Mivel ez
statikus trfoglalst jelent, nagy adatblokkokkal dolgoz fggvnyblokk igen sok helyet
foglalhat le. Tervezik ezrt a VAR_DYN END_VAR tpus deklarcit.)
Hordozhatsg s objektum orientltsg
Az albbi korltozsokat a hordozhatsg, a platformfggetlensg biztostsa miatt
rgztettk:
kzvetlen fizikai cmet loklis vltozkhoz nem rendelhetnk,
adatokhoz kizrlag a csatlakozsi felletknt deklarlt vltozkon keresztl juthat,
a fggvnyblokkban globlis vltozk nem deklarlhatk.
A fggvnyblokkban hasznlhat vltoztpusok
A fggvnyblokknak tetszleges szm, vagy semennyi be/kimeneti paramtere lehet, ill.
loklis s externlis vltozkat is felhasznlhat.

A VAR_INPUT, VAR_OUTPUT, VAR_IN_OUT s VAR_EXTERNAL tpus vltozkat a


hv program is ltja, hivatkozni rjuk az egyedi_FB_nv.vltoznv formtummal lehet. A
bemeneteknek a FB hvsa eltt adhatunk rtket, a kimeneteket a FB hvsa utn
krdezhetjk le

A fggvny
Rendszeresen ismtld feladatokhoz clszer fggvnyeket alkalmazni. A fggvny tbb
hvsi paramtert tartalmazhat, a vgrehajts eredmnye pedig egyetlen kimeneti vltozban
helyezkedik el, mely lehet egyetlen adat, de lehet akr tbbelem, tmb tpus is.
A fggvny azonos bemeneti paramterekre mindig azonos eredmnyt szolgltat, fggetlenl
attl, hogy hnyszor, ill. mely idpillanatban trtnt a hvsa. Nagyszm, gyakran hasznlt
fggvnyt standardizltak, azaz tulajdonsgait, szmtsi algoritmust, hvsi paramterlistjt
a szabvnyban rgztettk. Ezt a gyjtemnyt egszthetik ki egy adott projektben a gyrt-
specifikus s a felhasznl ltal ksztett fggvnyek

15
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

A fggvny vltoztpusai s a fggvnyrtk


A fggvnynek egy vagy tbb (tetszleges szm) bemeneti paramtere lehet, de csak egy
rtket adhat vissza, ez a fggvnyrtk. A fggvnyrtk tetszleges adattpus lehet, akr
szrmaztatott adattpus is. A loklis vltozit nem lehet RETAIN-nel pufferelni.
A fggvnyek rvnyessgi terlete globlis, azaz minden POU rszre rendelkezsre ll,
nem kell kln a hv POU-ban deklarlni.
A fggvny hvsa a fggvny nevnek megadsval s a bemeneti adatok teljes
paramtertadsval trtnik.
A paramtertads sorn az elsknt deklarlt bemeneti vltozt berjuk az AKKU-ba, a tbbi
vltozt a fggvny hvsi sorban, a fggvny neve utn, egyms kztt vesszvel
elvlasztva, felsoroljuk.

A program
A fggvnyblokk s a fggvny alprogramok, a PROGRAM fprogram. Mlti-taszkos
opercis rendszerben egymssal prhuzamosan tbb fprogram is futtathat.
A program sajtossgai:
a FB-hoz kpest lehetv teszi:
o kzvetlen (direkt) cmzs vltozk hasznlatt,
o globlis vltoz deklarlst.
a programot a PLC-konfigurcin bell taszkhoz rendeljk, a programot explicit ms
POU nem hvhatja.

Kis rendszereknl a program feladata az is, hogy kln konfigurcis fjl nlkl biztostsa a
PLC-perifrik vltozkhoz rendelst. A lehetsgek opercis rendszertl s kiptettsgtl
(gyrttl) fggek. Azonos programot tbb taszkhoz is hozzrendelhetnk, ezt az n.
konfigurcis rendszerben definilhatjuk.

A szervezsi egysgek lehetsges hvsi kapcsolatt mutatja be a kvetkez bra:

PROGRAM

FGGVNY FGVBLOKK

FGGVNY FGGVNY FGVBLOKK

4. bra A fggvny s a fggvnyblokk hvsi lehetsgei

A rekurzv hvs nem megengedett!

16
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Nyelvi elemek, adattpusok, vltozk

Egyszer nyelvi elemek


Minden PLC programozsi nyelv tulajdonkppen alapvet, tovbb nem bonthat nyelvi
elemek sokasgbl pl fel. Ezen nyelvi elemekbl ll ssze a vltozdeklarci, az
utastssorok, vgezetl az egsz program. A nyelvi elemek lehetnek:
klnleges jelentssel br karakterek: (,),+,-,*,$,;,:=,#,space
kulcsszavak: a programnyelv szavai
klnbz adattpusok szmbrzolsra szolgl karakterkombincik
a felhasznl ltal definilt nevek, cmkk.

Foglalt kulcsszavak
A kulcsszavak a szabvny ltal lert s egyrtelm jelentssel br standard nevek, amelyek
nem hasznlhatk a felhasznl ltal definilt vltozk neveiknt vagy cmkeknt. Ilyenek:
elemi adattpusok nevei,
standard fggvnyek nevei,
standard fggvnyblokkok nevei,
standard fggvnyek bemeneti paramtereinek a nevei,
standard fggvnyblokkok be/kimeneti paramtereinek a nevei,
az utastsok, parancsok nevei.

A klnbz adattpusok szmbrzolsa


A szmbrzolshoz elrt helyesrsi konvenci tartozik. A konstanson bell szkzk
alkalmazsa helyett megengedett trelvlasztnak az alhzs jel. (A szkzk csak a
SRTING vltozkban hasznlhatk!)

17
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

A konstansok ttekintse
adattpus plda jelents
binris 0, 1 1 bit
bool FALSE, TRUE bool-algebrai kifejezs
byte 11, 16#0B, 2#0000_1011 11 decimlis, hexadecimlis s
kettes szmrendszerben
egsz szm -13 egsz szm: -13
45165 vagy 45_165 egsz szm: 45 165
+125 egsz szm: 125
vals 13.12 vals szm: 13,12
123.45 vals szm: 123,45
0.123 vals szm: 0,123
1.23E-3 vals szm:0,00123
karaktersor res sztring
SZTRING sztring
idtartam T#12.3ms vagy 12,3ms idtartam
TIME#12.3ms
t#2h_7m_19s 2 ra 7 perc 19 msodperc idtartam
dtum DATE#2001-12-31 vagy dtum: 2001 12. 31.
D#1995-12-31
napi id TOD#12:16:14.56 vagy idpont: 12ra 16perc, 14,56msodp
TIME_of_DAY#12:16:14.16
dtum s idpont DT#2001-12-31-12:16:14.56 v. dtum s id egytt:
DATE_AND_TIME#2001-12-31- 2001 12. 31
12:16:14.56 12ra 16perc, 14,56msodperc

A felhasznl ltal definilhat nevek, cmkk


Karakterrel vagy alhzs jellel kezdd alfanumerikus karaktersorozat, maximlis hossza
implementcifgg. Klnbz programelemek, vltozk, cmkk, szrmaztatott
adattpusok, konfigurcik, erforrsok azonostsra szolgl felhasznl ltal adott nevek.

Pldk felhasznli nevekre:


megengedett nevek nem megengedett nevek
VALT2 2VALT
SZELEP3X7 3X7
VESZ_KI VSZ KI
_3kevero 3kever

18
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Vltozk s adattpusok
A vltozk segtsgvel trtnik a felhasznl-specifikus adatterletek adattpus ltal
meghatrozott mret helyfoglalsa s azonostsa.

A vltozdeklarci legfontosabb elemei

vltoztpus
attributum

VAR_OUTPUT RETAIN

tarolo1 : BYTE := 12;

vltoznv adattpus kezdrtk

END_VAR

vltoztpus vge

A vltoznv: betvel vagy alhzs jellel kezdd, kis- s nagybetk, szmok, alhzsok
sorozatbl ll, max. 64 karakter hossz. Nem tartalmazhat: szkzt, kezetes betket s
kulcsszavakat. A kis- s nagybetk kztt nincs megklnbztets.
A kezdeti rtkads := opertorral lehetsges.
A deklarcis sor vgt ; jelzi. Megjegyzseket, kommentrokat (* *) zrjelek kztt
rhatunk.

Adattpusok

Elemi adattpusok
idpont,
binris/ eljeles eljel nlkli
vals idtartam, dtum,
bitminta egszszm egsz
karaktersor
BOOL INT UINT REAL TIME
BYTE SINT USINT LREAL DATE
WORD DINT UDINT TIME_OF_DAY
DWORD LINT ULINT DATE_OF_TIME
LWORD STRING

Az elemi adattpusokat az adott kulcsszavak egyrtelmen meghatrozzk. A kezdeti rtkek


a := hozzrendelsi opertorral adhatk meg. Amennyiben nincs kezdeti (inicializlsi)
rtkads, a vltozk a default rtkeket veszik fel.
Az albbi tblzatban sszefoglaltuk a standard elemi adattpusok jellemzit.

19
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

hossz default
adattpus rtelmezs rtkkszlet
(bit) rtk
BOOL ktrtk binris 1 [0,1] 0
szm
BYTE bitsorozat 8bit 8 [0,,16#FF] 0
WORD bitsorozat 16bit 16 [0,,16#FFFF] 0
DWORD bitsorozat 32bit 32 [0,,16#FFFF FFFF] 0
LWORD bitsorozat 64bit 64 [0,,16# FFFF FFFF FFFF
FFFF]
SINT short integer 8 [-128,,+127] 0
INT integer 16 [-32 768,,+32 767] 0
DINT double integer 32 [-2 147 483 648,..,+2 147 483 0
647]
LINT long integer 64 [-263,,+263-1]
USINT unsign. short integer 8 [0,,+255] 0
UINT unsigned integer 16 [0,,+65 535] 0
UDINT unsign. double int. 32 [0,,+232-1] 0
ULINT unsign. long integer 64 [0,,+264-1] 0
REAL real; vals szm, 32 +/-3,4 E+/-38 0
LREAL long real 64 0
TIME idtartam T#0s
DATE dtum formtum: D#0001-
YYYY-MM-TT 01-01
TIME_O idpont formtum: TOD#00
F_ HH:MM:SS :00:00
DAY
DATE_ dtum s id DT 0001
AND_ 01-01-
TIME 00:00:000
STRING vltoz hosszsg
karakterlnc (res)

Szrmaztatott adattpusok
A szrmaztatott adattpusokat az elemi adattpusokbl lehet j, a felhasznl ltal megadott
kulcsszval ellltani. Tpusdeklarcinak is nevezik. Az ilyen tpusdefincik a PLC-
projektben globlisan felhasznlhatk, a programoznak lehetsge van a
feladatmegvalstshoz illeszked adatstruktra kialaktsra. A tpusdefinilst a TYPE
END_TYPE kulcsszavak hatroljk.
Ide sorolhatk:
az egyedi felhasznlnvvel elltott, esetenknt korltozott rtktartomny vltozk;
az azonos adattpus elemi vltozbl ll, ARRAY kulcsszval definilt tmbk;
az adatstruktrk: a magas szint programnyelvekhez hasonlan, a STRUCT .
END_STRUCT kulcsszavak kztt deklarlt hierarchikus vltozk.

20
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

ltalnos adattpusok
Az elemi adattpusok hierarchikus csoportba foglalsra az IEC-1131-3 szabvny n.
ltalnos adattpusokat definil. Ezek az adattpusok az ANY rvidtssel kezddnek, pl.: az
sszes egszszm adattpus (integer: INT) sszefoglal neve az ANY_INT lesz. A
legltalnosabb, brmely elemi adattpust elfogad az ANY paramter.
Deklarciban az ANY-vel kezdd adattpus nem hasznlhat!
Az ltalnos adattpus
ANY
ANY_NUM
ANY_BIT ANY_DATE
ANY_INT ANY_REAL
BOOL INT UINT REAL DATE
TIME
BYTE SINT USINT LREAL TIME_OF_DAY
STRING
WORD DINT UDINT DATE_OF_TIME
DWORD LINT ULINT
LWORD

A standard fggvnyek s fggvnyblokkok be/kimeneti paramtertpusainl tallkozhatunk


az sszefoglal nevekkel, s azt jelzi, hogy az adott fggvny(blokk) tbbfle elemi
adattpussal is meghvhat. Ez az n. fggvnytlapolsi technika.
Az ANY-vel kezdd adattpus felhasznli fggvnyben ill. fggvnyblokkban nem
megengedett, illetve a szabvny nem rgzti.

A vltozattribtumok
RETAIN : elemmel pufferelt adatterleten trolt vltozk. Melegindts esetn
megrzik elz rtkket.
CONSTANT : lland rtk vltoz.
R_EDGE, F_EDGE felfut- ill. lefut-lhez rendelt vltoz.
READ_ONLY, READ_WRITE. rsvdett ill. rhat/olvashat vltoz.

A vltoztpusokhoz rendelhet attribtumok sszefoglal tblzata


R_EDGE, READ_ONLY,
vltoztpus RETAIN CONSTANT
F_EDGE READ_WRITE
VAR + + - -
VAR_INPUT - - - -
VAR_OUTPUT + - - -
VAR_IN_OUT - - - -
VAR_EXTERNAL - - - -
VAR_GLOBAL + + - -
VAR_ACCESS - - - +

A READ_WRITE attribtum csak a VAR_ACCESS tpus vltoz jellsre engedlyezett.

21
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Plda az attribtumok hasznlatra


VAR_OUTPUT RETAIN
puffer1 : BYTE;
END_VAR
VAR_INPUT
LEFUTO : BOOL F_EDGE;
END_VAR
VAR CONSTANT
allando1 : BYTE:= 16#FF;
END_VAR

Kzvetlen cmzs vltozk


A fizikai cmek kzvetlenl is megszlthatk a programban. (Bemenetek, kimenetek, bels
vltoz, merkerek.) Ez trtnhet:
kzvetlen (direkt) brzols vltozval
szimbolikus nev, kzvetlen (direkt) cmzs vltozval.

Az ilyen vltozk deklarlsa az AT kulcsszval s a fizikai cm megadsval trtnik. A


cmek felptse az albbi tblzat szerinti.
A kzvetlen cmeket hierarchikus cmeknek is szoktk nevezni, % jellel kezddnek, amelyet
egy bet kvet: I (bemenet, Q (kimenet) vagy M (vltoz, merker). Az ezt kvet bet a cm
hosszra ad informcit. Az X bitcm elhagyhat.

kzvetlen PLC-cmek magyarzat


% kezdjel
I bemenet
Q kimenet
M merker
SEMMI bit
X bit (opcionlis)
B bjt
W sz
D duplasz
L hossz sz
v,w,x,y,z hierarchikus cm, jobbrl balra n a hierarchiartk. A
hossza s interpretlsa gyrtfgg. Pl.: z-bit, y-bjt,
x-modul, w-vonal, v-erforrs
pldul:
% I W 0.0.1.2 1. modul, 2. bjt
% Q D 0.0.3.0 3-ik modul, 0. bjt
% M 0.0.5.2.0 5. modul, 2. bjt, 0. bit
% M X 0.0.5.2.0 5. modul, 2. bjt, 0. bit
% I 0.0.1.0.4 1. modul, 0. bjt, 4. bit
% Q B 0.0.0.1.4 0.erforrs,0.vonal,0-ik modul, 1. bjt, 4. bit

A bitcm 0..7 kztt vltozhat. A bjtcm gpfgg (sszesen mennyi be/kimenet ill. merker
definilhat.) Gyakran elrs, hogy a sz csak pros bjtcmen kezddhet. (Ne felejtsk el,
hogy kzvetlen cmzs vltozkat csak a fprogramban lehet deklarlni!)

22
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Plda kzvetlen cmzs vltozk deklarlsra


VAR
(*kzvetlen brzols vltozk*)
AT%IW6 : WORD;
AT%QD4 : DINT;
(*szimbolikus nev, kzvetlen cmzs vltozk*)
INP_BYTE AT%IB0;
OUT_WORD AT%QW0;
END_VAR


LD INP_BYTE
BYTE_TO_WORD
ST OUT_WORD
.

23
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

A szervezsi egysg trzsrsze

Az utastslista
Sororientlt nyelv: egy parancs egy sor.
A parancssor elemei:

CMKE : OPETOR/FGV OPERANDUS(LISTA) MEGJEGYZS


mvelet (parancs) (* *) jelek kztt
vagy fggvny- nincs; egy vagy tbb konstans; vltoz: a
nv mvelethez; bemeneti jel(ek) vesszvel
elvlasztva : a FGV-hez.
kettspont

ugrsi cmke (az adott sorra);


a kettsponttal egytt el is maradhat

Soronknt egy megjegyzs megengedett. A pontosvessz (;) az utastslistban nem


hasznlhat sem hatrol karakterknt, sem kommentrkezdetknt. A mvelet (parancs) s az
operandus kztt legalbb egy szkzt kell hagyni. Nem ktelez a tabultor hasznlata.

Az akkumultor
Az assembly nyelvek gyakran indulnak ki egy fizikailag is meglv processzor-
akkumultorbl. Az utastslists nyelv szintn ismeri ezt az akkumultort, amelynek
CURRENT RESULT (CR), aktulis eredmny a neve, de nem gy kezeli, mint egy fix
hosszsg regisztert. A fordt (compiler) gondoskodik arrl, hogy rendelkezsre lljon a
feldolgozand adattpusnak megfelel hosszsg adatterlet (akku-trol). Ms assembly
nyelvektl eltren, nincs kln specilis sttuszbit. Az sszehasonltsok eredmnye
(igaz/hamis, 0/1), a CR ben kpzdik. A feltteles ugrs vagy hvs a CR rtktl fgg.
Szintaktikai hibt okoz, ha klnbz adattpusok kztt akarunk mveletet vgrehajtani,
vagyis, ha a CR adattpusa ms, mint az operandus adattpusa.
Egy mvelet a CR rtkt :
belltja (B),
mdostja (M),
vltozatlanul hagyja (V),
nem definilja (U).

A kvetkez fejezet tblzata mutatja az elemi mveletek fenti mveleti csoportba sorolst
is.

Mveletek, parancsok
Az albbiakban sszefoglaljuk az utastslista mveleteit. Ezek kzl nhnyat n. mdost
opertorokkal is kibvthetnk.

24
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Mdost opertorok
A mdost opertorok j jelentst adnak a mveleteknek.
negls N
a parancs vgrehajtsa eltt az operandust neglja.

zrjel ( )
segtsgvel a CR rtkt egy utastssorozat eredmnyvel hozhatjuk kapcsolatba. A
zrjelek egymsba gyazhatk.

Pl.:
LD 1
ADD( 2
ADD( 3
ADD 4
)
)
ST valt1

a mvelet feltteles vgrehajtsa C


vannak olyan mveletek, amelyek eredmnye logikai rtk. Ha ez igaz, az utastst
vgrehajtja, ha nem a program a mveletet tugorja, s a kvetkez sorral folytatja a
futst.

Pl.:
LD valt1
CR=1, ha valt1>20, egybknt CR=0.
GT 20
JMPC B2
JMP TOVABB

B2 : .

TOVABB : ..

25
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

A mveletek csoportostsa

Mveletek logikai (BOOL) vltozkkal


mvelet mveletcsoport rtelmezs
LD LDN B betlts a CR-be
AND ANDN M s kapcsolat a CR s az operandus kztt
AND( ANDN(
OR ORN M vagy kapcsolat a CR s a mvelet operandusa kztt
OR( ORN(
XOR XORN M kizr-vagy kapcsolat a CR s a mvelet operandusa
XOR( XORN( kztt
ST STN V CR rtknek /negltjnak trolsa az operandusban
S V operandus belltsa igaz (1) rtkre, ha CR=igaz
R V operandus belltsa hamis (0) rtkre, ha CR=igaz
) V a zrjeles mvelet vge
Megjegyzs: a legtbb fejleszti rendszer kibvti a fenti mveleteket azonos nvvel, de
standard fggvnyknt ANY_BIT adattpusra. Ezzel biztostjk, hogy azonos mveleti
nvvel, szhosszsg adatokra is alkalmazhat a parancs. A felhasznlnak nem kell
klnbsget tennie, hogy alapmveletet, vagy standard fggvnyt hv.

Mveletek ltalnos (ANY) adattpussal


mvelet mveletcsoport rtelmezs
LD B AZ OPERANDUS CR-be tltse
ST U CR rtknek trolsa az operandusban
ADD ADD( M az operandus rtkt hozzadja a CR-hez
SUB SUB( M az operandus rtkt levonja a CR-bl
MUL MUL( M az operandus rtkvel szorozza a CR-t
DIV DIV( M az operandus rtkvel osztja a CR-t
GT GT( M CR > operandus? igen:CR=1, nem: CR=0.
GE GE( M CR >= operandus? igen:CR=1, nem: CR=0.
EQ EQ( M CR = operandus? igen:CR=1, nem: CR=0.
NE NE( M CR operandus? igen:CR=1, nem: CR=0.
LE LE( M CR <= operandus? igen:CR=1, nem: CR=0.
LT LT( M CR < operandus? igen:CR=1, nem: CR=0.
) U a zrjeles mvelet vge

Ugr s hvutastsok (programszervezsi utastsok)


mvelet mveletcsoport rtelmezs
JMP V vagy U felttel nlkli ugrs
JMPC JMPCN U CR-fgg feltteles ugrs cmkre
CAL V felttel nlkli hvs
FB
CALC CALCN U CR-fgg feltteles hvs
RET V vagy U felttel nlkli visszatrs
RETC RETCN U CR-fgg feltteles visszatrs FGV-bl, FB-bl
FGV_nv M fggvnyhvs

A fenti tblzatban lv mveletek operandusai cmkk ill. egyedi FB_nevek.

26
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

A fggvnyek s a fggvnyblokkok hasznlata

A fggvnyek hvsa
A fggvnyek hvsa utastslistban a fggvnynv megadsval trtnik. Az aktulis
paramtereket vesszvel elvlasztva fzzk hozz. A paramtertads gy trtnik, hogy az
elsknt deklarlt bemeneti vltozt berjuk az AKKU-ba, a tbbi vltozt a fggvny hvsi
sorban, a fggvny neve utn, vesszvel elvlasztva soroljuk fel. A fggvnyek rvnyessgi
terlete globlis, nem kell kln deklarlni.
A fggvnynek pontosan egy kimeneti paramtere van, amely a CR-be kerl. Ez gy
lehetsges, hogy a fggvnytrzsben van egy olyan trolsi utasts, amely a fggvnynvvel
azonos nev vltoznak ad rtket. Ezt a vltozt a fordt automatikusan generlja, a
deklarcis rszben nem kell a felhasznlnak kln definilnia.

Plda fggvnyhvsra
A fggvny deklarlsa:

FUNCTION felhasznaloi : INT


VAR_INPUT
fgvpar1, fgvpar2, fgvpar3: INT;
END_VAR

LD fgvpar1
ADD fgvpar2
ADD fgvpar3
ST felhasznaloi (*visszatrsi rtk*)
END_FUNCTION

A fggvny hvsa:


VAR
par1: INT :=10;
par2: INT :=20;
par3: INT :=30;
eredm: INT;
END_VAR

LD par1
felhasznaloi par2, par3
(*msodik hvs*)
felhasznaloi par2, par3
ST eredm

A msodszori hvs utn az eredm vltozban trolt rtk: 110.

27
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Gyakran nem is vesszk szre, hogy nem mveletet, hanem egy standard fggvny hvst
tartalmazza az utastssor. Ennek felismerse a fordt feladata.

Plda mveletre
Var
valt1: BOOL;
END_VAR

LD TRUE
AND valt1

Plda standard fggvny hvsra


Var
valt1: WORD;
END_VAR

LD 16#77F
AND valt1

A fggvnyblokk hvsa
A fggvnyblokk a CAL vagy a CALC/CALCN paranccsal hvhat. Az IEC-1131-3
szabvny a FB-hvs hromfle szintaktikjt engedi meg:
hvs a bemeneti paramterek zrjelbe zrt listjval;
hvs eltt a bemeneti paramtereknek a megfelel cmre trolsval;
implicit hvs a bemeneti paramterek, mint opertorok felhasznlsval.

A harmadik mdszer csak a standard fggvnyblokkoknl alkalmazhat. (Ilyenkor a rendszer


kpes a standard fggvnyblokkok bemeneteit mint mveleteket (parancsokat) rtelmezni.
Erre csak kevs fejleszti rendszer van felksztve.)
Az albbi pldban egy standard fggvnyblokk, a bekapcsols-ksleltetses idzt szabvny
szerinti hrom lehetsges hvst mutatjuk be.
Az idzt deklarlsa:
VAR
indit, ki : BOOL :=0; (*indit: futsengedlyez input, ki: kimenet*)
idozito1: TON; (*standard FB TON deklarls egyedi nven*)
ertek: TIME; (*id adatttpus vltoz*)
END_VAR

28
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

A fggvnyblokk hvsa:

1. mdszer 2. mdszer 3. mdszer


(*paramtertads*) LD t#500ms LD t#500ms
ST idozito1.PT PT idozito1
LD indit LD indit
ST idozito1.IN
CAL idozito1(IN:=indit, PT:= t#500ms) CAL idozito1 IN idozito1

A kimeneti paramterek kirtkelse mindhrom mdszernl azonos:

LD idozito1.Q
ST ki
LD idozito1.ET
ST ertek

A deklarcis rsz s a kimenetek kiolvassa mindhrom mdszernl azonos. Klnbsg a


bemeneti paramtertadsban s a FB-hvsban van.

Plda a felhasznli fggvnyblokk hvsra


Lssunk egy pldt felhasznli fggvnyblokk hvsra is. A fggvnyblokknak csak a
deklarcis rszt adjuk meg, a FB-trzsnek a plda szempontjbl nincs jelentsge.
A fggvnyblokk:

FUNCTION_BLOCK Fblokk
VAR_INPUT
par1: TIME;
par2;: WORD;
par3: INT;
END_VAR
..(*utastsok sorozata*)
END_FUNCTION_BLOCK

PROGRAM progr1
VAR_GLOBAL
fgvblk1: Fblokk;
globvalt : INT;
END_VAR
VAR
BE: WORD AT %IW4;
END_VAR
.

END_PROGRAM

29
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Hvsok:
1. mdszer:
CAL fgvblk1(par1:= t#20ms, par2:=BE, par3:=globvalt)
vagy:
CAL fgvblk1(par1:= t#20ms, par2:=BE)

(A hinyz formlis paramter aktulis rtke az els hvskor a kezdeti rtk vagy a default
rtk, ksbbiekben az utols hvs rtke.)
2. mdszer:
LD t#20ms
ST fgvblk1.par1
LD BE
ST fgvblk1.par2
LD globvalt
ST fgvblk1.par3
CAL fgvblk1

30
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Programtervezs funkcitervben

5. bra Plda a funkciterv elemeire

A funkcitervben a vezrlalgoritmust grafikus objektumok kapcsolatrendszereknt ptjk


fel. Az objektumok lehetnek:
sszekapcsolsok;
ugrsok grafikus jelei;
fggvnyek s fggvnyblokkok hvsa;
csatlakoztatsok.

A funkciterv logikus, jl ttekinthet programtervet eredmnyez, melyben a hibafelismers,


program-mdosts lnyegesen egyszerbb, mint az utastslistban. A funkcitervben az
informci ramls irnyt balrl jobbra s fellrl lefel, sorosan, lpsenknt kell
elkpzelnnk, azaz a funkciterv nem analg egy ramkri tervvel. A korszer
fejlesztrendszerek lehetv teszik a vezrlalgoritmus funkcitervvel trtn lerst, de ezt
fordtskor mindig tkonvertljk utastslistba. Nem felejtkezhetnk el teht arrl, hogy br
korszerbb programtervezsi mdszerrel dolgozunk, a gpen fut programunk idben sorban
egyms utn kvetkez informci-feldolgoz gpi parancsok sorozata, amely nem felel meg
egy digitlis ramkr prhuzamosan fut ramjeleinek.

31
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

A standard fggvnyek
Az IEC-1131-3 szabvny a standard fggvnyeket az albbi nyolc csoportba foglalja:
1. Tpusvltsra szolgl fggvnyek (adattpus konvertlsa).
2. Numerikus fggvnyek.
3. Aritmetikai fggvnyek.
4. Bitsorozat fggvnyek (lptet s bitsoros logikai fggvnyek).
5. sszehasonlt s kivlaszt fggvnyek.
6. Karaktersorozat feldolgoz fggvnyek (sztring-mveletek).
7. TIME adattpus specilis fggvnyei.
8. Szmllval kapcsolatos specilis fggvnyek.

Az albbi tblzat a fenti felosztsnak megfelelen csoportostott standard fggvnyek


jellemzit tartalmazza.
fggvny-
standard fggvny (a bemeneti
rtk jelents
paramterekkel)
adattpusa
Tpuskonvertl fggvnyek
tpuskonverzik elemi adattpusok
*_TO_** (ANY) ANY
kztt
TRUNC (ANY_REAL) ANY_INT REAL szm egszt adja
Numerikus fggvnyek
ABS (ANY_NUM) ANY_NUM abszolt rtkkpzs
SQRT (ANY_REAL) ANY_REAL ngyzetgyk
LN (ANY_REAL) ANY_REAL termszetes alap logaritmus
LOG (ANY_REAL) ANY_REAL 10-es alap logaritmus
EXP (ANY_REAL) ANY_REAL exponens
SIN (ANY_REAL) ANY_REAL szinusz fgv.
COS (ANY_REAL) ANY_REAL koszinusz fgv.
TAN (ANY_REAL) ANY_REAL tangens fgv.
ASIN (ANY_REAL) ANY_REAL arcszinusz fgv
ACOS (ANY_REAL) ANY_REAL arckoszinusz fgv.
ATAN (ANY_REAL) ANY_REAL arctangens fgv.
Aritmetikai fggvnyek (IN1,IN2)
ADD (ANY_NUM, ANY_NUM) ANY_NUM sszeads
ADD (TIME, TIME) TIME idsszegzs
ADD (TOD, TIME) TOD idsszegzs
ADD (DT, TIME) DT idsszegzs
MUL (ANY_NUM, ANY_NUM) ANY_NUM szorzs
MUL (TIME, ANY_NUM) TIME idszorzs
SUB (ANY_NUM, ANY_NUM) ANY_NUM kivons
SUB (TIME, TIME) TIME idkivons
SUB (DATE, DATE) TIME idkivons
SUB (TOD, TIME) TOD idkivons
SUB (TOD, TOD) TIME idkivons
SUB (DT, TIME) DT idkivons
SUB (DT, DT) TIME idkivons
DIV (ANY_NUM, ANY_NUM) ANY_NUM oszts

32
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

fggvny-
standard fggvny (a bemeneti
rtk jelents
paramterekkel)
adattpusa
DIV (TIME, ANY_NUM) TIME idoszts
MOD (ANY_NUM, ANY_NUM) ANY_NUM maradkrtket ad oszts
MOVE(ANY_NUM,ANY_NUM) ANY_NUM egyenlsg
Lptet fggvnyek (IN1,N)
SHL (ANY_BIT, N) ANY_BIT bitmintt adott rtkkel balra tolni
SHR (ANY_BIT, N) ANY_BIT bitmintt adott rtkkel jobbra tolni
ROL (ANY_BIT, N) ANY_BIT bitmintt adott rtkkel balra forgatni
ROR (ANY_BIT, N) ANY_BIT bitmintt adott rtkkel jobbra forgatni
Bitsoros fggvnye k (IN1,IN2)
AND (ANY_BIT, ANY_BIT) ANY_BIT bitsoros S sszekapcsols
OR (ANY_BIT, ANY_BIT) ANY_BIT bitsoros VAGY sszekapcsols
XOR (ANY_BIT, ANY_BIT) ANY_BIT bitsoros XOR sszekapcsols
NOT (ANY_BIT, ANY_BIT) ANY_BIT bitsoros NEGLS
Kivlaszt fggvnyek (IN1,IN2)
SEL (G,ANY, ANY) ANY bin. kivlaszts1 2-bl
MAX (ANY,ANY) ANY maximum
MIN (ANY,ANY) ANY minimum
LIMIT (MN,ANY,MX) ANY korltozs
MUX (K,ANY, ANY) ANY multiplexer (1-N-bl)
sszehasonlt fggv. (IN1,IN2)
GT (ANY,ANY) BOOL nagyobb, mint
GE (ANY,ANY) BOOL nagyobb, egyenl
EQ (ANY,ANY) BOOL egyenl
LT (ANY,ANY) BOOL kisebb, mint
LE (ANY,ANY) BOOL kisebb, egyenl
NE (ANY,ANY) BOOL nem egyenl
Karaktersor fggvnyek (IN1,IN2)
LEN (STRING) INT karaktersor hossza
LEFT (STRING,L) STRING karaktersor balrl
RIGHT (STRING,L) STRING karaktersor jobbrl
MID (STRING,L,P) STRING karaktersor kzprl
CONCAT (STRING,STRING) STRING karaktersor sszefzs
INSERT (STRING,STRING,P) STRING karaktersor beszrs
DELETE (STRING,L,P) STRING karaktersor trls
REPLACE(STRING,STRING,L,P) STRING karaktersor csere
FIND (STRING,STRING) INT pozci keress

A tblzat rvidtseinek magyarzata


bemenet jelents adattpus
N a lptetend bitek szma UINT
L balpozci a karaktersoron bell ANY_INT
P pozci a karaktersoron bell ANY_INT
G a kivlasztand elem a 2 db bemenetbl BOOL
K a kivlasztand elem N db bemenetbl ANY_INT
MN minimlis rtk a limitlshoz ANY
MX maximlis rtk a limitlshoz ANY

33
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Standard fggvnyblokkok
Az IEC-1131-3 szabvny szmos fggvnyblokkot definil, ezzel biztostva, hogy
rendelkezsre lljanak a legfontosabb, trolsi tulajdonsggal rendelkez fggvnyblokkok.
A szabvnyban lert fggvnyblokkok az albbi t csoportba sorolhatk:
1. Bistabil elemek (flip-flopok, R/S-trolk).
2. lkirtkelk.
3. Szmllk.
4. Idztk.
5. Kommunikcis fggvnyblokkok.

Az albbi tblzatban sszefoglaljuk a a standard fggvnyblokkok jellemzit, kivve a


kommunikcis fggvnyblokkokat. A kommunikcis fggvnyblokkokat a szabvny kln
fejezete rja le (IEC 1131-5), ezt a gyrtk ltalban sajt fggvnyblokkokkal is kiegsztik,
trgyalsval jelen munkban nem foglalkozunk.

a fggvnyblokk neve s a kimeneti jelents


bemeneti paramterek rtk(ek)
R/S trolk
SR (S1,R) Q SET dominns
RS (R,S1) Q RESET dominns
lkirtkelk
R_TRIG (CLK) Q felfut l felismerse
F_TRIG (CLK) Q lefut l felismerse
Szmllk
CTU (CU,R,PV) Q,CV felfel szmll
CTD (CD,LD,PV) Q,CV lefel szmll
CTUD (CU,CD,R,LD,PV) QU,QD,CV fel/le-szmll
Idztk
TP (IN,PT) Q,ET impulzusad
TON (IN,PT) Q,ET bekapcsols-ksleltetses idzt
TOF (IN,PT) Q,ET kikapcsols-ksleltetses idzt
RTC (EN,PDT) Q,CDT valsidej ra

34
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

A standard fggvnyblokkok be- s kimeneti paramtereinek rtelmezse s adattpusa


bemenet/kimenet jelents adattpus
R RESET jel bemenet BOOL
S SET jel bemenet BOOL
R1 RESET dominns BOOL
S1 SET dominns BOOL
Q kimenet (ktllapot) BOOL
CLK (tem) bemenet (ClocK) BOOL
CU (Count Up) szmlls felfel bemeneti impulzus R_EDGE
CD (Count Down) szmlls lefel bemeneti impulzus R_EDGE
LD (LoaD) szmllrtk betltse bemenet INT
PV (Preset Value) szmllrtk INT
QD lefelszmlls kimenete (Down) =1, ha CV=0 BOOL
QU felfelszmlls kimenete (Up) =1, ha CVPV BOOL
CV Aktulis szmllrtk (Current Value) INT
IN idzt indtsa (INput) BOOL
PT idrtk (Preset Time) TIME
ET az indtstl eltelt id (Elapsed Time) TIME
PDT dtum/idrtk (Preset Date and Time) DT
CDT aktulis dtum/idrtk (Current Date and Time) DT

A standard fggvnyblokkok kimeneti rtke az els futtats sorn nulla, kivve a valsidej
rt.
A standard fggvnyblokkok bemeneti paramterei kulcssznak minslnek. A standard
fggvnyblokkokat a programkszts sorn gy tudjuk felhasznlni, hogy a deklarcis
rszben egy egyedi nvhez mint FB-tpust rendeljk hozz. A POU-trzsben ezen egyedi
nvvel dolgozunk. A paramtertads a fggvnyblokkoknl trgyalt mdon lehetsges.

Trolk

RS trol
Funkcitervbeli jellse:

6. bra RS-trol

RESET dominns flip-flop. Ha a SET s RESET jel egyidejleg 1 rtk, a RESET jel
hatrozza meg a kimenetet, vagyis Q1=0. Az RS fggvnyblokk az albbi funkcitervvel
lerhat algoritmus szerint mkdik:

35
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

7. bra Az RS-trol bels algoritmusa

SR trol
Funkcitervbeli jellse:

8. bra SR-trol

SET dominns flip-flop. Ha a SET s RESET jel egyidejleg 1 rtk, a SET jel hatrozza
meg a kimenetet, vagyis Q1=1. Az SR fggvnyblokk az albbi funkcitervvel lerhat
algoritmus szerint mkdik:

9. bra Az SR-trol bels algoritmusa

Felfut l detektlsa: az R_TRIG fggvnyblokk


brzols funkcitervben:

10. bra A felfut l detektlsa

A Q kimenet abban a programciklusban 1, amelyben a CLK bemeneti vltoz rtke 0-rl 1-


re vlt.

36
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

A fggvnyblokk algoritmusa funkcitervben:

11. bra Impulzus felfut lre


Utastslistban:
LD CLK
ANDN M0
ST Q
LD CLK
ST M0 .

Lefut l detektlsa: az F_TRIG fggvnyblokk


brzols funkcitervben:

12. bra A lefut l detektlsa

A Q kimenet abban a programciklusban 1, amelyben a CLK bemeneti vltoz rtke 1-rl 0-


ra vlt.
A fggvnyblokk algoritmusa funkcitervben:

13. bra Impulzus lefut lre


Utastslistban:
LDN CLK
AND M0
ST Q
LD CLK
ST M0 .

37
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

A szmllk

CTD (Count Down) lefel szmll


brzolsa funkcitervben:

14. bra A lefel szmll

A be/kimeneti jelek rtelmezse:


jells jelents
CD A CD bemeneten megjelen jel felfut lre a szmll rtkt eggyel
cskkenti.
LOAD A LOAD bemeneten lv jel felfut lre a szmll rtkt PV-vel teszi
egyenlv (a szmll kezdeti rtknek belltsa).
PV A szmll kezdeti rtke. Alaprtelmezs=0.
Q A szmll ktllapot kimenete. rtke=1, ha a szmll rtke: CV=0.
CV A szmll rtke.

CTU (Count Up) felfel szmll


brzolsa funkcitervben:

15. bra A felfel szmll

38
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

A be/kimeneti jelek rtelmezse:


jells jelents
CU A CU bemeneten megjelen jel felfut lre a szmll rtkt eggyel
nveli
RESET A RESET bemeneten lv jel felfut lre a szmll rtkt 0-val teszi
egyenlv (a szmll kezdeti rtknek belltsa).
PV A szmll fels hatrrtke.
Q A szmll ktllapot kimenete. rtke=1, ha a szmll rtke: CVPV.
CV A szmll rtke.

CTUD (Count Up-Down) fel-le szmll


brzolsa funkcitervben:

16. bra A fel/le szmll

A be/kimeneti jelek rtelmezse:


jells jelents
CU A CU bemeneten megjelen jel felfut lre a szmll rtkt eggyel
nveli.
CD A CD bemeneten megjelen jel felfut lre a szmll rtkt eggyel
cskkenti.
RESET A RESET bemeneten lv jel felfut lre a szmll rtkt 0-val teszi
egyenlv (a szmll kezdeti rtknek belltsra).
LOAD A LOAD bemeneten lv impulzus jelre a szmll rtkt PV-vel teszi
egyenlv (a szmll kezdeti rtknek belltsa).
PV A szmll kezdeti rtke. Alaprtelmezs=0.
QU A szmll ktllapot kimenete. rtke=1, ha a szmll rtke: CVPV.
QD A szmll ktllapot kimenete. rtke=1, ha a szmll rtke: CV=0.
CV A szmll rtke.

39
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Az idztk
Clunk az ltalnos, gptl fggetlen programfejleszts elsajtttatsa, ezrt az albbiakban
csak a szabvnyban rgztett idztket mutatjuk be. Gyrttl s tpustl fggen az idztk
palettja sokkal szlesebb is lehet.

Impulzus idzt (TP = Time Pulse)


Funkcitervbeli jellse:

17. bra Az impulzus idzt funkcitervbeli brzolsa

Az idzt viselkedst bemutat iddiagram:

18. bra Az impulzus idzt iddiagramja

A be/kimeneti jelek rtelmezse:


jells jelents
IN Az IN bemeneten jelentkez felfut lre indul az idzts.
PT A kimeneten megjelen impulzus idtartamt lltja be. PT rtkt a FB
mindig csak IN felfut lre krdezi le. Kztes mdostsa nincs hatssal.
Q Az idzt ktllapot kimenete. Belltsa az iddiagram szerint.
ET Az indts ta eltelt id.

40
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Bekapcsols-ksleltetses idzt
Funkcitervbeli jellse:

19. bra A bekapcsols-ksleltetses idzt funkcitervbeli brzolsa

Az idzt viselkedst bemutat iddiagram:

20. bra A bekapcsols-ksleltetses idzt iddiagramja

A be/kimeneti jelek rtelmezse:


jells jelents
IN Az IN bemeneten jelentkez felfut lre indul az idzts.
PT A kimeneten megjelen jel ksleltetsnek idejt adja meg.
Q Az idzt ktllapot kimenete. Belltsa az iddiagram szerint.
ET Az indts ta eltelt id. rtke nem lehet nagyobb PT-nl.

Kikapcsols-ksleltetses idzt
Funkcitervbeli jellse:

21. bra A kikapcsols-ksleltetses idzt funkcitervbeli brzolsa

41
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Az idzt viselkedst bemutat iddiagram:

22. bra A kikapcsols-ksleltetses idzt iddiagramja

A be/kimeneti jelek rtelmezse:


jells jelents
IN Az IN bemeneten jelentkez felfut lre a kimenet 1-re vlt.
PT Az IN bemenet lefut le utn PT ideig a Q kimeneten mg fenntartand
az 1 jel.
Q Az idzt ktllapot kimenete. Belltsa az iddiagram szerint.
ET A lefut l ta eltelt id. rtke nem lesz negatv.

42
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

A PLC konfigurlsa
Az IEC-1131-3 szabvny ajnlsa szerint a strukturlt szoftvermodell biztostja a felhasznli
programok knnyebb ttekinthetsgt, egyenknti szintaktikai ellenrzst, hordozhatsgt.
Ebben a fejezetben Az IEC-1131-3 szabvny azon konfigurcis elemeit ismertetjk, amelyek
a programszervezsi egysgek sszehangolsnak fontos segdeszkzei. Itt definiljuk a
programok futsi tulajdonsgait, a kommunikcis kapcsolatokat s a hardver
sszerendelseket. A mai modern opercis rendszerek a PLC oldalrl tmogatjk ezeket a
konfigurcis elemeket. Egy CPU pldul tbb programot is tud egyszerre futtatni (multi-
taszking).

A PLC projekt felptse


A PLC-projekt, amelyet egy jl krlhatrolhat irnytsi feladat megvalstsra hoznak
ltre, az albbi brn lthat hierarchikus felptssel jellemezhet. Lthatjuk, hogy az elz
fejezetekben trgyalt programszerkezet fltti hierarchiaszinteken megjelenik a taszk (TASK)
a fut programmal, az erforrs (RESOURCE) s a konfigurci (CONFIGURATION).

a konfigurci elemei

CONFIGURATION

RESOURCE

TASK/ FUT PROGRAM

PROGRAM FGVBLOKK

FGGVNY FGVBLOKK FGVBLOKK

FGGVNY FGGVNY FGVBLOKK

A PLC projekt felptse az IEC-1131-3 szabvny szerint

A POU-kbl kpezik a hvsi hierarchit, a konfigurcis elemek pedig arra szolglnak, hogy
ezekhez a POU-khoz futtassi sajtsgokat s hardverelemeket rendeljenek hozz.
Rszletezve:
a programok s fggvnyblokkok futsi jellemzit,
a kommunikcis kapcsolatokat,
a programvltozk lekpezst a PLC hardvercmeire.

43
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

A konfigurci sszetevi
A konfigurcis elemek hatrozzk meg a PLC-rendszer vals sszetevit:
a konfigurcit: a PLC-rendszert, mint egy keretbe ptett, akr tbb (elosztott) kzponti
egysggel br, folyamatkzeli (gpegysg szint) irnytrendszert.
az erforrst: (esetleg multitaskingot lehetv tev) CPU-t.
a taszkot: a programok s program tpus fggvnyblokkok futsi sajtossgait.
(A PLC program egyediestse.)
a fut programot: a programbl ill. fggvnyblokkbl s a TASK-bl kpzett egysget.

A CPU fprogramja egy PROGRAM tpus POU.


A fprogramokhoz s a fggvnyblokkokhoz hozzrendeljk a futsi sajtossgaikat, mint pl.
a periodikus vgrehajtst, prioritsi szintet. A fut program egy rgztett (lezrt)
tulajdonsgokkal rendelkez programegysg, amely termszetesen egy adott CPU-n kpes
csak futni.
A CONFIGURATION jellemzi
Az IEC-1131-3 szabvny a CONFIGURATION elemet hasznlja arra, hogy a PLC rendszer
erforrsait (RESOURCE) sszefogja s biztostsa kzttk az adat s informcicsert.
A konfigurci rszei:

CONFIGURATION konfigurci-nv

Tpusdefincik
Globlis deklarcik
RESOURCE-deklarci
ACCESS-deklarci

END_CONFIGURATION

A konfigurciban deklarlt tpusokat, globlis vltozkat az egsz projekt ltja s


hasznlhatja. (Tbb CPU is.) A konfigurcik kztti adatcsert a VAR_ACCESS
segtsgvel hozhatjuk ltre. Lteznek ezen kvl egyb, konfigurcik kztti
kommunikcit biztost fggvnyek is, ezek az IEC-1131-5 szabvny rja le.
A konfigurcira plda:
CONFIGURATION PLC_gep1
VAR_GLOBAL END_VAR
RESUORCE CPU_szszalag ON CPU_001 END_RESOURCE
RESUORCE CPU_henger ON CPU_002 END_RESOURCE
VAR_ACCESS END_VAR

A RESOURCE jellemzi
A RESOURCE deklarls biztostja a TASK-ok hozzrendelst a PLC-rendszer fizikai
erforrsaihoz.

44
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

. Az erforrs rszei:
RESOURCE erforrs-nv ON erforrs

Globlis deklarcik
TASK-deklarci

END_ RESOURCE

Az erforrs-nv lesz a PLC-CPU szimbolikus neve. A RESOURCE-ban deklarlt globlis


vltozk csak az adott CPU-n bell lthatk s hasznlhatk.
Az erforrson bell rendeljk hozz a TASK-hoz a program tpus POU-t.
A konfigurci s az erforrs nem tartalmaz parancs rszt, csak deklarcis rsze van.
Az erforrs deklarcira plda:
RESOURCE CPU_szszalag ON CPU_001
TASK
PROGRAM WITH
END_RESOURCE
RESOURCE CPU_henger ON CPU_002
TASK
PROGRAM WITH
END_RESOURCE

A TASK s a fut program


A TASK definci feladata a program s fggvnyblokkjainak futsi sajtossgait rgzteni.
Rgebbi PLC-rendszerekben szoksos volt specilis blokkok megadsa (pl. szervezi blokk),
amelyek rgztett futtatsi sajtossgokkal rendelkeztek. Ezeket tlthette fel utastsokkal a
felhasznl, ha ciklikus vagy megszakts/esemny feldolgozst kvnt. A TASK
bevezetsvel ezen tulajdonsgokat expliciten s gyrttl fggetlenl lehet megfogalmazni.
Ezltal a programok jobban dokumentlhatk s knnyebben vrakoztathatk.
TASK deklarlsra plda:
TASK task-nv (task-tulajdonsgok)

PROGRAM program-nv WITH task-nv : progr-nv (PROGRAM


csatlakoztats)

A futsidej program neve a program-nv lesz. Ez tulajdonkppen egy progr-nv tpus POU
instanclsa, egyediestse. A (PROGRAM csatlakoztats) adja meg a formlis
paramtereknek megfelel aktulis paramterek listjt.
A TASK lehetsges tulajdonsgait a kvetkez tblzatba foglaltuk ssze.

45
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

TASK-paramter jelents
SINGLE A paramterhez rendelt jel emelked le indtja el a program egyszeri
lefutst.
INTERVAL Ha ez a paramter nem egyenl nullval, akkor a TASK-hoz rendelt
program ciklikusan fut. Ez a paramter szolgl a ciklusid megadsra
s tllpsnek ellenrzsre.
PRIORITY A TASK-hoz rendelt program prioritst adja meg az erforrson
egyidejleg fut tbbi programhoz viszonytva.

A priorits hatsa attl fgg, hogy a PLC opercisrendszere milyen mdon szablyozza tbb
TASK feldolgozst. (Teht implementcifgg.) ltalban ktfle feldolgozsi md
lehetsges. Az egyik szerint (preemtive scheduling) a fut taszk azonnal megszakad, ha egy
magasabb priorits taszk futni akar. A msik mdszer a taszk a futst nem szaktja meg, az
lefut. Ezutn a rendszer a vrakoz taszkok kzl a legnagyobb prioritst indtja el. (non-
preemtive scheduling) Mindkt eljrs clja, hogy a legmagasabb priorits taszknak adja t
az erforrs felgyelett.
Plda TASK deklarcira

TASK T_gyors (INTERVAL:=t#8ms, PRIORITY:=1);


PROGRAM berendezes WITH T_gyors :
progrA(szabpar:=%MW3,szabert:=hibakod)

TASK T_megszakit (SINGLE := trigger, PRIORITY:=1);


PROGRAM berendezes WITH T_megszakit : progrB

Kis PLC rendszerekben (egy erforrs, egyetlen futtathat programmal) a konfigurci


szerept teljesen tveheti a fprogram. A programban deklarljuk a rendszerben szksges
globlis vltozkat, a kzvetlen lekpezs s a szimbolikus vltozkat. A futsi
tulajdonsgokat a fejlesztrendszer ill. a PLC kpessgei (implicit) behatroljk, belltjk.

46
Forrs: http://www.doksi.hu

PLDATR
Az IEC-1131-3 szabvny rvid ismertetse utn, a jegyzet tovbbi fejezeteiben
pldaprogramokon keresztl ismerkednk meg a PLC programozsnak technikjval. Az
irnytott technolgiai folyamattal meglv folyamatos jelkapcsolat s a sajtos felhasznli
programfuttats (jellemzen ciklikus feldolgozs) a programoztl, a klasszikus
programfejlesztsnl megszokottl kiss eltr ltsmdot, gondolkodsmdot kvn. A
pldaprogramok sorval ezt a problmafelismer s megold kpessget szeretnnk a
hallgatkban kifejleszteni. A pldk a nehzsgknek megfelel sorrendben kvetik egymst.
A feladatok egy-egy kiemelt tma ismertetst, begyakoroltatst clozzk, nem trekedtnk
minden esetben a teljes technolgiai folyamatnak, ill. az sszes biztonsgtechnikai elrsnak
megfelel vezrlalgoritmus kidolgozsra. Az esettanulmnyokhoz a legtbb tletet a [8]
irodalombl vettk. A programokat Az IEC-1131-3 szabvnynak megfelelen, az S40
programfejleszti rendszerben ksztettem s a KlcknerMoeller cg PS4-341-MM1
programozhat vezrljn teszteltem.
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Kvetvezrlsek

Szellztets felgyelete
Egy mlygarzsba 4 db szellztett ptettek be. A szellztets felgyelett a
szellzvezetkekben lv ramlsjelzk ltjk el. A garzs bejratnl a szellztetstl
fggen jelzlmpa engedlyezi a behajtst.
Jelzsek:
Ha ngy, vagy hrom ventiltor mkdik, ezek gondoskodnak a megfelel szellzsrl, s
a lmpa zldet mutat.
Ha kt ventiltor mkdik, a lmpa srgt jelez.
Ha kettnl kevesebb ventiltor mkdik, piros jelzst kell adni.
sszerendelsi tblzat:
Bemenetek Jel Logikai hozzrendels Cm
1. ramlsjelz I1 1. ventiltor zemel: I1=1 I0.0

2. ramlsjelz I2 2. ventiltor zemel: I2=1 I0.1

3. ramlsjelz I3 3. ventiltor zemel: I3=1 I0.2

4. ramlsjelz I4 4. ventiltor zemel: I4=1 I0.3


Kimenetek
Piros lmpa P vilgt, ha: P=1 Q0.2

Srga lmpa S vilgt, ha: S=1 Q0.1

Zld lmpa Z vilgt, ha: Z=1 Q0.0


A fggvnytblzat:

OKT I4 I3 I2 I1 P S Z
00 0 0 0 0 1 0 0
01 0 0 0 1 1 0 0
02 0 0 1 0 1 0 0
03 0 0 1 1 0 1 0
04 0 1 0 0 1 0 0
05 0 1 0 1 0 1 0
06 0 1 1 0 0 1 0
07 0 1 1 1 0 0 1
10 1 0 0 0 1 0 0
11 1 0 0 1 0 1 0
12 1 0 1 0 0 1 0
13 1 0 1 1 0 0 1
14 1 1 0 0 0 1 0
15 1 1 0 1 0 0 1
16 1 1 1 0 0 0 1
17 1 1 1 1 0 0 1

48
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Karno-tbla

Piros (P):

Srga (S):

Zld (Z):

Mivel egy lmpnak mindig vilgtania kell, elegend, ha a kapcsolsi feltteleket csak kt
lmpra rjuk meg, a harmadik pedig akkor lesz igaz, ha a msik kett hamis. Mivel a srga
logikai fggvnye a leghosszabb, ezrt legyen: S=P&Z

49
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Funkciterv
Piros lmpa vilgt: Zld lmpa vilgt:

Srga lmpa vilgt:

50
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Utastslista

PROGRAM SZELLOZ
VAR
I1 AT %I0.0.0.0.0: BOOL;
I2 AT %I0.0.0.0.1: BOOL;
I3 AT %I0.0.0.0.2: BOOL;
I4 AT %I0.0.0.0.3: BOOL;
PIROS AT %Q0.0.0.0.2:
BOOL;
SARGA AT %Q0.0.0.0.1:
BOOL;
ZOLD AT %Q0.0.0.0.0:
BOOL;
END_VAR

LDN I1 LD I1
ANDN I2 AND I2
ANDN I3 AND I3
OR( I1 OR( I1
NOT AND I2
ANDN I2 AND I4
ANDN I4 )
) OR( I1
OR( I1 AND I3
NOT AND I4
ANDN I3 )
ANDN I4 OR( I2
) AND I3
OR( I2 AND I4
NOT )
ANDN I3 ST ZOLD
ANDN I4
) LDN PIROS
ST PIROS ANDN ZOLD
ST SARGA
END_PROGRAM

51
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Ltradiagram

A programtrzs ltradiagramban brzolva:

52
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Kvetvezrls tervezse dntsi tblzattal


A be- s kimeneti vltozk kztti kapcsolatot dntsi tblzat segtsgvel is felrhatjuk. (DIN
66241). A dntsi tblzat a dntsi feladatok tblzatos lersa. Viszonylag kevs dntsi szabllyal
lerhat vezrlsi feladatoknl clszer alkalmazni. A tblzat kt f rszre oszthat: a felttelrszre s
a kvetkezmny rszre.

Egyb-
Problmalers Szablyok
knt
R1 R2 R3 ... Rn

Felttelek 1.bemen
vltoz Felttel vagy esetlersok szablyok megadsval.
2.bemen (Az olyan bemeneti jelkombincira, amelyre nincs szably, az
vltoz EGYB oszlop vonatkozik!)
.
.
n.bemen
vltoz

Kvetkez- 1.kimen vltoz


mnyek 2.kimen vltoz
. A felttelektl fgg kvetkezmnyek (akcik) jellse.
.
n.kimen vltoz

Jelllapotok: 0 : hamis
1 : igaz
- : nincs jelentsge a felttelnek az adott szablyban.

A fggvnytblzattl csak a vltozk s kvetkezmnyeik elrendezsben klnbzik, gy a dntsi


tblzat fogalmilag nem jelent j lersi mdot. Alkalmazsnak elnye akkor jelentkezik, ha a
vezrlsi feladat visszavezethet kombincis hlzatra s nincs szksg a lehetsges bemeneti
jelkombincik mindegyikre. A dntsi tblzattal lert vezrlsi feladat a fggvnytblzathoz
hasonlan transzformlhat t vezrlprogramm. Az albbi vezrlsi feladat plda a dntsi tblzat
hasznlatra. 6 db bemenjel esetn 26=64 a lehetsges bemenjel-kombincik szma. Egy ilyen
nagymret igazsgtblzat nehezen tekinthet t, nehezen kezelhet.

Stancols
A gp hengere csak az albbi felttelek esetn mkdtethet:
1. A kt kzi nyomgomb egyidejleg lenyomva (most nincs ktkezes reteszelsi elrs).
2. A vdrcs zrva (leeresztve) s a lbkapcsol benyomva.
3. A vdrcs zrva s a kt kzi nyomgomb kzl az egyiket benyomtk.
Ezen kvl mindhrom esetben szksges mg, hogy a kszlket mr bekapcsoltk s a kivgminta
a helyn van.

53
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

sszerendelsi tblzat
Bemenetek Jel Logikai ssszerendels Cm
BE - kapcsol S1 bekapcsolva: S1=1 I0.0

1. kzi nyomgomb S2 benyomva: S2=1 I0.1

2. kzi nyomgomb S3 benyomva: S3=1 I0.2

Lbnyomgomb S4 benyomva: S4=1 I0.3

Vdrcs S5 Vdrcs leeresztve: S5=1 I0.4

Kivgminta S6 Kivgminta a helyn: S6=1 I0.5


Kimenetek
Prshenger P leeresztve: P=1 Q0.0

A dntsi tblzat
Egyb-
Problmalers Szablyok
knt
47 63 65 71
BE - kapcsol S1 1 1 1 1
1. kzi nyomgomb S2 1 1 0 0
2. kzi nyomgomb S3 1 0 1 0
Lbnyomgomb S4 0 0 0 1
Vdrcs S5 0 1 1 1
Kivgminta S6 1 1 1 1
Prshenger P 1 1 1 1 0

A reduklt fggvnytblzat
S6 S5 S4 S3 S2 S1 P
1 0 0 1 1 1 1
1 1 0 0 1 1 1
1 1 0 1 0 1 1
1 1 1 0 0 1 1

A diszjunktv norml forma:

P = S6S5S4S3S2S1 V S6S5S4S3S2S1 V S6S5S4S3S2S1 V S6S5S4S3S2S1

54
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Ltradiagram

A program utastslistja

PROGRAM STANC
VAR
S1 AT %I0.0.0.0.0: BOOL;
S2 AT %I0.0.0.0.1: BOOL;
S3 AT %I0.0.0.0.2: BOOL;
S4 AT %I0.0.0.0.3: BOOL;
S5 AT %I0.0.0.0.4: BOOL;
S6 AT %I0.0.0.0.5: BOOL;
P AT %Q0.0.0.0.0: BOOL;
END_VAR

LD( S1 OR( S1
AND S2 ANDN S2
AND S3 ANDN S3
ANDN S4 AND S4
ANDN S5 AND S5
AND S6 AND S6
) )
OR( S1 ST P
AND S2 END_PROGRAM
ANDN S3
ANDN S4
AND S5
AND S6
)
OR( S1
ANDN S2
AND S3
ANDN S4
AND S5
AND S6
)

55
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Gyakorl feladat Szivattyk vezrlse

A technolgiai berendezs egy tmeneti folyadktrol, a belp folyadkram mennyisge


idben vltozhat. A tartlyban 3 db szintrzkelt ptettek be, a fels kett akkor ad jelet, ha
a folyadkszint az rzkelt elrte vagy fltte van, az als pedig akkor ad jelet, ha a
folyadkszint alatta van. A tartly a kilp vezetkbe ptett kt db szivattyval rthet le.

23. bra Szivattyk vezrlse

A vezrlsnek kzi s automata zemmdot is kell biztostania.


Kzi zemmdban (S1=1) a szivattykat a kezelszemly mkdtetheti a szivattykhoz
tartoz be- ill. kikapcsol nyomgombokkal.
Automata zemmdban (S1=0) a vezrlsnek kell megakadlyoznia a folyadk tlfolyst.
Emelked folyadkszintnl:
S6 s S7 kztt az 1. sz. szivatty mkdjn;
S6 felett mindkt szivatty kapcsoljon be.
Cskken folyadkszintnl, ha S8 szintrzkel jelez, mindkt szivatty lljon le.

Feladat: sszerendelsi tblzat, funkciterv, utastslista.

56
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Kvetvezrls trolssal

Troltartlyrendszer: feltlts vezrlse


Hrom troltartly tele llapott az S1, S3, S5 jeladk, az res jelet az S2, S4, S6 jeladk
szolgltatjk az elbbi sorrendben. A vezrlsnek gondoskodnia kell arrl, hogy res jelzsnl
egyszerre csak egy trolt tltsn fel. A tartly feltltse akkor fejezdik be, ha a tele jel
megrkezik. A tartlyokat kzi szeleppel rtik.

24. bra Troltartlyok feltltsnek vezrlse


sszerendelsi tblzat
Bemenetek Jel Logikai sszerendels Cm
1. tartly tele S1 A tartly tele, ha: S1=1 I 0.0

2. tartly tele S3 A tartly tele, ha: S3=1 I 0.2

3. tartly tele S5 A tartly tele, ha: S5=1 I 0.4

1. tartly res S2 A tartly res, ha: S2=1 I 0.1

2. tartly res S4 A tartly res, ha: S4=1 I 0.3

3. tartly res S6 A tartly res, ha: S6=1 I 0.5


Kimenetek
1. tartly mgnesszelep Q1 A szelep nyitva, ha: Q1=1 Q0.0

2. tartly mgnesszelep Q2 A szelep nyitva, ha: Q2=1 Q0.1

3. tartly mgnesszelep Q3 A szelep nyitva, ha: Q3=1 Q0.2

57
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Utastslista :
Funkciterv
PROGRAM PR3TART
VAR
S1 AT %I0.0.0.0.0:
BOOL;
S2 AT %I0.0.0.0.1:
BOOL;
S3 AT %I0.0.0.0.2:
BOOL;
S4 AT %I0.0.0.0.3:
BOOL;
S5 AT %I0.0.0.0.4:
BOOL;
S6 AT %I0.0.0.0.5:
BOOL;
Q1 AT %Q0.0.0.0.0:
BOOL;
Q2 AT %Q0.0.0.0.1:
BOOL;
Q3 AT %Q0.0.0.0.2:
BOOL;
END_VAR

LD S2
S Q1
LD S1
OR Q2
OR Q3
R Q1

LD S4
S Q2
LD S3
OR Q1
OR Q3
R Q2

LD S6
S Q3
LD S5
OR Q1
OR Q2
R Q3

END_PROGRAM

58
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Krdsek:

Ha egyszerre tbb tartly is res jelzst ad, a fenti program milyen sorrendben fogja feltlteni
ket?
Hogyan mdostan a programot, ha az lenne a feladat, hogy a lerls sorrendjben tltse fel
a tartlyokat?
Hogyan mdostan a programot, ha a start/stop jelet is figyelembe kellene vennie, azaz csak
akkor ellenrizze a szintjelzket s mkdtesse a szelepeket, ha a START gombot
benyomtk?

59
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Gyakorl feladat: Gyrkapu vezrlse


Egy gyrkaput a kapusflkbl elektromotorral mkdtetnek. Az elektromotort kt
teljestmnykapcsolval lehet a nyits illetve zrs irnyba kapcsolni. Q1: balra, a kapu
kinylik. Q2 jobbra, a kapu zrdik. A kt relt nem lehet egyidejleg kapcsolni, klcsnsen
reteszeljk egymst a kapcsolsi oldalon is. A kapu vghelyzeteit vglls-kapcsolk (S1: a
kapu zrva, S2: a kapu nyitva) jelzik.

25. bra Gyrkapu vezrlse

A kapusflkben helyeztk el a kapu kezeli pultjt. A kaput kzi ill. automata zemmdban
lehet nyitni/zrni. A kvnt mkds automata zemmdban: a gomb rvid idej
benyomsval a kapu a vghelyzetig folyamatosan nylik, illetve zrdik. A mvelet a STOP
gomb benyomsval brmikor megszakthat. A vezrlst gy kell megoldani, hogy ha a
motor az egyik irnyba mkdteti a kaput, a msik irnyba tvltani csak a STOP benyomsa
utn lehessen. Ha a kapu vghelyzetbe r, a motor lell. Kzi zemmdban a motor addig
nyitja vagy zrja a kaput, amg a megfelel gombot lenyomva tartjk s a kapu mg nem rte
el a vghelyzett.
sszerendelsi tblzat
Bemenetek Jel Logikai sszerendels Cm
a kapu zrva S1 jelez, ha : S1=1 I0.0
a kapu nyitva S2 jelez, ha : S2=1 I0.1
AUT/KZI vltkapcsol A_K AUTOMATA, ha : A_K=1 I0.2
NYIT nyomgomb NYIT benyomva: NYIT=1 I0.3
STOP nyomgomb STOP benyomva: STOP=0 I0.4
ZR nyomgomb ZAR benyomva: ZAR=1 I0.5
Kimenetek
nyits irnyba kapcsol Q1 behzva: Q1=1 Q0.1
rel
zrs irnyba kapcsol Q2 behzva: Q2=1 Q0.2
rel

60
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Impulzuskapcsol
Egy jelzlmpa (Q0) az S0 nyomgomb (rvid idej) megnyomsra bekapcsol. Ha az S0
gombot ismtelten megnyomjk, a lmpa kialszik.

26. bra A kvnt mkdst szimull program frontpanelkpe


Iddiagram:

27. bra Az impulzuskapcsol iddiagramja

A bemeneti jelen fellp emelked l (0-1 tmenet) a kimenet llapotvltozst okozza.


sszerendelsi tblzat
Bemenet Jel Logikai sszerendels Cm
Nyomgomb S0 benyomva: S0=1 I0.0
Kimenet
Jelzlmpa Q0 vilgt: Q0=1 Q0.0

61
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Megolds

Utastslista Funkciterv
PROGRAM NYGLAMPA
VAR
S0 AT %I0.0: BOOL;
Q0 AT %Q0.0:
BOOL;
M0: BOOL;
M1: BOOL;
M2: BOOL;
END_VAR

LD S0
ANDN M1
ST M0

LD S0
ST M1

LD M0
ANDN Q0
S M2
LD M0
AND Q0
R M2

LD M2
ST Q0
END_PROGRAM

62
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Gyakorl feladat: utastslista elemzse I.

Feladat: rja t az albbi utastslistt funkcitervbe, majd prblja meg elemezni a


bemenjel s a kimenjel kapcsolatt!

FUNCTION_BLOCK FGVBLOKK
VAR_IN_OUT
PAR1: BOOL;
END_VAR
LDN PAR1
ST PAR1
END_FUNCTION_BLOCK

PROGRAM ELEMZ1
VAR
I0 AT %I0.0.0.0.0: BOOL;
Q0 AT %Q0.0.0.0.0: BOOL;
M0: BOOL;
FGVB:FGVBLOKK;
END_VAR
LD I0
ANDN M0
CALC FGVB (PAR1:=Q0)
LD I0
ST M0
END_PROGRAM

A bemenjel idbeli vltozsa:

I0

A kimenjel idbeli alakulsa a bemenjel fggvnyben (megoldand feladat!):


Q0

63
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Kvetvezrls impulzus idztvel

Ktkezes reteszels
A balesetveszly elkerlse vgett egy prsgp mkdtetst az n. ktkezes reteszelssel
kell biztostani. A prs csak akkor engedhet le, ha a kezel az S1 s S2 nyomgombot adott
idn bell (0,1s) egyszerre nyomja le. A kt nyomgombot egymstl megfelel tvolsgra
kell elhelyezni. Nem engedlyezhet a prsmvelet, ha az egyik vagy a msik nyomgomb
folyamatosan be van nyomva. (Pl.: kitmasztjk). Ugyangy, az excenter feletti nyoms
azonnal megsznik, ha abbahagyjk a nyomgombok mkdtetst. Egy prselsi mvelet
utn a prs a kiindulsi (fels) helyzetbe kerl s ott is marad, csak a kt nyomgomb jbli,
0,1s-on belli lenyomsa eredmnyez jabb mveletet.

28. bra Stancolgp


sszerendelsi tblzat

Bemenetek Jel Logikai sszerendels Cm

Baloldali nyomgomb S1 benyomva: S1=1 I0.1

Jobboldali nyomgomb S2 benyomva: S2=1 I0.2

Kimenet

Prs P1 mkdtetve: P1=1 Q0.1

A szktett fggvnytblzat
P1elz rtke T1 idzt S1 S2 P1
0 1 1 1 1
1 0 1 1 1
1 1 1 1 1
minden egyb estben 0

64
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Funkciterv

A program utastslistja
PROGRAM ketkret
VAR
S1 AT %I0.1 : BOOL ;
S2 AT %I0.2 : BOOL ;
P1 AT %Q0.1 : BOOL ;
END_VAR

VAR
T1 : TP ;
M0 : BOOL ;
END_VAR

VAR CONSTANT
T11 : TIME := T#0.1S ;
END_VAR

LD S1 LD M0
OR S2 OR P1
ST T1.IN AND S1
AND S2
LD T11 ST P1
ST T1.PT
END_PROGRAM
CAL T1

LD T1.Q
ST M0

65
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Vszjelzs
Ksztend 1 Hz frekvencij vszjelzs, amely egy S1 kapcsol mkdtetsre a kimeneten
(L1 jelzlmpa) azonnal 1-jellel indul, az impulzus:sznet arny 1:2. Ha a kapcsolt
tkapcsoljk, az utols teljes temciklus befejeztvel megszakad az temgenerls.

29. bra Iddiagram

30. bra A kvnt mkdst szimull program frontpanelkpe

sszerendelsi tblzat
Bemenet Jel Logikai sszerendels Cm
Nyomgomb S1 benyomva: S1=0 I0.0
Kimenet
Jelzlmpa L1 vilgt, ha: L1=1 Q0.0

A megoldshoz kt db impulzus idzt (T1, T2) szksges, amelyek felvltva mkdnek. Az egyik
idzt ktllapot kimenetnek 10 jelvltsa indtja a msik idztt.
A T1 idzt binris kimenete megegyezik az temgenertor L1 kimenetvel.

66
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Funkciterv

Utastslista

ROGRAM PRVESZJ
VAR LDN S1
VESZJEL AT %I0.0.0.0.0: ANDN T2.Q
BOOL; ST T1.IN
LAMPA AT %Q0.0.0.0.0: LD T1K
BOOL; ST T1.PT
FGVBL: VESZJ; CAL T1
END_VAR LDN T1.Q
CAL FGVBL(S1:=VESZJEL) ST T2.IN
LD FGVBL.L1 LD T2K
ST LAMPA ST T2.PT
END_PROGRAM CAL T2
LD T1.Q
FUNCTION_BLOCK VESZJ ST L1
END_FUNCTION_BLOCK
VAR_INPUT
S1: BOOL;

END_VAR

VAR_OUTPUT
L1: BOOL;
END_VAR

VAR
T1: TP;
T2: TP;
T1K: TIME := t#0.33S;
T2K: TIME := t#0.66S;
END_VAR

67
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Gyakorl feladat: utastslista elemzse II.


rja t az albbi utastslistt funkcitervbe, majd prblja meg elemezni a bemenjel s a
kimenjel kapcsolatt, ha a bemenjel 1-rl 0-ra vlt, s ott is marad!

PROGRAM ELEMZ2
VAR
I0 AT %I0.0.0.0.0: BOOL;
Q0 AT %Q0.0.0.0.0: BOOL;
M1: BOOL;
M2: BOOL;
T1: TON;
END_VAR
LD I0
ORN M1
ST T1.IN
LD t#1s
ST T1.PT
CAL T1
LD T1.Q
ST M1

LDN I0
AND M1
S M2
LD M1
AND Q0
R M2
LD M2
ST Q0
END_PROGRAM

A bemenjel idbeli vltozsa:

I0

A kimenjel idbeli alakulsa a bemenjel fggvnyben (megoldand feladat!):


Q0

68
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Kvetvezrls idztkkel

Szlltszalagok egyttes vezrlse


A kikapcsols-ksleltetses idzt tipikus alkalmazsra lthatunk pldt a kvetkez feladat
megoldsban, ahol a szilrd anyag feltorldst elkerlend, a szlltszalagokat a
kikapcsolsi jel utn mg adott ideig mkdtetjk, hogy lerljenek. A vezrlalgoritmus n.
heurisztikus megolds, s mr meglehetsen bonyolult. ttekintse, s gy esetleges
mdostsa sem olyan egyszer.

31. bra Szlltszalagok vezrlse

A vezrlsi feladat a szlltszalagok motorjainak mkdtetse az albbi felttelek szerint:


Az 1. s 2. szlltszalagok kzi nyomgombokkal kapcsolhatk be/ki (S1, S2, S3, S4).
Az zemllapotokat jelzlmpkkal kell visszajelezni (L1, L2, L3, L4).
Az 1. s 2. szlltszalag nem mkdhet egyidejleg.
A 3. szlltszalagnak mindig mkdnie kell, ha az 1-t vagy a 2-t elindtottk.
Ha az 1. vagy a 2. szlltszalagot a megfelel STOP gombbal kikapcsoljk, a szalagok
mg 2s-ig futnak, hogy a rajtuk lv anyag lerlhessen. Ugyanezen okbl a 3.
szlltszalag a STOP benyomsa utn mg 6s-ig fut.
Az S5, S6, S7 felgyelk 10 Hz-es impulzusjellel jelzik a szalagok mkdst (forgs).
Ha az impulzusjel megszakad, a jelad kimenete folyamatosan 0 (hamis). Az indts utn
3s-ig a felgyelk jeleit nem kell kirtkelni. (Felfutsi id.)
Ha az 1. vagy 2. szlltszalag jeladjnak jele megszakad, a szlltszalag motorjt
azonnal ki kell kapcsolni, a 3. szlltszalagot pedig le kell rteni, majd azt is le kell
lltani. Ekzben a Ki-jelzlmpa (L3 vagy L4) 2 Hz frekvencival villog.
Ha a 3. szlltszalag jelzje ad folyamatos 0 jelet, minden motort azonnal le kell lltani,
s be kell kapcsolni a hibajelzs villogst.

69
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

A hibajelzst (villogst) a megfelel szlltszalag STOP nyomgombjnak


megnyomsval lehet nyugtzni.

sszerendelsi tblzat

Bemenetek Jel Logikai sszerendels Cm

1. sz.szalag BE-kapcsols nyomgomb S1 benyomva: S1=1 I0.0

2. sz.szalag BE-kapcsols nyomgomb S2 benyomva: S2=1 I0.1

1. sz.szalag KI-kapcsols nyomgomb S3 benyomva: S3=1 I0.2

2. sz.szalag KI-kapcsols nyomgomb S4 benyomva: S4=1 I0.3

1. sz.szalag fordulatjelz S5 impulzus: S5=1 I0.4

2. sz.szalag fordulatjelz S6 impulzus: S6=1 I0.5

3. sz.szalag fordulatjelz S7 impulzus: S7=1 I0.6

Kimenetek

1. sz.szalag mkdtetst jelz lmpa L1 vilgt, ha: L1=1 Q0.0

2. sz.szalag mkdtetst jelz lmpa L2 vilgt, ha: L2=1 Q0.1

Jelzlmpa: 1. sz.szalag kikapcsolva L3 vilgt, ha: L3=1 Q0.2

Jelzlmpa: 2. sz.szalag kikapcsolva L4 vilgt, ha: L4=1 Q0.3

1. sz.szalag motor MOT1 mkdtetve: Mot1=1 Q0.4

2. sz.szalag motor MOT2 mkdtetve: Mot2=1 Q0.5

3. sz.szalag motor MOT3 mkdtetve: Mot3=1 Q0.6

Funkciterv

70
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

A rugalmasabb adatmdosts biztostsnak rdekben az idztk idllandit a


deklarcis rszben rgztettk, a funkcitervben is a vltozneveket tntettk fel.

71
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Utastslista
PROGRAM SZSZALAG3
VAR
S1 AT %I0.0.0.0.0: BOOL;
S2 AT %I0.0.0.0.1: BOOL;
S3 AT %I0.0.0.0.2: BOOL;
S4 AT %I0.0.0.0.3: BOOL;
S5 AT %I0.0.0.0.4: BOOL;
S6 AT %I0.0.0.0.5: BOOL;
S7 AT %I0.0.0.0.6: BOOL;
MOT1 AT %Q0.0.0.0.0: BOOL;
MOT2 AT %Q0.0.0.0.1: BOOL;
MOT3 AT %Q0.0.0.0.2: BOOL;
L1 AT %Q0.0.0.0.3: BOOL;
L2 AT %Q0.0.0.0.4: BOOL;
L3 AT %Q0.0.0.0.5: BOOL;
L4 AT %Q0.0.0.0.6: BOOL;
T0: TON;
T0K: TIME := t#3s;
T1: TON;
T1K: TIME := t#120ms;
T2: TON;
T2K: TIME := t#120ms;
T3: TP;
T3K: TIME := t#250ms;
T4: TP;

72
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

T4K: TIME := t#250ms;


MERK1: BOOL;
T5: TOF;
T5K: TIME := t#2s;
T6: TOF;
T6K: TIME := t#2s;
T7: TOF;
T7K: TIME := t#6s;
END_VAR
LD T2K
(*1.SZ.SZALAG BE-LMPA*) ST T2.PT
LD S1 CAL T2
ANDN L2 (*2 Hz VILLOGS*)
ANDN MOT3 LD T1.Q
S L1 OR T2.Q
LD S3 ANDN T4.Q
R L1 ST T3.IN
(*2.SZ.SZALAG BE-LMPA*) LD T3K
LD S2 ST T3.PT
ANDN L1 CAL T3
ANDN MOT3 LD T3.Q
S L2 ST MERK1
LD S4 LD T1.Q
R L2 OR T2.Q
(*FUTSI ID*) ANDN T3.Q
LD L1 ST T4.IN
OR L2 LD T4K
ST T0.IN ST T4.PT
LD T0K CAL T4
ST T0.PT (*1.SZ.SZALAG KI-LMPA*)
CAL T0 LD L1
(*1.S 2. SZ.SZALAG AND MERK1
FUTSELLENRZS*) ORN L1
LDN S5 ST L3
AND L1 (*2.SZ.SZALAG KI-LMPA*)
AND T0.Q LD L2
OR( S6 AND MERK1
NOT ORN L2
AND L2 ST L4
AND T0.Q (*1.SZ.SZALAG MOTOR*)
) LD L1
ST T1.IN ANDN T1.Q
LD T1K ANDN T2.Q
ST T1.PT ST T5.IN
CAL T1 LD T5K
(*3.SZ.SZALAG ST T5.PT
FUTSELLENRZS*) CAL T5
LDN S7
AND T0.Q LD T5.Q
ST T2.IN ANDN T1.Q

73
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

ANDN T2.Q
ST MOT1
(*2.SZ.SZALAG MOTOR*)
LD L2
ANDN T1.Q
ANDN T2.Q
ST T6.IN
LD T6K
ST T6.PT
CAL T6
LD T6.Q
ANDN T1.Q
ANDN T2.Q
ST MOT2
(*3.SZ.SZALAG MOTOR*)
LD MOT1
OR MOT2
ANDN T2.Q
ST T7.IN
LD T7K
ST T7.PT
CAL T7
LD T7.Q
ANDN T2.Q
ST MOT3
END_PROGRAM

74
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Gyakorl feladat: Szlltszalag vezrlse

32. bra Szlltszalag motor vezrlse


A szlltszalagot a Mot jelzs motor mkdteti. Amg a szalag megfelelen fut, az S2 jele
10 Hz frekvenciajel. Problma esetn (pl. szalagszakads stb.) az S2 jelad folyamatosan 0
rtket ad. Ha bekapcsolt motor mellett nem jelentkezik az impulzusjel, le kell lltani a
motort, s a HIBA jelzlmpa 2Hz-es frekvencival villog. A szalag indtsa a START
nyomgombbal trtnik, lelltsa illetve a hibajel nyugtzsa STOP nyomgombbal
lehetsges. zem kzben az ZEMBEN jel folyamatosan vilgt. Indts utn 5s-ig nem kell
figyelembe venni S2 jelt.

sszerendelsi tblzat

Bemenetek Jel Logikai sszerendels Cm

Sz.szalag BE-kapcsols ny.gomb SART benyomva: SART=1 I0.0

Sz.szalag KI-kapcsols ny.gomb STOP benyomva: STOP=0 I0.1

Sz.szalag futsjelz S2 impulzus: S2=1 I0.2

Kimenetek

Szlltszalag motor Mot mkdtetve: Mot=1 Q0.0

ZEMBEN jelzlmpa UZEMBEN vilgt, ha: UZEMBEN =1 Q0.1

HIBA jelzlmpa HIBA vilgt, ha: HIBA =1 Q0.2

75
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Munkadarabok tmeneti trolsa


Egy szerelsi tvonalon a munkadarabok feltorldsnak elkerlsre tmeneti trol asztalt
ptenek be. A munkadarabok berkezst s kiadst optikai rzkelk jelzik, melyek
impulzusait egy szmllba vezetjk. Ha a trolban lv munkadarabok szma elri a
maximumot (30 db), le kell lltani a bejv szalag tovbbt motorjt. Ha a munkadarabok
szma a trolban 10 al cskken, (als hatrrtk), a vezrls bekapcsolja a jelzlmpt. A
szmll trlse zemkezdetkor, res trol mellett, a trlgomb benyomsval lehetsges.

33. bra tmeneti munkadarab-trol

sszerendelsi tblzat

Bemenetek Jel Logikai sszerendels Cm

BE/KI kapcsol START bekapcsolva: START=1 I0.0

Trlgomb torlo benyomva: torlo=1 I0.1

Belps optikai rzkelje OPT1 jelez, ha: OPT1=1 I0.2

Kilps optikai rzkelje OPT2 jelez, ha: OPT2=1 I0.3

Kimenetek

Szlltszalag motorja Mot mkdtetve, ha: Mot=1 Q0.0

Jelzlmpa JELZES vilgt, ha: JELZES =1 Q0.1

76
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Funkciterv Utastslista
PROGRAM mdtarol
VAR
START AT %I0.0.0.0.0: BOOL;
torlo AT %I0.0.0.0.1: BOOL;
OPT1 AT %I0.0.0.0.2: BOOL;
OPT2 AT %I0.0.0.0.3: BOOL;
Mot AT %Q0.0.0.0.0:BOOL;
JELZES AT %Q0.0.0.0.1: BOOL;
SZAMLALO: CTUD;
MD_MAX: INT := 30;
MD_MIN: INT := 10;
END_VAR

(*SZMLL*)
LD OPT1
ST SZAMLALO.CU
LD OPT2
ST SZAMLALO.CD
LD torlo
ST SZAMLALO.RESET
CAL SZAMLALO

(*SSZEHASONLTS <30*)
LD SZAMLALO.CV
LT MD_MAX
AND START
ST Mot

(*SSZEHASONLTS <=10*)
LD SZAMLALO.CV
LE MD_MIN
AND START
ST JELZES

END_PROGRAM

77
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Tiszttberendezs elektro-pneumatikus vezrlse


Egy tiszttberendezs tarteleme (kosr) pneumatikus munkahenger segtsgvel engedhet
le a tiszttoldatba s emelhet fel csepegtetsi ill. cserlsi llapotba. A munkahengerre a
mkdtet levegt a 4/2 utas elektromgneses szelep segtsgvel kapcsoljuk a megfelel
irnyba.
A feladat: hromszori leengeds s felemels utn a kiindulsi helyzetbe kell vinni a
dugattyt. Ekzben mindig 10 s-ig a tiszttoldatban kell maradnia a tartkosrnak. A
tiszttciklus START nyomgomb megnyomsval indthat. Az L1 lmpa a tiszttsi ciklus
alatt folyamatosan vilgt.

35. bra A tiszttsi ciklus iddiagramja

34. bra Tiszttberendezs

sszerendelsi tblzat

Bemenetek Jel Logikai sszerendels Cm

BE/KI kapcsol START benyomva: START=1 I0.0

fels vgllskapcsol S1 jelez, ha: S1=1 I0.1

als vgllskapcsol S2 jelez, ha: S2=1 I0.2

Kimenetek

Munkahenger le Y1 mkdtetve: Y1=1 Q0.0

Munkahenger fel Y2 mkdtetve: Y2=1 Q0.1

Lmpa L1 vilgt, ha: L1=1 Q0.2

78
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

Funkciterv Utastslista
Bekapcsolsi impulzus: PROGRAM TISZTIT
VAR
START AT %I0.0.0.0.0:
BOOL;
S1 AT %I0.0.0.0.1: BOOL;
S2 AT %I0.0.0.0.2: BOOL;
Y1 AT %Q0.0.0.0.0: BOOL;
Y2 AT %Q0.0.0.0.1: BOOL;
L1 AT %Q0.0.0.0.2: BOOL;
T1: TON;
Kosr fel:
T1KONST: TIME := t#10s;
SZAMLALO: CTD;
CIKLUS: INT := 3;
IMPULZUS: R_TRIG;
IMP: BOOL;
END_VAR

(*SART IMPULZUS*)
CAL IMPULZUS(CLK :=START|
Kosr le: IMP := Q)

(*KOSR FEL*)
CAL T1(IN := S2,PT :=T1KONST)

LD T1.Q
S Y2
LD S1
R Y2

(*KOSR LE*)
LD IMP
ORN SZAMLALO.Q
AND S1
A szmll s a mkdst jelz lmpa: S Y1
LD S2
R Y1

(*SZMLL*)
CAL SZAMLALO(
CD := Y2,
LOAD := IMP,
PV := CIKLUS
)

LD IMP
S L1
LD SZAMLALO.Q
AND S1
R L1
END_PROGRAM

79
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC 1131-3 szabvny szerint

Gyakorl feladat: utastslista elemzse III.


Feladat: rja t az albbi utastslistt funkcitervbe, majd prblja meg elemezni a
bemenjel s a kimenjel kapcsolatt, ha a bemenjel 1-rl 0-ra vlt, s ott is marad!

PROGRAM elemz3
VAR
BE AT %I0.0.0.0.0:BOOL;
KI AT %Q0.0.0.0.0:BOOL;
T1: TP;
T2: TP;
T3: TON;
C1: CTUD;
M0: BOOL;
M1: BOOL;
M2: BOOL;
M3: BOOL;
M4: BOOL;
END_VAR
VAR constant
T1K: TIME := T#1S;
T2K: TIME := T#1S;
T3K: TIME := T#11S;
END_VAR
LDN BE
AND M4
ST M0
LD BE
ST M4
LD M0
OR M3
ST C1.LOAD
LD 5
ST C1.PV
LD M1
ST C1.CD
CAL C1

LDN C1.QD
ANDN M2
ST T1.IN
LD T1K
ST T1.PT
CAL T1
LD T1.Q
ST M1
LDN M1
ANDN BE
ST T2.IN
LD T2K

80
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC 1131-3 szabvny szerint

ST T2.PT
CAL T2

LD T2.Q
ST M2
LD C1.QD
ANDN BE
ST T3.IN
LD T3K
ST T3.PT
CAL T3
LD T3.Q
ST M3
LD M1
ST KI
END_PROGRAM

A bemenjel idbeli vltozsa:

I0

A kimenjel idbeli alakulsa a bemenjel fggvnyben (megoldand feladat!):


Q0

81
Forrs: http://www.doksi.hu

Jancskrn Anweiler Ildik: PLC programozs az IEC1131-3 szabvny szerint KZIRAT!

82

You might also like