基于單片機(jī)的艦船自動(dòng)報(bào)警系統(tǒng)的設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘要:介紹一種以單片機(jī)AT89C52為控制核心的艦用自動(dòng)報(bào)警系統(tǒng),主要功能是對(duì)電話雙音多頻信號(hào)進(jìn)行編解碼,當(dāng)有人非法進(jìn)入艦船艙室內(nèi)時(shí)通過拔預(yù)置的電話號(hào)碼進(jìn)行自動(dòng)報(bào)警。本系統(tǒng)重點(diǎn)放在遠(yuǎn)程語音報(bào)警的研制上,可組成非法侵入報(bào)警、火災(zāi)報(bào)警、浸水報(bào)警等多功能報(bào)警系統(tǒng)。通過附加實(shí)現(xiàn)一些智能控制,賦予報(bào)警系統(tǒng)更強(qiáng)大和完整的功能,從而滿足艦艇及民用船舶對(duì)安全報(bào)警的需求。
關(guān)鍵詞:?jiǎn)纹瑱C(jī);DTMF;MT8880;MT8980;時(shí)隙交換
隨著經(jīng)濟(jì)全球化的深入發(fā)展,國(guó)際貿(mào)易對(duì)海運(yùn)的需求不斷增長(zhǎng),但面對(duì)層出不窮,日益猖獗的海盜行為,我們的安全防范意識(shí)也必須不斷增強(qiáng)。因此,研究和開發(fā)面向艦艇和民用船舶、成本低、運(yùn)行可靠的艦船用自動(dòng)報(bào)警系統(tǒng)已成為當(dāng)前艦船反恐、防盜報(bào)警裝置的主要發(fā)展方向,這對(duì)于保障貨船船員的生命財(cái)產(chǎn)安全,提高護(hù)航艦船的快速反應(yīng)能力,有著十分重要的現(xiàn)實(shí)意義。本系統(tǒng)主要是以單片機(jī)AT89C52為控制核心,利用艦用電話交換網(wǎng)絡(luò)作為傳輸介質(zhì),與艦用電話機(jī)并聯(lián),只在報(bào)警期間占用電話線路,報(bào)警結(jié)束后系統(tǒng)與電話線路脫離,不影響電話機(jī)的正常使用。當(dāng)探測(cè)器檢測(cè)到意外情況后就發(fā)出報(bào)警電平信號(hào)到主機(jī)控制部分,主機(jī)控制部分對(duì)該電平信號(hào)進(jìn)行處理,然后控制撥號(hào)芯片向電話線路撥出雙音多頻信號(hào),當(dāng)線路接通后控制語音芯片播放出事先錄制好的語音信號(hào)到電話線路,實(shí)現(xiàn)語音報(bào)警。
1 系統(tǒng)組成及工作原理
系統(tǒng)組成框圖如圖1所示。本系統(tǒng)通過傳感器采集信號(hào),經(jīng)信號(hào)調(diào)理電路整理后,再由模數(shù)轉(zhuǎn)換器將轉(zhuǎn)換后的數(shù)字信號(hào)送入單片機(jī)1,單片機(jī)1輸出通過由MT8880和MT8980組成的交換網(wǎng)絡(luò)傳送到單片機(jī)2,TP3057主要負(fù)責(zé)語音的編碼和解碼。單片機(jī)2的輸出通過RS-232串行接口將所采集到的溫度、壓力、光電等數(shù)據(jù)送入PC機(jī),從PC機(jī)便可以清楚看到所采集的數(shù)據(jù),從而實(shí)現(xiàn)系統(tǒng)的報(bào)警功能。
2 系統(tǒng)硬件電路的設(shè)計(jì)
整個(gè)報(bào)警系統(tǒng)的硬件電路以單片機(jī)AT89C52為控制核心,外圍電路有信號(hào)采集放大模塊、A/D轉(zhuǎn)換模塊、DTMF模擬撥號(hào)收號(hào)模塊、語音編碼解碼模塊、時(shí)隙交換模塊、串行通信模塊等。
2.1 單片機(jī)控制中心
本系統(tǒng)單片機(jī)控制采用AT89C52,應(yīng)用單片機(jī)最小系統(tǒng)電路。單片機(jī)1主要負(fù)責(zé)接收被放大了的傳感器采集到的信號(hào),通過固化在內(nèi)部ROM中的應(yīng)用軟件來判斷是什么地方發(fā)生了什么情況,然后轉(zhuǎn)到相應(yīng)的中斷處理過程,并且控制撥號(hào)芯片產(chǎn)生正確的DTMF信號(hào),完成對(duì)艦船安全值班室電話機(jī)的呼叫。此外,還能有效地判斷當(dāng)前線路的狀態(tài),如果遇到線路忙等情況時(shí)可以有相應(yīng)的等待機(jī)制。在長(zhǎng)時(shí)間不通的情況下可以更換不同的號(hào)碼多次嘗試,直到有人獲得報(bào)警信息為止。單片機(jī)2主要是完成接收的通過電話傳來的報(bào)警信號(hào),并上傳到PC機(jī)上。
2.2 DTMF發(fā)送和接收電路
DTMF收發(fā)電路是實(shí)現(xiàn)電話線遠(yuǎn)程通信的關(guān)鍵部分。它需實(shí)現(xiàn)自動(dòng)撥號(hào)、忙音識(shí)別、鈴聲識(shí)別、遠(yuǎn)程按鍵數(shù)字信號(hào)識(shí)別等功能。本系統(tǒng)采用功耗低,可靠性高、集收發(fā)于一身的MT8880實(shí)現(xiàn)。MT8880有兩種工作模式:DTMF模式和呼叫處理(CP)模式。當(dāng)選擇了呼叫處理模式時(shí),MT 8880就用于檢測(cè)電話網(wǎng)上電話呼叫過程中表示不同進(jìn)程的信號(hào)音(主要是撥號(hào)音,撥號(hào)音的標(biāo)準(zhǔn)頻率為350 Hz或440 Hz),可以進(jìn)行撥號(hào)音識(shí)別。這是目前其他DTMF芯片所不具備的,這樣便可以省去一套復(fù)雜的撥號(hào)音識(shí)別電路。
圖2所示是MT8880與單片機(jī)AT89C52的電路連接圖,其中8端口為DTMF輸出端,2端口為DTMF輸入端。
2.3 程控交換電路
此模塊主要是以時(shí)間交換器MT8980為核心。MT8980與單片機(jī)的接口電路如圖3所示,從圖中可以看出其實(shí)接線并不復(fù)雜,但其中有兩個(gè)引腳比較關(guān)鍵,那就是DS端和DTA端,而DS、DTA作為CPU和MT8980之間數(shù)據(jù)交換的同步信號(hào),在DS選通信號(hào)的上升沿,如果MT8980的片選信號(hào)、數(shù)據(jù)地址線以及讀寫信號(hào)有效,則CPU開始對(duì)MT8980進(jìn)行讀寫操作,當(dāng)MT8980與CPU這間完成相應(yīng)的數(shù)據(jù)發(fā)送或是接收之后,MT8880的數(shù)據(jù)應(yīng)答信號(hào)DAT送出一個(gè)下降沿,表示這次數(shù)據(jù)交換完成,可以進(jìn)行下一個(gè)操作了。對(duì)于AT89C51,我們可以用I/O口直接控制MT8980,在讀寫MT8980時(shí),需判斷DTA是否為低有效。
3 系統(tǒng)軟件設(shè)計(jì)與實(shí)現(xiàn)
本系統(tǒng)采用模塊化編程方法進(jìn)行所有的軟件設(shè)計(jì),主要包括主程序、A/D轉(zhuǎn)換子程序、發(fā)送和接收子程序和程控交換子程序等的設(shè)計(jì)。
3.1 主程序
程序初始化地址為0000H,因此開機(jī)后自動(dòng)運(yùn)行,大部分都是在中斷后完成,所以主程序比較短,僅對(duì)MT8880進(jìn)行初始化,同時(shí)開啟中斷,然后處于等待狀態(tài),直至INT0或INT1接收到信號(hào)。主程序框圖如圖4所示。
3.2 發(fā)送和接收子程序
本系統(tǒng)采用的是兼信號(hào)收、發(fā)于一體的雙音多頻芯片MT8880。此芯片可以通過不同的命令控制線來控制接收狀態(tài)和發(fā)送狀態(tài)。此芯片有三類寄存器:數(shù)據(jù)轉(zhuǎn)移寄存器、收發(fā)控制寄存器和收發(fā)狀態(tài)寄存器,這些寄存器分別由MT8880的三個(gè)控制腳RS0、R/W和IRQ/CP腳進(jìn)行控制。收發(fā)控制由CRA和CRB兩個(gè)控制寄存器共同完成。本設(shè)計(jì)在MT8880撥號(hào)的過程中采用延時(shí)法,而在MT8880收號(hào)的過程中采用查詢法。子程序框圖如圖5所示。
3.3 程控交換子程序
MT8980D可工作于兩種模式。一種為交換模式,可實(shí)現(xiàn)任意輸入信道至任意輸出信道的交換;另一種是消息模式,它允許交換機(jī)的控制系統(tǒng)通過MT8980D的控制接口直接讀任何語音存儲(chǔ)單元或?qū)懭魏谓永m(xù)存儲(chǔ)單元。這種模式對(duì)于控制系統(tǒng)收、發(fā)信念十分方便。而存儲(chǔ)單元的地址低字節(jié)部分直接來源于地址線A5-A0。
程控交換子程序框圖如圖6所示。本設(shè)計(jì)應(yīng)用到MT8980的交換模式,所以控制寄存器的控制位C7=0,并且當(dāng)A5為高電平時(shí),處理機(jī)可根據(jù)當(dāng)前寫入控制寄存器CR的C0-C2來確定ST-BUSO總線號(hào),然后根據(jù)A4-A0確定該ST-BUSO總線上的某信道號(hào),從而根據(jù)一一對(duì)應(yīng)的關(guān)系由確定的ST-BUSO總線號(hào)和信道號(hào)共同尋址到接續(xù)控制存儲(chǔ)器的某一特定存儲(chǔ)單元。尋址到接續(xù)控制存儲(chǔ)器某存儲(chǔ)單元后,要根據(jù)當(dāng)前控制寄存器CR的C4-C3確定下上步操作是針對(duì)于CMH還是CML,前者用來指定MT8980具體信道的工作方式,即消息模式還是交換模式,后者用來指定具體信道時(shí)隙交換的輸入來源,即輸入ST-BUSI總線和信道號(hào)。設(shè)計(jì)中要求ST-BUSI0的時(shí)隙5上的信號(hào)從ST-BUSO1的時(shí)隙1輸出,即C2C1C0=001、A4A3A2A1 A0=00001而C4C3=11確保如下的操作是指向接續(xù)存儲(chǔ)器高3位CMH,并且應(yīng)在接續(xù)存儲(chǔ)器的33號(hào)存儲(chǔ)單元的低字節(jié)里寫入05H。每個(gè)輸出信道對(duì)應(yīng)了接續(xù)存儲(chǔ)器的一個(gè)單元,每個(gè)單元有11位,當(dāng)B10=0時(shí),該單元對(duì)應(yīng)的信道工作于交換模式,此時(shí)B7-B5選擇輸入的ST-BUSI總線,B4-B0選擇在輸入的ST-BUSI總線的具體輸入時(shí)隙,當(dāng)B10=1時(shí),該單元對(duì)應(yīng)的信道工作于消息模式,此時(shí)B7-B0中的內(nèi)容將每幀重復(fù)地輸出一次。在確定完輸出總線和信道號(hào)后要確定輸入總線和信道號(hào),所以根據(jù)設(shè)計(jì)的要求,C4C3=10確保如下的操作是指向接續(xù)存儲(chǔ)器低8位CML,而B78685 =000、B483B281BO=00101,這樣也就確定了輸入總線和信道號(hào)。從而成功的完成了兩個(gè)話路的時(shí)隙交換。
4 結(jié)束語
本文設(shè)計(jì)的基于單片機(jī)AT89C52的遠(yuǎn)程智能報(bào)警系統(tǒng),使用艦船用電話網(wǎng)絡(luò)的遠(yuǎn)程控制方式,利用了現(xiàn)有的有線電話線路資源,不需進(jìn)行專門的布線。當(dāng)有報(bào)警信號(hào)時(shí),可享有電話線路使用的優(yōu)先權(quán),此系統(tǒng)結(jié)構(gòu)簡(jiǎn)單、成本低、可靠性高,可快速有效地解決艦船的反恐、防盜、防火等安防問題,具有廣泛的應(yīng)用前景。