一種藍牙傳感器網(wǎng)絡(luò )的設計與實(shí)現
無(wú)線(xiàn)傳感器網(wǎng)絡(luò )(WSNs)是由大量無(wú)處不在的,具有通信與計算能力的微小傳感器節點(diǎn)密集分布在無(wú)人值守的監控區域而構成的能夠根據環(huán)境自主完成指定任務(wù)的“智能”自治測控網(wǎng)絡(luò )系統。如果說(shuō)因特網(wǎng)改變了人與人之間交流、溝通的方式,那么,WSNs則將邏輯上的信息世界與真實(shí)物理世界融合在一起,將改變人與自然交互的方式。為此,2003年,MIT技術(shù)評論在預測未來(lái)技術(shù)發(fā)展的報告中,將其列為改變世界的十大新興技術(shù)之一。
藍牙是一種短距無(wú)線(xiàn)通信的技術(shù)規范。由于藍牙具有工作在2.4 GHz的ISM(industrial,scientific and medi-cal)頻段;可以同時(shí)傳輸語(yǔ)音和數據;有很好的抗干擾能力和低功耗等特點(diǎn)。采用藍牙技術(shù)構建由固定傳感器節點(diǎn)組成的藍牙傳感器網(wǎng)絡(luò ),是無(wú)線(xiàn)傳感器領(lǐng)域內一個(gè)新興的研究方向,可以在一些特殊的場(chǎng)合實(shí)現信息的采集、處理和發(fā)送。
介紹了一種用于廣場(chǎng)環(huán)境監測的藍牙傳感器網(wǎng)絡(luò )的構建和傳感器節點(diǎn)的設計,研究了藍牙傳感器網(wǎng)絡(luò )的節點(diǎn)定位和電源問(wèn)題。最后,探討了WSNs領(lǐng)域內存在的問(wèn)題和發(fā)展方向。
1 藍牙傳感器網(wǎng)絡(luò )構建
整個(gè)藍牙傳感器網(wǎng)絡(luò )由若干藍牙傳感器節點(diǎn)和監控主機組成,其中,無(wú)線(xiàn)傳感器節點(diǎn)分布于需要監測的廣場(chǎng)四周,執行數據采集、預處理和傳輸等工作;監控主機放置在智能小車(chē)內,通過(guò)藍牙模塊與傳感器節點(diǎn)通信。
1.1 藍牙傳感器網(wǎng)絡(luò )模型
為了把信號輸入到終端,采用了藍牙,而沒(méi)有采用有線(xiàn)、紅外和光等進(jìn)行傳輸信號,原因在于它最適合短距離無(wú)線(xiàn)低功率通信,用它組建的傳感器網(wǎng)絡(luò )被稱(chēng)為藍牙傳感器網(wǎng)絡(luò )。
為了對藍牙傳感器網(wǎng)絡(luò )進(jìn)行直觀(guān)的說(shuō)明,構建了藍牙傳感器網(wǎng)絡(luò )模型。藍牙傳感器網(wǎng)絡(luò )模型基于鄰近組網(wǎng)的原則,2個(gè)彼此靠近到一定程度的藍牙傳感器可以自發(fā)地由藍牙模塊建立通信鏈接。藍牙組網(wǎng)時(shí)最多可以有256個(gè)藍牙設備單元連接起來(lái)組成微微網(wǎng)(Piconet),其中,1個(gè)主節點(diǎn)和7個(gè)從節點(diǎn)處于工作狀態(tài),而其他節點(diǎn)則處于空閑模式。主節點(diǎn)負責控制異步無(wú)連接(asynchronous connec-tionless,ACL)鏈接的帶寬,并決定微微網(wǎng)中的每個(gè)節點(diǎn)可以占用多少帶寬及連接的對稱(chēng)性。從節點(diǎn)只有被選中時(shí)才能發(fā)送數據,即從節點(diǎn)在發(fā)射數據前必須接受輪詢(xún)。微微網(wǎng)絡(luò )之間可重疊交叉,從設備單元可以共享。由多個(gè)相互重疊的微微網(wǎng)組成的網(wǎng)絡(luò )稱(chēng)為散射網(wǎng)(Seatternet)。
用于廣場(chǎng)環(huán)境監測的傳感器網(wǎng)絡(luò )是由預先放置在廣場(chǎng)四周的傳感器節點(diǎn)組成微微網(wǎng),各微微網(wǎng)組成散射網(wǎng)。其網(wǎng)絡(luò )通信體系結構如圖1所示。節點(diǎn)具有傳感、信號處理和無(wú)線(xiàn)通信功能,它們既是信息包的發(fā)起者,也是信息包的轉發(fā)者。通過(guò)網(wǎng)絡(luò )自組織和多跳路由,將數據向監控發(fā)送。
1.2 藍牙傳感器網(wǎng)絡(luò )節點(diǎn)定位
節點(diǎn)定位機制是指依靠有限的位置已知節點(diǎn),確定布設區中其他節點(diǎn)的位置,在傳感器節點(diǎn)間建立起空間關(guān)系的機制。在大多數情況下,只有結合位置信息,傳感器網(wǎng)絡(luò )獲取的數據才有實(shí)際意義。另外,對藍牙傳感器網(wǎng)絡(luò )協(xié)議的研究也要利用節點(diǎn)的位置信息。在網(wǎng)絡(luò )層,因為藍牙傳感器網(wǎng)絡(luò )節點(diǎn)無(wú)全局標志,設計了基于節點(diǎn)位置信息的路由算法;在應用層,根據節點(diǎn)位置,藍牙傳感器網(wǎng)絡(luò )系統可以智能地選擇一些特定的節點(diǎn)來(lái)完成任務(wù),從而降低整個(gè)系統的能耗,提高系統的存活時(shí)間。
由于設計的藍牙傳感器網(wǎng)絡(luò )系統中各個(gè)傳感器節點(diǎn)位置固定,可以采用基于測距的節點(diǎn)定位機制。通過(guò)測量節點(diǎn)問(wèn)點(diǎn)到點(diǎn)的距離,使用最大似然估計法計算節點(diǎn)位置?;跍y距定位機制要求2個(gè)節點(diǎn)具有測量相互間距離的能力。采用了TDOA(time difference on arrival):測距技術(shù)。在節點(diǎn)上安裝超聲波收發(fā)器和藍牙收發(fā)器。測距時(shí),在發(fā)射端,2種收發(fā)器同時(shí)發(fā)射信號,利用聲波與電磁波在空氣中傳播速度的巨大差異在接收端通過(guò)記錄2種不同信號到達時(shí)間的差異,基于已知信號傳播速度,直接把時(shí)間轉換為距離。該技術(shù)的測距精度可達到厘米級,但受限于超聲波傳播距離有限和非視距(NLOS)問(wèn)題對超聲波信號的傳播影響。
2 傳感器節點(diǎn)設計
傳感器節點(diǎn)的設計主要包括:硬件的設計、軟件的設計和電源的設計。
2.1 傳感器節點(diǎn)總體設計
在不同的應用中,傳感器節點(diǎn)設計也各不相同,但是,它們的基本結構是一樣的。根據具體需要,設計出的傳感器節點(diǎn)主要包括以下幾個(gè)子系統:數據處理子系統、數據采集子系統、無(wú)線(xiàn)通信子系統和電源子系統構成,節點(diǎn)結構示意圖如圖2所示。
2.2 傳感器節點(diǎn)硬件設計
傳感器節點(diǎn)主要由超低功耗處理器、各種傳感器及其輔助電路構成。節點(diǎn)原理圖如圖3所示。
2.3 電源問(wèn)題
電源問(wèn)題是WSNs中的關(guān)鍵問(wèn)題。只有提供長(cháng)期有效的能源才能使傳感器網(wǎng)絡(luò )降低維護運行成本,進(jìn)一步體現其巨大優(yōu)勢。為了最大限度節約電能,在節點(diǎn)的設計中,單片機以最快的速度執行任務(wù),一旦有可能就進(jìn)入節能模式。在節能模式中,通過(guò)電源管理電路,將除單片機、藍牙模塊和硬件看門(mén)狗以外器件的供電切斷。這時(shí)只有硬件看門(mén)狗、單片機的串口中斷邏輯和藍牙模塊消耗電能,可以最大限度地節約電能。
節點(diǎn)啟動(dòng)后,執行完必須的任務(wù),包括初始化藍牙設備,獲得本地地址等,就進(jìn)入節能模式。進(jìn)入節能模式后,如果監控中心需要訪(fǎng)問(wèn)該節點(diǎn),就通過(guò)藍牙模塊喚醒該節點(diǎn)的單片機。
2.3.1 電源管理
傳感器網(wǎng)絡(luò )的電源管理采用動(dòng)態(tài)功率管理模式是降低系統耗能的有效設計方法。動(dòng)態(tài)功率管理是一種有效地能夠在降低系統功率消耗而不影響系統性能的辦法。最基本的思想就是傳感器節點(diǎn)內部各個(gè)設備在不需要時(shí)關(guān)閉,而在需要時(shí)喚醒。從而可以使傳感器適時(shí)進(jìn)入相應的低功耗模式,降低總體能量消耗。動(dòng)態(tài)功率管理技術(shù)適用的基本前提是,系統元件在工作時(shí)間內有著(zhù)不相同的工作量,大多數的系統都具有此種情況。另一個(gè)前提是,可以在一定程度上確信能夠預知系統、元件的工作量的波動(dòng)性。這樣才有轉換耗能狀態(tài)的可能,并且,在對工作量的觀(guān)察和預知的時(shí)間內,系統不可以消耗過(guò)多的能量。在傳感器網(wǎng)絡(luò )中,構成傳感器節點(diǎn)的各個(gè)模塊有不同的功率狀態(tài),因而,電源管理采用動(dòng)態(tài)功率管理是比較合適的。動(dòng)態(tài)功率管理系統中,不同元件的工作狀態(tài)要動(dòng)態(tài)地適應不同程度的性能要求,只有這樣才能最小化空閑時(shí)間浪費的能量或者無(wú)用元件浪費的能量。對于電源管理實(shí)施時(shí)間的判斷,要用到動(dòng)態(tài)預知方法,根據歷史的工作量預測即將到來(lái)的工作量,決定是否轉換工作狀態(tài)和何時(shí)喚醒。
2.3.2 能耗的降低措施
1) 采用系統芯片技術(shù)、MEMS技術(shù)、特定用途集成電路等新技術(shù)可以大大減少傳感器網(wǎng)絡(luò )部件,減少能耗;
2) 采用傳感器數據融合技術(shù)能夠減少網(wǎng)絡(luò )通信量,降低數據冗余度,提高能量效率;
3) 減少傳輸誤差也能降低能量的消耗。
2.4 傳感器節點(diǎn)軟件設計
在網(wǎng)絡(luò )中,每個(gè)節點(diǎn)都有一個(gè)固定的地址(由藍牙模塊地址決定),其中,連接于監控主機的傳感器節點(diǎn)是一個(gè)特殊的節點(diǎn),它采用串行接口與藍牙模塊和監控主機通信。數據的傳送采用主從站方式,與監控主機連接的節點(diǎn)作為主站,控制網(wǎng)絡(luò )內的通信時(shí)序;其他節點(diǎn)作為從站,可以被主站尋址。
傳感器節點(diǎn)軟件設計分為主機點(diǎn)軟件設計和從節點(diǎn)軟件設計2個(gè)部分。主節點(diǎn)主要完成采集各從節點(diǎn)數據,進(jìn)而分析、處理數據;從節點(diǎn)主要完成各種傳感器原始數據的采集和預處理工作。
2.4.1 主節點(diǎn)程序設計
主節點(diǎn)中,監控主機與主機控制器(藍牙模塊)之間是通過(guò)藍牙主機控制器接口(host controller interface.HCI)收發(fā)分組(Packet)的方式進(jìn)行信息交換的。主機控制器執行監控主機指令后產(chǎn)生結果信息,主機控制器通過(guò)相應的事件分組將此信息發(fā)給監控主機。在藍牙傳感器網(wǎng)絡(luò )中,主節點(diǎn)上的藍牙模塊與其他節點(diǎn)的藍牙模塊最簡(jiǎn)單的ACL數據通信流程有5個(gè)步驟:藍牙模塊自身初始化、查詢(xún)、建立連接、進(jìn)行數據通信和斷開(kāi)連接。主節點(diǎn)程序的流程圖如圖4所示。
依據處理后的數據既可以實(shí)時(shí)掌握廣場(chǎng)環(huán)境信息,對突發(fā)事件及時(shí)采取相應措施,還能根據廣場(chǎng)上的亮度情況來(lái)設定照明亮度和照明時(shí)間,既能預警,又節能。
2.4.2 從節點(diǎn)程序設計
從節點(diǎn)程序主要完成采集各種傳感器的數據,經(jīng)過(guò)初步處理后傳送給主節點(diǎn),其程序流程圖如圖5所示。
3 結束語(yǔ)
整個(gè)網(wǎng)絡(luò )采用主從站結構,由主站統一控制網(wǎng)絡(luò )內的通信時(shí)序。節點(diǎn)以低功耗單片機ATmega128L為核心,采用藍牙模塊進(jìn)行通信。在軟件方面,采用串口中斷的方法接收和發(fā)送數據。節點(diǎn)使用電池供電,利用單片機的節能模式,可以最大限度節約電能,延長(cháng)節點(diǎn)的使用壽命。實(shí)驗表明:采用這種模式建立的WSNs穩定可靠,通信效率高。
評論