龔正,沈建新(南京航空航天大學 機械電子工程系,南京 210016)
?
WIFI鏡頭機無線圖像采集系統①
龔正,沈建新
(南京航空航天大學 機械電子工程系,南京 210016)
摘 要:針對有線攝像頭移動性差、不夠靈活等缺陷,提出將攝像頭模塊、WIFI模組和stm32芯片組合到一起形成一個WIFI無線鏡頭機.對攝像頭模塊和WIFI模組的原理和實物進行了研究,通過WIFI無線數據傳輸技術、LWIP協議及Socket網絡編程將圖像數據信息無線發送到顯示設備處理器中.最終實現將帶有網卡的顯示設備連接到WIFI無線鏡頭機內部的WIFI熱點,通過連接服務器、開啟相機、保存圖片等一系列的操作,方便快捷的完成無線圖像傳輸、顯示和存儲的工作.
關鍵詞:鏡頭機; 無線圖像采集; WIFI模組; LWIP協議; socket編程
傳統有線工業相機的工作原理是通過各種鏡片(LENS)光路將被成像物體生成的光學影像投射到光電耦合器上,通過A/D轉換后變為數字圖像信號,將該數字信號傳送至DSP芯片中進行壓縮存儲等操作,最終通過有線線路傳輸到顯示設備中[1].傳統有線圖像傳輸方式不夠方便和靈活,常受布線、被成像物體的位姿等問題的影響.
目前應用較廣的無線數據傳輸技術有: 藍牙(BlueTooth)、通用分組無線業務(GPRS)、無線域網(ZigBee)、基于IEEE802.11b標準的無線局域網(WIFI),這些無線數據傳輸技術都有各自的應用領域.如,藍牙適用于低功耗、低成本、短距離的場合[2]; GPRS提供高速無線IP,但依賴基站且用戶需要承擔相應的費用[3]; ZigBee是一種近距離、低復雜度、低功耗、低成本的雙向無線通信技術[4].本系統采用的WIFI網絡具有傳輸速率快、能耗低、覆蓋面廣等特點[5].
有線相機改造成無線相機的關鍵點是將原來由有線傳輸的數字圖像信號和控制數據改為無線傳輸.目前市場上已經有商用的無線攝像頭,當前主流的設計方案包括: ARM+DSP、FPGA+視頻編解碼芯片、高主頻的ARM擔當中央控制和圖像處理的角色.但是高質量的無線攝像頭價格昂貴,并且集成度比較高不利于底層的二次開發.本文通過對嵌入式圖像采集系統平臺[6]、WIFI無線數據傳輸技術和WIFI與顯示設備之間的通信協議的研究,提出將工業相機內部嵌入WIFI模組,通過顯示設備連接相機內部的WIFI熱點進而完成無線圖像傳輸、顯示和存儲的工作.
本系統設計的無線圖像采集系統由WIFI鏡頭機模塊和帶有無線網卡的PC組成,其中WIFI相機鏡頭模塊由影響感應器、影像處理器和WIFI無線傳輸模塊組成.如圖1所示為WIFI相機鏡頭模塊與PC機無線通信的示意圖.
WIFI相機鏡頭模塊是新型的不含顯示器的鏡頭模塊,它的顯示器可以是智能手機、PC機、平板電腦等具有連接WIFI功能的顯示設備.傳統的相機顯示器和相機鏡頭都是一體的或者說是有線連接的.WIFI相機鏡頭模塊看起來像是一個相機,但是沒有顯示器,因此更準確的來說它是一個無線攝像頭.它是通過相機鏡頭模塊內置的WIFI無線模塊連接到顯示器,一旦顯示器與WIFI相機鏡頭模塊建立連接,相機就可與顯示器主機進行無線數據交互如相機采集的照片可以無線傳輸到顯示器上、主機可以給WIFI模組發送命令來控制相機的調教馬達或者改變相機拍攝參數.

圖1 WIFI相機鏡頭模塊與PC機無線通信的示意圖
1.1影像感應器與影像處理器
影像感應器有CCD和CMOS兩種.以前大多使用的是CCD感應器,考慮到成本和CMOS制造工藝的發展數碼影像器材的感光元件多采用CMOS型.如圖2所示,CMOS圖像傳感器一般由行選通邏輯、定時和控制電路、像素陣列、在片模擬信號處理器(ASP)、列選通邏輯構成,高級的COMS中集成有ADC[7].
影像處理器就是固化到數碼相機主機板的一個大型的集成電路芯片,在成像過程中對COMS(或CCD)蓄積下的電荷信號進行處理,完成數碼圖像的壓縮、顯示和存儲.影像處理器將用于圖像處理功能的DSP 和MCU集成在一個芯片上,如ATMEL AT76C111、 AT76C110等,它們的MCU都是采用ARM7內核.

