CN113316535A - 车辆控制 - Google Patents
车辆控制 Download PDFInfo
- Publication number
- CN113316535A CN113316535A CN202080009505.8A CN202080009505A CN113316535A CN 113316535 A CN113316535 A CN 113316535A CN 202080009505 A CN202080009505 A CN 202080009505A CN 113316535 A CN113316535 A CN 113316535A
- Authority
- CN
- China
- Prior art keywords
- request
- vehicle
- information
- distance
- acceleration
- 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
Links
- 230000001133 acceleration Effects 0.000 claims abstract description 196
- 238000000034 method Methods 0.000 claims description 76
- 230000015654 memory Effects 0.000 claims description 23
- 230000009471 action Effects 0.000 claims description 12
- 230000006870 function Effects 0.000 abstract description 28
- 238000013439 planning Methods 0.000 description 29
- 230000008447 perception Effects 0.000 description 19
- 230000000670 limiting effect Effects 0.000 description 17
- 238000004891 communication Methods 0.000 description 16
- 230000008569 process Effects 0.000 description 11
- 230000007613 environmental effect Effects 0.000 description 8
- 230000004044 response Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 230000003068 static effect Effects 0.000 description 5
- 238000001514 detection method Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000012886 linear function Methods 0.000 description 4
- 241001465754 Metazoa Species 0.000 description 3
- 238000003491 array Methods 0.000 description 3
- 230000006399 behavior Effects 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000011156 evaluation Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 238000012913 prioritisation Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000002829 reductive effect Effects 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 238000002604 ultrasonography Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000001816 cooling Methods 0.000 description 1
- 230000009193 crawling Effects 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 239000000725 suspension Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/0088—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Purposes 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/14—Adaptive cruise control
- B60W30/143—Speed control
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Purposes 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/14—Adaptive cruise control
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Purposes 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/14—Adaptive cruise control
- B60W30/16—Control of distance between vehicles, e.g. keeping a distance to preceding vehicle
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Purposes 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/14—Adaptive cruise control
- B60W30/16—Control of distance between vehicles, e.g. keeping a distance to preceding vehicle
- B60W30/162—Speed limiting therefor
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Purposes 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/14—Adaptive cruise control
- B60W30/16—Control of distance between vehicles, e.g. keeping a distance to preceding vehicle
- B60W30/165—Automatically following the path of a preceding lead vehicle, e.g. "electronic tow-bar"
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Purposes 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/18—Propelling the vehicle
- B60W30/18009—Propelling the vehicle related to particular drive situations
- B60W30/18109—Braking
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W60/00—Drive control systems specially adapted for autonomous road vehicles
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0223—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving speed control of the vehicle
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
- G06V20/58—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
- G06V20/58—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
- G06V20/582—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads of traffic signs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
- G06V20/58—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
- G06V20/584—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads of vehicle lights or traffic lights
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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
- B60W2554/00—Input parameters relating to objects
- B60W2554/80—Spatial relation or speed relative to objects
- B60W2554/801—Lateral distance
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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
- B60W2554/00—Input parameters relating to objects
- B60W2554/80—Spatial relation or speed relative to objects
- B60W2554/802—Longitudinal distance
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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
- B60W2554/00—Input parameters relating to objects
- B60W2554/80—Spatial relation or speed relative to objects
- B60W2554/804—Relative longitudinal speed
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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
- B60W2555/00—Input parameters relating to exterior conditions, not covered by groups B60W2552/00, B60W2554/00
- B60W2555/60—Traffic rules, e.g. speed limits or right of way
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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
- B60W2720/00—Output or target parameters relating to overall vehicle dynamics
- B60W2720/10—Longitudinal speed
- B60W2720/106—Longitudinal acceleration
Landscapes
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Mechanical Engineering (AREA)
- Transportation (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Aviation & Aerospace Engineering (AREA)
- Remote Sensing (AREA)
- Business, Economics & Management (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Game Theory and Decision Science (AREA)
- Medical Informatics (AREA)
- Human Computer Interaction (AREA)
- Traffic Control Systems (AREA)
- Control Of Driving Devices And Active Controlling Of Vehicle (AREA)
Abstract
描述了用于控制车辆(诸如自动驾驶车辆)的命令确定。在一实例中,(基本上同时)接收用于相对于环境中的多个对象或条件中的每一个来控制车辆的各个请求,并且基于请求类型和/或与请求相关联的附加信息,命令控制器可以确定与一个或多个请求中的每一个相关联的控制命令(例如不同加速度、转向角、转向速率等)。命令控制器可以具有不同的控制器增益(其可以基于距离、距离比、估计碰撞时间等的函数)以确定控制,并且可以基于所有这些确定的控制来确定控制命令。
Description
相关申请的交叉引用
本PCT国际专利申请要求于2019年1月18日提交的美国发明专利申请第16/251788号申请日的权益,其公开内容通过引用完全并入本文。
背景技术
车辆(例如自动驾驶车辆)中的规划***利用与环境中的对象(例如动态主体、静态主体)和环境的属性(例如速度限制、天气状况)相关联的信息来确定用于导航通过环境的动作。例如,一些现有***在确定对象可能进入车辆的行驶路径或响应识别红灯或交通拥堵时控制车辆减速和/或停止。然而,在更复杂的驾驶环境中,例如其中多个静态对象、动态对象和/或环境条件可能影响行驶,可能难以确定车辆穿越环境的准确命令。例如某些对象的影响可能被高估或低估,这可能会导致突然加速或减速,使骑行者的旅行不愉快。
附图说明
参照附图进行详细描述。在图中,参考编号最左边的数字表示参考编号第一次出现的图。在不同图中使用相同的附图标记表示相似或相同的部件或部件。
图1是展示了在如本文所述的环境中的车辆控制的示例性实施方式的示意图。
图2是展示了如本文所述的用于车辆控制的示例性计算***的框图。
图3是展示了使用如本文所述的车辆控制在环境中导航车辆的示例方法的流程图。
具体实施方式
本文描述的技术涉及在环境中的车辆(诸如自动驾驶车辆)的响应控制。例如,在本文描述的实施方式中,可以通过考虑考虑车辆环境中的多个不同对象(例如动态障碍物,包括但不限于,行人、动物、骑自行车的人、卡车、摩托车、其他车辆等,静态障碍物,包括但不限于停放的车辆、停止的车辆等,交通管制对象,包括但不限于张贴的速度限制,和/或其他可能影响自动驾驶车辆的行驶和操作的对象或条件)和/或这些对象的预测动作来确定车辆沿规划路径的控制(诸如加速度、转向角、扭矩等)。例如,车辆可以确定不同的加速度,例如纵向加速度,以响应环境中的多个对象或条件中的每一个。
作为非限制性示例,自动驾驶车辆的计算设备可以接收用于响应环境中的对象和/或条件的控制请求。例如在一些实例中,计算设备可以接收与即将到来的停车标志相关联的信息、关于例如在受控车辆前方的领先车辆的信息以及关于张贴的速度限制的信息。基于这样的信息,计算设备可以生成和/或接收第一请求以在检测到的停车标志处停止,例如在前面的一定距离处,生成和/或接收第二请求以跟随领先车辆,例如通过保持与领先车辆相同的速度和限定与领先车辆的间隔的时间间隔,以及生成和/或接收第三请求以保持与张贴速度限制相关联的速度。如上所述,第一请求可以包括达到零速度的物理距离,第二请求可以包括与距离相关联的速度和时间,并且第三请求可以包括速度。因此,每个该请求可能包括不同的信息,例如速度、距离、时间,并且一些请求可能相互矛盾,例如在给定的实例中,车辆不能保持速度限制并且因停车标志而停止。
在一些实例中,计算设备可以针对每个该请求确定自动驾驶车辆的控制,例如,加速度,例如沿着行驶路径或轨迹的纵向加速度。继续上面的实例,计算设备可以确定第一加速度,例如减速度,其将导致车辆因停车标志而停止以执行第一请求。计算设备还可以确定用于匹配领先车辆的速度并保持期望的时间间隔以执行第二请求的第二加速度,并且计算设备可以确定用于获得速度限制以执行第三请求的第三加速度。应当理解,在一些实例中,计算设备可以计算与接收到的控制请求、检测到的对象和/或行驶相关条件一样多的加速度。
在一些实例中,除了速度、时间和/或距离信息之外,可以基于附加信息来确定命令加速度。例如,接收到的用于响应对象或条件的请求可以提供附加信息。作为非限制性示例,附加信息可以包括约束条件,其可以包括给定请求允许的最小和/或最大时间间隔、速度和/或加速度。附加信息还可以包括关于请求优先化的其他信息。例如,该请求可以包括用于确定特定请求的增加的加速度的信息,例如断然穿越拥挤的区域,或用于忽略可能不太重要的请求的信息。其他附加信息可以包括用于考虑某些对象的特殊指示,例如通过指示控制器将对象视为静止的或将固定轨迹与对象相关联。
在一些实施方式中,计算设备可以包括用于基于不同的输入请求确定加速度的不同控制器。例如,当输入请求包括在距当前位置指定距离处获得速度(例如张贴的速度限制)的请求时,与输入请求相关联的命令加速度可由具有第一控制器增益的第一控制器确定。在一些情况下,第一控制器增益可以是预定的或者可以是距离的函数。在其他实例中,例如其中输入请求是跟随对象(诸如领先车辆)或停在某个位置的命令,与输入命令相关联的命令加速度可由第二控制器确定。例如,第二控制器可以具有第二控制器增益。第二控制器增益可以是预定的或者可以是距对象的距离、到停止点的距离和/或到达对象和/或停止点的时间的函数。还可以至少部分地基于随该请求接收的附加信息来确定增益。
在一些方面,可以为每个请求确定命令(例如加速度),并且确定的命令加速度可以用于确定车辆的实际控制加速度。例如,可以针对特定时间(例如时间步)生成多个命令加速度,并且可以基于对应于该时间的控制加速度来确定用于该时间的控制加速度。在一些情况下,控制加速度可以至少部分地基于命令加速度的加权平均值来确定,或者另外根据优化或确定来确定。例如,计算设备可以将权重因数与每个命令加速度相关联,并且权重因数可以基于随相应请求接收的附加信息。控制加速度可用于控制车辆。
与传统***不同,本公开的方面在确定命令(诸如控制加速度)时可以包括更多事件,并且可以针对不同对象不同地确定加速度,例如通过基于输入命令使用不同的控制器。与此类常规***相反,此类独特的命令(加速度)确定可提供关于对象和/或环境条件的改进控制。在此描述的技术可以为乘客带来更平稳的乘坐体验,并为自动驾驶车辆和/或环境中的对象带来更高的安全性。
这里描述的技术还涉及利用传感器和感知数据使车辆(诸如自动驾驶车辆)除了提供愉快的骑行体验之外,在绕过环境中的对象的同时提高与穿过环境的导航相关的安全级别。此处描述的技术可以利用多个命令控制器来确定沿驱动路径的车辆加速度(和/或其他控制),使得车辆可以相对于这些对象以比现有导航技术更有效的方式和/或增加乘客的舒适度行驶。例如,本文描述的技术可以提供相比于现有预测和导航技术的技术改进。除了提高准确性(利用该准确性,传感器数据可用于确定车辆加速度)之外,本文中描述的技术还可以通过,例如,更准确地确定车辆可以运行以到达预定目的地的安全速度来提供更平稳的行驶并提高安全结果。本文所述的技术还可减少与车辆相关的部件磨损和能量需求。例如,现有技术可能会更严厉地制动和/或加速,从而对车辆部件施加额外和不必要的压力。
图1-3提供了与这里描述的技术相关联的附加细节。
图1是展示了穿过如本文所述的环境的车辆的响应控制的示例性实施方式的示意图。更具体地说,图1展示了车辆102在其中运行的示例环境100。在所展示的实例中,车辆102在环境100中行驶,但在其他示例中,车辆102可以是静止的和/或停在环境100中。一个或多个对象或主体在环境100中。例如图1展示了第一附加车辆104和第二附加车辆106(统称为“附加车辆104、106”)以及行人108。尽管未示出,任何数量和/或类型的对象,包括静态对象,例如道路标志、停放的车辆、消防栓、建筑物、路缘石等,动态对象,例如行人、动物、骑自行车的人、卡车、摩托车、其他车辆等,和/或其他交通控制对象,例如限速标志、停车标志、交通灯等可以附加地或备选地存在于环境100中。
车辆102可以是自动驾驶车辆,其配置为根据美国国家公路交通安全管理局发布的5级分类进行操作,该分类描述了能够在整个行程中执行所有安全关键功能的车辆,其中,驾驶员(或乘员)在任何时候都不能控制车辆。在这样的实例中,由于车辆102可以被配置为控制从开始到停止的所有功能,包括所有停车功能,所以它可以是无乘员的。这仅仅是一个实例,这里描述的***和方法可以并入任何地面、空中或水上交通工具,包括从需要驾驶员一直手动控制的交通工具到那些需要部分或完全自动控制的交通工具。下面描述与车辆102相关联的附加细节。
在图1的实例中,车辆102可以包括一个或多个车辆计算设备110。在一些实施方式中,车辆计算设备110可以例如使用传感器数据来识别一个或多个对象,例如,附加车辆104、106和/或行人108。在一些实例中,车辆102可以包括一个或多个传感器***(未示出),其可以包括但不限于光探测和测距(LIDAR)传感器、无线电探测和测距(RADAR)传感器、时间飞行传感器、超声换能器、声音导航和测距(SONAR)传感器、位置传感器(例如全球定位***(GPS)、指南针等)、惯性传感器(例如惯性测量单元、加速度计、磁力计、陀螺仪)等)、相机(例如RGB、IR、强度、深度等)、轮式编码器、麦克风、环境传感器(例如温度传感器、湿度传感器、光传感器、压力传感器等)等。
在至少一个实例中,车辆计算设备110可以包括感知***(图1中未示出),其可以至少部分地基于从传感器***接收的传感器数据来执行对象检测、分割和/或分类。例如感知***可以基于由传感器***生成的传感器数据来检测环境100中的附加车辆104、106和/或行人108。另外,感知***可以确定附加车辆104、106和/或行人108的范围(例如高度、宽度、长度等)、附加车辆104、106和/或行人108的姿态(例如x坐标、y坐标、z坐标、俯仰、滚动、偏航)和/或附加车辆104、106和/或行人108的附加属性。传感器***可以连续生成传感器数据(例如接近实时),其可由感知***(和/或车辆计算设备110的其他***)使用。
车辆计算设备110还可以包括可以确定一个或多个控制请求114的请求生成***112。例如,每个控制请求114可以包括用于相对于环境中检测到的对象或环境中的一些其他条件或特征控制车辆102的信息。在图1的实例中,请求生成***112可以确定用于相对于第一附加车辆104导航的控制请求114中的第一控制请求、用于相对于第二附加车辆106导航的控制请求114中的第二控制请求、以及用于相对于行人108导航的控制请求114中的第三控制请求。还可以响应于环境100中的附加对象或条件生成附加控制请求。例如环境可以具有相关联的速度限制,例如如张贴在交通标志上,并且响应命令114可以包括用于获得和/或保持与张贴的速度限制相关联的速度的命令。类似地,在其他实施例中,其他对象或环境条件也可能导致请求生成***112确定附加控制请求114。此类对象和/或条件可以包括但不限于交通灯、停车标志、让路标志、汇合交通等。在本文描述的实施方式中,控制请求114可以包括与执行控制请求114相关联的参考速度、参考距离(例如达到所请求的速度的距离)和/或参考时间(例如达到所请求的速度的时间)中的一个或多个。因此,在控制请求114包括遵守张贴的速度限制的请求的实例中,控制请求114可以包括与张贴的速度限制相关联的速度。除了与速度限制相关联的速度之外,控制请求114还可以包括车辆102应当达到目标速度的距离。尽管上面仅列举了几个控制请求,但应理解,基于车辆102如何响应环境中的各种情况,可以选择更多或更少类型(或类别)的控制请求。
如所描述的,请求生成***112将为车辆102的环境100中的若干对象和/或条件中的每一个生成控制请求114。控制请求可以以许多不同的形式出现,例如取决于要相对控制的对象和/或要采取的期望动作(例如不同类型和/或类别的控制请求)。作为非限制性示例,一种控制请求类型可以包括以给定速度跟随车辆(例如车辆104)的请求,而另一种控制请求可以包括停止请求(例如用于在停车标志处停止)。在这样的实例中,每个控制请求可以对应于不同的运动学、安全协议等。因此,车辆计算设备110还可以包括一个或多个命令控制器116,该一个或多个命令控制器被配置为确定对应于每个控制请求114的控制(例如加速)命令118。在一些实例中,命令控制器116可以使用一个或多个公式来确定控制命令118。例如,并且如本文进一步描述的,可以根据接收到的控制请求114的类型来使用不同的命令控制器116。在一些情况下,命令控制器116的不同命令控制器可以包括不同的动力学和/或运动学以获得所请求的控制(例如经由使用不同的控制器增益来确定加速度命令118)。例如,第一命令控制器116-1可以具有作为速度(例如相对速度)的函数的增益调度的控制器增益。例如,第一命令控制器116-1可用于确定用于包括速度的控制请求114的加速度。第二命令控制器116-2可以具有作为距离和/或时间的函数的增益调度的控制器增益。例如,距离可以是距预定位置的距离,该预定位置可以是空间中的位置,或者到环境中的对象的距离。在第二控制器增益作为时间的函数被增益调度的实施方式中,作为非限制性示例,时间可以是与对象碰撞的时间。然而,在替代的或附加的实例中,可以确定这样的时间以便为乘客提供舒适的体验,或者以其他方式考虑安全。还展示了第三命令控制器116-3,并且可以包括专用于一个或多个特殊情况的一个或多个控制器。例如,第三控制器可以在计算加速度命令118时使用预定增益。虽然图1展示了三个命令控制器116,但可以提供更多或更少的控制器。在此处描述的实施方式中,命令控制器116可以生成最适合遵守各个控制请求114的加速度命令118。此外,虽然在图1中描绘并且上面出于说明性目的描述,在一些实例中,加速度命令118可以还包括转向、转向速率等。
在一些实施方式中,各控制请求114以及因此各加速度命令118可能彼此不一致。例如,第一控制请求可以是遵守张贴的速度限制的请求,而第二控制请求114可以是跟随对象(诸如第一附加车辆104)的请求。当第一附加车辆104以公布的速度限制行驶时,车辆102可以遵守这两个请求。然而,当附加车辆加速到高于或低于张贴的速度限制时,命令控制器116可以生成不同的加速度命令118,例如第一加速度(诸如零加速度),以保持速度限制和第二加速度以保持距第一附加车辆104的距离。可以理解,根据附加的控制请求,也可以产生附加的加速度命令118。
为了在多个加速度命令之间进行仲裁,车辆计算设备110还可以包括用于生成控制命令的控制确定***120,例如用于控制车辆102。例如,控制确定***120可以至少部分地基于每个加速度命令118确定命令(例如单个纵向加速度)。在一些实例中,请求生成***112可以在识别对象或条件时等以一定间隔(例如周期性间隔)生成控制请求114。并且,命令控制器116可以处理该请求114以在接收到请求时等以一定间隔(例如周期性间隔)生成加速度命令118。在一些实例中,控制确定***120可以基于针对特定时间帧或时间段生成的所有命令来确定命令加速度。因此,命令加速度可以是轨迹或行驶路径上特定点(或时间)的纵向加速度。此外,因为车辆计算设备110可以预测未来的动作和环境特征,例如在某个时间范围内,控制确定***120可以使用这里描述的技术来确定轨迹或行驶路径上额外的点(或时间)的命令加速度。在一些实例中,该预测可以包括随着时间的推移更新车辆102和/或环境中对象的位置(例如基于与车辆102相关联的控制和/或基于预期位置、加速度、速度等,与车辆和/或对象的预测轨迹相关联)。作为非限制性示例,由控制确定***120确定的这样的命令可以包括对于未来预测的行驶车辆的1秒、2秒、3秒和4秒(或1分、2分、3分和4分等)中的每一个的多个加速度命令118的仲裁以确定车辆102将遵循的轨迹,尽管任何数量的这样的点(在时间和/或空间中)以及它们之间的任何间距都是可以预期的。
在更详细的实例中,图1可以展示其中车辆102通常在箭头120的方向上行驶通过环境100的场景。车辆102正在具有第一车道124和第二车道126的道路122上行驶。车辆102在第一车道124上,位于第一附加车辆104后面,并且在该实例中,可以以与第一附加车辆104相对相同的速度行驶。例如,请求生成***112可以生成控制请求114以保持相对距第一附加车辆104后方的恒定距离。在一些情况下,控制请求114可以将距离表示为要在车辆102和第一附加车辆104之间保持的时间间隔。这样的控制请求114可以根据车辆102的策略(例如规定在可能的情况下跟随领先车辆的策略)。通常,时间间隔可以是作为领先车辆的第一附加车辆104通过位置的第一时间与车辆102通过位置的第二时间之间的差。因此,将理解的是,第一附加车辆104和车辆102之间的实际物理距离可以基于第一附加车辆104(和车辆102)的速度而变化。在其他情况下,控制请求还可以包括关于第一附加车辆104的加速度信息。基于保持相对于第一附加车辆104的时间间隔的控制请求114,命令控制器116(例如第二控制器116-2)可以确定用于获得和/或保持所请求的时间间隔的加速度命令。
在图1所展示的实例中,跟随第一附加车辆104的控制请求114可以仅为一个控制请求。例如,行人被展示为沿着轨迹128行进并且响应于行人108和/或轨迹128的存在,请求生成***112也可以生成控制请求114以减速,例如因为行人可以进入第一车道124,例如乱穿马路122。因此,在这个实例中,另一个控制请求114可以包括在距当前位置预定距离处减速到例如较低的参考速度的请求。例如,该距离可以是车辆102的当前位置与前方一定距离的假想线132上的位置130之间的距离。这种距离和速度可以根据策略来确定(例如以确保车辆102的速度不满足或超过行人半径内的最大速度)。在该实例中,位置130和/或假想线132可以被确定为相对于行人108的当前位置的线/位置。因此,控制请求114可以是与行人108可能侵入第一车道124相关联的控制请求并且可以表示为速度,例如低于当前速度的速度,以及达到较低速度的距离,例如到位置130和/或线132的距离。控制请求114基于行人108生成,基于该控制请求,命令控制器116(例如第一控制器116-1)可以通过线132确定用于使车辆102减速的加速度命令。
在图1的实例中。跟随第一附加车辆104的加速度命令可以使用第二命令控制器116-2来确定,并且在预期接近行人108时减慢车辆的加速度命令可以使用第一命令控制器116-1来确定。在一些实例中,第二命令控制器116-2可以包括控制器增益,该控制器增益至少部分地基于车辆102到第一附加车辆104的距离、车辆102和第一附加车辆104之间的期望距离和/或直到车辆102将接触第一附加车辆104的时间进行增益调度。第一命令控制器116-1可以包括第二增益,该第二增益至少部分地基于到目标停车位置(例如点130)的距离进行增益调度。因此,在图1的实例中,随着车辆102更接近点130,增益函数可以使车辆102更快地减速,例如以在位置130处达到期望速度。
继续该实例,可以在控制确定***120处接收加速度命令118,该加速度命令可以确定并输出控制加速度。例如,控制确定***120可以计算两个接收到的控制命令的加权平均值,可以选择加速度命令118之一作为控制加速度,或者可以以其他方式在加速度命令之间进行仲裁。
图1展示了使用车辆控制技术在环境中导航的单一实例。还设想了其他实例。例如,尽管图1仅展示了两个额外的车辆104、106和行人108,但也考虑了对象和/或事件。例如,可以根据本文描述的技术考虑进入道路122的车辆,例如从车道或交叉街道、高速公路上的拉链并道等。在其他实例中,在高度拥挤的区域中,例如其中许多障碍物可能使行进变得困难,本文所述的技术可以使车辆沿着轨迹缓慢行进,例如以减少遮挡,或以其他方式“果断”地移动通过交叉路口。在实施方式中,例如,控制请求可以包括命令控制器116在确定相应的加速度命令118时应当调整增益或使用特定命令控制器116(例如其可以利用不同增益)的指示。任何可能影响车辆102行驶的对象或事件都可以用作生成控制请求114的基础,其中命令控制器116生成相关联的加速度命令118。同样如此处所描述的,加速度命令118都可以被控制确定***120考虑。这里进一步讨论了几个其他实例。
图2是展示用于通过如本文所述的环境实现车辆的响应控制的示例性***200的框图。在至少一个实例中,***200可以包括车辆202,该车辆可以与以上参考图1描述的车辆102相同。车辆202可以包括一个或多个车辆计算设备204、一个或多个传感器***206、一个或多个发射器208、一个或多个通信连接件210、至少一个直接连接件212和一个或多个驱动模块214。在至少一个实例中,车辆计算设备204可以对应于以上参考图1描述的车辆计算设备110。
车辆计算设备204可以包括处理器216和与处理器216通信耦合的存储器218。在所展示的实例中,车辆202是自动驾驶车辆;然而,车辆202可以是任何其他类型的车辆。在所展示的实例中,车辆计算设备204的存储器218存储定位***220、感知***222、预测***224、规划***226和一个或多个***控制器228。虽然这些***和部件被图示并且将在下面描述为单独部件以便于理解,但是各种***、部件和控制器的功能可以与所讨论的不同地归属。作为非限制性实例,归属于感知***222的功能可以由定位***220和/或预测***224执行。可以利用更少或更多的***和部件来执行这里描述的各种功能。此外,虽然在图2中描述为驻留在存储器218中,但考虑到定位***220、感知***222、预测***224、规划***226和/或一个或多个***控制器228可以附加地或备选地可访问车辆202(例如存储在远离车辆202的存储器上或以其他方式可访问)。
同样如图2所示,车辆202还可以包括地图存储器236。例如,地图存储器236可以存储一张或多张地图。地图可以是任意数量的二维或三维建模的数据结构,并且能够提供有关环境的信息,诸如但不限于通常的拓扑(诸如交叉路口)、街道、山脉、道路、地形和环境。
在至少一个实例中,定位***220可以包括从传感器***206接收数据以确定车辆202的位置和/或方向(例如x-、y-、z-位置、滚动、俯仰或偏航)的功能。例如,定位***220可以包括和/或请求/接收环境的地图(例如从地图存储器236)并且可以连续地确定地图内车辆202的位置和/或方向。在一些情况下,定位***220可以利用同时定位和映射(SLAM)技术、校准、定位和映射、同时技术、相对SLAM技术、束调整、非线性最小二乘优化、微分动态规划等来接收图像数据、LIDAR数据、雷达数据、IMU数据、GPS数据、轮式编码器数据等,以准确确定自动驾驶车辆的位置。在一些情况下,定位***220可以向车辆202的各个部件提供数据以确定自动驾驶车辆的初始位置,用于生成在环境中行驶的候选轨迹。
在一些情况下,感知***222可以包括执行对象检测、分割和/或分类的功能。在一些实例中,感知***222可以提供指示接近车辆202的对象(诸如附加车辆104、106和/或行人108)的存在的处理过的传感器数据。感知***222还可以确定将实体分类为实体类型(例如汽车、行人、骑自行车者、动物、建筑物、树木、路面、路缘石、人行道、未知等)。例如感知***222可以将传感器数据与存储的对象信息进行比较以确定分类。在附加和/或替代实例中,感知***222可以提供处理的传感器数据,该传感器数据指示与检测到的对象和/或对象所处的环境相关联的一个或多个特征。在一些实例中,与对象相关联的特征可以包括但不限于x位置(全局和/或局部位置)、y位置(全局和/或局部位置)、z位置(全局和/或局部位置)、方向(例如滚动、俯仰、偏航)、对象类型(例如分类)、对象的速度、对象的加速度、对象的范围(大小)等。与环境相关的特征可以包括但不限于:环境中另一个对象的存在、环境中另一个对象的状态、一天中的时间、一周中的一天、季节、天气条件,黑暗/光明的指示等。
预测***224可以访问来自传感器***206的传感器数据、来自地图存储器236的地图数据以及在一些实例中从感知***222输出的感知数据(例如处理的传感器数据)。在至少一个实例中,预测***224可以至少部分地基于传感器数据、地图数据和/或感知数据来确定与对象相关联的特征。如上所述,特征可以包括对象的范围(例如高度、重量、长度等)、对象的姿态(例如x坐标、y坐标、z坐标、俯仰、滚动、偏航)、对象的速度、对象的加速度以及对象的行驶方向(例如航向)。此外,预测***224可以被配置为确定对象与邻近行车车道之间的距离、当前行车车道的宽度、与人行横道的接近度、语义特征、交互特征等。
预测***224还可以分析对象的特征以预测对象的未来动作。例如预测***224可以预测车道改变、减速、加速、转弯、方向改变等。预测***224可以将预测数据发送到规划***226,例如使得请求生成***230可以使用预测数据确定用于相对于对象控制车辆202的适当动作。例如预测***224可以生成指示对象将进入行驶路径和/或以其他方式干扰车辆202的当前路径和/或轨迹的可能性的预测数据。
通常,规划***226可以确定车辆202可以穿越环境所沿的路径。例如,规划***226可以确定各种路线和轨迹以及各种细节的水平。规划***226可以确定从第一位置(例如当前位置)行驶到第二位置(例如目标位置)的路线。出于本次讨论的目的,路线可以是用于在两个位置之间行驶的一系列路径点。作为非限制性示例,路径点包括街道、十字路口、全球定位***(GPS)坐标等。此外,规划***226可以生成用于引导自动驾驶车辆沿着从第一位置到第二位置的路线的至少一部分的指示。在至少一个实例中,规划***226可以确定如何引导自动驾驶车辆从路径点序列中的第一路径点到路径点序列中的第二路径点。在一些实例中,指示可以是轨迹或轨迹的一部分。在一些实例中,可以根据后退地平线技术基本上同时生成多个轨迹(例如在技术容限内),其中选择多个轨迹之一供车辆202导航。因此,在本文描述的示例性实施方式中,规划***226可以生成车辆可以沿着其导航的轨迹,其中轨迹沿着行驶路径。
在本公开的实施方式中,并且更详细地,规划***226可以周期性地确定用于例如相对于车辆202的环境中的对象和/或条件操作车辆202的控制信号。例如和如上所述,规划***226可以包括请求生成***230(其可以与请求生成***112相同或相似)、一个或多个命令控制器232(其可以与命令控制器116相同或相似)和控制确定***234(其可以与控制确定***120相同或相似)。
请求生成***230可以确定用于例如相对于影响车辆202的行驶(或潜在影响行驶)的对象、条件和/或特征命令车辆202的请求。例如,请求生成***230可以生成在图1中展示的控制请求114。示例性控制请求可以包括,例如相对于单个对象、特征或对象,用于执行单个命令的速度信息、距离信息、时间信息和/或加速度信息中的一个或多个。在一个实例中,由请求生成***230生成的控制请求可以包括跟随对象(诸如领先车辆)的请求。在这样的实例中,跟随对象的该请求可以包括关于对象的信息。例如,该请求可以包括对象的速度和/或关于对象的加速度信息,如果已知的话。跟随对象的该请求还可以包括在对象后面保持的距离。在一些实例中,距离可以表示为时间间隔。例如,时间间隔可以定义第一(例如领先的)对象通过参考点的第一时间与车辆通过参考点的第二时间之间的时间差。因此,例如,当车辆202被请求在领先车辆之后保持1.5秒的时间间隔时,车辆将比领先车辆晚1.5秒通过参考点。应当理解,当领先车辆和车辆202以15米/秒行驶时,车辆202将在领先车辆后面10米,而当领先车辆和车辆202以3.0米/秒行驶时,车辆202将在领先车辆后面2米。因此,时间间隔可用于确定与速度相关的距离。然而,在其他实施例中,跟随对象的该请求可以包括保持在对象后面的物理距离,例如不管跟随的对象的速度如何。
可以由请求生成***230生成的另一个示例性请求可以是获得和/或保持目标速度的请求。例如目标速度可以至少部分地与车辆行驶的道路的速度限制有关。例如,速度可以对应于张贴的速度限制,对应于比预定量快的速度,例如每小时5英里,对应于比预定量慢的速度,例如每小时2英里等。在其他实例中,目标速度可以是基于即将到来的降低速度限制、即将到来的交叉路口(例如从地图数据确定)或即将到来的交通拥堵或其他因素的识别的减小的速度。
可以由请求生成***230生成的另一个示例性请求可以是在距当前位置一定距离处获得期望速度的请求。例如这样的请求可以包括期望速度的指示以及距离的指示。例如,可以在以下情况下使用此类请求:期望在预期即将到来的交通拥堵时将车辆减慢到较慢的速度。在其他实例中,该请求可以用于响应识别即将到来的速度限制变化,例如识别距离中的速度限制标志。在这样的实例中,该请求可以包括与标志上的速度限制相关的速度和到标志的距离。
请求生成***230还可以生成停止车辆的请求。例如,这样的请求可以包括车辆应该停止的距离或位置。这种请求可以包括零速度,以及车辆应该停止的距离的指示。在一些情况下,距离可以是到与停车标志、人行横道、十字路口等相关的位置(例如该位置或附近位置)的距离。
根据上述内容,可以响应于不同的对象,例如其他车辆、行人等,或一些环境条件,例如张贴的限速、地形特征、人行横道、十字路口等生成不同的控制请求。在一些实例中,请求生成***230可以基于任意数量的标准来确定控制请求,标准包括但不限于对象或特征的类型、对象或特征与车辆的接近度、预测的动作或车辆和/或对象的轨迹等。在一些情况下,请求生成***230可以从感知***222和/或预测***224接收信息并且基于这样的信息确定控制请求。作为非限制性实例,如果感知***222识别行人,则预测***224可以确定行人正在沿着道路行走,并且作为响应,请求生成***可以生成跟随行人的请求。然而,如果预测***224确定行人可能横穿马路,则请求生成***230可以生成针对行人停车的请求。此外,根据控制请求的类型,请求生成***230可以随该请求提供不同的信息。这样的信息可以包括速度、距离和/或时间(例如相对于跟随对象保持的时间间隔)中的一个或多个。在其他实施方式中,请求生成***230还可以随该请求提供附加信息。作为非限制性示例,请求生成***230还可以识别用于执行该请求的约束。在一些实例中,此类约束可以包括满足该请求要求的一系列可接受的输入。例如,这样的约束可以包括最小和/或最大时间间隔范围、最小和/或最大参考速度、和/或应该用于执行该请求的最小和/或最大加速度。在一个实例中,获得增加的速度的请求可以包括用于获得期望速度的最大加速度,例如以避免过度加速。在另一实例中,时间间隔范围可以提供有跟随领先车辆的请求。例如,并且如上所述,时间间隔可用于确定与速度相关的跟随距离,因此时间间隔范围可用于确定可接受距离的范围。在此处描述的实施方式中,约束可以包括包含期望时间的时间范围。因此,在期望的1.5秒时间间隔的实例中,请求生成***230生成的约束可以包括例如1.2秒的最小时间间隔和1.8秒的最大时间间隔。当然,这些值仅作为实例,并且可以备选地使用其他最大和/或最小时间间隔。在至少一些实例中,这样的范围(例如时间间隔)可能不会产生一致的结果。在这样的实例中,命令控制器232可以越来越多地惩罚与范围的最大值和/或最小值相关联的加速度(例如从中心值呈指数、线性等)。类似地,当请求生成***230生成期望车辆行驶的参考速度时,该请求还可以包括最大速度或最小速度中的一个或两个。在一些实例中,通过包括范围,例如通过在请求中包括最小值和/或最大值,车辆的控制器可以更好地满足多个请求。
请求生成***230还可将其他信息与该请求相关联,该信息可用于确定车辆的控制。例如,请求生成部件230在生成涉及对象的请求时还可以包括与对象相关联的指示。这样的指示可以是与该请求相关联的标志、标签或其他信息的形式。例如,考虑生成跟随领先车辆的请求的场景。当车辆减速和停止时,例如在红灯时,领先车辆的驾驶员可以允许他的车辆例如以非常慢的速度向前滚动或滑行。在一些实施方式中,车辆202可以加速以跟随该滚动。然而,在其他情况下,该请求可以包括当领先车辆的速度等于或低于阈值速度时将领先车辆视为静止的指示。因此,例如,车辆可以在上述场景中保持停止状态,而不是蠕行以跟随领先车辆。相反,在需要附加信息以便安全地通过交叉路口的情况下(例如当交叉路口处的遮挡妨碍车辆202获得足够的信息以安全地通过交叉路口时),附加指示可以包括向前“蠕行”的请求(例如非常缓慢地向前移动以减少遮挡)。
在其他实例中,命令请求可以包括定义或约束对象在环境中的移动的其他或附加指示。例如命令请求可以将对象标识为与碰撞目的无关。在一个实例中,当车辆202在另一车辆(诸如图1中的第二附加车辆106)旁边时,请求生成***230可以生成落后于第二附加车辆106(例如跟随或并入该第二附加车辆后面)的请求。该请求可以包括将预测运动或预测速度归因于环境中的另一个对象的信息。例如,该请求可以包括指示第二车辆与碰撞无关的信息,例如通过预测第二车辆将停留在其当前车道、通过预测第二车辆将保持当前或预测速度、通过预测第二车辆将沿着预测的或当前的轨迹等继续行驶,因此加速度将不基于与第二附加车辆106的潜在碰撞。实际上,这可能导致车辆202(或在图1中的车辆102)被控制以允许第二附加车辆106更缓慢地移动到车辆202(或车辆102)前方的位置,例如当与第二附加车辆106被视为切断或以其他方式在车辆202(或车辆102)前方行驶的威胁的情况相比时。
在附加实例中,请求生成***230可以包括在执行请求时更加独断的指示。例如,当车辆102在拥挤的十字路口,并且已经在十字路口停留了相对较长的时间时,该请求可以包括通过十字路口的指示,例如在车辆后面或以更大的独断达到某个速度的指示。例如,该“独断”指示可以是命令控制器232增加增益的指示,例如以计算更高的加速度,或一起临时使用不同的命令控制器232,以便在交叉路口导航。例如,“独断”指示可以使特殊控制器,例如第三命令控制器116-3确定用于该请求的命令加速度。在一些实施方式中,控制器可具有预定增益,例如该预定增益可以高于与其他控制器相关联的增益。在其他实例中,“独断”指示可以向命令控制器232和/或控制确定***234指示为该请求/加速度命令分配更高的权重。在至少一些示例中,这样的第三命令控制器116-3可以不是附加控制器,而是对另一个控制器的修改。
请求生成***230还可以提供关于请求的重要性的信息。作为非限制性示例,考虑车辆202正在接近远处车辆的实例。请求生成***230可以生成跟随远处车辆的请求,但可以指示该请求的重要性较低,例如由于车辆距离太远,该请求可能会被忽略(因此,在可以合法地跟随远处的车辆之前,环境的许多属性可能会发生变化)。
命令控制器232被配置为接收各种命令请求并生成加速度命令,诸如加速度命令118。在本文描述的实施方式中,可以为每个命令请求生成加速度命令。命令控制器232可以包括多个控制器,每个控制器被配置为从一个或多个不同类型的输入控制请求生成加速度命令。在至少一些实例中,每个控制请求类型可以与不同的命令控制器相关联。
在一个实例中,命令控制器232的第一控制器可以被配置为接收参考速度,例如期望速度,并且确定加速度以实现期望速度。第一控制器还可以被配置为接收要达到期望速度的距离。第一个控制器的实例如公式1所示:
公式(1)通常表示用于确定控制加速度ax(例如车辆在环境中在纵向x方向上被控制的加速度)的公式。如所示,v是车辆的当前速度,vref是例如由控制请求指定的期望的速度。术语aref可以是命令请求指定的参考加速度,术语kv(d)是控制器增益。在一些实例中,术语aref可以由请求生成***230指定为在控制车辆200中提供额外灵活性的方式。例如请求生成***230可以指示参考加速度,使得车辆在执行该请求时,将跟踪轨迹而不是速度设定点。例如,参考加速度可以用作跟踪加速/减速轨迹的速度前瞻处理。在该实例中,控制器增益作为命令请求中指定的距离d(例如当前位置和车辆202应当获得期望速度的位置之间的距离)的函数进行增益调度。该函数可以包括线性函数、非线性函数、指数函数等。在一些实施方式中,控制器可以通过查找表进行增益调度。在公式1中,控制器增益可以被安排为随着距离的减小而增加,例如使得车辆在接近指定位置时更快地减速(或加速),以获得参考速度。在没有提供距离的那些实例中,这种增益可以设置为零(0)。这种第一控制器可以与速度控制请求类型和/或给定距离控制请求类型的速度中的一个或多个相关联。
在另一个示例中,命令控制器232的第二命令控制器可以被配置为接收其他类型的控制请求并确定控制加速度。例如,第二控制器可以是级联控制器,该级联控制器被配置为基于与停止车辆相关联的控制请求类型或与跟随对象相关联的控制请求类型来确定命令加速度。公式2说明了第二控制器的示例:
ax=-kv(dratio,tc)*[kp(dratio,tc)*[ddes-d]-vrel] (2)
公式(2)一般表示用于确定控制加速度ax(例如车辆将在环境中在纵向x方向上被控制的加速度)的公式。如所示,该第二控制器包括两个控制增益kv和kp,每个增益被调度为距离比、dratio和估计碰撞的时间tc的函数(例如其中车辆202和对象都保持当前预测的轨迹)。例如,该函数可以是线性函数、非线性函数、指数函数等。在一些情况下,可以使用查找表对控制器进行增益调度。同样在该示例中,距离比可以是期望距离与实际距离的比值。因此,例如,当命令请求是跟随车辆的请求时,距离比可以是车辆202跟随对象(例如领先车辆)的期望距离与到对象的实际距离的比值。如这里所描述的,命令请求可以包括时间间隔并且因此可以使用公式(3)来计算期望距离:
ddes=vx*tgap (3)
其中,vx对应于当前纵向速度并且tgap对应于期望的时间间隔。
同样在该实例中,可以使用公式(4)来确定碰撞时间:
在公式(4)中,d表示距对象的当前距离,Vrel表示参考或期望速度Vref与实际速度vx之间的相对速度,如公式(5)中所示:
vrel=vref-vx (5)
因此,在公式(1)中示出的第一控制器和公式(2)中体现的第二控制器是基于接收到的命令请求利用不同的控制器增益来确定加速度的控制器的实例。然而,在其他实例中,命令控制器232可以包括不同的增益调度方案。作为非限制性示例,命令控制器232可以通过修改控制器增益(诸如第二控制器增益)实现不同类型的行为,例如不同的加速度。作为非限制性示例,在所接收的命令请求包括动作(例如独断通过繁忙交叉路口的请求)的优先化的示例中,第二控制器的kp增益可以按比例增加(例如线性、指数、非线性等)以增加初始加速度命令。在一些实例中,一些情况下的控制器增益可以是预定的,例如存储在查找表或其他数据库中以供命令控制器232使用。在一些实例中,传递到这种级联控制器的其他标志(附加信息)将会修改增益以使车辆202向前“蠕行”(例如在纵向方向上缓慢向前移动)。当然,可以设想附加的或替代的修改来修改这样的级联控制器。
在指定范围(例如最大和最小时间间隔、最大和最小速度等)的那些示例中,可以运行(或以其他方式执行)控制器以产生与提供的范围的每个最大值和最小值相关联的命令(命令加速度)。在这样的实例中,可以将两个命令加速度传递给控制确定部件234。
在一些实例中,命令控制器232将为每个接收到的控制请求生成单一加速度。然而,在其他实例中,命令控制器232可以为单一命令请求生成多个加速度。作为非限制性示例,当命令请求包括约束(诸如最小和/或最大时间间隔、速度和/或加速度)时,可以生成与这些最小值和/或最大值中的一个或多个相关联的不同加速度。再次,尽管在此相对于纵向加速度进行了描述,但这样的描述并不意味着如此限制。在一些实例中,例如,这样的控制器可以包括,例如,附加控制,诸如但不限于转向、转向速率等。
一旦由命令控制器232生成,加速度命令就可以由控制确定部件234接收。控制确定部件234被配置为确定车辆202沿行驶路径控制的加速度,例如沿行驶路径的纵向加速度。例如,控制确定部件234可以根据由命令控制器232生成的每个加速度命令来确定车辆的控制加速度。例如,在2018年10月15日提交的标题为“响应式车辆控制”的美国专利申请第16/160594号中描述了基于多个候选加速度来确定控制加速度的示例技术,其全部公开内容以引用方式并入本文。
在至少一些实例中,规划***226可以在未来的各个点(空间上和/或时间上)迭代地确定这样的控制,以便确定用于控制车辆202的优选轨迹。作为非限制性的实例,上述工艺可用于确定未来1秒、2秒、3秒和4秒中的每一个的命令(例如加速度),尽管任何其他空间和/或时间间隔是可预期的。
在至少一个实例中,定位***220、感知***222、预测***224和/或规划***226(和/或规划***226的部件)可以如上所述处理传感器数据,并且可以通过网络238将它们各自的输出发送到计算设备240。在至少一个实例中,定位***220、感知***222、预测***224和/或规划***226可以以特定频率,在经过预定时间段之后,接近实时地等将它们各自的输出发送到计算设备240。
在至少一个实例中,车辆计算设备204还可以包括***控制器228,该***控制器可以被配置为控制车辆202的转向、推进、制动、安全、发射器、通信和其他***。这些***控制器228可以与驱动模块214的相应***和/或车辆202的其他部件通信和/或进行控制。例如,***控制器228可以使车辆例如以由控制确定部件234确定的加速度沿着由规划***226确定的驱动路径穿越。
在至少一个实例中,传感器***206可以包括LIDAR传感器、RADAR传感器、超声换能器、SONAR传感器、位置传感器(例如GPS、罗盘等)、惯性传感器(例如惯性测量单元、加速度计、磁力计、陀螺仪等)、相机(例如RGB、UV、IR、强度、深度等)、麦克风、轮式编码器、环境传感器(例如温度传感器、湿度传感器、光传感器、压力传感器等)等。传感器***206可以包括这些或其他类型的传感器中的每一个的多个实例。例如,LIDAR传感器可以包括位于车辆202的拐角处、前部、后部、侧面和/或顶部的单独的LIDAR传感器。作为另一个实例,摄像机传感器可以包括设置在车辆202的外部和/或内部的不同位置的多个摄像机。传感器***206可以向车辆计算设备204提供输入。附加地和/或备选地,传感器***206可以以特定频率,在经过预定时间段之后,接近实时地等经由网络238将传感器数据发送至计算设备240。
车辆202还可以包括用于发射光和/或声音的一个或多个发射器208。该实例中的发射器208可以包括内部音频和视觉发射器以与车辆202的乘客进行通信。作为示例而非限制,内部发射器可以包括扬声器、灯、标志、显示屏、触摸屏、触觉发射器(例如振动和/或力反馈)、机械致动器(例如安全带张紧器、座椅***、头枕***等)等。该实例中的发射器208还包括外部发射器。作为示例而非限制,外部发射器可以包括用于与行人、其他驾驶员、其他附近车辆等进行视觉通信的光发射器(例如指示灯、标志、灯阵列等)、与行人、其他驾驶员、其他附近车辆等进行可听地通信的一个或多个音频发射器(例如扬声器、扬声器阵列、喇叭等)。在至少一个实例中,发射器208可以设置在车辆202的外部和/或内部周围的各种位置。
车辆202还可以包括能够在车辆202和其他本地或远程计算设备之间进行通信的通信连接件210。例如,通信连接件210可以促进与车辆202和/或驱动模块214上的其他本地计算设备的通信。此外,通信连接件310可以允许车辆与附近的其他计算设备(例如其他附近的车辆、交通信号灯等)进行通信。通信连接件210还使车辆202能够与远程操作计算设备或其他远程服务通信。
通信连接件210可以包括物理和/或逻辑接口,用于将车辆计算设备204连接到另一个计算设备或网络,诸如网络238。例如,通信连接件210可以启用基于Wi-Fi的通信,诸如经由由IEEE802.11标准定义的频率、诸如的短距离无线频率或者使相应计算设备能够与其他计算设备进行接口的任何合适的有线或无线通信协议。
在至少一个实例中,车辆202还可以包括驱动模块214。在一些实例中,车辆202可以具有单一驱动模块214。在至少一个实例中,如果车辆202具有多个驱动模块214,单独的驱动模块214可以定位在车辆202的相反端部(例如前部和后部等)。在至少一个实例中,驱动模块214可以包括传感器***以检测驱动模块214和/或车辆202的周围环境。通过示例而非限制,传感器***206可以包括轮式编码器(例如旋转编码器)以感测驱动模块的车轮的旋转、惯性传感器(例如惯性测量单元、加速度计、陀螺仪、磁力计等)以测量驱动模块的位置和加速度、摄像机或其他图像传感器、超声波传感器以声学检测驱动模块周围的对象、LIDAR传感器、RADAR传感器等。一些传感器(诸如轮式编码器)对于驱动214而言可能是独一无二的。在一些情况下,驱动模块214上的传感器***可以重叠或补充车辆202的相应***(例如传感器***206)。
驱动模块214可以包括许多车辆***,包括高压电池、推进车辆202的马达、将来自电池的直流电转换成交流电以供其他车辆***使用的逆变器,包括转向马达和转向齿条(可以是电动的)的转向***,包括液压或电动致动器的制动***,包括液压和/或气动部件的悬架***,用于分配制动力以减轻牵引力损失并保持控制的稳定性控制***、HVAC***、照明设备(例如照明设备,诸如照亮车辆外部环境的前灯/尾灯),以及一个或多个其他***(例如冷却***、安全***、车载充电***、其他电部件,诸如DC/DC转换器、高压接头、高压电缆、充电***、充电端口等)。附加地,驱动模块214可以包括驱动模块控制器,该驱动模块控制器可以从传感器***接收和预处理数据并且控制各种车辆***的操作。在一些实例中,驱动模块控制器可以包括处理器和与处理器通信耦合的存储器。存储器可以存储一个或多个模块以执行驱动模块214的各种功能。此外,驱动模块214还包括通信连接件,该通信连接件使相应驱动模块能够与其他本地或远程计算设备通信连接。
如上所述,车辆202可以经由网络238向计算设备240发送传感器数据。在一些实例中,车辆202可以向计算设备240发送原始传感器数据。在其他示例中,车辆202可以向计算设备240发送处理后的传感器数据和/或传感器数据的表示(例如来自定位***220、感知***222、预测***224和/或计划***226的数据输出)。在一些实例中,车辆202可以以特定频率,在预定时间段过去之后,近实时地等向计算设备240发送传感器数据。
计算设备240可以从车辆202和/或一个或多个其他车辆和/或数据收集设备接收传感器数据(原始的或经处理的),并且可以执行驾驶规划功能,该驾驶规划功能包括归因于规划***226的一些或全部功能,该规划***包括请求生成部件230、命令控制器232和/或控制确定部件234。在至少一个实例中,计算设备240可以包括处理器242和与处理器242通信耦合的存储器244。例如,在所展示的实例中,计算设备240的存储器244存储规划部件246。在至少一个实例中,规划部件246可以对应于上文详述的规划***226中的一些或全部。
车辆202的处理器216和计算设备240的处理器242可以是能够执行指示以处理数据并执行如本文所述的操作的任何合适的处理器。作为示例而非限制,处理器216、242可以包括一个或多个中央处理单元(CPU)、图形处理单元(GPU)或处理电子数据以将电子数据转换为可存储在寄存器和/或存储器中的其他电子数据的任何其他设备或设备的一部分。在一些实例中,集成电路(例如ASIC等)、门阵列(例如FPGA等)和其他硬件设备也可以被视为处理器,只要它们被配置为实施编码的指示。
存储器218、244是非暂时性计算机可读介质的实例。存储器218、244可以存储操作***和一个或多个软件应用程序、指示、程序和/或数据以实现这里描述的方法和归属于各种***的功能。在各个实施方式中,存储器可以使用任何合适的存储器技术来实施,诸如静态随机存取存储器(SRAM)、同步动态RAM(SDRAM)、非易失性/闪存型存储器或能够存储信息的任何其他类型的存储器。在此描述的架构、***和单独的元件可以包括许多其他逻辑、程序和物理部件,其中在附图中示出的那些仅仅是与这里的讨论相关的实例。
虽然图2被展示为分布式***,在替代实例中,车辆202的部件可以与计算设备240相关联和/或计算设备240的部件可以与车辆202相关联。就是说,车辆202可以执行与计算设备24038相关联的一个或多个功能,反之亦然。此外,虽然各种***和部件被展示为离散***,但这些展示仅仅是示例,更多或更少的离散***可以执行本文所述的各种功能。
图3是示出涉及如本文所述的车辆控制的示例性方法的流程图。具体地,图3展示了方法300,其中使用环境中的对象来确定车辆沿行驶路径的加速度。为方便和易于理解,参考在图1和图2中示出的车辆102和/或202来描述在图3中展示的方法。然而,在图3展示的方法不限于使用车辆102、202来执行,并且可以使用本申请中描述的任何其他车辆以及除了这里描述的那些车辆之外的车辆来实施。此外,本文描述的车辆102、202不限于执行在图3中展示的方法。
方法300被展示为逻辑流程图中的块的集合,该集合表示可以在硬件、软件或其组合中实现的操作序列。在软件的上下文中,块表示存储在一个或多个计算机可读存储介质上的计算机可执行指示,该计算机可执行指示当由处理器执行时,执行所述操作。通常,计算机可执行指示包括执行特定功能或实现特定抽象数据类型的例程、程序、对象、部件、数据结构等。描述操作的顺序不旨在被解释为限制,并且可以以任何顺序和/或并行地组合任意数量的所描述的块来实现这些过程。在一些实施例中,可以完全省略过程的一个或多个块。此外,方法300可以全部或部分地与其他方法组合。
在302处,方法300可以包括接收相对于环境中的对象导航车辆的请求。例如,并且如上所述,车辆202可以包括或者与一个或多个计算设备204相关联,该一个或多个计算设备包括规划***226,并且规划***226可以包括请求生成部件230。规划***226可以从一个或多个传感器***206、定位***220、感知***222、预测***224、地图236和/或其他来源接收信息以确定环境中的一个或多个对象或条件,并且请求生成***230可以确定用于相对于对象/条件进行导航的一个或多个请求。在一些实例中,请求生成***230可以生成包括动作和用于执行动作的信息的请求。取决于动作,用于执行动作的信息可以包括速度信息、距离信息、时间信息和/或加速度信息中的一个或多个。如这里进一步描述的,可以接收多个请求,例如每个请求对应于不同的对象或条件。在至少一些实例中,请求类型可以根据关于车辆的策略(例如通过时间逻辑公式的评估、场景的评估等)来确定。
在304处,方法300可以包括基于该请求,确定来自多个控制器中的控制器。例如,并且如上所述,该请求可以指定不同的信息,例如速度信息、距离信息、时间信息和/或加速度信息,并且规划***226可以包括不同的命令控制器(诸如命令控制器232),用于确定加速度以执行控制请求。在至少一些实例中,各种请求控制类型可以与命令控制器相关联。作为非限制性示例,速度控制和距离类型的速度控制可以与第一命令控制器相关联,而停止和/或跟随请求类型可以与第二命令控制器相关联。在本文进一步描述的示例中,不同的命令控制器可以具有不同的控制器增益。例如,不同的增益可以作为在控制请求中提供的或可从控制请求区分的不同信息的函数被增益调度。
在306处,方法300可以包括接收与该请求相关联的附加信息和/或约束。例如,并且如本文所述,除了速度、距离和/或时间信息之外,一些请求可以包括用于确定用于符合该请求的控制加速度的附加约束或特征。作为非限制性示例,请求可以提高或降低所请求的动作相对于其他请求(包括用于独断行为的信息、包括用于蠕行行为的信息等)的优先级。附加地或备选地,请求可以包括约束,该约束包括但不限于与一个或多个参数相关联的最小值、最大值和/或范围。例如,作为相对于领先车辆保持的目标时间间隔的替代或附加,该请求可以包括可接受的时间间隔范围。此外,为了促进乘客的平稳乘坐,改变车辆速度的请求可以包括用于满足该请求的最小和/或最大加速度。
在308处,方法300可以包括由控制器并基于附加信息和/或约束来确定加速度命令。例如,加速度命令可以是可以控制车辆以符合接收到的请求的加速度(或加速度范围)。因此,例如,对于每个请求,308可以确定不同的加速度(或加速度范围)。在本文描述的实施方式中,加速度可以是由命令控制器确定的纵向加速度。
在310处,方法300可以包括基于加速度命令和与附加对象(或特征或条件,如本文所述)相关联的附加加速度命令来确定用于控制车辆的加速度。例如,如上所述,命令控制器可以确定关联的命令加速度或命令加速度范围以符合多个命令请求中的每一个。这样的确定可以根据方法300通过对每个附加对象、环境条件等执行302到308中的每一个来确定。在310处,可以考虑例如与每个请求相关联的每个加速度命令以确定用于控制车辆的加速度。例如,控制加速度可以被确定为每个加速度命令的函数。此外,如本文所述,可以迭代地(例如基于对特定时间帧或时间段生成的所有命令)确定控制加速度。例如,命令加速度可以是用于轨迹或行驶路径上特定点(或时间)的纵向加速度。在至少一些实例中,可以针对车辆的未来位置和/或时间序列中的每一个执行310处的确定,以便确定根据后退地平线技术的轨迹。在这样的实例中,可以根据对象的预测运动向前传播对象。
在312处,方法300可以包括根据加速度控制车辆。如上所述,车辆计算设备204可以包括一个或多个***控制器228,该一个或多个***控制器可以被配置为控制车辆202的转向、推进、制动、安全、发射器、通信和其他***。这些***控制器228可以与驱动模块214的相应***和/或车辆202的其他部件通信和/或进行控制。在至少一个示例中,***控制器228可以接收加速度作为轨迹的分量并且可以与驱动模块214的相应***和/或车辆202的其他部件通信和/或进行控制,从而使车辆202沿着轨迹进行导航。
现在将参考图1描述方法300的实例。具体地,在302处,车辆计算设备110,例如使用规划***,可以接收多个控制请求114以控制例如相对于环境100中的对象穿过环境100的车辆。控制请求可以由请求生成***112生成并且可以包括关于所请求的速度、距离和/或时间的信息。在304处,车辆计算设备112,例如使用规划***和/或基于控制请求114中的个体,可以例如从命令控制器116中确定命令控制器以计算加速度以符合控制请求114中的个体。例如,第一命令控制器可以具有第一控制器增益,该第一控制器增益可以作为车辆102到远处一点(例如至达到较低速度的点)的距离被增益调度。第二命令控制器可以具有第二控制器增益,该第二控制器增益可以作为到对象的距离或位置和/或到达对象或位置的时间中的一个或多个的函数被增益调度。例如,可以使用第一命令控制器处理减速到位置130处的速度的控制请求,而可以使用第二命令控制器处理跟随第一附加车辆104的第二控制请求。在306处,车辆计算设备110还可以接收与该请求114相关联的附加信息和/或约束。例如,附加信息可以包括如本文所述的特殊选项并且约束可以包括最大和/或最小时间间隔、加速度、速度等。
在308处,命令控制器116可以生成加速度命令118。每个加速度命令可以与接收到的控制请求114相关联。加速度命令118可以是纵向加速度和/或使车辆符合该请求的一系列纵向加速度。应当理解,加速度命令118可能彼此不一致。因此,在310处,控制确定***120可以例如基于加速度命令确定用于控制车辆102的加速度。在一些实例中,控制确定***120可以将控制加速度确定为每个加速度命令118的加权平均值。在312处,可以根据由控制确定***120确定的加速度来控制车辆102。
可以理解,当车辆移动穿过环境时,环境中的对象不断变化。因此,可以迭代地执行方法300。例如,环境中对象的状态,包括控制请求,可以近乎实时地(例如以从大约0.5秒到大约3秒的间隔)确定。此外,当对象相对于车辆改变位置、速度、姿态等时,可以包括新的对象或条件,并且可以排除先前包括在控制请求中的对象,例如当那些对象/条件适用或不再适用时。
本文描述的各种技术可以在计算机可执行指示或软件(诸如程序模块)的上下文中实现,这些指示或软件存储在计算机可读存储器中并由一个或多个计算机的处理器或其他诸如图中所示的设备执行。通常,程序模块包括例程、程序、对象、部件、数据结构等,并定义用于执行特定任务或实现特定抽象数据类型的操作逻辑。
可以使用其他架构来实现所描述的功能,并且旨在在本公开的范围内。此外,虽然上面为了讨论的目的定义了具体的职责分配,但是根据情况,各种功能和职责可能以不同的方式分配和划分。
类似地,可以以各种方式和使用不同的手段来存储和分发软件,并且上述特定的软件存储和执行配置可以以多种不同的方式变化。因此,实现上述技术的软件可以分布在各种类型的计算机可读介质上,不限于具体描述的存储器形式。
示例性条款
A:实例自动驾驶车辆包括:第一控制器,用于至少部分地基于第一输入信息和第一控制器增益来确定第一加速度;第二控制器,用于至少部分地基于第二输入信息和第二控制器增益来确定第二加速度;一个或多个处理器;以及存储处理器可执行指示的存储器,该处理器可执行指示当由一个或多个处理器执行时,使自动驾驶车辆执行以下动作,该动作包括:接收用于控制自动驾驶车辆的第一请求,第一请求包括第一速度信息和距离信息;使用第一控制器至少部分地基于第一请求确定第一加速度,接收用于控制自动驾驶车辆的第二请求,第二请求包括第二速度信息;使用第二控制器至少部分地基于第二命令确定第二加速度;至少部分地基于第一加速度和第二加速度,确定沿着一轨迹的一点的命令加速度,以用于控制车辆;并且至少部分地基于该轨迹控制车辆。
B:实例A的自动驾驶车辆,其中,第一请求包括跟随对象的请求并且距离信息包括在车辆和对象之间保持的时间间隔,并且其中,第一控制器增益至少部分地基于车辆与对象之间的距离、车辆与对象之间的期望距离或与车辆与对象的估计碰撞相关联的时间中的至少一个。
C:实例A或实例B的自动驾驶车辆,其中,第二请求包括控制自动驾驶车辆的目标速度和距实现目标速度的当前位置的距离,并且其中第二控制器增益至少部分基于该距离。
D:实例A至实例C中任一个的自动驾驶车辆,其中,以下中的至少一项成立:距离信息包括时间间隔范围,第一速度信息包括第一速度范围,或者第一请求还包括第一加速度的加速度范围。
E:实例A至实例D中任一个的自动驾驶车辆,其中,以下中的至少一项成立:第一请求包括第一附加信息或第二请求中包括第二附加信息,第一附加信息和第二附加信息包括在以下各项中的至少一项:为对象分配恒定速度的指示;将预测运动分配给对象的指示;使车辆从停止处缓慢向前移动的指示;增加第一加速度或第二加速度的指示;或者降低相应的第一请求或第二请求相对于第一请求或第二请求中的另一个或其他请求的优先级的指示。
F:一种实例方法包括:接收第一请求以相对于环境中的第一条件进行导航,第一请求包括第一信息,该第一信息包括第一速度信息、第一距离信息或第一时间信息中的至少一个;接收第二请求以相对于环境中的第二条件进行导航,第二请求包括第二信息,该第二信息包括第二速度信息、第二距离信息或第二时间信息中的至少一个;使用第一命令控制器根据第一请求确定用于控制车辆的第一命令;使用第二命令控制器根据第二请求确定用于控制车辆的第二命令;并且至少部分地基于第一命令和第二命令确定用于沿着一轨迹的一点的控制命令,以用于控制车辆。
G:实例F的方法,其中:第一条件包括靠近车辆的第一对象的环境中的一个或多个停车标志;第一请求为停车请求或跟随第一对象的请求,第一信息包括第一距离信息,第一距离信息包括从车辆当前位置到停止位置的第一距离或与第一对象保持的第二距离,并且第一控制器具有至少部分基于第一距离、第二距离、车辆与第一对象之间的第一期望距离、车辆与停止位置之间的第二期望距离、与第一距离相关联的第一时间或与第二距离相关联的第二时间中的一个或多个的第一控制器增益。
H:实例F或实例G的方法,其中:第一条件包括环境中的领先车辆,第一请求包括跟随领先车辆的请求,第一信息包括领先车辆的速度以及保持在领先车辆后方的距离中至少一个。
I:实例F到实例H中任一个的方法,其中,第一命令、第二命令和控制命令是沿着自动驾驶车辆的行驶方向的纵向加速度,并且其中,第一控制器包括第一增益并且第二控制器包括不同于第一增益的第二增益。
J:实例F至实例I中任一项的方法,其中,以下中的至少一项成立:第一信息或第二信息包括最小时间间隔或最大时间间隔中的一个,第一速度信息或第二速度信息包括最小速度或最大速度中的至少一个,或者第一请求或第二请求还包括最小加速度或最大加速度中的至少一个。
K:实例F至实例J中任一项的方法,其中:第二请求是在距当前位置一定距离处获得第二速度的请求;第二信息包括第二速度信息和第二距离信息,第二速度信息包括第二速度,第二距离信息包括距当前位置的距离;并且第二控制器具有至少部分基于距当前位置的距离的第二控制器增益。
L:实例F至实例K中任一个的方法,其中,第一请求中的至少一个包括第一附加信息或第二请求包括第二附加信息,第一命令进一步至少部分地基于第一附加信息和第二命令进一步至少部分地基于第二附加信息。
M:实例F到实例L中任一个的方法,其中,第一条件包括动态对象并且第一附加信息包括将预定速度或预定轨迹与第一对象相关联的指示。
N:实例F到实例M中任一个的方法,其中,第一附加信息包括使第一控制器确定增加的加速度的指示,该方法还包括:至少部分地基于接收到指示来改变与第一控制器相关联的增益。
O:实例F至实例N中任一个的方法,其中,第一附加信息包括降低第一请求相对于第二请求或附加请求的优先级的指示,该方法还包括:至少部分地基于指示将权重因数与第一命令相关联。
P:一种实例性非暂时性计算机可读介质存储一组指示,该组指示在被执行时使一个或多个处理器执行操作,该操作包括:接收第一请求以相对于车辆的环境中的第一条件进行导航,第一请求包括第一信息,该第一信息包括第一速度信息、第一距离信息或第一时间信息中的至少一个;接收第二请求以相对于环境中的第二条件进行导航,第二请求包括第二信息,该第二信息包括第二速度信息或第二距离信息中的至少一个;至少部分地基于第一命令控制器根据第一请求确定用于控制车辆的第一命令;至少部分地基于第二命令控制器根据第二请求确定用于控制车辆的第二命令;并且至少部分地基于第一加速度和第二加速度来确定用于控制车辆的控制命令。
Q:实例P的非暂时性计算机可读介质,其中:第一请求是停止车辆的请求或跟随与第一条件相关联的第一对象的请求,第一信息包括第一距离信息,第一距离信息包括从车辆的当前位置到车辆的停止位置的第一距离或与第一对象保持的第二距离,并且第一控制器具有第一控制器增益,第一控制器至少部分地基于第一距离、第二距离、车辆与第一对象之间的第一期望距离、车辆与停止位置之间的第二期望距离、与第一距离相关联的第一时间、与第二距离相关联的第二时间中的一个或多个。
R:实例P或实例Q的非暂时性计算机可读介质,其中:第二请求是在距当前位置的参考距离处获得第二速度的请求;第二信息包括第二速度信息和第二距离信息,第二速度信息包括第二速度,第二距离信息包括距当前位置的距离;并且第二控制器具有至少部分地基于距当前位置的参考距离的第二控制器增益。
S:实例P至实例R中任一个的非暂时性计算机可读介质,其中,第一请求中的至少一个包括第一附加信息或第二请求包括第二附加信息,第一附加信息和第二附加信息包括以下至少一个:向与第一条件相关联的第一对象或与第二条件相关联的第二对象分配恒定速度的指示;将预测运动分配给第一对象或第二对象的指示;缓慢前进的指示;增加或减少第一加速度或第二加速度的指示;或者降低相应的第一请求或第二请求相对于第一请求或第二请求中的另一个或其他请求的优先级的指示。
T:实例P至实例S中任一个的非暂时性计算机可读介质,其中:第一信息或第二信息中的至少一个包括最小时间间隔或最大时间间隔中的至少一个,第一速度信息或第二速度信息包括最小速度或最大速度中的至少一个,或者第一请求或第二请求还包括最小加速度或最大加速度中的至少一个;第一控制器确定第一最大命令加速度和第一最小加速度;并且第二控制器确定第二最大命令加速度和第二最小加速度。
结论
虽然已经描述了本文描述的技术的一个或多个示例,但是其各种改变、添加、排列和等价物被包括在本文描述的技术的范围内。
在示例的描述中,参考了形成其一部分的附图,这些附图通过说明的方式示出了要求保护的主题的具体示例。应当理解,可以使用其他示例并且可以进行改变或变更,诸如结构改变。这样的实例、改变或变更不一定偏离关于预期要求保护的主题的范围。虽然这里的步骤可以按特定顺序呈现,但在某些情况下,可以改变顺序,以便在不同时间或以不同顺序提供特定输入,而不会改变所描述的***和方法的功能。所公开的程序也可以以不同的顺序执行。此外,这里描述的各种计算不需要按照所公开的顺序执行,并且可以容易地实现使用替代计算顺序的其他示例。除了重新排序之外,在一些情况下,计算也可以分解为具有相同结果的子计算。
Claims (15)
1.一种自动驾驶车辆,包括:
第一控制器,用于至少部分地基于第一输入信息和第一控制器增益来确定第一加速度;
第二控制器,用于至少部分地基于第二输入信息和第二控制器增益来确定第二加速度;
一个或多个处理器;和
存储器,其存储处理器可执行指示,所述处理器可执行指示当由一个或多个处理器执行时,使自动驾驶车辆执行以下动作,所述动作包括:
接收用于控制自动驾驶车辆的第一请求,第一请求包括第一速度信息和距离信息;
使用第一控制器至少部分地基于第一请求确定第一加速度,
接收用于控制自动驾驶车辆的第二请求,第二请求包括第二速度信息;
使用第二控制器至少部分地基于第二命令确定第二加速度;
至少部分地基于第一加速度和第二加速度,确定沿着一轨迹的一点的命令加速度,以用于控制车辆;和
至少部分地基于该轨迹控制车辆。
2.根据权利要求1所述的自动驾驶车辆,其中,第一请求包括跟随对象的请求并且距离信息包括在车辆和对象之间保持的时间间隔,并且其中,第一控制器增益至少部分地基于车辆和对象之间的距离、车辆和对象之间的期望距离或与车辆和对象的估计碰撞相关联的时间中的至少一个。
3.根据权利要求2所述的自动驾驶车辆,其中,第二请求包括控制自动驾驶车辆的目标速度和距实现目标速度的当前位置的距离,并且其中,第二控制器增益至少部分地基于距离。
4.根据权利要求1至权利要求3中任一项所述的自动驾驶车辆,其中,以下中的至少一项成立:距离信息包括时间间隔范围,第一速度信息包括第一速度范围,或者第一请求还包括用于第一加速度的加速度范围。
5.根据权利要求1至权利要求4中任一项所述的自动驾驶车辆,其中,以下中的至少一项成立:第一请求包括第一附加信息或第二请求包括第二附加信息,
第一附加信息和第二附加信息包括以下各项中的至少一项:
为对象分配恒定速度的指示;
为对象分配预测运动的指示;
使车辆从停止处缓慢向前移动的指示;
增加第一加速度或第二加速度的指示;或者
降低相应的第一请求或第二请求相对于第一请求或第二请求中的另一个或其他请求的优先级的指示。
6.一种方法,包括:
接收第一请求以相对于环境中的第一条件进行导航,第一请求包括第一信息,所述第一信息包括第一速度信息、第一距离信息或第一时间信息中的至少一个;
接收第二请求以相对于环境中的第二条件进行导航,第二请求包括第二信息,所述第二信息包括第二速度信息、第二距离信息或第二时间信息中的至少一个;
使用第一命令控制器根据第一请求确定用于控制车辆的第一命令;
使用第二命令控制器根据第二请求确定用于控制车辆的第二命令;和
至少部分地基于第一命令和第二命令确定用于沿着一轨迹的一点的控制命令,以用于控制车辆。
7.根据权利要求6所述的方法,其中:
第一条件包括在靠近车辆的第一对象的环境中的一个或多个停车标志;
第一请求为停车请求或跟随第一对象的请求,
第一信息包括第一距离信息,第一距离信息包括从车辆的当前位置到停止位置的第一距离或与第一对象保持的第二距离,以及
第一控制器具有第一控制器增益,所述第一控制器增益至少部分地基于第一距离、第二距离、车辆和第一对象之间的第一期望距离、车辆和停止位置之间的第二期望距离、与第一距离相关联的第一时间或与第二距离相关联的第二时间中的一个或多个。
8.根据权利要求6或权利要求7所述的方法,其中:
第一条件包括环境中的领先车辆,
第一请求包括跟随领先车辆的请求,并且
第一信息包括领先车辆的速度或保持在领先车辆后方的距离中的至少一个。
9.根据权利要求6至权利要求8中任一项所述的方法,其中,第一命令、第二命令和控制命令是沿自动驾驶车辆的行驶方向的纵向加速度,并且
其中第一控制器包括第一增益并且第二控制器包括不同于第一增益的第二增益。
10.根据权利要求6至权利要求9中任一项所述的方法,其中,以下中的至少一项成立:
第一信息或第二信息包括最小时间间隔或最大时间间隔中的至少一个,
第一速度信息或第二速度信息包括最小速度或最大速度中的至少一个,或
第一请求或第二请求还包括最小加速度或最大加速度中的至少一个。
11.根据权利要求6至权利要求10中任一项所述的方法,其中:
第二请求是在距当前位置一定距离处获得第二速度的请求;
第二信息包括第二速度信息和第二距离信息,第二速度信息包括第二速度,并且第二距离信息包括距当前位置的距离;和
第二控制器具有第二控制器增益,所述第二控制器增益至少部分基于距当前位置的距离。
12.根据权利要求6至权利要求11中任一项所述的方法,其中,第一条件包括对象并且第一请求包括第一附加信息,所述第一附加信息包括将预定速度或预定轨迹与对象相关联的指示。
13.根据权利要求6至权利要求12中任一项所述的方法,其中,第一请求包括第一附加信息,所述第一附加信息包括使第一控制器确定增加的加速度的指示,所述方法还包括:
至少部分地基于接收到指示来改变与第一控制器相关联的增益。
14.根据权利要求6至权利要求13中任一项所述的方法,其中,第一请求包括第一附加信息,所述第一附加信息包括降低第一请求相对于第二请求或附加请求的优先级的指示,所述方法还包括:
至少部分地基于指示将权重因数与第一命令相关联。
15.一种存储指示的非暂时性计算机可读介质,所述指示可由一个或多个处理器执行以执行根据权利要求6至权利要求14中任一项所述的方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/251,788 US11126178B2 (en) | 2019-01-18 | 2019-01-18 | Vehicle control |
US16/251,788 | 2019-01-18 | ||
PCT/US2020/014008 WO2020150561A1 (en) | 2019-01-18 | 2020-01-17 | Vehicle control |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113316535A true CN113316535A (zh) | 2021-08-27 |
Family
ID=69630618
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080009505.8A Pending CN113316535A (zh) | 2019-01-18 | 2020-01-17 | 车辆控制 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11126178B2 (zh) |
EP (1) | EP3911548B1 (zh) |
JP (1) | JP2022517428A (zh) |
CN (1) | CN113316535A (zh) |
WO (1) | WO2020150561A1 (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10613548B2 (en) * | 2017-10-19 | 2020-04-07 | Zoox, Inc. | Architecture for secure vehicle control |
US20200298859A1 (en) * | 2019-03-21 | 2020-09-24 | The Regents Of The University Of Michigan | Safe Autonomous Overtaking with Intention Estimation |
US11097731B2 (en) * | 2019-09-05 | 2021-08-24 | Baidu Usa Llc | Vehicle overspeed avoidance based on map |
US20210094569A1 (en) * | 2019-09-27 | 2021-04-01 | Honda Motor Co., Ltd. | System and method for providing accurate trajectory following for automated vehicles in dynamic environments |
US11919761B2 (en) | 2020-03-18 | 2024-03-05 | Crown Equipment Corporation | Based on detected start of picking operation, resetting stored data related to monitored drive parameter |
JP7369077B2 (ja) * | 2020-03-31 | 2023-10-25 | 本田技研工業株式会社 | 車両制御装置、車両制御方法、及びプログラム |
DE102021113344B4 (de) * | 2021-05-21 | 2024-03-07 | Bayerische Motoren Werke Aktiengesellschaft | Fahrassistenzsystem |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4200694B4 (de) | 1992-01-14 | 2004-04-29 | Robert Bosch Gmbh | Verfahren zur Geschwindigkeits- und Abstandsregelung eines Fahrzeugs |
DE19654769A1 (de) | 1996-12-30 | 1998-07-02 | Teves Gmbh Alfred | Verfahren und Vorrichtung zur Fahrzeugsteuerung bzw. -regelung |
US8078338B2 (en) * | 2004-10-22 | 2011-12-13 | Irobot Corporation | System and method for behavior based control of an autonomous vehicle |
US8260498B2 (en) * | 2009-10-27 | 2012-09-04 | GM Global Technology Operations LLC | Function decomposition and control architecture for complex vehicle control system |
JP5672822B2 (ja) * | 2010-07-29 | 2015-02-18 | トヨタ自動車株式会社 | 車両制御システム |
US10060212B2 (en) | 2014-12-08 | 2018-08-28 | Baker Hughes, A Ge Company, Llc | Hydrostatic setting mechanism for a subterranean tool without rupture discs |
US10328935B2 (en) | 2016-06-08 | 2019-06-25 | GM Global Technology Operations LLC | Adaptive cruise control system and method of operating the same |
KR101827127B1 (ko) * | 2016-07-01 | 2018-03-22 | 현대자동차주식회사 | 선행차량 존재시 적응형 순항 제어 시스템 연비 향상 제어방법 |
RU2705480C1 (ru) * | 2016-08-08 | 2019-11-07 | Ниссан Мотор Ко., Лтд. | Способ управления и устройство управления транспортного средства с функцией автоматического вождения |
US20190113920A1 (en) * | 2017-10-18 | 2019-04-18 | Luminar Technologies, Inc. | Controlling an autonomous vehicle using model predictive control |
JP7056474B2 (ja) * | 2018-08-30 | 2022-04-19 | トヨタ自動車株式会社 | 制御装置、マネージャ、システム、制御方法及び車両 |
-
2019
- 2019-01-18 US US16/251,788 patent/US11126178B2/en active Active
-
2020
- 2020-01-17 JP JP2021541500A patent/JP2022517428A/ja active Pending
- 2020-01-17 CN CN202080009505.8A patent/CN113316535A/zh active Pending
- 2020-01-17 EP EP20706039.3A patent/EP3911548B1/en active Active
- 2020-01-17 WO PCT/US2020/014008 patent/WO2020150561A1/en unknown
Also Published As
Publication number | Publication date |
---|---|
US20200233414A1 (en) | 2020-07-23 |
EP3911548B1 (en) | 2024-04-03 |
WO2020150561A1 (en) | 2020-07-23 |
US11126178B2 (en) | 2021-09-21 |
JP2022517428A (ja) | 2022-03-08 |
EP3911548A1 (en) | 2021-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112204634B (zh) | 驱动包络确定 | |
US11755020B2 (en) | Responsive vehicle control | |
US11970168B2 (en) | Vehicle trajectory modification for following | |
US11126178B2 (en) | Vehicle control | |
CN112363492A (zh) | 用于操作自动驾驶车辆的计算机实施的方法以及数据处理*** | |
WO2020081536A1 (en) | Trajectory initialization | |
US11480962B1 (en) | Dynamic lane expansion | |
US11801864B1 (en) | Cost-based action determination | |
US20220371613A1 (en) | Vehicle trajectory determination | |
CN113060118A (zh) | 用于柔和降速的速度规划引导线 | |
CN114651286A (zh) | 避障动作 | |
CN113619597A (zh) | 自动驾驶车辆速度限制变更的规划*** | |
US20220073096A1 (en) | Vehicle control |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |