李麗 孫西花 孔明
摘 要 在脈沖式激光測距系統(tǒng)中,系統(tǒng)對回波信號的采集受噪聲信號的影響,使得有用信號淹沒在噪聲信號中,引入測量誤差。針對該問題本文高速采集系統(tǒng)對回波信號采用雙FPGA進行2G的高速采樣,并引進多脈沖相關(guān)疊加的方法,使得有用信號得到增強,噪聲信號被相對削弱;并對疊加之后的信號進行卡爾曼濾波,將無用的高頻噪聲信號濾掉,使得后端數(shù)據(jù)處理更加精確,進而提高激光測距系統(tǒng)的測量精度和測量距離。在本文中采用兩片F(xiàn)PGA,一片為主芯片,一片為從芯片,進行協(xié)調(diào)工作,實現(xiàn)高速AD采集,并進行相應(yīng)的數(shù)據(jù)處理,使得系統(tǒng)達到高精度、遠距離的測距效果。
關(guān)鍵詞 高速采集系統(tǒng);多脈沖相關(guān)疊加;卡爾曼濾波;激光測距
1系統(tǒng)結(jié)構(gòu)圖
該系統(tǒng)主要包括三個模塊:激光發(fā)射單元、激光接受單元以及邏輯控制與信息處理單元。中邏輯控制與信息處理單元分為主FPGA、從FPGA、DSP信息處理單元,主FPGA與從FPGA之間進行相互通信,同時各自分別實現(xiàn)1G的采樣速率,并分別做多脈沖互相關(guān)疊加運算,將運算結(jié)果存儲在公共的DDR中,實現(xiàn)2G的采樣速率。DSP再對共用DDR中的數(shù)據(jù)進行卡爾曼濾波[1],使波形更加趨于理想化,進而進行閥值檢測得到運算結(jié)果。
2多脈沖相關(guān)累加算法
在脈沖激光測距系統(tǒng)中,由于有用信號的相關(guān)性極強,而噪聲信號不存在相關(guān)性,將多個回波信號按照相關(guān)性進行相關(guān)性疊加,可以大大提高疊加之后信號的信噪比,進而提升系統(tǒng)的抗干擾能力。如式(1)所示
3高速數(shù)據(jù)采集方案實現(xiàn)
該部分實現(xiàn)對回波信號的數(shù)據(jù)采集,到達2G的采樣速率,由于FPGA處理速度的限制,該模塊使用2塊FPGA分別控制一個高速AD采樣芯片ADC08D1000對回波信號進行采樣[4],兩片F(xiàn)PGA進行信息通信,以達到協(xié)同工作的目的,同時為了減輕數(shù)據(jù)采集模塊的運算負擔(dān),引進DSP模塊,數(shù)據(jù)處理部分在DSP中進行。如圖3所示,主FPGA控制從FPGA采樣延后s,進而達到2G的采樣速率。
4卡爾曼濾波器的DSP實現(xiàn)
卡爾曼濾波分為三個階段:預(yù)測、轉(zhuǎn)換和矯正[5]。DSP程序?qū)崿F(xiàn)過程如圖4所示,在預(yù)測階段,使用狀態(tài)預(yù)測方程對當(dāng)前的狀態(tài)進行計算,得到后一個狀態(tài)的距離及其協(xié)方差的預(yù)測值。在轉(zhuǎn)換階段將預(yù)測階段得到的預(yù)測值轉(zhuǎn)換為卡爾曼濾波修正系數(shù),最后在矯正階段根據(jù)預(yù)測階段的預(yù)測值和轉(zhuǎn)換階段的修正系數(shù)得到后一階段的狀態(tài)及協(xié)方差矯正值[6]。
其中,和分別為狀態(tài)變量和觀測變量;和分別為系統(tǒng)的狀態(tài)轉(zhuǎn)換矩陣和控制輸入變量;以及維度轉(zhuǎn)換參數(shù)矩陣,系統(tǒng)過程激勵噪聲,觀測噪聲。
假設(shè)為當(dāng)前的狀態(tài),則可根據(jù)目前的的狀態(tài)預(yù)測出狀態(tài),相關(guān)方程如式(10)和式(11):
其中,為各種狀態(tài)下的距離結(jié)果;為各種狀態(tài)結(jié)果對應(yīng)的協(xié)方差;,為當(dāng)前狀態(tài)經(jīng)過卡爾曼濾波優(yōu)化處理得到的距離結(jié)果以及相應(yīng)協(xié)方差;,為根據(jù)當(dāng)前狀態(tài)預(yù)測的距離結(jié)果以及相應(yīng)協(xié)方差;為后一狀態(tài)的控制量,DSP程序設(shè)計過程中,根據(jù)控制量的輸入情況,對進行設(shè)置;為狀態(tài)轉(zhuǎn)換矩陣;是系統(tǒng)過程的協(xié)方差。則得到卡爾曼修正系數(shù),如式(12)所示:
其中表示預(yù)估距離值和觀測結(jié)果之間的維數(shù)轉(zhuǎn)換關(guān)系,為觀測噪聲協(xié)方差矩陣。根據(jù)觀測量的輸入值,以及距離結(jié)果的預(yù)估值,可以得到經(jīng)卡爾曼濾波后的距離及相應(yīng)的協(xié)方差,如式(13)和式(14)所示:
為經(jīng)過DSP結(jié)算得到的距離初值,也是DSP模塊的輸入觀測值,因為協(xié)方差更新公式中進行的是一維數(shù)組的測量且為單模量,所以設(shè)置為1。(8)式和(9)式中,根據(jù)白噪聲的特點,設(shè)定和的初始值為0,后期根據(jù)實驗對其進行修正。對本文中三次脈沖疊加之后的數(shù)據(jù),進行卡爾曼濾波,仿真結(jié)果如圖5所示:
由仿真結(jié)果可以看到,多脈沖相關(guān)累加信號經(jīng)過卡爾曼濾波之后,噪聲信號基本被濾掉,有用信號更加清晰可見,進而使得后端對數(shù)據(jù)的處理更加準確。
5試驗結(jié)果分析
根據(jù)測量結(jié)果需求對近距離和遠距離的情況分別進行試驗,為了減小測量帶來的誤差,對每次試驗分別進行7次測量,然后針對這7次測量結(jié)果進行均值處理,近距離和遠距離激光測距結(jié)果如表1所示。
針對近距離測試,選取50m的距離進行測量,如表所示,測量7組數(shù)據(jù),然后對該7組數(shù)據(jù)求取平均值,最終測量結(jié)果為49.98714,測量誤差為0.01286m。遠距離測試,選取2855m的距離進行測量實驗,同樣對該7組的數(shù)據(jù)進行平均值處理,最終測量結(jié)果為2854.371,測量誤差為0.629m.
根據(jù)仿真結(jié)果可以看出采用雙FPGA對回波信號進行交替采樣,可以實現(xiàn)雙倍的采樣速率增大測量的精確度;然后對采樣的回波信號進行多脈沖疊加,由DSP實現(xiàn)對疊加后的信號進行卡爾曼濾波,使得有用信號更加容易分辨。經(jīng)測試在近距離和遠距離測量中均具有極高的精度。
參考文獻
[1] 高勤,李志強,都學(xué)新.一種新型自適應(yīng)卡爾曼濾波算法[J].現(xiàn)代雷達,2001,23(6):29-34.
[2] 倪旭翔,胡凱.脈沖串互相關(guān)方法在遠程激光測距中的應(yīng)用[J].光學(xué)學(xué)報,2012,32(11):120-125.
[3] 黃本雄,侯潔,胡海.高斯白噪聲發(fā)生器在FPGA中的實現(xiàn)[J].微計算機信息,2007,23(20):165-167.
[4] 常高嘉,馮全源.基于FPGA的高速數(shù)據(jù)采集系統(tǒng)的設(shè)計與實現(xiàn)[J].電子器件,2012,35(5):217-220.
[5] 邱曉波,謝志宏,周啟煌.由DSP技術(shù)實現(xiàn)卡爾曼濾波算法初探[J].火力與指揮控制,1999,24(1):66-72.
[6] 鄒振宇.基于DSP的Kalman濾波器的算法研究[D].成都:成都理工大學(xué),2012.