Skip to content

减少实车的启动延迟#

在模拟中,自我车辆几乎会立即对 Autoware 生成的控制命令做出反应. 然而,对于真实的车辆,会发生一些延误,这可能会使自我感觉反应迟钝.

本页介绍在真实车辆上使用 Autoware 时遇到的启动延迟. 我们将启动延迟定义为 (a) 当 Autoware 决定启动 ego 车辆时,以及 (b) 当车辆实际开始移动时. 更准确地说:

  • (a) 是 Autoware 输出的速度或加速度命令切换为非零值的时间.
  • (b) 是 ego 车辆的测得速度变为正值的时间.

手动驾驶的启动延迟#

首先,让我们看看人类驾驶时的启动延迟.

下图显示了人类驾驶员换档时的启动延迟 从 parkeddrive 并立即松开制动器以推动油门踏板并使车辆的速度增加.

手动驾驶延误

从这个图中可以注意很多事情.

  • 刹车(红色):尽管驾驶员立即松开刹车踏板, 我们看到测得的制动大约需要 150ms100%0%.
  • 档位(橙色):驾驶员在松开制动踏板之前换档,但测量档位以 之后 制动器被释放.
  • 油门(绿色)和速度(蓝色):驾驶员踩下油门踏板,测量车辆在大约 500 毫秒 后开始移动.

Filter delay (滤波器延迟)#

为了保证乘客的舒适度, 一些 Autoware 模块在车辆的加加速度上实施过滤器,以防止加速的突然变化.

例如 vehicle_cmd_gate 过滤控制器生成的加速命令 以及 之前引入了重大延误 在加速度为负的 stop 命令之间转换时, 以及加速度为正的 move 命令. 由于加加速度滤波器,负值和正值之间的转换不是瞬间的,需要几百毫秒.

齿轮延迟#

在许多车辆中,在首次开始移动车辆之前有必要换档. 当自动执行时,此换档可能需要一些时间. 此外,从手动驾驶记录的数据可以看出,测得的档位值可能会延迟.

在 Autoware 中,控制器会发送停止控制命令,直到齿轮变为 drive 状态. 这意味着换档延迟及其报告值会极大地影响起动延迟. 请注意,仅当车辆最初处于 parked 档位时,这才是一个问题.

减少这种延迟的唯一方法是调整车辆以提高换档速度 或减少换档报告中的延迟.

制动延迟#

在带有制动踏板的车辆中, 制动系统通常由几个无法立即移动的运动部件组成. 因此,当 Autoware 向车辆发送制动命令时, 在应用于车轮的实际制动器中应该会有一些延迟.

这种挥之不去的刹车可能会阻止或延迟自我车辆的初始运动.

可以通过调整无人机来减少这种延迟.

节流响应#

对于带油门控制的车辆, 启动延迟的主要原因之一是由于 油门响应 的车辆. 踩下油门踏板时,车辆的车轮不会立即开始旋转. 这部分是由于车辆的惯性, 但也对电机,可能需要很长时间才能开始应用 车轮有一些扭矩.

可以调整一些 Vehicle Side 参数来减少这种延迟. 但这样做往往是以降低能源效率为代价的.

在 Autoware 方面,减少此延迟的唯一方法是增加初始限制 但这可能会导致令人不舒服的高初始加速度.

初始加速和节流#

正如我们刚刚讨论的,对于具有油门控制的车辆,增加初始油门值可以减少启动延迟.

由于 Autoware 会输出加速度值,因此 conversion 模块 raw_vehicle_cmd_converter 用于将 Autoware 的加速度值映射到要发送到车辆的油门值. 这种映射通常是使用 accel_brake_map_calibrator 模块, 但它可能会产生较低的初始节流,从而导致较高的启动延迟.

为了增加初始限制,有两个选项: 增加 Autoware 的初始加速度输出, 或修改 Acceleration to throttle 映射.

Autoware 输出的初始加速度可以在 motion_velocity_smoother 使用参数 engage_velocityengage_acceleration . 但是,vehicle_cmd_gate 对 control 命令应用过滤器,以防止加加速度和加速度发生过突然的变化, 限制 EGO 车辆停止时允许的最大加速度.

或者,可以调整加速度映射以增加与初始加速度对应的油门. 如果我们看一个例子 加速地图、 它执行以下转换: 当 EGO Velocity 为 0 (第一列) 时,加速度值介于 0.631 (第一行) 和 0.836 (第二行) 之间 转换为介于 0%10% 之间的限制. 这意味着任何低于 0.631m/s² 的初始加速度都不会产生任何节流. 请记住,在调整加速贴图后, 可能还需要更新 刹车图.

default 0 1.39 2.78 4.17 5.56 6.94 8.33 9.72 11.11 12.5 13.89
0 0.631 0.11 -0.04 -0.04 -0.041 -0.096 -0.137 -0.178 -0.234 -0.322 -0.456
0.1 0.836 0.57 0.379 0.17 0.08 0.07 0.068 0.027 -0.03 -0.117 -0.251
0.2 1.129 0.863 0.672 0.542 0.4 0.38 0.361 0.32 0.263 0.176 0.042
0.3 1.559 1.293 1.102 0.972 0.887 0.832 0.791 0.75 0.694 0.606 0.472
0.4 2.176 1.909 1.718 1.588 1.503 1.448 1.408 1.367 1.31 1.222 1.089
0.5 3.027 2.76 2.57 2.439 2.354 2.299 2.259 2.218 2.161 2.074 1.94