李洪軍 ,汪大春 ,楊哲昊 ,韓 瑩
(1.國能黃驊港務有限責任公司,河北 滄州 061110;2.西南交通大學電氣工程學院,四川 成都 611756)
質子交換膜燃料電池(PEMFC)功率密度高、能量轉換效率高、負載響應快且環保無污染,受到廣泛關注。燃料電池系統結構復雜,容易出現多種故障,發展應用受限[1]。進行燃料電池故障診斷研究,不僅可以保證發電系統的安全可靠運行,還能為燃料電池大規模發展提供有利條件。
燃料電池故障診斷方法主要包括基于實驗模型和基于數據驅動兩類方法。文獻[2]對燃料電池故障特征指標進行研究,提出基于深度學習的PEMFC 水淹故障診斷方法,可自動提取原始數據的故障特征來診斷水淹故障。文獻[3]提出一種基于氣體壓力降的燃料電池水故障診斷方法,搭建了PEMFC 水故障診斷測試平臺。文獻[4]提出一種基于球形多類支持向量機(SVM)和Shapelet 變換的PEMFC 故障診斷方法,可識別膜干、低高壓、低空氣過量系數故障和正常狀態等健康狀態,整體準確率為96.13%。基于數據驅動的診斷方法使用監測的歷史信息來了解系統特性并完成故障診斷,無需搭建燃料電池模型,運算效率高且可快速實現,在燃料電池系統故障診斷領域得到廣泛應用。
本文作者提出基于深度卷積生成對抗網絡(DCGAN)的PEMFC 水管理故障診斷方法。首先利用主成分分析(PCA)對原始實驗數據進行消除量綱和維度縮減操作,以提取故障特征向量并降低運算復雜度;再使用DCGAN 對PEMFC 數據樣本實現故障診斷,以提高故障診斷準確率,并縮短診斷時間。對比BP 神經網絡(BPNN)和SVM 算法的診斷結果,采用1 800 組PEMFC 故障樣本數據集,對所提方法的可行性進行驗證。
PEMFC 系統故障類別如圖1 所示。

圖1 PEMFC 系統故障類別Fig.1 Category of the failure of proton exchange membrane fuel cell(PEMFC) system
PEMFC 系統由電堆模塊和輔機設備(如氫氣/空氣供給系統、氣體加濕系統、熱管理系統和數據采集及控制系統等)組成,系統故障可分為電堆故障和輔機設備故障。電堆故障包括電堆水淹、膜干和催化劑中毒等可逆故障,以及質子交換膜破損、電極穿孔等不可逆故障[5]。以上故障中,最常見的是電堆水淹和膜干故障,都屬于水管理故障。水淹故障是由于電堆內部電化學反應產生的水無法排出或排出不暢,導致液態水累積;膜干故障則是由于電堆內部水含量過低,膜干燥導致電化學反應無法正常進行。實驗主要針對PEMFC的水管理故障展開診斷方法研究。
2.1.1 生成對抗網絡(GAN)
GAN 是一種基于對抗思想進行訓練的網絡結構,核心思想源于博弈論中的納什均衡。GAN 由生成器和判別器兩部分組成,其中,生成器對輸入的真實數據樣本進行分析,生成與真實數據特征相近的新數據樣本。這些樣本與真實樣本一并輸入判別器,再由判別器對輸入數據進行判別,將真實數據和生成器生成的數據樣本進行分類。
生成器的輸入包含真實數據樣本,還有隨機生成的噪聲z。在捕捉真實數據的潛在分布特征后,可以生成與真實樣本相近的數據Xgen=G(z)。判別器的輸入由兩部分構成,包括生成的虛假數據Xgen和真實輸入數據Xreal,通過輸出概率值D(X),判別輸入數據是真實的還是生成的。生成器與判別器不斷對抗,前者生成更真實的數據,后者判別輸入的數據真實與否。通過二者的迭代對抗訓練,同時改善性能,最終達到納什平衡[6]。目標函數如式(1)所示:

由于GAN 具有無監督學習特性,將導致Xgen可能會與Xreal差異較大。此外,不同輸入數據集的特征分布存在差異,將導致GAN 訓練過程不穩定。
2.1.2 DCGAN
為解決GAN 存在的缺陷,引入卷積神經網絡(CNN),并與GAN 結合,形成DCGAN。DCGAN 利用轉置卷積層替換所有池化層,并在更深的卷積網絡中去除全連接層,將步幅卷積應用于生成對抗網絡中,保證生成數據的質量及多樣性。DCGAN 將轉置卷積層所提取的特征作為判別器的輸入項,經優化生成的對抗網絡判別層選擇Sigmoid 作為激勵函數,而輸出層則選擇Relu 作為激活函數。DCGAN 的結構見圖2,其中C為輸出節點數,即分類的類別數。

