摘 要:給出了一種采用C8051F020單片機(jī)實(shí)現(xiàn)紅外遙控電風(fēng)扇的系統(tǒng)方案。將紅外接收模塊、溫度采集電路、實(shí)時(shí)時(shí)鐘電路、報(bào)警電路和風(fēng)速控制電路置于電風(fēng)扇中,通過C8051F020單片機(jī)實(shí)現(xiàn)電風(fēng)扇風(fēng)速控制、定時(shí)功能和運(yùn)行模式切換功能,采用4×4鍵盤或者遙控器完成數(shù)據(jù)和控制指令的輸入,并通過TS1602 LCD完成基本的狀態(tài)數(shù)據(jù)和控制指令實(shí)時(shí)顯示等。實(shí)驗(yàn)結(jié)果表明:本系統(tǒng)能夠成功實(shí)現(xiàn)電風(fēng)扇的運(yùn)行模式切換、風(fēng)速控制和定時(shí)功能,自動(dòng)運(yùn)行模式下,風(fēng)速由環(huán)境溫度決定,溫度控制精度為±1 ℃。
關(guān)鍵詞:C8051F020單片機(jī); 紅外遙控; 模式切換; 風(fēng)速控制; 定時(shí)功能
中圖分類號(hào):
TN911-34; TP75
文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1004-373X(2011)19
-0119
-02
Design of Infrared Remote-control Fanner Based on C8051F020
CHEN Hong-min, YANG Ben-quan, WU Miao-qing, SHI Bao-cong
(Taizhou University, Taizhou 318000, China)
Abstract: A new method based on C8051F020 MCU is proposed to design infrared remote-control fanner. The control system consists of infrared receiver module, temperature collection module, clock circuit, alarm circuit and wind speed control circuit. C8051F020 MCU is used to realize wind speed control, timing and work mode switch. Control instruction and data are input by 4×4 keyboards and displayed by TS1602 LCD. Experiments show that the designed system can realize work mode switch, wind speed control and timing function. Wind speed is decided by environmental temperature and control precision is ±1℃ under self-work mode.
Keywords: C8051F020 MCU; infrared remote-control; work mode switch; wind speed control; timing function
目前市場(chǎng)上的風(fēng)扇多為機(jī)械方式控制和定時(shí),功能少,噪聲大,且不能根據(jù)實(shí)時(shí)的環(huán)境溫度改變風(fēng)速。本文介紹了一種基于C8051F020單片機(jī)的紅外遙控風(fēng)扇系統(tǒng)的設(shè)計(jì),巧妙利用紅外控制技術(shù),結(jié)合實(shí)時(shí)時(shí)鐘DS1302、溫度傳感器DS18B20和單片機(jī)C8051F020實(shí)現(xiàn)電風(fēng)扇的智能控制,運(yùn)行模式可切換。自動(dòng)運(yùn)行模式下,實(shí)時(shí)調(diào)整風(fēng)速有利于節(jié)能控制,符合現(xiàn)代電子產(chǎn)品自動(dòng)化、智能化、人性化的設(shè)計(jì)要求,可移植性強(qiáng),人機(jī)界面友好。
1 整體方案設(shè)計(jì)
方案的主要任務(wù)是實(shí)現(xiàn)電風(fēng)扇的智能控制,運(yùn)行模式可切換。手動(dòng)運(yùn)行模式下,遙控器或者鍵盤輸入數(shù)據(jù)和控制指令的輸入,單片機(jī)解碼成對(duì)應(yīng)的控制指令來完成對(duì)風(fēng)扇電路的智能控制。自動(dòng)運(yùn)行模式下,C8051F020單片機(jī)通過DS18B20測(cè)得實(shí)時(shí)環(huán)境溫度值,將溫度與風(fēng)速檔位設(shè)定值進(jìn)行比較后驅(qū)動(dòng)電風(fēng)扇相應(yīng)檔位工作。
2 硬件電路設(shè)計(jì)
2.1 硬件總體設(shè)計(jì)
整個(gè)系統(tǒng)主要由紅外遙控發(fā)射接收電路、鍵盤電路、實(shí)時(shí)時(shí)鐘電路、溫度采集電路、LCD顯示器、繼電器控制電路和單片機(jī)控制電路組成。其中,紅外發(fā)射電路和鍵盤電路(與遙控器命令匹配)用來輸入控制信號(hào);LCD是用來顯示控制命令、狀態(tài)信息、實(shí)時(shí)時(shí)間和實(shí)時(shí)溫度值;實(shí)時(shí)時(shí)鐘電路用于讀取實(shí)時(shí)時(shí)間;溫度采集電路用于實(shí)時(shí)監(jiān)測(cè)環(huán)境溫度,方便電風(fēng)扇在自動(dòng)運(yùn)行模式下工作;單片機(jī)是整個(gè)控制系統(tǒng)的核心,控制繼電器工作和電風(fēng)扇運(yùn)行。系統(tǒng)總體電路設(shè)計(jì)框圖如圖1所示。
圖1 系統(tǒng)框圖
2.2 紅外發(fā)射接收
紅外遙控有發(fā)送和接收兩個(gè)部分組成[1-2]。發(fā)射電路采用專用紅外發(fā)射IC SC6122和按鍵(與鍵盤輸入電路完全匹配)完成。接收部分采用一體化紅外遙控接收頭HS0038,將接收到的紅外信號(hào)送入C8051F020單片機(jī)外部中斷0,由單片機(jī)完成紅外數(shù)據(jù)的解碼。C8051F020內(nèi)置增強(qiáng)型數(shù)字交叉開關(guān),通過配置交叉開關(guān)控制寄存器XBR0和XBR2[3-4],將INT0配置在C8051F020的P0.2(INT0),完成串行數(shù)據(jù)的接收。
2.3 控制電路
MCU控制電路包括三個(gè)部分:控制信號(hào)輸入、繼電器控制電路和數(shù)據(jù)顯示部分。
控制信號(hào)輸入部分主要由C8051F020 I/O端口P1控制矩陣式4×4鍵盤完成。使用矩陣式鍵盤,具有占用I/O資源少,程序編制簡(jiǎn)單等特點(diǎn)。鍵盤控制電路主要完成風(fēng)速、定時(shí)、運(yùn)行模式等控制命令的輸入。采用4×4矩陣鍵盤,用于非遙控工作時(shí),按鍵驅(qū)動(dòng)電扇工作,即機(jī)械方式驅(qū)動(dòng),按鍵功能如圖2所示。自動(dòng)/手動(dòng)為功能切換按鍵,在自動(dòng)和手動(dòng)之間進(jìn)行切換,定時(shí)時(shí)間和風(fēng)速控制根據(jù)需要選擇相應(yīng)檔位。
圖2 4×4鍵盤說明
SET定時(shí)60min4檔開/關(guān)+定時(shí)90min導(dǎo)風(fēng)1檔-定時(shí)120min定時(shí)20min2檔NC自動(dòng)/手動(dòng)定時(shí)40min3檔
繼電器控制電路主要由MCU I/O端口P3口控制7個(gè)繼電器完成。繼電器分別控制系統(tǒng)開關(guān)、定時(shí)時(shí)間、導(dǎo)風(fēng)和風(fēng)速檔位選擇。
顯示部分通過C8051F020的端口P2作為與LCD1602通信的8位數(shù)據(jù)線,主要完成通信數(shù)據(jù)和狀態(tài)信息的顯示。
2.4 溫度采集和實(shí)時(shí)時(shí)鐘電路
環(huán)境溫度檢測(cè)部分是控制風(fēng)扇自動(dòng)工作的關(guān)鍵。系統(tǒng)在自動(dòng)運(yùn)行模式下,根據(jù)實(shí)時(shí)采樣的溫度值,選擇相應(yīng)的控制繼電器驅(qū)動(dòng)相應(yīng)的風(fēng)速檔位[5-6]。采用Dallas公司的DS18B20 1-wire數(shù)字溫度傳感器,使用一根信號(hào)線實(shí)現(xiàn)信號(hào)的雙向傳輸,接口簡(jiǎn)單,便于擴(kuò)展和維護(hù)[7]。溫度設(shè)定范圍為25~36 ℃,每3 ℃一個(gè)風(fēng)速控制檔位,溫度設(shè)定值超過范圍報(bào)警指示。
實(shí)時(shí)時(shí)鐘電路實(shí)時(shí)刷新電風(fēng)扇的當(dāng)前時(shí)間。采用Dallas的高性能、低功耗、帶RAM的I2C總線的串行時(shí)鐘/日歷芯片DS1302[8]。I2C總線通過使能交叉開關(guān)配置在C8051F020的P0.0(SDA)和P0.1(SCL),完成DS1302的初始化和時(shí)間數(shù)據(jù)的傳輸。
2.5 系統(tǒng)供電
系統(tǒng)正常工作需要+5 V和+3.3 V電壓供電。將市電220 V/50 Hz通過9 V/10 W變壓器降壓變換后,經(jīng)過電橋整流和濾波產(chǎn)生直流電9 V,通過LM7805穩(wěn)壓芯片輸出穩(wěn)定+5 V給LCD1602顯示模塊和繼電器供電,C8051F020,DS1302和DS18B20由+5 V經(jīng)過ASM1117-3.3 V供電,電風(fēng)扇電機(jī)部分直接由市電220 V/50 Hz供給。遙控器發(fā)射部分供電由3 V紐扣電池提供,DS1302采用3 V紐扣電池做備用供電電源,確保時(shí)間的準(zhǔn)確。
3 軟件設(shè)計(jì)
系統(tǒng)軟件主要包括單片機(jī)控制部分軟件設(shè)計(jì)。單片機(jī)控制部分軟件設(shè)計(jì)主要完成以下功能:當(dāng)有紅外信號(hào)被接收或者按鍵輸入時(shí),觸發(fā)中斷或者進(jìn)行鍵盤掃描處理,單片機(jī)內(nèi)部進(jìn)行解碼,產(chǎn)生控制命令或者溫度數(shù)據(jù)設(shè)定參數(shù)[9-10]。單片機(jī)通過產(chǎn)生的控制命令和數(shù)據(jù)參數(shù),控制各個(gè)繼電器的動(dòng)作、溫度設(shè)定、超限報(bào)警指示和狀態(tài)顯示等功能。
基于C8051F020單片機(jī)控制遙控電風(fēng)扇系統(tǒng)控制流程圖如圖3所示。
圖3 系統(tǒng)控制流程圖
電風(fēng)扇在自動(dòng)運(yùn)行模式下,單片機(jī)采集當(dāng)前環(huán)境溫度,并與溫度設(shè)定值進(jìn)行比較,選擇相應(yīng)的風(fēng)速檔位,驅(qū)動(dòng)某一個(gè)或者幾個(gè)繼電器工作。例如,通過遙控器或者鍵盤按鍵SET,+,-鍵設(shè)定規(guī)定下限溫度為25 ℃,以3 ℃為一檔風(fēng)速檔位遞增,實(shí)際溫度為29 ℃,額定值與實(shí)際值之間溫差為4 ℃,溫差3 ℃內(nèi)為1檔,所以判定后風(fēng)扇工作在2檔位置。
上述紅外遙控編碼解碼后,通過C8051F020單片機(jī)指令控制繼電器,并對(duì)電風(fēng)扇和單片機(jī)接口電路調(diào)試。通過對(duì)系統(tǒng)進(jìn)行實(shí)際驗(yàn)證效果如圖4所示。