摘 要:針對復(fù)雜工業(yè)環(huán)境,需要對圖像等多種信息進行監(jiān)控的問題,介紹一種基于ARM微處理器的嵌入式遠程網(wǎng)絡(luò)監(jiān)控系統(tǒng)。給出遠程監(jiān)控系統(tǒng)的整體架構(gòu),在此基礎(chǔ)上完成系統(tǒng)的軟件結(jié)構(gòu)、視頻采集模塊、視頻壓縮處理模塊的設(shè)計。最后對所設(shè)計的嵌入式遠程網(wǎng)絡(luò)監(jiān)控系統(tǒng)進行了測試分析,系統(tǒng)性能穩(wěn)定可靠、實時性好。
關(guān)鍵詞:ARM;嵌入式Linux;監(jiān)控系統(tǒng);視頻采集
中圖分類號:TP368 文獻標識碼:B
文章編號:1004-373X(2008)06-022-02
Design of Embedded Remote Monitoring System Based on the ARM
ZHANG Xiaodong,LI Xiujuan,ZHANG Jie
(College of Electrical Engineering,Henan University of Technology,Zhengzhou,450007,China)
Abstract:An embedded remote monitoring system based on the ARM microprocessor is introduced to solve monitoring problems aiming at the composite informations in complex industrial environment.The overall framework of the remote monitoring system is proposed.On this basis,the system′s software structure,video capture module and video compression module are designed.Finally,the embedded remote monitoring system based on the network is tested and analyzed.Results show that this system has advantages of reliability and good real-time performance.This is helpful for the research on the embedded systems.
Keywords:ARM;embedded Linux;monitoring system;video capture
近年來,遠程監(jiān)控技術(shù)在環(huán)境監(jiān)測、工業(yè)控制和樓宇自動化等領(lǐng)域應(yīng)用越來越廣泛。以往的監(jiān)控系統(tǒng)由于受到技術(shù)發(fā)展水平的制約,常采用視頻線、控制線等連接。這種監(jiān)控方式有效距離短、成本高,通常只適用于小范圍的區(qū)域監(jiān)控;系統(tǒng)擴展能力差,無法形成有效的報警信息聯(lián)動。此外,已有系統(tǒng)往往只能實現(xiàn)簡單的報警信息傳輸,無法完成對監(jiān)控對象多個監(jiān)控參數(shù)的智能監(jiān)控[1]。
ARM處理器由于其體積小、功耗低、應(yīng)用方案靈活、支持軟件豐富、成本低等特點近年來得到了蓬勃發(fā)展,已經(jīng)廣泛應(yīng)用于消費類電子產(chǎn)品、無線通訊、圖像應(yīng)用、工業(yè)控制等領(lǐng)域[2,3]。本文對一種基于ARM處理器的多參數(shù)遠程網(wǎng)絡(luò)監(jiān)控設(shè)備進行了介紹,與以往監(jiān)控方式相比,該設(shè)計實時性好、功耗小、成本低,能夠可靠實現(xiàn)對監(jiān)控對象多個監(jiān)控參數(shù)的智能監(jiān)控。
1 系統(tǒng)的硬件組成
基于ARM處理器的多參數(shù)遠程網(wǎng)絡(luò)監(jiān)控設(shè)備的設(shè)計如下:該監(jiān)控系統(tǒng)主要由現(xiàn)場網(wǎng)絡(luò)高速攝像頭與傳感器、監(jiān)控系統(tǒng)控制器(Web服務(wù)器)、客戶端瀏覽器3部分組成。其中,利用ARM920T內(nèi)核的S3C2410處理器并移植嵌入式Linux操作系統(tǒng)構(gòu)成的監(jiān)控系統(tǒng)控制器是該系統(tǒng)的核心,如圖1所示,具體包括視頻信號壓縮編碼模塊、控制模塊、網(wǎng)絡(luò)接口模塊等。主要完成圖像信號與傳感器信號的管理、LCD觸摸屏驅(qū)動、UART接口、以太網(wǎng)控制器、鍵盤驅(qū)動、控制信號的解釋執(zhí)行、網(wǎng)絡(luò)數(shù)據(jù)的收發(fā)等功能。這些模塊全部集成在一個設(shè)備中,安裝、調(diào)試方便。同時,該控制器可通過網(wǎng)絡(luò)進行遠程設(shè)置,非常適合無人值守系統(tǒng)以及惡劣環(huán)境下的參數(shù)監(jiān)控。
傳感器的數(shù)據(jù)采集由處理器S3C2410芯片上的A/D,D/A接口以及相關(guān)的控制程序完成。圖像信號由USB攝像頭采集后,經(jīng)MPEG-4視頻壓縮傳送給S3C2410嵌入式處理器為基礎(chǔ)的Web服務(wù)器,監(jiān)控人員利用遠端PC機上的客戶端瀏覽器,經(jīng)由網(wǎng)絡(luò)通過訪問Web服務(wù)器的方式獲得現(xiàn)場的視頻圖像和監(jiān)控數(shù)據(jù)并進行遠程控制。
視頻對象的采集選用網(wǎng)眼3000CMOS攝像頭。監(jiān)控系統(tǒng)控制器的核心CPU選用基于ARM920T內(nèi)核的16/32位RISC處理器S3C2410X。該處理器功能強大、性價比高、功耗低、提供了一套較完整的通用外圍設(shè)備接口,帶MMU(內(nèi)存管理單元),可支持Linux,μC/OS Ⅱ,Windows CE等多種操作系統(tǒng)的移植[4]。網(wǎng)絡(luò)接口模塊中的以太網(wǎng)接口芯片選用聯(lián)杰國際的10 M/100 M自適應(yīng)以太網(wǎng)控制芯片DM9000。S3C2410處理器與DM9000的硬件連接如圖2所示。
2 系統(tǒng)的軟件設(shè)計
2.1 系統(tǒng)的嵌入式軟件結(jié)構(gòu)
嵌入式Linux功能強大且內(nèi)核代碼開放,故監(jiān)控系統(tǒng)選用嵌入式Linux操作系統(tǒng),采用交叉編譯調(diào)試的方式建立交叉編譯環(huán)境。嵌入式Linux由內(nèi)核Kernel和文件系統(tǒng)組成,本系統(tǒng)采用2.4.18版本的Linux內(nèi)核。根文件系統(tǒng)使用root.cramfs,應(yīng)用程序使用yaffs。用NFS方式建立宿主機和開發(fā)板的通訊,通過Minicom設(shè)置、監(jiān)視串口工作狀態(tài),接收、顯示串口收到的信息[5]。該系統(tǒng)的整體軟件結(jié)構(gòu)包括底層嵌入式硬件、嵌入式Linux操作系統(tǒng)、操作系統(tǒng)服務(wù)和應(yīng)用程序4個部分。
2.2 視頻采集模塊的設(shè)計
視頻數(shù)據(jù)的采集選用基于OV511芯片的網(wǎng)眼3000CMOS攝像頭,該USB攝像頭可被Linux內(nèi)核公開支持,不需要額外編寫攝像頭驅(qū)動程序。進行視頻采集時,首先加載關(guān)于視頻設(shè)備的內(nèi)核驅(qū)動模塊Video4Linux,為視頻采集設(shè)備提供編程接口;然后使用insmod命令動態(tài)加載攝像頭驅(qū)動程序模塊,攝像頭即可正常工作。Linux的Video4Linux模塊為視頻應(yīng)用程序提供了一套統(tǒng)一的API函數(shù)集。Video4Linux向虛擬文件系統(tǒng)注冊視頻設(shè)備文件,應(yīng)用程序通過操作視頻設(shè)備文件實現(xiàn)對視頻設(shè)備的訪問[6]。下面是視頻采集應(yīng)用程序?qū)崿F(xiàn)的具體過程:首先通過調(diào)用函數(shù)open(“/dev/video0”,O_RDWR)打開視頻設(shè)備,若錯誤則返回-1;然后通過ioctl(fd,VIDIOCGCAP,vid_cap)函數(shù)訪問頭文件中的struct video_capability讀取攝像頭采集的圖片的高度、寬度等相關(guān)信息,接下來就可以通過攝像頭采集圖像數(shù)據(jù)。該系統(tǒng)采用mmap()內(nèi)存映射方式來截取視頻圖像。即設(shè)置圖像的大小等信息后,將設(shè)備文件的圖像映射到內(nèi)存中,然后開始連續(xù)圖像幀的視頻采集。整個視頻采集流程如圖3所示。
2.3 視頻壓縮處理的實現(xiàn)
攝像頭采集的未經(jīng)壓縮的視頻信號需要較高的帶寬,很難實現(xiàn)實時傳輸?shù)囊蟆PEG-4視頻壓縮方式具有可交互性、可擴展性和高壓縮比,已成為多媒體通信領(lǐng)域的一種標準算法?;谄湟陨蟽?yōu)點,本系統(tǒng)選用MPEG-4視頻壓縮編碼方式。其圖像壓縮編碼的過程概括如下:首先對視頻序列進行分析,從原始圖像中分割出各個視頻對象。其中包括利用中值濾波對原始視頻/圖像進行簡化、對視頻/圖像進行特征提取、確定分割決策等。然后針對不用的視頻對象VO采用不同的編碼策略,利用VOP視頻編碼技術(shù)對視頻對象進行編碼。最后各個視頻對象的碼流進行復(fù)合后輸出。
3 結(jié) 語
介紹的一種基于ARM處理器的多參數(shù)遠程網(wǎng)絡(luò)監(jiān)控設(shè)備經(jīng)過對主要模塊的測試分析,該系統(tǒng)性能穩(wěn)定、實時性好,可廣泛應(yīng)用于倉儲、銀行、軍事設(shè)施、居民小區(qū)等場合的安防監(jiān)控和工業(yè)現(xiàn)場、電力電站、電信基站的無人值守系統(tǒng),具有廣闊的應(yīng)用前景和一定的市場潛力。
參考文獻
[1]馮冬芹,金建祥,褚健.Ethernet與工業(yè)控制網(wǎng)絡(luò)\\[J\\].儀器儀表學(xué)報,2003(1):23-24.
[2]杜春雷.ARM體系結(jié)構(gòu)與編程[M].北京:清華大學(xué)出版社,2003.
[3]于明,范書瑞,曾祥燁.ARM9嵌入式系統(tǒng)設(shè)計與開發(fā)教程[M].北京:電子工業(yè)出版社,2006.
[4]S3C2410X 32-Bit RISC Microprocessor User′s Manual[S].Samsung Electronics,2003.
[5] 孫天澤,袁文菊,張海峰.嵌入式設(shè)計及Linux驅(qū)動開發(fā)指南[CD2]基于ARM9 處理器[M].北京:電子工業(yè)出版社,2005.
[6]Alan Cox.Video4Linux Programming[CP].alan@redhat.com.2000.
作者簡介 張曉東 男,1980年出生,助教。研究方向為嵌入式系統(tǒng)。