周萌
摘要:隨著汽車智能化的發(fā)展,發(fā)動機的結(jié)構(gòu)越來越復雜。如何快速準確地實現(xiàn)發(fā)動機故障的診斷維修,提高汽車的行駛穩(wěn)定性和安全性,成為汽車維修人員面臨的一大難題。針對這一問題,本文提出了基于神經(jīng)網(wǎng)絡的故障診斷專家系統(tǒng),以發(fā)動機動力不足為例,對該算法進行了闡述和驗證。
關(guān)鍵詞:神經(jīng)網(wǎng)絡;故障診斷;專家系統(tǒng)
一、緒論
作為汽車的動力源,發(fā)動機在汽車的運行過程中起著十分重要的作用。發(fā)動機性能的好壞會直接體現(xiàn)在汽車的行駛狀態(tài)上。一個存在質(zhì)量問題的發(fā)動機能夠影響到整輛汽車正常運行,更會為汽車的燃油經(jīng)濟性、平順性、動力性、舒適性等方面產(chǎn)生巨大影響。根據(jù)調(diào)查研究,發(fā)動機相關(guān)零部件故障占汽車整體故障的50%以上,不同生產(chǎn)廠家、不同型號、不同配置的車輛發(fā)動機類型結(jié)構(gòu)存在著很大區(qū)別。目前,為了提高汽車的燃油經(jīng)濟性、環(huán)保及排放標準,有越來越多的新技術(shù)和新設(shè)備被用在發(fā)動機上。如何快速準確地判斷發(fā)動機的故障、對發(fā)動機相關(guān)知識的及時更新和學習,成為了汽車維修人員面臨的全新挑戰(zhàn)。
發(fā)動機故障是非線性的,無法構(gòu)建簡單的數(shù)學模型通過數(shù)值計算而得到結(jié)論,需要在人腦對故障現(xiàn)象進行分析后通過維修經(jīng)驗識別故障原因。由此可見,維修人員所積累的維修經(jīng)驗和推理能力對故障點確定的準確率有非常大的影響。由于汽車維修行業(yè)從業(yè)人員的流動性大且專業(yè)性強,在領(lǐng)域中有經(jīng)驗的專家成為汽車維修的緊缺人才。在發(fā)動機故障診斷中使用神經(jīng)網(wǎng)絡,可以解決這一難題,神經(jīng)網(wǎng)絡診斷法已經(jīng)成為發(fā)動機故障診斷的新趨勢。
二、神經(jīng)網(wǎng)絡簡介
神經(jīng)網(wǎng)絡也叫人工神經(jīng)網(wǎng)絡(Artificial Neural Networks),它能夠模擬人腦對輸入條件進行自主學習,并可以根據(jù)輸入?yún)?shù)變化而改變網(wǎng)絡進行系統(tǒng)自適應。輸出結(jié)果具有逼近任意復雜的非線性函數(shù)的能力。人工神經(jīng)網(wǎng)絡的構(gòu)建需要對數(shù)據(jù)樣本進行學習,既對搭建的神經(jīng)網(wǎng)絡進行訓練。訓練的過程就是一個神經(jīng)網(wǎng)絡通過計算而使輸出結(jié)果趨近于理想狀態(tài)的過程。經(jīng)過訓練后的神經(jīng)網(wǎng)絡可以通過輸入數(shù)據(jù)得到輸出數(shù)據(jù)。當人工神經(jīng)網(wǎng)絡用于故障診斷時,可改善常規(guī)故障診斷方法,適合于對多故障、多征兆復雜對象的故障診斷[1]。
(一)神經(jīng)網(wǎng)絡特點
BP(Back Propagation)神經(jīng)網(wǎng)絡,也叫作誤差反向傳播神經(jīng)網(wǎng)絡。它是一種單向傳播的多層前向網(wǎng)絡。主要用于對象逼近,即它能逼近任意的非線性函數(shù),可實現(xiàn)多輸入和多輸出,而且有自主學習的能力,有較強的泛化能力。神經(jīng)網(wǎng)絡是一個由神經(jīng)元構(gòu)成的模擬人腦的模型?;窘M成單元為神經(jīng)元。神經(jīng)元的數(shù)學模型為:
其中y表示神經(jīng)元的輸出值,θ表示神經(jīng)元的閾值。x表示接收信號,w表示連接權(quán)值。
一個完整的神經(jīng)網(wǎng)絡由輸入層,隱含層和輸出層組成。層與層之間采用全互連方式。但同一層的神經(jīng)元之間不進行連接。系統(tǒng)數(shù)據(jù)或故障狀態(tài)由輸入層進行輸入。在隱含層進行計算,即通過sigmoid函數(shù)(簡稱S函數(shù))進行神經(jīng)元的激發(fā)。
表示隱含層函數(shù)的輸出。
通過大量輸入樣本的訓練,使神經(jīng)網(wǎng)絡的權(quán)值不斷進行調(diào)節(jié),以達到輸入層的輸出值與理想值的誤差最小的狀態(tài)。神經(jīng)網(wǎng)絡的結(jié)構(gòu)如圖1所示。
(二)神經(jīng)網(wǎng)絡專家?guī)?/p>
神經(jīng)網(wǎng)絡能夠?qū)崿F(xiàn)故障診斷的前提是需要有大量的樣本進行訓練。一般情況下,樣本數(shù)量要不少于網(wǎng)絡參數(shù)的10倍。有經(jīng)驗的汽車維修專家能夠準確迅速地查找出發(fā)動機故障并排除。將專家經(jīng)驗轉(zhuǎn)化為訓練樣本對神經(jīng)網(wǎng)絡進行訓練,不但可以為神經(jīng)網(wǎng)絡提供大量的優(yōu)質(zhì)樣本,而且學習后的神經(jīng)網(wǎng)絡對于發(fā)動機的故障可以模擬專家思維進行分析,實現(xiàn)故障高效診斷。并且神經(jīng)網(wǎng)絡可以根據(jù)訓練的專家診斷樣本的變化而調(diào)整網(wǎng)絡,使故障診斷系統(tǒng)能自我升級,以適應發(fā)動機故障的變化。
內(nèi)部含有大量領(lǐng)域?qū)<宜降闹R和經(jīng)驗,能夠模擬人類專家思維過程,求解領(lǐng)域內(nèi)需要專家才能解決的困難問題的計算機程序叫做專家系統(tǒng)。專家系統(tǒng)由推理機、知識庫、數(shù)據(jù)庫和人機接口等部分組成[2]。推理機是專家分析故障的方法;知識庫和數(shù)據(jù)庫是專家的知識和故障診斷的相關(guān)數(shù)據(jù)在神經(jīng)網(wǎng)絡中訓練后的得到的權(quán)值和閾值所組成的;人機接口為專家與專家之間和專家與用戶之間的連接顯示窗口,相當于系統(tǒng)的界面。專家系統(tǒng)的計算機程序采用產(chǎn)生式規(guī)則,表達方法為—IF E THEN H WITH CF(E,H)。其中E為前提條件,H為結(jié)論。CF為強度。專家系統(tǒng)由編程軟件實現(xiàn),當應用于發(fā)動機故障診斷時,前提條件為故障現(xiàn)象,結(jié)論為診斷結(jié)果,強度則為故障產(chǎn)生的頻率、次數(shù)、偶發(fā)等條件。
將神經(jīng)網(wǎng)絡算法應用在專家系統(tǒng)的推理機制中,相當于神經(jīng)網(wǎng)絡擁有了一個有多名發(fā)動機維修專家所組成的計算機大腦,故障現(xiàn)象被輸入后,學習完成的神經(jīng)網(wǎng)絡可以得出與專家推理結(jié)果相近的輸出結(jié)果。實現(xiàn)了即使維修場景沒有真實存在的人類專家,也能模擬專家及時準確的完成對故障的分析判斷。
(三)神經(jīng)網(wǎng)絡算法
在已經(jīng)確定的神經(jīng)網(wǎng)絡結(jié)構(gòu)里,需要不斷的調(diào)整網(wǎng)絡權(quán)值,來完成設(shè)定次數(shù)的訓練。權(quán)值被賦予[0,1]區(qū)間內(nèi)的隨機數(shù)值。訓練后的網(wǎng)絡可以看成是一個函數(shù),函數(shù)為x到y(tǒng)的映射。既。相當于將原本不能用函數(shù)所表示的故障現(xiàn)象及故障診斷結(jié)果通過函數(shù)形式體現(xiàn)。BP神經(jīng)網(wǎng)絡采用誤差反向傳播,既從輸出層向輸出層傳播。
誤差性能指標函數(shù):
神經(jīng)網(wǎng)絡的訓練就是使系統(tǒng)在大量的樣本訓練后,輸出達到最接近于真實的結(jié)果的過程。
輸出層神經(jīng)元輸出:
式中j表示神經(jīng)元。
網(wǎng)絡輸出與理想輸出誤差為:
神經(jīng)網(wǎng)絡根據(jù)梯度下降算法求解輸出層和隱含層的連接權(quán)值,算法為:
其中η是學習率,取值為0到1之間。e(k)指第k次的輸出實際值與理想值得誤差,是一個具體數(shù)據(jù)。為求導結(jié)果,表示斜率。也是一個具體數(shù)據(jù)。所求得是一個增量的具體數(shù)值。
三、故障診斷系統(tǒng)設(shè)計
通過大量不同質(zhì)故障樣本訓練后的神經(jīng)網(wǎng)絡,有固定的權(quán)值和閾值,可以對發(fā)動機的故障進行診斷。在輸入層輸入故障現(xiàn)象,神經(jīng)網(wǎng)絡通過計算得到對應的故障原因。發(fā)動機故障的診斷需要根據(jù)專家的維修經(jīng)驗、維修理論和實驗數(shù)據(jù)構(gòu)建大量的故障樣本,以實現(xiàn)神經(jīng)網(wǎng)絡的訓練。當專家增加或是維修案例增加時,可以通過增加訓練樣本的數(shù)量來實現(xiàn)神經(jīng)網(wǎng)絡的學習。以發(fā)動機動力不足為例,進行神經(jīng)網(wǎng)絡的構(gòu)建及樣本的訓練。輸入及輸出所對應的故障現(xiàn)象及故障原因如表1所示。
需要將輸入和輸出轉(zhuǎn)化為[0,1]區(qū)間的矩陣形式進行表達。當xi=0時,代表故障現(xiàn)象沒有出現(xiàn),xi=1時,代表故障現(xiàn)象發(fā)生。當yi=0時,代表故障原因不存在,yi=1時,代表故障原因存在。由此構(gòu)建了一個五輸入,三輸出的樣本。如表2所示。
神經(jīng)網(wǎng)絡隱含層節(jié)點數(shù)計算根據(jù)公式:
式中i為輸入層神經(jīng)元數(shù),k為輸出層神經(jīng)元數(shù),a為[1,10]之間的常數(shù)[3]。選取隱含層神經(jīng)元數(shù)目為6。
設(shè)置神經(jīng)網(wǎng)絡學習率η=0.5,動量因子a=0.05,誤差E=10-20。采用matlab自帶函數(shù)feedforwardnet/cascadeforwardnet建立網(wǎng)絡結(jié)構(gòu)。訓練好的神經(jīng)網(wǎng)絡,將權(quán)值和閾值進行保存,形成故障診斷的知識庫。
輸入測試樣本對網(wǎng)絡訓練情況進行測試。選取一組故障現(xiàn)象輸入X=[0 1 0 0 0 0],得到輸出結(jié)果為Y=[0.0254 0.0693 0.8451],由此判定故障原因為噴油線路故障。
四、結(jié)語
通過仿真實驗,由人工神經(jīng)網(wǎng)絡構(gòu)建的故障診斷專家系統(tǒng)能夠?qū)崿F(xiàn)故障現(xiàn)象與故障原因之間的聯(lián)系,可以實現(xiàn)故障診斷的高效準確判斷,這也是發(fā)動機故障診斷的發(fā)展趨勢。
參考文獻:
[1]趙暉,徐浩然,梅志剛,等.基于人工神經(jīng)網(wǎng)絡的逆變器開路故障診斷[J].電力電子技術(shù),2021,55(02):45-49.
[2]王朝周.汽車發(fā)動機的故障診斷[J].內(nèi)燃機與配件,2019,(15):172-173.
[3]羅德強,王漢軍,牛春輝.基于神經(jīng)網(wǎng)絡算法的某型裝備專家診斷系統(tǒng)的研究[J].艦船電子工程,2020(01):12.