尚君瑩,田學(xué)民,陳潔萌
(河北工業(yè)大學(xué) 天津 300400)
隨著科技的迅速發(fā)展,激光因?yàn)槠鋯紊愿撸较蛐愿撸喔尚院茫跍y(cè)距方面得到了很好的發(fā)展。激光測(cè)距技術(shù)綜合了激光、光學(xué)、電子學(xué)、光電子學(xué)、精密測(cè)量?jī)x器以及計(jì)算機(jī)等知識(shí)[6],因?yàn)樗哂袦y(cè)量精度高、范圍廣,能都實(shí)驗(yàn)非接觸測(cè)量,不易受電磁干擾等優(yōu)點(diǎn)而被廣泛應(yīng)用于各領(lǐng)域[7]。本文主要研究基于FPGA的脈沖式激光測(cè)距系統(tǒng)[8],既適長(zhǎng)距離測(cè)量也適用于短距離測(cè)量,并且有較高的測(cè)量精度,并研究了脈沖激光測(cè)距提高測(cè)量精度的主要算法。
脈沖激光測(cè)距利用了激光脈沖持續(xù)時(shí)間短、瞬時(shí)功率大的特點(diǎn),通過接收被測(cè)目標(biāo)的反射信號(hào),進(jìn)行距離測(cè)量[4-5]。由脈沖激光器向目標(biāo)發(fā)射一持續(xù)時(shí)間很短的單次激光脈沖或激光脈沖串,有一部分能量會(huì)被反射回來,被反射回來的脈沖激光稱為回波,回波返回由光電探測(cè)器接收,計(jì)數(shù)器測(cè)量激光脈沖到達(dá)目標(biāo)并由目標(biāo)返回到接收器的往返時(shí)間,由此計(jì)算目標(biāo)的距離。
設(shè)C為光在空氣中的傳播速度,T為激光脈沖往返飛行時(shí)間,L為待測(cè)的單程距離,則結(jié)果可用下面的式子表示:L=1/2CT,由于光速很大,所以要求T的精度要很高才能提高結(jié)果的精度。
根據(jù)激光脈沖測(cè)距的原理,脈沖激光測(cè)距系統(tǒng)主要分為3部分:激光發(fā)射模塊、激光接收模塊、回波檢測(cè)定時(shí)模塊和時(shí)間間隔測(cè)量模塊。如圖1所示的激光脈沖測(cè)距距系統(tǒng)的原理框圖,主要的測(cè)距流程為:由外部晶振向FPGA內(nèi)提供外部輸入時(shí)鐘,通過FPGA內(nèi)部的鎖相環(huán)倍頻后產(chǎn)生全局時(shí)鐘頻率,達(dá)到200~300 MHz,并將全局時(shí)鐘頻率作為計(jì)數(shù)模塊時(shí)鐘頻率。系統(tǒng)上電后開始測(cè)距,由FPGA內(nèi)部的脈沖信號(hào)發(fā)生器產(chǎn)生激勵(lì)脈沖信號(hào),驅(qū)動(dòng)激光發(fā)射模塊發(fā)射出一串脈沖激光,利用分光鏡將脈沖信號(hào)分為兩路,一路被取回進(jìn)入回波檢測(cè)定時(shí)模塊,進(jìn)行檢測(cè),計(jì)數(shù)器開始計(jì)數(shù)定時(shí),作為開始時(shí)刻,另一路射向目標(biāo)物,反射回來形成回波信號(hào)再進(jìn)入回波檢測(cè)定時(shí)模塊,進(jìn)行檢測(cè),計(jì)數(shù)器停止計(jì)數(shù),作為結(jié)束時(shí)刻,然后時(shí)間間隔測(cè)量模塊測(cè)量出開始時(shí)刻與結(jié)束時(shí)刻的差值,作為脈沖信號(hào)的飛行時(shí)間,利用公式計(jì)算出目標(biāo)距離。
當(dāng)觸發(fā)信號(hào)脈沖與回波信號(hào)脈沖的上升沿或者下降沿的時(shí)間間隔小于幾個(gè)納米,傳統(tǒng)的測(cè)量脈沖的方法不能適用,脈沖越窄所需的計(jì)數(shù)器時(shí)鐘頻率越高,對(duì)芯片的性能要求也越高,為了達(dá)到較高的精度,設(shè)計(jì)時(shí)采用了FPGA芯片來實(shí)現(xiàn)回波信號(hào)的高速采集與數(shù)據(jù)處理,有效地提高了飛行時(shí)間的測(cè)量精度。

