《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 微波|射頻 > 設(shè)計(jì)應(yīng)用 > 基于nRF2401的工程機(jī)械儀表顯示無(wú)線通信平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)
基于nRF2401的工程機(jī)械儀表顯示無(wú)線通信平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)
來(lái)源:電子技術(shù)應(yīng)用2010年第8期
王 瓊,張 燚,孫保群
合肥工業(yè)大學(xué),安徽 合肥230009
摘要: 針對(duì)大型工程機(jī)械各類信號(hào)與駕駛操控室儀表異地顯示的通信問(wèn)題,提出了基于射頻收發(fā)器nRF2401實(shí)現(xiàn)無(wú)線數(shù)據(jù)通信的設(shè)計(jì)方案,詳細(xì)介紹了射頻芯片nRF2401的工作原理及特點(diǎn), 并給出了無(wú)線通信平臺(tái)硬件結(jié)構(gòu)、接口電路及相應(yīng)程序框圖。經(jīng)過(guò)測(cè)試,該通信平臺(tái)上通信速率高、質(zhì)量好,空曠處的傳輸距離可達(dá)100 m。
中圖分類號(hào): TN925
文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2010)08-0052-03
The design and realization of wireless communication system based on nRF2401 of construction machanary and engineering instrument show
WANG Qiong,ZHANG Yi,SUN Bao Qun
Hefei University of Technology,Hefei 230009,China
Abstract: Aiming at the question of remote display all kinds of signals of large-scale engineering machinery communicating with the instrument board of manipulative cab, a type of wireless data communication system is designed based on the transceiver of nRF2401, its working principle and characteristics is introduced particularly, and the structure of hardware and software designing is given out. By being tested, the quality of communication is preferable and the distance of transmission can reach 100 meters in clear field.
Key words : radio frequency wireless communication;nRF2401;instrument board of engineering machine;MSP430F149

    隨著射頻無(wú)線通信技術(shù)的迅速發(fā)展,對(duì)大型工程機(jī)械駕駛操控室儀表顯示采用無(wú)線通信的信號(hào)傳輸方式,可有效消除線纜傳輸固有的弊端,保證信號(hào)傳輸?shù)馁|(zhì)量和可靠性。本文提出一種以超低功耗16 bit微控制器MSP430F149和射頻無(wú)線收發(fā)器nRF2401為核心的無(wú)線通信平臺(tái),實(shí)現(xiàn)了大型工程機(jī)械駕駛操控室儀表顯示信號(hào)的無(wú)線傳輸,并完成了平臺(tái)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)。
1 系統(tǒng)結(jié)構(gòu)及工作原理
    系統(tǒng)結(jié)構(gòu)及原理框圖如圖1所示。

    系統(tǒng)由發(fā)射機(jī)和接收機(jī)組成。發(fā)射機(jī)和接收機(jī)的無(wú)線模塊為射頻無(wú)線收發(fā)器nRF2401,并均能工作在收發(fā)狀態(tài),采用半雙工方式通信,通過(guò)按鍵中斷實(shí)現(xiàn)模塊收發(fā)方式的轉(zhuǎn)換,并在LCD上實(shí)時(shí)顯示收發(fā)器的工作狀態(tài)。發(fā)射機(jī)主要完成現(xiàn)場(chǎng)各類儀表信號(hào)的數(shù)據(jù)采集及A/D轉(zhuǎn)換、存儲(chǔ)、軟件抗干擾和標(biāo)度轉(zhuǎn)換處理、數(shù)據(jù)發(fā)送、LCD顯示系統(tǒng)狀態(tài)控制以及控制指令接收等功能;接收機(jī)則主要實(shí)現(xiàn)現(xiàn)場(chǎng)數(shù)據(jù)接收、LCD顯示儀表參數(shù)控制、向發(fā)射機(jī)傳送控制命令等工作。此外,發(fā)射機(jī)和接收機(jī)的控制單元配置有標(biāo)準(zhǔn)的RS-232接口,可以很方便地把各類數(shù)據(jù)傳送到PC機(jī)上進(jìn)行分析處理。
2 通信系統(tǒng)硬件設(shè)計(jì)
    發(fā)射機(jī)和接收機(jī)的控制單元所采用的MCU器件皆為T(mén)I公司的16 bit高性能微控制器MSP430F149芯片。該芯片具有超低功耗、運(yùn)算速度快、存儲(chǔ)容量大、高性能模擬模式及豐富的片內(nèi)外設(shè)、JATG接口和在線編程等顯著優(yōu)點(diǎn)[1]。系統(tǒng)無(wú)線通信模塊為Nordic公司生產(chǎn)的單片集成射頻無(wú)線收發(fā)器nRF2401芯片,工作頻率范圍為全球開(kāi)放的2.4 GHz頻段,可自適應(yīng)125個(gè)頻道,具有功耗低、通信速率高、通信質(zhì)量穩(wěn)定可靠、軟件配置工作參數(shù)、外圍電路簡(jiǎn)單、應(yīng)用靈活、成本低廉、開(kāi)發(fā)周期短等優(yōu)點(diǎn)[2]。應(yīng)用該芯片實(shí)現(xiàn)無(wú)線通信是一種具備較高性價(jià)比的解決方案。
