CN113010185A - 使软件动态地分布在车辆的控制***中的方法及控制*** - Google Patents

使软件动态地分布在车辆的控制***中的方法及控制*** Download PDF

Info

Publication number
CN113010185A
CN113010185A CN202011508569.0A CN202011508569A CN113010185A CN 113010185 A CN113010185 A CN 113010185A CN 202011508569 A CN202011508569 A CN 202011508569A CN 113010185 A CN113010185 A CN 113010185A
Authority
CN
China
Prior art keywords
program code
control system
motor vehicle
control
vehicle
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
Application number
CN202011508569.0A
Other languages
English (en)
Inventor
T.凯恩
M.韦谢
H.德克
J-S.米勒
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.)
Volkswagen AG
Original Assignee
Volkswagen AG
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 Volkswagen AG filed Critical Volkswagen AG
Publication of CN113010185A publication Critical patent/CN113010185A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Details 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/02Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
    • B60W50/032Fixing failures by repairing failed parts, e.g. loosening a sticking valve
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Details 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/02Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
    • B60W50/023Avoiding failures by using redundant parts
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Details 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/02Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
    • B60W50/038Limiting the input power, torque or speed
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Drive control systems specially adapted for autonomous road vehicles
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Details 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
    • B60W2050/0001Details of the control system
    • B60W2050/0002Automatic control, details of type of controller or control system architecture
    • B60W2050/0004In digital systems, e.g. discrete-time systems involving sampling
    • B60W2050/0006Digital architecture hierarchy
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Details 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
    • B60W2050/0062Adapting control system settings
    • B60W2050/0075Automatic parameter input, automatic initialising or calibrating means
    • B60W2050/0083Setting, resetting, calibration
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/0088Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours

Landscapes

  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Human Computer Interaction (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Electric Propulsion And Braking For Vehicles (AREA)

Abstract

本发明涉及一种使软件动态地分布在车辆的控制***中的方法及控制***。本发明涉及一种用于基于背景使程序代码(20、22、24、26、28、30)动态地分布在车辆(1)的控制***(10)中的方法。在此,所述控制***具有多个用于执行程序代码的控制装置(12、14、16、18)。设置为,通过全局布局图(62)进行程序代码与控制***的相应的控制装置的关联。在此,在处于控制***外部的计算单元(64、66、68)上计算所述全局布局图。将全局布局图的数据传递至控制***(10)。本发明还涉及一种至少半自主驾驶的机动车(1),其具有控制***,用于实施所述方法。

Description

使软件动态地分布在车辆的控制***中的方法及控制***
技术领域
本发明涉及根据独立权利要求的前序部分的一种用于基于背景动态地使软件分布在机动车的控制***中的方法、一种用于执行所述方法的控制***、一种带有所述控制***的机动车以及一种计算机程序产品。
背景技术
现在的车辆尤其是具有大量的辅助***,所述辅助***在多种驾驶情况下对驾驶员进行基于计算机的支持。所述辅助***能够使用远远超出人类的感知能力的传感器,来检测大量测量数据。此外,所述辅助***的速度也显著超过人类的反应时间。已知的驾驶员辅助***例如是车道保持辅助***、识别出行人的情况下的刹车辅助***和尤其用于交通拥堵情况的距离调节巡航控制***。
通过这种辅助***的应用,驾驶员在其驾驶判断方面的自主性越来越多地转移给车辆或相应运行的控制单元。这种发展最终形成自主驾驶的车辆,其完全可以在没有人工干预的情况下行驶。借助这种自主驾驶的车辆,能够实现全自动的客运。
对汽车、尤其自主驾驶的汽车的驾驶运行的控制通过驾驶***来实现,所述驾驶***在本申请的范畴内应以最广义的方式理解成针对该任务专门构造和配置的控制单元。所述控制单元构造为,通过使用多个输入信号、尤其由车辆自行检测的传感器数据以及接收到的通信数据,对车辆进行自动化的横向和纵向引导。这种对自动化的横向和纵向引导的控制对驾驶辅助***提出了复杂的计算要求,所述驾驶辅助***为此通常具备至少部分以机器学习(人工智能)为基础的算法、模型和控制功能。
为了安全地运行自动汽车,需要大量相互整合的软件应用。然而,问题在于,诸如软件应用或计算节点范围内的错误可能会导致一些应用不再能够执行。根据所述应用的重要性,这可能会对驾乘人员和其他交通参与者的安全造成严重后果。
为了避免由出现的错误导致严重后果,可以在不同计算节点上冗余地执行软件应用。在此,思路是,在被动模式下执行冗余的实例(Instanz)。这意味着,冗余的实例执行与主动实例相同的过程,然而不与执行的***相互作用。
根据相应功能的功能重要性,这可能会导致不受控的驾驶状态,舒适度下降,乃至对自主驾驶的机动车的驾乘人员的危险。在此,已知冗余地实施与安全相关的***,以便运行安全地避免危险的驾驶情况。
确定应用实例与计算节点之间的关联的任务并非易事。判断与多种不同的参数相关。例如计算节点仅具有数量有限的计算和存储资源。另一方面,每个应用都需要特定数量的资源来按计划工作。为了确保所有的应用都能够在安装在车辆中的计算节点上执行,必须解决多维且复杂的应用布局问题。
如上所述,因软件或硬件错误造成的危险情况可以通过冗余软件设计(部分)避免。然而,引入冗余的应用实例加剧了应用布局问题的复杂性,因为必须考虑附加的参数。例如,可以针对每个应用给出最小数量的冗余实例。此外,还可以针对每个应用定义最小程度的硬件隔离。该参数给出至少必须在多少个不同的计算节点上执行应用的实例。在此,可使用的控制单元的数量和在程序方面对最小硬件隔离的要求导致分布问题。
由于运行自动车辆所需的软件应用的数量相当大(涉及大约数百个应用),因此通常在计算节点与应用实例之间存在大量有效关联。然而,并非所有的有效关联都同样“良好”。为了选择尽可能好的映射(Mapping),必须制定优化目标。例如可以制定优化目标,使得能够使得尽可能多的计算节点关闭的映射,优于使用车辆所配备的所有计算节点的映射。除了该优化目标之外,还可以设想考虑其它标准的多种其它的目标功能。
在传感器、控制单元的故障造成控制***的功能受扰,或者在程序代码中存在错误时,可能会需要在控制***的不同控制单元上对软件进行重新配置,以便能够重新运行安全地执行控制***的功能。
由文献US 2016/0 142 253A1已知一种云计算机***以及用于运行所述***的方法。在此,云计算机***可以与外部计算单元、例如工作站计算机、智能电话、笔记本电脑或者机动车内的控制单元进行数据交换。
这些技术方案例如对于机动车的导航***是已知的,其中,通过大量的外部数据检测模块和利用云计算机***对这些数据的分析,能够在考虑当前交通密度和当前交通干扰的情况下实现实时导航。
发明内容
现在,本发明要解决的技术问题在于,在需要在用于机动车的自主驾驶运行的控制***上重新配置软件时,改善重新配置过程,并且由此使得在机动车中需要的计算能力和能量消耗最小化。
根据本发明,上述技术问题通过用于基于背景使程序代码动态地分布在车辆的控制***中的方法来解决,其中,所述控制***具有多个用于执行程序代码的控制装置。设置为,通过全局布局图将程序代码与控制***的相应的控制装置相关联,其中,在如下计算单元上计算所述全局布局图,所述计算单元处于控制***外部,并且将全局布局图的数据传递给控制***。由此,在控制单元故障或者在控制***的程序代码执行中出错时,可以提供用于使主动程序代码动态地分布在剩余的控制装置上的技术方案,从而机动车的控制***不需要执行复杂并且能量密集的对优化问题的求解,而是通过车辆外部的计算中心提供对优化问题的求解。由此可以限制机动车中的计算能力,由此提高机动车的能效。此外,当在同类型机动车中出现类似问题时,可以在问题实际出现在相应的机动车中之前就提供解决方案,从而能够实现控制***的快速的重新配置,因此能够提高机动车的安全性。
下面描述的技术特征可以有利地改善并且非同寻常地扩展所给出的用于基于背景使软件动态地分布在机动车的控制***中的方法。
在本发明的一种优选的设计方式中设置为,在控制装置故障或在程序代码执行中出错时,检查在控制***中是否已经存在用于将剩余的主动程序代码与可使用的控制单元相关联的关联规划。由此可以省去用于使主动程序代码最佳地分布在控制装置上的复杂且能量密集的重新计算。由此可以将控制***的计算能力完全用于自主驾驶运行,从而提供更高的目标实现程度,因此提供更大的安全储备。
在所述方法的一种优选的实施方式中设置为,在控制装置故障或在程序代码执行中出错时,检查在控制***中是否已经存在用于将剩余的主动程序代码与可使用的控制单元相关联的关联规划。由此,在中央布局图中存在应急规划的情况下,可以迅速地实现控制***的重新配置。对于当前全局布局图尚未提供应急规划的情况,可以在本地计算相应的解决方案,所述解决方案随后可以通过上传至计算中心而与同类型的机动车共享。由此可以基于故障事件进一步优化中央布局图。
在此,特别优选在存在关联规划时,将程序代码相应地关联给控制单元。由此可以确保在控制单元故障或者在程序代码执行中出错之后,也能针对自主驾驶运行实现尽可能高的目标实现程度。
作为备选有利地设置为,在没有关联规划的情况下,检查是否存在自主驾驶运行所需的最小数量的冗余执行的程序代码。由此可以计算是否存在因控制单元故障或者程序代码执行出错而出现危险交通情况的风险,并且尽快地引发措施,以便使出错或故障的后果最小化。
在所述方法的进一步改进中设置为,当低于冗余执行的程序代码的最小数量时,故障安全***(Fail-Safe-System)使机动车停车和/或驶向下一个安全的停车点。通常机动车制动直至停车会导致情况的化解。然而,在特定行驶情况下,例如在无光照的隧道中、高速路上、尤其在高速路工地中,机动车停车可能导致危险的交通情况。在此情况下优选的是,故障安全***至少能够使该机动车自主地继续驾驶,直至到达对于该机动车来说安全的停车场地,并且避免危及交通的情况。
此外还有利地设置为,当执行充足数量的实施自主驾驶运行所需的冗余程序代码时,在应急运行中运行控制***,并且建立关联规划。在此尤其可以限制驾驶速度,并且限制其它车辆功能、尤其机动车的舒适功能,以便使与安全相关的功能优先并且得到保障。
在所述方法的一种有利的设计方式中设置为,对控制***进行检查,并且确定空闲的或仅略微使用的控制单元,并且基于所确定的空闲的控制单元,来建立关联规划。
在此尤其优选的是,用于满足自主驾驶运行功能的程序代码被划分为至少两个权重层级,其中,停止具有较小权重的程序代码,以便为执行权重更高的程序代码提供额外的计算能力。通过较高和最高权重层级的功能的多重冗余,可以实现一个控制装置的故障不会导致危及交通的运行状态,并且不会被机动车的乘员察觉或仅察觉出行驶舒适度的受限。
在本发明的一种优选的实施方式中设置为,执行优化例程,所述优化例程针对剩余的控制单元优化待执行的程序代码,其中,将优化的结果传递给计算单元。由此可以在计算中心实施自动学习网络,从而能够基于在机动车中汇总的数据优化全局布局图。
在所述方法的一种有利的设计方式中设置为,基于同类型的机动车的不同控制***,来确定所述全局布局图。由于在具备相同或者类似的硬件和软件配置的同类型的机动车中预计出现类似的出错和故障机制,因此有利的是,针对特定车辆型号或者相应的型号系列计算全局布局图,以便在程序代码执行中出错之前,或者在控制单元故障之前,就已经为同类型车辆提供相应优化的应急方案。
在所述方法的进一步改进中设置为,当机动车处于充电站时,全局布局图被传递给机动车。在充电过程中尽量减轻机动车的控制***的负荷。此外,提供不受限的能量,从而使得数据传输不以牺牲机动车的续航里程为代价。因此有利的是,全局布局图的方案在充电过程中被传递给机动车的控制***。此外,机动车还可以在控制单元故障或程序代码执行中出错之后将在本地计算的方案图传递给计算中心,以便使该方案供其它机动车分享和使用。
本发明的另一个方面涉及一种控制***,该控制***包括多个控制装置,其中,控制***配置用于,当多个机器可读取的程序代码通过控制***的至少两个控制装置执行时,实施用于运行至少半自主驾驶的机动车的这种方法。
此外,实施根据本发明的方法的车辆还具有配置用于车辆的自动驾驶运行的驾驶***。所述驾驶***尤其配置用于车辆的全自动的纵向和/或横向引导。为此,驾驶***优选使用大量由该车辆测得的传感器数据以及由该车辆接收的通信数据。该驾驶***尤其构造用于实施驾驶辅助功能,直至实现全自动驾驶。为此,所述驾驶***具有控制算法,所述控制算法至少部分以机器学习为基础并且例如具有目标功能和/或神经网络。因此,为了运行驾驶***,需要例如具有神经网络的参数或优化的功能参数的功能数据。所述功能数据作为功能数据组存储在车辆的驾驶***中。在根据本发明的方法开始时,始终(相对的)第一功能数据组存储在车辆的驾驶***中。
实施根据本发明的方法的车辆此外还具有控制单元。该控制单元优选构造用于与车辆的其它部件、尤其与第一通信模块并且与驾驶***以及必要时与传感器通信,并且协调其功能。此外,控制单元还优选具有存储器或控制该存储器。
在一种特别优选的实施方式中,驾驶***的功能范围随着车辆的许可级别的上升而增加。换言之,驾驶运行的自动化程度随着车辆的许可级别的增加而增大。特别优选地,车辆的许可级别与自主驾驶的不同级别相关。特别优选地,车辆在出厂状态下具有许可级别0。此外,优选许可级别0对应于自动化程度层级0(“仅驾驶员”),根据该自动化程度层级0,由驾驶员持续实施纵向和横向引导,并且驾驶***不主动干预驾驶运行。
在根据本发明的方法的一种优选的实施方式中,许可级别1对应于自动化程度层级1(“辅助”),根据该自动化程度层级1,由驾驶员持续承担纵向和横向引导,而驾驶***则承担相应的其它功能。此外,优选许可级别2对应于自动化程度层级2(“半自动化”),根据该自动化程度层级2,驾驶员必须持续监控车辆,并且驾驶***在特殊的应用情况下承担纵向和横向引导。
此外,优选许可级别3对应于自动化程度层级3(“高自动化”),根据该自动化程度层级3,驾驶员不需要持续监控车辆,然而驾驶员必须潜在地能够承担对车辆的控制。根据自动化程度层级3,驾驶***同样在特殊的应用情况下承担纵向和横向引导,还独立地识别驾驶***的极限,并且要求驾驶员具有充分的时间储备来承担控制。许可级别4优选对应于自动化程度层级4(“全自动化”),根据该自动化程度层级4,在特殊应用情况下不需要驾驶员,并且驾驶***在特殊应用情况下完全自主地应对所述情况。
同样,优选许可级别5对应于自动化程度层级5(“无驾驶员”),根据该自动化程度层级5,行驶自始至终都不需要驾驶员,并且驾驶***在所有应用情况下都全面地承担驾驶任务。上述定义对应于德国汽车工业协会(Verband der Deutschen Automobilindustrie,VDA)所定义的“自动驾驶的五个层级”。相应的应用情况包括街道类型、速度范围和环境或环境条件。
本发明的另一方面涉及一种车辆、尤其是配置用于实施根据本发明的方法中的车辆的步骤的轿车,其带有内燃发动机、电动发动机或混合发动机。所述车辆为此至少具有用于检测环境数据的传感器,通过所述传感器向控制***的控制装置提供用于自主驾驶运行的数据。
本发明的另一方面涉及一种包括程序代码的计算机程序,所述程序代码用于当在计算机中执行计算机程序的程序代码时,实施用于运行至少半自动驾驶的机动车的这种方法的步骤。
根据本发明的方法的方法步骤能够通过电气或电子构件或部件(硬件)、通过固件(ASIC)来实现,或通过实施合适的程序(软件)来实现。同样优选地,根据本发明的方法通过硬件、固件和/或软件的组合来实现或者说执行。例如,用于实施各个方法步骤的各个部件构造为独立的集成电路,或布置在一个共同的集成电路上。此外,用于实施各个方法步骤的各个部件优选布置在(柔性)印刷电路载体(FPCB/PCB)上、带载封装(Tape CarrierPackage,TCP)或其它基材上。
根据本发明的方法的各个方法步骤此外还优选构造为一个或多个进程,所述进程在一个或多个电子计算设备中的一个或多个处理器上运行,并且在执行时由一个或多个计算机程序产生。计算设备在此优选构造用于与其它部件、例如通信模块以及一个或多个传感器或摄像头共同工作,以便实现在此所述的功能。计算机程序的指令在此优选存储在存储器中、例如RAM元件中。然而,计算机程序也能够存储在非易失性存储介质中、例如CD-ROM、闪存存储器等中。
此外,对于本领域技术人员显而易见的是,多个计算机(数据处理设备)的功能能够组合,或者能够在唯一的设备中组合,或者特定数据处理设备的功能能够以分布在多个设备上的方式存在,以便在与根据本发明的方法没有偏差的情况下,实施根据本发明的方法的多个步骤。
在本申请中提到的本发明的各种实施方式,如果未单独地另作说明,则能够有利地相互组合。
附图说明
下面,在实施例中根据附图阐述本发明。在附图中:
图1示出了根据本发明的***的示意图,该***由根据本发明的带有传感器的机动车和用于实施机动车的至少半自主的驾驶运行的控制装置组成。
图2示出了根据本发明的带有多个控制单元的控制***,所述控制单元执行多个用于控制至少半自主的驾驶运行的程序代码。
图3示出了控制单元故障或程序代码崩溃情况下的根据本发明的带有多个控制单元的控制***,其中,失灵的功能由其它控制装置上的冗余程序代码承担。
图4示出了全局布局图,其用于确定所执行的程序代码与可使用的控制单元的最佳关联。
图5示出了用于监控控制***以及在控制单元故障和/或程序代码执行中出错时重新配置控制***的流程图。
图6示出了不同的机动车与中央计算单元的通信的视图,其中,在机动车中实施的重新配置被传递至中央计算单元,和/或中央计算单元将最佳的重新配置传递至机动车。
图7示出了中央计算单元与机动车之间的通信的视图,其中,中央计算单元与其它数据源交换附加的信息。
具体实施方式
图1示出了具有内燃发动机、电动发动机或混合发动机的示例性的机动车1、尤其是双辙车辆的示意图、尤其框图。机动车1包括多个一类传感器、尤其第一传感器32、第二传感器34和第三传感器36。一类传感器32、34、36设计用于检测机动车1的环境数据,并且包括例如用于检测与机动车1紧邻的环境的图像的摄像头、距离传感器、例如超声波传感器或LIDAR,距离传感器用于检测与机动车1周围的物体的距离。一类传感器32、34、36将由其测得的环境信号传递给机动车1的控制***10的控制单元12、14、16、18。
此外,机动车1还包括多个二类传感器、尤其第四传感器38、第五传感器40和第六传感器42。二类传感器38、40、42是用于确定与机动车1本身相关的状态数据、例如机动车1当前的位置及运动信息的传感器。二类传感器因此例如是速度传感器、加速度传感器、倾斜传感器、用于测量减震器的浸没深度的传感器、车轮转速传感器等。二类传感器38、40、42将由其测得的状态信号传递给机动车1的控制单元。二类传感器38、40、42尤其将其测量结果直接传递给机动车1的控制***10的控制单元12、14、16、18。
此外,机动车1还具有控制***10,所述控制***10配置用于机动车1的完全自动的驾驶运行、尤其用于机动车1的自主的纵向和横向引导。控制***10具有导航模块64,所述导航模块64配置用于计算起点和终点之间的路线,并且用于确定机动车1沿该路线要实施的动作。导航模块44此外还优选构造用于实施机动车1的特殊动作,例如驶入和驶出车位的动作。此外,控制***10还包括内部存储器66,所述存储器66例如通过合适的数据主线与导航模块44通信。尤其至少部分以机器学习为基础的模型、神经网络和/或目标功能存储在内部存储器46上。此外,在内部存储器46中还作为功能数据组,存储有用于所述模型、神经网络和/或目标功能的功能数据。控制***10的功能优选由控制单元控制,并且尤其根据机动车1的许可级别被解锁。
控制***10配置用于在根据本发明的方法中实施机动车1的步骤。在此,控制***10借助控制单元12、14、16、18实施所述方法的步骤,或者相应地控制机动车1的其它部件。为此,控制单元12、14、16、18分别具有例如通过合适的数据总线相互通信的内部存储器46和CPU 48。此外,控制***10的控制单元12、14、16、18至少与一类传感器32、34、36和二类传感器38、40、42以及必要时机动车1的其它控制装置、例如用于控制机动车的暖气或空调设备、收音机、导航***或其它信息或娱乐***的控制装置形成通信连接。所述通信例如通过一个或多个相应的CAN连接、一个或多个相应的SPI连接或其它合适的数据连接来实现。在机动车1上形成与外部计算中心64的通信接口,用于发送和接收数据。
图2示出了用于对至少半自主、优选全自主的机动车1进行控制的控制***10的示意性配置。控制***10包括四个控制单元12、14、16、18,由所述控制单元12、14、16、18分别执行至少一个用于实施机动车1的半自主或全自主驾驶运行的程序代码20、22、24、26、28、30。在此,每个程序代码20、22、24、26、28、30冗余地安装在两个不同的控制单元12、14、16、18上。在此,相应的程序代码20a、22a、24a、26a、28a、30a主动由控制单元12、14、16、18执行,并且对相应的程序代码20a、22a、24a、26a、28a、30a进行分析,以对机动车1进行控制,而相应的冗余程序20p、22p、24p、26p、28p、30p保持被动,并且只有当因相应的控制单元12、14、16、18出错或故障,而不再能够对以前主动的程序20a、22a、24a、26a、28a、30a进行分析,以控制机动车1时,冗余程序20p、22p、24p、26p、28p、30p才被整合至对机动车1的控制中。
在机动车1的运行过程中可以多次改变程序代码20、22、24、26、28、30的布局。例如,可能在诸如控制单元12、14、16、18出错或应用实例出错的事件之后,需要改变为新的应用布局。除了上述事件之外,识别出可能的优化可能性,也可以触发到新的控制单元12、14、16、18的切换。在图3中以第二控制单元14发生故障为例示出了这种情况。第三程序代码24a在初始状态下由第二控制单元14执行。在该第二控制单元14故障或迄今在第二控制设备14上主动执行的第三程序代码24a的程序崩溃之后,第三控制单元16上的第三程序代码24p被激活,并且对第三程序代码24p进行分析,以继续对机动车1进行控制。由此可以避免因对机动车1缺乏控制而导致的严重驾驶情况。
为了使得能够对主动程序代码20a、22a、24a、26a、28a、30a进行优化,需要获知当前的驾驶情况和控制***10当前的性能。在此,在***条件下,参考所有软件应用20、22、24、26、28、30、所有控制装置12、14、16、18和其它硬件的性能,尤其是参考传感器52、54、56、58、60、62。
下面的示例说明这种相关性:
假设机动车1是电驱动汽车,该电驱动汽车将乘员载至重要的会议,而机动车1的蓄电池几乎空了。在这种情况下,准时到达期望的目的地的目标较之乘员的娱乐更为重要。因此,为了增加机动车1的续航里程,可以停止用于娱乐目的的所有应用。因此,可以关闭一些控制装置12、14、16、18,这节省了能量。
假设机动车1处于拥堵中。由于机动车1几乎不移动,因此可以停止驾驶功能的冗余实例。因此,释放例如可以用来执行有助于改善交通流的应用的资源。
由于***崩溃,安装在机动车中的一半控制装置12、14、16、18不再工作。由于剩余的控制装置12、14、16、18提供的资源不足以执行在崩溃前执行的应用的所有程序代码20、22、24、26、28、30,因此必须计算新的应用布局规划。布局优化的目标在于,映射使机动车1安全停车所需的所有应用,以确保乘员和其他交通参与者的安全性。
在图4中示出了全局布局图62,所述全局布局图62也可以称为关联图62。在本发明中,通过将程序代码20、22、24、26、28、30与机动车1、80、82、84的控制***10中的相应的控制单元12、14、16、18关联的局部计算问题,抽象化为全局计算问题,来进行动态的与背景相关的优化。该计算问题通过计算中心64、尤其通过云计算机***66来求解。其结果是,不同的参与者可以帮助共同计算全局布局图62,并且将计算和成本密集的任务从机动车的控制***10部分地转移至计算中心64。这具有的优点在于,机动车1、80、82、84能够更迅速地对错误作出反应,并且在出现的问题解决之后又能迅速地按照期望的ASIL水平工作。
软件在机动车中的动态的与背景相关的布局还提供如下优点,即,可以想到能量消耗的优化,由此能够增加电驱动的机动车1的续航里程。
在图5中示出了用于监控控制***以及在控制单元故障和/或程序代码执行中出错时重新配置控制***的流程图。在第一方法步骤I中,通过监控元件52对程序代码20、22、24、26、28、30在控制***10的控制单元12、14、16、18上的执行进行监控。在此,如果识别出错误,则在第二方法步骤II中,检查是否存在预先计算的应急规划或者是否才必须建立这种规划。对于当前不存在应急规划(所述应急规划提供所执行的程序代码20、22、24、26、28、30与控制单元12、14、16、18的预先计算的动态关联)的情况,在第三方法步骤III中,检查是否可以进行足够多的冗余程序执行,来确保运行安全的自主的驾驶运行。如果满足该前提条件,则在第四方法步骤IV中,选择相应的冗余执行的程序代码,并且通过切换元件54在其它控制单元12、14、16、18上执行。在此,在方法步骤V中,选择这一新的配置作为新的主动程序代码20、22、24、26、28、30。
如果在控制单元12、14、16、18故障之后,不再有足够多的计算能力可用,来确保机动车1的运行安全的自主的驾驶运行,则在方法步骤VI中,激活应急运行模块56,该应急运行模块56承担控制***10的***控制。在此,在方法步骤VII中,使机动车1安全停车。
如果有足够的冗余可用,则激活恢复模块58,所述恢复模块58力求以尽可能高的目标实现程度进行软件配置的恢复。为此,在方法步骤VIII中,寻找具备充足的资源的控制单元12、14、16、18,用于附加地执行冗余的程序代码20、22、24、26、28、30。如果找到这种控制单元,则在方法步骤IX中,在控制单元12、14、16、18上执行新的冗余程序代码20、22、24、26、28、30。如果当前在控制单元12、14、16、18上不存在充足的空闲资源,则在方法步骤X中,停止具有较低优先级的程序代码,以便为安全相关的程序代码提供附加的计算能力。
如果在方法步骤II中进行检查之后,存在预先计算的应急规划,则在方法步骤XI中,通过布局优化器60实施该应急规划,并且将该应急规划的实施通过通信接口50反馈至计算中心64。如果不存在应急规划,则在方法步骤XII中,通过布局优化器60定义实施应急规划的目标,在方法步骤XIII中由此计算优化规划,并且在方法步骤XIV中实施该优化规划。
在图6中示出了在计算中心64中计算的全局布局图62与不同机动车1、80、82、84之间的数据交换。在此,在第一机动车1中计算解决方案图。第二机动车80下载全局布局图62,并且将该全局布局图传递至第二机动车80的控制***10。在第三机动车中计算另一解决方案图并且传递至计算中心64。针对部分问题的这种解决方案图通过第四机动车84上传至计算中心64。
在图7中示出了具有中央布局图62的计算中心64、机动车1以及其它数据源66、70、76之间的通信。在此,可以将尤其通过移动电话70、尤其优选通过智能电话、云计算机***66或者服务器68提供的信息,视为其它数据源。此外,还能够通过道路侧单元(Road-Site-Unit,RSU)76来进一步完善全局布局图62。中央布局图的方案向机动车的控制***10的传递,优选在电驱动机动车1在充电站74处的充电过程中进行。该过程可以通过充电站74的控制单元72或通过机动车1的控制***10触发。在此,在充电过程中,既提供足够多的能量,又提供计算能力,从而使优化图能够传递至机动车1的控制***10并且在该处实施。
附图标记列表
1 机动车
10 控制***
12 第一控制单元
14 第二控制单元
16 第三控制单元
18 第四控制单元
20 第一程序代码
22 第二程序代码
24 第三程序代码
26 第四程序代码
28 第五程序代码
30 第六程序代码
32 第一传感器
34 第二传感器
36 第三传感器
38 第四传感器
40 第五传感器
42 第六传感器
44 导航模块
46 内部存储器
48 CPU
50 通信接口
52 监控元件
54 切换元件
56 应急运行模块
58 恢复模块
60 布局优化器
62 全局布局图
64 计算中心
66 云计算机***
68 服务器
70 移动电话
72 第五控制单元
74 充电站
76 道路侧单元
78 收发单元
80 第二机动车
82 第三机动车
84 第四机动车
100 计算机程序

Claims (15)

1.一种用于基于背景使程序代码(20、22、24、26、28、30)动态地分布在车辆(1)的控制***(10)中的方法,其中,所述控制***(10)具有多个控制装置(12、14、16、18),其特征在于,通过全局布局图(62)来进行程序代码(20、22、24、26、28、30)与所述控制***(10)的相应的控制装置(12、14、16、18)的关联,其中,在计算单元(64、66、68)上计算所述全局布局图(62),所述计算单元处于所述控制***(10)外部,并且将所述全局布局图(62)的数据传递至所述控制***(10)。
2.根据权利要求1所述的方法,其特征在于,设置有监控元件(52),所述监控元件监控程序代码(20、22、24、26、28、30)的运行和/或控制装置(12、14、16、18)的功能,其中,在控制装置(12、14、16、18)故障或程序代码(20、22、24、26、28、30)出错时,基于所述全局布局图(62)进行程序代码(20、22、24、26、28、30)在控制单元(12、14、16、18)上的重新分布。
3.根据权利要求1或2所述的方法,其特征在于,在控制装置(12、14、16、18)故障或在程序代码(20、22、24、26、28、30)执行中出错时,检查是否在所述控制***(10)中已经存在用于将剩余的主动程序代码(20、22、24、26、28、30)与能够使用的控制单元(12、14、16、18)相关联的关联规划。
4.根据权利要求3所述的方法,其特征在于,在存在关联规划时,将程序代码(20、22、24、26、28、30)相应地与控制单元(12、14、16、18)相关联。
5.根据权利要求3所述的方法,其特征在于,在没有关联规划的情况下,检查是否存在自主驾驶运行所需的最小数量的冗余执行的程序代码(20、22、24、26、28、30)。
6.根据权利要求5所述的方法,其特征在于,当低于冗余执行的程序代码(20、22、24、26、28、30)的最小数量时,通过故障安全***使机动车(1)停车,和/或控制机动车(1)驶向下一个安全的停车点。
7.根据权利要求5所述的方法,其特征在于,当执行充足数量的实施自主驾驶运行所需的冗余程序代码(20、22、24、26、28、30)时,在应急运行中运行所述控制***(10),并且建立关联规划。
8.根据上述权利要求中任一项所述的方法,其特征在于,对所述控制***(10)进行检查,并且确定空闲的或仅略微使用的控制单元(12、14、16、18),并且基于所确定的空闲的控制单元(12、14、16、18)建立关联规划。
9.根据权利要求8所述的方法,其特征在于,将用于自主驾驶运行的功能满足的程序代码(20、22、24、26、28、30)划分为至少两个权重层级,其中,停止具有较低权重的程序代码,以便为权重更高的程序代码的执行,提供附加的计算能力。
10.根据上述权利要求中任一项所述的方法,其特征在于,执行优化例程,所述优化例程针对剩余的控制单元(12、14、16、18),对待执行的程序代码(20、22、24、26、28、30)进行优化,其中,将优化的结果传递给计算单元(64、66、68)。
11.根据权利要求1至10中任一项所述的方法,其特征在于,基于同类型机动车(1、80、82、84)的不同的控制***、服务器(68)的信息、移动电话(70)的信息、道路侧单元(76)的信息和/或其它交通信息***,来确定所述全局布局图(62)。
12.根据权利要求1至11中任一项所述的方法,其特征在于,当机动车(1、80、82、84)停在充电站(74)时,将所述全局布局图(62)传递至机动车(1、80、82、84)。
13.一种控制***(10),其包括多个控制装置(12、14、16、18),其中,所述控制***(10)配置用于,当通过所述控制***(10)的至少两个控制装置(12、14、16、18)执行多个机器可读取的程序代码(20、22、24、26、28、30)时,实施根据权利要求1至12中任一项所述的方法。
14.一种机动车(1),其具有控制***(10),所述控制***配置用于实施根据权利要求1至12中任一项所述的方法。
15.一种带有程序代码的计算机程序(100),用于当在计算机上所述程序代码执行时,实施根据权利要求1至12中任一项所述的方法的步骤。
CN202011508569.0A 2019-12-19 2020-12-18 使软件动态地分布在车辆的控制***中的方法及控制*** Pending CN113010185A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102019220160.1A DE102019220160A1 (de) 2019-12-19 2019-12-19 Verfahren zur dynamischen kontextbasierten Verteilung von Software in einem Steuerungssystem eines Fahrzeugs sowie ein Steuerungssystem
DE102019220160.1 2019-12-19

Publications (1)

Publication Number Publication Date
CN113010185A true CN113010185A (zh) 2021-06-22

Family

ID=76206621

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011508569.0A Pending CN113010185A (zh) 2019-12-19 2020-12-18 使软件动态地分布在车辆的控制***中的方法及控制***

Country Status (3)

Country Link
US (1) US11472424B2 (zh)
CN (1) CN113010185A (zh)
DE (1) DE102019220160A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102021206943A1 (de) * 2021-07-01 2023-01-05 Volkswagen Aktiengesellschaft Verfahren und Vorrichtung zum Rekonfigurieren einer Systemarchitektur eines automatisiert fahrenden Fahrzeugs
WO2023028274A1 (en) * 2021-08-25 2023-03-02 Cyngn, Inc. System and method of large-scale autonomous driving validation

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9800465B2 (en) 2014-11-14 2017-10-24 International Business Machines Corporation Application placement through multiple allocation domain agents and flexible cloud scheduler framework
US11214273B2 (en) * 2017-06-23 2022-01-04 Nvidia Corporation Method of using a single controller (ECU) for a fault-tolerant/fail-operational self-driving system
US20210125036A1 (en) * 2019-10-29 2021-04-29 Nvidia Corporation Determining object orientation from an image with machine learning

Also Published As

Publication number Publication date
US20210188294A1 (en) 2021-06-24
DE102019220160A1 (de) 2021-06-24
US11472424B2 (en) 2022-10-18

Similar Documents

Publication Publication Date Title
CN107908186B (zh) 用于控制无人驾驶车辆运行的方法及***
US11608075B2 (en) Information processing apparatus
JP6802391B2 (ja) 車両制御装置および電子制御システム
CN110568852A (zh) 一种自动驾驶***及其控制方法
US11472423B2 (en) System for controlling a self-driving vehicle
CN110949406B (zh) 一种智能驾驶***及方法
US10241858B2 (en) Computer system and method for safety-critical applications
CN113010185A (zh) 使软件动态地分布在车辆的控制***中的方法及控制***
CN113291317B (zh) 车辆控制装置以及车辆控制方法
US20220308577A1 (en) Virtual towing device, system, and method
US11066080B2 (en) Vehicle control device and electronic control system
US11511775B2 (en) Method for the dynamic, context-based distribution of software in a control system of a vehicle, as well as a control system
US20230394443A1 (en) Vehicle management system
CN112550313A (zh) 通过云计算的容错嵌入式汽车应用程序
US11572081B2 (en) Method for operating a self-propelled vehicle, and control system for performing such a method
CN117313964A (zh) 车辆管理***
CN113910915A (zh) 车辆电力***
CN114435267A (zh) 一种自动驾驶***及汽车
US20230294717A1 (en) Method for Determining a Trajectory for Controlling a Vehicle
WO2022259655A1 (ja) 車両制御装置および車両制御システム
US20230237858A1 (en) Vehicle management device and vehicle management method
CN112154096B (zh) 用于控制由模块组组装而成的车辆的方法、控制装置、车辆、计算机程序和计算机可读介质
JP7495890B2 (ja) 車載型コンピュータシステムおよび自動運転支援システム
WO2021256014A1 (ja) 車両制御システム
US20240149892A1 (en) Methods and apparatus for safely operating autonomous vehicles

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