張立國
(中車青島四方機車車輛股份有限公司技術(shù)中心,266111,青島∥高級工程師)
基于Matlab/GUI的地鐵車輛試驗數(shù)據(jù)分析系統(tǒng)
張立國
(中車青島四方機車車輛股份有限公司技術(shù)中心,266111,青島∥高級工程師)
針對地鐵列車制動試驗數(shù)據(jù)處理量較大,人工處理步驟繁瑣、耗時較長、過程易錯等問題,開發(fā)了基于Matlab/GUI的地鐵車輛數(shù)據(jù)分析系統(tǒng),解決了快速讀取數(shù)據(jù)、制動過程判斷的算法問題,實現(xiàn)了數(shù)據(jù)可編輯式修正預(yù)處理、數(shù)據(jù)讀取、數(shù)據(jù)單曲線繪圖和多曲線繪圖、有效制動次數(shù)的統(tǒng)計、制動過程車輪和閘瓦溫度峰值的提取以及自動生成報表等功能。通過測試分析與驗證結(jié)果表明,該系統(tǒng)實現(xiàn)了任意時間區(qū)段的列車速度、加速度、踏面溫度、車輪溫度、制動缸壓力等曲線的繪制及報表的自動生成,系統(tǒng)可靠、高效、簡便,數(shù)據(jù)處理精度保持與原始數(shù)據(jù)一致。
地鐵車輛; 制動試驗; 數(shù)據(jù)分析; 自動報表
Author′s address Technical Center of China Qingdao Sifang Locomotive Company Limited,266111,Qingdao,China
地鐵車輛數(shù)據(jù)分析工作是通過對地鐵車輛數(shù)據(jù)的收集、加工、統(tǒng)計、分析,對地鐵車輛的狀況做出科學(xué)判斷,并在此基礎(chǔ)上形成分析報告,供相關(guān)人員閱讀、理解和利用。我國地鐵車輛種類繁多、數(shù)量龐大,而且隨著測試檢驗的項點增多、測試數(shù)據(jù)的類型多樣、測試周期的逐漸縮短,對地鐵車輛進行分析評估的效率很難滿足需求。因為操作流程復(fù)雜、分析結(jié)果易錯、處理等待時間過長等原因,通常的人工分析處理方式已失去意義。因此,開發(fā)一款可以進行試驗數(shù)據(jù)處理并能自動生成報表的軟件有著重要的意義。文獻[2]基于SQL建立地鐵車輛運行數(shù)據(jù)庫,研制數(shù)據(jù)管理軟件。文獻[3]研究了基于程序自動化技術(shù)的通用報表的設(shè)計技術(shù),通用報表將報表框架與報表數(shù)據(jù)分開,用戶可根據(jù)需要自主選擇數(shù)據(jù)來源和分析結(jié)果,系統(tǒng)可以自動快速生成報表,方便用戶迅速通過數(shù)據(jù)分析結(jié)果得到研究對象的特征要求。
本文以某地鐵列車線路運行試驗為背景,結(jié)合Matlab工具,利用Matlab高效率的矩陣運算特點縮短數(shù)據(jù)處理時間;利用Matlab強大的數(shù)值計算、顯示和圖形化實現(xiàn)用戶界面功能;運用多核計算方法提取數(shù)據(jù),編制以制動指令為參照的制動判斷算法,自動生成數(shù)據(jù)圖象及表格報表。通過試驗數(shù)據(jù)驗證了軟件功能及其可靠性。
(1) 數(shù)據(jù)的數(shù)量多。地鐵車輛試驗數(shù)據(jù)量龐大、數(shù)據(jù)格式繁多、數(shù)據(jù)種類多樣,通常通過采集設(shè)備以TXT、Excel、Access、TDMS等方式保存。各種編程語言均能實現(xiàn)對不同類型數(shù)據(jù)文件的多種讀取方式。數(shù)據(jù)讀取方式取決于采集設(shè)備的數(shù)據(jù)保存方式,目前以SQL數(shù)據(jù)庫為主流數(shù)據(jù)采集保存方式,讀取速度快,數(shù)據(jù)更新簡便,但數(shù)據(jù)庫增大后可移動性變差,如果只提供Excel型數(shù)據(jù)進行分析,數(shù)據(jù)庫的使用也就沒有了明顯意義。在要求快速開發(fā)周期的前提下,應(yīng)該減少不同編程語言之間的聯(lián)合,且兼顧讀取快速、后處理分析簡便等特點。
(2) 數(shù)據(jù)的文件量多。采集設(shè)備采集數(shù)據(jù)時會預(yù)設(shè)一個采集文件的上限,在連續(xù)、長時間采集,或因采集設(shè)備故障、人為等因素間斷采集時,采集的數(shù)據(jù)文件數(shù)量會增多,多文件讀取不同于單一文件讀取,需要優(yōu)化讀取方式以避免讀取時間的成倍增長。
(3) 數(shù)據(jù)的提取項多。對車輛的運行狀況進行分析需要提取每個文件中的速度、加速度、制動缸壓力等多種不同的特征項,并通過圖表等方式直觀地表現(xiàn)出來。不同物理量的單曲線繪圖和不同物理量之間的多曲線繪圖,對分析挖掘車輛數(shù)據(jù)的內(nèi)在信息,對進一步研究列車的運行效能有重要意義,因此需要實現(xiàn)曲線的批量繪制,并保障曲線的美觀性。
2.1 系統(tǒng)架構(gòu)與設(shè)計方案
針對Excel數(shù)據(jù)文件進行系統(tǒng)設(shè)計,設(shè)計預(yù)處理、制動分析、輪邊溫度分析三個模塊。預(yù)處理模塊能通過數(shù)據(jù)的數(shù)值運算進行修正并能更新原始數(shù)據(jù)流;制動分析模塊將原始或預(yù)處理后的數(shù)據(jù)導(dǎo)入分析,實現(xiàn)時間區(qū)段的顯示、制動次數(shù)的統(tǒng)計、單曲線繪圖、多曲線繪圖、特征數(shù)據(jù)的提取統(tǒng)計以及標(biāo)準(zhǔn)化報表的自動生成;輪邊溫度分析模塊導(dǎo)入與制動分析模塊不同采樣頻率的數(shù)據(jù)并統(tǒng)一化采樣標(biāo)準(zhǔn),自由選擇時間區(qū)段,繪制輪邊溫度曲線并能自動生成報表。系統(tǒng)架構(gòu)如圖1所示。
圖1 地鐵車輛數(shù)據(jù)分析系統(tǒng)架構(gòu)圖
使用GUIDE設(shè)計系統(tǒng)界面,如圖2所示。所有操作功能均設(shè)計在一個界面,在系統(tǒng)主界面可進行相應(yīng)的數(shù)據(jù)提取、數(shù)據(jù)調(diào)整、數(shù)據(jù)顯示和輸出等操作。
2.2 算法及功能實現(xiàn)
2.2.1 數(shù)據(jù)快速導(dǎo)入及處理
由于采集器的定義、采集數(shù)據(jù)包含不同意義物理量導(dǎo)致使用多個通道,因此采集的數(shù)據(jù)文件轉(zhuǎn)化為Excel后是一個包含多個Sheet的文件,這就造成了文件數(shù)據(jù)比較瑣碎。無論是直接操作打開還是利用軟件讀取都需要較長的時間。本文利用Matlab多核計算算法讀取數(shù)據(jù),節(jié)約系統(tǒng)運行操作時間。
為了能夠提高數(shù)據(jù)的處理能力,節(jié)約系統(tǒng)運行時間,在重復(fù)讀取數(shù)據(jù)中盡量采用結(jié)構(gòu)一致的循環(huán)模式,通過修改循環(huán)中的for為parfor,將相似的讀寫指令分入計算機不同的線程進行操作。Matlab多核計算與其他編程語言多核計算的不同點在于:只是循環(huán)語句下的多核計算,形式較為單一,需要多核計算的代碼所執(zhí)行的語句應(yīng)該相同,內(nèi)容應(yīng)盡量相似。同時,parfor語句由于不能使用雙重嵌套,因此需要for-parfor格式進行嵌套程序的使用。
圖2 地鐵車輛數(shù)據(jù)分析系統(tǒng)主界面
按照多核計算方法運行一個60 M數(shù)據(jù)文件時間為43.78 s;根據(jù)未修改程序運行相同程序,耗時85.77 s,效率提升48.9%。說明利用多線程計算可以明顯節(jié)約運行時間。而且當(dāng)數(shù)據(jù)量越大的時候,相對節(jié)約時間越多。
2.2.2 制動信息統(tǒng)計與分析
由于數(shù)據(jù)文件多,且通常在試驗結(jié)束或者一定時間后才進行數(shù)據(jù)的分析處理,為便于分析,需要統(tǒng)計一個或者幾個數(shù)據(jù)文件中包含的有效制動次數(shù)。針對相應(yīng)要求,編制以制動指令為參照的制動判斷算法。制動指令是一個0/1數(shù)字信號,在列車開始制動時跳變,制動結(jié)束時回零。定位制動指令是以數(shù)字電平信號高低轉(zhuǎn)換時間進行判斷,獲取可能的制動次數(shù)N;通過制動末態(tài)速度應(yīng)小于1 km/h,向上浮動取1.5 km/h為判定值,剔除無試驗意義的車輛對標(biāo)或車輛低速度挪移。 圖3為制動判斷算法流程圖。
圖3 制動判定算法流程圖
2.2.3 自動報表生成
系統(tǒng)分析數(shù)據(jù)后能夠自動生成報表,統(tǒng)計各特征參數(shù)。調(diào)用matlab中特定的office接口,利用activeserver函數(shù),創(chuàng)建Microsoft word服務(wù)器,使用代碼命令控制word,生成所需要的報表。調(diào)用流程圖如圖4所示。
圖4 系統(tǒng)自動生成報表時的word調(diào)用流程圖
應(yīng)用本系統(tǒng)對某城市地鐵車輛試驗的離線數(shù)據(jù)進行分析處理,以驗證系統(tǒng)的可靠性。隨機選取某段時間運行數(shù)據(jù)進行驗證,在使用過程中針對可能出現(xiàn)的情況給予彈窗提示,增加系統(tǒng)使用的體驗性。預(yù)處理中每次修改數(shù)據(jù)時提示完成并顯示已修改項,方便用戶操作;對導(dǎo)入數(shù)據(jù)是否存在有效制動進行提示,排除無用的離線數(shù)據(jù),提高分析效率;增設(shè)時間查詢區(qū)段設(shè)定完整性,防止用戶誤操作而導(dǎo)致的時間設(shè)定錯誤,完善軟件的使用體驗。圖5為制動次數(shù)統(tǒng)計彈窗警示,在數(shù)據(jù)中無有效制動過程時彈窗警示。
圖5 制動次數(shù)彈窗警示
系統(tǒng)處理后的數(shù)據(jù),能夠生成速度曲線全局預(yù)覽圖、速度曲線分段預(yù)覽圖、輪邊溫度預(yù)覽圖。圖6為地鐵車輛運行速度曲線全局預(yù)覽圖,顯示有效制動次數(shù)為3次,與實際情況相符??焖兕A(yù)功能滿足用戶的預(yù)查詢要求,提升系統(tǒng)的實際適應(yīng)能力。
選定合適的時間區(qū)段后,自動生成速度、加速度、沖動、閘瓦溫度、車輪溫度、制動缸壓力的時間曲線圖及數(shù)值統(tǒng)計報表,圖7為寫入word報表后的列車速度曲線圖。繪圖處理及報表生成的時間為2 s,速度快、圖象精良、統(tǒng)計結(jié)果準(zhǔn)確,在實現(xiàn)要求的同時提升了用戶體驗性。
圖6 地鐵車輛運行速度曲線全局預(yù)覽圖
圖7 寫入word報表后的列車速度曲線圖
基于MATLAB/GUI開發(fā)軟件平臺的離線數(shù)據(jù)處理與分析系統(tǒng),運用多核計算方法快速導(dǎo)入數(shù)據(jù),編制有效制動判斷算法,根據(jù)制動分析需求對某地鐵線路48 h的試驗數(shù)據(jù)進行分析。結(jié)果表明:使用MATLAB/GUI開發(fā)的數(shù)據(jù)分析處理系統(tǒng),性能可靠,操作界面簡潔方便,人機交互功能良好;能夠減少人工處理數(shù)據(jù)的時間,提高處理分析的效率及準(zhǔn)確性;能夠高效地導(dǎo)入數(shù)據(jù),并能夠自由化對數(shù)據(jù)進行修正;自動報表功能可以一鍵生成所有特征物理量的時間軸曲線圖,統(tǒng)計制動初速、制動最大加速度、閘瓦及車輪峰值溫度等物理量,生成表格文件,獲得直觀的分析結(jié)果。系統(tǒng)設(shè)計采用模塊化設(shè)計架構(gòu),模塊調(diào)整靈活,后續(xù)升級方便,是城市軌道交通列車試驗離線數(shù)據(jù)處理的有用工具。
[1] 陳銳.數(shù)據(jù)分析用于地鐵運營設(shè)備維保管理[J].設(shè)備管理與維修,2016(3):9-11.
[2] 張森,蔡昌俊,何正友,等.地鐵綜合監(jiān)控系統(tǒng)可靠性分析與數(shù)據(jù)管理軟件研制[J].交通運輸工程與信息學(xué)報,2007(4):89-94.
[3] 王海瑞,鄒繼良.基于程序自動化技術(shù)的通用報表的研究與實現(xiàn)[J].微計算機信息,2006(36):251-253.
[4] 周紅進,王秀森.基于MatLab的海量數(shù)據(jù)處理方法[J].計算機與數(shù)字工程,2012,(5):89-90.
[5] 徐海云,涂雄苓.海量數(shù)據(jù)導(dǎo)入與導(dǎo)出MATLAB的有效方法[J].數(shù)理統(tǒng)計與管理,2007(4):649-655.
[6] 焦勇,周喻虹.基于MATLAB的快速圖形化數(shù)據(jù)處理軟件設(shè)計[J].電子科技,2005(7):40-42.
[7] 任磊,杜一,馬帥,等.大數(shù)據(jù)可視分析綜述[J].軟件學(xué)報,2014(9):1909-1936.
On Metro Vehicle Test Data Analysis System Based on Matlab/GUI
ZHANG Liguo
Aiming at problems of huge amount of data on metro vehicle brake test,low efficient manual processing and error prone process,a programming language is developed based on Matlab/GUI method,it could solved problems like quick data reading and algorithmic of determination during the braking process,achieve functions of data pre-processing,data read,multi-curve and single-curve chart,and statistics collection of effective braking numbers,extract the peak temperature of wheel and brake shoes,generate report automatically.The test and analysis results show that this system could achieve automatic chart generation of velocity,acceleration,tread temperature,wheel temperature,pressure curve of brake cylinder at any time zones,the data processing is precise and in accordance with the initial data.
metro vehicle; brake test; data analysis; automated reporting
TP274+.2:U231
10.16037/j.1007-869x.2016.12.012
2016-08-07)