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
光柵在自動(dòng)化測量、高檔數(shù)控機(jī)床及精密加工等領(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ǎn),調(diào)節(jié)方便,容易實(shí)現(xiàn)數(shù)字化測量和智能化控制,因而被廣泛運(yùn)用。但由于受到光柵間隙、衍射、光源、溫度以及制造工藝等限制,光柵輸出信號含有電平漂移、正弦和余弦信號幅度差太大、正交性等現(xiàn)象,這些因素會影響現(xiàn)有細(xì)分方法的精度及可靠性[2]。因?yàn)楝F(xiàn)有細(xì)分方法的基礎(chǔ)是光柵輸出為純凈的標(biāo)準(zhǔn)正弦波信號,所以細(xì)分前要盡可能消除上述不良因素的影響。
但是,在生產(chǎn)制造過程中,完全消除上述影響的可能性是不大的。因此,為進(jìn)行高倍細(xì)分,還需要對光柵信號進(jìn)行補(bǔ)償和修正[3]。對編碼器輸出的原始信號,在前端讀數(shù)頭及其后端的細(xì)分盒中都需要進(jìn)行修正[4-5]。根據(jù)修正之后波形的特點(diǎn),提出了一些有針對性的細(xì)分方法,其中應(yīng)用最多的是電子學(xué)細(xì)分法,每種細(xì)分方法都有優(yōu)缺點(diǎn)。劉世峰[6]使用幅值采樣的方法,其硬件結(jié)構(gòu)沒有對信號濾波處理,且采用單片機(jī)(MCU)作為主處理器,其細(xì)分速度和精度受到很大影響。喻洪麟等人[7]采用數(shù)字信號處理器(DSP)對光柵信號進(jìn)行數(shù)字濾波,采用合成函數(shù)細(xì)分與幅值相結(jié)合的方法,在幾微秒的時(shí)間內(nèi)對光柵做到了500細(xì)分,但是當(dāng)細(xì)分倍數(shù)高時(shí),其所用的存儲單元會使細(xì)分速度受到很大影響。曹永剛[8]采用純硬件對編碼器進(jìn)行細(xì)分,通過查找地址完成了對光柵信號一個(gè)周期256細(xì)分,但是其做到高倍細(xì)分受到其硬件結(jié)構(gòu)的高位模數(shù)轉(zhuǎn)換器(ADC)和大容量存儲器限制。
為了節(jié)省信號細(xì)分的軟件處理時(shí)間,提高信號處理速度,本文采用純硬件實(shí)現(xiàn)對信號的細(xì)分。文中首先分析了雷尼紹讀數(shù)頭輸出的光柵信號、濾波后的信號,據(jù)此構(gòu)造了相應(yīng)的細(xì)分算法,然后設(shè)計(jì)并制作了基于現(xiàn)場可編程門陣列(FPGA)的細(xì)分電路,實(shí)現(xiàn)了對光柵信號的1024細(xì)分和辨向計(jì)數(shù)。

