楊海燕,蘭寶華
(1. 福建工程學院計算機與信息科學系, 福建 福州 350014;2. 深圳市賽為智能股份有限公司, 深圳 518000)
無刷直流電動機(BLDCM)由于利用了電子換向器取代了機械電刷和機械換向,具有直流電動機優(yōu)秀的線性機械特性,如運行效率高、調(diào)速性能好等諸多優(yōu)點,同時相對直流電機而言無刷電機革除了電的滑動接觸機構(gòu), 因而消除了故障產(chǎn)生的主要根源.因此,近年來BLDCM被越來越廣泛地應(yīng)用到各種驅(qū)動裝置和伺服系統(tǒng)中,以其優(yōu)越的性能被廣泛應(yīng)用于各個領(lǐng)域.但是由于位置傳感器的存在,當電機的工作環(huán)境較為惡劣時,使得電機的可靠性降低,影響電機的運行性能.因此,無位置傳感器控制成為無刷直流電機研究的一個重要內(nèi)容.針對其位置檢測,國內(nèi)外學者出了許多方法,然而這些方法各有其優(yōu)點及局限性[1-6].
小波神經(jīng)網(wǎng)絡(luò)WNN是在小波分解的基礎(chǔ)上提出的一種前饋神經(jīng)網(wǎng)絡(luò),其思想是用小波元代替神經(jīng)元,通過仿射變換建立起小波變換與網(wǎng)絡(luò)系數(shù)之間的連接,并應(yīng)用于函數(shù)逼近,小波神經(jīng)網(wǎng)絡(luò)具有優(yōu)良的函數(shù)逼近能力,收斂快,全局收斂性等優(yōu)點[7-9].
粒子群算法(PSO)是基于群智能的全局優(yōu)化技術(shù),它通過粒子間的相互作用,對解空間進行智能搜索,從而發(fā)現(xiàn)最優(yōu)解[10].粒子群算法本質(zhì)上屬于隨機尋優(yōu)過程, 不存在局部收斂問題;因此將二者結(jié)合起來,建立了基于粒子群算法的小波神經(jīng)網(wǎng)絡(luò)預(yù)測模型,并將之應(yīng)用于無刷直流電機轉(zhuǎn)子位置檢測,取得了令人滿意的結(jié)果.
以三相橋式Y(jié)形聯(lián)結(jié)無刷直流電機為例,電機采用兩兩導通三相六拍的方式運行,任意時刻電機非導通相的相電流為零,導通的兩相電流大小相等方向相反,電機的電壓平衡方程為
(1)
式(1)中va,vb,vc為定子繞組相電壓;ia,ib,ic為定子繞組相電流;La,Lb,Lc為繞組自感;Lab,Lac,Lba,Lbc,Lca,Lcb為繞組間互感;Ra,Rb,Rc為繞組電阻;ea,eb,ec為反電勢.
假設(shè)三相對稱,則
La=Lb=Lc=Ls
Ra=Rb=Rc=R
Lab=Lac=Lba=Lbc=Lca=Lcb=M
令Ls-M=L
又因為ia+ib+ic=0,于是,式(1)可以改為
(2)
則電機相電壓方程為
(3)
根據(jù)法拉第電磁定律,電機相電壓方程為
(4)
式(4)中ψx為相磁鏈,θ為轉(zhuǎn)子位置.
由式(3)和(4)可得
(5)
(6)
式(6)中為電機另兩相的導通相電流.
由式(4)得
離散化后可得
ψx(k)=ψx(k-1)+T[vx(k)-Rix(k)]
(7)
為了減少隨機誤差提高測量精度,故采用平均值法求取ψx(k),即:
vx(k-1)-Rix(k-1)]
(8)
只要檢測到非導通相電壓v和導通相電流i,由式(8)就可以計算可得相磁通,依據(jù)式(6),以導通相電流和相磁通為輸入,網(wǎng)絡(luò)的輸出θ即為預(yù)測的轉(zhuǎn)角,從而得到電機的換相信號.
把小波變換的運算融入到神經(jīng)網(wǎng)絡(luò)中去,用小波函數(shù)代替常規(guī)神經(jīng)網(wǎng)絡(luò)的隱層激勵函數(shù),即將小波分析和神經(jīng)網(wǎng)絡(luò)嵌套式結(jié)合,形成小波神經(jīng)網(wǎng)絡(luò),該網(wǎng)絡(luò)結(jié)構(gòu)為兩層前饋式神經(jīng)網(wǎng)絡(luò),采用小波函數(shù)為網(wǎng)絡(luò)的隱層節(jié)點,網(wǎng)絡(luò)的輸出是隱層節(jié)點輸出的線性加權(quán),權(quán)值為網(wǎng)絡(luò)可調(diào)參數(shù).網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示,以導通相電流和相磁通為輸入,通過5個隱層節(jié)點輸出θ.
圖1 小波神經(jīng)網(wǎng)絡(luò)拓撲圖
該網(wǎng)絡(luò)選用墨西哥帽狀小波為隱節(jié)點:
(9)
隱含層輸入為
(10)
其多輸入單輸出結(jié)構(gòu)的網(wǎng)絡(luò)輸出方程為
(11)
式(11)中wij是隱含層第i個節(jié)點到輸入層第j個節(jié)點之間的權(quán)值;xj是輸入層第j個節(jié)點的輸入;bi是隱含層第i個節(jié)點的平移系數(shù);ai是隱含層第i個節(jié)點的伸縮系數(shù);φ(·)是隱層激勵函數(shù)(小波函數(shù));wi是第i個隱層節(jié)點到輸出的權(quán)值.
網(wǎng)絡(luò)參數(shù)初始值選擇的好壞對于網(wǎng)絡(luò)訓練很重要,初始值選擇的好,收斂速度快,反之,則收斂速度慢,訓練時間長,甚至導致無法收斂.網(wǎng)絡(luò)參數(shù)初始值選擇的步驟如下:
a.首先隨機產(chǎn)生[-1,1]區(qū)間上均勻分布的隨機數(shù)作為權(quán)值wij,wi的初始值.
b.計算隱含層第i個節(jié)點的輸入neti,并且求出最大值netimax和最小值netimin
c.設(shè)母小波的時域中心為r0,半徑為Δr,則小波伸縮系在時域的集中區(qū)域為
為了使小波伸縮系覆蓋輸入向量的整個范圍,則伸縮平移參數(shù)的初始設(shè)置必須滿足下式
(12)
由式(12)則可以得到
(13)
墨西哥帽小波母函數(shù)的時域中心r0=0,半徑Δr=1.08.代入式(13)可以求得伸縮系數(shù)ai和平移系數(shù)bi的初始值.
粒子群優(yōu)化(PSO)是模仿自然界鳥群,蜂群,魚群的行為規(guī)律的一類隨機優(yōu)化算法圖2給出了PSO的流程圖,PSO將每個可行解視作一個粒子,每個粒子有兩個屬性, 位置x與速度v,假設(shè)第i個粒子的位置與速度如下:
X=(xi1,xi2,…,xiN)
(14)
V=(vi1,vi2,…,viN)
(15)
其中N表示問題的維數(shù),每次迭代過程中, 計算每個粒子的適應(yīng)度函數(shù),然后不斷跟蹤兩個最好的粒子: 一個是當前粒子經(jīng)歷的最好位置, 稱為pBest; 另一個是當前粒子的鄰域內(nèi)最好的粒子, 稱為nBest ; 如果鄰域為整個粒子群, 那么nBest 變?yōu)槿肿詈玫牧W? 稱為gBest.因此,某粒子的速度與位置按照下面的公式來更新:
V=ωv+c1r1(pBest)+c2r2(nBest-X)
(16)
X=X+VΔT
(17)
其中ω表示慣性權(quán)重, 控制過去的速度對現(xiàn)在速度的影響c1與c2是正常數(shù), 表示加速度系數(shù),r1與r2是兩個在區(qū)間[0,1]上滿足均勻分布的隨機數(shù)t表示時間間隔,必須注意的是,粒子速度存在一個上限vmax,以保證粒子的搜索不會太快.
根據(jù)粒子群算法原理,選取N個粒子構(gòu)成粒子群,其中每個粒子都是D維的向量.這個向量代表神經(jīng)網(wǎng)絡(luò)模型中的所有權(quán)值,以及網(wǎng)絡(luò)中隱層節(jié)點的小波伸縮、平移系數(shù),所有權(quán)值的初始值隨機產(chǎn)生, 取值范圍為[0,1],粒子初始群體隨機產(chǎn)生后,以后各代粒子的位置根據(jù)飛行速度的變化而變化.用以下公式衡量每個粒子的適應(yīng)值.
網(wǎng)絡(luò)最小目標函數(shù)為
(18)
式(18)中p為訓練樣本個數(shù);θs為輸出樣本;θ為網(wǎng)絡(luò)輸出.
粒子群-小波神經(jīng)網(wǎng)絡(luò)混合算法的流程圖為:
(1)確定算法參數(shù).根據(jù)神經(jīng)網(wǎng)絡(luò)的輸入輸出樣本集確定網(wǎng)絡(luò)的拓撲結(jié)構(gòu);按式(14)初始化粒子的位置xid及速度νid,確定粒子個數(shù)N、慣性因子ω的初值、最大允許迭代步數(shù)kmax、加速系數(shù)c1和c2.
(2)適應(yīng)度值計算.以神經(jīng)網(wǎng)絡(luò)均方差做為適應(yīng)度函數(shù),計算出每個粒子的適應(yīng)度,選出個體極值最好的做為全局極值nBest,記錄該最好值的粒子序號,那么該粒子對應(yīng)的極值就是下次迭代中神經(jīng)網(wǎng)絡(luò)的最優(yōu)權(quán)值.
(3)更新.計算出每一粒子的適應(yīng)度值,若優(yōu)于該粒子當前的個體極值,記錄該粒子的位置,且更新個體極值.若所有粒子的個體極值中最好的優(yōu)于當前全局極值,記錄該粒子的序號、位置,且更新全局極值; 權(quán)重,位置和速度.
(4)檢驗.迭代達到最大次數(shù)或最小誤差要求時,停止迭代,全局極值對應(yīng)的神經(jīng)網(wǎng)絡(luò)權(quán)值與連接結(jié)構(gòu),即為訓練問題的最優(yōu)解.否則轉(zhuǎn)到(2) .
圖2 粒子群算法(PSO)流程圖
算法終止后得到最優(yōu)的權(quán)值,隱層節(jié)點的小波伸縮、平移系數(shù).
上述以MATLAB為平臺對上述方法進行仿真,電機參數(shù)設(shè)置如下:額定電壓72 V,額定轉(zhuǎn)速120 r/s,額定電流5 A,得到的轉(zhuǎn)子空間位置仿真曲線如圖3所示,其中(a)為實際轉(zhuǎn)角,(b)為小波神經(jīng)網(wǎng)絡(luò)輸出,(c)是轉(zhuǎn)角誤差曲線,橫坐標為時間,縱坐標為電機轉(zhuǎn)角的誤差.
圖3 電機轉(zhuǎn)角仿真圖
由圖3可知,在電機起動階段,預(yù)測轉(zhuǎn)角誤差較大,穩(wěn)定運行后,誤差逐漸減小,從仿真結(jié)果可知,利用小波神經(jīng)網(wǎng)絡(luò)來控制電機換相能取得很好的效果.
通過分析無刷直流電機間接位置檢測原理,利用粒子群算法的具有全局優(yōu)化搜索能力,小波變換具有良好的時頻局部性質(zhì)的特征,建立了基于粒子群算法的小波神經(jīng)網(wǎng)絡(luò)模型,克服了神經(jīng)網(wǎng)絡(luò)算法易陷入局部最小的缺點,加快了算法的收斂速度.通過仿真可得該模型能夠準確得到直流無刷電機的轉(zhuǎn)角位置,從而得到電機的換相信號.
參考文獻:
[1]Iizuka K, Uzuhashi H, Kano M, et al. Microcomputer control for sensorless brushless motor[J]. IEEE Trans. on Industry Application, 1985, IA-21:595-60.
[2]Shao J, Nolan D, Hopkins T. A novel microcontroller-based sensorless brushless dc(BLDC) motor drive for automotive fuel pumps[J]. IEEE Transactions on Industry Applications, 2003, 39(6): 1734-1740.
[3]Shao J, Nolan D, Hopkins T. Improved direct back EMF detection for sensorless brushless dc (BLDC) motor drives[J]. In: Proceeding of IEEE APEC, 2003: 300-305.
[4]Lai Y, Shyu F, Rao W. Novel back-EMF detection technique of brushless DC motor drives for whole duty-ratio range control[C]. In: Proceeding of IEEE IES, 2004: 2729-2732.
[5]李秀英,韓志剛.非線性系統(tǒng)辨識方法的新進展[J].自動化技術(shù)與應(yīng)用,2004,23(10): 5-7.
[6]Chen Weirong, Qian Qingquan, Wang Xiaoru. Wavelet neural network based transient fault signal detection and identification[C].IEEE Int.Conf on Information, Communications and Signal Processing ICICS,1997: 1377-1381.
[7]胡雄鷹,熊茜,黎偉東.基于網(wǎng)絡(luò)最大流算法[J].武漢工程大學學報, 2009,31(12):67-69.
[8]沈斌,漆奮平,江維,等.基于BP網(wǎng)絡(luò)的超濾膜分離中藥成分的分析與實現(xiàn)[J].武漢工程大學學報,2009,31(9):55-58.
[10]楊維,李歧強.粒子群優(yōu)化算法綜述 [J] .中國工程科學,2004(6):87-94.