孫漢卿,張世杰,王桂芝,連衛民
(1.河南牧業經濟學院 信息工程學院,鄭州 450001;2.河南工業大學 電氣工程學院,鄭州 450001)
永磁同步電機(permanentmagnet synchronous motor,PMSM)[1]常用的控制系統有轉子磁場定向控制(FOC)[2]和直接轉矩控制(DTC)[3]。這些系統都是根據速度控制器輸出速度信號來調節磁通和轉矩,故速度控制是整個系統的基礎。目前,常用的非線性速度控制方法為比例積分(proportion integration,PI)控制器[4]。然而,傳統PI控制器的控制參數需要人工設定,且不會隨著環境變化而自適應改變,不能滿足對環境的魯棒性要求[5]。為此,有學者將一些自適應機制融入PI控制器中,例如模糊PI參數自整定控制器[6],基于遺傳算法[7]、粒子群優化[8]等進化算法的PI參數自整定控制器等。
另外,對時變、非線性控制系統的控制,傳統PI控制器性能不是很好。增強PI控制器性能的較好方法是使用分數階控制器[9]。分數階PI控制器PIa中,通常I的階數為分數階[10]。因此,除設置KP、KI外,還需設置積分的分數階a。
基于上述分析,本文利用分數階PI控制器代替PMSM中的PI速度控制器。通過融入粒子群優化算法中的信息共享機制和自適應步長來改進細菌覓食優化(bacteria foraging optimization,BFO)算法,形成改進型細菌覓食優化(improved BFO,IBFO)算法,并利用IBFO算法來優化KP、KI和a參數,以獲得最佳的控制器。另外,在適應度函數中考慮了轉速控制的時間絕對誤差積分(integrated time absolute error,ITAE)和超調量,有利于提高控制穩定性。通過實驗與傳統PI控制器和傳統BFO算法優化參數的PI控制器進行比較,結果證明了所提出控制方法具有優越性能。
PMSM結構中分為2個軸,分別為d軸和q軸,這2個軸的氣隙長度和電感都不同。d軸定義為勵磁繞組的磁通產生方向[11],q軸與d軸成90°。PMSM結構如圖1描述。

圖1 PMSM的結構
PMSM模型可以通過轉子旋轉坐標系(d-q軸)建模為1個電路,如圖2所示。根據電路電流和電壓關系式,d軸和q軸的定子電壓分別為:

式中:vd、id表示d軸的電壓和電流,iq、vq表示q軸電壓和電流;λd和λq分別表示2個軸的磁鏈,可通過定子電流、電感和恒定磁鏈λm來計算獲得,如式(3)(4)所示;ωe表示電機轉速,rs表示定子電阻。

式中:Ld、Lq分別為d-q軸電感。將式(3)(4)代入式(1)(2)中,定子電壓方程可修改為:

電磁轉矩Te為:

式中:Tl為負載轉矩;P表示電機極數;B為阻尼系數;J為慣性矩。

圖2 PMSM的等效電路
本文中,選擇磁場定向控制(FOC)方式來控制電極,其系統框圖如圖3所示,其主要由5個模塊組成,分別為速度控制器、電流控制器、逆變器、PWM發生器和位置估計器[12]。

圖3 PMSM的磁場定向控制系統框圖
1.2.1 FOC控制模型
磁場定向控制的主要思想是將定子電流矢量加在q軸上,把轉子磁通加在d軸上,這意味著id(ref)=0。為此,電磁轉矩可修改為

式中:Kt為電機轉矩系數。那么,在狀態空間中,PMSM方程可建模如下:

