Rising edge differential (initial execution type)
When a rising edge of the input signal (input i) is detected, this function changes the status of the output signal (output o) to TRUE for the duration of the scan.
Input
Output
Detection of the input signal’s rising edge is also assured at the first scan.
You may use an unlimited number of DFI functions.
If the input signal = TRUE already when the system is turned on and this signal should not be interpreted as the first rising edge, the DF function must be used instead.
Be careful when programming with commands that effect the order in which a program is carried out, e.g. jump or loop instructions within a sequential function chart or a function block. The order of the instructions might change depending on the time when the instruction is carried out or the input value. Specific basic JUMP and LOOP instructions are:
MC to MCE
JP to LBL
F19_SJP to LBL
LOOP to LBL
All input and output variables used for programming this function have been declared in the POU header. The same POU header is used for all programming languages.
VAR
input_value: BOOL:=FALSE;
output_value: BOOL:=FALSE;
END_VAR
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 5 ;
NETWORK_BODY
B(B_F,DFI!,Instance,9,0,14,3,,?Di?Co);
B(B_VARIN,,input_value,7,1,9,3,);
B(B_VAROUT,,output_value,14,1,16,3,);
L(1,0,1,5);
END_NETWORK_BODY
END_NET_WORK
END_BODY
output_value:=DFI(input_value);