sunway

力控监控组态软件中如何与标准的或者非标准的modbus设备通讯?

0
阅读(2588)
 

在与设备进行modbus通讯时,客户会面临以下几个问题:

(1)    设备是非标准的modbus,驱动如何配置?

(2)    寄存器的地址和功能码如何对应,如40001寄存器应该与几号功能码对应?偏移地址设置为多少?

针对以上问题,本期将向您介绍力控mod bus驱动详细使用办法。

1、首先理解寄存器与功能码的概念

MODBUS对应的寄存器只4

0开头的寄存器是开关量输出,或称DI,如000001

1开头的寄存器是开关量输入,或称DO,如100001

3开头的寄存器是模拟量输入,或称AI,如300001

4开头的寄存器是模拟量输出,或称AO,如400001

但用MODBSU RTU协议去读写这些寄存器时是功能码访问的对应关系如下:

0105号代码对应0号寄存器,01负责读,05负责写

02号代码对应1号寄存器,只读

04号代码对应3号寄存器,只读

0306号代码对应4号寄存器,03负责读,06负责写

此条指令写的话还可以是16号代码,即 A0功能代码,用来指写数据的

在数据连接中只能看到03看不到06是因为在驱动配置中有一个0616的项!

这样的话你就会发现读:

300011寄存器,在力控驱动中选择 04功能代码,偏置为16进制地址转换成10进制数,然后加1,在300011寄存器中,11为十六进制,转为偏置即为(1×16+1+1=18

2、非标准Modbus如何配置以及注意事项请参考附件