商店無人值守遠(yuǎn)程自動報警與查詢系統(tǒng)
關(guān)鍵詞:AT89LV51 SSI73K222AL ISD33060 中斷報警
引言
很多商店下班后無人值守,當(dāng)有盜警、火警發(fā)生時,人們希望商店能自動報警,同時能用電話進(jìn)一步查詢、核實(shí)警情等住處。本文采用AT89LV51 Flash單片機(jī),配合新型的MODEM通信芯片和語音電路,成功實(shí)現(xiàn)了商店的無人值守自動報警與查詢功能。
1 主要芯片簡介
1.1 AT89LV51 Flash單片機(jī)
AT89LV51是Atmel公司生產(chǎn)的與MCS-51系列兼容的具有Flash存儲器的單片機(jī),主要特點(diǎn)是:能在2.7~6V的低電壓范圍工作;4K字節(jié)可編程的Flash EEPROM,三級程序存儲器保密;128字節(jié)內(nèi)部RAM;32根可編程I/O引線,2個16位定時器/計(jì)數(shù)器,6個中斷源,1個全雙工串行口等;引腳與MCS-51完全兼容。
1.2 MODEM通信芯片
SS173K222AL是TDK公司生產(chǎn)的一種高集成度的單片機(jī)編程MODEM芯片,引腳如圖1所示。
該芯片易于單片機(jī)控制;可以串行傳輸數(shù)據(jù);與CCITT V.22,V.21,BELL212A,103標(biāo)準(zhǔn)兼容;具有呼叫進(jìn)程、載波、應(yīng)答音、長回環(huán)檢測的功能;能夠通過編程產(chǎn)生DTMF信號等。SSI73K222AL芯片內(nèi)部有4個用于監(jiān)控的8位寄存器CR0、CR1、DR、TR:CR0用于控制電話線路數(shù)據(jù)傳輸?shù)姆绞?,CR1用于控制芯片內(nèi)部狀態(tài)與單片機(jī)間的接口,DR用于監(jiān)視MODEM的工作狀態(tài),TR用于控制音頻信號的產(chǎn)生。對其編程可以產(chǎn)生DTMF信號、應(yīng)答音信號。4個寄存器各位的含義如表1所列。
表1 SS173K22 2A內(nèi)部寄存器各位含義
名稱 | 地址 | 數(shù) 據(jù) 位 | |||||||
AD2AD0 | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | |
CR | 000 | 調(diào)制選擇 | 0 | 設(shè)置發(fā)送模式其中1100表示FSK模式 | 發(fā)送允許 | 應(yīng)答/始發(fā) | |||
CR | 001 | 數(shù)據(jù)發(fā)送方式 | 中斷允許 | 旁路編碼 | 時鐘控制 | 復(fù)位操作 | 模式測試,其中00 表示正常 | ||
DR | 010 | 未用 | 未用 | 接收數(shù)據(jù) | 解碼標(biāo)志 | 載波檢測 | 應(yīng)答音 | 呼叫進(jìn)程 | 長環(huán)檢測 |
TR | 011 | RXD控制 | 發(fā)防衛(wèi)音 | 發(fā)應(yīng)答音 | 發(fā)DTMF音 | 對應(yīng)116DTMF信號,如:0001=1,0010=2等。 |
1.3 ISD33060語音芯片
ISD33060是ISD公司的第三代3V的單片語音IC,引腳如圖2所示。
該芯片總存儲時間達(dá)60s;與外部微處理器的接口采用SPI(Serial Peripheral Interface)串行外設(shè)接口或MSI(Microwire Serial Interface)微傳輸線串行接口,實(shí)現(xiàn)了主機(jī)對語音芯片的靈活控制和尋址,減少了接口的引線數(shù),提高了使用的靈活性;錄放音時間可通過控制指令任意進(jìn)行分段,每段最短長度為150ms。
使用SPI接口協(xié)議時,主要用到5條控制線:
*1腳(SS)—芯片選擇輸入端,低電平有效;
*2腳(MOS1)—串行數(shù)據(jù)輸入端,ISD芯片從該腳接收來自單片機(jī)的控制命令數(shù)據(jù);
*3腳(MISO)—串行數(shù)據(jù)輸出端,單片機(jī)從該腳獲得ISD的返回數(shù)據(jù);
*28腳(SCLK)—SPI接口串行時鐘輸入,用于同步數(shù)據(jù)的傳送;
*25腳(INT)—當(dāng)語音回放結(jié)束或錄放音溢出時,變低電平,在下一個SPI周期開始時,該信號被清除并返回高電平。
圖3 自動報警與查詢線路圖
2 硬件電路設(shè)計(jì)
硬件線路原理如圖3所示。本系統(tǒng)的功能主要有:
*利用電話線路和單片機(jī)的中斷功能進(jìn)行火情、盜情自動遠(yuǎn)程語音報警;
*可撥打多個號碼,對每個號碼多次循環(huán)撥號,直到撥通為止;
*設(shè)有火警、盜警發(fā)生標(biāo)志,憑密碼可用電話查詢、核實(shí)警報情況;
*可以現(xiàn)場或利用電話消除報警標(biāo)志;
*可用電話修改密碼。
圖3中,L1、L2接電話線咱;U1為AT89LV51 Flash單片機(jī),U2為MODEM芯片SSI73K222AL,U3為語音芯片ISD33060,U4、U5為輸出、輸入放大運(yùn)放LM358;K為現(xiàn)場消除警報開關(guān),D7、D8分別為消警和報警指示,INT0和INT1中斷分別接火警和盜警信號,下降沿有效。
圖4 主程序框圖
通電后,系統(tǒng)先對P1、P3口及INT0、INT1中斷進(jìn)行初始化,然后不斷查詢P1.6、P1.7腳。為避免系統(tǒng)重復(fù)報警,每次有效火、盜報警時,程序都分別自動設(shè)火、盜報警標(biāo)志,只有取消報警標(biāo)志才能接受新的警報。當(dāng)按下K時,P1.6為低電平,現(xiàn)場取消報警標(biāo)志,同時消警指示發(fā)光二極管D7亮,報警指示發(fā)光二極管D8滅。如有電話查詢,則鈴流來到,P1.7為低電平,程序控制P1.5為高電平,繼電器J動作,接通線路,語音提示:“請輸入報警系統(tǒng)密碼,以#字結(jié)束”。然后,等待輸入密碼,如在規(guī)定時間內(nèi)無密碼輸入,則提示:“時間到,請掛機(jī)”,隨后斷開線路,退出查詢。如有密碼輸入,則判斷密碼是否正確,如密碼錯且不超過三次,可重新輸入,超過三次則退出查詢;如密碼正確,則提示:“請選擇:1查警情,2消警報,3改密碼,4退出查詢”。此時選擇,可以根據(jù)報警標(biāo)志查清有無警報,是火警還是盜警;選擇2,可消除警報標(biāo)志,達(dá)到與開關(guān)K一樣的效果;選擇3,可個性密碼;選擇4,繼電器J復(fù)位,斷開線路,退出查詢。
當(dāng)有火、盜警發(fā)生時,單片機(jī)INT0、INT1引腳分別有下降沿信號來到,轉(zhuǎn)入中斷處理。火、盜警的處理完全類似。如當(dāng)有火警來到時,先查有無火警標(biāo)志,如有標(biāo)志,表示已報過警,系統(tǒng)退出中斷;如無標(biāo)志,系統(tǒng)立即接通線路,撥預(yù)置的電話號碼。如有應(yīng)答音,則發(fā)語音提示:“商店有火警!有火警!”,并在內(nèi)存設(shè)火警標(biāo)志,然后斷開線路,再判斷所有預(yù)置號碼是否撥完。如未撥完號碼,則撥下一個;如已撥完號碼,退出中斷。
值得注意的是,為提高報警的準(zhǔn)確率,減少誤報,除采用一定的抗干擾措施外,對同一種警情還中使用多種傳感器。如對火警,可采用感煙和紅外傳感器并舉,以提高報警的可靠性和準(zhǔn)確性。
3 軟件設(shè)計(jì)
因篇幅所限,略去程序清單。本系統(tǒng)主程序框圖如圖4,火警中斷處理程序框圖如圖5,盜警中斷處理程序框圖如圖6。
結(jié)語
本裝置雖為一般商店所研制,但完全可推廣到其它無人值守又需保安的場所。