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

用于运载工具的安全系统

文献发布时间:2023-06-19 11:40:48


用于运载工具的安全系统

技术领域

本说明书通常涉及运载工具的操作,并且具体涉及用于运载工具的安全系统。

背景技术

运载工具从初始地点到最终目的地的操作通常需要用户或运载工具决策系统选择从初始地点到最终目的地的通过道路网络的路线。该路线可能涉及满足诸如不超过最大驾驶时间等的目标。复杂的路线可能需要许多决策,这使得传统的自主驾驶的算法不切实际。有时使用传统的贪婪算法来选择从初始地点到最终目的地的有向图上的路线。然而,如果道路上的大量其它运载工具使用这样的贪婪算法,则所选择的路线可能变得过载并且增加了碰撞风险。

发明内容

用于运载工具的安全系统包括对象跟踪器电路,该对象跟踪器电路被配置为接收表示位于运载工具正运行的环境中的一个或多个对象的传感器数据。运载工具由运载工具的独立于安全系统的导航系统引导。生成环境的概率模型,该概率模型针对一个或多个对象中的各对象,包括基于传感器数据的递归贝叶斯滤波的对象的状态。该状态包括在特定时间对象相对于运载工具的时空地点和在该特定时间对象相对于运载工具的速度。基于环境的概率模型来确定在该特定时间运载工具与一个或多个对象中的特定对象的碰撞概率。如果碰撞概率大于零,则生成指示该特定对象以及运载工具和该对象要碰撞的特定时间的碰撞警告。响应于该碰撞警告,仲裁器电路将紧急制动命令发送至导航系统的控制电路。响应于接收到紧急制动命令,控制电路进行紧急制动操作,以避免运载工具与特定对象发生碰撞。

在另一方面,系统包括一个或多个传感器,该一个或多个传感器被配置为接收表示位于运载工具正运行的环境内的一个或多个对象的RADAR(雷达)数据和照相机图像。对象跟踪器电路可通信地耦接至一个或多个传感器,并且被配置为从运载工具的导航系统接收运载工具的轨迹。导航系统独立于对象跟踪器电路。通过对RADAR数据和照相机图像进行数据融合来生成环境的表示。该表示针对一个或多个对象中的各对象包括该对象的状态、该状态的误差协方差和该状态的存在概率。对该表示和该轨迹进行运算,以识别一个或多个对象中的特定对象。如果运载工具与特定对象的碰撞时间(TTC)小于阈值时间,则仲裁器电路生成紧急制动命令。该紧急制动命令指示运载工具与特定对象的TTC。控制电路可通信地耦接至仲裁器电路,并且被配置为根据紧急制动命令来操作运载工具,使得紧急制动避免了运载工具与特定对象发生碰撞。

在另一方面,系统包括对象跟踪器电路,该对象跟踪器电路被配置为从运载工具的一个或多个RADAR传感器和一个或多个照相机接收传感器数据。传感器数据表示一个或多个对象。响应于确定为运载工具与特定对象的第一碰撞概率大于零,生成第一碰撞警告。动态占据栅格电路(dynamic occupancy grid circuit)被配置为基于包括多个时变颗粒密度函数的动态占据栅格来确定运载工具与特定对象的第二碰撞概率。各时变颗粒密度函数与一个或多个对象中的对象的地点相关联。响应于第二碰撞概率大于零,生成第二碰撞警告。仲裁器电路可通信地耦接至对象跟踪器电路和动态占据栅格电路。仲裁器电路被配置为针对第二碰撞警告来验证第一碰撞警告。将油门关闭命令发送至运载工具的控制电路。控制电路被配置为根据油门关闭命令来操作运载工具,以避免运载工具与特定对象发生碰撞。

一种用于运载工具的安全系统,所述安全系统包括:对象跟踪器电路,其被配置为:接收表示位于所述运载工具正运行的环境中的一个或多个对象的传感器数据,所述运载工具由独立于所述安全系统的所述运载工具的导航系统来操作;生成所述环境的概率模型,所述概率模型的生成包括:针对所述一个或多个对象中的各对象,基于所述传感器数据的递归贝叶斯滤波来生成该对象的状态,所述状态包括在特定时间该对象相对于所述运载工具的时空地点和在所述特定时间该对象相对于所述运载工具的速度;确定基于所述环境的所述概率模型的在所述特定时间所述运载工具与所述一个或多个对象中的特定对象的碰撞概率是否大于零;以及生成指示所述特定对象和所述特定时间的碰撞警告;以及仲裁器电路,其可通信地耦接至所述对象跟踪器电路,并且被配置为响应于接收到所述碰撞警告,将紧急制动命令发送至所述导航系统的控制电路,所述控制电路被配置为响应于接收到所述紧急制动命令,进行紧急制动操作,以避免所述运载工具与所述特定对象发生碰撞。

一种存储有指令的非暂时性存储介质,所述指令在由一个或多个计算装置执行时,使得所述一个或多个计算装置进行以下操作:接收表示位于运载工具正运行的环境中的一个或多个对象的传感器数据,所述运载工具由独立于所述一个或多个计算装置的所述运载工具的导航系统来操作;生成所述环境的概率模型,所述概率模型的生成包括:针对所述一个或多个对象中的各对象,基于所述传感器数据的递归贝叶斯滤波来生成该对象的状态,所述状态包括在特定时间该对象相对于所述运载工具的时空地点和在所述特定时间该对象相对于所述运载工具的速度;确定基于所述环境的所述概率模型的在所述特定时间所述运载工具与所述一个或多个对象中的特定对象的碰撞概率是否大于零;生成指示所述特定对象和所述特定时间的碰撞警告;以及响应于接收到所述碰撞警告,将紧急制动命令发送至所述导航系统的控制电路,所述控制电路被配置为响应于接收到所述紧急制动命令,进行紧急制动操作,以避免所述运载工具与所述特定对象发生碰撞。

一种方法,包括:利用运载工具的安全系统,接收表示位于所述运载工具正运行的环境中的一个或多个对象的传感器数据,所述运载工具由独立于所述安全系统的所述运载工具的导航系统来操作;利用所述安全系统,生成所述环境的概率模型,所述概率模型的生成包括:针对所述一个或多个对象中的各对象,利用所述安全系统,基于所述传感器数据的递归贝叶斯滤波来生成该对象的状态,所述状态包括在特定时间该对象相对于所述运载工具的时空地点和在所述特定时间该对象相对于所述运载工具的速度;利用所述安全系统,确定基于所述环境的所述概率模型的在所述特定时间所述运载工具与所述一个或多个对象中的特定对象的碰撞概率是否大于零;利用所述安全系统,生成指示所述特定对象和所述特定时间的碰撞警告;以及响应于接收到所述碰撞警告,将紧急制动命令发送至所述导航系统的控制电路,所述控制电路被配置为响应于接收到所述紧急制动命令,进行紧急制动操作,以避免所述运载工具与所述特定对象发生碰撞。

这些和其它方面、特征和实现可被表示为方法、设备、系统、组件、程序产品、用于进行功能的方法或步骤以及其它方式。

从以下的包括权利要求书的说明书,这些和其它方面、特征和实现将变得明显。

附图说明

图1是示出根据一个或多个实施例的具有自主能力的自主运载工具(AV)的示例的框图。

图2是示出根据一个或多个实施例的示例“云”计算环境的框图。

图3是示出根据一个或多个实施例的计算机系统的框图。

图4是示出根据一个或多个实施例的AV的示例架构的框图。

图5是示出根据一个或多个实施例的感知模块可以使用的输入和输出的示例的框图。

图6是示出根据一个或多个实施例的LiDAR系统的示例的框图。

图7是示出根据一个或多个实施例的操作中的LiDAR系统的框图。

图8是示出根据一个或多个实施例的LiDAR系统的操作的附加细节的框图。

图9是示出根据一个或多个实施例的规划模块的输入和输出之间的关系的框图。

图10是示出根据一个或多个实施例的路径规划中所使用的有向图。

图11是示出根据一个或多个实施例的控制模块的输入和输出的框图。

图12是示出根据一个或多个实施例的控制器的输入、输出和组件的框图。

图13是示出根据一个或多个实施例的运载工具的安全系统的框图。

图14是示出根据一个或多个实施例的用于运载工具的安全系统的操作的处理的流程图。

图15是示出根据一个或多个实施例的用于运载工具的安全系统的操作的处理的流程图。

图16是示出根据一个或多个实施例的用于运载工具的安全系统的操作的处理的流程图。

具体实施方式

在以下描述中,为了解释的目的,阐述了许多具体细节,以便提供对本发明的透彻理解。然而,显而易见的是,本发明可以在没有这些具体细节的情况下实施。在其它实例中,众所周知的构造和装置是以框图形式示出的,以避免不必要地使本发明模糊。

在附图中,为了便于描述,显示了示意要素的具体安排或次序,例如表示设备、模块、指令块和数据要素的那些要素。然而,本领域技术人员应当理解,附图中示意要素的具体排序或安排并不意味着要求特定的处理顺序或序列、或处理过程的分离。此外,在附图中包含示意性要素并不意味着在所有实施例中都需要这种要素,也不意味着由这种要素表示的特征不能包括在一些实施例中或不能在一些实施例中与其它要素结合。

此外,在附图中,连接要素、例如实线或虚线或箭头用于说明两个或两个以上其它示意要素之间的连接、关系或关联,没有任何此类连接要素并不意味着不能存在连接、关系或关联。换句话说,一些要素之间的连接、关系或关联未在附图中显示,以便不掩盖本发明。此外,为了便于说明,使用单个连接要素来表示要素之间的多个连接、关系或关联。例如,如果连接元件代表信号、数据或指令的通信,本领域技术人员应理解,该元件代表影响通信可能需要的一个或多个信号路径(例如,总线)。

现在将详细参考实施例,其示例在附图中示出。在下面的详细描述中,阐述了许多具体细节,以便提供对所描述的各种实施例的透彻理解。然而,对于本领域的普通技术人员来说明显的是,可以在没有这些具体细节的情况下实施所描述的各种实施例。在其它情况下,没有详细描述众所周知的方法、程序、组件、电路和网络,以便不会不必要地掩盖实施例的方面。

