Spínací blok (v3.0)
Popis
- Úplný název funkčního bloku: Lib.Mervis.v3_0.SwitcherBlock
- Vytvořen rozšířením bloku
- Potřebné reference projektu
- Lib.Mervis
Použití v ST
program test var switcher: lib.mervis.v3_0.SwitcherBlock; end_var switcher(Demand := ..., Feedback := ..., Failure := ...); hw.DO1 := switcher.Command; end_program
Vstupy
Jméno | Datový typ | Povolený rozsah | Jednotka | Retain | Nutno připojit | Význam |
---|---|---|---|---|---|---|
OperatingMode | Lib.Mervis.v1_0.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 | usint | 0..2 | Ne | Ne | Zpětná hláška o chodu - lze přímo připojit zpětnou hlášku typu bool. | |
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í) | ||
KickFunctionDuration | time | Ne | Ne | Doba běhu pro periodické spouštění | ||
NotRunAlarmPriority | Alarms.V1_0.AlarmPriorityType | Ne | Ne | Třída generovaného alarmu | ||
FailureAlarmPriority | Alarms.V1_0.AlarmPriorityType | Ne | Ne | Třída generovaného alarmu | ||
EmergencyAlarmPriority | Alarms.V1_0.AlarmPriorityType | Ne | Ne | Třída generovaného alarmu | ||
ControlFlags | uint | 0..15 | Ne | Ne | Bitové pole definující rozšířené chování bloku |
Popis hodnot pro vstup Feedback
Hodnota | Význam |
---|---|
0 | Zpětná hláška neaktivní |
1 | Zpětná hláška aktivní |
2 | Zpětná hláška není připojena (výchozí hodnota) |
Popis hodnot pro vstup ControlFlags
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..15 | - | Nevyužit |
Výstupy
Jméno | Datový typ | Jednotka | Význam |
---|---|---|---|
Command | bool | Povel | |
AlarmsInterface | ptr_to Lib.Mervis.v2_0.BaseAlarmBlock | Sdružené rozhraní k alarmové indikaci | |
CompositeState | uint | Bitové pole popisující celkový stav | |
OperatingHours | time | Provozní hodiny | |
StartCounter | udint | Počet spuštění |
Popis hodnot výstupu CompositeState
Bit | Maska | Význam |
---|---|---|
0 | 1 | Command |
1 | 2 | Feedback Pokud není připojena zpětná hláška (tzn. Feedback = 2), kopíruje stav Command |
2 | 4 | ManualMode |
3 | 8 | ManualOn |
4 | 16 | Demand |
5 | 32 | Protočení aktivní |
6 | 64 | Doběh aktivní |
7 | 128 | Porucha |
8-9 | - | OperatingMode |
Bloky
Jméno | Datový typ | Význam |
---|---|---|
AlarmFlags | array[0..1] of Alarms.v1_0.AlarmPoint | Index 0 - Porucha nechod Index 1 - Externí vstup poruchy nebo EmergencyShutdown |
State | Lib.Mervis.v2_0.SwitcherBlockState | Interní stav funkčního bloku |
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 dobu parametrem KickFunctionDuration.
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.