联锁仿真系统行车模拟的实现方法、存储介质和电子设备
技术领域
本申请属于轨道交通培训技术领域,具体涉及一种联锁仿真系统行车模拟的实现方法、存储介质和电子设备。
背景技术
计算机联锁系统(简称:CBI)是负责行车进路建立铁路行车的核心控制设备,计算机联锁系统在信号操作员或者ATS系统操作下实现站内道岔、信号机、轨道电路之间的联锁控制,是铁路安全高效行车不可缺少的保障装备。但是实际运营的系统是不可能供学生去操作和练习的,为方便教学培训,就产生了计算机联锁仿真系统。
计算机联锁仿真系统具有和真实联锁系统一模一样的功能界面,可以让学生学习和了解联锁系统的功能模块及工作原理。但现有的计算机联锁仿真系统中,多采用实体仿真小车来进行行车模拟,实现复杂成本高,不利于联锁仿真系统在轨道交通培训中的推广应用。
发明内容
为至少在一定程度上克服相关技术中存在的问题,本申请提供一种联锁仿真系统行车模拟的实现方法、存储介质和电子设备,有利于联锁仿真系统在轨道交通培训中的推广应用。
为实现以上目的,本申请采用如下技术方案:
第一方面,
本申请提供一种联锁仿真系统行车模拟的实现方法,其包括:
获取站场设备信息;
基于获取到的站场设备信息,建立并维护存储设备仿真数据的数据库;
接收用户的操作信息,基于所述操作信息和所述数据库中的设备仿真数据对行车进行模拟仿真。
可选地,所述对行车进行模拟仿真包括如下步骤:
步骤1,根据用户输入的操作指令,在内存中建立列车对象,初始化列车对象的当前区段属性、待进入区段属性以及前进序列属性,并在站场图上将列车对象当前区段属性的值所对应的区段显示为区段占用;
步骤2,读取列车对象待进入区段属性的值,根据该值查询数据库获取待进入区段的仿真数据;
步骤3,基于待进入区段的仿真数据,判断待进入区段的类型;
步骤4,基于判断结果对列车行为进行模拟,更新列车对象的各属性值,并在站场图上显示模拟结果。
可选地,所述步骤4中,当判断待进入区段的类型为停车站台区段时,所述步骤4包括,
步骤4-1,在站场图上将列车对象当前区段属性的值所对应的区段显示为区段出清,将列车对象待进入区段属性的值所对应的区段显示为区段占用;
步骤4-2,提示行车模拟结束。
可选地,所述步骤4中,当判断待进入区段为普通区段且该区段为列车前进序列中的中间区段时,所述步骤4包括如下步骤:
步骤4-x,在站场图上将列车对象当前区段属性的值所对应的区段显示为区段出清,将列车对象待进入区段属性的值所对应的区段显示为区段占用;
步骤4-y,以列车对象待进入区段属性的值更新列车对象当前区段属性,以列车前进序列中待进入区段的下一区段的标识值,对列车对象待进入区段属性进行更新;
跳转执行步骤2。
可选地,所述步骤4中,当判断待进入区段为普通区段且该区段为列车前进序列中的最后一个区段时,所述步骤4包括如下步骤:
步骤4-a,在站场图上将列车对象当前区段属性的值所对应的区段显示为区段出清,将列车对象待进入区段属性的值所对应的区段显示为区段占用;
步骤4-b,以列车对象待进入区段属性的值更新列车对象当前区段属性;
根据列车对象当前区段属性的值查询数据库,确定列车待进入的下一进路,以该进路对应的区段序列对列车对象前进序列属性进行更新,以该进路对应的区段序列中第一个区段的标识值对列车对象待进入区段属性进行更新;
步骤4-c,从数据库中获取所述下一进路的仿真数据;
步骤4-d,根据获取到的仿真数据,判断所述下一进路是否可以进入,
若可以进入,跳转执行步骤2,
若不可进入,则跳转执行步骤4-c。
可选地,所述根据获取到的仿真数据,判断所述下一进路是否可以进入,包括:
从仿真数据中获取所述下一进路的防护信号机的设备开闭状态信息,
当该信号机为打开时,判断所述下一进路可以进入,
当该信号机为关闭时,判断所述下一进路不可以进入。
可选地,所述步骤1中,初始化列车对象的当前区段属性值、待进入区段属性值以及前进序列属性值,包括:
以系统中预设起始区段的标识值对列车对象当前区段属性进行初始化;
根据列车对象当前区段属性的值查询数据库,确定该区段所属的进路,以该进路对应的区段序列对列车对象前进序列属性进行初始化,以该进路对应的区段序列中预设起始区段的下一区段的标识值对列车对象待进入区段属性进行初始化。
可选地,所述获取站场设备信息,具体包括:
接收用户输入的模拟数据,以获取所述站场设备信息;或者,
接收实际的站场设备发来的上传数据,以获取所述站场设备信息。
第二方面,
本申请提供一种可读存储介质,其上存储有可执行程序,所述可执行程序被处理器执行时实现上述所述方法的步骤。
第三方面,
本申请提供一种电子设备,包括:
存储器,其上存储有可执行程序;
处理器,用于执行所述存储器中的所述可执行程序,以实现上述所述方法的步骤。
本申请采用以上技术方案,至少具备以下有益效果:
本申请的技术方案提出的行车模拟实现方法,无需实体的仿真小车,就可实现计算机联锁仿真系统中的行车模拟,降低了计算机联锁仿真系统的产品成本,有利于联锁仿真系统在轨道交通培训中的推广应用。
本发明的其他优点、目标,和特征在某种程度上将在随后的说明书中进行阐述,并且在某种程度上,基于对下文的考察研究对本领域技术人员而言将是显而易见的,或者可以从本发明的实践中得到教导。本发明的目标和其他优点可以通过下面的说明书,权利要求书,以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本申请的技术方案或现有技术的进一步理解,并且构成说明书的一部分。其中,表达本申请实施例的附图与本申请的实施例一起用于解释本申请的技术方案,但并不构成对本申请技术方案的限制。
图1为本申请一个实施例提供的联锁仿真系统行车模拟的实现方法的流程示意图;
图2为本申请另一个实施例提供的联锁仿真系统系统行车模拟的实现方法的流程示意图;
图3为本申请另一个实施例提供的联锁仿真系统人工行车模拟的实现方法的判断逻辑示意图;
图4为本申请一个实施例提供的电子设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将对本申请的技术方案进行详细的描述。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所得到的所有其它实施方式,都属于本申请所保护的范围。
计算机联锁仿真系统具有和真实联锁系统一模一样的功能界面,可以让学生学习和了解联锁系统的功能模块及工作原理。真实的联锁系统是通过采集列车的实时位置,然后表现到站场图界面上(列车在哪一条区段上,区段表现为红色,蓝色表示空闲区段),操作者可以监控每辆列车的实时位置,及时通过操作命令来调度列车的运行状态。现有的联锁仿真系统中,采用实体仿真小车来代替真实列车进行行车模拟,实现复杂成本高,不利于联锁仿真系统在轨道交通培训中的推广应用。
为此,本申请提出一种联锁仿真系统行车模拟的实现方法,基于纯粹软件模拟,在联锁仿真系统中实现行车模拟。如图1所示,该实现方法包括:
步骤S110,获取站场设备信息;
需要说明的是,这里获取站场设备信息的方式包括两种,一种为由用户输入相关模拟数据(包括设定了哪些站场设备,设定的站场设备的状态等数据信息),系统接收用户输入的模拟数据,以获取站场设备信息或者;或者,另一种实现方式,系统与连接了实际站场设备的联锁下位机进行数据通信,接收实际的站场设备发来的上传数据,以获取站场设备信息。
具体的,这里的站场设备包括信号机设备、道岔设备、轨道电路等相关设备。
之后,进行步骤S120,基于获取到的站场设备信息,建立并维护存储设备仿真数据的数据库;
该数据库包括以进路表的形式存储的设备仿真数据。具体的,进路表保存的是所有进路的信息,其中包含每条进路中所包含的区段,道岔,信号机,如A进路依次包括区段a1、区段a2、区段a2,这些数据都是静态数据;还包括这些区段、道岔、信号机的动态数据,如某一信号机的开闭状态,这些动态数据需要实时获取、并维护进数据库中。
基于步骤2中数据库,进行步骤S130,接收用户的操作信息,基于操作信息和数据库中的设备仿真数据对行车进行模拟仿真。
这里的操作信息指用户使用联锁仿真系统进行行车模拟时发指出的操作指令,如点击模拟行车开始的按钮控件。本申请中的行车模拟的实现方法,可实现联锁仿真系统中系统行车功能和人工行车功能。
系统行车是按照预先排列好的进路,按照信号机的开放情况和进路方向进行自动驾驶和停车,并在站场图上进行展示。人工行车则把控制权交到用户的手中,由操作者发出人工行驶和人工停车命令进行行车模拟,并在站场图上进行展示。
下面首先对系统行车的实现方法进行介绍。如图2所示,为本申请一实施例中系统行车模拟的实现方法的流程示意图。
该实施例中,用户点击“系统行车”功能区的【编辑车次】按钮,在弹出的对话框中编辑设定列车的车次信息,在点击确定后,如图2所示,系统后台进行如下步骤来实现系统行车模拟:
步骤1,根据用户输入的操作指令(指用户前文操作所对应的系统操作指令),在内存中建立列车对象X,初始化列车对象X的当前区段属性、待进入区段属性以及前进序列属性,并在站场图上将列车对象当前区段属性的值所对应的区段显示为区段占用(为表述方便,图2中,列车对象X的当前区段属性、待进入区段属性,前进序列属性分别对应以x_1、x_2、x_3指代);
具体的,步骤1中,初始化列车对象的当前区段属性值、待进入区段属性值以及前进序列属性值,包括:
以系统中预设起始区段的标识值对列车对象当前区段属性进行初始化赋值;
根据列车对象当前区段属性的值查询数据库,(如查询数据库中的进路表中,由区段反查进路),确定该区段所属的进路,以该进路对应的区段序列(由于区段标识值构成的序列)对列车对象前进序列属性进行初始化,以该进路对应的区段序列中预设起始区段的下一区段的标识值对列车对象待进入区段属性进行初始化。
之后进行步骤2,读取列车对象待进入区段属性x_2的值,根据该值查询数据库获取待进入区段的仿真数据;举例而言,仿真数据包括:区段是停车站台区段还是普通区段,在所属进路中是否为最后一个区段等。
之后进行步骤3,基于待进入区段的仿真数据,判断待进入区段的类型;
之后进行步骤4,基于步骤3中判断结果对列车行为进行模拟,更新列车对象的各属性值,并在站场图上显示模拟结果。
该实施例中,步骤3中的判断是通过两步判断来实现的,首先判断待进入区段是否为停车站台区段,若不是则进一步判断是否为进路中最后一个区段。判断结果有三种,分别为,是停车站台区段,是普通区段而不是最后一个区段,是普通区段且为最后一个区段。
针对三种结果,如图2所示,该实施例中后续有不同的执行分支,下面分别进行介绍。
当判断待进入区段的类型为停车站台区段时
步骤4包括,
步骤4-1,在站场图上将列车对象当前区段属性x_1的值所对应的区段显示为区段出清,将列车对象待进入区段属性x_2的值所对应的区段显示为区段占用。
在实际中,站内的铁路线路根据站内作业的需要划分成段,并在每一段上装设轨道电路,装设了轨道电路的线路区段称为轨道电路区段,简称为轨道区段。区段出清,即指某一轨道电路区段中的列车驶离本区段,使这一区段的轨道电路空闲。区段占用,即指某一轨道电路区段中的列车占用本区段,使这一区段的轨道电路处于占用状态。本申请是应用于联锁仿真系统中的,步骤4-1中的区段出清、区段占用内涵与实际中类似,外在结果是将这两种状态显示更新到站场图上,例如在站场图上将区段占用的区段所对应的图形元素显示为红色,将区段出清的区段所对应的图形元素显示为蓝色。
步骤4-2,提示行车模拟结束。即提示模拟仿真列车到站了,行车模拟结束。
当判断待进入区段为普通区段且该区段为列车前进序列中的中间区段时
如图2所示,步骤4包括如下步骤:
步骤4-x,在站场图上将列车对象当前区段属性x_1的值所对应的区段显示为区段出清,将列车对象待进入区段属性x_2的值所对应的区段显示为区段占用;
步骤4-y,以列车对象待进入区段属性x_2的值更新列车对象当前区段属性x_1,以列车前进序列中待进入区段的下一区段的标识值,对列车对象待进入区段属性x_2进行更新;
之后跳转执行步骤2。即执行分支执行结果是,在站场图上显示列车前进一区段,并准备进入该进路中的下一区段。
当判断待进入区段为普通区段且该区段为列车前进序列中的最后一个区段时
如图2所示,步骤4包括如下步骤:
步骤4-a,在站场图上将列车对象当前区段属性x_1的值所对应的区段显示为区段出清,将列车对象待进入区段属性x_2的值所对应的区段显示为区段占用;
步骤4-b,以列车对象待进入区段属性x_2的值更新列车对象当前区段属性x_1;根据列车对象当前区段属性x_1的值查询数据库,确定列车待进入的下一进路,以该进路对应的区段序列对列车对象前进序列属性x_3进行更新,以该进路对应的区段序列中第一个区段的标识值对列车对象待进入区段属性x_2进行更新;
需要说明的是,这里根据列车对象当前区段属性x_1的值查询数据库,确定列车待进入的下一进路,具体是指,由当前区段,反查其所属进路,进而确定所属进路的终止信号机,而如果一条进路的终止信号机是另一条进路的起始信号机,则可以确定这两条进路的连续关系,由此可确定待进入的下一进路。
步骤4-c,从数据库中获取下一进路的仿真数据;
步骤4-d,根据获取到的仿真数据,判断下一进路是否可以进入,若可以进入,跳转执行步骤2,若不可进入,则跳转执行步骤4-c。
具体的,步骤4-d中,根据获取到的仿真数据,判断所述下一进路是否可以进入,包括:
从仿真数据中获取下一进路的防护信号机的设备开闭状态信息,当该信号机为打开时,判断该下一进路可以进入,当该信号机为关闭时,判断该下一进路不可以进入。
以上为该实施例中,系统行车模拟实现方法的流程介绍。该实施例中,是仅针对一列车场景下的模拟实现,而容易理解的,当针对多列列车场景下模拟时,可开启多个线程,对应创建不同的列车对象进行模拟,并基于列车对象占用区段及进路的信息,在数据库中更新设备动态数据,这样每个列车就像是真实的列车一样相互独立,实现多列列车模拟了。
此外,在上述系统行车模拟基础上,人工行车模拟实现,其也需要从数据库根据列车所在位置获取到前方进路中信号机和区段的信息,如果前方进路是正常锁闭,并且信号机是开放状态,人工行车也是按照和系统行车一样的逻辑进行行驶,但是如果信号机是关闭状态,此时列车也可以越过信号机,继续向前行驶。信号机关闭有两种情况,一种是没有排列进路,一种是排列了进路,但是因为进路中有些区段被解锁,导致进路不完整,因而信号机关闭了,第二种情况,列车经过已经解锁的区段后,该区段会变为故障区段,列车出清(离开)该区段后,需要用区段解除按钮将该区段的故障解除,否则不能排列任何经过该区段的进路;如果列车运行前方区段中包含有道岔,则需要判断道岔是否处于锁闭状态,如果是未锁闭,则会出现挤岔故障导致列车停车;另一种停车的方法就是右键菜单中的人工停车进行停车;人工行车的界面表现形式和系统行车一样,都是通过程序直接修改站场图中列车所在区段的占用状态,来实现模拟的。
一些实施例中,人工行车模拟的后台判断逻辑如图3所示,基于此判断逻辑结合前文对系统行车模拟的实现方法介绍,本领域技术人员很容易得出人工行车模拟的实现方式方法,本申请这里对其就不进行详述了。
本申请的技术方案,提出的行车模拟实现方法,无需实体的仿真小车,就可实现计算机联锁仿真系统中的行车模拟,降低计算机联锁仿真系统的产品成本,有利于联锁仿真系统在轨道交通培训中的推广应用。
在一个实施例中,本申请还提供了一种可读存储介质,其上存储有可执行程序,可执行程序被处理器执行时实现上述方法的步骤。
关于上述实施例中的可读存储介质,其存储的执行程序执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图4为本申请一个实施例提供的电子设备的结构示意图,如图4所示,该电子设备400包括:
存储器401,其上存储有可执行程序;
处理器402,用于执行存储器401中的可执行程序,以实现上述方法的步骤。
关于上述实施例中的电子设备400,其处理器402执行存储器401中的程序的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉该技术的人员在本发明所揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。