从运动学基础到场景代码的完整闭环

这门课的核心目标并非泛泛讲解 C++ 语法,而是解决“如何将决策规划算法落地为可运行的车辆控制代码”这一具体工程问题。它适合已经掌握 C++ 基础语法、面向对象编程概念,但缺乏实际项目经验,或者对自动驾驶中“感知-决策-控制”链路中决策与执行环节感到模糊的学习者。如果你能独立写出简单的类与继承结构,理解基本的数学向量运算,就可以开始学习。课程不假设你熟悉复杂的几何代数库,而是从最基础的平面向量运算讲起,逐步构建起车辆运动的数学表达。

建议的学习路径与核心模块

不要从复杂的场景代码直接入手。首先必须吃透“车辆建模与运动的表达”这一节,理解如何将车辆的物理状态(位置、姿态、速度)抽象为代码中的数据结构,这是后续所有场景逻辑的地基。接着,重点攻克“直行场景”系列,这是最基础的交通场景,涵盖了停障、停靠站点、跟车以及通过斑马线等典型逻辑。在理解原理视频后,务必同步编写对应的 C++ 代码,特别是“道路与场景基类”的设计,这决定了后续场景扩展的可维护性。当直行逻辑跑通后,再进入“绕障场景”,学习转向和单移线的几何原理与代码实现。最后,通过“泊车”和“漂移”场景,巩固复杂轨迹规划与执行的能力。每个场景都遵循“先原理、后代码”的节奏,建议在看代码前先自己推导一遍数学公式,再对照代码实现,填补思维空白。

学完后的能力验证与资料配合

学完这门课,你应该能够独立搭建一个基于 C++ 的无人小车仿真框架。具体能力包括:能定义场景基类并派生出直行、绕障、泊车等具体场景类;能实现基于规则的车辆运动控制逻辑,如计算转向角度、控制加速度;能调试代码中的逻辑错误,例如车辆偏离车道或碰撞障碍物。资料包中的代码文件(如 `scene_base.cpp`、`planning_base.cpp`)是核心骨架,建议你先在本地环境搭建好编译环境,尝试编译并运行 `main.cpp`,观察车辆行为。随后,尝试修改场景参数(如障碍物位置、车道宽度),观察代码输出变化,以此验证你对逻辑的理解。不要只是阅读代码,要通过“修改-运行-观察-修正”的循环,将视频中的算法逻辑转化为你自己的肌肉记忆。最终,你应能回答诸如“在跟车场景中,如何根据前车距离动态调整本车速度”或“倒库过程中,方向盘角度如何随车辆位置变化而变化”等具体问题,并给出代码级的解决方案。

课程目录

📁 视频
4.绪论2:决策规划概述.mp4 [19.8 MB]
21.泊车场景代码:倒库和侧方位【整理不易‖记得关注:CunWorKNotes】.mp4 [95.8 MB]
18.绕障场景代码2:转向和单移线【整理不易‖记得关注:CunWorKNotes】.mp4 [53.3 MB]
20.泊车场景原理:倒库和侧方位【持续更新‖免费提供:CunworknoteS】.mp4 [59.1 MB]
24.课程总结.mp4 [17.1 MB]
2.《C++无人小车项目》课程最终前瞻.mp4 [17.3 MB]
15.绕障场景原理1:转向和单移线.mp4 [60.7 MB]
9.直行场景代码2:车辆.mp4 [57.7 MB]
6.车辆建模与运动的表达.mp4 [44.5 MB]
14.直行场景代码6:通过斑马线.mp4 [91.4 MB]
23.漂移场景代码:过弯和泊车.mp4 [80.9 MB]
8.直行场景代码1:点.mp4 [28.4 MB]
3.绪论1:课程概述.mp4 [26.5 MB]
16.绕障场景原理2:场景的实现.mp4 [24.2 MB]
7.直行场景原理1:停障 停靠站点 跟车.mp4 [39.8 MB]
22.漂移场景原理:过弯和泊车.mp4 [38.3 MB]
11.直行场景代码4:停障.mp4 [49.0 MB]
5.环境搭建与代码框架.mp4 [72.1 MB]
13.直行场景原理2:通过斑马线.mp4 [16.0 MB]
19.绕障场景代码3:场景的实现.mp4 [72.7 MB]
10.直行场景代码3:道路与场景基类.mp4 [68.8 MB]
17.绕障场景代码1:平面向量.mp4 [40.0 MB]
1.《C++无人小车项目》课程宣传片:学编程最快的方法.mp4 [2.6 MB]
12.直行场景代码5:停靠站点和跟车.mp4 [44.2 MB]
📁 资料
📁 无人小车项目代码
traffic.h [1.0 KB]
scene_park.cpp [6.7 KB]
scene_park.h [1.2 KB]
traffic.cpp [1.2 KB]
scene_obs_pass.h [808.0 B]
scene_straight.h [1.0 KB]
scene_obs_pass.cpp [6.7 KB]
scene_straight.cpp [5.5 KB]
scene_drift.h [527.0 B]
scene_base.cpp [6.6 KB]
main.cpp [2.2 KB]
scene_base.h [2.2 KB]
planning_base.cpp [3.2 KB]
car.cpp [7.9 KB]
main.h [545.0 B]
road.h [1.4 KB]
road.cpp [1.8 KB]
planning_base.h [2.1 KB]
scene_drift.cpp [3.1 KB]
car.h [2.8 KB]
C++无人小车项目:基础场景设计与代码编写.pdf [1.3 MB]