當前位置:首頁 > 嵌入式 > 嵌入式軟件
[導讀]基于ARM的遠程視頻監(jiān)控系統(tǒng)的設計

摘要:在ARM 微處理器平臺上移植嵌入式Linux 操作系統(tǒng),完成視頻采集任務,并以服務器方式將圖像發(fā)送到網(wǎng)絡,從而實現(xiàn)遠程監(jiān)控。系統(tǒng)以ARM9 微處理器AT91RM9200 為主處理器,采用普通USB 攝像頭作為圖像采集設備,構(gòu)建了一種可靠性好、價格低廉和使用方便的網(wǎng)絡視頻監(jiān)控系統(tǒng)。

0 引言

在國內(nèi)外市場上,視頻監(jiān)控主要有模擬視頻監(jiān)控和數(shù)字視頻監(jiān)控。前者技術(shù)發(fā)展已經(jīng)非常成熟,在實際工程應用中得到廣泛應用,但只適合于小范圍的區(qū)域監(jiān)控,而且系統(tǒng)的擴展能力差,已經(jīng)不能適應社會發(fā)展的需要。后者又可分為基于PC 機的視頻監(jiān)控系統(tǒng)和基于嵌入式的視頻監(jiān)控系統(tǒng)。嵌入式視頻監(jiān)控系統(tǒng)與PC 視頻監(jiān)控系統(tǒng)相比,具有體積小、功耗低、性能穩(wěn)定的特點,很適合于在銀行、學校等公共場所的安全監(jiān)控。采用USB 攝像頭作為視頻采集設備的嵌入式視頻監(jiān)控系統(tǒng),更由于其價格低廉、通用性好且接口標準而備受青睞。

本系統(tǒng)基于 ARM9 處理器和嵌入式Linux 操作系統(tǒng),利用USB 接口攝像頭實現(xiàn)數(shù)字圖像采集任務,同時直接將數(shù)據(jù)以視頻服務器方式發(fā)送到網(wǎng)絡,用戶可以直接通過Web 瀏覽器進行遠程實時監(jiān)控。

1 硬件平臺設計

1.1 微處理器模塊

平臺采用 ATMEL 公司的AT91RM9200 處理器,AT91RM9200 是基于ARM920T 內(nèi)核的低功耗32 位RISC 微處理器,其主頻為180MHz,處理速度快,功能強,性價比高,能很好滿足嵌入式Linux 系統(tǒng)的需求,還集成了包括USB2.0 主機端口和設備端口以及10/100MBase-T 以太網(wǎng)接口。在此基礎(chǔ)上,配置了64M 的Nand Flash 用作存儲設備,2×32M的32 為SDRAM。處理器通過USB 接口連接攝像頭,通過以太網(wǎng)接口連接網(wǎng)絡。系統(tǒng)硬件平臺功能如圖1 所示。


圖 1 監(jiān)控系統(tǒng)硬件

[!--empirenews.page--]

1.2 USB 主設備模塊

AT91RM9200 片內(nèi)集成的USB 主機端口集成一個跟集線器,并在下游端口集成收發(fā)器,它提供幾個半雙工高速串行通信端口,速率為12Mbit/s,最多可連接127 個USB 器件。本系統(tǒng)外擴一個USB 主機端口來支持USB 攝像頭的訪問。

系統(tǒng)采用的是應用廣泛的選用羅技快看酷訊版攝像頭進行數(shù)據(jù)采集,這種攝像頭可以實現(xiàn)硬件JPEG 編碼,視頻數(shù)據(jù)由攝像頭采集,一旦主控制器獲得視頻數(shù)據(jù)請求,則通過USB接口讀取其緩存的數(shù)據(jù),并對圖像數(shù)據(jù)進行壓縮編碼,然后基于socket 編程來發(fā)送這些壓縮后的數(shù)據(jù)到服務器。

1.3 以太網(wǎng)接口模塊

AT91RM9200 的在片以太網(wǎng)卡端口和網(wǎng)絡物理層芯片DM9161E 的MII 接口通信。片內(nèi)以太網(wǎng)卡通過DMA 通道進行數(shù)據(jù)的發(fā)送,不影響AT91RM9200 的正常運行。首先正確設置傳送控制寄存器和傳送地址寄存器的傳送數(shù)據(jù)塊字節(jié)數(shù)、數(shù)據(jù)塊存儲首地址等參數(shù),隨后依次從指定數(shù)據(jù)存儲區(qū)地址讀取1024b 數(shù)據(jù),送入內(nèi)部發(fā)送緩沖器中,由MAC 對數(shù)據(jù)進行封裝發(fā)送,同時記錄已傳送字節(jié)數(shù),直到數(shù)據(jù)塊發(fā)送完畢。當發(fā)送完一組數(shù)據(jù)后,發(fā)出DMA中斷請求,由AT91RM9200 進行相應的處理。整個網(wǎng)絡子系統(tǒng)電路由AT91RM9200 控制和調(diào)度。

2 嵌入式Linux 開發(fā)環(huán)境的建立

2.1 交叉編譯鏈的建立

