CN108885575A - 控制装置以及控制装置的复原处理方法 - Google Patents

控制装置以及控制装置的复原处理方法 Download PDF

Info

Publication number
CN108885575A
CN108885575A CN201680083994.5A CN201680083994A CN108885575A CN 108885575 A CN108885575 A CN 108885575A CN 201680083994 A CN201680083994 A CN 201680083994A CN 108885575 A CN108885575 A CN 108885575A
Authority
CN
China
Prior art keywords
control device
status data
synchronous regime
synchronous
control
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.)
Granted
Application number
CN201680083994.5A
Other languages
English (en)
Other versions
CN108885575B (zh
Inventor
伊藤益夫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of CN108885575A publication Critical patent/CN108885575A/zh
Application granted granted Critical
Publication of CN108885575B publication Critical patent/CN108885575B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1658Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1438Restarting or rejuvenating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1675Temporal synchronisation or re-synchronisation of redundant processing components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2038Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with a single idle spare processing component
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2097Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements maintaining the standby controller/processing unit updated
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Hardware Redundancy (AREA)

Abstract

控制装置(1)具备经由网络在与其它控制装置之间相互收发同步状态的同步状态收发部(7)以及经由网络在与其它控制装置之间相互收发状态数据的状态数据收发部(4),所以能够掌握其它控制装置的同步状态,进而在由于故障而发生重新启动的情况下,也能够从同步完成且处于动作过程中的其它控制装置接收状态数据,从而无需使系统整体停止就能够恢复。

Description

控制装置以及控制装置的复原处理方法
技术领域
本发明涉及控制装置及其复原方法,特别涉及构成多重系系统的控制装置及其复原处理方法。
背景技术
以往以来,关于在车辆中使用的控制装置,为防备控制装置发生故障之时而使控制装置成为双重系。进而,还提出了如下系统:对照双重系的运算结果,在两个运算结果不同的情况下,进行失效保护(fail-safe)处理,以便能够安全地进行输出。
例如,在专利文献1中,记载有使两个处理器相互同步地动作的信息处理装置。在专利文献1中,当在两个处理器中的任意处理器中发生内部故障而来自两个处理器的输出不一致的情况下,确定在哪一个处理器中发生故障。这样,使用未发生故障的处理器的内部信息,且利用双重化结构,使在故障发生时进行的处理继续。该动作由以下的结构实现。首先,除了设置有两个处理器之外,还设置有主存储单元以及双重化控制电路。另外,用专用的信号线连接双重化控制电路和两个处理器,使两个处理器同步地复位,从主存储单元取得发生故障前的状态的信息。
现有技术文献
专利文献
专利文献1:日本特开2002-244879号公报
发明内容
在经由网络连接多个控制装置而构成的多重系系统中,考虑在1个控制装置中发生能够通过重新启动而恢复的故障的情况。此外,能够通过重新启动而恢复的故障是指在因静电或者环境放射线而发生的软错误等能够通过基于看门狗定时器的复位而重新进行动作的故障。在发生这样的能够通过重新启动而恢复的故障的情况下,最好即使未发生故障的其它控制装置使失效操作动作继续,结果上也能够使未发生故障的控制装置与发生故障的控制装置同步地恢复。在该情况下,作为系统整体,动作仍不会停止,所有的控制装置能够还原到通常动作。
然而,专利文献1虽然能够从发生故障前的状态继续并再次开始动作,但需要主存储单元以及双重化控制电路这样的除了处理器以外的其它硬件,所以存在花费成本这样的问题点。进而,当在1个处理器中发生故障的情况下,需要使所有的处理器复位,所以存在必须使系统整体的动作暂时停止这样的问题点。
本发明是为了解决上述问题点而完成的,其目的在于得到用于实现在包括多个控制装置的控制系统中当在1个控制装置中发生故障的情况下无需使系统整体的动作暂时停止且不需要追加的硬件就能够使发生故障的控制装置复原的控制系统的控制装置及其复原处理方法。
本发明提供一种控制装置,构成经由网络而与其它控制装置同步地动作的多重系系统,其中,所述控制装置具备:状态数据存储部,保存表示所述控制装置的控制状态的状态数据;状态数据收发部,经由所述网络将保存于所述状态数据存储部的所述状态数据发送到所述其它控制装置,并且经由所述网络从所述其它控制装置接收所述其它控制装置的状态数据;同步状态收发部,经由所述网络将表示所述控制装置与所述其它控制装置的同步状态是同步准备还是同步完成的同步状态的信息发送到所述其它控制装置,并且经由所述网络从所述其它控制装置接收所述其它控制装置的同步状态的信息;以及状态同步管理部,在所述控制装置启动或者重新启动时,将所述控制装置的所述同步状态的信息暂时设定为同步准备,判定所述同步状态收发部接收到的所述其它控制装置的所述同步状态的信息是否被设定为同步完成,在判定为被设定为同步完成的情况下,将由所述状态数据收发部接收到的所述其它控制装置的所述状态数据作为所述控制装置自身的状态数据而覆盖写入到所述状态数据存储部,并且将所述控制装置的所述同步状态的信息从同步准备更新为同步完成。
根据本发明的控制装置,能够掌握其它控制装置的同步状态,进而即使在由于故障而发生重新启动的情况下,也能够从同步完成且处于动作过程中的其它控制装置接收状态数据,所以能够实现无需使系统整体的动作暂时停止且不需要追加的硬件就能够使发生故障的控制装置复原的控制系统。
附图说明
图1是示出本发明的实施方式1的控制系统整体的结构和控制装置的硬件结构的结构图。
图2是示出本发明的实施方式1的控制装置的内部结构的框结构图。
图3是示出本发明的实施方式2的动作周期的窗口的图。
图4是示出本发明的实施方式1的处理的流程的流程图。
图5是示出本发明的实施方式4的状态转变的图。
图6是示出本发明的实施方式5的动作周期的窗口的图。
图7是示出本发明的实施方式1的动作的时序图。
图8是示出本发明的实施方式3的控制装置的硬件结构的框图。
图9是示出本发明的实施方式3的控制装置的硬件结构的框图。
图10是示出本发明的实施方式6的控制系统整体的结构和控制装置的硬件结构的结构图。
图11是示出本发明的实施方式6的控制系统整体的结构和控制装置的硬件结构的结构图。
图12是示出本发明的实施方式6的控制系统整体的结构和控制装置的硬件结构的结构图。
具体实施方式
实施方式1.
图1示出本发明的实施方式1的控制系统整体的结构。如图1所示,在本实施方式的控制系统中,多个控制装置1~3经由网络100连接。控制装置1~3在相互同步的状态下动作。网络100由以太网(Ethernet)(注册商标)、FlexRay(注册商标)或者TTCAN(TimeTriggered CAN(时间触发CAN))等构成。此外,在图1中,记载有3个控制装置,但控制系统整体为多重系即可,所以控制装置的个数只要为2以上,就不特别限制。
控制装置1、控制装置2以及控制装置3的结构相同,所以使用控制装置1来说明硬件的结构。如图1所示,控制装置1具有处理器30、ROM31、RAM32、发送装置33、接收装置34以及复位IC35。
ROM31为储存控制装置1的程序的存储器。
处理器30为从ROM31依次读出程序并依照所读出的程序来执行处理的装置。
RAM32为在由处理器30处理的程序的执行过程中保存数据的存储器。
发送装置33为用于将由处理器30处理后的数据变换为遵循网络协议的物理性的信号并在网络100上发送数据的装置。
接收装置34为接收在网络100上流动的物理性的信号、将该信号变换为在处理器30中能够解释的数据并交付给处理器30的装置。
复位IC35为监视在处理器30中动作的程序是否正常地动作并在存在异常的情况下使处理器30复位的装置。
图2是本实施方式的控制装置1的功能框图。如上所述,控制装置1、控制装置2以及控制装置3的结构相同,所以,在此也使用控制装置1来说明内部的功能结构。如图2所示,控制装置1具备状态数据收发部4、状态数据比较部5、状态同步管理部6、同步状态收发部7、中间件8、以及OS以及驱动器10。另外,在中间件8内设置有周期同步控制部9。此外,在图2中,状态数据收发部4、状态数据比较部5、状态同步管理部6、同步状态收发部7、中间件8、周期同步控制部9、OS以及驱动器10都通过由CPU30执行储存于图1的ROM31的程序而实现。
OS以及驱动器10和中间件8例如使用汽车领域中的软件标准平台即AUTOSAR(注册商标)。
在中间件8为AUTOSAR(注册商标)的情况下,设置于中间件8的周期同步控制部9相当于StbM(Synchronized Time-Base Manager,同步时基管理器)。周期同步控制部9用基于网络100上的全局计时器的触发来实现控制装置1~3之间的同步。周期同步控制部9针对预先设定的每个主周期20(参照图3),输出周期同步25(参照图3)。
状态数据收发部4作为控制装置1的动作,经由图1的发送装置33和接收装置34而在与其它控制装置2、3之间收发在控制装置1内管理的表示车辆的控制状态的状态数据。此外,在此所称的表示控制状态的状态数据意味着例如在搭载自动驾驶系统的车辆中是自动驾驶模式中还是手动驾驶模式中这样的内容、行驶过程中的左右转功能以及并道功能、或停止时的停车功能这样的各功能所具有的状态内容等。各控制装置1~3将自身的状态数据保存于RAM32。
状态数据比较部5比较由状态数据收发部4得到的控制装置2、3的状态数据和在控制装置1内管理的保存于RAM32的状态数据。
当控制装置1从在控制装置1~3之间实现了同步的状态起重新启动的情况下,状态同步管理部6将从其它控制装置2、3得到的状态数据作为控制装置1的状态数据而覆盖写入到控制装置1的RAM32,使控制装置1的状态数据与控制装置2以及控制装置3的状态数据一致。另外,状态同步管理部6管理控制装置1的同步状态。同步状态是指表示控制装置1相对控制装置2、3的同步的状态是“同步准备”还是“同步完成”的信息。“同步准备”为控制装置1相对于控制装置2、3未实现同步的状态。另一方面,“同步完成”为控制装置1相对于控制装置2、3已同步的状态。同步状态由状态同步管理部6管理,但也可以保存于RAM32。
同步状态收发部7将由状态同步管理部6完成状态的同步这一情况、或未完成状态的同步这一情况通知给其它控制装置2、3。具体而言,经由图1的发送装置33和接收装置34,在与其它控制装置2、3之间收发状态同步管理部6管理的同步状态的信息。
接下来,说明本实施方式的控制装置的处理步骤。如上所述,控制装置1、控制装置2以及控制装置3的结构相同,动作也相同,所以使用控制装置1来说明处理步骤。作为处理步骤的概略,控制装置1在启动或者重新启动之后,在与其它控制装置2、3之间收发同步状态的信息以及状态数据,在控制装置1~3成为同步状态的情况下,执行通常处理。
使用图4所示的处理流程说明详细内容。图4为控制装置1的处理流程。图4的流程中的开头的“开始”表示由控制装置1的电源接通引起的启动、或由发生故障后的看门狗定时器等引起的复位处理的重新启动。即,在控制装置1的电源被开启时、或者在控制装置1中发生故障之后控制装置1被重新启动时,进行图4的流程的处理。
在开始后,控制装置1执行初始化处理(步骤S1)。该初始化处理与由一般的控制装置执行的初始化处理相同。
接下来,由状态同步管理部6将控制装置1的同步状态设定为“同步准备”(步骤S2)。
接下来,同步状态收发部7将控制装置1的同步状态发送到其它控制装置2、3(步骤S3)。
进而,状态数据收发部4将控制装置1的状态数据发送到其它控制装置2、3(步骤S4)。
同时,同步状态收发部7接收控制装置2与控制装置3的同步状态(步骤S5),状态数据收发部4接收控制装置2和控制装置3的状态数据(步骤S6)。当同步状态以及状态数据的接收完成时,进入到步骤S7。另一方面,在无法接收的情况下,返回到步骤S3。
在步骤S7中,状态同步管理部6判定控制装置2与控制装置3的同步状态为“同步准备”和“同步完成”中的哪一个(步骤S7)。如果控制装置2和控制装置3这两方的同步状态为“同步完成”,则进入到步骤S8。如果不是这样,则进入到步骤S13。
在步骤S13中,状态数据比较部5比较从控制装置2和控制装置3接收到的状态数据和保存于控制装置1的RAM32的状态数据(步骤S13)。
在步骤13的比较结果是控制装置2和控制装置3这两方的状态数据与控制装置1的状态数据一致的情况下,状态同步管理部6将控制装置1的同步状态设定为“同步完成”(步骤S9)。另一方面,在不是在这样的情况下,返回到步骤S3。
当在步骤S9中同步状态被设定为“同步完成”之后,以预先设定的主周期20(参照图3)重复步骤S10~S12的处理。步骤S10~S12的处理为控制装置1的通常动作。具体地说明步骤S10~S12的通常动作,首先,同步状态收发部7在与控制装置2、3之间收发同步状态(步骤S10),状态数据收发部4在与控制装置2、3之间收发状态数据(步骤S11),处理器30执行通常处理(步骤S12)。这样,以主周期20(参照图3)重复地进行步骤S10~S12的处理。
另一方面,在步骤S8中,状态同步管理部6将从控制装置2或控制装置3接收到的状态数据覆盖写入到控制装置1的RAM32(步骤S8),将控制装置1的同步状态设定为“同步完成”(步骤S9)。
在步骤S9之后,按照预先设定的主周期20(参照图3),同步状态收发部7收发同步状态(步骤S10),状态数据收发部4收发状态数据(步骤S11),处理器30重复通常处理(S12)。
此外,在上述步骤S7中,控制装置2与控制装置3的同步状态不是“同步完成”的情况是在控制装置2和控制装置3中同步状态一次都不是“同步完成”的情况。即,相当于包括控制装置1、控制装置2以及控制装置3的系统整体的启动的情况。
相反,在上述步骤S7中,控制装置2与控制装置3的同步状态为“同步完成”的情况是控制装置1、控制装置2以及控制装置3都有一次为“同步完成”的结果,所以相当于控制装置2和控制装置3正常地动作,仅控制装置1重新启动的情况。
因而,当将车辆的自动驾驶系统举为例子时,图4的流程对应于使车辆的点火开启(以下,称为IG ON)这样的包括控制装置1、控制装置2以及控制装置3的控制系统整体的启动的情况、以及在IG ON后的控制系统动作过程中,在控制装置2以及控制装置3正常地动作的过程中,仅控制装置1实施了由发生故障所引起的复位处理引起的重新启动的情况这两方的情况。
用图7所示的时序图对图4的流程的动作进行补充说明。在图7中,关于纵轴,从上往下依次如下。
控制系统的开启(ON)/关闭(OFF),
控制装置1的故障发生的有/无、复位的开启/关闭、同步状态的同步完成/同步准备、同步状态的收发的有/无、状态数据的收发的有/无、通常数据的收发的有/无、
控制装置2的故障发生的有/无、复位的开启/关闭、同步状态的同步完成/同步准备、同步状态的收发的有/无、状态数据的收发的有/无、通常数据的收发的有/无、
控制装置3的故障发生的有/无、复位的开启/关闭、同步状态的同步完成/同步准备、同步状态的收发的有/无、状态数据的收发的有/无、通常数据的收发的有/无。
另外,在图7中,横轴为时间。
如图7所示,首先,在时刻t1,在控制系统中,当进行IG ON时,控制装置1~3将同步状态设为“同步准备”而启动,相互进行同步状态以及状态数据的收发。这样,在状态数据一致的时刻t2的时间点,控制装置1~3将同步状态设定为“同步完成”,开始通常动作。
另外,如图7所示,例如,在时刻t3,当在控制装置1中发生故障时,控制装置1被复位。控制装置1与复位同时地,将同步状态设为“同步准备”而启动。这样,控制装置1在与2控制装置2和控制装置3之间收发同步状态和状态数据,将从控制装置2或者控制装置3接收到的状态数据覆盖写入到控制装置1的RAM32。在覆盖写入结束的时刻t4的时间点,控制装置1将同步状态设为“同步完成”,开始通常动作。
如上那样,在本实施方式中,当在1个控制装置中发生故障时,一边使未发生故障的其它控制装置的动作继续,一边使发生故障的控制装置恢复到与其它控制装置同步的状态,所以无需设置专用硬件,无需作为系统而使动作停止,就能够使所有的控制装置恢复到通常动作。
如上那样,本实施方式的控制装置1为构成经由网络100而与其它控制装置2、3同步地动作的多重系系统的控制装置。控制装置1具备:RAM32(状态数据存储部),保存表示控制装置1的控制状态的状态数据;状态数据收发部4,经由网络100将保存于RAM32的状态数据发送到其它控制装置2、3,并且经由网络100从其它控制装置2、3接收其它控制装置2、3的状态数据;同步状态收发部7,经由网络100将表示控制装置1与其它控制装置2、3的同步状态是同步准备还是同步完成的同步状态的信息发送到其它控制装置2、3,并且经由网络100从其它控制装置2、3接收其它控制装置2、3的同步状态的信息;以及状态同步管理部6,在控制装置1启动或者重新启动时,将控制装置1的同步状态的信息暂时设定为同步准备,判定同步状态收发部7接收到的其它控制装置2、3的同步状态的信息是否被设定为同步完成,在判定为被设定为同步完成的情况下,将由状态数据收发部4接收到的其它控制装置2、3的状态数据作为控制装置1自身的状态数据而覆盖写入到RAM32,并且将控制装置1的同步状态的信息从同步准备更新为同步完成。利用该结构,控制装置1即使在发生故障的情况下,也无需使作为控制系统整体的动作停止,且不需要追加的硬件,就能够复原为与其它控制装置2、3同步的状态下的通常动作。
另外,本实施方式的控制装置1还具备状态数据比较部5,该状态数据比较部5在控制装置1启动或者重新启动时,在状态同步管理部6判定为其它控制装置2、3的同步状态的信息被设定为同步准备的情况下,比较由状态数据收发部4接收到的其它控制装置2、3的状态数据和保存于控制装置1的RAM32的状态数据。这样,在状态数据比较部5的比较结果是由状态数据收发部4接收到的其它控制装置2、3的状态数据与保存于RAM32的状态数据一致的情况下,状态同步管理部6不将状态数据覆盖写入到RAM32,而将控制装置1的同步状态的信息从同步准备更新为同步完成。由此,控制装置2~3的同步状态为同步准备的情况相当于控制系统启动的情况,所以控制装置1~3将同步状态设为同步准备而启动,在确认了状态数据一致时,开始通常动作,所以能够实施更迅速的启动动作。
实施方式2.
图3是示出本发明的实施方式2的动作周期的窗口的图。在图3中,示出了控制装置1、控制装置2以及控制装置3的动作周期。在各控制装置1~3中,将从周期同步控制部9得到的周期同步25作为起点,主周期20被启动。周期同步控制部9如上所述利用基于网络100上的全局计时器的触发来产生周期同步25。由这样的周期同步控制部9对各控制装置1~3分别进行同步控制,所以作为结果,控制装置1~3的各主周期20相互同步。
另外,如图3所示,主周期20包括状态同步用窗口21和通常处理窗口22。通常处理窗口22为执行一般的应用等通常处理的时间段的窗口。另外,状态同步用窗口21被分为数据收发窗口24和同步状态收发窗口23。数据收发窗口24是用于状态数据收发部4收发状态数据的窗口。同步状态收发窗口23是用于同步状态收发部7收发同步状态的窗口。作为数据收发窗口24以及同步状态收发窗口23中的各控制装置1~3的收发的方法,既可以对各窗口内进一步进行时间分割而对每个控制装置分配时间而使用,也可以在窗口的开头的定时,各控制装置发送数据,基于优先度进行处理。
如上那样,在本实施方式中,将用于同步的动作划分为通常的动作,从而不对正常地动作的控制装置的通常处理造成影响,能够保持系统的实时性。
实施方式3.
在本实施方式中,与上述实施方式1相比,图4的步骤S9之后的处理不同。具体地进行说明,在本实施方式中,在将实施方式1中的图4的同步状态设为同步完成(步骤S9)之后、也就是说在控制装置1、控制装置2、控制装置3同步的状态下执行通常动作的期间,状态数据比较部5接着校验收发的状态数据。
在控制装置1的通常动作过程中,状态数据比较部5比较控制装置1的状态数据与从控制装置2和控制装置3接收到的状态数据。在控制装置2的状态数据与控制装置3的状态数据一致并且仅控制装置1的状态数据不同的情况下,状态同步管理部6将从控制装置2或者控制装置3得到的状态数据覆盖写入到RAM32并继续动作。关于状态数据的覆盖写入,既可以将状态数据中的任意的不一致作为条件,也可以将不一致的内容脱离预先决定的条件的情况作为条件。
另外,也可以在控制装置1的状态数据的不一致超过预定的条件而发生的情况下,设想为在控制装置1中发生故障,实施基于复位的重新启动。实施复位的也可以是控制装置1自身。
另外,也可以将控制装置1~3设为图8所示的结构。在图8中,控制装置1的处理器30与控制装置2的复位IC35连接。同样地,控制装置2的处理器30与控制装置1的复位IC35连接。未记载控制装置3,但同样地控制装置3的处理器30与其它控制装置的复位IC35连接。由此,控制装置1以外的其它控制装置2、3能够对控制装置1的复位IC35进行控制。因此,也可以在控制装置2以及控制装置3认识到控制装置1的状态数据与控制装置2、3的状态数据不一致的情况下,使控制装置1复位而重新启动。
进而,也可以将控制装置1~3设为图9所示的结构。在图9中,作为第4控制装置的控制装置50与连接控制装置1~3的网络100连接。控制装置50监视控制装置1~3的同步状态以及状态数据。在图9中,也可以在控制装置50检测到控制装置1~3中的控制装置1的状态数据与控制装置2和控制装置3的状态数据不一致的情况下,控制装置50经由网络100对控制装置1发送复位的命令而指示对控制装置1实施重新启动。或者,也可以与图8同样地将控制装置50的处理器30连接于控制装置1的复位IC35,使控制装置50的处理器30能够对控制装置1的复位IC35进行控制,由控制装置50使控制装置1复位。
如上那样,在本实施方式中,在通常动作过程中,也使用数据收发窗口24来收发状态数据,使得能够校验状态数据。这样,数据收发窗口24对于针对通常动作过程中的轻微的故障的恢复也有效,进而能够用作基于相互判定的故障判断。
实施方式4.
在上述实施方式1以及实施方式2的结构中,能够根据在同步状态收发窗口23传送的同步状态,使数据收发窗口24可变长。
将图5所示的状态转变图举为例子来说明该情况。例如,以实施方式1的结构为例进行说明,在包括控制装置1~3的控制系统整体的启动的情况下,仅进行基本的状态数据的校验。通过这样做,状态数据的数据量变少。此外,此时在同步状态收发窗口23中,在所有的控制装置1~3中,作为同步状态而发送“同步准备”(步骤S30)。
另一方面,考虑如下情况:在所有的控制装置1~3同步完成之后(步骤S31),在控制装置2和控制装置3正常地动作的同时,仅控制装置1重新启动。在该情况下,为了控制装置1的重新启动,除了需要基本的状态数据之外,为了继承控制系统的状态,还需要由此前动作的控制装置2以及控制装置3生成的状态数据。作为该状态数据,需要比启动时长的状态数据。此外,此时,在同步状态收发窗口23中,控制装置2和控制装置3发送“同步完成”作为同步状态(步骤S32)。
这样,在控制系统整体的启动时,能够使控制装置2、3发送的状态数据变短,但在重新启动时,需要长的状态数据。另外,在启动时,在同步状态收发窗口23中传送的同步状态为“同步准备”,在重新启动时为“同步完成”。因而,将它们汇总,在同步状态为“同步准备”时状态数据短,在同步状态为“同步完成”时状态数据长。因而,只要能够根据在同步状态收发窗口23中传送的同步状态来进行状态转变的管理,就能够使数据收发窗口24可变长。即,在同步状态为“同步准备”时使数据收发窗口24变短,在同步状态为“同步完成”时使数据收发窗口24变长。
另外,在实施方式2中,控制装置1~3收发的状态数据也可以为在各控制装置1~3内用作参数的程序内的变量本身,但也可以作为针对在各控制装置1~3内用作参数的程序内的变量的循环冗余校验(CRC)用的数据。当在图4的步骤S9中将同步状态设为“同步完成”之后、即在控制装置1、控制装置2、控制装置3同步的状态下执行通常动作的期间,将状态数据用作循环冗余校验用的数据。在控制装置1中,在与循环冗余校验用的数据存在不一致的情况下,将同步状态设为“同步准备”,使用同步状态收发窗口23来发送“同步准备”。在同步状态收发窗口23中接收到“同步准备”的控制装置2和控制装置3将保存于自身的RAM32的状态数据从循环冗余校验用的数据切换到在控制装置内用作参数的程序内的变量,在数据收发窗口24中进行发送。在将状态数据用作循环冗余校验用的数据的情况下,使数据收发窗口24变短,在将状态数据用作在控制装置内用作参数的程序内的变量的情况下,使数据收发窗口24变长。
进而,在不将实施方式2中的状态数据用作故障判断的情况下,也可以在控制装置1、控制装置2、控制装置3同步的状态下执行通常动作的期间中,省略数据收发窗口24。即使在省略了数据收发窗口24的情况下,当在同步状态收发窗口23中控制装置1、控制装置2、控制装置3中的任意控制装置发送了同步准备的情况下,使数据收发窗口24恢复。
如上那样,在本实施方式中,根据同步状态或者状态数据,使数据收发窗口24长度可变,从而在控制装置1、控制装置2、控制装置3同时启动的期间、或者在控制装置1、控制装置2、控制装置3同步的状态下执行通常动作的期间,状态同步用窗口21变短,相应地能够使通常处理窗口22变长,所以能够有效地使用各控制装置的时间资源。
实施方式5.
图6是示出本发明的实施方式5的动作周期的窗口的图。图3与图6的区别在于,在图6中在状态同步用窗口21内同步状态收发窗口23和数据收发窗口24的顺序与图3相反。即,在图6中先设置数据收发窗口24,后设置同步状态收发窗口23。
在上述实施方式1中,在由状态同步管理部6将控制装置1的同步状态设定为同步完成(步骤S9)之后,从接下来的主周期20起,同步状态收发部7使用同步状态收发窗口23来发送同步状态(步骤S10),开始通常处理(S12)。然而,在本实施方式中,通过先设置数据收发窗口24,后设置同步状态收发窗口23,能够从该主周期20起执行通常处理(步骤S12),所以在期望更迅速的恢复的系统中是有效的。
如上那样,在本实施方式中,在主周期20内,在数据收发窗口24之后设置同步状态收发窗口23,所以能够从该主周期20起执行通常处理,所以能够更迅速地恢复。
实施方式6.
在本发明的实施方式6中,说明应用在上述实施方式1~5中说明的结构以及方法的具体的控制系统的一个例子。
图10示出本实施方式的控制系统的一个例子。图10所示的控制系统搭载于车辆。在控制系统中,多个集成控制ECU61~63经由网络100连接。集成控制ECU61~63相当于在上述实施方式1~5中说明的控制装置1~3。此外,网络100为设置于车辆内的网络。
另外,如图10所示,进而识别判断ECU60、动力传动系统ECU64、制动ECU65以及转向ECU66连接于网络100。
动力传动系统ECU64控制生成车辆的驱动力的引擎以及马达。
制动ECU65控制制动致动器。
转向ECU66控制动力转向。
识别判断ECU60为了自动驾驶而识别车辆的周边状况,判断行驶路径。
集成控制ECU61、集成控制ECU62以及集成控制ECU63为了实现识别判断ECU60所确定的行驶路径,集成地控制动力传动系统ECU64、制动ECU65以及转向ECU66。
图10所示的控制系统为了实现针对集成控制功能的失效操作,以针对集成控制功能的多重系为目的,设置有集成控制ECU61、集成控制ECU62以及集成控制ECU63。各集成控制ECU61~63分别搭载有在实施方式1中说明的处理器30、ROM31、RAM32、发送装置33、接收装置34以及复位IC35。另外,ROM31储存状态数据收发部4、状态数据比较部5、状态同步管理部6、同步状态收发部7、周期同步控制部9的程序。另外,可以如图8所示连接图10的各集成控制ECU的处理器30和复位IC35。
图10的集成控制ECU61~63的动作与前述实施方式1~5所示的控制装置1~3的动作相同。
由此,即使1个集成控制ECU、例如集成控制ECU61陷入故障的状态,也能够一边利用其它集成控制ECU、即集成控制ECU62以及集成控制ECU63使动作继续,一边在该期间集成控制ECU61获取集成控制ECU62以及集成控制ECU63所具有的状态数据,与集成控制ECU62以及集成控制ECU63同步地再次开始。
此外,在图10中示出了针对集成控制ECU61、集成控制ECU62、集成控制ECU63的多重系,但多重系中的结构不限于此,也可以为针对其它ECU的多重系,就图10而言,也可以将识别判断ECU60、动力传动系统ECU64、制动ECU65、转向ECU66分别设为多重系。
图11示出本实施方式的控制系统的其它例子。
图11示出了对图10的结构附加识别判断ECU60作为实施方式3所示的第4控制装置的结构例。
识别判断ECU60搭载处理器30、ROM31、RAM32、发送装置33、接收装置34,在ROM31中储存状态数据收发部4、状态数据比较部5、状态同步管理部6、同步状态收发部7以及周期同步控制部9的程序。另外,也可以如图9所示,连接图11的识别判断ECU60的处理器30和各集成控制ECU的复位IC35。
图11的集成控制ECU60~63的动作与前述实施方式1~5所示的控制装置1~3的动作相同。
在图11中,能够在识别判断ECU60检测到集成控制ECU61、集成控制ECU62、集成控制ECU63中的例如集成控制ECU61的状态数据与集成控制ECU62和集成控制ECU63的状态数据不一致的情况下,经由网络100将复位的命令从识别判断ECU60发送到集成控制ECU61,对集成控制ECU61实施重新启动,或从识别判断ECU60通过集成控制ECU61的复位IC35使集成控制ECU61复位。此外,在图11中,示出了作为第4控制装置而附加有识别判断ECU60的结构例,但第4控制装置不限于识别判断ECU60,也可以为其它ECU,就图11而言,第4控制装置也可以为动力传动系统ECU64、制动ECU65、转向ECU66。
由控制系统要求的失效保护以及失效操作因控制系统的种类不同而不同,所以也可以根据需要而将控制系统的结构设为图12的结构例。在图12中,将处理器30、ROM31、RAM32、发送装置33、接收装置34搭载于集成控制ECU61、动力传动系统ECU64、转向ECU66,在ROM31中储存状态数据收发部4、状态数据比较部5、状态同步管理部6、同步状态收发部7以及周期同步控制部9的程序。
图12的集成控制ECU61、64、66的动作与前述实施方式1~5所示的控制装置1~3的动作相同。
由此,在本实施方式中,能够实现不仅共有包含在单独的ECU内的状态数据,而且还在ECU间的级别共有状态数据的同步、或基于ECU间的相互判定的故障判断。
此外,在图12中,示出了集成控制ECU61、动力传动系统ECU64以及转向ECU66的组合的结构,但组合的结构不限于此,能够实现使用了其它ECU的结构,就图12而言,也可以为组合识别判断ECU60、制动ECU65而成的结构。
如上那样,在本实施方式中,也能够得到与上述实施方式1~5同样的效果。

Claims (6)

1.一种控制装置,构成经由网络与其它控制装置同步地动作的多重系系统,其中,所述控制装置具备:
状态数据存储部,保存表示所述控制装置的控制状态的状态数据;
状态数据收发部,经由所述网络将保存于所述状态数据存储部的所述状态数据发送到所述其它控制装置,并且经由所述网络从所述其它控制装置接收所述其它控制装置的状态数据;
同步状态收发部,经由所述网络将表示所述控制装置与所述其它控制装置的同步状态是同步准备还是同步完成的同步状态的信息发送到所述其它控制装置,并且经由所述网络从所述其它控制装置接收所述其它控制装置的同步状态的信息;以及
状态同步管理部,在所述控制装置启动或者重新启动时,将所述控制装置的所述同步状态的信息暂时设定为同步准备,判定所述同步状态收发部接收到的所述其它控制装置的所述同步状态的信息是否被设定为同步完成,在判定为被设定为同步完成的情况下,将由所述状态数据收发部接收到的所述其它控制装置的所述状态数据作为所述控制装置自身的状态数据而覆盖写入到所述状态数据存储部,并且将所述控制装置的所述同步状态的信息从同步准备更新为同步完成。
2.根据权利要求1所述的控制装置,其中,
所述控制装置还具备状态数据比较部,在所述状态同步管理部在所述判定中判定为所述其它控制装置的所述同步状态的信息被设定为同步准备的情况下,该状态数据比较部比较由所述状态数据收发部接收到的所述其它控制装置的所述状态数据和保存于所述状态数据存储部的所述状态数据,
在所述状态数据比较部的比较结果是由所述状态数据收发部接收到的所述其它控制装置的所述状态数据与保存于所述状态数据存储部的所述状态数据一致的情况下,所述状态同步管理部不进行所述状态数据的所述覆盖写入,而将所述控制装置的所述同步状态的信息从同步准备更新为同步完成。
3.根据权利要求1或者2所述的控制装置,其中,
所述控制装置以预先设定的一定的周期进行通常动作,
所述一定的周期包括:
同步状态收发期间,在该同步状态收发期间所述同步状态收发部收发所述同步状态的信息;以及
数据收发期间,在该数据收发期间所述状态数据收发部收发所述状态数据。
4.根据权利要求3所述的控制装置,其中,
根据所述控制装置以及所述其它控制装置的所述状态数据或者根据所述控制装置以及所述其它控制装置的所述同步状态的信息,使所述数据收发期间可变长。
5.根据权利要求3所述的控制装置,其中,
在所述一定的周期内,在所述数据收发期间之后设置所述同步状态收发期间。
6.一种控制装置的复原处理方法,该控制装置构成经由网络与其它控制装置同步地动作的多重系系统,其中,所述复原处理方法具备:
同步解除步骤,将表示所述控制装置与所述其它控制装置的同步状态是同步准备还是同步完成的同步状态的信息设定为同步准备;
状态数据收发步骤,经由所述网络将保存于存储装置的表示所述控制装置的控制状态的状态数据发送到所述其它控制装置,并且经由所述网络从所述其它控制装置接收所述其它控制装置的状态数据;
同步状态收发步骤,经由所述网络将设定为所述同步准备的所述同步状态的信息发送到所述其它控制装置,并且经由所述网络从所述其它控制装置接收所述其它控制装置的同步状态的信息;
同步状态判定步骤,判定在所述同步状态收发步骤中接收到的所述其它控制装置的所述同步状态的信息是否被设定为同步完成;
状态数据更新步骤,当在所述同步状态判定步骤中判定为被设定为同步完成的情况下,将在所述状态数据收发步骤中接收到的所述其它控制装置的所述状态数据作为自身的状态数据而覆盖写入到所述存储装置;以及
同步复原步骤,将所述同步状态的信息从同步准备更新为同步完成。
CN201680083994.5A 2016-04-01 2016-04-01 控制装置以及控制装置的复原处理方法 Active CN108885575B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2016/060908 WO2017168750A1 (ja) 2016-04-01 2016-04-01 制御装置、および、制御装置の復帰処理方法

Publications (2)

Publication Number Publication Date
CN108885575A true CN108885575A (zh) 2018-11-23
CN108885575B CN108885575B (zh) 2022-03-11

Family

ID=59963793

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680083994.5A Active CN108885575B (zh) 2016-04-01 2016-04-01 控制装置以及控制装置的复原处理方法

Country Status (5)

Country Link
US (1) US10963354B2 (zh)
JP (1) JP6279152B1 (zh)
CN (1) CN108885575B (zh)
DE (1) DE112016006679B4 (zh)
WO (1) WO2017168750A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102000395B1 (ko) * 2018-05-10 2019-10-01 경일대학교산학협력단 자율주행 차량의 운행 모드 전환을 위한 장치, 이를 위한 방법 및 이 방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한 기록매체
DE102022207018A1 (de) 2022-07-08 2024-01-11 Volkswagen Aktiengesellschaft Verfahren zum Fehlermanagement, Computerprogrammprodukt sowie Fahrzeug

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101004587A (zh) * 2006-01-13 2007-07-25 艾默生过程管理电力和水力解决方案有限公司 用于正常和失配状况期间无缝切换的冗余控制器同步方法
CN101641910A (zh) * 2007-03-20 2010-02-03 三菱电机株式会社 铁道车辆用通信装置
US7739403B1 (en) * 2003-10-03 2010-06-15 Juniper Networks, Inc. Synchronizing state information between control units
GB2477238B (en) * 2006-01-13 2011-09-07 Emerson Process Management A method for redundant controller synchronisation for bump-less failover during normal and mismatch conditions
CN104268037A (zh) * 2014-09-10 2015-01-07 上海自仪泰雷兹交通自动化系统有限公司 热冗余联锁子系统及其主备切换方法
CN104391764A (zh) * 2014-10-22 2015-03-04 上海海得控制系统股份有限公司 一种计算机容错方法及系统

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3639055C2 (de) 1986-11-14 1998-02-05 Bosch Gmbh Robert Verfahren zur Betriebsüberwachung und Fehlerkorrektur von Rechnern eines Mehrrechnersystems und Mehrrechnersystem
JPH08287030A (ja) * 1995-04-10 1996-11-01 Hitachi Ltd 多重系計算機システムの自動再起動装置および方法
JP3864747B2 (ja) * 2001-10-09 2007-01-10 株式会社デンソー 冗長系信号処理装置
JP3539687B2 (ja) 2001-12-28 2004-07-07 株式会社日立製作所 プロセッサ二重化方式の情報処理装置
JP4195336B2 (ja) 2003-06-10 2008-12-10 株式会社東芝 電気車のフェールセーフcpu処理装置
DE10333281A1 (de) 2003-07-18 2005-02-03 Zf Lenksysteme Gmbh Verfahren zur Steuerung einer Schalteinrichtung
JP3965699B2 (ja) 2005-01-31 2007-08-29 横河電機株式会社 情報処理装置および情報処理方法
JP2009059084A (ja) * 2007-08-30 2009-03-19 Denso Corp 制御システム,電子機器およびプログラム
JP5717240B2 (ja) * 2010-08-09 2015-05-13 国立大学法人名古屋大学 通信システム及び通信装置
JP5671388B2 (ja) * 2011-03-24 2015-02-18 富士通テン株式会社 通信システムおよび通信装置
JP6094167B2 (ja) 2012-11-20 2017-03-15 横河電機株式会社 管理装置、通信システム、及び同期方法
KR101438978B1 (ko) * 2012-12-31 2014-09-11 현대자동차주식회사 리프로그래밍 방법 및 시스템
US10752282B2 (en) * 2017-10-04 2020-08-25 Steering Solutions Ip Holding Corporation Triple redundancy failsafe for steering systems

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7739403B1 (en) * 2003-10-03 2010-06-15 Juniper Networks, Inc. Synchronizing state information between control units
CN101004587A (zh) * 2006-01-13 2007-07-25 艾默生过程管理电力和水力解决方案有限公司 用于正常和失配状况期间无缝切换的冗余控制器同步方法
GB2477238B (en) * 2006-01-13 2011-09-07 Emerson Process Management A method for redundant controller synchronisation for bump-less failover during normal and mismatch conditions
CN101641910A (zh) * 2007-03-20 2010-02-03 三菱电机株式会社 铁道车辆用通信装置
CN104268037A (zh) * 2014-09-10 2015-01-07 上海自仪泰雷兹交通自动化系统有限公司 热冗余联锁子系统及其主备切换方法
CN104391764A (zh) * 2014-10-22 2015-03-04 上海海得控制系统股份有限公司 一种计算机容错方法及系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
王剑: "《基于CPLD的控制器冗余设计》", 《微计算机信息》 *
黄翌: "《气球控制安全中的双机冗余设计》", 《信息与电子工程》 *

Also Published As

Publication number Publication date
US20190057002A1 (en) 2019-02-21
US10963354B2 (en) 2021-03-30
JP6279152B1 (ja) 2018-02-14
JPWO2017168750A1 (ja) 2018-04-05
DE112016006679B4 (de) 2021-10-14
CN108885575B (zh) 2022-03-11
WO2017168750A1 (ja) 2017-10-05
DE112016006679T5 (de) 2018-12-13

Similar Documents

Publication Publication Date Title
CN109478155B (zh) 车载更新装置、车载更新系统及通信装置的更新方法
US8452465B1 (en) Systems and methods for ECU task reconfiguration
WO2020189710A1 (ja) 車載更新装置、更新処理プログラム及び、プログラムの更新方法
JP2003517668A (ja) クリティカル・システムのためのフェイル・セーフ・プロセスの実行、監視、および出力の制御のためのシステムおよび方法
CZ298410B6 (cs) Zpusob koordinace soucástí síte
CN104809013B (zh) 一种嵌入式系统启动方法和装置
US10735520B2 (en) Control device, control system, control method, and non-transitory computer-readable storage medium
CN108885575A (zh) 控制装置以及控制装置的复原处理方法
US11036575B2 (en) Software handling of errors
US11126422B2 (en) Program update system, control system, mobile body, program update method, recording medium
CN114064132A (zh) 一种系统宕机恢复方法、装置、设备和系统
CN115587071B (zh) 一种基于多核异构SoC车载系统数据储存系统及方法
JP2009286191A (ja) プログラム書換システム
CN102073523A (zh) 实现软件版本同步的方法及装置
CN100353321C (zh) 具有主用和备用引导程序的系统及启动方法
CN104346239B (zh) 嵌入式系统中应用程序的异常恢复方法和装置
CN112783523A (zh) 一种多余度飞机管理计算机软件空中加载方法
CN109522155B (zh) 基于动态切换的空间应用嵌入式软件自修复系统
CN114390052B (zh) 一种基于vrrp协议实现etcd双节点高可用方法和装置
JP2022538080A (ja) 車両の車載バス上のコンピュータと対話する方法
CN109272620A (zh) 无钥匙系统备份控制电路及其控制方法、装置
CN111726270A (zh) 存储器系统及控制系统
CN108804254A (zh) 用于车辆中远程安装软件期间故障处理的方法和系统
JP7453751B2 (ja) オペレーティングシステムでタスクを起動するための方法及び装置
CN103312728A (zh) 一种存储系统间的数据同步方法、系统和装置

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
GR01 Patent grant
GR01 Patent grant