掌桥专利:专业的专利平台
掌桥专利
首页

车辆的控制装置、控制方法及存储控制程序的存储介质

文献发布时间:2023-06-19 10:06:57


车辆的控制装置、控制方法及存储控制程序的存储介质

技术领域

本公开涉及一种车辆的控制装置、车辆的控制方法及存储控制程序的存储介质。

背景技术

当前正在进行将车辆的ECU(Electronic Control Unit)的功能作为软件而整合到一个控制装置中的开发。例如在日本特开第2012-203449号公报中,公开了一种考虑到工序之间的相关性来确定启动的优先顺位的信息处理装置。

发明内容

在通过一个控制装置执行具有车辆的ECU的功能的多个软件的情况下,通过构成虚拟机(VM:Virtual Machine)来实现,但在该情况下,车辆的控制所需的软件的启动可能延迟。

本公开的目的是提供一种车辆的控制装置、车辆的控制方法及控制程序,其根据车辆的状态来切换应当优先启动的虚拟机,从而抑制对于车辆的控制很重要的虚拟机的延迟。

第一方式的车辆的控制装置,包括:存储器;以及处理器,与所述存储器连接,所述处理器配置为,判定车辆的状态,构成对搭载于所述车辆的设备进行控制的多个虚拟机,根据所述车辆的状态切换所述多个虚拟机启动或者停止的顺位。

在第一方式的车辆的控制装置中,由虚拟机构成部构成多个虚拟机,在各虚拟机中控制搭载于车辆的设备。在该车辆的控制装置中,根据由判定部判定出的车辆的状态,虚拟机控制部切换多个虚拟机启动或者停止的顺位。由此,能够优先启动对于车辆的控制很重要的虚拟机。即,根据该车辆的控制装置,通过根据车辆的状态来切换应当优先启动的虚拟机,能够抑制对于车辆的控制很重要的虚拟机的延迟。

第二方式的车辆的控制装置,所述处理器配置为,在存在与某一虚拟机相关的其他虚拟机的情况下,在启动所述某一虚拟机之后再启动所述其他虚拟机,在停止所述其他虚拟机之后再停止所述某一虚拟机。

第二方式的车辆的控制装置进行如下控制,即,在存在与某一虚拟机相关的其他虚拟机的情况下,不在该某一虚拟机处于停止状态下时使该其他虚拟机启动。即,在该车辆的控制装置中,在使某一虚拟机启动或者停止时,其他虚拟机处于停止状态,因此能够缩短某一虚拟机启动或者停止所需的处理时间。

第三方式的车辆的控制装置,所述处理器配置为,在使处于启动状态的虚拟机结束并使处于停止状态的虚拟机启动的情况下,能够使要结束的所述处于启动状态的虚拟机的资源减少且使所述处于停止状态的虚拟机的所述资源增加而启动。

在第三方式的车辆的控制装置中,推迟使处于启动状态的虚拟机结束的处理,减少针对该虚拟机的、虚拟机构成部的资源,增加要启动的虚拟机的资源。由此,处于停止状态的虚拟机的启动所涉及的处理受到结束被推迟的虚拟机的处理的影响的情况得到抑制。即,根据该车辆的控制装置,能够缩短要启动的虚拟机的启动时间。

第四方式的车辆的控制装置,所述处理器配置为,在要使与所述车辆的行驶相关的虚拟机启动的情况下,在该虚拟机的启动开始后增加所述资源,在启动完成后将所述资源减少至通常使用量。

在第四方式的车辆的控制装置中,能够将已分配给结束相关处理被推迟的虚拟机的资源,分配给要启动的、与车辆的行驶相关的虚拟机。由此,根据该车辆的控制装置,能够缩短与车辆的行驶相关的虚拟机的启动时间。

第五方式的车辆的控制装置,所述处理器配置为,在要使对所述车辆的行驶没有影响的虚拟机启动的情况下,在开始该虚拟机的启动后,不等待该虚拟机的启动完成就执行下一所述顺位的虚拟机相关的启动或者停止。

