新增物模型,即定义产品功能(包括属性、事件和服务)。本文介绍如何在控制台定义物模型。

操作步骤

  1. 登录物联网平台控制台
  2. 左侧导航栏选择设备管理 > 产品
  3. 产品管理页面产品列表中,单击产品所对应的查看操作按钮。
  4. 单击功能定义
    说明 已发布的产品不能添加和更新功能。
  5. 添加标准功能。单击标准功能栏对应的添加功能按钮,然后在弹出对话框中,选择适用于该产品的物联网平台预定义的标准功能。


  6. 添加自定义功能。单击自定义功能栏对应的添加功能为产品新增自定义功能。您可为产品自定义属性、服务和事件。


    • 自定义属性。在添加自定义功能页面,选择功能类型为属性。设置参数完成后,单击确认

      属性参数设置如下:

      参数 描述
      功能名称

      属性的名称,如用电量。同一产品下功能名称不能重复。

      支持中文、大小写字母、数字、短划线和下划线,且必须以中文、英文或数字开头,不超过30个字符。

      如果您创建产品时选择了功能模板,输入功能名称时,将从标准功能库中筛选匹配的标准属性,供您选择。

      说明 当接入网关协议为Modbus时,不支持标准属性,仅支持自定义属性。
      标识符 属性唯一标识符,在产品中具有唯一性。即 Alink JSON 格式中的identifier的值,作为设备上报该属性数据的 Key,云端根据该标识符校验是否接收数据。可包含英文、数字、下划线,长度不超过50个字符,如 PowerComsuption。
      说明 不能用以下系统保留参数作为标识符:set、get、post、time、value。
      数据类型
      • int32:32位整型。需定义取值范围、步长和单位符号。
      • float:单精度浮点型。需定义取值范围、步长和单位符号。
      • double:双精度浮点型。需定义取值范围、步长和单位符号。
      • enum:枚举型。定义枚举项的参数值和参数描述,如 1-加热模式、2-制冷模式。
      • bool:布尔型。采用 0 或 1 来定义布尔值,如 0-关、1-开。
      • text:字符串。需定义字符串的数据长度,最长支持 2048 字节。
      • date:时间戳。格式为 string 类型的 UTC 时间戳,单位:毫秒。
      • struct:JSON对象。定义一个 JSON 结构体,新增 JSON 参数项,如定义灯的颜色是由 Red、Green、Blue 三个参数组成的结构体。不支持结构体嵌套。
      • array:数组。需声明数组内元素的数据类型,可选择int32、float、double、text或struct。需确保同一个数组元素类型相同。数组内可包含1-128 个元素。
      说明 当设备协议为Modbus时,无需设置该参数。
      步长 属性值和事件以及服务中输入输出参数值变化的最小粒度。数据类型为int32、float、double时,需要根据您的业务需要设置步长。

      例如,为温度计产品定义温度属性时,将数据类型设置为int32,步长为2,单位为℃,取值范围0~100。即温度每变化两度,设备上报温度值,如0℃、2℃、4℃、6℃、8℃……。

      单位 单位可选择为无或根据实际情况选择。
      读写类型
      • 读写:请求读写的方法支持 GET(获取)和 SET(设置)。
      • 只读:请求只读的方法仅支持 GET(获取)。
      说明 当接入网关协议为Modbus时,无需设置该参数。
      描述 输入文字,对该功能进行说明或备注。长度限制为100字。
      扩展描述

      设备通信协议到标准物模型的映射关系。

      产品接入网关协议为自定义、OPC UA或Modbus时,需填写该参数。

      • 接入网关协议为自定义时,填写JSON格式的自定义配置信息,长度限制为1024字符。
      • 接入网关协议为OPC UA时,设置节点名称。节点名称需保证属性维度下唯一。
      • 接入网关协议为Modbus时,需设置以下参数:

        • 操作类型:
          • 线圈状态(只读,01)
          • 线圈状态(读写,读取使用01,写入使用05)
          • 线圈状态(读写,读取使用01,写入使用0F)
          • 离散量输入(只读,02)
          • 保持寄存器(只读,03)
          • 保持寄存器(读写,读取使用03,写入使用06)
          • 保持寄存器(读写,读取使用03,写入使用10)
          • 输入寄存器(只读,04)
        • 寄存器地址:十六进制,必须以0x开头,且限制范围是0x0~0xFFFF。例如,0xFE。
        • 原始数据类型:支持int16、uint16、int32、uint32、int64、uint64、float、double、string、bool、自定义(原始数据)多种数据类型。
        • 取值范围:这是原始数据经过缩放因子处理之后的取值范围。不在该取值范围内的数据会被丢弃。物联网平台已为各操作类型设置了默认取值范围:
          • 线圈状态类型:0~1
          • 离散量输入类型:0~1
          • 保持寄存器类型:-2147483648 ~ 2147483647
          • 输入寄存器类型:-2147483648 ~ 2147483647
        • 交换寄存器内高低字节:是否把寄存器内16位数据的前后8个bits互换。
          • true:互换。
          • false:不互换。
        • 交换寄存器顺序:是否把原始数据32位数据的bits互换。
          • true:互换。
          • false:不互换。
        • 缩放因子:不能为0,默认为1,可以为负数。
        • 采集间隔:数据采集间隔,单位ms,不能小于10。
        • 数据上报方式:可选按时上报变更上报
    • 自定义服务。在添加自定义功能页面,选择功能类型为服务。设置参数完成后,单击确认
      说明 接入网关的协议选择为Modbus时,不支持定义服务。


      服务参数设置如下:

      参数 描述
      功能名称

      服务名称。

      支持中文、大小写字母、数字、短划线和下划线,且必须以中文、英文或数字开头,不超过30个字符。

      如果您创建产品时选择了功能模板,输入功能名称时,将从标准功能库中筛选匹配的标准服务,供您选择。

      说明 当接入网关协议为Modbus时,不支持自定义服务。
      标识符 服务唯一标识符,在产品下具有唯一性。即 Alink JSON 格式中该服务的identifier的值。可包含英文、数字、和下划线,长度不超过30个字符。
      说明 不能用以下系统保留参数作为标识符:set、get、post、time、value。
      调用方式
      • 异步:服务为异步调用时,云端执行调用后直接返回结果,不会等待设备的回复消息。
      • 同步:服务为同步调用时,云端会等待设备回复;若设备没有回复,则调用超时。
      输入参数 设置该服务的入参,可选。

      单击新增参数,在弹窗对话框中添加服务入参。

      当接入网关协议为OPC UA时,需设置参数索引,用于标记参数的顺序。

      说明
      • 不能用以下系统保留参数作为输入参数的标识符:set、get、post、time、value。
      • 您可以使用某个属性作为入参,也可以自定义参数。如在定义自动喷灌服务功能时,将已定义的属性喷灌时间喷灌量作为自动喷灌服务的入参,则调用该参数时传入这两个参数,喷灌设备将按照设定的喷灌时间和喷灌量自动进行精准灌溉。
      • 一个服务最多支持定义 20 个入参。
      输出参数 设置该服务的出参,可选。

      单击新增参数,在弹窗对话框中添加服务出参。

      当接入网关协议为OPC UA时,需设置参数索引,用于标记参数的顺序。

      说明
      • 不能用以下系统保留参数作为输出参数的标识符:set、get、post、time、value。
      • 您可以使用某个属性作为出参,也可以自定义参数,如将已定义的属性土壤湿度作为出参,则云端调用自动喷灌服务时,将返回当前土壤湿度的数据。
      • 一个服务最多支持定义20个出参。
      扩展描述 当接入网关协议为OPC UA时,设置节点名称。节点名称需保证服务维度下唯一。
      描述 输入文字,对该服务功能进行说明或备注。长度限制为100字。
    • 自定义事件通知。在添加自定义功能页面,选择功能类型为事件。设置参数完成后,单击确认
      说明 接入网关的协议选择为Modbus时,不支持定义事件。


      事件参数设置如下:

      参数 描述
      功能名称

      事件的名称。

      支持中文、大小写字母、数字、短划线和下划线,且必须以中文、英文或数字开头,不超过30个字符。

      说明 当接入网关协议为Modbus时,不支持自定义事件。
      标识符 事件唯一标识符,在产品下具有唯一性。即 Alink JSON 格式中该事件的identifier的值,作为设备上报该事件数据的 Key,如 ErrorCode。
      说明 不能用以下系统保留参数作为标识符:set、get、post、time、value。
      事件类型
      • 信息:指设备上报的一般性通知,如完成某项任务等。
      • 告警:设备运行过程中主动上报的突发或异常情况,告警类信息,优先级高。您可以针对不同的事件类型进行业务逻辑处理和统计分析。
      • 故障:设备运行过程中主动上报的突发或异常情况,故障类信息,优先级高。您可以针对不同的事件类型进行业务逻辑处理和统计分析。
      输出参数 该事件的出参。单击增加参数,在弹窗对话框中添加一个服务出参。您可以使用某个属性作为出参,也可以自定义参数。如,将已定义的属性电压作为出参,则设备上报该故障事件时,将携带当前设备的电压值,用于进一步判断故障原因。

      当接入网关协议为OPC UA时,需设置参数索引,用于标记参数的顺序。

      说明
      • 不能用以下系统保留参数作为输出参数的标识符:set、get、post、time、value。
      • 一个事件最多支持定义50个出参。
      扩展描述 当接入网关协议为OPC UA时,设置节点名称。节点名称需保证事件维度下唯一。
      描述 输入文字,对该事件功能进行说明或备注。长度限制为100字。