黃智宇1 李 燚 唐 倩 黃 濤
(1.重慶機(jī)電裝備技術(shù)研究院有限公司 重慶 401120)(2.重慶大學(xué)機(jī)械工程學(xué)院 重慶 400000)
滾動(dòng)軸承作為旋轉(zhuǎn)設(shè)備的關(guān)鍵零件,同時(shí)也是易損件,一旦發(fā)生故障,將會(huì)導(dǎo)致生產(chǎn)作業(yè)停產(chǎn),設(shè)備損壞甚至造成人身安全事故。因此,針對(duì)滾動(dòng)軸承的故障診斷方法成為重中之重[1][2][3]。針對(duì)滾動(dòng)軸承主要選取振動(dòng)信號(hào)進(jìn)行分析,因?yàn)檎駝?dòng)信號(hào)更能反映出微弱故障的特征[4]。近幾年來,隨著“工業(yè)大數(shù)據(jù)”和“人工智能”的到來,基于知識(shí)故障診斷技術(shù)[5][6]成為了學(xué)術(shù)界的熱點(diǎn),與傳統(tǒng)故障診斷方法(如時(shí)域分析、頻率分析和時(shí)頻域分析等)相比,該技術(shù)不需要特定診斷對(duì)象的具體模型以及信號(hào)處理知識(shí),而只需要大量的歷史數(shù)據(jù),因此也被稱為“由數(shù)據(jù)驅(qū)動(dòng)的故障診斷技術(shù)”,具體流程如圖1所示。當(dāng)滾動(dòng)軸承發(fā)生故障時(shí)或者將要發(fā)生故障時(shí),該診斷方法會(huì)將當(dāng)前收集的數(shù)據(jù)與歷史數(shù)據(jù)進(jìn)行一致性檢驗(yàn),隨后立即給出相應(yīng)的故障診斷結(jié)果。
圖1 基于知識(shí)的故障診斷流程圖
目前基于知識(shí)的軸承故障診斷技術(shù)取得了一定的發(fā)展和成果。同濟(jì)大學(xué)的張小龍等[7]將滾動(dòng)軸承振動(dòng)信號(hào)進(jìn)行固有時(shí)間尺度分解,使用Lempel-Ziv復(fù)雜度值作為特征向量樣本,通過支持向量機(jī)(SVM)進(jìn)行故障識(shí)別。如湖南大學(xué)的高藝源[8]等將圖像信號(hào)處理應(yīng)用于機(jī)械故障診斷領(lǐng)域,提出一種基于圖譜指標(biāo)的滾動(dòng)軸承特征提取方法,然后使用 K-均值聚類算法對(duì)軸承的故障類型進(jìn)行識(shí)別。Muhammad A[9]等人將軸承的振動(dòng)信號(hào)使用快速傅里葉變換轉(zhuǎn)化為圖像信息并進(jìn)行特征增強(qiáng),然后通過人工神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練得到模型,完成軸承故障識(shí)別。同濟(jì)大學(xué)的李恒等[10]采取短時(shí)傅里葉變換將振動(dòng)信號(hào)轉(zhuǎn)化為二維圖像信息,然后通過二維卷積神經(jīng)網(wǎng)絡(luò)模型進(jìn)行訓(xùn)練從而識(shí)別滾動(dòng)軸承故障。上述方法雖然取得較好的結(jié)果,但存在以下不足:1、需要將振動(dòng)信號(hào)進(jìn)行預(yù)處理,而預(yù)處理步驟不但需要較高的專業(yè)信號(hào)知識(shí),而且會(huì)損失原始振動(dòng)信號(hào)的固有特征信息,降低故障識(shí)別率;2、軸承產(chǎn)生的故障相互之間耦合,并且故障特征之間相互交織,人為提取故障特征不但困難,而且還會(huì)耗費(fèi)大量的人力和時(shí)間資源;3、將振動(dòng)信號(hào)預(yù)處理和特征提取和模式識(shí)別三個(gè)步驟分隔開,不能實(shí)現(xiàn)滾動(dòng)軸承端對(duì)端的故障診斷;4、滾動(dòng)軸承在實(shí)際運(yùn)行中具有多種工況(如轉(zhuǎn)速、負(fù)荷扭矩、徑向力等),目前已有方法在多種工況下準(zhǔn)確識(shí)別故障的泛化能力有待驗(yàn)證;5、實(shí)時(shí)性有待驗(yàn)證。
針對(duì)上述問題,本文將基于數(shù)據(jù)驅(qū)動(dòng)的一維卷積神經(jīng)網(wǎng)絡(luò)(1D CNN)應(yīng)用于滾動(dòng)軸承智能故障診斷。具體操作方法為:首先將采集的歷史振動(dòng)數(shù)據(jù)分割成固定長(zhǎng)度的樣本,并將其和對(duì)應(yīng)的故障標(biāo)簽一起放入一維卷積神經(jīng)網(wǎng)絡(luò)模型,神經(jīng)網(wǎng)絡(luò)會(huì)根據(jù)輸入的振動(dòng)數(shù)據(jù)輸出對(duì)應(yīng)的預(yù)測(cè)故障標(biāo)簽并與真實(shí)的故障標(biāo)簽對(duì)比,并且不斷的更新神經(jīng)網(wǎng)絡(luò)參數(shù)使預(yù)測(cè)標(biāo)簽與真實(shí)標(biāo)簽的差值最小,當(dāng)輸入的歷史樣本數(shù)據(jù)量足夠大時(shí),神經(jīng)網(wǎng)絡(luò)可以充分的學(xué)習(xí)并提取故障振動(dòng)數(shù)據(jù)的內(nèi)在特征。神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練完成之后,將未知標(biāo)簽故障振動(dòng)數(shù)據(jù)輸入神經(jīng)網(wǎng)絡(luò)模型即可輸出正確的故障標(biāo)簽。該方法可將傳統(tǒng)的信號(hào)預(yù)處理,特征提取和分類三個(gè)步驟融合到一起,避免了原始振動(dòng)信號(hào)繁瑣的預(yù)處理步驟;針對(duì)多種工況下的多點(diǎn)真實(shí)故障混合的滾動(dòng)軸承,依然可實(shí)現(xiàn)高準(zhǔn)確率的智能端對(duì)端診斷,即輸入原始信號(hào),該方法直接給出故障診斷結(jié)果;其次,通過與BP神經(jīng)網(wǎng)絡(luò),支持向量機(jī)的對(duì)比證明該方法具有更高的故障識(shí)別準(zhǔn)確率;同時(shí),該方法具有很高泛化能力;最后,該方法具有較強(qiáng)實(shí)時(shí)性,可直接用于工業(yè)在線實(shí)時(shí)性檢測(cè)。
本文第一節(jié)介紹1D CNN的工作原理、以及基于1D CNN的故障診斷流程以及參數(shù)設(shè)置;第二節(jié)采用德國(guó)帕德博恩大學(xué)(UPB)已公開的滾動(dòng)軸承數(shù)據(jù)集對(duì)所提出的1D CNN診斷方法進(jìn)行實(shí)驗(yàn)驗(yàn)證,得到實(shí)驗(yàn)結(jié)果;第三節(jié)得出關(guān)于本文所提出方法相應(yīng)的結(jié)論。
一維卷積神經(jīng)網(wǎng)絡(luò)屬于前饋神經(jīng)網(wǎng)絡(luò),包含線性與非線性運(yùn)算多級(jí)訓(xùn)練架構(gòu),具體由三部分組成:輸入層、隱藏層和輸出層。其中隱藏層由卷積層、池化層和全連接層組成,如圖2所示。卷積層采用多個(gè)卷積核過濾器來獲取輸入數(shù)據(jù)特征信息;池化層又稱為下采樣層,用于減少輸入特征的維數(shù);在有限次卷積層與池化層反正交替操作后,采用全連接層計(jì)算分類得分,輸出結(jié)果。
整個(gè)神經(jīng)網(wǎng)絡(luò)前饋過程表達(dá)式為
f(X)=fL(Kf2(f1(X,θ(1)),θ(2)K),θ(L))
(1)
式中X為初始輸入數(shù)據(jù),θ(1),θ(2),K,θ(L)為學(xué)習(xí)變量參數(shù)比如每一級(jí)的偏置與權(quán)重,f1,f2KfL為每一級(jí)相應(yīng)的函數(shù),每一級(jí)的輸出結(jié)構(gòu)均為一維特征映射矩陣。
卷積層表達(dá)式為
(2)
yijk=max(0,xijk)
(3)
式中,xijk為第k個(gè)特征映射矩陣的(i,j)元素。
池化層表達(dá)式為
yijk=max(yi′j′k:i≤i′
(4)
式中,p為一維池化窗口的長(zhǎng)度,yi′j′k為池化之前區(qū)域值,yijk為池化處理之后的值。
全連接層正向傳播的表達(dá)式為
(5)
在全連接層中,本文選取的激活函數(shù)為歸一化指數(shù)函數(shù)(Softmax)函數(shù)[12],因?yàn)樵摵瘮?shù)具有指數(shù)計(jì)算過程,在分類過程中增加了區(qū)分對(duì)比,且在整個(gè)過程中連續(xù)可導(dǎo),消除拐點(diǎn)的優(yōu)點(diǎn)。表達(dá)式為
(6)
誤差反向傳播是神經(jīng)網(wǎng)絡(luò)模型進(jìn)行參數(shù)優(yōu)化的重要步驟。通過神經(jīng)網(wǎng)絡(luò)模型正向傳播之后,首先對(duì)模型輸出的預(yù)測(cè)結(jié)果與真實(shí)結(jié)果比較并選取恰當(dāng)?shù)哪繕?biāo)損失函數(shù)計(jì)算兩者之間的誤差,然后通過鏈?zhǔn)角髮?dǎo)法則,從后往前逐層計(jì)算出目標(biāo)損失函數(shù)關(guān)于所有參數(shù)的偏導(dǎo)數(shù),然后使用恰當(dāng)?shù)膬?yōu)化算法優(yōu)化所有參數(shù),通過不斷地迭代并優(yōu)化參數(shù)使得預(yù)測(cè)結(jié)果與真實(shí)結(jié)果的誤差變得最小,最終完成分類任務(wù)。因此損失函數(shù)和優(yōu)化損失函數(shù)算法將直接影響神經(jīng)網(wǎng)絡(luò)模型最終的分類任務(wù)準(zhǔn)確率。本文選取交叉熵作為損失函數(shù),相比于均方差損失函數(shù)更容易找到最優(yōu)解,表達(dá)式為
(7)
式中,n為該類標(biāo)簽的樣本數(shù)量;xk表示該標(biāo)簽的預(yù)測(cè)值,為獨(dú)熱(one-hot)數(shù)組形式;yk表示該標(biāo)簽真實(shí)值,也為獨(dú)熱(one-hot)數(shù)組形式。
本文選擇優(yōu)化損失函數(shù)的算法為Adam(Adaptive Moment Estimation),由OpenAI 的Kingma和多倫多大學(xué)的Jimmy聯(lián)合提出[13],表達(dá)式為
gt=▽?duì)萬t(θt-1)
(8)
mt=β1mt-1+(1-β1)gt
(9)
(10)
(11)
(12)
(13)
基于數(shù)據(jù)驅(qū)動(dòng)的1D CNN的滾動(dòng)軸承故障診斷方法可將振動(dòng)信號(hào)的預(yù)處理,特征提取和故障識(shí)別三個(gè)步驟融合為一體,從而實(shí)現(xiàn)滾動(dòng)軸承故障特征的自適應(yīng)提取和實(shí)時(shí)的智能診斷,具體流程如圖3所示,首先將采集到的歷史滾動(dòng)軸承故障振動(dòng)數(shù)據(jù)分割成一定長(zhǎng)度的樣本,并添加對(duì)應(yīng)的故障標(biāo)簽;然后將故障樣本以及對(duì)應(yīng)的故障標(biāo)簽放入1D CNN模型中進(jìn)行訓(xùn)練,不斷的更新神經(jīng)網(wǎng)絡(luò)參數(shù),使得損失函數(shù)值最小化,并保存模型。然后將滾動(dòng)軸承運(yùn)行過程中采集的振動(dòng)數(shù)據(jù)放入以訓(xùn)練好的模型,可實(shí)時(shí)的得出對(duì)應(yīng)的故障診斷結(jié)果。訓(xùn)練神經(jīng)網(wǎng)絡(luò)模型的歷史振動(dòng)數(shù)據(jù)量越大,得到的最終故障診斷結(jié)果越準(zhǔn)確。
圖3 基于一維卷積神經(jīng)滾動(dòng)軸承故障診斷流程圖
考慮到所使用模型的實(shí)時(shí)性需求問題,本文采用淺層的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),并進(jìn)行合適的參數(shù)設(shè)置,具體結(jié)構(gòu)如圖4所示。
圖4 一維卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖
如圖4所示,該1D CNN神經(jīng)網(wǎng)絡(luò)模型結(jié)構(gòu)依次為輸入層、卷積層1、池化層1、卷積層2、池化層2、全連接層、輸出層。每一層具體的參數(shù)設(shè)置如表1所示。
表1 一維卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)以及參數(shù)
本文使用德國(guó)帕德博恩大學(xué)已公開的軸承數(shù)據(jù)集[14]作為試驗(yàn)對(duì)象。試驗(yàn)平臺(tái)如圖5所示,該試驗(yàn)臺(tái)一共包含5個(gè)模塊,圖中(1)為電機(jī),(2)為扭矩測(cè)量模塊,(3)為滾動(dòng)軸承實(shí)驗(yàn)?zāi)K,(4)為飛輪,(5)為負(fù)載電機(jī),關(guān)于實(shí)驗(yàn)平臺(tái)的詳細(xì)描述在文獻(xiàn)[14]給出。整個(gè)試驗(yàn)過程中多個(gè)型號(hào)為6203的深溝球軸承在四種不同的工況下工作(如下表2所示),并完成相應(yīng)的數(shù)據(jù)采集,其中振動(dòng)信號(hào)的采樣頻率為64 KHz。
圖5 德國(guó)帕德博恩大學(xué)試驗(yàn)平臺(tái)[15]
工況編號(hào)主軸轉(zhuǎn)速(rpm)負(fù)荷扭矩(Nm)徑向力(N)09000.71000115000.11000215000.7100039000.7400
而在此之前,為了制造具有真實(shí)故障的軸承,將型號(hào)為6203的深溝球軸承在加速試驗(yàn)臺(tái)上通過施加徑向載荷、創(chuàng)造不合適的潤(rùn)滑條件等方式進(jìn)行加速壽命試驗(yàn)從而產(chǎn)生真實(shí)故障。本文所選取的軸承編號(hào)如下表3所示,其中具有真實(shí)故障的軸承的具體描述如表4所示
表3 選取的深溝球軸承軸承編號(hào)
表4 深溝球軸承的故障描述
由表4可以看出,本文所選取的具有真實(shí)故障軸承損傷類別既有疲勞破壞導(dǎo)致的點(diǎn)蝕,也有塑性變形造成的壓痕;既有單點(diǎn)、多點(diǎn)損傷、也有多種損傷并存的癥狀。所以收集的軸承振動(dòng)數(shù)據(jù)更符合工程實(shí)際中軸承的真實(shí)故障。
將滾動(dòng)軸承正常、內(nèi)圈故障和外圈故障三個(gè)類別中所有編號(hào)的軸承振動(dòng)數(shù)據(jù)以1024點(diǎn)為一個(gè)樣本分割形成數(shù)據(jù)集,其中隨機(jī)抽取80%作為訓(xùn)練子集,剩下的20%作為測(cè)試子集。然后按照相應(yīng)的類別以及相應(yīng)的工況組合在一起,形成的樣本數(shù)目如表5所示
表5 深溝球軸承數(shù)據(jù)集
所有工況的軸承正常、內(nèi)圈故障和外圈故障時(shí)域波形圖樣本舉例如圖6所示。
(a)編號(hào)為0工況下的樣本時(shí)域波形圖
(b)編號(hào)為1工況下的樣本時(shí)域波形圖
(c)編號(hào)為2工況下的樣本時(shí)域波形圖
(d)編號(hào)為3工況下的樣本時(shí)域波形圖
在整個(gè)神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練過程中,學(xué)習(xí)率Learning Rate設(shè)置為0.001,訓(xùn)練次數(shù)Epoch設(shè)置為40,批訓(xùn)練樣本量Batch Size 設(shè)置為20。整個(gè)實(shí)驗(yàn)平臺(tái)配置為Windows10操作系統(tǒng),CPU為E3-1240V5,顯卡為Nvidia Quadro K1200 和Python3.7開源軟件以及Facbook推出的Pytorch開源深度學(xué)習(xí)框架。同時(shí),本文還采用了BP神經(jīng)網(wǎng)絡(luò)、支持向量機(jī)(線性、非線性)等模型作為對(duì)比實(shí)驗(yàn)。
首先將四種工況下的每個(gè)軸承振動(dòng)數(shù)據(jù)按照正常、內(nèi)圈故障和外圈故障三個(gè)類別分別隨機(jī)抽取80%的樣本然后混合在一起形成訓(xùn)練集,然后將剩余的20%的樣本混合在一起形成測(cè)試集,如表6所示;然后將每種工況下的訓(xùn)練集分別放入本文所采用的一維卷積神經(jīng)網(wǎng)絡(luò)模型中訓(xùn)練,在整個(gè)訓(xùn)練過程中,測(cè)試集首先被隨機(jī)打亂,分批次訓(xùn)練神經(jīng)網(wǎng)絡(luò)模型。最終得到四個(gè)分別由四種工況所訓(xùn)練的神經(jīng)網(wǎng)絡(luò)模型。將四種工況下的測(cè)試集依次放入訓(xùn)練好的四個(gè)神經(jīng)網(wǎng)絡(luò)模型中進(jìn)行驗(yàn)證,得到的結(jié)果如表7所示。
表6 測(cè)試集與訓(xùn)練集樣本
表7 不同工況交叉測(cè)試結(jié)果
由表7可知,對(duì)于四種類型的工況,當(dāng)使用相同工況的測(cè)試集測(cè)試對(duì)應(yīng)工況所訓(xùn)練的神經(jīng)網(wǎng)絡(luò)模型時(shí),均取得了非常良好的結(jié)果,準(zhǔn)確率分別為99.69%,99.37%,99.65%,99.55%,說明本文所采用的神經(jīng)網(wǎng)絡(luò)模型可以很好的提取軸承故障的內(nèi)在特征,并且能夠較為準(zhǔn)確的識(shí)別軸承發(fā)生故障的位置。但是當(dāng)使用四種工況測(cè)試集交叉驗(yàn)證時(shí),故障識(shí)別率準(zhǔn)確率卻參差不齊,尤其是工況編號(hào)為0的振動(dòng)數(shù)據(jù)所訓(xùn)練的模型和其他工況的測(cè)試集進(jìn)行交叉驗(yàn)證時(shí)準(zhǔn)確率最高僅為62.04%。這說明在不同的工況下滾動(dòng)軸承在振動(dòng)數(shù)據(jù)中所表現(xiàn)的特征有所差異,甚至差異較大。雖然可以針對(duì)滾動(dòng)軸承運(yùn)行的不同工況訓(xùn)練生成不同的神經(jīng)網(wǎng)絡(luò)模型,以此保證較高的故障識(shí)別率。但在機(jī)械設(shè)備實(shí)際運(yùn)行中,軸承工況復(fù)雜多變,而且關(guān)注的焦點(diǎn)在于軸承發(fā)生的故障而不是工況。因此,為了解決上述問題,將所有工況所有類別的數(shù)據(jù)組合在一起形成相應(yīng)的訓(xùn)練集和測(cè)試集,并進(jìn)行卷積神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練和測(cè)試。訓(xùn)練過程中的最小損失函數(shù)值如圖7所示:
圖7 采用不同損失函數(shù)優(yōu)化算法損失率圖
測(cè)試準(zhǔn)確率如圖8所示。
圖8 使用不同損失函數(shù)優(yōu)化算法準(zhǔn)確率圖
由圖7可知,在神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練過程中使用Adam優(yōu)化算法優(yōu)化損失函數(shù),訓(xùn)練損失在前五次就可以實(shí)現(xiàn)快速收斂,由圖8可知,該神經(jīng)網(wǎng)絡(luò)模型在訓(xùn)練10次之后可以保持很高的故障診斷準(zhǔn)確率,且準(zhǔn)確率比較穩(wěn)定,訓(xùn)練30次之后的最低故障識(shí)別準(zhǔn)確率也高達(dá)98.43%,最高的故障識(shí)別準(zhǔn)確率為99.14%,表明該神經(jīng)網(wǎng)絡(luò)模型能夠明顯的提取故障樣本的特征,并將它們區(qū)分開。
測(cè)試集檢驗(yàn)本文所采用模型對(duì)于軸承故障識(shí)別準(zhǔn)確率所得到的具體分類結(jié)果表8所示。
表8 測(cè)試集的結(jié)果百分比矩陣圖
表8中,橫坐標(biāo)的數(shù)字表示該測(cè)試集中樣本的真實(shí)標(biāo)簽,縱坐標(biāo)表示使用模型所得到的預(yù)測(cè)標(biāo)簽。由圖明顯可知,該模型對(duì)于每一類的標(biāo)簽預(yù)測(cè)都有較高的準(zhǔn)確率,最低也高達(dá)98.15%。在整個(gè)測(cè)試過程中,從加載一個(gè)測(cè)試樣本數(shù)據(jù)到給出診斷結(jié)果所耗費(fèi)的時(shí)間僅為0.015s,具有很強(qiáng)的工業(yè)實(shí)時(shí)性,同時(shí)實(shí)現(xiàn)的軸承故障的端對(duì)端智能診斷。
最終本文所采用的一維卷積神經(jīng)網(wǎng)絡(luò)模型和對(duì)比模型的測(cè)試準(zhǔn)確率如表9所示。對(duì)比可知,本文所使用的神經(jīng)網(wǎng)絡(luò)模型的準(zhǔn)確率達(dá)到了99.14%,遠(yuǎn)高于傳統(tǒng)的BP神經(jīng)網(wǎng)絡(luò)和支持向量機(jī)模型,說明本文所提出的方法可以很好提取并融合不同工況下且具有復(fù)雜故障的滾動(dòng)軸承振動(dòng)數(shù)據(jù)內(nèi)在特征,并給出準(zhǔn)確的故障識(shí)別結(jié)果。
表9 對(duì)比模型的測(cè)試準(zhǔn)確率
本文將一種基于數(shù)據(jù)驅(qū)動(dòng)一維卷積神經(jīng)網(wǎng)絡(luò)應(yīng)用于工況多變、故障復(fù)雜的滾動(dòng)軸承智能故障診斷。所采用的方法可將傳統(tǒng)的信號(hào)預(yù)處理、特征提取以及分類三個(gè)步驟融合到一起,避免了人為的進(jìn)行數(shù)據(jù)預(yù)處理步驟,實(shí)現(xiàn)了滾動(dòng)軸承變工況下端對(duì)端的智能故障診斷,即輸入原始信號(hào),該方法即可給出故障診斷結(jié)果;該方法不但有更高的故障識(shí)別率,而且還具有良好的泛化能力和實(shí)時(shí)性。