基于三層前向神經(jīng)網(wǎng)絡的拋物線輪廓插補
神經(jīng)網(wǎng)絡是近年發(fā)展起......
神經(jīng)網(wǎng)絡是近年發(fā)展起來的一門新興學科。由于它具有逼近任意非線性函數(shù)的能力,使得采用神經(jīng)網(wǎng)絡進行非線性輪廓插補成為可能。神經(jīng)網(wǎng)絡具有并行處理的特點,能大幅度縮短插補周期,提高插補精度。本文利用神經(jīng)網(wǎng)絡技術對拋物線輪廓進行插補,并提供實時控制所需的多種插補信息。
1 神經(jīng)網(wǎng)絡插補模型
神經(jīng)網(wǎng)絡主要研究由大量的神經(jīng)元互連而成的網(wǎng)絡系統(tǒng),業(yè)已證明神經(jīng)網(wǎng)絡對任意非線性函數(shù)具有任意精度的逼近能力,而且神經(jīng)網(wǎng)絡具有自組織、自適應、自學習的優(yōu)點。對于拋物線這樣的非線性函數(shù)進行曲線插補,當函數(shù)形式及機床進給率給定后,每一插補周期所需提供的插補坐標和輪廓信息都可以表示成前一插補周期中插補坐標的非線性函數(shù),因此可采用神經(jīng)網(wǎng)絡建立非線性插補模型。
本文采用3層前向神經(jīng)網(wǎng)絡,包括輸入層、隱層和輸出層(圖1),其中輸入層為2個節(jié)點xk-1、yk-1,為前一插補周期所提供的插補坐標值;輸出層為5個節(jié)點xk、yk、sinqk、cosqk、Rk,其中xk、yk為當前插補坐標植,(sinqk,cosqk)為曲線的切向矢量,Rk為曲率半徑;隱層節(jié)點數(shù)可根據(jù)神經(jīng)網(wǎng)絡學習過程中的收斂速度情況加以選擇,這里選擇16個。隱層節(jié)點的激勵函數(shù)為雙曲正切函數(shù)tanh(x)=[1-exp(-2x)]/[1+exp(-2x)],輸出節(jié)點的激勵函數(shù)為線性函數(shù)。
圖1 神經(jīng)網(wǎng)絡結(jié)構(gòu)
網(wǎng)絡的結(jié)構(gòu)確定以后,必須獲得一組數(shù)據(jù)樣本,以訓練多層前向網(wǎng)絡權(quán)值和閉值。對于給定的拋物線曲線,在進給率為約束條件情況下,利用前一插補周期中的插補坐標xk-1、yk-1,可求出當前插補周期的插補坐標和曲線幾何信息。將這些數(shù)據(jù)記錄下來作為樣本數(shù)據(jù)來訓練神經(jīng)網(wǎng)絡。對應于不同的進給速率可以進行多次訓練,得到多組權(quán)值和閡值以便在不同的進給速率下應用。
2 神經(jīng)網(wǎng)絡的學習算法
本文采用預報誤差法訓練前向網(wǎng)絡權(quán)值。這是一種通過極小化預報誤差來獲取參數(shù)估計的方法。設q=[q1, q2,…, qn]T為神經(jīng)網(wǎng)絡中所有待求的權(quán)及閾值,n為待求參數(shù)的數(shù)量,目標函數(shù)J定義為 J(q)= 1 N∑t=1NeT(t, q)e(t, q)
(1)
式中,e(t)為預報誤差矢量,為實際過程輸出與神經(jīng)網(wǎng)絡輸出之差;N為數(shù)據(jù)長度。該算法的基本原理是沿著Gauss-Newton搜索方向修正未知參數(shù)矢量,從而使了趨于最小。據(jù)此,其遞推預報誤差算法為 P(t)= 1 |P(t-1)- P(t-1)j(t) ×jTP(t-1)|
l(t) l(t)+jT(t-1)P(t-1)j(t-1)
(2)
e(t)=y(t)-y^(t)p (3)
q^(t)=q^(t-1)+P(t)j(t)e(t) (4)
本文有[www.0574-laser.com]提供,請及時關注[www.0574-laser.com]提供的內(nèi)容
l(t)=l0l(t-1)+(1-l0) (5)
其中j(t)[dy^(t, q/dq]T是網(wǎng)絡的一步預報值對q的一階微分。l(t)為遺忘因子,一般可取l0=0.99,l(0)=0.95。
本文有[www.0574-laser.com]提供,請及時關注[www.0574-laser.com]提供的內(nèi)容
該算法總是傾向于使誤差目標函數(shù)J減小的權(quán)值變化。大量的仿真結(jié)果表明,該算法具有收斂速度快,預報精度高的優(yōu)點。用該算法訓練多層前向網(wǎng)絡,算法實現(xiàn)簡單,效果良好。
3 加工實驗及討論
圖2 插補誤差曲線
圖3 插補步長變化曲線
本文利用改進后的HCM-1超精密機床磨削加工凹非球曲而,實現(xiàn)該曲面的曲線方程為y=0.051x2。該機床伺服系統(tǒng)采用了交叉藕合控制器,并且利用了預見前饋補償方法來改善跟蹤精度。該控制算法的實現(xiàn)不僅需要利用實時軌跡坐標,還需要知道軌跡的幾何信息和有限步的未來位置信息。本文利用神經(jīng)網(wǎng)絡插補算法獲取所需信息,其中有限步的未來信息是通過將前一時刻位置信息依次迭代而獲得的。插補周期和采樣周期取為2ms。為保證加工精度,加工過程中機床進給速率設定為10mm/min。利用本文的神經(jīng)網(wǎng)絡插補器對拋物線軌跡進行插補,在訓練次數(shù)為150次時,得到一組實際插補數(shù)據(jù),通過對插補數(shù)據(jù)的計算,得到該插補算法在實際中插補誤差曲線和步長變化曲線(圖2、圖3)。從圖中可以看出,神經(jīng)網(wǎng)絡插補的最大插補誤差為0.008μm。插補過程中,最大步長變化誤差為-0.8μm。當繼續(xù)增加訓練次數(shù)和神經(jīng)網(wǎng)絡的隱結(jié)點數(shù)時,網(wǎng)絡的插補精度可進一步提高。利用軟件對神經(jīng)網(wǎng)絡插補占用CPU的時間進行測定,其執(zhí)行時間小于0.1ms。這個時間是由網(wǎng)絡的結(jié)構(gòu)決定的,與插補曲線表達形式無關。
為了驗證神經(jīng)網(wǎng)絡插補算法的優(yōu)越性,我們用原有的等弦長插補算法與之進行加工對比實驗。磨削加工后的工件表面用美國DI公司生產(chǎn)的隧道掃描探針顯微鏡(Nanoscope 3A)進行檢測,檢測結(jié)果如圖4。從圖中可以看出,等弦長插補算法加工出的表面粗糙度為Ra39.043nm,Rq46.623nm;而采用神經(jīng)網(wǎng)絡插補算法加工出的表面粗糙度為Ra9.619nm,Rq12.184nm,明顯優(yōu)于等弦長插補算法加工出的表面。這表明:采用神經(jīng)網(wǎng)絡插補算法具有非常明顯的效果,在工程應用中具有較大的推廣價值。
(a)等弦長插補法加工后的檢測圖形
(b)神經(jīng)網(wǎng)絡插補法加工后的檢測圖形
圖4 等弦長插補法與神經(jīng)網(wǎng)絡插補法的加工對比圖形
4 結(jié)束語
神經(jīng)網(wǎng)絡插補算法具有原理簡單、插補速度快、插補精度高的優(yōu)點。由于其插補時間與曲線表達式無關,使其對非線性輪廓,尤其對高次光學方程的插補表現(xiàn)出較大的優(yōu)越性。