楊春麗
(大理大學(xué)工程學(xué)院,云南 大理 671003)
隨著當(dāng)今人們生活品質(zhì)的提高以及工業(yè)、農(nóng)業(yè)生產(chǎn)等的需求,需要對(duì)環(huán)境溫度進(jìn)行檢測(cè)和控制的場(chǎng)合也越來(lái)越多。當(dāng)環(huán)境溫度超過(guò)預(yù)期時(shí),需要加入各種冷卻系統(tǒng),以達(dá)到降溫的目的。常用的冷卻系統(tǒng)有水冷卻系統(tǒng)、油冷卻系統(tǒng)、空氣冷卻系統(tǒng)等。
這些冷卻系統(tǒng)各具優(yōu)缺點(diǎn)。以水冷卻系統(tǒng)為例,其原理為:以冷卻液為冷卻介質(zhì),熱量先由機(jī)件傳給水,靠水的流動(dòng)把熱量帶走散入大氣,散熱后的水再重新流回到受熱機(jī)件處。其優(yōu)點(diǎn)為散熱效果好,不易受到灰塵的干擾,水路和冷卻強(qiáng)度可適當(dāng)調(diào)節(jié),能較好地保持發(fā)動(dòng)機(jī)的正常工作溫度;缺點(diǎn)為水冷需要安裝冷卻水塔、水泵,成本太高,不適合一般用戶使用。風(fēng)冷系統(tǒng)則是以空氣為冷卻介質(zhì),通過(guò)風(fēng)扇強(qiáng)制對(duì)流,利用風(fēng)扇將高溫零件的熱量直接散入大氣。其優(yōu)點(diǎn)是零件少,沒(méi)有漏水、冰凍、結(jié)垢等故障,質(zhì)量輕,制造成本低,功率利用率高,使用維護(hù)方便,環(huán)境適應(yīng)性好,啟動(dòng)后暖機(jī)時(shí)間短等。
在實(shí)際使用中,大型機(jī)器使用水冷卻系統(tǒng)會(huì)更加穩(wěn)定,而風(fēng)冷系統(tǒng)則更適用于中小型機(jī)組、狹小空間的冷卻要求。
針對(duì)狹小空間散熱問(wèn)題及傳統(tǒng)風(fēng)冷系統(tǒng)無(wú)法根據(jù)當(dāng)前環(huán)境溫度實(shí)現(xiàn)風(fēng)扇轉(zhuǎn)速調(diào)節(jié)及自動(dòng)啟停的問(wèn)題,設(shè)計(jì)了一種脈沖寬度調(diào)制(pulse width modulation,PWM)溫控風(fēng)冷系統(tǒng)。系統(tǒng)以AT89C52單片機(jī)作為主控芯片,利用DS18B20采集外界實(shí)時(shí)環(huán)境溫度并借助數(shù)碼管加以顯示。當(dāng)環(huán)境溫度在20~35 ℃時(shí),利用單片機(jī)定時(shí)器控制I/O口輸出占空比為75%的脈沖信號(hào)調(diào)節(jié)風(fēng)扇電機(jī)轉(zhuǎn)速,此時(shí)數(shù)碼管顯示為1檔;當(dāng)環(huán)境溫度高于35 ℃時(shí),電機(jī)全速轉(zhuǎn)動(dòng)(此時(shí)I/O口輸出占空比為100%的脈沖信號(hào)),并發(fā)出聲光報(bào)警,此時(shí)數(shù)碼管顯示為2檔;當(dāng)環(huán)境溫度低于20℃時(shí),電機(jī)自動(dòng)停止,此時(shí)數(shù)碼管顯示為0檔。系統(tǒng)還具有利用LED燈和蜂鳴器發(fā)出聲光報(bào)警以及重置控制溫度等多重功能。當(dāng)環(huán)境溫度超過(guò)系統(tǒng)規(guī)定的上下限閾值時(shí),系統(tǒng)會(huì)自動(dòng)發(fā)出聲光雙重報(bào)警[1]。系統(tǒng)已通過(guò)Keil Uvision軟件測(cè)試及硬件電路測(cè)試。
系統(tǒng)原理如圖1所示。
圖1 系統(tǒng)原理框圖
溫控風(fēng)冷系統(tǒng)硬件電路設(shè)計(jì)涉及系統(tǒng)主控芯片、溫度傳感器、電機(jī)驅(qū)動(dòng)芯片、顯示器件、預(yù)警電路、按鍵等硬件電路的選型和電路連接[2]。
本系統(tǒng)選用了40引腳雙列直插式AT89C52單片機(jī)作為主控芯片。AT89C52是一款工作電壓范圍為3.3~5.5 V的高性能的8位單片機(jī)。AT89C52有6路中斷源和32位并行通用的I/O端口、3個(gè)16位的定時(shí)器/計(jì)數(shù)器,片內(nèi)含有8 KB的、可反復(fù)擦寫的Flash ROM和256 B的RAM[3-4]??刹捎肅語(yǔ)言或匯編語(yǔ)言對(duì)AT89C52單片機(jī)編程。本系統(tǒng)采用的編程語(yǔ)言為C語(yǔ)言。
DS18B20是一款可直接輸出數(shù)字信號(hào)、集溫度采集和A/D轉(zhuǎn)換于一體的數(shù)字式溫度傳感器。其工作電壓范圍為3~5 V,與AT89C52單片機(jī)工作電壓基本一致。DS18B20使用簡(jiǎn)便,只需一條總線即可實(shí)現(xiàn)與單片機(jī)的雙向通信[5]。DS18B20測(cè)溫范圍為-55~+125 ℃,能夠滿足本系統(tǒng)的設(shè)計(jì)要求。當(dāng)在-10~+85 ℃范圍內(nèi)時(shí),可確保測(cè)量誤差不超過(guò)0.5 ℃[6]。
本系統(tǒng)中,DS18B20與單片機(jī)I/O口的接線如圖2所示。
圖2 DS18B20接線圖
L9110是一款為控制和驅(qū)動(dòng)電機(jī)設(shè)計(jì)的兩通道推挽式功率放大專用H橋驅(qū)動(dòng)集成芯片。該芯片有2個(gè)TTL/CMOS兼容電平的輸入,其工作電壓范圍為2.5~12 V,可直接與單片機(jī)I/O端口連接。 L9110具有良好的抗干擾性,2個(gè)輸出端能直接驅(qū)動(dòng)電機(jī)的正反向轉(zhuǎn)動(dòng)。它具有較大的電流驅(qū)動(dòng)能力,每通道能通過(guò)750~800 mA 的持續(xù)電流,峰值電流可達(dá)1.5~2.0 A。同時(shí),它具有較低的輸出飽和壓降,內(nèi)置的鉗位二極管能釋放感性負(fù)載的反向沖擊電流,使它在驅(qū)動(dòng)繼電器、直流電機(jī)、步進(jìn)電機(jī)或開(kāi)關(guān)功率管的使用上安全、可靠。L9110 被廣泛應(yīng)用于直流電機(jī)、步進(jìn)電機(jī)驅(qū)動(dòng)和開(kāi)關(guān)功率管等電路上。
本系統(tǒng)中,L9110與單片機(jī)I/O口的接線如圖3所示。
圖3 L9110接線圖
常用的顯示器件有數(shù)碼管、LCD1602液晶顯示屏等。本系統(tǒng)為了節(jié)約成本及便于編程,采用數(shù)碼管作為溫度顯示器件。數(shù)碼管是一種由8個(gè)LED發(fā)光二極管按照一定的方式連接而成的字符顯示器件。按照連接方式發(fā)光二極管又分為共陰極數(shù)碼管和共陽(yáng)極數(shù)碼管。若將所有發(fā)光二極管的陰極接到一起,則形成共陰極數(shù)碼管[7]。若要點(diǎn)亮共陰極數(shù)碼管上某一發(fā)光二極管點(diǎn)亮,則應(yīng)將數(shù)碼管共陰極接到低電平,將要點(diǎn)亮的發(fā)光二級(jí)管接高電平[7]。共陽(yáng)極數(shù)碼管點(diǎn)亮方式與之相反。本系統(tǒng)采用共陰極數(shù)碼管作為顯示器件。
此外,系統(tǒng)用到3個(gè)按鍵實(shí)現(xiàn)調(diào)速溫度及報(bào)警溫度的設(shè)置,以便實(shí)現(xiàn)人機(jī)交互。通過(guò)按鍵調(diào)整調(diào)速溫度及報(bào)警溫度值,使系統(tǒng)應(yīng)用更加靈活。此模塊由兩部分組成,一部分是連接單片機(jī)P3.1~P3.3引腳的溫度調(diào)整按鍵(SET、DEC、ADD),另一部分是連接單片機(jī)P1.2引腳的報(bào)警指示燈及P3.6引腳的蜂鳴器。
如果需要改變控制溫度上限閾值,則按下SET按鍵一次后,再按ADD(+)、DEC(-)按鍵調(diào)整上限溫度。此時(shí),數(shù)碼管顯示模塊同步顯示溫度值設(shè)置。若要調(diào)整控制溫度下限閾值,則按下SET按鍵二次后,再按ADD(+)、DEC(-)按鍵調(diào)整下限溫度。此時(shí),數(shù)碼管顯示模塊同步顯示溫度值設(shè)置。當(dāng)按下SET按鍵三次或沒(méi)有按下SET按鍵時(shí),控制溫度處于鎖定狀態(tài)。
系統(tǒng)采用模塊化編程的方式,分別設(shè)計(jì)了DS18B20測(cè)溫程序、PWM脈寬調(diào)速程序、按鍵掃描程序、數(shù)碼管顯示程序、聲光報(bào)警程序及主程序,并對(duì)各部分子程序進(jìn)行組裝。
DS18B20測(cè)溫程序主要包括初始化子程序、總線讀取子程序和總線寫入程序3個(gè)操作,且都必須嚴(yán)格遵循時(shí)序要求[8]。DS18B20初始化程序相當(dāng)于在單片機(jī)和傳感器之間建立了通信橋梁,為后面的操作作準(zhǔn)備[8]。初始化完畢,傳感器處于既可讀取又可寫入的狀態(tài)。單片機(jī)向DS18B20寫數(shù)據(jù),是指令和數(shù)據(jù)發(fā)送的基本操作,采用位右移操作實(shí)現(xiàn)低位在前高位在后的逐位寫入,主要包括寫“0”和寫“1”這2種時(shí)序[8]。單片機(jī)從DS18B20讀取數(shù)據(jù),包括溫度的采集和其他狀態(tài)信息的回傳,也是以位為單位,包括讀“0”和讀“1”2種時(shí)序。每次溫度轉(zhuǎn)換一般都經(jīng)過(guò)復(fù)位操作、發(fā)送ROM指令、發(fā)送RAM指令這3個(gè)步驟,然后讀取溫度[8-10]。
DS18B20測(cè)溫流程如圖4所示。
圖4 DS18B20測(cè)溫流程圖
PWM是利用微處理器的數(shù)字輸出來(lái)對(duì)模擬電路進(jìn)行控制的一種非常有效的技術(shù),被廣泛應(yīng)用于測(cè)量、通信、功率控制與變換等許多領(lǐng)域。直流電機(jī)PWM脈寬調(diào)速就是在直流電源電壓基本不變的情況下,通過(guò)改變電子開(kāi)關(guān)的通斷時(shí)間,來(lái)改變施加到電機(jī)電樞端的直流電壓脈沖寬度,以調(diào)節(jié)輸入電機(jī)電樞電壓平均值的調(diào)速方式[9]。
脈沖寬度越大,提供給電機(jī)的平均電壓越高,電機(jī)轉(zhuǎn)速越快;反之,脈沖寬度越小,提供給電機(jī)的平均電壓越低,電機(jī)轉(zhuǎn)速越慢。本應(yīng)用系統(tǒng)中,利用了定時(shí)器T0的中斷函數(shù),實(shí)現(xiàn)了PWM調(diào)速。
在整個(gè)設(shè)計(jì)中,主程序一方面負(fù)責(zé)讀出DS18B20所測(cè)量的溫度值,并借助數(shù)碼管加以顯示;另一方面根據(jù)當(dāng)前實(shí)時(shí)溫度,確定PWM調(diào)速方案。程序開(kāi)始執(zhí)行時(shí),溫度傳感器所測(cè)量到的溫度值通過(guò)P3.5引腳輸入單片機(jī),經(jīng)過(guò)處理后的溫度數(shù)據(jù)再通過(guò)單片機(jī)輸出到數(shù)碼管顯示。同時(shí),還可通過(guò)按鍵來(lái)調(diào)整溫控檔位。當(dāng)超過(guò)上限溫度時(shí),風(fēng)扇電機(jī)全速轉(zhuǎn)動(dòng),同時(shí)通過(guò)單片機(jī)P1.2、P3.6引腳發(fā)出聲光報(bào)警。
系統(tǒng)程序的總體框架如下。
#include
#include
#include "eeprom52.h"
……
//各部分子函數(shù)定義
void main()
//主函數(shù)
{
init_eeprom();
//開(kāi)機(jī)自檢eeprom保存的上、下限溫度值
ReadTemperature();
//讀取溫度并顯示
InitT0();
//定時(shí)器T0初始化
while(1)
{
if(js>=50)
//每隔1 s讀取一次溫度
{
ReadTemperature();
//讀取溫度并顯示
js=0;
// js變量清零,為下1 s讀取溫度計(jì)時(shí)
}
zi_dong();
//判斷當(dāng)前溫度需要啟動(dòng)哪一個(gè)PWM溫控模式}
}
void T0_TIME() interrupt 1{…}
//定時(shí)器中斷函數(shù),用于PWM調(diào)速
主程序流程如圖5所示。
圖5 主程序流程圖
系統(tǒng)經(jīng)過(guò)軟、硬件測(cè)試和實(shí)際驗(yàn)證,溫度真實(shí)值與測(cè)量值對(duì)比如表1所示。
表1 溫度真實(shí)值與測(cè)量值對(duì)比
經(jīng)測(cè)試,系統(tǒng)誤差小于0.5 ℃。測(cè)試結(jié)果表明:系統(tǒng)的精確度較高、實(shí)用性較強(qiáng)。
本文介紹了一種適用于狹小空間散熱的PWM溫控風(fēng)冷系統(tǒng)的設(shè)計(jì)方法。系統(tǒng)以AT89C52單片機(jī)作為主控芯片,利用數(shù)字溫度傳感器DS18B20檢測(cè)當(dāng)前環(huán)境溫度并借助數(shù)碼管加以顯示。單片機(jī)根據(jù)當(dāng)前實(shí)時(shí)環(huán)境溫度控制I/O口產(chǎn)生脈寬可調(diào)的電信號(hào),控制與之連接的風(fēng)扇電機(jī)的轉(zhuǎn)速,從而實(shí)現(xiàn)PWM脈寬調(diào)速。本文已對(duì)系統(tǒng)方案設(shè)計(jì)、器件選型、硬件連接和軟件設(shè)計(jì)等幾部分內(nèi)容作了詳細(xì)說(shuō)明。經(jīng)測(cè)試,系統(tǒng)具有測(cè)溫精度高、散熱效果好、生產(chǎn)成本低、節(jié)能環(huán)保等優(yōu)點(diǎn),可應(yīng)用于空調(diào)、冰箱等電器的散熱系統(tǒng),具有較好的應(yīng)用前景。