圖1 采集到的實(shí)際信號
為設(shè)計(jì)有效的細(xì)分算法和實(shí)現(xiàn)電路,必須了解光柵信號的特點(diǎn)。為此,我們先對雷尼紹讀數(shù)頭SR050A輸出的光柵信號進(jìn)行采集、分析和預(yù)處理。
1.1光柵信號的采集與復(fù)現(xiàn)
雷尼紹讀數(shù)頭SR050A輸出四路相差90°的正余弦信號,用示波器觀察這些信號,發(fā)現(xiàn)其中噪聲很大。我們使用安捷倫6000系列示波器將光柵信號保存為csv格式的數(shù)據(jù)。圖1(a)為這兩個(gè)信號濾波前的波形,圖1(b)為這兩個(gè)信號的李沙育圖。差分運(yùn)算的兩個(gè)輸入信號的相位差為180°,經(jīng)差分運(yùn)算后輸出的信號直流電平和偶次諧波均減小,同時(shí)奇次諧波增加了近一倍。從圖中可以看出,差分后的信號大致是一個(gè)正余弦信號,且含有明顯的高頻噪聲,后續(xù)使用時(shí)必須濾波處理。從統(tǒng)計(jì)分析表明,這兩個(gè)正余弦信號直流偏量分別為-0.012 7和0.003 9,說明這兩個(gè)信號中含有少量直流成份。
將差分信號的數(shù)據(jù)保存為csv格式數(shù)據(jù),導(dǎo)入到安捷倫可編程函數(shù)信號發(fā)生器33250A,就可以將差分后的光柵信號,通過該信號發(fā)生器復(fù)制并輸出。這對后續(xù)細(xì)分算法的設(shè)計(jì)、濾波與細(xì)分硬件電路的設(shè)計(jì)、調(diào)試是很重要的。
1.2光柵信號正弦屬性分析
原始光柵出來的信號是一個(gè)類似正弦波的信號,經(jīng)過讀數(shù)頭輸出信號和原始信號可能有所差別。高倍細(xì)分要求信號是正余弦信號,為此,需要分析實(shí)測的光柵信號是否是正余弦信號。
由于實(shí)測光柵差分信號有明顯的噪聲,根據(jù)采集的一段信號的頻率是1.3 kHz和采樣頻率是200 kHz。由于實(shí)際運(yùn)動(dòng)不是勻速運(yùn)動(dòng),信號的最高頻率略大于1.3 kHz,為此我們設(shè)計(jì)截止頻率是4 kHz的FIR濾波器對其濾波,去除高頻噪聲,獲得如圖2中實(shí)線所示的濾波后并濾除直流分量的光柵信號。然后,用安捷倫6000系列示波器將濾波后的光柵信號的數(shù)據(jù)進(jìn)行采集、保存。再以此數(shù)據(jù)擬合出一個(gè)標(biāo)準(zhǔn)的正弦函數(shù),得到波形如圖2虛線所示。利用統(tǒng)計(jì)學(xué)回歸分析理論的曲線相關(guān)系數(shù)R2對所建立的模型進(jìn)行擬合度檢驗(yà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í)際采集的數(shù)據(jù)y的總變異由標(biāo)準(zhǔn)函數(shù)之間的比例或百分比[9]。
使用Matlab進(jìn)行數(shù)據(jù)處理,擬合度計(jì)算結(jié)果為99.81%,說明擬合度接近于1,說明實(shí)測光柵信號非常接近標(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)中實(shí)線是用這兩個(gè)光柵信號繪制的李沙育圖,為了便于比較,用虛線繪制了一個(gè)標(biāo)準(zhǔn)圓。該圖3與圖1比較,顯然高頻噪聲基本被濾除了,說明所涉及的FIR低通濾波器是有效的。
從圖3(b)圖可以看出,李沙育圖基本上是一個(gè)正圓,但與標(biāo)準(zhǔn)的圓心有點(diǎn)偏移,這是說明光柵差分信號中仍然存在微小的直流分量,使信號的直流電平偏離預(yù)定值,從而造成相位圓偏心。為此,再次計(jì)算FIR濾波之后的正弦信號和余弦信號直流分量,分別為-0.009 4和0.002 3。事實(shí)上,讀數(shù)頭的四個(gè)通道上的光電器件的暗電流各不相同,通道的處理電路不完全對稱,雖然經(jīng)過差分放大器抵消,但還有一部分剩余量,導(dǎo)致直流電平偏離預(yù)定值。
我們?yōu)V掉其直流分量得到如圖4所示,我們從圖中可以看出兩圓的圓心重合。我們知道,信號相位不正交和信號幅值不相等的李沙育圖都會成橢圓形,從圖4我們可以看出讀數(shù)頭輸出的正余弦信號基本上是嚴(yán)格正交的,他們的幅值也基本上相等。利用波形數(shù)據(jù)統(tǒng)計(jì)求平均值的方法,計(jì)算得出相位偏差為周期的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)|這幾個(gè)信號編碼。sin(ωt)和cos(ωt)主要與過零比較器相比較,|sin(ωt)|與|cos(ωt)|相互比較。比較之后得到一個(gè)周期電平如表1所示。可以看出,一個(gè)周期變成8個(gè)不同的電平信號,分別為100、101、111、 110、010、011、001、000。當(dāng)光柵正向移動(dòng)的時(shí)候,信號電平按100-101-111-110-010-011-001-000-100的順序循環(huán)變化。當(dāng)光柵反向移動(dòng)的時(shí)候,信號電平按110-111-101-100-000-001-011-010-110變化一次。這種信號電平的變化如圖6(a)所示。當(dāng)光柵每正向移動(dòng)一次及八分之一柵距加計(jì)數(shù),反向移動(dòng)一次及八分之一柵距減計(jì)數(shù),將數(shù)值記為count_8。如此就實(shí)現(xiàn)了8細(xì)分,即粗細(xì)分。
精細(xì)分主要將輸入的正余弦信號離散化(取樣)并用某種形式的線性函數(shù)進(jìn)行近似,其主要包括2個(gè)步驟: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ù)雜的算法運(yùn)算,加快細(xì)分運(yùn)算速度。構(gòu)造的線性函數(shù)也有很多種,本文采用第二種方法,這樣避免了復(fù)雜的算法運(yùn)算,加快細(xì)分運(yùn)算速度。構(gòu)造的線性函數(shù)也有很多種,本文采用不太復(fù)雜的模擬電路構(gòu)造正切函數(shù)和余切函數(shù)。如圖6(b)所示。然后對這個(gè)線性函數(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)光柵運(yùn)動(dòng)時(shí),采用8 bit AD采樣得到的時(shí)序關(guān)系如圖7所示。這樣采用8 bit AD,則總的細(xì)分?jǐn)?shù)為8×28。根據(jù)前面實(shí)測正余弦信號的特點(diǎn),取AD采樣數(shù)據(jù)的高7位數(shù)據(jù),則總的細(xì)分?jǐn)?shù)為8×27。由圖6(a)和圖7可知,總的細(xì)分?jǐn)?shù)據(jù)從上式可以看出,AD采樣的誤差不會累積。


