有个读者问我,“最近阅读您主编的《S7-1200PLC编程及应用》第2版,有一个问题我很迷惑,假如我在触摸屏上输入一个定时时间,地址MD10,输入的数据需要乘以60再送给接通延迟定时器,定时器要求输入是‘TIME’类型数据,但是乘法指令MUL没有‘TIME’类型数据的乘法,请问这个问题怎么解决呢?”
下面是我的回答:TIME数据类型的单位为毫秒,共4个字节。建议接收触摸屏设置的的时间值的MD10的数据类型为双整数DINT,时间单位为ms,在PLC中用双整数乘法将它乘以60后,送给一个数据类型为TIME的地址(例如MD14),作为定时器的设定值。
S7-300/400的IEC定时器也使用TIME数据类型,可以用同样的方法来处理。