曹嘉豪,劉津瑜,許 輝,林智雪,張克非
(1.西南科技大學 理學院,四川 綿陽 621010;2.西南科技大學 計算機科學與技術學院,四川 綿陽 621010)
隨著工業的不斷發展,電機檢測技術向著高效化、精準化、智能化、互聯化快速進步[1]。研制基于虛擬儀器技術的電機測試系統已成為業界關注熱點[2]。德國西門子公司研發出了通過應用于計算機的變頻電源,實現電機測試的高度自動化[3],也代替絕大部分硬件,實現了全虛擬化電機測試研究,并且該系統具備測試靈活和極高的系統復用性兩個特點。德國申克公司研制出了一種建立數學模型,利用參數認定法[4]進行電機測試的新設備,僅測量近似空載下的電流和電壓,從而獲得電機性能指標。該設備結構簡單、可靠性高、檢測時間短,是一種全新的微電機檢測設備。在電機的參數分析方面,異步電機方面應用較廣,數學模型方面線性常微分和偏微分方程組采用較多[5],但對于高速永磁電機的評價還基本不成熟,大多是直接用單一參數進行性能分析,沒有綜合各項參數對電機性能進行評價從而不能全面的把握電機的性能變化[6]。單一參數大多來自永磁電機空載時的計算[7],在電機運轉時,現有的數學模型無法得到實時的數據,無法實時觀察,且無法預測到電機性能變化。隨著永磁電機測量技術成熟,得到實時數據通過在線分析將基于線的分析擴大成面或體的電機性能多參數分析[8]且對電機性能進行預測具有重大研究價值。
本文針對永磁同步電機(TB-416G-30-5型),提出在高速永磁同步電機中采用機器學習算法進行試驗數據分析,利用灰色關聯度分析(grey relational analysis)模型將電機實驗數據進行降維分析,通過5-5-1型誤差反向傳播神經網絡(back propagation- neural networks)模型建立應用于高速永磁電機的試驗數據平臺,實現了對高速永磁電機實測參數的解析與更改單項參數后電機性能的評估,通過對評估結果驗證,實現了定量分析。為最終實現智慧設計、智慧加工和遠程移動控制測試流程奠定了基礎。
1)異常值判定。永磁同步電機(TB-416G-30-5型)在進行電機負載模擬試驗、電機轉向測試、空載反電動勢測量、空載反電動勢溫度系數測定、溫升試驗、電機特性曲線測量、空載損耗測量、過載試驗、堵轉試驗等,根據TB-416G-30-5型永磁同步電機的各項數據額定值,確定10個屬性的取值范圍,將得到的實驗數據中明顯超出可達范圍的部分元組屬性值記為異常值,對異常值標記為缺失值,后續處理方法按照缺失值處理。
2)熱卡填充。試驗測試還存在數據采集及轉存過程中的丟失,針對于該部分數據,本文采用熱卡填充法對缺失數據進行填充,具體實現即是把含有缺失值的元組的其他列屬性值與其他數據完整的元組屬性項求歐式距離,用距離最短的元組中對應值作為缺失值的估計量進行填充。
(1)
經過預處理后的試驗數據存在數據維度問題,過多的數據維度直接參與BP神經網絡模型的訓練會增大訓練的時間復雜度,在原始數據各個屬性之間存在高關聯度的基礎之上,對電壓(V)、電流(A)、輸入功率(W)、功率因素、頻率(Hz)、轉速(rpm)、扭矩(N*m)、機械功率(W)、溫度(℃)、時間(s)10個屬性列進行關聯度評價,并對其做出定量分析,主要分為以下幾個步驟:
1)確定分析數列。灰色關聯度的輸入,是以上10個維度相同的不同屬性列。可先確定一列,用來作為參照,接下來則是計算其他屬性數列與該參考數列的相似度。

(2)
式中,Ai(k),Bi(k)分別表示第i個、第j個屬性列的序號為k的試驗樣本值。
2)變量無量綱化。由于試驗所得數據單位不一致,讀取原始數據時只能讀取其在一定單位下實際值,不同屬性的值存在量級差異。為消除單位不一致帶來的差異,需要對輸入的屬性數列進行無量綱化。
于此,引入均值化算子,通過計算各屬性數列的均值項。公式(2)轉化為:
(3)

