ParamManagerScripts/backend/script_groups/TwinCat/.example/DELAY.EXP

26 lines
462 B
Plaintext

(* @PATH := '\/Functions_Collection' *)
(* @SYMFILEFLAGS := '0' *)
FUNCTION_BLOCK Delay
VAR_INPUT
i_Value : REAL ;
i_Sample : UINT ;
END_VAR
VAR_OUTPUT
i_out : REAL ;
END_VAR
VAR
mVarArray : ARRAY[0..5] OF REAL ;
i : INT ;
END_VAR
(* @END_DECLARATION := '0' *)
IF i_Sample<=5 THEN
FOR i:=i_Sample TO 1BY -1 DO
mVarArray[i] := mVarArray[i - 1] ;
END_FOR
mVarArray[0] := i_Value ;
END_IF
i_out := mVarArray[i_Sample] ;
END_FUNCTION_BLOCK