ModbusV3协议接入说明

更新时间:

1 使用流程说明

image.png

提示

1.品类功能定义和设备实际点位无需完全一致

2.点位可以多于功能定义,此时品类功能定义满足业务对数据需求即可,当需要新的点位功能,也可以继续在原有品类新增功能

3.功能定义可以多于设备点位,此时功能定义中多余数据,设备上线后不会更新数据,操作指令也会下发失败

2 添加协议

2.1 选择项目

登录阿里云应用服务平台后,找到需要配置的项目。

2.2 选择对应网关的设备集成

进入项目内,找到边缘一体机-网关管理,如下图所示。点击网关对应的设备集成

image

2.3 添加ModbusV3协议

点击网关右侧的设置按钮中的“添加协议”

image.png

点击网关右侧的设置图标,首先,在弹出菜单中选择“添加协议”,然后,在下拉选择的协议列表中选择“ModbusV3(官方)”,然后选择协议版本,建议选择最新版本进行添加,如下图所示:

image.png

3 配置点位

3.1 添加通道

如下图所示,通过点击“ModbusV3”驱动,右侧展现驱动管理页,进入“通道配置”TAP页,点击“创建通道”按钮

image.png

添加配置

创建通道

参数说明

名称

说明

通道编号

用于点位与通道关联,自行定义,需要保证协议内唯一性

传输方式

默认选择“TCP”

IP地址

设备端IP地址

端口号

设备端端口号

指令操作间隔时间(单位ms)

设备限制的最小指令操作间隔,设备没有限制时可填0

通道备注

自定义一个备注信息,方便维护

3.2 添加点位

如下图所示,通过点击“ModbusV3”驱动,右侧展现驱动管理页,进入“点位表”TAP页,点击“创建点位”按钮

image.png

点位的参数请按下图所示进行配置:

创建点位1创建点位2

参数说明

名称

说明

连接通道

点位连接通道

点位编号

点位编号,全局唯一

从站ID

设备从站号

寄存器地址

点位寄存器地址,十六进制

寄存器操作类型

操作点位寄存器的类型功能码

数据类型

点位数据类型,操作类型为“线圈状态”系列和“离散量输入”时,数据类型只支持bool;操作类型为“保持寄存器”系列和“输入寄存器”时,数据类型支持:int16、uint16、int32、uint32、int64、uint64、float、double、string、bool、custom、bits

比特位置

点位数据为采样数据的指定比特位置,数据类型为bits有效

寄存器个数

点位的寄存器个数,数据类型为custom和string时有效

是否交换寄存器内16位数据的高低字节

是否交换16位数据的高低字节序,数据类型为int16、uint16、int32、uint32、int64、uint64、float、double时有效。例:原数据:0xAB,真实数据,0xBA

是否交换寄存器内32位数据顺序

是否交换32位数据顺序,数据类型为int32、uint32、int64、uint64、float、double时有效。例:原数据:0xABCD,真实数据,0xCDAB

缩放因子

点位真实数据与采集数据相比的缩放系数,不能为0,数据类型为int32、uint32、int64、uint64、float、double时有效

数据采样周期

点位数据的采样时间间隔,单位ms

数据上报方式

点位数据的上报方式,支持安时上报和变更上报

点位备注

点位的备注信息

3.3 批量导入

3.3.1 下载批量导入模版

首先下载批量导入模版,如下图所示:

image.png

3.3.2 导入模版填入通道信息

打开导入模版,进入“通道配置表”TAP页,基于甲方提供的<IoT设备信息表>中的<modbusV3通道信息>TAB页的通道列表填入所有通道配置,如下图所示:

image.png

3.3.3 导入模版中填入点位信息

进入“点位表”TAP页,如下图所示:

点位模版

3.3.4 导入操作

基于导入模版填充好所需导入的配置信息后,点击上传文件,选择所需导入的文件后点击确定按钮,首先会基上传的文件进行预校验,预校验过程主要校验配置内容的合法性,预校验过程中确定按钮为不可点击状态,如下图所示

image.png

预校验通过后,确定按钮变为可点击状态,点击后进行实际配置导入,如下图所示:

image.png

整个导入过程可能需要耗费几分钟时间,请耐心等候(具体由所需导入的点位数),导入进度的展现如下图所示:

