WO2024139836A1 - 用于车辆的方法和装置 - Google Patents

用于车辆的方法和装置 Download PDF

Info

Publication number
WO2024139836A1
WO2024139836A1 PCT/CN2023/132642 CN2023132642W WO2024139836A1 WO 2024139836 A1 WO2024139836 A1 WO 2024139836A1 CN 2023132642 W CN2023132642 W CN 2023132642W WO 2024139836 A1 WO2024139836 A1 WO 2024139836A1
Authority
WO
WIPO (PCT)
Prior art keywords
state
vehicle
processing
plug
processing logic
Prior art date
Application number
PCT/CN2023/132642
Other languages
English (en)
French (fr)
Inventor
龚轶凡
隋清宇
Original Assignee
北京图森智途科技有限公司
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 北京图森智途科技有限公司 filed Critical 北京图森智途科技有限公司
Publication of WO2024139836A1 publication Critical patent/WO2024139836A1/zh

Links

Abstract

本公开涉及一种用于车辆的方法和装置。车辆包括多个处理节点且能够响应于进入一组系统状态中的目标系统状态而操作。该方法包括:获取多个处理节点中的每个处理节点的至少一个状态报告,每个状态报告指示处理节点的相应一个处理逻辑处于正常状态或异常状态,其中,每个处理逻辑的异常状态根据映射关系将导致一组系统状态中一个或多个系统状态不可用;基于映射关系和车辆的当前任务所涉及的多个处理节点的处理逻辑子集的状态报告,来生成聚合状态,其中,聚合状态指示一组系统状态中各系统状态各自的可用性;以及基于聚合状态,确定车辆在当前任务下要进入的一组系统状态中的目标系统状态。

Description

