一、智能驾驶故障诊断概述

各位同学好,我是老张。在智能驾驶这个行当摸爬滚打了十几年,今天咱们来聊聊故障诊断这件事。

说实话,我刚入行那会儿,故障诊断还是个挺边缘的活儿。大家更关注的是感知算法准不准、控制稳不稳。直到有一次路测,车辆在高速上突然丢失了定位信号,差点出事——嗯,从那以后,整个团队才真正重视起故障诊断来。

1.1 功能安全与预期功能安全基础

先说说两个基础概念:功能安全(FuSa)预期功能安全(SOTIF)

功能安全,说白了就是防止系统因为硬件故障或软件错误而出事。比如传感器坏了、线束松了、芯片过热了——这些都属于功能安全的范畴。

预期功能安全呢?它解决的是另一个问题:系统本身没坏,但遇到了设计时没考虑到的场景。比如大雾天摄像头看不清、暴雨中激光雷达反射异常、或者路上突然出现一个不按套路出牌的快递三轮车。

核心区别一句话总结:

  • 功能安全:系统坏了怎么办?
  • 预期功能安全:系统没坏但搞不定怎么办?

我个人习惯把这两个概念比作「生病」和「能力不足」。功能安全是治病的,预期功能安全是提升能力的。两者缺一不可。

我在项目中遇到过一件事:某款车型的AEB(自动紧急制动)功能,在功能安全层面做得非常扎实,所有传感器冗余、双通道校验都到位了。但到了冬天,北方的一场大雪让摄像头识别率骤降,系统直接「罢工」了——这就是预期功能安全没做好的典型例子。

1.2 故障诊断在自动驾驶中的角色

故障诊断在自动驾驶里到底扮演什么角色?我给它总结了三个关键词:眼睛、大脑、守门员

角色 职责 举例
眼睛 实时监测系统状态 检测IMU数据是否异常、CAN总线是否丢帧
大脑 分析故障原因 定位是传感器故障还是算法异常
守门员 阻止故障扩散 发现异常后及时触发降级策略

你想想看,一辆自动驾驶汽车在路上跑,每秒产生几十GB的数据。如果某个传感器突然失效,系统必须在毫秒级做出判断——是继续开?还是减速?还是靠边停车?

这就是故障诊断的价值所在。它不是一个「锦上添花」的功能,而是安全底线

避坑指南:

我曾经犯过一个错误:只关注了「硬件故障」的诊断,忽略了「数据质量」的监控。结果有一次,GPS信号被高楼遮挡,定位精度从厘米级掉到了米级,但系统认为「硬件没坏」,继续按高精度定位来规划路径——差点撞上护栏。从那以后,我要求团队必须把「数据质量」也纳入故障诊断体系。

1.3 降级策略的核心目标

降级策略,说白了就是「出事了怎么办」。它的核心目标有三个:

  1. 保证安全:任何时候都不能让车辆进入危险状态
  2. 维持可用:在安全的前提下,尽量让车辆还能开
  3. 优雅降级:降级过程要平滑,不能让乘客感到突兀

这三个目标是有优先级的。安全永远是第一位的,这一点没得商量。

我举个例子:假设你的前向摄像头突然失效了。这时候:

  • 最低安全目标:立即减速,靠边停车,请求远程接管
  • 中等可用目标:切换到毫米波雷达和超声波雷达的组合,降速到30km/h,继续行驶到最近的服务区
  • 优雅降级目标:在切换过程中,仪表盘显示「传感器异常,正在切换备用方案」,同时用语音提示驾驶员注意

你看,同样是摄像头失效,不同的降级策略带来的用户体验完全不同。

注意:

降级策略不是「拍脑袋」定的。它需要基于故障诊断的结果,结合功能安全等级(ASIL等级)来设计。比如,转向系统失效的降级策略,和空调系统失效的降级策略,安全要求完全不是一个量级。

下面这张图是我自己总结的故障诊断与降级策略的整体框架,大家可以对照着理解:

智能驾驶故障诊断与降级策略框架 感知层故障诊断 摄像头异常 | 雷达失效 | 定位丢失 | IMU漂移 | 数据质量下降 故障诊断引擎 故障检测 → 故障隔离 → 故障识别 → 严重度评估 降级策略决策 安全优先 → 可用性评估 → 降级方案选择 → 执行指令下发 降级执行 减速靠边 | 切换冗余 | 限速行驶 | 请求接管 时间轴 →

这张图展示了从感知到执行的完整链路。每一层都有对应的诊断和决策逻辑,环环相扣。

我的经验:

在实际项目中,最容易出问题的是「诊断层」和「决策层」之间的衔接。诊断引擎报了一个故障,但决策层不知道怎么处理——这种情况我见过太多次了。所以,我建议在设计阶段就把「故障-策略」映射表做出来,每个故障类型对应至少一个降级方案。

好了,这一章的内容就到这里。故障诊断不是一蹴而就的事,它需要在实际路测中不断积累和迭代。下一章我们会深入具体的诊断算法,到时候再聊。


专注资料整理