基于51單片機(jī)的溫度測量系統(tǒng)仿真_第1頁
基于51單片機(jī)的溫度測量系統(tǒng)仿真_第2頁
基于51單片機(jī)的溫度測量系統(tǒng)仿真_第3頁
基于51單片機(jī)的溫度測量系統(tǒng)仿真_第4頁
基于51單片機(jī)的溫度測量系統(tǒng)仿真_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、基于51單片機(jī)的溫度測量系統(tǒng)仿真專題實驗內(nèi)容與設(shè)計要求主 要 設(shè) 計 條 件1、Proteus或者其它軟件2、實驗室現(xiàn)有軟硬件設(shè)施2、相關(guān)參考文獻(xiàn)報告書格式1.專題實驗設(shè)計報告書封面。2.專題設(shè)計任務(wù)書。3. 報告書目錄。4.正文5.總結(jié)。6.參考文獻(xiàn)。7.附錄。8.專題設(shè)計評分表。正文部分包括(概述、總體設(shè)計、硬件電路設(shè)計及調(diào)試等)進(jìn) 度 安 排第一天:布置課題任務(wù),課題內(nèi)容介紹。第二天第五天:仔細(xì)了解分析實驗任務(wù),明確實驗要求,收集實驗專題設(shè)計資料。閱讀相關(guān)資料,設(shè)計方案確定,相關(guān)元器件選型;進(jìn)行電路和軟件設(shè)計,編寫實驗報告。一溫度測量系統(tǒng)的重要性在現(xiàn)今科技高速發(fā)展的時代,各行各業(yè)對控制和

2、測量的要求越來越高,其中,溫度測量和控制在很多行業(yè)中都有比較重要的應(yīng)用,尤其在工業(yè)上,如煉鋼時對溫度高低的控制。要控制好溫度,測量是前提,測量的精度影響著后續(xù)工序的進(jìn)行,因此溫度測量的方法和選取就顯得相當(dāng)重要了。2 設(shè)計目的與意義隨著電子技術(shù)的高速發(fā)展,對電子方面人才的要求越來越高,不僅要求其具備相關(guān)的專業(yè)理論知識,還要求其具有較強(qiáng)的設(shè)計、制作等實踐動手能力。此次專題實驗無疑是對從事測控專業(yè)的人的一次很好的鍛煉和考驗,是培養(yǎng)測控技術(shù)的人才的一次良好的機(jī)會,為其提供了一個理論知識與實踐相結(jié)合的平臺。通過本次專題實驗,引導(dǎo)學(xué)生結(jié)合所學(xué)的測控電路理論知識,思考設(shè)計方案,以小組合作方式,分工完成各個部

3、分,從而掌握相關(guān)的測量顯示電路的設(shè)計和調(diào)試技術(shù),一方面提高了學(xué)生的實踐動手和協(xié)作能力,另一方面培養(yǎng)了學(xué)生綜合運用所學(xué)理論知識進(jìn)行工程設(shè)計的能力。通過此次專題實驗,可以培養(yǎng)學(xué)生的工程設(shè)計能力,包括動手能力、獨立思考設(shè)計能力、解決實際設(shè)計過程中遇到的問題以及團(tuán)隊協(xié)作能力等,為今后的專業(yè)學(xué)習(xí)和工程實踐打下堅實的基礎(chǔ)。3 實驗方案3.1系統(tǒng)方案3.1.1方案一該方案為ICL7107 A/D轉(zhuǎn)換&譯碼方案。常見A/D轉(zhuǎn)換器的轉(zhuǎn)換方式有非積分式和積分式兩類,如逐次逼近比較式A/D轉(zhuǎn)換、斜坡電壓式A/D轉(zhuǎn)換等屬于非積分式,其特點是轉(zhuǎn)換速度快,但抗干擾能力差。電壓反饋型V-F變換、雙積分式A/D轉(zhuǎn)換則

4、屬于積分式,其特點是抗干擾能力強(qiáng)、測量精度高,但轉(zhuǎn)換速度低,在轉(zhuǎn)換速度要求不太高的情況下,獲得廣泛應(yīng)用。工作方框圖如圖1所示:圖1 方案一工作框圖電路原理圖如圖2所示:圖2 方案一電路原理圖3.1.2方案二該方案利用AVR單片機(jī)對輸入信號進(jìn)行模數(shù)轉(zhuǎn)換輸出數(shù)字信號控制數(shù)碼管顯示溫度值。并且可以通過編寫程序?qū)斎胄盘栠M(jìn)行分段線性化處理,使得測量精度大大提高,而且該電路無須外接譯碼器,結(jié)構(gòu)簡單。工作框圖如圖3所示:圖3 方案二工作框圖3.1.3方案三該方案以AT89S52為控制器,采用DS18B20溫度傳感器檢測溫度信號,利用紅外遙控設(shè)置溫度測量的上下限數(shù)值,并通過LCD液晶顯示。工作框圖如圖4所示

