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