許澤宇, 周之泰, 李英姿, 陳毅夫, 張應旭
(北京航空航天大學 a. 物理科學與核能工程學院; b. 儀器科學與光電工程學院;c. 微納測控與低維物理教育部重點實驗室, 北京 100191)
遲滯現象,指一個系統下一時刻的狀態,不僅與系統當下的輸入有關,更會因其過去輸入過程不同而產生不同的輸出結果。換言之,一個系統經過某一輸入路徑運作后,即使返回與最初狀態相同的輸入值,輸出狀態也不能回到其初始。遲滯現象廣泛存在于電磁驅動式電機中,音圈電機作為電磁驅動式電機的一種,運動過程存在明顯的遲滯現象,該現象會嚴重降低系統的定位精度,造成運動軌跡的失真,也因此成為高精度控制的一個難點。音圈電機是一種直接將電能轉換為機械能的直線電機,具有行程大、響應速度快、輸出推力大、輸出加速度大等優點,理論上,音圈電機可以實現無窮小分辨率[1-2]。因此,音圈電機在大范圍高精度定位領域潛力巨大,受到了越來越廣泛的關注,成為了研究的熱點[3-10]。
作為一種電磁驅動器,音圈電機的遲滯現象是其固有性質。忽略這一現象對音圈電機進行控制,將導致整個定位系統發生震蕩,降低音圈電機的定位精度,尤其當驅動頻率較高、驅動范圍較大時,遲滯現象導致的定位誤差很大。因此,分析音圈電機的輸入-輸出特性,對理解其遲滯特性,設計合適的控制方法,從而在一定程度上消除其遲滯現象引起的定位誤差具有重要意義。
為了描述音圈電機的輸入-輸出特性,近年來,國內外科學工作者們開展了大量研究工作。埃因霍芬理工大學的 Laurentiu Encica 等[11]和上海交通大學的王曦等[12]分別測量了圓柱型音圈電機和矩型音圈電機的力-位移關系。結果表明,音圈電機在工作過程中,其線圈在不同位置上受到的安培力不同,且當輸入電流幅度較大時,音圈電機的推力和輸出位移之間存在明顯的非線性關系。
目前提出了很多模型用來描述遲滯現象,如Preisach模型[13],Prandtl-Ishlinskii模型[14]以及Duhem模型[15],這些模型可以看成是多個遲滯算子的加權疊加結果,其中,由于Prandtl-Ishlinskii模型可以解析反演而得到了廣泛的接受和研究。
為了更好地幫助學生理解遲滯現象和遲滯補償,本文建立了音圈電機一維運動遲滯補償教學平臺,使學生對遲滯特性的建模、求逆及補償有直觀的理解。本文基于搭建的音圈電機一維運動遲滯補償教學平臺,針對音圈電機的遲滯現象,采用廣義Prandtl-Ishlinskii模型的表達式和反演算法來實現音圈電機的遲滯補償。
為了消除音圈電機的遲滯現象,提高音圈電機的定位精度,從音圈電機的輸入-輸出特性入手,通過該平臺得到其輸入-輸出數據,并繪制輸入-輸出特性曲線。選取合適的模型建立音圈電機遲滯模型,準確描述音圈電機的輸入-輸出特性,通過對該模型的分析和反演,設計音圈電機的控制算法,提高其輸入-輸出線性度,從而提高音圈電機的定位精度。
教學平臺的工作原理圖如圖1所示。其中:x(t)為所求一維運動位移;u(t)為輸入電機的電壓;g[u](t)為反饋數據,即包括歷史位移等數據的綜合;h(t)為進入算法的原始數據;Δ-1[h](t)指代反演算法。由以上原理搭建教學平臺如圖2所示。

圖1 教學平臺工作原理圖

①-函數信號發生器, ②-直流穩壓電源, ③-音圈電機控制器; ④-音圈電機一維運動平臺, ⑤-計算機
在Matlab中,采用廣義Prandtl-Ishlinskii遲滯模型對音圈電機遲滯現象進行建模,采用粒子群算法對待求參數進行識別。
在廣義Prandtl-Ishlinskii遲滯模型中,廣義遲滯算子Sr包含兩個包絡函數,隨時間增加的輸入函數v對應Sr中的包絡函數γl;隨時間減小的輸入函數v對應廣義遲滯算子Sr中的包絡函數γr,由于兩個包絡函數可以為不同的表達式,因此廣義Prandtl-Ishlinskii遲滯模型可以描述非對稱和飽和的遲滯現象。圖3為廣義Prandtl-Ishlinskii遲滯模型的遲滯算子的輸入輸出關系示意圖,從圖中可以看出,包絡函數γl和γr是嚴格增函數,并且滿足γl-r≤γr+r的條件。對于任意v(t)∈Cm[0,T],廣義Prandtl-Ishlinskii遲滯模型的遲滯算子可以表示為
Sr[v](t)=z(ti+1)=
(1)
式中,r是閾值,由經典遲滯算子決定。如圖3所示,廣義遲滯算子在輸出z(t)=0時對應的輸入值v(t)為ζ1和ζ2,其中ζ1對應上升階段,ζ2對應下降階段,正是因為廣義遲滯算子存在不同的ζ1和ζ2,使得廣義Prandtl-Ishlinskii遲滯模型可以描述非對稱的遲滯回線。其中包絡函數γl和γr的表達式為
(2)
式中:a1,b1,c1,d1及a2,b2,c2,d2分別為上升和下降階段包絡函數的待確定參數,由粒子群算法辨識得到。

