XU Ding,LI Binhua,YANG Xiaohan(Faculty of Information Engineering and Automation,Kunming University of Science and Technology,Kunming 650500,China)
?
A Grating Signal Segmentation Method Based on FPGA*
XU Ding,LI Binhua*,YANG Xiaohan
(Faculty of Information Engineering and Automation,Kunming University of Science and Technology,Kunming 650500,China)
A grating signal segmentation and the direction based on FPGA are adopted in the high precision mea?surement,in order to improve the accuracy of the grating segmentation.Firstly,Matlab is used for analysis two origi?nal signals and filtered and the filtered DC component of the signal characteristics output from the read head.The feasibility of 1024 subdivision algorithm implementation and hardware circuit are verified,according to structure subdivision algorithm,the grating signal is subdivided and identified direction.Tessellation hardware circuit is di?vided into 8 sub-division circuit.Which is 8 segmentation in each cycle of one main signal.Mainly,the accurate cir?cuit handles the eight cycle of each signal segment.The results of the test show that the subdivision circuit achieve the 1024 subdivision of the grating,and the high-powered subdivision purpose.
FPGA;grating signal;measurement;subdivision;identify the direction
光柵在自動化測量、高檔數(shù)控機床及精密加工等領(lǐng)域應(yīng)用十分廣泛。不管是增量式光柵還是絕對式光柵,要達(dá)到高精度和高分辨率的測量,通常都需要對光柵的原始正交信號進(jìn)行整形并對其細(xì)分。國內(nèi)外學(xué)者對光柵的細(xì)分技術(shù)進(jìn)行了大量的研究,涉及的技術(shù)面也很廣,方法種類很多,比如光學(xué)細(xì)分法、電子學(xué)細(xì)分法和微處理器軟件細(xì)分法等幾大類[1]。光學(xué)細(xì)分法由于受到制造工藝限制,細(xì)分倍數(shù)很難提高。電子學(xué)細(xì)分法和微處理器軟件細(xì)分法有著細(xì)分倍數(shù)較高、電路簡單、跟蹤速度快等特點,調(diào)節(jié)方便,容易實現(xiàn)數(shù)字化測量和智能化控制,因而被廣泛運用。但由于受到光柵間隙、衍射、光源、溫度以及制造工藝等限制,光柵輸出信號含有電平漂移、正弦和余弦信號幅度差太大、正交性等現(xiàn)象,這些因素會影響現(xiàn)有細(xì)分方法的精度及可靠性[2]。因為現(xiàn)有細(xì)分方法的基礎(chǔ)是光柵輸出為純凈的標(biāo)準(zhǔn)正弦波信號,所以細(xì)分前要盡可能消除上述不良因素的影響。
但是,在生產(chǎn)制造過程中,完全消除上述影響的可能性是不大的。因此,為進(jìn)行高倍細(xì)分,還需要對光柵信號進(jìn)行補償和修正[3]。對編碼器輸出的原始信號,在前端讀數(shù)頭及其后端的細(xì)分盒中都需要進(jìn)行修正[4-5]。根據(jù)修正之后波形的特點,提出了一些有針對性的細(xì)分方法,其中應(yīng)用最多的是電子學(xué)細(xì)分法,每種細(xì)分方法都有優(yōu)缺點。劉世峰[6]使用幅值采樣的方法,其硬件結(jié)構(gòu)沒有對信號濾波處理,且采用單片機(MCU)作為主處理器,其細(xì)分速度和精度受到很大影響。喻洪麟等人[7]采用數(shù)字信號處理器(DSP)對光柵信號進(jìn)行數(shù)字濾波,采用合成函數(shù)細(xì)分與幅值相結(jié)合的方法,在幾微秒的時間內(nèi)對光柵做到了500細(xì)分,但是當(dāng)細(xì)分倍數(shù)高時,其所用的存儲單元會使細(xì)分速度受到很大影響。曹永剛[8]采用純硬件對編碼器進(jìn)行細(xì)分,通過查找地址完成了對光柵信號一個周期256細(xì)分,但是其做到高倍細(xì)分受到其硬件結(jié)構(gòu)的高位模數(shù)轉(zhuǎn)換器(ADC)和大容量存儲器限制。
為了節(jié)省信號細(xì)分的軟件處理時間,提高信號處理速度,本文采用純硬件實現(xiàn)對信號的細(xì)分。文中首先分析了雷尼紹讀數(shù)頭輸出的光柵信號、濾波后的信號,據(jù)此構(gòu)造了相應(yīng)的細(xì)分算法,然后設(shè)計并制作了基于現(xiàn)場可編程門陣列(FPGA)的細(xì)分電路,實現(xiàn)了對光柵信號的1024細(xì)分和辨向計數(shù)。
圖1 采集到的實際信號
為設(shè)計有效的細(xì)分算法和實現(xiàn)電路,必須了解光柵信號的特點。為此,我們先對雷尼紹讀數(shù)頭SR050A輸出的光柵信號進(jìn)行采集、分析和預(yù)處理。
1.1光柵信號的采集與復(fù)現(xiàn)
雷尼紹讀數(shù)頭SR050A輸出四路相差90°的正余弦信號,用示波器觀察這些信號,發(fā)現(xiàn)其中噪聲很大。我們使用安捷倫6000系列示波器將光柵信號保存為csv格式的數(shù)據(jù)。圖1(a)為這兩個信號濾波前的波形,圖1(b)為這兩個信號的李沙育圖。差分運算的兩個輸入信號的相位差為180°,經(jīng)差分運算后輸出的信號直流電平和偶次諧波均減小,同時奇次諧波增加了近一倍。從圖中可以看出,差分后的信號大致是一個正余弦信號,且含有明顯的高頻噪聲,后續(xù)使用時必須濾波處理。從統(tǒng)計分析表明,這兩個正余弦信號直流偏量分別為-0.012 7和0.003 9,說明這兩個信號中含有少量直流成份。
將差分信號的數(shù)據(jù)保存為csv格式數(shù)據(jù),導(dǎo)入到安捷倫可編程函數(shù)信號發(fā)生器33250A,就可以將差分后的光柵信號,通過該信號發(fā)生器復(fù)制并輸出。這對后續(xù)細(xì)分算法的設(shè)計、濾波與細(xì)分硬件電路的設(shè)計、調(diào)試是很重要的。
1.2光柵信號正弦屬性分析
原始光柵出來的信號是一個類似正弦波的信號,經(jīng)過讀數(shù)頭輸出信號和原始信號可能有所差別。高倍細(xì)分要求信號是正余弦信號,為此,需要分析實測的光柵信號是否是正余弦信號。
由于實測光柵差分信號有明顯的噪聲,根據(jù)采集的一段信號的頻率是1.3 kHz和采樣頻率是200 kHz。由于實際運動不是勻速運動,信號的最高頻率略大于1.3 kHz,為此我們設(shè)計截止頻率是4 kHz的FIR濾波器對其濾波,去除高頻噪聲,獲得如圖2中實線所示的濾波后并濾除直流分量的光柵信號。然后,用安捷倫6000系列示波器將濾波后的光柵信號的數(shù)據(jù)進(jìn)行采集、保存。再以此數(shù)據(jù)擬合出一個標(biāo)準(zhǔn)的正弦函數(shù),得到波形如圖2虛線所示。利用統(tǒng)計學(xué)回歸分析理論的曲線相關(guān)系數(shù)R2對所建立的模型進(jìn)行擬合度檢驗。曲線相關(guān)系數(shù)R2定義如下:
式中,YRSS=∑(yi-y?i)2,是殘方差平方和;YTSS=∑(yi-yˉi)2,是總平方和。這里yi為一系列標(biāo)準(zhǔn)數(shù)學(xué)正弦函數(shù)的值,y?i為一系列采集到的讀數(shù)頭濾波之后數(shù)據(jù)。R2(0≤R2≤1)反映了在實際采集的數(shù)據(jù)y的總變異由標(biāo)準(zhǔn)函數(shù)之間的比例或百分比[9]。
使用Matlab進(jìn)行數(shù)據(jù)處理,擬合度計算結(jié)果為99.81%,說明擬合度接近于1,說明實測光柵信號非常接近標(biāo)準(zhǔn)的正弦函數(shù)。因此,讀數(shù)頭的光柵信號類似正弦波,可見讀數(shù)頭已經(jīng)對光柵信號做了初步處理。
圖2 濾波去直流分量數(shù)據(jù)與理想數(shù)據(jù)擬合
1.3光柵信號的正交性、幅值和直流分量偏差的分析
FIR低通濾波器對原始光柵信號進(jìn)行數(shù)字濾波之后,然后繪制李沙育圖像如圖3所示。其中圖3(a)為兩路光柵正余弦信號,圖3(b)中實線是用這兩個光柵信號繪制的李沙育圖,為了便于比較,用虛線繪制了一個標(biāo)準(zhǔn)圓。該圖3與圖1比較,顯然高頻噪聲基本被濾除了,說明所涉及的FIR低通濾波器是有效的。
從圖3(b)圖可以看出,李沙育圖基本上是一個正圓,但與標(biāo)準(zhǔn)的圓心有點偏移,這是說明光柵差分信號中仍然存在微小的直流分量,使信號的直流電平偏離預(yù)定值,從而造成相位圓偏心。為此,再次計算FIR濾波之后的正弦信號和余弦信號直流分量,分別為-0.009 4和0.002 3。事實上,讀數(shù)頭的四個通道上的光電器件的暗電流各不相同,通道的處理電路不完全對稱,雖然經(jīng)過差分放大器抵消,但還有一部分剩余量,導(dǎo)致直流電平偏離預(yù)定值。
我們?yōu)V掉其直流分量得到如圖4所示,我們從圖中可以看出兩圓的圓心重合。我們知道,信號相位不正交和信號幅值不相等的李沙育圖都會成橢圓形,從圖4我們可以看出讀數(shù)頭輸出的正余弦信號基本上是嚴(yán)格正交的,他們的幅值也基本上相等。利用波形數(shù)據(jù)統(tǒng)計求平均值的方法,計算得出相位偏差為周期的0.045 7%,幅度偏差即用正弦函數(shù)幅值相比余弦函數(shù)幅值得到1.013,這樣質(zhì)量的信號可以滿足系統(tǒng)的1024細(xì)分[10]。
圖3 濾波之后的對比圖
圖4 濾除直流分量后波形
2.1細(xì)分算法
我們的細(xì)分算法采用前人提出的粗細(xì)分和精細(xì)分相結(jié)合的方法,但對前人的編碼方式與數(shù)據(jù)處理方式作了一些修改,主要功能框圖如圖5所示。粗細(xì)分主要利用sin(ωt)、cos(ωt)、|sin(ωt)|、|cos(ωt)|這幾個信號編碼。sin(ωt)和cos(ωt)主要與過零比較器相比較,|sin(ωt)|與|cos(ωt)|相互比較。比較之后得到一個周期電平如表1所示??梢钥闯?,一個周期變成8個不同的電平信號,分別為100、101、111、 110、010、011、001、000。當(dāng)光柵正向移動的時候,信號電平按100-101-111-110-010-011-001-000-100的順序循環(huán)變化。當(dāng)光柵反向移動的時候,信號電平按110-111-101-100-000-001-011-010-110變化一次。這種信號電平的變化如圖6(a)所示。當(dāng)光柵每正向移動一次及八分之一柵距加計數(shù),反向移動一次及八分之一柵距減計數(shù),將數(shù)值記為count_8。如此就實現(xiàn)了8細(xì)分,即粗細(xì)分。
精細(xì)分主要將輸入的正余弦信號離散化(取樣)并用某種形式的線性函數(shù)進(jìn)行近似,其主要包括2個步驟:AD采樣和構(gòu)造線性函數(shù)。構(gòu)造線性函數(shù)方法主要有兩種方法,第一種是將兩路信號進(jìn)行AD采樣,再在MCU內(nèi)部構(gòu)造線性函數(shù)[11]。第二種方法主要利用模擬電路構(gòu)造線性函數(shù),也就是用模擬電路將正余弦信號轉(zhuǎn)換成線性函數(shù)[12]。本文采用第二種方法,這樣避免了復(fù)雜的算法運算,加快細(xì)分運算速度。構(gòu)造的線性函數(shù)也有很多種,本文采用第二種方法,這樣避免了復(fù)雜的算法運算,加快細(xì)分運算速度。構(gòu)造的線性函數(shù)也有很多種,本文采用不太復(fù)雜的模擬電路構(gòu)造正切函數(shù)和余切函數(shù)。如圖6(b)所示。然后對這個線性函數(shù)進(jìn)行AD采樣,采樣數(shù)據(jù)記為count_ad。精細(xì)分中線性函數(shù)的構(gòu)造方法如下
式中,uout表示正余弦信號絕對值較大的函數(shù),uout2表示正余弦信號絕對值較小的函數(shù)。
圖5 細(xì)分算法功能框圖
表1 信號極性與絕對值比較
圖6 細(xì)分算法構(gòu)造函數(shù)
當(dāng)光柵運動時,采用8 bit AD采樣得到的時序關(guān)系如圖7所示。這樣采用8 bit AD,則總的細(xì)分?jǐn)?shù)為8×28。根據(jù)前面實測正余弦信號的特點,取AD采樣數(shù)據(jù)的高7位數(shù)據(jù),則總的細(xì)分?jǐn)?shù)為8×27。由圖6(a)和圖7可知,總的細(xì)分?jǐn)?shù)據(jù)從上式可以看出,AD采樣的誤差不會累積。
圖7 算法時序圖
2.2線性函數(shù)構(gòu)造的細(xì)分誤差
構(gòu)造線性函數(shù)導(dǎo)致的誤差主要來源于函數(shù)的線性度導(dǎo)致的,如圖8(a)所示。完全線性的函數(shù)其縱軸和橫軸的刻度對應(yīng)成正比例,縱軸的均分相當(dāng)于橫軸的均分。AD采樣相當(dāng)于對縱軸進(jìn)行細(xì)分,實際構(gòu)造的函數(shù)不是完全線性的,因此用AD采樣的數(shù)據(jù)代替橫軸均分的數(shù)據(jù)會帶來誤差。計算利用AD采樣的數(shù)據(jù)代替橫軸的時間軸細(xì)分的絕對誤差最大為0.090 5。一個八分之一柵距計數(shù)為127,即絕對誤差最大為127×0.090 5=11.493。由于鋼帶碼盤刻了很多柵距,隨著柵距數(shù)的增加,總的細(xì)分?jǐn)?shù)據(jù)也將增加,最大的相對誤差就會很小,可以忽略不計。
圖8 線性函數(shù)對比及誤差圖
為實現(xiàn)上節(jié)所述的細(xì)分算法,我們設(shè)計并制作了一個高倍細(xì)分系統(tǒng),硬件框圖如圖9所示。該實驗系統(tǒng)的輸入信號是雷尼紹讀數(shù)頭SR050 A輸出的四路相位各差90°的正弦信號,由于這些信號含有多種誤差、噪聲,需要首先對其進(jìn)行處理;信號處理電路是差分放大與低通濾波,其輸出為一路正弦信號和一路余弦信號。在此基礎(chǔ)上,按照幅值采樣的思想,將電路劃分為兩大主要部分:粗細(xì)分及辨向電路和精細(xì)分電路。但在具體的電路設(shè)計上,與文獻(xiàn)[6]又有較大差別。具體來說,我們設(shè)計的粗細(xì)分及辨向電路由前端模擬電路和基于FPGA的后端邏輯電路構(gòu)成,精細(xì)分電路則由前端模擬電路、8 bit ADC和基于FPGA的邏輯電路構(gòu)成,只是構(gòu)造線性函數(shù)的電路采用文獻(xiàn)[6]介紹的電路。主要的特點是采用了FPGA進(jìn)行細(xì)分邏輯電路的設(shè)計與實現(xiàn),此外還增加了濾波電路。使用FPGA作為系統(tǒng)的數(shù)據(jù)處理模塊,可以大大加快細(xì)分?jǐn)?shù)據(jù)處理算法的運算速度,克服單片機或DSP導(dǎo)致的運算速度慢的缺點,從而提高了細(xì)分倍數(shù)。濾波電路的增加是基于前一節(jié)對實測讀數(shù)頭輸出信號的分析而得出的,同時加耦合電容濾掉直流分量。
圖9 系統(tǒng)硬件結(jié)構(gòu)框圖
3.1粗細(xì)分及辨向電路模塊介紹
按光柵讀數(shù)原理,光柵每移動一個柵距輸出一個正弦波。粗細(xì)分就是要將這一個正弦波均分為8段,即八細(xì)分。也就是說,光柵每移動八分之一柵距,這部分電路完成一次計數(shù)。
粗細(xì)分模塊電路主要由前端模擬電路和粗細(xì)分計數(shù)邏輯電路組成。粗細(xì)分前端模擬電路由圖9中的一個絕對值比較器和兩個過零比較器組成。兩個結(jié)構(gòu)相同的絕對值電路完成正余弦信號的絕對值運算,獲得|sin(ωt)|和|cos(ωt)|,再由比較器對這兩個絕對值信號進(jìn)行比較,輸出邏輯信號COM;兩個結(jié)構(gòu)相同的過零比較器對正余弦信號直接進(jìn)行過零比較,輸出邏輯信號SIN和COS。COM、 SIN、COS這三個信號的數(shù)值參見表1,它們作為FPGA內(nèi)部粗細(xì)分計數(shù)邏輯電路的輸入信號。
粗細(xì)分計數(shù)邏輯電路就是按照粗細(xì)分算法進(jìn)行辨向(加或減)計數(shù)。當(dāng)COM、COS、SIN這3路信號的電平按照100-000-001-101-111-011-010-110-100的順序循環(huán)變化,進(jìn)行加計數(shù)。COM、COS、SIN這3路信號的電平狀態(tài)按照011-111-101-001-000-100-110-010-011的順序循環(huán)變化,進(jìn)行減計數(shù)。仿真如圖10所示,同時我們用Quar?tus II內(nèi)置邏輯分析儀Signal Tap II捕捉粗細(xì)分信號的數(shù)據(jù)如圖11所示,其中的signal信號即COM、COS、SIN,數(shù)據(jù)在時序上嚴(yán)格根據(jù)信號的變化計數(shù)。
圖10 仿真實驗圖
圖11 邏輯分析儀數(shù)據(jù)
3.2精細(xì)分模塊電路設(shè)計
精細(xì)分模塊電路設(shè)計主要是將每個周期的信號構(gòu)造成8個線性區(qū)間,然后逐次采樣得到每1/8區(qū)間信號的數(shù)據(jù)。精細(xì)分電路包括圖9中的兩個絕對值電路及其比較、多路選擇電路、跟隨電路以及AD采樣電路。兩路正余弦電路經(jīng)過絕對值電路后,再經(jīng)過多路選擇器及跟隨器的信號uout1和uout2輸至AD芯片端,uout1為較小的信號,如圖12綠色所示,uout2為較大的信號,如圖12黃色曲線所示。將信號uout1送入A/D芯片的模擬輸入端ANALOG_IN,信號uout2送入A/D芯片的參考輸入端REFT。這樣A/D芯片的參考電壓是變化的模擬信號,對于這種變化的參考信號,A/D采樣輸出精細(xì)分?jǐn)?shù)據(jù)。
以上處理實質(zhì)上是用一塊A/D芯片TLC5510,巧妙地完成了對正、余弦信號的正切函數(shù)轉(zhuǎn)換和A/D幅值采樣,避免了復(fù)雜且耗時的除法電路[6],完成精細(xì)分。A/D轉(zhuǎn)換電路最終輸出的是對信號采樣后的數(shù)字信號,以供FPGA處理。
圖12 輸入至AD芯片模擬輸入端波形
3.3FPGA數(shù)據(jù)處理模塊
根據(jù)前述細(xì)分原理和系統(tǒng)結(jié)構(gòu)圖可知,F(xiàn)PGA主要完成ADC控制、數(shù)據(jù)接口、粗細(xì)分和精細(xì)分的綜合,我們設(shè)計了對應(yīng)的子模塊完成相應(yīng)任務(wù),主要包括A/D控制模塊、數(shù)據(jù)緩沖模塊及8細(xì)分模塊和綜合數(shù)據(jù)處理與輸出模塊,這些子模塊的數(shù)據(jù)輸入輸出和互連關(guān)系如圖13所示。
圖13 FPGA內(nèi)部邏輯電路設(shè)計
A/D控制模塊主要是連接控制A/D轉(zhuǎn)換芯片TLC5510的時鐘輸入端。數(shù)據(jù)緩沖模塊主要是為了接受精細(xì)分輸出數(shù)據(jù)data_out,8細(xì)分模塊得到粗細(xì)分?jǐn)?shù)據(jù)counter_reg_8。綜合數(shù)據(jù)處理模塊主要對得到的粗細(xì)分?jǐn)?shù)據(jù)和精細(xì)分?jǐn)?shù)據(jù)進(jìn)行運算得到高倍細(xì)分的數(shù)據(jù)data,計算公式參見式(4)。舉例來說,若采用碼盤的線數(shù)為c,每個周期正弦信號的細(xì)分倍數(shù)為1 024,則轉(zhuǎn)動角度的計算公式為
Altera公司提供了一種加快開發(fā)速度的板級調(diào)試工具SignalTap II邏輯分析儀。本文主要用Sig?nalTap II進(jìn)行實時采集信號觀察。SignalTap II是Quartus II軟件中內(nèi)置的邏輯分析儀軟件,使用它可以實時地觀察FPGA內(nèi)部信號波形,方便設(shè)計者來查看設(shè)計缺陷,相當(dāng)于一種在線調(diào)試工具。
邏輯分析儀的信號端口主要觀察三個端口da?ta_out、counter_reg_8和sum。data_out為精細(xì)分?jǐn)?shù)據(jù),counter_reg_8為粗細(xì)分?jǐn)?shù)據(jù),sum為總的細(xì)分?jǐn)?shù)據(jù)。圖14為精細(xì)分?jǐn)?shù)據(jù)處于最大值的臨界狀態(tài)時,當(dāng)粗細(xì)分?jǐn)?shù)據(jù)位于偶數(shù)區(qū)間,及圖中的coun?ter_reg_8等于6時可以看出公式(3)提出的偶數(shù)計算公式是正確的。當(dāng)粗細(xì)分?jǐn)?shù)據(jù)位于奇數(shù)區(qū)間,及圖中counter_reg_8等于7時可以看出上節(jié)提出的奇數(shù)計算公式是正確的。
圖14 邏輯分析儀捕捉最大值臨界狀態(tài)
同理從圖15中,可得精細(xì)分?jǐn)?shù)據(jù)在最小值的臨界狀態(tài)也是正確的。圖11已說明8細(xì)分?jǐn)?shù)據(jù)是正確的,圖14和圖15再次得到和圖7理論分析一樣的時序圖證明1 024細(xì)分是正確的。
圖15 邏輯分析儀捕捉最小值臨界狀態(tài)
為了得到整體數(shù)據(jù)的變化規(guī)律,將每一個柵距作為一次循環(huán),及計數(shù)到1 023時數(shù)據(jù),從頭開始。將數(shù)據(jù)轉(zhuǎn)化成模擬量,可以看到數(shù)據(jù)的變化規(guī)律如圖16所示。
圖16 數(shù)據(jù)變化規(guī)律
本文實驗所采用的數(shù)據(jù)來源于用安捷倫6000系列示波器采集的雷尼紹讀數(shù)頭SR050 A輸出的信號。通過可編程函數(shù)信號發(fā)生器再將這些實測數(shù)據(jù)轉(zhuǎn)化成后續(xù)實驗分析和測試的波形。這為分析、設(shè)計和調(diào)試高倍細(xì)分電路帶來了很大的便利。實驗過程中使用的都是實際波形數(shù)據(jù)。對于1 024細(xì)分電路的實測結(jié)果是可信的。由于采用對光柵信號的預(yù)處理后,正余弦信號波形滿足高倍細(xì)分電路的要求。
搭建的細(xì)分電路主由8細(xì)分和精細(xì)分相結(jié)合的方法,可靠性和處理速度得到了提高。粗細(xì)分改變電路采用移相電阻鏈的細(xì)分方法,由于電阻不是嚴(yán)格精密電阻,會引入較大誤差。因此采用本文的粗細(xì)分模塊提高了細(xì)分精度。精細(xì)分中由于構(gòu)成的線性函數(shù)是正切和余切函數(shù),函數(shù)并不是嚴(yán)格線性的,會造成一定的線性誤差,導(dǎo)致采樣的數(shù)據(jù)位時間不是嚴(yán)格相等,因此,這種方法在目前情況下,只能做到1 024細(xì)分。
本文通過Matlab分析讀數(shù)頭輸出的兩路原始信號的特點,對其進(jìn)行濾波和濾除直流分量,根據(jù)處理之后的波形構(gòu)造細(xì)分算法并分析其構(gòu)造的線性函數(shù)誤差。首先通過Matlab驗證了細(xì)分算法實現(xiàn)1 024細(xì)分的可行性,也驗證硬件電路實現(xiàn)算法的可行性,同時我們通過理論分析得到細(xì)分算法的時序圖。采用粗細(xì)
分和精細(xì)分相結(jié)合的細(xì)分方法,根據(jù)Matlab構(gòu)造的細(xì)分算法框圖,搭建細(xì)分硬件電路。硬件環(huán)境下,首先我們通過邏輯分析儀捕捉8細(xì)分計數(shù)信號,證明8細(xì)分是正確的,然后通過SignalTap II捕捉信號時序圖,最后得到和我們理論分析一樣的時序圖,證明本文實現(xiàn)1 024倍細(xì)分的正確性。全硬件細(xì)分電路使光柵細(xì)分速度得到提高,細(xì)分倍數(shù)主要取決于光柵信號質(zhì)量,在光柵信號質(zhì)量很好的情況下,構(gòu)造線性度更好的函數(shù),調(diào)整A/D位數(shù)就可以得到更高倍細(xì)分。
[1]劉浩,馮濟(jì)琴,陳自然.基于預(yù)測理論的光柵信號精密細(xì)分方法研究[J].傳感技術(shù)學(xué)報,2015,28(4):469-473.
[2]楚興春,呂海寶,趙尚弘.大量程納米級光柵干涉儀位移測量[J].光電工程,2008,35(1):55-59.
[3]王顯軍.光電軸角編碼器細(xì)分信號誤差及精度分析[J].光學(xué)精密工程,2012,2(1):213-219.
[4]Luis Miguel,Sanchez-Brea,Tomas Morlanes.Metrological Errors in Optical Encoders[J].Measurement Science And Technology,2008,11(19):1-9.
[5]熊文卓,孔智勇,張煒.光電軸角編碼器光電信號正交性偏差的相量校正方法[J].光學(xué)精密工程,2007,11(15)1746-1748.
[6]劉世峰.基于幅值采樣的光柵莫爾條紋信號細(xì)分技術(shù)的研究[D].武漢:華中科技大學(xué),2007:41-75.
[7]喻洪麟,黃良明,王遠(yuǎn)干.莫爾條紋信號的DSP濾波及細(xì)分技術(shù)研究[J].光電工程,2004,31(9):61-65.
[8]曹永剛,趙立榮.光電編碼器硬件細(xì)分方法[J].儀器儀表學(xué)報,2011,6(32):372-374.
[9]胡泊,李彬華.低溫下EMCCD電子倍增模型[J].電子學(xué)報,2013,9(9):1826-1830.
[10]馬澤龍.正余弦編碼信號糾偏與細(xì)分技術(shù)研究[D].武漢:華中科技大學(xué),2012:1-57.
[11]羅華,高山,李翔龍.粗光柵信號全數(shù)字化處理法實現(xiàn)高倍數(shù)細(xì)分[J].光學(xué)精密工程,2007,2(15):283-288.
[12]Design of a Precise and Robust Linearized Converter for Optical Encoders Using a Ratiometric Technique[J].Measurement Sci?ence and Technology,2014,9(25):1-9.
丁旭(1990-)男,安徽舒城人,碩士研究生,主要研究方向為精密測量,dx409@ qq.com;
李彬華(1963-)男,江西南昌人,博士,教授,碩士生導(dǎo)師,本文通信作者,主要研究方向為電路與系統(tǒng)理論、探測與成像技術(shù)、天文技術(shù)方法,lbh@bao.ac.cn。
EEACC:723010.3969/j.issn.1004-1699.2016.06.010
一種基于FPGA的光柵信號細(xì)分方法*
丁旭,李彬華*,楊曉晗
(昆明理工大學(xué)信息工程與自動化學(xué)院,昆明650500)
在高精度測量中,為了提高光柵細(xì)分精度,采用了一種基于FPGA的光柵信號細(xì)分及辨向方法。首先用Matlab分析讀數(shù)頭輸出的兩路原始信號和經(jīng)過濾波且濾除直流分量的信號特點,并根據(jù)處理后的波形構(gòu)造細(xì)分算法,既驗證細(xì)分算法實現(xiàn)1024細(xì)分的可行性,也驗證硬件電路實現(xiàn)細(xì)分算法的可行性。然后在Matlab對光柵信號的算法分析基礎(chǔ)上,設(shè)計了一種基于幅值采樣細(xì)分方法的電路,實現(xiàn)對光柵信號進(jìn)行細(xì)分和辨向。細(xì)分硬件電路主要包括8細(xì)分電路和精細(xì)分電路,8細(xì)分電路主要對每個信號的一個周期進(jìn)行8細(xì)分,精細(xì)分電路主要是對每1/8周期的信號進(jìn)行細(xì)分。測試結(jié)果表明,該細(xì)分電路實現(xiàn)了光柵的1024細(xì)分,達(dá)到了高倍細(xì)分目的。
FPGA;光柵信號;測量;細(xì)分;辨向
TP391
A
1004-1699(2016)06-0846-08
2015-11-29修改日期:2016-02-14
項目來源:國家自然科學(xué)基金天文聯(lián)合項目(10978103)