杜柳青 余永維
(重慶理工大學機械工程學院, 重慶 400054)
數控機床在服役期間,內部各組成要素之間及與外部系統之間不斷相互作用,導致運動精度發生衰退的各類因素逐漸顯現,如零部件變形、磨損、疲勞、銹蝕、老化、松動等。影響精度變化的各因素具有非線性和高度耦合的特性。因此,數控機床精度衰退具有高度的非線性和不可逆性,是一個復雜非線系統的時空演化過程。盡早對數控機床運動精度劣化進行預示對提高機床精度保持性、可靠性具有重要意義[1]。
數控機床是集光、機、電、液于一體的復雜精密機械裝備,難以建立準確的失效物理模型,目前對精度及性能演化方面的研究以基于數據驅動的智能方法為主[2-6]。國內外學者進行了相關研究。JASON等[7]提出一種結合深度信念網絡和反饋神經網絡的設備性能預測方法,在螺旋錐齒輪測試設備剩余壽命預測實驗中獲得了較好的準確性。LIAO等[8]提出了一種基于受限玻爾茲曼機的旋轉機械故障預測方法,采用正則化方法提高了輸出特征的泛化性。ZHAO等[9]提出了一種基于局部特征的循環神經網絡預測方法,并在齒輪箱和軸承早期故障預測中進行了驗證。雷亞國等[10-11]提出基于深度自動編碼器的機械裝備大數據健康監測方法,并用遷移學習方法解決了訓練樣本不足問題,在多級齒輪傳動系統的健康狀態識別中效果較好。李海等[12]提出了一種基于多維時間序列的數控機床狀態預測方法,采用密度空間聚類算法進行狀態序列分析,建立最佳歷史狀態矩陣來預測下一時刻狀態。從現有研究成果看,目前對數控機床精度演化研究的文獻相對比較少,但相關研究方法對本文也具有較好的借鑒意義[13-15]。
深度學習具有強大的特征自學習能力,在大數據處理方面顯示了優越的性能,已為模式識別、圖像處理、語音識別等領域提供了解決方法[16-19]。循環神經網絡(Recurrent neural networks,RNN)是深度學習的代表算法之一,其解決了傳統深度卷積神經網絡不能學習時序特征的缺陷,使預測準確性大幅提升[20-22]。門控循環單元是一種RNN,基于長短時記憶網絡(Long short-term memory,LSTM)優化而來,在挖掘時序數據的時空特征方面有獨特優勢,即訓練參數少、收斂速度快[23-25]。數控機床運動精度狀態數據序列組合具有大數據的一些基本特點:大容量、多樣性、高速率。因此,為盡早發現數控機床潛在的失效風險,預示運動精度的劣化演化,本文基于深度門控循環網絡框架,提出一種融合注意機制的數控機床運動精度劣化預示方法。利用時序深度學習強大的時空特征提取能力,建立基于深度GRU網絡的精度劣化預示模型,挖掘蘊含在振動、溫度、電流等監測數據序列中的運動精度演化信息。為了提高模型預測的準確性,建立狀態信號注意網絡,自動分析振動、溫度等狀態參量對機床運動精度劣化的影響程度。為了提升較長時間段預測的準確性,建立時序注意網絡自主選取精度劣化歷史信息關鍵時間點,加強關鍵時間點的信息表達。
GRU神經元之間存在反饋連接,即具有“時間參數”,能夠動態記憶歷史信息,在學習新信息的同時使歷史信息留存持久化。GRU單元結構如圖1所示,每個GRU含有一個由更新門和重置門組成的記憶單元。更新門負責控制前一時間點的狀態信息傳遞到當前時間點狀態值的權重,重置門決定新的輸入信息與記憶信息如何結合。GRU通過以上門控單元來保存長期序列中的信息,且不會隨時間而清除或因為與預測無關而移除,使得網絡模型能夠較長時間選擇性保存并傳遞信息。

