目标车辆检测的制作方法

文档序号:32622409发布日期:2022-12-20 23:02阅读:25来源:国知局
目标车辆检测的制作方法

1.本公开涉及用于目标车辆检测的车辆传感器。


背景技术:

2.车辆可以使用传感器来检测对象。例如,道路上的对象可以被称为目标或目标对象。车辆传感器可以检测相对于车辆的目标位置和速度。例如,传感器可以检测目标相对于车辆的位置。车辆可以对检测到目标做出响应,例如通过转向远离目标、通过在到达目标之前制动等做出响应。


技术实现要素:

3.一种系统包括计算机,所述计算机包括处理器和存储器,所述存储器存储可由所述处理器执行以进行以下操作的指令:基于主车辆与目标车辆之间的横向距离、所述主车辆与所述目标车辆之间的纵向距离和所述目标车辆相对于所述主车辆的速度来识别所述主车辆的横向虚拟边界,并且基于所述主车辆与所述目标车辆之间的所述纵向距离来识别所述主车辆的前向虚拟边界。所述指令还包括用于进行以下操作的指令:基于横向边界速度来确定所述横向虚拟边界的横向约束值,所述横向边界速度基于所述主车辆的航向角;基于所述主车辆的所述航向角来确定所述前向虚拟边界的前向约束值;并且基于所述横向虚拟边界和所述前向虚拟边界以及所述横向约束值和所述前向约束值来确定纵向加速度和转向角。所述指令还包括用于进行以下操作的指令:基于所述纵向加速度和所述转向角来致动转向部件或制动器中的一者或两者。
4.所述指令还可以包括用于进行以下操作的指令:确定左侧横向虚拟边界、右侧横向虚拟边界、左侧横向约束值和右侧横向约束值。
5.所述转向角的方向可以基于满足所述左侧横向约束值的所述左侧横向虚拟边界或满足所述右侧横向约束值的所述右侧横向虚拟边界。
6.所述指令还可以包括用于进行以下操作的指令:在所述前向约束值低于阈值时确定所述左侧横向虚拟边界和所述右侧横向虚拟边界两者。
7.所述指令还可以包括用于进行以下操作的指令:基于满足所述前向约束值的前向边界速度和满足所述横向约束值的横向边界加速度来确定所述纵向加速度和所述转向角。
8.所述指令还可以包括用于进行以下操作的指令:在确定所述横向约束值低于第一阈值并且所述前向约束值低于第二阈值时,基于所述主车辆与所述目标车辆之间的距离和所述目标车辆相对于所述主车辆的速度来致动所述转向部件或所述制动器中的一者或两者。
9.所述指令还可以包括用于进行以下操作的指令:在所述速度低于速度阈值且所述距离高于第一距离阈值时仅致动所述制动器,并且在所述速度高于所述速度阈值且所述距离高于第二距离阈值时仅致动所述转向部件。
10.所述速度阈值可以基于所述主车辆的最大纵向减速度和所述主车辆的最大横向
加速度。
11.所述指令还可以包括用于进行以下操作的指令:在确定(1)所述横向约束值超过第一阈值或(2)所述前向约束值超过第二阈值中的一者时,抑制所述转向部件的致动以将所述主车辆移动到相邻的道路车道。
12.所述指令还可以包括用于进行以下操作的指令:确定车道边界并基于所述车道边界确定车道约束值。
13.所述指令还可以包括用于进行以下操作的指令:基于所述车道约束值和车道边界加速度来确定所述转向角。
14.所述指令还可以包括用于进行以下操作的指令:基于所述主车辆的所述航向角和所述主车辆的当前转向角来确定所述车道边界加速度。
15.一种方法包括:基于主车辆与目标车辆之间的横向距离、所述主车辆与所述目标车辆之间的纵向距离和所述目标车辆相对于所述主车辆的速度来识别所述主车辆的横向虚拟边界;基于所述主车辆与所述目标车辆之间的所述纵向距离来识别所述主车辆的前向虚拟边界;基于横向边界速度来确定所述横向虚拟边界的横向约束值,所述横向边界速度基于所述主车辆的航向角;基于所述主车辆的所述航向角来确定所述前向虚拟边界的前向约束值;基于所述横向虚拟边界和所述前向虚拟边界以及所述横向约束值和所述前向约束值来确定纵向加速度和转向角;以及基于所述纵向加速度和所述转向角来致动转向部件或制动器中的一者或两者。
16.所述方法还可以包括:确定左侧横向虚拟边界、右侧横向虚拟边界、左侧横向约束值和右侧横向约束值。
17.所述方法还可以包括:在所述前向约束值低于阈值时确定所述左侧横向虚拟边界和所述右侧横向虚拟边界两者。
18.所述方法还可以包括:基于满足所述前向约束值的前向边界速度和满足所述横向约束值的横向边界加速度来确定所述纵向加速度和所述转向角。
19.所述方法还可以包括:在确定所述横向约束值低于第一阈值并且所述前向约束值低于第二阈值时,基于所述主车辆与所述目标车辆之间的距离和所述目标车辆相对于所述主车辆的速度来致动所述转向部件或所述制动器中的一者或两者。
20.所述方法还可以包括:在所述速度低于速度阈值且所述距离高于第一距离阈值时仅致动所述制动器,并且在所述速度高于所述速度阈值且所述距离高于第二距离阈值时仅致动所述转向部件。
21.所述方法还可以包括:在确定(1)所述横向约束值超过第一阈值或(2)所述前向约束值超过第二阈值中的一者时,抑制所述转向部件的致动以将所述主车辆移动到相邻的道路车道。
22.所述方法还可以包括:确定车道边界并基于所述车道边界确定车道约束值。
23.所述方法还可以包括:基于所述车道约束值和车道边界加速度来确定所述转向角。
24.所述方法还可以包括:基于所述主车辆的所述航向角和所述主车辆的当前转向角来确定所述车道边界加速度。
25.进一步公开了一种计算装置,所述计算装置被编程为执行上述方法步骤中的任一
者。还公开了一种包括计算装置的车辆。还公开了一种计算机程序产品,所述计算机程序产品包括计算机可读介质,所述计算机可读介质存储指令,所述指令可由计算机处理器执行以执行上述方法步骤中的任一者。
26.规划主车辆的操作,特别是规划转向、加速和制动操作可以包括使主车辆保持在道路上的道路车道内的规划。主车辆中的计算机根据规划的转向、加速和/或制动来致动一个或多个部件。目标车辆的移动可能导致主车辆的规划操作的改变。计算机可以识别相对于主车辆的横向移动和纵向移动的虚拟边界。此外,计算机可以规划主车辆的操作以保持在虚拟边界内。
27.主车辆可以识别表示主车辆和目标车辆的运动的一个或多个约束值。约束值是基于主车辆和目标车辆接近虚拟边界时的速度和加速度。当约束值中的一者或多者违反相应阈值时,主车辆可以确定转向角的变化以及加速度和/或制动的变化以避开目标车辆,同时保持在虚拟边界内。主车辆可以基于转向角和加速度和/或制动的变化来致动一个或多个部件。虚拟边界、边界接近速度和边界接近加速度允许主车辆以比其他方法(例如,机器学习程序)更少的数据和更少的计算来预测主车辆和目标车辆的移动。与常规的威胁检测和缓解系统相比,将横向虚拟边界与纵向虚拟边界分离允许计算机以更少的计算更快地确定是否使主车辆转向或制动。
附图说明
28.图1是用于操作车辆的示例性系统的框图。
29.图2a至图2d是主车辆、目标车辆和虚拟边界的视图。
30.图3是主车辆和多个距离阈值的视图。
31.图4是用于操作车辆的示例性过程的框图。
具体实施方式
32.图1示出了用于操作车辆105的示例性系统100。车辆105中的计算机110被编程为从一个或多个传感器115接收所收集的数据。例如,车辆105数据可以包括车辆105的位置、关于车辆周围的环境的数据、关于车辆外部的对象(诸如另一车辆)的数据等。车辆105的位置通常以常规形式提供,所述形式为例如经由使用全球定位系统(gps)的导航系统获得的地理坐标(诸如纬度和经度坐标)。数据的另外示例可以包括车辆105的系统和部件的测量值,例如车辆105的速度、车辆105的轨迹等。
33.计算机110通常被编程为在车辆105网络上进行通信,所述网络例如包括常规车辆105的通信总线(诸如can总线、lin总线等)和/或其他有线和/或无线技术(例如以太网、wifi等)。经由网络、总线和/或其他有线或无线机制(例如车辆105中的有线或无线局域网),计算机110可向车辆105中的各种装置(例如控制器、致动器、传感器等,包括传感器115)传输消息和/或从所述各种装置接收消息。替代地或另外,在计算机110实际上包括多个装置的情况下,车辆网络可用于在本公开中表示为计算机110的装置之间的通信。例如,计算机110可以是具有如上所述的处理器和存储器的通用计算机,和/或可以包括专用电子电路,所述专用电子电路包括为特定操作而制造的asic,例如用于处理传感器数据和/或传送传感器数据的asic。在另一个示例中,计算机110可以包括fpga(现场可编程门阵列),所
述fpga是被制造为可由乘员配置的集成电路。通常,在电子设计自动化中使用诸如vhdl(超高速集成电路硬件描述语言)的硬件描述语言来描述诸如fpga和asic的数字和混合信号系统。例如,asic是基于制造前提供的vhdl编程而制造的,而fpga内部的逻辑部件可基于例如存储在电连接到fpga电路的存储器中的vhdl编程而配置。在一些示例中,处理器、asic和/或fpga电路的组合可包括在计算机110中。
34.另外,计算机110可以被编程用于与网络通信,所述网络可以包括各种有线和/或无线联网技术,例如蜂窝、低功耗(ble)、有线和/或无线分组网络等。
35.存储器可以是任何类型,例如,硬盘驱动器、固态驱动器、服务器或任何易失性或非易失性介质。存储器可以存储从传感器115发送的所收集数据。存储器可以是与计算机110分离的装置,并且计算机110可经由车辆105中的网络(例如,通过can总线、无线网络等)检索由存储器存储的信息。替代地或另外,存储器可以是计算机110的一部分,例如作为计算机110的存储器。
36.传感器115可以包括多种装置。例如,车辆105中的各种控制器可充当传感器115以经由车辆105网络或总线提供数据,例如与车辆速度、加速度、位置、子系统和/或部件状态等有关的数据。此外,其他传感器115可包括相机、运动检测器等,即,用于提供数据以评估部件的位置、评估道路的坡度等的传感器115。传感器115还可包括但不限于短程雷达、远程雷达、激光雷达和/或超声换能器。
37.所采集的数据可以包括在车辆105中采集的多种数据。上面提供了所收集的数据的示例,并且此外,数据通常使用一个或多个传感器115来收集,并且可另外包括在计算机110中和/或在服务器处根据其计算出的数据。通常,所采集的数据可以包括可以由传感器115采集的和/或根据此类数据计算出的任何数据。
38.车辆105可以包括多个车辆部件120。在这种背景下,每个车辆部件120包括一个或多个硬件部件,所述一个或多个硬件部件适于执行机械功能或操作-诸如使车辆105移动、使车辆105减慢或停止、使车辆105转向等。部件120的非限制性示例包括:推进部件(包括例如内燃发动机和/或电动马达等)、传动部件、转向部件(例如,可以包括方向盘、转向齿条等中的一者或多者)、制动部件、停车辅助部件、自适应巡航控制部件、自适应转向部件、可移动座椅等等。部件120可包括计算装置,例如,电子控制单元(ecu)等和/或诸如以上关于计算机110描述的计算装置,并且它们同样经由车辆105网络进行通信。
39.车辆105可以完全自主模式、半自主模式或非自主模式中的一者进行操作。完全自主模式被定义为其中车辆105的推进(通常经由包括电动马达和/或内燃发动机的动力传动系统进行)、制动和转向中的每一者都由计算机110控制的模式。半自主模式是其中车辆105的推进(通常经由包括电动马达和/或内燃发动机的动力传动系统进行)、制动和转向中的至少一者至少部分地由计算机110而不是人类操作员控制的模式。在非自主模式(即,手动模式)下,车辆的推进、制动和转向由人类操作员控制。
40.图2a至图2d是道路205上的示例性主车辆105和示例性目标车辆200的视图。“目标”车辆200是由主车辆105检测到的车辆。当主车辆105沿着道路205行驶时,计算机110检测目标车辆200并致动一个或多个部件120以避免与目标车辆200碰撞。计算机110可以定义局部二维坐标系。局部坐标系定义点x,y,其中x是沿着主车辆105的纵向轴线的坐标,并且y
是沿着主车辆105的横向轴线的坐标。即,x坐标沿车辆向前方向和车辆向后方向(有时称为纵向方向)延伸,而y坐标沿车辆横跨方向(有时称为横向方向)延伸。
41.计算机110可以确定主车辆105和目标车辆200的纵向动态学和横向动态学。“动态学”是车辆105、200在坐标系中的位置、速度和加速度的量度。动态学可以被确定为一组微分方程:
[0042][0043][0044][0045][0046]
其中x
t
,y
t
是目标车辆200的中心相对于主车辆105的中心的相对坐标x,y,θh,θ
t
是主车辆105和目标车辆200的相应航向角,vh,v
t
是主车辆105和目标车辆200的相应速度,lh是主车辆105的轴距(即,主车辆105的前车桥与后车桥之间的距离),g是由于重力引起的加速度常数,α是以标准重力为单位的主车辆105的纵向加速度,其中1个单位的标准重力是等效于由于重力引起的加速度常数的加速度(即,1“g”是等于地球重力的加速度,2“g”是等于地球重力的两倍的加速度等),并且δ是主车辆105的转向角(以弧度表示)。主车辆105具有横向宽度wh。
[0047]
纵向加速度α=α0+α
cf
可以是由操作员或虚拟驾驶员提供的加速度α0与由常规防撞程序或虚拟边界方程提供的校正因子α
cf
之和,如下文所述。转向角δ=δ0+δ
cf
可以是由操作员或虚拟驾驶员提供的转向角δ0与由常规防撞程序或虚拟边界方程提供的校正因子δ
cf
之和,如下文所述。纵向加速度α和转向角δ可以作为控制变量矩阵存储在计算机110中,这允许计算机110对组合控制变量u执行矩阵数学和算法。
[0048]
在确定转向角δ和纵向加速度α之后,计算机110可以致动一个或多个部件120以避开目标车辆200。例如,计算机110可以致动转向部件的转向马达以获得转向角δ。在另一个示例中,计算机可以致动制动器和/或推进装置以获得纵向加速度α。因此,车辆105的操作在根据下文描述的技术中的一种来确定转向角和纵向加速度δ,α时改变。
[0049]
在图2a的示例中,目标车辆200相对于主车辆105在右侧。在图2b的示例中,目标车辆200相对于主车辆105在左侧。在图2c的示例中,目标车辆200在主车辆105的纵向前方。在图2d的示例中,目标车辆200在主车辆105的纵向后方。
[0050]
计算机110可以确定主车辆105的虚拟边界210。在这种背景下,“虚拟边界”是表示道路205上的虚拟线(直线和/或曲线)的一组地理坐标。即,虚拟边界210是主车辆105不应行驶超过其以避免与目标车辆200碰撞的线。计算机110可以确定多个虚拟边界210,如图2a至图2d所示并且如下文所述。因此,计算机110可以避免在相对于主车辆105的不同位置处与目标车辆200发生碰撞。
[0051]
图2a是主车辆105和在主车辆105右侧的目标车辆200的视图。计算机110可以将虚拟边界210确定为右侧虚拟边界210a,即,延伸到主车辆105右侧的虚拟边界210。因此,右侧虚拟边界210a定义主车辆105不应越过以避开主车辆105右侧的目标车辆200的边界。计算机110根据虚拟边界方程(在本文中由变量h表示)来定义虚拟边界210。即,具有变量h的表
达式输出在坐标系中定义主车辆105的右侧不应越过的虚拟边界210的值。在图2a至图2d中,被标识为210a至210d的线是下面定义的相应虚拟边界方程h的输出。计算机110可以定义右侧虚拟边界hr、右侧虚拟边界速度和右侧虚拟边界加速度
[0052][0053][0054][0055]
cb=max(c
0-gb(v
h-v
t
),c
b,min
)
ꢀꢀ
(8)
[0056]
其中d
y,min
是主车辆105与目标车辆200之间的预定最小横向距离,cb是确定虚拟边界hr的曲率的弯曲系数,c0是预定默认弯曲系数,gb是控制对速度vh,v
t
对弯曲系数的影响的可调谐常数,并且c
b,min
是预定最小弯曲系数。预定值d
y,min
,c0,c
b,min
可以由例如制造商根据模拟模型(诸如simulink)中的虚拟车辆的经验测试来确定。例如,可以通过针对指定的约束值求解下文在虚拟模拟中描述的约束方程来确定最小弯曲系数c
b,min

