曾夏 ,張富強 ,邵樹軍 ,杜超
(1.長安大學道路施工技術與裝備教育部重點實驗室,陜西西安 710064;2.長安大學智能制造系統研究所,陜西西安 710064;3.陜西法士特齒輪有限責任公司,陜西西安 710119)
數控機床組成結構復雜及系統集成度較高,長時間超負荷運行及變工況作業環境易導致零部件發生報警或故障。如何對故障問題及時作出響應,準確判斷故障部位,找出解決故障的方法是實現數控機床智能化的關鍵。而設備運行狀態的參數,如主軸溫度、能耗、振動、轉速等性能參數在一定程度上能夠映射關聯設備的健康狀態,其歷史運維數據的積累是實現精準診斷的基礎。
最近幾十年,數據挖掘等方法大量應用在數控機床的故障診斷中。例如: LEE等通過模糊聚類對鎖床放置溫度傳感器采樣點,完成了主軸溫升補償系統;RASHID等通過挖掘出機床振動的有效數據,提出了一種基于數據挖掘的故障識別和異常檢測方法。何邵燦等在經驗模態分解和隱馬爾科夫模型的基礎上進行研究,建立了機床進給軸絲杠的預警模型;付振華等提出了D-S證據理論的處理方法,可以判斷出數控機床的故障類型。盛博等人提出了基于圖論算法的故障診斷方法,實現了對數控機床故障更加高效準確的診斷。王家海、劉晨陽在報警號碼優先級的不確定推理算法的基礎上進行進一步研究,結果表明對數控機床故障原因的快速準確定位有著良好效果。上述的研究多是在故障模式和故障原因已知的條件下完成的,但是在現場復雜的生產環境下,故障模式和故障原因之間的關系既有關聯性又有非確定性。需要基于數控機床的歷史運維數據,運用數據挖掘技術提取出有用的信息,來構建出故障模式和故障原因之間的關聯規則。
基于關聯規則的故障診斷算法多是以Apriori算法為核心,然而,Apriori算法及類似算法需要產生大量的候選項集,并需要反復掃描數據集,使得算法的效率不高。本文作者對數控機床復雜的運維過程進行故障方面的關聯規則提取,基于數控機床歷史故障記錄數據集,采用頻繁模式增長(Frequent-Pattern Growth,FP-Growth)算法,對數控機床故障模式之間以及故障模式和故障原因之間進行關聯規則的挖掘,對故障模式的原因及概率進行分析,對數控機床的維修具有重要的指導意義。
數控機床裝備機電系統結構的復雜性和操作環境的不確定性,導致數控機床故障發生因素具有多樣性特征。為了梳理數控車床常見故障,對幾種常見的車床故障進行分類及分析,如圖1所示。

圖1 數控機床故障及原因分析
故障信息需要使用關聯規則挖掘技術從歷史操作和維護數據中提取有用的信息,以便挖掘數控機床的故障關聯規則。FP-Growth算法將數據處理后壓縮到頻繁模式樹中,但保留與項集有關的信息。然后將劃分后的數據庫劃分為一組條件數據庫,每個條件數據庫都與一個頻繁元素相關聯,并且對每個數據庫都分別進行挖掘。
數控機床故障診斷關聯規則應用的具體步驟包括:
(1)首先對數據進行收集,實時監控數控機床并同步記錄監控過程和所有數據,形成一個包含數控機床運行維護過程中各種指標的數據庫。
(2)從數據庫中提取出進行故障診斷挖掘所需的數據,對此數據進行一定的處理,包括清除、規范化和標準化等;剔除無效數據,將數據進行轉換進而合并為可以進行挖掘的形式。
(3)在關聯規則中包含很多功能不同的算法,其中挖掘算法用于從大量數據中找出有一定關聯的規則關系。對提取的規則和信息(包括故障分類及其原因)進行處理和分析,接著依據故障類型選取適當的診斷措施,進而完成對系統的故障診斷。
圖2顯示了在數控機床故障診斷過程中,對關聯規則進行挖掘的一個總體框架。該框架基于數控機床歷史的運行和維護數據,關鍵在于生成數控機床的故障診斷關聯規則;并進一步建立了故障模式和模式之間的關聯規則,并分析可能的故障原因及其可能性。

