數(shù)控機(jī)床常見(jiàn)故障診斷專(zhuān)家系統(tǒng)的開(kāi)發(fā)與設(shè)計(jì)研究
本文研究數(shù)控機(jī)床常見(jiàn)故障診斷專(zhuān)家系統(tǒng)的開(kāi)發(fā)與設(shè)計(jì)思路。運(yùn)用故障樹(shù)分析法FTA(Fault Tree Analysis)建立數(shù)控機(jī)床主要故障部位的故障樹(shù),通過(guò)Access建立故障數(shù)據(jù)庫(kù),并采用Visual Basic 6.0來(lái)開(kāi)發(fā)設(shè)計(jì)數(shù)控機(jī)床故障診斷系統(tǒng),可為機(jī)床故障診斷與維修提供幫助。
數(shù)控機(jī)床故障診斷的必要性
數(shù)控機(jī)床故障,就是數(shù)控機(jī)床全部或者部分喪失了規(guī)定的功能。由于數(shù)控系統(tǒng)種類(lèi)繁多、功能增強(qiáng)、形式多樣,同時(shí)涉及電子、機(jī)械、液壓、氣動(dòng)和光學(xué)多個(gè)方面,給維修和診斷帶來(lái)了許多困難。一旦發(fā)生故障,專(zhuān)業(yè)技術(shù)人員很難在短時(shí)間內(nèi)判斷出故障原因,更難以排除和維修,給加工生產(chǎn)帶來(lái)很多不便。如何在較短的時(shí)間里對(duì)數(shù)控機(jī)床所發(fā)生的故障做出準(zhǔn)確判斷,查明故障部位,找出故障原因和排除方法,是數(shù)控機(jī)床故障診斷研究的重點(diǎn)〔1〕。
系統(tǒng)作故障檢測(cè)和診斷的最終目的是使系統(tǒng)能長(zhǎng)期可靠工作。由于新技術(shù)廣泛使用,系統(tǒng)規(guī)模越來(lái)越大,人們對(duì)可靠性問(wèn)題的重視也與日俱增。可以這么認(rèn)為:沒(méi)有故障診斷,就沒(méi)有可靠性,就沒(méi)有自動(dòng)化〔2〕。
數(shù)控機(jī)床故障診斷方法
數(shù)控機(jī)床廣泛應(yīng)用以來(lái),故障診斷與排除方法一直受到關(guān)注,也探索出許多故障診斷方法。國(guó)內(nèi)外已將一些新的概念和方法引入到診斷領(lǐng)域。1990年Majstorvic對(duì)診斷與維修專(zhuān)家系統(tǒng)進(jìn)行了總結(jié)、評(píng)論,剖析并列舉了典型的維修專(zhuān)家系統(tǒng)和它們的應(yīng)用范圍。Tor Guimaraes在分析了機(jī)床專(zhuān)家系統(tǒng)需求、實(shí)例后,提出了設(shè)計(jì)建立機(jī)床專(zhuān)家系統(tǒng)的成功因素,這些研究使故障診斷技術(shù)突破傳統(tǒng)的故障診斷方法,以知識(shí)和經(jīng)驗(yàn)為基礎(chǔ)的智能檢測(cè)和診斷技術(shù)已經(jīng)得到重視和應(yīng)用,一種能為機(jī)床維修、操作人員提供幫助的故障診斷專(zhuān)家系統(tǒng)應(yīng)運(yùn)而生。
利用專(zhuān)家系統(tǒng)和數(shù)據(jù)庫(kù)技術(shù)設(shè)計(jì)數(shù)控機(jī)床故障診斷系統(tǒng),可為現(xiàn)場(chǎng)技術(shù)維修人員快速完成故障定位并進(jìn)行故障維修提供幫助。
故障樹(shù)分析法表達(dá)數(shù)控機(jī)床的故障
故障樹(shù)分析法FTA
故障樹(shù)分析法(FTA)是研究引起系統(tǒng)發(fā)生故障這一事件的各種直接或間接的原因,在這些原因間建立邏輯關(guān)系,并用邏輯框圖表示的一種方法〔1〕。故障樹(shù)以圖形化的方式表示一個(gè)系統(tǒng)內(nèi)故障或其它事件之間的交互關(guān)系。
基于FTA數(shù)控機(jī)床故障表達(dá)實(shí)例
以某數(shù)控機(jī)床自動(dòng)換刀裝置(ATC)的“刀庫(kù)與機(jī)械手故障”為分析對(duì)象,介紹故障樹(shù)分析方法在數(shù)控機(jī)床故障診斷中的應(yīng)用。
本例中的頂事件T為“刀庫(kù)與機(jī)械手故障”。
中間事件:S1-刀套不能夾緊刀具;S2-刀庫(kù)不能旋轉(zhuǎn);S3-刀具脫落;S4-換刀時(shí)掉刀;S5-換刀速度不正常;S6-液壓故障;S7-氣壓故障。底事件X1、X2為導(dǎo)致S1發(fā)生的原因事件;X3為導(dǎo)致S2發(fā)生的原因事件;X4-X6為導(dǎo)致S3發(fā)生的原因事件;X7-X9為導(dǎo)致S4發(fā)生的原因事件;X10-X13為導(dǎo)致S5發(fā)生的原因事件(圖1)。

