LREAL型からTIME型へ
LREAL_TO_TIME命令は、LREAL型の値をTIME型に変換します。TIME型の10msは、LREAL型の1.0に相当します。例えば、LREAL = 1.0のとき、TIME = 10msになり、LREAL = 100.0のときTIME = 1sになります。REAL型の値は、近似の整数に四捨五入して変換します。
出力
POUヘッダには、このプログラムで使用するすべての入力変数と出力変数を宣言します。POUヘッダは全プログラム言語で使用できます。
VAR
lrValue: LREAL:=5.983e5;
bStart: BOOL:=FALSE;
tResult: TIME:=T#0s;
END_VAR
変数bStartがTRUEにセットされると、このファンクションが実行されます。
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 6 ;
NETWORK_BODY
B(B_CONTACT,,bStart,3,2,5,4,);
B(B_F,E_LREAL_TO_TIME!,,10,1,19,5,,?DEN?Da_LReal?AENO?C);
B(B_VARIN,,lrValue,8,3,10,5,);
B(B_VAROUT,,tResult,19,3,21,5,);
L(1,0,1,6);
L(1,3,3,3);
L(5,3,10,3);
END_NETWORK_BODY
END_NET_WORK
END_BODY
if (bStart) then
tResult:=LREAL_TO_TIME(lrValue);
end_if;