趙 靜,王婉婉,周 楊,董 菲
(安徽大學(xué) 電氣工程與自動化學(xué)院,安徽 合肥 230601)
直線電機由于其加速度大、定位精度高、結(jié)構(gòu)簡單等優(yōu)勢,是高檔數(shù)控機床的核心驅(qū)動部件,在高速精密加工、制造行業(yè)中得到了廣泛的應(yīng)用[1-3]。對直線電機伺服系統(tǒng)而言,電機動子速度是重要的控制信息,其速度測量精度對于改善系統(tǒng)速度環(huán)的動態(tài)特性至關(guān)重要[4-6]。因此,研究一種簡單、精確的直線電機測速方法具有重要的實用價值。
系統(tǒng)速度反饋根據(jù)位移信息和信號采樣頻率獲得。目前,常見的直線電機動子速度測量方法采用光電編碼器、激光干涉儀等硬件傳感器。其中,直線光電編碼器測量精度較高,但環(huán)境適應(yīng)能力差[7]。而光柵應(yīng)用環(huán)境要求比較嚴(yán)格,不能承受較大振動,并且高精度光柵價格昂貴,維護困難,不適合長行程的直線電機[8]。雖然激光干涉儀測量精度較高,但其抗震性能差,并且成本較高,因此在機械加工現(xiàn)場較少使用[9]。針對特定場合下的直線電機測速,文獻[10]采用交叉感應(yīng)線纜對大型直線電機磁懸浮列車進行測速定位,精度較高,但僅適用于文獻研究場景,限制因素較多。
數(shù)字圖像測速技術(shù)是近年來發(fā)展起來的自主測速方法,具有非接觸性、高精度和低成本等優(yōu)點,廣泛應(yīng)用于工業(yè)測量領(lǐng)域[11-12]。將它引入到永磁同步直線電機動子速度測量上,為動子速度測量提供了新思路。數(shù)字圖像測速方法主要分為光流法和序列圖像測量[13-14]。文獻[15]采用SURF提取特征點,通過改進的光流法對特征點進行檢測和跟蹤。然而光流法要求相鄰幀的亮度恒定,計算比較耗時,不具備很好的實時價值。相位相關(guān)比空域互相關(guān)法有更高的精度和可靠性[16],文獻[17]利用超聲拍攝系統(tǒng)采集血管造影圖像序列,通過對連續(xù)兩幅圖進行圖像互相關(guān)計算位移矢量,進而得到血流速度;文獻[18]提出了一種基于奇異值分解(Singular Value Decomposition,SVD)的相位相關(guān)矩陣的運動估計方法。為了降低圖像信息冗余,文獻[19]將二維圖像單行采樣,利用改進的相位相關(guān)算法(Extended Phase Correlation Algorithm,EPCA),速度和測量精度均得到提高。但以上方法僅能在小位移內(nèi)達到較高的精度,時效性仍有待提高。
上述測速方法均存在不足,因此本文以永磁同步直線電機為研究對象,設(shè)計了基于線掃描相機的電機動子測速系統(tǒng),提出了一種基于連續(xù)一維信號和反比例權(quán)重峰值擬合的動子測速方法。首先,計算位移前后信號的歸一化互功率譜,使用傅里葉反變換得到狄拉克脈沖函數(shù)。然后,構(gòu)造反比例函數(shù)代替狄拉克函數(shù),使用峰值點和兩個鄰域點加權(quán)估算出相關(guān)幀的亞像素位移值。最后,根據(jù)設(shè)定時間間隔和標(biāo)定系數(shù),得到動子的平均速度,進而連續(xù)變換相關(guān)信號,得到直線電機的連續(xù)速度。
本文設(shè)計的直線電機動子測速系統(tǒng)如圖1所示。
系統(tǒng)主要利用線掃描相機獲取底座上的序列條紋信號。在兩幀有重疊區(qū)域的位移前后信號f1(x)和f2(x)中,f2(x)可以表示為:

通過研究的亞像素測量算法,估計出兩幀之間的位移矢量Δx,在設(shè)定時間間隔Δt下,計算平均速度,通過連續(xù)速度關(guān)聯(lián)形成直線電機的速度狀態(tài)監(jiān)測,動子的瞬時速度為:式中:x為圖像的灰度像素,v表示瞬時速度。由于設(shè)定的時間間隔極短,動子的平均速度近似等于瞬時速度。

直線電機在做一維線性運動時動子往往會產(chǎn)生縱向抖動。如果是普通的二維灰度圖像,相機掃描目標(biāo)圖像時會產(chǎn)生掃描偏差,因此需要將目標(biāo)圖像的縱向灰度變化量置零,避免縱向振動的干擾。同時為了使圖像橫向灰度信息更豐富,本文構(gòu)造出一種鋸齒波條紋目標(biāo)圖像,如圖2所示。

圖2 鋸齒波條紋目標(biāo)圖像Fig.2 Sawtooth stripe target image
沿著動子的水平運動方向,在底座上固定鋸齒波條紋目標(biāo)圖像。在電機運動過程中,動子側(cè)面的線掃描相機實時掃描目標(biāo)圖像獲取一維信號,如圖3所示。計算出動子的實際位移,在已知兩幀時間間隔下,即可計算出平均速度。對于直線電機動子運動平臺,由于獲取的條紋信號是連續(xù)并且能穩(wěn)定地進行相位相關(guān),因此可以得到連續(xù)的動子對地速度。

圖3 線掃描相機獲取的信號Fig.3 Signals acquired by line scanning camera
直線電機動子在一維線性運動過程中,固定在其側(cè)面的線掃描相機在時刻t獲取到的鋸齒波信號為f(x),在時刻t+Δt獲取到的鋸齒波信號為g(x)。根據(jù)式(1)可知,f(x)和g(x)滿足:

式中d為位移前后幀的像素位移矢量。
首先f(x)和g(x)計算相位相關(guān),引入快速傅里葉變換(Fast Fourier Transform,F(xiàn)FT),f(x)和g(x)的傅里葉變換關(guān)系為:

其中:G(U)和F(U)代表g(x)和f(x)的傅里葉變換,U是頻率域坐標(biāo),i是復(fù)數(shù),M是圖像尺寸。為了得到相關(guān)幀的相位差,計算f(x)和g(x)的歸一化互功率譜,并對歸一化互功率譜做傅里葉反變換,得到:

式中:F-1表示傅里葉逆變換,q(x)看作狄拉克函數(shù)。由于信號只存在一維x方向的運動向量,因此,理想情況下一維狄拉克函數(shù)在x方向上定義為:

式中:δ表示變量為x,δx的分段函數(shù),d x和δx表示x方向的運動向量。設(shè)定鋸齒波條紋相關(guān)幀位移d=15 pixel,即動子向左平移,拍攝的信號向右平移,計算的狄拉克函數(shù)如圖4所示。
從圖4可以看出,理想狀態(tài)下整像素平移后的脈沖函數(shù)的峰值為1,且脈沖函數(shù)出現(xiàn)在三維圖的一個平面上,一維互相關(guān)峰值的橫坐標(biāo)是15 pixel,與設(shè)定位移d大小吻合。函數(shù)δ的峰值反映了相鄰信號的相關(guān)性,峰值越接近1,檢測精度越高。而當(dāng)位移是亞像素時,脈沖函數(shù)峰值較低且出現(xiàn)較多的次峰。

圖4 相位相關(guān)峰值Fig.4 Phase correlation peak
本文引入可以用來計算圖像平移參數(shù)的反比例函數(shù)來替代狄拉克函數(shù):

當(dāng)a→0時,得:

當(dāng)a→0時,對式(8)進行積分,得:

由式(9)可知,所構(gòu)造的反比例函數(shù)滿足一維狄拉克函數(shù)平移性質(zhì),得到:

由式(10)可知,脈沖峰值位置只會出現(xiàn)在圖像的邊界上,即一維x方向上。整像素位移僅需一個峰值點就能確定,但亞像素位移會使脈沖函數(shù)出現(xiàn)多個次峰。在峰值點的相位差信號的能量值最高,若采用峰值點以外的鄰域點擬合,會增加計算耗時,并且擬合精度會受到旁瓣噪聲的干擾[20]。
為了確保精度和實時性,本文根據(jù)一維峰值點x=argmaxp(x)及其兩個鄰域點作為擬合陣列,得到:

其中:(x2,P(x2))是x方向上的峰值點,(x1,P(x1))和(x3,P(x3))分別是左右鄰域點。緊接著P(x1)除以P(x2),P(x2)除以P(x3),得到:

令a=0,得到:


根據(jù)式(13),考慮存在以下3種假設(shè)條件:
(1)位移矢量在狄拉克函數(shù)的左邊緣,x1不存在。采用點x2,x3及其峰值P(x2),P(x3)擬合亞像素級峰值點,得到:
式(14)有兩個解,選擇x2~x3間的值作為最佳峰值點;
(2)位移矢量在狄拉克函數(shù)的右邊緣,x3不存在,采用點x1和x2擬合亞像素級峰值點,得到:

同理選擇x1~x2間的值為最佳峰值位置;
(3)位移矢量在狄拉克函數(shù)中心附近,則峰值點在x2的兩側(cè)。狄拉克函數(shù)具有對稱性,距峰值位置越近,函數(shù)值越大。因此按照峰值大小設(shè)定兩個準(zhǔn)峰值位置不同的權(quán)重,來選擇最終的峰值位置。考慮前兩種情況,構(gòu)建基于權(quán)重的擬合公式[21]如下:

圖5 經(jīng)驗值對測量精度的影響Fig.5 Influence of empirical value on measurement accuracy
式中w1和w2是權(quán)重函數(shù):


式中k是一個常數(shù)。
k的選取影響著權(quán)重值w1和w2,進而影響算法的測量精度。本文通過改變k值進行仿真實驗,計算測量位移誤差,如圖5所示。從圖5可以看出,當(dāng)經(jīng)驗值k取12時,此時算法的最大測量誤差值為0.055 pixel,精度最高,因此仿真實驗k值均取12。
由于線掃描相機的行頻很高,設(shè)定拍攝幀頻為1 000 frame/s,則圖像信號的偏移量始終處于有限范圍內(nèi),f(x)和g(x)的互相關(guān)函數(shù)主峰位于中心附近。因此,利用本文提出的算法進行處理時,僅計算相關(guān)峰的鄰域有限點,即可計算出像素位移矢量。事先標(biāo)定好相機像素的物理尺度s。在相鄰間隔時間內(nèi)可近似認為直線電機動子是保持相對地面高度不變的勻速直線運動,那么動子的平均速度為:

速度方向由像素位移矢量方向決定。
為驗證本文方法的有效性,在Matlab2017a中進行仿真實驗,電腦配置為:inter(R)i5-8250U,3.40 GHz主頻,8 GB RAM。
由式(18)可知,速度值相當(dāng)于位移矢量乘以常量,因此對位移矢量的仿真測量就相當(dāng)于對速度的測量,本文的測速方法對位移矢量的測量表現(xiàn)能夠體現(xiàn)出對速度的測量性能。將EPCA[19],SURF[15],MPF[20],SVD[18]與所研究的權(quán)重相位相關(guān)峰值擬合(Weighted Phase Correlation Peak Fitting,WPCPF)方法進行仿真實驗對比,分別從運行時間、測量范圍以及精度魯棒性等方面進行驗證。
為了驗證本文算法的快速性,分別記錄上述5種算法每一次運行的耗時,進而繪制如圖6所示的算法耗時對比曲線。從圖6可以看出,WPCPF算法的平均耗時在0.019 8 ms左右,其計算速度遠遠高于其他4種算法,完全滿足線掃描相機的幀頻掃描要求。SVD和EPCA的平均耗時分別是0.018 s和5.79 ms。本文算法的效率比EPCA提高了至少100倍,在算法耗時上能夠滿足直線電機動子位置檢測的實時性要求。