下面描述的若干特征可以彼此独立地使用,也可以与其它特征的任何组合一起使用。但是,任何个别特征可能不能解决上述任何问题,或者只能解决上述问题之一。上文讨论的一些问题可能不能通过本文所述的任何一个特征得到充分解决。虽然提供了标题,但在本说明的其它地方也可以找到与某一标题有关但在该标题部分未找到的信息。本文根据以下概要描述实施例:

1.总体概述

2.系统概述

3.自主运载工具架构

4.自主运载工具输入

5.自主运载工具规划

6.自主运载工具控制

7.安全系统的架构

8.用于安全系统的操作的处理

系统概述

图1是示出根据一个或多个实施例的具有自主能力的自主运载工具100的示例的框图。

如本文所使用的,术语“自主能力”是指一种功能、特征或设施,该功能、特征或设施使运载工具能够部分地或完全地运行,而无需实时的人类干预,包括但不限于完全自主运载工具、高度自主运载工具和有条件自主运载工具。

如本文所使用的,自主运载工具(AV)是一种具有自主能力的运载工具。

如本文所使用的,“运载工具”包括货物或人员的运输方式。例如,小汽车、公共汽车、火车、飞机、无人机、卡车、船只、舰艇、潜水器、飞船等。无人驾驶的小汽车是运载工具的示例。

如本文所使用的,“轨迹”是指将AV从第一时空地点操作到第二时空地点的路径或路线。在实施例中,第一时空地点被称为初始地点或起始地点,第二时空地点被称为目的地、最终地点、目标、目标位置或目标地点。在一些示例中,轨迹由一个或多个路段(例如,道路的数段)组成,并且各路段由一个或多个块(例如,车道或交叉口的一部分)组成。在实施例中,时空地点对应于真实世界地点。例如,时空地点是上车或下车地点,以使人员或货物上车或下车。

如本文所使用的,“(一个或多个)传感器”包括一个或多个硬件组件,用于检测与传感器周围环境有关的信息。一些硬件组件可包括感测组件(例如,图像传感器、生物测量传感器)、发送和/或接收组件(例如,激光或射频波发射器和接收器)、电子组件(例如,模数转换器)、数据存储装置(例如,RAM和/或非易失性存储器)、软件或固件组件和数据处理组件(例如,专用集成电路)、微处理器和/或微控制器。

如本文所使用的,“场景描述”是一种数据结构(例如,列表)或数据流,其包括由AV运载工具上的一个或多个传感器检测到的一个或多个分类或标记的对象,或由AV外部的源提供的一个或多个分类或标记的对象。

如本文所使用的,“道路”是一个可以被运载工具穿过的物理区域,并且可以对应于已命名的通道(例如,城市街道、州际高速公路等)或可对应于未命名的通道(例如,房屋或办公楼内的行车道、停车场的一段、空置停车场的一段、乡村地区的污物通道等)。因为有些运载工具(如四轮驱动的小卡车、越野车(SUV)等)能够穿越各种不特别适合运载工具行驶的物理区域,因此“道路”可以是任何市政当局或其它政府或行政机构没有正式界定为一条通道的物理区域。

如本文所使用的,“车道”是道路的可被运载工具穿过的部分,并且可对应于车道标记之间的大部分或全部空间,或仅对应于车道标记之间的部分空间(例如,小于50%)。例如,具有相距很远的车道标记的道路可能容纳两个或两个以上的运载工具,使得一个运载工具可以在不穿过车道标记的情况下超过另一个运载工具,因此可被解释为车道比车道标记之间的空间窄,或车道之间有两个车道。在没有车道标记的情况下,也可以对车道进行解释。例如,可以基于环境的物理特征(例如,农村地区的岩石和沿着大道的树木)来定义车道。

“一个或多个”包括由一个要素执行的功能,由多个要素执行的功能、例如以分布式的方式,由一个要素执行的几个功能,由几个要素执行的几个功能,或上述的任意组合。

还将理解的是,尽管在某些情况下,术语“第一”、“第二”等是用来描述各种要素的,但这些要素不应受到这些术语的限制。这些术语仅用于区分一个要素与另一个要素。例如,在未背离各种所述实施例的范围的情况下,第一触点可被称为第二触点,并且同样,第二触点可被称为第一触点。第一触点和第二触点都是触点,但这两者不是相同触点。

此处描述的各种实施例的描述中使用的术语仅用于描述特定实施例,而不是意在限制。正如在所描述的各种实施例和所附权利要求书的描述中所使用的,单数形式“a”、“an”和“the”也意在包括复数形式,除非上下文另有明确说明。还应理解,本文所用的"和/或"一词是指并且包括一个或多个相关清单项目的任何和所有可能的组合。还应理解的是,在本说明中使用的术语“包括”、“包含”、“具备”和/或“具有”具体说明存在所述的特征、整数、步骤、操作、要素和/或组成部分,但并不排除存在或添加一个或多个其它特征、整数、步骤、操作、要素、组成部分、和/或上述的组。

如本文所使用的,“如果”一词可选择地理解为在该情况下、在当时、或者响应于检测到、或响应于确定为,视上下文而定。同样,“如果已确定”或“如果[所述条件或事件]已被检测到”这一短语,视情境而定,可以理解为“在确定时”或“响应于确定为“或”在检测到[所述条件或事件]时”或“响应于检测到[所述条件或事件]”。

如本文所使用的,AV系统是指AV以及实时生成的支持AV操作的硬件、软件、存储的数据和实时生成的支持AV运作的数据。在实施例中,AV系统并入在AV内。在实施例中,AV系统跨多个地点分布。例如,AV系统的一些软件是在类似于下面结合图3描述的云计算环境300的云计算环境中实现的。

一般而言,本文件描述了适用于任何具有一种或多种自主能力的运载工具的技术,包括完全自主运载工具、高度自主运载工具和有条件自主运载工具,如所谓的第5级、第4级和第3级运载工具(见SAE国际标准J3016:道路上机动车自动驾驶系统相关术语的分类和定义,通过引用将其全部内容纳入本说明,以了解运载工具自主权等级的更多详细信息)。本说明所述技术也适用于部分自主运载工具和驾驶员辅助运载工具,如所谓的2级和1级运载工具(见SAE国际标准J3016:道路上机动车自动驾驶系统相关术语的分类和定义)。在实施例中,一个或多个1级、2级、3级、4级和5级运载工具系统可根据对传感器输入的处理,在某些操作条件下自动执行某些运载工具操作(例如,转向、制动和使用地图)。本文件中所述的技术可以使从完全自主运载工具到人类操作的运载工具的各级运载工具受益。

参考图1,AV系统120使AV 100沿着轨迹198运行,穿过环境190至目的地199(有时称为最终地点),同时避开对象(例如,自然障碍物191、运载工具193、行人192、骑车者和其它障碍物)和遵守道路规则(例如,操作规则或驾驶偏好)。

在实施例中,AV系统120包括用于从计算机处理器146接收操作命令并对其进行操作的装置101。在实施例中,计算处理器146与下面参考图3描述的处理器304相似。装置101的示例包括转向控制器102、制动器103、挡位、加速踏板或其它加速控制机构、挡风玻璃雨刮器、侧门锁、窗控器和转向指示器。

在实施例中,AV系统120包括用于测量或推断AV 100的状态或条件的属性的传感器121,这些属性例如是AV的位置、线速度和加速度及角速度和加速度、以及航向(例如,AV100的前端的方向)。传感器121的示例是GNSS、以及测量运载工具线性加速度和角速率的惯性测量单元(IMU)、用于测量或估计车轮滑移率的车轮速率传感器、车轮制动压力或制动扭矩传感器、引擎扭矩或车轮扭矩传感器以及转向角度和角速率传感器。

在实施例中,传感器121还包括用于感测或测量AV的环境的属性的传感器。例如,可见光、红外或热(或两者兼有)光谱的单目或立体摄像机122、LiDAR 123、RADAR、超声波传感器、飞行时间(TOF)深度传感器、速率传感器、温度传感器、湿度传感器和降水传感器。

在实施例中,AV系统120包括数据存储单元142和存储器144,用于存储与计算机处理器146或由传感器121收集的数据相关的机器指令。在实施例中,数据存储单元142与以下结合图3描述的ROM 308或存储装置310类似。在实施例中,存储器144与下面描述的主存储器306类似。在实施例中,数据存储单元142和存储器144存储有关环境190的历史、实时和/或预测性信息。在实施例中,存储的信息包括地图、驾驶性能、交通拥堵更新或天气条件。在实施例中,与环境190有关的数据通过来自远程数据库134的通信信道传输到AV100。

在实施例中,AV系统120包括通信装置140,用于将对其它运载工具的状态和条件(诸如位置、线性和角速度、线性和角加速度以及线性和角航向等)的测量到或推断的属性传送到AV 100。这些装置包括运载工具到运载工具(V2V)和运载工具到基础设施(V2I)通信装置以及用于通过点对点或自组织(ad hoc)网络或两者兼而有之进行无线通信的装置。在实施例中,通信装置140跨电磁频谱(包括无线电和光通信)或其它介质(例如,空气和声学介质)进行通信。运载工具对运载工具(V2V)、运载工具对基础设施(V2I)通信(以及在一些实施例中为一种或多种其它类型的通信)的组合有时被称为运载工具对所有事物(V2X)通信。V2X通信通常符合一个或多个通信标准,用于与自主运载工具进行的和在自主运载工具之间的通信。

在实施例中,通信装置140包括通信接口。例如,有线、无线、WiMAX、Wi-Fi、蓝牙、卫星、蜂窝、光、近场、红外或无线电接口。通信接口将数据从远程数据库134传输到AV系统120。在实施例中,远程数据库134嵌入云计算环境200中,如图2中所述。通信接口140将从传感器121收集的数据或与AV 100操作有关的其它数据传输到远程数据库134。在实施例中,通信接口140向AV 100传输与远程操作有关的信息。在一些实施例中,AV 100与其它远程(例如,“云”)服务器136通信。

在实施例中,远程数据库134还存储和传输数字数据(例如,存储道路和街道地点等的数据)。这些数据存储在AV 100上的存储器144中,或者通过通信信道从远程数据库134传输到AV 100。

在实施例中,远程数据库134存储和传输与以前在一天中类似时间沿着轨迹198行驶的运载工具的驾驶属性有关的历史信息(例如,速率和加速率分布)。在一个实现中,这种数据可以存储在AV 100上的存储器144中,或者通过通信信道从远程数据库134传输到AV100。

