999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于S3C2410的網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)設(shè)計

2011-02-09 01:57:56董翠英
制造業(yè)自動化 2011年5期
關(guān)鍵詞:嵌入式系統(tǒng)

董翠英

(唐山學(xué)院 信息工程系,唐山 063000)

0 引言

隨著計算機網(wǎng)絡(luò)、多媒體技術(shù)的發(fā)展和圖像處理技術(shù)的提高,視頻監(jiān)控技術(shù)得到了快速發(fā)展,被廣泛應(yīng)用到各行各業(yè),如軍事、教育、科研、娛樂、醫(yī)療、體育等[1]。針對這一點,本文論述了如何在ARM硬件平臺上進行嵌入式Linux內(nèi)核的編譯與移植[2],并對在Linux操作系統(tǒng)下的USB驅(qū)動程序的開發(fā)進行了詳細的討論。最后,設(shè)計并實現(xiàn)了嵌入式視頻監(jiān)控系統(tǒng)軟件部分,在所建立的ARM Linux開發(fā)平臺上實現(xiàn)了基于USB攝像頭和boa嵌入式web 服務(wù)器的視頻監(jiān)控。本文重點討論了USB驅(qū)動程序和Web視頻服務(wù)器。

1 視頻監(jiān)控系統(tǒng)硬件組成

本系統(tǒng)使用的平臺功能框圖如圖1所示。該硬件平臺采用Samsung公司的處理器S3C2410。通過在USB接口上外接一個帶USB口的攝像頭,將采集到的視頻圖像數(shù)據(jù)放入輸入緩沖區(qū)。然后對圖像進行處理,最后通過網(wǎng)絡(luò)接口將圖像發(fā)送到Internet上。

2 視頻監(jiān)控系統(tǒng)軟件設(shè)計

2.1 嵌入式Linux內(nèi)核及定制

完整的嵌入式Linux一般包含啟動引導(dǎo)程序、內(nèi)核、文件系統(tǒng)三個基本部分。在一個新的硬件平臺上,選用嵌入式Linux作為操作系統(tǒng)來開發(fā)軟件,必須進行移植。根據(jù)不同的應(yīng)用系統(tǒng)設(shè)計的需要對Linux內(nèi)核的源代碼進行修改或者裁剪然后再重新編譯內(nèi)核。

圖1 嵌入式S3C2410的網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)硬件結(jié)構(gòu)

2.1.1 嵌入式系統(tǒng)引導(dǎo)程序

本系統(tǒng)選用的bootloader是vivi,vivi有兩種工作模式,即啟動加載模式和下載模式。當(dāng)vivi處于下載模式時,它為用戶提供一個命令行接口,通過該接口能使用vivi提供的一些命令集。

2.1.2 Linux內(nèi)核的剪裁及移植

一般情況下的Linux內(nèi)核的剪裁及移植,主要是針對操作系統(tǒng)中關(guān)于具體硬件以及除去不需要的功能模塊,如一些不會用到的外設(shè)支持、驅(qū)動程序、協(xié)議、網(wǎng)絡(luò)支持、文件格式等。Linux內(nèi)核具有很好的模塊性和伸縮性,在資源要求嚴(yán)格的情況下經(jīng)過合理的裁減可獲得明顯的效果[3]。

本系統(tǒng)的內(nèi)核版本是2.4.18,操作系統(tǒng)是嵌入式linux操作系統(tǒng),其剪裁及移植具體的配置方法是,在嵌入式內(nèi)核的/kernel目錄下輸入make menuconfig命令進行相應(yīng)選擇。

本系統(tǒng)需要進行視頻采集,在Multimedia devices項下,選擇

[*] Video For Linux

系統(tǒng)選用的視頻前端為USB攝像頭,因此需要在 USB support項USB Multimedia devices行下,選擇相應(yīng)的設(shè)備驅(qū)動。嵌入式內(nèi)核一般只集成了OV511等幾種攝像頭的驅(qū)動,若硬件需要其它的驅(qū)動,則要移植、編譯驅(qū)動程序后重新配置內(nèi)核,選擇相應(yīng)的設(shè)備驅(qū)動。內(nèi)核配置完成后,make命令后即可生成可燒寫的內(nèi)核zImage。

