3、危害识别基础:危害的定义与分类、功能失效与系统危害、危害识别的方法论
3.1 危害到底是什么?——先给个准确定义
做HARA分析这么多年,我见过不少新手一上来就问:“危害不就是车子出问题吗?”
嗯,这么说也对,但不精确。
在ISO 26262里,危害(Hazard)有严格的定义:
它是指由功能异常导致的、可能对人造成伤害的潜在事件。
说白了,危害不是故障本身,而是故障带来的后果。
举个例子:
- 功能失效:ACC系统突然不刹车了。
- 系统危害:车辆追尾,导致乘员受伤。
你看,危害是“可能造成伤害”的那个场景,而不是“系统坏了”这件事。
我个人习惯在项目一开始就把这个定义贴在白板上,
让团队每个人都清楚:我们找的是“伤害场景”,不是“故障模式”。
3.2 危害的分类——别把鸡蛋放在一个篮子里
危害不是千篇一律的。我建议按以下几个维度来分类:
3.2.1 按危害类型分
| 类型 | 说明 | ADAS示例 |
|---|---|---|
| 碰撞类 | 车辆与物体/行人碰撞 | AEB未触发导致追尾 |
| 偏离类 | 车辆偏离预期路径 | LKA失效导致车道偏离 |
| 速度类 | 车速异常 | ACC误加速到危险速度 |
| 感知类 | 环境感知错误 | 摄像头误识别导致误刹车 |
3.2.2 按危害严重度分
ISO 26262里用S(Severity)来评估:
- S0:无伤害
- S1:轻伤
- S2:重伤(可能危及生命)
- S3:致命伤
我在做某个L2级项目时,遇到过一种情况:
系统在高速上突然误刹车,后车追尾。
这个场景的S值我们给了S2,因为虽然车速不快,但追尾可能导致颈椎受伤。
比如ACC失效,在高速上是S3,在停车场可能只是S0。
3.3 功能失效与系统危害——一对“孪生兄弟”
很多人搞不清功能失效和系统危害的关系。
我打个比方:
- 功能失效是“病因”
- 系统危害是“病症”
举个例子:
功能失效: AEB系统的制动请求信号丢失。
系统危害: 车辆在接近前车时未制动,导致追尾。
你看,同一个功能失效,可能对应多个系统危害:
- 场景A:前车急刹,追尾 → S3
- 场景B:前车缓慢减速,驾驶员接管 → S0
所以,做HARA时,一定要把场景考虑进去。
我曾经见过一个团队,只列了功能失效就去做安全目标,结果漏掉了好几个关键场景。
嗯,后来返工了整整两周。
3.4 危害识别的方法论——我常用的三板斧
危害识别不是拍脑袋。我总结了一套方法论,分享给你:
3.4.1 第一板斧:功能清单法
先把系统的所有功能列出来,然后逐个问:
“如果这个功能失效了,会发生什么?”
比如对于ACC系统:
- 功能:保持设定车速
- 失效:车速失控
- 危害:超速导致失控或追尾
3.4.2 第二板斧:场景分析法
结合ODD(运行设计域)来想:
- 高速场景
- 城市拥堵场景
- 夜间/雨雾场景
- 弯道/坡道场景
每个场景下,同一个失效的危害程度可能完全不同。
我建议你画个矩阵:
功能失效 × 典型场景 → 危害列表
3.4.3 第三板斧:头脑风暴+检查表
别一个人闷头想。拉上系统、软件、测试的同事一起。
我习惯用一份检查表来引导讨论:
- 传感器失效(盲区、遮挡、脏污)
- 执行器失效(刹车卡滞、转向卡死)
- 通信失效(CAN丢帧、延迟)
- 电源失效(掉电、电压不稳)
- 软件失效(死锁、跑飞、数据溢出)
从那以后,我每次都会专门加一条:“环境因素导致的感知失效”。
3.5 一个完整的危害识别示例
拿LKA(车道保持辅助)系统来说:
| 功能失效 | 典型场景 | 危害描述 | S |
|---|---|---|---|
| LKA误激活转向 | 高速直道行驶 | 车辆突然转向,偏离车道,可能与邻车碰撞 | S2 |
| LKA未激活转向 | 弯道行驶 | 车辆未跟随车道转弯,驶出道路 | S3 |
| LKA扭矩输出过大 | 湿滑路面 | 车辆失控侧滑 | S3 |
你看,同一个LKA功能,三个不同的失效模式,对应三个完全不同的危害场景。
这就是为什么我说:危害识别一定要细,要具体。
3.6 小结——记住这三句话
好了,这一章的内容就这些。我帮你总结三句话:
- 危害是“场景+失效+伤害”的组合体,不是单纯的故障。
- 分类要按类型和严重度来,别混为一谈。
- 方法论要系统化,功能清单、场景分析、头脑风暴,一个都不能少。
下一章,我们会讲如何给危害定等级——也就是ASIL的评定。
到时候我会分享一个我踩过的坑,关于“E值(暴露概率)到底怎么算”。
嗯,那是个很有意思的故事。
公众号:蓝海资料掘金营,微信deep3321