[0057]
图2b是主车辆105和在主车辆105左侧的目标车辆200的视图。计算机110可以将虚拟边界210确定为左侧虚拟边界210b,即,延伸到主车辆105左侧的虚拟边界210。因此,左侧虚拟边界210b定义主车辆105的左侧不应越过以避开主车辆105左侧的目标车辆200的边界。计算机110可以定义左侧虚拟边界h
l
、左侧虚拟边界速度和左侧虚拟边界加速度
[0058][0059][0060][0061]
图2c是主车辆105和在主车辆105前方的目标车辆200的视图。计算机110可以将虚拟边界210确定为前向虚拟边界210c,即,延伸到主车辆105前方的虚拟边界210。因此,前向虚拟边界210c定义主车辆105的前保险杠不应越过以避开主车辆105前方的目标车辆200的边界。计算机110可以定义前向虚拟边界h
x
和前向虚拟边界速度
[0062][0063][0064][0065]
其中kv是车头时距,即,主车辆105沿纵向方向到达目标车辆200的估计时间,dec
max
是主车辆105的最大减速度,k
v0
是由主车辆105和目标车辆200的速度vh,v
t
确定的最大车头时距,并且λ是预定衰减常数。计算机110可以基于上述虚拟模拟中的经验测试来确定衰减常数λ。
[0066]
图2d是主车辆105和在主车辆105后方的目标车辆200的视图。计算机110可以将虚拟边界210确定为后方虚拟边界210d,即,延伸到主车辆105后方的虚拟边界210。计算机110可以用与前向虚拟边界210c相同的表达式来确定后方虚拟边界210d,不同之处仅在于符号函数sgn(x
t
)。即,当sgn(x
t
)=1时,计算机110确定前向虚拟边界210c,而当sgn(x
t
)=-1时,计算机110确定后方虚拟边界210d。
[0067]
计算机110可以确定定义道路车道的虚拟边界的车道保持虚拟边界。车道保持虚拟边界可以用边界方程来描述:
[0068][0069][0070][0071]
其中yh是相对于道路205固定的坐标系的主车辆105的y坐标,其中最右侧道路车道标记的y坐标是0,并且w
l
是道路车道的宽度。
[0072]
计算机110可以确定约束值c
x
,cy以确定车辆105应达到以避开目标车辆200的转向角δ和纵向加速度α。“约束值”是基于虚拟边界210、边界接近速度和边界接近加速度中的一者的值,所述边界接近加速度指示主车辆105到虚拟边界210的运动。计算机110可以将约束值c
x
,cy与如下所述的相应的预定阈值进行比较,以确定计算机110应计算哪些虚拟边界210来确定转向角和纵向加速度δ
cf
,α
cf
以避开目标车辆200。计算机110可以定义方程以基于虚拟边界方程来确定两个约束值c
x
,cy:
[0073][0074][0075]
其中l0,l1是向方程c
x
≥0,cy≥0提供实数正本征值的预定标量值。因此,约束值c
x
是基于纵向边界接近速度的纵向约束值。约束值cy是基于横向边界接近速度和横向边界接近加速度的横向约束值。在上文针对c
x
,cy的表达式中,纵向约束值c
x
可以是一阶表达式,即,仅基于纵向边界接近速度而不是纵向边界加速度并且横向约束值cy可以是二阶表达式,即,基于横向边界接近加速度c
x
的一阶表达式包括上述纵向加速度α,并且cy的二阶表达式包括转向角δ,也如上所述。因此,这些表达式的特定阶可以被确定为最小数量的微分项以确定δ,α的输出。
[0076]
计算机110可以确定约束值c
x
,cy中的一者或两者是否违反阈值。在这种背景下,如果约束值c
x
,cy在由阈值限制或定义的值的范围之外,则“违反”阈值。例如,当约束值c
x
,cy超过阈值时,可能会违反阈值。替代地,当约束值c
x
,cy下降到阈值以下时,可能会违反阈值。在图2a至图2d的示例中,计算机110可以基于是否存在c
x
<0和cy<0中的一项或两项来确定
是否转向和/或制动以避开目标车辆200。即,当c
x
,cy下降到0以下时,计算机110确定一个或两个c
x
,cy违反阈值0。如上所述,可以基于虚拟模拟中的虚拟车辆的经验测试来确定阈值。
[0077]
如果存在以下两项c
x
<0,cy<0,则计算机110确定主车辆105与目标车辆200之间的相对距离d以及主车辆105与目标车辆200之间的相对速度vr=v
h-v
t
。计算机110基于距离d和速度vr来确定是否致动制动器和转向部件中的一者或两者。计算机110将距离d与最小制动距离cb和最小转向距离ds进行比较,并且计算机110可以将速度vr与临界速度v
crit
进行比较:
[0078][0079][0080][0081]
其中d
min
是预定最小距离阈值,a
y,max
是主车辆105可以执行的最大横向加速度,并且dec
max
是主车辆105的最大减速度。因此,临界速度v
crit
是最小制动距离等于最小转向距离(即,db=ds)时的速度。基于所述比较,计算机110可以确定是否致动转向装置和制动器中的一者或两者以将主车辆105维持在虚拟边界h
l
,hr,hy中的一者或多者内,如下所述。例如,计算机110可以基于查找表等来确定要致动的部件120:
[0082]
距离速度被致动部件d>dsvr>v
crit
转向装置d>dbvr<v
crit
制动器d<min(ds,db)任意转向装置和制动器d<d
min
任意转向装置和制动器
[0083]
表1:部件致动查找表
[0084]
计算机110可以根据指定的转向角δ
cf
和指定的纵向加速度α
cf
来致动转向装置和/或制动器。计算机110可以通过用优化规划求解二阶虚拟边界方程来确定指定转向角和纵向加速度δ
cf
,α
cf
。“优化规划”是使符合由虚拟边界方程确定的一个或多个约束值的成本函数最小化的规划。例如,优化规划可以是二次规划算法,如下所述。在另一个示例中,优化规划可以是线性混合整数规划法,如下所述。
[0085]
计算机110可以利用二次规划算法来确定指定的转向角和纵向加速度δ
cf
,α
cf
。“二次规划”算法是使δ
cf
,α
cf
的值的二次成本函数j最小化的常规优化规划。计算机110可以确定横向左侧二次规划qp
yl
,、横向右侧二次规划qp
yr
,和纵向二次规划qp
x
,每个规划具有相应的成本函数j
yl
,j
yr
,j
x

