徐晓冰,夏 吉,李奇越,孙 伟,罗国军
(合肥工业大学电气与自动化工程学院,安徽合肥 230009)
随着人们对无线服务需求的增加,WiFi和ZigBee技术已被应用于各种类型的设备中。其中,ZigBee技术具有自组织、短距离、低成本、低功耗、低复杂度以及易部署等优点,被广泛应用在智能家居等领域,而 WiFi是一种以无线方式连接个人计算机、移动终端等设备的技术,应用的场景越来越多[1]。在智能家居的环境中,WiFi网络和ZigBee网络都部署在相同的环境中,但两者都在2.4G Hz的免费ISM频段上工作,所以ZigBee网络中WiFi信号产生同频干扰的问题是不能忽视的[2-3]。且 WiFi的功率与ZigBee的功率不是同一数量级的,因此WiFi信号更容易对ZigBee网络产生强干扰,严重影响 ZigBee网络的可靠性和吞吐量。
为了避免来自WiFi信号的干扰,目前的解决方法可分为避免和共存两种策略,干扰避免指的是通过扫描信道寻找到相对安静的工作信道,避开WiFi的干扰[4];共存是指预测WiFi的工作时隙,在WiFi可能的空闲时隙发送ZigBee数据[5]。文献[6]提出了一种基于概率的载波侦听多路访问(CSMA)控制算法,该算法计算接收端节点包接收率,通过反馈包机制将包接收率发送给发送端节点,发送端节点根据包接收率的大小判断网络干扰的强弱,并通过预先设置概率函数选择开启或者关闭 CSMA,但是该算法在干扰强时无法解决干扰问题。文献[7]提出了一种多信道冲突避免策略,当ZigBee网络部分节点因干扰而无法通信时,利用ZigBee的多信道特性,使孤立节点跳频至其他信道加入网络,确保孤立节点不脱离网络,该算法需要同时配置多个网络协调器,成本较高。文献[8]提出了一种基于信道状态预测的干扰避免算法,该算法采用隐马尔科夫模型(known-state sequence hidden Markov model,KSS-HMM)预测下一时刻ZigBee网络的16个信道状态,根据信道状态的优劣动态地调整ZigBee网络的工作信道,但是该算法的评估参数仅选取了接收信号强度,不能准确预测未来信道的状态。此外,加强ZigBee节点的发射功率,虽然可以有效提升通信能力、降低误码率、保证通信质量,但是ZigBee节点一般由电池供电,提升节点收发器的功率会增大节点的消耗,将致使该节点工作时长缩短[9]。基于时分多址(TDMA)的协同工作方式[10]则需要在网络中安装一个双模式设备协调器,该设备的收发器同时支持IEEE 802.11b和IEEE 802.15.4两种协议,用来协商两系统之间各自的通信时间片,以保证ZigBee网络的信道质量。
本文针对以上问题,以ZigBee节点的信道选择优化为切入点,对强WiFi信号干扰时信道切换原理进行分析,并采用已知状态序列的隐马尔可夫模型,预测信道未来的空闲概率与时间期望(prediction of the channel idle time,PCIT)。各个信道的空闲时间期望更新ZigBee无线传感网络的备选信道序列,下一个时刻的信道空闲概率决定是否执行信道切换操作,使ZigBee无线传感网络工作在最安静的信道上,避免强WiFi信号的干扰。
如图1所示,一个完整的ZigBee协议栈应该包括应用层(APL)、网络层(NWK)、介质访问控制层(MAC)和物理层(PHY),IEEE 802.15.4标准定义了其中的物理层和介质访问控制层,在此基础上,ZigBee标准定义了上层的网络层和应用层。
图1 ZigBee协议栈结构图
IEEE 802.11b定义了Wi-Fi 的物理层和介质访问控制层,它是目前广泛使用的无线局域网标准。如图2所示,在IEEE802.11b的全部信道中,在我国默认使用1号、6号、11号3条彼此无覆盖的信道,由此可知,在2.4 GHz频段中,最多只有4个ZigBee网络信道不与IEEE 802.11b默认设置的信道重叠。在实际应用中,考虑到ZigBee网络设备会布置在各种场景中,强WiFi信号很容易对ZigBee网络产生干扰,如果此时ZigBee随机切换信道,切换的信道可能还处于强WiFi信号的干扰下;若持续扫描ZigBee设备所处信道的忙闲状态和其他没有在使用中的ZigBee信道的忙闲状态,此时,节点不断尝试发送扫描帧,这严重的占用了 ZigBee节点的可用资源,包括其计算资源和电池电量。因此,一个优良的信道选择方法既能够减少信道切换的次数,又能在目标信道中满足ZigBee网络的通信质量。
图2 信道分布图
隐马尔可夫模型(HMM)是一个双重随机过程,一个是具有一定状态数的隐马尔科夫链,另一个是可观测的随机函数集。HMM可以用2个状态集合和3个状态矩阵来描述,即λ={S,O,π,A,B}。其中S为HMM中的隐含状态集,该状态元素无法通过直接观测得到,并且它们之间满足马尔科夫性质。设S是由N个状态组成的隐藏信道状态集,S={Si,i=1,2,3,…,N},且在时间点t的信道状态xt∈S。O为观测到的信道状态集,设由M个状态组成,在时间点t观测到的信道状态yt∈O。π={πi}是信道初始状态分配矩阵,A={aij}是信道状态转移概率矩阵,B={bj(k)}表示由ZigBee设备观测到的信道状态为yk∈O,而隐藏信道状态为sj∈S的条件概率矩阵。
(1)
图3 已知状态序列隐马尔可夫模型
(2)
式中:φmn、φkn为转移概率。
信道状态转移概率矩阵为A={aij}。
aij=Pr(xi=Si|xi-1=Sj)
(3)
时间T内的观测数据可用于计算等式(1)和(2)。
条件概率矩阵B={bj(k)},其中:
(4)
在2.4 GHz无线网络中,WiFi网络的干扰可以假设为PRP M/G/1排队网络模型[12],即可设定其干扰过程服从泊松分布λp,干扰时间遵循指数分布μp。
在ZigBee网络的16个信道中,从t=1到t=T,隐藏状态观察序列的概率为
(5)
其中x0是时间t0处信道的隐藏信道状态。在给定的隐藏状态序列xT下,从t=1到t=T,观测状态序列yT的条件概率为
(6)
根据乘法准则和边际分布定律,观测序列yT的概率为
(7)
在KSS-HMM模型中,历史隐藏状态和检测到的信道状态是确定的。 因此,如果ZigBee网络设备在时间t0执行信道切换,则信道时隙时间T1的观测序列的概率为
(8)
(9)
其中y2T2是时隙时间T2的观测状态序列,即y1T2={yt,t=t0+1,…,t0+T2,yt∈O}。从时间t0-T1+1到t0+T2的时隙时间T1+T2的联合概率为
Pr(y1T1,y2T2)=Pr(y1T1)·Pr(y2T2)=
(10)
基于上述预测,ZigBee网络是否应该执行从信道 切换到新信道的的判断标准可以表示为
Prm(y1T1,0)<τL
(11)
式中τL为信道被视为忙碌的阈值。
同时,如果以下不等式成立表示信道l将是空闲的:
Prl(y1T1,0)>τH
(12)
式中τH为信道被视为空闲的阈值。
基于已知的观测序列y1T1,未来时间中信道空闲时间的期望为
(13)
最后,假设SA是包含所有可用信道的集合,则可以基于以下条件选择最佳信道Ch:
Ch=argmaxl∈SA[E(T)l]
(14)
在强WiFi信号干扰的情况下,本文设计的ZigBee无线传感网络设备的信道切换具体过程如下:
(1)在ZigBee网络协调器形成网络后生成一个备选信道序列,并将该序列广播到网络的其他节点,其他节点根据接收到广播帧的内容获取备选信道序列。
(2)基于本文提出的已知状态序列的隐马尔可夫模型,利用信道状态的历史信息预测信道未来的空闲时间期望。
(3)当预测的空闲时间概率小于阈值时,意味着此时信号受到干扰,根据本文提出的PCIT算法选取最佳的几个备选信道替换初始的备选信道序列。
(4)协调器更新信道序列并广播到网络其他节点,其他节点收到该广播帧后更新本地的信道序列。
(5)该ZigBee网络节点根据当前的备选信道序列切换到新的信道,实现全网同步跳信道。
为了验证本文所涉及的算法,建立ZigBee网络通信模型,如图4所示。该模型有1个ZigBee网络协调器,2个终端节点设备,2个WiFi收发设备。
图4 ZigBee网络通信模型
实验采用CC2530核心芯片、Z-stack.2.5.1a协议栈,并使能ZigBee无线传感网络的所有信道,不启用功率放大功能,ZigBee网络协调器与终端设备采用星形连接的网络拓扑方式。为了研究WiFi为ZigBee网络通信质量的影响,首先测量无干扰时ZigBee网络11至26信道一定距离下的接收信号强度(RSSI)与包接收率,其次,WiFi的通信信道设置为1,将ZigBee的信道11~14完全覆盖,此时再测量RSSI值与包接收率,实验结果如图5、图6所示。
图5 各个信道下的RSSI值
图6 各个信道下的包接收率
由图5、图6可知,RSSI值正常维持在-52 dBm左右,包接收率无干扰时接近1。当受到WiFi 设备1信道信号干扰时,RSSI与包接收率明显降低;RSSI值与包接收率具有很高的相关度,可以作为评判ZigBee网络性能的一个重要指标。
在同样的环境中不断的改变WiFi的信道,即WiFi的信道号由1信道至13信道不断随机改变,模拟来自IEEE 802.11b标准定义的2 412 MHz至2 472 MHz频段的干扰,模拟实验中改变WiFi干扰信号的到达率,经MATLAB软件仿真可得出基于PCIT的信道切换次数,并与常见的信道切换方法作比较,仿真参数如表1所示,切换次数如图7所示;经本文PCIT信道切换方法后的包接收率结果如图8所示。
表1 PCIT仿真参数
图7 不同的WiFi信号干扰率信道切换的次数
由图7可知,在不同的WiFi信号干扰到达率λ的情况下,随着λ的增加,切换次数随之增加。因为λ增加,意味着WiFi信号干扰的概率越大,此时ZigBee设备为了满足通信质量会不断切换信道。此外,本文的基于PCIT的信道选择方法比常用的随机切换方法的信道切换次数明显降低,较智能切换方法当λ=0.06时,降低了24.9%,λ=0.20时,降低了22.1%。由图7可知,λ越大,即干扰概率越大时,信道切换的次数降低的越明显。
图8 WiFi干扰时包接收率对比
由图8可知,在有WiFi干扰的情况下,不跳信道的包接收率仅维持在0.27左右,常用的信道跳转算法维持在0.76左右,PCIT信道选择算法维持在0.84左右,由此得知本文提出的PCIT信道选择算法切换信道后提高了包接收率,即在强WiFi干扰时能提高ZigBee网络抗干扰能力。
本文研究了在2.4 GHz强WiFi干扰下的ZigBee无线传感网络信道切换机制,为此,提出了一种基于已知状态序列的隐马尔可夫模型的PCIT ZigBee无线传感网络信道选择方法,该算法中,通过预测未来一段时间内每个信道空闲时间的期望选择最佳的切换信道。仿真结果表明,在受到较强干扰的情况下,与常用的切换方法相比, PCIT切换方法降低了信道切换次数,提高了包接收率。今后的研究中将进一步优化信道的预测方法,考虑实际应用中各个信道的利用率、漏检率对信道切换的影响。