智能家居系统嵌入式无线传感器网络设计
摘要:介绍了ZigBee无线传感器网络,将ZigBee技术应用到智能家居系统中。提出了一种以ZigBee技术为基础的智能家居系统设计方案。阐述了无线传感器网络的总体构成,以CC2430无线芯片为棱心,选取了合适的ZigBee模块进行了硬件电路设计。研究并分析了ZigBee技术。设计并实现了串口收发程序,传感器程序,以及节点间的无线通信程序,并根据ZigBee协议,使节点组成树状网络,最终实现系统的监测与控制。结果表明,本系统运行稳定,达到了设计目的,有着广泛的应用前景。
关键词:智能家居;无线传感器网络;ZigBee;CC2430
随着时代的发展,人们将更多的注意力放在了生活环境的安全性、舒适性和便利性上,从而出现了智能家居的概念。智能家居控制系统使人们可以对家居内的任意电器进行数字化控制,利用计算机技术、网络通讯技术将与家居生活有关的各种设备有机地结合在一起,进行集中管理,让家居生活更加舒适、安全、有效。本文以ZigBee技术对智能家居内部进行无线网络组网,通过ZigBee无线传感器网络节点的设计,实现节点对各种传感器信息的采集、传输和控制功能。
1 Zigbee技术 ZigBee技术是一种强调极低耗电、极低成本的短距离无线网络技术,遵循IEEE802.15.4标准。它专注于低速率传输控制,网络容量大,时延短,提供数据完整性检查,加密算法采用AES-128,网络扩充性强,有效覆盖范围为10~75 m,具体依据实际发射功率的大小和各种不同的应用模式而定,基本上能够覆盖普通的家庭环境,通信频率采用2.4 GHz免执照频段。 ZigBee是一组基于IEEE802.15.4无线标准研制开发的,有关组网、安全和应用软件方面的技术标准。IEEE802.15.4仅定义了MAC层和物理层协议,而ZigBee联盟则对其网络层和应用层进行了标准化。ZigBee联盟还开发了安全层,以保证这种便携设备不会意外泄漏其标识,而且这种利用网络的远距离传输不会被其他节点获得。
2 系统结构设计 无线传感器网络系统主要由传感器、CC2430无线模块构成,结构图如图1所示。
无线传感器网络采用树状结构,网络中有一个协调器,负责整个网络中数据的处理、转发以及网络的管理。终端节点(传感器节点)上电复位后,会搜索协调器节点,当能够搜索到协调器时,直接申请加入网络。当终端节点搜索不到协调器时,这时就会通过路由器节点找到协调器来加入网络。
加入网络后保持待机状态,当有数据需要发送时,按照组网时的路径来收发数据信息。协调器通过串口与PC机相连,利用超级终端实现发送命令或者显示数据。
3 硬件电路设计 本文设计的无线传感器网络系统的硬件结构主要由协调器模块,路由器模块,传感器模块,串口转换模块,供电模块以及PC机等组成。其中协调器、路由器、传感器3个模块作为主要的无线通信模块,由主控芯片CC2430作为数据处理以及无线收发器。其系统硬件电路结构示意图如图2所示。
3.1 主控芯片 选用CC2430芯片作为无线收发器和数据处理及控制器。CC2430在单个芯片上整合了ZigBee射频前端、内存和微控制器。它采用增强型8051MCU、32/64/128 kB闪存、8 kBSRAM等高性能模块,还包含模拟数字转换器、几个定时器、AES-128协同处理器、看门狗定时器。32 kHz晶振的休眠模式定时器、上电复位电路、掉电检测电路以及21个可编程I/O引脚。 3.2 无线模块设计 1)协调器模块 协调器节点由电压转换模块、按键模块、LCD模块、LED指示灯、时钟、处理器CC2430、天线等部分组成。CC2430的工作电压为3~3.3 V,所以要用电压转换模块把电压从5 V降低到3.3 V左右;LED指示灯用来显示协调器节点网络状态信息(如是否组网成功);LCD模块是用户和传感器网络的交互界面,用来显示功最长能菜单,用户通过按键来选择功能菜单。其电路图如图3所示。
2)传感器模块与路由器模块 传感器模块亦即是终端节点模块,由传感器、处理器CC2430、天线、LED指示灯、时钟等部分组成。LED指示灯由P1.0、P1.1口控制。传感器模块就是在协调器模块的基础上去掉了LCD,而加入了传感器。传感器选用了DHT11温湿度传感器,与P0.0口相连,来负责数据采集。路由器模块与传感器模块的硬件电路相同,只是在编程实现功能上有所不同。
4 无线网络系统软件设计 在ZigBee网络中,只有那些可以成为ZigBee协调器的设备才能建立新网络。协调器首先执行信道扫描,如果发现了一个合适的信道,协调器就要为新网络选择一个PAN ID,然后协调器进入监听状态,随时响应其他节点的入网请求。 ZigBee网络有两种设备类型:全功能节点(FFD)和半功能节点(RFD)。RFD为终端节点,FFD可以作为协调器或路由。软件设计包括网络协调器程序以及路由器、终端节点程序。它们均包括初始化程序、协议栈配置、组网方式配置程序、各处理层设置程序以及发射程序和接收程序。初始化程序主要是对CC2430、协议栈、UART串口等进行初始化;发射
程序将所采集的数据通过CC2430调制并通过DMA直接送至射频输出;接收程序完成数据的接收、远传及返回信息处理。主程序流程如图4所示。
主程序主要分为2部分,网络协调器程序以及路由器、终端节点程序。 对于网络协调器主程序,首先初始化CC2430,然后初始化协议栈。之后程序建立一个新的网络,确定网络的ID号和频道号。之后程序开始进入监测状态。如果有新的设备请求加入网络,则为其分配网络地址,批准其加入网络。同样,协调器接收终端设备无线发送来的信息,并通过串口发送给上位机,或者从上位机得到命令,发送过终端设备。 对于路由器、终端节点程序,首先初始化CC2430,然后初始化协议栈。之后程序开始搜索网络,当附近存在网络时,则申请加入网络。之后程序进入待机休眠状态。如果终端传感器有信息要发送,或者接收到协调器的命令,则唤醒设备,进行无线发送或接受。当事件处理完时,重新进入待机休眠状态。
5 系统实现
系统的功能主要包括以下几个方面:建立树状网络拓扑结构;查询网络中各节点信息和传感器数据,如电池电量、节点温度信息等;控制节点的开关功能。 本系统使用了4个无线网络节点,这样能够组成一个基本的无线网络。并且根据情况做了多种组网测试: 1)1个协调器节点,3个终端节点; 2)1个协调器节点,1个路由器节点,2个终端节点; 3)1个协调器节点,2个路由器节点,1个终端节点。 在2)和3)情况下,根据节点与协调器节点之间距离、各节点彼此之间距离的不同,又会产生多种组网方式。例如2)情况下,终端节点离协调器近的话,会直接与协调器连接;而当搜索不到协调器时,就会通过路由器来连接。图5为3)情况下的一种网络结构。 图5所示为C51RF-WSN网络监控软件所截图,通过此软件,可以实时查看网络状态,并能向各个节点发送命令信息,例如查看网络状态,查看信号质量,电池电量,采集数据信息等。 智能家居系统的终端节点可以包括许多内容,从而实现一些子系统。例如:照明系统,调温系统,报警系统,家电控制系统等。在我们设计的无线网络系统中,实现了远程控制灯开关照明;利用DHT11温湿度传感器实现终端节点的温湿度监测,其信息能够在PC机上很好的显示出来。
图6所示为传感器所测2个路由器节点与1个终端节点的温湿度信息。
6 结束语 针对我国智能家居快速发展的背景,本文对基于ZigBee技术的智能家居组网进行了软硬件设计。ZigBee无线传感器网络系统以CC2430无线射频芯片为核心,节省了成本,并且终端节点小巧,放置灵活,功耗极低,提高了监控能力,再加上采用树状网络结构使得通信更加可靠,易于控制,非常方便实用,并且成本低廉。因此,ZigBee技术将会有广阔的应用前景。
|