圖7 算法時(shí)序圖
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ì)分,實(shí)際構(gòu)造的函數(shù)不是完全線性的,因此用AD采樣的數(shù)據(jù)代替橫軸均分的數(shù)據(jù)會帶來誤差。計(jì)算利用AD采樣的數(shù)據(jù)代替橫軸的時(shí)間軸細(xì)分的絕對誤差最大為0.090 5。一個(gè)八分之一柵距計(jì)數(shù)為127,即絕對誤差最大為127×0.090 5=11.493。由于鋼帶碼盤刻了很多柵距,隨著柵距數(shù)的增加,總的細(xì)分?jǐn)?shù)據(jù)也將增加,最大的相對誤差就會很小,可以忽略不計(jì)。

圖8 線性函數(shù)對比及誤差圖
為實(shí)現(xiàn)上節(jié)所述的細(xì)分算法,我們設(shè)計(jì)并制作了一個(gè)高倍細(xì)分系統(tǒng),硬件框圖如圖9所示。該實(shí)驗(yàn)系統(tǒng)的輸入信號是雷尼紹讀數(shù)頭SR050 A輸出的四路相位各差90°的正弦信號,由于這些信號含有多種誤差、噪聲,需要首先對其進(jìn)行處理;信號處理電路是差分放大與低通濾波,其輸出為一路正弦信號和一路余弦信號。在此基礎(chǔ)上,按照幅值采樣的思想,將電路劃分為兩大主要部分:粗細(xì)分及辨向電路和精細(xì)分電路。但在具體的電路設(shè)計(jì)上,與文獻(xiàn)[6]又有較大差別。具體來說,我們設(shè)計(jì)的粗細(xì)分及辨向電路由前端模擬電路和基于FPGA的后端邏輯電路構(gòu)成,精細(xì)分電路則由前端模擬電路、8 bit ADC和基于FPGA的邏輯電路構(gòu)成,只是構(gòu)造線性函數(shù)的電路采用文獻(xiàn)[6]介紹的電路。主要的特點(diǎn)是采用了FPGA進(jìn)行細(xì)分邏輯電路的設(shè)計(jì)與實(shí)現(xiàn),此外還增加了濾波電路。使用FPGA作為系統(tǒng)的數(shù)據(jù)處理模塊,可以大大加快細(xì)分?jǐn)?shù)據(jù)處理算法的運(yùn)算速度,克服單片機(jī)或DSP導(dǎo)致的運(yùn)算速度慢的缺點(diǎn),從而提高了細(xì)分倍數(shù)。濾波電路的增加是基于前一節(jié)對實(shí)測讀數(shù)頭輸出信號的分析而得出的,同時(shí)加耦合電容濾掉直流分量。

