====== Spínací blok (v1.2) ====== {{:cs:mervis-ide:35-help:switcherblock_v1.1.png}} ==== Celé jméno ==== Lib.Mervis.v1_2.SwitcherBlock ===== Popis ===== Pomocný blok sloužící pro obecné spínací funkce s alarmovou funkcí. ==== Potřebné reference projektu ==== * Lib.Mervis ===== Omezení použití bloku ===== [[..:..:generic_usagelimits.htm|**Broken**]] - nahrazen blokem [[..:switcherblock_v1.3.htm|SwitcherBlock v1.3]] ===== Použití v ST ===== program test var switcher: lib.mervis.v1_2.SwitcherBlock; end_var switcher(); end_program ===== Popis vstupů a výstupů ===== |Vstupy |Jméno |Datový typ|Retain|Nutno připojit |Význam| |OperatingMode |[[..:operatingmodetype.htm|OperatingModeType]] |Ne |Ne |Požadovaný režim provozu, režim vypnuto je dominantní - nelze tedy docílit spuštění žádnou jinou funkcí| | |Demand |bool |Ne |Ano |Požadovaný stav v automatickém režimu | | |KickFunctionInterval|time |Ne |Ne |Interval funkce periodického spouštění (pokud je nulový, funkce je neaktivní) | | |RunDown |time |Ne |Ne |Požadovaná doba doběhu (pokud je nulový, funkce je neaktivní) | | |Feedback |bool |Ne |Ne |Zpětná hláška o chodu | | |FeedbackManual |bool |Ne |Ne |Zpětná hláška indikující manuální zapnutí (např. z panelu rozvaděče) | | |FailureTimeout |time |Ne |Ne |Interval čekání na aktivní zpětnou hlášku | | |Failure |bool |Ne |Ne |Hlášení o poruše | | |EmergencyShutdown |bool |Ne |Ne |Nouzové vypnutí | | |AlarmPriority |[[..:..:alarms_alarmprioritytype.htm|AlarmPriorityType]]|Ne |Ne |Třída generovaného alarmu | | |Výstupy |Jméno |Datový typ |Význam| |Command |bool |Povel | | |AlarmsStatus |[[..:alarmsstatus.htm|Lib.Mervis.v1_0.AlarmsStatus]]|Sdružené rozhraní k alarmové indikaci | | |ManualMode |bool |Indikace manuálního zvoleného provozního módu (Vypnuto nebo Zapnuto nebo aktivní //FeedbackManual//) | | |ManualOn |bool |Indikace manuálního zapnutí (provozní mód je Zapnuto nebo je součsasně //FeedbackManual a Feedback// true) | | |CompositeState|uint |Bitové pole popisující celkový stav\\ \\ |Bit|Význam |\\ |0 |Command |\\ |1 |Feedback |\\ |2 |ManualMode |\\ |3 |ManualOn |\\ |4 |Demand |\\ |5 |Protočení aktivní|\\ |6 |Nevyužit |\\ |7 |Porucha |\\ |8-9|OperatingMode || | |Bloky |Jméno |Datový typ|Retain |Význam| |AlarmFlag|[[..:..:alarms_alarmpoint.htm|AlarmPoint]]|Ano |Stav alarmu| | ===== Podrobný popis funkce ===== Blok v sobě integruje často používané funkce při spínání zařízení. Mezi tyto funkce patří následující: * Režim provozu - //Automat, Manuálně vypnuto, Manuálně zapnuto// * Hlídání zpětné hlášky a s tím související * Alarmová funkce * Periodické spouštění (např. protočení pro čerpadla) * Doběh po vypnutí * Nouzové/okamžité vypnutí Povel pro sepnutí se generuje na základě požadavku v automatickém režimu nebo pokud je režim provozu nastaven na //Zapnuto//. V případě aktivního povelu se poté kontroluje stav zpětné hlášky, pokud se nestane aktivní do uplynutí času daného vstupem //FailureTimeout// dojde k vygenerování alarmu. Nastavení //EmergencyShutdown// na true vede k okamžíté deaktivaci povelu __bez ohledu na zvolený režim provozu__. V __automatickém__ režimu může dojít k aktivace povelu také vypršením intervalu //KickFunctionInterval// pro periodické spouštění. Povel se aktivuje na pevně danou dobu jedné minuty. __Aktivní alarmová funkce neovlivňuje generování povelu //Command//, ten si i nadále zachovává svůj stav__. Pokud se stane požadavek na provoz //Demand// neaktivní, spouští se odpočet doběhu po vypnutí, tzn. že povel //Command// je aktivní ještě po dobu danou parametrem //RunDown//, teprve po jeho uplynutí se povel deaktivuje.