按照故障發(fā)生的部位建立故障數(shù)據(jù)表,包括數(shù)控系統(tǒng)、主軸系統(tǒng)、進(jìn)給系統(tǒng)、伺服系統(tǒng)、PLC、機(jī)械結(jié)構(gòu)等,根據(jù)故障發(fā)生的現(xiàn)象初步判定故障發(fā)生的部位,選擇對(duì)應(yīng)的故障現(xiàn)象,分析該故障現(xiàn)象可能發(fā)生的故障原因,得出相應(yīng)的處理方法,逐步排除,縮小故障發(fā)生的原因,最終確定故障發(fā)生的原因,找到故障處理方法〔3〕。故障原因表的結(jié)構(gòu)見(jiàn)表1。
故障樹(shù)分析法與診斷專(zhuān)家系統(tǒng)之間的聯(lián)系
從診斷專(zhuān)家系統(tǒng)和故障樹(shù)的產(chǎn)生和作用來(lái)看,二者是有一定的聯(lián)系的〔4〕。故障樹(shù)是圖形化的用于可靠性分析和故障診斷的系統(tǒng)故障模型,而診斷專(zhuān)家系統(tǒng)的任務(wù)是當(dāng)系統(tǒng)失效時(shí)綜合利用各種診斷信息,依據(jù)知識(shí)庫(kù)中的知識(shí),通過(guò)推理確定系統(tǒng)的故障模式,找出故障源和故障原因,并給出排除故障的方法和建議。
通過(guò)運(yùn)用故障樹(shù)分析法對(duì)所建的故障樹(shù)進(jìn)行定性分析,將簡(jiǎn)化的等效故障樹(shù)用于專(zhuān)家系統(tǒng)知識(shí)庫(kù)的建立,不僅可以解決診斷知識(shí)獲取的難題,而且可以簡(jiǎn)化知識(shí)庫(kù),降低冗余,便于推理機(jī)制的實(shí)現(xiàn)。
通過(guò)利用故障樹(shù)來(lái)形成專(zhuān)家系統(tǒng)的這一方法不僅結(jié)構(gòu)簡(jiǎn)單,而且所需投資小,這種形式的專(zhuān)家系統(tǒng)在工廠企業(yè)中得到廣泛應(yīng)用。
故障診斷系統(tǒng)及其實(shí)現(xiàn)
系統(tǒng)需求分析
數(shù)控機(jī)床故障診斷就是鑒別數(shù)控機(jī)床的技術(shù)狀態(tài)是否正常,發(fā)現(xiàn)并確定故障的部位和性質(zhì),尋找故障起因,得出相應(yīng)的診斷結(jié)論并給出維修建議。
故障診斷就是將診斷知識(shí),按照一定的推理算法,通過(guò)人機(jī)接口的形式讓用戶(hù)與計(jì)算機(jī)進(jìn)行對(duì)話,由用戶(hù)回答系統(tǒng)提出的問(wèn)題,系統(tǒng)根據(jù)提問(wèn)和回答的答案進(jìn)行推理,并最終給出專(zhuān)家級(jí)的診斷結(jié)論。故障診斷原理示意圖如圖2所示。
數(shù)據(jù)需求分析
數(shù)控機(jī)床故障診斷系統(tǒng)應(yīng)提供的故障診斷信息盡可能多,且要有一定的類(lèi)別分類(lèi),以利于信息的檢索和查詢(xún)。經(jīng)過(guò)權(quán)衡和考慮,將故障診斷信息存放在“診斷系統(tǒng)數(shù)據(jù)庫(kù)”中,包含故障原因和故障現(xiàn)象兩個(gè)數(shù)據(jù)表。
數(shù)控機(jī)床故障原因信息:故障現(xiàn)象、檢查步驟、故障原因、排除方法、關(guān)鍵字等。
故障現(xiàn)象信息:類(lèi)別編號(hào)、故障類(lèi)別、故障現(xiàn)象等。
數(shù)據(jù)處理是對(duì)故障診斷基本信息的添加、修改、刪除和查詢(xún)等操作,主要為數(shù)控機(jī)床故障診斷提供數(shù)據(jù)支持,同時(shí)要保證大量數(shù)據(jù)的正確存貯與操作。
功能需求分析
數(shù)控機(jī)床故障診斷是一項(xiàng)實(shí)用性強(qiáng)的工作,應(yīng)充分考慮機(jī)床故障診斷的實(shí)用性,解決機(jī)床故障診斷的實(shí)際問(wèn)題。功能主要有三方面要求:(1)系統(tǒng)的用戶(hù)是普通的機(jī)床操作人員,考慮到實(shí)際用戶(hù)的技術(shù)水平,要提供方便、安全的操作方法,以利于故障查詢(xún)功能的實(shí)現(xiàn)。(2)要充分考慮系統(tǒng)的開(kāi)放性,在使用過(guò)程中,用戶(hù)可以對(duì)數(shù)據(jù)庫(kù)進(jìn)行更新,并將用戶(hù)實(shí)際診斷過(guò)程中的診斷信息進(jìn)行保存。(3)應(yīng)添加安全保護(hù)措施,使其具備基本的用戶(hù)管理功能。
在系統(tǒng)設(shè)計(jì)時(shí),充分考慮故障診斷實(shí)際需求,將數(shù)控機(jī)床故障診斷系統(tǒng)功能結(jié)構(gòu)設(shè)計(jì)如圖3所示。
故障診斷系統(tǒng)運(yùn)行實(shí)例
在本系統(tǒng)中采取以數(shù)據(jù)庫(kù)為主體的構(gòu)造模式,通過(guò)數(shù)據(jù)庫(kù)操作來(lái)完成模糊推理及解釋功能,并在推理過(guò)程中使用數(shù)據(jù)庫(kù)技術(shù)控制推理方向,提高推理效率。
數(shù)控機(jī)床故障診斷專(zhuān)家系統(tǒng)是一種基于知識(shí)的智能型計(jì)算機(jī)應(yīng)用程序,系統(tǒng)利用Visual Basic的集成開(kāi)發(fā)環(huán)境、內(nèi)部控件及ActiveX控件、數(shù)據(jù)庫(kù)技術(shù),運(yùn)用SQL語(yǔ)句實(shí)現(xiàn)數(shù)據(jù)庫(kù)的查詢(xún)操作。同時(shí)使用Visual Basic強(qiáng)大的訪問(wèn)數(shù)據(jù)庫(kù)功能,將數(shù)據(jù)控件綁定到不同類(lèi)型的數(shù)據(jù)源,完成數(shù)據(jù)庫(kù)應(yīng)用程序的開(kāi)發(fā),以實(shí)現(xiàn)對(duì)數(shù)控機(jī)床故障診斷的人機(jī)對(duì)話操作。
Access數(shù)據(jù)庫(kù)實(shí)例
Access是Windows環(huán)境下的流行的關(guān)系型數(shù)據(jù)庫(kù)系統(tǒng),它既具備大中型數(shù)據(jù)庫(kù)的基本功能,與SQL Server等大型數(shù)據(jù)庫(kù)管理系統(tǒng)有著天然的聯(lián)系;又保持了桌面數(shù)據(jù)庫(kù)的方便易用性,提供了豐富的可視化開(kāi)發(fā)手段,引入了VBA面向?qū)ο蟮木幊碳夹g(shù),是當(dāng)前桌面數(shù)據(jù)庫(kù)系統(tǒng)開(kāi)發(fā)的主流工具。
在整理數(shù)控機(jī)床故障數(shù)據(jù)庫(kù)時(shí),考慮數(shù)控機(jī)床故障點(diǎn)很多,在診斷系統(tǒng)數(shù)據(jù)庫(kù)中設(shè)置兩個(gè)數(shù)據(jù)庫(kù):故障現(xiàn)象庫(kù)和故障原因庫(kù),意在按照故障樹(shù)理論建立各故障部位的故障表。
VB編程系統(tǒng)實(shí)例
Visual Basic 6.0是一種集語(yǔ)言編輯和綜合開(kāi)發(fā)與一身的強(qiáng)大的集成開(kāi)發(fā)工具。它具有良好的圖形用戶(hù)界面,采用可視化和事件驅(qū)動(dòng)的面向?qū)ο蟪绦蛟O(shè)計(jì)機(jī)制,易學(xué)易用,是使用人數(shù)最多的程序設(shè)計(jì)語(yǔ)言。在Visual Basic應(yīng)用程序中,可直接建立Access格式的數(shù)據(jù)庫(kù)或訪問(wèn)Access中的數(shù)據(jù),并可以進(jìn)行數(shù)據(jù)存儲(chǔ)和檢索。
(1)菜單界面。在Windows應(yīng)用程序窗口中,所有的操作都可以通過(guò)菜單來(lái)實(shí)現(xiàn)。菜單不僅可以提供人機(jī)對(duì)話界面,方便用戶(hù)選擇應(yīng)用程序的各種操作,而且可以用來(lái)管理應(yīng)用程序,控制各個(gè)功能模塊的運(yùn)行。為了方便使用,利用菜單編輯器創(chuàng)建菜單和菜單欄,將系統(tǒng)界面設(shè)計(jì)成下拉式菜單。
(2)使用TreeView控件建立故障樹(shù)。使用樹(shù)操作數(shù)據(jù)庫(kù),可以方便用戶(hù)對(duì)數(shù)據(jù)庫(kù)的操作。使用樹(shù)進(jìn)行選擇操作與選擇卡相比顯得更加靈活。
比如在設(shè)計(jì)故障發(fā)生部位選擇時(shí),將各故障發(fā)生部位進(jìn)行細(xì)分,建立根節(jié)點(diǎn)、節(jié)點(diǎn)、字節(jié)點(diǎn),以提供故障部位的選擇操作,更加便利。使用TreeView控件建立故障樹(shù),單擊節(jié)點(diǎn)就可以展開(kāi)或折疊字節(jié)點(diǎn),更加便于操作人員的選擇操作。
(3)使用ListView控件進(jìn)行數(shù)據(jù)查詢(xún)與顯示。在診斷系統(tǒng)中,為了解決故障現(xiàn)象描述與表達(dá)的同一性,也為了加強(qiáng)診斷系統(tǒng)的使用效果,在主菜單“故障查詢(xún)管理”中設(shè)置了“故障部位查詢(xún)”和“故障現(xiàn)象查詢(xún)”子菜單。1)故障部位查詢(xún)界面。故障部位查詢(xún)界面采用兩個(gè)ListView來(lái)引導(dǎo)用戶(hù)進(jìn)行信息輸入。用戶(hù)可以在ListView1顯示的故障發(fā)生部位選項(xiàng)中進(jìn)行選擇,當(dāng)某個(gè)選項(xiàng)被選中,ListView2便顯示該故障部位發(fā)生的所有故障現(xiàn)象、故障原因、排除方法等內(nèi)容。用戶(hù)可以移動(dòng)光標(biāo)進(jìn)行查閱,并在三個(gè)文本框中顯示相關(guān)故障信息。2)故障現(xiàn)象查詢(xún)界面。故障現(xiàn)象查詢(xún)界面中設(shè)計(jì)了“關(guān)鍵字輸入”形式,由于故障現(xiàn)象表述因人而異,在界面的設(shè)計(jì)上相對(duì)復(fù)雜一些。使用ADO、DataGrid、ComboBox等控件來(lái)實(shí)現(xiàn)故障現(xiàn)象查詢(xún)功能。
(4)機(jī)床故障診斷系統(tǒng)人機(jī)交互界面。利用Visual Basic的集成開(kāi)發(fā)環(huán)境、內(nèi)部控件及ActiveX控件、數(shù)據(jù)庫(kù)技術(shù),運(yùn)用SQL語(yǔ)句實(shí)現(xiàn)數(shù)據(jù)庫(kù)的查詢(xún)操作。同時(shí)使用Visual Basic強(qiáng)大的訪問(wèn)數(shù)據(jù)庫(kù)功能,將數(shù)據(jù)控件綁定到不同類(lèi)型的數(shù)據(jù)源,完成數(shù)據(jù)庫(kù)應(yīng)用程序的開(kāi)發(fā),以實(shí)現(xiàn)對(duì)數(shù)控機(jī)床故障診斷的人機(jī)對(duì)話操作。
“故障現(xiàn)象查詢(xún)”是從故障現(xiàn)象入手進(jìn)行故障查詢(xún)的操作界面。操作人員只需在“請(qǐng)輸入故障現(xiàn)象”文本框中輸入查詢(xún)故障關(guān)鍵字,比如“刀具”,即會(huì)在顯示區(qū)域列出相關(guān)的記錄,包括故障現(xiàn)象、故障原因、排除方法及置信度,如圖8所示。如果記錄過(guò)多,還可以繼續(xù)在“請(qǐng)輸入故障現(xiàn)象”中輸入查詢(xún)語(yǔ)句,以縮小查詢(xún)范圍,便于數(shù)據(jù)的顯示與操作。下方的按鈕,可以完成查詢(xún)、修改、錄入、刪除等多項(xiàng)功能。在故障現(xiàn)象向?qū)Р樵?xún)界面中,只需按照提示,完成原因分析查詢(xún),得出故障原因及排除方法(圖4)。


