基于异步调度的低延时无线传感器网络MAC协议*

2019-06-05 06:11纪鹏菲陈佳品
传感器与微系统 2019年6期
关键词:前导延时间隔

吴 戈, 纪鹏菲, 张 铮, 陈佳品, 丁 凯

(1.上海交通大学 电子信息与电气工程学院 微纳电子学系薄膜与微细技术教育部重点实验室,上海 200240;2.无锡近地面感知与探测重点实验室,江苏 无锡 214035)

0 引 言

智能障碍场无线传感器网络(intelligent obstacle field wireless network,IOFWN)是通过预先投放智能雷形成雷场,对经过雷场的敌方作战单位进行准确打击、阻碍其通行的自主防御系统,IOFWN中MAC协议的选取,对整个网络的性能和生命周期有着举足轻重的影响。传统基于时间同步调度的MAC层协议,需要采用精度较高的时间同步措施以及周期性地对其进行维护。利用全球定位系统(global positioning system,GPS)模块等方法实现全网时间同步能获得较高的时间同步精度,但周期性的重同步会消耗大量电能,降低了节点的生命周期。

基于前导码采样的MAC层协议,不需要维护同步调度,具有协议复杂度低,空闲侦听能耗低等优点[1]。B-MAC是基于前导码采样的MAC层协议,具有协议复杂度低、空闲侦听能耗低等优点,不需要维护同步调度,但其需要发送长且连续的长度可变的前导序列。这和目前流行的基于IEEE 802.15.4的射频芯片[2]不兼容,其只能发送短的固定长度的前导码。

本文提出一种EB-MAC协议,采用重复发送数据包或包含目标地址的短前导包来替代过长的前导码[4]。由此缩短了前导序列的传输长度,提高了能效性。

1 EB-MAC协议策略设计

智能障碍场中所有智能雷节点具有相同的信道采样间隔,智能雷节点的时间模块根据协议预设的采样间隔,通过定时控制,保证节点唤醒检测信道的时间间隔不变。节点唤醒后检测信道状态,节点中时间模块开始计时,若监测到信道有需要接收的数据,则让节点进入接收数据模式,同时时间模块停止计时,等数据接收完毕,节点进入睡眠状态;若信道空闲,没有数据需要接收,则在时间模块到达预置的信道检测持续时间后,节点进入睡眠状态;当时间到达预设的唤醒周期后,节点再次唤醒开始检测信道状态,时间模块重新开始计时[3]。

实验室应用于智能障碍场制作的模拟智能雷采用德州仪器公司生产的CC2520芯片,CC2520芯片兼容IEEE 802.15.4标准,在传输的数据中,该芯片附加发送节点自身的时间模块的数值,此附加过程开销很小。图1为数据的发送和接收过程。发送过程中,前导序列的头部是数据帧的起点,帧开始符(SFD)紧随其后,当SFD发送后,节点的微处理器会获取节点时间模块中计时器的时间,将时间值记录在本地,并添加到数据帧的尾部。在接收过程中,数据接收节点接收到帧开始符时,节点的微处理器也会获取计时器输出的时间值,将其记录下来。网络节点在空间中信号的传播延时很短,而帧开始符位于数据帧的头部位置,因此,数据发送和接收节点所记录的时间差值在微秒(μs)级[6]。

图1 数据帧的时间同步

当接收节点接收完数据后,获得数据帧尾记录的发送时间值,可以得到发送节点和接收节点的时间模块的差值,则数据接收节点先将该差值减去,此时两个节点的唤醒时间理论上几乎一致。但数据发送节点在唤醒后需先进行信道检测,此时数据接收节点在信道中检测不到数据,会造成空闲侦听,产生多余能耗。因此接收节点的时间模块需减去一个退让时间τ,使得数据接收节点的唤醒时间滞后于数据发送节点的唤醒时间,由此可以减少数据的传输延时[5]。在多跳通信中,中继节点只有完全接收完上一节点发送的数据,才会进入数据发送模式,将数据转发给下一节点,退让时间τ需要大于载波侦听时间、数据确认报文接收时间、数据接收时间和节点睡眠延时之和。数据接收节点完成数据接收以后,继续检测信道,若在预置的时间范围内没有数据需要处理,则节点进行休眠。

如图2(a)所示,多跳路径上的数据传输情况也采取这种策略[6],数据接收节点的唤醒总是比数据发送节点晚一个退让时间τ。