圖2 數控機床故障診斷關聯規則分析框架
(1)首先,初始化包含故障模式信息和相應故障原因的數控機床故障記錄數據集;每掃描一組,計算項目集中每個項目的支持度;然后按照支持度大小進行排序;根據頻繁項目集的生成,執行數據集的第二次掃描,構造FP-tree,依次讀取操作,并創建和標記適當的節點,形成1條代表事務的路徑,同時計算節點的頻率;完成對所有故障模式數據集的搜尋后結束。
(2)接著,利用FP-Growth算法得到數控機床故障模式的頻繁項集,然后可以得到故障之間相關的關聯規則。首先求出故障模式頻繁項集包含的非空子集={,,…,};接著對故障模式的數據集進行掃描,得到頻繁子集的支持度和置信度,挖掘出符合最小置信度要求的關聯規則“?”。然后再次掃描故障數據集,得到故障模式頻繁子集與故障原因關聯規則的支持度和置信度;最后挖掘出符合最小置信度要求的故障診斷原因關聯規則“?”。
在數控機床運行過程中,主軸系統是機床的主要系統之一,在加工工件的過程中主軸系統自身的精度對被加工產品的質量起著關鍵作用。因此,案例以數控機床的主軸系統為例,使用FP-Growth算法對主軸的故障特征相關關聯規則進行研究。
基于數控機床的歷史運維數據,當故障發生時從數控機床故障歷史記錄數據中提取出主軸系統故障相關數據,包括故障模式以及故障原因;分別構成主軸系統故障數據集={,,…,},如表1所示。={,,…,}用來表示各種故障模式,={,,…,}用來表示相對應的原因。

表1 數控機床主軸系統故障數據
表1中包含9個數控機床故障事務和5個故障模式以及相應的故障原因,其中故障模式、故障原因所代表的實際含義如表2所示。

表2 數控機床主軸系統故障數據中字母含義
采用FP-Growth算法挖掘數控機床主軸系統故障頻繁項集的過程如下:
首先對數據庫進行首次掃描,可以得到頻繁項集及其相應的支持度統計,將最小支持度的次數設置為2。將頻繁項集依據支持度從大到小的順序進行排列。
接著構造FP樹,過程如下:最開始創建一個節點,作為FP樹的根節點,用“null”作為標記;然后第二次掃描數據庫,依據次序重新排列每個事務,并在FP樹上創建分枝與每個事務相對應。例如“:、、”,按照次序進行排列會得到“:、、”,在FP樹上的第一個分枝是〈(:1),(:1),(:1)〉。在此條分枝上有3個節點,其中根的子女節點是,鏈接到,鏈接到。第二個數據集依照順序和兩項,它將創建一個新的分枝,鏈接在根之后,鏈接在之后。此處和為同一個前綴,因此的計數將會增加1個,并且創建一個新的節點(:1)作為(:2)的子女鏈接。通常,當一個事物在FP樹上需要增加分枝的時候,在同一個前綴的節點計數都會增加1,并在前綴之后將有新的節點并與之進行鏈接。
具體步驟如下所示:
3.1.1 對數控機床故障記錄數據集構建FP-樹
(1)掃描1次數據集,對每個故障進行計數,如圖3所示。

圖3 第一次掃描故障計數結果
(2)設定最小支持度為2。
(3)按降序重新排列故障數據集(如果出現計數小于2的則需刪除),如圖4所示。

圖4 故障按降序重新排列結果
(4)根據項目(故障)出現的次數重新調整數控機床主軸系統故障數據集,如表3所示。

表3 調整后的數控機床主軸系統故障數據
(5)第2次掃描數據集,構建FP-樹。讀入第1個事務:{、、},同時建立標記為、、的3個節點。形成null→→→,此路徑表示該事務所形成的路徑。同時結點的頻度計數記為1。
讀入第2個事務:{、},并且建立標記為、的2個節點??梢钥闯鲇捎诘?個事務:{、}和第1個事務:{、、}有共同的前綴項,所以第2個事務的路徑null→→與第1個事務的路徑null→→→會產生部分重疊。結點的頻度計數為2,而為1。
繼續運行此過程,直到所有的事務都對應表示在FP-樹的各個路徑中。最終完成對FP樹的構建,如圖5所示。

圖5 數控機床主軸系統故障模式信息FP-樹
3.1.2 挖掘數控機床故障數據頻繁項集
在FP-樹構建完成后,要對其進行搜索分析,找出其中的頻繁項集。一般為方便搜索樹,創建一個項頭表,以便可以使用節點鏈找到樹結構中的所有元素。在對數據集掃描完成后,將得到如圖3所示的樹,然后搜索頻繁模式的問題就轉變成了對樹的挖掘問題。
接著,需要進行對FP-樹的挖掘。開始從具有最小支持度的元素進行挖掘,生成條件模式基。構造其FP-樹并查找FP-樹的頻繁模式。將后綴模式和條件樹建立的頻繁模式相關聯,就獲得了頻繁項集。
FP-樹挖掘過程及產生結果如表4所示。下面對挖掘的詳細過程進行描述。次數最少的一項是,在圖3中 FP-樹的分枝數為2,即〈(,,:1)〉和〈(,,,:1)〉。以作為后綴,它的前綴路徑有兩條,分別為〈(,:1)〉和〈(,,:1)〉,組成了的條件模式基。那么其條件FP-樹只含有一條路徑〈(,:2)〉,不包含。由于其計數為1,最小支持度為2,因此這條路徑形成的全部頻繁模式為:,:2,,:2,,,:2。

