标签 PLC 下的文章

一、Modbus Tcp

以下指令均为16进制数。

1.读多个地址。
0000 0000 0006 01 03 0001 0010
0000:事务标识符(2字节) ,没有特别定义;
0000:协议标识符(2字节) ,MODBUS协议的场合为0000H;
0006:长度(2字节),后面所跟的字节长度;
01 :单元标识符(1字节),站号,或者说机器地址;
03:功能(1字节) ,请指定功能代码;(功能代码补充:03读多个地址,06写单个地址,10写多个地址)
0001:起始数据地址;
0010:读个数。

2.写单个地址。
0000 0000 0006 01 06 00FF 000A
0000:事务标识符(2字节) ,没有特别定义;
0000:协议标识符(2字节) ,MODBUS协议的场合为0000H;
0006:长度(2字节),后面所跟的字节长度;
01 :单元标识符(1字节),站号,或者说机器地址;
06:功能(1字节) ,请指定功能代码;(功能代码补充:03读多个地址,06写单个地址,10写多个地址)
00FF:写入地址;
000A:写入数据。

3.写多个地址。
0000 0000 000B 01 10 0001 0002 04 000A 000B
0000:事务标识符(2字节) ,没有特别定义;
0000:协议标识符(2字节) ,MODBUS协议的场合为0000H;
000B:长度(2字节),后面所跟的字节长度;
01 :单元标识符(1字节),站号,或者说机器地址;
10:功能(1字节) ,请指定功能代码;(功能代码补充:03读多个地址,06写单个地址,10写多个地址)
0001:起始数据地址;
0002:写个数;
04:字节数,写个数*2;
000A:写入数据1;
000B:写入数据2。

二、Modbus RTU
以下指令均为16进制数。
1.读多个地址。
01 03 0001 0010 15C6
01 :机器地址;
03:功能代码;(功能代码补充:03读多个地址,06写单个地址,10写多个地址)
0001:起始数据地址;
0010:读个数;
15C6:校验代码(CRC)。

2.写单个地址。
01 06 00FF 000A 39FD
01 :机器地址;
06:功能代码;(功能代码补充:03读多个地址,06写单个地址,10写多个地址)
00FF:写入地址;
000A:写入数据;
39FD:校验代码(CRC)。

3.写多个地址。
01 10 0001 0002 04 000A 000B 53A6
01 :单元标识符(1字节),站号,或者说机器地址;
10:功能(1字节) ,请指定功能代码;(功能代码补充:03读多个地址,06写单个地址,10写多个地址)
0001:起始数据地址;
0002:写个数;
04:字节数,写个数*2;
000A:写入数据1;
000B:写入数据2;
53A6:校验代码(CRC)。