FC és FB különbségek

Ebben a cikkben bemutatom, mi a különbség a TIA Portal-ban elérhető Function (FC) és Function Block (FB) blokkok között, és megnézzük, mikor érdemes melyiket alkalmazni a hatékony és karbantartható PLC-programozás érdekében. Gyakorlati felhasználásaik vegyes képet mutatnak, erősen a tapasztalat és programozási stílus az ami meghatározza ki, mikor, melyiket és milyen feladatokra alkalmazza.

FC és FB hívása
Mi az FC (Function)?
FC blokk
  • Az FC egy stateless (állapotmentes) függvény.
  • Minden alkalommal, amikor meghívod, nem emlékszik az előző futtatásokra.
  • Olyan, mint egy klasszikus függvény a programozási nyelvekben.
  • Bemeneti és kimeneti paramétereket fogad, de nem tárol belső adatokat tartósan.
  • Rendelkezhet visszatérési értékkel (RETURN VALUE), segítségével jelezheted például sikeres végrehajtást (TRUE), hibát vagy érvénytelen adatot (FALSE) vagy akár számított értéket (pl. eredményt egy matematikai műveletből).

Mikor használd?

  • Segédfüggvényként, ha nincs szükség belső adattárolásra.
  • Előre meghatározott memóriaterületeket használsz és nincs szükséged a blokk saját memóriaterületére, például egy manuálisan létrehozott DB adataival szeretnél dolgozni.
Manuálisan létrehozott DB az adatok tárolására

Mi az FB (Function Block)?
FB blokk, static adaterülettel rendelkezik
  • Az FB saját, statikus adaterülettel rendelkező blokk.
  • Van egy saját Instance Data Block (DB) blokkja, amely tárolja a belső változóit. Input, output, inout és a static memóriaterületek kerülnek a blokkba a generálás során.
  • A DB-ben tárolt adatok elérhetőek a többi blokk számára.
  • Emlékszik az előző hívások állapotára, például időzítők, számlálók vagy gépállapotok esetén, mert azok adatai a DB-ben tárolódnak.
FB-hez tartozó Instance DB tartalma

Mikor használd?

  • Ha nem szeretnél külön DB-t létrehozni a tárolt adatoknak.
  • Jól példányosítható, saját adatterülettel rendelkező blokkra van szükséged.

Scroll to Top