在第五方式的车辆的控制装置中,在使对车辆的行驶没有影响的虚拟机启动的情况下,虚拟机控制部不等待该虚拟机的启动完成就执行下一顺位的虚拟机相关的启动或者停止。即,根据该车辆的控制装置,针对对车辆的行驶没有影响的虚拟机,通过与其他虚拟机的处理并行地进行处理,能够缩短全部处理完成的时间。

第六方式的车辆的控制方法,通过处理器执行:判定车辆的状态,构成对搭载于所述车辆的设备进行控制的多个虚拟机,根据所述车辆的状态切换所述多个虚拟机启动或者停止的顺位。

在第六方式的车辆的控制方法中,构成多个虚拟机,在各虚拟机中控制搭载于车辆的设备。在该车辆的控制方法中,执行根据判定出的车辆的状态来切换多个虚拟机启动或者停止的顺位的切换处理。由此,能够优先启动对于车辆的控制很重要的虚拟机。即,根据该车辆的控制方法,通过根据车辆的状态来切换应当优先启动的虚拟机,能够抑制对于车辆的控制很重要的虚拟机的延迟。

第七方式的存储介质,其存储使计算机执行车辆的控制处理的程序,在所述车辆的控制处理中,判定车辆的状态,构成对搭载于所述车辆的设备进行控制的多个虚拟机,根据所述车辆的状态切换所述多个虚拟机启动或者停止的顺位。

第七方式的控制程序构成多个虚拟机,在各虚拟机中控制搭载于车辆的设备。该计算机执行根据判定出的车辆的状态来切换多个虚拟机启动或者停止的顺位的切换处理。由此,能够优先启动对于车辆的控制很重要的虚拟机。即,根据该控制程序,通过根据车辆的状态来切换应当优先启动的虚拟机,能够抑制对于车辆的控制很重要的虚拟机的延迟。

根据本公开,通过根据车辆的状态来切换应当优先启动的虚拟机,能够抑制对于车辆的控制很重要的虚拟机的延迟。

附图说明

图1是示出第一实施方式所涉及的车辆的硬件构成的框图。

图2是示出第一实施方式的车辆的功能构成的例子的框图。

图3是示出第一实施方式的车辆的控制装置中的启动顺序表格的一个例子的图。

图4是说明第一实施方式中的车辆的状态和启动或者停止的虚拟机的图。

图5是示出第一实施方式中的启动处理的流程的流程图。

图6是示出第一实施方式中的启动处理的流程的流程图(延续图5)。

图7是示出第二实施方式的车辆的功能构成的例子的框图。

图8是示出第三实施方式的车辆的功能构成的例子的框图。

图9是示出第四实施方式的车辆的功能构成的例子的框图。

具体实施方式

[第一实施方式]

图1是示出第一实施方式所涉及的车辆12的控制系统的框图。

(构成)

如图1所示,第一实施方式所涉及的车辆12构成为包括作为车辆的控制装置(以下简称为“控制装置”)10的ECU(Electronic Control Unit)20、和与ECU 20连接的车载设备集16。车载设备集16包括设置在车辆12中的各种传感器,例如安装在车身各部、发动机(engine)各部的传感器。此外,车载设备集16包括设置在车辆12中的各种驱动用装置,例如安装在车身各部、发动机各部的电动机(motor)、阀、致动器。

ECU 20构成为包括CPU(Central Processing Unit)20A、ROM(Read Only Memory)20B、RAM(Random Access Memory)20C、通信I/F(InterFace)20D以及输入输出I/F(InterFace)20E。CPU 20A、ROM 20B、RAM 20C、通信I/F 20D以及输入输出I/F 20E经由总线20F相互可通信地连接。

CPU 20A是中央运算处理单元,执行各种程序,并且控制各部。即,CPU 20A从ROM20B读出程序,将RAM 20C作为作业区域来执行程序。在本实施方式中,可以具备多个CPU20A(多处理器),也可以在CPU 20A中具有多个核心(多核)。

