物联网平台开发实验之华为云IoT智慧生活场景搭建
想了解更多关于课程内容请移步主帖:【物联网全栈成长计划】0基础34课时,变身高阶物联网能力者,免费学还有智能穿戴!
下面开始实践(看了下这个实验,之前有出过完整的实验步骤,这里就不做更多概述,可以参考 0基础体验华为云IoT构建智慧生活
1.1 实验介绍
实验通过构造智能门控、智能灯泡和智能加湿器的智慧生活场景,基于设备模拟器上报数据,结合平台的设备联动规则,实现对家居设备的智能控制。
1.2 实验流程
1.3 资源准备
在进行实验之前,需提前配置好以下资源,实验及资源准备均在“华北-北京四”区域下进行:
- 已安装MQTT设备模拟器。
- 已获取产品模型文件。
- 已成功注册华为云官网并通过认证。
1.3.1 安装MQTT设备模拟器
本章节指导用户如何在本地PC上安装MQTT设备模拟器,用于模拟设备基于MQTT协议接入IoT边缘节点。
- 在本地PC上访问MQTT.fx 下载页面
http://mqttfx.jensd.de/index.php/download
- 下载MQTT.fx工具(本实验以1.7.1版本为例)https://www.jensd.de/wordpress/?p=2746。
- 根据需要选择需要的版本 http://www.jensd.de/apps/mqttfx/1.7.1/
- 双击已下载的安装文件,单击“Next >”进入下一步。
- 选择安装路径,并单击“Next >”进入下一步。
- 选择快捷方式,并单击“Next >”进入下一步。等待出现如下界面,单击“Finish”完成安装。
1.3.2 获取产品模型文件
- 下载“实验资源.zip”。
详见帖子附件:https://bbs.huaweicloud.com/forum/forum.php?mod=viewthread&tid=117766
- 解压产品模型文件。
1.3.3 登录华为云
- 登录华为云首页:https://www.huaweicloud.com/。
- 单击页面右上角的“登录”。
- 输入账号名(或邮箱)和密码,单击“登录”。
1.4 创建产品
- 进入设备接入服务控制台,区域选择“华北-北京四”。
- 在左侧导航栏,选择“产品”,单击“创建产品”。
创建智能门控产品:填写参数信息后,单击“立即创建”。
- 所属资源空间:选择默认资源空间,或新建一个资源空间,如HDC2021
- 产品名称:自定义,如Smart_Door
- 协议类型:MQTT
- 数据格式:JSON
- 厂商名称:自定义,如Huawei
- 所属行业:无
- 设备类型:自定义,如Smart_Door
- 产品创建成功,请记录“产品ID”信息,并“查看详情”。
产品ID为:614c08c99fff74027dd3e378.
- 单击“上传模型文件”,选择模型文件后,单击“确定”。
- 获取模型文件Smart_Door_profile.zip并上传。
重复步骤2~步骤5,创建智能灯泡产品,并上传产品模型文件。
创建产品,填写参数信息:
- 所属资源空间:选择默认资源空间,或新建的资源空间,如HDC2021
- 产品名称:自定义,如Smart_Light
- 协议类型:MQTT
- 数据格式:JSON
- 厂商名称:自定义,如Huawei
- 所属行业:无
- 设备类型:自定义,如Smart_Light
产品ID为:614c09cd88056b027dd100fc.
上传模型文件:
获取模型文件Smart_Light_profile.zip并上传。
重复步骤2~步骤5,创建智能加湿器产品,并上传产品模型文件。
创建产品,填写参数信息:
- 所属资源空间:选择默认资源空间,或新建的资源空间,如HDC2021
- 产品名称:自定义,如Smart_Humidifier
- 协议类型:MQTT
- 数据格式:JSON
- 厂商名称:自定义,如Huawei
- 所属行业:无
- 设备类型:自定义,如Smart_Humidifier
产品ID为:614c0a2e88056b027dd10112.
上传模型文件:
获取模型文件Smart_Humidifier_profile.zip并上传。
- 三个产品创建完成,查看产品列表,示例如下:
1.5 注册设备
- 在左侧导航栏,选择“设备 > 所有设备”,单击“注册设备”。
- 注册“智能门控”设备:填写参数信息后,单击“确定”。
- 所属资源空间:与创建产品时的资源空间保持一致,如HDC2021。
- 所属产品:选择“智能门控”产品,即Smart_Door
- 设备标识码:自定义,如Smart_Door_01
- 设备名称:自定义,如Smart_Door_01
- 设备认证类型:默认配置,即“密钥”
- 密钥/确认密钥:12345678。
设备注册成功,请记录系统返回的“设备ID”和“设备密钥”。
设备ID 614c08c99fff74027dd3e378_Smart_Door_01
设备密钥 12345678
设备注册成功后是“未激活”状态,需要使用设备模拟器接入平台成功后,才会显示为“在线”状态。
重复步骤1~步骤3,注册“智能灯泡”设备。
- 所属资源空间:与创建产品时的资源空间保持一致,如HDC2021。
- 所属产品:选择“智能灯泡”产品,即Smart_Light
- 设备标识码:自定义,如Smart_Light_01
- 设备名称:自定义,如Smart_Light_01
- 设备认证类型:默认配置,即“密钥”
- 密钥/确认密钥:12345678。
设备ID 614c09cd88056b027dd100fc_Smart_Light_01
设备密钥 12345678
重复步骤1~步骤3,注册“智能加湿器”设备。
- 所属资源空间:与创建产品时的资源空间保持一致,如HDC2021。
- 所属产品:选择“智能加湿器”产品,即Smart_Humidifier
- 设备标识码:自定义,如Smart_Humidifier_01
- 设备名称:自定义,如Smart_Humidifier_01
- 设备认证类型:默认配置,即“密钥”
- 密钥/确认密钥:12345678。
设备ID 614c0a2e88056b027dd10112_Smart_Humidifier_01
设备密钥 12345678
三个设备注册完成,查看设备列表,示例如下:
当设备激活后,设备状态显示为“激活”
【截图1 请将当前页面按以下要求截图保存】
- 截图需显示华为云账号名
- 截图需显示至少3个设备且状态为在线
1.6 创建设备联动规则
用华为云IoT构建你的智能生活 |
||
场景 |
设备 |
方案 |
打开家门,玄关的灯自动打开。 |
智能门锁、智能灯泡 |
玄关的智能灯泡,和智能门锁联动,晚上6点到第二天早上6点,开门入户就可以自动开灯。 |
空调房里或者暖气打开,房间湿度直线下降时,自动开启加湿器 |
智能加湿器、智能插座、湿度传感器 |
当湿度低于45%,智能插座打开,智能加湿器开始工作。当湿度高于55%,智能插座关闭,智能加湿器停止工作。 |
夜晚上厕所,卫生间灯自动打开 |
智能灯泡,红外传感器 |
当红外传感器探测到有人移动时,智能灯泡打开,生效时间为晚上12点到凌晨6点,当红外警报为消除状态时,智能灯泡关闭。 |
出门之后,家里没人,自动检查灯、门是否是关闭状态 |
智能门锁、智能灯泡,红外传感器 |
当红外传感器(定时)探测到室内无人时,自动检查关闭室内灯、门锁。 |
- 在左侧导航栏,选择“规则> 设备联动”,单击“创建规则”。
- 创建“智能门锁开_灯开”规则:
生效时间:
指定时间 | 周一到周日 | 18:00-06:00
触发条件:
指定设备触发 | Smart_Door_01 | sensor | lock_state | ON
执行动作:
下发命令 | Smart_Light_01 | sensor | cmd | switch: ON
- 创建“智能加湿器_自动开”规则:
触发条件:
指定设备触发 | Smart_Humidifier_01 | sensor | Humidity < 45
执行动作:
下发命令 | Smart_Humidifier_01 | sensor | cmd | switch: ON
- 创建“智能加湿器_自动关”规则:
触发条件:
指定设备触发 | Smart_Humidifier_01 | sensor | Humidity > 55
执行动作:
下发命令 | Smart_Humidifier_01 | sensor | cmd | switch: OFF
- 创建“人物移动_灯开”规则:
生效时间:
指定时间 | 周一到周日 | 00:00-06:00
触发条件:
指定设备触发 | Smart_Door_01 | sensor | body_state = 1
执行动作:
下发命令 | Smart_Light_01 | sensor | cmd | switch: ON
- 创建“家人外出_灯关_门关”规则:
触发条件:
指定设备触发 | Smart_Door_01 | sensor | body_state = 0
执行动作:
下发命令 | Smart_Door_01 | sensor | cmd | switch: OFF
下发命令 | Smart_Light_01 | sensor | cmd | switch: OFF
- 五条设备联动规则创建完成,查看列表如下:
【截图2 请将当前页面按以下要求截图保存】
- 截图需显示华为云账号名
- 截图需显示至少创建5个规则且状态为打开
1.7 设备模拟器上报数据
注:如下以“智能门控”设备上报数据为例,进行演示。请结合产品模型文件中定义的属性,自行实现“智能灯泡”和“智能加湿器”属性数据上报。
- 访问这里,填写注册设备成功后生成的设备ID和设备密钥,生成连接信息(ClientId、Username、Password)。
- 打开fx软件,单击设置图标。
- 参考如下信息配置鉴权参数。
Broker Address:填写设备接入服务MQTT协议接入的域名地址
Broker Port:填写设备接入服务MQTT协议接入的端口,即1883
Cliend ID:设备cliendId
User Name:即设备ID
Password:加密后的设备密钥
- 单击“Apply”保存配置后,在主界面单击“Connect”,设备鉴权成功后,在设备接入服务控制台可以看到设备处于在线状态。
- 通过fx模拟设备上报属性,并在物联网平台查看设备上报数据。
在Publish页签,填写设备属性上报Topic,及JSON消息体,单击“Publish”完成上报。
Topic:$oc/devices/614c08c99fff74027dd3e378_Smart_Door_01/sys/properties/report
其中,614c08c99fff74027dd3e378_Smart_Door_01为设备ID,请替换为实际值。
消息体:
{
"services": [{
"service_id": "sensor",
"properties": {
"lock_state": "OFF",
"body_state": 0
},
"event_time": "20210212T121212Z"
}
]
}
然后,在物联网平台-设备详情页查看设备上报数据。
- 通过fx订阅命令下发Topic,并在物联网平台下发控制命令,查看设备是否收到平台下发的命令。
在Subscribe页签,填写命令下发Topic,并单击“Subscribe”完成订阅。
Topic:$oc/devices/614c08c99fff74027dd3e378_Smart_Door_01/sys/commands/#
其中,614c08c99fff74027dd3e378_Smart_Door_01为设备ID,请替换为实际值。
- 在物联网平台执行命令下发。
进入设备详情页,选择“命令”页签,单击同步命令下发区域的“命令下发”,设置参数并单击“确定”完成命令下发。
- 在fx客户端查看,平台下发命令接收成功。
参考步骤1~步骤8,实现“智能灯泡”设备属性数据上报和命令下发。
参考步骤1~步骤8,实现“智能加湿器”设备属性数据上报和命令下发。
- 根据设备联动规则,上报触发规则的属性阈值数据,观察平台是否自动执行了相应命令的下发。
- 在左侧导航栏,选择“监控运维> 统计报表”,按所属资源空间筛选查看设备统计情况。
三个设备同时上线,在线率应该为100%;设备趋势图展示最近几天的设备在线变化情况。
【截图3 请将当前页面按以下要求截图保存】
- 截图需显示华为云账号名
- 截图需显示在活动时间内设备上报消息数大于20
*上报消息数统计有延时,请隔天再查看。(这里只做说明)
在完成所有实验之后,需手动释放收费服务所占用的资源,或删除实验产生的后续不再使用的资源。
2.1 删除实验创建的资源
- 进入设备接入服务控制台,区域选择“华北-北京四”。
- 在左侧导航栏,选择“规则 > 设备联动”,删除实验创建的所有规则。
- 在左侧导航栏,选择“设备 > 所有设备”,删除实验创建的所有设备。
- 在左侧导航栏,选择“产品”,删除实验创建的所有产品。
【我的华为云体验之旅】有奖征文火热进行中:https://bbs.huaweicloud.com/blogs/309059
- 点赞
- 收藏
- 关注作者
评论(0)