Hogyan fordítunk le egy prózában megírt működési igényt egyértelmű, végrehajtható logikára — 60 perc alatt, a vizsgán is.

Ez a fejezet az írásbeli vizsga 2. vizsgarészének teljes tárgya: „Megadott technológiai leírás alapján a folyamat értelmezése, folyamatábra készítése” — 60 perc, és az írásbeli értékelés 20%-a (10% folyamatértelmezés + 10% folyamatábra-készítés).

De nem csak vizsgaanyag. Ez a legelső lépés minden valódi PLC-feladatnál: az ügyfél vagy a technológus prózában mondja el, mit szeretne, neked pedig ebből kell egyértelmű, hézagmentes logikát csinálnod. Aki ezt jól csinálja, annak a programírás már csak gépelés.

5.1 Mi a folyamatábra, és miért ezt kéri a vizsga?

📗 Folyamatábra

A folyamatábra „nem más, mint algoritmusok grafikus megjelenítése”.1 Az elemi lépéseket alakzatokkal jelenítjük meg, majd nyilakkal kötjük össze, amelyek meghatározzák a végrehajtás sorrendjét.

A vizsga azért ezt kéri, mert ez méri a legjobban azt a képességet, amit a programkövetelmény így fogalmaz meg: a jelölt „a technológiai tervdokumentáció alapján az irányítandó rendszer vagy berendezés működését tanulmányozza, folyamatábrát készít”, és „meghatározza a szükséges be- és kimenetek számát”.

💡 A folyamatábra nyelvfüggetlen

A folyamatábra nem ST, nem LD és nem SFC — hanem a gondolat. Ugyanaz a folyamatábra megvalósítható bármelyik nyelven. Ezért érdemes vele kezdeni: ha az ábra hibás, a program is az lesz, bármilyen nyelven írod meg.

5.2 A jelölések

Start / Vége művelet döntés be-/kimenet alprogram össze-kötő oldalak közti összekötő ellipszistéglalap rombuszparalelogramma dupla oldalú téglalapkis kör ötszög A folyamatábra jelölései
5.1. ábra. A folyamatábra leggyakoribb jelölései. A nemzetközi gyakorlatban (ISO 5807) elterjedt alakzatok.
Alakzat Név Jelentése
ellipszis Start / Vége (terminátor) az algoritmus kezdete és vége1
téglalap elemi tevékenység (művelet) „egyszerű és egyértelmű lépést” tartalmaz, például értékadást1
paralelogramma be- és kimenet bemenet: adat fogadása; kimenet: információ közlése1
csúcsára állított rombusz feltétel / döntés „logikai kifejezés” szerepel benne, két kimenettel (igaz / hamis ág)1
dupla oldalú téglalap alprogram / beágyazás korábban már definiált utasítássorozatra hivatkozik1
kis kör oldalon belüli összekötő ugyanazon a lapon lévő pontok összekapcsolása3
ötszög oldalak közötti összekötő több lapra tördelt ábra összekapcsolása3
nyilak összekötő a végrehajtás sorrendjét jelzik1
⚠️ Forrásmegjegyzés

Az itt bemutatott jelölésrendszer a nemzetközi gyakorlatban elterjedt alakzatokat követi. A vonatkozó nemzetközi szabvány az ISO 5807:1985 („Information processing — Documentation symbols and conventions for data, program and system flowcharts…”), amely ötféle ábrához ad jelöléseket; a vizsga szempontjából a programfolyamábra a lényeges.3 A szabvány szövege nyilvánosan nem hozzáférhető, ezért a könyv nem állítja, hogy az alakzatok pontosan a szabvány szerintiek — a szakmai gyakorlatban azonban ezek használatosak, és a vizsgán ezeket várják.

5.3 Az öt szerkesztési szabály

