用于工业现场环境具备高可靠、硬实时、高安全特征的无线网络被称为工业无线网络(IndustrialWirelessSensorNetwork,IWSN)[1]。无线技术低成本、易使用、易维护等优点,使得以较低投资和使用成本实现“泛在感知”和“全流程优化控制”的工业测控系统成为可能,具有广阔的应用前景,已成为工业测控和无线领域新的研究热点。工厂自动化应用中的数据通常包括3类:安全、控制和监测[2]。其中:安全是指关乎生产和人身安全的动作数据;控制是指闭环管理、闭环监督和开环等控制类数据;监测是指报警、登录和下载/上传等数据。不同类型的数据对应网络中不同的性能需求,安全是紧急性最高的数据类。紧急数据要求苛刻的硬实时和高可靠性能,超过紧急数据的延时上限,则会导致系统不稳定,带来经济损失,甚至危害人身安全[3]。介质访问控制(MediumAccessControl,MAC)层负责为相互竞争的节点分配无线通信资源,是决定网络性能的关键技术[4]。MAC协议是工业无线网络的核心技术,其设计目标是在延长网络寿命的前提下,保障网络中每个节点的实时性和可靠性要求[5]。针对紧急数据的MAC协议,学者们开展了相关研究,具体可以分为两类:一个面向随机竞争访问方式;另一个面向固定分配访问方式。Son等[6]针对工业环境中非周期性的紧急数据,提出了一种动态退避算法,通过设置不同的退避指数(BE)和竞争窗口(ContentionWindow,CW)初始值来进行动态退避调整。文献[7-9]中提出了一系列针对保障时隙(GuaranteedTimeSlot,GTS)的适应性调度或分配机制,以获得低延时、改善带宽利用率或者保证紧急数据的公平性。Bhatti等[10]改进了信标使能的IEEE802.15.4MAC的超帧结构,调换竞争访问阶段(ContentionAccessPeriod,CAP)和无竞争访问阶段(ContentionFreeaccessPeriod,CFP)的先后位置,使得失败的GTS帧可以在同一超帧周期接下来的CAP阶段进行重传,但会造成GTS重传与CAP通信量之间的竞争,增加了CAP阶段的竞争。针对该问题,Mehta等[11]在文献[10]超帧结构的基础上,在CFP的末端引入扩展CFP(ExtendedCFP,ECFP),用于重传之前CFP阶段失败的GTS帧。上述成果可以在一定程度上减少延时或者提高可靠性,但主要是以载波侦听多路访问/冲突避免(CarrierSenseMultipleAccesswithCollisionAvoidance,CSMA/CA)机制为主,不确定性较大,无法为紧急数据提供有保证的高性能信道接入,特别不适用于周期性的紧急控制数据等。由于不可预测的紧急数据具有发生的不确定性,时分多址(TimeDivisionMultipleAccess,TDMA)方法不能为其提供优先分配的专用传输时间,进而不能保证不确定的紧急数据的性能。Shen等[12]提出了一种面向紧急数据的增强优先级MAC协议,引入了高优先级指示空间(HighPriorityIndicationSpace,HPIS),允许高优先级紧急数据抢占低优先级数据的时隙,能够很好地解决不可预测的紧急数据的实时传输问题。文献[13]中提出一种次最优的分布式控制算法(DistributedControlAlgorithm,DCA),将数据传输问题转化为以最大化不同数据类的加权服务为目标的Lyapunov漂移最优化问题。文献[14]中提出一种异步多信道无线传感器网络MAC协议RIM(ReceiveInitiatedMAC),利用接收端开始的传输机制有效地解决了控制信道饱和问题,采用基于概率的随机信道选择机制避免了三重隐终端问题,同时,RIM支持一种简单且可靠的异步广播机制。然而,文献[12]只是针对单信道进行资源调度,当节点多通信量比较大时,竞争问题凸显。文献[13]虽然是针对多信道进行资源调度,然而,该算法随着信道数的增加,控制信道饱和问题严重,能耗较高。文献[14]在控制信道饱和问题和能耗方面提供了很好的解决方法,然而该算法没有考虑不可预测的紧急数据的传输问题。同时,由于文献[13]的算法是通过源节点和目的节点在控制信道交换信道信息来确定传输信道,而文献[14]是基于接收端开始的异步多信道MAC协议,所以文献[13]的算法不能在文献[14]的机制基础上实现。针对以上问题,本文提出了一种面向工业紧急数据的异步多信道MAC调度方法———EOAM(EmergencydataschedulingalgorithmOrientedAsynchronousMulti-channelIWSNs),解决多信道通信中不可预测紧急数据的实时传输问题,最后实验验证了算法的实时性和能耗。
1网络模型
1.1工业无线网络中的数据模型
如表1所示,EOAM算法面向两类典型的工业紧急数据:1)不可预测的紧急数据(TrafficCategory1,TC1)。TCI具有最高优先级,主要是指紧急安全动作要发送的数据,比如紧急关闭、紧急报警等,具有不可预测、重现率低等特点。2)普通紧急数据(TrafficCategory2,TC2)。TC2的优先级较TC1低,主要包括闭环管理控制、闭环监督控制、开环控制,该类数据具有重现率高等的特点。
1.2超帧模型
超帧(Superframe)由信道(Channel)和时隙(Timeslot)构成,如图1所示。所谓信道,是指无线射频信号发送的媒介,是频段的若干等份;所谓时隙,是指时间的若干等份,时隙大小取决于网络中数据的大小,时隙的数量决定超帧的长度。对于单信道网络,超帧中仅包括一条信道;对于多信道网络,超帧中包括多条信道。本文针对多信道网络,超帧中包括多条信道以及若干时隙。定义信道模型如下:1)将可用信道划分为一个控制信道(ControlChannel,CC)和多个数据信道(DataChannel,DC)。2)为了提高不可预测的紧急数据TC1的实时性和可靠性,本文在数据信道DC中设置一个特殊信道(SpecialChannel,SC),属于TC1和广播数据(BroadcastData,BD)的专用传输信道;同时,采用指示退避机制,使得普通紧急数据TC2也可以选择使用该信道,避免资源浪费,保证信道资源的利用率。定义时隙模型如下。1)为了保证EOAM算法适用于广播通信,将SC的时隙长度T定义为节点发送一个TC1数据包的平均时间与发送一个BD数据包的平均时间的较大值,即T=max{tTC1,tBD},其中:tTC1=tRTS+tCTS+tDATA+tACK,tA表示节点发送一个A包的平均时间,A为各类包的统称。2)为了使得TC1能够利用特殊信道进行实时可靠传输,本文将时隙划分为高优先级指示空间(HighPriorityIndicationSpace,HPIS)和非高优先级指示空间(NotHighPriorityIndicationSpace,NHPIS),其中,HPIS由两个等长的子时隙t0和t1组成,分别用于待发送TC1数据包的节点发送RTS(RequestToSend)和接收CTS(ClearToSend),如图2所示。
2EOAM算法
本章首先介绍适用于单播通信的EOAM算法步骤,并将其扩展到广播通信的情况。EOAM算法的总体思想主要包括3个方面:1)为了保证不可预测高优先级紧急数据的实时性,采用专门的特殊信道进行传输,特殊信道时隙的高优先级指示空间(HPIS)和非高优先级指示空间(NHPIS),以保证紧急数据的优先传输。2)同时为了避免特殊信道时隙的浪费,采用指示机制,在保证不可预测紧急数据的目的节点快速切换信道的同时,使得选择使用特殊信道的普通数据在紧急数据占用信道时能够进行退避,不干扰紧急数据传输,而在特殊信道空闲时能充分利用信道资源。3)为了保证不可预测的紧急数据和广播数据的确定性传输,将特殊信道中时隙的长度设置为发送这两类数据所需平均时间的较大值,保证数据在该时隙长度内完整传输。
2.1单播通信
EOAM中单播通信分为TC2单播通信和TC1单播通信两种情况,分别如图3和图4所示。TC2单播通信过程包括以下步骤:1)当处于睡眠阶段的发送节点S有TC2数据要发送给接收节点R时,S首先开启其无线收发器,然后在CC上侦听。如果S侦听到指示(Indication,IND),且IND中的目的节点地址为自身地址时,S立即切换到SC侦听。2)当R睡眠时间到达后,R通过在CC发送一个声明消息包(Announcement,ANC)来开始一个潜在的数据传输,该ANC中包含R选择的DC序号,例如i,然后R切换到DCi进行侦听。R采用一种基于概率的随机方法来进行信道选择,当R的睡眠时间到达时,它以概率p在所有DC中随机地选择一个DC,而以概率1-p继续睡眠以节省能量。p定义为平均可用DC数A与总DC数K之比;K可由协议设计确定;A=K-λ×(1/P),其中:λ为报文到达速率,P为报文长度服从分布的参数,详细证明过程见文献[15]。如果R在发送ANC前侦听到IND,且IND中的目的节点地址为自身地址时,R立即切换到SC侦听。3)S在CC上收到R发送的ANC以后,S立即切换到DCi,首先检测信道状态,若空闲,则发送一个RTS控制包;若忙碌,则随机退避一段时间后发送一个RTS控制包。如果S在CC上侦听时间Tmax后仍然没有收到R发送的ANC,S主动在CC上发送一个ANC,以避免由于R在CC上等待S发送ANC而导致的死锁问题。4)当R收到RTS后,R发送一个CTS控制包来确认这次预约。当R切换到DC后,如果没有收到来自其他节点的RTS,R则根据自己的占空比切换回CC,然后进入睡眠阶段。5)当S收到CTS后,S利用DATA&ACK的方式与R进行数据传输。当传输完毕后,它们切换回CC,然后进入睡眠阶段。TC1单播通信过程包括以下步骤:1)当处于睡眠阶段的发送节点S有TC1数据要发送给接收节点R时,S首先开启其无线收发器,然后在CC发送IND,之后切换到SC。2)如果R在CC上侦听到IND,立即切换到SC侦听。3)S在子时隙t0发送一个RTS控制包,若此时R在SC侦听到RTS,R在子时隙t1发送一个CTS控制包来确认这次预约。4)若S在子时隙t1收到R发来的CTS控制包,那么就在该时隙接下来的NHPIS利用DATA&ACK的方式与R进行数据传输;若S在子时隙t1没有收到R发来的CTS控制包,那么就在该时隙接下来的NHPIS持续发送IND,然后在下一个时隙的子时隙t0重新发送一个RTS控制包,重复上述过程。
2.2广播通信
EOAM中采用SC发送BD,如图6所示,广播通信过程包括以下步骤:1)当处于睡眠阶段的发送节点S有BD要发送时,S首先切换到SC,然后开启其无线收发器检测SC信道状态。2)如果SC空闲,那么S在接下来的M个时隙内连续发送M个相同的数据包,其中,M可以根据不同WSN的性能需求进行动态地调整,本文为节点的平均邻居数。如果SC忙碌,那么S随机退避一段时间。3)每个节点(包括睡眠节点)在M-1个时隙内都切换到SC上来接收可能发送的BD包,从而S的每个邻居节点都可以在M个时隙内收到BD。
3实验结果与分析
本章从实时性、可靠性和能耗3个角度,与文献[13]所提出的分布式多信道控制算法(DCA)进行仿真比较。仿真环境设置为:将49个节点分布在7m×7m的网络中,节点随机地选择任一邻居节点进行单播通信,数据负载为32B,TC1数据流的个数为5,TC2数据流的个数为20。延迟时间定义为从数据包到达发送节点MAC层开始,直到被接收节点成功接收的时间。图7所示为平均延迟随着信道数的增加而变化的趋势。由于DCA中ClassⅥ为非紧急数据,所以在此不作比较。由图7可知,EOAM中TC1的平均延时一直低于DCA中数据类,这是由于EOAM针对TC1设计了特殊信道以及高优先级指示空间,专门用于TC1数据的紧急及时传输。当信道数较少时,EOAM中TC2的平均延时要略高于DCA中的ClassⅢ,这是由于EOAM是基于占空比机制和随机信道选择机制;然而随着信道数的增加,EOAM中TC2的平均延时逐渐小于DCA的延时结果,这是由于控制信道的饱和问题在DCA中愈加严重,而EOAM基于接收端开始的介质访问机制则在一定程度上避免了控制信道饱和问题。可靠性以包传输成功率表示,即成功传输的报文占总报文数的比例。由图8可知,EOAM能够满足TC1和TC2的可靠性要求;并且,随着信道数的增加,包成功传输率显著增大,最终都能达到0.95~1。能耗定义为成功传输一个字节所消耗的能量。由图9可知,随着信道数的增加,EOAM的能耗逐渐降低,且明显低于DCA的能耗。其中,能量消耗单位为10-7mW·h,这主要由于EOAM采用基于异步占空比的睡眠机制。
4结语
工业应用无线传感器网络中存在大量优先级不同的紧急数据。本文针对多信道条件下的工业紧急数据的实时、可靠传输问题,首先面向不同优先级紧急数据的单播通信过程,设计了一种基于接收端的调度方法,避免了控制信道饱和问题,在快速切换信道的前提下,保证紧急数据的实时性和可靠性需求;进而将该算法扩展到研究紧急数据的广播通信中。实验结果表明,该算法在实时性、可靠性和能耗方面具有较好的性能。下一步研究将综合考虑紧急数据的传输对于其他数据传输的影响,并针对工业无线网络中的各类数据的实时可靠传输,设计多优先级数据综合调度方法。
作者:杨莉 张晓玲 梁炜 朱立忠 单位:沈阳理工大学 中国科学院