盧上二 ,馮菊香,莫金旺,趙 利
(1.桂林電子科技大學(xué) a.信息與通信學(xué)院,b.信息科技學(xué)院,廣西 桂林 541004;2.玉林師范學(xué)院,廣西 玉林 537000)
隨著網(wǎng)絡(luò)技術(shù)、嵌入式技術(shù)的發(fā)展,使得無線Mesh網(wǎng)絡(luò)[1](Wireless Mesh Network,WMN)應(yīng)用于數(shù)字化、智能化及微型化的嵌入式視頻監(jiān)控系統(tǒng)成為可能。由于WMN具備組網(wǎng)迅速、成本低、可靠性強等優(yōu)點,嵌入式系統(tǒng)具有體積小、穩(wěn)定可靠、高性價比等特點,WMN嵌入式視頻監(jiān)控市場面臨全新的機(jī)遇。
WMN是一個無線多跳網(wǎng)絡(luò),由Ad Hoc網(wǎng)絡(luò)發(fā)展而來,融合了Ad Hoc和WLAN網(wǎng)絡(luò)的優(yōu)勢[2]。WMN是一種自組網(wǎng)絡(luò),每個Mesh終端節(jié)點都具有無線路由功能,任一節(jié)點的接入和退出都不會影響整個網(wǎng)絡(luò)的正常運行。
WMN可以由多個Mesh終端節(jié)點組成,具有自組織、自愈、多跳式以及點對點網(wǎng)絡(luò)等特性。
WMN的嵌入式視頻監(jiān)控系統(tǒng)方案如圖1所示。
圖1 WMN的嵌入式視頻監(jiān)控系統(tǒng)
由多個Mesh終端節(jié)點構(gòu)建WMN平臺。結(jié)合業(yè)務(wù)需求,WMN選擇Ad Hoc典型按需距離矢量(AODV)路由協(xié)議。AODV路由協(xié)議是一種比較成熟且應(yīng)用廣泛的路由協(xié)議,具有較低的內(nèi)存和處理開銷,而且源碼開放、實現(xiàn)簡單。
視頻監(jiān)控終端完成現(xiàn)場視頻流采集壓縮、無線路由以及數(shù)據(jù)收發(fā)的功能。Mesh網(wǎng)絡(luò)中的任一終端均可作為視頻服務(wù)器,視頻服務(wù)器除具有視頻監(jiān)控功能外,還可選擇具有管理維護(hù)整個Mesh網(wǎng)絡(luò)正常運行以及數(shù)據(jù)轉(zhuǎn)發(fā)到其他網(wǎng)絡(luò)即網(wǎng)關(guān)等功能。視頻監(jiān)控終端將采集的視頻流壓縮后經(jīng)最佳無線路由發(fā)送到視頻服務(wù)器,視頻服務(wù)器通過以太網(wǎng)將壓縮的視頻流轉(zhuǎn)發(fā)到客戶監(jiān)控主機(jī),客戶監(jiān)控主機(jī)對接收到的視頻流進(jìn)行數(shù)據(jù)處理,從而完成系統(tǒng)實時監(jiān)控功能。
2.2.1 視頻監(jiān)控終端硬件設(shè)計方案[2]
視頻監(jiān)控終端硬件設(shè)計框圖如圖2所示。
圖2 視頻監(jiān)控終端硬件結(jié)構(gòu)框圖
視頻監(jiān)控終端嵌入式處理器選擇三星公司微處理器S3C2440A[3],S3C2440A 采用了 ARM920T 的內(nèi)核,0.13 μm的CMOS標(biāo)準(zhǔn)宏單元和存儲器單元,功耗低、簡單且全靜態(tài)設(shè)計,特別適合對成本和功耗敏感的應(yīng)用。
視頻監(jiān)控終端硬件結(jié)構(gòu)是以嵌入式處理器S3C2440A為主控芯片并對其資源進(jìn)行擴(kuò)展,擴(kuò)展的模塊包括電源模塊、視頻采集壓縮模塊以及網(wǎng)絡(luò)傳輸模塊。其中視頻采集壓縮模塊包括CCD攝像機(jī)的視頻采集、SAA7113H的A/D轉(zhuǎn)換以及視頻流的MPEG-4軟件壓縮;網(wǎng)絡(luò)傳輸模塊包括以太網(wǎng)接口設(shè)計和RT73無線網(wǎng)卡接口設(shè)計。
2.2.2 電源模塊設(shè)計
系統(tǒng)采用了太陽能電池和備用蓄電池雙重供電方案。在太陽能電池能量充足的情況下,使用太陽能電池供電,否則使用備用蓄電池。
2.2.3 視頻采集壓縮模塊設(shè)計
CCD攝像機(jī)采集的模擬視頻經(jīng)SAA7113H模數(shù)轉(zhuǎn)換后,生成標(biāo)準(zhǔn) ITU656 YUV4∶2∶2 格式的數(shù)字視頻,輸出到S3C2440A的寄存器??紤]到壓縮的靈活性,本系統(tǒng)采用高壓縮率的MPEG-4軟件編/解碼方式對視頻流進(jìn)行壓縮,其最大壓縮率可達(dá)到100∶1[4]。
2.2.4 網(wǎng)絡(luò)傳輸模塊設(shè)計
本系統(tǒng)網(wǎng)絡(luò)傳輸分為無線傳輸和有線傳輸。無線傳輸為Mesh網(wǎng)絡(luò)終端之間的傳輸,無線傳輸模塊中無線網(wǎng)卡選擇的是帶有USB接口的臺灣RT73無線網(wǎng)卡,視頻監(jiān)控終端將壓縮的視頻流經(jīng)USB控制器擴(kuò)展的USB1.1接口輸出到RT73無線傳輸模塊;有線傳輸為視頻服務(wù)器與Internet之間的傳輸,由于在S3C2440A芯片上無網(wǎng)絡(luò)接口,為了實現(xiàn)Mesh網(wǎng)與Internet的連接,所以在系統(tǒng)中擴(kuò)展網(wǎng)絡(luò)接口DM9000和RJ-45。
2.3.1 視頻監(jiān)控終端軟件設(shè)計方案[2]
視頻監(jiān)控終端軟件結(jié)構(gòu)框圖如圖3所示。
圖3 視頻監(jiān)控終端軟件框圖
Linux是以核心為基礎(chǔ)的、完全內(nèi)存保護(hù)、多用戶、多任務(wù)的操作系統(tǒng),可應(yīng)用于多種硬件平臺。Linux微內(nèi)核直接提供網(wǎng)絡(luò)支持,它的高度模塊化使添加部件非常容易,而且Linux源代碼是免費開放的,大大節(jié)約了開發(fā)成本。本系統(tǒng)設(shè)計選擇采用成熟穩(wěn)定的Linux2.6.12內(nèi)核。系統(tǒng)軟件設(shè)計主要工作包括底層設(shè)備驅(qū)動程序開發(fā)和上層應(yīng)用程序設(shè)計。
2.3.2 底層設(shè)備驅(qū)動開發(fā)
底層設(shè)備驅(qū)動開發(fā)主要包括模數(shù)轉(zhuǎn)換芯片SAA7113H,RT73無線網(wǎng)卡和DM9000以太網(wǎng)芯片驅(qū)動程序的開發(fā)。其中SAA7113H (ADC),RT73無線網(wǎng)卡和DM9000以太網(wǎng)芯片的驅(qū)動程序分別控制相應(yīng)芯片完成視頻采集,網(wǎng)絡(luò)控制傳輸,Mesh網(wǎng)與Internet連接的功能。
2.3.3 上層應(yīng)用程序設(shè)計
1)系統(tǒng)初始化
系統(tǒng)初始化即配置Linux內(nèi)核的過程,將編譯好的底層設(shè)備驅(qū)動程序編譯到內(nèi)核里,并選擇內(nèi)核對IEEE 802.11b協(xié)議的支持,即選擇內(nèi)核中的[Wireless LAN drivers&Wireless Extensions]。同時對內(nèi)核進(jìn)行剪裁,進(jìn)行交叉編譯生成內(nèi)核鏡像zImage,燒錄進(jìn)視頻監(jiān)控終端。
2)視頻采集壓縮的實現(xiàn)
系統(tǒng)初始化時,打開CCD視頻設(shè)備文件,采集的模擬視頻經(jīng)SAA7113H模數(shù)轉(zhuǎn)換,把生成的標(biāo)準(zhǔn)ITU656 YUV4∶2∶2格式的數(shù)字視頻讀入處理器芯片S3C2440A的寄存器中,通過MPEG-4的編解碼器XVID對數(shù)字視頻流進(jìn)行軟件編碼。其中比較關(guān)鍵的是編碼器類XVID的編寫,程序如下:
3)AODV在嵌入式ARM-Linux下的移植
要使多個視頻監(jiān)控終端組成無線Mesh網(wǎng)絡(luò),必須將Mesh路由協(xié)議移植到各個終端,并設(shè)置RT73無線網(wǎng)卡工作在Ad Hoc模式下。本系統(tǒng)使用的AODV路由協(xié)議版本為aodv-uu-0.9.3。
(1)Linux內(nèi)核的配置要求
本系統(tǒng)應(yīng)用于嵌入式處理器S3C2440A的內(nèi)核版本為Linux2.6.12。使用命令make menuconfig進(jìn)行內(nèi)核配置,選擇內(nèi)核對Netfilter的支持。配置如下:
(2)修改 Makefile
一是將默認(rèn)內(nèi)核源碼路徑KERNEL_DIR修改為嵌入式處理器S3C2440A的內(nèi)核源碼路徑;二是將默認(rèn)編譯器修改為交叉編譯器,即ARM_CC=arm-linux-gcc,ARM_LD=arm-linux-ld。
(3)編譯加載
對修改好的源碼進(jìn)行交叉編譯,將生成可執(zhí)行文件aodvd、模塊kaodv.ko,將aodvd和kaodv.ko拷貝到視頻監(jiān)控終端,執(zhí)行命令insmod kaodv.ko對AODV路由協(xié)議進(jìn)行加載,并測試移植成功。
4)網(wǎng)絡(luò)傳輸軟件
對MPEG-4壓縮后的視頻流采用高效率的TCP/IP協(xié)議傳輸。同時為了提高視頻流的傳輸質(zhì)量,網(wǎng)絡(luò)傳輸部分采用了實時傳輸協(xié)議RTP/RTCP。
網(wǎng)絡(luò)傳輸程序完成視頻流數(shù)據(jù)包的封裝,經(jīng)RT73無線網(wǎng)卡傳送到視頻服務(wù)器,視頻服務(wù)器經(jīng)以太網(wǎng)傳送到客戶監(jiān)控主機(jī)。為保證視頻流的實時性,使用IEEE 802.11b標(biāo)準(zhǔn)完成壓縮視頻流的無線接收和轉(zhuǎn)發(fā)。
本系統(tǒng)應(yīng)用于某景區(qū)進(jìn)行測試,此景區(qū)景點多,不易布線。將5臺視頻監(jiān)控終端安置于監(jiān)控點,監(jiān)控點之間的距離約為250 m,視頻服務(wù)器和客戶監(jiān)控主機(jī)用以太網(wǎng)線連接。安裝完畢,啟動系統(tǒng),各個視頻監(jiān)控終端將采集到的視頻流經(jīng)MPEG-4軟件壓縮后通過RT73無線網(wǎng)卡經(jīng)最佳路由發(fā)送到視頻服務(wù)器,視頻服務(wù)器對接收到的視頻流經(jīng)以太網(wǎng)轉(zhuǎn)發(fā)到客戶監(jiān)控主機(jī),視頻服務(wù)器還具有識別和管理各個視頻監(jiān)控終端的功能??蛻舯O(jiān)控主機(jī)對接收到的視頻流進(jìn)行數(shù)據(jù)實時處理。實驗測試表明,系統(tǒng)視頻流暢、圖像清晰、實時性強,系統(tǒng)達(dá)到景區(qū)無線視頻監(jiān)控的要求。
WMN利用自組織、自愈、多跳式以及點對點網(wǎng)絡(luò),融合用于有線站臺與無線用戶或無線用戶之間溝通連接的IEEE 802.11a/b/g技術(shù),具有靈活性強和穩(wěn)定可靠等特點,同時加上嵌入式系統(tǒng)體積小、成本低、性價比高等,使得WMN與嵌入式系統(tǒng)的結(jié)合滿足了目前視頻監(jiān)控的要求。
[1]KEITH R.Mesh wireless networking[J].IEEE Communications Engineering, 2003(10/11):44-47.
[2]祁超.無線Mesh網(wǎng)絡(luò)的概念及關(guān)鍵技術(shù)[J].電信快報,2008(1):4-7.
[3]游林儒,謝俊斌.無線Mesh網(wǎng)絡(luò)在視頻監(jiān)控中的應(yīng)用[J].電視技術(shù),2008,32(2):87-89.
[4]王憲,劉井權(quán),戴旻.基于ARM平臺的遠(yuǎn)程視頻監(jiān)控系統(tǒng)的研究[J].微計算機(jī)信息,2007(23):178-180.