圖1 GRU單元結構Fig.1 Unit structure of GRU
在當前時間點t,GRU單元的輸入有:時間點t的輸入信息xt、時間點t-1 GRU單元的輸出即歷史信息ht-1;GRU單元的輸出信號為ht;更新門和重置門的輸出分別為zt、rt。GRU信息傳遞式為
ht=(1-zt)tanh(rt°Uht-1+Wxt)+zt°ht-1
(1)
式中W、U——權值矩陣 tanh——激活函數
°——按元素相乘運算符號
將GRU的反饋結構在時間維度上展開,在每一時間點,GRU在時序方向上展開為一個深度學習網絡中的一層,隨著時間點的不斷更新,即形成時間維度上的深度GRU網絡(圖1),自動提取動態時間序列的時空特征。

T+1=f(y1,y2,…,yT,x1,x2,…,xT)
(2)
式中f——模型映射
運動精度劣化預示曲線如圖2所示,當精度預測值超過閾值或預測精度變化速率超過閾值時,均預示機床處于運動精度快速劣化階段,存在突發失效風險,需預先采取措施。

圖2 運動精度劣化預示曲線Fig.2 Prediction curve of motion accuracy’s deterioration
提出的運動精度劣化預示模型采用基于GRU的編碼器-解碼器架構(圖3),包括深度GRU編碼網絡和深度GRU解碼網絡。同時,為了增強主要狀態信號和關鍵時間點的信息表達,設計了狀態信號注意網絡和時序注意網絡,進一步提升模型預測的準確性。劣化預示模型以數據驅動,自動挖掘運動精度與狀態信號時間序列的時空特征,對運動精度劣化趨勢進行預測。深度GRU編碼網絡對輸入序列進行編碼,從輸入原始狀態序列中學習中間映射E=Encode(x1,x2,…,xn)。深度GRU解碼網絡根據中間映射E和之前已經生成的歷史信息,生成每一個輸出yT+1=Decoder(E,y1,y2,…,yT)。狀態信號注意網絡自動挖掘狀態信號與運動精度之間的關聯程度,時序注意網絡自動挖掘歷史信息時間點的重要程度,以相應權值增強主要狀態信號與關鍵時間點的信息表達。

圖3 精度劣化預示模型Fig.3 Prediction model of accuracy deterioration
為提高模型的非線性擬合能力,采用多層GRU網絡設計編碼器/解碼器。深度GRU編碼網絡除第一隱層外的其余隱層神經元數量與輸入變量數量相同,均為16(即X、Y、Z軸及主軸的振動幅度、溫度、驅動電流、功率)。為學習更多可以饋入后續層的低階特征,增加第一隱層神經元數量至32。深度GRU解碼網絡的各隱層神經元數量與時間步長L相同。
網絡的隱含層數量對深度學習網絡性能至關重要,層數過少,則模型擬合能力弱;層數過多,可能會出現過擬合,并且會增加訓練難度,使模型難以收斂。同時,過短的時間步長會引起預測經驗知識的缺失,影響模型預測準確性;過長的時間步長又會分散對相關度高的時間點的關注。為此,采用多層網格搜索方法優化GRU編碼網絡隱層數量、解碼網絡隱層數量和時間步長3個網絡參數。遍歷這3個網絡參數構成的三維搜索空間,當深度GRU編碼/解碼網絡的隱層數、時間步長分別為6/5層和50時,模型的平均正確率達到最高,為96.5%,可確定此時模型隱層數為最優網絡深度。深度GRU編碼/解碼網絡結構如圖4所示。

