568 B
568 B
FUNCTION_BLOCK "Delay"
{ S7_Optimized_Access := 'FALSE' }
AUTHOR : 'Author'
FAMILY : 'Function'
NAME : 'Name'
VERSION : 1.0
VAR_INPUT
i_Value : Real;
i_Sample : Int;
END_VAR
VAR_OUTPUT
i_out : Real;
END_VAR
VAR
mVarArray : Array[0..5] of Real;
i : Int;
END_VAR
BEGIN
IF #i_Sample <= 5 THEN
FOR #i:=#i_Sample TO 1 BY -1 DO
#mVarArray[#i] := #mVarArray[#i - 1] ;
END_FOR;
#mVarArray[0] := #i_Value ;
END_IF;
#i_out := #mVarArray[#i_Sample] ;
END_FUNCTION_BLOCK