智能障碍场中的数据传输是双向进行的,其时间调度如图2(b)所示。智能雷节点双向通信时,在传输的数据中,会加入换向标志。当中继节点接收数据时,若有换向标志,将数据发送出去后,节点将唤醒调度时间加2τN,其中N为中继节点距离远程上位机的传输跳数[7]。当节点0发送完数据后,通过唤醒调度时间的叠加,当最后一个中继节点转发完数据时,该条路径已经完成了反向传输的唤醒调度时间准备,且路径上各个节点无需再根据数据帧时间字段调整自己的唤醒时间,节省了节点开销,降低了数据传输延时。

图2 多跳路径数据传输与双向通信的时间调度

2 EB-MAC协议能耗分析

使用B-MAC策略,第n个节点传输第j次传输数据时,通过求和函数可以得到该路径上节点消耗的总能量,即

Ptxtack-PsLdtb-Pstack-Pstc-Pstl)

(1)

同理使用EB-MAC策略该路径上节点消耗的总能量为

(Prx-Ps)(Ld+2)tb+Ptxtack-Pstack-Pstc-Pstl]

(2)

求差可以得到总消耗能量差为

(3)

对ΔE求期望得到

(4)

两者的总消耗能量差由前导码序列的长度决定,而由于EB-MAC的调度机制τ远小于前导码序列的长度,故在多跳路径下,EB-MAC的整体能耗要小很多[9]。

3 实验仿真与结果分析

仿真实验采用基于CC2520的模型,在MATLAB上进行仿真,也直接与B-MAC的各项性能指标对比,仿真时设定数据传输为典型值100 kb,路径上共设置10个节点,唤醒周期为1 s,相邻节点的唤醒时间调度间隔为0.1 s。

如图3(a)为汇聚节点端到端延时随数据产生间隔的变化,数据传输间隔减小,网络通信负载增加,端到端延迟也随之增加。数据传输间隔为2 s时,端到端延迟随时间变化如图3(b),在数据传输频率不变时,EB-MAC协议端到端延时几乎没有增长,而B-MAC协议端到端延时迅速增长。

图3 端到端时延与传输间隔及2 s间隔下随时间变化

如图4所示为多路径节点能耗随数据传输频率的变化,随着数据传输频率的增加,节点能耗随之迅速增加,仿真曲线验证了两者的关系,当数据传输频率为2 s时,EB-MAC协议的节点能耗为0.38 mW,B-MAC协议的节点能耗为1.36 mW,此时B-MAC协议的能耗已经不满足智能障碍场的应用要求。

当数据传输为双向,同时加入ACK确认报文保障数据传输的稳定性,再模拟端到端延时随数据传输间隔的变化,结果如图5所示,加入了ACK确认报文后,数据传输的稳定性提高,传输延时降低,加入了ACK确认报文的B-MAC协议的数据延时,比未加入ACK确认报文的EB-MAC协议大。

图5 加入确认报文时端到端延时随数据传输频率的变化

如图6为多路径下节点丢包率随数据传输频率的变化,在网络通信负载较低时,即数据传输频率大于10 s时,B-MAC协议和EB-MAC协议丢包率都处于较低水平;当数据传输频率小于5 s时,网络内信道的竞争更频繁,数据碰撞概率增加,丢包率上升。当数据传输频率为2 s时,B-MAC协议丢包率接近60 %,已无法满足智能障碍场性能需求。

图6 节点丢包率随数据传输频率的变化

如图7所示为不同的数据传输间隔,成功完成50次数据传输的能耗,和单路径数据传输相似,EB-MAC协议完成50次数据传输能耗稳定,B-MAC协议,随数据传输间隔的减少,节点丢包率上升,数据重传增加,节点能耗随着数据传输间隔的减少而增加。

图7 能耗随传输频率的变化

由如图8可见,采用EB-MAC协议的节点剩余电量,始终比采用B-MAC协议的节点电池容量要多,验证了EB-MAC协议在网络生命周期上的优势。

图8 节点剩余电量随时间的变化

4 结 论

仿真和实验结果表明:EB-MAC协议策略有效地减小了前导码序列的长度,在保持低占空比的同时,降低了端到端的通信延时,无需全网时间同步,能满足智能障碍场的应用需求。

猜你喜欢
前导延时间隔
间隔问题
基于级联步进延时的顺序等效采样方法及实现
基于“三思而行”的数学章前导学课设计——以《数的开方》(导学课)为例
日光灯断电关闭及自动延时开关设计
间隔之谜
一种S模式ADS-B前导脉冲检测方法
第四代移动通信随机接入前导方案优化
Two-dimensional Eulerian-Lagrangian Modeling of Shocks on an Electronic Package Embedded in a Projectile with Ultra-high Acceleration
上楼梯的学问
桑塔纳车发动机延时熄火