,, ,,
(同濟大學機械與能源工程學院,上海201804)
隨著我國城市化的飛速發展,大量人口涌入城鎮,地上空間不斷縮減,我國也將發展目光投入到地下空間。盾構機作為隧道推進的主要機械,是一種集機、電、液為一體的大型設備,本身的結構相當復雜,與此同時,盾構機往往工作在潮濕、陰暗、充滿灰塵的地下空間,工作環境十分惡劣,這使得盾構發生故障的概率很高,進而會耽誤工程進度,大大加劇工程成本。
現階段,盾構機的整修仍然以工人的手工修理為主,即使經驗豐富的工人也會花費大量的時間查找故障原因所在[1],因此,對盾構機在運行過程中進行狀態監測及故障診斷就顯得尤為重要。文獻[2]提出了一種基于機理模型的故障預測方法并在航空發動機以及傳感器上進行了驗證,但這種基于數學的模型在設備參數較多時精度不高。文獻[3]提出了一種針對轉子試驗臺的專家系統,并對其多故障進行診斷,但專家系統往往依賴于專業人員的經驗知識,故模型的可依賴度不高。隨著大數據時代的來臨,深度學習的持續升溫,工程設備實時運轉數據背后所隱含的健康信息值得我們去深究。因此,實現基于數據驅動的設備故障預測顯得尤為重要。
基于數據驅動的的故障預測方法主要有人工神經網絡、遺傳算法、支持向量機、奇異譜分析等。由于盾構機的故障時間序列參數眾多,且獲得數據都是較粗糙的數據包形式且精度不高,故很難用單一模型來擬合數據曲線以達到理想的預測效果[4];而混合方法建模過程復雜,受人為因素影響較大,不利于實際應用中推廣。隨著深度學習技術的不斷發展,人工神經網絡在應對數據分類時的有效性引起了人們的注意,但神經網絡在處理時序數列時將取得的數據視為獨立的,故無法模擬時間序列的馬爾可夫過程[5],基于此情況便孕育出了循環神經網絡(Recurrent Neural Network),它認為系統在某一時刻的輸出狀態yt不僅與這一時刻的輸入xt有關,也依賴于上一時刻的輸出yt-1,通過將時間序列輸入預測模型,能夠對數據進行逐層抽象并提取特征,以達到令人滿意的精度。而LSTM則是在RNN的基礎上增加了三個“門”操作,以解決RNN存在的難以訓練長度過大的時序數據的問題。
本文圍繞LSTM循環神經網絡展開,在故障預測方面摒棄傳統方法中所使用的大量信號處理技術,充分利用LSTM循環神經網絡在處理時序數據序列時的優勢,并對預測系統架構進行分層,降低了系統的耦合度[6],為設備故障預測系統的通用化提供了參考。
本章主要介紹LSTM模型,包括計算過程以及相關的RNN模型。

圖1 RNN網絡簡圖(左)及隱藏層細胞 展開結構(右)
st=f(Wssst-1+Wxsxt+bs)
(1)
yt=Wsyst+by
(2)
其中,W表示權重系數矩陣(例如Wxs表示輸入層到隱藏層的權重系數矩陣),b表示各層的偏置向量,f表示激活函數(例如sigmoid函數)。
RNN隱藏層之間的神經元是互相連接的,因此數據在層內各神經節點之間是共享的,這也是RNN可以有效處理時序數據的關鍵之處。RNN在訓練時序數據時采用反向傳播算法更新各系統參數,故當RNN網絡層數較大時易產生梯度消失和梯度爆炸問題。由此,LSTM模型應用而生,它在傳統RNN隱藏層細胞的基礎上增加了三個“門”,可有效解決RNN在處理長時序數據時存在的問題。經過不斷演化,目前應用最為廣泛的LSTM模型如圖2所示,其中各參數都可由如下的前向計算公式(3)-(8)計算所得:
it=σ(Wsist-1+Wcict-1+Wxixt+bi)
(3)
ft=σ(Wsfst-1+Wxfxt+Wcfct-1+bf)
(4)
zt=tanh(Wscst-1+Wxcxt+bc)
(5)
ct=itzt+ftct-1
(6)
ot=σ(Wsost-1+Wxoxt+Wcoct+bo)
(7)
st=ottanh(ct)
(8)

