CN113508350A - 基于反馈的实时转向校准系统 - Google Patents
基于反馈的实时转向校准系统 Download PDFInfo
- Publication number
- CN113508350A CN113508350A CN202080003575.2A CN202080003575A CN113508350A CN 113508350 A CN113508350 A CN 113508350A CN 202080003575 A CN202080003575 A CN 202080003575A CN 113508350 A CN113508350 A CN 113508350A
- Authority
- CN
- China
- Prior art keywords
- adv
- steering
- time
- predetermined
- control error
- 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.)
- Granted
Links
- 230000033001 locomotion Effects 0.000 claims abstract description 50
- 230000004044 response Effects 0.000 claims abstract description 34
- 238000000034 method Methods 0.000 claims description 36
- 238000012545 processing Methods 0.000 claims description 17
- 230000015654 memory Effects 0.000 claims description 8
- 230000008447 perception Effects 0.000 description 20
- 230000008569 process Effects 0.000 description 14
- 238000012937 correction Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 238000004891 communication Methods 0.000 description 9
- 230000001133 acceleration Effects 0.000 description 6
- 238000007405 data analysis Methods 0.000 description 4
- 230000002085 persistent effect Effects 0.000 description 4
- 230000006399 behavior Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000009429 electrical wiring Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
Images
Classifications
-
- 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
- B60W10/00—Conjoint control of vehicle sub-units of different type or different function
- B60W10/20—Conjoint control of vehicle sub-units of different type or different function including control of steering systems
-
- 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/10—Path keeping
- B60W30/12—Lane keeping
-
- 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
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W50/06—Improving the dynamic response of the control system, e.g. improving the speed of regulation or avoiding hunting or overshoot
-
- 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
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W50/08—Interaction between the driver and the control system
- B60W50/10—Interpretation of driver requests or demands
-
- 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
- B60W60/001—Planning or execution of driving tasks
- B60W60/0015—Planning or execution of driving tasks specially adapted for safety
- B60W60/0018—Planning or execution of driving tasks specially adapted for safety by employing degraded modes, e.g. reducing speed, in response to suboptimal conditions
-
- 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
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W2050/0062—Adapting control system settings
- B60W2050/0075—Automatic parameter input, automatic initialising or calibrating means
- B60W2050/0083—Setting, resetting, calibration
-
- 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
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W2050/0062—Adapting control system settings
- B60W2050/0075—Automatic parameter input, automatic initialising or calibrating means
- B60W2050/0083—Setting, resetting, calibration
- B60W2050/0086—Recalibrating datum positions, e.g. by using check cycles
-
- 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
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W2050/0062—Adapting control system settings
- B60W2050/0075—Automatic parameter input, automatic initialising or calibrating means
- B60W2050/0083—Setting, resetting, calibration
- B60W2050/0088—Adaptive recalibration
-
- 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
- B60W2520/00—Input parameters relating to overall vehicle dynamics
- B60W2520/06—Direction of travel
-
- 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
- B60W2520/00—Input parameters relating to overall vehicle dynamics
- B60W2520/10—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
- B60W2520/00—Input parameters relating to overall vehicle dynamics
- B60W2520/16—Pitch
-
- 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
- B60W2552/00—Input parameters relating to infrastructure
- B60W2552/15—Road slope, i.e. the inclination of a road segment in the longitudinal direction
-
- 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
- B60W2552/00—Input parameters relating to infrastructure
- B60W2552/30—Road curve radius
-
- 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/40—Dynamic objects, e.g. animals, windblown objects
- B60W2554/404—Characteristics
- B60W2554/4049—Relationship among other objects, e.g. converging dynamic objects
-
- 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/20—Ambient conditions, e.g. wind or rain
-
- 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
- B60W2710/00—Output or target parameters relating to a particular sub-units
- B60W2710/20—Steering systems
Landscapes
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Transportation (AREA)
- Mechanical Engineering (AREA)
- Human Computer Interaction (AREA)
- Chemical & Material Sciences (AREA)
- Combustion & Propulsion (AREA)
- Steering Control In Accordance With Driving Conditions (AREA)
Abstract
确定ADV的转向系统的横向控制误差,包括针对预定的时间段迭代地执行以下操作。确定ADV是否正在当前移动方向的预设邻近范围内移动。接下来,确定ADV行驶的道路状况是否满足预定的道路状况。然后,测量ADV响应于先前的转向控制命令的第一转向反馈。此后,基于在预定的时间段内的第一转向反馈的至少一部分确定横向控制误差。另外,根据转向系统的横向控制误差生成转向命令。最后,施加转向命令以控制ADV补偿转向系统的横向控制误差。
Description
技术领域
本公开的实施例一般涉及操作自主车辆。更特别地,本公开的实施例涉及自主驾驶车辆(ADV)的转向校准系统。
背景技术
以自主模式(例如,无人驾驶)操作的车辆可以减轻乘坐者,尤其是驾驶员的一些驾驶相关责任。当在自主模式下操作时,车辆可以使用车载传感器导航到各种位置,从而允许车辆以最小的人机交互或者在没有任何乘客的一些情况下行驶。
运动规划和控制是自主驾驶中的关键操作。ADV的性能可以取决于运动控制操作。然而,常规的运动控制操作不提供ADV的转向系统的基于反馈的实时校准。但是ADV的转向系统可能不总是居中的,这可能导致ADV的转向系统的横向控制误差。如果转向系统的横向控制误差没有被补偿,则ADV的性能可能会降低。可能需要开发一种基于反馈的实时转向校准系统以改善ADV的性能。
发明内容
本公开的实施例提供了一种用于操作自主驾驶车辆(ADV)的方法、非暂时性机器可读介质和数据处理系统。
第一方面的实施例提供了一种用于操作自主驾驶车辆的方法。方法包括:确定ADV的转向系统的横向控制误差,根据转向系统的横向控制误差生成转向命令;以及施加转向命令以控制ADV补偿转向系统的横向控制误差。确定ADV的转向系统的横向控制误差包括针对预定的时间段迭代地执行以下操作,基于从安装在ADV上的多个传感器获得的传感器数据感知驾驶条件,确定ADV是否正在当前移动方向的预设邻近范围内移动,基于驾驶条件确定ADV行驶的道路的道路状况是否满足预定的道路状况,响应于先前的转向控制命令,测量ADV的第一转向反馈,以及响应于确定ADV正在当前移动方向的预设邻近范围内移动、以及确定道路状况在预定的时间段内满足预定的道路状况,基于在预定的时间段内的第一转向反馈的至少一部分,确定横向控制误差。
在实施例中,确定ADV是否正在当前移动方向的预设邻近范围内移动是基于ADV在第一时刻处的第一航向与ADV在第二时刻处的第二航向之间的航向差是否小于预定的阈值。
在实施例中,确定ADV是否正在当前移动方向的预设邻近范围内移动是基于ADV的轨迹的曲率是否小于预定的阈值曲率。
在实施例中,确定道路状况是否满足预定的道路状况是基于第一时刻处的第一滚转角与第二时刻处的第二滚转角之间的滚转角差、或基于第一时刻处的第一俯仰角与第二时刻处的第二俯仰角之间的俯仰角差中的至少一个是否小于预定的阈值角。
在实施例中,方法还包括确定第一转向反馈是否稳定。
在实施例中,确定第一转向反馈是否稳定是基于在第一时刻处的第一转向反馈和在第二时刻处的第二转向反馈是否小于预定的阈值,以及其中还响应于确定第一转向反馈稳定,确定横向控制误差。
在实施例中,方法还包括确定ADV的速度是否大于预定的阈值。
在实施例中,还响应于确定ADV的速度在预定的时间段内大于预定的阈值,确定横向控制误差。
第二方面的实施例提供了一种非暂时性机器可读介质。非暂时性机器可读介质具有存储在其中的指令,指令在由处理器执行时使得处理器执行操作,操作包括:确定ADV的转向系统的横向控制误差,包括针对预定的时间段迭代地执行以下操作,基于从安装在ADV上的多个传感器获得的传感器数据感知驾驶条件,确定ADV是否正在当前移动方向的预设邻近范围内移动,基于驾驶条件,确定ADV行驶的道路的道路状况是否满足预定的道路状况,响应于先前的转向控制命令,测量ADV的第一转向反馈,以及响应于确定ADV正在当前移动方向的预设邻近范围内移动、以及确定道路状况在预定的时间段上满足预定的道路状况,基于在预定的时间段内的第一转向反馈的至少一部分,确定横向控制误差;根据转向系统的横向控制误差生成转向命令;以及施加转向命令以控制ADV补偿转向系统的横向控制误差。
在实施例中,确定ADV是否正在当前移动方向的预设邻近范围内移动是基于ADV在第一时刻处的第一航向与ADV在第二时刻处的第二航向之间的航向差是否小于预定的阈值。
在实施例中,确定ADV是否正在当前移动方向的预设邻近范围内移动是基于ADV的轨迹的曲率是否小于预定的阈值曲率。
在实施例中,确定道路状况是否满足预定的道路状况是基于第一时刻处的第一滚转角与第二时刻处的第二滚转角之间的滚转角差、或基于第一时刻处的第一俯仰角与第二时刻处的第二俯仰角之间的俯仰角差中的至少一个是否小于预定的阈值角。
在实施例中,以下操作还包括确定第一转向反馈是否稳定。
在实施例中,确定第一转向反馈是否稳定是基于在第一时刻处的第一转向反馈和在第二时刻处的第二转向反馈是否小于预定的阈值,以及其中还响应于确定第一转向反馈是稳定的,确定横向控制误差。
在实施例中,以下操作还包括确定ADV的速度是否大于预定的阈值。
在实施例中,还响应于确定ADV的速度在预定的时间段内大于预定的阈值,确定横向控制误差。
第三方面的实施例提供了一种数据处理系统,包括:处理器;以及存储器,存储器耦接到处理器并存储指令,指令在由处理器执行时使得处理器执行操作,操作包括确定ADV的转向系统的横向控制误差,包括针对预定的时间段迭代地执行以下操作,基于从安装在ADV上的多个传感器获得的传感器数据感知驾驶条件,确定ADV是否正在当前移动方向的预设邻近范围内移动,基于驾驶条件,确定ADV行驶的道路的道路状况是否满足预定的道路状况,响应于先前的转向控制命令,测量ADV的第一转向反馈,以及响应于确定ADV正在当前移动方向的预设邻近范围内移动、以及确定道路状况在预定的时间段内满足预定的道路状况,基于在预定的时间段内的第一转向反馈的至少一部分,确定横向控制误差;根据转向系统的横向控制误差生成转向命令;以及施加转向命令以控制ADV补偿转向系统的横向控制误差。
在实施例中,确定ADV是否在当前移动方向的预设邻近范围内移动是基于ADV在第一时刻处的第一航向与ADV在第二时刻处的第二航向之间的航向差是否小于预定的阈值。
在实施例中,确定ADV是否正在当前移动方向的预设邻近范围内移动是基于ADV的轨迹的曲率是否小于预定的阈值曲率。
在实施例中,确定道路状况是否满足预定的道路状况是基于第一时刻处的第一滚转角与第二时刻处的第二滚转角之间的滚转角差、或基于第一时刻处的第一俯仰角与第二时刻处的第二俯仰角之间的俯仰角差中的至少一个是否小于预定的阈值角。
附图说明
本公开的实施例通过示例的方式示出并且不限于附图中的图,在附图中相似的附图标记表示相似的元件。
图1是示出根据一个实施例的联网系统的框图。
图2是示出根据一个实施例的自主车辆的示例的框图。
图3A和图3B是示出根据一个实施例的与自主车辆一起使用的感知和规划系统的示例的框图。
图4是示出根据一个实施例的误差校正模块和转向命令模块的示例的框图。
图5是示出根据一个实施例的提供基于反馈的实时转向校准系统的方法的示例的处理流程图。
图6示出根据一个实施例的操作的示例。
图7A-图7C示出根据一个实施例的操作的示例。
图8是示出根据一个实施例的用于提供基于反馈的实时转向校准的过程的示例的流程图。
具体实施方式
将参考以下讨论的细节描述本公开的各个实施例和方面,并且附图将示出各个实施例。以下描述和附图是本公开的说明并且不应被解释为限制本公开。描述了许多具体细节以提供对本公开的各种实施例的全面理解。然而,在某些情况下,为了提供对本公开的实施例的简要讨论,没有描述公知或常规的细节。
说明书中对“一个实施例”或“实施例”的引用意味着结合该实施例描述的特别特征、结构或特性可以包括在本公开的至少一个实施例中。在说明书中的各个地方出现的短语“在一个实施例中”不一定都指同一实施例。
根据一些实施例,针对预定的时间段,ADV被配置为确定以下条件:(1)ADV当前是否沿直线驾驶;(2)道路状况是否平坦;(3)响应于先前的转向控制命令的转向反馈是否稳定;以及(4)ADV是否具有特定速度。在一个实施例中,如果针对预定的时间段上述四个条件均被满足,则基于在预定的时间段内的转向反馈确定横向控制误差。在一个实施例中,如果针对预定的时间段上述四个条件中的一个或多个被满足,则基于在预定的时间段内的转向反馈确定横向控制误差。接下来,生成补偿横向控制误差的新的转向命令。最后,发送新的转向命令控制ADV补偿转向系统的横向控制误差以直接向前驾驶。
根据一个实施例,确定ADV的转向系统的横向控制误差,这包括针对预定的时间段迭代地执行以下操作。基于从安装在ADV上的多个传感器获得的传感器数据感知驾驶条件。确定ADV是否正在当前移动方向的预设邻近范围内移动。接下来,基于驾驶条件,确定ADV行驶的道路的道路状况是否满足预定的道路状况。然后,响应于先前的转向控制命令测量ADV的第一转向反馈。然后,响应于确定ADV正在当前移动方向的预设邻近范围内移动、以及确定道路状况在预定的时间段内满足预定的道路状况,基于在预定的时间段内的第一转向反馈的至少一部分,确定横向控制误差。另外,根据转向系统的横向控制误差生成转向命令。最后,施加转向命令以控制ADV补偿转向系统的横向控制误差。
在一个实施例中,确定ADV是否正在当前移动方向的预设邻近范围内移动是基于ADV在第一时刻处的第一航向与ADV在第二时刻处的第二航向之间的航向差是否小于预定的阈值。在一个实施例中,确定ADV是否正在当前移动方向的预设邻近范围内移动是基于ADV的轨迹的曲率是否小于预定的阈值曲率。
在一个实施例中,确定道路状况是否满足预定的道路状况是基于第一时刻处的第一滚转角与第二时刻处的第二滚转角之间的滚转角差、或基于第一时刻处的第一俯仰角与第二时刻处的第二俯仰角之间的俯仰角差中的至少一个是否小于预定的阈值角。
在一个实施例中,确定第一转向反馈是否稳定。在一个实施例中,确定第一转向反馈是否稳定是基于在第一时刻处的第一转向反馈和在第二时刻处的第二转向反馈是否小于预定的阈值,以及其中还响应于确定第一转向反馈是稳定的,确定横向控制误差。
在一个实施例中,确定ADV的速度是否大于预定的阈值。还响应于确定ADV的速度在预定的时间段内大于预定的阈值,确定横向控制误差。在一个实施例中,基于扣除转向系统的横向控制误差生成转向命令。
图1是示出根据本公开的一个实施例的自主车辆网络配置的框图。参考图1,网络配置100包括自主驾驶车辆(ADV)101,其可以通过网络102通信地耦接到一个或多个服务器103-104。尽管示出一个自主车辆,但是多个自主车辆可以通过网络102彼此耦接和/或耦接到服务器103-104。网络102可以是任何类型的有线或无线网络,诸如局域网(LAN)、诸如因特网的广域网(WAN)、蜂窝网络、卫星网络、或其组合。(一个或多个)服务器103-104可以是任何类型的服务器或服务器集群,诸如Web或云服务器、应用服务器、后端服务器或其组合。服务器103-104可以是数据分析服务器、内容服务器、交通信息服务器、地图和感兴趣点(MPOI)服务器或位置服务器等。
自主车辆指的是能够被配置为处于自主模式的车辆,在自主模式中,车辆在很少或没有驾驶员输入的情况下导航通过环境。这种自主车辆可以包括具有一个或多个传感器的传感器系统,一个或多个传感器被配置为检测关于车辆在其中操作的环境的信息。车辆及其相关的(一个或多个)控制器使用检测的信息以导航通过环境。自主车辆101可以以手动模式、全自主模式或部分自主模式操作。
在一个实施例中,自主车辆101包括但不限于感知和规划系统110、车辆控制系统111、无线通信系统112、用户接口系统113和传感器系统115。自主车辆101还可以包括在普通车辆中包括的某些常见组件,诸如引擎、车轮、转向盘、变速器等,这些组件可以被车辆控制系统111和/或感知和规划系统110使用各种通信信号和/或命令(例如加速信号或命令、减速信号或命令、转向信号或命令、制动信号或命令等)控制。
组件110-115可以经由互连、总线、网络或其组合彼此通信地耦接。例如,组件110-115可以经由控制器局域网(CAN)总线彼此通信地耦接。CAN总线是一种车辆总线标准,其被设计为允许微控制器和设备在没有主机的应用中彼此通信。它是基于消息的协议,最初被设计用于汽车内的多路复用电气布线,但是也用于许多其他环境中。
现在参考图2,在一个实施例中,传感器系统115包括但不限于一个或多个相机211、全球定位系统(GPS)单元212、惯性测量单元(IMU)213、雷达单元214以及光检测和范围(LIDAR)单元215。GPS系统212可以包括可操作以提供关于自主车辆的位置的信息的收发器。IMU单元213可以基于惯性加速度感测自主车辆的位置和方位变化。雷达单元214可以表示利用无线电信号感测自主车辆的局部环境内的对象的系统。在一些实施例中,除了感测对象之外,雷达单元214还可以额外地感测对象的速度和/或航向。LIDAR单元215可以使用激光感测自主车辆所处的环境中的对象。LIDAR单元215可以包括一个或多个激光源、激光扫描器以及一个或多个检测器,以及其他系统组件。相机211可以包括一个或多个设备以捕获自主车辆周围的环境的图像。相机211可以是静态相机和/或摄像机。相机可以是机械可移动的,例如通过将相机安装在旋转和/或倾斜的平台上。
传感器系统115还可以包括其他传感器,诸如声纳传感器、红外传感器、转向传感器、油门传感器、制动传感器和音频传感器(例如麦克风)。音频传感器可以被配置为捕获来自自主车辆周围的环境的声音。转向传感器可以被配置为感测车辆的转向盘、车轮或其组合的转向角。油门传感器和制动传感器分别感测车辆的油门位置和制动位置。在一些情况下,油门传感器和制动传感器可以集成为集成的油门/制动传感器。
在一个实施例中,车辆控制系统111包括但不限于转向单元201、油门单元202(也称为加速单元)和制动单元203。转向单元201用于调节车辆的方向或航向。油门单元202用于控制马达或引擎的速度,马达或引擎的速度转而控制车辆的速度和加速度。制动单元203通过提供摩擦以使车辆的车轮或轮胎变慢来使车辆减速。注意,图2所示的组件可以以硬件、软件或其组合实现。
返回参考图1,无线通信系统112允许在自主车辆101和外部系统,诸如设备、传感器、其他车辆等之间的通信。例如,无线通信系统112可以直接或经由通信网络与一个或多个设备(诸如在网络102上的服务器103-104)无线通信。无线通信系统112可以使用任何蜂窝通信网络或无线局域网(WLAN),例如使用WiFi与另一组件或系统通信。无线通信系统112可以例如使用红外链路、蓝牙等直接与设备(例如,乘客的移动设备、显示设备、车辆101内的扬声器)通信。用户接口系统113可以是在车辆101内实现的外围设备的一部分,包括例如键盘、触摸屏显示设备、麦克风和扬声器等。
自主车辆101的功能中的一些或所有可以由感知和规划系统110控制或管理,尤其是当以自主驾驶模式操作时。感知和规划系统110包括必要的硬件(例如,(一个或多个)处理器、存储器、存储设备)和软件(例如,操作系统、规划和路线程序),以从传感器系统115、控制系统111、无线通信系统112和/或用户接口系统113接收信息、处理接收的信息、规划从起点到目的地点的路线或路径、然后基于规划和控制信息驾驶车辆101。可替换地,感知和规划系统110可以与车辆控制系统111集成。
例如,作为乘客的用户可以例如经由用户接口指定行程的起始位置和目的地。感知和规划系统110获得与行程有关的数据。例如,感知和规划系统110可以从MPOI服务器获得位置和路线信息,MPOI服务器可以是服务器103-104的一部分。位置服务器提供位置服务,以及MPOI服务器提供地图服务和某些位置的POI。可替换地,这种位置和MPOI信息可以本地缓存在感知和规划系统110的永久存储设备中。
当自主车辆101沿路线移动时,感知和规划系统110还可以从交通信息系统或服务器(TIS)获得实时交通信息。注意,服务器103-104可以由第三方实体操作。可替换地,服务器103-104的功能可以与感知和规划系统110集成。基于实时交通信息、MPOI信息和位置信息,以及由传感器系统115检测或感测的实时局部环境数据(例如,障碍物、对象、附近车辆),感知和规划系统110可以规划最佳路线,并且例如经由控制系统111根据规划的路线驾驶车辆101,以安全且高效地到达指定目的地。
服务器103可以是用以执行用于各种客户端的数据分析服务的数据分析系统。在一个实施例中,数据分析系统103包括数据收集器121和机器学习引擎122。数据收集器121从各种车辆(自主车辆或者是由人类驾驶员驾驶的常规车辆)收集驾驶统计123。驾驶统计123包括指示发出的驾驶命令(例如,油门、制动、转向命令)和由车辆的传感器在不同时间点捕获的车辆的响应(例如,速度、加速度、减速度、方向)的信息。驾驶统计123还可以包括描述不同时间点的驾驶环境的信息,诸如路线(包括起始位置和目的地位置)、MPOI、道路状况、天气状况等。
基于驾驶统计123,机器学习引擎122出于各种目的而生成或训练一组规则、算法和/或预测模型124。在一个实施例中,算法124可以包括确定ADV的转向系统的横向控制误差的算法或模型,该算法或模型包括迭代地执行针对预定的时间段的以下操作的算法或模型,其中算法或模型包括基于从安装在ADV上的多个传感器获得的传感器数据感知驾驶条件的算法或模型、确定ADV是否正在当前移动方向的预设邻近范围内移动的算法或模型、确定ADV行驶的道路的道路状况是否满足预定的道路状况的算法或模型、响应于先前的转向控制命令测量ADV的第一转向反馈的算法或模型、以及基于在预定的时间段内的第一转向反馈的至少一部分确定横向控制误差的算法或模型。算法124还可以包括根据转向系统的横向控制误差生成转向命令的算法或模型,以及施加转向命令以控制ADV补偿转向系统的横向控制误差的算法或模型。然后,算法124可以被上传到ADV上以在自主驾驶期间实时地使用。
图3A和图3B是示出根据一个实施例的与自主车辆一起使用的感知和规划系统的示例的框图。系统300可以被实现为图1的自主车辆101的一部分,包括但不限于感知和规划系统110、控制系统111和传感器系统115。参考图3A-图3B,感知和规划系统110包括但不限于定位模块301、感知模块302、预测模块303、决策模块304、规划模块305、控制模块306、路由模块307、误差校正模块308和转向命令模块309。
模块301-309中的一些或全部可以以软件、硬件或其组合实现。例如,这些模块可被安装在永久存储设备352中,加载到存储器351中,并由一个或多个处理器(未示出)执行。注意,这些模块中的一些或全部可以通信地耦接到图2的车辆控制系统111的一些或全部模块或与图2的车辆控制系统111的一些或全部模块集成。模块301-309中的一些可以被集成在一起作为集成模块。
定位模块301确定自主车辆300的当前位置(例如,利用GPS单元212)并管理与用户的行程或路线有关的任何数据。定位模块301(也称为地图和路线模块)管理与用户的行程或路线有关的任何数据。用户可以例如经由用户接口登录并指定行程的起始位置和目的地。定位模块301与自主车辆300的其他组件(诸如地图和路线信息311)通信,以获得与行程有关的数据。例如,定位模块301可以从位置服务器和地图与POI(MPOI)服务器获得位置和路线信息。位置服务器提供位置服务,以及MPOI服务器提供地图服务和某些位置的POI,它们可以作为地图和路线信息311的一部分被缓存。当自主车辆300沿路线移动时,定位模块301还可以从交通信息系统或服务器获得实时交通信息。
基于由传感器系统115提供的传感器数据和由定位模块301获得的定位信息,由感知模块302确定对周围环境的感知。感知信息可以表示普通驾驶员将感知到的驾驶员正在驾驶的车辆周围的情况。感知可以包括车道配置、交通灯信号、例如以对象形式的另一车辆、行人、建筑物、人行横道或其他交通相关标志(例如,停止标志、让步标志)等的相对位置。车道配置包括描述一个或多个车道的信息,诸如,例如车道的形状(例如,直的或弯曲的)、车道的宽度、道路中的车道数量、单向或双向车道、合并或分离车道、驶离车道等。
感知模块302可以包括计算机视觉系统或计算机视觉系统的功能,以处理和分析由一个或多个相机捕获的图像,以识别自主车辆的环境中的对象和/或特征。对象可以包括交通信号、车行道边界、其他车辆、行人和/或障碍物等。计算机视觉系统可以使用对象识别算法、视频跟踪和其他计算机视觉技术。在一些实施例中,计算机视觉系统可以映射环境、跟踪对象、并估计对象的速度等。感知模块302还可以基于由诸如雷达和/或LIDAR的其他传感器提供的其他传感器数据检测对象。
对于对象中的每个,预测模块303预测对象将在环境下表现什么的行为。根据一组地图/路线信息311和交通规则312,基于在该时间点的驾驶环境感知的感知数据,执行预测。例如,如果对象是在相反方向上的车辆并且当前驾驶环境包括交叉路口,则预测模块303将预测车辆将可能直线向前移动还是转弯。如果感知数据指示交叉路口没有交通灯,则预测模块303可以预测车辆在进入交叉路口之前可能必须完全停止。如果感知数据指示车辆当前处于仅左转弯车道或仅右转弯车道,则预测模块303可以预测车辆将更可能分别进行左转弯或右转弯。
对于对象中的每个,决策模块304作出关于如何处理该对象的决策。例如,对于特定对象(例如,在交叉路线中的另一车辆)以及描述该对象的元数据(例如,速度、方向、转向角),决策模块304决定如何遇到该对象(例如,超车、让行、停止、通过)。决策模块304可根据一组规则,诸如交通规则或驾驶规则312作出这些决策,这组规则可存储于永久存储设备352中。
路由模块307被配置为提供从起点到目的地点的一条或多条路线或路径。对于例如从用户接收到的从起始位置到目的地位置的给定行程,路由模块307获得路线和地图信息311并且确定从起始位置用以到达目的地位置的所有可能的路线或路径。路由模块307可以为其确定的从起始位置用以到达目的地位置的每条路线生成地形图形式的参考线。参考线是指没有来自诸如其他车辆、障碍物或交通状况的其他者的任何干扰的理想路线或路径。也就是说,如果在道路上没有其他车辆、行人或障碍物,则ADV应该精确地或紧密地跟随参考线。然后,地形图被提供给决策模块304和/或规划模块305。决策模块304和/或规划模块305检查所有可能的路线,以根据由其他模块提供的其他数据(诸如来自定位模块301的交通状况、由感知模块302感知的驾驶环境和由预测模块303预测的交通状况)选择和修改最佳路线中的一个。取决于在时间点的特定驾驶环境,用于控制ADV的实际路径或路线可以接近或不同于由路由模块307提供的参考线。
基于针对感知的对象中的每个的决策,规划模块305使用由路由模块307提供的参考线作为基础规划自主车辆的路径或路线以及驾驶参数(例如,距离、速度和/或转角)。也就是说,对于给定对象,决策模块304决策对该对象做什么,而规划模块305确定如何做。例如,对于给定对象,决策模块304可以决策经过对象,而规划模块305可以确定是在对象的左侧还是右侧经过。规划和控制数据由规划模块305生成,包括描述车辆300在下一个移动周期(例如,下一个路线/路径段)中将如何移动的信息。例如,规划和控制数据可以指示车辆300以每小时30英里(mph)的速度移动10米,然后以25mph的速度改变到右车行道。
基于规划和控制数据,控制模块306通过根据由规划和控制数据限定的路线或路径向车辆控制系统111发送适当的命令或信号,控制和驾驶自主车辆。规划和控制数据包括足够的信息以沿路径或路线在不同时间点使用适当的车辆设置或驾驶参数(例如,油门、制动、转向命令)将车辆从路线或路径的第一点驾驶到第二点。
在一个实施例中,在多个规划周期中执行规划阶段,规划周期也称为驾驶周期,诸如,例如在100毫秒(ms)的每个时间间隔中。对于每个规划周期或驾驶周期,将基于规划和控制数据发出一个或多个控制命令。也就是说,对于每100ms,规划模块305规划下一个路线段或路径段,例如包括目标位置和ADV到达目标位置所需的时间。可替换地,规划模块305还可以指定具体速度、方向和/或转向角等。在一个实施例中,规划模块305为下一个预定时间段(诸如5秒)规划路线段或路径段。对于每个规划周期,规划模块305基于在先前周期中规划的目标位置规划用于当前周期(例如,下一个5秒)的目标位置。然后控制模块306基于当前周期的规划和控制数据生成一个或多个控制命令(例如,油门控制命令、制动控制命令、转向控制命令)。
注意,决策模块304和规划模块305可以集成为集成模块。决策模块304/规划模块305可以包括导航系统或导航系统的功能,以确定用于自主车辆的驾驶路径。例如,导航系统可以确定一系列速度和方向航向,以影响自主车辆沿基本上避开感知的障碍物的路径的移动,同时大体上使自主车辆沿通向最终目的地的基于车行道的路径前进。目的地可以根据经由用户接口系统113的用户输入而被设置。当自主车辆在操作时,导航系统可以动态地更新驾驶路径。导航系统可以合并来自GPS系统的数据和一个或多个地图,以确定用于自主车辆的驾驶路径。
尽管未示出,但是感知和规划系统110还包括数据记录器或数据收集器,数据记录器或数据收集器被配置为收集由组件301-309和传感器在一时间段内处理的数据,数据可以被存储为数据日志313的一部分。例如,数据日志313包括在每个驾驶/规划周期中规划或做出的任何预测、决策和路径。数据日志313还可以包括在每个驾驶周期期间在不同的时间点处发出的控制命令和捕获的车辆的响应或状态(例如,速度、加速度、航向、位置等)。数据日志313还可以包括在一时间段内感知的障碍物或移动对象及其行为(例如,在过去周期期间捕获的先前位置、速度、航向等)。数据日志313可以用于随后规划和控制车辆,或者可替换地,数据日志313可以被离线分析用于改进驾驶算法或预测模型。感知和规划系统110还包括存储控制误差校正算法/模型的误差校正算法/模型314。
根据一个实施例,误差校正模块308被配置为确定ADV的转向系统的横向控制误差。误差校正模块308与误差校正算法/模型314一起工作以校正ADV的转向系统的横向控制误差。转向命令模块309被配置为根据转向系统的横向控制误差生成转向命令,以及施加转向命令控制ADV补偿转向系统的横向控制误差。
图4是示出根据一个实施例的误差校正模块308和转向命令模块309的示例的框图400。误差校正模块308包括但不限于移动模块401、道路状况模块402、转向反馈模块403、速度模块404和确定模块405,它们使用误差校正算法/模型314一起工作以确定ADV的转向系统的横向控制误差。注意,模块401-405可以集成到更少数量的模块或单个模块中。转向命令模块309包括但不限于转向命令生成器406以及转向命令施加器,转向命令生成器406根据转向系统的横向控制误差生成转向命令,转向命令施加器施加转向命令以控制ADV补偿转向系统的横向控制误差。
根据一个实施例,ADV的转向系统的横向控制误差由误差校正模块308确定。误差校正模块308可以针对预定的时间段迭代地执行以下操作。ADV是否正在当前移动方向的预设邻近范围内移动由移动模块401确定。ADV行驶的道路的道路状况是否满足预定的道路状况由道路状况模块402确定。ADV响应于先前的转向控制命令的第一转向反馈由转向反馈模块403测量。横向控制误差由确定模块405基于在预定的时间段内的第一转向反馈的至少一部分确定。另外,由转向命令生成器406生成根据转向系统的横向控制误差的转向命令。最后,由转向命令施加器407施加转向命令以控制ADV补偿转向系统的横向控制误差。
运动控制是ADV的重要组件。ADV的性能可以取决于运动控制操作。然而,常规的运动控制操作不提供ADV的转向系统的基于反馈的实时校准。但是ADV的转向系统可能不总是居中的,这可能导致ADV的转向系统的横向控制误差。如果转向系统的横向控制误差没有得到补偿,ADV的性能可能被降级。可能需要开发一种基于反馈的实时转向校准系统以改善ADV的性能。
图5是示出根据一个实施例的提供ADV的基于反馈的实时转向校准系统的方法的示例的处理流程图500。本发明公开了一种基于反馈的实时转向校准方法和系统,以补偿ADV的转向系统的横向控制误差。在此方法中,基于预定的时间段内的转向反馈确定横向控制误差。生成补偿横向控制误差的转向命令,并将其施加以控制ADV补偿转向系统的横向控制误差。通过此方法,ADV可以补偿转向系统的横向控制误差并沿直线向前驱动,从而提高ADV的性能。
在操作501处,ADV被配置为确定转向系统的横向控制误差。在一个实施例中,ADV可以被配置为针对预定的时间段迭代地执行特定操作,以便确定转向系统的横向控制误差。例如,ADV可以被配置为确定以下条件:(1)ADV当前是否正在沿直线驾驶;(2)道路状况是否平坦;(3)响应于先前的转向控制命令的转向反馈是否稳定;以及(4)ADV是否具有特定速度。
在操作502处,ADV可以被配置为确定ADV当前是否正在沿直线驾驶。在一个实施例中,ADV可以被配置为确定ADV是否正在当前移动方向的预设邻近范围内移动。在一个实施例中,ADV当前是正在沿直线驾驶还是正在当前移动方向的预设邻近范围内移动可以由移动模块401基于来自定位模块301的信息执行。
图6示出确定ADV当前是否正在沿直线驾驶的操作502的示例。如图6所示,ADV601在第一时刻处以第一航向602驾驶,以及在第二时刻处以第二航向602′驾驶。ADV 601具有轨迹605。然而,ADV不可能沿绝对直线驾驶。
参考图5和图6,在一个实施例中,直线可以被确定为在第一时刻处的第一航向602和在第二时刻处的第二航向602’之间的航向差小于预定的阈值。例如,预定的阈值可以是1度。又例如,预定的阈值可以是1度、2度、5度、10度或其间的任一值。
在一个实施例中,可以基于ADV是否正在以小于预定的阈值的轨迹605的曲率移动确定直线。例如,预定的阈值可以是0.01(1/m)。又例如,预定的阈值可以是0.01(1/m)、0.02(1/m)、0.05(1/m)、1(1/m)或其间的任一值。
在一个实施例中,ADV 601当前是否正在沿直线驾驶是基于ADV 601是否正在当前移动方向602的预设邻近范围内移动。ADV 601是否正在当前移动方向602的预设邻近范围内移动是基于ADV 601在第一时间处的第一航向602和ADV 601在第二时间处的第二航向602′之间的航向差值是否小于预定的阈值。在一个实施例中,ADV601是否正在当前移动方向602的预设邻近范围内移动是基于ADV的轨迹605的曲率是否小于预定的阈值曲率。
在操作503处,ADV可以被配置为确定道路状况是否平坦。道路状况模块402可以确定道路状况是否平坦。图7A-7C示出确定ADV 701正在驾驶的道路状况是否平坦的操作503的示例。如图7A所示,ADV 701具有两个轴,即侧对侧轴702和前后轴703。围绕侧对侧轴702的旋转被称为俯仰。围绕前后轴703的旋转被称为滚转。当ADV 701正在沿移动方向上升的道路705上行驶时,ADV 701以俯仰角706围绕侧对侧轴702旋转,如图7B所示。当ADV 701正在垂直于移动方向上升的道路707上驾驶时,ADV 701以滚转角708围绕前后轴703旋转,如图7C所示。
参考图5和图7,在一个实施例中,ADV(例如,701)被配置为基于在第一时刻处的第一俯仰角和在第二时刻处的第二俯仰角之间的俯仰角差是否小于预定的阈值俯仰角,确定道路(例如,705)是否平坦。例如,预定的阈值俯仰角可以是1度。又例如,预定的阈值俯仰角可为1度、2度、5度、10度或其间的任一值。在一个实施例中,ADV(例如,701)被配置为基于在第一时刻处的第一滚转角与在第二时刻处的第二滚转角之间的滚转角差是否小于预定的阈值滚转角,确定道路(例如,707)是否平坦。例如,预定的阈值滚转角可以是1度。对于另一个示例,预定的阈值滚转角可以是1度、2度、5度、10度或其间的任一值。
返回参考图5,在操作504处,ADV可以被配置为确定转向反馈是否稳定。转向反馈模块403可以被配置为响应于先前的转向控制命令,在第一时刻处测量ADV的第一转向反馈,以及在第二时刻处测量第二转向反馈。在一个实施例中,基于在第一时刻处的第一转向反馈与在第二时刻处的第二转向反馈之间的差是否小于预定的阈值,确定第一转向反馈是否稳定。例如,预定的阈值可以是0.5度。又例如,预定的阈值可以是0.5度、1度、2度、3度、4度、5度或其间的任一值。在一个实施例中,如果在第一时刻处的第一转向反馈与在第二时刻处的第二转向反馈之间的差小于预定的阈值,则可以确定第一转向反馈是稳定的。
在操作505处,ADV可以被配置为确定ADV是否具有大于预定的阈值速度的速度。例如,预定的阈值速度可以是1.0m/s。因为停止的车辆可以满足操作502、503和504中的条件。
在操作506处,ADV可以被配置为确定转向系统的横向控制误差。在一个实施例中,如果针对连续的预定的时间段,满足操作502、503、504和505中的上述四个条件,则在操作504处测量的第一转向反馈可以被确定为横向控制误差。例如,预定的时间段可以是10秒。如果操作502、503、504和505中的条件中的一个未被满足,则过程可以重新开始。因为ADV正在利用第一转向反馈以直线驾驶在平坦道路上,所以转向系统不居中,并且第一转向反馈是横向控制误差。
在一个实施例中,如果在预定的时间段内满足上述四个条件中的一个或多个,则基于预定的时间段内的转向反馈确定横向控制误差。例如,如果ADV正在当前移动方向的预设邻近范围内移动并且道路状况在预定的时间段内满足预定的道路状况,则可以基于预定的时间段内的转向反馈确定横向控制误差;
在操作507处,生成补偿横向控制误差的新的转向命令。在一个实施例中,可以通过扣除横向控制误差生成新的转向命令。例如,为了控制ADV,先前的转向控制命令可以是CMD_Steer。稳定的第一转向反馈可以是Steer_new。因此,新的转向命令可以是CMD_Steer-Steer_new,它被生成以补偿转向系统的横向控制误差。
最后,在操作508处,发送新的转向命令以控制ADV补偿横向控制误差,以便沿直线向前驾驶。
图8是示出根据一个实施例的用于提供基于反馈的实时转向校准的过程的示例的流程图。过程800可由可以包括软件、硬件或其组合的处理逻辑执行。例如,过程800可以由控制模块306执行。参照图8,在操作802中,处理逻辑确定ADV的转向系统的横向控制误差,包括针对预定的时间段迭代地执行以下操作。在操作803中,处理逻辑基于从安装在ADV上的多个传感器获得的传感器数据感知驾驶条件。在操作804中,处理逻辑确定ADV是否正在当前移动方向的预设邻近范围内移动。在操作805中,处理逻辑基于驾驶条件,确定ADV行驶的道路的道路状况是否满足预定的道路状况。在操作806中,处理逻辑响应于先前的转向控制命令测量ADV的第一转向反馈。在操作807中,处理逻辑响应于确定ADV正在当前移动方向的预设邻近范围内移动以及确定道路状况在预定的时间段内满足预定的道路状况,基于预定的时间段内的第一转向反馈的至少一部分确定横向控制误差。在操作810中,处理逻辑根据转向系统的横向控制误差生成转向命令。在操作812中,处理逻辑施加转向命令以控制ADV补偿转向系统的横向控制误差。
注意,如上所示和所述的组件中的一些或所有可以用软件、硬件或其组合实现。例如,这些组件可以被实现为安装并存储在永久存储设备中的软件,软件可以由处理器(未示出)在存储器中加载并执行以执行贯穿本申请所述的过程或操作。可替换地,这些组件可以被实现为被编程或嵌入到专用硬件中的可执行代码,专用硬件诸如集成电路(例如,专用IC或ASIC)、数字信号处理器(DSP)或现场可编程门阵列(FPGA),其可以经由来自应用的对应的驱动器和/或操作系统访问。此外,这些组件可以被实现为处理器中的特定硬件逻辑或处理器内核,作为经由一个或多个特定指令软件组件可访问的指令集的一部分。
已经关于对计算机存储器内的数据位的操作的算法和符号表示呈现了前述详细描述的一些部分。这些算法描述和表示是数据处理领域的技术人员用来最有效地将他们的工作实质传达给本领域的其他技术人员的方式。算法在这里并且通常被认为是导致期望结果的自洽操作序列。这些操作是需要对物理量进行物理操作的那些操作。
然而,应当记住的是,所有这些和类似的术语都与适当的物理量相关联,并且仅仅是应用于这些量的方便的标记。除非另有特别声明,从以上讨论中显而易见的是,应当理解的是,在整个说明书中,使用诸如所附权利要求书中所阐述的术语的讨论指的是计算机系统或类似电子计算设备的动作和过程,该计算机系统或类似电子计算设备将计算机系统的寄存器和存储器内的表示为物理(电子)量的数据操纵和变换成计算机系统存储器或寄存器或其他这样的信息存储、传输或显示设备内的类似表示为物理量的其他数据。
本公开的实施例还涉及用于执行本文的操作的装置。这种计算机程序存储在非暂时性计算机可读介质中。机器可读介质包括用于以机器(例如,计算机)可读的形式存储信息的任何机制。例如,机器可读(例如,计算机可读)介质包括机器(例如,计算机)可读存储介质(例如,只读存储器(“ROM”)、随机存取存储器(“RAM”)、磁盘存储介质、光存储介质、闪存设备)。
在前述附图中描述的过程或方法可以由包括硬件(例如,电路、专用逻辑等)、软件(例如,体现在非暂时性计算机可读介质上)或两者的组合的处理逻辑来执行。尽管以上关于一些顺序操作描述了过程或方法,应当理解的是,可以以不同的顺序执行所述的一些操作。此外,一些操作可以并行地而不是顺序地执行。
本公开的实施例不是参考任何特定编程语言描述的。将了解的是,可使用各种编程语言实施如本文所述的本公开的实施例的教示。
在前述说明书中,已经参考本公开的具体示例性实施例描述了本公开的实施例。显然,在不背离如所附权利要求书中所阐述的本公开的更宽的精神和范围的情况下,可以对其进行各种修改。因此,说明书和附图应被认为是说明性的而不是限制性的。
Claims (20)
1.一种用于操作自主驾驶车辆ADV的计算机实现的方法,所述方法包括:
确定所述ADV的转向系统的横向控制误差,包括针对预定的时间段迭代地执行以下操作,
基于从安装在所述ADV上的多个传感器获得的传感器数据感知驾驶条件,
确定所述ADV是否正在当前移动方向的预设邻近范围内移动,
基于所述驾驶条件,确定所述ADV行驶的道路的道路状况是否满足预定的道路状况,
响应于先前的转向控制命令,测量所述ADV的第一转向反馈,以及
响应于确定所述ADV正在所述当前移动方向的所述预设邻近范围内移动、以及确定所述道路状况在所述预定的时间段内满足所述预定的道路状况,基于在所述预定的时间段内的所述第一转向反馈的至少一部分,确定所述横向控制误差;
根据所述转向系统的所述横向控制误差生成转向命令;以及
施加所述转向命令以控制所述ADV补偿所述转向系统的所述横向控制误差。
2.如权利要求1所述的方法,其中所述确定所述ADV是否正在所述当前移动方向的所述预设邻近范围内移动是基于所述ADV在第一时刻处的第一航向与所述ADV在第二时刻处的第二航向之间的航向差是否小于预定的阈值。
3.如权利要求1所述的方法,其中所述确定所述ADV是否正在所述当前移动方向的所述预设邻近范围内移动是基于所述ADV的轨迹的曲率是否小于预定的阈值曲率。
4.如权利要求1所述的方法,其中所述确定所述道路状况是否满足所述预定的道路状况是基于第一时刻处的第一滚转角与第二时刻处的第二滚转角之间的滚转角差、或第一时刻处的第一俯仰角与第二时刻处的第二俯仰角之间的俯仰角差中的至少一个是否小于预定的阈值角。
5.如权利要求1所述的方法,还包括确定所述第一转向反馈是否稳定。
6.如权利要求5所述的方法,其中所述确定所述第一转向反馈是否稳定是基于第一时刻处的所述第一转向反馈和第二时刻处的第二转向反馈是否小于预定的阈值,以及其中还响应于确定所述第一转向反馈是稳定的,确定所述横向控制误差。
7.如权利要求1所述的方法,还包括确定所述ADV的速度是否大于预定的阈值。
8.如权利要求7所述的方法,其中还响应于确定所述ADV的速度在所述预定的时间段内大于所述预定的阈值,确定所述横向控制误差。
9.一种具有存储在其中的指令的非暂时性机器可读介质,所述指令在由处理器执行时使得所述处理器执行操作,所述操作包括:
确定所述ADV的转向系统的横向控制误差,包括针对预定的时间段迭代地执行以下操作,
基于从安装在所述ADV上的多个传感器获得的传感器数据感知驾驶条件,
确定所述ADV是否正在当前移动方向的预设邻近范围内移动,
基于所述驾驶条件,确定所述ADV行驶的道路的道路状况是否满足预定的道路状况,
响应于先前的转向控制命令,测量所述ADV的第一转向反馈,以及
响应于确定所述ADV正在所述当前移动方向的所述预设邻近范围内移动、以及确定所述道路状况在所述预定的时间段内满足所述预定的道路状况,基于在所述预定的时间段内的所述第一转向反馈的至少一部分,确定所述横向控制误差;
根据所述转向系统的所述横向控制误差生成转向命令;以及
施加所述转向命令以控制所述ADV补偿所述转向系统的所述横向控制误差。
10.如权利要求9所述的非暂时性机器可读介质,其中所述确定所述ADV是否正在所述当前移动方向的所述预设邻近范围内移动是基于所述ADV在第一时刻处的第一航向与所述ADV在第二时刻处的第二航向之间的航向差是否小于预定的阈值。
11.如权利要求9所述的非暂时性机器可读介质,其中所述确定所述ADV是否正在所述当前移动方向的所述预设邻近范围内移动是基于所述ADV的轨迹的曲率是否小于预定的阈值曲率。
12.如权利要求9所述的非暂时性机器可读介质,其中所述确定所述道路状况是否满足所述预定的道路状况是基于第一时刻处的第一滚转角与在第二时刻处的第二滚转角之间的滚转角差、或基于第一时刻处的第一俯仰角与第二时刻处的第二俯仰角之间的俯仰角差中的至少一个是否小于预定的阈值角。
13.如权利要求9所述的非暂时性机器可读介质,其中所述以下操作还包括确定所述第一转向反馈是否稳定。
14.如权利要求13所述的非暂时性机器可读介质,其中所述确定所述第一转向反馈是否稳定是基于第一时刻处的所述第一转向反馈和第二时刻处的第二转向反馈是否小于预定的阈值,以及其中还响应于确定所述第一转向反馈是稳定的,确定所述横向控制误差。
15.如权利要求9所述的非暂时性机器可读介质,其中所述以下操作还包括确定所述ADV的速度是否大于预定的阈值。
16.如权利要求15所述的非暂时性机器可读介质,其中还响应于确定所述ADV的速度在所述预定的时间段内大于所述预定的阈值,确定所述横向控制误差。
17.一种数据处理系统,包括:
处理器;以及
存储器,耦接到所述处理器并存储指令,所述指令在由所述处理器执行时使得所述处理器执行操作,所述操作包括
确定所述ADV的转向系统的横向控制误差,包括针对预定的时间段迭代地执行以下操作,
基于从安装在所述ADV上的多个传感器获得的传感器数据感知驾驶条件,确定所述ADV是否正在当前移动方向的预设邻近范围内移动,
基于所述驾驶条件,确定所述ADV行驶的道路的道路状况是否满足预定的道路状况,
响应于先前的转向控制命令,测量所述ADV的第一转向反馈,以及
响应于确定所述ADV正在所述当前移动方向的所述预设邻近范围内移动、以及确定所述道路状况在所述预定的时间段内满足所述预定的道路状况,基于在所述预定的时间段内的所述第一转向反馈的至少一部分,确定所述横向控制误差;
根据所述转向系统的所述横向控制误差生成转向命令;以及
施加所述转向命令以控制所述ADV补偿所述转向系统的所述横向控制误差。
18.如权利要求17所述的数据处理系统,其中所述确定所述ADV是否正在所述当前移动方向的所述预设邻近范围内移动是基于所述ADV在第一时刻处的第一航向与所述ADV在第二时刻处的第二航向之间的航向差是否小于预定的阈值。
19.如权利要求17所述的数据处理系统,其中所述确定所述ADV是否正在所述当前移动方向的所述预设邻近范围内移动是基于所述ADV的轨迹的曲率是否小于预定的阈值曲率。
20.如权利要求17所述的数据处理系统,其中所述确定所述道路状况是否满足所述预定的道路状况是基于第一时刻处的第一滚转角与第二时刻处的第二滚转角之间的滚转角差、或基于第一时刻处的第一俯仰角与第二时刻处的第二俯仰角之间的俯仰角差中的至少一个是否小于预定的阈值角。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2020/073969 WO2021147070A1 (en) | 2020-01-23 | 2020-01-23 | A feedback based real time steering calibration system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113508350A true CN113508350A (zh) | 2021-10-15 |
CN113508350B CN113508350B (zh) | 2024-06-07 |
Family
ID=76969786
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080003575.2A Active CN113508350B (zh) | 2020-01-23 | 2020-01-23 | 基于反馈的实时转向校准系统 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11713057B2 (zh) |
EP (1) | EP4094134A4 (zh) |
CN (1) | CN113508350B (zh) |
WO (1) | WO2021147070A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220050463A1 (en) * | 2020-08-14 | 2022-02-17 | Waymo Llc | Steering system fault response for autonomous vehicles |
KR20220034976A (ko) * | 2020-09-11 | 2022-03-21 | 현대자동차주식회사 | 차량 모터 제어 장치 및 그 방법 |
CN114572240B (zh) * | 2020-11-30 | 2023-11-14 | 北京百度网讯科技有限公司 | 车辆行驶控制方法、装置、车辆、电子设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105835820A (zh) * | 2016-04-28 | 2016-08-10 | 姜锡华 | 车载传感器信息筛选方法及应用该方法的车辆避撞系统 |
CN109795477A (zh) * | 2019-02-22 | 2019-05-24 | 百度在线网络技术(北京)有限公司 | 消除稳态横向偏差的方法、装置及存储介质 |
CN110027547A (zh) * | 2019-04-29 | 2019-07-19 | 百度在线网络技术(北京)有限公司 | 车辆横向控制方法和装置 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6718248B2 (en) * | 2002-06-19 | 2004-04-06 | Ford Global Technologies, Llc | System for detecting surface profile of a driving road |
WO2010016108A1 (ja) * | 2008-08-05 | 2010-02-11 | トヨタ自動車株式会社 | 車両の走行制御装置 |
US9205869B2 (en) * | 2010-08-16 | 2015-12-08 | Honda Motor Co., Ltd. | System and method for determining a steering angle for a vehicle and system and method for controlling a vehicle based on same |
KR101962890B1 (ko) * | 2012-03-02 | 2019-08-01 | 현대모비스 주식회사 | 차량 센서 오프셋 보정 시스템 및 그 방법 |
DE112012007083B4 (de) * | 2012-10-31 | 2021-05-12 | Toyota Jidosha Kabushiki Kaisha | Fahrzeuggeschwindigkeitsregeleinrichtung |
JP6108974B2 (ja) * | 2013-06-14 | 2017-04-05 | 日立オートモティブシステムズ株式会社 | 車両制御システム |
JP6025670B2 (ja) * | 2013-07-17 | 2016-11-16 | 日立オートモティブシステムズ株式会社 | 車両制御装置 |
JP6554006B2 (ja) * | 2015-09-28 | 2019-07-31 | 本田技研工業株式会社 | 車両用操舵装置 |
US10654520B2 (en) * | 2016-08-31 | 2020-05-19 | Deere & Company | Methods and apparatuses for disturbance and stability detection by vehicle guidance systems |
US10671070B2 (en) * | 2018-05-23 | 2020-06-02 | Baidu Usa Llc | PID embedded LQR for autonomous driving vehicles (ADVS) |
CN109799828B (zh) * | 2019-02-28 | 2022-05-24 | 北京智行者科技有限公司 | 自动驾驶车辆横纵向协调控制方法 |
CN110471428B (zh) * | 2019-09-18 | 2021-05-07 | 吉林大学 | 一种基于模型的变预瞄距离和速度约束的路径跟踪方法 |
FR3101306B1 (fr) * | 2019-10-01 | 2021-10-15 | Renault Sas | Dispositif de contrôle de l’angle de braquage d’un véhicule automobile à conduite autonome |
-
2020
- 2020-01-23 EP EP20915181.0A patent/EP4094134A4/en not_active Withdrawn
- 2020-01-23 WO PCT/CN2020/073969 patent/WO2021147070A1/en unknown
- 2020-01-23 CN CN202080003575.2A patent/CN113508350B/zh active Active
- 2020-01-23 US US16/646,958 patent/US11713057B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105835820A (zh) * | 2016-04-28 | 2016-08-10 | 姜锡华 | 车载传感器信息筛选方法及应用该方法的车辆避撞系统 |
CN109795477A (zh) * | 2019-02-22 | 2019-05-24 | 百度在线网络技术(北京)有限公司 | 消除稳态横向偏差的方法、装置及存储介质 |
CN110027547A (zh) * | 2019-04-29 | 2019-07-19 | 百度在线网络技术(北京)有限公司 | 车辆横向控制方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
US11713057B2 (en) | 2023-08-01 |
US20210229704A1 (en) | 2021-07-29 |
EP4094134A1 (en) | 2022-11-30 |
WO2021147070A1 (en) | 2021-07-29 |
CN113508350B (zh) | 2024-06-07 |
EP4094134A4 (en) | 2023-09-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111775933B (zh) | 用于基于车辆周围障碍物的移动轨迹自主驾驶车辆的方法 | |
US10915766B2 (en) | Method for detecting closest in-path object (CIPO) for autonomous driving | |
US11485360B2 (en) | Dynamic speed limit adjustment system based on perception results | |
US11352010B2 (en) | Obstacle perception calibration system for autonomous driving vehicles | |
US11880201B2 (en) | Fastest lane determination algorithm under traffic jam | |
US11377112B2 (en) | Low-speed, backward driving vehicle controller design | |
US11702087B2 (en) | Autonomous driving monitoring system | |
US11225228B2 (en) | Method for enhancing in-path obstacle detection with safety redundancy autonomous system | |
CN113508350B (zh) | 基于反馈的实时转向校准系统 | |
CN114026463A (zh) | 基于部分点云的行人速度估计方法 | |
US11479265B2 (en) | Incremental lateral control system using feedbacks for autonomous driving vehicles | |
CN113428173B (zh) | 用于自动驾驶车辆的静态曲率误差补偿控制逻辑 | |
US11787440B2 (en) | Lane boundary and vehicle speed based nudge decision | |
US20220063670A1 (en) | Imu feedback based hd map speed limit adjustment system | |
CN112985435A (zh) | 用于操作自主驾驶车辆的方法及系统 | |
US20210188257A1 (en) | Post collision, damage reduction brake system | |
US11300414B2 (en) | Estimated time of arrival based on history | |
CN113753071A (zh) | 预防减速规划 | |
US11242057B2 (en) | Method for optimizing three-point turn of autonomous driving vehicles | |
CN112601869B (zh) | 操作自主驾驶车辆的方法、机器可读介质及数据处理系统 | |
CN113525510B (zh) | 自动将自主驾驶车辆的转向返回至中心位置的系统和方法 | |
US11577644B2 (en) | L3-level auto-emergency light system for ego vehicle harsh brake | |
US20240005066A1 (en) | Decoupled prediction evaluation | |
US20230065284A1 (en) | Control and planning with localization uncertainty |
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 | ||
GR01 | Patent grant |