圖1 激光脈沖測(cè)距系統(tǒng)原理框圖Fig.1 Principle diagram of laser pulse ranging
FPGA(Field Programmable Gate Arra),即現(xiàn)場(chǎng)可編程門陣列,即現(xiàn)場(chǎng)可編程門陣列,它是在PAL、GAL、CPLD等可編程器件的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物。它是作為專用集成電路(ASIC)領(lǐng)域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點(diǎn)。
隨著FPGA芯片的的不斷發(fā)展,系統(tǒng)時(shí)鐘頻率也在不斷提高,在一定程度上幫助了激光測(cè)距系統(tǒng)精度的提高,本文的脈沖激光測(cè)距系統(tǒng)使用的是ALTERA公司的Cyclone系列de EP1C12Q240I7作為主控芯片,它具有豐富的可編程邏輯單元,采用240腳的 PQFP封裝,裝有173個(gè)IO接口,提供12 060個(gè) LEs,52個(gè) M4K RAM Block,一共可以提供239616BIT的RAM,另外芯片內(nèi)還帶有2個(gè)鎖相環(huán),可以提供穩(wěn)定可靠的時(shí)鐘信號(hào)。
激光脈沖定距算法直接影響著定距系統(tǒng)的精度,本文系統(tǒng)研究了激光脈沖測(cè)距系統(tǒng)的相關(guān)算法,結(jié)合 FPGA開發(fā)的特點(diǎn),分模塊對(duì)算法進(jìn)行設(shè)計(jì)。主要研究的難點(diǎn)主要分為兩點(diǎn),一是回波檢測(cè)定時(shí)模塊的研究,激光脈沖信號(hào)從目標(biāo)物反射回來,夾雜著很多噪音,脈沖激光測(cè)距系統(tǒng)在工作時(shí)會(huì)受到很多噪聲的影響,如果信號(hào)較弱,很容易夾雜在噪聲中分辨不出來,嚴(yán)重影響回波信號(hào)的信噪比,導(dǎo)致激光測(cè)距的精度受到影響。二是時(shí)間間隔的測(cè)量,開始信號(hào)與回波信號(hào)到達(dá)的時(shí)間間隔也是影響脈沖激光測(cè)距系統(tǒng)精度的重要的一方面,采用合適的算法,最大限度的提高測(cè)量精度。
在回波檢測(cè)中主要的噪聲有背景噪聲、熱噪聲和散粒噪聲。背景噪聲主要是指太陽光,當(dāng)太陽光可以直接進(jìn)入接收模塊式,會(huì)對(duì)回波信號(hào)產(chǎn)生很大的影響,因此,為了正常的進(jìn)行測(cè)量工作,利用激光的單色性好,在接收模塊加入濾光片,將脈沖激光波長(zhǎng)以外的所有光波進(jìn)行濾除。熱噪聲主要是指放大電路和光電探測(cè)器等帶來的噪聲。散粒噪聲是由光電子不規(guī)則發(fā)射引起的噪聲。因此為了提高測(cè)量精度,需要對(duì)回波信號(hào)進(jìn)行精確檢測(cè)。回波檢測(cè)的方法很多,國(guó)內(nèi)常規(guī)的回波檢測(cè)方法為固定閾值檢測(cè)法,本課題只要檢測(cè)出回波信號(hào)對(duì)其定時(shí),確定起止時(shí)刻,所以這個(gè)方法很適用,將回波信號(hào)與設(shè)定的閾值進(jìn)行比較,低于閾值的回波信號(hào)被淘汰,高于閾值的回波信號(hào)被保留,然而收到各種因素的影響,如果閾值設(shè)定的太低,在環(huán)境不好的情況下不能正常測(cè)量,因此閾值不能設(shè)定太低,本文將回波信號(hào)的脈沖幅度的二分之一作為閾值。當(dāng)連續(xù)的10個(gè)回波采樣點(diǎn)超過閾值,認(rèn)為回波信號(hào)到達(dá),再進(jìn)行定時(shí)。
前面主要研究的回波檢測(cè)的算法,接著就是時(shí)間間隔的測(cè)量也就是數(shù)字脈沖寬度的測(cè)量,時(shí)間間隔測(cè)量主要是開始信號(hào)的脈沖激光的上升沿或下降沿與回波信號(hào)的上升沿與下降沿的時(shí)間間隔。最傳統(tǒng)最簡(jiǎn)單的方法就是計(jì)數(shù)法,但是會(huì)存在著很大的誤差,脈沖激光測(cè)距的時(shí)序圖如圖2所示。