圖2 CMOS圖像傳感器結構
1.2WIFI模組
WIFI模組是實現無線圖像采集的關鍵,它需要將COMS采集的數字信號轉化成無線電信號,并進行遠程傳輸,使圖像可以在其他顯示設備中再現.因此它具有以下特點: 支持UART/GPIO通訊,可以與數碼相機的芯片進行連接; 采用擴頻技術,以保證無線數據傳輸能順利進行; 支持802.11無線標準和TCP/IP/UDP網絡協議,便于與無線網卡連接,在PC機等顯示設備上顯示,保存圖像.WIFI無線圖像傳輸系統中,常用的WIFI芯片是Marvell公司的88W8686和新出的88W8787[8].
1.3WIFI無線數據傳輸技術
WIFI遵循IEEE802.11系列協議,是主流的無線局域網(WLAN)技術.WIFI協議只是定義OSI(Open System Interconnection)七層協議的物理層(PHY)和數據鏈路控制層(DLC)的一部分[9].
在物理層的空中接口中,數據信息勢以無線電波(radio wave)進行傳輸.這種傳輸經常是一幀一幀的進行,每一幀都會按照一定的規矩進行排列,采用幀結構或者包結構形式.這就導致WIFI協議需要比較復雜的PHY,WIFI的PHY也可分為三層:
① 最下層是PMD(Physical Medium Dependent,物理介質依賴)負責傳送這些幀,與實際的物理介質打交道;
② 中間層叫PLCP(Physical Layer Convergence Procedure,物理層會聚過程)負責將MAC(Medium Access Control,媒介訪問控制層)幀映射到傳輸媒介;
③ 最上層叫PHY SAP(Server Access Point,物理層服務訪問點)就是上段定義的對MAC的服務接口.
上層通過接口原語的方式調用MAC層的功能.MAC一共向上層提供數據類1個接口和管理類29個接口原語.
本系統選用的是OV2640攝像頭模塊,是一種CMOS圖像傳感器,將UXGA相機和DSP封裝集成在一塊板子[10].通過SCCB總線控制,支持Raw RGB、RGB(GRB4:2:2、RGB565/555/444)、YUY(4:2:2)輸出格式,UXGA(1632*1232)圖像最高達到15fps.如圖3所示為OV2640的實物圖.

圖3 OV2640攝像頭實物圖
本系統選用的WIFI模組是臺灣環隆電氣公司生產的模塊WM-G-MR-09,它是將88W8686芯片組做成一個SIP模塊(system in package),把無線芯片,時鐘,電源以及存儲模塊集成到一個封裝里,不用去考慮無線芯片的具體細節,大大方便了我們的設計.圖4 為WM-G-MR-09WIFI模塊的實物圖.

圖4 WM-G-MR-09WIFI模塊的實物圖
其中WM-G-MR-09WIFI模塊引出了10個引腳與主芯片進行連接,分別是DATA1,DATA0,GND,CLK,SW_3V3,GND,CMD,DATA3,DATA2,GND.其中SDIO/G_SPI數據傳輸引腳DATA0,DATA1,DATA2,DATA3,時鐘引腳CLK,命令控制引腳CMD,其他的分別是電源和接地引腳.
本系統選用ARM STM32F103RET6作為MCU,它負責將OV2640攝像頭模塊采集來的數字信號,通過G_SPI串口傳送給WM-G-MR-09無線WIFI模塊.將WM-G-MR-09WIFI模塊、OV640攝像頭和STM32F103RET6組合在一起就看成一個簡易的WIFI鏡頭機.顯示設備通過自帶的無線網卡就可以完成與WIFI鏡頭機的無線圖像顯示及采集的工作.
WIFI無線圖像采集系統是基于Ad hoc網絡,Ad hoc網絡可以不依靠任何中間設備(如路由器等)完成WIFI模塊與PC機無線網卡的連接.只要將WIFI模塊功能打開,裝有無線網卡的PC機就可搜索到無線網絡,PC機就可連接WIFI模塊建立的WIFI熱點.如圖5所示為無線圖像傳輸系統軟件結構圖.PC機中實現上位機應用層,TCP,IP協議; 網絡接口層由無線網卡和WIFI無線模塊共同實現.