2.2 視頻監(jiān)控系統(tǒng)中嵌入式Linux根文件系統(tǒng)的實現(xiàn)

文件系統(tǒng)是基于被劃分的存儲設(shè)備上的邏輯單位上的一種定義文件的命名、存儲、組織及取出的方法。本系統(tǒng)采用的是適用于嵌入式系統(tǒng)的小文件系統(tǒng)Cramfs。

重新配置編譯內(nèi)核,開啟系統(tǒng)板的NFS文件系統(tǒng)功能后,重新編譯內(nèi)核,下載bootloader和kernel到硬件上,完成硬件設(shè)置[2]。

3 視頻監(jiān)控系統(tǒng)中圖像采集的軟件實現(xiàn)

啟動Linux后,若要對某一硬件外設(shè)進行讀寫,需要通過內(nèi)核調(diào)用該硬件的驅(qū)動來實現(xiàn)。因此實現(xiàn)視頻數(shù)據(jù)的采集需要兩個步驟,一是編譯硬件接口的驅(qū)動程序,二是通過內(nèi)核中提供的關(guān)于視頻采集部分的代碼編寫視頻采集的應(yīng)用程序。

3.1 USB攝像頭驅(qū)動的設(shè)計

本系統(tǒng)需要對USB攝像頭進行訪問和控制,USB設(shè)備的驅(qū)動需要和嵌入式內(nèi)核掛鉤。在內(nèi)核中和視頻相關(guān)的部分是Video For Linux簡稱V4L,因此USB攝像頭驅(qū)動要符合V4L標(biāo)準(zhǔn)。在驅(qū)動中聲明一個video_device結(jié)構(gòu),并指定文件操作函數(shù)指針數(shù)組.fops,向系統(tǒng)注冊[4]。在應(yīng)用程序發(fā)出文件操作命令的時候,內(nèi)核根據(jù)指針調(diào)用這些函數(shù),并將這些結(jié)構(gòu)作為參數(shù)傳遞,完成內(nèi)核和驅(qū)動之間的通訊。

在USB總線標(biāo)準(zhǔn)中定義了四種傳輸方式,分別是控制、中斷、批量和等時。對于本系統(tǒng)視頻采集的實時性要求較高,攝像頭采用的是等時方式。為盡快得到圖像數(shù)據(jù),需要在URB( USB Request Block)中指定USB_ISO_ASAP標(biāo)志,使其盡快發(fā)出本URB

usb->transfer_flags=USB_ISO_ASAP

本系統(tǒng)選用的是ZC301P型芯片攝像頭,要對其驅(qū)動進行加載。由于Linux內(nèi)核對此類攝像頭并不支持,所以需要自行加載驅(qū)動模塊。由于攝像頭的廠商開發(fā)產(chǎn)品時驅(qū)動基本上是基于Windows平臺的,在Linux下我們只能選擇開源的驅(qū)動源碼,本系統(tǒng)選擇的是SPCA5XX攝像頭通用驅(qū)動,在下面的驅(qū)動網(wǎng)址:http://mxhaard.free.fr可以下載到針對embeded環(huán)境的驅(qū)動源碼,有專門的patch,具體編譯加載步驟如下:

1)下載針對2.4內(nèi)核的驅(qū)動補丁[2],usb-

2.4.31 LE06.patch.tar.gz;

2)將這個patch放到內(nèi)核源代碼的/driver/usb目錄下,然后解壓、打補丁:

解壓:

tar-xvzf usb-2.4.31LE06.patch.tar.gz

打補丁:patch-p1<usb-2.4.31.patch

3)在打完補丁后就會在/driver/usb目錄下產(chǎn)生Config.in.rej和Makefile.rej兩個.rej文件,根據(jù)這兩個.rej文件分別修改此目錄下的Makefile和Config.in文件內(nèi)容,增加此部分代碼后,在完成內(nèi)核編譯后就能生成攝像頭的驅(qū)動模塊:spca5xx.o:

4)編譯內(nèi)核,在內(nèi)核目錄下make menuconfig,裝入原內(nèi)核配置文件,進入主菜單操作,選擇Multimedia devices子菜單,為內(nèi)核加入V4L內(nèi)核模塊。