ROM 20B存储有各种程序以及各种数据。在本实施方式的ROM20B中存储有控制程序200。控制程序200是用于进行后述的启动处理的程序。此外,在ROM 20B中存储有后述的启动顺序表格220。

RAM 20C作为作业区域临时存储程序或者数据。

通信I/F 20D是用于与设置在车辆12中的其他装置连接的接口。该接口可以采用基于CAN(Controller Area Network)、以太网(注册商标)等的通信标准。

输入输出I/F 20E是用于与搭载于车辆12的车载设备集16通信的接口。

图2是示出ECU 20的功能构成的例子的框图。各功能构成是通过CPU 20A加载ROM20B所存储的控制程序200并执行而实现的。

如图2所示,ECU 20具有4个虚拟机(VM:Virtual Machine)110以及虚拟机构成部250。虚拟机110包括车身控制虚拟机110A、发动机控制虚拟机110B、自动驾驶控制虚拟机110C、以及多媒体虚拟机110D。在此,发动机控制虚拟机110B是某一虚拟机的一个例子,自动驾驶控制虚拟机110C是其他虚拟机的一个例子。另外,在ECU 20中实现的虚拟机110不限于此,还可以包括与用途相应的虚拟机110。

虚拟机构成部250具有虚拟地构成各虚拟机110的功能。该虚拟机构成部250是通过所谓的管理程序(Hypervisor)的功能来实现的。虚拟机构成部250还包括虚拟机控制部260和作为判定部的状态判定部270。

虚拟机控制部260具有控制各虚拟机110的启动或者结束的顺序、以及CPU 20A的资源分配的功能。虚拟机控制部260还包括启动顺序表格220、启动虚拟机判断部262、以及资源管理部264。

如图3所示,启动顺序表格220是规定了在启动各虚拟机110的情况下的各虚拟机110的启动顺位的表格。对于该顺位,对车辆12的行驶而言越重要的虚拟机110即优先级越高的虚拟机110,就赋予越高的顺位。例如,车辆12行驶必需的车身控制虚拟机110A及发动机控制虚拟机110B的优先级被设定为高(High),用于实现作为附加功能的自动驾驶的自动驾驶控制虚拟机110C的优先级被设定为中(Middle)。此外,与车辆12的行驶无直接关系的多媒体虚拟机110D的优先级被设定为低(Low)。

此外,在启动顺序表格220中规定了各个虚拟机110的相关关系。例如图3所示,自动驾驶控制虚拟机110C与发动机控制虚拟机110B相关。即,在进行自动驾驶的情况下,需要在启动自动驾驶控制虚拟机110C之前启动发动机控制虚拟机110B。

启动虚拟机判断部262具有根据车辆12的状态来判断使各虚拟机110启动或停止的功能。详细而言,启动虚拟机判断部262基于由后述的状态判定部270判定出的车辆12的状态,判断使各虚拟机110启动还是停止。例如图4所示,在车辆12的状态是状态A,即“乘车”且“停车”时,判断为车身控制虚拟机110A以及多媒体虚拟机110D启动,且发动机控制虚拟机110B以及自动驾驶控制虚拟机110C停止。此外,例如,在车辆12的状态是状态B,即“乘车”且“行驶中”且“自动驾驶”时,判断为车身控制虚拟机110A、发动机控制虚拟机110B、自动驾驶控制虚拟机110C以及多媒体虚拟机110D均要启动。

资源管理部264具有管理分配给各虚拟机110的、CPU 20A的资源的功能。资源管理部264将除了执行虚拟机构成部250和虚拟机控制部260所需的资源之外的资源分配给各虚拟机110。

