蘇宇鋒,袁文信,劉德平,劉武發(fā),段智勇
(鄭州大學a.機電一體化研究所;b.物理工程學院,鄭州 450001)
在高速加工中,由于高速電主軸的剛度及其精度都較高,機床加工過程中所引起的機械誤差的比重較小;而電主軸的發(fā)熱卻不可避免,由于其發(fā)熱所引起的誤差已經(jīng)占到了總加工誤差的60%——80%,因此,對于高速主軸單元來說,采用必要的措施以較少其熱誤差對于機床的加工精度的影響就顯得尤為重要。目前主要采用的有硬補償和軟補償兩種方法[1-3],使用硬補償技術的成本太高,且精度的提高有限,因此使用軟補償技術已經(jīng)成為目前以及未來的主要發(fā)展趨勢。本文在參考大量文獻的基礎上[4-9],建立了基于BP 神經(jīng)網(wǎng)絡的電主軸熱誤差補償模型,利用工具軟件MATLAB 對其進行一系列仿真實驗,并測試了該模型的一些精度指標。
在進行BP 神經(jīng)網(wǎng)絡的建模前,首先要進行必要的前期準備工作。首先利用有限元軟件ABAQUS 對CX8075 加工中心電主軸進行了熱-結構的耦合分析,可以得到電主軸各個節(jié)點的溫升以及電主軸軸端的熱變形誤差的數(shù)據(jù),這里總共分析得到了電主軸在冷卻液流量為20.52L/min 和16.52L/min 兩種情況下的主軸溫升和熱變形誤差數(shù)據(jù),其中第一組數(shù)據(jù)用于BP 網(wǎng)絡的訓練以測試其擬合的性能,第二組為測試組數(shù)據(jù),用于對網(wǎng)絡的預測能力的測試。分析所得到的節(jié)點的溫升變化數(shù)據(jù)并不能夠全部應用于建模,還需進行一系列的篩選和優(yōu)化以選出電主軸的熱關鍵點。熱關鍵點選擇的范圍為電主軸的表面的46 個節(jié)點,通過在MATLAB 中進行模糊聚類的分析,最終選取了5 個與電主軸熱誤差線性關聯(lián)度最大的節(jié)點來應用于BP 神經(jīng)網(wǎng)絡的建模,這5 個節(jié)點分別位于前法蘭盤上的608 和603 號節(jié)點、后軸承架上的222 和15號節(jié)點以及主軸外殼上的218 號節(jié)點,按順序依次編號為1 ~5,則具體的位置分布如圖1 所示[10]。
圖1 電主軸溫度測點分布示意圖
BP 神經(jīng)網(wǎng)絡具有三層或者三層以上的結構,第一層為輸入層,最后一層為輸出層,中間的一層或者數(shù)層被稱為隱含層。BP 神經(jīng)網(wǎng)絡具有信號前向傳遞,而誤差反向傳播的特點。
圖2 中,Xi(i = 1,2,…,n)是神經(jīng)網(wǎng)絡的輸入值;而Yj(j = 1,2,…,m)為BP 神經(jīng)網(wǎng)絡的預測值;ωij和ωjk為BP 神經(jīng)網(wǎng)絡的網(wǎng)絡權值,它們的值會隨著網(wǎng)絡訓練的過程不斷更新。
BP 神經(jīng)網(wǎng)絡的結構示意圖如圖2 所示。
圖2 BP 神經(jīng)網(wǎng)絡拓撲結構圖
BP 神經(jīng)網(wǎng)絡的訓練的過程即為建模的過程,只有經(jīng)過訓練后的網(wǎng)絡才具備聯(lián)想記憶和預測的能力。網(wǎng)絡的訓練過程包括以下幾個步驟:
(1)網(wǎng)絡的初始化:初始化輸入層與隱含層、隱含層與輸出層神經(jīng)元之間的連接權值ωij和ωjk,初始化隱含層的閾值a 和輸出層的閾值b,最后給定學習的速率和神經(jīng)元的激勵函數(shù)
(2)隱含層輸出的計算:隱含層的輸出H 的表達式如下所示:
式中:l 為隱含層的節(jié)點數(shù);f 為隱含層的激勵函數(shù)。
(3)輸出層的輸出計算:神經(jīng)網(wǎng)絡的預測輸出Ο,其計算的表達式如下所示:
(4)誤差的計算:根據(jù)網(wǎng)絡的預測輸出Ο 和期望輸出Y,計算網(wǎng)絡的預測誤差e。
(5)權值的更新:根據(jù)網(wǎng)絡的預測誤差e 更新網(wǎng)絡的連接權值ωij和ωjk。
式中的η 為神經(jīng)網(wǎng)絡的學習速率。
(6)閾值的更新:根據(jù)網(wǎng)絡預測誤差e 可以更新網(wǎng)絡的節(jié)點閾值a 和b。
(7)判斷算法迭代是否結束,如果沒有結束,則返回步驟2。
網(wǎng)絡的訓練在MATLAB 工具箱中來完成,在實際訓練之前首先要確定網(wǎng)絡的結構形式和一些訓練參數(shù)的設定。
(1)網(wǎng)絡的層數(shù)選擇三層BP 神經(jīng)網(wǎng)絡,對于任意n 維輸入到m 維輸出數(shù)據(jù)的映射,它都能夠勝任;輸入層節(jié)點數(shù)選擇選擇5 個節(jié)點,分別對應之前確定的5 個溫度輸入變量;輸出層節(jié)點數(shù)目為2,分別對應電主軸的軸向和徑向的熱變形誤差;隱含層節(jié)點的數(shù)目確定起來比較困難,它的數(shù)目的多少將直接影響到所訓練網(wǎng)絡的質量,這里參考公式(8)和公式(9)先確定一個初始值,然后調整該值的大小,并進行多次的訓練實驗比較每一次的訓練效果后,最終確定了選擇12 個節(jié)點時效果最佳。
式中:n 為輸入層神經(jīng)元個數(shù);m 為輸出層的神經(jīng)元個數(shù);a 為[1,10]之間的常數(shù)。
這樣最終的網(wǎng)絡結構形式就確定為5-12-2。
(2)接下來選擇網(wǎng)絡的激勵函數(shù),第一層激勵函數(shù)選擇正切S 型傳遞函數(shù)'tansig';輸出層激勵函數(shù)采用了線性傳遞函數(shù)'purelin';網(wǎng)絡的訓練采用了系統(tǒng)默認的方法'trainlm',使用該方法訓練速度快,且能達到較高的訓練精度。
(3)網(wǎng)絡的最大訓練次數(shù)選擇1000 次,如果網(wǎng)絡訓練超過了設定次數(shù)還沒有達到收斂,則要適當?shù)卦黾哟螖?shù);期望的誤差平方和設定為0.001,雖然較小的誤差值會使模型的擬合效果更好,但也同時會降低模型的預報能力;訓練步長設定為初始值0.01。
需要注意的是,在進行網(wǎng)絡的訓練之前要對網(wǎng)絡的輸入和輸出數(shù)據(jù)進行歸一化處理,歸一化后的數(shù)據(jù)再進行訓練能夠加快網(wǎng)絡的訓練速度,也更容易收斂,歸一化的方法有很多種,這里我們采用如下的公式進行數(shù)據(jù)的歸一化:
運用此公式歸一化后所有的數(shù)據(jù)都限定在了區(qū)間[-1,1]中。
以下是利用MATLAB 神經(jīng)網(wǎng)絡的工具箱來完成該網(wǎng)絡的訓練和預報輸出主體代碼。
網(wǎng)絡的訓練完成之后,將第一組數(shù)據(jù)(冷卻液流量為20.52L/min)中的溫度變化數(shù)據(jù)再次代入訓練好的網(wǎng)絡模型中,并與誤差原始值(有限元計算值)進行對比后,可以得到電主軸熱變形誤差的擬合對比結果,如圖3 和圖4 所示。
圖3 徑向熱誤差擬合對比效果圖
圖4 軸向熱誤差擬合對比效果圖
將第二組數(shù)據(jù)(冷卻液流量為16.52L/min)中的溫度變化數(shù)據(jù)導入訓練好的網(wǎng)絡模型中,并與原始值(有限元計算值)進行對比顯示,可以得到圖5和圖6 電主軸熱誤差BP 網(wǎng)絡預報結果對比圖。
由圖3 ~6 中可以直觀地看到,電主軸的原始熱誤差值與模型計算的輸出結果的值非常接近,這代表運用該BP 神經(jīng)網(wǎng)絡模型能夠補償大部分的熱變形誤差,而運用該網(wǎng)絡進行補償后的誤差如圖中所示的殘余誤差曲線。
圖5 徑向熱誤差預報對比效果圖
圖6 軸向熱誤差預報效果圖
另外,我們對此次訓練的模型的主要精度指標進行實際的測試后,得到的結果如表1 所示。
表1 BP 神經(jīng)網(wǎng)絡模型的主要精度指標
綜上所述,利用BP 神經(jīng)網(wǎng)絡來建立電主軸的熱誤差補償模型是一種可行性較高的方法,通過圖2 ~5 的對比效果和表1 所測得的精度指標顯示,運用該模型能夠顯著提高電主軸的精度,減小加工誤差。然而,在實驗中也發(fā)現(xiàn)了BP 神經(jīng)網(wǎng)絡的諸多不足之處,主要是操作者的水平要求較高,網(wǎng)絡訓練的參數(shù)比如隱含層節(jié)點數(shù)、期望誤差平方和指標等等的選定需要經(jīng)過多次的實驗比較后才能最終確定,因此網(wǎng)絡的訓練時間較長。
[1]楊建國,張宏韜,童恒超,等. 數(shù)控機床熱誤差實時補償應用[J]. 上海交通大學學報,2005,39(9):1389-1392.
[2]Jie Zhu,Jun Ni,Albert J.Robust thermal error modeling and compensation for CNC machine tools[D],Doctoral dissertation in the University of Michigan,2008.
[3]Yang,Hong,Ni,Jun. Dynamic modeling for machine tool thermal error compensation,J. Manuf. Sci. Eng.,2003,125(2):245-254.
[4]劉永吉,沈超,化春雷. 五軸聯(lián)動機床的主軸熱誤差補償[J]. 機械制造,2011(6):9-10.
[5]陳莉,賈育秦,畢有明,等. 基于BP 神經(jīng)網(wǎng)絡數(shù)控機床熱誤差建模的研究[J]. 機電工程技術,2011,40(1):16-57.
[6]伍良生,翟少劍,周大帥,等. 基于RBF 神經(jīng)網(wǎng)絡的主軸熱變形實時測量與研究[J]. 制造技術與機床,2011(8):27-30.
[7]雷春麗,芮執(zhí)元,劉軍. 數(shù)控機床電主軸熱誤差的預測方法[J]. 蘭州理工大學學報,2012,38(1):28-31.
[8]文懷興,王美妍. 高速電主軸熱態(tài)性能的有限元分析及溫升控制[J]. 組合機床與自動化加工技術,2010(9):52-55.
[9]李金華,劉永賢,韓家亮,等. 車削中心主軸系統(tǒng)熱特性有限元分析的研究[J]. 組合機床與自動化加工技術,2011(11):6-8,11.
[10]蘇宇鋒,袁文信,劉德平,等. 高速電主軸熱——結構特性研究[J]. 組合機床與自動化加工技術,2012(1):25-27.