庞 泳,李光明
(山东大学(威海)机电与信息工程学院,山东 威海264209)
智能家居系统以住宅为平台,集成或控制各种家居设备,形成集系统、结构、服务、管理为一体的智能系统。通过在住宅内部建立局域性的通信网络,可将通信设备和家居设备互相连接并作为智能家居系统网络内部的基本元素。系统为内部设备提供相互间的信息交流通路,通过相应的硬件、软件的支持来实现智能家居终端对家居设备和住宅的状态监测和监控,并将生成的记录数据保存在系统数据库中。通过对住宅内部环境的长期监测,智能获取居住者的居住习惯,进一步结合人为设定的控制指令,自动控制、调节设备状态,实现住宅的智能化、人性化,为居住者提供一个舒适、安全、节能的住宅环境。
智能家居系统中的网络体系结构在整个智能家居系统中具有举足轻重的纽带作用。无线网络凭借低功耗、无线通信等传输优势成为家居系统发展中网络体系结构的新趋势。基于ZigBee协议的智能家居改进系统采用内部无线传感网络,通过改进的MAC层协议进行数据上传,实现智能家居监测系统的高效性与可靠性。
根据设备管理控制功能上的区别,对智能家居系统设备进行分类:智能家居控制主机、网络、远程控制服务系统、智能家居数据库、布线系统、监测系统、控制器、家居设备。系统整体组成如图1所示。
图1 智能家居系统组成
(1)智能家居控制主机:对住宅内所有模块进行控制,负责对系统内部各个设备的状态进行调节,是智能家居系统的中枢系统。
(2)网络:在控制主机、数据库和监测系统中起通信作用,负责智能家居系统的数据传输。
(3)智能家居监测系统:是智能家居系统的视觉系统,对设备状态和住宅内部环境进行感知、监测。
(4)智能家居控制器:控制器负责将智能家居控制主机下达的控制命令传达给家居设备,使设备通过执行相应动作对自身状态进行调整。
(5)远程控制服务系统:远程控制服务系统负责实现用户对家居设备的远程控制。
(6)智能家居数据库:存储特定时间段内住宅的状态信息,记录各家居设备的状态信息。
(7)智能家居布线系统及家居设备。
智能监测系统是智能家居对住宅环境和家居设备进行感知监测的重要部分,它不仅承担了对住宅内环境数据的采集任务,还要负责和位于系统上一级的智能家居控制主机进行双向的信息传递。在监测系统和控制主机进行通信的过程中,系统所采用的网络体系结构对系统的可行性、可靠性发挥着重要作用,当前智能家居系统中的网络体系结构多数采用较为广泛的Ethernet有线局域网。有线网在铺设过程中,布线对建筑物的破坏和对时间人力的浪费现象随着家居住宅内部功能模块的细化变得越来越严重。基于ZigBee无线协议的智能家居系统在解决布线弊端的同时,开启了智能家居系统内部数据无线传输的新篇章。
不同于有线网的线内数据传输,在智能家居系统中,数据通过无线方式进行交互传输。在无线网络拥有组建简单、便捷等优点的同时,无线传输方式同样会导致系统存在可靠性方面的问题。基于ZigBee协议的智能家居改进系统通过采用MAC层改进协议与ZigBee协议中的帧格式两部分结合的数据处理机制,确保了智能家居系统的可靠性、稳定性和安全性。改进后的智能家居系统组成如图2所示。
图2 智能家居改进系统组成
智能终端负责实现智能家居系统中的具体功能:如空调系统、烟雾监测系统、照明系统等。智能终端由智能监测系统、智能家居控制器、家居设备组成。智能监测系统由安装在家居设备上的各类传感器构成,这些传感器主要负责对环境参数进行收集。智能家居控制器的功能由相应的控制电路来完成。如今,传感器和控制电路常常被集成在一张主板上,形成智能终端节点。
在不同的应用场景中,智能终端节点终端节点的组成并非完全相同,基本组成包括:负责对温湿度、红外、亮度等环境状态进行数据采集的传感器部分,通过无线射频模块与其他节点和智能家居控制主机进行信息交流的控制器部分,将得到的模拟信号和接收到的无线数据进行处理的单片机部分,以及为单片机和控制部分进行供电的电源部分。智能家居终端节点的结构框架如图3所示。图中比较电路只存在于烟雾监测、燃气监测两类智能终端节点上,在特殊情况下利用改进的MAC协议,将这两类监测信息优先发给智能家居控制主机。控制部分的无线模块采用TI公司的CC2530芯片作为无线收发器。CC2530是TI公司经过ZigBee认证的Z-Accel系列的网络处理器,支持现有的ZigBee、Z-StackTM。CC2530内部包含一个专门支持ZigBee协议和底层协议IEEE802.15.4的定时器,并且支持低功耗工作模式,当无线模块被配置成终端设备时,CC2530将自动转换到低功耗工作模式,在终端设备空闲时,进入睡眠状态,需要进行数据传输时,再从睡眠状态中唤醒,实现节省电量的目的。
图3 智能终端节点结构框架
ZigBee协议是由ZigBee联盟以廉价、低功耗、双向通信为目标推出的一种无线通信协议,主要被嵌入到各种电子设备、家居设备和建筑物的自动化以及工业控制领域等。ZigBee协议以IEEE802.15.4无线协议为基础,依据TI协议栈,提供网络层和应用层的框架构造,IEEE802.15.4协议定义了物理层和MAC层协议的内容,两者配合使用为设备提供信道动态选择机制。作为低速、短距离、低功耗的无线代表协议之一,ZigBee协议较其他无线传输协议拥有较大的优势:①功耗低。ZigBee通过降低传输数据量、降低发信机的忙闲比、降低帧开销,并实行严格的功率管理机制降低设备功率。②成本低。③可靠性高。ZigBee协议采用载波监听多址、冲突避免通信接入方式和完全握手方式,保证信息传输的可靠性。④网络容量大。每个Zig-Bee网络内部可容纳65000多个设备节点。⑤优良的拓扑能力。ZigBee协议支持星型、簇树型、网型3种网络拓扑。配置ZigBee协议的节点具有自组网功能,ZigBee网络也因此具有网络自愈能力。⑥工作频段灵活。
智能家居系统内部利用ZigBee协议,可以组成结构简单、功率有限、吞吐量灵活的无线局域网。在无线局域网内部设备分为全功能设备和精简功能设备两种。前者可以作为路由器和协调器,负责智能家居系统的网络组建以及智能家居系统中智能监测系统和智能家居控制主机之间的数据交流;后者仅能作为智能终端节点,采集住宅内部设备的状态数据和环境参量,不能向下进行网络的扩展。
在智能家居系统中,无线监测节点的数量多达几十个,适宜采用簇树型网络拓扑结构,如图4所示。图中监测节点按照各自在网络中所起到的作用分为三类:网络协调器(黑色节点)、路由器 (节点1-3号)和终端设备,分别与系统中的智能家居控制主机、系统内路由器和智能终端节点相对应。
图4 ZigBee协议中簇树型网络拓扑
作为协调器的智能家居控制主机负责ZigBee网络的建立,系统路由器和智能终端节点初始化后自动查找自身周围的智能家居控制主机并申请加入到其所在的ZigBee网络。智能家居控制主机为每一个位于智能家居系统无线局域网内的设备节点分配一个16位短地址用于其在智能家居系统中设备节点间的网内通信。ZigBee协议中的帧由帧首、目的地址、长度、有效负载、校验位组成,并通过网络层向下传递至MAC层,整体上作为MAC帧的有效负载部分,在MAC层进一步封装后到达物理层,在物理层经过无线射频模块,发送到智能家居系统网络中。
智能家居控制系统在物理层和链路层采用IEEE802.15.4协议。IEEE802.15.4是具有开放式链接层结构的MAC协议,具有复杂度低、成本低、功耗小的特点。IEEE802.15.4协议中定义了3种数据通信频段,分别包括868MHz、915MHz和2.4GHz,3个频段中的数据传输速率依次增大。综合考虑智能家居系统中各种电气设备的工作频段以及智能家居控制主机、PC、智能终端设备之间数据交互的传输要求,系统选择2.4GHz通信频段以避免与其他电气设备的互相干扰。
在保证MAC协议简洁的前提下,MAC层的帧结构较为灵活,MAC层的帧结构如图5所示。
图5 MAC层帧结构
如图5所示ZigBee协议将应用层数据经网络层封装后向下层传递作为MAC层的有效负载。MAC层在ZigBee协议帧的前面部分依次添加2个字节的帧控制符、1个字节的序列号、以及0-20个可变字节长度的地址信息,并在最后补上2个字节的帧校验符。开首的帧控制符说明了MAC帧中其余部分的内容,序列号是指传输的数据帧或者确认帧序号,帧校验符采用16位的循环冗余校验。其中帧控制符分别说明了MAC帧的帧类型、帧属性 (安全属性、缓存与否、确认与否、协调器属性等)、目的地址和源地址的类型以及分别位于目的地址类型前后的共5位保留字符位。
选择位于目的地址类型前面的3位保留字符作分析,将这3位保留字符的第一位保留字符设置为优先级位,默认值为0;第二位和第三位两位保留字符一起设置为设备类型代码,默认值为00。烟雾监测模块、燃气监测模块上的传感器对环境参量进行实时监测,将监测数据通过电平比较电路,经过比较后如果发现监测数据出现异常,MAC层在对ZigBee协议帧进行封装时,将帧控制位中保留字符的第1位,置1。第二、三位保留字符根据传感器类型进行相应设定,温湿度传感器、红外传感器、亮度传感器等对住宅环境状态进行常规监测的传感器使用默认值00作为自身的设备类型代码,烟雾传感器、燃气传感器的设备类型代码用第二位置1的保留字符进行区分。智能家居系统内部负责数据采集的传感器设备类型代码以及相关监测状态设定见表1。
表1 保留位设定
智能家居系统内部的路由器收到监测节点发送的数据后,经物理层将数据上传至MAC层,MAC层对数据帧进行解封时,对MAC层的帧控制符进行解析,当发现保留字段中第一位为1时,路由器判断此数据帧为环境异常数据帧,此时路由器不再将该数据帧进一步向上传递给网络层,而是直接对该数据帧在MAC层进行再次封装,封装向下传递给物理层后,立即通过无线射频部分直接发送给智能家居系统内部担任ZigBee网络协调器的智能家居控制主机,使之能第一时间收到住宅内部环境异常的数据帧信息,立即调整智能家居系统中相应设备的状态,确保住宅内安全。若保留字段第一位不为1,则MAC层默认将数据解封后将MAC层帧结构中的有效负荷部分上传至网络层,并被放到缓存区内等待,到达轮询时间时,路由器将缓存区内所有数据进行统一封装后,经过MAC层、物理层和无线射频模块,发送给ZigBee网络协调器即智能家居控制主机。这样智能家居系统内部的路由器只在轮询时刻或收到优先级为1的环境异常数据时进入数据发送状态,其余时刻均处于接收状态,智能终端节点只在周期性向路由器发送数据时,处于发送状态,其他时间处于睡眠状态。
为了分析智能家居系统中ZigBee网络的性能以及MAC层改进协议的实际工作情况,实验采用NS2仿真工具进行系统的模拟仿真。NS2是一款开放源代码的网络仿真软件,以Linux/Unix为运行平台。NS2仿真软件本质上是一个离散事件模拟器,所有的仿真都由离散事件驱动。如果要在Windows环境下安装NS2仿真软件,需要首先安装模拟平台cygwin或虚拟机。安装完成后,可在NS2官方网站上下载NS2压缩包、解压安装,编译后,如果没有出现错误,即为正确安装。
实验过程中使用NS2.29版本,由于ZigBee协议模块并没有包含在NS2.29内,所以需要先在NS2下添加Zig-Bee协议,并对Makefile文件进行部分语句的修改。图6为在NS2平台上搭建的ZigBee网络。选取图中的节点0代表智能家居控制主机并作为智能家居系统中的网络协调器,实际仿真过程中,0号节点显示为代表网络协调器的红色。选取6号节点代表烟雾传感器模块,4号节点代表温湿度传感器模块,两者共同的父节点1号节点代表智能家居系统内部的路由器。实验过程中,用cbr数据流代表正常状态下的环境数据,poisson数据流代表较高优先级的数据,正常情况下,两者均发送cbr数据。当cbr数据包总共发送975个时,控制主机接收865个,包的交付率为0.89,此时节点6总共发送了19个较高优先级的poisson包,控制主机收到18个,包的交付率达到0.95。实验结果表明,较高优先级的poisson包存在较高的交付率,改进的MAC协议能够可靠的进行数据传输。
图6 NS2平台上搭建的ZigBee网络
在整机测试中,以网蜂公司的物联网产品为平台进行实际测试实验。实验中使用节点芯片CC2530上自带的温度传感器作为智能家居系统内部的温湿度模块的温度部分,将烟雾传感器用杜邦线外接至第二个节点的CC2530芯片作为烟雾监测模块,最后利用第三和第四个节点分别作为智能家居系统中的路由器和智能家居控制主机。先将智能家居控制主机启动,建立无线网络,然后分别启动路由器和两个监测模块,路由器和两个监测模块顺利加入到控制主机所在的ZigBee网络。正常情况下两个监测模块依次向路由器发送数据,路由器周期性地按照设定的轮询时间向智能家居控制机主机转发数据。当在烟雾模块附近点燃烟火,传感器检测到烟雾数据超标时,烟雾传感器将环境异常数据发送给路由器,路由器不再按照轮询次序向智能家居控制机主机发送数据,而是直接将烟雾模块发送的环境异常数据转发给控制机主机,系统产生报警信号。测试结果同样表明,对基于ZigBee协议的智能家居MAC层改进协议具有可行性、可靠性,能较好地应用于实际。
针对家居系统布线过程存在的弊端,提出基于ZigBee协议的智能家居系统,节点通过ZigBee协议自动组网。智能家居控制主机负责调节和控制系统内设备状态。考虑到智能家居系统实际工作过程中存在不同类型的数据,文章对配置在节点的MAC层协议进行改进,利用MAC帧格式中控制符内部预留的保留位对数据优先级和设备种类进行标识,以实现高优先级数据快速到达智能家居控制主机的目的。通过在NS2网络仿真平台进行仿真和对样机的实际操作,测试结果表明该系统具有可行性和可靠性,能够将重要数据快速上传。
[1]LIU Lijian.ZigBee networl construction routing optimization in intelligent home [J].Telecommunications Science,2011,27(9):106-110 (in Chinese).[刘礼建.智能家居ZigBee网络的构建与路由优化[J].电信科学,2011,27 (9):106-110.]
[2]SHI Wenzao.The application of wireless sensor networks in the smart home system [J].Journal of Fujian Normal University(Natural Science Edition),2010,26 (6):59-63 (in Chinese).[施文灶.无线传感器网络在智能家居系统中的应用[J].福建师范大学学报 (自然科学版),2010,26 (6):59-63.]
[3]LIU Yu,MENG Xiaohua.Design and implementation of communication module in smart home terminal based on embedded system [J].Computer Engineering and Design,2010,31(8):1987-1990 (in Chinese).[刘余,孟小华.嵌入式智能家居终端通信模块的设计与实现 [J].计算机工程与设计,2010,31 (8):1689-1692.]
[4]WU Wenzhong,LI Wanlei.Smart home system based on ARM and ZigBee [J].Computer Engineering and Design,2011,32 (6):1978-1990 (in Chinese).[吴文忠,李万磊.基于ARM和ZigBee的智能家居系统 [J].计算机工程与设计,2011,32 (6):1987-1990.]
[5]MAN Sha.Design of embedded wireless smart home gateway based on ARM9 [J].Journal of Computer Applications,2010,30 (9):2541-2544 (in Chinese).[满莎.基于 ARM9的嵌入式无线智能家居网关设计 [J].计算机应用,2010,30(9):2541-2544.]
[6]JIANG Wengang,CAI Lantu.Research on wireless sensor networkfor smart home [J].Journal of Jiangsu University of Science and Technology (Natural Science Edition),2010,24(2):169-173 (in Chinese).[姜文刚,蔡蓝图.智能家居无线传感器网络的研究 [J].江苏科技大学学报 (自然科学版),2010,24 (2):169-173.]
[7]JIANG Hong,LIU Li.Research on application of ZigBee in a smart home controller[J].Journal of Yunnan Unibersity (Natural Sciences Edition),2009,31 (S1):109-113 (in Chinese).[江虹,刘骊.ZigBee技术在智能家居控制器中的应用研究 [J].云南大学学报 (自然科学版),2009,31 (S1):109-113.]
[8]WANG Wenzhong.Integrated system of intelligent home [J].Manufacturing Automation,2010,32 (5):179-182 (in Chinese).[王文中.智能家居集成体系的探讨 [J].制造业自动化,2010,32 (5):179-182.]
[9]YU Wenjun,LING Zhihao.Research on the smart home system based on internet things [J].Process Automation Instrumentation,2011,32 (8):56-59 (in Chinese).[俞文俊,凌志浩.一种物联网智能家居系统的研究 [J].自动化仪表,2011,32 (8):56-59.]
[10]Zheng J,Lee MJ.A comprehensive performance study of IEEE 802.15.4 [C]//New York:Sensor Network Operations,2006:218-237.
[11]053520r26, Home automation public application profile[S].2011.