1.2.2 基于EKF的速度估計
在FOC無位置傳感器的控制系統中,電機的當前速度是通過一些轉速估計算法,根據電機電流、電壓等信號進行估計,然后將其作為實際轉速反饋到PI控制器中,如圖3所示。為此,速度估計的準確性直接影響電機速度控制器的性能。本文將電機三相電流信息變換到αβ軸(兩相靜止坐標系),然后采用基于擴展卡爾曼濾波器(EKF)來估計電機轉速。
卡爾曼濾波器(KF)是一種遞歸算法,其使用一種多輸入-輸出系統的隨機狀態空間模型和噪聲統計來獲得系統狀態變量的最優估計。本文假設系統中的過程噪聲和測量噪聲均為零均值的高斯白噪聲。通過最小化估計誤差的協方差來獲得最優的狀態估計。EKF可以實現非線性系統的近似線性化,提高求解精度。PMSM 模型的離散化可表示如下:

式中:xe(k)為k時刻所估計的狀態向量,即xe=(isα,isβ,λrα,λrβ,ωr,TL)T;z(k)為k時刻的觀測向量,即為狀態向量與輸入之間的非線性函數;ue為輸入向量;He為觀測矩陣;G為噪聲加權矩陣;v(t)為測量噪聲。
如上所述,EKF將PMSM的離散化非線性模型進行線性化,并在線性化中對狀態變量進行估計,表示為

在PMSM的磁場定向控制系統中,速度控制器是整個系統的核心部分,其決定著后續轉矩和勵磁的控制性能。通常速度控制器采用傳統PI控制,但其性能有限,且參數不能自適應調整。近年來,越來越多的研究人員在控制領域使用分數階微積分控制,分數階微積分是處理分數冪微分或積分算子的一種技術[12]。若設定ωref為電機的參考速度,ωact為驅動器的實際輸出速度,那么在時域中的分數階PI控制器PIa的表現形式為

控制器的輸入e(t)為速度差,表示為

式中:為分數微分算子,表示函數f(t)的a階導數,定義如下:

分數階PI控制器的傳遞函數在頻域上表示為

式中:KP和Ki為分數階PI控制器的比例和積分增益值;a為分數積分器的非整數階。
對于分數階PI控制器的設計,參數KP、Ki和a決定了其上升時間(tr)、穩定時間(ts)、峰值超調百分比(po%)和穩態誤差(ess)。因此,要獲得良好的瞬態響應,需要獲得合適的控制器參數組合。由于這些參數組合的解空間較大,人工調節效率較低,所以通常采用智能優化算法來尋找最優參數組合。
本文將分數階PI速度控制器中的3個參數KP、Ki和a作為優化對象。提出一種改進型BFO算法(IBFO),基于速度差信息來優化控制器參數,以此來提高速度控制的準確性。基于IBFO的速度控制器的系統框架如圖4所示。

圖4 PI速度控制器參數優化框架
通常,PI控制器參數優化的目標函數為轉速控制的時間絕對誤差積分(ITAE)[13],表示為

為綜合考慮速度超調情況,本文在目標函數中融入了超調量σ,σ由速度峰值與參考速度的比值來計算。這樣有利于PI控制器產生更小的超調量和振蕩。那么,最終的目標函數O的表達式為

式中:w為權重因子,用來權衡ITAE與超調量的比重。這里,由于ITAE反映速度控制的穩定性,相對而言比超調量更為重要,所以本文設置w為0.3。另外,目標函數值越大說明該參數組合下控制器的性能越低。
BFO是由人類大腸中“大腸桿菌”覓食行為而啟發的一種新型智能優化方法。在這種覓食理論中,細菌以單位時間內攝入能量最小化的方式來搜索并獲得營養物質,細菌會通過趨化性行為聚集到營養豐富的區域。BFO算法中細菌覓食步驟主要分為3個部分,分別為趨向性操作、繁殖操作和遷徙操作[14]。
趨向性操作:趨向性操作中包含2個基本操作,即旋轉和游動[15],細菌在覓食過程中通過這些操作逐步移動到食物源處。游動操作是細菌根據上一步的方向進行游動。而旋轉操作中,細菌會根據當前方向上位置和上一步位置的適應值旋轉方向,朝其他隨機方向游動。
繁殖操作:細菌繁殖過程中,根據細菌的適應度,淘汰一些尋優能力較弱的細菌,并復制相應數量的較優細菌進行替換。繁殖過程中產生的較優細菌副本具有與本體相同的屬性。
遷徙操作:菌群經過若干代繁殖后,將以給定概率執行遷徙操作,移動到新的尋優空間,以此使細菌進行全局尋優,避免陷入局部最優。
通常,細菌i在經過第j輪趨向性行為、第k輪繁殖行為和第l輪遷徙行為后的位置用θi(j,k,l)來表示。
在傳統BFO算法中隨機生成旋轉操作的方向,隨機方向會導致收斂到全局最優解的速度變慢。在IBFO算法中,利用了PSO具有良好的社會信息交換能力,使旋轉行為中的方向根據全局最佳位置和每個細菌的個體最佳位置來決定,而不是隨機確定。在趨化循環中,游動方向的更新公式為