5)在內(nèi)核主界面下選擇USB support子菜單項,為內(nèi)核加入USB接口的驅(qū)動模塊。

6)在USB Multimedia devices子項下選擇USB SPCA5XX型攝像頭。

7)在配置完內(nèi)核后,運行make dep->make zImage->make modules之后在內(nèi)核源碼/driver/usb/spca5xx目錄中可以生成spca5xx.o驅(qū)動模塊,通過nfs,即可在系統(tǒng)板上加載驅(qū)動測試,加載前需確保已加載videodev.o模塊。以上已經(jīng)把整個系統(tǒng)的硬件平臺,系統(tǒng)軟件,驅(qū)動程序部分確定下來,下一步將進行圖像采集應(yīng)用軟件的開發(fā)。

3.2 圖像采集的軟件實現(xiàn)

在攝像頭驅(qū)動成功后,要對攝像頭進行視頻采集的操作就是要針對V4L進行編程。使用Servfox或者Spcaserv作為攝像頭視頻采集的服務(wù)器端程序,用Spcaview作為客戶端來實現(xiàn)視頻的接收與處理。

3.3 移植視頻服務(wù)器應(yīng)用程序Servfox

從http://mxhaard.free.fr/Spca50x/embed

ded/Servfox下載ServfoxRl_0_0.tar.gz解壓后,會發(fā)現(xiàn)在其目錄中會有一個Makefile.arm文件,將此文件修改成 Makefile,可以用Vi打開修改編譯器路徑等,確保無誤后make,成功后就可生成我們要用到的Servfox程序。

3.4 移植客戶端Spcaview

從http://mxhaard.free.fr/spca50x/Download/下載Spcaview,由于此軟件包依賴于libsdl,所以在安裝spcaview之前必須要安裝SDL-1.2.13。

解壓源碼包:tar -zxvf SDL-1.2.13.tar.gz

安裝源碼包:cd SDL-1.2.13,運行 ./configure文件,編譯和安裝文件。

安裝spcaview軟件:

tar -zxvf spcaview-20061208;

cd spcaview-20061208;

make

為了方便用戶查看監(jiān)控情況,設(shè)計了一種網(wǎng)絡(luò)視頻服務(wù)器,使用戶可以更方便的借助windows IE瀏覽器來查看實時監(jiān)控情況。

4 嵌入式Web視頻服務(wù)器的實現(xiàn)

隨著嵌入式技術(shù)的發(fā)展和高速寬帶網(wǎng)絡(luò)的普及,利用網(wǎng)絡(luò)實現(xiàn)遠程監(jiān)控已為人們廣泛接受,用戶使用Web瀏覽器,通過以太網(wǎng)遠程訪問內(nèi)置Web服務(wù)器的監(jiān)控攝像機,不但可以實現(xiàn)對現(xiàn)場的遠程視頻監(jiān)控,而且可以向監(jiān)控現(xiàn)場發(fā)送指令。基于B/S結(jié)構(gòu)的網(wǎng)絡(luò)視頻監(jiān)控實現(xiàn):B/S結(jié)構(gòu),即Browser/Server(瀏覽器/服務(wù)器)結(jié)構(gòu),用戶在客戶端采用瀏覽器(Browse)實現(xiàn)對Web服務(wù)器的訪問,服務(wù)器在后臺運行程序,把結(jié)果返回給瀏覽器顯示[4]。

在系統(tǒng)中,客戶端局域網(wǎng)內(nèi)連網(wǎng)的PC,在瀏覽器地址欄內(nèi)輸入視頻服務(wù)器的IP地址,就能在網(wǎng)頁里顯示攝像頭的監(jiān)控圖像如圖2(a)所示。客戶端在上位機軟件中輸入10.10.24.2在IP地址欄,客戶端就能實現(xiàn)監(jiān)控圖像的播放如圖2(b)所示。

5 結(jié)束語

根據(jù)以上監(jiān)控結(jié)果,可進一步把基于ARM的視頻監(jiān)控系統(tǒng)設(shè)計成一體的網(wǎng)絡(luò)攝像頭,可廣泛用于網(wǎng)絡(luò)資源較發(fā)達的場合,如智能家居中主人對家庭安全情況的檢測,家長對幼兒在幼兒園中情況觀察、無人值守的重點實驗室、公司對員工的工作情況的檢查等等。總之,隨著人們的人們的安全意識的增強,視頻監(jiān)控被廣泛應(yīng)用到各行各業(yè),有著非常廣闊的市場前景。

