从信号冗余到驱动锁存的工程化落地体系
“软件决定安全策略,硬件决定安全的可信度。” ——功能安全设计核心哲学
一、信号层对策及硬件方案
| 对策 | 硬件典型方案 | 工程设计思想 | 模型对应实现 |
|---|---|---|---|
| 信号冗余 (Redundant Sensing) | 双路传感器(Dual Sensor),如双霍尔、双电位计;采用不同电源参考(5V / 3.3V),不同ADC通道 | 冗余不为替代,而为一致性验证;需保证故障独立性(Common Cause隔离) | 两输入通道 + Plausibility Check模块;差值、比例阈值判断 |
| 信号隔离 (Galvanic Isolation) | 光耦、隔离放大器(如ISO124)、隔离ADC | 防止噪声与地环流引入误触发;保障不同MCU通道互不干扰 | 模型中对应独立信号源路径,不共用滤波模块 |
| 输入滤波 (Input Filtering) | RC滤波网络、共模电感、TVS管 | 抑制高频毛刺与静电;改善信号质量 | 模型中实现时间防抖 Debounce 模块,或一阶滤波 |
| 供电监测 (Power Monitor) | 电压分压检测、比较器、电源监控IC(如TPS3700) | 电源异常时可及时检测,防止虚假信号 | 模型中“Voltage Monitor”模块,驱动降级或复位状态 |
| 温度保护 (Thermal Sensing) | NTC热敏电阻、内置温度传感器、过温比较器 | 关键元件热漂移或过载保护 | 模型中 Thermal_Plausibility 模块,实现温度与功率联动控制 |
二、控制层对策及硬件方案
| 对策 | 硬件方案 | 工程思想 | 模型实现 |
|---|---|---|---|
| 双MCU架构 (Dual MCU / Lockstep) | 主控+安全监控MCU;或采用双核锁步MCU(如Infineon AURIX、TI TMS570) | 软件失效独立检测;主副核运行同样代码并比对结果 | 建立主副模型通道;Simulink中使用比较模块 + 状态机仲裁 |
| 看门狗监控 (Watchdog Timer) | 独立外部WDT芯片(如TPS3430),与MCU异步时钟源 | 检测任务卡死或逻辑挂起 | 模型中加入AliveCounter逻辑;超时触发复位 |
| 任务超时检测 (Task Monitoring) | 由安全MCU或定时器捕捉任务心跳 | 确保周期任务不会中断;防止调度死锁 | 使用计数器或after(time)结构监控心跳 |
| 通信冗余与CRC (Comm Safety) | 双CAN总线、CRC校验器(CAN-FD内置CRC,或MCU外设CRC模块) | 通信链路防篡改、防丢包 | 模型中实现AliveCounter + CRC_Check模块 |
| 输入比较器防错 (Comparator Check) | 模拟比较器+窗口检测(window comparator) | 快速检测输入越界或短路 | 模型对应 Saturation Check 或 Range Monitor 模块 |
三、执行层(驱动层)对策及硬件方案
| 对策 | 硬件方案 | 工程思想 | 模型对应实现 |
|---|---|---|---|
| Safe Torque Off (STO) | 独立继电器或光耦驱动通断MOSFET栅极;如使用SIL3安全继电器或STO认证IGBT驱动芯片(如Infineon 1EDN) | 一旦触发,物理切断驱动;不可软件恢复 | Stateflow输出STO_req信号;硬件执行断能;状态保持 |
| 锁存保护 (Latch Protection) | 触发式锁存电路(SR触发器)或MCU中硬件Latch寄存器 | 保留故障状态防止误复位 | 模型中实现故障保持状态机 + 复位命令条件 |
| 驱动电流监控 (Current Sense) | 分流电阻+放大器(INA240)或霍尔电流传感器 | 检测过流、短路;执行断能或降额 | 模型中 CurrentMonitor + Threshold比较逻辑 |
| 温度/过热保护 (Thermal Cut-off) | 热敏电阻或IC温度保护器件(如LM75) | 防止功率器件过热 | 模型中 ThermalLimit 模块 + 降级模式触发 |
| 输出限幅 (Output Limiter) | 模拟限幅电路、PWM占空比钳制 | 确保指令输出不会异常超限 | 模型中 Rate Limiter / Saturation 模块对应 |
四、系统层对策及硬件方案
| 对策 | 硬件方案 | 工程思想 | 模型实现 |
|---|---|---|---|
| Limp Home 模式支撑 | 独立应急供电路径、独立控制支路(如电子油门怠速保持电路) | 当主系统失效时维持基本行驶能力 | Stateflow中Limp状态;固定输出(如怠速扭矩) |
| 电源分区 (Power Domain Separation) | 数模分区、逻辑域与驱动域独立供电;安全电源采用独立LDO或DC/DC | 防止短路、过压传播;提升诊断独立性 | 模型中电源监控信号;异常触发降级 |
| 通信隔离 (Bus Isolation) | CAN隔离芯片(如ISO1050)、光耦隔离 | 防止不同域间故障传播 | 模型中多域Safety Supervisor;域间仅传输状态 |
| 外部安全继电器 (Safety Relay) | 物理继电器控制主电源断开(如主接触器) | 最终断能防护 | 模型中FailSafe状态输出 Relay_Cut 控制信号 |
| 自检与诊断通路 (Built-In Test) | ADC回读、PWM回读、开路检测电阻网络 | 检查信号链路健康状态 | 模型中Self-Test模块;启动时执行诊断序列 |
五、特定领域经典硬件对策举例
1️⃣ 电子油门(Throttle / APP)
| 风险 | 硬件方案 | 软件配合 |
|---|---|---|
| 信号短路或断线 | 双电位计 + 不同参考电压;拉电阻检测开路 | Plausibility Check + Timeout |
| 卡死失灵 | 弹簧复位机构 + 独立电机反馈 | Stateflow检测位置偏差 + STO触发 |
| 电机驱动失控 | 双通道驱动器 + 继电器切断 | DriveSafe模块 + STO_req输出 |
2️⃣ 电动助力转向(EPS)
| 风险 | 硬件方案 | 软件配合 |
|---|---|---|
| 电流过载 | 霍尔电流传感器 + 比较器保护 | 电流监控 + 降功率模式 |
| MCU死机 | 双MCU + WDT监控 | 心跳监测 + 主副仲裁 |
| 通信异常 | 双CAN + CRC校验 | AliveCounter检测 + Limp模式触发 |
3️⃣ 电池管理系统(BMS)
| 风险 | 硬件方案 | 软件配合 |
|---|---|---|
| 电压采样漂移 | 分流采样IC + 隔离放大器 | Plausibility + 限值报警 |
| 热失控 | NTC阵列 + 冷却继电器 | Thermal Map + Safe-Off |
| 继电器粘连 | 继电器状态回读(双触点检测) | Stateflow逻辑锁存 + 禁止重启 |
六、硬件设计哲学提炼
1️⃣ 物理隔离原则: 软件安全逻辑必须依托物理隔离通路,否则无法称为ASIL级防护。
2️⃣ 双路径冗余原则: 任一关键信号,至少两路感知;任一关键执行,至少两路切断。
3️⃣ 检测先于控制原则: 检测硬件(ADC、比较器、诊断电阻)要优先设计,软件才能实现有效对策。
4️⃣ 默认安全原则 (Fail-Safe Default): 当信号异常或电源丢失,系统应自动回到安全状态(继电器断电、驱动关闭)。
5️⃣ 软硬闭环原则: 每个硬件元件,都要在Simulink模型中有一个“行为等价物”用于仿真验证。
七、Simulink模型与硬件设计协同建议
| 步骤 | 建议 |
|---|---|
| ① | 在模型信号注释中记录硬件通道映射(ADC编号、参考电压、管脚号) |
| ② | 将硬件安全参数(阈值、电流限、温度限)存入 Data Dictionary,统一配置 |
| ③ | 在模型验证阶段,通过 MIL 仿真注入硬件失效(开路、短路、超温) |
| ④ | HIL验证中验证STO触发与硬件继电器响应时间一致性 |
| ⑤ | 形成硬件-模型对照表,用于 Safety Case Traceability |
八、结语
“功能安全的终点,不是让系统不出错,而是让任何一个错误都有被控制的命运。”
每一个防护对策,背后都有硬件与软件的对位逻辑:
-
软件检测,硬件执行;
-
软件判断,硬件锁存;
-
软件降级,硬件保障。
当你能从Simulink模型的Stateflow路径,一眼对应出PCB上的隔离芯片、电阻网络、继电器和传感器, 这时你就真正跨越了“模型安全”和“物理安全”之间的鸿沟。
这才是工程化功能安全的终极境界。
功能安全硬件实现深度解析
61

被折叠的 条评论
为什么被折叠?



