plc的西门子plc数据类型型转换问题

日期和时间西门子plc数据类型型包括:

TIME_OF_DAY时间(当前时间是几点几分几秒几毫秒);

LTIME_OF_DAY,时间(当前时间是几点几分几秒几毫秒几纳秒);

LDT日期+时间,无符号整数到纳秒;

DTL,日期+时间结构体,到纳秒

这些都没什么好说的,下面只说一下LDT和DTL实际上表达的内容是一样的,只是表达的方式不同

LDT和DTL范围和精度都是一样的,DTL使用了一个结构体来表达里面还多了一个星期几的表达,这个是根据年月日自己计算出来的

这些日期和时间是有范圍的。如下图:

DTL结构中的数据可以输入超出合理范围的数值如下图:

这样就和实际不符了,在使用中需要注意

加载中,请稍候......

以上网伖发言只代表其个人观点不代表新浪网的观点或立场。


ENCO编码指令。使能输入有效时將字型输入数据IN的最低有效位(值为1的位)的位号输出到OUT所指定的字节单元的低4位。即用半个字节来对一个字型数据16位中的1位有效位进行編码
使能流输出ENO断开的出错条件:SM4.3(运行时间);0006(间接寻址)。

以本指令为例指令执行情况如表所示。

图7 编码指令执行结果

DECO译码指令。使能输入有效时将字节型输入数据IN的低4位所表示的位号对OUT所指定的字单元的对应位置1,其他位置0即对半个字节的编码进行译码來选择一个字型数据16位中的1位。
使能流输出ENO断开的出错条件:SM4.3(运行时间);0006(间接寻址)

图8 译码指令执行结果

使能输入有效时,将字節型输入数据IN的低4位有效数字产生相应的七段码并将其输出到OUT所指定的字节单元。

下面仅以ASCII码转换16进制指令为例说明字符串与其他西门孓plc数据类型型之间的转换

指令盒中有3个操作数:IN,开始字符的字节地址字节类型;LEN,字符串的长度字节类型,最大长度为255;OUT输出目的开始字节地址,字节类型使能输入有效 时,把从IN开始的长度为LEN的ASCII码转换为16进制数并将结果送到OUT开始的字节进行输出。

以上面的指囹为例条指令的执行结果如表所示,程序如图所示

图9 指令ATH执行结果

我要回帖

更多关于 西门子plc数据类型 的文章

 

随机推荐