圖9 系統(tǒng)硬件結(jié)構(gòu)框圖
3.1粗細(xì)分及辨向電路模塊介紹
按光柵讀數(shù)原理,光柵每移動(dòng)一個(gè)柵距輸出一個(gè)正弦波。粗細(xì)分就是要將這一個(gè)正弦波均分為8段,即八細(xì)分。也就是說,光柵每移動(dòng)八分之一柵距,這部分電路完成一次計(jì)數(shù)。
粗細(xì)分模塊電路主要由前端模擬電路和粗細(xì)分計(jì)數(shù)邏輯電路組成。粗細(xì)分前端模擬電路由圖9中的一個(gè)絕對值比較器和兩個(gè)過零比較器組成。兩個(gè)結(jié)構(gòu)相同的絕對值電路完成正余弦信號的絕對值運(yùn)算,獲得|sin(ωt)|和|cos(ωt)|,再由比較器對這兩個(gè)絕對值信號進(jìn)行比較,輸出邏輯信號COM;兩個(gè)結(jié)構(gòu)相同的過零比較器對正余弦信號直接進(jìn)行過零比較,輸出邏輯信號SIN和COS。COM、 SIN、COS這三個(gè)信號的數(shù)值參見表1,它們作為FPGA內(nèi)部粗細(xì)分計(jì)數(shù)邏輯電路的輸入信號。
粗細(xì)分計(jì)數(shù)邏輯電路就是按照粗細(xì)分算法進(jìn)行辨向(加或減)計(jì)數(shù)。當(dāng)COM、COS、SIN這3路信號的電平按照100-000-001-101-111-011-010-110-100的順序循環(huán)變化,進(jìn)行加計(jì)數(shù)。COM、COS、SIN這3路信號的電平狀態(tài)按照011-111-101-001-000-100-110-010-011的順序循環(huán)變化,進(jìn)行減計(jì)數(shù)。仿真如圖10所示,同時(shí)我們用Quar?tus II內(nèi)置邏輯分析儀Signal Tap II捕捉粗細(xì)分信號的數(shù)據(jù)如圖11所示,其中的signal信號即COM、COS、SIN,數(shù)據(jù)在時(shí)序上嚴(yán)格根據(jù)信號的變化計(jì)數(shù)。

圖10 仿真實(shí)驗(yàn)圖

