紀(jì)鑫來(lái),張永
(大連東軟信息學(xué)院,遼寧大連,116000)
如今無(wú)線通信技術(shù)在智能系統(tǒng)中大多被定義為數(shù)據(jù)傳輸途徑,僅限于數(shù)據(jù)傳輸,進(jìn)行深層次開(kāi)發(fā)利用的設(shè)計(jì)并不多。數(shù)據(jù)在交互處理中會(huì)沿著無(wú)線通信技術(shù)中的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)進(jìn)行信號(hào)傳播,所以信號(hào)傳播的強(qiáng)度值(RSSI)是衡量一個(gè)網(wǎng)絡(luò)情況的重要指標(biāo),是一個(gè)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的反饋。對(duì)于信號(hào)的傳播方式,可以分為大致三種:廣播模式(Wi-Fi)、點(diǎn)對(duì)點(diǎn)(藍(lán)牙)和自組網(wǎng),同時(shí)現(xiàn)今無(wú)線通信技術(shù)多種多樣,具體表1所示。
表1 幾種無(wú)線通信技術(shù)的比較
針對(duì)室內(nèi)入侵檢測(cè),本次設(shè)計(jì)選用了Zigbee無(wú)線通信技術(shù)進(jìn)行技術(shù)開(kāi)發(fā),利用Zigbee自組網(wǎng)構(gòu)建檢測(cè)網(wǎng)絡(luò),通過(guò)對(duì)RSSI的強(qiáng)度采集來(lái)判斷室內(nèi)情況。Zigbee無(wú)線通信技術(shù)是應(yīng)用點(diǎn)對(duì)點(diǎn)的自組網(wǎng)來(lái)發(fā)送數(shù)據(jù),在一個(gè)Zigbee網(wǎng)絡(luò)中存在三種設(shè)備狀態(tài):Zigbee終端節(jié)點(diǎn),Zigbee協(xié)調(diào)器以及路由設(shè)備。該設(shè)計(jì)包括6個(gè)硬件模塊,4個(gè)終端節(jié)點(diǎn),1個(gè)路由節(jié)點(diǎn)以及1個(gè)網(wǎng)關(guān)Sink節(jié)點(diǎn), 4個(gè)終端節(jié)點(diǎn)分布在不同的位置,向網(wǎng)絡(luò)中的同一協(xié)調(diào)器Sink進(jìn)行數(shù)據(jù)發(fā)送,為了平行檢測(cè),在場(chǎng)景中間了路由節(jié)點(diǎn)對(duì)下層所有的Zigbee終端節(jié)點(diǎn)情況進(jìn)行匯總,然后單一向網(wǎng)關(guān)Sink上回傳。
室內(nèi)場(chǎng)景上電后,網(wǎng)關(guān)ZIgbee設(shè)備對(duì)公網(wǎng)中所有的AP節(jié)點(diǎn)進(jìn)行網(wǎng)絡(luò)參數(shù)指令的下達(dá)進(jìn)行掃描,再匹配成功后對(duì)場(chǎng)景形成網(wǎng)絡(luò)覆蓋,同時(shí)開(kāi)始檢測(cè)各個(gè)終端節(jié)點(diǎn)的RSSI信號(hào)強(qiáng)度值,并數(shù)值直接向網(wǎng)關(guān)Sink回傳。所有的數(shù)據(jù)都在Zigbee路由模塊上進(jìn)行處理整合,路由節(jié)點(diǎn)收到數(shù)據(jù)包后對(duì)幀進(jìn)行解析,設(shè)計(jì)中應(yīng)用CC2530微處理器來(lái)控制所有數(shù)據(jù)流以及外圍硬件。路由節(jié)點(diǎn)的處理器在接收到不同AP節(jié)點(diǎn)的RSSI信號(hào)強(qiáng)度后,對(duì)數(shù)據(jù)與AP分類整合,然后推送到內(nèi)置的發(fā)送端,向Sink端進(jìn)行回傳,路由節(jié)點(diǎn)在在這里沒(méi)有數(shù)據(jù)分析的功能,上層網(wǎng)關(guān)Sink節(jié)點(diǎn)在接收到整個(gè)數(shù)據(jù)包后,然后對(duì)照其恒定信號(hào)強(qiáng)度RSSI值,分析信號(hào)的波動(dòng)情況。
信號(hào)的波動(dòng)情況在本次設(shè)計(jì)中即是室內(nèi)入侵情況的反饋。我們通過(guò)多次實(shí)驗(yàn)測(cè)試出,當(dāng)空曠的場(chǎng)景中,成功組網(wǎng)后信號(hào)RSSI的接收強(qiáng)度波動(dòng)范圍,而一旦場(chǎng)景中有干擾(入侵)時(shí),信號(hào)強(qiáng)度會(huì)產(chǎn)生大幅度的波動(dòng),由此根據(jù)反復(fù)的Userstudy來(lái)判斷閾值外的信號(hào)噪聲即為場(chǎng)景網(wǎng)絡(luò)中,檢測(cè)到入侵情況。本次應(yīng)用網(wǎng)絡(luò)結(jié)構(gòu)搭配信息強(qiáng)度RSSI以及接入點(diǎn)AP的列表構(gòu)建了數(shù)據(jù)坐標(biāo)系,通過(guò)信號(hào)數(shù)據(jù)可視化對(duì)室內(nèi)入侵情況進(jìn)行分析,是一種對(duì)無(wú)線通信技術(shù)另一個(gè)角度的開(kāi)發(fā)。系統(tǒng)整體構(gòu)成如圖1所示。
圖1 系統(tǒng)整體設(shè)計(jì)方案
本次系統(tǒng)的數(shù)據(jù)流通,我們選用的Zigbee低功耗拓?fù)浣Y(jié)構(gòu)的無(wú)線傳感網(wǎng)來(lái)完成,Zigbee通過(guò)自組網(wǎng)進(jìn)行終端向協(xié)調(diào)器的發(fā)送,Zigbee的自組網(wǎng)有三種拓?fù)浣Y(jié)構(gòu),網(wǎng)狀結(jié)構(gòu),星星以及樹(shù)型結(jié)構(gòu)。本文選用了網(wǎng)狀結(jié)構(gòu)來(lái)搭建網(wǎng)絡(luò),因?yàn)樵陔娐吩O(shè)計(jì)中,四個(gè)終端節(jié)點(diǎn)搭載不同傳感器向唯一協(xié)調(diào)器進(jìn)行發(fā)送,不需要復(fù)雜的多跳。同時(shí)系統(tǒng)的距離有一定的限制,對(duì)數(shù)據(jù)承載力要求不高,網(wǎng)狀拓?fù)浣Y(jié)構(gòu)便于平行檢測(cè)整個(gè)室內(nèi)情況,圖2顯示了Zigbee網(wǎng)絡(luò)情況。
圖2 Zigbee拓?fù)浣Y(jié)構(gòu)
Zigbee組網(wǎng)完成后,對(duì)于所有數(shù)據(jù)的處理是通過(guò)微處理CC2530完成的。Zigbee外圍電路中,必須設(shè)計(jì)出系統(tǒng)時(shí)序才能保證系統(tǒng)有效的工作,即為系統(tǒng)的時(shí)鐘或者晶體振蕩器。系統(tǒng)上電后,各個(gè)模塊按照時(shí)序進(jìn)行有序的工作,或者進(jìn)行循環(huán)檢測(cè)RSSI的強(qiáng)度值。本次數(shù)據(jù)的無(wú)線傳輸以及協(xié)調(diào)器觸發(fā)都需要一定的平衡,各個(gè)AP節(jié)點(diǎn)的數(shù)據(jù)傳輸率以及頻率的同步即是通過(guò)匹配時(shí)鐘晶體的震蕩速率來(lái)完成的。同時(shí)在保持所有功能模塊都有有效的工作時(shí)序的同時(shí),晶體振蕩器還有一種作用是外出觸發(fā)電平的“變換開(kāi)關(guān)”,一旦產(chǎn)生入侵檢測(cè)的觸發(fā),則響應(yīng)一次外部中斷事件。圖3顯示了入侵檢測(cè)情況。
圖3 入侵檢測(cè)流程圖
同時(shí)系統(tǒng)中我們需要監(jiān)測(cè)實(shí)時(shí)入侵RSSI值的波動(dòng),因此CC2530模塊需要不停的檢測(cè)是否有數(shù)據(jù)流入,但是如果一直處于工作模式,整個(gè)系統(tǒng)會(huì)產(chǎn)生很高的功耗,因?yàn)橄到y(tǒng)設(shè)計(jì)了中斷觸發(fā)的模式來(lái)檢測(cè)是否有高低電平的變化。本設(shè)計(jì)中,每次RSSI的大幅度的噪聲波動(dòng),代表了場(chǎng)景中有入侵情況,因此通過(guò)對(duì)RSSI閾值的判斷來(lái)設(shè)計(jì)中斷觸發(fā)事件。設(shè)計(jì)中比較了單純的標(biāo)識(shí)位中斷觸發(fā)方式與定時(shí)觸發(fā)方式,最終選擇了定時(shí)器觸發(fā)的方式。這里設(shè)置了不同的Task模塊,配合時(shí)鐘周期進(jìn)行了兩種方式編寫,一種是掃描Zigbee網(wǎng)絡(luò)中所有數(shù)據(jù)據(jù)按照分鐘的方式進(jìn)行周期性發(fā)送,每1分鐘出發(fā)一次發(fā)送中斷進(jìn)行一次回傳,對(duì)于入侵觸發(fā)事件,超出閾值直接觸發(fā)跳變延,通過(guò)改變一次高低電平來(lái)實(shí)時(shí)刷新一下RSSI值,回傳上層進(jìn)行處理。
下層的數(shù)據(jù)流方面,系統(tǒng)分為兩個(gè)部分:AP接入點(diǎn)的列表流及RSSI強(qiáng)度數(shù)據(jù)流。RSSI的讀取通過(guò)對(duì)CC2530的引腳編程來(lái)操作外圍電路,從而實(shí)現(xiàn)對(duì)場(chǎng)景中入侵情況檢測(cè),在模塊響應(yīng)后,Zigbee網(wǎng)關(guān)Sink連續(xù)讀取路由節(jié)點(diǎn)回傳的數(shù)據(jù),并將讀取的電信號(hào)進(jìn)行A/D轉(zhuǎn)換,這里我們?cè)O(shè)計(jì)了一個(gè)數(shù)組,然后對(duì)所有RSSI數(shù)據(jù)全部讀取后,在進(jìn)行統(tǒng)一的數(shù)據(jù)操作。本次系統(tǒng)設(shè)計(jì),所有RSSI數(shù)據(jù)的讀取,是通過(guò)路由節(jié)點(diǎn)進(jìn)行匯總后,然后在網(wǎng)關(guān)節(jié)點(diǎn)進(jìn)行處理的,在系統(tǒng)上電后,主程序進(jìn)行響應(yīng)等待模式,這里我們通過(guò)設(shè)置協(xié)調(diào)器的定時(shí)器來(lái)完成數(shù)據(jù)的一次響應(yīng)讀取,然后協(xié)調(diào)器進(jìn)行等待模塊,等待RSSI是否有數(shù)據(jù)回傳(數(shù)據(jù)的轉(zhuǎn)換在傳感器引腳A / D轉(zhuǎn)換時(shí)完成),當(dāng)檢測(cè)到有數(shù)據(jù)回傳后,我們通過(guò)對(duì)數(shù)據(jù)幀的解析然后匹配AP來(lái)完成對(duì)整個(gè)網(wǎng)絡(luò)波動(dòng)情況的讀取,這里面我們?cè)O(shè)置數(shù)據(jù)頭,標(biāo)志位來(lái)完成對(duì)數(shù)據(jù)的分類(AP),當(dāng)完成對(duì)一次數(shù)據(jù)的分析后,網(wǎng)關(guān)Sink繼續(xù)進(jìn)入等待模塊,或者說(shuō)中斷響應(yīng)模式。
在進(jìn)行自動(dòng)連接ZIgbee模塊服務(wù)時(shí),首先進(jìn)行優(yōu)先級(jí)的設(shè)置,對(duì)于上下聯(lián)通的網(wǎng)關(guān)模塊,設(shè)置為高優(yōu)先級(jí)的選項(xiàng),并應(yīng)用UDP通信模式進(jìn)行數(shù)據(jù)接收,同時(shí)在系統(tǒng)進(jìn)行數(shù)據(jù)同步,把當(dāng)前下層網(wǎng)絡(luò)的所有RSSI數(shù)據(jù)進(jìn)行刷新。通過(guò)大量的Zigbee的接入點(diǎn)AP的列表信息,可以視為構(gòu)建了一個(gè)室內(nèi)相對(duì)二維度的坐標(biāo)系,同時(shí)RSSI強(qiáng)度是不同AP接入點(diǎn)與Zigbee終端設(shè)備一種連接相位的體現(xiàn),通過(guò)不同的RSSI針對(duì)不同的接入點(diǎn)可以構(gòu)建出一個(gè)數(shù)據(jù)坐標(biāo)信息,回傳給Sink進(jìn)行分析。
本次系統(tǒng)Zigbee網(wǎng)絡(luò)執(zhí)行過(guò)程,初次配置后,四個(gè)終端向協(xié)調(diào)器發(fā)送數(shù)據(jù),中轉(zhuǎn)傳輸?shù)铰酚晒?jié)點(diǎn),進(jìn)行向網(wǎng)關(guān)發(fā)送的準(zhǔn)備。對(duì)于AP的掃描,系統(tǒng)啟動(dòng)后,協(xié)調(diào)器向下層所有區(qū)域廣播網(wǎng)絡(luò)參數(shù),查看是否網(wǎng)絡(luò)中回饋節(jié)點(diǎn)請(qǐng)求,網(wǎng)絡(luò)中的5個(gè)Zigbee的AP節(jié)點(diǎn),再收到協(xié)調(diào)器網(wǎng)絡(luò)指令后,根據(jù)自身PID等參數(shù)的配置,向協(xié)調(diào)器回傳請(qǐng)求響應(yīng),協(xié)調(diào)器接收到請(qǐng)求后,匹配節(jié)點(diǎn)的參數(shù)查看是否可以通過(guò)加入請(qǐng)求,同時(shí)回傳響應(yīng)給終端AP,一旦匹配成功后,即可加入到該Zigbee自組網(wǎng)絡(luò)中,并會(huì)按照不同的節(jié)點(diǎn)功能來(lái)開(kāi)啟工作,其中四個(gè)AP節(jié)點(diǎn)為終端節(jié)點(diǎn),不停的發(fā)送RSSI信號(hào)強(qiáng)度值給路由節(jié)點(diǎn)進(jìn)行數(shù)據(jù)匯總。具體軟件流程圖如圖4所示。
Zigbee網(wǎng)絡(luò)開(kāi)發(fā)了專屬的IAR平臺(tái)來(lái)配置以及編寫Zigbee程序,該IDE是一款層層嵌套的平臺(tái),通常情況下所有的數(shù)據(jù)幀的編寫以及具體應(yīng)用的開(kāi)發(fā),都是在應(yīng)用層進(jìn)行配置的,對(duì)于組網(wǎng),我們需要在網(wǎng)絡(luò)層協(xié)議棧進(jìn)行編寫,通過(guò)組網(wǎng)來(lái)分配信道以及PID實(shí)現(xiàn)對(duì)RSSI的讀取。對(duì)于RSSI的強(qiáng)度的讀取,需要設(shè)置一定的參數(shù)才能進(jìn)行有效的實(shí)驗(yàn)。
圖4 數(shù)據(jù)網(wǎng)絡(luò)流程流程圖
對(duì)于實(shí)驗(yàn),分為了兩個(gè)部分:誤差校準(zhǔn)實(shí)驗(yàn)以及設(shè)計(jì)驗(yàn)證。Zigbee網(wǎng)絡(luò)中RSSI信號(hào)強(qiáng)度存在大量的干擾因素,而不確定的干擾因素,會(huì)形成一定的誤差。因此在驗(yàn)證整個(gè)系統(tǒng)可行性前,我們需要對(duì)系統(tǒng)的誤差進(jìn)行一定的實(shí)驗(yàn)分析。表2所示我們通過(guò)五組Userstudy的實(shí)驗(yàn)結(jié)果。
表2
本次實(shí)驗(yàn)我們對(duì)時(shí)間域進(jìn)行采集,分為了五組實(shí)驗(yàn)室,然后對(duì)RSSI信號(hào)強(qiáng)的上限以及下限進(jìn)行采集,然后進(jìn)行標(biāo)準(zhǔn)化分析。同時(shí)我們?cè)O(shè)計(jì)了第六組實(shí)驗(yàn),為入侵檢測(cè)實(shí)驗(yàn),通過(guò)對(duì)信道進(jìn)行一定的阻隔來(lái)測(cè)試,并通過(guò)Matlab對(duì)測(cè)試的數(shù)據(jù)可視化的RSSI波動(dòng)圖的輸出。圖5表明了實(shí)驗(yàn)過(guò)程RSSI的波動(dòng)情況。在500~600段可以看出,通過(guò)阻隔對(duì)照試驗(yàn),RSSI產(chǎn)生了明顯的噪聲變化,會(huì)有一段波形超出了標(biāo)準(zhǔn)波動(dòng)的范圍,可以判斷為產(chǎn)生了室內(nèi)入侵。
圖5 實(shí)驗(yàn)結(jié)果圖
本次室內(nèi)入侵檢測(cè)系統(tǒng),是通過(guò)Zigbee下層所有數(shù)據(jù)回傳后,對(duì)列表中所有AP接入點(diǎn)進(jìn)行分析,自組網(wǎng)絡(luò)中取出RSSI然后根據(jù)強(qiáng)度信息構(gòu)建一個(gè)檢測(cè)范圍,相對(duì)范圍即代表了在室內(nèi)安全情況下RSSI的采集范圍,系統(tǒng)把RSSI記錄下來(lái)存放在數(shù)據(jù)矩陣中,同時(shí)通過(guò)大量的Zigbee的AP信息構(gòu)建出不同的區(qū)域的安全覆蓋網(wǎng),一旦產(chǎn)生大量噪聲波動(dòng),系統(tǒng)比較初識(shí)的相對(duì)信息,判斷產(chǎn)生室內(nèi)入侵。這種判斷是一種相對(duì)的,而不是絕對(duì)的,由于ZIgbee用戶會(huì)在整個(gè)網(wǎng)絡(luò)中移動(dòng),同時(shí)場(chǎng)景環(huán)境的不確定因素,系統(tǒng)會(huì)存在一定的誤差。但是同一區(qū)域內(nèi)的相對(duì)安全情況可以清晰的顯示出來(lái),并且保證了數(shù)據(jù)的實(shí)時(shí)性。因此系統(tǒng)的初步設(shè)計(jì)以及測(cè)試完成了,但誠(chéng)然存在很多問(wèn)題,例如精度、實(shí)驗(yàn)的深入開(kāi)發(fā)與對(duì)照組,以及系統(tǒng)缺點(diǎn)研究都是可以深入進(jìn)行的工作。希望未來(lái)工作中,深層次開(kāi)發(fā)整個(gè)系統(tǒng)。