电机控制器功能安全实战——从HARA到SSR的完整设计流程

基于某量产电驱动总成(EDU)电机控制器功能安全开发项目实战经验总结,硬件平台:Infineon AURIX TC387(ASIL-D, LockStep)+ TLF35584(SBC)+ NXP GD3160(Gate Driver)+ Danfoss DP700B750T1 IGBT模块,最终达成ASIL C功能安全等级。


前言:为什么要做功能安全?

随着新能源汽车的快速普及,电机控制器(MCU/MCU Inverter)作为电驱动系统的核心执行部件,其安全性直接关系到整车安全和驾乘人员生命安全。ISO 26262《道路车辆功能安全标准》自2011年发布第一版以来,已成为汽车行业功能安全开发的国际通用准则,并于2018年发布第二版,扩展了对半导体、商用车的覆盖。

电机控制器在整车中承担扭矩控制、能量回收、高压管理等关键功能。一旦发生安全相关的系统性故障或随机硬件失效,可能导致非预期加速、动力丢失、高压触电、热失控等严重危害。因此,在EDU(Electric Drive Unit)开发初期就引入功能安全流程,从概念阶段到产品发布进行全生命周期安全管理,是确保量产车辆安全合规的必由之路。

本文基于实际项目经验,完整梳理电机控制器功能安全开发从HARA到SSR的七步核心流程。


第一步:HARA —— 危害分析与风险评估

1.1 场景分析与危害识别

HARA(Hazard Analysis and Risk Assessment)是功能安全开发的起点。针对电机控制器,我们识别了以下典型危害场景:

序号危害场景潜在后果
H1高速行驶中非预期加速车辆失控、碰撞
H2坡道起步时溜坡车辆后溜、碰撞
H3高压回路绝缘失效导致触电人员伤亡
H4电机过温导致起火车辆起火
H5扭矩输出中断导致动力丢失车辆无法行驶、高速失速
H6传感器故障导致扭矩错误输出非预期加减速

1.2 ASIL等级确定

根据ISO 26262-3的三大参数——严重度(Severity)、暴露率(Exposure)、可控性(Controllability),对每一危害进行ASIL(Automotive Safety Integrity Level)评级:

  • Severity S0-S3:伤害严重程度(S0=无伤害 → S3=生命危险)
  • Exposure E0-E4:场景暴露概率(E0=几乎不暴露 → E4=频繁暴露)
  • Controllability C0-C3:驾驶员或其他人对危害的可控程度(C0=完全可控 → C3=几乎不可控)

ASIL等级由 S × E × C 组合确定,分为 QM、ASIL A、ASIL B、ASIL C、ASIL D 五个等级,其中ASIL D为最高安全等级。

实例:对场景 H1 “高速行驶中非预期加速” 进行ASIL评定

以危害场景H1为例,我们逐项评估三个参数:

① 严重度 S 评定:

  • 场景描述:车辆在高速路以120km/h行驶时,电机控制器故障导致非预期急加速,车辆失控
  • 可能后果:车辆偏离车道 → 与相邻车道车辆或护栏碰撞 → 乘员重伤甚至死亡
  • 评定结果:S3(致命伤害)——非预期加速在高速场景下极可能导致严重事故

② 暴露率 E 评定:

  • 场景描述:车辆可能在全天候各种路况下行驶,高速场景是常见工况之一
  • 暴露频率:对日常通勤用户,高速行驶占总驾驶时间约30%-50%
  • 评定结果:E3(高暴露概率)——虽非每次出行必上高速,但在车辆全生命周期中频繁出现

③ 可控性 C 评定:

  • 场景描述:非预期加速发生时,驾驶员可采取以下措施:
    • 踩下制动踏板(多数车辆制动系统能力大于最大驱动扭矩)
    • 切断动力(松加速踏板→系统检测到冲突→触发安全保护)
    • 电子稳定系统(ESC)介入限制扭矩
    • 但是,若加速与制动同时作用时间过长,制动可能热衰退
  • 评定结果:C2(中等可控)——驾驶员可通过制动等方式部分控制,但需要一定反应时间和操作技巧

④ ASIL等级确定:

参数评定等级依据
严重度 SS3高速碰撞可导致生命危险
暴露率 EE3高速行驶频繁出现但并非每次驾驶必遇
可控性 CC2可通过制动等方式控制,但需反应时间

根据ISO 26262 ASIL等级查表规则:

S3 × E3 × C2 → ASIL C

HARA团队综合评定后,为H1分配ASIL C等级。这意味着系统设计需要满足ASIL C对应的诊断覆盖率要求(单点故障≥97%、潜伏故障≥80%),并采用相应的安全机制保证风险可接受。

同理,对H4(高压触电)场景,S评定为S3(触电致命)、E评定为E3(维修保养时暴露)、C评定为C2(断电操作可控制),同样达到ASIL C等级。而对H2(坡道溜坡),因严重度较低(低速碰撞)通常只到ASIL B