Ezt az öt szabályt érdemes fejből tudni, mert a legtöbb pontveszteség ezekből ered:1

  1. Egy start, több vég. „Egy folyamatábrában maximum egy start szimbólum lehet, viszont több vég szimbólum is előfordulhat.”
  2. Irány. A nyilak egyértelműen meghatározzák a végrehajtási sorrend irányát. (A hagyományos olvasási irány fentről lefelé, illetve balról jobbra.)
  3. Ki- és bemenő nyilak. Egy tevékenységhez általában egy kimenő nyíl tartozik; több bemenő nyíl viszont találkozhat egy pontban.
  4. Elágazások visszazárása. „Két ág egyesülnie kell azután, hogy divergáltak.”
  5. Ciklus. Az egyik ág visszavezet a feltételhez — ez adja a hurokszerkezetet.
⚠️ A leggyakoribb hiba

A döntésből pontosan két ág indul, és a két ágnak később egyesülnie kell. A kezdők leggyakoribb hibája, hogy az egyik ág „elveszik”: van olyan állapot, ahonnan nincs továbbhaladás. Egy ilyen ábra nem algoritmus, mert nem határozza meg, mi történjen minden esetben.

💡 Gyűjtőcsomópont

Az elágazások visszazárásához hasznos a gyűjtőcsomópont fogalma: ez az a pont, ahol az ágak összefutnak, és amelyen „való áthaladás nem módosít a program állapotán”.2 Rajzban gyakran egy kis kör vagy egyszerűen egy találkozási pont jelöli.

5.4 A három algoritmikus szerkezet

Minden algoritmus felépíthető három szerkezetből. Az egyetemi tananyag megfogalmazása szerint „strukturált programnak” azokat a programokat nevezzük, amelyek csak három algoritmikus szerkezetet tartalmaznak: szekvencia, elágazás és ciklus.2

SZEKVENCIAELÁGAZÁSCIKLUS 1. lépés2. lépés3. lépés feltételigen ágnem ág feltételciklusmag igen nem igen nem a két ágnak egyesülnie kell az ág visszavezet a feltételhez
5.2. ábra. A három algoritmikus szerkezet folyamatábrán: szekvencia, elágazás és ciklus.
Szerkezet Folyamatábrán ST-nyelvi megfelelője (12. fejezet)
szekvencia egymás alá kötött téglalapok egymás után írt utasítások
elágazás rombusz két ággal, majd egyesülés IF … THEN … ELSE … END_IF, CASE
ciklus visszavezető ág a feltételhez WHILE, REPEAT, FOR
⚠️ Fontos: a „strukturált” szó két különböző dolgot jelent!
  • Algoritmuselméleti értelemben a strukturált program az, amely csak szekvenciát, elágazást és ciklust használ.2 Ez a most tanult fogalom.
  • A PLC-világban — és a programkövetelmény 9.1/4. pontjában — a „strukturált felépítésű program” mást jelent: több programegységre (POU-ra) bontott, hívási hierarchiába szervezett programot, szemben a lineáris felépítéssel.

A kettő nem ugyanaz. A PLC-értelmezéssel a 11. fejezet foglalkozik. A vizsgán figyelj arra, hogy a kérdés melyik jelentésre vonatkozik!

5.5 A vizsgamódszer: négy lépés 60 perc alatt

A vizsgán kapsz egy technológiai leírást, és 60 perced van. Ez a négy lépés végigvezet rajta.

1. lépés — Aláhúzás

Olvasd végig a leírást, és két különböző színnel húzd alá:

  • bemenetek: minden, amit a rendszer érzékel (nyomógomb, kapcsoló, érzékelő, végállás, hőmérséklet, szint);
  • kimenetek: minden, amit a rendszer működtet (motor, szelep, lámpa, mágneskapcsoló, jelzés).

Ez a lépés önmagában megoldja a feladat felét, mert a technológiai leírás szavai szinte mindig megfeleltethetők egy-egy I/O-pontnak.

2. lépés — I/O-lista

Készíts táblázatot, és számold meg a be- és kimeneteket. A programkövetelmény ezt kifejezetten megköveteli: a jelölt „meghatározza a szükséges be- és kimenetek számát”.