[0086]
计算机110可以确定横向左侧二次规划qp
yl
的横向左侧成本函数j
yl

[0087]
[0088]
符合
[0089][0090][0091]
δ
min-δ0≤δ
cf,l
+saꢀꢀ
(27)
[0092]
δ
cf,l-sa≤δ
max-δ0ꢀꢀ
(28)
[0093]
其中qy是对优化变量δ
cf,l
,,s,sa具有成本权重的对角矩阵,i是除目标车辆200之外的一组y目标的索引。s,sa是通常称为“松弛变量”的内容,即,可调谐变量,所述可调谐变量在转向装置原本无法防止违反约束值中的一者或多者时防止所述违反。如果转向装置可以防止违反约束值,则可以对松弛变量使用高惩罚以阻止它们的使用来满足约束不等式。下标“t”是指目标车辆200,“lk”下标是指上述车道保持虚拟边界的值,并且δ
min
,δ
max
是转向部件可以达到的最小和最大转向角。
[0094]
计算机110可以确定横向右侧二次规划qp
yr
的横向右侧成本函数j
yr

[0095][0096]
符合
[0097][0098][0099]
δ
min-δ0≤δ
cf,r
+sa(33)
[0100]
δ
cf,r-sa≤δ
max-δ0(34)
[0101]
计算机110可以求解转向角δ
cf,l
,δ
cf,r
的二次规划qp
yl
,qp
yr
,并且可以将转向角δ
cf
确定为这些确定的转向角δ
cf,l
,δ
cf,r
中的一者。例如,如果转向角δ
cf,l
,δ
cf,r
中的一者是不可行的,而另一个是可行的,则计算机110可以将转向角δ
cf
确定为δ
cf,l
,δ
cf,r
中的可行转向角。在这种背景下,如果转向部件120可以在满足上述表达式中所示的qp
yl
或qp
yr
的所有约束的同时达到转向角δ,则转向角δ是“可行的”。如果转向部件120在不违反上述表达式中所示的qp
yl
或qp
yr
的约束中的至少一者的情况下不能达到转向角δ,则转向角是“不可行的”。二次规划的解qp
yl
,qp
yr
如上所述可能是不可行的,并且计算机110可以忽略不可行的转向角确定。
[0102]
如果δ
cf,l
,δ
cf,r
都是可行的,则计算机110可以基于一组预定条件来选择转向角δ
cf,l
,δ
cf,r
中的一者作为所确定的转向角δ
cf
。预定条件可以是由例如制造商确定的一组规则以确定选择哪个转向角δ
cf,l
,δ
cf,r
作为确定转向角δ
cf
。例如,如果δ
cf,l
,δ
cf,r
都是可行的,则计算机110可以使用具有较低成本j
yl
,j
yr
的转向角,或者计算机110可以将转向角δ
cf
确定为转向角δ
cf,l
,δ
cf,r
中的先前确定的转向角。即,如果计算机110在最近的迭代中选择δ
cf,l
作为确定的转向角δ
cf
,则计算机110可以选择当前的δ
cf,l
作为确定的转向角δ
cf
。在另一个示例中,如果成本函数j
yl
,j
yr
之间的差值低于预定阈值(例如,0.00001),则计算机110可以默认选择转向角δ
cf
,例如,δ
cf,l
可以是对δ
cf
的默认选择。
[0103]
如果δ
cf,l
,δ
cf,r
都是不可行的,则计算机110可以用纵向约束代替横向约束来确定
成本函数j
yl
,j
y,r
。即,在上文带有h
y,i
的表达式中,计算机110代而可以用纵向虚拟边界方程h
x,i
系统地替换横向虚拟边界方程h
y,i
。然后,计算机110可以基于δ
cf,l
,δ
cf,r
的值是否可行来确定转向角δ
cf
,如上所述。如果δ
cf,l
,δ
cf,r
仍然不可行,则计算机110可以应用制动器120以使车辆105减速并避开目标车辆200。
[0104]
为了确定加速度α
cf
,计算机110可以确定纵向二次规划qp
x

