APP下载

一种基于ZigBee的智能家居自动服务提供方法

2018-01-23潘子辉沈苏彬吴振宇

计算机技术与发展 2018年1期
关键词:温湿度智能网智能家居

潘子辉,沈苏彬,吴振宇

(1.南京邮电大学 计算机学院,江苏 南京 210003;2.南京邮电大学 物联网学院,江苏 南京 210003)

0 引 言

随着无线传感器网络的普及应用,智能家居技术的应用不断涌现。智能家居的应用环境要求智能家居系统必须能够分析不同的信息,在任何时间、不同地点为用户提供各类服务[1]。类似“远程医疗”、“电子医疗”和“能源管理技术”都涉及到了智能家居技术[2]。目前,许多文献中都提出了各自的智能家居系统的设计[1,3-8],然而,普遍存在以下问题:

(1)许多智能家居系统中,使用网关作为数据从无线传感器网络传输到传统IP网络的途径。然而,这些网关仅仅是起到了数据在不同网络中的传输作用,并没有对数据进行处理或分析,提供相关的自动服务;

(2)大量的决策和操作通过人为操作,而较少地提供自动服务,缺少对于传感器数据价值的挖掘。

为解决这些问题,进一步完善智能家居自动服务应用,提出一种基于ZigBee的智能家居自动服务系统。研究当前智能家居系统中可用的技术,提出一种充分利用网关节点资源、本地和远程协同提供服务的智能家居系统架构和具体设计方案,提出一种对于温湿度数据异常情况判断的解决方案,并在此基础上开发实现此智能家居自动服务系统。

1 相关技术分析

通过分析相关的智能家居自动服务系统整体架构和数据异常值分析技术,描述当前智能家居自动服务系统整体架构设计方法,提出其中的不足与解决方法。同时,分析当前的异常值检测技术特点,描述其在应用场景适用性上的问题,并提出相应的解决方案。

1.1 系统整体架构

当前已提出的智能家居自动服务相关应用一般均采用传感器网络-传输控制平台-服务器-客户端的系统整体架构。在这种架构中,传感器数据从底层传感器网络经由控制传输平台发送至服务器进行计算,从而提供相应服务。

当前提出的智能家居自动服务系统在此架构的基础上均提出了各自的方案[1,3-8],然而使用类似的架构会产生一些问题。一方面,控制传输平台的硬件设备没有得到充分利用,缺少数据分析,缺少自动服务的提供。另一方面,当前架构依赖于客户端的人为控制,缺少分析数据而提供的自动服务。因此,文中在当前架构中加入智能网关,提出了一种智能家居自动服务应用的整体架构,实现利用智能网关提供自动服务。

1.2 数据异常值分析

智能家居系统中,通过分析数据获得其中包含的事件,对于一些环境事件的自动处理是自动服务重要的提供方式。而这些事件在数据上往往表现为数据中出现的异常值[9]。因此,对于数据异常值的判断技术影响已提供自动服务的质量。

在各类异常数据中,如红外报警等异常可以直接被传感器所感知并识别,而难以识别的异常情况主要是隐含在数据中的异常值。其中比较有代表性的即为温湿度数据。目前,在智能家居应用中,通常使用聚类的方式对异常值进行检测[10]。在文献[11]中,提出了一种使用二次曲面拟合的方式对温湿度数据进行分析处理。通过二维曲面的拟合,利用温度与湿度之间的相关性,可以有效地拟合出温湿度的合理范围。而文献[9]则利用K-means算法进行异常值的判断。K-means算法是典型的基于距离的聚类算法,采用距离作为相似性的评价指标,两个对象的距离越近,其相似度就越大,从而能有效判断数据中的异常值。

然而,无论是使用二次曲面拟合还是K-means聚类,都需要存储所有数据并进行高复杂度的计算才能进行异常值的判断。而网关节点计算资源和存储资源比较缺乏,这些方式都不能满足网关节点环境下的性能需求。为解决该问题,文中提出一种基于差值的温湿度异常值检测算法。利用该算法,可以在占用较少网关节点计算和存储资源的情况下,更好地检测温湿度异常值,从而自动检测异常事件。