Jel Típus Megnevezés Megjegyzés
DI1 digitális bemenet Start nyomógomb záró érintkező
DI2 digitális bemenet Stop nyomógomb bontó érintkező
… … … …
DO1 digitális kimenet Szalagmotor mágneskapcsoló 24 V DC tekercs
💡 A Stop mindig bontó!

Ipari gyakorlat: a leállító funkciót bontó (NC) érintkezővel valósítjuk meg. Így ha a vezeték elszakad, a rendszer leáll — nem pedig „nem lehet leállítani”. Ezt a gondolatot a 24. fejezet (biztonság) viszi tovább.

3. lépés — Vázlat

Először rajzold fel a fő működési sorrendet (szekvenciát), utána építsd be a feltételeket. Ne próbáld egyszerre megcsinálni: a legtöbb hiba abból ered, hogy valaki azonnal a részletekkel kezd.

4. lépés — Ellenőrzés

Kérdezd meg magadtól:

  • Minden ág visszazár? Nincs „elveszett” ág?
  • Van-e olyan állapot, ahonnan nincs kiút?
  • Mi történik vészleállításkor? (Erre a leírás gyakran nem tér ki, de a vizsgabizottság értékeli, ha gondolsz rá.)
  • Mi történik bekapcsoláskor? Elindul-e a gép magától? (Nem szabad!)
  • Egyértelmű minden feltétel? Egy rombuszban csak egy logikai kérdés legyen.

5.6 Első kidolgozott példa: futószalag indítás–leállítás

Technológiai leírás. „A futószalag a Start gomb megnyomására indul el, és a Stop gomb megnyomására áll meg. A vészgomb megnyomása bármikor azonnali leállást eredményez.”

1. lépés — aláhúzás. Bemenetek: Start gomb, Stop gomb, vészgomb. Kimenet: futószalag (motor).

2. lépés — I/O-lista.

Jel Típus Megnevezés Érintkező
DI1 bemenet Start nyomógomb záró (NO)
DI2 bemenet Stop nyomógomb bontó (NC)
DI3 bemenet Vészgomb visszajelzés bontó (NC)
DO1 kimenet Szalagmotor –

Összesen: 3 bemenet, 1 kimenet.

3–4. lépés — a folyamatábra.

Start Vészgomb nyomva? Start gomb nyomva? Szalag BE Stop gomb nyomva? Szalag KI Vége igen nem nem igen nem igen A vészgomb ága minden állapotból a „Szalag KI” lépéshez vezet.
5.3. ábra. A futószalag-vezérlés folyamatábrája. A vészgomb ága minden állapotból a leállításhoz vezet.
⚠️ Amit ez a példa tanít

A vészgomb nem egy a feltételek közül: minden állapotból a leállításhoz kell vezetnie, és a legmagasabb prioritást élvezi. Ezért van a rombusza a ciklus elején, és ezért vezet a kimenete közvetlenül a „Szalag KI” lépéshez.

Ugyanakkor: a 24. fejezetben látni fogod, hogy a vészleállítást hardveresen, a PLC-től függetlenül kell megvalósítani. A folyamatábrán szereplő vészgomb-ág a program reakciója — a valódi biztonsági funkciót biztonsági relé végzi.

5.7 További kidolgozott példák

2. példa — Két szivattyú váltakozó üzeme

Leírás. „Egy tartályt két szivattyú tölt. Egyszerre csak az egyik működhet. Az alsó szintkapcsoló jelzésére indul a soron következő szivattyú, a felső szintkapcsoló jelzésére leáll. A szivattyúk felváltva dolgoznak, hogy egyenletesen kopjanak.”

Kulcskérdések, amelyeket a leírás nem mond ki, de tisztázni kell:

  • Honnan tudja a rendszer, melyik szivattyú következik? (Egy tárolt állapot kell hozzá.)
  • Mi történik, ha az egyik szivattyú hibás? (A leírás nem tér ki rá — kérdezni kell.)
  • Mi történik bekapcsoláskor, ha a tartály félig van? (Definiálni kell a kiindulási állapotot.)

I/O-lista: 2 bemenet (alsó és felső szintkapcsoló), 2 kimenet (1. és 2. szivattyú) — plusz a gyakorlatban üzemzavar-visszajelzések.