圖3 廣義Prandtl-Ishlinskii遲滯算子的輸入輸出關系示意圖
廣義Prandtl-Ishlinskii遲滯模型Φ通過多個遲滯算子Sr和密度函數pr(r)的加權疊加來描述相關材料或者驅動器的遲滯效應。廣義Prandtl-Ishlinskii遲滯模型的輸出具體定義為Φ[v](t),在映射關系為C[0,T]→C[0,T]的前提下,廣義Prandtl-Ishlinskii遲滯模型的表達式為
(3)
式中,η為n個廣義Prandtl-Ishlinskii遲滯算子的加權輸出結果;P(ri)和ri的表達式分別為
(4)
ρ為常數,τ和α為正數,三者均是遲滯算子模型中的待定參數。
由于廣義Prandtl-Ishlinskii遲滯算子為Lipschitz連續,并且加權密度函數為可積的,所以可以得出廣義Prandtl-Ishlinskii遲滯模型對于給定的v(t)∈C[0,T]是Lipschitz連續的。因為廣義Prandtl-Ishlinskii遲滯算子Sr是單調的,并且密度函數是可積的正值函數,故廣義Prandtl-Ishlinskii遲滯模型是單調的運算符。
廣義Prandtl-Ishlinskii遲滯模型的遲滯算子及密度函數的相關參數通常由已知的實驗數據,采用合適的參數識別方法得到,在這里給出粒子群算法[16],用于模型的參數識別,通過多個粒子向最優解不斷逼近,每次取眾多粒子中最優的粒子解,最終得到最接近實驗數據的擬合參數。粒子群算法的基本過程如下:

(5)
步驟2求每個粒子的適度值。
(6)

(7)
gbest(k+1)=min{pbesti(k+1)}
(8)
步驟3更新每個粒子的速度向量和位置向量
vi(k+1)=w(k)vi(k)+c1r1[pbesti-xi(k)]+
c2r2[gbest-xi(k)]
(9)
xi(k+1)=xi(k)+vi(k+1)
(10)
式中:r1、r2為[0, 1]上隨機數;w(k)=0.5+rand/2。
步驟4求各個粒子的適合度,見步驟2。
步驟5計算pbest和gbest,見步驟2。
步驟6若迭代次數大于itermax,終止計算保存gbest作為最優解,否則回到步驟3。
在Matlab中,對已建立的音圈電機遲滯模型進行反演計算,廣義Prandtl-Ishlinskii模型的反演式為
(11)
分別對上升、下降階段包絡函數進行反演,遲滯算子,
(12)
(13)
式中,密度函數求解如下:
(14)
選取音圈電機一個運動周期的數據,采用粒子群算法識別得到參數如下:α=5.201 0,ρ=1.016 3,τ=16.965,a1=9.321 6,b1=1.657 2,c1=1.263 8,d1=-7.645,a2=11.541,b2=1.765 4,c2=-1.419,d2=9.945 0,n=50。得到的模型輸出與實驗數據的符合程度如圖4所示。

圖4 音圈電機遲滯模型與實驗數據對比圖
相對均方根誤差的計算結果為
接著使用Matlab結合反演算法對位移數據進行處理,得到一組輸出值,將這組輸出值作為新的輸入信號輸入到音圈電機中,實驗得到的實際補償效果如圖5所示。圖5中所示輸入電壓與輸出位移曲線的線性度為2.52%。結果表明,廣義Prandtl-Ishlinskii模型能夠通過解析反演很好地校正遲滯現象。

圖5 音圈電機遲滯補償實驗結果
本文針對遲滯現象搭建了一套基于音圈電機的一維運動遲滯補償教學實驗平臺,該實驗采用廣義Prandtl-Ishlinskii模型對搭建的音圈電機平臺進行建模,并得到其反演模型。通過實驗對遲滯現象及其補償效果進行研究,使得學生對遲滯現象本身、建模及其補償過程有直觀的認識。