位于AV 100上的计算装置146基于实时传感器数据和先验信息以算法方式生成控制动作,使得AV系统120能够执行其自主驾驶能力。

在实施例中,AV系统120包括连接到计算装置146的计算机外围设备132,用于向AV100的用户(例如,乘员或远程用户)提供信息和提醒并接收来自该用户的输入。在实施例中,外围设备132类似于下面参考图3讨论的显示器312、输入装置314和光标控制器316。连接是无线的或有线的。任意两个或更多的接口设备可以集成到单个设备中。

示例云计算环境

图2是示出根据一个或多个实施例的示例“云”计算环境的框图。云计算是一种服务交付模式,可以方便、按需地在网络上访问共享的可配置计算资源池(例如网络、网络带宽、服务器、处理、内存、存储、应用程序、虚拟机和服务)。在典型的云计算系统中,一个或多个大型云数据中心容纳用于递送云所提供的服务的机器。现在参考图2,云计算环境200包括通过云202互连的云数据中心204a、204b和204c。数据中心204a、204b和204c为连接到云202的计算机系统206a、206b、206c、206d、206e和206f提供云计算服务。

云计算环境200包括一个或多个云数据中心。通常,云数据中心(例如图2中所示的云数据中心204a)是指构成云(例如图2中所示的云202或云的特定部分)的服务器的物理排列。例如,服务器在云数据中心中物理排列成房间、组、行和机架。云数据中心有一个或多个区域,其中包括一个或多个服务器房间。每个房间有一行或多行服务器,每行都包括一个或多个机架。每个机架包括一个或多个单独的服务器节点。在一些实现中,区域、房间、机架和/或行中的服务器根据数据中心设施的物理基础设施要求(包括电力、能源、热力、热源和/或其它要求)分为若干组。在实施例中,服务器节点类似于图3中描述的计算机系统。数据中心204a具有许多分布在多个机架上的计算系统。

云202包括云数据中心204a、204b和204c以及用于连接云数据中心204a、204b和204c并有助于促进计算系统206a-f对云计算服务的访问的网络和网络资源(例如,网络设备、节点、路由器、交换机和网络电缆)。在实施例中,该网络表示一个或多个本地网络、广域网或通过使用地面或卫星连接部署的有线或无线链路连接的网际网络的任意组合。通过网络交换的数据采用多种网络层协议(如Internet协议(IP)、多协议标签交换(MPLS)、异步传输模式(ATM)、帧中继(FrameRelay)等)进行传输。此外,在网络代表多个子网络的组合的实施例中,在每个底层子网络上使用不同的网络层协议。在一些实施例中,网络代表一个或多个互连网际网络(例如公共互联网等)。

计算系统206a-f或云计算服务消费者通过网络链路和网络适配器连接到云202。在实施例中,计算系统206a-f被实现为各种计算装置,例如服务器、台式机、膝上型计算机、平板电脑、智能手机、物联网(IoT)设备、自主运载工具(包括小汽车、无人机、航天飞机、火车、公共汽车等)和消费电子产品。在实施例中,计算系统206a-f在其它系统中实现或作为其它系统的一部分实现。

计算机系统

图3是示出根据一个或多个实施例的计算机系统300的框图。在实现中,计算机系统300是一种专用计算装置。专用计算装置被硬连线以执行这些技术,或包括诸如一个或多个专用集成电路(ASIC)或现场可编程门阵列(FPGA)等的被持久编程为进行上述技术的数字电子装置,或可包括一个或多个通用硬件处理器,这些硬件处理器经编程以根据固件、存储器、其它存储器、或者组合中的程序指令执行这些技术。这种专用的计算装置还可以将定制的硬线逻辑、ASIC或FPGA与定制的编程相结合来完成这些技术。在各种实施例中,专用计算装置是台式计算机系统、便携式计算机系统、手持设备、网络设备或包含硬线和/或程序逻辑以实现这些技术的任何其它设备。

在实施例中,计算机系统300包括总线302或用于通信信息的其它通信机制、以及与总线302连接以处理信息的硬件处理器304。硬件处理器304是例如通用微处理器。计算机系统300还包括主存储器306,例如随机存取存储器(RAM)或其它动态存储装置,连接到总线302以存储信息和指令,该信息和指令由处理器304执行。在一个实现中,主存储器306用于在执行要由处理器304执行的指令期间存储临时变量或其它中间信息。当这些指令存储在处理器304可访问的非暂时性存储介质中时,使计算机系统300变成一个专用机器,该机器被定制以执行指令中指定的操作。

在实施例中,计算机系统300还包括只读存储器(ROM)308或连接到总线302的其它静态存储装置,用于存储处理器304的静态信息和指令。提供诸如磁盘、光盘、固态驱动器或三维交叉点存储器等的存储装置310,并连接到总线302以存储信息和指令。

在实施例中,计算机系统300通过总线302连接到诸如阴极射线管(CRT)、液晶显示器(LCD)、等离子体显示器、发光二极管(LED)显示器或用于向计算机用户显示信息的有机发光二极管(OLED)显示器等的显示器312。包括字母数字键和其它键的输入装置314连接到总线302,用于向处理器304传送信息和命令选择。另一种类型的用户输入装置是光标控制器316,例如鼠标、轨迹球、触控显示器或光标方向键,用于将方向信息和命令选择传送到处理器304,并用于控制光标在显示器312上的移动。这种输入装置通常具有两个轴线上的两个自由度,第一轴线(例如,x轴)和第二轴线(例如,y轴),这两个轴线允许装置指定平面上的位置。

根据一个实施例,这里的技术由计算机系统300执行,以响应处理器304执行主存储器306中包含的一个或多个指令的一个或多个序列。这些指令从诸如存储装置310等的另一存储介质读入主存储器306。执行主存储器306中包含的指令序列使处理器304执行本文所述的处理步骤。在替代实施例中,使用硬连线电路代替或与软件指令结合使用。

此处使用的术语“存储介质”是指存储数据和/或指令的任何非暂时性介质,这些数据和/或指令使机器以特定方式运行。这种存储介质包括非易失性介质和/或易失性介质。非易失性介质例如包括诸如存储装置310等的光盘、磁盘、固态驱动器或三维交叉点存储器。易失性介质包括动态存储器,诸如主存储器306等。存储介质的常见形式包括例如软盘、软盘、硬盘、固态驱动器、磁带或任何其它磁数据存储介质、CD-ROM、任何其它光数据存储介质、任何具有孔型的物理介质、RAM、PROM和EPROM、FLASH-EPROM、NV-RAM、或任何其它存储芯片或存储盒。

存储介质有别于传输介质,但可以与传输介质相结合使用。传输介质参与存储介质之间的信息传输。例如,传输介质包括同轴电缆、铜线和光纤,其包括具备总线302的电线。传输介质也可以采取声波或光波的形式,如在无线电波和红外数据通信过程中产生的声波或光波。

在实施例中,各种形式的介质涉及向处理器304携带一个或多个指令序列以供执行。例如,这些指令最初是在远程计算机的磁盘或固态驱动器上执行的。远程计算机将指令加载到其动态存储器中,并使用调制解调器通过电话线路发送指令。计算机系统300的本地调制解调器接收电话线路上的数据,并使用红外发射机将数据转换为红外信号。红外检测器接收红外信号中携带的数据,并且适当的电路将数据放置在总线302上。总线302将数据承载到主存储器306,处理器304从主存储器306检索并执行指令。主存储器306接收的指令可以任选地在处理器304执行之前或之后存储在存储装置310上。

计算机系统300还包括连接到总线302的通信接口318。通信接口318提供耦接至连接至本地网络322的网络链路320多双向数据通信。例如,通信接口318是综合业务数字网(ISDN)卡、电缆调制解调器、卫星调制解调器或用以提供与相应类型电话线路的数据通信连接的调制解调器。作为另一示例,通信接口318是局域网(LAN)卡,用于提供与兼容LAN的数据通信连接。在一些实现中,无线链路也被实现。在任何这种实现中,通信接口318发送和接收承载代表各种信息的数字数据流的电、电磁或光信号。

网络链路320通常通过一个或多个网络向其它数据装置提供数据通信。例如,网络链路320通过本地网络322提供与主计算机324或与由因特网服务提供商(ISP)326运营的云数据中心或设备的连接。ISP 326又通过现在通常称为“因特网”的世界范围分组数据通信网络来提供数据通信服务。本地网络322和因特网328都使用携带数字数据流的电、电磁或光信号。通过各种网络的信号以及网络链路320上并通过通信接口318的信号是传输介质的示例形式,其中通信接口318承载了进出计算机系统300的数字数据。在实施例中,网络320包含上述云202或云202的一部分。

计算机系统300通过(一个或多个)网络、网络链路320和通信接口318发送消息和接收包括程序代码的数据。在实施例中,计算机系统300接收用于处理的代码。接收到的代码在接收到时由处理器304执行,和/或存储在存储装置310中,或存储在其它非易失性存储装置中以便以后执行。

自主运载工具架构

图4是示出根据一个或多个实施例的用于自主运载工具(例如,图1所示的AV 100)的示例架构400的框图。架构400包括感知模块402(有时称为感知电路)、规划模块404(有时称为规划电路)、控制模块406(有时称为控制电路)、定位模块408(有时称为定位电路)和数据库模块410(有时称为数据库电路)。各模块在AV 100的操作中发挥作用。共同地,模块402、404、406、408和410可以是图1所示的AV系统120的一部分。在一些实施例中,模块402、404、406、408和410中的任何模块是计算机软件(例如,计算机可读介质上所存储的可执行代码)和计算机硬件(例如,一个或多个微处理器、微控制器、专用集成电路[ASIC]、硬件存储器装置、其它类型的集成电路、其它类型的计算机硬件、或者这些硬件中的任何或所有的组合)的组合。

在使用中,规划模块404接收表示目的地412的数据,并且确定表示AV100为了到达(例如,抵达)目的地412而可以行驶的轨迹414(有时称为路线)的数据。为了使规划模块404确定表示轨迹414的数据,规划模块404从感知模块402、定位模块408和数据库模块410接收数据。

感知模块402使用例如也如图1所示的一个或多个传感器121来识别附近的物理对象。将对象分类(例如,分组成诸如行人、自行车、汽车、交通标志等的类型),并且将包括经分类的对象416的场景描述提供至规划模块404。