嵌入式開發(fā)與普通開發(fā)有個顯著的不同是,普通開發(fā)是在本機開發(fā)、調(diào)試,本機運行,而嵌入式由于資源有限,不能直接在嵌入式目標機上運行開發(fā)工具,因此嵌入式開發(fā)一般采用交叉編譯方式,即在開發(fā)主機上編譯目標機上運行的程序。交叉編譯鏈可以自己制作,也可以通過網(wǎng)絡下載別人已制作好的交叉編譯鏈直接使用。本系統(tǒng)所用交叉編譯鏈版本是3.4.3。

2.2 配置并編譯內(nèi)核

系統(tǒng)選用開源的 Linux 2.6.14 版內(nèi)核作為操作系統(tǒng),以交叉編譯方式編譯,即在普通PC機上運行Fedora 8 環(huán)境下,用交叉編譯鏈編譯在ARM 9 機器上運行的Linux 內(nèi)核。內(nèi)核用tftp 方式下載到開發(fā)板,然后解壓自引導。具體操作如下:

(1) 給內(nèi)核補丁,下載Linux2.6.14 內(nèi)核源碼linux-2.6.14.tar.bz2 和AT91RM9200 補丁2.6.14-at91.patch.gz,然后:

3 視頻采集的實現(xiàn)

3.1 USB 攝像頭驅(qū)動

Linux 對于視頻采集設備的支持,是通過Video4Linux(V4L)實現(xiàn)的,V4L 為視頻應用程序提供了一套統(tǒng)一的API 函數(shù),視頻應用程序通過標準的API 接口實現(xiàn)與內(nèi)核和驅(qū)動的通信,實現(xiàn)視頻設備的各種功能。對于USB 接口攝像頭,驅(qū)動程序?qū)崿F(xiàn)了基本的I/O 接口函數(shù)open、close、read、write,實現(xiàn)了內(nèi)存映射功能函數(shù)mmap 和控制函數(shù)ioctl,并對于中斷進行了處理。

Linux 中視頻采集的實現(xiàn),可以用read()函數(shù)直接讀取數(shù)據(jù),也可以用mmap()函數(shù)通過內(nèi)存映射工作。內(nèi)存映射方式直接將設備地址映射到內(nèi)存地址空間,使用方便,效率更高,因此本系統(tǒng)采用內(nèi)存方式獲取視頻數(shù)據(jù)。

本系統(tǒng)的設備控制函數(shù)ioctl 實現(xiàn)的主要設備控制命令有獲得攝像頭信息VEDIOCGCAP,判斷獲取圖片是否成功VEDIOSYNC,讀取圖片相關(guān)信息VEDIOCGPIC,以及獲取圖片VEDIOGETPIC。

3.2 視頻數(shù)據(jù)采集

本系統(tǒng)數(shù)據(jù)采集程序也是基于 V4l 編寫應用程序,其基本流程首先通過open 系統(tǒng)調(diào)用打開攝像頭設備,如果成功則繼續(xù)通過ioctl 函數(shù)命令(參數(shù)VEDIOCGCAP)獲取攝像頭相關(guān)信息,ioctl 函數(shù)命令(VEDIOGETPIC)獲取圖像數(shù)據(jù)。

[!--empirenews.page--]

4 遠程監(jiān)控的實現(xiàn)

4.1 BOA 服務器的建立

Web 服務器在本方案中采用了Linux 系統(tǒng)中常用的Boa,Boa 是一種非常小巧的Web服務器,其可執(zhí)行代碼只有大約60KB 左右。Boa 支持CGI,速度快和安全性好,很適合嵌入式系統(tǒng)使用。使用時只需用已建好的交叉編譯鏈編譯,然后修改配置文件boa.cONf,為Boa 創(chuàng)建需要的目錄/var/www/、/var/log/boa/acces_log 和/var/log/boa/error_log,以及將通用mime.types 拷貝到/etc 目錄下,即完成了BOA 的配置。

4.2 遠程視頻服務的實現(xiàn)

遠程視頻服務基于 servfox/開源軟件包,servfox 流媒體服務器使用V4L 完成原始視頻圖像的獲取,然后把視頻圖像以MJPEG 的方式壓縮,通過TCP 協(xié)議向網(wǎng)絡發(fā)送。

復制 spcaview 軟件包的目錄http-java-applet 到Boa 的Web 服務器目錄下,啟動boa 服務,再運行命令,#servfox –s 640x480 –w 7070.

即已完成視頻服務器的建立,在和ARM 開發(fā)板連接的PC 機瀏覽器上,輸入開發(fā)板的IP 地址和Boa 服務器目錄下的網(wǎng)頁即可觀看攝像頭所采集的信息。

5、結(jié)論

本文設計實現(xiàn)的嵌入式Linux 的網(wǎng)絡視頻監(jiān)控系統(tǒng),是一種低成本的網(wǎng)絡視頻監(jiān)控方案,而且可以直接連入以太網(wǎng),通過瀏覽器即可觀看,畫面流暢,簡易方便,具有廣泛的應用價值。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