一、HARA概述:什么是HARA?

各位工程师朋友,咱们今天聊聊HARA。HARA的全称是Hazard Analysis and Risk Assessment,中文叫“危害分析与风险评估”。

说白了,HARA就是回答三个问题:

  • 系统会不会出危险?
  • 出了危险有多严重?
  • 我们该怎么定安全目标?

我个人习惯把HARA比作“安全体检”。就像人去医院做检查,看看身体有没有隐患。HARA就是给汽车电子系统做体检,找出潜在的危险点。

核心定义:HARA是ISO 26262中用于识别车辆功能潜在危害,并评估这些危害所导致风险的系统化方法。它最终输出ASIL等级和安全目标。

二、HARA在ISO 26262中的位置

ISO 26262把开发流程分成了多个阶段。HARA出现在哪里呢?

嗯,这里要注意——HARA是概念阶段的核心活动。具体来说,它属于第3部分(Part 3)的内容。

我给大家画个简单的流程:

Item Definition(项目定义)
        ↓
Hazard Analysis & Risk Assessment(HARA)
        ↓
Safety Goals(安全目标)
        ↓
Functional Safety Concept(功能安全概念)
        ↓
Technical Safety Concept(技术安全概念)
        ↓
...后续开发

你看,HARA就像一道分水岭。在它之前,我们还在描述“系统要做什么”。在它之后,我们就开始定义“系统必须安全地做什么”。

我在项目中遇到过不少团队,他们急着写代码、画电路,却把HARA草草了事。结果呢?后期发现安全目标定错了,整个设计推倒重来。那叫一个惨痛。

三、HARA的核心目标

HARA到底要达成什么?我总结了三个核心目标:

目标1:识别危害事件

系统在运行过程中,哪些情况可能导致人员受伤?比如:

  • 刹车突然失灵
  • 方向盘意外转向
  • 加速踏板无响应

这些都要一一列出来。你想想看,漏掉一个危害,可能就是一条人命。

目标2:评估风险等级

识别出危害后,我们要给每个危害“打分”。ISO 26262用了三个参数:

参数 含义 取值
S(Severity) 严重度 S0~S3
E(Exposure) 暴露概率 E0~E4
C(Controllability) 可控性 C0~C3

这三个参数组合起来,就得到了ASIL等级(A、B、C、D)。QM表示没有安全要求。

我的经验:很多新手容易把S值定得过高。比如一个轻微故障,非要给S3。其实S3意味着“危及生命的伤害”。我曾经见过一个团队,把车窗防夹功能定成了ASIL C,后来一分析,其实QM就够了。白白增加了开发成本。

目标3:制定安全目标

有了ASIL等级,我们就要写安全目标了。安全目标是一句简洁的话,描述“系统必须避免什么”。比如:

  • “车辆在行驶过程中,必须避免非预期的加速”(ASIL C)
  • “车辆在制动过程中,必须保持制动力不丢失”(ASIL D)

每个安全目标都对应一个ASIL等级。这个等级会贯穿后续所有开发活动——从硬件设计到软件实现,从测试验证到生产运维。

避坑指南:我曾经犯过一个错误——把安全目标写得太具体。比如“MCU必须在10ms内检测到故障”。这其实是技术安全需求,不是安全目标。安全目标应该只描述“要避免什么”,不描述“怎么实现”。记住这个原则:安全目标是“what”,不是“how”。

四、HARA的输入与输出

搞清楚了核心目标,我们再看看HARA需要什么、产出什么。

输入:

  • 项目定义(Item Definition)
  • 系统功能清单
  • 运行场景描述(高速公路、城市道路、停车场等)
  • 相关法律法规要求

输出:

  • 危害事件列表
  • 每个危害事件的ASIL等级
  • 安全目标(Safety Goals)
  • 安全状态描述(比如“进入安全状态:切断动力输出”)

一句话总结:HARA就是把“可能出什么事”变成“必须避免什么事”,并且给每件事定一个安全等级。

五、为什么HARA这么重要?

你可能会问:我不做HARA行不行?

说实话,如果你只是做个玩具车,那确实不用。但如果是量产车,尤其是L2以上的自动驾驶系统,不做HARA就是拿生命开玩笑。

我记得有一次评审,一个供应商说他们的系统“很安全,因为用了双核MCU”。我问他们:“你们的HARA呢?危害分析在哪?”他们愣住了。后来我帮他们做了初步分析,发现至少有3个危害事件被忽略了。其中一个可能导致车辆在高速上突然失去动力——这要是出了事,后果不堪设想。

所以,HARA不是走形式,它是功能安全的基石。没有它,后面的所有安全措施都是盲人摸象。

六、小结

这一章我们讲了:

  • HARA是危害分析与风险评估
  • 它位于ISO 26262的概念阶段(Part 3)
  • 核心目标是识别危害、评估风险、制定安全目标
  • 输入是项目定义,输出是ASIL等级和安全目标

下一章,我会详细讲HARA的具体执行步骤。咱们一步步来,把HARA吃透。

课后思考:你手头的项目,如果现在做HARA,你觉得最大的危害会是什么?试着列三个出来,下一章我们对照着分析。