状态判定部270具有根据车载设备集16的信息来判定车辆12的状态的功能。车辆12的状态包括乘车状态、行驶状态、驾驶状态等。乘车状态分为基于车载设备集16所包括的车内照相机、落座传感器等的信息而判定的“乘车”以及“空车”。行驶状态分为基于车载设备集16所包括的车速传感器等的信息而判定的“行驶中”以及“停车”。驾驶状态分为基于车载设备集16所包括的转向角传感器、节气门位置传感器等信息而判定的“自动驾驶”以及“手动驾驶”。

(控制流程)

在本实施方式中,通过图5以及图6的流程图来说明ECU 10执行的启动处理的流程的例子。

在图5的步骤S100中,作为构成步骤,CPU 20A启动作为软件的管理程序。由此,构成虚拟后的各虚拟机110。

在步骤S101中,作为判定步骤,状态判定部270判定车辆12的状态。在状态判定部270判定为车辆12的状态是状态A(参照图4)的情况下,前进到步骤S102。另一方面,在状态判定部270判定为车辆12的状态是状态B(参照图4)的情况下,前进到步骤S120。

另外,在步骤S101的判定步骤的结果为判定出车辆12的状态的情况下,接着执行切换步骤。在车辆12的状态是状态A的情况下,在切换步骤中,处理的顺位由在启动顺序表格220中定义的顺位以及相关对象、和启动虚拟机判断部262的判断是启动还是停止来确定。在状态A的情况下,如步骤S102~步骤S118那样,以自动驾驶控制虚拟机110C、发动机控制虚拟机110B、车身控制虚拟机110A、多媒体虚拟机110D、自动驾驶控制虚拟机110C、发动机控制虚拟机110B的顺序来执行处理。

在步骤S102中,虚拟机控制部260判定自动驾驶控制虚拟机110C是否处于启动状态。在虚拟机控制部260判定为自动驾驶控制虚拟机110C处于启动状态的情况下,前进到步骤S103。另一方面,在虚拟机控制部260判定为自动驾驶控制虚拟机110C并非处于启动状态、即处于停止状态的情况下,前进到步骤S104。

在步骤S103中,资源管理部264使分配给自动驾驶控制虚拟机110C的、CPU 20A的资源减少到事实上的停止水平。然后,前进到步骤S104。

在步骤S104中,虚拟机控制部260判定发动机控制虚拟机110B是否处于启动状态。在虚拟机控制部260判定为发动机控制虚拟机110B处于启动状态的情况下,前进到步骤S105。另一方面,在虚拟机控制部260判定为发动机控制虚拟机110B并非处于启动状态、即处于停止状态的情况下,前进到步骤S106。

在步骤S105中,资源管理部264使分配给发动机控制虚拟机110B的、CPU 20A的资源减少到事实上的停止水平。然后,前进到步骤S106。

在步骤S106中,虚拟机控制部260判定车身控制虚拟机110A是否处于启动状态。在虚拟机控制部260判定为车身控制虚拟机110A处于启动状态的情况下,前进到步骤S111。另一方面,在虚拟机控制部260判定为车身控制虚拟机110A并非处于启动状态、即处于停止状态的情况下,前进到步骤S107。

在步骤S107中,虚拟机控制部260开始启动车身控制虚拟机110A。

在步骤S108中,资源管理部264使分配给车身控制虚拟机110A的、CPU 20A的资源增加。

在步骤S109中,虚拟机控制部260判定车身控制虚拟机110A是否已启动。在虚拟机控制部260判定为车身控制虚拟机110A已启动的情况下,前进到步骤S110。另一方面,在虚拟机控制部260判定为车身控制虚拟机110A未启动的情况下,重复步骤S109。

在步骤S110中,资源管理部264使分配给车身控制虚拟机110A的、CPU 20A的资源减少到通常水平。然后,前进到步骤S111。

在步骤S111中,虚拟机控制部260判定多媒体虚拟机110D是否处于启动状态。在虚拟机控制部260判定为多媒体虚拟机110D处于启动状态的情况下,前进到步骤S113。另一方面,在虚拟机控制部260判定为多媒体虚拟机110D并非处于启动状态、即处于停止状态的情况下,前进到步骤S112。

