高寬,馬鈞華
(浙江大學(xué)電氣工程學(xué)院,浙江杭州310027)
在精度較高的伺服控制領(lǐng)域,電機轉(zhuǎn)矩的平穩(wěn)性是影響系統(tǒng)控制性能的重要因素。實際電機,由于材料、制造工藝等因素或結(jié)構(gòu)的特殊性,單位電流產(chǎn)生的轉(zhuǎn)矩在不同的轉(zhuǎn)子位置角下不盡相同,運行時會有轉(zhuǎn)矩脈動,尤其是在低速時這種轉(zhuǎn)矩脈動引起的速度波動更加明顯。
本文提出了一種通過自學(xué)習(xí)控制的方式,采用迭代算法獲取修正曲線,對電機電壓進行按位置角的補償,從而抑制轉(zhuǎn)矩脈動。
針對轉(zhuǎn)矩脈動問題,已有一些國內(nèi)外學(xué)者做過相關(guān)研究,并且也取得了一定效果[1-3]。但是許多控制方法都是建立在電機精確的數(shù)學(xué)模型基礎(chǔ)上的,這就限制了在一些難以獲得精確數(shù)學(xué)模型的電機上的應(yīng)用。本文研究的方法一定程度上克服了這個缺點。
對于理想的電機,單位轉(zhuǎn)矩電流產(chǎn)生的轉(zhuǎn)矩是恒定的。實際的電機因為非理想的對稱狀態(tài),恒定的轉(zhuǎn)矩電流也會產(chǎn)生轉(zhuǎn)矩脈動,而且脈動是與轉(zhuǎn)子位置角相關(guān)且呈周期性的。
本文論述的控制方法并不依賴于電機的數(shù)學(xué)模型,因此可將電機系統(tǒng)的實際模型看作是一個“黑匣子”,我們只關(guān)心其輸入與輸出。結(jié)合實際,我們首先需要對這個“黑匣子”的輸入輸出特性有個定性的了解?!昂谙蛔印币噪姍C電壓或電流作為輸入,以轉(zhuǎn)速或轉(zhuǎn)矩作為輸出,則輸入輸出呈正相關(guān)性,這個特性是本文所研究的算法的基礎(chǔ)。
基于上述思想,希望通過自學(xué)習(xí)控制的方式,找出輸入輸出的具體關(guān)系,生成一個修正函數(shù),對輸入量(電壓或電流)進行修正,使輸出量(轉(zhuǎn)速或轉(zhuǎn)矩)恒定,從而實現(xiàn)電機的平穩(wěn)運行。
本文研究的算法主要包括自學(xué)習(xí)控制和迭代法。
自學(xué)習(xí)控制是希望系統(tǒng)能依靠自身的學(xué)習(xí)功能來認識被控對象的特性,并相應(yīng)地對系統(tǒng)輸入進行調(diào)整,從而得到期望的輸出特性。
自學(xué)習(xí)控制的目標是找到一個理想的輸入特性曲線,使被控對象輸出一個符合期望的結(jié)果,即對期望響應(yīng)Yd(t),找到控制輸入Uk(t),使系統(tǒng)響應(yīng)Yk(t)在k →∞時有Yk(t)→Yd(t),其中k為學(xué)習(xí)次數(shù)。
自學(xué)習(xí)控制系統(tǒng)的結(jié)構(gòu)如圖1所示。其控制過程如下:系統(tǒng)輸入U(t),檢測系統(tǒng)響應(yīng)Y(t),經(jīng)過自學(xué)習(xí)控制模塊后得到修正曲線,將其存入存儲器,然后對系統(tǒng)輸入進行修正,得到修正后的輸入Uk(t),系統(tǒng)響應(yīng)為Yk(t),再將Yk(t)輸入自學(xué)習(xí)模塊,如此不斷學(xué)習(xí),最終得到期望的系統(tǒng)響應(yīng)Yd(t)。此自學(xué)習(xí)控制與下面2.2 節(jié)介紹的迭代法共同構(gòu)成迭代學(xué)習(xí)控制算法[4]。
圖1 自學(xué)習(xí)控制系統(tǒng)Fig.1 Self-learning control system
迭代法是一種逐次逼近法,其基本原理是不斷用變量的舊值遞推得到新值。迭代法要取得成功,關(guān)鍵是找到一個合適的變量遞推函數(shù),即迭代函數(shù),使得變量能收斂于穩(wěn)定值[7]。
一般地,對于遞增函數(shù)y=f(x),欲使y=a,若對自變量x作如下迭代:
其中yk=f(xk),取合適的γ值,可使迭代收斂快而平穩(wěn)。選定γ值后,若xk和yk收斂,則對式(1)兩邊取極得
對于電機系統(tǒng),電機轉(zhuǎn)速n 與電壓大小U 成正比,即n 與U 存在遞增的函數(shù)關(guān)系n=f(U)。因此可作猜想:運用上述迭代方法,轉(zhuǎn)速n可收斂于穩(wěn)定值。
將上述算法具體應(yīng)用到電機轉(zhuǎn)矩脈動的抑制中去,算法流程圖如圖2所示。
圖2 算法流程圖Fig.2 Flow chart of the algorithm
本算法主要通過自學(xué)習(xí)方式獲得電機的脈動轉(zhuǎn)速與電機轉(zhuǎn)子位置角θ(電角度)之間的關(guān)系式n=g(θ),然后利用此關(guān)系式,采用迭代法對電機電壓進行按位置角的前饋補償,使電機轉(zhuǎn)速趨于平穩(wěn)。算法具體執(zhí)行有3個階段,分別如下。
第1 階段:利用轉(zhuǎn)速PID 調(diào)節(jié)器給定轉(zhuǎn)速運行。本文實驗電機系統(tǒng)采用調(diào)壓調(diào)速,采集電壓斬波PWM 的占空比,多次采樣取平均值得到平均占空比,這可以反映給定轉(zhuǎn)速下的平均電壓第1 階段結(jié)束后不再使用轉(zhuǎn)速PID 調(diào)節(jié)器。
第2 階段:使用第1 階段計算得到的平均占空比(-D),使電機在平均電壓(-U)下運行。采集電機實際轉(zhuǎn)速n與對應(yīng)的轉(zhuǎn)子位置角θ,得到兩者之間的關(guān)系式n=g1(θ)。
第3 階段:利用第2 階段獲得的關(guān)系式n=g1(θ)對平均占空比(-D)按位置角進行第1次修正,使電機按與位置角關(guān)聯(lián)的占空比D=h1(θ)運行。根據(jù)修正后的運行結(jié)果可得到新的關(guān)系式n=g2(θ),然后對占空比進行第2次修正,得到D=h2(θ)。以此類推,重復(fù)迭代。每次迭代后刷新得到n=gk(θ)和D=hk(θ),用數(shù)組來存放。迭代次數(shù)可由程序設(shè)置,也可以按轉(zhuǎn)速n的脈動情況來自動控制。
實驗在一臺永磁同步電機上進行,電機額定線電壓220 V,額定轉(zhuǎn)速3 000 r/min,極對數(shù)為4,光電編碼器線數(shù)為2 500。由于實驗研究的是電機的低速特性,為了增大電壓PWM 占空比的分辨率,提高實驗精度,實驗時特意降低電壓,設(shè)定電機驅(qū)動部分的逆變電路直流側(cè)母線電壓UZK=24 V。設(shè)定功率開關(guān)IGBT的開關(guān)頻率為7.5 kHz。
為了模擬本身具有大轉(zhuǎn)矩脈動的電機特性,本實驗電機按照無刷直流電機三相六狀態(tài)的方式運行,且特別修改了無刷電機的觸發(fā)角(正常情況下,換相完成瞬間定子磁勢方向超前永磁體轉(zhuǎn)子磁勢120°(電角度);本實驗修改這個角度為60°(電角度),使得電機本身的單位電流轉(zhuǎn)矩呈現(xiàn)明顯的位置相關(guān)性(定子磁勢與永磁體轉(zhuǎn)子磁勢叉積的大小反映了電磁轉(zhuǎn)矩的大小)[8]。為了消除外界隨機的轉(zhuǎn)矩脈動影響,實驗中安置了一個與被試電機相同的同軸相接的電機做發(fā)電機,用于產(chǎn)生負載轉(zhuǎn)矩,即使這個負載轉(zhuǎn)矩有脈動,也是與位置角成確定關(guān)系的,可以合并到被試電機的轉(zhuǎn)矩脈動中去,故不影響本實驗方法的有效性。
實驗數(shù)據(jù)均采用標幺值形式,轉(zhuǎn)速基值為電機額定轉(zhuǎn)速,電角度基值為2π。
給定轉(zhuǎn)速n=0.01(標幺值),用最優(yōu)參數(shù)的PID調(diào)節(jié)器控制的電機轉(zhuǎn)速波形和轉(zhuǎn)子位置波形分別如圖3、圖4所示。從圖3中可以明顯看到轉(zhuǎn)速在1 個電角度周期內(nèi)產(chǎn)生了6 次脈動,這對應(yīng)著電機的6次換相。
圖3 轉(zhuǎn)速波形Fig.3 Speed waveform
圖4 轉(zhuǎn)子位置波形Fig.4 Rotor position waveform
轉(zhuǎn)速圍繞給定轉(zhuǎn)速n=0.01(標幺值)脈動,轉(zhuǎn)速最大值為0.013 431(標幺值),最小值為0.006 822(標幺值)。定義轉(zhuǎn)速脈動比為
則最大脈動比為34.31%。實驗中利用傳統(tǒng)的PID 調(diào)節(jié)器,選取最優(yōu)參數(shù)依然難以使電機轉(zhuǎn)速變得平穩(wěn)。接下來具體應(yīng)用本文算法進行實驗。
第1階段:給定轉(zhuǎn)速n=0.01(標幺值),測得平均占空比平均電壓
圖5 脈動轉(zhuǎn)速與轉(zhuǎn)子位置角關(guān)系曲線Fig.5 Relation between ripple speed and rotor position electrical angle
第3階段:利用關(guān)系式n=g1(θ)求得轉(zhuǎn)速平均值nˉ=0.010 3(標幺值),與給定轉(zhuǎn)速n=0.01(標幺值)基本一致,可見轉(zhuǎn)速是圍繞給定轉(zhuǎn)速脈動的,可將轉(zhuǎn)速平均值nˉ作為平穩(wěn)轉(zhuǎn)速的期望值。由于轉(zhuǎn)速與電壓大小關(guān)系符合迭代法的條件,參照式(1),且實驗證明,取γ=1 較優(yōu),于是對任意位置角θ下可作如下迭代:
其實質(zhì)是根據(jù)轉(zhuǎn)速n 偏離平均值nˉ的比例關(guān)系對電壓大小進行修正。相應(yīng)的PWM占空比形式為和Dk(θ)的值根據(jù)當前轉(zhuǎn)子位置角θ分別從存放關(guān)系式n=gk(θ)和D=hk(θ)的數(shù)組中取得。每次迭代后需刷新關(guān)系式n=gk(θ)和D=hk(θ)。下面看一下算法對抑制轉(zhuǎn)速脈動的效果。
圖6給出了經(jīng)過5次,20次,50次迭代后的轉(zhuǎn)速波形以及經(jīng)過50次迭代后的轉(zhuǎn)子位置波形。
圖6 迭代后轉(zhuǎn)速及轉(zhuǎn)子位置波形圖Fig.6 Speed and rotor position waveforms after iteration
轉(zhuǎn)速脈動抑制效果與迭代次數(shù)的關(guān)系見表1。
表1 轉(zhuǎn)速脈動抑制效果Tab.1 Result of reducing speed ripple
表1中,“*”為迭代次數(shù)0表示未經(jīng)算法控制的原始轉(zhuǎn)速數(shù)據(jù)。
圖7給出了電機轉(zhuǎn)速的最大脈動比與迭代次數(shù)的關(guān)系曲線。
圖7 最大脈動比與迭代次數(shù)的關(guān)系Fig.7 Relation between maximum ripple ratio and iterations
從以上實驗結(jié)果中可以直觀地看到隨著迭代次數(shù)的增加,電機轉(zhuǎn)速脈動逐漸減小。經(jīng)過50 次迭代后,最大脈動值從最初的0.003 431(標幺值)降低到0.000 577(標幺值),最大脈動比從最初的34.31%降低到5.77%,轉(zhuǎn)速脈動得到了很好的抑制,轉(zhuǎn)速波形基本平穩(wěn)。觀察比較圖4 和圖6 的轉(zhuǎn)子位置波形,后者線性度更好,更加平滑,說明電機運行更加平穩(wěn)。實驗表明,經(jīng)過10~20 次迭代后轉(zhuǎn)速平穩(wěn)度即可令人滿意,在轉(zhuǎn)速n=0.01(標幺值)下,1 個電角度周期約為0.5 s(極對數(shù)為4),完成10~20 次迭代約需5~10 s。
經(jīng)過多次迭代,待轉(zhuǎn)速平穩(wěn)后測得占空比與轉(zhuǎn)子位置角的關(guān)系如圖8所示。
圖8 占空比與轉(zhuǎn)子位置角關(guān)系曲線Fig.8 Relation between duty ratio and rotor position electrical angle
按此關(guān)系對電壓進行修正即可獲得較平穩(wěn)的轉(zhuǎn)速??梢詫⒋岁P(guān)系存入存儲器,以后即可直接調(diào)用來對電壓進行修正。根據(jù)前文論述,利用傳統(tǒng)的PID 調(diào)節(jié)器難以使得轉(zhuǎn)速變得平穩(wěn),下面我們對PID 調(diào)節(jié)器的輸出進行修正,改進后的控制結(jié)構(gòu)圖如圖9所示。
圖9 PID調(diào)節(jié)器輸出修正的結(jié)構(gòu)圖Fig.9 Structure diagram of the improved PID regulator
對轉(zhuǎn)速PID 調(diào)節(jié)器的輸出按照圖8 所示曲線的規(guī)律進行修正。可以將圖9 虛線框內(nèi)的結(jié)構(gòu)看作一個“新電機”,這個“新電機”具有良好的控制特性,即單位電流轉(zhuǎn)矩不隨位置角變化。在PID 參數(shù)最優(yōu)時“新電機”的轉(zhuǎn)速曲線如圖10所示。
圖10 “新電機”的轉(zhuǎn)速曲線Fig.10 Speed waveform of the“new motor”
“新電機”的最大脈動比為5.93%,相比改進前的最大脈動比34.31%,“新電機”的轉(zhuǎn)速特性取得了明顯的改善。
為考察這一修正曲線的通用性,觀察轉(zhuǎn)速n=0.005(標幺值)時的實驗結(jié)果,如圖11所示。
圖11 n=0.005(標幺值)時的轉(zhuǎn)速波形比較Fig.11 Comparison of speed waveforms when n=0.005(pu)
由圖11可知,運用了PID調(diào)節(jié)器輸出修正之后,n=0.005(標幺值)運行時的最大轉(zhuǎn)速脈動比也由56.38%下降到9.45%,轉(zhuǎn)速脈動同樣得到了很好的抑制。實驗證明,本文算法對低速下電機轉(zhuǎn)速脈動的抑制具有通用性,對不同電機不同轉(zhuǎn)速下的轉(zhuǎn)速脈動抑制均具有良好的效果。
本文提出的迭代學(xué)習(xí)控制算法,不需要獲得電機系統(tǒng)精確的數(shù)學(xué)模型,僅需憑借系統(tǒng)輸入輸出的正相關(guān)性,即可對系統(tǒng)輸出特性進行有效控制。實驗證明該算法對低速下電機轉(zhuǎn)矩脈動的抑制具有較好的效果,主要體現(xiàn)在兩方面:1)較快的收斂速度。只需經(jīng)過10~20次迭代即可取得令人滿意的結(jié)果;2)較高的平穩(wěn)度。從實驗數(shù)據(jù)中可以看出,經(jīng)過算法控制后,轉(zhuǎn)速脈動得到了大幅度的抑制,電機運行非常平穩(wěn)。
最后,對本文算法可作進一步猜想:該算法不僅對低速下電機轉(zhuǎn)矩脈動的抑制有效,對其他輸入輸出呈正相關(guān)性的系統(tǒng)的控制同樣有效。
[1]Qian Weizhe,Panda S K,Xu J X. Speed Ripple Minimization in PM Synchronous Motor Using Iterative Learning Control[J].IEEE Transactions on Energy Conversion,2005,20(1):53-61.
[2]張猛,李永東,趙鐵夫,等.一種減小變頻空調(diào)壓縮機低速范圍內(nèi)轉(zhuǎn)速脈動的方法[J].電工技術(shù)學(xué)報,2006,21(7):99-104.
[3]儲劍波,胡育文,黃文新,等.一種抑制永磁同步電機轉(zhuǎn)速脈動的方法[J].電工技術(shù)學(xué)報,2009,24(12):43-48.
[4]李葉松,董瑋,秦憶.運動控制系統(tǒng)自學(xué)習(xí)問題研究[J].華中科技大學(xué)學(xué)報,2001,29(1):66-69.
[5]石成英,林輝.迭代學(xué)習(xí)控制的研究與應(yīng)用進展[J].測控技術(shù),2004,23(2):1-7.
[6]胡玉娥,翟春艷.迭代學(xué)習(xí)控制現(xiàn)狀與展望[J].自動化儀表,2005,26(6):1-4.
[7]易大義,沈云寶,李有法.計算方法[M].杭州:浙江大學(xué)出版社,2002.
[8]賀益康,許大中.電機控制[M].杭州:浙江大學(xué)出版社,2010.