(* @PATH := '\/Functions_Collection' *) (* @SYMFILEFLAGS := '0' *) FUNCTION_BLOCK Derive VAR_INPUT i_Signal : REAL ; i_Gain : REAL ; i_Cycle : REAL ; END_VAR VAR_OUTPUT o_Derive : REAL ; END_VAR VAR mSaveValue : REAL ; END_VAR (* @END_DECLARATION := '0' *) IF i_Cycle<>0 THEN o_Derive := i_Gain * (i_Signal - mSaveValue) / i_Cycle ; END_IF mSaveValue := i_Signal ; END_FUNCTION_BLOCK