圖2 DCGAN 的結構Fig.2 Architecture of deep convolutional generative adversarial net(DCGAN)
輸入的隨機噪聲數據為z;生成器生成的與輸入數據相關的輸出數據為z′。在生成器模型中訓練過的z′與z合并,疊加后作為判別器的輸入項。這些故障數據并不都是真實數據,其中包含一部分真值為0 的負樣本y和真值為1 的正樣本y′。經過Sigmoid 函數激勵,判別器可以區分生成的和真實的故障數據,且無需反復確定模型的參數。卷積層的加入,不僅提升了模型應對大規模數據集的能力,還能調整神經元的數量,降低計算復雜度。生成器在訓練過程中通過對抗調整和優化參數,使輸出結果更真實,因此,生成器損失函數的設計是提升模型對故障數據監測與診斷的關鍵。對進入判別器的正樣本進行y′訓練,設LGAN(D)為判別器輸入結果與真實值的交叉熵[7]:

式(2)中:W為能量函數;D(z,z′)表示輸入判別器的數據為隨機數據和生成數據的概率。
利用y和y′的L1范數作為生成器的損失函數,衡量真實值與生成值之間的差距:

利用以上損失函數,模型訓練初期轉置卷積層提取的故障數據特征會更穩定。在局部特征訓練時,采用遷移學習策略對數據集進行調整,可縮短訓練時長,提升處理效率。
PCA 是一種減少變量維度的多元統計方法,核心思想是通過正交變換,將一組可能存在相關性的變量數據,轉換為一組線性不相關的變量,轉換后的變量被稱為主成分。這些主成分變量可反映原變量的大部分信息,利用主成分變量進行后續運算,可簡化問題的復雜性[8]。PCA 計算步驟如下。
①將原始數據組成n行m列矩陣X=[X1,X2,…,Xm]。
②將原始數據X標準化,如式(4)-(5)所示:


③求出協方差矩陣P:

式(6)中:X*為矩陣X標準化后得到的矩陣;(X*)′為X*的轉置;pii=1,pij=pji。
④求出協方差矩陣P的特征值及對應的特征向量。P的m個特征值為λj,特征向量為Uj=[U1j,U2j,…,Umj],j=1,2,…,m,提取的主成分yj如式(7)所示:

式(7)中:k=1,2,…,n;j=1,2,…,m;U為特征向量Uj中的各項元素;x*為標準化矩陣X*中的元素。
基于DCGAN 的PEMFC 水故障診斷流程如圖3 所示。

圖3 基于DCGAN 的PEMFC 水故障診斷流程Fig.3 Water fault diagnosis process of PEMFC based on DCGAN
具體流程如下:
①原始數據采集。通過PEMFC 系統采集1 800 組原始實驗數據,正常狀態、水淹故障和膜干故障各600 組。
②數據預處理。對原始數據樣本進行歸一化處理,降低不同參數間的量綱差異對診斷結果的不利影響;利用PCA對數據進行降維處理,提取主成分故障特征變量。
③故障樣本劃分。將樣本數據按3 ∶1的比例,隨機分為訓練集和測試集。
④訓練樣本集初始化。隨機輸入噪聲z;激勵函數設置為Sigmoid 函數;設置隱含層神經元個數為N;設計生成器損失函數。將訓練集樣本輸入到模型中,訓練判別器參數。
⑤對模型進行訓練。利用博弈機制優化判別器參數,當模型達到納什平衡時,訓練結束,保存模型參數。
⑥診斷結果輸出。將測試樣本輸入到判別器模型中,并輸出故障診斷結果。
實驗所采用的數據為PEMFC 實測數據,總樣本為1 800組,其中正常狀態、水淹故障和膜干故障各為600 組。根據DCGAN 的診斷流程,需將數據樣本劃分為訓練集和測試集兩部分。訓練集數據樣本用于幫助訓練DCGAN 中的模型參數;測試集數據樣本用于測試已經訓練好的模型精確度??紤]訓練集和測試集的劃分要保持數據分布的一致性,同時需要保證診斷方法的有效性及適應性,在3 種健康狀態樣本數據中,各隨機選取240 組數據,共720 組數據作為總數據樣本。利用留出法,將以上數據按3 ∶1的比例劃分為訓練樣本集和測試樣本集。各健康狀態類別及樣本數量如表1 所示。

