当标准功能没法满足需要的时候,可以根据自身业务自定义功能。本文介绍如何编辑自定义功能,包括新增自定义功能、修改自定义功能和删除自定义功能。
前提条件
已创建产品,详见创建产品。
背景信息
- 自定义功能当前只能在自有品牌和云智能体系中使用,选择后将无法在猫精生态中使用。
- 产品状态如果是已发布,所有的自定义功能都不支持删除。
- 当设备已烧录,请避免再进行编辑和变动自定义功能。
- 登录生活物联网平台。
- 在项目主页面产品管理中,选择产品单击继续开发,进入 页面。
- 单击自定义功能对应的添加功能。
- 配置自定义功能参数。
自定义属性:在添加自定义功能对话框,选择功能类型为属性。设置参数完成后,单击确认。
属性参数设置说明如下表。
参数
描述
功能名称
属性的名称,例如:用电量。同一产品下功能名称不能重复。
支持中文、英文字母、日文、数字、短划线(-)、下划线(_)、正斜线(/)和英文句号(.),且必须以中文、英文、日文或数字开头,不超过30个字符。
输入功能名称时,将从标准功能库中筛选匹配的标准功能供您选择,您可以参考标准功能进行配置。
说明当接入网关协议为Modbus时,不支持标准属性,仅支持自定义属性。
标识符
属性唯一标识符,在产品中具有唯一性。即Alink JSON格式中的identifier的值,作为设备上报该属性数据的Key,云端根据该标识符校验是否接收数据。支持英文、数字和下划线(_),不超过50个字符,例如:PowerConsumption。
说明不能用以下系统保留参数作为标识符:set、get、post、property、event、time、value。
数据类型
int32:32位整型。需定义取值范围、步长和单位符号。
float:单精度浮点型。需定义取值范围、步长和单位符号。
double:双精度浮点型。需定义取值范围、步长和单位符号。
enum:枚举型。定义枚举项的参数值和参数描述,例如:1表示加热模式、2表示制冷模式。
bool:布尔型。采用0或1来定义布尔值,例如:0表示关、1表示开。
text:字符串。需定义字符串的数据长度,最长支持10240字节。
date:时间戳。格式为String类型的UTC时间戳,单位:毫秒。
struct:JSON对象。定义一个JSON结构体,新增JSON参数项,例如:定义灯的颜色是由Red、Green、Blue三个参数组成的结构体。不支持结构体嵌套。
array:数组。需声明数组内的元素类型、数组元素个数。元素类型可选择int32、float、double、text或struct,需确保同一个数组元素类型相同。元素个数,限制1~512个。
说明当设备协议为Modbus时,无需设置该参数。
取值范围
数据类型为int32、float、double时,可设置属性值的取值范围。
步长
属性值变化的最小粒度。数据类型为int32、float、double时,可根据您的业务需要设置步长。
例如:为温度计产品定义温度属性时,将数据类型设置为int32,步长为2,单位为℃,取值范围0~100。即温度每变化两度,设备上报温度值,例如:0℃、2℃、4℃、6℃、8℃等。
单位
单位可选择为无,或根据实际情况选择。
读写类型
读写:请求读写的方法支持GET(获取)和SET(设置)。
只读:请求只读的方法仅支持GET(获取)。
说明当接入网关协议为Modbus时,无需设置该参数。
描述
输入文字,对该功能进行说明或备注。长度限制为100个字符。
扩展描述
扩展描述为设备通信协议到标准物模型的映射关系。对应物模型TSL中的物模型扩展配置。
仅网关子设备的接入网关协议为自定义、OPC UA或Modbus时,需填写该参数。
接入网关协议为自定义时,填写JSON格式的自定义配置信息,长度限制为1024个字符。
接入网关协议为OPC UA时,设置节点名称。节点名称需保证属性维度下唯一。
接入网关协议为Modbus时,需设置以下参数:
操作类型:
离散量输入(只读,0x02)
线圈状态(只读,0x01)
线圈状态(读写,读取使用0x01,写入使用0x05)
线圈状态(读写,读取使用0x01,写入使用0x0F)
线圈状态(只写,0x05)
线圈状态(只写,0x0F)
保持寄存器(只读,0x03)
保持寄存器(读写,读取使用0x03,写入使用0x06)
保持寄存器(读写,读取使用0x03,写入使用0x10)
保持寄存器(只写,0x06)
保持寄存器(只写,0x10)
输入寄存器(只读,0x04)
寄存器地址:十六进制,必须以
0x
开头,且限制范围是0x0~0xFFFF
,例如:0xFE
。原始数据类型:支持int16、uint16、int32、uint32、int64、uint64、float、double、string、bool、bits。
比特位置:原始数据类型选择bits时的参数。选择数据对应的位置。
取值范围:这是原始数据经过缩放因子处理之后的取值范围。不在该取值范围内的数据会被丢弃。物联网平台已为各操作类型设置了默认取值范围:
线圈状态类型:0~1
离散量输入类型:0~1
保持寄存器类型:-2147483648~2147483647
输入寄存器类型:-2147483648~2147483647
交换寄存器内高低字节:是否把寄存器内16位数据的前后8个bit互换(byte1byte2 -> byte2byte1)。
true:互换。
false:不互换。
交换寄存器顺序:是否把原始数据32位数据的前后16个bit互换(byte1byte2byte3byte4 -> byte3byte4byte1byte2)。
true:互换。
false:不互换。
缩放因子:整型或浮点型数字,默认值为1,不可以为0,不可以为负数。
数据上报方式:可选按时上报和变更上报。
自定义服务:在添加自定义功能对话框,选择功能类型为服务。设置参数完成后,单击确认。
说明接入网关的协议选择为Modbus时,不支持定义任何服务。
服务参数设置说明如下表。
参数
描述
功能名称
服务名称。支持中文、英文字母、日文、数字、短划线(-)、下划线(_)、正斜线(/)和英文句号(.),且必须以中文、英文、日文或数字开头,不超过30个字符。
输入功能名称时,将从标准功能库中筛选匹配的标准功能供您选择,您可以参考标准功能进行配置。
标识符
服务唯一标识符,在产品下具有唯一性。即Alink JSON格式中该服务的identifier的值。支持英文、数字和下划线(_),不超过50个字符。
说明不能用以下系统保留参数作为标识符:set、get、post、property、event、time、value。
调用方式
异步:服务为异步调用时,云端执行调用后直接返回结果,不会等待设备的回复消息。
同步:服务为同步调用时,云端会等待设备回复;若设备没有回复,则调用超时。
输入参数
设置该服务的入参,可选。
单击增加参数,在弹窗对话框中添加服务入参。
当接入网关协议为OPC UA时,需设置参数索引,用于标记参数的顺序。
说明不能用以下系统保留参数作为输入参数的标识符:set、get、post、property、event、time、value。
您可以使用某个属性作为入参,也可以自定义参数。例如:在定义自动喷灌服务功能时,将已定义的属性喷灌时间和喷灌量作为自动喷灌服务的入参,则调用该参数时传入这两个参数,喷灌设备将按照设定的喷灌时间和喷灌量自动进行精准灌溉。
一个服务最多支持定义20个入参。
输出参数
设置该服务的出参,可选。
单击增加参数,在弹窗对话框中添加服务出参。
当接入网关协议为OPC UA时,需设置参数索引,用于标记参数的顺序。
说明不能用以下系统保留参数作为输出参数的标识符:set、get、post、property、event、time、value。
您可以使用某个属性作为出参,也可以自定义参数,例如:将已定义的属性土壤湿度作为出参,则云端调用自动喷灌服务时,将返回当前土壤湿度的数据。
一个服务最多支持定义20个出参。
扩展描述
扩展描述为设备通信协议到标准物模型的映射关系。对应物模型TSL中的物模型扩展配置。
仅网关子设备的接入网关协议为自定义或OPC UA时,需增加扩展描述。
接入网关协议为自定义时,需传入JSON格式的自定义配置,长度不超过1024个字符。
接入网关协议为OPC UA时,设置节点名称。节点名称需保证服务维度下唯一。
描述
输入文字,对该服务功能进行说明或备注。长度限制为100个字符。
自定义事件:在添加自定义功能对话框,选择功能类型为事件。设置参数完成后,单击确认。
说明接入网关的协议选择为Modbus时,不支持定义任何事件。
事件参数设置说明如下表。
参数
描述
功能名称
事件的名称。支持中文、英文字母、日文、数字、短划线(-)、下划线(_)、正斜线(/)和英文句号(.),且必须以中文、英文、日文或数字开头,不超过30个字符。
输入功能名称时,将从标准功能库中筛选匹配的标准功能供您选择,您可以参考标准功能进行配置。
标识符
事件唯一标识符,在产品下具有唯一性。即Alink JSON格式中该事件的identifier的值,作为设备上报该事件数据的Key,例如:ErrorCode。 支持英文、数字和下划线(_),不超过50个字符。
说明不能用以下系统保留参数作为标识符:set、get、post、property、event、time、value。
事件类型
您可以针对不同的事件类型进行业务逻辑处理和统计分析。
信息:指设备上报的一般性通知,例如:完成某项任务。
告警:设备运行过程中主动上报的突发或异常情况,告警类信息,优先级高。
故障:设备运行过程中主动上报的突发或异常情况,故障类信息,优先级高。
输出参数
该事件的出参。单击增加参数,在弹窗对话框中添加一个服务出参。您可以使用某个属性作为出参,也可以自定义参数。例如:将已定义的属性电压作为出参,则设备上报该故障事件时,将携带当前设备的电压值,用于进一步判断故障原因。
当接入网关协议为OPC UA时,需设置参数索引,用于标记参数的顺序。
说明不能用以下系统保留参数作为输出参数的标识符:set、get、post、property、event、time、value。
一个事件最多支持定义50个出参。
扩展描述
扩展描述为设备通信协议到标准物模型的映射关系。对应物模型TSL中的物模型扩展配置。
仅网关子设备的接入网关协议为自定义或OPC UA时,需增加扩展描述。
接入网关协议为自定义时,需传入JSON格式的自定义配置,长度不超过1024个字符。
接入网关协议为OPC UA时,设置节点名称。节点名称需保证事件维度下唯一。
描述
输入文字,对该事件功能进行说明或备注。长度限制为100个字符。
- (可选)当自定义功能中的设置不符合预期,可以对已添加的自定义功能内容进行修改。
- 单击自定义功能中对应数据的编辑。
- 修改参数,并单击确定完成。说明 功能编辑中部分参数不支持修改(灰色显示部分,如功能类型),根据具体的功能类型来修改。详细参考文本步骤四的参数介绍。
- (可选)新增的自定义功能不再需要时,可以删除该自定义功能。
- 单击自定义功能中对应数据的 删除。
- 在弹出的对话框中,单击确定完成。