1、功能安全概述:ISO 26262标准背景、功能安全在自动驾驶中的重要性、ASIL等级概念

1.1 为什么我们要聊功能安全?

说实话,我刚入行那会儿,对功能安全也没那么上心。总觉得「车能跑就行,安全是测试的事」。直到有一次,我在一个ADAS项目中,亲眼看到一辆测试车因为传感器信号短暂丢失,系统没有及时降级,差点撞上护栏。嗯,从那以后,我彻底改变了看法。

功能安全,说白了就是:当系统出故障时,它不能伤人。这不是「尽量不出错」,而是「出错也要安全」。你想想看,自动驾驶系统每天要处理几亿个数据点,任何一个环节的失效,都可能带来严重后果。

核心定义:功能安全是指不存在由电子电气系统故障行为引起的、不合理的风险。简单说——系统要能「扛得住」故障。

1.2 ISO 26262:功能安全的「宪法」

ISO 26262,全称是「道路车辆功能安全标准」。它最早在2011年发布,2018年出了第二版。我个人习惯把它看作一本「安全设计手册」——告诉你从概念到量产,每一步该怎么保证安全。

为什么要有这个标准?

  • 统一语言:以前各家车企各搞各的,出了事故没法追溯。现在有了统一的安全等级和流程。
  • 法律合规:很多国家已经将ISO 26262纳入法规要求。没有它,车可能上不了路。
  • 责任划分:出了事,是设计问题还是制造问题?标准帮你理清楚。

我记得有个项目,客户要求我们提供ASIL B级别的系统。当时团队里有人觉得「差不多就行」。我直接拿出ISO 26262的表格,一条条对过去——嗯,从那以后没人敢糊弄了。

1.3 功能安全在自动驾驶中的重要性

传统汽车的功能安全,主要关注发动机、刹车、转向这些「机械件」。但自动驾驶不一样——它依赖的是传感器、算法、执行器,还有复杂的软件栈。

这里有个关键点:自动驾驶系统是「人机共驾」的。系统出故障时,驾驶员可能来不及接管。所以,系统必须自己判断、自己降级、自己保证安全。

我在项目中遇到过这样一个场景:一辆L3级别的车,在高速上遇到暴雨,摄像头和激光雷达都失效了。系统需要在一秒内判断:是继续开?还是靠边停?还是请求驾驶员接管?

这个决策过程,就是功能安全要解决的问题。说白了,你要给系统设计一套「应急预案」——当传感器坏了、计算单元挂了、通信断了,系统该怎么做。

我的经验:功能安全不是「事后补救」,而是「事前设计」。从系统架构开始,就要考虑「如果这个模块坏了,会发生什么」。

1.4 ASIL等级:安全风险的「度量衡」

ASIL,全称是Automotive Safety Integrity Level(汽车安全完整性等级)。它把安全风险分成了四个等级:ASIL A、ASIL B、ASIL C、ASIL D。还有一个QM(质量管理),表示不需要特殊安全措施。

等级越高,要求越严格。ASIL D是最高的,比如刹车系统、转向系统。ASIL A是最低的,比如一些非关键功能。

怎么确定一个功能属于哪个等级?ISO 26262给出了三个参数:

参数 含义 等级
Severity(严重度) 故障发生时,对人的伤害程度 S0(无伤害)~ S3(致命)
Exposure(暴露度) 故障发生的概率(场景暴露) E0(几乎不)~ E4(非常高)
Controllability(可控度) 驾驶员或系统能否控制住故障 C0(完全可控)~ C3(不可控)

举个例子:

  • 如果刹车失灵(严重度S3),在高速上经常发生(暴露度E4),驾驶员几乎无法控制(可控度C3)——那这个功能就是ASIL D
  • 如果车内氛围灯坏了(严重度S0),那可能就是QM,不需要特殊安全设计。

避坑指南:我曾经见过一个团队,把「自动泊车」功能定成了ASIL B。但仔细分析后发现,如果泊车过程中系统误判,可能撞到行人(严重度S2),而且驾驶员不一定能及时干预(可控度C2)。最后我们改成了ASIL C。所以,不要凭感觉定等级,一定要做正式的HARA(危害分析与风险评估)

1.5 一个简单的ASIL等级计算示例

假设我们有一个「自动紧急制动(AEB)」功能。我们来分析一下:

  1. 场景:车辆以60km/h行驶,前方突然出现行人。
  2. 故障:AEB系统失效,没有触发制动。
  3. 后果:可能撞伤行人(严重度S3)。
  4. 暴露度:这种场景在城市道路中经常出现(暴露度E4)。
  5. 可控度:驾驶员反应时间很短,很难完全避免碰撞(可控度C2)。

查表:S3 + E4 + C2 → ASIL D

这意味着,AEB系统的开发需要遵循ASIL D的要求——包括硬件冗余、软件多样性、严格的测试覆盖率等等。

记住:ASIL等级不是「拍脑袋」定的。它需要基于具体的场景、故障模式、后果分析来推导。我建议每个项目都做一次正式的HARA,把结果记录在案。

1.6 小结:功能安全不是「加分项」,是「必答题」

好了,这一章我们聊了:

  • 功能安全是什么——系统出故障时,不能伤人。
  • ISO 26262是什么——一本安全设计的「操作手册」。
  • ASIL等级是什么——用严重度、暴露度、可控度三个维度,量化安全风险。

我个人觉得,功能安全最核心的理念就一句话:「不要假设系统不会坏,要假设它一定会坏,然后设计好应对方案」

下一章,我们会深入讲HARA(危害分析与风险评估)的具体做法。到时候我会分享一个我踩过的坑——嗯,保证让你印象深刻。

课后思考:你手头的项目中,哪个功能你觉得最危险?试着用S、E、C三个参数给它打个分,看看它属于哪个ASIL等级。