摘要: 本項目介紹了一種基于單片機的溫度報警系統,本設計由ATS89C52單片機擔當主控芯片, DS18B20傳感器為協調控制外圍溫度采集電路,并且輔以數碼管顯示溫度和按鍵控制溫度范圍,主要完成的功能是對溫度的實時采集以及顯示,并且對溫度設定一個范圍值當溫度不在這個范圍值之內則利用蜂鳴器與LED小燈進行報警,其優點在于線路簡單,測量精度高,誤差小,抗干擾性強,體積小,實用性強等。
隨著科技的進步以及微電子器件的飛速發展,以單片機為設計核心的一系列電子產品,在人們日常生活中也變得越來越常見。其中,溫度報警器就是其中之一。本次設計主要以單片機為核心,系統接入電源后,按鍵輸入想要設定的上下限,再根據溫度檢測器將所測溫度傳入系統中,隨后進行顯示,通過比較分析后,得到的數據如果不在范圍內,即刻進行報警提示,報警主要包括蜂鳴器報警。其中的主控板是ATS89C52單片機,傳感器是DS18B20溫度傳感器,顯示器采用數碼管,電聲元件采用蜂鳴器。 1 項目介紹與原理圖單片機控制無疑所給人帶來了方便,單片機技術已經普及到我們生活,工作,科研,各個領域,已經成為一種比較成熟的技術,本次項目將完成一種基于單片機控制的溫度報警器設計與制作,本溫度報警器,可以設置上下報警溫度,當溫度不在設置范圍內時進行報警。 通過采用基于單片機控制、蜂鳴器作為電聲元件的溫度報警器,這種溫度報警器有結構簡單,可操作性強,可見測量溫度的范圍廣,精度高,讀數方便,測溫準確的特點。工作時,溫度測量范圍為溫度測量范圍0到99.9攝氏度,精度為0.1攝氏度?稍O置上下限報警溫度。當當前環境溫度若超過設定的高溫臨界溫度,由單片機發出報警信號。 本項目應用場景廣,例如及時監測由電氣線路短路、過載、接觸電阻過大等引發高溫;機房內電腦、空調等用電設備長時間工作,導致設備老化,發生故障,發熱過快,在短時間內溫度升高超出設備正常溫度,引發的高溫。從而防止火災的發生,以防帶來的不必要的損失。
圖1系統總原理框圖 2 儀器設備和材料2.1儀器設備
萬用表 電焊臺 單片機
2.2 材料 制作材料有:
3 實施方案
3.1主控模塊 此設計制作基于51單片機,因此單片機的選擇至關重要,ATS89C52是一個低電壓,高性能CMOS 8位單片機,片內含8k bytes的可反復擦寫的Flash只讀程序存儲器和256 bytes的隨機存取數據存儲器(RAM),器件采用ATMEL公司的高密度、非易失性存儲技術生產,兼容標準MCS-51指令系統,片內置通用8位中央處理器和Flash存儲單元,AT89C52單片機在電子行業中有著廣泛的應用。AT89C52有40個引腳,32個外部雙向輸入/輸出(I/O)端口,同時內含2個外中斷口,3個16位可編程定時計數器,2個全雙工串行通信口,2 個讀寫口線,AT89C52可以按照常規方法進行編程,也可以在線編程。其將通用的微處理器和Flash存儲器結合在一起,特別是可反復擦寫的 Flash存儲器可有效地降低開發成本,因此選用ATS89C52。
3.2測溫模塊 由于本設計是測溫電路,可以使用熱敏電阻之類的器件利用其感溫效應,在將隨被測溫度變化 的電壓或電流采集過來,進行 A/D 轉換后,就可以用單片機進行數據的處理,在顯示電路上,就可以將被測溫度顯示出來,這種設計需要用到 A/D 轉換電路,感溫電路比較麻煩。 進而考慮到用溫度傳感器,因此采用溫度傳感器DS18B20,此傳感器是常用的數字溫度傳感器,其輸出的是數字信號,具有體積小,抗干擾能力強,精度高,接線方便可以很容易直接讀取被測溫度值的特點。因此選擇 DS18B20以滿足設計制作要求。 DS18B20溫度檢測采用單線進行數據傳輸,與單片機的一個I/0口相連進行數據的雙向傳輸。該溫度傳感器轉換的過程是:在每一次使用時,都要進行重置,在這之后,需要向DS18B20發送兩個指令,分別是ROM指令和RAM指令。得到相應的數值,主控部分再將數據線下拉500μs,再釋放數據線,最后重置結束。其條件是當傳感器接收到信號后等待16μs-60us左右,發出60us-240us的存在低電平脈沖。DS18B20溫度傳感器,其三個引腳分別為GND(接地)、VCC(可選用的VCC引腳)、DQ(數據輸入/輸出),傳感器的DQ接口與單片機P3.7口相連接。如原理圖設計: 圖3 DS18B20電路 3.3顯示模塊 圖4 數碼管顯示 采用四位一體共陽數碼管顯示,數碼管由7段條形發光二極管和一個圓點發光二極管組成,控制ABCDEFG發光二極管的亮滅,可以顯示0-9字符,控制DP發光二極管的亮滅能控制是否顯示小數點,其工作電壓一般為5V。價格低廉,簡單可靠。 3.4報警模塊 目前市場上有各種各樣的報警電路,比如聲光觸發,紅外觸發,觸摸斷線觸發等等,以便提醒使用者當前系統所出現的錯誤或引起操作者的注意,本次設計的是溫度報警器,只需要在測量的溫度超出范圍時提醒即可,因此不需要復雜的功能,只需要一個蜂鳴器一個LED小燈即可。當溫度超過溫度上下限后就會報警與亮燈。蜂鳴器發聲原理是電流通過電磁線圈,使電磁線圈產生磁場來驅動振動膜發聲。
圖5 報警模塊 3.5相關電路設計 本設計采用的是常見的12M 的石英晶振,引腳 XTAL1 和 XTAL2 是此放大器的輸人端和輸出端,外接石英晶體或陶瓷諧振器以及電容C1和C2 構成并聯諧振電路 ,接在放大器的反饋回路中。為了振蕩器的穩定性、起振圈內部振蕩的接法的快速性和溫度穩定性。C1和C2 取30pF。另外一個不可或缺的重要電路就是復位電路,本設計中選取的復位模式是上電復位加按鍵復位的模式進行設計的,選用 10UF的電解電容加10K的下拉電阻復位效果是比較好的,而復位按鍵則是并聯在電容兩端,運行時直接按下復位腳即可得到高電平單片機進入復位模式,復位按鍵的好處在于他可以讓單片機系統隨時進入復位模式。 圖6 復位等相關電路 3.6程序設計 系統程序流程圖如圖8所示: 圖7系統程序流程圖 首先,整個系統開始初始化,調用溫度檢測模塊的子程序檢查DS18B20是否在線并返回一個結果作為應答,接著由DS18B20測出環境溫度并處理轉換數據通過IIC通信給單片機,在此同時由鍵盤模塊的子程序掃描鍵盤看設置的溫度上下限然后由主程序判斷外界溫度是否越限,如果越限,便調用聲光報警模塊的子程序,如果沒有將循環往復的檢測和判斷。
4 結果與分析4.1設計與制作結果 本次設計型主是硬件與軟件。硬件是電路板的焊接等,主程序方面為單片機的編寫。在測試中首先使用萬用表進行電路板焊接的檢查測試,以降低后續出錯率。在單片機的編寫中,主要是把編寫好了的程序進行查看,并在硬件中來進行運行,之后再查看整個運行的狀態。 圖8 單片機編寫(局部) 對源程序編譯調試后,使用Proteus軟件進行仿真,仿真結果如圖9所示;此時上限溫度為36攝氏度,系統實測溫度為37.3攝氏度,發光二極管閃爍蜂鳴器鳴叫觸發報警。 圖9 總體仿真圖 然后,使用AltiumDesigner完成電路原理圖的設計如圖: 圖10 總體原理圖 并最終完成實物制作及調試。
4.2結果分析 本次基于單片機的溫度報警器設計系統不僅結構簡單,功能實用,便于設計,設計成本低下,且經過實際的運行和檢驗,能夠達到實際使用的要求和目標。在工作運行中裝置反應靈活,性能穩定,溫度檢測精確度高,報警靈敏性高。 另一方面,還可就溫度報警器的體積進一步減小,溫度檢測精度進一步提高等方面作深入研究,另外在溫度報警器的模塊上還可添加更多的功能,比如可顯示時間,可報時,根據不同的需求增加不同的功能等。 |