2.1 nRF2401收發(fā)器工作原理
    nRF2401芯片采用5 mm×5 mm QFN封裝,芯片內(nèi)置地址解碼器、時(shí)鐘、解調(diào)處理器、先進(jìn)先出堆棧區(qū)、GFSK濾波器、CRC處理器、低噪聲放大器、頻率合成器和功率放大器等功能模塊,并具有1.9 V~3.6 V寬工作電壓,以-5 dBm功率發(fā)射時(shí),工作電流為10.5 mA,接收時(shí)工作電流為18 mA。
    2401工作原理可概括為:2種通信方式、1個(gè)配置字、2個(gè)通道和4種工作模式[3]。
    兩種通信方式為ShockBurstTM(突發(fā)模式)和Direct Mode(直接模式)。在ShockBurstTM方式下,由2401自動(dòng)處理數(shù)據(jù)包字頭、地址和CRC校驗(yàn)碼,數(shù)據(jù)包由MCU低速送入片內(nèi)的FIFO區(qū),由2401高速發(fā)出,數(shù)據(jù)傳輸速率最高達(dá)1 Mb/s,這種方式抗干擾性能強(qiáng)并且節(jié)能;Direct Mode方式時(shí),如傳統(tǒng)射頻收發(fā)器一樣,數(shù)據(jù)包字頭、地址和CRC校驗(yàn)碼必須在通信程序中處理。
    2401內(nèi)置狀態(tài)字寄存器,其功能為設(shè)置芯片的工作參數(shù)配置字。配置字由CS、CLK1和DATA 3線接口寫(xiě)入,包括芯片收發(fā)狀態(tài)、接收頻道地址位數(shù)和地址、通道選擇、傳輸速率、晶振頻率、發(fā)射功率、工作頻率、CRC糾校驗(yàn)等參數(shù),最多可有144 bit,前24 bit為系統(tǒng)保留位,其余120 bit由程序設(shè)置。在ShockBurstTM方式下配置字為15 B,Direct Mode方式下配置字為2 B。
    2401具有DuoCeiverTM技術(shù),為接收提供了2個(gè)獨(dú)立的專用數(shù)字信道,即通道1(CLK1、DR1和DATA)和通道2(CLK2、DR2和DOUT2),后者只接收數(shù)據(jù),可代替兩個(gè)單獨(dú)的接收系統(tǒng)。通過(guò)一個(gè)天線接口即可同時(shí)接收兩組數(shù)據(jù),但接收通道2的頻率必須比通道1的頻率高出8 MHz以上時(shí),才能正常接收[4]。
    2401具備4種工作模式,由PWR_UP、CE和CS 3個(gè)引腳信號(hào)決定,表1給出了工作模式與引腳信號(hào)的對(duì)應(yīng)關(guān)系。

    2401上電工作時(shí),首先置為配置模式,由初始化程序?qū)懭肱渲米?,配置字的最?位指定2401收發(fā)狀態(tài);然后由控制器輸出信號(hào)將CE引腳置為高電平,2401進(jìn)入收發(fā)模式工作,通過(guò)指定通道收發(fā)數(shù)據(jù),收發(fā)雙方交互時(shí)一方可進(jìn)入空閑模式,待全部數(shù)據(jù)傳送完畢時(shí)進(jìn)入關(guān)機(jī)模式[3]。
2.2 通信系統(tǒng)硬件邏輯電路
    圖2為系統(tǒng)的控制芯片MSP430F149與無(wú)線模塊nRF2401的硬件邏輯電路。由于MSP430F149只有P1和P2口具有中斷控制功能,故將F149的P2口P2.0~P2.7分別接2401的CE、DR2、CLK2、DOUT2、CS、DR1、CLK1和DATA引腳,P5.7接PWR_UP。

    2401的工作電壓為3 V,由圖2可知2401應(yīng)用電路只需少量的外圍元件。在設(shè)計(jì)過(guò)程中,天線可以選用PCB內(nèi)置,也可以使用單鞭天線和環(huán)形天線。本系統(tǒng)使用外置天線,SMA接頭。傳輸距離在100 m左右,可滿足大型工程機(jī)械儀表通信距離要求。
    系統(tǒng)外圍電路部分設(shè)計(jì)較簡(jiǎn)單,MSP430F149的P6口為指定A/D口,現(xiàn)場(chǎng)采集的儀表傳感器信號(hào)經(jīng)整形放大輸入F149的P6端口進(jìn)行A/D轉(zhuǎn)換;P3、P4、P5口為普通I/O口,因此要合理利用I/O口;F149的P4和P5端口接液晶顯示器YJD12864,控制LCD實(shí)時(shí)顯示;P1端口接鍵盤(pán),2401的收發(fā)狀態(tài)由按鍵中斷設(shè)定。
