李弘基, 簡獻忠, 汪祖儉
(上海理工大學(xué)光電信息與計算機工程學(xué)院,上海 200093)
永磁同步電機(permanent magnet synchronous motor,PMSM)具有體積小、結(jié)構(gòu)簡單、功率密度高、性能穩(wěn)定等優(yōu)點,在高性能工業(yè)領(lǐng)域得到了廣泛應(yīng)用[1,2]。PID參數(shù)[3]與電機的定子電阻、dq軸電感與轉(zhuǎn)子磁鏈等固有參數(shù)緊密相關(guān),而電機參數(shù)容易受到溫度變化、集膚響應(yīng)和磁通飽和等影響,這些影響會導(dǎo)致PID調(diào)節(jié)器的控制效果不佳影響電機運行性能。因此,精確有效的電機參數(shù)辨識方法對于獲得高性能PMSM控制系統(tǒng)具有重要研究意義[4]。
尋求更加精確有效地辨識PMSM參數(shù)的方法引起了科研工作者的廣泛關(guān)注,目前的研究工作分為傳統(tǒng)的辨識方法[5~8]和基于人工智能優(yōu)化算法的辨識方法兩大類。PMSM具有非線性時變特性,傳統(tǒng)的辨識方法不能很好地權(quán)衡收斂性、復(fù)雜性和收斂精度等因素。近年來,人工智能優(yōu)化算法憑借對目標函數(shù)要求低、效率較高的優(yōu)勢,在解決很多優(yōu)化問題上取得了不錯的效果,并開始應(yīng)用于PMSM領(lǐng)域。文獻[9]采用了遺傳算法來進行PMSM的參數(shù)辨識,雖然可以同時辨識出定子電阻、dq軸電感以及轉(zhuǎn)子磁鏈,但是存在計算量較大、收斂速度慢、容易陷入局部最優(yōu)導(dǎo)致辨識誤差較大的問題。文獻[10~12]提出了一種神經(jīng)網(wǎng)絡(luò)算法來識別電機的參數(shù)。該方法減小了電機參數(shù)的穩(wěn)態(tài)誤差,提高了辨識參數(shù)的收斂速度。然而,辨識效果的穩(wěn)定性和收斂速度在很大程度上取決于收斂因子,算法的收斂程度對數(shù)據(jù)訓(xùn)練非常敏感,導(dǎo)致數(shù)據(jù)量大,難以實現(xiàn)。文獻[13]利用了粒子群算法在單峰函數(shù)優(yōu)化問題的優(yōu)勢,能較好地辨識出定子電阻與轉(zhuǎn)矩,但是當(dāng)辨識參數(shù)增加時,就無法準確地辨識出電機參數(shù)。而后來的學(xué)者針對這一問題對算法進行了改進,文獻[14]將柯西變異引入粒子群算法,利用柯西擾動策略來提高粒子群算法的全局探索能力,進而提高參數(shù)辨識精度,但是還有待進一步提高。文獻[15]提出一種基于變異珊瑚礁算法的PMSM參數(shù)辨識,將高斯變異和柯西變異相結(jié)合提高算法跳出局部最優(yōu)的性能,最終的辨識誤差也得到降低,但是算法復(fù)雜,采用隨機數(shù)的方法選擇變異策略,沒有充分挖掘高斯與柯西函數(shù)的分布特性。
RAO-1是Rao R V繼JAYA算法之后2020年提出的又一種無隱喻優(yōu)化算法[16]。該算法核心公式簡單,算法參數(shù)少且易于嵌入式系統(tǒng)實現(xiàn),但存在種群多樣性差且在迭代后期不能進行精確尋優(yōu)等缺點。本文將RAO-1算法應(yīng)用于PMSM參數(shù)辨識領(lǐng)域,同時為了解決RAO-1在求解復(fù)合問題時存在容易陷入局部最優(yōu)導(dǎo)致精度不高、辨識速度慢的問題,提出一種混合變異RAO算法應(yīng)用于PMSM參數(shù)辨識。將辨識結(jié)果與PSO算法、RAO-1算法辨識的PMSM參數(shù)從辨識精度和速度兩個方面進行對比,實驗結(jié)果表明GCRAO能較快地辨識電磁參數(shù)并具有更好的收斂精度。
PWSM是一個強耦合、非線性時變的復(fù)雜系統(tǒng)。為了便于分析,假設(shè)PMSM為理想電機,在忽略PMSM的渦流損耗以及鐵損耗的情況下,其數(shù)學(xué)模型在dq同步旋轉(zhuǎn)坐標系下的電壓方程如下:
(1)
磁鏈方程為:
(2)
式中:id、iq、ud、uq為dq軸定子電流電壓;Rs為定子電阻;ψq、ψd為dq軸轉(zhuǎn)子磁鏈;ωe為轉(zhuǎn)子電角速度;Ld、Lq為dq軸電感;ψf為永磁轉(zhuǎn)子磁鏈。
將式(2)代入式(1),并采用id=0矢量控制方式來進行解耦控制,在穩(wěn)定情況下,did/dt=0,diq/dt=0可以得到:
(3)

