摘 要:針對復雜工業環境,需要對圖像等多種信息進行監控的問題,介紹一種基于ARM微處理器的嵌入式遠程網絡監控系統。給出遠程監控系統的整體架構,在此基礎上完成系統的軟件結構、視頻采集模塊、視頻壓縮處理模塊的設計。最后對所設計的嵌入式遠程網絡監控系統進行了測試分析,系統性能穩定可靠、實時性好。
關鍵詞:ARM;嵌入式Linux;監控系統;視頻采集
中圖分類號: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
近年來,遠程監控技術在環境監測、工業控制和樓宇自動化等領域應用越來越廣泛。以往的監控系統由于受到技術發展水平的制約,常采用視頻線、控制線等連接。這種監控方式有效距離短、成本高,通常只適用于小范圍的區域監控;系統擴展能力差,無法形成有效的報警信息聯動。此外,已有系統往往只能實現簡單的報警信息傳輸,無法完成對監控對象多個監控參數的智能監控[1]。
ARM處理器由于其體積小、功耗低、應用方案靈活、支持軟件豐富、成本低等特點近年來得到了蓬勃發展,已經廣泛應用于消費類電子產品、無線通訊、圖像應用、工業控制等領域[2,3]。本文對一種基于ARM處理器的多參數遠程網絡監控設備進行了介紹,與以往監控方式相比,該設計實時性好、功耗小、成本低,能夠可靠實現對監控對象多個監控參數的智能監控。
1 系統的硬件組成
基于ARM處理器的多參數遠程網絡監控設備的設計如下:該監控系統主要由現場網絡高速攝像頭與傳感器、監控系統控制器(Web服務器)、客戶端瀏覽器3部分組成。其中,利用ARM920T內核的S3C2410處理器并移植嵌入式Linux操作系統構成的監控系統控制器是該系統的核心,如圖1所示,具體包括視頻信號壓縮編碼模塊、控制模塊、網絡接口模塊等。主要完成圖像信號與傳感器信號的管理、LCD觸摸屏驅動、UART接口、以太網控制器、鍵盤驅動、控制信號的解釋執行、網絡數據的收發等功能。這些模塊全部集成在一個設備中,安裝、調試方便。同時,該控制器可通過網絡進行遠程設置,非常適合無人值守系統以及惡劣環境下的參數監控。

傳感器的數據采集由處理器S3C2410芯片上的A/D,D/A接口以及相關的控制程序完成。圖像信號由USB攝像頭采集后,經MPEG-4視頻壓縮傳送給S3C2410嵌入式處理器為基礎的Web服務器,監控人員利用遠端PC機上的客戶端瀏覽器,經由網絡通過訪問Web服務器的方式獲得現場的視頻圖像和監控數據并進行遠程控制。
視頻對象的采集選用網眼3000CMOS攝像頭。監控系統控制器的核心CPU選用基于ARM920T內核的16/32位RISC處理器S3C2410X。該處理器功能強大、性價比高、功耗低、提供了一套較完整的通用外圍設備接口,帶MMU(內存管理單元),可支持Linux,μC/OS Ⅱ,Windows CE等多種操作系統的移植[4]。網絡接口模塊中的以太網接口芯片選用聯杰國際的10 M/100 M自適應以太網控制芯片DM9000。S3C2410處理器與DM9000的硬件連接如圖2所示。

2 系統的軟件設計
2.1 系統的嵌入式軟件結構
嵌入式Linux功能強大且內核代碼開放,故監控系統選用嵌入式Linux操作系統,采用交叉編譯調試的方式建立交叉編譯環境。嵌入式Linux由內核Kernel和文件系統組成,本系統采用2.4.18版本的Linux內核。根文件系統使用root.cramfs,應用程序使用yaffs。用NFS方式建立宿主機和開發板的通訊,通過Minicom設置、監視串口工作狀態,接收、顯示串口收到的信息[5]。該系統的整體軟件結構包括底層嵌入式硬件、嵌入式Linux操作系統、操作系統服務和應用程序4個部分。
2.2 視頻采集模塊的設計
視頻數據的采集選用基于OV511芯片的網眼3000CMOS攝像頭,該USB攝像頭可被Linux內核公開支持,不需要額外編寫攝像頭驅動程序。進行視頻采集時,首先加載關于視頻設備的內核驅動模塊Video4Linux,為視頻采集設備提供編程接口;然后使用insmod命令動態加載攝像頭驅動程序模塊,攝像頭即可正常工作。Linux的Video4Linux模塊為視頻應用程序提供了一套統一的API函數集。Video4Linux向虛擬文件系統注冊視頻設備文件,應用程序通過操作視頻設備文件實現對視頻設備的訪問[6]。下面是視頻采集應用程序實現的具體過程:首先通過調用函數open(“/dev/video0”,O_RDWR)打開視頻設備,若錯誤則返回-1;然后通過ioctl(fd,VIDIOCGCAP,vid_cap)函數訪問頭文件中的struct video_capability讀取攝像頭采集的圖片的高度、寬度等相關信息,接下來就可以通過攝像頭采集圖像數據。該系統采用mmap()內存映射方式來截取視頻圖像。即設置圖像的大小等信息后,將設備文件的圖像映射到內存中,然后開始連續圖像幀的視頻采集。整個視頻采集流程如圖3所示。

2.3 視頻壓縮處理的實現
攝像頭采集的未經壓縮的視頻信號需要較高的帶寬,很難實現實時傳輸的要求。MPEG-4視頻壓縮方式具有可交互性、可擴展性和高壓縮比,已成為多媒體通信領域的一種標準算法。基于其以上優點,本系統選用MPEG-4視頻壓縮編碼方式。其圖像壓縮編碼的過程概括如下:首先對視頻序列進行分析,從原始圖像中分割出各個視頻對象。其中包括利用中值濾波對原始視頻/圖像進行簡化、對視頻/圖像進行特征提取、確定分割決策等。然后針對不用的視頻對象VO采用不同的編碼策略,利用VOP視頻編碼技術對視頻對象進行編碼。最后各個視頻對象的碼流進行復合后輸出。
3 結 語
介紹的一種基于ARM處理器的多參數遠程網絡監控設備經過對主要模塊的測試分析,該系統性能穩定、實時性好,可廣泛應用于倉儲、銀行、軍事設施、居民小區等場合的安防監控和工業現場、電力電站、電信基站的無人值守系統,具有廣闊的應用前景和一定的市場潛力。
參考文獻
[1]馮冬芹,金建祥,褚健.Ethernet與工業控制網絡\\[J\\].儀器儀表學報,2003(1):23-24.
[2]杜春雷.ARM體系結構與編程[M].北京:清華大學出版社,2003.
[3]于明,范書瑞,曾祥燁.ARM9嵌入式系統設計與開發教程[M].北京:電子工業出版社,2006.
[4]S3C2410X 32-Bit RISC Microprocessor User′s Manual[S].Samsung Electronics,2003.
[5] 孫天澤,袁文菊,張海峰.嵌入式設計及Linux驅動開發指南[CD2]基于ARM9 處理器[M].北京:電子工業出版社,2005.
[6]Alan Cox.Video4Linux Programming[CP].alan@redhat.com.2000.
作者簡介 張曉東 男,1980年出生,助教。研究方向為嵌入式系統。