徐利明,付敬奇,苏 伟
(上海大学 机电工程与自动化学院,上海200072)
无线传感器网络(wireless sensor networks,WSNs)中媒体介质访问控制(medium access control,MAC)协议处于无线传感器网络协议的底层部分,主要用于控制传感器节点间公平有效地共享通信信道,对传感器网络的性能有较大影响,是保证无线传感器网络有效通信的关键网络协议之一。工业现场复杂恶劣的环境、多径干扰、电磁干扰等对数据传输的可靠性、实时性、网络的稳定运行提出更大的挑战,因此,需要研究适用于工业监测的MAC协议。
目前,无线传感器网络MAC协议设计的主要目标是在保证传输延时和数据吞吐量的基础上,减少由于冲突和空闲监听带来的能量消耗。但在工业监测中,数据传输的可靠性更加重要。MAC协议一般可以分为基于竞争的CSMA/CA协议和基于TDMA协议[1]2种。典型的基于竞争S-MAC[2,3]协议,它在基于竞争的MAC协议基础上引入了工作/休眠机制,将时间分为工作和休眠2个阶段。除此之外,基于竞争的MAC协议还有T-MAC,Sift-MAC等协议,这些基于竞争的MAC协议往往只从发送数据的节点考虑问题,尤其当负载增加时,对整个网络的能耗、时延以及数据可靠性都会产生很大的影响。基于时分复用的MAC协议采用为每个节点分配独立的用于数据发送或接收的时隙(time slot),节点在空闲时隙能够及时转入休眠状态。基于TDMA的MAC协议[4]设计主要在于时隙长度的设置和时隙的管理调度问题上,VENKATESH提出的基于TDMA的流量自适应MAC协议TRAMA[5,6],以流量信息来分配时槽长度,但具有特定功能的传感器节点采集数据长度是固定的。工业现场恶劣环境,多种干扰直接影响通信链路,进而影响数据传输的可靠性,Phua V[7]提出的基于TDMA的时隙调度算法,通过链路质量对信道质量进行预测并判断信道的好坏,选择是否发送数据,但是不能忽略工业环境常常存在的突发干扰。某些工业监测应用中,有时需要获取同一时刻几个传感器节点的数据进行综合分析,所以,需要保证每个传感器节点的数据可靠传输。
本文提出了一种动态时隙分配(DSA)的自适应MAC(DSA-MAC)协议,在对无线通信链路质量评估的基础上,动态调整时隙长度,并且在发送数据时加入了基于接收信号强度指示(received signal strength indicator,RSSI)的自适应功率调整机制,该协议在提高数据传输可靠性前提下,也能保证整个网络的能耗、时延、吞吐量等性能。
传感器节点周期性地采集数据,在网关分配的时隙内进行数据传输,在传输过程中由于工业现场环境干扰等原因,使信道质量受到影响,从而影响节点数据的传输[7]。在发送时隙结束时,数据还未发送成功,则产生丢包,影响对工业现场的监测。如果扩大时隙长度,则会导致在环境状况良好时,使节点在时隙结束前完成了数据的成功发送和应答帧的接收,一方面增大无线传感器节点的能耗,另一方面降低了MAC协议的扩展性,使得整个网络的时延增大。所以,需要根据现场环境变化或突发状况估计通信链路质量,动态调整传感器节点发送数据的时隙长度,保证数据传输的可靠性,并兼顾整个网络的能耗、时延和扩展性。
因此,DSA-MAC协议在对链路质量估计的基础上,当链路质量较差时,传感器节点重发数据的次数可能增多,需要扩大时隙长度来保证数据可靠发送。如果节点时隙结束前发送数据成功,则提前进入休眠以节省能耗。DSA-MAC协议结构如图1所示。
图1 DSA-MAC协议帧结构Fig 1 Frame structure of DSA-MAC protocol
1)链路质量估计
目前,无线芯片大多数可以在硬件上实现链路质量检查。一种是通过直接对射频信号进行A/D转换,得到RSSI,另外一种是通过RSSI进行频率补偿和过滤等操作之后得出的链路质量指示(link quality indicator,LQI)[8]。RSSI用于链路评估时,变化灵敏但精度不高,尤其在环境突变时。LQI比RSSI能够更加准确地反映出链路通信质量的好坏。
通过采样的LQI平均值来估计链路质量[8]的好坏,但是信道质量是动态变化的,最近采样的LQI重要性要大于过去采样的LQI值,所以,采用指数加权的移动平均方法来计算均值LQI,计算公式如下
2)时隙长度计算
链路质量的好坏影响数据包接收率(packet reception rate,PRR)的高低,当链路质量下降时数据包接收率下降,使数据包需要重发的次数增多,因此,需要扩大时隙长度保证数据包的准确传输。根据对链路质量进行估计,设定均值LQI的临界值,当均值LQI低于临界值时,认为链路质量较差需要扩大时隙长度,当均值LQI高于临界值时链路质量较好,不需要扩大时隙长度。计算时隙长度如下式所示
其中,β>1为时隙长度扩大的倍数。
3)自适应功率调整
无线传感器节点在实际工作中,分为接收数据、发送数据、等待、休眠4个状态,发送数据的电流最大,而且在不同的发射功率下传感器节点在发送数据时的电流也不同。另外,无线传感器节点在工作时与网关的距离各不相同,如果与网关距离较近而选用较高的发射功率,虽然网关能以较高的信号强度收到数据,但因过高的功率而使节点的能耗过大,缩短了节点的工作寿命;反之,如果距离相对较远,或中间有阻挡物的节点,选用较低的发射功率影响数据的成功传输。所以,在确保无线传感器网络通信可靠的前提下,动态调节节点发射功率,实现节点的低功耗。因此,节点的长距离传输和节点的低功耗是一对矛盾体,如何平衡好节点的传输距离和节点功耗之间的关系,对于发射功率的调整至关重要。
无线传感器节点入网时,将发射功率调整到最大以保证能够成功入网,在入网成功后节点进入正常的工作周期。网关获取接收到数据的信号强度RSSI后,根据设置的信号强度上下限值RSSI-Threshold-high和RSSI-Threshold-Low调整功率规则如下式所示
由式(3)可以得出:当网关接收到节点的信号强度大于阈值上限时,使节点降低一级发射功率;当信号强度在阈值上下限之间时,保持发射功率不变;当信号强度小于阈值下限时,则增加一级发射功率。节点进入正常工作时隙,采用调整后的节点发射功率进行数据发送。由于环境的变化,节点的接收信号强度仍然会产生波动,因此,需要设置信号接收强度的上下限来调整节点的发射功率。节点自适应调节发射功率,使节点的接收强度满足阈值要求,实现节点的低功耗。
4)MAC协议运行流程
MAC协议的运行流程主要包括测试阶段和运行阶段,网络拓扑形成以后首先进入测试阶段,由传感器节点向网关连续发送数据,网关获取每个节点的均值LQI值。在运行阶段,网关收到传感器节点采集的数据后,获取数据帧中的LQI和RSSI值,计算出值,与临界值比较后获得传感器节点在下个采样周期的时隙长度,另外,通过RSSI值判断节点在下个周期的发射功率是否需要调整。网关根据节点的ID号顺序,将相应的时隙长度和功率调整值写入时隙分配帧,如图2所示。
图2所示时隙分配帧中“0”表示采用普通时隙长度,“1”表示采用扩大的时隙长度。传感器节点在收到时隙分配帧以后根据自身节点ID,累加小于自身ID号的时隙位值,计算获得该ID节点发送数据的时间偏移量和发送数据的时隙长度。同样,在功率调整值中,节点根据ID,获取对应的功率调整值,每个节点占用2 bits,分别是“00”表示保持原有发射功率,“01”表示增大一级发射功率,“02”表示减小一级发射功率。MAC协议的具体运行流程如图3所示。
图3 MAC协议运行流程图Fig 3 Operation flow chart of MAC protocol
本文提出的DSA-MAC协议在TI公司的CC2530上实现[9],CC2530含有高性能和低功耗的增强型8051微控制器,集成符合IEEE 802.15.4标准的2.4 GHz的RF无线收发模块。在无线传感器节点实现方面,基于CC2530传感器节点功能模块组成如图4所示,主要由传感器、处理器、无线通信和能量供应模块四部分组成。
图4 传感器节点硬件模块结构Fig 4 Hardware module structure of sensor node
传感器模块主要负责采集工业设备上的温度信息,通过信号调理把模拟信号送到处理器模块。处理模块主要负责对传感器模块采集的模拟信号进行A/D转换,并将转换后的数据根据协议栈进行数据帧的装载。射频模块主要包括对无线射频信号的接收和发送。能量供应模块为传感器模块和处理模块提供能量。
无线传感器网络由1个网关管理32个传感器节点,节点以1 min为采集周期,并将数据发送给网关。网关通过串口与上位机进行通信,并通过串口监控软件对网络进行监控。该网络系统经过冶金工业现场连续运行测试,数据统计处理结果如图5所示,表明采用动态时隙分配的DSA-MAC协议的网络系统比固定时隙长度TDMA MAC协议的网络系统在包传输率上提高了很多。另一方面DSA-MAC协议在采集周期中,每个周期的网络工作时间缩短,在节省能耗的同时也增加了网络的扩展性和降低了网络传输的时延。
图5 数据包接收率Fig 5 Packet reception rate
图6为DSA-MAC协议中的自适应功率调整机制的测试。为了高效地测试节点电池的消耗情况,将同一个传感器节点分别选择最小发射功率、最大发射功率、自适应调整发射功率3种功率进行测试,节点以1 min的发送数据周期,并对数据包中的电池电压值进行统计。连续测试85 h后,电池电压的变化情况如图6所示,从中可以看出:采用自适应调整功率机制后的节点能量消耗明显慢于采用最大发射功率下的消耗。另外,与最小发射功率相比,虽然电池消耗快于最小发射功率下的电池消耗,但是通过统计可以发现在数据包接收率上明显要好于最小发射功率的节点。所以,选择自适应调整功率机制不仅可以节省能耗,延长工作寿命,还能保证一定的数据包接收率。
图6 电池能量消耗Fig 6 Battery energy consumption
本文主要针对工业监测现场环境恶劣,干扰复杂频密的特点,提出了一种动态调整传感器节点发送数据时隙长度的DSA-MAC无线传感器网络自适应MAC协议,目的在于提高数据传输的可靠性。另外,在该自适应MAC协议中加入了功率自适应调整机制,延长网络的工作寿命。并将该协议在无线射频芯片CC2530上实现。最后,将该网络系统在冶金工业生产现场进行通信和组网测试。测试结果表明:本文提出的DSA-MAC协议提高了数据传输率,另外,该MAC协议在能耗、扩展性、时延上的性能都比固定时隙的TDMA MAC协议要好。
[1]赵巍,瞿志华,彭军.无线传感器网络中采用预约机制的MAC协议改进[J].计算机应用研究,2010,27(7):2716-2718.
[2]Wei Y,Heidemann J,Estrin D.Medium access control with coordinated adaptive sleeping for wireless sensor networks[J].IEEE/ACM Trans on Networking,2004,12(3):493-506.
[3]李运鹏,徐昌彪,刘琳.无线传感器网络中一种竞争窗口自适应MAC协议[J].传感器与微系统,2010,29(1):50-52.
[4]Ceken C.An energy efficient and delay sensitive centralized MAC protocol for wireless sensor networks[J].Computer Standards&Interfaces,2008,30:20-31.
[5]Rajendran V,Obraczka K,Garcia J J.Energy-efficient,collisionfree medium access control for wireless sensor networks[J].Wireless Networks,2006,12:63-78.
[6]王艳丽,庞伟正,李岳霖.基于时分复用的无线传感器网络MAC协议研究[J].传感器与微系统,2006,25(12):3-5.
[7]Phua V,Datta A,Cardell-Oliver R.A TDMA-based MAC protocol for industrial wireless sensor networks applications using link state dependent scheduling[C]∥Global Telecommunications Conference,2006:1-6.
[8]Zhang X Y,Zhao H,Zhu J,et al.LQI based link evaluation algorithm and its application in wireless sensor networks[J].Journal of Northeastern University:Natural Science,2005,29(2):1693-1696.
[9]CC253x system-on-chip solution for 2.4 GHz IEEE 802.15.4 and Zig Bee applications user’s guide[EB/OL].[2009-04-18].http:∥www.ti.com/lit/ug/swru191c/swru191c.pdf.