我有个数据比较要求,显示屏上可以显示大于32767的数,但是plc里面不是这么显示的 大过了就负数了,
求问这个数据比较应该怎么弄
我有个数据比较要求,显示屏上可以显示大于32767的数,但是plc里面不是这么显示的 大过了就负数了,
求问这个数据比较应该怎么弄
把plc里面的变量(就是要在触摸屏上显示的这个变量),变量类型设为Uint , Dint ,Udint,LREAL,这几种都行。
1、PLC中使用使用双字比较指令即可实现,大于32767的数字比较。
2、监控时选择双字10进制监控就行了。
32位整数
1)如果可以修改地址,就把两个要比较的地址改为32位整数。
2)不能修改地址就需要把两个值做个判断,原始值为负值时+65536,用相加后的数值比较;原始值为正值时正常比较。
参考基本指令使用手册,例如MOV是单字传送指令,监控时显示数值在K-32768~K+32767的范围内。但是DMOV是双字传送指令则显示数值在K-2,147,483,648~K2,147,483,647的范围内。看看是不是你的指令出现问题了。
显示数据格式问题,信捷PLC内的自由监控功能寄存器默认格式是单字有符号十进制整数,不修改直接输入地址监控则就会出现你这种情况,数值过大就会PLC内显示负数。数据格式的问题在基本指令使用手册内都有详细介绍的,触摸屏的显示格式也是同理。