5、:圖4 方案三工作框圖經(jīng)過綜合研究分析,考慮整個設(shè)計和成本,方案三成本低,測量溫度方便簡單,故此次數(shù)字溫度計專題實驗選取方案三。3.2傳感器方案3.2.1方案一該方案采用熱敏電阻。熱敏電阻價格比較便宜、靈敏度比較好,在實際應(yīng)用的時候線性度較差,另外調(diào)試比較困難。不適合使用。故不使用熱敏電阻。3.2.2方案二該方案采用AD590。AD590擁有良好的線性關(guān)系,靈敏度較高、使用簡單方便。但是這種傳感器的價格比其他的兩種都貴很多。故不選用。方案三:DS18B20數(shù)字溫度傳感器DS18B20是美國DALLAS半導(dǎo)體公司智能溫度傳感器,他能夠直接讀出被測溫度并且可根據(jù)實際要求通過簡單的編程實現(xiàn)912位的

6、數(shù)字值讀數(shù)方式從DS18B20讀出的信息或?qū)懭隓S18B20的信息僅需要一根口線(單線接口)讀寫,溫度變換功率來源于數(shù)據(jù)總線,使用DS18B20可使系統(tǒng)結(jié)構(gòu)更趨簡單,可靠性更高。他在測溫精度、轉(zhuǎn)換時間、傳輸距離、分辨率等方面擁有很大優(yōu)勢,給用戶帶來了更方便的使用和更令人滿意的效果。經(jīng)過上述三種方案的論證比較,綜合考慮成本、性能等因素,最終選取方案三。3.3測量顯示方案3.3.1方案一該方案采用LED顯示。LED數(shù)碼顯示中每一個像素單元就是一個發(fā)光二極管,如果是單色,一般是紅色發(fā)光二級管。如果是彩色,一般是三個三原色小二極管組成的一個大二級管。這些二級管組成的矩陣由數(shù)碼控制實時顯示文字或者圖像,

7、造價相對低廉,組成的顯像面積大。3.3.2方案二該方案采用LCD液晶顯示。液晶顯示器是一種被動式的顯示器,即液晶本身并不發(fā)光,而是利用液晶經(jīng)過處理后能改變光線通過方向的特性,而達(dá)到白底黑字或黑底白字顯示的目的。LCD液晶的像素單元是整合在同一塊液晶版當(dāng)中分隔出來的小方格。通過數(shù)碼控制這些極小的方格進(jìn)行顯像。造價高但是顯示非常細(xì)膩。4 系統(tǒng)工作原理本系統(tǒng)由溫度傳感器DS18B20、AT89S52、LCD顯示電路、軟件構(gòu)成。DS18B20輸出表示攝氏溫度的數(shù)字量,然后用51單片機(jī)進(jìn)行數(shù)據(jù)處理、譯碼、顯示、報警等,系統(tǒng)框圖如圖5所示:圖5 系統(tǒng)框圖4.1微控制器原理AT89S52是一個低功耗,高性能

8、CMOS 8位單片機(jī),片內(nèi)含8K Bytes ISP的可反復(fù)擦寫100000次的Flash只讀程序存儲器,器件采用ATMEL公司的高密度、非易失性存儲技術(shù)制造,兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng)及80C51引腳結(jié)構(gòu),芯片內(nèi)集成了通用8位中央處理器和ISP Flash存儲單元,其具有如下特點:40個引腳,8K Bytes Flash片內(nèi)程序存儲器,256 bytes的隨機(jī)存取數(shù)據(jù)存儲器,32個外部雙向輸入/輸出口,5個中斷優(yōu)先級2層中斷嵌套中斷,2個16位可編程定時計數(shù)器,2個全雙工串行通信口,看門狗電路,片內(nèi)時鐘振蕩器。單片機(jī)引腳如圖6所示:圖6 單片機(jī)引腳圖4.2傳感器原理4.2.1DS18B20

