一種電子設(shè)備故障庫(kù)的設(shè)計(jì)
3 推理機(jī)的實(shí)現(xiàn)
在測(cè)試設(shè)備故障診斷中最重要的是推理機(jī),對(duì)于確定性的知識(shí),采用專家系統(tǒng)中正向推理的方式進(jìn)行推理。對(duì)于具有不確定的、模糊的信息,利用模糊神經(jīng)網(wǎng)絡(luò)進(jìn)行推理。推理機(jī)通過建立類EsReason實(shí)現(xiàn),以下是在該類中定義的主要指針、數(shù)組、變量及函數(shù),此類結(jié)構(gòu)如下:
其中,* Major,* Siga1,* Conctution,* point以及* Rule定義指向主故障模式表、征兆表、結(jié)論表、測(cè)試點(diǎn)表及規(guī)則表的結(jié)構(gòu)指針,便于對(duì)數(shù)據(jù)庫(kù)中各表數(shù)據(jù)的記錄及訪問。通過建立BOOL型成員函數(shù)ConnectionDb和LoadTable來實(shí)現(xiàn)數(shù)據(jù)庫(kù)的連接及加載。在加載數(shù)據(jù)庫(kù)時(shí),通過設(shè)置SQL語言為打開各個(gè)數(shù)據(jù)表做準(zhǔn)備,然后調(diào)用記錄集指針的成員函數(shù)Open打開各個(gè)表中的各條記錄。通過記錄集指針的移動(dòng)記錄各個(gè)表中記錄集的數(shù)目,然后根據(jù)記錄集指針的移動(dòng)把各表中的記錄存到申請(qǐng)的動(dòng)態(tài)內(nèi)存中。
綜合數(shù)據(jù)庫(kù)通過數(shù)組Current Conditions[100]和Current Conclusions[100]實(shí)現(xiàn),綜合數(shù)據(jù)庫(kù)用來記錄推理過程中的初始條件、中間結(jié)果及最終結(jié)論的編碼,方便推理機(jī)通過綜合數(shù)據(jù)庫(kù)里的內(nèi)容進(jìn)行正向推理,通過CString類型的變量program記錄推理過程中用到的規(guī)則,以實(shí)現(xiàn)推理過程中的解釋功能。
在類EsReason中核心的函數(shù)是Reasoning和NEWff,Reasoning函數(shù)的工作過程為:把綜合數(shù)據(jù)庫(kù)中的事實(shí)作為初始條件,與規(guī)則庫(kù)中的規(guī)則前件進(jìn)行匹配;當(dāng)規(guī)則被激活,通過這些激活的規(guī)則,推理函數(shù)把結(jié)論放到綜合數(shù)據(jù)庫(kù)中繼續(xù)推理,直到再?zèng)]有其他規(guī)則的前件能與綜合數(shù)據(jù)庫(kù)內(nèi)的事實(shí)相匹配為止。在推理過程中用到一個(gè)很重要的BOOL型的成員變量Rule_Used記錄用過的規(guī)則,這樣可以避免在推理過程中出
現(xiàn)死循環(huán)。NEWff函數(shù)的工作過程可選取合適的推理決策邏輯進(jìn)行推理來實(shí)現(xiàn)故障的自動(dòng)化診斷。
4 結(jié)語
由于現(xiàn)代電子設(shè)備的自身特性和環(huán)境因素等復(fù)雜條件的限制,傳統(tǒng)的故障診斷方法難以滿足診斷要求?;诠收蠋?kù)的智能故障診斷方法依靠對(duì)設(shè)備原理的定性分析,充分利用現(xiàn)有的各種設(shè)計(jì)技術(shù)資料,無需為了量化處理的需要而將實(shí)際問題過分簡(jiǎn)化,比依賴于基礎(chǔ)數(shù)據(jù)的定量分析方法更接近于工程實(shí)際情況。針對(duì)電子設(shè)備提出了一種電子設(shè)備故障庫(kù)的故障實(shí)現(xiàn)方案,可以有效地進(jìn)行故障定位并提出維修指導(dǎo)意見,有效地提高了普通維修人員的故障診斷能力和維修效率。
評(píng)論