圖2 脈沖激光測(cè)距的時(shí)序圖Fig.2 Schematic diagram of pulsed laser randing
設(shè)脈沖激光測(cè)距系統(tǒng)的始終周期為T0,計(jì)數(shù)器測(cè)定的脈沖個(gè)數(shù)為N,T為待測(cè)的時(shí)間間隔,T1、T2分別是開始時(shí)刻和結(jié)束時(shí)刻的誤差,簡(jiǎn)單的計(jì)數(shù)法會(huì)忽略T1、T2的值,產(chǎn)生一個(gè)Δ=T1-T2的誤差,因此得到的時(shí)間間隔為:

產(chǎn)生這種誤差的原因主要是技術(shù)脈沖的上升沿或下降沿與待測(cè)脈沖的上升沿或下降沿不一致,造成這種量化誤差。為了提高測(cè)量精度,解決量化誤差的問題,本文主要討論幾種解決方法,一是提高系統(tǒng)的時(shí)鐘頻率;二是對(duì)T1、T2兩個(gè)誤差進(jìn)行量化。
提高系統(tǒng)的時(shí)鐘頻率,主要是利用FPGA內(nèi)部的PLL,對(duì)原始晶振頻率進(jìn)行倍頻,由原來的50 MHz提高到200~300 MHz,大大的提高了系統(tǒng)的時(shí)鐘頻率,測(cè)量精度也會(huì)得到提高。因此,系統(tǒng)的時(shí)鐘頻率率與時(shí)間間隔測(cè)量精度成正比,頻率越低,精度越低。
對(duì)T1、T2進(jìn)行量化,本文主要采用的是數(shù)字插值法,數(shù)字插值法主要是將時(shí)間間隔的測(cè)量分為粗測(cè)量和細(xì)測(cè)量?jī)蓚€(gè)部分。如圖2所示,由于待測(cè)脈沖飛行時(shí)間和系統(tǒng)時(shí)鐘是異步的,首先采用粗測(cè)量的時(shí)鐘計(jì)數(shù)的方法求出N,然后將待測(cè)脈沖起始和結(jié)束端的隨機(jī)量分離出來,采用細(xì)測(cè)量算法進(jìn)行測(cè)量,最后把結(jié)果插入到粗測(cè)量結(jié)果中進(jìn)行補(bǔ)償,粗測(cè)量決定了測(cè)量系統(tǒng)的量程,精測(cè)量決定了測(cè)量的精度。精測(cè)量所采用的差值補(bǔ)償法主要有模擬內(nèi)插法、Vernier法、時(shí)間數(shù)字轉(zhuǎn)換法。
模擬內(nèi)插法主要是利用對(duì)電容充放電對(duì)T1、T2進(jìn)行放大,再進(jìn)行時(shí)鐘計(jì)數(shù),但也由于電容的充放電不穩(wěn)定,非線性因素影響大,導(dǎo)致實(shí)際的測(cè)量不穩(wěn)定。
Vernier法也叫游標(biāo)法,主要是利用游標(biāo)卡尺的原理對(duì)T1、T2進(jìn)行測(cè)量。設(shè)游標(biāo)振蕩器周期為TS,且TS比系統(tǒng)時(shí)鐘周期T0稍低,開始信號(hào)到達(dá),游標(biāo)振蕩器開始計(jì)數(shù),經(jīng)過n個(gè)脈沖后,與粗測(cè)量的脈沖上升沿同步,那么得到 T1=n×(TS-T0),同理,結(jié)束信號(hào)到達(dá),與粗測(cè)量的脈沖信號(hào)同步時(shí),經(jīng)過m個(gè)脈沖,得到 T2=m×(TS-T0)。
Vernier法雖然也能提高測(cè)量精度,分辨率為TS-T0,顯然降低了,但是它對(duì)系統(tǒng)的時(shí)鐘頻率要求很高,又有很高的精準(zhǔn)度和穩(wěn)定性,實(shí)際應(yīng)用性差。
時(shí)間數(shù)字轉(zhuǎn)換法又名為延遲線內(nèi)插法,也是將T1、T2重新測(cè)量,為全數(shù)字化測(cè)量,在FPGA中很容易實(shí)現(xiàn),隨著數(shù)字電路中延遲線的發(fā)展,時(shí)間數(shù)字轉(zhuǎn)換法在高精度測(cè)量中開始廣泛應(yīng)用。一連串的輸出邏輯狀態(tài)隨輸入改變的邏輯緩沖門作為基本元件,延遲器件一般采用非門,與下面的D觸發(fā)器構(gòu)成一個(gè)延遲單元,理想狀態(tài)下每個(gè)延遲單元都有相同的延遲Tb,當(dāng)脈沖信號(hào)到達(dá)時(shí)啟動(dòng)緩沖門,當(dāng)時(shí)鐘信號(hào)到達(dá)時(shí),輸出D觸發(fā)器記錄的通過的緩沖門的個(gè)數(shù)n,得到:T1=n×Tb,同理通過記錄緩沖門 m,得到:T2=m×Tb。
圖3為時(shí)間數(shù)字轉(zhuǎn)換原理圖,每個(gè)緩沖門的輸出端都連接著D觸發(fā)器的一個(gè)輸入端,以便記錄邏輯緩沖門的輸出狀態(tài)。所有的D觸發(fā)器的C輸入端都并聯(lián)在一起,接收同一個(gè)結(jié)束信號(hào)。當(dāng)結(jié)束信號(hào)到達(dá)時(shí),D觸發(fā)器立即鎖存此時(shí)的輸出結(jié)果。測(cè)量結(jié)束,編碼電路接收了所有D觸發(fā)器的輸出信息,通過編碼電路得到測(cè)量結(jié)果。