(4)
RAO-1算法在參數(shù)辨識領(lǐng)域具有良好的前景,目前已經(jīng)開始應(yīng)用于眾多工業(yè)領(lǐng)域。相對于其他優(yōu)化算法,RAO-1算法最大的優(yōu)點是核心公式簡單,迭代速度更快,利用迭代過程最優(yōu)解和最差解來迭代出新解,候選解的更新只包括2種最基礎(chǔ)的運算,即加法、乘法。所以RAO-1算法對于硬件要求極低,更容易跨平臺實現(xiàn)。RAO算法只有2個最簡單的參數(shù),分別是迭代次數(shù)與種群數(shù)量。RAO-1核心公式如下:
(5)

3.2.1 變異策略
高斯分布是數(shù)學(xué)、物理和工程中廣泛使用的一種概率分布形式。高斯分布的概率密度函數(shù)為:
(6)
式中:σ表示方差;μ表示平均值。通過改進對重點區(qū)域的局部搜索性能的操作稱為變異。高斯變異是指用符合正態(tài)分布的隨機數(shù)來指導(dǎo)變異過程。當(dāng)算法進入收斂狀態(tài)時,高斯變異RAO算法的新解更新公式為:
(7)
式中:Gaussian(0,1)服從方差為0,均值為1的高斯分布。在RAO進入收斂時,可以令其重點探索最優(yōu)解附近的新解,進而可以跳出局部最優(yōu)的局面。
柯西分布是一個數(shù)學(xué)期望不存在的連續(xù)型概率分布。當(dāng)隨機變量x滿足它的概率密度函數(shù)時,稱x服從柯西分布??挛鞣植嫉母怕拭芏裙綖?
(8)
當(dāng)δ=1,μ=0表示服從標準柯西分布,本文使用柯西變異來在算法收斂時更新最優(yōu)個體,這對提高種群多樣性,跳出局部最優(yōu)解和改善RAO探索特性十分有效。當(dāng)算法進入收斂狀態(tài)時,柯西變異公式如下:
(9)
為了充分發(fā)揮上述兩種變異策略的特性,圖1對比了高斯函數(shù)與標準柯西函數(shù)的分布。

