基于PSTN的家用電器遠(yuǎn)程控制系統(tǒng)
關(guān)鍵詞:AT89C51;MT8880;APR9600;PSTN;遠(yuǎn)程控制
引言
隨著生活水平的不斷提高,人們希望有一種自動(dòng)化、智能化程度高的控制系統(tǒng)對(duì)所有的家用電器能實(shí)施遠(yuǎn)程控制。本文介紹了一種基于PSTN(Public Switched Telephone Network,公眾電話網(wǎng))實(shí)現(xiàn)對(duì)家用電器的遠(yuǎn)程控制,通過(guò)電話可以隨時(shí)隨地控制多種家用電器的開(kāi)關(guān)和各種設(shè)定,諸如將空調(diào)提前升降溫、電熱水器提前預(yù)熱等,應(yīng)用前景相當(dāng)廣泛。
系統(tǒng)組成及工作原理
為了簡(jiǎn)化電路、降低成本、提高可靠性,本系統(tǒng)采用AT89C51作為主控制器,它是一款與MCS51完全兼容且內(nèi)部自帶有4KB的Flash存儲(chǔ)器及256KB RAM單元的芯片,因此可以不需另外擴(kuò)展EEPROM及靜態(tài)RAM就可以實(shí)現(xiàn)所需功能。除主控制器之外,還有振鈴檢測(cè)與模擬摘機(jī)電路、DTMF解碼電路、語(yǔ)音提示電路、集中控制器,系統(tǒng)結(jié)構(gòu)框圖如圖1所示。
當(dāng)需要遙控家用電器時(shí),撥打相應(yīng)的電話號(hào)碼,振鈴檢測(cè)電路檢測(cè)鈴流信號(hào),如果有人接聽(tīng)電話或振鈴次數(shù)少于6次,對(duì)程控電話的使用不造成影響,當(dāng)振鈴次數(shù)達(dá)到6次后(次數(shù)可以通過(guò)軟件任意設(shè)定),單片機(jī)啟動(dòng)語(yǔ)音提示電路發(fā)出提示音,詢問(wèn)是否進(jìn)入家電控制模式,按“0”鍵否,掛機(jī)退出,按“1”鍵是,摘掛機(jī)電路自動(dòng)摘機(jī)進(jìn)入控制狀態(tài)并將摘機(jī)信號(hào)輸入到單片機(jī)中,單片機(jī)接收到摘機(jī)信號(hào)后,啟動(dòng)語(yǔ)音提示電路發(fā)出提示音,提示操作者輸入密碼或是退出(系統(tǒng)支持在線修改密碼)。輸入的密碼經(jīng)DTMF接收,轉(zhuǎn)換成二進(jìn)制數(shù)并與事先存儲(chǔ)在單片機(jī)中的密碼比較,如果不相符,則語(yǔ)音提示密碼錯(cuò)誤,可再次重新輸入,若三次密碼錯(cuò)誤則發(fā)提示音并自動(dòng)掛機(jī);如果密碼相符則語(yǔ)音提示選擇控制通道(按鍵1~8分別表示1~8號(hào)通道,分別控制8路電器)。通道選擇后,按下“1”鍵表示開(kāi)啟該路電器,并有語(yǔ)音提示“該路電器已經(jīng)開(kāi)啟”,按下“0”鍵表示關(guān)斷該路電器,有提示音“該路電器已經(jīng)關(guān)閉”,按下“*”鍵則可掛機(jī)退出。若超時(shí)則自動(dòng)掛機(jī)(時(shí)間可由軟件設(shè)定)。
硬件電路設(shè)計(jì)
● 振鈴檢測(cè)與模擬摘機(jī)電路
在分析該電路之前,首先介紹一下公用電話網(wǎng)線路上的信號(hào)及其檢測(cè)方法。公用電話網(wǎng)的傳輸線路為二線模擬線路,采用直流環(huán)路信號(hào)方式,能向模擬話機(jī)提供直流饋電、振鈴信號(hào)、話音數(shù)據(jù)、音頻數(shù)據(jù)、雙音頻數(shù)據(jù)等。我國(guó)規(guī)定的標(biāo)準(zhǔn)為,平時(shí)掛機(jī)時(shí)的饋電電壓一般為-48V,向用戶振鈴的鈴流電壓為7515V,25Hz的交流電壓,用戶話機(jī)的摘掛機(jī)狀態(tài)是通過(guò)對(duì)直流環(huán)路上電流的通斷來(lái)實(shí)現(xiàn)的,用戶掛機(jī)空閑時(shí),直流環(huán)路斷開(kāi),饋電電流為0;反之,用戶摘機(jī)后,直流環(huán)路接通,饋電電流在20mA以上。
當(dāng)有振鈴信號(hào)從TEL0、TEL1輸入時(shí),如圖2所示,電話線路上的7515V,25Hz的交流電壓經(jīng)過(guò)一個(gè)橋式整流Q1及濾波后,振鈴信號(hào)進(jìn)入光電耦合器817的1、2引腳,然后從4腳輸出脈沖信號(hào),脈沖輸入到74LS123中,其中74LS123的作用是將小脈沖轉(zhuǎn)換成大方波信號(hào)并送入到89C51單片機(jī)的T0引腳進(jìn)行計(jì)數(shù),當(dāng)計(jì)數(shù)達(dá)到6次時(shí),89C51的T1引腳發(fā)出高電平,使三極管PNP8550導(dǎo)通,從而繼電器RELAY吸合,完成模擬摘機(jī)動(dòng)作。由于語(yǔ)音信號(hào)和雙音頻信號(hào)電壓遠(yuǎn)低于振鈴信號(hào)電壓,所以該電路不會(huì)產(chǎn)生誤操作。
● DTMF解碼電路
當(dāng)用戶在電話機(jī)的鍵盤(pán)上輸入密碼或按下控制按鈕后,這些信息均采用雙音頻方式通過(guò)電話線發(fā)出。DTMF解碼電路的主要作用是接收從TEL0、TEL1輸入的雙音多頻信號(hào)并將其轉(zhuǎn)換成二進(jìn)制編碼,然后輸至單片機(jī)進(jìn)行數(shù)據(jù)處理,進(jìn)而實(shí)現(xiàn)控制功能,如圖3所示。
本電路采用的是MT8880雙音多頻解碼芯片,能實(shí)現(xiàn)雙音多頻信號(hào)(DTMF)的發(fā)送與接收。發(fā)送DTMF信號(hào)時(shí),信號(hào)從D0~D3經(jīng)數(shù)據(jù)總線緩沖器送到發(fā)送數(shù)據(jù)寄存器,控制可編程行列計(jì)數(shù)器,經(jīng)D/A轉(zhuǎn)換合成DTMF信號(hào),在音頻突發(fā)開(kāi)門(mén)控制和邏輯控制作用下,從8腳(TONE端)發(fā)出。當(dāng)接收DTMF信號(hào)時(shí),模擬摘機(jī)后從TEL0、TEL1進(jìn)入的雙音多頻信號(hào)經(jīng)過(guò)耦合隔離變壓器耦合入MT8880的輸入腳IN-,DTMF信號(hào)經(jīng)運(yùn)放、撥號(hào)音濾波器、高頻組及低頻組分離帶通濾波器送到數(shù)字算法與編碼變換器進(jìn)行確認(rèn),譯成相應(yīng)的4位二進(jìn)制碼,存入接收數(shù)據(jù)寄存器,需要時(shí)輸出至數(shù)據(jù)總線,送入89C51的P1口。其中輸入腳IN-和增益選擇端GS之間所接的反饋電阻R3可以調(diào)節(jié)運(yùn)放的增益,CP為中斷請(qǐng)求或電話信號(hào)音檢測(cè)輸出端,它與89C51的INT0引腳相連。
● 語(yǔ)音提示電路
為了使操作者能及時(shí)了解到受控家用電器的信息,使產(chǎn)品達(dá)到交互式與智能化,本系統(tǒng)采用了可用單片機(jī)控制的語(yǔ)音芯片APR9600,單片電路可錄放32~60s,串行控制時(shí)可分256段以上,并行控制時(shí)最大可分8段。具有多種手動(dòng)控制方式、分段管理方便、多段控制時(shí)電路簡(jiǎn)單、采樣速度及錄放音時(shí)間可調(diào)、每個(gè)單鍵均有開(kāi)始停止循環(huán)多種功能等特點(diǎn)。當(dāng)利用APR9600進(jìn)行錄音時(shí),外部音頻信號(hào)通過(guò)話筒輸入和線路輸入方式進(jìn)入,通過(guò)芯片內(nèi)話筒放大器中自帶的自動(dòng)增益調(diào)節(jié),如果信號(hào)幅度在100mV左右即可直接進(jìn)入線路輸入端,音頻信號(hào)經(jīng)內(nèi)部濾波器、采樣電路處理后以模擬量方式存入專用快閃存儲(chǔ)器中。放音時(shí)芯片內(nèi)讀邏輯電路從閃存中取出信號(hào),經(jīng)過(guò)一個(gè)低通濾波器送到功率放大器中,然后直接推動(dòng)外部的喇叭放音。
APR9600的錄放控制有多種模式,為普通用戶使用提供了極大的方便,但總的來(lái)說(shuō)可分為串行控制和并行控制兩種模式,由芯片MSEL1、MSEL2及M8腳的設(shè)置來(lái)實(shí)現(xiàn)。
該系統(tǒng)中,APR9600被預(yù)先設(shè)置成8段的并行控制模式,即MSEL1、MSEL2、/M8均被設(shè)定為1(接正電源)。置RE端為錄音狀態(tài),按下/M1即開(kāi)始錄第一段,松開(kāi)鍵即停止。按下M2即開(kāi)始錄第二段,松開(kāi)鍵即停止,如此循環(huán)下去直到錄完第八段。相應(yīng)語(yǔ)音段的播放由軟件觸發(fā),APR9600的SP+、SP-端接至電話線反饋到聽(tīng)筒里,由此用戶可聽(tīng)到語(yǔ)音控制芯片的提示音而進(jìn)行相應(yīng)的操作。
● 8路電器控制
由系統(tǒng)結(jié)構(gòu)框圖可以看出,八路電器通過(guò)AT89C51的P2口來(lái)控制??刂齐娐返膱?zhí)行器件采用繼電器。當(dāng)單片機(jī)要實(shí)現(xiàn)對(duì)電器的控制時(shí),由P2口發(fā)出控制信號(hào)并經(jīng)過(guò)三極管放大后驅(qū)動(dòng)8個(gè)繼電器,從而控制了8路電器的通斷。
軟件設(shè)計(jì)
為了保證系統(tǒng)的可靠運(yùn)行,必須要有良好的軟件相配合,而且要有友好的人機(jī)對(duì)話功能,鑒于以上要求,該系統(tǒng)軟件部分主要由主程序、中斷子程序、延時(shí)子程序、提示音產(chǎn)生子程序等幾大模塊組成。程序流程圖如圖4所示。
結(jié)束語(yǔ)
基于PSTN實(shí)現(xiàn)對(duì)家用電器的遠(yuǎn)程控制與常規(guī)的遙控方式,如無(wú)線電遙控、有線遙控、紅外線和超聲波遙控等相比,顯示出一定的優(yōu)越性,不需進(jìn)行專門(mén)的布線,不占用無(wú)線電頻率資源,避免了電磁污染。同時(shí),由于電話線路各地聯(lián)網(wǎng),可以充分利用現(xiàn)有的電話網(wǎng),因此遙控距離可跨省市,甚至跨越國(guó)家。
評(píng)論