[gtranslate]

Miért kell a PLC-nek most azonnal leállnia? Hogyan használjuk a PLC megszakításokat?

Egy programozható logikai vezérlő általában egy ciklusban futtatja a logikát. Ezt pásztázási ciklusnak nevezzük. Egyes PLC-k képesek megszakítani az alacsonyabb prioritású feladatokat, és egy speciális rutint futtatni hardveresemény vagy időzített esemény esetén.

Tartalomjegyzék

A Siemens ezeket a rutinokat OB-knek nevezi. A Rockwell Logix feladatoknak. Képzeld el. Olvasol egy jó könyvet. Aztán csörög a telefonod. Kijelölöd az oldalt. Felveszed a hívást. Amikor befejezted, azonnal visszamész a könyvhöz.

A PLC A megszakítás nagyjából így működik. A CPU valójában nem “áll meg”. Ehelyett szünetelteti az alacsonyabb prioritású logikát, kezeli a sürgős eseményt, majd visszatér oda, ahol abbahagyta. A bekapcsolási idő azonban a prioritástól, a trigger típusától és a CPU terhelésétől függ. A gyors reakciók valósak. Csak nem varázslatosak.

Mi is az a PLC megszakítás?

A normál PLC-k gyakran egy alapvető mintát követnek: frissítik a kimeneteket, beolvassák a bemeneteket a memóriába, majd végrehajtják a felhasználói programot ezekkel a tárolt értékekkel. Ez a modell sok gépnél jól működik. Mégis, egyes események túl gyorsan történnek ahhoz, hogy csak a fő vizsgálatot végezzük el.

Ezért adnak a gyártók hardveres megszakítású OB-ket, ciklikus megszakítású OB-ket, időalapú OB-ket és eseményfeladatokat speciális feladatokhoz. A Logixban a vezérlő egyszerre egy feladatot futtat, és egy periodikus vagy eseményfeladat megszakíthatja az alacsonyabb prioritású munkát, majd visszaállíthatja a vezérlést a korábbi feladatra.

CS1H-CPU63H

Miért kell, hogy megállítsanak?

Gondolj egy gyorsan forgó fűrészlapra. El akarsz kapni egy érzékelő a megfelelő helyen tartsd a szélét. Nem engedheted meg magadnak a késést. Ha a fő logikád túl sokáig tart, a gép messzebbre mehet a kívántnál, mielőtt a normál feladat odaérne.

Az eseményvezérelt kód azért hasznos, mert akkor fut le, amikor a trigger bekövetkezik, ahelyett, hogy a szokásos logikán keresztüli következő teljes menetre várna.

De itt jön a figyelemfelkeltő rész. Nem mindig van szükség speciális “azonnali kimeneti” trükkre ahhoz, hogy gyorsan befolyásold a valós világot. A Siemens rendszeren a megszakításos OB-hez rendelt kimeneti folyamatkép-partíciókat a következőktől függetlenül át tudja vinni: FRISSÍTÉS_PO.

Logix rendszeren a feladatok általában a befejezésük után dolgozzák fel a kimeneteket, kivéve, ha letiltjuk ezt az opciót. Tehát ne feltételezzük, hogy egy normál kimeneti címke mindig túl lassú, és ne feltételezzük, hogy egyetlen mágikus utasítás minden esetet megold. Először ellenőrizzük, hogyan frissíti a PLC az I/O-t. Ezután válasszuk ki a platformnak megfelelő módszert.

A különböző márkák különböző neveket használnak. A Siemens S7-1200 olyan szervezőblokkokat használ, mint a hardveres megszakítású és a ciklikus megszakítású OB-k. A Logix folyamatos, periodikus és eseményalapú feladatokat használ.

A cél mindkét világban ugyanaz: a megfelelő időben reagálni anélkül, hogy az egész vezérlőnek várakoznia kellene. A részletek azonban márkaspecifikusak.