小知识:为什么很少见 ASIL D 的电机控制器?ASIL D要求单点故障覆盖率≥99%,需要三重冗余等极高成本方案。电机控制器通过外部安全监控(如VCU的冗余扭矩监控),将系统级ASIL需求分解到ECU级别,只要整车级满足安全目标即可。

1.3 安全目标(Safety Goals)定义

通过HARA分析,我们共定义了9项安全目标(SG1-SG9):

在这里插入图片描述

功能安全设计七步流程:从HARA危害分析开始,经SG定义→FSR架构→TSR技术方案→HSR硬件设计→SSR软件安全,最终经过验证确认达成ASIL C等级

安全目标ID安全目标描述ASIL等级FTTI要求关联安全状态
SG1防止非预期加速ASIL C≤ 20msSS1/SS2 主动短路或关管停车 + SS7 上报故障
SG2防止非预期减速(溜坡)ASIL B≤ 50msSS2 关管自由滑行 + SS1 主动短路防溜
SG3防止扭矩输出丢失ASIL B≤ 100msSS7 上报故障 + SS1 主动短路
SG4防止高压触电ASIL C≤ 10msSS3 断开高压继电器 + 母线放电
SG5防止电机过温起火ASIL B≤ 100msSS4 限制扭矩 → SS5 降功率
SG6防止IGBT过温/过流损坏ASIL C≤ 10msSS1 主动短路(ASC) + SS5 降功率
SG7防止扭矩方向错误ASIL C≤ 20msSS1/SS2 停车 + SS7 上报
SG8防止扭矩超限输出ASIL C≤ 20msSS1 主动短路 + SS5 降功率
SG9防止软件跑飞导致失控ASIL B≤ 50msSS6 SBC复位MCU重启

FTTI(Fault Tolerant Time Interval):从故障发生到系统进入安全状态的最长允许时间,是系统设计的关键时序约束。


第二步:SG拆解 —— 安全目标分解

顶层安全目标需要在系统架构层面逐层分解到子系统、模块乃至具体组件。以SG1(防止非预期加速)为例:

SG1: 防止非预期加速 (ASIL C)
├── SG1.1: 扭矩需求校验 (ASIL C)
│   ├── SG1.1.1: CAN扭矩指令E2E保护
│   └── SG1.1.2: 扭矩监控冗余算法
├── SG1.2: 扭矩输出路径监控 (ASIL C)
│   ├── SG1.2.1: 6步PWM占空比校验
│   └── SG1.2.2: 三相电流一致性检查
└── SG1.3: 硬件执行器诊断 (ASIL C)
    ├── SG1.3.1: IGBT Desat保护
    └── SG1.3.2: 电流传感器偏置/增益诊断

在这里插入图片描述

安全目标SG分解树:以SG1"防止非预期加速"(ASIL C)为例,逐层分解为扭矩需求校验→输出路径监控→硬件执行器诊断三个子分支,每个分支继续细化到具体安全措施,形成完整的可追溯安全需求链。

分解后的每个子安全目标都可以被分配到一个具体的系统元素(软件模块、硬件电路、外部器件),从而为FSR和TSR的编写奠定基础。


第三步:FSR —— 功能安全需求

3.1 三层安全架构

电机控制器的功能安全架构采用经典的EGas三层监控模型,这是行业内广泛认可的架构模式:

在这里插入图片描述

电机控制器三层安全架构:Level 1功能层(QM/绿色)执行FOC控制/扭矩计算;Level 2功能监控层(ASIL C/橙色)监控扭矩/温度/高压/程序流;Level 3硬件监控层(ASIL C/红色)监控时钟/内存/ALU/ADC/电源。底部为TC387+TLF35584+GD3160硬件平台

Level 1 - 功能层(QM等级)
功能层负责正常的电机控制算法执行,包括FOC(磁场定向控制)、转速环/电流环PI调节、SVPWM调制、弱磁控制等。功能层的所有输出(如扭矩指令、PWM占空比)会被Level 2实时监控。

  • ASIL等级:QM
  • 核心模块:FOC控制、旋变解码、弱磁控制、MTPA、电流环PI
  • 安全职责:无——但需要为Level 2提供足够的信息接口

Level 2 - 功能监控层(ASIL等级)
功能监控层负责对Level 1的行为进行实时监控,一旦检测到异常则触发安全措施。

  • ASIL等级:ASIL C(部分功能ASIL B)
  • 核心模块:
    • 扭矩监控模块:通过磁通法和功率法冗余计算电机扭矩,与Level 1扭矩指令比较
    • 温度监控模块:监控IGBT结温、电机绕组温度、母线温度
    • 高压监控模块:监控直流母线电压、绝缘电阻
    • 程序流监控模块:通过Q&A机制监控Level 1程序执行流

Level 3 - 硬件监控层(ASIL等级)
硬件层提供最底层的基础安全诊断机制,利用MCU、SBC、Gate Driver等硬件自身的安全机制实现失效探测。

  • ASIL等级:ASIL D(硬件本身可达)
  • 核心模块:
    • MCU硬件诊断:时钟监控、内存ECC校验、MPU保护、ALU自检、ADC诊断、总线诊断
    • SBC看门狗:触发Level 2超时响应
    • Gate Driver诊断:Desat保护、Miller钳位、SPI故障上报

