【摘 要】主要介紹了太陽能熱水器的檢測(cè)控制系統(tǒng)的硬件設(shè)計(jì)和軟件設(shè)計(jì)。將低價(jià)位的單片機(jī)引入太陽能熱水器中,以AT89C52 為核心, 實(shí)時(shí)采集溫度和水位數(shù)據(jù), 并設(shè)置報(bào)警系統(tǒng),具備水溫水位及時(shí)間的顯示功能,實(shí)現(xiàn)了太陽能熱水器的水溫水位的檢測(cè)與控制,在生產(chǎn)生活中將起到很大的作用。
【關(guān)鍵詞】AT89C52單片機(jī);溫度檢測(cè)與控制;水位檢測(cè)與控制;LED顯示
在全球提倡綠色環(huán)保并采用新型能源的今天,太陽能熱水器得到了廣泛的應(yīng)用,因?yàn)槠涔?jié)省能源,沒有污染,并且使用方便。在太陽能熱水器的整個(gè)系統(tǒng)中,起到至關(guān)重要的作用的中心環(huán)節(jié)就是檢測(cè)控制系統(tǒng)??刂破鞑粌H實(shí)現(xiàn)了對(duì)水溫,水位的檢測(cè)與控制,而且也實(shí)現(xiàn)了對(duì)時(shí)間,日期的控制及顯示。但目前市場(chǎng)上太陽能熱水器的控制系統(tǒng)大部分都存在功能單一、操作復(fù)雜、控制不方便等或多或少的缺點(diǎn)。隨著科學(xué)技術(shù)的發(fā)展,人們生活水平的提高,對(duì)太陽能控制系統(tǒng)也就提出了更高的要求,所以開發(fā)一種控制方便,操作靈活的太陽能熱水器的控制系統(tǒng)是當(dāng)務(wù)之急。
1.控制器系統(tǒng)的總體設(shè)計(jì)
1.1系統(tǒng)的總體要求
本控制器有主從兩個(gè)系統(tǒng),主控系統(tǒng)以AT89C52單片機(jī)為核心控制整個(gè)系統(tǒng),選用合適傳感器及接口,鍵盤,顯示電路,實(shí)現(xiàn)太陽能熱水器的溫度,壓力,時(shí)間檢測(cè)與控制;從控系統(tǒng)是輔助加熱系統(tǒng),在陰天下雨等陽光不充足的情況下,從控系統(tǒng)對(duì)水進(jìn)行加熱,以達(dá)到24小時(shí)都能夠供應(yīng)熱水的目的。所以本設(shè)計(jì)既充分利用太陽能的豐富的免費(fèi)的資源,又能在陰天及夜間無法利用太陽能的時(shí)對(duì)蓄水箱加熱。
1.2系統(tǒng)的組成
太陽能熱水器的控制器主要由主控制器(即單片機(jī)),溫度檢測(cè)單元,水位檢測(cè)單元以及輔助加熱單元組成。各個(gè)單元發(fā)揮各自不同的作用及功能。外接顯示器以及按鍵作為人機(jī)交流介質(zhì)。
太陽能熱水器控制器結(jié)構(gòu)如圖1所示。
圖1 太陽能熱水器控制器的結(jié)構(gòu)圖
2.系統(tǒng)的硬件設(shè)計(jì)
2.1溫度檢測(cè)電路設(shè)計(jì)
為了實(shí)現(xiàn)對(duì)水箱內(nèi)水溫的實(shí)時(shí)檢測(cè),蓄水箱溫度檢測(cè)電路采用DS18B20傳感器,它的精度高、互換性好,只使用一根電纜遠(yuǎn)距離傳輸溫度數(shù)據(jù),抗干擾性好。通過測(cè)量輸出脈沖頻率的大小來換算成水溫信號(hào),再將溫度信號(hào)轉(zhuǎn)換成脈沖電信號(hào),將溫度數(shù)據(jù)進(jìn)行編碼送到AT89C52的I/O 口(編程為計(jì)數(shù)器工作模式)P1.3口,單片機(jī)通過讀取該線數(shù)據(jù),經(jīng)處理后送LCD12864顯示,溫度檢測(cè)電路如圖2所示。 圖2 溫度檢測(cè)電路
2.2水位檢測(cè)電路
水位檢測(cè)電路利用了水具有導(dǎo)電的性質(zhì)。
在此設(shè)計(jì)中有四個(gè)水位段,分別是低水位、中水位、高水位和超高水位,水位由潛入太陽能熱水器的儲(chǔ)水箱不同深度的水位電極和潛入儲(chǔ)水箱底部的公共電極(導(dǎo)線)進(jìn)行檢測(cè),共5個(gè)電極。每檢測(cè)到水位到達(dá)的電極,電路便得到一位數(shù)據(jù),待檢測(cè)一遍以后便得到了5個(gè)串行數(shù)據(jù),然后把這5個(gè)數(shù)據(jù)轉(zhuǎn)化為字節(jié)一路送發(fā)光二極管,我們可以用發(fā)光二極管亮的盞數(shù)來顯示水位的高低。
2.3控制器時(shí)鐘接口電路設(shè)計(jì)
采用美國(guó)DALLAS半導(dǎo)體公司最新推出的時(shí)鐘芯片DS12887,為單片機(jī)中斷線IN TO提供中斷信號(hào)的是P3.2。SQW端口輸出頻率為2Hz方波,經(jīng)二分頻后,驅(qū)動(dòng)顯示時(shí)鐘秒閃爍的兩個(gè)LED發(fā)光二極管。時(shí)鐘接口電路如圖3所示。
圖 3 時(shí)鐘接口電路
2.4顯示接口電路的設(shè)計(jì)
為了實(shí)現(xiàn)對(duì)水溫水位以及時(shí)間的形象顯示,本設(shè)計(jì)采用FYD12864-0402B液晶顯示模塊。該模塊為128 64點(diǎn)陣顯示,不僅能顯示漢字,而且可以顯示圖像,可以使實(shí)用者的操作更為簡(jiǎn)單,清晰。
采用的AT89S52和液晶12864LCD模塊的接口電路如圖4所示。由于12864采用串口通信,其特點(diǎn)是占用單片機(jī)口線少,電路簡(jiǎn)單、直觀、操作方便。
圖4 顯示接口電路
2.5單片機(jī)復(fù)位電路的設(shè)計(jì)
2.5.1上電復(fù)位電路
設(shè)計(jì)中用的是上電復(fù)位,是指單片機(jī)只要一上電,便自動(dòng)的進(jìn)入復(fù)位狀態(tài),當(dāng)采用的晶體頻率為12MHZ時(shí),可采取C=10uF,R=8.2KΩ。
2.5.2晶振電路
單片機(jī)的時(shí)鐘信號(hào)通常用兩種電路形式得到:內(nèi)部振蕩方式和外部震蕩方式。本設(shè)計(jì)采用內(nèi)部震蕩方式。XTAL1為內(nèi)部時(shí)鐘工作電路的輸入,XTAL2為來自反向振蕩器的輸出,在這兩個(gè)引腳端外接石英晶體振蕩器,形成自激振蕩電路,并產(chǎn)生震蕩時(shí)鐘脈沖。
上電復(fù)位電路和晶振電路如圖5所示。
圖5 上電復(fù)位電路和晶振電路
2.6光電隔離與輔助加熱電路設(shè)計(jì)
在陽光充足時(shí),熱水器能夠正常加熱工作,但是在陰雨天,由于陽光不足,水溫有時(shí)會(huì)達(dá)不到所需的設(shè)定溫度。因此本設(shè)計(jì)給出了一套從系統(tǒng),即輔助加熱系統(tǒng),在光線不足的時(shí)候,可以啟動(dòng)次從系統(tǒng)對(duì)水箱中的水進(jìn)行加熱,以實(shí)現(xiàn)熱水的連續(xù)供應(yīng)。
光耦合器選用型號(hào)6N137,續(xù)流二極管選用型號(hào)IN4007,繼電器選用型號(hào)HLR1000-240DT1H2Q。
當(dāng)單片機(jī)AT89C51的P3.3口輸出高電平時(shí),三極管V1導(dǎo)通,致使發(fā)光二極管發(fā)光,同時(shí)光敏三極管導(dǎo)通,繼電器閉合,電阻絲R10~R14發(fā)熱,這樣就完成了加熱任務(wù),此電路雖然簡(jiǎn)單,但在太陽能熱水器中是必不可少的,光電隔離與輔助加熱電路如圖6所示。
圖6 光電隔離與輔助加熱電路
3.系統(tǒng)的軟件設(shè)計(jì)
控制系統(tǒng)的軟件是服務(wù)于硬件的,系統(tǒng)將實(shí)時(shí)采集到的數(shù)據(jù)與相應(yīng)的設(shè)定值進(jìn)行比較、判斷,結(jié)果是控制循環(huán)水泵或上水電磁閥的工作,實(shí)現(xiàn)各種智能控制。同時(shí),軟件還要兼顧到操作人員方便地選擇工作方式、設(shè)置和修改各種設(shè)定值,因?yàn)槿藗兛梢愿鶕?jù)天氣情況及用戶的需要選擇定時(shí)加熱狀態(tài)、自動(dòng)加熱狀態(tài)。軟件還要設(shè)定以太陽能為優(yōu)先使用的能源,只有在太陽能沒有將水溫加熱到用戶要求的溫度下,才啟動(dòng)輔助能源進(jìn)行加熱。
整個(gè)系統(tǒng)的控制程序采用MCS-51匯編語言編寫,軟件系統(tǒng)由主程序和子程序組成。 圖7 系統(tǒng)主程序流程圖
子程序要實(shí)現(xiàn)各種功能,包括:初始化子程序、裝載設(shè)定值子程序、加熱子程序、定時(shí)中斷服務(wù)子程序、溫差跟蹤循環(huán)子程序、手動(dòng)檢測(cè)子程序、顯示子程序、鍵處理子程序、水位檢測(cè)子程序、報(bào)警子程序等。
主程序主要實(shí)現(xiàn)對(duì)系統(tǒng)加熱、設(shè)定值、手動(dòng)檢測(cè)三種工作方式的選擇,主程序流程圖如圖7所示。
3.1溫度和時(shí)間設(shè)定設(shè)計(jì)
設(shè)定值主要是完成溫度和時(shí)間設(shè)定。
對(duì)于對(duì)溫度的設(shè)定,每次開機(jī)系統(tǒng)都要從DS1288讀取設(shè)定值,如果系統(tǒng)沒有設(shè)定值,系統(tǒng)就默認(rèn)為前次關(guān)機(jī)時(shí)的設(shè)定值,所以無需每次開機(jī)都要從頭設(shè)定。對(duì)時(shí)間的設(shè)定,一般采用模糊控制的思路,對(duì)水位、溫差與加熱時(shí)間長(zhǎng)短對(duì)應(yīng)分出幾檔,加熱前對(duì)檢測(cè)水位及溫差,就可對(duì)照相應(yīng)檔的加熱時(shí)間,這樣就可以計(jì)算出提前加熱的時(shí)間,實(shí)現(xiàn)系統(tǒng)的預(yù)定功能。
3.2水位檢測(cè)子程序設(shè)計(jì)
系統(tǒng)采用分段式水位檢測(cè),共四段水位,當(dāng)水位低于設(shè)定最小值時(shí),系統(tǒng)自動(dòng)上水補(bǔ)給。當(dāng)?shù)竭_(dá)設(shè)定水位最大值時(shí),給水停止。從而時(shí)間循環(huán)不間斷供水。
3.3鍵盤掃描子程序設(shè)計(jì)
系統(tǒng)采用獨(dú)立式鍵盤。通過判斷那個(gè)鍵按下,從而轉(zhuǎn)到相應(yīng)的程序進(jìn)行處理。實(shí)現(xiàn)功能設(shè)置以及設(shè)定時(shí)間,水溫及水位功能。功能按鍵按一次為水溫設(shè)計(jì)模式。兩次為水位設(shè)置模式,三次進(jìn)入時(shí)間調(diào)節(jié)模式。
3.4顯示子程序設(shè)計(jì)
為了形象的顯示出當(dāng)前的時(shí)間水溫及水位,本系統(tǒng)采用LCD12864點(diǎn)陣液晶顯示模塊作為顯示部分。此液晶顯示模塊是128×64點(diǎn)陣的漢字圖形型液晶顯示模塊??娠@示漢字及圖形。
4.結(jié)束語
本系統(tǒng)的設(shè)計(jì)基于節(jié)能減排的目的,具有控制與顯示精度高、可靠性好,按鍵較少、易于控制的特點(diǎn),而且價(jià)格低廉,容易讓廣大用戶接受。
【參考文獻(xiàn)】
[1]楊麗君.AT89C51單片機(jī)控制的多路溫度檢測(cè)系統(tǒng).自動(dòng)化與儀表,2000(3):66-68.
[2]劉福才,樸春俊,劉豐.基于DS12887的太陽能熱水器只能控制的設(shè)計(jì)[J].自動(dòng)化與儀表,2000(4):15-17.
[3]王彤.太陽能熱水器自動(dòng)溫度控制器設(shè)[J].儀器儀表用戶,2004,05:38-39.
[4]李全利.單片機(jī)原理及接口技術(shù)[M].北京:高等教育出版社,2007.
[5]王俊杰.基于AT89C51單片機(jī)的太陽能熱水器智能控制器的設(shè)計(jì)[J].鄭州輕工業(yè)學(xué)院學(xué)報(bào)(自然科學(xué)版),2005(3):67-68.