鄭忠杰,陳德傳
(杭州電子科技大學自動化學院,浙江杭州310018)
在精密直線伺服控制場合,一般使用光柵尺作為速度、位移檢測元件,它的測量精度高,可達幾微米[1]。為提高光柵尺的分辨率,傳統(tǒng)做法是利用數(shù)字邏輯芯片對光柵尺的輸出信號進行4倍頻和辨向[2],然后再傳送給后續(xù)處理單元。近年來也有人用現(xiàn)場可編程門陣列(Field-Programmable Gate Array,F(xiàn)PGA)來實現(xiàn) 4倍頻和辨向功能[3、4],這樣雖然精簡了元器件,但 FPGA本身成本也較高。STM32F103VE是意法半導體公司推出的面向工控領(lǐng)域的高性價比的32位微處理器,共含有8個16位定時器,其中6個定時器可工作于編碼器模式,內(nèi)置4倍頻和辨向功能,且可抑制脈沖抖動[5],模式十分適合于反饋光柵尺的實時速度和位置。為此,本文探討了基于STM32F103VE的光柵尺信號處理和速度位移檢測方法,具有實用意義。
本文以普通光柵尺為研究對象,其輸出4路相位依次相差90°的近似正弦信號。由方波的信號特征可知最多可對正交方波進行4倍頻處理,且4倍頻后的每個信號脈沖均對應(yīng)于某一實際位置。具體的信號處理過程如圖1所示,步驟為:(1)對4路正弦信號通過運算放大器TL082進行差分放大后得到2路正交正弦波;(2)2路正交正弦波經(jīng)施密特觸發(fā)器CD40106整形后得到2路正交方波;(3)2路正交方波經(jīng)光耦隔離后送入微處理器STM32F103VE,由定時器進行4倍頻和辨向,并對脈沖進行加減計數(shù),進而計算速度位移。
圖1 光柵尺信號處理過程
光柵尺輸出4路信號ui,可表示為:
式中,up為直流偏置,A為信號幅值,w為光柵柵距,x為光柵位移。由于幅值A(chǔ)很小,因此需將2對信號(ui,ui+2)經(jīng)如圖2所示電路進行差分放大,得到2路相位依次相差90°正弦信號uoi,i=0,1。在圖 2 中,R1=R3,R4=R5=2R2,C1=C2,則輸入輸出關(guān)系可表示為:
式中,α=R2/R1為放大系數(shù),與后續(xù)施密特觸發(fā)器的上下門限有關(guān),=R2C1為濾波常數(shù),由關(guān)系式1/<(1 000VmaxN)求出,其中Vmax為光柵尺最大速度,N為光柵尺每毫米線數(shù)。
將2路正弦信號uoi經(jīng)施密特觸發(fā)器整形后可得2路相位依次相差90°的方波信號A、B,其電路如圖3所示,波形如圖4所示。圖3中,R6=R7,C3=C4,主要是為了消除運放的噪聲,由關(guān)系式R6C3<1/(20×1 000VmaxN)求出。圖4中,VT+和VT-分別為施密特觸發(fā)器CD40106的上下門限。
圖2 帶直流偏置的減法電路
圖3 整形濾波電路
A、B信號經(jīng)光耦隔離后便可送入微處理器。STM32F103VE的定時器在編碼器模式下計數(shù)器的動作如圖5所示。計數(shù)器對A、B信號的上升沿和下降沿同時進行計數(shù)從而實現(xiàn)4倍頻效果,根據(jù)A、B信號的超前滯后關(guān)系決定向上計數(shù)還是向下計數(shù),此外,圖5也顯示了輸入信號A、B的抖動是如何被抑制的。
圖4 uoi與A、B信號時序圖
圖5 編碼器模式下的計數(shù)器動作
為了在光柵尺低速和高速運動時使速度都具有較高的檢測精度,采用M/T法測速[6],其示意圖如圖6所示。圖6中,Tc是采樣時鐘,其值固定不變;T是檢測周期,由采樣脈沖Tc邊沿之后4倍頻信號的第一個脈沖邊沿決定,其值是可變的。假設(shè)光柵尺移動速度為V,檢測周期T內(nèi)光柵尺的位移量為d,則:
在檢測周期T內(nèi)檢測到的4倍頻脈沖數(shù)為M1,則位移d又可表示為:
若時鐘脈沖頻率為f0,在檢測周期T內(nèi)時鐘脈沖計數(shù)值為M2,則檢測周期T為:
圖6 M/T法測速示意圖
綜合式3 5便可求出移動速度為:
對4倍頻脈沖數(shù)一直累加計數(shù)得到M3,則光柵尺的位移為:
軟件設(shè)計方面需用到4個定時器,其中定時器1 3用于M/T法測速,定時器4用于位移檢測。定時器1工作于定時模式,每隔Tc時間產(chǎn)生一個中斷;定時器2工作于編碼器模式,用于對A、B相信號4倍頻和辨向,及對脈沖計數(shù)以獲得M1;定時器3工作于計時模式,用于對微處理器時鐘脈沖計數(shù)以獲得M2;定時器4工作于計數(shù)模式,對4倍頻信號累加以獲得M1Σ。定時器1 4的中斷程序如圖7 10所示。
圖7 定時器1中斷程序
圖8 定時器2中斷程序
圖9 定時器3中斷程序
圖10 定時器4中斷程序
圖8中,M1、M2的計算公式分別為:
圖9中,M3的計算公式為:
式中,T4_CNT為定時器4的當前計數(shù)值。
經(jīng)差分放大后的正弦信號和整形后所得的方波信號如圖11所示,從圖11中可以看出,經(jīng)施密特觸發(fā)器整形后所得的方波邊沿十分陡峭。光柵尺輸出正弦信號的實際頻率與經(jīng)ST-M32F103VE內(nèi)置4倍頻后的所測頻率如表1所示,從表1中可知,在中低頻時所測頻率值幾乎等于實際值,在高頻時也僅有微小誤差,滿足伺服系統(tǒng)的精度要求。
圖11 正弦信號整形前后波形圖
表1 實際頻率與測量頻率
本文所提出的基于STM32F103VE的光柵尺信號處理和速度位移檢測方法,及其軟硬件實現(xiàn)方案,具有容易實現(xiàn),成本低、可靠性高的特點,在直線伺服控制場合有實用價值。
[1]陳慶樟.光柵位移傳感器在位置伺服系統(tǒng)中的應(yīng)用及誤差分析[J].機床與液壓,2008,36(8):216-217.
[2]劉保錄.計量光柵尺四倍頻辨向電路[J].電氣自動化,1995,(6):56-57.
[3]韋雄波,艾武,閆光亞,等.基于FPGA的光柵尺位置速度反饋模塊設(shè)計[J].湖北工業(yè)大學學報,2010,25(1):72-74.
[4]王成元,常國祥,夏加寬.基于FPGA的光柵信號智能接口模塊[J].電氣傳動,2007,37(4):56-61.
[5]劉軍.例說STM32[M].北京:北京航空航天大學出版社,2011:122-128.
[6]阮毅,陳伯時.電力拖動自動控制系統(tǒng)-運動控制系統(tǒng)[M].北京:機械工業(yè)出版社,2004:41-44.