表4 通過創建條件(子)模式基挖掘FP樹
的條件模式基有兩個:{(,:1),(:1)},條件FP-樹為〈:2〉,并得到頻繁模式:,:2。
與上面描述的過程相似,的條件模式基為:{(,:2),(:2),(:2)}。條件FP-樹產生兩個分枝分別為〈:4〉和〈:2〉,如圖6所示,其產生的模式基為,:4,,:4,,,:2。最后的條件模式基為:{(:4)},其FP-樹包括一個節點〈:4〉,一個頻繁模式,:4。

圖6 具有節點M3的條件FP-樹
由頻繁模式數據集可知,主軸系統故障模式頻繁項集的非空子集={,}、={,}、={,,}、={,}、={,}、={,}、={,,}、={,}均為頻繁項集,對頻繁項集進行進一步分析可以得到數控機床主軸系統故障診斷關聯規則及其支持度、置信度。一共生成24條關聯規則,如表5所示。

表5 數控機床故障診斷頻繁項集及其支持度
通過將最小置信度設置為50%時,可得到相應的關聯規則為16條,如表6所示。

表6 數控機床故障顯著關聯規則模式分析(最小置信度為50%)
通過將最小置信度設置為100%時,會得到6條關聯規則,如表7所示。置信度為100%說明此時某個原因一定會導致相應故障的發生。

表7 數控機床故障顯著關聯規則模式分析(最小置信度為100%)
要實現數控機床的故障診斷,不僅要從數控機床歷史故障數據中挖掘出故障發生時故障模式的相關規律,更是要結合故障發生時的相關原因進行分析。結合主軸系統故障數據集與第3.2節中表7所挖掘出的數控機床故障顯著關聯規則,進一步挖掘故障模式與故障原因之間的關系,計算故障原因的置信度,如表8所示。

表8 數控機床故障顯著關聯規則原因分析(最小置信度為50%)
關聯規則的發現對于挖掘數據中的隱含信息非常重要,針對關聯規則挖掘算法進行研究,對利用FP-Growth算法構建FP-樹和頻繁項集挖掘的過程進行了分析。下面對上述得到的規則進行舉例說明。
(1)對表6和表7中數控機床故障模式顯著關聯規則分析
規則→:在選取9條數控機床歷史故障數據中,故障模式“主軸運轉噪聲大”和故障模式“主軸定位偏差過大”同時發生的概率為44%。并且在“主軸運轉噪聲大”發生時,“主軸定位偏差過大”發生的概率為66.7%。
規則→:在選取9條數控機床歷史故障數據中,故障模式“主軸傳動裝置故障”和故障模式“主軸定位偏差過大”同時發生的概率為22%,并且在“主軸傳動裝置故障”發生時,“主軸定位偏差過大”發生的概率為100%。
規則,→:在選取9條數控機床歷史故障數據中,故障模式“主軸傳動裝置故障”、故障模式“主軸定位偏差過大”和故障模式“切削振動過大”同時發生的概率為22%,并且在“主軸傳動裝置故障”和“主軸定位偏差過大”發生時“切削振動過大”發生的概率為100%。
(2)對表8數控機床故障顯著關聯規則原因分析
例如規則、?、、:在選取9條數控機床歷史故障數據中,故障模式“主軸定位偏差過大”和故障模式“主軸傳動裝置故障”同時發生的概率為22%。其次引起“主軸傳動裝置故障”和“主軸定位偏差過大”的故障原因是“傳動軸損壞”、“軸承損壞”或者機床“齒輪嚙合間隙不均衡或者損傷”,3個原因中由傳動軸損壞引起的故障概率為50%,由軸承損壞和齒輪嚙合間隙不均衡或者損傷引起的故障概率為25%。結合數控機床運行過程,當轉動裝置故障時必然會引起無法準確定位,所以顯而易見此條規則是具有一定正確性的。該結果可有效指導故障診斷時故障原因排除和預防性維修工作。
利用設備運行的數據記錄對設備進行故障診斷及故障的概率分析,及時有效地發現異常故障的原因,給出合理的解決辦法,使機床高效運行,提高生產率和產品質量。本文作者采用FP-Growth頻繁項集搜索算法,基于關聯規則的相關概念和數據挖掘對數控機床故障診斷進行了分析。
(1)以數控機床主軸系統為例,通過對故障診斷過程的分析,構建出基于關聯規則的故障診斷模型。
(2)通過對歷史故障模式及相應原因進行數據挖掘,得到了故障模式之間和故障模式與原因之間的關聯規則。
(3)通過對評估指標的分析,得到了主軸系統故障模式之間和故障模式與原因之間的關聯概率大小。