DFI

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.

Parameters

Input

Unnamed input (BOOL)

Output

Unnamed output (BOOL)

Remarks

  1.  (1) Input signal
  2.  (2) Output signal
  3.  (3) One scan
  4.  (4) Leading edge

Detection of the input signal’s rising edge is also assured at the first scan.

  1.  (1) Input signal
  2.  (2) Output signal
  3.  (3) One 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

Example

POU header

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

LD body

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

ST body

output_value:=DFI(input_value);

IL body

Modified on: 2019-01-25Feedback on this pagePanasonic hotline