Milyen egységekből áll egy PLC, hogyan hajtja végre a programot, és milyen szempontok szerint csoportosítjuk a vezérlőket?

Az előző fejezetben megtudtad, hogy a PLC tárolt programú, ipari kivitelű digitális eszköz. Most nézzük meg belülről: milyen részekből áll, és hogyan dolgozik. A fejezet két kulcsfogalmat vezet be, amelyek a könyv további részét végigkísérik: a galvanikus leválasztást és a ciklikus programvégrehajtást a folyamatkép fogalmával.

Ez a fejezet az írásbeli vizsga „PLC felépítése, csoportosítása” témakörét (10%) fedi le, és alapot ad a „PLC hardware ismerete” témakörhöz (20%) is, amelyet a 7. fejezet folytat a WAGO CC100 konkrét adataival.

2.1 A PLC fő egységei

Bármilyen gyártótól származik is a vezérlő, ugyanazok a funkcionális egységek találhatók meg benne. A szakirodalom egybehangzóan a következőket sorolja fel:1 2 3

A PLC HATÁRA bemenetiegység (DI/AI) CPU(központi egység) kimenetiegység (DO/AO) tápegység24 V DC memóriaprogram + adat kommunikációsinterfész érzékelők(külvilág) beavatkozók(külvilág) belső busz galvanikus leválasztás galvanikus leválasztás programozó eszköz
2.1. ábra. A PLC funkcionális blokkvázlata. A be- és kimeneti egységek galvanikusan leválasztva kapcsolódnak a külvilághoz, az egységeket belső busz köti össze.
Egység Feladata
Központi egység (CPU) értelmezi a bemeneti jeleket, végrehajtja a tárolt programot, és biztosítja a kimeneti jelek beállítását
Memória a program és az adatok tárolása
Tápegység a belső elektronika ellátása; a konfiguráció saját tápegységgel rendelkezik, jellemzően DC 24 V törpefeszültségről
Bemeneti egység (DI/AI) a külvilág jeleinek fogadása, jelszint-illesztés, galvanikus leválasztás
Kimeneti egység (DO/AO) a beavatkozók működtetése; relés vagy elektronikus kivitelben
Kommunikációs interfész adatcsere a programozó eszközzel és más készülékekkel
Belső busz az egységek összekötése, a modulok illesztése
Programozó eszköz a program elkészítése és letöltése — ma jellemzően PC a fejlesztőkörnyezettel
Intelligens egységek célfeladatra kifejlesztett, önálló feldolgozást végző modulok
📗 Központi egység (CPU)

A CPU az az egység, amely „értelmezi a bemeneti jeleket és biztosítja a kimeneti jelek beállítását”1 — vagyis végrehajtja a memóriában tárolt programot, és annak eredménye alapján dönt a kimenetek állapotáról.

A memória mérete a régebbi szakirodalomban szó (word) egységben szerepel: „1 kiloszó = 1024 × 16 bit”.3 Ma inkább kilobájtban vagy megabájtban adják meg — a 7. fejezetben látni fogod, hogy a WAGO CC100 memóriája már gigabájtos nagyságrendű.

💡 Miért nem „csak egy számítógép”?

Egy PC-ben is van CPU, memória és tápegység. A PLC-t három dolog különbözteti meg: a galvanikusan leválasztott, ipari jelszintű be- és kimenetek (2.2. pont), a ciklikus, determinisztikus programvégrehajtás (2.3. pont), és az ipari kivitel (rezgésállóság, tág hőmérséklet-tartomány, sínre szerelhetőség). Ezek nélkül egy szoftver akkor is „automatizálhat”, ha PC-n fut — de ipari környezetben nem lenne megbízható.

2.2 Galvanikus leválasztás

A PLC olyan környezetben dolgozik, ahol mágneskapcsolók, motorok és frekvenciaváltók kapcsolnak nagy áramokat. Ha a külvilág vezetékei közvetlenül a processzor elektronikájához csatlakoznának, egyetlen tranziens feszültséglöket tönkretenné a vezérlőt.

A megoldás a galvanikus leválasztás: a jel nem vezetéken, hanem fényen keresztül jut át a bemeneti fokozatból a belső elektronikába. Ezt a feladatot az optocsatoló végzi, amely „továbbítja a belső elektronika felé (galvanikusan elválasztás)” a bemeneti jelet.3

📗 Galvanikus leválasztás

Két áramkör olyan összekapcsolása, amelynél nincs közöttük vezetőkapcsolat: a jel optikai, mágneses vagy kapacitív úton jut át. Így a két áramkör eltérő potenciálon lehet, és a zavarok nem terjednek át egyikről a másikra.

Gyakorlati következmények, amelyeket a bekötésnél érezni fogsz (7. fejezet):

  • a bemenetek és a kimenetek külön tápellátást kaphatnak, sőt jellemzően kapnak is;
  • egy hibás bekötés a külső oldalon nem feltétlenül teszi tönkre a CPU-t;
  • a leválasztás nem véd minden ellen: a tápfeszültség felcserélése vagy túlfeszültség továbbra is károsíthatja a modult.

2.3 A ciklikus programvégrehajtás

Ez a fejezet — sőt az egész könyv — legfontosabb működési elve. A PLC-program nem úgy fut, mint egy hagyományos számítógépes program, amely elindul, lefut és véget ér. A PLC-program körbe-körbe fut, végtelenítve, amíg a vezérlő RUN állapotban van.

Egy tipikus ciklus így épül fel:1

„Egy tipikus PLC ciklus azzal kezdődik, hogy a CPU beolvassa a bemenetek státuszát. Ezután a PLC programja kerül végrehajtásra. A program végrehajtása után a PLC elvégzi a belső diagnosztikai és kommunikációs feladatokat. Végül a CPU frissíti a kimenetek státuszát.”

1. Bemenetek beolvasása a kapcsok állapota → folyamatkép (PII) 2. Programvégrehajtás a program a PII-t olvassa 3. Belső feladatok diagnosztika, kommunikáció 4. Kimenetek frissítése folyamatkép (PIQ) → kapcsok CIKLUS (ciklusidő) A program egy cikluson belül a folyamatkép állandó pillanatképét látja — a bemenet értéke végrehajtás közben nem változik meg.
2.2. ábra. A ciklikus programvégrehajtás négy fázisa. A ciklus végén minden kezdődik elölről.
Fázis Mi történik?
1. Bemenetek beolvasása a CPU beolvassa a bemeneti kapcsok pillanatnyi állapotát, és eltárolja a folyamatképben
2. Programvégrehajtás a felhasználói program lefut, a bemenetek helyett a folyamatképet olvasva
3. Belső feladatok diagnosztika, kommunikáció, rendszerfeladatok
4. Kimenetek frissítése a program által beállított értékek a kimeneti kapcsokra kerülnek
📗 Ciklusidő (scan time)

Egy teljes ciklus lefutásának ideje. Ettől függ, hogy a vezérlő milyen gyorsan reagál egy bemeneti változásra: ha a jel éppen a bemenetolvasás után billen át, majdnem egy teljes ciklust vár a következő beolvasásig, és a hatása csak annak a ciklusnak a végén jut ki — a reakcióidő legrosszabb esetben tehát csaknem két ciklusnyi.

⚠️ Amit ebből meg kell jegyezned

A PLC nem azonnal reagál. Ha egy nyomógombot megnyomsz, a hatás legkésőbb a következő ciklus kimenetfrissítésénél jelenik meg. Ezért nem lehet a PLC-program az egyetlen védelem egy gyors, veszélyes folyamatnál — ezt a gondolatot a 24. fejezet (biztonság) viszi tovább.

2.4 A folyamatkép (process image)

Az előző pontban kétszer is szerepelt a folyamatkép. Ez a fogalom annyira fontos, hogy külön pontot érdemel — a kezdők egyik legnagyobb „aha-élménye” szokott lenni.

A régebbi szakirodalom a végrehajtást három fázisban írja le, és megnevezi a két memóriaterületet:2

  1. a bemeneti értékek beolvasása a Process Input Image (PII) területre;
  2. a felhasználói program futtatása;
  3. a Process Output Image (PIQ) kiíratása a kimeneti egységekre.
📗 Folyamatkép (PII / PIQ)

