基于單片機的智能家居安防系統(tǒng)方案設(shè)計

2016/12/11 16:21:12??????點擊:
1 引言
    現(xiàn)在的安防系統(tǒng)可借助計算機技術(shù)、IC 卡技術(shù)、通信技術(shù)等來實現(xiàn),CAN總線應(yīng)用于安防系統(tǒng)對家居智能化發(fā)展起到了良好的促進作用。而把DTMF 技術(shù)應(yīng)用于安防系統(tǒng), 不需要專門的布線, 不占用無線電頻率資源, 沒有電磁污染。文中設(shè)計了一種基于CAN 總線和DTMF技術(shù)的以AT89S52單片機為核心的新型智能家居安防系統(tǒng), 使原來小區(qū)安防系統(tǒng)的實時性和可靠性有了一個新層次的提高。本系統(tǒng)可以對整個家居的安全環(huán)境進行實時監(jiān)控, 監(jiān)控的范圍包括室內(nèi)防盜、火災(zāi)報警、煤氣泄露等一系列不安全因素。一旦有上述事故發(fā)生, 該報警系統(tǒng)就會發(fā)出相應(yīng)的報警信息, 用語音播出警情類別, 向遠方用戶和相關(guān)部門提供警情語音。
2 系統(tǒng)總體構(gòu)成
    單片機控制DTMF收發(fā)電路、數(shù)字語音電路、摘掛機控制電路。探測器能夠快速、準(zhǔn)確地監(jiān)測到住宅的異常狀況, 經(jīng)確認(rèn)后及時通知控制器, 再由單片機來控制電話接口電路, 實現(xiàn)模擬摘機, 自動撥打預(yù)先設(shè)置的電話號碼進行語音報警并通知管理中心。當(dāng)監(jiān)測到對方回應(yīng)后, 自動恢復(fù)警戒狀態(tài)。
 
3 硬件設(shè)計
    系統(tǒng)主控部分采用AT89S52單片機, 無需擴展外部存儲器??撮T狗電路采用具有可編程的串行EEPROM - X25045。X25045依次存儲了標(biāo)志字段、話機號碼、警情代號、系統(tǒng)設(shè)置等數(shù)據(jù)信息。數(shù)字語音電路采用數(shù)字語音芯片ISD1420。系統(tǒng)中ISD1420僅作為基本錄放音電路, 所以所有的地址線全部置為0, 因此放音的起始地址是0。語音信號由駐極話筒拾取, 從M IC 和M IC REF兩端輸入芯片內(nèi)部的放大器放大, 經(jīng)過功放后的音頻信號從SP+ 被用來與通話電路相連, 以送出語音信號。
3. 1 振鈴檢測及模擬摘掛機單元
    系統(tǒng)并于電話線兩端, 時刻處于監(jiān)控狀態(tài), 不會影響電話的正常工作。當(dāng)系統(tǒng)接收到振鈴信號時,會進行振鈴檢測。振鈴信號經(jīng)三個反相器后接入AT89S52的P3. 4口。若5次振鈴后無人接聽, 則系統(tǒng)進入自動摘機狀態(tài)。單片機P1. 2 引腳輸出高電平, 三極管V501導(dǎo)通則繼電器K1 動作, 將負載電阻接入電路實現(xiàn)模擬摘機。此后電話線上就會出現(xiàn)大于10mA 的電流, 交換中心檢測到這一電流后就不再輸出振鈴信號而是轉(zhuǎn)為接通電話。如果振鈴信號沒有達到預(yù)設(shè)值就消失, 則單片機的計數(shù)值清零,控制器不動作。
3. 2 DTMF收發(fā)單元
    DTMF收發(fā)電路采用DTMF 信號編/解碼芯片MT8880[ 5] 芯片, 單片機通過DTMF收發(fā)電路撥出電話號碼進行電話報警, DTMF 收發(fā)電路如圖2所示。
 
    MT8880提供了與微處理器相連的接口, 以對其發(fā)送、接收和工作模式進行控制。它的接收部分采用單端輸入, 由R27、R28和C16 組成, 其輸入電壓增益為1, 通過改變R28可調(diào)節(jié)輸入信號的增益。它的發(fā)送部分由R29、C17、C18和XTAL2構(gòu)成。它的控制部分由R30 和C19 構(gòu)成。IRQ /CP 與單片機P3. 5 腳相連。當(dāng)MT8880接收到有效的雙音多頻信號時, 單片機進行中斷處理。MT8880 的IN - 端和通話電路TEA 1062 的QR 端相連, MT8880 的TONE端和TEA1062的DTMF端相連。