圖2 LSTM隱藏層展開結構
其中,i,f,o分別代表輸入門,忘記門以及輸出門,c代表細胞狀態,s表示隱藏層序列,W表示權重系數矩陣,b表示偏置項,tanh和σ分別表示正切激活函數和sigmoid激活函數。通過在傳統RNN的細胞結構中增加三個“門”,LSTM細胞結構可有效遺忘之前的無用信息,保存有效的輸入信息,從而更加高效地處理長時間序列。理論上,LSTM循環神經網絡可以處理無限長的時間序列。
LSTM循環神經網絡在訓練數據集時有三個步驟:1)根據前向計算公式計算模型的輸出值;2)根據定義的損失函數計算模型的誤差,并利用反向傳播算法更新各系統參數;3)重復第2步直至模型的準確率保證在允許范圍內。
本文旨在提出一種適用于盾構機故障預測的系統,LSTM循環神經網絡只是其中的核心技術,整個系統還包括底部傳感器采集數據的預處理、盾構機關鍵部件的劃分及其特征參數的選取等。通過分析,提出了盾構機故障預測系統的四層框架結構,如圖3,由下至上依次為設備配置層、數據整合層、故障預測層、可視化層。其中,設備配置層主要負責新增盾構機的配置,數據整合層負責采集數據的預處理及入庫操作,故障預測層負責建立預測模型,對盾構機故障進行預測,可視化層負責將診斷結果以直觀的形式顯示在界面上。

圖3 預測系統四層架構
由于制造商的不同,所制造的盾構機在某些方面有所差異,但在機械結構和整體功能上相差不大,如目前國內用的比較多的海瑞克、小松、鐵建等品牌的盾構機,其在機械結構上大都可以劃分為刀盤系統、推進系統、注漿系統、螺旋機系統等。設備配置層就是通過為底層設備編寫相應的通信接口程序或改變系統的配置參數,使各種類型的盾構機在屬性與狀態兩方面都可以無誤地錄入到系統中來,接著對錄入的盾構機需要進行關鍵部件的劃分,即將盾構機經常發生故障的幾大系統選取出來作為故障預測的對象。
數據整合層是故障預測層能否擁有良好預測結果的基礎,良好的數據能有效提高故障預測的準確性。該層的主要功能就是將傳感器采集到的數據包進行解析,并通過第三方接口獲取盾構機故障預測中所需的各種數據源并對數據進行整合,同時將整合好的數據進行存儲并按各功能模塊進行劃分以利于后續的分析挖掘操作。
通常來說,盾構機相關數據源通常有三個:實時數據源、故障信息數據源、地質數據源。實時數據源記錄的是盾構機運轉的實時信息,故障信息數據源記錄的是盾構機在運行過程中的各種故障記錄,而地質數據源記錄的是盾構機推進過程中地面的沉降隆起情況。盾構機的實時數據通常存在兩種形式:開關量和模擬量,但這兩種數據形式在計算機內存中的存儲形式是不一樣的,模擬量需要8個字節,而開關量僅需要1個字節。底層傳感器采集到的實時數據是以數據包的形式進行傳輸的,數據包既包含模擬量也包含開關量,所以需要對該數據包進行解析才能得到某個測點的實時數據,即首先需要定位被測點的數據在數據包的起始位置,再根據測點所對應的字節長度解析出其相應的數據段。而對于故障信息數據庫及地質數據庫,其數據庫的部署可能與實時數據的數據庫不在同一臺服務器上,以上海地鐵盾構設備工程有限公司與同濟大學的合作項目為例,盾構公司提供的故障信息數據庫及地質數據庫部署在web服務器上,所以通過HTTP—GET的方式請求數據,并將請求到的數據與實時數據源進行整合。整合過程如圖4所示,圖中顯示了這四個數據庫的交互示意圖,箭頭表示數據的流向。

圖4 數據源整合示意圖
在數據整合完畢后,將所有的信息存入到關系型數據庫SQL Server中,并結合盾構機管理以及用戶使用所需的模塊,可以將數據庫系統劃分為圖5所示的五大模塊:區間管理、設備管理、數據處理、分析挖掘、用戶管理。

