CN117461061A - 混合车辆通信网络上的装置健康代码广播 - Google Patents

混合车辆通信网络上的装置健康代码广播 Download PDF

Info

Publication number
CN117461061A
CN117461061A CN202280035716.8A CN202280035716A CN117461061A CN 117461061 A CN117461061 A CN 117461061A CN 202280035716 A CN202280035716 A CN 202280035716A CN 117461061 A CN117461061 A CN 117461061A
Authority
CN
China
Prior art keywords
vehicle
fault condition
response measure
code
device health
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
CN202280035716.8A
Other languages
English (en)
Inventor
陈恺
孟平凡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
PonyAi Inc
Original Assignee
PonyAi Inc
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 PonyAi Inc filed Critical PonyAi Inc
Publication of CN117461061A publication Critical patent/CN117461061A/zh
Pending legal-status Critical Current

Links

Classifications

    • 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/008Registering or indicating the working of vehicles communicating information to a remotely located station
    • 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
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
    • B60W30/08Active safety systems predicting or avoiding probable or impending collision or attempting to minimise its consequences
    • 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/0816Indicating performance data, e.g. occurrence of a 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Traffic Control Systems (AREA)
  • Small-Scale Networks (AREA)

Abstract

本文描述了系统、方法和非暂时性计算机可读介质,以用于自检测车辆部件经历的故障状况,生成指示所述故障状况的装置健康代码,以及通过混合车辆通信网络广播所述装置健康代码。可以解析所述装置健康代码以识别故障信息,并且所述故障信息可以与当前车辆运行数据一起被评估以确定对一个或多个车辆部件经历的一个或多个故障状况的建议车辆响应措施。

Description

