基于STM32与机智云平台的远程控制智能家居系统

 该项目采用STM32为主控, 实现一个智能家居系统,并连接云平台-机智云作为远程控制的云服务器,同时用到手机APP作为控制终端,整个系统包括硬件端、云平台、手机APP,是一套完整的物联网智能家居系统。

 

项目工程源代码及使用教程分享:

链接:https://pan.baidu.com/s/14bQTjwzYTuScHXrpb-Btmw?pwd=p24r 
提取码:p24r 

一、云平台-机智云服务器

利全球领先的用第三方云平台-机智云,打造了基于超低功耗 Nuleo-STM32L073 的物联网 应用系统,实现的功能有:

1)远程手机 APP 控制 RGB LED 的颜色(红、绿、蓝);

2)自带 3 种混合色,黄色、紫色、粉色,一键切换所需颜色;

3)远程手机 APP 控制直流电机的正反转;

4)远程手机 APP 显示温湿度;

5)红外传感器障碍物检测

二、硬件介绍

基于STM32与机智云平台的远程控制智能家居系统_第1张图片

 NUCLEO-L073RZ 是 ST 公司推出的一款针对 STM32L0 系列设计的 Cortex-M0 开发板,支持 mbed ,兼容 Arduino,同时还提供 ST Morpho 扩展排针,可连接微控制器的所有周边外 设。开发板基于 STM32L073RZT6 设计,开发板还集成了 ST-LINK/V2-1 仿真下载器(但仅 对外提供 SWD 接口),免除您另外采购仿真器或下载器的麻烦。并且具备 Arduino 接口,可 接入 Arduino 巨大生态系统的各种 Shield 扩展板,让您能够轻松快速增加特殊功能。

基于STM32与机智云平台的远程控制智能家居系统_第2张图片

机智云是智能硬件时代专为硬件提供后台支持的云服务平台,服务的内容主要包括了统计分 析、数据安全、远程管理、软件升级等。GoKit 是机智云推出的一套智能硬件开发板,Gokit 扩展板采用 Arduino UNO 接口,板载 ESP8266-12F WiFi 模块、温湿度传感器 DHT11、2 个 按键、障碍物红外检测模块、微型直流电机、RGB 5050 全彩 LED。

三、软件系统

开发工具:STM32CubeMX 和 IAR for ARM

机智云智能设备接入原理:基于STM32与机智云平台的远程控制智能家居系统_第3张图片

基于STM32与机智云平台的远程控制智能家居系统_第4张图片 基于STM32与机智云平台的远程控制智能家居系统_第5张图片

 硬件厂商对硬件智能化的第一步是让设备能够联网,GAgent 是机智云提供的一款兼容国内 主流 Wi-Fi 模块、移动网络模块的模组系统。硬件厂商只需理解如何与 GAgent 进行通讯 即可。GAgent 主要的作用是数据转发,是设备数据、机智云、应用端(APP)的数据交互 桥梁。可将 GAgent 移植到 WiFi 模组、GPRS 模组、PC 端等。目前机智云提供由机智云移 植的 WiFi 模组对应固件有:汉枫 LPB100、乐鑫 8266、汉枫 LPT120、高通 4004 、 RealTek 8711AM 、庆科 3162 等。简单的说就是,WiFi 模块里面烧录了一个叫 GAgent 的 固件,然后这个 WiFi 模块对用户的 MCU 就是串口透传了,复杂的协议、交互都给封装 了

 四、云端配置

基于STM32与机智云平台的远程控制智能家居系统_第6张图片

 我 们 在 机 智 云 开 发 者 中 心 http://dev.gizwits.com/zh-cn/developer/ 创 建 一 个 名 为 NucleoL073GoKitS 的产品并添加数据点,数据点是设备产品的功能的抽象,用于描述产品 功能及其参数。创建数据点后,设备与云端通讯的数据格式即可确定,设备、机智云可以相 互识别设备与机智云互联互通的数据。因为我们手机 APP 的功能需求是: 单独控制 RGB LED 的颜色(红、绿、蓝); 自带 3 种混合色,黄色、紫色、粉色,保证能一键切换所需颜色; 远程手机 APP 控制直流电机的正反转; 远程手机 APP 显示温湿度传感器 DHT11 采集的温湿度; 红外传感器障碍物检测; 把以上进行抽象,依次为数值量下发控制、枚举量下发控制、数值量下发控制、数值量上报、 布尔值上报。 所以建立如下数据点(这里可以利用官方提供的模板):

基于STM32与机智云平台的远程控制智能家居系统_第7张图片

创建后的数据点如下:

基于STM32与机智云平台的远程控制智能家居系统_第8张图片 总结:本文介绍了使用机智云自助开发平台快速创建智能产品的过 程,并给出了移植机智云微信宠物屋 SDK 到 Nucleo-STM32L073 的过程。利用机智云强大的代码生成工具,我们只需简单的把用户 代码填充到机智云为我们搭建的框架即可。

你可能感兴趣的:(智能家居)