Safety Validation — 整车级安全确认
本质与导读
本质:Sa.Val 不是"再做一遍测试",而是 从 SG 反向倒推——在 vehicle level 验证 HARA 假设成立、FSC 真避免危害、TSC 在真工况下有效、司机能 controllability。Verification 在 V-cycle 每个阶段做(单元 / 集成 / 系统),Sa.Val 只在整车上做,只在 release 前做,且 ISO 26262 强制独立 team(I2/I3)。车规项目延期最大单一风险就是 Sa.Val 阶段才发现 SG 违反——这就是 OEM 普遍要求 mid-development Sa.Val(SiL / HiL 早期模拟)的根因。本页用 Verification ↔ Validation 对比、6 级测试环境梯、场景 × 环境覆盖矩阵、18 月时间线把 Sa.Val 落到能做项目计划的颗粒度。
1. Verification ≠ Validation
ISO 26262 严格区分这两个概念,但工程师常误用。Verification 答"做对了"(work product 符合上层 input),Validation 答"做了对的"(整车 SG 真满足)。两者都是必要,不可互替。
| 维度 | Verification | Validation |
|---|---|---|
| 问题 | 每层符合 input 吗? | 整车 SG 满足吗? |
| 手段 | Review / Inspection / 单元 + 集成测试 | 整车测试 + FI + Drive Scenario |
| 环境 | 仿真 / SiL / HiL / bench | Vehicle level / PG / 公开路 |
| 时机 | V-cycle 每一阶段 | Release for Production 前 6-3 月 |
| 主责 | 开发方(Tier-1) | OEM(可 outsource 部分给 Tier-1) |
| 独立性 | I1/I2 即可 | ASIL D 必 I3 / 第三方 |
常见误区:把"FI 测试通过"当 validation——FI 是 verification 手段(SM 反应在 FTTI 内符合 TSC),validation 是问 "TSC 真避免了 SG 违反吗"。
2. Sa.Val 必含 4 类内容
ISO 26262 Part 4 Clause 8.4 列出 Sa.Val campaign 必须覆盖:
- HARA 假设验证——人 controllability + external measures 实际成立。例:HARA 假设"司机 80% 时能在 1.5 秒内反应",Sa.Val 实测平均反应时间 1.2 秒 → 假设成立。
- FSC 验证——Functional Safety Requirements 实际能避免 SG 违反。例:FSC "电机扭矩超 SG 上限 5% 必须 PWM disable",Sa.Val 注入 5.1% 过扭矩 → 验证 PWM 在 FTTI 内 disable。
- TSC 验证——Safety Mechanisms 在真实工况下有效。例:TSC "DC = 95% 通过 Lockstep + March-C",Sa.Val 注入双 bit ECC → 验证 SafeState 在 内进入。
- Controllability 验证——Warning + degradation 策略对司机可接受。例:降功率到 50%,仪表盘黄灯亮,司机能继续靠边停 → 用户研究 + 实车测试。
关键:这 4 类不能用 verification 替代——FI 测试不能告诉你"司机看得见黄灯",Bench dyno 不能告诉你"HARA 假设对真实司机成立"。
3. 测试环境梯 6 级
Sa.Val 从 SiL 走到公开路,逐级逼近真实,每级解决前一级解决不了的问题。
| 级 | 环境 | 解决什么 | 主要不足 |
|---|---|---|---|
| Lv 1 | SiL(Software-in-Loop) | 控制算法逻辑 + 边界条件 | 不能验真硬件 |
| Lv 2 | MiL(Model-in-Loop) | 控制 ↔ plant 闭环 | plant 是模型,非真物 |
| Lv 3 | HiL(Hardware-in-Loop) | 真 ECU + FI 自动化 | 外设是仿真信号 |
| Lv 4 | Bench(dyno 台架) | 真电机 + 真功率级 | 缺整车机械 / 环境 |
| Lv 5 | Proving Ground | 真车 + 封闭场地 + HARA 场景 | 工况受限,司机非真用户 |
| Lv 6 | 公开路 fleet | 真驾驶人 + 真工况 + 长 mileage | 不可重复,FI 不能做 |
ASIL D 项目工时典型分布:HiL ~60% / Bench ~20% / PG ~15% / 公开路 ~5%。跳级走 Lv 5 成本爆炸——所有问题积压到真车阶段,每个修复 cycle 周以上。
4. 场景 × 环境覆盖矩阵
不同场景类型有不同的主战场环境。下面是 Sa.Val Plan 必须填的覆盖矩阵——每个空格要么 ✓ 要么 ✗ + rationale。
判断规则:
- FI(Fault Injection)主战场 HiL——✓✓:可重复 / 自动化 / 100% 受控,且不会损坏真硬件;Bench 做部分(真功率级 FI,如人为短路 IGBT);PG 极少做(只挑 1-2 条 critical FI),公开路绝不做。
- HARA 触发场景主战场 PG——✓✓:封闭场地能精确复制 HARA 场景(如 100 km/h 转弯 + 突然失效),公开路 opt(司机意外 fault 真实但不可重复)。
- 耐久(10k+ km 时漂)主战场公开路——✓✓:只有公开路 fleet 能跑足够 mileage 暴露慢漂 / 慢老化。
- 司机 controllability 主战场 PG / 公开路——必须真人在真车上,前 4 级都验不了。
未覆盖的格子必须在 Sa.Val Plan 写明 rationale——"为什么这场景不覆盖,或者为什么换到别的环境"。
5. Sa.Val Plan 关键章节
Sa.Val Plan 是 Sa.Val campaign 的章程,M6-M9 完成初版,贯穿至 SoP。典型章节:
- 目标 SG/FSC/TSC 清单——每条都有 Plan 入口
- 场景库(scenario catalog)——HARA 触发场景全集 + 边界工况 + FI 列表
- 环境分配——每场景对应主战场环境 + 复用环境
- 覆盖矩阵——上节图,所有空格填明
- PASS 标准——每场景的 expected behavior(FTTI / DC / 司机响应)
- 数据采集——CAN / Flexray / 视频 / 加速度 / 司机感官
- 失败处理——发现 SG 违反 → 走 Change Request → Plan v.next
- 里程碑——Mid-dev val M6 / Bench M9 / PG M12 / 公开路 M15 / Final M17
living document——任何 work product 改动都触发 Sa.Val Plan 重审。
6. Sa.Val 时间线 18 月
ASIL D 项目从 M0 启动到 M18 SoP,Sa.Val 不是 SoP 前最后 3 个月才做,而是贯穿 M6 至 M18。
按月节奏:
| 月份 | 阶段 | Sa.Val 活动 |
|---|---|---|
| M3 | 概念冻结 | Sa.Val Plan v0.1(目标 + 场景库初稿) |
| M6 | A 样件 | Mid-dev Sa.Val 启动(SiL → HiL,假车试 FSC 关键场景) |
| M9 | B 样件 | Bench dyno Sa.Val(真功率级 + FI) |
| M12 | C 样件 | Proving Ground Sa.Val(真车,HARA 场景大批量) |
| M15 | D 样件 + PV | 公开路 fleet(20-50 台车,3-6 月路试) |
| M17 | RFP 准备 | Final Sa.Val Report + I3 review |
| M18 | SoP | Sa.Val 报告 = Release for Production 硬前提 |
最贵的失误:Mid-dev val 没做,M12 PG 阶段才发现某 SG 不达——这时已经有 30+ 工程师投入 9 个月,改设计 → 重 sample → 重 verify → 重 validate,SoP 推 3-6 月很常见。
7. OEM-Tier1 责任切分
Sa.Val 的责任切分必须写进 DIA(Development Interface Agreement),最常见的模糊条款 Top 5:
- "OEM 主导,Tier-1 配合"——没切清谁出 PG 场地、谁出测试车、谁出司机、谁写报告。
- "Mid-dev val 双方共同进行"——双方都觉得对方该排期,M9 才发现一个 HiL 都没搭。
- "Controllability 由 OEM 评估"——但 Tier-1 没拿到 OEM 用户研究报告,无法在 Plan 里写 controllability 标准。
- "公开路 fleet OEM 包"——但 fleet 里没装 Tier-1 的诊断 logger,出问题数据回不来。
- "Final Sa.Val Report 由 OEM 签"——但 Tier-1 想自己看 raw data 复检,DIA 没写 access right。
实战建议:DIA Sa.Val 章节至少 5 页,逐场景逐环境写谁负责什么。
8. 5 类 Sa.Val 失败模式
ASIL D 项目 Sa.Val 阶段最常见的失败模式:
- Mid-dev val 缺失。Plan 只在 M15 后做 → SoP 前发现 SG 违反 → 推 3-6 月。
- 场景库不全。Sa.Val Plan 漏了 HARA 某条触发场景 → PG 阶段没测 → Assessment 阶段 TÜV 挑出来 → 重补。
- PASS 标准模糊。"司机感知 OK"——但 OK 是 80% 受访者还是 95%?没量化标准 → 反复争议。
- 数据回不来。fleet 测试发现某次 SG 违反但 logger 没存关键 CAN 帧 → 无法复现 → 无法定根因。
- Controllability 用 engineer 当司机。Tier-1 拿自己工程师做 controllability test → 不代表真实用户群 → OEM 用户研究阶段被打回。
9. 实战:Sa.Val 早期预警机制
OEM / 头部 Tier-1 都会上 Sa.Val red flag dashboard——每周收集以下指标,任何超阈值触发 Plan v.next:
- 场景库覆盖率(Plan 中场景 / HARA 触发场景总数)< 95% → red
- FI 覆盖率(已注入 SM / TSC 列出 SM 数)< 90% → red
- 上周新发现的 SG 违反次数 > 0 → red(应在 Mid-dev val 阶段已暴露)
- 距 SoP 时间 / Plan 剩余场景数比值 < 2x → yellow
dashboard 是 FSM 工具,不是技术工具——目的是让 Safety Mgr 看到趋势,提前 3-6 个月调资源。
核心要点
- Verification ≠ Validation:Verification 在每阶段做,Validation 只在 vehicle level 做,不可互替。
- Sa.Val 必含 4 类:HARA 假设 / FSC / TSC / Controllability。
- 6 级测试环境梯:SiL → MiL → HiL → Bench → PG → 公开路;ASIL D 必至少到 Lv 5。
- 场景 × 环境覆盖矩阵:FI 主战场 HiL,HARA 主战场 PG,耐久主战场公开路,controllability 必 PG/公开路。
- Sa.Val 贯穿 M6-M18——不是 SoP 前最后 3 月才做。
- Mid-dev val 缺失是延期最大单一风险——M6 必启动 SiL / HiL 试关键 SG。
- DIA Sa.Val 章节模糊 Top 5:责任 / 场地 / 数据 access / fleet 包谁 / 报告谁签。
- Red flag dashboard 跟踪场景覆盖 / FI 覆盖 / SG 违反次数,提前 3-6 月预警。
- Final Sa.Val Report 是 RFP 硬前提——Safety Mgr 不签 RFP 没法量产。
Engineering Objects
引用此页的结构化 Engineeri…
引用此页的结构化 Engineering Object(v2.0 Copilot 自动生成,不要手动编辑此段)。
- standard ·
standard_iso26262_part4_validation— ISO 26262-4 (2018) 系统层 / Safety Validation
Cross-references
- ← 索引
- topic-iso26262-part4-system — Part 4 Sa.Val 标准条款
- topic-iso26262-part3-concept — HARA / FSC 输入
- topic-functional-safety — 功能安全 hub
- topic-fault-injection-testing — FI 是 Sa.Val 主战场之一
- topic-fault-injection-examples — FI 具体注入点
- topic-safety-assessment-audit — Sa.Val Report 是 Assessment 必交付物
- topic-safety-management-fsm — Sa.Val Plan 是 FSM 触点之一
- topic-hsi-document — HSI 改触发 Sa.Val Plan 重审
- topic-iso21448-sotif — SOTIF Sa.Val 与 26262 协同
- topic-stl-bist-runtime-selftest — STL/BIST 也走 Sa.Val