基于Matlab/GUI的地铁车辆试验数据分析系统

2017-01-04 10:18张立国
城市轨道交通研究 2016年12期
关键词:报表数据处理自动

张立国

(中车青岛四方机车车辆股份有限公司技术中心,266111,青岛∥高级工程师)

基于Matlab/GUI的地铁车辆试验数据分析系统

张立国

(中车青岛四方机车车辆股份有限公司技术中心,266111,青岛∥高级工程师)

针对地铁列车制动试验数据处理量较大,人工处理步骤繁琐、耗时较长、过程易错等问题,开发了基于Matlab/GUI的地铁车辆数据分析系统,解决了快速读取数据、制动过程判断的算法问题,实现了数据可编辑式修正预处理、数据读取、数据单曲线绘图和多曲线绘图、有效制动次数的统计、制动过程车轮和闸瓦温度峰值的提取以及自动生成报表等功能。通过测试分析与验证结果表明,该系统实现了任意时间区段的列车速度、加速度、踏面温度、车轮温度、制动缸压力等曲线的绘制及报表的自动生成,系统可靠、高效、简便,数据处理精度保持与原始数据一致。

地铁车辆; 制动试验; 数据分析; 自动报表

Author′s address Technical Center of China Qingdao Sifang Locomotive Company Limited,266111,Qingdao,China

地铁车辆数据分析工作是通过对地铁车辆数据的收集、加工、统计、分析,对地铁车辆的状况做出科学判断,并在此基础上形成分析报告,供相关人员阅读、理解和利用。我国地铁车辆种类繁多、数量庞大,而且随着测试检验的项点增多、测试数据的类型多样、测试周期的逐渐缩短,对地铁车辆进行分析评估的效率很难满足需求。因为操作流程复杂、分析结果易错、处理等待时间过长等原因,通常的人工分析处理方式已失去意义。因此,开发一款可以进行试验数据处理并能自动生成报表的软件有着重要的意义。文献[2]基于SQL建立地铁车辆运行数据库,研制数据管理软件。文献[3]研究了基于程序自动化技术的通用报表的设计技术,通用报表将报表框架与报表数据分开,用户可根据需要自主选择数据来源和分析结果,系统可以自动快速生成报表,方便用户迅速通过数据分析结果得到研究对象的特征要求。

本文以某地铁列车线路运行试验为背景,结合Matlab工具,利用Matlab高效率的矩阵运算特点缩短数据处理时间;利用Matlab强大的数值计算、显示和图形化实现用户界面功能;运用多核计算方法提取数据,编制以制动指令为参照的制动判断算法,自动生成数据图象及表格报表。通过试验数据验证了软件功能及其可靠性。

1 试验数据的特点

(1) 数据的数量多。地铁车辆试验数据量庞大、数据格式繁多、数据种类多样,通常通过采集设备以TXT、Excel、Access、TDMS等方式保存。各种编程语言均能实现对不同类型数据文件的多种读取方式。数据读取方式取决于采集设备的数据保存方式,目前以SQL数据库为主流数据采集保存方式,读取速度快,数据更新简便,但数据库增大后可移动性变差,如果只提供Excel型数据进行分析,数据库的使用也就没有了明显意义。在要求快速开发周期的前提下,应该减少不同编程语言之间的联合,且兼顾读取快速、后处理分析简便等特点。

(2) 数据的文件量多。采集设备采集数据时会预设一个采集文件的上限,在连续、长时间采集,或因采集设备故障、人为等因素间断采集时,采集的数据文件数量会增多,多文件读取不同于单一文件读取,需要优化读取方式以避免读取时间的成倍增长。

(3) 数据的提取项多。对车辆的运行状况进行分析需要提取每个文件中的速度、加速度、制动缸压力等多种不同的特征项,并通过图表等方式直观地表现出来。不同物理量的单曲线绘图和不同物理量之间的多曲线绘图,对分析挖掘车辆数据的内在信息,对进一步研究列车的运行效能有重要意义,因此需要实现曲线的批量绘制,并保障曲线的美观性。

2 数据处理与自动报表实现方案

2.1 系统架构与设计方案

针对Excel数据文件进行系统设计,设计预处理、制动分析、轮边温度分析三个模块。预处理模块能通过数据的数值运算进行修正并能更新原始数据流;制动分析模块将原始或预处理后的数据导入分析,实现时间区段的显示、制动次数的统计、单曲线绘图、多曲线绘图、特征数据的提取统计以及标准化报表的自动生成;轮边温度分析模块导入与制动分析模块不同采样频率的数据并统一化采样标准,自由选择时间区段,绘制轮边温度曲线并能自动生成报表。系统架构如图1所示。

图1 地铁车辆数据分析系统架构图

使用GUIDE设计系统界面,如图2所示。所有操作功能均设计在一个界面,在系统主界面可进行相应的数据提取、数据调整、数据显示和输出等操作。

2.2 算法及功能实现

2.2.1 数据快速导入及处理

由于采集器的定义、采集数据包含不同意义物理量导致使用多个通道,因此采集的数据文件转化为Excel后是一个包含多个Sheet的文件,这就造成了文件数据比较琐碎。无论是直接操作打开还是利用软件读取都需要较长的时间。本文利用Matlab多核计算算法读取数据,节约系统运行操作时间。