圖1 高斯柯西函數(shù)對比圖Fig.1 Gaussian Cauchy function comparison diagram
可以發(fā)現(xiàn)高斯函數(shù)的中心分布相對于柯西函數(shù)更加集中,而柯西函數(shù)的兩側(cè)分布更加離散,這表明柯西分布可以以更高的概率來產(chǎn)生一個遠離原點的隨機數(shù),相比高斯分布產(chǎn)生的隨機數(shù)具有更寬的分布范圍,更加容易跳出局部最優(yōu)的現(xiàn)象,探索全局最優(yōu)解的能力更強。高斯函數(shù)可以大概率產(chǎn)生原點附近的隨機數(shù),可以加強對于當(dāng)前局部最優(yōu)點附近更優(yōu)點的探索,進而加快RAO-1算法的局部搜索能力和速度。本文結(jié)合了2種變異策略的優(yōu)勢,提出了混合變異RAO算法。
3.2.2 混合變異RAO算法
基于上述分析,當(dāng)RAO-1算法運行到較為穩(wěn)定的局部最優(yōu)點時,可以利用高斯變異具有重點搜索當(dāng)前最優(yōu)個體的局部區(qū)域這一特點,提升算法的局部搜索能力;而當(dāng)高斯變異尋找到當(dāng)前區(qū)域的最優(yōu)點時,使用柯西變異較強的擾動能力來讓算法具有更高的概率來跳出局部最優(yōu)點,從而提升算法的全局探索能力。為了使所提出的算法具有自主選擇變異策略的功能,本文提出了1種算法分段的思想來指導(dǎo)算法的變異過程。

圖2 算法迭代過程Fig.2 Algorithmic iterative process
參考數(shù)學(xué)中斜率的概念,斜率表示的是一條直線(或者曲線的切線)關(guān)于(橫坐標正方向)坐標軸的傾斜量,反應(yīng)的是在此處的函數(shù)值變化量大小,其數(shù)值為關(guān)于橫坐標夾角的正切值。
如圖2所示,算法的迭代運行是一個自適應(yīng)函數(shù)值不斷減小、最終穩(wěn)定在極小值、函數(shù)值變化量不斷趨近于0的過程。經(jīng)過上述斜率以及自適應(yīng)函數(shù)的分析,本文將2次迭代過程中最優(yōu)個體的自適應(yīng)函數(shù)差來類比自適應(yīng)函數(shù)曲線的斜率,并分別給定兩個參數(shù)值k1、k2。令算法初步運行,當(dāng)運行至總迭代數(shù)的1/5后,若算法此時斜率大于k1,則說明算法仍處于未收斂狀態(tài),若斜率小于k1大于k2,則說明算法進入初步收斂狀態(tài),當(dāng)算法斜率小于k2時,則算法此時進入了重度收斂狀態(tài)。
不同收斂狀態(tài),采用不同的個體更新策略。未收斂階段,利用RAO-1的核心公式(5)進行迭代,此時為初始狀態(tài)向初步收斂狀態(tài)發(fā)展,找到局部最優(yōu)點后進入第二個狀態(tài)初步收斂階段,以高斯變異核心公式(7)進行迭代,向著重度收斂狀態(tài)發(fā)展,進一步探索當(dāng)前局部更優(yōu)的點。隨后進入第3個階段重度收斂階段,為提高算法全局搜索能力選擇采用柯西變異核心公式(9)進行迭代,此時為重度收斂向完全收斂狀態(tài)轉(zhuǎn)變,嘗試著跳出當(dāng)前局部最優(yōu)點,直到算法結(jié)束。
為了驗證算法的局部開采能力與跳出局部最優(yōu)的全局探索能力,對5種標準測試函數(shù)進行優(yōu)化,函數(shù)具體信息見表1。其中f1,f2為單峰函數(shù)(有且僅有一個最優(yōu)解)用于來檢測算法的局部開采能力,f3、f4、f5為多峰函數(shù)(在所考慮的區(qū)間中有多個局部極小值的實值函數(shù)),檢測算法的全局探索能力。參數(shù)設(shè)置如下:種群大小為30,迭代次數(shù)為800,維度均為30。