规划模块404还从定位模块408接收表示AV位置418的数据。定位模块408通过使用来自传感器121的数据和来自数据库模块410的数据(例如,地理数据)以计算位置来确定AV位置。例如,定位模块408使用来自GNSS(全球操作卫星系统)传感器的数据和地理数据来计算AV的经度和纬度。在实施例中,定位模块408所使用的数据包括具有行车道几何属性的高精度地图、描述道路网络连接属性的地图、描述行车道物理属性(诸如交通速率、交通量、运载工具和自行车车道的数量、车道宽度、车道交通方向、或车道标记类型和地点,或者它们的组合)的地图、以及描述道路特征(诸如十字路口、交通标志或各种类型的其它行驶信号等)的空间地点的地图。

控制模块406接收表示轨迹414的数据和表示AV位置418的数据,并且以将使得AV100行驶轨迹414到达目的地412的方式来操作AV的控制功能420a~420c(例如,转向、油门、制动、点火)。例如,如果轨迹414包括左转,则控制模块406将以如下方式操作控制功能420a~420c:转向功能的转向角度将使得AV 100左转,并且油门和制动将使得AV 100在进行转弯之前暂停并等待经过的行人或运载工具。

自主运载工具输入

图5是示出根据一个或多个实施例的感知模块402(图4)所使用的输入502a-502d(例如,图1中所示的传感器121)和输出504a-504d(例如,传感器数据)的示例的框图。一个输入502a是LiDAR(光检测和测距)系统(例如,图1所示的LiDAR 123)。LiDAR是使用光(例如,诸如红外光等的一道光)来获得与其视线中的物理对象有关的数据的技术。LiDAR系统产生LiDAR数据作为输出504a。例如,LiDAR数据是用于构造环境190的表现的3D或2D点(也称为点云)的集合。

另一输入502b是RADAR(雷达)系统。RADAR是使用无线电波来获得与附近的物理对象有关的数据的技术。RADAR可以获得与不在LiDAR系统的视线内的对象有关的数据。RADAR系统502b产生RADAR数据作为输出504b。例如,RADAR数据是用于构造环境190的表现的一个或多个射频电磁信号。

另一输入502c是照相机系统。照相机系统使用一个或多个照相机(例如,使用诸如电荷耦合器件[CCD]等的光传感器的数字照相机)来获取与附近的物理对象有关的信息。照相机系统产生照相机数据作为输出504c。照相机数据通常采用图像数据的形式(例如,诸如RAW、JPEG、PNG等的图像数据格式的数据)。在一些示例中,照相机系统具有例如为了立体影像(立体视觉)的目的的多个独立照相机,这使得照相机系统能够感知深度。尽管照相机系统所感知的对象在这里被描述为“附近”,但这是相对于AV而言的。在使用中,照相机系统可被配置为“看见”远处的(例如,AV前方的远至1公里以上的)对象。因此,照相机系统可以具有为了感知遥远的对象而优化的诸如传感器和透镜等的特征。

另一输入502d是交通灯检测(TLD)系统。TLD系统使用一个或多个照相机来获得与交通灯、街道标志和提供视觉操作信息的其它物理对象有关的信息。TLD系统产生TLD数据作为输出504d。TLD数据经常采用图像数据的形式(例如,诸如RAW、JPEG、PNG等的图像数据格式的数据)。TLD系统与包含照相机的系统的不同之处在于:TLD系统使用具有宽视场(例如,使用广角镜头或鱼眼镜头)的照相机,以获得与尽可能多的提供视觉操作信息的物理对象有关的信息,使得AV 100有权访问这些对象所提供的所有相关操作信息。例如,TLD系统的视角可以为约120度以上。

在一些实施例中,使用传感器融合技术来组合输出504a-504d。因而,将个体输出504a-504d提供至AV 100的其它系统(例如,提供至如图4所示的规划模块404),或者采用相同类型(例如,使用相同组合技术或组合相同输出或者这两者)或不同类型(例如,使用不同的各个组合技术或组合不同的各个输出或者这两者)的单个组合输出或多个组合输出的形式,可以将组合输出提供至其它系统。在一些实施例中,使用早期融合技术。早期融合技术的特征在于:将输出组合,之后将一个或多个数据处理步骤应用到组合输出。在一些实施例中,使用后期融合技术。后期融合技术的特征在于:在将一个或多个数据处理步骤应用到个体输出之后,将输出组合。

图6是示出根据一个或多个实施例的LiDAR系统602的示例(例如,图5所示的输入502a)的框图。LiDAR系统602从发光器606(例如,激光发射器)发射光604a-604c。LiDAR系统所发射的光通常不在可见光谱中;例如,经常使用红外光。所发射的光604b中的一些光遇到物理对象608(例如,运载工具)并且反射回到LiDAR系统602。(从LiDAR系统发射的光通常不会穿透物理对象,例如,实心形式的物理对象。)LiDAR系统602还具有用于检测反射光的一个或多个光检测器610。在实施例中,与LiDAR系统相关联的一个或多个数据处理系统生成表示LiDAR系统的视场614的图像612。图像612包括表示物理对象608的边界616的信息。这样,图像612用于确定AV附近的一个或多个物理对象的边界616。

图7是示出根据一个或多个实施例的操作中的LiDAR系统602的框图。在该图所示的情境中,AV 100接收采用图像702的形式的照相机系统输出504c和采用LiDAR数据点704的形式的LiDAR系统输出504a。在使用中,AV 100的数据处理系统将图像702与数据点704进行比较。特别地,在数据点704中也识别出在图像702中识别出的物理对象706。这样,AV 100基于数据点704的轮廓和密度来感知物理对象的边界。

图8是示出根据一个或多个实施例的LiDAR系统602的操作的附加细节的框图。如上所述,AV 100基于LiDAR系统602所检测到的数据点的特性来检测物理对象的边界。如图8所示,诸如地面802等的平坦对象将以一致的方式反射从LiDAR系统602发射的光804a-804d。换句话说,由于LiDAR系统602使用一致的间隔发射光,因此地面802将以相同的一致间隔将光反射回到LiDAR系统602。在AV 100在地面802上行驶时,在没有东西阻挡道路的情况下,LiDAR系统602将继续检测到由下一个有效地面点806反射的光。然而,如果对象808阻挡道路,则LiDAR系统602所发射的光804e-804f将以不符合预期一致方式的方式从点810a-810b反射。根据该信息,AV 100可以确定为存在对象808。

路径规划

图9是示出是示出根据一个或多个实施例的(例如,如图4所示的)规划模块404的输入和输出之间的关系的框图900。通常,规划模块404的输出是从起点904(例如,源地点或初始地点)到终点906(例如,目的地或最终地点)的路线902。路线902通常由一个或多个路段定义。例如,路段是指要行驶经过街道、道路、公路、行车道或适合汽车行驶的其它物理区域的至少一部分的距离。在一些示例中,例如,如果AV 100是诸如四轮驱动(4WD)或全轮驱动(AWD)小汽车、SUV或小型卡车等的越野运载工具,则路线902包括诸如未铺面道路或开阔田野等的“越野”路段。

除路线902之外,规划模块还输出车道级路线规划数据908。车道级路线规划数据908用于在特定时间基于路线902的路段的条件来驶过这些路段。例如,如果路线902包括多车道公路,则车道级路线规划数据908包括轨迹规划数据910,其中AV 100可以使用该轨迹规划数据910以例如基于出口是否临近、多个车道中的一个以上的车道是否存在其它运载工具、或者在几分钟或更少时间的过程中变化的其它因素,来从这多个车道中选择某车道。同样地,在一些实现中,车道级路线规划数据908包括路线902的某路段特有的速率约束912。例如,如果该路段包括行人或非预期交通,则速率约束912可以将AV 100限制到比预期速率慢的行驶速率,例如基于该路段的限速数据的速率。

在实施例中,向规划模块404的输入包括(例如,来自图4所示的数据库模块410的)数据库数据914、当前地点数据916(例如,图4所示的AV位置418)、(例如,用于图4所示的目的地412的)目的地数据918和对象数据920(例如,如图4所示的感知模块402所感知的经分类的对象416)。在一些实施例中,数据库数据914包括规划时所使用的规则。规则是使用形式语言(例如,使用布尔逻辑)指定的。在AV 100所遇到的任何给定情形中,这些规则中的至少一些规则将适用于该情形。如果规则具有基于AV 100可用的信息(例如,与周围环境有关的信息)所满足的条件,则该规则适用于给定情形。规则可以具有优先级。例如,“如果公路是高速公路,则移动到最左侧车道”这一规则与“如果出口在一英里内临近,则移动到最右侧车道”相比可以具有更低的优先级。

图10是示出根据一个或多个实施例的在路径规划中(例如,由规划模块404(图4))使用的有向图1000。通常,如图10所示的有向图那样的有向图1000用于确定任何起点1002和终点1004之间的路径。在现实世界中,分隔起点1002和终点1004的距离可能相对较大(例如,在两个不同的都市区域中),或者可能相对较小(例如,毗邻城市街区的两个十字路口或多车道道路的两条车道)。

在实施例中,有向图1000具有表示起点1002和终点1004之间的AV 100可能占用的不同地点的节点1006a-1006d。在一些示例中,例如,在起点1002和终点1004表示不同的都市区域时,节点1006a-1006d表示道路的路段。在一些示例中,例如,在起点1002和终点1004表示相同道路上的不同地点时,节点1006a-1006d表示该道路上的不同位置。这样,有向图1000包括不同粒度级别的信息。在实施例中,具有高粒度的有向图也是具有更大规模的另一有向图的子图。例如,起点1002和终点1004相距远(例如,相距许多英里)的有向图的大部分信息处于低粒度,并且该有向图是基于所存储的数据,但该有向图还包括供该有向图中的表示AV 100的视场中的物理地点的一部分用的一些高粒度信息。

节点1006a-1006d不同于无法与节点重叠的对象1008a-1008b。在实施例中,在粒度低时,对象1008a-1008b表示汽车不能驶过的地区,例如无街道或道路的区域。在粒度高时,对象1008a-1008b表示AV 100的视场中的物理对象,例如其它汽车、行人、或AV 100不能与之共用物理空间的其它实体。在实施例中,对象1008a-1008b中的一个或多个是静态对象(例如,不改变位置的对象,诸如街灯或电线杆等)或动态对象(例如,能够改变位置的对象,诸如行人或其它小汽车等)。

