====== Externí paměť alarmů ====== {{:cs:mervis-ide:35-help:bd57.png}} ===== Název bloku ===== BD57_ALARMMEMORYEXT ===== Volání v ST ===== PROGRAM TEST BD57 VAR BOOL1, BOOL2, BOOL3, BOOL4, BOOL5, BOOL6:BOOL; FB : LIB.CORE.V1_1.BD57_ALARMMEMORYEXT; END_VAR FB.IN[1] := BOOL3; FB.IN[2] := BOOL4; FB(ACK:=BOOL1,RESET:=BOOL2); BOOL5 := FB.OUT[1]; BOOL6 := FB.OUT[2]; END_PROGRAM ===== Knihovna ===== LIB\CORE ===== Verze ===== V1.1 ===== Popis ===== Blok slouží jako paměť alarmů s možností zapamatovat si až 16 alarmových hlášení. ===== Vstupy ===== |Vstup |Typ |Význam |Výchozí hodnota | |IN |[[cs:mervis-ide:35-help:035-software_basic:060-libraries:015-proto|MULTIIOBOOL]]|Vstupy alarmů |[False,...,False]| |ACK |BOOL |Potvrzení. Když IN=TRUE a je náběžná hrana ACK pak ACKNOWLEDGED=TRUE (a stále MEMORY=TRUE)|False | |RESET |BOOL |Reset paměti alarmů |False | |IN0,IN1,..,IN15|BOOL |Jednotlivé vstupy alarmů | | ===== Výstupy ===== |Výstup |Typ |Význam | |OUT |[[cs:mervis-ide:35-help:035-software_basic:060-libraries:015-proto|MULTIIOBOOL]]|Výstupy alarmů. | |ACKNOWLEDGED |[[cs:mervis-ide:35-help:035-software_basic:060-libraries:015-proto|MULTIIOBOOL]]|Stavový vektor "Potvrzen" | |MEMORY |BOOL |Stavový vektor "Paměť alarmu"| |ALRSTATUS |INT |Uložený stav alarmů. | |OUT0,OUT1,..,OUT15|BOOL |Výstupy alarmů - jednotlivě | ===== Funkce ===== Blok zaznamenává alarmové stavy. Při příchodu alarmu od některého vstupu //in// si blok zapamatuje alarm a změní daný výstup //out//, paměť alarmů nastaví na //memory//=true. Při náběžné hraně od vstupu ACK se na výstupu ACKNOWLEDGED uloží aktuální stav hlášení alarmů. Výstupy //out// a paměť //memory// lze vyresetovat náběžnou hranou vstupu //reset//. POZOR rozsah v ST je od 1 do 16. Hodnoty výstupu //alrstatus//: * //alrstatus//=256 - min jeden alarm je aktivní. * //alrstatus//=512 - v paměti //acknowledged// je min jeden alarm aktivní * //alrstatus//=1024 - //memory//= true, alarm je nebo byl aktivní, ale ještě ho nikdo nevyresetoval. Hodnota //alrstatus// může být součtem dílčích hlášení. ===== Příklad použití ===== {{:cs:mervis-ide:35-help:bd57_example.png}}\\ \\ ////\\ ////V proměnné ////ALRSTATUS//// se uchovává aktuální stav alarmu. Ten může být jeden z následujících:\\ * 0: Normal - alarm není přítomen * 1280: Alarm - vstup IN je v TRUE, nepotvrzeno, alarm lze potvrdit náběžnou hranou na vstupu ACK * 1792: Potvrzen - vstup IN je stále v TRUE, na ACK byla přivedena náběžná hrana * 1024: Odezněl - vstup IN přešel z TRUE do FALSE, alarm nebyl potvrzen ani smazán * 1536: Nesmazán - alarm byl ve stavu Potvrzen, načež vstup IN přešel do FALSE, alarm lze smazat náběžnou hranou na vstupu RESET a tím přivést do stavu Normal.