摘 要:介紹如何應用單片機使溫度測控系統中的測量和控制智能化及一種基于AT89S52單片機的溫度測控裝置。該裝置可實現對溫度的測量,并能根據設定值對環境溫度進行調節,實現控溫的目的。重點闡述系統的硬件構成、各部分的主要作用及系統軟件的設計過程。并對單片機在溫度控制系統中的基本理論和應用技術做了較為全面的介紹。
關鍵詞:AT89S52;溫度測控;溫度傳感器;控制智能化
中圖分類號:TP3681 文獻標識碼:B
文章編號:1004-373X(2008)06-156-03
Design of Temperature Control System Based on AT89S52
ZHENG Yunshui DU Lixia2
(1.School of Automation and Electrical Engineering,Lanzhou Jiaotong University,Lanzhou,730070,China;
2.School of Electronic and Information Engineering,Lanzhou Jiaotong University,Lanzhou,730070,China)
Abstract:The paper introduces intelligent temperature measurement and control system to use single chip.proposes a microcontroller-based AT89S52 temperature measurement and control device.The device can achieve the right temperature measurement,and set value based on the environmental temperature regulation,temperature control to achieve the purpose.This paper focuses on the hardware configuration of the system,the main part of the role and system software design process.The design of the microcontroller temperature control system of the basic theory and application of techniques are more comprehensive presentation.
Keywords:AT89S52;temperature monitoring;temperature sensor;intelligent control
收稿日期:2007-09-25
1 引 言
單片機在電子產品中的應用已經越來越廣泛,在很多的電子產品中也用到溫度檢測和溫度控制。隨著溫度控制器應用范圍的日益廣泛和多樣性,各種適用于不同場合的智能溫度控制器應運而生。在科研、生產中,常需要對某些系統進行溫度的監測和控制。需檢測和控制的溫度系統一旦確定,其熱慣性大小和散熱等各項硬件條件就確定了。下面介紹如何用“單片機模型法”實現系統溫度的自動控制。用這種方法控溫,使整個系統靈活、可靠性高,系統達到熱平衡較快,而且精度也比較高,融合了前面列舉方法的優點,而且更加簡單方便。此方案優點是電路簡單并且可以滿足題目中的各項要求的精度 。系統設計總體框圖如圖1所示。
2 硬件電路的系統組成
2.1 AT89S52單片機系統
選用AT89S52作為主芯片,因為此芯片有8 kB的程序存儲器和256 B的數據存儲器不用擴展芯片,以降低硬件電路復雜度。
(1) 輸入鍵盤設計
這里采用的鍵盤是4×4的,其中有0~F,可以在40~90 ℃之間任意設定值。系統要求第一次輸入的值要在4~9之間,當小于4或大于9時系統不處理,等待輸入正確的值。當系統得到正確的輸入值時鍵盤鎖定,隨后的輸入系統必須復位。鍵盤是用AT89S52的P0口來控制。
圖1 系統的結構框圖
(2) 輸出顯示設計
顯示是應用LED來顯示的,通過ATF1508設計編碼。其實質就是為了程序在一定的條件下更加的合理與簡潔。在單片機AT89S52與ATF1508通信是應用到AT89S52的P2口。LED的前4位為實時采樣取回的溫度,后3位為想要的目標溫度。
(3) 與上位機的串口通信
為了實時地對溫度的變化更加直觀的顯示還用上位機的串口通信,用計算機來打印數據。
2.2 傳感器和測溫電路的設計
本次設計采用18B20對溫度進行采樣,18B20是全數字的,其分辨率達到0.062 5 ℃,并且他的外圍電路十分簡單,工作效率高,在工作的范圍-55~125 ℃之間都可以很好的工作。
2.3 電爐功率控制
采用對電爐兩端的電壓進行通斷的方法,用單片機產生PWM波以實現對水加熱功率進行控制,不同的占空比對應不同的功率,具體控制中占空比的實時值是根據模糊控制規則自動調節。
(1) 弱電控制強電:用固態繼電器,其電路圖如圖2所示。
圖2 固態繼電器電路圖
(2)PWM波:PWM是一種對模擬信號電平進行數字編碼的方法。通過高分辨率計數器的使用,方波的占空比被調制用來對一個具體模擬信號的電平進行編碼。PWM 信號仍然是數字信號,因為在給定的任何時刻,滿幅值的直流供電不是完全有(ON),就是完全無(OFF)。電壓或電流源是以一種通(ON)或斷(OFF)的重復脈沖序列被加到模擬負載上去的。通的時候即是直流供電被加到負載上的時候,斷的時候即是供電被斷開的時候。只要帶寬足夠,任何模擬值都可以使用PWM 進行編碼。
2.4 降溫控制
PWM是一種對模擬信號電平進行數字編碼的方法。通過高分辨率計數器的使用,方波的占空比被調制用來對一個具體模擬信號的電平進行編碼。PWM 信號仍然是數字信號,因為在給定的任何時刻,滿幅值的直流供電要么完全有(ON),要么完全無(OFF)。電壓或電流源是以一種通(ON)或斷(OFF)的重復脈沖序列被加到模擬負載上去的。通的時候即是直流供電被加到負載上的時候,斷的時候即是供電被斷開的時候。只要帶寬足夠,任何模擬值都可以使用PWM 進行編碼。
(1) 風扇的控制
風扇是用來降溫的,他的工作原理也是應用繼電器來控制,在一定的溫度范圍內,風扇開始工作。
(2) 冰水混合物
應用冰水混合物進行溫度標定,標定為0 ℃。
3 軟件的模型及設計
3.1 模型建立以及設計思路
本智能溫度控制系統是通過控制加熱電源的通斷來控制溫度和改變加熱升溫速度。加熱過程需要考慮的因素主要有:被加熱對象的熱容量的大小、系統向外界擴散熱量的多少以及系統熱擴散的速度。快速升溫時間t應由t1和t2兩部分組成,即:
t=t1+t2
其中:t1為為了補償系統向環境散熱而需要加熱的時間;t2為系統(實際)溫度與設定(目標)溫度有差額時需加熱的時間。
在溫度調節階段,降溫和升溫過程交替出現,程序通過圖1中的分界點Tr,T1,T2來調節溫度的升降,最終使系統達到相對穩定進入恒溫保持階段。根據模型曲線不同階段的要求,可以通過PID軟件自動控制他的加熱模式。對一個任務而言,溫度加熱、調節及恒溫保持階段軟件設計流程圖。本系統是個多步智能溫度控制器,他可以完成預先設置的若干個任務,即每個步驟的溫度值及恒溫需要保持的時間,每步都重復的程序流程。系統流程如圖3所示。
圖3 溫度控制系統流程圖
3.2 模型曲線及控溫參量的確定
3.2.1 模型曲線的建立
圖4為控溫模型曲線。圖4中T為系統溫度,Ta為設定溫度。控溫過程共分為3個階段:快速加熱、溫度調節和恒溫保持。其中第一階段只有簡單的快速升溫過程,而其余階段均由升溫和降溫過程即溫度調節過程組成。根據設計需要針對各階段要求如下:在快速加熱階段即在達到點Tr之前,加熱速度要快,使系統溫度T以盡量短的時間達到設定溫度Ta。當T達到設定溫度Ta時即停止加熱,在停止加熱后由于熱慣性,T將繼續升高,使得T會超過Ta而達到最大值A點。在溫度調節階段,以T1,T2點為分界點降溫與升溫過程重復出現。進入恒溫保持階段,要求系統溫度T能穩定在設定溫度Ta的附近,并保持夠設定的時間直到系統進入到下一個設定的任務為止。曲線上A,B,C…為極大值點,D,E,F…為極小值點;他們的絕對值隨時間增加都在逐漸減小,進入恒溫保持階段后在允許誤差范圍內趨于穩定。
圖4 溫控模型曲線
3.2.2 模型曲線控制參量的確定
模型曲線中的控制參量是在反復多次的實驗的基礎上最終確定下來的。圖4中的Ta是每個任務預設的溫度值,Tr和T2點是系統停止加熱的起始點,而T1點則是系統開始加熱的起始點。ΔT1=T1-Ta=+2 ℃,ΔT2=T2-Ta=-2 ℃是系統加熱和調節過程中的2個門限值,而Tr是系統的一個重要的分界點,具體說明如下:
在快速加熱的過程中,當系統溫度第一次達到預置的某個階段的設定溫度即達到Tr點時,系統就立即停止加熱,之后系統由于熱慣性會繼續升溫到最大值A點,而后開始降溫;在降溫過程中,T到達T1點即T-Ta=2 ℃時,系統開始預加熱,即緩沖系統溫度持續下降的幅度;在升溫過程中,當達到T2點即T-Ta=-2 ℃時,停止加熱,即防止由于熱慣性導致溫度的極大值過大。由此可見Tr,T1及T2點的溫度值是軟件設計中需要參考的重要參量。
4 數據測試及分析
數據測試結果如表1所示。
表1 數據結果記錄表
從測定結果可以分析出:該系統測量的溫度誤差保持在0.2 ℃左右,能夠達到水溫控制系統的要求。
5 結 語
分段變參數溫度監控系統,可以方便用戶遠程控制和監視設備的工作,并具有測溫、控溫精度高、顯示直觀、運行可靠、成本低廉、擴展方便、使用簡單等優點。本系統測溫及控溫范圍為-50~125 ℃,測溫誤差不超過±0.2 ℃,控溫誤差在達到溫度平衡后也不超過±0.2 ℃,在溫度調節階段達到平衡溫度時間相對較短,在現場的測試及應用中收到了相當好的效果。
參考文獻
[1]潘笑,高玉玲,康亞娜.基于模糊PID的AT89C2051單片機智能溫度控制系統[J].兵工自動化,2006(5):65-67.
[2]陳良光,管聰慧.由數字式傳感器DS18B20構成的多點測溫系統[J].傳感器世界,1999(9):32-35.
作者簡介
鄭云水 男,1972年出生,碩士研究生,講師。主要從事自動控制(鐵路信號)專業課教學工作。
杜麗霞 女,1968年出生,甘肅定西人,碩士,副教授。
注:本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文。