(哈爾濱工業(yè)大學(xué) 航天學(xué)院,哈爾濱 150001)
電機(jī)作為一種執(zhí)行元件,被廣泛應(yīng)用于生產(chǎn)、生活的各個(gè)領(lǐng)域。直線電機(jī)更是憑借其相對于傳統(tǒng)伺服系統(tǒng)的高效率、高精度等優(yōu)勢普遍應(yīng)用于高精度運(yùn)動(dòng)控制系統(tǒng)之中。然而,電機(jī)在運(yùn)轉(zhuǎn)的過程中常常受到各種擾動(dòng)的影響。除了電流波紋等外界擾動(dòng)之外,永磁電機(jī)由于自身機(jī)械結(jié)構(gòu)和設(shè)計(jì)的局限性,難免存在磁拉力波動(dòng)、齒槽力波動(dòng)和邊端效應(yīng)等自身擾動(dòng)。在生產(chǎn)生活中為了實(shí)現(xiàn)較好的伺服控制,特別是在高精度伺服系統(tǒng)中,必須對這些擾動(dòng)進(jìn)行辨識,以進(jìn)行補(bǔ)償而獲得更好的控制效果。以上這些波動(dòng)、擾動(dòng)在永磁直線電機(jī)中通常只與電機(jī)初級與次級之間的相對位置有關(guān),統(tǒng)稱為直線電機(jī)的定位力??紤]到定位力辨識的必要性,文獻(xiàn)[1]中采用遞推最小二乘法對直線電機(jī)的定位力進(jìn)行了辨識。該方法采用改進(jìn)的最小二乘法,雖然一定程度上彌補(bǔ)了最小二乘法計(jì)算量大、實(shí)際應(yīng)用性差的缺陷,但仍為一種參數(shù)化的辨識方法,其辨識精度對模型的精確程度依懶性很高,由于理論模型不能精確描述實(shí)際系統(tǒng),抑或考慮到計(jì)算復(fù)雜度等方面的問題而采用簡化的數(shù)學(xué)模型,使得辨識結(jié)果存在較大誤差;文獻(xiàn)[2]采用了齒槽推力波動(dòng)標(biāo)定方法和線性插值計(jì)算方法對齒槽推力進(jìn)行了建模辨識。該方法對齒槽力采樣、標(biāo)定,相比之下,標(biāo)定雖然方法比較簡單易懂,但操作工程量較大,而且辨識精度對插值方法依懶性比較大,如果采用插值方法不當(dāng),可能會(huì)因此造成在標(biāo)定點(diǎn)之間的較大誤差,因而在實(shí)際應(yīng)用中會(huì)有一定的局限性??紤]到以上問題與局限性,以某光刻機(jī)項(xiàng)目中的直線電機(jī)為例,本文提出了一種基于遺傳算法優(yōu)化神經(jīng)網(wǎng)絡(luò)的直線電機(jī)定位力辨識方法。該方法利用人工神經(jīng)網(wǎng)絡(luò)特有的表達(dá)任意非線性映射的能力,對非線性的直線電機(jī)定位力進(jìn)行辨識,并通過遺傳算法對人工神經(jīng)網(wǎng)絡(luò)進(jìn)行優(yōu)化,提高算法收斂速度及辨識精度。
直線電機(jī)定位力主要是由電機(jī)齒槽力波動(dòng)與邊端效應(yīng)形成的,通常只與直線電機(jī)的初級和次級位置相關(guān),因而直線電機(jī)定位力可視為一個(gè)關(guān)于直線電機(jī)位置的非線性函數(shù)。直線電機(jī)齒槽力是由直線電機(jī)定子磁場和動(dòng)子鐵芯相互作用形成,齒槽力吸引動(dòng)子向附近某個(gè)磁拉力平衡點(diǎn)移動(dòng);邊端效應(yīng)是由于直線電機(jī)的開槽和動(dòng)子的長度有限,磁鋼端部與電樞鐵心端部作用導(dǎo)致[1]。理論上,可得到直線電機(jī)的齒槽力矩波動(dòng)和邊端效應(yīng)的數(shù)學(xué)表達(dá)式為
式中:τ為極距;Lg為氣隙長度;Lm為磁鋼厚度;Br為徑向磁密;Lk為鐵芯長度;Δ=Lk+iτ表示動(dòng)子鐵芯橫跨的極距;p為直線電機(jī)極對數(shù);μ0為磁導(dǎo)率;x為距離軸線的距離。由直線電機(jī)的定位力數(shù)學(xué)表達(dá)式可以得到,直線電機(jī)的定位力是一個(gè)與直線電機(jī)位置有關(guān)的非線性函數(shù),而且具有一定周期性。然而,數(shù)學(xué)表達(dá)式僅僅在理論分析過程中有較好的作用,在實(shí)際應(yīng)用過程中,由于電機(jī)制作、裝配等原因?qū)е碌碾姍C(jī)參數(shù)各處不同且與理論計(jì)算有一定差距,因而需要使用合適的方法對直線電機(jī)的定位力進(jìn)行辨識。
人工神經(jīng)網(wǎng)絡(luò)是依據(jù)仿生學(xué)的原理,模擬人腦神經(jīng)系統(tǒng)的工作方式,使機(jī)器具有類似于神經(jīng)網(wǎng)絡(luò)一樣的感知、推理和學(xué)習(xí)能力,進(jìn)而用來處理一些比較復(fù)雜的問題。神經(jīng)網(wǎng)絡(luò)的實(shí)質(zhì)是一個(gè)非線性系統(tǒng),通過各權(quán)值與閾值之間的相互關(guān)系及各節(jié)點(diǎn)輸入輸出的局部非線性來實(shí)現(xiàn)整個(gè)網(wǎng)絡(luò)模型的非線性映射關(guān)系。神經(jīng)網(wǎng)絡(luò)的應(yīng)用通常具有以下顯著特點(diǎn):具有很強(qiáng)的自適應(yīng)和自組織能力,通過學(xué)習(xí)和訓(xùn)練來逼近非線性映射關(guān)系;信息處理并行化,實(shí)現(xiàn)并行處理信息的方式,提高運(yùn)算的效率。在眾多人工神經(jīng)網(wǎng)絡(luò)的類型中,BP神經(jīng)網(wǎng)絡(luò)應(yīng)用最為廣泛。BP神經(jīng)網(wǎng)絡(luò)是一種多層前饋神經(jīng)網(wǎng)絡(luò),如圖1所示,其主要特點(diǎn)是信號向前傳遞,誤差反向傳遞。信號前向傳遞過程中,輸入信號經(jīng)隱含層處理輸出,每一層神經(jīng)元影響下一層神經(jīng)元狀態(tài),如果輸出層得不到期望輸出則反向傳播,改變閾值和權(quán)值,使得神經(jīng)網(wǎng)絡(luò)不斷逼近期望輸出,從而使整個(gè)網(wǎng)絡(luò)逼近所需的非線性映射關(guān)系。
圖1 BP神經(jīng)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)Fig.1 BP neural network topology structure diagram
BP神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)和訓(xùn)練過程如圖2所示,首先進(jìn)行網(wǎng)絡(luò)的初始化,包括輸入層、隱含層與輸出層節(jié)點(diǎn)數(shù)的確定和網(wǎng)絡(luò)各權(quán)值與閾值初值的初始化等。其次需要按照式(5)、(6)分別對隱含層與輸出層的輸出進(jìn)行計(jì)算。
式中:Hj為第j個(gè)隱含層節(jié)點(diǎn)輸出;Ok為第k個(gè)輸出層節(jié)點(diǎn)輸出;ωij、ωjk分別為輸入層與隱含層和輸出層之間的權(quán)值;a、b則分別為隱含層與輸出層的閾值。
最后按式(7)和式(8)由誤差e對各權(quán)值和閾值進(jìn)行更新:
式中,η為學(xué)習(xí)率。
圖2 BP神經(jīng)網(wǎng)絡(luò)算法流程Fig.2 BP neural network algorithm flow chart
遺傳算法是基于自然界遺傳機(jī)制和生物進(jìn)化論而形成的一種并行隨機(jī)搜索最優(yōu)化方法。其模擬生物界中自然選擇和群體遺傳機(jī)制,采用簡單的編碼技術(shù)來表示各種復(fù)雜的結(jié)構(gòu),并通過一組編碼表示和進(jìn)行簡單的遺傳操作以及優(yōu)勝劣汰的自然選擇來指導(dǎo)學(xué)習(xí)和確定搜索的方向[3]。對于一個(gè)確定的種群,遺傳算法大致通過以下幾個(gè)過程實(shí)現(xiàn):
選擇遺傳算法的選擇操作有多種方法,大致可歸納為輪盤賭法、隨機(jī)聯(lián)賽選擇法等23種方法[4]。遺傳算法通過適應(yīng)度選擇優(yōu)質(zhì)個(gè)體而拋棄劣質(zhì)個(gè)體,體現(xiàn)了“適者生存”的原理[5]。
變異遺傳算法依據(jù)算法中設(shè)定的變異率對已經(jīng)進(jìn)行編碼的個(gè)體隨機(jī)選擇基因進(jìn)行改變,以產(chǎn)生新的個(gè)體,進(jìn)而提高局部搜索能力。
交叉遺傳算法對應(yīng)于個(gè)體的編碼形式采用適合的交叉方法交換個(gè)體間的基因,從而實(shí)現(xiàn)個(gè)體的進(jìn)化。
遺傳算法的算法流程如圖3所示。
圖3 遺傳算法流程Fig.3 Genetic algorithm flow chart
BP神經(jīng)網(wǎng)絡(luò)使用廣泛,算法已經(jīng)十分成熟,因而在辨識中采用BP神經(jīng)網(wǎng)絡(luò)為辨識模型主體。BP神經(jīng)網(wǎng)絡(luò)雖然可以完成對所需的非線性映射的逼近,但是其計(jì)算效率和結(jié)果均具有可以進(jìn)一步優(yōu)化的余地。均衡考慮計(jì)算復(fù)雜度與結(jié)果精度,使用遺傳算法對神經(jīng)網(wǎng)絡(luò)進(jìn)行優(yōu)化。遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的本質(zhì)是通過遺傳算法獲得更好的神經(jīng)網(wǎng)絡(luò)初始權(quán)值及閾值,即用個(gè)體代表網(wǎng)絡(luò)的初始權(quán)值和閾值,將預(yù)測誤差作為個(gè)體的適應(yīng)度函數(shù),通過變異、交叉和選擇等操作收斂得到最優(yōu)個(gè)體,從而實(shí)現(xiàn)對BP神經(jīng)網(wǎng)絡(luò)的優(yōu)化。具體算法如圖4所示。
圖4 遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)辨識流程Fig.4 Identification flow chart of BP neural network optimized by GA
被辨識的目標(biāo)直線電機(jī)在水平與垂直方向均采用氣浮支撐,該機(jī)械結(jié)構(gòu)使得機(jī)械摩擦等具有近零特性,可盡可能減小機(jī)械摩擦阻力的影響;動(dòng)子位移數(shù)據(jù)采用分辨率為50 nm的增量式光柵尺進(jìn)行采集,整個(gè)系統(tǒng)采樣頻率為5000 Hz。由電機(jī)的動(dòng)力學(xué)方程可得,除了近零機(jī)械摩擦力,還需盡可能降低運(yùn)動(dòng)的粘滯摩擦力和電機(jī)磁阻推力??紤]到運(yùn)動(dòng)的粘滯摩擦力正比于速度、磁阻推力正比于繞組電流,直線電機(jī)在低勻速狀態(tài)下可將二者影響降至最低,因而令直線電機(jī)以0.01 m/s勻速運(yùn)動(dòng),利用加速度計(jì)得到加速度曲線,進(jìn)而得到電機(jī)定位力波動(dòng)曲線,其中加速度曲線如圖5所示。
圖5 加速度曲線Fig.5 Diagram of acceleration curve
在所得10000組數(shù)據(jù)中選擇8000組數(shù)據(jù)用于遺傳算法優(yōu)化神經(jīng)網(wǎng)絡(luò)對定位力波動(dòng)進(jìn)行辨識,并利用2000組數(shù)據(jù)驗(yàn)證辨識模型的可行性。辨識結(jié)果如圖6所示。
由仿真得到定位力波動(dòng)辨識均方誤差為0.224802,結(jié)合圖6可以得到遺傳算法優(yōu)化神經(jīng)網(wǎng)絡(luò)比較精確地對定位力進(jìn)行了辨識。
圖6 定位力辨識結(jié)果Fig.6 Identification result of cogging force
針對工程中需要解決的直線電機(jī)定位力波動(dòng)問題,本文給出了一種基于遺傳算法優(yōu)化神經(jīng)網(wǎng)絡(luò)的辨識方法。理論分析及實(shí)驗(yàn)表明該方法具有自適應(yīng)性、應(yīng)用局限小等優(yōu)點(diǎn),并且該方法在實(shí)際工程辨識的過程中具有可行性,具有良好的應(yīng)用價(jià)值。
[1]陳興林,楊天博,劉楊.直線電機(jī)定位力波動(dòng)的辨識及迭代補(bǔ)償方法[J].電機(jī)與控制學(xué)報(bào),2015,19(2):60-65.
[2]穆海華,周云飛,溫新,等.直線電機(jī)齒槽推力波動(dòng)的標(biāo)定與補(bǔ)償方法[J].電機(jī)與控制學(xué)報(bào),2009,13(5):721-727.
[3]徐磊.基于遺傳算法的多目標(biāo)優(yōu)化問題的研究與應(yīng)用[D].長沙:中南大學(xué),2007.
[4]Potts J C,Giddens T D,Yadav S B.The development and evaluation of an improved genetic algorithm based on migration and artificial selection[J].Systems Man& Cybernetics IEEE Transactions on,1994,24(1):7-86.
[5]葛繼科,邱玉輝,吳春明,等.遺傳算法研究綜述[J].計(jì)算機(jī)應(yīng)用研究,2008,25(10):2911-2916.
[6]王小川,史峰,郁磊,等.MATLAB神經(jīng)網(wǎng)絡(luò)43個(gè)案例分析[M].北京:北京航空航天大學(xué)出版社,2013.