邵建浩,張婷
(上海工程技術大學機械與汽車工程學院,上海 201620)

BP神經網絡是一種典型的人工神經網絡,具有優越的非線性映射能力,所以在故障診斷領域得到了廣泛應用。湖北工業大學將BP神經網絡應用在礦用減速箱的故障診斷中,準確預測了礦用減速箱故障。青島大學用GA-ACO-BP算法更加準確和快速地診斷了行星齒輪箱故障。山東理工大學將GA-BP神經網絡用于光伏陣列故障檢測。
本文作者在ADAMS軟件中導入SCARA機器人模型,測得其運動時大臂前后端、小臂前后端及底座端加速度數據,在MATLAB中運用BP神經網絡對其進行故障的智能識別與分類,驗證該模型的準確性。
SCARA機器人結構簡圖如圖1所示,SCARA機器人由大臂、小臂、底座等部件組成,有4個自由度(3個轉動和1個移動),1個運動周期為2 s,大臂向左旋轉90°,小臂向左旋轉180°后回到原位,同時末端執行器螺旋式下降到最低點再回到原位耗時1 s,為前半個周期;大臂向右旋轉90°,小臂向右旋轉180°后回到原位,同時末端執行器螺旋式下降到最低點再回到原位耗時1 s,為后半個周期。

圖1 SCARA機器人結構簡圖
由于SCARA機器人體積小,減少了生產線所需空間,并具有可在平面搬運、挑揀、裝配等特點,特別適用于3C制造業。近年來,由于工業級產品更新速度也出現類似3C類產品的趨勢,所以3C行業眾多EMS工廠開始大量使用SCARA機器人。隨著SCARA機器人應用愈加廣泛,其安全性問題也顯得越來越重要。因此,為避免因機器人故障帶來的安全問題及經濟損失,對SCARA機器人的故障診斷更加重要。
BP神經網絡又稱為誤差反向傳播(Back Propagation)神經網絡,是一種多層的前向型神經網絡。它由輸入層、隱含層、輸出層組成,以網絡誤差平方為目標函數,采用梯度下降法來計算目標函數的最小值,結構如圖2所示。
在圖2中,~為輸入層的個輸入,隱含層含有個神經元,~為隱含層個神經元與輸出層個神經元之間的權值,~為輸出層個輸出。BP神經網絡的學習過程由信號的正向傳播與誤差的反向傳播兩個過程組成。

圖2 BP神經網絡
(1)信號的前向傳播
記為隱含層各節點的閾值,為隱含層的激活函數,為輸出層各節點的閾值,為輸出層的激活函數。
隱含層第個節點的輸入為

(1)
將式(1)代入到隱含層的激活函數可得到隱含層第個節點的輸出為

(2)
然后,將作為輸出層的輸入節點,得到輸出層的輸入為

(3)
將式(3)代入輸出層的激活函數可得:

(4)
(2)誤差的反向傳播
先計算實際輸出,然后利用誤差梯度下降法修正各層的權值和閾值。輸出所產生的誤差信號定義為
=-
(5)
其中:為期望輸出。單個樣本的均方誤差函數為

(6)
對個訓練樣本的總誤差函數為

(7)
由誤差梯度下降法可得隱含層權值修正值Δ及閾值修正值Δ,以及輸出層權值修正值Δ及閾值修正值Δ:

(8)

(9)

(10)

(11)
其中:為網絡學習率。
BP神經網絡隱含層的激活函數采用Sigmoid正切函數tansig,輸出層的激活函數采用線性函數purelin。BP神經網絡具有廣泛的適應性和有效性,主要應用于模式識別與分類、數據壓縮和函數逼近等方面。
3.1.1 數據來源
將SCARA機器人模型導入ADAMS軟件中進行仿真,仿真時間設置為10 s,步數為1 000,采集大臂前后端、小臂前后端及底座加速度數據,共計1 000組,此為無故障模型數據。之后再建立5個模型,分別在大臂前后端、小臂前后端及底座5個部位設置長約3 cm、寬0.1 cm、深約0.9 cm的裂紋,然后進行仿真,采集各部位加速度數據,每個帶裂紋的模型測得1 000組數據,加上無故障模型的1 000組數據,共計6 000組數據。正常及單故障分類如表1所示。

表1 正常及單故障分類
3.1.2 BP神經網絡故障診斷
BP神經網絡計算流程如圖3所示。

圖3 BP神經網絡計算流程
以0.1 s為間隔,將0.1~10 s內的數據作為測試樣本,共計600組,其余數據作為訓練樣本共計5 400組,均用Excel表格存儲。在MATLAB中建立BP神經網絡算法,讀取訓練樣本Excel表格對BP神經網絡進行訓練。訓練完成后讀取測試樣本Excel表格對BP神經網絡進行測試。
3.1.3 故障診斷結果分析
圖4所示為BP神經網絡訓練誤差結果,可知到訓練結束時,誤差為0.016 929,已不影響最終結果。經BP神經網絡診斷分類,600組測試樣本中有68組分類錯誤,正確率為88.7%,由此可以判斷BP神經網絡故障診斷模型可以較為準確地識別SCARA機器人故障的類別。部分實驗結果數據與測試結果分別如表2、表3所示。

圖4 BP神經網絡訓練誤差結果

表2 正常及單故障部分實驗結果

表3 正常及單故障分類測試結果
3.2.1 數據來源
SCARA機器人在實際工作時,有時會同時發生多個部位故障,多故障的診斷也更復雜,所以有必要進行多故障診斷研究。與單故障診斷一樣,多故障診斷的加速度數據也來自ADAMS軟件的SCARA機器人模型。故障尺寸與單故障診斷故障尺寸一致,每種故障類型各測得1 000組數據,共計6 000組,多故障分類如表4所示。

表4 正常及多故障分類
3.2.2 BP神經網絡故障診斷
多故障診斷方法同單故障診斷相同,將訓練樣本5 400組輸入BP神經網絡進行訓練,測試樣本600組用于測試。
3.2.3 故障診斷結果分析
經BP神經網絡診斷分類,600組測試樣本中有7組分類錯誤,正確率為98.8%,結果如表5所示。可知:當SCARA機器人存在多個混合故障時,BP神經網絡智能識別的準確率明顯提高,與期望輸出基本一致,可準確地對SCARA機器人的故障進行識別與分類。

表5 正常及多故障分類測試結果
在長時間、高強度的工作壓力下,SCARA機器人的大、小臂前后端及底座部位有可能出現裂紋等故障,一旦發生故障會帶來一系列安全問題和經濟損失。本文作者采集SCARA機器人工作過程中上述部位的加速度數據,將數據輸入建立好的BP神經網絡故障診斷模型中,運用BP神經網絡進行故障的智能識別與分類。結果表明:BP神經網絡分類結果與實際結果基本一致,BP神經網絡能快速且準確地確定故障類型,在機器人故障診斷領域具有廣泛應用前景。