A folyamatkép a bemenetek és kimenetek állapotának memóriabeli másolata. A program nem közvetlenül a kapcsokat olvassa és írja, hanem ezt a másolatot: a bemeneti folyamatképet (PII) olvassa, és a kimeneti folyamatképbe (PIQ) ír.

Ennek két, gyakorlatilag nagyon fontos következménye van.

Az első: a bemenet értéke egy cikluson belül nem változik meg. Ha a program elején megvizsgálod egy érzékelő állapotát, majd húsz sorral lejjebb újra, ugyanazt az értéket kapod — akkor is, ha közben a valóságban átbillent. Ez nem hiba, hanem tervezett viselkedés: így a program konzisztens pillanatképet lát a folyamatról, és nem fordulhat elő, hogy ugyanaz a feltétel a program két pontján ellentmondóan viselkedik.

A második: a kimenet nem azonnal kapcsol. Ha a program közepén igazra állítasz egy kimenetet, majd a végén hamisra, a fizikai kimenet soha nem fog bekapcsolni — mert a kapcsokra csak a ciklus végén, a PIQ tartalma alapján kerül ki az érték. A programon belüli „villogás” nem jut ki a valóságba.

💡 Így képzeld el

A folyamatkép olyan, mint egy fénykép, amelyet a ciklus elején készít a vezérlő a bemenetekről. A program ezzel a fényképpel dolgozik, nem az élő képpel. Amikor végzett, a rajzasztalán elkészült „kimeneti fényképet” egyszerre továbbítja a kapcsokra.

2.5 Ugyanez a CODESYS-ben: a task

A ciklikus végrehajtást a CODESYS-ben a task fogalma írja le. A gyártói dokumentáció meghatározása szerint:4

„A task is the chronological flow unit for your IEC program. The task defines the call chain of your POUs (call hierarchy).”

Magyarul: a task az IEC-program időbeli végrehajtási egysége, amely meghatározza a programegységek (POU-k) hívási láncát. Egyszerűbben: a task az, ami hívja a programodat — és a task beállításai döntik el, milyen gyakran.

A CODESYS öt task-típust ismer:5

Típus Mikor fut?
Cyclic (ciklikus) időzítetten, beállított ciklusidővel — ez a leggyakoribb
Freewheeling (szabadonfutó) saját ciklusidő nélkül, folyamatos hurokban újraindulva
Event (eseményvezérelt) egy eseményváltozó felfutó élére
External (külső) célrendszer-függő külső események alapján
Status (állapotvezérelt) amíg egy eseményváltozó igaz

A taskoknak prioritásuk is van: a lehetséges értékek 0–31, ahol a 0 a legmagasabb prioritás.5 Ha több task fut ugyanazon a processzormagon, a nagyobb prioritású (kisebb számú) előbb jut szóhoz; azonos prioritásnál a rendszer körbeforgó időszeletelést (round-robin) alkalmaz.5

⚠️ Fordított logika

A prioritásnál a kisebb szám a magasabb prioritás. A 0-s prioritású task megelőzi a 15-öst. Ez sok kezdőt megzavar, mert intuitívan a nagyobb szám tűnne „fontosabbnak”.

Mi történik, ha a program nem fér bele a beállított ciklusidőbe? Erre való a watchdog (figyelőkutya). Ha a watchdog aktív, és a program túllépi a beállított időt, akkor a task „is halted with an error status (exception)”, és „the application in whose task the error occurred and its child applications are also halted” — vagyis a task kivétellel leáll, és vele leáll az alkalmazás is.5

💡 Előretekintés

A 8. fejezetben beállítod az első taskodat, a 23. fejezetben pedig megméred, mennyi ideig fut a programod: a CODESYS task-monitorozó lapja megmutatja a legutóbbi, az átlagos, a minimális és a maximális ciklusidőt. Ott lesz igazán érthető, miért fontos a watchdog.

2.6 Csoportosítás építési mód szerint

A PLC-ket többféleképpen csoportosíthatjuk. A vizsgán a leggyakoribb az építési mód szerinti felosztás.

📗 Kompakt PLC

Olyan vezérlő, amely egyetlen házban „a legtöbb funkcionális egységet tartalmazza, de rendszerint csak I/O egységgel bővíthető”.3 A CPU, a tápegység és a be-/kimenetek gyárilag együtt vannak.

