《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于nRF905的溫度傳感器網(wǎng)絡(luò)硬件設(shè)計(jì)
基于nRF905的溫度傳感器網(wǎng)絡(luò)硬件設(shè)計(jì)
中電網(wǎng)
解放軍陸軍軍官學(xué)院研究生3隊(duì),楊志強(qiáng)
摘要: 為了實(shí)現(xiàn)實(shí)時(shí)采集房間內(nèi)的溫度信息,本文基于nRF905芯片設(shè)計(jì)了一款無(wú)線(xiàn)溫度傳感器網(wǎng)絡(luò)。首先對(duì)無(wú)線(xiàn)傳感器網(wǎng)絡(luò)進(jìn)行了概述,然后給出了溫度傳感器網(wǎng)絡(luò)的結(jié)構(gòu)組成,最后詳細(xì)闡述了溫度傳感器網(wǎng)絡(luò)的硬件設(shè)計(jì)。該溫度傳感器網(wǎng)絡(luò)具有良好的通用性和可靠性。
Abstract:
Key words :

    無(wú)線(xiàn)傳感器網(wǎng)絡(luò)是由許多無(wú)線(xiàn)傳感器節(jié)點(diǎn)協(xié)同組織起來(lái)的,這些節(jié)點(diǎn)具有無(wú)線(xiàn)通訊、數(shù)據(jù)采集和協(xié)同合作能力,可以應(yīng)用于布線(xiàn)和電源供給困難或人員不能到達(dá)的區(qū)域以及一些臨時(shí)場(chǎng)合等。無(wú)線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)可以隨機(jī)或特定地布置在目標(biāo)環(huán)境中,它們之間的通訊通過(guò)特定的協(xié)議自組織起來(lái),能夠獲取周?chē)h(huán)境的信息,并且相互協(xié)同完成特定任務(wù)。本文基于nRF905設(shè)計(jì)了一款無(wú)線(xiàn)溫度傳感器網(wǎng)絡(luò),通過(guò)無(wú)線(xiàn)網(wǎng)絡(luò)將普通辦公樓室內(nèi)的溫度采集傳感器節(jié)點(diǎn)連接起來(lái),實(shí)時(shí)采集房間內(nèi)的溫度信息,并傳送到遠(yuǎn)程控制中心進(jìn)行監(jiān)測(cè)。

無(wú)線(xiàn)傳感器網(wǎng)絡(luò)概述

   無(wú)線(xiàn)傳感器網(wǎng)絡(luò)系統(tǒng)通常包括傳感器節(jié)點(diǎn)、匯聚節(jié)點(diǎn)和管理節(jié)點(diǎn)。傳感器節(jié)點(diǎn)用多跳中繼的方式將數(shù)據(jù)傳送到匯聚節(jié)點(diǎn),然后再經(jīng)過(guò)各種通信網(wǎng)絡(luò)途徑傳送到用戶(hù)交互的管理節(jié)點(diǎn);管理節(jié)點(diǎn)對(duì)整個(gè)傳感器網(wǎng)絡(luò)進(jìn)行配置和對(duì)管理項(xiàng)進(jìn)行管理,及時(shí)地收集信息數(shù)據(jù)并發(fā)布監(jiān)測(cè)任務(wù)。

無(wú)線(xiàn)傳感器網(wǎng)絡(luò)技術(shù)具有如下特點(diǎn):

①基于應(yīng)用的網(wǎng)絡(luò)。無(wú)線(xiàn)傳感器網(wǎng)絡(luò)是對(duì)每一個(gè)應(yīng)用進(jìn)行相關(guān)的設(shè)計(jì)的,通過(guò)感知識(shí)別客觀世界的物理量,它可以獲取外部信息。

②與物理世界交互。外部環(huán)境變化對(duì)無(wú)線(xiàn)傳感網(wǎng)絡(luò)系統(tǒng)的影響較大,因此,傳感器節(jié)點(diǎn)必須適時(shí)地調(diào)整自身工作狀態(tài),以適應(yīng)環(huán)境的變化。

③自組織網(wǎng)絡(luò)。為了能夠快速自動(dòng)地配置調(diào)節(jié)、監(jiān)測(cè)與管理網(wǎng)絡(luò),節(jié)點(diǎn)需具有自組織能力,這是因?yàn)榫W(wǎng)絡(luò)的外部環(huán)境不穩(wěn)定,網(wǎng)絡(luò)自身也有很多不可預(yù)測(cè)的地方。

④以數(shù)據(jù)為中心。無(wú)線(xiàn)傳感器網(wǎng)絡(luò)以數(shù)據(jù)為中心,快速有效地融合各節(jié)點(diǎn)信息,直接將其傳送給用戶(hù)。