2 需求分析与方法设计

为了解决网关资源利用不充分,缺少自动服务的提供等问题,设计实现了一种智能家居自动服务系统,在常用的基本系统架构中加入智能网关。同时,为解决温湿度数据异常值分析在存储、计算资源相对缺乏的网关节点难以工作的问题,提出一种针对温湿度的差值聚类算法以检测温湿度异常值。

2.1 系统架构

为解决当前智能家居自动服务系统整体架构的问题,提出图1所示的系统架构。在该架构中,加入了智能网关系统,其包含了本地服务器与传输控制平台。

图1 智能家居自动服务系统整体架构

通过该架构,一方面,利用智能网关作为传输控制平台,实现传感器网络与上层IP网络的数据交互。服务器存储数据,进行较为复杂的计算,提供相关服务。另一方面,智能网关节点获取数据,进行力所能及的计算,提供及时的相关服务。客户端则根据使用环境,选择连接远程服务器或智能网关,实现了本地与远程协同提供相关自动服务的能力。

2.2 温湿度异常值智能分析

对于温湿度数据,传统的处理方式在存储、计算资源相对缺乏的网关节点难以工作。为解决该问题,文中提出并实现了一种轻量级的针对温湿度数据的异常值判断算法。由于地表在一天内的温度变化主要受日照的影响,温度曲线的变化比较小。一般温度每天零点降低,直到日出后开始提升,午后达到最高,之后又不断降低。因此,将温度数据与前后数据相比的变化作为数据点进行聚类。分别根据日出、日落时间划分区间形成三个类进行聚类。

利用温度数据其本身的特点,制定分类条件避免在K-means算法中K的选取和初始划分不当带来的分类效果较差的情况。同样,根据温湿度特点,事先制定了合理的簇,因此不需要进行多次迭代以确定簇,从而有效地将算法的时间复杂度控制在O(n)。而在网关节点处,只需存储最近的少量数据和聚类结果,大大地节省了节点的存储资源。算法流程如图2所示。

图2 基于差值聚类的温湿度异常值检测算法流程

2.3 消息格式

在机器间通信系统中,消息格式是使用机器间通信的系统中保证数据完整性、可靠性和控制准确性的最重要因素[5]。文中制定统一的传感器数据消息格式。

消息格式:“起始位|数据类型位|数据符号位|数据十位|数据个位|位置位|时间计数位|结束位”。

起始位:"$"为起始位;

数据类型位:以一个字符表示数据类型,如“t”表示温度,“h”表示湿度;

数据符号位:以一个字符表示数据的符号,如“p”表示数据为正,“n”表示为负;

数据十位:所发送的数据的十位数字;

数据个位:所发送数据的个位数字;

位置位:表示收集数据的传感器节点的物理位置;

时间计数位:时间计数n表示采集间隔*n之前时间的数据;

结束位:“#”为结束位。

例如:消息“$tn09a3#”即表示第3个时间计数数据,a地点温度数据零下9度。

利用该消息格式,可以通过对传感器数据进行分类、事件判断、时间分析、位置分析等方式,获取传感器数据中所包含的信息,针对各类数据或事件进行处理。

3 系统实现

根据上述提出的方法设计,实现了一种基于ZigBee的智能家居系统,分别对传感器网络、智能网关、服务器和移动客户端四个基本模块进行开发,并实现各模块之间的协同工作。

3.1 系统实现的架构

根据智能家居自动服务系统的需求,智能家居系统应当具备自动分析传感器数据,对分析结果对应的事件进行响应的能力。基于这些自动控制的思想,提出的智能家居自动服务系统模块架构如图3所示。系统分为四个模块:无线传感器网络、智能网关、服务器和客户端,主要实现以下功能:

图3 智能家居自动服务系统模块架构

(1)异常事件自动拍摄记录。在有人进入房间触发红外报警等异常事件或发生火灾等意外导致温湿度出现异常时,系统自动调用摄像机对事件进行拍摄记录,在智能网关进行保存并同时上传至服务器。用户可以通过移动客户端查看事件发生的时间与拍摄记录;