为了能够提高数据的处理能力,节约系统运行时间,在重复读取数据中尽量采用结构一致的循环模式,通过修改循环中的for为parfor,将相似的读写指令分入计算机不同的线程进行操作。Matlab多核计算与其他编程语言多核计算的不同点在于:只是循环语句下的多核计算,形式较为单一,需要多核计算的代码所执行的语句应该相同,内容应尽量相似。同时,parfor语句由于不能使用双重嵌套,因此需要for-parfor格式进行嵌套程序的使用。

图2 地铁车辆数据分析系统主界面

按照多核计算方法运行一个60 M数据文件时间为43.78 s;根据未修改程序运行相同程序,耗时85.77 s,效率提升48.9%。说明利用多线程计算可以明显节约运行时间。而且当数据量越大的时候,相对节约时间越多。

2.2.2 制动信息统计与分析

由于数据文件多,且通常在试验结束或者一定时间后才进行数据的分析处理,为便于分析,需要统计一个或者几个数据文件中包含的有效制动次数。针对相应要求,编制以制动指令为参照的制动判断算法。制动指令是一个0/1数字信号,在列车开始制动时跳变,制动结束时回零。定位制动指令是以数字电平信号高低转换时间进行判断,获取可能的制动次数N;通过制动末态速度应小于1 km/h,向上浮动取1.5 km/h为判定值,剔除无试验意义的车辆对标或车辆低速度挪移。 图3为制动判断算法流程图。

图3 制动判定算法流程图

2.2.3 自动报表生成

系统分析数据后能够自动生成报表,统计各特征参数。调用matlab中特定的office接口,利用activeserver函数,创建Microsoft word服务器,使用代码命令控制word,生成所需要的报表。调用流程图如图4所示。

图4 系统自动生成报表时的word调用流程图

3 案例分析

应用本系统对某城市地铁车辆试验的离线数据进行分析处理,以验证系统的可靠性。随机选取某段时间运行数据进行验证,在使用过程中针对可能出现的情况给予弹窗提示,增加系统使用的体验性。预处理中每次修改数据时提示完成并显示已修改项,方便用户操作;对导入数据是否存在有效制动进行提示,排除无用的离线数据,提高分析效率;增设时间查询区段设定完整性,防止用户误操作而导致的时间设定错误,完善软件的使用体验。图5为制动次数统计弹窗警示,在数据中无有效制动过程时弹窗警示。

图5 制动次数弹窗警示

系统处理后的数据,能够生成速度曲线全局预览图、速度曲线分段预览图、轮边温度预览图。图6为地铁车辆运行速度曲线全局预览图,显示有效制动次数为3次,与实际情况相符。快速预功能满足用户的预查询要求,提升系统的实际适应能力。

选定合适的时间区段后,自动生成速度、加速度、冲动、闸瓦温度、车轮温度、制动缸压力的时间曲线图及数值统计报表,图7为写入word报表后的列车速度曲线图。绘图处理及报表生成的时间为2 s,速度快、图象精良、统计结果准确,在实现要求的同时提升了用户体验性。

图6 地铁车辆运行速度曲线全局预览图

图7 写入word报表后的列车速度曲线图

4 小结

基于MATLAB/GUI开发软件平台的离线数据处理与分析系统,运用多核计算方法快速导入数据,编制有效制动判断算法,根据制动分析需求对某地铁线路48 h的试验数据进行分析。结果表明:使用MATLAB/GUI开发的数据分析处理系统,性能可靠,操作界面简洁方便,人机交互功能良好;能够减少人工处理数据的时间,提高处理分析的效率及准确性;能够高效地导入数据,并能够自由化对数据进行修正;自动报表功能可以一键生成所有特征物理量的时间轴曲线图,统计制动初速、制动最大加速度、闸瓦及车轮峰值温度等物理量,生成表格文件,获得直观的分析结果。系统设计采用模块化设计架构,模块调整灵活,后续升级方便,是城市轨道交通列车试验离线数据处理的有用工具。

[1] 陈锐.数据分析用于地铁运营设备维保管理[J].设备管理与维修,2016(3):9-11.

[2] 张森,蔡昌俊,何正友,等.地铁综合监控系统可靠性分析与数据管理软件研制[J].交通运输工程与信息学报,2007(4):89-94.

[3] 王海瑞,邹继良.基于程序自动化技术的通用报表的研究与实现[J].微计算机信息,2006(36):251-253.

[4] 周红进,王秀森.基于MatLab的海量数据处理方法[J].计算机与数字工程,2012,(5):89-90.

[5] 徐海云,涂雄苓.海量数据导入与导出MATLAB的有效方法[J].数理统计与管理,2007(4):649-655.

[6] 焦勇,周喻虹.基于MATLAB的快速图形化数据处理软件设计[J].电子科技,2005(7):40-42.

[7] 任磊,杜一,马帅,等.大数据可视分析综述[J].软件学报,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)

猜你喜欢
报表数据处理自动
认知诊断缺失数据处理方法的比较:零替换、多重插补与极大似然估计法*
ILWT-EEMD数据处理的ELM滚动轴承故障诊断
自动捕盗机
LabWindows/CVI中Excel报表技术研究
从三大报表读懂养猪人的成绩单
让小鸭子自动转身
自动摇摆的“跷跷板”
关于自动驾驶
基于希尔伯特- 黄变换的去噪法在外测数据处理中的应用
Matlab在密立根油滴实验数据处理中的应用