混合车辆通信网络上的装置健康代码广播
技术领域
本申请要求2021年5月19日提交的美国申请号17/324,924的优先权,该申请的全文在此以引用方式并入。
本发明一般涉及在混合车辆通信网络上广播装置健康代码,并且更具体地,在一些实施例中,涉及在混合车辆通信网络上广播指示故障状况的装置健康代码,以使得能够确定和实施车辆对故障状况的响应措施。
背景技术
现代车辆包括大量不同的车辆部件。在过去的几十年里,自动车辆技术取得了巨大的进步,并且支持此类技术所需的车辆部件的数量也相应地增加。特别地,现代车辆包括比过去更多的传感器、更多的处理电路等,以便支持更先进的技术,诸如自适应巡航控制、盲点检测、车道保持、物体避让等。自动车辆包括甚至更多数量的车辆部件,以便支持实现自动车辆运行所需的更复杂的处理(例如,物体检测、实例分割、自动车辆导航等)。
车辆部件,诸如自动车辆中的部件,可以包括各种不同类型的部件(例如,传感器、定制计算芯片、计算系统等),这些部件可以经历不同类型的故障条件。本文描述了解决与识别车辆部件经历的故障状况和确定车辆对故障状况的适当响应相关联的技术问题的技术解决方案。
发明内容
在示例实施例中,公开了一种计算机实现的方法,该方法包括:接收通过第一车辆通信网络广播的第一装置健康代码,其中第一装置健康代码由经历第一故障状况的第一车辆部件产生;接收通过第二车辆通信网络广播的第一装置健康代码,其中第二车辆通信网络利用与第一车辆通信网络不同的通信协议;解析第一装置健康代码以识别包含在第一装置健康代码中的第一故障信息;检索当前车辆运行数据;至少部分基于第一故障信息和当前车辆运行数据来确定对第一故障状况的车辆响应措施;生成指示车辆响应措施的一个或多个控制命令;以及向车辆致动系统发送一个或多个控制命令以实现车辆响应措施。
在示例实施例中,第二车辆通信网络是时间敏感型网络,其比第一车辆通信网络更快地传播第一装置健康代码。
在示例实施例中,第一故障信息包括第一一个或多个错误代码和第一反应代码,第一反应代码指示对第一故障状况的第一建议车辆响应措施。
在示例实施例中,确定对第一故障状况的车辆响应措施包括确定将遵循由第一反应代码指示的第一建议车辆响应措施。
在示例实施例中,确定对第一故障状况的车辆响应措施包括至少部分基于当前车辆运行数据,确定将遵循由第一反应代码指示的第一建议车辆措施之外的替代车辆响应措施。
在示例实施例中,该方法还包括:接收通过第一车辆通信网络和第二车辆通信网络中的至少一者广播的第二装置健康代码,其中第二装置健康代码由经历第二故障状况的第二车辆部件生成;以及解析第二装置健康代码,以识别包含在第二装置健康代码中的第二故障信息。此外,确定对第一故障状况的车辆响应措施包括至少部分基于第一故障信息、第二故障信息和当前车辆运行数据,确定对第一故障状况和第二故障状况的车辆响应措施。
在示例实施例中,第二故障信息包括第二一个或多个错误代码和第二反应代码,第二反应代码指示对第二故障状况的第二建议车辆响应措施。
在示例实施例中,确定对第一故障状况和第二故障状况的车辆响应措施包括确定第一建议车辆响应措施与第二建议车辆响应措施冲突;确定第一反应代码优先于第二反应代码;以及选择第一建议车辆响应措施作为对第一故障状况和第二故障状况的车辆响应措施。
在示例实施例中,确定对第一故障状况和第二故障状况的车辆响应措施包括:至少部分基于当前车辆运行数据确定第一建议车辆响应措施比第二建议车辆响应措施更安全;以及选择第一建议车辆响应措施作为对第一故障状况和第二故障状况的车辆响应措施。
在示例实施例中,接收通过第二车辆通信网络广播的第一装置健康代码包括通过第二车辆通信网络从不同于第一车辆部件的第二车辆部件接收第一装置健康代码,其中第二车辆部件通过第一车辆通信网络从第一车辆部件接收第一装置健康代码。
在示例实施例中,公开了一种系统。系统包括:至少一个处理器;以及至少一个存储器,至少一个存储器存储计算机可执行指令。至少一个处理器配置成访问至少一个存储器并执行计算机可执行指令以执行一组操作,包括:接收通过第一车辆通信网络广播的第一装置健康代码,其中第一装置健康代码由经历第一故障状况的第一车辆部件产生;接收通过第二车辆通信网络广播的第一装置健康代码,其中第二车辆通信网络利用与第一车辆通信网络不同的通信协议;解析第一装置健康代码以识别包含在第一装置健康代码中的第一故障信息;检索当前车辆运行数据;至少部分基于第一故障信息和当前车辆运行数据来确定对第一故障状况的车辆响应措施;生成指示车辆响应措施的一个或多个控制命令;以及向车辆致动系统发送一个或多个控制命令以实现车辆响应措施。
上述系统还配置成执行操作/功能中的任一个,并且可以包括以上关于本发明的示例计算机实现方法描述的本发明的示例实施例的附加特征/方面中的任一个。
在示例实施例中,公开了一种计算机程序产品。计算机程序产品包括存储计算机/机器可执行指令的非暂时性计算机可读介质,这些指令响应于包括一个或多个处理单元的处理电路的执行而使得执行方法。该方法包括接收通过第一车辆通信网络广播的第一装置健康代码,其中第一装置健康代码由经历第一故障状况的第一车辆部件产生;接收通过第二车辆通信网络广播的第一装置健康代码,其中第二车辆通信网络利用与第一车辆通信网络不同的通信协议;解析第一装置健康代码以识别包含在第一装置健康代码中的第一故障信息;检索当前车辆运行数据;至少部分基于第一故障信息和当前车辆运行数据来确定对第一故障状况的车辆响应措施;生成指示车辆响应措施的一个或多个控制命令;以及向车辆致动系统发送一个或多个控制命令以实现车辆响应措施。
上述计算机程序产品还配置成执行操作/功能中的任一个,并且可以包括以上关于本发明的示例计算机实现方法描述的本发明的示例实施例的附加特征/方面中的任一个。
在参考附图考虑以下描述和所附权利要求书后,本文公开的系统、方法和非暂时性计算机可读介质的这些和其他特征以及结构的相关元件的操作方法和功能还有零件的组合和制造的经济性将变得更清楚,所有这些形成本说明书的一部分,其中相似附图标记在各个图中标示对应部分。然而,应当明确地理解,附图仅出于说明和描述的目的并且不旨在作为本发明的极限的限定。
附图说明
所附权利要求书中特别地阐述了本发明技术的各种实施例的某些特征。通过参考阐述其中利用本发明的原理的说明性实施例的以下详细描述以及附图,将获得对本发明技术的特征和优点的更好理解,在附图中:
图1是描述根据本发明的示例实施例的各种车辆部件和车辆通信网络的示意框图,车辆部件可以通过车辆通信网络进行通信。
图2是根据本发明的示例实施例的示例车辆故障代码的示意图。
图3是示出根据本发明的示例实施例的用于确定车辆对一个或多个车辆部件的故障状况的反应的决策过程的数据流和框图。
图4是根据本发明的示例实施例的用于生成装置健康代码并在车辆通信网络上广播装置健康代码的说明性方法的过程流程图。
图5是根据本发明的示例实施例的用于确定车辆对一个或多个车辆部件的一个或多个故障状况的反应的说明性方法的过程流程图。
图6是根据本发明的示例实施例的使用机器学习技术来改进车辆对一个或多个车辆部件经受的故障状况的确定反应的说明性方法的过程流程图。
图7是示出配置成实现本发明的示例实施例的示例网络架构的示意性框图。
具体实施方式
在以下描述中,阐述了某些具体细节,以便提供对本发明的各种实施例的透彻理解。然而,本领域的技术人员将理解可以在没有这些细节的情况下实践本发明。此外,尽管本文公开了本发明的各种实施例,但根据本领域的技术人员的公知常识,可以在本发明的范围内做出许多调适和修改。此类修改包括用已知的等效物替代本发明的任何方面,以便以基本上相同的方式获得相同结果。
除非上下文另有要求,否则贯穿本说明书和权利要求书,字词“包括(comprise)”及其变体诸如“包括(comprises)”和“包括(comprising)”应以开放性的、包含性的含义解释,即,被解释为“包括,但不限于。”贯穿本说明书对值的数值范围的叙述意图用作单独地提及落入该范围内的每个独立值(包括限定该范围的值)的速记表示,并且每个独立值并入本说明书中,如同本文单独地叙述一样。另外地,除非上下文另有明确规定,否则未指明数量时以及“所述”包括复数表达。短语“中的至少一个”、“选自包括以下项的组的至少一个”或“选自由以下项组成的组的至少一个”等将以析取词解释(例如,不解释为A中的至少一个和B中的至少一个)。
贯穿本说明书提及“一个实施例”或“实施例”意味着结合该实施例描述的特定特征、结构、操作或特性被包括在本发明的至少一个实施例中。因此,贯穿本说明书在各处出现短语“在一个实施例中”或“在实施例中”不一定都指相同实施例,但在一些情况下可以指相同实施例。此外,可以在一个或多个实施例中以任何合适的方式组合特定特征、结构或特性。
诸如自主车辆的现代车辆包括支持许多不同车辆功能/技术所需的大量车辆部件。车辆部件可以包括各种类型的机械和电气部件。例如,车辆部件可以包括各种处理器/处理电路,诸如图形处理单元(GPU)、中央处理单元(CPU)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)等。车辆部件,特别是自主车辆部件,还可以包括各种类型的传感器,包括但不限于光探测和测距(LiDAR)传感器、雷达、相机、全球定位系统(GPS)接收器、基于声纳的传感器、超声波传感器、惯性测量单元(IMU)、加速度计、陀螺仪、磁力计、远红外(FIR)传感器等。
本发明的实施例克服了在基于计算机的技术领域中并更具体地在自主车辆技术领域中具体地产生的技术问题。具体地,本发明的示例实施例提供了对检测车辆部件何时经历故障状况以及确定车辆对检测到的故障状况的适当响应的技术问题的技术解决方案。此种技术解决方案以系统、方法、非暂时性计算机可读介质、技术和方法的形式公开,以用于自检测车辆部件的故障状况,生成包括与车辆部件经历的故障状况相关的多层信息的装置健康代码,以及经由一个或多个车辆通信网络向一个或多个其他车辆部件广播装置健康代码。对上述技术问题的技术解决方案也以系统、方法、非暂时性计算机可读介质、技术和方法的形式公开,以用于在一段时间内经由多个车辆通信网络接收来自车辆部件的装置健康代码;从装置健康代码确定一个或多个车辆部件已经经历了故障状况;从装置健康代码确定至少一个建议的车辆响应;检索当前车辆运行数据;以及至少部分基于对当前车辆运行数据的评估来确定是启动从装置健康代码确定的建议的车辆响应还是备选的车辆响应。
如前所述,在示例实施例中,装置健康代码可以包括多个信息层,其中每个连续的信息层提供与车辆部件经历的故障状况相关的更详细和更精细的信息。例如,装置健康代码可以包括指示其中车辆部件经历的故障状况所属的一般故障类别的故障类别代码。示例一般故障类别可以包括例如初始化错误、电源故障、内部通信错误等。在示例实施例中,故障类别代码可以对应于装置健康代码中的最高信息层,表示与故障状况相关的最一般和最不精细的信息。
此外,在示例实施例中,装置健康代码可以包括第二信息层,包括例如跨装置错误代码。跨装置错误代码可以提供比故障类别代码更详细的信息,诸如指示故障状况是车辆部件的特定子集(例如,特定广泛类型的车辆部件,诸如传感器)经历的故障类型。例如,跨装置错误代码可以指示故障状况对应于由数据捕获问题、数据传输问题等导致的一定量的传感器数据丢失。此外,在示例实施例中,装置健康代码可以包括第三信息层,第三信息层提供了比第二信息层更多的关于故障状况的细节。作为非限制性示例,第三信息层可以包括装置特定的错误代码,错误代码可以采用各种错误代码值,这些错误代码值指示特定于生成并广播装置健康代码的特定类型的装置的故障特征。例如,LiDAR的装置特定的错误代码可以指示LiDAR正在经历旋转错误(例如,已经停止旋转或者正在经历降级的旋转)。
此外,在一些示例实施例中,装置健康代码还可以包括反应代码,其对应于对车辆部件经历并在装置健康代码中识别的故障状况的建议的车辆反应。反应代码可以对应于一组潜在的车辆响应中的一个,包括但不限于,人类驾驶员接管车辆的控制(或者如果没有人类驾驶员存在,那么车辆在当前行驶车道中立即停止);将车辆停到路边或路肩上;在限速模式下运行车辆;完成车辆行程;仅报告错误信息;等等。
在示例实施例中,车辆部件可以配置成自检测其经历的故障状况,并生成相应的装置健康代码,装置健康代码提供与故障状况相关的各种信息层。然后,车辆部件可以在一个或多个车辆通信网络上广播装置健康代码,使得连接到车辆通信网络的其他车辆部件可以了解故障状况。在一些示例实施例中,经历故障状况的车辆部件可以生成相应的健康代码,并在多个车辆通信网络上广播该代码,这些通信网络中的至少一个通信网络可以是时间敏感的通信网络。时间敏感的车辆通信网络可以指实时通信车辆网络,诸如基于以太网的网络。电气和电子工程师协会(IEEE)1000BASE-T1时间敏感网络(TSN)通信标准是此种网络的一个示例。
经由在车辆通信网络(诸如实时车辆通信网络)上广播代码,自报告指示车辆部件经历的车辆故障状况的装置健康代码,使得车辆生态系统中的其他车辆部件能够实时了解故障状况,并启动适当的车辆响应措施。例如,如果故障状况与特定传感器相关,则在经由实时网络上广播的健康代码获知故障状况之后,主要车辆计算平台可以忽略来自传感器的读数,或者使用历史或预测的传感器读数作为其计算的一部分。作为另一个非限制性示例,如果主要车辆计算平台经历了故障状况,则在通过实时通信网络接收到由主平台广播的装置健康代码时,辅助车辆安全计算平台可以从主平台接管一些或所有功能。在示例实施例中,经由实时车辆通信网络广播装置健康代码使得能够对车辆生态系统中的车辆部件进行故障处理,包括但不限于传感器故障、计算故障、车辆控制故障等。
图1是描述根据本发明的示例实施例的车辆100的各种部件和各种车辆通信网络的示意性框图,车辆部件可以通过车辆通信网络进行通信。车辆100可以是包含任何数量的车轮、车轴等的任何类型的车辆。车辆100可以是:无人驾驶车辆,其能够在没有任何人工输入的情况下完全自主地运行;半自动车辆,其能够完全自主地执行一项或多项车辆功能,但需要一定程度的手动输入;或其他。即使车辆100是具有完全自主能力的自动/无人驾驶车辆,在需要手动控制这种动作的故障情况发生的情况下,人类驾驶员仍然可以在场接管手动控制。
在示例实施例中,车辆部件可以包括主要车辆计算系统/平台102和辅助车辆计算系统/平台106。主要车辆计算系统102可以配置成处理与例如车辆控制和导航任务/处理(诸如在无人驾驶环境中)有关的复杂运算和计算功能。辅助车辆计算系统106可以配置成处理比主计算系统102更简单的车辆控制和导航任务/处理,以及响应于主计算系统102上的过度处理负载和/或主计算系统102经历的故障状况,潜在地从主计算系统102接管一些处理量。在一些示例实施例中,辅助车辆计算系统106可以是车辆安全系统,诸如最小风险状况控制(MRCC)系统。
在示例实施例中,主计算系统102可以经由信号网关110与一个或多个相机112通信联接。相机112可以位于车辆100内部或车辆100外部。相机112可以配置成以任何合适的帧速率捕捉图像数据、视频数据或音频数据等。在一些示例实施例中,由相机112捕获的图像可以经受各种类型的物体感知处理,以识别道路中的潜在障碍物,车辆100然后可以使用例如自动车辆导航能力绕过这些障碍物。
车辆100的车辆部件生态系统还可以包括传感器系统114。传感器系统114可以是例如协调从各种车辆传感器116接收传感器数据和将传感器数据传输到主要车辆计算系统102和辅助车辆计算系统106的N-box或其他系统。传感器系统114还可以促进控制命令等从主要车辆计算系统102到各种传感器116的传输,诸如指示传感器捕获数据的速率或传感器旋转的速率(例如,位于车辆100的车顶上的光探测和测距(LiDAR)传感器位置)的命令。传感器116可以包括LiDAR、全球定位系统(GPS)接收器、无线电、惯性传感器、温度传感器和振动传感器等。虽然传感器116示出为不同于传感器系统114,但是应当理解,传感器系统114可以包括一个或多个传感器116。
车辆100的车辆部件生态系统还可以包括雷达网关118,其促进一个或多个雷达120和主要车辆计算系统102以及辅助车辆计算系统106之间的通信。此外,车辆部件生态系统包括配电单元(PDU)122和车辆致动系统108。车辆致动系统108可以是例如线控(DBW)系统,其从主计算系统102接收车辆致动控制命令,并且可能从辅助计算系统106接收车辆致动控制命令。应当理解,图1中描绘的车辆部件仅仅是说明性的而非穷举性的,并且车辆100可以包括未描绘的许多其他部件/系统。例如,车辆100还可以包括各种子系统和它们相应的电子控制单元(ECU),包括但不限于传动子系统;安全气囊子系统;防抱死制动子系统;巡航控制子系统;电动助力转向子系统;等等。
在示例实施例中,图1所示的任何车辆部件可以能够响应于故障状况的自检测生成装置健康代码,并经由一个或多个车辆通信网络传送装置健康代码。在一些示例实施例中,经历故障状况的车辆部件可以通过多个车辆通信网络124、126传送装置健康代码。在示例实施例中,通信网络124可以是控制器局域网(CAN)车辆通信网络,并且通信网络126可以是时间敏感网络,诸如基于以太网的网络。在图1中用实线描绘代表网络124的通信链路,并且在图1中用虚线描绘代表网络126的通信链路。虽然某些车辆部件示出为经由通信网络124、126中的特定一个通信地联接,但是应当理解,一些车辆部件可以经由两个通信网络124、126通信地联接。还应该理解,虽然描述和描绘了两个示例通信网络,但是任何数量的车辆通信网络/通信标准可以用于车辆100的各种部件之间的通信。
在一些示例实施例中,自检测故障状况后,车辆部件可以生成指示故障状况的装置健康代码,并在通信网络124和通信网络126上广播健康代码。在一些示例实施例中,车辆部件可以通过执行故障检测算法来自检测故障状况。在一些示例实施例中,可以在多个通信网络上广播装置健康代码以实现冗余目的。在一些示例实施例中,通信网络之一(例如,通信网络126)可以是时间敏感网络,其将广播的装置健康代码实时传播到其他车辆部件,而另一个通信网络(例如,通信网络124)可以在将装置健康代码从广播部件传输到其他车辆部件时引入一定量的延迟。
在某些示例实施例中,车辆部件可以仅能够在特定的车辆通信网络(例如,124或126)上广播其装置健康代码。例如,车辆部件可以仅通信地联接到车辆通信网络124或126中的特定一个。在此类示例实施例中,经由第一通信网络(例如,通信网络124)接收装置健康代码的另一个车辆部件可以然后经由第二通信网络(例如,通信网络126)重新广播装置健康代码。此外,在一些示例实施例中,即使当车辆部件的运行状态指示存在故障状况时,车辆部件也可以周期性地生成和广播装置健康代码。当车辆部件然后经历故障状况时,可以填充/改变周期性广播的装置健康代码的一个或多个位(例如,指示故障状况的部分)以指示故障状况的性质。
图2是根据本发明示例实施例的示例车辆故障代码200的示意图。车辆故障代码200在本文中可以互换地称为装置健康代码200。例如,车辆100的车辆部件可以响应于与车辆部件相关联的故障状况的自检测来生成装置健康代码200,或者甚至在其中车辆部件没有经历故障状况的那些情况下也可以周期性地生成装置健康代码200。
在示例实施例中,装置健康代码200包括N位信息,其中某些位的集合对应于某些类型的信息。虽然图2中描绘的示例装置健康代码200包括特定数量的位(即,32位),并且代码200的各个部分包括特定数量的位,但是应当理解,根据本发明的示例实施例可以使用任何数量的总位来表示装置健康代码,并且可以使用任何相应数量的位来表示装置健康代码的任何部分(例如,子代码)。
现在更详细地参考示例装置健康代码200,代码200可以包括装置标识符202(对应于位0-7)。装置标识符202可以是唯一识别车辆100中特定车辆部件的任何合适的标识符。在示例实施例中,装置标识符202可以是零件号、型号或能够识别生成代码200的特定车辆部件的其他标识符。在一些示例实施例中,装置标识符202的一部分(例如,位0-3)可以表示车辆部件的部件类型,并且装置标识符202的剩余位可以识别特定部件。
装置健康代码200还可以包括多个信息层,其中每个连续的信息层提供与生成代码200的车辆部件经历的故障状况相关的更详细和更精细的信息。例如,装置健康代码200可以包括故障类别代码206(对应于位11-14),其指示其中车辆部件经历的故障状况所属的一般故障类别。示例性一般故障类别可以包括例如初始化错误、电源故障、内部通信错误等。在示例实施例中,故障类别代码206可以对应于装置健康代码200中的最高信息层,表示与故障状况相关的最一般和最不精细的信息。
此外,在示例实施例中,装置健康代码200可以包括第二信息层,包括例如跨装置错误代码210。跨装置错误代码210可以提供比故障类别代码206更详细的信息,诸如指示故障状况是车辆部件的特定子集(例如,特定广泛类型的车辆部件,诸如传感器)经历的故障类型。例如,跨装置错误代码210可以指示故障状况对应于由数据捕获问题、数据传输问题等导致的一定量的传感器数据丢失。此外,在示例实施例中,装置健康代码200可以包括第三信息层,第三信息层提供了比第二信息层更多的关于故障状况的细节。作为非限制性示例,第三信息层可以包括装置特定的错误代码212,其可以采用各种错误代码值,这些错误代码值指示特定于生成并广播装置健康代码200的特定类型的装置的故障特征。例如,用于LiDAR的装置特定的错误代码212可以指示LiDAR正在经历旋转错误(例如,已经停止旋转或者正在经历降级的旋转)。
此外,示例装置健康代码200包括反应代码204,其对应于对车辆部件经历并在装置健康代码200中识别的故障状况的建议的车辆反应。反应代码204可以对应于一组潜在的车辆响应中的一个,包括但不限于,人类驾驶员接管车辆的控制(或者如果没有人类驾驶员存在,车辆在当前行驶车道中立即停止);将车辆停到路边或路肩上;在限速模式下运行车辆;完成车辆行程;仅报告错误信息;等等。装置健康码200还包括可以用于纠错目的的奇偶校验位(位15)。
图3是示出根据本发明的示例实施例的用于确定车辆对一个或多个车辆部件的故障状况的反应的决策过程的数据流和框图。图4是根据本发明的示例实施例的用于生成装置健康代码并在车辆通信网络上广播装置健康代码的说明性方法400的工艺流程图。图5是根据本发明的示例实施例的用于确定车辆对一个或多个车辆部件的一个或多个故障状况的反应的说明性方法500的工艺流程图。下文将结合图3描述图4和图5中的每一个。
首先结合图3参考图4,在方法400的框402中,车辆部件可以自检测故障状况。例如,参考图3,一个或多个车辆部件308(1)-308(N)中的任何一个都可能经历故障状况并自检测故障状况。车辆部件308(1)-308(N)可以包括图1所示的任何示例性车辆部件或任何其他车辆部件。在示例实施例中,车辆部件可以配置成执行周期性/连续的诊断自我监测,其可以包括监测指示车辆部件的运行参数的监控量测/值。在一些示例实施例中,车辆部件可以执行检测算法来评估在诊断自监测期间捕获的操作参数的量测/值,以确定是否存在故障状况。例如,如果特定的运行参数(或一些阈值数量的运行参数)超出预期范围且超过阈值时间段,则车辆部件可以确定其已经经历了故障状况。
在方法400的框404处,经历故障状况的车辆部件可以生成装置健康代码,其包括与故障状况相关的多层信息。例如,如果车辆部件308(1)在框402经历了故障状况,则它可以生成装置健康代码310。类似地,如果在框402车辆部件308(N)经历了故障状况,则它可以生成装置健康代码312。在一些示例实施例中,车辆部件308(1)-308(N)中的任何一个或多个即使在没有经历故障状况时也可以周期性地生成装置健康代码,并且当其经历故障状况时可以改变健康代码中的信息或者用新信息填充它。
在方法400的框406,经历故障状况的车辆部件可以在第一车辆通信网络上广播装置健康代码。在方法400的框408处,车辆部件可以可选地在一个或多个附加的车辆通信网络上广播装置健康代码。例如,假设车辆部件308(1)经历了故障状况,车辆部件308(1)可以在时间敏感的实时车辆通信网络(例如,图1的通信网络126)上广播装置健康代码310,并且可选地,可以在另一通信网络上广播装置健康代码310,诸如CAN网络(例如,通信网络124),如果通信地联接到此网络的话。在其他示例实施例中,例如,如果车辆部件308(1)例如仅通信联接到特定通信网络(例如,通信网络126),则它可以在该网络上广播装置健康代码310,并且在该网络上接收装置健康代码310的另一车辆部件可以在也通信联接该车辆部件的另一通信网络上广播代码310。
现在结合图3参考图5,在方法500的框502处,车辆安全响应决策系统302可以通过第一通信网络从第一车辆部件(例如,车辆部件308(1))接收第一装置健康代码(例如,装置健康代码310)。类似地,在方法500的框504,车辆安全响应决策系统302可以通过第二车辆通信网络从第二车辆部件(例如,车辆部件308(N))接收第二装置健康代码312。在一些示例实施例中,第二车辆通信网络可以是时间敏感的实时通信网络。
在示例实施例中,车辆安全响应决策系统302可以构成主要车辆计算系统102(图1)和/或辅助车辆计算系统106(图1)的至少一部分。在示例实施例中,车辆安全响应决策系统302包括各种计算引擎,各种计算引擎包括装置健康代码解析引擎304和车辆安全响应评估引擎306。方法400至600中的任何一个方法的一个或多个操作可以由这些引擎中的一个或多个或图7中描绘的相应引擎来执行,其操作将在下文中更详细地描述。这些引擎/程序模块可以在硬件、软件和/或固件的任何组合中实现。在某些示例实施例中,这些引擎/程序模块中的一者或多者可以至少部分地实现为包括计算机可执行指令的软件和/或固件模块,该计算机可执行指令当由处理电路执行时致使一个或多个操作被执行。在其他示例实施例中,这些引擎/程序模块可以是在定制计算机器内实现的定制计算机可执行逻辑,诸如定制现场可编程门阵列(FPGA)和专用集成电路(ASIC)等。
本文所述的配置用于实施本发明示例实施例的系统或装置(例如,车辆安全响应决策系统302)可以包括一个或多个处理电路,处理电路中的每一个可以包括一个或多个处理单元或核心。计算机可执行指令可以包括计算机可执行程序代码,该计算机可执行程序代码当由处理核心执行时可以致使由处理核心访问和处理包含在该计算机可执行程序代码中或由其引用的输入数据以产生输出数据。本文对执行功能/任务的特定引擎/程序模块的任何引用可以包括引擎/程序模块的计算机可执行指令或者由处理电路执行的引擎/程序模块的硬连线逻辑,以使得功能/任务被执行。
再次参考图5,在方法500的框506处,装置健康代码解析引擎304可以解析第一装置健康代码(例如,装置健康代码310),以识别与第一车辆部件(例如,车辆部件308(1))相关的第一故障信息。第一故障信息可以包括包含在第一装置健康代码中的第一一个或多个错误代码和第一反应代码。例如,参考图2所示的示例装置健康代码200,第一一个或多个错误代码可以包括故障类别代码206、跨装置错误代码210和/或装置特定错误代码212。第一反应代码可以是反应代码204。
类似地,在方法500的框508处,装置健康代码解析引擎304可以解析第二装置健康代码(例如,装置健康代码312),以识别与第二车辆部件(例如,车辆部件308(N))相关的第二故障信息。第二故障信息可以包括包含在第二装置健康代码中的第二一个或多个错误代码和第二反应代码。第二一个或多个错误代码可以类似地包括故障类别代码、跨装置错误代码和/或装置特定错误代码。
在方法500的框510处,车辆安全响应评估引擎306可以检索与包括第一和第二车辆部件的车辆(例如,车辆100)相关的车辆运行数据316。在示例实施例中,车辆安全响应评估引擎306可以从一个或多个数据存储314中检索车辆运行数据316。车辆运行数据316可以包括来自车辆中各种传感器(例如,温度传感器、振动传感器、惯性传感器等)的数据,这些数据反映车辆的运行特性,包括但不限于车速、车辆加速度、功耗、内部运行温度或振动特性等。
在方法500的框512处,车辆安全反应评估引擎306可以确定是否遵循由第一反应代码和第二反应代码中的至少一个指定的建议车辆反应。在一些示例实施例中,引擎306可以分析车辆运行数据316,以确定遵循由第一反应代码和第二反应代码中的至少一个指定的建议车辆反应。例如,如果车辆运行数据316指示车辆在各种运行参数的预期运行范围内运行,则引擎306可以遵循由第一反应代码和/或第二反应代码指示的建议车辆反应。
在一些示例实施例中,在给定当前车辆运行特性的情况下,引擎306可以决定遵循对应于与更严格的安全措施相关联的反应代码的建议反应。这对应于框512处的肯定确定。例如,如果第一反应代码与立即车辆停止措施相关联,并且第二反应代码与停到路边措施相关联,则在一些情况下,引擎306可以遵循与第一反应代码相关联的动作,例如,如果在给定车辆的当前运行特性(例如,穿过的道路、交通密度等)的情况下,这被确定为更安全的措施。在其他情况下,例如,如果车辆已经在最右边的车道上行驶,则停到路肩/路缘实际上可能是更安全的车辆响应措施。在一些示例实施例中,默认情况下,第一反应代码或第二反应代码中的一个可以取代另一个,并且引擎306可以简单地选择较高优先级的代码。响应于框512处的肯定确定,方法500可以前进至框514,其中引擎306(或另一车辆部件,诸如主要车辆计算系统102)可以基于对应于第一和/或第二反应代码的建议车辆反应生成控制命令318,并将控制命令318发送至车辆致动系统320(例如,车辆致动系统108)。车辆致动系统320可以然后实现对应于控制命令的车辆响应措施。
另一方面,响应于框512处的否定确定,方法500可以前进至框516,其中引擎306可以基于对当前车辆运行数据316和从第一装置健康代码解析的第一一个或多个错误代码和从第二错误代码解析的第二一个或多个错误代码中的至少一个的分析,确定不同的车辆反应(车辆响应措施)。然后,在方法500的框518,引擎306(或另一车辆部件,诸如主要车辆计算系统102)可以生成指示在框516处确定的车辆反应的控制命令318,并且可以将控制命令318发送到车辆致动系统320。车辆致动系统320可以配置成通过执行接收到的控制命令318来实现车辆响应措施。
例如,在一些示例实施例中,当前车辆运行数据316可以指示由第一反应代码和/或第二反应代码指示的建议动作不再是对第一车辆部件经历的故障状况和/或第二车辆部件经历的故障状况的适当响应。例如,第一反应代码或第二反应代码可以基于第一和第二车辆部件经历的故障状况建议使无人驾驶车辆立即停止。然而,车辆运行数据可以指示车辆能够至少部分地从故障状况中恢复/补偿故障状况,并且因此,可以授权采用不太严重的车辆响应措施。例如,尽管存在故障条件,但是车辆可以能够简单地以较低的速度运行,而不是必须立即停止。在一些示例实施例中,故障状况可能导致用于执行与各种自主车辆操作(诸如车辆导航和物体感知等)相关的计算的处理延迟增加。如此,涉及以较低速度运行车辆的车辆响应措施可以补偿由故障状况引起的增加的处理延迟,并允许车辆继续安全地执行自主车辆操作。
虽然图5的示例方法500已经在通过不同车辆通信网络接收的两个装置健康代码的背景下进行了描述,并指示两个不同车辆部件经历的相应故障状况,但应理解,方法500也可以针对通过一个或多个车辆通信网络从特定车辆部件接收的特定装置健康代码进行。也就是说,可以解析通过一个或多个车辆通信网络接收的给定装置健康代码,以识别其中包含的故障信息,包括指示车辆部件经历的故障状况的一个或多个错误代码和指示对故障状况的建议车辆反应的反应代码。此外,可以检索和分析当前的车辆运行数据,以确定是否应该遵循建议的车辆反应,或者是否应该基于车辆运行数据寻求不同的车辆反应。
图6是根据本发明的示例实施例,使用机器学习技术来改进车辆对一个或多个车辆部件经历的故障状况的确定反应的说明性方法600的过程流程图。在一些示例实施例中,车辆安全响应评估引擎306可以执行方法600的操作中的一个或多个操作。
在方法600的框602处,可以在一段时间内收集车辆运行数据(例如,车辆运行数据316)。该时间段可以在响应于一个或多个车辆部件经历的各种故障状况而实施的多个车辆反应(车辆响应措施)之后。因此,车辆运行数据可以反映在采取各种车辆响应措施后观察到的车辆运行特征。
在方法600的框604处,可以标记收集的运行数据,以用作测试数据集。在方法600的框606,可以使用在框604生成的测试数据集来训练机器学习模型。机器学习模型可以采用任何合适的监督或非监督机器学习算法。可以训练机器学习模型,直至达到模型的期望精度。
在方法600的框608中,可以从例如数据存储318中检索当前车辆运行数据。然后,在方法600的框610,可以接收一个或多个装置健康代码。如前所述,装置健康代码可以在车辆部件自检测故障状况时生成,并且然后车辆部件可以在一个或多个车辆通信网络上广播装置健康代码。
在方法600的框612处,可以将在框608处检索的当前车辆运行数据和在框610处接收的装置健康代码作为输入提供给已训练的机器学习模型。然后,在方法600的框614,可以针对在框612提供的输入来确定经训练的机器学习模型的输出。该输出可以是响应于在框610接收的装置健康代码中识别的故障状况而实施的建议的车辆反应。
根据示例方法600,人工智能(AI)/机器学习(ML)技术用于提供反馈,以改进/修改车辆响应措施,这些车辆响应措施是基于实施此类响应措施所得的结果,响应车辆部件经历的先前故障状况而实施的。例如,如果X%的Lidar数据丢失,则对车辆响应措施的建议可以是继续以较低的速度运行车辆。但是,如果基于该车辆响应措施,车辆经历了附加的安全相关问题,下一次X%的LiDAR数据丢失(或者甚至可能是更低的阈值),建议可以改变为在当前车道内立即停止车辆,或者使车辆在路缘或路肩处停止。此外,建议的车辆响应可以基于不同类型的驾驶条件、路面、地形和/或环境条件,诸如能见度、天气条件等。
硬件实现方式
图7是示出配置成实现本发明的示例实施例的示例网络架构700的示意性框图。网络架构700可以包括经由一个或多个网络706通信地联接到各种车辆部件704的一个或多个专用计算装置702。车辆部件704可以包括本文描述的任何示例类型的部件,包括但不限于:商用部件(例如,GPU、CPU、ASIC、FPGA等);汽车级部件(例如,汽车级微控制器、其他机械/电气汽车零件等);以及车载车辆传感器(例如,LiDAR、雷达、相机、GPS接收器、基于声纳的传感器、超声波传感器、IMU、加速度计、陀螺仪、磁力计、FIR传感器等)。车辆部件704可以设置在车辆(诸如自主车辆)的外部上或内部中。专用计算装置702可以包括与车辆集成的装置,并且可以经由本地网络连接(例如,WiFi、蓝牙或专用短程通信(DSRC)等)从部件704接收数据(例如,车辆运行数据、传感器数据、装置健康代码等)。在其他示例实施例中,专用计算装置702可以远离车辆设置,并且可经由一个或多个远程网络从部件704接收数据。
专用计算装置702可以被硬接线以执行技术;可以包括被持久性地编程为执行该技术的电路或数字电子装置,诸如一个或多个ASIC或FPGA;并且/或者可以包括被编程为依据固件、存储器、其他存储设备或它们的组合中的程序指令来执行该技术的一个或多个硬件处理器。专用计算装置702也可以将定制硬接线逻辑、ASIC或FPGA与定制编程组合以完成该技术。专用计算装置702可以是台式计算机系统、服务器计算机系统、便携式计算机系统、手持式装置、联网装置或结合了硬接线和/或编程逻辑以实现该技术的任何其他装置或装置组合。
专用计算装置通常可以由操作系统软件720控制和协调,操作系统软件包括:移动操作系统,诸如iOS、安卓、Chrome OS等;桌面操作系统;大型机操作系统;或其他兼容操作系统。在其他实施例中,计算装置402可以由专有操作系统控制。操作系统软件420可以控制和调度计算机进程以供执行;执行存储器管理;提供文件系统、联网和I/O服务;以及提供用户界面功能,诸如图形用户界面(“GUI”)。
尽管在本文中可以单数描述计算装置702和/或传感器704,但应了解,可提供任何此类部件的多个实例,并且结合任何特定部件描述的功能性可分布在该部件的多个实例上。在某些示例实施例中,本文中结合架构700的任何给定部件描述的功能性可以分布在架构700的多个部件间。例如,可以将描述为由计算装置702提供的功能性的至少一部分分配在多个此类计算装置702间。
网络706可以包括但不限于任一种或多种不同类型的通信网络,例如有线网络、公共网络(例如,互联网)、专用网络(例如,帧中继网络)、无线网络、蜂窝网络、电话网络(例如,公共交换电话网络)或任何其他合适的专用或公共分组交换或电路交换网络。网络706可以具有与其相关联的任何合适的通信范围并可包括例如全球网络(例如,互联网)、城域网(MAN)、广域网(WAN)、局域网(LAN)或个人局域网(PAN)。另外,网络706可以包括通信链路和相关联的联网设备(例如,链路层交换机、路由器等),以在任何合适类型的介质上传输网络流量,该合适类型的介质包括但不限于同轴电缆、双绞线(例如,双绞铜线)、光纤、同轴混合光纤(HFC)介质、微波介质、射频通信介质、卫星通信介质或它们的任何组合。
在说明性配置中,计算装置702可以包括一个或多个处理器708、一个或多个存储器装置710(在本文中通称为存储器710)、一个或多个输入/输出(“I/O”)接口712、一个或多个网络接口714以及数据存储设备718。计算装置702还可以包括功能性地耦合计算装置702的各种部件的一个或多个总线716。数据存储设备可以存储一个或多个引擎、程序模块或部件等,其包括但不限于装置健康代码解析引擎724和车辆安全响应评估引擎726。图7中描绘的引擎/部件中的每者可以包括用于结合对应地命名的引擎/部件执行先前描述的过程或任务中的任一者的逻辑。在某些示例实施例中,所描绘的引擎/部件中的任一者可以在诸如一个或多个ASIC或FPGA的数码电子装置内的硬连线电路中实现,持久地编程数码电子装置以执行对应的技术。在示例实施例中,车辆部件健康监测引擎724和任务调度器730可以在汽车级微控制器等上执行。
总线716可以包括系统总线、存储器总线、地址总线和消息总线中的至少一者,并且可准许在计算装置702的各种部件之间交换信息(例如,数据(包括计算机可执行代码)、信令等)。总线716可以包括但不限于存储器总线或存储器控制器、外围总线、加速图形端口等。总线716可以与任何合适的总线架构相关联,包括但不限于工业标准架构(ISA)、微通道架构(MCA)、增强型ISA(EISA)、视频电子标准协会(VESA)架构、加速图形端口(AGP)架构、外围部件互连(PCI)架构、PCI-Express架构、个人计算机存储卡国际协会(PCMCIA)架构、通用串行总线(USB)架构等。
存储器710可以包括:易失性存储器(当被供电时维持其状态的存储器),诸如随机存取存储器(RAM);以及/或非易失性存储器(即使当未被供电时也维持其状态的存储器),诸如只读存储器(ROM)、快闪存储器、铁电RAM(FRAM)等。持久性数据存储设备,如在本文中使用该术语时,可以包括非易失性存储器。在某些示例实施例中,易失性存储器可以实现比非易失性存储器快的读/写访问。然而,在某些其他示例实施例中,某些类型的非易失性存储器(例如,FRAM)可以实现比某些类型的易失性存储器快的读/写访问。
在各种实施例中,存储器710可以包括多种不同类型的存储器,诸如各种类型的静态随机存取存储器(SRAM)、各种类型的动态随机存取存储器(DRAM)、各种类型的不可更改ROM和/或ROM的可写变体,诸如电可擦除可编程只读存储器(EEPROM)、快闪存储器等。存储器710可以包括主存储器以及各种形式的高速缓存存储器,诸如指令高速缓存、数据高速缓存、转译后备缓冲区(TLB)等。另外,高速缓存存储器诸如数据高速缓存可以是组织为一个或多个高速缓存级(L1、L2等)的分级结构的多级高速缓存。在示例实施例中,存储器710可以包括图1中描绘的数据存储设备106(1)-106(P)和/或数据存储设备120。可替代地,数据存储设备106(1)-106(P)可以是形成数据存储设备718的一部分的硬盘存储设备并且/或者数据存储设备120可以是作为FOV语义计算机器724自身的一部分提供的RAM或高速缓存存储器的形式。
数据存储设备718可以包括可移动存储设备和/或不可移动存储设备,包括但不限于磁性存储设备、光盘存储设备和/或磁带存储设备。数据存储设备718可以提供对计算机可执行指令和其他数据的非易失性存储。如在本文中使用该术语时,存储器710和数据存储设备718(可移动和/或不可移动)是计算机可读存储介质(CRSM)的示例。数据存储设备718可以存储计算机可执行代码、指令等,它们可以加载到存储器710中并且可由处理器708执行,以致使处理器708执行或发起各种操作。数据存储设备718可以另外地存储可被复制到存储器710以供处理器708在执行计算机可执行指令期间使用的数据。另外,由于由处理器708执行计算机可执行指令产生的输出数据可以最初存储在存储器710中,并且可以最终复制到数据存储设备718以进行非易失性存储。
更具体地,数据存储设备718可以存储一个或多个操作系统(O/S)720和一个或多个数据库管理系统(DBMS)722,该一个或多个O/S和一个或多个DBMS配置成潜在地经由网络706中的一者或多者访问存储器710和/或一个或多个外部数据存储(未描绘)。另外,数据存储设备718还可以存储一个或多个程序模块、应用程序、引擎、计算机可执行代码、脚本等。例如,在图7中描绘的引擎/部件中的任一者可以实现为包括可加载到存储器710中以由处理器708中的一者或多者执行本文中描述的技术中的任一者的计算机可执行指令(例如,计算机可执行程序代码)的软件和/或固件。
尽管图7中未描绘,但数据存储设备718还可以存储计算装置702的引擎/部件所利用的各种类型的数据。此类数据可以包括但不限于传感器数据、包括历史传感器操作数据的反馈数据、初始参数数据等。可以将存储在数据存储设备718中的任何数据加载到存储器710中以供处理器708在执行计算机可执行程序代码时使用。另外,存储在数据存储设备718中的任何数据可以潜在地存储在一个或多个外部数据存储中,该外部数据存储可经由DBMS722访问并可加载到存储器710中以供处理器708在执行计算机可执行指令/程序代码时使用。
处理器708可以配置成访问存储器710并执行加载在其中的计算机可执行指令/程序代码。例如,处理器708可以配置成执行FOV语义计算机器724的各种引擎/部件的计算机可执行指令/程序代码,以致使或促进根据本发明的一个或多个实施例执行各种操作。处理器708可以包括能够接受数据作为输入、根据存储的计算机可执行指令处理输入数据并生成输出数据的任何合适的处理单元。处理器708可以包括任何类型的合适的处理单元,包括但不限于中央处理单元、微处理器、精简指令集计算机(RISC)微处理器、复杂指令集计算机(CISC)微处理器、微控制器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、片上系统(SoC)、数字信号处理器(DSP)等。另外,处理器708可以具有包括任何数量的构成部件(诸如例如寄存器、多路复用器、算术逻辑单元、用于控制对高速缓存存储器的读/写操作的高速缓存控制器、分支预测器等)的任何合适的微架构设计。可以使处理器708的微架构设计能够支持多种指令集中的任一种。
现在参考被描绘为存储在数据存储设备718中的其他说明性部件,O/S 720可以从数据存储设备718加载到存储器710中并可以提供在计算装置702上执行的其他应用程序软件和计算装置702的硬件资源之间的接口。更具体地,O/S720可以包括用于管理计算装置702的硬件资源和用于向其他应用程序提供公共服务的一组计算机可执行指令。在某些示例实施例中,O/S 720可以包括或以其他方式控制存储在数据存储设备718中的引擎/程序模块中的一者或多者的执行。O/S 720可以包括现在已知或可在将来开发的任何操作系统,包括但不限于任何服务器操作系统、任何大型机操作系统或任何其他专有或非专有操作系统。
DBMS 722可以被加载到存储器710中,并且可以支持用于访问、检索、存储和/或操纵存储在存储器710中的数据、存储在数据存储设备718中的数据和/或存储在外部数据存储中的数据的功能。DBMS 722可以使用多种数据库模型中的任一种(例如,关系模型、对象模型等)并可支持多种查询语言中的任一种。DBMS 722可以访问以一种或多种数据模式表示并存储在任何合适的数据存储库中的数据。可以由计算装置702经由DBMS 722访问的数据存储可以包括但不限于数据库(例如,关系、面向对象的等)、文件系统、平面文件、其中数据存储在计算机网络的多于一个节点上的分布式数据存储、对等网络数据存储等。
现在参考计算装置702的其他说明性部件,输入/输出(I/O)接口712可以促进计算装置702从一个或多个I/O装置接收输入信息以及从计算装置702向一个或多个I/O装置输出信息。I/O装置可以包括多种部件中的任一种,诸如具有触摸表面或触摸屏的显示器或显示屏幕;用于产生声音的音频输出设备,诸如扬声器;音频捕获设备,诸如麦克风;图像和/或视频捕获设备,诸如相机;触觉单元等。这些部件中的任一者都可以集成到计算装置702中或可以与其分开。I/O装置还可以包括例如任何数量的外围装置,诸如数据存储装置、打印装置等。
I/O接口712还可以包括用于外部外围装置连接(诸如通用串行总线(USB)、FireWire、Thunderbolt、以太网端口或可连接到一个或多个网络的其他连接协议)的接口。I/O接口712还可以包括与一个或多个天线的连接,以经由无线局域网(WLAN)(诸如Wi-Fi)无线电、蓝牙和/或无线网络无线电(诸如能够与无线通信网络诸如长期演进(LTE)网络、WiMAX网络、3G网络等通信的无线电)连接到一个或多个网络。
计算装置702还可以包括一个或多个网络接口714,计算装置702可以经由该一个或多个网络接口与多种其他系统、平台、网络、设备等中的任一者通信。网络接口714可以使得能够经由网络706中的一者或多者与例如传感器704和/或一个或多个其他装置通信。在示例实施例中,网络接口714提供耦合到连接到网络706中的一者或多者的一个或多个网络链路的双向数据通信。例如,网络接口714可以包括集成服务数字网络(ISDN)卡、电缆调制解调器、卫星调制解调器或用于提供到对应类型的电话线的数据通信连接的调制解调器。作为另一个非限制性示例,网络接口714可以包括局域网(LAN)卡,以提供到兼容LAN(或与WAN通信的广域网(WAN)部件)的数据通信连接。也可以实现无线链路。在任何此类实现方式中,网络接口714可以发送和接收携带表示各种类型的信息的数字数据流的电、电磁或光信号。
网络链路通常提供通过一个或多个网络到其他数据装置的数据通信。例如,网络链接可以通过局域网提供到主计算机或到由互联网服务提供商(ISP)运营的数据装备的连接。ISP继而可以通过现在通常称为“互联网”的全球分组数据通信网络提供数据通信服务。局域网和互联网两者都使用携带数字数据流的电、电磁或光信号。通过各种网络704的信号以及在网络链路上并通过网络接口714的信号是传输介质的示例形式,所述信号携带去往计算装置702和来自计算装置702的数字数据。在示例实施例中,计算装置702可以通过网络706、网络链路和网络接口714发送消息和接收数据,包括程序代码。例如,在互联网示例中,服务器可通过互联网、ISP、局域网和网络接口714传输针对应用程序的请求的代码。接收到的代码可以在其被接收到时由处理器708执行,和/或存储在数据存储设备718或其他非易失性存储器中,以供之后执行。
应了解,作为计算装置702的一部分的图7中描绘的引擎仅是说明性的而不是穷举的。具体地,可以以任何合适的方式对功能进行模块化,使得被描述为由任何特定引擎支持的处理可以可替代地分布在多个引擎、程序模块、部件等上,或者由不同的引擎、程序模块、部件等执行。另外,在某些实施例中可以存在或不存在一个或多个所描绘的引擎,而在其他实施例中,可以存在未描绘的附加引擎,并且该附加引擎可以支持所描述的功能和/或附加功能的至少一部分。另外,各种引擎、程序模块、脚本、插件、应用程序编程接口(API)或本地托管在计算装置702上和/或托管在可经由网络702中的一者或多者访问的其他计算装置(例如,702)上的任何其他合适的计算机可执行代码可以被提供以支持由图7中描绘的引擎提供的功能性和/或附加或替代功能性。另外,支持本文中描述的功能的引擎可以至少部分地以硬件和/或固件来实现,并且可以根据任何合适的计算模型(诸如像客户端-服务器模型、对等模型等)在任何数量的计算装置702上执行。
还应当了解,在不脱离本发明的范围的情况下,计算装置702可以包括除了所描述或描绘的那些之外的替代和/或附加硬件、软件和/或固件部件。更具体地,应当了解,被描绘为形成计算装置702的部分的软件、固件和/或硬件部件仅是说明性的,并且在各种实施例中,可以存在或不存在一些部件,或者可以提供附加部件。还应当了解,在各种实施例中,描绘并描述的引擎中的每者表示支持的功能的逻辑分区。该逻辑分区是为了易于解释功能而描绘的,并且可以表示或不表示用于实现功能的软件、硬件和/或固件结构。
一般来讲,如本文所使用的术语引擎、程序模块等是指体现在硬件、固件和/或电路系统中的逻辑,或是指以编程语言诸如Java、C或C++编写的可能具有入口点和出口点的软件指令的集合。软件引擎/模块可以被编译并链接到可执行程序、安装在动态链接库中,或者可以用解释性编程语言诸如例如BASIC、Perl或Python编写。将了解到,软件引擎/模块可以从其他引擎/模块或从它们自身被调用,和/或可以响应于检测到的事件或中断而被调用。配置成在计算装置上执行的软件引擎/模块可以提供在计算机可读介质诸如压缩盘、数字视频盘、快闪存储器驱动器、磁盘或任何其他有形介质上,或作为数字下载(并且可以最初以要求在执行之前安装、解压缩或解密的压缩或可安装格式存储)。此类软件代码可以部分地或全部地存储在正在执行的计算装置的存储器装置上,以由计算装置执行。“开源”软件是指源代码,源代码可以作为源代码和/或以编译形式分发,并且以广为人知且有索引的手段获得源代码,并且任选地具有允许修改和衍生作品的许可。软件指令可以被嵌入在固件中并且例如被存储在诸如可擦除可编程只读存储器(EPROM)的快闪存储器上。还将了解,硬件模块/引擎可以包括连接的逻辑单元,诸如门和触发器,和/或还可以包括可编程单元,诸如可编程门阵列或处理器。
示例实施例在本文中描述为包括引擎或程序模块。此类引擎/程序模块可以构成软件引擎(例如,体现在机器可读介质上的代码)或硬件引擎。“硬件引擎”是能够执行某些操作的有形单元,并且可以以特定物理方式配置或布置。在各种示例实施例中,一个或多个计算机系统(例如,独立计算机系统、客户端计算机系统或服务器计算机系统)或计算机系统的一个或多个硬件引擎(例如,处理器或一组处理器)可以通过软件(例如,应用程序或应用程序部分)配置为操作以执行如本文所描述的某些操作的硬件引擎。
在一些实施例中,硬件引擎可以机械地、电子地或以它们的任何合适的组合实现。例如,硬件引擎可以包括永久性地配置为执行某些操作的专用电路或逻辑。例如,硬件引擎可以是专用处理器,诸如现场可编程门阵列(FPGA)或专用集成电路(ASIC)。硬件引擎还可以包括由软件临时配置为执行某些操作的可编程逻辑或电路。例如,硬件引擎可以包括通用处理器或由软件配置的其他可编程处理器,在这种情况下,配置的处理器成为唯一被定制以执行配置的功能的特定机器,并且不再构成通用处理器。将了解,可以由成本和时间考虑促成对在专用且持久性地配置的电路中还是在暂时地配置的电路(例如,由软件配置)中机械地实现硬件引擎的决策。
因此,术语“引擎”或“程序模块”应理解为涵盖有形实体,是物理地构造、持久性地配置(例如,硬接线)或暂时地配置(例如,编程)来以某种方式操作或执行本文中描述的某些操作的实体。考虑其中硬件引擎被临时配置(例如,编程)的实施例,硬件引擎中的每一者不需要在任何时间的任何时刻被配置或实例化。例如,在硬件引擎包括由软件被配置为专用处理器的通用处理器的情况下,通用处理器可以在不同时间分别配置为不同专用处理器(例如,包括不同硬件引擎)。软件可以相应地配置一个或多个特定处理器,例如,以在给定的时刻构成特定硬件引擎,以及在不同时刻构成不同硬件引擎。
硬件引擎可以向其他硬件引擎提供信息并从其他硬件引擎接收信息。因此,可以认为所描述的硬件引擎是通信地耦合的。在同时地存在多个硬件引擎的情况下,可以通过在硬件引擎中的两者或更多者之间或之中的信号传输(例如,通过适当的电路和总线)来实现通信。在不同时间上配置或实例化多个硬件引擎的实施例中,例如,可以通过对多个硬件引擎可访问的存储器结构中的信息的存储和检索来实现在这种硬件引擎之间的通信。例如,一个硬件引擎可以执行一个操作并将该操作的输出存储在与之通信地耦合的存储器装置中。然后,另一个硬件引擎可以在之后时间上访问存储器装置以检索和处理存储的输出。硬件引擎还可以发起与输入或输出设备的通信,并且可以在资源(例如,信息集合)上操作。
本文中描述的示例方法的各种操作可以至少部分地由暂时地配置(例如,通过软件)或持久性地配置为执行相关操作的一个或多个处理器执行。无论是临时配置还是永久配置,此类处理器都可以构成硬件引擎的实现方式。类似地,本文中描述的方法可以至少部分地是处理器实现的,其中一个或多个特定处理器是硬件的示例。此外,一个或多个处理器还可以在“云计算”环境中或作为“软件即服务”(SaaS)来支持相关操作的执行。例如,操作中的至少一些可以由一组计算机(作为包括处理器的机器的示例)执行,其中这些操作可经由网络(例如,互联网)和经由一个或多个适当的接口(例如,API)访问。
本文所述的示例方法的某些操作的执行可以分布在多个处理器间,不仅驻留在单个机器内,而且部署在多个机器上。在一些示例实施例中,处理器可以位于单个地理位置(例如,在家庭环境、办公室环境或服务器场内)。在其他示例实施例中,处理器可以分布在多个地理位置上。
本发明可以实现为系统、方法和/或计算机程序产品。计算机程序产品可以包括其上体现有用于致使处理器执行本发明的方面的计算机可读程序指令的计算机可读存储介质。
计算机可读存储介质,如在本文中使用该术语时,是非暂时性介质的形式,并且可以是可以保留和存储指令以供指令执行装置使用的任何有形装置。计算机可读存储介质可以是例如但不限于电子存储装置、磁性存储装置、光学存储装置、电磁存储装置、半导体存储装置或前述项的任何合适的组合。计算机可读存储介质以及更一般地,非暂时性介质,可以包括非易失性介质和/或易失性介质。计算机可读存储介质的更具体的示例的非穷举性列表包括:便携式计算机软盘,诸如软盘或柔性盘;硬盘;随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、静态随机存取存储器(SRAM)或任何其他存储器芯片或盒式磁带;便携式压缩盘只读存储器(CD-ROM);数字多功能盘(DVD);存储棒;固态驱动器;磁带或任何其他磁性数据存储介质;机械编码装置,诸如打孔卡或其上记录有指令的凹槽中凸起结构或具有孔图案的任何物理介质;上述项的任何联网版本;以及上述项的任何合适的组合。
非暂时性介质不同于传输介质,并且因此如本文所使用,计算机可读存储介质不应被理解为本身是瞬时信号,诸如无线电波或其他自由地传播的电磁波、通过波导或其他传输介质(例如,通过光纤电缆的光脉冲)传播的电磁波或通过接线传输的电信号。然而,非暂时性介质可以与传输介质结合操作。具体地,传输介质可以参与在非暂时性介质之间传送信息。例如,传输介质可以包括同轴电缆、铜线和/或光纤,包括包括总线702中的至少一些的接线。传输介质也可以采用声波或光波的形式,诸如在无线电波和红外数据通信期间生成的波。
可以经由例如互联网、局域网(LAN)、广域网(WAN)和/或无线网络等网络将本文中描述的计算机可读程序指令从计算机可读存储介质下载到相应计算/处理装置或下载到外部计算机或外部存储装置。网络可以包括铜传输电缆、光传输纤维、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理装置中的网络适配器卡或网络接口从网络接收计算机可读程序指令并转发计算机可读程序指令以存储在相应计算/处理装置内的计算机可读存储介质中。
用于执行本发明的操作的计算机可读程序指令可以是汇编程序指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或用一种或多种编程语言(包括面向对象的编程语言(例如Smalltalk、C++等)和常规过程编程语言(例如“C”编程语言或类似编程语言))的任意组合编写的源代码或对象代码。计算机可读程序程序代码可以完全地在用户的计算机上执行,部分地在用户的计算机上执行,作为独立的软件包执行,部分地在用户的计算机上且部分地在远程计算机上执行,或者完全地在远程计算机或服务器上执行。在后一种情况下,远程计算机可以通过任何类型的网络(包括LAN或WAN)连接到用户的计算机,或者可以连接到外部计算机(例如,通过使用互联网服务提供商(ISP)的互联网)。在一些实施例中,包括例如可编程逻辑电路、FPGA或可编程逻辑阵列(PLA)的电子电路系统可以通过利用计算机可读程序指令的状态信息以个性化电子电路系统来执行计算机可读程序指令,以便执行本发明的方面。
在本文中参考根据本发明的实施例的方法、装置(系统)和计算机程序产品的流程图说明和/或框图来描述本发明的方面。将理解,可以通过计算机可读程序指令实现流程图说明和/或框图的每个框以及流程图说明和/或框图中的框的组合。这些计算机可读程序指令可以提供给通用计算机、专用计算机的处理器或者其他可编程数据处理装置以产生机器,使得经由计算机的处理器或其他可编程数据处理装置来执行的指令创建用于实施流程图和/或框图的一个或多个框中指定的功能/动作的手段。这些计算机可读程序指令还可以存储于计算机可读存储介质中,计算机可读存储介质可以指导计算机、可编程数据处理装置和/或其他设备而以特定方式起作用,使得其中存储有指令的计算机可读存储介质包括制造物品,制造物品包括实施在流程图和/或框图的一个或多个框中指定的功能/动作的方面的指令。计算机可读程序指令还可以被加载到计算机、其他可编程数据处理装置或其他设备上,以使得在计算机、其他可编程装置或其他设备上执行一系列操作步骤,以产生计算机实施的过程,使得在计算机、其他可编程装置或其他装置上执行的指令实施在流程图和/或框图框中指定的功能/动作。
上述各种特征和过程可以彼此独立地使用,或者可以各种方式组合。所有可能的组合和子组合都旨在落入本发明的范围内。另外,在一些实现方式中,可以省略某些方法或过程块。本文中描述的方法和过程也不限于任何特定序列,并且与其相关的框或状态能够以其他适当的序列执行。例如,所描述的框或状态可以以不同于具体公开的顺序执行,或者多个框或状态可以在单个框或状态中组合。示例块或状态可以串行、并行或以某种其他方式执行。可以向所公开的示例实施例添加块或状态或从其中移除块或状态。本文中描述的示例系统和部件可以被配置为与所描述的不同。例如,与所公开的示例实施例相比,元件可以被添加、移除或重新布置。
附图中的流程图和框图说明根据本发明的各种实施例的系统、方法和计算机程序产品的具有可能的实施例的架构、功能和操作。在这方面,流程图或框图中的每个框可以表示指令的模块、段或部分,指令包括用于实施指定的逻辑功能的一个或多个可执行指令。在一些替代实施例中,框中提及的功能可以不按图中指出的次序发生。例如,依据所涉及的功能,连续示出的两个框实际上可以部分地、基本上或完全地同时执行,或者这些框有时可按相反次序执行。
应当强调,可以对上述实施例作出许多改变和修改,实施例的要素应被理解为在本发明的其他示例实施例之中。所有此修改和变化在本文中旨在被包括在本发明的范围内。尽管本文中可以通过术语“发明”单独地或共同地指代本发明的示例实施例,但这仅是为了方便起见,并且如果事实上公开多于一个,则不将本发明的范围限于任何单个公开或概念。前述描述详述了本发明的某些实施例。然而,应理解,无论前述内容在文本中显示得多么详细,都能够以许多方式来实践本发明。应注意的是,在描述本发明的某些特征或方面时使用特定术语并不暗示在该术语在本文中重新定义为限制于包括与该术语相关联的本发明的特征或方面的任何特定特性。
本文中示出的实施例被足够详细地描述以使得本领域的技术人员能够实践所公开的教导。可以使用其他实施例并从中得出其他实施例,使得在不脱离本发明的范围的情况下,可以进行结构和逻辑替换和改变。因此,不应从限制意义上理解具体实施方式,并且各种实施例的范围仅由所附权利要求书以及此类权利要求所赋予的等同物的整个范围来限定。
尽管出于基于当前认为是最实际和优选的实现方式的说明的目的详细描述了本发明,但应理解,此种细节仅用于该目的,并且本发明不限于所公开的实现方式,相反,本发明旨在覆盖在所附权利要求书的精神和范围内的修改和等同布置。例如,应理解,在可能的范围内,本发明考虑了任何实施例的一个或多个特征能够与任何其他实施例的一个或多个特征组合。
如本文所使用,术语“或”可以包括性或排他性意义来解释。此外,可以提供在本文中描述为单个实例的资源、操作或结构的多个实例。另外地,在各种资源、操作、程序模块、引擎和/或数据存储之间的边界在一定程度上是任意的,并且在具体说明性配置的上下文中说明了特定操作。可设想功能的其他分配,并且这些可以落入本发明的各种实施例的范围内。一般来讲,可以将在示例配置中呈现为独立资源的结构和功能实现为组合结构或资源。类似地,可以将呈现为单个资源的结构和功能实现为独立资源。这些和其他变型、修改、添加和改善落入如所附权利要求书所表示的本发明的实施例的范围内。因此,说明书和附图被认为是说明性的,而不是限制性的。
除非另外明确说明,或另外在如所使用的背景内理解的,否则诸如“可以”、“能够”、“可能”或“可”等条件性语言一般旨在传达某些实施例包括,而其他实施例不包括某些特征、元件和/或步骤。因此,这种条件语言通常不旨在暗示一个或多个实施例以任何方式需要特征、元素和/或步骤,或者一个或多个实施例必须包括用于在具有或不具有用户输入或提示的情况下决定这些特征、元件和/或步骤是否包括在任何特定实施例中或将在任何特定实施例中执行的逻辑。另外,应当了解,在本文中被描述为基于另一个操作、元件、部件、数据等的任何操作、元件、部件、数据等可以另外地基于一个或多个其他操作、元件、部件、数据等。因此,短语“基于”或其变体应被解释为“至少部分地基于”。

