物模型是边缘智能中用于描述设备及其功能的一种抽象模型。它定义了设备的属性、服务和事件,便于不同设备的统一接入和管理。本文介绍了如何在边缘智能控制台发布物模型。
前提条件
您已经创建了设备模板。相关操作,请参见创建设备模板。
操作步骤
登录边缘智能控制台。
在左侧导航栏顶部的 我的项目 区域,选择您的项目。
在左侧导航栏,选择 设备管理 > 设备模板。
在设备模板列表,找到您的设备模板,然后单击模板名称。
单击 物模型定义 页签,然后单击 编辑。
您将会进入 编辑物模型 页面。在该页面,您可以根据现场设备的特征来定义物模型,具体包含以下步骤:
- (可选)新建功能模块。
- 添加自定义功能。
- 发布物模型版本。
(可选)新建功能模块
编辑物模型 页面左侧展示了 模块列表。其中,默认模块(default) 是系统自动创建的。您可以在默认模块下添加自定义功能。如果需要定义不同类别的功能,您也可以新建一个模块,然后在对应模块下添加自定义功能。
在模块列表上方,单击 新建模块。
在 新建模块 对话框,参考下表说明,完成相关参数的配置,然后单击 确定。
配置项 | 说明 |
---|
名称 | 为模块设置名称。输入要求如下: - 允许使用以下字符:汉字、英文大小写字母、数字、下划线(_)。长度不超过 32 个字符。
- 开头和结尾不允许使用下划线(_),并且不允许使用连续的下划线(_)
|
唯一标识 | 为模块设置一个标识符。该标识符在当前设备模板下必须唯一。输入要求如下: - 允许使用以下字符:英文大小写字母、数字、下划线(_)。长度不超过 32 个字符。
- 开头和结尾不允许使用下划线(_),并且不允许使用连续的下划线(_)。
|
描述 | 为模块添加描述信息。长度不超过 128 个字符。 |
添加自定义功能
通过添加自定义功能,您可以定义物模型的属性、服务和事件。
在 编辑物模型 页面,从 模块列表 选择一个模块。
单击 添加自定义功能。
在 添加自定义功能 面板,参考下表说明,完成相关参数的设置。
功能类型 | 配置项 | 说明 |
---|
属性 | 功能名称 | 为属性设置一个名称,例如:开关。
输入要求如下: - 允许使用以下字符:汉字、英文大小写字母、数字、下划线(_)、连字符(-)。长度不超过 32 个字符。
- 开头和结尾不允许使用下划线(_)和连字符(-),并且不允许连续使用这两个字符。
- 功能名称在当前模块下必须是唯一的。
|
标识符 | 为属性设置一个标识符。
输入要求如下: - 允许使用以下字符:英文大小写字母、数字、下划线(_)。长度不超过 32 个字符。
- 开头和结尾不允许使用下划线(_),并且不允许使用连续的下划线(_)。
- 标识符在当前模块下必须是唯一的。
|
读写类型 | 设置对属性进行读取和写入操作的权限。 - 只读:表示该属性只能被读取,不能被写入。只允许查询当前属性信息或状态。
- 读写: 表示该属性可以被读取和写入。允许查询当前属性状态并修改属性的值。
|
数据类型 | 选择某个数据类型后,与该数据类型相关的配置项将会出现,您可以设置对应取值。详情参见数据类型设置说明。 |
描述 | 可选。为功能添加描述信息。 允许使用任意字符。长度不超过 128 个字符。 |
服务 | 功能名称 | 为服务设置一个名称。
输入要求如下: - 允许使用以下字符:汉字、英文大小写字母、数字、下划线(_)、连字符(-)。长度不超过 32 个字符。
- 开头和结尾不允许使用下划线(_)和连字符(-),并且不允许连续使用这两个字符。
- 功能名称在当前模块下必须是唯一的。
|
标识符 | 为服务设置一个标识符。
输入要求如下: - 允许使用以下字符:英文大小写字母、数字、下划线(_)。长度不超过 32 个字符。
- 开头和结尾不允许使用下划线(_),并且不允许使用连续的下划线(_)。
- 标识符在当前模块下必须是唯一的。
|
调用方式 | 服务为 同步 调用方式。
当设备调用服务时,边缘智能平台会等待设备回复;若设备在 10s 内没有回复,则调用超时。 |
输入参数 | 设置调用服务的请求参数。
单击 添加参数,然后在 添加参数 对话框设置 参数名称、标识符、数据类型等。关于数据类型的设置方法,请参见数据类型设置说明。 |
输出参数 | 设置调用服务的返回参数。
单击 添加参数,然后在 添加参数 对话框设置 参数名称、标识符、数据类型 等。关于数据类型的设置方法,请参见数据类型设置说明。 |
描述 | 可选。为功能添加描述信息。 允许使用任意字符。长度不超过 128 个字符。 |
事件 | 功能名称 | 为事件设置一个名称。
输入要求如下: - 允许使用以下字符:汉字、英文大小写字母、数字、下划线(_)、连字符(-)。长度不超过 32 个字符。
- 开头和结尾不允许使用下划线(_)和连字符(-),并且不允许连续使用这两个字符。
- 功能名称在当前模块下必须是唯一的。
|
标识符 | 为事件设置一个标识符。
输入要求如下: - 允许使用以下字符:英文大小写字母、数字、下划线(_)。长度不超过 32 个字符。
- 开头和结尾不允许使用下划线(_),并且不允许使用连续的下划线(_)。
- 标识符在当前模块下必须是唯一的。
|
事件类型 | 定义设备运行过程中所产生的消息类型,您可以针对不同的事件类型进行业务逻辑处理和统计分析。 - 信息:指设备运行过程中上报的一般性通知。例如设备定时上报当前的温度和湿度数据、设备的启动或关闭等。
- 告警:指设备运行过程中上报的检测到的潜在问题或异常情况。例如温度传感器检测到温度接近预设的上限或下限、电池电量低于预警阈值等。
- 故障:指设备运行过程中上报的严重问题或异常情况。例如传感器失效、设备固件崩溃等。
|
输出参数 | 设置事件的返回参数。
单击 添加参数,然后在 添加参数 对话框设置 参数名称、标识符、数据类型 等。关于数据类型的设置方法,请参见数据类型设置说明。 |
描述 | 可选。为功能添加描述信息。长度不超过 128 个字符。 |
配置完成,单击 确定。
数据类型设置说明
在添加自定义功能时,您可以参考以下说明来设置 数据类型:
- int:整型。
根据需要,定义 取值范围 和 步长 。 - float:浮点型。
根据需要,定义 取值范围 和 步长 。 - double:双精度浮点型。
根据需要,定义 取值范围 和 步长 。 - enum:枚举型。
根据需要,单击 添加枚举对,定义枚举对的 参数值 和 参数描述。例如:1表示加热模式、2表示制冷模式。 - bool:布尔型。
采用 0 和 1 来定义布尔值。例如:0 表示关、1 表示开。 - text:文本型。
需要定义字符串的 数据长度。 - struct:结构体类型。
根据需要,单击 添加参数,配置 名称、标识符 和 数据类型,完成 JSON 结构体的定义。 - array:数组类型。
需要设置数据内的 元素类型 和 最大元素个数。
元素类型 支持 int(整型)、float(浮点型)、double(双精度浮点型)、text(文本型)和 struct(结构体类型)。说明
元素类型 为 struct 时,需要配置 JSON对象 的 名称、标识符 和 数据类型。
- image:图像类型,用于储存具有图像信息的文件。通过 image 可以将传感器、摄像头或其他图像采集设备捕获的视觉信息转换成图片进行显示。
说明
目前只有服务的输出参数支持定义 image 类型。
发布物模型版本
要使物模型生效,您必须为当前物模型发布一个对应的版本。
添加完自定义功能后,单击页面左下角的 保存。
在 发布新版本 对话框,完成相关参数的设置,然后单击 确定。
配置项 | 说明 |
---|
版本号 | 设置一个版本号。 - 版本号必须使用以下格式:
x.x.x.x 。其中,x 表示一个整数,取值范围为:0~9999。 - 版本号在一个物模型下必须是唯一的。您可以将版本号视为物模型的唯一 ID。
|
描述 | 为物模型版本添加描述信息。长度不超过128个字符。 |
管理物模型
发布物模型后,您可以执行以下操作:
- 查看物模型配置:在 物模型定义 页签下,您可以查看当前版本对应的物模型配置信息。
- 编辑:单击 编辑,可以管理物模型模块或功能。
说明
编辑物模型后,必须为当前物模型发布一个新的版本,才能使其生效。
- 模块管理
- 新建模块:单击 新建模块,可以创建新的模块。
- 修改模块名称:定位到指定模块,单击该模块的修改按钮,可以修改模块名称。
- 删除模块:单击删除按钮,可以删除该模板。
- 功能管理
- 添加功能:单击 添加自定义功能,可以定义物模型的属性、服务和事件。
- 编辑功能:单击自定义功能 操作 下的 编辑,可以修改该功能包含的属性、服务和事件。
- 删除功能:单击功能 操作 下的 删除,可以删除该功能。
相关操作
物模型发布后,您在接入设备到节点时,便可以选择对应的设备模板。相关操作,请参见设备接入。