【摘要】溫度對于發(fā)射臺機房來說,至關(guān)重要;下面簡單介紹一種對機房內(nèi)的溫度進(jìn)行采集并無線傳輸?shù)南到y(tǒng),本系統(tǒng)最大的特點就是信息的無線傳輸,省去了傳統(tǒng)有線傳輸?shù)氖`,簡化了系統(tǒng)的安裝。選擇合適的無線模塊直接關(guān)系到信號傳輸?shù)挠行约跋到y(tǒng)的可靠性。本課題設(shè)計的是一套無線多溫度數(shù)據(jù)采集系統(tǒng),主要用于對環(huán)境溫度的采集與監(jiān)控,系統(tǒng)采用基于無線網(wǎng)絡(luò)的設(shè)計思想和溫度采集技術(shù)。無線傳輸避免了遠(yuǎn)距離布線所帶來的施工困難,成本高的缺點。本設(shè)計用AT89C52單片機和無線收發(fā)射模塊NRF24L01為主要硬件,設(shè)計了包括溫度采集,溫度顯示,系統(tǒng)控制,串口通信等外圍電路。溫度傳感器使用DS18B20,它實現(xiàn)對溫度的實時監(jiān)控并傳輸數(shù)據(jù)給單片機,溫度上下限通過程序進(jìn)行設(shè)置。本設(shè)計是以Atmel公司的AT89C52單片機作為控制核心,提出以DS18B20的單總線分布式溫度采集與控制系統(tǒng),溫度傳感節(jié)點通過單總線與單片機相連??刂破魍ㄟ^溫度傳感器實時檢測節(jié)點的溫度變化,并在LCD1602上循環(huán)顯示節(jié)點溫度的變化。通過串口將檢測到的溫度信息回饋到上位機(PC機),從而遠(yuǎn)程實現(xiàn)對整個系統(tǒng)的檢測。
【關(guān)鍵詞】溫度傳感器;顯示程序設(shè)計;無線收發(fā)模塊
無線溫度采集系統(tǒng)可被廣泛應(yīng)用于溫度測量或相應(yīng)的可轉(zhuǎn)換為溫度量或供電故障監(jiān)控的工業(yè)、農(nóng)業(yè)、環(huán)保、服務(wù)業(yè)、安全監(jiān)控等工程中,例如:城市路燈故障檢測和供電線路防盜監(jiān)視、城市居民小區(qū)供熱檢測、大型倉庫溫度檢測、工業(yè)生產(chǎn)測控、農(nóng)業(yè)生產(chǎn)溫度測控、環(huán)保工程、故障監(jiān)控工程等。設(shè)計目標(biāo):
(1)能通過DS18B20實現(xiàn)對當(dāng)前環(huán)境溫度的檢測實時傳送給LCD1602循環(huán)顯示;
(2)設(shè)置高溫上限和低溫下限,當(dāng)前溫度超過高溫上限,警報器響、直流電機轉(zhuǎn)動,低于溫度下限,led燈亮,溫度恢復(fù)正常范圍,現(xiàn)象消除;
(3)通過無線模塊NRF24L01傳送當(dāng)前溫度值給接收單片機,通過LCD1602顯示并通過串口傳送給上位機(PC),以實現(xiàn)實時監(jiān)測。
在本設(shè)計中主要模塊是溫度傳感器,顯示模塊以及無線傳輸模塊,所以選擇好這三個模塊是做好本設(shè)計的前提條件。
1.溫度傳感器模塊的選擇與論證
作為測量數(shù)據(jù)的直接來源,溫度傳感器的測量精度和工作穩(wěn)定性直接影響到后續(xù)電路工作的精確性,可以說溫度傳感器是本設(shè)計的重中之重。整個系統(tǒng)的測量算法,無線數(shù)據(jù)傳輸協(xié)議都與溫度傳感器息息相關(guān),選擇合理的溫度傳感器將是本設(shè)計成功與否的關(guān)鍵。
方案一:
采用熱敏電阻,可滿足40攝氏度至90攝氏度測量范圍,但熱敏電阻精度、重復(fù)性、可靠性較差,對于檢測1攝氏度的信號是不適用的。
方案二:
采用單片模擬量的溫度傳感器,比如AD590,LM35等。但這些芯片輸出的都是模擬信號,必須經(jīng)過A/D轉(zhuǎn)換后才能送給計算機,這樣就使得測溫裝置的結(jié)構(gòu)復(fù)雜化。
方案三:
采用數(shù)字溫度傳感器DS18B20測量溫度,輸出信號全數(shù)字化。便于單片機處理及控制,省去傳統(tǒng)的測溫方法的很多外圍電路。且該芯片的物理化學(xué)性很穩(wěn)定,它能用做工業(yè)測溫元件,此元件線性度較好。在0~100攝氏度時,最大線形偏差小于1攝氏度。DS18B20的最大特點之一采用了單總線的數(shù)據(jù)傳輸,由數(shù)字溫度計DS18B20和微控制器AT89C52構(gòu)成的溫度測量裝置,它直接輸出溫度的數(shù)字信號,可直接與計算機連接。這樣,測溫系統(tǒng)的結(jié)構(gòu)就比較簡單。
采用溫度芯片DS18B20測量溫度,可以體現(xiàn)系統(tǒng)芯片化這個趨勢,部分功能電路的集成,使總體電路更簡潔,搭建電路和焊接電路時更快。而且,集成塊的使用,有效地避免外界的干擾,提高測量電路的精確度,所以集成芯片的使用將成為電路發(fā)展的一種趨勢。本方案應(yīng)用這一溫度芯片,也是順應(yīng)這一趨勢。
方案對比及選擇結(jié)果:方案一的設(shè)計成本低,但是其測量精度不夠,方案二電路設(shè)計復(fù)雜,而方案三只需要一根傳輸線,大大簡化了設(shè)計復(fù)雜度。所以本設(shè)計的溫度傳感器設(shè)計方案采用方案三。
1.1 顯示模塊的選擇與論證
作為人機界面的一部分,顯示模塊主要功能是對測量得到的數(shù)據(jù)進(jìn)行顯示。顯示模塊的顯示能力也影響到溫度測量的精度。
方案一:
使用發(fā)光二極管顯示器(簡稱LED),它配置靈活,使用方便,價格低廉,但顯示內(nèi)容有限,線路連接復(fù)雜,要有驅(qū)動電路。不但顯示內(nèi)容單一,而且使用功耗高。
方案二:
使用液晶顯示器(LCD),它的功耗低,體積小,美觀,方便,使用壽命長,且能顯示圖形、字母等,接口簡單,可以直接與單片機進(jìn)行連接,但成本較高,占用系統(tǒng)資源較大。LCD1602液晶原理圖如圖1所示。
圖1 液晶顯示模塊
1602液晶模塊內(nèi)部的字符發(fā)生存儲器已經(jīng)存儲了160個不同的點陣字符圖形,這些字符有:阿拉伯?dāng)?shù)字、英文字母的大小寫、常用的符號等,每一個字符都有一個固定的代碼,比如大寫的英文字母“A”的代碼是01000001B(41H),顯示時模塊把地址41H中的點陣字符圖形顯示出來,我們就能看到字母“A”。
因為1602識別的是ASCII碼,可以用ASCII碼直接賦值,在單片機編程中還可以用字符型常量或變量賦值,如“A”。
方案對比及選擇結(jié)果:方案二雖然編程復(fù)雜些,但是顯示精度高可以達(dá)到0.0625度,且本設(shè)計顯示信息較多,方案一顯示簡單,不能滿足設(shè)計要求,所以本設(shè)計采用方案二。
1.2 無線通信模塊的選擇與論證
本系統(tǒng)最大的特點就是信息的無線傳輸,省去了傳統(tǒng)有線傳輸?shù)氖`,簡化了系統(tǒng)的安裝。選擇合適的無線模塊直接關(guān)系到信號傳輸?shù)挠行约跋到y(tǒng)的可靠性。
方案一:
PTR2000是基于nRF401器件的無線數(shù)據(jù)傳輸模塊,采用低發(fā)射頻率、高靈敏度設(shè)計。該器件使用433 MHz頻段,是真正的單片UHF無線收發(fā)一體器件,其工作模式包括工作頻道的設(shè)置和發(fā)送、接收、待機狀態(tài),由TXEN、CS、PWM 3個引腳共同決定,其工作模式設(shè)置如表1所示。
表1 PTR2000工作模式設(shè)置
PTR2000利用串口進(jìn)行數(shù)據(jù)傳輸,而單片機和PC機均帶有串口,因此,可利用PTR2000作為單片機和PC機之間數(shù)據(jù)傳輸?shù)臒o線接口。
方案二:
NRF24L01是一款工作在2.4-2.5GHZ世界通用ISM頻段的單片無線收發(fā)器芯片。無線收發(fā)器包括:頻率發(fā)生器、增強型SchockBurstTM模式控制器、功率放大器、晶體振蕩器、調(diào)制器、解調(diào)器。輸出功率、頻道選擇和協(xié)議的設(shè)置可以通過SPI接口進(jìn)行設(shè)置。
極低的電流消耗:當(dāng)工作在發(fā)射模式下發(fā)射功率為-6dBm是電流消耗為9mA,接收模式時為12.3mA。掉電模式和待機模式下電流消耗更低。表2所示為NRF24L01快速參考參數(shù)。
表2 NRF24LO1快速參考參數(shù)
方案對比及結(jié)果選擇:PTR2000控制簡單,利用串口進(jìn)行數(shù)據(jù)傳輸,NRF24L01控制復(fù)雜,需要自己焊接電源電路,但是PTR2000成本太高,故本設(shè)計選擇方案二。
2.溫度傳感器DS18B20程序設(shè)計
DS18B20采用單總線的通信方式,硬件結(jié)構(gòu)十分簡單,但是相應(yīng)的它的軟件開發(fā)部分就十分繁瑣,想讓其正常工作,必須要嚴(yán)格按照其時序圖來編寫程序。圖2所示為DS18B20的復(fù)位時序圖:
圖2 DS18B20的復(fù)位時序
圖3所示為DS18B20的讀寫時序:
圖3 DS18B20的讀寫時序
圖4所示為DS18B20程序流程圖:
圖4 DS18B20程序流程圖
3.LCD1602顯示程序設(shè)計
LCD1602的控制命令較多,要想使其正確的顯示,就要對它的讀寫時序詳細(xì)分析,按照其讀寫時序來進(jìn)行讀寫。在本設(shè)計中,我們只需要對LCD1602進(jìn)行寫操作,使其顯示我們設(shè)定的內(nèi)容,所以我們暫時不考慮它的讀操作。圖5所示為LCD1602寫操作時序及參考時間:
圖5 LCD1602寫操作時序及參考時間
4.無線收發(fā)模塊NRF24L01程序設(shè)計
無線傳輸模塊NRF24L01控制指令沒有LCD1602多,但是它與單片機通信采用的是SPI總線方式,但是本設(shè)計中的單片機沒有SPI總線,所以要用通用I/O端口來模擬SPI總線時序,操作時序及參考時間如圖6-9所示:
圖6 SPI讀操作
圖7 SPI寫操作
圖8 操作時序圖
圖9 SPI參考時間
圖10所示為NRF24L01發(fā)送與接收程序流程圖。
5.系統(tǒng)調(diào)試與性能測試
5.1 測試環(huán)境及工具
測試溫度:0~100攝氏度。
測試儀器及軟件:數(shù)字萬用表,溫度計0~100攝氏度,串口調(diào)試助手,protues仿真軟件。
測試方法:目測。
5.2 系統(tǒng)硬件調(diào)試
使系統(tǒng)運行,觀察系統(tǒng)硬件電路是否正常工作(包括單片機系統(tǒng),鍵盤電路,顯示電路,溫度測試電路,喇叭及直流電機電路,無線模塊電路等)。
采用溫度傳感器和溫度計同時測量溫度變化情況,目測顯示電路是否正常。并記錄各點溫度值,與實際溫度值比較,得出系統(tǒng)的溫度指標(biāo)。
5.3 系統(tǒng)軟件調(diào)試
在keil51 uvison4中進(jìn)行編譯,如沒有錯誤,下載到單片機中觀察現(xiàn)象,如沒有和設(shè)想的現(xiàn)象一致,通過硬件的現(xiàn)象來分析具體出錯的原因,返回keil51中繼續(xù)調(diào)試,直至成功,還可以在protues中進(jìn)行仿真,直觀的觀看結(jié)果。
5.4 系統(tǒng)性能測試
通過DS18B20測試當(dāng)前的溫度,能通過LCD1602顯示電路實時顯示;
可以通過鍵盤來設(shè)置高溫上限和低溫下限,超過高溫上限后喇叭以兩種頻率發(fā)聲,同時直流電機轉(zhuǎn)動,低于低溫下限后,led燈亮(模擬加熱),溫度恢復(fù)正常范圍后,現(xiàn)象消除;能通過無線模塊NRF24L01進(jìn)行數(shù)據(jù)傳輸與接收,能在LCD1602顯示電路中顯示,并能通過串口傳送溫度數(shù)據(jù)給上位機(PC)。
參考文獻(xiàn)
[1]林伸茂.8051單片機徹底研究基礎(chǔ)篇[M].北京:北京人民郵電出版社,2004.
[2]孫涵芳.MCS-51系列單片機原理及應(yīng)用[M].北京:北京航空航天大學(xué)出版社,1996.
[3]饒慶和.MCS-51單片機實用技術(shù)[M].北京:電子工業(yè)出版社,2003.
[4]姜大源.單片機技術(shù)[M].北京:高等教育出版社,2005.
[5]劉娟.單片機C語言與PROTUES仿真技能實訓(xùn)[M].北京:中國電力出版社,2010.
作者簡介:魏志東(1979—),男,山東臨沂人,工程師,現(xiàn)供職于山東省新聞出版廣電局大澤山轉(zhuǎn)播臺,從事廣播電視發(fā)射轉(zhuǎn)播方面的工作。