1. 课程导论与预备知识

各位同学好,我是你们这门课的主讲。在自动驾驶控制领域摸爬滚打了十几年,今天咱们来聊聊高速场景下的路径跟踪。

说实话,高速场景是我个人觉得最有意思、也最考验功底的一块。为什么?因为车速一上来,所有问题都会被放大。你想想看,低速时打个盹儿可能没事,高速上零点几秒的延迟,车就窜出去十几米了。

1.1 高速场景定义

什么叫高速场景?我习惯这么定义:车速超过 60 km/h,且道路结构相对封闭、交通流方向明确的场景。

具体来说,包括:

  • 高速公路:双向隔离、全封闭、有匝道
  • 城市快速路:比如高架桥、环线,限速通常在 80-100 km/h
  • 国道/省道:部分封闭,但可能有平交路口

这里有个关键点——高速场景不等于只有高速。我见过不少项目,把城市快速路和高速公路混为一谈,结果控制参数调得一团糟。其实两者的曲率变化率、车道宽度、甚至路面附着系数都不一样。

⚠️ 我曾经踩过的坑: 有一次在高速匝道上做测试,车速 80 km/h,弯道半径只有 150 米。我用的还是直道上的 PID 参数,结果车辆直接往护栏上冲。后来才意识到,高速场景的曲率变化率必须单独标定。

1.2 路径跟踪核心问题

路径跟踪,说白了就是让车沿着我们规划好的路线走。但这里有个核心矛盾:精度 vs 稳定性。

你想想看:

  • 如果追求极致精度,车会频繁调整方向盘,乘客感觉像在坐过山车
  • 如果追求舒适稳定,车可能就压线了,甚至冲出车道

我个人的经验是:高速场景下,稳定性优先于精度。为什么?因为高速时横向加速度对舒适性影响极大。你让乘客在 120 km/h 下频繁左右晃,不出 5 分钟就晕车了。

路径跟踪要解决的三个核心问题:

  1. 预瞄问题:看多远?看太近容易振荡,看太远反应迟钝
  2. 控制律设计:怎么把路径偏差转化成方向盘转角?
  3. 鲁棒性:遇到侧风、路面倾斜、轮胎磨损,系统还能不能稳住?
💡 记住这个公式: 路径跟踪 = 预瞄距离 + 控制律 + 车辆动力学约束。缺一个,系统就崩。

1.3 车辆运动学模型基础

做控制,首先得知道车怎么动。这里我介绍最常用的自行车模型——说白了就是把四个轮子简化成两个,前轮转向、后轮驱动。

为什么用自行车模型?因为高速场景下,我们更关心车辆的运动趋势,而不是每个轮胎的细微受力。我刚开始做的时候,总想着用复杂的动力学模型,结果参数太多,调都调不过来。

自行车模型的数学表达:

// 状态量:[x, y, yaw, v]
// 控制量:[delta, a]

x_dot = v * cos(yaw)
y_dot = v * sin(yaw)
yaw_dot = v * tan(delta) / L
v_dot = a

其中:

  • x, y:车辆后轴中心位置
  • yaw:航向角(车头朝向)
  • v:纵向速度
  • delta:前轮转角
  • L:轴距
  • a:加速度

嗯,这里要注意:自行车模型假设轮胎无侧滑。在高速急转弯时,这个假设会失效。我建议在车速超过 80 km/h 且弯道半径小于 200 米时,改用动力学模型。

1.4 坐标系与坐标变换

坐标系这东西,看着简单,但最容易出错。我见过太多工程师因为坐标系搞反,导致车辆原地画圈。

常用的坐标系有三个:

坐标系 原点 用途
世界坐标系 大地固定点 全局路径规划、地图定位
车辆坐标系 车辆后轴中心 控制量计算、传感器融合
Frenet坐标系 参考路径上的投影点 路径跟踪偏差计算

我个人最推荐用 Frenet 坐标系 做路径跟踪。为什么?因为它把问题简化成了两个独立维度:

  • 纵向:沿着路径走多远(s 坐标)
  • 横向:偏离路径多远(d 坐标)

这样,控制器的输入就变成了「横向偏差」和「航向角偏差」,非常直观。

坐标变换公式(从世界坐标系到 Frenet 坐标系):

// 假设参考路径点 [x_r, y_r, yaw_r]
// 车辆位置 [x, y]

dx = x - x_r
dy = y - y_r

// 横向偏差(左正右负)
d = -dx * sin(yaw_r) + dy * cos(yaw_r)

// 纵向距离
s = dx * cos(yaw_r) + dy * sin(yaw_r)

// 航向角偏差
yaw_err = normalize_angle(yaw - yaw_r)
🔧 避坑指南: 我曾经在坐标变换里忘了做角度归一化(normalize_angle),结果航向角偏差从 359° 突变到 1°,控制器以为偏差巨大,猛打方向盘。记住:所有角度运算前,先归一化到 [-π, π]。

知识体系总览

下面这张图,是我自己总结的高速场景路径跟踪知识框架。你可以把它当作整个课程的地图:

高速场景路径跟踪 高速场景定义 车速 > 60 km/h 封闭/半封闭道路 曲率变化率大 路径跟踪核心问题 精度 vs 稳定性 预瞄距离选择 控制律设计 车辆运动学模型 自行车模型 状态量:x, y, yaw, v 控制量:delta, a 坐标系与坐标变换 世界坐标系 车辆坐标系 Frenet坐标系(推荐) 常用控制方法 Pure Pursuit Stanley LQR / MPC 核心原则:稳定性优先,精度次之

这张图把本章的知识点串起来了。你会发现,所有内容都围绕着「如何在高速下稳定跟踪路径」这个核心问题展开。后面的课程,我们会逐一深入每个模块。

好了,第一章的预备知识就到这里。记住我今天说的:坐标系别搞反,角度记得归一化,高速场景稳定性优先。这三句话,够你用很久。


可可精品资料库