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