高柯柯,于重重,晏 臻
(北京工商大學 人工智能學院,北京 100048)
隨著工業4.0和智能制造技術的興起,智能工廠的建設逐漸被各國企業所重視[1,2]。在這種趨勢下,工業設備日益向復雜化和智能化的方向發展,設備的安全問題越來越受到企業的重視。同時,由于工業設備系統運行工況繁雜多變、運行環境相對惡劣,更增加了系統性能退化失效的速率和發生故障的概率。更為重要的是,工廠生產線上的設備一旦由于失效引發故障,將會對工廠經濟造成重大的損失。因此,在大數據背景的時代下,利用工廠實時采集的海量數據,在設備性能退化的早期,及時且有效地對設備進行健康狀態評估,合理制定維護計劃和維修方案變得極為重要。
健康評估是一種通過對系統的狀態信息進行收集和學習,分析健康狀態,洞悉系統故障,提取規避風險,從而保證系統運行可靠性的一項技術。GASPERIN M等[3]從包絡譜中提取出了齒輪嚙合頻率的功率密度,并且據此對齒輪的健康狀態進行了評估。JAVED K等[4]利用模糊聚類的方法,對系統的健康狀態進行了自動評估。YAN J等[5]利用logistic回歸函數,對電梯門運動系統的健康狀態進行了評估。WANG C等[6]提出了一種結合有效特征提取方法和模糊c均值聚類算法的深度森林算法,實現了對軌道航天器當前健康狀態的評估。余道明等[7]提出了一種集新型深度自編碼和最小量化誤差相結合的,應用于滾動軸承全壽命周期的健康評估方法。王村松等[8]采用一種多變量深度森林分類器,實現了設備健康狀態的離線訓練和在線評估。林濤等[9]采用改進棧式自編碼器的方法,實現了對風電機組發電機的健康評估。
盡管以上的建模評估方法已經取得了較好的理論成果,但在實際應用的場景中,由于場景設置的復雜性不同,設備運行狀況也受到許多其他因素的影響。考慮到運行環境的復雜性,前述的建模方式難度倍增,這就使得分析不同工況下設備的運行狀態,找出主要影響設備運行的因素,進而對設備進行健康評估變得尤為重要。
本文主要對某壓縮機工廠的設備進行健康評估。由于該工廠生產線上各設備協同運行共同完成生產,中間任何一個環節發生故障,都會影響后續的生產,進而影響整個流程的產出;且同一生產線上各設備之間存在著關聯性,各設備的運行狀況實時都在發生變化。
動態貝葉斯網絡可以實現實時故障診斷,隨著毗鄰時間步驟將不同變量聯系起來,本文采用動態貝葉斯網絡對設備的健康狀態進行評估。
本文的實驗數據來源于某壓縮機工廠的相關數據,數據來自該工廠2017年9月3日到2018年3月30日共半年的數據,主要包括了監測數據、故障數據和產量數據。
監測數據主要是指生產過程中設備上傳感器采集上傳的實時數據,不同的設備有著不同的狀態參數,主要包括電壓、電流、轉速、焊接時間等,采集間隔固定,基本都在5 min左右進行一次采集。
監測數據如表1所示。

表1 監測數據
故障數據是指再生產過程中監測出的設備故障類型。數據主要包括故障碼以及故障發生時間,故障碼為0的字段表示正常,非0字段表示故障,不同的故障碼對應著相應的故障類型。故障數據實時監控采集,一旦出現故障,設備會上傳故障碼到工業系統。當故障完成修復,則會上傳故障碼0,表示設備已回復正常工作狀態。
不同設備有著不同的故障類型,故障數據如表2所示。

表2 故障數據
產量數據指生產線最后的成品產出數量。產量數據再生產過程中實時采集,每當有1件成品產出,累計產數加1,同時記錄此刻的時間。
產量數據如表3所示。

