Files
PLC_Library/plc_src/POU/Общие/Status_Connect_Counter.st

41 lines
1.2 KiB
Smalltalk
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
(*
===============================================================================
Project : PLC_Library
Device : -
Path : Общие
Name : Status_Connect_Counter
Type : FUNCTION_BLOCK
===============================================================================
*)
FUNCTION_BLOCK Status_Connect_Counter
(*
Статус связи с СВУ по счетчику
*)
VAR_INPUT
Counter: WORD; (* Счетчик, инкрементируемый удаленным устройством (СВУ) *)
T_Error: TIME; (* Время отсутствия изменений счетчика для диагностики обрыва связи *)
END_VAR
VAR_OUTPUT
CounterIsChanged: BOOL; (* Флаг: счетчик изменился в текущем цикле *)
ERROR_CONNECT: BOOL; (* Флаг ошибки связи: счетчик не менялся дольше T_Error *)
END_VAR
VAR
CounterOld: WORD;
TON_SU: TON;
END_VAR
(*----- IMPLEMENTATION -----*)
TON_SU(IN:=(Counter = CounterOld), PT:=T_Error);
ERROR_CONNECT:=TON_SU.Q;
IF(Counter <> CounterOld) THEN
CounterIsChanged:=TRUE;
ELSE
CounterIsChanged:=FALSE;
END_IF
CounterOld:=Counter;
END_FUNCTION_BLOCK