3.2 FSR → SG 追溯性矩阵

功能安全需求(FSR)是对SG的功能级分解,回答"系统需要具备哪些安全功能"的问题。FSR只定义"做什么",不涉及"怎么做"(具体技术方案由TSR承接)。下表将每个FSR与其所支撑的SG对应起来。

FSR编号功能安全需求描述安全层级ASIL等级关联SG
FSR-01Level 1扭矩控制模块执行FOC扭矩计算,输出至Level 2监控L1 功能层QMSG1, SG7, SG8
FSR-02Level 1 PWM模块根据扭矩指令输出6路互补PWM,精度≤1%L1 功能层QMSG1, SG8
FSR-03Level 1主动放电模块在指令后120s内放电至60V以下L1 功能层QMSG4
FSR-04Level 2扭矩监控须通过磁通法和功率法双冗余路径独立计算扭矩并比对L2 监控层ASIL CSG1, SG7, SG8
FSR-05Level 2扭矩偏差阈值5%,超出须在FTTI(20ms)内触发安全状态L2 监控层ASIL CSG1, SG8
FSR-06Level 2温度监控须实时监测IGBT结温≥125°C时触发降功率L2 监控层ASIL BSG5, SG6
FSR-07Level 2高压监控须实时监测母线电压,异常时触发高压断开L2 监控层ASIL BSG4
FSR-08Level 2程序流Q&A机制监控Level 1执行时序,超时10ms触发SBC复位L2 监控层ASIL CSG9
FSR-09Level 2坡道扭矩保持监控:坡度信号校验+扭矩补偿L2 监控层ASIL BSG2
FSR-10Level 2 CAN通信E2E保护(CRC+Counter+Timeout)L2 监控层ASIL CSG1, SG3, SG8
FSR-11Level 2 IGBT温度变化率监控,防止温升过快L2 监控层ASIL CSG6
FSR-12Level 3 MCU时钟监控PLL锁定状态和频率偏差L3 硬件层ASIL CSG9
FSR-13Level 3 Flash/RAM ECC单比特纠错+双比特检测L3 硬件层ASIL CSG9
FSR-14Level 3 MPU对L1/L2内存空间隔离保护L3 硬件层ASIL CSG9
FSR-15Level 3 ADC自检(参考电压+自检信号注入)L3 硬件层ASIL CSG1, SG7, SG8
FSR-16Level 3 SBC窗口WDG+功能WDG(Q&A)两级监控L3 硬件层ASIL CSG9
FSR-17Level 3 SBC电源轨(5V/3.3V/1.25V)过压/欠压监控L3 硬件层ASIL BSG4
FSR-18Level 3 GD Desat保护检测IGBT Vce>7-9V后2μs内软关断L3 硬件层ASIL CSG6, SG8
FSR-19Level 3 GD Miller钳位抑制dv/dt误导通L3 硬件层ASIL CSG6, SG8
FSR-20Level 3 GD SPI诊断实时上报故障至MCUL3 硬件层ASIL CSG6, SG8
FSR-21Level 3 相电流传感器偏置/增益诊断+三相反向和验证L3 硬件层ASIL CSG1, SG7, SG8
FSR-22Level 3 旋变传感器诊断:励磁丢失+幅值异常+位置跳变L3 硬件层ASIL CSG7
FSR-23Level 3 NTC开路/短路+温度变化率合理性诊断L3 硬件层ASIL BSG5, SG6
FSR-24Level 3 CPU LBIST上电自检L3 硬件层ASIL BSG9
FSR-25故障优先级安全状态管理系统级ASIL CSG1-SG9

追溯性说明:FSR是SG的功能级分解,回答"需要什么安全功能"。例如SG1(防止非预期加速)由FSR-01/02/04/05/15/21共6项FSR共同支撑。具体的实现方案(分配元素、触发安全状态)由TSR承接。

3.3 安全状态定义

当系统检测到安全相关的故障时,需要进入预定义的安全状态(Safe State)。本项目中定义了8种安全状态:
硬件架构图
在这里插入图片描述
关断路径
在这里插入图片描述

电机控制器安全机制架构:MCU(TC387)通过PWM双路径控制GD3160驱动IGBT,SBC(TLF35584)通过Path 3 NAND逻辑实现硬件安全关断。Desat保护、Miller钳位、NTC温度检测、电流/电压采样构成全方位的硬件安全诊断

安全状态ID安全状态名称触发条件动作描述目标SG
SS1主动短路ASCIGBT过流/Desat/扭矩超限关闭所有IGBT上桥,打开下桥,电机三相短路SG1, SG6, SG7, SG8
SS2关管Freewheel非预期加速/方向错误关闭所有IGBT,电机自由滑行SG1, SG7, SG8
SS3高压断开绝缘失效/高压异常断开主正/主负继电器,母线电容放电SG4
SS4扭矩限制温度超限/轻微故障限制最大输出扭矩至安全值SG5
SS5降功率运行中度过温/电压异常降低开关频率,减少功率输出SG5, SG6
SS6系统重启MCU/SBC Watchdog超时SBC复位MCU,系统重新初始化SG9
SS7安全通信中断CAN通信故障进入错误被动/主动状态,输出安全报文SG1, SG3
SS8EEPROM数据回滚校验失败回滚到上一版安全标定参数SG3