Hogyan használjuk a PLC megszakítási függvényét?

Őszintén szólva, elég könnyű, ha betartod a szabályokat. Az emberek gyakran ijesztőbbnek állítják be, mint amilyen valójában. Maradhat egyszerű.

Válassza ki a triggert. Mondja meg a PLC-nek, hogy milyen eseménynek kell elindítania a gyors rutint. Ez a trigger lehet digitális bemenet változása, mozgásesemény, HSC esemény, felhasznált címke vagy időzített megszakítás.

Írj gyors kódot. Tartsd a kódot röviden és lényegre törően. Ha plusz munkával halmozod fel, megnő a késleltetés, és megnő az átfedés vagy az időtúllépési problémák kockázata.

Töröld a jelzőt. Sok esetben a rendszer maga kezeli az eseményhívást. Ennek ellenére előfordulhat, hogy vissza kell állítanod a saját alkalmazási feltételedet, vagy újra kell élesítened a forráseseményt, hogy a következő eseménynek értelme legyen.

Figyelj az átfedésre is. A Logixban, ha egy eseményfeladat ismét aktiválódik, miközben még fut, a vezérlő figyelmen kívül hagyja az átfedő aktiválást.

CP1E-NA20DT-D

Milyen típusú megszakítások léteznek?

A nevek márkáról márkára változnak. Tehát ne tekints egyetlen gyártó címkéjét minden PLC-re vonatkozó törvényként. Ez a három csoport mégis szilárd munkatérképet ad.

Megszakítás típusaMit csinálLegjobb felhasználási eset
Hardver vagy eseményAkkor fut, amikor egy konfigurált hardver- vagy szoftveresemény történik, és megszakíthatja az alacsonyabb prioritású munkákat.Gyors érzékelőélek, regisztrációs jelek, HSC események vagy mozgással kapcsolatos triggerek
Periodikus vagy ciklikusFix időközönként fut a fő vizsgálat megvárása helyettRendszeres, állandó időzítést igénylő ellenőrzési munka
Hiba- vagy diagnosztikai kezelésAkkor fut, amikor a CPU vagy egy modul idő- vagy diagnosztikai eseményt jelezTúlcsorduló szkennelési hibák, sortúlcsordulások vagy moduldiagnosztika észlelése

Hasonlítsuk össze az időzítési koncepciót. A pontos számok mindig a CPU-tól, a prioritástól, az indítási gyakoriságtól és a teljes programterheléstől függenek. Tehát ezt mentális térképként használjuk, ne kőtáblaként.

MetrikaFő szkennelési ciklusHardvermegszakítás / Eseményfeladat
Végrehajtási időzítésNormál ciklikus programvégrehajtás részeként fut, az időzítés a program terhelésétől és konfigurációjától függ.Akkor fut, amikor a trigger bekövetkezik, és megszakíthatja az alacsonyabb prioritású munkákat, de a valódi késleltetés továbbra is függ a prioritástól és a rendszer terhelésétől.
SürgősségJó a normál gépi logikához és az általános szekvenáláshozJobb az időérzékeny eseményekhez, amelyeknek nem kell megvárniuk a rutin logikát
Kód hosszaSzélesebb gépi logikát képes tárolniRövidnek kell lennie, hogy a következő trigger előtt befejeződjön, és elkerülje az átfedési problémákat.

Amint látható, a sebességkülönbség hatalmas lehet. Mégis, nincs olyan varázsválaszidő, amely minden PLC-hez illik. Az ördög a részletekben rejlik.

CJ1W-OD262

Te is elköveted ezeket a rossz hibákat?

Ezt állandóan látom. Ne feltételezd, hogy egy szabványos IEC időzítő ugyanúgy fog viselkedni egy egyszeri megszakításban, mint az OB1-ben vagy egy normál ciklikus feladatban.