圖4 故障現(xiàn)象查詢(xún)界面及向?qū)Р樵?xún)界面
總結(jié)
數(shù)控機(jī)床故障診斷系統(tǒng)的知識(shí)庫(kù)內(nèi)存儲(chǔ)有“領(lǐng)域?qū)<摇睂?duì)故障原因的分析、判斷以及如何消除故障的經(jīng)驗(yàn)知識(shí),機(jī)床操作者可通過(guò)顯示單元,用簡(jiǎn)單人機(jī)對(duì)話的方式選擇故障現(xiàn)象,通過(guò)運(yùn)行推理程序,按照一定的策略進(jìn)行推理。診斷專(zhuān)家系統(tǒng)以專(zhuān)家知識(shí)、經(jīng)驗(yàn)為基礎(chǔ),模仿領(lǐng)域?qū)<医鉀Q復(fù)雜問(wèn)題的思維過(guò)程,這就使普通維修人員同樣能對(duì)故障做出具有專(zhuān)家級(jí)水平的診斷結(jié)論。
利用專(zhuān)家系統(tǒng)和數(shù)據(jù)庫(kù)技術(shù)設(shè)計(jì)數(shù)控機(jī)床故障診斷系統(tǒng),可為現(xiàn)場(chǎng)技術(shù)維修人員快速完成故障定位并進(jìn)行故障維修提供幫助,具有較強(qiáng)的實(shí)際意義。
文章版權(quán)歸西部工控xbgk所有,未經(jīng)許可不得轉(zhuǎn)載。