張子雄,張 藝,楊 風,余紅英
( 1.中北大學(xué) 電氣與控制工程學(xué)院,太原 030051;2.上海船舶電子設(shè)備研究所,上海 201108)
隨著智能時代的到來,無人機(以下簡稱UAV)已被廣泛應(yīng)用于各個領(lǐng)域。UAV飛行軌跡的精確度和飛行姿態(tài)等都與電機控制系統(tǒng)密切相關(guān)。電機控制系統(tǒng)將飛控平臺的控制信號轉(zhuǎn)換為數(shù)字電流信號,及時調(diào)控電機的轉(zhuǎn)子轉(zhuǎn)速,從而使UAV按照規(guī)定軌跡平穩(wěn)飛行并完成任務(wù)[1]。其中,轉(zhuǎn)子位置的實時監(jiān)測是UAV電機控制的關(guān)鍵環(huán)節(jié),在此領(lǐng)域,無傳感器電機控制系統(tǒng)已成為研究的熱點。無位置傳感器永磁同步電機由于效率高,安裝方便,維護成本低,可用于航空航天和各種領(lǐng)域。
傳統(tǒng)的永磁同步電機需要附加位置傳感器提供換相信號,增加UAV負載負擔,從而限制了其應(yīng)用領(lǐng)域。因此,無位置傳感器的永磁同步電機控制系統(tǒng)已成為航空航天研究的熱點[2]。本系統(tǒng)設(shè)計的主要目的就是構(gòu)造一個無位置傳感器的轉(zhuǎn)子位置信號檢測電路,通過一系列處理運算和參數(shù)訓(xùn)練,從而獲得可靠有效的轉(zhuǎn)子位置信號來控制航天器運行。反電動勢法在諸多轉(zhuǎn)子位置檢測系統(tǒng)中應(yīng)用廣泛,但該方法調(diào)速范圍有限,而且忽略了電機空載時的電樞反應(yīng)對換相造成的影響,所獲得的信號會產(chǎn)生一定誤差。因此,我們引入小波神經(jīng)網(wǎng)絡(luò)控制算法,該算法能夠?qū)⒊跏寄:南到y(tǒng)參數(shù)自動優(yōu)化,從而使UAV飛行控制達到預(yù)期結(jié)果。該算法具有較強的自學(xué)習功能,能對UAV整個飛行進行全尺度分析和較強的自適應(yīng)能力。在非線性系統(tǒng)建??刂坪吞卣魈崛〉阮I(lǐng)域已經(jīng)將這種方法投入使用[3-4]。
本文基于UAV永磁同步電動機的數(shù)學(xué)模型,將改進算法小波神經(jīng)網(wǎng)絡(luò)應(yīng)用于UAV永磁同步電動機轉(zhuǎn)子位置識別。該類電動機的轉(zhuǎn)子電旋轉(zhuǎn)角度與相位間電壓存在一種關(guān)聯(lián),通過這種非線性關(guān)系將采集的控制信號進行大量訓(xùn)練,小波神經(jīng)網(wǎng)絡(luò)將輸出正確有效的轉(zhuǎn)子控制信號,從而控制UAV的姿態(tài)轉(zhuǎn)向, 進而良好地控制UAV飛行。 本文采取改良后的遺傳算法去迭代優(yōu)化小波神經(jīng)網(wǎng)絡(luò)的各項性能指標,使用Simulink對算法進行仿真驗證。仿真結(jié)果表明,采用該算法后,UAV在飛行的全部過程中可以有效保持恒定速度飛行;并且該控制方法具有很強的自適應(yīng)性,能有效地控制UAV電機的換相。
本文的UAV采用反電動勢為梯形波的三相永磁同步電機結(jié)構(gòu)模型,使用星型接法,三相繞組兩兩導(dǎo)通,相電流大小相等反向,得出該電機的電壓平衡方程:
式中:va,vb,vc,ia,ib,ic分別是各相繞組電壓及電流;L是自感比例系數(shù);M是互感比例系數(shù);R是內(nèi)阻;θ是轉(zhuǎn)子電角度;λm是轉(zhuǎn)子磁鏈[5]。則有:
(2)
(3)
(4)
根據(jù)基爾霍夫電流定律,ia+ib+ic=0。在永磁同步電動機運行中,電機三相繞組在任何時候總是具有i和di/dt均為0的一相繞組電流[6]。假設(shè)A階段在某個時刻沒有通電,有ia=0,ib=-ic,可以得到:
(5)
(6)
由上式能看出,轉(zhuǎn)子電角度θ和電壓va,vb,vc之間存在一定映射關(guān)系,即可以根據(jù)三相電壓進行電動機轉(zhuǎn)子電角度θ的預(yù)測。
小波分析是新型非線性數(shù)據(jù)建模分析方法。小波變換繼承了傅里葉變換的主要特性,并具有隨頻率改變的“時頻窗”,在時、頻域中都有理想的局部性能和宏觀控制性能,為UAV信號時頻分析和處理提供了便利。
小波神經(jīng)網(wǎng)絡(luò)能將神經(jīng)網(wǎng)絡(luò)激活,提高網(wǎng)絡(luò)系統(tǒng)的辨識度,并產(chǎn)生良好的函數(shù)逼近效應(yīng)[7]。比如將Sigmod函數(shù)(神經(jīng)網(wǎng)絡(luò)的閾值函數(shù))用小波神經(jīng)網(wǎng)絡(luò)代換。在數(shù)據(jù)流入層到隱含層層之間,原函數(shù)的權(quán)值被小波函數(shù)的aj替換,原函數(shù)的激活閾值被bj替換,并且需要進行神經(jīng)網(wǎng)絡(luò)的訓(xùn)練。這是目前使用最廣泛的結(jié)構(gòu),即緊致性結(jié)構(gòu)[8],其收斂速度更快,精度更高。
將小波神經(jīng)網(wǎng)絡(luò)使用在UAV永磁同步電機無位置傳感器控制中,可以得到更為準確的換相信號,從而讓永磁同步電機在無傳感器的情況下對UAV大范圍內(nèi)進行穩(wěn)定控制,系統(tǒng)控制框圖如圖1所示。
圖1 系統(tǒng)控制框圖
小波神經(jīng)網(wǎng)絡(luò)函數(shù)個數(shù)即為隱藏層層數(shù),其中,ωi即i個隱含層節(jié)點的權(quán)值;ai,bi即i個隱含層節(jié)點的小波神經(jīng)網(wǎng)網(wǎng)絡(luò)函數(shù)的伸縮系數(shù)和平移系數(shù)[9]。通過反復(fù)訓(xùn)練后,能夠?qū)⑸鲜鰠?shù)優(yōu)化到最佳效果,從而進一步實現(xiàn)網(wǎng)絡(luò)逼近最佳F(x)。
根據(jù)永磁同步電機位置檢測的常規(guī)機制,引入了一種三輸入單輸出小波神經(jīng)網(wǎng)絡(luò)。這種結(jié)構(gòu)采取了輸出為轉(zhuǎn)子電旋轉(zhuǎn)角度θ,輸入為定子各相電壓的設(shè)計方案。經(jīng)過小波神經(jīng)網(wǎng)絡(luò)的訓(xùn)練,它可以用于預(yù)測轉(zhuǎn)子的電角度。整個小波網(wǎng)絡(luò)的結(jié)構(gòu)如圖2所示。
圖2 小波神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖
由于墨西哥帽小波函數(shù)的時頻特性良好,且滿足Rψ(t)dt=0,所以在小波神經(jīng)網(wǎng)絡(luò)隱含層層節(jié)點的激勵函數(shù)中我們選用它作為母小波。即:
(7)
該非顯式輸入:
(8)
該隱含層輸出:
(9)
從而可得網(wǎng)絡(luò)的最終輸出轉(zhuǎn)子電角度θ:
(10)
式中:xi為第i個小波神經(jīng)網(wǎng)絡(luò)數(shù)據(jù)輸入層的節(jié)點輸入;αij為網(wǎng)絡(luò)的數(shù)據(jù)輸入層節(jié)點i到隱含層層節(jié)點j的權(quán)重;bj為小波神經(jīng)網(wǎng)絡(luò)的隱含層層節(jié)點j的平移系數(shù);aj為小波神經(jīng)網(wǎng)絡(luò)的隱含層層節(jié)點j的伸縮系數(shù)[10,11];ψ(x)為小波神經(jīng)網(wǎng)絡(luò)的小波輸入函數(shù);ωj為小波神經(jīng)網(wǎng)絡(luò)的隱含層層節(jié)點j到輸出的權(quán)重。
網(wǎng)絡(luò)參數(shù)的適當初始值使系統(tǒng)能夠迅速收斂并實現(xiàn)目標結(jié)果值。需要進行網(wǎng)絡(luò)初始化的參數(shù)包括:輸入層到隱含層的權(quán)值,隱含層到輸出層的權(quán)值,隱含層節(jié)點的小波函數(shù)的平移系數(shù)和伸縮系數(shù),訓(xùn)練次數(shù)和最大誤差,修正步長因子等[12]。
小波神經(jīng)網(wǎng)絡(luò)參數(shù)初始化的優(yōu)劣程度很大意義上決定了其收斂速度,其中包括αij,ai,bi等參數(shù)的初始狀態(tài)[13]。步驟同下:
(1)αij初始賦值
αij初始賦值為屬于[-1,1]區(qū)間的任意數(shù), 將αij進行歸一化,乘相關(guān)比例因子:
(11)
式中:p,q分別為輸入層、隱含層節(jié)點的數(shù)量;C為與隱含層常量值,其取值范圍是[1.8,2.2],文中取2.0。
假設(shè)第j個輸入樣本的極值分別為xjmax,xjmin,則:
(12)
(2)ai,bi初始化
若假設(shè)r0為母小波的時域中心,Δr是其半徑,則有時間頻域內(nèi)的小波伸縮系區(qū)域集合:
(13)
要求小波伸縮系數(shù)必須包括輸入層和輸出層的全域,即得:
(14)
由小波函數(shù)的基本特性可以得到,r0=0,Δr=1.08。將得到的結(jié)果代入式(14)可求得節(jié)點平移系數(shù)bi和節(jié)點伸縮系數(shù)ai的初值。
考慮到高計算復(fù)雜度和神經(jīng)網(wǎng)絡(luò)交織的因素,隱藏層節(jié)點的總數(shù)被設(shè)計為10。運行時PID反饋算法自適應(yīng)地調(diào)整每個隱藏層節(jié)點的數(shù)量。
小波神經(jīng)網(wǎng)絡(luò)成功構(gòu)建后,仍然需要經(jīng)過深度訓(xùn)練才能發(fā)揮其作用。本文使用一種改進的梯度更新算法——Adam(Adaptive moment estimation自適應(yīng)矩估計)算法來優(yōu)化神經(jīng)網(wǎng)絡(luò)ωj,αij,bj和其他各項參數(shù)。
原始梯度下降算法的核心是最小化目標函數(shù),經(jīng)過重復(fù)遞歸優(yōu)化,對每個系統(tǒng)參數(shù),依據(jù)目標函數(shù)向該參數(shù)梯度的反方向,重新求得對應(yīng)優(yōu)化后的結(jié)果。對小波神經(jīng)網(wǎng)絡(luò)進行反復(fù)訓(xùn)練的目標就是找到最小目標函數(shù)。
(15)
式中:p是訓(xùn)練樣本的數(shù)量;g為輸入層樣本值;y是小波網(wǎng)絡(luò)最終輸出層值[14]。下面列舉小波函數(shù)尺度系數(shù)的原始梯度下降法的學(xué)習法則:
(16)
(17)
式中:e=g-y是網(wǎng)絡(luò)輸出的誤差,并且xpi是第p個樣本矢量的第i個輸入。
如果使用原始梯度下降算法,則學(xué)習速率太大,這可能導(dǎo)致訓(xùn)練振蕩并且可能發(fā)散[15]。但是在使用Adam算法后,可以改善這種現(xiàn)象。Adam是一種自改善的新的自優(yōu)化算法,是由Kingma等人于2015年提出的。在遞歸優(yōu)化的過程中,優(yōu)化后的系統(tǒng)參數(shù)是自適應(yīng)的,最后得到的系統(tǒng)參數(shù)是算法優(yōu)化后的最優(yōu)結(jié)果。其更新過程如下:
①定義累計項s,m:
(18)
(19)
②更新s,m:
(20)
(21)
③更新αij:
(22)
進行參數(shù)更新時,不但考慮到當前的梯度值,還增加了兩個累積項(脈沖)m,s,兩個超級參數(shù)β1,β2,極小值ε是為了防止零除的發(fā)生。由于總和的初始值通常設(shè)置為0,因此在訓(xùn)練開始時它可能很小,式(20)、式(21)主要用于放大它們,式(22)是參數(shù)更新。式(19)、式(22)中的?運算為計算2個矩陣的Hadamard積(哈達瑪積)。其中,參數(shù)的建議值是β1=0.9 ,β2=0.999,ε=1×10-8。
由于訓(xùn)練速率的衰減與陡峭的方向梯度之間成正相關(guān),所以隨著系統(tǒng)參數(shù)在斜坡底部進行運動,從而得知參數(shù)隨著優(yōu)化訓(xùn)練而加速收斂[15]。指數(shù)衰減的累積脈沖減少了參數(shù)發(fā)生爆炸出現(xiàn),從而有助于避免學(xué)習速度快速下降的問題[16]。Adam梯度下降算法相比較原始梯度下降算法更可控全局效果并且產(chǎn)生理想的收斂速度。
同理,對ωj,bj也用此方法進行參數(shù)優(yōu)化。
本文需要對UAV永磁同步電動機進行MATLAB/Simulink建模和仿真,得出實際的轉(zhuǎn)子位置(電角度)和轉(zhuǎn)速值,從而對UAV進行控制。將設(shè)計好的自學(xué)習小波神經(jīng)網(wǎng)絡(luò)添加在無位置傳感器的UAV電機仿真驗證中。其中小波神經(jīng)網(wǎng)絡(luò)的輸入為定子各相電壓值,輸出即為轉(zhuǎn)子電旋轉(zhuǎn)角度值和電機轉(zhuǎn)速值。將仿真結(jié)果和電機實際轉(zhuǎn)子位置和轉(zhuǎn)速進行對比分析,可得出算法仿真結(jié)果的準確程度。
圖3 采用小波神經(jīng)網(wǎng)絡(luò)算法的電機仿真模型
通過仿真,該算法能夠求解得到UAV電動機的實際轉(zhuǎn)子位置和算法預(yù)估的轉(zhuǎn)子位置,實際速度和估計速度,以及誤差關(guān)系,如圖4~圖8所示。
圖4 電機轉(zhuǎn)子位置估計值
圖5 電機轉(zhuǎn)子位置實際值
圖7 電機轉(zhuǎn)速估計值與實際值
圖8 電機轉(zhuǎn)速估計誤差
根據(jù)UAV電機仿真結(jié)果可知,估計轉(zhuǎn)子位置和實際轉(zhuǎn)子位置曲線基本對應(yīng),但是在初始階段,因為轉(zhuǎn)速未達到額定轉(zhuǎn)速,電機承受電壓與轉(zhuǎn)子位置相關(guān)性較差,在初始階段按照小波神經(jīng)網(wǎng)絡(luò)算法得到的偏差不甚理想;當UAV電機轉(zhuǎn)速達到期望后,誤差變小,接近于零。仿真結(jié)果表明,小波神經(jīng)網(wǎng)絡(luò)能夠準確估算UAV轉(zhuǎn)子位置和轉(zhuǎn)速,并具有較高的精度,能高效控制UAV的飛行速度。
本文設(shè)計了一種基于改進算法的小波神經(jīng)網(wǎng)絡(luò)UAV電機控制系統(tǒng)。該系統(tǒng)采用永磁同步電機的無位置傳感器檢測原理,研究了一種基于自適應(yīng)小波神經(jīng)網(wǎng)絡(luò)的控制方法,采用新型梯度下降法即Adma網(wǎng)絡(luò)訓(xùn)練算法對參數(shù)進行訓(xùn)練優(yōu)化,將無位置傳感器時永磁同步電機運行數(shù)據(jù)作為樣本,利用小波神經(jīng)網(wǎng)絡(luò)進行逼近。并用Simulink建模仿真。仿真結(jié)果表明:該UAV電機控制系統(tǒng)結(jié)構(gòu)簡單、易于實現(xiàn),并能快速準確地檢測UAV轉(zhuǎn)子位置和轉(zhuǎn)速,為UAV電機運行提供準確的換相信號,具有較大的調(diào)速范圍,能夠?qū)AV產(chǎn)生良好的靜、動態(tài)控制效果,具有良好的應(yīng)用前景。