REAL型またはLREAL型入力変数のINT型への変換(小数点以下切り捨て)
TRUNC_TO_INT命令は、REAL, LREAL型の数値の小数点以下を切り捨て、INTEGER型の出力変数を転送します。
入力
入力データ型
出力
変換結果
必要なデータ型がサポートされている場合、多重定義されたTO_INT命令の使用をおすすめします。
小数点以下を切り捨てることで、正数は0方向に減少し、負数は0方向に増加します。
入力変数の最初の16ビットが、出力変数に割り付けられます。
入力変数がREAL型でないとき
出力変数が16ビットINT型よりも大きいとき
入力変数がREAL型でないとき
出力変数が16ビットINT型よりも大きいとき
出力変数が0のとき
POUヘッダには、このプログラムで使用するすべての入力変数と出力変数を宣言します。 POUヘッダは全プログラム言語で使用できます。
VAR
REAL_value: TRUNC;
INT_value: INT:=0;
END_VAR
この例では、変数を使用しています。入力変数の代わりに、定数を使用することもできます。
REAL_valueの小数点以下が切り捨てられます。resultは、16ビットINT型としてINT_valueに格納されます。
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 2 ;
NETWORK_BODY
B(B_F,TRUNC_TO_INT!,Instance,10,0,19,2,,?D?C);
B(B_VARIN,,REAL_value,8,0,10,2,);
B(B_VAROUT,,INT_value,19,0,21,2,);
L(1,0,1,2);
END_NETWORK_BODY
END_NET_WORK
END_BODY
INT_value:=TRUNC_TO_INT(REAL_value);
LD |
REAL_value |
TRUNC_TO_INT |
|
ST |
INT_value |