圖6 耗時比較曲線Fig.6 Time-consumption comparison curves
為了驗證WPCPF算法的位移測量范圍,與EPCA,SURF,MPF和SVD算法的測量范圍進行比較。以一定步長1.04 pixel對目標(biāo)圖像進行位移設(shè)定,分別采用上述5種算法進行位移計算,測量結(jié)果如圖7所示。

圖7 長距離下不同算法的測量精度Fig.7 Measurement accuracy of different algorithms in long measurement range
從圖7可以看出,在動子位移范圍較大的情況下,EPCA,SURF,MPF,SVD的測量誤差達到了400 pixel,即在較大的位移范圍內(nèi)算法無法進行測量。其中,SVD,SURF和EPCA在位移接近200 pixel時誤差發(fā)生突變,無法實現(xiàn)亞像素測量。
而WPCPF算法始終保持亞像素測量,平均測量精度為-0.007 pixel,測量誤差為-0.05~0.03 pixel。因此與其他算法相比,本文算法可以實現(xiàn)更遠距離的測量,并且測量精度更高,滿足直線電機在速度較高情況下相關(guān)幀偏移較大的測量要求。
當(dāng)位移值設(shè)定在一個較小的范圍內(nèi),驗證不同算法的測量精度,采用上述算法進行位移仿真測量對比,計算結(jié)果如圖8所示。

圖8 不同算法的測量精度Fig.8 Measurement accuracy of different algorithms
由圖8可知,EPCA的測量范圍為-0.068 74~0.023 35 pixel,其 平 均 測 量 誤 差 為0.007 1 pixel;SURF算法的誤差為-0.027 14~0.017 89 pixel;MPF算法的測量最大誤差為0.206 6 pixel;SVD進行亞像素位移估計時,其測量誤差的波動為-0.031 62~0.032 47 pixel。而本文算法在測量相關(guān)幀較小的偏移,其測量誤差為-0.034 32~0.055 1 pixel,測 量 精 度 達 到0.02 pixel。由此表明,本文算法具有較高的測量精度以及良好的測量穩(wěn)定性。
為了驗證本文測量算法的魯棒性,對鋸齒波條紋目標(biāo)圖像添加不同種類噪聲或不同強度的高斯噪聲,使用WPCPF算法進行位移計算,測量結(jié)果如圖9所示。
由圖9可知,隨著高斯噪聲強度的不斷增加,測量結(jié)果并沒有發(fā)生明顯的變化,本文算法仍然保持較高的測量精度。當(dāng)高斯噪聲方差為0.08時,測量最大誤差在0.043 96 pixel,測量誤差波動較小且波動曲線并未發(fā)生突變。在椒鹽噪聲和散斑噪聲下測量的平均誤差為-0.011 pixel和-0.022 1 pixel。因此,WPCPF的測量結(jié)果穩(wěn)定,對噪聲具有很強的抗干擾性,在進行真實噪聲的模擬環(huán)境下具有較強的魯棒性。

圖9 不同噪聲下的位移檢測結(jié)果Fig.9 Displacementdetectionresultsunder differentnoises
綜上所述,本文研究的權(quán)重相位相關(guān)峰值擬合算法在實時性、測量范圍、精度和魯棒性等方面優(yōu)于傳統(tǒng)方法。
為了驗證本文方法的可行性,搭建如圖10所示的實驗平臺。為方便實驗,固定優(yōu)選出的鋸齒波條紋圖像,使之與線掃描相機的鏡頭相垂直。PMSLM的最大運行速度為1 m/s,有效行程為380 mm,線掃描相機的分辨率為1×1 024 pixel,幀頻為103frame/s。補光燈用以改變現(xiàn)場光強,照度計測量環(huán)境光強。當(dāng)直線電機運動時,線掃描相機實時獲取含有運動信息的一維信號序列,然后將一維信號送到計算機使用WPCPF算法進行處理,并根據(jù)像素標(biāo)定系數(shù)得到動子的速度。