表1 5個標準函數(shù)信息Tab.1 Information of five standard functions
圖3展示了GCRAO與RAO-1算法在上面5種標準測試函數(shù)的結(jié)果對比。可以發(fā)現(xiàn)GCRAO具有更高的收斂速度和求解精度。尤其是在處理類似于f3、f4、f5的多峰函數(shù)時候,GCRAO的性能優(yōu)越性更加明顯。
為了進一步驗證將算法運行劃分分成3階段的思想正確性,在同樣引入高斯柯西變異條件下,GCRAO采用了3運行階段思想來自主選擇變異策略,CGRAO則采用隨機數(shù)來選擇變異策略。表2展示了兩者在上面5個標準測試各運行10次的性能對比。
從表2可以看出采用了3運行階段思想的混合變異RAO不論從最優(yōu)平均值還是標準差都比采用隨機數(shù)的混合變異RAO更小,這無疑證明了將算法劃分為3階段的思想正確性,能賦予算法自主選擇的能力,相比之下,GCRAO具有更強的全局尋優(yōu)能力,和更加穩(wěn)定的收斂精度。
PMSM參數(shù)辨識的基本原理是根據(jù)電機理論模型與實際系統(tǒng)輸出的差值,通過優(yōu)化算法對待辨識參數(shù)得到的自適應(yīng)函數(shù)值不斷修正,最終收斂到適應(yīng)度最小的參數(shù)值,從而得到PMSM的參數(shù)。PMSM參數(shù)辨識模型如圖4所示。

圖4 PMSM參數(shù)辨識模型Fig.4 PMSM parameter identification model
圖4中的自適應(yīng)函數(shù)如下:
(10)

步驟1:運行腳本文件,加載電機模型,導(dǎo)入電機所需的各個參數(shù)值。開始運行PMSM,采集并且保存id=0,id≠0模式下電機運行的數(shù)據(jù),包括dq軸電壓、電流、以及電角速度。
步驟2:設(shè)置種群大小,迭代次數(shù),種群初始化。
步驟3:判斷是否達到最大迭代次數(shù)?!笆恰眲t執(zhí)行步驟8,“否”則執(zhí)行步驟4到步驟7。
步驟4:利用式(4)、式(10)計算個體的自適應(yīng)函數(shù)值,并找出最優(yōu)值和最差值個體及其對應(yīng)的自適應(yīng)函數(shù)值。
步驟5:根據(jù)收斂狀態(tài)來進行個體更新,未收斂狀態(tài)采用RAO-1核心公式(5)進行個體更新,初步收斂狀態(tài)采用高斯變異核心公式(7)進行個體更新,重度收斂狀態(tài)進入柯西變異核心公式(9)進行個體更新。
步驟6:邊界處理,并計算新個體的自適應(yīng)函數(shù)值。
步驟7:判斷新個體是否優(yōu)于舊個體,“是”則用新個體取代舊個體,“否”則保留舊個體。
通過Matlab/Simulink軟件平臺搭建了基于GCRAO算法的PMSM辨識系統(tǒng),系統(tǒng)框圖如圖5所示,圖中r、s分別代表旋轉(zhuǎn)坐標系和靜止坐標系。電機采用矢量控制策略,算法輸入信號為ud,uq,id,iq,ωe。實驗中的SVPMSM具體參數(shù)見表3。

表3 模型中電機具體參數(shù)Tab.3 Specific motor parameters in the model
電機運行的其他參數(shù):母線電壓400 V,開關(guān)頻率10 kHz,在初試時刻給定的電機轉(zhuǎn)速為2 500 r/min,給定的負載轉(zhuǎn)矩為5 N·m??偡抡鏁r長為0.4 s,在仿真加入PSO算法、RAO-1算法做對比實驗時,3種算法的種群規(guī)模均為100,最大迭代數(shù)均為1 000。
為了驗證本文提出的基于混合變異RAO算法在永磁同步電機參數(shù)辨識的有效性與可行性,設(shè)計了RAO-1算法,PSO算法和GCRAO算法SVPMSM參數(shù)辨識的對比實驗。

圖5 基于混合變異RAO算法的PMSM辨識框架圖Fig...5 Identification frame diagram of PMSM based on RAO algorithm of mixed variation
3種算法設(shè)置的種群大小為100,迭代次數(shù)為200,辨識參數(shù)的范圍設(shè)置為Rs∈(0,5),L∈(0,0.01),ψf∈(0,0.05)。粒子群算法的初始化相關(guān)參數(shù)為:慣性權(quán)重ω=0.8,學(xué)習(xí)因子C1=C2=1.4。
3種算法的辨識結(jié)果如圖6所示,可以看到GCRAO算法辨識的3個參數(shù)更加快速平穩(wěn)地收斂到真實值附近。表4的辨識參數(shù)值對比結(jié)果表明GCRAO辨識各參數(shù)誤差都小于其他兩個算法辨識結(jié)果。

