Mover tres valores a un área de destino
Estas instrucciones FP copian tres valores a un área de destino definida por d_Start.
Entrada
Área fuente
Salida
Área de destino
Si los valores especificados utilizando el modificador índice están fuera de rango.
Si el rango de transferencia de datos está fuera del rango accesible.
Si los valores especificados utilizando el modificador índice están fuera de rango.
Si el rango de transferencia de datos está fuera del rango accesible.
Todas las variables de entrada y de salida utilizadas para la programación de esta función han sido declaradas en la Cabecera de la POU. Se utiliza la misma cabecera de la POU para todos los lenguajes de programación.
VAR
rArray: ARRAY[0..2] OF REAL:=[3(0.0)];
bEnable: BOOL:=FALSE;
rValue3: REAL:=5.6;
rValue2: REAL:=3.4;
rValue1: REAL:=1.2;
END_VAR
La función se ejecuta cuando la variable bEnable se encuentra a TRUE.
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 6 ;
NETWORK_BODY
B(B_VARIN,,rValue1,18,2,20,4,);
B(B_VARIN,,rValue2,18,3,20,5,);
B(B_VAROUT,,rArray[0],28,2,30,4,);
B(B_CONTACT,,bEnable,5,1,7,3,);
B(B_VARIN,,rValue3,18,4,20,6,);
B(B_F,FP_MOVE3!,,20,0,27,6,,?DEN?D@'s1'?Ds2?Ds3?AENO?Cd_Start);
L(1,2,5,2);
L(7,2,20,2);
L(27,3,28,3);
L(1,0,1,6);
END_NETWORK_BODY
END_NET_WORK
END_BODY
If (bEnable) then
FP_MOVE3(s1 := rValue1,
s2 := rValue2,
s2 := rValue3,
d_Start => rArray[0]);
End_if;