姜世芬, 劉桂雄, 吳國(guó)光
(1.江門(mén)職業(yè)技術(shù)學(xué)院,廣東 江門(mén) 529090;2.華南理工大學(xué),廣東 廣州 510640)
即插即用是實(shí)現(xiàn)網(wǎng)絡(luò)化智能傳感器互換性、互操作性的關(guān)鍵,IEEE 1451.5標(biāo)準(zhǔn)規(guī)范了無(wú)線智能傳感器體系結(jié)構(gòu),為無(wú)線智能傳感器在不同現(xiàn)場(chǎng)網(wǎng)絡(luò)中的互換性、擴(kuò)展性提供解決途徑。無(wú)線傳感器接口即插即用研究主要集中在傳感網(wǎng)絡(luò)架構(gòu)、無(wú)線接口即插即用設(shè)計(jì)、即插即用軟件協(xié)議配置等方面。無(wú)線接口即插即用設(shè)計(jì)涵蓋ZigBee/Bluetooth/WiFi/6LoWPAN即插即用的研究[1],如西班牙Robotiker-Tecnalia公司[2]研究基于IEEE 1451.5藍(lán)牙標(biāo)準(zhǔn),開(kāi)發(fā)汽車環(huán)境下乘客健康狀況監(jiān)測(cè)傳感器網(wǎng)絡(luò),但因硬件資源受限,可接入傳感節(jié)點(diǎn)偏少且即插即用時(shí)間較長(zhǎng)。Kun-Yung Lu等[3]提出基于事先定義并存儲(chǔ)于網(wǎng)絡(luò)數(shù)據(jù)庫(kù)的ZigBee節(jié)點(diǎn)自標(biāo)識(shí)信息,實(shí)現(xiàn)傳感器、儀器儀表即插即用,但該機(jī)制缺乏通用性。周岳斌等[4]提出無(wú)線傳感器接口定期關(guān)聯(lián)匹配通信(periodic association matching communication,PAMC)機(jī)制,實(shí)現(xiàn)無(wú)線傳感器即插即用,在一定程度上提高識(shí)別率,但未涉及數(shù)據(jù)結(jié)構(gòu)簡(jiǎn)化、路由優(yōu)化等。
本文基于PAMC機(jī)制實(shí)現(xiàn)傳感器即插即用,重點(diǎn)研究IEEE 1451.5 ZigBee智能傳感器即插即用性能優(yōu)化方法,通過(guò)TEDS數(shù)據(jù)結(jié)構(gòu)簡(jiǎn)化、優(yōu)化ZigBee路由算法,減小無(wú)線智能傳感器即插即用識(shí)別時(shí)間,提高識(shí)別率與網(wǎng)絡(luò)效率。
圖1為基于定期關(guān)聯(lián)匹配通信PAMC的ZigBee IEEE 1451.5智能傳感系統(tǒng)架構(gòu),由NCAP(network capable application processor)與 WTIM(Wireless Transducer Interface Module)組 成 ,NCAP 負(fù) 責(zé)WTIM接入、關(guān)聯(lián)配置表、遠(yuǎn)程用戶訪問(wèn)管理等,采用ZigBee方式與WTIM通信。
圖1 無(wú)線接入IEEE 1451.5智能傳感系統(tǒng)架構(gòu)
圖2為WTIM即插即用流程圖,NCAP上電后選擇一個(gè)頻率通道,以協(xié)調(diào)器模式建立ZigBee網(wǎng)絡(luò)并等待WTIM加入;WTIM上電后通過(guò)掃描信道號(hào)、查詢網(wǎng)絡(luò),向NCAP發(fā)送加入請(qǐng)求,若NCAP允許加入,WTIM得到16位網(wǎng)絡(luò)地址;WTIM與NCAP建立正常通信后,啟動(dòng)向NCAP發(fā)送關(guān)聯(lián)信息,以標(biāo)識(shí)WTIM網(wǎng)絡(luò)狀態(tài);NCAP加載TEDS,利用關(guān)聯(lián)信息建立關(guān)聯(lián)信息表,根據(jù)WTIM接入情況動(dòng)態(tài)更新網(wǎng)絡(luò)參數(shù)與傳感信息;NCAP啟動(dòng)傳感通道,WTIM按設(shè)定數(shù)據(jù)幀格式發(fā)送測(cè)量數(shù)據(jù),NCAP完成傳感數(shù)據(jù)顯示和網(wǎng)絡(luò)發(fā)布。
圖2 無(wú)線智能傳感器即插即用流程圖
無(wú)線傳感器接口即插即用PAMC機(jī)制采用網(wǎng)絡(luò)參數(shù)恢復(fù)和定期關(guān)聯(lián)匹配通信方式,縮短了NCAP對(duì)WTIM的配置時(shí)間,減少了即插即用識(shí)別時(shí)間。
ZigBee信道帶寬受限,當(dāng)ZigBee網(wǎng)絡(luò)中較多WTIM傳輸數(shù)據(jù)且多個(gè)WTIM同時(shí)接入網(wǎng)絡(luò)時(shí),TEDS數(shù)據(jù)量、路由選擇直接影響無(wú)線傳感器接口即插即用性能。因此,簡(jiǎn)化TEDS數(shù)據(jù)結(jié)構(gòu)、優(yōu)化ZigBee路由算法,將有助于減小智能傳感器ZigBee無(wú)線接口即插即用識(shí)別時(shí)間、提高識(shí)別率。
標(biāo)準(zhǔn)TEDS數(shù)據(jù)結(jié)構(gòu)較為繁雜,當(dāng)系統(tǒng)忙或較多WTIM同時(shí)接入網(wǎng)絡(luò)時(shí),瞬時(shí)大量TEDS數(shù)據(jù)會(huì)造成數(shù)據(jù)擁塞甚至數(shù)據(jù)丟失,嚴(yán)重影響即插即用速度與識(shí)別率。同時(shí)考慮到NCAP存儲(chǔ)資源有限,不宜保存大量TEDS數(shù)據(jù),通過(guò)簡(jiǎn)化WTIM的TEDS數(shù)據(jù)結(jié)構(gòu),可減少系統(tǒng)存儲(chǔ)容量要求。
基于IEEE1451.5的ZigBee無(wú)線傳感器接口必須包含 Meta-TEDS、Channel-TEDS、PHY TEDS,分別描述WTIM總體信息、通道屬性、物理特性[5]。本文采用的簡(jiǎn)化原則為:
(1)刪除不必要TEDS數(shù)據(jù)字段。IEEE 1451.0標(biāo)準(zhǔn)中,Meta-TEDS原有23種數(shù)據(jù)字段保留5種,Channel-TEDS原有55種數(shù)據(jù)字段保留10種,IEEE 1451.5的PHY TEDS原有20種數(shù)據(jù)字段保留8種。
(2)減小數(shù)據(jù)字段長(zhǎng)度。為增強(qiáng)適用性,IEEE 1451標(biāo)準(zhǔn)定義的TEDS數(shù)據(jù)字段長(zhǎng)度一般偏大,實(shí)際應(yīng)用可適當(dāng)減小,如原為4字節(jié)Length字段減為1字節(jié),原為4字節(jié)LowLimit、HiLimit字段減為2字節(jié)。
(3)簡(jiǎn)化數(shù)據(jù)字段定義。如物理單位字段原采用9種基本單位指數(shù)形式表示,共13字節(jié),描述方法雖完善,但對(duì)常見(jiàn)傳感量不夠直觀、簡(jiǎn)潔且解析過(guò)程復(fù)雜,表1為簡(jiǎn)化后物理單位定義表,僅占1字節(jié)。
表1 物理單位簡(jiǎn)化定義
表2是簡(jiǎn)化后的 Meta-TEDS、Channel-TEDS、PHY TEDS數(shù)據(jù)結(jié)構(gòu)。
表2 無(wú)線智能傳感器TEDS簡(jiǎn)化數(shù)據(jù)結(jié)構(gòu)
借助以上措施,可實(shí)現(xiàn)無(wú)線智能傳感器TEDS數(shù)據(jù)結(jié)構(gòu)簡(jiǎn)化。WTIM將簡(jiǎn)化的TEDS數(shù)據(jù)發(fā)送至NCAP,NCAP通過(guò)相應(yīng)TEDS解析算法得到WTIM及傳感通道相關(guān)信息,配置相關(guān)資源,實(shí)現(xiàn)WTIM即插即用。
ZigBee采用網(wǎng)絡(luò)樹(shù)路由算法,根據(jù)網(wǎng)絡(luò)地址和父子關(guān)系實(shí)現(xiàn)路由選擇,優(yōu)點(diǎn)是沒(méi)有路由發(fā)現(xiàn)過(guò)程,無(wú)需存儲(chǔ)路由表,但數(shù)據(jù)并非沿最優(yōu)路徑傳輸,易造成服務(wù)延遲、流量不均衡[6]。圖3是IEEE 1451.5無(wú)線智能傳感器系統(tǒng)的ZigBee網(wǎng)絡(luò)樹(shù)路由結(jié)構(gòu)圖。
圖3 ZigBee網(wǎng)絡(luò)樹(shù)路由結(jié)構(gòu)圖
NCAP以協(xié)調(diào)器模式建立ZigBee網(wǎng)絡(luò)后,WTIM作為路由節(jié)點(diǎn)(RWTIM)或終端節(jié)點(diǎn)(TWTIM)加入網(wǎng)絡(luò),形成樹(shù)狀拓?fù)浣Y(jié)構(gòu)。當(dāng)TWTIM申請(qǐng)加入網(wǎng)絡(luò),只能選擇RWTIM或NCAP作為父節(jié)點(diǎn),獲得父節(jié)點(diǎn)分配的16b網(wǎng)絡(luò)地址。當(dāng)較多WTIM同時(shí)接入時(shí),網(wǎng)絡(luò)樹(shù)路由算法對(duì)TEDS傳輸路徑選擇直接影響ZigBee接口即插即用性能。如當(dāng)TWTIM節(jié)點(diǎn)A向NCAP節(jié)點(diǎn)O發(fā)送數(shù)據(jù)時(shí),按照網(wǎng)絡(luò)樹(shù)路由算法的父子關(guān)系,數(shù)據(jù)需要依次經(jīng)過(guò)B、C、D、O四跳才能到達(dá)NCAP;若節(jié)點(diǎn)A能直接經(jīng)最近鄰節(jié)點(diǎn)E轉(zhuǎn)發(fā)到節(jié)點(diǎn)O僅需兩跳,傳輸路徑更優(yōu)、延遲更短。
設(shè)Ap、Anr、Ant分別為父節(jié)點(diǎn)、第n個(gè)路由子節(jié)點(diǎn)、第n個(gè)終端子節(jié)點(diǎn)的地址,Lm、Cm、Rm、d、Cs(d)分別為網(wǎng)絡(luò)最大深度、節(jié)點(diǎn)最大子節(jié)點(diǎn)數(shù)、節(jié)點(diǎn)最大路由子節(jié)點(diǎn)數(shù)、子節(jié)點(diǎn)網(wǎng)絡(luò)深度、父節(jié)點(diǎn)與子節(jié)點(diǎn)間地址偏移量。協(xié)調(diào)器組網(wǎng)后網(wǎng)絡(luò)地址為0,網(wǎng)絡(luò)深度為0,新節(jié)點(diǎn)網(wǎng)絡(luò)地址確定公式為
若深度為d、網(wǎng)絡(luò)地址為A的路由節(jié)點(diǎn)收到網(wǎng)絡(luò)地址為D的目的節(jié)點(diǎn)數(shù)據(jù),由式(4)判斷目的節(jié)點(diǎn)是否為其后代節(jié)點(diǎn)。
若是其后代節(jié)點(diǎn),則下一跳節(jié)點(diǎn)地址Nhop由式(5)確定,否則下一跳節(jié)點(diǎn)為該節(jié)點(diǎn)父節(jié)點(diǎn)。
每個(gè)ZigBee設(shè)備都維持一個(gè)鄰居表用于存儲(chǔ)單跳范圍內(nèi)節(jié)點(diǎn)信息,用戶根據(jù)需要調(diào)整鄰居表信息。節(jié)點(diǎn)收到鄰居節(jié)點(diǎn)任何幀都會(huì)更新鄰居表信息,可由ZigBee協(xié)議完成,不會(huì)帶來(lái)額外數(shù)據(jù)傳輸[7-8],故可從鄰居表節(jié)點(diǎn)信息對(duì)網(wǎng)絡(luò)樹(shù)路由算法進(jìn)行改進(jìn)。
圖4為網(wǎng)絡(luò)樹(shù)路由算法定義的改進(jìn)鄰居表格式,表中 NodeAddr、NodeType、NodeDepth、CurRload分別表示鄰居節(jié)點(diǎn)地址、類型(路由或終端)、網(wǎng)絡(luò)深度、當(dāng)前路由負(fù)載能力。
圖4 改進(jìn)的鄰居表格式
若表征接收數(shù)據(jù)幀能量、質(zhì)量的鏈路質(zhì)量指示為L(zhǎng)QI(link quality indicator)、后代節(jié)點(diǎn)總數(shù)為Ndes,則當(dāng)前路由負(fù)載能力CurRload表達(dá)式為
新WTIM加入網(wǎng)絡(luò)時(shí),TEDS沿網(wǎng)絡(luò)樹(shù)結(jié)構(gòu)傳至協(xié)調(diào)器,沿途路由節(jié)點(diǎn)將Ndes值加1;鏈路質(zhì)量指示LQI(0≤LQI≤255)在 ZigBee收發(fā)模塊每接收一個(gè)數(shù)據(jù)幀都可以得到,數(shù)值越高表明鏈路質(zhì)量越好、傳輸越可靠。鄰居節(jié)點(diǎn)后代節(jié)點(diǎn)總數(shù)Ndes、鏈路質(zhì)量指示LQI一定程度上反映了鄰居節(jié)點(diǎn)潛在數(shù)據(jù)路由任務(wù)強(qiáng)度,體現(xiàn)鄰居節(jié)點(diǎn)當(dāng)前路由負(fù)載能力大小。
圖5 改進(jìn)后網(wǎng)絡(luò)樹(shù)路由算法流程圖
圖5為改進(jìn)后網(wǎng)絡(luò)樹(shù)路由算法流程圖,圖中虛框部分為算法改進(jìn)部分,借助鄰居表實(shí)時(shí)更新鄰居節(jié)點(diǎn)特性參數(shù),獲得跳數(shù)較少路由路徑。具體步驟為:
(1)搜索目的節(jié)點(diǎn)。節(jié)點(diǎn)接收數(shù)據(jù)后首先判斷自己是否為目的節(jié)點(diǎn),若不是則再判斷是否為其后代節(jié)點(diǎn),若是其后代節(jié)點(diǎn)則轉(zhuǎn)發(fā)數(shù)據(jù)到相應(yīng)子節(jié)點(diǎn)再返回步驟(1),否則轉(zhuǎn)至步驟(2)。
(2)數(shù)據(jù)丟棄判定。判斷當(dāng)前網(wǎng)絡(luò)深度是否為0(表示路由失?。?,是則丟棄數(shù)據(jù)、結(jié)束路由,不是則轉(zhuǎn)至步驟(3)。
(3)搜索鄰居表。如目的地址與鄰居節(jié)點(diǎn)地址相符,則直接發(fā)送數(shù)據(jù)到鄰居節(jié)點(diǎn),否則搜索鄰居節(jié)點(diǎn)中是否有路由節(jié)點(diǎn);無(wú)路由節(jié)點(diǎn)則發(fā)送數(shù)據(jù)到父節(jié)點(diǎn),有路由節(jié)點(diǎn)則搜索與目的節(jié)點(diǎn)網(wǎng)絡(luò)深度差距最小的鄰居節(jié)點(diǎn),并發(fā)送數(shù)據(jù)到該節(jié)點(diǎn);若網(wǎng)絡(luò)深度差距相同,則再搜索當(dāng)前路由負(fù)載能力(由Ndes、LQI反映)最大的鄰居節(jié)點(diǎn),并發(fā)送數(shù)據(jù)到該節(jié)點(diǎn),否則發(fā)送數(shù)據(jù)到父節(jié)點(diǎn),返回步驟(1)。
在Matlab 2010R平臺(tái)上仿真基于IEEE1451.5的ZigBee無(wú)線智能傳感器接口即插即用性能優(yōu)化前后對(duì)比效果,仿真參數(shù)為:網(wǎng)絡(luò)覆蓋面積、WTIM節(jié)點(diǎn)傳輸距離分別為200 m×200 m,20 m,數(shù)據(jù)傳輸速率、數(shù)據(jù)包、誤碼率分別為 250 kB/s、16 B、0,網(wǎng)絡(luò)延遲為 0ms,設(shè)置 Cm=4、Rm=4、Lm=5,時(shí)間 120s。圖 6 為算法優(yōu)化前后平均跳數(shù)對(duì)比圖。
圖6 WTIM到NCAP平均跳數(shù)比較圖
圖7 WTIM到NCAP平均時(shí)延比較圖
圖7為算法優(yōu)化前后平均時(shí)延結(jié)果對(duì)比圖,可以看出,隨著節(jié)點(diǎn)數(shù)目的增加,兩種算法平均跳數(shù)、平均延時(shí)隨之增加,但本文所提出的優(yōu)化算法比原網(wǎng)絡(luò)樹(shù)路由算法平均跳數(shù)減少42.9%,平均延時(shí)降低28.1%,數(shù)據(jù)傳輸效率與網(wǎng)絡(luò)實(shí)時(shí)性得到較大提高。
基于IEEE1451.5的ZigBee智能傳感器網(wǎng)絡(luò)中較多WTIM傳輸數(shù)據(jù)且多個(gè)WTIM同時(shí)接入網(wǎng)絡(luò)時(shí),TEDS數(shù)據(jù)量、路由選擇直接影響無(wú)線傳感器接口即插即用性能,采用定期關(guān)聯(lián)匹配通信機(jī)制(PAMC)縮短了NCAP對(duì)WTIM的配置時(shí)間,減少了ZigBee智能傳感器即插即用識(shí)別時(shí)間;簡(jiǎn)化TES數(shù)據(jù)結(jié)構(gòu),刪除不必要TEDS數(shù)據(jù)字段、減小數(shù)據(jù)字段長(zhǎng)度、簡(jiǎn)化數(shù)據(jù)字段定義等原則簡(jiǎn)化Meta-TEDS、Channel-TEDS、PHY TEDS數(shù)據(jù)結(jié)構(gòu),減少無(wú)線智能傳感器TEDS數(shù)據(jù)量,進(jìn)一步減小WTIM即插即用識(shí)別時(shí)間;改進(jìn)ZigBee路由算法,借助ZigBee節(jié)點(diǎn)鄰居表與節(jié)點(diǎn)特性參數(shù),實(shí)現(xiàn)無(wú)線傳感接口即插即用數(shù)據(jù)最優(yōu)路徑傳輸,可大大提高數(shù)據(jù)傳輸效率及網(wǎng)絡(luò)實(shí)時(shí)性,智能傳感器即插即用性能得到優(yōu)化。
[1]Higuera J,Polo J,Gasulla M.A ZigBee wireless sensor network compliantwith the IEEE 1451 standard[C]∥Sensors Applications Symposium,2009:309-313.
[2]Larrauri J M,Larrinaga B A,Lopez M L,et al.A sensor network solution to evaluate the wellbeing of the passenger and improve safety in cars[C]∥International Conference on Wireless Information Networks and Systems,2010:61-66.
[3]Lu K Y.A plug-and-play data gathering system using ZigBee-based sensor network[J].Computers in Industry,2011,62(7):719-728.
[4]PAMC based IEEE 1451-2012 wireless sensor interface plug and play mechanism and implementation.International Workshop on Information and Electronics Engineering[S],2012:2511-2515.
[5]Sindhu M,Deniz G.IEEE 1451.0 compatible TEDS creation using NET framework[C]∥Sensors Applications Symposium,2009:281-286.
[6]戚劍超,魏臻.ZigBee樹(shù)型路由算法的改進(jìn)[J].合肥工業(yè)大學(xué)學(xué)報(bào):自然科學(xué)版,2010,33(4):529-532.
[7]李剛,陳俊杰,葛文濤.一種改進(jìn)的ZigBee網(wǎng)絡(luò)Cluster Tree 路由算法[J].測(cè)控技術(shù),2009,28(9):52-55.
[8]路染妮,張剛.ZigBee無(wú)線傳感網(wǎng)絡(luò)的路由協(xié)議研究[J].電子設(shè)計(jì)工程,2010,18(11):182-185.