节点1006a-1006d通过边缘1010a-1010c连接。如果两个节点1006a-1006b通过边缘1010a连接,则AV 100可以在一个节点1006a和另一节点1006b之间行驶,例如,而不必在到达另一节点1006b之前行驶到中间节点。(当提到AV 100在节点之间行驶时,意味着AV100在由相应节点表示的两个物理位置之间行驶。)边缘1010a-1010c通常是双向的,从某种意义上,AV 100从第一节点行驶到第二节点,或者从第二节点行驶到第一节点。在实施例中,边缘1010a-1010c是单向的,从某种意义上,AV 100可以从第一节点行驶到第二节点,然而AV 100不能从第二节点行驶到第一节点。在边缘1010a-1010c表示例如单向街道、街道、道路或公路的单独车道、或者由于法律或物理约束因而仅能沿一个方向驶过的其它特征的情况下,边缘1010a-1010c是单向的。

在实施例中,规划模块404使用有向图1000来识别由起点1002和终点1004之间的节点和边缘组成的路径1012。

边缘1010a-1010c具有关联成本1014a-1014b。成本1014a-1014b是表示在AV 100选择该边缘的情况下将花费的资源的值。典型的资源是时间。例如,如果一个边缘1010a所表示的物理距离是另一边缘1010b所表示的物理距离的两倍,则第一边缘1010a的关联成本1014a可以是第二边缘1010b的关联成本1014b的两倍。影响时间的其它因素包括预期交通、十字路口的数量、限速等。另一典型的资源是燃料经济性。两个边缘1010a-1010b可以表示相同的物理距离,但例如由于道路条件、预期天气等,因此一个边缘1010a与另一边缘1010b相比需要更多的燃料。

在规划模块404识别起点1002和终点1004之间的路径1012时,规划模块404通常选择针对成本优化的路径,例如,在将边缘的各个成本相加到一起时具有最小总成本的路径。

自主运载工具控制

图11是示出根据一个或多个实施例的(例如,如图4所示的)控制模块406的输入和输出的框图1100。控制模块根据控制器1102而工作,该控制器1102例如包括:与处理器304类似的一个或多个处理器(例如,诸如微处理器或微控制器或这两者等的一个或多个计算机处理器);与主存储器306、ROM 308和存储装置310类似的短期和/或长期数据存储装置(例如,存储器随机存取存储器或闪速存储器或这两者);以及存储器中所存储的指令,这些指令在(例如,由一个或多个处理器)执行时执行控制器1102的操作。

在实施例中,控制器1102接收表示期望输出1104的数据。期望输出1104通常包括速度,例如速率和航向。期望输出1104例如可以基于从(例如,如图4所示的)规划模块404接收到的数据。根据期望输出1104,控制器1102产生可用作油门输入1106和转向输入1108的数据。油门输入1106表示例如通过接合转向踏板或接合另一油门控件来接合AV 100的油门(例如,加速控制)以实现期望输出1104的大小。在一些示例中,油门输入1106还包括可用于接合AV 100的制动器(例如,减速控制)的数据。转向输入1108表示转向角度,例如AV的转向控制(例如,方向盘、转向角致动器或用于控制转向角度的其它功能)应被定位成实现期望输出1104的角度。

在实施例中,控制器1102接收在调整提供至油门和转向的输入时使用的反馈。例如,如果AV 100遇到诸如山丘等的干扰1110,则AV 100的测量速率1112降至低于期望输出速率。在实施例中,任何测量输出1114均被提供至控制器1102,使得例如基于测量速率和期望输出之间的差分1113来进行所需的调整。测量输出1114包括测量位置1116、测量速度1118(包括速率和航向)、测量加速度1120和AV 100的传感器可测量的其它输出。

在实施例中,例如通过诸如照相机或LiDAR传感器等的传感器预先检测与干扰1110有关的信息,并且该信息被提供至预测性反馈模块1122。然后,预测性反馈模块1122将控制器1102可用于相应地调整的信息提供至控制器1102。例如,如果AV 100的传感器检测到(“看见”)山丘,则控制器1102可以使用该信息来准备在适当时间接合油门,以避免显著减速。

图12是示出根据一个或多个实施例的控制器1102的输入、输出和组件的框图1200。控制器1102具有影响油门/制动器控制器1204的操作的速率分析器1202。例如,速率分析器1202根据例如由控制器1102接收到并由速率分析器1202处理后的反馈,来指示油门/制动器控制器1204使用油门/制动器1206进行加速或进行减速。

控制器1102还具有影响方向盘控制器1210的操作的横向跟踪控制器1208。例如,横向跟踪控制器1208根据例如由控制器1102接收到并由横向跟踪控制器1208处理后的反馈,来指示方向盘控制器1210调整转向角致动器1212的位置。

控制器1102接收用于确定如何控制油门/制动器1206和转向角致动器1212的多个输入。规划模块404提供控制器1102例如选择AV 100开始操作时的航向并确定在AV 100到达十字交叉路口时驶过哪个道路路段所使用的信息。定位模块408例如将描述AV 100的当前地点的信息提供至控制器1102,使得控制器1102可以确定AV 100是否处于基于正控制油门/制动器1206和转向角致动器1212的方式而预期所处的地点。在实施例中,控制器1102接收来自其它输入1214的信息,例如从数据库、计算机网络等接收到的信息。

安全系统的架构

图13是示出根据一个或多个实施例的运载工具(例如,参考图1更详细地例示和说明的AV 100)的环境190的框图。环境190包括AV 100以及包含特定对象1304a(例如,运载工具或行人)的一个或多个对象1304。一个或多个对象1304是参考图1更详细地例示和说明的自然障碍物191、运载工具193或行人192的示例。AV 100包括导航系统1308和安全系统1300。导航系统1308是使用参考图3更详细地例示和说明的组件所构建的。导航系统1308和安全系统1300各自是参考图1更详细地例示和说明的AV系统120的独立部分。

导航系统1308用于AV 100的正常(非紧急)操作。在一些实施例中,导航系统1308被称为AV堆栈。在其它实施例中,术语AV堆栈指的是绘制地图模块(或定位模块408)、感知模块402、规划模块404和控制电路406的组合。在一些实施例中,导航系统1308包括参考图4更详细地例示和说明的感知模块402、规划模块404和控制电路406。在其它实施例中,控制电路406位于导航系统1308的外部。另一方面,安全系统1300用于紧急操作,诸如用于自动紧急制动以避免与一个或多个对象1304发生碰撞等。安全系统1300独立于导航系统1308,但可通信地耦接至导航系统1308,使得安全系统1300可以从导航系统1308接收轨迹198、或者向控制电路406发送制动和其它命令。参考图1更详细地例示和说明了轨迹198。

安全系统1300包括对象跟踪器电路1312、动态占据栅格电路1316和仲裁器电路1320。在一些实施例中,安全系统1300包括一个或多个传感器1324。传感器1324可以位于安全系统1300的外部并且与安全系统1300进行通信。传感器1324独立于参考图1更详细地所述的传感器120、121、122和123。传感器1324包括RADAR和照相机至少之一。传感器1324可以包括单目或立体摄像机。传感器1324感测或测量环境190的性质。在其它实施例中,安全系统1300不包括传感器1324,而是使用来自连至导航系统1308的传感器121和单目或立体摄像机122的数据。在其它实施例中,传感器121和单目或立体摄像机122直接连至安全系统1300以供对象跟踪器电路1312使用。

在实施例中,传感器1324是基于里程计数据(odometry data)1334来进行相对于AV 100的运动的运动补偿的智能传感器。例如,传感器1324可以包括车轮速率传感器、以及向安全系统1300提供数据以检测AV 100的车道位置的其它里程计传感器。安全系统1300可以使用AV 100的速率、俯仰、侧倾和横摆来确定AV 100相对于由导航系统1308计算出的轨迹198的位置。传感器1324接收或生成表示环境190的性质的传感器数据1328(例如,RADAR信号或照相机图像)。在实施例中,传感器1324接收表示位于AV 100正运行的环境190内的一个或多个对象1304的RADAR数据和照相机图像。

安全系统1300有时被称为“自动紧急制动(AEB)RADAR和照相机(R&C)系统”。在实施例中,R&C系统硬件被封装并附接到完全在双层挡风玻璃刮水器区内的AV 100的前挡风玻璃的后侧。操作传感器1324的R&C电路被设计为具有AEB能力的冗余安全系统。在实施例中,R&C系统包括与AV堆栈传感器121分开且不同的前视传感器1324。在实施例中,传感器1324是来自Aptiv

在安全系统1300包括传感器1324的一些实施例中,对象跟踪器电路1312接收表示位于AV 100正运行的环境190中的一个或多个对象1304的传感器数据1328。在安全系统1300不包括传感器1324的其它实施例中,安全系统1300从传感器121和单目或立体摄像机122接收数据。对象跟踪器电路1312是使用参考图3更详细地例示和说明的组件所构建的。对象跟踪器电路1312基于传感器数据1328来生成环境190的概率模型。为了生成概率模型,对象跟踪器电路1312生成各对象1304的概率状态。在一些实施例中,传感器数据1328的递归贝叶斯滤波用于生成对象1304的概率状态。在其它实施例中,使用其它概率方法来使用动态占据栅格电路1316填充动态占据栅格。对象跟踪器电路1312确定多个“信念”(各对象1304和AV 100的地点)的概率,以允许AV 100基于传感器数据1328来推断其位置和朝向。在实施例中,传感器数据1328是线性分布的,并且对象跟踪器电路1312使用卡尔曼滤波器来进行递归贝叶斯滤波。卡尔曼滤波器使用随时间的经过所观测到的传感器数据1328来产生各对象1304的概率状态的估计,使得这些估计与仅基于单次测量的估计相比更准确。

