一種基于FPGA的多路光柵信號(hào)采集方案
0 引言
本文引用地址:http://cafeforensic.com/article/236364.htm光柵傳感器作為精密機(jī)械量測(cè)量的有效工具在線位移、角位移、速度、加速度等工程的測(cè)量上得到了廣泛應(yīng)用。在長度測(cè)量中,光柵微位移傳感器可以達(dá)到μm級(jí)的測(cè)量精度,同時(shí)可以動(dòng)態(tài)采集長度的變化,從而可以精確地算出運(yùn)動(dòng)速度甚至加速度。在曲面測(cè)量中,相比于傳統(tǒng)的三坐標(biāo)機(jī)、輪廓儀,光柵傳感器也具有可以動(dòng)態(tài)檢測(cè)面形變化,精度高,可以實(shí)時(shí)輸出面形數(shù)據(jù)等優(yōu)勢(shì)。
多路選擇技術(shù)的數(shù)據(jù)采集中得到了廣泛應(yīng)用,在一些分布式系統(tǒng)當(dāng)中,使用多路選擇技術(shù)可以減少I/O口使用數(shù)量,提高系統(tǒng)集成度。具體來說,使用多路選擇開關(guān)對(duì)多路信號(hào)進(jìn)行選通處理,將多路選擇開關(guān)的輸出端連接采集芯片的I/O口,使采集芯片對(duì)各路信號(hào)進(jìn)行輪番采樣,但輪番采樣使得原始波形的采集離散化,即在芯片對(duì)采得的離散信號(hào)進(jìn)行處理前,需要對(duì)采得的波形進(jìn)行處理。
1 系統(tǒng)整體方案
系統(tǒng)選用了60 支高精度光柵傳感器(精度為0.5 μm),按環(huán)帶狀排布,以測(cè)量圓狀動(dòng)態(tài)面形變化。
實(shí)際測(cè)量時(shí),60個(gè)光柵微位移傳感器安放在測(cè)量臺(tái)上,待測(cè)面形與各傳感器接觸,待測(cè)面形變化時(shí),各路光柵傳感器會(huì)產(chǎn)生相應(yīng)的位移,將面形各采集點(diǎn)處的數(shù)據(jù)變化采集起來,通過一定的插值算法還原面形的動(dòng)態(tài)變化。
通常情況下,采集系統(tǒng)選用FPGA作為光柵信號(hào)的采集芯片。因系統(tǒng)涉及的信號(hào)路數(shù)較多,單片低端FPGA 很難滿足信號(hào)采集的要求,故需要多片FPGA 并行工作,最后用一片DSP芯片或單片機(jī)對(duì)多片F(xiàn)PGA進(jìn)行輪番尋址取值,再將各傳感器的數(shù)據(jù)傳送給上位機(jī),如圖1所示。系統(tǒng)結(jié)構(gòu)設(shè)計(jì)較為復(fù)雜,成本也較高。
本文提出了一種基于多路選擇技術(shù)的多路信號(hào)采集方案,針對(duì)多路信號(hào)無法同時(shí)被單芯片采集的問題,采用串、并結(jié)合采樣的方法,可以在滿足采樣精度要求的情況下,實(shí)現(xiàn)單FPGA上的多路信號(hào)采集,如圖2所示。
每個(gè)傳感器輸出信號(hào)中,表示傳感器移動(dòng)距離的信號(hào)有兩路(A、B)。4 個(gè)傳感器分為一組,共有8 路信號(hào)(1A、…、4A,1B、…、4B)。將1A~4A 接雙4 位多路選擇開關(guān)(如74HC4052)的1Y0~1Y3,1B~4B 接多路選擇開關(guān)的2Y0~2Y3.FPGA發(fā)出2位控制信號(hào)同時(shí)控制該多選芯片MUX1.即FPGA控制信號(hào)為00時(shí),MUX1的1Z輸出為1A,2Z輸出為1B,此時(shí)FPGA接收到的信號(hào)為傳感器1 的信號(hào)。FPGA 的控制信號(hào)進(jìn)入下一個(gè)狀態(tài)01時(shí),MUX1的1Z 輸出為2A,2Z 輸出為2B,此時(shí)傳感器2的信號(hào)被采集。依次類推,傳感器4的信號(hào)之后重新返回到傳感器1上。這樣就形成一個(gè)循環(huán)采樣的過程。
在對(duì)采樣頻率要求不高時(shí),多路并行采樣可以節(jié)省很多IO資源,同時(shí)精度也可以得到保證。FPGA內(nèi)部用狀態(tài)機(jī)可以完成多路選擇的控制,如圖3所示。
2 光柵信號(hào)預(yù)處理
光柵位移傳感器輸出為兩路相位相差90°的方波信號(hào),如圖4所示,正常情況下可以通過兩路波形的上升、下降沿的個(gè)數(shù)來計(jì)量位移的實(shí)際變化;并由兩路信號(hào)的瞬時(shí)相位變化得出位移的移動(dòng)方向。但由于本方案使用循環(huán)采樣的方法,使得某路光柵信號(hào)只有14 被采集到,故需通過相關(guān)方法還原原始信號(hào)。
這里采用通過濾波引入臨時(shí)信號(hào)的方法,將采集信號(hào)通過時(shí)鐘延時(shí)將采樣波形保持為采樣值四個(gè)時(shí)鐘周期,生成類似于原始信號(hào)的臨時(shí)信號(hào),如圖5所示。
濾波的作用是消除毛刺等噪聲對(duì)采樣信號(hào)產(chǎn)生的影響,常規(guī)的濾波方法為通過對(duì)若干個(gè)時(shí)鐘周期內(nèi)信號(hào)的判斷來實(shí)現(xiàn)。當(dāng)幾個(gè)時(shí)鐘周期內(nèi)信號(hào)的值并未發(fā)生跳轉(zhuǎn)時(shí),認(rèn)為信號(hào)值為真實(shí)值,可以作為進(jìn)一步處理的臨時(shí)信號(hào),如圖6所示??梢钥闯雠R時(shí)信號(hào)僅僅比原始波形信號(hào)滯后了若干時(shí)間(該滯后時(shí)間所對(duì)應(yīng)的時(shí)鐘周期數(shù)小于串行采樣數(shù),此處串行采樣數(shù)為4),這樣可以基本準(zhǔn)確地還原原始的波形,細(xì)分辨向計(jì)數(shù)等操作基于該臨時(shí)信號(hào),當(dāng)信號(hào)周期遠(yuǎn)大于時(shí)鐘周期,即光柵信號(hào)變化緩慢時(shí),對(duì)采樣的精度基本沒有影響。
3 多路光柵信號(hào)并行采集
對(duì)8 路光柵信號(hào)按上述方法進(jìn)行處理,如圖7 所示。在圖中所示范圍內(nèi),傳感器1~4產(chǎn)生以下信號(hào):增加18、減少11、先減1再加14、減少13.
觀察圖中A、B兩處的計(jì)數(shù),如圖8所示。A處傳感器1~4的初始值為64,0,8,4,B處可見傳感器1~4的計(jì)數(shù)值為82,-11,21,-9.與產(chǎn)生的脈沖信號(hào)完全符合,說明實(shí)現(xiàn)了正確的數(shù)據(jù)采集。
4 結(jié)論
本方案適用于低速且輸入較多的數(shù)據(jù)采集裝置,對(duì)于高速信號(hào),信號(hào)周期與時(shí)鐘周期相差倍數(shù)較小時(shí),此法會(huì)造成有效信號(hào)的損失,并不適用。當(dāng)信號(hào)周期遠(yuǎn)大于時(shí)鐘周期時(shí)(Ts > 20Tclk ),引入的臨時(shí)信號(hào)僅僅比原始信號(hào)滯后幾個(gè)時(shí)鐘周期(該滯后小于并行采樣數(shù)乘以時(shí)鐘周期),整體上可以比較好地還原初始波形。同時(shí),臨時(shí)信號(hào)還能有效消除一個(gè)時(shí)鐘周期內(nèi)的部分波形抖動(dòng),實(shí)現(xiàn)準(zhǔn)確的低速多輸入數(shù)據(jù)采集。
評(píng)論