Partial I/O update
Updates the inputs or outputs specified by the value of d1_Start (starting word address) and the value of d2_End (ending word address) immediately after the trigger EN is in the ON-state even in the program execution stage.
Input
starting word address
ending word address
Using this instruction, you can update inputs or outputs without the time-lag caused by scanning.
The same type of operand should be specified for d1_Start and d2_End.
FP2, FP2SH, FP3 /5 /10 /10SH (PLCs with backplanes)
Specify the word address as 0 £d1_Start£d2_End£ 127.If only WX10 (or WY10) are to be updated based on the I/O-address configuration, d1_Start and d2_End will be set as follows: d1_Start = 10 and d2_End = 10.
Set the same word address in d1_Start and d2_End to update only 1 word.
The partial I/O update instruction is executed only for the I/O units on the master backplane or expansion backplane. It is not executed for the I/O unit in the slave station of the Remote I/O System.
FP-S, FP0 (PLCs without backplanes)
The instruction F143_IORF updates the inputs and outputs specified by d1_Start (starting word address) and d2_End (ending word address) immediately after the trigger turns ON even in the program execution stage.
With the FP0 and FP-S, refreshing initiated by the IORF command is done only for the control unit.
If d1_Start and d2_End are variables and not constants, then the compiler automatically accesses the variables' values via the index register.
The same type of operand should be specified for d1_Start and d2_End.
With input refreshing, WX0 should be specified for d1_Start and d2_End.
With output refreshing, WY0 should be specified for d1_Start and d2_End.
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
start: BOOL:=FALSE;
(*activates the funtion*)
FirstRefreshAddr: INT:=10;
LastRefreshAddr: INT:=10;
END_VAR
When the variable start changes from FALSE to TRUE, the function is carried out.
To update WX10 and WY10 based on the master I/O map configuration, set d1 = 10 and d2 = 10.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_CONTACT,,start,5,1,7,3,);
B(B_F,F143_IORF!,Instance,9,0,16,5,,?DEN?Dd1_Start?Dd2_End?AENO);
B(B_VARIN,,FirstRefreshAddr,7,2,9,4,);
B(B_VARIN,,LastRefreshAddr,7,3,9,5,);
L(1,2,5,2);
L(1,0,1,5);
L(7,2,9,2);
END_NETWORK_BODY
END_NET_WORK
END_BODY
(* PLCs with backplanes FP-C/FP2/FP2SH/FP3/FP10SH *)
IF start then
(* Updates the input/output of word no. 0 to 1 *)
F143_IORF( 0, 1);
END_IF;
(* PLCs without backplanes FP0, FP-Sigma *)
IF start then
(* Updates the input/output of word no. 0 to 1 *)
F143_IORF(WX0, WX1);
F143_IORF(WY0, WY1);
END_IF;