摘要:對數控車床的故障診斷系統(tǒng)進行了研究。該系統(tǒng)軟件用vc++6.0語言編寫,它總結了領域專家的經驗,建立了故障樹,并用產生式規(guī)則構建了知識庫。依據故障診斷的特性,該系統(tǒng)采用不精確推理和有限深度搜索策略,能完成數控車床80多種故障的診斷。
1 引言
數控機床的故障診斷與維修一直是困擾操作、維修人員的難題。由于數控機床的安全性和工作可靠性對于生產單位的效益直接產生很大的影響,所以對數控機床進行狀態(tài)監(jiān)測以實現故障診斷和維修變得十分重要。數控車床的故障診斷技術以吸收和應用其它領域的一些成果為基礎,結合數控車床自身的故障特點及機理,通過建立故障樹,對車床的各個組成部分進行了可行的劃分,對各個組成元件的故障機理、故障原因、故障表現以及排除對策等進行細致地總結,建立相應的知識庫和規(guī)則庫。并結合車床的需要采取恰當的知識表示形式,以獲得較高的診斷效果。由于設備的故障規(guī)則在實際中具有一定的模糊性,即不確定性,為解決這一問題,筆者在本文中引入了規(guī)則置信度的做法,使得該故障診斷專家系統(tǒng)更加符合系統(tǒng)的實際情況。利用VisualC++6.0為開發(fā)工具,結合數據庫技術,開發(fā)了數控車床故障診斷專家系統(tǒng)軟件,并通過實地測試驗證了它的可行性。
2 專家系統(tǒng)的結構
數控車床故障診斷專家系統(tǒng)主要由知識庫、數據庫、推理機、知識獲取部分、解釋部分、人機接口等部分組成,內部結構如圖1所示。
[align=center]

