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