奚建榮
摘 要:針對目前壁掛爐采暖中溫度控制不準確的現狀,以單片機為控制中心,采用Dallas公司的“一線總線”數字化溫度傳感器DS18B20以及脈沖控制器件,設計一款多點測溫及溫度控制系統;系統能夠同時測量多點溫度,并根據溫度設定實時控制各回路通斷及壁掛爐的燃燒與停止,從而進一步提高居室的舒適性及采暖系統的經濟性。
關鍵詞:51單片機;DS18B20;多點溫度檢測;溫度控制系統
中圖分類號:TP274文獻標識碼:B
文章編號:1004 373X(2009)02 186 03
Multi-point Temperature Control System Based on 51 Single Chip Computer
XI Jianrong
(Weinan Teachers University,Weinan,714000,China)
Abstract:A multi-point temperature control system based on MCS-51 single chip computer is designed to solve the inaccurate problem of current temperature control system.Using DS18B20,"1-Wire" digital thermometer,and the component controlled by electric pulse.According to the temperatures got from multi-pointtemperature sensor,it can control heating water circuit and the burning or shutting of the stove.It makesthe room more comfortable and enhances the efficiency of the heating system.
Keywords:single chip computer;DS18B20;multi-point temperature measurement;temperature control system
隨著生活水平的提高,人們對家居需求由面積需求變為舒適需求。地板采暖采用輻射方式供暖,符合人體生理需求曲線,如果控制系統選取得當,不僅可以提高房間舒適度,更可以使系統運行費用降低許多。如今一般是在典型位置安裝一個溫控裝置,溫控裝置連接到壁掛爐,溫控器根據室溫和溫度設定直接控制鍋爐運行,各房間不同回路由工作人員憑經驗手動調節分水器球閥,改變不同回路的流量,從而達到調節各房間的室溫的效果。使用這種控制方法,即使是有經驗的工作人員,也難以調節得十分準確,何況各家庭成員由于年齡不同,所需舒適溫度不同,需要經常對室溫進行調節。
針對以上問題,利用SST89E564RC單片機及新型測溫器件設計了多點溫控采暖控制系統,根據室內各點溫度設定實時控制采暖系統,從而提高居室的舒適性以及采暖的經濟性。
1 系統設計目標
系統總體設計思想是以SST89E564RC單片機為控制核心,整個系統硬件部分包括溫度檢測部分、控制執行部分、顯示及鍵盤系統及最小系統基本電路。系統利用單片機獲得溫度傳感器數據并與系統設計值進行比較,根據比較結果分別控制執行系統。溫度控制系統控制框圖如圖1所示。
2 系統硬件設計
根據系統所需完成的功能,設計系統硬件結構如圖2所示。
2.1 控制核心
系統采用SST89E564RC單片機作為控制核心,進行溫度采集、信息顯示及執行機構的控制。SST89E564RC是美國SST公司推出的高可靠、小扇區結構的FLASH單片機,內部嵌入72 KB的SuperFlash,1 KB的RAM,通過對其RAM做進一步擴展,可滿足嵌入系統操作系統的運行條件。
2.2 溫度傳感器
溫度傳感器采用Dallas半導體公司的數字化溫度傳感器DS18B20。該傳感器支持 “一線總線”接口,可方便地進行多點溫度測量,還可以程序設定9~12位的分辨率,最高精度為±0.062 5 ℃,分辨率設定及用戶設定的報警溫度存儲在E2PROM中,掉電后依然保存。該產品支持3~5.5 V的電壓范圍,因其體積小使系統設計更靈活、方便。
DS18B20的管腳排列如圖3所示,其中DQ為數字信號輸入/輸出端;GND為電源地;VDD為外接供電電源輸入端。
DS18B20內部結構主要由4部分組成:64位光刻ROM、溫度傳感器、非揮發的溫度報警觸發器TH和TL、配置寄存器。
光刻ROM中的64位序列號是出廠前被光刻好的,它可以看作是該DS18B20的地址序列碼。光刻ROM的作用是使每一個DS18B20都各不相同,這樣就可以實現1根總線上掛接多個DS18B20的目的。
DS18B20溫度傳感器的內部存儲器包括9 B高速暫存RAM和1 B非易失性的可電擦除的E2PROM,后者存放高溫度和低溫度觸發器TH,TL和結構寄存器,該字節第7位(TM)為0,低5位一直都是1,第6,5位(R1,R0)用來設置分辨率,如表1所示。
根據DS18B20的通信協議,主機控制DS18B20完成溫度轉換必須經過3個步驟:每一次讀寫之前都要對其進行復位,復位成功后發送1條ROM指令,最后發送RAM指令,這樣才能對DS18B20進行預定的操作。復位要求主CPU將數據線下拉500 μs,然后釋放,DS18B20收到信號后等待16~60 μs左右,后發出60~240 μs的存在低脈沖,主CPU收到此信號表示復位成功。由于DS18B20采用的是單線進行控制與讀取數據,因此對操作的時序要求非常嚴格,否則由于時序不匹配,將無法完成對器件的正確操作。
2.3 控制執行部分
(1) 壁掛爐燃燒系統控制。
控制電路采用了脈沖繼電器器件作為整個系統的總控部分,當所有居室溫度均達到設定值時,停止壁掛爐的工作。該繼電器的特點是:當線圈收到一個脈沖信號后,線圈通電,電磁鐵吸合,帶動觸頭閉合接通需要控制的電路,當下一個信號到來后,電磁鐵吸合,觸頭斷開,切斷被控制的電源,因此其具有自鎖和信號遙控功能。由于磁鐵的作用,控制脈沖消失后滑片位置不發生變化,保持穩定狀態,所以該器件具有功耗小、具有記憶功能。
(2) 居室溫度控制。
各居室溫度控制在燃燒控制系統工作前提下,根據各居室溫度測量返回值,采用上海歐凱電磁閥制造有限公司生產的OK6515自保持脈沖電磁閥控制各回路的通斷。脈沖電磁閥采用脈沖和永磁技術,只需通過控制器切換脈沖的電極觸點來改變電磁閥的開關狀態,當控制器發出電脈沖時,驅動閥芯克服永磁力產生上下移,使閥瓣到位后在永磁作用下處于自保持狀態。
2.4 圖形液晶顯示模塊
為了能夠提供形象直觀的用戶顯示界面,系統采用圖形液晶顯示模塊LCD12864,其具有8位標準數據總線、6條控制線及電源線,可與CPU直接接口,顯示各種字符及圖形。考慮到系統中漢字的使用量少,因此選用不帶漢字庫的LCD。對于使用的漢字分別提取其字模并以二進制形式保存于內部FLASHROM中。
3 系統軟件設計
系統軟件設計主要依據系統程序流程以及DS18B20的時序要求進行代碼編寫。為了降低開
發難度,提高開發效率,系統開發中引入了μC/OS-Ⅱ嵌入式操作系統并移植了LCD顯示驅動。另一方面,為了確保對DS18B20操作時序的精確性,對DS18B20進行初始化和讀寫代碼仍采用匯編語言。
3.1 系統數據結構
系統所需數據結構包括各測溫元件的序列號表,漢字字模存儲、系統運行時間表存儲、各溫控點的設定值及測量值、系統時間的存放及一些臨時數據存儲。
為了區別多個溫度傳感器,在系統初始化時讀入傳感器中的64位序列號,并將其存入程序存儲空間,以便程序運行期間進行比對,共需64 B。
漢字字模采用16×16字庫進行提取,其中每個漢字需32 B,約15個字,為了方便程序功能的升級改進,在程序存儲空間中按20個字進行空間分配,需要存儲空間640 B。
系統運行時間表的設計以小時為設置單位,需要保存24個值;為了減少時間比較過程中的數據計算量以及方便編程,對每個值采用一個字節存儲,這里共需24 B存儲空間,這里仍然使用程序存儲空間進行存儲,以便在系統掉電時設定值不會丟失。
3.2 系統程序設計
系統程序設計主要使用KeilC51進行編寫,但由于對DS18B20器件的讀寫時序要求比較嚴格,故采用匯編代碼,其中溫度讀取子程序主要代碼如下:
GET_TEM:…
MOV DPTR,DS_TABLE ;指向器件序號表入口
LOOP: MOV R7,7;逐個讀取溫度
MOVA,#055H ;ROM匹配
LCALL WRITE_SERIAL
LCALLDELAY
MOV A,#44H ;發出溫度轉換命令
LCALL WRITE_1820
LCALL DELAY ;延時750 μs(12位)
LCALL INIT_1820 ;準備讀溫度前先復位
LCALLDELAY
LCALLWRITE_1820
MOV A,#0BEH ;發出讀溫度命令
LCALL WRITE_1820
LCALL READ_18200;保存讀出的溫度數據
DJNZ R7,LOOP
CLR P1.4
RET
4 結 語
微型計算機在智能化電器發展中起著至關重要的作用,而單片機經濟實用、開發簡便,因而在工業控制、家電智能化等領域占據了廣泛的市場。這里針對目前溫度控制器現狀設計了一種新方案,利用單片機及新型測溫器件設計了一種多點溫控采暖控制系統,該系統能夠同時測量多點溫度,并根據溫度設定實時控制各回路通斷及壁掛爐的燃燒與停止,從而進一步提高居室的舒適性以及采暖系統的經濟性。
參考文獻
[1]胡學海.單片機原理及應用系統設計.北京:電子工業出版社,2007.
[2]張鑫.單片機原理及應用.北京:電子工業出版社,2005.
[3]Jean J Labrosse.嵌入式實時操作系統μCOS-Ⅱ.2版.邵貝貝,譯.北京:北京航空航天大學出版社,2003.
[4]楊屹.μCOS51 移植心得.http://blog.21ic.com/user1/2563/archives/2007/39152.html.
[5]徐卓農,張永忠.單片機系統中的漢字顯示.單片機與嵌入式系統應用,2001(7):132-136.
[6]傅勤毅,李海浪.單片機與液晶顯示器的接口及應用.今日電子,2005(6):70-72.
[7]佚名.數字溫度傳感器DS18B20資料[EB/OL].http://www.picavr.com/news/2008-02/4189.htm,2008.
[8]Dallas.DS18B20.pdf [EB/OL].http://cn.datasheet123.com/215746/DS18B20.html,2008
[9]馬忠梅,籍順心,張凱,等.單片機的C語言應用程序設計 [M].4版.北京:北京航空航天大學出版社,2007.
[10]張齊.單片機應用系統設計技術基于C語言[M].北京:電子工業出版社,2004.