黃文文,宋璐,史敬灼
(河南科技大學(xué) 電氣工程學(xué)院,河南 洛陽(yáng) 471023)
適當(dāng)形式的超聲波電機(jī)模型,是電機(jī)系統(tǒng)分析與設(shè)計(jì)的重要基礎(chǔ),也是超聲波電機(jī)運(yùn)動(dòng)控制策略設(shè)計(jì)的必要前提。近年來(lái),為提高超聲波電機(jī)應(yīng)用系統(tǒng)的控制性能,針對(duì)超聲波電機(jī)運(yùn)動(dòng)控制領(lǐng)域的需求,基于電機(jī)系統(tǒng)實(shí)驗(yàn)數(shù)據(jù)的辨識(shí)建模方法日益受到重視。
考慮到超聲波電機(jī)本體固有的非線性特征,采用適當(dāng)形式的非線性辨識(shí)模型,有可能更好地表述超聲波電機(jī)的運(yùn)行特征。文獻(xiàn)[1-6]將非線性Hammerstein模型形式引入超聲波電機(jī)建模領(lǐng)域,分別建立了用于轉(zhuǎn)速控制的超聲波電機(jī)Hammerstein模型。N. Bigdeli[1]和X. L. Zhang[2]采用Hammerstein模型來(lái)描述超聲波電機(jī)驅(qū)動(dòng)電壓幅值與轉(zhuǎn)速之間的非線性特征。N. Bigdeli對(duì)超聲波電機(jī)的穩(wěn)態(tài)機(jī)械特性數(shù)據(jù)進(jìn)行多項(xiàng)式擬合,得到模型中的靜態(tài)非線性環(huán)節(jié)。由于所用機(jī)械特性數(shù)據(jù)并不能完整表達(dá)電機(jī)的非線性特征,文獻(xiàn)[1]給出的仿真結(jié)果表明所建模型精度不高。與文獻(xiàn)[1]類似,文獻(xiàn)[3]給出的Hammerstein模型以電機(jī)運(yùn)行的穩(wěn)態(tài)數(shù)據(jù)為主要的建模依據(jù),有較大局限性,沒(méi)有合理表征電機(jī)的動(dòng)態(tài)過(guò)程。文獻(xiàn)[4]分別采用徑向基函數(shù)神經(jīng)網(wǎng)絡(luò)、BP神經(jīng)網(wǎng)絡(luò)來(lái)擬合Hammerstein模型的非線性部分,導(dǎo)致模型復(fù)雜化。對(duì)于Hammerstein模型中的動(dòng)態(tài)線性環(huán)節(jié),文獻(xiàn)[1-4]都未經(jīng)任何建模過(guò)程,直接將其設(shè)定為一階慣性環(huán)節(jié),這顯然不足以表述超聲波電機(jī)的動(dòng)態(tài)特性。例如,一階慣性環(huán)節(jié)的階躍響應(yīng)不存在超調(diào);但實(shí)際上,超聲波電機(jī)的階躍響應(yīng)過(guò)程可能出現(xiàn)明顯的超調(diào)[7]。同時(shí),文獻(xiàn)[1-4]都將模型的線性部分、非線性部分割裂開(kāi)來(lái),各自獨(dú)立地建模,導(dǎo)致整體模型誤差較大。文獻(xiàn)[5-6]采用不同的優(yōu)化算法,通過(guò)模型線性及非線性環(huán)節(jié)的整體尋優(yōu),分別建立了用于轉(zhuǎn)速、位置控制的超聲波電機(jī)Hammerstein模型。文獻(xiàn)[1-3,5-6]所建模型的靜態(tài)非線性環(huán)節(jié)均采用傳統(tǒng)Hammerstein模型的多項(xiàng)式形式;受限于多項(xiàng)式的項(xiàng)數(shù)及具體建模方法,可能影響所建模型與超聲波電機(jī)非線性特征的匹配程度。文獻(xiàn)[1-6]所做工作表明,Hammerstein非線性模型適合于超聲波電機(jī)系統(tǒng)建模,但具體的模型形式及建模方法,仍需深入研究。
本文以電機(jī)驅(qū)動(dòng)電壓的頻率為輸入變量、轉(zhuǎn)速為輸出變量,基于實(shí)測(cè)階躍響應(yīng)數(shù)據(jù),采用差分進(jìn)化算法建立超聲波電機(jī)Hammerstein非線性模型。模型非線性靜態(tài)環(huán)節(jié)采用Gauss函數(shù),與超聲波電機(jī)非線性特征更好匹配。模型計(jì)算數(shù)據(jù)與實(shí)測(cè)響應(yīng)數(shù)據(jù)的對(duì)比表明,建模方法有效,模型精度較高。
Hammerstein模型是用來(lái)描述非線性系統(tǒng)的一種數(shù)學(xué)模型,由一個(gè)非線性靜態(tài)環(huán)節(jié)fnl和一個(gè)線性動(dòng)態(tài)環(huán)節(jié)G(z-1)串聯(lián)構(gòu)成,單輸入單輸出Hammerstein模型的基本結(jié)構(gòu)如圖1所示。本文所建超聲波電機(jī)Hammerstein模型的輸入變量u(k)為電機(jī)驅(qū)動(dòng)電壓的頻率,輸出變量y(k)為電機(jī)轉(zhuǎn)速,圖中x(k)為中間變量。
圖1 超聲波電機(jī)Hammerstein模型結(jié)構(gòu)框圖
Hammerstein模型的非線性靜態(tài)環(huán)節(jié)通常用多項(xiàng)式形式來(lái)描述
x(k)=fnl(u(k))=r0+r1u(k)+…+riui(k)…+rpup(k)
(1)
式中,i=0,1,2,…,p。p為多項(xiàng)式的階次,由實(shí)際系統(tǒng)特性決定;u(k)和x(k)分別為非線性環(huán)節(jié)的輸入和輸出變量。
Hammerstein模型的線性動(dòng)態(tài)環(huán)節(jié)可用差分傳遞函數(shù)的形式來(lái)描述:
(2)
A(z-1)=1+a1z-1+…+anaz-na
(3)
B(z-1)=b0+b1z-1+…+bnbz-nb
(4)
式中,d為系統(tǒng)延遲時(shí)間系數(shù),對(duì)于超聲波電機(jī),d取1;a1,a2,…,ana、b0,b1,…,bnb為模型的待定系數(shù),由辨識(shí)確定;na和nb分別為線性傳遞函數(shù)中A(z-1)和B(z-1)的階次,取決于實(shí)際系統(tǒng)特性。
辨識(shí)建模的過(guò)程,是以能夠表征超聲波電機(jī)運(yùn)行特性的實(shí)驗(yàn)數(shù)據(jù)為基礎(chǔ),針對(duì)結(jié)構(gòu)形式已知、參數(shù)未知的待辨識(shí)模型,采用適當(dāng)?shù)膬?yōu)化算法,通過(guò)優(yōu)化計(jì)算獲得一組最優(yōu)的模型參數(shù),使得模型的輸入輸出關(guān)系與實(shí)驗(yàn)數(shù)據(jù)最為接近。其中,優(yōu)化算法是辨識(shí)建模的核心。優(yōu)化計(jì)算是否準(zhǔn)確、有效,直接決定了建模效果。傳統(tǒng)的辨識(shí)方法,大多使用最小二乘類優(yōu)化算法,便于在線遞推使用,算法穩(wěn)定性好,但快速解決復(fù)雜優(yōu)化問(wèn)題的能力較差。因而,在使用已知的批量數(shù)據(jù)并且離線進(jìn)行的辨識(shí)建模過(guò)程中,可以考慮采用性能更好的現(xiàn)代優(yōu)化算法。
圖2 差分進(jìn)化算法程序流程圖
差分進(jìn)化算法是一種可以更好解決復(fù)雜模型辨識(shí)問(wèn)題的優(yōu)化算法。差分進(jìn)化算法利用種群中的個(gè)體差異,引入隨機(jī)因素,通過(guò)個(gè)體間的合作與競(jìng)爭(zhēng),找出使適應(yīng)度函數(shù)取最小值的最優(yōu)解。圖2給出了差分進(jìn)化算法的流程圖。
差分進(jìn)化算法的計(jì)算過(guò)程,如圖2所示,主要包括變異、交叉和選擇3種操作。在進(jìn)行這些操作前,首先需要進(jìn)行種群初始化。設(shè)種群包含Np個(gè)個(gè)體,可以在設(shè)定的可行解空間內(nèi)隨機(jī)產(chǎn)生Np個(gè)D維向量來(lái)構(gòu)成初始種群[8]。這里,D為待辨識(shí)的模型參數(shù)個(gè)數(shù)。種群規(guī)模Np較大時(shí),種群多樣性較強(qiáng),有利于保持較大的搜索范圍,但會(huì)降低算法的收斂速度。一般,可取Np為待辨識(shí)參數(shù)個(gè)數(shù)的5~10倍。
變異操作利用種群父代個(gè)體之間的差異產(chǎn)生差分矢量,并采用縮放因子對(duì)差分矢量進(jìn)行加權(quán),隨后與另一不同的父代個(gè)體相加,得到一個(gè)變異的子代個(gè)體。變異因子F,決定了差分矢量對(duì)另一父代個(gè)體的擾動(dòng)程度。F較大時(shí),隨機(jī)擾動(dòng)量較大,搜索范圍較大,收斂速度減慢[9]。一般,F(xiàn)在0.5~1之間取值。
交叉操作將變異前后的兩個(gè)個(gè)體Xi,G和Vi,G+1根據(jù)一定概率進(jìn)行交叉重組,得到新個(gè)體Ui,G+1。為了保證進(jìn)化,新個(gè)體中至少應(yīng)包含變異個(gè)體Vi,G+1的一維分量信息。交叉概率因子CR較大時(shí),在新個(gè)體中,來(lái)自變異個(gè)體的分量較多,個(gè)體進(jìn)化程度較高,算法收斂速度較快,但易陷入局部搜索;反之,CR較小時(shí),個(gè)體進(jìn)化程度較低,有利于全局搜索。一般,CR在0~1之間取值。
選擇操作基于優(yōu)勝劣汰的原則,比較新個(gè)體Ui,G+1和原個(gè)體Xi,G的適應(yīng)度函數(shù)值。適應(yīng)度函數(shù)值較小的個(gè)體將會(huì)被保存下來(lái),進(jìn)入下一次迭代,而適應(yīng)度函數(shù)值較大的個(gè)體會(huì)被淘汰。
采用差分進(jìn)化算法進(jìn)行超聲波電機(jī)Hammerstein模型參數(shù)辨識(shí),用適應(yīng)度函數(shù)值來(lái)衡量模型計(jì)算結(jié)果與實(shí)測(cè)數(shù)據(jù)間的誤差大小。通過(guò)優(yōu)化計(jì)算,得到一組使適應(yīng)度函數(shù)取最小值的模型參數(shù),就完成了建模過(guò)程。本文采用如下均方誤差表達(dá)式作為適應(yīng)度函數(shù)
(5)
式中,m為建模數(shù)據(jù)的組數(shù);h為每組建模數(shù)據(jù)的數(shù)據(jù)點(diǎn)數(shù);y為模型計(jì)算值;ye為實(shí)測(cè)值。
用來(lái)反映超聲波電機(jī)運(yùn)行特性的實(shí)驗(yàn)數(shù)據(jù),是辨識(shí)建模的基礎(chǔ)。采用圖3所示超聲波電機(jī)轉(zhuǎn)速PI控制系統(tǒng),進(jìn)行不同轉(zhuǎn)速給定值、不同控制參數(shù)情況下的階躍響應(yīng)實(shí)驗(yàn),以獲取用于辨識(shí)建模的實(shí)驗(yàn)數(shù)據(jù)。實(shí)驗(yàn)用超聲波電機(jī)為日本Shinsei公司USR60型兩相行波超聲波電機(jī),表1給出了電機(jī)的主要性能參數(shù)。驅(qū)動(dòng)電路為H橋結(jié)構(gòu),采用相移PWM控制方式。圖3中,Nref為轉(zhuǎn)速給定值,與電機(jī)同軸連接的“E”為光電編碼器,用來(lái)測(cè)量電機(jī)轉(zhuǎn)速以構(gòu)成閉環(huán)控制。轉(zhuǎn)速控制器由DSP芯片編程實(shí)現(xiàn),控制器輸出的控制量為電機(jī)驅(qū)動(dòng)電壓的頻率值,通過(guò)調(diào)節(jié)頻率實(shí)現(xiàn)對(duì)電機(jī)轉(zhuǎn)速的控制。
表1 實(shí)驗(yàn)用電機(jī)性能參數(shù)
圖3為系統(tǒng)包含電機(jī)兩相驅(qū)動(dòng)電壓幅值的閉環(huán)控制,使兩相驅(qū)動(dòng)電壓幅值在頻率調(diào)節(jié)過(guò)程中保持不變;設(shè)定電壓幅值給定值為電機(jī)的額定驅(qū)動(dòng)電壓值300V(峰峰值),兩相驅(qū)動(dòng)電壓的相位差為固定的90°,在電機(jī)的調(diào)速范圍[10,120]r/min內(nèi),間隔10r/min設(shè)定轉(zhuǎn)速階躍給定值。每個(gè)轉(zhuǎn)速階躍給定值情況下,分別采用3組不同的PI控制參數(shù),測(cè)取3組不同的階躍響應(yīng)數(shù)據(jù),所得36組數(shù)據(jù)用于辨識(shí)建模。另外,在轉(zhuǎn)速階躍給定值分別為30r/min、60r/min、90r/min、120r/min的情況下,各設(shè)置兩組不同于前述實(shí)驗(yàn)取值的PI控制參數(shù),進(jìn)行階躍響應(yīng)實(shí)驗(yàn),得到8組階躍響應(yīng)數(shù)據(jù)用于模型校驗(yàn),以評(píng)測(cè)所建模型的泛化能力。
圖3 實(shí)驗(yàn)用超聲波電機(jī)轉(zhuǎn)速控制系統(tǒng)結(jié)構(gòu)框圖
每組實(shí)驗(yàn)數(shù)據(jù)既有轉(zhuǎn)速?gòu)?開(kāi)始逐漸趨于給定值的動(dòng)態(tài)數(shù)據(jù),也有達(dá)到并保持在給定值附近的大量穩(wěn)態(tài)數(shù)據(jù),而過(guò)多的穩(wěn)態(tài)數(shù)據(jù)會(huì)在辨識(shí)建模過(guò)程中削弱動(dòng)態(tài)數(shù)據(jù)的作用,使模型偏離實(shí)際的電機(jī)特性,因此分離其中過(guò)多的穩(wěn)態(tài)數(shù)據(jù),得到動(dòng)態(tài)數(shù)據(jù)用于建模。
Hammerstein模型中的靜態(tài)非線性環(huán)節(jié)用來(lái)表征超聲波電機(jī)的非線性特性。超聲波電機(jī)的機(jī)電能量轉(zhuǎn)換過(guò)程具有明顯的非線性特征,這主要來(lái)自于兩個(gè)方面。一是利用壓電材料的逆壓電效應(yīng)將電能轉(zhuǎn)換為機(jī)械能的過(guò)程,二是利用摩擦將機(jī)械能從定子傳遞到轉(zhuǎn)子的過(guò)程。無(wú)論哪一個(gè)過(guò)程,都難以建立能夠準(zhǔn)確表述其轉(zhuǎn)換機(jī)理的數(shù)學(xué)模型,這是超聲波電機(jī)機(jī)理建模的主要難點(diǎn)。辨識(shí)建模方法旨在獲取與被建模對(duì)象的外在表現(xiàn)一致的數(shù)學(xué)模型,而對(duì)象的外在表現(xiàn)是由實(shí)測(cè)的輸入輸出數(shù)據(jù)來(lái)體現(xiàn)的,避開(kāi)了無(wú)法獲取滿意結(jié)果的內(nèi)部機(jī)理分析,有可能得到較高精度的模型。
對(duì)于上述分離出來(lái)的穩(wěn)態(tài)數(shù)據(jù),求取各組數(shù)據(jù)點(diǎn)的頻率、轉(zhuǎn)速值的平均值,得到圖4中方形點(diǎn)所示數(shù)據(jù)。圖4所示數(shù)據(jù)反映了超聲波電機(jī)頻率-轉(zhuǎn)速關(guān)系中非線性特性的主要方面。對(duì)圖4所示數(shù)據(jù)進(jìn)行函數(shù)擬合,以得到Hammerstein模型中靜態(tài)非線性環(huán)節(jié)的表達(dá)式。對(duì)不同擬合函數(shù)形式的嘗試表明,使用Gauss函數(shù)可實(shí)現(xiàn)較高的擬合精度??紤]到擬合誤差會(huì)影響模型的整體精度,將其系數(shù)值設(shè)為待辨識(shí)的未知參數(shù),和模型動(dòng)態(tài)線性環(huán)節(jié)中未知參數(shù)一起,采用差分進(jìn)化算法進(jìn)行參數(shù)辨識(shí),以期獲得更高的建模精度。于是,得Hammerstein模型靜態(tài)非線性環(huán)節(jié)為
x=c1+c2ec3(u-c4)2
(6)
Hammerstein模型動(dòng)態(tài)線性環(huán)節(jié)的表達(dá)式為
y(k)=-a1y(k-1)-a2y(k-2)-a3y(k-3)-
…-ana(k-na)+b0x(k)+b1x(k-1)+…
+bnb(k-nb)+e(k) (7)
圖4 模型靜態(tài)非線性環(huán)節(jié)的擬合
差分進(jìn)化算法參數(shù)的取值是否合適,直接決定了能否得到最優(yōu)的辨識(shí)結(jié)果。在差分進(jìn)化算法中,需要設(shè)定數(shù)值的參數(shù)包括種群數(shù)量Np、變異因子F、交叉概率因子CR、模型參數(shù)初始值上下限maxbound及minbound、最大迭代次數(shù)Gm等。其中,最大迭代次數(shù)用作優(yōu)化計(jì)算的終止條件。通過(guò)嘗試不同的優(yōu)化算法參數(shù)進(jìn)行模型參數(shù)辨識(shí),以優(yōu)化結(jié)果好、迭代次數(shù)或用時(shí)少為依據(jù),確定各參數(shù)值為maxbound=1,minbound=-1,Np=100,Gm=700,F=0.65,CR=0.9,c1[5,10],c2[140,200],c4[30,50]。
在合理范圍內(nèi),設(shè)定不同的模型階次,利用差分進(jìn)化算法嘗試進(jìn)行模型參數(shù)辨識(shí),對(duì)比所得最優(yōu)目標(biāo)函數(shù)值,以確定模型階次。目標(biāo)函數(shù)值越小,表示該模型階次下所建模型越趨近于建模數(shù)據(jù)所表征的電機(jī)實(shí)際運(yùn)行特性。考慮實(shí)測(cè)響應(yīng)曲線的表征及控制性能要求,分別嘗試了na=3的3組模型階次,以及na=4、nb=1和na=4、nb=2這5組模型階次,表2給出了這5組模型階次的優(yōu)化結(jié)果和校驗(yàn)結(jié)果。
選定第4組模型階次為超聲波電機(jī)模型的階次,由此,得到辨識(shí)模型對(duì)應(yīng)的模型參數(shù)為z=[c1,c2,c3,c4,a1,a2,a3,a4,b0,b1]= [9.5400, 155.8717, -0.5926, 42.0060, -0.9416, 0.0623, 0.0471, -0.0255 , 0.8218 , -0.6928],模型的靜態(tài)非線性部分為
x=9.5400+155.8717e-0.5926(u-42.00060)2
(8)
動(dòng)態(tài)線性部分為
(9)
表2 不同模型階次情況下的優(yōu)化結(jié)果和校驗(yàn)結(jié)果對(duì)比
圖5給出了轉(zhuǎn)速階躍響應(yīng)的模型計(jì)算數(shù)據(jù)與實(shí)測(cè)數(shù)據(jù)對(duì)比,可以看出,模型計(jì)算數(shù)據(jù)與實(shí)測(cè)數(shù)據(jù)基本一致,模型精度較高。
圖5 轉(zhuǎn)速30r/min的數(shù)據(jù)比較
前述建模過(guò)程是以電機(jī)驅(qū)動(dòng)電壓值300V(峰峰值)為例來(lái)表述的。改變測(cè)試條件,設(shè)定不同的驅(qū)動(dòng)電壓值,采用同樣的建模方法進(jìn)行建模,圖6給出了電壓值分別為240V、260V和280V時(shí)的辨識(shí)模型計(jì)算數(shù)據(jù)與實(shí)測(cè)數(shù)據(jù)的對(duì)比,可見(jiàn)依然能夠得到滿意的結(jié)果。
圖6 不同驅(qū)動(dòng)電壓情況的數(shù)據(jù)比較
改變電機(jī)型號(hào)為Shinsei USR30型行波超聲波電機(jī),采用同樣的建模方法進(jìn)行建模,圖7所示數(shù)據(jù)對(duì)比表明,建模方法有效,模型精度較高。
圖7 轉(zhuǎn)速90r/min的數(shù)據(jù)比較(USR30)
為給超聲波電機(jī)控制策略設(shè)計(jì)與控制系統(tǒng)分析提供必要基礎(chǔ),采用差分進(jìn)化算法進(jìn)行模型參數(shù)辨識(shí),建立超聲波電機(jī)Hammerstein非線性轉(zhuǎn)速控制模型。通過(guò)采用適當(dāng)?shù)暮瘮?shù)形式對(duì)實(shí)驗(yàn)數(shù)據(jù)進(jìn)行曲線擬合,得到模型中的靜態(tài)非線性環(huán)節(jié),其表達(dá)式為Gauss函數(shù),不同于常用的多項(xiàng)式形式,在更好表述超聲波電機(jī)非線性特性的同時(shí),也有利于簡(jiǎn)化模型結(jié)構(gòu),減少參數(shù)個(gè)數(shù)。模型計(jì)算結(jié)果和實(shí)驗(yàn)數(shù)據(jù)的對(duì)比,表明建模方法有效,所建模型精度較高。