3.4 ASC vs Freewheel策略

ASC(Active Short Circuit)和Freewheel是电机控制器两种最重要的被动安全状态,选择时机至关重要:

ASC(主动短路)策略:

  • 动作:导通下桥三管(或上桥三管),电机三相短路
  • 效果:产生制动扭矩,快速降低电机转速,反电动势被短路电流消耗
  • 适用场景:IGBT过流、Desat保护、扭矩超限、系统级严重故障
  • 风险:短路电流大,可能导致IGBT热过载

Freewheel(关管自由滑行)策略:

  • 动作:关闭所有6个IGBT,电机开路
  • 效果:电机无制动扭矩,自由滑行,反电动势通过IGBT体二极管整流到母线
  • 适用场景:非预期加速、轻度故障、高速工况
  • 风险:母线电压可能升高(泵升效应),需要DC-link电容或主动放电配合

选择逻辑: 高速工况优先Freewheel(避免短路电流过大),低速/静止工况优先ASC(快速制动)。同时需考虑系统是否支持ASC(某些IGBT模块不支持长时间ASC)。


第四步:TSR —— 技术安全需求

TSR(Technical Safety Requirements)将FSR落实到具体的技术实现方案中,基于所选硬件平台进行功能分配。

4.1 MCU安全机制

Infineon AURIX TC387具备丰富的硬件安全特性:

安全机制描述覆盖的故障类型
LockStep Core双核锁步运行,冗余计算并比较结果CPU内核随机硬件故障
CPU自检(SMU)Safety Management Unit监控CPU异常CPU锁死、非法指令
ECC(Error Correction Code)Flash/RAM单比特纠错+双比特检测内存位翻转
MPU(Memory Protection Unit)内存区域访问权限保护软件越权访问、堆栈溢出
MBIST(Memory Built-In Self Test)上电/运行时内存自检内存Stuck-At故障
SRI Bus监控总线传输ECC保护总线数据错误
ADC自检ADC内置自检信号注入ADC通道失效
CRC校验数据完整性校验数据传输错误

4.2 SBC看门狗

TLF35584作为SBC(System Basis Chip),提供以下关键安全功能:

  • 窗口看门狗(Window Watchdog):必须在上下限之间触发喂狗,过早或过晚均触发复位
  • 功能看门狗(Functional Watchdog):基于Q&A机制的复杂看门狗,监控程序流
  • 安全状态控制:触发故障时,SBC可直接控制安全继电器,进入安全状态
  • 电源监控:监控各电压轨(5V、3.3V、1.25V)过压/欠压
  • 失效安全输出:SBC自身进入Fail-Safe状态时,强制系统进入安全配置

4.3 Gate Driver诊断

NXP GD3160性能优越,其安全特性包括:

  • Desat保护(退饱和检测):监测IGBT C-E导通压降Vce,超过阈值触发软关断
  • Miller钳位:抑制关断过程中的Miller效应,防止桥臂直通
  • SPI诊断:实时读取驱动状态、故障寄存器、温度信息
  • 有源钳位(Active Clamping):限制Vce过压
  • 软关断(Soft Turn-Off):故障时慢速关断IGBT,减小di/dt和电压过冲
  • 两电平关断(Two-Level Turn-Off):部分关断IGBT再完全关断

4.4 传感器诊断

  • 旋变传感器:激励信号丢失检测、正余弦信号幅度/偏置监控、旋变位置合理性校验
  • 相电流传感器:偏置自校准、增益自检、三相反向和验证(Ia+Ib+Ic=0)
  • 电压传感器:母线电压分压电阻自检、ADC参考电压监控
  • 温度传感器(NTC/PTC):开路/短路检测、温度变化率合理性检查

4.5 TSR → FSR 追溯性矩阵

TSR(Technical Safety Requirements)是FSR的技术细化,回答"怎么实现"的问题。TSR将FSR分配到具体的硬件模块,明确诊断机制、触发安全状态和分配元素。