圖3 延遲線法的原理框圖Fig.3 Principle diagram of relay puls method
目前時(shí)間數(shù)字轉(zhuǎn)換法主要是利用德國(guó)ACAM公司生產(chǎn)的時(shí)間數(shù)字轉(zhuǎn)換芯片TDC-GP2,單次測(cè)量分辨率為典型65ps,功耗超低,集成度高,測(cè)量靈活性高,是脈沖式激光測(cè)距非常理想的選擇。
文中簡(jiǎn)單介紹了脈沖激光測(cè)距的原理,利用FPGA模塊化的原理,提出了改進(jìn)方案,并研究了時(shí)間間隔測(cè)量的幾種算法,找到最有效的時(shí)間數(shù)字轉(zhuǎn)換法,充分利用FPGA的平臺(tái),提高了測(cè)量的精度,這種方法不但適用于脈沖激光測(cè)距,也適合于其他高精度時(shí)間間隔測(cè)量系統(tǒng)。
[1]宋建輝,袁峰.脈沖激光測(cè)距中高精度時(shí)間間隔的測(cè)量[J].光學(xué)精密工程,2009,17(5):1046-1049.SONG Jian-hui,YUAN Feng.High precision time interval measurement in pulse laser ranging[J].Optics and Precision Engineering,2009,17(5):1046-1049.
[2]許沖.激光脈沖定距算法研究與FPGA實(shí)現(xiàn)[D].哈爾濱:哈爾濱工業(yè)大學(xué),2011.
[3]蔡紅霞,劉繼勇.基于FPGA脈沖激光測(cè)距高精度時(shí)間間隔的測(cè)量[J].計(jì)算機(jī)與數(shù)字工程,2013,41(11):1843-1845.CAI Hong-xia,LIU Ji-yong.Based on the FPGA pulse laser ranging precision time interval measurement[J].Computer&Digital Engineering,2013,41(11):1843-1845.
[4]馮志輝,劉恩海.基于FPGA延遲線插入法的半導(dǎo)體激光測(cè)距[J].光電工程,2010,37(4):54-59.FENG Zhi-hui,LIU En-hai.Semiconductor laser ranging based on FPGA delay line insertion method[J].Optoelectronic?Component,2010,37(4):54-59.
[5]馮國(guó)旭,常寶成.高精度激光測(cè)距技術(shù)研究[J].激光與紅外,2007,37(11):1138-1140.FENG Guo-xu,CHANG Bao-cheng.High precision laser ranging technology research[J].Laser&Infrared,2007,37(11):1138-1140.
[6]戴永江.激光雷達(dá)技術(shù)[M].北京:電子工業(yè)出版社,2010.
[7]楊坤濤.激光測(cè)試原理與技術(shù)[M].武漢:華中科技大學(xué)出版社,1999.
[8]沈娜,張祥金.基于FPGA的激光定距系統(tǒng)信號(hào)處理方案設(shè)計(jì)[J].激光雜志,2009,30(2):64-65.SHEN Na,ZHANG Xiang-jin.Design of signal processing scheme for laser fixed distance system based on FPGA[J].Lsaer Journal,2009,30(2):64-65.