基于ZigBee的无线红外防盗报警系统设计
2012-08-14范国娟范国卿
范国娟,范国卿
(1.山东传媒职业学院 山东 济南 250200;2.苏宁电器南京总部 江苏 南京 210005)
目前报警系统的信号传输主要是有线和无线两种。
有线方式具有通讯可靠、抗干扰能力强、器件成本低等优点,适用于新建且可以在墙壁内预留连接线的建筑物,但是其机动性差、不便适应用户及产品的多变要求,对预留连接线的维护及更换难度高、费用大;无线方式可避免探头与主机之间的连接线影响室内装修,具有灵活、简洁的优点,需求日益扩大,越来越得到用户的认可,是发展趋势,但是容易受到干扰,传输稳定性和抗干扰性存在不足,价格较高。
作为防盗报警的关键产品,被动红外探测器的无线化也逐渐成为一种趋势。但是由于以下两方面的原因,红外探测无线报警系统虚警率较高:1)红外探测器性能参差不齐;2)报警信号的无线传输容易受到干扰,引起主机误报警。
因此,低功耗、低成本、低速率的短距离无线通信新标准ZigBee来组建防盗报警网络,不仅解决了传统有线网络系统布线难、成本高以及不易扩展等问题,而且ZigBee技术能基本解决现有无线报警系统存在的一些问题:
1)误报警问题:调查表明,报警器误报警率高是让用户放弃使用的最主要原因。现有的无线报警系统很容易受到来自供电网中和空中的高频干扰信号。为了避免在2.4 GHz公用频段的干扰,ZigBee采用了直接序列扩频技术保证信号传输;
2)使用成本问题:报警器长期使用的电费是个问题,为了达到在停电或窃贼作案前人为地断电后报警器仍能起作用的目的,用户还需要定期更换电池一类的后备电源,所以,在长期使用过程中,用户就不得不考虑成本。ZigBee芯片是超低功耗的无线收发芯片,发射功率仅为1 mW,再加上芯片工作周期短,而且采用了休眠模式,所以收发信息功耗较低。
1 ZigBee技术
作为一种新兴的无线网络技术,ZigBee的基础是IEEE无线个人区域网工作组的一项标准,被成为 IEEE802.15.4技术标准。主要用于距离短、功耗低且传输速率不高的各种电子设备之间进行数据传输以及典型的有周期性数据、间歇性数据和低反应时间数据传输的应用。可工作在2.4 GHz(全球流行)、868 MHz(欧洲流行)和 915 MHz(美国流行)3 个频段上,分别具有最高250 kbit/s、20 kbit/s和40 kbit/s的传输速率,它一般在10~75 m的范围内进行传输,但是范围也是可以扩展的。
在ZigBee网络中,节点无须经过中央交换机节点便可以相互通信,并具备了自愈和自我组织功能。任意节点瘫痪或者被敌方俘获,其他节点可以选择其他路由。而新的节点经上电之后,就能收听邻近节点,只要满足接入标准,就可以加入网络[1]。IEEE.802.15.4和ZigBee协议中定义了3种类型的拓扑结构:星型网络、树状网络和网状网络,如图1所示。无论哪种拓扑结构,每个独立的网络均有一个唯一的标识符即网络号(PAN标识符)。根据标识符,各个网络设备之间就可以确定其从属关系并进行通信。每个网络中都有一个唯一的协调器,它相当于有线局域网中的服务器,具有对本网络的管理功能,它负责发起和建立整个网络,加入网络的终端设备分布在PAN协调器的覆盖范围内,与PAN协调器进行直接通信。网络中的全功能节点可以做路由器、协调器和终端,而简化功能节点只能作终端设备[2]。
图1 ZigBee网络拓扑结构Fig.1 ZigBee network topology
ZigBee无线网络的实现,是建立在ZigBee协议栈的基础上的。ZigBee协议栈是建立在 OSI(Open System Interconnect,开放系统互联)基本参考模型的基础上的,是OSI七层模型的精简网络模型。IEEE 802.15.4定义了最低两层:物理层和MAC层,位于最低层,且与硬件相关;ZigBee联盟在此基础上定义了网络层(NWK)和应用层(APL),建立在 PHY和 MAC层之上,并且完全与硬件无关。分层的结构脉络清晰、一目了然,给设计和调试带来极大的方便。ZigBee标准使用IEEE802.15.4的物理层和MAC层协议作为ZigBee协议栈的一部分,并自己定义了网络层、应用层和安全协议,因此任何ZigBee设备和IEEE标准都是兼容的[3]。
2 系统的整体框架
笔者设计的无线红外防盗报警系统网络采用星型网络拓扑结构,主要由服务器、路由器和若干个终端信息采集节点组成[4]。
用户端报警节点主要包括两部分:探测器和报警主机,结构如图2所示。每个监控区域都可进行移动人体的探测,报警主机可进行现场声光报警。这样一个星型网络报警系统,可在一个ZigBee结点上集成红外信息,形成一个无线红外防盗报警系统。另外,本系统具有联网能力,利用ZigBee路由设备可以无线连接到值班室的服务器上。
图2 用户节点系统框图Fig.2 System block diagram of user node
系统主要功能包括:
1)红外探测器快速准确地检测到异常状态,经确认后无线发送给主机;
2)主机接收到信号后进行识别,现场立刻发出警报(声光报警或其他方式)并在显示屏上显示报警防区和警情;
3)报警主机上的ZigBee无线模块通过区域内布设的ZigBee路由设备将数据无线传送到值班室的服务器,ZigBee路由设备就是网络中具备路由功能的ZigBee协调设备;
4)值班人员可以通过监控软件进行区域安全的监控,一旦报警,监控软件上将显示报警地点,及时处理突发事件[5]。
3 系统硬件设计
在基于ZigBee的无线红外防盗报警系统中,众多传感器节点是整个网络的基础。本节的主要内容是设计其中单个节点的硬件结构并画出电路图。
在硬件确定过程中,首先确定节点采集人体红外线的热释电红外传感器型号,第2步确定用来完成系统的设计的支持ZigBee协议的芯片的具体型号,第3步查阅热释电红外传感器的资料和芯片的数据手册,设计出原理图,并画出PCB(Printed circuit board)图。
CC2430是芯片巨人TI公司收购无线单片机公司CHIPCON后推出的全新概念新一代ZigBee无线单片机系列芯片。在CC2420的基础上绑定了ZigBee协议栈,具有128 kB可编程闪存和8 kB的RAM和其他一些功能,在接收和发射模式下,电流损耗分别低于27 mA或25 mA。
3.1 人体红外监测模块
人体红外监测模块选用的传感器是热释电红外传感器,一般安装在天花板上,用来监测是否有人走动,进而判断是否有小偷入室行窃。热释电红外传感器能将检测到的人或动物的红外线转换成电信号输出,其原理为:当一些晶体受热时,在晶体两端会产生数量相等而符号相反的电荷,即热释电效应。人体都有恒定的体温,一般在37℃左右,会发出10 μm左右特定波长的红外线。文中使用了型号为RE200B的红外传感器,配合红外热释电处理芯片BISS0001对信号进行采集和放大处理,再加少量外接元件构成被动式的热释电红外信号处理电路。人体红外监测模块的电路原理如图3所示,CC2430的P0.1端口通过一个电阻与BISS0001芯片的第2脚VO相连。当模块监测到有人体活动的时候,VO输出高电平,否则都为低电平。配置CC2430的P0.1口的IO外部中断功能,有上升沿脉冲来临的时候,外部中断唤醒,进行相应的数据处理,并将数据发给协调器[6]。
3.2 下载器插槽
CC2430的程序必须借助特定的工具把程序从PC机上下载到CC2430的flash里面,文中使用IAR软件编译,编译完成后通过仿真器连接jtag接口下载进CC2430的flash里面。
3.3 串口电路
图3 人体红外监测模块电路原理图Fig.3 Infrared human-body detection module circuit diagram
串口电路采用MAX3232芯片,+3.3 V供电。电路中的电容值在MAX3232芯片手册上为0.1 μF。其中:4、5脚之间加10 nF贴片电容,2、6脚之间 2个电容值为 1 μF。
3.4 整体硬件电路如
整体硬件电路如图4所示。
4 软件设计
4.1 软件开发平台
系统软件设计是在硬件设计的基础上进行的,良好的软件设计是实现系统功能的重要环节,也是提高系统性能的关键所在。节点设计基于通用性及便于开发的考虑,移植了TI公司的Z-Stack协议栈,其主要特点就是其兼容性,完全支持IEEE 802.15.4/ZigBee的CC2430片上系统解决方案。ZStack还支持丰富的新特性,如无线下载,可通过ZigBee网状网络(Mesh Network)下载节点更新。
本系统软件设计选用的开发平台是IAR集成开发平台。IAR Embedded Workbench(简称EW)的C/C++交叉编译器和调试器是当今世界最完整的和最容易使用的专业嵌入式应用开发工具。
图4 整体硬件电路图Fig.4 Integrated hardware circuit diagram
TI/Chipcon公司在IEEE 802.15.4标准和ZigBee联盟所推出的ZigBee2006规范的基础上,发布了全功能的ZigBee2006协议栈,并通过了ZigBee联盟的认证。该协议栈全部用C语言编写,免费提供给用户,同时向后兼容。在协议栈内部嵌入了一个操作系统,用于对任务进行统一的调度。对于用户而言,只需要在应用层进行一些设计和改动,即可实现数据的发送、接收以及网络组建功能,构建功能完善、性能稳定的ZigBee无线网络。进行程序设计时,首先在协议栈应用层程序中添加相应的任务,然后运行任务即可处理。
Z-Stack采用操作系统的思想来构建,采用事件轮循机制,当各层初始化之后,系统进入低功耗模式,当事件发生时,唤醒系统,开始进入中断处理事件,结束后继续进入低功耗模式。如果同时有几个事件发生,判断优先级,逐次处理事件。这种软件构架可以极大地降级系统的功耗。
整个Z-stack的主要工作流程,大致分为系统启动,驱动初始化,OSAL初始化和启动,进入任务轮循几个阶段,系统流程图如图5所示。
图5 Z-Stack系统运行流程图Fig.5 Flow diagram of Z-Stack syetem
4.2 数据采集节点的设计
数据采集节点负责监视一定范围内的环境,接收信号,并进行数据处理和通信。其软件部分主要包括监测模块数据采集程序和网络通信程序。
程序设计流程图中,首先是初始化,其中初始化Stack RAM、初始化board I/O、初始化HAL层驱动是初始化硬件部分;初始化NV FLASH、初始化MAC层、分配64位长地址、读取NV ITEMS、初始化OSAL是初始化软件部分。然后设置定时器,向中心节点发送绑定请求,绑定成功后,启动定时器,设置周期为8 s,每个周期采集一次信号,然后判断采集到的信号是否为设置的报警信号,假设是设置的信号,则选择芯片的I/O口作为AD输入通道,进行AD转换和数据处理,将处理过的数据发送给中心节点,然后等待下一个周期继续采集信号;假设不是设置的信号则等待下一个周期继续采集信号。
4.3 中心节点的设计
中心节点(即网络协调器)负责网络的配置和管理,另一方面还接受各传感器节点发来的数据,将其汇合整理后传给计算机。该部分软件主要包括设备初始化、无线数据收发和处理等程序。
中心节点的程序设计流程中,首先是初始化,分为硬件初始化和软件初始化。然后设置定时器,接受数据采集终端节点的绑定请求,绑定成功后,开始接收数据采集结点发送来的数据,并对数据进行处理,通过串口将处理好的数据发送至主机。
中心节点程序:
5 结 论
文中将ZigBee技术应用于红外防盗报警系统,采用无线组网技术,利用高性价比的CC2430芯片实现了无线系统中节点之间的相互通信;设计了采用RE200B热释电红外传感器和BISS0001芯片的数据采集节点以及采用MAX3232芯片的中心节点。选用IAR集成开发平台作为系统软件开发平台,分别完成数据采集节点和中心协调器节点的程序设计。经过对系统的测试,验证了系统预期的功能。
本系统只完成了基于ZigBee的无线红外防盗报警系统网络总体框架设计和基本功能,离实用还有相当长的距离,还需进一步的完善和改进,未来工作可从以下几个方面去开展:1)系统功能的完善。PC机没有接入Internet,未来工作可通过GSM网络实现与外网通信,从而实现防盗报警系统与Internet的互联,实现联网传输。2)数据融合。在控制成本的前提下,可适当增加传感器数量,通过多传感器数据融合处理,避免干扰因素的影响,提高精度,降低虚警率。
[1]LAN/MAN Standards Committee,Part 15.2:Coexistence of Wireless Personal Area Networkswith Other Wireless Devices Operating in Unlicensed Frequency Bands[S],2009.
[2]刘舒祺,施国梁.基于热释电红外传感器的报警系统[J].电子设计工程,2005(3):18-20.LIU Shu-qi,SHI Guo-liang.Alarm system with pyroelectric infrared sensors[J].Electronic Design Engineering,2005 (3):18-20.
[3]金纯,罗祖秋,罗凤,等.ZigBee技术基础及案例分析[M].北京:国防工业出版社,2008.
[4]于海斌,曾鹏,梁韡.智能无线传感器网络系统[M].北京:科学出版社,2006.
[5]Ruiz L B,Nogueira J M,Loureiro AAF.MANNA:AManagement Arehitecturefor Wireless Sensor Netorks[J].IEEE eommunication Magazin,2003,41(2):116-125.
[6]孙利民,李建中,陈渝,等.无线传感器网络[M].北京:清华大学出版社,2007.