4.4.2 組合推理模塊的設計
推理模塊是一個隱藏于后臺的推理計算模塊,它的結構如圖4.5,協(xié)調控制器用來管理各推理機的工作并協(xié)調推理執(zhí)行器與專家知識輸入引擎模塊可知,對一示同的故障,其“數(shù)據(jù)層”、“故障現(xiàn)象層”、“故障原因層”及其它們之間的連線關系絕不相同,協(xié)調控制器就是將“數(shù)據(jù)層”、“故障現(xiàn)象層”、“故障原因層”及其它們之間的連線關系自動轉化為推理進程關系,由推理執(zhí)行器完成推理診斷工作。

(1)專家系統(tǒng)推理
按推理結論的不同,推理可分為精確
推理和不精確推理:按推理過程的不同,可分為正向推是、反向推理和混合推理。根據(jù)圖形化專家知識庫結構采用了正向不精確推理。
專家系統(tǒng)推理主要是從知識庫所需的數(shù)據(jù)集合D={D1、D2、…、Dn}出發(fā),根據(jù)知識庫中每一數(shù)據(jù)點相應的一個或多個語義表達和數(shù)據(jù)范圍,將獲取實時數(shù)據(jù)與知識庫中相應數(shù)據(jù)的語義表達和數(shù)據(jù)范圍進行相似性分析,得出相似性系數(shù)的集合:

數(shù)據(jù)、參數(shù)的語義表達按專家的與、或規(guī)則便函形成了各種事件征兆集E={E1,E2,…,EK},各種事件征兆集的輸出信息為事件信息e={e1,e2,…,eK}。事件信息與數(shù)據(jù)、參數(shù)語義表達的相似性系數(shù)及規(guī)則的與、或表達密切相關,如E1的語義表達集為:
E1={(d11∧d25∨)(d32∧d48)},則e1=max{min(s11,S25),min(s32,S48)}。
推理結果與征兆集之間采用網(wǎng)絡連接模式,每根聯(lián)線上有連接的權值信息,事件信息與權值信息通過運算關系得出推理結果。

根據(jù)推理結果,知識庫相應地具有控制、處理措施,便構成了智能化系統(tǒng)的專家系統(tǒng)推理模式。
(2)模糊邏輯推理
模糊邏輯主要應用模糊規(guī)則庫進行模糊邏輯關系運算最終得出推理結果,模糊規(guī)則庫采用圖4.6所示的專家知識庫結構。首先對數(shù)據(jù)、參數(shù)進行模糊化處理,進入推理機的數(shù)據(jù)與參數(shù),根據(jù)知識庫中不同的語義表達,通過合理的選擇與構造模糊隸屬函數(shù),得出相應的數(shù)據(jù)、參數(shù)在不同語義表達下的模糊隸屬度。


式中“·”為模糊算子,采用Sup-T合成運算方法實現(xiàn)。
(3)神經網(wǎng)絡推理
根據(jù)圖4.6所示的專家知識結構,神經網(wǎng)絡推理為五層結構。
第一層為數(shù)據(jù)參數(shù)語義表達層。每個數(shù)據(jù)或參數(shù)對應有若干語義表達,相應的連接權值為1,對于任意一個數(shù)據(jù)或參數(shù)輸入Di,其第j條語義表達根據(jù)專家知識庫存在著數(shù)據(jù)或參數(shù)的輸入閾值θij,利用Sigmoid型神經元特性函數(shù)便可算出yij。

第二層為事件征兆層。根據(jù)專家知識庫,若干個語義表達的集合便構成了一個事件,用連線及權值表達它們的關系,形成了k個事件。每個事件的輸出同樣根據(jù)相應的語義表達個數(shù)、連接權值、Sigmoid 神經元特性函數(shù)確定。對任意事件Ei,對應的語義表的集合為{d1、d2、…、dj}事件輸出為:

