一、初步认识:
AutoShop:
Modbus Poll:
1、连接配置
Connection | Serial Port | RS-485转串口,所以是串口 |
Serial Settings | COM3 | 当你插入串口后,会显示新的一个端口,就是这个端口 |
通讯速率 | 9600 | 与PLC协议配置一致 |
数据长度 | 8 | 与PLC协议配置一致 |
奇偶校验位 | 0 | 与PLC协议配置一致 |
停止位 | 2 | 与PLC协议配置一致 |
Mode | RTU | 做的是RTU从站 |
Response Timeout | 500 | 超时时间(连接超时) |
Delay Between Polls | 2 | 帧间隔时间,可以一致也可以不一致 |
二、读写操作
1、功能码
0x01 | Read Coils | 读线圈 |
0x02 | Read Discrete Inputs | 读离散输入状态 |
0x03 | Read Holding Registers | 读保持寄存器 |
0x04 | Read Input Registers | 读输入寄存器 |
0x05 | Wtrite Single Coil | 写单线圈 |
0x06 | Write Single Register | 写单寄存器 |
0x07 | Multiple Coils | 写多线圈 |
0x08 | Multiple Registers | 写多寄存器 |
2、数据绑定
Slave ID | 站号 | 1~247 |
Address | 起始地址 | (1)地址 |
Quantity | 数量 | (2)数量 |
Scan Rate | 帧的扫描周期 | |
Disable | "Read/Write Disabled" 可以选择是否禁止读写 | "Disable on error" 选择是否一出错就停止读写 |
Rows | 可以显示多少行 | |
Hide Alias Columns | 选择是否隐藏"Alias"列 | |
PLC Addresses(Base 1) | 选择通信的基地址是从0开始还是从1开始 | |
Address in Cell | 选择是否在每个单元格中显示地址 | |
Enron/Daniel Mode | 增加了浮点的数据类型扩展,读写一个寄存器是4个字节 | 主要用于跟支持该模式的设备通信用的 |
(1)地址
(2)数量
看功能码,如单个线圈或者单个寄存器,只能为1;
若是读多线圈,则最大为2000;
若是写多线圈,则最大为1968;
若是读多寄存器,则最大为125;
若是写多寄存器,则最大为123;
三、演示操作
(1)初始状态
(2)将 M1 导通
先读一下M1值为多少
往里写1
(3)读一下D1的值
(4)给 D10 传值 200
(5)再读取D200的值
汇川Modbus协议说明:
详细研究 Modbus Poll 可看这个博主的