家居安防系統(tǒng)監(jiān)控主機(jī)的設(shè)計(jì)與實(shí)現(xiàn)
熊慧萍1,陳發(fā)堂1,陳東生1,李江華2
(1.上海電力學(xué)院 上海 201300;2.國(guó)防科技大學(xué)電子科學(xué)與工程學(xué)院湖南長(zhǎng)沙410073)
l 引 言
安防監(jiān)控系統(tǒng)的研究設(shè)計(jì)與實(shí)現(xiàn),是一項(xiàng)專業(yè)性很強(qiáng)的實(shí)用技術(shù)。普遍認(rèn)為,所謂安防監(jiān)控系統(tǒng),就是以安全防范為主要目的,依靠和運(yùn)用各種高科技裝備及手段,系統(tǒng)、實(shí)時(shí)、全面、不間斷地對(duì)人、設(shè)備及周邊環(huán)境進(jìn)行監(jiān)督、控制的一系列設(shè)備的總和。隨著社會(huì)經(jīng)濟(jì)的發(fā)展進(jìn)步,安防監(jiān)控系統(tǒng)的應(yīng)用普及越來越廣,科技含量越來越高。先進(jìn)的監(jiān)控系統(tǒng)集中體現(xiàn)了現(xiàn)代科學(xué)技術(shù)發(fā)展的最新研究成果,是現(xiàn)代高科技產(chǎn)品和技術(shù)的一個(gè)結(jié)晶和縮影。當(dāng)然,安防監(jiān)控系統(tǒng)的研發(fā)不能一味地追求高、精、尖,其最根本的立足點(diǎn)還是必須回歸實(shí)用性,在保障適用性的前提下追求最低的成本與價(jià)格。本文提出一種基于USB總線和單片機(jī)構(gòu)成的監(jiān)控主機(jī)設(shè)計(jì)方案。該主機(jī)具備一定的智能化控制功能,在個(gè)人計(jì)算機(jī)上實(shí)現(xiàn)硬件驅(qū)動(dòng)和監(jiān)控應(yīng)用軟件開發(fā),具有較高性價(jià)比,適用于一般民居等場(chǎng)所的安全防盜系統(tǒng)。
2 系統(tǒng)構(gòu)成
安防系統(tǒng)監(jiān)控主機(jī)的設(shè)計(jì)要求主要包括:采用多媒體計(jì)算機(jī)輔助控制、硬盤錄像等技術(shù),通過程序?qū)崿F(xiàn)預(yù)警、遠(yuǎn)程傳輸、遠(yuǎn)程控制功能。有較強(qiáng)的防范能力及報(bào)警功能,便于上下聯(lián)動(dòng),有較高的自動(dòng)化、智能化功能,能自動(dòng)響應(yīng)信號(hào)報(bào)警、調(diào)用相應(yīng)的攝像機(jī)畫面、發(fā)出聲光警報(bào),并能根據(jù)報(bào)警信號(hào)的來源和性質(zhì)做出一定的判斷,向職守人員提供相應(yīng)的處置方案,自動(dòng)啟動(dòng)某些防范手段,能有效減小職守人員工作強(qiáng)度,加強(qiáng)快速反應(yīng)能力等。 基于信號(hào)捕獲及處理流程,安防系統(tǒng)主要有5個(gè)部分:
信號(hào)采集與處理 包括紅外、煙感、溫敏、壓力、斷路、微波等傳感器對(duì)光、電、熱、力、位移等物理量變化以及視頻、開關(guān)信號(hào)的采集與轉(zhuǎn)換,并依據(jù)規(guī)則進(jìn)行門限判決和編碼。
數(shù)據(jù)傳輸 主要是各模塊、各部件之間數(shù)據(jù)轉(zhuǎn)換及相互交換的過程。
系統(tǒng)響應(yīng)與自動(dòng)控制 主要是進(jìn)行自檢掃描,對(duì)各種預(yù)設(shè)的情況及報(bào)警事件作出中斷響應(yīng)。
人機(jī)交互 通過USB總線實(shí)現(xiàn)PC機(jī)與單片機(jī)之間通信,通過安防監(jiān)控軟件向監(jiān)控主機(jī)發(fā)出指令,接收數(shù)據(jù)和請(qǐng)求,并根據(jù)報(bào)警事件提供處置預(yù)案。
遠(yuǎn)程通信與控制 基于PSTN,通過MODEM與遠(yuǎn)程控制中心交換數(shù)據(jù)并接收指令。
安防系統(tǒng)的構(gòu)成框圖如圖1所示。
3 工作原理
安防系統(tǒng)監(jiān)控主機(jī)是一個(gè)基于嵌入式控制器的MCU應(yīng)用系統(tǒng),該嵌入式控制器采用51系列單片機(jī),他負(fù)責(zé)完成設(shè)備大部分的控制功能。另一方面,因基于USB總線通信,故對(duì)PC機(jī)而言,監(jiān)控主機(jī)又如同一個(gè)待識(shí)別的USB外設(shè)。主機(jī)硬件結(jié)構(gòu)采用單片機(jī)+CPLD構(gòu)成的控制核心,通過LISB接口芯片與PC機(jī)交換數(shù)據(jù)。其中,單片機(jī)采用的是通用的51系列單片機(jī)AT89C52,當(dāng)然完全可以用其他的51系列單片機(jī)替代。CPLD采用XC395288系列芯片。15SB接口芯片采用的是Philips公司的ISPl581芯片。ISPl581的特點(diǎn)是:價(jià)格低、功能強(qiáng)、支持高速USB系統(tǒng)的自動(dòng)檢測(cè)、內(nèi)部通用DMA模塊能使得數(shù)據(jù)流很方便地集成,具有的低掛起功耗,還可以滿足ACPITM,OnN0wTM和USB電源管理的要求。
監(jiān)控主機(jī)一般處于2種工作狀態(tài):
(1)正常監(jiān)控狀態(tài)。此狀態(tài)下.單片機(jī)循環(huán)掃描等待,溫度、濕度等各種環(huán)境監(jiān)測(cè)量實(shí)時(shí)傳送至PC機(jī)顯示.PC機(jī)按照預(yù)先設(shè)置,順序切換視頻監(jiān)控畫面。
(2)處置報(bào)警狀態(tài)。報(bào)警事件發(fā)生后,報(bào)警源或是來自環(huán)境監(jiān)測(cè)量超標(biāo),或是來自按鍵報(bào)警或紅外等傳感器報(bào)警后轉(zhuǎn)換的開關(guān)量,經(jīng)編碼鎖存后發(fā)送至單片機(jī)。單片機(jī)啟動(dòng)中斷處理程序,將報(bào)警數(shù)據(jù)通過ISP158l芯片轉(zhuǎn)換成USB總線數(shù)據(jù)傳送至PC機(jī),PC機(jī)譯碼后調(diào)用數(shù)據(jù)庫(kù)顯示處置預(yù)案,通過攝像頭記錄報(bào)警源現(xiàn)場(chǎng)畫面。同時(shí),單片機(jī)將報(bào)警源代碼通過7段數(shù)碼管進(jìn)行流水顯示,驅(qū)動(dòng)語(yǔ)音控制芯片和發(fā)光二極管發(fā)出聲光報(bào)警。
監(jiān)控主機(jī)的工作原理如圖2所示:
4主要軟件模塊
監(jiān)控主機(jī)的設(shè)計(jì)與實(shí)現(xiàn),難度主要在軟件開發(fā)。一方面是由于USB 2.O作為一種先進(jìn)的接口標(biāo)準(zhǔn),他的協(xié)議規(guī)范比較復(fù)雜,這種復(fù)雜在設(shè)備開發(fā)中主要體現(xiàn)為固件程序的開發(fā)。另一方面要求開發(fā)人員對(duì)PC機(jī)的硬件驅(qū)動(dòng)和操作系統(tǒng)比較熟悉,還要求有比較熟練的數(shù)據(jù)庫(kù)編程經(jīng)驗(yàn)。其軟件設(shè)計(jì)主要分3個(gè)模塊(如圖3所示):
(1)固件程序
固件程序完成的功能包括:完成初始化、自檢和掃描任務(wù),通過USB總線發(fā)送和接收數(shù)據(jù),處理報(bào)警和通信中斷請(qǐng)求。包括4個(gè)子程序:
主程序(MAIN.C) 主要完成初始化工作,發(fā)送USB請(qǐng)求,處理USB總線事件,用戶功能處理等;
中斷處理程序(ISR.C) 主要是處理來自ISPl581的LrSB通信中斷請(qǐng)求和開關(guān)量報(bào)警的中斷請(qǐng)求;
LJSB協(xié)議(USB.C) 主要功能就是響應(yīng)主機(jī)提出的USB設(shè)備識(shí)別要求。響應(yīng)函數(shù)對(duì)設(shè)備要求進(jìn)行譯碼,確定設(shè)備要求的類別;
USB電氣接口驅(qū)動(dòng)(P81.C) 主要是讀寫操作,將需傳送的數(shù)據(jù)與ISP1581芯片之間通信。程序流程如圖4所示。
(2)驅(qū)動(dòng)程序(ISP81.sys)
在單片機(jī)固件開發(fā)調(diào)試通過后,主機(jī)就能正確識(shí)別了,并且如果PC機(jī)操作系統(tǒng)中有自帶的這種設(shè)備的通用驅(qū)動(dòng)程序,就無需再開發(fā)任何軟件就可直接使用。否則必須自行開發(fā)驅(qū)動(dòng)程序。本文采用WinDrivet工具軟件編寫驅(qū)動(dòng)程序,通過調(diào)用工具中提供的預(yù)定義類和底層驅(qū)動(dòng)接口可以方便地生成符合用戶要求的驅(qū)動(dòng)程序,不足之處是獨(dú)立性不好,適用范圍有限。因?yàn)槭褂脀inDrivet只提供一個(gè)設(shè)備安裝信息文件(.inf),真正的驅(qū)動(dòng)程序接口在安裝win[)river時(shí)就已經(jīng)加載了。不過,WinDrivet更的用途在于可以很方便地調(diào)試幾乎所有計(jì)算機(jī)總線接口設(shè)備,在計(jì)算機(jī)外部設(shè)備開發(fā)過程中能夠起到很好的幫助作用。 (3)應(yīng)用程序
應(yīng)用程序是處在應(yīng)用層的上層軟件,他面向用戶提供人機(jī)會(huì)話界面,并實(shí)現(xiàn)各種功能,用戶通過應(yīng)用程序?qū)υO(shè)備實(shí)施控制。應(yīng)用程序使用最常用的Microsoft VisualC++6.O開發(fā)環(huán)境進(jìn)行開發(fā)編譯,主要分成2個(gè)子程序:一是操作臺(tái)程序(OPERATION.C)。控制視頻畫面切換,提供人機(jī)交互,通過調(diào)用winDriver工具軟件生成的驅(qū)動(dòng)程序提供的一些間接控制設(shè)備硬件的接口函數(shù),實(shí)現(xiàn)USB通信功能;二是報(bào)警處理程序(ALARM.C)。處理單片機(jī)報(bào)警信號(hào),調(diào)用數(shù)據(jù)庫(kù)文件,向使用者提供智能化處置預(yù)案。程序流程如圖5所示。
5 結(jié) 語(yǔ)
本文提出的家居安防系統(tǒng)監(jiān)控主機(jī)設(shè)計(jì)實(shí)現(xiàn)方案,具備較強(qiáng)的通信能力和一定的智能化處理功能,可以滿足大部分民用住宅自身安全防范的需要。
他的特點(diǎn)主要有:
(1)監(jiān)控主機(jī)設(shè)置對(duì)開關(guān)量報(bào)警的響應(yīng),是考慮到安防系統(tǒng)前端傳感器、探測(cè)器無論多么復(fù)雜,都是經(jīng)過門限判決、信號(hào)轉(zhuǎn)換、編譯碼之后提供給單片機(jī)監(jiān)控主機(jī),因此可用開關(guān)量來模擬一切報(bào)警事件的發(fā)生。同時(shí),按鍵開關(guān)也是最可靠且行之有效的報(bào)警手段之一。
(2)應(yīng)用成熟的51系列單片機(jī),結(jié)構(gòu)簡(jiǎn)單,性能穩(wěn)定可靠,完全可以滿足一般數(shù)字信號(hào)處理、自動(dòng)控制和數(shù)據(jù)通信的要求,且成本較低。 (3)基于USB總線的MCU應(yīng)用系統(tǒng),本身就是IT業(yè)最熱門的話題之一。不僅有利于提高數(shù)據(jù)傳輸效率,同時(shí)基于兼容性和通用性的考慮,可以不加改變地適用于家用電腦,具有廣泛的應(yīng)用前景。
評(píng)論