用于车辆的方法和装置
本申请要求在2022年12月27日提交中国专利局、申请号为202211690085.1、发明名称为“用于车辆的方法和装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本公开涉及智能交通领域,特别涉及自动驾驶技术,具体涉及一种用于车辆的方法、装置、电子设备、车辆、计算机可读存储介质和计算机程序产品。
背景技术
目前,随着交通智能化的发展,越来越多的传统汽车厂商、高科技公司正投入车辆自动驾驶的研究中。自动驾驶研究的重要一环是自动驾驶人机交互。
自动驾驶人机交互的基本要求包括当用户无法及时响应驾驶自动化系统发出的接管请求时,驾驶自动化系统应执行最小风险策略(Minimal Risk Maneuver,MRM),从而保证车辆安全运行。根据相关标准,MRM被定义为在驾驶自动化系统或用户无法执行动态驾驶任务(Dynamic Driving Task,DDT)或动态驾驶任务接管(DDT fallback)时,驾驶自动化系统所采取的降低风险的措施。根据MRM的定义,执行MRM的目标是保证车辆安全运行,这旨在使车辆进入最小风险状态(Minimal Risk Condition,MRC)。换言之,在自动驾驶人机交互中,当用户无法及时接管驾驶任务时,系统应能够自动执行MRM以便使车辆进入MRC。MRC可被定义为当车辆无法完成预定的行程时,由用户或驾驶自动化系统执行并最终使车辆事故风险达到可接受的状态。
对于如何能够设计出改进的机制以确保车辆在执行MRM时顺利地进入MRC,成为自动驾驶研究的重要工作。
发明内容
鉴于前述技术问题,本公开提供了一种用于车辆的方法、装置、电子设备、车辆、计算机可读存储介质和计算机程序产品。
根据本公开的一个方面,提供了一种用于车辆的方法,所述车辆包括多个处理节点,所述车辆能够响应于进入一组系统状态中的目标系统状态而操作,所述方法包括:获取所述多个处理节点中的每个处理节点的至少一个状态报告,每个状态报告指示该处理节点的相应一个处理逻辑处于正常状态或异常状态,其中,每个处理逻辑的异常状态根据映射关系将导致所述一组系统状态中一个或多个系统状态不可用;基于所述映射关系和所述车辆的当前任务所涉及的所述多个处理节点的处理逻辑子集的状态报告,来生成聚合状态,其中,所述聚合状态指示所述一组系统状态中各系统状态各 自的可用性;以及基于所述聚合状态,确定所述车辆在所述当前任务下要进入的所述一组系统状态中的所述目标系统状态。
根据本公开的另一方面,提供了一种用于车辆的装置,所述车辆包括多个处理节点,所述车辆能够响应于进入一组系统状态中的目标系统状态而操作,所述装置包括:第一模块,用于获取所述多个处理节点中的每个处理节点的至少一个状态报告,每个状态报告指示该处理节点的相应一个处理逻辑处于正常状态或异常状态,其中,每个处理逻辑的异常状态根据映射关系将导致所述一组系统状态中一个或多个系统状态不可用;第二模块,用于基于所述映射关系和所述车辆的当前任务所涉及的所述多个处理节点的处理逻辑子集的状态报告,来生成聚合状态,其中,所述聚合状态指示所述一组系统状态中各系统状态各自的可用性;以及第三模块,用于基于所述聚合状态确定所述车辆在所述当前任务下要进入的所述一组系统状态中的所述目标系统状态。
根据本公开的另一方面,提供了一种电子设备,包括:至少一个处理器;以及至少一个存储器,存储有指令,所述指令被所述至少一个处理器执行时使所述至少一个处理器执行本公开所述的方法。
根据本公开的另一方面,提供了一种车辆,所述车辆能够响应于进入一组系统状态中的目标系统状态而操作,所述车辆包括:至少一个处理器;以及至少一个存储器,存储有指令,所述指令被所述至少一个处理器执行时使所述至少一个处理器执行本公开所述的方法。
根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,该计算机指令用于使计算机执行本公开所述的方法。
根据本公开的一个或多个实施例,用于车辆的方法和装置提供所述车辆在当前任务下要进入的一组系统状态中的目标系统状态。通过获取车辆的每个处理节点的状态报告,能够基于映射关系和车辆当前任务信息生成指示系统状态可用性的聚合状态,从而确定目标系统状态,使得在车辆的处理节点中的一个或多个处理节点异常的情况下能够使车辆事故风险达到可接受的状态,保证车辆运行的安全性。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其他特征将通过以下的说明书而变得容易理解。
附图说明
附图示例性地示出了实施例并且构成说明书的一部分,与说明书的文字描述一起用于讲解实施例的示例性实施方式。所示出的实施例仅出于例示的目的,并不限制权利要求的范围。在所有附图中,相同的附图标记指代类似但不一定相同的要素。
图1示出了根据本公开的实施例的可以在其中实现本文公开的各种技术的车辆的示意图;
图2示出了根据本公开的实施例的用于车辆的方法的流程图;
图3示出了根据本公开的实施例的示例性车辆的结构示意图;
图4示出了根据本公开的实施例的示例性真值表的示意图;
图5示出了根据本公开的实施例的用于车辆的装置的框图;
图6示出了根据本公开的实施例的示例性计算装置的结构框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
在本公开中,除非另有说明,否则使用术语“第一”、“第二”等来描述各种要素而不意图限定这些要素的位置关系、时序关系或重要性关系,这种术语只是用于将一个元件与另一元件区分开。在一些示例中,第一要素和第二要素可以指向该要素的同一实例,而在某些情况下,基于上下文的描述,它们也可以指代不同实例。
在本公开中对各种所述示例的描述中所使用的术语只是为了描述特定示例的目的,而并非旨在进行限制。除非上下文另外明确地表明,如果不特意限定要素的数量,则该要素可以是一个也可以是多个。此外,本公开中所使用的术语“和/或”涵盖所列出的项目中的任何一个以及全部可能的组合方式。
在本公开中对各种示例的描述中,术语“车辆”在本申请中广泛地解释为包括任何移动物体,包括例如汽车、卡车、厢式货车、半挂车、高尔夫球车、越野车辆、仓库运输车辆或农用车以及行驶在轨道上的运输工具,例如电车或火车及其他有轨车辆。
相关技术中的车辆可包括多个处理节点,每个处理节点可管理各自相应的逻辑功能性,例如,感测、定位、决策、控制等等。这些处理节点中的一些处理节点可具有容错能力。当此类处理节点出现异常(例如,短暂异常)时,其他处理节点的正常操作不会受到影响。然而,另一些处理节点则不具有容错能力。因而,一旦此类处理节点出现异常便会影响整个车辆的安全运行,此时需要将车辆紧急切换进应急状态中。除此之外,不同处理节点的重要性等级也显著不同。例如,对于摄像头而言,尽管其异常状况可能会导致感测结果出现偏差,但可通过其他摄像头的数据对偏差做出修正,从而不至于影响整个车辆的安全运行。例如,可存在具有感测功能性的处理节点(例如,摄像头处理节点),其异常状况将导致车辆无法正常运行但仍可缓慢停车。例如,可存在具有决策功能性的处理节点(例如,路径规划处理节点),其异常状况将导致车辆无法正常运行且必须立即急停,等等。
在相关技术中,不同处理节点在容错能力、本身的功能逻辑性以及相对于车辆安全运行而言的重要性等级等方面各自存在差异,以至于当车辆的某个(些)处理节点出现异常时无法在整个车辆的层面上确定目标系统状态以使车辆进入MRC(例如,当一个处理节点突然异常时应该立即紧急停车还是应该继续正常行驶一时间段以便等待该处理节点恢复,当某个(些)处理节点状况异常时是否应立即靠边停车等等), 从而难以保证车辆运行的安全性。
对此,本公开提供了用于车辆的方法和装置,以便为车辆提供在当前任务下要进入的一组系统状态中的目标系统状态。通过获取车辆的每个处理节点的状态报告,能够基于映射关系和车辆当前任务信息生成指示系统状态可用性的聚合状态,从而确定目标系统状态,使得在车辆的处理节点中的一个或多个处理节点异常的情况下能够使车辆事故风险达到可接受的状态,保证车辆运行的安全性。
下面将结合附图详细描述本公开的实施例。
图1是可以在其中实现本文公开的各种技术的车辆100的示意图。车辆100可以是轿车、卡车、摩托车、公共汽车、船只、飞机、直升机、割草机、挖土机、摩托雪橇、航空器、旅游休闲车、游乐园车辆、农场装置、建筑装置、有轨电车、高尔夫车、火车、无轨电车,或其它车辆。车辆100可以完全地或部分地以自动驾驶模式进行运行。车辆100在自动驾驶模式下可以控制其自身,例如车辆100可以确定车辆的当前状态以及车辆所处环境的当前状态,确定在该环境中的至少一个其它车辆的预测行为,确定该至少一个其它车辆执行所预测行为的可能性所对应信任等级,并且基于所确定的信息来控制车辆100自身。在处于自动驾驶模式时,车辆100可以在无人交互的情况下运行。
车辆100可以包括各种车辆系统,例如驱动系统142、传感器系统144、控制系统146、用户接口系统148、计算系统150以及通信系统152。车辆100可以包括更多或更少的系统,每个系统可以包括多个单元。进一步地,车辆100的每个系统和单元之间可以是互联的。例如,计算系统150能够与驱动系统142、传感器系统144、控制系统146、用户接口系统148、和通信系统152中的一个或多个进行数据通信。从而,车辆100的一个或多个所描述的功能可以被划分为附加的功能性部件或者实体部件,或者结合为数量更少的功能性部件或者实体部件。在更进一步的例子中,附加的功能性部件或者实体部件可以增加到如图1所示的示例中。
驱动系统142可以包括为车辆100提供动能的多个可操作部件(或单元)。在一个实施例中,驱动系统142可以包括发动机或电动机、车轮、变速器、电子系统、以及动力(或动力源)。发动机或者电动机可以是如下装置的任意组合:内燃机、电机、蒸汽机、燃料电池发动机、丙烷发动机、或者其它形式的发动机或电动机。在一些实施例中,发动机可以将一种动力源转换为机械能。在一些实施例中,驱动系统142可以包括多种发动机或电动机。例如,油电混合车辆可以包括汽油发动机和电动机,也可以包括其它的情况。
车辆100的车轮可以是标准车轮。车辆100的车轮可以是多种形式的车轮,包括独轮、双轮、三轮、或者四轮形式,例如轿车或卡车上的四轮。其它数量的车轮也是可以的,例如六轮或者更多的车轮。车辆100的一个或多个车轮可被操作为与其他车轮的旋转方向不同。车轮可以是至少一个与变速器固定连接的车轮。车轮可以包括金属与橡胶的结合,或者是其他物质的结合。变速器可以包括可操作来将发动机的机械 动力传送到车轮的单元。出于这个目的,变速器可以包括齿轮箱、离合器、差动齿轮和传动轴。变速器也可以包括其它单元。传动轴可以包括与车轮相匹配的一个或多个轮轴。电子系统可以包括用于传送或控制车辆100的电子信号的单元。这些电子信号可用于启动车辆100中的多个灯、多个伺服机构、多个电动机,以及其它电子驱动或者控制装置。动力源可以是全部或部分地为发动机或电动机提供动力的能源。也即,发动机或电动机能够将动力源转换为机械能。示例性地,动力源可以包括汽油、石油、石油类燃料、丙烷、其它压缩气体燃料、乙醇、燃料电池、太阳能板、电池以及其它电能源。动力源可以附加的或者可选地包括燃料箱、电池、电容、或者飞轮的任意组合。动力源也可以为车辆100的其它系统提供能量。
传感器系统144可以包括多个传感器,这些传感器用于感测车辆100的环境和条件的信息。例如,传感器系统144可以包括惯性测量单元(IMU)、GNSS(全球导航卫星系统)收发器(例如全球定位系统(GPS)收发器)、雷达(RADAR)、激光测距仪/LIDAR(或其它距离测量装置)、声学传感器、超声波传感器以及相机或图像捕捉装置。传感器系统144可以包括用于监控车辆100的多个感应器(例如,氧气(O2)监控器、油量表传感器、发动机油压传感器,以及温度、湿度、压力传感器等等)。还可以配置其它传感器。包括在传感器系统144中的一个或多个传感器可以被单独驱动或者被集体驱动,以更新一个或多个传感器的位置、方向,或者这二者。
IMU可以包括传感器的结合(例如加速器和陀螺仪),用于基于惯性加速来感应车辆100的位置变化和方向变化。GPS收发器可以是任何用于估计车辆100的地理位置的传感器。出于该目的,GPS收发器可以包括接收器/发送器以提供车辆100相对于地球的位置信息。需要说明的是,GPS是全球导航卫星系统的一个示例,因此,在一些实施例中,GPS收发器可以替换为北斗卫星导航系统收发器或者伽利略卫星导航系统收发器。雷达单元可以使用无线电信号来感应车辆100所在环境中的对象。在一些实施例中,除感应对象之外,雷达单元还可以用于感应接近车辆100的物体的速度和前进方向。激光测距仪或LIDAR单元(或者其它距离测量装置)可以是任何使用激光来感应车辆100所在环境中的物体的传感器。在一个实施例中,激光测距仪/LIDAR单元可以包括激光源、激光扫描仪、以及探测器。激光测距仪/LIDAR单元用于以连续(例如使用外差检测)或者不连续的检测模式进行工作。相机可以包括用于捕捉车辆100所在环境的多个图像的装置。相机可以是静态图像相机或者动态视频相机。
控制系统146用于控制对车辆100及其部件(或单元)的操作。相应地,控制系统146可以包括各种单元,例如转向单元、动力控制单元、制动单元和导航单元。
转向单元可以是调整车辆100前进方向的机械的组合。动力控制单元(例如可以为油门),例如可以被用于控制发动机的运转速度,进而控制车辆100的速度。制动单元可以包括用于对车辆100进行减速的机械的组合。制动单元可以以标准方式利用摩擦力来使车辆减速。在其他实施例中,制动单元可以将车轮的动能转化为电流。制 动单元也可以采用其它形式。导航单元可以是任何为车辆100确定驾驶路径或路线的系统。导航单元还可以在车辆100行进的过程中动态的更新驾驶路径。控制系统146还可以附加地或者可选地包括其它未示出或未描述的部件(或单元)。
用户接口系统148可以用于允许车辆100与外部传感器、其它车辆、其它计算机系统和/或车辆100的用户之间的互动。例如,用户接口系统148可以包括标准视觉显示装置(例如,等离子显示器、液晶显示器(LCD)、触屏显示器、头戴显示器,或其它类似的显示器),扬声器或其它音频输出装置,麦克风或者其它音频输入装置。例如,用户接口系统148还可以包括导航接口以及控制车辆100的内部环境(例如温度、风扇,等等)的接口。
通信系统152可以为车辆100提供与一个或多个设备或者周围其它车辆进行通信的方式。在一个示例性的实施例中,通信系统152可以直接或者通过通信网络与一个或多个设备进行通信。通信系统152例如可以是无线通信系统。例如,通信系统可以使用3G蜂窝通信(例如CDMA、EVDO、GSM/GPRS)或者4G蜂窝通信(例如WiMAX或LTE),还可以使用5G蜂窝通信。可选地,通信系统可以与无线本地局域网(WLAN)进行通信(例如,使用)。在一些实施例中,通信系统152可以直接与一个或多个设备或者周围其它车辆进行通信,例如,使用红外线,或者ZIGBEE。其它无线协议,例如各种车载通信系统,也在本申请公开的范围之内。例如,通信系统可以包括一个或多个专用短程通信(DSRC)装置、V2V装置或者V2X装置,这些装置会与车辆和/或路边站进行公开或私密的数据通信。
计算系统150能控制车辆100的部分或者全部功能。计算系统150中的自动驾驶控制单元可以用于识别、评估、以及避免或越过车辆100所在环境中的潜在障碍。通常,自动驾驶控制单元可以用于在没有驾驶员的情况下控制车辆100,或者为驾驶员控制车辆提供辅助。在一些实施例中,自动驾驶控制单元用于将来自GPS收发器的数据、雷达数据、LIDAR数据、相机数据、以及来自其它车辆系统的数据结合起来,来确定车辆100的行驶路径或轨迹。自动驾驶控制单元可以被激活以使车辆100能够以自动驾驶模式被驾驶。
计算系统150可以包括至少一个处理器(其可以包括至少一个微处理器),处理器执行存储在非易失性计算机可读介质(例如数据存储装置或存储器)中的处理指令(即机器可执行指令)。计算系统150也可以是多个计算装置,这些计算装置分布式地控制车辆100的部件或者系统。在一些实施例中,存储器中可以包含被处理器执行来实现车辆100的各种功能的处理指令(例如,程序逻辑)。在一个实施例中,计算系统150能够与驱动系统142、传感器系统144、控制系统146、用户接口系统148、和/或通信系统152进行数据通信。计算系统中的接口用于促进计算系统150和驱动系统142、传感器系统144、控制系统146、用户接口系统148、以及通信系统152之间的数据通信。
存储器还可以包括其它指令,包括用于数据发送的指令、用于数据接收的指令、 用于互动的指令、或者用于控制驱动系统142、传感器系统144、或控制系统146或用户接口系统148的指令。
除存储处理指令之外,存储器可以存储多种信息或数据,例如图像处理参数、道路地图、和路径信息。在车辆100以自动方式、半自动方式和/或手动模式运行的期间,这些信息可以被车辆100和计算系统150所使用。
尽管自动驾驶控制单元被示为与处理器和存储器分离,但是应当理解,在一些实施方式中,自动驾驶控制单元的某些或全部功能可以利用驻留在一个或多个存储器(或数据存储装置)中的程序代码指令来实现并由一个或多个处理器执行,并且自动驾驶控制单元在某些情况下可以使用相同的处理器和/或存储器(或数据存储装置)来实现。在一些实施方式中,自动驾驶控制单元可以至少部分地使用各种专用电路逻辑,各种处理器,各种现场可编程门阵列(“FPGA”),各种专用集成电路(“ASIC”),各种实时控制器和硬件来实现。
计算系统150可以根据从各种车辆系统(例如,驱动系统142,传感器系统144,以及控制系统146)接收到的输入,或者从用户接口系统148接收到的输入,来控制车辆100的功能。例如,计算系统150可以使用来自控制系统146的输入来控制转向单元,来避开由传感器系统144检测到的障碍物。在一个实施例中,计算系统150可以用来控制车辆100及其系统的多个方面。
虽然图1中显示了集成到车辆100中的各种部件(或单元),这些部件(或单元)中的一个或多个可以搭载到车辆100上或单独关联到车辆100上。例如,计算系统可以部分或者全部地独立于车辆100存在。从而,车辆100能够以分离的或者集成的设备单元的形式而存在。构成车辆100的设备单元之间可以以有线通信或者无线通信的方式实现相互通信。在一些实施例中,可以将附加部件或单元添加到各个系统或从系统中移除一个或多个以上的部件或单元(例如,图1所示的LiDAR或雷达)。
图1的系统100可以以各种方式配置和操作,以使得能够应用根据本公开所描述的用于车辆的方法以及适用于本公开所描述的用于车辆的系统。
在本文档中,当提到术语车辆时,其可以指自动驾驶车辆、无人驾驶车辆、辅助驾驶车辆等任何合适类型的车辆。即,本公开的发明构思可应用于包括自动驾驶车辆、无人驾驶车辆、辅助驾驶车辆等车辆在内的任何合适类型的车辆,本公开并不旨在对车辆的类型进行限制。
根据本公开的一个方面,首先提供了一种用于车辆的方法。图2示出了根据本公开的实施例的用于车辆的方法200的流程图。
根据本公开的实施例,车辆可包括一个或多个处理节点。
如本文使用的,术语“处理节点”可以指具有相应功能性的程序模块。此类程序模块可以与硬件实体相关联,因而术语“处理节点”可被视为在相应硬件实体上运行的进程、子进程、控制器、对象、可执行文件、例程、程序、软件等或其任何组合,以用于实现或承载相应硬件实体的功能。硬件实体可以指与计算和/或通信能力有关 的组件、电路、接口、固件(例如,其上写入程序的可擦除可编程只读存储器(EPROM)或电可擦除可编程只读存储器(EEPROM))、装置、模块、子系统等等。当然,处理节点也可以不与任何硬件实体相关联,本公开对此不进行任何限制。
根据本公开的实施例,车辆可响应于进入一组系统状态中的目标系统状态而操作。
在一些实施例中,车辆的一组系统状态可以是预定义的。
在一些实施例中,车辆的一组系统状态可以与最小风险策略(MRM)相关联,在这种意义上,车辆的一组系统状态可以指当车辆无法执行动态驾驶任务(DDT)或车辆的用户无法执行动态驾驶任务接管(DDT fallback)时车辆为了能够实现最小风险状态MRC所要采取的可选系统状态的集合。作为示例而非限制,当目标系统状态为可正常运行时,车辆可响应于进入该目标系统状态而继续完成预定的行程,例如,按导航路径继续行驶前往目的地、按泊车规划路径继续完成车辆的泊车、在巡航模式下在一车速区间内继续平稳行驶等等。
如图2所示,方法200包括以下步骤:
步骤S210,获取多个处理节点中的每个处理节点的至少一个状态报告,每个状态报告指示处理节点的相应一个处理逻辑处于正常状态或异常状态,其中,每个处理逻辑的异常状态根据映射关系将导致一组系统状态中一个或多个系统状态不可用;
步骤S220,基于映射关系和车辆的当前任务所涉及的多个处理节点的处理逻辑子集的状态报告,来生成聚合状态,其中,聚合状态指示一组系统状态中各系统状态各自的可用性;以及
步骤S230,基于聚合状态,确定车辆在当前任务下要进入的一组系统状态中的目标系统状态。
下面详细描述方法200的各个步骤。
在步骤S210中,可以首选获取多个处理节点中的每个处理节点的至少一个状态报告。
在一些实施例中,每个处理节点可包括一个或多个状态报告。对于处理节点的一个状态报告而言,该状态报告可以与处理节点的一个处理逻辑对应。也就是说,一个处理节点可包括不止一个处理逻辑。作为示例而非限制,对于具有感测功能性的摄像头处理节点camera0而言,其可包括两个处理逻辑camera0_healthy和camera0_node,其中,camera0_healthy可用于表示摄像头的感测功能性是否正常,而camera0_node可用于表示摄像头处理节点是否正常(例如,摄像头处理节点是否与其他处理节点处于通信等)。
如本文使用的,术语“处理逻辑”可以指用于描述处理节点所实现的功能性和/或处理节点本身的能力(例如,通信能力、计算能力等)的状态的逻辑表示。沿用上述摄像头处理节点camera0的示例,处理逻辑camera0_healthy可以描述摄像头处理节点camera0所实现的感测功能性的状态,而处理逻辑camera0_node可以描述摄像头处理节点camera0本身的能力(例如,与其他处理节点电通信以便例如从电源节点 汲取电力和/或向下游处理节点传送所捕获的图像帧等等)的状态。
在一些实施例中,每个状态报告可指示处理节点的相应一个处理逻辑是否正常(即,处理逻辑处于正常状态还是处于异常状态)。
在一些实施例中,每个状态报告可包括处理节点的一个处理逻辑及其对应的状态。状态报告也可称之为状态标识或状态量,例如状态量为1代表对应处理逻辑处于异常状态,状态量为0代表处理逻辑处于正常状态,反之亦可。
在一些实施例中,处理逻辑的状态可以用二值逻辑(例如,布尔值true/false)、三值逻辑、n值逻辑等来表示,本公开对此不进行任何限制。
在一些实施例中,处理逻辑的状态可至少包括指示处理逻辑出现异常状况的异常状态。
作为示例而非限制,每个处理节点的(多个)状态报告可以在被获取之际被实时地生成。相应地,由所获取的每个状态报告指示的处理节点的一个处理逻辑的状态是实时状态。作为另一示例,每个处理节点的(多个)状态报告可以按预定时间间隔生成(例如,20ms的时间间隔)。相应地,由所获取的每个状态报告指示的处理节点的一个处理逻辑的状态是历史状态。在后一种情形中,每个状态报告可附加地包括状态报告的生成时间戳,以供与当前时间进行比较,从而确定该状态报告所包括的处理逻辑的历史状态的有效性,尤其是在历史状态指示处理逻辑处于正常状态的情况下。
在一些实施例中,对于每个处理节点所包括的不止一个处理逻辑,映射关系可以标识每个处理逻辑出现异常状况时将会导致哪个(些)系统状态不可用。
根据本公开的实施例,映射关系能够以处理逻辑的细粒度反映导致相应系统状态不可用的原因。
根据本公开的实施例,取决于映射关系,每个处理逻辑的异常状态可导致一组系统状态中一个或多个系统状态不可用。
在一些实施例中,对于相同处理节点所包括的多个处理逻辑,每个处理逻辑的异常状态可导致一组系统状态中的不同的系统状态不可用。
作为示例而非限制,假设存在一组预定义系统状态[a,b,c]以及处理节点Node0,其中,Node0包括两个处理逻辑,分别记为Node0_logic0和Node0_logic1。于是,取决于映射关系A,Node0_logic0的异常状态可导致系统状态a不可用,而Node0_logic1的异常状态可导致系统状态b不可用。替换地,取决于另一映射关系B,Node0_logic0的异常状态可导致系统状态a不可用,而Node0_logic1的异常状态可导致系统状态a和b不可用。替换地,取决于另一映射关系C,Node0_logic0的异常状态可导致系统状态a不可用,而Node0_logic1的异常状态可导致系统状态c不可用。
在一些实施例中,对于相同处理节点所包括的多个处理逻辑,每个处理逻辑的异常状态可导致一组系统状态中的(多个)相同的系统状态不可用。
需要指出的是,上面描述的示例仅出于解说的目的进行描述,而非旨在进行任何限制。
根据本公开的实施例,对于车辆而言,仅存在用于在处理节点的处理逻辑的异常状态与车辆的相应系统状态的不可用性之间建立映射的唯一映射关系。
在步骤S220中,可以基于映射关系和车辆的当前任务所涉及的多个处理节点的处理逻辑子集的状态报告来生成聚合状态。
作为示例而非限制,车辆任务(例如,当前任务)可包括高速路段行驶任务、非高速路段行驶任务、停车任务、倒车任务、装卸货任务等等。
可以理解的是,可根据车辆用户的偏好和/或车辆性能(包括但不限于车辆的自动驾驶等级、车辆的自动驾驶功能)等来进一步细分车辆的当前任务,本公开对此不进行任何限制。例如,可将高速路段行驶任务细分为定速巡航行驶任务、自适应巡航行驶任务等。例如,可将非高速路段行驶任务细分为城市道路行驶任务、乡村道路行驶任务、厂矿道路行驶任务等。例如,可将停车任务细分为停车场内停车任务、路边停车任务、紧急停车任务等。
在一些实施例中,当前任务所涉及的多个处理节点的处理逻辑子集可包括车辆的多个处理节点中的与当前任务相关联的一个或多个处理节点中的每一者的部分或全部处理逻辑。
根据本公开的实施例,聚合状态可指示一组系统状态中各系统状态各自的可用性。
在一些实施例中,由聚合状态指示的可用系统状态可充当目标系统状态的候选系统状态。
在步骤S230中,可以基于聚合状态确定车辆在当前任务下要进入的一组系统状态中的目标系统状态,也即从该一组系统状态中确定车辆在当前任务下要进入的目标系统状态。
在一些示例中,可以由车辆的下位机(例如,车辆控制单元VCU)基于聚合状态连同车辆的传动机构(例如,制动装置、驱动装置、转向装置等)的状态(例如,历史状态、实时状态等)来确定车辆在当前任务下要进入的目标系统状态。例如,当聚合状态指示系统状态1“可正常运行”和系统状态2“可靠边停车”可用时,车辆的下位机可将聚合状态与车辆传动机构的状态(例如,刹车警示灯被点亮)一同纳入考虑以确定车辆在当前任务下将进入系统状态2(即,靠边停车),以便对车辆的制动装置进行安全检查,防止更危险的状况发生。又例如,当聚合状态指示系统状态2“可靠边停车”和系统状态3“可紧急刹车”可用时,车辆的下位机可将聚合状态与车辆传动机构的状态(例如,方向盘警示灯被点亮)一同纳入考虑以确定车辆在当前任务下将进入系统状态3(即,紧急刹车),以便立即呼叫车辆紧急服务,防止因转向装置随时可能发生的故障所导致的车辆倾翻。
根据本公开的实施例,目标系统状态是指在将当前任务所涉及的所有处理逻辑的状态纳入考虑的情况下,车辆为了能够实现最小风险状态MRC所要采取的系统状态。
根据本公开的实施例,针对相关技术中存在的当车辆的某个(些)处理节点出现异常时无法在整个车辆的层面上确定目标系统状态以使车辆进入MRC的缺陷,上述 方法200提供了一种新的用于车辆的方法,以便为车辆提供在当前任务下要进入的一组系统状态中的目标系统状态。
借助于方法200,通过获取车辆的每个处理节点的状态报告,能够基于映射关系和车辆当前任务信息生成指示系统状态可用性的聚合状态,从而确定目标系统状态,使得在车辆的处理节点中的一个或多个处理节点异常的情况下能够使车辆事故风险达到可接受的状态,保证车辆运行的安全性。
发明人洞察到,当车辆进行维修保养或者车载系统升级时,与特定车辆任务相关联的处理逻辑子集可能会发生改变,例如,归因于车辆的组件、电路、接口、固件、装置、模块、子系统等的添加、删除、更换、修改、升级等。作为示例而非限制,在激光雷达组件被新添加到车辆的情况下,原本并不涉及与其相对应的激光雷达处理节点的(多个)处理逻辑的车辆任务(例如,高速路段行驶任务、非高速路段行驶任务、停车任务等等)现在可以涉及激光雷达处理节点的这些处理逻辑。换言之,激光雷达处理节点的部分或全部处理逻辑的异常状况现在也将影响此类车辆任务的正常进行。因此,这种改变将会由于未针对车辆维修保养或车载系统升级做出相应调整(例如,没有向负责生成聚合状态的功能模块告知上面描述的因车辆的组件、电路、接口、固件、装置、模块、子系统等的改变所导致的与特定车辆任务相关联的处理逻辑子集的改变)而影响所生成的聚合状态的准确性。鉴于此,本公开提供了用于车辆的多个插件。
如本文使用的,术语“插件”可以指出于扩展的目的、遵循一定规范的应用程序接口编写出来的程序,或者可以指可插拔的、用以在其上安装电子元件或存储可执行指令且通过连接器实现对外电通信的组件等等,本公开对此不进行任何限制。
根据本公开的实施例,车辆可以附加地配置有多个插件。在一些示例中,车辆的自动驾驶系统可以包括具有可插拔形式的插件,即,插件可表现为实体的组件。在另一些示例中,插件可以以可执行指令或代码形式被写入车辆的自动驾驶系统的可编程逻辑器件中。由此,每当车辆进行维修保养或车载系统升级时,便可对插件进行更新(例如,更换可插拔形式的实体插件或盖写软件代码形式的插件),以使得能够保持对关于车辆的组件、电路、接口、固件、装置、模块、子系统等所作的添加、删除、更换、修改或升级的跟踪,从而随车辆的维修保养或车载系统的升级做出对与特定车辆任务相关的处理逻辑子集的调整,确保所生成的聚合状态的准确性。
自动驾驶系统一般指通过车载计算机系统实现无人驾驶的智能汽车系统,其依靠人工智能、视觉计算、雷达、监控装置和全球定位系统的协同作用,使计算机在没有任何人类主动操作的情况下自动、安全地操作汽车。
根据本公开的实施例,生成聚合状态可以包括:从多个插件中选择与当前任务相关联的一组插件,其中,多个插件中的每个插件可对应一组系统状态中的唯一系统状态,并且每个插件可实时收集多个处理节点的相应不同数目个处理逻辑的状态报告;对于一组插件中的每个插件,基于插件收集的相应数目个处理逻辑的状态报告,可确 定插件所对应的唯一系统状态是否可用;基于一组插件中各插件相应的唯一系统状态的可用性,可生成聚合状态。
作为示例而非限制,假设存在一组预定义系统状态[a,b,c]以及处理节点Node0和Node1,其中,Node0包括两个处理逻辑,分别记为Node0_logic0和Node0_logic1,Node1包括两个处理逻辑,分别记为Node1_logic0和Node1_logic1。取决于例如唯一映射关系B,Node0_logic0的异常状态可导致系统状态a不可用,Node0_logic1的异常状态可导致系统状态a和b不可用,Node1_logic0的异常状态可导致系统状态c不可用,并且Node1_logic1的异常状态可导致系统状态a和c不可用。于是,可据此得到以下插件:p0(a),p1(a),p2(a),p0(b),p0(c)和p1(c),其中,p0(a)收集Node0_logic0的状态报告,p1(a)收集Node0_logic0和Node0_logic1的状态报告,p2(a)收集Node1_logic1的状态报告,p0(b)收集Node0_logic1的状态报告,p0(c)收集Node1_logic0的状态报告,并且p1(c)收集Node1_logic1的状态报告。
在一些实施例中,可以根据车辆的当前任务来确定一组插件。
作为示例而非限制,假设存在一组车辆任务task(X,Y,Z,…),其中,任务X所关联的一组插件为p0(a),p0(b),p0(c),可记为task[X]=[p0(a),p0(b),p0(c)];任务Y所关联的一组插件为p1(a),p1(c),可记为task[Y]=[p1(a),p1(c)];并且任务Z所关联的插件为p2(a),可记为task[Z]=[p2(a)]。X,Y,Z可以例如分别是高速路段行驶任务、非高速路段行驶任务和停车任务,如上面所描述。
可以看出,p0(a),p1(a),p2(a),p0(b),p0(c)和p1(c)中的每个插件对应一组系统状态[a,b,c]中的唯一系统状态。例如,插件p0(a),p1(a),p2(a)各自对应系统状态a。以插件p1(a)为例,其分别从处理逻辑Node0_logic0和Node0_logic1收集相应的状态报告,而处理逻辑Node0_logic0或Node0_logic1的异常状态都将导致系统状态a不可用。就此而言,每个插件对应一组系统状态中的唯一系统状态意指该插件从其收集状态报告的处理逻辑的异常状态即为该插件所对应的唯一系统状态。
还可以看出,插件p1(a)从两个处理逻辑收集状态报告,而其余插件p0(a),p2(a),p0(b),p0(c)和p1(c)各自仅从一个处理逻辑收集状态报告。换言之,每个插件收集多个处理节点中的相应不同数目个处理逻辑的状态报告。
需要注意的是,上面描述的示例仅出于解说的目的进行描述,而非旨在进行任何限制。
如上所述,每个处理节点的(多个)状态报告可以在被收集之际被实时地生成或者可以按预定时间间隔生成(例如,20ms的时间间隔)。作为结果,每个插件实时收集的相应不同数目个处理逻辑的状态报告可指示对应处理逻辑的实时状态或历史状态。
根据本公开的实施例,基于插件收集的相应数目个处理逻辑的状态报告,确定插件所对应的唯一系统状态是否可用可以包括:响应于确定插件收集的任意一个处理逻辑的状态报告指示处理逻辑处于异常状态,可确定插件所对应的唯一系统状态不可用。
在一些实施例中,可以确定插件所对应的唯一系统状态不可用,只要插件收集的任意一个处理逻辑的状态报告指示处理逻辑处于异常状态,而不管该异常状态是实时状态还是历史状态(例如,状态报告的生成时间戳指示状态仍有效)。
作为非限制性示例,插件p1(a)分别从处理逻辑Node0_logic0和Node0_logic1收集相应的状态报告,其中,Node0_logic0状态报告显示其状况异常且为有效历史状态,而Node0_logic1状态报告显示其状况正常且为实时状态。于是,插件p1(a)所对应的唯一系统状态a被确定为不可用。
作为另一非限制性示例,插件p1(c)从处理逻辑Node1_logic0收集状态报告,其中,Node1_logic0状态报告显示其状况异常且为实时状态。于是,插件p1(c)所对应的唯一系统状态c被确定为不可用。
需要注意的是,上面描述的示例仅出于解说的目的进行描述,而非旨在进行任何限制。
根据本公开的实施例,基于插件收集的相应数目个处理逻辑的状态报告,确定插件所对应的唯一系统状态是否可用可以包括:响应于确定插件从任意一个处理逻辑最近收集的状态报告的生成时刻与当前时刻之差大于阈值,可确定插件所对应的唯一系统状态不可用。
在一些实施例中,插件从任意一个处理逻辑最近收集的状态报告的生成时刻与当前时刻之差大于阈值可以意指状态报告所指示的相应处理逻辑的状态为无效历史状态。在此情形中,即使状态报告显示处理逻辑的状况正常,也还是将处理逻辑视为状况异常,原因在于,该状态报告的生成时间戳过期以至于无法确保处理逻辑当前是否仍然是正常的。作为结果,从该处理逻辑收集状态报告的插件所对应的唯一系统状态可被确定为不可用。
作为非限制性示例,插件p1(a)分别从处理逻辑Node0_logic0和Node0_logic1收集相应的状态报告,其中,Node0_logic0状态报告显示其状况正常但为无效历史状态,且Node0_logic1状态报告也显示其状况正常但为无效历史状态。于是,插件p1(a)所对应的唯一系统状态a仍被确定为是不可用的。
需要注意的是,上面描述的示例仅出于解说的目的进行描述,而非旨在进行任何限制。
根据本公开的实施例,基于插件收集的相应数目个处理逻辑的状态报告,确定插件所对应的唯一系统状态是否可用可以包括:响应于确定插件收集的所有处理逻辑的状态报告指示所述处理逻辑处于正常状态,并且插件从任意一个处理逻辑最近收集的状态报告的生成时刻与当前时刻之差均不大于阈值,可确定插件所对应的唯一系统状态可用。
作为非限制性示例,插件p1(a)分别从处理逻辑Node0_logic0和Node0_logic1收集相应的状态报告,其中,Node0_logic0状态报告显示其状况正常且为有效历史状态,且Node0_logic1状态报告也显示其状况正常且为实时状态(即,状态报告的生成时 刻与当前时刻之差为零)。于是,插件p1(a)所对应的唯一系统状态a被确定为是可用的。
需要注意的是,上面描述的示例仅出于解说的目的进行描述,而非旨在进行任何限制。
附加地,生成聚合状态还可以包括:对于一组插件中的插件,确定插件收集的相应数目个处理逻辑中是否存在任何处理逻辑,任何处理逻辑处于异常状态下根据映射关系将导致唯一系统状态不可用;响应于确定相应数目个处理逻辑中不存在这样的处理逻辑,确定插件所对应的唯一系统状态可用。也即,响应于确定所述相应数目个处理逻辑中不存在处于异常状态下根据所述预定义映射关系将导致所述唯一预定义系统状态不可用的任何处理逻辑,则确定该插件所对应的唯一预定义系统状态可用。
作为非限制性示例,作为对插件p0(a),p1(a),p2(a),p0(b),p0(c)和p1(c)的补充,假设还存在插件p3(a),p1(b)和p2(c),其中,p3(a),p1(b)和p2(c)中的每一者均不从任何处理逻辑收集状态报告。因而,无法从插件所收集的状态报告中解读出关于唯一系统状态的可用性的任何信息(事实上,插件没有收集任何状态报告)。因此,对于插件p3(a),p1(b)和p2(c)中的每一者,可以默认所对应的唯一系统状态可用。
作为另一非限制性示例,假设插件p3(a)仅从处理节点Node1_logic0收集状态报告,而Node1_logic0的异常状态只导致系统状态c不可用,并不影响系统状态a的可用性。因而,无法从p3(a)所收集的关于Node1_logic0的状态报告中解读到关于系统状态a的可用性的任何信息,换言之,Node1_logic0的状态并不会影响系统状态a。因此,对于插件p3(a),可以确定所对应的唯一系统状态a是可用的。当然,这种情况可导致插件数目的冗余,此处仅出于逻辑完备性的目的进行描述。
图3示出了根据本公开的实施例的示例性车辆的结构示意图。
如图3所示,车辆300包括自动驾驶系统300a和车辆控制单元330。
在一些实施例中,自动驾驶系统300a和车辆控制单元330可以是如上面所描述的车载系统的组成部分。
自动驾驶系统300a可包括节点301,节点301可以是如上面所描述的车辆的处理节点。在示例中,节点301可包括多个节点。如图所示,节点301可包括节点301_1、节点301_2、节点301_3……节点301_N。在示例中,节点301_1可以是具有感测功能性的摄像头处理节点,节点301_2可以是具有感测功能性的激光雷达处理节点,节点301_3可以是具有决策功能性的路径规划处理节点等,本公开对此不作任何限制。
自动驾驶系统300a还可包括节点状态缓存302,以用于缓存相应处理节点的若干处理逻辑的状态报告。在示例中,节点状态缓存302可包括与节点301中的节点数目相同的多个节点状态缓存。可以理解的是,节点状态缓存的具体结构可以与所示结构不同,例如,节点状态缓存302可以不被细分为若干节点状态缓存302_1……302_N,或者节点状态缓存302可以取决于实际需要而被细分为另一不同数目个节点状态缓存,本公开对此不进行任何限制。
如图所示,节点状态缓存302可包括节点状态缓存302_1、节点状态缓存302_2、节点状态缓存302_3……节点状态缓存302_N。如图所示,节点状态缓存302_1可至少包括缓存条目304_1a和304_1b,这表明节点状态缓存302_1可存储相应处理节点301_1的至少两个处理逻辑的状态报告。需要注意的是,图中的方框和省略号仅仅是示意性表示,它们并不旨在对结构、数目等进行任何限制。
在一些实施例中,节点301与节点状态缓存302彼此经由总线通信,如由细的空心箭头所示。
自动驾驶系统300a还可包括插件310,以用于从节点缓存302收集处理逻辑的状态报告。如图所示,插件310可包括子插件310_1,310_2,310_3……310_M。
在一些实施例中,插件310中的每一者(例如,310_1,310_2,310_3……310_M)具有其唯一系统状态,并且因此,在该插件从其收集状态报告的处理逻辑当中,至少存在一个处理逻辑,当其状况异常时将会导致唯一系统状态不可用,或者该插件不从任何处理逻辑收集状态报告(即,该插件为空插件,如上面所描述的插件p3(a),p1(b)或p2(c))。
自动驾驶系统300a还可包括聚合状态生成装置312,以用于基于映射关系和车辆的当前任务所涉及的多个处理节点的处理逻辑子集的状态报告,来生成聚合状态。在示例中,聚合状态生成装置312可以以硬件或软件模块的形式在自动驾驶系统300a中实现。在以硬件模块实现的情况下,聚合状态生成装置312可以是自动驾驶系统300a中的分立模块或集成模块(例如,与其他合适的模块集成)。在以软件模块实现的情况下,聚合状态生成装置312可以以可执行指令或代码形式被固化在车辆的自动驾驶系统的可编程逻辑器件中。
在一些实施例中,聚合状态生成装置312可根据车辆的当前任务来从插件310中确定(例如,选择)当前任务所涉及的若干插件。例如,当前任务X所关联的一组插件为p0(a),p0(b),p0(c),于是可以从插件310中定位到与p0(a),p0(b),p0(c)对应的子插件,并从其进行收集。与聚合状态生成装置312有关的操作可参考上面关于方法200的步骤S220描述的方面,在此不再赘述。
继续参考图3,如图所示,车辆300还包括目标系统状态确定装置332,以用于基于聚合状态确定车辆在当前任务下要进入的一组系统状态中的目标系统状态。与目标系统状态确定装置332有关的操作可参考上面关于方法200的步骤S230描述的方面,在此不再赘述。
在一些实施例中,聚合状态生成装置312可经由控制器域网320将所生成的聚合状态传送至目标系统状态确定装置332。
在一些实施例中,目标系统状态确定装置332可将所确定的目标系统状态反馈给相应处理节点,以使得处理节点能够调整自身的处理逻辑并因而致使车辆进入目标系统状态,从而在将当前任务所涉及的所有处理逻辑的状态纳入考虑的情况下,实现车辆的最小风险状态MRC。
在一些实施例中,目标系统状态确定装置332可将所确定的目标系统状态广播给车辆所包括的所有处理节点。
在示例中,目标系统状态确定装置332可以以硬件或软件模块的形式在车辆控制单元330中实现。在以硬件模块实现的情况下,目标系统状态确定装置332可以是车辆控制单元330中的分立模块或集成模块(例如,与其他合适的模块集成)。在以软件模块实现的情况下,目标系统状态确定装置332可以以可执行指令或代码形式被固化在车辆控制单元的可编程逻辑器件中。
根据本公开的实施例,车辆还可包括车辆控制单元和自动驾驶系统,自动驾驶系统可包括多个处理节点的相应多个实例。前述获取多个处理节点中的每个处理节点的至少一个状态报告可以包括:通过自动驾驶系统,获取多个处理节点的相应多个实例中的每个实例的至少一个状态报告。此外,前述生成聚合状态可以包括:通过自动驾驶系统,基于映射关系和车辆的当前任务所涉及的多个处理节点的相应多个实例的处理逻辑子集的状态报告,来生成聚合状态。进一步地,前述确定车辆在当前任务下要进入的一组系统状态中的目标系统状态可以包括:由车辆控制单元基于聚合状态确定目标系统状态。在示例中,可将聚合状态(例如,从自动驾驶系统)发送到车辆控制单元,以供车辆控制单元基于聚合状态确定车辆在当前任务下要进入的目标系统状态。
如本文使用的,术语“实例”可以指对象的具体发生,其可以例如在程序代码执行期间发生。就此而言,图3中所示的节点301_1、节点301_2、节点301_3……节点301_N可以指车辆所包括的多个处理节点的相应多个实例。
出于安全性考虑,车辆可配备有冗余的自动驾驶系统,例如除了主自动驾驶系统之外的从自动驾驶系统、备自动驾驶系统等等。
作为示例而非限制,主自动驾驶系统、从自动驾驶系统和备自动驾驶系统可以具有相同的计算资源或者具有不同的计算资源,例如,从自动驾驶系统可以具有比主自动驾驶系统更少的计算资源,备自动驾驶系统具有比从自动驾驶系统更少的计算资源。作为示例而非限制,如果主自动驾驶系统发生故障而从自动驾驶系统正常工作,这时,主自动驾驶系统的指令不再被转发给车辆控制单元,而是从自动驾驶系统的指令被转发给车辆控制单元,此时车辆由从自动驾驶系统控制。作为示例而非限制,主自动驾驶系统可以包括最多的传感器节点,从自动驾驶系统包括的传感器节点数次之,备自动驾驶系统包括的传感器节点数最少。同样,如果主自动驾驶系统和从自动驾驶系统均发生故障而备自动驾驶系统正常工作,这时,主自动驾驶系统和/或从自动驾驶系统的指令不再被转发给车辆控制单元,而是备自动驾驶系统的指令被转发给车辆控制单元,此时车辆由备自动驾驶系统控制。
在一些实施例中,可以使用多个自动驾驶子系统进行冗余,当控制车辆的一个自动驾驶子系统出现错误或故障时,可以使用其他自动驾驶子系统代替控制车辆。作为示例,自动驾驶子系统可包括主自动驾驶系统、从自动驾驶系统、备自动驾驶系统等。
在一些实施例中,主自动驾驶系统、从自动驾驶系统和备自动驾驶系统均与车辆 控制单元连接,例如,经由控制器域网。
根据本公开的实施例,车辆还包括车辆控制单元和多个自动驾驶系统,多个自动驾驶系统中的每个自动驾驶系统包括多个处理节点的相应多个实例。前述获取多个处理节点中的每个处理节点的至少一个状态报告可以包括:通过每个自动驾驶系统,获取多个处理节点的相应多个实例中的每个实例的至少一个状态报告。此外,生成聚合状态可以包括:通过每个自动驾驶系统,基于映射关系和车辆的当前任务所涉及的多个处理节点的相应多个实例的处理逻辑子集的状态报告,来生成相应的聚合状态。进一步地,前述确定车辆在当前任务下要进入的一组系统状态中的目标系统状态可以包括:由车辆控制单元基于多个自动驾驶系统的相应聚合状态确定目标系统状态。
在一些实施例中,目标系统状态可以包括车辆的当前任务的指示、当前时间以及每个系统状态的可用性(即,是否正常)的指示。系统状态的可用性指示可以采用布尔变量的形式。然而,可以理解,还可采用其他合适形式来表示系统状态的可用性,本公开对此不进行任何限制。
在一些实施例中,在车辆包括多个自动驾驶系统的情况下,由车辆控制单元确定的目标系统状态可被反馈至每个自动驾驶系统所包括多个处理节点的相应多个实例。
根据本公开的实施例,映射关系可采用真值表的形式。真值表的每个条目可以包括键和键值,其中,键可以表示相应的处理逻辑,而键值可以表示由于处理逻辑处于异常状态而将不可用的一个或多个系统状态。
图4示出了根据本公开的实施例的示例性真值表的示意图。在一些实施例中,真值表可以被写入车载系统的固件或ASIC器件中,以使得每当车辆进行维修保养和/或车载系统升级时,真值表可随车辆保养和/或车载系统升级而被更新,例如,对其中的条目进行增加、删除或修改等等。
如图4所示,真值表400可包括键401和键值402。作为示例而非限制,键401包括上面关于示例性映射关系B描述的四个处理逻辑,并且键值402指示相应处理逻辑的状况异常时将致使不可用的系统状态。
可以理解的是,图4的示例性真值表400仅出于解说的目的进行描绘,而非旨在进行任何限制。还可以领会的是,真值表的条目数目随车辆所包括的处理节点的数目和/或每个处理节点的处理逻辑的数目的增大而增大。
根据本公开的实施例,车辆的当前任务可包括:封闭道路行驶、非封闭道路行驶、停车任务、倒车任务、装卸货任务等等,本公开对此不进行任何限制。
根据本公开的实施例,系统状态可以包括:可正常运行、可靠边停车或者可紧急刹车等等,本公开对此不进行任何限制。其中,可正常运行包括可按照车辆当前行驶状态继续行驶,可靠边停车包括可在预定时段内停在路边,此时可能涉及一种变道或变向操作,可紧急刹车包括可在当前车道内在预定时段内紧急刹车。
根据本公开的另一方面,还提供了一种用于车辆的装置。图5示出了根据本公开的实施例的用于车辆的装置500的框图。
根据本公开的实施例,车辆可包括一个或多个处理节点。
根据本公开的实施例,车辆可响应于进入一组系统状态中的目标系统状态而操作。
参考图5,装置500包括:第一模块501,用于获取多个处理节点中的每个处理节点的至少一个状态报告,每个状态报告指示处理节点的相应一个处理逻辑处于正常状态或异常状态,其中,每个处理逻辑的异常状态根据映射关系将导致一组系统状态中一个或多个系统状态不可用;第二模块502,用于基于映射关系和车辆的当前任务所涉及的多个处理节点的处理逻辑子集的状态报告,来生成聚合状态,其中,聚合状态指示一组系统状态中各系统状态各自的可用性;以及第三模块503,用于基于聚合状态,确定车辆在当前任务下要进入的一组系统状态中的目标系统状态。
根据本公开的实施例,针对相关技术中没有就处理节点的重要性等级进行有效划分和管理以至于当车辆的某个(些)处理节点出现异常时无法在整个车辆的层面上确定目标系统状态以使车辆进入MRC的缺陷,上述装置500提供了一种新的用于车辆的装置,以便为车辆提供在当前任务下要进入的一组系统状态中的目标系统状态。
借助于装置500,通过获取车辆的每个处理节点的状态报告,能够基于映射关系和车辆当前任务信息生成指示系统状态可用性的聚合状态,从而确定目标系统状态,使得在车辆的处理节点中的一个或多个处理节点异常的情况下能够使车辆事故风险达到可接受的状态,保证车辆运行的安全性。
根据本公开的实施例,还提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有指令,所述指令当被所述至少一个处理器执行时使所述至少一个处理器执行本公开所述的方法。
根据本公开的实施例,还提供了一种车辆,所述车辆能够响应于进入一组系统状态中的目标系统状态而操作,所述车辆包括:多个处理节点;至少一个处理器;以及至少一个存储器,存储有指令,所述指令被所述至少一个处理器执行时使所述至少一个处理器执行本公开所述的方法。
根据本公开的实施例,还提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行本公开所述的方法。
根据本公开的实施例,还提供了一种计算机程序产品,包括计算机程序,其中,所述计算机程序在被处理器执行时实现本公开所述的方法。
图6示出了根据本公开的实施例的示例性计算装置600的结构框图。在一些实施例中,计算装置600还可以用于实现如图1所示的示例性系统的各方面。
计算装置600可以是被配置为执行处理和/或计算的任何机器,可以是但不限于工作站、服务器、台式计算机、膝上型计算机、平板计算机、个人数字助理、智能电话、车载计算机或其任何组合。
计算装置600可以包括(可能经由一个或多个接口)与总线602连接或与总线602通信的元件。例如,计算装置600可以包括总线602、一个或多个处理器604、一个或多个输入设备606以及一个或多个输出设备608。一个或多个处理器604可以 是任何类型的处理器,并且可以包括但不限于一个或多个通用处理器和/或一个或多个专用处理器(例如特殊处理芯片)。输入设备606可以是能向计算装置600输入信息的任何类型的设备,并且可以包括但不限于鼠标、键盘、触摸屏、麦克风和/或遥控器。输出设备608可以是能呈现信息的任何类型的设备,并且可以包括但不限于显示器、扬声器、视频/音频输出终端、振动器和/或打印机。计算装置600还可以包括非暂时性存储设备610或者与非暂时性存储设备610连接,非暂时性存储设备可以是非暂时性的并且可以实现数据存储的任何存储设备,并且可以包括但不限于磁盘驱动器、光学存储设备、固态存储器、软盘、柔性盘、硬盘、磁带或任何其他磁介质,光盘或任何其他光学介质、ROM(只读存储器)、RAM(随机存取存储器)、高速缓冲存储器和/或任何其他存储器芯片或盒、和/或计算机可从其读取数据、指令和/或代码的任何其他介质。非暂时性存储设备610可以从接口拆卸。非暂时性存储设备610可以具有用于实现上述方法和步骤的数据/程序(包括指令)/代码。计算装置600还可以包括通信接口612。通信接口612可以是使得计算装置600能够与其他装置和/或与网络通信的任何类型的设备或系统,并且可以包括但不限于调制解调器、网卡、红外通信设备、无线通信设备和/或芯片组,例如蓝牙TM设备、802.11设备、WiFi设备、WiMax设备、蜂窝通信设备和/或类似物。
计算装置600还可以包括存储器614,其是可以存储对处理器604的工作有用的程序(包括指令)和/或数据的任何类型的存储器,并且可以包括但不限于随机存取存储器和/或只读存储器设备。软件(程序)可以位于存储器614中,包括但不限于操作系统616、一个或多个应用程序618、驱动程序和/或其他数据和代码。用于执行本公开的一些方法和步骤的指令可以被包括在一个或多个应用程序618中。软件(程序)的指令的可执行代码或源代码可以存储在非暂时性计算机可读存储介质(例如上述存储设备610)中,并且在执行时可以被存入存储器614中(可能被编译和/或安装)。软件(程序)的指令的可执行代码或源代码也可以从远程位置下载。
还应该理解,可以根据具体要求而进行各种变型。例如,也可以使用定制硬件,和/或可以用硬件、软件、固件、中间件、微代码,硬件描述语言或其任何组合来实现特定元件。例如,所公开的方法和设备中的一些或全部可以通过使用根据本公开的逻辑和算法,用汇编语言或硬件编程语言(诸如VERILOG,VHDL,C++)对硬件(例如,包括现场可编程门阵列(FPGA)和/或可编程逻辑阵列(PLA)的可编程逻辑电路)进行编程来实现。虽然已经参照附图描述了本公开的实施例或示例,但应理解,上述的方法、系统和设备仅仅是示例性的实施例或示例,本发明的范围并不由这些实施例或示例限制,而是仅由授权后的权利要求书及其等同范围来限定。实施例或示例中的各种要素可以被省略或者可由其等同要素替代。此外,可以通过不同于本公开中描述的次序来执行各步骤。进一步地,可以以各种方式组合实施例或示例中的各种要素。重要的是随着技术的演进,在此描述的很多要素可以由本公开之后出现的等同要素进行替换。

