設計方案整體介紹
恒溫加熱器作為一種提供恒定溫度的設備,被廣泛地應用于生產(chǎn)、生活、實驗等領域。在醫(yī)用、水產(chǎn)、特種工業(yè)、工業(yè)探傷、照相等行業(yè),需要有穩(wěn)定而精確的溫度進行加熱,因而對恒溫加熱器需求量很大。
我們在這里提出一種實用且精度較高的恒溫加熱器電路設計方案,僅使用一個單片機系統(tǒng)和一個溫度傳感器實現(xiàn)對溫度的精確和智能控制,并可設定加熱溫度和恒溫加熱時間。該加熱器通過市電供電,無須專用電源,控制簡單。可通過左、右向等2個按鈕對操作位進行調整;通過加、減等2個按扭對控制量(溫度/加熱時間)進行調整;通過啟動/暫停鍵啟動/暫停程序;通過溫度/時間轉換鍵轉換對溫度/時間調整。目前的設計可以滿足室溫到100℃的加熱條件,如果對該電路進行商業(yè)化改造(如外觀設計、使用特種材料等),可以使該產(chǎn)品適用多種場合。
恒溫加熱器電路整體模塊
該恒溫加熱器主要由以下5個模塊構成,溫度傳感器及信號處理電路、A/D轉換采樣電路、中央控制電路、加熱電路、顯示設備、輸入設備。
中央控制電路從輸入設備中讀入設定的加熱溫度、時間后,控制加熱電路開始加熱。溫度變化引起溫度傳感器上電壓的變換,經(jīng)過信號處理電路處理后送入A/D采樣電路。每隔時鐘周期,將信號完成A/D轉換后送入中央控制電路的單片機中。當被加熱物達到設定的溫度時,中央控制電路輸出相應的電平控制加熱電路斷開,加熱停止。如此反復,使被加熱物的溫度穩(wěn)定在所需要的溫度附近。
溫度傳感器及信號處理電路設計
溫度傳感器是恒溫加熱器實現(xiàn)高精度控制的關鍵。因此要求傳感器有很好的線性。同時為了最大限度地提高可加熱范圍內(nèi)的溫度控制精度,要求溫度在 0℃—100℃變化時,對應輸出電壓在0V—5V線性變化。(根據(jù)選用的ADC模擬輸入范圍不同對電路進行適當調整。)
AD590溫度感測器是一種已經(jīng)IC化的溫度感測器,它在-55℃——150℃溫域中有較好的線性度,其標定精度因器件的檔次而異(常分為I,J,K,L,M五檔)其非線形誤差因檔次而異。I檔△T<±3℃,M檔△T<0.3℃,其余檔次在二者之間。 可以將溫度轉換為電流,通過外加電阻轉換和使用差動放大使0℃—100℃溫度變化轉換到0V—5V的標準電壓。將轉換后的電壓輸入到ADC中,可以最大限度地提高可控溫度的精度。
AD590輸出電流以絕對溫度零度(-273℃)為基準,每增加1℃, 增加1μA輸出電流。因此,在室溫25℃時其輸出電流Io=(273+25)=298μA。Vo的值為Io×10K,若室溫為25℃, 則輸出值為2.98V=(10K×298μA)。
AD590的輸出電流I=(273+T)μA(T為攝氏溫度), 因此測量電壓V為(273+T)μA ×10K= (2.73+T/100)V。為了測量電壓需使輸出電流I不分流,我們使用電壓追隨器,使其輸出電壓V2等于輸入電壓V。
由于一般電源供應較多元件之后,電源會帶雜訊。我們使用齊納二極管作為穩(wěn)壓元件, 利用可變電阻分壓, 使輸出電壓V1調整至2.73V。 接下來我們使用差動放大器,使輸出Vo為 (50K/10K)×(V2-V1)=T/20V。若溫度為攝氏30度,則輸出電壓Vo為1.5V。
控制電路設計及軟件算法
經(jīng)信號處理后的電壓被送入A/D轉換芯片。由于80C51單片機是8位單片機且A/D轉換芯片最低位存在量化誤差,應使用10位或者12位并行A/D轉換芯片,取其高8位作為輸入。
由于8位最多可以產(chǎn)生2的8次方共256個量化電平,每個數(shù)字量對應的溫度為256/100=2.56數(shù)字量/℃。例如,當溫度為30℃時數(shù)字量=30*2.56≈4CH。由此可將相應的溫度轉化為編碼,在程序設計時作為溫度判定的標準。
C51系列單片機共有4個I/O接口(P0—P3),其中P3除了可以作為普通的I/O接口外還可以作為中斷控制,計數(shù)器輸入等。由于在本系統(tǒng)中,需要控制的外部設備比較多,所以會采用接口復用的方式。
由于在設置溫度、時間時,系統(tǒng)并不需要從A/D轉換芯片中讀取數(shù)據(jù);在系統(tǒng)開始自動加熱的過程中,也不能對溫度、時間設置進行修改。所以可以將P0接口復用為輸入和A/D轉換芯片共用。使用2片74ls157完成多路復用,用P2接口的設置/工作狀態(tài)控制位的輸出作為74ls157的復用選擇信號,保證設置和A/D輸入不同時進行。即使在出現(xiàn)誤操作的情況下也不會影響系統(tǒng)的正常工作。
溫度和時間顯示由4片LED七段數(shù)顯管連接4片七段譯碼器完成,使用P1接口作為輸出。其中P1低4位作為編碼輸出,高4位作為片選信號。通過依次選通各片七段譯碼器,即可以實現(xiàn)溫度和時間顯示。
P2接口作為控制輸出端。P2.0作為加熱控制位,當其為高時,電子開關組接通,加熱開始;P2.1作為LED同步信號,使LED變化同步;P2.2作為設置/工作狀態(tài)控制位。為了標志控制狀態(tài),分別使用2個附加的LED與加熱控制狀態(tài)位、設置控制狀態(tài)位相連。
使用P3的一個中斷輸入,產(chǎn)生一個中斷將鍵盤碼送入單片機中。同時將P3的2個非中斷輸入作為設置/啟動轉換健和溫度/時間設置轉換鍵,利用查詢方式檢測是否輸入。
在初始化中,將計時清零,控制電平默認為高電平。數(shù)據(jù)輸入后,控制電平輸出,加熱電路接通,開始加熱。溫度達到或超過設定值,控制電平為低,暫停加熱;當溫度回落到設定溫度以下控制電平為高,再次加熱,這樣即可實現(xiàn)恒溫。在框圖中,計時步驟要完成延遲和計時2個功能。在溫度未達到設定值以前,不計時,只完成延遲0.1s的功能,0.1s后跳轉到檢測溫度步驟繼續(xù)執(zhí)行。當溫度第一次達到設定值,加熱階段結束,保溫階段開始,計時隨之開始,其具體實現(xiàn)為延遲結束后,計時變量加1,再跳轉到溫度檢測。以后每次執(zhí)行到計時步驟時,計時不停,無論控制電平是否為低(高)。計時過程中還可通過進位以避免數(shù)據(jù)溢出。(其方法為當計量0.1秒的變量滿10后清零且計量秒的變量加1。以此類推,最后進位到計量分鐘。)當計時完成后,程序結束,控制電平為低,加熱停止。由此實現(xiàn)精確到秒的恒溫時間控制。