Skip to content

产品配置与物模型

功能说明

同一批设备(如 100 台同型号温控器)硬件、数据点、指令都一样,逐台配置既重复又易错。产品就是设备的模板——先给产品定义好物模型(有哪些属性、能采什么数据、能下发什么指令),同型号设备归到这个产品下即可共用一套配置;物模型又把底层协议的寄存器/点位与业务概念(温度、开关)解耦。

举例: 100 台 Modbus 温湿度传感器建成一个“温湿度传感器”产品,配好 temperature/humidity 两个属性和读取事件,100 台设备直接套用,改一处全产品生效。

菜单:基础信息 → 产品配置

创建产品

  1. 进入 基础信息 → 产品配置,点击"新增"
  2. 在弹框中填写以下信息:
字段说明是否必填
产品名称产品的中文名称,便于识别必填
所属类型选择协议驱动类型(如 Modbus Tcp、Siemens PLC 等)必填
产品代码英文唯一标识,创建后不可修改(如 light_ctrl_cabinet必填
设备类型选择"直连设备"、"网关设备"或"网关子设备"必填
父产品仅设备类型为"网关子设备"时显示,选择对应的网关产品子设备必填
网络组件设备类型为"直连设备"或"网关设备"时显示,选择对应的网络组件直连/网关设备必填
产品说明产品的用途描述选填

表单动态显示: 选择"设备类型"后,表单会根据选择动态变化:

  • 选择 网关子设备 → 显示"父产品"字段,需要选择所属的网关产品
  • 选择 直连设备网关设备 → 显示"网络组件"字段,需要选择对应的网络组件
  1. 点击"提交"完成创建

三种产品类型

产品类型对应设备内置驱动是否需要配置物模型
直连产品直连设备(直接联网、产生数据)HJ212、IEC104、发那科 CNC需要
子产品网关子设备(通过网关联网、产生数据)Modbus、DTU、MQTT、PLC、OPC UA、DLT645需要
父产品(网关产品)网关设备(不产生数据、只转发)同上(已预置)不需要

内置驱动简化: 内置驱动的网络组件和网关产品已预置,接入设备时只需创建直连产品或子产品。

物模型配置

在产品列表点击"物模型"按钮,进入物模型配置页。页面顶部展示产品基本信息(产品名称、产品代码、产品类型、设备类型、操作方式、绑定协议、接入网关、传输协议、备注),下方通过选项卡提供以下配置能力:

选项卡用途
属性模型定义设备的数据点(温度、湿度、状态等)
功能模型定义平台向设备下发的控制指令
事件模型定义平台从设备采集数据的接口
计算属性通过脚本对采集值进行二次计算
指令集查看当前驱动提供的所有可用指令
协议列表查看当前产品绑定的驱动提供的协议清单

属性模型

属性模型定义设备的数据点。每个属性代表设备的一个数据维度。

新增属性

  1. 在"属性模型"选项卡下点击"新增"
  2. 填写以下字段:
字段说明示例
属性名称属性的中文名称温度
属性字段英文唯一标识,以字母开头,支持 a-zA-Z0-9_-temperature
数据类型选择数据类型float(单精度)
属性类型读 / 写。读属性:平台只能读不能写;写属性:平台可读可写
值解析器将采集到的值解析成对应的数据类型,默认 DEFAULT;下拉项可通过脚本动态添加DEFAULT
序号采集器里接口的排序,值越小越靠前0
默认值设备首次连接尚未上报数据时显示的初始值
属性单位数据的物理单位
精度小数点精度2
增益采集数据的放大倍数,寄存器上报的值放大了几倍就填几10
属性备注属性的补充说明环境温度
  1. 点击"提交"保存

支持的数据类型:

类型说明
string字符串
boolean布尔类型
byte字节
short短整型
int整型
long长整型
float单精度浮点数
double双精度浮点数
date日期
bit比特位(可展开为多个布尔子属性)
group分组(可包含多个子属性)
jsonJSON 类型(可映射多个子属性)

属性来源说明: 属性分为"Model"(用户手动新增)和"Protocol"(驱动自动注册)两种来源。驱动注册的属性不可修改和删除,只能由用户手动新增的属性才能编辑。

属性值配置

属性保存后,在属性详情中切换到"属性值配置"子选项卡,可以为属性配置字典。字典的作用是将原始数据值映射为可读的显示名称,例如:

  • boolean 类型属性:配置“开”=true、“关”=false
  • short 类型属性:配置“正转”=1、“反转”=-1
字段说明
名称显示文字(如“开”、“正转”)
实际数据值(如 true、1)

配置字典后,页面自动将数值显示为中文标签,控制接口也会自动拆分为对应的操作按钮。

告警/指标配置

在属性详情中切换到"告警/指标配置"子选项卡,可以为属性设置阈值告警:

字段说明示例
操作比较操作符(大于、小于、等于等)大于
阈值触发告警的数值50
告警等级告警的严重程度告警
频率(秒)告警频率,在频率内多次告警只通知一次,0 为不限制60
指标状态标签(偏高/偏低/正常/过高/过低)过高
推送消息选择预置的消息模板进行告警推送
告警内容告警描述文本,支持占位符:{deviceSn} 设备编号、{value} 值、{warnTime} 时间、{grade} 等级设备{deviceSn}温度{value}℃

指标模式: 如果只想显示状态标签而不产生告警记录,告警等级选择"指标"即可,指标等级不参与告警。

注意: json、bit、group 类型的属性不支持告警配置。

功能模型

功能模型定义平台向设备下发的控制指令。

新增功能

  1. 在"功能模型"选项卡下点击"新增"
  2. 填写以下字段:
字段说明示例
功能名称功能的中文名称写入线圈
协议指令从驱动提供的指令列表中选择Write05 写单个线圈
接口代码英文唯一标识,以字母开头,至少 6 位write_coil
触发方式由指令自动填充:主动(active) / 被动(passive)被动
序号排序权重,值越小越靠前1000
功能说明功能的补充说明控制设备开关
  1. 选择协议指令后,页面自动加载该指令的下行配置上行配置

下行配置

下行配置定义向设备发送指令时需要填写的参数。每行包含:

字段说明
名称协议指令定义的参数名
协议属性协议层面的字段标识
数据类型该参数要求的数据类型
配置值要下发的值
备注参数说明

配置值的填写方式:

  • 固定值 — 直接输入固定值(如 10
  • @属性绑定 — 输入 @ 触发属性选择器,选择模型属性进行动态绑定,绑定后该属性的值会作为指令参数下发
  • #脚本引用 — 输入 # 触发脚本引擎选择器,选择脚本引擎动态构建值

上行配置

上行配置定义设备返回的数据如何映射到模型属性。配置值只支持 @属性绑定 方式,通过 @属性字段 将采集到的数据绑定到对应的模型属性。

作为状态

对于被动触发的写类型(W)功能,可以将其设置为"状态":

  • 点击功能列表中的"作为状态"按钮
  • 设置后该功能会在设备列表的显眼位置展示为状态开关
  • 一个产品最多只能有 4 个状态接口

事件模型

事件模型定义平台从设备采集数据的接口。

新增事件

  1. 在"事件模型"选项卡下点击"新增"
  2. 填写以下字段:
字段说明示例
事件名称事件的中文名称读取温度
协议指令从驱动提供的指令列表中选择Read03 读保持寄存器
接口代码英文唯一标识,以字母开头,至少 6 位read_temp
触发方式由指令自动填充:主动(active) / 被动(passive)主动
频率标签采集频率标记默认
事件说明事件的补充说明定时读取温度数据
  1. 选择协议指令后,页面自动加载该指令的下行配置上行配置

频率标签

频率标签决定采集器对接口的执行频率:

标签说明
默认(DEFAULT)标准采集频率
低频(LOW)采集频率较低,间隔较长
中频(MEDIUM)中等采集频率
高频(HIGH)采集频率较高,间隔较短

标签值越高,采集器执行的频率越快。可以为不同事件接口设置不同的频率标签,实现差异化的采集策略。

下行配置和上行配置

事件模型的下行配置和上行配置与功能模型类似:

  • 下行配置 — 定义采集请求的参数(如寄存器地址、数据类型等),支持固定值、@属性绑定#脚本引用 三种方式
  • 上行配置 — 定义采集结果到模型属性的映射,仅支持 @属性绑定 方式

计算属性

计算属性通过脚本对采集到的值进行二次计算,生成新的属性值。

使用方法

  1. 切换到"计算属性"选项卡
  2. 在左侧编辑器中编写 JavaScript 脚本
  3. 右侧提供了可用方法列表供参考
  4. 点击"保存"生效

注意: 计算属性功能需要在产品配置中开启(calcLanguage 配置项),未开启时该选项卡不显示。可通过切换 javascript / 禁用 来控制开关。

指令集

指令集选项卡展示当前产品所属驱动提供的所有可用指令。

字段说明
接口名称指令的中文名称
指令指令的具体值(点击可复制)
指令说明指令的用途描述
接口类型功能(func) 或 事件(event)

指令集为只读信息,由驱动自动提供。在配置功能模型和事件模型时,从此指令列表中选择对应的指令。

协议列表

协议列表选项卡展示当前产品绑定的驱动所提供的所有协议接口。

字段说明
协议名称协议的中文名称
协议代码协议的唯一标识
接口类型功能(func) 或 事件(event)
触发方式主动(active) / 被动(passive)
功能说明协议的用途描述

协议列表由产品所属驱动提供,不可编辑。功能模型和事件模型中选择的协议指令就来自此列表。

下一步