式中:φ(j)表示細菌在第j次趨向性操作中的方向;pbest為每個細菌的個體最佳位置;gbest為菌群的全局最佳位置;C1、C2為學習因子,通常設置為2;wφ為慣性權重,決定對上一個方向的繼承程度。IBFO算法的流程和具體步驟見圖5所示。
步驟1初始化參數:p、S、Nc、Ns、Nre、Ned、Ped、C(i)(i=1,2,3,…,S)、θi。其中:p為搜索空間的維度;S為細菌總數;Nc為趨化操作的代數;Ns為最大游動代數,Nc>Ns;Nre為繁殖操作的代數;Ned為遷徙操作的代數;Ped為遷徙的概率;θi為第i個細菌的位置;C(i)為旋轉方向的步長大小。初始化種群,生成隨機向量φ(j),其取值范圍為[-1,1]。

圖5 提出的IBFO算法的流程
步驟2遷徙循環:l=l+1。
步驟3繁殖循環:k=k+1。
步驟4趨向性循環:j=j+1。
對于每個細菌i(i=1,2,3,…,S):
1)計算細菌i的適應度函數O(i,j,k,l);
2)令當前最佳適應度Olast=O(i,j,k,l);
3)旋轉操作:計算旋轉方向

4)根據以下策略移動到新位置:

5)重新計算O(i,j,k,l);
6)游動操作:
①設置游動代數m=0,計數游動代數;
②當m<Ns(即沒有達到最大代數)
· 令m=m+1。
· 若適應度O(i,j,k,l)<Olast(即獲得更好的適應度)。
· 令Olast=O(i,j,k,l),并移動到該位置θi(j+1,k,l)=θi(j,k,l)+C(i)φ(j),計算新位置θi(j+1,k,l)的適應度函數值。
· 否則,令m=Ns,循環結束。
7)如果i<S,轉到下一個細菌(i+1)(即返回步驟4的1)去處理下一個細菌)。
步驟5如果j<Nc,轉步驟4,繼續趨化循環,因為細菌的生命沒有結束。
步驟6繁殖操作:
1)對于給定的k、l,計算每個細菌i經過趨化循環后的適應度值用來表示該細菌i的健康度量。健康度量衡量了其整個壽命中使用了多少營養,以及成功避免有毒物質的能力。按照健康度量升序排列細菌Ohealth(更高的適應度值意味著更低的健康值)。
2)淘汰具有較低健康值的細菌,并保留具有較高健康值的細菌進行分裂,繁殖產生的副本放置在與其父本相同的位置。
步驟7如果k<Nre,轉至步驟3。由于在這種情況下未達到指定的繁殖代數,故啟動下一輪趨化循環。
步驟8對于細菌i,以遷徙概率Ped來移動每個細菌,保持群體中細菌數量不變。即:若要淘汰一個細菌,則需將另一個細菌分散到該優化域上的隨機位置即可。如果l<Ned,則轉到步驟2;否則,結束算法。
BFO中,趨化性是一種覓食策略,細菌試圖爬到營養濃度高的地方,并避免有害物質。在傳統BFO中,趨化循環中的步長是固定不變的,這使其前期尋優速度慢且后期收斂精度低[16]。為此,本文提出了一種自適應步長,即趨化步長隨著當前適應度值的改變而變化,使其提供更好的收斂能力。對于第i個細菌,其步長C(i)表達式為

