王保勤
潞安化工集團(tuán)五里堠煤業(yè)公司 山西潞安 032600
礦井提升機(jī)是礦山企業(yè)的主要提升設(shè)備,是連接礦井上下的“咽喉”,一旦其發(fā)生故障,不但影響礦山的日常生產(chǎn),甚至危及工作人員的生命安全。據(jù)統(tǒng)計,由提升系統(tǒng)故障所造成的安全事故約占煤礦安全事故的 1/3[1],因此對提升機(jī)的狀態(tài)監(jiān)測、故障診斷與預(yù)測具有重要意義。隨著我國工業(yè)化步伐的加快,機(jī)器設(shè)備也越來越復(fù)雜,需要監(jiān)測的數(shù)據(jù)也越來越多,通過專家知識來進(jìn)行特征提取的傳統(tǒng)故障診斷方法已遠(yuǎn)遠(yuǎn)不能滿足現(xiàn)在的發(fā)展。得益于當(dāng)代計算機(jī)技術(shù)的快速發(fā)展以及信息化與工業(yè)化的融合,機(jī)器學(xué)習(xí)、大數(shù)據(jù)、物聯(lián)網(wǎng)等技術(shù)得到不斷發(fā)展,其中能夠從海量數(shù)據(jù)中自主挖掘數(shù)據(jù)內(nèi)在特性的機(jī)器學(xué)習(xí)方式受到越來越多的關(guān)注。如何將這些技術(shù)應(yīng)用于礦井提升機(jī)的故障診斷中,也引起大家越來越多的關(guān)注[2]。
一維卷積神經(jīng)網(wǎng)絡(luò) (One-dimensional Convolutional Neural Networks,1DCNN) 作為深度學(xué)習(xí)的經(jīng)典算法,具有局部感知和參數(shù)共享兩個特點,能夠有效降低網(wǎng)絡(luò)模型的復(fù)雜度,減少權(quán)值的數(shù)量,使得卷積核對輸入的空間局部模式具有最強的響應(yīng)。T.Ince 等人提出一種具有自適應(yīng)設(shè)計的一維 CNN 用于電動機(jī)狀態(tài)監(jiān)測[3],Sun W J 等人提出了一種用于感應(yīng)電動機(jī)故障診斷的卷積判別特征學(xué)習(xí)方法[4],Xia M 等人提出了一種基于CNN的旋轉(zhuǎn)機(jī)械故障診斷方法[5]。這些研究都有效驗證了利用卷積神經(jīng)網(wǎng)絡(luò)對電動機(jī)軸承故障診斷具有較高的準(zhǔn)確率與魯棒性。
然而卷積神經(jīng)網(wǎng)絡(luò)一般是處理二維數(shù)據(jù),而電動機(jī)軸承原始振動信號是一維數(shù)據(jù),因此筆者提出了一種利用一維卷積神經(jīng)網(wǎng)絡(luò)的電動機(jī)軸承故障診斷模型,直接將原始振動信號作為輸入信號來進(jìn)行端到端的故障診斷。這樣能夠有效避免因為人工信號處理以及特征提取所帶來的誤差,提高故障診斷的準(zhǔn)確率。
一維卷積神經(jīng)網(wǎng)絡(luò)是一類包含卷積計算且具有深度結(jié)構(gòu)的前饋神經(jīng)網(wǎng)絡(luò)。它與普通神經(jīng)網(wǎng)絡(luò)的區(qū)別在于,一維卷積神經(jīng)網(wǎng)絡(luò)包含了濾波級與分類級,濾波級用于提取信號特征,分類級用于對濾波級所提取的特征信號進(jìn)行分類,兩級網(wǎng)絡(luò)共同作用。一維卷積神經(jīng)網(wǎng)絡(luò)主要由輸入層、卷積層、池化層和分類器構(gòu)成,其中分類器由全連接的多層感知機(jī)構(gòu)成。1DCNN 模型[6]如圖 1 所示。
圖1 一維卷積神經(jīng)網(wǎng)絡(luò)模型Fig.1 Model of one-dimensional convolutional neural network
激活函數(shù)用于將非線性引入神經(jīng)網(wǎng)絡(luò),它會將值縮小到較小的范圍。常見的激活函數(shù)有 Sigmoid、Tanh 以及 ReLU,前 2 種激活函數(shù)的函數(shù)曲線較為平滑,利于求導(dǎo),但是當(dāng)輸入值較大時,它們的導(dǎo)數(shù)值都趨近于零,并且隨著神經(jīng)網(wǎng)絡(luò)層數(shù)的增加都會出現(xiàn)梯度彌散,甚至無法訓(xùn)練的情況;ReLU 函數(shù)能夠在一定程度上解決梯度彌散的問題,因此采用 ReLU 函數(shù)作為激活函數(shù)。
ReLU 激活函數(shù)
一維卷積神經(jīng)網(wǎng)絡(luò)的關(guān)鍵在于其卷積運算,在卷積層中使用一維數(shù)組作為卷積核,通過多個卷積核對上一層輸出的特征矢量進(jìn)行卷積后加上偏置,然后經(jīng)過非線性激活函數(shù)便可得到下一層的激活值其表達(dá)式為
式中:為第l層的輸出;為上一層 (l-1 層)的輸出,也是當(dāng)前層l的輸入;f為激活函數(shù) ReLU 函數(shù);∑為遍歷輸入特征映射;為神經(jīng)元的卷積核;為網(wǎng)絡(luò)偏置。
不含激活函數(shù)的卷積運算流程如圖 2 所示。
圖2 卷積運算流程Fig.2 Process flow of convolution algorithm
池化層進(jìn)行的是降采樣操作,主要目的是減少神經(jīng)網(wǎng)絡(luò)的參數(shù)。池化方法主要有 2 種,最大值池化和平均值池化。最大值池化是輸出池化窗口中的最大值,平均值池化是將池化窗口中值的平均值作為輸出。在最大值池化中,能夠獲取位置的無關(guān)特征,因此筆者采用的降采樣操作是最大值池化。其公式為
式中:為第l層的第i個神經(jīng)元的輸出值;為第(l-1) 層第i個特征矢量中神經(jīng)元的值;sscale為池化區(qū)域的尺度;sstride為池化區(qū)域的步長。
全連接層則是利用卷積層和池化層所提取的特征來進(jìn)行分類。當(dāng)輸入數(shù)據(jù)經(jīng)過多個卷積層和池化層交替?zhèn)鞑ズ螅B接層會對所提取到的特征進(jìn)行分類,該層能夠?qū)⑸弦粚虞敵龅木仃嚱禐?1×n維矩陣,最終通過 Softmax 激活函數(shù)輸出該樣本被分為n類中某一類的概率[7]。
基于一維卷積神經(jīng)網(wǎng)絡(luò)的提升機(jī)軸承故障診斷算法流程如圖 3 所示,具體步驟為:首先,將采集到的軸承振動信號數(shù)據(jù)集劃分訓(xùn)練集和測試集;然后,將訓(xùn)練集的信號樣本提前做好對應(yīng)標(biāo)簽 (每一種故障信號對應(yīng)一個故障標(biāo)簽),輸入到 1DCNN 進(jìn)行模型訓(xùn)練;最后,將測試集數(shù)據(jù)輸入到模型中從而得到標(biāo)簽分類的準(zhǔn)確率[8]。
圖3 1DCNN 故障診斷流程Fig.3 Process flow of fault diagnosis based on onedimensional convolutional neural network
筆者采用美國凱斯西儲大學(xué)軸承數(shù)據(jù)中心公開的滾動軸承故障振動數(shù)據(jù)集[9],系統(tǒng)的采樣頻率為 12 kHz,電動機(jī)轉(zhuǎn)速為 1 730 r/min,試驗對象為驅(qū)動端軸承。該試驗將故障類型分為 10 種,具體如表 1 所列。
表1 故障類型數(shù)據(jù)集Tab.1 Data set of various fault types
電動機(jī)在不同狀態(tài)時有不同的特征,故障診斷的依據(jù)就是根據(jù)這些不同的特征值來進(jìn)行分類,圖 4 所示為不同狀態(tài)時振動信號的時域圖。
圖4 不同狀態(tài)時振動信號的時域圖Fig.4 Time domain diagram of vibration signal in various states
為了進(jìn)一步增強一維卷積神經(jīng)網(wǎng)絡(luò)的泛化能力,需要大量的數(shù)據(jù)來對模型進(jìn)行訓(xùn)練,然而在當(dāng)前軸承故障診斷領(lǐng)域并沒有足夠的訓(xùn)練樣本,因而筆者采用滑動數(shù)據(jù)窗口采樣技術(shù)對數(shù)據(jù)集進(jìn)行擴(kuò)增,如圖 5 所示。
圖5 滑動數(shù)據(jù)窗口采樣Fig.5 Sliding data window sampling
假設(shè)數(shù)據(jù)集中數(shù)據(jù)總長度N=120 000,每次訓(xùn)練樣本長度n=2 000,偏移量m=500,根據(jù)公式x=可以算出,每種故障狀態(tài)數(shù)據(jù)能夠制作 236 組訓(xùn)練樣本,一共能夠獲得 2 360 組試驗數(shù)據(jù),相比之前的 200 組試驗數(shù)據(jù)擴(kuò)增加了 11.8 倍。數(shù)據(jù)擴(kuò)增能夠很好地滿足一維卷積神經(jīng)網(wǎng)絡(luò)的數(shù)據(jù)訓(xùn)練要求。
本試驗采用的語言為是 Python 語言,框架為Google 公司的 TensorFlow 深度學(xué)習(xí)框架,開發(fā)工具為 Pycharm。試驗選取 4 種載荷狀態(tài),每種載荷狀態(tài)包含 10 種故障類型,每種故障類型包含 2 048 個訓(xùn)練樣本,訓(xùn)練數(shù)據(jù)分為 70% 訓(xùn)練集和 30% 測試集,其中訓(xùn)練集、測試集樣本均采用數(shù)據(jù)增強技術(shù)。利用搭建好的網(wǎng)絡(luò)對 4 種載荷狀態(tài)進(jìn)行訓(xùn)練,訓(xùn)練時算法的學(xué)習(xí)率設(shè)置為 0.001,訓(xùn)練輪次為 12 次。不同試驗方案的驗證結(jié)果如圖 6~ 8 所示。
圖6 4 種載荷狀態(tài)下訓(xùn)練輪次與準(zhǔn)確率和損失率的關(guān)系曲線Fig.6 Relationship curve of training rounds with accuracy ratio and loss ratio in four load states
圖7 4 種載荷狀態(tài)下平均準(zhǔn)確率與損失率曲線Fig.7 Curves of average accuracy ratio and loss ratio in four load states
圖8 不同方法下訓(xùn)練輪次與準(zhǔn)確率的關(guān)系曲線Fig.8 Relationship curve between training rounds and accuracy ratio with various methods
由圖 6~ 8 可知,訓(xùn)練集在經(jīng)過一維卷積神經(jīng)網(wǎng)絡(luò)的 12 次迭代之后,準(zhǔn)確率能夠達(dá)到 98% 以上,其中對載荷為 0、2、3 hp 狀態(tài)下的診斷準(zhǔn)確率高達(dá) 99%以上。在測試集中,平均準(zhǔn)確率也都在 96% 以上。相較于傳統(tǒng)的 BP-NN 方法,采用 1DCNN 方法的準(zhǔn)確率明顯提高,可見該算法具有較高的故障診斷識別率。
筆者提出了基于一維卷積神經(jīng)網(wǎng)絡(luò)的提升機(jī)軸承故障診斷方法,采用凱斯西儲大學(xué)軸承數(shù)據(jù)中心采集的軸承振動信號數(shù)據(jù),利用了滑動數(shù)據(jù)窗口采樣技術(shù)來對數(shù)據(jù)集進(jìn)行擴(kuò)增,通過試驗驗證了該方案對軸承故障診斷的準(zhǔn)確率達(dá)到了 96% 以上,說明一維卷積神經(jīng)網(wǎng)絡(luò)在對軸承故障診斷中具有較強的診斷能力。同時,這一試驗結(jié)果為之后的一維卷積神經(jīng)網(wǎng)絡(luò)在軸承故障診斷的應(yīng)用提供了參考。