• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    ARM平臺下高精度柴油機故障診斷系統(tǒng)設(shè)計*

    2017-04-26 01:12:50吳濱屠思遠(yuǎn)孫晨驁顧曉峰
    汽車技術(shù) 2017年4期
    關(guān)鍵詞:精確度蜂群故障診斷

    吳濱 屠思遠(yuǎn) 孫晨驁 顧曉峰

    (江南大學(xué) 物聯(lián)網(wǎng)技術(shù)應(yīng)用教育部工程研究中心,無錫 214122)

    ARM平臺下高精度柴油機故障診斷系統(tǒng)設(shè)計*

    吳濱 屠思遠(yuǎn) 孫晨驁 顧曉峰

    (江南大學(xué) 物聯(lián)網(wǎng)技術(shù)應(yīng)用教育部工程研究中心,無錫 214122)

    針對傳統(tǒng)方法難以精確診斷柴油機的故障問題,基于嵌入式ARM平臺設(shè)計了一個高精度的柴油機故障診斷系統(tǒng)。提出一種改進(jìn)的人工蜂群算法并以此優(yōu)化BP神經(jīng)網(wǎng)絡(luò)算法訓(xùn)練故障樣本,得到一組精確度較高的故障模型參數(shù)。在ARM平臺上以該模型參數(shù)進(jìn)行運算診斷獲得故障類型。結(jié)果表明,改進(jìn)的人工蜂群算法克服了基本人工蜂群算法易陷入局部最優(yōu)的缺點,提高了故障診斷結(jié)果的精確度。

    1 前言

    隨著汽車技術(shù)的不斷發(fā)展,傳統(tǒng)的柴油機故障診斷方法如故障樹診斷法精度較低,瞬間轉(zhuǎn)速波動診斷法成本太高,已不能滿足現(xiàn)代汽車技術(shù)的要求,因此基于專家系統(tǒng)、神經(jīng)網(wǎng)絡(luò)、模糊理論等算法的現(xiàn)代診斷技術(shù)應(yīng)運而生[1~3]。專家系統(tǒng)需要存儲空間來存放知識庫,而且其推理過程效率較低;模糊理論的模糊規(guī)則直接影響診斷的準(zhǔn)確度,而模糊規(guī)則的設(shè)定需要較強的經(jīng)驗;神經(jīng)網(wǎng)絡(luò)具有自學(xué)習(xí)、并行分布計算、結(jié)構(gòu)簡單和易于實現(xiàn)的優(yōu)點,且可用網(wǎng)絡(luò)節(jié)點的連接模擬神經(jīng)元結(jié)構(gòu)實現(xiàn)非線性映射功能,明顯優(yōu)于其它方法[3]。但是,神經(jīng)網(wǎng)絡(luò)具有容易陷入局部最優(yōu)的缺點,導(dǎo)致診斷精度較低。因此,本文嘗試采用改進(jìn)的人工蜂群(Artificial Bee Colony,ABC)算法對神經(jīng)網(wǎng)絡(luò)算法進(jìn)行優(yōu)化,并以此在Advanced RISC Machines(ARM)平臺上實現(xiàn)一個高精度的柴油機故障診斷系統(tǒng)。

    2 算法原理

    2.1 Back Propagation(BP)神經(jīng)網(wǎng)絡(luò)

    BP神經(jīng)網(wǎng)絡(luò)是一種多層前饋神經(jīng)網(wǎng)絡(luò),主要特點為信號向前傳遞,誤差反向傳播。在信號向前傳遞過程中,輸入信號從輸入層經(jīng)隱含層處理后到達(dá)輸出層,每一層由若干節(jié)點組成。如果輸出層得不到期望輸出,則進(jìn)行誤差反向傳播,并根據(jù)當(dāng)前誤差調(diào)整權(quán)值和閾值,使BP神經(jīng)網(wǎng)絡(luò)的輸出不斷逼近期望輸出[4],其結(jié)構(gòu)如圖1所示。

    圖1 BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)示意

    圖1中X1,X2,…,Xn是BP神經(jīng)網(wǎng)絡(luò)的輸入值,Y1,Y2,…,Ym是BP神經(jīng)網(wǎng)絡(luò)的輸出值,wij和wjk是BP神經(jīng)網(wǎng)絡(luò)的權(quán)值。隱含層第j個節(jié)點的輸出值為Hj,輸出層第k個節(jié)點的輸出值為Ok[5]:

    式中,f為隱含層激勵函數(shù);aj為隱含層當(dāng)前節(jié)點的閾值;l為隱含層節(jié)點數(shù);bk為輸出層當(dāng)前節(jié)點的閾值。

    根據(jù)網(wǎng)絡(luò)輸出O和期望輸出Y計算誤差e:

    根據(jù)誤差e更新后的BP神經(jīng)網(wǎng)絡(luò)[6]權(quán)值為wije和wjke,閾值為aje和bke:

    式中,η為學(xué)習(xí)速率。

    系統(tǒng)診斷結(jié)果的精度取決于故障模型的精度,而故障模型由神經(jīng)網(wǎng)絡(luò)的權(quán)值和閾值決定。BP神經(jīng)網(wǎng)絡(luò)的訓(xùn)練結(jié)果無法滿足系統(tǒng)精度要求,所以采用優(yōu)化算法優(yōu)化權(quán)值和閾值來提高精度。

    2.2ABC算法

    ABC算法是一種模擬蜂群采蜜行為的仿生智能算法[7],具有較強的全局搜索能力,在眾多領(lǐng)域都得到了應(yīng)用[8~10]。人工蜂群由雇傭蜂、跟隨蜂和偵查蜂3組蜜蜂組成。首先,初始化過程隨機產(chǎn)生一組解,雇傭蜂進(jìn)行全局搜索,更新解的信息并反饋給跟隨蜂;然后,跟隨蜂選擇其中一個蜜源并在其周圍進(jìn)行局部搜索,如果在設(shè)定的搜索次數(shù)limit內(nèi)未搜索到更優(yōu)解,則放棄該解,同時雇傭蜂變?yōu)閭刹榉洌㈦S機產(chǎn)生一個新的解[11]。隨機產(chǎn)生解的過程為:

    式中,xi表示第i個解;M和N為搜索空間的上、下限。雇傭蜂和跟隨蜂的搜索過程為:

    式中,vi為新的解;φ為[-1,1]間的隨機數(shù),決定xi的生成范圍。

    跟隨蜂選擇部分優(yōu)質(zhì)解的過程依賴于一個相關(guān)于解的概率值,計算過程為:

    式中,fiti為xi對應(yīng)的適應(yīng)度;SN為初始化解的個數(shù)。

    2.3 改進(jìn)ABC算法

    通過對基本ABC算法的研究發(fā)現(xiàn),蜂群按照式(9)進(jìn)行的搜索過程完全是隨機選取的,降低了算法的搜索效率和精度。因此,考慮引入混沌變量和趨藥性思想,使蜂群能向更優(yōu)解方向搜索。

    單個細(xì)菌的趨藥性操作分為選擇移動方向和確定移動距離[12],因此可將基本ABC算法中的式(9)分解為以下兩步:

    式(11)和式(12)分別代表翻轉(zhuǎn)和前進(jìn),Li表示翻轉(zhuǎn)過程的移動步長。通過式(11)確定蜂群的搜索方向后,按照式(12)不斷前進(jìn),直至搜索不到更優(yōu)的解。

    在此過程中,式(11)的翻轉(zhuǎn)也是隨機的,所以引入混沌變量,利用混沌變量的遍歷性使其更快地翻轉(zhuǎn)到優(yōu)質(zhì)解方向[13],其表達(dá)式為:

    2.4 故障診斷算法完整流程

    采用改進(jìn)的ABC優(yōu)化神經(jīng)網(wǎng)絡(luò)算法的具體步驟如下:

    a.設(shè)定最大迭代次數(shù)itmax,趨化行為中步長Ns,判斷雇傭蜂是否陷入停滯的參數(shù)limit,設(shè)置混沌序列長度K,解的維數(shù)D,解的數(shù)量SN及穩(wěn)定收斂精度為1.0×10-13。

    b.生成Logistic混沌變量序列,根據(jù)式(8)隨機產(chǎn)生SN個可行解。

    c.根據(jù)神經(jīng)網(wǎng)絡(luò)計算每個解的適應(yīng)度(對應(yīng)故障診斷精確度)。

    d.對每個雇傭蜂根據(jù)式(13)進(jìn)行翻轉(zhuǎn)操作,根據(jù)式(12)進(jìn)行前進(jìn)操作,然后計算并比較適應(yīng)度,如果得到改善則繼續(xù)進(jìn)行前進(jìn)操作,直至適應(yīng)度不再改善或達(dá)到最大前進(jìn)步數(shù)Ns。

    e.對每個跟隨蜂根據(jù)式(10)計算概率,選擇優(yōu)質(zhì)解,然后執(zhí)行與步驟c中與雇傭蜂相同的操作,并記錄未更新次數(shù)。

    f.檢查步驟d中未更新次數(shù)是否達(dá)到設(shè)定值limit,若達(dá)到,則根據(jù)式(8)產(chǎn)生一個新的解替代原來的解;若沒有達(dá)到,則繼續(xù)進(jìn)行迭代運算。記錄并更新最優(yōu)解。

    g.檢查該次迭代是否達(dá)到設(shè)定的穩(wěn)定收斂精度,若達(dá)到,則結(jié)束迭代循環(huán);否則繼續(xù)迭代。

    h.檢查迭代次數(shù)是否達(dá)到最大迭代次數(shù)itmax,若達(dá)到,則輸出最優(yōu)解并將最優(yōu)權(quán)值和閾值寫入ARM代碼;否則返回步驟c。

    3 系統(tǒng)實現(xiàn)與驗證

    以尾氣數(shù)據(jù)診斷柴油發(fā)動機失火故障為例,在ARM平臺上實現(xiàn)診斷系統(tǒng)。尾氣中HC、CO2、O2和CO的濃度在幾種常見的失火故障情況下變化明顯,因此以該4種氣體的相對含量作為診斷系統(tǒng)的輸入,具體診斷規(guī)則和歸一化處理后的故障樣本[14]分別列于表1和表2,其中H和L分別代表高和低;CO含量高于2%為H,低于1%為L;CO2含量高于16%為H,低于13%為L;HC含量高于150×10-6為H,低于100×10-6為L;O2含量高于2%為H,低于1%為L。

    表1 不同尾氣含量與6種柴油機故障之間的關(guān)系

    3.1 訓(xùn)練故障模型

    本系統(tǒng)需要先在Matlab中根據(jù)故障樣本,以改進(jìn)的ABC優(yōu)化BP神經(jīng)網(wǎng)絡(luò)算法訓(xùn)練故障模型。具體參數(shù)設(shè)定為:itmax=100,Ns=3,limit=10,D=inN×hidN+hidN+ hidN×outN+outN,SN=D+20,K=SN+20,其中inN、hidN、outN分別表示BP神經(jīng)網(wǎng)絡(luò)輸入層、隱含層、輸出層的節(jié)點數(shù),此處設(shè)為inN=4、hidN=9、outN=6。

    根據(jù)算法隨機選取表2中18組數(shù)據(jù)作為訓(xùn)練樣本,另外12組作為測試數(shù)據(jù)尋找最優(yōu)的故障模型,并進(jìn)行30次獨立試驗,取其迭代過程中模型精確度(解的適應(yīng)度)的平均值得到進(jìn)化曲線,如圖2所示。以BP神經(jīng)網(wǎng)絡(luò)和基本ABC優(yōu)化BP神經(jīng)網(wǎng)絡(luò)算法訓(xùn)練故障模型,得到的進(jìn)化曲線如圖3和圖4所示。

    圖2 基于改進(jìn)ABC-BP算法的精確度進(jìn)化曲線

    圖3 基于BP神經(jīng)網(wǎng)絡(luò)算法的精確度進(jìn)化曲線

    可以看出,迭代次數(shù)對計算進(jìn)行會產(chǎn)生影響,如果迭代次數(shù)較少,數(shù)據(jù)尚未收斂,數(shù)據(jù)根據(jù)此時的模型計算,則錯誤可能性較大;但是基于性能考慮,訓(xùn)練過程在PC端實現(xiàn),可以輸出訓(xùn)練曲線圖,只有當(dāng)曲線收斂于某一個穩(wěn)定值時才認(rèn)為模型是穩(wěn)定可靠的。由于樣本過少,BP神經(jīng)網(wǎng)絡(luò)算法的收斂精度低,導(dǎo)致最終診斷結(jié)果的精確度不理想。

    圖4 基于基本ABC-BP算法的精確度進(jìn)化曲線

    基本ABC-BP算法明顯提高了收斂精度,但由于ABC算法已陷入局部最優(yōu),診斷結(jié)果的精確度仍不夠理想。相比優(yōu)化前文獻(xiàn)[14]中的算法測試故障診斷為91.67%的精度,文中提出的改進(jìn)ABC優(yōu)化BP神經(jīng)網(wǎng)絡(luò)算法得到的精確度最高可達(dá)95%;此外,由于訓(xùn)練過程為PC端實現(xiàn),嵌入式中只是通過多線程對一組數(shù)據(jù)根據(jù)特征值進(jìn)行匹配,對計算效率基本沒有影響。因此,最終將改進(jìn)ABC-BP算法優(yōu)化后的參數(shù)定義為常數(shù)組寫入Flash。

    3.2 系統(tǒng)實現(xiàn)

    故障診斷系統(tǒng)基于SMARTARM2400工控開發(fā)板,在LPC2478微處理器上移植UC/OS-II V2.52版本操作系統(tǒng),通過CAN總線采集汽車行駛狀態(tài)參數(shù)進(jìn)行故障診斷,并將診斷結(jié)果與實時數(shù)據(jù)通過通用分組無線業(yè)務(wù)(General Packet Radio Service,GPRS)發(fā)送到上位機,實現(xiàn)實時監(jiān)測與故障診斷。系統(tǒng)框架結(jié)構(gòu)如圖5所示。

    圖5 診斷系統(tǒng)框架結(jié)構(gòu)示意

    UC/OS操作系統(tǒng)對任務(wù)的調(diào)度按照任務(wù)優(yōu)先級的高低進(jìn)行[15],將系統(tǒng)所有任務(wù)按其優(yōu)先級從高到低排列依次為:采樣任務(wù)(Task0)、數(shù)據(jù)預(yù)處理任務(wù)(Task1)、故障診斷任務(wù)(Task2)、數(shù)據(jù)發(fā)送任務(wù)(Task3)。Task0負(fù)責(zé)從CAN總線實時采集傳感器數(shù)據(jù);Task1負(fù)責(zé)數(shù)據(jù)濾波和歸一化處理;Task2為將預(yù)處理后的數(shù)據(jù)經(jīng)過以最優(yōu)閾值和權(quán)值為模型的BP神經(jīng)網(wǎng)絡(luò)計算而得到故障編號的過程;Task3負(fù)責(zé)將最后的診斷結(jié)果和濾波后的數(shù)據(jù)發(fā)送到上位機。系統(tǒng)軟件流程如圖6所示。

    圖6 系統(tǒng)軟件流程

    3.3 系統(tǒng)驗證

    通過CANScope總線分析儀模擬發(fā)送油壓低(故障編號3)情況下的故障報文,如圖7所示。其中,CO、CO2、HC和O2對應(yīng)的幀ID分別為000、001、002和003,有效數(shù)據(jù)位都為Byte0、Byte1。CO、CO2、O2的百分比含量和HC的含量計算公式為:

    式中,factor=10 000/65 535。

    圖7 故障報文結(jié)果

    經(jīng)過系統(tǒng)診斷之后,通過GPRS模塊把診斷結(jié)果及采集的傳感器數(shù)據(jù)發(fā)送到上位機,收到的結(jié)果如表3所列??芍?,該結(jié)果與CANScope發(fā)送的數(shù)據(jù)相符。

    表3 上位機收到的診斷結(jié)果

    依次發(fā)送12個故障報文,發(fā)現(xiàn)系統(tǒng)能正確診斷出11個故障,正確率達(dá)到92%。進(jìn)行Matlab仿真時隨機選取了18組樣本,根據(jù)選取樣本的不同,正確診斷的故障數(shù)目在11個與12個之間變動。最后,由30次試驗得到的診斷結(jié)果精確度的平均值達(dá)到95%,與Matlab仿真結(jié)果一致。結(jié)果表明,在ARM平臺上實現(xiàn)的故障診斷系統(tǒng)由于采用了改進(jìn)ABC優(yōu)化BP神經(jīng)網(wǎng)絡(luò)算法得到的故障模型具有較高的診斷精確度。

    4 結(jié)束語

    基于ARM平臺實現(xiàn)了一種高精度的柴油發(fā)動機故障診斷系統(tǒng)。通過引入混沌變量和趨藥性改進(jìn)了ABC算法,以改進(jìn)的ABC優(yōu)化BP神經(jīng)網(wǎng)絡(luò)算法得到了精確度較高的故障模型參數(shù)。在SMARTARM2400工控開發(fā)板上驗證了系統(tǒng)的可行性,測試結(jié)果與仿真結(jié)果相符,表明系統(tǒng)故障診斷結(jié)果的精確度得到了提高。

    1 馬善偉,樂偉正,呂健,等.柴油機故障診斷技術(shù)綜述.上海第二工業(yè)大學(xué)學(xué)報,2008,25(2):122~128.

    2 李建偉,汪成亮,周亞鑫.專家系統(tǒng)在飛機故障診斷與維護(hù)指導(dǎo)系統(tǒng)中的實際應(yīng)用.計算機應(yīng)用與軟件,2009,26(5):166~168.

    3 楊慧,鄧征.基于自適應(yīng)神經(jīng)網(wǎng)絡(luò)的飛機突發(fā)故障診斷研究.計算機工程與設(shè)計,2014,5(3):1010~1015.

    4 秦興生,胡覺亮,工佐華.基于神經(jīng)網(wǎng)絡(luò)集成的軟件故障預(yù)測及試驗分析.計算機工程與應(yīng)用,2014,50(10):44~47,56.

    5 史峰,王小川,郁磊,等.Matlab神經(jīng)網(wǎng)絡(luò)30個案例分析.北京:北京航空航天大學(xué)出版社,2010.

    6 Pi Erxu,Mantri Nitin,Ngai Sai Ming.BP-ANN for fitting the temperature-germination model and its application in predicting sowing time and region for bermudagrass.PLoS ONE,2013,8(12):1~11.

    7 Karaboga D.An artificial bee colony(ABC)algorithm for nu?meric function optimization.Indiana:Proceedings of IEEE Searm Intelligence Symposium Indianapolis,2006:651~656.

    8 Pawar P,Rao R,Davim J.Optimization of process parameters of milling process using particle swarm optimization and ar?tificial bee colony algorithm.Proceedings of the Internation?al Conference on Advances in Mechanical Engineering, 2008.

    9 Ponton J W,Klemes J.Alternatives to neural networks for in?ferential measurement.Computers and Chemical Engineer?ing,1993,17:42~47.

    10 Singh A.An artificial bee colony algorithm for the leaf-con?strained minimum spanning tree problem.Applied Soft Computing,2009,9:625~631.

    11 王慧穎,劉建軍,王全洲.改進(jìn)的人工蜂群算法在函數(shù)優(yōu)化問題中的應(yīng)用.計算機工程與應(yīng)用,2012,48(19):36~39.

    12 孟偉東,楊凡,黃永春.基于均勻設(shè)計的改進(jìn)細(xì)菌群體趨藥性算法.計算機工程與應(yīng)用,2011,47(14):59~61.

    13 馮斌,王璋,孫俊.基于混沌變異算子的小生境量子粒子群算法.計算機應(yīng)用與軟件,2009,26(1):50~52.

    14 付金.基于GA優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的汽車發(fā)動機失火故障診斷研究:[學(xué)位論文].沈陽:東北大學(xué),2009.

    15 唐富華,唐景利,郭銀景.基于嵌入式技術(shù)的移動醫(yī)療監(jiān)護(hù)系統(tǒng)的研制.計算機工程與應(yīng)用,2005,41(13):201~203.

    (責(zé)任編輯 晨 曦)

    修改稿收到日期為2016年10月1日。

    Design of High Precision Fault Diagnosis System for Diesel Engine Based on ARM Platform

    Wu Bin,Tu Siyuan,Sun Chenao,Gu Xiaofeng
    (Engineering Research Center of IOT Technology Applications(Ministry of Education),Jiangnan University, Wuxi 214122)

    It is difficult to diagnose the faults of diesel engines with traditional method,to address this issue,a high precision diesel engine fault diagnosis system based on the embedded ARM platform was designed.An improved artificial bee colony algorithm(ABC)was proposed,which was used to optimize the training fault samples with back propagation(BP) artificial neural networks algorithm for obtaining a set of fault model parameters with high diagnosis precision.The fault type was obtained by making calculations with these parameters on the ARM platform.Experiment results show that the improved ABC algorithm can overcome the shortcoming of easily falling into local optimum of the basic ABC algorithm, helping to increase the accuracy of fault diagnosis results.

    Diesel engine,Fault diagnosis,ARM platform,Artificial bee colony algorithm

    柴油機 故障診斷 ARM平臺 人工蜂群算法

    U461

    A

    1000-3703(2016)04-0058-05

    江蘇省交通科學(xué)研究計劃項目(2012X08-2);中央高?;究蒲袠I(yè)務(wù)費專項資金(JUSRP51510);

    江蘇省普通高校研究生實踐創(chuàng)新計劃項目(SJZZ_0148)。

    猜你喜歡
    精確度蜂群故障診斷
    研究核心素養(yǎng)呈現(xiàn)特征提高復(fù)習(xí)教學(xué)精確度
    “蜂群”席卷天下
    “硬核”定位系統(tǒng)入駐兗礦集團(tuán),精確度以厘米計算
    改進(jìn)gbest引導(dǎo)的人工蜂群算法
    因果圖定性分析法及其在故障診斷中的應(yīng)用
    蜂群夏季高產(chǎn)管理
    基于LCD和排列熵的滾動軸承故障診斷
    基于WPD-HHT的滾動軸承故障診斷
    機械與電子(2014年1期)2014-02-28 02:07:31
    高速泵的故障診斷
    河南科技(2014年3期)2014-02-27 14:05:48
    我有我味道
    兴宁市| 星子县| 临湘市| 鄂托克旗| 朔州市| 石嘴山市| 新密市| 贵阳市| 临江市| 镇坪县| 无棣县| 玉林市| 那曲县| 富锦市| 曲靖市| 宣化县| 嘉祥县| 湖口县| 夹江县| 喀喇| 榆树市| 泰安市| 常宁市| 周口市| 南陵县| 开封市| 青海省| 天长市| 黎川县| 洞口县| 临夏县| 台南市| 稷山县| 阜平县| 榆社县| 墨玉县| 正安县| 巴马| 龙州县| 上犹县| 宁陵县|