摘 要: 以飛機(jī)自動(dòng)飛行控制系統(tǒng)的控制邏輯轉(zhuǎn)換裝置為研究對(duì)象,采用專(zhuān)家系統(tǒng)與MapInfo相結(jié)合的方法完成故障診斷系統(tǒng)的設(shè)計(jì)。該系統(tǒng)根據(jù)報(bào)錯(cuò)的測(cè)試步驟,診斷出故障位置和原因,并在電子地圖定位顯示,以輔助技術(shù)人員手工排查故障。實(shí)踐表明,該故障診斷方法快速有效,提高了電路故障診斷的效率。
關(guān)鍵詞: 故障診斷系統(tǒng);專(zhuān)家系統(tǒng);電子地圖;MapInfo
控制邏輯轉(zhuǎn)換裝置是飛機(jī)飛行控制系統(tǒng)的重要組成部分,在該系統(tǒng)中起著控制樞紐的作用。現(xiàn)有的測(cè)試系統(tǒng)只能判斷控制邏輯轉(zhuǎn)換裝置是否有故障,如果測(cè)試報(bào)錯(cuò),則完全由人工依靠?jī)x器分析,有時(shí)由于測(cè)試人員經(jīng)驗(yàn)不足而導(dǎo)致誤判斷或誤處理,致使故障擴(kuò)大。
利用基于MapInfo和專(zhuān)家系統(tǒng)的電路故障診斷系統(tǒng),可以幫助測(cè)試技術(shù)人員及時(shí)、準(zhǔn)確地對(duì)各種異常狀態(tài)和故障做出診斷,并預(yù)防和消除故障。
1 故障診斷系統(tǒng)的總體設(shè)計(jì)
故障診斷技術(shù)發(fā)展至今,已提出了大量較成熟的方法。按照國(guó)際故障診斷權(quán)威FRANK P M教授的觀點(diǎn),所有的故障診斷方法可以分為3種:(1)基于解析模型的方法;(2)基于信號(hào)處理的方法;(3)基于知識(shí)的方法[1]。基于知識(shí)的診斷方法包括基于專(zhuān)家系統(tǒng)的方法、基于模糊的方法、基于神經(jīng)網(wǎng)路的方法和基于故障樹(shù)的方法[2]。
邏輯轉(zhuǎn)換裝置的測(cè)試系統(tǒng)設(shè)計(jì)如圖1所示。本文采用專(zhuān)家系統(tǒng)的方法設(shè)計(jì)故障診斷系統(tǒng),專(zhuān)家診斷的結(jié)果還將通過(guò)電子地圖的方式提供給測(cè)試人員。
2 故障診斷專(zhuān)家系統(tǒng)的設(shè)計(jì)
專(zhuān)家系統(tǒng)故障方法是計(jì)算機(jī)在采集被診斷對(duì)象的信息后,綜合運(yùn)用各種規(guī)則(專(zhuān)家經(jīng)驗(yàn)),進(jìn)行一系列的推理[3]。必要時(shí)還可以隨時(shí)調(diào)用各種應(yīng)用程序,運(yùn)行過(guò)程中向用戶(hù)索取必要的信息后,就可快速地找到最終故障或最有可能發(fā)生的故障,再由用戶(hù)來(lái)證實(shí)[4]。
本文設(shè)計(jì)的專(zhuān)家系統(tǒng)如圖2所示,由人機(jī)接口、數(shù)據(jù)庫(kù)、推理機(jī)、知識(shí)故障庫(kù)等組成。
人機(jī)接口:人與專(zhuān)家系統(tǒng)打交道的橋梁和窗口,也也是人機(jī)信息的交互界面。
數(shù)據(jù)庫(kù):采集大量信號(hào)和器件在測(cè)試中的正確狀態(tài)。如輸入輸出信號(hào)線(xiàn)、中間信號(hào)在測(cè)試過(guò)程每一步的正確值及開(kāi)關(guān)、燈、繼電器以及三極管在測(cè)試中的正確狀態(tài)。系統(tǒng)采用Access完成知識(shí)和數(shù)據(jù)的存儲(chǔ),信息以表的形式存儲(chǔ)。數(shù)據(jù)庫(kù)的結(jié)構(gòu)易于系統(tǒng)推理加工和處理,在管理軟件的控制下,數(shù)據(jù)庫(kù)接收和存儲(chǔ)有關(guān)故障類(lèi)型的信息和相對(duì)應(yīng)的信息。
推理機(jī):根據(jù)獲取的信息,綜合運(yùn)用各種規(guī)則進(jìn)行故障診斷、輸出診斷結(jié)果。本系統(tǒng)設(shè)計(jì)了兩種算法:(1)通過(guò)計(jì)算匹配度確定故障原因。根據(jù)已知的錯(cuò)誤信息檢索數(shù)據(jù)庫(kù),保存匹配度大于0的所有故障類(lèi)型,并按匹配度大小進(jìn)行排隊(duì),匹配度大的故障類(lèi)型是實(shí)際發(fā)生故障的可能性比較大,由此可以根據(jù)專(zhuān)家知識(shí)庫(kù)推理出可能出錯(cuò)的元器件。(2)根據(jù)測(cè)試中錯(cuò)誤信號(hào)的分布范圍確定故障位置。根據(jù)報(bào)錯(cuò)的所有測(cè)試步驟,查詢(xún)涉及到的輸入輸出信號(hào)、中間信號(hào)、交叉信號(hào),并通過(guò)比對(duì)輸出。技術(shù)人員在地圖上根據(jù)信號(hào)找到出錯(cuò)的元器件。
知識(shí)故障庫(kù):包括所有的故障類(lèi)型和故障類(lèi)型對(duì)應(yīng)的信息。故障類(lèi)型與其對(duì)應(yīng)信息可以在線(xiàn)檢測(cè)時(shí)添加,使得知識(shí)庫(kù)在使用中會(huì)不斷豐富壯大。
3 電路地圖的開(kāi)發(fā)制作
3.1 基于MapInfo制作電路地圖的步驟
MapInfo是常見(jiàn)的GIS(地理信息系統(tǒng))軟件之一,MapInfo地理信息系統(tǒng)平臺(tái)作為圖形、文字信息結(jié)合的軟件工具具有多個(gè)優(yōu)點(diǎn):強(qiáng)大的圖形表達(dá)及處理功能、實(shí)用的關(guān)系型數(shù)據(jù)庫(kù)功能、靈活的數(shù)據(jù)查詢(xún)分析功能、功能強(qiáng)大的系統(tǒng)開(kāi)發(fā)工具[5]。地圖的制作主要經(jīng)歷四個(gè)步驟:獲取柵格圖、配準(zhǔn)柵格圖、地圖圖層化、地圖編碼。
經(jīng)過(guò)獲取柵格圖、配準(zhǔn)柵格圖、地圖圖層化三個(gè)步驟后得到的部分電路地圖如圖3所示。
圖3是制作完成的控制邏輯轉(zhuǎn)換裝置PCB電路地圖的一部分。包括元件C19(電容)、C8(電容)、D1(CPLD)、以及元件管腳上的信號(hào)。圖層1是作為背景的柵格圖像層;圖層2是信號(hào)圖層,由星狀標(biāo)識(shí)構(gòu)成,每一個(gè)星狀標(biāo)識(shí)代表一個(gè)信號(hào);圖層3是信元器件圖層,由黃色多邊形構(gòu)成,每一個(gè)多邊形代表一個(gè)元器件。
地圖編碼首先將以上所得到的三個(gè)圖層制作成一個(gè)“.gst”文件,然后采集“.gst”文件中元器件和信號(hào)的名稱(chēng)、位置、放大倍數(shù)等信息,并將其保存到Access數(shù)據(jù)庫(kù),這樣就可以實(shí)現(xiàn)調(diào)用地圖進(jìn)行SQL查詢(xún),但由于尚無(wú)導(dǎo)航功能,因此必須以此為基礎(chǔ)進(jìn)行二次開(kāi)發(fā)。
3.2 基于VB.Net+MapX的導(dǎo)航電子地圖實(shí)現(xiàn)
MapX是MapInfo的ActiveX控件產(chǎn)品。它是一種基于Windows操作系統(tǒng)的標(biāo)準(zhǔn)控件,因而能支持絕大多數(shù)標(biāo)準(zhǔn)的可視化開(kāi)發(fā)環(huán)境,如Visual C++、Visual Basic、Delphi、PowerBuilder、Visual Studio.NET等。利用MapX能夠簡(jiǎn)單快速地在軟件中嵌入地圖化功能,增強(qiáng)軟件的空間分析能力。
在VB.Net環(huán)境下集成MapX開(kāi)發(fā)GIS,將MapX做為控件軟件添加到應(yīng)用程序中,然后通過(guò)設(shè)置屬性和調(diào)用該屬性方法來(lái)實(shí)現(xiàn)。
3.2.1 添加MapX控件
在VB.Net開(kāi)發(fā)環(huán)境界面中,在工具欄中點(diǎn)擊右鍵,選擇“Choose Items”項(xiàng)。在隨即彈出的對(duì)話(huà)框中,選擇“COM Components”選項(xiàng)卡,選中“MapInfo MapX V5”。即可完成添加。
3.2.2 利用MapX控件實(shí)現(xiàn)圖形的顯示、縮放、漫游、定位查詢(xún)
(1)圖形顯示
首先在工具欄中調(diào)用MapX控件,然后在顯示圖形窗體(frmView)上添加MapX圖,在初始化添加如下代碼。
Private Sub Form_Load()
Dim lyr As MapXLib.Layer
Map1.Layers.Add App.Path & “\map\totalmap.tab”
Map1.Zoom=180′設(shè)置圖形初始顯示比例
Map1.CenterX=-1.2′設(shè)置圖形初始顯示X軸中心
Map1.CenterY=1′設(shè)置圖形初始顯示Y軸中心
Set lyr=Map1.Layers(“totalmap”)
lyr.Editable=False′設(shè)置圖形不可編輯
lyr.Selectable
End Sub
(2)圖形縮放、漫游
先在顯示圖形窗體(frmView)上添加放大按鈕、縮小按鈕、漫游按鈕。
這3個(gè)功能的實(shí)現(xiàn)調(diào)用MapXLib中的函數(shù)miZoomInTool、miZoomOutTool和miPanTool來(lái)實(shí)現(xiàn)。
(3)圖形定位
定位功能有著重要的實(shí)用意義,技術(shù)人員將不必翻找大量資料,在定位元器件或信號(hào)的同時(shí),技術(shù)人員還可獲取該元器件或信號(hào)的信息(如名稱(chēng)、當(dāng)前的正確狀態(tài)),以便進(jìn)行下一步排故工作。
VB.Net定位功能實(shí)現(xiàn)的思路:在某一圖形窗體(frmView)上放2個(gè)MapX控件:Map1(主圖)、Map2(鷹眼圖,也稱(chēng)導(dǎo)航圖)。然后編寫(xiě)相應(yīng)代碼在鷹眼圖上創(chuàng)建一個(gè)圖層,在該圖層上添加一個(gè)矩形Feature,該矩形的大小隨著主圖邊界而變化。
完成以上工作后,電子地圖可以放大、縮小、移動(dòng),通過(guò)主副圖配合使用,技術(shù)人員能夠快速精確地找到故障位置,獲得相關(guān)信息。
4 系統(tǒng)用戶(hù)界面設(shè)計(jì)
測(cè)試系統(tǒng)中與故障診斷界面相關(guān)的有故障分析界面和地圖操作界面。
(1)故障分析界面主要實(shí)現(xiàn)4個(gè)功能:輸入錯(cuò)誤信息、選擇算法診斷、輸出診斷界面、向故障知識(shí)庫(kù)添加新知識(shí)。
(2)地圖操作界面進(jìn)一步輔助用戶(hù)分析。用戶(hù)輸入出錯(cuò)的測(cè)試步驟時(shí),地圖會(huì)自動(dòng)定位到相關(guān)的原理圖或PCB圖相關(guān)的元件上。通過(guò)查看電路圖,用戶(hù)就可以進(jìn)一步驗(yàn)證故障分析的結(jié)果。
此外,在地圖操作界面上,用戶(hù)可查出測(cè)試中每一步所有信號(hào)的正確狀態(tài)。因此用戶(hù)可判斷某一信號(hào)的狀態(tài)是否正確,方便手動(dòng)排除故障。地圖操作定位界面如圖4所示。
本系統(tǒng)采用人機(jī)對(duì)話(huà)界面風(fēng)格,系統(tǒng)功能按層次全部列于屏幕上,用戶(hù)可直接用鍵盤(pán)、鼠標(biāo)等各種設(shè)備選擇各項(xiàng)功能。在各子功能菜單上設(shè)計(jì)各種類(lèi)型的對(duì)話(huà)框及圖標(biāo),實(shí)現(xiàn)高度交互性,提高對(duì)無(wú)效信息的屏蔽,同時(shí)統(tǒng)一各菜單標(biāo)準(zhǔn),提供運(yùn)行指導(dǎo)和聯(lián)機(jī)幫助功能。
通過(guò)對(duì)故障診斷系統(tǒng)的現(xiàn)場(chǎng)調(diào)試實(shí)驗(yàn),對(duì)該方法進(jìn)行了大量有效驗(yàn)證,實(shí)踐證明該方法能夠較好地實(shí)現(xiàn)對(duì)該電路系統(tǒng)的故障診斷,并且與原測(cè)試系統(tǒng)相互配合,合為一體。與其他電子電路的故障診斷方法相比,采用專(zhuān)家系統(tǒng)和MapInfo方法設(shè)計(jì)的故障診斷系統(tǒng),不但能診斷出故障原因和故障位置,還可將電路圖做成電子地圖,直觀、形象地查看故障,便于用戶(hù)實(shí)施解決方案。
參考文獻(xiàn)
[1] 朱大奇,于盛林.基于知識(shí)的故障診斷方法綜述[J].安徽工業(yè)大學(xué)學(xué)報(bào),2002,19(7):197-204.
[2] MOURAD S,ZORIAN Y.電子系統(tǒng)測(cè)試原理[M].北京:機(jī)械工業(yè)出版社,2007.
[3] 翟麗芳.電子設(shè)備故障診斷專(zhuān)家系統(tǒng)的設(shè)計(jì)[J].計(jì)算機(jī)應(yīng)用,2001,27(4):244-246.
[4] TARIQ A, JOANNE B D. Diagnostic expert systems from dynamic fault trees. www.cnki.com, 2003.
[5] 杜巧玲.MapInfo 7中文版[M].北京:清華大學(xué)出版社,2006.