文獻(xiàn)標(biāo)識碼: A
文章編號: 0258-7998(2014)09-0027-03
中文引用格式:段志堅(jiān),金湘亮.基于FPGA的新型TOF圖像傳感器驅(qū)動(dòng)設(shè)計(jì)[J].電子技術(shù)應(yīng)用,2014,40(09):27-29+33.
TOF(Time-of-Flight)方法即飛行時(shí)間法,其基本原理為光源向目標(biāo)場景不斷發(fā)射調(diào)制過的紅外測量光線并開始計(jì)時(shí),光束到達(dá)被測物體后發(fā)生反射,有一部分光線按原路徑返回并被探測器接收,此時(shí)停止計(jì)時(shí)。根據(jù)光的飛行時(shí)間,結(jié)合飛行速度即可計(jì)算出光源與被測物體之間的距離[1]。
由于傳統(tǒng)的成像系統(tǒng)提供的都是二維的信息,當(dāng)使用計(jì)算機(jī)處理和分析這些圖像、標(biāo)記和追蹤感興趣目標(biāo)時(shí),無法獲得物體間的前后關(guān)系,使得計(jì)算機(jī)無法理解其相互關(guān)系[2],而基于3D-TOF傳感器的攝像系統(tǒng)則輕易解決了這個(gè)機(jī)器視覺領(lǐng)域的傳統(tǒng)難題,TOF攝像機(jī)可直接提供詳細(xì)的空間位置關(guān)系。與傳統(tǒng)的成像設(shè)備相比較,TOF攝像系統(tǒng)能夠很方便地區(qū)分出場景中的前景與后景,從而可以完成復(fù)雜目標(biāo)物體的三維形態(tài)重建,通過掃描設(shè)備,能夠以視頻幀速率獲取數(shù)量等于傳感器像素的距離數(shù)據(jù),進(jìn)而判斷目標(biāo)實(shí)時(shí)姿態(tài)[3]。采用CMOS工藝和普通LED光源,可以使設(shè)備以較低成本生成,有廣泛普及的潛力,三維TOF傳感器主要應(yīng)用在機(jī)器人、安全監(jiān)控、多媒體交互、人機(jī)接口、測量等領(lǐng)域[4]。
1 3D-TOF圖像傳感器結(jié)構(gòu)和工作時(shí)序分析
1.1 新型3D-TOF芯片簡介
PMD PhotoICs 19K-S3是德國PMD公司的一款3D TOF傳感器芯片,也是第一個(gè)商業(yè)化的Time-of-Flight 芯片,能夠同時(shí)獲取實(shí)時(shí)的深度和灰度信息,其精度高,功耗低,讀出時(shí)鐘能夠達(dá)到15 MPixel/s;最大幀率為80 f/s;集成背景光抑制(SBI)功能;所有的復(fù)位時(shí)序、曝光時(shí)序和讀出時(shí)序的控制端口都由外部電路提供,增加了設(shè)計(jì)自由度;提供ROI功能;片上調(diào)制驅(qū)動(dòng);由SPI總線配置,能準(zhǔn)確計(jì)算出距離信息;在160×120的分辨率下,檢測距離為2 m[5],典型的分辨率能夠達(dá)到毫米級別。其結(jié)構(gòu)如圖1所示。
該傳感器主要由像素陣列、模擬輸出以及控制單元三部分組成。其中像素陣列大小為160×120,TOF圖傳感器陣列小的原因是這個(gè)傳感器的單個(gè)像素面積要比傳統(tǒng)的二維圖像傳感器大;模擬輸出部分能夠同時(shí)輸出3個(gè)列信號,支持SPI總線配置寄存器,寄存器的配置方式?jīng)Q定了讀出方式是移位寄存器讀出方式還是ROI(Region of Interest)讀出方式。
1.2 工作時(shí)序分析
傳感器的總體工作時(shí)序如圖2所示,可以看出,得到一幀的深度信息所需要的步驟分為復(fù)位、曝光和讀出3步。復(fù)位過程主要通過Reset信號與Hold信號來實(shí)現(xiàn),Hold信號為全局保持信號,此信號為低時(shí)收集電子,高電平時(shí)把每個(gè)讀出節(jié)點(diǎn)(readout node)的積分電容斷開,從而達(dá)到保持積分時(shí)間段里收集的電量值的功能。
TOF傳感器的不同之處在于多了一個(gè)相位解調(diào)的過程,如圖3所示。Modsel信號為FPGA發(fā)給傳感器的調(diào)制信號,其頻率最高可以達(dá)到80 MHz。在控制器發(fā)出調(diào)制信號Modsel的同時(shí),F(xiàn)PGA還需要給中心波長為850 nm的近紅外LED光源同樣頻率的調(diào)制信號,只是這兩個(gè)信號之間有一定的相位差,解調(diào)相位需要4次曝光的過程,如圖3所示,4次曝光的兩個(gè)調(diào)試信號的相位差分別為0°、90°、180°以及270°,每次曝光后都會(huì)得到一個(gè)電量值。經(jīng)過A/D轉(zhuǎn)換后,利用式(1)得出最終的距離值d[6]:
其中c為光速, fmod為調(diào)制頻率,典型的調(diào)制頻率為20 MHz時(shí),理論上的量程為15 m。
圖3 相位測量示意圖
移位寄存器讀出方式如圖4所示。讀出時(shí)序由行控制信號與列控制信號組成,end_r與end_c信號為同步信號,用于數(shù)據(jù)后續(xù)的存儲操作。從圖中可以看出,選中一行后,能同時(shí)讀出3列信號,每讀完一行,end_r出現(xiàn)一個(gè)脈沖,表明一行讀完,讀完最后一個(gè)像素,end_c出現(xiàn)的脈沖就意味著一幀數(shù)據(jù)已經(jīng)讀完。
圖4 移位寄存器讀出方式時(shí)序
2 FPGA時(shí)序設(shè)計(jì)與仿真
傳感器是整個(gè)采集系統(tǒng)的核心,而傳感器的正常工作與否取決于外部信號是否是嚴(yán)格按照它的驅(qū)動(dòng)時(shí)序提供的,這就需要一個(gè)控制器來完成這部分的工作。本文采用FPGA與Verilog語言設(shè)計(jì)TOF圖像傳感器的驅(qū)動(dòng)時(shí)序,最終目的是得到正確的數(shù)據(jù)以供后面用于距離的計(jì)算。
PMD PhotoICs 19K-S3圖像傳感器在進(jìn)行正常的深度圖像采集時(shí)總共需要13個(gè)控制信號,這13個(gè)控制信號全部都由位于控制板上的FPGA芯片產(chǎn)生。按照自頂向下的設(shè)計(jì)方法,這些時(shí)序設(shè)計(jì)按照功能可以分為兩個(gè)模塊,即參數(shù)配置模塊、像素陣列曝光讀出控制模塊。
由于得到一個(gè)場景的深度數(shù)據(jù)需要根據(jù)調(diào)制信號依次曝光4次,而曝光一次又需要依次分復(fù)位、積分、移位讀出3個(gè)過程,為了便于控制,把其中的每個(gè)過程都分配為有限狀態(tài)機(jī)(FSM)中的一個(gè)狀態(tài),即:reset,integration以及readout 3個(gè)狀態(tài),其狀態(tài)轉(zhuǎn)換圖如圖5所示,復(fù)位曝光以及讀出方式的流程圖如圖6、圖7所示。通過對基本時(shí)鐘進(jìn)行計(jì)數(shù),確定狀態(tài)轉(zhuǎn)換的條件。
圖6 復(fù)位曝光流程圖
圖7 寄存器讀出方式流程圖
狀態(tài)圖中的狀態(tài)轉(zhuǎn)換都由各自狀態(tài)中的計(jì)數(shù)器得到,計(jì)數(shù)器的計(jì)數(shù)參考時(shí)鐘是外部100 MHz的晶振時(shí)鐘輸入,20 MHz的調(diào)制信號通過PLL分頻得到。
3 仿真與數(shù)據(jù)處理結(jié)果
將設(shè)計(jì)好的所有模塊結(jié)合在一起,構(gòu)成了傳感器完整的驅(qū)動(dòng)程序,用ModelSim 6.5SE進(jìn)行仿真,其結(jié)果如圖8所示。由圖9所示的PC上計(jì)算得到的距離信息可以看出傳感器能正確地把光信號轉(zhuǎn)變成距離信息,所設(shè)計(jì)的時(shí)序符合TOF傳感器控制的要求。
圖8 ModelSim仿真結(jié)果
圖9 上位機(jī)上顯示采集到的深度數(shù)據(jù)
本文的設(shè)計(jì)驗(yàn)證用到的FPGA芯片是Xilinx公司的Sartan 3系列,設(shè)計(jì)的時(shí)序通過仿真驗(yàn)證后加載到FPGA中,經(jīng)過一定的處理后,能夠得到如圖9所示的深度數(shù)據(jù)。為了驗(yàn)證數(shù)據(jù)的正確與否,把這些數(shù)據(jù)在MATLAB顯示,其結(jié)果如圖10所示,能夠驗(yàn)證時(shí)序設(shè)計(jì)的正確性。程序設(shè)計(jì)中利用同步時(shí)鐘控制全局電路的思想[7],避免競爭與冒險(xiǎn),提高了程序的可靠性;采用模塊化的設(shè)計(jì)思想,提高程序的可重用性和可移植性,狀態(tài)機(jī)的設(shè)計(jì)方法提高了程序運(yùn)行的穩(wěn)定性。
圖10 深度數(shù)據(jù)三維重建結(jié)果
參考文獻(xiàn)
[1] SPICKERMANN A,DURINI D,ULFIG W.CMOS 3-D image sensor based on pulse modulated time-of-flight principleand intrinsic lateral drift-field photodiode pixels[C].IEEE Eur.Solid-State Circuits Conference,2011:111-114.
[2] 丁津津,張旭東,高雋.基于TOF技術(shù)的3D相機(jī)應(yīng)用研究綜述[J].儀器儀表學(xué)報(bào),2010,31(8):1-2.
[3] 潘華東,王其聰,謝斌,等.飛行時(shí)間法三維成像攝像機(jī)數(shù)據(jù)處理方法研究[J].浙江大學(xué)學(xué)報(bào),2010,30(6):9-12.
[4] 王煥欣.新型光電測距與三維成像技術(shù)研究[D].合肥:中國科技大學(xué),2009.
[5] PMDTechnologies GmbH.Novel Pixel Architecture with Inherent Background Suppression for 3D Time-of-Flight Imaging[R].SPIE,2005:130-147.
[6] FRANK M,PIAUE M,RAPP H,et al.Theoretical and experimental error analysis of continuous-wave time-of-flight
range cameras[J].Optical Engineering,2009,48(7):32-45.
[7] 吳征,蘇淑靖.基于FPGA+PWM的多路信號發(fā)生器設(shè)計(jì)[J].電子技術(shù)應(yīng)用,2014,40(3):38-40.