陶丁興,王家軍
(杭州電子科技大學(xué)自動化學(xué)院,浙江 杭州 310018)
永磁同步電動機(Permanent-Magnet Synchronous Motor,PMSM)具有功率密度高、動態(tài)性能好、轉(zhuǎn)速運行范圍寬等優(yōu)勢,廣泛應(yīng)用于工業(yè)伺服驅(qū)動系統(tǒng)、電動汽車和高鐵等領(lǐng)域[1-2]。目前,PMSM的控制方法主要有矢量控制和直接轉(zhuǎn)矩控制,通過準(zhǔn)確獲取PMSM的定子電阻、交直軸電感和永磁磁鏈等參數(shù)來提高其控制性能。造成電機實際參數(shù)與給定參數(shù)之間誤差的原因有多種,比如,制造公差導(dǎo)致同一批次生產(chǎn)的電機參數(shù)不完全相同;高性能控制驅(qū)動器設(shè)計者無法獲得準(zhǔn)確的電機參數(shù),致使控制效果差;電機參數(shù)受運行條件和周圍環(huán)境的影響,產(chǎn)生非線性變化等[3]。為了降低電機參數(shù)對控制系統(tǒng)性能的影響,需要對電機參數(shù)進行精確辨識。目前,主要通過最小二乘法[4]、模型參考自適應(yīng)法[5]、遺傳算法(Genetic Algorithm,GA)[6]、粒子群算法(Particle Swarm Optimization,PSO)[7]等方法來提高PMSM參數(shù)的辨識精度。最小二乘法收斂速度快,但轉(zhuǎn)速突變時,算法的計算量大,跟蹤性能差。模型參考自適應(yīng)法需要根據(jù)辨識的參數(shù)手動選擇自適應(yīng)率,在多個參數(shù)同時辨識時,自適應(yīng)率的設(shè)計比較繁瑣。GA算法能夠進行并行操作,容易取得全局最優(yōu)解,但算法需要編碼,且對函數(shù)搜索的物理意義不直觀。PSO算法運用粒子運動路線與人類決策相似的原理得出最優(yōu)解,易于理解且收斂速度較快,但最大速度和加權(quán)因子不易選取,容易陷入局部最優(yōu)。人工魚群算法(Artificial Fish Swarm,AFS)[8]是模擬動物行為的群體智能優(yōu)化算法,簡單易于實現(xiàn),函數(shù)優(yōu)化能力強,收斂速度快,是很好的全局優(yōu)化算法。本文運用AFS算法進行PMSM定子電阻、磁鏈、d軸及q軸電感參數(shù)的辨識仿真,進一步提高PMSM的參數(shù)辨識精度。
在對PMSM進行數(shù)學(xué)建模時,忽略磁飽和效應(yīng)、鐵芯渦流、磁滯損耗和高次諧波,且氣隙磁場按正弦分布,在d軸、q軸同步旋轉(zhuǎn)坐標(biāo)系下的PMSM數(shù)學(xué)模型為:
(1)
(2)
(3)
(4)
(5)
(6)
AFS算法是一種基于現(xiàn)實環(huán)境中魚群行為的并行智能優(yōu)化算法[8]。AFS算法模擬了魚群的覓食、聚群、追尾和隨機行為,通過這些行為找到全局最優(yōu)值[9]。AFS算法可以有效搜索全局最優(yōu)值,具有收斂速度快、并行性好、魯棒性強等優(yōu)點。
圖1 人工魚視覺概念圖
人工魚視覺概念如圖1所示。圖1中,Xi為一條人工魚的當(dāng)前位置;V為它的視野范圍;XZ為其在某時刻的視點所在位置,若此位置的食物濃度高于當(dāng)前位置Xi,則該人工魚移動到Xnext,否則繼續(xù)巡視視野范圍內(nèi)的其他位置;S為人工魚的最大移動步長。一條魚巡視的次數(shù)越多,對周圍環(huán)境的掌控度就越高。
AFS算法的行為函數(shù)定義為覓食、聚群、追尾和隨機等函數(shù)。
覓食行為指動物尋找食物的行為,人工魚通過視覺和嗅覺感知食物,通過濃度來選擇移動的方向。假設(shè)當(dāng)前人工魚的位置為Xi,在其感知范圍內(nèi)隨機選擇一個位置Xj,若Xj所在位置的食物濃度Yj大于當(dāng)前位置食物濃度Yi,人工魚則向此方向移動,否則重新選擇位置,若人工魚嘗試移動N次仍未找到符合要求的位置,則執(zhí)行隨機行為。覓食行為的轉(zhuǎn)移方程為:
(7)
式中,rand表示之間的隨機數(shù),Xi|next為當(dāng)前人工魚動作后的下一個狀態(tài),N為人工魚覓食行為中最大嘗試次數(shù)。
聚群行為指魚類集聚成群來集體覓食并躲避傷害的行為。假設(shè)當(dāng)前人工魚的位置為Xi,在其視野范圍內(nèi)魚群的數(shù)目為m,魚群的中心位置為Xc,Yc為中心位置Xc的食物濃度,δ為擁擠度因子。如果Yc/m>δYi,則表明魚群中心有較多的食物且不擁擠,可以向中心位置Yc移動,相反則執(zhí)行覓食行為。聚群行為的轉(zhuǎn)移方程為:
(8)
追尾行為指當(dāng)某一條魚或幾條魚發(fā)現(xiàn)食物時,它們附近的魚會尾隨其后游過來的行為。假設(shè)位置Xj人工魚的食物濃度Yj最高,若Yj/m>δYi,則表明在位置Xj的人工魚具有較高的食物濃度且不擁擠,當(dāng)前人工魚往Xj方向移動;相反則執(zhí)行覓食行為。追尾行為的轉(zhuǎn)移方程為:
(9)
隨機行為指魚為了在更大范圍內(nèi)尋找食物而隨機游動的行為。隨機行為是覓食行為的一個缺省行為,在覓食行為嘗試M次后,若仍不滿足覓食移動條件,人工魚會在視野范圍內(nèi)隨機選擇一個位置,然后向該位置移動。隨機行為的轉(zhuǎn)移方程為:
Xi|next=Xi+rand×S
(10)
為了指定AFS算法的優(yōu)化目標(biāo),需要選擇適應(yīng)度函數(shù)。可供選擇的適應(yīng)度函數(shù)有很多,如時間乘以誤差平方積分(Integral of Time-weighted Squared Error,ITSE)、絕對誤差積分(Integral of Absolute Error,IAE)和誤差平方積分(Integral of Squared Error,ISE)等。IAE和ISE不受時間約束,且不易同時減小超調(diào)和調(diào)節(jié)時間[10]。ITSE既考慮了時間的約束,又能在抑制大偏差的同時縮短調(diào)節(jié)時間,因此,本文使用ITSE作為永磁同步電動機參數(shù)辨識的適應(yīng)度函數(shù),ITSE的表達式為:
(11)
圖2 AFS算法流程圖
采用AFS算法對永磁同步電機參數(shù)進行辨識的主要步驟如下。
(1)設(shè)定算法的初始參數(shù)。初始參數(shù)主要包括魚群的數(shù)量MP、算法的最大迭代次數(shù)Gmax、視野范圍V、最大移動步長S、擁擠度因子δ和覓食行為中的最大嘗試次數(shù)N。
x0=(xmax-xmin)×rand(MP,1)+xmin
(12)
式中,xmax和xmin分別為備選解在解空間中的上下限,rand(MP,1)表示在區(qū)間上生成MP個隨機數(shù)。通過式(12)可以在解空間中隨機產(chǎn)生第1次迭代所需的備選解x0。
(3)利用備選解進行聚群行為。將第1次初始化的備選解根據(jù)式(8)模擬聚群行為,并隨機生成第2次的備選解Xnext1。
(4)利用備選解進行追尾行為。將第1次備選解根據(jù)式(9)模擬追行為尾,并生成第2次的備選解Xnext2。
(13)
(6)確定算法的終止指標(biāo)。本文引入最大迭代次數(shù)Gmax作為終止指標(biāo),當(dāng)?shù)螖?shù)G到達最大迭代次數(shù)Gmax時終止。
辨識原理如圖3所示。圖3中,AFS算法輸入包括d軸、q軸電壓ud和uq,d軸、q軸電流id和iq,電角速度ωe,系統(tǒng)實際輸入包括ud,uq。
圖3 AFS算法辨識算法原理
為驗證AFS算法辨識PMSM參數(shù)的有效性,本文在Matlab/Simulink中搭建了PMSM矢量控制系統(tǒng),其結(jié)構(gòu)如圖4所示,仿真中PMSM的參數(shù)如表1所示。
圖4 基于矢量控制的ASF算法參數(shù)辨識結(jié)構(gòu)圖
表1 仿真中PMSM參數(shù)
圖5 n=600 r/min時,AFS算法與PSO算法的參數(shù)辨識結(jié)果
圖6 AFS算法與PSO算法適應(yīng)度函數(shù)收斂曲線
圖7 正弦信號輸入下,AFS算法與PSO算法的參數(shù)辨識結(jié)果對比
圖8 AFS算法與PSO算法適應(yīng)度函數(shù)收斂曲線
為進一步驗證AFS算法辨識參數(shù)的優(yōu)越性,轉(zhuǎn)速為階躍信號和正弦信號的輸入條件下,AFS算法與PSO算法辨識的結(jié)果及辨識的誤差如表2所示。
從表2可以看出,使用PSO算法的參數(shù)辨識誤差要比使用AFS算法大,在階躍轉(zhuǎn)速的條件下AFS算法辨識出的參數(shù)誤差基本與實際值基本相同,誤差在0左右;而使用PSO算法辨識出的辨識值與實際值的差距明顯增大,誤差大都在3%左右。轉(zhuǎn)速為正弦信號時,AFS算法辨識得到的參數(shù)與PMSM實際參考值依然基本保持相同;而PSO算法辨識得到的參數(shù)與實際值誤差進一步加大,誤差大約在5%。因此,可明顯看出AFS算法的參數(shù)辨識精度要高于PSO算法。綜合表2和圖5、圖6、圖7和圖8可知,與PSO算法相比,AFS算法辨識出的參數(shù)誤差更小,辨識精度更高,且收斂速度更快。
表2 AFS算法與PSO算法辨識結(jié)果
為了提高PMSM參數(shù)的辨識精度,本文提出一種基于AFS算法的PMSM參數(shù)辨識方法。算法實現(xiàn)簡單,收斂速度快,辨識精度高。但是,本文是通過離線的AFS算法進行PMSM參數(shù)的辨識,后續(xù)將針對在線AFS算法的辨識展開進一步研究。