表3 產量數據
該工廠所采集的數據,除了監測數據有著固定的采集頻率,故障數據和產量數據均沒有固定的采集頻率。(1)產量數據。產量數據是每當新增一個產出,上傳一次數據,每次生產一個產出所耗用的時間稱之為節拍。節拍數據在工況正常的時候通常維持在9 s左右;(2)故障數據。故障數據則是每當發現一個故障或者異常的時候會上傳相應的故障碼,因此,故障數據的采集沒有一個較為規律的周期。結合上述情況,需要對數據進行劃分處理。
由于產量數據、故障數據都是實時采集的,時間精確到秒,同時采集間隔又是不固定的,為了更加直觀地發現故障和產量之間的聯系,本文對故障數據和產量數據按小時進行切分。監測數據基本有著固定的采樣間隔,采樣頻率為5 min。故本文選擇將監測數據進行二值處理,即分為正常和不正常兩種類型。
結合上述特征,筆者對某機械工廠生產線本體A設備組上的各個設備在每個小時段上進行統計,可以構造出特征表。其中,設備1_108表示設備1發生故障108的時長,以此類推。該表一共包括日期、產量、故障時長(以s為單位)、監測參數狀態,共計122維。
部分特征表的數據截圖如表4所示。

表4 特征表
在動態貝葉斯網絡中,需要將特征轉化為節點構造出圖模型。而上述得到的特征表維度較多,且特征表具有明顯的稀疏性。為了減少動態貝葉斯網絡的節點個數,減少計算消耗,提高動態貝葉斯網絡實時評估的效率,同時剔除由于異常或報警而上傳的故障類型,本文通過分析不同故障與產量之間的相關性,找出影響產量的主要故障。
首先筆者統計出頻率發生較高的故障類型及其故障的修復時長,對重點故障進行初步的篩選。同時,由于設備的工作情況直接或者間接影響到生產線的產量,不同故障的故障時間對產量有著不同程度的影響,可以采用隨機森林算法,將故障對產量的影響程度進行排序,從而提取出重點故障類別來。
筆者對產品的產量進行統計分析,將每小時的產量進行分為A、B、C、D、E、F 6個等級。其中,每小時產量>400為A等,每小時產量∈(350,400]為B等,產量∈(300,350]為C等,產量∈(250,300]為D等,產量∈(200,250]為E等,每小時產量<200為F等。
最后筆者得到產量的分布圖,如圖1所示。

圖1 每小時產量分布
隨機森林是決策樹的延伸方法之一,是一種由多顆決策樹構成的集成學習算法[10]。由于決策樹存在易發生過擬合的現象[11],為了改善該缺點,隨機森林的預測通過組合多個弱分類器,最終結果通過投票或取均值,使得整體模型的結果具有較高的精確度和泛化性能[12]。
筆者將每小時不同故障的發生次數和故障恢復時間作為特征輸入到隨機森林,產量等級作為分類標簽;對模型的分類結果的準確率進行排序,排名靠前的特征即為影響產量的重要特征。
隨機森林算法模型結構圖如圖2所示。

圖2 隨機森林模型
筆者最終選定排序在前10的故障作為影響產量的主要故障,依次是設備:1(108,128,190),設備2(103,106,113,114),設備3(121),設備4(134),設備5(126);括號內為設備的故障碼。
具體故障及其解釋如表5所示。

表5 主要故障及其說明
動態貝葉斯網絡(DBN)是一種以概率論和圖論為基礎,將時間維融入到貝葉斯網絡(BN),以表示時間關聯性,最終形成了能夠處理時序信息的動態概率推理模型[13]。
和貝葉斯網絡不同的是,動態貝葉斯網絡在貝葉斯網絡的基礎上考慮到了時間因素,因此更適合對非靜態的時序數據進行分析[14,15]。動態貝葉斯網絡能夠反映出貝葉斯網絡隨著時間變化的動態特性,從而進一步可發現各變量之間的因果關系;同時,當動態貝葉斯網絡搭建完成以后,除了能夠給出變量之間的關系,還能夠在線輸入真實案例對網絡模型的條件概率表(conditional probability table,CPT)進行推理和更新。因此,在故障健康評估過程中,分析人員通過動態貝葉斯網絡能夠直觀地、實時地找出系統各環節之間的因果關系,從而有效地制定設備的健康評估方案。
參照貝葉斯網絡,動態貝葉斯網絡同樣采用概率積分來表述其不確定性,并且對于概率積分,最基本的規則就是采用關聯實踐的概率,即:
P(A,B)=P(A/B)×P(B)
(1)
式中:P(A,B)—事件A和B發生的實際概率;P(B)—事件B的絕對概率;P(A/B)—給定事件B發生的情況下事件A發生的條件概率。
P(A/B)可以由式(1)變換為下式:
(2)
而當涉及多源融合信息時,貝葉斯網絡的公式如下式所示:
(3)
動態貝葉斯網絡同貝葉斯網絡相同,節點類型通常為有限的離散值,而不同時段的故障時長是一個真實采集的實數。考慮到貝葉斯網絡的實時計算性能,各節點可取的離散值個數不宜過大的原因,筆者將不同時段的故障時長劃分為高、低、無3檔。當故障時長超過了不同時段發生該故障的時間的平均值,則用“high”表示。同理,故障時長低于在不同時段發生該故障的時間的平均值,則用“low”表示,而在該時段沒有發生故障則用“none”表示。不同故障中“high”、“low”、“none”的先驗概率則取值為訓練樣本中各檔的比值。
筆者將表4中提出的特征表進行調整,得到和貝葉斯網絡相匹配的樣本格式,如表6所示。

