李超旭,王 輝,李 燕,喬成珍
(中國鐵道科學(xué)研究院集團有限公司 電子計算技術(shù)研究所,北京 100081)
故障預(yù)測與健康管理(PHM,Prognostics and Health Management)技術(shù)誕生之初是為了提高航空飛行器的運營維護(簡稱:運維)效率,保障飛行設(shè)備的運行安全,通過基于狀態(tài)修的維修方式,降低故障率與運維成本[1-2]。隨著PHM技術(shù)的不斷發(fā)展,其技術(shù)理念與應(yīng)用效果,得到了眾多行業(yè)的關(guān)注。近年來,軌道交通領(lǐng)域的PHM和大數(shù)據(jù)技術(shù)研究與應(yīng)用的熱度持續(xù)上升[3-5],隨著修程修制改革、狀態(tài)修、智能運維等動車組運維目標(biāo)的設(shè)立[6],中國國家鐵路集團有限公司(簡稱:國鐵集團)從2018年開始開展動車組PHM技術(shù)研究工作,已取得一定的進展,設(shè)計了一套可應(yīng)用于全國鐵路范圍的開放式動車組PHM系統(tǒng)方案,搭建了動車組PHM系統(tǒng),并與各鐵路局集團公司開展了試用聯(lián)調(diào)工作,相關(guān)功能研究工作也在穩(wěn)步進行[7]。
動車組PHM模型是指利用新造、運用、檢修、環(huán)境等相關(guān)數(shù)據(jù),借助算法對動車組系統(tǒng)或其部件進行故障預(yù)測、故障診斷、健康評估及運維決策的邏輯組合[8]。動車組PHM模型是動車組PHM的研究重點,是動車組PHM系統(tǒng)實現(xiàn)故障預(yù)測與健康管理功能的關(guān)鍵。PHM模型的設(shè)計與應(yīng)用,可為提升動車組智能運維水平、提高檢修效率、實現(xiàn)修程修制改革提供技術(shù)支撐。
截至2021年11月,國鐵集團研發(fā)的動車組PHM系統(tǒng)中已上線部署百余個閾值類PHM模型,適配車型10余種。現(xiàn)場聯(lián)調(diào)測試結(jié)果表明,這些模型的投入使用減少了動車組運維單位的工作量,有效指導(dǎo)了動車組部件的精準(zhǔn)維修,可做到及時預(yù)防行車過程中的安全隱患,保障運輸安全,同時為延長修提供監(jiān)測支持。由于動車組PHM技術(shù)的研究內(nèi)容較為寬泛,且全國鐵路范圍的動車組PHM技術(shù)研究處于早期發(fā)展階段,諸多關(guān)鍵技術(shù)尚未解決。PHM模型作為動車組PHM技術(shù)的重點研究內(nèi)容,面臨著數(shù)據(jù)處理和應(yīng)用等方面的難題。
動車組PHM系統(tǒng)現(xiàn)有的模型數(shù)據(jù)處理流程如圖1所示,動車組運行監(jiān)測數(shù)據(jù)通過動車組車載信息無線傳輸系統(tǒng)(WTDS ,Wireless Transmission Device System)傳輸至中國鐵路主數(shù)據(jù)中心(簡稱:主數(shù)據(jù)中心)后,由主數(shù)據(jù)中心將車載運行監(jiān)測數(shù)據(jù)轉(zhuǎn)發(fā)至動車組PHM系統(tǒng)所屬的消息隊列中,再由PHM模型對實時數(shù)據(jù)進行分析處理。該處理流程與機制可基本滿足實時環(huán)境下PHM模型計算所需的條件,但存在較大的局限性,例如,不能較好進行高并發(fā)情況下的模型快速響應(yīng)、存在一定的數(shù)據(jù)存儲冗余等問題。且該架構(gòu)只適用于實時數(shù)據(jù)處理,對批處理模型與多源模型的數(shù)據(jù)需求缺乏一定的考慮,在一定程度上限制了系統(tǒng)支持的模型種類。
圖1 既有動車組PHM模型數(shù)據(jù)處理流程
為滿足PHM模型計算對WTDS實時數(shù)據(jù)與歷史數(shù)據(jù)的需求,提升數(shù)據(jù)處理效率,提高數(shù)據(jù)可用性,在遵循動車組PHM總體技術(shù)架構(gòu)規(guī)劃下,本文提出優(yōu)化的動車組PHM模型數(shù)據(jù)處理架構(gòu)。
優(yōu)化的動車組PHM模型數(shù)據(jù)處理總體架構(gòu)在既有的模型數(shù)據(jù)處理流程基礎(chǔ)上,引入動車組運維信息系統(tǒng)的數(shù)據(jù)作為新的數(shù)據(jù)源,滿足模型對多種類源數(shù)據(jù)的需求;同時,針對WTDS實時數(shù)據(jù),設(shè)計了分布式存儲、消息隊列、緩存3種數(shù)據(jù)持久化方式,滿足模型對實時數(shù)據(jù)和歷史數(shù)據(jù)的處理需求,提高數(shù)據(jù)處理效率,總體架構(gòu)如圖2所示。
圖2 優(yōu)化的動車組PHM模型數(shù)據(jù)處理總體架構(gòu)
優(yōu)化的動車組PHM模型數(shù)據(jù)處理技術(shù)架構(gòu)如圖3所示,共分為4層,分別為源數(shù)據(jù)層、數(shù)據(jù)匯集層、數(shù)據(jù)處理層、數(shù)據(jù)匯總層。
圖3 優(yōu)化的動車組PHM模型數(shù)據(jù)處理技術(shù)架構(gòu)
(1)源數(shù)據(jù)層。包含動車組PHM模型運行所需的數(shù)據(jù),來自動車組運用檢修、行車安全檢測等相關(guān)的信息系統(tǒng)及相關(guān)作業(yè)設(shè)備。
(2)數(shù)據(jù)匯集層。主要負責(zé)源數(shù)據(jù)的抽取、匯集工作,根據(jù)數(shù)據(jù)結(jié)構(gòu)特點及業(yè)務(wù)需求,選擇適合的數(shù)據(jù)ETL(Extract-Transform-Load)方法進行數(shù)據(jù)抽取,匯集源數(shù)據(jù)層的數(shù)據(jù)并持久化,供數(shù)據(jù)處理層使用。
(3)數(shù)據(jù)處理層。主要負責(zé)對匯集的數(shù)據(jù)進行清洗、轉(zhuǎn)換、融合與分類,借助SparkStreaming實現(xiàn)數(shù)據(jù)去重、噪點數(shù)據(jù)過濾、數(shù)據(jù)標(biāo)準(zhǔn)化、故障合并等處理步驟,將數(shù)據(jù)加工成可被動車組PHM模型直接利用的數(shù)據(jù)格式。
(4)數(shù)據(jù)匯總層。包含數(shù)據(jù)處理層處理后的數(shù)據(jù),根據(jù)數(shù)據(jù)結(jié)構(gòu)及類型對數(shù)據(jù)進行劃分,并持久化到不同的數(shù)據(jù)庫中,供模型程序調(diào)用。該層數(shù)據(jù)根據(jù)業(yè)務(wù)劃分后主要包括主題數(shù)據(jù)、WTDS歷史數(shù)據(jù)、動車組運用、故障和檢修數(shù)據(jù)及相關(guān)業(yè)務(wù)緩存數(shù)據(jù)。
目前,PHM模型的應(yīng)用大部分基于對WTDS實時數(shù)據(jù)的處理,以達到實時故障預(yù)測或提供維修處理建議的目的。在不考慮模型邏輯的前提下,WTDS數(shù)據(jù)質(zhì)量對模型應(yīng)用效果有較大影響。
WTDS數(shù)據(jù)可實時刻畫列車在運行過程中各部件、系統(tǒng)的狀態(tài)參數(shù)[9],包含車組故障信息、運行狀態(tài)、地理位置信息等。對WTDS運行狀態(tài)參數(shù)數(shù)據(jù)可進行如下抽象。
假設(shè)某一時刻某列動車組的WTDS數(shù)據(jù)集為R;車廂號為n,編組長度為l,n=1,···,l;運行狀態(tài)參數(shù)為c,集合為C,參數(shù)集合數(shù)量為m。該車組第n個車廂,第i個時刻的 WTDS數(shù)據(jù)集合為
其中,cinm為第i個時刻接收到的第n節(jié)車廂的第m個參數(shù);vinm為cinm對 應(yīng)的參數(shù)值。令則有,WTDS數(shù)據(jù)集R為
當(dāng)前,WTDS數(shù)據(jù)治理工作尚未全面開展,存在一定的數(shù)據(jù)質(zhì)量問題,因此模型計算前的數(shù)據(jù)處理十分必要[10]。
3.1.1 數(shù)據(jù)清洗
數(shù)據(jù)清洗是數(shù)據(jù)處理過程中的必要環(huán)節(jié),通過數(shù)據(jù)清洗可糾正源數(shù)據(jù)的各類數(shù)據(jù)問題,提高數(shù)據(jù)質(zhì)量,保障模型輸出的準(zhǔn)確度。結(jié)合運用經(jīng)驗,WTDS數(shù)據(jù)主要存在以下2類問題。
(1)重復(fù)數(shù)據(jù)
數(shù)據(jù)重復(fù)是一種常見的WTDS數(shù)據(jù)質(zhì)量問題,具體表現(xiàn)形式可描述為:在第i個時刻,接收到同一列車的數(shù)據(jù)中存在多個相同的參數(shù)集合(cinm,vinm)。該類數(shù)據(jù)問題會影響模型的計算效率,增加數(shù)據(jù)處理負擔(dān),降低模型準(zhǔn)確率。對此類問題,可將數(shù)據(jù)抽取到數(shù)據(jù)匯集層后再進行去重處理。結(jié)合WTDS數(shù)據(jù)特點,單條WTDS數(shù)據(jù)內(nèi)去重可采用Hash算法,剔除數(shù)據(jù)內(nèi)的重復(fù)參數(shù)數(shù)據(jù);對不同時序上的WTDS數(shù)據(jù)間去重,可采用Simhash算法,利用“分詞—Hash—加權(quán)—合并—降維”處理步驟得到1條WTDS數(shù)據(jù)的Simhash簽名,通過計算不同WTDS數(shù)據(jù)Simhash簽名間的漢明距離(Hamming Distance),判斷數(shù)據(jù)間的相似度,達到去重的目的。
(2)無效數(shù)據(jù)
無效的WTDS數(shù)據(jù)主要有噪點數(shù)據(jù)和干擾數(shù)據(jù)2種表現(xiàn)形式。噪點數(shù)據(jù)主要表現(xiàn)為某一時刻接收到的WTDS參數(shù)值較該條數(shù)據(jù)前后時刻的數(shù)據(jù)參數(shù)值變化率超出了正常的數(shù)值波動范圍。例如:在某一時間序列上的前后2包數(shù)據(jù)內(nèi)的軸溫參數(shù)值由50℃跳變?yōu)?00℃。干擾數(shù)據(jù)則表現(xiàn)為同一部件、相同位置的運行參數(shù),在同一時間戳i上,存在兩個不同的參數(shù)值,即存在多個不同的vinm與同一cinm對應(yīng)。噪點數(shù)據(jù)與干擾數(shù)據(jù)都會對模型邏輯處理產(chǎn)生嚴重干擾,影響模型結(jié)果準(zhǔn)確性,2類數(shù)據(jù)清洗工作的開展需要結(jié)合業(yè)務(wù)經(jīng)驗,針對數(shù)據(jù)使用場景,研究數(shù)據(jù)清洗的方式方法,例如,對跳變類的噪點數(shù)據(jù)可通過對比前后2包數(shù)據(jù)的最大數(shù)值差實現(xiàn)跳變數(shù)據(jù)的基本過濾;對多值類的干擾數(shù)據(jù)可結(jié)合WTD設(shè)備的數(shù)據(jù)傳輸策略制定數(shù)據(jù)清洗方法。對作為實時計算模型的源數(shù)據(jù),選取的數(shù)據(jù)處理算法應(yīng)高效、快速,最小限度地降低數(shù)據(jù)時效性損失,保障模型輸出的及時性。
3.1.2 參數(shù)標(biāo)準(zhǔn)化
WTDS數(shù)據(jù)落地時需要利用解析協(xié)議對數(shù)據(jù)進行解碼,明確每個車載參數(shù)代碼所代表的參數(shù)含義。由于解析協(xié)議來源于各主機廠,協(xié)議規(guī)范尚未統(tǒng)一,不同車型對應(yīng)的數(shù)據(jù)解析協(xié)議也有差異,存在代表相同含義的參數(shù)因解析協(xié)議不同而編碼不同的情況。因此,需根據(jù)WTDS參數(shù)的含義與類型,將WTDS數(shù)據(jù)進行標(biāo)準(zhǔn)化轉(zhuǎn)換,形成統(tǒng)一規(guī)范的數(shù)據(jù)編碼格式,從而提高模型程序構(gòu)建效率,降低維護成本。
動車組PHM模型種類多樣,適用范圍覆蓋動車組運維過程的多個階段,模型的輸入數(shù)據(jù)源包含多個動車組運維類信息系統(tǒng),數(shù)據(jù)特點呈現(xiàn)多樣性和異構(gòu)性。按照數(shù)據(jù)結(jié)構(gòu)分類,常用的模型輸入數(shù)據(jù)源可分為以動車組管理信息系統(tǒng)(EMIS,EMU Management Information System)數(shù)據(jù)為代表的結(jié)構(gòu)化數(shù)據(jù)和以WTDS數(shù)據(jù)為代表的非結(jié)構(gòu)化數(shù)據(jù)。考慮到數(shù)據(jù)結(jié)構(gòu)的差異性與模型計算所需的數(shù)據(jù)條件,模型接入的源數(shù)據(jù)的存儲與獲取方式選擇尤為重要。
3.2.1 實時數(shù)據(jù)
WTDS數(shù)據(jù)是實時計算模型的主要實時數(shù)據(jù)源,為滿足實時計算模型低時延、高時效的特定需求,可采用Kafka消息隊列做為WTDS實時數(shù)據(jù)的持久化方式,將原始數(shù)據(jù)與清洗后的數(shù)據(jù)均存放至Kafka集群,用于實時計算模型消費。由于車組運行過程中,車地數(shù)據(jù)傳輸可能會存在一定的信號波動,導(dǎo)致數(shù)據(jù)落地時序亂序。因此,為最大限度地保障模型輸入數(shù)據(jù)的時序性,原始的WTDS實時數(shù)據(jù)落地Kafka時可采用輪詢的方式寫入。對于清洗后的WTDS數(shù)據(jù),將數(shù)據(jù)的車組信息作為該條數(shù)據(jù)的key寫回Kafka,保證同一車組的數(shù)據(jù)保存在同一分區(qū)下,使得模型在實時消費WTDS數(shù)據(jù)時,可在一定程度上保證數(shù)據(jù)的時序性。
3.2.2 歷史數(shù)據(jù)
WTDS數(shù)據(jù)需長期持久化,以滿足批處理類模型及上層應(yīng)用的數(shù)據(jù)需求。選用HBase存儲WTDS歷史數(shù)據(jù),既可滿足大體量數(shù)據(jù)的分布式存儲,又可實現(xiàn)查詢的快速響應(yīng)。由于WTDS歷史數(shù)據(jù)體量較大,且存儲周期較長,需考慮數(shù)據(jù)傾斜問題,避免產(chǎn)生數(shù)據(jù)熱點,造成集群節(jié)點性能下降。上述問題可通過采用設(shè)置預(yù)分區(qū)、結(jié)合數(shù)據(jù)特點為行鍵(Rowkey)添加散列值等方法解決。
模型計算過程中產(chǎn)生的中間結(jié)果需臨時存儲,供下一步計算時調(diào)用。同時,為提高模型的計算效率,可將計算過程中需頻繁查詢的結(jié)構(gòu)化數(shù)據(jù)提前抽取到緩存區(qū)中,供程序調(diào)用。結(jié)合模型計算特點及運行環(huán)境情況,本文采用公共緩存和特定緩存兩種緩存機制,設(shè)計了模型數(shù)據(jù)處理架構(gòu)的緩存區(qū)及其部署架構(gòu),如圖4、圖5所示。
圖4 緩存區(qū)設(shè)計示意
圖5 緩存區(qū)部署架構(gòu)
3.3.1 公共緩存區(qū)
公共緩存區(qū)由多臺Redis服務(wù)器搭建成Redis集群,用于存儲具有同類計算邏輯的中間結(jié)果數(shù)據(jù)和從其他系統(tǒng)中抽取的結(jié)構(gòu)化數(shù)據(jù),該緩存區(qū)的數(shù)據(jù)可被全部模型程序共享,且該區(qū)內(nèi)緩存數(shù)據(jù)由獨立的程序負責(zé)維護和管理。通過設(shè)立公共緩存區(qū),可減少同類計算邏輯的重復(fù)計算與跨系統(tǒng)的數(shù)據(jù)交互,提高模型程序的運算效率。
3.3.2 特定緩存區(qū)
特定緩存區(qū)用于存儲公共緩存區(qū)以外的具有特定模型計算需求的中間數(shù)據(jù)。同時,為提高緩存的讀寫效率,減少由于集群內(nèi)網(wǎng)絡(luò)波動導(dǎo)致的緩存交互時延,特定緩存區(qū)需架設(shè)在模型計算服務(wù)器中。特定緩存區(qū)內(nèi)的緩存數(shù)據(jù)只可被該節(jié)點內(nèi)的模型共享,其他服務(wù)器節(jié)點運行的模型程序不可訪問,且緩存數(shù)據(jù)的維護與管理也只由該節(jié)點上的模型程序負責(zé)。
WTDS數(shù)據(jù)的轉(zhuǎn)發(fā)與解析是WTDS數(shù)據(jù)處理的重要環(huán)節(jié),動車組實時回傳的報文數(shù)據(jù)需要即時解析并傳輸給PHM模型的輸入數(shù)據(jù)節(jié)點及其他有WTDS數(shù)據(jù)需求的系統(tǒng),因此,WTDS實時數(shù)據(jù)抽取的效率是保障PHM系統(tǒng)及模型實時性預(yù)警的關(guān)鍵。據(jù)統(tǒng)計,當(dāng)前WTDS解析前數(shù)據(jù)單通道傳輸量平均約為14 100條/min,解析后數(shù)據(jù)單通道傳輸量平均約為97 020條/min。在測試環(huán)境下(測試環(huán)境配置如表1所示),采用本文優(yōu)化的PHM模型數(shù)據(jù)處理架構(gòu),在數(shù)據(jù)抽取方面實現(xiàn)了單通道29 700條/min解析前數(shù)據(jù)抽取和119 600條/min解析后數(shù)據(jù)抽取,如圖6所示。在數(shù)據(jù)處理方面實現(xiàn)了平均2 561條/s的數(shù)據(jù)解析、清洗與存儲,如圖7所示。實驗結(jié)果表明,該數(shù)據(jù)處理架構(gòu)的性能可滿足WTDS數(shù)據(jù)處理需求。
表1 實驗環(huán)境配置
圖6 抽取WTDS數(shù)據(jù)
圖7 處理WTDS數(shù)據(jù)
同時,基于動車組PHM模型對EMIS業(yè)務(wù)數(shù)據(jù)的需求,結(jié)合本文數(shù)據(jù)處理架構(gòu)的設(shè)計思路,根據(jù)EMIS各類業(yè)務(wù)數(shù)據(jù)的數(shù)據(jù)情況與更新頻率,制定EMIS業(yè)務(wù)數(shù)據(jù)的抽取、清洗策略,將EMIS業(yè)務(wù)數(shù)據(jù)持久化到模型數(shù)據(jù)處理架構(gòu)的公共緩存區(qū)中,供各模型程序使用。如圖8所示,在測試環(huán)境下借助StreamSets構(gòu)建了EMIS中動車組開行、走行公里、高級修、配屬、車組狀態(tài)、構(gòu)型等多類結(jié)構(gòu)化數(shù)據(jù)的公共緩存區(qū),同時實現(xiàn)了緩存區(qū)數(shù)據(jù)的動態(tài)更新。
圖8 StreamSets構(gòu)建EMIS數(shù)據(jù)公共緩存區(qū)示意
本文從動車組PHM模型的應(yīng)用現(xiàn)狀出發(fā),針對模型源數(shù)據(jù)處理,優(yōu)化了模型數(shù)據(jù)處理總體架構(gòu)和技術(shù)架構(gòu)。同時,對WTDS數(shù)據(jù)處理技術(shù)、數(shù)據(jù)存儲、數(shù)據(jù)緩存等關(guān)鍵技術(shù)進行了探討與研究。經(jīng)測試驗證,該優(yōu)化的架構(gòu)高效可行,解決了動車組PHM模型源數(shù)據(jù)處理難題,為動車組PHM模型更好地服務(wù)于動車組運行安全監(jiān)控與運維指導(dǎo)提供了保障。