孟亭磊 安剛
摘?要:本文提出了一種基于關(guān)鍵字模糊檢索方法用以實(shí)現(xiàn)飛行故障的快速定位。首先對(duì)歷史飛行故障數(shù)據(jù)進(jìn)行數(shù)據(jù)清洗以建立標(biāo)準(zhǔn)化飛行故障庫(kù),其次編制關(guān)鍵字檢索規(guī)則實(shí)現(xiàn)對(duì)出現(xiàn)的故障現(xiàn)象遍歷故障庫(kù)進(jìn)行模糊搜索與匹配,最后通過(guò)編制檢索軟件對(duì)搜索到的結(jié)果進(jìn)行數(shù)據(jù)切片與可視化處理。結(jié)果表明,該故障快速檢索系統(tǒng)能夠輔助工作人員快速進(jìn)行故障定位,可平均縮短外場(chǎng)排故時(shí)間三十分鐘,提高了故障排除效率。
關(guān)鍵詞:故障庫(kù);模糊搜索;故障定位
FastFlight?Fault?Location?Method?Based?on?Retrieval?Technology
Meng?Tinglei?An?Gang
WuHu?Stateowned?Factory?of?Machining?AnhuiWuhu?241007
Abstract:A?keyword?based?fuzzy?search?method?is?proposed?to?realize?the?rapid?location?of?flight?faults.Firstly,the?historical?flight?fault?data?are?cleaned?to?establish?a?standardized?fault?database.Secondly,the?keyword?search?rules?are?compiled?to?realize?the?fuzzy?search?and?matching?of?fault?phenomena,F(xiàn)inally,the?retrieval?software?is?compiled?to?slice?and?visualize?the?search?results.The?results?show?that?the?fault?rapid?retrieval?system?can?assist?the?staff?to?locate?the?fault?quickly,shorten?the?field?troubleshooting?time?by?an?average?of?thirty?minutes,and?improve?the?troubleshooting?efficiency.
Keywords:Fault?Database;Fuzzy?Search;Fault?Location
外場(chǎng)飛機(jī)出現(xiàn)飛行故障時(shí),若不能快速有效地定位故障,則直接影響飛機(jī)狀態(tài)的良好率以及再次準(zhǔn)備與出動(dòng),因此,用最短的時(shí)間對(duì)故障進(jìn)行定位、排除至關(guān)重要?,F(xiàn)有方法是利用富有經(jīng)驗(yàn)的人員根據(jù)故障現(xiàn)象進(jìn)行定位,進(jìn)而排除故障,此種方法缺點(diǎn)是培養(yǎng)人員周期長(zhǎng),人員流動(dòng)不可控而導(dǎo)致經(jīng)驗(yàn)傳承效率低。本方法規(guī)范飛機(jī)故障分析形式,將良好的排故經(jīng)驗(yàn)進(jìn)行固化,在遇到同類飛行故障時(shí)可以明確排故思路,縮短排故時(shí)間,提高排故效率,為更好地保障裝備質(zhì)量奠定基礎(chǔ),提高飛行效率。
飛行故障庫(kù)是對(duì)多年飛行故障分析成果應(yīng)用的體現(xiàn),是各專業(yè)、全系統(tǒng)智慧的結(jié)晶,將各個(gè)典型故障分析成果的精華進(jìn)行輸出,利用飛行故障快速檢索進(jìn)行定位形式指導(dǎo)排故工作,可以為外場(chǎng)工作提供有效保障。
現(xiàn)有檢索軟件多為通用檢索軟件,如百度搜索引擎、用戶輸入關(guān)鍵詞。搜索引擎[1]會(huì)根據(jù)關(guān)鍵詞自動(dòng)為用戶歸納出文本、圖片以及視頻等信息,但通用搜索軟件的弊端是不能全面地顯示搜索信息,即搜索引擎只會(huì)匹配與關(guān)鍵詞最佳的信息,而不會(huì)“聯(lián)想”到其他信息,原因在于數(shù)據(jù)庫(kù)沒(méi)有對(duì)此類信息進(jìn)行事先關(guān)聯(lián)。因此,需開(kāi)發(fā)一套包含專用故障庫(kù)、故障檢索軟件以及故障信息標(biāo)準(zhǔn)化錄入的快速檢索系統(tǒng)以實(shí)現(xiàn)對(duì)故障的快速檢索與定位。
1?系統(tǒng)組成
本系統(tǒng)主要由飛行故障庫(kù)、故障庫(kù)錄入軟件以及故障快速檢索軟件組成。飛行故障庫(kù)是進(jìn)行指導(dǎo)排除典型故障的基石,是進(jìn)行故障快速檢索的基礎(chǔ),飛行故障庫(kù)可利用故障庫(kù)錄入軟件進(jìn)行錄入,也可根據(jù)標(biāo)準(zhǔn)化規(guī)則人工錄入。故障庫(kù)錄入軟件用以實(shí)現(xiàn)對(duì)典型故障的現(xiàn)象、故障分析以及排故流程等轉(zhuǎn)化成標(biāo)準(zhǔn)的故障庫(kù)文件,標(biāo)準(zhǔn)的故障庫(kù)由圖片以及文本文檔組成,此外,為提升排故工作效率,增加排故人以及聯(lián)系方式以方便后續(xù)排故人遇到此類故障能夠有針對(duì)性咨詢。故障快速檢索軟件用于實(shí)現(xiàn)對(duì)已錄入的所有故障庫(kù)的快速檢索,通過(guò)關(guān)鍵字模糊搜索[23]功能,對(duì)相似故障進(jìn)行快速查找、匹配,以實(shí)現(xiàn)對(duì)當(dāng)前觸發(fā)的故障提供技術(shù)支撐。
2?設(shè)計(jì)過(guò)程
2.1?故障數(shù)據(jù)清洗
對(duì)現(xiàn)有典型故障進(jìn)行數(shù)據(jù)清洗[45],考慮到故障編寫(xiě)者在編寫(xiě)故障排故經(jīng)驗(yàn)時(shí)都會(huì)指明具體飛機(jī)型號(hào)或者部件,通過(guò)關(guān)鍵詞搜索即可實(shí)現(xiàn)飛機(jī)型號(hào)的模糊搜索查找,故不以機(jī)型為主要切入點(diǎn)。通過(guò)審閱多篇故障匯編,故障匯編全文大體分為“故障名稱”“故障現(xiàn)象”“故障分析”“故障排除流程”“故障復(fù)現(xiàn)”“故障樹(shù)”“故障編寫(xiě)者”等段落模塊,可對(duì)上述模塊建立標(biāo)準(zhǔn)化故障庫(kù)。
2.2?故障庫(kù)標(biāo)準(zhǔn)化
故障庫(kù)標(biāo)準(zhǔn)化是進(jìn)行故障檢索的前提。故障庫(kù)標(biāo)準(zhǔn)化是對(duì)“故障名稱”“故障現(xiàn)象”“故障分析”“故障復(fù)現(xiàn)”“故障編寫(xiě)者”等進(jìn)行文本文檔存儲(chǔ),段落之間以“$”符號(hào)為結(jié)束標(biāo)志,可加入“故障排除人聯(lián)系方式”以方面后續(xù)故障排除人咨詢。對(duì)于“故障排除流程”“故障樹(shù)”以及表格等不方便錄入文本文檔的可進(jìn)行圖片存儲(chǔ),支持“png”“jpg”“bmp”等格式。
2.3?制定搜索規(guī)則
目前支持對(duì)故障名稱搜索或者故障內(nèi)容搜索兩種搜索機(jī)制,以及對(duì)搜索關(guān)鍵詞支持“與”“或”兩種搜索方法。對(duì)故障名稱搜索用時(shí)較短,但搜索精度低,這就要求故障編寫(xiě)者對(duì)故障標(biāo)題能夠準(zhǔn)確表述故障內(nèi)容;對(duì)故障內(nèi)容搜索用時(shí)相對(duì)較長(zhǎng)(目前故障庫(kù)較少,搜索時(shí)間不明顯),尤其是故障庫(kù)數(shù)量較為龐大時(shí),會(huì)占用較長(zhǎng)時(shí)間,但搜索結(jié)果較為精確。
在搜索前,設(shè)定搜索規(guī)則,以保證在搜索時(shí),能夠?qū)﹃P(guān)鍵字進(jìn)行切片處理,實(shí)現(xiàn)對(duì)關(guān)鍵詞的提取?!芭c”搜索用以實(shí)現(xiàn)對(duì)關(guān)鍵詞的“并且”關(guān)系,關(guān)鍵詞與關(guān)鍵詞之間用“*”連接;“或”搜索用以實(shí)現(xiàn)對(duì)關(guān)鍵詞的“或者”關(guān)系,關(guān)鍵詞與關(guān)鍵詞之間用“|”連接。在搜索時(shí),通過(guò)檢索“*”與“|”實(shí)現(xiàn)對(duì)關(guān)鍵詞的數(shù)據(jù)切片處理,通過(guò)遍歷整個(gè)故障庫(kù)名稱或者故障庫(kù)內(nèi)容兩種方法,實(shí)現(xiàn)對(duì)關(guān)鍵詞的快速匹配查找,對(duì)搜索到的結(jié)果進(jìn)行顯示。
支持對(duì)關(guān)鍵詞進(jìn)行記錄,以方便后續(xù)操作者直接進(jìn)行選擇搜索。
與搜索部分代碼如下:
QString?key_words=ui>lineEdit>text();
QStringList?keys=key_words.split(“*”);
if(key_words.contain(“*”))
{
?Search_and();//執(zhí)行與搜索
}
else
{
?Search_or();//執(zhí)行或搜索
}
2.4?搜索結(jié)果處理
對(duì)搜索到的結(jié)果進(jìn)行“項(xiàng)”顯示,“項(xiàng)”是故障搜索結(jié)果的一級(jí),具體內(nèi)容為二級(jí)。如果是故障內(nèi)容搜索,選擇搜索到的內(nèi)容會(huì)進(jìn)行高亮顯示,方便使用者確定其搜索的關(guān)鍵詞位置;對(duì)于圖片顯示模塊,可以選擇“單欄”或者“雙欄”,以方便使用者在界面內(nèi)能夠駐留更多可以關(guān)注的信息內(nèi)容;此外,界面可以顯示該故障排除人及其聯(lián)系方式,以及對(duì)搜索內(nèi)容字體大小的控制。
文本高亮顯示部分代碼如下:
QTextCursor?cursor(text);
QTextCursor?hightlight(text);
Cursor.beginEditBlock();
while(!hightlight.isNull&&cursor.atEnd())
{
?highlight=text.find(search_list[i],highlight,
?QTextDoucument::FindCaseSensitively);
?if(highlight.isNull)
?{
?Highlight.mergeChartFormat(color_format);
?}
}
3?軟件測(cè)試
軟件采用基于C++語(yǔ)言[67]的Qt?Creator[89]開(kāi)發(fā)。軟件測(cè)試分為兩個(gè)環(huán)節(jié),一是故障快速查詢測(cè)試,測(cè)試主要衡量目標(biāo)是對(duì)使用者輸入的關(guān)鍵詞進(jìn)行模糊搜索并對(duì)搜索到的結(jié)果進(jìn)行展示;二是故障信息的錄入功能測(cè)試,測(cè)試主要衡量目標(biāo)是能夠滿足使用者后續(xù)動(dòng)態(tài)維護(hù)故障數(shù)據(jù)庫(kù)。
對(duì)于飛機(jī)飛行故障而言,飛機(jī)自身系統(tǒng)錯(cuò)綜復(fù)雜,故障種類繁多,因此,飛行故障庫(kù)的數(shù)量直接決定測(cè)試結(jié)果。本次故障搜索測(cè)試基于外場(chǎng)多發(fā)性故障,選取飛機(jī)多功能顯示器的黑屏故障現(xiàn)象為測(cè)試對(duì)象。
3.1?故障快速查詢測(cè)試
打開(kāi)故障快速檢索系統(tǒng),在搜索欄輸入新錄入的故障名稱關(guān)鍵字,利用“與”搜索功能,檢索“多功能顯示器”并且“黑屏”情況,如圖4所示,已成功搜索到信息并可以高亮顯示關(guān)鍵字以及圖片信息。
由圖4可以看出,根據(jù)搜索的關(guān)鍵字,系統(tǒng)匹配到以往的故障數(shù)據(jù)庫(kù),并且可以看到具體的故障現(xiàn)象、故障分析以及故障的定位和故障排除流程。同時(shí),為方便外場(chǎng)使用以及兼顧不同人員使用習(xí)慣,支持圖片分欄顯示以及字體大小可調(diào)功能。
3.2?故障信息錄入功能測(cè)試
打開(kāi)故障錄入系統(tǒng)軟件,錄入“故障名稱”“故障現(xiàn)象”以及“故障排除流程”等文本信息,“故障樹(shù)”以及其他故障信息可通過(guò)轉(zhuǎn)化成圖片作為附件上傳,信息輸入完畢后,單擊“錄入數(shù)據(jù)庫(kù)”,提醒錄入成功,如圖5所示。
故障庫(kù)錄入軟件是對(duì)故障庫(kù)的動(dòng)態(tài)維護(hù),是對(duì)排故經(jīng)驗(yàn)的固化,是能夠快速檢索與定位故障的重要保證。
目前故障庫(kù)共計(jì)600余條,從搜索響應(yīng)速度方面來(lái)看,平均0.5秒即可完成故障搜索,相比于紙質(zhì)文本閱覽搜索方式,極大提高了故障排除方法的查找時(shí)間。
4?結(jié)論
對(duì)歷史飛行故障建立標(biāo)準(zhǔn)化故障庫(kù),利用故障庫(kù)錄入軟件實(shí)現(xiàn)了故障庫(kù)的標(biāo)準(zhǔn)化以及故障庫(kù)的動(dòng)態(tài)維護(hù),通過(guò)故障快速檢索軟件實(shí)現(xiàn)了對(duì)故障的快速檢索與定位。利用本方法有益之處如下:
(1)實(shí)現(xiàn)了從依賴傳統(tǒng)借助紙質(zhì)文檔和個(gè)人經(jīng)驗(yàn)等方式排除故障方法向利用故障數(shù)據(jù)庫(kù)快速檢索定位方式轉(zhuǎn)變;
(2)通過(guò)外場(chǎng)多架次飛機(jī)排故時(shí)間統(tǒng)計(jì),本方法平均減少了單架次飛機(jī)三十分鐘的排故時(shí)間,提高了排故效率,為外場(chǎng)工作提供了有效保障。
參考文獻(xiàn):
[1]羅三定,黃勇.一個(gè)應(yīng)用模糊方法的智能搜索引擎的構(gòu)建[J].計(jì)算機(jī)工程,2000(12).
[2]張成,褚瑩,凌力.基于安全字典樹(shù)的關(guān)鍵詞密文模糊搜索方案[J].微型電腦應(yīng)用,2018,34(4).
[3]王愷璇,李宇溪,周福才,等.面向多關(guān)鍵字的模糊密文搜索方法[J].計(jì)算機(jī)研究與發(fā)展,2017,54(02):348360.
[4]王曰芬,章成志,張蓓蓓.數(shù)據(jù)清洗研究綜述[J].現(xiàn)代圖書(shū)情報(bào)技術(shù),2007(12):5056.
[5]葉鷗,張璟,李軍懷.中文數(shù)據(jù)清洗研究綜述[J].計(jì)算機(jī)工程與應(yīng)用,2012,48(14):121129.
[6]孫鑫.VC++深入講解:基于Visual?Studio?2017[M].北京:電子工業(yè)出版社,201906.
[7]野媛.C++程序設(shè)計(jì)中對(duì)象初始化的方法與技巧[J].科學(xué)技術(shù)創(chuàng)新,2021(26):11617.
[8]仇國(guó)巍.Qt圖形界面編程入門(mén)[M].北京:清華大學(xué)出版社,2017.
[9]陳浩段,文超,劉永寧.基于QT、OCI實(shí)現(xiàn)ORACLE數(shù)據(jù)庫(kù)模糊搜索[J].微計(jì)算機(jī)應(yīng)用,2011,32(09):5356.
作者簡(jiǎn)介:孟亭磊(1995—?),男,漢族,安徽宿州人,碩士,助理工程師,研究方向:導(dǎo)航制導(dǎo)與控制。