跳转至

modbus-rtu采集

云端配置(modbus-rtu采集)

新建通道

新建一个采集通道,协议选择MODBUS-RTU,主参数中,串口名称按照网关实际的接线情况选择对应的COM口(COM1对应A1、B1,以此类推),其它参数如无特殊要求保持默认即可;

提示

本协议支持切换协议类型为TCP,可做TCP Server接收DTU数据,此时设备公共地址填DTU的注册帧字符串。

注意

MODBUS一次性读取的寄存器个数有数量限制,本协议默认在规约特征里配置了单帧寄存器最大个数以实现自动分组,如需手动分组(请参照链接中采集分组描述说明),将该参数设置为0。

对时配置

如果需要对设备进行对时,则需要在规约参数上设置对时报文格式,对时报文开头部分是功能码和寄存器部分,按照装置说明里面的对时报文写死即可。对时报文的时间部分,会用到通配符。相关通配符说明如下:

符号 描述
%?A 将被替换为设备通讯地址(Address),?处填写字符串长度,下同
%?Y 将被替换为年份(如2025年,当配置成%2Y时被替换成0x25,配置成%4Y时被替换成0x2025)
%2M 将被替换为月份(只支持%2M,如7月,会被替换成0x07)
%2D 将被替换为(日期)(只支持%2D,如19日,会被替换成0x19)
%2H 将被替换为(小时)(只支持%2H,如18时,会被替换成0x18)
%2M 将被替换为(分钟)(只支持%2M,如56分,会被替换成0x56)
%?S 将被替换为(秒值/毫秒值)(如3.234秒,%2S会被替换成0x03,%4S则按照毫秒进行替换,替换成0x3234)

提示

%号后面的?,为数字,代表字符串长度,字符串长度除以2就是字节个数。

对时报文默认是按照BCD格式发送。如果要按照十六进制发送,则在对时报文开头加"0x"即可。此时2025年,会按照0x07E9发送。

%4S在BCD模式下,会溢出,他一般是在十六进制模式下使用。

新建设备

新建一个设备,自定义设备名称,通讯地址填写modbus从站的485地址,其余参数留空即可。

新建测点

举例新建一个保持寄存器测点,已知寄存器地址为4100,数据类型为16位有符号位整型,那么功能码选择03,06号命令地址填写4100数据类型选择16位有符号数据格式(高低位)选择12

提示

有些设备的点表在描述时,可能会将寄存器类型作为数字拼接到寄存器的最高位,例如“4100”,也有可能指功能码“04号命令(读输入寄存器)”、地址为“100”。

注意

使用01、02功能码读取时,测点数据类型必须为

使用03、04功能读取,且需要按位取值时,测点数据类型应该为16位有/无符号32位有/无符号,并在测点的高级设置里勾选按位取值。

举例读字符串数据,该字符串保存在保持寄存器中,已知寄存器地址为260,字符串值长度为9,那么功能码选择03,06号命令地址填写260数据格式(高低位)选择21(根据实际情况可以更改为12),数据类型选择字符串,此时系数一栏会变成字符串长度,在此填写9

提示

为了避免字符串读取不全,本驱动中对长度做了x2处理,所以此处填5(计算时长度补足为偶数然后除以2(9+1)/2=5)或者9都是能读到的。

本地配置(modbus-rtu采集)

展开查看视频

新建通道

新建一个采集通道,协议选择MODBUS-RTU,主参数中,串口名称按照网关实际的接线情况选择对应的COM口(COM1对应A1、B1,以此类推),其它参数如无特殊要求保持默认即可;

提示

本协议支持切换协议类型为TCP,可做TCP Server接收DTU数据,此时设备公共地址填DTU的注册帧字符串。

注意

MODBUS一次性读取的寄存器个数有数量限制,本协议默认在规约特征里配置了单帧寄存器最大个数以实现自动分组,如需手动分组(请参照链接中测点分组描述说明),将该参数设置为0。

新建设备

新建一个设备,自定义设备名称,通讯地址填写modbus从站的485地址,其余参数留空即可。

新建测点

举例新建一个保持寄存器测点,已知寄存器地址为4100,数据类型为16位有符号位整型,那么功能码选择03,06号命令地址填写4100数据类型选择16位有符号数据格式(高低位)选择12

提示

有些设备的点表在描述时,可能会将寄存器类型作为数字拼接到寄存器的最高位,例如“4100”,也有可能指功能码“04号命令(读输入寄存器)”、地址为“100”。

注意

使用01、02功能码读取时,测点数据类型必须为

使用03、04功能读取,且需要按位取值时,测点数据类型应该为16位有/无符号32位有/无符号

举例读字符串数据,该字符串保存在保持寄存器中,已知寄存器地址为260,字符串值长度为9,那么功能码选择03,06号命令地址填写260数据格式(高低位)选择21(根据实际情况可以更改为12),数据类型选择字符串,此时系数一栏填写字符串长度9

提示

为了避免字符串读取不全,本驱动中对长度做了x2处理,所以此处填5(计算时长度补足为偶数然后除以2(9+1)/2=5)或者9都是能读到的。

对时配置

如果需要对设备进行对时,则需要在规约参数上设置对时报文格式,对时报文开头部分是功能码和寄存器部分,按照装置说明里面的对时报文写死即可。对时报文的时间部分,会用到通配符。相关通配符说明如下:

符号 描述
%?A 将被替换为设备通讯地址(Address),?处填写字符串长度,下同
%?Y 将被替换为年份(如2025年,当配置成%2Y时被替换成0x25,配置成%4Y时被替换成0x2025)
%2M 将被替换为月份(只支持%2M,如7月,会被替换成0x07)
%2D 将被替换为(日期)(只支持%2D,如19日,会被替换成0x19)
%2H 将被替换为(小时)(只支持%2H,如18时,会被替换成0x18)
%2M 将被替换为(分钟)(只支持%2M,如56分,会被替换成0x56)
%?S 将被替换为(秒值/毫秒值)(如3.234秒,%2S会被替换成0x03,%4S则按照毫秒进行替换,替换成0x3234)

提示

%号后面的?,为数字,代表字符串长度,字符串长度除以2就是字节个数。

对时报文默认是按照BCD格式发送。如果要按照十六进制发送,则在对时报文开头加"0x"即可。此时2025年,会按照0x07E9发送。

%4S在BCD模式下,会溢出,他一般是在十六进制模式下使用。