====== Spínací blok (v2.0) ====== {{:cs:mervis-ide:35-help:switcherblock_v2.0.png}} ==== Celé jméno ==== Lib.Mervis.v2_0.SwitcherBlock ===== Popis ===== Pomocný blok sloužící pro obecné spínací funkce s alarmovou funkcí. ==== Potřebné reference projektu ==== * Lib.Mervis ===== Použití v ST ===== program test var switcher: lib.mervis.v2_0.SwitcherBlock; end_var switcher(); end_program ===== Popis vstupů a výstupů ===== Vstupy Jméno Datový typ Povolený rozsah Retain Nutno připojit Význam OperatingMode [[..:operatingmodetype.htm|OperatingModeType]]   Ano 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 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) Failure bool   Ne Ne Hlášení o poruše EmergencyShutdown bool   Ne Ne Nouzové vypnutí OperatingHoursReset bool   Ne Ne Nulování provozních hodin RunDown time   Ne Ne Požadovaná doba doběhu (pokud je nulový, funkce je neaktivní) FeedbackTimeout time   Ne Ne Interval čekání na aktivní zpětnou hlášku KickFunctionInterval time   Ne Ne Interval funkce periodického spouštění (pokud je nulový, funkce je neaktivní) NotRunAlarmPriority [[..:..:alarms_alarmprioritytype.htm|AlarmPriorityType]]   Ne Ne Třída generovaného alarmu FailureAlarmPriority [[..:..:alarms_alarmprioritytype.htm|AlarmPriorityType]]   Ne Ne Třída generovaného alarmu EmergencyAlarmPriority [[..:..:alarms_alarmprioritytype.htm|AlarmPriorityType]]   Ne Ne Třída generovaného alarmu ControlFlags uint 0..15 Ne Ne Bitové pole definující rozšířené chování bloku |Bit |Maska|Význam | |0 |1 |Pokud je bit roven jedné nedochází k vyhodnocování alarmů | |1 |2 |Definuje chování výstupu //Command// při vzniku alarmu v **automatickém** režimu. Pokud je bit roven jedné, dojde k deaktivaci výstupu | |2 |4 |Definuje chování výstupu //Command// při vzniku alarmu v **manuálním** režimu. Pokud je bit roven jedné, dojde k deaktivaci výstupu | |3 |8 |Definuji reakci alarmu na vstup //EmergencyShutdown//. Pokud je roven jedné, dojde k vyhlášení alarmu poruchy. | |4 |16 |Určuje zdroj pro počítání provozních hodin. Pro hodnota 0 počítá na základě povelu //Command//, pro hodnotu 1 počítá na základě zpětné hlášky //Feedback//.| |5..15|- |Nevyužit | AlarmsStatusIn [[..:alarmsstatus.htm|Lib.Mervis.v1_0.AlarmsStatus]]   Ne Ne Sdružené rozhraní k alarmové indikaci |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 | | |CompositeState|uint |Bitové pole popisující celkový stav\\ \\ |Bit|Číslo|Význam |\\ |0 |1 |Command |\\ |1 |2 |Feedback |\\ |2 |4 |ManualMode |\\ |3 |8 |ManualOn |\\ |4 |16 |Demand |\\ |5 |32 |Protočení aktivní|\\ |6 |64 |Nevyužit |\\ |7 |128 |Porucha |\\ |8-9|- |OperatingMode || | |Bloky |Jméno |Datový typ|Retain |Význam| |AlarmFlag[0]|[[..:..:alarms_alarmpoint.htm|AlarmPoint]]|Ano |Indikace alarmu **Nechod** | | |AlarmFlag[1]|[[..:..:alarms_alarmpoint.htm|AlarmPoint]]|Ano |Indikace alarmu **poruchy příp. EmergencyShutdown**| | ===== 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 * Nechod - tzn. Existuje aktivní požadavek //Command// a není aktivní zpětná hláška //Feedback// * Porucha - Vzniká aktivací vstupu //Failure// příp. //EmergencyShutdown// * Periodické spouštění (např. protočení pro čerpadla) * Doběh po vypnutí * Nouzové/okamžité vypnutí * Počítání provozních hodin 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 //FeedbackTimeout// dojde k vygenerování alarmu **Nechod**. Pro informaci o externím vzniku poruchy (např. nadproudová ochrana, výstup frekvenčního měniče) slouží vstup //Failure//, jeho nastavením dojde ke vzniku alarmu **Porucha**. Nastavení //EmergencyShutdown// na true vede k okamžíté deaktivaci povelu __bez ohledu na zvolený režim provozu__, pokud je povoleno generování alarmu dojde ke vzniku alarmu **Porucha** 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. 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.