[0105][0106]
符合
[0107]
其中argmin()是已知的自变量最小值函数,其确定符合一个或多个约束的输入的最小值,并且x是除目标车辆200之外的一组目标。
[0108]
替代地,计算机110可以利用混合整数线性规划(milp)算法来确定转向角和纵向加速度δ
cf
,α
cf
。可以将milp算法描述为一个目标车辆200的一组表达式:
[0109][0110][0111][0112][0113]
其中a1,a2,a3是取值为0或1的二进制变量使得当强制执行纵向约束时a1=0,当强制执行左侧横向约束时a2=0,并且当强制执行右侧横向约束时a3=0,并且m是由制造商在测试期间选择的数字,使得当a1,a2,a3为非零时,上述表达式中的不等式对于典型的车辆操作仍然为真。因此,milp算法考虑了上述所有纵向和横向虚拟边界210。milp算法根据“控制目标”(即,milp算法针对其优化表达式的一组条件或约束)来求解该组表达式。即,控制目标定义表达式所模拟的物理系统的极限和/或约束。
[0114]
计算机110可以根据控制目标来求解以上表达式:
[0115][0116]
符合
[0117][0118][0119][0120]ai
∈{0,1},i={1,2,3,...,18}
ꢀꢀ
(46)
[0121]al
+am+an≤2
ꢀꢀ
(47)
[0122]umin-u0≤u
cf
≤u
max-u0ꢀꢀ
(48)
[0123]
j∈{1,2,3,4,5,6}
ꢀꢀ
(49)
[0124]
l∈{1,4,7,10,13,16}
ꢀꢀ
(50)
[0125]
mn∈{2,5,8,11,14,17}
ꢀꢀ
(51)
[0126]
n∈{3,6,9,12,15,18}
ꢀꢀ
(52)
[0127]
其中j,l,m,n是具有上述表达式中列出的指定值的整数索引。下表给出了上述表达式中的索引j,l,m,n与l,m,n的值的关系。
[0128]
jlmn112324563789410111251314156161718
[0129]
表2:控制目标的索引
[0130]
上述表达式中的hv是关于优化变量v的成本权重。通过用常规的milp算法求解器求解上述表达式,计算机110可以确定控制变量u
cf
(即,转向角δ
cf
和纵向加速度α
cf
)的值以避开目标车辆200和其他目标,在该示例中,总共六个目标。
[0131]
图3是主车辆105和道路205上的纵向距离阈值300的俯视图。纵向距离阈值300定义当目标车辆200越过时计算机110致动碰撞缓解和防撞的距离。如上所述,计算机110可以在存在c
x
<0或cy<0中的至少一项时确定纵向距离阈值300。即,纵向距离阈值300指示目标车辆200是否足够靠近主车辆105,使得当主车辆105移动到相邻的道路车道时,主车辆105可能需要碰撞缓解和防撞。例如,当前道路车道和紧邻的道路车道的纵向距离阈值300与比相邻的道路车道更远的车道中的纵向距离阈值300相比在主车辆105的纵向前方更远。因此,当目标车辆200在纵向距离阈值中的一者内时,计算机110可以抑制主车辆105的变道操作并致动一个或多个部件120以对目标车辆200执行威胁缓解。
[0132]
因为约束值c
x
,cy中仅一者低于其相应阈值,所以目标车辆200可能不是威胁,并且计算机110基于目标车辆200相对于主车辆105的位置来确定相应的虚拟边界h
l
,hr。例如,如果目标车辆200在距离阈值300内并且在主车辆105的右侧,则计算机110确定左侧虚拟边界h
l
以防止主车辆105漂移出当前道路车道并由此避开目标车辆200。在另一个示例中,如果目标车辆200在距离阈值300内并且在主车辆105的左侧,则计算机110确定右侧虚拟边界hr以防止主车辆105漂移出当前道路车道并由此避开目标车辆200。
[0133]
图4是用于操作主车辆105以避开目标车辆200的示例性过程400。过程400开始于框405,其中主车辆105的计算机110收集关于目标车辆200的数据。计算机110可以致动一个或多个传感器115以收集关于目标车辆200的数据。例如,计算机110可以收集关于目标车辆200的速度和/或目标车辆200的位置的数据。
[0134]
接下来,在框410中,计算机110确定纵向约束值和横向约束值c
x
,cy。如上所述,约束值c
x
,cy是基于多个虚拟边界210中的一者、边界接近速度和边界接近加速度中的一者的值,所述边界接近加速度指示主车辆105到虚拟边界210的运动。基于约束值c
x
,cy的正负号,计算机110可以确定计算哪个虚拟边界210以确定主车辆105应达到以避开目标车辆200的转向角δ
cf
和纵向加速度α
cf

