摘 要: 利用LabVIEW軟件開(kāi)發(fā)了集現(xiàn)場(chǎng)數(shù)據(jù)采集,、傳送及遠(yuǎn)程監(jiān)視于一體的彩信實(shí)時(shí)報(bào)警系統(tǒng)。當(dāng)監(jiān)控現(xiàn)場(chǎng)有非法侵入時(shí),控制主機(jī)收到被觸發(fā)的探測(cè)器報(bào)警信號(hào)后立即啟動(dòng)相應(yīng)的模塊采集現(xiàn)場(chǎng)的聲音與圖像,,經(jīng)信號(hào)處理后以最直觀的彩信形式,,通過(guò)GPRS網(wǎng)絡(luò)發(fā)送到用戶設(shè)定的手機(jī)。系統(tǒng)運(yùn)行結(jié)果表明,,數(shù)據(jù)發(fā)送穩(wěn)定,、實(shí)時(shí)性好,聲音和圖像清晰,,可以作為傳統(tǒng)報(bào)警方式的補(bǔ)充,,也可應(yīng)用于其他方面的遠(yuǎn)程監(jiān)控。
關(guān)鍵詞: 家庭安防系統(tǒng),;LabVIEW,;彩信;彩信報(bào)警
彩信是一種既可以傳送文字信息,,又可以傳送包括圖像,、聲音、視頻等各種多媒體信息的通信服務(wù),。傳送方式除了在手機(jī)間傳送外,,也可是電腦與手機(jī)之間的多媒體信息傳送。
本文在家庭安防系統(tǒng)中,,以LabVIEW為平臺(tái),,采用拾音器、紅外攝像頭等多個(gè)傳感器,,外接GPRS Modem,,構(gòu)建了基于PC的彩信發(fā)送報(bào)警子系統(tǒng)。該系統(tǒng)應(yīng)用數(shù)據(jù)庫(kù)對(duì)彩信進(jìn)行管理,,當(dāng)監(jiān)控現(xiàn)場(chǎng)有非法侵入時(shí)觸發(fā)報(bào)警,,系統(tǒng)啟動(dòng)相應(yīng)的傳感器采集現(xiàn)場(chǎng)的視頻和聲音,借助GPRS網(wǎng)絡(luò)將現(xiàn)場(chǎng)情況反映到用戶設(shè)定的手機(jī),,實(shí)現(xiàn)了監(jiān)控終端到用戶終端的視頻傳輸,。
1 整個(gè)系統(tǒng)硬件組成及主要功能簡(jiǎn)介[1-2]
整個(gè)家庭安防系統(tǒng)分客戶端和保安終端兩大部分??蛻舳酥饕?大功能模塊和兩個(gè)輔助功能模塊組成,其中的彩信報(bào)警屬于輔助模塊,??蛻舳送ㄟ^(guò)遙控與語(yǔ)音來(lái)操縱控制相應(yīng)的功能模塊。在主功能模塊中,,用戶設(shè)防后,,當(dāng)有作案人員觸動(dòng)門縫探測(cè)器、紅外柵欄探測(cè)器或門磁開(kāi)關(guān)時(shí),探測(cè)器通過(guò)數(shù)據(jù)采集卡向控制主機(jī)發(fā)出報(bào)警指令,,或者用戶通過(guò)遙控器,、語(yǔ)音直接緊急報(bào)警??刂浦鳈C(jī)控制相應(yīng)的模塊進(jìn)行現(xiàn)場(chǎng)的聲音與圖像采集,,并通過(guò)網(wǎng)絡(luò)將采集的數(shù)據(jù)文件和用戶信息傳到物業(yè)中心。同時(shí),,彩信模塊通過(guò)GRPS彩信貓把采集的數(shù)據(jù)經(jīng)處理后以ini結(jié)構(gòu)彩信形式傳到設(shè)定的用戶手機(jī),。保安終端的主要功能是實(shí)時(shí)檢測(cè)客戶端用戶是否有警情發(fā)生,一旦有警情,,則發(fā)出聲音報(bào)警,、閃爍警燈,并顯示報(bào)警的用戶信息,。
系統(tǒng)硬件連接如圖1所示,,其中的探測(cè)器是檢測(cè)非法闖入者,激活報(bào)警的設(shè)備,。主要有東尼TONY-A7拾音器,、USB接口的BSX-2066 CMOS攝像頭、有線門磁探測(cè)器MC-38和六光束紅外柵欄等,。彩信報(bào)警傳輸由wavecom Q2403A GPRS彩信貓執(zhí)行,。它可同時(shí)給10位用戶手機(jī)發(fā)送彩信,支持多個(gè)數(shù)據(jù)庫(kù)管理系統(tǒng),,支持的彩信文件包括文字,、圖片、聲音,、影像等,,以及自定義的ini簡(jiǎn)單彩信格式。本文數(shù)據(jù)庫(kù)管理系統(tǒng)采用SQLSever2000,,用于存儲(chǔ)和管理給手機(jī)發(fā)送的彩信數(shù)據(jù),。彩信貓通過(guò)USB Hub與控制主機(jī)相連,實(shí)時(shí)檢測(cè)數(shù)據(jù)庫(kù)中的建立信息發(fā)送表里面的數(shù)據(jù),。
2 彩信報(bào)警模塊設(shè)計(jì)與實(shí)現(xiàn)
2.1 主控模塊中的相關(guān)程序
在客戶端主界面中[2],,當(dāng)用戶點(diǎn)擊“讀取采集聲音”、“讀取采集圖片”,、“讀取采集視頻”3個(gè)按鈕時(shí)將自動(dòng)跳轉(zhuǎn)到相應(yīng)的數(shù)據(jù)保存目錄,,并按設(shè)定的打開(kāi)方式瀏覽客戶端采集的聲音、圖片與視頻,。也可通過(guò)用戶界面中的視頻瀏覽窗口對(duì)正在采集的視頻在線瀏覽,。
其中在錄制聲音子VI程序中[3],,先檢測(cè)報(bào)警是否被用戶取消,若沒(méi)有被取消,,則動(dòng)態(tài)地創(chuàng)建存放采集聲音文件的目錄,,然后進(jìn)行聲音采集。并且從0開(kāi)始每隔20 s按數(shù)字順序作為文件名,、mid為擴(kuò)展名建立動(dòng)態(tài)的聲音文件,。聲音子VI有兩個(gè)輸入變量分別控制采樣數(shù)目和采集的硬件設(shè)備ID。運(yùn)行時(shí),,需打開(kāi)聲音文件,,配置聲音輸入函數(shù)及參數(shù),然后讀取采集的數(shù)據(jù)進(jìn)行放大3倍和小波降噪后存入到聲音文件,。
在視頻采集子程序中[4],,首先通過(guò)羅列攝像頭子VI把攝像頭的硬件描述符按數(shù)字遞增的順序羅列。然后通過(guò)索引數(shù)組函數(shù)和發(fā)出報(bào)警指令的探測(cè)器所對(duì)應(yīng)的數(shù)據(jù)采集卡上的DI序號(hào)為其提供相應(yīng)的索引號(hào),,經(jīng)過(guò)Imaqdx函數(shù)面板中的相關(guān)函數(shù)打開(kāi)有報(bào)警指令的探測(cè)器所對(duì)應(yīng)的攝像頭,,配置采集參數(shù),采集數(shù)據(jù),,并動(dòng)態(tài)分配存儲(chǔ)空間,。在程序的while循環(huán)中通過(guò)條件結(jié)構(gòu)的拍照子程序?qū)⒉杉膱D像以jpg格式保存,并利用DataSocket技術(shù)進(jìn)行視頻保存,。為了便于用戶手機(jī)顯示,,設(shè)計(jì)了專門的子程序?qū)D像進(jìn)行重新采樣,使得分辨率為320×240,。涉及的函數(shù)有:在圖片保存函數(shù)的條件結(jié)構(gòu)中用imaq copy函數(shù)對(duì)圖像進(jìn)行拷貝,,imaq creat函數(shù)為拷貝的圖像動(dòng)態(tài)分配存儲(chǔ)空間,然后將數(shù)據(jù)傳給拍照子VI,,通過(guò)imaq write file函數(shù)進(jìn)行圖片保存,。在進(jìn)行視頻保存時(shí)需將采集的圖像平化至字符串,以便于視頻數(shù)據(jù)寫入DataSocket,。用DataSocket讀寫數(shù)據(jù)時(shí),,為了方便系統(tǒng)運(yùn)作,采用Launch DS Server if Local函數(shù)動(dòng)態(tài)操作DataSocket Server和DataSocket Server Manager,,為視頻采集創(chuàng)建項(xiàng)目和分配空間,。程序中與While循環(huán)條件端子相連的是用戶是否已停止報(bào)警指令,一旦有該指令則停止圖像采集,,結(jié)束循環(huán),。
在視頻和圖片采集子程序里,通過(guò)while循環(huán)條件結(jié)構(gòu)的真分支,,給其后面的110布爾全局變量和條件結(jié)構(gòu)賦予真值來(lái)執(zhí)行錄制聲音,、視頻采集、圖片子VI,。其中的視頻采集子VI是非觸動(dòng)的,,通過(guò)多個(gè)攝像頭的循環(huán)調(diào)用來(lái)采集現(xiàn)場(chǎng)圖像。具體用哪個(gè)攝像頭采集圖像由while循環(huán)的次數(shù)i和攝像頭的個(gè)數(shù)來(lái)決定,,若循環(huán)次數(shù)加1后與攝像頭的個(gè)數(shù)相除余數(shù)為0,,則用攝像頭的個(gè)數(shù)減1后作為索引數(shù)組的索引號(hào)調(diào)用相應(yīng)的攝像頭來(lái)采集圖像;若循環(huán)次數(shù)加1后與攝像頭的個(gè)數(shù)相除余數(shù)非0,,就用余數(shù)減1后作為索引數(shù)組的索引號(hào)來(lái)調(diào)用相應(yīng)的攝像頭采集圖像,。
2.2 彩信報(bào)警程序設(shè)計(jì)與實(shí)現(xiàn)[1]
本文采用數(shù)據(jù)庫(kù)存儲(chǔ)和管理發(fā)送的彩信數(shù)據(jù)。通過(guò)SQL Server和SQL語(yǔ)句在數(shù)據(jù)庫(kù)的Master表中建立信息發(fā)送,、信息發(fā)送成功,、信息發(fā)送失敗和信息接收4個(gè)數(shù)據(jù)表,分別存放相應(yīng)的彩信數(shù)據(jù),。當(dāng)通過(guò)SQL語(yǔ)句把需要發(fā)送的信息寫入表時(shí),,控制主機(jī)將采集的數(shù)據(jù)寫入到信息發(fā)送表,彩信貓檢測(cè)到發(fā)送表里有數(shù)據(jù),,立即以結(jié)構(gòu)彩信ini的形式通過(guò)GPRS網(wǎng)絡(luò)傳到用戶手機(jī),。發(fā)送完畢彩信貓刪除發(fā)送表中的數(shù)據(jù)。若發(fā)送成功,,將數(shù)據(jù)保存到MSG Sentbox中,;若發(fā)送失敗,將數(shù)據(jù)保存到MSG Failedbox表中,。為了防止系統(tǒng)出現(xiàn)錯(cuò)誤,,建立了一個(gè)MSG Inbox表,用來(lái)接收其他不相關(guān)的信息,。用戶只需啟動(dòng)SQL Server查詢分析器,,復(fù)制這些代碼并粘貼這些建表語(yǔ)句,點(diǎn)擊“執(zhí)行查詢”按鈕進(jìn)入SQL Server管理器,,會(huì)看到已經(jīng)建立了4個(gè)數(shù)據(jù)表,,便可正常使用了。
模塊設(shè)計(jì)主要包括發(fā)送手機(jī)彩信程序的界面和創(chuàng)建結(jié)構(gòu)彩信文件等,。創(chuàng)建結(jié)構(gòu)彩信文件程序如圖2所示,,在圖2的手機(jī)彩信發(fā)送程序中首先通過(guò)注冊(cè)表信息導(dǎo)入子VI將所需的信息導(dǎo)入到注冊(cè)表。圖中while循環(huán)的事件結(jié)構(gòu)0事件和1事件分支分別是用戶菜單選擇事件和用戶界面關(guān)閉事件,。下方while循環(huán)中的順序結(jié)構(gòu)第0幀檢查要發(fā)送的圖片與聲音彩信文件是否存在,,若存在則將其路徑通過(guò)條件結(jié)構(gòu)的真分支連接字符串函數(shù)連接后,打開(kāi)配置文件函數(shù)和寫入鍵函數(shù)寫入到配置文件,。由于寫入鍵函數(shù)時(shí),,會(huì)自動(dòng)生成“=”號(hào),,因而需通過(guò)讀取文本文件函數(shù)和搜索替換字符串函數(shù)讀取配置文件后將等號(hào)替換為空字符串,再由里面的順序結(jié)構(gòu)中的for循環(huán)的循環(huán)次數(shù)決定要發(fā)送的結(jié)構(gòu)彩信的幀的數(shù)目,。
圖3所示為把彩信所需的文件通過(guò)SQL語(yǔ)句寫入數(shù)據(jù)庫(kù)相應(yīng)表程序,,在圖3程序下方while循環(huán)里的順序結(jié)構(gòu)第1幀先判斷手機(jī)號(hào)碼輸入控件中哪些有輸入,再通過(guò)DB Tools Open Connection函數(shù)和DB Tools Execute Query函數(shù)把輸入的手機(jī)號(hào)碼,、彩信類型,、彩信標(biāo)題和簡(jiǎn)單結(jié)構(gòu)彩信文件的路徑通過(guò)SQL語(yǔ)句將相應(yīng)的信息寫入到數(shù)據(jù)庫(kù)對(duì)應(yīng)的彩信發(fā)送數(shù)據(jù)表里[5]。然后在第2幀里把發(fā)送過(guò)的結(jié)構(gòu)彩信文件刪掉,,以便后面的彩信文件的創(chuàng)建與發(fā)送,。
彩信的發(fā)送過(guò)程:客戶端主機(jī)從數(shù)據(jù)庫(kù)中的發(fā)送表讀出發(fā)送狀態(tài)為“待發(fā)”,將彩信發(fā)送出去,。發(fā)送完成,,將發(fā)送表中的發(fā)送狀態(tài)改為“已發(fā)”,并改發(fā)送時(shí)間為當(dāng)前時(shí)間,。
彩信報(bào)警作為整個(gè)安防系統(tǒng)的輔助模塊,,是傳統(tǒng)監(jiān)控、報(bào)警方式的補(bǔ)充,。該系統(tǒng)的緊急求助功能也是以彩信的方式求助,。當(dāng)家里有老人或病人等按下求助按鈕時(shí),彩信模塊就會(huì)把現(xiàn)場(chǎng)的視頻和錄音以彩信的方式發(fā)送到用戶手機(jī)和小區(qū)物業(yè)中心求助,,使服務(wù)終端實(shí)時(shí)了解現(xiàn)場(chǎng)信息,。
系統(tǒng)可以外接多種傳感器報(bào)警,具有開(kāi)發(fā)周期短,、所需設(shè)備簡(jiǎn)單,、通用性和實(shí)用性強(qiáng)等特點(diǎn)。能夠完成彩信的單發(fā),、群發(fā),、重發(fā)。彩信發(fā)送完成后可自動(dòng)將內(nèi)容,、發(fā)送時(shí)間,、目的手機(jī)號(hào)碼、發(fā)送狀態(tài)等信息存入數(shù)據(jù)庫(kù),,以備查詢,,實(shí)現(xiàn)了報(bào)警系統(tǒng)與戶主的遠(yuǎn)程實(shí)時(shí)通信功能。測(cè)試結(jié)果表明,,系統(tǒng)運(yùn)行平穩(wěn),、性能可靠、實(shí)時(shí)性好,;各個(gè)傳感器和程序模塊的組合能夠準(zhǔn)確完成報(bào)警,、記錄,、傳送的功能;試驗(yàn)中沒(méi)有發(fā)生誤報(bào)和漏報(bào)情況,;系統(tǒng)功能完善,、費(fèi)用低廉、操作方便,、運(yùn)行效果良好,適合于現(xiàn)代數(shù)字家庭的安防監(jiān)控,。
參考文獻(xiàn)
[1] 程勇.基于LabVIEW的家庭智能報(bào)警系統(tǒng)研究[D].武漢:武漢工程大學(xué)計(jì)算機(jī)學(xué)院,,2011.
[2] 王會(huì)清,程勇.基于LabVIEW的家庭智能報(bào)警系統(tǒng)研究[J].武漢工程大學(xué)學(xué)報(bào),,2011,,33(11):78-82.
[3] 王會(huì)清,程勇.家庭安防系統(tǒng)中聲音信號(hào)的小波分析與降噪[J].武漢工程大學(xué)學(xué)報(bào),,2011,,33(9):96-99.
[4] 王會(huì)清,程勇.家庭安防系統(tǒng)中的多攝像頭視頻采集與網(wǎng)絡(luò)傳送[J].武漢工程大學(xué)學(xué)報(bào),,2012,,34(7):66-70.
[5] 尹仁平,劉剛,,汪立新,,等.LabVIEW中的數(shù)據(jù)庫(kù)訪問(wèn)[J].電子則量技術(shù),2006,,29(3):51-52.