圖4 深度GRU編碼/解碼網絡結構圖Fig.4 Deep GRU coding/decoding network
GRU編碼網絡輸出為
ht=fGRU(ht-1,xt)
(3)
GRU解碼網絡輸出為
dt=fGRU(dt-1,ht)
(4)
將GRU循環網絡按照時間步長L展開為深度前饋神經網絡,以反向傳播算法分別對GRU編碼/解碼網絡進行訓練。對于深度GRU解碼網絡,基于注意機制的深度GRU解碼網絡的參數集合為θ,損失函數設為
(5)
以最小化損失函數為訓練目標,對深度GRU解碼網絡的各參數進行更新和調整,可得到具有最優參數的解碼。同理,可實現深度GRU編碼網絡的訓練和優化。
2.3.1狀態信號注意網絡
與數控機床運動精度的關聯因素較多,如機床振動、運動部件溫度、傳動件摩擦力、驅動電流、噪聲等機床狀態信號。不同的狀態信號與運動精度關聯程度不一樣。設計一種狀態信號注意網絡,可以自動挖掘運動精度與狀態信號間的關聯關系,根據關聯程度對輸入信息的不同參量序列賦予不同的權重,以提高機床精度劣化預測的效率和準確性。狀態信號注意網絡如圖5所示。

圖5 狀態信號注意網絡Fig.5 State signal attention network
狀態信號注意網絡由3層BP神經網絡、softmax歸一化函數與加權求和函數組成。狀態信號注意網絡的輸入除了數控機床的狀態信號xt外,還包含深度GRU編碼網絡上一時間點的隱層輸出ht-1,其蘊含有歷史信息。利用BP神經網絡挖掘數控機床狀態信號與精度的相關性,其輸出為相關性系數,即
(6)
狀態信號注意網絡采用softmax函數實現注意評分操作,將BP神經網絡輸出的相關性系數轉換為權值即狀態信號權重矩陣a,得到在時間點t各狀態信號對機床運動精度的重要程度,即
(7)
然后對輸入的狀態信號對應加權,對不同狀態信號采取不同的權重,作為深度GRU編碼網絡當前時間點輸入的一部分,即
(8)
2.3.2時序注意網絡
機床振動、運動部件溫度、傳動件摩擦力、驅動電流、噪聲等狀態信號在不同時間點與運動精度的關聯程度不同。因此,設計時序注意網絡對輸入序列的不同時間點賦予不同的權重,能夠在GRU深度解碼網絡中進一步增強狀態信號在關鍵時間點的信息表達,提高預示模型較長時間的準確性及穩定性。時序注意網絡如圖6所示。

圖6 時序注意網絡Fig.6 Sequential attention network
與狀態信號注意網絡相似,時序注意網絡也由3層BP神經網絡、softmax歸一化函數與加權求和函數組成。時序注意網絡輸入包括深度GRU編碼網絡不同時間點的輸出序列h,以及深度GRU解碼網絡上一時間點的隱層輸出dt-1。dt-1蘊含有時序歷史信息。BP神經網絡以h與dt-1作為輸入進行注意評價運算。利用softmax將BP神經網絡的評價結果轉換為概率,獲得不同時間點權重矩陣g,即狀態信號在不同時間點對機床待預測運動精度的影響程度。最后,對深度GRU編碼網絡不同時間點輸出對應加權,實現對狀態信號在不同時間點采取不同的權重,作為深度GRU解碼網絡當前時間點的部分輸入。
圓運動是通過多軸插補指令合成,圓運動精度同時反映了各聯動軸精度,其不僅包含與數控機床的幾何精度、位置誤差、定位精度等有關信息,還包含與進給速度和伺服控制系統有關的動態誤差分量信息。圓度誤差能夠較全面反映數控機床的運動精度劣化情況。
數控機床(包括5軸數控機床)的直線軸X、Y、Z軸和旋轉(擺動)軸A、B、C之間聯動形成的圓度誤差均能通過球桿儀檢測。以5軸數控機床工作臺C軸旋轉聯動為例,C軸作0°~360°勻速回轉,主軸端球桿儀圓球球心在XY平面做同步圓運動,球桿儀做C軸軸線檢測(圖7),可檢測出C、X、Y3個坐標軸的聯動運動精度,如圖8所示。

圖7 五軸加工中心C軸聯動旋轉沿軸線方向檢測Fig.7 Five axis machining center C-axis linkage rotation along axis direction detection

圖8 C軸聯動旋轉沿軸線方向檢測結果Fig.8 Detection results of C-axis linkage rotation along axis direction
數控機床圓度誤差的時間序列為y=(y1,y2,…,yT),T為當前時刻。圓度誤差與X、Y、Z軸及主軸的驅動電流、功率、振動幅度、溫度等狀態信號相關聯,數控機床狀態信號矩陣為
(9)