圖5 無線圖像傳輸系統軟件結構圖
本系統WIFI鏡頭機模塊采用LWIP協議(Light weight IP),這種協議在有無操作系統的支持下都可以運行[11].之所以使用LWIP協議是因為它既可以實現TCP協議有可以在無操作系統的情況下使用并且該協議占用的RAM和ROM都較少,適合在低端的嵌入式系統中使用.
本文就是在無操作系統的情況下使用LWIP協議,即使用RAW API函數來完成LWIP的功能.在此之前將相應的LWIP和WIFI庫文件放置到工程文件中,并進行相應的配置和操作,具體做法如下:
① 通過init_marvell_driver()函數初始化網卡,初始化marvell驅動程序并初始化SD卡,將關聯配置信息存放到相應的變量中;
② 通過marvel_assoc_network (prive,marvel_ssid,marvel_key,marvel_mode)函數關聯網絡,即通過marvel_ssid變量和marvel_key變量來設置WIFI熱點的用戶名和密碼,通過marvel_mode來選擇Ad hoc網絡模式;
③ 通過Init_LwIP()函數來初始化LWIP協議棧,具體初始化有內存管理(men、memp)、數據包緩存(pbuf)、網絡接口(netif)等;
④ 通過dhcpsrv_start(&netif)函數啟動DHCP服務;
⑤ 通過Init_tcp_server()函數創建TCP服務器,完成TCP的創建、綁定相應的下位機端口號、監聽和接受服務請求.
⑥ 最后通過low_level_input(&netif)函數和low_level_output(&netif)函數完成接受和發送一個數據包.
完成WIFI模塊與ARM STM32F103RET6芯片之間的相關操作,即下位機程序如何使用協議棧內部提供的各種服務,還要完成上位機接收顯示圖像數據和發送下位機控制數據的工作.
如圖6為應用程序的工作流程圖.Socket客戶端采用connect()方法連接上服務器的IP和端口號; send()方法請求數據,用于控制OV2640攝像頭模塊的打開與關閉; recv()方法用于接收圖片信息.本系統在WIFI鏡頭機模塊中創建一個服務器,在PC機上建立一個客戶端程序.通過客戶端程序實現與服務器的連接,從而實現攝像頭模塊的打開與關閉以及圖像的顯示與保存.

圖6 應用程序工作流程圖
如圖7所示WIFI鏡頭機的WIFI無線視頻傳輸上位機界面,通過LWIP和Socket網絡實現WIFI無線圖像采集.圖中界面是用C#語言編寫而成,左邊的大圖為一個pictureBox控件,用以實時顯示Socket接收的視頻圖像; 通過輸入正確的IP和端口號,按下“連接服務器”按鈕即可連接下位機的服務器; “開啟視頻”按鈕是在正確下位機連接服務器后,開啟OV2640攝像頭,并將該攝像頭采集的圖像信息在左邊的大圖中實時顯示; “保存”按鈕是將實時顯示的圖像瞬間捕獲,保存在本地磁盤中并在右邊的小圖中顯示出來.至此,完成了WIFI鏡頭機無線圖像采集、實時顯示和保存的全部工作.

圖7 WIFI無線視頻傳輸上位機界面
無線WIFI鏡頭機的圖像采集系統是多種新技術、新產品并結合實際應用要求的產物.鏡頭與顯示器的無線分離讓圖像采集的過程變得非常方便快捷.WIFI相機模塊的圖像采集系統具有成本低廉、易于開發與集成等優點.隨著無線技術的發展與成熟,WIFI無線圖像采集系統將會工業圖像采集及醫用圖像采集中得到廣泛的應用.
參考文獻
1蔣昌茂,劉洪林.基于WIFI的無線IP攝像頭的設計與實現.微型機與應用,2010,29(21):55–57.
2李曉毅,鐘先信,余文革,等.局域監控藍牙無線圖像傳輸系統設計.電子技術應用,2003,29(6):62–64.
3楊興裕,吳海彬,許松清.GPRS無線傳輸在遠程圖像監控系統中的應用.微計算機信息,2005,21(3):64–65.
4章偉聰,俞新武,李忠成.基于CC2530及ZigBee協議棧設計無線網絡傳感器節點.計算機系統應用,2011,20(7):184–187.
5趙智雅,王澤勇.嵌入式圖像采集系統的平臺設計.計算機系統應用,2009,18(12):136–139.
6曾磊,張海峰,侯維巖.基于WIFI的無線測控系統設計與實現.電測與儀表,2011,48(547):81–83.
7佟雨兵,常青,張其善.嵌入式CCD視頻圖像采集系統.光電工程,2004,31(增刊):133–144.
8羅娜.基于88W8686的手持終端WIFI功能的設計與實現[學位論文].武漢:武漢理工大學,2010.
9 劉小軍.基于WIFI無線視頻傳輸技術的研究.電子技術,2012,10(3):82–85.
10王建,梁振濤,鄭文斌,等.STM32和OV2640的嵌入式圖像采集系統設計.單片機與嵌入式系統應用,2014,9(1): 46 –48.
11汪競.基于WIFI的無線圖像傳輸系統的設計[碩士學位論文].西安:中國科學院研究生院(西安光學精密機械研究所),2013.
Wireless Image Acquisition System of WIFI Lens Camera
GONG Zheng,SHEN Jian-Xin
(Mechanical and Electronic Engineering,Nanjing University of Aeronautics and Astronautics,Nanjing 210002,China)
Abstract:Wired camera has many defects such as poor mobility and less flexible,so the paper presents a combination of the camera module,WIFI module and stm32 chips to form a WIFI wireless lens Camera.Through researching on theory and entity of camera module as well as WIFI module,this method implements wireless image data transmission to the display device processor by WIFI wireless data transmission technology,LWIP protocol and Socket network programming.When the display device with WIFI wireless network card could connect to the camera's internal WIFI hotspot,it could conveniently complete wireless image transmission,display and storage through a series of operations like connecting to the server,turning on the camera,preserving the image and so on.
Key words:lens camera; wireless image acquisition; WIFI module; LWIP protocol; socket programming
收稿時間:①2015-08-14;收到修改稿時間:2015-09-24