在步骤S112中,虚拟机控制部260开始启动多媒体虚拟机110D。然后,前进到步骤S113。

在步骤S113中,虚拟机控制部260判定自动驾驶控制虚拟机110C是否处于启动状态。在虚拟机控制部260判定为自动驾驶控制虚拟机110C处于启动状态的情况下,前进到步骤S114。另一方面,在虚拟机控制部260判定为自动驾驶控制虚拟机110C并非处于启动状态、即处于停止状态的情况下,前进至步骤S116。

在步骤S114中,资源管理部264使分配给自动驾驶控制虚拟机110C的、CPU 20A的资源增加到能够进行通常的处理的最低水平。

在步骤S115中,虚拟机控制部260进行自动驾驶控制虚拟机110C的结束处理。然后,前进到步骤S116。

在步骤S116中,虚拟机控制部260判定发动机控制虚拟机110B是否处于启动状态。在虚拟机控制部260判定为发动机控制虚拟机110B处于启动状态的情况下,前进到步骤S117。另一方面,在虚拟机控制部260判定为发动机控制虚拟机110B并非处于启动状态、即处于停止状态的情况下,前进到步骤S119。

在步骤S117中,资源管理部264使分配给发动机控制虚拟机110B的、CPU 20A的资源增加到能够进行通常的处理的最低水平。

在步骤S118中,虚拟机控制部260进行发动机控制虚拟机110B的结束处理。然后,前进到步骤S119。

在步骤S119中,状态判定部270判定车辆12的状态。在状态判定部270判定为车辆12的状态发生变化的情况下,返回步骤S101。另一方面,在状态判定部270判定为车辆12的状态未变化的情况下,重复步骤S119。即,直至车辆12的状态发生变化为止进行待机。

另一方面,在车辆12的状态是状态B的情况下,在切换步骤中,按照在启动顺序表格220中定义的顺位进行切换。在状态B的情况下,如图6的步骤S120~步骤S136那样,以车身控制虚拟机110A、发动机控制虚拟机110B、自动驾驶控制虚拟机110C、多媒体虚拟机110D的顺序执行处理。

在步骤S120中,虚拟机控制部260判定车身控制虚拟机110A是否处于启动状态。在虚拟机控制部260判定为车身控制虚拟机110A处于启动状态的情况下,前进到步骤S125。另一方面,在虚拟机控制部260判定为车身控制虚拟机110A并非处于启动状态、即处于停止状态的情况下,前进到步骤S121。

在步骤S121中,虚拟机控制部260开始启动车身控制虚拟机110A。

在步骤S122中,资源管理部264使分配给车身控制虚拟机110A的、CPU 20A的资源增加。

在步骤S123中,虚拟机控制部260判定车身控制虚拟机110A是否已启动。在虚拟机控制部260判定为车身控制虚拟机110A已启动的情况下,前进到步骤S124。另一方面,在虚拟机控制部260判定为车身控制虚拟机110A未启动的情况下,重复步骤S123。

在步骤S124中,资源管理部264使分配给车身控制虚拟机110A的、CPU 20A的资源减少到通常水平。然后,前进到步骤S125。

在步骤S125中,虚拟机控制部260判定发动机控制虚拟机110B是否处于启动状态。在虚拟机控制部260判定为发动机控制虚拟机110B处于启动状态的情况下,前进到步骤S130。另一方面,在虚拟机控制部260判定为发动机控制虚拟机110B并非处于启动状态、即处于停止状态的情况下,前进到步骤S126。

在步骤S126中,虚拟机控制部260开始启动发动机控制虚拟机110B。

在步骤S127中,资源管理部264使分配给发动机控制虚拟机110B的、CPU 20A的资源增加。