通話單元#e#3. 3 通話單元
     通話電路使用電話機專用通話集成電路TEA1062。送話時, 語音信號(來自ISD1420)通過M IC + 引腳輸入, DTMF信號(來自MT8880)通過DTMF引腳輸入, 經(jīng)過TEA1062 放大后從LN 引腳一起送到電話外線上。受話時, 信號通過消側(cè)音網(wǎng)絡(luò), 從IR 引腳輸入, 放大后從引腳QR 輸出, 分兩路: 一路送到ISD1420的ANA IN 端供語音錄制用,另一路送到MT8880的IN - 端提取DTMF信號。
3. 4 CAN 總線數(shù)據(jù)傳輸單元
    CAN 總線數(shù)據(jù)傳輸單元由兩部分構(gòu)成, 一部分是CAN 控制器, 實現(xiàn)對總線數(shù)據(jù)的交互與控制, 另一部分是CAN 數(shù)據(jù)收發(fā)器, 實現(xiàn)數(shù)據(jù)的網(wǎng)絡(luò)傳輸。
單片機AT89S52通過控制CAN 控制器來實現(xiàn)對總線的訪問, 同時還負責(zé)功能單元的測量和控制, CAN 總線接口電路。
 
    AT89S52 通過中斷方式訪問CAN 控制器SJA1000, 為了增強CAN 總線節(jié)點的抗干擾能力,SJA1000通過高速光耦6N137 與CAN 總線驅(qū)動器PCA82C50 相連。PCA82C50 的CANH 和CANL引腳各自接了一個5 的電阻與CAN 總線相連, 可以起到限流作用, 以免PCA82C50受到過電流沖擊。
4 軟件設(shè)計
    系統(tǒng)的軟件采用模塊化設(shè)計, 主要包括主程序模塊、CAN 通信模塊、振鈴檢測模塊、語音報警模塊、DTMF收發(fā)模塊等, 這里主要介紹主程序和CAN通信模塊設(shè)計。
4. 1 主程序設(shè)計
    主程序主要完成各功能模塊的調(diào)用, 檢測系統(tǒng)輸入, 然后根據(jù)系統(tǒng)狀態(tài)進行判斷處理。程序進行主循環(huán)之前還要進行必要的初始化, 如MT8880、ISD1420、SJA1000、相關(guān)標(biāo)志位等。主程序流程如圖4所示。
 
4. 2 CAN 通信模塊設(shè)計
    CAN 通信模塊包括控制器初始化、數(shù)據(jù)接收和發(fā)送子程序。SJA1000有復(fù)位模式和工作模式兩種狀態(tài), 兩種狀態(tài)下寄存器配置不同。當(dāng)參數(shù)設(shè)置完后, CPU 發(fā)出命令, SJA1000 處于工作狀態(tài), 進行正常通信。如果通信出錯, CPU 會使SJA1000 回到復(fù)位模式。接收模塊負責(zé)節(jié)點報文的接收及相關(guān)處理。接收過程中CPU 會讀數(shù)據(jù), 根據(jù)命令字判斷數(shù)據(jù)幀的類型進行不同處理。發(fā)送模塊負責(zé)報文的發(fā)送, SJA1000 發(fā)送數(shù)據(jù)前, 要判斷是否滿足發(fā)送條件, 如果滿足, 則把報文幀信息、標(biāo)識符和要發(fā)送的數(shù)據(jù)寫入緩沖區(qū), 即可發(fā)送。JA 1000的收發(fā)流程圖如圖5所示。
 
5 結(jié)束語
    本系統(tǒng)以AT89S52單片機為核心, 不用對電話網(wǎng)進行任何改造, 實現(xiàn)對家居設(shè)防點進行自動檢測和語音報警。設(shè)計中用CAN 總線結(jié)構(gòu)組成安防系統(tǒng),有較好的靈活性和擴展性, 同時利用CAN 總線引入實時的數(shù)據(jù)處理, 提高了系統(tǒng)的可靠性??蓪怯羁梢晫χv、智能小區(qū)管理、門禁管理等有較大的應(yīng)用推廣價值。\