Az ábra szerkezete: a fő ciklusban egy döntés vizsgálja az alsó szintet; ha aktív, egy további döntés dönti el, melyik szivattyú következik (a tárolt állapot alapján), majd elindítja azt, és átbillenti a tárolt állapotot a következő indításhoz.

💡 A „soron következő” fogalma

Amikor a leírásban ilyen szó szerepel — következő, felváltva, körben —, az mindig azt jelenti, hogy a rendszernek emlékeznie kell valamire két esemény között. A folyamatábrán ez egy tárolt állapot, a programban egy változó (10. fejezet), amely a ciklusok között megőrzi az értékét.

3. példa — Darabszámlálás és csomagolás

Leírás. „A szalagon érkező termékeket egy érzékelő számolja. Minden 12. termék után a csomagoló egy ciklust végez, majd a számláló nullázódik. A számlálót kézzel is lehet nullázni.”

Amit észre kell venni: a „minden 12. termék után” fordulat számlálót igényel; a „nullázódik” pedig azt jelenti, hogy a számláló értékét a ciklus végén vissza kell állítani. A kézi nullázás egy külön bemenet.

I/O-lista: 2 bemenet (termékérzékelő, kézi nullázás), 1 kimenet (csomagolóciklus indítása) — és a gyakorlatban egy visszajelzés arról, hogy a csomagoló befejezte a ciklust.

4. példa — Kézi és automata üzemmód

Leírás. „A gép kézi és automata üzemmódban működhet, egy kulcsos kapcsolóval választva. Kézi üzemmódban a kezelő az egyes mozgásokat külön gombokkal vezérli. Automata üzemmódban a gép a Start gombra végigfut a teljes cikluson. Üzemmódot váltani csak álló gépnél szabad.”

A kritikus mondat az utolsó. Az „üzemmódot váltani csak álló gépnél szabad” kikötés azt jelenti, hogy az üzemmódváltás feltételhez kötött — a folyamatábrán ez egy külön döntés, amely a gép állapotát vizsgálja.

Szerkezet: a fő ciklus elején egy döntés vizsgálja az üzemmódot, és két külön ágra vezet. Ez a példa alprogram-jelölést is használhat: „Kézi vezérlés” és „Automata ciklus” alprogramként jelölve, hogy a fő ábra áttekinthető maradjon.

5. példa — Hőmérséklet-tartás kétállású szabályozással

Leírás. „A kemencét 180 °C-on kell tartani. A fűtés bekapcsol, ha a hőmérséklet 178 °C alá esik, és kikapcsol, ha 182 °C fölé emelkedik. Ha a hőmérséklet 200 °C fölé megy, riasztás lép működésbe, és a fűtés lekapcsol.”

Amit ez tanít: a leírásban két különböző kapcsolási pont szerepel (178 és 182 °C), nem egy. Ez a hiszterézis: ha egyetlen kapcsolási pont lenne, a fűtés a határérték körül másodpercenként ki-be kapcsolna, és tönkremenne a mágneskapcsoló.

I/O-lista: 1 analóg bemenet (hőmérséklet), 2 kimenet (fűtés, riasztás).

💡 Ez már szabályozás?

Az 1. fejezet fogalmaival: ez zárt hatáslánc, mert a mért hőmérséklet visszahat a beavatkozásra — tehát szabályozás. De kétállású (ki–be) szabályozás, nem folytonos. A folytonos, PID-alapú megoldás analóg kimenetet igényelne.

5.8 Más algoritmusleíró eszközök

A folyamatábra nem az egyetlen lehetőség. Az algoritmusleíró eszközök között szerepel a folyamatábra, a struktogram, a Jackson-diagram, a leírás fával, a leírás programozási nyelven, a leírás mondatokkal, a leírás mondatszerű elemekkel és a leírás absztrakt függvényekkel.2

