無線傳感器網(wǎng)絡(luò)智能建筑節(jié)能系統(tǒng)數(shù)據(jù)傳輸協(xié)議設(shè)計(jì)與實(shí)現(xiàn)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘要:無線傳感器網(wǎng)絡(luò)智能建筑節(jié)能系統(tǒng)主要是通過分布式自組織的無線傳感器網(wǎng)絡(luò)對建筑物中的環(huán)境等信息進(jìn)行感知,動(dòng)態(tài)地對建筑物中的燈光、空調(diào)等設(shè)備進(jìn)行控制,實(shí)現(xiàn)智能節(jié)能的目的。其中,控制信息的可靠傳輸對智能建筑節(jié)能起著關(guān)鍵性的作用。該協(xié)議討論研究了現(xiàn)有的無線傳感器網(wǎng)絡(luò)數(shù)據(jù)傳輸技術(shù)中的不足,并結(jié)合智能建筑節(jié)能的特點(diǎn)和實(shí)際需求,設(shè)計(jì)和實(shí)現(xiàn)了一個(gè)基于優(yōu)先級隊(duì)列及優(yōu)先級ACK的數(shù)據(jù)傳輸方案,對重要信息提供端到端的保證,實(shí)現(xiàn)了控制信息的及時(shí)、可靠傳輸。
關(guān)鍵詞:無線傳感器網(wǎng)絡(luò);智能建筑節(jié)能;可靠傳輸;優(yōu)先級隊(duì)列
0 引言
智能建筑是用通信技術(shù)、信息技術(shù)和控制技術(shù),按照系統(tǒng)工程原理將建筑物有機(jī)的結(jié)合起來,通過對建筑設(shè)備系統(tǒng)的自動(dòng)監(jiān)控和信息資源的有效管理,向使用者提供智能的綜合信息服務(wù),使其獲得舒適、高效和便利的建筑環(huán)境。
在智能建筑中,節(jié)約能源是最重要的問題之一。為了實(shí)現(xiàn)智能建筑節(jié)能,需要構(gòu)建網(wǎng)絡(luò)去感知建筑物中各項(xiàng)設(shè)備的當(dāng)前工作狀態(tài)和工作環(huán)境,并將感知的信息及時(shí)的發(fā)送至中央控制器,從而對建筑物中的設(shè)備進(jìn)行控制,在滿足人的各項(xiàng)基本需求情況下,使得建筑物總能耗最小。無線傳感器網(wǎng)絡(luò)是由部署在監(jiān)測區(qū)域內(nèi)部或附近的大量廉價(jià)微型傳感器節(jié)點(diǎn)通過自組織方式構(gòu)成的網(wǎng)絡(luò),具有低成本、低能耗、靈活性高、可擴(kuò)展等優(yōu)點(diǎn),因此利用無線傳感器網(wǎng)絡(luò)技術(shù)構(gòu)建智能建筑網(wǎng)絡(luò)具有得天獨(dú)厚的技術(shù)優(yōu)勢和應(yīng)用前景。
本文在北京交通大學(xué)下一代互聯(lián)網(wǎng)互聯(lián)設(shè)備國家工程實(shí)驗(yàn)室自主研發(fā)的IPv6無線傳感器節(jié)點(diǎn)基礎(chǔ)上,結(jié)合智能建筑節(jié)能的特點(diǎn)和實(shí)際需求,設(shè)計(jì)和實(shí)現(xiàn)了一個(gè)切實(shí)可行的可靠數(shù)據(jù)傳輸協(xié)議,實(shí)現(xiàn)了智能建筑節(jié)能無線傳感器網(wǎng)絡(luò)信息的優(yōu)先級傳輸,保證了節(jié)能系統(tǒng)的穩(wěn)定、可靠、高效運(yùn)行。
1 無線傳感器網(wǎng)絡(luò)智能建筑節(jié)能系統(tǒng)
無線傳感器網(wǎng)絡(luò)由于其易于部署、成本低等特點(diǎn)成為智能建筑節(jié)能領(lǐng)域不可或缺的技術(shù)之一。利用無線傳感器網(wǎng)絡(luò)對物理環(huán)境的感知,將環(huán)境信息數(shù)據(jù)通過自組織多跳的方式傳送至服務(wù)器。一方面無線傳感器網(wǎng)絡(luò)可以通過自我決策機(jī)制對智能建筑的空調(diào)、燈光等設(shè)備進(jìn)行控制;另一方面,服務(wù)器決策者可以通過中央控制器對某個(gè)設(shè)備直接控制。無線傳感器網(wǎng)絡(luò)智能建筑節(jié)能示意圖如圖1所示。
一個(gè)完整的無線傳感器網(wǎng)絡(luò)智能建筑節(jié)能系統(tǒng)分為數(shù)據(jù)采集和控制兩個(gè)部分,如圖2所示。按照系統(tǒng)中數(shù)據(jù)流向的不同,將數(shù)據(jù)鏈路分為上行鏈路和下行鏈路,其中下行鏈路為服務(wù)器-網(wǎng)關(guān)-無線傳感器網(wǎng)絡(luò)-物理設(shè)備控制接口-智能建筑節(jié)能物理設(shè)備;上行鏈路為無線傳感器網(wǎng)絡(luò)-網(wǎng)關(guān)-服務(wù)器,如圖2中虛箭頭所示。
1.1 數(shù)據(jù)采集子系統(tǒng)
數(shù)據(jù)采集子系統(tǒng)主要是對物理世界環(huán)境信息進(jìn)行感知并通過網(wǎng)關(guān)上傳至服務(wù)器,并且以此為承載,將服務(wù)器發(fā)送的命名信息發(fā)送至控制節(jié)點(diǎn)對智能建筑節(jié)能的物理設(shè)備進(jìn)行控制,包含無線傳感器網(wǎng)絡(luò)信息感知、網(wǎng)關(guān)接入、服務(wù)器決策與控制三部分。
1.1.1 無線傳感器網(wǎng)絡(luò)信息感知
無線傳感器網(wǎng)絡(luò)的信息感知主要是用溫濕度、光強(qiáng)等傳感器對實(shí)際物理環(huán)境進(jìn)行感知,實(shí)現(xiàn)數(shù)據(jù)采集的功能。為保證智能建筑節(jié)能系統(tǒng)的高效運(yùn)行,準(zhǔn)確地信息采集顯得尤為重要。采用的傳感器包括紅外、溫濕度、光強(qiáng)、CO2等傳感器。
1.1.2 網(wǎng)關(guān)接入
網(wǎng)關(guān)(Gateway)又稱網(wǎng)問連接器、協(xié)議轉(zhuǎn)換器。為了實(shí)現(xiàn)無線傳感器網(wǎng)絡(luò)與互聯(lián)網(wǎng)的接入需要借助網(wǎng)關(guān)設(shè)備實(shí)現(xiàn)。目前實(shí)現(xiàn)無線傳感器網(wǎng)絡(luò)與互聯(lián)網(wǎng)的接入接口主要包括GSM接入、CDMA接入、串口接入、以太網(wǎng)接入四種接入方式。
1.1.3 服務(wù)器決策與控制
在服務(wù)器端,收到經(jīng)網(wǎng)關(guān)轉(zhuǎn)換的無線傳感器網(wǎng)絡(luò)感知數(shù)據(jù),對信息做進(jìn)一步處理,從而實(shí)現(xiàn)智能決策的功能。
1.2 控制子系統(tǒng)
控制系統(tǒng)主要是對智能建筑中不同物理設(shè)備進(jìn)行控制。由于不同設(shè)備的控制接口不同,需要設(shè)計(jì)不同的控制節(jié)點(diǎn)。對有WiFi或紅外接口的設(shè)備,如空調(diào)等可直接設(shè)計(jì)相應(yīng)的紅外或WiFi收發(fā)器對其控制;對類似燈光僅僅包含開、關(guān)兩種狀態(tài)的設(shè)備,設(shè)計(jì)了電源開關(guān)控制器,如圖3所示。
2 可靠傳輸?shù)脑O(shè)計(jì)與實(shí)現(xiàn)
由圖2可知,數(shù)據(jù)傳輸協(xié)議貫穿無線傳感器網(wǎng)絡(luò)智能建筑節(jié)能整個(gè)系統(tǒng),對系統(tǒng)的穩(wěn)定、高效運(yùn)行具有重要意義。在智能建筑節(jié)能系統(tǒng)中,按照重要程度的不同將智能建筑節(jié)能系統(tǒng)中的數(shù)據(jù)主要分為三類,一類是關(guān)鍵數(shù)據(jù)(Critical Data),如控制命令、環(huán)境變化告警等信息,這部分信息很關(guān)鍵,對系統(tǒng)的功能實(shí)現(xiàn)起著決定性的作用,對傳輸質(zhì)量要求很高;一類是重要數(shù)據(jù)(Important Data),如路由等信息,這部分信息也比較重要,但允許一定的丟包率和延時(shí);一類是一般數(shù)據(jù)(Norreal Data),如周期性采集到的溫濕度、光強(qiáng)等信息,這部分信息冗余度比較高。
2.1 體系結(jié)構(gòu)介紹
本系統(tǒng)軟件部分底層(包括MAC層和物理層)采用IEEE 802.15.4協(xié)議,其調(diào)制方式為OQPSK,速率為250 Kb/s;IPv6微型協(xié)議棧包括UDP,TCP,ICMPv6等基本協(xié)議,以及在節(jié)點(diǎn)之間建立和維護(hù)多跳路由的MSRP(Mobile Sensor Routing Protocol)路由協(xié)議;在MAC層和IPv6微型協(xié)議棧之間引入了一個(gè)適配層,這是由于IEEE 802.15.4支持的數(shù)據(jù)包長度最大為127 B,當(dāng)接入對象網(wǎng)絡(luò)協(xié)議支持的最大數(shù)據(jù)包長度超過127 B時(shí),需要對數(shù)據(jù)包做分片處理;另外,協(xié)議棧里面包含兩個(gè)獨(dú)立的緩沖區(qū),一個(gè)是發(fā)送隊(duì)列,一個(gè)是接收隊(duì)列,分別用于數(shù)據(jù)的發(fā)送和接收,如圖4所示。
2.2 可靠傳輸?shù)脑O(shè)計(jì)與實(shí)現(xiàn)
數(shù)據(jù)的發(fā)送:若有數(shù)據(jù)需要發(fā)送,要先將其放入發(fā)送隊(duì)列排隊(duì)輪詢,然后為其裝配適配頭,再經(jīng)由MAC層對其處理發(fā)送。在收到下一跳節(jié)點(diǎn)對其回傳的ACK后將數(shù)據(jù)從發(fā)送隊(duì)列中清除,這樣就完成了一次數(shù)據(jù)包的發(fā)送。
數(shù)據(jù)的接收:當(dāng)節(jié)點(diǎn)接收到底層傳上來的數(shù)據(jù)后,根據(jù)數(shù)據(jù)包的類型進(jìn)入不同的處理函數(shù),若節(jié)點(diǎn)接收到數(shù)據(jù)包是普通的Data包,則將數(shù)據(jù)放入接收隊(duì)列,然后交由適配層進(jìn)行處理,根據(jù)目的地的不同選擇本地處理或轉(zhuǎn)發(fā)。
數(shù)據(jù)的重傳機(jī)制:在傳統(tǒng)的IEEE 802.15.4協(xié)議中,在發(fā)送數(shù)據(jù)包給下一跳時(shí)都需要下一跳回復(fù)ACK,當(dāng)超時(shí)沒有收到ACK時(shí)則進(jìn)行數(shù)據(jù)重傳,最大重傳次數(shù)(macMaxFrameRetries)默認(rèn)為3。3次重傳失敗后,直接丟棄數(shù)據(jù)包。
由此可見,傳統(tǒng)的傳輸協(xié)議不對數(shù)據(jù)包進(jìn)行分類,僅考慮單隊(duì)列傳輸。另外,在節(jié)點(diǎn)對逐跳提供了最多3次的重傳,無法保證關(guān)鍵信息包(如對空調(diào)的控制等信息)的準(zhǔn)確傳輸。因此,需要對協(xié)議進(jìn)行改進(jìn),對數(shù)據(jù)包進(jìn)行優(yōu)先級分類,利用優(yōu)先級隊(duì)列管理的思想,同時(shí)對關(guān)鍵信息包提供端到端的保證,以滿足無線傳感器網(wǎng)絡(luò)建筑節(jié)能系統(tǒng)數(shù)據(jù)傳輸?shù)膽?yīng)用需求。
2.2.1 優(yōu)先級隊(duì)列傳輸
根據(jù)三類不同的數(shù)據(jù)類型,將數(shù)據(jù)分為三個(gè)優(yōu)先級,高優(yōu)先級(High Priority,HP),中優(yōu)先級(Middle Priority,MP),低優(yōu)先級(Low Priority,LP)。每個(gè)節(jié)點(diǎn)內(nèi)部有高、中、低三個(gè)優(yōu)先級的FIFO(First In First Out)隊(duì)列,分別表示為HP,MP,LP,并具有相同的緩存區(qū)長度,每個(gè)隊(duì)列按照重要性的不同分配給不同的權(quán)值。當(dāng)一個(gè)數(shù)據(jù)包到達(dá)時(shí),首先應(yīng)該通過數(shù)據(jù)包分類器進(jìn)行過濾,按照種類的不同進(jìn)行優(yōu)先級劃分,然后被添加至不同隊(duì)列的隊(duì)尾。優(yōu)先級從列如圖5所示。
對任意優(yōu)先級隊(duì)列,當(dāng)檢測到隊(duì)列長度θL超出某一設(shè)定閾值θthr時(shí),并不是立即啟動(dòng)置擁塞狀態(tài)指示位C,而是以概率P置位(概率P的選擇采用隨機(jī)早期檢測的方法,Random Early Detection,RED),這時(shí)說明網(wǎng)絡(luò)即將出現(xiàn)擁塞或已出現(xiàn)輕微擁塞;當(dāng)θL超過設(shè)定的閾值θthr,表明網(wǎng)絡(luò)已經(jīng)發(fā)生嚴(yán)重?fù)砣瑸榱吮M快減緩擁塞,必須對數(shù)據(jù)包進(jìn)行丟棄策略。在獲得信道訪問權(quán)進(jìn)行隊(duì)列調(diào)度時(shí),從高優(yōu)先級往低優(yōu)先級的順序依次調(diào)度,保證高優(yōu)先級數(shù)據(jù)的及時(shí)性。同時(shí)為了保護(hù)高優(yōu)先級信息的傳輸,將這些信息賦予高優(yōu)先級的信道訪問權(quán),優(yōu)先占用信道,使得這部分信息傳輸具有更少的退避時(shí)延。
2.2.2 優(yōu)先級ACK機(jī)制
IEEE 802.15.4標(biāo)準(zhǔn)中規(guī)定,發(fā)送信標(biāo)幀或確認(rèn)幀時(shí),應(yīng)將MAC幀頭確認(rèn)請求子域設(shè)置為0,不要求目標(biāo)接收設(shè)備確認(rèn),發(fā)送任何廣播幀確認(rèn)請求子域都設(shè)置為0;MAC數(shù)據(jù)幀或MAC命令幀發(fā)送時(shí),幀控制域確認(rèn)請求子域應(yīng)設(shè)置為1,接收設(shè)備將對發(fā)送幀進(jìn)行確認(rèn),若目標(biāo)接收設(shè)備正確接收到該幀將發(fā)送一個(gè)確認(rèn)幀,該確認(rèn)幀的數(shù)據(jù)順序編號與所確認(rèn)的MAC數(shù)據(jù)幀或MAC命令幀數(shù)據(jù)順序編號相同。
若每一個(gè)MAC數(shù)據(jù)幀都要求接收方回復(fù)ACK幀,ACK幀在網(wǎng)絡(luò)中的傳輸量將不可忽略。同時(shí),若接收方正確接收MAC數(shù)據(jù)幀后回復(fù)的ACK幀在傳輸過程中丟失,導(dǎo)致MAC數(shù)據(jù)幀發(fā)送方認(rèn)為上一次數(shù)據(jù)幀傳輸失敗而重發(fā)數(shù)據(jù)幀,這類現(xiàn)象將引發(fā)不必要的數(shù)據(jù)重傳,造成能量浪費(fèi)。因此需要對IEEE 802.15.4MAC協(xié)議ACK機(jī)制進(jìn)行改進(jìn)。
當(dāng)網(wǎng)絡(luò)穩(wěn)健運(yùn)行,監(jiān)測環(huán)境中無特殊事件發(fā)生時(shí),普通數(shù)據(jù)周期性由無線傳感器網(wǎng)絡(luò)向外界報(bào)告,這部分信息通常具有一定的冗余性。例如,無線傳感器網(wǎng)絡(luò)在一個(gè)小時(shí)內(nèi)甚至更長的一段時(shí)間內(nèi)采集建筑物室內(nèi)的溫度數(shù)據(jù)、光強(qiáng)數(shù)據(jù),小量普通數(shù)據(jù)包的丟失不會對整個(gè)建筑節(jié)能系統(tǒng)的總體性能產(chǎn)生很大的影響。同時(shí),在無人為等干擾情況下,無線鏈路狀態(tài)良好,普通數(shù)據(jù)傳輸成功率很高,并不需要每一跳都有ACK確認(rèn)回復(fù)。因此,對數(shù)據(jù)包的確認(rèn)采用以下策略:
(1)LP低優(yōu)先級數(shù)據(jù)包:不進(jìn)行ACK確認(rèn);
(2)MP中優(yōu)先級數(shù)據(jù)包:逐跳的ACK確認(rèn);
(3)HP高優(yōu)先級數(shù)據(jù)包:逐跳的ACK確認(rèn)+端到端的ACK確認(rèn)。
對于低優(yōu)先級數(shù)據(jù)包,不進(jìn)行ACK確認(rèn),直接發(fā)送或者轉(zhuǎn)發(fā);對于中優(yōu)先級數(shù)據(jù)包,進(jìn)行逐跳的ACK確認(rèn),這也是IEEE 802.15.4標(biāo)準(zhǔn)的原先處理方式;對于高優(yōu)先級數(shù)據(jù)包,源端發(fā)送高優(yōu)先級數(shù)據(jù)后并不立即清除,而是將其放至特定緩存區(qū),直到收到來自目的端的ACK確認(rèn)信息方可清空緩存區(qū),如果在一定時(shí)間內(nèi)沒有收到來自目的端的確認(rèn)信息,則啟動(dòng)重傳機(jī)制。
3 實(shí)際測試環(huán)境的搭建與測試
本文利用北京交通大學(xué)下一代互聯(lián)網(wǎng)互聯(lián)設(shè)備國家工程實(shí)驗(yàn)室自主開發(fā)和研制的微型傳感路由器MSRLab6進(jìn)行驗(yàn)證,MSRLab6節(jié)點(diǎn)采用ATmega128作為處理器、射頻芯片采用CC2420芯片,能量供應(yīng)模塊使用直流9 V電壓供電或直接采用3.3 V干電池供電。驗(yàn)證系統(tǒng)如圖6所示,主要是在機(jī)械樓7層實(shí)際場景部署。其中紅色圓形節(jié)點(diǎn)(如7011等)為普通節(jié)點(diǎn),紅色三角形節(jié)點(diǎn)(如1951等)為中繼節(jié)點(diǎn),五角星節(jié)點(diǎn)(8919)為網(wǎng)關(guān)節(jié)點(diǎn)。各普通節(jié)點(diǎn)在收集每個(gè)房間的溫濕度、光強(qiáng)等傳感信息,通過中繼節(jié)點(diǎn)以多跳的方式將數(shù)據(jù)發(fā)送至網(wǎng)關(guān)節(jié)點(diǎn),網(wǎng)關(guān)節(jié)點(diǎn)將協(xié)議進(jìn)行轉(zhuǎn)換把數(shù)據(jù)發(fā)送給服務(wù)器并保存在本地?cái)?shù)據(jù)庫。在服務(wù)器端,用戶可以在用戶管理端的圖形界面上發(fā)送命令,通過網(wǎng)關(guān)節(jié)點(diǎn)發(fā)送給普通節(jié)點(diǎn),可以實(shí)現(xiàn)改變普通節(jié)點(diǎn)的配置,獲取節(jié)點(diǎn)信息等功能。
測試所發(fā)送的數(shù)據(jù)包如圖7所示,前4位為適配頭,轉(zhuǎn)換為二進(jìn)制為前16位,其中第12及13位表示數(shù)據(jù)包的優(yōu)先級。“11”代表HP數(shù)據(jù),“01”代表MP數(shù)據(jù),“00”代表LP數(shù)據(jù),對應(yīng)到圖中就分別為“18”,“08”,“00”。
圖8是丟包率測試結(jié)果,由圖可以看出,由于采用了端到端的確認(rèn)機(jī)制可以保證高優(yōu)先級數(shù)據(jù)的可靠傳輸;同時(shí)使得中優(yōu)先級和低優(yōu)先級數(shù)據(jù)的丟包率在5跳以內(nèi)都低于傳統(tǒng)的數(shù)據(jù)傳輸協(xié)議;在6跳以后,由于實(shí)際應(yīng)用環(huán)境的復(fù)雜性(電磁以及人的干擾等),網(wǎng)絡(luò)性能不太穩(wěn)定,數(shù)據(jù)傳輸?shù)膩G包率增加明顯。因此本文提出的智能建筑數(shù)據(jù)傳輸協(xié)議滿足實(shí)際應(yīng)用中不同的應(yīng)用需求。
圖9是時(shí)延測試結(jié)果,由圖可以看出,在數(shù)據(jù)傳輸少于3跳的情況下,可靠傳輸機(jī)制對數(shù)據(jù)時(shí)延影響并不大,但在數(shù)據(jù)傳輸大于3跳后,可靠傳輸協(xié)議對時(shí)延的影響增大,特別是對HP數(shù)據(jù),由于優(yōu)先級高,省去了列隊(duì)等待的時(shí)間,發(fā)送時(shí)延得到了有效減少。
4 結(jié)語
本文首先對無線傳感器網(wǎng)絡(luò)的智能建筑節(jié)能系統(tǒng)進(jìn)行了系統(tǒng)介紹,討論了研究無線傳感器網(wǎng)絡(luò)數(shù)據(jù)傳輸技術(shù)的必要性,并結(jié)合智能建筑節(jié)能的特點(diǎn)和實(shí)際需求,設(shè)計(jì)和實(shí)現(xiàn)了一個(gè)基于優(yōu)先級隊(duì)列及優(yōu)先級ACK的數(shù)據(jù)傳輸方案,對重要信息提供端到端的保證,實(shí)現(xiàn)了控制信息的及時(shí)、可靠傳輸。最后,本文通過實(shí)際測試平臺對提出的協(xié)議進(jìn)行了驗(yàn)證,并證明與傳統(tǒng)的傳輸協(xié)議相比,在本傳輸協(xié)議影響下,對于重要的數(shù)據(jù),丟包率減少,發(fā)送時(shí)延減少,各種優(yōu)先級的數(shù)據(jù)均得到了更加可靠的傳輸。