一、课程导论:纵向速度规划在自动驾驶中的角色、跟车策略的核心目标、课程整体框架与学习路径

1.1 纵向速度规划——自动驾驶的“油门与刹车”

大家好,我是这门课的主讲。先聊聊纵向速度规划。

说白了,纵向速度规划就是决定车什么时候加速、什么时候减速、什么时候匀速滑行。你想想看,横向控制管的是方向盘,让车不跑偏;而纵向控制管的是油门和刹车,让车跑得稳、跟得住、停得准。

我在项目里遇到过不少新手,一上来就盯着路径规划、感知算法猛学,觉得纵向控制不就是个PID嘛,有啥好研究的?结果一上路就露馅了——要么跟车时一脚急刹把乘客晃吐,要么前车减速了自己还傻乎乎往前冲。嗯,纵向规划没做好,车就是个“愣头青”。

核心观点:纵向速度规划是自动驾驶系统里最“接地气”的模块。它直接决定了乘坐舒适性、跟车安全性、以及能耗经济性。没有好的纵向规划,再牛的感知和决策都是白搭。

纵向规划要解决什么问题?我总结了三类:

  • 安全跟车:前车刹车了,你得在合适距离内稳稳停下。不能太近(追尾),也不能太远(被加塞)。
  • 舒适控速:加速和减速的冲击度(jerk)要控制住。我个人的习惯是,把jerk限制在2m/s³以内,乘客基本感觉不到顿挫。
  • 经济节能:利用下坡滑行、预判红绿灯等方式减少不必要的加减速。这玩意儿在电动车上尤其重要,能多跑好几公里。

1.2 跟车策略的核心目标——不是“跟住”那么简单

跟车策略,听起来好像就是“前车走我也走,前车停我也停”。但实际做起来,坑多着呢。

我曾经在一个项目中,把跟车策略写成了简单的“距离-速度”查表法。结果呢?高速上跟车还行,一到城市拥堵路况,车就开始“点头”——前车动一下我猛加速,前车停一下我急刹车,乘客差点晕车。后来我花了整整两周重构了跟车模型,才把这个问题解决。

跟车策略的核心目标,我归纳为四个字:稳、准、省、顺

目标 说明 我的经验
速度变化平滑,无剧烈波动 jerk控制在1.5m/s³以内,乘客基本无感
跟车距离精确,误差不超过±0.5米 用卡尔曼滤波融合雷达和视觉数据,精度能到0.2米
减少不必要的加速刹车,降低能耗 预判前车行为,提前松油门滑行,能省15%的电
应对加塞、切入等场景时自然不突兀 我习惯用“松油门+轻刹车”策略,而不是直接急刹

避坑指南:我曾经犯过一个错误——把跟车距离设得太保守,结果在城市里被疯狂加塞。后来我引入了“动态安全距离”的概念,根据相对速度和路面附着系数实时调整,才解决了这个问题。记住:跟车不是越远越好,而是“刚刚好”。

1.3 课程整体框架——30章,从入门到实战

这门课一共30章,我把它分成了四个阶段。你跟着走,基本能从一个纵向控制的小白,成长为能独立设计跟车策略的工程师。

先给你看看整体框架:

阶段 章节 核心内容
基础篇 第1-8章 纵向动力学模型、PID控制、MPC基础、传感器融合
进阶篇 第9-16章 跟车模型(Gipps、IDM、MOBIL)、安全距离策略、舒适性优化
实战篇 第17-24章 代码实现(C++/Python)、仿真环境搭建、实车调试技巧
专题篇 第25-30章 特殊场景(坡道、弯道、雨雪)、多目标优化、功能安全

我个人建议的学习路径是这样的:

  1. 先啃基础篇:别急着写代码。把纵向动力学模型搞明白,PID和MPC的原理吃透。我见过太多人一上来就调MPC参数,结果连状态方程都写不对。
  2. 再攻进阶篇:跟车模型是核心。Gipps模型简单但保守,IDM模型灵活但参数多。我的建议是:先跑通IDM,再根据场景调参。
  3. 最后实战+专题:代码实现时,我推荐用C++写核心逻辑,Python做仿真验证。实车调试时,记得先开仿真,再上实车——我曾经在实车上直接跑新算法,差点撞了护栏。

学习小技巧:每章学完后,自己动手画一张“知识地图”。把核心公式、参数含义、常见坑点都写上去。我当年就是这么干的,复习时翻翻笔记,效率翻倍。

1.4 学习路径——怎么学最有效?

你可能会问:30章内容,我该怎么分配时间?

我的建议是:每周学2-3章,配合代码练习。别光看,不动手。纵向规划这东西,看十遍不如写一遍。

具体来说:

  • 第1-8章(基础篇):2周搞定。重点是理解模型和控制器原理,不用纠结参数调优。
  • 第9-16章(进阶篇):3周。这部分是核心,建议每章都写个小demo验证。
  • 第17-24章(实战篇):3周。代码量会比较大,但写完后你会对纵向控制有质的理解。
  • 第25-30章(专题篇):2周。按需学习,工作中遇到什么场景就重点看什么。

嗯,这里要提醒你:别贪快。我见过有人一周刷完10章,结果问他MPC的代价函数怎么设计,一脸懵。学习这事儿,慢就是快。

最后说一句:这门课不会教你“万能公式”,因为自动驾驶里没有银弹。但我会把我在项目中踩过的坑、总结的经验、验证过的方法,毫无保留地分享给你。你跟着学,至少能少走两年弯路。

好了,导论就到这里。下一章,我们正式开始——从纵向动力学模型讲起。到时候我会手把手带你推导公式,再配上代码实现。准备好了吗?