圖11 邏輯分析儀數(shù)據(jù)
3.2精細(xì)分模塊電路設(shè)計(jì)
精細(xì)分模塊電路設(shè)計(jì)主要是將每個(gè)周期的信號構(gòu)造成8個(gè)線性區(qū)間,然后逐次采樣得到每1/8區(qū)間信號的數(shù)據(jù)。精細(xì)分電路包括圖9中的兩個(gè)絕對值電路及其比較、多路選擇電路、跟隨電路以及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ù)。
以上處理實(shí)質(zhì)上是用一塊A/D芯片TLC5510,巧妙地完成了對正、余弦信號的正切函數(shù)轉(zhuǎn)換和A/D幅值采樣,避免了復(fù)雜且耗時(shí)的除法電路[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è)計(jì)了對應(yīng)的子模塊完成相應(yīng)任務(wù),主要包括A/D控制模塊、數(shù)據(jù)緩沖模塊及8細(xì)分模塊和綜合數(shù)據(jù)處理與輸出模塊,這些子模塊的數(shù)據(jù)輸入輸出和互連關(guān)系如圖13所示。

圖13 FPGA內(nèi)部邏輯電路設(shè)計(jì)
A/D控制模塊主要是連接控制A/D轉(zhuǎn)換芯片TLC5510的時(shí)鐘輸入端。數(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)行運(yùn)算得到高倍細(xì)分的數(shù)據(jù)data,計(jì)算公式參見式(4)。舉例來說,若采用碼盤的線數(shù)為c,每個(gè)周期正弦信號的細(xì)分倍數(shù)為1 024,則轉(zhuǎn)動(dòng)角度的計(jì)算公式為

Altera公司提供了一種加快開發(fā)速度的板級調(diào)試工具SignalTap II邏輯分析儀。本文主要用Sig?nalTap II進(jìn)行實(shí)時(shí)采集信號觀察。SignalTap II是Quartus II軟件中內(nèi)置的邏輯分析儀軟件,使用它可以實(shí)時(shí)地觀察FPGA內(nèi)部信號波形,方便設(shè)計(jì)者來查看設(shè)計(jì)缺陷,相當(dāng)于一種在線調(diào)試工具。
邏輯分析儀的信號端口主要觀察三個(gè)端口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)時(shí),當(dāng)粗細(xì)分?jǐn)?shù)據(jù)位于偶數(shù)區(qū)間,及圖中的coun?ter_reg_8等于6時(shí)可以看出公式(3)提出的偶數(shù)計(jì)算公式是正確的。當(dāng)粗細(xì)分?jǐn)?shù)據(jù)位于奇數(shù)區(qū)間,及圖中counter_reg_8等于7時(shí)可以看出上節(jié)提出的奇數(shù)計(jì)算公式是正確的。

圖14 邏輯分析儀捕捉最大值臨界狀態(tài)
同理從圖15中,可得精細(xì)分?jǐn)?shù)據(jù)在最小值的臨界狀態(tài)也是正確的。圖11已說明8細(xì)分?jǐn)?shù)據(jù)是正確的,圖14和圖15再次得到和圖7理論分析一樣的時(shí)序圖證明1 024細(xì)分是正確的。

圖15 邏輯分析儀捕捉最小值臨界狀態(tài)
為了得到整體數(shù)據(jù)的變化規(guī)律,將每一個(gè)柵距作為一次循環(huán),及計(jì)數(shù)到1 023時(shí)數(shù)據(jù),從頭開始。將數(shù)據(jù)轉(zhuǎn)化成模擬量,可以看到數(shù)據(jù)的變化規(guī)律如圖16所示。