式中:wk——連線權值;θk——偏置信號
第三層為推理結果層。每個事件輸出Ei與推理結果Fj之間都有連線并賦有權值,參照模糊推理,推理結果為:
Fj=VΣEiωEiFj,其中:i=1,2,3,…,k;j=1,2,3,…,p???????????? (4.7)
推理算法確定后將進行推理方式選擇,推理方式的選擇有手動選擇和自動選擇兩種。
手動選擇主要根據(jù)具體對象和推理系統(tǒng)的運行狀況來進行,在領域知識和定性知識缺乏的情況下,主要選擇神經網(wǎng)絡推理,或者選擇神經網(wǎng)絡與模糊邏輯推理的組合;在領域知識比較豐富和明確的情況下,主要選擇專家系統(tǒng)推理,或者選擇專家系統(tǒng)與模糊邏輯推理的組合,也可選擇專家系統(tǒng)、模糊邏輯、神經網(wǎng)絡推理同時運行;在對象特征參數(shù)語義表達豐富的情況下,主要選擇模糊邏輯推理,或者選擇模糊邏輯與專家系統(tǒng)推理的組合、模糊邏輯與神經網(wǎng)絡推理的組合,也可選擇專家系統(tǒng)、模糊邏輯、神經網(wǎng)絡推理同時運行。當存在兩個以上推理同時進行時,則進行推理結論的優(yōu)化。
自動選擇的推理方式是分別進行專家系統(tǒng)、模糊邏輯、神經網(wǎng)絡的推理,各個推理結論通過優(yōu)化決策后形成最終結論作為神經網(wǎng)絡的樣本進行學習,根據(jù)學習結果修改調整專家知識庫,用于下一輪推理,如此不斷地循環(huán)進行。推理結果優(yōu)化:
推理結果會出現(xiàn)不一致問題,有時甚至矛盾。為此,采用了優(yōu)化算法。
a.設計變量
令:推理要解決的問題:1、2、3、…、p個
模糊邏輯推理對問題的輸出:Ff1、Ff2、Ff3、…、Ffp
神經網(wǎng)絡推理對問題的輸出:Fn1、Fn2、Fn3、…、Fnp
專家系統(tǒng)推理對問題的輸出:Fe1、Fe2、Fe3、…、Fep
設計變量為:X={xf、xn、xe}
b.目標函數(shù)

c.約束條件
0≤xf≤1;0≤xn≤1; 0≤xe≤1;xf+xn+xe=1
d.根據(jù)目標函數(shù)與約束條件,求最優(yōu)解。
分別求f(X)對xf、xn、xe的偏導數(shù)。由于目標函數(shù)為非線性函數(shù),為避免多個局部最小指出現(xiàn),采用約束變尺度法求解,最終求出優(yōu)化后的xfh、xnh、xeh。
e.推理結果輸出
求解問題1:xthFf1+xnhFn1+xehFe1
求解問題2:xfhFf2+xnhFn2+xehFe2
求解問題3:xthFf3+xnhFn3+xehFe3
……………………………………
求解問題P:xfhFfp+xnhFnp+xehFe
組合智能推理機系統(tǒng)巧妙地將三個推理引擎有機結合、并行運行,各個推理算法的優(yōu)勢,充分發(fā)揮各個推理算法的優(yōu)勢,克服其中的不足,使智能推理達到了高級水平。在實際推理過程中可靈活地選擇其中的任意一種或兩種推理方式來運行,也可采用三種推理同時運行;谙嚓P聯(lián)系的系統(tǒng),采用模糊推理算法;基于事件的系統(tǒng),采用神經網(wǎng)絡;基于規(guī)則的系統(tǒng),采用規(guī)則轉換算法。這三種推理模塊同時存在、各盡其責,通過歷史數(shù)據(jù)和在線強化學習達到優(yōu)化這些模塊內部的因素。
4.4.3 數(shù)據(jù)引擎模塊的設計
數(shù)據(jù)引擎完成的功能主要是采集應用系統(tǒng)實時數(shù)據(jù)。將采樣到的數(shù)據(jù)與貢平知識庫中建立的系統(tǒng)模型輸入節(jié)點進行對比,再按照推理引擎需要的特宇鄰考贊式將輸入數(shù)據(jù)通過指定通訊協(xié)議傳遞給推理機,因此數(shù)據(jù)輸入引擎是系統(tǒng)是系統(tǒng)使用時實時系統(tǒng)與推理系統(tǒng)的數(shù)據(jù)聯(lián)系通道,并且這種數(shù)據(jù)傳遞是利用靈活TCP/IP或串行通訊等方式進行傳輸,因此使用時,可以將數(shù)據(jù)采集系統(tǒng)與推理系統(tǒng)在IP相連的兩個不同物理位置,增加系統(tǒng)構建的靈活性。綜合的通訊模塊使本系統(tǒng)能快速方便地與現(xiàn)場實時數(shù)據(jù)實現(xiàn)傳遞。同時,數(shù)據(jù)引擎還可完成數(shù)據(jù)的壩處理、數(shù)據(jù)記錄與回放。
4.5 網(wǎng)絡化遠程診斷的應用
4.5.1 計算機網(wǎng)絡技術的發(fā)展
隨著計算機技術、計算機網(wǎng)絡技術、多媒體技術和通信技術的迅速發(fā)展,遠程信息數(shù)據(jù)的使用越來越方便,特別是INTERNET網(wǎng)的快速發(fā)展和使用,使得故障診斷遠離故障現(xiàn)場,實現(xiàn)無地域和時間限制的遠程故障診斷有了可能。
INTERNET是全世界最大的計算機互連網(wǎng)絡,它是由美國APPANET發(fā)展和演化而來的。INTERNET的核心技術是TCP/IP協(xié)議和Web 技術,其中TCP/IP協(xié)議是實現(xiàn)互連網(wǎng)絡和互操作性的關鍵,正是通過它,INTERNET 上的各種網(wǎng)絡才得以互連并實現(xiàn)通信。
4.5.2 智能診斷系統(tǒng)數(shù)據(jù)通訊接口
本文的智能診斷系統(tǒng)數(shù)據(jù)通訊接口就是使用TCP/P協(xié)議,直接使用程序及開發(fā)工具所提供的環(huán)境和手段(如Winsock)來實現(xiàn)遠程數(shù)據(jù)通信功能。該系統(tǒng)的通訊接口有以下三個特點:
l)整體結構是按分布式結構設計的,采用客戶機/服務器的方式,數(shù)據(jù)服務器一旦設置好,就始終處于運行狀態(tài),推理機一旦需要申請數(shù)據(jù),就向數(shù)據(jù)引擎提出數(shù)據(jù)請求表,數(shù)據(jù)引擎根據(jù)綜合各個推理機的數(shù)據(jù)請求表向相應的對象提出數(shù)據(jù)請求,再將從對象得到數(shù)據(jù)分配給各推理機。具體結構如圖4.7 所示。服務器與客戶機之間采用TCP/IP 協(xié)議。
2)數(shù)據(jù)引擎使用的方式是一旦調試通過了,就讓數(shù)據(jù)引擎一直運行,不再進行任何操作?梢园褦(shù)據(jù)引擎看作一個數(shù)據(jù)服務器,應該進行遠程操作,一般情況下不進行操作。
3)數(shù)據(jù)引擎與特定對象之間采用調用動態(tài)聯(lián)接庫的辦法進行通訊,針對不同的對象調用不同的動態(tài)聯(lián)接庫。
根據(jù)上述三個特點及圖4.7 所示,數(shù)據(jù)引擎完成的功能主要是調用數(shù)據(jù)動態(tài)連接庫。本文的智能故障診斷系統(tǒng)的數(shù)據(jù)引擎界面如圖4.8 所示:


數(shù)據(jù)引擎與特定對象之間采用調用動態(tài)聯(lián)接庫的辦法進行通訊,單擊“打開數(shù)據(jù)收集器”,激活數(shù)據(jù)收集函數(shù),進入數(shù)據(jù)準備收集狀態(tài),單擊“開始收集”,進入數(shù)據(jù)收集狀態(tài),收集“監(jiān)測采集系統(tǒng)”發(fā)送的數(shù)據(jù)并進行數(shù)據(jù)再處理,再處理的目的是將“監(jiān)測采集系統(tǒng)”發(fā)送的數(shù)據(jù)處理后變?yōu)橥评頇C要求的數(shù)據(jù),同時檢測故障診斷推理機的數(shù)據(jù)申請狀態(tài),當故障診斷推理機進行故障診斷推理時,“數(shù)據(jù)引擎”將收集到的數(shù)據(jù)與專家知識庫中建立的系統(tǒng)模型輸入數(shù)據(jù)節(jié)點進行對比,再按照推理引擎需要的特定數(shù)據(jù)格式將推理機需要的數(shù)據(jù)通過指定通訊協(xié)議傳遞給推理機。顯然,上述中所說的動態(tài)聯(lián)接庫(DLL調用函數(shù))是關鍵的一環(huán)。在數(shù)據(jù)引擎的基礎上我們可以編制自己獨特的通訊接口或是保密的通訊接口。根據(jù)下表所述編制自己的DLL調用函數(shù)。
動態(tài)連接庫的接口函數(shù)如下:
extern“C”__declspec(dllexport)bool__stdcall CreateContainer();
主要用于初始化動態(tài)連接庫所需的相關資源。返回值為是否成功的標志。
extern“C”__declspec(dllexport)void__stdcall StartData();
主要用于向動態(tài)連接庫發(fā)一個開始收集數(shù)據(jù)的信號。
extern“C”__declspec(dllexport)void__stdcall StopData();
主要用于向動態(tài)連接庫發(fā)一個停止收集數(shù)據(jù)的信號。
extern“C”_declspec(dllexport)char*__stdcall GetData(char*);
這個函數(shù)最重要,主要用于主程序向DLL取數(shù),其中的參數(shù)是指向DLL傳遞的數(shù)據(jù)點名稱列表,形式為:
NAME1,NAME2,NAME3,……,
DLL向主程序返回的則是數(shù)據(jù)列表,形式為:
VALUE1,VALUE2,VALUE3,……,
主程序會按設定的一定的時間間隔調用這個函數(shù)來進行取數(shù)。
例如:向DLL傳遞的數(shù)據(jù)點名稱列
Tag__No1,Tag__No2,Tag__No3,……,
DLL返回的數(shù)據(jù)列表為:123.46,23.4,34,……,
extern“C”__declspec(dllexport)void__stdcall FreeConiainer();
主要用于釋放動態(tài)連接庫所需的相關資源。
4.5.3 網(wǎng)絡化診斷的應用
網(wǎng)絡化遠程故障診斷的實現(xiàn),其關鍵是遠程數(shù)據(jù)的傳送、存貯及數(shù)據(jù)交換處理。故障診斷系統(tǒng)遠離故障設備現(xiàn)場,只要故障現(xiàn)場故障測試數(shù)據(jù)能即時通過網(wǎng)絡傳送到故障診斷系統(tǒng)中,故障診斷系統(tǒng)即能實現(xiàn)網(wǎng)絡化遠程故障診斷。當智能故障診斷中的推理機進行推理時,通過數(shù)據(jù)引擎向動態(tài)連接庫DLL函數(shù)申請數(shù)據(jù),這些數(shù)據(jù)是推理時需要的故障特征參數(shù)變量值。動態(tài)連接庫DLL函數(shù)則通過網(wǎng)絡直接從故障現(xiàn)場測試采集計算機中得到故障信息數(shù)據(jù)。數(shù)據(jù)傳送流程圖如圖4.9 所示。

