显控屏modbus功能码

MODBUS地址类型与功能码对应关系

当触摸屏作为一个MODBUSSERVER主站时,是要对所连接的MODBUSRTU从站进行读写控制。WEINVIEW的触摸屏支持01—05和16号功能码。每个设备地址类型所使用的功能码如下:


对MODBUSRTU设备进行读写,触摸屏上的元件中使用什么样的地址类型,取决于RTU设备所支持的功能码、目标对象是位地址还是字地址控制、以及是否要进行写入;

MODBUS协议的设备类型为0x、1x、3x、4x、5x、6x,还有3x_bit,4x_bit,6x_bit,0x_multi_coils等,下面分别说明这些设备类型在MODBUS协议中支持哪些功能码。

0x:是一个可读可写的设备类型,相当于操作PLC的输出点。该设备类型读取位状态的时候,发出的功能码是01H,写位状态的时候发出的功能码是05H。写多个寄存器时发出的功能码是0fH

1x:是一个只读的设备类型,相当于读取PLC的输入点。读取位状态的时候发出的功能码为02H。

3x:是一个只读的设备类型,相当于读取PLC的模拟量。读数据的时候,发出的功能码是04H。

4x:是一个可读可写的设备类型,相当于操作PLC的数据寄存器。当读取数据的时候,发出的功能码是03H,当写数据的时候发出的功能码时10H,可写多个寄存器的数据。

5x:该设备类型与4x的设备类型属性是一样的。即发出读写的功能码完全一样,不同之处在于:当为双字时,例如32_bitunsigned格式的数据,使用5x和4x两种设备类型分别读取数据时,高字和低字的位置是颠倒的。例如,使用4x设备类型读到的数据是0x12345678,那么使用5x设备类型读到的数据0x56781234.

6x:是一个可读可写的设备类型,读取数据的时候,发出的功能码也是03H,与4x不同之处在于写数据的时候发出的功能码是06H,即写单个寄存器的数据。

3x_bit:该设备类型发出的功能码与3x设备类型完全一致,不同之处是,3x是读数据,而3x_bit是读数据中的某一位的状态。

4x_bit:该设备类型发出的功能码与4x设备类型完全一致,不同之处是,4x是读数据,而4x_bit是读数据中的某一位的状态。

6x_bit:该设备类型发出的功能码与6x设备类型完全一致,不同之处是,6x是读数据,而6x_bit是读数据中的某一位的状态。

0x_multi_coils:该设备类型发出的功能码与0x设备类型完全一致,不同之处是,0x是读16整数倍位数的bit,而0x_multi_coils可读任意位数的bit。


0x,输出(线圈)位寄存器
1x,输入(触点)位寄存器
3x,输入寄存器
4x,保持寄存器
3x-D,输入寄存器-双字
4x-D,保持寄存器-双字
3x-bit,输入寄存器-字位
4x-bit,保持寄存器-字位


猜你喜欢

转载自blog.csdn.net/yangyang_1024/article/details/80706948