CN114407909A - 控制装置 - Google Patents
控制装置 Download PDFInfo
- Publication number
- CN114407909A CN114407909A CN202111055350.4A CN202111055350A CN114407909A CN 114407909 A CN114407909 A CN 114407909A CN 202111055350 A CN202111055350 A CN 202111055350A CN 114407909 A CN114407909 A CN 114407909A
- Authority
- CN
- China
- Prior art keywords
- check points
- processes
- control device
- abnormality
- information
- 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
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W50/02—Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
- B60W50/0205—Diagnosing or detecting failures; Failure detection models
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W10/00—Conjoint control of vehicle sub-units of different type or different function
- B60W10/04—Conjoint control of vehicle sub-units of different type or different function including control of propulsion units
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W10/00—Conjoint control of vehicle sub-units of different type or different function
- B60W10/20—Conjoint control of vehicle sub-units of different type or different function including control of steering systems
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W50/02—Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
- B60W50/029—Adapting to failures or work around with other constraints, e.g. circumvention by avoiding use of failed parts
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W60/00—Drive control systems specially adapted for autonomous road vehicles
- B60W60/001—Planning or execution of driving tasks
- B60W60/0015—Planning or execution of driving tasks specially adapted for safety
- B60W60/0018—Planning or execution of driving tasks specially adapted for safety by employing degraded modes, e.g. reducing speed, in response to suboptimal conditions
- B60W60/00186—Planning or execution of driving tasks specially adapted for safety by employing degraded modes, e.g. reducing speed, in response to suboptimal conditions related to the vehicle
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
- G07C5/00—Registering or indicating the working of vehicles
- G07C5/08—Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
- G07C5/0816—Indicating performance data, e.g. occurrence of a malfunction
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W50/02—Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
- B60W50/0205—Diagnosing or detecting failures; Failure detection models
- B60W2050/021—Means for detecting failure or malfunction
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W50/02—Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
- B60W50/029—Adapting to failures or work around with other constraints, e.g. circumvention by avoiding use of failed parts
- B60W2050/0292—Fail-safe or redundant systems, e.g. limp-home or backup systems
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W50/02—Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
- B60W50/029—Adapting to failures or work around with other constraints, e.g. circumvention by avoiding use of failed parts
- B60W2050/0295—Inhibiting action of specific actuators or systems
Landscapes
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Transportation (AREA)
- Mechanical Engineering (AREA)
- Human Computer Interaction (AREA)
- Chemical & Material Sciences (AREA)
- Combustion & Propulsion (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Hardware Redundancy (AREA)
- Retry When Errors Occur (AREA)
- Stored Programmes (AREA)
Abstract
本发明的控制装置(100)包括:恢复控制部(515),用于当存在以检测到异常的进程为启动条件的进程时,暂时停止包括以检测到异常的进程的执行状态为启动条件的进程在内的所有进程的执行,并且在检测到异常的进程重新启动之后,生成重新开始暂时停止的进程的执行的指示;以及进程执行管理部(511、521、531),用于根据来自恢复控制部(515)的指示重新启动检测到异常的进程,并且重新开始暂时停止的进程的处理。
Description
技术领域
本发明涉及控制装置。
背景技术
例如,搭载在汽车等上的车辆的控制装置中,假设车辆的控制装置的一部分功能会发生故障,该控制装置具有备用功能。这种备用功能可应用于汽车等车辆的驾驶辅助系统或车辆的自动驾驶系统等,但要求系统发生故障后在短时间内恢复系统。
在专利文献1中,提出了在检测到多内核处理器的一部分内核的异常的情况下,重新启动检测到异常的内核,缩短直到再次执行应用为止的时间的方法。即,在专利文献1中,公开了下述方法:对于重新启动一部分处理器内核时的诊断处理,通过在重新启动的处理器开始诊断之前执行正常的其它处理器内核的处理来缩短重新启动的时间。
另一方面,汽车的驾驶辅助系统和自动驾驶系统在每个功能上都有依赖关系,如果各个功能不被执行,则有时无法维持系统。例如,在非专利文献1公开的技术中,在控制装置内执行多个进程的情况下,在启动进程之前,解决进程间的依赖关系,依次启动进程。例如,在启动进程A和进程B的情况下,当进程B的启动条件被设定为进程A正在执行,则控制装置启动进程A,并且确认进程A正在执行之后,启动进程B。另一方面,在结束进程的情况下,也解决进程之间的依赖关系,以与启动进程的顺序相反的顺序结束进程,具体地,当结束进程A时,以进程B、进程A的顺序结束各个进程。
现有技术文献
专利文献
专利文献1:日本专利第6393628号公报
【非专利文献1】AUTOSAR“Specification of Execution Management:执行管理规范”,R19-11
发明内容
发明所要解决的技术问题
在专利文献1中,未考虑非专利文献1所示的每个功能的依赖关系,仅缩短个别功能中的重新启动的时间,未考虑到系统整体的恢复时间。另一方面,在非专利文献1中,在进程的启动阶段,确保存储区域,进行进程的生成、进程处理的数据的读入等初始化,在进程的结束阶段,保存进程处理的数据,进行释放存储区域、删除进程等进程的结束,但没有考虑进程的启动以及进程的结束的处理时间。因此,存在下述问题:在一部分进程中发生异常,并重新启动发生该异常的进程时,在依赖关系中没有发生异常的进程也会重新启动,直到系统恢复为止会花费时间。
本申请公开了解决上述问题的技术,其目的在于提供一种能够抑制从进程发生异常到系统恢复为止的时间的控制装置。
用于解决技术问题的技术手段
本申请所公开的控制装置的特征在于,包括:
进程执行管理部,该进程执行管理部对以其它进程的执行状态作为自身进程的启动条件的多个进程的执行进行管理;
进程异常监视部,该进程异常监视部检测多个所述进程中的至少一个进程的异常;以及
恢复控制部,该恢复控制部在以由所述进程异常监视部检测到异常的进程的执行状态为启动条件的进程存在时,向所述进程执行管理部发出指示,暂时停止包括以检测到异常的进程的执行状态为启动条件的进程在内的所有进程的执行,在检测到异常的所述进程重新启动之后,重新开始暂时停止的所述进程的执行,
所述进程执行管理部构成为:
将所述启动条件与所述其它进程的执行状态进行比较,当存在与所述启动条件一致的进程时,启动该进程并执行处理,当所述其它进程与所述启动条件不一致时,结束已启动并正在执行处理的所述进程,根据所述恢复控制部的指示重新启动检测到异常的所述进程,并重新开始暂时停止的所述进程的处理。
此外,本申请所公开的控制装置的特征在于,包括:
进程执行管理部,该进程执行管理部对以其它进程的执行状态作为自身进程的启动条件的多个进程的执行进行管理;
进程异常监视部,该进程异常监视部检测多个所述进程中的至少一个进程的异常;以及
恢复控制部,该恢复控制部构成为,在以由所述进程异常监视部检测到异常的进程的执行状态为启动条件的进程存在时,升高标志,并且使所述进程执行管理部暂时停止包括以检测到异常的所述进程的执行状态为启动条件的进程在内的所有进程的处理,当暂时停止了所有的所述进程的处理时,降低所述标志,当检测到异常的所述进程重新启动时,升高所述标志,并且使所述暂时停止的所有的所述进程的处理重新开始,当完成了所有的所述进程的处理的重新开始时,降低所述标志,
所述进程执行管理部构成为:
将所述启动条件与所述其它进程的执行状态进行比较,当存在与所述启动条件一致的进程时,启动该进程并执行处理,当所述其它进程与所述启动条件不一致时,使已启动并正在执行处理的所述进程结束,并且当所述标志升高时,进行待机而不重新启动检测到异常的所述进程,当所述标志降低时,执行检测到异常的所述进程的重新启动。
发明效果
根据本申请公开的控制装置,能够得到一种能抑制从进程发生异常到系统恢复为止的时间的控制装置。
附图说明
图1是表示实施方式1的控制装置的结构的说明图。
图2是表示实施方式1的控制装置中的第一控制装置的功能结构的功能结构图。
图3是表示实施方式1的控制装置中的第一控制装置的硬件结构的硬件结构图。
图4是表示实施方式1的控制装置中的第二控制装置的功能结构的功能结构图。
图5是表示实施方式1的控制装置中的第二控制装置的硬件结构的硬件结构图。
图6是表示实施方式1的控制装置中的第三控制装置的功能结构的功能结构图。
图7是表示实施方式1的控制装置中的第三控制装置的硬件结构的硬件结构图。
图8是表示实施方式1的控制装置中的各进程的相互关系的说明图。
图9是表示实施方式1的控制装置中的各进程的执行状态的说明图。
图10是说明实施方式1的控制装置中的异常监视部的功能的说明图。
图11是示出了实施方式1的控制装置中的恢复控制部的动作的流程图。
图12是表示实施方式1的控制装置中的进程执行管理部的启动管理表的说明图。
图13是表示实施方式1的控制装置中的进程的结束动作的流程图。
图14是表示实施方式1的控制装置中的进程重新启动动作的流程图。
图15是表示实施方式2的控制装置中的恢复控制部的动作的流程图。
图16是表示实施方式2的控制装置中的进程执行管理部的动作的流程图。
图17是表示实施方式2的控制装置中的进程执行管理部的启动管理表的说明图。
图18是表示实施方式1以及实施方式2的控制装置中的、用硬件实现第一控制装置、第二控制装置、第三控制装置的功能时的结构的硬件结构图。
具体实施方式
实施方式1.
(1-1)结构的说明
实施方式1的控制装置构成为搭载在汽车上的多个控制装置通过车载网络相互连接的控制通信系统。图1是表示实施方式1的控制装置的结构的说明图,将控制装置构成为汽车等车辆中的控制通信系统,以下,使用图1对作为控制装置的控制通信系统的整体结构进行说明。
控制通信系统100包括第一控制装置110、第二控制装置120和第三控制装置130,并且这些控制装置通过通信总线101的车载网络相互连接。通信总线101例如使用以太网(注册商标)、CAN(控制局域网络:注册商标)等通信标准而构成。在实施方式1中,以在通信总线101中使用以太网的情况为例进行说明。
第一控制装置110经由通信总线101连接到第二控制装置120和第三控制装置130。第二控制装置120经由通信总线101连接到第一控制装置110和第三控制装置130,并且经由与通信总线101同样的通信总线102连接到传感器140,传感器140的输出信号被输入到第二控制装置120。传感器140是用于车辆控制的各种传感器,例如是作为内部传感器的车速传感器、加速度传感器、作为外部传感器的周边监视摄像头、周边监视雷达(毫米波雷达、超声波雷达等)、作为位置传感器的GNSS(全球导航卫星系统)等。
第三控制装置130经由通信总线101连接到第一控制装置110和第二控制装置120,并且经由与通信总线101同样的通信总线103连接到转向控制装置150和动力控制装置160。转向控制装置150控制电动助力转向装置的驱动电动机等,使得转向角跟随被决定的转向角的目标值。动力控制装置160控制电动机、内燃机等的动力机的输出转矩,使得车速跟随被决定的车速的目标值。
接下来,说明第一控制装置110。图2是表示实施方式1的控制装置中的第一控制装置的功能结构的功能结构图,图3是表示实施方式1的控制装置中的第一控制装置的硬件结构的硬件结构图。如图2所示,第一控制装置110包括进程执行管理部511、进程通信控制部512、存储部513、进程异常监视部514和恢复控制部515作为功能部。
第一控制装置110的进程执行管理部511、进程通信控制部512、存储部513、进程异常监视部514和恢复控制部515的各功能由设置在第一控制装置110中的处理电路实现。例如,如图3所示,作为处理电路,第一控制装置110包括CPU(中央处理器)等运算处理装置111、经由车载网络与其它控制装置进行通信的通信装置112、与运算处理装置111交换数据的主存储装置113a、辅助存储装置113b、以及输入输出装置114。
作为运算处理装置111,例如能使用DSP(数字信号处理器)、GPU(图形处理器)、神经芯片、ASIC(应用程序特定集成电路)、IC(集成电路)、FPGA(现场可编程门阵列)、各种逻辑电路以及各种信号处理电路。另外,作为运算处理装置111,也可以具备多个相同种类的运算处理装置或不同种类的运算处理装置,分担并执行各处理。
如上所述,通信装置112使用例如以太网等通信标准来进行通信。作为主存储装置113a,使用RAM(随机存取存储器)等存储器,作为辅助存储装置113b,使用ROM(只读存储器)、HDD(硬盘驱动器)、闪存等非易失性存储器。此外,存储在辅助存储装置113b中的数据根据需要由运算处理装置111加载到主存储装置113a,并用于运算处理装置111的处理。另一方面,存储在主存储装置113a中的数据根据需要由运算处理装置111存储在辅助存储装置113b中。
设置在第一控制装置110中的进程执行管理部511、进程通信控制部512、存储部513、进程异常监视部514和恢复控制部515的各功能是通过运算处理装置111将存储在辅助存储装置113b中的软件(程序)加载到主存储装置113a以执行处理,并与通信装置112、主存储装置113a和辅助存储装置113b等其它硬件协作来实现的。
接下来,说明第二控制装置120。图4是表示实施方式1的控制装置中的第二控制装置的功能结构的功能结构图,图5是表示实施方式1的控制装置中的第二控制装置的硬件结构的硬件结构图。如图4所示,第二控制装置120包括进程执行管理部521、进程通信控制部522和存储部523作为功能部。
第二控制装置120的进程执行管理部521、进程通信控制部522和存储部523的各功能由第二控制装置120所具备的处理电路实现。例如,如图5所示,作为处理电路,第二控制装置120包括CPU等运算处理装置121、主存储装置123a、辅助存储装置123b、经由通信总线101与其它控制装置进行通信的通信装置122、以及与传感器140进行信号的输入输出的输入输出装置124。由于第二控制装置120的各处理电路的结构与第一控制装置110的各处理电路的结构相同,因此省略说明。
此外,与第一控制装置110同样地,第二控制装置120的进程执行管理部521、进程通信控制部522和存储部523的各功能是通过运算处理装置121将存储在辅助存储装置123b中的软件(程序)加载到主存储装置123a以执行处理并与通信装置122、主存储装置123a和辅助存储装置123b等其它硬件协作从而实现的。
接下来,说明第三控制装置130。图6是表示实施方式1的控制装置中的第三控制装置的功能结构的功能结构图,图7是表示实施方式1的控制装置中的第三控制装置的硬件结构的硬件结构图。如图6所示,第三控制装置130包括进程执行管理部531、进程通信控制部532和存储部533作为功能部。
第三控制装置130的进程执行管理部531、进程通信控制部532和存储部533的各功能由第三控制装置130所具备的处理电路实现。例如,如图7所示,作为处理电路,第三控制装置130包括CPU等运算处理装置131、主存储装置133a、辅助存储装置133b、经由通信总线101与其它控制装置进行通信的通信装置132、以及与转向控制装置150和动力控制装置160进行信号的输入输出的输入输出装置134。由于第三控制装置130的各处理电路的结构与第一控制装置110的各处理电路的结构相同,因此省略说明。
此外,与第一控制装置110同样地,第三控制装置130所具备的进程执行管理部531、进程通信控制部532和存储部533的各功能是通过运算处理装置131将存储在辅助存储装置133b中的软件(程序)加载到主存储装置133a以执行处理并与通信装置132、主存储装置133a和辅助存储装置133b等其它硬件协作从而实现的。
(1-2)控制装置实现自动驾驶控制的多个进程的说明
接着,说明通过上述控制通信系统100实现自动驾驶控制的功能结构。在自动驾驶控制中,通过搭载在汽车上的传感器识别汽车的周边环境,决定作为目标的轨道路径和车速,并且为了达到该目标值而控制与转向角和车速有关的各个致动器。
在实施方式1中,为了简化,将与第二控制装置120连接的传感器140设为周边监视摄像头,根据由该周边监视摄像头获取的图像数据检测汽车前方的车道和其它汽车,根据这些检测到的信息计算转向角和车速的目标值,转向控制装置150控制与转向角有关的致动器,动力控制装置160控制与车速有关的致动器。
另外,实施方式1的自动驾驶控制是基于SOA(Service Oriented Archtecture:面向服务的体系结构)来设计的,该SOA通过组合多个实现个别处理的软件(程序)来实现。在该SOA中,个别处理(以下称为进程)定义有:向其它进程提供进程的运算结果等信息的信息提供者、以及为了进行自身进程的运算而使用其它进程的运算结果等信息的信息使用者。在SOA中,当信息提供者的进程和信息使用者的进程存在于包括控制装置的网络上并且提供的信息与使用的信息一致时,在各个进程之间建立通信,从而实现进程之间的数据交换。
图8是表示实施方式1的控制装置中的各进程的相互关系的说明图。更具体地,图8示出了基于SOA设计的通过控制通信系统100实现自动驾驶控制系统的多个进程之间的关联性。如图8所示,如上所述,控制通信系统100包括第一控制装置110、第二控制装置120和第三控制装置130,图像接收进程602、预处理进程603、车辆检测进程604和车辆控制进程605配置在第一控制装置110,图像发送进程601配置在第二控制装置120,动力控制进程配置在第三控制装置130。
配置在第二控制装置120的图像发送进程601将由作为传感器140的周边监视摄像头拍摄到的图像数据发送到作为另一进程的第一控制装置110的图像接收进程602。在实施方式1中,图像接收进程602是图像发送进程601提供的信息的使用者,并且图像数据经由通信总线101从图像发送进程601发送到图像接收进程602。
配置在第一控制装置110的图像接收进程602接收由作为另一进程的图像发送进程601发送的图像数据。在实施方式1中,图像接收进程602利用由图像发送进程601提供的信息,并且接收由作为传感器140的周边监视摄像头拍摄的图像数据。
配置在第一控制装置110的预处理进程603对图像数据进行用于使物体检测变得容易的图像处理,并将该图像处理之后的加工数据提供给另一进程。在实施方式1中,预处理进程603是针对图像接收进程602的信息使用者,并且是针对车辆检测进程604的信息提供者,从图像接收进程602接收由作为传感器140的周边监视摄像头拍摄到的图像数据,例如对该图像数据进行灰度化、阈值处理和平滑化等滤波处理,并将该加工数据提供给车辆检测进程604。
配置在第一控制装置110的车辆检测进程604检测反映于图像数据的物体,并将检测到的物体的特征提供给另一进程。在实施方式1中,车辆检测进程604是针对预处理进程603的信息使用者,并且是针对车辆控制进程605的信息提供者,根据预处理进程603提供的加工数据检测本车辆行驶的车道和前方车辆,并向车辆控制进程605提供其特征,例如相对于本车辆的相对车道的位置、前方车辆的位置等。
配置在第一控制装置110的车辆控制进程605根据车道、前方车辆的位置关系来计算转向角的目标值和车速的目标值。在实施方式1中,车辆控制进程605是针对车辆检测进程604的信息使用者,并且是针对动力控制进程606的信息提供者,根据车辆检测进程604提供的相对于本车辆的相对车道的位置和前方车辆的位置,例如计算本车辆距离车道的中央位置的偏离量,设定使该偏离量为“0”的转向角目标值,且在将前方车辆与本车辆之间的距离保持固定的方向上设定车速的目标值,并将这些目标值提供给动力控制进程606。
配置在第三控制装置130的动力控制进程606获取转向角和车速的目标值,控制设置在转向控制装置150中的电动助力转向装置的驱动电动机等,使得转向角追随获取到的转向角的目标值,并且同样地控制设置在动力控制装置160中的动力机的输出转矩,使得车速追随获取到的车速的目标值。在该实施方式1中,动力控制进程606是针对车辆控制进程605的信息使用者,通过通信总线101从车辆控制进程605获取转向角和车速的目标值。
接下来,说明各个进程的执行状态。对各个进程设定执行状态,且这些执行状态存储在配置有各个进程的第一控制装置110、第二控制装置120和第三控制装置130的辅助存储装置中。关于执行状态,具体而言,将表示为了该进程启动而需要事先启动的进程已经启动的情况的执行状态设定为启动条件。
图9是表示实施方式1的控制装置中的进程的执行状态的说明图。在图9中,配置在第二控制装置120的图像发送进程601的执行状态6011、配置在第一控制装置110的图像接收进程602的执行状态6021、以及配置在第三控制装置130的动力控制进程606的执行状态6061为“无”,能在不依赖于其它进程的情况下启动。
另一方面,对第一控制装置110中的预处理进程603的执行状态6031、车辆检测进程604的执行状态6041和车辆控制进程605的执行状态6051分别设定启动条件。也就是说,对于预处理进程603的执行状态6031,将表示“图像接收进程602已经事先启动”的执行状态设定为启动条件,对于车辆检测进程604的执行状态6041,将表示“预处理进程603已经事先启动”的执行状态设定为启动条件,对于车辆控制进程605的执行状态6051,将表示“车辆检测进程604已经事先启动”的执行状态设定为启动条件。
因此,当事先启动图像接收进程602时启动预处理进程603,当事先启动预处理进程603时启动车辆检测进程604,当事先启动车辆检测进程604时启动车辆控制进程605。在各个进程启动之后也应用上述执行状态。例如,在车辆检测进程604结束的情况下,以车辆检测进程604启动作为启动条件的车辆控制进程605相对于车辆检测进程604先结束,如此应用以防止启动条件产生矛盾。
接下来,返回到图2和图3,说明第一控制装置110的各个功能。如上所述,第一控制装置110包括进程执行管理部511、进程通信控制部512、存储部513、进程异常监视部514和恢复控制部515的功能部。以下,对各功能进行说明。
作为功能部的存储部513存储与配置在第一控制装置110的进程相关的各个程序以及相应的进程的执行状态。具体地,与图像接收进程602、预处理进程603、车辆检测进程604和车辆控制进程605相关的程序及它们的执行状态6011、6021、6031、6041和6051被存储在第一控制装置110的存储部513中。
另外,在作为第一控制装置110的硬件结构的辅助存储装置113b中,存储进程执行管理部511、进程通信控制部512、进程异常监视部514和恢复控制部515的各个程序。这些程序从辅助存储装置113b加载到主存储装置113a,并由运算处理装置111执行。
另外,在辅助存储装置113b中存储有OS(Operation System:操作系统,以下称为OS)。OS的至少一部分被加载到主存储装置113a中,并由运算处理装置111执行。另外,通过执行程序而获得的数据被存储在主存储装置113a、辅助存储装置113b、或者运算处理装置111内的寄存器、或者缓存存储器这样的存储装置中。
进程执行管理部511基于存储在存储部513中的进程的执行状态6021、6031、6041和6051来启动满足启动条件的进程。在实施方式1中,进程执行管理部511由OS启动,将存储在辅助存储装置113b中的所有执行状态加载到主存储装置113a,确认各进程的启动条件,启动满足启动条件的进程。
此外,进程执行管理部511例如在接收到车辆停止、发动机停止等车辆状态的改变、以及来自后述的恢复控制部515的进程结束的指示时,结束正在启动的进程。然而,当结束的进程被包括在另一进程的启动条件中时,进程执行管理部511将与启动进程的顺序相反的顺序作为使进程结束的顺序来结束进程。
进程通信控制部512控制在第一控制装置110中进行动作的进程所处理的信息的交换。具体地,当在第一控制装置110中存在作为信息提供者的进程时,该进程向设置在进程通信控制部512中的注册表通知可以提供信息这一内容。此外,当在第一控制装置110上存在作为信息使用者的进程时,该进程向设置在进程通信控制部512中的注册表通知请求使用信息这一内容。进程通信控制部512根据注册表中登录的信息,例如以广播方式向连接到通信总线101的其它控制装置传输该信息提供者可以提供信息或者信息使用者请求使用信息这一内容。因此,第一控制装置中的进程通信控制部512和其它控制装置中的进程通信控制部的注册表取得同步。
当以相同信息作为对象的信息提供者和信息使用者被登录在上述的注册表中时,进程通信控制部512建立各个进程之间的通信路径。当作为信息提供者的进程执行信息发送时,进程通信控制部512向作为信息使用者的进程发送信息。另外,当在同一第一控制装置110设置有用于进行相互通信的两个进程时,进程通信控制部512在第一控制装置110内传输信息。
此外,当从作为信息提供者的进程接收到停止提供信息的通知或从作为信息使用者的进程接收到停止使用信息的通知时,进程通信控制部512从注册表解除信息提供者或信息使用者的登录,并且断开已建立的进程之间的通信路径。
进程异常监视部514接收至少一个检查点(Chack Point:以下称为CP),该检查点作为在进程的异常监视对象即监视对象进程通过了特定处理时通知的信息,在该接收到的至少一个CP与预先决定的CP的通知的时间间隔、通知次数或通知顺序等异常判断表不同时,判断为监视对象进程异常。当判定监视对象进程的异常时,进程异常监视部514将发生异常的监视对象进程作为异常进程通知给恢复控制部515。
图10是说明实施方式1的控制装置中的异常监视部的功能的说明图,表示从基于CP的异常判断表中提取与图像接收进程602有关的异常判断事项的例子。在图10中,当监视对象进程是图像接收进程602时,进程异常监视部514从图像接收进程602接收1个以上CP,并且当该接收到的CP的顺序与预先决定的CP的通知顺序即从“CP_1”经由“CP_2”到达“CP_3”的通知顺序是不同的顺序时,进程异常监视部514判定图像接收进程602异常。
另外,这里示出了基于接收到的CP的通知顺序进行图像接收进程602的异常判定的例子,但是也可以基于PC的通知时间间隔、通知次数等进行判定。进程异常监视部514也以与上述相同的方式判定监视对象进程是图像接收进程602以外的进程的异常。
接着,在图2中,当从进程异常监视部514接收到异常进程的信息时,恢复控制部515根据所加载的执行状态判断该异常进程的执行状态是否包括在其它进程的启动条件中。当异常进程的执行状态包括在其它进程的启动条件中时,恢复控制部515向进程执行管理部511发出指示以暂时停止所有其它进程的处理,在暂时停止所有其它进程之后,向进程执行管理部511发出使异常进程重新启动的指示。在异常进程作为正常的进程进行启动之后,向进程执行管理部511发出指示,以使暂时停止的所有进程的处理重新开始。此外,当异常进程的执行状态不包括在其它进程的启动条件中时,向进程执行管理部511发出使异常进程重新启动的指示。
这里,说明进程的“启动”、进程的“结束”、进程的“重新启动”、进程的“暂时停止”和进程的“重新开始”各自的处理。进程的“启动”是指确保启动的进程的存储区域,并执行该进程的生成和该进程的初始化。进程的“结束”是指停止要结束的进程所处理的保存和通信、删除要结束的进程、释放该进程的存储区域。进程的“重新启动”是指执行进程的“结束”和进程的“启动”。
此外,进程的“暂时停止”是指暂时停止正在执行的进程的处理,并且不执行在上述的进程的“结束”中执行的要结束的进程所处理的保存和通信的停止、进程的删除、该进程的存储区域的释放。进程的“重新开始”是指在通过上述的进程的“暂时停止”而使得进程的执行处于停止中的进程中,从暂时停止的地方开始执行处理。
另外,图4所示的第二控制装置120的进程执行管理部521、进程通信控制部522和存储部523各自的功能与上述第一控制装置110的进程执行管理部511、进程通信控制部512和存储部513各自的功能相同,图6所示的第三控制装置130的进程执行管理部531、进程通信控制部532和存储部533各自的功能与上述第一控制装置110的进程执行管理部511、进程通信控制部512和存储部513各自的功能相同,因此省略对它们的说明。
(1-3)结构的说明
首先,说明正常时由控制装置进行的自动驾驶控制的动作。当接通车辆的电源时,存储在第一控制装置110的辅助存储装置113b中的OS被加载到主存储装置113a,并且由运算处理装置111执行OS。当OS被执行时,OS将存储在辅助存储装置113b中的进程执行管理部511的程序加载到主存储装置113a,作为OS管理下的进程开始其的执行。然后,进程执行管理部511将存储在辅助存储装置113b中的进程通信控制部512的程序加载到主存储装置113a,启动进程通信控制部512。
同样地,进程执行管理部511将存储在辅助存储装置113b中的进程异常监视部514的程序加载到主存储装置113a,启动进程异常监视部514。此外,进程执行管理部511将存储在辅助存储装置113b中的恢复控制部515的程序加载到主存储装置113a,启动恢复控制部515。
在第二控制装置120和第三控制装置130中,也以与上述第一控制装置110相同的步骤,在各个控制装置中启动OS,然后启动进程执行管理部521、531以及进程通信控制部522、532。
这里,说明进程的启动。在下面的说明中,使用第一控制装置110中的进程进行说明。图11是表示实施方式1的控制装置中的恢复控制部的动作的流程图。图12是表示实施方式1的控制装置中的进程执行管理部的启动管理表的说明图,具体地,表示第一控制装置110的进程执行管理部511的动作,(a)、(b)、(c)、(d)表示在不同阶段的各进程的状态。图12的(a)、(b)、(c)、(d)中的“进程”列的栏从最上部起依次记载“图像接收进程”、“预处理进程”、“车辆检测进程”和“车辆控制进程”,针对各个进程示出了“启动条件的有无”、“成为启动条件的进程”和“进程的状态”。
在图11中,在步骤S101中,进程执行管理部511将存储在辅助存储装置113b中的所有执行状态加载到主存储装置113a中。进程执行管理部511根据加载到主存储装置113a的所有执行状态对各个进程的启动条件的有无、存在启动条件时的该启动条件、当前的进程的状态进行列表化。
图12的(a)是汇总了紧接上述处理之后的配置在第一控制装置110中的各进程及其启动条件的有无、成为启动条件的进程、以及当前进程的状态的启动管理表。在实施方式1中,图像接收进程602的启动条件为“无”,能够无条件地启动。图像接收进程602的执行状态被设定为预处理进程603的启动条件,预处理进程603的执行状态被设定为车辆检测进程604的启动条件,车辆检测进程604的执行状态被设定为车辆控制进程605的启动条件。因此,预处理进程603、车辆检测进程604和车辆控制进程605在各自的启动条件被满足时,由进程执行管理部511启动。
返回图11,在步骤S102,进程执行管理部511基于在步骤S101中获取的上述图12的(a)所示的启动管理表,决定能够启动的进程即启动对象进程。结果,在实施方式1中,进程执行管理部511将没有启动条件的图像接收进程602决定为启动对象进程(是),并前进至步骤S103。此外,当所有进程的启动完成时,或者当不存在满足启动条件的进程时(否),进程执行管理部511结束进程的启动处理。
在步骤S103,进程执行管理部511确保在步骤S102中决定的用于启动对象进程的存储区域,生成启动对象进程,并前进到步骤S104。在实施方式1中,进程执行管理部511首先确保用于图像接收进程602的存储区域,生成图像接收进程602。另外,进程执行管理部511将上述启动管理表内的当前进程状态从“未启动”更新为“初始化”,并前进至步骤S104。具体而言,在步骤S103中,如图12的(b)所示,将图像接收进程602的状态从“未启动”更新为“初始化”,并前进至步骤S104。
在步骤S104中,在步骤S103由进程执行管理部511生成的启动对象进程执行初始化处理。具体地说,读取由存储在辅助存储装置113b中的启动对象进程处理的数据。此外,当启动对象进程是信息提供者时,向进程通信控制部512通知可以提供信息这一内容,当启动对象进程是信息使用者时,向进程通信控制部512通知请求使用信息这一内容,将启动对象进程的信息提供者或信息使用者登录在进程通信控制部512的注册表中。在实施方式1中,由于图像接收进程602是信息提供者并且是信息使用者,所以将图像接收进程602作为信息提供者和信息使用者登录在进程通信控制部512的注册表中。
在步骤S105中,在进程通信控制部512的注册表中存在登录信息的情况下,进程通信控制部512基于该登录信息,当启动对象进程是信息提供者时,通过例如多播方式向第二控制装置120和第三控制装置130发送表示存在可提供信息这一内容的消息,当启动对象进程是信息使用者时,通过例如多播方式向第二控制装置120和第三控制装置130发送表示存在信息使用请求这一内容的消息。
只要没有来自启动对象进程的停止请求,从第一控制装置110发送到第二控制装置120和第三控制装置130的上述消息以预先决定的周期发送,使得能确认存在信息提供者或信息使用者。在实施方式1中,由于图像接收进程602作为信息提供者和信息使用者被登录在进程通信控制部512的注册表中,所以进程通信控制部512向第二控制装置120和第三控制装置130发送表示图像接收进程602能够提供信息这一内容以及信息的使用请求这一内容的消息。
接下来,在步骤S106中,启动对象进程在自身的初始化处理完成之后将进程已启动通知给进程执行管理部511。具体而言,图像接收进程602对进程执行管理部511通知进程已启动。
若前进到步骤S107,则进程执行管理部511在从启动对象进程接收到进程启动完成的通知时,将上述启动管理表内的当前的进程的状态从“初始化”更新为”正在执行”,并返回步骤S102。具体地,如图12的(c)所示,将图像接收进程602的状态从“初始化”更新为”正在执行”。
接下来,从步骤S107返回到步骤S102,进程执行管理部511决定下一个启动对象进程。在实施方式1中,在步骤S107中启动图像接收进程602,并且更新启动管理表,由此能够启动以图像接收进程602的执行状态为启动条件的预处理进程603,因此进程执行管理部511将预处理进程603决定为启动对象进程。
此后,由于从步骤S103到步骤S107的处理与上述处理相同,因此省略说明。另外,在实施方式1中,当预处理进程603的进程启动完成时,车辆检测进程604成为启动对象,当车辆检测进程604的进程启动完成时,车辆控制进程605成为启动对象,进行车辆控制进程605的启动,启动配置在第一控制装置上的全部进程。
同样地,在第二控制装置120和第三控制装置130中,也进行图11中的步骤S101至步骤S107中的进程的启动处理。如上述图9所示,配置在第二控制装置120中的图像发送进程601的执行状态6011中的启动条件是“无”,配置在第三控制装置130中的动力控制进程606的执行状态6061中的启动条件是“无”。因此,配置在第二控制装置120的图像发送进程601和配置在第三控制装置130的动力控制进程606被启动,而与其它进程的状态无关。
接下来,说明在图11的步骤S105中示出的、通过进程通信控制部将信息提供者的表示存在能够提供信息这一内容的消息和信息使用者的表示存在请求使用信息这一内容的消息发送之后的动作。当以相同信息作为对象的信息提供者和信息使用者被登录在上述的注册表中时,建立各个进程之间的通信路径。于是,当作为信息提供者的进程执行信息发送时,进程通信控制部向作为信息使用者的进程发送信息。具体地,第一控制装置110的图像接收进程602从图像发送进程接收图像数据,并将该接收到的图像数据发送到预处理进程603。另外,当在同一第一控制装置110设置有用于进行相互通信的两个进程时,进程通信控制部512在第一控制装置110内传输信息。
(1-4)进程结束的说明
接着,说明进程结束的处理流程。当从进程执行管理部511向与结束相对应的进程发出结束进程的指示时,或者当进程自身结束进程时,执行进程的结束。在下面的说明中,以没有请求自动驾驶功能的情况为例,对进程结束的流程进行说明。图13是表示实施方式1的控制装置中的进程的结束动作的流程图。
在图13的步骤S201中,存在结束进程的请求时(是),第一控制装置110的进程执行管理部511决定用于结束特定的进程的结束对象进程,前进到步骤S202。当不存在结束对象进程时(否),进程执行管理部511对进程结束的处理进行结束。具体地,没有自动驾驶的请求,决定使图像接收进程602、预处理进程603、车辆检测进程604和车辆控制进程605结束。
但是,如上述的图12的启动管理表所示,车辆控制进程605在车辆检测进程604未处于执行状态时无法执行启动,车辆检测进程604在预处理进程603未处于执行状态时无法执行启动,预处理进程603在图像接收进程602未处于执行状态时无法执行启动,因此进程执行管理部511决定结束对象进程使得以与已启动进程的顺序相反的顺序结束进程,将车辆控制进程605作为最初的结束对象进程。
另外,在步骤S202中,进程执行管理部511向结束对象进程发送进程结束的信号。具体地,进程执行管理部511向车辆控制进程605发送进程结束的信号。
接下来,在步骤S203,如果接收到进程执行管理部511发送的进程结束的信号,则结束对象进程开始进程结束的处理。当结束对象进程是信息提供者或信息使用者或者这两者时,结束对象进程通知进程通信控制部512解除结束对象进程的信息提供者或信息使用者或这两者的登录,进程通信控制部512解除在进程通信控制部512的注册表中登录的结束对象进程的登录。
因此,进程通信控制部512停止向第二控制装置120和第三控制装置130发送表示发送的结束对象进程是信息提供者这一内容的消息、表示发送的结束对象进程是信息使用者这一内容的消息。在实施方式1中,解除车辆控制进程605的登录,并停止向第二控制装置120和第三控制装置130发送的表示车辆控制进程是信息提供者这一内容的消息、以及表示车辆控制进程是信息使用这一内容的消息的发送。因此,切断与车辆检测进程604和动力控制进程606的通信。
在步骤S204中,结束对象进程存储由结束对象进程处理的数据。具体地说,存储部513将车辆控制进程605在主存储装置113a中展开的数据存储在辅助存储装置113b中。
在步骤S205中,当在之前的步骤S204中的数据保存的处理完成时,结束对象进程向进程执行管理部511通知进程结束的处理已完成。具体而言,车辆控制进程605向进程执行管理部511通知进程结束的处理已完成。
在步骤S206中,当从结束对象进程接收到进程结束完成的通信时,进程执行管理部511将上述列表内的结束对象进程的状态从“正在执行”更新为“结束”,并且前进到步骤S207。具体地,如图12的(d)所示,将车辆控制进程605的状态从“正在执行”更新为“结束”。
在图13的步骤S207中,进程执行管理部511释放用于从“正在执行”更新为“结束”的结束对象进程而确保的存储区域,并删除结束对象进程。之后,返回到步骤S201。具体地说,进程执行管理部511释放为车辆控制进程而确保的存储区域,并删除车辆控制进程605。由此,车辆控制进程605的结束处理完成。
返回到步骤S201,进程执行管理部511接着判断是否存在结束对象进程。在实施方式1中,在之前的步骤S207中,通过结束包含在车辆检测进程604的启动条件中的车辆控制进程605,能够结束车辆检测进程604,因此进程执行管理部511将车辆检测进程604决定为结束对象进程。
此后,由于从步骤S202到步骤S207的处理与上述处理相同,因此省略说明。另外,在实施方式1中,当车辆检测进程604的进程结束完成时,预处理进程603成为结束对象进程,当预处理进程603的进程结束完成时,图像接收进程602成为结束对象进程,结束图像接收进程602,从而配置在第一控制装置110中的与自动驾驶有关的所有进程结束。
在第二控制装置120和第三控制装置130中,也进行图13的步骤S201至步骤S207中的进程的结束处理,配置在第二控制装置120中的图像发送进程601结束,并且配置在第三控制装置130中的动力控制进程606结束。
(1-5)进程重新启动的说明
接着,说明进程重新启动的处理流程。图14是表示实施方式1的控制装置中的进程重新启动动作的流程图。在图14的步骤S301中,进程异常监视部514确认监视对象进程中有无异常,当检测到监视对象进程的异常时,向恢复控制部515通知在监视对象进程中存在异常。当在步骤S301中检测到监视对象进程的异常时(是),前进到步骤S302,并且当未检测到监视对象进程的异常时(否),结束进程重新启动的处理。
具体地,在步骤S302中当作为监视对象进程的图像接收进程602执行特定的处理时,向进程异常监视部514通知与该处理对应的CP。进程异常监视部514存储来自监视对象进程的图像接收进程602的CP的通知,将其与异常判断表进行比较,当CP的接收顺序与异常判断表不同时,判定监视对象进程的图像接收进程602为异常进程,当CP的接收顺序与异常判断表一致时,判定监视对象进程的图像接收进程602为正常。
在步骤S302,恢复控制部515根据启动管理表判断是否存在以异常进程的执行状态作为启动条件的进程。当存在以异常进程的执行状态作为启动条件的进程时(是),前进到步骤S303,当不存在以异常进程的执行状态作为启动条件的进程时(否),前进到步骤S306。具体地说,在作为异常进程的图像接收进程602中,存在以图像接收进程602的执行状态作为启动条件的预处理进程603、以预处理进程603的执行状态作为启动条件的车辆检测进程604、以及以车辆检测进程604的执行状态作为启动条件的车辆控制进程605。因此,从步骤S302前进到步骤S303。
在步骤S303,恢复控制部515向进程执行管理部511发出指示,使得暂时停止以异常进程的执行状态作为启动条件的进程。然后,进程执行管理部511根据该指示,暂时停止以异常进程的执行状态作为启动条件的进程的处理执行。具体地,在步骤S302中,判定为存在作为以图像接收进程602的执行状态作为启动条件的进程的预处理进程603,存在以预处理进程603的执行状态作为启动条件的车辆检测进程604,存在以车辆检测进程604的执行状态作为启动条件的车辆控制进程605,恢复控制部515向进程执行管理部511发出指示,使得暂时停止这些进程中不包含在其它进程的启动条件中的车辆控制进程605。
进程执行管理部511基于来自恢复控制部515的指示,停止车辆控制进程605的处理。此时,车辆控制进程605仅停止处理,而不进行进程的存储区域的释放、数据的保存以及登录在进程通信控制部512的注册表中的信息提供者和信息使用者的登录解除。
接下来,在步骤S304,进程执行管理部511将上述的启动管理表中的在步骤S303中暂时停止的进程的状态从“正在执行”更新为“暂时停止”,并前进到步骤S305。具体地,将车辆控制进程605的状态从“正在执行”更新为“暂时停止”。图12的(e)示出了此时的启动管理表。
返回图14,在步骤S305,在以异常进程的执行状态为启动条件的所有进程暂时停止的情况下(是),恢复控制部515前进到步骤S306,在所有进程没有暂时停止的情况下(否),恢复控制部515返回到步骤S303。具体而言,由于车辆检测进程604和预处理进程603正在执行,所以返回到步骤S303,按照车辆检测进程604、预处理进程603的顺序,与车辆控制进程605时同样地,执行步骤S303、步骤S304。然后,当车辆控制进程605、车辆检测进程604和预处理进程603的状态变为“暂时停止”时,前进到步骤S306。
在步骤S306,进程执行管理部511为了结束异常进程并启动异常进程,而进行重新启动。在该步骤S306的重新启动中,在进行异常进程的结束处理之后,再次启动异常进程,并将其作为正常的进程执行。该进程结束与上述的图13的步骤S202至步骤S207所示的进程结束的处理相同,进程启动与上述的图11的步骤S103至步骤S107所示的进程启动的处理相同。
具体地说,进程执行管理部511暂时结束作为异常进程的图像接收进程602,并再次启动图像接收进程602。此时,暂时结束进程,因此从进程通信管理部的注册表中解除图像接收进程602的信息提供者和信息使用者的登录。因此,图像发送进程601与图像接收进程602之间、图像接收进程602与预处理进程603之间的通信路径暂时断开,当图像接收进程602的启动再次完成时,通信路径也再次建立。
返回到图14,继续说明重新启动流程。在步骤S307,恢复控制部515确认是否存在将重新启动的进程的执行状态设为启动条件的进程。存在以重新启动的进程的执行状态作为启动条件的进程的情况下(是),前进到步骤S308,不存在以重新启动的进程的执行状态作为启动条件的进程的情况下(否),结束重新启动处理。具体地,恢复控制部515判定为存在以图像接收进程602的执行状态作为启动条件的预处理进程603。
在步骤S308,恢复控制部515向进程执行管理部511发出重新开始暂时停止的进程的执行的指示,进程执行管理部511向该暂时停止的进程发送进程重新开始的信号。暂时停止的进程在从进程执行管理部511接收到进程重新开始的信号时,从暂时停止的位置重新开始处理。具体地,进程执行管理部511向预处理进程603发送进程重新开始的信号,预处理进程603重新开始处理。
接下来,在步骤S309,进程执行管理部511将重新开始处理的进程的状态从“暂时停止”更新为“正在执行”。具体地,如图12的(f)所示,将预处理进程603的状态从“暂时停止”更新为“正在执行”。
在步骤S310,恢复控制部515确认重新开始了由于异常进程而暂时停止的所有进程的处理,在暂时停止的所有进程的处理重新开始了的情况下(是),结束重新启动处理,在暂时停止的所有进程的处理未重新开始的情况下(否),返回到步骤S308,使剩余的进程的处理重新开始。具体而言,由于车辆检测进程604和车辆控制进程605“暂时停止”,因此返回步骤S308,按照车辆检测进程604、车辆控制进程605的顺序,与预处理进程603时同样地执行步骤S308、步骤S309。当预处理进程603、车辆检测进程604和车辆控制进程605的状态变为“正在执行”时,结束重新启动处理。
(1-6)实施方式1的控制装置的效果
如上所述,实施方式1的控制装置具备:恢复控制部,其在配置于第一控制装置至第三控制装置的进程发生异常并使发生了异常的进程重新启动时,检测以该发生了异常的进程的执行状态为启动条件的进程;以及进程执行管理部,其接收来自恢复控制部的指示,暂时停止以发生了异常的进程的执行状态为启动条件的进程。因此,当在配置在各个控制装置的进程中发生异常并且重新启动发生了异常的进程时,仅重新启动发生了异常的进程,而不重新启动包括发生了异常的进程和以该发生了异常的进程的执行状态为启动条件的进程的所有进程,并通过暂时停止以发生了异常的进程的执行状态为启动条件的进程的执行,从而能抑制从进程的异常发生到系统恢复为止的时间。
实施方式2.
接着,对实施方式2的控制装置进行说明。在实施方式2的说明中,主要以与实施方式1的差异为中心进行说明。在上述实施方式1中,当进程发生异常时,进程异常监视部514、恢复控制部515和进程执行管理部511的功能具有串行关系,然而,在实施方式2中,恢复控制部515和进程执行管理部511的关系被构成为并行关系。
(2-1)结构的说明
作为实施方式2的控制装置的控制通信系统100、第一控制装置110、第二控制装置120、以及第三控制装置130的结构和功能与图1至图7所示的实施方式1的控制装置相同。
关于图2所示的第一控制装置110的各功能,说明与实施方式1的差异。与实施方式1的差异在于进程执行管理部511、进程异常监视部514、恢复控制部515。在实施方式2中,当重新启动进程时,进程执行管理部511检查由恢复控制部515控制的表示存在以异常进程的执行状态为启动条件的进程的标志,并且当该标志降低时重新启动异常进程。
在实施方式1中,当检测到进程的异常时,进程异常监视部514向恢复控制部515通知进程的异常,但是在实施方式2中,当检测到进程的异常时,进程异常监视部514除了向恢复控制部515通知进程的异常之外,还向进程执行管理部511通知进程的异常。
在实施方式2中,当存在以异常进程的执行状态为启动条件的进程时,恢复控制部515升高关联标志,并且在此期间暂时停止以该异常进程的执行状态为启动条件的进程的处理。在以异常进程的执行状态为启动条件的进程的处理暂时停止之后,降低标志,并且当由进程执行管理部511检测到异常进程的重新启动时,再次升高标志,并且使暂时停止的以异常进程的执行状态为启动条件的进程的处理重新启动。此时,标志也降低。
(2-2)动作的说明
进程重新启动的说明
对在进程异常监视部514检测到进程的异常之后,在向进程执行管理部511和恢复控制部515通知进程的异常之后的进程重新启动的动作进行说明。图15是表示实施方式2的控制装置中的恢复控制部的动作的流程图,图16是表示实施方式2的控制装置中的进程执行管理部的动作的流程图。根据这些流程图的处理被并行处理。
首先,用图15说明恢复控制部515的动作。在步骤S501中,恢复控制部515根据启动管理表确认是否存在以作为检测到异常的进程的异常进程的执行状态为启动条件的进程,在存在以异常进程的执行状态为启动条件的进程的情况下(是),前进到步骤S502,在不存在以异常进程的执行状态为启动条件的进程的情况下(否),结束进程重新启动的处理。具体地说,异常进程是图像接收进程602时,以该图像接收进程602的执行状态为启动条件的进程是预处理进程603,以预处理进程603的执行状态为启动条件的进程是车辆检测进程604,以车辆检测进程604的执行状态为启动条件的进程是车辆控制进程605。
在前进到步骤S502时,恢复控制部515升高表示存在以异常进程的执行状态为启动条件的进程的标志,并前进到步骤S503。通过该标志,进程执行管理部511避免使以异常进程的执行状态作为启动条件的进程结束。具体地,进程执行管理部511避免使以作为异常进程的图像接收进程602的执行状态为启动条件的预处理进程603结束。
接下来,在步骤S503,恢复控制部515向以异常进程的执行状态作为启动条件的进程发送用于暂时停止进程的处理的信号,并且接收到该信号的进程暂时停止处理。如上所述,在步骤S501中,存在作为以图像接收进程602的执行状态作为启动条件的进程的预处理进程603,存在以预处理进程的执行状态作为启动条件的车辆检测进程604,存在以车辆检测进程的执行状态作为启动条件的车辆控制进程605,在这些进程中,车辆控制进程不包括在其它进程的启动条件中。
恢复控制部515发送信号使得暂时停止不包括在其它进程的启动条件中的车辆控制进程605的进程,车辆控制进程605在接收到该信号时停止车辆控制进程605的处理。此时,车辆控制进程605仅停止处理,而不进行进程的存储区域的释放、数据的保存以及登录在进程通信控制部512的注册表中的使用信息和信息使用者的登录解除。
在步骤S504中,将在之前的步骤S503中暂时停止了启动管理表的进程的状态从“正在执行”变更为“结束”的虚拟状态。具体地,如图17的(a)所示,将车辆控制进程605的状态从“正在执行”变更为“结束”。然而,车辆控制进程605的实际状态是暂时停止的状态。这里,图17是表示实施方式2的控制装置中的进程执行管理部的启动管理表的说明图,(a)、(b)表示在不同阶段的各进程的状态。图17的(a)、图17的(b)中的“进程”列的栏从最上部起依次记载有“图像接收进程”、“预处理进程”、“车辆检测进程”和“车辆控制进程”,针对每个进程示出“启动条件的有无”、“成为启动条件的进程”和“进程的状态”。
接着,在图15的步骤S505中,确认以异常进程的执行状态为启动条件的所有进程是否暂时停止,在全部完成的情况下(是),前进到步骤S506,在存在未暂时停止的进程的情况下(否),返回步骤S503。具体而言,由于车辆检测进程604和预处理进程603正在执行中,所以返回到步骤S503,按照车辆检测进程604、预处理进程603的顺序,与车辆控制进程605时同样地,执行步骤S503、步骤S504。然后,如图17(b)所示,当车辆控制进程605、车辆检测进程604、预处理进程603的状态全部变为“结束”时,前进到步骤S606。
在步骤S506,恢复控制部515降低在步骤S502中升高的标志。通过降低该标志,从而省略后述的图16的步骤S601的处理,在步骤S602中,进程执行管理部511开始进程结束处理。然而,本来,进程执行管理部511确认是否存在以异常进程的执行状态为启动条件的进程,当存在以异常进程的执行状态为启动条件的进程时,结束进程,但是,直到上述的步骤S505为止,暂时停止以异常进程的执行状态为启动条件的进程,因此在图16的说明中省略。
在图15的步骤S507中,恢复控制部515确认进程执行管理部511是否重新启动了异常进程,在异常进程已经重新启动的情况下(是),前进到步骤S508,升高标志,在异常进程的重新启动尚未完成的情况下(否),再次执行步骤S507,并重复步骤S507的处理,直到异常进程重新启动为止。具体地,在后述的图16的步骤S602中,异常进程由进程执行管理部511重新启动,当检测到图17所示的执行管理表的异常进程改变为“正在执行”时,恢复控制部515升高标志。
接下来,在图15的步骤S509中,恢复控制部515向以暂时停止的异常进程的执行状态为启动条件的进程发送用于重新开始处理的信号,并且接收到该信号的进程从暂时停止的位置开始处理。具体地,恢复控制部515向预处理进程603发送进程重新开始的信号,预处理进程603重新开始处理。
在步骤S510中,对于启动管理表,将在之前的步骤S509中重新开始的进程的状态变更为“正在执行”。具体而言,将预处理进程603的状态变更为“正在执行”。接下来,前进到步骤S511。
在步骤S511中,确认是否重新开始了以异常进程的执行状态为启动条件的所有进程,当全部完成时(是),前进到步骤S512,降低标志,并且当存在未重新开始的进程时(否),返回到步骤S509。具体而言,由于车辆检测进程604和车辆控制进程605为“结束”,因此返回步骤S509,按照车辆检测进程604、车辆控制进程605的顺序,与预处理进程603时同样地执行步骤S509、步骤S510。当预处理进程603、车辆检测进程604和车辆控制进程605的状态变为“正在执行”时,恢复控制部515中的进程重新启动的处理结束。
接下来,用图16说明进程执行管理部511的动作。在步骤S601,确认由恢复控制部515控制的标志,当标志被降低时(是),前进到步骤S602,当标志升高时(否),返回到步骤S601,重复步骤S601的处理直到标志降低。具体地,当通过上述图15中的步骤S506降低标志时,前进到步骤S602。
接下来,在步骤S602,进程执行管理部511重新启动异常进程。具体地说,使作为异常进程的图像接收进程602重新启动。本来,当使进程结束时,需要确认是否存在以该进程的执行状态为启动条件的进程,但是通过上述的恢复控制部515暂时停止进程,因而能重新启动异常进程。
接下来,在步骤S603,确认标志是否降低,并且在标志降低的情况下(是),进程执行管理部511的重新启动处理完成,在标志升高的情况下(否),返回到步骤S603,并重复步骤S503的处理直到标志降低。这里,当上述的图15中的步骤S512完成时,使恢复控制部515的重新启动的处理结束。本来,当使异常进程重新启动时,在存在以重新启动的进程为启动条件的进程的情况下,也需要启动这些进程,但是通过上述的恢复控制部515的步骤S509至步骤S511,已经启动了以重新启动的进程为启动条件的进程,因此跳过该处理。
(2-3)实施方式2的控制装置的效果
在实施方式1中,进程执行管理部、恢复控制部、进程异常监视部具有串行的关系,进程执行管理部和恢复控制部之间的依存度变高,在追加、变更系统的功能时,有可能扩大影响范围,但在实施方式2中,由于使进程执行管理部和恢复控制部成为并行的关系,所以能够减轻进程执行管理部和恢复控制部之间的依存度,除了实施方式1的效果之外,还具有能够抑制系统复杂化的效果。
对实施方式1、实施方式2的补充说明
在实施方式1以及实施方式2中,第一控制装置110、第二控制装置120、第三控制装置130的功能也可以通过硬件来实现。图18是表示实施方式1以及实施方式2的控制装置中的、用硬件实现第一控制装置、第二控制装置、第三控制装置的功能时的结构的说明图。在图18中,第一控制装置110、第二控制装置120和第三控制装置130包括处理电路500和通信装置112、122和132。处理电路500也被称为处理电路(Processing Circuit)。
处理电路500是专用电子电路,用于实现作为第一控制装置110、第二控制装置120和第三控制装置130所具有的功能部的进程执行管理部511、521、531、进程通信控制部512、522、532以及存储部513、523、533。例如,处理电路500由单一电路、复合电路、编程处理器、并行编程处理器、逻辑IC、GA(门阵列)、ASIC(专用集成电路)、FPGA(现场可编程门阵列)或它们的组合构成。第一控制装置110、第二控制装置120和第三控制装置130可以包括代替处理电路500的多个处理电路。多个处理电路分担处理电路500的作用。
本申请记载了例示性的实施方式,但这些实施方式所记载的各种特征、形态及功能并不限于特定的实施方式的适用,能单独或以各种组合适用于实施方式。因此,在本申请所公开的技术范围内可以设想无数未举例示出的变形例。例如,假设包括对至少一个构成要素进行变形、添加或省略的情况,以及提取至少一个构成要素并与其它实施方式的构成要素进行组合的情况。
标号说明
100控制通信系统,101、102、103通信总线,110第一控制装置,111、121、131运算处理装置,113a、123a、133a主存储装置,113b、123b、133b辅助存储装置,112、122、132通信装置,114、124、134输入输出装置,120第二控制装置,130第三控制装置,140传感器,150转向控制装置,160动力控制装置,511、521、531进程执行管理部,512、522、532进程通信控制部,513、523、533存储部,514进程异常监视部,515恢复控制部,601图像发送进程,602图像接收进程,603预处理进程,604车辆检测进程,605车辆控制进程,606动力控制进程,6011、6021、6031、6041、6051、6061执行状态。
Claims (24)
1.一种控制装置,其特征在于,包括:
进程执行管理部,该进程执行管理部对以其它进程的执行状态作为自身进程的启动条件的多个进程的执行进行管理;
进程异常监视部,该进程异常监视部检测多个所述进程中的至少一个进程的异常;以及
恢复控制部,该恢复控制部在以由所述进程异常监视部检测到异常的进程的执行状态为启动条件的进程存在时,向所述进程执行管理部发出指示,以暂时停止包括以检测到异常的进程的执行状态为启动条件的进程在内的所有进程的执行,并且在检测到异常的所述进程重新启动之后,重新开始暂时停止的所述进程的执行,
所述进程执行管理部构成为:
将所述启动条件与所述其它进程的执行状态进行比较,当存在与所述启动条件一致的进程时,启动该进程并执行处理,当所述其它进程与所述启动条件不一致时,结束已启动并正在执行处理的所述进程,并根据所述恢复控制部的指示重新启动检测到异常的所述进程,且重新开始暂时停止的所述进程的处理。
2.如权利要求1所述的控制装置,其特征在于,
所述恢复控制部构成为:当存在以检测到异常的进程的执行状态为启动条件的进程时,向所述进程执行管理部发出指示,以从多个所述进程中不以其它进程的执行状态为启动条件的进程开始,依次暂时停止多个所述进程的执行。
3.如权利要求1所述的控制装置,其特征在于,
包括进程通信控制部,该进程通信控制部控制多个所述进程之间的信息交换,
所述进程通信控制部构成为:
接收向其它进程提供自身进程所具有的信息的来自所述自身进程的请求,发送表示所述自身进程能向所述其它进程提供所述信息的消息,或者接收使用所述其它进程所具有的信息的来自所述自身进程的请求,发送表示所述自身进程请求使用所述其它进程的信息的消息,在提供所述信息的进程和使用所述信息的进程存在时,在这些进程之间交换信息。
4.如权利要求1所述的控制装置,其特征在于,
多个所述进程中的至少一个包括至少一个检查点,所述检查点向所述进程异常监视部通知执行了特定的处理,
所述进程异常监视部构成为:接收所述检查点,并且在所接收到的该检查点的接收顺序与预先决定的接收顺序不同时,或者在预先决定的期间内的所述检查点的接收次数与预先决定的接收次数不同时,或者在接收到的所述检查点之间的时间间隔与预先决定的时间间隔不同时,判断为通知了所述检查点的进程异常。
5.如权利要求2所述的控制装置,其特征在于,
包括进程通信控制部,该进程通信控制部控制多个所述进程之间的信息交换,
所述进程通信控制部构成为:
接收向其它进程提供自身进程所具有的信息的来自所述自身进程的请求,发送表示所述自身进程能向所述其它进程提供所述信息的消息,或者接收使用所述其它进程所具有的信息的来自所述自身进程的请求,发送表示所述自身进程请求使用所述其它进程的信息的消息,在提供所述信息的进程和使用所述信息的进程存在时,在这些进程之间交换信息。
6.如权利要求2所述的控制装置,其特征在于,
多个所述进程中的至少一个包括至少一个检查点,所述检查点向所述进程异常监视部通知执行了特定的处理,
所述进程异常监视部构成为:接收所述检查点,并且在所接收到的该检查点的接收顺序与预先决定的接收顺序不同时,或者在预先决定的期间内的所述检查点的接收次数与预先决定的接收次数不同时,或者在接收到的所述检查点之间的时间间隔与预先决定的时间间隔不同时,判断为通知了所述检查点的进程异常。
7.如权利要求3所述的控制装置,其特征在于,
在启动满足所述启动条件的进程时,所述进程执行管理部确保用于该启动对象进程的存储区域,并生成所述启动对象进程,
所生成的所述启动对象进程对自身所处理的信息进行初始化,向所述进程通信控制部通知能向其它进程提供自身具有的信息、或者请求使用其它进程具有的信息,向所述进程执行管理部通知自身进程的启动已完成。
8.如权利要求3所述的控制装置,其特征在于,
多个所述进程中的至少一个包括至少一个检查点,所述检查点向所述进程异常监视部通知执行了特定的处理,
所述进程异常监视部构成为:接收所述检查点,并且在所接收到的该检查点的接收顺序与预先决定的接收顺序不同时,或者在预先决定的期间内的所述检查点的接收次数与预先决定的接收次数不同时,或者在接收到的所述检查点之间的时间间隔与预先决定的时间间隔不同时,判断为通知了所述检查点的进程异常。
9.如权利要求5所述的控制装置,其特征在于,
在启动满足所述启动条件的进程时,所述进程执行管理部确保用于该启动对象进程的存储区域,并生成所述启动对象进程,
所生成的所述启动对象进程对自身所处理的信息进行初始化,向所述进程通信控制部通知能向其它进程提供自身具有的信息、或者请求使用其它进程具有的信息,向所述进程执行管理部通知自身进程的启动已完成。
10.如权利要求5所述的控制装置,其特征在于,
多个所述进程中的至少一个包括至少一个检查点,所述检查点向所述进程异常监视部通知执行了特定的处理,
所述进程异常监视部构成为:接收所述检查点,并且在所接收到的该检查点的接收顺序与预先决定的接收顺序不同时,或者在预先决定的期间内的所述检查点的接收次数与预先决定的接收次数不同时,或者在接收到的所述检查点之间的时间间隔与预先决定的时间间隔不同时,判断为通知了所述检查点的进程异常。
11.如权利要求7所述的控制装置,其特征在于,
正在执行处理的进程构成为:
当从所述进程执行管理部接收到结束进程的指示时,或者当由自身结束进程时,停止向所述进程通信控制部通知能向其它进程提供自身具有的信息或请求使用其它进程具有的信息,并且保存由自身进程处理的信息,向所述进程执行管理部通知自身进程的结束已完成,
所述进程执行管理部构成为:
当接收到所述进程的结束已完成的通知时,释放已确保的所述存储区域,并删除已生成的所述启动对象进程。
12.如权利要求7所述的控制装置,其特征在于,
多个所述进程中的至少一个包括至少一个检查点,所述检查点向所述进程异常监视部通知执行了特定的处理,
所述进程异常监视部构成为:接收所述检查点,并且在所接收到的该检查点的接收顺序与预先决定的接收顺序不同时,或者在预先决定的期间内的所述检查点的接收次数与预先决定的接收次数不同时,或者在接收到的所述检查点之间的时间间隔与预先决定的时间间隔不同时,判断为通知了所述检查点的进程异常。
13.如权利要求9所述的控制装置,其特征在于,
正在执行处理的进程构成为:
当从所述进程执行管理部接收到结束进程的指示时,或者当由自身结束进程时,停止向所述进程通信控制部通知能向其它进程提供自身具有的信息或请求使用其它进程具有的信息,并且保存由自身进程处理的信息,向所述进程执行管理部通知自身进程的结束已完成,
所述进程执行管理部构成为:
当接收到所述进程的结束已完成的通知时,释放已确保的所述存储区域,并删除已生成的所述启动对象进程。
14.如权利要求9所述的控制装置,其特征在于,
多个所述进程中的至少一个包括至少一个检查点,所述检查点向所述进程异常监视部通知执行了特定的处理,
所述进程异常监视部构成为:接收所述检查点,并且在所接收到的该检查点的接收顺序与预先决定的接收顺序不同时,或者在预先决定的期间内的所述检查点的接收次数与预先决定的接收次数不同时,或者在接收到的所述检查点之间的时间间隔与预先决定的时间间隔不同时,判断为通知了所述检查点的进程异常。
15.如权利要求11所述的控制装置,其特征在于,
多个所述进程中的至少一个包括至少一个检查点,所述检查点向所述进程异常监视部通知执行了特定的处理,
所述进程异常监视部构成为:接收所述检查点,并且在所接收到的该检查点的接收顺序与预先决定的接收顺序不同时,或者在预先决定的期间内的所述检查点的接收次数与预先决定的接收次数不同时,或者在接收到的所述检查点之间的时间间隔与预先决定的时间间隔不同时,判断为通知了所述检查点的进程异常。
16.如权利要求13所述的控制装置,其特征在于,
多个所述进程中的至少一个包括至少一个检查点,所述检查点向所述进程异常监视部通知执行了特定的处理,
所述进程异常监视部构成为:接收所述检查点,并且在所接收到的该检查点的接收顺序与预先决定的接收顺序不同时,或者在预先决定的期间内的所述检查点的接收次数与预先决定的接收次数不同时,或者在接收到的所述检查点之间的时间间隔与预先决定的时间间隔不同时,判断为通知了所述检查点的进程异常。
17.一种控制装置,其特征在于,包括:
进程执行管理部,该进程执行管理部对以其它进程的执行状态作为自身进程的启动条件的多个进程的执行进行管理;
进程异常监视部,该进程异常监视部检测多个所述进程中的至少一个进程的异常;以及
恢复控制部,该恢复控制部构成为,在以由所述进程异常监视部检测到异常的进程的执行状态为启动条件的进程存在时,升高标志,并且使所述进程执行管理部暂时停止包括以检测到异常的所述进程的执行状态为启动条件的进程在内的所有进程的处理,当所述所有进程的处理暂时停止时,降低所述标志,当检测到异常的所述进程重新启动时,升高所述标志,并且使所述暂时停止的所述所有进程的处理重新开始,当所述所有进程的处理的重新开始完成时,降低所述标志,
所述进程执行管理部构成为:
将所述启动条件与所述其它进程的执行状态进行比较,当存在与所述启动条件一致的进程时,启动该进程并执行处理,当所述其它进程与所述启动条件不一致时,使已启动并正在执行处理的所述进程结束,并且当所述标志升高时,进行待机而不重新启动检测到异常的所述进程,当所述标志降低时,执行检测到异常的所述进程的重新启动。
18.如权利要求17所述的控制装置,其特征在于,
包括进程通信控制部,该进程通信控制部控制多个所述进程之间的信息交换,
所述进程通信控制部构成为:
接收向其它进程提供自身进程所具有的信息的来自所述自身进程的请求,发送表示所述自身进程能向所述其它进程提供所述信息的消息,或者接收使用所述其它进程所具有的信息的来自所述自身进程的请求,发送所述自身进程请求使用所述其它进程的信息的消息,在提供所述信息的进程和使用所述信息的进程存在时,在这些进程之间交换信息。
19.如权利要求17所述的控制装置,其特征在于,
多个所述进程中的至少一个包括至少一个检查点,所述检查点向所述进程异常监视部通知执行了特定的处理,
所述进程异常监视部构成为:接收所述检查点,并且在所接收到的该检查点的接收顺序与预先决定的接收顺序不同时,或者在预先决定的期间内的所述检查点的接收次数与预先决定的接收次数不同时,或者在接收到的所述检查点之间的时间间隔与预先决定的时间间隔不同时,判断为通知了所述检查点的进程异常。
20.如权利要求18所述的控制装置,其特征在于,
在启动满足所述启动条件的进程时,所述进程执行管理部确保用于该启动对象进程的存储区域,并生成所述启动对象进程,
所生成的所述启动对象进程对自身所处理的信息进行初始化,向所述进程通信控制部通知能向其它进程提供自身具有的信息、或者请求使用其它进程具有的信息,向所述进程执行管理部通知自身进程的启动已完成。
21.如权利要求18所述的控制装置,其特征在于,
多个所述进程中的至少一个包括至少一个检查点,所述检查点向所述进程异常监视部通知执行了特定的处理,
所述进程异常监视部构成为:接收所述检查点,并且在所接收到的该检查点的接收顺序与预先决定的接收顺序不同时,或者在预先决定的期间内的所述检查点的接收次数与预先决定的接收次数不同时,或者在接收到的所述检查点之间的时间间隔与预先决定的时间间隔不同时,判断为通知了所述检查点的进程异常。
22.如权利要求20所述的控制装置,其特征在于,
正在执行处理的进程构成为:
当从所述进程执行管理部接收到结束进程的指示时,或者当由自身结束进程时,停止向所述进程通信控制部通知能向其它进程提供自身具有的信息或请求使用其它进程具有的信息,并且保存由自身进程处理的信息,向所述进程执行管理部通知自身进程的结束已完成,
所述进程执行管理部构成为:
当接收到所述进程的结束已完成的通知时,释放已确保的所述存储区域,并删除已生成的所述启动对象进程。
23.如权利要求20所述的控制装置,其特征在于,
多个所述进程中的至少一个包括至少一个检查点,所述检查点向所述进程异常监视部通知执行了特定的处理,
所述进程异常监视部构成为:接收所述检查点,并且在所接收到的该检查点的接收顺序与预先决定的接收顺序不同时,或者在预先决定的期间内的所述检查点的接收次数与预先决定的接收次数不同时,或者在接收到的所述检查点之间的时间间隔与预先决定的时间间隔不同时,判断为通知了所述检查点的进程异常。
24.如权利要求22所述的控制装置,其特征在于,
多个所述进程中的至少一个包括至少一个检查点,所述检查点向所述进程异常监视部通知执行了特定的处理,
所述进程异常监视部构成为:接收所述检查点,并且在所接收到的该检查点的接收顺序与预先决定的接收顺序不同时,或者在预先决定的期间内的所述检查点的接收次数与预先决定的接收次数不同时,或者在接收到的所述检查点之间的时间间隔与预先决定的时间间隔不同时,判断为通知了所述检查点的进程异常。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2020170870A JP6991294B1 (ja) | 2020-10-09 | 2020-10-09 | 制御装置 |
| JP2020-170870 | 2020-10-09 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN114407909A true CN114407909A (zh) | 2022-04-29 |
| CN114407909B CN114407909B (zh) | 2023-10-10 |
Family
ID=80185493
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202111055350.4A Active CN114407909B (zh) | 2020-10-09 | 2021-09-09 | 控制装置 |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US11560149B2 (zh) |
| JP (1) | JP6991294B1 (zh) |
| CN (1) | CN114407909B (zh) |
| DE (1) | DE102021203206A1 (zh) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN115503595A (zh) * | 2022-09-16 | 2022-12-23 | 一汽奔腾轿车有限公司 | 一种汽车外部灯光控制软件架构及构建方法 |
| CN116501019A (zh) * | 2023-05-09 | 2023-07-28 | 中国第一汽车股份有限公司 | 一种车辆ecu的诊断管理系统及方法 |
| WO2025145590A1 (zh) * | 2024-01-05 | 2025-07-10 | 华为技术有限公司 | 一种进程的初始化方法以及相关设备 |
Citations (15)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2006051922A (ja) * | 2004-01-30 | 2006-02-23 | Hitachi Ltd | 車両制御装置 |
| JP2008217150A (ja) * | 2007-02-28 | 2008-09-18 | Secom Co Ltd | 遠隔監視システム |
| CN104081724A (zh) * | 2012-01-30 | 2014-10-01 | 三菱电机株式会社 | 设备管理装置、设备管理系统、设备管理方法以及程序 |
| CN105393180A (zh) * | 2014-04-30 | 2016-03-09 | 三菱电机株式会社 | 仿真系统、可编程控制器、仿真装置、工程设计工具 |
| CN106597995A (zh) * | 2015-10-15 | 2017-04-26 | 发那科株式会社 | 具备超驰开关进行的程序检查功能的数值控制装置 |
| JP2017092835A (ja) * | 2015-11-16 | 2017-05-25 | 日立オートモティブシステムズ株式会社 | 処理装置および車両制御システム |
| CN107264508A (zh) * | 2016-04-07 | 2017-10-20 | 三菱电机株式会社 | 车载发动机控制装置 |
| WO2018173291A1 (ja) * | 2017-03-24 | 2018-09-27 | 本田技研工業株式会社 | エンジン始動制御装置 |
| WO2018220663A1 (ja) * | 2017-05-29 | 2018-12-06 | 三菱電機株式会社 | 異常判定装置、異常判定方法及び異常判定プログラム |
| CN109076011A (zh) * | 2016-04-19 | 2018-12-21 | 三菱电机株式会社 | 中继装置 |
| CN110276946A (zh) * | 2018-03-16 | 2019-09-24 | 本田技研工业株式会社 | 车辆控制装置、车辆控制方法以及存储介质 |
| US20200082648A1 (en) * | 2018-09-07 | 2020-03-12 | Baidu Online Network Technology (Beijing) Co., Ltd. | Automatic Driving System, Vehicle Control Method and Device |
| US20200139990A1 (en) * | 2017-06-23 | 2020-05-07 | Denso Corporation | Electronic control device, vehicle control method, and vehicle control program product |
| CN111247038A (zh) * | 2017-11-06 | 2020-06-05 | 株式会社自动网络技术研究所 | 程序更新装置、程序更新系统及程序更新方法 |
| US20200290641A1 (en) * | 2017-06-08 | 2020-09-17 | Mitsubishi Electric Corporation | Vehicle control device |
Family Cites Families (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP3321837B2 (ja) * | 1992-08-06 | 2002-09-09 | 株式会社日立製作所 | 車両の診断制御方法 |
| JPH0926940A (ja) * | 1995-07-11 | 1997-01-28 | Mitsubishi Electric Corp | 分散システム構築方式 |
| DE19756081A1 (de) * | 1997-12-17 | 1999-06-24 | Bosch Gmbh Robert | Verfahren zur Überwachung und Fehlererkennung |
| US6112148A (en) * | 1998-12-18 | 2000-08-29 | Cummins Engine Co., Inc. | System and method for controlling diagnostic annunciators |
| JP2001056772A (ja) | 1999-08-18 | 2001-02-27 | Oki Electric Ind Co Ltd | 障害監視システム |
| JP2008225745A (ja) | 2007-03-12 | 2008-09-25 | Nec Corp | プロセス制御装置および方法およびプログラム |
| JP5354579B2 (ja) | 2009-01-13 | 2013-11-27 | シャープ株式会社 | プロセス監視機能を有する情報処理装置、プロセス監視方法、およびプロセス監視プログラム |
| US8239709B2 (en) | 2009-08-12 | 2012-08-07 | Apple Inc. | Managing extrinsic processes |
| JP6393628B2 (ja) | 2015-01-21 | 2018-09-19 | 日立オートモティブシステムズ株式会社 | 車両制御装置 |
-
2020
- 2020-10-09 JP JP2020170870A patent/JP6991294B1/ja active Active
-
2021
- 2021-02-25 US US17/184,795 patent/US11560149B2/en active Active
- 2021-03-30 DE DE102021203206.0A patent/DE102021203206A1/de active Pending
- 2021-09-09 CN CN202111055350.4A patent/CN114407909B/zh active Active
Patent Citations (15)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2006051922A (ja) * | 2004-01-30 | 2006-02-23 | Hitachi Ltd | 車両制御装置 |
| JP2008217150A (ja) * | 2007-02-28 | 2008-09-18 | Secom Co Ltd | 遠隔監視システム |
| CN104081724A (zh) * | 2012-01-30 | 2014-10-01 | 三菱电机株式会社 | 设备管理装置、设备管理系统、设备管理方法以及程序 |
| CN105393180A (zh) * | 2014-04-30 | 2016-03-09 | 三菱电机株式会社 | 仿真系统、可编程控制器、仿真装置、工程设计工具 |
| CN106597995A (zh) * | 2015-10-15 | 2017-04-26 | 发那科株式会社 | 具备超驰开关进行的程序检查功能的数值控制装置 |
| JP2017092835A (ja) * | 2015-11-16 | 2017-05-25 | 日立オートモティブシステムズ株式会社 | 処理装置および車両制御システム |
| CN107264508A (zh) * | 2016-04-07 | 2017-10-20 | 三菱电机株式会社 | 车载发动机控制装置 |
| CN109076011A (zh) * | 2016-04-19 | 2018-12-21 | 三菱电机株式会社 | 中继装置 |
| WO2018173291A1 (ja) * | 2017-03-24 | 2018-09-27 | 本田技研工業株式会社 | エンジン始動制御装置 |
| WO2018220663A1 (ja) * | 2017-05-29 | 2018-12-06 | 三菱電機株式会社 | 異常判定装置、異常判定方法及び異常判定プログラム |
| US20200290641A1 (en) * | 2017-06-08 | 2020-09-17 | Mitsubishi Electric Corporation | Vehicle control device |
| US20200139990A1 (en) * | 2017-06-23 | 2020-05-07 | Denso Corporation | Electronic control device, vehicle control method, and vehicle control program product |
| CN111247038A (zh) * | 2017-11-06 | 2020-06-05 | 株式会社自动网络技术研究所 | 程序更新装置、程序更新系统及程序更新方法 |
| CN110276946A (zh) * | 2018-03-16 | 2019-09-24 | 本田技研工业株式会社 | 车辆控制装置、车辆控制方法以及存储介质 |
| US20200082648A1 (en) * | 2018-09-07 | 2020-03-12 | Baidu Online Network Technology (Beijing) Co., Ltd. | Automatic Driving System, Vehicle Control Method and Device |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN115503595A (zh) * | 2022-09-16 | 2022-12-23 | 一汽奔腾轿车有限公司 | 一种汽车外部灯光控制软件架构及构建方法 |
| CN116501019A (zh) * | 2023-05-09 | 2023-07-28 | 中国第一汽车股份有限公司 | 一种车辆ecu的诊断管理系统及方法 |
| WO2025145590A1 (zh) * | 2024-01-05 | 2025-07-10 | 华为技术有限公司 | 一种进程的初始化方法以及相关设备 |
Also Published As
| Publication number | Publication date |
|---|---|
| US11560149B2 (en) | 2023-01-24 |
| JP2022062756A (ja) | 2022-04-21 |
| DE102021203206A1 (de) | 2022-04-14 |
| JP6991294B1 (ja) | 2022-01-12 |
| US20220111854A1 (en) | 2022-04-14 |
| CN114407909B (zh) | 2023-10-10 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN114407909B (zh) | 控制装置 | |
| CN110709303B (zh) | 车辆控制装置 | |
| US20180341476A1 (en) | Software updating device, software updating system, and software updating method | |
| JP6853883B2 (ja) | コントローラ | |
| JP2010285001A (ja) | 電子制御システム、機能代行方法 | |
| US12139152B2 (en) | In-vehicle electronic control unit and computer readable medium | |
| CN110678375A (zh) | 车辆控制装置及车辆控制系统 | |
| CN109361542B (zh) | 客户端的故障处理方法、装置、系统、终端和服务器 | |
| US10089195B2 (en) | Method for redundant processing of data | |
| CN113678101B (zh) | 信息处理装置、移动体以及信息处理方法 | |
| US20240192978A1 (en) | Power management on a vehicle | |
| CN115904793B (zh) | 一种基于多核异构系统的内存转存方法、系统及芯片 | |
| US20240192977A1 (en) | Power management on a vehicle | |
| CN114356214B (zh) | 一种针对kubernetes系统提供本地存储卷的方法及系统 | |
| JP6364773B2 (ja) | 情報処理装置、情報処理システム、メモリレプリケーション方法、並びにコンピュータ・プログラム | |
| CN111869167A (zh) | 针对监控实体和通信组件的方法和计算机程序、监控实体、通信组件、系统和车辆 | |
| CN119718436B (zh) | 唤醒控制方法、装置、车辆和存储介质 | |
| JP2021071824A (ja) | 制御通信システム | |
| CN106068501A (zh) | 计算机装置和计算机机构 | |
| JP3710760B2 (ja) | 処理システム、処理装置及び再開処理方法 | |
| US20250130620A1 (en) | Soc fault indication strategy to the mcu for the adaptive partitions during bootup stage | |
| JP2024164960A (ja) | 電子制御装置及び起動制御方法 | |
| WO2023218910A1 (ja) | 車載通信機及びプッシュサーバ | |
| JPH09251401A (ja) | フォールトトレラントシステムにおけるプログラム動作方式 | |
| JP2008117268A (ja) | 情報管理システム |
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 | ||
| TR01 | Transfer of patent right | ||
| TR01 | Transfer of patent right |
Effective date of registration: 20251215 Address after: Tokyo, Japan Patentee after: Mitsubishi Electric Mobility Co.,Ltd. Country or region after: Japan Address before: Tokyo, Japan Patentee before: MITSUBISHI ELECTRIC Corp. Country or region before: Japan |