TSR编号技术安全需求描述硬件模块ASIL等级关联FSR触发安全状态分配元素
TSR-01TC387 LockStep双核锁步比较,不一致触发SMU报警MCU TC387ASIL DFSR-12SS6TC387 SMU
TSR-02Flash ECC:每64bit附加7bit ECC码,单纠错+双检测MCU FlashASIL CFSR-13SS6TC387 Flash
TSR-03RAM ECC:SRAM数据总线ECC保护,覆盖初始化/运行MCU RAMASIL CFSR-13SS6TC387 RAM
TSR-04MPU:L1代码/数据区与L2代码/数据区严格隔离MCU MPUASIL CFSR-14SS6TC387 MPU
TSR-05ADC参考电压Vref监控:内部精密参考源精度±0.5%MCU ADCASIL CFSR-15SS1/SS2TC387 ADC
TSR-06ADC自检:空闲通道注入0.5V/2.5V/4.5V验证MCU ADCASIL CFSR-15SS1/SS2TC387 ADC
TSR-07PLL失锁检测:时钟频率偏差>±5%触发NMI中断MCU CCUASIL CFSR-12SS6TC387 SMU
TSR-08SBC窗口看门狗:喂狗窗口10-50ms,超早/超晚触发复位TLF35584ASIL CFSR-16SS6TLF35584 WDG
TSR-09SBC功能看门狗Q&A:SBC发Question⇒MCU 10ms内返回AnswerTLF35584ASIL CFSR-16SS6TLF35584 WDG
TSR-10SBC电源轨OVP/UVP:3.3V>3.6V/ < 3.0V/5V>5.5V/<4.5VTLF35584ASIL BFSR-17SS3TLF35584 PSU
TSR-11GD Desat:IGBT Vce>7V(消隐2μs后)触发软关断GD3160ASIL CFSR-18SS1GD3160 Desat
TSR-12GD Miller钳位:关断期间栅极下拉至Emitter<2VGD3160ASIL CFSR-19SS1GD3160 Miller
TSR-13GD SPI:1ms周期读状态+CRC帧校验+连续3次失败触发SS1GD3160ASIL CFSR-20SS1/SS7GD3160 SPI
TSR-14相电流偏置自校准+增益自检,参考信号注入电流传感器ASIL CFSR-21SS1/SS2电流传感器
TSR-15旋变励磁10kHz±15%幅度监控+正余弦信号合理性检查旋变ASIL CFSR-22SS1/SS2旋变传感器
TSR-16NTC开路/短路检测+温度变化率限值判断NTCASIL BFSR-23SS4/SS5NTC传感器
TSR-17CAN E2E:CRC16多项式0x8005+4bit Counter+100ms TimeoutCANASIL CFSR-10SS7CAN控制器
TSR-18CPU LBIST上电自检,覆盖率>95%TC387ASIL BFSR-24SS6TC387 CPU
TSR-19主动放电:IGBT+放电电阻+母线电容<60V@120s主动放电QMFSR-03SS8放电回路
TSR-20高压互锁HVIL回路状态检测+绝缘电阻监控HVILASIL CFSR-07/22SS3HVIL接口

追溯性说明:TSR是FSR的技术实现方案。例如FSR-18(L3 GD Desat保护需求)细化到TSR-11(GD3160 Vce检测,消隐2μs后软关断,触发SS1安全状态,分配给GD3160 Desat模块)。TSR→FSR→SG形成"怎么做→做什么→为什么做"的完整追溯链。


第五步:HSR —— 硬件安全需求

HSR(Hardware Safety Requirements)关注电路级别的安全设计和可靠性分析。HSR是TSR的硬件实现细化,每个HSR都应追溯到上层的TSR。例如TSR-11(GD Desat检测)细化到HSR-05(Desat电路:US1M高压二极管+470pF消隐电容+比较器阈值7V)。

5.1 电源系统设计

  • 宽范围输入(6V-32V):适配12V/24V系统及冷启动/抛负载等瞬态工况
  • DCDC多路输出:TLF35584输出3.3V(MCU IO)、5V(传感器)、1.25V(Core电压)
  • 欠压/过压保护:每路电源独立监控,阈值可配置
  • 反极性保护:输入级PMOS防反接

5.2 Flyback隔离电源

IGBT驱动级需要隔离电源(高压侧与低压侧隔离),采用Flyback拓扑:

  • 隔离耐压:设计满足reinforced insulation(加强绝缘),耐压≥3kV
  • 爬电距离:满足IEC 60950 / IEC 61800-5-1要求
  • 变压器设计:漏感控制、耦合优化

5.3 IGBT驱动电路

在这里插入图片描述
GD3160 Gate Driver集成了Desat退饱和检测(监测IGBT导通压降Vce,超过阈值触发软关断)、Miller钳位电路(在关断期间将栅极下拉到Emitter,抑制dv/dt误导通)、有源钳位(TVS限制Vce过压)以及NTC温度检测,构成完整的IGBT保护方案。

  • 栅极电阻Rg:控制开关速度,优化EMI和开关损耗
  • Desat检测电路:高压二极管+比较器,检测Vce饱和压降
  • Miller钳位电路:栅极通过小电阻下拉,抑制Miller电流
  • 有源钳位电路:TVS管串联,钳位Vce过压

5.4 相电流采样电路

  • 采样电阻:采用高精度低感分流电阻(如0.1mΩ)
  • 差分运放:隔离式差分放大器(如AMC1300系列),实现高压侧隔离采样
  • 共模抑制:高共模抑制比(CMRR ≥ 90dB),抑制电机PWM开关噪声
  • 故障输出:运放内置过压/欠压检测,输出Fault标志

5.5 WCCA(最坏情况电路分析)

对所有安全关键电路进行WCCA分析,涵盖:

  • 电阻/电容容差(初始精度+温度漂移+老化)
  • 运放输入偏置电流、失调电压、温漂
  • ADC量化误差、参考电压偏差
  • 温度范围(-40°C ~ 125°C结温)
  • 供电电压波动