Claims (17)

  1. 一种用于车辆的方法,所述车辆包括多个处理节点,所述车辆能够响应于进入一组系统状态中的目标系统状态而操作,所述方法包括:
    获取所述多个处理节点中的每个处理节点的至少一个状态报告,每个状态报告指示该处理节点的相应一个处理逻辑处于正常状态或异常状态,其中,每个处理逻辑的异常状态根据映射关系将导致所述一组系统状态中一个或多个系统状态不可用;
    基于所述映射关系和所述车辆的当前任务所涉及的所述多个处理节点的处理逻辑子集的状态报告,来生成聚合状态,其中,所述聚合状态指示所述一组系统状态中各系统状态各自的可用性;以及
    基于所述聚合状态,确定所述车辆在所述当前任务下要进入的所述一组系统状态中的所述目标系统状态。
  2. 如权利要求1所述的方法,其中,生成聚合状态包括:
    从多个插件中选择与所述当前任务相关联的一组插件,其中,所述多个插件中的每个插件对应所述一组系统状态中的唯一系统状态,并且每个插件实时收集所述多个处理节点的相应不同数目个处理逻辑的状态报告;
    对于所述一组插件中的每个插件,基于该插件收集的相应数目个处理逻辑的状态报告,确定该插件所对应的唯一系统状态是否可用;
    基于所述一组插件中各插件相应的唯一系统状态的可用性,生成所述聚合状态。
  3. 如权利要求2所述的方法,其中,基于该插件收集的相应数目个处理逻辑的状态报告,确定该插件所对应的唯一系统状态是否可用,包括:
    响应于确定该插件收集的任意一个处理逻辑的状态报告指示该处理逻辑处于异常状态,确定该插件所对应的唯一系统状态不可用。
  4. 如权利要求2或3所述的方法,其中,基于该插件收集的相应数目个处理逻辑的状态报告,确定该插件所对应的唯一系统状态是否可用,包括:
    响应于确定该插件从任意一个处理逻辑最近收集的状态报告的生成时刻与当前时刻之差大于阈值,确定该插件所对应的唯一系统状态不可用。
  5. 如权利要求2-4中任一项所述的方法,其中,基于该插件收集的相应数目个处理逻辑的状态报告,确定该插件所对应的唯一系统状态是否可用,包括:
    响应于确定该插件收集的所有处理逻辑的状态报告指示所述处理逻辑处于正常状态,并且该插件从任意一个处理逻辑最近收集的状态报告的生成时刻与当前时刻之差均不大于阈值,确定该插件所对应的唯一系统状态可用。
  6. 如权利要求2-5中任一项所述的方法,还包括:
    对于所述一组插件中的插件,确定该插件收集的所述相应数目个处理逻辑中是否存在任何处理逻辑,所述任何处理逻辑处于异常状态下根据所述映射关系将导致所述唯一系统状态不可用;
    响应于确定所述相应数目个处理逻辑中不存在这样的处理逻辑,确定该插件所对应的唯一系统状态可用。
  7. 如权利要求1-6中任一项所述的方法,其中,所述车辆还包括车辆控制单元和自动驾驶系统,所述自动驾驶系统包括所述多个处理节点的相应多个实例,
    其中,获取所述多个处理节点中的每个处理节点的至少一个状态报告包括:通过所述自动驾驶系统,获取所述多个处理节点的所述相应多个实例中的每个实例的至少一个状态报告,
    其中,生成所述聚合状态包括:通过所述自动驾驶系统,基于所述映射关系和所述车辆的当前任务所涉及的所述多个处理节点的所述相应多个实例的处理逻辑子集的状态报告,来生成所述聚合状态,并且
    其中,确定所述车辆在所述当前任务下要进入的所述一组系统状态中的所述目标系统状态包括:由所述车辆控制单元基于所述聚合状态确定所述目标系统状态。
  8. 如权利要求1-7中任一项所述的方法,其中,所述车辆还包括车辆控制单元和多个自动驾驶系统,所述多个自动驾驶系统中的每个自动驾驶系统包括所述多个处理节点的相应多个实例,
    其中,获取所述多个处理节点中的每个处理节点的至少一个状态报告包括:通过每个自动驾驶系统,获取所述多个处理节点的所述相应多个实例中的每个实例的至少一个状态报告,
    其中,生成所述聚合状态包括:通过每个自动驾驶系统,基于所述映射关系和所述车辆的当前任务所涉及的所述多个处理节点的所述相应多个实例的处理逻辑子集的状态报告,来生成相应的聚合状态,并且
    其中,确定所述车辆在所述当前任务下要进入的所述一组系统状态中的所述目标系统状态包括:由所述车辆控制单元基于所述多个自动驾驶系统的相应聚合状态确定所述目标系统状态。
  9. 如权利要求1-8中任一项所述的方法,其中,所述映射关系采用真值表的形式,所述真值表的每个条目包括键和键值,所述键表示相应的处理逻辑,所述键值表示由于该处理逻辑处于异常状态而将不可用的一个或多个系统状态。
  10. 如权利要求1-9中任一项所述的方法,其中,所述当前任务包括以下至少一种:封闭道路行驶、非封闭道路行驶、停车、倒车、装货、卸货。
  11. 如权利要求1-10中任一项所述的方法,其中,所述一组系统状态包括以下至少一种:可正常运行、可靠边停车、可紧急刹车。
  12. 如权利要求1-11中任一项所述的方法,其中,基于所述聚合状态,确定所述车辆在所述当前任务下要进入的所述一组系统状态中的所述目标系统状态包括:
    基于聚合状态和车辆的传动机构的状态来从所述一组系统状态中确定车辆在当前任务下要进入的目标系统状态,所述传动机构包括制动装置、驱动装置、转向装置中的至少一种。
  13. 一种用于车辆的装置,所述车辆包括多个处理节点,所述车辆能够响应于进入一组系统状态中的目标系统状态而操作,所述装置包括:
    第一模块,用于获取所述多个处理节点中的每个处理节点的至少一个状态报告,每个状态报告指示该处理节点的相应一个处理逻辑处于正常状态或异常状态,其中,每个处理逻辑的异常状态根据映射关系将导致所述一组系统状态中一个或多个系统状态不可用;
    第二模块,用于基于所述映射关系和所述车辆的当前任务所涉及的所述多个处理节点的处理逻辑子集的状态报告,来生成聚合状态,其中,所述聚合状态指示所述一组系统状态中各系统状态各自的可用性;以及
    第三模块,用于基于所述聚合状态确定所述车辆在所述当前任务下要进入的所述一组系统状态中的所述目标系统状态。
  14. 一种电子设备,包括:
    至少一个处理器;以及
    至少一个存储器,存储有指令,所述指令被所述至少一个处理器执行时使所述至少一个处理器执行权利要求1-12中任一项所述的方法。
  15. 一种车辆,所述车辆能够响应于进入一组系统状态中的目标系统状态而操作,所述车辆包括:
    至少一个处理器;以及
    至少一个存储器,存储有指令,所述指令被所述至少一个处理器执行时使所述至少一个处理器执行权利要求1-12中任一项所述的方法。
  16. 一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使计算机执行根据权利要求1-12中任一项所述的方法。
  17. 一种计算机程序产品,包括计算机程序,其中,所述计算机程序在被处理器执行时实现权利要求1-12中任一项所述的方法。
