











作者簡介:高雄(2000—),男,碩士研究生;研究方向:電機參數辨識。
摘要:針對永磁同步電機中參數辨識精度不足以及速度較慢的問題,文章提出一種改進的布谷鳥算法實現對永磁同步電機的參數辨識。首先,采用Tent映射初始化種群;其次,采用動態發現概率調整布谷鳥蛋被發現的概率;最后,引入逐維反向學習策略,增強了算法的局部和全局尋優能力,同時加快了收斂速度。仿真分析表明,改進的布谷鳥算法相比于原算法,能更加有效地辨識永磁同步電機的電機參數。
關鍵詞:永磁同步電機;Tent映射;逐維反向學習;參數辨識;布谷鳥算法
中圖分類號:TM351文獻標志碼:A
0引言
永磁同步電機(PermanentMagnetSynchronousMotor,PMSM)具有許多優點,如體積小、結構簡單以及效率高等,被廣泛應用于機床等工業領域[1]。在PMSM控制系統中,PID控制器的參數與電機參數相關,而電機參數與各種因素緊密相連,如溫度變化和定子電流等。這些因素可能對PID控制器的調控效能產生負面影響,從而降低電機系統的穩定性[2]。因此,精確的電機參數對提高PMSM系統性能具有重要意義。
1永磁同步電機數學模型
為簡化分析,假設永磁同步電機的磁場不飽和,忽略渦流損耗等因素的影響,在dq坐標系下建立PMSM數學模型。PMSM的電壓方程為:
ud=Rsid+dψddt-ωeψq
uq=Rsiq+dψqdt+ωeψd
(1)
磁鏈方程為:
ψd=Ldid+ψf
ψq=Lqiq
(2)
式中,ψd、ψq為dq軸轉子磁鏈;ud、uq、id、iq是dq軸的定子電壓電流;ωe是轉子電角度;Rs為定子電阻;ψf為永磁體磁鏈;Ld、Lq為dq軸電感。
本文對表貼式PMSM進行參數辨識,因此dq軸電感相等,即:
Ld=Lq=L(3)
為了方便對PMSM進行參數辨識,根據式(1)、式(2)和式(3),采用id=0控制策略,將電壓方程離散化,電壓離散方程如式:
ud0=-Lωe0(k)iq0(k)
uq0=Rsiq0(k)+ωe0(k)ψf
(4)
式(4)是一個秩為2的欠秩方程,本文需要辨識3個參數,僅依靠式(4)很難精確辨識出準確的電機參數。為構建完整的電機方程組,在PMSM系統穩定運行時施加一個非零電流id,產生另一個二階電壓方程組,進而得到滿秩方程組。PMSM的辨識模型為:
u^d0=-L^ωe0(k)iq0(k)
u^q0=R^siq0(k)+ωe0(k)ψ^f
u^d=R^id(k)-L^ωe(k)iq(k)
u^q=R^siq(k)+L^ωe(k)id(k)+ωe(k)ψ^f(5)
式中,頂部標記“^”表示辨識模型的辨識值,頂部沒有標記的表示實際模型的測量值。
2布谷鳥算法
布谷鳥算法(CuckooSearch,CS)是由DebS和YangXS開創的一種模擬自然界布谷鳥尋找最佳鳥巢位置的優化智能算法。此算法結合了Levy飛行策略以尋求全局最優解。CS算法的實現過程可以分為4步。
Step1.設置參數并初始化。設鳥巢規模為D,布谷鳥寄生蛋被鳥巢主發現的概率為Pa,目標函數為f(x),初始化設置問題維數和最大迭代次數。
Step2.搜索。對鳥巢位置計算f(x),獲得鳥巢位置的函數值,對所有鳥巢的適應度函數值進行比較,以確定具有最優函數值的鳥巢,并且采用Levy飛行更新鳥巢位置[3]。計算公式如式:
xt+1,i=xt,i+α0Levy(β)(6)
Levy(β)=·u|v|1/β(7)
=Γ(1+β)·sin(π·β2)Γ1+β2·β·2β-12
1/β
(8)
式中,xt+1,i、xt,i表示第i個鳥巢的第t+1、t代位置向量;標準布谷鳥算法一般取步長因子α0=001;β是Levy飛行的控制因子一般情況下取值15。其中,u、υ均表示標準正態隨機變量;Γ為Gamma函數。
Step3.鳥巢更新選擇。鳥巢更新后,比較鳥蛋被發現概率Pa和隨機數R,R∈(0,1)服從均勻分布,若Rlt;Pa則保留當前鳥巢位置;否則,舍棄不理想的鳥巢位置,然后根據公式(9)設定新的鳥巢位置。鳥巢位置更新公式如下:
xt+1,i=xt,i+r(xm-xn)(9)
式中,xm、xn表示t代的2個隨機解;r是在區間(0,1)中均勻分布的隨機數表示比例因子。
Step4.算法結束。通過上述求解過程,若滿足最大迭代次數條件,終止計算并輸出最優解,否則將返回步驟Step2進行重新計算。
3改進布谷鳥算法
31Tent混沌映射初始化
群智能優化算法,本質上是一種隨機搜索優化算法。一般使用隨機初始化產生初始種群,但這樣產生的初始種群在空間中的個體分布不均勻,對算法的性能有著一定的限制。又因為混沌映射具有規律性、隨機性與遍歷性等特點,符合初始化種群的要求,經過分析與比較,本文選擇采用Tent混沌映射對CS算法進行初始化鳥巢操作。Tent映射產生的序列的表達式如下:
xt+1=xtγ,0≤xt≤γ
1-xt1-γ,γ≤xt≤1
(10)
Tent映射初始化鳥巢位置散點如圖1所示。Tent映射產生的序列數值比普通隨機數產生的序列數值在0~1的分布要更加均勻,把Tent映射引入CS算法的初始化鳥巢操作,可以提高算法的鳥巢多樣性,有利于提高算法的全局搜索能力。
32動態自適應發現概率Pa
布谷鳥算法中的發現概率對算法的搜索范圍、搜索精度和收斂速度有著重要的意義,而標準的布谷鳥算法采用的是固定發現的概率,不利于全局搜索和局部搜索之間的平衡。本文采用動態發現概率Pa替代標準算法的固定發現概率,改進后Pa取值隨著迭代次數的增加而遞減,在算法搜索前期Pa較大,有利于增強全局搜索能力;在算法搜索后期Pa較小,有利于增強局部搜索能力,因此該策略能有效提高算法尋優效率和精度。動態發現概率如下所示:
Pa=Pmin+12·[1+cos(-π·ttmax)](Pmax-Pmin)
(11)
式中,Pmin為最小發現概率;Pmax為最大發現概率;t表示當前迭代次數;tmax表示最大迭代次數。
33逐維反向學習策略
在逐維反向學習策略中,設鳥巢規模為D,維度為N,每個維度的上限為Ub(i)、下限為Lb(i),迭代過程選擇更新位置時的位置為Temp(i),則解的反向學習公式為:
Temp′(i)=Ub(i)+Lb(i)-Temp(i)(12)
在每次更新解時,考慮逐個維度進行反向操作。這可以增加解的空間探索范圍,提高算法的多樣性。逐維反向策略是指在生成新解時,對每個維度進行隨機反轉。這樣可以增加解的多樣性,提高算法的探索性能。在逐維反向學習策略中,新解的產生取決于目標函數的適應度評估結果。若新解無法提高當前解的質量,則會放棄該維度的更新,保留反向學習前的維度信息;反之,將保留此維度并進行反向學習以更新結果,直到各維度更新完畢。
34算法性能測試
為了驗證ICS算法的收斂速度和尋優能力,將CS算法作為對比,引入4種標準測試函數進行驗證,f1、f2為單峰函數,f3、f4為多峰函數,測試函數如表1所示。如圖2所示是2個算法對4個函數的進化迭代曲線,種群數為50,最大迭代次數為1000,函數f1、f2、f3收斂至全局最優解,f4相比于CS有明顯改善。從圖2可以得出,ICS算法收斂速度和尋優精度與標準CS算法相比較有明顯提高。
函數表達式定義域解
f1=∑ni=1x2i[-100,100]0
f2=∑ni=1|xi|+∏ni=1|xi|[-10,10]0
f3=14000∑ni=1x2i-∏ni=1cos(xii)+1[-600,600]0
f4=-20exp(-021n∑ni=1x2i)-exp(1n∑ni=1cosw(2πxi))+20+e
[-32,32]0
4基于ICS算法的PMSM參數辨識
在電機參數辨識過程中,先將計算得到的辨識模型值與實際測量值之間的差作為適應度函數的輸入,接著運用ICS算法對辨識模型中的待識別參數進行調整,以使適應度函數的值最小并且獲得最優的電機參數[4]。
適應度函數是辨識模型辨識值與實際測量值差值的平方,函數定義為:
f=ω1(ud0-u^d0)2+ω2(uq0-u^q0)2+ω3(ud-u^d)2+ω4(uq-u^q)2
(13)
式中,w1、w2、w3、w4是適應度函數的加權因子,適應度函數值越小,則PMSM的參數辨識精度越高。
ICS算法辨識PMSM參數具體步驟如下。
Step1:設置算法相關參數,采用Tent混沌映射對布谷鳥巢位置進行初始化。
Step2:評估鳥巢,通過式(13)來計算其適應度值,從而確定當前的最優解并且保留。
Step3:更新鳥巢位置,利用式(6)更新鳥巢位置并與上代鳥巢位置對比,保留較好的鳥巢位置。
Step4:產生隨機數a,比較隨機數a與Pa,a服從均勻分布,對發現概率較大的鳥巢進行更新,從而獲得新的鳥巢位置;反之,則保留當前鳥巢位置。
Step5:根據式(12)逐維反向學習策略,更新保存最優鳥巢及適應度值。
Step6:判斷算法終止條件,輸出最優的PMSM辨識參數。
5仿真實驗
51實驗設計
本文在MATLAB/Simulink軟件中建立基于ICS算法的PMSM參數辨識仿真系統,如圖3所示。仿真中的PMSM參數為:阻尼系數是0008N·m·s,轉動慣量是0003kg·m2,磁鏈是0175Wb,極對數是4,定子電阻是2875Ω,dq軸電感是85mH。
52仿真分析
采用ICS、CS2種算法來辨識電機參數,具體結果如表2所示,PMSM的參數辨識曲線如圖4所示。由表2和圖4可知,ICS算法在參數識別方面的精度表現明顯優于CS算法,而且該算法更迅速地收斂至穩定狀態,這證明了ICS算法在參數識別精度和收斂速度方面具有顯著優勢。
6結語
在PMSM系統中精確的電機參數對系統穩定性有著極其重要的意義,因此本文提出了用ICS算法來辨識PMSM參數的方法。在CS算法上首先采用Tent映射初始化種群,其次采用動態發現概率調整布谷鳥蛋被發現的概率;最后引入逐維反向學習策略。通過測試標準函數表明,ICS算法能夠避免算法易陷入局部最優解和收斂速度慢的問題,在總體性能上明顯優于標準的CS算法。仿真結果表明,與標準的CS算法相比,ICS算法可以更快更準確地辨識出PMSM參數,證明了ICS算法的穩定性和精度。
參考文獻
[1]郭亮,王凡,梁狀.高精度數控機床永磁同步電機復合滑模控制算法研究[J].大電機技術,2021(3):17-23.
[2]杜春奇.永磁同步電機參數辨識新方法研究[D].秦皇島:燕山大學,2017.
[3]胡安明,李偉.基于反向學習的布谷鳥算法優化搜索仿真[J].計算機仿真,2021(12):276-280.
[4]李偉,杜昭平.基于改進灰狼優化算法的永磁同步電機參數辨識[J].組合機床與自動化加工技術,2020(7):113-117.
(編輯沈強)