机场特种车辆监控系统中低能耗路由的研究
2010-07-31孙毅刚柯欲振
孙毅刚,柯欲振
(中国民航大学航空自动化学院,天津 300300)
随着民航业的发展,机场规模逐渐庞大,场面运行环境日趋复杂,加之管理上的漏洞和驾驶员疏忽大意,造成车辆冲撞航空器的事故频发。因此,为了保证机场运行安全,提出了一种基于无线传感器网络的机场特种车辆监控系统。该系统能够实时监控车辆位置,最大限度地避免车辆冲撞飞机事故的发生。
目前,用于特种车辆监控的技术主要有GPS和场面监视雷达。GPS首次捕获时间长、信号易遭屏蔽且系统易堵塞,不适合在机场监控中应用。场面雷达设备昂贵,且受机场无线电、设施布局建设等严格限制,不利于实际开发和今后的普及使用。ZigBee是近几年研究开发的短距离无线通讯技术,具有成本低、体积小、能量消耗小和传输速率低的特点[1]。由ZigBee设备搭建的网络,因其具有自组织性和动态性强等特点,非常适于机场特种车辆监控系统。但其采用的按需洪泛的AODVjr路由协议[2]应用于本系统存在路由建立时延长,网络控制开销大的问题。另外,本系统中每个节点均采用能量小的干电池供电,一旦网络中部分节点的电量耗尽,不仅致使这些节点本身不能工作,而且极有可能影响整个网络的整体性能。因此,结合本系统具有的定位功能,本文提出了一种基于ZigBee的低能耗路由方法——LEZR(low-energyZigBeerouting),从而提高系统的性能。
本文分析了ZigBee路由算法及其在节能方面存在的问题,提出了适合于机场特种车辆监控系统的LEZR路由算法及其应用,并通过仿真实验比较了两种路由方法的性能差异。
1 ZigBee路由算法
在ZigBee网络中采用了Cluster-Tree与按需距离矢量路由(ad-hoc on-demand distance vector routing,AODV)相结合的路由算法,基本达到低成本、低功耗、可靠性高的设计目标。这里,ZigBee中所使用的AODV与自组网中的经典AODV协仪并不完全相同,准确地说是一种简化版本的AODV——AODVjr,其具有AODV的主要功能[3]。
在ZigBee网络中,节点一般按照父子关系使用Cluster-Tree算法选择路径,即当一个节点接收到分组后发现该分组不是给自己的,则只能转发给其父节点或子节点。显而易见这并不一定是最优的路径,为提高路由效率,ZigBee中也让具有路由功能的节点使用AODVjr去发现路由,即具有路由功能的节点可以不按照父子关系而直接发送信息到其通信范围内的其他具有路由功能的节点,而不具有路由功能的节点仍然使用Cluster-Tree路由发送数据分组和控制分组。
虽然这种混合式的路由方式在一定程度上降低了网络功耗。但是,由于不考虑能量均衡问题和反复地使用较短路径,其可能加剧了能量的不均衡;而在ZigBee网络中节点多采用电池供电,许多恶劣环境中电池能量的补充或电池的更换是很困难的甚至是不可能的。
2 基于ZigBee的低能耗路由算法——LEZR
原有的ZigBee路由算法因能量消耗过大等特点,大大缩短了网络生命周期。为此,在原有ZigBee路由的基础上,引入 GAF(geographical adaptive fidelity)节能算法[4],形成了适合于机场特种车辆监控系统的基于ZigBee的低能耗路由算法——LEZR。
2.1 GAF算法概述
GAF算法是通过让节点尽量处于关机状态来节省能量的算法,主要分为两个过程:
2.1.1 划分虚拟网格
将网络划分成几个相邻的虚拟网格,并假设每两个相邻网格中任意两点间的最大距离为R,网格边长为r,如图1所示。为保证虚拟网格中的某一节点替代其他节点进行通信时的网络连通性,那么R和r必须满足下列关系式
2.1.2 选择簇头节点
在GAF算法中,每个节点都可以处于睡眠、发现和工作三种状态。在网络初始化时,所有节点都处于发现状态,每个节点通过发送信息通告自己的位置、ID等信息,如此,节点就能得知同一单元格中其他节点的信息。然后,每个节点将自身定时器设置为某个区间内的随机值Td。一旦定时器超时,节点发送消息声明其进入工作状态,成为簇头节点。节点如果在定时器之前收到来自同一单元格内其他节点成为簇头的声明,说明其在这次簇头竞争中失败,从而进入睡眠状态。成为簇头的节点设置定时器为Ta,Ta代表其处于工作状态,以抑制其他处于发现状态的节点进入工作状态;当Ta超时后,簇头节点重新返回到发现状态。处于睡眠状态的节点设置定时器为Ts,并在Ts超时后重新回到发现状态。处于工作状态或发现状态的节点如果发现本单元格中出现更适合成为簇头的节点时,会自动进入睡眠状态。图2给出了节点的状态转移图。
2.2 LEZR算法及其应用
在图3中,LEZR算法首先把监测区域划分成若干个虚拟单元格。为了对移动车辆进行及时、准确地监控,必须保证每个虚拟格内有一至两个参考节点处于工作状态,而其他参考节点进入睡眠状态。然后,按照ZigBee路由协议先建立路由,然后才能传输数据。Ta时间之后,原来的簇头节点重返到发现状态,接着新一轮的簇头选举开始。一旦确认了新的簇头节点,那其他参考节点都将进入睡眠状态;接着按照ZigBee路由协议来决定数据的传输路径,如此循环下去。
以机场停机坪长400 m、宽100 m的范围为实验区域,监控该范围内特种车辆的移动情况。无线通信芯片的通信范围为0~64 m,即R=64,根据不等式(1)可取r=28 m。因此为得到较好的通信质量,可在停机坪区域划分出42个28 m×28 m的正方形虚拟网格,每个正方形虚拟网格顶点上放置一个CC2430,此芯片写入准确的位置值,用以作为定位参考点。在这些区域中运行的车辆上装有CC2431作为盲节点,用于获得车辆位置等信息。在本系统中,LEZR算法设置为两类优先级,一个是高级,即由协调器为源节点发起的路由。因为监控系统要及时地监控车辆状态,一旦发现有危险情况需要很快做出反应并把控制信息路由至目的节点,所以此类路由的优先级应为高级。在任何时刻,只要节点收到优先级为高的路由请求或应答包,都要优先发送。另一类优先级为低级,即由任一个参考点或盲节点为源节点发起的路由。主要包括节点的周期性路由广播和用于计算位置的定位信息查询路由等。
3 仿真实验
本文采用被广泛使用的NS-2和CMU Monarch扩展包进行仿真。MAC协议采用802.15.4,路由协议框架采用AODVjr,然后按照上文对路由协议进行改进,无线信号传播采用自由空间传播模型(free space propagation model)[5]。60个参考节点按照图3固定在400 m×100 m的矩形区域内,设置20个移动盲节点,按照随机基准点(radom way-point)模型运动,并设定暂停时间(pause time)为0 s,节点实际运动速度分布在5~20 m/s之间,为盲节点随机分配坐标值进行仿真,进行50组仿真后取平均值,每个节点的信号覆盖距离为64 m,链路带宽为250 kbps。为了能看到所有节点的“死亡”状态,设定仿真时间为3 000 s。
由图4可见,在相同条件下LEZR与ZigBee的网络生命周期的比较结果。仿真刚开始时,路由算法LEZR与ZigBee的节点存活率相当,接近100%,但是在500 s之后,ZigBee路由的节点开始大量地陆续“死亡”。在时间为2 000 s时,ZigBee路由的节点存活率为零,也就是说网络中所有节点的能量都已基本耗尽;而LEZR路由节点存活率却大于80%。另外,在时间为2 500 s时,LEZR路由下依然有30%~40%的“活跃”节点。由此可见,相比ZigBee算法,LEZR算法不仅能均衡网络中各个节点的能量消耗,而且还能延长整个网络的生命周期。
4 结语
本文分析了ZigBee路由及其在节能方面存在的问题,在此基础上提出了LEZR算法,并结合本系统的实际应用进行了网络仿真。该算法通过划分地理网格,让网格内尽量只有1~2个节点激活,以实现节能策略和延长网络生命周期,适合机场特种车辆监控系统的实际需要。另外,仿真结果表明,在相同情况下,LEZR路由算法要比ZigBee算法节省约30%的能量。
[1]蒋 挺,赵成林.紫蜂技术及其应用[M].北京:北京邮电大学出版社,2006.
[2]耿 萌.ZigBee路由协议研究[D].南京:南京信息工程大学,2006.
[3]冉 鹏.ZigBee网络路由协议性能研究与算法优化[D].上海:同济大学,2007.
[4]XU Y,HEIDEMANN J,ESTRIN D.Geography-informed Energy Conservation for Ad-Hoc Routing[C]//Proc 7th Annual ACM Conf Mobile Computing and Networking.New York:ACM Press,2001:16-20.
[5]徐雷鸣,庞 博,赵 耀.NS与网络模拟[M].北京:人民邮电出版社,2003.