5.6 EMC设计

  • 共模电感+差模电感滤波
  • Y电容连接高压负极与底盘地
  • 栅极驱动回路最小化
  • 高压母线叠层母线排设计(低感)

5.7 Desat电路设计详解

Desat检测是IGBT驱动中最重要的保护之一:

  1. 检测机制:IGBT正常导通时Vce≈1.5-2.5V,当发生短路时Vce迅速上升至母线电压水平
  2. 消隐时间(Blanking Time):IGBT开通瞬间存在Vce震荡,需设置消隐时间(典型值2-5μs)避开误检测
  3. 阈值设置:根据IGBT特性,Desat阈值通常设置为7-9V
  4. 软关断:检测到Desat后,以比正常关断慢的速度关断IGBT,防止高di/dt导致电压过冲

5.8 Miller钳位设计

  • 原理:IGBT关断时,dv/dt通过Miller电容Cgc在栅极感应正向电压,可能导致IGBT误导通
  • 措施:在关断期间将栅极通过低阻MOS管下拉到Emitter
  • 钳位电压:通常钳位到2V以下,确保IGBT可靠关断

5.9 HSR → TSR 追溯性矩阵

HSR(Hardware Safety Requirements)是TSR的硬件实现细化,将每个TSR的技术方案落实到具体的电路设计、元器件选型和PCB布局中。

HSR编号硬件安全需求描述电路模块ASIL等级关联TSR验证方法
HSR-01电源输入6-32V宽范围,PMOS防反接,TVS钳位36V电源输入ASIL BTSR-10WCCA+测试
HSR-02TLF35584输出3.3V/5V,每路去耦≥10μF+100nFSBC电源ASIL CTSR-10WCCA+测试
HSR-03Flyback隔离电源,加强绝缘≥3kV,爬电距离≥8mmIGBT驱动供电ASIL CTSR-11耐压测试
HSR-04IGBT栅极电阻Rg ON 10Ω/OFF 10Ω,峰值驱动电流±5AIGBT驱动ASIL CTSR-11WCCA
HSR-05Desat检测:US1M高压二极管+470pF消隐电容+比较器阈值7VDesat电路ASIL CTSR-11故障注入
HSR-06Miller钳位:NMOS+BSS84下拉至Emitter,响应时间<100nsMiller电路ASIL CTSR-12时序测试
HSR-07有源钳位:TVS P6SMB220A双向钳位Vce≤220V有源钳位ASIL CTSR-11浪涌测试
HSR-08相电流:0.1mΩ分流+AMC1300隔离运放+TLV272 MFB滤波25kHz电流采样ASIL CTSR-14精度+WCCA
HSR-09高压分压:2×1MΩ+1kΩ,比例2000:1,X7R电容±10%滤波高压采样ASIL BTSR-10WCCA
HSR-10NTC:10kΩ@25℃,B=3435,上拉电阻诊断开路/短路温度采样ASIL BTSR-16功能测试
HSR-11旋变励磁:10kHz正弦驱动,幅度监控±15%旋变接口ASIL CTSR-15功能测试
HSR-12母线电容:470μF电解+0.1μF高频瓷片,纹波电流≥5ArmsDC-LinkASIL BTSR-19热测试
HSR-13EMC:LCL共模2mH+X电容0.47μF+Y电容4.7nFEMC滤波QMEMC测试
HSR-14PCB Layout:功率地/信号地分离,大电流走线≥40mil,爬电≥6mmPCB设计ASIL C电气检查
HSR-15主动放电电阻10kΩ/50W,放电时间常数τ=RC≤15s放电回路QMTSR-19时序测试
HSR-16HVIL高压互锁回路闭环检测,开路触发SS3HVIL回路ASIL CTSR-20功能测试

追溯说明:每个HSR都对应上层的TSR。例如TSR-11(GD Desat:Vce>7V消隐2μs软关断)在HSR层细化为具体的电路参数——HSR-04(栅极电阻Rg)、HSR-05(Desat检测电路参数)、HSR-07(有源钳位TVS)。HSR→TSR→FSR→SG形成完整的V模型左侧追溯链。


第六步:SSR —— 软件安全需求

SSR(Software Safety Requirements)定义软件层面的安全设计和实现要求。SSR是TSR的软件实现细化,每个SSR都应追溯到上层的TSR。例如TSR-06(ADC自检)细化到SSR-06(ADC Vref监控+空闲通道自检+偏置校准,1s周期)。

6.1 软件分层架构

在这里插入图片描述

软件分层安全架构:遵循AUTOSAR分层模型——Level 1(顶层,绿色QM)执行FOC/转速/扭矩控制功能;Level 2(黄色ASIL C)负责扭矩/程序流/温度监控;Level 3(红色ASIL C)提供MCU和传感器硬件诊断。QM与ASIL C代码严格分离,通过RTE通信。

软件架构遵循 AUTOSAR 分层模型,并引入功能安全扩展:

应用层(ASIL C + QM)
├── Level 1 功能层(QM)
│   ├── FOC控制模块
│   ├── 转速控制模块
│   └── 扭矩控制模块
├── Level 2 监控层(ASIL C)
│   ├── 扭矩监控模块
│   └── 程序流监控模块
└── Level 3 硬件诊断层(ASIL C)
    ├── MCU诊断模块
    └── 传感器诊断模块

RTE(运行时环境)

BSW层(ASIL B/C)
├── MCAL(MCU抽象层)
├── 通信栈(CAN/SPI)
└── 诊断栈

6.2 程序流监控:Q&A机制

程序流监控是Level 2的核心功能之一,采用Q&A(Question & Answer)机制,由SBC驱动:

工作原理:

  1. SBC(TLF35584)通过SPI向MCU发送一个"Question"(挑战值)
  2. MCU的监控软件(Level 2)必须在规定时间内计算并返回一个"Answer"(应答值)
  3. 应答计算必须经过特定的校验路径,覆盖关键软件模块的执行
  4. 如果应答超时或错误,SBC触发Watchdog复位或直接进入安全状态

时序要求:

  • Question间隔:5ms
  • 最长应答时间:10ms
  • 超时触发:连续2次失败

Q&A机制确保Level 1的控制循环在正确的时序和路径上执行,防止软件跑飞、死循环、异常分支等问题。

6.3 E2E通信保护

端到端(End-to-End)通信保护覆盖CAN报文、内部SWC间通信:

  • CRC校验:对关键信号(扭矩指令、转速指令)附加CRC
  • 计数器(Counter):检测报文重复、丢失、乱序
  • 超时监控(Timeout):检测通信中断
  • 数据ID(Data ID):防止信号混淆

应用在以下通信路径:

  • CAN:整车VCU → MCU(扭矩/转速请求)
  • SPI:MCU ← GD3160(状态/故障)
  • 内部:Level 1 ← Level 2(扭矩校验交叉比较)

6.4 ADC诊断

  • 参考电压监控:通过内部精密参考源Vref监控ADC精度
  • 自检信号注入:在空闲通道注入已知电压,验证转换结果
  • 偏置监控:检测ADC偏移误差并实时校准
  • 奇偶校验:ADC结果寄存器配置奇偶校验位

6.5 扭矩监控冗余算法

扭矩监控采用双冗余算法,独立于Level 1的FOC扭矩计算:

方法一:磁通法(Flux Method)

  • 基于永磁同步电机的磁链方程,利用直轴/交轴电流Id/Iq和磁链参数计算扭矩
  • 公式:Te = 1.5 × p × [ψf × Iq + (Ld - Lq) × Id × Iq]
  • 与Level 1扭矩差异>5%则触发安全动作

方法二:功率法(Power Method)

  • 基于电机输入功率和损耗估算输出扭矩
  • 公式:Te = (Pin - Pcu - Pfe) / ωm
  • Pin = Vdc × Idc(直流母线功率),Pcu = 3 × Is² × Rs(铜耗)
  • 作为磁通法的独立验证

冗余逻辑:

  • 两路冗余算法独立运行在LockStep核的不同SSC(Safety Software Component)中
  • 两路结果互相比对,同时分别与Level 1指令校验
  • 任何一路校验失败均触发安全状态

在这里插入图片描述

扭矩监控双冗余算法框图:磁通法(上,绿色路径,基于Id/Iq和磁链参数Te=1.5×p×[ψf×Iq+(Ld-Lq)×Id×Iq])和功率法(下,红色路径,基于直流母线功率和损耗Te=(Pin-Pcu-Pfe)/ωm)独立运行在LockStep双核上,结果输入比对器交叉校验并与Level 1指令比较,偏差>5%立即触发安全状态。

6.6 SSR → TSR 追溯性矩阵

SSR(Software Safety Requirements)是TSR的软件实现细化,将每个TSR的技术方案落实到具体的软件模块、算法逻辑和诊断策略中。

SSR编号软件安全需求描述软件模块ASIL等级关联TSR实现方式
SSR-01L1/L2代码物理分离,独立Flash分区+MPU保护区软件架构ASIL CTSR-01/04MPU分区
SSR-02L2扭矩监控:磁通+功率法双核独立运行于LockStep核1/核2扭矩监控ASIL CTSR-05/06双核冗余
SSR-03扭矩偏差阈值5%,超出则在FTTI≤20ms内触发安全状态扭矩监控ASIL CTSR-05/06比较逻辑
SSR-04Q&A程序流:SBC发Question→MCU 5ms内返回Answer,超10ms触发WDG程序流ASIL CTSR-09Q&A机制
SSR-05CAN E2E:CRC16+4bit Counter+100ms Timeout,失效触发SS7CAN通信ASIL CTSR-17E2E保护
SSR-06ADC诊断:Vref监控+空闲通道自检+偏置校准,周期1sADC诊断ASIL CTSR-05/06周期性自检
SSR-073路NTC温度轮询:IGBT/绕组/母线,周期100ms温度监控ASIL BTSR-16轮询监控
SSR-08高压母线电压10ms周期采样,OVP阈值+60V放电判断高压监控ASIL BTSR-10周期采样
SSR-09主动放电:指令后启动120s计时,母线<60V成功/失败上报主动放电QMTSR-19计时监控
SSR-10故障分级:一级严重(ASC)→二级警告(限扭)→三级信息(上报)故障管理ASIL C分级处理
SSR-11SPI通信:1ms轮询GD状态,CRC校验,连续3次失败触发SS1SPI驱动ASIL CTSR-13CRC+重试
SSR-12三相电流一致性:Ia+Ib+Ic=0,偏差>5%触发诊断电流诊断ASIL CTSR-14一致性校验
SSR-13旋变故障:励磁丢失+正余弦幅值异常+位置跳变>15°旋变诊断ASIL CTSR-15多条件诊断
SSR-14主循环执行时间超限检测报警程序流ASIL BTSR-09执行时间监控
SSR-15LBIST上电自检,覆盖CPU>95%故障自检ASIL BTSR-18上电自检
SSR-16NTC温度变化率dT/dt超限报警温度诊断ASIL BTSR-16斜率诊断
SSR-17NVRAM关键标定参数CRC校验,失败回滚安全默认值存储管理ASIL BCRC+回滚
SSR-18坡道扭矩保持:坡度信号校验+扭矩补偿计算+驻车协同扭矩控制ASIL B功能逻辑

