一种基于动态链表的列车显示系统故障数据处理方法技术方案

技术编号:13061348 阅读:55 留言:0更新日期:2016-03-24 00:54
本发明专利技术公开了一种基于动态链表的列车显示系统故障数据处理方法,其特征在于:采用链表的方法记录列车各车辆的故障信息,所述列车的每一节车辆均对应一个故障链表,所述故障链表中的每一个节点均对应一个故障,当车辆发生新的故障时,则生成一个记录所述故障的链表节点,并将该节点加入到链表中,当车辆的一个故障消失时,则将记录该故障的链表节点从链表中删除。本发明专利技术具有可动态分配存储空间,占用存储空间小,能够简单、高效的对车辆的故障信息进行处理,方便列车显示系统进行故障显示,同时在列车动态重联编组时能够很好的保证故障数据的连续性。

【技术实现步骤摘要】

本专利技术涉及一种列车显示控制领域,尤其涉及。
技术介绍
列车显示系统用于实时显示列车各车辆的状态信息和故障信息,是直接指导司乘人员行车的重要设备。列车显示系统通过WTB总线与各车辆连接,同时通过MVB总线与列车网络控制系统连接,车辆由状态信息端口和故障信息端口通过WTB总线向列车显示系统发送车辆状态信息和故障信息,如图1所示,同一车辆的状态信息端口和故障信息端口对应,且车辆间的状态信息端口和故障信息端口顺序分配。状态信息端口用于发送包括车辆编码在内的车辆状态信息,故障信息端口用于发送包括若干位的故障信号字,故障信号字的每一位均代表一个故障,1表示故障,0表示正常。列车显示系统获取各车辆原始的状态信息和故障信息,进行处理后在显示系统中进行显示,给司乘人员提供行车指导。现有的列车显示系统故障处理方法,均采用数组的形式,需要预先为每列车的节车辆可能出现的每一个故障分配一个存储空间,因此会浪费大量的存储空间。在列车动态重联编组时,编成列车的车辆可能增加或减少,车辆的编组顺序也可能发生改变,如图1所示,动态重联编组前列车由三节车辆编组,1#车辆的状态信息端口号为0x81,故障信息端口号为0x90、0x91和0x92 ;2#车辆的状态信息端口号为0x82,故障信息端口号为0x93、0x94和0x95 ;3#车辆的状态信息端口号为0x83,故障信息端口号为0x96,0x97和0x98。如图2所示,当动态重联编组车辆减少时,原来的2#车辆从列车编组中移出,原来的3#车辆成为新编组的1#车辆,其状态信息端口和故障信息端口也相应的修改为1#车辆的端口,原来的1#车辆变成新编组的2#车辆,其状态信息端口和故障信息端口也相应的修改为2#车辆的端口。如图3所示,当动态重联编组同时有减少原有车辆且增加新的车辆时,动态重联编组后的各车辆也将按照新的编组顺序重新分配状态信息端口和故障信息端口。因此,在列车进行动态重联编组时,如果将动态重联编组前的车辆故障信息删除,再重新获取编组后的故障数据,将会影响数据的正确性,不能够准确反应故障发生的时间等具体信息。据此,很有必要对现有的列车显示系统故障数据处理方法进行改进。
技术实现思路
本专利技术要解决的技术问题就在于:针对现有技术存在的技术问题,本专利技术提供一种故障信息处理灵活、方便、占用存储空间小、不会因为列车动态重联编组而导致故障信息丢失的基于动态链表的列车显示系统故障数据处理方法。为解决上述技术问题,本专利技术提出的技术方案为:,采用链表的方法记录列车各车辆的故障信息,所述列车的每一节车辆均对应一个故障链表,所述故障链表中的每一个节点均对应一个故障,当车辆发生新的故障时,则生成一个记录所述故障的链表节点,并将该节点加入到链表中,当车辆的一个故障消失时,则将记录该故障的链表节点从链表中删除。作为本专利技术的进一步改进,还包括用于记录车辆故障信号字的故障数组,所述故障数组的长度与列车故障信号字的长度相同,所述列车的每一节车辆均对应一个故障数组。作为本专利技术的进一步改进,还包括记录了车辆的车辆编码,用于确定故障链表与列车车辆之间对应关系,以及故障数组与列车车辆之间对应关系的列车索引数组。作为本专利技术的进一步改进,还包括故障处理过程,具体步骤包括: S1.1.获取车辆的车辆编码和车辆的故障信号字,通过列车索引数组获得所述车辆的故障数组和故障链表; S1.2.将所述故障信号字与所述故障数组按位进行比较,判断是否相同,相同则判定该位所表示的故障信息未发生改变,不同相则判定该位为故障改变位,并进一步判断故障信号字中该故障改变位的值,该值为1则判定有新故障发生,跳转到步骤S1.3,该值为0则判定有故障消失,跳转到步骤S1.4 ; S1.3.查询列车故障信息表,获取所述故障改变位所表示的故障信息,新生成一个记载所述故障信息的故障链表节点,并将该故障链表节点加入到所述故障链表; S1.4.查询列车故障信息表,获取所述故障改变位所表示的故障信息,遍历所述故障链表,获得记录有所述故障信息的故障链表节点,并将该故障链表节点从故障链表中删除; 51.5.完成对整个故障信号字的处理后,将故障信号字按位存入所述故障数组中。作为本专利技术的进一步改进,所述步骤S1.3中,将新生成的故障链表节点作为故障链表的第一个节点插入故障链表中。作为本专利技术的进一步改进,还包括列车动态重联编组时的故障信息处理过程,具体步骤包括: 52.1.备份列车动态重联编组前的故障链表、故障数组和列车索引数组; S2.2.生成列车动态重联编组后的故障链表、故障数组和列车索引数组; S2.3.判断新生成的列车索引数组中的车辆编码与备份的列车索引数组中的车辆编码是否相同,相同则将该车辆编码所对应的备份故障链表和故障数组赋值给新生成的故障链表和故障数组; S2.4.删除备份的故障链表、故障数组和列车索引数组。与现有技术相比,本专利技术的优点在于: 1、通过采用链表数据结构,不需要预先为故障信息分配存储空间,可根据故障发生情况动态的分配,需要占用的存储空间小。2、本方法可简单、高效的对车辆的故障信息进行处理,列车显示系统可以方便的读取故障信息进行显示。3、本方法在列车动态重联编组时,能够很好的保留动态重联编组前的故障信息,不会因为列车动态重联编组而导致故障信息丢失,能够很好的保证数据的连续性。【附图说明】图1为列车编组情况示意图。图2为动态重联编组后列车编组情况示意图一。图3为动态重联编组后列车编组情况示意图二。图4为本专利技术故障链表的一种具体形式示意图。图5为本专利技术列车索引数组的一种具体形式示意图。图6为本专利技术故障数组的一种具体形式示意图。图7为本专利技术故障处理过程流程图。图8为本专利技术列车动态重联编组时的故障信息处理过程流程图。【具体实施方式】以下结合说明书附图和具体优选的实施例对本专利技术作进一步描述,但并不因此而限制本专利技术的保护范围。,采用链表的方法记录列车各车辆的故障信息,列车的每一节车辆均对应一个故障链表,故障链表中的每一个节点均对应一个故障,当车辆发生新的故障时,则生成一个记录故障的链表节点,并将该节点加入到链表中,当车辆的一个故障消失时,则将记录该故障的链表节点从链表中删除。如图4所示,在本实施例中,故障链表采用数组链表的形式,故障链表的头节点为一个一维数组,该数组的元素数与列车的车辆数相同,每个元素通过车辆顺序索引号对应列车的一节车辆,通过指针指向第一个故障信息的链表节点,当车辆没有故障发生时,该元素的指针为空。作为进一步的优化,故障链表的头节点中还可以记录故障链表中链表节点的个数等信息,以进一步优化故障链表的遍历、以及链表节点的插入和删除操作。故障链表的链表节点用于记录车辆的故障信息,包括故障发生时间、故障结束时间、故障代码以及故障描述信息等等。如图4中所示,车辆顺序索引号为0的车辆包括3个故障,其故障代码分别为a、b和c ;车辆顺序索引号为1的车辆没有故障;车辆顺序索引号为2的车辆包括2个故障,其故障代码分别为d和e。如图5所示,在本实施例中,还包括用于记录车辆故障信号字的故障数组,故障数组的长度与列车故障信号字的长度相同,列车的每一节车辆均对应一个故障数组。在本实施例中,故障数组采用二维数组的形式,该二维数组的列数与车辆的故障本文档来自技高网
...

【技术保护点】
一种基于动态链表的列车显示系统故障数据处理方法,其特征在于:采用链表的方法记录列车各车辆的故障信息,所述列车的每一节车辆均对应一个故障链表,所述故障链表中的每一个节点均对应一个故障,当车辆发生新的故障时,则生成一个记录所述故障的链表节点,并将该节点加入到链表中,当车辆的一个故障消失时,则将记录该故障的链表节点从链表中删除。

【技术特征摘要】

【专利技术属性】
技术研发人员:高首聪杨卫峰肖家博饶天贵李锐李凯江帆谭军祥阳助威
申请(专利权)人:株洲南车时代电气股份有限公司
类型:发明
国别省市:湖南;43

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1