基于CPLD的智能撥號報警系統(tǒng)設(shè)計
隨著經(jīng)濟(jì)的發(fā)展和生活水平的提高,個人安全和財產(chǎn)安全越來越被人們重視。為了不受到傷害和損失,就需要有安全的報警系統(tǒng)?,F(xiàn)在的報警系統(tǒng)多數(shù)是以單片機(jī)作為主控制器,連線復(fù)雜,可靠性和穩(wěn)定性不高[1-2].針對以上不足,本文利用EDA技術(shù)對報警系統(tǒng)進(jìn)行設(shè)計,系統(tǒng)以CPLD芯片作為控制核心,采用VHDL語言硬件描述來實現(xiàn)遠(yuǎn)程的智能報警,結(jié)構(gòu)和接口簡單,工作可靠性高。
1系統(tǒng)原理和組成
系統(tǒng)組成框圖如圖1所示。系統(tǒng)由兩部分組成:外圍電路和CPLD控制電路。外圍電路包括檢測電路、語音電路、DTMF撥號電路、摘機(jī)/掛機(jī)電路、時鐘頻率電路、電源電路。CPLD控制電路包括電話信號音檢測模塊、雙音多頻信號DTMF收發(fā)時序模塊和摘機(jī)/掛機(jī)控制模塊。外圍電路和CPLD控制電路相協(xié)同來實現(xiàn)系統(tǒng)的報警。
系統(tǒng)工作原理:當(dāng)有人非法進(jìn)入室內(nèi)時,檢測電路中的傳感器便采集到入侵信號,入侵信號會啟動摘機(jī)/掛機(jī)控制模塊控制摘掛機(jī)電路實現(xiàn)電話摘機(jī)。摘機(jī)后,電話信號音檢測模塊識別電話系統(tǒng)的狀態(tài)是否處于可撥號狀態(tài)。如果是,則DTMF收發(fā)時序模塊控制DTMF撥號電路以雙音頻DTMF方式撥預(yù)定的電話號,語音電路播放所要報警的報警信息;否則,通過摘機(jī)/掛機(jī)控制模塊控制掛機(jī)電路實現(xiàn)電話掛機(jī),延時后再撥。
系統(tǒng)中檢測、DTMF撥號、摘機(jī)/掛機(jī)等功能使用硬件電路來實現(xiàn),電話語音識別、DTMF收發(fā)時序、摘機(jī)/掛機(jī)控制等功能使用軟件編程來實現(xiàn)。
2系統(tǒng)外圍電路
2.1檢測電路
本系統(tǒng)采用熱釋電紅外傳感器P228進(jìn)行探測[3],檢測電路如圖2所示。當(dāng)有人進(jìn)入時,P288檢測到的信號經(jīng)C11高頻濾波直接輸入到放大器IC1進(jìn)行低噪聲、高穩(wěn)定放大。當(dāng)IC1輸出電壓高于IC2的基準(zhǔn)電壓時, IC2也輸出高電平,驅(qū)動光電隔離器4N25導(dǎo)通,輸出入侵信號EN,作為報警系統(tǒng)的啟動信號提供給主控電路。
2.2語音電路
語音電路用于錄制和播放所要報警的語音信號或其他報警信息,相應(yīng)信息可由用戶預(yù)先設(shè)定并可隨時修改。本系統(tǒng)中的語音電路選用語音錄放芯片APR9600.錄音時外部音頻信號經(jīng)芯片APR9600內(nèi)部具有自動增益調(diào)節(jié)的話筒放大器放大,由內(nèi)部濾波器和采樣電路處理后存入專用快閃存儲器Flash RAM中。放音時芯片內(nèi)部邏輯電路從Flash RAM中取出信號,經(jīng)過一個低通濾波器送到功率放大器,然后經(jīng)音頻功率放大器放大后輸送到電話線路上,電路如圖3所示。
2.3 DTMF撥號電路和摘機(jī)/掛機(jī)電路
DTMF撥號電路是整個系統(tǒng)的關(guān)鍵部分,它的運行狀態(tài)決定了系統(tǒng)的可靠性。本系統(tǒng)采用專用雙音頻解碼集成芯片MT8880,MT8880是專門用于處理DTMF信號的專用集成電路,具有接收和發(fā)送該信號的雙重功能,其電路如圖4所示。MT8880以1、2腳IN+、IN-作為DTMF的輸入端,對應(yīng)內(nèi)部一個差分放大器,可以雙端輸入,又可單端輸入,本電路采用單端輸入。8腳是DTMF信號的輸出端,主控電路將預(yù)先存儲的電話號碼通過數(shù)據(jù)線D0~D3送入MT8880內(nèi)部的數(shù)據(jù)緩沖器,此時RS和R_W都是低電平,數(shù)據(jù)寫入TDR,再通過內(nèi)部線路處理,利用D/A變換,在電路選通CS=0時,從8腳輸出標(biāo)準(zhǔn)的DTMF信號。MT8880輸出的DTMF信號不能直接與電話線連接,因為36 V左右的電話線空載電壓極易燒毀MT8880,故在它們之間通過一個放大器與電話線路相接,此放大器可以用運放也可以用分立電路,圖4為分立電路。
摘機(jī)/掛機(jī)電路主要由Q1、Q2、D1、R12構(gòu)成,利用Q1和Q2的截止和飽和起到開關(guān)作用,從而實現(xiàn)摘機(jī)和掛機(jī)。
DTMF撥號電路和摘機(jī)/掛機(jī)電路的工作過程:當(dāng)需要向電話網(wǎng)發(fā)送預(yù)先存儲的電話號碼時,PICK=1,通過D1和R12使Q1和Q2處于飽和狀態(tài)。從電話線TIP和RING兩端來的電壓使Q3和Q4得到正常偏置處于放大狀態(tài),此時R_W=0.使MT8880的CS=0,芯片被選中,DTMF信號從MT8880的8腳輸出,經(jīng)過R14、C18送到Q3的基極,經(jīng)Q3、Q4的放大后從電話線路輸出,此時發(fā)光管LED點亮顯示發(fā)送狀態(tài),平時非發(fā)送狀態(tài)時,PICK=0,Q1、Q2、Q3、Q4處于截至狀態(tài),CS=1,MT8880不能被選中,它的8腳內(nèi)部電路處于高阻抗?fàn)顟B(tài),電路與電話線隔離,不影響正常電話機(jī)的使用。接口電路由電話線電壓供電,平時36 V左右,工作時為9 V. 2.4時鐘頻率電路時鐘頻率電路由555定時器和外接元件R3、RP1、C6構(gòu)成多諧振蕩器,腳2與腳6直接相連,如圖5所示。電路沒有穩(wěn)態(tài),僅存在兩個暫穩(wěn)態(tài),且不需要外接觸發(fā)信號,利用電源通過R3、RP1向C6充電,以及C6通過RP1向放電端放電,使電路產(chǎn)生振蕩,從而在輸出端為主控電路提供1.1 kHz的時鐘頻率。
3 CPLD的系統(tǒng)設(shè)計和邏輯仿真
系統(tǒng)控制核心CPLD的三個控制模塊都是采用VHDL語言編程來實現(xiàn)的[4-5],其中電話信號音檢測模塊DJF1用來檢測公用電話網(wǎng)絡(luò)傳遞的語音信號,摘機(jī)/掛機(jī)控制模塊DJF2用來控制摘機(jī)/掛機(jī)電路,實現(xiàn)電話的接通和關(guān)斷,DTMF收發(fā)時序模塊DJF3控制DTMF撥號電路自動撥打預(yù)先設(shè)定好的電話號碼。系統(tǒng)的主程序流程圖如圖7所示。
系統(tǒng)的工作過程:當(dāng)紅外傳感器檢測到人體入侵信號EN后,摘機(jī)/掛機(jī)控制模塊啟動并產(chǎn)生摘機(jī)信號PICK,使摘機(jī)/掛機(jī)電路進(jìn)行摘機(jī)。摘機(jī)后,DTMF收發(fā)時序模塊將MT8880設(shè)置為呼叫處理模式。然后電話信號音檢測模塊通過對IRQ的計數(shù)判別電話音是否為撥號音。如果不是撥號音,則電話掛機(jī),然后再摘機(jī)重?fù)?。如果是撥號音,則MT8880設(shè)置為DTMF發(fā)送模式,同時MT8880撥打預(yù)置電話和發(fā)送語音報警信號。發(fā)出報警信息后延時,電話信號音檢測模塊檢測電話音是否為回鈴音。如果是,則延時掛機(jī);如果不是,則掛機(jī)重?fù)堋?/p>
CPLD芯片采用的是Altera公司的EPM240芯片,該芯片具有片內(nèi)存儲器,系統(tǒng)掉電和復(fù)位后不用重新向芯片下載程序就能正常工作。系統(tǒng)設(shè)計完成后,對三個功能模塊進(jìn)行邏輯編譯、邏輯綜合及優(yōu)化、邏輯布局布線、邏輯仿真,然后將生成的配置文件下載到CPLD芯片。將功能模塊進(jìn)行時序仿真驗證,仿真波形如圖8所示,可以看到功能模塊達(dá)到所期望的邏輯功能。
本文采用CPLD控制核心實現(xiàn)了智能報警系統(tǒng)。由于利用EDA技術(shù)進(jìn)行系統(tǒng)設(shè)計,外圍器件少、體積小、功耗低、可靠性高。通過修改VHDL源程序就可以增加一些新的功能,提高了設(shè)計的靈活性,具有較好的應(yīng)用前景。