開(kāi)放式的無(wú)線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)平臺(tái)設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘要:無(wú)線(xiàn)傳感器網(wǎng)絡(luò)是一種應(yīng)用相關(guān)的網(wǎng)絡(luò)。不同的應(yīng)用背景需求不同的無(wú)線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)。硬件的相關(guān)性太強(qiáng)不利于向其他平臺(tái)移植。為解決該問(wèn)題,利用硬件的模塊化的設(shè)計(jì)思想,我們?cè)O(shè)計(jì)了一種開(kāi)放的可擴(kuò)展的無(wú)線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)平臺(tái)。該平臺(tái)以MSP430F5438微處理器作為主控芯片,以CC2420作為射頻控制芯片。實(shí)驗(yàn)證明該平臺(tái)具有低功耗、開(kāi)放式以及可擴(kuò)展等特點(diǎn)。
關(guān)鍵詞:無(wú)線(xiàn)傳感器網(wǎng)絡(luò);開(kāi)放性;節(jié)點(diǎn)平臺(tái);MSP430F5438;CC2420
無(wú)線(xiàn)傳感器網(wǎng)絡(luò)(Wireless sensor network,WSN)是一種全新的信息獲取平臺(tái),由大量廉價(jià)的靜止的或移動(dòng)的傳感器模塊以自組網(wǎng)絡(luò)和多跳的方式構(gòu)成無(wú)線(xiàn)網(wǎng)絡(luò),其目的是協(xié)作地感知、采集、處理和傳輸網(wǎng)絡(luò)覆蓋區(qū)域內(nèi)監(jiān)測(cè)對(duì)象的信息,并報(bào)告給用戶(hù)。WSN在軍事、農(nóng)業(yè)、環(huán)境監(jiān)測(cè)、醫(yī)療衛(wèi)生、工業(yè)、智能交通、建筑物監(jiān)測(cè)、空間探索等領(lǐng)域有著廣闊的應(yīng)用前景和巨大的應(yīng)用價(jià)值,被認(rèn)為是未來(lái)改變世界的十大技術(shù)之一、全球未來(lái)4大高技術(shù)產(chǎn)業(yè)之一。
傳感器技術(shù)、嵌入式技術(shù)、微機(jī)電技術(shù)以及無(wú)線(xiàn)通信技術(shù)的不斷進(jìn)步推動(dòng)了低功耗、多功能WSN的飛速發(fā)展。WSN的研究人員設(shè)計(jì)了很多無(wú)線(xiàn)傳感器網(wǎng)絡(luò)硬件平臺(tái),其大致分為兩類(lèi):專(zhuān)用平臺(tái)和通用平臺(tái)。孫鵬等設(shè)計(jì)了一款基于Si1000的無(wú)線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)用于監(jiān)測(cè)糧食的儲(chǔ)備環(huán)境;韋然設(shè)計(jì)了一款基于MSP430F1611的無(wú)線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)用于溫濕度檢測(cè);郭燕紅設(shè)計(jì)了一款基于MSP430F149的無(wú)線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)用于對(duì)樓宇空調(diào)的智能監(jiān)控;王新忠等設(shè)計(jì)了一款基于Atmega128L的無(wú)線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)用于丘陵葡萄園環(huán)境信息和土壤墑情的無(wú)線(xiàn)監(jiān)測(cè)。上述節(jié)點(diǎn)數(shù)據(jù)采集模塊固定只能針對(duì)具體的工作要求完成具體的任務(wù),屬于專(zhuān)用節(jié)點(diǎn)。張偉等設(shè)計(jì)了一款基于ARM7的開(kāi)放式的無(wú)線(xiàn)傳感器網(wǎng)絡(luò)平臺(tái);周應(yīng)賓設(shè)計(jì)了一款基于ARM處理器S3C2410的無(wú)線(xiàn)傳感器網(wǎng)絡(luò)平臺(tái)。上述節(jié)點(diǎn)具有可擴(kuò)展性而且具有較強(qiáng)的數(shù)據(jù)處理功能,屬于通用節(jié)點(diǎn)。上述節(jié)點(diǎn)平臺(tái)可以應(yīng)用于不同的任務(wù)背景,但是ARM處理器相對(duì)于普通低速的單片機(jī)如,MSP430往往需要更多的能耗,這將大大縮減此類(lèi)平臺(tái)的生命周期。能耗問(wèn)題是無(wú)線(xiàn)傳感器網(wǎng)絡(luò)的一個(gè)重要的限制因素,如何高效使用能量來(lái)最大化延長(zhǎng)網(wǎng)絡(luò)生命周期是傳感器網(wǎng)絡(luò)所面臨的重要挑戰(zhàn)。這里我們?cè)O(shè)計(jì)了一款基于MSP4305438微處理器的開(kāi)放式的無(wú)線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)。相對(duì)于一般的專(zhuān)用無(wú)線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)我們的節(jié)點(diǎn)具有很好的開(kāi)放性和可擴(kuò)展性,可以根據(jù)實(shí)際應(yīng)用背景實(shí)現(xiàn)不同的功能。此外,相對(duì)于ARM處理器為主控芯片的節(jié)點(diǎn)我們的節(jié)點(diǎn)具有更低的能耗。
1 系統(tǒng)總體設(shè)計(jì)
我們的系統(tǒng)在低功耗的基礎(chǔ)上要求其具備開(kāi)放性和可擴(kuò)展性。為了實(shí)現(xiàn)這一目的我們?cè)谠撓到y(tǒng)的硬件設(shè)計(jì)時(shí)采用模塊化設(shè)計(jì)思想。一般的無(wú)線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)包括以下四個(gè)模塊:電源模塊、數(shù)據(jù)采集模塊、處理器以及存儲(chǔ)模塊和無(wú)線(xiàn)通信模塊。當(dāng)一個(gè)無(wú)線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)的主控芯片給定后,根據(jù)不同的應(yīng)用背景無(wú)線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)的差異性主要體現(xiàn)在數(shù)據(jù)采集模塊和無(wú)線(xiàn)通信模塊。數(shù)據(jù)采集模塊決定了其完成什么功能、無(wú)線(xiàn)通信模塊決定其使用哪種通信協(xié)議。
MSP430F5438微處理器具有豐富的外設(shè),它具有多達(dá)10個(gè)8位I\O口。我們可以預(yù)留多個(gè)I\O口作為傳感器模塊接口、無(wú)線(xiàn)通信模塊接口以及通用接口。最后我們將數(shù)據(jù)采集模塊和無(wú)線(xiàn)通信模塊單獨(dú)設(shè)計(jì)最后通過(guò)接插件(插針和穿焊空)和處理器模塊預(yù)留的接口連接。這樣我們?cè)卺槍?duì)不同的應(yīng)用背景就可以方便地使用不同的傳感器模塊和無(wú)線(xiàn)通信模塊而不用再去設(shè)計(jì)處理器模塊甚至電源模塊。系統(tǒng)框圖如圖1所示。
2 硬件設(shè)計(jì)
節(jié)點(diǎn)主要包括6個(gè)模塊:電源模塊、JTAG模塊、傳感器模塊、處理器模塊、無(wú)線(xiàn)通信模塊以及串口通信模塊。
2.1 電源及JTAG模塊
無(wú)線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)體積微小,通常以能量十分有限的電池供電。無(wú)線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)通常分布在環(huán)境復(fù)雜甚至人不能到達(dá)的地方,而且分布范圍廣數(shù)量多,所以通過(guò)更換電池或充電的方式來(lái)補(bǔ)充能源是不可能的。由于成本和技術(shù)的限制,利用太陽(yáng)能和風(fēng)能發(fā)電來(lái)補(bǔ)充能量的方法目前也很難得到應(yīng)用。如何高效的使用能量來(lái)最大化延長(zhǎng)無(wú)線(xiàn)傳感器網(wǎng)絡(luò)的生命周期是無(wú)線(xiàn)傳感器網(wǎng)絡(luò)所面臨的首要挑戰(zhàn),這也是我們?cè)跓o(wú)線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)的軟硬件設(shè)計(jì)過(guò)程中應(yīng)該重點(diǎn)考慮的問(wèn)題。
選用TI公司的MSP430F5438作為主控芯片,并利用JTAG仿真器通過(guò)JTAG接口將程序?qū)懭雈lash。JTFAG接口是一個(gè)雙向串行端口,可以控制MSP430的運(yùn)行、刷新Flash以及讀寫(xiě)寄存器等等。MSP430單片機(jī)內(nèi)部集成了遵循邊界掃描故障診斷的電路。這樣僅需要一個(gè)接口,就可以連接電腦進(jìn)行程序下載和調(diào)試了。這樣的好處是:傳統(tǒng)的仿真器是特殊設(shè)計(jì)的CPU,價(jià)格較貴,增加了開(kāi)發(fā)學(xué)習(xí)的成本。而TI公司給出了JTAG仿真器的電路設(shè)計(jì),使用者可以自己制作,單片機(jī)自帶仿真接口,所以能夠降低用戶(hù)的開(kāi)發(fā)成本。由于可以通過(guò)JTAG口訪問(wèn)MCU內(nèi)部程序存儲(chǔ)器,在發(fā)布產(chǎn)品時(shí)要將JTAG口切斷,否則產(chǎn)品可能會(huì)被別人仿制,從而造成損失。MSP430單片機(jī)的JTAG端口設(shè)計(jì)有一個(gè)熔絲。熔斷熔絲后就無(wú)法再通過(guò)仿真器進(jìn)行調(diào)試,而這種熔斷是不可逆轉(zhuǎn)的物理毀壞,所以能夠有效地保護(hù)用戶(hù)的程序不被盜用。
MSP430F5438單片機(jī)工作電壓為1.8~3.6 V;TI公司的無(wú)線(xiàn)通信芯片也多以2.1~3.6電壓供電;JTAG模塊和串口模塊采用USB供電;傳感器模塊根據(jù)實(shí)際情況采用外部供電或母板供電。因此,我們選用3 V的紐扣電池進(jìn)行供電,同時(shí)利用JTAG仿真器進(jìn)行輔助供電。電源模塊以及JTAG模塊如圖2所示。當(dāng)使用JTAG仿真器進(jìn)行供電時(shí)將S1閉合至JTAG接口的拐腳2,同時(shí)S2斷開(kāi)。當(dāng)使用電池供電時(shí),將S1閉合至JTAG接口的拐腳4,同時(shí)閉合S2。ADP3339保證了電源較好的穩(wěn)壓性。
2.2 傳感器模塊
由于我們的平臺(tái)是一種開(kāi)放的可擴(kuò)展的無(wú)線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)平臺(tái),所以我們的傳感器模塊要根據(jù)實(shí)際應(yīng)用背景進(jìn)行設(shè)計(jì)。所以,所有的傳感器模塊都單獨(dú)進(jìn)行設(shè)計(jì),并通過(guò)接插件(過(guò)孔和插座)與母板進(jìn)行連接。傳感器應(yīng)盡量選擇數(shù)字傳感器并盡量選擇低功耗、小體積的傳感器。下面以溫度采集為應(yīng)用背景為例進(jìn)行傳感器模塊的設(shè)計(jì),如圖3所示。溫度傳感器我們選擇數(shù)字溫度傳感器DS18B20。
2.3 微處理器模塊
無(wú)線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)是一種微型嵌入式設(shè)備,要求其價(jià)格低、功耗小。這些限制導(dǎo)致其所攜帶的微處理器能力相對(duì)較弱,存儲(chǔ)器容量相對(duì)較小。然而,無(wú)線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)需要完成監(jiān)測(cè)對(duì)象的數(shù)據(jù)采集和轉(zhuǎn)換、數(shù)據(jù)的管理和處理、應(yīng)答其他節(jié)點(diǎn)的請(qǐng)求和節(jié)點(diǎn)控制等多種復(fù)雜工作。這就需要我們?cè)谶x擇主控芯片時(shí)既要保證其能滿(mǎn)足低功耗的要求又能完成多種復(fù)雜任務(wù)。這里我們選擇了TI公司的MSP430F5438單片機(jī),相對(duì)于51或52系列單片機(jī)它可以完成更復(fù)雜的任務(wù),相對(duì)于ARM系列處理器它的能耗更低。
TI公司的MSP430F5438單片機(jī)是基于RISC架構(gòu)的16位超低功耗單片機(jī),內(nèi)部集成256KB閃存和16KB RAM,在1.8~3.6 V的工作電壓范圍內(nèi)性能高達(dá)25MIPS。強(qiáng)大的數(shù)據(jù)處理能力和足夠容量的存儲(chǔ)器滿(mǎn)足了我們的平臺(tái)完成各種數(shù)據(jù)處理和存儲(chǔ)的要求。該處理器包含一個(gè)用于優(yōu)化功耗的創(chuàng)新電源管理模塊,具有6種低功耗模式。其功耗已經(jīng)達(dá)到了微安級(jí),超低功耗使我們可以更大的延長(zhǎng)我們的無(wú)線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)平臺(tái)的生命周期。從低功耗模式喚醒到激活模式只需要不到5μs的時(shí)間。MSP430F5438內(nèi)部集成有多通道、高速A/D轉(zhuǎn)換模塊ADC12,能提供多通道12位精度的A/D轉(zhuǎn)換,其最大采樣速率可以達(dá)到200ksps。ADC12模塊內(nèi)包括采樣/保持功能的ADC內(nèi)核、轉(zhuǎn)換存儲(chǔ)邏輯、內(nèi)部參考電平發(fā)生器、多種時(shí)鐘源、采樣及轉(zhuǎn)換時(shí)序電路。對(duì)于大多數(shù)現(xiàn)場(chǎng)數(shù)據(jù)采集的應(yīng)用環(huán)境而言,MSP430F5438內(nèi)部集成的ADC12模塊都能很好地滿(mǎn)足數(shù)據(jù)采集的要求。此外MSP430F5438具有豐富的外設(shè)。它具有多達(dá)10個(gè)8位I\O口,P1口到P10口是完整的,P11口包含3個(gè)單獨(dú)的I\O口。所有單獨(dú)的I\O位可獨(dú)立編程,輸入、輸出以及中斷條件的任意組合是可以的,所有的端口可編程上拉或下拉,所有端口上的驅(qū)動(dòng)強(qiáng)度可編程控制,對(duì)于P1口和P2口的所有的8比特端口具有邊緣可選的終端輸入能力,支持端口控制寄存器讀\寫(xiě)訪問(wèn)的所有指令,所有單位可以以字節(jié)為單位進(jìn)行訪問(wèn)也可以以字為單位進(jìn)行訪問(wèn)。豐富的外設(shè)滿(mǎn)足了我們的無(wú)線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)平臺(tái)開(kāi)放式和可擴(kuò)展的要求。這里我們將預(yù)留多個(gè)I\O口用于接入傳感器模塊、無(wú)線(xiàn)通信模塊以及其他通用模塊。處理器模塊如圖4所示。
2.4 無(wú)線(xiàn)通信模塊
在我們的無(wú)線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)平臺(tái)的設(shè)計(jì)過(guò)程中我們將無(wú)線(xiàn)通信模塊單獨(dú)設(shè)計(jì)并通過(guò)插針和插座和母板進(jìn)行連接。這樣我們可以根據(jù)不同的通信協(xié)議設(shè)計(jì)不同的無(wú)心通信模塊而無(wú)需改變其他模塊。無(wú)線(xiàn)傳感器網(wǎng)絡(luò)中最常用的無(wú)線(xiàn)通信協(xié)議就是IEEE802.15.4標(biāo)準(zhǔn)。該標(biāo)準(zhǔn)具有低功耗、低成本等有點(diǎn),很符合無(wú)線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)的要求。下面我們就以2.4 GHz的IEEE802.15.4無(wú)線(xiàn)通信規(guī)范設(shè)計(jì)我們的無(wú)線(xiàn)通信模塊。
這里我們選擇TI的CC2420作為我們的無(wú)線(xiàn)控制芯片。CC2420是首款符合IEEE 802.15.4標(biāo)準(zhǔn)的射頻收發(fā)器,它基于SmartRF03技術(shù),以0.18 mm CMOS工藝制成只需要極少的外部元器件,性能穩(wěn)定且功耗極低其MAC層和PHY層協(xié)議符合IEEE 802.15.4規(guī)范,工作于無(wú)執(zhí)照的2.4 GHz頻段。利用CC2420和MSP430共同開(kāi)發(fā)的無(wú)線(xiàn)通信設(shè)備支持?jǐn)?shù)據(jù)傳輸率可高達(dá)250 kbps,可實(shí)現(xiàn)多點(diǎn)間的快速組網(wǎng)。
本設(shè)計(jì)中微處理器MSP430F5438與CC2420通過(guò)SPI高速通信串行口進(jìn)行控制和通信。MSP430F5438為主設(shè)備,CC2420為從設(shè)備。CSn、SO、SI、SCLK是CC2420的SPI接口線(xiàn),通過(guò)它們,Msp430F5438單片機(jī)可以設(shè)置CC2420的寄存器以及數(shù)據(jù)傳輸?shù)取.?dāng)進(jìn)行SPI通信時(shí)Msp430F5438單片機(jī)作為主機(jī),通過(guò)SCLK來(lái)控制時(shí)序,通過(guò)SI、SO進(jìn)行數(shù)據(jù)的輸入和讀取。CSn是片選信號(hào)線(xiàn),用于保證數(shù)據(jù)收發(fā)的同步性。無(wú)線(xiàn)通信模塊如圖5所示。
2.5 與計(jì)算機(jī)通信模塊
我們平臺(tái)需要將采集到的數(shù)據(jù)送給計(jì)算機(jī)進(jìn)行處理以供用戶(hù)進(jìn)一步使用和研究,同時(shí)當(dāng)用戶(hù)有主動(dòng)需求時(shí),我們要向像無(wú)線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)發(fā)送查詢(xún)命令。MSP430F5438有多達(dá)4個(gè)通用串行接口,這里我們利用串口實(shí)現(xiàn)無(wú)線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)和計(jì)算機(jī)之間的通信。MSP430F5438要實(shí)現(xiàn)和計(jì)算機(jī)串口相連接必須要進(jìn)行EIA-RS-232-C與MSP430F5438電平和邏輯關(guān)系的轉(zhuǎn)換,本設(shè)計(jì)采用MAX3232芯片,完成3~5 V電平與串口電平的雙向轉(zhuǎn)換。串口模塊如圖6所示。
3 設(shè)計(jì)驗(yàn)證
我們通過(guò)采集環(huán)境溫度并將其發(fā)送給計(jì)算機(jī)來(lái)驗(yàn)證我們的傳感器模塊以及串口通信模塊。我們利用JTAG仿真器將DS18B20數(shù)字溫度傳感器和串口通信的測(cè)試程序?qū)懭雈lash.DS18B20數(shù)字溫度傳感器將采集到的環(huán)境溫度送給MSP430F5438微處理器進(jìn)行處理。微處理器將處理完的數(shù)據(jù)通過(guò)串口送給計(jì)算機(jī)。最后我們通過(guò)C++編寫(xiě)串口通信界面,對(duì)傳感器所采集到的數(shù)據(jù)進(jìn)行觀測(cè)和分析。測(cè)試證明我們的系統(tǒng)能夠很好的完成數(shù)據(jù)采集和串口通信的功能。
在無(wú)線(xiàn)通信模塊的驗(yàn)證過(guò)程中,我們以CC2420為無(wú)線(xiàn)控制芯片,編寫(xiě)了CC2420的測(cè)試程序進(jìn)行驗(yàn)證。該模塊能夠較好的滿(mǎn)足預(yù)期目標(biāo),其通信頻段在2.4~2.48 GHz之間,具有較高的接收靈敏度,可以做到全向通信,數(shù)據(jù)速率達(dá)250 kbps,碼片速率達(dá)2 Mchips/s,輸出功率可編碼控制大約在-24~0 dBm,其通信距離在室外超過(guò)150米。
4 結(jié)束語(yǔ)
以TI公司的MSP430F5438為主控芯片,設(shè)計(jì)了一款開(kāi)放式可擴(kuò)展的無(wú)線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)平臺(tái),并通過(guò)DS18B20數(shù)字溫度傳感器和CC2420模塊驗(yàn)證其可行性。我們的平臺(tái)可以在不同的背景利用不同的傳感器模塊和無(wú)線(xiàn)通信模塊完成不同的任務(wù),同時(shí)滿(mǎn)足低功耗的要求。
前面我們說(shuō)過(guò)能耗問(wèn)題一直是無(wú)線(xiàn)傳感器網(wǎng)絡(luò)的一個(gè)限制因素。我們所面臨的難題就是利用有限的能源最大化延長(zhǎng)無(wú)線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)的生命周期。太陽(yáng)能發(fā)電和風(fēng)能發(fā)電技術(shù)的飛速發(fā)展,其價(jià)格問(wèn)題和技術(shù)問(wèn)題對(duì)無(wú)線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)的制約將越來(lái)越小,這將為我們延長(zhǎng)無(wú)線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)生命周期提供了一條很有價(jià)值的途徑。