查红胜 陈艳
摘要 本文设计了一款基于云平台的智能家居控制系统,重点完成云平台和家庭网关两部分的设计。在云平台上建立MySQL数据库实现存储控制信息的功能,使用java语言编写后台、家庭网关通信的代码并且将其部署到云平台上。家庭网关的设计主要分为网络通信模块和ZigBee通信模块两部分。
【关键词】云平台 智能家居 家庭网关
智能家是以住宅为平台,兼备建筑设备、网络通信、信息家电和设备自动化,集系统、结构、服务、管理为一体的高效、舒适、安全、便利、环保的居住环境。智能家居系统利用计算机技术和网络通讯技术,将与家居生活相关各个子系统诸如安保安防、灯光控制、家电控制等有机的结合在一起,并通过网络化、智能化的管理,实现方便、自动、快捷日常事务的一种全新家居生活体验。
目前的智能家居大多都只能够单一控制某几种设备,智能控制独立,无法通过系统的分析进行自主分析控制家居环境,而且在远程控制上面都有一定的缺陷。本文所设计的系统最主要的优势便是结合当下主流的云平台,将家居环境的数据实时的传输到云平台,通过云平台相应的计算程序计算出适合家居主人想要的温度、亮度等一系列信息,并控制家居环境的改变。同时结合人工远程控制,极大限度的节省硬件设备的成本,同时也实现了远程控制,一举多得。
1 系统总体设计
基于云平台的智能家居控制系统主要包括移动终端、云平台、家庭网关和ZigBee终端控制节点几个部分组成。整个系统网络可以分为家庭内部网络和家庭外部网络两部分。内部网络由ZigBee模块和Wi-Fi无线通讯网络构成,主要提供节点与家庭网关之间的通讯和本地用户对智能家居控制系统的访问和控制;家庭外部网络则通过Wi-Fi连接到家庭路由器上面,从而连接到外部Internet,以提供用户远程对家居环境的控制和云端对家居环境数据分析控制。
其具体的工作流程主要分为两个部分:
1.1 当用户在家庭里面控制家居环境的时候
用户通过手机等一系列移动终端发送控制命令到家庭网关,网关对这些对这些命令进行解析,了解每个命令的具体内容后通过网关内部ZigBee通讯对相应的ZigBee终端节点进行控制,从而实现对家居环境的控制。同时家庭内部的各感知节点将感知到的信息反馈回网关,网关对这些信息进行包装处理发送给用户和云端数据库。
1.2 当用户不在家庭里面控制家居环境的时候
用户发送的控制命令通过Internet传输到云端服务器,云端服务器对此命令做出响应,修改数据库中的信息,家庭网关通过访问云平台获取实时信息,当获取到控制指令后再通过家庭内部的ZigBee通信网络传达给相对应的节点,控制其工作。
2 云平台设计
本设计选择的云平台是阿里云,其相对于其他的云服务提供商起步较晚,但是在云服务上发展非常的迅速。目前服务范围覆盖全球200多个国家和地区,包含政府、企业等组织机构,提供最安全、可靠的计算和数据处理能力,提供最为普惠的科技和公共服务,是万物互联的DT世界,是目前世界上第二大云服务提供商。除此之外,阿里云还提供一系列分布式计算、存储服务供开发者使用,包括分布式文件存储、分布式数据库集群、分布式缓存、分布式定时服务等,这些服务将大大降低开发者的开发成本。这样,开发者不需要任何运维手段和工具,也不需要自己部署、管理服务器。这在某些方面极大地降低了开发的难度,符合开发思维。
2.1 云服务器设计
基于云平台的智能家居控制系统需要在云平台上建立云端服务器,通过服务器实现终端与家庭网关之间的通讯。服务器上搭建MySQL数据库,用于存储终端发来的控制指令和存储家庭内部的一些实时数据以备用户查询,当网关接入服务器时可以进行数据查询获取到控制指令,然后通过ZigBee网络将控制指令发送给电器。
云服务器的通信程序主要实现三种功能:
(1)云服务器与终端进行通讯,主要实现响应终端发来的POST请求,从请求中可以解析出控制指令将其写入数据表内。
(2)要实现云服务器与网关的通信,当网关通过GET请求向服务器查询控制指令的时候,服务器会查询数据表的内容并读取控制指令发送给网关,网关再对电器进行控制。
(3)通过对家庭内部传输过来的数据进行归纳分析判断,控制家庭电器的状态,从而实时的调节家庭环境到最佳状态。这些功能均由云服务器编程实现。
2.2 数据库的设计
由于数据库是设计在云端服务器上面的,所以在数据存储方面云端服务器主要需要完成以下几个方面的存储:
(1)用户账户和信息的存储,主要用于用户的登录等一系列功能。
(2)用户家庭温度的存储,主要用于家庭温度分析等,进行家庭温度智能控制。
(3)家庭监控视频的存储,方便用户可以回放家庭监控画面。
(4)家庭家电编号等相关信息的存储,方便信息定向的发送到指定的家电控制的节点。
(5)红外遥控编码的存储,方便及时下载控制红外家电。
(6)命令的控制指令的存储,用来控制家电。
3 移动终端设计
从微信平台现状中可以看出,目前微信拥有大量的用户群体。本系统可以通过开发微信小程序和微信公众号,完成系統控制指令的发送,用微信小程序来替代单独开发的智能家居APP,这样可以极大地节省用户手机空间,同时用起来也非常的方便,符合未来软件的发展趋势。
而想要完成控制指令的发送,需要建立我们云端服务器与微信后台之间的通信。这样我们除了可以使用文字和语音这些微信常用的通信方式,还可以通过微信小程序的操作界面,根据自己家里家电的不同自定义添加不同的操作按钮,下载不同的智能控制程序,多样化的完成对家居环境的控制。
4 结语
文中设计了一个基于云平台的智能家居系统,将传统远程控制结合自主智能控制为一体。借助于云平台强大的数据存储和数据计算能力,将家居环境的各项数据存储在云端数据库,并通过计算,协调处理,将家庭中各设备有机的结合起来,统一控制。为用户提供更贴切、个性化的智能控制服务。
参考文献
[1]禹谢华,邓林茂,张晓云,陈美龙,匡凤飞.基于Android与Arduino智能家居控制系统的设计与实现[J].山东农业大学学报(自然科学版),2017,v.48,55-59.