王穎,王夢園,陳澤華,馬海峰,王澤
(1.東北大學軟件學院信息安全系,沈陽110819;2.東北大學軟件學院軟件工程系,沈陽110819)
基于逆向分析的高鐵列控車載設備圖形化分析平臺設計
王穎1,王夢園1,陳澤華2,馬海峰2,王澤1
(1.東北大學軟件學院信息安全系,沈陽110819;2.東北大學軟件學院軟件工程系,沈陽110819)
高鐵列控車載設備數據采集系統產生的數據文件格式不一且互不兼容,原有的分析工具兼容性差同時缺乏故障統計與診斷的情況。該平臺采用逆向分析的方法分析出各廠商的數據解析軟件生成文件的方式,并進行重新編寫,統一解析軟件解析出來的文件格式。用C#與MATLAB混合編程來實現數據的圖形化。該平臺以故障文本信息為依據,使用基于文本挖掘的故障診斷方法。不同的車型及車載設備,統一由讀取分析一體化的、可視化的新型數據平臺接管。
逆向分析;數據圖形化;文件格式;故障統計
近些年來,我國高速鐵路的建設發展迅速。從2003年至今,高速鐵路已成為我國為數不多的能夠整體領先世界的高端裝備產業之一,更在實施“走出去”和“一帶一路”構想中被寄予厚望。高端的技術離不開軟硬件的相輔相成,中國列車控制系統CTCS(Chinese Train Control System)是我國為進一步適應鐵路發展戰略而制定的一套技術規范,以保證鐵路運輸安全,促進鐵路運輸的發展。其中,CTCS-2級系統是目前我國正在使用的一體化列車控制系統,是基于軌道電路和點式信息設備傳輸信息的列車運行控制系統,面向提速干線和高速線,現已被廣泛應用于我國高鐵的運營。車載設備作為列控系統的重要組成部分,在工作過程中會產生大量數據,這些數據的采集和處理對高速列車的安全運行有著重要意義。
目前,國內正在使用的車載設備數據分析工具主要分為文本分析工具和圖形分析工具兩類,前者的分析依賴于多種格式的數據文件,分析過程具有切換文件不方便以及數據展現不夠直觀的缺點。后者雖滿足了部分數據的圖形化展現,卻存在圖形界面不支持數據檢索與仿真,分析過程無法脫離文本文件存在等缺陷。
目前國內主流的車載設備文本分析工具的原理是將車載二進制文件解析為若干個Excel文件和HTML文件,如法國CSEE公司的PCSAM軟件,是將運行記錄生成約20個Excel文件和眾多HTML文件。其中Excel文件是記錄高鐵運行過程實時數據的運行文件,HTML文件為可用瀏覽器查看的應答器報文。此類工具操作簡單,但功能性也有一定的局限,具體如下[1]:
(1)數據文件種類繁多,分析工具兼容性差。由于目前國內引進的列車車型和相關技術來自不同的廠商,而這些數據采集系統產生的數據文件格式不一,需要由這些廠商設計的相應數據解析軟件讀取,而各個軟件支持的格式不能互相兼容。
(2)車載設備所產生的數據量龐大,人工執行效率低。列車的運行產生的數據量是非常龐大的,有些文件達到幾萬條,目前的人工檢測工作方式會給工作人員帶來極大的負擔。
(3)數據呈現方式不夠直觀
(4)缺少數據檢索和仿真功能,缺少故障分類和前期預警功能。
(5)缺少數據統計功能,關鍵數據仍需要分析人員手工統計和計算。
(6)界面單一,未考慮到分析人員對功能的需求差異性,未設置人性化配置文件。
圖形化分析工具處理數據的步驟是先將車載二進制數據解析為系統數據,程序按特定的方式進行讀取,據此生成圖形與表格供分析人員使用。此類工具雖使數據觀測更加直觀,但也有另一些不足,具體如下:
(1)不能完整展示全部數據。
(2)不支持數據檢索,查詢詳細數據還是要依賴于文本化數據。
(3)不支持數據仿真功能,缺少故障分類和前期預警功能。
(4)缺少數據統計功能,關鍵數據仍需要分析人員手工統計和計算。
(5)界面單一,未考慮到分析人員對功能的需求差異性,未設置人性化配置文件[1]。
針對數據采集系統產生的數據文件格式不一且互不兼容以及缺乏故障統計與診斷的情況,該平臺不但可以統一文件的格式,而且可以對故障信息進行統計與診斷并圖形化顯示。
平臺使用逆向分析技術,分析出各廠商的數據解析軟件生成文件的方式,并進行重新編寫,統一了解析軟件解析出來的文件格式。格式統一的文件為數據的統計分析以及圖形化顯示提供了極大的便利。
平臺的圖形化顯示使用C#與MATLAB混合編程來實現。通過將*.m文件用MATLAB編譯器編譯成可供C#調用的動態鏈接庫文件(*.dll文件),然后在C#中實現混合編程[3]。
平臺使用基于文本挖掘的車載設備的故障診斷方法來進行故障診斷[4]。
高鐵列控車載設備數據分析平臺的核心是通過逆向分析,統一不同數據解析軟件生成的文件的格式。用戶在使用此平臺時,不用多次切換文件,提高了工作效率。圖1為高鐵列控車載設備數據分析平臺的設計圖,共有9個模塊,分別為參數設定、數據下載、文件解析、詳細文本信息、統計信息、文件讀取格式選擇、文件存儲格式選擇、故障信息提取和故障信息分析與診斷[2]。