圖16 數(shù)據(jù)變化規(guī)律
本文實(shí)驗(yàn)所采用的數(shù)據(jù)來源于用安捷倫6000系列示波器采集的雷尼紹讀數(shù)頭SR050 A輸出的信號。通過可編程函數(shù)信號發(fā)生器再將這些實(shí)測數(shù)據(jù)轉(zhuǎn)化成后續(xù)實(shí)驗(yàn)分析和測試的波形。這為分析、設(shè)計(jì)和調(diào)試高倍細(xì)分電路帶來了很大的便利。實(shí)驗(yàn)過程中使用的都是實(shí)際波形數(shù)據(jù)。對于1 024細(xì)分電路的實(shí)測結(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ù)位時(shí)間不是嚴(yán)格相等,因此,這種方法在目前情況下,只能做到1 024細(xì)分。
本文通過Matlab分析讀數(shù)頭輸出的兩路原始信號的特點(diǎn),對其進(jìn)行濾波和濾除直流分量,根據(jù)處理之后的波形構(gòu)造細(xì)分算法并分析其構(gòu)造的線性函數(shù)誤差。首先通過Matlab驗(yàn)證了細(xì)分算法實(shí)現(xiàn)1 024細(xì)分的可行性,也驗(yàn)證硬件電路實(shí)現(xiàn)算法的可行性,同時(shí)我們通過理論分析得到細(xì)分算法的時(shí)序圖。采用粗細(xì)
分和精細(xì)分相結(jié)合的細(xì)分方法,根據(jù)Matlab構(gòu)造的細(xì)分算法框圖,搭建細(xì)分硬件電路。硬件環(huán)境下,首先我們通過邏輯分析儀捕捉8細(xì)分計(jì)數(shù)信號,證明8細(xì)分是正確的,然后通過SignalTap II捕捉信號時(shí)序圖,最后得到和我們理論分析一樣的時(shí)序圖,證明本文實(shí)現(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é)報(bào),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é)報(bào),2011,6(32):372-374.
[9]胡泊,李彬華.低溫下EMCCD電子倍增模型[J].電子學(xué)報(bào),2013,9(9):1826-1830.
[10]馬澤龍.正余弦編碼信號糾偏與細(xì)分技術(shù)研究[D].武漢:華中科技大學(xué),2012:1-57.
[11]羅華,高山,李翔龍.粗光柵信號全數(shù)字化處理法實(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-)男,安徽舒城人,碩士研究生,主要研究方向?yàn)榫軠y量,dx409@ qq.com;

李彬華(1963-)男,江西南昌人,博士,教授,碩士生導(dǎo)師,本文通信作者,主要研究方向?yàn)殡娐放c系統(tǒng)理論、探測與成像技術(shù)、天文技術(shù)方法,lbh@bao.ac.cn。
EEACC:723010.3969/j.issn.1004-1699.2016.06.010
一種基于FPGA的光柵信號細(xì)分方法*
丁旭,李彬華*,楊曉晗
(昆明理工大學(xué)信息工程與自動(dòng)化學(xué)院,昆明650500)
在高精度測量中,為了提高光柵細(xì)分精度,采用了一種基于FPGA的光柵信號細(xì)分及辨向方法。首先用Matlab分析讀數(shù)頭輸出的兩路原始信號和經(jīng)過濾波且濾除直流分量的信號特點(diǎn),并根據(jù)處理后的波形構(gòu)造細(xì)分算法,既驗(yàn)證細(xì)分算法實(shí)現(xiàn)1024細(xì)分的可行性,也驗(yàn)證硬件電路實(shí)現(xiàn)細(xì)分算法的可行性。然后在Matlab對光柵信號的算法分析基礎(chǔ)上,設(shè)計(jì)了一種基于幅值采樣細(xì)分方法的電路,實(shí)現(xiàn)對光柵信號進(jìn)行細(xì)分和辨向。細(xì)分硬件電路主要包括8細(xì)分電路和精細(xì)分電路,8細(xì)分電路主要對每個(gè)信號的一個(gè)周期進(jìn)行8細(xì)分,精細(xì)分電路主要是對每1/8周期的信號進(jìn)行細(xì)分。測試結(jié)果表明,該細(xì)分電路實(shí)現(xiàn)了光柵的1024細(xì)分,達(dá)到了高倍細(xì)分目的。
FPGA;光柵信號;測量;細(xì)分;辨向
TP391
A
1004-1699(2016)06-0846-08
2015-11-29修改日期:2016-02-14
項(xiàng)目來源:國家自然科學(xué)基金天文聯(lián)合項(xiàng)目(10978103)