接下來對公式(3)應用始點零象化算子,以此來計算出其相應的始點零象:
(4)
式中,Ai(k)0=Ai(k)′-Ai(1)′,Bj(k)0=Bj(k)′-Bj(1)′。
3)關聯度計算。灰色關聯度計算公式如下:
(5)
式中,Eij表示參考數列Ai與比較數列Bi的灰色絕對關聯度。其中:
|BSj-ASi|=
通過式(5),可以計算出的灰色關聯度值Eij,進一步就可以得出灰色絕對關聯矩陣:
(6)
4)關聯度排序。得到灰色絕對關聯度矩陣,對絕對關聯度值進行排序,容易得出Eij=Eji,不考慮當i=j的情況,共有45對關聯度值。
1)屬性組確定。根據關聯度排序,可以找到屬性最為相關的兩組及其以上的評價屬性,采用貪心算法,設計一個大小為45的結構體,該結構體包含兩個屬性點以及兩個屬性點的絕對關聯度,以關聯度值的大小為排序依據,對排序完成的結構體數組進行遍歷操作,分出對應屬性元組,要求元組屬性在4個對應元組內的一條或多條屬性為一分塊即屬性組,結果為分塊一:電流、扭矩、機械功率、時間;分塊二:電壓、輸入功率、頻率;分塊三:功率因素、轉速;分塊四:溫度。
2)特征屬性確定。每個分塊之間屬性相互獨立,但一個分塊內存在多條屬性的形框,故此提取其中特殊屬性作為這個分塊的代表,通過計算各個屬性與電機運行效率的關聯度最大即發展趨勢最相近的4條屬性,記為特征屬性,作為BP神經網絡的輸入層。
神經網絡[9]可分為三個部分,分別是輸入層、隱層和輸出層。基于誤差反向傳遞的人工神經網絡(BP-NN)每層的內部神經元節點不進行直接關聯和信息交流,信息的傳遞在不同層的神經元之間進行,并且只能與相鄰層神經元進行溝通,傳遞信息信號。
BP神經網絡模型的訓練過程是一個循環往復的過程,大體上劃分為兩個部分—數據信息的正向傳播和誤差的反向傳播。過程如圖1所示。

圖1 BP神經網絡訓練階段
當BP神經網絡達到最后允許的誤差要求或是規定的迭代次數,訓練任務則終止,神經網絡訓練則代表完成。
1)神經網絡結構與算法各層神經元個數的確定。
輸入層神經元個數根據經過GRA模型與貪心并查集算法降維處理過后確定了4個屬性列為輸入,記作X=(x1,x2,,x3,x4)T加入值x0=-1,則向隱含層神經元中引入了一個閾值。對輸入樣本,在這里需要進行一次劃分,96%用來作為訓練樣本進行神經網絡訓練,4%用作驗證神經網絡的準確度,并對輸入樣本進行歸一化處理。
隱含層神經元在訓練過程中,同與輸入層神經元和輸出層神經元相鄰,可直接進行信息交流。其個數的選擇能影響神經網絡收斂速度,以及神經網絡收斂性能。隱含層神經元在信息和誤差傳遞過程中,不斷調整參數,使預測值更能接近期望值,使得結果在誤差范圍內。通過經驗公式[10]:
(7)
確定隱含層神經元個數,其中α為區間[1,10]之間整數,n=4代表輸入層神經元個數,m=1為輸出層神經元個數。
根據上述表達式計算出隱含層神經元的個數范圍為[4,13],故此選取5個神經元來設計神經網絡隱層。隱層神經元向量Y=(y1,y2,y3,y4,y5)T,加入值y0=-1,則對輸出層神經元引入了一個閾值。記O=(o1)T為神經網絡輸出層神經元向量,D=(d1)T為神經網絡期望輸出的向量。設置權值矩陣V=(v1,v2,v3,v4,v5)T為輸入層到隱層之間的轉換矩陣,列向量vj=(v1j,v2j,v3j,v4j)T表示隱含層第j個神經元其對應的權值向量,vij表示輸入層第i個神經元與隱含層第j個神經元之間的連接權。權值矩陣W=(w1)T為隱含層到神經網絡輸出層之間的傳遞矩陣,其中列向量w1=(w11,w21,w31,w41,w51)為輸出層的第1個神經元的權值向量,wjk為隱含層第j個神經元與輸出層第k個神經元之間的連接權。

圖2 BP神經網絡模型
2)BP-NN模型建立。輸出層表達式記為:
o1=f(net1)
(8)

隱層時,隱含層存在:
yj=f(netj),j=1,2,…,5
(9)

在數據傳遞過程中,對傳遞函數f(x)采用S型函數,即公式(10)所示:
(10)
函數f(x)的一些天然優勢—連續性、可導,且有:f′(x)=f(x)[1-f(x)]。
3)調整網絡信息誤差與權值。定義誤差E,其代表期望輸出與神經網絡預測輸出的符合程度,誤差E的具體計算方式如式(11)所示:
(11)
將公式(11)引入隱含層進行計算,可以得到均方誤差:
(12)
同時加入輸入層,進行展開:
(13)
由上式可以看出,網絡輸入誤差是各層權值wj1、vij的函數,因此調整權值可改變誤差E,使權值的調整量與誤差的負梯度成正比,即:
i=1,2,…,4;j=1,2,…,5
其中:負號表示梯度下降,常數表示比例系數,在訓練中反映了學習速率,設定為0.01。
經過一系列轉換,得出三層BP神經網絡學習算法權值調整具體公式為:

