面向全场景的汽车自动驾驶系统设计与实现
从多传感器融合感知到安全关键决策
阙华庭
University of Cambridge · Department of Engineering | 厦门大学 · 信息科学与技术学院
摘要
随着汽车产业向智能化、网联化方向的深度变革,全自动驾驶技术已成为全球学术界与工业界的核心竞技场。然而,从L2级辅助驾驶到L4/L5级全自动驾驶的跨越,仍然面临感知鲁棒性不足、决策安全性难以形式化验证、多传感器融合的计算-精度权衡、以及功能安全标准(ISO 26262)与预期功能安全(SOTIF, ISO 21448)的合规性挑战。本文围绕”面向全场景的汽车自动驾驶系统设计与实现”这一核心命题,从硬件平台、软件架构、感知算法、规划决策、运动控制、功能安全六个维度,提出了一套端到端的系统工程解决方案。
本文的主要贡献包括:
- (1)异构多传感器深度融合框架(HetSen-Fuse)。提出了一种基于注意力门控的异构传感器融合架构,将摄像头(RGB/IR)、毫米波雷达(77GHz)、超声波传感器(12通道AK2编码型)和激光雷达(固态MEMS)在BEV(Bird’s Eye View)空间中进行统一表征。与传统前融合方案相比,在nuScenes数据集上mAP提升7.2%,NDS提升5.8%;在自研Corner-Case数据集的夜间/雨雾场景中,行人检出率从78.3%提升至94.1%。
- (2)安全关键决策的形式化建模与验证。基于信号时序逻辑(Signal Temporal Logic, STL)对自动驾驶行为决策进行形式化规约,提出了STL-Guided MPC框架,将交通规则的时序约束编码为MPC的约束条件。通过模型检查验证了该框架在1000种随机交通场景中满足ISO 21448 SOTIF接受准则。
- (3)面向自动泊车的超声-视觉-里程计紧耦合定位系统。针对地下停车场GPS失效场景,提出基于因子图优化的多源融合定位方案,融合轮速里程计、IMU、超声波回波特征与环视图像的语义特征。在300+次泊车实验中,终点定位误差均值从传统方案的18.7cm降至4.2cm,满足车规级泊车精度要求(<10cm)。
- (4)ISO 26262 ASIL-D级功能安全架构。设计了双通道异构冗余的计算平台(Infineon TC397 + NVIDIA Orin),实现了Lockstep模式下的安全监控与Fail-Operational降级策略。通过故障注入实验验证了单点故障覆盖率>99.2%,潜在故障覆盖率>94.7%。
- (5)实车验证与开放道路测试。基于量产车辆平台,在三类场景中累计完成12,000+公里自动驾驶测试。系统在无人工干预情况下的平均每次干预里程(MPI)达到1,847公里,显著优于同期文献报道水平。
关键词:自动驾驶;多传感器融合;功能安全;自动泊车;信号时序逻辑;模型预测控制;因子图优化;BEV感知
目录
- 绪论 — 研究背景、产业现状、核心挑战、本文贡献、论文结构
- 文献综述与理论基础 — 多传感器融合、运动规划、功能安全、自动泊车
- 系统架构设计 — E/E架构、计算平台、传感器配置、通信网络
- 多传感器融合感知系统 — HetSen-Fuse框架、BEV感知、不确定性量化
- 定位与高精建图 — 因子图优化、语义SLAM、多源融合定位
- 路径规划与行为决策 — STL-Guided MPC、Lattice Planner、博弈论决策
- 车辆运动控制 — 动力学建模、纵横向耦合控制、执行器接口
- 自动泊车系统设计 — 车位检测、泊车路径规划、AVP系统
- 功能安全与信息安全 — ASIL-D架构、SOTIF、安全OTA
- 系统验证与实车实验 — HIL/SIL、封闭场地、开放道路、MPI分析
- 结论与展望 — 全文总结、未来方向、技术趋势
参考文献 200+ 篇 | 附录:符号表、缩略语、实验数据
第1章 绪论
1.1 研究背景
汽车工业正处于百年未有之大变局。电动化、智能化、网联化、共享化——所谓”新四化”——正在从根本上重塑汽车的产业形态与技术架构。其中,自动驾驶技术被普遍认为是汽车智能化变革的”皇冠上的明珠”,其不仅关乎出行方式的革命性改变,更牵动着交通安全、能源效率、城市规划与公共政策等多个社会维度。
世界卫生组织(WHO)《全球道路安全现状报告》的数据触目惊心:全球每年约有135万人死于道路交通事故,即每24秒就有1人因交通事故丧生。而在这些事故中,超过94%与人为因素直接相关——疲劳驾驶、分心、超速、酒驾、判断失误。从这一角度看,消除人类驾驶员的不可靠性,是提升道路安全的最根本途径。
自动驾驶技术的发展由此获得了强大的社会需求牵引力。美国国家公路交通安全管理局(NHTSA)的统计显示,L2级ADAS系统(如自动紧急制动AEB、车道保持LKA)已经将追尾事故减少了50%以上。普及L4+自动驾驶系统有望将交通事故死亡率降低90%以上——仅在中国,每年就可能挽救超过5万人的生命。
然而,从L2到L4/L5的跨越绝非简单的传感器堆叠或算法升级。它要求对车辆系统进行从芯片到云端、从传感器到执行器、从软件到硬件的全栈重构。传统汽车电子以分布式ECU为核心的E/E架构正在被集中式域控制器+中央计算平台的架构所取代。感知系统从单一传感器进化为异构多传感器的深度融合。决策系统从基于规则的有限状态机进化为数据驱动与形式化方法并重的混合架构。而这一切,都必须在功能安全(ISO 26262)与预期功能安全(ISO 21448)的严格约束下完成。
1.2 产业现状与核心瓶颈
2024-2026年是全球自动驾驶产业的关键分水岭。Waymo在旧金山、凤凰城、洛杉矶实现了无安全员的商业Robotaxi运营,累计服务超过200万次。Tesla FSD(Full Self-Driving)v12版本采用端到端神经网络方案,已推送给北美超过40万用户。中国的百度Apollo、小鹏XNGP、华为ADS 3.0等系统也在城市NOA场景中取得了令人瞩目的进展。
然而,繁荣的数据背后,行业面临的瓶颈同样尖锐:
瓶颈一:长尾场景(Long-Tail Scenarios)的感知失效。当前基于深度学习的目标检测与语义分割模型,在常规场景下已经达到甚至超过人类水平。但在长尾场景——夜间逆光、暴雨/大雪、异形障碍物(如散落的轮胎、倾倒的锥桶)、施工区的非标准标识——感知系统的性能急剧退化。
瓶颈二:行为决策的”安全-效率”悖论。保守的决策策略虽然提升了安全性,却严重影响交通流效率和用户体验。如何在数学上证明某个决策策略在所有可预见场景中满足安全约束——这正是形式化方法所要解决的问题。
瓶颈三:功能安全与AI的张力。ISO 26262标准诞生于传统汽车电子时代,其方法论基础是确定性的软件行为。而基于深度学习的感知系统本质上是概率性的、黑箱的。如何将AI系统纳入ASIL-D级别的功能安全框架,是行业面临的终极挑战。
瓶颈四:计算-功耗-成本的”不可能三角”。L4自动驾驶的计算需求远超当前车载芯片的能力边界。运行完整的BEV+Transformer感知+轨迹预测+规划控制的全栈管线,需要在254 TOPS的算力预算内完成,总功耗被约束在150W以内。
瓶颈五:自动泊车——被低估的”最后一公里”难题。GPS缺失、光照条件恶劣、空间极度受限、障碍物种类繁杂——这些因素的组合使得泊车成为自动驾驶中最具挑战性的子问题之一。
1.3 研究动机与技术路线
本文的核心观察是:当前自动驾驶系统在感知、规划、控制模块之间的数据流是串行单向的,导致信息损失与误差累积。本文提出的方法论是:在保持模块化架构可解释性的前提下,通过异构传感器深度融合、形式化安全约束与因子图优化定位,构建兼具鲁棒性、安全性与工程可行性的全栈系统。
1.4 主要贡献
贡献一:HetSen-Fuse异构传感器融合框架。基于交叉注意力与可变形注意力的BEV融合方案,显式建模传感器物理特性与退化模式。
贡献二:基于STL的安全规约与验证。首次将信号时序逻辑系统性地应用于城市自动驾驶场景的安全约束编码,通过模型检查验证SOTIF合规性。
贡献三:面向自动泊车的因子图优化定位。融合5种信息源,将超声波回波特征编码为软障碍物约束,终点定位误差降至4.2cm。
贡献四:ASIL-D级双通道异构冗余架构。Infineon TC397 + NVIDIA Orin,SPFM>99.2%,LFM>94.7%。
贡献五:12,000+公里实车测试数据集。系统性记录20+类长尾场景,MPI达到1,847公里。
第2章 文献综述与理论基础
本章对自动驾驶系统涉及的核心技术领域进行系统性文献综述,涵盖传感器融合感知、运动规划与决策、车辆动力学控制、功能安全标准以及自动泊车技术。通过对现有工作的深入分析与批判性评估,识别出当前研究的关键不足,为本文的技术贡献奠定理论基础。
2.1 自动驾驶系统分级与参考架构
国际自动机工程师学会(SAE International)于2014年发布、2021年修订的J3016标准将驾驶自动化分为六个等级(L0-L5),这是目前全球汽车行业通用的分级框架。其中,L0-L2被归类为”驾驶员支持”(Driver Support),驾驶员持续监控驾驶环境并随时准备接管;L3-L5被归类为”自动驾驶”(Automated Driving),自动驾驶系统(ADS)在特定或所有场景下承担动态驾驶任务(DDT)。
L3级(有条件自动驾驶)与L2级的本质区别在于责任转移:当ADS激活时,驾驶员可以将注意力从驾驶任务中转移,ADS对车辆的动态驾驶负全责。然而,L3要求驾驶员在系统请求时”及时”接管——通常以秒计——这一要求在实践中已被证明存在严重的人因工程问题(Merat et al., 2014; Gold et al., 2013)。正是由于这一”接管悖论”,许多OEM(包括福特、沃尔沃)宣布跳过L3,直接从L2+过渡到L4。
在系统参考架构方面,AUTOSAR Adaptive Platform与ROS 2(Robot Operating System 2)代表了当前自动驾驶软件架构的两大主流路线。AUTOSAR Adaptive提供了功能安全(ISO 26262)原生的执行环境,支持POSIX操作系统(如Linux/QNX)上的自适应应用,但开发灵活性和社区生态弱于ROS 2。ROS 2凭借其DDS(Data Distribution Service)中间件、丰富的感知/规划算法库以及活跃的开源社区,在学术界和自动驾驶初创公司中占据主导。本文采用两者结合的混合架构:基于AUTOSAR Classic保证底层功能安全,ROS 2负责上层感知与规划算法的快速迭代(详见第3章)。
2.2 多传感器融合感知
感知系统是自动驾驶的”感官”,其核心任务是从原始传感器数据中提取对驾驶决策有用的环境信息,包括但不限于:动态目标检测与跟踪、静态障碍物检测、可行驶区域分割、车道线/交通标志识别、以及交通参与者意图预测。
2.2.1 各传感器模态的技术特征
摄像头(Camera):提供密集的语义信息(纹理、颜色、上下文),是目标分类和语义分割的主要信息来源。其局限性在于:(1) 对光照条件极度敏感——在逆光、夜间、雨雾场景中性能剧烈退化;(2) 缺乏直接的深度/速度测量,需要通过几何方法(立体视觉、运动结构)或学习方法来推算。
激光雷达(LiDAR):提供高精度的3D几何信息,直接输出点云的(x,y,z, intensity)。机械旋转式LiDAR(如Velodyne HDL-64E、128线)和固态MEMS/Flash LiDAR(如InnovizOne、RoboSense M1)代表了两种技术路线。固态LiDAR在成本、可靠性和体积方面具有显著优势,是量产车的首选方案。但LiDAR在雨雾天气中存在信号衰减,在高速运动场景中存在运动畸变。
毫米波雷达(Radar):工作在76-81GHz频段,通过FMCW(调频连续波)或MIMO(多输入多输出)技术测量目标的距离、径向速度(多普勒效应)和角度(AoA)。其核心优势在于:(1) 不受光照条件影响;(2) 直接测量多普勒速度(这是摄像头和LiDAR所不具备的独有能力);(3) 对恶劣天气具有良好的鲁棒性。局限性在于角度分辨率有限(通常为1-5°),且对静态目标(如静止车辆、护栏)的检测置信度较低。
超声波传感器(Ultrasonic):作为近场感知(0-5m)的主力传感器,在自动泊车和低速场景中不可替代。AK2编码型超声波传感器支持多探头同时发射、相位编码调制,相比传统单发单收方案,信噪比提升6-10dB,角度分辨率从±30°提升至±5°(Pöpperl et al., 2019)。
| 特性 | 摄像头 | 激光雷达 | 毫米波雷达 | 超声波 |
|---|---|---|---|---|
| 距离 | 0-200m | 0-300m | 0-250m | 0-5m |
| FOV | 60-120° | 360° (机械)/120° (固态) | ±60° (LRR) | ±60° |
| 速度测量 | 间接(多帧) | 间接(多帧) | 直接(多普勒) | 间接(TOF差) |
| 恶劣天气 | 差 | 中 | 好 | 好 |
| 分类能力 | 强 | 弱 | 弱 | 无 |
| 成本 | $10-50 | $500-2000 | $30-100 | $2-5 |
2.2.2 多传感器融合范式
多传感器融合的本质问题是:如何将不同模态、不同采样率、不同坐标系下的传感器数据,转化为对环境的统一且鲁棒的表征。
前融合(Early Fusion):在原始数据层面进行融合,如将LiDAR点云投影到相机图像平面上进行逐像素的深度增强(PointPainting, Vora et al., 2020),或将雷达稀疏点云与图像特征在BEV空间中对齐(BEVFusion, Liu et al., 2023)。前融合的优势在于最大限度地保留原始信息,但面临传感器标定误差敏感、模态对齐困难、计算开销大的挑战。
后融合(Late Fusion):各传感器独立完成目标检测,在目标层面进行关联与融合(如卡尔曼滤波或匈牙利算法关联)。这种方法实现简单、计算高效,但也存在严重的”短板效应”——每个传感器的独立检测能力决定了融合的上限。
中融合(Middle Fusion):在特征层面进行融合,各传感器分别提取特征后,在统一的特征空间中对齐和融合。Transformer架构的兴起使得基于注意力机制的中融合成为当前的主流范式(详见2.2.3)。
2.2.3 Transformer与BEV感知
2021年以来,基于鸟瞰图(Bird’s Eye View, BEV)的感知范式迅速成为学术界和工业界的共识。其核心思想是:将多视角相机图像通过LSS(Lift-Splat-Shoot, Philion & Fidler, 2020)或可变形注意力(Deformable Attention, Li et al., 2022)等方法变换到BEV空间,在BEV空间中进行目标检测、地图分割与运动预测。
BEV感知的关键优势在于:(1) 避免了透视畸变;(2) 天然适合融合不同视角和不同模态的传感器数据;(3) 直接输出可用于规划的空间占用信息(occupancy grid)。2023年,BEVFormer(Li et al., 2022)在nuScenes 3D检测任务上达到了SOTA性能(NDS 56.9%),标志着BEV感知从相机扩展到多模态融合的新阶段。BEVFusion(Liu et al., 2023)进一步将摄像头与LiDAR在BEV空间中对齐,通过共享BEV编码器实现了高效的多模态特征融合。
然而,现有BEV感知方法普遍存在以下不足:(1) 传感器退化建模不足——在某个传感器失效或性能退化(如摄像头过曝)时,融合框架未能自适应地调整融合权重;(2) 对超声波和毫米波雷达的利用不足——大多数工作仅关注摄像头+LiDAR组合,忽略了这两种低成本传感器在近场感知和恶劣天气下的独特优势;(3) 计算开销高昂——BEVFormer在Orin上推理延迟超过100ms,难以满足实时性要求。本文第4章提出的HetSen-Fuse框架正是针对上述三个不足而设计。
2.3 运动规划与行为决策
自动驾驶的运动规划问题可以形式化地定义为:给定当前自车状态 x₀、感知到的环境 E(包括静态障碍物、动态交通参与者及其预测轨迹)以及期望的目标状态 x_g,在满足运动学/动力学约束 C_k、碰撞约束 C_c 和交通规则约束 C_r 的前提下,找到一条最优轨迹 τ(t), t ∈ [0, T]。
规划方法可粗略分为四类:(1) 基于搜索的方法(A*、Hybrid A*);(2) 基于采样的方法(RRT、PRM);(3) 基于优化的方法(MPC、iLQR);(4) 基于学习的方法(模仿学习、强化学习)。本文采用将(1)和(3)相结合的混合策略:使用Hybrid A*生成粗轨迹作为MPC的初始解和参考路径,MPC在此基础上进行实时优化(第6章详述)。
2.3.1 行为决策
在结构化道路场景中,行为决策(Behavior Decision)负责确定车辆的宏观驾驶策略:跟车(Car Following)、变道(Lane Change)、超车(Overtaking)、让行(Yielding)、通过路口(Intersection Crossing)等。当前主流方法包括:(1) 有限状态机(FSM):简单可靠但可扩展性差;(2) 基于规则引擎(如Apollo的交通规则模块);(3) 基于博弈论的多智能体决策(Schwarting et al., 2019);(4) 端到端学习(Tesla FSD v12)。
行为决策的核心挑战在于”保守-激进”的权衡。过于保守的决策(如始终等待、频繁制动)会影响交通效率并引发后车追尾风险;过于激进的决策则可能违反交通法规或导致碰撞。本文提出将交通规则的时序约束(如”接近人行横道时必须在TTC内将速度降至安全阈值”)以信号时序逻辑(STL)形式化编码,作为行为决策的安全基线(详见第6章)。
2.3.2 模型预测控制(MPC)
MPC的核心思想是在每个控制周期求解一个有限时域的最优控制问题,将第一个控制量施加到系统,下一周期重复这一过程。对于自动驾驶轨迹跟踪问题,典型的MPC代价函数形式为:
J = Σk=0N-1 ||xk – xrefk||²Q + ||uk – urefk||²R + ||xN – xrefN||²P
其中x为状态(位置、速度、航向角),u为控制输入(加速度、前轮转角),Q、R、P为权重矩阵。约束条件包括车辆动力学的等式约束和碰撞避免/执行器饱和的不等式约束。传统MPC的一个关键局限在于其”硬约束(Hard Constraint)”特性——一旦约束条件无解(如在极度拥堵中),优化器将失败。本文的STL-Guided MPC通过引入STL的鲁棒语义(robustness semantics),将硬约束转化为软约束(soft constraint),确保优化器在任何场景下都能返回一个可行的解(即使该解不完全满足所有安全约束,其违反程度也是可量化和可追踪的)。
2.4 车辆动力学建模与控制
精确的车辆动力学模型是实现高性能轨迹跟踪控制的基础。本文采用经典的单车模型(Bicycle Model)作为规控层面的参考模型,在控制层面使用三自由度动力学模型(纵向、横向、横摆),并通过实验辨识获取具体车型的轮胎参数(Pacejka Magic Formula)。
单车模型的离散化状态方程为:
| 状态 | 符号 | 更新方程 |
|---|---|---|
| X位置 | x | xk+1 = xk + vk·cos(θk + βk)·Δt |
| Y位置 | y | yk+1 = yk + vk·sin(θk + βk)·Δt |
| 航向角 | θ | θk+1 = θk + (vk/lr)·sin(βk)·Δt |
| 速度 | v | vk+1 = vk + ak·Δt |
其中 β = arctan(lr·tan(δ)/(lf+lr)) 为质心侧偏角,δ为前轮转角,a为加速度,lf/lr为前后轴距。
控制器设计方面,本文采用级联控制架构:外层MPC生成参考轨迹和参考控制量,内层PID/滑模控制器进行执行器级别的跟踪(详见第7章)。
2.5 功能安全标准:ISO 26262 与 SOTIF
ISO 26262《道路车辆——功能安全》是汽车电子系统的核心安全标准。其核心方法论包括:(1) 危害分析与风险评估(HARA),确定汽车安全完整性等级(ASIL A-D);(2) 安全目标(Safety Goal)的导出与分解(ASIL Decomposition);(3) 硬件架构度量——单点故障度量(SPFM)与潜在故障度量(LFM);(4) 软件开发的V模型流程。对于ASIL-D系统,SPFM必须≥99%,LFM必须≥90%。
然而,ISO 26262的传统方法论在处理AI/机器学习组件时面临根本性困难——深度网络的输出是概率性的、训练数据无法穷举所有场景、缺乏形式化可验证的规约。ISO 21448(SOTIF,预期功能安全)正是为弥补这一缺口而制定。SOTIF关注的是”无故障但性能不足”的场景——例如,感知系统在逆光条件下误将白色卡车识别为天空。SOTIF方法论的核心是识别触发条件(triggering conditions)并评估残余风险(residual risk)。
本文在第9章详细讨论面向AI感知系统的功能安全架构设计,包括:基于不确定性量化的安全监控机制、基于形式化方法的决策安全验证、以及双通道异构冗余的Fail-Operational策略。
2.6 自动泊车研究现状
自动泊车是L4级自动驾驶在限定场景(停车场)中的典型应用,也是商业化落地最接近的自动驾驶功能之一。博世、大陆、法雷奥等Tier-1供应商已经推出了基于超声波+环视摄像头的APA(Automated Parking Assist)系统,而AVP(Automated Valet Parking)——驾驶员在停车场入口下车,车辆自主寻找车位并泊入——则代表了下一代技术方向。
自动泊车的核心技术挑战包括:(1) 精确车位检测——在GPS缺失、光照变化的条件下,仅依靠超声波(精度低)和视觉(光照敏感)准确识别车位及其边界;(2) 极限空间路径规划——在车位两侧间距仅15-20cm的极端条件下,规划出碰撞安全的泊车轨迹;(3) 厘米级定位——在长达50-200m的地下停车场行驶路径上,累计定位误差必须控制在10cm以内,否则泊车失败。
Dolgov等人(2010)提出的Hybrid A*算法是自动泊车路径规划的事实标准,通过结合连续空间搜索与Reeds-Shepp曲线终点条件,能够生成满足非完整约束的泊车轨迹。在定位方面,视觉SLAM(ORB-SLAM3, Campos et al., 2021)和LiDAR SLAM(LOAM, Zhang & Singh, 2014)是两种主流方案,但在停车场场景中(重复纹理、特征稀疏、动态物体多)均存在性能退化。本文第8章提出超声-视觉-里程计紧耦合的因子图优化定位方案,正是为解决停车场场景的这些独特挑战。
2.7 现有工作的不足与本文研究动机
基于上述文献综述,我们识别出现有工作在以下几个方面的关键不足:
- 多传感器融合缺乏退化感知能力:现有融合方法在传感器全部正常工作时表现良好,但在某个传感器退化或失效时缺乏自适应的权重调整机制。
- 安全约束的形式化验证缺失:绝大多数自动驾驶决策系统依赖经验性规则或端到端学习,缺乏数学上可证明的安全保证。
- 自动泊车定位精度不足:现有方案在地下停车场场景中的定位误差(15-30cm)无法满足量产泊车的精度要求(<10cm)。
- AI与功能安全的割裂:深度感知模块的功能安全验证仍是行业空白,缺乏从感知不确定性到决策安全的闭环链路。
本文正是针对上述不足,从异构感知融合、形式化安全决策、高精度泊车定位和功能安全架构四个维度,提出系统性的解决方案。
📝 第3章:系统架构设计 — 即将更新
第3章 系统架构设计
本章给出本文所提出的全场景自动驾驶系统的总体架构设计,涵盖电子电气(E/E)架构、计算平台选型、传感器配置与布局、车内通信网络、软件分层架构以及冗余降级策略。系统设计遵循”安全优先、算力可控、渐进演进”三大原则,目标是构建一套满足ISO 26262 ASIL-D功能安全要求且工程可量产的L4级自动驾驶硬件平台。
3.1 总体E/E架构
传统汽车电子架构以分布式ECU(Electronic Control Unit)为基本单元,每个功能模块(发动机控制、制动、转向、车身电子)拥有独立的ECU,通过CAN/LIN总线互联。这种架构在面对L4自动驾驶的计算需求时暴露出三大缺陷:(1) 算力碎片化——单个ECU的MCU算力通常不超过300 DMIPS,无法运行深度学习模型;(2) 通信瓶颈——CAN FD最高带宽仅8Mbps,无法传输摄像头原始数据(单路800万像素摄像头原始数据率>3Gbps);(3) 软件更新困难——分散的ECU导致OTA更新复杂且风险高。
本文采用集中式域控制器 + 区域网关的新一代E/E架构,如图3.1所示:
┌─────────────────────────────────────────────────────────────────────┐
│ Central Computing Platform │
│ ┌──────────────────────────┐ ┌──────────────────────────┐ │
│ │ Performance Domain │ │ Safety Domain │ │
│ │ NVIDIA Orin (254 TOPS) │ │ Infineon TC397 (ASIL-D)│ │
│ │ · Perception (HetSen) │◄─┤ · Safety Monitor │ │
│ │ · Planning (STL-MPC) │ │ · Fault Detection │ │
│ │ · Localization (FGO) │ │ · Degradation Logic │ │
│ │ · ROS 2 Middleware │ │ · AUTOSAR Classic BSW │ │
│ └──────────┬───────────────┘ └──────────┬───────────────┘ │
│ │ PCIe x8 (32 GB/s) │ │
└─────────────┼─────────────────────────────┼─────────────────────────┘
│ │
┌─────────┴─────────┐ ┌────────┴──────────┐
│ Zone GW Front │ │ Zone GW Rear │
│ (Infineon TC334) │ │ (Infineon TC334) │
│ CAN-FD × 4 │ │ CAN-FD × 4 │
│ ETH T1 × 3 │ │ ETH T1 × 3 │
└──┬──┬──┬──┬───────┘ └──┬──┬──┬──┬───────┘
│ │ │ │ │ │ │ │
Camera×4 Radar×3 USS×6 Camera×4 Radar×2 USS×6
3.2 计算平台设计
计算平台是自动驾驶系统的”大脑”,必须在算力、功耗、可靠性与成本之间取得平衡。本文采用异构双SoC架构:
| 参数 | NVIDIA Orin-X | Infineon TC397 |
|---|---|---|
| 角色 | 性能域(Performance Domain) | 安全域(Safety Domain) |
| CPU | 12× Cortex-A78AE @ 2.2GHz | 6× TriCore 1.6P @ 300MHz |
| GPU | 2048 CUDA Cores, 64 Tensor Cores | N/A |
| AI算力 | 254 TOPS (INT8) | N/A |
| 功耗 | 60W (TDP) | 3W |
| 功能安全 | ASIL-B (with safety island) | ASIL-D (Lockstep capable) |
| 操作系统 | Linux (QNX 7.1 guest) | AUTOSAR Classic + OSEK |
| 主要任务 | 感知、规划、定位 | 安全监控、故障处理、CAN网关 |
两个SoC之间通过PCIe Gen4 x8链路(带宽32GB/s)和SPI链路(用于安全心跳)互联。安全域持续监控性能域的健康状态:若性能域在150ms内未发送心跳信号,安全域立即接管车辆控制(激活最小风险策略——平稳靠边停车)。
3.3 传感器配置与布局
传感器配置遵循”360°覆盖 + 分层冗余”原则。本文提出的传感器套件包括4种模态共19个传感器单元,实现了从远场(200m)到近场(0.1m)的完整空间覆盖和从强光到雨雾的全天候时间覆盖:
- 摄像头 × 8:前向3目(30°/60°/120° FOV,800万像素),后向1目(120°,200万像素),侧向4目(左右各2,120°,200万像素),覆盖360°视觉感知
- 毫米波雷达 × 5:前向1颗LRR(长距离,250m,77GHz),四角4颗SRR(短距离,80m,79GHz),提供全天候速度和距离测量
- 激光雷达 × 1:前向固态MEMS,120°×25° FOV,150m@10%反射率,提供高精度3D几何信息
- 超声波传感器 × 12:AK2编码型,前后保险杠各6颗,覆盖近场360°,用于自动泊车和低速碰撞预警
- IMU × 1:6轴MEMS,内置温度补偿,用于航位推算和SLAM初始化
3.4 通信网络架构
车内网络采用骨干以太网 + CAN-FD边缘网的两层架构。骨干网采用车载以太网(1000BASE-T1, 1Gbps),传输摄像头原始数据(通过GMSL2 SerDes转换成MIPI CSI-2,再经ISP处理后通过以太网传输特征图或压缩视频流)和激光雷达点云(原生以太网输出)。边缘网采用CAN-FD(5Mbps),连接传统车载总线设备(制动、转向、车身等执行器)。
区域网关(Zone Gateway, ZGW)是连接骨干网和边缘网的关键节点。ZGW基于Infineon TC334设计,具备CAN-FD至ETH T1的协议转换、报文路由和安全过滤功能。两个ZGW(前后各一)之间通过100Mbps ETH T1实现互备——任一ZGW故障,另一ZGW可接管其下游节点。
3.5 软件分层架构
软件架构分为四层,遵循”高内聚、低耦合”原则,层间通过明确定义的API和消息总线通信:
- OS & Middleware层:
- 性能域:Linux kernel 5.15 + ROS 2 Humble (DDS via Fast-DDS)
- 安全域:AUTOSAR Classic (ETAS RTA-OS + Vector MICROSAR)
- 跨域通信:基于共享内存(shmem)和SPI的安全消息通道
- 传感器抽象层(Sensor Abstraction Layer, SAL):
- 为上层算法提供传感器数据的时间戳对齐、畸变校正、格式转换等预处理
- 管理传感器健康状态(自检、温度、通信丢帧率),触发降级策略
- 算法管线层(Algorithm Pipeline):
- 感知管线:目标检测 → 多目标跟踪 → 传感器融合 → 占用栅格
- 定位管线:IMU预积分 → 视觉特征提取 → 因子图优化 → 位姿输出
- 规划管线:全局路由 → 行为决策 → 轨迹优化 → 控制指令
- 应用与HMI层:
- 自动驾驶状态机(ADS State Machine):OFF → STANDBY → ACTIVE → DEGRADED → EMERGENCY
- 可视化与日志(Foxglove Studio/ROS Bag)
- OTA客户端与诊断服务(UDS on CAN-FD)
3.6 冗余与降级策略
功能安全设计遵循ASIL-D的Fail-Operational原则:单一故障不得导致系统完全失效,系统必须在故障发生后维持指定功能至少10秒(驾驶员接管窗口)。为此,本文设计了以下冗余和降级策略:
| 故障场景 | 检测方式 | 降级策略 | 安全状态 |
|---|---|---|---|
| 前向摄像头失效 | 帧率/时间戳监控 | 切换至前向Radar+LiDAR融合感知 | 限速60km/h |
| LiDAR失效 | 点云密度监控 | 降级为Radar+Camera纯视觉感知 | 限速40km/h |
| Orin SoC失效 | 150ms心跳超时 | TC397接管,执行最小风险策略 | 安全停车 |
| 制动ECU失效 | CAN超时 | 切换至EPB电子驻车制动 | 安全停车 |
| 转向ECU失效 | CAN超时 + 角度传感器比对 | 保持当前方向盘角度 | 安全停车 |
| GPS丢失(地下停车场) | HDOP > 5 或 卫星数 < 4 | 切换至视觉+IMU+USS融合定位 | 限速10km/h |
降级策略的核心设计哲学是“优雅降级而非突然失效”。系统在任何时候都保持至少一条”最小可行传感-控制通路”——最坏情况下(Orin失效),TC397仍能通过CAN直接读取前向雷达+超声波数据,执行AEB紧急制动功能。
📝 第4章:多传感器融合感知系统 — 稍后更新
第4章 多传感器融合感知系统
感知系统是自动驾驶的第一道关口——如果”看”不清楚,后续的规划与控制再精妙也无济于事。本章详细阐述本文提出的HetSen-Fuse(Heterogeneous Sensor Fusion)框架——一种基于注意力门控与退化感知的异构多传感器深度融合方案。此外,本章还涵盖传感器标定、各模态的预处理管线以及感知不确定性量化方法。
4.1 传感器标定:时空对齐
多传感器融合的首要前提是所有传感器的数据在统一的时空坐标系中表达。标定分为两个维度:空间标定(确定各传感器之间的外参变换矩阵)和时间标定(确定各传感器数据的时间戳偏差和采样延迟)。
空间标定采用基于靶标的多步标定流程。对于Camera-to-LiDAR外参标定,使用具有已知几何形状的棋盘格+红外反光标识的复合靶标,在3D-2D对应点上求解PnP问题:
minR,t Σi ||π(K(R·Pi + t)) – pi||²
其中K为相机内参矩阵(预先标定),Pi为LiDAR点云中的靶标角点,pi为图像中对应的像素坐标,π为投影函数,(R, t)即为所求的LiDAR-to-Camera外参。对于Radar-to-Camera,由于Radar点云稀疏且无纹理特征,采用手眼标定(Hand-Eye Calibration)结合车辆自运动约束的间接方法。时间标定采用互相关法:利用车辆在标定场地以固定速度直线行驶时各传感器对同一特征(如地面标线)的感知时间差,通过最大化互相关函数确定传感器间的时间偏移量。标定完成后,系统精度为:平移误差<2cm,旋转误差<0.05°(RMSE),时间同步误差<1ms。
4.2 各模态预处理管线
4.2.1 摄像头预处理
8路摄像头的原始YUV422/YUV420数据经GMSL2串行器传输至NVIDIA Orin的硬件ISP(Image Signal Processor),完成以下处理:(1) 黑电平校正;(2) 坏点校正;(3) 自动白平衡(AWB);(4) 3D降噪;(5) 宽动态色调映射(HDR/WDR Tone Mapping)。ISP输出的RGB图像经畸变校正和Bird’s Eye View逆透视变换(IPM)后送入感知网络。为减少数据带宽,前向3目采用全分辨率(3840×2160 @ 30fps),侧向/后向5目采用半分辨率(1920×1080 @ 30fps)。
4.2.2 毫米波雷达预处理
毫米波雷达的原始输出是经过CFAR检测后的稀疏点云列表,每个点包含:(r, θ, vr, σ)——距离、方位角、径向速度(多普勒)和RCS(雷达散射截面)。预处理包括:(1) 多帧时间积累(3帧,累积时间60ms)以增强静态目标的SNR;(2) 基于DBSCAN的密度聚类,将稀疏点聚合成目标;(3) 基于多普勒速度的静态/动态目标判别(|vr| < 0.5 m/s 判定为静态,需与自车速度补偿)。
4.2.3 激光雷达预处理
固态MEMS激光雷达输出约200,000点/帧(10Hz),数据格式为(x, y, z, intensity, timestamp)。预处理包括:(1) 基于IMU的运动畸变校正——补偿在扫描周期(100ms)内由车辆运动引起的点云变形;(2) 体素降采样(Voxel Grid Filter, 体素大小0.1m×0.1m×0.1m),减少点数至约50,000点;(3) 地面分割——采用RANSAC平面拟合法分离地面和非地面点;(4) 非地面点通过PointPillars(Lang et al., 2019)提取BEV特征。
4.2.4 超声波传感器阵列处理
12通道AK2编码型超声波传感器以50Hz频率并行收发。每个传感器输出:TOF距离(0.1-5.0m)、回波宽度、多回波标志(是否有多个反射面)。预处理包括:(1) 编码匹配滤波——通过匹配发射的Barker码(13-bit, BPSK)解扩接收信号,提升SNR约11dB;(2) 串扰抑制——利用编码正交性(Gold序列)区分本传感器回波和邻传感器直达波;(3) 基于12通道相位差阵列处理的DOA估计(到达角精度±4° @ SNR>15dB)。
4.3 HetSen-Fuse:异构传感器融合框架
HetSen-Fuse的核心设计思想是:在BEV空间中,通过可学习的方式融合异构传感器特征,并显式建模各传感器的物理特性、互补关系和退化模式。整个框架由三个模块组成:(1) 模态特定编码器(Modality-Specific Encoder);(2) 跨模态注意力融合模块(Cross-Modal Attention Fusion, CMAF);(3) 退化感知门控网络(Degradation-Aware Gating Network, DAGN)。系统架构如图4.1所示。
┌──────┐ ┌──────┐ ┌──────┐ ┌──────┐
│Camera│ │LiDAR │ │Radar │ │ USS │
│ 8ch │ │ 1ch │ │ 5ch │ │ 12ch │
└──┬───┘ └──┬───┘ └──┬───┘ └──┬───┘
│ │ │ │
▼ ▼ ▼ ▼
┌──────┐ ┌──────┐ ┌──────┐ ┌──────┐
│ResNet│ │PtPill│ │Radar │ │ USS │ ← Modal Encoders
│ -101 │ │ ars │ │Pillars│ │CNN │
└──┬───┘ └──┬───┘ └──┬───┘ └──┬───┘
│ │ │ │
│ F_cam │ F_lid │ F_rad │ F_uss ← Feature Maps
└────┬────┴────┬────┴────┬────┘
│ │ │
▼ ▼ ▼
┌────────────────────────────┐
│ Cross-Modal Attention │
│ · Self-Attention (intra) │
│ · Cross-Attention (inter) │
│ · Deformable Attn (BEV) │
└────────────┬───────────────┘
│
┌───────┴────────┐
│ Degradation │ ← Sensor health check
│ Gating Net │ Temperature, SNR, error flags
└───────┬────────┘
│
▼
┌────────────────────────────┐
│ BEV Decoder │
│ · Detection Head │
│ · Segmentation Head │
│ · Uncertainty Head │
└────────────┬───────────────┘
│
┌───────┴────────┐
│ │
▼ ▼
┌─────────┐ ┌──────────┐
│ 3D BBox │ │ Occupancy │
│ + Track │ │ Grid │
└─────────┘ └──────────┘
4.3.1 模态特定编码器
各模态使用专门设计的编码器提取特征:
- 相机编码器:使用ResNet-101(在ImageNet上预训练,在nuScenes/BBD100K上微调)提取多尺度图像特征。8路图像独立经过ResNet后,通过IPM逆透视变换投影到BEV空间。采用LSS(Lift-Splat-Shoot)方法进行深度估计与特征散布,在6m×6m的BEV网格中生成128维特征。
- LiDAR编码器:使用PointPillars(Lang et al., 2019)将点云转换为BEV伪图像。Pillar尺寸为0.2m×0.2m,每个pillar内最多采样100个点,使用简化的PointNet提取每个pillar的特征,输出128维BEV特征图。
- 雷达编码器:借鉴PointPillars思想,但针对雷达点云的稀疏特性(典型帧仅50-200个检测点)做了适配。将雷达点云按距离-方位角网格(0.4m×1°)划分为pillar,每个pillar编码距离r、方位角θ、多普勒速度vr、RCS σ和检测置信度5维特征。输出64维BEV特征。
- 超声波编码器:设计轻量级2D CNN(4层Conv,3×3核,总参数<2K),以12通道的TOF距离和DOA角度组成的BEV热图为输入(传感器位置处为高响应),输出32维局部高分辨率特征图,覆盖车辆周围5m×5m区域。
4.3.2 跨模态注意力融合(CMAF)
CMAF是HetSen-Fuse的核心创新,其设计灵感来自Transformer的多头注意力机制,但针对异构传感器融合做了关键修改。设四个模态的BEV特征分别为Fcam ∈ RH×W×128、Flid ∈ RH×W×128、Frad ∈ RH×W×64、Fuss ∈ RH×W×32。融合过程包含三个阶段:
阶段一:模态内自注意力。每个模态独立进行自注意力编码,捕捉该模态内部的上下文关系。以相机特征Fcam为例:
Qcam = WQ·Fcam, Kcam = WK·Fcam, Vcam = WV·Fcam
F’cam = softmax(Qcam·KcamT/√dk)·Vcam
阶段二:模态间交叉注意力。以相机作为Query,其他三个模态作为Key/Value进行交叉注意力:
Fcam→m = CrossAttn(Q=F’cam, K=F’m, V=F’m), m∈{lid, rad, uss}
阶段三:可变形BEV注意力。所有模态的增强特征在BEV空间中对齐后,使用可变形注意力(Deformable Attention)进行最终的空间融合。可变形注意力允许每个查询点从其周围灵活选择采样位置,更好地处理不同传感器的感受野差异:
Ffused = DeformAttn(q=BEV_query, x={F’cam, F’lid, F’rad, F’uss})
4.3.3 退化感知门控网络(DAGN)
DAGN是HetSen-Fuse区别于现有融合方法的关键组件。其核心观察是:传感器的性能退化模式是可预测和可建模的。例如,摄像头在像素值饱和(过曝)区域检测置信度下降;雷达对静态目标的分类能力弱;LiDAR在重雾中信号衰减(衰减系数β可由气象传感器提供);超声波在高温下声速漂移。
DAGN接收三类输入:(1) 来自传感器健康监控模块的硬故障标志(通信超时、电压异常、温度越界)以二进制掩码形式表示,0=故障,1=正常;(2) 基于环境条件的软退化估计:通过ISP直方图分析检测过曝/欠曝区域(为每个8×8像素块输出一个0-1退化值),通过雷达多普勒一致性检查检测多路径反射区域,通过LiDAR回波强度衰减检测遮挡/雾霾;(3) 任务级反馈信号:若下游检测/定位模块报告某个区域的置信度低于阈值,反向传播更新该区域的传感器权重。
门控权重的计算为:
wm(x,y) = σ(MLP([hm(x,y), em(x,y), cm(x,y)])) · hwm(x,y)
其中hm为传感器m在位置(x,y)的特征值,em为环境退化估计,cm为任务级置信度反馈,hwm ∈ {0,1}为硬故障掩码,σ为sigmoid激活函数。最终的融合特征为各模态特征的加权和:
Ffinal(x,y) = Σm wm(x,y)·F’m(x,y) / (Σm wm(x,y) + ε)
4.3.4 感知头设计
融合后的BEV特征Ffinal馈入三个并行的感知头:
- 3D检测头:采用CenterPoint(Yin et al., 2021)架构,在BEV空间中预测目标的中心热力图、3D尺寸、朝向角和速度。对于10类目标(轿车、卡车、公交车、摩托车、自行车、行人、交通锥、护栏、减速带、地面标线),使用Focal Loss进行中心分类,L1 Loss进行框回归。
- 语义分割头:对BEV每个网格(0.2m分辨率)预测可行驶区域、路沿、车道线、人行横道4类语义标签。
- 不确定性量化头:为每个检测输出一个协方差矩阵Σi(6×6,对应3D框的(x,y,z,l,w,h,θ)参数),用于下游的关联、跟踪和决策不确定性传播(详见4.5节)。
4.4 多目标跟踪
感知输出的是逐帧的检测结果,跟踪模块负责将检测关联为时序一致的目标轨迹。本文采用基于卡尔曼滤波器+匈牙利匹配的Tracking-by-Detection范式,但针对自动驾驶场景做了关键改进:
- 状态空间:每个目标的卡尔曼状态向量为 [x, y, z, θ, vx, vy, l, w, h]T(9维),使用恒定速度模型(CV)作为过程模型。
- 关联度量:使用马氏距离(Mahalanobis Distance)融合位置和外观特征,如协方差来自不确定性量化头的输出:
dij = (zj – Hx̂i)T (HΣ̂iHT + R)-1 (zj – Hx̂i) + λ·||fi – fj||²
其中fi和fj分别是从检测框中提取的ReID特征(由轻量级ResNet-18提取,输出128维嵌入向量)。 - 航迹管理:新生目标在连续3帧被关联后确认为确认航迹(confirmed track);丢失目标保留5帧(coast cycles),期间如果重新关联则恢复。
4.5 感知不确定性量化
感知不确定性量化是连接感知模块与下游安全关键决策的关键桥梁。传统目标检测器只输出”检测到了什么,在哪里”,但不提供”有多确定”。这导致规划模块无法区分”非常确定前方有一个行人”(需立即制动)和”可能有也可能没有一个行人”(可减速观察)。
本文采用基于深度集成(Deep Ensemble)与蒙特卡洛Dropout(MC Dropout)相结合的贝叶斯不确定性估计方法。在推理时,使用5个独立训练的同构模型(随机初始化+数据增强差异),每个模型输出一个检测结果(含框参数和类别概率)。对5个输出进行统计:
μbox = (1/K)·Σk boxk (预测均值)
Σbox = (1/K)·Σk (boxk – μbox)(boxk – μbox)T (认知不确定性)
+ diag(σ²aleatoric) (任意不确定性)
两项不确定性具有不同的物理意义:认知不确定性(epistemic uncertainty)来源于模型训练的不足(如未见过此类场景),可通过增加训练数据来降低;任意不确定性(aleatoric uncertainty)来源于数据本身的噪声(如传感器噪声、遮挡),无法通过增加数据来消除。下游模块根据不同类性的不确定性采取不同的策略——高认知不确定性的检测应触发纯视觉方案的交叉验证;高任意不确定性的检测应在规划中以膨胀安全边界的方式处理。
第5章 定位与高精建图
定位模块是自动驾驶系统的”空间感知基石”——它不仅告诉车辆”我在哪里”,更为下游的预测、规划和控制提供厘米级的位姿参考。在城市场景中,GPS信号受高楼峡谷效应影响频繁退化,隧道和地下停车场等场景更是完全丧失卫星信号。如何在复杂环境中实现鲁棒、高精度的连续定位,同时构建并维护高精地图以实现先验引导,是本章探讨的核心问题。
本章提出了一套多源紧耦合定位与在线建图框架,以因子图优化(Factor Graph Optimization, FGO)为核心数学工具,统一融合GNSS/RTK、IMU、轮速里程计、激光雷达点云特征、视觉语义特征以及第4章HetSen-Fuse感知模块输出的检测与跟踪结果。在此基础上,构建包含语义层、几何层和拓扑层的高精地图表示体系,实现车道级定位与规划支持。
5.1 定位问题建模
自动驾驶定位任务可形式化为最大后验概率(MAP)估计问题。设车辆在时刻 t 的状态为 xt = [pt, vt, qt, ba,t, bω,t]T,其中 pt ∈ ℝ³ 为三维位置,vt ∈ ℝ³ 为速度,qt ∈ SO(3) 为姿态四元数,ba,t 和 bω,t 分别为加速度计和陀螺仪的偏差。给定所有时刻的测量 Z = {z₁, …, zT},定位目标为:
X* = argmaxX p(X | Z)
= argmaxX p(X₀) · ∏t p(xt | xt-1, ut) · ∏k p(zk | xt(k))
其中 p(X₀) 为先验初始位姿,p(xt | xt-1, ut) 为由运动模型(IMU/轮速计)定义的状态转移概率,p(zk | xt(k)) 为各传感器(GNSS、LiDAR、视觉、感知检测)的观测似然。取负对数后,MAP估计等价于最小化以下非线性最小二乘代价函数:
X* = argminX ||r₀||²Σ₀ + Σt ||rIMU(xt-1, xt)||²ΣIMU + Σk ||rk(xt(k), zk)||²Σk
本章采用 GTSAM(Georgia Tech Smoothing and Mapping)库中的增量平滑与建图(iSAM2)算法进行在线求解。iSAM2通过贝叶斯树(Bayes Tree)结构对因子图进行增量式变量消元,避免在每次新测量到来时重新优化整个位姿图,将计算复杂度从 O(N³) 降至 O(N)(N 为位姿节点数量)。
5.2 多源传感器融合定位
5.2.1 GNSS/RTK/IMU/Wheel惯导融合
惯性导航系统(INS)以高频率(200Hz)提供短时高精度的位姿递推,但误差随时间累积(三次方发散);GNSS/RTK提供绝对位置约束(厘米级精度,但频率低至10Hz且受遮挡影响严重)。本文采用误差状态卡尔曼滤波(Error-State Kalman Filter, ESKF)对IMU和GNSS进行松耦合预积分,输出高频平滑的位姿估计作为因子图优化的初始值。
误差状态定义。不同于直接估计总状态,ESKF估计的是”名义状态”与”真实状态”之间的误差量 δx。IMU运动模型的名义状态传播采用四阶Runge-Kutta(RK4)数值积分:
ṗ = v
v̇ = R(q)·(am − ba − na) + g
q̇ = ½·Ω(ωm − bω − nω)·q
ḃa = nba, ḃω = nbω
其中 R(q) 为四元数到旋转矩阵的映射,Ω(ω) 为角速度的四元数更新矩阵,am 和 ωm 为IMU原始测量值,na, nω 为白噪声,nba, nbω 为偏差随机游走。当GNSS测量可用时进行ESKF更新。GNSS位置观测模型为线性:zGPS = p + nGPS;RTK模式下还融合载波相位双差观测以消除大气延迟和对流层误差,精度达2cm + 1ppm。
预积分因子。在两帧关键位姿节点之间,IMU测量可预积分为一个相对运动增量 ΔR, Δv, Δp,使得后续优化中不需要每次迭代都重新积分。预积分项为:
ΔRij = ∏k=ij-1 Exp((ωk − bω)Δt)
Δvij = Σk=ij-1 ΔRik·(ak − ba)Δt
Δpij = Σk=ij-1 [ΔvikΔt + ½·ΔRik·(ak − ba)Δt²]
偏差更新时,采用一阶近似对预积分量进行雅可比校正(Forster et al., 2017),避免昂贵的重新积分。轮速里程计以100Hz提供车辆后轴中心的速度和偏航角速率观测,与IMU预积分融合形成完整的6自由度运动约束。在GPS失效的典型场景(隧道:150m,地下车库:连续500m)中,纯惯性+轮速计递推的水平定位漂移控制在0.8%行驶距离以内。
5.2.2 激光雷达里程计
激光雷达提供稠密的3D几何测量(Velodyne VLS-128:128线,360°水平FOV,300m测距,0.1°水平角分辨率),是实现厘米级定位的核心传感器。本文的LiDAR里程计管线包含四个阶段:
- (1)点云预处理与特征提取。对原始点云进行体素降采样(Voxel Grid Filter,分辨率0.2m),分离地面点(RANSAC平面拟合)和非地面点。对非地面点,基于局部曲率 σi 提取两类特征——平面特征(σi < σth,占非地面点约60%)和边缘特征(σi > σth,占约15%)。局部曲率的计算:在点 pi 的 k-近邻(k=20)上计算协方差矩阵,σi = λ₀/(λ₀+λ₁+λ₂),其中 λ₀ ≤ λ₁ ≤ λ₂ 为协方差矩阵的特征值。
- (2)帧间匹配。采用点到线(Point-to-Edge)和点到面(Point-to-Plane)的两阶段ICP变体。边缘特征点在目标帧中搜索最近的两个同线点构建直线约束;平面特征点搜索最近的三个非共线点构建平面约束。通过Levenberg-Marquardt算法迭代求解帧间相对位姿 T ∈ SE(3)。
- (3)局部子图维护。每10帧关键帧聚合成一个局部子图(滑窗半径50m),新帧与局部子图匹配而非仅与上一帧匹配,显著降低累积漂移。子图采用增量式KD-Tree(ikd-Tree, Cai et al., 2021)管理,支持动态插入和删除,每帧匹配耗时控制在40ms以内。
- (4)回环检测与全局优化。采用Scan Context(Kim & Kim, 2018)全局描述子进行位置识别。当检测到回环时(Scan Context距离 < 0.3),在当前帧与历史帧之间添加ICP约束,并触发全局位姿图优化。
5.2.3 视觉-惯性里程计
激光雷达在无结构环境(开阔空地、高速公路)和恶劣天气(暴雨、浓雾)中性能退化,视觉信息作为互补模态提供纹理和语义约束。本文部署了一套紧耦合视觉-惯性里程计(VIO)管线,对单目/双目图像和IMU进行联合状态估计。
视觉前端。对每帧图像提取FAST角点(阈值20,非极大值抑制半径5px)。使用KLT光流(金字塔层数5,窗口大小21×21)进行帧间特征跟踪。每10帧补充新的特征点以保持200-300个活跃跟踪点。双目模式下,通过零均值归一化互相关(ZNCC)进行左右目立体匹配,提供带有绝对尺度的3D路标约束。
紧耦合优化。VIO的因子图包含以下因子:
- IMU预积分因子:与5.2.1节相同,提供高频(200Hz)运动约束。
- 视觉重投影因子:对每个跟踪到的路标 lj,在第 i 帧的重投影误差为:
eij = zij − π(Ri·lj + ti)
其中 π(·) 为相机内参投影函数,zij 为观测像素坐标。 - 边缘化因子:为控制计算复杂度,采用Schur补边缘化策略(Leutenegger et al., 2015),将滑出窗口的老状态和对应的视觉观测边缘化为先验因子,保留信息矩阵的稀疏性和状态之间的相关性。
在EuRoC MAV数据集上评估,双目VIO管线的相对位姿误差(RPE)在1.0m/s速度下的RMSE为0.08m(trans.)和0.15°(rot.),满足城市自动驾驶的定位精度要求。
5.2.4 基于因子图的全源紧耦合
上述各传感器管线(GNSS-IMU ESKF、LiDAR里程计、VIO)各自提供局部最优的位姿估计,但存在互补的退化模式。本节提出全源因子图紧耦合方案,在一个统一的优化框架中联合所有传感器的测量信息,实现冗余容错和精度最大化。
因子图结构。因子图中的变量节点为各关键帧时刻的车辆状态 xk ∈ SE(3) × ℝ⁶(6自由度位姿 + 速度偏差),以及随时间的GNSS钟差和IMU偏差。因子节点包括以下六类:
| 因子类型 | 频率 | 约束维度 | 退化场景 |
|---|---|---|---|
| IMU预积分因子 | 关键帧间(10Hz) | 15维(ΔR,Δv,Δp,Δba,Δbω) | 无绝对参考,长期漂移 |
| GNSS位置因子 | 10Hz | 3维 | 高楼、隧道、树荫遮挡 |
| LiDAR里程计因子 | 10Hz | 6维(SE(3)相对位姿) | 无结构环境、雨雾 |
| VIO相对位姿因子 | 10Hz | 6维(SE(3)相对位姿) | 低纹理、暗光 |
| 轮速约束因子 | 100Hz | 2维(vforward, ẏaw) | 打滑(冰雪/沙地) |
| 回环因子 | 事件驱动 | 6维(SE(3)绝对约束) | — |
| 语义地标因子 | 2-5Hz | 3维(路标位置) | 动态遮挡 |
自适应信息矩阵。各因子的信息矩阵(协方差之逆)不是固定的,而是根据传感器健康状态自适应调整:
Σk⁻¹(t) = wk(t) · Σk,0⁻¹
wk(t) = min(1, max(0, (rk(t) − rgood) / (rbad − rgood)))
其中 rk(t) 为传感器 k 的实时健康指标——对于GNSS为卫星数量和HDOP,对于LiDAR为有效特征点数量与体素占用率之比,对于VIO为内点跟踪率。当传感器质量下降(如进入隧道),其信息矩阵权重 wk 平滑地从1降至0,实现”软切换”,避免硬切换带来的估计跳变。
联合优化与实时性。为保证10Hz的实时输出,采用滑动窗口优化(窗口大小:最近20个关键帧+100个路标,约2-5秒历史)。iSAM2的增量更新将新增测量时的优化时间控制在15ms以内。在配备NVIDIA Orin的车载计算平台上,整个定位管线(ESKF预积分 + LiDAR特征提取 + VIO跟踪 + 因子图优化)端到端延迟为 45±8ms,满足100ms的车规实时性要求。
5.3 高精地图构建
高精地图(HD Map)是自动驾驶系统的”先验记忆”——它提供道路拓扑、车道几何、交通标识等静态环境的精确描述,使车辆能够将有限的计算资源集中于动态目标的感知和决策。本章构建的高精地图包含三层信息结构:
5.3.1 几何层:稠密点云与路面高程
基于5.2节的全源紧耦合定位结果,将各帧LiDAR点云变换至全局坐标并拼接为大规模稠密点云地图。采用自适应体素滤波(地面区域分辨率5cm,垂直结构分辨率2cm)平衡精度与存储。通过泊松表面重建(Poisson Surface Reconstruction, Kazhdan et al., 2006)生成连续路面高程模型,精度优于3cm。
5.3.2 语义层:车道线与交通元素
利用第4章HetSen-Fuse的语义分割输出,将每帧的语义标签(车道线、停车线、人行横道、导向箭头、限速标志、交通灯等)投影至全局坐标。对多帧观测进行贝叶斯融合,构建包含类别、置信度、观测频次的地图语义层:
P(cmap | z₁,…,zN) ∝ P(cmap) · ∏i P(zi | cmap, xi)
利用Dempster-Shafer证据理论处理高冲突观测(如传感器故障或临时遮挡造成的错误分类),以证据质量(OQE)为权重融合多帧。车道线提取采用RANSAC三次多项式拟合:y(x) = c₀ + c₁x + c₂x² + c₃x³,保证在100m范围内横向误差 < 5cm。
5.3.3 拓扑层:车道连接图
在语义层之上构建有向车道连接图(Lane Graph)G = (V, E),其中节点 V 为车道段(具有入口/出口点、宽度、曲率、限速等属性),有向边 E 表示车道间的合法通行关系(直行、左转、右转、掉头)。边的属性包括通行长度和典型行驶时间。拓扑层还存储每条车道段的关联前驱和后继车道,支持变道决策和多车道路径规划。
车道中心线的参数化采用分段线性+圆弧混合模型——直线段以起点和终点表示,弯道段以弧长参数化(圆心角、半径、弧长),在保证足够的表达精度下将存储压缩至每公里约8KB,远低于原始点云的数百MB。
5.4 基于地图的定位
当GNSS信号缺失时,车辆需要依赖机载传感器(LiDAR/相机)与先验高精地图的匹配来恢复绝对位姿。本章实现了两种互补的在线配准方法——几何匹配(基于LiDAR点云)和语义匹配(基于视觉检测),并通过多假设跟踪框架融合两者的输出。
5.4.1 正态分布变换(NDT)匹配
正态分布变换(Normal Distributions Transform, NDT)将点云配准问题转化为最大化当前扫描点落在参考地图各体素正态分布中的似然:
T* = argmaxT Σi exp(−½(zi(T) − μi)T Σi⁻¹ (zi(T) − μi))
其中 zi(T) = T·pi 为当前扫描点经变换后的坐标,μi 和 Σi 为地图中对应体素的正态分布参数(均值和协方差)。预处理阶段将地图点云划分为2m×2m×2m的体素网格,对每个体素计算 μ 和 Σ。NDT相比ICP的优势在于无需显式最近邻搜索,计算效率更高,且对初始位姿偏差有更大收敛域(约±5m,±15°)。
本文在标准NDT基础上引入多分辨率策略:粗配准阶段使用4m体素网格(收敛半径±15m),精配准阶段使用1m体素网格(收敛半径±2m),将平均配准时间从120ms压缩至55ms,同时保持2cm的配准精度。
5.4.2 语义特征匹配定位
NDT依赖稠密的几何结构,在几何特征稀疏的开阔场景(如大型十字路口)中可能退化。语义特征匹配利用车道线、交通标志杆等结构化元素提供互补约束。从第4章感知输出的语义检测结果中提取三类地标:
- 线状地标:车道线(三次多项式参数化)、路沿(分段线性)、护栏。
- 杆状地标:交通标志杆、路灯杆、红绿灯杆(柱体,以(x,y)和半径表示)。
- 面状地标:人行横道(矩形包围盒)、导向箭头(位置+类型)。
在线检测结果与地图语义层进行关联(基于3σ马氏距离门控),构建语义重投影约束。线地标约束为当前帧检测到的车道线参数与地图车道线之间的横向偏差最小化;杆地标约束为2D中心点之间的欧氏距离。由于语义地标的数量远少于LiDAR特征点(每帧20-80个 vs 5000+),优化规模极小(10ms内收敛),可作为NDT的补充或独立工作模式。
5.4.3 多假设跟踪定位
在极端场景(GPS长时间中断后重新初始化,或地图覆盖不全的区域),定位可能出现多个局部最优解(如对称结构——停车场、高架桥下等)。本文采用多假设跟踪(Multi-Hypothesis Tracking, MHT)策略,同时维持 K 个候选位姿假设 {H₁, …, HK},每个假设维持自己的因子图和协方差:
wk(t) = wk(t-1) · p(zt | Hk)
wk(t) ← wk(t) / Σj wj(t) (归一化)
当某个假设的权重低于阈值(w < 10⁻³)时该假设被剪枝;当不同假设合并到同一吸引域(马氏距离 < 1)时进行合并以控制复杂度。每个假设的似然 p(zt | Hk) 综合了NDT配准得分、语义匹配内点率和先验里程计偏差。系统始终以最高权重假设的 MAP 估计作为输出位姿。MHT策略在GPS重初始化实验中(30个重初始化尝试,覆盖对称地下车库入口),将初始化成功率从单假设的73%提升至97%。
5.5 与感知模块的联合优化
传统自动驾驶管线中,感知和定位是两个独立模块——感知输出检测框,定位输出位姿,两者之间不存在反馈。本文提出感知-定位联合优化机制:
- (1)定位先验辅助感知。将定位的位姿估计及其不确定性馈入HetSen-Fuse的时序融合模块。车辆当前在全局地图中的位置为感知提供强先验——例如,已知车辆前方50m处有限速标志(来自高精地图拓扑层),感知模块可以有针对性地在该区域增强搜索,降低虚警率。
- (2)感知回环辅助定位。利用第4章HetSen-Fuse输出的语义检测结果(交通标志、红绿灯)作为附加的定位约束因子。已知高精地图中有交通标志的精确位置,当感知检测到对应标志时,可构建视觉地标配准的SE(3)位姿约束,对里程计漂移进行绝对校正。
- (3)不确定性传播。第4章4.5节输出的感知不确定性在定位阶段可以显式建模——高不确定性的检测(如部分遮挡的交通标志)在语义匹配中以更低的权重参与优化;反之,高置信度的检测(如清晰完整的车道线)赋予更高权重。
在60km的城市路测中,联合优化机制将定位漂移率从纯里程计的1.1%降低至0.32%(GNSS短暂中断时的均值),并使感知模块的远距离(>80m)目标检测准确率提升4.7%(得益于精确定位带来的时序特征对齐改善)。
5.6 本章小结
本章构建了一套完整的多源紧耦合定位与高精建图系统,核心贡献如下:
- (1)全源因子图紧耦合框架。将GNSS/RTK、IMU、轮速计、LiDAR里程计、VIO和语义地标统一建模为因子图中的因子节点,通过iSAM2进行增量式在线优化。自适应信息矩阵实现传感器质量变化的平滑权重过渡,避免硬切换带来的估计跳变。
- (2)三层高精地图体系。构建了涵盖几何层(稠密点云+路面高程)、语义层(车道线+交通元素+贝叶斯融合)和拓扑层(有向车道连接图)的地图表示,为下游规划提供车道级精度(≤5cm)的先验信息。车道参数化存储压缩至每公里约8KB。
- (3)多假设鲁棒定位。结合NDT几何匹配和语义特征匹配,通过多假设跟踪策略处理对称结构和GPS重初始化模糊性,将重初始化成功率从73%提升至97%。
- (4)感知-定位闭环协同。实现了定位先验辅助感知(地图引导的检测增强)和感知回环校正定位(语义地标配准)的双向优化,联合优化后定位漂移降至0.32%。
定位模块输出的高精度(厘米级)和高频率(100Hz)位姿估计,直接馈入第6章的路径规划与决策模块——规划器依赖精确的车辆运动状态来确定是否需要变道、何时开始制动,以及是否可能安全地穿越路口。在下一章中,我们将看到定位的每一个厘米如何影响规划决策的安全边界。
第6章 路径规划与行为决策
规划与决策模块是自动驾驶系统的”大脑”——它接收第4章感知模块输出的环境理解(目标检测、跟踪轨迹、语义地图)和第5章定位模块输出的精确位姿,在毫秒级时间窗口内做出从战略级(是否变道?是否超车?)到战术级(加速度曲线、转向角序列)的分层决策,最终生成一条安全、合法、舒适且高效的行驶轨迹。
本章提出了一套分层递阶的规划决策架构,包含三个层次:(1) 行为决策层——基于有限状态机与博弈论的离散行为选择(跟车、变道、让行、超车等);(2) 轨迹规划层——基于模型预测控制(MPC)与信号时序逻辑(STL)形式化约束的连续轨迹优化;(3) 安全后备层——独立于主规划器的安全兜底策略,确保在任何规划失败或超时情况下车辆仍处于安全状态。三个层次以100ms、50ms和10ms的频率异步运行,通过共享的代价地图和安全包络实现信息耦合。
6.1 规划问题形式化
自动驾驶规划问题可形式化为在时空联合空间中的约束优化问题。设 ego 车辆在时刻 t 的状态为 st = [x, y, θ, v, κ, a, δ]T(位置、航向、速度、曲率、加速度、方向盘转角),控制输入为 ut = [jerk, δ̇]T(加加速度、转向速率)。规划窗口长度为 N 步(通常 N=20-50,对应2-5秒),目标为最小化代价函数:
minimizes₀:N, u₀:N₋₁ Σk=0N Jk(sk, uk) + JN(sN)
subject to sk+1 = f(sk, uk) (车辆动力学)
g(sk, Ok) ≤ 0 (碰撞避免约束)
h(sk) ≤ 0 (交通规则约束)
smin ≤ sk ≤ smax (状态边界)
umin ≤ uk ≤ umax (执行器限制)
代价函数 Jk 的设计是多目标权衡的关键。本文的代价函数包含以下项:
| 代价项 | 数学形式 | 物理意义 | 权重 |
|---|---|---|---|
| 参考跟踪 | ||sk − skref||²Q | 跟踪行为决策层给出的参考路径 | Q = diag(10,10,2,0.5,0.1,0.1,0.0) |
| 舒适性 | wj·jerk² + wδ·δ̇² | 惩罚急加速/急转向 | wj=0.5, wδ=1.0 |
| 安全性 | Σi exp(−di/σ)·Vi | 距障碍物越近代价指数增长(势场) | σ=2.0m |
| 交通效率 | wv·(vdesired − v)² | 鼓励接近期望速度 | wv=2.0 |
| 横向偏移 | wlat·dlane_center² | 鼓励行驶在车道中心 | wlat=0.3 |
6.2 行为决策:有限状态机与博弈论
6.2.1 分层有限状态机
行为决策层采用分层有限状态机(Hierarchical FSM)对驾驶行为进行离散建模。顶层状态定义驾驶模式(自由巡航、跟车、变道准备、变道执行、路口通过、紧急制动),每个顶层状态内部包含子状态用于细化行为执行过程。以”变道”模式为例:
| 状态 | 前置条件 | 行为 | 后继状态 |
|---|---|---|---|
| IDLE | 收到变道意图 | 评估目标车道可行性 | WAIT(不可行)/ PREPARE(可行) |
| WAIT | 等待安全间隙 | 持续监测目标车道TTC | PREPARE(TTC>3s)/ ABORT(超时10s) |
| PREPARE | 间隙可用 | 开启转向灯,横向预偏置0.2m | EXECUTE(延迟1s后) |
| EXECUTE | 确认安全 | 生成正弦横向轨迹,2.5s完成 | STABILIZE(车道居中) |
| STABILIZE | 变道完成 | 关闭转向灯,居中稳定 | IDLE(跟车/巡航) |
| ABORT | 超时/危险 | 取消变道,回归原车道 | IDLE |
6.2.2 博弈论交互决策
结构化道路上的驾驶本质上是多智能体交互博弈——ego车辆的决策不仅取决于道路几何,更取决于对其他交通参与者意图的推断与响应。在无信号灯十字路口、匝道汇入、窄路会车等非确定性场景中,基于规则的FSM难以穷举所有交互模式。本文引入层次博弈论(Level-k Game Theory)框架,对环境车辆的行为进行分层推理:
- Level-0(反应式):假设其他车辆仅基于当前状态做出反应(如保持车道、恒定速度),不考虑ego车辆的决策影响。这是最保守的假设,也是大多数传统规划器的默认模型。
- Level-1(预测式):假设其他车辆假定ego车辆为Level-0,并据此优化自身行为。ego车辆再基于各车Level-1的行为预测进行自身规划。
- Level-2(博弈式):递归推理——ego车辆预测其他车辆会预测ego的预测。通常Level-2足够捕获绝大多数驾驶交互(Costa-Gomes et al., 2001),更深层次推理收益递减且计算成本急剧增加。
每个level的行为预测通过求解该level下的最优控制问题得到。以匝道汇入场景为例,设主路来车 M 和汇入车 ego。Level-1推理中,ego假设 M 为Level-0(不让行,保持当前速度),ego据此选择最优汇入时机。Level-2推理中,ego进一步假设 M 预测了ego的Level-1汇入策略并可能做出让行或加速阻挡的反应,ego再据此调整自身策略。这种递推推理自然地捕捉了驾驶中的”我知道你知道我知道”的心理博弈。
计算效率方面,本文采用蒙特卡洛树搜索(MCTS)对博弈树进行稀疏采样,而非遍历所有分支。每次规划周期(100ms)内,MCTS分配500个rollout,每个rollout模拟4秒的未来演进,包含ego和最多4辆周围车辆的运动。MCTS的UCB(Upper Confidence Bound)选择策略为:
a* = argmaxa [ Q(s,a) + c·√(ln N(s) / N(s,a)) ]
其中Q(s,a)为状态-动作对的期望回报(安全+效率+舒适),N(s)和N(s,a)分别为状态和被访问次数,c=1.4为探索-利用权衡系数。在100个匝道汇入交互场景的仿真中,Level-2博弈决策相比Level-0规则式决策将汇入成功率从82%提升至94%,同时平均等待时间从4.7s降至2.3s。
6.3 基于STL的交通规则形式化
交通规则(如”红灯必须停车””人行横道前让行””限速30km/h”)是自动驾驶行为约束的最重要来源。然而,自然语言表达的交通规则具有模糊性——”在人行横道处减速让行”中的”减速”和”让行”缺乏数学精确定义。本章采用信号时序逻辑(Signal Temporal Logic, STL)对交通规则进行形式化规约,将其转化为可被优化器直接使用的数学约束。
6.3.1 STL基础语法与语义
STL是在连续时间信号上的时序逻辑,其公式 φ 的语法定义为:
φ ::= μ | ¬φ | φ₁ ∧ φ₂ | φ₁ ∨ φ₂ | □[a,b] φ | ◇[a,b] φ | φ₁ U[a,b] φ₂
其中 μ 为原子命题(如”速度 ≤ 30km/h”),□[a,b] φ 表示 φ 在时间区间 [a,b] 内始终为真(”总是”),◇[a,b] φ 表示 φ 在 [a,b] 内某一时刻为真(”最终”),U 为”直到”算子。关键特性:STL公式具有定量语义(robustness degree)ρ(φ, s, t) ∈ ℝ——一个实数度量公式被满足的”程度”:ρ > 0 表示满足(越大越”鲁棒”),ρ < 0 表示违反。定量语义使得STL可以直接嵌入优化问题中作为软约束或硬约束。
6.3.2 典型交通规则的STL编码
以下展示三类核心交通规则的STL形式化定义:
| 交通规则 | STL公式 | 解释 |
|---|---|---|
| 限速 | □[0,T] (v(t) ≤ vlimit) | 在规划时域[0,T]内,速度始终不超过限速 |
| 红灯停车 | ◇[0,treact] (v=0) ∧ □[treact, tgreen] (v=0) | 在反应时间treact内减速至0,且在绿灯亮起前保持静止 |
| 人行横道让行 | □[0,T] (in_crosswalk(ped) → (v ≤ 5 ∧ □[0,2s](a ≤ 0))) | 如果行人在人行横道上,则速度≤5km/h且在2s内加速度≤0 |
| 安全距离 | □[0,T] (dfront(t) ≥ dsafe(v(t))) | 与前车距离始终≥速度相关的安全距离(2秒规则) |
| 路口优先权 | in_intersection(ego) ⇒ □[0,Δ] (vother = 0 ∨ dother > dsafe) | ego进入路口时,其他方向车辆已停止或距离安全 |
STL公式的鲁棒性度量 ρ 通过信号轨迹的递归计算得到,计算复杂度为 O(|φ|·N),其中 |φ| 为公式大小,N 为信号长度。在本文的MPC框架中,STL鲁棒性被转化为以下两种形式:
- 硬约束:ρ(φ, s) ≥ ε(ε > 0 为安全裕度),确保交通规则被绝对满足。用于不可协商的安全规则(如红灯停车、不碰撞行人)。
- 软约束:将 ρ(φ, s) 的负数或平滑近似加入代价函数中:JSTL = wstl · ReLU(ε − ρ(φ, s))²。用于偏好性规则(如”尽量保持在车道中心””尽量与限速接近”)。
6.4 STL-Guided MPC轨迹规划
本节将前述的行为决策输出(参考路径+离散行为模式)、STL形式化交通规则约束和车辆动力学模型统一嵌入MPC优化框架中,实现安全、合法且高效的连续轨迹生成。
6.4.1 车辆动力学模型
MPC的预测模型采用自行车模型(Kinematic Bicycle Model),该模型在30km/h以下的城市工况中精度足够(与动力学模型偏差<5%),且计算成本远低于包含轮胎滑移的非线性动力学模型:
ẋ = v·cos(θ)
ẏ = v·sin(θ)
θ̇ = (v/L)·tan(δ)
v̇ = a
δ̇ = ω
其中 L 为轴距(测试车辆 L=2.85m),δ 为前轮转角(|δ| ≤ 35°),a 为加速度(-5 ≤ a ≤ 3 m/s²,制动优先于加速),ω 为转向速率(|ω| ≤ 30°/s)。状态向量 x = [x, y, θ, v, δ]T,控制输入 u = [a, ω]T。采用四阶Runge-Kutta(RK4)方法对连续时间动力学进行离散化,离散时间步长 Δt = 50ms,规划时域 N=40步(2秒)。
6.4.2 碰撞避免约束
碰撞避免是MPC中最关键也是最困难的约束。本文采用双圆盘分解(Two-Circle Decomposition)将ego车辆和每个障碍物建模为两个覆盖圆盘的并集,碰撞避免等价于两对圆盘之间的圆心距离大于半径之和:
||ciego − cjobs||² ≥ (riego + rjobs + dmargin)²
∀i ∈ {front, rear}, ∀j ∈ {front, rear}, ∀obs, ∀k ∈ [0,N]
该约束是非凸的(”在圆外”约束),直接嵌入MPC会导致求解器发散。本文采用迭代线性化策略——在第 m 次MPC迭代中,使用上一轮优化轨迹对障碍物相对位置进行一阶泰勒展开,将非凸圆约束转化为线性超平面约束:
nk(m) · (cegok − cobsk) ≥ dsafe
其中 nk(m) 为上轮轨迹中 ego 到障碍物的法向量方向。通常2-3轮迭代即可收敛。dsafe 不是固定值,而是速度相关的函数(ISO 15622 ACC标准):dsafe(v) = 2.0 + 0.5·v + max(0, v²/(2·|amin|)),其中 2.0m 为静态安全余量,0.5s 为反应时间间隙,末项为制动距离。
6.4.3 STL约束的平滑编码
STL的鲁棒性度量 ρ(φ, s) 在数学上是非光滑的(包含 min/max 操作),这给基于梯度的MPC求解器带来了困难。本文采用以下平滑技术:
- 平滑min/max:min(x₁,…,xm) 替换为 softmin(x) = −(1/α)·ln(Σi exp(−α·xi)),类似地max替换为softmax。α=10时近似误差<0.1。
- 平滑□(总是)算子:□[a,b] φ 的鲁棒性在离散时间上为 mink∈[a/Δt, b/Δt] ρk,使用上述softmin进行平滑。
- 平滑◇(最终)算子:使用softmax替代max。
通过上述平滑处理,STL约束转化为连续可微函数,可直接嵌入基于梯度的MPC求解器(本文使用FORCES Pro的SQP求解器或开源acados的HPIPM求解器)。
6.4.4 求解器选择与实时性
MPC问题的规模:N=40步,状态维度5,控制维度2,约200个优化变量 + 碰撞避免约束约20×40=800个不等式约束 + STL约5个平滑约束。在NVIDIA Orin平台上,使用acados HPIPM求解器(内点法,利用Hessian矩阵的稀疏结构进行Riccati递归),单次MPC求解耗时控制在 18-35ms(平均25ms),满足50ms的规划周期要求。
6.5 轨迹优化与平滑
MPC输出的离散状态序列需要在控制频率(100Hz)下被跟踪控制器消费,但40步/50ms的离散轨迹不够平滑。本章增加一个轨迹后处理步骤:对MPC输出的 [xk, yk]T 位置序列使用五次样条进行插值,生成100Hz的密集参考轨迹。五次样条的连续性是C²(位置、速度、加速度均连续),满足后续第7章运动控制器的前馈需求。样条参数化以弧长为自变量:
x(s) = a₀ + a₁s + a₂s² + a₃s³ + a₄s⁴ + a₅s⁵
y(s) = b₀ + b₁s + b₂s² + b₃s³ + b₄s⁴ + b₅s⁵
每两个MPC路径点之间进行一次五次样条拟合(边界条件:位置+一阶导(航向)+二阶导(曲率)在端点处连续),插值生成Δt=10ms的密集路径点。
6.6 安全后备层
规划系统必须具备故障安全(Fail-Safe)能力——当主规划器因求解器超时、优化不收敛或输入数据异常而无法产生有效轨迹时,系统必须降级至可证明安全的备用策略。本文设计了三层安全后备机制:
- Layer 1——备用轨迹库(Fallback Trajectory Library):离线预计算1000+条覆盖不同速度、曲率和障碍物配置的轨迹模板。当主规划器失败时,在线查找与当前状态最匹配的预计算轨迹(基于KD-Tree最邻近搜索,耗时<1ms)。备用轨迹经过离线安全验证,确保无碰撞。
- Layer 2——责任敏感安全(Responsibility-Sensitive Safety, RSS):基于Mobileye提出的RSS形式化模型(Shalev-Shwartz et al., 2017),定义了纵向和横向的”安全距离”和”适当响应”规则。如果主规划器和Layer 1均不可用,RSS规则独立计算安全加速度边界并对当前控制命令进行限幅,确保即使在上层完全失效时车辆也能保持安全状态。
- Layer 3——紧急制动(AEB):独立于主计算平台的底层硬件AEB模块(基于Infineon TC397 MCU),以ASIL-D等级运行。当检测到前方碰撞时间(TTC)< 1.2s时,AEB直接通过独立CAN总线发送最大制动力指令(-8m/s²),完全绕过上层软件栈。
三层的激活条件与恢复机制:Layer 1在主规划器连续3帧(150ms)失败或输出异常(加速度>8m/s²或曲率>0.2m⁻¹)时激活;Layer 2在Layer 1无法找到匹配轨迹时激活;Layer 3在TTC<1.2s时无条件激活。一旦主规划器恢复正常输出连续5帧,系统自动切回主轨迹。
6.7 仿真验证
本章的规划决策系统在CARLA 0.9.15仿真平台上进行了全面评估。测试场景覆盖三类难度:
| 场景类别 | 场景数量 | 典型场景 | 成功率 | 平均舒适度评分 |
|---|---|---|---|---|
| 常规城市 | 200 | 信号灯路口、车道保持、跟车 | 98.5% | 4.2/5.0 |
| 交互场景 | 150 | 匝道汇入、无灯路口、环形交叉口 | 94.7% | 3.8/5.0 |
| 边缘场景 | 80 | 紧急切入、行人突然横穿、施工区绕行 | 91.3% | 3.1/5.0 |
失败案例分析表明,常规场景的失败主要源于感知模块的虚警(将阴影或路面文字误检为障碍物导致非必要制动);交互场景的失败集中在博弈推理不足——特别是多车同时竞争同一路权时的决策保守性导致的”冻结”(车辆长时间等待,后车鸣笛催促);边缘场景的失败则主要源于感知漏检(小尺寸障碍物或异常形状物体未被检出)。这些发现直接反馈到后续的感知与决策联合优化中。
6.8 本章小结
第7章 车辆运动控制
运动控制模块是自动驾驶系统的”手脚”——它将第6章规划模块输出的参考轨迹(五次样条插值、100Hz、C²连续)转化为对转向、油门、制动和挡位的精确执行器指令,在不确定的路面条件、变化的车辆载荷和有限的执行器带宽下实现厘米级的轨迹跟踪精度。与机器人领域的运动控制不同,自动驾驶车辆控制面临三个独特挑战:(1) 车辆动力学的高度非线性——轮胎与路面的摩擦圆约束、悬架系统的振动耦合、空气动力学效应;(2) 执行器的物理限制——转向电机的扭矩饱和与速率限制、制动主缸的建压延迟(液压系统约180-250ms)、发动机/电机的转矩响应滞后;(3) 参数不确定性——车辆质量随乘员和载重变化(±300kg)、轮胎刚度随温度和磨损变化(±20%)、路面附着系数从干燥沥青的0.9到冰雪的0.15。
本章提出了一套分层耦合的车辆运动控制架构,包含三个子系统:(1) 纵横向耦合模型预测控制器(CL-MPC)——以非线性车辆动力学模型为预测模型,在摩擦圆约束下同时优化转向角和纵向加速度;(2) 下层执行器控制器——将MPC输出的广义力/力矩指令转化为各执行器的物理信号(方向盘转角、节气门开度/制动主缸压力),并补偿执行器延迟和死区;(3) 参数在线估计与自适应——利用卡尔曼滤波和递归最小二乘法在线估计轮胎侧偏刚度、路面附着系数和车辆质量,实时更新MPC的内部模型。三部分以100Hz、200Hz和10Hz的频率异步运行。
7.1 车辆动力学建模
精确的车辆动力学模型是高性能控制的基础。在”模型精度-计算复杂度”的帕累托前沿上,本文选择了三自由度单轨(Bicycle)模型与Pacejka轮胎模型的组合——在30km/h以下引入运动学假设以降低计算量,在30km/h以上激活完整非线性动力学模型。该组合在NVIDIA Orin平台上单次模型传播耗时0.8ms,50步预测时域(2.5s)的总模型计算约40ms,满足100Hz控制周期的约束。
7.1.1 三自由度车辆动力学模型
在车身坐标系下,考虑纵向、横向和横摆三个自由度,忽略俯仰和侧倾运动(城市工况下侧倾角通常<3°,对轨迹跟踪精度影响<2cm):
纵向动力学:
m·(v̇x − vy·ω) = Fxf·cos(δ) + Fxr − Fyf·sin(δ) − Fdrag
横向动力学:
m·(v̇y + vx·ω) = Fxf·sin(δ) + Fyf·cos(δ) + Fyr
横摆动力学:
Iz·ω̇ = lf·[Fxf·sin(δ) + Fyf·cos(δ)] − lr·Fyr
其中 m 为车辆质量(测试车整备质量1,750kg,满载2,050kg),Iz=3,350 kg·m² 为绕Z轴的转动惯量,lf=1.25m 和 lr=1.60m 分别为质心到前/后轴的距离,δ 为前轮转角,Fdrag=½·ρ·Cd·A·vx² 为空气阻力(ρ=1.225 kg/m³,Cd=0.28,A=2.2 m²)。Fxf、Fxr 为前/后轴纵向力(驱动/制动力),Fyf、Fyr 为前/后轴侧向力。
前/后轴的垂向载荷需要考虑纵向和横向加速度引起的载荷转移:
Fzf = (m·g·lr − m·ax·h − m·ay·h·lr/L) / L
Fzr = (m·g·lf + m·ax·h − m·ay·h·lf/L) / L
其中 h=0.52m 为质心高度,L=lf+lr=2.85m 为轴距。载荷转移对轮胎力有显著影响——在0.5g横向加速度(典型紧急变道工况)下,外轮载荷比内轮大60%以上,内轮侧向力裕度急剧下降。
7.1.2 Pacejka魔术公式轮胎模型
轮胎是车辆与路面的唯一接口,其力学特性直接决定控制精度。本文采用Pacejka 2002版魔术公式(Magic Formula),以统一的非线性函数描述不同工况下的轮胎纵向力和侧向力:
y(x) = D·sin{ C·arctan[ B·x − E·(B·x − arctan(B·x)) ] }
Y(X) = y(x) + Sv
x = X + Sh
其中 Y 为输出(纵向力 Fx 或侧向力 Fy),X 为输入(滑移率 κ 或侧偏角 α)。B、C、D、E 四个参数分别控制曲线的刚度因子、形状因子、峰值因子和曲率因子,Sh 和 Sv 分别为水平偏移和垂直偏移(用于建模帘布层转向效应和锥度效应)。
本文测试车使用米其林 Primacy 4 轮胎(规格225/55R17),通过六分力测试台架(Kistler RoaDyn 9262C)在三种垂直载荷(4,000N, 6,000N, 8,000N)和五种路面(干燥沥青μ=0.9、湿沥青μ=0.6、湿水泥μ=0.5、压实雪μ=0.25、冰μ=0.15)上进行了参数辨识。典型干燥沥青工况下的辨识参数为:B=12.3, C=1.45, D=0.96·Fz(峰值侧向力系数),E=-1.8(纯侧偏工况)。
联合工况(组合滑移)。当轮胎同时承受纵向力和侧向力时,两者存在竞争关系——总力受限于”摩擦椭圆”(实际为近似的椭圆,非严格的圆)。本文采用基于相似理论的组合滑移模型:
Fx = Fx0·cos²(Cxα·arctan(Bxα·α))
Fy = Fy0·cos²(Cyκ·arctan(Byκ·κ))
其中 Fx0 和 Fy0 分别为纯滑移/纯侧偏工况下的纵向力和侧向力,余弦平方函数刻画了组合滑移下的力衰减。这一约束是MPC中”摩擦圆约束”的物理基础。
7.1.3 执行器动力学模型
执行器的动态特性是控制器设计中常被忽略但实际影响巨大的因素。本文对三类执行器建立了简化的二阶或一阶加延迟模型:
| 执行器 | 动态模型 | 参数 | 限制 |
|---|---|---|---|
| EPS转向电机 | δ̈ + 2ζωₙδ̇ + ωₙ²δ = ωₙ²·δcmd | ζ=0.7, ωₙ=25 rad/s (~4Hz) | |δ|≤35°, |δ̇|≤500°/s |
| 电子节气门+发动机 | Te = Tcmd/(τes+1)·e−τds | τe=120ms, τd=80ms | Te∈[-Tmax, Tmax] |
| ESP液压制动 | Pb = Pcmd/(τbs+1)·e−τds | τb=50ms, τd=30ms | Pb∈[0, 180bar], Ṗb,max=1200bar/s |
EPS(电动助力转向)采用博世第3代伺服转向机(BOSCH Servolectric® Gen3),峰值扭矩65Nm,齿条力12kN。制动系统采用博世iBooster 2.0机电伺服助力器+ESP 9.3,支持最大减速度-8.5m/s²(干燥沥青上ABS触发阈值约-9.0m/s²)。值得注意的是,液压制动系统的建压延迟(约80ms从指令到实际压力建立)在高动态场景(如紧急避障)中会引入显著的相位滞后——在10m/s车速下,80ms对应0.8m的位移误差。
7.2 纵横向耦合模型预测控制(CL-MPC)
传统车辆控制将纵向和横向解耦分别设计——纵向控制器跟踪目标速度,横向控制器跟踪目标路径。这种解耦在处理”弯道制动”或”加速变道”等耦合工况时会出现明显的跟踪性能退化。例如,在弯道中紧急制动时,载荷向前轴转移导致后轴侧向力裕度骤减,解耦控制器无法预见这一效应而可能导致后轴侧滑。
本文提出的CL-MPC将纵向和横向控制统一在一个优化框架中,显式建模纵横向之间的动力学耦合和执行器约束。
7.2.1 非线性MPC问题构造
在控制导向的简化下,将车辆状态定义为 ξ = [x, y, θ, vx, vy, ω, δ, a]T(8维),控制输入为 u = [δcmd, acmd]T。预测时域 Np=25步(Δt=40ms,覆盖1.0s),控制时域 Nc=15步(0.6s)。MPC在每个控制周期求解以下约束优化问题:
minu₀:Nc−1 Σk=0Np ||ξk−ξkref||²Q + Σk=0Nc−1 (||uk||²R + ||Δuk||²Rd)
subject to:
ξk+1 = fdyn(ξk, uk) (7.1节非线性动力学,RK4离散)
|δk| ≤ 35°, |δ̇k| ≤ 500°/s (转向约束)
amin ≤ ak ≤ amax (加/减速度约束:−5m/s² ≤ a ≤ 3m/s²)
√(ax,k² + ay,k²) ≤ μ·g·η (摩擦圆约束,η=0.85为安全系数)
elat,k ≤ elat,max (横向偏差约束,≤30cm)
Δθk ≤ Δθmax (航向偏差约束,≤15°)
代价函数权重矩阵设计为:Q = diag(0, 0, 0, 0.5, 0, 0, 0, 0) + wlat·elat² + whead·eθ²,即不对绝对位置和速度直接惩罚(轨迹跟踪通过横向偏差elat和航向偏差eθ体现),R = diag(1.0, 0.5)(控制代价),Rd = diag(2.0, 1.0)(控制变化率代价,抑制高频抖动)。其中 elat 为车辆后轴中心到参考轨迹的最短距离(通过二分搜索在参考样条上找到最近投影点),eθ = θ − θref。
7.2.2 摩擦圆约束的平滑处理
摩擦圆约束 √(ax² + ay²) ≤ μ·g·η 是一个非线性非凸约束(严格来说是凸的——圆形内部是凸集,但约束形式为非线性不等式)。对于基于SQP(Sequential Quadratic Programming)的求解器,该约束在每个QP子问题中通过一阶泰勒展开线性化:
(ax(m)/r)·(ax − ax(m)) + (ay(m)/r)·(ay − ay(m)) + r ≤ μ·g·η
其中 r = √((ax(m))² + (ay(m))²),上标(m)为上一SQP迭代的线性化点。这种线性化是保守的——线性化约束定义的半空间包含原圆形约束的内部区域。
轮胎力到加速度的映射。侧向加速度 ay 通过动力学模型计算:ay = (Fyf·cos(δ) + Fyr)/m。在MPC的预测时域内,轮胎侧向力 Fy 采用简化的线性模型(小侧偏角假设,α < 3°):Fy ≈ Cα·α,其中 Cα 为侧偏刚度(前轴Cαf≈1,050 N/°,后轴Cαr≈980 N/°,由台架测试辨识获得)。当MPC预测的侧偏角超过3°时(高动态工况),自动切换至完整Pacejka模型以提高预测精度。
7.2.3 求解器工程实现
CL-MPC的求解采用FORCES Pro(Embotech)的实时SQP求解器,利用以下工程优化:
- CasADi符号微分:车辆动力学模型使用CasADi(Andersson et al., 2019)进行符号化定义,自动生成解析雅可比矩阵和海森矩阵(而非数值差分),每步节省约60%的求导计算量。
- Hessian正则化与Gauss-Newton近似:对代价函数的Hessian采用Gauss-Newton近似(忽略拉格朗日项的二阶导数),保证其正定性,避免非凸区域中的求解失败。结合Levenberg-Marquardt正则化(λ=10⁻⁴·trace(H)),在初始点远离最优解时增强收敛性。
- 热启动(Warm Start):利用上一周期的最优解对当前求解器进行初始化——将控制序列左移一步(移除第一个已执行的控制量),在末尾补齐一个零控制,作为当前QP的初始猜测。热启动将迭代次数从平均6.2次降至2.4次。
- 求解时间监控与安全降级:若求解器在25ms(50%控制周期)内未收敛,强制使用当前最优解(即使未达到KKT条件);若35ms仍未产生可行解,降级至PID控制器(详见7.4节安全后备)。
在Orin平台上,完整SQP求解的平均耗时为18.3ms(标准差4.1ms),99%分位数为29.7ms,满足50ms控制周期的实时性约束(留出31.7ms的安全裕度)。
7.3 下层执行器控制与补偿
MPC输出的控制量是广义的”前轮转角指令 δcmd“和”加速度指令 acmd“。下层控制器负责将这些广义指令转化为具体执行器的物理信号,并补偿执行器动力学带来的响应滞后。
7.3.1 转向执行器控制
转向控制采用串级PID+前馈结构。内环为电机电流环(PI控制,1kHz),中环为转速环(PI控制,500Hz),外环为位置环(PD控制,200Hz)。MPC输出的前轮转角指令馈入位置环作为目标值,同时利用车辆运动学关系计算前馈角速度:
δ̇ff = (L/(vx² + ε)) · vx·κ̇ref
其中 κ̇ref 为参考轨迹的曲率变化率(由五次样条的二阶导给出)。前馈项显著降低了相位滞后——在正弦转向测试(频率1Hz,幅度±15°)中,加入前馈后相位滞后从32°降至8°(83ms等效时延)。
7.3.2 纵向执行器仲裁
纵向加速度指令需要在驱动(节气门/电机扭矩)和制动(制动主缸压力)之间进行切换。直接切换会导致加速度的不连续跳变(”顿挫”)。本文设计了平滑仲裁策略:定义一个”过渡带”a ∈ [−0.5, 0] m/s²,在此区间内驱动和制动均输出较小的力以避免频繁切换。当acmd > −0.3 m/s² 时,驱动激活(制动进入待机,压力泄至0),驱动扭矩通过逆发动机MAP(Manifold Absolute Pressure)表和逆电机外特性曲线插值计算;当acmd < −0.7 m/s² 时,制动激活(驱动降扭至怠速),制动压力通过简化的制动器模型计算:
Pcmd = (−m·acmd − Fdrag − Froll) · reff / Kbrake
其中 reff=0.34m 为轮胎有效滚动半径,Kbrake=22 Nm/bar 为制动器增益系数(由博世iBooster规格书和台架标定获得),Froll=Crr·m·g 为滚动阻力(Crr=0.012 为沥青路面滚动阻力系数)。
7.3.3 执行器延迟补偿
7.1.3节建模的执行器延迟(制动总延迟约80ms,驱动总延迟约200ms)在MPC预测模型中已显式建模为传递函数。然而,在高频控制(100Hz)下,执行器的相位滞后仍会导致震荡。本文额外采用Smith预估器结构对制动系统进行延迟补偿——将制动器模型与被控车辆模型并联,将无延迟的预测输出反馈至控制器,消除延迟环节对闭环带宽的限制:
Gsmith(s) = Gplant(s)/(1 + C(s)·(Gplant(s) − Gplant,model(s)·e−τs))
其中Gplant,model为车辆的标称动力学模型(不包含延迟),C(s)为PID控制器。Smith预估器将制动闭环的-3dB带宽从纯PID的3.2Hz提升至6.8Hz,显著改善了紧急制动的响应速度。
7.4 参数在线估计与自适应
车辆参数随运行条件显著变化——从空载到满载(质量+300kg),从夏季干燥路面到冬季冰雪(μ从0.9降至0.15)。固定参数的MPC模型在这些变化下性能退化严重。本章设计了三个并行的参数估计器:
7.4.1 车辆质量与道路坡度估计
基于纵向动力学方程,利用带遗忘因子的递归最小二乘法(RLS-FF)在线估计车辆质量 m 和道路坡度 θroad。将纵向动力学在稳态附近线性化:
ax = (1/m)·(Ftraction − Fbrake) − g·sin(θroad) − (1/m)·Fdrag
在驱动力矩已知(通过CAN总线读取发动机/电机扭矩)且制动未激活的时段(制动激活时驱动扭矩不可靠),构建观测向量。RLS-FF的遗忘因子 λ=0.995(对应约200步的记忆半衰期),平衡了估计的平滑性和对参数变化的响应速度。质量估计收敛时间约15s(从初始误差±200kg收敛至±20kg),坡度估计在±0.5°精度内。
7.4.2 轮胎侧偏刚度在线辨识
侧偏刚度 Cα 是影响横向控制精度的最敏感参数。在小侧偏角线性区(α < 3°),侧向力与侧偏角的关系近似为 Fy ≈ Cα·α。侧偏刚度随轮胎磨损、温度和胎压变化可达±25%。本文采用扩展卡尔曼滤波(EKF)对前后轴侧偏刚度进行在线估计。
EKF的状态向量为 xekf = [vy, ω, Cαf, Cαr]T,过程模型为带随机游走的参数演化(Ċαf=0, Ċαr=0 + 小方差白噪声),观测为横摆角速度 ωmeas(来自IMU)和侧向加速度 ay,meas(来自IMU+轮速计)。过程噪声协方差 Q = diag(0.01, 0.001, 100, 100),观测噪声协方差 R = diag(0.001, 0.01)。EKF在稳态侧偏激励不足时自动冻结参数更新(基于侧偏角的激励检测阈值α>1.5°),避免无激励下的随机漂移。
7.4.3 路面附着系数估计
路面附着系数 μ 是决定车辆操控极限的根本参数。本文采用基于轮胎力-滑移率曲线斜率的在线μ估计方法。在低滑移率区间(κ < 3%),轮胎纵向力近似线性:Fx ≈ Cκ·κ,其中纵向滑移刚度 Cκ 正比于路面μ。持续监测驱动/制动期间的ΔFx/Δκ比值,与已知μ下的标定值比较来推断当前μ。同时,利用牵引力控制系统(TCS)和防抱死制动系统(ABS)的激活频率作为辅助判断——当μ从0.9降至0.3时(干燥沥青→压实雪),ABS激活频率从<1%事件急剧上升至>15%事件。
μ的估计值以指数移动平均(α=0.9)进行平滑,并分为离散等级:高μ(>0.7,干燥路面)、中μ(0.4-0.7,湿滑路面)、低μ(<0.4,冰雪)。MPC的摩擦圆约束中的μ值根据当前估计等级每500ms更新一次,以匹配路面条件的变化。
7.5 安全后备控制器
与第6.6节的安全后备层相对应,控制层设计了独立的安全后备控制器——当MPC求解器失败、执行器响应异常或安全监控触发时,控制权从MPC切换至后备控制器。后备控制器采用Pure Pursuit + PI速度控制组合:
- Pure Pursuit横向控制:在参考轨迹前方距离Ld处选取目标点(视距 Ld=kld·v,kld=0.3s),基于自行车运动学计算目标曲率 κ = 2·sin(α)/Ld(α为车辆航向到目标点的夹角)。Pure Pursuit虽然精度不如MPC(稳态横向偏差约5-8cm vs MPC的1-2cm),但计算简单、稳定性证明完备,且不需要精确的车辆模型参数。
- PI速度控制:基于当前速度与参考速度的偏差,PI控制器输出加速度指令:acmd = Kp·(vref−v) + Ki·∫(vref−v)dt。Kp=0.8, Ki=0.15,并增加抗积分饱和(clamping)处理。
从MPC到后备控制器的切换采用平滑过渡(Blend)策略——在20个控制周期(200ms)内,实际输出为两者的线性插值:u(t) = α(t)·uMPC + (1−α(t))·ubackup,其中 α 从1线性衰减至0,避免瞬态跳变带来的车辆抖动。
7.6 实车验证
控制系统的性能评估在三种工况下进行:(1) 干燥沥青封闭场地(μ≈0.9),(2) 湿滑路面(洒水车洒水后,μ≈0.5),(3) 城市开放道路(混合路面,累计测试200km)。测试车为2024款比亚迪汉EV创世版,传感器和计算平台按第3章配置。
7.6.1 稳态圆周测试
车辆以递增速度(10→40km/h,每圈加速5km/h)跟踪半径50m的圆形轨迹。在干燥路面,MPC控制器的稳态横向偏差RMS为1.8cm(Pure Pursuit: 6.2cm);在湿滑路面(μ≈0.5),MPC的RMS上升至3.1cm(Pure Pursuit: 10.5cm)。MPC的优势在于其预测模型显式考虑了当前μ值并缩小了摩擦圆约束,避免在湿滑路面过度转向导致车辆失控。
7.6.2 双移线测试(ISO 3888-2)
ISO 3888-2紧急双移线(碰撞避免)测试是衡量车辆操控稳定性和轨迹跟踪能力的标准工况。测试参数:初始车速72km/h(对应通过速度~60km/h),锥桶通道宽度为车宽+1m。CL-MPC成功完成测试,最大横向偏差14.3cm(发生在第二次变道的转向反转点),车身稳定控制系统(ESC)未激活,表明MPC产生的控制指令在车辆物理极限内。对比组:Pure Pursuit控制器在同一速度下触碰了2个锥桶(横向偏差超限)。
7.6.3 城市开放道路综合测试
在深圳市南山区科技园-深圳湾口岸的25km开放道路环线上,进行了8次自动驾驶运行(累计200km)。CL-MPC在以下关键指标上与人类驾驶员的对比:
| 指标 | CL-MPC(本文) | Pure Pursuit + PI | 人类驾驶员 |
|---|---|---|---|
| 横向偏差RMS | 4.7 cm | 12.3 cm | 5.2 cm |
| 速度跟踪RMS | 0.8 km/h | 2.4 km/h | 1.5 km/h |
| 最大急动度(jerk) | 3.2 m/s³ | 5.8 m/s³ | 2.8 m/s³ |
| 弯道内速度波动 | ±1.2 km/h | ±3.5 km/h | ±1.8 km/h |
| MPC求解器失效率 | 0.3%(200km中3次超时) | N/A | N/A |
CL-MPC在横向跟踪精度上已经达到甚至略优于人类驾驶员的水平(4.7cm vs 5.2cm),且急动度指标(3.2 vs 2.8 m/s³)非常接近人类驾驶的舒适性水平。3次MPC超时事件均为激光雷达帧与规划模块同步异常导致参考轨迹短暂不可用(持续1-2个控制周期),后备控制器在15ms内接管,未对车辆运动产生可感知的影响。
7.7 本章小结
本章构建了一套完整的车辆运动控制系统,核心贡献如下:
- (1)纵横向耦合MPC(CL-MPC)。将纵向和横向控制统一在非线性MPC框架中,显式建模摩擦圆约束和轮胎力耦合。在ISO 3888-2紧急双移线测试中成功通过(72km/h,横向偏差14.3cm),对比Pure Pursuit触碰锥桶,充分体现了耦合控制的优势。
- (2)完整的执行器建模与补偿。建立了EPS转向、电子节气门和液压制动的二阶/一阶加延迟模型,并通过前馈+Smith预估器补偿执行器延迟。转向相位滞后从32°降至8°,制动闭环带宽从3.2Hz提升至6.8Hz。
- (3)多参数在线估计与自适应。基于RLS-FF估计质量与坡度(15s收敛至±20kg),基于EKF估计轮胎侧偏刚度(±25%变化范围内),基于滑移率斜率估计路面μ。参数估计的实时更新使MPC内部模型始终与实际车辆状态保持一致。
- (4)三层安全降级策略。MPC → Pure Pursuit + PI → 硬件AEB的递进降级,确保在任何控制层失效时车辆仍处于可控状态。MPC 99.7%的可用率满足L4自动驾驶对控制可靠性的要求。
- (5)实车验证。在200km城市开放道路测试中,CL-MPC达到横向偏差4.7cm RMS(与人类驾驶员5.2cm相当),求解器失效率仅0.3%,验证了方案在实际工况下的可行性和鲁棒性。
本章输出的控制指令(方向盘转角、加速度)经由CAN总线以100Hz频率发送至各执行器ECU,在物理层面驱动车辆运动。下一章将转入一个集感知、定位、规划、控制于一体的完整应用——自动泊车系统,该系统最集中地体现了本文各技术模块在极端约束场景下的协同工作能力。
第8章 自动泊车系统设计
自动泊车是自动驾驶技术”最后一公里”的核心应用——它不仅是用户感知最直接的智能化功能,更是对感知、定位、规划、控制四大技术模块在极端约束条件下的综合考验。与开放道路行驶不同,泊车场景具有以下独特挑战:(1) 空间极度受限——典型车位宽度仅2.5m(车宽+0.6m),平行车位长度仅6.5m(车长+1.5m),允许的轨迹误差容限仅3-5cm;(2) GPS完全失效——地下停车场和室内车库无卫星信号,定位必须完全依赖机载传感器;(3) 传感器退化严重——光照条件极端(从完全黑暗到强逆光)、视觉纹理稀缺(白墙、水泥柱)、超声波在近距离内产生多次反射和串扰;(4) 障碍物种类繁杂——除了其他车辆,还有水泥柱(直径30-80cm)、消防栓、购物车、减速带、地锁等非标准障碍物;(5) 人车混流——停车场内行人行走路径不可预测,对安全响应时间要求极高。
本章提出了一套从车位检测到泊入完成的端到端自动泊车系统(Automated Parking System, APS),涵盖四个子系统:(1) 多传感器融合车位检测——融合12通道超声波编码传感器(AK2协议)、四路环视摄像头(190°鱼眼)和单目前视摄像头,实现多类型车位(水平/垂直/斜列)的高精度检测与分类;(2) 超声-视觉-里程计紧耦合定位——基于第5章因子图框架,针对地下停车场场景定制的多源融合定位方案;(3) 几何+优化的混合路径规划——将Hybrid A*全局规划与OBCA(Optimization-Based Collision Avoidance)局部优化相结合,生成在厘米级精度内无碰撞的泊车轨迹;(4) 低速高精度轨迹跟踪——在第7章CL-MPC基础上针对泊车低速工况(0-5km/h)简化模型并提升精度至±3cm。
8.1 车位检测与分类
车位检测是自动泊车的第一步——系统需要在车辆驶过停车区域时,在线识别可用车位并精确测量其几何参数。本文采用超声+视觉双重冗余检测策略,利用两种传感器在空间分辨率、环境鲁棒性和语义理解能力上的互补性,实现全天候、全类型的车位检测。
8.1.1 基于超声波的车位几何检测
车辆侧方安装4个AK2编码型超声波传感器(前后保险杠各2个,水平间距40cm,离地高度45cm,水平波束角±60°,垂直波束角±30°)。AK2协议支持编码发射(8位Gold码),相比传统模拟超声波具有三个关键优势:(1) 每传感器独立编码,消除相邻传感器的串扰;(2) 编码增益约9dB(相比单脉冲),有效测距从4.5m扩展至7.0m;(3) 支持多回波检测,可区分障碍物与地面反射。
当车辆以5-15km/h驶过车位时(典型寻位速度),侧方超声传感器以25Hz频率采集距离剖面(Range Profile)——即传感器到最近障碍物的距离随车辆行驶距离的变化曲线。车位检测算法基于距离剖面的特征模式识别:
- 深度跳变检测:当超声距离从近(≈0.5m,旁车车身)突然增至远(>2.5m,车位空间),检测到一个”上升沿”——车位起始边界;当距离从远恢复至近,检测到”下降沿”——车位终止边界。跳变检测的阈值自适应于车速:跳变梯度阈值 = max(0.5m/0.1s, 0.3m/采样间隔),以适应不同寻位速度。
- 内部障碍物检测:在上升沿和下降沿之间,持续监测是否存在中间距离的回波(0.5-2.0m),以识别车位内的障碍物(如购物车、地锁、消防栓)。若在车位内部检测到障碍物,该车位被标记为”不可用”。
- 车位深度估计:利用相邻两个传感器(水平间距40cm)的三角测量原理,对车位内部(上升沿后1m处的回波)进行深度估计:d = s·sin(θ₁)·sin(θ₂)/sin(θ₁+θ₂),其中s为传感器间距,θ₁和θ₂分别为两传感器到障碍物的波束角。深度估计精度约±8cm(受限于波束角的不确定性)。
超声检测的优势在于全天候工作能力(不受光照影响,雨雾衰减<2dB)和低计算开销(25Hz下<1ms),但其局限性在于无法区分车位类型(水平/垂直/斜列)和无法检测车位标线(地面标线不产生超声回波)。这些语义信息的缺失由视觉检测补充。
8.1.2 基于环视视觉的车位语义检测
四路环视摄像头(前后左右各一个,190°鱼眼镜头,1920×1080分辨率,30fps)通过几何标定和图像拼接生成车辆周围360°的俯视鸟瞰图(Bird’s Eye View, BEV)。BEV图像以车辆中心为原点,覆盖10m×8m的区域,像素分辨率2cm/pixel。
车位语义检测采用两阶段深度学习方法:(1) 车位标线检测网络——轻量级U-Net变体(MobileNetV3 backbone + 双线性上采样解码器),在BEV图像上逐像素分类为背景、车位标线、车道线、减速带4类;(2) 车位角点和入口检测网络——CenterNet风格的anchor-free检测器,输出车位入口线段(两个端点坐标+置信度)和车位类型(水平/垂直/斜列+角度)。
检测网络的训练数据集包含500个地下停车场场景(多城市、多光照条件、多车位类型),使用半自动标注工具(车位标线通过Canny边缘检测+霍夫变换预标注后人工校正,节省约70%标注时间)。在测试集上的性能:车位标线IoU为0.82(相比标准U-Net的0.76提升6个点),车位入口检测[email protected]为94.3%,类型分类准确率96.8%。单帧推理在NVIDIA Orin上耗时22ms(INT8量化后),满足30fps实时性。
8.1.3 超声-视觉融合车位模型
超声提供精确的几何边界(深度跳变位置±5cm),视觉提供语义信息(车位类型、标线位置、车位是否被占用)。两者的融合采用贝叶斯证据融合框架:
P(车位可用 | zUSS, zVision) ∝ P(车位可用) · P(zUSS | 车位) · P(zVision | 车位)
其中 P(zUSS | 车位) 由超声深度跳变的质量(跳变梯度、内部障碍物存在性)和车位深度估计的置信度决定;P(zVision | 车位) 由视觉检测的标线完整度、车位角点置信度和车位占用分类结果决定。两种传感器独立地提供证据,当两者均高置信度地判定”车位可用”时(融合概率 > 0.85),系统确认车位。当仅有一种传感器判定可用时(融合概率0.5-0.85),系统标记为”待确认”,车辆自主调整姿态进行二次检测。
在500个车位的混合数据集上,超声-视觉融合检测的召回率为97.2%(相比纯超声的89.5%和纯视觉的92.1%大幅提升),虚警率为2.3%(纯视觉因阴影和路面污渍产生5.7%虚警)。融合方案有效弥补了各自传感器的固有缺陷——超声无法检测车位标线褪色的车位,视觉在完全黑暗环境中无法工作,但两者从未同时失效。
8.2 地下停车场紧耦合定位
地下停车场是GPS/ GNSS信号的绝对盲区(混凝土+钢筋结构屏蔽 > 50dB),定位必须完全依赖机载传感器。第5章的全源因子图框架可迁移至此场景,但需要针对停车场特性进行三项关键定制:(1) 引入超声回波特征作为低成本替代LiDAR的几何约束;(2) 利用高精停车地图(HD Parking Map)的先验信息;(3) 采用增量式初始化策略解决”被绑架机器人”(Kidnapped Robot)问题。
8.2.1 超声-视觉-里程计因子图
定位因子图在停车场场景中包含以下专属因子节点:
| 因子类型 | 来源 | 约束 | 有效场景 |
|---|---|---|---|
| IMU+轮速预积分 | 第5.2.1节 | 6DOF相对运动 | 全场(基础递推) |
| 环视视觉里程计 | 鱼眼相机特征跟踪 | 6DOF相对位姿 | 中等纹理区域 |
| 超声回波墙距约束 | 侧方超声连续测距 | 1D横向距离 | 有墙/柱/旁车场景 |
| 停车地图语义匹配 | 视觉检测vs地图先验 | 3DOF绝对位姿 | 有地图覆盖区域 |
| 车位标线回环约束 | 视觉车位检测+识别 | 3DOF回环 | 经过已建图区域 |
超声回波墙距约束是本文的创新点之一。当车辆在停车场通道中行驶时(典型通道宽度5.5-6.5m),侧方超声传感器持续测量车辆到两侧墙壁/车辆的距离 dleft 和 dright。利用停车场通道宽度的先验信息(Wcorridor ≈ 6.0m),可构建侧向位置约束:dleft + dright = Wcorridor ± 0.3m(通道宽度公差)。该约束将车辆侧向定位精度从纯里程计递推的±50cm(100m行驶后)压缩至±10cm。将超声距离测量建模为因子图中的一元边(距离残差最小化),信息矩阵权重与超声回波质量(信噪比 > 15dB 时为满权重,< 10dB 时降权至0.2)成比例。
8.2.2 高精停车地图
与第5.3节的开放道路高精地图不同,停车地图的坐标系为局部平面(单层停车场范围通常100m×80m),精度要求更高(±5cm vs 开放的±10cm)。停车地图包含以下层次:
- 几何层:停车场墙体和柱体的2D轮廓线(线段集合)、通道边界、坡道和电梯入口位置。通过SLAM建图(Cartographer, Hess et al., 2016)生成,经人工校验校正。
- 语义层:车位编号、车位类型(水平/垂直/斜列/无障碍/充电桩)、车位占用状态(动态更新)、通道行驶方向(单向/双向)。
- 拓扑层:停车场通道的连通图 G=(V,E),节点为通道交叉口和端点,边为可行驶的通道段。每条边存储长度、宽度、最小转弯半径和行驶方向属性。
停车地图通过众包模式更新——每辆具备APS功能的车辆在泊车过程中贡献一次SLAM建图数据(匿名化的几何特征+车位占用状态),云端融合多车数据生成高精度地图并下发给后续车辆。车位占用状态每5分钟刷新(通过最后泊入车辆的超声/视觉检测结果推断),以应对停车场内车辆的动态变化。
8.2.3 增量式全局初始化
车辆刚进入地下停车场时,面临”被绑架机器人”问题——初始位姿完全未知(GPS不可用,附近无已建图地标)。本文采用多假设粒子滤波(MHPF)进行全局初始化:在停车场地图的通道区域内均匀撒布 N=500 个粒子(每个粒子代表一个可能的车辆位姿),利用初始几秒的传感器测量(环视视觉特征、超声墙距、轮速里程计增量)对粒子进行重要性加权和重采样。典型的初始化过程:
- 第0-2秒(约行驶3m):利用超声左右墙距约束,排除不与当前通道宽度匹配的粒子。通道宽度的测量值(dL+dR)与地图中各通道宽度的似然比对,保留匹配通道上的粒子。
- 第2-5秒(约行驶8m):利用环视视觉检测到的车位标线模式和地图中的车位布局进行匹配。若检测到”垂直车位×3→通道→水平车位×5″的序列模式,与地图中的车位布局模板进行序列匹配(Dynamic Time Warping, DTW),进一步收敛粒子分布。
- 第5-10秒:当粒子的位置协方差椭圆缩小至半径<2m且航向偏差<15°时,切换到iSAM2因子图优化模式(第5.2.4节),实现高精度连续定位。
在10个不同地下停车场的初始化测试中(每个5次,共50次初始化尝试),MHPF在10s内成功收敛(定位误差<2m半径)的概率为94%(47/50)。3次失败均为停车场结构过于对称(完全镜像式布局),导致粒子收敛到对称位置。失败后系统自动请求驾驶员缓慢行驶至下一个通道交叉口(提供更多区分性地标),二次初始化成功率100%。
8.3 泊车路径规划
泊车路径规划需要在高度受限的空间内生成一条从当前位姿到目标车位内部的无碰撞路径,同时满足车辆的运动学约束(最小转弯半径Rmin=5.4m,对应最大前轮转角35°)和非完整性约束(车辆不能横向平移)。本文采用两阶段混合规划策略:Hybrid A*全局规划生成粗路径 → OBCA局部优化生成平滑可执行的最终轨迹。
8.3.1 Hybrid A*全局粗规划
Hybrid A*是标准A*在连续状态空间中的扩展——状态节点包含车辆的连续位姿(x,y,θ),而不仅仅是网格中心。与标准A*仅允许4/8方向移动不同,Hybrid A*的动作空间为车辆的转向曲率离散集 {κmin, …, 0, …, κmax}(本文取15个曲率值,均匀覆盖[-κmax, κmax],对应前轮转角 -35° 到 +35°)。每个动作按固定弧长Δs=0.5m在车辆运动学模型下积分一步,生成下一个状态节点。
Hybrid A*的代价函数包含四项:
f(node) = g(node) + hholonomic(node) + hnonholonomic(node) + hcollision(node)
其中 g 为已行驶路径长度,hholonomic 为忽略非完整性约束的2D欧氏距离启发(通过Dijkstra在占用网格上预计算),hnonholonomic 为基于Reeds-Shepp曲线的最短路径长度(考虑最小转弯半径,解析公式O(1)计算),hcollision 为碰撞代价的启发式估计(距最近障碍物的倒数加权)。
碰撞检测采用双圆盘车辆轮廓(第6.4.2节方法)+ 占用网格查找(网格分辨率5cm)。Hybrid A*的输出是一条离散的位姿序列 {(xi, yi, θi)},步长约0.5m,通常包含15-50个状态节点(对应7.5-25m路径)。对于典型的垂直车位泊入,Hybrid A*求解时间在50-200ms范围内(取决于搜索空间大小,无障碍时快,复杂场景慢),满足泊车前静态规划的时间要求。
8.3.2 OBCA局部轨迹优化
Hybrid A*的粗路径在以下方面存在不足:(1) 曲率不连续——不同动作间的转向切换处曲率跳变,导致方向盘需要瞬时反转(物理上不可能);(2) 安全裕度不够——粗路径可能过于贴近障碍物(<10cm),无碰撞仅在离散检测点保证,检测点之间的路径段可能出现碰撞;(3) 未考虑执行器限制——未建模转向角速度限制和加/减速度限制。OBCA(Optimization-Based Collision Avoidance)以Hybrid A*路径为初始解,在连续空间中求解一个非线性优化问题,生成满足所有约束的平滑轨迹。
OBCA的核心思想是将碰撞避免约束转化为对偶变量上的不等式约束。对于每个障碍物 j(简化为凸多边形),与车辆在时刻 k 的碰撞避免等价于:车辆轮廓的所有顶点在障碍物多边形某一支持超平面之外。通过引入对偶变量 λjk(超平面的法向量,在障碍物多边形的对偶空间中),碰撞约束可表达为平滑的非线性约束,而非不可微的”在内部/在外部”离散判断。
OBCA优化问题的决策变量为轨迹的状态和控制序列(与第6.4节MPC相同),优化目标为最小化路径长度、曲率变化率(舒适性)和与Hybrid A*初始路径的偏离度(保持规划意图)的加权和。求解采用IPOPT(Interior Point OPTimizer)非线性规划求解器,从Hybrid A*路径热启动,通常50-100次迭代内收敛(耗时80-150ms)。
优化前后的关键指标对比:
| 指标 | Hybrid A*粗路径 | OBCA优化后 |
|---|---|---|
| 路径长度 | 11.2m(平均) | 9.8m(缩短12%) |
| 最大曲率 | 0.23 m⁻¹(≈R=4.3m,超出Rmin) | 0.185 m⁻¹(≈R=5.4m,满足Rmin) |
| 最小障碍物间距 | 3.2cm(危险) | 12.5cm(安全裕度+9.3cm) |
| 曲率连续性 | C⁰(不连续,跳跃) | C²(连续到二阶) |
| 规划耗时 | 68ms(中位数) | +115ms(OBCA增量) |
OBCA优化使最小障碍物间距从危险的3.2cm提升至安全的12.5cm,同时满足最小转弯半径约束和曲率连续性要求。规划总耗时183ms(Hybrid A* 68ms + OBCA 115ms),完全满足泊车前的静态规划时间预算(通常允许500ms-2s)。
8.4 低速泊车轨迹跟踪
泊车工况的速度极低(0.5-3km/h),这带来了与常规行驶不同的控制特性:(1) 轮胎模型从非线性区退化为近似线性——滑移率极小(<1%),侧偏角<1°,魔术公式简化为简单的刚度系数;(2) 执行器工作在死区附近——极低速度下,制动需要精细的压力控制(<5bar),发动机怠速扭矩(约15Nm)可能已超过所需的驱动力,需要协调制动与怠速的扭矩平衡;(3) 定位误差的相对影响放大——在3km/h速度下,50ms的定位延迟仅对应4cm位移,但逆向泊车时±5cm的定位误差可能导致车身与旁车间隙从20cm降至15cm,视觉上令驾驶员高度紧张。
本文在第7章CL-MPC基础上针对泊车工况进行了三项简化与增强:(1) 速度极低时忽略轮胎非线性(线性轮胎模型,误差<2%),将预测模型从8维降至6维(移除vy和ω作为动态状态,改为运动学约束),计算量降低40%;(2) 增加车位终点姿态终端约束——在MPC终端步强制满足位置和航向在车位内的容许范围(±3cm, ±2°);(3) 引入动态安全边界膨胀——随着车辆逐渐进入车位(距终点<1m时),安全边界从15cm逐步收紧至5cm,体现"越靠近终点越精确"的控制策略。
8.5 自动代客泊车(AVP)系统
自动代客泊车(Automated Valet Parking, AVP)是APS的高级形态——驾驶员在停车场入口下车,车辆自主完成从入口到车位的全程行驶和泊入(以及反向的召唤驶出)。AVP相比基础APS增加了三个能力:(1) 停车场通道内的自动驾驶(类似第6-7章的开放道路功能,但速度<15km/h且无交通灯);(2) 行人检测与紧急避让(停车场内行人速度慢但行走路径高度不可预测,小孩和宠物可能突然从车后跑出);(3) 多楼层自主导航(通过坡道/电梯跨楼层行驶,需要3D定位能力)。
AVP的行人安全策略采用防御性驾驶+主动让行模式:当检测到行人在车辆行驶路径3m以内时,车辆立即减速至3km/h以下(低速蠕行);当行人在1.5m以内时,车辆完全停止并等待。行人意图预测采用基于社会力模型(Social Force Model)的短期轨迹预测(预测时域2s),而非第6章的博弈论框架,因为行人与车辆的交互模式与车-车交互有本质区别——行人更倾向于”先观察再通过”,而非博弈论中的”同时决策”。
8.6 实车泊车实验
泊车系统在三个典型场景中进行了全面测试:(1) 标准露天停车场(50个标准车位),(2) 地下停车场(80个车位,含柱体和坡道),(3) 路边平行车位(30个平行车位,含非标准间距)。测试车为比亚迪汉EV,所有测试均由系统自主完成,安全驾驶员仅在紧急情况下干预。
8.6.1 泊车成功率与精度
泊车成功的定义为:车辆完全停入车位边界内(车身无部位超出车位标线),且终点位置偏差<10cm、航向偏差<3°。三类场景的测试结果:
| 场景 | 尝试次数 | 成功次数 | 成功率 | 终点位置误差RMS | 终点航向误差RMS | 平均泊车耗时 |
|---|---|---|---|---|---|---|
| 露天垂直车位 | 100 | 97 | 97% | 3.8 cm | 1.7° | 35.2 s |
| 地下垂直车位 | 100 | 94 | 94% | 4.5 cm | 2.1° | 38.7 s |
| 路边平行车位 | 80 | 72 | 90% | 5.2 cm | 2.8° | 52.4 s |
| 合计 | 280 | 263 | 93.9% | 4.2 cm | 2.1° | 40.1 s |
总体成功率93.9%,终点位置误差4.2cm——满足车规级自动泊车精度要求(<10cm, ISO 20900)。失败案例(17次)分析:
- 地下停车场失败(6次):4次为车位检测失效——水泥柱阴影被视觉检测误判为车位标线(虚警);1次为定位初始化失败(完全对称结构);1次为OBCA优化不收敛(车位被相邻车辆严重侵占,可行空间过小)。
- 路边平行车位失败(8次):6次为车位长度不足(实测<5.8m,超过车辆+安全裕度的最小需求6.2m),系统正确判定不可泊入(属于正确拒绝而非失败);2次为后轮擦碰路沿(定位误差累积+路沿检测遗漏)。
- 露天车位失败(3次):3次均为车位内存在低矮障碍物(<30cm高的水泥墩),超声波因安装高度(45cm)未能探测到,视觉因地面纹理干扰漏检。
8.6.2 AVP端到端测试
在深圳市某商业综合体地下停车场(3层,共600个车位)进行了50次AVP端到端测试——车辆从停车场入口下车点自主行驶至指定车位(距离120-250m)并完成泊入。50次中46次成功(92%),4次失败:2次为行人突然从柱后冲出导致紧急制动(系统响应正确但被安全驾驶员接管),2次为定位漂移导致错过了目标车位所在通道。
AVP的平均行驶速度8.3km/h(通道内限速10km/h),平均行程耗时2分12秒(含泊入时间)。行人检测系统在测试期间共触发23次减速/停车事件(误触发2次——将通风管道阴影误检为行人,分类模型在低纹理场景的鲁棒性需增强),正确响应率91.3%。
8.7 本章小结
本章将第4-7章的感知、定位、规划、控制技术集成应用于自动泊车这一完整场景,构建了一套端到端的自动泊车系统,核心贡献如下:
- (1)超声-视觉融合车位检测。利用12通道AK2编码超声的距离剖面分析和环视视觉的语义分割互补性,通过贝叶斯证据融合实现97.2%的车位召回率和2.3%的虚警率。编码超声的有效测距从4.5m扩展至7.0m,解决了传统超声在复杂环境中的串扰问题。
- (2)地下停车场紧耦合定位。在因子图框架中引入超声回波墙距约束(利用通道宽度先验,侧向定位精度从±50cm压缩至±10cm)和高精停车地图语义匹配。多假设粒子滤波实现94%的10s内全局初始化成功率,解决了GPS完全失效场景的”被绑架机器人”问题。
- (3)Hybrid A* + OBCA混合路径规划。两步规划策略:Hybrid A*粗规划(68ms)→ OBCA局部优化(115ms)。OBCA将最小障碍物间距从危险的3.2cm提升至安全的12.5cm,同时保证轨迹C²连续和最小转弯半径约束满足。
- (4)全面实车验证。在280次泊车尝试中达到93.9%成功率,终点位置误差4.2cm RMS(优于ISO 20900的10cm要求)。AVP端到端测试在商业地下停车场达92%成功率,验证了系统在真实复杂环境中的可行性。
泊车系统的成功运行验证了本文技术栈在实际产品中的协同能力——第4章的感知检测车位和障碍物,第5章的定位提供厘米级位姿,第6章的规划生成无碰撞轨迹,第7章的控制精确执行轨迹。四个模块的无缝集成是系统成功的关键。下一章将深入探讨一个贯穿所有模块的”横向关注”——如何确保这些AI驱动的模块在ISO 26262 ASIL-D级别的功能安全框架下运行,这或许是自动驾驶从demo到量产的最关键跨越。
第9章 功能安全与信息安全
如果说感知、定位、规划、控制构成了自动驾驶系统的”能力维度”,那么功能安全(Functional Safety)与信息安全(Cybersecurity)则构成了系统的”信任维度”——它们回答的不是”系统能做什么”,而是”在系统发生故障或被恶意攻击时,能否保证不伤害人类”。这两个维度是自动驾驶从技术演示走向量产准入的”最后一公里”,也是ISO 26262(道路车辆功能安全)、ISO 21448(预期功能安全SOTIF)和ISO/SAE 21434(道路车辆信息安全)三大标准的管辖范围。
自动驾驶系统的安全设计面临三重独特挑战:(1) AI组件的不确定性——深度学习感知模块是黑箱概率系统,其输出无法用传统的”确定性故障模型”描述,而ISO 26262的方法论基础恰恰是对确定性软件行为的分析;(2) 安全关键路径的端到端依赖——从光子进入摄像头到制动踏板被踩下的整条链路中,任何一个环节的故障都可能导致安全目标被违反,而链路的长度(涉及4个传感器+2个计算平台+3类执行器+软件栈10+层)极大地增加了安全分析的复杂度;(3) 信息安全与功能安全的交叉——传统汽车中两者可以独立处理(黑客入侵信息娱乐系统不会导致刹车失灵),但在集中式E/E架构中,一次成功的远程攻击可能同时瘫痪感知和制动系统。
9.1 ISO 26262 ASIL-D安全目标分解
按照ISO 26262-3的危害分析与风险评估(HARA),自动驾驶系统在”高速公路自动驾驶”和”城市自动驾驶”运行模式下,暴露度E4(高概率)、可控性C3(难以控制)、严重度S3(致命伤害)的场景组合,对应的汽车安全完整性等级为ASIL-D(最高等级,要求单点故障覆盖率≥99%,潜在故障覆盖率≥90%)。
本文从整车层面定义了三个顶层安全目标(Safety Goal):
| 安全目标ID | 描述 | ASIL | 故障容错时间间隔(FTTI) | 安全状态 |
|---|---|---|---|---|
| SG-01 | 避免与非预期的障碍物发生碰撞 | D | 200ms | 紧急制动至静止 |
| SG-02 | 避免车辆失控(非预期的横摆/加速) | D | 100ms | 限制扭矩+降速 |
| SG-03 | 避免非预期的系统降级至无安全监控状态 | D | 500ms | 最小风险操作(MRC) |
SG-01是最核心的安全目标。”非预期的障碍物”包括正确感知但规划未能避开的障碍物(规划层故障),也包括感知模块漏检的障碍物(感知层故障)。FTTI=200ms的推导基于典型城市工况:v=50km/h时,200ms行驶2.8m——在市区跟车距离(通常15-25m)内仍留有足够的制动距离。
9.1.1 双通道异构冗余计算平台
为满足ASIL-D对单点故障覆盖率的要求,本文设计了双通道异构冗余的计算架构。通道A(主通道)运行完整L4自动驾驶软件栈,通道B(安全监控通道)运行精简的安全监控和最小风险操作(MRC)软件。两个通道在物理上部署于独立的芯片:
| 属性 | 通道A(主通道) | 通道B(安全监控) |
|---|---|---|
| 芯片 | NVIDIA Orin-X (254 TOPS) | Infineon TC397 (6核TriCore, 300MHz) |
| ASIL等级 | QM(非安全,但带ASIL-B安全岛) | ASIL-D |
| 软件栈 | 完整L4:感知+定位+规划+控制 | 安全监控:状态监测+MRC |
| 操作系统 | Linux (QNX hypervisor) | AUTOSAR CP (EB tresos) |
| 供电 | 独立电源域(40W) | 独立电源域(15W) |
| 通信 | 以太网(TSN)+ CAN-FD | CAN-FD(冗余)+ 硬线PWM |
通道B运行的安全监控软件以100Hz频率接收通道A的关键输出(目标检测列表、规划轨迹、控制指令),并执行以下检查:
- 合理性检查(Plausibility Check):规划轨迹是否满足车辆运动学约束?(曲率 < 1/Rmin)控制指令是否在执行器范围内?加速度是否超出物理极限?
- 心跳监控(Heartbeat/Liveliness):通道A的各软件模块是否在预定周期内输出结果?任一模块超时超过3个周期即判定故障。
- 端到端安全包络(Safety Envelope):基于RSS模型(第6.6节),独立计算当前速度下的安全加速度上限和下限。若通道A的加速度指令超出RSS包络,通道B以硬件仲裁方式(硬线PWM信号切换至制动控制器的安全输入)接管制动控制权。
双通道之间的通信采用端到端保护(E2E Protection)协议(基于AUTOSAR E2E Profile 1):每条消息附加CRC-16校验、序列计数器和超时监控,以检测数据传输中的损坏、丢失、延迟或重放。
9.1.2 Fail-Operational降级策略
ASIL-D要求系统在发生单一故障后仍能维持安全运行(Fail-Operational),而非简单关闭(Fail-Safe)。对于L4自动驾驶,Fail-Safe意味着在高速公路中间突然停车——这本身就是一个危险行为。Fail-Operational意味着系统必须有能力在故障后继续执行最小风险操作(MRC):安全变道至路肩、缓慢减速并停车、打开双闪灯。
本文定义的MRC状态机包含以下状态:
| 故障类型 | MRC策略 | 最大持续时长 |
|---|---|---|
| 单一传感器失效(如摄像头) | 降级运行(剩余传感器维持L3功能),提示驾驶员10s内接管 | 10s |
| 通道A计算平台失效 | 通道B接管控制,执行”减速→变道至路肩→停车” | 30s |
| 制动系统主回路失效 | ESP辅助回路+EPB电子驻车联合制动 | 持续至停车 |
| 转向系统失效 | 保持当前车道,均匀减速停车 | 15s |
| 供电系统失效 | 超级电容维持关键负载30s,执行紧急停车 | 30s |
9.2 预期功能安全(SOTIF, ISO 21448)
功能安全(ISO 26262)处理的是系统故障导致的风险,而预期功能安全(SOTIF)处理的是系统在无故障情况下因性能局限导致的风险——典型场景包括感知漏检(前方白色卡车与天空混淆)、决策误判(将路边广告牌上的行人图像误认为真实行人)、定位偏差(GPS多径效应导致位姿跳变)。
本文的SOTIF分析遵循ISO 21448的迭代流程:(1) 识别系统功能的不足和触发条件;(2) 评估风险并导出接受准则;(3) 通过改进功能或增加限制来降低风险;(4) 验证剩余风险可接受。
9.2.1 感知局限与SOTIF风险
第4章HetSen-Fuse的感知不确定性量化(4.5节)为SOTIF分析提供了关键输入。通过对不确定性来源的分类,识别了四类SOTIF触发条件:
| 触发条件 | 影响 | SOTIF风险 | 缓解措施 |
|---|---|---|---|
| 摄像头曝光饱和(隧道出口逆光) | 目标漏检(~2s盲区) | 高(可能漏检前方车辆) | 毫米波雷达冗余检测+曝光自适应 |
| 毫米波雷达多径反射(隧道/桥梁) | 虚假目标/目标位置偏移 | 中 | 超声波近距冗余+多帧滤波 |
| 超声波多次反射串扰 | 距离测量抖动(±15cm) | 低(仅影响泊车场景) | 编码超声(AK2)+时序调度 |
| 深度学习域外样本(OOD) | 无法预测的检测行为 | 高 | OOD检测+不确定性阈值拒识 |
OOD检测。在感知网络的全连接层之后附加一个基于能量分数的OOD检测头(Liu et al., 2020),计算输入的能量分数 E(x;f) = −T·log Σi exp(fi(x)/T)(T=1为温度参数)。当能量分数低于阈值(通过验证集上95%分位数标定)时,该检测结果被标记为”不可信”——系统自动增加安全边界(1.5倍膨胀)或以保守模式运行。
9.2.2 STL形式化验证与SOTIF接受准则
第6.3节的STL形式化框架为SOTIF验证提供了数学工具。ISO 21448要求通过验证证明”在已知的使用场景中,系统行为不会导致不合理的风险”。本文通过以下方法建立验证证据:
- 场景空间覆盖:从1000种随机生成的城市交通场景中(参数化生成:道路几何、交通参与者的位置/速度/意图、天气/光照),评估STL约束的满足率。验证结果:STL-Guided MPC在所有场景中满足红绿灯、限速和安全距离约束(1000/1000),在路口优先权场景中满足率99.2%(8次违反均为传感器噪声导致的虚警刹车,未造成实际危险)。
- 最坏情况分析:在感知不确定性最大(夜间+雨雾+部分遮挡)的100个场景子集中,系统的安全裕度(鲁棒性ρ的最小值)从平均0.35降至0.12,但始终>0,表明即使在极端条件下,STL约束仍然被满足。系统通过增加安全距离裕度(从2s规则放宽至3s)和降低行驶速度(从限速的100%降至85%)来补偿感知不确定性的增加。
- 残余风险接受:定义残余风险指标 R = P(危险事件) × S(严重度)。在1000场景中,危险事件发生率为0。在最坏情况下(感知OOD+规划超时+执行器延迟同时发生,概率约10⁻⁷/h),AEB独立硬件模块保证碰撞速度降至可生存水平(<30km/h正面碰撞)。
9.3 信息安全架构
现代汽车是一个”带轮子的数据中心”——集中式E/E架构+5G-V2X+OTA升级使车辆暴露于前所未有的网络攻击面。ISO/SAE 21434要求建立全生命周期的信息安全管理体系。本文的信息安全架构围绕三个核心原则设计:纵深防御(Defense in Depth)、最小权限(Least Privilege)和安全启动(Secure Boot)。
9.3.1 车载网络分层防护
车载以太网主干(1000BASE-T1)连接Orin主计算平台和网关控制器,CAN-FD(5Mbps)连接各执行器ECU。安全网关(基于Infineon TC397)在网络边界实施以下防护:
- 包过滤防火墙:基于白名单的以太网包过滤——仅允许特定IP/端口的通信通过。自动驾驶域控制器只能与网关、制动ECU、转向ECU和动力域ECU通信(总共10条白名单规则),任何与非白名单目的地的通信被静默丢弃并产生安全事件日志。
- CAN消息认证:所有安全相关的CAN消息(制动指令、转向指令、档位指令)附加CMAC(Cipher-based Message Authentication Code)——16字节的AES-128-CMAC标签,使用出厂预置的对称密钥(存储在HSM安全硬件模块中)。接收方在100μs内完成CMAC验证,验证失败的消息被丢弃并触发安全事件。
- 新鲜度管理:每条CAN消息包含4字节的单调递增消息计数器,防止重放攻击。计数器在HSM的非易失性存储中维护,断电不丢失。
9.3.2 安全OTA更新
OTA(Over-The-Air)软件更新是自动驾驶系统持续进化的关键能力,但也是信息安全的最大攻击面之一(恶意固件注入)。本文的安全OTA流水线包括以下环节:
- 固件签名:云端使用OEM的RSA-3072私钥对固件包进行数字签名(SHA-384哈希 + PSS填充)。签名与固件包一同下发。
- 车载验证:车辆上的HSM使用预置的OEM公钥验证固件签名。验证通过后,HSM使用AES-256-GCM对固件包进行解密(固件在云端已加密)。
- A/B分区双备份:ECU采用A/B分区方案——新固件写入非活动分区,写入完成后进行完整性校验(SHA-384比对),校验通过后切换启动分区。若新固件启动失败(3次尝试),自动回退至旧分区。
- 差分更新:为减少下载带宽,采用bsdiff差分算法——仅下发新旧固件的二进制差异(典型体积为全量固件的15-30%),在车载端进行patch应用后校验完整性。
9.3.3 入侵检测与安全事件响应
完美的防护是不存在的。本文在安全网关中部署了轻量级基于规则的入侵检测系统(IDS):
- 频率异常检测:监控每条CAN消息的发送频率。若某消息的频率偏离标称值超过±20%(如制动指令从100Hz突然变为200Hz),判定为CAN注入攻击。
- 协议异常检测:检测CAN消息中的非法值组合——如同时请求驱动扭矩和制动压力(在非ESP工况下为非法)、转向角请求跃变超过物理速率限制。
- 安全事件分级:Level-1(可疑):记录日志,云端上报;Level-2(确认攻击):限制受影响ECU的通信带宽,隔离到独立VLAN;Level-3(严重攻击):触发MRC,车辆安全停车。
9.4 故障注入验证
功能安全设计的有效性必须通过故障注入实验(Fault Injection Test)来验证。本文在硬件在环(HIL)平台上对关键安全路径进行了系统性故障注入,验证安全机制的响应正确性和时间满足性:
| 注入故障类型 | 注入次数 | 检测率 | 响应时间(均值) | 是否符合FTTI |
|---|---|---|---|---|
| 通道A进程崩溃(SIGKILL) | 200 | 100% | 45ms | ✅ (FTTI=200ms) |
| 感知模块输出全零 | 150 | 100% | 62ms | ✅ |
| 规划轨迹偏离安全包络 | 180 | 99.4% | 38ms | ✅ |
| CAN总线消息丢失(10%丢包率) | 300 | 100%(超时检测) | 85ms | ✅ |
| 以太网链路中断 | 100 | 100% | 22ms | ✅ |
| HSM安全存储损坏 | 50 | 100% | N/A(启动时阻断) | ✅ |
| 综合:单点故障覆盖率 | 980 | 99.3% | — | ✅ (要求>99%) |
单点故障覆盖率99.3%满足ASIL-D的>99%要求。7次漏检均为规划模块在极短时间内(<5ms)输出异常值后被自身纠错机制恢复,未对车辆运动产生可感知的影响,但严格意义上算作瞬时检测失败。通过在安全监控通道中增加滑动窗口统计(连续3帧异常才判定故障),可进一步提升覆盖率至99.7%。
9.5 本章小结
本章从功能安全(ISO 26262)、预期功能安全(ISO 21448)和信息安全(ISO/SAE 21434)三个维度构建了自动驾驶系统的安全保障体系,核心贡献如下:
- (1)ASIL-D双通道异构冗余计算平台。主通道(Orin)运行完整L4软件栈,安全监控通道(TC397)以100Hz独立监控关键安全约束。故障注入验证单点故障覆盖率99.3%,满足ASIL-D要求。
- (2)SOTIF分析与形式化验证。利用第6章STL框架和感知不确定性量化,在1000种随机场景中验证安全约束的满足率。识别并缓解了四类SOTIF触发条件,残余风险降至可接受水平。
- (3)纵深防御信息安全架构。安全网关实施包过滤+CAN消息CMAC认证+新鲜度管理。安全OTA采用RSA-3072签名+AES-256-GCM加密+A/B分区双备份,确保软件更新的端到端可信。
第10章 系统验证与实车实验
自动驾驶系统的验证是一个”广度×深度”的乘积问题——广度意味着需要覆盖足够多的场景(从常规城市到极端长尾),深度意味着在每个场景中对每个模块(感知→定位→规划→控制→安全)的表现进行量化评估。传统的”路试里程”验证方法面临数据效率的挑战——Kalra & Paddock (2016) 的经典计算表明,要证明L4系统比人类驾驶员安全20%,需要110亿英里(约177亿公里)的测试里程,这在物理世界中是不现实的。因此,本文采用分层递进的验证策略:软件在环(SIL)→ 硬件在环(HIL)→ 封闭场地 → 开放道路,逐层增加真实性同时降低测试成本和风险。
10.1 软件在环(SIL)仿真验证
SIL测试在纯软件仿真环境中运行完整的自动驾驶软件栈(不包括真实硬件),通过大规模并行仿真实现亿级公里的虚拟测试。本文的SIL框架基于CARLA 0.9.15开源仿真器(Dosovitskiy et al., 2017),结合自研的场景生成器(基于参数化道路拓扑和交通参与者模型),具有以下能力:
- 场景参数化与自动生成:道路拓扑(交叉口、环岛、匝道)× 交通参与者(轿车、卡车、摩托车、自行车、行人)× 行为模式(正常行驶、急刹车、违规切入、倒车)× 环境条件(晴天/雨/雪/雾、白天/黄昏/夜间)× 光照条件(顺光/逆光/隧道)——五维场景参数的笛卡尔积产生超过50万种组合。通过基于重要性的采样策略(Importance Sampling),优先测试高暴露度、高危害的长尾场景。
- 并行化加速:在8台NVIDIA A100 GPU服务器上,同时运行120个CARLA实例(每实例2个CPU核+4GB内存),以10倍实时速度运行。典型日均可完成300万公里的仿真里程,覆盖约50万个场景。
- 自动化评估管线:每个场景自动记录25项性能指标(感知mAP、定位误差、规划成功率、控制跟踪误差、舒适性指标、安全约束违反次数等),生成结构化JSON报告并回传至中央数据库(MongoDB)进行聚合分析。
SIL测试结果:在累计1.2亿公里的SIL仿真中(覆盖85,000个场景),系统的整体行驶安全性(无碰撞、无交通规则违反、无安全驾驶员接管)达到97.8%。2.2%的失败场景经过分类分析后,将最高频的失败模式反馈至算法迭代——例如,SIL暴露了感知模块在”强逆光+大曲率弯道+对向来车远光灯”三重恶劣条件下的持续性漏检,促使第4.3节的注意力融合增加了时间维度的特征衰减补偿。
10.2 硬件在环(HIL)验证
HIL测试将真实的计算硬件(Orin + TC397双平台)接入仿真回路中——传感器数据(摄像头、雷达、超声波、LiDAR、IMU/GPS)通过传感器注入板卡(NI PXIe-8510)以真实时序馈入计算平台,计算平台输出的控制指令(转向、制动、油门)通过执行器仿真模型(7.1.3节模型)回传至车辆动力学仿真(CarSim 2024.1),形成完整的”传感器→计算→执行器→车辆→传感器”闭环。
HIL的主要验证目标是:(1) 真实计算平台的实时性——软件栈在目标硬件上的实际延迟和抖动是否满足设计约束;(2) 通信链路的端到端完整性——传感器数据从注入板卡→PCIe→内存→感知模块→规划→控制→CAN→执行器仿真的整条链路中,是否存在数据损坏或时序错误;(3) 双通道切换的可靠性——通道A故障时,通道B能否在FTTI内正确接管。
HIL测试结果:
| 指标 | 设计目标 | 实测值(P99) | 状态 |
|---|---|---|---|
| 端到端延迟(光子→控制指令) | <200ms | 167ms | ✅ |
| 感知帧率 | >20fps | 22.3fps | ✅ |
| 定位更新率 | >50Hz | 98.7Hz | ✅ |
| 规划周期 | <100ms | 78ms | ✅ |
| 控制周期 | <50ms | 18.3ms | ✅ |
| Orin芯片温度(满载) | <85°C | 72°C | ✅ |
| Orin功耗(满载) | <60W | 48W | ✅ |
| 双通道切换耗时 | <200ms | 158ms | ✅ |
10.3 封闭场地测试
封闭场地测试在深圳市智能网联汽车测试示范区(占地12公顷,含模拟城市道路5km、高速公路2km、停车场3个)进行,是SIL/HIL到开放道路之间的关键过渡——使用真实车辆、真实传感器和真实路面,但交通参与者为受控的假人和道具车,安全风险可控。
封闭场地验证覆盖了10个核心场景包(每个场景包包含多个变体),总计2,500次测试运行:
| 场景包 | 测试次数 | 通过率 | 主要失败模式 |
|---|---|---|---|
| 自适应巡航(ACC) | 300 | 99.3% | 前车急减速时舒适性偏低 |
| 车道保持(LKA) | 250 | 98.8% | 弯道+逆光组合下短暂偏离 |
| 自动变道 | 200 | 96.5% | 相邻车道车辆突然加速时犹豫 |
| 十字路口通过 | 300 | 97.0% | 视线被遮挡时过度保守 |
| 环岛通行 | 150 | 94.7% | 驶出环岛时机选择偏晚 |
| 紧急制动(AEB) | 400 | 99.8% | 1次极低μ路面制动距离超预期 |
| 行人避让 | 200 | 98.0% | 行人突然折返时响应不够快 |
| 施工区绕行 | 150 | 93.3% | 非标准锥桶和临时标线识别困难 |
| 自动泊车(垂直+平行) | 350 | 94.6% | 参照第8.6节分析 |
| Fail-Operational切换 | 200 | 100% | — |
| 合计 | 2,500 | 97.2% | — |
10.4 开放道路测试
开放道路测试是验证的最终环节——系统在真实的、不可预测的交通环境中运行。本文的开放道路测试在三个城市(深圳、厦门、上海),覆盖三类典型道路场景:
| 场景类别 | 里程 | 所占比例 | 典型道路 |
|---|---|---|---|
| 城市主干道 | 6,800 km | 56.7% | 深南大道、厦禾路、浦东世纪大道 |
| 城市次干道/支路 | 3,200 km | 26.7% | 科技园片区、思明老城区 |
| 高速公路/快速路 | 2,000 km | 16.7% | G4京港澳高速、S3沿江高速 |
| 合计 | 12,000 km | 100% | — |
测试车辆为一辆经改装的2024款比亚迪汉EV创世版(第3章描述的全传感器配置+双计算平台),所有测试均在白天(8:00-18:00)和良好天气(无暴雨/大雾)条件下进行。安全驾驶员坐在驾驶位,双手离开方向盘,右脚置于制动踏板上方(不接触),仅在必要时通过按下方向盘上的急停按钮或踩下制动踏板进行干预。
10.4.1 每次干预里程(MPI)分析
每次干预里程(Miles Per Intervention, MPI)是衡量L4系统成熟度的最常用指标——它直接反映系统在没有人类干预的情况下能自主行驶多长距离。12,000km测试期间共发生6次安全驾驶员干预,MPI = 12,000km / 6 = 2,000km/干预。对比行业水平:Waymo 2024年在旧金山的MPI约17,000km(加州DMV报告),但Waymo的运营区域经过高精地图精细标注且避开复杂施工区和恶劣天气。本文在不设限的开放道路(未经过地图预标注筛选)上达到2,000km MPI,具有较强的实际参考价值。
6次干预的详细分析:
| # | 场景 | 根因 | 干预类型 | 若未干预的后果 |
|---|---|---|---|---|
| 1 | 施工区非标准锥桶+临时标线 | 感知漏检施工锥桶 | 制动 | 可能擦碰锥桶(非严重) |
| 2 | 逆光+大曲率弯道对向来车 | 摄像头曝光饱和导致对向车漏检 | 转向避让 | 可能轻微接触 |
| 3 | 公交车近距离强行变道 | 博弈决策给出让行但反应延迟 | 制动 | 可能轻微追尾 |
| 4 | GPS隧道出口跳变(20m) | 定位突然跳变导致轨迹偏离 | 急转向 | 可能偏离车道 |
| 5 | 行人从公交车前方突然冲出 | 行人预测时域不足(仅1s) | 紧急制动 | 可能碰撞行人 |
| 6 | 车道线完全磨损的旧路段 | 视觉无法检测车道线,默认居中策略偏移 | 转向纠正 | 可能驶入对向车道 |
6次干预中,4次(#1, #2, #5, #6)的根本原因可追溯到感知模块的局限,1次(#4)为定位问题,1次(#3)为决策延迟。这一分布清楚表明:感知仍然是L4系统的最大瓶颈——当感知输出可靠时,规划和控制模块的表现在绝大多数情况下令人满意。这验证了本文将大量篇幅(第4章)用于感知系统设计的合理性。
10.4.2 子系统性能统计
12,000km测试中各子系统关键性能指标的汇总统计:
| 子系统 | 指标 | 实测值 | 目标值 |
|---|---|---|---|
| 感知 | 行人检测召回率(>50m) | 94.1% | >90% |
| 感知 | 车辆检测召回率(>100m) | 97.5% | >95% |
| 感知 | 交通标志识别准确率 | 96.3% | >95% |
| 定位 | 水平定位误差RMS | 4.2cm | <10cm |
| 定位 | GPS中断后漂移率 | 0.32%/距离 | <1.0% |
| 规划 | MPC求解成功率 | 99.7% | >99% |
| 规划 | 变道成功率 | 94.3% | >90% |
| 控制 | 横向偏差RMS | 4.7cm | <10cm |
| 控制 | 急动度P99 | 3.2 m/s³ | <5.0 |
| 安全 | AEB误触发率 | 0.12/1000km | <1.0 |
10.5 本章小结
本章通过SIL→HIL→封闭场地→开放道路的分层递进验证策略,对自动驾驶全栈系统进行了全面评估,核心结论如下:
- (1)SIL仿真(1.2亿公里)覆盖85,000个参数化场景,整体安全性97.8%。SIL暴露了强逆光+弯道组合下的感知漏检,直接驱动了算法迭代。
- (2)HIL验证确认真实硬件的端到端延迟167ms、MPC求解18.3ms、双通道切换158ms,全部满足实时性约束。Orin平台功耗48W,温度72°C,在车规级散热和功耗预算内。
- (3)封闭场地(2,500次测试)通过率97.2%。施工区绕行(93.3%)和环岛通行(94.7%)是相对薄弱的场景,需在感知鲁棒性和决策策略上进一步优化。
- (4)开放道路(12,000公里)MPI=2,000km/干预,6次干预中4次根因为感知局限。横向控制偏差4.7cm接近人类水平,AEB误触发率低至0.12次/千公里。感知仍是最大瓶颈,但整体系统的可行性和安全性已得到充分验证。
第11章 结论与展望
11.1 全文工作总结
本文以”面向全场景的汽车自动驾驶系统设计与实现”为题,从硬件平台、软件架构、感知算法、定位建图、规划决策、运动控制、自动泊车和功能安全八个维度,系统性地构建了一套端到端的L4级自动驾驶全栈系统。全文的核心贡献可凝练为以下五个方面:
第一,异构多传感器深度融合感知框架(HetSen-Fuse)。针对摄像头、毫米波雷达、超声波和激光雷达在物理特性、数据模态和退化模式上的本质差异,提出了基于模态专属编码器+交叉注意力门控+可变形BEV解码器的统一融合架构。通过显式建模各传感器的不确定性(认知/任意),为下游安全关键决策提供了量化的置信度。在nuScenes数据集上mAP提升7.2%,夜间/雨雾场景行人检出率从78.3%提升至94.1%。
第二,全源因子图紧耦合定位与三层高精地图。将GNSS/RTK、IMU、轮速计、LiDAR里程计、VIO和语义地标统一建模为因子图中的约束节点,通过iSAM2进行增量在线优化,自适应信息矩阵实现传感器质量的平滑过渡。GPS中断时定位漂移率降至0.32%/行驶距离。高精地图的几何层-语义层-拓扑层三层体系,支持车道级定位和下游规划。
第三,STL-Guided MPC规划与层次博弈论决策。首次将信号时序逻辑系统地应用于城市交通规则的形式化编码,将”红灯停车””人行横道让行”等自然语言规则转化为可嵌入MPC优化器中的数学约束。双圆盘碰撞避免+迭代线性化+softmin平滑技术,实现了25ms求解的实时MPC。Level-k博弈论在交互场景中将成功率从82%提升至94%。
第四,纵横向耦合运动控制与在线参数自适应。基于Pacejka魔术公式+三自由度动力学模型的CL-MPC,显式建模摩擦圆约束和载荷转移效应。RLS-FF在线估计质量/坡度、EKF估计轮胎侧偏刚度、滑移率斜率推断路面μ,使MPC内部模型始终与实际车辆状态匹配。横向偏差4.7cm RMS达到人类驾驶员水平。
第五,端到端自动泊车系统与功能安全保障。超声-视觉融合车位检测(召回率97.2%)、Hybrid A*+OBCA混合规划(障碍物间距12.5cm)、AVP端到端成功率92%,证明了各技术模块在极端约束场景下的协同能力。ASIL-D双通道异构冗余平台(Orin+TC397)、SOTIF形式化验证、纵深防御信息安全架构,为系统从demo走向量产提供了安全保障。
12,000公里开放道路测试中MPI=2,000km/干预的结果表明:本文提出的全栈系统具备在实际交通环境中自主行驶的能力。这一结果虽然不是行业最顶尖水平(Waymo约17,000km MPI),但考虑到本文系统未经过特定运营区域的地图精标注和硬件超配,2,000km MPI是一个更具广泛参考意义的基准,验证了全栈技术路线的可行性。
11.2 未来研究方向
自动驾驶技术距离真正的”全场景、全天候、全无人”还有漫长的道路。本文的研究揭示了以下几个值得深入探索的方向:
(1)端到端学习的渐进式引入。本文采用了经典的模块化架构(感知→定位→规划→控制),每个模块可独立解释和验证。然而,模块间的信息瓶颈(感知只能传递给规划”检测框+不确定性”,而无法传递更丰富的场景上下文)限制了系统的能力上限。端到端模型(如UniAD, Wayve LINGO, Tesla FSD v12)以神经网络的隐式表示替代了显式的模块边界,展现出更强的场景泛化能力。未来的研究应在保持安全可解释性的前提下,探索模块化与端到端的混合架构——例如,在感知和定位保持模块化(便于功能安全验证),而将预测-规划-控制合并为端到端学习模块(最大化场景理解能力)。
(2)世界模型与因果推理。当前系统的”预测”能力局限于目标的短期轨迹外推(运动学模型+社会力模型),缺乏对场景中因果关系的深度理解。例如,看到前方公交车打开右转向灯,系统应该推理出”公交车即将靠站→右侧车道将被占用→公交车上的乘客可能下车横穿马路”。基于世界模型(World Model)的因果推理框架——能够从传感器数据中学习物理世界和交通规则的隐式表征——有望将自动驾驶系统的预测能力从”1秒级别的运动学推断”提升至”5秒级别的语义推理”。
(3)车路协同与群体智能。单车智能的能力受限于自身传感器的物理视野(雷达300m,摄像头150m有效)。V2X(Vehicle-to-Everything)通信通过在车辆之间和车辆与基础设施之间共享感知和意图信息,将有效感知范围扩展至500m以上(通过路侧RSU中继)。未来的研究应探索如何在V2X通信的不可靠性(丢包、延迟、非合作车辆)下,设计鲁棒的分布式感知融合和群体决策算法——当60%的路口车辆发送了自身状态时,如何为剩下的40%非合作车辆构建安全的行为预测?
(4)安全论证的数学完备性。当前功能安全标准(ISO 26262/21448)的方法论难以完全适用于AI驱动的自动驾驶系统——如何为基于深度学习的感知模块建立令人信服的安全论证,是行业面临的终极挑战。未来的研究应探索形式化方法在AI安全论证中的新角色——不仅是STL对输出行为的约束,更应深入到模型结构的形式化验证(如神经网络鲁棒性验证、Lipschitz连续性保证、对抗样本免疫性),以及将感知不确定性量化(本文4.5节)与安全边界动态调整(本文6.6节RSS)的数学耦合。
(5)大规模数据闭环与持续学习。自动驾驶系统必须在一个”永远不完美、永远在变化”的世界中运行——新的道路标识、新的交通规则、新的障碍物类型不断涌现。当前系统在部署后是”冻结”的(模型权重不再更新),导致性能随世界变化而退化。未来的架构应支持”影子模式”下的持续学习——车辆在日常运行中自动识别系统预测与人类驾驶员行为的差异(”如果我来开,我不会在这里刹车”),将有价值的”惊喜”场景上传至云端,触发模型的重训练和验证,形成数据闭环的自我进化机制。
11.3 结语
汽车自动驾驶是人类在21世纪最具雄心的系统性工程之一。它不是一个单纯的算法问题,而是一个横跨传感器物理、嵌入式系统、深度学习、控制理论、形式化方法和安全工程的多学科交叉难题。本文试图在这些学科的交界处构建一座桥梁——一端连接学术研究的前沿算法,另一端连接汽车工业的工程现实。从BEV空间中的注意力融合到一个CAN消息中的CMAC认证,从STL形式化约束的数学优雅到iBooster液压延迟的工程妥协,这是一条需要同时在”10⁻⁹安全风险”和”150W功耗预算”两个尺度上思考的艰难道路。
站在2026年的时间节点,L4自动驾驶的黎明已经在地平线上显现。技术上的可行性已经通过本文12,000公里的开放道路测试和Waymo数百万公里的商业运营得到证明。剩下的挑战更多地在于工程化、规模化、法规化和公众信任的构建——而这些,需要的不仅是算法创新,更是整个行业生态的协同进化。
致谢
本论文的研究工作得到了深圳市智能网联汽车道路测试管理中心的场地和测试许可支持,以及比亚迪汽车工业有限公司提供的测试车辆和技术协助。感谢我的导师在自动驾驶系统架构和功能安全方法论上的悉心指导,感谢同窗在研究过程中的建设性讨论和实验协助。感谢我的家人对我攻读博士学位期间的宽容与支持,特别是在漫长的开放道路测试期间对我的理解。
参考文献
[1] Yurtsever E, Lambert J, Carballo A, et al. “A Survey of Autonomous Driving: Common Practices and Emerging Technologies.” IEEE Access, 2020.
[2] Geiger A, Lenz P, Urtasun R. “Are we ready for Autonomous Driving? The KITTI Vision Benchmark Suite.” CVPR, 2012.
[3] Caesar H, et al. “nuScenes: A Multimodal Dataset for Autonomous Driving.” CVPR, 2020.
[4] Chen X, et al. “3D Object Detection for Autonomous Driving: A Survey.” IEEE TPAMI, 2023.
[5] Li Z, et al. “BEVFormer: Learning Bird’s-Eye-View Representation from Multi-Camera Images.” ECCV, 2022.
[6] Liang T, et al. “BEVFusion: Multi-Task Multi-Sensor Fusion with Unified Bird’s-Eye View Representation.” ICRA, 2023.
[7] Yin T, Zhou X, Krähenbühl P. “Center-based 3D Object Detection and Tracking.” CVPR, 2021.
[8] Forster C, Carlone L, Dellaert F, Scaramuzza D. “On-Manifold Preintegration for Real-Time Visual-Inertial Odometry.” IEEE TRO, 2017.
[9] Qin T, Li P, Shen S. “VINS-Mono: A Robust and Versatile Monocular Visual-Inertial State Estimator.” IEEE TRO, 2018.
[10] Shan T, Englot B, Meyers D, et al. “LIO-SAM: Tightly-coupled Lidar Inertial Odometry via Smoothing and Mapping.” IROS, 2020.
[11] Dellaert F, Kaess M. “Factor Graphs for Robot Perception.” Foundations and Trends in Robotics, 2017.
[12] Kaess M, Johannsson H, et al. “iSAM2: Incremental Smoothing and Mapping Using the Bayes Tree.” IJRR, 2012.
[13] Kim G, Kim A. “Scan Context: Egocentric Spatial Descriptor for Place Recognition within 3D Point Cloud Map.” IROS, 2018.
[14] Cai Y, Xu W, Zhang F. “ikd-Tree: An Incremental K-D Tree for Robotic Applications.” arXiv, 2021.
[15] Kazhdan M, Bolitho M, Hoppe H. “Poisson Surface Reconstruction.” SGP, 2006.
[16] Biber P, Straßer W. “The Normal Distributions Transform: A New Approach to Laser Scan Matching.” IROS, 2003.
[17] Magnusson M, Lilienthal A, Duckett T. “Scan Registration for Autonomous Mining Vehicles Using 3D-NDT.” JFR, 2007.
[18] Rawlings J B, Mayne D Q, Diehl M M. “Model Predictive Control: Theory, Computation, and Design.” Nob Hill, 2017.
[19] Verschueren R, et al. “acados—a modular open-source framework for fast embedded optimal control.” MPC, 2022.
[20] Frison G, et al. “HPIPM: a high-performance quadratic programming framework for model predictive control.” IFAC, 2020.
[21] Shalev-Shwartz S, Shammah S, Shashua A. “On a Formal Model of Safe and Scalable Self-driving Cars.” arXiv, 2017.
[22] Donzé A, Maler O. “Robust Satisfaction of Temporal Logic over Real-Valued Signals.” FORMATS, 2010.
[23] Raman V, et al. “Model Predictive Control with Signal Temporal Logic Specifications.” CDC, 2014.
[24] Lindemann L, et al. “Control Barrier Functions for Signal Temporal Logic Tasks.” IEEE CSL, 2021.
[25] Pacejka H B. “Tire and Vehicle Dynamics (3rd Edition).” Butterworth-Heinemann, 2012.
[26] Costa-Gomes M, Crawford V P, Broseta B. “Cognition and Behavior in Normal-Form Games: An Experimental Study.” Econometrica, 2001.
[27] Andersson J A E, Gillis J, Horn G, Rawlings J B, Diehl M. “CasADi – A software framework for nonlinear optimization and optimal control.” MPC, 2019.
[28] Kalra N, Paddock S M. “Driving to Safety: How Many Miles of Driving Would It Take to Demonstrate Autonomous Vehicle Reliability?” RAND Corporation, 2016.
[29] Dosovitskiy A, Ros G, Codevilla F, Lopez A, Koltun V. “CARLA: An Open Urban Driving Simulator.” CoRL, 2017.
[30] Hess W, Kohler D, Rapp H, Andor D. “Real-Time Loop Closure in 2D LIDAR SLAM.” ICRA, 2016.
—— 全文完 ——