圖6 參數(shù)辨識對比結(jié)果Fig.6 Comparison of parameter identification results

表4 辨識參數(shù)值對比Tab.4 Identification comparison of the three algorithm
為了對比3種算法的計算工作量,本文采用了事前估計法和事后統(tǒng)計法相結(jié)合的方式,重點考慮算法種群規(guī)模、迭代次數(shù)、算法核心公式、編程語言和機器執(zhí)行速度等因素。在確保相關(guān)因素一致的條件下,利用算法的執(zhí)行時間(運行20次取其平均值)來反應(yīng)算法的計算工作量,結(jié)果如表5所示。

表5 算法運行時間對比Tab.5 Comparison of algorithm running time
在種群規(guī)模為100,迭代次數(shù)為200的情況下,分別計算了3種算法的運行時間。從表5可以看出,RAO-1、GCRAO算法的運行時間明顯小于PSO算法,這是因為RAO-1具有核心公式較為簡單,需要設(shè)置的算法參數(shù)極少,而GCRAO在RAO-1的基礎(chǔ)上引入了高斯柯西變異策略,算法根據(jù)不同的運行狀態(tài)來選擇變異策略,這無疑會增加算法的計算量,但是從表中可以看出相差較小。這說明GCRAO具有較快的電機參數(shù)辨識速度。
由上所述可知,RAO-1相較于PSO算法在PMSM參數(shù)辨識問題上精度已經(jīng)得到了提高,誤差更小,除了對于電感辨識還存在一定偏差外,其他各個參數(shù)誤差都已經(jīng)小于百分之一,而GCRAO在RAO-1基礎(chǔ)上精度進一步提高。從算法辨識結(jié)果看出,GCRAO的初步收斂狀態(tài)與PSO、RAO-1算法大致相同,但是GCRAO在迭代次數(shù)達到85左右的時候自適應(yīng)函數(shù)進一步減小,精度又提高了,這說明算法從初步收斂向重度收斂方向取得了進展,算法的全局探索能力確實得到了增強,進而也驗證了上述算法運行分段思想的正確性。從最后的結(jié)果來看,GCRAO參數(shù)辨識誤差都在0.1%左右,對比之下,證明了GCRAO算法的性能優(yōu)越,具有更高的辨識精度。
GCRAO保留了原RAO算法的優(yōu)勢,相較于其他復(fù)雜的智能算法而言,不需要過多的算法參數(shù),有更簡潔的核心公式,算法精度較高。同時GCRAO的通用性較廣,同樣也可以用來辨識異步電機或者風(fēng)力發(fā)電機等多種類型的電機。
本文針對傳統(tǒng)電機參數(shù)辨識存在算法復(fù)雜度高、辨識速度慢、辨識精度低的問題,通過對RAO-1算法進行改進,提出算法3運行階段,利用高斯柯西的函數(shù)特性來契合各個階段的算法變異策略,來改善原RAO-1容易陷入局部最優(yōu)的問題,并通過5個標準測試函數(shù)來驗證GCRAO具有更強的全局探索能力,然后通過在Matlab/Simulink軟件中搭建了基于矢量控制的PMSM模型,并分別將PSO、RAO-1和GCRAO應(yīng)用于電機的參數(shù)辨識領(lǐng)域進行對比實驗,最終的實驗結(jié)果表明GCRAO對于電機辨識更為精確,進一步驗證GCRAO算法的性能優(yōu)越。由于GCRAO算法參數(shù)設(shè)置少,易于嵌入式系統(tǒng)實現(xiàn),因此本文的研究成果為智能算法應(yīng)用于電機參數(shù)辨識的嵌入式系統(tǒng)應(yīng)用提供了一種方法。