⑤網(wǎng)絡(luò)的協(xié)作性。無(wú)線(xiàn)傳感器網(wǎng)絡(luò)要求用大量節(jié)點(diǎn)進(jìn)行分布式協(xié)同的信號(hào)和信息處理,這是因?yàn)閱蝹€(gè)節(jié)點(diǎn)計(jì)算能力有限。

⑥節(jié)點(diǎn)能力有限。無(wú)線(xiàn)傳感器網(wǎng)絡(luò)設(shè)計(jì)時(shí),會(huì)面臨電池能量、計(jì)算能力以及存儲(chǔ)能力有限的情況。

無(wú)線(xiàn)傳感器網(wǎng)絡(luò)具有許多其他網(wǎng)絡(luò)所沒(méi)有的優(yōu)點(diǎn),其應(yīng)用領(lǐng)域已經(jīng)深入到人類(lèi)社會(huì)的許多場(chǎng)合,例如在環(huán)境、反恐、家庭、軍事、醫(yī)療、救災(zāi)以及其他商業(yè)、工業(yè)領(lǐng)域。

溫度傳感器網(wǎng)絡(luò)的結(jié)構(gòu)組成

     根據(jù)系統(tǒng)要求,溫度傳感器網(wǎng)絡(luò)包括遠(yuǎn)程控制中心和智能節(jié)點(diǎn)。遠(yuǎn)程控制中心用于發(fā)起數(shù)據(jù)采集命令,智能節(jié)點(diǎn)用以實(shí)現(xiàn)信息的采集、數(shù)據(jù)處理以及傳輸功能,其結(jié)構(gòu)組成如圖1所示,主要由控制模塊、無(wú)線(xiàn)收發(fā)模塊、通訊模塊、溫度采集模塊、存儲(chǔ)模塊、電量檢測(cè)模塊、按鍵模塊、液晶顯示模塊以及GSM模塊等組成。依據(jù)實(shí)際應(yīng)用背景,在所設(shè)計(jì)的溫度傳感器網(wǎng)絡(luò)中,普通節(jié)點(diǎn)首先通過(guò)無(wú)線(xiàn)射頻將所測(cè)溫度數(shù)據(jù)傳輸給匯聚節(jié)點(diǎn),然后匯聚節(jié)點(diǎn)通過(guò)GSM模塊將數(shù)據(jù)傳給遠(yuǎn)程控制中心。

圖1 溫度傳感器網(wǎng)絡(luò)結(jié)構(gòu)組成圖

溫度傳感器網(wǎng)絡(luò)硬件設(shè)計(jì)

控制模塊設(shè)計(jì)

    控制模塊的功能包括:①測(cè)量并處理傳感器模塊數(shù)據(jù);②讀取并處理無(wú)線(xiàn)收發(fā)模塊接收的數(shù)據(jù),進(jìn)行數(shù)據(jù)融合,配置系統(tǒng)參數(shù);③通信協(xié)議處理,完成無(wú)線(xiàn)傳感器網(wǎng)絡(luò)通信中的MAC和路由協(xié)議處理。因此,綜合考慮控制模塊的處理速度、存儲(chǔ)空間、外圍接口、功能和功耗等因素,本設(shè)計(jì)選取µPD78F0485微控制器作為控制模塊的核心器件。

   µPD78F0485微控制器具有如下特點(diǎn):①工作電壓低、范圍寬、功耗低:電壓為1.8V~5.5V;在STOP模式下工作電流1µA,使用副時(shí)鐘(32.768kHz)全速工作時(shí)電流僅200µA。②方便的開(kāi)發(fā)方式,存儲(chǔ)容量大:支持在線(xiàn)編譯,具有片上調(diào)試功能;內(nèi)部存儲(chǔ)器為60KB,高速RAM為1KB,擴(kuò)展ROM為1KB,存儲(chǔ)空間為64K。③管腳驅(qū)動(dòng)能力強(qiáng):驅(qū)動(dòng)電流可達(dá)10mA,可直接連接到電流低于10mA的芯片的電源引腳上,為這些芯片提供電源。④具有8通道10位AD轉(zhuǎn)換器;內(nèi)置看門(mén)狗定時(shí)器。⑤具有按鍵中斷功能,方便系統(tǒng)實(shí)時(shí)響應(yīng)用戶(hù)操作。⑥具有LCD控制器/驅(qū)動(dòng)器,可直接驅(qū)動(dòng)液晶顯示器。⑦具有1個(gè)16位的定時(shí)器/事件計(jì)數(shù)器,3個(gè)8位的定時(shí)器/事件計(jì)數(shù)器,3個(gè)8位的定時(shí)器,1個(gè)實(shí)時(shí)計(jì)數(shù)器,定時(shí)器可用作實(shí)現(xiàn)整個(gè)網(wǎng)絡(luò)的組網(wǎng)定位過(guò)程中的延時(shí),實(shí)時(shí)計(jì)數(shù)器主要用作實(shí)現(xiàn)系統(tǒng)的時(shí)鐘同步功能。⑧兩通道串行接口等片內(nèi)資源,可以直接連接GSM模塊和USB通訊模塊。⑨共有62個(gè)I/O口,多數(shù)接口具有內(nèi)部上拉電阻,對(duì)于必須使用上拉電阻的電路,可使用內(nèi)部上拉電阻,以節(jié)省電路板空間。⑩內(nèi)置蜂鳴器輸出控制器,可實(shí)現(xiàn)低電壓報(bào)警、溫度報(bào)警等功能。

