《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于MSP430和NRF2401的WSN節(jié)點(diǎn)設(shè)計(jì)
基于MSP430和NRF2401的WSN節(jié)點(diǎn)設(shè)計(jì)
摘要:  基于MSP430和NRF2401的無(wú)線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)設(shè)計(jì)在實(shí)驗(yàn)中表現(xiàn)出比較好的效果,,可以實(shí)現(xiàn)監(jiān)測(cè)區(qū)域內(nèi)信號(hào)的采集傳輸與處理,。但是由于射頻芯片本身的原因,,傳輸距離會(huì)受到障礙物的影響和設(shè)置頻率而有變化,這些問(wèn)題都有待更深入的研究,。隨著無(wú)線(xiàn)網(wǎng)絡(luò)技術(shù)的成熟無(wú)線(xiàn)傳感器網(wǎng)絡(luò)的應(yīng)用必將廣泛深入環(huán)境監(jiān)測(cè),、目標(biāo)追蹤,、工業(yè)自動(dòng)化等各領(lǐng)域。
Abstract:
Key words :

  0 引 言

  無(wú)線(xiàn)傳感器網(wǎng)絡(luò)WSN" title="WSN">WSN(wireless sensor network)是一種自組織網(wǎng)絡(luò),,它由大量低成本,、資源有限的傳感節(jié)點(diǎn)設(shè)備組成,節(jié)點(diǎn)間協(xié)同工作實(shí)現(xiàn)某一特定任務(wù),。由于無(wú)線(xiàn)傳感網(wǎng)絡(luò)所具有的易擴(kuò)展,、自組織、分布式結(jié)構(gòu)和實(shí)時(shí)性的特點(diǎn),,無(wú)線(xiàn)傳感網(wǎng)絡(luò)的應(yīng)用已經(jīng)由軍事領(lǐng)域擴(kuò)展到其他許多領(lǐng)域,,例如環(huán)境監(jiān)測(cè)、氣候監(jiān)測(cè),、目標(biāo)追蹤,、工業(yè)自動(dòng)化等方面,此外還為未來(lái)的遠(yuǎn)程醫(yī)療和空間探索提供了很大的應(yīng)用空間,。

  無(wú)線(xiàn)傳感器網(wǎng)絡(luò)體系結(jié)構(gòu)如圖1所示,,通常包括傳感器節(jié)點(diǎn)、匯聚節(jié)點(diǎn)(sinknode),、外部網(wǎng)絡(luò)和用戶(hù)界面。大量傳感器節(jié)點(diǎn)隨機(jī)部署在感知區(qū)域(Sensorfield)內(nèi)部或附近,,能夠通過(guò)自組織方式構(gòu)成網(wǎng)絡(luò),,傳感器節(jié)點(diǎn)將采集到的數(shù)據(jù)沿著其他傳感器節(jié)點(diǎn)逐跳進(jìn)行傳輸,在傳輸過(guò)程中所采集的數(shù)據(jù)可能被多個(gè)節(jié)點(diǎn)處理,,經(jīng)過(guò)多跳路由后到匯聚節(jié)點(diǎn),,再由匯聚節(jié)點(diǎn)通過(guò)外部網(wǎng)絡(luò)把數(shù)據(jù)傳送到處理中心進(jìn)行集中處理。

無(wú)線(xiàn)傳感器網(wǎng)絡(luò)體系結(jié)構(gòu)

  1 系統(tǒng)硬件設(shè)計(jì)

  無(wú)線(xiàn)傳感器網(wǎng)絡(luò)終端節(jié)點(diǎn)的硬件一般包括數(shù)據(jù)處理單元,、無(wú)線(xiàn)傳輸單元,、傳感采集單元和電源供應(yīng)單元。如圖2所示,,傳感采集單元可以根據(jù)應(yīng)用背景選擇相應(yīng)的測(cè)量物理量的傳感器,,電源供應(yīng)單元部分由于系統(tǒng)大部分處于低功耗模式,可以采用7號(hào)電池解決,。下面著重介紹數(shù)據(jù)處理單元,、無(wú)線(xiàn)傳輸單元。

無(wú)線(xiàn)傳感器網(wǎng)絡(luò)終端節(jié)點(diǎn)

  1.1 數(shù)據(jù)處理單元

  MSP430是具有超低功耗特點(diǎn)的16位單片機(jī),,本方案選用MSP430F148,,其功耗電流已經(jīng)達(dá)到了μA級(jí)。16位CPU和高效的RISC指令系統(tǒng),,無(wú)外擴(kuò)的數(shù)據(jù)地址總線(xiàn),,在8MHz時(shí)可達(dá)到125ns的指令周期,具有16個(gè)快速響應(yīng)中斷,能及時(shí)處理各種緊急事件,。豐富的片內(nèi)外圍功能模塊:12位的A/D轉(zhuǎn)換器ADC12內(nèi)包括采樣/保持功能的ADC內(nèi)核,、轉(zhuǎn)換存儲(chǔ)邏輯、內(nèi)部參考電平發(fā)生器,、多種時(shí)鐘源,、采樣及轉(zhuǎn)換時(shí)序電路。有8個(gè)外通道,,4個(gè)內(nèi)通道,,高達(dá)200kbps的采樣速率,多種采樣方式,。兩路USART通信串口,,可用于UART和SPI模式;片內(nèi)有精密硬件乘法器,、兩個(gè)16位定時(shí)器,,6個(gè)并行口P1~P6,48條I/O口線(xiàn),,其具有64KB的閃存,,用于存儲(chǔ)采集數(shù)據(jù)。

  1.2 無(wú)線(xiàn)傳輸單元

  本系統(tǒng)采用2.4GHz無(wú)線(xiàn)單片收發(fā)芯片NRF2401" title="NRF2401">NRF2401,,它具有體積小,、功耗低,外設(shè)少的特點(diǎn),,非常適合于無(wú)線(xiàn)傳輸應(yīng)用系統(tǒng),。nRF2401可以由SPI接口與微處理器連接,通過(guò)這個(gè)接口完成設(shè)置和收發(fā)數(shù)據(jù)工作,。許多單片機(jī)都集成了SPI控制器,,例如MSP430,可以非常方便地通過(guò)軟件設(shè)置最多40bit地址,,只有收到本機(jī)地址時(shí)才會(huì)輸出數(shù)據(jù)(提供一個(gè)中斷指示),,并且支持點(diǎn)對(duì)多點(diǎn)的操作,編程很方便,。nRF2401與單片機(jī)采用SPI接口連接,,原理圖如圖3所示。SPI總線(xiàn)接口技術(shù)是一種高速,、高效率的串行接口技術(shù),,主要用于擴(kuò)展外設(shè)和進(jìn)行數(shù)據(jù)交換。

