HDC.Cloud | 【IoT最佳实践】自动关闭过热的IoT设备

举报
我是卤蛋 发表于 2020/02/14 11:38:35 2020/02/14
【摘要】 物联网平台支持设备数据上报和设备命令下发,但若要将两者联动起来,一般需要由应用服务器实现对应逻辑。 设备管理服务提供规则引擎功能,平台上简单几步操作即可实现数据上报特定数据时平台自动下发指定命令,减少应用服务器开发工作量。

场景说明

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

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

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

配置设备管理服务

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

  1. 登录华为云官方网站,访问设备管理服务

  2. 单击“立即使用”进入设备管理控制台。

  3. 单击页面右上角的“进入设备管理服务”进入控制台。

  4. 进入“云服务配置管理”页面,按照页面提示配置与华为云对接。

    1581650835902876.png        

  5. 切换左侧菜单,打开“产品模型”页面,单击页面右上角的“新增产品模型 > 本地导入”。

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

  6. 导入样例模型文件,“产品名称”自定义,如“MQTT_Device2”。点此获取样例模型文件

    1581650891709679.png
           

  7. 进入“设备 > 设备注册”页面,单击“创建”,填写设备注册参数。

    参数名称

    说明

    选择产品

    选择您导入的产品模型,如“MQTT_Device2”。

    设备标识码

    设备唯一物理标识,如IMEI、MAC地址等,用于设备在接入物联网平台时携带该标识信息完成接入鉴权。

    无真实设备时可随意填写英文字母和数字的组合字符串。

    预置密钥

    NB-IoT设备、集成Agent Lite SDK的设备接入时,用于设备和物联网平台之间的传输通道安全加密。
    原生MQTT设备接入时,暂无作用,可随意填写。
    原生MQTT设备:通过注册成功后生成的“设备ID”(与设备标识码一一对应)和“密钥”接入平台。
    NB-IoT设备、集成Agent Lite SDK的设备:设备通过注册时填写的“设备标识码”和“预置密钥”接入平台
                       

    确认密钥

    再次填写预置密钥。

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

    1581651136839072.png        

  8. 进入“规则”页面,单击“创建规则”,再单击“设备联动规则”。

    1581651099868088.png        

  9. 填写规则内容,以下参数取值仅为示例,您可参考用户指南创建自己的规则。

    参数名称

    说明

    规则名称

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

    立即触发

    选择“是”。

    规则类型

    选择“云端规则”。

    时间设置

    选择“总是”。

    条件

    1. 添加“设备行为”;“
    2. 动作类型”选择“设备”,设备模型选择已导入的产品模型,设备选择已创建的设备。
    3.“服务类型”选择“deviceSwitch”,“命令名字”选择“ON_OFF”,参数选择“power”,“值”选择“OFF”,“命令状态”选择“启用”。
    4. 单击“提交”。
                       

    动作

    1. 添加“设备行为”;
    2. “条件类型”选择“设备类型”,设备模型选择已导入的产品模型。
    2. “服务类型”选择“tempSensor”,“属性名字”选择“temperature”,“操作”选择“>”,“值”填写“80”,“数据时效”填写“300”,“延后触发”填写“0”。
    4. 单击“提交”。
                       

    描述

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

    填写完成后单击“提交”。

    1581651310117792.png        

验证操作

  • 您可以使用配置设备管理服务时注册的真实设备接入平台,上报“temperature”大于80的数据。

  • 您也可以使用模拟器模拟设备订阅Topic: /huawei/v1/devices/{deviceId}/command/json(其中{deviceId}需要替换成实际设备ID)后,上报“temperature”大于80的数据,操作方法请参考通过MQTT.fx体验设备接入

期望结果:

  • 若您使用真实设备上报数据,设备会收到一条“power”取值为“OFF”的“ON_OFF”命令。

  • 若您使用模拟器上报数据,可在“Subscribe”页签查看到平台下发的“power”取值为“OFF”的“ON_OFF”命令。


最后,让我们宣传一下:

3月27-28日,华为物联网平台在华为开发者大会静候您的光临。

华为开发者大会2020(Cloud)是华为面向ICT(信息与通信)领域全球开发者的年度顶级旗舰活动。大会旨在搭建一个全球性的交流和实践平台,开放华为30年积累的ICT技术和能力,以“鲲鹏+昇腾”硬核双引擎,为开发者提供澎湃动力,改变世界,变不可能为可能。

我们期待与你共创计算新时代

在一起,梦飞扬!

1583829665894051.jpg

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。