📗 Moduláris PLC

Olyan vezérlő, amelynél „egy busz sávra tetszés szerinti modulok csatlakoztathatók”.3 A tápegység, a CPU és az egyes I/O modulok külön egységek, amelyeket a feladathoz igazítva állítunk össze.

Szempont Kompakt Moduláris
Felépítés egy házban, gyárilag összeállítva különálló modulok közös buszon
Bővíthetőség korlátozott (jellemzően I/O-val) széles körű, szinte tetszőleges
Beszerzési költség kis feladatra alacsonyabb magasabb
Helyigény kisebb nagyobb
Tipikus alkalmazás gépegység, kis berendezés, oktatás gyártósor, összetett technológia

A szakirodalom külön kiemeli a mikro PLC kategóriát is: ezek „mágneskapcsolónyi méretűek, 5–10 bemenettel”.3

💡 A könyv eszköze

A WAGO CC100 kompakt vezérlő: egyetlen házban tartalmazza a CPU-t, a tápellátást és a be-/kimeneteket. A 7. fejezetben látni fogod a pontos adatait. A bővítést nálunk nem helyi modulokkal, hanem hálózaton keresztül, Modbus TCP-s I/O-modullal oldjuk meg — ez a 21. fejezet témája, és egyben a vizsga „modulbővítés” projektmunkájának alapja.

2.7 Csoportosítás méret és alkalmazás szerint

Egy másik gyakori felosztás a kezelhető be- és kimenetek száma szerinti:1

Kategória I/O-pontszám
Nano PLC < 15
Mikro PLC 15–128
Közepes PLC 128–512
Nagy PLC > 512
⚠️ Ez a besorolás tájékoztató jellegű

A méret szerinti kategóriák határai forrásonként és gyártónként eltérnek. Ugyanaz a szakirodalom, amely a mikro PLC-t 15–128 I/O-pontra teszi,1 egy másik helyen „mágneskapcsolónyi, 5–10 bemenetes” eszközként írja le.3 A könyv ezért ezeket a számokat tájékoztató adatként közli, és nem tekinti szabványos besorolásnak. A vizsgán a kompakt/moduláris felosztás a biztos alap; a méret szerintit érdemes megemlíteni, de a határértékek pontos idézgetése helyett a nagyságrendekre hivatkozz.

Alkalmazás szerint a szakirodalom egyfeladatos, többfeladatos és vezérlés-menedzsment rendszereket különböztet meg.1 A gyakorlatban ez inkább a felhasználás léptékét írja le, mint a készülék felépítését.

2.8 Összefüggés a könyv többi részével

Érdemes már most látni, hova vezetnek a most tanult fogalmak:

Fogalom Hol folytatódik?
galvanikus leválasztás 3. fejezet (I/O jelek), 7. fejezet (a CC100 bemenetei)
ciklikus végrehajtás, folyamatkép 10. fejezet (változók), 18. fejezet (élfigyelés), 23. fejezet (ciklusidő mérése)
task, prioritás, watchdog 8. fejezet (beállítás), 23. fejezet (mérés)
kompakt vs. moduláris 7. fejezet (CC100), 21. fejezet (hálózati bővítés)
CPU, memória, I/O 7. fejezet (a CC100 konkrét adatai)

Különösen a folyamatkép és a ciklikus végrehajtás kap még szerepet: a 18. fejezetben ezekből vezetjük le, miért van szükség élfigyelésre — ha ugyanis egy nyomógomb sok cikluson át igaz, akkor „egyszeri” hatást (például számlálást) csak az él érzékelésével lehet elérni.

Gyakorlatok

🛠️ 2.1. feladat — A ciklus időrendje

Egy PLC-program a következőket hajtja végre, ebben a sorrendben:

  1. Lampa := TRUE;
  2. (további 50 sor program, amely a Lampa változót nem érinti)
  3. Lampa := FALSE;

Kérdés: bekapcsol-e egyáltalán a lámpa a fizikai kimeneten? Indokold a folyamatkép működésével! Mit kellene tenni, ha azt szeretnénk, hogy a lámpa rövid ideig valóban felvillanjon?

🛠️ 2.2. feladat — Ciklusidő és reakció

