XGB PLC Modbus操作笔记
1.设置通信参数
通道2是内嵌485通信模块,采用modbus rtu server
2.设置modbus数据区域,read区和write区
3.按位(bit)读P区数据,从P00000开始
03 02 00 00 00 40 78 18
站号 |
功能码 |
起始高 |
起始低 |
数据高 |
数据低 |
校验高 |
校验低 |
|
03 |
02 |
00 |
00 |
00 |
40 |
78 |
18 |
|
返回8byte,依次从低到高代表输入点P00000-P0001F,输出点P00020-P0003F。
返回值中前4byte为0,没有输入信号第5byte为20,对应P00025=ON,第6byte为10,对应P0002C=ON,其余为off。
4.按字长(16bit)读P区数据,从P0000开始
03 04 00 00 00 04 F0 2B
站号 |
功能码 |
起始高 |
起始低 |
数据高 |
数据低 |
校验高 |
校验低 |
|
03 |
04 |
00 |
00 |
00 |
04 |
F0 |
2B |
|
返回8byte,和功能码2对比,稍有差异,依次从低到高代表输入点P00000-P0001F,输出点P00020-P0003F。每两个字节组成一个字,高位在前,低位在后
返回值中前2byte为P0001F-P00010,没有输入信号,第5byte为10,对应P0002C=ON,第6byte为29,对应P00025=ON,P00023,P00020=ON,其余为off。
5.按位写数据,从M00900开始
03 0F 00 00 00 10 02 EE EE FA F0
站号 |
功能码 |
起始高 |
起始低 |
数量高 |
数量低 |
字节数 |
数据高 |
数据低 |
校验高 |
校验低 |
03 |
0F |
00 |
00 |
00 |
10 |
02 |
EE |
EE |
FA |
F0 |
连续按位写入16位数据,数量0x0010指定了写入16位,数据高低位指定了具体数值
- 按位读M区数据,从M0090开始
03 01 00 00 00 10 3C 24
站号 |
功能码 |
起始高 |
起始低 |
数量高 |
数量低 |
校验高 |
校验低 |
|
03 |
01 |
00 |
00 |
00 |
10 |
3C |
24 |
|
返回2字节,16位数据,即前面用0F功能码写入的数据