3 系統(tǒng)軟件設(shè)計(jì)
    系統(tǒng)軟件是在IAR Embedded Workbench平臺(tái)上開(kāi)發(fā)的C代碼程序,采用模塊化結(jié)構(gòu)。發(fā)射機(jī)程序包括數(shù)據(jù)采集、無(wú)線數(shù)據(jù)發(fā)送、實(shí)時(shí)顯示以及與PC機(jī)通信等模塊;接收機(jī)程序包括無(wú)線數(shù)據(jù)接收、地址和CRC校驗(yàn)、儀表參數(shù)實(shí)時(shí)顯示以及與PC機(jī)通信等模塊。此外,發(fā)射機(jī)和接收機(jī)軟件留有收發(fā)命令接口,以備系統(tǒng)擴(kuò)展工程操作遙控功能。本文主要討論無(wú)線數(shù)據(jù)傳輸模塊。
    無(wú)線通信模塊主要完成nRF2401初始化和無(wú)線數(shù)據(jù)收發(fā)功能。
    2401初始化主要是寫(xiě)入配置字,由CS片選引腳控制, CLK1引腳提供串行時(shí)鐘,通過(guò)DATA數(shù)據(jù)位引腳串行寫(xiě)入配置字。2401工作在ShockBurstTM方式下,配置字包括數(shù)據(jù)寬度、地址寬度、地址、CRC校驗(yàn)碼和解碼四部分。
    2401數(shù)據(jù)包通信協(xié)議格式由PRE-AMBLE+ADDRESS+PAYLOAD+CRC項(xiàng)組成。其中:PRE-AMBLE為8 bit前導(dǎo)碼,由硬件自動(dòng)加入;ADDRESS為32 bit發(fā)送地址碼;PAYLOAD為208 bit的發(fā)送數(shù)據(jù);CRC是由內(nèi)置糾檢錯(cuò)硬件電路自動(dòng)加上的校驗(yàn)和,可設(shè)為0、8或16 bit。除去前導(dǎo)碼,本系統(tǒng)設(shè)置數(shù)據(jù)包長(zhǎng)度為256 bit(32 B),其中:數(shù)據(jù)寬度208 bit、地址寬度32 bit、CRC碼16 bit。
    根據(jù)通信協(xié)議設(shè)定2401接收端配置字為:
0x00.d000.0000.0000.00cc.cccc.cc83.4f05;
發(fā)送端配置字為:0x00.ff00.0000.0000.00cc.
cccc.cc83.4f04。配置后2401以ShockBurstTM模式進(jìn)行單通道接收,通道1地址為0xcccc.cccc,通信速率250 kb/s,晶振頻率16 MHz,輸出功率0 dBm,工作頻率2 402 MHz。
    通信系統(tǒng)發(fā)送和接收程序流程圖如圖3所示。

    通信程序開(kāi)始時(shí),首先對(duì)MSP430F149、A/D、YJD12864、nRF2401初始化并等待按鍵中斷,系統(tǒng)分別設(shè)置收、發(fā)和空閑鍵,當(dāng)按鍵閉合產(chǎn)生中斷后分別進(jìn)入對(duì)應(yīng)的中斷服務(wù)程序,完成數(shù)據(jù)包的傳送。2401的CE端由MCU 的P2.0引腳控制。發(fā)送程序開(kāi)始時(shí)寫(xiě)入2401發(fā)送配置字,再置CE端為高,2401進(jìn)入發(fā)送模式,通道1地址和發(fā)送數(shù)據(jù)由P2.7(DATA)引腳依次寫(xiě)入2401的緩沖區(qū), 2401自動(dòng)加上字頭、CRC校驗(yàn)碼將數(shù)據(jù)包以250 kb/s的通信速率發(fā)射出去。發(fā)送程序可以連續(xù)發(fā)送數(shù)據(jù)包直到按下接收鍵或空閑鍵退出發(fā)送程序返回。當(dāng)按下接收鍵時(shí)進(jìn)入接收程序,首先寫(xiě)入2401接收配置字,當(dāng)CE端置高時(shí)2401進(jìn)入接收模式,延時(shí)202 ?滋s后開(kāi)始接收數(shù)據(jù)包,當(dāng)正確接收數(shù)據(jù)包后,2401自動(dòng)除去前導(dǎo)碼、地址和CRC校驗(yàn)碼并將數(shù)據(jù)送緩沖區(qū),同時(shí)DR1輸出高電平通知MCU讀取數(shù)據(jù),微控制器從P2.7引腳逐位移出數(shù)據(jù)后,DR1輸出低電平,接收數(shù)據(jù)包結(jié)束。接收程序亦可以連續(xù)接收數(shù)據(jù)包直到按下發(fā)送鍵或空閑鍵退出接收程序返回。
