版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 中南大學(xué)課程設(shè)計(jì)說(shuō)明書課 題 汽車故障診斷專家系統(tǒng)的設(shè)計(jì) 學(xué) 院 能源科學(xué)與工程學(xué)院 學(xué)生姓名 劉超 指導(dǎo)老師 專業(yè)班級(jí) 學(xué) 號(hào) 2012年9月19日摘要隨著社會(huì)的發(fā)展和技術(shù)的進(jìn)步,汽車故障診斷技術(shù)已經(jīng)有了很大的發(fā)展。本文從汽車診斷技術(shù)的發(fā)展趨勢(shì)出發(fā)介紹了汽車故障診斷專家系統(tǒng)的基本結(jié)構(gòu)及其開發(fā)的基本方法,論述了汽車故障診斷專家系統(tǒng)軟件的開發(fā)研究的意義和設(shè)計(jì)中的難點(diǎn),針對(duì)汽車故障的復(fù)雜性特點(diǎn)模擬經(jīng)驗(yàn)豐富的維修專家的診斷思路及方法,利用delphi7進(jìn)行編程,建立友好的人機(jī)界面,依據(jù)計(jì)算機(jī)數(shù)據(jù)結(jié)構(gòu)原理,采用故障樹的數(shù)據(jù)結(jié)構(gòu)和關(guān)系數(shù)據(jù)庫(kù)原理完成知識(shí)表示建立完善的知識(shí)庫(kù),實(shí)現(xiàn)了確定性故障診斷所需的知
2、識(shí)庫(kù)和推理機(jī)。從而可使用戶通過(guò)人機(jī)對(duì)話的形式方便、快速、準(zhǔn)確地找出故障原因,大大地提高汽修行業(yè)的效益及汽車的使用壽命。關(guān)鍵字:汽車 故障診斷 專家系統(tǒng)內(nèi)燃機(jī)課程設(shè)計(jì)任務(wù)書一、設(shè)計(jì)題目發(fā)動(dòng)機(jī)電控系統(tǒng)設(shè)計(jì)以某一具體類型的發(fā)動(dòng)機(jī)(如:凌志ls400轎車1uz-fe型發(fā)動(dòng)機(jī))為對(duì)象,結(jié)合發(fā)動(dòng)機(jī)電控系統(tǒng)設(shè)計(jì)的要求,選擇合適的傳感器和執(zhí)行器等硬件設(shè)備,對(duì)發(fā)動(dòng)機(jī)的主要控制系統(tǒng)或某一控制系統(tǒng)進(jìn)行硬件設(shè)計(jì)和軟件設(shè)計(jì)??刂苾?nèi)容:發(fā)動(dòng)機(jī)控制系統(tǒng)包括電子控制汽油噴射(efi)、電子控制點(diǎn)火提前(esa)、怠速控制(isc)、廢氣再循環(huán)控制(egr)、蒸發(fā)污染控制(ecs)、諧波進(jìn)氣增壓系統(tǒng)控制(acis)、故障診斷(
3、diagn)、失效保護(hù)與后備功能和怠速混合氣濃度調(diào)節(jié)(co排放控制)等內(nèi)容。二、設(shè)計(jì)內(nèi)容1原理簡(jiǎn)介主要內(nèi)容:對(duì)發(fā)動(dòng)機(jī)的構(gòu)成與工作原理進(jìn)行簡(jiǎn)要介紹2對(duì)象特性描述 主要內(nèi)容:對(duì)所選擇的控制對(duì)象的特性進(jìn)行分析和描述3控制系統(tǒng)設(shè)計(jì)發(fā)動(dòng)機(jī)的電子控制系統(tǒng)設(shè)計(jì)。1)電子控制單元的設(shè)計(jì);2)傳感器和控制開關(guān);3)各類執(zhí)行器;4)控制系統(tǒng)的工作過(guò)程。主要內(nèi)容:控制方案的選擇與論證;被控參數(shù)與控制參數(shù)的選擇;輸入輸出系統(tǒng)的設(shè)計(jì);畫出原理圖、方框圖和儀表流程圖、系統(tǒng)接線圖、梯形圖;進(jìn)行程序設(shè)計(jì)。三、設(shè)計(jì)要求1課程設(shè)計(jì)說(shuō)明書的格式應(yīng)嚴(yán)格按照學(xué)校課程設(shè)計(jì)格式要求。2論理正確、邏輯性強(qiáng)、文理通顧、層次分明、表達(dá)確切,并提
4、出自己的見解和觀點(diǎn)。3課程設(shè)計(jì)說(shuō)明書。前置部分:封面、摘要、設(shè)計(jì)任務(wù)書、目錄;主體部分:引言(設(shè)計(jì)目的、任務(wù)與要求等)、正文、結(jié)論、參考文獻(xiàn);附錄部分:系統(tǒng)方框圖和電路原理圖、程序清單等。4課程設(shè)計(jì)說(shuō)明書應(yīng)包括按上述設(shè)計(jì)步驟進(jìn)行設(shè)計(jì)的分析和思考內(nèi)容和引用的相關(guān)知識(shí)。5如有程序,必須提供清單。四、題目選擇汽車故障診斷專家系統(tǒng)的設(shè)計(jì)目錄1緒論5 1.1 汽車故障診斷技術(shù)的發(fā)展趨勢(shì)51.1.1 國(guó)外發(fā)展概況5 1.1.2 國(guó)內(nèi)發(fā)展概況5 1.1.3 汽車故障診斷技術(shù)的發(fā)展趨勢(shì)61.2 汽車故障診斷專家系統(tǒng)簡(jiǎn)介7 1.2.1 汽車診斷專家系統(tǒng)的功能與特點(diǎn)71.2.2 研究汽車診斷專家系統(tǒng)的意義82.
5、delphi7.0軟件簡(jiǎn)介9 3. 汽車系統(tǒng)的故障分析12 3.1 汽車故障的產(chǎn)生12 3.2 汽車故障的特點(diǎn)13 3.3 本章小結(jié)134. 汽車故障診斷專家系統(tǒng)設(shè)計(jì)與開發(fā)14 4.1 汽車故障診斷專家系統(tǒng)的一般結(jié)構(gòu)14 4.2 基于delphi的汽車故障診斷專家系統(tǒng)的特點(diǎn)14 4.3 故障診斷專家系統(tǒng)各模塊的建立15 4.3.1 故障診斷模塊154.3.2 故障診斷知識(shí)庫(kù)的建立21 4.3.3 知識(shí)庫(kù)的基本管理22 4.3.4 知識(shí)庫(kù)檢索模塊26 4.3.5 推理機(jī)制28 4.4 結(jié)論28 5. 總結(jié)和展望29 5.1 總結(jié)29 5.2 展望29 6. 參考文獻(xiàn)31 1 緒論1.1 汽車故障
6、診斷技術(shù)的發(fā)展趨勢(shì)汽車故障診斷是在不解體(或僅卸下個(gè)別小件)的條件下,確定汽車技術(shù)狀況,查明故障部位及原因的檢查和分析。有效的汽車故障診斷是維護(hù)汽車最佳車況的一個(gè)先決條件。隨著制造業(yè)水平的提高、計(jì)算機(jī)技術(shù)在汽車上的廣泛應(yīng)用,車輛的安全性、可靠性和操控性能得到大大的提高,同時(shí)也使得汽車結(jié)構(gòu)復(fù)雜化,增加了汽車的診斷維修保養(yǎng)難度,對(duì)汽車維修人員的各方面知識(shí)和維修技能提出了更高的要求。汽車故障診斷從傳統(tǒng)的聽、看、聞等經(jīng)驗(yàn)診斷方式,發(fā)展為以集成化、智能化的診斷設(shè)備為手段,以信息技術(shù)為依托的現(xiàn)代汽車故障診斷技術(shù)。1.1.1 國(guó)外發(fā)展概況20世紀(jì)50年代之前,國(guó)外就研發(fā)了以故障診斷和性能調(diào)試為主的單項(xiàng)檢測(cè)技
7、術(shù)。早期的檢測(cè)診斷設(shè)備是以機(jī)械結(jié)構(gòu)為主,單機(jī)人工操作。上世紀(jì)60年代,隨著機(jī)電一體化的產(chǎn)生,研制了單機(jī)自動(dòng)化的設(shè)備,如四輪定位儀、非接觸式速度計(jì)等;80年代,隨著計(jì)算機(jī)技術(shù)的發(fā)展和應(yīng)用,實(shí)現(xiàn)了汽車診斷控制自動(dòng)化,出現(xiàn)了集檢測(cè)工藝、操作、數(shù)據(jù)采集、存儲(chǔ)和打印等功能于一體的系統(tǒng)軟件。目前,車載自診斷系統(tǒng)和車外診斷系統(tǒng)正在進(jìn)一步發(fā)展。車載自診斷系統(tǒng)(obd)利用安裝在汽車內(nèi)各個(gè)部位的傳感器,自動(dòng)檢測(cè)系統(tǒng)故障,以故障代碼形式顯示并將故障信息存入電子控制單元ecu的ram中,在維修車輛時(shí),維修人員能調(diào)出故障代碼,找出故障部位。1994年,美國(guó)汽車工程師協(xié)會(huì)(sae)在第1代obd基礎(chǔ)上,制定了第2代在線
8、診斷標(biāo)準(zhǔn)obd,obd除了對(duì)電子控制系統(tǒng)檢測(cè)外,還對(duì)與排放有關(guān)的系統(tǒng)監(jiān)測(cè),更注重綠色環(huán)保問(wèn)題。車外診斷系統(tǒng),通過(guò)傳感器采集信號(hào),送至車外儀器,在相應(yīng)診斷軟件的支持下,完成各種診斷。例如:發(fā)動(dòng)機(jī)綜合分析儀等。1.1.2 國(guó)內(nèi)發(fā)展概況我國(guó)是20世紀(jì)60年代開始研究檢測(cè)技術(shù),如發(fā)動(dòng)機(jī)氣缸漏氣量檢測(cè)儀等。80年代,隨著汽車工業(yè)的發(fā)展,汽車診斷技術(shù)得到了迅速發(fā)展,到90年代,相繼研制了側(cè)滑試驗(yàn)臺(tái)、制動(dòng)試驗(yàn)臺(tái)、汽車檢測(cè)站以及我國(guó)自主開發(fā)的發(fā)動(dòng)機(jī)故障診斷儀、四輪定位儀等。汽車檢測(cè)站綜合運(yùn)用現(xiàn)代檢測(cè)技術(shù)和設(shè)備對(duì)汽車進(jìn)行不解體或不完全解體條件下的性能檢測(cè)診斷,實(shí)現(xiàn)了以汽車安全性能為主到綜合性能的檢測(cè)。國(guó)產(chǎn)車在汽
9、車電子控制方面上也廣泛應(yīng)用了obd,但根據(jù)我國(guó)目前的排放法規(guī),obd還沒(méi)有在國(guó)產(chǎn)車上廣泛使用。我國(guó)汽車診斷技術(shù)正在快速發(fā)展,但與國(guó)外先進(jìn)水平相比,還有一定差距,主要突出在以下幾個(gè)方面:(1)管理水平還須進(jìn)一步提高。我國(guó)已基本建立了車輛檢測(cè)診斷制度,實(shí)施了“定期檢測(cè)、強(qiáng)制維護(hù)、視情修理”的汽車維修制度,但我國(guó)各地區(qū)經(jīng)濟(jì)和技術(shù)水平不一致,大部分地區(qū)尚未進(jìn)行汽車維修行業(yè)的電腦化管理和信息化建設(shè),甚至還有“事后維修”現(xiàn)象。汽車診斷技術(shù)的滯后,與高速發(fā)展的汽車技術(shù)和迅猛增長(zhǎng)的汽車保有量嚴(yán)重脫節(jié),這是一個(gè)值得重視的問(wèn)題。(2)診斷設(shè)備和儀器的國(guó)產(chǎn)化研發(fā)能力欠佳,而進(jìn)口診斷設(shè)備價(jià)格昂貴,阻礙了我國(guó)汽車診斷技
10、術(shù)的發(fā)展。(3)汽車維修人員的素質(zhì)普遍不高。汽車的高科技化,現(xiàn)代檢測(cè)設(shè)備本身的高性能,要求維修人員具備一定的汽車專業(yè)、機(jī)電專業(yè)理論知識(shí),懂計(jì)算機(jī)、會(huì)英語(yǔ),綜合職業(yè)能力強(qiáng),但這種技能型專門人才緊缺。目前我國(guó)汽車保有量正在快速增加,進(jìn)口車也越來(lái)越多,且車型復(fù)雜、種類繁多,因而使許多維修單位由于缺乏有關(guān)維修專家的技術(shù)指導(dǎo)而不能維修或難以滿足維修的需要。為了提高車輛的利用率減少經(jīng)濟(jì)損失,開發(fā)汽車故障診斷專家系統(tǒng),利用計(jì)算機(jī)這種先進(jìn)的設(shè)備進(jìn)行故障診斷是形勢(shì)發(fā)展的需要和必然趨勢(shì)。1.1.3 汽車故障診斷技術(shù)的發(fā)展趨勢(shì)高科技的發(fā)展,信息化的網(wǎng)絡(luò),使得汽車故障診斷技術(shù)必將向著智能化、集成化方向發(fā)展。(1)基于
11、神經(jīng)網(wǎng)絡(luò)的故障診斷專家系統(tǒng)神經(jīng)網(wǎng)絡(luò)具有較好的容錯(cuò)性,較強(qiáng)的自學(xué)習(xí)功能、自適應(yīng)能力,大規(guī)模并行處理能力等。把神經(jīng)網(wǎng)絡(luò)應(yīng)用于診斷專家系統(tǒng)是新一類知識(shí)表達(dá)體系,在知識(shí)獲取、并行推理等方面有明顯的優(yōu)越性,解決了傳統(tǒng)專家系統(tǒng)在知識(shí)獲取上的瓶頸問(wèn)題,提高了診斷系統(tǒng)的智能水平。(2)基于網(wǎng)絡(luò)的集成故障診斷專家系統(tǒng)由于汽車故障診斷實(shí)例豐富、診斷信息量大,不確定因素多,因此,探索適合汽車領(lǐng)域的專家系統(tǒng),集成規(guī)則、案例、模糊和神經(jīng)網(wǎng)絡(luò)理論,集成推理機(jī)制,以網(wǎng)絡(luò)為框架,以多媒體技術(shù)為載體,研究多種診斷模型融合技術(shù)必將是發(fā)展方向。集成故障診斷專家系統(tǒng)能自動(dòng)選擇合適的診斷模型,靈活處理診斷知識(shí)和應(yīng)用推理方式,滿足內(nèi)在機(jī)
12、理上的融合,避免診斷的冗余問(wèn)題。多媒體技術(shù)集圖形、音像、文本于一體,使診斷系統(tǒng)具有良好的人機(jī)界面和交互環(huán)境,增加了系統(tǒng)的可靠性,提高了診斷的效率。通過(guò)局域網(wǎng)、因特網(wǎng)實(shí)現(xiàn)異地診斷和在線診斷,達(dá)到多個(gè)專家協(xié)同診斷、提高診斷準(zhǔn)確性的目的,還可以對(duì)汽車診斷人員進(jìn)行遠(yuǎn)程培訓(xùn),在多媒體情境中,使診斷技術(shù)易懂好學(xué),提高培訓(xùn)成效,保持診斷技術(shù)的先進(jìn)性汽車技術(shù)的高科技性,對(duì)汽車故障診斷技術(shù)提出了很高的要求。智能化、集成化的現(xiàn)代汽車故障診斷技術(shù)必將成為汽車檢測(cè)維修領(lǐng)域的發(fā)展方向。1.2 汽車故障診斷專家系統(tǒng)簡(jiǎn)介汽車故障診斷專家系統(tǒng)是一種能模擬維修專家的診斷思路進(jìn)行故障診斷的計(jì)算機(jī)智能軟件程序。研制專家系統(tǒng)的目的,
13、就是要使計(jì)算機(jī)在特定領(lǐng)域中起到該領(lǐng)域人類專家應(yīng)起的作用,設(shè)計(jì)專家系統(tǒng)的基本思想是使計(jì)算機(jī)的工作過(guò)程竭盡全力地來(lái)模擬人類專家解決實(shí)際問(wèn)題的工作過(guò)程,也就是模擬人類專家如何運(yùn)用他的知識(shí)與經(jīng)驗(yàn)來(lái)解決所要解決的問(wèn)題的方法與步驟。本系統(tǒng)可利用計(jì)算機(jī)強(qiáng)大的信息處理能力,廣泛收集各種車型的技術(shù)參數(shù)、故障征兆和判斷處理程序及維修專家的經(jīng)驗(yàn),應(yīng)用數(shù)據(jù)庫(kù)及編程技術(shù),依據(jù)汽車故障樹建立動(dòng)態(tài)知識(shí)庫(kù)和推理庫(kù),利用強(qiáng)大數(shù)據(jù)庫(kù),在計(jì)算機(jī)提示下,完成診斷和修理工作,友好的人機(jī)交互操作界面及多媒體技術(shù),將使診斷維修更為形象、直觀。汽車故障診斷專家系統(tǒng)(fdes)是根據(jù)對(duì)癥狀的觀察與分析,推斷故障所在,并給出排除故障方案的系統(tǒng)。
14、其實(shí)也可以把它定義為一個(gè)在某領(lǐng)域內(nèi),具有專家級(jí)水平的知識(shí)處理程序系統(tǒng)。在結(jié)構(gòu)上它由一個(gè)專門領(lǐng)域的知識(shí)庫(kù)與一個(gè)能獲取和運(yùn)用知識(shí)的機(jī)構(gòu)組成。專家系統(tǒng)所處理的對(duì)象主要是用符號(hào)表示的知識(shí)和信息,而不僅僅是數(shù)據(jù)。其智能行為除了能簡(jiǎn)單邏輯推理,目標(biāo)查詢之外,主要表現(xiàn)在啟發(fā)性推理。專家系統(tǒng)得出結(jié)論時(shí),能自己解釋“為什么要如此做”,“是如何做的”等問(wèn)題。這對(duì)判斷它給出的結(jié)論是否合理或是否正確很有幫助1。1.2.1 汽車診斷專家系統(tǒng)的功能與特點(diǎn)汽車診斷專家系統(tǒng)的功能與特點(diǎn)概括地說(shuō)就是“由計(jì)算機(jī)存儲(chǔ)的專家知識(shí),按照需要可以調(diào)用,即使初學(xué)者也能近似地如專家一樣進(jìn)行故障診斷”。目前,汽車故障診斷專家系統(tǒng)與其他診斷方式
15、相比,具有以下特點(diǎn):車內(nèi)診斷和非車載診斷主要局限于汽車電器系統(tǒng),而專家系統(tǒng)可以適用于電器和機(jī)械兩方面的診斷;專家系統(tǒng)能利用車內(nèi)診斷和非車載診斷的數(shù)據(jù)和信息,并可以與檢測(cè)子系統(tǒng)聯(lián)接,有效地提高了診斷效率和精度;專家系統(tǒng)能與信息系統(tǒng)相聯(lián),在不斷充實(shí)知識(shí)庫(kù)的同時(shí),通過(guò)改進(jìn)各診斷系統(tǒng)的相互關(guān)系,可以充分發(fā)揮專家系統(tǒng)的優(yōu)點(diǎn)?,F(xiàn)代汽車診斷系統(tǒng)是由檢測(cè)系統(tǒng)、專家系統(tǒng)和信息系統(tǒng)三部分構(gòu)成。各系統(tǒng)的作用和相互關(guān)系是為了進(jìn)行有效的故障診斷,有關(guān)故障診斷所必須的信息以及對(duì)每個(gè)故障現(xiàn)象進(jìn)行處理后的結(jié)果都應(yīng)該進(jìn)行存儲(chǔ),以擴(kuò)充必要的診斷知識(shí)。同時(shí),通過(guò)信息系統(tǒng)還可以獲得更多的診斷知識(shí)。另外,利用故障診斷設(shè)備或裝置獲得的車
16、輛技術(shù)狀態(tài)及自診斷結(jié)果等信息,可以通過(guò)專家系統(tǒng)按有效的方式進(jìn)行組合,因而使診斷系統(tǒng)的智能化和信息化水平得到了十分有效的提高。以專家系統(tǒng)為核心的現(xiàn)代汽車故障診斷系統(tǒng)的特點(diǎn)是:通過(guò)信息的網(wǎng)絡(luò)化,沿著故障診斷流程能有效地利用相關(guān)的信息,提高了故障診斷和維修作業(yè)的正確性;應(yīng)用專家系統(tǒng),即使不是熟練的維修人員也能應(yīng)用多種信息進(jìn)行正確的故障診斷;應(yīng)用多媒體技術(shù)提高了信息的交流速度和診斷工作的效率。因此,現(xiàn)代診斷系統(tǒng)具有知識(shí)庫(kù)的使用效率高、診斷的適應(yīng)能力強(qiáng)和信息的檢索速度快等性能。1.2.2 研究汽車診斷專家系統(tǒng)的意義汽車診斷是汽車運(yùn)用過(guò)程的一個(gè)重要組成部分,主要是確定在用汽車的技術(shù)狀況是否正常,找出異常狀
17、況的故障原因及其部位。汽車只有在技術(shù)狀況正常的情況下,才能可靠運(yùn)行并充分發(fā)揮其性能,保證行駛過(guò)程中的安全性、經(jīng)濟(jì)性和排放性。汽車外部狀況可以通過(guò)目視檢查來(lái)確定其狀態(tài),但在不解體的情況下,對(duì)其內(nèi)部狀況的判斷卻是十分復(fù)雜的工作。如果將汽車的總成或機(jī)構(gòu)通過(guò)分解的方式進(jìn)行檢查,不僅費(fèi)工費(fèi)時(shí),而且還可能對(duì)其可靠性和性能產(chǎn)生不利的影響。因此,采用汽車診斷技術(shù)對(duì)汽車技術(shù)狀進(jìn)行監(jiān)測(cè)、檢查汽車維修質(zhì)量和判斷汽車故障,是十分有效的方法。汽車診斷工作重點(diǎn)如下:對(duì)汽車的技術(shù)狀態(tài)進(jìn)行全面檢查,確定汽車技術(shù)狀況與標(biāo)準(zhǔn)狀態(tài)相差的程度,從而決定汽車能否適合繼續(xù)行駛,或采取何種維修措施保持和恢復(fù)技術(shù)狀況;確定汽車的具體故障原因
18、和尋找確切故障部位,制定合理的故障排除方案;預(yù)測(cè)汽車技術(shù)狀態(tài)的變化趨勢(shì),在掌握汽車技術(shù)狀況變化規(guī)律的前提下,確定適時(shí)的診斷周期或?qū)崿F(xiàn)按需維修模式。2. delphi7.0軟件簡(jiǎn)介delphi是著名的borland公司開發(fā)的可視化軟件開發(fā)工具。delphi被稱為第四代編程語(yǔ)言,簡(jiǎn)單、高效、功能強(qiáng)大。產(chǎn)生背景:在dos年代,程序員可以選擇的開發(fā)工具是非常有限的。隨著windows平臺(tái)的推出,這種情況有所改善,人們可以使用c+語(yǔ)言或者visual basic語(yǔ)言。但是c+功能強(qiáng)大但是使用困難,vb使用簡(jiǎn)單但是語(yǔ)言本身具有重大局限。因此人們迫切需要一種能夠集兩者優(yōu)點(diǎn)而舍棄兩者缺點(diǎn)的開發(fā)工具。在這種情況
19、下delphi產(chǎn)生,delphi兼?zhèn)淞藇c功能強(qiáng)大和vb簡(jiǎn)單易學(xué)的特點(diǎn)。delphi已經(jīng)從delphi 1.0 發(fā)展到現(xiàn)在的delphi 7.02。(1)可視化開發(fā)環(huán)境可視化開發(fā)環(huán)境通常分為三個(gè)組成部分:編輯器、調(diào)試器和窗體設(shè)計(jì)器。和大多數(shù)現(xiàn)代rad(快速應(yīng)用開發(fā))工具一樣,這三部分是協(xié)同工作的。當(dāng)你在窗體設(shè)計(jì)器中工作時(shí),delphi在后臺(tái)自動(dòng)為你正在窗體中操縱的控件生成代碼。你還可以自己在編輯器中加入代碼來(lái)定義應(yīng)用程序的行為,同時(shí)還可以在同一個(gè)編輯器中通過(guò)設(shè)置斷點(diǎn)和監(jiān)控點(diǎn)等來(lái)調(diào)試程序??偟膩?lái)說(shuō)delphi的編輯器和其他工具的編輯器類似,但它的codeinsight技術(shù)卻省去了許多輸入工作的麻
20、煩。這一技術(shù)是建立在編譯器信息之上的,而不是基于像visual basic 等使用的類型庫(kù),因此應(yīng)用范圍更廣泛。在版本5里,delphi的調(diào)試器已具備了許多先進(jìn)的功能,如遠(yuǎn)程調(diào)試、過(guò)程關(guān)聯(lián)、dll和包調(diào)試、自動(dòng)本地監(jiān)控以及cpu窗口等。delphi還支持在調(diào)試時(shí)隨意放置和??看翱诓堰@一狀態(tài)保存為命令的桌面設(shè)置。由此,delphi的ide實(shí)現(xiàn)了對(duì)調(diào)試功能的良好支持。對(duì)rad工具來(lái)說(shuō),窗體設(shè)計(jì)器是一項(xiàng)獨(dú)特的功能。一些更為經(jīng)典的開發(fā)環(huán)境,如vc+和bc+,都提供了對(duì)話編輯器,但卻沒(méi)有將窗體設(shè)計(jì)器集成到開發(fā)流程中。delphi的窗體設(shè)計(jì)器的與眾不同之處在于,delphi是建立在一個(gè)真正面向?qū)ο蟮目蚣?/p>
21、結(jié)構(gòu)基礎(chǔ)之上的。這樣,你對(duì)基類所做的改變都將會(huì)傳遞給所有的派生類。這里涉及的一項(xiàng)關(guān)鍵技術(shù)就是vfi(visual form inheritance),即可視化窗體繼承。vfi技術(shù)使你能夠動(dòng)態(tài)地繼承當(dāng)前項(xiàng)目或?qū)ο髱?kù)中的任何其他窗體。一旦基窗體發(fā)生改變,派生的窗體會(huì)立即予以更新。(2)編譯器的速度和已編譯代碼的效率快速的編譯器可以使你逐步遞進(jìn)地開發(fā)軟件,經(jīng)常地修改源代碼、重新編譯、測(cè)試、再修改、再編譯、再測(cè)試形成這樣一個(gè)良好的開發(fā)循環(huán)。如果編譯速度很慢,開發(fā)者就不得不分批地修改代碼,每次編譯前進(jìn)行多處修改以適應(yīng)一個(gè)低效率的循環(huán)過(guò)程。提高運(yùn)行效率、節(jié)約運(yùn)行時(shí)間、生成的二進(jìn)制代碼更為短小,其優(yōu)越性是不
22、言而喻的。pascal編譯器最著名的特點(diǎn)就是速度快,而delphi正是建立在這種編譯器的基礎(chǔ)之上的。事實(shí)上,它是針對(duì)windows的最快的高級(jí)語(yǔ)言本地代碼編譯器。編譯速度一定能與運(yùn)行效率成正比嗎?當(dāng)然不是。delphi和c+builder共享同一種編譯器后端,因此生成的代碼等效于由一個(gè)優(yōu)秀的c+編譯器生成的代碼。(3)編程語(yǔ)言的功能及其復(fù)雜性從根本上來(lái)說(shuō),匯編是一種最有力的語(yǔ)言。用它你幾乎無(wú)所不能。但是,即便是用匯編開發(fā)最簡(jiǎn)單的應(yīng)用程序,難度也非常大,還可能一無(wú)所獲。因此,我們對(duì)匯編的評(píng)價(jià)很低,它雖然功能很強(qiáng)大,但對(duì)幾乎所有的開發(fā)者來(lái)說(shuō)都太復(fù)雜了。c+是另一種極為有力的語(yǔ)言。在它的潛在功能(如
23、預(yù)處理器宏、模板、操作符加載等等)的幫助下,你幾乎可以使用c+設(shè)計(jì)你自己的語(yǔ)言。只要合理地使用其豐富的功能選項(xiàng),就可以開發(fā)出簡(jiǎn)潔直觀、易于維護(hù)的代碼。但這種語(yǔ)言自己不會(huì)朝著好的設(shè)計(jì)方向前進(jìn)-這由開發(fā)者決定。object pascal和java給我們的感覺(jué)很相似,因?yàn)樗鼈兒芎玫匕盐兆×藦?fù)雜性和功能性的平衡。它們都采取了這樣一種途徑,即限制其可用功能以加強(qiáng)開發(fā)者的邏輯設(shè)計(jì)。例如,兩者都避免了完全面向?qū)ο蟮珔s容易被濫用的多重繼承的觀念,而是實(shí)現(xiàn)了一個(gè)執(zhí)行多重接口功能的類。兩者都不支持美觀卻危險(xiǎn)的操作符加載。兩者都有一些強(qiáng)大的功能,諸如異常處理、運(yùn)行期類型信息(rtti)和生存期內(nèi)存自管理字符串。同時(shí)
24、,兩種語(yǔ)言都不是由專門的編委會(huì)寫出來(lái)的,而是來(lái)自于單個(gè)組織中對(duì)這種語(yǔ)言有著共同理解的個(gè)人或小組。(4) 數(shù)據(jù)庫(kù)結(jié)構(gòu)的靈活性和可擴(kuò)展性由于borland缺少一種數(shù)據(jù)庫(kù)計(jì)劃,因此delphi保留了我們認(rèn)為是所有工具中最靈活的數(shù)據(jù)庫(kù)結(jié)構(gòu)。對(duì)大多數(shù)基于本地、客戶/服務(wù)器和odbc數(shù)據(jù)庫(kù)平臺(tái)的應(yīng)用程序來(lái)說(shuō),delphi采用的獨(dú)特的數(shù)據(jù)庫(kù)引擎bde(borland database engine)對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作,通過(guò)bde與各種數(shù)據(jù)庫(kù)的接口,可以訪問(wèn)oraclesybasems accessdbaseparadox和interlace等數(shù)據(jù)庫(kù)4。bde還可以與borland的sql link鏈接,訪問(wèn)各
25、種網(wǎng)絡(luò)數(shù)據(jù)庫(kù)。它具有編程簡(jiǎn)單,移植方便的特點(diǎn)。如果你對(duì)此不滿意,可以避開使用bde以支持新的本地ado組件。如果你沒(méi)有裝ado,可以自己創(chuàng)建數(shù)據(jù)訪問(wèn)類或者購(gòu)買第三方數(shù)據(jù)訪問(wèn)解決方案。此外,midas使對(duì)數(shù)據(jù)源的多層訪問(wèn)更易于實(shí)現(xiàn)。microsoft的工具(odbc、oledb或者其他)從邏輯上來(lái)說(shuō)趨向于支持microsoft自己的數(shù)據(jù)庫(kù)和數(shù)據(jù)訪問(wèn)解決方案。(5)框架對(duì)設(shè)計(jì)和使用模式的擴(kuò)充這是一項(xiàng)經(jīng)常被其他軟件設(shè)計(jì)工具忽略了的重要功能。vcl是delphi最重要的組成部分。在設(shè)計(jì)時(shí)操縱組件、創(chuàng)建組件、使用oo(面向?qū)ο?技術(shù)繼承其他組件的行為,這些能力都是決定delphi效率的關(guān)鍵因素。在許多場(chǎng)
26、合,編寫vcl組件都采用固定的oo設(shè)計(jì)方法。相比之下,其他基于組件的框架經(jīng)常過(guò)于死板或過(guò)于復(fù)雜。比如activex控件具有和vcl控件相同的設(shè)計(jì)期性能,但卻不能被繼承以創(chuàng)建一個(gè)具有其他不同行為的新類。傳統(tǒng)的類框架,如owl和mfc,需要你有大量的內(nèi)部結(jié)構(gòu)知識(shí),而且如果沒(méi)有rad工具的設(shè)計(jì)期支持,其功能將會(huì)受到抑制。將來(lái)能夠與vcl的功能相媲美的一個(gè)工具是visual j+的wfc( windows foundation classes),即windows基礎(chǔ)類。但是由于sun microsystems對(duì)java問(wèn)題的訴訟仍懸而未決,visual j+的前景還不確定5。3. 汽車系統(tǒng)的故障分析3
27、.1 汽車故障的產(chǎn)生汽車在復(fù)雜的環(huán)境中行駛或停放,由于物理變化和化學(xué)變化,引起汽車零件磨損、腐蝕和機(jī)械性損壞等,使汽車的技術(shù)性能(動(dòng)力性、經(jīng)濟(jì)性、可靠性)逐步變壞,致使汽車不能正常運(yùn)行,汽車便發(fā)生了故障。引起汽車故障的因素有:使用不當(dāng)、維護(hù)不當(dāng)、材料選用不當(dāng)、制造質(zhì)量差、氣溫條件惡劣、道路條件差、低質(zhì)燃油、低質(zhì)潤(rùn)滑油等。上述引起汽車故障的因素不一定立即影響到汽車的正常運(yùn)行,但是能夠形成故障隱患,嚴(yán)重時(shí)會(huì)導(dǎo)致車輛徹底拋錨。使用不當(dāng),如猛然放松離合器踏板等操作不規(guī)范現(xiàn)象,這種違反操作規(guī)程的現(xiàn)象,就易使汽車發(fā)生故障。還有超載和不合理時(shí)速等運(yùn)行現(xiàn)象,超載時(shí),汽車通過(guò)一些不平路面時(shí),易引起機(jī)件變形,加快
28、零部件的損壞,不合理時(shí)速,汽車運(yùn)行時(shí),駕駛員若不能正確估計(jì)發(fā)動(dòng)機(jī)動(dòng)力和行駛阻力,盲目行駛,即發(fā)動(dòng)機(jī)高轉(zhuǎn)速低檔位,或高檔位低速行駛,也容易使發(fā)動(dòng)機(jī)和傳動(dòng)機(jī)件損壞。隨著行駛里程的增加,汽車的技術(shù)狀況相應(yīng)的逐步變壞。對(duì)汽車實(shí)行定期維護(hù)或者視情維護(hù)十分重要。若維護(hù)不當(dāng),便會(huì)引起汽車故障。汽車維護(hù)一般以檢查、調(diào)整、潤(rùn)滑、清潔、緊固等作業(yè)項(xiàng)目為主,其次是及時(shí)排除故障。根據(jù)汽車運(yùn)行的特點(diǎn),除了合理的設(shè)計(jì)和制造時(shí)采用新技術(shù)、新工藝外,合理選用材料也很重要。如果材料選用不當(dāng),就會(huì)引起汽車故障。汽車壽命的長(zhǎng)短和制造質(zhì)量有密切關(guān)系,若制造質(zhì)量低劣,汽車就會(huì)經(jīng)常發(fā)生故障。制造質(zhì)量包括焊接質(zhì)量、機(jī)械加工質(zhì)量、裝質(zhì)量等。
29、氣溫條件惡劣即氣溫過(guò)高或者過(guò)低,都不利汽車的使用,如果按照操作規(guī)程采取防范措施,則對(duì)汽車的壽命影響較小,否則,就容易使汽車發(fā)生故障。氣溫過(guò)低,會(huì)使?jié)櫥妥兂?,若預(yù)熱不良就會(huì)造成潤(rùn)滑不良;對(duì)于氣壓制動(dòng)汽車,氣溫過(guò)低易造成氣壓制動(dòng)失靈。柴油在低溫時(shí)易凝固,易造成油路堵塞發(fā)動(dòng)機(jī)不容易發(fā)動(dòng)或者啟動(dòng)后熄火等故障。氣溫過(guò)高,易引起爆震,“氣阻”燃油供應(yīng)中斷,功率下降,潤(rùn)滑油粘度降低潤(rùn)滑不良等故障現(xiàn)象。道路的好壞直接影響汽車的壽命,如果汽車在不良的道路上行駛。容易使汽車發(fā)生故障。例如:汽車在崎嶇不平的道路上行駛,由于行駛速度需要經(jīng)常變化,換檔次數(shù)頻繁,離合器分離和結(jié)合次數(shù)增加,加劇摩擦片的磨損和壓盤彈簧的疲
30、勞;制動(dòng)次數(shù)增多,加劇制動(dòng)蹄片與制動(dòng)鼓磨損;爬坡時(shí)間長(zhǎng),潤(rùn)滑油溫度升高,粘度變小,潤(rùn)滑不良,各部機(jī)件磨損,同時(shí)輪胎也會(huì)加快磨損;在凹凸不平的道路上行駛,會(huì)引起汽車振動(dòng),使懸架裝置和支承機(jī)件受到?jīng)_擊載荷,導(dǎo)致車架等機(jī)件變形或者斷裂,造成汽車機(jī)械性能損壞。汽油質(zhì)量的優(yōu)劣,是對(duì)汽油的蒸發(fā)性、抗爆性、膠質(zhì)含量、酸、堿、硫含量、機(jī)械雜質(zhì)和水分等指標(biāo)的評(píng)價(jià)。汽油質(zhì)量的好壞,直接影響發(fā)動(dòng)機(jī)的正常運(yùn)轉(zhuǎn)和壽命。汽車行駛的時(shí)候,各連接部件產(chǎn)生相對(duì)運(yùn)動(dòng),必然引起磨損。為了減少磨損,延長(zhǎng)機(jī)件使用壽命,要求兩配合機(jī)件表面間需要有良好的潤(rùn)滑油作介質(zhì),將摩擦表面隔離,形成液體摩擦。如果潤(rùn)滑油油質(zhì)低劣,便不能形成好的潤(rùn)滑油膜
31、,會(huì)引起機(jī)件加速磨損。因此,對(duì)潤(rùn)滑油有一定的質(zhì)量要求。3.2 汽車故障的特性汽車故障具有如下特性:(1)層次性:是故障的“縱向性”,由系統(tǒng)的結(jié)構(gòu)的層次性所決定。任何故障都是與系統(tǒng)的某一層次相聯(lián)系的,高層次故障可以由低層次的故障所引起,而低層次故障必定引起高層次故障。(2)相關(guān)性:這是故障的“橫向性”,是由系統(tǒng)各元素之間的聯(lián)系所決定的。某個(gè)子系統(tǒng)的故障常常是與之相關(guān)的子系統(tǒng)或者下一級(jí)子系統(tǒng)故障傳播所至,從而表現(xiàn)出相關(guān)性。故障傳播途徑的不唯一,又引起了多故障并存。(3)時(shí)間性:系統(tǒng)故障的產(chǎn)生與表現(xiàn)于時(shí)間有關(guān),從原發(fā)性故障到系統(tǒng)級(jí)故障的發(fā)生、發(fā)展及形成,是一個(gè)由量變到質(zhì)變的過(guò)程。這一特性提示人們,故
32、障可以早期預(yù)測(cè)、診斷,達(dá)到“防患于未然”的目的。(4)不確定性:使系統(tǒng)故障的一個(gè)重要特性,具有模糊性和隨機(jī)性兩種特征。引起故障不確定性的因素有很多方面,如系統(tǒng)的元素特性和聯(lián)系特性的不確定性、狀態(tài)描述方法與工作環(huán)境的不確定性等等。復(fù)雜系統(tǒng)診斷問(wèn)題的不確定性,是基于知識(shí)的診斷推理的一個(gè)重要研究?jī)?nèi)容。3.3 本章小結(jié)本章主要分析了專家系統(tǒng)的研究對(duì)象:汽車的故障。詳細(xì)分析汽車故障,了解故障產(chǎn)生的原因、背景以及特點(diǎn),有助于更好的建立汽車故障診斷的知識(shí)庫(kù)和相關(guān)的推理策略。4. 汽車故障診斷專家系統(tǒng)設(shè)計(jì)與開發(fā)4.1 汽車故障診斷專家系統(tǒng)的一般結(jié)構(gòu)開發(fā)這樣一個(gè)系統(tǒng),首先需要將汽車維修領(lǐng)域?qū)<业拇罅繉?shí)際維修經(jīng)驗(yàn)
33、進(jìn)行匯總和提煉,編成知識(shí)庫(kù),構(gòu)成專家系統(tǒng)的核心部分;其次需要建立推理機(jī),推理機(jī)可根據(jù)用戶提供的故障跡象或異?,F(xiàn)象,利用知識(shí)庫(kù)中的知識(shí),按一定推理策略進(jìn)行推理,進(jìn)而得出診斷結(jié)果。專家系統(tǒng)結(jié)構(gòu)一般包括6部分:知識(shí)庫(kù)、推理機(jī)、綜合數(shù)據(jù)庫(kù)、人機(jī)接口、解釋程序和知識(shí)庫(kù)獲取程序,該專家系統(tǒng)的結(jié)構(gòu)如圖所示6。人 機(jī) 接 口專 家用 戶推理機(jī)知識(shí)庫(kù)獲取程序解釋程序綜合數(shù)據(jù)庫(kù)知識(shí)庫(kù)圖1. 專家系統(tǒng)一般結(jié)構(gòu)4.2 基于delphi的汽車故障診斷專家系統(tǒng)的特點(diǎn)基于delphi7.0開發(fā)的本故障診斷專家系統(tǒng)能滿足如下要求:(1)有良好的擴(kuò)充性;(2)易于發(fā)布,容量不能過(guò)大,即知識(shí)庫(kù)中的素材不能占用過(guò)大存儲(chǔ)空間;(3)
34、人機(jī)交互,便于操作使用;(4)高效的推理策略,完善的數(shù)據(jù)庫(kù)和圖像庫(kù)。(5)數(shù)據(jù)庫(kù)是在dbms(數(shù)據(jù)庫(kù)管理系統(tǒng))集中管理下,具有較高的數(shù)據(jù)獨(dú)立性,較少的冗余,并且相互間有聯(lián)系的文件集合7。它不僅能反映數(shù)據(jù)的本身,而且能夠反映數(shù)據(jù)之間的聯(lián)系,在多個(gè)表的之間進(jìn)行操作。數(shù)據(jù)庫(kù)還具有數(shù)據(jù)獨(dú)立性,數(shù)據(jù)安全性,數(shù)據(jù)完整性,集中管理,控制冗余等。利用數(shù)據(jù)庫(kù)構(gòu)建專家系統(tǒng)的知識(shí)庫(kù),具有存儲(chǔ)規(guī)則多,查詢方便、快捷,且便于維護(hù)。在系統(tǒng)的應(yīng)用程序開發(fā)過(guò)程中,主要采用分模塊開發(fā)的調(diào)用程序結(jié)構(gòu),使其便于集體開發(fā)和軟件功能的擴(kuò)展。其總體結(jié)構(gòu)方框圖如圖2 所示。圖2. 總體結(jié)構(gòu)方案圖主菜單規(guī)則故障診斷實(shí)例故障診斷知識(shí)庫(kù)輔助系統(tǒng)
35、發(fā)動(dòng)機(jī)系統(tǒng)底盤系統(tǒng)電器設(shè)備系統(tǒng)規(guī)則庫(kù)實(shí)例庫(kù)系統(tǒng)介紹使用說(shuō)明發(fā)動(dòng)機(jī)系統(tǒng)底盤系統(tǒng)電器設(shè)備系統(tǒng)4.3 故障診斷專家系統(tǒng)各模塊的建立4.3.1 故障診斷模塊故障診斷是專家系統(tǒng)的重要組成部分,直接影響到用戶對(duì)專家系統(tǒng)使用和維護(hù)的方便以及其功能的發(fā)揮。因此,構(gòu)建該專家系統(tǒng)的時(shí)候,將以用戶使用的簡(jiǎn)便性、可操作性為目標(biāo),針對(duì)這一要求,選用了可視化編程語(yǔ)言object pascal來(lái)編制程序。該專家系統(tǒng)將充分體現(xiàn)人性化,是圖文并茂的完全診斷手冊(cè),在診斷中,配以相應(yīng)的實(shí)物原形圖來(lái)表示故障發(fā)生的具體部位以及維修使用的工具,并用相應(yīng)的文字說(shuō)明,讓使用維修人員能夠很快地識(shí)別,做出反應(yīng)。其用戶界面友好、靈活,由彈出菜單和
36、屏幕菜單回答系統(tǒng)來(lái)實(shí)現(xiàn),數(shù)據(jù)輸入根據(jù)屏幕提出的問(wèn)題由鍵盤響應(yīng)來(lái)回答。該模塊以人機(jī)對(duì)話的方式搜索用戶所掌握的故障線索,模仿維修專家的診斷思路進(jìn)行推理,進(jìn)而一步步找出故障部件及原因,其診斷流程框圖如圖3所示。根據(jù)汽車的具體情況將診斷模塊分為三個(gè)部分,即發(fā)動(dòng)機(jī)系統(tǒng)、底盤系統(tǒng)、電器設(shè)備系統(tǒng)。故障現(xiàn)象選擇屏幕提示用戶回答是否找到故障原因推理分析診斷報(bào)告ny圖3. 診斷流程圖以發(fā)動(dòng)機(jī)系統(tǒng)為例,在建立發(fā)動(dòng)機(jī)不能發(fā)動(dòng)診斷子模塊時(shí),針對(duì)其故障特點(diǎn),采用了較形象的樹狀圖示診斷方案。當(dāng)進(jìn)行診斷時(shí),系統(tǒng)根據(jù)用戶對(duì)詢問(wèn)的回答確定下一步顯示的樹枝,直到診斷進(jìn)行到樹葉(找出故障原因)為止保存。此時(shí),預(yù)覽診斷按鈕由失效變?yōu)榭?/p>
37、用(未診斷完則為失效狀態(tài)),按下去后可彈出診斷報(bào)告屏幕,其人機(jī)界面見圖4。(a) 故障診斷界面(b)診斷報(bào)告界面發(fā)動(dòng)機(jī)不能發(fā)動(dòng)有著車現(xiàn)象無(wú)著車現(xiàn)象確定起動(dòng)困難此項(xiàng)目正常繼續(xù)診斷保存診斷結(jié)果預(yù)覽診斷報(bào)告診斷報(bào)告界面(c)故障診斷流程圖圖4 故障診斷界面及流程圖逐步尋找故障零部件此故障現(xiàn)象的原因及排除方案按返回按鈕繼續(xù)診斷單選故障現(xiàn)象相應(yīng)代碼如下:procedure tfdesform.sure4_buttonclick(sender: tobject);/確定按鈕響應(yīng)事件beginshow4_edit.text:=發(fā)動(dòng)機(jī)不能啟動(dòng),+ radiogroup1.itemsradiogroup1.it
38、emindex;table1.active:=true;/數(shù)據(jù)庫(kù)表1生效table1.first;continue4_button.enabled:=true;/此項(xiàng)目正常繼續(xù)診斷按鈕可用save4_button.enabled:=true;i:=1;case radiogroup1.itemindex of1: table1.moveby(1);2: table1.moveby(3);end;end;procedure tfdesform.continue4_buttonclick(sender: tobject);/ 此項(xiàng)目正常繼續(xù)診斷按鈕響應(yīng)事件beginsave4_button.ena
39、bled:=true;case radiogroup1.itemindex of0: begin if i2 then table1.next else continue4_button.enabled:=false; end;1: begin if i3 then table1.next else continue4_button.enabled :=false; end;2:begin if i6 then table1.next else continue4_button.enabled:=false; end;end;i:=i+1;end;procedure tfdesform.sav
40、e4_buttonclick(sender: tobject);/保存此診斷結(jié)果按鈕的響應(yīng)事件beginmemo1.linesa:=(故障現(xiàn)象: + show4_edit.text +#13#10+ 故障原因:+dbmemo1.lines0+dbmemo1.lines1+ dbmemo1.lines2+dbmemo1.lines3+dbmemo1.lines4+ #13#10+排除方法:+dbmemo2.lines0+dbmemo2.lines1+ dbmemo2.lines2+dbmemo2.lines3+dbmemo2.lines4+ dbmemo2.lines5+dbmemo2.line
41、s6);save4_button.enabled:=false;/ 保存此診斷結(jié)果按鈕失效preview4_button.enabled:=true;/預(yù)覽診斷報(bào)告按鈕生效a:=a+8;end;(1)診斷軟件設(shè)計(jì)中的難點(diǎn)分析實(shí)現(xiàn)此故障樹診斷法,首先在表單上畫好所有的樹狀圖,然后根據(jù)每個(gè)按鈕、詢問(wèn)文件之間的邏輯關(guān)系,編寫按下此按鈕時(shí)要執(zhí)行的動(dòng)作(onclick屬性)。(2)錯(cuò)選反悔功能的設(shè)計(jì)有時(shí),當(dāng)用戶按確定按鈕后,在已顯示出了相應(yīng)的診斷內(nèi)容后,發(fā)現(xiàn)選錯(cuò)了,反悔并回過(guò)來(lái)按下其上一級(jí)或上幾級(jí)的某個(gè)按鈕。系統(tǒng)必須允許這種錯(cuò)誤的發(fā)生,并實(shí)現(xiàn)他的要求,即在每個(gè)按鈕的onclick屬性內(nèi)加入一些語(yǔ)句,使除
42、了應(yīng)該顯示的內(nèi)容enabled:=true(可見)外,其余對(duì)象的屬性均變回enabled:=false(不可見),這就需要逐條的控制每一對(duì)象。用戶在診斷過(guò)程中,允許實(shí)現(xiàn)瀏覽功能。診斷完畢后還允許對(duì)診斷報(bào)告進(jìn)行修改,以得到最佳的診斷效果。診斷過(guò)程中,以單擊保存診斷結(jié)果將所對(duì)應(yīng)的內(nèi)容作為一個(gè)記錄保存在診斷報(bào)告中,診斷完畢后即完成一份完整的診斷報(bào)告。當(dāng)對(duì)某一次診斷結(jié)果的保存有誤,允許執(zhí)行取消命令取消單次的保存結(jié)果,也可在診斷報(bào)告界面進(jìn)行人工修改。取消按鈕的代碼:procedure tfdesform.concel4_buttonclick(sender: tobject);beginfor n:=a
43、 downto a-8 domemo1.lines n:=;a:=a-8 ;end;4.3.2 故障診斷知識(shí)庫(kù)的建立該汽車故障診斷專家系統(tǒng)采用融合實(shí)例(case)與規(guī)則(rule)的推理方法,為更好地對(duì)知識(shí)庫(kù)進(jìn)行管理和維護(hù),把知識(shí)庫(kù)分成2部分:實(shí)例庫(kù)和規(guī)則庫(kù)。其中實(shí)例庫(kù)是指以前曾成功解決過(guò)的問(wèn)題或案例。結(jié)合汽車結(jié)構(gòu)特點(diǎn),將實(shí)例庫(kù)分為3個(gè)子庫(kù):發(fā)動(dòng)機(jī)庫(kù)、底盤庫(kù)以及汽車電器庫(kù)。每一個(gè)子庫(kù)又劃分為若干個(gè)小塊,每一小塊對(duì)應(yīng)一張表。如可將汽車發(fā)動(dòng)機(jī)部分劃分為:發(fā)動(dòng)機(jī)不能發(fā)動(dòng)、發(fā)動(dòng)機(jī)怠速不良、發(fā)動(dòng)機(jī)無(wú)力、發(fā)動(dòng)機(jī)溫度油耗異常、發(fā)動(dòng)機(jī)異響這5塊。所以,汽車發(fā)動(dòng)機(jī)子庫(kù)包含5張表,每張表記錄了該塊的所有故障診斷實(shí)
44、例。每個(gè)診斷實(shí)例看作是一條記錄,診斷實(shí)例所需要的參數(shù)為一個(gè)字段,具體的實(shí)例表示方法如表1所示。表1. 發(fā)動(dòng)機(jī)不能發(fā)動(dòng)的實(shí)例表enginestart車型故障現(xiàn)象故障原因排除方法圖片1桑塔納2000(時(shí)代超人)起動(dòng)機(jī)運(yùn)轉(zhuǎn)正常,但不能著車汽油泵不運(yùn)轉(zhuǎn)拆下汽油泵分解檢查,泵線圈燒毀,更換。規(guī)則是表達(dá)由一定的前提推出確定的結(jié)論的知識(shí),故障診斷中的規(guī)則一般都是領(lǐng)域?qū)<覐拈L(zhǎng)期的實(shí)踐經(jīng)驗(yàn)中得出的規(guī)律性的結(jié)論。規(guī)則的一般形式是if x then y其中x表示前提,y表示結(jié)論,如同實(shí)例庫(kù)一樣,規(guī)則庫(kù)也分為發(fā)動(dòng)機(jī)、底盤和電器3 部分,每一部分又劃分為若干塊,每一塊對(duì)應(yīng)一個(gè)規(guī)則表,規(guī)則采用表2的形式記錄。表2. 發(fā)動(dòng)
45、機(jī)怠速不良的規(guī)則表idleengine故障現(xiàn)象故障原因排除方法規(guī)則率1怠速不穩(wěn)1、電控系統(tǒng)異常檢查怠速控制電機(jī)及電位計(jì)是否異常。正常則在游車狀態(tài)下,觀察節(jié)氣門是否能進(jìn)行反饋調(diào)節(jié),能說(shuō)明怠速控制系統(tǒng)正常。用傳感器模擬測(cè)試儀模擬空氣流量計(jì),如怠速不穩(wěn)現(xiàn)象消失,則更換空氣流量計(jì)。0.822、進(jìn)氣管漏氣進(jìn)氣管處加裝壓力計(jì)和增壓器,給進(jìn)氣管加氣增壓到25pa,保持一段時(shí)間后,觀察其是否有下降趨勢(shì),有則說(shuō)明漏氣。仔細(xì)檢查其漏氣位置,針對(duì)不同位置采取不同的補(bǔ)救方案。 知識(shí)庫(kù)的基本管理知識(shí)庫(kù)的管理是汽車故障診斷專家系統(tǒng)的重要組成部分,故障診斷專家系統(tǒng)運(yùn)行過(guò)程中所需要的知識(shí)都是由知識(shí)庫(kù)來(lái)提供的,
46、系統(tǒng)的推理、決策都是圍繞著運(yùn)用知識(shí)庫(kù)中存儲(chǔ)的知識(shí)進(jìn)行匹配、決策、歸納、演算等操作,從而得到最終結(jié)果8。因此,從某種意義上來(lái)說(shuō),知識(shí)庫(kù)建造的好壞直接影響到整個(gè)汽車故障診斷專家系統(tǒng)是否成功,而構(gòu)造高效、完善的知識(shí)庫(kù)將會(huì)對(duì)整個(gè)汽車故障診斷專家系統(tǒng)性能的提高起到非常重要的作用。其編輯故障實(shí)例界面見圖5:圖5 編輯故障實(shí)例界面(1)知識(shí)的檢驗(yàn)管理正確性檢驗(yàn):主要是對(duì)故障診斷知識(shí)庫(kù)中的知識(shí)進(jìn)行語(yǔ)法檢查,對(duì)語(yǔ)法檢查不合格的記錄,將其狀態(tài)設(shè)為不激活狀態(tài)。為實(shí)現(xiàn)對(duì)知識(shí)庫(kù)中不合法的知識(shí)進(jìn)行檢驗(yàn),本系統(tǒng)采用sql設(shè)計(jì)的關(guān)系數(shù)據(jù)庫(kù)中的觸發(fā)器在新知識(shí)增加時(shí)自動(dòng)、及時(shí)地檢驗(yàn)知識(shí)的合法性,保證了將這些錯(cuò)誤消除在萌發(fā)階段。多
47、義性檢驗(yàn):對(duì)規(guī)則庫(kù)中的規(guī)則來(lái)說(shuō),當(dāng)已經(jīng)給出完備的規(guī)則前提時(shí)應(yīng)得到唯一的結(jié)論。如果知識(shí)庫(kù)中存在前提相同而結(jié)論不同的規(guī)則就出現(xiàn)了多義性的錯(cuò)誤。當(dāng)發(fā)現(xiàn)此類錯(cuò)誤后,知識(shí)庫(kù)管理系統(tǒng)將這些記錄提交給領(lǐng)域?qū)<疫M(jìn)行處理。冗余檢驗(yàn):是檢查知識(shí)庫(kù)中是否存在完全相同或非常相似的記錄,特別是在規(guī)則庫(kù)中要檢查是否存在結(jié)論相同而規(guī)則前提中除有些條件互反外其余的條件都相同或等價(jià)的規(guī)則。如有,則將這些知識(shí)進(jìn)行合并,消除知識(shí)冗余。(2)知識(shí)的存入知識(shí)的存儲(chǔ)是將經(jīng)過(guò)領(lǐng)域?qū)<艺J(rèn)可的知識(shí)輸入到知識(shí)庫(kù)中去,在輸入知識(shí)前,須明確將知識(shí)添加到知識(shí)庫(kù)中哪張表中去。通過(guò)選擇知識(shí)庫(kù)里設(shè)定的索引機(jī)制進(jìn)入該表的操作界面,點(diǎn)擊輸入子菜單即可對(duì)知識(shí)進(jìn)行
48、輸入。本系統(tǒng)在編輯故障實(shí)例界面中添加按鈕即對(duì)知識(shí)的存入,在知識(shí)的存入之前要判斷此實(shí)例屬發(fā)動(dòng)機(jī)系統(tǒng)、底盤系統(tǒng)、電器設(shè)備系統(tǒng)中那類故障,進(jìn)入該界面后只有故障類型選擇是可用,其他按鈕處于無(wú)效狀態(tài),選擇了故障類型即選擇將實(shí)例添加到知識(shí)庫(kù)相應(yīng)的表中。實(shí)現(xiàn)這一功能的代碼:procedure tfdesform.combobox4change(sender: tobject);begintable7.active :=false;case combobox4.itemindex of0:table7.tablename :=e:delphidatabase desktopenginecase.db;1:ta
49、ble7.tablename :=e:delphidatabase desktopchassiscase.db;2:table7.tablename :=e:delphidatabase desktopwiringcase.db;end;table7.active :=true;modify_button.enabled :=true;delete_button.enabled :=true;add_button.enabled :=true;end;(3)知識(shí)的修改和刪除若發(fā)現(xiàn)一些知識(shí)誤差很大或錯(cuò)誤很多,可選擇要?jiǎng)h除或修改的記錄,再點(diǎn)擊刪除或修改按鈕。本系統(tǒng)中利用dbnavigator控件對(duì)
50、相應(yīng)的實(shí)例表進(jìn)行瀏覽,發(fā)現(xiàn)錯(cuò)誤或需修改的記錄時(shí),點(diǎn)擊刪除或修改按鈕,如有操作失誤可選擇取消按鈕;各按鈕相應(yīng)代碼:procedure tfdesform.add_buttonclick(sender: tobject);/添加按鈕響應(yīng)事件begintable7.append ;modify_button.enabled :=false;delete_button.enabled :=false;ok_button.enabled :=true;cancel_button.enabled :=true;end;procedure tfdesform.modify_buttonclick(sende
51、r: tobject); /修改按鈕響應(yīng)事件begintable7.edit ;add_button.enabled :=false;delete_button.enabled :=false;ok_button.enabled :=true;cancel_button.enabled :=true;end;procedure tfdesform.delete_buttonclick(sender: tobject); /刪除按鈕響應(yīng)事件begintable7.delete ;modify_button.enabled :=false;add_button.enabled :=false;ok
52、_button.enabled :=true;cancel_button.enabled :=true;end;procedure tfdesform.cancel_buttonclick(sender: tobject); /取消按鈕響應(yīng)事件begintable7.cancel;modify_button.enabled :=true;delete_button.enabled :=true;add_button.enabled :=true;end;procedure tfdesform.ok_buttonclick(sender: tobject); /確定按鈕響應(yīng)事件begintabl
53、e7.edit;table7.post;/知識(shí)表刷新modify_button.enabled :=true;delete_button.enabled :=true;add_button.enabled :=true;end;4.3.4 知識(shí)庫(kù)檢索模塊知識(shí)庫(kù)部分是整個(gè)系統(tǒng)的知識(shí)源,是系統(tǒng)最重要的組成部分之一。根據(jù)汽車知識(shí)極其龐大而復(fù)雜的特點(diǎn)。與知識(shí)庫(kù)模塊相應(yīng)的工作界面也采用了交互式的關(guān)聯(lián)調(diào)用方式。各工作界面對(duì)應(yīng)相應(yīng)的知識(shí)庫(kù),又相互可調(diào)用。由于采用了結(jié)構(gòu)化編程,既增加了系統(tǒng)的靈活性,也使整個(gè)系統(tǒng)更為層次分明。整個(gè)工作界面網(wǎng)絡(luò)如圖6所示,整個(gè)系統(tǒng)的工作環(huán)境是一個(gè)相互連接的網(wǎng)狀結(jié)構(gòu),在這個(gè)工作界面
54、網(wǎng)絡(luò)中,用戶可以簡(jiǎn)單的在各個(gè)部分?jǐn)?shù)據(jù)中跳轉(zhuǎn),而無(wú)須自己關(guān)心所在的數(shù)據(jù)庫(kù)層次,同時(shí),各知識(shí)界面均與檢索界面、打印界面緊密連接,數(shù)據(jù)獲取更方便快捷。圖6 整體界面工作網(wǎng)絡(luò)圖整體界面軟件簡(jiǎn)介故障診斷編輯故障實(shí)例編輯診斷報(bào)告規(guī)則故障診斷故障實(shí)例診斷電氣設(shè)備故障底盤故障發(fā)動(dòng)機(jī)系統(tǒng)發(fā)動(dòng)機(jī)溫度油耗異常發(fā)動(dòng)機(jī)怠速不良發(fā)動(dòng)機(jī)不能起動(dòng)發(fā)動(dòng)機(jī)無(wú)力發(fā)動(dòng)機(jī)異響電氣設(shè)備故障底盤故障發(fā)動(dòng)機(jī)系統(tǒng)保存在相應(yīng)的庫(kù)中知識(shí)檢索模塊是整個(gè)系統(tǒng)的一個(gè)中心環(huán)節(jié)。因?yàn)椋饬恳粋€(gè)知識(shí)庫(kù)系統(tǒng)是否成功,很大程度上決定于其檢索功能的快速性、完善性。根據(jù)汽車數(shù)據(jù)記錄條目量大、數(shù)據(jù)字段數(shù)多、字段占用字節(jié)量大的特點(diǎn),汽車數(shù)據(jù)庫(kù)系統(tǒng)采用了視圖檢索的新方式。
55、通過(guò)工作界面獲取檢索條件,以參數(shù)形式傳遞給視圖,利用視圖進(jìn)行檢索,再由視圖生成檢索結(jié)果的臨時(shí)數(shù)據(jù)表。將臨時(shí)數(shù)據(jù)表映射到檢索界面中,實(shí)現(xiàn)檢索結(jié)果的顯示。這種方式使用了結(jié)構(gòu)化查詢sql方式的視圖檢索,檢索條件的傳輸與判別較為簡(jiǎn)易,并且,在系統(tǒng)中還利用了視圖的臨時(shí)表可發(fā)送更新性質(zhì),增加了檢索結(jié)果編輯功能9。用戶可先利用檢索界面檢索到所需的數(shù)據(jù)記錄,并利用該功能對(duì)數(shù)據(jù)進(jìn)行修改,發(fā)送到原數(shù)據(jù)表中,更好的實(shí)現(xiàn)數(shù)據(jù)管理。4.3.5 推理機(jī)制推理機(jī)制是應(yīng)用知識(shí)的關(guān)鍵,一般推理機(jī)制要求達(dá)到:1根據(jù)環(huán)境選擇可用的知識(shí);2正確應(yīng)用知識(shí);3當(dāng)推理受阻時(shí),能有效地解決問(wèn)題;4能恰當(dāng)?shù)亟K止推理過(guò)程。在上述技術(shù)的基礎(chǔ)上,設(shè)計(jì)了本系統(tǒng)的推理機(jī)制。問(wèn)題提交有2種方式:通過(guò)人機(jī)交互,由維修人員選擇汽車故障信息,提交給系統(tǒng)處理;由數(shù)據(jù)驅(qū)動(dòng),即系統(tǒng)在不斷地檢測(cè)汽車維修電子檔案系統(tǒng)中的數(shù)據(jù),與正常數(shù)據(jù)進(jìn)行比較,一旦發(fā)現(xiàn)異常,則啟動(dòng)推理機(jī),根據(jù)當(dāng)前數(shù)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 《快速成型技術(shù)B》教學(xué)大綱
- 《新能源材料A》教學(xué)大綱
- 教科版六年級(jí)科學(xué)上冊(cè)電子教案
- 健康教育五年級(jí)上冊(cè)教案
- 玉溪師范學(xué)院《通信原理實(shí)驗(yàn)》2022-2023學(xué)年第一學(xué)期期末試卷
- 化學(xué)配平質(zhì)量守恒燃燒教案
- 年度財(cái)務(wù)報(bào)表附注模板-財(cái)務(wù)管理
- 2024年粘膠纖維項(xiàng)目成效分析報(bào)告
- 2024屆河北省新高三下學(xué)期第二次質(zhì)量檢測(cè)試題(數(shù)學(xué)試題)
- 二年級(jí)第十七課心理健康教育《學(xué)會(huì)觀察》教學(xué)設(shè)計(jì)改
- GB/T 16491-1996電子式萬(wàn)能試驗(yàn)機(jī)
- 運(yùn)輸公司系統(tǒng)平臺(tái)建設(shè)、維護(hù)及管理制度
- 第七章 歐拉方程
- 五大領(lǐng)域教學(xué)法(課堂PPT)
- 數(shù)控車床編程基本學(xué)習(xí)培訓(xùn)課件
- 如何說(shuō)孩子才會(huì)聽課件
- 《沏茶問(wèn)題》課件
- 習(xí)作:我們眼中的繽紛世界2套(部編版三上)課件
- 貴州·貴陽(yáng)·山水黔城
- 小學(xué)生血液知識(shí)講座課件
- 小講課-中心靜脈壓的測(cè)量及臨床意義
評(píng)論
0/150
提交評(píng)論