基于微處理器的無線傳感器節(jié)點的設(shè)計_第1頁
基于微處理器的無線傳感器節(jié)點的設(shè)計_第2頁
基于微處理器的無線傳感器節(jié)點的設(shè)計_第3頁
基于微處理器的無線傳感器節(jié)點的設(shè)計_第4頁
基于微處理器的無線傳感器節(jié)點的設(shè)計_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

基于微處理器的無線傳感器節(jié)點的設(shè)計李育賢(西安郵電學(xué)院陜西西安710061)摘要:本文描述了一種無線傳感器網(wǎng)絡(luò)節(jié)點的硬件平臺組成,分別對負(fù)責(zé)無線收發(fā)功能實現(xiàn)的射頻芯片、負(fù)責(zé)數(shù)據(jù)采集的傳感器模塊、負(fù)責(zé)整體上工作的微處理器進(jìn)行了描述,對和CC2420與EM78815微處理器的硬件接口進(jìn)行了設(shè)計;然后介紹了本無線傳感器網(wǎng)絡(luò)系統(tǒng)整體軟件體系結(jié)構(gòu)與設(shè)計,主要包括軟件總體架構(gòu)、硬件驅(qū)動層設(shè)計和操作系統(tǒng)層設(shè)計。關(guān)鍵字:無線傳感器網(wǎng)絡(luò);射頻芯片;微處理器;驅(qū)動DesignofaWirelessSensorNetworkNodebasedontheMicroprocessorLIYuxian(Xi'anInstituteofTelecommunications,ShanxiXi’Abstract:Thehardwarestructureofawirelesssensornetworkisrepresentedinthispaper.TheRFchip,whichisresponsibletoimplementthetransmitting/receivingfunction,thesensormodule,whichisusedtosamplethedata,theCPUareintroducedandthehardwareinterfacebetweenCC2420andEM78815isdesignedindetail.Thesoftwarestructureisreferred,includingtheframestructure,hardwaredrivedesigningandoperatingsystemdesigning.Keywords:WirelessSensorNetwork;RFChip;Microprocessor;Driver1引言無線傳感器網(wǎng)是由部署在監(jiān)測區(qū)域內(nèi)大量的廉價微型傳感器組成,通過無線通信方式形成的一個多跳的自組織的網(wǎng)絡(luò)系統(tǒng),其目的是協(xié)作地感知,采集和處理網(wǎng)絡(luò)覆蓋區(qū)域中感知對象的信息,并發(fā)送給觀察者。隨著微機(jī)電加工技術(shù)(MEMS)、自組織的無線網(wǎng)絡(luò)技術(shù)和低功耗通訊技術(shù)的高速發(fā)展,無線微型傳感器網(wǎng)絡(luò)的研究將進(jìn)入一個全新的領(lǐng)域。本文完成了基于微處理器的無線傳感器節(jié)點整體的設(shè)計與實現(xiàn)。2硬件體系結(jié)構(gòu)設(shè)計無線傳感器網(wǎng)絡(luò)節(jié)點是一個微型的嵌入式系統(tǒng),一般由傳感器模塊、處理器模塊、無線通信模塊和能量供應(yīng)模塊組成,如1所示。圖1傳感器節(jié)點體系結(jié)構(gòu)圖中的箭頭代表數(shù)據(jù)的流向。傳感器模塊負(fù)責(zé)監(jiān)測區(qū)域內(nèi)信息的采集和數(shù)據(jù)轉(zhuǎn)換;處理器模塊負(fù)責(zé)控制整個傳感器節(jié)點的操作,存儲和處理本身采集的數(shù)據(jù)以及其他節(jié)點發(fā)來的數(shù)據(jù);無線通信模塊負(fù)責(zé)與其他節(jié)點進(jìn)行無線通信,交換控制信息和收發(fā)采集數(shù)據(jù);能量供應(yīng)模塊為傳感器節(jié)點提供運行所需的能量,通常采用微型電池。3.1射頻芯片CC2420和微處理器EM78815CC2420是IEEE802.15.4標(biāo)準(zhǔn)的低成本、低功耗單片高集成度的解決方案。它工作在ISM免費頻帶上,工作頻率為2.4GHz。ELAN公司生產(chǎn)的EM78815是一款采用RISC結(jié)構(gòu),低功耗,高速率的8位單片機(jī)。它的主頻為3.5862MHz,具有64K程序ROM,最大支持128K程序ROM;256K×8片內(nèi)數(shù)據(jù)ROM,最大支持2MKB;4K×8數(shù)據(jù)RAM;128個8位普通寄存器;56個雙向、三態(tài)I/O口。此外,它還有2個8位和1個16位硬件定時/計數(shù)器;可編程看門狗定時器和片上震蕩器;UART、SPI接口。EM78815有三種工作模式:活動模式、空閑模式、睡眠模式。模式轉(zhuǎn)換圖2所示。3.2硬件接口在本系統(tǒng)中,CC2420與EM78815的連接如圖2所示。圖2CC2420與EM78815微處理器的接口CC2420通過簡單的四線(SI、SO、SCLK、CSn)與SPI接口相連,CC2420是受控的。EM78815的SPI工作在主機(jī)模式,它是SPI數(shù)據(jù)傳輸?shù)目刂品?,CC2420設(shè)為從機(jī)工作方式。CC2420可以通過調(diào)制解調(diào)控制寄存器控制位配置成不同的發(fā)射和接收模式,CC2420通常工作在緩沖模式(模式0)。在緩沖發(fā)射模式(TX_MODE0),用128字節(jié)TXFIFO緩沖器存放發(fā)送前的數(shù)據(jù);在接收模式(RX_MODE0),使用128字節(jié)的RXFIFO緩沖器存放接收到的數(shù)據(jù)。TXFIFO和RXFIFO緩沖器可以通過TXFIFO(0x3E)和RXFIFO(0x3F)寄存器訪問。TXFIFO寄存器只能寫入,當(dāng)寫入數(shù)據(jù)到TXFIFO寄存器時,SO引腳上輸出每個新數(shù)據(jù)字節(jié)的狀態(tài)字,在狀態(tài)字節(jié)中有下溢標(biāo)志,能檢測TXFIFO緩沖器是否發(fā)生下溢。在每個寄存器TXFIFO寫周期,有24位數(shù)據(jù)被發(fā)送到SI上,每幀數(shù)據(jù)的第1位置0為寄存器訪問,第2位寫時置為0,讀時置為1,接著是6位地址位(A5:0),然后是16位數(shù)據(jù)位(D15:0);同樣,從RXFIFO寄存器讀出時,SI上傳輸?shù)刂肺?,SO上傳輸狀態(tài)和數(shù)據(jù)位。當(dāng)數(shù)據(jù)傳遞時,CSn引腳必須保持低電平。只有當(dāng)CSn變高電平時,訪問FIFO緩沖器結(jié)束。當(dāng)沒有字節(jié)寫入TXFIFO緩沖器時,TXFIFO緩沖器發(fā)出一個下溢脈沖,發(fā)送自動停止。3.3傳感器模塊無線傳感器網(wǎng)絡(luò)節(jié)點的數(shù)據(jù)采集部分可以根據(jù)不同的應(yīng)用采用不同的傳感器,比如溫度、濕度、光、壓力、煙霧等,本系統(tǒng)暫采用溫度傳感器MAX152。MAX152A/D轉(zhuǎn)換器是高速、微控制器兼容、8位模/數(shù)轉(zhuǎn)換器。由于芯片采用半閃爍轉(zhuǎn)換技術(shù)和低電源電壓供電及三態(tài)輸出,所以具有快速轉(zhuǎn)換、功耗低和易與各類微控制器接口等優(yōu)點。轉(zhuǎn)換時間只需1.8us,轉(zhuǎn)換速率為400×103次/s。3.4電源模塊本系統(tǒng)搭建之時,實驗都是基于仿真板和FPGA板的,仿真板通過普通電源供電,而FPGA板通過5號電池供電,在以后的節(jié)點成品上,擬采用鈕扣電池供電。4軟件體系結(jié)構(gòu)設(shè)計如圖3所示,無線傳感器網(wǎng)絡(luò)節(jié)點的軟件由硬件驅(qū)動層、操作系統(tǒng)內(nèi)核層和應(yīng)用層組成。硬件驅(qū)動層提供了所有硬件設(shè)備的驅(qū)動,主要包括CC2420驅(qū)動、ADC模塊驅(qū)動和串口驅(qū)動;操作系統(tǒng)內(nèi)核層提供了簡單高效的任務(wù)調(diào)度、內(nèi)存管理、設(shè)備管理和無線通信協(xié)議棧。應(yīng)用層主要是不同用戶利用操作系統(tǒng)層提供的API編制相應(yīng)的應(yīng)用程序。圖3無線傳感器網(wǎng)絡(luò)節(jié)點軟件架構(gòu)圖硬件驅(qū)動層主要是實現(xiàn)外圍設(shè)備的功能,定義一些基本的接口函數(shù),供上層使用。本系統(tǒng)的驅(qū)動層設(shè)計主要包括基于EM78815芯片主板的板級初始化、基于射頻芯片收發(fā)模塊的配置、ADC模塊驅(qū)動,連接網(wǎng)關(guān)的sink節(jié)點還要求設(shè)計串口驅(qū)動。1、板極初始化板級初始化是在系統(tǒng)上電復(fù)位后完成的,板級初始化程序具有完全的硬件特性,一般采用匯編語言實現(xiàn),主要是對寄存器和存儲器的初始化。2、ADC模塊驅(qū)動設(shè)計ADC模塊中的傳感器主要負(fù)責(zé)對周圍環(huán)境中的感興趣信息進(jìn)行采樣,通過模數(shù)轉(zhuǎn)換送交給MCU進(jìn)行處理。根據(jù)不同的應(yīng)用采樣頻率會有所不同,結(jié)合定時器,隔一段時間對周圍環(huán)境進(jìn)行采樣。設(shè)計比較簡單,當(dāng)要求采樣的命令到來時,開啟ADC模塊,進(jìn)行采樣,采樣完畢后,觸發(fā)AD中斷,MCU進(jìn)行中斷處理,并因為節(jié)能考慮而關(guān)閉ADC模塊,直到下一次采樣命令或者采樣間隔的到來。3、串口驅(qū)動設(shè)計本系統(tǒng)中,串口主要職責(zé)是負(fù)責(zé)網(wǎng)關(guān)節(jié)點和與網(wǎng)關(guān)相連的sink節(jié)點之間的通信:負(fù)責(zé)把通過無線信道接收到的數(shù)據(jù)轉(zhuǎn)發(fā)到網(wǎng)關(guān)節(jié)點,也負(fù)責(zé)轉(zhuǎn)發(fā)網(wǎng)關(guān)節(jié)點發(fā)給下層節(jié)點的命令。5操作系統(tǒng)內(nèi)核層設(shè)計操作系統(tǒng)是無線傳感器網(wǎng)絡(luò)節(jié)點軟件的靈魂,由于無線傳感器網(wǎng)絡(luò)的特殊性,導(dǎo)致無線傳感器網(wǎng)絡(luò)對操作系統(tǒng)的需求相對于傳統(tǒng)操作系統(tǒng)有較大的差異。如果不在節(jié)點上設(shè)計操作系統(tǒng),而是直接在硬件上設(shè)計應(yīng)用程序,首先會導(dǎo)致面向無線傳感器網(wǎng)絡(luò)的應(yīng)用難度加大,應(yīng)用程序開發(fā)人員不得不直接面對硬件進(jìn)行編程,無法得到像傳統(tǒng)操作系統(tǒng)那樣提供的豐富服務(wù);而且軟件的重用性很差,程序員的開發(fā)效率減低,開發(fā)成本增加。本無線傳感器系統(tǒng)操作系統(tǒng)內(nèi)核層主要包括任務(wù)調(diào)度、內(nèi)存管理、中斷管理、和無線通信接口。5.1任務(wù)調(diào)度在傳感器網(wǎng)絡(luò)中,單個傳感器節(jié)點的硬件資源有限,如果采用傳統(tǒng)的進(jìn)程調(diào)度方式,首先硬件就無法提供足夠的支持;其次,由于傳感器節(jié)點的并發(fā)操作可能比較頻繁,而且并發(fā)執(zhí)行流程又很短,這也使得傳統(tǒng)的進(jìn)程/線程調(diào)度無法適應(yīng)。所以考慮采用比一般線程更為簡單的輕量級線程技術(shù)和兩層調(diào)度方式,可有效使用傳感器節(jié)點的有限資源。在這種模式下,一般的輕量級線程(即任務(wù))按照FIFS(先來先服務(wù))方式進(jìn)行調(diào)度,輕量級線程之間不允許搶占;而硬件處理線程,即中斷處理線程可以打斷用戶的輕量級線程,對硬件中斷進(jìn)行快速響應(yīng)。對于共享資源需要通過原子操作或同步原語進(jìn)行訪問保護(hù)。5.2中斷管理本系統(tǒng)的中斷源有CC2420的SFD中斷、FIFOP中斷、ADC中斷、timer中斷、UART中斷,暫時沒用到軟件中斷。其中UART中斷只在與網(wǎng)關(guān)節(jié)點相連的sink節(jié)點上需要得到處理.本系統(tǒng)采用一種稱為多源中斷的方案,也就是一個中斷向量對應(yīng)于多個中斷源,只有惟一的一個中斷向量,或者說只有一個中斷服務(wù)子程序入口地址,也就只需要編寫一個中斷服務(wù)子程序,從而簡化了硬件結(jié)構(gòu)的設(shè)計,但是軟件設(shè)計就復(fù)雜一些。在通過唯一一個中斷向量進(jìn)入中斷之后,通過查詢,確認(rèn)是其中某個中斷源發(fā)出的中斷,再進(jìn)入相應(yīng)的中斷處理程序進(jìn)行處理。本系統(tǒng)采用軟件查詢的方式而不是硬件方式對不同中斷源的優(yōu)先級進(jìn)行排序,把優(yōu)先級較高的中斷源放在查詢程序的前面,如圖4所示,查詢的順序依次是timer中斷、SFD中斷、FIFOP中斷、ADC中斷。圖4中斷查詢流程圖5.3內(nèi)存管理本系統(tǒng)中,因為應(yīng)用相對比較簡單并且任務(wù)數(shù)量可以靜態(tài)確定,為了減少內(nèi)存分配在時間上帶來的不確定性,采用靜態(tài)分配內(nèi)存的方式。在系統(tǒng)啟動前,所有的任務(wù)都獲得了所需要的內(nèi)存。EM78815的可用內(nèi)存主要包括128字節(jié)的bank和4k字節(jié)DATARAM,中斷、函數(shù)調(diào)用、任務(wù)調(diào)度需要用到內(nèi)存時,固定由編譯器從128字節(jié)分配。而當(dāng)申請全局變量或者局部變量時,需要在語句前加上indir關(guān)鍵字,表明從4k的DATARAM中申請空間。5.4無線通信協(xié)議本系統(tǒng)的物理層協(xié)議是基于IEEE802.15.4標(biāo)準(zhǔn)設(shè)計的。IEEE802.15.4網(wǎng)絡(luò)是指在一個個人操作空間內(nèi)使用相同無線信道并通過IEEE802.15.4標(biāo)準(zhǔn)相互通信的一組設(shè)備的集合,又名LR-WPAN網(wǎng)絡(luò)。LR-WPAN網(wǎng)絡(luò)是一種結(jié)構(gòu)簡單、成本低廉的無線通信網(wǎng)絡(luò),它使在低電能和低吞吐量的應(yīng)用環(huán)境中使用無線連接成為可能。與WLAN相比,LR-WPAN網(wǎng)絡(luò)只需很少的基礎(chǔ)設(shè)施。IEEE802.15.4標(biāo)準(zhǔn)為LR-WPAN網(wǎng)絡(luò)制定了物理層和MAC子層協(xié)議。本文作者創(chuàng)新點:本文設(shè)計和實現(xiàn)了整個無線傳感器網(wǎng)絡(luò)系統(tǒng)。本系統(tǒng)的特色和意義在于提出了適用于基于EM78815和CC2420的無線傳感器網(wǎng)絡(luò)節(jié)點的通信協(xié)議,并對其通信協(xié)議和操作系統(tǒng)調(diào)度算法進(jìn)行了改進(jìn),使之更適合于現(xiàn)有硬件平臺,從而能更好地保證節(jié)點間通信的成功率和正確性。參考文獻(xiàn):[1]孫利民,李建中,陳渝.無線傳感器.北京:清華大學(xué)出版社,2005,1-3[2]于海斌,曾鵬等,分布式無線傳感器網(wǎng)絡(luò)通信協(xié)議研究,通信學(xué)報,Vol.25(10),2004,102-110[3]于宏毅,肖秀明,無線移動自組織網(wǎng),北京:人民郵電出版社,2005[4]蔣承延,吳思遠(yuǎn),陳偉.基于無線傳感器網(wǎng)絡(luò)的智能家居系統(tǒng)[J].微計算機(jī)信息,2007,5-1:199-2

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論