学术论文投稿/征稿

欢迎您!请

登录 注册

手机学刊吧

学刊吧移动端二维码

微信关注

学刊吧微信公众号二维码
关于我们
首页 > 学术论文库 > 理工论文 基于 TCMS 数据的地铁车辆分析系统设计研究论文

基于 TCMS 数据的地铁车辆分析系统设计研究论文

4

2025-11-12 17:15:10    来源:    作者:xuling

摘要:该系统实现了对网络控制系统(Train Control and Management System,TCMS)数据的接收、校验、存储、计算、展示等全生命周期管理,并将数据用于分析统计、故障预警等,为地面运营工作提供辅助决策支撑。

  摘要:为了将列车数据应用到实际运营工作中,本文设计了一种车辆分析系统。该系统实现了对网络控制系统(Train Control and Management System,TCMS)数据的接收、校验、存储、计算、展示等全生命周期管理,并将数据用于分析统计、故障预警等,为地面运营工作提供辅助决策支撑。


  关键词:TCMS数据;系统设计;全生命周期;大数据


  0引言


  基于车辆数据的地铁车辆分析系统是一个集成多种技术和功能的综合性系统,旨在通过收集、处理和分析地铁车辆运行过程中的各类数据,实现对地铁车辆性能、安全、效率等的全面监控和优化[1]。该系统通过TCMS实时采集车辆运行过程中的数据,包括车辆速度、加速度、制动距离、能耗、故障信息等。这些TCMS数据通过无线通信网络传输到数据中心,进行集中存储和处理。在数据中心,系统利用大数据分析、数据挖掘和机器学习等技术,对车辆数据进行深度分析和挖掘。通过对比历史数据、建立预测模型等方式,系统能够发现车辆性能的变化趋势、预测潜在故障、优化运行方案等[2,3]。同时,系统还可以根据实时数据对车辆进行实时监控和调度,确保车辆运行的安全和高效。


  1 TCMS数据


  TCMS作为列车控制的核心,主要完成对列车牵引、辅助、空调、火警、车门、走行部等子系统的控制、监视和诊断等工作。其利用MVB等总线技术将列车中每个单独的模块或设备进行连接,搭建了一种能够高效传递信息的工业局域网,从而实现资源分享、协同运作、离散监测以及聚合操作等功能[4]。TCMS主要控制功能有车辆模式设定、升降弓指令控制、牵引逆变器启停指令控制、充电接触器指令控制等。TCMS主要包含中央控制单元、司机室人机接口、事件记录仪、远程输入输出模块等。TCMS拓扑图如图1所示。


  TCMS数据作为列车数据关键的组成部分,在列车数据全生命周期管理中有着重要地位。TCMS数据包括列车各子系统的状态数据和故障数据。


  1.1 TCMS数据传输


  为了将TCMS数据作为数据源为车辆运营管理赋能,要将车辆的TCMS数据传输到地面,利用地面重组的计算资源和能力实现数据统计、分析、计算、存储、挖掘等[5,6]。为此,本文设计了一条基于4G信号传输的数据传输链路。整体链路如图2所示。

  TCMS总线上的数据通过车载无线模块,使用4G通道传输到服务器的公网IP。数据经过服务器的防火墙后,由服务器对数据进行接收、解析、存储、统计、分析、展示等。为防止数据在传输过程中出现信号中断的情况,在车载设备侧增加断点续传功能。在列车短暂行驶到没有4G信号的路段时,车载设备会短暂记录未发出的数据,等待4G恢复时,把数据进行重新传递。网络层使用TCP连接而非不稳定的UDP,数据报文定时发送频率设置为1秒。


  1.2 TCMS数据结构


  为了统一TCMS数据传输格式,本文设计了一种标准的数据帧传输格式,方便后续其他项目参考使用。


  数据帧内容以16进制为基础,整体结构包括消息头(固定使用填充字节0xAA、0xAB、0xAC表示)、类型(固定使用0x01)、消息ID、数据区、预留字段、消息尾(固定填充字节0xBA、0xBB、0xBC)[7]。具体报文格式如表1所示。

  数据填充原则是依据变量填充,一般包括牵引系统、辅助系统、制动系统、通信状态、门系统、空调系统、紧急通讯单元、烟火系统、列车运营参数、轴温系统、旁路状态、其他重要的运行分析变量数据等。数据区的具体数据填充情况需要整理成数据清单交给地面系统,地面系统依据数据清单进行数据解析。状态区数据清单需包括变量名称、变量编码、字节偏移、位偏移、数据类型、换算表达式等信息。故障区数据清单需包括故障名称、故障编码、字节偏移、位偏移、数据类型、故障等级等[8]。


  2系统设计


  2.1技术架构设计


  系统整体采用Hadoop大数据体系进行搭建。数据采集层使用消息队列Kafka实现数据的采集,再将Kafka中的数据存储到以HDFS为底层的HBase中,对于其他系统的数据采集使用Sqoop和DataX来实现。使用Hive数仓实现数据的统计分析,使用Spark或Flink实现数据计算任务,使用superset和Echarts实现数据可视化展示。使用kerberos解决大数据集群安全认证问题,使用Oozie实现大数据组件的调度,使用Hue进行可视化配置[9,10]。


  2.2系统功能设计


  2.2.1数据采集


  车辆分析系统一般使用Kafka进行数据采集。首先创建Topic。在Kafka中,数据是以Topic为单位进行组织和发布的。因此,需要创建一个或多个Topic来存储采集的数据。针对多条线路的情况,可以按照每条线路分别创建一个Topic,或者通过将每列车划分为一个Topic来实现更细粒度的划分。其次,创建数据生产者。开发数据生产者应用程序,这些应用程序负责将数据发布到Kafka的Topic中。地面接收到TCP数据包后,根据线路或车辆将数据包放入不同的Topic中。再次,创建数据消费者。数据消费者负责从Kafka的Topic中读取数据并进行处理。可以使用相同的编程语言来开发消费者应用程序,并使用Kafka提供的客户端库来连接到Kafka集群并订阅Topic。最后,数据集成。如果后期要集成其他系统,可以通过Sqoop或DataX工具实现,将MySQL、Oracle等关系型数据库存储到HDFS中,从而实现数据集成。


  2.2.2数据存储


  (1)数据校验。


  数据在存储前要进行多方位的校验,以保证存储的数据都是正常的数据,不存在“脏数据”。数据长度校验用来判断接收到数据包的长度与标准数据包长度是否一致。地面侧可将数据接收长度设置为标准数据长度的两倍,防止出现接收到半包的情况。对于固定长度的数据包,要进行帧头帧尾校验,判断其是否满足一包数据的要求。帧尾校验与帧头一致,帧头帧尾均满足检验规则时才算校验完成,才能进行数据存储。


  (2)存储方式。


  因为车辆数据量庞大,故使用大数据集群进行存储,本质上以文件形式进行存储。HBase是一个分布式的、面向列的、基于键值对存储的数据库。在HBase中,多字段数据通常以列族和列的形式存储。在HBase中,数据被组织成行,每一行可以有多个列族,而每个列族可以包含多个列。列族在表创建时就要确定,并且表中的每一行都要包含这些列族。列是列族中的子项,每个列都有一个唯一的列标识符和对应的值。值可以是任何数据类型,通常是字节数组。读取数据时,可以根据行键以及列族和列标识符来检索数据。


  2.2.3数据计算


  TCMS数据中有很多需要进行量纲换算的字段,对于这些字段,需要使用Flink对每条数据进行流处理。根据数据模型和需求,实现一个量纲计算函数。这个函数可以接收输入数据,对其中的字段进行单位转换或归一化,并返回计算后的结果。对于批处理的需求可使用Spark SQL或者Spark DataFrame API来实现。首先,创建一个SparkSession对象;其次,使用该对象读取数据文件创建DataFrame;再次,对数据进行处理和转换,例如选择特定的列、过滤数据、进行聚合等操作;最后,将结果保存到文件或者数据库中。


  2.2.4数据分析


  (1)数据统计。


  对于发生故障前后一段时间的状态数据,可使用Hive数仓实现进行关联查询和数据统计。在Hive中进行关联查询(join)可以使用类似于SQL的语法来实现;此外,可使用Hive中的SUM()、AVG()、MAX()等函数进行求和、取平均、取最大或最小值来实现数据统计。


  (2)故障预警。


  预警信息应包含相应的预警等级、预警编码、所属系统以及相关联的信号环境数据等。预警可以分为阈值预警、对比预警、累计预警。


  阈值预警采用分级预警的方式,对数值型状态数据设置多级阈值,当数据达到阈值时进行报警,并将报警信息推送至HMI显示,以提示司机。一般分为三个等级:1级包括系统/部件状态恶化,状态参数超出安全范围,影响机车运用;2级包括系统/部件状态异常,状态参数处于安全范围边缘,存在安全隐患;3级包括系统/部件状态不良,状态参数开始出现偏离良好范围的趋势。阈值能够依据状态数值的范围来设定百分比,进而以简单且批量化的方式为数值型状态数据设置阈值。


  对于同类部件,可将其数据进行实时对比,通过一个设定值来确定同类部件的数据是否保持在一个相同或类似的状态。以两个冷却塔的水压为例,系统会持续监测这两个参数的变化趋势,并将其进行对比。如果两个冷却塔水压的差的绝对值在一段时间内均超过一个设定值,可以生成报警信息。


  通过监测并持续记录列车中诸如接触器、继电器和隔离开关等关键部件的累计使用次数,系统能够预测它们的寿命和性能变化。一旦累计次数达到一定阈值,系统会生成维修提示。通过监测列车上磨损与累计行驶距离密切相关的部件,如车轮等,分析累计里程数据,系统可以预测部件的健康状态,提前发现磨损情况并生成维修提示。


  (3)故障预测。


  故障一般随着时间推移而产生,这种描述一种或多种特征随着时间发生变化的数据即为时间序列数据。而使用历史数据来预测未来趋势的算法称为时间序列预测算法。公式如式(1)所示:

  式中,xn代表车速、网压等状态特征数据;Y'代表历史故障数据集;代表预测的故障数据集。常用模型包括数学统计模型、机器学习模型和深度学习模型等。


  2.2.5数据展示


  数据展示使用Superset完成,Superset是一个用于数据探索和可视化的开源工具[11],它可以连接各种数据源,并提供交互式的数据探索和可视化功能。在Superset中添加数据源。Superset支持多种数据源,包括但不限于MySQL、PostgreSQL等。在车辆分析系统中可以连接HBase来获取实时数据,连接Hive获得统计结果。在Superset中,仪表板是用来组织和展示数据可视化的容器,可以在仪表板中添加多个图表、指标、过滤器等组件。在仪表板中添加图表是展示数据的关键步骤,用户可以选择不同类型的图表以及适当的聚合函数。为了使仪表板更具交互性和灵活性,可以添加过滤器,通过选择特定的参数来动态过滤数据。过滤器可以基于不同的列或指标,使用户能够根据自己的需求筛选数据。


  3结语


  本文首先介绍了车辆分析系统,对系统的架构、功能进行整体概述;其次,针对TCMS数据进行详细阐述,包括TCMS传输的方式、数据格式;最后,设计整体技术架构,实现数据的采集、存储、计算、分析、展示等系统功能。本文给出了一项符合TCMS数据的车辆分析系统设计研究方案。

 参考文献


  [1]蒋陵郡,周黎明,吴强,等.基于TCMS落地数据的存储、检索、显示软件平台[J].现代计算机,2023,29(7):112-115+120.


  [2]新井修,彭惠民.铁道车辆信息监视与分析系统[J].国外铁道车辆,2021,58(4):21-25.


  [3]宫占霞,焦根平.基于CAN总线的城轨列车网络控制系统分析[J].电子技术与软件工程,2022(12):21-24.


  [4]李洋洋.列车网络告警挖掘系统设计与实现[D].北京:北京交通大学,2021.


  [5]赵强.基于蒙特卡罗算法的列车网络控制系统可靠性仿真分析[J].铁道车辆,2021,59(2):23-28.


  [6]刘玲娜,庞明潇,王甜甜.城市轨道交通车辆无线传输装置设计研究[J].设备管理与维修,2022(11):130-131.


  [7]胡正伟,冀云,焦芳芳,等.地铁列车网络控制系统典型MVB通信故障分析及处理[J].机车电传动,2019(4):144-149.


  [8]毛诗淼,石英,齐庆周.基于改进DeepAR的变电站防汛风险概率预测[J].武汉理工大学学报,2023,45(2):96-104.


  [9]何旭辉,段泉成,严磊.基于DeepAR的短期风速概率预测[J].铁道学报,2023,45(7):152-160.


  [10]DENG L,LI W,ZHANG W.Intelligent Prediction of Rolling Bearing Remaining Useful Life Based on Probabilistic DeepAR-Transformer Model[J].Measurement Science and Technology,2024,35(1).


  [11]何赖江,黄伟杰.基于Dremio和Apache Superset的电梯情报自助归集与预测系统的构建[J].中国特种设备安全,2020,36(11):73-77.