無(wú)線(xiàn)收發(fā)模塊設(shè)計(jì)

   本設(shè)計(jì)在考慮調(diào)制方式、功耗、傳輸距離、功率等因素的基礎(chǔ)上,選取Nordic VLSI公司的無(wú)線(xiàn)射頻芯片nRF905。nRF905是一款低功耗無(wú)線(xiàn)收發(fā)芯片,可工作于433/868/915MHz ISM頻段,GFSK調(diào)制,本設(shè)計(jì)采用433MHz為中心頻率。該收發(fā)芯片由功率放大器、頻率合成器、晶體振蕩器、接收解調(diào)器和調(diào)制器組成,片內(nèi)自動(dòng)完成曼徹斯特編碼和解碼,廣泛應(yīng)用于無(wú)線(xiàn)數(shù)據(jù)通信、無(wú)線(xiàn)報(bào)警及安全系統(tǒng)、無(wú)線(xiàn)開(kāi)鎖、無(wú)線(xiàn)監(jiān)測(cè)和家庭自動(dòng)化等領(lǐng)域。

   nRF905通過(guò)SPI與微控制器進(jìn)行通信,可自動(dòng)處理字頭和CRC(循環(huán)冗余碼校驗(yàn))。發(fā)送數(shù)據(jù)時(shí),微控制器只需將配置寄存器信息、所要發(fā)送的數(shù)據(jù)和接收地址通過(guò)SPI傳送給nRF905,它會(huì)自動(dòng)完成數(shù)據(jù)的打包和發(fā)送。接收數(shù)據(jù)時(shí),nRF905自動(dòng)檢測(cè)載波并進(jìn)行地址匹配,接收到正確數(shù)據(jù)后自動(dòng)移去字頭、地址和CRC校驗(yàn)碼,再通過(guò)SPI將數(shù)據(jù)傳送到微控制器。nRF905具有四種工作模式:掉電模式、待機(jī)模式、Shock Burst接收模式和Shock Burst發(fā)送模式。在掉電模式中,電流僅為2.5µA,易于實(shí)現(xiàn)節(jié)能。當(dāng)nRF905處于掉電模式時(shí),SPI接口仍可以保持在工作狀態(tài);通過(guò)Shock Burst收發(fā)模式進(jìn)行無(wú)線(xiàn)數(shù)據(jù)傳輸,收發(fā)可靠,使用方便。因此,nRF905在諸多領(lǐng)域都具有廣闊的應(yīng)用前景,這些特點(diǎn)決定了nRF905芯片非常適合應(yīng)用于無(wú)線(xiàn)傳感器網(wǎng)絡(luò)中。

無(wú)線(xiàn)收發(fā)模塊的電路如圖2所示??刂埔_TX_EN、TRX_EN、PWR_UP直接與微控制器的P44、P45、P46相連;狀態(tài)引腳DR與微控制器的中斷引腳P120/INTP0相連,狀態(tài)引腳CD、AM直接與微控制器P47、P10相連;由于系統(tǒng)沒(méi)有SPI總線(xiàn),因此采用I/O引腳模擬SPI總線(xiàn)通信。微控制器的P11、P12、P13分別與nRF905的SCK、MOSI、MISO連接;微控制器的P14與SPI的控制端口CSN連接。nRF905通過(guò)電容和電感與天線(xiàn)J2相連接。nRF905帶有外部時(shí)鐘輸出引腳uPCLK,能夠輸出四種不同頻率的時(shí)鐘,采用示波器連接uPCLK引腳可測(cè)試nRF905是否工作正常。

圖2 無(wú)線(xiàn)收發(fā)模塊電路圖

