[go: up one dir, main page]

CN111008121A - 车辆软件检查 - Google Patents

车辆软件检查 Download PDF

Info

Publication number
CN111008121A
CN111008121A CN201910950900.5A CN201910950900A CN111008121A CN 111008121 A CN111008121 A CN 111008121A CN 201910950900 A CN201910950900 A CN 201910950900A CN 111008121 A CN111008121 A CN 111008121A
Authority
CN
China
Prior art keywords
identifiers
vehicle
computer
identifier
local
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
CN201910950900.5A
Other languages
English (en)
Inventor
维韦卡南达·克里希那穆尔希
艾米·贝思·克罗宁
斯科特·J·劳弗
巴纳巴斯·J·涅梅克
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.)
Ford Global Technologies LLC
Original Assignee
Ford Global Technologies LLC
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 Ford Global Technologies LLC filed Critical Ford Global Technologies LLC
Publication of CN111008121A publication Critical patent/CN111008121A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Prevention of errors by analysis, debugging or testing of software
    • G06F11/3668Testing of software
    • G06F11/3672Test management
    • 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/0055Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots with safety arrangements
    • G05D1/0061Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots with safety arrangements for transition from automatic pilot to manual pilot and vice versa
    • 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/0205Diagnosing or detecting failures; Failure detection models
    • 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/04Monitoring the functioning of the control system
    • B60W50/045Monitoring control system parameters
    • 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
    • B60W60/001Planning or execution of driving tasks
    • B60W60/0015Planning or execution of driving tasks specially adapted for safety
    • B60W60/0018Planning or execution of driving tasks specially adapted for safety by employing degraded modes, e.g. reducing speed, in response to suboptimal conditions
    • B60W60/00186Planning 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
    • 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0736Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0778Dumping, i.e. gathering error/state information after a fault for later diagnosis
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Prevention of errors by analysis, debugging or testing of software
    • G06F11/3668Testing of software
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME 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/00Registering or indicating the working of vehicles
    • G07C5/08Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
    • G07C5/0808Diagnosing performance data
    • 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/0205Diagnosing or detecting failures; Failure detection models
    • B60W2050/021Means for detecting failure or malfunction
    • 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
    • B60W2556/00Input parameters relating to data
    • B60W2556/45External transmission of data to or from the vehicle
    • 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
    • B60W60/005Handover processes
    • B60W60/0051Handover processes from occupants to vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Human Computer Interaction (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Remote Sensing (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Game Theory and Decision Science (AREA)
  • Medical Informatics (AREA)
  • Business, Economics & Management (AREA)
  • Biomedical Technology (AREA)
  • Hardware Redundancy (AREA)
  • Traffic Control Systems (AREA)

Abstract

本公开提供了“车辆软件检查”。一种计算机,包括处理器和存储指令的存储器,所述指令可由所述处理器执行以:在确定本地标识符集合与远程服务的标识符集合不一致时,阻止车辆进入自主模式或指示所述车辆执行最小风险条件。

Description

车辆软件检查
技术领域
本公开总体涉及车辆计算机和软件。
背景技术
现代汽车,特别是能够自主操作的车辆,通常包括多个电子控制单元或模块(electronic control unit,ECU)。ECU是计算机。车辆的计算任务可以按功能在ECU中进行划分;混合动力传动系统控制模块可以控制车辆的混合动力传动系统,约束控制模块可以控制安全气囊和预紧器,等等。
发明内容
下文所述的系统通过控制软件和硬件的操作来改进车辆的操作。当出现不一致时,车辆可以通过采取适合于车辆环境的安全预防措施来作出反应。所述系统可以允许车队操作员对一队车辆进行更多的控制。所述系统可以改进车辆效率和安全性,并且可以通过标识硬件以及通过保持软件最新并检测错误安装来确保及时且正确的车辆维护。
一种计算机,包括处理器和存储指令的存储器,所述指令可由所述处理器执行以:在确定本地标识符集合与远程服务的标识符集合不一致时,阻止车辆进入自主模式或指示所述车辆执行最小风险条件。
所述指令还可包括:在确定所述本地标识符集合与所述远程服务的标识符集合不一致时,从远程服务器接收软件更新。所述指令还可包括:在接收到所述软件更新时,将一致性状态从故障状态设定为可接受状态,并且响应于所述一致性状态在小于时间阈值的时间内从所述故障状态切换到所述可接受状态而设定诊断故障代码。
所述标识符可包括配置标识符。
所述指令还可包括:周期性地向车辆部件请求所述标识符,并将所述返回的标识符存储在所述本地标识符集合中。
所述本地标识符集合可以是当前本地标识符集合,并且所述指令还可包括:在确定所述当前本地标识符集合与先前本地标识符集合不一致时,将所述当前本地标识符集合发射到服务于所述远程服务的标识符集合的远程服务器。
执行所述最小风险条件可包括:将所述车辆驾驶到指定位置。
所述本地标识符集合可存储在所述车辆上的存储器中。
所述远程服务的标识符集合可存储在远离所述车辆的存储器中。
所述指令还可包括:通过确定所述本地标识符集合中的至少一个标识符不同于所述远程服务的标识符集合中的相应标识符来确定所述本地标识符集合与所述远程服务的标识符集合不一致。
一种方法包括:在确定本地标识符集合与远程服务的标识符集合不一致时,阻止车辆进入自主模式或指示所述车辆执行最小风险条件。
所述方法还可包括:在确定所述本地标识符集合与所述远程服务的标识符集合不一致时,从远程服务器接收软件更新。所述方法还可包括:在接收到所述软件更新时,将一致性状态从故障状态设定为可接受状态,并且响应于所述一致性状态在小于时间阈值的时间内从所述故障状态切换到所述可接受状态而设定诊断故障代码。
所述标识符可包括配置标识符。
所述方法还可包括:周期性地向车辆部件请求所述标识符,并将所述返回的标识符存储在所述本地标识符集合中。
所述本地标识符集合可以是当前本地标识符集合,并且所述方法还可包括:在确定所述当前本地标识符集合与先前本地标识符集合不一致时,将所述当前本地标识符集合发射到服务于所述远程服务的标识符集合的远程服务器。
执行所述最小风险条件可包括:将所述车辆驾驶到指定位置。
所述本地标识符集合存储在所述车辆上的存储器中。
所述远程服务的标识符集合可存储在远离所述车辆的存储器中。
所述方法还可包括:通过确定所述本地标识符集合中的至少一个标识符不同于所述远程服务的标识符集合中的相应标识符来确定所述本地标识符集合与所述远程服务的标识符集合不一致。
附图说明
图1是示例性车辆的框图。
图2是用于管理用于图1车辆的硬件和软件的示例性过程的过程流程图。
图3是用于验证图1车辆的通信系统的示例性过程的过程流程图。
图4是用于检查用于图1车辆的硬件和软件的一致性的示例性过程的过程流程图。
图5是用于响应用于图1的车辆的硬件或软件的不一致性的示例性过程的过程流程图。
图6是用于更新用于图1车辆的软件的示例性过程的过程流程图。
具体实施方式
参考附图,计算机30包括处理器和存储指令的存储器,所述指令可由处理器执行以:在确定本地标识符集合与远程服务的标识符集合不一致时,阻止车辆32进入自主模式和/或指示车辆32执行最小风险条件,如下文所定义。
参考图1,车辆32可以是任何乘用汽车或商用汽车,诸如轿车、卡车、运动型多用途车、跨界车、厢式货车、小型货车、出租车、公共汽车等。
车辆32可以是自主车辆。车辆计算机34可以被编程为完全地或在较小程度上独立于人类驾驶员的干预来操作车辆32。车辆计算机34可以被编程为操作推进系统36、制动系统38、转向系统40和/或其他车辆系统。车辆计算机34可能够在不同的自主性模式(例如,一个或多个自主模式以及非自主模式)之间切换。出于本公开的目的,自主操作意指车辆计算机34在没有来自人类驾驶员的输入的情况下控制推进系统36、制动系统38和转向系统40;半自主操作意指车辆计算机34控制推进系统36、制动系统38和转向系统40中的一者或两者,而人类驾驶员控制剩余部分;并且非自主操作意指人类驾驶员控制推进系统36、制动系统38和转向系统40。自主模式意指车辆计算机34提供自主或半自主操作。非自主模式意指车辆计算机34提供非自主操作。
计算机30是一个或多个基于微处理器的计算机。计算机30包括存储器、至少一个处理器等。计算机30的存储器包括用于存储可由处理器执行的指令以及用于以电子方式存储数据和/或数据库的介质。计算机30可以是与车辆计算机34相同的计算机,或者计算机30可以是经由通信网络42与车辆计算机34通信的一个或多个单独的计算机,或者计算机30可以涵盖包括车辆计算机34的多个计算机。作为单独的计算机,计算机30可以是或包括(例如)一个或多个电子控制单元或模块(ECU)44,诸如增强型中央网关(enhanced centralgateway,ECG)46和/或自动化驾驶系统接口模块(automated-driving-system interfacemodule,ADSIM)48。
车辆计算机34是基于微处理器的计算机。车辆计算机34包括处理器、存储器等。车辆计算机34的存储器包括用于存储可由处理器执行的指令以及用于以电子方式存储数据和/或数据库的介质。
ECU 44是基于微处理器的计算机。ECU 44各自包括处理器、存储器等。每个ECU 44的存储器包括用于存储可由相应处理器执行的指令以及用于以电子方式存储数据和/或数据库的介质。ECG 46安排并执行ECU 44之间的通信。ADSIM 48处理与自主操作相关的非驾驶任务。其他ECU 44可包括车身控制模块50、防抱死制动控制模块52、助力转向控制模块54、发动机控制模块56、约束控制模块58、混合动力传动系统控制模块60、直流/直流(DC/DC)转换器62、配电箱64、电池电子器件控制模块66和换挡模块68。
计算机30可通过通信网络42(诸如控制器局域网(CAN)总线、以太网、WiFi、局域互连网(LIN)、车载诊断连接器(OBD-II))和/或通过任何其他有线或无线通信网络发射和接收数据。计算机30可以经由通信网络42通信地耦接到车辆计算机34、推进系统36、制动系统38、转向系统40、ECU 44、传感器70、收发器72和其他部件。
车辆32的推进系统36产生能量并将能量转化成车辆32的运动。推进系统36可以是常规车辆推进子系统,例如:常规动力传动系统,其包括内燃发动机,所述内燃发动机耦接到将旋转运动传送到车轮的变速器;电动动力传动系统,其包括电池、电动马达和将旋转运动传送到车轮的变速器;混合动力传动系统,其包括常规动力传动系统和电动动力传动系统的元件;或任何其他类型的推进系统。推进系统36可以包括与车辆计算机34和/或人类驾驶员通信并从其接收输入的电子控制单元(ECU)等,例如,混合动力传动系统控制模块60。人类驾驶员可以经由例如加速踏板和/或换挡杆来控制推进系统36。
制动系统38通常是常规车辆制动子系统并且抵制车辆32的运动,从而使车辆32减慢和/或停止。制动系统38可以包括:摩擦制动器,诸如盘式制动器、鼓式制动器、带式制动器等;再生制动器;任何其他合适类型的制动器;或组合。制动系统38可以包括与车辆计算机34和/或人类驾驶员通信并从其接收输入的电子控制单元(ECU)等,例如,防抱死制动控制模块52。人类驾驶员可以经由例如制动踏板来控制制动系统38。
转向系统40通常是常规车辆转向子系统并且控制车轮的转动。转向系统40可以是具有电动助力转向的齿条齿轮系统、线控转向系统(两者都是已知的)或任何其他合适的系统。转向系统40可以包括与车辆计算机34和/或人类驾驶员通信并从其接收输入的电子控制单元(ECU)等,例如,助力转向控制模块54。人类驾驶员可以经由例如方向盘来控制转向系统40。
传感器70可以提供关于车辆32的操作的数据,例如,车轮速度、车轮取向以及发动机和变速器数据(例如,温度、燃料消耗量等)。传感器70可以检测车辆32的位置和/或取向。例如,传感器70可以包括:全球定位系统(GPS)传感器;加速度计,诸如压电系统或微机电系统(microelectromechanical system,MEMS);陀螺仪,诸如速率陀螺仪、环形激光陀螺仪或光纤陀螺仪;惯性测量单元(inertial measurements unit,IMU);以及磁力计。传感器70可以检测外部世界,例如,车辆32周围环境的对象和/或特征,诸如其他车辆、道路车道标线、交通灯和/或标志、行人等。例如,传感器70可以包括雷达传感器、扫描激光测距仪、光探测和测距(light detection and ranging,LIDAR)装置和图像处理传感器(诸如相机)。
收发器72可适于通过任何合适的无线通信协议(诸如
Figure BDA0002225756990000071
WiFi、IEEE802.11a/b/g、其他RF(射频)通信等)无线地发射信号。收发器72可以是一个装置或者可以包括单独的发射器和接收器。收发器72可适于通过网络76与远程服务器74(即,与车辆32不同且间隔开的服务器)通信。
远程服务器74位于车辆32的外部。例如,远程服务器74可以包括在其他车辆中(例如,V2V通信)、基础设施部件中(例如,经由专用短程通信(Dedicated Short-RangeCommunications,DSRC)进行的V2I通信等)、紧急应答器中、与车辆32的所有者相关联的移动装置中等。远程服务器74可以包括服务器和数据存储装置。
收发器72可以通过网络76连接到远程服务器74。网络76表示计算机30可用于与远程服务器74通信的一个或多个机构。因此,网络76可以是各种有线或无线通信机构中的一种或多种,包括有线(例如,电缆和光纤)和/或无线(例如,蜂窝、无线、卫星、微波和射频)通信机构以及任何期望的网络拓扑结构(或当使用多个通信机构时,多个网络拓扑结构)的任何期望组合。示例性通信网络包括提供数据通信服务的无线通信网络(例如,使用蓝牙、IEEE 802.11等)、局域网(LAN)和/或广域网(WAN),包括互联网。
车辆32的一些部件具有标识符。在此上下文中,“标识符”被定义为对部件来说基本上唯一的标签或设置。标识符可以是:硬件标识符,即唯一地标识车辆32的物理部件的标签;软件标识符,即唯一地标识一款软件(诸如程序、应用程序、操作系统等)的标签;或者配置标识符,即适用于部件的一种或多种设置(例如用于稳定性控制、防抱死制动等)的说明。部件可具有例如一个硬件标识符、多个软件标识符和一个或多个配置标识符。以电子方式连接到计算机30的任何部件(例如,ECU 44、传感器70等)可存储其自己的标识符并响应于查询返回这些标识符。计算机30(例如,ECG 46)将车辆32的部件的标识符存储在存储器中,这些标识符通篇称为本地标识符集合。远程服务器74将相同部件的相应标识符存储在远离车辆32的存储器中,这些标识符通篇称为远程服务的标识符集合。远程服务的标识符集合可以是“主列表”,即最新硬件、软件和/或配置的标识符的策划列表。
图2是示出用于管理用于车辆32的硬件和软件的示例性过程200的过程流程图。计算机30的存储器存储用于执行过程200的步骤的可执行指令。由于车辆32随时间推移而进行维护和修理,并且由于由ECU运行的软件随时间推移而更新,车辆32内可能因为安装错误部件或安装不一致的软件版本而发生错误。作为过程200的非限制性总体概述,计算机30检查车辆32的消息传递能力,并检查车辆32的硬件和软件的本地标识符集合与远程服务的标识符集合的一致性,如下文更详细地描述;如果一致,则计算机30将一致性状态设定为“正常(OK)”并继续检查;如果不一致,那么在不一致性针对硬件标识符或配置标识符的情况下,计算机30执行故障模式管理,并且在不一致性针对软件标识符的情况下,计算机30执行软件更新(这也可包括故障模式管理)。
过程200通过执行下文更详细描述的用于验证车辆32的通信系统可操作的过程300开始。如果过程300导致采取故障模式管理措施,如下所述,则过程200中断并且不继续进行。
接下来,在过程300成功完成之后,过程200通过执行下文更详细描述的用于检查用于车辆32的硬件和软件的一致性的过程400来继续进行。因为执行过程400,计算机30将已接收到来自远程服务器74的响应,所述响应列出本地标识符集合与远程服务的标识符集合之间的不一致性(如果有的话)。
接下来,在过程400完成之后,过程200在决策框205中继续进行。在决策框205中,计算机30(例如)通过检查来自远程服务器74的列出不一致性的响应来确定本地标识符集合是否与远程服务的标识符集合不一致。出于本公开的目的,两个有序集合的“不一致”被定义为一个集合的元素不同于另一个集合的相应元素。如果本地标识符集合中的至少一个标识符不同于远程服务的标识符集合中的相应标识符(例如,车身控制模块50的本地软件标识符中的一个不同于车身控制模块50的对应远程服务的软件标识符),则本地标识符集合与远程服务的标识符集合“不一致”。标识符是否不同可通过字符串匹配(例如,由远程服务器74在编译列出不一致性的响应时)来确定。如果本地标识符集合与远程服务的标识符集合不一致,则过程200前进到决策框215。
如果本地标识符集合与远程服务的标识符集合一致,则接下来,在框210中,计算机30将一致性状态设定为可接受状态,例如“正常”,即指示标识符没有问题的设置。一致性状态可以是针对任何标识符的,或者一致性状态可以是特定于标识符的类型的,例如,硬件标识符一致性状态、软件标识符一致性状态和配置标识符一致性状态。一致性状态可以发射到各种ECU 44,所述各种ECU 44的编程可以将一致性状态考虑在内。在框210之后,过程200返回到执行过程400以继续周期性地检查标识符的一致性。
在决策框205之后,如果本地标识符集合与远程服务的标识符集合不一致,则过程200以决策框215继续进行。在决策框215中,计算机30确定本地标识符集合与远程服务的标识符集合之间的不一致性是针对软件标识符、硬件标识符还是配置标识符。
如果不一致性是针对硬件标识符或针对配置标识符,则过程200通过执行在下文进行描述的用于故障模式管理的过程500来继续进行。在过程500完成之后,过程200结束。
如果不一致性是针对软件标识符,则过程200通过执行用于更新车辆32的软件的过程600来继续进行(这可包括执行用于故障模式管理的过程500)。在过程600完成之后,过程200返回到执行过程400以继续周期性地检查标识符的一致性。
图3是用于验证车辆32的通信系统可操作的过程300的过程流程图。计算机30(例如,ADSIM 48)的存储器存储用于执行过程300的步骤的可执行指令。作为过程300的总体概述,计算机30检查是否在时间阈值内接收到内部消息以及是否可以联系到远程服务器74;如果任一者失败,则计算机30执行故障模式管理。
过程300在框305中开始,其中计算机30发送内部消息,即从车辆32中的一个ECU44到另一个ECU 44的消息。例如,ECG 46可以向ADSIM 48发送状态消息。
接下来,在决策框310中,计算机30确定是否在时间阈值内接收到内部消息。时间阈值可以被选择为恰好足够长以使得基本上所有内部消息都会是在无故障的情况下递送的。如果未在时间阈值内接收到内部消息,则过程300通过执行用于故障模式管理的过程500来继续进行。
如果在阈值内接收到内部消息,则接下来,在决策框315中,计算机30确定是否可以联系到远程服务器74。在断定无法联系到远程服务器74之前,计算机30可在不接收响应的情况下经由收发器72将预设数量的消息发射到远程服务器74。消息的预设数量可以被选择成使得如果来自远程服务器74的信号足够强以便进行可靠通信,则将发生至少一次成功的交换。如果建立了与远程服务器74的联系,则过程300结束。
如果在决策框310之后未在时间阈值内接收到内部消息,或者如果在决策框315中未建立与远程服务器74的联系,则过程300通过执行过程500来继续进行。在执行过程500之后,过程300结束。如果过程300作为过程200的一部分执行,则过程200中断并且不继续进行。
图4是用于检查用于车辆32的硬件和软件的一致性的过程400的过程流程图。计算机30的存储器存储用于执行过程400的步骤的可执行指令。计算机30可周期性地(例如,以预设频率)或基于触发事件(诸如,起动车辆32)执行过程400。作为过程400的总体概述,计算机30向车辆32的部件询问它们的标识符,存储标识符,并且如果本地标识符集合与先前本地标识符集合不一致,或者如果预设时间周期已经过去,则将本地标识符集合发送到远程服务器74并接收响应。
过程400在框405中开始,其中计算机30向车辆32的部件请求标识符。ECG 46通过通信网络42将请求发射到诸如ECU 44的部件,所述部件用它们的软件标识符、硬件标识符和/或配置标识符来响应。
接下来,在框410中,计算机30将返回的标识符存储在本地标识符集合中。本地标识符集合存储在计算机30的存储器中,即存储在车辆32上。
接下来,在决策框415中,计算机30确定当前本地标识符集合是否与先前本地标识符集合一致。先前本地标识符集合是在过程400的更早迭代期间在框410中存储的。如果在存储器中没有存储先前本地标识符集合,则认为当前本地标识符集合是一致的。如果当前本地标识符集合与先前本地标识符集合不一致,则过程400前进到框425。
如果当前本地标识符集合与先前本地标识符集合一致,则接下来,在决策框420中,计算机30确定预设周期是否已经过去。预设周期可以被选择为足够长以使得引入标识符中的一个已经改变的可能性。如果预设周期尚未过去,则过程400等待,直到预设周期过去。
如果在决策框415中当前本地标识符集合与先前本地标识符集合不一致,或者一旦在决策框420中预设周期已经过去,则过程400继续进行到框425。在框425中,计算机30经由收发器72将当前本地标识符集合发射到远程服务器74。
接下来,在框430中,计算机30从远程服务器74接收响应。来自远程服务器74的响应列出本地标识符集合与远程服务的标识符集合之间的不一致性(如果有的话)。因为远程服务器74上的远程服务的标识符集合可以是最新标识符的“主列表”,所以列出不一致性的响应有效地告诉计算机30哪些硬件、软件和配置已过期。在框430之后,过程400结束。
图5是用于对车辆32的(例如)不一致的硬件、软件或配置的故障模式管理的过程500的过程流程图。计算机30的存储器存储用于执行过程500的步骤的可执行指令。过程500可由过程300中的通信问题、过程200中的硬件标识符或配置标识符的不一致性、或过程600中的影响自主操作的软件标识符的不一致性来触发。作为过程500的总体概述,计算机30将一致性状态设定为“故障(Faulty)”,设定诊断故障代码,在车辆32处于自主模式的情况下执行最小风险条件,并且在车辆32不处于自主模式的情况下阻止转换到自主模式。
过程500在框505中开始,其中计算机30将一致性状态设定为故障状态,例如“故障”,即指示标识符中的不一致性的设置。一致性状态可以发射到各种ECU 44,所述各种ECU44的编程可以将一致性状态考虑在内。
接下来,在框510中,计算机30设定诊断故障代码。诊断故障代码可由维修车辆32的技术人员例如经由诸如OBD-II的车载诊断系统读取。诊断故障代码可说明调用过程500的原因,例如,未接收到内部消息、缺乏与远程服务器74的联系、本地标识符集合与远程服务的标识符集合之间的标识符不匹配等。
接下来,在决策框515中,计算机30确定车辆计算机34是否处于自主模式,即自主或半自主操作。如果车辆32不处于自主模式,则过程500前进到框525。
如果车辆32处于自主模式,则接下来,在框520中,计算机30指令车辆32执行最小风险条件,例如,通过控制推进系统36、制动系统38和转向系统40来指令车辆计算机34执行最小风险条件。出于本公开的目的,“最小风险条件”具有国家公路交通安全管理局(National Highway Traffic Safety Administration,NHTSA)和汽车工程师学会(Society of Automotive Engineers,SAE)所赋予的含义:“‘最小风险条件’意指自动化驾驶系统在系统故障时或在人类驾驶员未能适当地对接管动态驾驶任务的请求作出响应时自动采取的低风险操作条件。”(美国交通部和NHTSA,自动化驾驶系统2.0:安全愿景(Automated Driving Systems 2.0:A Vision for Safety),第26页(引用SAE国际J3016,与道路机动车辆驾驶自动系统有关的术语的国际分类和定义(International Taxonomyand Definitions for Terms Related to Driving Automation Systems for On-RoadMotor Vehicles)(J3016:2016年9月))。)例如,最小风险条件可以是:启动移交给人类驾驶员;自主驾驶车辆32以停在路边,即将车辆32停在活跃的交通车道之外;或者将车辆32驾驶到指定位置(例如,修理厂)。车辆计算机34可以通过使用已知的自主操作算法来执行最小风险条件。在框520之后,过程500结束。
在决策框515之后,如果车辆32不处于自主模式,则在框525中,计算机30阻止车辆32进入任何自主模式。例如,计算机30可忽视来自乘员或来自远程服务器74的进入自主模式的命令。在框525之后,过程500结束。
图6是用于更新用于车辆32的软件的过程600的过程流程图。计算机30的存储器存储用于执行过程600的步骤的可执行指令。作为过程600的总体概述,如果软件不匹配影响自主操作,则计算机30执行过程500,更新软件,重置车辆32以进行正常操作,并且检查并存储标识符。
过程600在框605中开始,其中计算机30从远程服务器74接收清单。清单列出了哪些软件或配置(如果有的话)已过期或以其他方式不兼容。
接下来,在决策框610中,计算机30确定不匹配的软件是否促进车辆32的自主操作。计算机30的存储器可存储在自主操作期间使用的多款软件的列表或表格,并且计算机30可检查清单中列出的软件是否存在于所存储的列表或表格中。如果软件确实影响自主操作,则接下来过程600执行用于故障模式管理的过程500,并且一旦过程500完成,就前进到框615。
在决策框610之后如果软件不影响自主操作,或者在过程500之后如果软件确实影响自主操作,则过程600前进到框615。在框615中,计算机30从远程服务器74接收软件更新并激活这个软件更新。换句话说,计算机30安装软件更新并移除由软件更新替换的任何软件。
接下来,在框620中,计算机30将一致性状态设定为可接受状态,例如“正常”,即指示标识符没有问题的设置。一致性状态可以发射到各种ECU 44,所述各种ECU 44的编程可以将一致性状态考虑在内。在过程500期间,一致性状态将已被设定为“故障”。
接下来,在决策框625中,计算机30确定一致性状态是否在小于时间阈值的时间内从故障状态切换到可接受状态。时间阈值可以被选择为比接收并激活软件更新的时间量略小(例如,小10%);因此,一致性状态比时间阈值更快地从故障状态切换到可接受状态指示已发生小故障。小故障意指通过除可执行指令的预期操作之外的某种机制存储不正确的值;例如,小故障可以由无意的位翻转、网络攻击(cyberattack)等引起。如果一致性状态在大于时间阈值的时间内从故障状态切换到可接受状态,则过程600前进到框635。
如果一致性状态在小于时间阈值的时间内从故障状态切换到可接受状态,则接下来,在框630中,计算机30设定指示一致性状态中的小故障的诊断故障代码。在框630之后,过程600接下来执行用于故障模式管理的过程500。在执行过程500之后,过程600结束。
接下来,或者在决策框625之后如果一致性状态在大于时间阈值的时间内从故障状态切换到可接受状态,则过程600前进到框635。在框635中,计算机30停用在过程500期间实现的故障模式管理操作,即允许车辆32退出最小风险条件并允许车辆32进入自主模式。
接下来,在框640中,计算机30向车辆32的部件请求标识符。ECG 46通过通信网络42将请求发射到诸如ECU 44的部件,所述部件用它们的软件标识符、硬件标识符和/或配置标识符来响应。
接下来,在框645中,计算机30将返回的标识符存储在本地标识符集合中。本地标识符集合存储在计算机30的存储器中,即存储在车辆32上。在框645之后,过程600结束。
总体上,所描述的计算系统和/或装置可采用多种计算机操作系统中的任一种,所述计算机操作系统包括但决不限于各种版本和/或种类的Ford
Figure BDA0002225756990000151
应用程序、AppLink/Smart Device Link中间件、Microsoft
Figure BDA0002225756990000152
操作系统、Microsoft
Figure BDA0002225756990000153
操作系统、Unix操作系统(例如,由加利福尼亚州红木海岸的甲骨文公司发布的
Figure BDA0002225756990000154
操作系统)、由纽约州阿蒙克的国际商业机器公司发布的AIX UNIX操作系统、Linux操作系统、由加利福尼亚州库比蒂诺市的苹果公司发布的Mac OSX和iOS操作系统、由加拿大滑铁卢的黑莓有限公司发布的BlackBerry OS、以及由谷歌公司和开放手机联盟开发的Android操作系统、或QNX软件系统公司提供的
Figure BDA0002225756990000155
CAR信息娱乐平台。计算装置的示例包括但不限于车载计算机、计算机工作站、服务器、台式计算机、笔记本计算机、膝上型计算机、或手持计算机、或一些其他计算系统和/或装置。
计算装置通常包括计算机可执行指令,其中所述指令可由诸如以上列出的那些的一个或多个计算装置执行。计算机可执行指令可通过使用各种编程语言和/或技术创建的计算机程序来编译或解释,所述编程语言和/或技术单独地或组合地包括但不限于:JavaTM、C、C++、Matlab、Simulink、Stateflow、Visual Basic、Java Script、Perl、HTML等。这些应用程序中的一些可在虚拟机(诸如Java虚拟机、Dalvik虚拟机等)上编译和执行。总体上,处理器(例如,微处理器)从例如存储器、计算机可读介质等接收指令,并执行这些指令,从而执行一个或多个过程,包括本文所述的过程中的一个或多个。此类指令和其他数据可使用多种计算机可读介质来存储和传输。计算装置中的文件通常是存储在计算机可读介质(诸如存储介质、随机存取存储器等)上的数据的集合。
计算机可读介质(也称为处理器可读介质)包括参与提供可由计算机(例如,由计算机的处理器)读取的数据(例如,指令)的任何非暂时性(例如,有形)介质。这种介质可采取许多形式,包括但不限于非易失性介质和易失性介质。非易失性介质可包括例如光盘或磁盘以及其他永久性存储器。易失性介质可包括例如通常构成主存储器的动态随机存取存储器(DRAM)。此类指令可由一种或多种传输介质传输,所述传输介质包括同轴电缆、铜线和光纤,包括构成联接到ECU的处理器的系统总线的电线。计算机可读介质的常见形式包括例如软盘、软磁盘、硬盘、磁带、任何其他磁性介质、CD-ROM、DVD、任何其他光学介质、穿孔卡、纸带、任何其他具有孔图案的物理介质、RAM、PROM、EPROM、快闪EEPROM、任何其他存储器芯片或盒式磁带、或计算机可从中读取的任何其他介质。
本文所描述的数据库、数据存储库或其他数据存储体可包括用于存储、存取和检索各种数据的各种机制,包括分层数据库、文件系统中的一组文件、专有格式的应用程序数据库、关系数据库管理系统(relational database management system,RDBMS)等。每个这样的数据存储体通常包括在采用计算机操作系统(诸如上面所提及的那些之一)的计算装置内,并且以各种方式中的任何一种或多种来经由网络进行存取。文件系统可从计算机操作系统进行存取,并且可包括以各种格式存储的文件。除了用于创建、存储、编辑和执行所存储程序的语言(诸如上面所提及的PL/SQL语言)之外,RDBMS通常还采用结构化查询语言(Structured Query Language,SQL)。
在一些示例中,系统元件可实现为一个或多个计算设备(例如,服务器、个人计算机等)上的、存储在与其相关联的计算机可读介质(例如,磁盘、存储器等)上的计算机可读指令(例如,软件)。计算机程序产品可包括存储在计算机可读介质上的用于执行本文所描述功能的此类指令。
在图示中,相同参考标号指示相同元素。此外,可改变这些元素中的一些或全部。关于本文所述的介质、过程、系统、方法、启发法等,应当理解,尽管已经将此类过程等的步骤描述为根据某一有序顺序发生,但是此类过程可以用以与本文所述次序不同的次序执行的所描述步骤来实践。还应当理解,可同时执行某些步骤,可以添加其他步骤,或者可省略本文描述的某些步骤。换句话讲,本文对过程的描述是出于说明某些实施例的目的而提供,并且决不应当被解释为限制权利要求。
因此,应当理解,以上描述意图是说明性的而非限制性的。在阅读以上描述时,除所提供的示例之外的许多实施例和应用对于本领域技术人员将是显而易见的。本发明的范围不应当参考以上描述来确定,而应当参考所附权利要求连同这些权利要求所享有的等效物的全部范围来确定。预计并且意图本文所讨论的领域中未来将有所发展,并且所公开的系统和方法将并入此类未来的实施例中。总之,应当理解,本发明能够进行修改和变化,并且仅受以下权利要求限制。
除非本文作出相反的明确指示,否则权利要求中使用的所有术语旨在给予其如本领域技术人员所理解的直白且普通的含义。特别地,除非权利要求给出明确的相反限制,否则单数冠词(诸如,“一个”、“该”、“所述”,等)的使用应当理解为叙述一个或多个所指示元件。如本文所使用,“基本上”意指尺寸、持续时间、形状或其他形容词可能由于物理缺陷、电源中断、机械加工或其他制造中的变化等而与所描述的内容略有不同。形容词“第一”和“第二”在整篇文档中用作标识符,而非意图表示重要性或顺序。“响应于”和“在确定……时”的使用指示因果关系,而不仅仅是时间关系。
已经以说明性方式描述了本公开,并且应当理解,已使用的术语意图在本质上是描述性的而不是限制性的字词。鉴于以上教义,本公开的许多修改和变化是可能的,并且本公开可以与具体所描述不同的方式来实践。
根据本发明,提供了一种计算机,其具有处理器和存储指令的存储器,所述指令可由所述处理器执行以:在确定本地标识符集合与远程服务的标识符集合不一致时,阻止车辆进入自主模式或指示所述车辆执行最小风险条件。
根据一个实施例,所述指令还包括:在确定所述本地标识符集合与所述远程服务的标识符集合不一致时,从远程服务器接收软件更新。
根据一个实施例,所述指令还包括:在接收到所述软件更新时,将一致性状态从故障状态设定为可接受状态;并且响应于所述一致性状态在小于时间阈值的时间内从所述故障状态切换到所述可接受状态而设定诊断故障代码。
根据一个实施例,所述标识符包括配置标识符。
根据一个实施例,所述指令还包括:周期性地向车辆部件请求所述标识符;并将所述返回的标识符存储在所述本地标识符集合中。
根据一个实施例,所述本地标识符集合是当前本地标识符集合,并且所述指令还包括:在确定所述当前本地标识符集合与先前本地标识符集合不一致时,将所述当前本地标识符集合发射到服务于所述远程服务的标识符集合的远程服务器。
根据一个实施例,执行所述最小风险条件包括:将所述车辆驾驶到指定位置。
根据一个实施例,所述本地标识符集合存储在所述车辆上的存储器中。
根据一个实施例,所述远程服务的标识符集合存储在远离所述车辆的存储器中。
根据一个实施例,所述指令还包括:通过确定所述本地标识符集合中的至少一个标识符不同于所述远程服务的标识符集合中的相应标识符来确定所述本地标识符集合与所述远程服务的标识符集合不一致。
根据本发明,一种方法包括:在确定本地标识符集合与远程服务的标识符集合不一致时,阻止车辆进入自主模式或指示所述车辆执行最小风险条件。
根据一个实施例,在确定所述本地标识符集合与所述远程服务的标识符集合不一致时,从远程服务器接收软件更新。
根据一个实施例,在接收到所述软件更新时,将一致性状态从故障状态设定为可接受状态;并且响应于所述一致性状态在小于时间阈值的时间内从所述故障状态切换到所述可接受状态而设定诊断故障代码。
根据一个实施例,所述标识符包括配置标识符。
根据一个实施例,周期性地向车辆部件请求所述标识符;并将所述返回的标识符存储在所述本地标识符集合中。
根据一个实施例,所述本地标识符集合是当前本地标识符集合,所述方法还包括:在确定所述当前本地标识符集合与先前本地标识符集合不一致时,将所述当前本地标识符集合发射到服务于所述远程服务的标识符集合的远程服务器。
根据一个实施例,执行所述最小风险条件包括:将所述车辆驾驶到指定位置。
根据一个实施例,所述本地标识符集合存储在所述车辆上的存储器中。
根据一个实施例,所述远程服务的标识符集合存储在远离所述车辆的存储器中。
根据一个实施例,通过确定所述本地标识符集合中的至少一个标识符不同于所述远程服务的标识符集合中的相应标识符来确定所述本地标识符集合与所述远程服务的标识符集合不一致。

Claims (12)

1.一种方法,其包括:
在确定本地标识符集合与远程服务的标识符集合不一致时,阻止车辆进入自主模式或指示所述车辆执行最小风险条件。
2.如权利要求1所述的方法,其还包括:在确定所述本地标识符集合与所述远程服务的标识符集合不一致时,从远程服务器接收软件更新。
3.如权利要求2所述的方法,其还包括:
在接收到所述软件更新时,将一致性状态从故障状态设定为可接受状态;以及
响应于所述一致性状态在小于时间阈值的时间内从所述故障状态切换到所述可接受状态而设定诊断故障代码。
4.如权利要求1所述的方法,其中所述标识符包括配置标识符。
5.如权利要求1所述的方法,其还包括:
周期性地向车辆部件请求所述标识符;以及
将所述返回的标识符存储在所述本地标识符集合中。
6.如权利要求1所述的方法,其中所述本地标识符集合是当前本地标识符集合,所述方法还包括:
在确定所述当前本地标识符集合与先前本地标识符集合不一致时,将所述当前本地标识符集合发射到服务于所述远程服务的标识符集合的远程服务器。
7.如权利要求1所述的方法,其中执行所述最小风险条件包括:将所述车辆驾驶到指定位置。
8.如权利要求1所述的方法,其中所述本地标识符集合存储在所述车辆上的存储器中。
9.如权利要求1所述的方法,其中所述远程服务的标识符集合存储在远离所述车辆的存储器中。
10.如权利要求1所述的方法,其还包括:通过确定所述本地标识符集合中的至少一个标识符不同于所述远程服务的标识符集合中的相应标识符来确定所述本地标识符集合与所述远程服务的标识符集合不一致。
11.一种计算机,其包括处理器和存储指令的存储器,所述指令能够由所述处理器执行以进行如权利要求1-10中的一项所述的方法。
12.一种车辆,其包括如权利要求11所述的计算机。
CN201910950900.5A 2018-10-08 2019-10-08 车辆软件检查 Pending CN111008121A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/154,405 US10845800B2 (en) 2018-10-08 2018-10-08 Vehicle software check
US16/154,405 2018-10-08

Publications (1)

Publication Number Publication Date
CN111008121A true CN111008121A (zh) 2020-04-14

Family

ID=69886608

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910950900.5A Pending CN111008121A (zh) 2018-10-08 2019-10-08 车辆软件检查

Country Status (3)

Country Link
US (1) US10845800B2 (zh)
CN (1) CN111008121A (zh)
DE (1) DE102019126804A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113112641A (zh) * 2021-04-21 2021-07-13 上海星融汽车科技有限公司 车辆ecu刷写方法及车辆诊断仪的下位机

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10832261B1 (en) * 2016-10-28 2020-11-10 State Farm Mutual Automobile Insurance Company Driver profiles based upon driving behavior with passengers
KR102575640B1 (ko) * 2018-10-15 2023-09-07 현대자동차주식회사 자율 주행 제어 장치, 그를 가지는 차량 및 그 제어 방법
JP7415726B2 (ja) * 2020-03-26 2024-01-17 株式会社オートネットワーク技術研究所 車載情報処理装置、情報処理方法及びサーバプログラム
JP7367626B2 (ja) 2020-07-08 2023-10-24 トヨタ自動車株式会社 ソフトウェア更新装置、方法、プログラムおよび車両
US11941926B2 (en) * 2021-08-04 2024-03-26 Ford Global Technologies, Llc Vehicle variation remediation
CN113900689A (zh) * 2021-10-15 2022-01-07 湖北三江航天红峰控制有限公司 一种光纤陀螺装置的运行方法
CN114625647B (zh) * 2022-03-14 2025-08-29 东风汽车集团股份有限公司 一种检测方法、装置、设备及计算机可读存储介质
US12164910B2 (en) * 2022-04-05 2024-12-10 Ford Global Technologies, Llc Vehicle software compatibility
US12422844B2 (en) 2022-05-12 2025-09-23 Tusimple, Inc. System and method for predicting non-operational design domain (ODD) scenarios
DE102022205944A1 (de) * 2022-06-13 2023-12-14 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren zum Betreiben einer Robotervorrichtung
US20240182083A1 (en) * 2022-12-06 2024-06-06 Zoox, Inc. Systems and methods for disengaging or engaging autonomy remotely

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5513107A (en) 1992-12-17 1996-04-30 Ford Motor Company Methods and apparatus for controlling operating subsystems of a motor vehicle
US6430481B1 (en) 1999-10-28 2002-08-06 General Electric Company Remote verification of software configuration information
US20050262337A1 (en) 2004-05-24 2005-11-24 Siemens Vdo Automotive Corporation Method and device for determining flash software compatibility with hardware
US8392764B2 (en) 2009-11-16 2013-03-05 Cooper Technologies Company Methods and systems for identifying and configuring networked devices
US9043078B2 (en) 2010-08-13 2015-05-26 Deere & Company Method and system for performing diagnostics or software maintenance for a vehicle
US9639344B2 (en) 2014-12-11 2017-05-02 Ford Global Technologies, Llc Telematics update software compatibility
DE102015209116A1 (de) 2015-05-19 2016-11-24 Robert Bosch Gmbh Verfahren und Aktualisierungsgateway zum Aktualisieren eines eingebetteten Steuergerätes
US20190092341A1 (en) * 2017-09-27 2019-03-28 Waymo Llc Multiple driving modes for autonomous vehicles

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113112641A (zh) * 2021-04-21 2021-07-13 上海星融汽车科技有限公司 车辆ecu刷写方法及车辆诊断仪的下位机

Also Published As

Publication number Publication date
US10845800B2 (en) 2020-11-24
DE102019126804A1 (de) 2020-04-09
US20200110406A1 (en) 2020-04-09

Similar Documents

Publication Publication Date Title
US10845800B2 (en) Vehicle software check
US11092970B2 (en) Autonomous vehicle systems utilizing vehicle-to-vehicle communication
CN104823165B (zh) 车载程序更新装置
US11334081B2 (en) Vehicle anomalous-condition response during autonomous driving
US11391257B2 (en) Power supply during vehicle startup
US20180154906A1 (en) Autonomous vehicle processor self-diagnostic
US11529886B2 (en) Power supply during vehicle off state
US12472925B2 (en) Traction-battery control in hybrid powertrain
CN110893770A (zh) 车辆电力管理故障
US20230373479A1 (en) Adaptive cruise control with load
US10439427B2 (en) Determining a fuel quantity to charge a vehicle battery
US11584383B2 (en) Vehicle feature availability detection
CN112631645A (zh) 车辆软件检查
US11577674B2 (en) Vehicle electrical power system
US10838416B1 (en) Vehicle control handoff
US11158139B2 (en) Vehicle telematics system
US12287629B2 (en) Detection of autonomous operation of a vehicle
US12360801B2 (en) Application control in a vehicle
CN116985828A (zh) 车辆特征可用性检测
CN120645984A (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