A könyv a folyamatábrát tárgyalja részletesen, mert a vizsga ezt kéri. Érdemes viszont tudni a struktogramról (Nassi–Shneiderman-diagram): ez dobozokba ágyazva ábrázolja ugyanazt a három szerkezetet, és nem használ nyilakat — ezért nem is lehet benne „elveszett ág”.

💡 A folyamatábrától az SFC-ig

A 15. fejezetben megismered a sorrendi funkciótervet (SFC), amely lényegében egy végrehajtható sorrendi ábra: lépések és átmenetek sorozata. Aki jól rajzol folyamatábrát, annak az SFC szinte magától jön — a folyamatábra „lépés” doboza az SFC lépése, a döntése pedig az átmenet feltétele lesz.

Gyakorlatok

🛠️ 5.1. feladat — Garázskapu

Készíts folyamatábrát az alábbi leírás alapján, és add meg az I/O-listát a be- és kimenetek számával!

„A garázskapu a távirányító gombjának megnyomására nyílni kezd. A felső végálláskapcsoló elérésekor a mozgás megáll. Újabb gombnyomásra a kapu záródni kezd, az alsó végálláskapcsolóig. Ha záródás közben a fénysorompó jelez, a kapu azonnal megáll, és visszanyílik a felső végállásig.”

Külön gondold végig: mi történjen, ha a gomb mozgás közben szólal meg?

🛠️ 5.2. feladat — A saját géped

Vedd elő az 1.2. feladatban készített leírást és I/O-listát a saját, ismert gépedről. Készíts hozzá folyamatábrát a fejezet négylépéses módszerével! Ellenőrizd az öt szerkesztési szabály szerint, és írd le, hol kellett a leírást pontosítanod, mert nem volt egyértelmű.

🛠️ 5.3. feladat — Hibakeresés ábrában

Az alábbi leírás egy hibás folyamatábráról szól. Mondd meg, melyik szerkesztési szabályt sérti, és hogyan javítanád:

„A döntés »igen« ága elindítja a motort, majd a Vége szimbólumhoz vezet. A »nem« ága visszatér a döntéshez. A motor leállítására nincs ág.”

Hány hibát találsz? (Legalább három van.)

Összefoglalás

A folyamatábra algoritmusok grafikus megjelenítése: alakzatok, amelyeket nyilak kötnek össze a végrehajtás sorrendjében. A legfontosabb jelölések az ellipszis (start/vége), a téglalap (művelet), a rombusz (döntés, két ággal), a paralelogramma (be-/kimenet) és a dupla oldalú téglalap (alprogram).

Öt szerkesztési szabály van: egy start, több vég; egyértelmű irány; egy kimenő nyíl tevékenységenként; a divergált ágaknak egyesülniük kell; a ciklus visszavezet a feltételhez. A leggyakoribb hiba az „elveszett ág”.

Minden algoritmus felépíthető három szerkezetből: szekvencia, elágazás, ciklus. Vigyázz: a „strukturált” szó az algoritmuselméletben mást jelent, mint a PLC-programozásban — utóbbiról a 11. fejezet szól.

A vizsgamódszer négy lépése: aláhúzás (bemenetek és kimenetek külön színnel) → I/O-lista megszámolva → vázlat (előbb a szekvencia, aztán a feltételek) → ellenőrzés (visszazárnak-e az ágak, mi történik vészleállításkor és bekapcsoláskor).

Öt kidolgozott példán keresztül láttad, hogyan derülnek ki a leírásból a rejtett követelmények: a tárolt állapot („soron következő”), a számláló („minden 12. után”), a feltételes üzemmódváltás („csak álló gépnél”) és a hiszterézis (két kapcsolási pont).