4 實(shí)驗(yàn)結(jié)果及結(jié)論
    由于MSP430F149內(nèi)置高精度12 bit 8通道A/D轉(zhuǎn)換器,數(shù)據(jù)轉(zhuǎn)換精度可達(dá)。本系統(tǒng)使用其中1路通道采集油箱油量數(shù)據(jù)。為保證數(shù)據(jù)采樣的精度,數(shù)據(jù)采集程序采用算術(shù)平均值數(shù)字濾波,對(duì)采樣信號(hào)進(jìn)行平滑加工以提高系統(tǒng)可靠性。經(jīng)實(shí)驗(yàn)測(cè)試A/D轉(zhuǎn)換精度滿足要求。
    本系統(tǒng)在室內(nèi)走道和室外開(kāi)闊地對(duì)2401發(fā)射功率為0 dB、-5 dB、-10 dB、-20 dB的4個(gè)檔位進(jìn)行了點(diǎn)對(duì)點(diǎn)數(shù)據(jù)傳輸實(shí)驗(yàn),測(cè)試數(shù)據(jù)傳輸距離和誤碼率,系統(tǒng)供電分別為穩(wěn)壓電源和干電池。室內(nèi)走道傳輸距離為70 m,在無(wú)高大建筑物吸收和干擾的室外開(kāi)闊地,傳輸距離可達(dá)100 m左右。由于nRF2401芯片內(nèi)置了CRC糾錯(cuò)電路和協(xié)議,所以數(shù)據(jù)傳輸?shù)目煽啃愿?。?shí)驗(yàn)中,凡在可接收到數(shù)據(jù)的情形下,未出現(xiàn)接收數(shù)據(jù)出錯(cuò)的現(xiàn)象。由于穩(wěn)壓電源提供的電壓、電流穩(wěn)定,能夠提高接收信號(hào)的質(zhì)量和距離。
    本文提出的基于射頻收發(fā)芯片nRF2401實(shí)現(xiàn)工程機(jī)械儀表異地顯示的無(wú)線通信方案,實(shí)現(xiàn)了大型工程機(jī)械駕駛操控室儀表顯示無(wú)線通信的信號(hào)傳輸,可消除目前線纜傳輸固有的弊端,有效保證信號(hào)傳輸?shù)馁|(zhì)量和可靠性。由于本系統(tǒng)為低功耗設(shè)計(jì),使用兩節(jié)5號(hào)干電池即可保證長(zhǎng)期工作。經(jīng)測(cè)試,在100 m左右的通信距離內(nèi),該無(wú)線傳輸系統(tǒng)能夠穩(wěn)定地實(shí)現(xiàn)數(shù)據(jù)的有效傳輸,具有低功耗、抗干擾能力強(qiáng)、易攜帶等優(yōu)點(diǎn)。目前擬在QY50B型汽車(chē)起重機(jī)和BBS5280JXFJP18型舉高噴射消防車(chē)上試用。此外,本系統(tǒng)的發(fā)射機(jī)和接收機(jī)均能工作在收發(fā)方式,并預(yù)留多種接口,方便擴(kuò)展功能和組網(wǎng),也適用于其他具有無(wú)線通信功能的應(yīng)用場(chǎng)合。
參考文獻(xiàn)
[1] 胡大可.MSP430系列FLASH型超低功耗16位單片機(jī)[M]. 北京:北京航空航天大學(xué)出版社,2001.
[2] 鄭曉艷.熱藥灌注機(jī)中無(wú)線通信裝置的設(shè)計(jì)[J].微計(jì)算機(jī)信息,2008(12):101-103.
[3] 郝衛(wèi)亮.無(wú)線傳輸系統(tǒng)中nRF2401芯片數(shù)據(jù)丟失問(wèn)題的研究[J].電子技術(shù)應(yīng)用,2007(8):55-57.
[4] Nordic VLSI ASA.NRF2401 Single Chip 2.4 GHz Radio Transceiver Data sheet[OL],2003.http://www.nvlsi.no.

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