IOT物联网平台源码 Modus RTU 协议简介
我们在使用物联网IOT平台系统时,很多人其实并不是很熟悉 Modbus 协议以及相关的一 些概念和信息,导致设置和添加传感器的时候,有点不知所措,下面我们就把常用的配置信 息进行讲解和说明。
系统关键字 IOT 物联网中存在的关键字对于未接触的用户,可能存在不理解的情况,这里将常用的 关键及其对于功能含义,做一下简单的说明。
系统使用
3.1 创建项目 点击项目管理菜单,新增项目按钮,新增项目名称。
3.2 新增设备 选择对应的项目下,新建设备,如下图所示。设备号即为注册包号,这个在配置 DTU 的文档中反复提及,这里不赘述。设备通讯协议选择 TCP,数据协议为 Modbus RTU,其实 通俗点就是用 TCP 协议传递 modbus rtu 标准的数据格式。这里参数配置 刚开始测试时,不 需要填写,等熟悉了可以配合,下面我来说明一下,初学者可以先跳过下面配置参数,批量 采集的讲解。
配置参数这里主要是为了,提升轮训数据的效率来填写的,用户根据具体情况来设置批 量数据采集的命令。如下图配置 2 组批量采集命令,我们无需关注数据是否全部对应等问题, 只要你批量数据范围内有添加传感器寄存器地址内的数据,则就可以自动匹配上。数据填写 时,都是 10 进制数据格式,寄存器地址为偏移地址。
3.3 新增传感器 点击设备列表下传感器信息,添加传感器。
这里的地址号为从机地址,寄存器号为偏移地址,我们在添加传感器信息时,需要按照 采集参数的属性来添加,下面我们来具体讲解传感器中各个字段的含义。
地址号为 modbus 从机设备的地址,它的范围为 1~255,这里我们填写的数据都是 10 进制显示数据,如某款 modbus 从机设备的地址为 0x11,则这里地址为填写 17 就行。 寄存器号为 modbus 从机的寄存器偏移地址,日常我们浏览设备说明书时,一般会有 2 种形式,一种会出寄存器地址,另外一种给 PLC 或者组态地址如下图所示,我们看到如果 是寄存器地址,则 湿度采集属性寄存器地址为 0,温度采集属性寄存器地址为 1 则可以。 如果给出的是 PLC 或者组态地址,则需要转换一般则为去掉最高位,在减去 1 则可,如 40001, 去掉最高位变为 00001,减去 1,则为 0, 40001 -> 0,40002 -> 1 ,这里大家一定不能混淆 。
参数配置是配置数据的属性使用的,一般 modbus 属性有 01,02,03,04,05,06 等功能, 各个功能对应功能如下,默认 03 功能码,我们不需要配置,但是比如写数据和控制开关我 们则需要按照对应规则配置。比如我们常用 40001,则它的功能码是 03,寄存器地址为 0, 再比如 10003 信息则功能吗为 02,寄存器地址为 2。
下图已经非常详细的讲解了我们在设置传感器时,如何配置参数 6 开关(线圈)配置 05 指令,系统会默认用 05 执行写,01 指令读; 读写数据 配置 06 ,系统会默认用 06 执行写,03 指令读; 其他则按照正常的指令功能码配置则行;
数据精度为数据的有效位数,比如传递的数 10.234,如果数据精度选择 2,则小数点第 三位会被四舍五入变为 10.23,其他类似。 储存策略,数据储存到数据库的模式,根据名字就可以理解,没有特殊要求,默认即可。 公式处理(设备->平台)为采集过来的数据,经过公式计算后储存和展示使用,比如采 集到数值是 100,我们要除以 10 使用,则可以填写 x/10 即可。平台->设备的公式是写数据 的时候使用。 数据类型一般的读展示数据为数据属性,部分场景下我们需要写数据到设备中,我们就 可以选择配置属性。