1 引 言
由于經(jīng)濟的快速發(fā)展,人們生活水平得到較大的提高,生活節(jié)奏也越來越快,為此家電遙控和家庭安全也為人們所需要和重視。以AT89C51單片機為核心通過電話進行電器遙控和報警裝置主要解決這些問題。他的主要功能有:通過電話可以遙控16路電器通斷,遙控路數(shù)可以根據(jù)需要進行擴展;可以實現(xiàn)電器調(diào)壓調(diào)速控制,有密碼設(shè)定,保密安全性好;有語言提示,避免盲目操作;可以取消已輸入的操作命令;當(dāng)單片機接收到家中天然氣泄露、溫度超限和失竊信號后會自動撥打預(yù)留電話并報告家中發(fā)生的情況。
2硬件電路設(shè)計
總體電路設(shè)計思路是:電話遙控報警器與家用電話采用并聯(lián)方式,當(dāng)有振鈴信號時單片機開始記數(shù),前10次鈴聲內(nèi)若有人接電話,則遙控報警器被屏蔽,不影響正常接聽電話,若10次鈴聲后無人接聽,約定遙控報警器自動模擬掛機,并發(fā)出提示音要求用戶輸入密碼,允許3次輸入錯誤,并有2次提示輸入錯誤重新輸入,若第3次輸入錯誤則自動掛機。密碼輸入確認(rèn)無誤后,發(fā)出提示音,提示用戶輸入要求執(zhí)行任務(wù)的電器代碼,代碼為3位數(shù)字加“#”字確認(rèn),前2位數(shù)字為電器代號,范圍為1~16(假定控制電器為16個),第3位數(shù)為調(diào)壓調(diào)速的級數(shù),范圍為1~4(檔數(shù)根據(jù)需要確定),若電器無調(diào)壓調(diào)速,則第3位數(shù)無效。若同一任務(wù)所輸入的次數(shù)為偶數(shù),表示取消任務(wù)。若2次按鍵的時間間隔小于100mS,則第2次按鍵輸入無效,以防止抖動。若前次按鍵后10 s無按鍵輸入,默認(rèn)為無任務(wù)輸入,自動掛機。掛機后單片機把輸入任務(wù)送對應(yīng)輸出口執(zhí)行任務(wù),并保持狀態(tài)直到有新任務(wù)輸入。硬件電路主要包括震鈴檢測電路、模擬摘機和DTMF解調(diào)電路、調(diào)速電路、任務(wù)執(zhí)行電路、3路傳感器報警信號電路,以及語音電路部分。硬件電路框圖如圖1所示。
2.1振鈴檢測電路電路如圖2所示。電話線振鈴信號為25Hz,75~100 V。因此不能直接與IC電路連接,同時為了防雷擊,輸入端用1 μF/160v電容進行隔離。鈴流聲經(jīng)全橋整流后再由光電耦合器.4N25耦合并經(jīng)40106整形后送89C51 TO計數(shù)器進行振鈴次數(shù)記數(shù),當(dāng)TO記數(shù)為10次時,按約定為有任務(wù)輸入,89C51輸出模擬摘機信號使線路接通,同時單片機控制語音提示電路“請用戶輸入密碼”并通過電話線路將輸入的密碼信號送人雙音頻DTMF解碼電路。
2.2 雙音頻解碼DTMF電路
DTMF電路采用典型的MF8870芯片作雙音頻解碼電路。當(dāng)單片機發(fā)出模擬摘機信號后使線路接通,在提示音后輸入密碼,如MF8870,確認(rèn)有信號輸入后,CIO端(15腳)為“1”,更新輸出鎖存器,并將輸入雙音頻信號解碼為4位二進制數(shù)送輸出鎖存器D1~D4端,CIO端電平送EN端(10腳)允許輸出。單片機首先進行密碼核對,然后將MF8870送入的任務(wù)信號送RAM中存儲,直到輸入任務(wù)結(jié)束。2.3語音提示及撥號電路
語音提示電路采用美國ISD公司語音芯片ISD25120,該芯片可錄放120 s,由于采用“直接模擬量存儲”(DAST)專利技術(shù),信號無需經(jīng)D/A,A/D轉(zhuǎn)換等處理過程,失真小,音質(zhì)好。片內(nèi)含振蕩器、話筒前置放大器、自動增益控制、防混淆濾波器、平滑濾波器、揚聲器驅(qū)動及E2PROM陳列,外圍電路簡單,體積小,3 V單電源供電,耗電省,維持電流僅1 μA。用該芯片只播放預(yù)錄好的語句,所以電路只用了放音功能,錄/放模式P/R接高電平,節(jié)電方式為工作接地。時鐘采用外時鐘,ISD25120外時鐘頻率f=512 kHz。ISD25120共有10條地址線,要這樣可以實現(xiàn)200 ms的信息分辨率,但由于我們只需要尋找每段錄音起始地址,所以可以降低分辨率使用,這里把A3~A0接地。A9和A8決定A7~A0的意義,當(dāng)A9和A8有一個為“0”時,A7~A0表示為當(dāng)前錄放操作的起始地址,當(dāng)A9和A8有一不為“0”時,A7~A0表示為不同的操作模式,在此A9和A8接地,表示A7~A0為地址數(shù)。當(dāng)需要放音時,89C51使ISD25120片選端CE=“0”,同時給出A7~A0地址數(shù),在CE的下降沿鎖存,A9~A0具體設(shè)置如下:
這樣由A7~A4四條地址線可以最大尋址數(shù)為16個,每段時間長短可以由設(shè)計者根據(jù)需要決定。錄音段起始時間和此段起始地址數(shù)關(guān)系如下:時間=某段起始地址數(shù)(十進制)×分辨率不同芯片分辨率不同,具體可查閱有關(guān)手冊。ISD25120分辨率為200 ms,本裝置1~7段為6 s,輸入有關(guān)的提示語。第8段為預(yù)留電話號碼,9~11段為15 s,用于撥號報警,12~16段共27 s備用。語音提示及撥號電路圖如圖3所示。
當(dāng)89C51收到由天然氣、溫度和失竊報警器送來信號后,89C51采用將預(yù)錄在ISD25120語音芯片中的雙音頻電話號碼及報警語音播出的方式進行報警。由于DTMF雙音多頻數(shù)字信號和ISD語音芯片在電話和無線網(wǎng)絡(luò)傳輸?shù)恼Z音信號頻率范圍相同,所以此方案可行。但要注意以下問題:貝爾電話DTMF、信號標(biāo)稱誤差是±1.5%,當(dāng)電話晶體為3.579 45 MHz時,產(chǎn)生的音調(diào)誤差范圍為+0.74%~-0.54%。而大部分ISD器件內(nèi)部振蕩器在全電壓和全溫度范圍內(nèi)誤差為2.25%,即:ISD器件誤差大于DTMF、標(biāo)準(zhǔn)誤差,如圖4所示。所以不能用ISD內(nèi)部振蕩器,而必須用外部晶體振蕩輸入信號。從圖4可以看出,最壞錄放音情況時,提供給ISD器件的外部時鐘要求誤差小于0.75%,他可以是TTL或CMOS電平。對于ISD25120采樣速率為4 kHz,提供的時鐘頻率為512 kHz,單片機為6 MHz晶體,工作頻率為1 MHz,外加二分頻電路提供給ISD25120的頻率為5 kHz,與要求的512 kHz很接近,使用中不會造成任何問題。這里要求頻率變化誤差要小,而并不要求非常準(zhǔn)確的頻率值。
2.4電器控制電路
任務(wù)輸入后首先存放在存儲器中,當(dāng)任務(wù)輸入結(jié)束后,軟件首先刪除輸入偶次數(shù)的任務(wù)項,然后將任務(wù)送相應(yīng)口線。若單片機口線夠用,則可以直接由口線送外電路執(zhí)行,軟件只需進行任務(wù)口線狀態(tài)取反即可。若單片口線不夠用,則可以外加CD4514芯片進行4~16線解碼的擴展,但每路需加雙穩(wěn)態(tài)電路保持,并進行電流放大,執(zhí)行的器件一般采用繼電器,繼電器觸頭容量應(yīng)根據(jù)用電器的功率大小決定,并留一定的余量。2.5調(diào)速調(diào)壓電路
調(diào)速調(diào)壓電路執(zhí)行器件選用雙向可控硅,單片機根據(jù)任務(wù)送不同脈沖個數(shù),則BT33馳張振蕩器沖放電時間不同,使雙向可控硅導(dǎo)通角大小不同而輸出電壓不同。3軟件設(shè)計 根據(jù)以上分析,軟件主流程圖如圖5所示。
除主程序外,子程序包括6位密碼核對子程序、(3位數(shù)+#)任務(wù)輸入核對子程序、提示音子程序、報警子程序、任務(wù)排除偶次輸入子程序、對方回鈴聲和忙音區(qū)分子程序以及10 ms,10 s,60 s延時子程序,編寫程序時注意二次按鍵時間小于10 ms時第2次按鍵無效,以防止抖動。當(dāng)上次按鍵后連續(xù)10 s無按鍵輸入信號,則默認(rèn)可以自動掛機。報警撥號后對方回鈴音和忙音的區(qū)別:按規(guī)定回鈴音為1 s高電平4 s低電平方波信號,忙音為高電平和低電平均為0.35 s方波信號,回鈴音和忙音呼叫時間60 s,60 s后自動掛機。當(dāng)有報警信號送單片機時,通過軟件模擬摘機,預(yù)留電話撥號輸出后,在接到第一聲回鈴音或忙音時,定時器開始定時,計數(shù)器開始計輸入的回鈴音或忙音的個數(shù)。然后判別在60 s內(nèi),若計數(shù)值》15個脈沖(這時無論60 s定時到否)則表示對方為忙音,應(yīng)掛機,延時60 s后重?fù)芴柡艚?。若?0 s內(nèi)計數(shù)《14個脈沖,則表示為回鈴音。若在少于12個脈沖中間回鈴音中斷表示對方有人接聽,可以播放報警信號對應(yīng)的報警語音。若60 s內(nèi)一直有回鈴音,且定時到,表示對方無人接聽,則掛機延時后重?fù)?,直到電話報警完成?/p>
4結(jié) 語
該裝置是現(xiàn)代家庭中一項十分有用的技術(shù),對裝有無線控制裝置的家庭,只需將執(zhí)行任務(wù)部分改為無線遙控發(fā)射即可。隨著可視電話的發(fā)展,安裝一個微型攝像頭,出差在外也可以對家中的情況一目了然。