存儲(chǔ)模塊設(shè)計(jì)

    傳感器節(jié)點(diǎn)需存儲(chǔ)用戶(hù)設(shè)定的參數(shù)以及運(yùn)行記錄等大量數(shù)據(jù)。本設(shè)計(jì)選擇AT24C256作為存儲(chǔ)芯片,它是ATMEL公司推出的低功耗256K串行EEPROM芯片,具有如下特點(diǎn):①具有三種工作電壓,分別為5.0V、2.7V、1.8V;②具有64字節(jié)頁(yè)寫(xiě)模式;③符合雙向數(shù)據(jù)傳送協(xié)議;④具有硬件寫(xiě)保護(hù)和軟件數(shù)據(jù)保護(hù)功能;⑤采用斯密特觸發(fā),可抑制輸入噪聲;⑥采用2線(xiàn)串行接口;⑦內(nèi)部可以組織成32K×8存儲(chǔ)單元。

    AT24C256存儲(chǔ)器電路如圖3所示,AT24C256的A0引腳和A1引腳接地。由于µPD78F0485微控制器沒(méi)有I2C接口,因此采用µPD78F0485的I/O引腳模擬I2C總線(xiàn)通信。采用µPD78F0485的I/O引腳控制EEPROM的供電,將存儲(chǔ)器的電源引腳VCC與µPD78F0485的P12引腳相連接。使用存儲(chǔ)器時(shí),需設(shè)置P12引腳輸出高電平,以實(shí)現(xiàn)為存儲(chǔ)器供電;不使用存儲(chǔ)器時(shí),可將存儲(chǔ)器電源關(guān)掉,節(jié)省電量,這也保證了電源不穩(wěn)定時(shí)不能訪(fǎng)問(wèn)EEPROM,防止EEPROM讀寫(xiě)出現(xiàn)錯(cuò)誤。µPD78F0485的P13和P14與AT24C256的SCL引腳和SDA引腳相連接。

圖3 AT24C256存儲(chǔ)器電路圖

按鍵模塊設(shè)計(jì)

按鍵是無(wú)線(xiàn)傳感器節(jié)點(diǎn)為用戶(hù)提供的操作接口,可利用按鍵設(shè)置和讀取節(jié)點(diǎn)的參數(shù),查詢(xún)節(jié)點(diǎn)的運(yùn)行結(jié)果、工作狀態(tài)和歷史記錄。本設(shè)計(jì)采用的微控制器µPD78F0485具有按鍵中斷功能,具有8個(gè)通道,網(wǎng)絡(luò)系統(tǒng)使用了KEY1、KEY2、KEY3和KEY4四個(gè)按鍵引腳,它們分別與µPD78F0485的P40引腳、P41引腳、P42引腳和P43引腳相連接,按鍵電路如圖4所示。

圖4 按健電路圖

USB通訊模塊設(shè)計(jì)

    利用USB接口可實(shí)現(xiàn)傳感器節(jié)點(diǎn)與計(jì)算機(jī)的通信。本設(shè)計(jì)采用了高度集成USB轉(zhuǎn)UART橋接器CP2102,它集成了USB 2.0全速功能控制器、USB轉(zhuǎn)發(fā)器、振蕩器和帶有全部調(diào)制解調(diào)器控制信號(hào)的串行數(shù)據(jù)總線(xiàn)(UART)接口;外圍元件較少,可以節(jié)約PCB成本和空間。使用USB通訊時(shí),首先將USB電路板一端與傳感器節(jié)點(diǎn)的電路板連接,另一端與計(jì)算機(jī)連接,然后將CP2102的驅(qū)動(dòng)程序安裝在計(jì)算機(jī)上,計(jì)算機(jī)將CP2102虛擬成一個(gè)COM口,最后就能夠以訪(fǎng)問(wèn)一個(gè)標(biāo)準(zhǔn)COM口的硬件方式訪(fǎng)問(wèn)CP2102。USB通訊電路如圖5所示,網(wǎng)絡(luò)系統(tǒng)將µPD78F0485的異步串行接口UART6與CP2102的異步串行接口相連接。

圖5 USB通訊電路圖