nRF2401與單片機(jī)采用SPI接口連接原理圖

  2 軟件設(shè)計(jì)

  軟件開(kāi)發(fā)以IAR Workbench V3.1為平臺(tái),,采用C語(yǔ)言編寫(xiě),,軟件編程的基本思路是:先對(duì)SPI,、nRF2401控制端口初始化;使能SPI,、UART端口,,使能ADC,對(duì)nRF2401芯片初始化,;開(kāi)啟接收機(jī)后,,就可以運(yùn)行任務(wù)程序了,以實(shí)現(xiàn)接收或發(fā)送數(shù)據(jù),,對(duì)nRF2401操作流程如下:

  nRF2401有4種工作模式:收發(fā)模式,、配置模式、空閑模式和關(guān)機(jī)模式,。nRF2401的工作模式由PWR_UP,、CE、TX_EN和CS三個(gè)引腳決定,。對(duì)nRF2401的操作主要是配置其工作方式和讀寫(xiě)數(shù)據(jù),,所有配置命令字和數(shù)據(jù)都是通過(guò)同步串行口的CLK和DATA兩個(gè)引腳完成的。要將nRF2401設(shè)置于ShockBurstTM方式,,首先使PWR_UP引腳為高電平,,CE引腳為低電平。配置字從最高位開(kāi)始,,依次送入nRF2401,,CLK下降沿鎖定數(shù)據(jù)。配置命令字發(fā)送完后,,在CS的下降沿按新配置字的設(shè)置開(kāi)始工作。使用nRF2401進(jìn)行發(fā)送數(shù)據(jù)時(shí),,采用以下的步驟:1)CE置高,,使nRF2401開(kāi)始工作;2)逐位寫(xiě)入接收機(jī)的地址,;3)逐位寫(xiě)入要傳送的數(shù)據(jù),;4)CE置低,激發(fā)nRF2401進(jìn)行ShockBurstTM發(fā)射,。nRF2401的ShockBurstTM發(fā)射過(guò)程是:給射頻前端供電,,射頻數(shù)據(jù)打包(加字頭、CRC校驗(yàn)碼),,高速發(fā)射數(shù)據(jù)包,,發(fā)射完成,nRF2401進(jìn)入空閑狀態(tài),。nRF2401的接口模塊引腳包括CE,、DR1,、CLK1和DATA(接收通道1),接收端依照以下流程進(jìn)行數(shù)的接收:1)配置本機(jī)地址和即將接收的數(shù)據(jù)包大??;2)進(jìn)入接收狀態(tài),CE置高,;3)200μs后,,nRF2401進(jìn)入監(jiān)視狀態(tài),等待數(shù)據(jù)包的到來(lái),;4)當(dāng)接收到正確的數(shù)據(jù)包時(shí),,nRF2401自動(dòng)除去字頭、地址和CRC,;5)nRF2401通過(guò)把DR1(可用作中斷信號(hào))置高來(lái)通知微控制器,;6)微控制器把數(shù)據(jù)從nRF2401逐位移出;7)所有數(shù)據(jù)移完,,nRF2401把DR1置低,,此時(shí)如果CE為高,則等待下一個(gè)數(shù)據(jù)包,,如果CE為低,,開(kāi)始其他工作流程。

 

  程序中用到的部分代碼如下:

程序

程序

  考慮到點(diǎn)對(duì)多點(diǎn)通信的可靠性,,數(shù)據(jù)在底層無(wú)線(xiàn)傳輸中需要增加必要的協(xié)議規(guī)范,。設(shè)計(jì)中對(duì)有效數(shù)據(jù)進(jìn)行打包,格式為:前導(dǎo)碼,、地址,、有效數(shù)據(jù)載荷、校驗(yàn)碼,。

  3 結(jié)束語(yǔ)

  基于MSP430和NRF2401的無(wú)線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)設(shè)計(jì)在實(shí)驗(yàn)中表現(xiàn)出比較好的效果,,可以實(shí)現(xiàn)監(jiān)測(cè)區(qū)域內(nèi)信號(hào)的采集傳輸與處理。但是由于射頻芯片本身的原因,,傳輸距離會(huì)受到障礙物的影響和設(shè)置頻率而有變化,,這些問(wèn)題都有待更深入的研究。隨著無(wú)線(xiàn)網(wǎng)絡(luò)技術(shù)的成熟無(wú)線(xiàn)傳感器網(wǎng)絡(luò)的應(yīng)用必將廣泛深入環(huán)境監(jiān)測(cè),、目標(biāo)追蹤,、工業(yè)自動(dòng)化等各領(lǐng)域。

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。