9、簡介DS18B20溫度傳感器是美國DALLAS半導(dǎo)體公司最新推出的一種改進(jìn)型智能溫度傳感器,與傳統(tǒng)的熱敏電阻等測溫元件相比,它能直接讀出被測溫度,并且可根據(jù)實際要求通過簡單的編程實現(xiàn)位的數(shù)字值讀數(shù)方式。DS18B20元件圖如圖7所示:DS18B20的性能特點如下:獨特的單線接口僅需要一個端口引腳進(jìn)行通信;多個DS18B20可以并聯(lián)在惟一的三線上,實現(xiàn)多點組網(wǎng)功能;無須外部器件;可通過數(shù)據(jù)線供電,電壓范圍為3.05.5;零待機(jī)功耗;溫度以或位數(shù)字;用戶可定義報警設(shè)置;報警搜索命令識別并標(biāo)志超過程序限定溫度(溫度報警條件)的器件; 圖7 DS18B20元件圖負(fù)電壓特性,電源極性接反時,溫度計不會因

10、發(fā)熱而燒毀,但不能正常工作; 4.2.2DS18B20內(nèi)部結(jié)構(gòu)DS18B20采用腳PR35封裝或腳SOIC封裝,其內(nèi)部結(jié)構(gòu)框圖如圖8所示。C64 位ROM和單線接口高速緩存存儲器與控制邏輯溫度傳感器高溫觸發(fā)器TH低溫觸發(fā)器TL配置寄存器8位CRC發(fā)生器Vdd 圖8 DS18B20內(nèi)部結(jié)構(gòu)圖64位ROM的結(jié)構(gòu)開始位是產(chǎn)品類型的編號,接著是每個器件的惟一的序號,共有48位,最后位是前面56位的CRC檢驗碼,這也是多個DS18B20可以采用一線進(jìn)行通信的原因。溫度報警觸發(fā)器和,可通過軟件寫入戶報警上下限。DS18B20溫度傳感器的內(nèi)部存儲器還包括一個高速暫存RAM和一個非易失性的可電擦除的EERAM

11、。高速暫存RAM的結(jié)構(gòu)為字節(jié)的存儲器,結(jié)構(gòu)如圖9所示。頭個字節(jié)包含測得的溫度信息,第和第字節(jié)和的拷貝,是易失的,每次上電復(fù)位時被刷新。第個字節(jié),為配置寄存器,它的內(nèi)容用于確定溫度值的數(shù)字轉(zhuǎn)換分辨率。DS18B20工作時寄存器中的分辨率轉(zhuǎn)換為相應(yīng)精度的溫度數(shù)值。該字節(jié)各位的定義如圖3所示。低位一直為,是工作模式位,用于設(shè)置DS18B20在工作模式還是在測試模式,DS18B20出廠時該位被設(shè)置為,用戶要去改動,R1和0決定溫度轉(zhuǎn)換的精度位數(shù),來設(shè)置分辨率。溫度 LSB溫度 MSBTH用戶字節(jié)1TL用戶字節(jié)2配置寄存器保留保留保留CRC圖9 DS18B20字定義由表1可見,DS18B20溫度轉(zhuǎn)換的時

12、間比較長,而且分辨率越高,所需要的溫度數(shù)據(jù)轉(zhuǎn)換時間越長。因此,在實際應(yīng)用中要將分辨率和轉(zhuǎn)換時間權(quán)衡考慮。表1 DS18B20溫度轉(zhuǎn)換時間表高速暫存的第、字節(jié)保留未用,表現(xiàn)為全邏輯。第字節(jié)讀出前面所有字節(jié)的CRC碼,可用來檢驗數(shù)據(jù),從而保證通信數(shù)據(jù)的正確性。當(dāng)DS18B20接收到溫度轉(zhuǎn)換命令后,開始啟動轉(zhuǎn)換。轉(zhuǎn)換完成后的溫度值就以16位帶符號擴(kuò)展的二進(jìn)制補(bǔ)碼形式存儲在高速暫存存儲器的第、字節(jié)。單片機(jī)可以通過單線接口讀出該數(shù)據(jù),讀數(shù)據(jù)時低位在先,高位在后,數(shù)據(jù)格式以0.0625LSB形式表示。當(dāng)符號位時,表示測得的溫度值為正值,可以直接將二進(jìn)制位轉(zhuǎn)換為十進(jìn)制;當(dāng)符號位時,表示測得的溫度值為負(fù)值,要