在步骤S128中,虚拟机控制部260判定发动机控制虚拟机110B是否已启动。在虚拟机控制部260判定为发动机控制虚拟机110B已启动的情况下,前进到步骤S129。另一方面,在虚拟机控制部260判定为发动机控制虚拟机110B未启动的情况下,重复步骤S128。

在步骤S129中,资源管理部264使分配给发动机控制虚拟机110B的、CPU 20A的资源减少到通常水平。然后,前进到步骤S130。

在步骤S130中,虚拟机控制部260判定自动驾驶控制虚拟机110C是否处于启动状态。在虚拟机控制部260判定为自动驾驶控制虚拟机110C处于启动状态的情况下,前进到步骤S135。另一方面,在虚拟机控制部260判定为自动驾驶控制虚拟机110C并非处于启动状态、即处于停止状态的情况下,前进到步骤S131。

在步骤S131中,虚拟机控制部260开始启动自动驾驶控制虚拟机110C。

在步骤S132中,资源管理部264使分配给自动驾驶控制虚拟机110C的、CPU 20A的资源增加。

在步骤S133中,虚拟机控制部260判定自动驾驶控制虚拟机110C是否已启动。在虚拟机控制部260判定为自动驾驶控制虚拟机110C已启动的情况下,前进到步骤S134。另一方面,在虚拟机控制部260判定为自动驾驶控制虚拟机110C未启动的情况下,重复步骤S133。

在步骤S134中,资源管理部264使分配给自动驾驶控制虚拟机110C的、CPU 20A的资源减少到通常水平。然后,前进到步骤S135。

在步骤S135中,虚拟机控制部260判定多媒体虚拟机110D是否处于启动状态。在虚拟机控制部260判定为多媒体虚拟机110D处于启动状态的情况下,前进到步骤S119。另一方面,在虚拟机控制部260判定为多媒体虚拟机110D并非处于启动状态、即处于停止状态的情况下,前进到步骤S136。

在步骤S136中,虚拟机控制部260开始启动多媒体虚拟机110D。然后,前进到步骤S119。

(第一实施方式的总结)

在本实施方式的控制装置10中,由虚拟机构成部250构成虚拟的多个虚拟机110,在各虚拟机110中,控制搭载于车辆12的设备(车载设备集16)。在该控制装置10中,根据由状态判定部270判定的车辆12的状态,切换虚拟机控制部260多个虚拟机110启动或者停止的顺位。

例如在车辆12处于状态B下并要分别启动处于停止状态的各虚拟机110的情况下,在控制装置10中,按照在启动顺序表格220中规定的顺位来进行启动(参照图6的步骤S120~步骤S136)。另一方面,在车辆12处于状态A下并部分虚拟机110结束的情况下,在控制装置10中,按照考虑到虚拟机110的相关关系和进行CPU 20A的资源的增减的虚拟机110的顺序得到的顺位,来进行启动或者停止(参照图5的步骤S102~步骤S118)。

本实施方式的控制装置10通过切换虚拟机110启动或者停止的顺序,能够优先启动对于车辆12的控制很重要的虚拟机110、例如车身控制虚拟机110A。即,根据本实施方式,通过根据车辆12的状态来切换应当优先启动的虚拟机110,能够抑制对于车辆12的控制很重要的虚拟机110的延迟。

此外,本实施方式的控制装置10进行如下控制,即,在存在与某一虚拟机110相关的其他虚拟机110的情况下,不会在该某一虚拟机110处于停止状态下使其他虚拟机110启动。详细而言,在本实施方式中,进行如下控制,即,在作为某一虚拟机110的发动机控制虚拟机110B处于停止状态下时,不使作为其他虚拟机110的自动驾驶控制虚拟机110C启动。即,在本实施方式中,在要使发动机控制虚拟机110B启动或者停止的情况下,由于自动驾驶控制虚拟机110C处于停止状态,因此能够缩短发动机控制虚拟机110B启动或者停止所需的处理时间。

