于 樂(lè) 蘇新彥 姚金杰
(中北大學(xué) 太原 030051)
有線傳輸?shù)膫鬏斁嚯x受局限導(dǎo)致無(wú)線傳輸越來(lái)越受人們的青睞,隨之而來(lái)的是應(yīng)用領(lǐng)域越來(lái)越廣,諸如:遙控遙測(cè)、生物信號(hào)采集、機(jī)器人控制、環(huán)境監(jiān)測(cè)等。凡是布線繁雜或不允許布線的場(chǎng)合都希望通過(guò)無(wú)線方案來(lái)解決[1]。本文介紹的是將無(wú)線傳輸運(yùn)用到水環(huán)境中,將采集到的水聲信號(hào)無(wú)線傳輸給上位機(jī)。由于本設(shè)計(jì)僅僅將傳感器放入水中,節(jié)點(diǎn)置于水面上,所以不需要考慮射頻信號(hào)被衰減的情況。本系統(tǒng)采用Nordic 公司的射頻芯片nRF24L01,超低功耗單片機(jī)MSP430F1611 作為主控芯片控制射頻芯片以實(shí)現(xiàn)無(wú)線水聲信號(hào)的傳輸。
nRF24L01 是一款工作在2.4 ~2.5 GHz 世界通用ISM 頻段的單片無(wú)線收發(fā)器芯片。nRF24L01 無(wú)線收發(fā)芯片普遍用于無(wú)線門(mén)禁、工業(yè)傳感器、無(wú)線數(shù)據(jù)傳輸系統(tǒng)中[2]。輸出功率、頻道選擇和協(xié)議的設(shè)置可以通過(guò)SPI接口進(jìn)行設(shè)置。工作速率0 ~2 Mb/s,外圍元件極少。
該芯片的封裝規(guī)格為6mm ×6mm ×0.8mm,36腳QFN6 ×6 封裝,RF 發(fā)射電流10.5mA,接收電流19mA[3]。它的主要特點(diǎn)如下:
(1)低工作電壓:1.9 ~3.6 V 低電壓工作;
(2)高速率:2 Mbps,由于空中傳輸時(shí)間很短,極大地降低了無(wú)線傳輸中的碰撞現(xiàn)象;
(3)多頻點(diǎn):125 個(gè)頻點(diǎn),滿(mǎn)足多點(diǎn)通信和跳頻通信需要;
(4)超小型:體積小巧,5 mm×5 mm;
(5)低功耗:當(dāng)工作在應(yīng)答模式通信時(shí),快速地控制傳輸及啟動(dòng)時(shí)間,極大地降低了電流消耗;
(6)低應(yīng)用成本:nRF24L01 的SPI接口可以利用單片機(jī)的硬件SPI口連接或用單片機(jī)I/O 口進(jìn)行模擬,內(nèi)部有FIFO 可以與各種高低速微處理器接口,便于使用低成本單片機(jī)[4]。
nRF24L01 有20 個(gè)引腳,其引腳及其功能如表1所示[5]。
表1 nRF24L01 引腳功能
MSP430F1611 主要特點(diǎn)有:
(3)5 種省電模式;
(4)從等待方式喚醒時(shí)間:6μs;
(5)16 位RISC 結(jié)構(gòu),125ns 指令周期;
(6)12 位A/D 帶采樣保持內(nèi)部參考源;
(2)
(7)雙12 位D/A 同步轉(zhuǎn)換;
(8)16 位定時(shí)器Timer_A 和Timer_B[6]。
無(wú)線傳輸主要是由單片機(jī)MSP430F1611 控制射頻芯片nRF24L01 實(shí)現(xiàn)的。此單片機(jī)將很多外圍模塊都整合到片內(nèi),適合用于開(kāi)發(fā)和設(shè)計(jì)單片系統(tǒng)。如圖1所示為單片機(jī)MSP430F1611 與射頻芯片nRF24L01 的電路原理圖。
圖1 電路原理圖
如圖1 所述,nRF24L01 與MSP430F1611 主要通過(guò)6 個(gè)引腳相連:CSN(SPI的使能端);CE(數(shù)據(jù)發(fā)射、接收的使能端);MOSI(SPI數(shù)據(jù)主出從入端);SCK(SPI時(shí)鐘輸入);MISO(SPI數(shù)據(jù)主入從出端);IRQ(中斷輸出)。TDO/TDI連接一個(gè)S 來(lái)控制發(fā)送或接收模式。MSP430 的控制指令從nRF24L01 的MOSI引腳輸入,nRF24L01 的狀態(tài)和數(shù)據(jù)信息從MISO 引腳輸出送到MSP430。每個(gè)指令使用前CSN 需為低,使用后變?yōu)楦摺?/p>
本設(shè)計(jì)先將單片機(jī)設(shè)定到低功耗3,將nRF24L01 設(shè)定為先睡眠后喚醒的工作方式。首先先初始化MSP430F1611 的時(shí)鐘、定時(shí)器和SPI口,中斷喚醒nRF24L01 后,初始化nRF24L01,然后判斷TDO/TDI引腳是否為高電平,從而決定是否發(fā)射數(shù)據(jù),若為發(fā)射模式,單片機(jī)就把數(shù)據(jù)發(fā)送給nRF24L01,當(dāng)IRQ 為低電平時(shí)就讀取數(shù)據(jù)。如圖2所示為系統(tǒng)軟件設(shè)計(jì)流程圖。
本設(shè)計(jì)接入相應(yīng)的傳感器、采集模塊和上位機(jī)等之后,在水中使用設(shè)備發(fā)聲,通過(guò)本設(shè)計(jì)的無(wú)線傳輸,將水聲信號(hào)傳輸?shù)缴衔粰C(jī)上,使上位機(jī)采集到數(shù)據(jù),通過(guò)Matlab 軟件對(duì)存儲(chǔ)的數(shù)據(jù)進(jìn)行仿真,如圖3所示為Matlab 對(duì)其中一組數(shù)據(jù)仿真出的原始水聲信號(hào)波形圖。
圖2 軟件設(shè)計(jì)流程圖
然后對(duì)原始的水聲信號(hào)進(jìn)行一些處理,如圖4所示為截取了一部分的水聲信號(hào),如圖5所示為整流濾波后的圖形,如圖6所示為包絡(luò)檢波的圖形。
圖3 原始水聲信號(hào)
圖4 截取的部分水聲信號(hào)
圖5 整流濾波后圖形
圖6 包絡(luò)檢波圖形
本設(shè)計(jì)通單片機(jī)MSP430F1611 對(duì)射頻芯片nRF24L01 的控制,實(shí)現(xiàn)了無(wú)線水聲信號(hào)的傳輸。通過(guò)Matlab 軟件對(duì)采集到的數(shù)據(jù)進(jìn)行仿真,證實(shí)了此設(shè)計(jì)的無(wú)線傳輸效果。
[1]陳麗娟,常丹華.基于nRF2401 的無(wú)線數(shù)據(jù)通信[J].電子器件,2006,(29)1:248-250.
[2]李澤坤.基于nRF2401 的無(wú)線網(wǎng)絡(luò)節(jié)點(diǎn)設(shè)計(jì)與實(shí)現(xiàn)[D].南昌航空大學(xué),2013.
[3]韋積慧.基于nRF2401 的無(wú)線網(wǎng)絡(luò)設(shè)計(jì)與實(shí)現(xiàn)[D].吉林大學(xué),2012.
[4]劉志平,趙國(guó)良.基于nRF24L01 的近距離無(wú)線數(shù)據(jù)傳輸[J].應(yīng)用科技,2008,35(3):55-58.
[5]訊通科技,2.4GHz 單片高速2Mbps 無(wú)線收發(fā)芯片[M].北京:北京航空航天大學(xué),2007.
[6]沈建華,楊艷琴,翟驍曙.MSP430 系列16位超低功耗單片機(jī)原理與應(yīng)用[M].北京:清華大學(xué)出版社,2004:24-25.