郭曉學(xué), 周 瑩
(貴州大學(xué) 計算機科學(xué)與信息學(xué)院,貴州 貴陽 550025)
近年來,隨著國民經(jīng)濟的快速增長、社會的迅速進步和國力的不斷增強,各領(lǐng)域及個人對安全防范要求越來越高,視頻監(jiān)控在生產(chǎn)生活各方面得到了非常廣泛的應(yīng)用。在傳統(tǒng)的視頻監(jiān)控中,一般是在小范圍內(nèi)進行,而目前用戶普遍要求訪問地點不受地域限制,能隨時隨地訪問被監(jiān)控地點,所以隨著網(wǎng)絡(luò)信息的不斷發(fā)展和寬帶技術(shù)的廣泛應(yīng)用,基于IP技術(shù)的短信網(wǎng)絡(luò)遠程視頻監(jiān)控也應(yīng)運而生。由視頻監(jiān)控系統(tǒng)的功能要求,視頻監(jiān)控系統(tǒng)需要安全性高,服務(wù)平臺架構(gòu)方便,權(quán)限管理方便等特點。手機短信遠程遙控利用手機無線網(wǎng)絡(luò)來實現(xiàn)對視頻監(jiān)控裝置的啟動關(guān)閉,個人電子計算作為輸出終端接收視頻畫面,這使視頻監(jiān)控實現(xiàn)了遠程化實時化[1]。
3G遠程視頻監(jiān)控系統(tǒng)拓撲結(jié)構(gòu),由手機控制視頻監(jiān)控的啟動與停止,使用無線3G網(wǎng)絡(luò)傳輸數(shù)據(jù),視頻終端由攝像頭和個人計算機組成。通過攝像頭提取視頻畫面,由計算機接收圖像。
用戶界面如圖1所示,此界面由Visual C++6.00編寫。Visual C++6.0是一個基于Windows操作系統(tǒng)的可視化集成開發(fā)環(huán)境(IDE),它由許多組件組成,包括、調(diào)試器以及程序向?qū)ppWizard、類向?qū)lass Wizard等開發(fā)工具,它從發(fā)行至今一直被廣泛地用于大大小小的項目開發(fā)。界面由連接和停止選項,IP地址欄和波特率設(shè)置欄,還有視頻窗口組成。用戶可以通過連接和停止選項控制視頻連接及播放,界面簡單易于操作。

圖1 用戶界面
程序進入主進程首先進行usb_modeswitch (將U口轉(zhuǎn)換成串口,其中0口撥號上網(wǎng),3口發(fā)送AT命令收發(fā)短信),然后通過一個循環(huán)發(fā)送AT命令的函數(shù)[2],監(jiān)聽 3口是否有短信,若收到短信,則調(diào)用pppd子進程撥號上網(wǎng),然后調(diào)用uvc_stream 采集,最后進入循環(huán)等待短信,若收到短信,則殺死子進程,并且跳轉(zhuǎn)到上一個循環(huán)等待短信;否則,依然等待短信[3]。具體流程圖如圖2所示。