Claims (20)

1.一种计算机实现的方法,包括:
接收通过第一车辆通信网络广播的第一装置健康代码,其中所述第一装置健康代码由经历第一故障状况的第一车辆部件生成;
接收通过第二车辆通信网络广播的所述第一装置健康代码,其中所述第二车辆通信网络利用与所述第一车辆通信网络不同的通信协议;
解析所述第一装置健康代码以识别包含在所述第一装置健康代码中的第一故障信息;
检索当前车辆运行数据;
至少部分基于所述第一故障信息和所述当前车辆运行数据来确定对所述第一故障状况的车辆响应措施;
生成指示所述车辆响应措施的一个或多个控制命令;以及
将所述一个或多个控制命令发送到车辆致动系统以实现所述车辆响应措施。
2.根据权利要求1所述的计算机实现的方法,其中所述第二车辆通信网络是时间敏感型网络,其比所述第一车辆通信网络更快地传播所述第一装置健康代码。
3.根据权利要求1所述的计算机实现的方法,其中所述第一故障信息包括第一一个或多个错误代码和第一反应代码,所述第一反应代码指示对所述第一故障状况的第一建议车辆响应措施。
4.根据权利要求3所述的计算机实现的方法,其中确定对所述第一故障状况的所述车辆响应措施包括:确定将遵循由所述第一反应代码指示的所述第一建议车辆响应措施。
5.根据权利要求3所述的计算机实现的方法,其中确定对所述第一故障状况的所述车辆响应措施包括:至少部分基于所述当前车辆运行数据,确定将遵循由所述第一反应代码指示的所述第一建议车辆措施之外的替代车辆响应措施。
6.根据权利要求3所述的计算机实现的方法,还包括:
接收通过所述第一车辆通信网络和所述第二车辆通信网络中的至少一者广播的第二装置健康代码,其中所述第二装置健康代码由经历第二故障状况的第二车辆部件生成;以及
解析所述第二装置健康代码以识别包含在所述第二装置健康代码中的第二故障信息,
其中确定对所述第一故障状况的所述车辆响应措施包括:至少部分基于所述第一故障信息、所述第二故障信息和所述当前车辆运行数据,确定对所述第一故障状况和所述第二故障状况的所述车辆响应措施。
7.根据权利要求6所述的计算机实现的方法,其中所述第二故障信息包括第二一个或多个错误代码和第二反应代码,所述第二反应代码指示对所述第二故障状况的第二建议车辆响应措施。
8.根据权利要求7所述的计算机实现的方法,其中确定对所述第一故障状况和所述第二故障状况的所述车辆响应措施包括:
确定所述第一建议车辆响应措施与所述第二建议车辆响应措施冲突;
确定所述第一反应代码优先于所述第二反应代码;以及
选择所述第一建议车辆响应措施作为对所述第一故障状况和所述第二故障状况的所述车辆响应措施。
9.根据权利要求7所述的计算机实现的方法,其中确定对所述第一故障状况和所述第二故障状况的所述车辆响应措施包括:
至少部分基于所述当前车辆运行数据,确定所述第一建议车辆响应措施是比所述第二建议车辆响应措施更安全的车辆响应措施;以及
选择所述第一建议车辆响应措施作为对所述第一故障状况和所述第二故障状况的所述车辆响应措施。
10.根据权利要求1所述的计算机实现的方法,其中接收通过所述第二车辆通信网络广播的所述第一装置健康代码包括通过所述第二车辆通信网络从不同于所述第一车辆部件的第二车辆部件接收所述第一装置健康代码,并且其中所述第二车辆部件通过所述第一车辆通信网络从所述第一车辆部件接收所述第一装置健康代码。
11.一种系统,包括:
至少一个处理器;以及
至少一个存储器,其存储计算机可执行指令,其中所述至少一个处理器配置成访问所述至少一个存储器并执行所述计算机可执行指令以:
接收通过第一车辆通信网络广播的第一装置健康代码,其中所述第一装置健康代码由经历第一故障状况的第一车辆部件生成;
接收通过第二车辆通信网络广播的所述第一装置健康代码,其中所述第二车辆通信网络利用与所述第一车辆通信网络不同的通信协议;
解析所述第一装置健康代码以识别包含在所述第一装置健康代码中的第一故障信息;
检索当前车辆运行数据;
至少部分基于所述第一故障信息和所述当前车辆运行数据来确定对所述第一故障状况的车辆响应措施;
生成指示所述车辆响应措施的一个或多个控制命令;以及
将所述一个或多个控制命令发送到车辆致动系统以实现所述车辆响应措施。
12.根据权利要求11所述的系统,其中所述第二车辆通信网络是时间敏感型网络,其比所述第一车辆通信网络更快地传播所述第一装置健康代码。
13.根据权利要求11所述的系统,其中所述第一故障信息包括第一一个或多个错误代码和第一反应代码,所述第一反应代码指示对所述第一故障状况的第一建议车辆响应措施。
14.根据权利要求13所述的系统,其中所述至少一个处理器配置成通过执行所述计算机可执行指令来确定将遵循由所述第一反应代码指示的所述第一建议车辆响应措施,从而确定对所述第一故障状况的所述车辆响应措施。
15.根据权利要求13所述的系统,其中所述至少一个处理器配置成通过执行所述计算机可执行指令,以至少部分地基于所述当前车辆运行数据来确定将遵循由所述第一反应代码指示的所述第一建议车辆措施之外的替代车辆响应措施,从而确定对所述第一故障状况的所述车辆响应措施。
16.根据权利要求13所述的系统,其中所述至少一个处理器还配置成执行所述计算机可执行指令以:
接收通过所述第一车辆通信网络和所述第二车辆通信网络中的至少一者广播的第二装置健康代码,其中所述第二装置健康代码由经历第二故障状况的第二车辆部件生成;以及
解析所述第二装置健康代码以识别包含在所述第二装置健康代码中的第二故障信息,
其中所述至少一个处理器配置成通过执行所述计算机可执行指令,以至少部分基于所述第一故障信息、所述第二故障信息和所述当前车辆运行数据,确定对所述第一故障状况和所述第二故障状况的所述车辆响应措施,从而确定对所述第一故障状况的所述车辆响应措施。
17.根据权利要求16所述的系统,其中所述第二故障信息包括第二一个或多个错误代码和第二反应代码,所述第二反应代码指示对所述第二故障状况的第二建议车辆响应措施。
18.根据权利要求17所述的系统,其中所述至少一个处理器配置成通过执行所述计算机可执行指令来确定对所述第一故障状况和所述第二故障状况的所述车辆响应措施以:
确定所述第一建议车辆响应措施与所述第二建议车辆响应措施冲突;
确定所述第一反应代码优先于所述第二反应代码;以及
选择所述第一建议车辆响应措施作为对所述第一故障状况和所述第二故障状况的所述车辆响应措施。
19.根据权利要求17所述的系统,其中所述至少一个处理器配置成通过执行所述计算机可执行指令来确定对所述第一故障状况和所述第二故障状况的所述车辆响应措施以:
至少部分基于所述当前车辆运行数据,确定所述第一建议车辆响应措施是比所述第二建议车辆响应措施更安全的车辆响应措施;以及
选择所述第一建议车辆响应措施作为对所述第一故障状况和所述第二故障状况的所述车辆响应措施。
20.根据权利要求11所述的系统,其中所述至少一个处理器配置成通过执行所述计算机可执行指令以通过所述第二车辆通信网络从不同于所述第一车辆部件的第二车辆部件接收所述第一装置健康代码,从而接收通过所述第二车辆通信网络广播的所述第一装置健康代码,并且其中所述第二车辆部件通过所述第一车辆通信网络从所述第一车辆部件接收所述第一装置健康代码。
CN202280035716.8A 2021-05-19 2022-05-18 混合车辆通信网络上的装置健康代码广播 Pending CN117461061A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US17/324,924 US11887409B2 (en) 2021-05-19 2021-05-19 Device health code broadcasting on mixed vehicle communication networks
US17/324,924 2021-05-19
PCT/US2022/029794 WO2022245916A1 (en) 2021-05-19 2022-05-18 Device health code broadcasting on mixed vehicle communication networks

