2、自动驾驶基础架构:感知、决策、控制模块功能解析,以及各模块对数据的需求
自动驾驶系统本质上是一个“数据驱动”的实时闭环控制系统。要理解数据闭环架构,首先必须拆解车辆大脑的核心分工。业界普遍将自动驾驶软件架构划分为三大模块:感知(Perception)、决策(Decision & Planning)、控制(Control & Execution)。这三个模块各自承担不同的职责,对数据的类型、频率、延迟和精度要求截然不同。理解这些差异,是设计数据采集策略、标注规范以及仿真验证方案的前提。本章将逐一解析三大模块的功能边界,并深入剖析它们对数据的具体需求,为后续章节中数据闭环的构建打下基础。
上图清晰地展示了自动驾驶系统的数据流闭环。传感器原始数据首先进入感知模块,经过处理后生成“障碍物列表”和“可行驶区域”等语义信息;决策规划模块基于这些感知结果以及高精地图、路由信息,计算出目标行驶轨迹;控制模块则负责将轨迹转化为具体的转向、油门和制动指令,驱动车辆执行。同时,车辆的实际状态(如IMU数据、轮速、执行器反馈)会形成闭环反馈,用于修正控制误差。值得注意的是,在数据闭环架构中,这三个模块的输入和输出数据都会被完整记录,用于离线分析、场景挖掘和仿真测试。
2.1 感知模块:环境理解的“眼睛”与“耳朵”
核心原理:从原始信号到语义信息
感知模块的核心任务是将物理世界的传感器原始信号(像素、点云、电磁波)转换为计算机可理解的语义信息。这包括:目标检测(识别车辆、行人、骑行者)、语义分割(区分可行驶区域、路沿、车道线)、目标跟踪(估计障碍物的速度与运动方向)以及多传感器融合(将相机、激光雷达、毫米波雷达的数据在时间与空间上对齐,形成统一的障碍物表征)。感知模块的输出质量直接决定了决策模块的“视野”是否准确。
判断方法:感知性能的量化评估
评估感知模块的性能,不能仅凭“看得见”的主观判断,必须依赖量化指标。常用的指标包括:
- 检测精度:mAP(平均精度均值)、Recall(召回率)、Precision(精确率)。重点关注远距离小目标(如行人)和遮挡场景下的表现。
- 定位精度:障碍物3D框的中心点误差(通常要求<30cm)、航向角误差(<3°)。
- 延迟:从传感器曝光到感知结果输出的端到端延迟,通常要求<100ms,否则高速场景下无法及时响应。
- 鲁棒性:在雨雾、逆光、夜间等低照度条件下的性能衰减程度。
案例拆解:多传感器融合的“时间同步”难题
在某L4级Robotaxi项目中,工程师发现车辆在通过隧道时频繁出现“幽灵刹车”现象。排查后发现,问题根源并非算法缺陷,而是传感器时间同步误差。相机帧率为30Hz,激光雷达为10Hz,当两者时间戳未对齐时,融合算法会将一个“旧”的雷达点云与“新”的相机图像匹配,导致障碍物位置出现约0.5米的偏差。在隧道内,由于GPS信号丢失,车辆依赖IMU进行航位推算,这种偏差被进一步放大,最终触发了紧急制动。解决方案是引入硬件级时间同步(PTP协议),将相机曝光时刻与激光雷达扫描时刻对齐到微秒级,并在软件层面加入“时间补偿”机制。这一案例说明,感知模块的数据需求不仅仅是“多”,更关键的是“同步”与“精确”。
2.2 决策规划模块:驾驶策略的“大脑”
核心原理:从环境理解到行为决策
决策规划模块接收感知模块输出的障碍物列表、可行驶区域以及高精地图信息,结合车辆自身的定位(来自GNSS/IMU/里程计),回答“接下来该怎么走”的问题。它通常分为三个层级:全局路径规划(从A点到B点的道路级导航)、行为决策(判断是跟车、超车、停车还是绕行)以及运动规划(生成一条平滑、安全、符合车辆动力学约束的轨迹,包含路径点坐标、速度、加速度和曲率)。
操作流程:轨迹生成的约束条件
运动规划本质上是一个带约束的优化问题。其输入数据包括:
- 静态环境:高精地图中的车道线、路沿、交通标志、红绿灯位置。
- 动态环境:感知模块输出的障碍物预测轨迹(未来3-5秒的运动假设)。
- 车辆状态:当前车速、横摆角速度、方向盘转角。
- 决策指令:例如“在3秒内变道至左侧车道”。
规划算法(如Frenet坐标系下的采样法、或基于优化的MPC)会生成多条候选轨迹,并通过代价函数(Cost Function)评估每条轨迹的安全性、舒适性和效率,最终选择最优轨迹下发至控制模块。
案例拆解:无保护左转的场景决策
在无红绿灯的路口进行左转是自动驾驶的难点。决策模块需要综合对向直行车辆的速度与距离、人行横道上是否有行人、以及自身车辆的加速能力。此时,感知模块必须提供对向车辆的精确速度估计(误差<0.5m/s)和加速度预测。如果感知数据延迟过高,决策模块会认为对向车辆“静止”或“加速缓慢”,从而做出激进的左转决策,导致危险。在数据闭环中,这类“边缘场景”数据(Cut-in、无保护左转)会被重点标注,用于训练决策模型,使其学会更保守的“时间间隙”选择策略。
2.3 控制模块:精准执行的“手脚”
核心原理:从轨迹到执行指令
控制模块是自动驾驶系统的“最后一公里”。它接收决策模块输出的目标轨迹(通常包含一系列路径点及对应的目标速度),通过横向控制(转向)和纵向控制(油门/制动)算法,计算具体的执行指令,使车辆实际行驶轨迹尽可能贴合目标轨迹。常用的算法包括PID控制、纯跟踪(Pure Pursuit)和模型预测控制(MPC)。
判断方法:控制精度的核心指标
控制模块的性能直接影响乘坐舒适性和安全性。关键指标包括:
- 横向跟踪误差:车辆中心线与目标轨迹的横向偏差,通常要求<20cm。
- 纵向速度误差:实际车速与目标车速的偏差,通常要求<1km/h。
- 控制频率:控制指令的下发频率,通常要求>50Hz,以保证控制的连续性。
- 执行延迟:从控制指令发出到执行器(如转向电机)响应的时间,通常要求<50ms。
案例拆解:高速NOA下的方向盘抖动问题
某车型在高速NOA(领航辅助驾驶)功能测试中,车辆在直线行驶时出现方向盘高频小幅抖动。排查过程如下:
- 数据采集:同步记录控制模块输出的方向盘转角指令、实际转角反馈、横向偏差、以及车辆横摆角速度。
- 数据分析:发现横向偏差在±5cm内波动,但方向盘转角指令存在约2Hz的振荡。进一步分析发现,该振荡频率与EPS(电动助力转向)系统的固有谐振频率接近。
- 根因定位:控制模块的PID参数中的微分项(D项)对噪声过于敏感,将IMU信号中的高频噪声放大,导致转向指令抖动。
- 解决方案:在控制链路中加入低通滤波器,并重新整定PID参数,同时将控制频率从50Hz提升至100Hz,以降低单次指令的步长。
这一案例表明,控制模块的数据需求不仅包括“目标轨迹”,还包括高精度的车辆状态反馈(IMU、轮速、执行器位置),且对信号的噪声和延迟极为敏感。
2.4 三大模块对数据需求的对比与闭环意义
为了更直观地理解三大模块的差异,下表总结了它们对数据的需求特征:
| 维度 | 感知模块 | 决策规划模块 | 控制模块 |
|---|---|---|---|
| 核心输入 | 相机图像、激光雷达点云、毫米波雷达点 | 障碍物列表、高精地图、定位信息、全局路径 | 目标轨迹(路径点+速度)、车辆状态反馈 |
| 数据频率 | 10-30Hz(传感器原始帧率) | 10-20Hz(规划周期) | 50-100Hz(控制周期) |
| 延迟要求 | <100ms(端到端感知延迟) | <50ms(从感知输入到轨迹输出) | <20ms(从轨迹输入到执行指令) |
| 数据精度 | 像素级/点级精度,3D框误差<30cm | 轨迹平滑度、曲率连续性、安全距离裕量 | 执行器指令精度(转向角0.1°) |
| 数据标注需求 | 2D/3D框、语义分割、目标跟踪ID | 意图标注、场景标签(路口/匝道)、规则标注 | 动力学参数标定、执行器响应特性 |
| 对数据闭环的依赖 | 依赖大量Corner Case数据提升泛化能力 | 依赖仿真环境生成极端交互场景 | 依赖硬件在环(HIL)测试验证鲁棒性 |
总结复盘:数据闭环视角下的模块协同
从数据闭环的角度看,三大模块并非孤立运行。感知模块的错误(如漏检)会直接导致决策模块做出错误规划;控制模块的执行偏差(如转向不足)也会被感知模块捕获,形成新的“场景数据”。因此,一个高效的数据闭环系统必须做到:
- 全量数据记录:不仅记录传感器原始数据,还要记录感知输出、决策轨迹、控制指令和车辆状态,以便事后进行“全链路”问题回溯。
- 场景挖掘与标注:从海量行驶数据中自动挖掘“感知低置信度”、“规划急刹车”、“控制超调”等异常片段,进行针对性标注。
- 仿真验证前置:将真实路采数据注入仿真环境,构建“虚拟测试场”,在软件层面验证模块升级后的效果,减少实车测试成本。