張成法,孫月興
(濰坊工程職業(yè)學(xué)院,山東 青州 262500)
基于S3C2440A的嵌入式視頻監(jiān)控系統(tǒng)的設(shè)計與實現(xiàn)
張成法,孫月興
(濰坊工程職業(yè)學(xué)院,山東 青州 262500)
文章將嵌入式技術(shù)與網(wǎng)絡(luò)技術(shù)融合到視頻監(jiān)控系統(tǒng),設(shè)計了基于ARM的嵌入式視頻監(jiān)控系統(tǒng)。本系統(tǒng)利用基于ARM控制芯片S3C2440A的硬件電路板、嵌入式操作系統(tǒng)和無線網(wǎng)卡等搭建了嵌入式 Web 服務(wù)器 MJPG-streamer,用戶可通過登錄瀏覽器實現(xiàn)遠(yuǎn)程視頻監(jiān)控。測試表明該系統(tǒng)運行穩(wěn)定,圖像實時準(zhǔn)確。
S3C2440A;視頻監(jiān)控;Linux
隨著國民經(jīng)濟(jì)和網(wǎng)絡(luò)信息技術(shù)的高速發(fā)展,視頻監(jiān)控系統(tǒng)越來越廣泛地應(yīng)用于社會生活的各個方面。模擬視頻監(jiān)控系統(tǒng)具有傳輸距離有限且實際布線量大、圖像清晰度不高,查詢麻煩,數(shù)據(jù)存儲需要較大的容量等缺點。同時,在數(shù)字網(wǎng)絡(luò)化趨勢的影響下,采用最新網(wǎng)絡(luò)通信和音視頻處理技術(shù),利用以太網(wǎng)及其他類型的網(wǎng)絡(luò)對視頻圖像進(jìn)行傳輸,這已經(jīng)成為遠(yuǎn)程視頻監(jiān)控最先考慮的解決方法。
本文設(shè)計的基于嵌入式的視頻監(jiān)控系統(tǒng)是將ARM控制技術(shù)、嵌入式技術(shù)、網(wǎng)絡(luò)傳輸技術(shù)和視頻服務(wù)器等技術(shù)結(jié)合起來用以保證監(jiān)控圖像的實時準(zhǔn)確,用以解決查詢不便等問題,從根本上解決了傳統(tǒng)視頻監(jiān)控系統(tǒng)所存在的問題。
本文闡述基于TX2440A硬件電路板的嵌入式網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)的設(shè)計。本文通過TX2440A硬件電路板和嵌入式Linux操作系統(tǒng)和根文件系統(tǒng)的制作,搭建一個易搭建,易配置,通用性好的網(wǎng)絡(luò)視頻服務(wù)器mjpg-streamer。該系統(tǒng)通過USB攝像頭采集視頻數(shù)據(jù),然后使用相應(yīng)算法對視頻數(shù)據(jù)進(jìn)行壓縮處理,再經(jīng)由網(wǎng)絡(luò)傳輸傳送到視頻服務(wù)器客戶端,使用戶通過IP網(wǎng)絡(luò)和具有Java插件的瀏覽器實現(xiàn)遠(yuǎn)程監(jiān)控的目的及視頻圖像的錄制。
本系統(tǒng)是由硬件和軟件這兩部分組成的。硬件部分主要由無線網(wǎng)卡、攝像頭和TX2440A硬件電路板等組成。軟件部分主要是由視頻服務(wù)器和嵌入式Linux操作系統(tǒng)等組成的。視頻監(jiān)控系統(tǒng)結(jié)構(gòu)框架圖如圖1所示。
圖1 視頻監(jiān)控系統(tǒng)結(jié)構(gòu)框架圖
2.1 系統(tǒng)硬件設(shè)計
硬件電路的設(shè)計采用的是核心板帶底板的設(shè)計方法。核心板電路主要是由微處理器S3C2440A和存儲器電路等組成。底板電路主要由復(fù)位電路、LCD接口電路和USB攝像頭接口電路等組成。S3C2440A是16/32位ARM9系列微處理器,工作頻率最高可達(dá)533 MHz,由于其性能優(yōu)越、性價比高等優(yōu)點,在很多設(shè)備中都采用了此控制芯片。
TX2440A硬件電路板上帶有USB接口,只需要將USB攝像頭插入即可將攝像頭跟硬件電路板相連接。
WiFi無線網(wǎng)卡采用的型號是TL-WN823N,接口類型是USB接口,內(nèi)置天線,頻率可以達(dá)到2.4 GHz以上。TLWN823N采用業(yè)內(nèi)專業(yè)的11N無線芯片方案,300 Mbps是其最高無線傳輸速率,TL-WN823N采用MIMO多收多發(fā)天線技術(shù)和CCA空閑信道檢測技術(shù),可以有效提高無線信號的穩(wěn)定性和穿透力,增強(qiáng)其覆蓋范圍。室外最遠(yuǎn)覆蓋范圍在較優(yōu)的環(huán)境下可以達(dá)到300 m,而室內(nèi)覆蓋范圍最遠(yuǎn)可以達(dá)到100 m。
2.2 系統(tǒng)軟件設(shè)計
系統(tǒng)軟件設(shè)計主要包括USB攝像頭驅(qū)動的編譯和加載、V4L2信號的采集設(shè)計和視頻服務(wù)器搭建。
2.2.1 USB攝像頭驅(qū)動
本系統(tǒng)采用的USB攝像頭是ZC0301P攝像頭,由于在Linux 2.6.31內(nèi)核中含有對此類攝像頭的驅(qū)動,直接在Linux相應(yīng)的目錄下配置內(nèi)核,就可以將ZC0301P攝像頭的驅(qū)動程序加載進(jìn)來,這樣的話Linux操作系統(tǒng)就可以支持ZC0301P攝像頭了。
2.2.2 V4L信號采集設(shè)計
Linux中跟視頻設(shè)備相關(guān)聯(lián)的內(nèi)核驅(qū)動是V4L2,它提供了API函數(shù)集和很多的接口函數(shù),比如open,write等,利用這些函數(shù)可以編寫ZC0301P攝像頭的圖像采集應(yīng)用程序。
V4L2可以采用直接讀取法read()和mmap()內(nèi)存映射方式兩種方法截取視頻圖像,比較這兩種方法的優(yōu)缺點,發(fā)現(xiàn)后一種方法的優(yōu)點較突出,因此在程序編寫中使用mmap()這種方式來對視頻圖像進(jìn)行截取。
2.2.3 視頻服務(wù)器搭建
本系統(tǒng)采用的視頻服務(wù)軟件是支持V4L2的mjpgstreamer。從網(wǎng)上下載其源代碼和基礎(chǔ)連接庫源代碼jpegsrc.v6b,SDL-1.2.13。
首先安裝libjpeg庫,在其源碼目錄下進(jìn)行配置,然后修改對應(yīng)的文件,再對其進(jìn)行編譯和安裝,這樣就會將庫文件libjpeg.so和cjpeg安裝在相應(yīng)的目錄下。
其次對簡單直流媒體層(Simple DirectMedia Layer,SDL)安裝包進(jìn)行安裝,在其源碼目錄下進(jìn)行相應(yīng)的配置操作、緊跟著再對其編譯,最后再進(jìn)行安裝,就可以將文件SDL和庫文件libSDL.so等安裝在相應(yīng)的SDL庫目錄下。
然后編譯和移植視頻服務(wù)軟件包,在這個軟件包的源碼目錄下編譯mjpg-streamer,會得到可執(zhí)行程序mjpgstreamer和input_uvc.so,output_http.so這兩個模塊,將生成的可執(zhí)行程序和這兩個模塊分別拷貝到根文件系統(tǒng)的/ usr/sbin目錄和根文件系統(tǒng)的/lib目錄下。通過再對文件uvcstreamer進(jìn)行編譯,會生成相對應(yīng)的可執(zhí)行程序,將其拷貝到根文件系統(tǒng)的/usr/sbin目錄下。
最后對根文件系統(tǒng)進(jìn)行制作,根文件系統(tǒng)的/lib目錄下有SDL和jpeg庫,這兩個庫是從交叉編譯器的lib目錄下復(fù)制過去的。然后對根文件系統(tǒng)進(jìn)行制作,將其制作成相對應(yīng)的鏡像文件,然后將其下載到硬件電路開發(fā)板中。
到此已將視頻服務(wù)器搭建成功,在硬件電路開發(fā)板的SecureCRT控制軟件中輸入命令:#mjpg_streamer -i“/ lib/input_uvc.so”-o“/lib/ouptput_http.so -w192.168.1.22:8080”,其中192.168.1.22是硬件電路開發(fā)板的IP地址,8080是服務(wù)器端口號。把已經(jīng)制作好的網(wǎng)頁文件放到文件系統(tǒng)的/ var/webcam下,在硬件電路板的串口終端中輸入命令:
#mjpg-streamer -i“/lib/input_uvc.so”-o“/lib/ ouptput_http.so -w /var/webcam”
這樣就可以使用 Web 登錄服務(wù)器。
2.2.4 客戶端的實現(xiàn)
打開電腦上的瀏覽器,輸入網(wǎng)址 http://192.168.1.22:8080,那么就可以將已經(jīng)制作好的網(wǎng)頁打開了。
如果要在一般的瀏覽器Internet Explorer上查看Java視頻流的話,需要安裝JRE。也可以使用火狐瀏覽器FireFox直接觀看視頻流。
本系統(tǒng)采用ARM控制芯片S3C2440A、嵌入式操作系統(tǒng)和無線網(wǎng)卡等搭建了視頻服務(wù)器,將ARM控制技術(shù)、嵌入式技術(shù)、網(wǎng)絡(luò)傳輸技術(shù)和視頻服務(wù)器等技術(shù)結(jié)合起來實現(xiàn)了嵌入式遠(yuǎn)程視頻監(jiān)控,該系統(tǒng)具有網(wǎng)絡(luò)化、實時性強(qiáng)、價格低和易于管理等優(yōu)點,具有廣泛的應(yīng)用前景。
[1]汪光華.智能安防:視頻監(jiān)控全面解析與實例分析[M].北京:機(jī)械工業(yè)出版社,2012.
[2]華春夢,劉沖.基于S3C2440嵌入式平臺的USB攝像頭視頻監(jiān)控[J].電腦開發(fā)與應(yīng)用,2015.
[3]李佳林,劉永春.基于S3C2440網(wǎng)絡(luò)視頻采集系統(tǒng)的設(shè)計與實現(xiàn)[J].電腦知識與技術(shù),2014.
[4]陳恒鑫,林威,張欽宇.基于MJ PG- Stre am e r的移動視頻監(jiān)控系統(tǒng)設(shè)計[J].計算機(jī)測量與控制,2014.
Design and implementation of embedded video surveillance system based on S3C2440A
Zhang Chengfa,Sun Yuexing
(Weifang Engineering Vocational College,Qingzhou 262500,China)
This paper integrates the embedded technology and network technology into video surveillance system,designs the embedded video monitoring system based on ARM.The system uses the hardware circuit board based on ARM chip S3C2440A,embedded operating system and wireless network card to set up the embedded web server MJPG-streamer.Users can log in browser to implement the purpose of remote video surveillance.Tests show that the system is stable,the image is real time and accurate.
S3C2440A;video surveillance;Linux
張成法(1984—),男,山東青州,碩士;研究方向:單片機(jī)與嵌入式系統(tǒng)。