Egy vezérlő ciklusideje 10 ms. Egy érzékelő jele közvetlenül a bemenetolvasás után billen át.

  • Mennyi idő telik el legrosszabb esetben addig, amíg a jel hatása megjelenhet a kimeneten?
  • Hány ciklus alatt biztosan észreveszi a vezérlő a jelet, ha az legalább 25 ms-ig fennáll?
  • Mi történik, ha a jel csak 3 ms-ig áll fenn? Miért kockázatos ez, és milyen érzékelővel vagy programozási megoldással lehet kivédeni?

(A harmadik kérdéshez a 18. fejezet ad teljes választ, de próbáld meg magadtól végiggondolni.)

🛠️ 2.3. feladat — Kompakt vagy moduláris?

Döntsd el, melyik felépítést választanád, és indokold két-két érvvel:

  1. Egy présgép vezérlése: 12 digitális bemenet, 8 digitális kimenet, nincs tervezett bővítés.
  2. Egy gyártósor, amely három ütemben épül ki, és a végén 240 I/O-pontot fog kezelni, köztük analóg mérésekkel és hőmérséklet-bemenetekkel.
  3. Egy oktatólabor 15 munkaállomással, ahol a hallgatók alapfeladatokat gyakorolnak.

Összefoglalás

A PLC ugyanazokból a funkcionális egységekből épül fel gyártótól függetlenül: CPU, memória, tápegység, be- és kimeneti egységek, kommunikációs interfész, belső busz és programozó eszköz. A külvilág felé a be- és kimenetek galvanikusan leválasztva csatlakoznak, jellemzően optocsatolóval — ez védi a vezérlő elektronikáját az ipari környezet zavaraitól.

A program ciklikusan fut: bemenetek beolvasása → programvégrehajtás → belső feladatok → kimenetek frissítése, majd újra elölről. A program nem a kapcsokat olvassa, hanem a folyamatképet (PII/PIQ), ezért egy cikluson belül a bemenet értéke állandó, és a kimenet csak a ciklus végén kapcsol. Ez a ciklusidő fogalmához vezet: a vezérlő reakciója legrosszabb esetben csaknem két ciklusnyit késik.

A CODESYS-ben mindezt a task írja le, amely meghatározza a POU-k hívási láncát. Öt task-típus létezik, a prioritás 0–31 között állítható, ahol a 0 a legmagasabb, és a watchdog kivétellel leállítja a taskot, ha a program túllépi a ciklusidőt.

A vezérlőket építési mód szerint kompakt és moduláris kategóriába soroljuk; a méret és az alkalmazás szerinti felosztás tájékoztató jellegű, gyártófüggő. A könyv eszköze, a WAGO CC100, kompakt vezérlő.

Ellenőrző kérdések

  1. Sorold fel a PLC fő funkcionális egységeit, és mondd meg mindegyikről egy mondatban, mi a feladata!
  2. Mi a galvanikus leválasztás, és milyen alkatrész valósítja meg a bemeneti oldalon?
  3. Nevezd meg a ciklikus programvégrehajtás négy fázisát a helyes sorrendben!
  4. Mi a folyamatkép, és mi a PII és a PIQ közötti különbség?
  5. Miért nem változik meg egy bemenet értéke a program futása közben?
  6. Egy program a ciklus elején bekapcsol, a végén kikapcsol egy kimenetet. Mit fogsz látni a kapcson? Miért?
  7. Mi a task a CODESYS-ben, és mit határoz meg?
  8. Milyen tartományban állítható a task prioritása, és melyik érték jelenti a legmagasabb prioritást?
  9. Mit tesz a watchdog, ha a program túllépi a beállított ciklusidőt?
  10. Mi a különbség a kompakt és a moduláris PLC között? Melyikbe tartozik a WAGO CC100?

Tudáspróba

Válaszd ki az egyetlen helyes választ!

1. Melyik NEM tartozik a PLC alapvető funkcionális egységei közé? a) nyomtatóillesztő b) tápegység c) központi egység (CPU) d) bemeneti egység

2. A galvanikus leválasztás célja: a) a jel erősítése; b) a belső elektronika védelme, mert nincs vezetőkapcsolat a két oldal között; c) a ciklusidő csökkentése; d) a memóriaigény csökkentése.