根據(jù)流程圖可知,從故障測試數(shù)據(jù)到數(shù)據(jù)引擎,有兩種數(shù)據(jù)處理方式,一種是故障測試數(shù)據(jù)由數(shù)據(jù)采集系統(tǒng)采集后,可先進行預處理,將故障信號數(shù)據(jù)處理為推理機所需的故障特征數(shù)據(jù),然后發(fā)送出去,動態(tài)連接庫DLL函數(shù)則通過網(wǎng)絡接收這些故障特征數(shù)據(jù),同時對照推理機向數(shù)據(jù)引擎申請的故障特征變量,將申請的故障特征變量對應的值找出,按數(shù)據(jù)引擎規(guī)定的格式反送給申請數(shù)據(jù)的推理機。另一種是故障測試數(shù)據(jù)由數(shù)據(jù)采集系統(tǒng)采集后,按一定格式直接發(fā)送出去,動態(tài)連接庫DLL函數(shù)則通過網(wǎng)絡接收這些故障信息數(shù)據(jù),然后再進行數(shù)據(jù)預處理,將故障信息數(shù)據(jù)處理為推理機所需的故障特征數(shù)據(jù),同時對照推理機向數(shù)據(jù)引擎申請的故障特征變量,將申請的故障特征變量對應的值找出,再按數(shù)據(jù)引擎規(guī)定的格式反送給申請數(shù)據(jù)的推理機。
推理機得到數(shù)據(jù)引擎返回的特征數(shù)據(jù)后,按設定好的推理規(guī)則,進行推理,完成網(wǎng)絡遠程診斷。
4.6 傳動裝置網(wǎng)絡化智能化診斷系統(tǒng)的集成
本文所用的網(wǎng)絡化、智能化故障診斷系統(tǒng)軟件由兩大部分組成。一部分是故障信號采集及數(shù)據(jù)預處理系統(tǒng),另一部分是圖形化的智能診斷推理系統(tǒng),兩部分是相互獨立的,要實現(xiàn)故障診斷的網(wǎng)絡化、智能化,必需將這兩部分集成為一個整體的系統(tǒng),將數(shù)據(jù)采集、數(shù)據(jù)預處理、數(shù)據(jù)傳送及故障智能診斷融合為一個有機的整體,同時又保持這兩部分的相對獨立性。集成的目標有以下幾個方面:
1)數(shù)據(jù)采集按原方式采集不變,數(shù)據(jù)的存貯方式不變;
2)方便用戶進行二次開發(fā);
3)數(shù)據(jù)傳送可根據(jù)用戶的要求進行選擇;
4)盡量減少用戶建立故障專家知識時的工作量;
5)數(shù)據(jù)處理中應考慮使用特定變量名(變量名固定),以減少用戶編程工作量。
本文中用的集成系統(tǒng),使用的數(shù)據(jù)傳送線路為圖4.8中線路1的方式。
4.6.1故障特征參數(shù)的獲取及傳送
故障診斷中,需要大量的故障特征數(shù)據(jù),對于不同的故障,所需的故障特征不同,為了使集成后的系統(tǒng)能適用更多的設備故障診斷當中,在進行故障特征參數(shù)據(jù)的提取時,應盡可能多地考慮各種故障所需的特征參數(shù)。
對于旋轉機械故障需提取特征參數(shù)有:
l)作為變量提取的頻率特征參數(shù)
1/5倍頻、1/3倍頻、l/4倍頻、l/2倍頻,0.43~0.48倍頻,0.75倍頻,l倍頻、2倍頻、3倍頻、4倍頻、5倍頻、臨界轉速,renxuan,每個頻率值為一個值給出。其中renxuan作為可變倍頻參數(shù),提取頻率特征參數(shù)時,renxuan變量用戶可根據(jù)自己的需要來設定renxuan的特征頻率值。例如需要嚙合頻率,則renxuan應為轉頻的齒數(shù)倍。
2)振動方向
徑向或軸向??? 用一個值。
3)振動穩(wěn)定性
穩(wěn)定,較穩(wěn)定,突變后穩(wěn)定,不穩(wěn)定,反向移動,反向跳動突變,用一個值。
4)振動軌跡
橢圓,雙環(huán)橢圓,不穩(wěn)定,雙橢圓或不規(guī)則,不規(guī)則擴散,紊亂,用一個值。
5)矢量區(qū)域
不變,矢量起始點大,隨升速繼續(xù)增大,升速時矢量逐漸增大,穩(wěn)定運行后矢量逐漸減小,突變,改變,分別用不同值表示。
6)敏感參數(shù)
振動隨轉速變化,振動隨負荷變化,振動隨油溫變化,振動隨流量變化,振動隨壓力變化,各用一個值。
統(tǒng)計上述六種特征參數(shù)變量,共需21個變量,按用戶約定或自行設定此21個變量的變量名,并記錄在特征參數(shù)變量表中,以便查詢。
特征參數(shù)的提取在數(shù)據(jù)采集及預處理系統(tǒng)中完成,此系統(tǒng)按設定的采集時間,采集一組數(shù)據(jù),處理一組數(shù)據(jù)并發(fā)送一組數(shù)據(jù)。
本文使用的數(shù)據(jù)發(fā)送方式是將特征參數(shù)的變量名與參數(shù)值組成字串,其形式為“D|變量名1=值1,變量名2=值2,……,變量名n=值n ,|^^^^”,采用TCP/IP加技術,建立stocket 連接,將故障特征參數(shù)傳送到服務器端口上。
4.6.2 動態(tài)數(shù)據(jù)連接庫的程序設計及與推理平臺的連接
根據(jù)本文系統(tǒng)集成的要求,動態(tài)數(shù)據(jù)連接庫的程序工作是進行數(shù)據(jù)接收、搜索故障智能推理平臺所需要的特征參數(shù)的值,然后這些特征參數(shù)的值與故障智能推理平臺對應的變量名組成新的字串,發(fā)送到故障智能推理平臺接收端上。
該程序應嚴格按4.5.2中所述的格式編寫。其中在GetData(char*)函數(shù)塊內完成數(shù)據(jù)搜索及數(shù)據(jù)重組工作。程序設計時,應選擇優(yōu)化的搜索方法,以減少搜索時間。
智能診斷推理平臺,在進行故障診斷的推理時,采用定時的方式向動態(tài)數(shù)據(jù)連接庫申請故障特征數(shù)據(jù),其時間的設定可以根據(jù)用戶的需求設定,一般應考慮數(shù)據(jù)采集及預處理所需的時間來設定申請數(shù)據(jù)的時間,否則,申請到的數(shù)據(jù)可能是與上次相同的數(shù)據(jù)。但也不能把時間設定的過長,這樣當數(shù)據(jù)端口堆棧過多時,新數(shù)據(jù)換掉舊數(shù)據(jù),出現(xiàn)診斷數(shù)據(jù)漏診的現(xiàn)象。
智能診斷推理平臺向動態(tài)數(shù)據(jù)連接庫申請的故障特征數(shù)據(jù)必須是采集預處理系統(tǒng)故障特征參數(shù)中有的數(shù)據(jù),如果沒有,則動態(tài)數(shù)據(jù)連接庫搜索不到該數(shù)據(jù),返回的數(shù)據(jù)不足,則沒有診斷結果。如果故障推理所申請的故障特征數(shù)據(jù)在采集預處理系統(tǒng)故障特征參數(shù)中沒有,而且是必須的數(shù)據(jù),則應在動態(tài)數(shù)據(jù)連接庫中的GetData(char*)函數(shù)塊內進行處理,得到故障推理所需要的數(shù)據(jù)。
4.6.3 診斷結果輸出平臺的設計
本文使用的智能故障診斷系統(tǒng),在診斷推理的同時,將診斷結果發(fā)送到本機的Stocket端口上,端口數(shù)為2049,數(shù)據(jù)格式如下:
l)在建立Stocket連接時,傳送故障名和專家建議:
D|故障名1:專家建議1,故障名2:專家建議2,……,故障名n:專家建議n,^^^^
2)診斷結果輸出:
R|Result1,Result2,……,Resultu,|^^^^
根據(jù)給出的數(shù)據(jù)端口及數(shù)據(jù)格式,即可按用戶的要求設計診斷結果輸出平臺。診斷結果應給出診斷故障的名稱、故障發(fā)生的部位,故障發(fā)生的時間及程度。對于不同的故障,提示故障發(fā)生的可能原因,給出相應的專家建議或維修方法等。圖4.10為本文集成系統(tǒng)的診斷結果輸出用戶界面。圖4.11為本文集成系統(tǒng)的專家知識庫建立及診斷推理平臺。


4.7 本章小結
本章在闡述了故障診斷的方法的基礎上,重點介紹的本文所使用的故障智能診斷系統(tǒng)的設計思想及組成,分析了智能診斷系統(tǒng)的組合推理原則和遠程網(wǎng)絡診斷數(shù)據(jù)的傳遞原則,指出了本文智能診斷系統(tǒng)的數(shù)據(jù)通訊接口程序的設計方法和通用的動態(tài)連接庫接口程序。在此基礎上,分析了網(wǎng)絡化、智能化診斷系統(tǒng)的集成方法及相應的程序設計方法,并對本文使用的智能診斷系統(tǒng)進行了集成。
上一頁
下一頁