




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、私立華聯學院畢業設計題目:單片機靈能溫度報警系統學院:電子信息工程系專業:電子信息工程技術班 級: 08電子1班姓 名:梁旭學號:0301080135摘要:介紹了單總線數字溫度傳感器DSI8B20模塊的特性,利用DS18B20設計了一種基于STC89C52單片機的智能溫度報警系統。該智能溫度報警系統以STC公司生產的STC89C52為把握器,結構簡潔、測溫精確。軟件使用模塊化結構并對溫度進行刷新顯示和報警處理。Abstract: The single-bus digital temperature sensor DSI8B20 module features, the use of DS18B
2、20 designed based on STC89C52 of Intelligent temperature alarm system. The intelligent temperature alarm system to STC produced STC89C52 the controller structure is simple, accurate temperature measurement. Software uses a modular structure. Refresh and temperature display and alarm processing.一、 引言
3、在工業生產中,溫度的把握尤其重要,因而對溫度報警系統的需求也越來越大。如何設計一款成本低廉、測量精確、操作簡潔的智能溫度報警系統成為一個重要問題。在本次設計中,整個系統以SCT98C52為核心。溫度傳感器DS18B20完成環境溫度轉換功能。其輸出為數字形式,可以直接給單片機進行處理;鍵盤為簡潔的三鍵把握,處理方式接受中斷方式,削減了占用CPU時間。這種設計的成本較小,結構簡潔、操作便利,并且測量也很精確,能夠滿足工業生產的需要 溫度把握,在工業自動化把握中占有格外重要的地位。單片機系統的開發應用給現代工業測控領域帶來了一次新的技術革命,自動化、智能化均離不開單片機的應用。將單片機把握方法運用到
4、溫度把握系統中,可以克服溫度把握系統中存在的嚴峻滯后現象,同時在提高采樣頻率的基礎上可以很大程度的提高把握效果和把握精度?,F代自動把握越來越朝著智能化進展,在很多自動把握系統中都用到了工控機,小型機、甚至是巨型機處理機等,當然這些處理機有一個很大的特點,那就是很高的運行速度,很大的內存,大量的數據存儲器。但隨之而來的是巨額的成本。在很多的小型系統中,處理機的成本占系統成本的比例高達20%,而對于這些小型的系統來說,配置一個如此高速的處理機沒有任何必要,由于這些小系統追求經濟效益,而不是最在乎系統的快速性,所以用成本低廉的單片機把握小型的,而又不是很簡單,不需要大量簡單運算的系統中是格外適合的。
5、 溫度把握,在工業自動化把握中占有格外重要的地位,如在鋼鐵冶煉過程中要對出爐的鋼鐵進行熱處理,才能達到性能指標,塑料的定型過程中也要保持肯定的溫度。隨著科學技術的迅猛進展,各個領域對自動把握系統把握精度、響應速度、系統穩定性與自適應力量的要求越來越高,被控對象或過程的非線性、時變性、多參數點的猛烈耦合、較大的隨機擾動、各種不確定性以及現場測試手段不完善等,使難以按數學方法建立被控對象的精確模型的狀況。 隨著電子技術以及應用需求的進展,單片機技術得到了快速的進展,在高集成度,高速度,低功耗以及高性能方面取得了很大的進展。伴隨著科學技術的進展,電子技術有了更高的飛躍,我們現在完全可以運用單片機和電
6、子溫度傳感器對某處進行溫度檢測,而且我們可以很簡潔地做到多點的溫度檢測,假如對此原理圖稍加改進,我們還可以進行不同地點的實時溫度檢測和把握。二、設計目的學習了單片機課程之后,為了加深對理論學問的理解,學習理論學問在實際中的運用,加深自己的動手力量,我通過查找資料,應用STC89C52單片機和DS18B20溫度芯片制作了一個智能溫度報警系統。提高對單片機的生疏,提高焊接力量。三、使用中心單元處理器介紹1、主控芯片STC89C52 STC89C52 是一種帶8K 字節閃爍可編程可擦除只讀存儲器(FPEROMFalsh Programmable and Eras-able Read Only Mem
7、ory)的低電壓,高性能CMOS8位微處理器,俗稱單片機。單片機的可擦除只讀存儲器可以反復擦除1000 次。該器件接受STC高密度非易失存儲器制造技術制造,與工業標準的MCS-51 指令集和輸出管腳相兼容。由于將多功能8 位CPU 和閃爍存儲器組合在單個芯片中,STC的STC89C52是一種高效微把握器。STC89 單片機為嵌入式把握系統供應了一種機敏性高且價廉的方案。2 、DS18B20數字溫度傳感器DSI8B20 是DALLAS 公司的最新單線數字溫度傳感器,它體積小、經濟。是世界上第一片支持“一線總線”接口的溫度傳感器。一線總線獨特而且經濟的特點,使用戶可輕松地組建傳感器網絡,為測量系統
8、的構建引入全新概念。它的測量溫度范圍為一55 +125?,F場溫度直接以“一線總線”的數字方式傳輸,大大提高了系統的抗干擾性。適合于惡劣環境的現場溫度測量,如環境把握、設備或過程把握、測溫類消費電子產品等。與前一代產品不同,新的產品支持355 V的電壓范圍,使系統設計更機敏、便利。而且新一代產品更廉價,體積更小。DSI8B20 可以程序設定912 位的辨別率,精度為±05??梢赃x擇更小的封裝方式,更寬的電壓適用范圍。辨別率設定及用戶設定的報警溫度存儲在EPROM 中,掉電后照舊保存。DS18B20 的性能是新一代產品中最好的,性能價格比也格外精彩,繼“一線總線”的早期產品后, DSI8
9、B20開拓了溫度傳感器技術的新概念。DS18B20 和DS18B22 使電壓特性及封裝有更多的選擇,讓用戶可以構建適合自己的經濟的測溫系統。S18B20 內部結構主要由4 部分組成:64 位光刻ROM, 溫度傳感器、非揮發的溫度報警觸發器TH 和2TL,配置寄存器。 DSI8B20的管腳排列如圖2所示。本次設計智能溫度報警系統的溫度采集就由DSI8B20 完成。將DSI8B20 的GND 腳接地,VDD 腳接高電平,而單總線DQ 腳接單片機的外部中斷1 腳,具體的采集電路DSI8B20的管腳排列圖2但在系統調試時也消滅了很多問題。第一個問題是溫度輸出總是85。后來經過反復試驗才發覺DSI8B2
10、0從測溫結束到將溫度值轉換為數字量需要肯定的轉換時間。這是必需保證的,不然會消滅轉換錯誤的現象。其次個問題是在實際使用中發覺的,就是要使電源電壓保持在5V左右,若電源電壓過低,會使所測得的溫度與實際溫度消滅偏高現象。四、系統軟件設計本設計智能溫度報警系統由溫度采集、信號處理、溫度監測、輸出把握四部分組成。其系統框圖如圖7所示,它通過預先設在單片機中的凹凸溫度值來對格外溫度值進行報警,從DSI8B20 采集到的溫度經信號調理電路處理后直接送入單片機進行刷新。微把握器依據信號數據及設定的各種把握參數,依據嵌入的軟件把握規律執行計算與處理,自動顯示溫度值、輸出相應的把握信號,并依據當前狀態輸出正常、
11、報警等信號,同時將各種數據通過數碼管進行顯示監控。系統的軟件設計流程圖如圖6 所示。圖6 軟件設計流程圖1.1、方案一由于本設計是測溫電路,可以使用熱敏電阻之類的器件利用其感溫效應,在將隨被測溫度變化的電壓或電流采集過來,進行A/D轉換后,就可以用單片機進行數據的處理,在顯示電路上,就可以將被測溫度顯示出來,這種設計需要用到A/D轉換電路,其中還涉及到電阻與溫度的對應值的計算,感溫電路比較麻煩。而且在對采集的信號進行放大時簡潔受溫度的影響消滅較大的偏差。1.2、方案二 進而考慮到用溫度傳感器,在單片機電路設計中,大多都是使用傳感器,所以這是格外簡潔想到的,所以可以接受一只溫度傳感器DS18B2
12、0,此傳感器,可以很簡潔直接讀取被測溫度值,進行轉換,電路簡潔,精度高,軟硬件都以實現,而且使用單片機的接口便于系統的再擴展,滿足設計要求。從以上兩種方案,很簡潔看出,接受方案二,電路比較簡潔,費用較低,牢靠性高,軟件設計也比較簡潔,故接受了方案二。2.1系統總體設計溫度計電路設計總體設計方框圖如圖1所示,把握器接受單片機STC89C52,溫度傳感器接受DS18B20,用4位LED數碼管以串口傳送數據實現溫度顯示。 STC89C52LED顯示DS18B20溫 度 傳 感 器單片機復位時鐘振蕩報警溫度調整鍵蜂鳴器,指示燈圖2.11總體設計方框圖圖2.12系統仿真圖2.2系統模塊系統由單片機最小系
13、統、顯示電路、按鍵、溫度傳感器等組成。2.2.1 主把握器單片機STC89S51具有低電壓供電和體積小等特點,四個端口只需要兩個口就能滿足電路系統的設計需要,很適合便攜手持式產品的設計使用系統可用電池供電。晶振接受12MHZ。復位電路接受上電加按鈕復位。圖2.3.11晶振電路圖2.2.12復位電路2.2.2 顯示電路顯示電路接受4位共陰極LED數碼管,P0口由上拉電阻提高驅動力量,作為段碼輸出并作為數碼管的驅動。P2口的低四位作為數碼管的位選端。接受動態掃描的方式顯示。圖2.3.2 數碼管顯示電路2.2.3溫度傳感器DS18B20溫度傳感器是美國DALLAS半導體公司最新推出的一種改進型智能溫
14、度傳感器,與傳統的熱敏電阻等測溫元件相比,它能直接讀出被測溫度,并且可依據實際要求通過簡潔的編程實現位的數字值讀數方式。DS18B20的性能特點如下:1、獨特的單線接口僅需要一個端口引腳進行通信;2、多個DS18B20可以并聯在惟一的三線上,實現多點組網功能3、無須外部器件;4、可通過數據線供電,電壓范圍為3.05.5;5、零待機功耗;6、溫度以或位數字;7、用戶可定義報警設置;8、報警搜尋命令識別并標志超過程序限定溫度(溫度報警條件)的器件;9、負電壓特性,電源極性接反時,溫度計不會因發熱而燒毀,但不能正常工作;DS18B20可以接受兩種方式供電,一種是接受電源供電方式,此時DS18B20的
15、1腳接地,2腳作為信號線,3腳接電源。另一種是寄生電源供電方式,如圖4 所示單片機端口接單線總線,為保證在有效的DS18B20時鐘周期內供應足夠的電流,可用一個MOSFET管來完成對總線的上拉。當DS18B20處于寫存儲器操作和溫度A/D轉換操作時,總線上必需有強的上拉,上拉開啟時間最大為10us。接受寄生電源供電方式時VDD端接地。由于單線制只有一根線,因此發送接口必需是三態的。圖2.2.3 溫度傳感器與單片機的連接2.2.4報警溫度調整按鍵本系統設計三個按鍵,接受查詢方式,一個用于選擇切換設置報警溫度和當前溫度,另外兩個分別用于設置報警溫度的加和減。均接受軟件消抖。圖2.3.4 按鍵電路3
16、系統軟件算法分析系統程序主要包括主程序,讀出溫度子程序,溫度轉換命令子程序,計算溫度子程序,顯示數據刷新子程序,按鍵掃描處理子程序等。3.1主程序流程圖主程序的主要功能是負責溫度的實時顯示、讀出并處理DS18B20的測量的當前溫度值,溫度測量每1s進行一次。這樣可以在一秒之內測量一次被測溫度,其程序流程見圖3.1所示。初始化讀取溫度設置鍵是否按下讀出溫度值溫度計算處理顯示數據刷新發溫度轉換開頭命令NY調用顯示子程序設置報警溫度圖3.1 主程序流程圖 3.2讀出溫度子程序讀出溫度子程序的主要功能是讀出RAM中的9字節,在讀出時需進行CRC校驗,校驗有錯時不進行溫度數據的改寫。其程序流程圖如圖3.
17、2示3.3溫度轉換命令子程序發DS18B20復位命令發跳過ROM命令發溫度轉換開頭命令 結束溫度轉換命令子程序主要是發溫度轉換開頭命令,當接受12位辨別率時轉換時間約為750ms,在本程序設計中接受1s顯示程序延時法等待轉換的完成。溫度轉換命令子程序流程圖如上圖,圖3.3所示Y發DS18B20復位命令發跳過ROM命令發讀取溫度命令讀取操作,CRC校驗9字節完?CRC校驗正?確?移入溫度暫存器結束NNY 圖3.3 溫度轉換流程圖圖3.2 讀溫度流程圖3.4 計算溫度子程序計算溫度子程序將RAM中讀取值進行BCD碼的轉換運算,并進行溫度值正負的判定,其程序流程圖如圖3.4所示。3.5 顯示數據刷新
18、子程序顯示數據刷新子程序主要是對分別后的溫度顯示數據進行刷新操作,當標志位位為1時將符號顯示位移入第一位。程序流程圖如圖3.5。 開頭溫度零下?溫度值取補碼置“1”標志計算小數位溫度BCD值 計算整數位溫度BCD值 結束置“0”標志NY溫度數據移入顯示寄存器分別顯示溫度NY標志位為1?Y最高位顯示“”最高為顯示分理出的數據 結束 圖3.4計算溫度流程圖 圖3.5顯示數據刷新流程圖3.6按鍵掃描處理子程序按鍵接受掃描查詢方式,設置標志位,當標志位為1時,顯示設置溫度,否則顯示當前溫度。如下圖3.6示。設置鍵按下增加鍵是否按下削減鍵是否按下顯示切換標志位是否為“0”調用顯示子程序報警溫度加1報警溫
19、度減1YNYNYN圖3.6 按鍵掃描處理子程序4 試驗仿真進入protuse后,連接好電路,并將程序下載進去。將DS18B20的改為0.1,數碼管顯示溫度與傳感器的溫度相同。圖41 溫度顯示仿真當按下SET鍵一次時,進入溫度報警上線調整,此時顯示軟件設置的溫度報警上線,按ADD或DEC分別對報警溫度進行加一或減一。當再次按下SET鍵時,進入溫度報警下線調整,此時顯示軟件設置的溫度報警下線,按ADD或DEC分別對報警溫度進行加一或減一。圖42 溫度調試仿真當第三次按下SET鍵時,退出溫度報警線設置。顯示當前溫度。五、電路實物圖使用元器件:主控器STC89C52一片、DS18B20溫度測量傳感器一
20、片、30P瓷片電容2個、1K電阻5個、100歐電阻8個10K電阻1個、8550三極管5個,12M晶體1片、按鈕開關1個、復位按鈕3個、蜂鳴器1個、離子電池1個、USB接口1個、萬能電路板一塊、5V電源一個、四位七段數碼管1塊、導線若干。 六、 結束語試驗表明:該智能溫度報警系統結構簡潔、測溫精確,具有肯定的實際應用價值。該智能溫度報警系統只是DSI8B20在溫度把握領域的一個簡潔實例,還有很多需要完善的地方,例如可以將測得的溫度通過單片機與通訊模塊相連接,以手機短信息的方式發送給用戶,使用戶能夠隨時對溫度進行監控。此外,還能廣泛地應用于各種工業生產領域,如建筑,倉儲等行業。 通過這次對數字溫度
21、計的設計與制作,讓我了解了設計電路的程序,也讓我了解了關于數字溫度計的原理與設計理念,要設計一個電路總要先用仿真仿真成功之后才實際接線的。但是最終的成品卻不肯定與仿真時完全一樣,由于,再實際接線中有著各種各樣的條件制約著。而且,在仿真中無法成功的電路接法,在實際中由于芯片本身的特性而能夠成功。所以,在設計時應考慮兩者的差異,從中找出最適合的設計方法。通過這次學習,讓我對各種電路都有了或許的了解,所以說,坐而言不如立而行,對于這些電路還是應當自己動手實際操作才會有深刻理解。在焊接過程中我曾將溫度傳感器的電源、地焊反啦,導致溫度傳感器急劇發熱,后經觀看和查詢資料才得以改正。從這次的課程設計中,我真
22、真正正的意識到,在以后的學習中,要理論聯系實際,把我們所學的理論學問用到實際當中,學習單機片機更是如此,程序只有在經常的寫與讀的過程中才能提高,這就是我在這次課程設計中的最大收獲。特殊是對單片機C語言產生了更深的愛好,能用Portel,PROTEUS等專業軟件,把握了電子電路調試的方法,能獨立解決設計與調試過程中消滅的一般問題,能正確選用元器件與材料,能對所設計電路的指標和性能進行測試并提出改進意見,能查閱各種有關手冊和正確編寫設計報告。由于這次的設計是一個人單獨作一個課題,所以我是接受以自學為主的學習方法。在學完模擬電子技術基礎和數字電子技術基礎課程之后,還要對單片機基礎的深化爭辯。在復習和
23、課程設計任務有關的單元電路,理清頭緒,依據電子電路的一般設計步驟進行設計。一個人做有點困難,途中不知遇到了多少難題,有些問題需要請教老師和同學,在解決這些實際難題中我的動手力量和學問鞏固都得到了很大的提高。參考文獻1 曾令琴 模擬電子技術 人民郵電出版社2 李曉荃 單片機原理與應用 電子工業出版社3 電子報 人民郵電出版社4 何立民 單片機的語言應用程序設計 北京航空航天高校出版社 5 網上資料程序名稱:DS18B20溫度測量、報警系統簡要說明:DS18B20溫度計,溫度測量范圍099.9攝氏度 可設置上限報警溫度、下限報警溫度 即高于上限值或者低于下限值時蜂鳴器報警 默認上限報警溫度為38、
24、默認下限報警溫度為5 報警值可設置范圍:最低上限報警值等于當前下限報警值 最高下限報警值等于當前上限報警值 將下限報警值調為0時為關閉下限報警功能C語言程序: #include <AT89X52.h>#include "DS18B20.h" #define uint unsigned int#define uchar unsigned char /宏定義#define SET P3_1 /定義調整鍵#define DEC
25、;P3_2 /定義削減鍵#define ADD P3_3 /定義增加鍵#define BEEP P3_7 /定義蜂鳴器bit shanshuo_st; /閃爍間隔標志bit beep_st; /蜂鳴器間隔標志sbit DIAN = P27; /小數點uchar x=0; /計數器signed char
26、 m; /溫度值全局變量uchar n; /溫度值全局變量uchar set_st=0; /狀態標志signed char shangxian=38; /上限報警溫度,默認值為38signed char xiaxian=5; /下限報警溫度,默認值為38uchar code LEDData=0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x
27、90,0xff;/*延時子程序*/void Delay(uint num)while( -num );/*初始化定時器0*/void InitTimer(void) TMOD=0x1; TH0=0x3c; TL0=0xb0; /50ms(晶振12M)/*定時器0中斷服務程序*/void timer0(void) interrupt 1TH0=0x3c;TL0=0xb0;x+;/*外部中斷0服務程序*/void int0(void) interrupt 0EX0=0; &
28、#160; /關外部中斷0if(DEC=0&&set_st=1) shangxian-; if(shangxian<xiaxian)shangxian=xiaxian;else if(DEC=0&&set_st=2) xiaxian-; if(xiaxian<0)xiaxian=0;/*外部中斷1服務程序*/void int1(void) interrupt 2EX1=0; /關外部中斷1i
29、f(ADD=0&&set_st=1) shangxian+; if(shangxian>99)shangxian=99;else if(ADD=0&&set_st=2) xiaxian+; if(xiaxian>shangxian)xiaxian=shangxian; /*讀取溫度*/void check_wendu(void)uint a,b,c;c=ReadTemperature()-5; /獵取溫度值并減去DS18
30、B20的溫漂誤差a=c/100; /計算得到十位數字b=c/10-a*10; /計算得到個位數字m=c/10; /計算得到整數位n=c-a*100-b*10; /計算得到小數位if(m<0)m=0;n=0; /設置溫度顯示上限if(m>99)m=99;n=9; /設置溫度顯示上限 /*顯示開機初始化等待畫面*/Disp_init() P
31、2 = 0xbf; /顯示-P1 = 0xf7;Delay(200);P1 = 0xfb;Delay(200); P1 = 0xfd;Delay(200);P1 = 0xfe;Delay(200);P1 = 0xff; /關閉顯示/*顯示溫度子程序*/Disp_Temperature() /顯示溫度P2 =0xc6; /顯示CP1 = 0xf7;Delay(300);P2 =LEDDatan; /顯示個位P1 = 0xfb;De
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年項目管理考試提升技巧試題及答案
- 礦物加工過程中的物理分離技術考核試卷
- 液力元件的激光加工技術考核試卷
- 漁具設計原理考核試卷
- 目視化管理下的團隊協作與溝通機制考核試卷
- 項目管理專業人士高效復習試題及答案
- 2025年企業會計與審計一體化管理研究試題及答案
- 禮儀用品行業品牌建設與市場競爭力提升考核試卷
- 潛水裝備的水下作業安全管理機制優化考核試卷
- 2023年中國電信股份有限公司灣沚分公司公開招聘筆試參考題庫附帶答案詳解
- 10KV配電室倒閘操作票
- 加油站電氣線路檢查安全操作細則
- 扁桃體切除術與術后并發癥
- 醫院培訓課件:《從藥學角度看靜脈輸液安全性管理》
- 肺結核病人工作管理制度
- 普通高中畢業生綜合素質評價報告表
- GB/T 20138-2023電器設備外殼對外界機械碰撞的防護等級(IK代碼)
- 邱關源《電路》(第6版)筆記和課后習題(含考研真題)詳解
- 通用用電設備配電設計規范
- 工程勘察服務成本要素信息(2022版)
- GB/T 15166.3-2023高壓交流熔斷器第3部分:噴射熔斷器
評論
0/150
提交評論