權 曉,余紅英,韋嘯成
(1.中北大學 電氣與控制工程學院,太原 030051;2.寧波諾丁漢大學 理工學院,浙江 寧波 315100)
永磁同步電機在運行時需要轉子位置信息參與控制[1-2]。一般而言,采用外部傳感器可以實現(xiàn)轉子位置的測量;此外還可以通過電機運行參數(shù)來進行轉子位置估計。直接計算法、開環(huán)磁鏈法和反電勢觀測法可以實現(xiàn)對轉子位置的直接計算,但是上述方法依賴電機參數(shù),并且易受外部噪聲和測量噪聲干擾[3-4]。采用高頻和低頻注入的主動探測方法雖然精度較高,但是控制方式復雜,對驅動器和電機本身也有特殊的要求,通用性較差[1]。
本文提出一種基于遺傳算法優(yōu)化小波神經網絡的永磁同步電機轉子位置估計方法,采用訓練后的小波神經網絡對永磁同步電機運行參數(shù)進行動態(tài)識別,并最終估算電機轉子位置。同時針對小波神經網絡初始權值和閾值選取易陷入局部極值以及訓練收斂較慢的問題,引入遺傳算法對小波神經網絡進行優(yōu)化。仿真和實驗表明,本文提出的方法能夠有效對轉子位置進行估計,訓練速度優(yōu)于傳統(tǒng)小波神經網絡,轉子位置估計結果精度較好并且系統(tǒng)擁有較強的魯棒性。
永磁同步電機的電壓方程為[2]
(1)
式中,vd、vq,id、iq分別為電機d軸和q軸的電壓和電流,Ld、Lq為d軸和q軸的電感,ωr為轉子旋轉角速度,Rs為繞組電阻,ψf為轉子磁鏈。對于d軸和q軸的電壓和電流有
(2)
式中,θ為電角度形式的轉子位置,vα、vβ,iα、iβ分別為電機α軸和β軸的電壓和電流。可通過求解式(2)中θ來獲得轉子實時位置[1],其一般解為
(3)
然而,上述過程依賴電機參數(shù)和角速度信息,計算量大且結果易受測量噪聲干擾,最終計算得出的轉子位置信息精度和魯棒性較差。
由式(3)可以看出,轉子位置θ和α、β軸電壓電流存在映射關系。因此可以通過構造一個符合電壓電流-轉子位置映射關系的函數(shù)f,來實現(xiàn)轉子位置估計[5][7]。
神經網絡是一種通過學習和多次迭代訓練實現(xiàn)對任意非線性映射進行近似擬合的方法。因此可以通過神經網絡來構造前述函數(shù)f從而實現(xiàn)對三相電壓電流與轉子位置非線性關系的逼近。然而,傳統(tǒng)BP神經網絡存在學習收斂慢、易陷入局部極值點等問題。小波神經網絡具有能逼近非線性連續(xù)函數(shù)、時頻域分辨率高和訓練收斂快的優(yōu)勢,比傳統(tǒng)BP神經網絡更適用于此類場合[6-7]。
小波神經網絡的網絡拓撲包括輸入層、隱含層和輸出層三大主要結構,其網絡拓撲圖如圖1所示。
圖1 小波神經網絡拓撲
在圖1中,x1,x2,…,xM是輸入層各節(jié)點的輸入數(shù)據(jù);Wj,i是輸入層節(jié)點到隱含層節(jié)點的權值;ψ(x)為隱含層節(jié)點的激活函數(shù),網絡性能與所采用的激活函數(shù)密切相關;aj、bj為第j個隱含層節(jié)點的小波伸縮尺度因子和平移尺度因子;wk,j是隱含層到輸出層節(jié)點的權值。通過多次訓練后,上述參數(shù)會隨著訓練而達到最優(yōu)化,從而使得網絡構造的函數(shù)f(x)能夠最大程度逼近訓練樣本的輸入輸出映射關系。
構建一個以三相線電壓、線電流為輸入,以轉子位置電角度θ為輸出的六輸入單輸出小波神經網絡[7]。網絡采用單隱含層結構,其中輸入層有6個節(jié)點,隱含層選取10個節(jié)點,輸出層有1個節(jié)點,其網絡拓撲圖如圖2所示。
圖2 用于轉子位置估計的小波神經網絡
選取在時域和頻域中具有優(yōu)異局部化特性的墨西哥帽小波函數(shù)作為隱含層的激活函數(shù)[6],其表達式為
(4)
則隱含層輸入函數(shù)為
(5)
單一隱含層節(jié)點j輸出為
(6)
輸出層采用sigmoid函數(shù),其表達式為
(7)
則最終輸出的轉子位置表達式為
(8)
采用最陡梯度下降法來對小波神經網絡進行訓練。構建網絡目標函數(shù)J為
(9)
隱含層輸入權值調整公式為
(10)
輸出層權值調整公式為
(11)
閾值調整公式為
(12)
伸縮尺度因子調整公式為
(13)
平移尺度因子調整公式為
(14)
在式(10)到式(14)中, 為網絡學習速率。根據(jù)上述推導,可以得到小波神經網絡的訓練步驟。
(1)準備足夠的樣本,樣本應該包含在某時刻下永磁同步電機的三相電壓、電流數(shù)據(jù)以及對應轉子位置信息;
(2)對網絡參數(shù)進行初始化;
(3)選取樣本輸入數(shù)據(jù),將訓練樣本輸入網絡,得到網絡輸出;
(4)根據(jù)網絡參數(shù)更新公式,計算并更新網絡各部分參數(shù);
(5)重復(3)、(4)直至樣本訓練完成。
基于以上訓練步驟,該小波神經網絡能自行調節(jié)相關參數(shù),使得神經網絡達到辨識的最佳狀態(tài)。然而,上述訓練方法存在一定的缺陷:網絡參數(shù)初值設置的好壞直接影響了網絡最終的逼近能力,同時隨機初始化的初值在訓練時易陷入局部最小值,造成網絡訓練收斂慢甚至不收斂。若直接采用該算法來對永磁同步電機轉子位置進行估計,得到的輸出結果在實際應用中往往不理想[8-9]。
遺傳算法的主要思想是將需要求解的問題參數(shù)進行編碼,形成可以進行遺傳操作的“染色體”群體;在經過多次遺傳操作迭代后得到最終“生存”的個體。該個體就是所求問題的最優(yōu)解[9]。
從上述描述可以看出,遺傳算法的求解過程是通過群體搜索來完成,不依賴求解過程的梯度信息,故不存在陷入局部最小值的問題,在面臨高度非線性問題時遺傳算法具有更優(yōu)越的適應性。
采用遺傳算法對小波神經網絡進行優(yōu)化主要分為兩步,第一步為初次求解,即采用遺傳算法完成網絡參數(shù)初步確定;第二步為二次優(yōu)化,即在初次求解的參數(shù)基礎上,采用前述梯度下降法來對網絡進行進一步訓練[10]。其主要流程圖如圖3所示。
圖3 遺傳優(yōu)化小波神經網絡訓練流程
主要步驟如下:
(1)編碼操作。對aj、bj、wj,k、wj和t參數(shù)進行編碼。每一串編碼代表一個獨立個體,通過隨機生成若干個個體而形成初始種群。
已知構建的網絡輸入層有6個節(jié)點,隱含層有10個節(jié)點,輸出層有1個節(jié)點,則單個個體編碼長度S為
S=Swji+Saj,bj+Swkj+St= 6×10+(10+10)+10×1+1=91
(15)
其中,Swji為隱含層輸入權值編碼長度,Saj,bj為平移和伸縮尺度因子編碼長度,Swkj為隱含層輸出權值編碼長度,St為閾值編碼長度。
(2)構造適應度函數(shù),已知式(9)為小波神經網絡的最小化目標函數(shù),則可構造適應度函數(shù)為
f=1/J
(16)
即網絡最小化目標函數(shù)越小,網絡估計誤差越小,個體適應度越強,適應度差的個體將會在遺傳中被淘汰。
(3)遺傳操作主要包括:選擇操作、交叉操作和變異操作。上一代個體通過遺傳操作來生成下一代個體。
選擇操作:選擇操作采用遺傳算法常用的比例選擇算子,即根據(jù)每個個體的適應度來決定某個個體的選中概率,單個個體選中概率p可表示為
(17)
式(17)中,N為當代個體總數(shù)。
交叉操作:交叉操作通過對兩個染色體不同基因位點的交換來衍生出兩個下一代個體。兩個染色體ai和aj在基因位點k的交叉操作為
(18)
式(18)中R為[0,1]之間的隨機數(shù)。
變異操作:通過變異讓某些基因位點在遺傳中發(fā)生突變,使得進化的概率大大增加。染色體ai在基因位點j上的變異操作為
(19)
(4)計算每一個個體的適應度函數(shù),并執(zhí)行遺傳操作產生下一代個體。
(5)當進化到達指定代數(shù)后,將最后一代最優(yōu)個體進行解碼,還原出網絡參數(shù)作為小波神經網絡的初始參數(shù),隨后進行二次優(yōu)化[10]。
仿真電機參數(shù)基于某F35型42極36槽的外轉子永磁同步電機,該電機繞組電阻為68.9 mΩ,電感為25.4 μH,額定轉速為2300 r/min,額定功率為3.5 kW,額定工作電壓為80 V。
首先執(zhí)行遺傳算法從而對網絡初值進行選取。初始種群數(shù)量為15,最大遺傳代數(shù)為100。
圖4為遺傳算法輸出的遺傳代數(shù)-適應度之間的關系。隨著種群的進化,適應度不斷上升,在58代以后適應度趨于穩(wěn)定,此時可認為種群已經進化至當前最優(yōu),可篩選最優(yōu)個體參數(shù)作為網絡的初始參數(shù)進行進一步網絡訓練。
圖4 個體進化與適應度關系
為了使得該算法適應不同工況,采用100 r/min至3000 r/min轉速區(qū)間內多個轉速及多個負載工況的樣本數(shù)據(jù)進行訓練。最后對2000 r/min工況進行驗證。該工況輸入后其中2個隱含層節(jié)點輸出如圖5(a)所示,圖中隱含層節(jié)點1的輸出已經基本反映了轉子位置的周期性變化趨勢。由圖5(b)、圖5(c)可以看出,經過濾波后的網絡輸出能夠較好地估計永磁同步電機轉子位置信息,估計誤差較小,僅在進入下一個周期時由于電角度由360度至0度跳變引起較大誤差。
圖5 轉子位置估計輸出
為了驗證該網絡的魯棒性,給定一轉速從2000 r/min突然跌落到1000 r/min的樣本數(shù)據(jù),并記錄網絡輸出與真實轉子位置之間的誤差。根據(jù)圖6(b)的誤差曲線可以看出,僅在轉速突變瞬間由于系統(tǒng)瞬態(tài)變化較快造成估計誤差增大,網絡輸出依舊能夠精確估計轉子位置信息,轉速變化前后估計誤差接近。因此該系統(tǒng)具有較好的動態(tài)響應性能與較高的魯棒性。
圖6 轉速突變下轉子位置估計情況
為了評價所提出網絡的性能,將所提出的方法與傳統(tǒng)方法進行對比。由圖7(a)可知,在采用相同樣本對網絡進行訓練的前提下,經過遺傳優(yōu)化的小波神經網絡的訓練收斂速度明顯優(yōu)于未經優(yōu)化的小波神經網絡。經過遺傳優(yōu)化的小波神經網絡在迭代訓練30次左右已經趨于穩(wěn)定,而未經過優(yōu)化的小波神經網絡則需要迭代到60次以后才趨于穩(wěn)定。同時由圖7(b)可以看出,經過遺傳優(yōu)化的小波神經網絡估計結果誤差更小,性能優(yōu)于傳統(tǒng)的小波神經網絡。
圖7 網絡性能對比
通過均方根誤差(RMSE)、均方誤差(MSE)來對三種網絡估計結果進行評價。從估計誤差來看,雖然三種算法均能正確估計轉子位置,顯然經過遺傳算法優(yōu)化的小波神經網絡具有更優(yōu)異的估計效果。
表1 不同算法模型性能對比
為了驗證本文提出網絡實際效果,采用基于TI公司雙核DSP TMS28377D的控制平臺來運行該網絡。為了保證運行速度,DSP的兩個核心被分別用于執(zhí)行矢量控制算法以及神經網絡算法。網絡參數(shù)已經被預先訓練完成并寫入FLASH ROM中,在實際運行時DSP僅需要完成對網絡的計算和輸出。系統(tǒng)控制框圖如圖8所示。
圖8 基于TMS32F28377的電機控制平臺
圖9記錄了編碼器輸出和轉子位置估計結果。雖然受到電流采樣噪聲的影響,最終估計結果帶有一定噪聲干擾,但是其仍然在實驗中表現(xiàn)出較為良好的估計效果,轉子位置估計結果精度較高。
圖9 控制平臺轉子位置估計輸出
針對傳統(tǒng)無位置傳感器算法的諸多缺陷,本文提出一種基于遺傳算法優(yōu)化小波神經網絡的永磁同步電機轉子位置估計方法。利用遺傳算法對小波神經網絡的初值進行優(yōu)化,有效避免了小波神經網絡初始權值和閾值選取易陷入局部極值、訓練收斂慢的問題。在經過遺傳算法初始化的初值基礎上,對小波神經網絡進行針對性訓練。最后采用訓練后的小波神經網絡對永磁同步電機運行狀態(tài)進行動態(tài)識別,并最終估算出電機轉子位置。仿真和實驗均表明,本文提出的小波神經網絡能夠有效對轉子位置進行估計,所得到的估計結果精度較好并且系統(tǒng)擁有較強的魯棒性。