TIME in DOUBLE WORD
TIME_TO_DWORD converte un valore del tipo di dato TIME in un valore del tipo di dato DWORD. Il tempo di 10ms corrisponde al valore 1, p.es. un valore di ingresso di T#1s viene convertito nel valore 100 (16#64).
Ingresso
Tipo di dato di ingresso
Uscita
Risultato della conversione
Se il tipo di dato desiderato è supportato, raccomandiamo di usare l’istruzione sovrapposta TO_DWORD.
Tutte le variabili di ingresso e uscita utilizzate per programmare questa funzione sono state dichiarate nell'intestazione del POU. La stessa intestazione del POU è utilizzata per tutti i linguaggi di programmazione.
VAR
time_value: TIME:=T#0s;
DWORD_value: DWORD:=0;
END_VAR
In questo esempio vengono utilizzate variabili. Potete anche utilizzare una costante per la variabile di ingresso.
time_value del tipo di dato TIME viene convertito in un valore del tipo di dato DWORD e scritto nella variabile di uscita DWORD_value.
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_VARIN,,TIME_value,8,1,10,3,);
B(B_VAROUT,,DWORD_value,20,1,22,3,);
B(B_F,TIME_TO_DWORD!,Instance,10,1,20,3,,?D?C);
L(1,0,1,5);
END_NETWORK_BODY
END_NET_WORK
END_BODY
DWORD_value:=TIME_TO_DWORD(time_value);