PCT/CN2023/132642 2022-12-27 2023-11-20 用于车辆的方法和装置 WO2024139836A1 (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211690085.1 2022-12-27

Publications (1)

Publication Number Publication Date
WO2024139836A1 true WO2024139836A1 (zh) 2024-07-04

Family

ID=

Similar Documents

Publication Publication Date Title
US20210262808A1 (en) Obstacle avoidance method and apparatus
US11880199B1 (en) System and method for determining pose data for a vehicle
US11427196B2 (en) Systems and methods for managing tractor-trailers
US20220332348A1 (en) Autonomous driving method, related device, and computer-readable storage medium
EP4184476A1 (en) Method and device for controlling switching of vehicle driving mode
CN112859830B (zh) 一种设计运行区域odd判断方法、装置及相关设备
CN114194207B (zh) 一种自动驾驶方法、ads及自动驾驶车辆
WO2020205938A1 (en) Detection of anomalous trailer behavior
CN114779790B (zh) 识别障碍物方法、装置、车辆、服务器、存储介质及芯片
US20230136798A1 (en) Method and apparatus for detecting lane line
US20240017719A1 (en) Mapping method and apparatus, vehicle, readable storage medium, and chip
CN115042821B (zh) 车辆控制方法、装置、车辆及存储介质
WO2022057745A1 (zh) 一种辅助驾驶的控制方法及装置
WO2022061702A1 (zh) 驾驶提醒的方法、装置及系统
WO2024139836A1 (zh) 用于车辆的方法和装置
CN115221151B (zh) 车辆数据的传输方法、装置、车辆、存储介质及芯片
CN115056784B (zh) 车辆控制方法、装置、车辆、存储介质及芯片
CN113859265B (zh) 一种驾驶过程中的提醒方法及设备
CN115334109A (zh) 用于交通信号识别的系统架构、传输方法,车辆,介质及芯片
CN115116161A (zh) 车辆数据采集方法、装置、存储介质以及车辆
CN118254813A (zh) 用于车辆的方法和装置
US20230234598A1 (en) Vehicle and method for diagnosing deterioration of on-vehicle component
CN115407344B (zh) 栅格地图创建方法、装置、车辆及可读存储介质
US11862013B2 (en) Method of measuring road performance using headway dynamics
US20230311929A1 (en) Autonomous vehicle interaction with chassis control system to provide enhanced driving modes