Publications (1)

Publication Number Publication Date
CN117461061A true CN117461061A (zh) 2024-01-26

Family

ID=84104030

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202280035716.8A Pending CN117461061A (zh) 2021-05-19 2022-05-18 混合车辆通信网络上的装置健康代码广播

Country Status (3)

Country Link
US (1) US11887409B2 (zh)
CN (1) CN117461061A (zh)
WO (1) WO2022245916A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11899941B2 (en) * 2021-11-11 2024-02-13 Samsung Electronics Co., Ltd. Storage device and operating method thereof
US20230196850A1 (en) * 2021-12-21 2023-06-22 Snap-On Incorporated Method and system for testing matched components of vehicle

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7092803B2 (en) 2000-08-18 2006-08-15 Idsc Holdings, Llc Remote monitoring, configuring, programming and diagnostic system and method for vehicles and vehicle components
EP2737457B1 (en) 2011-07-26 2019-11-20 United Parcel Service Of America, Inc. Systems and methods for managing fault codes
US9406177B2 (en) 2013-12-20 2016-08-02 Ford Global Technologies, Llc Fault handling in an autonomous vehicle
DE102014215458A1 (de) * 2014-08-05 2016-02-11 Zf Friedrichshafen Ag Darstellung von Fehlercodes mittels eines fahrzeugeigenen Darstellungsmittels
GB2539253B (en) * 2015-06-12 2018-11-28 Jaguar Land Rover Ltd Control system, vehicle and method
CN111886552B (zh) 2017-06-08 2024-03-26 康明斯公司 用于隔离车辆的失效模式的诊断系统和方法
WO2019117184A1 (ja) * 2017-12-15 2019-06-20 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 車載ネットワーク異常検知システム及び車載ネットワーク異常検知方法
US10331128B1 (en) * 2018-04-20 2019-06-25 Lyft, Inc. Control redundancy
US20200136894A1 (en) * 2018-10-24 2020-04-30 General Electric Company System and method for establishing reliable time-sensitive networks
JP7400820B2 (ja) * 2019-07-09 2023-12-19 住友電気工業株式会社 車載通信システム、車載装置および車両通信方法

