Spínací blok (v2.0)
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
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
Ne
Ne
Třída generovaného alarmu
FailureAlarmPriority
Ne
Ne
Třída generovaného alarmu
EmergencyAlarmPriority
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
Ne
Ne
Sdružené rozhraní k alarmové indikaci
Výstupy | Jméno | Datový typ | Význam | ||||||||||||||||||||||||||||||||||||||||
Command | bool | Povel | |||||||||||||||||||||||||||||||||||||||||
AlarmsStatus | 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] | 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 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.