13、先將補(bǔ)碼變成原碼,再計算十進(jìn)制數(shù)值。表2是一部分溫度值對應(yīng)的二進(jìn)制溫度數(shù)據(jù)。溫度/二進(jìn)制表示十六進(jìn)制表示+1250000 0111 1101 000007D0H+850000 0101 0101 00000550H+25.06250000 0001 1001 00000191H+10.1250000 0000 1010 000100A2H+0.50000 0000 0000 00100008H00000 0000 0000 10000000H-0.51111 1111 1111 0000FFF8H-10.1251111 1111 0101 1110FF5EH-25.06251111 1110

14、0110 1111FE6FH-551111 1100 1001 0000FC90H表2一部分溫度對應(yīng)值表 DS18B20完成溫度轉(zhuǎn)換后,就把測得的溫度值與RAM中的TH、T字節(jié)內(nèi)容作比較。若TH或TTL,則將該器件內(nèi)的報警標(biāo)志位置位,并對主機(jī)發(fā)出的報警搜索命令作出響應(yīng)。因此,可用多只DS18B20同時測量溫度并進(jìn)行報警搜索。在64位ROM的最高有效字節(jié)中存儲有循環(huán)冗余檢驗碼(CRC)。主機(jī)ROM的前56位來計算CRC值,并和存入DS18B20的CRC值作比較,以判斷主機(jī)收到的ROM數(shù)據(jù)是否正確。DS18B20的測溫原理是這這樣的,器件中低溫度系數(shù)晶振的振蕩頻率受溫度的影響很小,用于產(chǎn)生固定頻率

15、的脈沖信號送給減法計數(shù)器;高溫度系數(shù)晶振隨溫度變化其振蕩頻率明顯改變,所產(chǎn)生的信號作為減法計數(shù)器的脈沖輸入。器件中還有一個計數(shù)門,當(dāng)計數(shù)門打開時,DS18B20就對低溫度系數(shù)振蕩器產(chǎn)生的時鐘脈沖進(jìn)行計數(shù)進(jìn)而完成溫度測量。計數(shù)門的開啟時間由高溫度系數(shù)振蕩器來決定,每次測量前,首先將55所對應(yīng)的一個基數(shù)分別置入減法計數(shù)器、溫度寄存器中,計數(shù)器和溫度寄存器被預(yù)置在55所對應(yīng)的一個基數(shù)值。減法計數(shù)器對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進(jìn)行減法計數(shù),當(dāng)減法計數(shù)器的預(yù)置值減到時,溫度寄存器的值將加,減法計數(shù)器的預(yù)置將重新被裝入,減法計數(shù)器重新開始對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進(jìn)行計數(shù),如此循環(huán)直到減法計數(shù)器計數(shù)

16、到時,停止溫度寄存器的累加,此時溫度寄存器中的數(shù)值就是所測溫度值。其輸出用于修正減法計數(shù)器的預(yù)置值,只要計數(shù)器門仍未關(guān)閉就重復(fù)上述過程,直到溫度寄存器值大致被測溫度值。 另外,由于DS18B20單線通信功能是分時完成的,它有嚴(yán)格的時隙概念,因此讀寫時序很重要。系統(tǒng)對DS18B20的各種操作按協(xié)議進(jìn)行。操作協(xié)議為:初使化DS18B20(發(fā)復(fù)位脈沖)發(fā)ROM功能命令發(fā)存儲器操作命令處理數(shù)據(jù)。4.2.3DS18B20測溫原理DS18B20低溫度系數(shù)晶振的振蕩頻率受溫度的影響很小,用于產(chǎn)生固定頻率的脈沖信號送給減法計數(shù)器1,高溫度系數(shù)晶振隨溫度變化其震蕩頻率明顯改變,所產(chǎn)生的信號作為減法計數(shù)器2的脈沖

17、輸入。當(dāng)計數(shù)門打開時,DS18B20就對低溫度系數(shù)振蕩器產(chǎn)生的時鐘脈沖后進(jìn)行計數(shù),進(jìn)而完成溫度測量。計數(shù)門的開啟時間由高溫度系數(shù)振蕩器來決定,每次測量前,首先將-55 所對應(yīng)的基數(shù)分別置入減法計數(shù)器1和溫度寄存器中,減法計數(shù)器1和溫度寄存器被預(yù)置在-55 所對應(yīng)的一個基數(shù)值。減法計數(shù)器1對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進(jìn)行減法計數(shù),當(dāng)減法計數(shù)器1的預(yù)置值減到0時溫度寄存器的值將加1,減法計數(shù)器1的預(yù)置將重新被裝入,減法計數(shù)器1重新開始對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進(jìn)行計數(shù),如此循環(huán)直到減法計數(shù)器2計數(shù)到0時,停止溫度寄存器值的累加,此時溫度寄存器中的數(shù)值即為所測溫度。此外,用斜率累加器補(bǔ)償和修正