3. A ciklikus végrehajtás helyes sorrendje: a) programvégrehajtás → bemenetolvasás → kimenetfrissítés → belső feladatok; b) kimenetfrissítés → bemenetolvasás → programvégrehajtás → belső feladatok; c) bemenetolvasás → programvégrehajtás → belső feladatok → kimenetfrissítés; d) belső feladatok → kimenetfrissítés → bemenetolvasás → programvégrehajtás.

4. A folyamatkép azt jelenti, hogy: a) a program közvetlenül a bemeneti kapcsokat olvassa; b) a kimenetek azonnal követik a program változóit; c) a vezérlő fényképet készít a gépről; d) a program a bemenetek és kimenetek memóriabeli másolatával dolgozik.

5. Ha a program a ciklus elején igazra, a végén hamisra állít egy kimenetet, akkor a fizikai kimeneten: a) semmi nem történik, mert a PIQ csak a ciklus végén kerül ki; b) rövid impulzus jelenik meg; c) a kimenet tartósan bekapcsol; d) hibaüzenet keletkezik.

6. A CODESYS-ben a task: a) egy változótípus; b) az IEC-program időbeli végrehajtási egysége, amely a POU-k hívási láncát határozza meg; c) a bemenetek memóriaterülete; d) a hálózati kommunikáció beállítása.

7. A task-prioritás lehetséges értékei és a legmagasabb prioritás: a) 1–10, a 10 a legmagasabb; b) 0–31, a 31 a legmagasabb; c) 0–31, a 0 a legmagasabb; d) 0–255, a 128 a legmagasabb.

8. A watchdog kioldásakor: a) a task figyelmeztetést ír a naplóba, de tovább fut; b) a vezérlő átvált szabadonfutó módba; c) a ciklusidő automatikusan megnő; d) a task kivétellel leáll, és az alkalmazás is leáll.

9. A kompakt PLC jellemzője: a) egyetlen házban tartalmazza a legtöbb funkcionális egységet, és rendszerint csak I/O-val bővíthető; b) a tápegység, a CPU és az I/O külön modulokban van; c) kizárólag analóg jelekkel dolgozik; d) nem programozható.

10. A méret szerinti PLC-besorolás (nano, mikro, közepes, nagy): a) nemzetközi szabvány rögzíti pontos határértékekkel; b) tájékoztató jellegű, a határok forrásonként és gyártónként eltérnek; c) csak moduláris vezérlőkre alkalmazható; d) a memória mérete alapján történik.

A megoldókulcs a B függelékben található.

A fejezet forrásai


  1. Pletl Szilveszter – Kincses Zoltán: PLC és SCADA rendszerek. Egyetemi tananyag, Pannon Egyetem / Szegedi Tudományegyetem, 2014. Elérés: mik.uni-pannon.hu/docs/tananyagok/PLC_es_SCADA.pdf (2026-07-29). ↩↩↩↩↩↩

  2. Szabó Géza: Programozható logikai vezérlők. Segédlet az Irányítástechnika I. c. tárgyhoz, BME Közlekedésautomatikai Tanszék, 1995. október. Elérés: 2ge.hu/download/plc.pdf (2026-07-29). ↩↩

  3. PLC-k általános felépítése. BME oktatói segédlet (szerző és év a dokumentumban nincs feltüntetve). Elérés: oktatok.reak.bme.hu/farkas/.../PLC-k_altalanos_felepitese-1.pdf (2026-07-29). A forrás szerző nélküli, ezért a könyvben csak más forrás megerősítése mellett használjuk. ↩↩↩↩↩↩↩

  4. CODESYS Online Help: Task Configuration. CODESYS GmbH, V3.5.22.0. Elérés: content.helpme-codesys.com/en/CODESYS Development System/_cds_f_task_configuration.html (2026-07-29). ↩

  5. CODESYS Online Help: Task Configuration – reference. CODESYS GmbH, V3.5.22.0. Elérés: content.helpme-codesys.com/en/CODESYS Development System/_cds_f_reference_task.html (2026-07-29). ↩↩↩↩

Mennyire volt hasznos ez a fejezet?

Még nincs értékelés.