圖10 速度檢測實驗平臺Fig.10 Experimental platform for speed detection
實驗前,需要對動子的實際物理距離與像素位移值進行標(biāo)定,采用棋盤標(biāo)靶法進行系統(tǒng)標(biāo)定,本 實 驗 的 標(biāo) 定 系 數(shù) 是0.035 6 mm/pixel[22]。則動子的速度進一步表示為:

式中Δt是固定間隔時間,相關(guān)幀的物理位移距離為0.035 6×δx。因此,動子速度v的計算誤差主要來源于相關(guān)幀的位移計算誤差。
為進一步驗證WPCPF方法的正確性,設(shè)計兩組實驗:(1)動態(tài)位置精度跟蹤實驗;(2)動子速度的跟蹤檢測實驗。
5.2.1 位置跟蹤性能
根據(jù)圖10的速度檢測實驗平臺,進行位置跟蹤實驗。為了驗證WPCPF方法的跟蹤定位精度,當(dāng)給直線電機預(yù)設(shè)一些分辨率為1μm的位置脈沖時,條紋圖像序列被同步捕獲處理。然后,計算實際位置并與設(shè)定的運動值進行比較。預(yù)設(shè)軌跡如圖11(a)所示,并測量WPCPF方法的誤差,結(jié)果如圖11(b)所示。
通過比較圖11(a)中的設(shè)置運動軌跡,所提出的方法可以在誤差范圍內(nèi)較準(zhǔn)確地測量PMSLM的動子運動位置。從圖11(b)可以看出,該方法的測量誤差波動較小,3種預(yù)設(shè)的運動狀態(tài)的平均絕對誤差分別為0.026 87,0.022 5和0.021 4 mm。它的跟蹤性能方法進一步得到驗證。因此,該方法可以高精度跟蹤永磁同步直線動子的運動位置,并且提供了一種可以用于檢測直線運動目標(biāo)運動軌跡的方案。
5.2.2 測速實驗
為了驗證WPCPF方法的測速精度,在實驗平臺上進行不同速度下的速度檢測實驗。保持現(xiàn)場光強不變,通過運動控制模塊改變電機速度,分別在0.3,0.5和1.0 m/s下采集運動信號,采用本文方法計算相鄰信號間的速度,實驗結(jié)果與分析如圖12所示。在電機運動過程中,采用WPCPF算法對實時采集的一維運動信號進行處理,對動子速度進行計算,運動速度測量結(jié)果如圖12(a)所示。將預(yù)設(shè)速度和測速結(jié)果進行比較,得到的測速誤差曲線如圖12(b)所示。

圖11 WPCPF跟蹤精度驗證Fig.11 WPCPF tracking precision verification

圖12 速度測量精度驗證Fig.12 Speed measurement precision verification
從圖12可以看出,當(dāng)電機動子分別以不同速度穩(wěn)定運行時,本文方法的測速精度保持在一個穩(wěn)定的測量范圍。3種速度下的測速誤差分別為-0.019~0.025 mm/s,-0.024~0.028 mm/s,-0.025~0.027 mm/s。即使電機以最大速度1.0 m/s運行時,該測量方法也能保持穩(wěn)定的測量結(jié)果。
綜上所述,在整個運動過程中測速誤差不大于0.03 mm/s,測速精度良好。從圖12(b)的測速誤差曲線可以看出,動子在3種不同速度下的速度誤差較小,能夠滿足較高的測速精度要求。
本文分析了光流法、互相關(guān)法和頻域擬合等粒子圖像測速方法的優(yōu)點和限制,在此基礎(chǔ)上提出了永磁同步直線電機動子圖像測速系統(tǒng)的設(shè)計,采用線掃描相機進行拍攝,構(gòu)造出鋸齒波條紋圖像作為目標(biāo)圖像,研究了基于反比例權(quán)重峰值擬合的亞像素測量方法,應(yīng)用到直線電機動子速度測量上,提高了測量的實時性,平均耗時約為0.02 ms。文中搭建了電機動子圖像測速實驗平臺,實驗結(jié)果表明,動子速度的測量精度達到0.03 mm/s,驗證了本文方法的可行性。