18、測溫過程中的非線性,其輸出用于修正減法計數(shù)器的預(yù)置值,只要計數(shù)門仍未關(guān)閉就重復(fù)上述過程,直至溫度寄存器值達(dá)到被測溫度值,4.3溫度數(shù)值分析利用的單片機(jī)的一個IO口,讀取DS18B20的溫度高位,溫度低位。由上面的分析可知:溫度高位的高5位的符號位、低3位是整數(shù)部分的高四位(整數(shù)部分的最高位永遠(yuǎn)為0),溫度低溫的高四位為整數(shù)部分的低四位,溫度地位的低四位是小數(shù)部分用以下公式計算: 整數(shù)部分溫度低位/16溫度高位×16 小數(shù)部分十分位(溫度低位&0x0f)×10/16由于DS18B30的集成度很高,使得設(shè)計的原理還是比較簡單,設(shè)計的關(guān)鍵是了解DS18B20的時序,準(zhǔn)確地

19、獲得溫度高位和溫度低位。5 電路仿真與軟件調(diào)試5.1硬件系統(tǒng)設(shè)計仿真本次設(shè)計應(yīng)用Proteus 繪制電路原理圖,寫出相應(yīng)的用程序調(diào)試系統(tǒng)功能,并且進(jìn)行仿真。硬件電路主要由單片機(jī)最小系統(tǒng)、DS18B20為核心的傳感器電路、液晶顯示電路、報警電路、紅外遙控電路和供電電路組成。單片機(jī)最小系統(tǒng):提供一個上電復(fù)位高電平,和12MHZ時鐘振蕩。DS18B20傳感器電路:加電即可工作,DATA端加4.7K電阻作上拉電阻保證有足夠大的灌拉電流。液晶顯示電路:報警電路:利用5V蜂鳴器作報警提示。供電電路:利用7805組成線性穩(wěn)壓電源為整個系統(tǒng)供電。具體電路連接見附錄SCH電路原理圖,硬件接線正確,單片機(jī)能構(gòu)正常

20、工作,硬件和系統(tǒng)仿真試功。5.2軟件調(diào)試和仿真用Proteus進(jìn)行仿真,調(diào)試程序。測溫精度取到小數(shù)點后三位。5.2.1主程序流程主程序說明:小于10度,亮黃色LED,表示較涼,開蜂鳴器; 大于24度,亮綠色LED,表示溫度較熱,開蜂鳴器; 主程序流程圖如圖10所示: 開始溫度讀取數(shù)值送顯示判定按鍵攝氏變?nèi)A氏< 10度開黃燈報警> 24度遙控信號初始化開綠燈報警改變上下限溫度是否是是否否圖10 主程序流程圖 5.2.2子程序流程DS18B20工作流程圖如圖11所示;計算溫度流程圖如圖12、圖13所示;溫度讀取流程圖如圖14所示。Y發(fā)DS18B20復(fù)位命令發(fā)跳過ROM命令發(fā)讀取溫度命令

21、讀取操作,CRC校驗9字節(jié)完?CRC校驗正?確?移入溫度暫存器結(jié)束NNY初始化調(diào)用顯示子程序0.5 S到?初次上電讀出溫度值溫度計算處理顯示數(shù)據(jù)刷新發(fā)溫度轉(zhuǎn)換開始命令NYNY圖11 DS18B20工作流程圖 開始溫度零下?溫度值取補(bǔ)碼置“”標(biāo)志計算小數(shù)位溫度BCD值 計算整數(shù)位溫度BCD值 結(jié)束置“+”標(biāo)志NY 圖12 計算溫度流程圖溫度數(shù)據(jù)移入顯示寄存器十位數(shù)0?百位數(shù)0?十位數(shù)顯示符號百位數(shù)不顯示百位數(shù)顯示數(shù)據(jù)(不顯示符號) 結(jié)束NNYY圖13 顯示數(shù)據(jù)刷新流程圖圖14 溫度讀取流程圖溫度讀取程序開始復(fù)位DS18B20,等待大于480us發(fā)送避開ROM信息指令發(fā)送轉(zhuǎn)換命令,開始轉(zhuǎn)換延時等待轉(zhuǎn)換完成發(fā)送讀取指令開始

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論