3 G網絡的移動機器人遠程監(jiān)控系統(tǒng)
摘要:介紹了基于嵌入式Linux平臺視頻傳輸與控制系統(tǒng)的構建,給出了跨客戶端通過3G網絡進行遠程視頻傳輸?shù)募夹g實現(xiàn),并總結了在實現(xiàn)過程中遇到的難點以及對應的解決方案。
關鍵詞:機器人;3G;Linux;CGI;Ajax
引言
3G是第三代移動通信技術,結合了無線通信技術和互聯(lián)網等多媒體技術。隨著3G技術的發(fā)展,它在聲音和數(shù)據的傳輸速度上有很大提升,并能夠在全球范圍內實現(xiàn)無線漫游。其數(shù)據傳輸高速、永遠在線、覆蓋范圍廣等優(yōu)點,有效地解決了移動機器人采用有線或者無線遠程控制所帶來的信息傳輸和控制距離等方面的瓶頸問題,使遠程救援機器人、仿真機器人、家庭保姆機器人等移動機器人技術在大數(shù)據量實時傳輸方面多了一種可利用的解決方案。
1 系統(tǒng)總體架構
本系統(tǒng)主要用來將移動機器人所采集到的視頻數(shù)據通過3G網絡傳給服務器,再將服務器的控制信號傳給電機驅動板,以驅動移動機器人平臺運動,總體架構如圖1所示。攝像頭OV9650采集的視頻圖像經過JPEG壓縮后,存入緩存區(qū),當服務器監(jiān)聽到客戶端的接入請求后,再將緩存區(qū)的數(shù)據通過網絡傳輸給客戶端的監(jiān)控界面進行顯示;當需要控制機器人行動時,客戶端的控制按鈕發(fā)送控制信息給服務器,服務器通過程序解析后控制底層電機驅動器,驅動機器人平臺運動。
系統(tǒng)硬件平臺核心處理器采用S3C6410,它基于ARM1176JZF—S內核,是一個16/32位RISC微處理器,其內部集成了強大的硬件加速器,包括音視頻處理、2D加速等,為2.5G和3G通信服務提供了優(yōu)化的硬件性能,工作頻率最高可達677 MHz;采用2 GB NAND Flash,主要用于存放內核代碼、應用程序、文件系統(tǒng)和數(shù)據資料;DDRSDRAM采用兩片128 MB K4X51163PE芯片;攝像頭采用CMOS圖像傳感器OV9650,最高輸出130萬像素(1300×1 024),具有高敏感度、低功耗、支持多種常用的圖像格式輸出、支持自動圖像控制等優(yōu)點。
Linux作為一種類Unix操作系統(tǒng),具有穩(wěn)定健壯、低成本、高性能、互操作性好和源代碼開放等特點。而其良好的內核結構,以及可裁剪的特性,滿足了嵌入式應用的差異性需求,使其在嵌入式系統(tǒng)領域占有一席之地。本系統(tǒng)中采用的Linux內核為3.0.1版本,文件系統(tǒng)采用YAFFS2,Bootloader選用uboot。
2 系統(tǒng)軟件設計
2.1 視頻數(shù)據的采集與傳輸
視頻數(shù)據的采集通過Linux中視頻設備OV9650的驅動以及Video for Linux提供的相應接口完成。為了方便,將視頻采集的相關信息封裝到以下結構體中:
采集程序通過函數(shù)init_s3c6410(struct vdIn*vd,char*device,int width,int height)來完成對攝像頭以及采集參數(shù)的初始化,并通過函數(shù)s3c6410_Grab(struetvdIn*vd)完成對圖像的抓取,用JPEG壓縮算法對采集到的圖像進行壓縮,圖像格式為RGB565。
評論