摘 要: 日常生活中,,電動玩具,、電動車、手機(jī)電池等電子產(chǎn)品的充電電池壽命都是有限的,,充電時間過長容易損壞電池,而且長時間充電浪費電力,。而有些功能單一的電器又沒有定時開關(guān)功能,。利用定時插座充電可以節(jié)約電力,也可以防止由于充電過久而影響電池壽命,;使用定時插座控制功能單一的電器,,可以為其提供定時功能,更大程度地滿足人們生活需要,。設(shè)計了一個以STC89C52單片機(jī)為控制核心的定時開關(guān)插座,,可以控制220 V/10 A的插座,在24 h內(nèi)可預(yù)先設(shè)定定時范圍,,同時還能通過紅外遙控遠(yuǎn)距離控制插座的開關(guān),。
關(guān)鍵詞: 定時插座;單片機(jī),;遙控,;繼電器
0 引言
如果把每件電器都做成智能型電器顯然會大大提高產(chǎn)品成本,而有些本來價格就低的簡單電器更是沒有必要增加智能功能,。另一方面隨著人們生活水平的提高,,對電器的智能化要求卻越來越高。為此,,本文設(shè)計了一個通用的智能定時插座,,從而在不增加簡單電器成本的基礎(chǔ)上為它們提供一定的定時功能。該插座基于單片機(jī)設(shè)計,,具有成本低,、效益高,、智能化等優(yōu)點。一個插座可以供許多電器使用,,可實現(xiàn)定時,、預(yù)設(shè)、遙控等功能,。
1 系統(tǒng)方案設(shè)計
定時插座系統(tǒng)在未做任何操作時顯示當(dāng)前時間,。按下設(shè)置鍵會進(jìn)入設(shè)置界面,每按一下設(shè)置鍵就進(jìn)入下一個功能界面,,然后可以進(jìn)行相應(yīng)設(shè)置,。依次可進(jìn)行時間、定時,、預(yù)約的設(shè)置,。可實現(xiàn)24 h內(nèi)定時開關(guān)機(jī),,或一定時間段的開關(guān),,從而控制電器的工作狀態(tài)。也可以通過紅外遙控實現(xiàn)對系統(tǒng)的設(shè)置和對開關(guān)的通斷,。
總體硬件電路框圖如圖1所示[1],。
1.1 單片機(jī)芯片的選擇
本設(shè)計采用STC89C52主控芯片。STC89C52是宏晶公司生產(chǎn)的40引腳雙列直插芯片,,具有體積小,、重量輕、單一電源,、功耗低,、功能強(qiáng)、價格低廉,、運(yùn)算速度快,、抗干擾能力強(qiáng)、可靠性高等優(yōu)點,,特別適用于實時測控系統(tǒng),,應(yīng)用領(lǐng)域很廣,已成為傳統(tǒng)工業(yè)技術(shù)改造,、各類產(chǎn)品更新?lián)Q代,、實現(xiàn)自動化智能化的理想控制核心。
1.2 顯示模塊
本設(shè)計采用LCD1602液晶顯示模塊[2],。LCD1602能夠同時顯示16×2即32個字符,。LCD1602液晶顯示模塊內(nèi)部的字符發(fā)生存儲器(CGROM)已經(jīng)存儲了160個不同的點陣字符圖形,包括阿拉伯?dāng)?shù)字,、大小寫英文字母,、常用的符號和日文假名等,。
1.3 時鐘模塊
時鐘模塊采用DS1302時鐘芯片實現(xiàn)計時[3]。DS1302芯片是一種高性能的時鐘芯片,,可自動對秒,、分、時,、日,、周、月,、年以及閏年補(bǔ)償?shù)哪赀M(jìn)行計數(shù),,而且精度高,用于高速數(shù)據(jù)暫存的31×8 RAM,工作電壓在2.5 V~5.5 V范圍內(nèi),,2.5 V時耗電小于300 nA,。采用這種專用時鐘芯片可以更精確地實現(xiàn)定時插座的定時目的,定時準(zhǔn)確又不占用太多系統(tǒng)資源,。
系統(tǒng)采用DS1302作為計時器,,從而實現(xiàn)定時插座在24小時內(nèi)任意時間的可變定時和一小時內(nèi)的固定模式定時。這樣可以使得定時準(zhǔn)確,、方便,,節(jié)約系統(tǒng)資源,同時程序編寫上也能相對簡單,。DS1302電路連接如圖2所示。
1.4 繼電器模塊
繼電器是一種電子控制器件,,通常應(yīng)用于自動控制電路中,,它實際上是用較小的電流去控制較大電流的一種“自動開關(guān)”[4]。故在電路中起著自動調(diào)節(jié),、安全保護(hù),、轉(zhuǎn)換電路等作用。
根據(jù)家用電器的一般要求,,本定時插座采用SONGLE SRD-05VDC-SL-C繼電器,。該繼電器的最大耐壓為交流250 V,最大可通過10 A的交流電流,。在本系統(tǒng)中,,繼電器主要用于控制插座的開關(guān)狀態(tài),通過單片機(jī)I/O輸出信號控制繼電器的工作是否已經(jīng)完成從而達(dá)到控制插座開關(guān)的目的,。繼電器電路連接圖如圖3所示,。
同時,為了防止倒流,,實驗電路中加入了光電耦合器4N25[5],。4N25器件由砷化鎵紅外發(fā)光二極管和硅光電晶體管檢測器光電耦合構(gòu)成,,是一種發(fā)光二極管與光電晶體管面對面封裝的單回路、內(nèi)光路光電耦合器,,也是一種晶體管輸出6引腳DIP封裝光電耦合器,。
1.5 按鍵模塊
本定時插座占用I/O口少,有足夠的I/O口來作為按鍵接口,,所以按鍵模塊設(shè)計成獨立按鍵,。獨立式按鍵電路配置靈活,軟件結(jié)構(gòu)簡單,。本定時插座共5個按鍵,,每個按鍵占用一個I/O口,工作狀態(tài)互不影響,,通過檢測輸入線的電平狀態(tài)可以很容易判斷哪個按鍵被按下了,。
1.6 電源模塊
單片機(jī)、繼電器需要5 V供電,,為了使產(chǎn)品機(jī)構(gòu)更簡單,,使用更方便,設(shè)計中不再另加5 V電源,,而是直接利用接到插座里的市電,,這里采用開關(guān)電源。開關(guān)電源具有體積小,、效率高,、輸出電壓穩(wěn)定、輸出功率大等優(yōu)點,。圖4所示為開關(guān)電源設(shè)計電路圖,。
1.7 紅外遙控模塊
現(xiàn)在的紅外遙控技術(shù)已經(jīng)很成熟,應(yīng)用也很廣泛,,本系統(tǒng)采用已編碼的38 kHz紅外遙控器發(fā)射接收模塊,,系統(tǒng)框圖如圖5所示。
遙控器的每個按鍵都已經(jīng)經(jīng)過編碼,,當(dāng)發(fā)射器撥鍵開關(guān)撥到“ON”檔時,,即有遙控碼發(fā)出(可以發(fā)送任意數(shù)字),暫定為發(fā)送0AAH(二進(jìn)制:10101010B),,這種遙控碼具有以下特征:采用脈寬調(diào)制的串行碼,,在最初5 ms內(nèi)發(fā)送38K碼并以此作為發(fā)射碼開始的標(biāo)志,以脈寬為1.5 ms,、間隔0.5 ms,、周期為2 ms的組合表示二進(jìn)制的“1”;以脈寬為0.5 ms、間隔1.5 ms,、周期為2 ms的組合表示二進(jìn)制的“0”,。
解碼的關(guān)鍵是如何識別“0”和“1”,從位的定義可以發(fā)現(xiàn)接收判定“0”,、“1”就是判定每個周期開始時低電平(注意發(fā)射與接收碼正好反相)出現(xiàn)時間的長短,,如果接收到“0”的時間為1.5 ms,則接收到的值為1,,如果接收到“0”的時間為0.5 ms,,則接收到的值為0。
2 系統(tǒng)軟件設(shè)計
主程序主要是在單片機(jī)的控制下建立人機(jī)操作界面,,對設(shè)定時間進(jìn)行儲存分析,,驅(qū)動液晶顯示出相關(guān)信息,并通過對比分析定時時間與時鐘,,控制繼電器的通,、斷,從而達(dá)到控制插座的通,、斷電,。在這個過程中,單片機(jī)首先進(jìn)行初始化,,包括設(shè)置單片機(jī)各個端口的方向,、各個變量的初始化、液晶顯示初始化,、繼電器斷開以及單片機(jī)振蕩頻率的校準(zhǔn)等,。整個系統(tǒng)軟件設(shè)計的流程圖如圖6所示。
軟件設(shè)計部分包括液晶顯示程序,、DS1302計時程序,、獨立式按鍵處理程序、紅外遙控處理程序等,。由于定時設(shè)置是通過獨立式按鍵或者紅外遙控器進(jìn)行設(shè)置的,程序在按鍵掃描部分和紅外信號的解碼部分相對重要,。在檢測到被設(shè)置了定時任務(wù)時,,系統(tǒng)要檢測是否到達(dá)定時時間,進(jìn)而執(zhí)行相應(yīng)的動作,。
編程過程中需要注意的主要有DS1302計時程序,、LCD1602顯示程序、按鍵處理程序和紅外信號解碼以及處理的相關(guān)程序,,整合在一起的主函數(shù)程序如下所示[6-7]:
void main() //主函數(shù)
{sysinit();
//系統(tǒng)初始化(紅外初始化,、LCD初始化和1302初始化)
while(1)
{
EA=0;
keyscan(); //獨立式按鍵掃描及處理
if(flag==0)
{
display(); //顯示時間
}
dingshi(); // 定時處理
EA=1;
Key_Handle(); //紅外按鍵處理
} }
3 結(jié)論
該定時插座可以設(shè)置在一天24小時內(nèi)的任意定時開關(guān)時間和任意時間段的固定模式定時。同時,通過紅外遙控的電源鍵可以一鍵控制插座的工作狀態(tài),,而遙控器的數(shù)字鍵則同樣可以實現(xiàn)無線設(shè)置相應(yīng)數(shù)字對應(yīng)的任意時間段的固定模式定時,。當(dāng)時鐘走到定時開始時間時,繼電器接通,,插座給負(fù)載供電,;時鐘走到定時結(jié)束時間時,繼電器斷開,,插座停止給負(fù)載供電,。當(dāng)定時插座變換工作狀態(tài)時,蜂鳴器發(fā)出短暫的蜂鳴,。定時插座工作時紅色指示燈亮,,不工作時指示燈不亮。
參考文獻(xiàn)
[1] 李華. MCS-51系列單片機(jī)實用接口技術(shù)[M]. 北京:北京航空航天大學(xué)出版社, 1993.
[2] 趙亮. 跟我學(xué)51單片機(jī)(七)——LCD1602液晶顯示模塊[J]. 電子制作,,2011(7):78-81.
[3] 馮大捷. 基于DS1302電子時鐘的設(shè)計[J]. 科技視界, 2012(3):119-121.
[4] Hambley A R.電子技術(shù)基礎(chǔ)(第2版)[M]. 李春茂, 改編. 北京: 電子工業(yè)出版社, 2005.
[5] 于增安,,周春陽. 光電耦合器4N25非線性與線性應(yīng)用[J]. 沈陽工程學(xué)院學(xué)報(自然科學(xué)版), 2006,2(2):147-148.
[6] 譚浩強(qiáng). C語言程序設(shè)計(第3版)[M]. 北京:清華大學(xué)出版社, 2005.
[7] 戴仙金. 51單片機(jī)及其C語言程序開發(fā)實例[M]. 北京:清華大學(xué)出版社,2008.