圖2 監(jiān)控結(jié)果

[1] 駱云志,劉治紅.視頻監(jiān)控技術(shù)發(fā)展綜述[J].兵工自動化,2009,28(1):1-3.

[2] 朱弘強,朱惠強,邵吉.基于雙絞線傳輸?shù)囊曨l監(jiān)控系統(tǒng)[J],計算機工程,2008,34(增刊):34-36.

[3] Advanced Linux Programming [M].First Edition,by Alex Samuel, Jeffrey Oldham and Mark Mitchell, 2001.

[4] 陳莉君.Linux操作系統(tǒng)內(nèi)核分析[M].北京:人民郵電出版社,2005.

猜你喜歡
嵌入式系統(tǒng)
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無人機系統(tǒng)
ZC系列無人機遙感系統(tǒng)
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統(tǒng)
半沸制皂系統(tǒng)(下)
TS系列紅外傳感器在嵌入式控制系統(tǒng)中的應(yīng)用
電子制作(2019年7期)2019-04-25 13:17:14
嵌入式系統(tǒng)通信技術(shù)的應(yīng)用
電子制作(2018年18期)2018-11-14 01:48:16
搭建基于Qt的嵌入式開發(fā)平臺
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應(yīng)用
主站蜘蛛池模板: 亚洲精品国产综合99久久夜夜嗨| 国产成人无码综合亚洲日韩不卡| 乱人伦中文视频在线观看免费| 亚州AV秘 一区二区三区| 国产性爱网站| 色婷婷亚洲综合五月| 国产午夜精品鲁丝片| 91丝袜美腿高跟国产极品老师| 亚洲无码高清视频在线观看| 人人爱天天做夜夜爽| 成人蜜桃网| 久青草国产高清在线视频| 福利片91| 妇女自拍偷自拍亚洲精品| 国产成人精品综合| 在线高清亚洲精品二区| 欧美性色综合网| 中文一区二区视频| 国产尤物在线播放| 亚洲精品动漫| 手机在线看片不卡中文字幕| 在线毛片网站| 992tv国产人成在线观看| 亚洲无码91视频| 国产成人三级| 久久免费精品琪琪| 91毛片网| 亚洲日韩Av中文字幕无码| 久久亚洲精少妇毛片午夜无码| 五月婷婷亚洲综合| 精品国产一区二区三区在线观看| 天天综合亚洲| 国产99精品视频| 日本高清在线看免费观看| 蜜桃视频一区二区| 午夜福利亚洲精品| 国产丝袜一区二区三区视频免下载| 国产中文一区二区苍井空| 999精品色在线观看| 91精品伊人久久大香线蕉| 日韩成人在线网站| 亚洲免费毛片| 最近最新中文字幕在线第一页 | 国产精鲁鲁网在线视频| 一本大道无码日韩精品影视| 一级毛片在线播放| 国产微拍精品| 麻豆精品在线视频| 在线无码九区| 在线国产欧美| 在线观看国产精品一区| 亚洲视频影院| 丰满人妻一区二区三区视频| 欧美色亚洲| 国产欧美日韩va| 热99精品视频| 乱系列中文字幕在线视频| 精品人妻系列无码专区久久| 天天色天天综合网| 国产欧美日韩18| 国产高清不卡| 少妇精品在线| 丝袜美女被出水视频一区| 国产成人一区免费观看 | 亚洲高清免费在线观看| 毛片网站在线看| 国产成人一区| 日韩精品一区二区三区swag| 无码中文字幕加勒比高清| 亚洲乱码精品久久久久..| 亚洲成a人在线播放www| 午夜视频免费试看| 97视频精品全国免费观看| 国产粉嫩粉嫩的18在线播放91| 熟女成人国产精品视频| 国产精品99久久久| 亚洲不卡影院| 亚洲无码视频一区二区三区 | 国产爽妇精品| 国产精品视频观看裸模| 国产美女精品人人做人人爽| 波多野结衣一区二区三区88|