陳德軍,葉元,梅攀
(武漢理工大學 信息工程學院,武漢 430070)
?
電子貨架標簽的無線自組網(wǎng)協(xié)議設計※
陳德軍,葉元,梅攀
(武漢理工大學 信息工程學院,武漢 430070)
分析了傳統(tǒng)紙質(zhì)標簽的弊端,利用電子貨架標簽組網(wǎng)的便捷性、數(shù)據(jù)傳輸?shù)恼_性和穩(wěn)定性,結(jié)合Ad-Hoc網(wǎng)絡和無線傳感網(wǎng)(Wireless Sensor Network,WSN)的特點,提出了一種面向電子貨架標簽的無線自組網(wǎng)協(xié)議,并從網(wǎng)絡路由協(xié)議、MAC協(xié)議、數(shù)據(jù)傳輸正確性和穩(wěn)定性,以及標簽的低功耗等方面對其設計原理進行了闡述。
電子貨架標簽;無線自組網(wǎng);路由協(xié)議;MAC協(xié)議
目前,國內(nèi)外的一些公司在電子貨架標簽系統(tǒng)上進行了很多嘗試,比較主流的有Wi-Fi方案、有線電子標簽方案,以及RFID方案等。但是由于射頻芯片有距離的限制,Wi-Fi方案并不能支持足夠數(shù)量的標價牌;有線電子標簽更不合理,因為貨架經(jīng)常需要移動,每次移動都需要重新布線;此外,RFID成本高,功耗不夠低,而且需要適用于電子標價牌系統(tǒng)的專用RFID。所以構(gòu)建電子貨架標簽系統(tǒng)需要解決好如下技術(shù)問題:系統(tǒng)組網(wǎng)方便快捷、數(shù)據(jù)傳輸正確穩(wěn)定、電子標簽耗電量低。
無線射頻技術(shù)發(fā)展至今已經(jīng)相當成熟,利用短距離無線通信技術(shù),使用自定義的網(wǎng)絡協(xié)議,使電子標價牌系統(tǒng)自成局域網(wǎng),由于采用了無線通信方式,從而避免了大規(guī)模布局布線的麻煩。當前無線自組網(wǎng)已經(jīng)形成了一系列標準,包括MAC層和網(wǎng)絡層的協(xié)議標準,例如IEEE 802.11b、IEEE 802.15.4以及ZigBee協(xié)議棧等。然而,目前各種無線自組網(wǎng)的網(wǎng)絡協(xié)議大多是針對普遍情況而研究的,為滿足本系統(tǒng)的功能需求,本文參考了無線自組網(wǎng)的MAC協(xié)議和路由協(xié)議,結(jié)合電子貨架標簽系統(tǒng)的特點和要求,設計了一種面向電子貨架標簽的無線自組網(wǎng)協(xié)議。
路由協(xié)議面向的是數(shù)據(jù)傳輸路由過程,由于網(wǎng)內(nèi)節(jié)點性能的差異,傳統(tǒng)的Internet路由協(xié)議并不適用,而且不同的應用場景需求相差極大,設計通用的路由協(xié)議不僅過于復雜,而且也不科學,因此需要針對不同的應用背景來設計協(xié)議棧。
無線自組網(wǎng)中的節(jié)點可移動、可自主加入或者離開網(wǎng)絡以及節(jié)點休眠或者故障等因素,使得自組網(wǎng)的網(wǎng)絡拓撲結(jié)構(gòu)不斷在變化,另外無線收發(fā)和復雜的路由計算需要消耗節(jié)點較多的能量,傳統(tǒng)路由協(xié)議顯然并不適用。根據(jù)無線自組網(wǎng)的特性,結(jié)合本系統(tǒng)實際應用需求,設計了如下路由協(xié)議:系統(tǒng)的網(wǎng)絡架構(gòu)采用分層分簇的網(wǎng)絡拓撲。若干個相鄰節(jié)點構(gòu)成一個簇,每個簇都有一個簇頭節(jié)點,簇與簇之間通過簇頭節(jié)點進行通信,簇頭節(jié)點之間構(gòu)成高一級的網(wǎng)絡,在這個高一級的網(wǎng)絡里,還可以再次進行分簇,這個過程可以一直進行下去,直到最高層。簇頭節(jié)點負責簇內(nèi)節(jié)點的管理,并且完成簇內(nèi)節(jié)點信息的收集、融合和轉(zhuǎn)發(fā),同時還負責簇間數(shù)據(jù)的轉(zhuǎn)發(fā)。分層路由的優(yōu)勢在于可擴展性好,可以用于大規(guī)模節(jié)點的應用場合,但是由于網(wǎng)絡拓撲的動態(tài)變化,使得路由算法實現(xiàn)較為復雜。典型的分層路由協(xié)議有LEACH、TEEN、APTEEN以及ZigBee協(xié)議棧中的路由協(xié)議等。本系統(tǒng)路由協(xié)議參照了LEACH協(xié)議和ZigBee協(xié)議棧路由機制,根據(jù)系統(tǒng)自身的網(wǎng)絡架構(gòu)特點進行了分層分簇路由協(xié)議設計,其系統(tǒng)結(jié)構(gòu)圖如圖1所示。
圖1 系統(tǒng)結(jié)構(gòu)圖
系統(tǒng)中Sink節(jié)點和Router節(jié)點均固定不變,Label與Sink節(jié)點通過Router中繼,網(wǎng)絡由Sink節(jié)點發(fā)起建立。從圖1中可以看出,本系統(tǒng)中的Router節(jié)點相當于LEACH協(xié)議中的簇頭節(jié)點,但是簇頭節(jié)點固定。路由結(jié)構(gòu)與ZigBee樹形網(wǎng)絡結(jié)構(gòu)類似,Sink節(jié)點相當于ZigBee協(xié)調(diào)器,Router和Label節(jié)點就如同ZigBee路由和終端設備,但是Sink節(jié)點不帶終端節(jié)點。與二者不同的是,本系統(tǒng)網(wǎng)絡一旦構(gòu)成,則保持比較固定的網(wǎng)絡拓撲結(jié)構(gòu)。系統(tǒng)的路由維護主要面向節(jié)點損壞的情況,在本系統(tǒng)中Router節(jié)點只負責轉(zhuǎn)發(fā)各方數(shù)據(jù),因此路由協(xié)議與LEACH協(xié)議和ZigBee路由機制不同,是二者的有機結(jié)合。
自組網(wǎng)路由協(xié)議描述如下:
(1) 網(wǎng)絡建立和設備加入過程
網(wǎng)絡的建立過程主要分為兩個階段:Router節(jié)點入網(wǎng)階段和Label節(jié)點入網(wǎng)階段。Sink節(jié)點接收到組網(wǎng)命令后,開始定時廣播組網(wǎng)信標幀,并監(jiān)聽路由入網(wǎng)請求,收到子節(jié)點信標請求后,如果自身地址空間未滿,可以容納該子節(jié)點,則回復子節(jié)點的信標請求。Router節(jié)點第一種入網(wǎng)方式為開機后處于實時監(jiān)聽狀態(tài),準備接收組網(wǎng)信標幀,收到信標幀,則回復信標請求。收到信標請求回復后,提取其中的路由信息存儲到準父節(jié)點信息列表中,繼續(xù)偵聽,直到偵聽時間結(jié)束,從準父節(jié)點信息列表中獲取最優(yōu)父節(jié)點(網(wǎng)絡深度最小則最優(yōu)),并發(fā)送連接請求,收到該父節(jié)點連接請求回復,表示Router節(jié)點入網(wǎng)成功,同時父節(jié)點將入網(wǎng)信息反饋至Sink節(jié)點,由Sink節(jié)點轉(zhuǎn)發(fā)至數(shù)據(jù)庫,否則從剩下的準父節(jié)點信息列表中獲取最優(yōu)父節(jié)點,重復上述過程,直至入網(wǎng)成功或者列表空。Router節(jié)點的第二種入網(wǎng)方式為到監(jiān)聽時間段結(jié)束從未收到組網(wǎng)信標幀,就自動發(fā)信標請求,等待發(fā)送次數(shù)到,查詢準父節(jié)點信息列表,后續(xù)過程同第一種入網(wǎng)方式。Router節(jié)點入網(wǎng)成功后,等待 Sink節(jié)點結(jié)束廣播,收到來自Sink節(jié)點的組網(wǎng)命令后,Router節(jié)點開始廣播組網(wǎng)信標幀并監(jiān)聽信標請求,如此循環(huán),等待路由入網(wǎng)時間結(jié)束,此后如果有單個新路由節(jié)點入網(wǎng),就通過第二種方式入網(wǎng)。
網(wǎng)絡建立的第二階段為Label節(jié)點入網(wǎng),在Router節(jié)點入網(wǎng)階段結(jié)束后,Router節(jié)點均處于監(jiān)聽狀態(tài),Label節(jié)點主動發(fā)送入網(wǎng)請求,等待Router節(jié)點回應,Label節(jié)點提取路由信息,并存儲到準父節(jié)點信息列表中,等待請求次數(shù)到,查詢列表并從中選擇最優(yōu)父節(jié)點發(fā)送連接請求。收到父節(jié)點的連接請求回復表示入網(wǎng)成功,此時父節(jié)點將向Sink節(jié)點發(fā)送Label節(jié)點入網(wǎng)信息(包括物理地址和網(wǎng)絡地址),Sink將節(jié)點信息轉(zhuǎn)發(fā)給服務器數(shù)據(jù)庫。
(2) 設備網(wǎng)絡地址分配
由于本系統(tǒng)的網(wǎng)絡架構(gòu)同ZigBee協(xié)議中的樹形網(wǎng)絡架構(gòu)相同,故采用類似的路由機制。ZigBee協(xié)調(diào)器決定網(wǎng)絡中的設備最多可以擁有多少子設備,還規(guī)定了子設備中路由器的數(shù)目。網(wǎng)絡中的設備有唯一的物理地址,入網(wǎng)后分配網(wǎng)絡地址,并根據(jù)網(wǎng)絡地址來尋址。設備的網(wǎng)絡地址分配主要依據(jù)3個網(wǎng)絡參數(shù):最多子設備數(shù)(Cm),最大網(wǎng)絡深度(Lm)和最大子路由數(shù)(Rm)。根據(jù)式(1)計算地址偏移量Cskip(d),其中d為網(wǎng)絡深度(Sink網(wǎng)絡深度為0),地址偏移量決定了設備可以分配子設備的地址塊大小。
(1)
當子節(jié)點加入網(wǎng)絡時,父節(jié)點(Sink節(jié)點或Router節(jié)點)給Router節(jié)點分配網(wǎng)絡地址的計算公式為式(2),給Label節(jié)點分配網(wǎng)絡地址計算公式為式(3),其中index為子路由或子標簽的序號。
(2)
(3)
根據(jù)系統(tǒng)的背景,設定Sink節(jié)點的網(wǎng)絡地址為2個字節(jié)長度,每個Sink節(jié)點以下的所有對象采用統(tǒng)一編址的方式。由此設定Lm= 3、Cm= 246、Rm= 6,地址分配情況如圖2所示。根據(jù)式(2),Sink下的第一個子路由節(jié)點網(wǎng)絡地址為0+0+1=1,第二個子路由節(jié)點為0+1×1723+1=1724,即為十六進制的0x06BC,而網(wǎng)絡地址為0x0001的路由下的最后一個入網(wǎng)的標簽的網(wǎng)絡地址為1+6×247+240=1723,即為0x06BB。通過計算不難發(fā)現(xiàn),所有在網(wǎng)絡地址為0x0001下的子設備,其網(wǎng)絡地址分配范圍為0x0002~0x06BB,可見網(wǎng)絡地址的分配是分段進行的。根據(jù)上述說明,在給定Lm=3、Cm=246、Rm=6的情況下,網(wǎng)絡中的標簽個數(shù)為6×240+6×6×240=10 080,路由的個數(shù)為6+6×6=42。
圖2 網(wǎng)絡地址分配
(3) 路由機制
網(wǎng)絡建立穩(wěn)定后,網(wǎng)內(nèi)節(jié)點通過網(wǎng)絡地址進行通信,當需要進行數(shù)據(jù)轉(zhuǎn)發(fā)時,先判斷不等式A MAC(Medium Access Control)協(xié)議是無線自組網(wǎng)協(xié)議棧中的關(guān)鍵部分,它的主要任務是提供網(wǎng)絡中無線節(jié)點對信道的接入方式,為其分配有限的無線通信資源,包括對無線信道進行劃分、分配和能量控制等。 本系統(tǒng)網(wǎng)絡架構(gòu)的特點是分層分簇,Label節(jié)點絕大部分時間工作在休眠態(tài),而Sink和Router節(jié)點沒有針對低功耗的需求,而且Sink與Router、Router與Router之間的通信是通過nRF905完成的,Router與Label以及兩個Label之間的通信是通過CC2500完成的,所以在設計MAC協(xié)議時,可以分層考慮。此外本系統(tǒng)中Router節(jié)點是固定的,這與傳統(tǒng)的分簇型拓撲結(jié)構(gòu)中的簇頭節(jié)點又有所不同,而且選用的射頻芯片都自帶了地址匹配功能和載波偵聽(CSMA)功能,CC2500還自帶信道評估(CCA)功能,根據(jù)這些特征,結(jié)合基于競爭型的S-MAC協(xié)議和TDMA型C-TDMA協(xié)議,本文設計了自身特有的混合型MAC層協(xié)議來滿足MAC協(xié)議要求,電子標價牌系統(tǒng)MAC協(xié)議示意圖如圖3所示。 圖3 電子標價牌系統(tǒng)MAC協(xié)議 具體協(xié)議描述略——編者注。 3.1 信號碰撞避免機制 影響網(wǎng)絡性能的首要因素就是多對一通信模式中的信號碰撞和串擾問題。當多對節(jié)點同時在同一無線信道下進行數(shù)據(jù)傳送,或者多節(jié)點同時向同一節(jié)點發(fā)送數(shù)據(jù)時,就容易發(fā)生信號碰撞,此時由于信號的疊加,極易使得接收數(shù)據(jù)發(fā)生錯誤,從而導致通信失敗。本系統(tǒng)MAC協(xié)議采用了物理載波幀和TDMA結(jié)合的方式來避免信號碰撞,能夠很好地解決信號碰撞問題。首先, NRF905和CC2500均自帶物理載波偵聽,發(fā)送前均偵聽信道是否空閑,若空閑則發(fā)送數(shù)據(jù),否則就隨機退避;其次當系統(tǒng)網(wǎng)絡穩(wěn)定后,標簽節(jié)點與路由節(jié)點的通信是通過TDMA方式進行的,能夠避免簇內(nèi)的信號碰撞;網(wǎng)絡組建成功后路由節(jié)點與標簽節(jié)點的通信是通過私有信道來完成的,故能夠很好地解決簇內(nèi)和簇間的信號碰撞問題。 3.2 串擾避免機制 在無線自組網(wǎng)中,接收并處理發(fā)給其他節(jié)點數(shù)據(jù)的現(xiàn)象稱為“串擾”。當數(shù)據(jù)流較大、節(jié)點密度高的情況下,串擾會造成較大的能量浪費,更嚴重的是當節(jié)點等待特定數(shù)據(jù)包的時候收到串擾包,而錯過了特定數(shù)據(jù)包,會導致通信失敗。在節(jié)點入網(wǎng)過程和更新標簽信息兩種情況下,最易發(fā)生串擾現(xiàn)象。本系統(tǒng)通過射頻芯片的地址匹配、數(shù)據(jù)幀地址匹配和信道分配來解決串擾問題。首先,帶nRF905模塊的發(fā)送節(jié)點通過廣播的形式發(fā)送含有接收端地址的數(shù)據(jù)包,接收端收到數(shù)據(jù)后,通過私信地址進行下一步通信,能夠有效防止串擾;其次,帶CC2500模塊的發(fā)送節(jié)點通過公共信道發(fā)送含有接收端地址的數(shù)據(jù)包,接收端接收到數(shù)據(jù)后,通過私有信道進行下一步通信,同樣能夠有效防止串擾;再次網(wǎng)絡組建穩(wěn)定后,標簽節(jié)點在TDMA的機制下,定時喚醒與路由節(jié)點通信,避免了串擾。由于系統(tǒng)中的所有節(jié)點都有一個唯一的物理地址和網(wǎng)絡地址,在進行數(shù)據(jù)傳輸時,接收數(shù)據(jù)均需要進行地址匹配(入網(wǎng)前采用物理地址匹配,入網(wǎng)后采用網(wǎng)絡地址匹配),當?shù)刂凡黄ヅ鋾r,接收節(jié)點立刻進入特定狀態(tài)(繼續(xù)偵聽或者休眠),能夠有效避免串擾或者減小串擾的影響。 3.3 心跳維護機制 系統(tǒng)采用分層分簇的網(wǎng)絡拓撲結(jié)構(gòu),網(wǎng)絡結(jié)構(gòu)建立之后,一段時間內(nèi)是能保持穩(wěn)定的,當簇建立后,路由節(jié)點采用TDMA方式為每個標簽節(jié)點分配心跳信息傳輸?shù)臅r間片,正常的心跳通信過程標識無線通信鏈路正常。鏈路表現(xiàn)出不正常的情況會逐級反饋至Sink節(jié)點,并反饋至客戶端,從而對無線網(wǎng)絡的狀態(tài)有了很好的實時監(jiān)測。當監(jiān)測到節(jié)點狀態(tài)異常,可以及時對異常進行定位并作出相應的處理,因此能夠較好地保障網(wǎng)絡故障及時恢復,提高了網(wǎng)絡的可靠性。 TDMA方式下,難點在于網(wǎng)內(nèi)節(jié)點的時間同步。由于網(wǎng)內(nèi)節(jié)點硬件層限制,加上對標簽節(jié)點功耗的苛刻要求,多跳的無線自組網(wǎng)絡難以完成全局的時間同步,然而每個路由節(jié)點信號只是覆蓋整個網(wǎng)絡的一小部分,因此基于一跳網(wǎng)絡覆蓋來建立簇內(nèi)的時間同步就相對容易得多,不僅滿足系統(tǒng)的設計要求,而且整個網(wǎng)絡因為時間復用提高了網(wǎng)絡的吞吐量。簇內(nèi)的時間同步過程以及心跳機制描述略——編者注。 4.1 節(jié)點入網(wǎng)測試 為了方便調(diào)試,上位機界面在設計時,根據(jù)Sink節(jié)點反饋的信息將入網(wǎng)信息解析,顯示在節(jié)點組網(wǎng)信息反饋列表里,反饋信息列表內(nèi)容略——編者注。 4.2 大規(guī)模標簽模擬測試 由于硬件節(jié)點數(shù)量有限,為了測試系統(tǒng)的穩(wěn)定性,本文給出一種大規(guī)模標簽的模擬測試方案。對有限數(shù)量的標簽進行循環(huán)更新,輪流循環(huán)向下發(fā)送商品更新數(shù)據(jù)命令,并統(tǒng)計更新次數(shù)、更新成功次數(shù)和更新失敗次數(shù),以及需要的時間。測試結(jié)果如圖4所示。根據(jù)結(jié)果可以得出以下3個結(jié)論: 圖4 大規(guī)模標簽模擬測試結(jié)果 ① 根據(jù)已發(fā)命令次數(shù)等于更新成功次數(shù)和更新失敗次數(shù)之和,可以推斷Sink節(jié)點很穩(wěn)定,能夠正常收到管理平臺下發(fā)的商品更新信息,并按規(guī)定回復。 ② 根據(jù)發(fā)送1450次更新命令,而更新成功次數(shù)達到1435,成功率達到99%,可以推斷系統(tǒng)內(nèi)路由節(jié)點和標簽節(jié)點也很穩(wěn)定,而且在更新失敗的情況下,能夠恢復正常,說明系統(tǒng)具有較強的自愈性。 ③ 更新失敗的情況下,需要3.5 s反饋更新失敗,平均計算,單個標簽更新成功需要419 ms。 4.3 標簽網(wǎng)絡狀態(tài)監(jiān)測測試 根據(jù)系統(tǒng)MAC協(xié)議和路由協(xié)議的描述,系統(tǒng)內(nèi)由標簽節(jié)點定期向上發(fā)送心跳包,該時間間隔是固定分配好的,路由下的某標簽節(jié)點向路由發(fā)送心跳包,通過自組網(wǎng)絡成功反饋至客戶端時,表示標簽節(jié)點在線,否則表示標簽節(jié)點離線。狀態(tài)監(jiān)測效果略——編者注。 本文綜合了Ad-Hoc網(wǎng)絡和無線傳感網(wǎng)(Wireless Sensors Network,WSN)的特點,結(jié)合實際應用需求,設計了適合的無線網(wǎng)的組網(wǎng)方案,實現(xiàn)了無線自組網(wǎng)的MAC協(xié)議和路由協(xié)議,完成了標簽的組網(wǎng)和多跳通信。利用物理載波偵聽、TDMA以及信道復用等機制避免了信號碰撞和串擾,提升了網(wǎng)絡穩(wěn)定性和數(shù)據(jù)正確率。通過設置數(shù)據(jù)加密以及報警功能,保證了系統(tǒng)無線網(wǎng)絡的安全性。 [1] 葉國欣,吳忻生,馮太合.基于ZigBee的超低功耗電子貨架標簽系統(tǒng)[J].科學技術(shù)與工程, 2013(32):9719-9724. [2] Neirynck D. An IEEE 802.15. 4A Ultra-Wideband Transceiver for Real Time Localisation and Wireless Sensor Networks[M]//Frequency References, Power Management for SoC, and Smart Wireless Interfaces.Berlin:Springer, 2014:297-310. [3] Shen J, Xie L, Mao J, et al. A passive UHF-RFID tag with inkjet-printed electrochromic paper display: RFID (RFID), 2013 IEEE International Conference on[C]. Penang:IEEE, 2013:118-123. [4] Mahajan S K. Power Saving MAC Protocols for WSNs and Optimization of S-MAC Protocol[J]. International Journal of Engineering Business Management, 2012,4(1). [5] Awang R A S A.Evaluation of the IEEE 802.11p-based TDMA MAC Method for Road Side-to-Vehicle Communications[J].International Journal of Network and Mobile Technologies, 2010,1(2). [6] 古志春,肖德琴.基于TDMA與CDMA混合的傳感器網(wǎng)絡MAC協(xié)議[J].計算機科學, 2011,38(6):84-87. [7] 劉瑞霞,李春杰,郭強,等.基于ZigBee網(wǎng)狀網(wǎng)絡的分簇路由協(xié)議[J].計算機工程, 2009,35(3):161-163. [8] 顏利平.Ad-hoc網(wǎng)絡中改進AODV路由協(xié)議的研究[D].哈爾濱:哈爾濱工業(yè)大學, 2011. 陳德軍(教授),研究方向為嵌入式系統(tǒng)和物聯(lián)網(wǎng)。 Chen Dejun,Ye Yuan,Mei Pan (Wuhan University of Technology,Wuhan 430070,China) In order to overcome the shortcomings of paper tags,this paper proposes a new electronic shelf label protocol in Ad-Hoc Network which Combining with the characters of Ad-Hoc Network and Wireless Sensor Network(WSN) and the advantages of electronic shelf label such as convenience,correctness and stability of data transmission.The article includes the following contents such as network routing protocol,MAC protocol,correctness and stability of data transmission and the low power design of the label. electronic shelf label;Ad-Hoc Network;routing protocol;MAC protocol TN929.5 A 士然 2014-08-23)2 無線自組網(wǎng)MAC協(xié)議研究與設計
3 網(wǎng)絡性能保障機制
4 無線自組網(wǎng)絡測試
結(jié) 語