SectionFlagsHolder
Název bloku
SectionFlagsHolder
Volání v ST
PROGRAM TEST_SectionFlagsHolder VAR USINT1: USINT; SectionState1: SectionState; BOOL1,BOOL2,BOOL3,BOOL4,BOOL5,BOOL6,BOOL7,BOOL8,BOOL9: BOOL; END_VAR FB(Clear:= BOOL1, Flags:= USINT1, State:= SectionState1, InternalWarning:= BOOL2, ExternalWarning:= BOOL3, FireAlarm:= BOOL4, IntruderAlarm:= BOOL5, PanicAlarm:= BOOL6, SabotageAlarm:= BOOL7, EntryDelay:= BOOL8, ExitDelay:= BOOL9); END_PROGRAM
Knihovna
LIB\JABLOTRON
Verze
V1.0
Popis
Varianta funkčního bloku SectionFlags s upravenou funkcionalitou. Jeho funkcí je stejně jako u SectionFlags reprezentace vstupní hodnotu příznaku sekce na jednotlivých výstupech.
Navíc byl přidán výstup SabotageAlarm spolu s funkcí, která automaticky rozpozná sabotáž a nastaví tento výstup na TRUE. Zásadní změnou je, jak napovídá název, funkce přidržení. Ta přidrží alarm až do změny stavu sekce STATE (libovolný stav), díky čemuž je nutné přivést na vstup i stav sledované sekce. Poslední změnou je volitelný vstup Clear, ten umožňuje manuální reset přidržených výstupů poplachu. Tento vstup je skrytý a nemusí být použit.
Vstupy
Vstup | Typ | Význam | Výchozí hodnota |
---|---|---|---|
Clear | BOOL | Náběžná hrana provede manuální reset poplachových (alarm) výstupů (nastaví FALSE) | FALSE (skrytý) |
Flags | USINT | Aktuální příznak sekce | 0 |
State | ENUM (SectionState) | Aktuální stav sekce | Unknown |
Výstupy
Vstup | Typ | Význam |
---|---|---|
InternalWarning | BOOL | Hlášení vnitřních sirén |
ExternalWarning | BOOL | Hlášení vnitřních sirén |
FireAlarm | BOOL | Poplach-hoří |
IntruderAlarm | BOOL | Poplach vloupání |
PanicAlarm | BOOL | Poplach-tíseň |
SabotageAlarm | BOOL | Poplach-sabotáž |
EntryDelay | BOOL | Příchodové zpoždění |
ExitDelay | BOOL | Odchodové zpoždění |
Funkce
Funkční blok čte příznak sekce Flags. Čtená hodnota se převádí podle bitové masky na jednotlivé bity, každý bit je zapsán na odpovídající výstup. Výstup sabotage je odvozen z logiky ústředny, kdy jsou v příznaku sekce aktivní pouze záznamy Warning. Na alarmové (poplachové) výstupy „fire, Intruder, panic, sabotage“ se zapisuje pouze hodnota TRUE. Hodnota FALSE se na alarmové výstupy zapíše až ve chvíli, kdy se změní stav sekce (na libovolný stav), nebo se zapíše TRUE na vstup Clear (reaguje na náběžnou hranu).
Bitová maska
Pozice bitu | Význam bitu |
---|---|
1 | Internal Warning |
2 | External Warning |
4 | Fire Alarm |
8 | Intruder Alarm |
16 | Panic Alarm |
32 | Entry Delay |
64 | Exit Delay |
0 | Výchozí stav příznaku |
Příklad použití
Na vstup Flags je přivedena proměnná Section_Flag čtená z ústředny. Na vstup State je přivedena proměnná stavu sekce Section_State. Je důležité, aby číslo sekce bylo i u stavu, i u příznaku shodné. Poslední vstup Clear je resetovací vstup a resetuje pouze výstupy typu poplach (alarm). Výstupy musí být připojeny. Hodnotu výstupů lze využít např. ve webovém rozhraní pro indikaci, nebo mohou vyvolat odeslání upozornění, či spustit zabezpečovací logiku domu.
Indikace alarmů je držena v hodnotě TRUE i ve chvíli, kdy již na vstupu Flags je výchozí hodnota 0.
Zde ústředna postupně nahlásila všechny poplachové stavy. Na obrázku vidíme, že vstup Flags již není aktivní, ale funkční blok stále indikuje že k poplachu došlo.
Pokud se v tuto chvíli aktivuje vstup Clear, nebo změní stav sekce (na libovolný stav), jsou všechny alarmové výstupy nastaveny na hodnotu FALSE, tím se funkční blok překlopí zpět do výchozího stavu.