====== Stop Interface Entry Point - Řízené zastavení runtimu ====== {{:cs:mervis-ide:35-help:stopinterfaceentrypoint.png}} ===== Název funkce ===== STOPINTERFACEENTRYPOINT ===== Volání v ST ===== 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 ===== Popis ===== 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! ===== Vstupy ===== |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ýstupy ===== |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í)| ===== Funkce ===== 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.