樊星男
(太原學院 機電與車輛工程系,山西 太原 030032)
無刷直流電機(brushless direct current motor,BLDCM)以其優(yōu)良的機電特性被廣泛應用于精細控制領域,而PI控制一直都是BLDCM重要的控制方法。對于PI參數(shù)的整定,大多需要依賴技術人員的經(jīng)驗進行調整,對技術人員的經(jīng)驗依賴性較強,常常難以滿足控制要求。
群粒子優(yōu)化算法(particle swarm optimization,PSO)是一種群智能優(yōu)化算法,具有全局最優(yōu)搜索能力,它只信賴于適應度函數(shù),不需要了解對象的全部信息,這樣即使在對象模型不確定的情況下,仍然可以根據(jù)對象的輸出情況對PI參數(shù)進行優(yōu)化。常用的適應度函數(shù)主要是基于誤差的泛函數(shù)積分,包括IAE、ITAE、ISTAE、ISE、ITSE、ISTSE,但是在使用這些適應度函數(shù)進行PI參數(shù)整定時得到的系統(tǒng)控制效果是不一樣的,它們各自側重于對系統(tǒng)某個階段或某種狀態(tài)有較好的控制效果,而很難對系統(tǒng)的整個動靜態(tài)過程有一個全面的考量。為此,本文提出了一種以系統(tǒng)動態(tài)性能指標為參考依據(jù)的適應度函數(shù),通過群粒子優(yōu)化算法對無刷直流電機調速系統(tǒng)中的PI 參數(shù)進行自動整定。仿真結果表明,通過該適應度函數(shù)尋優(yōu)獲得的PI參數(shù)具有更優(yōu)越的控制特性。
無刷直流電機在PI控制下,其系統(tǒng)框圖如圖1所示。
圖1 無刷直流電機PI控制系統(tǒng)框圖Fig.1 The block diagram of PI control system for brushless DC motor
圖1中,GPI(s)表示PI控制器的傳遞函數(shù),Gd(s)表示電機的傳遞函數(shù),R(s)表示系統(tǒng)輸入,E(s)表示系統(tǒng)誤差。
PI控制器的傳遞函數(shù)表示見公式(1)。
(1)
式中:KP表示比例系數(shù);KI表示積分系數(shù)。
無刷直流電機在忽略換相時電流變化的暫態(tài)過程情況下,其A、B、C三相電流可近似認為是兩兩導通,此時其傳遞函數(shù)表示見公式(2)。
(2)
式中:R為電機線等效電阻;L為線等效電感;KE為反電勢系數(shù);KT為電機轉矩系數(shù);J為轉動慣量;B為粘性阻尼系數(shù)。
系統(tǒng)誤差表示見公式(3)。
(3)
(4)
由公式(4)可以看到,無刷直流電機在PI控制下,其穩(wěn)態(tài)誤差為0。因此,對PI參數(shù)的調節(jié)主要針對的是對電機動態(tài)性能的調節(jié)。
如圖2所示,無刷直流電機調速系統(tǒng)采用單閉環(huán)控制,采樣時間為5 μs,主要包括電機本體、可控直流電源、PI控制器、全橋逆變器和逆變器控制器[1-2]。
當系統(tǒng)啟動后,系統(tǒng)預設轉速與電機實際轉速的差值作為PI控制器的輸入量,PI控制器根據(jù)輸入量和自身的PI參數(shù)經(jīng)計算后產(chǎn)生控制信號,控制可控直流電源的輸出電壓大小,可控直流電源的輸出電壓是全橋逆變器的輸入電壓,而全橋逆變器根據(jù)逆變器控制器產(chǎn)生的門控信號將直流電源的輸出電壓分配給電機定子上的三相繞組,使得三相繞組兩兩相通,每相導通120°電度角,每60°電度角進行一次換向,從而使電機產(chǎn)生持續(xù)的轉矩[3-4]。
圖2 BLDCM PI控制系統(tǒng)仿真圖Fig.2 The simulation diagram of PI control system for BLDCM
在仿真模型中,電機本體采用的是Simulink中的PMSM電機模型梯形波模式;全橋逆變器主要由6個場效應晶體管組成,如圖3所示。逆變器控制器采用MATLAB嵌入函數(shù)設計完成,通過讀取電機上的霍爾信號生成逆變器控制信號??刂破鞯目刂七壿嬋绫?所示,如當逆變器控制器檢測到電機ABC三相的霍爾信號為001時,控制器發(fā)出的6個門控信號為000110,表示圖3所示逆變器的場效應管Q4和Q5導通,其他場效應管截止。
圖3 逆變器組成圖Fig.3 The composition diagram of the inverter
表1 逆變器控制器控制邏輯Tab.1 The Control logic of the inverter controller
粒子群優(yōu)化算法(PSO)[5-6]是一種仿生算法,源于對鳥群捕食的行為研究,其基本思想是通過群體中個體之間的協(xié)作和信息共享來尋找最優(yōu)解。群粒子算法表現(xiàn)形式簡單,具有較好的全局搜索能力,目前已經(jīng)被廣泛應用于多參數(shù)問題的最優(yōu)解優(yōu)化問題[7]。
PSO算法可以用公式(5)所示的數(shù)學公式進行表示。
(5)
式中:i表示第i個粒子;n表示迭代次數(shù);ΔUi(n+1)表示粒子的移動距離;Ui(n)表示粒子的當前位置;ω為慣性系數(shù),范圍[0,1];c1和c2為加速因子,表示粒子移動的速度,范圍[0,2];r1和r2為[0,1]區(qū)間的隨機數(shù);Uimax表示當前粒子的歷史最佳位置;Ugmax表示所有粒子中最佳粒子的位置。
使用PSO算法進行自動尋優(yōu),可以描述為粒子個體不斷逼近食物源的過程,這個過程用數(shù)學描述就是一個計算適應度函數(shù)極小值的過程,所以在選取或者設計適應度函數(shù)時,該函數(shù)必須是具備極小值的[8]。
基于誤差的泛函積分適應度函數(shù)是在解決自動尋優(yōu)問題過程中使用非常廣泛的一類適應度函數(shù),它包括IAE、ITAE、ISTAE、ISE、ITSE和ISTSE共6個函數(shù)[9],其表示方法如表2所示。
表2 誤差泛函積分適應度函數(shù)Tab.2 The fitness functions of error functional integral
表2中e(t)表示t時刻系統(tǒng)的誤差。從表2可以看出,誤差泛函積分適應度函數(shù)主要是通過判斷誤差不同積分方式下數(shù)值的大小來評判系統(tǒng)的優(yōu)劣程度。在這種評判標準下,很容易出現(xiàn)一種問題,那就是系統(tǒng)可能會出現(xiàn)多次短時快速的波動,而由于時間短,其誤差積分值并不高。但是,這樣的系統(tǒng)并不平穩(wěn),有可能會導致出現(xiàn)整個設備的共振現(xiàn)象,對設備危害較大。
由前文1.1知道,使用PI控制的無刷直流電機系統(tǒng)對于階躍響應的穩(wěn)態(tài)誤差為零,因此在設計適應度函數(shù)時只需要考慮系統(tǒng)的動態(tài)性能。為此本文以系統(tǒng)動態(tài)性能指標為直接評價參數(shù),提出了一種新的適應度函數(shù),其數(shù)學表示見公式(6)。
Y=K1F+K2S
(6)
式中:F(Fast)用來描述系統(tǒng)的快速性;S(Stability)用來描述系統(tǒng)的相對穩(wěn)定性;K1、K2分別表示F、S的權重。
系統(tǒng)動態(tài)性能中的快速性和相對穩(wěn)定性往往是相悖的。通常系統(tǒng)的快速性越強,產(chǎn)生的超調量和振蕩次數(shù)就越大,也就是相對穩(wěn)定性越差;而系統(tǒng)的相對穩(wěn)定性越好,系統(tǒng)的快速性就會越差。所以電機的控制中總是需要根據(jù)實際情況在快速性和穩(wěn)定性這二者之間進行權衡,不斷修改控制參數(shù)從而達到一個相對最佳的控制策略。通過修改K1、K2可以改變F、S在整個公式中的權重,從而修改自動尋優(yōu)的側重方向,比如提高K1的值可以讓尋優(yōu)向快速性方面傾斜。這樣就可以在尋優(yōu)過程中更加方便快速地獲得理想PI參數(shù),同時也將PI整定過程變得更加簡單有效。
F的數(shù)學表示見公式(7)。
F=tr+ts
(7)
式中:tr表示系統(tǒng)的上升時間;ts表示系統(tǒng)的調節(jié)時間。從公式(7)可以看出,F(xiàn)值越小,電機轉速上升得越快。
S的數(shù)學表示見公式(8)。
(8)
式中:Mi表示系統(tǒng)在進入穩(wěn)態(tài)之前的極值;N表示極值個數(shù);I為系統(tǒng)運行的預設轉速。從公式(8)可以看出,S值越小,電機在進入穩(wěn)態(tài)前的波動幅度和波動次數(shù)越小,電機運行越平穩(wěn)。
圖4 基于PSO算法的PI整定流程圖Fig.4 The flow chart of PI tuning based on PSO algorithm
基于群粒子優(yōu)化算法的PI整定在BLDCM調速中的應用仿真系統(tǒng)采用了MATLAB函數(shù)與Simulink模型相結合的仿真方法,其中MATLAB函數(shù)主要進行PSO算法的計算,Simulink模塊主要進行BLDCM調速系統(tǒng)仿真。仿真流程如圖4 所示,BLDCM調速系統(tǒng)運行完成后,將采樣到的數(shù)據(jù)保存到MATLAB的Workspace中,然后PSO算法讀取這些數(shù)據(jù)進行分析并產(chǎn)生新的PI參數(shù),如此反復,直到獲得最優(yōu)PI參數(shù)。
設置Simulink模塊仿真時長為0.2 s,目標轉速為3 000 r/min;Simulink模塊中的電機模型選用的是MATLAB軟件中自帶的power_brushless DC motor仿真實例中的電機模型,該電機模型的主要參數(shù)如下:
1)電機線電阻r=5.7 Ω;2)電機線電感l(wèi)=0.017 H;3)轉動慣量J=0.000 8 kg·m2;4)粘性阻尼系數(shù)B=0.001 N·m·s。
在該實例中,MATLAB軟件給出的PI參數(shù)為KP=0.013,KI=16.61。
設置群粒子算法的最大迭代數(shù)為100,粒子種群數(shù)量20,KP和KI的取值范圍均為[0,100];分別設置適應度函數(shù)中的權重因子K1=K2=1和K1=5,K2=1進行兩次尋優(yōu)。
分別使用基于誤差的泛函積分的6個適應度函數(shù)和本文適應度函數(shù),使用PSO算法進行尋優(yōu)計算。考慮到尋優(yōu)算法可能存在局部最優(yōu)解的問題,分別對以上適應度函數(shù)進行多次獨立的尋優(yōu)計算并選取最優(yōu)解作為最終尋優(yōu)結果,如表3所示。
表3中,本文(1)適應度函數(shù)的權重因子K1=K2=1,本文(2)的適應度函數(shù)的權重因子K1=5,K2=1。
表3 各適應度函數(shù)最優(yōu)結果Tab.3 The optimal results of each fitness function
從表3可以看出,使用本文適應度函數(shù)尋優(yōu)得到最優(yōu)解分別為KP=0.006 0,KI=12.058 0和KP=0.009 0,KI=19.267 4,這兩個結果最接近于MATLAB軟件給出的PI值,這也驗證了本文適應度函數(shù)的可行性。
使用表3中不同適應度函數(shù)尋優(yōu)得到的最優(yōu)參數(shù)仿真電機調速過程,波形見圖5和圖6。
圖5 誤差泛函積分適應度函數(shù)最優(yōu)結果Fig.5 The optimal results of error functional integral fitness functions
圖6 本文適應度函數(shù)最優(yōu)結果Fig.6 The best optimalresults of fitness function in this paper
從圖5可以看出,使用誤差積分泛函適應度函數(shù)得到的PI控制器在調節(jié)電機轉速時電機的快速性很好,但是相對穩(wěn)定性較差,在調速過程中出現(xiàn)了多次快速振動。
從圖6可以看出,使用本文適應度函數(shù)尋優(yōu)得到的PI控制器在調節(jié)電機轉速的過程中快速性稍差,但是相對穩(wěn)定性更好,整個動態(tài)過程更加平滑穩(wěn)定。
圖6中實線為權重因子K1=K2=1對應的曲線,虛線為權重因子K1=5,K2=1對應的曲線,比較這兩條曲線可以看出,通過增大適應度函數(shù)中F(Fast)的權重因子所得到的最優(yōu)PI參數(shù)可以有效提高系統(tǒng)的快速性。
在0.1 s處向電機施加F=3 N·m的負載,仿真波形如圖7所示。從圖中可以看出,施加負載后系統(tǒng)能夠迅速地進行調節(jié)并恢復到預設轉速,具有良好的抗干擾性。
圖7 本文適應度函數(shù)施加負載后仿真波形圖Fig.7 The optimalresults of fitness function in this paper after loading
通過以上仿真比較和分析可以看出,本文提出的新的適應度函數(shù),在無刷直流電機調速系統(tǒng)PI參數(shù)整定方面的應用是可行的,使用該適應度函數(shù)所得到的PI參數(shù)最接近于MATLAB給出的最優(yōu)PI參數(shù),其整體控制效果也明顯優(yōu)于誤差積分泛函適應度函數(shù),并且在調節(jié)系統(tǒng)快速性、相對穩(wěn)定性和穩(wěn)態(tài)誤差方面具有更加靈活的可操作性。