A Siemens szerint az időzítő csak akkor frissül, amikor az időzítő utasítás lefut, vagy amikor a kód kulcsfontosságú időzítő tagokat olvas. Ez azt jelenti, hogy egy hardveres megszakítás vagy eseményfeladat, amely triggerinként egyszer fut, gyakran rossz vagy félrevezető időzítő viselkedést eredményez. Egy ciklikus megszakítás vagy egy periodikus feladat más, mert újra és újra lefut.

Ne írj halott ciklusokat azért, hogy “megvárd”, amíg telik az idő. Ez olyan, mintha padlóra nyomnád a gázt, miközben az autó a garázsban áll. Végrehajtási időt pazarolsz, és problémákat idézel elő. A Siemens megjegyzi, hogy a szkennelési túlcsordulások, a várakozási sor túlcsordulásai és a megszakítások időzítési ütközései időhibákat okozhatnak. Bizonyos esetekben az ismétlődő ciklusidő-hibák a CPU leállítását okozhatják.

Egy másik hatalmas hiba a túl sok megszakítás hívása. Nem minden apró érzékelőél érdemli meg, hogy átugorják a sort. Rockwell figyelmeztet, hogy minden extra feladat elveszi a vezérlő idejét a többitől.

Azt is figyelmezteti, hogy ha egy feladatot újra elindítanak, miközben még fut, a vezérlő figyelmen kívül hagyja az átfedő triggert. Tehát akkor használj megszakításokat, amikor valóban szükséged van rájuk. Ellenkező esetben a gyors megoldásod lassú káoszba fullad.

Erősítse meg projektjeit vadonatúj, eredeti Omron, Mitsubishi, Schneider PLC segítségével – raktáron, készen áll!

Következtetés

A megszakítások vagy eseményfeladatok szüneteltetik az alacsonyabb prioritású munkákat, hogy a PLC gyorsan reagálhasson a sürgős eseményekre. A CPU nem áll le. Feladatokat vált, majd visszatér. 

Akkor segítenek, amikor egy eseménynek nem kell a normál ciklikus logikára várnia. A hardveres megszakítások, a ciklikus megszakítások és az eseményfeladatok mind különböző módon szolgálják ezt a célt. 

Tartsd röviden a megszakításkódodat. A hosszú kód növeli a késleltetést és az átfedés kockázatát. 

Ne feltételezzük, hogy a szabványos időzítők jól fognak viselkedni egy egyszeri eseményre reagáló rutinban. Ha időzített viselkedésre van szükségünk, gondoljuk át alaposan, hogy valóban hardvereseményre, periodikus feladatra vagy ciklikus megszakításra van szükségünk. 

Ne feltételezd, hogy mindig azonnali fizikai I/O-t kell használnod a gyors reagáláshoz. Először ellenőrizd, hogyan kezeli a PLC a folyamatképeket, a közvetlen I/O-hozzáférést és a feladatkimenet feldolgozását. 

Figyelj az átfedésekre, a várakozási sor túlcsordulásaira és a ciklusidő-hibákra. A gyors logika nagyszerű. Az a gyors logika, ami soha nem ér véget, az egy katasztrófa. 

Lépjen kapcsolatba velünk

Csak töltse ki nevét, e-mail címét és kérésének rövid leírását ezen az űrlapon. 24 órán belül felvesszük Önnel a kapcsolatot.

Ezeket a témákat is érdekesnek találhatja

Átfogó útmutató a PLC-hez

Átfogó útmutató a PLC típusokhoz és főbb jellemzőkhöz

A programozható logikai vezérlők (PLC-k) valójában az ipari automatizálás alapjává váltak, megbízhatóságot, sokoldalúságot és hatékonyságot kínálva a vezérlőrendszerekben. Ez a rövid cikk ismerteti a PLC-k alapjait, osztályozásukat, előnyeiket és a jövőbeli fejlesztési trendeket.

Tovább »

Kérjen gyors árajánlatot

* Tiszteletben tartjuk az Ön bizalmas kezelését, és minden információ védett.