基于嵌入式網(wǎng)絡(luò )的無(wú)線(xiàn)傳感器網(wǎng)絡(luò )平臺軟硬件實(shí)現
隨著(zhù)技術(shù)的發(fā)展,基于分布式、無(wú)線(xiàn)傳感器網(wǎng)絡(luò )的應用也越來(lái)越多。本文提出了一個(gè)基于嵌入式系統的無(wú)線(xiàn)傳感器網(wǎng)絡(luò )實(shí)驗平臺,該實(shí)驗平臺在無(wú)線(xiàn)傳感器網(wǎng)絡(luò )的算法和協(xié)議驗證方面具有良好的應用前景。
集成電路、微機電系統以及通信理論的發(fā)展促使了無(wú)線(xiàn)傳感器網(wǎng)絡(luò )的出現。這種無(wú)線(xiàn)傳感器網(wǎng)絡(luò )是由很多自給供電的傳感器節點(diǎn)組成的。每個(gè)傳感器節點(diǎn)都可以進(jìn)行周?chē)h(huán)境數據的采集、簡(jiǎn)單計算以及與其它節點(diǎn)及外界進(jìn)行通信。傳感器網(wǎng)絡(luò )的多節點(diǎn)特性使得眾多的傳感器可以通過(guò)協(xié)同工作進(jìn)行高質(zhì)量的傳感,以及組成一個(gè)容錯性好的的采集系統。正是由于這些優(yōu)點(diǎn),近年來(lái)出現了許多基于分布式的無(wú)線(xiàn)傳感器網(wǎng)絡(luò )應用,如搶險救災、智能家居以及生物化學(xué)武器攻擊的探測和救援。
然而,作為一種新興出現的技術(shù),建立一個(gè)運轉良好、魯棒性好的無(wú)線(xiàn)傳感器網(wǎng)絡(luò )還是面臨著(zhù)許多挑戰。而且由于它的一些獨特特性,無(wú)線(xiàn)傳感器網(wǎng)絡(luò )的設計方法與現有無(wú)線(xiàn)網(wǎng)絡(luò )的設計方法有很大不同。例如,由于傳感器網(wǎng)絡(luò )中的傳感器節點(diǎn)分布密集,所以需要大范圍的數據管理和處理技術(shù)。其次,無(wú)線(xiàn)傳感器網(wǎng)絡(luò )節點(diǎn)一般部署在人類(lèi)難以到達和接觸的區域,這就使傳感器網(wǎng)絡(luò )節點(diǎn)的維護面臨著(zhù)很大的挑戰。除此之外,電源消耗也是一個(gè)很重要的問(wèn)題,無(wú)線(xiàn)傳感器節點(diǎn)作為微小器件,只能配備有限的電源,在有些應用場(chǎng)合下,更換電源是近乎不可能的。這使得傳感器節點(diǎn)的壽命在很大程度上依賴(lài)于電池的壽命,所以降低功耗以延長(cháng)系統的壽命是無(wú)線(xiàn)傳感器網(wǎng)絡(luò )設計需要首要考慮的問(wèn)題。許多無(wú)線(xiàn)傳感器網(wǎng)絡(luò )方面的研究人員都在注重研究新的節約功耗的協(xié)議和算法,這些協(xié)議和算法需要傳感器網(wǎng)絡(luò )平臺進(jìn)行實(shí)驗和驗證。在本文中,我們就將介紹一種對協(xié)議和算法進(jìn)行實(shí)驗和驗證的無(wú)線(xiàn)傳感器網(wǎng)絡(luò )平臺。
無(wú)線(xiàn)傳感器網(wǎng)絡(luò )平臺架構
一般來(lái)說(shuō),一個(gè)無(wú)線(xiàn)傳感器網(wǎng)絡(luò )包括傳感器節點(diǎn)以及傳感器網(wǎng)絡(luò )網(wǎng)關(guān)節點(diǎn),如圖1所示。網(wǎng)關(guān)節點(diǎn)用于組合從各個(gè)傳感器節點(diǎn)得到的數據以及負責與外界的通信,該節點(diǎn)基于嵌入式系統。
傳感器節點(diǎn)首先采集諸如聲、光和距離等環(huán)境相關(guān)的數據,并對這些數據進(jìn)行簡(jiǎn)單處理后傳送到網(wǎng)關(guān)節點(diǎn)。無(wú)線(xiàn)傳感器網(wǎng)絡(luò )通常具有兩種應用模式:主動(dòng)輪詢(xún)模式、被動(dòng)模式。主動(dòng)模式要求網(wǎng)關(guān)節點(diǎn)對各個(gè)傳感器節點(diǎn)進(jìn)行主動(dòng)的輪詢(xún)以獲得消息,而被動(dòng)模式則要求在某個(gè)傳感器節點(diǎn)事件發(fā)生時(shí),網(wǎng)關(guān)節點(diǎn)能作出及時(shí)的響應。各個(gè)傳感器節點(diǎn)得到的數據還能進(jìn)行組合,這也很大地提高了傳感器網(wǎng)絡(luò )的效率。當然這也要求傳感器節點(diǎn)要具有一定的計算能力。
系統硬件實(shí)現
在本文介紹的系統架構中,主要需要實(shí)現的是傳感器節點(diǎn)和網(wǎng)關(guān)的硬件平臺,下面介紹這兩個(gè)平臺的硬件實(shí)現。
1. 傳感器節點(diǎn)的硬件實(shí)現
傳感器節點(diǎn)的功能是采集人們感興趣的數據,并將數據發(fā)送給各個(gè)傳感器節點(diǎn)組的網(wǎng)關(guān)。傳感器節點(diǎn)主要由電源模塊、計算模塊、存儲單元、通信模塊和傳感單元組成,如圖2所示。
傳感器節點(diǎn)的計算單元的功能已經(jīng)在上節中介紹過(guò),在我們的系統中采用了TI 公司的16位微控制器MSP430F149。MSP430具有豐富的片上存儲資源,在5 MHz的工作頻率下,MSP430的功耗大約為1.5mW,而且該微控制器還有多種省電模式可供選擇。除了豐富的片上存儲資源和多種省電模式以外,MSP430還具有多個(gè)AD接口和I/O數據線(xiàn),使之很容易用軟件編程,這些接口還可以用作與傳感單元的接口。
傳感器節點(diǎn)的通信模塊的功能是由nRF903 射頻收發(fā)器來(lái)實(shí)現。該收發(fā)器所具有的低功耗和小尺寸使之非常適合用于無(wú)線(xiàn)傳感器網(wǎng)絡(luò )系統中,該收發(fā)器可以工作在433MHz、868MHz、915MHz等公共頻段中。射頻模塊通過(guò)串口與MSP430通信。nRF903還可以根據輸入電流來(lái)決定傳輸功率,這一特性使之具有以下優(yōu)點(diǎn):
a. 可以使一個(gè)節點(diǎn)自動(dòng)調整通信的相鄰節點(diǎn)的個(gè)數,從而使得整個(gè)網(wǎng)絡(luò )的規??烧{。
b. 可以使一個(gè)節點(diǎn)在與相對較近的節點(diǎn)通信時(shí),使用較少的能量。
c. 可以被輔助用來(lái)進(jìn)行無(wú)線(xiàn)信道的沖突檢測。
d. 可以用來(lái)確定一個(gè)節點(diǎn)在網(wǎng)絡(luò )中的相對位置。
每個(gè)傳感器節點(diǎn)采用AA電池供電。
2. 網(wǎng)關(guān)的硬件實(shí)現
網(wǎng)關(guān)的硬件部分主要由中央處理單元、存儲單元、射頻收發(fā)模塊和GPRS通信模塊組成,如圖3所示。
網(wǎng)關(guān)的中央處理單元主要用來(lái)處理從傳感器節點(diǎn)采集到的數據以及完成一些控制功能。中央處理單元的主要器件是Atmel 公司的AT91RM9200 微處理器,AT91RM9200是基于A(yíng)RM920T 指令集的ARM處理器。該處理器具有豐富的外設以及接口,這使得它在低成本、低功耗的條件下能完成一些功能豐富的應用。AT91RM9200處理器集成了許多外設接口,包括USB2.0接口和以太網(wǎng)接口。此外,該處理器還提供了多個(gè)符合工業(yè)標準的通信接口,包括音頻、電信、閃存卡、紅外、智能卡接口等。
為了將采集到的數據傳輸到互聯(lián)網(wǎng)上,網(wǎng)關(guān)設備還配有GPRS通信單元,GPRS通信單元主要是由 索尼-愛(ài)立信公司的GM47模塊組成,該模塊通過(guò)中國移動(dòng)現成的GPRS網(wǎng)絡(luò )將傳感器采集到的數據傳輸的互聯(lián)網(wǎng)上,用戶(hù)可以通過(guò)普通PC和GPRS手機終端來(lái)觀(guān)測傳感器采集到的數據。網(wǎng)關(guān)同時(shí)還配有與傳感器節點(diǎn)相同的RF收發(fā)模塊,用于接受傳感器節點(diǎn)發(fā)送的數據。
系統的軟件結構
在我們的無(wú)線(xiàn)傳感器網(wǎng)絡(luò )系統中,軟件部分主要是在網(wǎng)關(guān)和傳感器節點(diǎn)上。網(wǎng)關(guān)端的軟件主要完成的功能是處理和管理傳感器節點(diǎn)傳輸過(guò)來(lái)的數據,它主要由GPRS通信軟件、RF通信軟件、命令行軟件以及任務(wù)管理軟件組成,如圖4所示。
考慮到各種需求,我們采用開(kāi)源的操作系統-Linux。Linux是一個(gè)網(wǎng)絡(luò )化的操作系統環(huán)境,特別適用于網(wǎng)絡(luò )應用。Linux具有完整的TCP/IP協(xié)議棧,同時(shí)支持其它多種網(wǎng)絡(luò )協(xié)議,如PPP協(xié)議棧,使其很容易實(shí)現GPRS撥號的功能。由于Linux的開(kāi)源特性,用戶(hù)很容易在其基礎上開(kāi)發(fā)自己的應用程序。
傳感器節點(diǎn)上的軟件主要利用匯編和C語(yǔ)言開(kāi)發(fā),主要完成的功能是接受傳感單元的數據,并將數據發(fā)送到傳感器節點(diǎn)組的網(wǎng)關(guān)上。
本文小結
本文介紹了一個(gè)用于嵌入式系統的無(wú)線(xiàn)傳感器網(wǎng)絡(luò )演示系統,整個(gè)系統建立在嵌入式Linux和ARM處理器的基礎上,具有低功耗,軟件易開(kāi)發(fā)等優(yōu)點(diǎn)。
隨著(zhù)社會(huì )和科學(xué)技術(shù)的日益發(fā)展,無(wú)線(xiàn)傳感器網(wǎng)絡(luò )將得到日益廣泛的應用。目前無(wú)線(xiàn)傳感器網(wǎng)絡(luò )在能源、節點(diǎn)規模方面還有不足,隨著(zhù)這些問(wèn)題的解決,無(wú)線(xiàn)傳感器網(wǎng)絡(luò )在環(huán)境監測、智能建筑以及軍事等領(lǐng)域必然會(huì )得到越來(lái)與廣泛的應用。
評論