设备接入 IoTDA设备接入 IoTDA

文档首页> 设备接入 IoTDA> 最佳实践> 设备联动> 煤气浓度过高自动打开推窗器
更新时间:2021/07/22 GMT+08:00
分享

煤气浓度过高自动打开推窗器

场景说明

煤气安全关系到千家万户的生命财产安全。本示例基于华为物联网平台提供的设备接入服务,通过触发设备联动规则,自动打开推窗器。具体场景是煤气监测器将煤气浓度数值上报到物联网平台,当煤气浓度超标时,会触发设置好的设备联动规则,物联网平台会下发打开窗户的命令到无线推窗器,无线推窗器收到命令后,自动把窗户打开。

创建煤气监测产品

  1. 访问设备接入服务,单击“立即使用”进入设备接入控制台。
  2. 选择左侧导航栏的“产品”,单击右上角下拉框,选择新建产品所属的资源空间。
  3. 单击右上角的“创建产品”,创建煤气浓度监测产品,填写参数后,单击“立即创建”。

    基本信息

    产品名称

    自定义,如gasdevice。

    协议类型

    选择“MQTT”

    数据格式

    选择“JSON

    厂商名称

    自定义

    模型定义

    选择模型

    不勾选

    所属行业

    自定义

    设备类型

  4. 在模型定义页面,单击“自定义模型”,参考下表,完成产品模型配置。

    服务数据

    服务

    /

    服务ID:gaslevel

    服务类型:建议和服务ID保持一致

    /

    属性

    属性名称:gaslevel

    是否必选:是

    数据类型:int

    访问权限:可读

    取值范围:0~100

    /

    命令

    命令名称:switch

    下发参数名称:switch

    是否必选:是

    数据类型:string

    长度:1

    枚举值:on,off

注册设备

  1. 选择左侧导航栏的设备 > 设备注册,单击右上角的“注册设备”,填写设备注册参数。注册煤气浓度监测设备,并记录设备ID和密钥。

    参数名称

    说明

    所属产品

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

    设备标识码

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

    设备名称

    自定义。

    设备认证类型

    选择“密钥”。

    密钥

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

  2. 选择左侧导航栏的设备 > 设备注册,单击右上角的“注册设备”,填写设备注册参数。注册推窗器设备,并记录设备ID和密钥。

    参数名称

    说明

    所属产品

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

    设备标识码

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

    设备名称

    自定义。

    设备认证类型

    选择“密钥”。

    密钥

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

配置设备联动规则

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

    参数名称

    说明

    规则名称

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

    立即触发

    勾选“立即触发”

    生效时间

    选择“一直生效”。

    描述

    对该规则的描述,如“煤气浓度高于6时自动打开推窗设备”。

    触发条件

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

    执行动作

    1. 单击“添加动作;
    2. “动作类型”选择“下发命令”,下发设备选择步骤2创建的设备;
    3. “服务类型”选择“windowswitch”,“命令名字”选择“on_off”,单击“参数配置”,“switch”的值选择“on”,然后单击“确认”。

验证操作

方法一:

您可以使用MQTT.fx模拟设备验证。

  1. 使用MQTT.fx分别模拟煤气探测器设备和推窗器,并连接到物联网平台。操作方法请参考在线开发MQTT协议的智慧路灯
  2. 打开模拟推窗器的MQTT.fx,订阅平台下发的命令。
    1. 选择“Subscribe”页签。
    2. 输入订阅平台下发命令的Topic=$oc/devices/{device_id}/sys/commands/#(其中与步骤2获取的设备ID保持一致。)。
    3. 单击“Subscribe”按钮,完成平台命令下发订阅。

  3. 切换到模拟煤气探测的MQTT.fx,上报属性。
    1. 选择“Publish”页签。
    2. 输入属性上报的Topic:“$oc/devices/{device_id}/sys/properties/report(其中{deviceId}与步骤1获取的设备ID保持一致。)。
    3. 上报1条“gaslevel”大于6的属性。
      样例:
      {
          "services": [{
                  "service_id": "gaslevel",
                  "properties": {
                      "gaslevel": 45
                  }
              }
          ]
      }
    4. 单击“Publish”按钮上报属性值。

  4. 切换到模拟推窗器的MQTT.fx,选择“Subscribe”页签。可以看到收到平台下发的“switch”取值为“on”的命令。

    方法二:

    您可以使用配置设备接入服务时注册的真实设备接入平台,上报“gaslevel”大于6的数据。设备会收到一条“switch”取值为“on”的命令,自动推开窗户。

分享:

    相关文档

    相关产品