image.png

3.3.5 预检查失败情况处理

当配置数据存在不合法的情况,预校验会不通过,可下载文件进行失败原因的查看,可基于失败原因对导入文件进行修改,入下图所示:

image.png

通道配置表预校验失败原因查看,如下图所示:

通道导入失败原因查看

点位表预校验失败原因查看,如下图所示:

点位预校验失败原因查看

4 添加设备

4.1 设备创建

如下图所示,通过点击“ModbusV3”驱动,右侧展现驱动管理页,进入“设备表”TAP页,点击“创建设备”按钮

image.png

设备的参数请按下图所示进行配置:

image.png

参数说明

名称

说明

设备名称

设备的IoT编码

设备别名

设备的备注名称

设备品类

设备的物模型品类

4.2 点位映射

点击下拉列表可以进行点位的选择

image.png

点击查看点位可以查询选择的点位的详情

查看点位

4.3 批量导入

4.3.1 基于导入模版中录入设备信息

查看设备对应的品类信息,本例为遥信遥控智能仪表,在品类管理页找到该品类,导出设备模版,如下图所示:

image.png

打开导出的模版,红框部分为该品类所具备的功能属性定义,需要拷贝至导入模版<设备表>TAP页,如下图所示:

image.png

然后在导入模版<设备表>TAP页补充IoT设备IDIoT设备中文名称点位编号信息

image.png

参数说明

名称

说明

IoT设备ID

设备的IoT编码

IoT设备中文名称

设备的备注名称

点位编号

设备的点位编号,全局唯一

设备表预校验失败原因查看,如下图所示:

image.png

4.4 部署设备配置

在完成驱动和设备的配置后,点击部署,进行设备配置的协议下发到边缘服务器。如下图所示。

特别提醒:驱动部署时,网关侧对应驱动将重启,该驱动下的所有设备将出现离线后在线。这期间设备不可用,请部署人员提前与甲方沟通部署时间

image.png

点击部署后可以查看设备配置下发的状态和部署进度。

image.png

5 新增品类

5.1 新建分组

弹出页面如下图所示:

参数说明

名称

说明

分组名称

品类分组名称

编码

品类分组名称对应的英文名称。编码要求支持英文字母、数字和下划线,长度限制1~10

5.2 新建品类

把鼠标放到对应分组右上方会出现个齿轮,把鼠标放到齿轮上,然后会出现新建品类,点击新建品类,如下图所示:

弹出页面如下图所示:

参数说明

名称

说明

品类名称

品类名称

编码

品类名称对应的英文名称。编码要求支持英文字母、数字和下划线,长度限制1~10

5.3 新建模型

把鼠标放到对应分组,点击新建模型,如下图所示:

弹出页面,如下图所示:

image.png

参数说明

名称

说明

模型名称

品类的模型名称

接入协议

该模型的设备接入协议,固定为“自定义协议”

编码

模型名称对应的英文名称。编码要求支持英文字母、数字和下划线,长度限制1~10

5.4 新增功能

选择5.3里新建模型遥信遥控智能仪表_霍尼韦尔,点击新增功能,进行点位添加,如下图所示:

image.png

参数说明

名称

说明

功能名称

该功能的功能名称

标识符

功能标识符,用于标识该功能

数据类型

数据类型包括:int(原生)、float(原生)、double(原生)、text(原生)、date(String类型UTC毫秒)、bool(0或1的int类型)、enum(int类型,枚举项定义方法与bool类型定义0和1的值方法相同)、struct(结构体类型,可包含前面7种类型,下面使用"specs":[{}]描述包含的对象)、array(数组类型,支持int、double、float、text、struct)

取值范围

数据的取值范围,超出取值范围的数据会被丢弃,数据类型为int、float、double有效

步长

数据变化的最小粒度,数据类型为int、float、double有效

单位

根据实际情况选择,可选无,数据类型为int、float、double有效

数据长度

最大10240,数据类型为text有效

元素个数

最大512,数据类型为array有效

布尔值

布尔值(0/1)对应的参数描述,数据类型为bool有效

枚举项

枚举项对应的参数描述,数据类型为enum有效

读写类型

数据的读写类型,读写或只读