Also Published As

Publication number Publication date
US11887409B2 (en) 2024-01-30
US20220375274A1 (en) 2022-11-24
WO2022245916A1 (en) 2022-11-24

Similar Documents

Publication Publication Date Title
US11144054B2 (en) Safety controls for network connected autonomous vehicle
EP3370389B1 (en) Cooperative cloud-edge vehicle anomaly detection
US20210011908A1 (en) Model-based structured data filtering in an autonomous vehicle
US11961337B2 (en) Self-maintaining autonomous vehicle procedure
CN117461061A (zh) 混合车辆通信网络上的装置健康代码广播
US11962664B1 (en) Context-based data valuation and transmission
US11897490B2 (en) Autonomous driving vehicle health monitoring
CN112249035B (zh) 基于通用数据流架构的自动驾驶方法、装置及设备
CN112747944A (zh) 自动车辆损坏检测
CN114348025A (zh) 一种车辆驾驶监控系统、方法、设备及存储介质
CN110392396B (zh) 用于连接车辆的基于云的网络优化器
US10703383B1 (en) Systems and methods for detecting software interactions for individual autonomous vehicles
CN117377991A (zh) 装置级故障检测
US20240010212A1 (en) Automatic testing of autonomous vehicles
US11776406B2 (en) System and method for detecting severe road events
US11048261B1 (en) Systems and methods for evaluating autonomous vehicle software interactions for proposed trips
US11993287B2 (en) Fleet-level AV simulation system and method
US20210012220A1 (en) Rules-based structured data filtering in an autonomous vehicle
US11233717B2 (en) System and method for collaborative centralized latency characterization
WO2024043011A1 (ja) 車両予測機能の検証
US20220237961A1 (en) Systems and methods for detecting software interactions for autonomous vehicles within changing environmental conditions
WO2023069635A1 (en) Vehicle prognostics utilizing psuedonymous logging and directives

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination