基于微信控制的智能家居系统
2017-09-23张浩然朱嘉塬李阳智
张浩然+朱嘉塬+李阳智
摘 要:实现通过wifi模块的远距离传输,我们可以利用Arduino作为主控,微信平台作为媒介来实现。微信智能家居是融合了自动化控制系统、计算机网络系统和wifi无线网络通讯技术于一体、通过微信手机客户端进行网络化智能控制,提升家居安全性、便利性、舒适性、艺术性,并实现环保节能的居住环境的新型智能家居系统。
关键词:wifi模块、arduino、物联网、微信平台
由西北民族大学电气工程学院双e项目资助,项目编号:20161818
Project 20161818 supported by Double E project, School of electrical engineering, Northwest University For Nationalities.
1、前言
随着科技的发展,“物联网”慢慢成了时下最流行的词语。作为新一代信息技术的重要组成部分,它也是现阶段网络技术的发展方向,“物联网”顾名思义就是将硬件和网络相连接,实现对硬件的远程控制、硬件对实时数据的处理和传输。本作品的设计就是将物联网移植于微信之上,用微信已经成熟的管理界面来使设计便捷化,专业化,美观化。
2、硬件设计
本设计采用的Arduino单片机,该单片机种类繁多,是优秀的硬件开发平台,在自动化、物联网领域内都广泛涉及。我们以arduino为核心,wifi模块为媒介,实现基于物联网的远程控制。Arduino连接WiFi模块并上电,即可实现对数据的传输。在搭建硬件模型的时候,我们采用了MVC模型,MVC模型是一种集模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构。
图1为智能家居系统的整体构架图,由图,我们可以清楚的看到,以arduino为主脑的智能家居管理系统,从微信端上传控制命令到云服务器,再又云服务器传输至WiFi模块,从而控制单片机IO口的引脚状态。完成基本的物联网控制。我们亦可以从硬件检测装置中采集数据,上传服务器,利用微信平台实时观测。
2、网络数据传输和微信平台的搭建
(1)注册微信公众平台账号
微信公众平台: https://mp.weixin.qq.com/
(2)申请服务器/虚拟主机
此处多应用腾讯云来完成设计。
(3)开启开发者模式
微信公众平台有两个模式,一个是编辑模式(傻瓜模式),简单但功能单一。另一个是开发者模式,可以通过开发实现复杂功能。两个模式互斥,显而易见,登录微信公众平台并通过“高级功能”菜单开启开发者模式。
(4)填写接口配置信息
同样是在“高级功能”菜单中配置,配置两项参数。
图二为数据传输流程图,我们先从传感器中获取数据,让我们的主板arduino获取当前状态,再利用收发模块将其推送至云端,与我们事先准备好的数据库进行数据对比,选择符合的数据进行数据轉换,处理完成后,将其推送至微信平台。我们同样可以从微信端发送数据,经过服务器,到我们的执行器完成命令。
3、单片机工作流程
流程图解析:
程序开始,系统初始化,传感器采集数据,将采集的数据进行处理整合传输到1602上显示,之后检测是否接收到服务器端传来变化的数值,没接收到回传各项指标,接收到则用单片机对指令进行操作。
本系统包含了接收终端和发射终端两个部分,无线通讯模块使用以esp8266为芯片的WiFi无线通讯,Arduino单片机为本设计的主控芯片,另外,系统还包含温湿度传感器模块、气体传感器模块等。
4、结语
对于智能家居而言,微信无疑是一个时尚便利的终端应用。微信平台自身具有三个非常好的基本条件:一是成熟的平台技术,二是庞大的用户群,三是开放的用户平台,这三个条件让微信成为智能家居系统的用户控制终端奠定了优势。智能家居也是最需要人与物互动的物联网行业之一,微信在微信智能家居系统中就相当于系统的“大脑”,用户远程通过微信控制终端发送的指令后,利用wifi无线技术,向住宅内的智能家居设备发出命令,让家里的设备听懂你的话,给你最人性化的的智能家居享受!
参考文献:
[1]Massimo Banzi.爱上arduino [M].第三版.人民邮电出版社.2016:71-78
[2]宋楠,韩广义.Arduino开发从零开始学[M].清华大学出版社.2014:83-97
作者简介:
张浩然,男(回族),河南洛阳人,西北民族大学电气工程学院本科在读生,研究方向:通信工程、物联网