TIME in DOUBLE INTEGER
TIME_TO_DINT wandelt einen Wert vom Datentyp TIME in einen Wert vom Datentyp DINT um. Die Zeit 10ms entspricht dem Wert 1, z.B. wird der Eingangswert T#1m0s in den Wert 6000 gewandelt.
Eingang
Eingangsdatentyp
Ausgang
Umwandlungsergebnis
Im POE-Kopf werden alle Ein- und Ausgangsvariablen deklariert, die für die Programmierung dieser Funktion verwendet werden. Für alle Programmiersprachen wird der gleiche POE-Kopf verwendet.
VAR
time_value: TIME:=T#0s;
DINT_value: DINT:=0;
END_VAR
In diesem Beispiel werden Variablen verwendet. Für die Eingangsvariable kann auch eine Konstante verwendet werden.
time_value vom Datentyp TIME wird in einen Wert vom Datentyp DOUBLE INTEGER umgewandelt. Das Ergebnis wird in die Ausgangsvariable DINT_value geschrieben.
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,TIME_TO_DINT!,Instance,10,2,18,4,,?D?C);
B(B_VARIN,,TIME_value,8,2,10,4,);
B(B_VAROUT,,DINT_value,18,2,20,4,);
L(1,0,1,5);
END_NETWORK_BODY
END_NET_WORK
END_BODY
DINT_value:=TIME_TO_DINT(time_value);