玩嗨 OpenHarmony:基于 OpenHarmony 的智能保险柜

玩嗨 OpenHarmony:基于 OpenHarmony 的智能保险柜

51CTO 开源基础软件社区 润和OpenHarmony研究院《智能保险柜》

1. 项目简介

智能保险柜实时监测保险柜中振动传感器,当有振动产生时及时向用户发出警报。在连接网络后,配合数字管家应用,用户可以远程接收智能保险柜的报警信息。后续可扩展摄像头等设备,实现对危险及时报警,及时处理,守护家中财产安全。

本文中的样例使用了 Pegasus 智能家居套件,该样例使用到了 OpenHarmony 的平台驱动、外设驱动、NFC 等特性,在 3.0 LTS/3.1 Beta 版本中实现了碰一碰配网。

样例的运行效果如下:

具体设备侧仓库地址:

https://gitee.com/openharmony-sig/knowledge_demo_smart_home/

2. 交互流程

如上图所示,智能保险柜整体方案框架可以分为:智能保险柜设备、数字管家应用、云平台三部分。智能保险柜设备端按照MQTT协议与华为IOT物联网平台进行通信。当智能保险柜检测到振动时,设备端上报数据至云平台最终同步到数字管家进行报警,并将报警信息也上报至云平台最终同步到数字管家;当用户发现为误报时关闭报警,命令数据先发送至云平台,再由云平台下发至设备侧。

3. 硬件介绍

我们使用润和Pegasus智能家居开发底板+SW-18010P振动模块来模拟感智能保险柜设备。通过检测GPIO输入获取振动感应。我们需要有一台预装HarmonyOS手机支持设备控制和告警提示。

3.1 SW-18010P振动模块

参考电路图:

3.2 润和Pegasus智能家居开发板底板
开发套件的功能特性:
  • Pegasus芯片是一款专为物联网终端领域打造的2.4GHz WiFi SoC芯片,集成IEEE 802.116/g/n基带和RF电路,RF电路包括功率放大器PA、低噪声放大器LNA、 RF Balun、天线开关以及电源管理等模块;支持20MHz标准带宽和5MHZ/10MHz窄带宽,提供最大72.2Mbit/s物理层速率。
  • Pegasus wiFi 基带支持正交频分复用 (OFDM) 技术,并向下兼容直接序列扩频(DSSS)和补码键控(CCK)技术,支持 IEEE 802.11b/g/n 协议的各种数据速率。
  • Pegasus 芯片集成高性能 32bit 微处理器、硬件安全引擎以及丰富的外设接口,外设接口包括 SPI UART、PCPWM、1S、GP1O 和多路外部 ADC,同时支持高速 SD102.0 Slave 接口,最高时钟可达 50MHZ;芯片内置 SRAM 和Flash,可独立运行并支持在 Flash 上运行程序。
  • Pegasus 支持第三方组件,并配套提供开放、易用的开发和调试运行环境。

将SW-18010P的GND连接开发板的GND,VCC连接开发板的V3.3,DO连接开发板的A9。

4. 配网方案

  • 在设备上电前需准备好安装了数字管家应用的HarmonyOS手机,详情见数字管家应用开发:
    • https://gitee.com/openharmony-sig/knowledge_demo_smart_home/blob/master/FA/DistSchedule/README_zh.md
    • 在设置中开启手机的NFC功能;
  • 写设备NFC标签,详细操作见设备NFC标签指导文档:
    • https://gitee.com/openharmony-sig/knowledge_demo_smart_home/blob/master/dev/docs/NFC_label_definition/README.md
    • 其中设备模型定义为profile 。
  • 烧录完成后,上电。开发者在观察开发板上状态LED灯以8Hz的频率闪烁时,将手机上半部靠近开发板NFC标签处;
  • 无需任何操作手机将自动拉起数字管家应用并进入配网状态,配网过程中无需输入热点账号密码。具体无感配网相关流程参考 无感配网指南:
    • https://gitee.com/openharmony-sig/knowledge_demo_smart_home/blob/master/dev/docs/net_config/README.md

OLED屏负责显示当前网络状况,有三种状况:

  • WIFI_CONNECT_ING(等待配网,未连入WIFI);
  • WIFI_CONNECT_OK(已经连入WIFI,等待自动连入华为云端);
  • IOT_CONNECT_OK(已经连入华为云端)。

5. 操作体验

5.1 设备控制

配网完成后,数字管家应用会自动进入智能保险柜控制页面,通过控制页面可以关闭告警。

5.2 告警提示

当检测到保险柜有振动时,会通知数字管家应用告警,并且告警消息还会推送同一家庭账号的所有成员。

写在最后

我们最近正带着大家玩嗨OpenHarmony。如果你有好玩的东东,欢迎投稿,让我们一起嗨起来!有点子,有想法,有Demo,立刻联系我们:

合作邮箱:zzliang@atomsource.org