嵌入式PXA255与Zigbee的智能家居监控系统江伴东,牛军伟,JIANGBan-dong,NIUJun-wei景德镇陶瓷学院,景德镇333001JingDeZhenCeramicInstitute,Jingdezhen333001,ChinaE-mail:niujunwei558@163.comTheIntelligenthomemonitoringsystemofembeddedZigbeeandPXA255Abstract:ThispaperanalyzesthecompositionandfunctionoftheIntelligenthomesystemandputforwardtheIntelligenthomecontrolsystemofthecoreoftheoverallarchitecture.UnderPXA255-basedprocessorandembeddedlinux,throughwirelessLAN(802.11)andwirelesssensornetworks(Zigbee),thesystemrealizationcontrollingguardsagainstsupervisorycontrolandthevarioushomeappliancetohomesafety,what’smorethesystermcancallalarmcalinunusualcircumstances.Keyword:PXA255;Intelligenthome;Zigbee;embeddedsystems.摘要:本文分析了智能家居系统的组成和功能,并提出了智能家居控制系统的核心部分的总体架构,基于PXA255处理器,在嵌入式linux下,通过无线局域网(802.11)及无线传感器网(Zigbee),该系统实现对家居的安防监控和各种家电的控制,并且在出现异常情况下拨打报警电话。关键字:PXA255;智能家居;Zigbee;嵌入式系统中图分类号:TP393文献标识码:B1前言随着电子技术的发展,消费电子产品已与计算机、通信两项产品的技术结合在一起,成为目前所通称的3C产品,并使家用电子电器产品步向智能家居的方向。智能家居必须具备3个特点:智能化,方便和实用。智能化要求系统设计体现人性化特点;方便就要将传统的固定不动的有线家电设施的控制方式改为方便且易于移动的无线解决方案;实用就是要求所采用的技术切实可行,针对性强。本系统集成多项技术,采用嵌入式Linux,PXA255处理器和多种无线通信方式来满足家庭监控上方便实用和智能化的要求。本系统还利用Zigbee无线收发芯片CC2420和各种家居传感器构成家居监控传感网。家居监控传感器节点的数据在传感网中相互传递,最后被送到PXA255主控板。2系统总体设计系统的家电无线控制子系统通过Zigbee无线收发模块可以主动发送数据对各家电进行有效的控制;也可以被动接收烟雾探测器和煤气探测器等发出的数据,实现对家居的监控。当家居出现了异常情况时,系统将立即发出报警信号,并在第一时间通知用户。系统的图像监控子系统用于监控家中门窗等外人有可能闯入的地方。当有人通过这些地方进入时,图像监控子系统开始工作,将现场的图像拍摄下来并通过802.11无线局域网传送给基于PXA255处理器的智能家居控制系统,再由控制中心进行判断决定是否发出警报。系统的控制方法包括远程控制以及本地控制两种方式。系统通过网关与互联网连接,使得用户可以使用电脑,手机及其他智能终端实现对系统的远程控制。同时,系统也提供了红外接口以及友好的用户界面,使用户可以在本地直接对系统进行控制。系统的报警控制子系统根据用户的设定及其他子系统的工作状况对家中的情况进行智能判断和报警。系统实现的主要功能如下:(1)友好的人机交互图形界面;(2)通过红外接收器,实现遥控系统;(3)通过网关与互联网连接,用户可以通过互联网远程访问该系统,实现基于Web的系统控制;(4)采用无线方式控制各家电(包括日光灯,空调,电脑,电视机等)的电源开关或监测家电运行状态;(5)烟雾探测器探测到烟雾时,系统将自动切断家居中的电源,并发出火警提示;(6)煤气探测器探测到煤气时,系统将自动切断家具中的气源,并且发出报警信号;(7)当有人进入家中时,系统将自动拍摄此刻的场景并发给主人;(8)系统的报警类型包括拨打指定的电话号码,发送短信到指定的手机,输出音频信号等。3PXA255与Zigbee的设计方案3.1PXA255的总体设计智能家居硬件系统由802.11无线局域网通信子系统,GPRS/GSM通信子系统,红外通信子系统,Zigbee通信子系统,LCD显示子系统,图像监控子系统,触摸屏设备子系统和报警子系统组成,PXA255提供的大量外围设备接口和通用的GPIO口为这些硬件系统的设计带来极大的便利。硬件系统的整体设计方案如图1所示。图1处理器的结构图方案使用到的PXA255外围接口资源如下:◆使用PCMCIA接口连接802.11g无线网卡◆使用CF接口连接GPRS/GSM无线收发模块◆使用IrDA接口连接红外收发模块◆使用SSP接口连接Zigbee无线收发模块CC2420◆使用LCD控制器接口连接TFT液晶屏显示器◆使用通用的GPIO口连接触摸屏设备和报警器3.2Zigbee网络的组建网络的组建主要包括系统初始化,网络拓扑更新和节点通信三个方面。家庭网关是系统的主控设备,它主导网络建立的整个过程。系统上电后,家庭网关要采集活动节点信息,并为之分配一个唯一的节点号,完成系统地址表的初始化。系运行过程中,家庭网关要与众多传感器节点通信,并对它们进行相应的控制。除之外,家庭网关必须能发现网络拓扑结构的改变,如传感器节点的插入和拆除,及时修改网络地址表的信息,实现网络的自组织功能。3.2.1系统初始化系统上电以后,家庭网关以广播的方式通知上电的传感器节点初始化。侦听到家庭网关的数据帧之后,微型节点产生一个0-256的随机数,这个随机数与时延基数相乘得出本节点的时延。每个节点等待随机时延后发出入网请求(此时用64位IEEE扩展地址作为节点号),家庭网关收到请求后分配给该微型节点一个16bit的网内节点号(入网后的节点号),并在地址表中记录该传感器节点的相关信息,进行设备关联。若传感器节点发送入网请求后一分钟内没有得到回应,则重新产生一个随机时延再次向家庭网关发送入网请求。家庭网关完成所有上电的传感器节点初始状态的采集,则系统初始化完成。3.2.2网络拓扑更新ZigBee网络具有自组织功能,当网络拓扑发生变化时,家庭网关必须能够发现这种变化并修改地址表信息。网络拓扑结构的变化主要是由传感器节点的接入和拆除引起的。传感器节点的插入:网络运行过程中,新的传感器节点上电后发送入网请求。家庭网关首先判断该节点是否在地址表中,如果该节点不在网络中并且网络中的传感器节点数没有超过网络容量,则家庭网关记录该节点的初始信息,并分配一个唯一的节点号给该节点。传感器节点的入网请求在规定时间内没有得到回应,则等待随机时延后重新发送入网请求。这样就完成了节点的插入。传感器节点的拆除:传感器节点的拆除根据发起者的不同分为两种情况。一种是传感器节点发起拆除。家庭网关收到节点拆除请求后,修改地址表中该节点的信息,回收节点号,并通知节点拆除操作成功。另一种拆除是由家庭网关发起的。如果家庭网关和传感器节点3次通信都不成功,家庭网关将拆除该节点。若该节点向家庭网关发送3次请求都没有得到回应,则该节点需重新发送入网请求,以获得新的网络节点号。3.2.3节点通信传感器节点只能与家庭网关通信,节点相互之间不能进行通信。家庭网关不仅要完成传感器节点的信息采集,还要实现对节点的控制。包括节点的设置、节点操作和节点重启等。所谓节点设置,就是家庭网关对节点的某个参数值进行设定,譬如说烟雾传感器报警的门限值。节点操作主要是家庭网关控制相应的传感器节点,譬如进行灯光场景的配置、报警的撤防等。节点重启是指家庭网关发现该节点上传的数据出现明显错误时,可以关闭该节点再重新启动。系统运行过程中,还需要注意的两个问题。首先,传感器电量的监测是个重要的问题。如果传感器电量过低,它可能输出错误的信息,家庭网关不能发现这种情况,则不能保证采集的数据的正确性。因此,家庭网关必须要监测传感器节点的电量,发现节点电量低时应发出相应的警报并拆除该节点。其次,为了降低传感器节点的功耗,当没有数据通信时,节点处于等待或休眠等低功耗模式。家庭网关应该记录该节点的状态,并以适当的方式唤醒传感器节点。根据上面的叙述,网络组建的流程图如2所示:图2网络组建流程图3.3Zigbee芯片CC2420技术与PXA255的接口技术CC2420是Chipcon公司在2003年底推出的一款兼容2.4GHz1EEE802.15.4的无线收发芯片,它基于Chipcon公司的SmartRF03技术,使用CMOS工艺生产,具有很高的集成度。该芯片体积小,功耗低,非常适合于家庭及楼宇自动化,工业监控等应用系统。CC2420与PXA255的连接非常简便,它使用SFD,FIFO,FIFOP和CAA四个引脚表示收/发数据的状态;而PXA255通过SPI接口与CC2420交换数据,发出命令。这个SPI接口是通过将PXA255的SSP接口设定为SPI工作模式并作为SPI的主设备,而CC2420作为SPI从设备实现的。CC2420收到物理帧的帧起始字段(SFD)后,会在SFD引脚输出高电平,直到接收完该帧。如果启用了地址识别,则在地址识别失败后,SFD立即转为输出低电平。FIFO和FOFOP引脚标志接收FIFO缓存区的状态,如果接收FIFO缓存区有数据,则FIFO引脚输出高电平;如果接收FIFO缓存区为空,则FIFO引脚输出为低电平。FIFOP引脚在接收FIFO缓存区的数据超过某个临界值时或在CC2420接收到一个完整的帧以后输出高电平。临界值可以通过CC2420的寄存器设置。CC引脚在信道有信号时输出高电平,它只在接收状态下有效。在CC2420进入接收状态至少有8个符号周期之后,才会在CCA引脚输出有效的状态信息。CC2420的SPI接口由CSn,SI,SO和SCLK四个引脚构成。PXA255通过SPI接口访问CC2420内部寄存器和存储区。在访问过程中,CC2420是SPI从设备,接收来自PXA255的时钟和片选信号,并在PXA255的控制下执行输入/输出操作。SPI接口接收或者发送数据都与时钟下降沿对齐。监控传感器节点的智能家居传感器网的最小组成单元,它一方面要采集家庭监控传感器的信息,并吧该信息发送给PXA255主控制板;另一方面要接收PXA255发来的指令执行各种电器设备的控制操作。传感器节点的硬件组成单元主要有CC2420收发模块,单片机模块,传感器模块和电器控制电路模块。PXA255与CC2420和传感器连接示意图如图3所示。图3PXA255与CC2420电路接口和传感器节点原理图3.4图像监控子系统图像监控子系统采用爱普生(Epson)公司的sls65000实现方案。sls65000是一个片上系统(SOC),其内部集成了ARM720T的核、存储控制器、以太网口、CF接口(可接802.11b无线网卡)、摄像头接口和JPEG图像编码器等硬件资源。采用爱普生公司的这个方案,在硬件上,只要在sls65000的外围接上Flash、SDRAM、无线网卡、摄像头和红外传感器;同时在软件上,配以Linux操作系统和相应的驱动程序就可构成一个独立的嵌入式图像监控系统。该图像监控系统一般放在家中需要严密监视的地方,如出入的大门,老人,小孩的居室等处。当有人进出大门或房间时,安装在sls65000上的红外探测器会探测到人员的到来。此时,预先设定好的程序会驱动摄像头抓拍一幅图片,该图片数据经sls65000内部JPEG图像编码器编码后通过802.11b无线网卡发送到PXA255主控板上,主控板可暂存该图片数据也可通过GPRS将图片发送到用户手机上。当然,用户也可以通过手