STOPINTERFACEENTRYPOINT
PROGRAM TEST_STOPINTERFACEENTRYPOINT VAR waitforstop : bool; time_out : time; stopacknowledge : bool; enable : bool; END_VAR IF enable THEN STOPINTERFACEENTRYPOINT(waitforstop, time_out,stopacknowledge); END_IF; END_PROGRAM
Volaná funkce umožňuje bezpečné ukončení technologického procesu při zastavení runtimu. Se zastavením runtimu se čeká do té doby, než jsou splněny podmínky pro bezpečné odstavení technologie. Funkci je v programu nutné volat periodicky!
Vstup | Typ | Význam |
waitforstop | BOOL | Funkce uvedení technologie do bezpečného stavu je aktivní (pokud je waitforstop = true, bude se při zastavování programu čekat na indikaci ukončení od běžící aplikace) |
timeout | TIME | Bezpečný limit (30 vteřin je maximální čas, který bude RT čekat na indikaci bezpečného odstavení – pak dojde k zastavení RT bez ohledu na stav stopacknowledge) |
stopacknowledge | BOOL | Indikace úspěšného odstavení technologie (stopacknowledge = true) |
Výstup | Typ | Význam |
⇒ | BOOL | Ukončovací status (⇒ = true, nastal požadavek na zastavení RT) |
onlinechanges | BOOL | Budou se provádět on-line změny (odstavení technologie je nežádoucí) |
V případě, že vstupní proměnná waitforstop je true, runtime na PLC se po příkazu k zastavení (např. z IDE) nezastaví hned. Bude čekat na splnění jedné ze dvou podmínek, která nastane dříve:
- nastavení stopacknowledge na hodnotu true, čímž program hlásí runtimu, že byly splněny podmínky pro bezpečné odstavení technologie a je možné runtime zastavit
- uplynutí času, který se nastavuje v proměnné timeout, což je maximální čekací doba na odstavení. Po uplynutí této doby bude runtime zastaven, i když stopacknowledge je ve stavu false. Jakmile tedy runtime dostane příkaz k zastavení, výstup funkce je nastaven na true. Runtime ale běží dál. Program se tak „dozví“ o požadavku na zastavení RT a může spustit sekvenci pro bezpečné odstavení technologie (např. uzavře přívod páry, vypne elektrické ohřevy apod.). Jsou-li poté splněny podmínky pro bezpečné odstavení, např. pokles teploty výměníku pod určitou hodnotu, prokazatelné zavření ventilů pomocí signálu z koncových spínačů atd., program zapíše do proměnné stopacknowledge hodnotu true. Teprve poté se runtime zastaví. Je-li aktivní výstup onlinechanges, znamená to, že budou prováděny online změny. Není tedy nutné technologický proces bezpečně ukončovat, i když na výstupu funkce požadavek na zastavení runtimu nastane. Parametr timeout se přebírá v okamžiku začátku zastavování runtimu. Změna jeho hodnoty během zastavování již nemá na funkci vliv.