CN110716471A - 制动机制动控制单元双cpu热备冗余控制方法及装置 - Google Patents
制动机制动控制单元双cpu热备冗余控制方法及装置 Download PDFInfo
- Publication number
- CN110716471A CN110716471A CN201911039782.9A CN201911039782A CN110716471A CN 110716471 A CN110716471 A CN 110716471A CN 201911039782 A CN201911039782 A CN 201911039782A CN 110716471 A CN110716471 A CN 110716471A
- Authority
- CN
- China
- Prior art keywords
- control cpu
- main control
- state
- cpu
- preset
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0428—Safety, monitoring
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/24—Pc safety
- G05B2219/24182—Redundancy
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Hardware Redundancy (AREA)
- Safety Devices In Control Systems (AREA)
Abstract
本发明提供一种制动机制动控制单元双CPU热备冗余控制方法及装置,应用于主控CPU,包括:在确定主控CPU已产生预定类型的工作故障或确定主控CPU已响应辅控CPU发送的切换请求的情况下,触发主控CPU由当前的控制状态切换为非控制状态;判断主控CPU是否在预设的切换次数内成功切换为非控制状态,若主控CPU在预设的切换次数内未成功切换为非控制状态,则强制主控CPU切换为非控制状态。通过本发明实施例所提供的方法,当需要主控CPU停止对相应功能的控制时,可以通过重复触发主控CPU由控制状态切换为非控制状态或强制主控CPU切换为非控制状态,可靠解除主控CPU的控制状态,提高制动机进行制动操作的安全性。
Description
技术领域
本发明涉及自动控制技术领域,特别是涉及一种制动机制动控制单元双CPU热备冗余控制方法及装置。
背景技术
随着轨道交通的快速发展,列车的安全性能也面临着新的挑战。列车的制动机是保障列车运行安全的关键部件之一。其中,制动机的制动控制单元为制动机准确进行制动控制起到了重要作用。制动机依据制动控制单元发出的控制信号,执行制动操作。
制动控制单元中的CPU是制动控制单元执行相应功能,准确发出控制信号的中心模块。为了维持制动控制单元的正常运作,保障制动机执行正确的制动操作,在现有技术中,可以在制动控制单元中设置两个CPU,其中一个CPU作为制动控制单元运行过程中的主控CPU,执行相应的控制功能;另一CPU作为辅助CPU,处于在线工作而不实行相应控制的热备用状态。在当前实行控制的主控CPU出现故障时,可以停止当前主控CPU的控制工作,并启用冗余设置的辅控CPU作为新的主控CPU,执行相应的控制工作,以保障制动控制单元的正常运作。
发明人经过研究发现,在主控CPU出现故障,需要切换为辅助CPU继续执行相应控制工作的过程中,存在主控CPU未停止控制工作,而辅助CPU已切换为新的主控CPU执行控制工作的情况,导致两个CPU均执行相应的控制工作,造成控制紊乱,降低了制动机制动的安全性。
发明内容
有鉴于此,本发明实施例提供一种制动机制动控制单元双CPU热备冗余控制方法,以解决双CPU热备冗余控制的切换控制过程中两个CPU同时实行控制,造成控制紊乱,降低了制动机制动安全性的问题。
本发明实施例还提供了一种制动机制动控制单元双CPU热备冗余控制装置,用以保证上述方法实际中的实现及应用。
为实现上述目的,本发明实施例提供如下技术方案:
一种制动机制动控制单元双CPU热备冗余控制方法,所述方法应用于主控CPU,所述方法包括:
在确定所述主控CPU已产生预定类型的工作故障或确定所述主控CPU已响应辅控CPU发送的切换请求的情况下,触发所述主控CPU由当前的控制状态切换为非控制状态;
判断所述主控CPU是否在预设的切换次数内成功切换为非控制状态,若所述主控CPU在预设的切换次数内未成功切换为非控制状态,则强制所述主控CPU切换为非控制状态。
上述的方法,可选的,所述确定所述主控CPU已产生预定类型的工作故障,包括:
获取所述主控CPU在控制状态下的各个状态参数;
依据各个所述状态参数诊断所述主控CPU是否存在工作故障;
若所述主控CPU存在工作故障,则确定所述工作故障的故障类型;
若所述工作故障的故障类型为预定类型,则确定所述主控CPU已产生预定类型的工作故障。
上述的方法,可选的,所述确定所述主控CPU已响应辅控CPU发送的切换请求,包括:
当所述主控CPU接收到所述辅控CPU发送的切换请求时,判断所述主控CPU是否执行与所述辅控CPU发送的切换请求对应的执行动作;
若所述主控CPU执行与所述切换请求对应的执行动作,确定所述主控CPU已响应所述辅控CPU发送的切换请求。
上述的方法,可选的,所述触发所述主控CPU由当前的控制状态切换为非控制状态,包括:
向所述主控CPU发送切换指令,触发所述主控CPU依据所述切换指令由当前的控制状态切换为非控制状态。
上述的方法,可选的,所述判断所述主控CPU是否在预设的切换次数内成功切换为非控制状态,包括:
在所述主控CPU首次由控制状态切换为非控制状态时,启动预设的第一计数器进行计数,并判断所述主控CPU的状态标识是否已更新为预设的非控制状态标识;
若所述主控CPU的状态标识未更新为预设的非控制状态标识,则重新将所述主控CPU由控制状态切换为非控制状态,并对所述第一计数器的计数值加1;
当所述计数器的计数值达到预设数值时,判断所述主控CPU的状态标识是否已更新为所述预设的非控制状态标识;
若所述主控CPU的状态标识未更新为所述预设的非控制状态标识,则确定所述主控CPU在预设的切换次数内未成功切换为非控制状态。
一种制动机制动控制单元双CPU热备冗余控制装置,所述装置应用于主控CPU,所述装置包括:
第一触发单元,用于在确定所述主控CPU已产生预定类型的工作故障或确定所述主控CPU已响应辅控CPU发送的切换请求的情况下,触发所述主控CPU由当前的控制状态切换为非控制状态;
第一判断单元,用于判断所述主控CPU是否在预设的切换次数内成功切换为非控制状态,若所述主控CPU在预设的切换次数内未成功切换为非控制状态,则强制所述主控CPU切换为非控制状态。
上述的装置,可选的,所述第一触发单元,包括:
参数获取单元,用于获取所述主控CPU在控制状态下的各个状态参数;
故障判断单元,用于依据各个所述状态参数诊断所述主控CPU是否存在工作故障;
类型确定单元,用于若所述主控CPU存在工作故障,则确定所述工作故障的故障类型;
预定类型单元,用于若所述工作故障的故障类型为预定类型,则确定所述主控CPU已产生预定类型的工作故障。
上述的装置,可选的,所述第一触发单元,包括:
第一响应请求单元,用于当所述主控CPU接收到所述辅控CPU发送的切换请求时,判断所述主控CPU是否执行与所述辅控CPU发送的切换请求对应的执行动作;
第一响应成功单元,用于若所述主控CPU执行与所述辅控CPU发送的切换请求对应的执行动作,确定所述主控CPU已响应所述辅控CPU发送的切换请求。
上述的装置,可选的,所述第一触发单元,包括:
触发切换单元,用于向所述主控CPU发送切换指令,触发所述主控CPU依据所述切换指令由当前的控制状态切换为非控制状态。
上述的装置,可选的,所述第一判断单元,包括:
第一判断子单元,用于在所述主控CPU首次由控制状态切换为非控制状态时,启动预设的第一计数器进行计数,并判断所述主控CPU的状态标识是否已更新为预设的非控制状态标识;
第一重新切换单元,用于若所述主控CPU的状态标识未更新为预设的非控制状态标识,则重新将所述主控CPU由控制状态切换为非控制状态,并对所述第一计数器的计数值加1;
第一状态判断单元,用于当所述第一计数器的计数值达到预设数值时,判断所述主控CPU的状态标识是否已更新为所述预设的非控制状态标识;
第一状态确认单元,用于若所述主控CPU的状态标识未更新为所述预设的非控制状态标识,则确定所述主控CPU在预设的切换次数内未成功切换为非控制状态。
一种制动机制动控制单元双CPU热备冗余控制方法,所述方法应用于辅控CPU,所述方法包括:
在确定所述辅控CPU已响应主控CPU发送的切换请求或确定所述辅控CPU与所述主控CPU之间存在通信故障情况下,触发所述辅控CPU由当前的非控制状态切换为控制状态;
判断所述辅控CPU是否在预设的切换次数内成功切换为控制状态,若所述辅控CPU在预设的切换次数内未成功切换为控制状态,则停止将所述辅控CPU切换为控制状态。
上述的方法,可选的,所述确定所述辅控CPU已响应主控CPU发送的切换请求,包括:
当所述辅控CPU接收到所述主控CPU发送的切换请求时,判断所述辅控CPU是否执行与所述主控CPU发送的切换请求对应的执行动作;
若所述辅控CPU执行与所述主控CPU发送的切换请求对应的执行动作,确定所述辅控CPU已响应所述主控CPU发送的切换请求。
上述的方法,可选的,所述判断所述辅控CPU是否在预设的切换次数内成功切换为控制状态,包括:
在所述辅控CPU首次由非控制状态切换为控制状态时,启动预设的第二计数器进行计数,并判断所述辅控CPU的状态标识是否已更新为预设的控制状态标识;
若所述辅控CPU的状态标识未更新为预设的控制状态标识,则重新将所述辅控CPU由非控制状态切换为控制状态,并对所述第二计数器的计数值加1;
当所述第二计数器的计数值达到预设数值时,判断所述辅控CPU的状态标识是否已更新为所述预设的控制状态标识;
若所述辅控CPU的状态标识未更新为所述预设的控制状态标识,则确定所述辅控CPU在预设的切换次数内未成功切换为控制状态。
一种制动机制动控制单元双CPU热备冗余控制装置,所述装置应用于辅控CPU,所述装置包括:
第二触发单元,用于在确定所述辅控CPU已响应主控CPU发送的切换请求或确定所述辅控CPU与所述主控CPU之间存在通信故障情况下,触发所述辅控CPU由当前的非控制状态切换为控制状态;
第二判断单元,用于判断所述辅控CPU是否在预设的切换次数内成功切换为控制状态,若所述辅控CPU在预设的切换次数内未成功切换为控制状态,则停止将所述辅控CPU切换为控制状态。
上述的装置,可选的,所述第二触发单元,包括:
第二响应请求单元,用于当所述辅控CPU接收到所述主控CPU发送的切换请求时,判断所述辅控CPU是否执行与所述主控CPU发送的切换请求对应的执行动作;
第二响应成功单元,用于若所述辅控CPU执行与所述主控CPU发送的切换请求对应的执行动作,确定所述辅控CPU已响应所述主控CPU发送的切换请求。
上述的装置,可选的,所述第二判断单元,包括:
第二判断子单元,用于在所述辅控CPU首次由非控制状态切换为控制状态时,启动预设的第二计数器进行计数,并判断所述辅控CPU的状态标识是否已更新为预设的控制状态标识;
第二重新切换单元,用于若所述辅控CPU的状态标识未更新为预设的控制状态标识,则重新将所述辅控CPU由非控制状态切换为控制状态,并对所述第二计数器的计数值加1;
第二状态判断单元,用于当所述第二计数器的计数值达到预设数值时,判断所述辅控CPU的状态标识是否已更新为所述预设的控制状态标识;
第二状态确认单元,用于若所述辅控CPU的状态标识未更新为所述预设的控制状态标识,则确定所述辅控CPU在预设的切换次数内未成功切换为控制状态。
基于上述本发明实施例提供的制动机制动控制单元双CPU热备冗余控制方法,包括:在确定所述主控CPU已产生预定类型的工作故障或确定所述主控CPU已响应辅控CPU发送的切换请求的情况下,触发所述主控CPU由当前的控制状态切换为非控制状态;判断所述主控CPU是否在预设的切换次数内成功切换为非控制状态,若所述主控CPU在预设的切换次数内未成功切换为非控制状态,则强制所述主控CPU切换为非控制状态。
通过本发明实施例提供的制动机制动控制单元双CPU热备冗余控制方法,可以在实行控制的主控CPU出现故障或是为响应辅控CPU所发送的切换请求,需要解除主控CPU对相应功能的控制的情况下,触发主控CPU由控制状态切换为非控制状态,在主控CPU的切换过程中,若是主控CPU在预设的切换次数内无法成功切换为非控制状态,则强制所述主控CPU切换为非控制状态,由此实现主控CPU在需放弃控制权限时,能够保障主控CPU不再对相应功能实行控制,避免辅控CPU已取得相应的控制权限时,主控CPU还在不断重复尝试切换,而尚未结束相应的控制工作。能够在产生切换需求时,可靠解除主控CPU对相应功能的控制,保障制动安全。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的制动机制动控制单元双CPU热备冗余控制方法的方法流程图;
图2为本发明实施例提供的主控CPU的切换判断的流程图;
图3为本发明实施例提供的主控CPU的切换控制的流程图;
图4本发明实施例提供的制动机制动控制单元双CPU热备冗余控制装置的结构示意图;
图5为本发明实施例提供的制动机制动控制单元双CPU热备冗余控制方法的另一方法流程图;
图6为本发明实施例提供的辅控CPU的切换判断的流程图;
图7为本发明实施例提供的辅控CPU的切换控制的流程图;
图8为本发明实施例提供的制动机制动控制单元双CPU热备冗余控制装置的另一结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本申请中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
由背景技术可知,在制动机制动控制单元双CPU热备冗余的控制中,若是主控CPU发生故障,需要进行控制权限的切换时,可能导致两个CPU同时实行控制的情况,导致控制紊乱,可能会对制动安全造成影响。
因此,本发明实施例通过主控CPU无法在预定切换次数内成功切换为非控制状态时,强制对主控CPU的控制状态进行切换,强制主控CPU解除控制权限,避免两个CPU同时拥有控制权限。
本发明实施例提供了一种制动机制动控制单元双CPU热备冗余控制方法,所述方法可以应用于制动机制动控制单元的主控CPU中,其执行主体可以为所述主控CPU,也可以为集成在所述主控CPU中的程序模块,所述方法的方法流程图如图1所示,包括:
S101:在确定所述主控CPU已产生预定类型的工作故障或确定所述主控CPU已响应辅控CPU发送的切换请求的情况下,触发所述主控CPU由当前的控制状态切换为非控制状态;
本发明实施例提供的方法中,当主控CPU控制制动机的制动控制单元中的工作模块执行相应功能,以控制制动控制单元向制动机发出相应的制动控制信号,使制动机依据制动控制单元的制动控制信号进行制动操作的时候,主控CPU可以监测所述主控CPU的运行状态,以及可以监听是否接收辅控CPU的切换请求。对主控CPU的运行状态监测以及切换请求的监听可以为实时监测,也可以为周期性监测。当主控CPU监测到所述主控CPU产生预定类型的工作故障或监听到辅控CPU的切换请求时,主控CPU发送指令控制所述主控CPU由当前的控制状态切换为非控制状态,解除主控CPU对制动控制单元中相应功能的控制。
S102:判断所述主控CPU是否在预设的切换次数内成功切换为非控制状态,若所述主控CPU在预设的切换次数内未成功切换为非控制状态,则强制所述主控CPU切换为非控制状态。
本发明实施例提供的方法中,当触发所述主控CPU由当前的控制状态切换为非控制状态后,可以在主控CPU没有成功切换为非控制状态时,使主控CPU重新由控制状态切换为非控制状态,并统计主控CPU的切换次数。可以通过判断所述主控CPU是否在预设的切换次数内成功切换为非控制状态,如果主控CPU在预设的切换次数内未成功切换为非控制状态,则可以向所述主控CPU发送预设的强制切换指令,使所述主控CPU基于所述强制切换指令强制所述主控CPU解除对相应功能的控制状态。
基于本发明实施例所提供的应用于主控CPU的制动机制动控制单元双CPU热备冗余控制方法,可以通过在产生预定类型的工作故障或相应辅控CPU发送的切换请求的情况下,触发所述主控CPU由当前的控制状态切换为控制状态,通过对切换次数的统计,当判断所述主控CPU在预设的切换次数内仍未成功切换为非控制状态,则可以依据预设的强制切换指令,强制所述主控CPU切换为非控制状态,强制切断所述主控CPU的相应控制,而不再尝试逐一切换对各个功能的控制状态。通过本发明实施例所提供的方法,当主控CPU需要结束控制时,可以及时将主控CPU的控制状态切换为非控制状态,避免需停止控制的主控CPU与受到触发获取控制权限的原辅控CPU同时实行控制,导致控制功能紊乱,同时也可以避免发生关键性故障的主控CPU在一定时间内仍实行控制,而导致发出错误指令,给制动安全带来不利影响,由此提高制动机制动的安全性。
接下来进一步对上述图1所示本发明实施例提供的方法,进行举例说明。
上述本发明实施例图1公开的步骤S101所涉及确定所述主控CPU已产生预定类型的工作故障,可以通过获取所述主控CPU在控制状态下的各个状态参数,依据各个所述状态参数诊断所述主控CPU是否存在工作故障,例如可以获取已知在主控CPU各个功能运行正常的情况下,正常状态参数的范围。将所述主控CPU的各个实时的状态参数与对应的正常状态参数的范围进行比较,若是实时的状态参数不在对应的正常状态参数的范围中,可以认为所述主控CPU出现了工作故障。若诊断所述主控CPU存在工作故障,则确定所述工作故障的故障类型,例如根据状态参数所关联的功能,确定工作故障类型。将确定的工作故障类型与预定类型相比较,若是确定的工作故障类型与预定类型相同,则确定所述主控CPU产生预定类型的工作故障。所述预定类型,可以根据实际需求确定,例如可以将对制动控制产生关键性作用的数据采集、数据计算、数据通信等功能的故障类型作为预定类型。
本发明实施例所提供的方法,可以通过故障诊断,根据诊断结果判断是否触发主控CPU由控制状态切换为非控制状态,可以根据实际需求确定需进行主控CPU切换控制的预定类型,当保障准确实现制动控制的关键性功能出现故障时触发主控CPU的切换控制,在对制动控制影响甚微或没有影响的功能出现故障时可以不进行主控CPU的切换。
另一方面,上述本发明实施例图1公开的步骤S101所涉及确定所述主控CPU已响应辅控CPU发送的切换请求,可以通过在主控CPU的工作故障诊断中没有产生故障或是故障类型不是预定类型的情况下,监听主控CPU上与辅控CPU进行通信的预定通信接口,也可以依据预设的监听周期,监听主控CPU上与辅控CPU进行通信的预定通信接口,当所述主控CPU接收到所述辅控CPU通过主控CPU上预定的通信接口发送的切换请求时,判断所述主控CPU是否执行与所述辅控CPU发送的切换请求对应的执行动作,例如判断主控CPU是否应答所述辅控CPU发送的切换请求,如是否向所述辅控CPU发送响应信息。若所述主控CPU执行与所述辅控CPU发送的切换请求对应的执行动作,例如所述主控CPU已经应答所述辅控CPU所发送的切换请求,则确定所述主控CPU已响应所述辅控CPU发送的切换请求。
本发明实施例所提供的方法,可以通过监听是否接收到辅控CPU的切换请求,当监听到辅控CPU发送的切换请求时,触发主控CPU由控制状态切换为非控制状态,通过本发明实施例所提供的方法,可以在辅控CPU端需对制动控制单元的相应功能进行控制时,使主控CPU进行控制状态的切换,解除对相应功能的控制。
接下来,进一步举例说明上述本发明实施例图1公开的步骤S102涉及到的判断所述主控CPU是否在预设的切换次数内成功切换为非控制状态的过程,参考图2,示出了本发明实施例提供的主控CPU的切换判断的流程图,包括以下步骤:
S201:在所述主控CPU首次由控制状态切换为非控制状态时,启动预设的第一计数器进行计数,并判断所述主控CPU的状态标识是否已更新为预设的非控制状态标识;
本发明实施例提供的方法中,可以在首次向所述主控CPU发送切换指令,触发所述主控CPU依据所述切换指令由当前的控制状态切换为非控制状态后,启动预设的计数器进行计数。当所述主控CPU基于切换指令完成切换过程后,判断所述主控CPU的状态标识是否已更新为预设的非控制状态标识,用以确定所述主控CPU是否基于切换指令成功切换为非控制状态,可以通过获取所述主控CPU的状态标识及预设的非控制状态标识,将所述主控CPU的状态标识与预设的非控制状态标识进行比较,若是所述主控CPU的状态标识与所述预设的非控制状态标识相同,则判断所述主控CPU的状态标识已更新为预设的非控制状态标识,若是所述主控CPU的状态标识与所述预设的非控制状态标识不同,则判断所述主控CPU的状态标识未更新为预设的非控制状态标识。所述主控CPU的状态标识,可以将表征所述主控CPU需解除控制的各个控制功能的参数作为状态标识,例如数据通信功能中表征通信对象的端口地址。也可以设置主控CPU的寄存器,用以表征主控CPU对相应功能的控制状态,可以通过预设的判断设置,当所述主控CPU将对相应功能的控制权限进行切换后,根据切换后的反馈向指定的寄存器中写入对应的数值,将寄存器中的数值作为状态标识。
S202:若所述主控CPU的状态标识未更新为预设的非控制状态标识,则重新将所述主控CPU由控制状态切换为非控制状态,并对所述第一计数器的计数值加1;
本发明实施例提供的方法中,当通过判断得知所述主控CPU的状态标识未更新为预设的非控制状态标识时,则再次向所述主控CPU发送切换指令,主控CPU基于切换指令重新进行将所述主控CPU由控制状态切换为非控制状态的过程,并对启用的所述第一计数器的计数值加1。
S203:当所述第一计数器的计数值达到预设数值时,判断所述主控CPU的状态标识是否已更新为所述预设的非控制状态标识;
本发明实施例提供的方法中,可以根据实际情况对主控CPU的切换次数设置相应的数值,可以在计数器每次进行计数值的累加后,将计数器的计数值与预设数值进行比较,当所述计数器的计数值达到预设数值时,判断所述主控CPU的状态标识是否已更新为所述预设的非控制状态标识,具体判断方式可参见步骤S201中所述方式,此处不再赘述。
S204:若所述主控CPU的状态标识未更新为所述预设的非控制状态标识,则确定所述主控CPU在预设的切换次数内未成功切换为非控制状态。
本发明实施例提供的方法中,通过上述步骤的判断,当主控CPU在计数器的计数值达到预设数值的情况下,所述主控CPU的状态标识未更新为所述预设的非控制状态标识,即所述主控CPU仍未基于切换指令成功将控制状态切换为非控制状态,此时则确定所述主控CPU在预设的切换次数内未成功切换为非控制状态,需执行强制切换措施。
基于本发明实施例所提供的方法,可以通过在触发所述主控CPU由当前的控制状态切换为非控制状态后,启动计数器进行计数,通过获取主控CPU的状态标识与预设的非控制状态标识相比较,以判断所述主控CPU是否基于切换指令已切换为非控制状态。并依据计数值与预设数值的比较,判断切换次数是否在预设的切换次数内,当主控CPU在预设的切换次数内仍未成功切换为非控制状态时,可执行强制切换指令。通过本发明实施例提供的方法,可以根据实际需求对主控CPU基于切换指令的切换次数进行限制,灵活控制主控CPU的切换时间,保障主控CPU在预定时间内能够停止对相应功能的控制状态,避免主控CPU与辅控CPU同时对相应功能实行控制,造成控制紊乱,由此提高制动机制动的安全性。
为了更好地说明本发明实施例所提供的方法,接下来结合图3说明本发明实施例所提供的制动机制动控制单元双CPU热备冗余控制方法中主控CPU的切换控制过程,包括:
S301:诊断主控CPU是否存在工作故障;
本发明实施例提供的方法中,可以为主控CPU预先设置诊断周期,在主控CPU实行控制的过程中,当触发预设的诊断周期时,可以通过获取主控CPU的状态参数,诊断主控CPU是否存在工作故障,具体诊断过程可参见前述本发明实施例对步骤S101涉及确定所述主控CPU已产生预定类型的工作故障所做说明,此处不再赘述。当诊断所述主控CPU存在工作故障时,执行步骤S303,当诊断所述主控CPU不存在工作故障时,则执行步骤302。
S302:监听预定的通信接口是否接收到辅控CPU发送的切换请求;
本发明实施例提供的方法中,通过主控CPU监听主控CPU上与辅控CPU进行通信的通信端口,判断是否接收到辅控CPU通过所述通信端口发送的切换请求;若接收到所述辅控CPU发送的切换请求,则执行步骤309;若没有接收到所述辅控CPU发送的切换请求,则返回等待执行步骤301。
S303:确定所述工作故障的故障类型;
本发明实施例提供的方法中,当诊断所述主控CPU存在工作故障时,可以通过预先设定的故障分类确定所述工作故障的每个故障类型,并将所述工作故障的每个故障类型与预定类型进行比较,本发明实施例将数据采集故障、数据计算故障及数据通信故障作为预定类型,确定所述工作故障的故障类型后,执行步骤304。
S304:判断所述工作故障的故障类型是否为数据采集故障;
本发明实施例提供的方法中,将所述工作故障的每个故障类型与数据采集故障进行比较,若所述工作故障的故障类型中存在任意一个故障类型为数据采集故障,则判断所述工作故障为数据采集故障,执行步骤308;若所述工作故障的每个故障类型均不是数据采集故障,则执行305。
S305:判断所述工作故障的故障类型是否为数据计算故障;
本发明实施例提供的方法中,将所述工作故障的每个故障类型与数据计算故障进行比较,若所述工作故障的故障类型中存在任意一个故障类型为数据计算故障,则判断所述工作故障为数据计算故障,执行步骤308;若所述工作故障的每个故障类型均不是数据计算故障,则执行306。
S306:判断所述工作故障的故障类型是否为数据通信故障;
本发明实施例提供的方法中,将所述工作故障的每个故障类型与数据通信故障进行比较,若所述工作故障的故障类型中存在任意一个故障类型为数据通信故障,则判断所述工作故障为数据通信故障,执行步骤308;若所述工作故障的每个故障类型均不是数据通信故障,则执行307。
需要说明的是,预定类型的选择,故障类型的判断顺序均不影响本发明实施例提供的方法的实现。
S307:判断所述工作故障为其他故障,进行提示或警示;
本发明实施例提供的方法中,若所述工作故障的故障类型与预定类型均u相同,则判断所述工作故障为其他故障,可以通过指示灯等指示装置进行提示或警示,并执行步骤S302。
S308:主控CPU向辅控CPU发送切换请求;
本发明实施例提供的方法中,在此步骤中,由主控CPU向辅控CPU发送切换请求,并在发送切换请求后执行步骤S310。
S309:应答辅控CPU的切换请求;
本发明实施例提供的方法中,当主控CPU接收到所述辅控CPU发送的切换请求时,应答所述辅控CPU的切换请求,并在应答请求后执行步骤S310。
S310:触发主控CPU由当前的控制状态切换为非控制状态;
本发明实施例提供的方法中,可以通过向主控CPU发送切换指令,基于所述切换指令将主控CPU由当前的控制状态切换为非控制状态,并启动预设的计数器进行计数,完成切换过程后执行步骤S311。
S311:判断所述主控CPU是否成功切换为非控制状态;
本发明实施例提供的方法中,判断所述主控CPU是否成功切换为非控制状态的具体过程可参见上述本发明实施例所提供的步骤S201,此处不再赘述。当判断所述主控CPU成功切换为非控制状态时,则进入步骤S315结束切换控制。当判断所述主控CPU未成功切换为非控制状态时,执行步骤S312。
S312:计数器的计数值加1;
本发明实施例提供的方法中,对计数器的计数值加1后执行步骤S313。
S313:判断所述计数器的计数值是否达到预定数值;
本发明实施例提供的方法中,获取预定数值,并将预定数值与所述计数器的计数值进行比较,本发明实施例将预定数值设置为3,当计数器的计数值大于等于3时,则执行步骤314。若计数器的计数值小于3,则执行步骤310。例如主控CPU首次由控制状态切换为非控制状态时,切换失败,则计数器的计数值为1,小于预定数值3,则执行步骤314再次进行切换,当主控CPU第3次由控制状态切换为非控制状态时,仍未成功切换为非控制状态,此时计数器的计数值为3,已达到预定数值,则执行步骤314。
S314:将主控CPU强制切换为非控制状态;
本发明实施例提供的方法中,若所述主控CPU在预设的切换次数内未成功切换为非控制状态,则可以向所述主控CPU发送预设的强制切换指令,基于所述强制切换指令强制所述主控CPU切换为非控制状态,解除主控CPU对相应功能的控制,进入步骤S315结束切换控制。
S315:结束此次切换控制。
与图1所示制动机制动控制单元双CPU热备冗余控制方法的方法相对应的,本发明实施例还提供了一种制动机制动控制单元双CPU热备冗余控制装置,用于对图1中所示方法的具体实现,其结构示意图如图4所示,包括:
第一触发单元401,用于在确定所述主控CPU已产生预定类型的工作故障或确定所述主控CPU已响应辅控CPU发送的切换请求的情况下,触发所述主控CPU由当前的控制状态切换为非控制状态;
第一判断单元402,用于判断所述主控CPU是否在预设的切换次数内成功切换为非控制状态,若所述主控CPU在预设的切换次数内未成功切换为非控制状态,则强制所述主控CPU切换为非控制状态。
基于本发明实施例所提供的装置,可以通过调用第一触发单元401,在确定主控CPU已产生预定类型的工作故障或确定所述主控CPU已响应辅控CPU发送的切换请求的情况下,触发所述主控CPU由当前的控制状态切换为非控制状态,通过调用第二判断单元402,判断所述主控CPU是否在预设的切换次数内成功切换为非控制状态,若所述主控CPU在预设的切换次数内未成功切换为非控制状态,则强制所述主控CPU切换为非控制状态。通过本发明实施例提供的装置,当主控CPU需要结束控制时,可以及时将主控CPU的控制状态切换为非控制状态,避免需停止控制的主控CPU与受到触发获取控制权限的原辅控CPU同时实行控制,导致控制功能紊乱,同时也可以避免发生关键性故障的主控CPU在一定时间内仍实行控制,而导致发出错误指令,给制动安全带来不利影响,由此提高制动机制动的安全性。
接下来,本发明实施例提供了一种制动机制动控制单元双CPU热备冗余控制方法,所述方法可以应用于制动机制动控制单元的辅控CPU中,其执行主体可以为所述辅控CPU,也可以为集成在所述辅控CPU中的程序模块,所述方法的方法流程图如图5所述,包括:
S501:在确定所述辅控CPU已响应主控CPU发送的切换请求或确定所述辅控CPU与所述主控CPU之间存在通信故障情况下,触发所述辅控CPU由当前的非控制状态切换为控制状态;
本发明实施例提供的方法中,当辅控CPU在制动控制单元中,与主控CPU进行数据通信,仅实行备用功能而不对制动控制单元实行控制的时候,辅控CPU可以监听是否接收到主控CPU发送的切换请求,以及监测辅控CPU的运行状态。对主控CPU发送的切换请求的监听以及辅控CPU运行状态的监测可以是实时,也可以是周期性进行的。当辅控CPU监听到所述主控CPU发送的切换请求或监测到所述辅控CPU与主控CPU之间存在通信故障时,辅控CPU发送指令控制所述辅控CPU由当前的非控制状态切换为控制状态,实行对相应功能的控制。所述辅控CPU基于指令进行切换时,可以先确认主控CPU的控制状态,例如可以向主控CPU发送预设的状态查询指令,获取所述主控CPU的状态标识,在判断所述主控CPU已切换为非控制状态时,再将当前对相应功能不实行控制的非控制状态切换为实行控制的控制状态。
S502:判断所述辅控CPU是否在预设的切换次数内成功切换为控制状态,若所述辅控CPU在预设的切换次数内未成功切换为控制状态,则停止将所述辅控CPU切换为控制状态。
本发明实施例提供的方法中,当触发所述辅控CPU由当前的非控制状态切换为控制状态后,可以在辅控CPU没有成功切换为控制状态时,使辅控CPU重新尝试切换为控制状态,并统计辅控CPU的切换次数,可以通过判断所述辅控CPU是否在预设的切换次数内成功切换为控制状态,若所述辅控CPU在预设的切换次数内未成功切换为控制状态,则停止将所述辅控CPU切换为控制状态。
基于本发明实施所提供的应用于辅控CPU的制动机制动控制单元双CPU热备冗余控制方法,可以通过在所述辅控CPU已响应主控CPU发送的切换请求或确定所述辅控CPU与所述主控CPU之间存在通信故障情况下,触发所述辅控CPU由当前的非控制状态切换为控制状态,通过对切换次数的统计,当判断所述辅控CPU在预设的切换次数内仍未成功切换为控制状态,则停止将所述辅控CPU切换为控制状态。通过本发明实施例所提供的方法,辅控CPU可以在接收到主控CPU的切换请求时响应请求进行控制状态的切换,也可以在辅控CPU与主控CPU之间产生通信故障的情况下发起控制状态的切换,避免主控CPU已发起切换请求时因通信故障无法接收到主控CPU的切换请求,而导致辅控CPU无法触发由非控制状态切换控制状态。通过切换次数的判断,当所述辅控CPU在预设的切换次数内未成功切换为控制状态,则停止将所述辅控CPU切换为控制状态,可以在主控CPU因为一些故障无法顺利停止对相应功能的控制状态时,辅助CPU不再重复尝试切换为控制状态,避免与主控CPU同时实行控制功能,造成控制紊乱,由此提高制动机制动的安全性。
接下来进一步对上述图5所示本发明实施例提供的方法,进行举例说明。
上述本发明实施例图5公开的步骤S501中所涉及的确定所述辅控CPU已响应主控CPU发送的切换请求,可以通过辅控CPU在预设的监听周期内监听所述辅控CPU上与所述主控CPU进行通信的预定通信接口,当所述辅控CPU接收到所述主控CPU通过预定的通信接口发送的切换请求时,判断所述辅控CPU是否执行与所述主控CPU发送的切换请求对应的执行动作,例如是否应答所述主控CPU发送的切换请求,向主控CPU发送应答信息。若所述辅控CPU执行与所述主控CPU发送的切换请求对应的执行动作,如已经应答所述主控CPU的切换请求,则确定所述辅控CPU已响应所述主控CPU发送的切换请求。
上述本发明实施例图5公开的步骤S501中所涉及的确定所述辅控CPU与所述主控CPU之间存在通信故障,可以通过在预定的监听时间内,没有接收到所述主控CPU通过预定通信接口发送的切换请求时,监测所述辅控CPU的运行状态,例如可以获取所述辅控CPU的运行参数,如预定通信端口的端口地址等,基于所述运行参数对所述辅控CPU当前的运行状态进行故障诊断,当诊断所述辅控CPU的运行存在故障时,判断是否为辅控CPU与主控CPU之间的通信故障,若为辅控CPU与主控CPU之间的通信故障,则确定所述辅控CPU与所述主控CPU之间存在通信故障。也可以通过直接获取辅控CPU与主控CPU之间的通信参数,通过通信参数判断所述辅控CPU与主控CPU之间的通信是否出现故障,若所述通信参数出现异常,则确定所述辅控CPU与所述主控CPU之间存在通信故障。也可以通过通信检测,例如向主控CPU发送预设的数据请求,判断是否能够接收到主控CPU发送的数据响应,由此判断所述辅控CPU与主控CPU之间的通信是否出现故障。
接下来对上述本发明实施例图5公开的步骤S502涉及到的判断所述辅控CPU是否在预设的切换次数内成功切换为控制状态的过程进行举例说明,参考图6,示出了本发明实施例提供的辅控CPU的切换判断的流程图,包括以下步骤:
S601:在所述辅控CPU首次由非控制状态切换为控制状态时,启动预设的第二计数器进行计数,并判断所述辅控CPU的状态标识是否已更新为预设的控制状态标识;
本发明实施例提供的方法中,可以在首次向所述辅控CPU发送切换指令,触发所述辅控CPU依据所述切换指令由当前的非控制状态切换为控制状态后,启动预设的计数器进行计数。当所述辅控CPU基于切换指令完成切换过程后,判断所述辅控CPU的状态标识是否已更新为预设的控制状态标识,用以确定所述辅控CPU是否基于切换指令成功切换为控制状态,可以通过获取所述辅控CPU的状态标识及预设的控制状态标识,将所述辅控CPU的状态标识与预设的控制状态标识进行比较,若是所述辅控CPU的状态标识与所述预设的控制状态标识相同,则判断所述辅控CPU的状态标识已更新为预设的控制状态标识,若是所述辅控CPU的状态标识与所述预设的控制状态标识不同,则判断所述辅控CPU的状态标识未更新为预设的控制状态标识。所述辅控CPU的状态标识,可以将表征所述辅控CPU需获取控制权限的各个控制功能的参数作为状态标识,例如可以通过判断是否将数据通信端口修改为预定的端口地址进行通信,以判断是否取得数据通信功能的控制权限。也可以通过设置辅控CPU的寄存器,通过预先设置当基于对各个功能是否完成控制状态切换的判断后,向相应的寄存器内写入反映切换结果的参数,通过获取相应寄存器内的参数作为状态标识进行判断。
S602:若所述辅控CPU的状态标识未更新为预设的控制状态标识,则重新将所述辅控CPU由非控制状态切换为控制状态,并对所述第二计数器的计数值加1;
本发明实施例提供的方法中,当通过判断得知辅控CPU的状态标识未更新为预设的控制状态标识时,则再次向所述辅控CPU发送切换指令,辅控CPU基于切换指令重新进行切换过程,并对启用的所述第二计数器的计数值加1。
S603:当所述第二计数器的计数值达到预设数值时,判断所述辅控CPU的状态标识是否已更新为所述预设的控制状态标识;
本发明实施例提供的方法中,可以根据实际需求对辅控CPU的切换次数设置相应的数值,可以在计数器每次进行计数值的累加后,将计数器的计数值与预设数值进行比较,当所述计数器的计数值达到预设数据值时,判断所述辅控CPU的状态标识是否已更新为所述预设的控制状态标识,具体判断方式可参见步骤601,此处不再赘述。
S604:若所述辅控CPU的状态标识未更新为所述预设的控制状态标识,则确定所述辅控CPU在预设的切换次数内未成功切换为控制状态。
本发明实施例提供的方法中,通过上述步骤的判断,当辅控CPU在计数器的计数值达到预设数值的情况下,所述辅控CPU的状态标识未更新为所述预设的控制状态标识,即所述辅控CPU仍未基于切换指令成功由非控制状态切换为控制状态,此时则确定所述辅控CPU在预设的切换次数内未成功切换为控制状态,后续不再向辅控CPU发送切换指令。
基于本发明实施例所提供的方法,可以通过在触发所述辅控CPU由当前的非控制状态切换为控制状态后,启动计数器进行计数,通过获取辅控CPU的状态标识与预设的控制状态标识相比较,以判断所述辅控CPU是否基于切换指令已切换为控制状态。并依据计数值与预设数值的比较,判断切换次数是否在预设的切换次数内。当辅控CPU在预设的切换次数内仍未成功切换为控制状态时,则停止将所述辅控CPU切换为控制状态,使其维持原有的非控制状态。通过本发明实施例提供的方法,可以根据实际需求对辅控CPU基于切换指令的切换次数进行限制,控制辅控CPU的切换时间,当辅控CPU不能在预定的切换次数内获取相应功能的控制权限时,则不再尝试去获取相应的控制权限,避免与主控CPU同时执行相应的控制功能,造成控制紊乱,由此提高制动机制动的安全性
为了更好地说明本发明实施例所提供的方法,接下来将举例说明本发明实施例的辅控CPU的切换控制过程,结合图7示出的本发明实施例提供的辅控CPU的切换控制的流程图,包括:
S701:监听预定的通信端口是否接收到主控CPU发送的切换请求;
本发明实施例提供的方法中,可以预先为辅控CPU设置监听周期,在辅控CPU处于热备用状态的过程中,当触发预设的监听周期时,可以通过辅控CPU在预设的监听周期内监听辅控CPU上与主控CPU进行通信的通信端口,在预定的监听时间内判断是否接收到主控CPU通过所述通信端口发送的切换请求;若接收到所述主控CPU发送的切换请求,则执行步骤702;若没有接收到所述主控CPU发送的切换请求,则执行步骤703。
S702:应答主控CPU的切换请求;
本发明实施例提供的方法中,当接收到所述主控CPU发送的切换请求时,应答所述主控CPU的切换请求,并在应答请求后执行步骤707。
S703:监测辅控CPU的运行状态是否出现故障;
本发明实施例提供的方法中,可以通过获取辅控CPU的运行参数,对作为热备用的非控制状态的辅控CPU的运行状态进行故障诊断,例如对辅控CPU与主控CPU之间的数据交互、数据处理等运行进行诊断,当诊断所述辅控CPU的运行状态出现异常时,则执行步骤S704。当诊断所述辅控CPU的运行状态没有出现故障时,则返回等待执行步骤S701。
S704:判断辅控CPU与主控CPU之间是否存在数据通信故障;
本发明实施例提供的方法中,在诊断所述辅控CPU的运行状态存在故障时,通过反映故障的运行参数确定是否是辅控CPU与主控CPU之间出现数据通信故障,若是所述辅控CPU与主控CPU之间出现数据通信故障,则执行步骤706;若所述辅控CPU不存在与主控CPU之间的数据通信故障,则执行步骤705。
S705:判断出现其他故障,进行提示或警示;
本发明实施例提供的方法中,当判断所述辅控CPU不存在与主控CPU之间的数据通信故障时,则判断辅控CPU的实行功能出现了除与主控CPU之间的数据通信故障外的其他故障,可以通过指示灯等指示装置进行故障提示或警示,并返回等待执行701。
S706:辅控CPU向主控CPU发送切换请求;
本发明实施例提供的方法中,当所述辅控CPU存在与主控CPU之间的数据通信故障时,辅控CPU向主控CPU发送切换请求,并在发送切换请求后执行步骤707。
S707:触发辅控CPU由当前的非控制状态切换为控制状态;
本发明实施例提供的方法中,可以通过向辅控CPU发送切换指令,基于所述切换指令,辅控CPU可以获取主控CPU的状态标识以判断主控CPU是否为非控制状态,当主控CPU为非控制状态时,将辅控CPU由当前的非控制状态切换为控制状态,并且启动预设的计数器进行计数,完成切换过程后执行步骤S708。
S708:判断所述辅控CPU是否成功切换为控制状态;
本发明实施例提供的方法中,判断所述辅控CPU是否成功切换为控制状态的具体过程可参见上述本发明实施例所提供的步骤S601,此处不再赘述。当判断所述辅控CPU成功切换为控制状态,则进入步骤S711结束切换控制。当判断所述辅控CPU未成功切换为控制状态时,执行步骤S709。
S709:计数器的计数值加1;
本发明实施例提供的方法中,对计数器的计数值加1后执行步骤S710。
S710:判断所述计数器的计数值是否达到预定数值;
本发明实施例提供的方法中,可以获取预定数值,并将预定数值与所述计数器的计数值进行比较,本发明实施例将预定数值设置为3,当计数器的计数值大于等于3时,则执行步骤711,结束此次切换控制,停止将所述辅控CPU切换为控制状态。若计数器的计数值小于3,则执行步骤707。例如辅控CPU首次进行切换,没有成功切换为控制状态,则计数器的计数值为1,小于预定数值3,则执行步骤711再次进行切换,当辅控CPU进行三次切换后,仍未成功切换成控制状态,此时计数器的计数值为3,以达到预定数值,则执行步骤711。
S711:结束此次切换控制。
接下来,与图5所示制动机制动控制单元双CPU热备冗余控制方法相对应的,本发明实施例还提供了一种制动机制动控制单元双CPU热备冗余控制装置,用于对图5中所示方法的具体实现,其结构示意图如图8所示,包括:
第二触发单元801,用于在确定所述辅控CPU已响应主控CPU发送的切换请求或确定所述辅控CPU与所述主控CPU之间存在通信故障情况下,触发所述辅控CPU由当前的非控制状态切换为控制状态;
第二判断单元802,用于判断所述辅控CPU是否在预设的切换次数内成功切换为控制状态,若所述辅控CPU在预设的切换次数内未成功切换为控制状态,则停止将所述辅控CPU切换为控制状态。
基于本发明实施例所提供的装置,可以通过调用第二触发单元801,在确定所述辅控CPU已响应主控CPU发送的切换请求或确定所述辅控CPU与所述主控CPU之间存在通信故障情况下,触发所述辅控CPU由当前的非控制状态切换为控制状态,并调用第二判断单元802,判断所述辅控CPU是否在预设的切换次数内成功切换为控制状态,若所述辅控CPU在预设的切换次数内未成功切换为控制状态,则停止将所述辅控CPU切换为控制状态。可以在辅控CPU需取得控制权限的情况下,进行辅控CPU切换为控制状态的切换控制,使辅控CPU可以接替主控CPU的控制工作,同时通过切换次数的判断,当所述辅控CPU在预设的切换次数内未成功切换为控制状态,则停止将所述辅控CPU切换为控制状态,可以在主控CPU因为一些故障无法顺利停止对相应功能的控制状态时,辅助CPU不再重复尝试切换为控制状态,避免与主控CPU同时实行控制功能,造成控制紊乱,由此提高制动机制动的安全性。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种制动机制动控制单元双CPU热备冗余控制方法,其特征在于,所述方法应用于主控CPU,所述方法包括:
在确定所述主控CPU已产生预定类型的工作故障或确定所述主控CPU已响应辅控CPU发送的切换请求的情况下,触发所述主控CPU由当前的控制状态切换为非控制状态;
判断所述主控CPU是否在预设的切换次数内成功切换为非控制状态,若所述主控CPU在预设的切换次数内未成功切换为非控制状态,则强制所述主控CPU切换为非控制状态。
2.根据权利要求1所述的方法,其特征在于,所述确定所述主控CPU已产生预定类型的工作故障,包括:
获取所述主控CPU在控制状态下的各个状态参数;
依据各个所述状态参数诊断所述主控CPU是否存在工作故障;
若所述主控CPU存在工作故障,则确定所述工作故障的故障类型;
若所述工作故障的故障类型为预定类型,则确定所述主控CPU已产生预定类型的工作故障。
3.根据权利要求1所述的方法,其特征在于,所述确定所述主控CPU已响应辅控CPU发送的切换请求,包括:
当所述主控CPU接收到所述辅控CPU发送的切换请求时,判断所述主控CPU是否执行与所述辅控CPU发送的切换请求对应的执行动作;
若所述主控CPU执行与所述辅控CPU发送的切换请求对应的执行动作,确定所述主控CPU已响应所述辅控CPU发送的切换请求。
4.根据权利要求1所述的方法,其特征在于,所述触发所述主控CPU由当前的控制状态切换为非控制状态,包括:
向所述主控CPU发送切换指令,触发所述主控CPU依据所述切换指令由当前的控制状态切换为非控制状态。
5.根据权利要求1所述的方法,其特征在于,所述判断所述主控CPU是否在预设的切换次数内成功切换为非控制状态,包括:
在所述主控CPU首次由控制状态切换为非控制状态时,启动预设的第一计数器进行计数,并判断所述主控CPU的状态标识是否已更新为预设的非控制状态标识;
若所述主控CPU的状态标识未更新为预设的非控制状态标识,则重新将所述主控CPU由控制状态切换为非控制状态,并对所述第一计数器的计数值加1;
当所述第一计数器的计数值达到预设数值时,判断所述主控CPU的状态标识是否已更新为所述预设的非控制状态标识;
若所述主控CPU的状态标识未更新为所述预设的非控制状态标识,则确定所述主控CPU在预设的切换次数内未成功切换为非控制状态。
6.一种制动机制动控制单元双CPU热备冗余控制装置,其特征在于,所述装置应用于主控CPU,所述装置包括:
第一触发单元,用于在确定所述主控CPU已产生预定类型的工作故障或确定所述主控CPU已响应辅控CPU发送的切换请求的情况下,触发所述主控CPU由当前的控制状态切换为非控制状态;
第一判断单元,用于判断所述主控CPU是否在预设的切换次数内成功切换为非控制状态,若所述主控CPU在预设的切换次数内未成功切换为非控制状态,则强制所述主控CPU切换为非控制状态。
7.一种制动机制动控制单元双CPU热备冗余控制方法,其特征在于,所述方法应用于辅控CPU,所述方法包括:
在确定所述辅控CPU已响应主控CPU发送的切换请求或确定所述辅控CPU与所述主控CPU之间存在通信故障情况下,触发所述辅控CPU由当前的非控制状态切换为控制状态;
判断所述辅控CPU是否在预设的切换次数内成功切换为控制状态,若所述辅控CPU在预设的切换次数内未成功切换为控制状态,则停止将所述辅控CPU切换为控制状态。
8.根据权利要求7所述的方法,其特征在于,所述确定所述辅控CPU已响应主控CPU发送的切换请求,包括:
当所述辅控CPU接收到所述主控CPU发送的切换请求时,判断所述辅控CPU是否执行与所述主控CPU发送的切换请求对应的执行动作;
若所述辅控CPU执行与所述主控CPU发送的切换请求对应的执行动作,确定所述辅控CPU已响应所述主控CPU发送的切换请求。
9.根据权利要求7所述的方法,其特征在于,所述判断所述辅控CPU是否在预设的切换次数内成功切换为控制状态,包括:
在所述辅控CPU首次由非控制状态切换为控制状态时,启动预设的第二计数器进行计数,并判断所述辅控CPU的状态标识是否已更新为预设的控制状态标识;
若所述辅控CPU的状态标识未更新为预设的控制状态标识,则重新将所述辅控CPU由非控制状态切换为控制状态,并对所述第二计数器的计数值加1;
当所述第二计数器的计数值达到预设数值时,判断所述辅控CPU的状态标识是否已更新为所述预设的控制状态标识;
若所述辅控CPU的状态标识未更新为所述预设的控制状态标识,则确定所述辅控CPU在预设的切换次数内未成功切换为控制状态。
10.一种制动机制动控制单元双CPU热备冗余控制装置,其特征在于,所述装置应用于辅控CPU,所述装置包括:
第二触发单元,用于在确定所述辅控CPU已响应主控CPU发送的切换请求或确定所述辅控CPU与所述主控CPU之间存在通信故障情况下,触发所述辅控CPU由当前的非控制状态切换为控制状态;
第二判断单元,用于判断所述辅控CPU是否在预设的切换次数内成功切换为控制状态,若所述辅控CPU在预设的切换次数内未成功切换为控制状态,则停止将所述辅控CPU切换为控制状态。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911039782.9A CN110716471A (zh) | 2019-10-29 | 2019-10-29 | 制动机制动控制单元双cpu热备冗余控制方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911039782.9A CN110716471A (zh) | 2019-10-29 | 2019-10-29 | 制动机制动控制单元双cpu热备冗余控制方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110716471A true CN110716471A (zh) | 2020-01-21 |
Family
ID=69214518
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911039782.9A Pending CN110716471A (zh) | 2019-10-29 | 2019-10-29 | 制动机制动控制单元双cpu热备冗余控制方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110716471A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114228782A (zh) * | 2020-12-29 | 2022-03-25 | 长沙市轨道交通集团有限公司 | 一种制动系统中主及主备bcu平稳切换方法、装置、列车及可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101980484A (zh) * | 2010-10-14 | 2011-02-23 | 中兴通讯股份有限公司 | 一种实现路由器全保护的方法及系统 |
CN106598017A (zh) * | 2015-10-20 | 2017-04-26 | 中车大连电力牵引研发中心有限公司 | 冗余控制系统 |
CN107957692A (zh) * | 2016-10-14 | 2018-04-24 | 中国石油天然气集团公司 | 控制器冗余方法、装置及系统 |
CN108055184A (zh) * | 2017-12-13 | 2018-05-18 | 中车长春轨道客车股份有限公司 | 一种列车双控制单元故障的处理方法、系统及相关装置 |
CN108270669A (zh) * | 2016-12-30 | 2018-07-10 | 中兴通讯股份有限公司 | Sdn网络的业务恢复装置、主控制器、系统及方法 |
-
2019
- 2019-10-29 CN CN201911039782.9A patent/CN110716471A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101980484A (zh) * | 2010-10-14 | 2011-02-23 | 中兴通讯股份有限公司 | 一种实现路由器全保护的方法及系统 |
CN106598017A (zh) * | 2015-10-20 | 2017-04-26 | 中车大连电力牵引研发中心有限公司 | 冗余控制系统 |
CN107957692A (zh) * | 2016-10-14 | 2018-04-24 | 中国石油天然气集团公司 | 控制器冗余方法、装置及系统 |
CN108270669A (zh) * | 2016-12-30 | 2018-07-10 | 中兴通讯股份有限公司 | Sdn网络的业务恢复装置、主控制器、系统及方法 |
CN108055184A (zh) * | 2017-12-13 | 2018-05-18 | 中车长春轨道客车股份有限公司 | 一种列车双控制单元故障的处理方法、系统及相关装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114228782A (zh) * | 2020-12-29 | 2022-03-25 | 长沙市轨道交通集团有限公司 | 一种制动系统中主及主备bcu平稳切换方法、装置、列车及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3085596A1 (en) | A vehicle safety electronic control system | |
CN101609421B (zh) | 运算处理装置的多重控制系统及多重控制方法 | |
CN113194029B (zh) | 自动识别和隔离服务网格边车故障的方法、系统、介质和设备 | |
CN106054852A (zh) | 集成式故障沉默和故障运转系统中的可量容错的构造 | |
JP2721294B2 (ja) | コンピュータシステムのオンライン監視システム | |
CN113867129A (zh) | 一种冗余控制方法、装置、系统、计算机设备及存储介质 | |
CN109062184B (zh) | 双机应急救援设备、故障切换方法和救援系统 | |
CN105487945A (zh) | 一种非相似双余度四机自监控容错控制方法 | |
CN110716471A (zh) | 制动机制动控制单元双cpu热备冗余控制方法及装置 | |
US8676353B2 (en) | Control system | |
KR101594453B1 (ko) | 채널 고장 진단 장치 및 그 진단 방법 | |
CN107728463A (zh) | 一种基于国产龙芯处理器的测控设备冗余切换单元 | |
CN110737256B (zh) | 一种用于控制变频传动系统的方法及装置 | |
CN116483649A (zh) | 代客泊车系统的进程监控方法、装置、车辆及存储介质 | |
CN111030871A (zh) | 基于双机热备系统的配置信息同步方法和装置 | |
CN116010158A (zh) | 配置寄存器的校验装置、校验系统和芯片设备 | |
EP4206839A1 (en) | Method for managing ecu on vehicle, and ecu and readable storage medium | |
CN111891192B (zh) | 列车超速防护设备、控制方法和双机热备系统 | |
CN113342574A (zh) | 数据处理方法、装置和电子设备 | |
CN113942486A (zh) | 一种制动故障处理方法及信号系统 | |
CN113711209A (zh) | 电子控制装置 | |
JPH08263320A (ja) | システム運転管理方式及び運転管理装置 | |
JPH10171769A (ja) | 複合計算機システム | |
CN117850384A (zh) | 无人车控制信号实时诊断方法、装置、电子设备及无人车 | |
CN115257890A (zh) | 一种ats系统关键冗余设备主备机异常检测方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200121 |