此外,在本实施方式的控制装置10中,在不需要启动发动机控制虚拟机110B以及自动驾驶控制虚拟机110C的状态A下,将结束发动机控制虚拟机110B以及自动驾驶控制虚拟机110C的处理推迟。此时,对于结束被推迟的发动机控制虚拟机110B以及自动驾驶控制虚拟机110C,使CPU 20A的资源减少。由此,处于停止状态的车身控制虚拟机110A以及多媒体虚拟机110D的启动所涉及的处理受到结束被推迟的发动机控制虚拟机110B以及自动驾驶控制虚拟机110C的处理的影响的情况得到抑制。即,根据本实施方式,能够缩短要启动的车身控制虚拟机110A以及多媒体虚拟机110D、尤其是对于车辆12的行驶很重要的车身控制虚拟机110A的启动所涉及的处理时间。

此外,在本实施方式的控制装置10中,能够将已分配给结束相关处理被推迟的发动机控制虚拟机110B以及自动驾驶控制虚拟机110C的、CPU 20A的资源分配给进行启动相关处理的车身控制虚拟机110A。由此,根据本实施方式,能够缩短要启动的车身控制虚拟机110A的处理时间。

另外,仅通过作为管理程序的功能的虚拟机构成部250的操作来进行CPU 20A所涉及的资源的分配的变更,控制装置10整体中的CPU20A的资源的消耗少。此外,在车身控制虚拟机110A启动完成之前不启动多媒体虚拟机110D,因此原本多媒体虚拟机110D要使用的资源也能被分配给车身控制虚拟机110A。即,能够尽量增加分配给车身控制虚拟机110A的、CPU 20A的资源,从而能够进一步缩短启动时间。并且,在车身控制虚拟机110A的启动处理完成之后,通过从车身控制虚拟机110A向虚拟机控制部260通知启动完成,从而将针对车身控制虚拟机110A的资源分配变更为通常运用水平。

此外,在本实施方式的控制装置10中,在使对车辆12的行驶没有影响的多媒体虚拟机110D启动的情况下,虚拟机控制部260不等多媒体虚拟机110D的启动完成就执行下一顺位的虚拟机相关的启动或者停止。即,针对对车辆12的行驶没有影响的多媒体虚拟机110D,通过与结束发动机控制虚拟机110B以及自动驾驶控制虚拟机110C的处理并行地进行,能够缩短全部的处理完成的时间。

[第二实施方式]

在第一实施方式中,在作为管理程序的功能的虚拟机构成部250中设置有虚拟机控制部260。与此相对,在第二实施方式中,在一个虚拟机110中构成虚拟机控制部260,在这一点上与第一实施方式不同。以下,对与第一实施方式不同的点进行说明。另外,针对相同的构成标注相同的附图标记,并省略说明。

如图7所示,在本实施方式的ECU 20中,虚拟机110除了具有车身控制虚拟机110A、发动机控制虚拟机110B、自动驾驶控制虚拟机110C、多媒体虚拟机110D之外,还具有控制用虚拟机120。在本实施方式中,控制用虚拟机120具备虚拟机控制部260。虚拟机构成部250将控制用虚拟机120作为特殊的虚拟机110,即,作为与其他虚拟机110不同的组件来处理,在管理程序启动之后紧接着启动控制用虚拟机120。

此外,本实施方式的状态判定部270设置在虚拟机控制部260的内部。另一方面,在虚拟机构成部250中,设置有作为RAM 20C的一部分的共享存储器280。共享存储器280在虚拟机构成部250和虚拟机控制部260之间共享各虚拟机110(车身控制虚拟机110A、发动机控制虚拟机110B、自动驾驶控制虚拟机110C、多媒体虚拟机110D)相关的信息。通过ECU 20内部的通信进行从虚拟机控制部260至虚拟机构成部250的、各虚拟机110(虚拟机110A~虚拟机110D)启动及结束的指示。

在本实施方式中,也能够获得与第一实施方式相同的技术效果。

[第三实施方式]

