劉陽 杜文良
摘要:隨著廣西高速公路機電設(shè)備日益增多,運維養(yǎng)護工作也日益繁重和重要。文章介紹了應(yīng)用SNMPv3和FINS通信協(xié)議、Drools規(guī)則引擎、UI框架構(gòu)建高速公路機電設(shè)備運維專家系統(tǒng),通過構(gòu)建高速公路機電設(shè)備運維專家系統(tǒng)對機電設(shè)備運行狀態(tài)信息進行采集和分析,可以實現(xiàn)機電設(shè)備故障的智能診斷,縮短機電設(shè)備的故障發(fā)現(xiàn)及修復(fù)時間,提高養(yǎng)護效率。
關(guān)鍵詞:智慧交通;專家系統(tǒng);故障診斷
中國分類號:U495文獻標識碼:A
0 引言
高速公路機電設(shè)備種類繁多,工作環(huán)境惡劣,分布分散。傳統(tǒng)的人工維護手段對個人的機電運維水平要求比較高,而且出現(xiàn)故障時難以準確定位故障原因,響應(yīng)速度慢,增加了故障修復(fù)時間,嚴重影響了設(shè)備的養(yǎng)護水平。
對機電設(shè)備狀態(tài)數(shù)據(jù)進行采集,并通過基于規(guī)則的智能運維專家系統(tǒng)模塊,將人判斷故障、處置故障的過程整理成計算機能識別的規(guī)則,對設(shè)備故障進行智能輔助診斷和提供維修建議,實現(xiàn)智能派單,可大大縮短高速公路機電設(shè)備的故障停機時間,提高設(shè)備運行效能和高速公路機電系統(tǒng)養(yǎng)護能力。同時,系統(tǒng)將設(shè)備位置信息、拓撲連接信息直觀地顯示在GIS地圖上,并可通過互聯(lián)網(wǎng)、移動端隨時隨地查看設(shè)備狀態(tài)。
1 數(shù)據(jù)采集通信協(xié)議
高速公路上的機電設(shè)備支持多種通信協(xié)議,如SNMP、FINS協(xié)議等。目前廣西高速公路隧道的部分機電設(shè)備的通信是基于FINS進行通信的,其他大部分設(shè)備都是需要通過IP網(wǎng)絡(luò)來進行通信的,而SNMP是基于TCP/IP協(xié)議族的網(wǎng)絡(luò)管理標準,是一種在IP網(wǎng)絡(luò)中管理網(wǎng)絡(luò)節(jié)點的標準協(xié)議。對于支持SNMP協(xié)議的機電設(shè)備,本方案采用SNMP協(xié)議,通過snmpwalk(SNMP的一個工具)對可網(wǎng)管設(shè)備的OID信息進行采集,從而獲得設(shè)備的狀態(tài)數(shù)據(jù),如交換機、路由器、服務(wù)器等的IP地址、內(nèi)存使用率等。為了增加系統(tǒng)的安全性,采用SNMPV3版本,與SNMPv1和SNMPv2相比,SNMPv3增強了設(shè)備訪問的安全性,它采用了USM(基于用戶的安全模型,提供認證、加密功能)和VACM(基于視圖的訪問控制模型,確保用戶有特定MIB對象的訪問權(quán)限)技術(shù)。
2 應(yīng)用Drools構(gòu)建專家系統(tǒng)
2.1 Drools介紹
專家系統(tǒng)通常由人機交互界面、知識庫、推理機、解釋器、綜合數(shù)據(jù)庫、知識獲取等構(gòu)成[1]。要使計算機能夠理解專家領(lǐng)域知識,需要使用一定的規(guī)則來表示知識,基于規(guī)則的產(chǎn)生式系統(tǒng)是比較常用的方法。其由綜合數(shù)據(jù)庫、知識庫和推理機3個主要部分組成,綜合數(shù)據(jù)庫包含求解問題的世界范圍內(nèi)的事實和斷言[2]。
Drools 是開放源碼規(guī)則引擎,它是用 Java 語言編寫,使用 Rete 算法對所編寫的規(guī)則求值。Drools 可以使用聲明方式表達業(yè)務(wù)邏輯,并且可以在Java代碼中嵌套規(guī)則。根據(jù)高速公路機電設(shè)備故障以及設(shè)備狀態(tài)信息紛繁復(fù)雜的特點,且設(shè)備故障之間大多有相關(guān)性,本方案采用規(guī)則引擎 Drools構(gòu)建專家系統(tǒng)。
2.2 系統(tǒng)結(jié)構(gòu)設(shè)計
通過Drools規(guī)則引擎,將采集到的設(shè)備狀態(tài)數(shù)據(jù)組成事實,并與規(guī)則相匹配,從而判斷設(shè)備是否存在故障。規(guī)則包含觸發(fā)規(guī)則的條件和規(guī)則指定的操作,由高速公路機電運維工程師根據(jù)平時維護的經(jīng)驗進行歸納總結(jié)并錄入知識庫,在系統(tǒng)運行時作為規(guī)則加入到工作內(nèi)存中。采集到的設(shè)備狀態(tài)數(shù)據(jù)規(guī)整為標準的事實數(shù)據(jù)格式,作為事實條件加入到工作內(nèi)存中。當(dāng)滿足規(guī)則條件時,規(guī)則引擎將激活并在議程中注冊規(guī)則,然后對優(yōu)先級或沖突的規(guī)則進行排序,為執(zhí)行做準備。系統(tǒng)結(jié)構(gòu)如圖1所示。
2.3 診斷規(guī)則分析和定義
前端采集的機電設(shè)備包括PLC控制的設(shè)備(交通燈,指示燈,風(fēng)機等)、交換機、路由器、服務(wù)器等。對于PLC控制的設(shè)備,通過FINS協(xié)議進行數(shù)據(jù)采集,將采集到的狀態(tài)數(shù)據(jù)組成JSON格式。以交通燈為例子分析其數(shù)據(jù)結(jié)構(gòu)以及處理流程:
數(shù)據(jù)結(jié)構(gòu)定義如下:
{
"采集時間": "2019-06-01 09:00:16",
"靜態(tài)信息": {
"設(shè)備名稱": "交通燈",
"設(shè)備編碼": "xxx",
"設(shè)備品牌": "不詳",
"設(shè)備型號": "XX - 02",
"設(shè)備IP" : "xxx",
"設(shè)備位置": "河百段(河池公司)->隧道->新煙(丘莫)隧道->右洞"
},
"實時狀態(tài)": {
"設(shè)備溫度" :45,
"在線狀態(tài)" : "在線",
"故障反饋" :0,
"紅燈指令" : "開",
"紅燈反饋" : "開",
"黃燈指令" : "開",
"黃燈反饋" : "開",
"綠燈指令" : "開",
"綠燈反饋" : "開",
"轉(zhuǎn)向指令" : "開",
"轉(zhuǎn)向反饋" : "開",
}
}
接下來定義各種機電設(shè)備類型產(chǎn)生告警的條件。以交通燈作為例子,對于交通燈的故障診斷規(guī)則可以作如下定義:
(1)交通燈的控制信息與反饋信息是否匹配,信號是否沖突,如指示燈前后都為綠箭,則得出信號顯示沖突的告警。
(2)設(shè)置狀態(tài)數(shù)據(jù)上、下限,當(dāng)相關(guān)值超過預(yù)設(shè)上、下限時,產(chǎn)生告警。例如為設(shè)備溫度設(shè)置上限,設(shè)備溫度>60 ℃,則產(chǎn)生溫度過高的告警。
(3)某些設(shè)備會有本身故障信息反饋,根據(jù)故障反饋字段來生成設(shè)備故障反饋的告警。
2.4 設(shè)備故障鏈路診斷
在網(wǎng)絡(luò)環(huán)境下,采集機對某些設(shè)備的網(wǎng)絡(luò)連接是中斷的,有可能是設(shè)備本身的原因,也有可能是上聯(lián)設(shè)備的故障造成設(shè)備不可訪問。通過定義設(shè)備業(yè)務(wù)鏈,建立診斷規(guī)則,進行系統(tǒng)診斷后,如果是父節(jié)點問題,則故障診斷顯示:“由于設(shè)備號為XX的設(shè)備造成本設(shè)備故障,建議檢查XX設(shè)備”;如果是設(shè)備本身問題,則故障診斷顯示:“本設(shè)備故障,請檢查本設(shè)備”。
2.5 運維知識庫維護
除了規(guī)則庫的定義,還要在運維知識庫定義相應(yīng)故障的維修建議。運維工程師通過運維系統(tǒng)獲取維修設(shè)備的建議,將每次設(shè)備故障診斷結(jié)果存儲到數(shù)據(jù)庫,可以作為故障預(yù)警分析的數(shù)據(jù)來源。
對采用歷史數(shù)據(jù)進行診斷的策略,需要獲取數(shù)據(jù)庫中的歷史狀態(tài)數(shù)據(jù)進行計算,如根據(jù)歷史內(nèi)存占用率、磁盤使用率、系統(tǒng)溫度等指標對設(shè)備性能超限狀態(tài)進行預(yù)警。另外,可以根據(jù)多個設(shè)備的狀態(tài)數(shù)據(jù)進行綜合診斷。如在多義性路徑識別監(jiān)控應(yīng)用中的輔助校驗?zāi)K,就需要根據(jù)多個設(shè)備采集到的數(shù)據(jù)進行綜合判斷:(1)通過標識點系統(tǒng)和高清卡口系統(tǒng)獲取到車輛通過的流水記錄,對標識點和高清卡口進行流量校核,以輔助校驗標識點和高清卡口點系統(tǒng)的運行質(zhì)量;(2)基于這些流水記錄,輔以從收費系統(tǒng)所獲取的出入口信息后,以作輔助校驗收費系統(tǒng)之用。
3 界面展示模塊
3.1 UI框架選擇
界面展示采用Vaadin框架,它是一個用于構(gòu)建現(xiàn)代web應(yīng)用程序和網(wǎng)站的Java web框架,允許開發(fā)人員非常高效地利用Java創(chuàng)建UI,或者使用HTML模板創(chuàng)建UI,然后使用Java將其綁定到任何后端。
Vaadin具有以下特點:讓開發(fā)人員可以專注于UI的架構(gòu);不需要考慮客戶機-服務(wù)器通信;擁有豐富的UI組件;可以使用Java或HTML模板構(gòu)建可重用的UI組件;有數(shù)據(jù)綁定API,使用類型安全的Java將UI組件連接到任何后端;路由器API可以創(chuàng)建分層的頁面結(jié)構(gòu)。
3.2 界面展示的主要功能
(1)提供運維工程師錄入規(guī)則引擎的知識庫界面,如告警(信息)規(guī)整規(guī)則、診斷規(guī)則、處置方法等,對導(dǎo)入的規(guī)則、設(shè)備信息等數(shù)據(jù)進行合法性檢驗。
(2)定義設(shè)備告警掃描間隔,接收經(jīng)過智能診斷模塊上報的告警信息,查看所有當(dāng)前及歷史設(shè)備告警信息。
(3)在智能診斷時根據(jù)設(shè)備告警信息對歷史告警處理工單進行自動檢索,顯示歷史處理工單,以供維護人員參考。
(4)以豐富的圖文展示設(shè)備故障率、可用率、報廢率等統(tǒng)計信息。
(5)系統(tǒng)結(jié)合GIS地圖展現(xiàn)機電設(shè)備分布位置,根據(jù)站點的設(shè)備狀態(tài)信息顯示相應(yīng)的顏色,如果設(shè)備存在告警,則圖標顯示紅色。
4 系統(tǒng)應(yīng)用測試
系統(tǒng)在廣西高速公路的河百路段、貴合路段等多個路段進行實際部署測試,根據(jù)設(shè)置的知識庫規(guī)則,系統(tǒng)能夠根據(jù)上報的設(shè)備狀態(tài)數(shù)據(jù),自動診斷出相應(yīng)的故障類型。運維人員還可以根據(jù)設(shè)備名稱、路段、設(shè)備IP等屬性進行告警信息篩選,并激活故障工單流程。
設(shè)備故障也可以在移動端和PC端的GIS地圖上進行展示。站點圖標根據(jù)設(shè)備的狀態(tài)進行展示,包括正常、故障、在維修狀態(tài)。如果該站點存在設(shè)備告警、維修的情況,則站點顯示相應(yīng)狀態(tài)圖標。
5 結(jié)語
高速公路機電設(shè)備運維專家系統(tǒng)通過采用SNMPv3、FINS等協(xié)議,對高速公路機電設(shè)備的狀態(tài)數(shù)據(jù)進行采集、匯總,通過構(gòu)建基于Drools引擎的專家系統(tǒng)對設(shè)備狀態(tài)數(shù)據(jù)進行分析診斷,對整體和局部的設(shè)備運行情況做出預(yù)測,判斷故障原因并提供檢修方法,并在展示界面將設(shè)備的運行狀態(tài)以圖、表、警告等方式提示監(jiān)控人員和運維人員,提高高速公路機電設(shè)備運維效率。
參考文獻:
[1]鄭曉波.智能型操作票專家系統(tǒng)的研究與設(shè)計[D].成都:西華大學(xué),2007.
[2]曹 璐,肖 乾,王 莉.電線電纜的電磁兼容分類專家系統(tǒng)的建立[J].民用飛機設(shè)計與研究,2010(1):51-53,60.