液晶顯示模塊設(shè)計(jì)

    溫度傳感器網(wǎng)絡(luò)工作時(shí),需讀取和設(shè)置節(jié)點(diǎn)的參數(shù)。因此,需采用LCD顯示器來(lái)顯示所需設(shè)置的參數(shù)命令和參數(shù)數(shù)據(jù)。本設(shè)計(jì)采用的µPD78F0485微控制器帶有LCD控制器/驅(qū)動(dòng)器,具有自動(dòng)讀取存儲(chǔ)器顯示數(shù)據(jù),自動(dòng)輸出COMMON和SEGMENT信號(hào)的功能。µPD78F0485具有6種顯示模式,每種顯示模式具有6種不同的幀頻率,本文選用1/3分壓、1/4分時(shí)的驅(qū)動(dòng)方式,使用副時(shí)鐘作為L(zhǎng)CD的時(shí)鐘源,采用內(nèi)部分壓的方式來(lái)驅(qū)動(dòng)具有4個(gè)COM端、20個(gè)SEG的LCD顯示器,該顯示器可同時(shí)顯示8個(gè)數(shù)字、7個(gè)小數(shù)點(diǎn)、17個(gè)常用標(biāo)號(hào)。

溫度采集模塊設(shè)計(jì)

    本設(shè)計(jì)溫度采集芯片采用數(shù)字化溫度傳感器DS18B20,它由半導(dǎo)體公司Dallas推出,具有如下特點(diǎn):①測(cè)溫范圍-55℃~+125℃,在-10℃~+85℃范圍內(nèi)的精度為±0.5℃。②測(cè)量結(jié)果為數(shù)字信號(hào),以“一線(xiàn)總線(xiàn)”傳給MCU,并且也傳送CRC校驗(yàn)碼。③具有較高的分辨率,擁有9~12位分辨率可調(diào)的功能,所對(duì)應(yīng)的溫度分辨率分別為0.5℃、0.25℃、0.125和0.0625℃。④具有寄生電源供電和外部電源供電兩種模式,電壓范圍寬。其中,在外部電源供電模式下,DS18B20工作穩(wěn)定可靠,抗干擾能力強(qiáng),因此,本文采用外部供電模式,并將DS18B20的電源引腳連接到µPD78F0485的引腳,當(dāng)不測(cè)量溫度時(shí),將其外部電源關(guān)閉以降低節(jié)點(diǎn)的功耗。⑤體積小,減少了傳感器節(jié)點(diǎn)體積的大小。網(wǎng)絡(luò)系統(tǒng)測(cè)溫電路如圖6所示,µPD78F0485的P140引腳與DS18B20的電源引腳相連接,P133引腳與DS18B20的數(shù)據(jù)引腳相連接。

圖6 測(cè)溫電路圖

電量檢測(cè)模塊設(shè)計(jì)

    溫度傳感器網(wǎng)絡(luò)采用電池供電,因而必須定時(shí)檢測(cè)電量,以避免節(jié)點(diǎn)電量不足而造成節(jié)點(diǎn)之間的通信故障,若電量不足,則提示更換電池。本設(shè)計(jì)采用µPD78F0485微控制器的10位逐次逼近性AD轉(zhuǎn)換器和微功率兩端帶隙穩(wěn)壓器LM385二極管來(lái)實(shí)現(xiàn)電量檢測(cè),電量檢測(cè)電路如圖7所示,P30引腳連接控制是否測(cè)量電量,用以控制是否進(jìn)行電量檢測(cè),P27/ANI連接穩(wěn)壓管LM385的電源端。穩(wěn)壓管LM385可工作在10mA~20mA的電流范圍內(nèi),具有非常低的溫度系數(shù)和動(dòng)態(tài)阻抗。

圖7 電量檢測(cè)電路圖

電源模塊設(shè)計(jì)

根據(jù)系統(tǒng)要求,本設(shè)計(jì)采用3.6V鋰電池供電,鋰電池具有容量大、體積小的特點(diǎn)。由于USB通訊模塊使用的是5V電壓,因此需采用LM1117進(jìn)行5V到3.6V電壓的轉(zhuǎn)換。電源模塊電路如圖8所示,電源模塊提供5V和3.6V的兩種電源接口,采用三端穩(wěn)壓器LM1117可將5V電壓轉(zhuǎn)換為3.6V電壓。

圖8 電源模塊電路圖

結(jié)束語(yǔ)

    為了實(shí)現(xiàn)實(shí)時(shí)采集房間內(nèi)的溫度信息,本文基于nRF905芯片設(shè)計(jì)了一款無(wú)線(xiàn)溫度傳感器網(wǎng)絡(luò)。首先對(duì)無(wú)線(xiàn)傳感器網(wǎng)絡(luò)進(jìn)行了概述,然后給出了溫度傳感器網(wǎng)絡(luò)的結(jié)構(gòu)組成,最后詳細(xì)闡述了溫度傳感器網(wǎng)絡(luò)的硬件設(shè)計(jì)。該溫度傳感器網(wǎng)絡(luò)具有良好的通用性和可靠性。

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