设备接入 IoTDA设备接入 IoTDA

文档首页> 设备接入 IoTDA> 最佳实践> 设备联动> 温度过高时自动关闭设备
更新时间:2021/07/08 GMT+08:00
分享

温度过高时自动关闭设备

场景说明

物联网平台支持设备数据上报和设备命令下发,但若要将两者联动起来,一般需要由应用服务器实现对应逻辑。

设备接入服务提供规则引擎功能,平台上简单几步操作即可实现数据上报特定数据时平台自动下发指定命令,减少应用服务器开发工作量。

本示例为设备自带的温度传感器上报的温度大于80度时,平台自动下发命令关闭设备。

配置设备接入服务

在设备接入服务中创建产品模型、注册设备并设置设备联动规则,实现当设备上报特定数据时平台自动下发命令。

  1. 访问设备接入服务,单击“立即使用”进入设备接入控制台。
  2. 选择左侧导航栏的“产品”,单击右上角下拉框,选择新建产品所属的资源空间。

    注:本文中使用的产品模型和设备仅为示例,您可以使用自己的产品模型和设备进行操作。

  3. 单击右上角的“创建产品”,创建一个基于MQTT协议的产品,填写参数后,单击“确认”

    基本信息

    产品名称

    自定义,如MQTT_Device

    协议类型

    选择“MQTT”

    数据格式

    选择“JSON”

    厂商名称

    自定义

    模型定义

    选择模型

    请参考步骤5导入模型即可。

    所属行业

    根据实际情况进行填写。

    设备类型

  4. 单击Profile.zip,获取产品模型文件样例。
  5. 在模型定义页面,单击“上传模型文件”,在弹出的页面中加载产品模型文件,然后单击“确认”。
    图1 上传模型文件
  6. 选择左侧导航栏的设备 > 设备注册,单击右上角的“注册设备”,填写设备注册参数。

    参数名称

    说明

    所属产品

    选择在步骤3中创建的产品。

    设备标识码

    即node_id,填写为设备的IMEI、MAC地址或Serial No;若没有真实设备,填写自定义字符串,由英文字母和数字组成。

    设备名称

    自定义。

    设备认证类型

    选择“密钥”。

    密钥

    设备密钥,可自定义,不填写物联网平台会自动生成。

    填写完成后单击“确定”,请注意保存注册成功返回的“设备ID”和“设备密钥”。

  7. 选择左侧导航栏的“规则>设备联动”,单击右上角的“创建规则”按钮。
  8. 参考下表参数说明,填写规则内容。以下参数取值仅为示例,您可参考用户指南创建自己的规则,填写完成后单击“创建规则”。

    参数名称

    说明

    规则名称

    创建的规则名称,例如“Overheated”。

    立即触发

    勾选“立即触发”

    生效时间

    选择“一直生效”。

    描述

    对该规则的描述,如“设备温度高于80度时自动关闭设备”。

    触发条件

    1. 单击“添加条件”;
    2. 选择“指定设备触发”;
    3. 选择6中添加的设备;
    4. “服务类型”选择“tempSensor”,“属性名字”选择“temperature”,“操作”选择“>”,“值”填写“80”,单击“触发机制”,“无效触发抑制选择”选择“需要”,数据时效”填写“300”,然后单击“确认”。

    执行动作

    1. 单击“添加动作;
    2. “动作类型”选择“下发命令”,下发设备选择6创建的设备;
    3. “服务类型”选择“deviceSwitch”,“命令名字”选择“ON_OFF”,单击“参数配置”,“power”的值选择“OFF”,“命令状态”,然后单击“确认”。

验证操作

  • 您可以使用配置设备接入服务时注册的真实设备接入平台,上报“temperature”大于80的数据。
  • 您也可以使用模拟器模拟设备订阅Topic: “$oc/devices/{device_id}/sys/properties/report”(其中{deviceId}需要替换成实际设备ID)后,上报“temperature”大于80的数据,操作方法请参考在线开发MQTT协议的智慧路灯

期望结果:

  • 若您使用真实设备上报数据,设备会收到一条“power”取值为“OFF”的“ON_OFF”命令。
  • 若您使用模拟器上报数据,可在“Subscribe”页签查看到平台下发的“power”取值为“OFF”的“ON_OFF”命令。
分享:

    相关文档

    相关产品