摘 要 為克服傳統(tǒng)溫度傳感器的使用局限,基于單片機技術(shù)和無線通訊技術(shù)設(shè)計了一種無線溫度傳感器。該溫度傳感器以數(shù)字溫度計DS18B20和無線收發(fā)芯片NRF2401構(gòu)成硬件平臺,采用高增益天線,通過Enhanced ShockBurstTM收發(fā)模式實現(xiàn)對溫度數(shù)據(jù)的傳輸,實驗覆蓋區(qū)域達(dá)到200m。
關(guān)鍵詞 DS18B20 NRF2401 無線溫度傳感器
中圖分類號: TP3 文獻(xiàn)標(biāo)識碼:A
以傳統(tǒng)溫度傳感器進(jìn)行多點溫度測量時往往存在繁雜的布線問題,為了有效克服這一使用局限,我們基于單片機技術(shù)和無線通信技術(shù)設(shè)計了一種使用便捷的無線溫度傳感器,本文給予詳細(xì)介紹。
1 硬件設(shè)計框架與基本原理
1.1 總體結(jié)構(gòu)框架
無線溫度傳感器的總體結(jié)構(gòu)主要包括兩部分:一是溫度采集電路(圖1),包括溫度采集模塊,單片機和無線發(fā)射模塊,其作用是測量溫度并將測量到的溫度數(shù)據(jù)發(fā)射給主機;另外一部分是溫度信息處理電路(圖2),包括無線接收模塊、LCD顯示、掉電數(shù)據(jù)存儲、按鍵和RS232接口,其作用是收集所有的溫度信息,處理并顯示出這些信息,同時還可以將這些數(shù)據(jù)傳輸?shù)絇C機上。
1.2 數(shù)字溫度計DS18B20
DS18B20是一種分辨率可編程設(shè)置的單總線數(shù)字溫度計,用戶可以通過程序來控制,將溫度轉(zhuǎn)化成12bit的數(shù)字字節(jié)的最大耗時僅需750ms。每一片DS18B20都有唯一的64位序列碼,從而允許多片DS18B20共存于同一根單總線上,因此用一塊單片機可以控制一片區(qū)域的溫度采集。
DS18B20外觀和接口如圖3和圖4所示,它有3個引腳,1腳為GND電源地;2腳為DQ數(shù)字信號輸入輸出引腳,DS18B20通過1根數(shù)據(jù)總線與單片機進(jìn)行雙向通信;3腳為VDD外接供電電源輸入端。
1.3 單片機的選擇
本系統(tǒng)中在溫度采集電路和溫度信息處理電路中都需要用到單片機,而且單片機是做為系統(tǒng)控制核心。在溫度采集電路中對單片機的功耗要求較高而在信息處理電路中對單片機的處理速度有一定的要求。基于價格和電路設(shè)計方便的考慮,采用華邦W78E052,它的指令和引腳序列與MCS51兼容,編程簡單方便。它最大支持40MHz時鐘,供電電壓范圍寬(2.4V~5.5V),采用3.3V供電,它的IO口可以很方便的與DS18B20和NRF2401直接連接。
由于NRF2401模塊的無線收發(fā)距離與PCB的布局和布線有很大的關(guān)系,所以其直流供電電源要盡量的靠近VDD引腳,并且用一個10uF鉭電容去耦。布線要注意避免長的電源走線,元器件的地、電源及電源的去耦電容要盡量靠近芯片。VSS直接連接鋪銅地,并保證每個VSS至少有一個過孔。
2 軟件的設(shè)計
2.1 溫度采集
DS18B20默認(rèn)以12位輸出,測溫分辨率為0.0625,輸出二進(jìn)制補碼格式數(shù)據(jù),低4位為小數(shù)位,最高位為符號位。如果是正溫度,讀出的數(shù)據(jù)乘以0.0625便是當(dāng)前的溫度值;負(fù)溫度得轉(zhuǎn)化為正值再相乘。12位輸出的耗時是750ms,如果需要提高轉(zhuǎn)換速度,可以選擇減少輸出位數(shù)。如果是單片的DS18B20工作,在啟動溫度轉(zhuǎn)換和度暫存存儲器操作命令時可以跳過64位ROM地址匹配。
2.2 無線收發(fā)
NRF2401有4種工作模式,分別是收發(fā)模式、配置模式、空閑模式和關(guān)機模式,這四種模式可由PWR_UP寄存器、PRIM_RX寄存器和CE引腳決定。其中收發(fā)模式又有Enhanced ShockBurstTM、ShockBurstTM和直接收發(fā)模式3種,收發(fā)模式由配置字來決定。配置從4個方面進(jìn)行:①數(shù)據(jù)寬度,聲明射頻數(shù)據(jù)包中的數(shù)據(jù)位數(shù);②地址寬度,聲明數(shù)據(jù)包中地址占用位數(shù);③地址,指接收對象的地址;④CRC檢測,生成CRC校驗碼和解碼。
2.3 系統(tǒng)軟件框架
溫度信息處理模塊可以工作在兩種模式:單機模式和聯(lián)機模式,這兩種模式可以通過按鍵來設(shè)定。單機模式下,將各個溫度采集模塊上采集過來的溫度實時顯示出來,與預(yù)先設(shè)定的數(shù)據(jù)進(jìn)行比較,如果某一處超過警界值,則啟動相應(yīng)的處理措施并發(fā)出報警。而在聯(lián)機模式下,模塊則將采集到的數(shù)據(jù)通過RS232發(fā)給上位機,并執(zhí)行上位機發(fā)出的命令。
實驗測定:該無線溫度傳感器用板載天線在空曠地的數(shù)據(jù)傳輸距離可達(dá)40米,如果采用高增益天線可以將控制距離增大到100米以上,溫度測量誤差在€?.1℃以內(nèi)。如果在發(fā)射端增加功率放大器模塊,在接收端加低噪聲放大器模塊,控制范圍還能夠進(jìn)一步擴大。
參考文獻(xiàn)
[1] 王飛.基于ZigBee技術(shù)的無線溫濕度傳感器網(wǎng)絡(luò)設(shè)計[J].網(wǎng)絡(luò)與通信,2008(2).
[2] 楊林舉.基于DASH7技術(shù)的溫度無線傳感器網(wǎng)絡(luò)設(shè)計[J].自動化與信息工程,2011(4).
[3] 徐治根.基于NRF2401的無線溫度傳感器的設(shè)計[J].科技資訊,2012(9).