李振東,李先祥,周星
(1.佛山科學技術學院機電工程與自動化學院,廣東佛山 528000;2.順德職業(yè)技術學院人文學院,廣東佛山 528000;3.佛山智能裝備技術研究院,廣東佛山 528000)
工業(yè)機器人長期以來一直被用于生產系統(tǒng),以提高自動化制造過程中的生產率、質量和安全性。然而在生產線上,隨著工業(yè)機器人運行時長的不斷增加,工業(yè)機器人出現(xiàn)故障的概率也隨之增加,不同原因的故障導致的工業(yè)機器人意外停機有可能導致整個生產線中斷,從而造成經濟和生產損失。因此,為保證工業(yè)機器人在自動化產線中正常運行,研究工業(yè)機器人的故障診斷具有非常重要的意義。
傳統(tǒng)工業(yè)機器人系統(tǒng)和非工業(yè)機器人旋轉系統(tǒng)[1]中機械故障以振動信號分析為主。然而,振動信號分析的準確性和有效性對傳感器位置和環(huán)境噪聲非常敏感[2]。此外,當安裝的傳感器出現(xiàn)故障時,需要機器人停機檢查和更換傳感器,這將會造成額外成本和非計劃停機。
最近,電流信號在各種旋轉機械關鍵部件的故障檢測中被證明是準確且經濟有效的,如電機[3-5]、齒輪箱[6]和軸承[7]、減速機[8]。與振動信號相比,工業(yè)機器人系統(tǒng)和伺服驅動器之間的電流信號獲取簡單方便,而且不需要額外傳感器,也不會入侵機器人的系統(tǒng)?;诜答侂娏餍盘柕墓I(yè)機器人故障診斷需要解決2個關鍵問題:(1)故障特征提取,即提取不同故障類型的有效特征;(2)故障識別,即根據(jù)故障特征定位故障軸。特征提取可以提高故障診斷的性能已被證明。時域分析方法用來提取峭度和均方根等特征作為關鍵部件的狀態(tài)特征。頻域分析方法用于揭示時間序列信號中隱藏的頻率信息等特征。還有時頻域分析方法,如短時傅里葉變換[9]和希爾伯特-黃變換[10],能夠提取頻率分量并保留時域信息。然而,這些方法存在一些局限性,如故障特征和噪聲干擾仍然難以有效分離。在故障識別方面,深度學習掀起了智能故障診斷的熱潮,基于深度學習智能診斷的模型包括深度自動編碼器[11]、深度信念網(wǎng)絡[12]、CNN[13]。其中,CNN由于其獨特的共享機制,大大減少了網(wǎng)絡參數(shù)的數(shù)量,在工業(yè)界得到了廣泛應用。
綜上所述,提出一種非入侵式的采集方式,通過采集工業(yè)機器人運行時的反饋電流進行故障檢測。采用反饋電流的優(yōu)點在于:(1)采集方便,可以定時、定量、定運行動作采集數(shù)據(jù);(2)外界干擾小,噪聲和其他干擾對數(shù)據(jù)影響小。因此,本文作者提出一種基于WPES-CNN的故障診斷方法,用于反饋電流檢測工業(yè)機器人的運行狀態(tài)。首先,對反饋電流原始信號進行小波包分解與能量特征提??;然后,建立CNN診斷模型,從小波包能量譜中自動提取代表性的特征,實現(xiàn)故障分類。
小波包分析是小波分解的進一步改進,具有良好的時頻局部化的功能,可以將電流信號分解到各個子帶中,從而凸顯故障信息,易于故障特征的提取,而且能夠把信號分為高頻和低頻信號,這種分解既無冗余,也無疏漏。所以,小波包分析在處理工程實際問題中就顯得尤為重要。
根據(jù)小波包的定義式,給定尺度函數(shù)φ(t)和正交小波函數(shù)ψ(t)的二尺度關系:
(1)
其中:h(k)為對應的低通濾波器;g(k)為對應的高通濾波器;式(2)為推廣的二尺度方程:
(2)
式(2)中定義的函數(shù)系{μm(t)|n∈Z}稱為由尺度函數(shù)φ(t)所確定的正交小波包。
信號x(t)的小波包變換就是在L2(R)子空間S(0,0)進行分解得到A、D。只要用于分解的濾波器為一組共軛正交濾波器組,則小波包分解式:
S=A(j+1,2n)⊕D(j+1,2n+1)
(3)
小波包分解的一般表達式:
S=A(j+1,0)⊕D(j+1,1)=
A(j+2,0)⊕D(j+2,1)⊕A(j+2,2)⊕
D(j+2,3)=
?
A(j+k,0)⊕D(j+k,1)⊕…⊕A(j+k,2k-
2)⊕D(j+3,2k-1)
(4)
圖1所示為k=3的小波包分解的過程。其中A表示信號的低頻部分,D表示信號的高頻部分,第一位數(shù)字表示小波包分解的層數(shù)。
圖1 三層小波包分解示意
一般來說,通過第1.2小節(jié)小波包的分解,將原始信號中的信息分解到不同的子頻帶中,而且原始信號經過小波變換過程中的能量守恒,當工業(yè)機器人出現(xiàn)故障時,就會影響每層子頻帶能量的分布,然后學習不同故障的分布特征,進而達到故障識別,因此,小波包能量可以表示工業(yè)機器人健康特征。其第j層第i頻帶的相對頻帶能量Ei可以表示為
(5)
其中:j為層數(shù),i為該層的第i個頻率帶,若j=3層,則i=8段;E為頻帶的總能量。
在實際處理中,由于工業(yè)機器人反饋電流的采樣頻率為 250 Hz,低頻段能量較大,占總能量的比值較大,因此在處理運算過程中對能量Ei做整體開方運算,以適當提升高頻段數(shù)值大小,得到的能量特征如下:
(6)
由于卷積神經網(wǎng)絡在處理圖像方面具有很大優(yōu)勢,因此文中提出一種將小波包能量特征轉化為二維矩陣的方法。具體方法分為3個過程:首先,利用小波包變化將原始信號分解為多個頻率段;然后將每個頻率段(如第1.3節(jié)方法)轉化為能量譜;同時為了提高卷積神經網(wǎng)絡的分類精度,將每段能量譜值轉化為一個二維的m×m的矩陣,如圖2所示。
圖2 二維矩陣轉換過程
CNN(Convolutional Neural Networks)具有權值共享、稀疏連接等優(yōu)點。與傳統(tǒng)的神經網(wǎng)絡相比,CNN大大減少了可訓練參數(shù)的數(shù)量,從而實現(xiàn)了更深層次的網(wǎng)絡架構。CNN網(wǎng)絡模型主要有3部分:卷積層、池化層和全連接層。
卷積層是CNN的主要組成部分,它將輸入特征矩陣與幾個可訓練的核進行“卷積”,并生成相關的特征圖。在卷積層,使用一組可學習的高斯核濾波器對輸入數(shù)據(jù)進行卷積,生成特征映射,可以表示為
(7)
池化層是為了降低特征圖的維度,對卷積層的輸出進行“下采樣”。選擇一個可定制的池操作窗口,將它滑動到輸入特征圖上,指定操作區(qū)域,然后用數(shù)值統(tǒng)計方法表示這些值,并降低所選區(qū)域的分辨率。最大池化通常應用于CNN結構中,最大池化卷積核的大小一般是2×2。非常大的輸入量可能需要4×4。但是,選擇較大的形狀會顯著降低信號的尺寸,并可能導致信息過度丟失。通常,不重疊的池化窗口表現(xiàn)最好。
全連接層在整個卷積神經網(wǎng)絡扮演“分類器”角色。如果說卷積層、池化層和激活函數(shù)層等操作是將原始數(shù)據(jù)映射到隱層特征空間的話,全連接層則起到將學到的“分布式特征表示”映射到樣本標記空間的作用。
文中提出了WPES-CNN (Wavelet Packet Energy Spectrum- Convolutional Neural Networks)智能故障診斷方法,用于反饋電流檢測工業(yè)機器人的運行狀態(tài)。提出的方法流程如圖3所示,一般程序總結如下:
圖3 小波包-卷積神經網(wǎng)絡模型
(1)工業(yè)機器人關節(jié)電流信號由伺服驅動發(fā)出,采集腳本進行采集,保存到工業(yè)機器人的控制器中;
(2)將原始數(shù)據(jù)進行周期性提取,目的是使機器人運行動作保持一致;
(3)對提取的周期數(shù)據(jù)進行小波包能量譜的特征提??;
(4)在小波包能量譜的基礎上,將它轉化為二維矩陣,在沒有任何手動情況下,該二維矩陣被分為訓練樣本和驗證樣本;
(5)用一系列訓練樣本構造CNN,然后用于訓練樣本的無監(jiān)督特征學習;將學習到的特征輸入Softmax分類器,用于工業(yè)機器人故障模式識別;
(6)使用驗證樣本驗證所提出方法的性能,并報告診斷結果。
文中使用國產機器人企業(yè)的六軸工業(yè)機器人運行時產生的反饋電流故障數(shù)據(jù)集來評估所提出方法的有效性,實驗裝置如圖4所示。通過計算機連接機器人的控制器將數(shù)據(jù)采集腳本下載到控制器中,當機器人運行特定程序時會觸發(fā)采集腳本進行數(shù)據(jù)采集,采集的數(shù)據(jù)由伺服驅動提供,最后通過云平臺或者手動將數(shù)據(jù)拷貝出來。采樣頻率250 Hz。實驗數(shù)據(jù)包括工業(yè)機器人4種工況下的電流信號,分為:正常信號、1軸減速機故障信號、3軸減速機故障信號、4軸減速機故障信號。
圖4 實驗裝置
在數(shù)據(jù)收集過程,工業(yè)機器人運行相同動作,同時采用部件替換實驗獲取機器人多故障數(shù)據(jù),原始數(shù)據(jù)樣本集分布見圖5。數(shù)據(jù)集分類類別見表1。
圖5 正常信號與故障信號的時域
表1 數(shù)據(jù)樣本集
小波包特征提取通過從原始數(shù)據(jù)中隨機選取長度1 000作為一個樣本,每種工況提取3 000個樣本。小波包特征提取的樣本集如表2所示。小波包分解系數(shù)的節(jié)點能量譜如圖6所示。
表2 小波包特征提取的樣本集
圖6 小波包能量譜特征
樣本分布按照訓練集:測試集=7∶3,驗證集包含在測試集中。訓練集:每種工況隨機選取2 100個樣本作為訓練集,訓練集共包括8 400個樣本;測試集:剩余的樣本集作為測試集,每類900個樣本,測試集共包括3 600個樣本。
2.2.1 CNN的輸入矩陣形狀對結果的影響
對原始信號進行4層小波包分解,并將分解系數(shù)進行能量歸一化操作,由于CNN在處理圖像時有著獨特的優(yōu)勢,文中在將能量特征輸入CNN模型前進行矩陣轉化,過程如第1.4節(jié)所述,文中測試了5種矩陣形狀對結果的影響,分別是:1×16、2×8、4×4、8×2、16×1,結果如圖7所示。圖7給出了不同形狀下驗證集的識別準確率(3次實驗取平均值,下同)??芍狠斎刖仃嚍榉疥?4×4)的效果最好。
圖7 輸入矩陣形狀對結果的影響 圖8 2種方法驗證結果
2.2.2 WPES-CNN 與CNN識別結果對比
CNN故障診斷模型使用的訓練集和測試集是第2.1小節(jié)中未經過特征提取的數(shù)據(jù)集,樣本長度同樣是1 000,樣本數(shù)量為3 000。最后將樣本按照7∶3的方式輸入到CNN模型中進行故障識別,2種方法的識別結果如圖8所示。可知:沒有經過特征提取的CNN診斷模型的驗證精度僅為92%。
為了進一步驗證WPES-CNN方法的優(yōu)越性,將支持向量數(shù)據(jù)描述(Support Vector Data Description,SVDD)、CNN網(wǎng)絡和BP網(wǎng)絡預測結果與它進行比較,比較結果如表3所示。其中基于SVDD模型的診斷平均準確率為83.6%,采用CNN模型的診斷平均準確率為91.3%,采用BP網(wǎng)絡的診斷平均準確率為89.9%,均小于WPES-CNN網(wǎng)絡的故障平均準確度99.9%,說明采用WPES-CNN方法能夠有效提高對故障類別的識別準確率。
表3 多種識別算法的預測準確率對比
文中提出了一種非入侵式WPES-CNN故障診斷方法,對反饋電流信號表征工業(yè)機器人的健康狀態(tài)進行了深入分析,得到了反饋電流隨著機械臂減速機不同故障類型的能量特征,為反饋電流應用于機械臂減速機狀態(tài)監(jiān)測提供了基礎。首先,文中通過小波包分解方法對反饋電流時域信號進行處理,分解得到4層小波系數(shù);其次,結合電流信號的能量隨著減速器故障程度會變化的規(guī)律,建立能量特征庫;然后,將輸入能量特征轉化為方陣,提高模型的準確率;最后,將方陣特征作為CNN的輸入,相較于SVDD、BP和CNN診斷模型,WPES-CNN的故障識別率達到99.9%,驗證了所提故障診斷方法的有效性。為工業(yè)機器人健康狀態(tài)監(jiān)測提供了一種新的思路,而且經濟有效,非常有應用前景。