(2)温湿度最新监测数据提供。传感器每隔一段时间会采集当前地点的温度与湿度并发送至智能网关,智能网关作一定数据的缓存并及时上传至服务器。用户可以通过移动客户端及时获取当前房间的温湿度环境情况。

3.2 无线传感器网络

当前,无线传感器网络受到各界的关注,红外、蓝牙等无线通讯技术也得到了极大的发展。然而,由于环境限制或是功耗过高,这些技术并不适用于智能家居系统。ZigBee[12-14]技术则解决了其中的一些问题。

ZigBee是一种短距离、低功耗、低速率、低成本的无线接入技术[15]。目前,ZigBee技术广泛应用于灾害管理、智能城市、电子医疗等众多领域[16]。在智能家居自动服务系统中,传感器网络需要长期布置在家中并采集房间中的相关数据,而ZigBee低功耗、低成本的特点正符合这种长期布置节点的需求,能够以较低的制造成本和维护成本,长时间有效采集房间中的各类数据。因此,文中采用ZigBee技术作为智能家居自动服务系统中传感器网络的载体,利用目前使用较多的德州仪器开发的Z-stack协议栈进行开发。通过Z-stack协议栈提供的串口读写、周期发送等接口,实现了传感器数据的获取、传输、缓存等一系列功能。

3.3 智能网关模块

智能网关模块是该系统的核心模块,该模块需要实现数据收集、数据存储、数据处理、数据分析、事件触发、摄像机操作、数据获取接口等一系列功能。根据所需功能,设计了图4所示的类结构。

图4 智能网关实现类图

为了保证各类数据的区分,系统分别针对各类数据定义了各自的数据模型,实现了数据接收组件、数据处理组件、事件处理组件和HTTP通信组件。其中数据接收组件用于从传感网络接收数据并进行解析,数据处理组件处理解析后的数据,事件处理组件通过解析出的事件进行相关操作,而HTTP通信组件用于网关与传统IP网络的各类通信。

3.4 其他模块

该系统中的远程服务器使用当前在服务器端较为成熟的JSP技术[17]实现。在服务器端,使用Java Web开发中常用的bean+DAO+JDBC+Servlet的方式进行开发。使用bean类创建数据类型,JDBC连接数据库,通过DAO实现数据类与数据库数据之间的转换。而远程服务器的数据获取组件与服务提供组件均使用Servlet技术实现,通过服务器提供HTTP请求接口,智能网关与客户端发送对应HTTP请求的方式,上传数据或获取服务。

该系统的客户端基于iOS移动终端开发实现,使用良好的图形化界面,提供自动环境监测、自动事件记录等相关服务,主界面如图5所示。

图5 客户端主界面

4 系统测试与分析

系统测试环境如下:

(1)硬件环境:各类传感器若干、ZigBee开发板若干,台式PC机1台,服务器1台,iphone5s智能手机1台。

(2)软件环境:Ubuntu 14.04操作系统,Windows 8.1操作系统,JDK 1.8.0_73,apache-tomcat 8.0.33服务器,MySql 5.7数据库,ios 8.3系统。

在此测试环境下,对提出的基于差值聚类的温湿度异常值检测算法的实际效果进行测试。采用与传统的K-means算法比较的方式,以温湿度数据的差值作为数据点,计算在单次迭代下各数据点与质心距离的平均值,分析数据点聚类后的离散程度,判断聚类效果。经过实际测试,使用两种算法的平均质心距离如图6所示。

图6 数据点距离质心的平均距离

另外,在该测试环境下,通过出入房间模拟入侵事件,使用热水杯提高传感器节点的温度来模拟火灾,测试系统对于红外事件、温度异常事件的响应能力。测试结果显示,摄像机自动调整拍摄位置至有人出入的门和发生温度异常的传感器节点处并进行拍摄,拍摄照片在智能网关端保存并自动上传至服务器,用户可以通过移动终端及时地查看到情况。

