林雄偉,胡大斌
(海軍工程大學 船舶與動力學院,湖北 武漢 430033)
熱水器是現代家庭中一種十分重要的家用電器。目前,常見的電熱水器大多采用電熱絲加熱形式,這種加熱形式不僅效率低而且存在漏電隱患。現在,基于電磁感應加熱原理的、更加節能安全的新型電熱水器已經嶄露頭角。本文所的介紹即熱式電磁熱水器,要求將初溫為10℃左右的水加熱到 20℃~50℃(具體溫度由用戶設定)。文中對其溫度控制部分做了初步研究,并用Proteus軟件做了仿真實現。
根據電磁感應原理,高頻電流通過線圈時產生高頻磁場,將金屬導磁材料置于這樣的高頻磁場,金屬體中會產生無數高速運動的電流回路(即渦流),渦流產生的巨大的循環能量轉換為有效熱能,并將會使金屬加熱組件迅速升溫。這種利用渦流加熱的方式在工業與民用方面已獲得廣泛應用,其優勢是有著很高的功率密度,單位加熱面上的功率可達 0.1~2 kW/cm2,加熱速度極快,能在數秒至數十秒內將金屬表面加熱到800℃~1 000℃。電磁即熱式熱水器正是根據這一特性通過電磁轉換傳遞足夠能量,將加熱體的金屬導磁材料迅速加熱升溫,進而使流經加熱體的水迅速升溫。
電磁熱水器加熱主電路主要由L-C振蕩電路、絕緣柵雙極晶體管(IGBT)構成,如圖1所示。其原理是:電網電壓(220 V、50 Hz)經整流、濾波后得到直流電壓 U(圖1中將這部分省略直接給出U)并把其加到諧振電路和功率開關管IGBT的兩端。IGBT在驅動脈沖信號的作用下處于“導通”和“關斷”的工作狀態中。

圖1 加熱主電路簡化圖
電感L中的電流變化如圖2所示,并分析[1]如下:
(1)t0~t1時段:t0時刻 IGBT 開通, 此時 Uc=0,iL=0,VD關斷。t0之后直流電源U向線圈L充電,直到t1時刻iL上升到最大值。

圖2 電流iL的波形
(2)t1~t2時段:t1時刻,iL達到最大值,此時,關斷 IGBT。L對電容C充電,iL不斷下降。當iL下降到0,Uc上升到峰值電壓時充電停止,此時到t2時刻。
(3)t2~t3時段:t2時刻,C 開始對 L 放電,iL上升,Uc下降,t3時刻 Uc下降到 0,iL上升到反向峰值。
(4)t3~t4時段:t3時刻,L 對 C 反向充電,直到 t4時刻iL下降為0,開通 IGBT,開始下一個周期。
功率開關管IGBT在高頻脈沖信號的作用下,快速重復上述過程,就產生了高頻電流。
溫度控制系統的總體組成[2]如圖3所示,由溫度檢測電路、加熱控制電路、數碼管顯示電路、溫度設定電路等組成。