圖2 軟件流程
因為將USB 3G上網(wǎng)卡轉(zhuǎn)換成tty設(shè)備才可以在linux下面正常的撥號使用[4]。所以轉(zhuǎn)換步驟分兩步,第一步添加驅(qū)動模塊,第二步利用usb_modeswitch(usb模式轉(zhuǎn)換) 轉(zhuǎn)換USB工作模式,即從Mass Storage(U盤模式) 存儲模式轉(zhuǎn)換到3G模式,需要對USB的地址發(fā)送一個十六進制的數(shù)據(jù)作為轉(zhuǎn)換命令[5]。關(guān)于usb_modeswitch的工作原理,首先獲得 Mass Storage 的 pid與配置文件的default_pid(默認進程號)相比較,若相同,則認為是Mass Storage 模式進行下一步模式轉(zhuǎn)換,轉(zhuǎn)換的核心則是將USB的0x08端點發(fā)送一條命令產(chǎn)生轉(zhuǎn)換[6],轉(zhuǎn)換以后在當前USB 3G上網(wǎng)卡的pid與配置文件另一個預(yù)先設(shè)定好的pid相比較,如果相同,則認為轉(zhuǎn)換成功;否則,轉(zhuǎn)換失敗[7]。
AT指令為3G網(wǎng)絡(luò)通用傳輸指令。檢測發(fā)送短信需由AT指令判斷并控制。配合AT模塊的有串口的設(shè)置函數(shù)[8],包括串口波特率設(shè)置,數(shù)據(jù)格式設(shè)置。首先查詢PIN狀態(tài),輸入PIN碼,檢查SIM卡是否就緒;然后獲取SIM卡的IMSI(國際移動簽署者標識);再獲得模塊標識,得到支持的頻帶,當模塊有多頻帶時,回應(yīng)可能是不同頻帶的結(jié)合。當這些都就緒后,則設(shè)置短消息服務(wù)地址,刪除已讀與已發(fā)送短信留下待發(fā)送短信,然后再選擇PDU短信模式,最后接收且讀短信。若收到短信信號,則可以進入下一進程,啟動視頻裝置;若無短信,則進入循環(huán),重新檢測短信信號,直到收到信號則中斷此次循環(huán)[7]。
Pppd上網(wǎng)進程主要步驟如下,首先向linux內(nèi)核中添加3G模塊的驅(qū)動(USB轉(zhuǎn)串口的驅(qū)動)和ppp協(xié)議的支持[9],重新編譯和下載內(nèi)核。然后對ppp-2.4.4源代碼進行交叉編譯,得到pppd和chat,最后執(zhí)行“pppd call wcdma”命令進行撥號,進行網(wǎng)絡(luò)測試。
由以上介紹可知基于短信控制的 3G遠程視頻監(jiān)控系統(tǒng)實現(xiàn)簡單,在生產(chǎn)生活中都有十分廣泛的應(yīng)用。而隨著 3G網(wǎng)絡(luò)的成熟和普及,3G無線視頻監(jiān)控以其無可比擬的優(yōu)勢將成為顛覆傳統(tǒng)視頻監(jiān)控的工作方式?;?G標準的遠程視頻監(jiān)控系統(tǒng)綜合了多門技術(shù),主要包括視頻編解碼、3G無線網(wǎng)絡(luò)、流媒體協(xié)議等,隨著這些技術(shù)的發(fā)展,視頻監(jiān)控系統(tǒng)將擁有更為廣闊的發(fā)展空間。
[1]BASSO A, VARAKLIOTIS S.Transport of MPEG-4 Over IR/RTP[C].USA:IEEE,2000:1067-1070.
[2]王憲,劉井權(quán),戴旻.基于ARM平臺的遠程視頻監(jiān)控系統(tǒng)的研究[J].微計算機信息,2007(02):178-180.
[3]王俊.3G移動通信系統(tǒng)網(wǎng)關(guān)技術(shù)應(yīng)用研究[J].通信技術(shù),2011,44(03):120-122.
[4]王銘,倪平,王冬,等.基于3G網(wǎng)絡(luò)的遠程無線綜合監(jiān)控系統(tǒng)[J].電子技術(shù)應(yīng)用,2011,37(01):114-116.
[5]徐洪洲,張慧娟.聯(lián)合OFDM技術(shù)的常數(shù)模盲均衡仿真研究[J].通信技術(shù),2009,42(01):46-48.
[6]王永剛,章堅武.3G視頻監(jiān)控系統(tǒng)中關(guān)鍵技術(shù)的研究與實現(xiàn)[J].現(xiàn)代電子技術(shù),2011,34(19):55-57.
[7]劉愛榮,盧印舉,王振成.串口通信中CRC快速算法[J].河南大學(xué)學(xué)報:自然科學(xué)版,2007,37(04):418-420.
[8]張小莉.基于串口的DSP軟件下載設(shè)計與實現(xiàn)[J].信息安全與通信保密,2012(01):70-71.
[9]唐龍,劉中臨,劉嘉勇.關(guān)于飛信即時聊天消息監(jiān)控的研究[J].信息安全與通信保密,2012(02):39-41.