基于GPRS和嵌入式Linux的遠程圖像監(jiān)控系統(tǒng)
引言
當前有線通信的圖像監(jiān)控系統(tǒng)由于其經(jīng)濟實用性而被廣 泛采用,然而這種方式很大程度限定了它的應(yīng)用前景。目前, 視頻監(jiān)控系統(tǒng)已經(jīng)覆蓋美國的大小城市。在美國,執(zhí)法機構(gòu) 正在逐漸普及和安裝警用移動視頻監(jiān)控設(shè)備。而國內(nèi)網(wǎng)絡(luò) 視頻監(jiān)控系統(tǒng)雖發(fā)展較慢,主要以流媒體監(jiān)控系統(tǒng)為主, 但隨著平安城市建設(shè)的不斷推進,網(wǎng)絡(luò)視頻監(jiān)控將得到全面 發(fā)展。本系統(tǒng)是基于ARM嵌入式開發(fā)平臺和GPRS田無線 傳輸網(wǎng)絡(luò)的遠程圖像監(jiān)控設(shè)計方案,系統(tǒng)應(yīng)用了嵌入式技術(shù) 和無線移動網(wǎng)絡(luò)技術(shù)的融合,實現(xiàn)了遠程實時視頻圖像的監(jiān) 控,可以被廣泛地應(yīng)用在不同的場合監(jiān)控,例如居家辦公場所、 能源系統(tǒng)、工業(yè)領(lǐng)域等。
1系統(tǒng)總體設(shè)計
遠程視頻圖像監(jiān)控系統(tǒng)分為嵌入式視頻采集終端和監(jiān)控中心服務(wù)器。嵌入式視頻采集終端是基于嵌入式微處理器S3C2440和Linux核心平臺,集成GPRS模塊,采用USB攝 像頭捕捉現(xiàn)場圖像,通過GPRS網(wǎng)絡(luò)發(fā)送實時壓縮處理后的 圖像數(shù)據(jù),實現(xiàn)和監(jiān)控中心的通信。監(jiān)控中心服務(wù)器通過本 地網(wǎng)絡(luò)與終端GPRS模塊建立穩(wěn)定連接,接收終端傳輸?shù)膱D 像并實時顯示。系統(tǒng)的實現(xiàn)方案如圖1所示。
2系統(tǒng)具體設(shè)計與實現(xiàn)
2.1系統(tǒng)開發(fā)平臺
本系統(tǒng)選取TQ2440開發(fā)板作為系統(tǒng)設(shè)計的硬件平臺, 圖2所示是系統(tǒng)硬件開發(fā)平臺結(jié)構(gòu)圖。其中,采集終端硬件由 主控模塊和擴展模塊兩部分組成。主控模塊采用嵌入式微處理器S3C2440,該處理器內(nèi)部集成了 ARM公司ARM920T處 理器核。另外,系統(tǒng)儲存擴展了 256 MB的NANAD FLASH、 2 MB的NOR FLASH和64 MB的SDRAM。擴展模塊包括 了中星微ZC301USB攝像頭和SIM900模塊。
中星微ZC301攝像頭價格低,性能好且易使用,很容易 集成到嵌入式系統(tǒng)中。該款USB攝像頭像素可達30萬,最大 每秒傳輸幀數(shù)可達30,圖片分辨率最大為600X800,內(nèi)置了 JPEG硬件壓縮引擎。
GPRS模塊采用內(nèi)嵌TCP/IP協(xié)議的SIM900模塊,該 模塊屬于GSM/GPRS雙頻模塊,尺寸小,功耗低,性價比 高,很適合嵌入式開發(fā)應(yīng)用。S3C2440通過UART接口連接 SIM900模塊并用AT命令控制GPRS模塊,實現(xiàn)基于GPRS 訪問和圖像數(shù)據(jù)的傳輸。
系統(tǒng)軟件平臺以嵌入式Linux為基礎(chǔ),具體構(gòu)建步驟是 在宿主機建立交叉編譯環(huán)境,完成引導加載程序uboot的編 譯移植,編譯移植linux-2.6.30.4內(nèi)核,包括串口驅(qū)動,USB 設(shè)備等驅(qū)動的移植,基于busybox-1.13.0構(gòu)建的yaffs2文件系 統(tǒng)的移植。本系統(tǒng)根據(jù)開發(fā)需求,將圖像數(shù)據(jù)的采集和發(fā)送 分別設(shè)計為兩個線程并行運行,線程之間用PV信號量進行同 步,減少相互干擾。圖3所示是本系統(tǒng)視頻監(jiān)控終端的應(yīng)用程 序工作流程圖。
2.2 圖像數(shù)據(jù)采集和發(fā)送
V4L2 是 Video For Linux Two 的 簡 稱, 是 Video ForLinux API 的第二版本,是 Linux下開發(fā)視頻設(shè)備程序的接口標準。為了使用 Linux下 V4L2 應(yīng)用程序接口編寫圖像采集應(yīng)用程序,在開發(fā)板上移植的 Linux 版本為 linux-2.6.30.4 內(nèi)核,此版本內(nèi)核支持中星微 ZC301USB 攝像頭,只需在配置內(nèi)核編譯選項時把 ZC3XX Usb Camera Driver 驅(qū)動選中并重新編譯進內(nèi)核即可。
2.3 圖像數(shù)據(jù)采集
V4L2 的絕大部分功能是通過 ioctl 系統(tǒng)調(diào)用完成的。圖像數(shù)據(jù)采集過程包括打開視頻設(shè)備文件、設(shè)置采集屬性、內(nèi)存映射實現(xiàn)和圖像數(shù)據(jù)幀采集等。其中,圖像數(shù)據(jù)幀緩存采用 FIFO 的方式,緩存隊列將已采集到的視頻圖像數(shù)據(jù)的設(shè)備緩存存出隊列,此時與之映射的內(nèi)存空間就存儲了采集到的視頻圖像數(shù)據(jù),處理完畢重新使視頻設(shè)備加入緩存隊列。圖像數(shù)據(jù)幀采集過程如圖 4 所示。
2.4 GPRS 數(shù)據(jù)傳輸
本系統(tǒng)通過 S3C2440 對 SIM900 模塊進行控制,與監(jiān)控中心建立 GPRS 連接,將采集終端的圖像數(shù)據(jù)進行實時傳輸,方便用戶對視頻圖像的實時監(jiān)控。由于 GPRS 模塊內(nèi)嵌 TCP/IP 協(xié)議,終端可以很方便地與 PC 端的監(jiān)控中心建立 GPRS 無線網(wǎng)絡(luò)穩(wěn)定連接。
在視頻圖像采集終端與監(jiān)控中心建立 GPRS 無線網(wǎng)絡(luò)連接時,本系統(tǒng)選用可靠穩(wěn)定的 TCP 協(xié)議。具體步驟為S3C2440 串口 1 控制 SIM900 模塊,發(fā)送指定AT 命令主動向公網(wǎng)上的一個靜態(tài)公網(wǎng) IP 地址發(fā)起 TCP 連接,只要這個公網(wǎng)上的機器有確定的相應(yīng)監(jiān)聽端口,就可建立 TCP 連接。所以系統(tǒng)需要知道當前 PC 機的靜態(tài)公網(wǎng) IP 地址和確定的監(jiān)聽端口。具體實現(xiàn) GPRS 網(wǎng)絡(luò)鏈路穩(wěn)定連接的 AT 命令如表1所列。
3 監(jiān)控服務(wù)中心器
監(jiān)控中心與視頻數(shù)據(jù)圖像采集終端建立客戶 / 服務(wù)器(C/S)模式。監(jiān)控中心服務(wù)器使用普通 PC,有靜態(tài) IP 和開放監(jiān)聽端口。監(jiān)控中心服務(wù)器具有監(jiān)聽 TCP 端口,返回數(shù)據(jù)包,描述接收的數(shù)據(jù)和大小,保存圖像文件等功能。監(jiān)控中心服務(wù)器工作流程如圖 5 所示。
4 結(jié) 語
本系統(tǒng)充分發(fā)揮了永遠在線的 GPRS 無線傳輸技術(shù)和高性能的嵌入式監(jiān)控系統(tǒng)的優(yōu)點,實現(xiàn)了遠程圖像監(jiān)控。系統(tǒng)測試結(jié)果較滿意,使用中國移動的 GPRS 網(wǎng)絡(luò)服務(wù),本系統(tǒng)的數(shù)據(jù)傳輸率大于 10 Kb/s,經(jīng)壓縮后分辨率為 320×240,圖像大小在 50 Kb 左右并且能夠在 4 s 左右傳輸?shù)奖O(jiān)控中心服務(wù)器上進行實時顯示。經(jīng)過以上測試,本系統(tǒng)具有較高的視頻采集和傳輸速率,實現(xiàn)了基于 GPRS 無線傳輸技術(shù)的遠程圖像監(jiān)控,具有廣泛的應(yīng)用前景。
20211117_6193e3171329d__基于GPRS和嵌入式Linux的遠程圖像監(jiān)控系統(tǒng)