1. 前言
在互联网的浪潮下,我们可以深刻的感受到物联网技术的应用时时刻刻出现在我们的身边,其中物联网技术在智能家居中 [1] 的应用最为广泛,它更贴近我们的生活,改变了中国人民乃至全世界人民的生活方式 [2] ,但是智能家居常常被定义为价格高、安装复杂、操作麻烦,普通大众更是遥不可及,但是物联网时代给予了智能家居新的生命力。
2. 绪论
传统的家居主要以家居实体和有线进行与网相连接,各种线路可能会有兼容性问题,也可能会出现布线困难等情况,这样的家居系统具有操作不方便、安装成本高、安装复杂、占用室内空间和控制麻烦等缺点。随着物联网技术这项新型技术的越来越兴起,让家居智能化从之前的概想成为了现实的可能 [3] ;运用微控制器、传感器和短距离无线通信技术为各种家居设备互联连接达到智能控制创造了条件。
在21世纪互联网的时代,智能家居领域的研究同时也具有及其重要的意义。随着物质文明的提高,人民开始越来越注重其精神文明,因此,人们也开始从吃得饱,穿的暖的传统观念向吃的健康住的舒适便捷、智能跨越。智能家居的研究会使得人们的生活更有安全保障、生活更环保、生活更便捷、生活更智能、生活更智慧,因此智能家居研究是个大课题,它提高了国民生活的幸福程度,更是响应了国家所号召的“智慧生活”。
3. 系统总体设计
3.1. 系统总体设计
本系统是在传统智能家居门窗控制系统的基础上加以改进,采用物联网技术来实现一种低成本、低功耗、传输速率快的基于物联网的智能家居门窗控制的设计,其主要功能就是通过人为刷卡、客户端控制或者是系统智能的方式对室内的门窗进行控制,以达到室内智能家居的便捷化、健康化、智能化、甚至智慧化。
基础节点:各基础节点主要是在ZigBee通信模块(CC2650)上挂载各种基础传感器,包括RFID基础节点、光照基础节点和温湿度基础节点。RFID基础节点包括RFID阅读器和ZigBee通信模块(CC2650),光照基础节点包括光照传感器、A/D转换器和ZigBee通信模块(CC2650),温湿度基础节点包括IIC、温湿度传感器和与传统ZigBee [4] 不同的ZigBee通信模块(CC2650)。
RFID电子标签(门禁卡):RFID电子标签是一种低频电子标签,其采用RFID技术设计出一种门禁卡。
汇聚节点:主要是CC2650LaunchPad,用于接受各基础发送来的数据,并进行分析、融合、处理来进行驱动步进电机的正反转,同时将数据通过ZigBee无线通信方式发送至网关,以便后续的操作。
RFID基础节点:当RFID电子标签(门禁卡)靠近并贴近RFID基础节点中的RFID阅读器时,这样RFID阅读器会采集到RFID电子标签(门禁卡)中的所含信息,并把采集到的数据通过ZigBee无线通信方式发送给汇聚节点CC2650LaunchPad,传输来的数据会与后台数据库的数据进行匹配,如果匹配成功,CC2650LaunchPad会驱动步进电机正转将门打开。否则,CC2650LaunchPad不进行任何操作。
光照基础节点:用于采集光照强度大小,将采集到的数据通过ZigBee无线通信方式发送至CC2650LaunchPad,CC2650LaunchPad会对数据进行分析、处理,以便进行后续操作。本系统中光照基础节点有两个,分别位于室内和室外。
温湿度基础节点:用于采集温湿度参数数据,将采集到的数据通过ZigBee无线通信方式发送至CC2650LaunchPad,CC2650LaunchPad会对数据进行分析、处理,以便进行后续操作。
光照基础节点、温湿度基础节点分别采集的光照强度和温湿度数据,会同步通过ZigBee无线通信方式发送至CC2650LaunchPad,CC2650LaunchPad会对采集到的数据进行数据融合来判断室外天气的变化,如果采集的室外光照强度大小和温湿度的大小与后台数据库的下雨天数据几乎相同时,CC2650LaunchPad会驱动窗上的步进电机,以达到关窗的效果。同时也可以判断室内的光线大小和温湿度的大小,如果室内的光线比系统预设值低,则CC2650LaunchPad会驱动窗帘上的步进电机正转,以达到把窗帘打开,此时光线将会增加。否则CC2650LaunchPad会驱动窗帘上的步进电机反转,将窗帘关上。如果室内的温度比系统预设值高,则CC2650LaunchPad会驱动窗上的步进电机正转,以达到把窗打开,进行通风。
网关:与 [5] [6] 不同的是本系统网关的硬件部分主要由ZigBee通信模块(CC2650)和GPRS组成。ZigBee通信模块(CC2650)主要用来接受汇聚节点CC2650LaunchPad通过ZigBee无线通信方式发送来的数据。GPRS模块主要是用来将汇聚节点所采集的数据上传至客户端以实现客户端的智能实时显示以及智能控制。
客户端:客户端主要是手机、电脑或平板,用来实时智能显示门、窗、窗帘的开关情况以及室内外的温湿度的大小。同时客户端也可以通过GPRS模块与网关进行通信以实现对门窗进行智能控制。如图1所示是总体设计系统原理图。
![](//html.hanspub.org/file/5-1730291x9_hanspub.png)
Figure 1. Schematic diagram of the overall design system
图1. 总体设计系统原理图
3.2. 感知层设计
该系统的感知层中的传感模块包括RFID阅读器、光照传感器、温湿度传感器等。RFID阅读器与对应的ZigBee通信模块(CC2650)电连接做为RFID基础节点;光照传感器经过A/D转换器与对应的ZigBee通信模块(CC2650)电连接做为光照基础节点;温湿度传感器通过IIC与对应的ZigBee通信模块(CC2650)电连接做为温湿度基础节点。CC2650与GPRS电连接做为网关也是该系统的汇聚节点,整个系统采用的是星型拓扑网络结构。
RFID基础节点:与 [7] 不同的是如图2,当RFID电子标签(门禁卡)靠近并贴近RFID基础节点中的RFID阅读器时,这样RFID阅读器会采集到RFID电子标签(门禁卡)中的所含信息,并把采集到的数据通过ZigBee无线通信方式发送给汇聚节点CC2650LaunchPad,传输来的数据会与后台数据库的数据进行匹配,如果匹配成功,CC2650LaunchPad会驱动步进电机正转将门打开。否则,CC2650LaunchPad不进行任何操作。
光照基础节点:如图2所示,用于采集光照强度大小,将采集到的数据通过ZigBee无线通信方式发送至CC2650LaunchPad,CC2650LaunchPad会对数据进行分析、处理,以便进行后续操作。光照基础节点有两个分别位于室内和室外。
温湿度基础节点:如图2所示,用于采集温湿度参数数据,将采集到的数据通过ZigBee无线通信方式发送至CC2650LaunchPad,CC2650LaunchPad会对数据进行分析、处理,以便进行后续操作。
3.3. 网络层设计
各基础节点上的传感模块采集数据后经过A/D转换器分别与对应的ZigBee通信模块(CC2650)通过有线的方式进行传输数据,最后经过CC2650LaunchPad进行降噪和信号放大处理等,以便后续的传输。各基础节点作为感知层采集到的物理数据会通过ZigBee无线通信的方式发送至汇聚节点CC2650LaunchPad,然后汇聚节点CC2650LaunchPad再对收集的数据进行分析、处理等操作。最后经汇聚节点处理过的数据再通过ZigBee无线通信的方式发送给网关,网关处理数据以便进行该系统的后续传输,系统总体的网络层设计如图3所示。
3.4. 应用层设计
本系统的应用层主要是由客户端和服务器组成,其中客户端和服务器构成C/S模式。客户端和服务器与网关通过GPRS模块进行通信,从而可以实时智能显示门窗的开关状态和室内外的温湿度大小,同时还可以通过客户端对门、窗、窗帘进行智能控制,如图4所示。
![](//html.hanspub.org/file/5-1730291x11_hanspub.png)
Figure 3. Schematic diagram of system communication
图3. 系统通信原理图
4. 系统硬件设计
4.1. 微控制器
4.1.1. 微控制器介绍
本系统采用CC2650LaunchPad (图5)做为该项目的微控制器,CC2650 LaunchPad套件是TI公司自主研发的一款开发板套件。CC2650LaunchPad包括有外部8Mbit串行闪存,支持空中(OAD)固件更新、2X按钮、CC2650EM-7ID评估模块、2X发光二极管、2X升压组件连接器、标准发射台形状因子、XDS110调试器W/外部目标接口。其特点是:
1) 通过智能手机上的蓝牙智能将LaunchPad连接到云通过BoosterPack连接器访问所有I/O信号。
2) 板载仿真器使您可以立即开始在CCS Cloud中进行代码开发。
3) 通过Simplelink Starter应用实现LaunchPad固件无线升级。
4.1.2. CC2650LaunchPad开发环境
在学习CC2650LaunchPad的过程中,接触到了两种开发环境,一种为CCS (Code Composer Studio),另一种为IAR。CCS (Code Composer Studio)软件是TI公司官方推荐的软件,其核心为Eclipse,IAR是以C/C++为主要语言的编译环境和调试器,应用于嵌入式系统的开发。无论是哪种开发环境用的都特多,
![](//html.hanspub.org/file/5-1730291x13_hanspub.png)
Figure 5. CC2650LaunchPad development board
图5. CC2650LaunchPad开发板
因此网上不乏其使用资料。但是由于CCS开发环境对电脑要求比较高,所以在开发过程中选择IAR为CC2650的开发环境。CC2650的开发环境如图6所示。
4.2. RFID
4.2.1. RFID简介
RFID全称为Radio Frequency Identification,中文意思是无线射频识别技术,是一种非接触式的自动识别技术(图7)。
4.2.2. RFID在本系统中的应用
本系统中门禁卡为RFID系统中的RFID电子标签,RFID基础节点中RFID阅读器为RFID系统中的RFID阅读器。汇聚节点CC2650LaunchPad为RFID系统中的系统高层。
当门禁卡(RFID电子标签)贴近RFID阅读器时,此时RFID电子标签内置的天线与RFID阅读器内置的天线构成无线连接,以便进行数据传输。RFID阅读器会接受到RFID电子标签所传输来的数据,并通过RFID基础节点中的ZibBee通信模块以ZibBee无线通信的方式发送给CC2650LaunchPad (系统高层)。传输来的数据会与后台数据库的数据进行匹配,如果匹配成功CC2650LaunchPad会驱动步进电机正转将门打开。否则,CC2650LaunchPad不进行任何操作。RFID在本项目的应用如图8所示。
4.3. 传感器
4.3.1. 光照传感器
本系统基础节点中的光照传感器采用BH1750型号,本系统中光照传感器有两个,分别位于室内和室外,其作用是用于采集光照强度大小,将采集到的数据通过ZigBee无线通信方式发送至CC2650LaunchPad,CC2650LaunchPad会对数据进行分析、处理,以便进行后续操作。
4.3.2. 温湿度传感器
温湿度传感器是能感受到外界温湿度的变化,并通过器件材料的物理或者化学性质,将温湿度转换成可用电信号的器件或者装置。通常一个理想的温湿度传感器应具备使用寿命长、稳定性好、线性度好、使用范围宽、测量精度高、成本低等特点。
![](//html.hanspub.org/file/5-1730291x15_hanspub.png)
Figure 7. The basic composition of the RFRD system
图7. RFRD系统的基本组成
本系统中基础节点中的温湿度传感才采用目前比较新的DHT11型号,用于采集室内或者室外的温湿度参数以及参数的变化量,将采集到的温湿度数据通过ZigBee无线通信方式发送至汇聚节点CC2650LaunchPad,CC2650LaunchPad会对数据进行分析、处理,以便进行后续操作。
5. 系统软件设计
5.1. 门智能控制设计
5.1.1. 门禁卡控制方式
当RFID电子标签(门禁卡)靠近并贴近RFID基础节点中的RFID阅读器时,这样RFID阅读器会采集到RFID电子标签(门禁卡)中的所含信息,并把采集到的数据通过ZigBee无线通信方式发送给汇聚节点CC2650LaunchPad,传输来的数据会与后台数据库的数据进行匹配,如果匹配成功,CC2650LaunchPad会驱动步进电机正转将门打开。否则,CC2650LaunchPad不进行任何操作。一种基于物联网智能家居门窗控制系统软件对门的控制流程如图9。
5.1.2. 客户端控制方式
当客户端在客户端的界面上,点击“开门”指令后,传输的数据会通过客户端与网关上GPRS模块构成的无线通路,发送到网关,网关再通过ZibBee无线通信的方式发送给汇聚节点,汇聚节点接受到指令后会与后台数据库指令进行匹配,如果匹配成功则驱动步进电机正转开门。否则不进行任何操作。一种基于物联网智能家居门窗控制系统软件对门的控制流程如图10。
5.2. 窗智能控制设计
光照基础节点和温湿度基础节点采集到的光照强度和温湿度数据,会通过ZigBee无线通信方式发送至CC2650LaunchPad,CC2650LaunchPad会对采集到的数据进行数据融合来判断室外天气的变化,如果采集的室外光照强度大小和温湿度的大小与后台数据库的下雨天数据几乎相同时,CC2650LaunchPad会驱动窗上的步进电机,以达到关窗的效果。同时也可以判断室内的光线大小和温湿度的大小,如果室内的光线比系统预设值低,则CC2650LaunchPad会驱动窗帘上的步进电机正转,以达到把窗帘打开,此时光线将会增加。否则,CC2650LaunchPad会驱动窗帘上的步进电机进行反转,达到将窗帘关上的目的。如果室内的温度比系统预设值高,则CC2650LaunchPad会驱动窗上的步进电机正转,以达到把窗打开,进行通风。
6. 实验测试
基于以上对物理网智能家居门窗系统的理论设计,可以在上述所用的硬件基础之上搭载一个实物物理模型来达到所述功能,各实验环境开发如下:
硬件开发环境:IAR
软件开发环境:ideaIU-12.1.3
Web服务器:Tomcat
1) 硬件主要采用CC2650LaunchPad,实验先做出来硬件实物图模型进行模拟,硬件实物图如图11。
其中各节点:
节点一:温湿度与光照基础节点
节点二:RFID基础节点
节点四:步进电机基础节点
根据以上硬件实物模型,可以把各个硬件模块在室内的环境中布点,并结合室内的智能门、窗进行智能化控制。
2) 在软件开发环境ideaIU-12.1.3中对上述硬件及软件功能界面进行开发,开发部分代码如图12,图13。
3) Web端(图14)。
![](//html.hanspub.org/file/5-1730291x17_hanspub.png)
Figure 9. Control flow chart of the system software to the door
图9. 系统软件对门的控制流程图
![](//html.hanspub.org/file/5-1730291x18_hanspub.png)
Figure 10. Control flow chart of system client software to door
图10. 系统客户端软件对门的控制流程图
6.1. 智能家居门
1) 实验内容
硬件及基础设施包括RFID阅读器、RFID标签(门禁卡)和智能家居门,初始化智能家居门是关闭状态,将自主开发的RFID标签(门禁卡)贴近智能家居门右侧的RFID阅读器,观察智能家居门的状态变化。
2) 测试结果
将RFID标签(门禁卡)靠近并贴近RFID阅读器时智能家居门会在步进电机的驱动之下自动打开。智能家居门的测试结果状态变化如图15。
6.2. 智能家居窗
1) 实验内容
实验基础设施及软硬件包括智能家居窗帘、窗帘控制器、Web端,在Web端中的窗帘控制界面分别点击“开”、“关”,观察窗帘的变化。
2) 测试结果
① 智能家居窗帘初始状态为关状态,在Web端点击“开”智能家居窗帘状态如图16。
② 智能家居窗帘初始状态为开状态,在Web端点击“关”智能家居窗帘状态如图17。
![](//html.hanspub.org/file/5-1730291x24_hanspub.png)
Figure 16. Curtains control process for smart home
图16. 智能家居窗帘控制过程
![](//html.hanspub.org/file/5-1730291x25_hanspub.png)
Figure 17. Curtains control process for smart home
图17. 智能家居窗帘控制过程
7. 结论与展望
7.1. 结论
本系统采用物联网技术来实现一种结构简单、低成本、低功耗、传输速率快、高分辨率、高可靠性的基于物联网技术的智能家居门窗控制的设计,其主要功能就是通过人为刷卡、客户端控制或者是系统智能的方式对室内的门窗进行控制,以达到室内智能家居的便捷化、绿色化、健康化、智能化、甚至智慧化。在设计智能家居门窗的过程中所涉及到主要的工作如下:
1) 在众多开发板中选用TI公司的CC2650LaunchPad做为本系统的微控制器,原因是CC2650LaunchPad具有传输速率快、提供多协议支持、功能齐全并且支持Bluetooth,ZigBee,WPAN等协议,方便构成智能家居门窗系统的无线网络,同时CC2650LaunchPad具有超低功耗的特点,大大的降低了整个系统的功率。
2) 对智能家居有线技术与无线技术进行对比,最终选择RFID技术和ZigBee无线通信技术做为本系统中基础节点和汇聚节点、汇聚节点和网关通信的无线通信方式。
3) 本系统以CC2650芯片为核心对系统进行硬件的设计,通过CC2650英文学习手册学习CC2650硬件的开发,包括CC2650中ZigBee无线通信的开发、CC2650与RFID通信的开发、CC2650与传感器通信的开发以及CC2650驱动步进电机的开发。
4) 本系统的网关选取自主设计的网关(CC2650 + GPRS),在开发的过程中我们需要网关实现以下功能:一方面与通过ZigBee无线通信的方式与CC2650LaunchPad进行通信,另一方面通过GPRS模块与客户端进行连接,实现相互通信的目的。
5) 本系统基础节点与汇聚节点构成星型拓扑网络,以使得整个系统达到控制简单、故障诊断和隔离容易、方便服务等特点。
7.2. 展望
通过对本系统进行反复试验,虽然已经完成实现基本功能,达到了预期设定的目标,但是由于进行毕业设计的时间短暂加上自己本身能力有限,本系统或者是基于物联网技术的智能家居还需针对以下方面进一步的加强和改进:
1) 基于物联网智能家居门窗控制系统在运行过程当中受环境影响很大,比如在恶劣的环境或者因为电波或信号的干扰,会使系统出现收发信息不灵敏、不稳定等状况,使得系统达不到预期效果。因此,如何提高系统的稳定性和抗干扰能力需要以后的不断努力。
2) 智能家居的功耗问题一直是智能家居领域需要去解决的大方向。本系统的开发板功耗虽说很低,但是系统整体来说功耗还不尽人意,还有待更进一步的降低功耗。
3) 智能家居带给人们方便的同时,也会出现信息安全的问题。如何去加强系统的网络安全防护也是一个值得深思的问题。
4) 本系统为智能家居门窗控制系统,只是对室内的门窗进行智能控制,后期可以对家中冰箱、洗衣机空调等家居进行智能控制;也可以多加几类传感器使得系统的采集室内外的环境参数数据更完全,真正的达到智慧化。