圖1 基于逆向分析的高鐵列控車載設備數據分析平臺總體設計圖[2]
車載設備將數據下載下來,使用平臺生成統一格式的文件,各個模塊加載數據,實現它們對應的功能。功能模塊名稱與說明如下。

表1 功能模塊名稱與說明[2]
平臺生成統一格式的文件是使用逆向分析來實現的。通過分析數據解析軟件的動態鏈接庫,分析其導出函數的參數類型、參數個數以及返回值來作為參考,重新編碼實現其功能,代替只能生成特定文件格式的數據解析軟件,從而使文件格式統一化。IDA Pro可以將匯編代碼翻譯成C++代碼,通過觀察匯編代碼、C++代碼以及函數都調用了哪些系統函數,來推斷函數的功能以及函數參數。通過編寫測試代碼,顯式調用動態鏈接庫。通過GetProcAddress獲取函數的起始地址并返回一個函數指針。調用函數指針來調用動態鏈接庫中的函數,從而確定推斷出來的函數參數的正確性。
對于調用函數較多的導出函數,使用Ollydbg對其進行動態調試。使用Ollydbg設置INT3斷點,單步運行,查看導出函數被調用時都有哪些值被壓棧。根據程序的調試過程可以推斷出向函數傳遞了哪些參數。
通過靜態調試和動態調試相結合的方式,逐步推斷出函數的功能、參數以及返回值從而重寫函數實現其功能。
C#綜合了VB的可視化操作和C++的高運行效率,其強大的操作能力、支持.NET開發和便捷的面向組件編程都適合用來進行平臺的開發工作。但其在統計方面存在不足,而MATLAB在計算和圖形處理方面具有非常強大的能力。但MATLAB在運行效率和外部設備連接上卻不盡人意。平臺從簡單實用的角度出發,通過將*.m文件用MATLAB編譯器編譯成可供C#調用的動態鏈接庫文件(*.dll文件),然后在C#中實現混合編程。MATLAB編譯器deploy命令將*.m文件轉換成*.dll文件,將此*.dll文件保存到相應的目錄下,*.dll即為.NET可以使用的動態鏈接庫。使用.NET對此*.dll文件進行調用,即可完成數據的圖形化顯示。
平臺以故障文本信息為依據,使用基于文本挖掘的高鐵列控車載設備的故障診斷方法[4]。
大數據時代應充分運用大數據的力量。高鐵列車每秒都將產生數量巨大的信息。這些信息具有價值密度低,卻極其重要的特點。以系統各部件結點溫度舉例,由于數據量巨大,異常數據夾雜于海量信息中常常難于察覺,這就需要軟件為我們完成數據的篩選和預處理。一體化數據分析平臺的提出,正填補了我國高鐵車載設備數據分析領域的空白。不同的車型及車載設備將統一由讀取分析一體化的、功能全面、可視化的新型數據平臺接管。此舉將有效地打破外國廠商多年的壟斷地位,使中國的高鐵發展更上一個新的臺階。
[1]吳衛平,張利芝,唐俊同,楊獻,劉旭君.高速鐵路車載設備圖形化仿真分析裝置[P].湖南:CN101877023A,2010-11-03.
[2]吳衛平,楊玻雅.高速鐵路車載設備記錄的圖形化分析平臺[J].高速鐵路技術,2011(03):24-28.
[3]李凱,王勁松.Visual C#與MATLAB混合編程原理及其在數據圖形化中的應用[J].數字技術與應用,2014(09):55-56.
[4]趙陽,徐田華.基于文本挖掘的高鐵信號系統車載設備故障診斷[J].鐵道學報,2015(08):53-59.
Abstract:
The formats of files generated by high-speed railway on-board equipment are diverse and incompatible with each other.The existing analy?sis tools can hardly fit these file formats and lack functions of fault statistics and diagnosis.The platform designed can figure out the means each data parsing software use to read data files based upon reverse analysis technology,and restructure them to a unified format.Uses C#and MATLAB programming to visualize these data.This platform can also use text mining methods to dig out potential failures according to the text messages.All different types of vehicles and on-board equipment can be managed by this read-analysis-visualization integrated platform.
Keywords:
Reverse Analysis;Data Graphical;File Format;Fault Statistics
Design of Graphic Analysis Platform for High-Speed Railway On-Board Equipment Based on Reverse Analysis
WANG Ying1,WANG Meng-yuan1,CHEN Ze-hua2,MA Hai-feng2,WANG Ze1
(1.Department of Information Security,Northeastern University,Shenyang 110819;2.Department of Software Engineering,Northeastern University,Shenyang 110819)
2017-04-14
2017-06-18
1007-1423(2017)18-0067-04
10.3969/j.issn.1007-1423.2017.18.016
2016年國家級大學生創新創業訓練計劃項目(No.201610145114)
王穎(1995-),女,陜西韓城人,學生