基于 S5P6818 無線視頻監(jiān)控系統(tǒng)設(shè)計
掃描二維碼
隨時隨地手機看文章
0 引 言
隨著“中國制造 2025”計劃的實施,新一代信息技術(shù)、人工智能等新概念、新內(nèi)容不斷涌現(xiàn)在人們的日常生活中,其中無線視頻監(jiān)控技術(shù)應(yīng)用廣泛。本文提出一種基于嵌入式的無線監(jiān)控系統(tǒng)設(shè)計和實現(xiàn)方案—以嵌入式三星 S5P6818為控制核心,Linux 為操作系統(tǒng),通過 MJPG-streamer 流媒體服務(wù)進(jìn)行數(shù)據(jù)采集與傳輸,從而實現(xiàn)通過訪問 Web 服務(wù)器,隨時隨地進(jìn)行遠(yuǎn)程監(jiān)控。
1 系統(tǒng)構(gòu)成
系統(tǒng)由硬件與軟件兩部分組成。硬件部分主要采用ARM 嵌入式處理器、無線模塊及 USB 視頻設(shè)備 ;軟件主要基于 Linux 系統(tǒng)之上,采用 MJPG-streamer 流媒體服務(wù)進(jìn)行視頻采集與傳輸,利用 Web 服務(wù)器對外提供訪問接口,客戶端可通過訪問 Web 服務(wù)器對所捕獲的視頻進(jìn)行監(jiān)控。系統(tǒng)設(shè)計架構(gòu)如圖 1 所示。
2 硬件系統(tǒng)設(shè)計
本文系統(tǒng)以三星公司 Cortex-A53 內(nèi)核高性能八核處理器S5P6818 為主控,外接 SDRAM,F(xiàn)LASH 及電源管理模塊組成系統(tǒng)的核心部分,在此基礎(chǔ)上搭載 USB Host,UART,JTAG 等功能接口。硬件平臺總體框架如圖 2 所示。
圖 2 硬件平臺總體框架
3 系統(tǒng)軟件設(shè)計
Linux是一套免費使用且可自由傳播的類Unix操作系統(tǒng),是基于 POSIX 和 UNIX 的多用戶、多任務(wù),支持多線程與多CPU 的操作系統(tǒng),能運行主要的 UNIX 工具軟件、應(yīng)用程序及網(wǎng)絡(luò)協(xié)議 [1]。本文設(shè)計利用 Lunix 系統(tǒng)平臺,通過 MJPGstreamer 流媒體服務(wù)進(jìn)行數(shù)據(jù)采集與傳輸。
3.1 軟件平臺設(shè)計
軟件平臺設(shè)計包括底層軟件設(shè)計與上層軟件設(shè)計。底層設(shè)計主要采用 U-Boot 移植、Linux 嵌入式系統(tǒng)移植、Rootfs制作、驅(qū)動移植等,完成與硬件平臺之間的匹配。上層軟件采用 Web 服務(wù)器的搭建、MJPG-streamer 流媒體服務(wù)移植等。其中,MJPG-streamer 視頻流服務(wù)是一款基于 TCP/IP 協(xié)議傳輸?shù)木W(wǎng)絡(luò)視頻流服務(wù),利用 V4L2 接口采集圖像數(shù)據(jù),將采集到的數(shù)據(jù)進(jìn)行壓縮,并以 MJPG 格式通過 http 向外傳輸,完成實時監(jiān)控的功能。系統(tǒng)軟件平臺如圖 3 所示。
3.2 V4L2 視頻采集流程
攝像頭捕捉的視頻數(shù)據(jù)通過一個隊列形式的數(shù)據(jù)結(jié)構(gòu)存儲,使用 V4L2 設(shè)置攝像頭相關(guān)參數(shù),申請若干個內(nèi)核視頻緩存區(qū),并送進(jìn)隊列,將這若干個內(nèi)核緩存區(qū)通過 mmap()函數(shù)映射到用戶空間,對用戶層讀取攝像頭數(shù)據(jù) [2]。開啟攝像頭捕獲,操作內(nèi)核緩存區(qū)出隊,讀取數(shù)據(jù),讀過緩沖區(qū)再次入隊,依次循環(huán)。V4L2 工作流程如圖 4 所示。
4 結(jié) 語
本文根據(jù)未來智能化的發(fā)展方向,采用 Linux 系統(tǒng)通用的視頻采集接口 V4L2 采集視頻數(shù)據(jù),通過 MJPG-streamer流媒體服務(wù)壓縮轉(zhuǎn)出數(shù)據(jù)流格式,并利用 Boa 服務(wù)器,實現(xiàn)了網(wǎng)絡(luò)轉(zhuǎn)發(fā)的無線遠(yuǎn)程實時監(jiān)控系統(tǒng)。下一步的工作是實現(xiàn)多路視頻監(jiān)控連接,并結(jié)合 ZigBee 網(wǎng)絡(luò)通信,實現(xiàn)區(qū)域化的智能視頻監(jiān)控系統(tǒng)。