基于ZigBee技术的智能家居系统设计
2016-12-19刘玮
刘 玮
(西北师范大学 知行学院,甘肃 兰州 730070)
基于ZigBee技术的智能家居系统设计
刘 玮
(西北师范大学 知行学院,甘肃 兰州 730070)
针对传统智能家居通用性较差、维护过程较为复杂的问题。提出了一种基于ZigBee技术的无线智能家居控制与实现方案,该系统方案利用已普及的ARM9处理器为数据处理中枢,利用ZigBee协议进行星型拓扑搭建无线网关,对数据进行采集、分析、交换、控制,并对部分网关通路故障进行拓展实验。与传统智能家居系统相比,该系统操作直观、维护简单,增强了智能家居控制系统的功能拓展性,实现了无线网络在无人环境下的高效智能化管理。
ZigBee;Linux;物联网;智能家居
传统的智能家居系统功能较为单一、结构复杂,且不易于维护或功能拓展,产品的推广普及随之遇到了瓶颈[1]。因此,为了使智能家居系统得到普及,需要对传统智能家居系统控制方式进行升级。本文提出了一种以嵌入式系统作为控制中心,ZigBee网关控制模块作为主控交互平台,结合成熟的4G移动通信技术,用户可以实时通过图像监控家居安全情况,并可远程控制门窗、家用电器的开关状态。本文设计的智能家居系统不仅可运用在普通家庭中,还可应用于远程数据采集、远程医疗、小区物业管理等无人值守环境等远程控制领域[2]。
1 系统设计方案
系统设计方案,如图1所示。系统分为包括感知节点控制、家庭网络控制和远程通信3部分。无线感知层的架构是在每个子系统节点上集成相应的传感器及数据收集传输模块,由传感器节点对环境参数进行采集,并通过数据传输模块传给家庭网关[3-5]。系统利用温湿度、光强度、气体、摄像头等传感器设备模拟实现家电开关控制、安防监测环境功能,实现数据采集和开关量控制,协调器负责将采集到的数据通过家庭网关传送给家庭控制端,家庭控制端根据需要完成对传感控制器的监测与控制。
家庭网络控制主要由ARM微处理器、ZigBee模块及相应协调器、以太网接口模块、移动控制端和家庭控制端组成,如图2所示。其中,ZigBee 控制节点通过拓展的通用接口与家庭控制端收发数据,ZigBee 协调器作为数据处理中心通过SPI与ARM处理器相连,实现监控环境状态数据的收集、传输。
远程通信主要利用电信通信服务提供商的4G网络实现家庭控制端与移动控制端的数据交换,负责传输文字信息、图像信息及部分视频片段。
图1 智能家居设计方案示意图
2 系统设计方案与实现
系统设计方案通过传感层节点设计、ZigBee网关设计和移动端控制界面设计3个组成部分来完成系统功能。传感层节点设计主要完成监测环境的状态数据的采集和接收、执行控制端发送回的命令信息。
ZigBee网关设计是利用ZigBee无线网络采集传感层节点上的室内状态数据,如温湿度信息、声光红外信息、有害烟雾浓度信息等,将其传给协调器,协调器将信息传给ARM S3C2440微处理器。ARM9 S3C2440微处理器处理送来的信息、解析移动通信模块传来的短信或图像,将处理后的数据返回给协调器节点,并有感知控制节点执行。ZigBee家庭无线传感网络采用星型网络拓扑将传感节点接入网关[6]。
移动端控制界面设计是用户通过软件设计移动端操作控制软件,用来实现家电的远程控制,实现在家庭内部感知节点的分散管理和集中控制。
2.1 传感节点设计
传感层节点采用模块化设计,由设备初始化、A/D转换模块、数据采集与处理、串口通信等模块。传感节点按指定频率进行状态采集,经过A/D转换后发送给ZigBee网关节点; ZigBee网关在得到请求后,与ARM9 S3C2440微处理器进行数据交换,接收状态数据或将主控系统命令转发给传感节点[7-8]。
传感层节点设计流程如图3所示。初始化程序后,传感节点判断采集到数据是否警戒值,如不需要进入正常运行采集状态,待下次数据交换唤醒指令; 如数据已达到警戒值,处理器将采集当前传感器状态参数信息,将数据通过网关协调器将数据传给ARM9 S3C2440微处理器,同时执行预定的应急处理动作。
图2 ZigBee终端节点软件开发流程
2.2 ZigBee网关设计
系统采用CC2530射频芯片和Z-Stack协议栈软件搭配使用[9-10]。Z-Stack的工作流程可以分为系统启动、驱动初始化、OSAL初始化和任务轮循几部分。系统通电后,首先调用Zmain函数对系统初始化,然后进入OSAL系统调度函数,完成初始化后,通过执行osal_start_systein()函数启动OSAL系统。该任务按优先级检测各个任务是否已经就绪。若有就绪的任务,则调用tasksArr[]中相应任务处理函数赖处理该事件,直至所有任务处理完毕。
图3 ZigBee协调器软件开发流程
设计中OASL任务主要有:监测串口状态信息、监测网络无线状态信息。当监测到有控制信息传输时,将控制信息封装为通信帧,发送到终端节点,控制执行器执行相应操作,实现照明控制、烟雾检测、蜂鸣器报警等操作。如果有无线信号输入时,协调器会解析无线通信帧,将数据传递给网关,网关将信息传输给家庭控制端和移动控制端。部分软件代码
if(addr = nodeNwkAddr[DevTemp])
{
//接收到温度传感器数据
uintl6 i - 0;
meincpy(&i, msg->Data, 2);
tempStatus = i < 1000;
HalUARTWrite(HAL_UART_PORT_0, msg->Data, 2);
}
else if(addr = nodeNwkAddr[DevSmoke])
{
//接收到烟雾度外传感器数据
………
2.3 控制操作界面设计
控制操作界面选用Qt作为控制操作GUI设计平台。Qt是跨平台C++图形用户界面应用程序开发框架。控制软件由用户管理界面、感知节点管理与控制、家居环境参数设置、历史信息查询与管理等模块组成[11-14]。用户管理包括感知层控制、网关状态监测、数据管理等操作模块;感知层控制包括烟雾传感器、温度传感器、红外传感器、光照度传感器、摄像头图像采集等模块;网关监测包括1~20号通路数据传输是否正常模块;数据管理包括历史数据存储、同步、删除模块。
3 测试结果
实验测试中,选取传感器进行性能测试。测试数据包括温度、湿度、光照等参数。实现了数据经过处理、按设定时间间隔打包,经过网关传输到家庭和移动控制终端同步保存、处理和显示。同时,测试通过4G传输拍摄的实时视频,并模拟了当某一网关通路出现故障时,网关紧急拓展功能[15]。
经过试验,用户可以通过移动控制端控制窗帘开关、烟雾报警、红外报警、文字图像信息报警等,可以通过移动端看到监测环境的实时状态。当网关通路出现故障时,可进行网关通路紧急更换,操作设置步骤简单,部分测试结果如表1所示。
表1 测试结果
4 结束语
提出了一种基于ZigBee技术设计智能家居系统实现方案,该系统方案利用已普及的ARM9处理器为数据处理中枢,利用ZigBee协议进行星型拓扑搭建无线网关,对数据进行采集、分析、交换、控制,并对部分网关通路故障进行拓展实验。经过测试,该系统可靠性高、易于控制、可控性强且功耗较低,具有良好的普及性,适合在智能家居等远程监测控制系统中应用。
[1] 童晓渝,房秉毅,张云勇.物联网智能家居发展分析[J].移动通信,2010(9):16-20.
[2] 查珑珑.浅析物联网智能家居发展[J].科技信息,2012(25):42-43.
[3] 单春艳,章平,姚鹏修,等.基于远程遥控的供暖节能系统设计[J].单片机与嵌入式系统应用,2013,13(11):74-77.
[4] Wang Yankai.Design and research of the gas monitoring system based on ZigBee wireless network[C].桂林:第三届数字制造与自动化国际会议,2012.
[5] 徐振峰,尹晶晶,陈小林,等.基于ZigBee协议栈的无线传感器网络的设计[J].电子设计工程,2012,20(5):75-81.
[6] 黄孝彬,毛培霖,唐浩源,等.物联网关键技术及其发展[J].电子科技,2011,24(12):129-132.
[7] 王磊磊,孙万蓉,魏雪松,等.通用物联网监测系统软件设计[J].电子科技,2015,28(5):143-146.
[8] 陆宁,姚雪,马晓明.基于GSM 网络的安防系统的设计与实现[J].电子科技,2016,29(4):120-126.
[9] 李文仲,段朝玉.ZigBee2007/PRO协议栈实验与实践[M].北京:北京航空航天大学出版社,2009.
[10] 周熊.基于AT89C52单片机的烟雾报警器设计[J].电子设计工程,2013,21(1):164-169.
[11] 许先斌,熊慧君,李洲,等.基于ARM9的嵌入式Linux开发流程的研究[J].微计算机信息,2006,22(42):87-89.
[12] 钟华锦.基于ARM和Linux的嵌入式系统研究与应用[D].武汉:武汉科技大学硕,2006.
[13] 文全刚.嵌入式Linux操作系统原理与应用[M].北京:北京航空航天大学出版社,2011.
[14] Bruce Eckel.Java编程思想[M].4版.陈昊鹏,译.北京:机械工业出版社,2007.
[15] 刘宏飞,程明霄,陆春宇,等.基于无线传感网络的在线分析系统设计[J].传感器与微系统,2014,33(2):108-111.
The Design of Smart Home System Based on ZigBee Technology
LIU Wei
(Zhixing College,Northwest Normal University,Lanzhou 730070,China)
There are some problems in the traditional smart home, such as poor generality, the complexity in maintenance. A wireless smart home control and implementation scheme based on ZigBee technology is proposed in this paper. This system uses the popularized ARM9 processor as the data processing center. It builds a star topology wireless gateway using ZigBee protocol, which could collect data, analysis, exchange, control them, and implement expansion experiment on the fault in the part of the gateway path. Compared with traditional smart home system, the system is manipulated simply and intuitively, easy to maintain, enhance the functional development of the intelligent home control system. It realized the efficient and intelligent management of the wireless network in the unmanned environment.
ZigBee;Linux;the internet of things;smart home
2016- 09- 01
刘玮(1981-),男,硕士,讲师。研究方向:ZigBee,WiFi和嵌入式系统。
10.16180/j.cnki.issn1007-7820.2016.11.016
TP277
A
1007-7820(2016)11-051-03