作者:周亮,李廣軍
目前,無線傳感器網(wǎng)絡(luò)硬件平臺可以按節(jié)點控制器類型、節(jié)點無線通信類型、節(jié)點操作特性等多種方式進行分類。由于無線傳感器網(wǎng)絡(luò)主要關(guān)注的是檢測區(qū)域內(nèi)某一范圍而不是某一個特定點的狀態(tài)信息,因此按照節(jié)點操作特性來進行分類的方法較為科學,它覆蓋了節(jié)點的具體實現(xiàn)形式。按照這種方法可以將無線傳感器網(wǎng)絡(luò)分為4類:特定傳感器平臺、通用傳感器平臺、高帶寬傳感器平臺和網(wǎng)關(guān)平臺。
特定傳感器平臺側(cè)重于節(jié)點的超低功耗和體積的微型化設(shè)計,但同時也決定了其處理能力和傳輸能力很有限。比如UC Berkeley的Spec[l]就是在2.5 mm×2.5 mm的硅片上集成了處理器、RAM、通信接口和傳感器的一種節(jié)點,它靠一個附帶的微型電池供電可以連續(xù)工作幾年,但在其原型版本中只有單向的通信鏈路;再如由DAR-PA/MTO MEMS program支持UC Berkeley研發(fā)的Smart Dust也是一種超微型的節(jié)點,其設(shè)計目標體積是1 mm3左右,由于使用光通信并采用主動和被動兩種工作模式,其功耗可以進一步降低。
通用傳感器平臺對體積要求有所放寬,側(cè)重于節(jié)點的可擴展性和測試需求,但同樣對節(jié)點功耗有較嚴格的要求,這類平臺也是目前在實驗研究和產(chǎn)品化中應(yīng)用最多的。該類型中以UC Berkeley的Mica系列節(jié)點為主要代表,主要包括Rene、Mica、Mica2、Mica2dot、Mica-Z等不同版本。
高帶寬傳感器平臺的主要特點是處理能力強、存儲容量大、接口豐富,其射頻帶寬比前兩種更寬,甚至可以進行音視頻信號的傳遞。該類節(jié)點的典型代表是由Intel公司設(shè)計的Imote,它采用ARM7TDMI內(nèi)核,可通過藍牙接口與PDA等設(shè)備連接,由于功能強大,相應(yīng)的系統(tǒng)功耗也有所增加。
網(wǎng)關(guān)平臺是無線傳感器網(wǎng)絡(luò)中不可缺少的部分,通常它的處理能力和接口帶寬比其他幾類更高。它實現(xiàn)的是無線傳感器網(wǎng)絡(luò)與其他類型網(wǎng)絡(luò)之間,或者是不同無線傳感器網(wǎng)絡(luò)之間的數(shù)據(jù)交換,由通用接口使用協(xié)議轉(zhuǎn)換功能實現(xiàn)。
1 網(wǎng)絡(luò)架構(gòu)與節(jié)點設(shè)計
1.1 網(wǎng)絡(luò)架構(gòu)設(shè)計
系統(tǒng)網(wǎng)絡(luò)體系結(jié)構(gòu)如圖1所示。多個終端節(jié)點node與匯集節(jié)點sink決定了檢測區(qū)域的范圍,各節(jié)點監(jiān)測數(shù)據(jù)通過自組織的多跳路由網(wǎng)絡(luò)傳送至網(wǎng)關(guān)節(jié)點gate;然后通過串行通信接口傳送至網(wǎng)關(guān)計算機并接入Internet,遠程的監(jiān)控終端可以通過Internet獲取監(jiān)控范圍內(nèi)的監(jiān)測數(shù)據(jù)。
在該網(wǎng)絡(luò)中,網(wǎng)關(guān)接入設(shè)備和監(jiān)控終端均可使用傳統(tǒng)的計算機實現(xiàn),以下主要關(guān)注的是終端節(jié)點、匯集節(jié)點和網(wǎng)關(guān)節(jié)點。從數(shù)據(jù)處理強度來看,由于采用的是一種樹狀網(wǎng)絡(luò),所以終端節(jié)點數(shù)據(jù)最少,僅需在特定的檢測時獲取數(shù)據(jù)并送出;匯集節(jié)點數(shù)據(jù)量稍大,需要接收多個終端節(jié)點的數(shù)據(jù)并經(jīng)過初步處理后送至下一匯集節(jié)點或網(wǎng)關(guān)節(jié)點;網(wǎng)關(guān)節(jié)點的數(shù)據(jù)量最大,需要接收整個檢測區(qū)域內(nèi)的數(shù)據(jù)并經(jīng)過解析、融合、協(xié)議轉(zhuǎn)換等處理后再送入Internet。從能源需求來看,終端節(jié)點能耗最小,匯集節(jié)點次之,但這兩類節(jié)點通常都只能使用自帶的有限能源,一旦耗盡即停止工作;而網(wǎng)關(guān)節(jié)點雖然能耗大,但可以采用外部能源持續(xù)供給,在功耗上可以不作苛刻要求。因此,在全網(wǎng)中主要針對終端節(jié)點和匯集節(jié)點的能耗作嚴格要求并在多層次進行優(yōu)化,以最大限度地延長全網(wǎng)的有效工作時間。
1.2節(jié)點設(shè)計
由于無線傳感器網(wǎng)絡(luò)是一種典型的自組織網(wǎng)絡(luò),其拓撲結(jié)構(gòu)會隨著節(jié)點的加入、退出或移動而改變,各節(jié)點在網(wǎng)絡(luò)中的功能也隨之動態(tài)變化,因此在監(jiān)測區(qū)域中的節(jié)點都應(yīng)具備充當終端節(jié)點或匯集節(jié)點的能力。終端節(jié)點和匯集節(jié)點可統(tǒng)稱為“普通節(jié)點”,其硬件結(jié)構(gòu)如圖2所示。
在普通節(jié)點中設(shè)計并實現(xiàn)了一個8位RISC結(jié)構(gòu)低功耗MCU作為系統(tǒng)控制核心,后面會進行詳細介紹;存儲器SST29VE020用作外部程序存儲器,容量為256 KB;A/D轉(zhuǎn)換器MAX152用于將外部傳感器經(jīng)調(diào)理后的電壓信號轉(zhuǎn)換為數(shù)字信號;射頻收發(fā)模塊使用Chipcon公司支持ZigBee協(xié)議的CC2420[2]。網(wǎng)關(guān)節(jié)點與普通節(jié)點從結(jié)構(gòu)上看是類似的,只是工作環(huán)境不同且功能需求有所增加,可由普通節(jié)點擴展實現(xiàn)。
2 8位RISC結(jié)構(gòu)低功耗MCU設(shè)計
在現(xiàn)有的各類無線傳感器網(wǎng)絡(luò)節(jié)點硬件設(shè)計中都采用的是嵌入式領(lǐng)域廣泛應(yīng)用的一些通用處理器單元,而沒有針對無線傳感器網(wǎng)絡(luò)應(yīng)用開發(fā)專用的控制核心,因而節(jié)點設(shè)計中會受到體積、功耗、接口、資源等方面的限制,甚至在某些設(shè)計中還存在資源浪費的情況。這對節(jié)點的低功耗、微型化設(shè)計非常不利,因此在本設(shè)計中自行設(shè)計并實現(xiàn)了一種8位RISC結(jié)構(gòu)低功耗MCU,作為節(jié)點控制核心。
2.1 MCU結(jié)構(gòu)設(shè)計
MCU硬件結(jié)構(gòu)如圖3所示。在該設(shè)計中MCU采用了與ELAN公司EM78系列MCU指令集兼容的形式,完成原型開發(fā)。CPU采用兩級流水,使用兩相時鐘控制完成預取指操作,在跳轉(zhuǎn)指令后自動加入一條空操作指令NOP完成對轉(zhuǎn)移類操作的控制。目前在同等總線時鐘頻率的情況下,該CPU的操作速度比EM78系列MCU快一倍。
MCU外部程序存儲器采用256K×8位結(jié)構(gòu),實際使用時由相鄰奇偶地址單元構(gòu)成128K×16位形式,以滿足13位寬度指令集的需求。用于取指操作的寄存器R2(PC)為17位寬,其中高7位用作程序存儲器128個頁面的尋址;低10位用于頁內(nèi)尋址;寄存器R5存儲當前工作頁面地址,由指令解碼器判定并操作向R2的傳遞。這種尋址方式有利于物理結(jié)構(gòu)上同樣采用分頁形式的Flash存儲器的操作。
MCU中共有8個外部中斷源和5個內(nèi)部中斷源。8個外部中斷源與端口PORT7復用引腳,并可以設(shè)定上升沿或下降沿觸發(fā)模式,以滿足不同外設(shè)接口的需要。5個內(nèi)部中斷源分別來自TCC、COUNTER1、COUNTER2、UART和SPI模塊。TCC模塊可利用外部時鐘進行計時操作,為操作系統(tǒng)進行時間片的劃分提供基本硬件支持;COUNTER1和COUNTER2采用內(nèi)部總線時鐘計數(shù),除基本的計數(shù)和定時功能外,還可將其與外部中斷引腳配合實現(xiàn)輸入捕捉或輸出比較功能;UART和SPI模塊的中斷主要用于通信服務(wù)程序。
2.2 設(shè)計中的低功耗考慮
由于無線傳感器網(wǎng)絡(luò)的應(yīng)用特點決定其設(shè)計必須圍繞低功耗進行,因此作為節(jié)點控制核心的MCU的低功耗設(shè)計也相當重要。在設(shè)計中從系統(tǒng)層次和邏輯層次的三個方面進行低功耗考慮:工作電壓、時鐘控制和電路規(guī)模。工作電壓主要與芯片制造工藝相關(guān),目前選用3.3 V工作電壓以O(shè).18μm CMOS工藝設(shè)計,由于制造工藝環(huán)節(jié)不在我們的可控范圍內(nèi),故在此不作更多討論。
在時鐘控制方面主要使用了門控時鐘、兩相時鐘流水和休眠喚醒機制。門控時鐘主要采用使能信號控制各獨立模塊和電路的時鐘信號來源,以靈活地開啟和關(guān)閉各觸發(fā)器的翻轉(zhuǎn)來達到降低功耗的目的。兩相時鐘流水主要用于提高CPU的順序取指執(zhí)行速度,采用這種方式可以在同等總線時鐘和同樣工作負荷的情況下縮短CPU的工作時間,從系統(tǒng)層次來看減小了CPU的工作占空比,從而降低功耗。休眠喚醒機制的基本原理是關(guān)閉系統(tǒng)中暫時不使用的部分甚至是CPU的核心模塊,以降低系統(tǒng)總體的能源消耗。在該MCU中設(shè)計了全速工作模式working和兩種低功耗休眠模式sleep1、sleep2,如圖4所示。這兩種休眠模式下都會關(guān)閉系統(tǒng)主時鐘,但其喚醒方式和程序運行模式有所不同。
通過執(zhí)行SLEP指令即可將MCU切換至sLeep1模式。在進入該模式前需要啟用看門狗電路以使看門狗復位或外部復位信號恢復工作狀態(tài);恢復working模式后系統(tǒng)重啟并重新開始執(zhí)行程序,以前的信息將會丟失。這種方式適合于系統(tǒng)長時間休眠且喚醒后系統(tǒng)重新工作的情況。要進入sleep2模式只需將寄存器RA中的SLPC位置位。該模式與sleep1的主要區(qū)別是可以使用中斷信號喚醒CPU并且繼續(xù)執(zhí)行休眠前的程序,不會丟失任何信息。這種方式在無線傳感器網(wǎng)絡(luò)中大量使用,因為MCU工作的時間遠遠小于節(jié)點信息采集和系統(tǒng)組網(wǎng)等操作的時間間隔,所以在操作系統(tǒng)中即可充分利用這種模式以降低MCU的工作占空比。
在電路規(guī)模方面采用了RISC架構(gòu)設(shè)計,該CPU共支持58條精簡指令,每條指令固定為13位長度,有效減小了CPU核的規(guī)模和存儲體系規(guī)模。位于MCU中的其他接口功能模塊采用了獨立IP的組成形式,可以根據(jù)需求很方便地進行功能裁減,以達到對嵌入式環(huán)境的最佳適應(yīng)。
3 平臺的實現(xiàn)
3.1 節(jié)點的實現(xiàn)
在該設(shè)計中已使用FPGA平臺對自行設(shè)計的MCU進行了驗證,并采用O.18μm CMOS工藝進行了后端設(shè)計、仿真并投片,達到了設(shè)計要求。目前的設(shè)計中MCU共占用了3 mm×3 mm的硅片面積,但實際的邏輯及存儲部分僅占1/3左右,主要原因是保留了較多暫時未用的引腳及測試引腳,增加了設(shè)計周長。在原型版本的節(jié)點中A/D轉(zhuǎn)換模塊采用了商用芯片MAX152,同時還設(shè)計了與之兼容的A/D電路并與MCU一同投片,將在后期版本中進行混合信號設(shè)計從而實現(xiàn)系統(tǒng)集成。
3.2 網(wǎng)絡(luò)構(gòu)造實現(xiàn)
在該無線傳感器網(wǎng)絡(luò)節(jié)點平臺上成功移植了TinyOS嵌入式操作系統(tǒng),實現(xiàn)了對環(huán)境溫度的采集處理、射頻模塊的操作以及多跳自組織網(wǎng)絡(luò)的構(gòu)造,并通過網(wǎng)關(guān)節(jié)點匯集監(jiān)測區(qū)域信息數(shù)據(jù),利用IPv6網(wǎng)絡(luò)傳遞至監(jiān)控終端,實現(xiàn)了無線傳感器網(wǎng)絡(luò)的基本功能。
4 小 結(jié)
本設(shè)計采用了典型的無線傳感器網(wǎng)絡(luò)節(jié)點架構(gòu),開發(fā)出屬于通用傳感器平臺類型的原型版本,使用自行設(shè)計的低功耗MCU實現(xiàn)了系統(tǒng)集成和微型化。
審核編輯:湯梓紅
-
mcu
+關(guān)注
關(guān)注
146文章
17149瀏覽量
351224 -
藍牙
+關(guān)注
關(guān)注
114文章
5823瀏覽量
170351 -
無線傳感器
+關(guān)注
關(guān)注
15文章
770瀏覽量
98365
發(fā)布評論請先 登錄
相關(guān)推薦
評論