Modbus RTU协议设备如何接入Modbus物联网平台 | 您所在的位置:网站首页 › rtu设备生产厂家 › Modbus RTU协议设备如何接入Modbus物联网平台 |
教程写的比较详细,按照新手使用摸索学习思路来写的,高手可以跳过懂的部分! 步骤1:购买硬件设备首先,你需要购买一个联网设备,如4G DTU(数据终端设备)或串口服务器。4G DTU和串口服务器是将你的设备(如传感器)的数据连接到互联网的设备。选择哪种设备,主要取决于你的网络接入方式。如果你的设备需要通过移动网络(2G/4G/5G)接入,那么就选择4G DTU。如果你的设备通过有线网络(插网线)接入,那么你应该选择串口服务器。 步骤2:设备接线购买设备后,你需要进行设备接线。对于大多数设备,你可能会看到A、B、 V(12V+) 和 G (12V-) 这样的标签: A(通常指RS485的A线)连接到设备的A线 B(通常指RS485的B线)连接到设备的B线 V(直流电源正极)连接到设备的电源正极 G(直流电源负极)连接到设备的电源负极 请确保所有的线路连接正确并且牢固,以避免接触不良或者短路。 步骤3:设备配置在设备接线完成后,你需要对 DTU / 串口服务器 设备进行配置。 名称 说明 工作模式 TCP 客户端 / TCP Client / 网络透传模式... 服务器地址 服务器端地址 / 远程服务器地址 /目的IP或域名... iot.modbus.cn 端口号 远程端口号 / 服务器端口号 / 目的端口 /端口号... 50001 注册包 一般默认关闭,需要打开后使用,然后选择 自定义注册包 / 注册包内容 填写设备创建后生成的 设备号SN 例如: 4QR8TZ9ThuL4G 心跳包 一般默认关闭,需要打开后使用,然后选择 自定义心跳包 / 心跳包内容 填写设备创建后生成的 设备号SN 例如: 4QR8TZ9ThuL4G 心跳包时间 心跳包时间 / 心跳包间隔 一般设置为20~60秒 波特率 参照 传感器或者485设备说明书定义为准。下面仅为尝试参考 (通常设置为9600) 数据位 参照 传感器或者485设备说明书定义为准。下面仅为尝试参考 (通常设置为8) 校验位 参照 传感器或者485设备说明书定义为准。下面仅为尝试参考 (通常设置为None) 停止位 参照 传感器或者485设备说明书定义为准。下面仅为尝试参考 (通常设置为1) 设备配置示例: 塔石公司 TAS-LAN-461 工作模式:TCP Client远程服务器地址:iot.modbus.cn远程端口:50001 注册包注册包类型:自定义注册包 注册包模式:连接发送 注册包内容:例子:4QR8TZ9ThuL4G ,其中 4QR8TZ9ThuL4G 为设备 SN 号,需要替换为自己的设备号SN;(请选择ASCII) 心跳包心跳包使能:网络心跳包 心跳包内容:例子:4QR8TZ9ThuL4G ,其中 4QR8TZ9ThuL4G 为设备 SN 号,需要替换为自己的设备号SN;(请选择ASCII) 心跳包时间:30~60s为宜 在实践中,我们通常将 串口服务器 作为透传网关,用于在 Modbus 子设备和云平台之间起到消息转发作用。这里我们使用 串口服务器 的 TCP客户端 模式,准备工作只需要以下几步: 创建项目(项目管理→新增项目)。创建设备(设备管理→设备配置→新增设备)填写设备名称,随机生成或者手动填写设备号,在设备协议中选择ModBus RTU,定位设备所在经纬度,保存即可。(设备号复制保存备用)具体的步骤请浏览:Modbus入门 ,通常几分钟就可以完成. ZLAN5143串口服务器的配置(示例)打开 卓岚 虚拟串口&设备管理器 配置软件,连上网口或串口,只需要填写以下几个部分: 第一步: 工作模式:TCP 客户端目的IP或域名:iot.modbus.cn目的端口:50001心跳包:设备号SN码 例:4QR8TZ9ThuL4G (以实际为准)注册包:设备号SN码 例:4QR8TZ9ThuL4G (以实际为准)修改配置(保存) 如下图:第二步: 点击“固件与配置” C盘新建一个”web”空文件夹,选择这个文件夹,然后点击“注册包” 注册包和心跳包”ASCII”格式都先打钩,然后填入云平台生成的设备号,心跳包间隔输入“60”秒,点击确定进行保存。 跳转页面后,点击“下载”即可。 打开设备管理→设备配置→选择刚刚添加的设备,然后点击“ +添加数据 ”。 寄存器为 modbus 从机的寄存器偏移地址,日常我们浏览设备说明书时,一般会有 2 种形式:寄存器地址 如 湿度寄存器地址为 0000H,湿度传感器属性寄存器地址为 1PLC 或者组态地址 如果是PLC地址,则需要转换一下,一般则为去掉最高位,在减去 1 则可,如 40001, 去掉最高位变为 00001,减去 1,则为 0, 40001 -> 0,40002 -> 1 ,这里大家一定不能混淆 。 如下图所示,结合厂家说明书,我们得到 温度的寄存器是0,湿度的寄存器是1 温度和湿度添加完成后,如下图所示: 读写指令说明 名称 说明 数据类型 ●数据属性 ●配置属性 数据节点类型 ●数据属性 ●配置属性 ●数值类型 ●状态类型 ●开关类型 ●GPS类型 ●显示型 ●点动型 从设备地址 地址号为 modbus 从机设备的地址,它的范围为 1~255,这里我们填写的数据都是 10 进制显示数据,如某款 modbus 从机设备的地址为 0x11,则这里地址为填写 17 就行, 把16进制11转换为10进制17(在线16进制转10进制:16进制转十进制 - 在线进制转换器) 寄存器 寄存器为 modbus 从机的寄存器偏移地址,日常我们浏览设备说明书时,一般会有 2 种形式:寄存器地址 如 湿度寄存器地址为 0000H,湿度传感器属性寄存器地址为 1PLC 或者组态地址 如果是PLC地址,则需要转换一下,一般则为去掉最高位,在减去 1 则可,如 40001, 去掉最高位变为 00001,减去 1,则为 0, 40001 -> 0,40002 -> 1 ,这里大家一定不能混淆 。 储存策略 ●变化储存 (数值发生变动时进行储存) ●实时储存(数据立即储存,以保留数据的实时性) ●30S ●1min ●5min ●30min ●1h ●1day 数据精度 数据精度为数据的有效位数,比如传递的数 10.234,如果数据精度选择 2,则小数点第 三位会被四舍五入变为 10.23,其他类似。 公式处理(平台->设备) 公式处理(设备->平台)为采集过来的数据,经过公式计算后储存和展示使用,比如采 集到数值是 100,我们要除以 10 使用,则可以填写 x/10 即可。 公式处理(设备->平台) 平台->设备的公式是写数据的时候使用。 功能码 ●01/05 --- 对开关量(bit位)进行读写,写入默认使用05功能码 ●02 --- 对开关量(bit位)进行读,是只读的,不允许写入 ●03/06 --- 对整形/浮点型数据进行读写,写入默认使用06功能码 ●04 --- 对整形/浮点型数据进行读,只读不写 读写方式 ●只读 ●读写 数据格式 ●16位有符号数:占用1个偏置,2个字节,表示正负整数,数据范围-32768~32767。 ●16位无符号数:占用1个偏置,2个字节,表示正整数,数据范围0~65535。 ●32位有符号数:占用2个偏置,4个字节,表示正负整数,数据范围- 2147483648~ 2147483647。 ●32位无符号数:占用2个偏置,4个字节,表示正整数,数据范文0~ 4294967295。 ●32位浮点型数:占用2个偏置,4个字节,可表示正数、负数、正数、小数。 数据顺序 ●A B ●B A ●A B C D ●C D B A ●D C B A ●B A D C 不同类型设备快捷参数示例 继电器 / 执行器 / 开关类 设置数据类型 - 数据属性 设备节点类型 - 开关类型 存储策略 - 1min 单位 - 打开/关闭 属性名称 - Modbus Modbus功能码 - 01/05 读写方式 - 读写 数据格式 - 16位无符号 数据顺序 - A B IO输入 / 设备状态 / 指示灯状态 设置数据类型 - 数据属性 设备节点类型 - 状态类型 存储策略 - 30S 单位 - 打开/关闭 或者 有人/无人 属性名称 - Modbus Modbus功能码 - 02 (也可能是01,具体参照说明书,一般用02读) 读写方式 - 只读 数据格式 - 16位无符号 数据顺序 - A B 传感器 / 数值类 设置(只读)数据类型 - 数据属性 设备节点类型 - 数值类型 存储策略 - 1min 单位 - 根据实际单位选择 (打开/关闭除外的) 属性名称 - Modbus Modbus功能码 - 03/06 读写方式 - 只读 数据格式 - (根据说明书说明选择) 数据顺序 - (根据说明书说明选择) 传感器 / 数值类 设置(读写)数据类型 - 配置属性 (不同点在这里) 存储策略 - 1min 属性默认值 - 默认数值,根据实际情况填写 单位 - 根据实际单位手动填写 参数配置 - 属性名称 - Modbus Modbus功能码 - 03/06 读写方式 - 只读 数据格式 - (根据说明书说明选择) 数据顺序 - (根据说明书说明选择) 从设备地址10进制与16进制转换对照表:(Modbus物联网平台Modbus RTu协议下需使用10进制地址)
|
CopyRight 2018-2019 实验室设备网 版权所有 |