(1)采集圓度誤差的歷史信息y及狀態信號的歷史信息x,標準化后作為模型樣本數據。
(2)建立基于深度學習網絡與注意機制的數控機床精度劣化預示模型,確定網絡結構。
(3)采用機床加速劣化實驗數據進行GRU深度網絡和注意網絡的第一階段訓練,粗調網絡參數。
(4)用機床實際精度劣化樣本數據進行第2階段訓練,優化網絡參數,建立模型輸入/輸出映射fGRU。
(5)實時檢測圓度誤差當前信息yT及當前狀態信號信息xT作為模型輸入。
(6)預測未來時間點圓度誤差數值,預測值為
T+1=f(y1,y2,…,yT,x1,x2,…,xT)
(7)連續預測獲得精度變化曲線,對機床精度劣化趨勢進行預示。
模型預示流程如圖9所示。

圖9 深度學習模型預示流程圖Fig.9 Prediction process of deep learning model
數控機床在服役過程中的精度劣化是一個緩慢過程,為解決深度學習網絡訓練所需大量數據的問題,提出兩階段網絡訓練的策略:第1階段,用機床加速劣化實驗獲得的樣本數據訓練GRU深度網絡,初步學習網絡參數;第2階段,用機床實際精度劣化樣本數據進行訓練,進一步優化網絡參數。
深度學習網絡結構復雜,訓練需要較大的樣本數量。圖10為深度GRU預示模型誤差與樣本數量關系曲線,在樣本數量大于3 500后,測試誤差與訓練誤差均收斂且相差很小,測試模型泛化性能好。因此,采集3 500個機床加速劣化實驗樣本,450個機床精度實際劣化樣本,共3 950個樣本來訓練及測試本文深度GRU預示模型。

圖10 模型誤差與樣本量關系曲線Fig.10 Relationship between model error and sample size
以XHA2120*60型龍門加工中心為對象,檢測時機床作半徑為200 mm、進給速度為1 000 mm/min的X-Z兩軸插補圓運動,利用Renishaw QC20型球桿儀在線測量機床的圓度誤差。同時,通過內置及外置傳感器采集X、Y、Z軸和主軸的振動幅度、溫度、驅動電流、功率等16個狀態信號序列。以該機床服役期間定期監測獲得的560個圓運動誤差為實際樣本,其中前450個作為第2階段訓練樣本,后110個作為測試樣本,通過預測曲線分析數控機床運動精度劣化變動規律。

在基于深度學習和注意機制的運動精度劣化預示模型中,使用多層網格搜索方法優化后的時間步長確定為50,采用前50個時間點的狀態信號歷史數據預測后續時間點的圓度誤差;采用多層網格搜索并交叉驗證,依據各隱層數對應模型的平均正確率,確定深度GRU編碼網絡和解碼網絡隱藏層數分別為6和5。對預示模型中權重矩陣按均值為0、方差為1的高斯分布隨機初始化,偏置項均初始化為0,設置學習率為0.001。訓練迭代次數為970時,訓練集擬合精度達到最高,獲得具有最優參數的運動精度劣化預示模型。
訓練完成后,用運動精度劣化預示模型對450個時間點之后的運動精度實際劣化情況進行預測,預測相對誤差定義為
Er=(t-yt)/t×100%
采用單步預測,即依次迭代預測后一個時間點的輸出,以此類推,該龍門加工中心圓度誤差劣化預測值與實際值變化趨勢基本一致,實際樣本的后110個點的預測最大絕對誤差為0.13 μm,相對誤差最大為4.52%,表明預測結果能夠較好反映該運動精度劣化量的趨勢和規律,預測精度較高,表明了本文方法的有效性和準確性,預測趨勢如圖11所示。