表6 樣本數據
表6中,“IDnum”為樣本的標號,“yield”表示產量等級,共分為A、B、C、D、E、F 6個等級。命名規則如下:首個字符表示設備名稱,“S”表示狀態,“H”表示健康程度。如“equipment_5_121”表示設備5發生故障121的時長,共分為“high”、“low”、“none” 3個等級。“equipment_5_H”表示設備5的健康情況,分為“healthy”和“unhealthy”兩個等級。
同樣地,“equipment_5_S”表示設備5的監控數據狀態,分為“normal”和“unnormal”兩個等級,其余以此類推。
經筆者初步構建的動態貝葉斯網絡圖,如圖3所示。

圖3 動態貝葉斯網絡結構圖
筆者將已經處理好的數據集輸入動態貝葉斯網絡中,當貝葉斯網絡對樣本數據進行學習后,可以發現,原先設定的先驗概率由于對樣本的學習而發生了改變,如圖4所示。

圖4 學習后的動態貝葉斯網絡圖
由于學習的樣本數據中,所有的監控節點均為“normal”,可以看到:學習后的檢測數據節點也從圖3中的95%的可能性為“normal”上升到圖4中的97.5%;而故障數據也隨著輸入樣本中相應故障數據為“none”,對“none”置信度有了一定程度的提升。
同時,由以上分析可得知:本文每小時產量數據分布集中在B等級,產量節點隨著輸入數據為B等級,對B的預估也由初始的38.4%上升到了64.1%。
綜合以上分析可以看出:動態貝葉斯網絡有著出眾的學習能力,當輸入的樣本足夠多,先驗概率會越來越趨近于真實分布。
通過實時上傳的數據,動態貝葉斯健康評估網絡可以實時在線學習。動態貝葉斯網絡根據上一時間點的推理結果與當前時間點的證據信息更新節點概率,從而實現實時的健康評估。
筆者對訓練好的動態貝葉斯網絡進行驗證,對未來5個時刻的產量進行了預測,得到的預測結果如表7所示。

表7 動態貝葉斯網絡實驗結果
從表7的實驗結果可以看出:在5個時刻中,動態貝葉斯網絡評估最大概率對應的等級都與真實的健康等級相同,該結果驗證了動態貝葉斯網絡在實時健康評估上的有效性。
隨著工業設備智能化的快速發展,制造企業對設備的可靠性分析不再停留在設備的故障與否,而是更多地考慮到設備未來長期的健康狀況。
本文提出了一種基于動態貝葉斯網絡的設備健康評估方法,首先利用生產線上實時采集的數據對工廠數據進行了特征提取,再利用隨機森林算法提取出了主要故障類型,構建了動態貝葉斯網絡,最后進行了設備健康評估。
該方法具有以下特點:
(1)反映出了采集數據與產量之間的隱層關系;
(2)提取出了主要故障類型并對生產線設備進行了健康評估,解決了傳統工廠主要設備故障類型提取無特點以及設備間的交互不明顯問題;
(3)對設備的健康評估取得了較為理想的效果,驗證了動態貝葉斯網絡在實際工程應用中的有效性和結果的可解釋性。
在后續的研究工作中,需要繼續優化動態貝葉斯網絡,使得該模型能更廣泛地應用于實際工程之中。