[0135]
接下来,在框415中,计算机110确定约束值c
x
,cy是否低于相应阈值。如上所述,可以基于虚拟模拟中的虚拟车辆的经验测试来确定阈值。例如,阈值都可以为零。如果两个约束值c
x
,cy都低于它们相应的阈值,则过程400在框420中继续。否则,过程400在框425中继
续。
[0136]
在框420中,计算机110确定左侧虚拟边界h
l
和右侧虚拟边界hr两者。当两个约束值c
x
,cy都低于其相应的阈值时,计算机110可以使用虚拟边界h
l
,hr来基于目标车辆200的位置来确定要施加的转向和/或制动。即,计算机110可以确定两个虚拟边界h
l
,hr,然后基于目标车辆200朝向两个虚拟边界h
l
,hr的移动来确定转向角δ
cf
和纵向加速度α
cf
。在框420之后,过程400在框430中继续。
[0137]
在框425中,计算机110确定左侧边界h
l
或右侧边界hr中的一者。因为约束值c
x
,cy中仅一者低于其相应阈值,所以目标车辆200可能不是威胁,并且计算机110基于目标车辆200相对于主车辆105的位置来确定相应的虚拟边界h
l
,hr。例如,如果目标车辆200在主车辆105的右侧,则计算机110确定左侧虚拟边界h
l
以防止主车辆105漂移出当前道路车道并由此避开目标车辆200。在另一个示例中,如果目标车辆200在主车辆105的左侧,则计算机110确定右侧虚拟边界hr以防止主车辆105漂移出当前道路车道并由此避开目标车辆200。在框425之后,过程400在框430中继续。
[0138]
在框430中,计算机110基于虚拟边界h
l
,hr来确定转向角δ
cf
和纵向加速度α
cf
。计算机110可以利用符合由虚拟边界h
l
,hr确定的约束的优化规划来确定转向角和纵向加速度δ
cf
,α
cf
。例如,计算机110可以使用二次规划算法来使成本函数j
yl
,j
yr
最小化。在另一个示例中,计算机110可以使用混合整数线性规划算法来求解控制目标。
[0139]
接下来,在框435中,计算机110致动转向部件120和/或制动器120以获得所确定的转向角δ
cf
和所确定的纵向加速度α
cf
。如上所述,计算机110可以基于目标车辆200相对于主车辆105的位置来确定致动转向装置120或制动器120中的哪一者。计算机110可以根据所确定的转向角和纵向加速度δ
cf
,α
cf
来致动部件120以避开目标车辆200。
[0140]
接下来,在框440中,计算机110确定是否继续过程400。例如,计算机110可以确定在检测另一个目标车辆200时继续。在另一个示例中,在主车辆105关闭电源时,计算机110可以确定不再继续。如果计算机110确定继续,则过程400返回到框405。否则,过程400结束。
[0141]
本文所讨论的计算装置(包括计算机110)包括处理器和存储器,所述存储器通常各自包括能够由诸如上面标识的计算装置的一个或多个计算装置执行并用于执行上述过程的框或步骤的指令。计算机可执行指令可由使用多种编程语言和/或技术创建的计算机程序来编译或解释,所述编程语言和/或技术包括但不限于单独或组合形式的java
tm
、c、c++、visual basic、java script、python、perl、html等。一般来说,处理器(例如,微处理器)例如从存储器、计算机可读介质等接收指令并且执行这些指令,由此执行一个或多个过程,包括本文所描述的过程中的一者或多者。此类指令和其他数据可使用各种计算机可读介质来存储和传输。计算机110中的文件一般是指存储在如存储介质、随机存取存储器等计算机可读介质上的数据集合。
[0142]
计算机可读介质包括参与提供可由计算机读取的数据(例如,指令)的任何介质。这种介质可采用许多形式,包括但不限于非易失性介质、易失性介质等。非易失性介质包括例如光盘或磁盘和其他持久性存储器。易失性介质包括通常构成主存储器的动态随机存取存储器(dram)。计算机可读介质的常见形式包括例如软盘、软磁盘、硬盘、磁带、任何其他磁性介质、cd rom、dvd、任何其他光学介质、穿孔卡、纸带、具有孔图案的任何其他物理介质、ram、prom、eprom、快闪eeprom、任何其他存储器芯片或盒式磁带、或计算机可从中读取的任
何其他介质。
[0143]
关于本文所描述的介质、过程、系统、方法等,应理解,尽管已经将此类过程等的步骤描述为按照某个有序序列发生,但是此类过程可通过以不同于本文描述的顺序的顺序执行所描述的步骤来实践。还应理解,可同时执行某些步骤,可添加其他步骤,或者可省略本文所描述的某些步骤。例如,在过程400中,可以省略步骤中的一个或多个,或者可以与图4中所示不同的次序执行步骤。换句话说,本文对系统和/或过程的描述是为了示出某些实施例而提供,而决不应将其理解为对所公开的主题进行限制。
[0144]
因此,应理解,包括以上描述和附图以及所附权利要求的本公开意图为说明性的而非限制性的。在阅读了以上描述之后,除了所提供的示例之外的许多实施例和应用对于本领域技术人员而言将是明显的。本发明的范围不应参考以上描述来确定,而应参考所附的和/或基于此包括在非临时专利申请中的权利要求连同此类权利要求所赋予权利的等效物的全部范围来确定。设想并预期未来的发展将在本文讨论的技术中发生,并且所公开的系统和方法将并入到此类未来实施例中。总而言之,应理解,所公开的主题能够进行修改和变化。
[0145]
除非另有说明或上下文另有要求,否则修饰名词的冠词“一个”应被理解为是指一个或多个。短语“基于”涵盖部分地或完全地基于。
[0146]
诸如“第一”和“第二”之类的序数形容词在整个此文件中用作标识符并且无意暗示重要性或次序。
[0147]
根据本发明,提供了一种系统,所述系统具有计算机,所述计算机包括处理器和存储器,所述存储器存储可由所述处理器执行以进行以下操作的指令:基于主车辆与目标车辆之间的横向距离、所述主车辆与所述目标车辆之间的纵向距离和所述目标车辆相对于所述主车辆的速度来识别所述主车辆的横向虚拟边界;基于所述主车辆与所述目标车辆之间的所述纵向距离来识别所述主车辆的前向虚拟边界;基于横向边界速度来确定所述横向虚拟边界的横向约束值,所述横向边界速度基于所述主车辆的航向角;基于所述主车辆的所述航向角来确定所述前向虚拟边界的前向约束值;基于所述横向虚拟边界和所述前向虚拟边界以及所述横向约束值和所述前向约束值来确定纵向加速度和转向角;以及基于所述纵向加速度和所述转向角来致动转向部件或制动器中的一者或两者。
[0148]
根据一个实施例,所述指令还包括用于进行以下操作的指令:确定左侧横向虚拟边界、右侧横向虚拟边界、左侧横向约束值和右侧横向约束值。
[0149]
根据一个实施例,所述转向角的方向是基于满足所述左侧横向约束值的所述左侧横向虚拟边界或满足所述右侧横向约束值的所述右侧横向虚拟边界。
[0150]
根据一个实施例,所述指令还包括用于进行以下操作的指令:在所述前向约束值低于阈值时确定所述左侧横向虚拟边界和所述右侧横向虚拟边界两者。
[0151]
根据一个实施例,所述指令还包括用于进行以下操作的指令:基于满足所述前向约束值的前向边界速度和满足所述横向约束值的横向边界加速度来确定所述纵向加速度和所述转向角。
[0152]
根据一个实施例,所述指令还包括用于进行以下操作的指令:在确定所述横向约束值低于第一阈值并且所述前向约束值低于第二阈值时,基于所述主车辆与所述目标车辆之间的距离和所述目标车辆相对于所述主车辆的速度来致动所述转向部件或所述制动器
中的一者或两者。
[0153]
根据一个实施例,所述指令还包括用于进行以下操作的指令:在所述速度低于速度阈值且所述距离高于第一距离阈值时仅致动所述制动器,并且在所述速度高于所述速度阈值且所述距离高于第二距离阈值时仅致动所述转向部件。
[0154]
根据一个实施例,所述速度阈值是基于所述主车辆的最大纵向减速度和所述主车辆的最大横向加速度。
[0155]
根据一个实施例,所述指令还包括用于进行以下操作的指令:在确定(1)所述横向约束值超过所述第一阈值或(2)所述前向约束值超过所述第二阈值中的一者时,抑制所述转向部件的致动以将所述主车辆移动到相邻的道路车道。
[0156]
根据一个实施例,所述指令还包括用于进行以下操作的指令:确定车道边界并基于所述车道边界确定车道约束值。
[0157]
根据一个实施例,所述指令还包括用于进行以下操作的指令:基于所述车道约束值和车道边界加速度来确定所述转向角。
[0158]
根据一个实施例,所述指令还包括用于进行以下操作的指令:基于所述主车辆的所述航向角和所述主车辆的当前转向角来确定所述车道边界加速度。
[0159]
根据本发明,一种方法包括:基于主车辆与目标车辆之间的横向距离、所述主车辆与所述目标车辆之间的纵向距离和所述目标车辆相对于所述主车辆的速度来识别所述主车辆的横向虚拟边界;基于所述主车辆与所述目标车辆之间的所述纵向距离来识别所述主车辆的前向虚拟边界;基于横向边界速度来确定所述横向虚拟边界的横向约束值,所述横向边界速度基于所述主车辆的航向角;基于所述主车辆的所述航向角来确定所述前向虚拟边界的前向约束值;基于所述横向虚拟边界和所述前向虚拟边界以及所述横向约束值和所述前向约束值来确定纵向加速度和转向角;以及基于所述纵向加速度和所述转向角来致动转向部件或制动器中的一者或两者。
[0160]
在本发明的一个方面中,所述方法包括:确定左侧横向虚拟边界、右侧横向虚拟边界、左侧横向约束值和右侧横向约束值。
[0161]
在本发明的一个方面中,所述转向角的方向是基于满足所述左侧横向约束值的所述左侧横向虚拟边界或满足所述右侧横向约束值的所述右侧横向虚拟边界。
[0162]
在本发明的一个方面中,所述方法包括:在所述前向约束值低于阈值时确定所述左侧横向虚拟边界和所述右侧横向虚拟边界两者。
[0163]
在本发明的一个方面中,所述方法包括:基于满足所述前向约束值的前向边界速度和满足所述横向约束值的横向边界加速度来确定所述纵向加速度和所述转向角。
[0164]
在本发明的一个方面中,所述方法包括:在确定所述横向约束值低于第一阈值并且所述前向约束值低于第二阈值时,基于所述主车辆与所述目标车辆之间的距离和所述目标车辆相对于所述主车辆的速度来致动所述转向部件或所述制动器中的一者或两者。
[0165]
在本发明的一个方面中,所述方法包括:在所述速度低于速度阈值且所述距离高于第一距离阈值时仅致动所述制动器,并且在所述速度高于所述速度阈值且所述距离高于第二距离阈值时仅致动所述转向部件。
[0166]
在本发明的一个方面中,所述速度阈值是基于所述主车辆的最大纵向减速度和所述主车辆的最大横向加速度。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1