劉盛堯,高淑春,于海霞
(合肥職業(yè)技術(shù)學(xué)院 信息工程與傳媒學(xué)院,安徽 合肥 230013)
ZigBee 網(wǎng)絡(luò)是一個(gè)基于IEEE 802.15.4 規(guī)范的通信協(xié)議,用于家庭自動(dòng)化、工業(yè)設(shè)備控制、醫(yī)療數(shù)據(jù)采集和其他低帶寬需求的無線局域網(wǎng)。隨著物聯(lián)網(wǎng)設(shè)備以及網(wǎng)絡(luò)的普及,設(shè)備在物聯(lián)網(wǎng)中的部署不斷增加,ZigBee 網(wǎng)絡(luò)中出現(xiàn)了與其他網(wǎng)絡(luò)之間的干擾問題。
目前很多研究在討論增強(qiáng)ZigBee 的安全性,緩解干擾的解決方法,一般分為避免和共存兩種。文獻(xiàn)研究了ZigBee 網(wǎng)絡(luò)在受到無線Wi-Fi 網(wǎng)絡(luò)干擾時(shí),單個(gè)網(wǎng)絡(luò)中的節(jié)點(diǎn)通過信道分配來避免干擾。Kho等人提出了一種基于信道跳變的干擾避免方法,來提高 ZigBee 網(wǎng)絡(luò)通信的包接受率。Huang等人利用Pareto 模型來預(yù)測(cè)Wi-Fi 信號(hào)的分組間隙,然后去動(dòng)態(tài)的調(diào)整ZigBee 數(shù)據(jù)包的分組長(zhǎng)度,在Wi-Fi 分組的間隙發(fā)送ZigBee 的分組,使兩個(gè)不同網(wǎng)絡(luò)數(shù)據(jù)包相互交替發(fā)送,達(dá)到共存。張招亮等提出了一種基于干擾強(qiáng)度和活躍比率干擾特征模型的信道分配機(jī)制,利用信道分配算法使得環(huán)境中所有無線網(wǎng)絡(luò)通信質(zhì)量最優(yōu),實(shí)現(xiàn)相互共存。但是以上方法多為單一的Wi-Fi 干擾研究,在強(qiáng)干擾時(shí),抗干擾效果還有待改善,以往研究很多通過調(diào)整合適的距離,或者頻偏來指導(dǎo)ZigBee 網(wǎng)絡(luò)的部署,但這在宿舍,家庭等人們居住的生活場(chǎng)景下不太適用。
本文,為了在干擾信號(hào)的情況下解碼ZigBee 信號(hào),提出了一種基于學(xué)習(xí)的干擾抑制方法,該方法在物理層使用神經(jīng)網(wǎng)絡(luò),此神經(jīng)網(wǎng)絡(luò)作為一個(gè)線性空間濾波器來抑制干擾,而不需要對(duì)干擾有任何了解。需要解決的是如何訓(xùn)練神經(jīng)網(wǎng)絡(luò),使其能夠?qū)崟r(shí)解碼數(shù)據(jù)包。為了解決這一問題,采用了一個(gè)小型的沒有隱藏層的神經(jīng)網(wǎng)絡(luò),并利用內(nèi)在關(guān)系對(duì)其進(jìn)行了優(yōu)化。
ZigBee 無線個(gè)域網(wǎng)絡(luò)的構(gòu)成,一般由一個(gè)ZigBee 網(wǎng)關(guān)服務(wù)于一個(gè)或多個(gè)ZigBee 設(shè)備,在這個(gè)網(wǎng)絡(luò)中有一些其他的無線信號(hào)形成了干擾源,干擾了ZigBee 的無線通信,對(duì)這些干擾源有以下假設(shè):
(1)ZigBee 的接收設(shè)備不知道干擾信號(hào)的帶寬、波形和幀格式;
(2)干擾信號(hào)的帶寬可以大于、等于或小于ZigBee 信號(hào)的帶寬;
(3)干擾信號(hào)的波形可能會(huì)隨時(shí)間變化。
對(duì)于這些干擾信號(hào),其目標(biāo)是確保ZigBee 設(shè)備的無線通信不受無線電干擾攻擊,本文設(shè)計(jì)了一種神經(jīng)網(wǎng)絡(luò)過濾干擾信號(hào),在存在未知干擾的情況下解碼數(shù)據(jù)包,而不需要任何干擾知識(shí)。
ZigBee 是基于IEEE 802.15.4 標(biāo)準(zhǔn)的,工作在免許可的2.4 ~2.483 5 GHz(全球),902 ~928 MHz(北美和澳大利亞),868 ~868.6 MHz(歐洲)頻段.我國(guó)使用2.4 GHz頻段,段內(nèi)分配了16 個(gè)信道,每個(gè)信道使用2 MHz 帶寬每個(gè)信道間隔5 MHz。無線電使用直接序列擴(kuò)頻編碼(DSSS)以及偏移正交相移鍵控調(diào)制(O-QPSK),如圖1所示為2.4 GHz 調(diào)制和擴(kuò)展功能。每4 個(gè)bit 流數(shù)據(jù)映射成一個(gè)符號(hào),共2=16 種不同的符號(hào),接著每個(gè)符號(hào)映射成32 個(gè)碼片組成的一個(gè)PN 序列。PN 序列中的碼片被看成是半正弦脈沖,并通過O-QPSK 整形后調(diào)制到載波上,并分別將下標(biāo)為奇數(shù)的調(diào)制到Q 路正交支路上,將下標(biāo)為偶數(shù)的調(diào)制到I 路同相支路上。
圖1 2.4 GHz 調(diào)制和擴(kuò)展功能圖
如圖2,按照信號(hào)處理流程,在傳統(tǒng)的ZigBee 接收機(jī)物理框架中設(shè)計(jì)添加神經(jīng)網(wǎng)絡(luò),在信號(hào)流經(jīng)過頻偏、相偏補(bǔ)償后送入神經(jīng)網(wǎng)絡(luò),緩解干擾信號(hào),恢復(fù)ZigBee 信號(hào)。( 表示兩個(gè)信號(hào)流,一個(gè)是干擾信號(hào),一個(gè)是ZigBee 的有用信號(hào), 表示ZigBee 的有用信號(hào))
圖2 ZigBee 接收機(jī)在面臨干擾信號(hào)時(shí)解碼ZigBee 數(shù)據(jù)包優(yōu)化圖
由于ZigBee 通常用于短程通信,因此,假設(shè)ZigBee 通信的無線電信號(hào)在視距和非視距下都是平坦信號(hào)。在此假設(shè)的基礎(chǔ)上,將干擾緩解問題表述為一個(gè)數(shù)學(xué)問題。(n)∈C為圖1中神經(jīng)網(wǎng)絡(luò)模塊的兩個(gè)輸入信號(hào)流,其中為ZigBee 幀的樣本數(shù)量。(n)∈C為ZigBee 信號(hào),(n)∈C為干擾信號(hào)。那么,接收到的信號(hào)()可以表示為:
其中=[]是ZigBee 發(fā)射機(jī)與接收機(jī)之間的信道系數(shù),=[]為干擾設(shè)備與ZigBee 接收機(jī)之間的信道系數(shù),()為ZigBee 接收器的噪聲。
這時(shí),采用一個(gè)小型的沒有隱藏層的神經(jīng)網(wǎng)絡(luò)來替代濾波器,實(shí)時(shí)解碼ZigBee 數(shù)據(jù)包,神經(jīng)網(wǎng)絡(luò)的輸入向量為ZigBee 信號(hào)以及干擾信號(hào)(即()=[(),()])的實(shí)部和虛部,輸出是ZigBee 有用信號(hào)流(即())的實(shí) 部和虛部,用R 和I 表示實(shí)部和虛部。
利用網(wǎng)絡(luò)權(quán)重的內(nèi)在關(guān)系,有:
為了實(shí)現(xiàn)實(shí)時(shí)數(shù)據(jù)包檢測(cè),提出了一種加速訓(xùn)練過程的方法。根據(jù)(2)式,優(yōu)化神經(jīng)網(wǎng)絡(luò)權(quán)重參數(shù),定義=R(),=I(),=R(),=I(),故上式可以表示為:
其中R()+I()+R()+I ()可映射為輸出信號(hào)流實(shí)部 R(),I()-R()+I()-R()可映射為輸出信號(hào)流虛部I()。此時(shí)僅有四個(gè)權(quán)重?cái)?shù),訓(xùn)練次數(shù)大大降低。用于緩解干擾信號(hào)的神經(jīng)網(wǎng)絡(luò)以及優(yōu)化的神經(jīng)網(wǎng)絡(luò)如圖3所示。
圖3 緩解干擾信號(hào)的神經(jīng)網(wǎng)絡(luò)圖
ZigBee 物理層幀結(jié)構(gòu)中的前導(dǎo)域共4 個(gè)字節(jié)(32 bit)。對(duì)于這32 bit,每4 個(gè)bit 被調(diào)制成32 個(gè)碼片組成的一個(gè)PN 序列。前導(dǎo)域中包含8 個(gè)Q/I 路的PN 序列,共256個(gè)碼片。故選擇一個(gè)總數(shù)256×4×2=2 048 個(gè)樣本來更新神經(jīng)網(wǎng)絡(luò)的四個(gè)權(quán)重,根據(jù)(3)式,按圖4的模型訓(xùn)練網(wǎng)絡(luò)。其中256 是前導(dǎo)域碼片數(shù),4 為過采樣率,2 為復(fù)數(shù)的分量數(shù)。如圖所示,前1 024 個(gè)樣本對(duì)應(yīng)幀前導(dǎo)域中256 個(gè)碼片的實(shí)部,后1 024 個(gè)樣本對(duì)應(yīng)幀前導(dǎo)域中256 個(gè)碼片的虛部。
圖4 神經(jīng)網(wǎng)絡(luò)的權(quán)重訓(xùn)練圖
在該算法中,使用反向傳播訓(xùn)練神經(jīng)網(wǎng)絡(luò)的權(quán)重,并將平方誤差作為神經(jīng)網(wǎng)絡(luò)的代價(jià)函數(shù)。在訓(xùn)練過程中,使用自適應(yīng)步長(zhǎng)來更新權(quán)重。其中,對(duì)于圖2中前1 024 個(gè)樣本數(shù)據(jù)集,更新權(quán)重為:
首先定義一些指標(biāo)來評(píng)估ZigBee 接收器的性能.
干擾信號(hào)比ISR:針對(duì)ZigBee 接收機(jī)在干擾前后接收到的無線電信號(hào),定義ISR 為:
其中,y()為關(guān)閉ZigBee 發(fā)射機(jī),ZigBee 接收機(jī)接收到的干擾信號(hào),y()為關(guān)閉干擾設(shè)備,ZigBee 接收機(jī)接收到的ZigBee 信號(hào),N為被測(cè)信號(hào)采樣數(shù).
包接收率PRR:報(bào)文接收率是指解碼成功的包占總發(fā)送包數(shù)的比例。
由于僅考慮ZigBee 的前導(dǎo)域,它是ZigBee 信號(hào)到達(dá)事件檢測(cè)的關(guān)鍵問題。其他信號(hào)干擾前導(dǎo)域即會(huì)導(dǎo)致ZigBee樣本存在較大失真。發(fā)射的ZigBee 信號(hào)的Q/I 路采樣流都由多個(gè)正、負(fù)半正弦脈沖組成,故通過MATLAB 仿真ZigBee 半正弦脈沖信號(hào)模型和ISR 值不同的干擾信號(hào),ISR 從-10 dB 到20 dB,對(duì) MSE 以及PRR 進(jìn)行相關(guān)分析。
圖5為本文提出的神經(jīng)網(wǎng)絡(luò)對(duì)不同ISR 值的解碼MSE.可以看出,當(dāng)ISR 為20 dB 時(shí),MSE 小于3.5%。這意味著即使干擾信號(hào)比ZigBee 信號(hào)強(qiáng)20 dB,所提出的基于神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)的方法也可以在零噪聲情況下解碼ZigBee 數(shù)據(jù)包。表1為使用本文算法以及未使用本文算法傳統(tǒng)接收機(jī)對(duì)不同ISR 值時(shí)的平均包接受率PRR,可以看到,提出的ZigBee 接收器達(dá)到了平均98%的PRR,而傳統(tǒng)接收器的平均PRR 僅為49.34%,且在ISR 即干擾信號(hào)越大,對(duì)包接受率影響越大。
圖5 不同ISR 下的MSE 圖示
表1 包接受率隨JSR 值不同的變化
在本文中,提出了一種無隱藏層的神經(jīng)網(wǎng)絡(luò)解碼有干擾信號(hào)的ZigBee 數(shù)據(jù)包,并用ZigBee 包的幀前導(dǎo)域進(jìn)行訓(xùn)練。仿真結(jié)果表明,在干擾信號(hào)下可以解碼ZigBee 信號(hào),整個(gè)傳輸過程沒有出現(xiàn)丟包現(xiàn)象,而且采集到的數(shù)據(jù)值準(zhǔn)確,表明系統(tǒng)具有較好的可靠性和穩(wěn)定性,對(duì)今后ZigBee 接收機(jī)的設(shè)計(jì)有一定的理論意義。