孫毅剛,王 雷,薛仲瑞,陳維興
(中國民航大學航空自動化學院,天津 300300)
傳感器故障類型主要包括2種:一種是軟故障(漂移故障),是指傳感器參數是緩慢變化的,開始誤差是很小的,但是隨著時間的延遲誤差逐漸變大;另外一種是硬故障(階躍故障),是指傳感器在短時間內突然發生比較容易識別的損壞和完全失效,傳感器參數是突然變化的[1~3]。由于發生硬故障的傳感器的輸出往往發生較大的突變,因此,這種故障是比較容易識別的;而軟故障由于是一種參數的緩慢變化,所以,軟故障的診斷是比較困難的,也是傳感器故障診斷研究的重點和難點[1,2,4,5]。所以,硬故障一旦發生,就應實時地檢測出來。這里主要研究硬故障的實時檢測。
硬故障檢測的目的是確定一個具體的傳感器信號的有效性。這是通過使用4種可能檢查的一個子集來檢查采集到的傳感器信號。硬故障監測的理論方法主要包括:最小—最大檢查、變化速率檢查、偏差點的百分數檢查、參考點偏差檢查[5,6]。
對于航空發動機傳感器硬故障檢測軟件可分為神經網絡發動機模型以及檢測閾值的線下訓練軟件和硬故障在線檢測軟件兩部分。軟件的應用平臺是基于ARM9的嵌入式工控機,嵌入式系統采用的是WinCE 5.0系統。由于嵌入式硬件平臺和系統的資源十分有限,是不能夠采用Matlab等這些具有強大的數據處理能力的開發工具。因此,選用C++語言編寫神經網絡嵌入式軟件,開發平臺選用VS2005,并聯合使用WinCE 5.0模擬器對于編寫的MFC智能設備進行初步的檢測和調試。程序的基本流程圖如圖1所示。

圖1 流程圖Fig 1 Flow chart
檢測流程:首先在線下使用航空發動機傳感器正常運行時的數據對神經網絡進行訓練,模型訓練完成之后,保存好訓練好的網絡的權值;之后,使用訓練好的網絡權值重新構建發動機模型,并使用正常數據去計算某個時期傳感器正常運行時的上下閾值;將計算好的檢測閾值移植到在線檢測軟件之中,對于發動機傳感器實時傳入的數據進行檢測、判斷,判斷發動機傳感器是否出現硬故障。
BP神經網絡在設計上采用的是比較簡單的三層網絡結構[1]。輸入層選取能夠保證發動機穩定工作的參數,因此,網絡的輸入層設為6個節點,它們由發動機的控制輸入參數和可測量的環境干擾參數組成,再外加一個調節節點作為下一層輸入閾值,對高壓轉子轉速N1,低壓轉子轉速N2,發動機排氣溫度EGT三個參數進行訓練檢測的網絡,網絡的輸入層參數分別是:油門桿角度(PLA)、飛行馬赫數(Ma)、飛行高度(AL)、可調靜葉的角度(CVV)、燃油流量(FF)、放氣活門的開度(VBV)。而對FF進行訓練檢測的網絡參數則是換為N1來進行估計的。對于這2個網絡的設計模型如圖2所示。

圖2 BP網絡的設計模型Fig 2 Design model of BP network
對于隱含層節點的選取則是由實驗對比的方法選取的。經過試算對比,最終選取的最佳隱含層的節點數為11。同時,依據神經網絡的基本原理,隱含層和輸出層的節點在計算時,每一個節點都需要一個調節閾值來對各個節點的輸出進行調節。但是,如果對于每一個隱含層和輸出層的節點都增加一個閾值變量的話,那么,就增加了程序代碼中的變量和計算的復雜度。再考慮到每個節點的閾值變量均采用的是一個很小的隨機值,那么,程序對于原來的模型進行小部分的修改,在輸入層和隱含層各增加一個偏置節點,作為下一層各節點的閾值調節參量。偏置單元的初始值設為1,并且,2個偏置單元之間不存在直接的聯系。修改后的模型如圖3所示。

圖3 修改后的BP網絡模型Fig 3 Modified BP network model
建立好發動機神經網絡模型之后,根據實際采集到的數據,將數據先存入到文本文件之中,然后再將數據寫入到Sqlite 3嵌入式型數據庫中,方便對于數據的讀寫操作。然后對于模型的輸出數據再進行繪圖仿真。圖4是N1和EGT使用神經網絡發動機模型訓練軟件的輸出結果與實際輸出結果的仿真結果的圖形對比。其中,位于圖像上部的曲線,分別為N1和EGT的實際輸出值的圖形,而N1CE和EGTCE是網絡的輸出數據圖形。最下部的則是兩者之間的差值。從圖形對比中可以看出:該訓練軟件的訓練結果與實際輸出值是基本吻合的,誤差也很小,在允許范圍之內。

圖4 N1與EGT仿真圖形對比Fig 4 N1and EGT simulation diagram contrast
在發動機傳感器模型訓練好之后,就要對其實際的檢測效果進行驗證。因此,就需要實際的故障數據來檢測。但是,由于實際故障數據難以獲得,對于正常運行的發動機傳感器數據,須人為地添加故障數據來判別硬故障在線檢測軟件的運行效果。圖5是對于輸入故障數據的模擬仿真結果。N1和EGT是發生故障的數據圖形,而N1CET和EGTCET則是網絡計算出的傳感器實際正常輸出設為數據圖形,ERROR則是兩者之間的誤差曲線。如圖可以看出:當傳感器出現硬故障之后,實際值和網絡的計算值之間的誤差ERROR的偏差是十分明顯的,有的誤差甚至超過了實際值。因此,該軟件能夠準確快速地檢測出硬故障。

圖5 N1與EGT故障仿真結果Fig 5 Fault simulation results of N1and EGT
航空發動機傳感器硬故障檢測軟件的發動機傳感器模型的建立比較準確,誤差范圍很小,而且,傳感器故障檢測軟件對于傳感器硬故障的檢測也十分明顯。同時,使用C++語言編寫的軟件占用資源小,運行速度比較快,能夠很好地滿足實時在線檢測的要求。但是,由于嵌入式系統資源有限,使得系統的實際處理能力存在著一定的缺陷和不足,仍然要進一步的改進。對于航空發動機傳感器的軟故障的檢測,使用BP神經網絡檢測也是一項很行之有效的方法,但由于軟故障變化范圍的緩慢,使得目前很難完成軟故障在線檢測。因此,使用神經網絡對于軟故障實現在線的檢測仍然需要進一步的研究。
[1] 曹 曦.基于神經網絡的傳感器故障診斷仿真與實驗研究[D].上海:上海交通大學,2001.
[2] 蔡開龍,孫云帆,姚武文.航空發動機故障診斷與自適應重構控制[J].電光與控制,2009,16(6):58 -61.
[3] 劉 華,唐永哲,郝 濤.飛控系統傳感器故障診斷研究[J].計算機仿真,2010,27(2):30 -33.
[4] 徐秀玲,郭迎清,王鏞根,等.某型渦輪風扇發動機控制系統傳感器故障診斷研究[J].航空動力學報,2004,19(1):65 -68.
[5] 張婭玲,陳偉民,章 鵬,等.傳感器故障診斷技術概述[J].傳感器與微系統,2009,28(1):4 -6.
[6] 孫曉倩,艾延廷,張 振.航空發動機傳感器故障診斷方法研究[J].沈陽航空工業學院學報,2010,27(2):15 -19.