圖3 溫度控制系統總體組成
單片機是溫度控制系統的核心,它采集并處理溫度數據、控制數碼管顯示及加熱部分的運行。
本系統選用美國ATMEL公司生產的AT89S52型單片機,具有低功耗、高性能CMOS 8位Flash ROM。AT89S52完全兼容傳統的8051指令系統和引腳;具有8 KB的程序存儲空間,足夠存放一般大小的匯編程序;支持在線編程功能,可方便地擦寫1000次左右;網絡資源豐富,價格低廉,編譯工具多,仿真環境好。因此在各種控制領域中被廣泛應用。
目前,對于溫度測量采用較多的是熱電阻、熱電偶或數字溫度傳感器。前兩者采集的是模擬量,需要經過A/D轉換才能送入單片機進行處理。數字溫度傳感器可直接送出數字量,省去了A/D轉換電路。
為了降低電路的復雜程度,本系統選用數字溫度傳感器DSl8B20。DS18B20是美國DSLLAS公司生產的單總線數字溫度傳感器,具有微型化、低功耗、抗干擾能力強、易匹配處理器等優點。它將溫度感測、信號變換、A/D轉換等功能集成到一個芯片上,采用TO-92封裝形式,接口非常簡單。DQ為數字信號輸入/輸出端;GND為電源地;VDD為電源輸入端(在寄生電源接線方式時接地)。DS18B20主要性能指標[3]如下:電壓范圍:3~5.5 V(可用數據線供電),測溫范圍:-55℃~+125℃,通過編程可實現9~12位的數字讀數方式,測溫分辨率可達0.062 5℃,可自設定非易失性的報警上下限值。
DS18B20將溫度值以規定的格式轉換為數據并存放于內部的一個9字節的高速存儲器中。當接收到讀存儲器指令時,將數據發送給單片機,用戶通過相應的算法,將數據還原為溫度值;采用單總線數據傳輸方式,對讀寫的數據位有著嚴格的時序要求。其工作時序包括初始化時序、寫時序和讀時序。具體操作如下:
(1)初始化操作。向 DSI8B20的數據線(即 DQ)發送480 μs~960 μs 的低電平信號,再將 DQ 拉高 15 μs~60 μs。
(2)寫操作。當數據線從高電平拉至低電平時產生寫 時 隙 。 從 DQ 的 下 降 沿 開 始 ,在 15 μs~60 μs內 對DSl8B20進行寫入。數據線為高電平寫入1,為低電平寫入0,這即為1個寫周期。若要開始下一個寫周期,則須有1 μs以上的高電平恢復期。需要注意的是,每個寫周期都要有60 μs以上的持續時間。
(3)讀操作。主機將數據線拉低并保持 1 μs~4 μs,再將其拉高,就產生讀時隙。從數據線下降沿之后15 μs~60 μs時段內,主機讀取數據。每個讀周期最短須持續60 μs,2個讀周期之間須有 1 μs以上的高電平恢復期。
單片機產生PWM脈沖經放大后驅動IGBT管,在加熱體中產生高頻電流,依據電磁感應原理產生熱量對水加熱,如圖1所示。加熱體的輸出瞬時功率決定于PWM周期中高電平的占空比,占空比小,IGBT的觸發脈沖變窄,輸出功率下降;占空比大,IGBT的觸發脈沖變寬,輸出功率上升。水溫是大時滯性的對象,在加熱管內水溫與“設定溫度”相等時才停止加熱,但水溫不會馬上停止上升。因此,本系統設計水溫達到80%“設定溫度”之前時以全功率加熱,水溫達到80%“設定溫度”之后加熱功率適當減小,減小的幅度由PID算法給出。T0定時器生成PWM脈沖,其占空比由計算結果確定。
為減小電路的復雜程度又能得到良好的效果,本系統設計 “升溫”、“降溫”兩個鍵對溫度進行設定。開機后,系統默認“設定溫度”為 40℃,并開始工作,通過按鍵對 “設定溫度”進行增減,達到 20℃~50℃可調的效果。同時,對設定溫度,用數碼管進行顯示。
溫度顯示部分采用4位7段數碼管顯示電路,數碼管選用共陽極數碼管,前2位顯示實際溫度,后2位顯示設定溫度,電路連接如圖4所示。數碼管以動態掃描方式顯示,顯示數據由P0口送出,位選信號由P2口送出。T1定時器每4 ms對數碼管掃描顯示1次。

圖4 系統連接圖
系統軟件流程圖如圖5所示,系統程序主要包括主程序、DS18B20程序、LED掃描顯示程序和PWM控制程序。主程序對系統進行初始化、檢測鍵盤輸入、調用DS18B20程序、PID計算得到占空比并控制PWM輸出;DS18B20程序是根據其特定的要求進行初始化、寫操作、讀操作、碼制轉換得到實際水溫;定時器T1中斷,動態顯示實際溫度與設定溫度;定時器T0中斷以一定的占空比輸出PWM信號。

圖5 系統軟件流程圖
程序部分代碼:



由于篇幅限制,其他代碼不再贅述。
Proteus軟件是英國Labcenter Electronics公司開發的電路分析與實物仿真軟件,可以仿真、分析多種模擬器件和集成電路,尤其擅長于單片機的仿真與分析,并且可以很方便地與Keil C51集成開發。Proteus還具有PCB設計功能,可以在仿真通過后方便地繪制出PCB圖樣、制作PCB板,完成硬件實現。Proteus是一款優秀的單片機仿真與開發軟件,它大大提高了效率、節省了開發周期和開發成本[3]。
本系統在設計時選用Proteus進行仿真,各元器件的連接見圖4。將編寫的匯編程序在Keil環境下編譯生成十六進制的.HEX文件[5],然后將其加載到單片機中運行,得到圖4所示的結果:實際水溫為10℃,設定溫度為40℃系統開始加熱。上述各步驟在單片機開發板上也已經實現。
本文基于單片機和數字式溫度傳感器DS18B20設計了溫度控制系統,這是目前溫度控制中較為流行的設計思想。本設計方案,縮短了開發周期、降低了開發成本,不失為當前控制系統設計的一條捷徑,有著較為廣泛的應用價值。
[1]林渭勛.現代電力電子技術[M].北京:機械工業出版社,2006.
[2]呂小紅,周鳳星.基于單片機的電阻爐溫度控制系統設計[J].微計算機信息,2008,24(6-2).
[3]陳少航,李山.基于Proteus的單片機應用系統的設計與仿真[J].現代電子技術,2007(6).