劉力宇,崔 江
(南京航空航天大學 自動化學院,南京 211106)
旋轉整流器式無刷交流發(fā)電機是現代獨立電力系統的重要組成部分。無刷交流發(fā)電機發(fā)明于20世紀中葉,其冷卻方式、材料及工藝在之后的數十年間得到了不斷的完善和發(fā)展,其功率密度越來越大,可靠性顯著提高[1]。旋轉整流器的發(fā)明與應用取代了原本交流同步發(fā)電機所必要的電刷結構,避免了由于電刷故障而導致的頻繁維修與更換,交流同步電機的應用也隨之更加廣泛。而旋轉整流器的故障診斷也成為交流同步發(fā)電機能否正常運行的關鍵因素之一。
目前,常用的發(fā)電機故障診斷實現平臺,有以微處理器(例如DSP)為核心的嵌入式設備和仿真軟件(例如MATLAB)等。哈爾濱理工大學的研究人員采用DSP實現發(fā)電機輸出電壓與電流信號的采集與故障診斷[2];還有些研究人員以DSP芯片為核心,搭建了發(fā)電機旋轉整流器故障診斷系統,提高了診斷的實時性與正確率[3]。華北電力大學的于海波使用MATLAB軟件建立風力發(fā)電機的仿真模型,并在軟件中實現了希爾伯特-黃變換(HHT)方法用于發(fā)電機定子匝間短路故障的診斷,診斷效果良好[4];中國地質大學的劉旭使用MATLAB軟件對風力發(fā)電機的數據進行挖掘,將K-means聚類與BP神經網絡相結合,提高了發(fā)電機故障診斷的正確率[5]。嵌入式設備需要將算法程序燒錄進存儲器中,難以根據不同情況靈活選擇相應的方法,操作界面也并不友好;MATLAB等軟件占用PC機資源多,功能冗余,只適合算法的功能性驗證。本文所設計的診斷平臺,主要基于C++ Builder實現其軟件算法,硬件采用泰普HandyScope4(HS4)作為電機平臺的數據采集模塊。整個軟件系統包含圖形顯示、特征提取和故障分類等功能,具有較強的診斷功能和可操作性。
旋轉整流器(如圖1所示)的數學模型是一個雙橋結構,其中的6個二極管(D1~D6)可以將三相交流輸入轉換為直流輸出。二極管開路是其故障的常見原因[6],模式可分為正常、單管(例如D1)開路故障、同相雙管(例如D1D3)開路故障、同橋雙管(例如D1D4)開路故障、異相異橋雙管(例如D1D6)開路故障共5種。
圖1 旋轉整流器模型
因二極管具有單向導通性,發(fā)電機交流勵磁機的電樞繞組上會產生一定的諧波分量,這些諧波分量又會在勵磁機的勵磁繞組中產生對應的諧波分量,這種現象通常被稱為諧波電樞反應[7]。當發(fā)電機整流二極管發(fā)生開路故障時,交流勵磁機勵磁繞組中的諧波分量將發(fā)生改變。因此,傳統方法往往是根據勵磁電流的諧波分析及其變化情況來進行故障診斷的[8-9]。本設計采用深度置信網絡等深度學習理論模型,自適應提取勵磁電流信號中蘊含的故障特征,可以獲得較高的故障診斷率。
本平臺使用的硬件主要包括三大模塊(如圖2所示),其中使用霍爾傳感器作為采集電流信號的傳感器元件,將發(fā)電機交流勵磁機的勵磁電流信號轉換為大小合適的電壓信號,然后使用HS4信號采集卡進行信號采集與傳輸。HS4擁有高速采樣率和12~16位可調節(jié)分辨率,與PC機間利用USB進行信號傳輸。
圖2 硬件框架圖
本平臺使用基于C++語言,在Borland C++ Builder 6.0(BCB 6.0)編譯器中編寫。BCB 6.0是Borland公司在 Delphi 基礎上推出的可視化集成開發(fā)工具,它使用Visual Component Library(VCL)可視組件庫,在開發(fā)應用程序時更加簡單、便捷[10]。
本平臺由TEdit,TButton,TPaintBox,TCheckBox等多個控件構成,集成了數據采集、數據讀取與存儲、特征提取、故障診斷等功能模塊,故障診斷的步驟如圖3所示。平臺可使用信號采集模塊獲取實時信號進行在線故障診斷,也可使用數據讀取與存儲模塊加載PC機本地數據進行分析診斷。平臺的特征提取模塊與故障診斷模塊包含深度置信網絡等深度學習模型。原始信號和特征信號的圖形可直觀地顯示在信號顯示窗口中,便于進行波形的人工分析和觀察對比。
圖3 故障診斷流程圖
數據采集模塊用于從信號采集卡獲得原始數據,使用該模塊時需要將HS4信號采集卡通過USB接口與PC機連接,并安裝泰普公司發(fā)布的驅動程序。該模塊擁有4個實時采樣頻道,50 MHz的最大采樣率,單次最大采集點數為4 096點。本平臺使用4個6 000點double數組儲存采集到的原始數據并使用信號顯示區(qū)域的第一個TPaintBox控件顯示各數組的前1 000點。每個采樣頻道都配備一個TEdit控件用于調節(jié)顯示圖形的y軸幅值。
數據讀取與存儲模塊用于加載本地數據或將采集模塊各通道的信號儲存到PC機中。本平臺使用兩個6 000點double數組加載本地數據,并在信號顯示區(qū)域的第二個TPaintBox控件中顯示各數組的前1 000點,每個數組配備一個TEdit控件用于調節(jié)顯示圖形的y軸幅值。平臺通過TOpenDialog和TSaveDialog控件進行數據的讀取與存儲。
特征提取模塊主要采用了離散傅里葉變換(Discrete Fourier Transform,以下簡稱DFT)等方法對信號進行處理,對儲存原始數據的數組中的一個或多個進行特征提取并將得到的數據儲存在新的double數組中,數據顯示窗口區(qū)第三個TPainBox控件中繪制出相應圖形。使用DFT算法進行特征提取時,由一個TEdit控件決定進行傅里葉變換的點數,使用TSpeedButton控件控制特征提取模塊是否運行,使用TComboBox控件配合switch函數確定特征提取中的算法。
故障診斷模塊主要包括了深度置信網絡(Deep Belief Networks,以下簡稱DBN)及最小距離法(Minimum Distance Classification,以下簡稱MDC)等算法,用于對特征提取模塊的輸出數組進行故障診斷,返回一個int參數來顯示故障類型。該模塊可對6個采樣通道同時進行診斷并分別在各通道下方的TEdit控件中顯示診斷結果。本平臺使用一個TComboBox控件根據多種負載情況調整算法參數,使用一個TEdit控件確定信號的采樣頻率。使用2個TEdit控件在診斷完成后分別輸出診斷次數和正確率。
本系統使用了MDC作為典型方法的一個代表,其特點是占用內存空間小,運算速度較快,但存在準確率不高,魯棒性較差,距離閾值選取不靈活等缺陷。
一般而言, MDC使用勵磁電流信號的1,2,6次諧波幅值作為診斷依據[11]。訓練MDC時,首先對原始信號進行DFT運算,根據式(1)可計算出,勵磁電流信號的1,2,6次諧波分別位于頻譜的6,11,31點處:
(1)
式中:n為諧波次數;f為實驗發(fā)電機勵磁機頻率50 Hz;F為采樣頻率10 kHz;N為采樣點數1 000點。
計算出不同負載情況下1,2,6次諧波幅值的平均值,將其作為算法參數輸入到C++程序中,由于數據總量較小,平臺設計時直接將其寫入算法中以提高診斷效率。
DBN是Hinton等人在2006年提出的一種目前應用廣泛的深度學習網絡,該網絡可以對輸入的數據自動地逐層提取能夠反映原始數據的本質特征[12]。DBN是一種具有多個隱層的神經網絡,由多個限制玻爾茲曼機(Restricted Boltzmann Machine,以下簡稱RBM)組成(如圖4所示),RBM是一種基于熱力學能量函數的概率網絡模型,它的網絡結構符合玻爾茲曼分布,其能量函數模型如下:
(2)
式中:bi,cj分別為隱含層與可見層的閾值;vi,hj分別為隱含層與可見層的神經元輸出;Wij為各節(jié)點間的權值。其可見層與隱含層各神經元的條件似然函數如下:
(3)
式中:Ψ為網絡使用的激活函數,本文使用“sigmoid”函數作為激活函數:
(4)
式中:exp為以自然常數e為底數的指數函數;z為RMB隱含層中各神經元對應的輸入向量。
整個DBN的訓練過程主要分為兩步,首先使用無監(jiān)督方式對RBM網絡進行逐層訓練,提取出能夠反映輸入信號的本質特征(即故障特征);其次,加入監(jiān)督信號對整體網絡進行反向有監(jiān)督微調,如果考慮分類則需要在輸出接一個分類器,使其能夠對輸入信號進行一一對應,達到分類效果。
圖4 DBN的組成結構
本平臺使用的DBN由兩個RBM網絡和一個神經網絡組成。訓練前,先將之前采集的原始信號作DFT變化并歸一化處理[13]。取其前250個點作為DBN的第一層輸入,將輸出層節(jié)點數設置為5, 兩層隱含層節(jié)點數分別設值為100、20,RBM訓練完成后將其導入神經模型進行有監(jiān)督微調。訓練完成后將得到的權值、閾值等參數導入到C++程序中進行實驗。
深度學習算法擁有較強的特征提取與分類能力,可以有效地避免MDC等常規(guī)算法可能產生的診斷誤差。
使用預先采集的信號樣本在本平臺上對DBN和MDC兩種診斷方法進行測試。為便于仿真和實際實驗比較,發(fā)電機負載為空載,特征提取方法均選擇DFT,結果如表1所示。
表1 離線實驗結果
利用物理實驗平臺對算法進行驗證,平臺構成如圖5所示。此處,實驗的發(fā)電機基本頻率為50 Hz,故障模式設置為正常模式、單管開路、同相雙管開路、同橋雙管開路、異相異橋雙管開路五種情況,每種情況進行200次實驗(共1 000次在線測試)。采集主勵磁機勵磁電流信號,通過HS4采集信號并傳輸給計算機,采樣率設置為10kHz,采樣點數為1 000點。兩種方法均獲得了100%的診斷率。MDC算法雖然簡單,但也獲得了較好的診斷效果,這說明豐富的專家知識在診斷領域也是十分重要的。而DBN方法無需專家信息,可以自動對信號進行分析,也能獲取媲美專家的診斷結果。
圖5 故障診斷實驗
具體的軟件運行操作界面如圖6所示。在PC機上使用本平臺對發(fā)電機勵磁電流進行實時處理,能夠準確地對發(fā)電機旋轉整流器故障進行在線診斷。
圖6 在線實驗的軟件界面
本文主要基于C++語言編寫程序,研究和設計了發(fā)電機旋轉整流器故障診斷上位機系統,系統主要包括必要的硬件和算法軟件。該平臺的操作界面簡潔,功能豐富,可集成和嵌入多種故障特征提取和分類算法,可移植性強。仿真和在線實驗均證明了所設計的算法和系統的有效性。