在三菱 plc编程中,数值进制有二进制(BIN)、八进制(OCT)、十进制(DEC)、十六进制(HEX)和ASCLL码等等,不同进制在编写程序时数值的写法也不同,例如:当想指定一个数值10的时候,用十进制编程,写法是K10,用十六进制写法是H0A。 由于十进制和十六进制前10位数都是0~9,所以工程师经常搞错。举个例子: 有一个客户通过串行通信方式将18个温度表与 三菱plc连接,通过三菱的便捷功能——通讯协议库进行数据交换。但在实际使用中却发现,只有前9个温度表后3个才能进行数据交换,中间温度表无法进行数据交换。客户百思不得其解,最后我们海蓝工程师发现,协议库数据包的设置中,配置元素设置用的代码类型是十六进制(HEX),但设定值指定的却是以十进制的,如下图 由于代码类型是HEX,所以设定值“10”其实是指第16个温度器,并不是第10个温度器。因此才会导致第10个到第15个温度表无法读取数据。 除了上述的参数设置要注意数值的进制类型外,在三菱 plc编程中,一些指令也要注意进制的转换,像FROM指令、TO指令、MOV指令等指令。 |