(14)
神經網絡訓練中,各層數值的變化主要是由輸入信號、
學習率以及誤差信號決定的。針對輸出層的誤差E,當它的值在預先設定的誤差0.001范圍內時,則表明神經網絡訓練達到了精度要求,完成神經網絡訓練階段,便可使用得到的訓練模型對實際的預測樣本進行預測試驗。
4)測試樣本集驗證。由訓練得到的BP神經網絡模型,對先前劃分的測試集進行測試,輸入樣本指標,得到預測的電機運行效率,設定一個閾值v=0.05,當誤差率絕對值在誤差率范圍內時,表示預測準確,否則失敗。
通過對永磁同步電機(TB-416G-30-5型)進行分別進行電機負載模擬試驗、電機轉向測試、空載反電動勢測量、空載反電動勢溫度系數測定、溫升試驗、電機特性曲線測量、空載損耗測量、過載試驗、堵轉試驗等,得到記錄的10個屬性項數據,共計1 068條記錄。試驗數據經過異常值過濾和缺失值填補后,部分數據如表1所示。
經過試驗數據預處理后,將數據放入灰色關聯度求解函數,可求解得到對應的絕對關聯度矩陣。

表1 數據預處理
其中:X1...X5...X10分別表示電壓(V)、電流(A)、輸入功率(W)、功率因素、頻率(Hz)、轉速(rpm)、扭矩(N*m)、機械功率(W)、溫度(℃)、時間(s)。

表2 屬性關聯矩陣
為后續分析更加簡明,將關聯矩陣表示為圖3。

圖3 關聯度分析
利用該矩陣,結合貪心算法思想,將其中相關度較高的元組屬性相連接,如圖4所示。

圖4 關聯度求解
運用并查集思想,尋找每個屬性組與運行效率關聯度最大的屬性列,得出屬性1、2、3、4;設計4-5-1的BP神經網絡,對樣本數據做劃分,使用隨機函數選取96%的數據作訓練,剩余4%數據作為測試樣本。經過試驗后,神經網絡對測試集測試準確率如圖5所示。

圖5 神經網絡預測結果
具體預測數據見表3,其中誤差率為預測值與實際值的差值與實際值的比值。

表3 神經網絡預測值
對測試樣本進行神經網絡模型驗證[11],總數記為n,并以0.05為最大誤差允許范圍,誤差在范圍內認定為預測準確,個數記為m,超出范圍記為預測失敗,用m/n表示神經網絡預測準確率,計算得到神經網絡預測的準確率為90.86%。
本次實驗利用BP神經網絡經過訓練樣本訓練后,神經網絡預測準確率在90%左右,原因主要有以下幾點:
1)訓練數據過少:對于1000條數據作為神經網絡模型訓練樣本而言,數據量依舊不夠,隨著后續數據不斷增多,預測效果也會提升。
2)BP神經網絡的輸入層維度過小:選取的4個屬性作為神經網絡的輸入,其包含的信息量不足以表示10列屬性,考慮增加神經網絡的輸入屬性類,即對灰色關聯度分析做改進。
3)電機效率評價的主觀因素。電機效率標準評價的數據是期初人為測試得到,存在一定的人為主觀因素影響,使得電機效率評價標準不一致。
4)BP神經網絡本身局限性:存在收斂慢、容易陷入局部最小值、出現過擬合現象等不定因素。
考慮到神經網絡對電機運行效率的預測效果不佳在一定程度上是因為神經網絡輸入屬性較少。這里對灰色關聯分析維度選擇進行了調整,改變貪心算法要求為分出5個屬性組,如圖6所示。

圖6 灰色關聯度劃分
通過增加輸入層神經元個數,得到的神經網絡結構即使5—5—1型,減小訓練誤差值goal=0.000 1,設定網絡訓練中最小梯度grad=1.0e-005。更改神經網絡結構后,對試驗數據再做訓練測試,得到的神經網絡預測結果如圖7所示。
電機測試數據分析模型經過改進,最終得到神經網絡的準確度在94%左右。
本文設計了基于多參數評價的電機動態性能評估模型,通過灰關聯度進行參數選擇并建立權重,使用BP神經網絡將篩選出來的參數進行訓練評價,根據其模型的特性,采用多組數據訓練得到評價結果。在誤差分析方面,用同種參數的電機測試數據前部分用于評價,后半部分對結果進行誤差分析。在此基礎上,對評價模型得到的結果與真實表現電機性能的效率之間采用了擬合模型反驗證了評價模型的準確性。這些曲線的獲得一方面可及時了解客戶使用狀態,另一方面通過產品運行數據,幫助設計人員及時了解產品缺陷,解決問題于發生之前,最終這些數據為后期進行大數據分析奠定堅實的基礎。