Ellenőrző kérdések

  1. Mi a folyamatábra, és mi a szerepe a PLC-programozás folyamatában?
  2. Sorold fel a hat leggyakoribb folyamatábra-jelölést és a jelentésüket!
  3. Hány start és hány vég szimbólum lehet egy folyamatábrában?
  4. Hány ág indul ki egy döntésből, és mi a szabály ezekre az ágakra nézve?
  5. Hogyan ábrázoljuk a ciklust folyamatábrán?
  6. Mi a három algoritmikus szerkezet?
  7. Mit jelent a „strukturált program” kifejezés az algoritmuselméletben, és miben tér el ettől a PLC-s jelentése?
  8. Sorold fel a négylépéses vizsgamódszer lépéseit!
  9. Miért bontó (NC) érintkezővel valósítjuk meg a Stop funkciót?
  10. Mi a hiszterézis, és miért van rá szükség kétállású szabályozásnál?
  11. Milyen rejtett követelményre utal a leírásban a „felváltva” vagy „soron következő” szó?
  12. Mi a különbség a folyamatábra és a struktogram között?

Tudáspróba

Válaszd ki az egyetlen helyes választ!

1. A folyamatábrán a döntést jelölő alakzat: a) csúcsára állított rombusz b) téglalap c) ellipszis d) paralelogramma

2. A be- és kimenetet jelölő alakzat: a) hatszög b) paralelogramma c) kis kör d) ellipszis

3. Egy folyamatábrában: a) egy start és egy vég lehet; b) több start és egy vég lehet; c) maximum egy start, de több vég is lehet; d) tetszőleges számú start és vég lehet.

4. A döntésből kiinduló ágakra igaz, hogy: a) tetszőleges számú ág indulhat; b) egy ág indul, a másik opcionális; c) két ág indul, és külön-külön a Vége szimbólumhoz kell vezetniük; d) két ág indul, és ezeknek később egyesülniük kell.

5. A három algoritmikus szerkezet: a) szekvencia, elágazás, ciklus; b) bemenet, feldolgozás, kimenet; c) start, művelet, vég; d) érzékelés, döntés, beavatkozás.

6. A ciklust folyamatábrán úgy ábrázoljuk, hogy: a) két Vége szimbólumot rajzolunk; b) az egyik ág visszavezet a feltételhez; c) az alprogram-jelölést használjuk; d) kettős nyilat rajzolunk.

7. A vizsgamódszer helyes sorrendje: a) vázlat → aláhúzás → I/O-lista → ellenőrzés; b) i/O-lista → vázlat → aláhúzás → ellenőrzés; c) Aláhúzás → I/O-lista → vázlat → ellenőrzés; d) ellenőrzés → aláhúzás → vázlat → I/O-lista.

8. A Stop nyomógombot azért kötjük bontó érintkezővel, mert: a) így kevesebb vezeték kell; b) így gyorsabb a reakció; c) a szabvány így írja elő minden bemenetre; d) vezetékszakadás esetén a rendszer leáll, nem pedig leállíthatatlanná válik.

9. A „minden 12. termék után” megfogalmazás a programban: a) számlálót igényel; b) időzítőt igényel; c) analóg bemenetet igényel; d) semmilyen külön elemet nem igényel.

10. A hiszterézis (két kapcsolási pont) célja: a) a mérés pontosságának javítása; b) a beavatkozó gyakori ki-be kapcsolásának megakadályozása; c) a ciklusidő csökkentése; d) az analóg jel szűrése.

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

A fejezet forrásai


  1. Dr. Varga Imre: 3. A folyamatábra. In: Algoritmusok és a programozás alapjai. Debreceni Egyetem, Informatikai Kar. Elérés: irh.inf.unideb.hu/~vargai/APA/Flowchart_hu.html (2026-07-29). ↩↩↩↩↩↩↩↩

  2. Programozási alapismeretek — algoritmusleíró eszközök. ELTE, TÁMOP-4.1.2.A/2-10/1. Elérés: progalapfsz.elte.hu/downloads/seged/eTananyag/lecke4_lap1.html (2026-07-29). ↩↩↩↩

  3. ISO 5807:1985 — Information processing: Documentation symbols and conventions for data, program and system flowcharts, program network charts and system resources charts. Ismertető: Pacific Certifications. (2026-07-29) A szabvány szövege nyilvánosan nem hozzáférhető; a könyv csak a szabvány címét, tárgyát és az általa lefedett ábratípusokat közli. ↩↩↩

Mennyire volt hasznos ez a fejezet?

Még nincs értékelés.