圖5 整合數據庫五大模塊
經過數據整合層整合之后的數據為一個二維數據列表形式,其中仍然有很多缺失值,因此在建立模型以前,需要對數據集作進一步的清洗。本著對數據庫的保護,通常不會直接對數據庫進行操作,可以通過數據庫導出操作將數據表導出為一張Excel表以方便后續的預測分析。對于數值型的變量采用相應列的平均值來填充空缺值,對于分類型的變量采用相應列中出現頻次最多的那個分類來填充缺失值。在數據清洗完畢后,便要進行特征參數的選取,即將設備配置層中盾構機各關鍵部件運轉時所影響的參數選取出來,如刀盤系統的刀盤扭矩,刀盤轉速,刀盤馬達超負載等;螺旋機系統的水平偏差值,垂直偏差值,螺旋機回路壓力等。在各系統選取完特征參數之后,某些參數的值可能很大也可能很小,基于此,可以對所有值進行標準化處理,使其盡量落在一個取值范圍內。
本次系統采用監督學習的方式進行故障預測,故在將數據輸入模型前,需要對實時數據集及故障數據集做一定的處理使其滿足模型的輸入數據格式。圖6展示了LSTM預測模型的整體框架。本文將實時數據的前百分之七十作為訓練集,后百分之三十作為測試數據。對于故障數據集,需要羅列各關鍵系統可能出現的所有故障形式,并用One-Hot編碼法對所有的故障形式進行標注,這樣不但能夠處理非連續型數值特征,同時也能在一定程度上擴充特征。在對數據標定完之后,我們用數據分割的辦法將數據分割為(X1,X2,X3,…,Xn)。接下來,我們將數據集輸入隱藏層,從圖中可以看出,隱藏層中包含有n個前后相連的LSTM細胞,其中cn-1和sn-1分別為前一個LSTM細胞的工作狀態和輸出,其推導公式見第一章的公式(3)-(8),經過隱藏層后的數據將會到達模型輸出層的分類器,進而得到實際的故障類型輸出。單次訓練輸出的真實值與理論值之間往往有較大的差距,故需要選取一個損失函數來評判真實值與理論值之間的誤差,此系統中定義訓練過程的損失函數如公式(9):

圖6 LSTM預測模型整體框架
(9)
其中,h為數據集樣本數,l為數據集的特征數目,pi為實際輸出值,yi為理論輸出值。設定損失函數最小為優化目標,給定網絡初始化的隨機種子數seed及學習率,應用優化算法不斷更新網絡參數,進而得到最終的隱藏層網絡。
可視化層通過開發大量的頁面構件,并與后臺數據進行綁定,從而實現頁面的可定制化。它主要將實時監控的盾構機關鍵部件以圖表和文字的方式顯示在頁面上,并對盾構機的實時數據進行預測診斷,最終以合適的報表形式將預測的結果顯示在界面上。其可視化界面如圖7所示。

圖7 可視化界面
從圖中可以看出,盾構機故障預測系統的可視化界面是在2.2節中的五大模塊的基礎上增加了一個用戶配置模塊,可以為系統配置具有操作該系統資格的用戶的信息。其它模塊根據各自業務的不同對數據進行展示,或根據功能劃分對系統進行管理、配置。
本文將以盾構機刀盤系統中的軸承作為故障預測的對象,將軸承出現的故障形式進行相應的編碼,并利用搭建的模型對訓練數據集進行訓練,接著用驗證集來驗證模型的精度使其達到滿意的范圍,最后再利用此模型對從數據庫中隨機取出的一組軸承數據進行故障預測,并將故障類型顯示在可視化界面上。
本數據集中軸承的實時參數共計2000個,對應的軸承故障形式也有十種(0表示安全,1表示內圈輕度磨損,2表示內圈中度磨損等),首先需要將數據集中的實時參數數據及故障標簽數據做一定的處理使其滿足診斷模型的要求,接著需要一層一層的疊加神經網絡層以構成完整的LSTM循環神經網絡模型,最后對模型進行訓練及測試。圖8中的代碼給出了模型的搭建及訓練過程。

圖8 模型的搭建及訓練過程
圖9給出了本次實驗的預測結果,其中報表中給出了盾構機的品牌及預測的部位信息,并對預測算法及預測時間做了一定的解釋,最后在結果框中顯示出部件可能發生的故障具體形式,工作人員可根據此提醒盡早檢查部件的健康狀況,以避免盾構機的停機。

圖9 預測結果顯示
本文針對惡劣環境下容易出現故障的盾構機,結合當今很流行的深度學習模型LSTM循環神經網絡,設計了盾構機的故障預測系統。整個系統分為四層:設備配置層、數據整合層、故障預測層、可視化層。為了提高系統快速診斷的能力,在數據整合層首先進行了大量的數據預處理使數據緩存到預分析的數據庫中,接著在特征提取層利用數據分析工具對分析的數據作了進一步的清洗工作,從而可以有效減少預測模型訓練的時間,極大提高系統的運行效率。這種預測系統的提出不但可以在零部件損壞前及時更換,從而提高系統壽命;更可以保證工程在非人為因素影響下推進,進而降低整個工程成本。