追溯说明:每个SSR都对应上层的TSR。例如TSR-05/06(ADC Vref监控+自检注入)细化为SSR-06(ADC诊断:Vref+自检+偏置校准,周期1s)和SSR-12(三相电流一致性检查)。SSR→TSR→FSR→SG形成完整的V模型右侧(软件)追溯链。


第七步:安全验证与确认

7.1 故障注入测试

故障注入是验证安全机制有效性的核心手段:

测试项目注入方式验证目标
内存ECC错误注入通过MCU寄存器强制注入单/双比特错误内存ECC机制响应
时钟故障注入外部时钟源引入频率偏差时钟监控PLL失锁检测
CAN通信故障报文丢失、延迟、篡改、重放E2E保护响应
相电流偏置故障注入DC偏置到采样信号ADC诊断+扭矩监控
Desat模拟外部高压脉冲注入IGBT C-EDesat保护响应时间
看门狗超时停止喂狗SBC复位或安全状态

7.2 时序验证

安全时序是功能安全的核心约束,需验证以下时序指标:

  • FTTI(容错时间间隔):从故障发生到系统进入安全状态的总耗时
  • FDTI(故障探测时间间隔):从故障发生到被探测到的时间
  • FHTI(故障处理时间间隔):从探测到故障到执行安全动作的时间
  • 诊断测试间隔:安全机制的自检周期

时序分析工具:逻辑分析仪、示波器、CANoe报文分析、ETAS INCA。

7.3 诊断覆盖率

根据ISO 26262-5(硬件层面),不同ASIL等级要求的最小诊断覆盖率:

  • ASIL B:单点故障 ≥ 90%,潜伏故障 ≥ 60%
  • ASIL C:单点故障 ≥ 97%,潜伏故障 ≥ 80%
  • ASIL D:单点故障 ≥ 99%,潜伏故障 ≥ 90%

本项目需满足ASIL C要求,通过FMEDA(Failure Modes Effects and Diagnostic Analysis)量化计算各安全机制的诊断覆盖率,确保满足目标值。

在这里插入图片描述

安全验证流程:左侧故障注入测试(内存ECC故障、CAN通信故障、相电流偏置、Desat模拟、看门狗超时)→ 中间安全机制验证处理器(FDTI+FHTI≤FTTI时序约束)→ 右侧诊断覆盖率指标(SPF≥97%绿标通过、LF≥80%橙标通过),底部汇总为FMEDA分析报告。


总结

本文基于实际EDU电机控制器功能安全开发项目,完整梳理了从HARA到SSR的七步核心设计流程:

  1. HARA:通过场景分析和风险评估,定义9项安全目标,覆盖非预期加速、高压触电、过温等关键危害
  2. SG分解:将顶层安全目标逐层分解到子系统,建立可追溯的安全需求树
  3. FSR:建立三级安全架构(功能层QM + 监控层ASIL + 硬件诊断层ASIL),定义8种安全状态
  4. TSR:利用TC387 LockStep + TLF35584 SBC + GD3160 Gate Driver的硬件安全特性,实现底层失效探测
  5. HSR:通过Desat电路、Miller钳位、Flyback隔离、WCCA等确保硬件鲁棒性
  6. SSR:通过Q&A程序流监控、E2E通信保护、双冗余扭矩算法确保软件安全
  7. 验证与确认:通过故障注入和时序分析验证安全机制有效性

功能安全不是"做完"的,而是"验证完"的。安全需求的可追溯性(从SG → FSR → TSR → HSR/SSR → 测试用例的全链路追踪)和充分的验证覆盖(故障注入、时序验证、WCCA、FMEDA),才是项目真正达到ASIL C等级的保障。


本文基于实际项目经验总结,硬件具体型号和参数仅供参考。实际开发中请以最新版ISO 26262:2018及供应商最新器件手册为准。如有不当之处欢迎指正

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