式中:ψ為大于0的常數,ji(θ)為第i個細菌的適應度函數值。如果ji(θ)趨于0,則C(i)→0;如果ji(θ)趨于變大,則C(i)→1。這意味著處于有毒物質附近的細菌具有較高的適應度值。因此,需要賦予其較大的步長來快速遷移到營養濃度較高的地方。
在Simulink環境里構建電機模型和控制系統仿真,表1為構建的PMSM模型參數。本文中,PI速度控制器的基本設計要求為峰值超調po%<3%,上升時間tr<0.02 s,穩定時間ts<0.8 s,穩態誤差ess<0.2。

表1 PMSM參數設置
對于分數階PI控制器參數,設置KP的變化范圍為0~1,KI的變化范圍為0~10,α是變化范圍為0~1的分數。
對于BFO和IBFO算法參數,設置為:S=10、
Nc=5、Ns=4、Nre=2、Ned=2、Ped=0.25、ψ=180、C1=C2=2、wφ=0.7。每種算法進行100次迭代,以獲得最優參數組合解。
首先,利用傳統梯度下降法、傳統BFO算法和提出的IBFO優化算法,根據電機模型對分數階PI速度控制系統進行參數優化,所獲得的最優參數值如表2所示。為了公平比較,速度控制器均采用分數階PI控制器。

表2 各種優化方法所獲得的最優分數階PI控制器參數
然后,將3種參數優化方法所獲得的最優參數配置到分數階PI速度控制器中。為了驗證這些參數的有效性,分別進行電機啟動和負載變化仿真,觀察控制器的性能。實驗中,設置電機啟動時的參考速度為1 000 r/min,并在t=1.5 s時對電機施加1個負載,負載轉矩為TL=10 N·m。3種PI速度控制器的電機轉速響應曲線如圖6所示。

圖6 3種參數優化方法下的PI速度控制器速度響應曲線
分析圖5發現:基于傳統梯度下降法的分數階PI控制器的控制性能最差,在電機啟動時存在較大的超調量,且穩定到參考速度的時間較長。另外,當電機轉矩發生變化時,該方法也不能較好地應對。對于經過傳統BFO參數優化后的分數階PI控制器,其在穩定性和超調量方面要明顯優于梯度下降法,但其穩定速度所需的時間依然較長。而通過本文提出的IBFO優化后的分數階PI控制器,其在啟動時獲得穩定速度所需的時間最短,且在負載變化時,對速度的影響最小,具有最好的魯棒性。
為了進一步比較3種方法優化分數階PI速度控制器的性能,進行3次同樣的實驗,分別統計速度控制的平均上升時間、峰值超調、穩定時間和穩態誤差,結果如表3所示。
通過具體的性能參數可以看出:提出的IBFO優化分數階PI控制器在各項性能方面都獲得了最佳表現,特別是在超調量和穩態誤差方面。這是因為,本文在IBFO中的適應度函數中融入了ITAE和超調量因素,并以此來獲得最佳的控制器參數。

表3 各種優化方法下的速度控制性能指標
本文提出一種改進型BFO算法用來優化PMSM中分數階PI速度控制器的3個參數,以此來提高對時變、非線性速度控制系統的控制性能,以及電機負載轉矩變化的魯棒性。將所提方法與梯度下降法、BFO方法進行比較,結果證明了所提方法在上升時間、峰值超調、穩定時間和穩態誤差等方面具有較優越的性能,也具有較高的實用價值。
本文中,速度控制器的反饋速度由傳統擴展卡爾曼濾波法估計,而反饋速度的準確性直接影響速度控制的性能。為了進一步提高PMSM控制系統的性能,未來將考慮更先進的速度估計方法,以進一步提高速度控制的準確性。