圖1 數控車床故障診斷專家系統(tǒng)結構圖[/align]
2.1 知識的表示
在專家系統(tǒng)中,知識的表示是指如何把有用的知識方便地存儲到計算機中,并且便于管理和處理這些知識,表示方案的恰當與否對于問題的求解是非常重要的。在該專家系統(tǒng)中知識庫的機器學習方法是機械學習,即將這些規(guī)則不做任何處理,直接將其輸入到故障診斷專家系統(tǒng)中。
本系統(tǒng)知識庫針對數控車床故障進行構造,通過對數控車床工作原理、具體結構的細致分析,得到了診斷知識。把每一種故障狀態(tài)按照故障原因的不同而分成多條記錄。
知識庫文件的格式如下:
故障診斷系統(tǒng)的知識庫主要包括5個部分:診斷故障樹、診斷規(guī)則庫、故障原因、檢測提示以及故障對策,由3個文件構成:故障樹文件、規(guī)則庫文件、故障對策文件。診斷故障樹文件主要是診斷對象的故障類型內容和可能導致這些故障發(fā)生的原因說明;故障規(guī)則庫文件主要是故障診斷推理過程中所用的規(guī)則內容;故障對策文件主要包括各個規(guī)則相對應的排除對策以及規(guī)則中各個條件項的檢測過程提示信息。例如:
故障樹文件:部件名+“故障樹”
如:主軸箱部分:
[主軸工作異常]
子節(jié)點數=8
……
子節(jié)點5=精車外圓圓周表面上有混亂的波紋#14#15#16#17#
故障原因5=主軸、軸承等傳動件摩擦劇烈,主軸滾動軸承的滾道磨損,主軸的軸向間隙過大,主軸的滾動軸承外圈與床頭箱軸孔有間隙
……
規(guī)則庫文件:部件名十“規(guī)則庫”
如:[規(guī)則14]
前件=主軸工作異常
后件=精車外圓圓周表面上有混亂的波紋
條件信息=1 0.9
條件1=主軸滾動軸承的滾道是否磨損灼#0.9
檢測提示1=請檢查支承主軸的軸承
故障對策=如果有磨損則立即更換
2.2 知識的管理
知識庫管理主要包括瀏覽知識庫、建立知識庫、擴展知識庫、添加規(guī)則、修改規(guī)則和刪除規(guī)則等功能子模塊。現在以添加規(guī)則為例解釋此車床故障診斷專家系統(tǒng)是怎樣管理知識庫的。
故障樹節(jié)點的添加操作不僅涉及故障樹文件的操作,還包括了對規(guī)則庫文件的操作,向規(guī)則庫文件中寫入新規(guī)則;對于規(guī)則庫文件的新規(guī)則添加和規(guī)則刪除操作也同時必須對故障樹文件中相關內容進行修改。知識庫的編輯為用戶提供了一個增添、刪除、修改的工具,同時為了保證只有用戶指定的具有權限的技術人員才能進行知識庫編輯,在編輯功能中設置了密碼。
首先,點擊“故障樹管理”按鈕(可以用快捷鍵F2,只要按下鍵盤上的F2鍵),然后,進行相應的故障樹的操作;點擊按鈕后,進入故障樹管理界面。要對故障樹進行操作,須點擊相應的按鈕,按下“故障樹添加”按鈕(快捷鍵F2);另外,此處需選取“故障樹”部分的相應項添加到樹的故障現象位置,假設選取故障現象“主軸工作異常”,一旦在“子節(jié)點”處的空白框內輸入了內容,將使得“添加規(guī)則”、“確認輸入”按鈕發(fā)生作用,此時,通過Tab鍵,將輸入焦點轉移到“添加規(guī)則”按鈕,按下回車鍵,進入添加規(guī)則界面。按照要求,輸入相應的項,若需要“傳感器位置”,可通過下拉框選取。完成認為合格了的規(guī)則添加,就可以按下上圖中的“確認輸入”按鈕,結束本層的操作;當然,可以點擊“取消輸入”按鈕,放棄添加操作。在操作中,可以通過Tab鍵進行操作焦點轉移。返回后,通過點擊“確認操作”按鈕就可以添加故障樹操作。假如,不需要添加故障樹操作,可以通過點擊“取消退出”按鈕,放棄本次操作;也可通過Esc鍵放棄操作。
2.3 推理機的設計
根據此數控車床的故障診斷的特點,推理機構造主要考慮了以下幾點。
(1)推理方向
本系統(tǒng)采用了正向推理的控制方式,用戶可根據車床出現的故障尋找產生故障的原因。通過對用戶輸入的關鍵詞和診斷知識庫中的信息進行匹配,推理得到對應的記錄,然后顯示故障原因和對應的處理方法。其推理過程是首先啟動系統(tǒng),裝入要使用的知識庫,本文調用的知識庫是數控車床的故障診斷知識庫,然后程序進入初始界面,在初始界面中選中菜單“診斷系統(tǒng)”,系統(tǒng)進入診斷界面,提示用戶輸入故障現象,用戶輸入完畢后,點擊“開始診斷”按鈕,系統(tǒng)開始推理,完成推理后,用戶可在輸出結果界面中看到系統(tǒng)推出的對應的故障原因及解決方法。
(2)搜索方法
采用有限深度優(yōu)先搜索方法,它不是只要求未被搜索的子節(jié)點總是往“深度”搜索,而是給定一個深度限制系數,當往下搜索的深度差達到深度限制系數時,就適當回溯,這樣就可以減少搜索的工作量。
(3)不確定性
故障現象由觀測獲得,一般不能以確定的方式表示,需要給每個規(guī)則子句附加一個可信度[0,1]。
(4)解釋器的設計
這部分功能模塊負責回答用戶提出的各種問題,包括與系統(tǒng)推理有關的問題和與推理無關的關于系統(tǒng)自身的問題。它可對推理路線和含義給出必要的清晰地解釋,為用戶了解推理過程以及系統(tǒng)維護提供了方便的手段,是實現系統(tǒng)透明性的主要模塊,同時也便于專家系統(tǒng)和知識工程師及時發(fā)現知識庫中的錯誤。在推理過程中,按時間次序將每一步推理所依據的規(guī)則及變元的轉換情況記錄下來存人動態(tài)數據庫,形成不斷延伸的“鏈條”,一旦外界要求解釋,解釋器將這鏈條適當組織,將推理過程顯示給用戶。
(5)界面
界面由一些菜單命令組成。主要有:系統(tǒng)啟動命令、診斷系統(tǒng)命令、知識管理命令、參數設置命令、退出系統(tǒng)命令、解釋命令、輸入輸出命令等組成。
3 系統(tǒng)的實現
本系統(tǒng)用VisualC++6.0語言在Windows上開發(fā)了數控車床故障診斷專家系統(tǒng)的用戶界面。啟動系統(tǒng)即可顯示界面。用戶可根據菜單提示運行系統(tǒng),在系統(tǒng)運行過程中可以在工具欄上或者菜單上選擇操作,該知識庫目前仍在進一步擴充,由于增加、刪除診斷知識的方便性,該系統(tǒng)實際上相當于一個專家系統(tǒng)骨架,可以不斷充實并完善。
4 系統(tǒng)功能
對數控車床的多種故障進行診斷。
具有解釋功能:回答為什么?
具有機器學習功能。
系統(tǒng)進行診斷時,只需將選擇相關的故障現象和檢測數據,系統(tǒng)就會得出結論。
5 結論
本系統(tǒng)實現了對數控車床多種故障的診斷,具有一般專家的水平,車床操作者和維修工可方便地掌握和使用,經試用,診斷結論基要正確。