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