空軍預警學院 彭安隆
?
基于AT89C51單片機的語音報警系統(tǒng)
空軍預警學院 彭安隆
【摘要】本文設計了由單片機AT89C51及數(shù)碼語音芯片ISD2560組成的智能語音報警系統(tǒng),并設計出了系統(tǒng)的硬件電路,編輯了錄、放音實用的源程序,實現(xiàn)不同訊號的聲光報警,并通過proteus仿真驗證了本設計的合理性和優(yōu)越性。仿真中用按鍵來替代不同的觸發(fā)信號,并將信號傳輸進C51單片機,通過數(shù)碼管指示出報警和方式。通過程序控制語音芯片ISD2560實現(xiàn)了語音的分段錄取,通過軟件的修改還可以實現(xiàn)整段錄取,循環(huán)播放,后續(xù)并可加鎖存器74HC573控制信號的輸出,這樣在遇到不同情況時就可以發(fā)出不同的報警聲音。
【關鍵詞】語音報警;AT89C51單片機;語音芯片;proteus仿真
隨著單片機的技術的日益發(fā)展,人們已經(jīng)不再滿足于鍵盤輸入,“屏顯輸出”這樣傳統(tǒng)的輸入/輸出方式,希望擁有更友好的人機界面,更便捷的操作方式。具有語音功能的單片機多方位報警系統(tǒng)于是應運而生,并廣泛用于各種需要語音響應的場合。智能生產(chǎn)、國防軍工、儀表監(jiān)測、監(jiān)控設備、工業(yè)控制系統(tǒng)等都有這種需求。所以研究語音報警器對生產(chǎn),生活都有極其重要的意義。但是目前市面上的報警裝置仍然十分昂貴又不夠人性化,本文擬在盡量控制成本的情況下,設計出一種十分人性化的語音報警系統(tǒng),摒棄傳統(tǒng)的報警模式,一不同的人聲來處理不同的警情,十分實用而且簡單易用。
2.1主控芯片的選擇
STC89C51作為普通51單片機已與廣泛應用于各種產(chǎn)品中,其接口簡單,方便使用,且功能強大,因此本系統(tǒng)采用STC89C51單片機作為主控制芯片。
2.2傳感器的選擇
要實現(xiàn)防盜、防火、防燃氣泄漏等各種報警功能,相應的傳感器是必不可少的,而無論是哪種傳感器,其最終輸出的都是開關量。
2.2.1熱釋電紅外傳感器HC-SR501
HC-SR501 基于紅外線技術的自動控制模塊,采用德國原裝進口LHI778探頭設計,感應部分應用菲涅爾透鏡對感應范圍進行放大,具有本身不發(fā)任何類型的輻射,器件功耗很小,隱蔽性好,價格低廉的優(yōu)點。本次設計所用的是人體紅外感應模塊HC-SR501,模塊里面包含了信號的放大電路和比較電路。
2.2.2離子式煙霧傳感器NIS-09C
該煙霧報警器內部采用離子式煙霧傳感,離子式煙霧傳感器是一種技術先進,工作穩(wěn)定可靠的傳感器。它在內外電離室里面有放射源镅241,電離產(chǎn)生的正、負離子,在電場的作用下各自向正負電極移動。在正常的情況下,內外電離室的電流、電壓都是穩(wěn)定的。一旦有煙霧竄逃外電離室。干擾了帶電粒子的正常運動,電流,電壓就會有所改變,破壞了內外電離室之間的平衡,于是無線發(fā)射器發(fā)出無線報警信號,通知遠方的接收主機,將報警信息傳遞出去。
2.2.3震動傳感器SW-18020P
用于各種震動觸發(fā)作用,報盜報警,智能小車,電子積木等。模塊特色:(1)采用SW-18020P震動傳感器;(2)比較器輸出,信號干凈,波形好,驅動能力強,超過15mA(3)工作電壓3.3V-5V;(4)輸出形式:數(shù)字開關量輸出(0和1);(5)設有固定螺栓孔,方便安裝;(6)小板PCB尺寸:3.2cm x 1.4cm;(7)使用寬電壓LM393比較器;(8)不震動時,震動開關呈斷開狀態(tài),輸出端輸出高電平,綠色指示燈不亮;;(9)震動時,震動開關瞬間導通,輸出端輸出低電平,綠色指示燈亮;(10)輸出端可以與單片機直接相連,通過單片機來檢測高低電平,由此來檢測環(huán)境是否有震動,起到報警作用。
3.1主程序及流程圖
本設計主要通過給定不同信號送入單片機,在單片機對ISD2560的控制實現(xiàn)不同指定地址入口的錄音和循環(huán)播放。程序流程如圖1所示。
“開始”鍵按下后,即系統(tǒng)上電后,系統(tǒng)初始化,然后判斷開始鍵是否按下,如果按下則單片機控制PD,P/R引腳低電平,并指向錄音地址,啟動錄音過程。調用錄音函數(shù),錄音函數(shù)為:
/*錄音函數(shù)*/
void record(void)
{
CE = 0; //片選有效
PD = 0; //非節(jié)電模式
PR = 0 ; //錄音
}
當CE=0 時芯片使能輸入引腳,使能所有的的錄音操作。
當PD=0 時使芯片開始工作,而進入非節(jié)電模式。
當PR=0 時開始錄音,錄音時,由地址線提供起始地址,直到錄音持續(xù)到CE或PD變高,或自動溢出。
圖1 主程序流程圖
3.2ISD2560 錄放音軟件設計
錄音時,按下錄音鍵,單片機通過口線設置語音段的起始地址,再使PD端、P /R端和CE端為低電平啟動錄音;結束時,松開按鍵,單片機又讓CE端回到高電平,完成一段語音的錄制。同樣的方法可錄取第二段、第三段...。特別值得注意的是,錄音時間不能超過預先設定的每段語音的時間。放音時,根據(jù)需播放的語音內容,找到相應的語音段起始地址,并通過口線送出。再將P /R端設為高電平, PD端設為低電平,并讓CE端產(chǎn)生一負脈沖啟動放音,這時單片機只需等待ISD2560的信息結束信號,即EOM的產(chǎn)生。信號為一負脈沖,在負脈沖的上升沿,該段語音才播放結束,所以單片機必須要檢測到EOM的上升沿才能播放第二段,否則播放的語音就不連續(xù),而且會產(chǎn)生啪啪聲,這一點在編制軟件時一定要注意。
3.2.1ISD2560操作模式
由于ISD2560內置了若干操作模式,因而可用最少的外圍器件實現(xiàn)最多的功能。具體的操作模式見表1。
表1 ISD2560語音芯片操作模式圖
操作模式可有微控制也可由硬件實現(xiàn)。使用操作模式要注意兩點:
(1)所有的操作最初都是從0地址(即存儲空間的起始端)開始。后續(xù)的操作根據(jù)選用的模式可從其它地址開始。但是,電路由錄音或放音轉錄音(M6模式除外),或都執(zhí)行了掉電周期后,地址計數(shù)器將復位為0。
(2)當CE變低且最高兩地址為同位高時,執(zhí)行操作模式。這種操作模式將一直有效,知道CE再次由高變低,芯片重新鎖存當前的地址/模式引腳電平并執(zhí)行相應的操作為止
3.2.2分段錄放音
2500系列最多可分為600段,只要在分段錄/放操作前(不少于300納秒),給地址A0-A9賦值,錄音及放音功能均從設定的起始地址開始,錄音結束由停止鍵操作決定,芯片內部自動在該段的結束位置插入結束標志(EOM);而放音芯片遇到EOM標志即自動停止放音。
2500系列地址空間是這樣分配的:地址0-599作為分段用,地址600-767來使用,地址768-1023為工作模式選擇。如表2所示:
表2 ISD2560 地址空間分配圖
3.3軟件的抗干擾設計
按照可靠性理論,軟件設計最主要的任務是確保應用程序按照給定的順序有秩序地運行。有序運行的基礎是硬件的可靠性,可靠性高的硬件基礎可以保證不會出現(xiàn)硬件故障,但是,在工業(yè)現(xiàn)場使用時,大量的干擾源雖然不會造成系統(tǒng)硬件系統(tǒng)破壞,卻常常會破壞數(shù)字信號的時序,更改微控制器內部寄存器內容,導致程序“跑飛”或進入死循環(huán)。因此,在提高硬件可靠性的基礎上,必須在程序設計中采取措施,提高軟件的可靠性,減小軟件錯誤的發(fā)生以及發(fā)生軟件錯誤的情況下仍能使系統(tǒng)恢復正常運行。
在本設計中.我們同時采用丁硬件“看門狗”與軟件“看門狗”,實踐證明,將兩者結合起來后,程序的可靠性得到了大幅度的提高。
由于的功能限制,proteus無法仿真ISD2560語音芯片等,所以仿真演示只能演示部分功能,傳感器等用其他開關量信號代替,仿真演示只能演示本設計的部分功能,但是做演示功能理論上和本設計是相通的。
4.1仿真電路
如2所述,proteus功能限制,和本設計的復雜性,仿真演示只能演示本設計的部分功能,但是做演示功能理論上和本設計是相通的,所以下面的仿真將極大接近的反映出本設計的成果。
4.1.1按鍵代替不同的傳感器
由于本設計所需傳感器輸出均是開關量,所以在仿真模擬是是完全可以用按鍵開關代替的,如圖2所示。
圖2 用按鍵代替?zhèn)鞲衅鞯拈_關量輸出
4.1.2聲光報警
如前所述,proteus無法模擬ISD2560語音模塊,鑒于其原理的相同性,本設計擬用聲光報警電路代替語音模塊進行發(fā)出報警訊號,仿真電路圖如圖3所示。
圖3 聲光報警電路
如圖3所示,仿真中聲光報警在原理上可完全代替語音模塊,它同樣可以在單片機發(fā)出報警指令時進行報警提示。并且,在敬請接觸式可以通過“解除報警”按鍵來解除報警狀態(tài),整個報警裝置恢復到伺服狀態(tài),仿真十分的真實。
4.1.3報警地點(或觸發(fā)方式)指示
在仿真中,為了明確地指示出是那種“傳感器”激發(fā)了報警裝置,或者是在現(xiàn)實中得知觸發(fā)報警器的地點,例如“1”代表臥室,“2”代表客廳等?;蛘摺?”代表熱釋電紅外傳感激發(fā),“2”代表振動傳感器激發(fā)等。這可以方便地讓“警衛(wèi)”得知報警地點,在最短的時間內趕到準確的現(xiàn)場。
圖4 指示器只是報警地點(方式)“1”
圖5 指示器只是報警地點(方式)“2”
4.2仿真分析
通過本次仿真,在原理上基本得達了所預期的效果。仿真完美的實現(xiàn)了即時報警,和不同報警觸發(fā)的準確指示,這可以方便地讓“警衛(wèi)”得知報警地點,在最短的時間內趕到準確的現(xiàn)場。并且,仿真設計了“解除報警”的功能,在警情消除時,“警衛(wèi)”可以方便地解除報警狀態(tài),并將報警裝置恢復到伺服狀態(tài),這和本設計的思想是十分切合的。
并且通過仿真,再次感受到了proteus在電子電路仿真方面強大的實用性,同時也感受到了其在仿真方面的種種局限性。
同時,仿真由于其本身的局限性,不能夠完完全全地反映出本設計的所有思想,在此表示遺憾,但是,本仿真已經(jīng)在最大程度上模擬了本設計的精妙設計思路,在最大程度上呈現(xiàn)了本設計的大部分功能。
本設計是基于單片機的語音報警系統(tǒng),是利用單片機AT89C51和錄放時間達60s的數(shù)碼語音芯片ISD2560設計了一套智能語音報警系統(tǒng)。用不同的傳感器采集報警訊號,并將信號傳輸進C51單片機。通過程序控制語音芯片ISD2560實現(xiàn)了語音的分段錄取,通過軟件的修改還可以實現(xiàn)整段錄取,循環(huán)播放。雖然最終沒有采用鎖存器74HC573控制信號的輸出,仿真設計限于仿真軟件proteus功能有限,仿真采用代替仿真。
參考文獻
[1]張毅坤,陳善久,裘雪紅.單片微型計算機原理及應用[M].西安電子科大出版社.
[2]楊將新,李華軍.單片機程序設計及應用[M].北京:電子工業(yè)出版社,2006.
[3]陳有卿,張曉東.報警集成電路和報警器制作實例[M].北京人民郵電出版社,2001.
[4]楊文龍.單片機原理及應用[M].西安:西安電子科技大學出版社,2005.
[5]王世昌.電子線路輔導和題選[M].上海:上海科學技術文獻出版社,1999.
作者簡介:
彭安隆(1993-),男,海南澄邁人,大學本科,現(xiàn)就讀于空軍預警學院,研究方向:預警探測指揮。