一種簡單實用的電話報警系統的設計
0引言
目前,采用電話線作為傳輸媒體的遠程監控和報警系統很多,相關的研究也較多[1,2]。此類系統一般由用戶端的報警裝置和報警受理中心的接收裝置、微機等組成。報警器完成自動摘機、撥號、電話信號音的判斷以及數據的傳送,由接收端實現自動摘機、信號解調及解碼,這些系統要求可靠性高、性能穩定。報警監控計算機通過調制解調器接收用戶終端的報警信息后,利用電信部門提供的來電顯示業務,通過適當的編程可提取電話號碼、報警日期、時間等信息,根據這些信息還可從數據庫中調出更多的用戶信息,這樣可以簡化接收端的硬件電路、降低成本、提高可靠性,同時可以做到使值班人員了解更多的報警信息,也可供日后查詢。本文設計的報警系統簡單實用,計算機軟件采用可視化軟件VB編程后,監控端操作變得更為方便且功能豐富。本報警系統可應用于派出所、儲蓄所、連鎖超市等部門。
1 系統結構及原理
1.1系統總體結構框圖
系統總體結構框圖如圖1所示:
圖1 系統總體結構框圖
報警探頭有信號輸出時,報警器驅動摘機電路進行模擬摘機,并檢測電話線有沒有撥號音,若沒有撥號音,則掛機后重新摘機,直到有撥號音為止。有撥號音就撥報警受理中心電話號碼,若撥號后檢測到忙音,則掛機5秒中后重新摘機撥號,直至撥通為止。電話撥通后終端交換機在第一次振鈴和第二次振鈴間隔期間,將主叫號碼信息以FSK方式(或DTMF方式)傳送給被叫用戶(報警受理中心)終端設備。受理中心接收兩次振鈴音后自動摘機,報警端檢測到受理中心的摘機信息后發出報警信息,同時驅動監聽電路,向線路發出現場監聽信號。報警端檢測到接警中心掛機信息后進行掛機并結束報警。受理中心PC機通過調制解調器接收主叫號碼信息后發出報警聲,并在PC機顯示器上顯示用戶名稱、編號、單位、地址等信息。對現場聲音可以一邊監聽一邊進行錄音。監聽結束后掛機。接收報警后將所有信息及錄音內容儲存起來,便于管理和以后的調用。
1.2報警器結構圖
報警器結構圖如圖2所示:
圖2 報警器結構圖
由單片機 AT89C2051的 P1.4~P1.7檢測報警信號,當報警信號變為低電平時,置P3.5為低電平驅動摘機電路,通過MT8888進行信號音檢測和撥號,當檢測有受理中心摘機信號
時,以DTMF方式輸出報警類型、探頭位置的編碼,當檢測到被叫用戶掛機信號(催掛音)時立即掛機,結束報警。
2 系統硬件
2.1摘掛機與通話電路
電路原理圖如圖3所示。
圖3 摘掛機與通話電路原理圖
通過Q3和繼電器J實現電話的摘掛機控制,T1為1﹕1隔離耦合變壓器,傳輸電話線路信號音和DTMF信號以及監聽信號。由R2和T1初級組成模擬摘機直流負載,摘機電流為30mA。用穩壓管ZD1限幅摘掛機時T1次級上產生的反向電動勢。
2.2信號音檢測與撥號電路
電路原理圖如圖4所示。
圖4 信號音檢測與撥號電路原理圖
MT8888是一種具有同Intel微處理器兼容接口的功能較強的雙音多頻發送和接收器件[3],利用它可實現DTMF數據收發與信號音的判斷功能。DTMF發送比較簡單,本文不再說明。圖中的D0~D3 接AT89C2051的P1.0~P1.3。MT8888的IRQ/CP端與AT89C2051的T0連接,IRQ/CP端輸出同TONE端輸入的正弦波一一對應的方波,記方波的個數即可判斷各種信號音。當判斷信號音時,MT8888設置為信號音判斷模式(CALL模式),然后啟動T0計數器對 IRQ/CP端輸出的信號進行計數,因為回鈴音為1秒通4秒斷的信號所以記數時間為5秒。又因為撥號音為450Hz連續信號,忙音為0.35秒通0.35 秒斷,回鈴音為1秒通4秒斷,如果計數值大于2050小于2450(450*5=2250)則為撥號音,計數值 925~1325(450*5/2=1125)為忙音,250~650(450*1=450)為回鈴音,催掛音為連續的950Hz正弦波,所以記數值大于 4000。記數值的范圍可以適當調整,本文采用了上下200個誤差。當要發送DTMF信號時,將MT8888設置為DTMF發送模式。
2.3接收部分
接收終端用一塊支持來電顯示的調制解調器來接收報警終端的電話號碼以及各種信息。選擇調制解調器時要確認是否具有來電顯示功能,判斷不出時可利用 AT命令進行以下判斷。安裝好調制解調器后運行WINDOWS自帶的超級終端通信軟件建立同調制解調器的通信,此時要注意選擇好所連調制解調器的串行口。首先輸入ATI0命令并確認調制解調器的回應,若有回應(如56000代表是56K MODEM)就說明已同調制解調器建立好正常通信。再發送AT+VCID=?命令,若調制解調器回復是+VCID: 0,1,2就說明此調制解調器具有來電顯示功能,若回復是ERROR則說明不具有來電顯示功能需要換一個調制解調器。國內使用的大部分交換機數據傳送采用 FSK方式,有些交換機采用DTMF方式。
3 系統軟件
包括單片機編程和接收端編程。
接收端編程簡介如下:
計算機軟件可用VB進行設計,用VB實現界面設計以及微機與調制解調器的串行通信。設計關鍵為來電信息的捕捉。同調制解調器的通信使用 Microsoft通信控件MSComm。對于調制解調器的操作要用AT命令去實現,編程時要參考關于AT命令的有關資料,工作時首先要將調制解調器所對應的串行口打開,如MSComm1.PortOpen = True,然后要使調制解調器工作在可接收FSK信號的模式,如MSComm1.Output = "at+vcid=1" + Chr(13)其中at+vcid=1表示啟用呼叫者標識,此命令使調制解調器工作在帶格式的呼叫者報告模式。完成上述設置后即可從調制解調器所對應的串行口接收來電顯示信息,調制解調器接收的來電顯示信息的格式為“DATE = 月日回車換行TIME = 時分回車換行NMBR = 電話號碼回車換行”,故編程時將其中的電話號碼提取出即可。接收采用Mscomm控件的OnComm事件來接收,所接收數據類型為Byte型。根據提取出的電話號碼,從事先建立好的數據庫中調出詳細的報警信息并顯示到PC機顯示器上,如日期、時間、報警地點、聯系人、聯系電話等信息。如有必要還可以制作電子地圖,將報警地點顯示出來。
4 結論
本文介紹了一種利用公用電話線作為傳輸媒介的簡單可靠、使用方便的報警系統。在監控端利用VB編程,從來電顯示信息中提取報警電話號碼后,可在PC機顯示器上顯示報警的詳細信息。本系統功能豐富、操作方便,具有較強的使用價值。
參 考 文 獻
[1] 王芳 等,住宅防火智能電話報警系統設計[J],河南師范大學學報(自然科學版),2004,32(3):121~123
[2] 王萍,林善明,劉玉宏.單片機控制MODEM實現電話遠程報警[J],微計算機信息,2002,18(8)
[3] 溫強,賴志昌,王麗慧. 雙音多頻發送接收器MT8888及其應用,自動化技術與應用,2000(2):47~51
[4] William buchanan. PC接口通信與Windows編程[M],北京:中國電力出版社,2001.
評論