设备接入-Modbus RTU驱动设备接入
设备接入
-
1.Modbus RTU协议概述
Modbus是OSI模型第7层上的应用层报文传输协议,它在连接至不同类型总线或网络的设备之间提供客户机/服务器通信。平台的MBRTU协议是建立在TCP协议之上的应用层协议。一般使用DTU实现底层TCP连接,然后平台和设备进行应用层的modbus协议通讯。
2.平台配置概述
- 串口:设备的串口号。
- 串口配置:设备的串口配置。
- 连接超时时间:单位秒,默认10s,创建连接的最长超时时间及读写数据的最长超时时间。
- 连接空闲时间:单位秒,默认30s,从上一次请求后超过时间链接未使用,关闭当前链接。
- 连接使用间隔:单位毫秒,默认1毫秒,同一设备IP和端口下的设备,读取的时间间隔。
- 采集周期:表示读取传感器数据的周期时间,单位秒,最小值0.001秒,由于MODBUS协议是请求应答式协议,每次读数据都会等待接收,等待的过程会产生延时,最长等待超时时间(秒),所以越多数据不响应,采集周期会越长。
- 站号:将请求发送到 Modbus TCP 从站设备的设备ID。
- 自动化地址:开启自动化地址,数据点偏移地址从1开始。 偏置表示的是数据地址。如果数据地址是16进制表示(0x0000开始),则需要把16进制转为十进制并加1,才是偏置的值。如果地址使用区号+序号表示(比如40001),则偏置只取序号就可以了(也就是1)。
- 通讯监控参数:通讯超时时间:单位秒(s),判断设备超时的时间标准,超时时间默认为定义采集周期的3倍。
3.数据点配置
- 名称:数据点名称
- 标识:数据点唯一标识
- 读取区域:
-
- 线圈状态:01读写,对开关量(bit位)进行读写,写入默认使用05功能码(不需要单独设置),该功能码一般针对PLC的开关输出点(比如西门子PLC的Q点)。
-
- 输入状态:02只读,对开关量(bit位)进行读,是只读的,不允许写入,一般针对PLC的开关输入点(比如西门子PLC的I点)。
-
- 保持寄存器:03读写,对整形/浮点型数据进行读写,写入默认使用06功能码(16位整形数据)和10功能码(32位和64位整形和浮点型数据),也就是对单个寄存器写入使用06,多个寄存器使用10。
-
- 输入寄存器:04只读,对整形/浮点型数据进行读,只读不写。
- 偏移地址:数据点所在寄存器起始地址。
- 寄存器个数:数据点占用的寄存器个数,不填根据数据类型处理。
- 数据类型
4.指令配置
- 写入区域
-
- 线圈状态:01读写,对开关量(bit位)进行读写,写入默认使用05功能码(不需要单独设置),该功能码一般针对PLC的开关输出点(比如西门子PLC的Q点)。
-
- 保持寄存器:03读写,对整形/浮点型数据进行读写,写入默认使用06功能码(16位整形数据)和10功能码(32位和64位整形和浮点型数据),也就是对单个寄存器写入使用06,多个寄存器使用10。
- 偏移地址:点所在寄存器起始地址。
- 数据类型:同数据点。
- 默认写入值:指令写入时候的默认值。
- 单字节:勾选单字节后数据值按寄存器写入数据,否则多个寄存器同时写值。