<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 嵌入式視頻監控系統設計方案

嵌入式視頻監控系統設計方案

作者: 時(shí)間:2013-02-19 來(lái)源:網(wǎng)絡(luò ) 收藏

引言

相比傳統,嵌入式具有體積小、實(shí)時(shí)性強、性?xún)r(jià)比高、可靠性高、組網(wǎng)方便、可遠程監控等優(yōu)點(diǎn),因而更適用于工業(yè)控制、銀行、政府部門(mén)的安防系統中。本文提供的這套系統,采用的s3C2440具有更高的性?xún)r(jià)比,并且基于B/S架構來(lái)構建網(wǎng)絡(luò )進(jìn)行數據傳輸,用戶(hù)可直接通過(guò)瀏覽器訪(fǎng)問(wèn),相比C/S架構,本系統更符合客戶(hù)對網(wǎng)絡(luò )化的要求。

1 嵌入式方案

采用模塊化設計方法,將系統分為3個(gè)功能模塊,分別是:前端視頻采集及警報模塊、嵌入式Web服務(wù)器模塊、后端用戶(hù)監視模塊。前端視頻采集及警報模塊負責視頻的采集、存儲、處理及傳輸,并實(shí)時(shí)監控現場(chǎng)環(huán)境溫度,提供火險預警。嵌入式Web服務(wù)器模塊則負責處理監控端發(fā)來(lái)的請求并為用戶(hù)提供實(shí)時(shí)監控數據;后端用戶(hù)監視模塊實(shí)現對遠程的實(shí)時(shí)監控,并與web服務(wù)器交互。整個(gè)系統結構框圖如圖1所示。

2 系統前端部分的實(shí)現

2.1 前端軟件平臺的搭建

首先,在PC上建立交叉開(kāi)發(fā)環(huán)境。然后進(jìn)行Boot—loader的移植,本系統使用U-Boot一1.16,它支持10種處理器,214種開(kāi)發(fā)板Ⅲ。然而對于本系統所選用的開(kāi)發(fā)板,它并沒(méi)有直接支持,但由于其支持s3c24lo開(kāi)發(fā)板,因而只需對代碼修進(jìn)行少量的修改,即可實(shí)現對本系統的支持。主要工作包括修改SDRAM的配置;分頻比(FCLK、HCLK、PcLK);系統時(shí)鐘獲取函數(get’PCLK()、get_HCLK()、get一PLLCLK()等);實(shí)現對NAND Flash、yaffs文件系統燒寫(xiě)的支持等。完成Boot—loader的移植后,即可進(jìn)行Linux內核的移植,其主要任務(wù)是添加本系統相關(guān)硬件的驅動(dòng)程序,如USB、網(wǎng)卡等,并對其進(jìn)行相應的修改,使其支持平臺,然后靜態(tài)編譯入內核。針對本系統攝像頭驅動(dòng)采用動(dòng)態(tài)加載的方式,在進(jìn)行內核配置的時(shí)候需要選中“L0adable modulesupport”選項。最后利用Busybox來(lái)構建根文件系統。

現場(chǎng)報警功能部分的實(shí)現,采用溫度傳感器Dsl8820實(shí)時(shí)采集現場(chǎng)溫度,溫度預警值設為50℃,當溫度超過(guò)該預警值,立即驅動(dòng)前端機上的蜂鳴器,提醒現場(chǎng)人員環(huán)境出現異常,可能有火情。

2.2 前端視頻采集的實(shí)現

Vide04“nux(簡(jiǎn)稱(chēng)V4L)是Ljnux中關(guān)于視頻設備的內核驅動(dòng),它為針對視頻設備的應用程序編程提供了一系列接口函數印]。本系統使用UsB口攝像頭采集視頻數據,首先要開(kāi)發(fā)相應的驅動(dòng)程序,即針對usB攝像頭設備/dev/videoo,進(jìn)行視頻圖像采集方面的程序設計。要完成針對基于V4L的USB視頻數據采集,首先要獲取視頻設備的設備信息,初始化采集窗口、色度模式、幀狀態(tài),然后才能進(jìn)行視頻圖像的采集。視頻采集流程如圖2所示。

在獲取到設備信息并設置完攝像頭參數后,即可進(jìn)行數據采集,本系統使用mmap()把設備文件映射到內存中,從而繞過(guò)內核緩沖區,加速I(mǎi)/O訪(fǎng)問(wèn)速度。具體操作如下:

首先,使用ioctl(vide伊>fd,VIDIocGMBuF,(vide擴>videombuf)函數獲得攝像頭存儲緩沖區的幀信息(其中、,id∞為struct vdIn*),之后修改、,ideo—map中的設置。然后將攝像頭對應的設備文件映射到內存區,使用video->pFramebuffer一((unsigned char*)mmap(0,、,ide0->、,ideombu£si距,PROT—READ I PROT—WRITE,MAP-SHARED,、rideo->fd,o)。該映射內容區可讀可寫(xiě),并且不同進(jìn)程間可共享。接著(zhù)就可進(jìn)行視頻的截取了,使用函數ioctl(video->fd,VIDIOCMCAPTURE,(video->mmap)),若成功,便開(kāi)始截取一幀視頻數據,最后調用VDlOcsYNC等待一幀截取結束。

蜂鳴器相關(guān)文章:蜂鳴器原理

上一頁(yè) 1 2 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>