表1 健康狀態類別及樣本數量Table 1 Health status category and sample number
燃料電池系統實際運行時會產生較多的監測數據,其中可以直接反映燃料電池運行狀態的主要數據如表2 所示。

表2 PEMFC 系統各特征變量Table 2 Various characteristic variables of PEMFC system
連接在PEMFC 系統上的傳感器能實時監測這12 個特征變量,將多個特征變量共同作為評判指標完成的故障診斷,具有更高的可靠性。
為提高PEMFC 系統故障識別效率,利用PCA 對原始故障特征數據進行主特征提取。在保證降維數據各維度相關性盡量最小的同時,將高維數據合理展開至低維空間,可大幅簡化模型復雜度。利用最大似然估計,對原始12 維故障特征變量進行內在維度估計,發現將原始數據降低至3 維,具有最佳效果,因此,通過PCA 將原始的12 維數據簡化為3維的數據集。特征提取過程如下:
①確定原始故障特征向量,選取表2 中的12 個變量組成12 維原始故障特征變量X=[x1,x2,…,x12];
②原始故障特征變量標準化,對特征變量X進行去均值處理,得到X*=
③計算協方差矩陣P,以及P的特征值λ和特征向量U;
④對特征值λ由大至小排序,選擇前3 個特征值和相對應的特征向量,并將原始特征投影到選取的特征向量上,得到降維后的新3 維特征Y=[y1,y2,y3]。
PCA 三維特征可視化圖如圖4 所示。

圖4 PCA 三維特征可視化圖Fig.4 Principal components analysis(PCA) 3D feature visualization diagram
從圖4 可知,經過PCA 降維處理后的故障特征數據是互相分離的,多數數據分布在不同區域,僅少量數據有重合,因此,將數據投影到3 維的特征空間,更易區分各健康狀態。
將數據樣本輸入到DCGAN 中,使用訓練樣本進行模型訓練,得到已完成訓練的網絡模型,再將測試集輸入到判別器模型中,得到測試結果并與真實值對比。得到的診斷準確率為98.33%,DCGAN 模型診斷時間為2.79 s。測試集的診斷結果如圖5 所示。
從圖5 可知,有2 組屬于水淹狀態的數據被錯誤地診斷為正常狀態和膜干故障;有1 組正常狀態的數據被診斷為水淹故障。燃料電池發生水淹故障的初期所表現出的數據特征與正常狀態類似,且水淹故障和膜干故障均導致PEMFC電堆電壓下降、輸出功率降低,表現出的故障特征較類似,因此發生誤判。

圖5 DCGAN 測試集診斷結果Fig.5 DCGAN test set diagnostic results
為驗證DCGAN 方法的性能與可行性,分別采用DCGAN、BPNN[9]和SVM 算法[10]進行故障識別,并對故障診斷結果進行對比。為對算法做出公平合理的對比,使用PCA降維后的數據作為BPNN 和SVM 的訓練樣本和測試樣本。
3 種診斷方法的診斷精度和診斷時間如表3 所示,其中診斷精度分為各健康狀態和整體的診斷精度。

表3 3 種方法的診斷精度及診斷時間Table 3 The diagnostic accuracy and diagnostic time of three methods
從表3 可知:相比于BPNN 和SVM 法,DCGAN 法的診斷準確率最高;在運算時間方面,BPNN 法具有最短的運算時間,但診斷準確率較低;SVM 法同樣具有良好的診斷效果,但運算速度較慢。綜上所述,基于DCGAN 的故障診斷方法具有良好的故障診斷效果,更適用于PEMFC 水管理故障診斷。
本文作者針對PEMFC 系統水管理故障問題展開研究,提出一種基于DCGAN 的PEMFC 水管理故障診斷方法,實現了PEMFC 的3 種健康狀態的故障識別,結論如下:利用720組故障樣本數據進行實例分析,所提方法能正確識別電堆水淹、膜干和正常狀態,故障分類精度達到98.33%,診斷時長為2.79 s。該方法利用PCA 對故障原始數據作降維處理,將原始的12 維特征降到3 維,提高模型診斷準確率并縮短模型運算時間。所提方法的預測精度分別比BPNN 和SVM 法高出7.22%和3.33%,計算時間比SVM 法節省2.56 s。
由此可見,所提方法在診斷精度和計算時間兩方面都具有較大優勢,適用于PEMFC 水管理故障診斷。該方法無需了解燃料電池內部運行機理,僅通過數據即可完成故障診斷,因此,同樣適用于其他工程應用中。