相对于第一实施方式,在第三实施方式中,在状态判定部270设置在其他ECU 20中这一点上与第一实施方式不同。以下,对与第一实施方式不同的点进行说明。另外,针对相同的构成标注相同的附图标记,并省略说明。

如图8所示,本实施方式的控制装置10包括作为ECU 20的主ECU22和副ECU 23。在本实施方式中,在主ECU 22中设置有各虚拟机110、虚拟机构成部250、以及虚拟机控制部260,在副ECU 23中设置有状态判定部270。通过ECU 20彼此的通信(例如CAN)将在状态判定部270中判定出的车辆12的状态通知给虚拟机控制部260。

在本实施方式中,也能够获得与第一实施方式相同的技术效果。

[第四实施方式]

在第三实施方式中,在将虚拟机控制部260和状态判定部270分别设置在其他的ECU 20中这一点上,与第一实施方式不同。以下,对与第一实施方式不同的点进行说明。另外,针对相同的构成标注相同的附图标记,并省略说明。

如图9所示,本实施方式的控制装置10包括作为ECU 20的第一ECU 24、第二ECU25、和第三ECU 26。在本实施方式中,在第一ECU24中设置有各虚拟机110以及虚拟机构成部250,在第二ECU 25中设置有虚拟机控制部260,在第三ECU 26中设置有状态判定部270。

在本实施方式中,为了在虚拟机构成部250和虚拟机控制部260之间共享各虚拟机110(车身控制虚拟机110A、发动机控制虚拟机110B、自动驾驶控制虚拟机110C、多媒体虚拟机110D)相关的信息,而在第一ECU 24的RAM 20C与第二ECU 25的RAM 20C之间实现各虚拟机110的信息的同步。通过ECU 20彼此的通信(例如CAN),将在状态判定部270中判定出的车辆12的状态通知给虚拟机控制部260。此外,通过ECU 20彼此的通信(例如CAN)进行从虚拟机控制部260至虚拟机构成部250的、虚拟机110启动以及结束的指示。

在本实施方式中,也能够获得与第一实施方式相同的技术效果。

[备注]

另外,在上述实施方式的车辆12中,设置有状态A以及状态B这两种状态(参照图4),但不限于此,也可以设置3种以上的状态。

此外,在上述实施方式中由CPU 20A读取软件(程序)并执行的处理,也可以由CPU以外的各种处理器执行。作为这种情况下的处理器,例示了FPGA(Field-ProgrammableGate Array)等能够在制造后变更电路结构的PLD(Programmable Logic Device)、以及ASIC(Application Specific Integrated Circuit)等具有为了用于执行特定的处理而专门设计的电路结构的处理器的专用电路等。此外,各处理可以由这些各种处理器之中的一种处理器执行,也可以由相同种类或者不同种类的两种以上的处理器的组合(例如多个FPGA、以及CPU与FPGA的组合等)执行。此外,更详细而言,这些各种处理器的硬件构造是由半导体元件等电路元件组合而成的电路。

此外,在上述实施方式中,以程序被预先存储(安装)在计算机可读取的非易失性存储介质中的方式进行了说明。例如在ECU 20中,控制程序200预先存储在ROM 20B中。然而不限于此,各程序也可以存储在HDD(Hard Disk Drive)以及SSD(Solid State Drive)等储存器中。此外,各程序也可以以记录在CD-ROM(Compact Disc Read Only Memory)、DVD-ROM(Digital Versatile Disc Read Only Memory)、以及USB(Universal Serial Bus)存储器等非易失性存储介质中的方式提供。此外,也可以为各程序经由网络从外部装置下载的方式。

在上述实施方式中说明的处理的流程是一个例子,可以在不脱离主旨的范围内删除不需要的步骤,追加新的步骤,替换处理顺序。

相关技术
  • 车辆控制装置、车辆控制方法以及存储有车辆控制程序的存储介质
  • 车辆的控制装置、控制方法及存储控制程序的存储介质
技术分类

06120112423071