通过测试结果可以看出,在测试环境下,基于差值聚类的温湿度异常值检测算法实际效果良好,数据点到质心的平均距离小于K-means算法。基于ZigBee的智能家居自动服务系统能正常工作。

5 结束语

针对当前已提出的智能家居系统中没有充分利用网关资源,缺乏基于数据的自动服务等问题,设计并实现了一种基于ZigBee的智能家居自动服务系统。利用基于差值聚类的温湿度异常值检测算法在性能较低的节点处实现了异常值高效、可靠的检测。通过新型的系统整体架构与功能模块的设计与实现,达到了减少功耗和网络资源占用,在本地和远程协同提供相应服务的目的。通过系统测试,结果证明了该检测算法与系统架构的可行性与优势。

[1] HAN D M,LIM J H.Design and implementation of smart home energy management systems based on Zigbee[J].IEEE Transactions on Consumer Electronics,2010,56(3):1417-1425.

[2] CHAN M,CAMPO E,ESTVE D,et al.Smart homes - current features and future perspectives[J].Maturitas,2009,64(2):90-97.

[3] BASU D,MORETTI G,GUPTA G S,et al.Wireless sensor network based smart home:sensor selection,deployment and monitoring[C]//Sensors applications symposium.[s.l.]:IEEE,2013:49-54.

[4] 王朝华,陈德艳,黄国宏,等.基于Android的智能家居系统的研究与实现[J].计算机技术与发展,2012,22(6):225-228.

[5] NIYATO D,XIAO L,WANG P.Machine-to-machine communications for home energy management system in smart grid[J].IEEE Communications Magazine,2011,49(4):53-59.

[6] ZUALKERNAN I A,AL-ALI A R,JABBAR M A,et al.InfoPods:Zigbee-based remote information monitoring devices for smart-homes[J].IEEE Transactions on Consumer Electronics,2009,55(3):1221-1226.

[7] GILL K,YANG S H,YAO F,et al.A Zigbee-based home automation system[J].IEEE Transactions on Consumer Electronics,2009,55(2):422-430.

[8] 周 游,方 滨,王 普.基于ZigBee技术的智能家居无线网络系统[J].电子技术应用,2005,31(9):37-40.

[9] SOUZA A M C,AMAZONAS J R A.An outlier detect algorithm using big data processing and internet of things architecture[J].Procedia Computer Science,2015,52:1010-1015.

[11] 蔡爱杰,司良友,夏继秋,等.基于二次曲面拟合的二维传感器数据处理技术研究[J].传感器与微系统,2009,28(7):30-32.

[12] BARONTI P,PILLAI P,CHOOK V W C,et al.Wireless sensor networks:a survey on the state of the art and the 802.15.4 and Zigbee standards[J].Computer Communications,2007,30(7):1655-1695.

[13] 任秀丽,于海斌.ZigBee无线通信协议实现技术的研究[J].计算机工程与应用,2007,43(6):143-145.

[14] 彭 燕.基于ZigBee的无线传感器网络研究[J].现代电子技术,2011,34(5):49-51.

[15] 原 羿,苏鸿根.基于ZigBee技术的无线网络应用研究[J].计算机应用与软件,2004,21(6):89-91.

[16] YI P,IWAYEMI A,ZHOU C.Developing ZigBee deployment guideline under WiFi interference for smart grid applications[J].IEEE Transactions on Smart Grid,2011,2(1):110-120.

[17] 张 波,张福炎.基于JSP技术的Web应用程序的开发[J].计算机应用研究,2001,18(5):99-101.

猜你喜欢

温湿度智能网智能家居
交通运输部:扩大新能源智能网联汽车应用
文物展柜内环境温湿度的调控与监测
蛋鸡育雏育成舍环境控制技术
基于PLC的智能家居控制系统研究
基于单片机的智能网控风扇设计
智能网联硬实力趋强
温湿度计检定校准注意事项
迎战智能网联大爆发
基于Zigbee的无线通信技术在智能家居中的应用
基于DSP和μcos的温湿度检测系统的设计