对于各对象1304,概率状态包括在相对于AV 100的坐标系中由[X,Y]表示的对象1304的时空地点。概率状态是在不同时间处(诸如在特定时间T处等)确定的。概率状态包括在特定时间T处对象1304相对于AV 100的速度[V

在实施例中,对象跟踪器电路1312被配置为从一个或多个传感器1324或者参考图1更详细地例示和说明的传感器121接收里程计数据1334。对象跟踪器电路1312基于里程计数据1334来对各对象1304的概率状态进行运动补偿。进行运动补偿以跟踪对象1304相对于AV 100的运动的概率状态。对象跟踪器电路1312从数学上对对象1304在动态环境190中的运动进行建模。对象跟踪器电路1312使用来自多个传感器1324(诸如RADAR或照相机等)的含噪声的测量值(传感器数据1328)来进行对象跟踪,以通过随时间的经过对传感器数据1328进行滤波来导出对象1304的数量和特性这两者。基于各对象1304的概率状态,对象跟踪器电路1312确定从对象1304到AV 100的距离。例如,距离是与AV 100的横向距离或正面距离。在实施例中,环境190的概率模型是用源自AV 100的前保险杠的笛卡尔坐标系表示的。

在实施例中,对象跟踪器电路1312使用基于对象的建模来生成环境190的概率模型,其中在该基于对象的建模中,特定对象1304a的概率状态独立于另一对象1304b的概率状态。对象跟踪器电路1312被配置为通过使用二元贝叶斯滤波器(binary Bayes filter)估计各对象1304的二元存在概率来生成对象1304的概率状态。对于各对象假设(概率状态或“踪迹(track)”),通过二元贝叶斯滤波器来估计存在概率p(x)。存在概率p(x)根据来自传感器数据1328的测量值是否可以与踪迹相关联而可以是二元的。在实施例中,对象跟踪器电路1312被配置为通过估计对象1304的先前概率状态与传感器数据1328之间的马氏距离来生成各对象1304的概率状态。考虑到踪迹与测量值之间的马氏距离,存在概率被确定为是连续的。

在实施例中,对象跟踪器电路1312通过对RADAR数据和照相机图像(传感器数据1328)进行数据融合来生成环境190的表示(概率模型)。环境190的概率模型针对各对象1304包括对象1304的概率状态、该概率状态的误差协方差P和该状态的存在概率p(x)。误差协方差P是指(a)来自传感器数据1328的对象1304的测量值和(b)对象1304的概率状态的联合变异性。存在概率p(x)是指如下的函数,该函数在样本空间中的任意给定样本处的值是对象1304的概率状态等于该样本的可能性。存在概率p(x)有时被称为概率密度函数(PDF)。在各时间步长处,数据融合生成由跟踪时间和对象定义表示的对象1304的同步矩阵。各对象定义包括踪迹(对象1304的概率状态)、该踪迹的误差协方差P和该轨迹的存在概率p(x)。

在实施例中,对象跟踪器电路1312对环境190的表示(概率模型)和轨迹198进行运算(诸如矩阵运算等),以识别一个或多个对象1304中的特定对象1304a,使得AV 100与特定对象1304a的碰撞时间(TTC)小于阈值时间。例如,阈值时间可以是两或三秒。在实施例中,针对AV 100的前保险杠进行TTC确定。在实施例中,如果TTC低于碰撞警告阈值时间,则安全系统1300将制动器预充电和减速请求(紧急制动命令)发送至控制电路406。因而,安全系统1300将轨迹198与环境190的对象踪迹矩阵(概率模型)组合以感测特定对象1304a。安全系统1300使用AV 100的坐标框架来进行计算。

在实施例中,对象跟踪器电路1312基于环境190的概率模型来确定在特定时间T处AV 100与一个或多个对象1304中的特定对象1304a的第一碰撞概率。当第一碰撞概率大于零时,对象跟踪器电路1312生成指示特定对象1304a和特定时间T的第一碰撞警告。在实施例中,对象跟踪器电路1312还被配置为经由连接电路1332从导航系统1308接收AV 100的轨迹198。安全系统1300独立于导航系统1308(及其控制软件开发套件(SDK)),但经由承载数据流量的连接电路1332与导航系统1308(及其控制软件开发套件(SDK))进行通信,并且还对安全系统1300和导航系统1308之间的消息进行压缩和解压缩或加密。对象跟踪器电路1312基于轨迹198来确定第一碰撞概率。例如,使用环境190的概率模型来确定特定对象1304a与轨迹198是否相交以预测与AV 100的碰撞。

对象跟踪器电路1312还被配置为基于RADAR和照相机图像来识别AV 100正运行的环境190内的行驶车道。使用车道标记的照相机图像来确定AV 100相对于车道标记的位置。对象跟踪器电路1312基于行驶车道确定为特定对象1304a具有“低”TTC(例如,小于5秒)。AV100可以从侧向靠近对象1304。然而,如果对象1304和AV 100各自正在单独的行驶车道中运行,则对象跟踪器电路1312将确定为第一碰撞概率为零。此外,对象1304可以是在与AV 100正运行的方向相反的方向上接近AV 100的运载工具。然而,对象跟踪器电路1312确定为存在将AV 100和对象1304分开的分道线。安全系统1300将不会被激活以进行紧急制动。在实施例中,对象跟踪器电路1312基于AV 100的速率、AV 100的俯仰、AV 100的侧倾以及AV 100的横摆来确定AV 100的时空地点。第一碰撞概率是基于AV 100的时空地点来确定的。

对象跟踪器电路1312还被配置为从控制电路406接收控制数据。控制数据可以包括AV 100的速率、AV 100的转向角度、加速度、横摆率等。控制数据是在控制电路406根据该控制数据操作AV 100之前由对象跟踪器电路1312接收到的。控制数据是由对象跟踪器电路1312以特定频率接收到的。例如,从控制电路406向安全系统1300发送的控制数据包括速率和转向分布的三秒“前瞻(look-ahead)”,并且是按10Hz的频率更新的。控制数据可以与轨迹198匹配,或者用于核实AV 100相对于特定对象1304a的地点。

一个或多个传感器1324还被配置为在安全系统1300的电源接通时进行上电自检。上电自检是传感器1324的基本输入/输出系统(BIOS)为了确定传感器1324及其控制硬件是否正常工作所执行的诊断测试序列。响应于一个或多个传感器1324未通过上电自检,对象跟踪器电路1312将表示未通过上电自检的诊断代码发送至仲裁器电路1320以禁用安全系统1300。因而,如果传感器1324未通过自检,则AEB功能将不处于活动状态。

动态占据栅格电路1316基于从AV 100的LiDAR 123接收到的LiDAR数据、轨迹198、以及控制数据来独立地进行碰撞预测。动态占据栅格电路1316是使用参考图3更详细地例示和说明的组件所构建的。参考图1更详细地例示和说明了LiDAR 123。动态占据栅格电路1316可通信地耦接至仲裁器电路1320,并且被配置为基于环境190的动态占据栅格来确定AV 100与特定对象1304a的第二碰撞概率。

动态占据栅格是指AV 100的环境190的离散化表示。动态占据栅格包括具有各自表示环境190的单位面积(或体积)的多个个体单元格(立方体)的栅格地图。在一些实现中,动态占据栅格电路1316被配置为更新各个体栅格单元格的占据概率。各占据概率表示在个体单元格中存在经分类的对象1304中的一个或多个的可能性。在实施例中,动态占据栅格包括多个时变颗粒密度函数。各时变粒子密度函数与对象1304的地点相关联。响应于第二碰撞概率超过阈值,动态占据栅格电路1316生成指示特定对象1304a的第二碰撞警告。响应于第二碰撞概率大于零,动态占据栅格电路1316生成第二碰撞警告。

仲裁器电路1320可通信地耦接至对象跟踪器电路1312以接收诸如来自对象跟踪器电路1312的心跳(heartbeat)信号和第一碰撞警告等的信号。心跳信号指示对象跟踪器电路1312通电并正按预期起作用。仲裁器电路1320是使用参考图3更详细地例示和说明的组件所构建的。对于各踪迹,对象跟踪器电路1312计算TTC。在仲裁器电路1320被初始化之后,仲裁器电路1320侦听和分析来自对象跟踪器电路1312和动态占据栅格电路1316的心跳信号和诊断代码。仲裁器电路1312收集来自对象跟踪器电路1312和动态占据栅格电路1316的诊断,监视通电状况信号,并且监视AV自动/手动按钮状况信号。

响应于从对象跟踪器电路1312接收到第一碰撞警告,仲裁器电路1320将紧急制动命令发送至导航系统1308的控制电路406。安全系统1300包括对象跟踪器电路1312(供多对象跟踪用)和动态占据栅格电路1316作为冗余的碰撞警告系统,这些碰撞警告系统接收原始传感器数据1328和来自独立于导航系统1308的控制电路406的控制数据。对象跟踪器电路1312和动态占据栅格电路1316对是否使AV 100减速作出独立决定。仲裁器电路1312还被配置为监视从动态占据栅格电路1316接收到的消息。在实施例中,仲裁器电路1312还被配置为从导航系统1308接收附加的碰撞警告。仲裁器电路1312针对该附加的碰撞警告来验证第一碰撞警告和第二碰撞警告。例如,仲裁器电路1312在导航系统1308、对象跟踪器电路1312和动态占据栅格电路1316之间进行三重模块化冗余验证。

仲裁器电路1320基于传感器数据1328来针对由安全系统1300的动态占据栅格电路1316所确定的第二碰撞概率核实来自对象跟踪器电路1312的第一碰撞警告。响应于第二碰撞概率的核实,进行从仲裁器电路1320向控制电路406发送紧急制动命令。在实施例中,仲裁器电路1320还被配置为针对由对象跟踪器电路1312生成的第一碰撞警告来验证由动态占据栅格电路1316生成的第二碰撞警告。第二碰撞警告是基于AV 100与特定对象1304的TTC所生成的。在实施例中,仲裁器电路1320通过在对象跟踪器电路1312和动态占据栅格电路1316之间进行仲裁来针对第二碰撞警告验证第一碰撞警告。

在针对第二碰撞警告验证第一碰撞警告之前,仲裁器电路1320被配置为确定为从对象跟踪器电路1312接收到了第一心跳信号。仲裁器电路1320被配置为确定为从动态占据栅格电路1316接收到了第二心跳信号。仲裁器电路1320被配置为确定为AV 100通电。仲裁器电路1320监视通电状况信号和AV自动/手动按钮状况信号。

响应于对象跟踪器电路1312识别出AV 100与特定对象1304a的TTC“低”(例如,小于2秒),仲裁器电路1320生成紧急制动命令。仲裁器电路1320还被配置为将紧急制动命令发送至导航系统1308,使得导航系统1308能够为AV 100生成新轨迹。由于当前的轨迹198导致紧急制动操作,因此需要新轨迹。在生成新轨迹时,如参考图9更详细地例示和所述,规划模块404将试图避开对象1304。

在实施例中,对象跟踪器电路1312还被配置为基于RADAR数据和照相机图像来确定对象1304的大小。例如,有时在道路上遇到碎石。为了以全速跟踪横向对象的目的,安全系统1300依赖于具有宽视野的传感器1324。对象跟踪器电路1312确定为对象1304的大小小于阈值大小。例如,使用20cm×20cm的阈值大小。响应于确定为对象1304的大小小于阈值大小,对象跟踪器电路1312将心跳信号发送至仲裁器电路1320,以使得控制电路406能够继续根据轨迹198来操作AV 100。安全系统1300不向规划模块404发送第一碰撞警告或者不向控制电路406发送减速请求(紧急制动命令)。

仲裁器电路1320还被配置为确定为对象跟踪器电路1312未能将心跳信号发送至仲裁器电路1320并持续了大于阈值时间段。例如,可以选择在30秒和3分钟之间的阈值时间段。响应于确定为对象跟踪器电路1312未能发送心跳信号,仲裁器电路1320禁用安全系统1300。导航系统1308现在控制AV 100。导航系统1308可以进行舒适停车,使得可以对AV 100进行诊断或修理。舒适停车是指根据AV 100或乘坐AV 100的乘员的舒适性配置文件的平稳(非紧急)制动操作。

在实施例中,响应于确定为对象跟踪器电路1312未能将心跳信号发送至仲裁器电路1320,仲裁器电路1320向导航系统1308发送消息,以根据乘坐AV 100的乘员的乘员舒适性配置文件来进行制动操作。例如,如果仲裁器电路1320未接收到心跳信号、并且AV 100的速率大于阈值速率(例如,0.5mph),则仲裁器电路1320指示规划模块404进行舒适停车。

仲裁器电路1320还被配置为从对象跟踪器电路1312和动态占据栅格电路1316接收诊断代码。诊断代码可以指示在对象跟踪器电路1312或动态占据栅格电路1316中存在故障。响应于接收到诊断代码,仲裁器电路1320忽略来自对象跟踪器电路1312或动态占据栅格电路1316的将来消息。例如,AV 100正以自主模式操作。仲裁器电路1312周期性地监视来自对象跟踪器电路1312和动态占据栅格电路1316的心跳信号和诊断代码。仲裁器电路1312检测来自对象跟踪器电路1312的指示故障的诊断代码。仲裁器电路1312忽略来自对象跟踪器电路1312的将来消息。

对象跟踪器电路1312还被配置为从控制电路406接收控制数据。控制数据至少包括AV 100的方向盘角度。控制数据还可以包括制动压力和方向盘扭矩至少之一。对象跟踪器电路1312将从导航系统1308接收到的轨迹198与控制数据进行比较。对象跟踪器电路1312可以基于该比较来确定控制数据和轨迹198之间的不匹配。当在转向系统102中存在机械不同轴性(mechanical misalignment)、AV 100的位置与轨迹198不匹配、或者来自导航系统1308的轨迹数据可能由于延迟(例如,路径数据信号的延迟)而卡住时,可能发生不匹配。响应于确定为不匹配,对象跟踪器电路1312向导航系统1308发送消息,以基于该不匹配生成新轨迹。因而,将与不匹配有关的信息发送至规划模块404以并入路径规划。

在实施例中,仲裁器电路1320可以进行通常由导航系统1308进行的功能。例如,当在控制数据和轨迹198之间存在不匹配时,可以进行这样的功能。例如,仲裁器电路1320确定为AV 100的速率大于阈值速率(诸如40mph或60mph等)。响应于确定为AV 100的速率大于阈值速率,仲裁器电路1320将减速命令(紧急制动命令)发送至控制电路406。

当AV 100通电时,安全系统1300变为活动状态。AV系统120可以处于手动模式。仲裁器电路1320确定为相对于特定对象1304a的TTC低于阈值时间(例如,2秒)。仲裁器电路1320确定为AV 100正由用户操作。在安全系统1300在手动模式下识别出低TTC事件、但用户未制动或主动避开特定对象1304a的情况下,发生该情形。响应于低TTC事件,仲裁器电路1320确定为不存在用户所施加的制动压力。R&C AEB系统激活。响应于确定为不存在制动压力,仲裁器电路1320将紧急制动命令发送至控制电路406。

在实施例中,仲裁器电路1320还被配置为确定为AV 100正由AV 100内的用户操作(非自主手动模式)。响应于接收到第一碰撞警告,仲裁器电路1320可以确定为用户实际上施加了制动压力。响应于确定为施加了制动压力,仲裁器电路1320向控制电路406发送消息,以根据从用户接收到的控制信息来操作AV 100。例如,一旦AV 100通电,R&C AEB系统1300变为活动状态。AV系统120处于手动模式,并且用户正在驾驶AV 100。安全系统1300识别出“低”TTC事件。用户制动(或主动转向)AV 100。在确定了用户参与时,R&C AEB系统1300不激活。

在特定紧急制动情景中,仲裁器电路1320将油门关闭命令发送至控制电路406。AV100由控制电路406减速。响应于发送了油门关闭命令,仲裁器电路1320从动态占据栅格电路1316接收到第三碰撞警告。响应于接收到第三碰撞警告,仲裁器电路1320向控制电路406发送命令以增加AV 100的减速量。例如,仲裁器电路1320从动态占据栅格电路1316接收到第二碰撞警告。仲裁器电路1320感觉到AV 100的速率大于0.5mph。仲裁器电路1320将针对“中等”量(例如,6m/s

仲裁器电路1320还被配置为响应于仲裁器电路1320将油门关闭命令发送至控制模块406,发起利用AV 100的黑匣子记录控制数据、传感器数据1328和其它信号至少之一。例如,安全系统1300发起由安全系统1300所发起的紧急制动事件触发的黑匣子数据的记录。紧急制动事件不符合常规轨迹198。黑匣子数据包括来自紧急制动事件之前的某时间段(例如,1秒或30秒)的控制数据。控制数据可以包括AV 100的速率、AV 100的转向角度或AV100的制动踏板状况。黑匣子数据包括诸如速率、转向角度、内部信号或输出信号等的各数据信号的时间戳。内部信号是指踪迹、碰撞概率、置信度水平、TTC、等等。输出信号是指油门关闭命令、制动器预充电命令、减速水平、等等。黑匣子记录还可以包括RADAR踪迹、照相机踪迹、融合踪迹、传感器数据1328的分类、等等。

参考图4更详细地例示和说明了控制电路406。控制电路406是使用参考图3更详细地例示和说明的组件所构建的。响应于从仲裁器电路1320接收到紧急制动命令,控制电路406被配置为进行紧急制动操作以避免AV 100与特定对象1304a发生碰撞。因而,安全系统1300监视和驱动控制电路406以对AV 100附近的对象1304作出反应。在实施例中,控制电路406通过关闭AV 100的油门来进行紧急制动操作。例如,控制电路406向参考图11更详细地例示和说明的油门输入1106发送命令。在实施例中,控制电路406通过使用致动器增加AV100的一个或多个安全带中的张力以提高乘坐AV 100的乘员的安全性,来进行紧急制动操作。

在实施例中,控制电路406通过对AV 100的制动器103进行预充电来进行紧急制动操作。参考图1更详细地例示和说明了制动器103。控制电路406通过维持AV 100的制动器103上的制动压力来进行紧急制动操作,使得AV 100停止。在实施例中,控制电路406通过打开AV 100的紧急闪光灯以用信号通知紧急制动操作,来进行紧急制动操作。

在实施例中,控制电路406通过利用AV 100的黑匣子记录AV 100的运载工具数据来进行紧急制动操作。运载工具数据包括AV 100的速率、最近的传感器数据1328、以及特定对象1304a的概率状态。例如,在AV 100通电之后,安全系统1300变为活动状态。AV系统120处于自动(自主)模式。导航系统1308正在驾驶AV 100。安全系统1300识别出“低”TTC事件(例如,具有小于2秒的TTC)。安全系统1300激活并接管从导航系统1308对AV 100的控制。安全系统1300按以下顺序向控制电路406发出命令:油门关闭、安全带预紧(如果AV 100平台上可用)、制动器预充电、紧急制动命令、开始内部黑匣子数据记录、紧急闪光灯命令。减速使AV 100停止。安全系统1300指示控制电路406维持制动器103上的压力以保持AV 100静止。

控制电路406根据来自仲裁器电路1320的紧急制动命令来操作AV 100,使得紧急减速避免了AV 100与特定对象1304a发生碰撞。在碰撞的情况下,所进行的碰撞后分析将安全系统1300的数据(对象跟踪器电路1312的数据和动态占据栅格电路1316的数据的黑匣子记录)与导航系统1308的数据进行比较。在实施例中,对象跟踪器电路1312的数据、动态占据栅格电路1316的数据和导航系统1308的数据是相对于源自AV 100的后轴中心点的坐标系所记录的。

在实施例中,导航系统1308根据AV 100或乘员的舒适性配置文件(由位于AV 100上的乘员传感器测量的乘员舒适水平)来操作AV 100。乘员传感器包括用以记录数据(诸如乘员的面部表情、皮肤电传导、脉搏和心率、乘员身体的温度、瞳孔放大、以及AV座椅扶手上的压力等)的专用传感器。可以使用不同的传感器或者不同传感器的组合(例如,心率监测器、血压计、瞳孔计、红外测温计或电流皮肤响应传感器)来记录各类型的数据。规划模块404例如基于如由乘员传感器检测到的指示乘员不适或压力的心率或皮肤电传导水平升高,来规划轨迹198。如普通技术人员将理解,一个或多个乘员的一个或多个物理测量值可以与不适或压力的水平相关,并且可以通过一个或多个运动约束来调整。

用于安全系统的操作的处理

图14是示出根据一个或多个实施例的用于安全系统1300的操作的处理的流程图。在一个实施例中,图14的处理由安全系统1300进行。在其它实施例中,其它实体(例如,AV100的一个或多个组件)进行该处理的步骤中的一个或多个。同样,实施例可以包括不同的和/或附加的步骤,或者按不同的顺序进行这些步骤。

安全系统1300接收(1404)表示位于AV 100正运行的环境190中的一个或多个对象1304的传感器数据1328。参考图13更详细地例示和说明了安全系统1300、传感器数据1328和对象1304。AV 100由AV 100的独立于安全系统1300的导航系统1308引导。传感器数据1328是由AV 100的包括RADAR和照相机至少之一的传感器1324生成的。传感器1324感测或测量环境190的性质。在实施例中,传感器1324是基于里程计数据1334来进行相对于AV 100的运动的运动补偿的智能传感器。例如,使用来自车轮速率传感器的数据以及其它里程计数据1334,安全系统1300对AV 100进行车道位置检测。传感器1324生成表示环境190的性质的传感器数据1328(例如,RADAR信号或照相机图像)。

安全系统1300生成(1408)环境190的概率模型。概率模型的生成包括:针对各对象1304,生成对象1304的概率状态。在一些实施例中,使用传感器数据1328的递归贝叶斯滤波来生成对象1304的概率状态。在其它实施例中,使用其它概率方法来使用参考图13更详细地例示和说明的动态占据栅格电路1316填充动态占据栅格。概率状态包括在特定时间T处对象1304相对于AV 100的时空地点和在特定时间T处对象1304相对于AV 100的速度。

为了生成概率模型,对象跟踪器电路1312基于传感器数据1328的递归贝叶斯滤波来生成各对象1304的概率状态。对象跟踪器电路1312确定多个“信念”(特定对象1304和AV100的地点)的概率,以允许AV 100基于传感器数据1328来推断其位置和朝向。在实施例中,传感器数据1328是线性分布的,并且对象跟踪器电路1312使用卡尔曼滤波器来进行递归贝叶斯滤波。卡尔曼滤波器使用随时间的经过所观测到的传感器数据1328来产生各对象1304的概率状态的估计,使得这些估计与仅基于单次测量的估计相比更准确。

在实施例中,安全系统1300基于环境190的概率模型来确定(1412)在特定时间T处AV 100与一个或多个对象1304中的特定对象1304a的第一碰撞概率。第一碰撞概率大于零。在实施例中,对象跟踪器电路1312还被配置为经由连接电路1332从导航系统1308接收AV100的轨迹198。安全系统1300独立于导航系统1308及其控制软件开发套件(SDK),但经由承载数据流量的连接电路1332与导航系统1308及其控制软件开发套件(SDK)进行通信,并且还对安全系统1300和导航系统1308之间的消息进行压缩和解压缩或加密。对象跟踪器电路1312基于轨迹198来确定第一碰撞概率。例如,使用环境190的概率模型来确定特定对象1304a与轨迹198是否相交以预测与AV 100的碰撞。

安全系统1300生成(1416)指示特定对象1304a和特定时间T的第一碰撞警告。如参考图13更详细地例示和说明,仲裁器电路1320可通信地耦接至对象跟踪器电路1312以接收信号,诸如来自对象跟踪器电路1312的心跳信号和第一碰撞警告等。

安全系统1300响应于接收到第一碰撞警告,将紧急制动命令发送(1420)至导航系统1308的控制电路406。参考图4和图13更详细地例示和说明了控制电路406。如参考图13更详细地例示和说明,控制电路406被配置为响应于接收到紧急制动命令,进行紧急制动操作以避免AV 100与特定对象1304a发生碰撞。

图15是示出根据一个或多个实施例的安全系统1300的操作的流程图。在一个实施例中,图15的处理由安全系统1300进行。在其它实施例中,其它实体(例如,AV 100的一个或多个组件)进行该处理的步骤中的一个或多个。同样,实施例可以包括不同的和/或附加的步骤,或者按不同的顺序进行这些步骤。

安全系统1300接收(1504)表示位于AV 100正运行的环境190内的一个或多个对象1304的RADAR数据和照相机图像。RADAR数据和照相机图像是由AV 100的传感器1324生成的。传感器1324感测或测量环境190的性质。在实施例中,传感器1324是基于里程计数据1334来进行相对于AV 100的运动的运动补偿的智能传感器。

安全系统1300从AV 100的导航系统1308接收(1508)AV 100的轨迹198。AV 100由独立于安全系统1300的导航系统1308引导。除其它组件之外,导航系统1308还包括参考图4更详细地例示和说明的感知模块402、规划模块404和控制电路406。

安全系统1300通过对RADAR数据、来自LiDAR 123的LiDAR数据以及照相机图像(传感器数据1328)进行数据融合,来生成(1512)环境190的表示(概率模型)。环境190的概率模型针对各对象1304包括对象1304的概率状态、该概率状态的误差协方差P和该状态的存在概率p(x)。误差协方差P是指(a)来自传感器数据1328的对象1304的测量值和(b)对象1304的概率状态的联合变异性。存在概率p(x)是指如下的函数,该函数在样本空间中的任意给定样本处的值提供了对象1304的概率状态等于该样本的可能性。

安全系统1300对环境190的表示(概率模型)以及轨迹198进行(1516)运算(诸如矩阵运算等),以识别一个或多个对象1304中的特定对象1304a,使得AV 100与特定对象1304a的TTC小于阈值时间。例如,阈值时间可以是三或四秒。TTC确定是针对AV 100的前保险杠进行的。

安全系统1300响应于识别出特定对象1304a,生成(1520)紧急制动命令。紧急制动命令指示AV 100与特定对象1304a的TTC。安全系统1300还被配置为将紧急制动命令发送至导航系统1308,使得导航系统1308能够为AV 100生成新轨迹。由于当前的轨迹198导致紧急制动命令,因此需要新轨迹。在生成新轨迹时,如参考图9更详细地例示和说明,规划模块404可以避开对象1304。

控制电路406可通信地耦接至安全系统1300,并且根据紧急制动命令来操作(1524)AV 100,使得紧急减速避免了AV 100与特定对象1304a发生碰撞。

图16是示出根据一个或多个实施例的用于安全系统1300的操作的处理的流程图。在一个实施例中,图16的处理由安全系统1300进行。在其它实施例中,其它实体(例如,AV100的一个或多个组件)进行该处理的步骤中的一个或多个。同样,实施例可以包括不同的和/或附加的步骤,或者按不同的顺序进行这些步骤。

安全系统1300从AV 100的一个或多个RADAR传感器和一个或多个照相机接收(1604)传感器数据1328。传感器数据1328表示一个或多个对象1304。传感器1324感测或测量环境190的性质。在实施例中,传感器1324是基于里程计数据1334来进行相对于AV 100的运动的运动补偿的智能传感器。例如,使用来自车轮速率传感器的数据以及其它里程计数据1334,安全系统1300对AV 100进行车道位置检测。

安全系统1300确定为(1608)AV 100与一个或多个对象1304中的特定对象1304a的第一碰撞概率大于零。在实施例中,安全系统1300被配置为经由连接电路1332从导航系统1308接收AV 100的轨迹198。安全系统1300独立于导航系统1308(及其控制SDK),但经由承载数据流量的连接电路1332与导航系统1308(及其控制SDK)进行通信,并且还对安全系统1300和导航系统1308之间的消息进行压缩和解压缩或加密。安全系统1300基于轨迹198来确定第一碰撞概率。例如,使用环境190的概率模型来确定特定对象1304a与轨迹198是否相交以预测与AV 100的碰撞。

响应于确定为第一碰撞概率大于零,安全系统1300生成(1612)第一碰撞警告。在一些实施例中,第一碰撞警告指示特定对象1304a的身份、第一TTC、以及AV 100和特定对象1304a的地点。在其它实施例中,油门关闭进行“油门关闭”步骤以使AV 100准备减速。由于制动器103将不会与油门对抗,因此油门关闭操作减少了使AV 100停止所需的距离。参考图1更详细地例示和说明了制动器103。在一些实施例中,第一碰撞警告用于使AV 100的舱室为可能的碰撞作准备,诸如通过预紧安全带、使气囊为激活作准备、摇上窗户、为安全起见而使头枕斜移、或者使座椅远离门、等等。

安全系统1300基于包括多个时变颗粒密度函数的动态占据栅格来确定(1616)AV100与特定对象1304a的第二碰撞概率。各时变颗粒密度函数与对象1304的地点相关联。动态占据栅格是指AV 100的环境190的离散化表示。动态占据栅格包括具有各自表示环境190的单位面积(或体积)的多个个体单元格(立方体)的栅格地图。

安全系统1300响应于第二碰撞概率大于零,生成(1620)第二碰撞警告。第二碰撞警告基于动态占据栅格来指示特定对象1304a的身份、第二TTC、以及AV 100和特定对象1304a的地点。第二TTC可以与第一TTC相同。

安全系统1300针对第二碰撞警告来验证(1624)第一碰撞警告。安全系统1300包括对象跟踪器电路1312(供多对象跟踪用)和动态占据栅格电路1316作为冗余的碰撞警告系统,这些碰撞警告系统接收原始传感器数据1328和来自独立于导航系统1308的控制电路406的控制数据。对象跟踪器电路1312和动态占据栅格电路1316对是否使AV 100减速作出独立决定。

安全系统1300将油门关闭命令发送至(1628)AV 100的控制电路406。控制电路406被配置为根据油门关闭命令来操作AV 100,以避免AV 100与特定对象1304a发生碰撞。安全系统1300按以下顺序向控制电路406发出命令:油门关闭、安全带预紧(如果AV 100平台上可用)、制动器预充电、紧急制动命令、记录内部黑匣子数据命令、紧急闪光灯命令。利用安全系统1300的制动减速使AV 100停止。安全系统1300维持制动器103上的压力以使AV 100保持静止。

在先前描述中,已经参考许多具体细节描述了本发明的实施例,这些具体细节可因实现而不同。因此,说明书和附图应被视为说明性的,而非限制性意义的。本发明范围的唯一且排他的指示、以及申请人期望是本发明范围的内容是以发布权利要求书的具体形式从本申请发布的权利要求书的字面和等同范围,包括任何后续修正。本文中明确阐述的用于被包括在此类权利要求中的术语的任何定义应当以此类术语如在权利要求书中所使用的意义为准。另外,当在先前的说明书或所附权利要求书使用术语“还包括”时,该短语的下文可以是附加的步骤或实体、或先前所述的步骤或实体的子步骤/子实体。

本申请要求2019年12月27日提交的美国临时申请62/954,007的权益,其全部内容通过引用而被包含于此。

相关技术
  • 用于运载工具的安全系统
  • 用于运载工具和网络组件的系统、运载工具、网络组件、装置、方法和计算机程序
技术分类

06120113015431