孫毅剛,王 雷,薛仲瑞,陳維興
(中國民航大學(xué)航空自動化學(xué)院,天津 300300)
傳感器故障類型主要包括2種:一種是軟故障(漂移故障),是指傳感器參數(shù)是緩慢變化的,開始誤差是很小的,但是隨著時間的延遲誤差逐漸變大;另外一種是硬故障(階躍故障),是指傳感器在短時間內(nèi)突然發(fā)生比較容易識別的損壞和完全失效,傳感器參數(shù)是突然變化的[1~3]。由于發(fā)生硬故障的傳感器的輸出往往發(fā)生較大的突變,因此,這種故障是比較容易識別的;而軟故障由于是一種參數(shù)的緩慢變化,所以,軟故障的診斷是比較困難的,也是傳感器故障診斷研究的重點(diǎn)和難點(diǎn)[1,2,4,5]。所以,硬故障一旦發(fā)生,就應(yīng)實(shí)時地檢測出來。這里主要研究硬故障的實(shí)時檢測。
硬故障檢測的目的是確定一個具體的傳感器信號的有效性。這是通過使用4種可能檢查的一個子集來檢查采集到的傳感器信號。硬故障監(jiān)測的理論方法主要包括:最小—最大檢查、變化速率檢查、偏差點(diǎn)的百分?jǐn)?shù)檢查、參考點(diǎn)偏差檢查[5,6]。
對于航空發(fā)動機(jī)傳感器硬故障檢測軟件可分為神經(jīng)網(wǎng)絡(luò)發(fā)動機(jī)模型以及檢測閾值的線下訓(xùn)練軟件和硬故障在線檢測軟件兩部分。軟件的應(yīng)用平臺是基于ARM9的嵌入式工控機(jī),嵌入式系統(tǒng)采用的是WinCE 5.0系統(tǒng)。由于嵌入式硬件平臺和系統(tǒng)的資源十分有限,是不能夠采用Matlab等這些具有強(qiáng)大的數(shù)據(jù)處理能力的開發(fā)工具。因此,選用C++語言編寫神經(jīng)網(wǎng)絡(luò)嵌入式軟件,開發(fā)平臺選用VS2005,并聯(lián)合使用WinCE 5.0模擬器對于編寫的MFC智能設(shè)備進(jìn)行初步的檢測和調(diào)試。程序的基本流程圖如圖1所示。
圖1 流程圖Fig 1 Flow chart
檢測流程:首先在線下使用航空發(fā)動機(jī)傳感器正常運(yùn)行時的數(shù)據(jù)對神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,模型訓(xùn)練完成之后,保存好訓(xùn)練好的網(wǎng)絡(luò)的權(quán)值;之后,使用訓(xùn)練好的網(wǎng)絡(luò)權(quán)值重新構(gòu)建發(fā)動機(jī)模型,并使用正常數(shù)據(jù)去計算某個時期傳感器正常運(yùn)行時的上下閾值;將計算好的檢測閾值移植到在線檢測軟件之中,對于發(fā)動機(jī)傳感器實(shí)時傳入的數(shù)據(jù)進(jìn)行檢測、判斷,判斷發(fā)動機(jī)傳感器是否出現(xiàn)硬故障。
BP神經(jīng)網(wǎng)絡(luò)在設(shè)計上采用的是比較簡單的三層網(wǎng)絡(luò)結(jié)構(gòu)[1]。輸入層選取能夠保證發(fā)動機(jī)穩(wěn)定工作的參數(shù),因此,網(wǎng)絡(luò)的輸入層設(shè)為6個節(jié)點(diǎn),它們由發(fā)動機(jī)的控制輸入?yún)?shù)和可測量的環(huán)境干擾參數(shù)組成,再外加一個調(diào)節(jié)節(jié)點(diǎn)作為下一層輸入閾值,對高壓轉(zhuǎn)子轉(zhuǎn)速N1,低壓轉(zhuǎn)子轉(zhuǎn)速N2,發(fā)動機(jī)排氣溫度EGT三個參數(shù)進(jìn)行訓(xùn)練檢測的網(wǎng)絡(luò),網(wǎng)絡(luò)的輸入層參數(shù)分別是:油門桿角度(PLA)、飛行馬赫數(shù)(Ma)、飛行高度(AL)、可調(diào)靜葉的角度(CVV)、燃油流量(FF)、放氣活門的開度(VBV)。而對FF進(jìn)行訓(xùn)練檢測的網(wǎng)絡(luò)參數(shù)則是換為N1來進(jìn)行估計的。對于這2個網(wǎng)絡(luò)的設(shè)計模型如圖2所示。
圖2 BP網(wǎng)絡(luò)的設(shè)計模型Fig 2 Design model of BP network
對于隱含層節(jié)點(diǎn)的選取則是由實(shí)驗(yàn)對比的方法選取的。經(jīng)過試算對比,最終選取的最佳隱含層的節(jié)點(diǎn)數(shù)為11。同時,依據(jù)神經(jīng)網(wǎng)絡(luò)的基本原理,隱含層和輸出層的節(jié)點(diǎn)在計算時,每一個節(jié)點(diǎn)都需要一個調(diào)節(jié)閾值來對各個節(jié)點(diǎn)的輸出進(jìn)行調(diào)節(jié)。但是,如果對于每一個隱含層和輸出層的節(jié)點(diǎn)都增加一個閾值變量的話,那么,就增加了程序代碼中的變量和計算的復(fù)雜度。再考慮到每個節(jié)點(diǎn)的閾值變量均采用的是一個很小的隨機(jī)值,那么,程序?qū)τ谠瓉淼哪P瓦M(jìn)行小部分的修改,在輸入層和隱含層各增加一個偏置節(jié)點(diǎn),作為下一層各節(jié)點(diǎn)的閾值調(diào)節(jié)參量。偏置單元的初始值設(shè)為1,并且,2個偏置單元之間不存在直接的聯(lián)系。修改后的模型如圖3所示。
圖3 修改后的BP網(wǎng)絡(luò)模型Fig 3 Modified BP network model
建立好發(fā)動機(jī)神經(jīng)網(wǎng)絡(luò)模型之后,根據(jù)實(shí)際采集到的數(shù)據(jù),將數(shù)據(jù)先存入到文本文件之中,然后再將數(shù)據(jù)寫入到Sqlite 3嵌入式型數(shù)據(jù)庫中,方便對于數(shù)據(jù)的讀寫操作。然后對于模型的輸出數(shù)據(jù)再進(jìn)行繪圖仿真。圖4是N1和EGT使用神經(jīng)網(wǎng)絡(luò)發(fā)動機(jī)模型訓(xùn)練軟件的輸出結(jié)果與實(shí)際輸出結(jié)果的仿真結(jié)果的圖形對比。其中,位于圖像上部的曲線,分別為N1和EGT的實(shí)際輸出值的圖形,而N1CE和EGTCE是網(wǎng)絡(luò)的輸出數(shù)據(jù)圖形。最下部的則是兩者之間的差值。從圖形對比中可以看出:該訓(xùn)練軟件的訓(xùn)練結(jié)果與實(shí)際輸出值是基本吻合的,誤差也很小,在允許范圍之內(nèi)。
圖4 N1與EGT仿真圖形對比Fig 4 N1and EGT simulation diagram contrast
在發(fā)動機(jī)傳感器模型訓(xùn)練好之后,就要對其實(shí)際的檢測效果進(jìn)行驗(yàn)證。因此,就需要實(shí)際的故障數(shù)據(jù)來檢測。但是,由于實(shí)際故障數(shù)據(jù)難以獲得,對于正常運(yùn)行的發(fā)動機(jī)傳感器數(shù)據(jù),須人為地添加故障數(shù)據(jù)來判別硬故障在線檢測軟件的運(yùn)行效果。圖5是對于輸入故障數(shù)據(jù)的模擬仿真結(jié)果。N1和EGT是發(fā)生故障的數(shù)據(jù)圖形,而N1CET和EGTCET則是網(wǎng)絡(luò)計算出的傳感器實(shí)際正常輸出設(shè)為數(shù)據(jù)圖形,ERROR則是兩者之間的誤差曲線。如圖可以看出:當(dāng)傳感器出現(xiàn)硬故障之后,實(shí)際值和網(wǎng)絡(luò)的計算值之間的誤差ERROR的偏差是十分明顯的,有的誤差甚至超過了實(shí)際值。因此,該軟件能夠準(zhǔn)確快速地檢測出硬故障。
圖5 N1與EGT故障仿真結(jié)果Fig 5 Fault simulation results of N1and EGT
航空發(fā)動機(jī)傳感器硬故障檢測軟件的發(fā)動機(jī)傳感器模型的建立比較準(zhǔn)確,誤差范圍很小,而且,傳感器故障檢測軟件對于傳感器硬故障的檢測也十分明顯。同時,使用C++語言編寫的軟件占用資源小,運(yùn)行速度比較快,能夠很好地滿足實(shí)時在線檢測的要求。但是,由于嵌入式系統(tǒng)資源有限,使得系統(tǒng)的實(shí)際處理能力存在著一定的缺陷和不足,仍然要進(jìn)一步的改進(jìn)。對于航空發(fā)動機(jī)傳感器的軟故障的檢測,使用BP神經(jīng)網(wǎng)絡(luò)檢測也是一項(xiàng)很行之有效的方法,但由于軟故障變化范圍的緩慢,使得目前很難完成軟故障在線檢測。因此,使用神經(jīng)網(wǎng)絡(luò)對于軟故障實(shí)現(xiàn)在線的檢測仍然需要進(jìn)一步的研究。
[1] 曹 曦.基于神經(jīng)網(wǎng)絡(luò)的傳感器故障診斷仿真與實(shí)驗(yàn)研究[D].上海:上海交通大學(xué),2001.
[2] 蔡開龍,孫云帆,姚武文.航空發(fā)動機(jī)故障診斷與自適應(yīng)重構(gòu)控制[J].電光與控制,2009,16(6):58 -61.
[3] 劉 華,唐永哲,郝 濤.飛控系統(tǒng)傳感器故障診斷研究[J].計算機(jī)仿真,2010,27(2):30 -33.
[4] 徐秀玲,郭迎清,王鏞根,等.某型渦輪風(fēng)扇發(fā)動機(jī)控制系統(tǒng)傳感器故障診斷研究[J].航空動力學(xué)報,2004,19(1):65 -68.
[5] 張婭玲,陳偉民,章 鵬,等.傳感器故障診斷技術(shù)概述[J].傳感器與微系統(tǒng),2009,28(1):4 -6.
[6] 孫曉倩,艾延廷,張 振.航空發(fā)動機(jī)傳感器故障診斷方法研究[J].沈陽航空工業(yè)學(xué)院學(xué)報,2010,27(2):15 -19.