工控智汇

工控智汇

欧姆龙NJ/NX控制器传送指令与转换指令

admin 14 59

欧姆龙NJ/NX控制器传送指令与转换指令

前面文章介绍了传送指令,它属于函数(功能),是一个经常用到的指令。在某些情况下传送指令也会失效,是什么情况呢?

1、整数变实数的传送。


如上图所示,“输入”中的数据“125”,能传送到“输出”中,输出等于“125”。

仔细看“输入”变量的数据类型为“INT(整数)”,“输出”变量的数据类型为“REAL(实数)”,这表明整形数据类型的变量可以传送数据到实数数据类型的变量。

2、实数变整数的传送。


如上图所示,实数变整数的传送不能通过编译。因此,传送指令“MOVE”不能传送不同数据类型的数据,除“整数”传送到“实数”外。

3、任意数据类型转换传送“TO_□”指定数据类型指令。


如上图所示“TO_□”类指令有14个,“□”分别对应以下14种数据类型:

BYTE:8位(1字节)位列,168位数表示。

INT:16位整数

LINT:64位整数

LREAL:64位实数

LWORD:64位(8字节)位列,164位数表示。


4、数据类型转换指令“□_TO_□”,把“□”替换成以上14种数据类型,就得到196种转换指令的组合,确实挺多的,但是不难记。


5、时间数据类型的整数转换指令。

时间数据类型有持续时间型(TIME)、日期型(DATE)、时刻型(TOD),可以转换成整数秒。


因为位列数据类型的数据不可进行大小比较,而整数数据类型的数据不可进行逻辑运算,在需要比较大小的时候,位列数据类型转换成整数数据类型,在需要逻辑运算时,整数数据类型转换成位列数据类型。所以,数据类型转换在数据运算时比较常见,虽然有时没用数据类型转换指令,但是有时是变量数据类型通过代入到指令中实现自动转换了。