圖11 本文方法結果Fig.11 Result of proposed method
在樣本采集及二階段訓練策略有效性對比實驗中,只用機床加速劣化樣本訓練本文深度預示模型,在實際測試樣本集上的最大相對誤差為15.06%;只用450個實際機床精度劣化樣本訓練本文深度預示模型,因訓練樣本不足,預測誤差偏大,實際測試的最大相對誤差為8.11%;采用本文兩階段訓練策略訓練本文深度預示模型,實際測試時的最大相對誤差為4.52%,說明了本文樣本采集及二階段訓練策略的有效性,機床加速劣化樣本的訓練誤差能夠通過第2階段實際樣本的訓練來消除。此外,文獻[6]證明了采用深度遷移訓練方法在大數據下機械裝備故障診斷中的有效性和深度學習方法具有很好的適應性和泛化性,也間接說明了本文訓練方法的有效性。
為驗證本文提出注意機制的效果,進一步分析注意機制的實驗數據,發現在時間點t=356,Z軸伺服增益不匹配加大,此時狀態信號的相關性權值之和為1,相關狀態信號的權值在0~1之間,以此量化關聯關系。相關狀態信號的權值越大表明其與運動精度的關聯程度越強。分析狀態信號注意網絡提取的圓度誤差與機床其他狀態信號的相關性權值,其中Z軸的振動權值最大,為0.49,其對X/Z軸聯動運動精度影響最大。Y軸溫度權值為0.06,其對X/Z軸聯動運動精度的影響最小,這與理論分析及實際情況相符,說明狀態信號注意機制的有效性。分析時序注意網絡提取的圓度誤差與前50時間點的時序信息相關性權值,可知其在時間點t=431的權值為0.35,此時間點的狀態信息與運動精度關聯程度最大,這與時間點t=431反向間隙劣化較大對運動精度影響較大相符。
將本文方法與不含注意機制深度GRU預示模型比較,對于預測的110個時間點,與本文相同結構的傳統GRU預示模型預測最大絕對誤差為0.38 μm,相對誤差最大為9.72%,本文方法明顯高于傳統GRU預示模型,傳統預測趨勢如圖12所示。為比較本文方法和傳統GRU方法的報警預示性能,分別以處于報警預示區的測試集后35個時間點圓度誤差為閾值,定義報警預示正確率W=T′/A為評價指標,其中A為測試集樣本數,即為35,T′為被模型正確預測的數據量,設定相對誤差在±4%以內的預測為正確預測,反之為錯誤預測。本文方法誤報1個、漏報1個、報警預示正確率為94%,傳統GRU方法誤報5個、漏報3個、報警預示正確率為77%。可見,在報警預示性能方面傳統GRU方法顯著低于本文方法。

圖12 傳統GRU預示模型結果Fig.12 Prediction model results of traditional GRU
與非平穩ARIMA時間序列預測法和BP神經網絡預測法作對比實驗,ARIMA方法的最大相對誤差為13.62%,BP神經網絡預測方法為17.09%。可見,本文方法預測精度明顯優于傳統方法,證明了本文方法的有效性。
為進一步驗證本文方法的適應性,以XHA2120*60型龍門加工中心預測模型相同網絡結構參數:深度GRU編碼/解碼網絡的隱層數、時間步長分別為6/5和50時,對加工中心、數控車床、數控磨床、數控銑床等4種數控機床作同樣的訓練及預測實驗,預測精度均較高,其預測最大相對誤差為5.67%、6.07%、5.15%、5.89%,表明本文方法有較好的泛化性能和適應性。
利用時序深度學習網絡強大的時空特征自動提取能力,提出了一種基于深度GRU網絡框架的數控機床運動精度建模與預測方法,并融合狀態信號與時序注意機制,自動分析振動、溫度等狀態信號與機床精度間的關聯關系,同時自主選取精度劣化歷史信息關鍵時間點,提升了精度劣化預測的準確性。實驗證明可以很好地追蹤數控機床精度變化趨勢,對劣化趨勢進行預示,有較高的準確性和魯棒性,優于單純的GRU深度網絡,也優于傳統的ARIMA時序方法和BP網絡預測方法。