====== Spínací blok (v2.3) ====== {{:cs:mervis-ide:35-help:switcherblock_v2.0.png}} ==== Celé jméno ==== Lib.Mervis.v2_3.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_3.SwitcherBlock; end_var switcher(); end_program ===== Popis vstupů a výstupů =====
Vstupy Jméno Datový typ Povolený rozsah Retain Nutno připojit Význam
OperatingModeOperatingModeType  AnoNe Požadovaný režim provozu, režim vypnuto je dominantní - nelze tedy docílit spuštění žádnou jinou funkcí
Demandbool NeAno Požadovaný stav v automatickém režimu
Feedbackusint0..2NeNe Zpětná hláška o chodu - lze přímo připojit zpětnou hlášku typu bool.
Může nabývat následujících hodnot:

Hodnota Význam
0Zpětná hláška neaktivní
1Zpětná hláška aktivní
2Zpětná hláška není připojena (výchozí hodnota)

FeedbackManualbool NeNe Zpětná hláška indikující manuální zapnutí (např. z panelu rozvaděče)
Failurebool NeNe Hlášení o poruše
EmergencyShutdownbool NeNe Nouzové vypnutí
OperatingHoursResetbool NeNe Nulování provozních hodin
RunDowntime NeNe Požadovaná doba doběhu (pokud je nulový, funkce je neaktivní)
FeedbackTimeouttime NeNe Interval čekání na aktivní zpětnou hlášku
KickFunctionIntervaltime NeNe Interval funkce periodického spouštění (pokud je nulový, funkce je neaktivní)
KickFunctionDurationtime NeNe Doba běhu pro periodické spouštění
NotRunAlarmPriorityAlarmPriorityType NeNe Třída generovaného alarmu
FailureAlarmPriorityAlarmPriorityType NeNe Třída generovaného alarmu
EmergencyAlarmPriorityAlarmPriorityType NeNe Třída generovaného alarmu
ControlFlagsuint0..15NeNe Bitové pole definující rozšířené chování bloku

Bit Maska Význam
01Pokud je bit roven jedné nedochází k vyhodnocování alarmů
12Definuje chování výstupu Command při vzniku alarmu v automatickém režimu. Pokud je bit roven jedné, dojde k deaktivaci výstupu
24Definuje 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
38Definuji reakci alarmu na vstup EmergencyShutdown. Pokud je roven jedné, dojde k vyhlášení alarmu poruchy.
4..15-Nevyužit

AlarmsStatusInLib.Mervis.v1_0.AlarmsStatus NeNe Sdružené rozhraní k alarmové indikaci
Výstupy Jméno Datový typ
Commandbool Povel
AlarmsStatusLib.Mervis.v1_0.AlarmsStatus Sdružené rozhraní k alarmové indikaci
CompositeStateuint Bitové pole popisující celkový stav

Bit Číslo Význam
01Command
12Feedback
Pokud není připojena zpětná hláška, kopíruje stav Command
24ManualMode
38ManualOn
416Demand
532Protočení aktivní
664Doběh aktivní
7128Porucha
8-9-OperatingMode

OperatingHourstime Provozní hodiny
StartCounterudint Počet spuštění
==== Bloky ====
Jméno Datový typ Retain Význam
AlarmFlag[0] AlarmPoint Ano Indikace alarmu Nechod
AlarmFlag[1] 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 od //EmergencyShutdown// dojde v případě jeho aktivace (tzn. pri současně aktivním výstupu //Command//) 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. ===== Verze ===== {{indexmenu>.120-switcherblock#2}}