位置传感的功能安全诊断(Position Sensing Diagnostics)
本质 转子角度 θ 是 FOC 的"方向感"——Park 变换里的 sin/cos 用错角度,d-q 轴电流瞬间耦合错位,5° 角度误差直接对应 ~8.7% 扭矩误差,90° 错位让扭矩输出方向反转。这就是位置传感诊断必须做到 ASIL D 的根本原因:在 EPS / 主驱里,位置错 = 扭矩错 = UT/LoT。本页和 电流采样诊断 / 电压采样诊断 严格并列,凑齐"采样诊断三件套"——RDC 自诊断 + 角度速度加速度三联 plausibility + Sin²+Cos² 物理冗余 + 双系统冗余 + sensorless 交叉校验。
学习目标
读完本页后,你应该能够:
- 说出"角度错 → 扭矩错"的传播链,以及为什么 90° 错位会让扭矩反向输出
- 列出 ISO 26262 中关于位置采样的关键 SM 与 DC 估值
- 把 6 类位置采样链 fault model 映射到对应 SM
- 解释 Sin² + Cos² ≈ 1 这条物理约束为什么是位置传感的"KCL"
- 区分 RDC IC 内置自诊断 / 软件 plausibility / 双系统冗余各自的覆盖边界
- 设计一条满足 ASIL D 的 resolver 采样链(含 SM + FTTI + safe state)
- 识别位置采样诊断 5 个反模式
1. 因果链——角度错为什么是扭矩链最致命的传感失效
电机控制器要把驾驶员的扭矩指令转成三相电压矢量,中间最关键的一步是 Park 变换 + 反 Park 变换——它们都用 sin(θ)/cos(θ) 做坐标旋转。θ 错了,生成的电压矢量就指向了错误的电角度位置,结果不是"力小一点",而是"力的方向变了"——这是位置错比电流错更可怕的原因。
| 角度误差 | 扭矩影响 | 工况后果 |
|---|---|---|
| ±5° | ~8.7% 扭矩误差 | EPS 方向盘可感抖动 |
| ±15° | ~26% 扭矩误差 | 主驱明显抖动,效率下降 |
| ±90° | 扭矩 → 0(变为 d 轴励磁) | 失去推力 + 大电流烧管 |
| ±180° | 扭矩反向 | 高速直道:整车瞬间反向加速度 → 失控 |
90° 和 180° 是"短路"和"反向"两类经典灾难,任何一个都会被 HARA 评为 ASIL D。这就是为什么位置链的 SM 不能只盖"小漂",必须能 100% 抓住 quadrant-flip 类大错。
2. ISO 26262 依据
位置链的 SM 在标准里和电流/电压并列,但多了 sin/cos 物理约束这一类专属手段。
| 标准位置 | 内容 | 用途 |
|---|---|---|
| ISO 26262-5 Annex D, Table D.1 ~ D.14 | range / plausibility / 比较 / BIST 等 SM 与 DC 表 | 同采样三件套 |
| D.2.4 "Plausibility check" | 跨信号合理性 | 角度 vs 速度积分,速度 vs 加速度 |
| D.2.6 "Reciprocal comparison by software" | 物理约束式冗余 | Sin² + Cos² ≈ 1(本页 §5) |
| D.2.10.4 "Input comparison / voting" | 多通道冗余比较 | 双 resolver / resolver + Hall |
| D.2.11.1 "Test pattern" | 启动 + 周期自检 | RDC IC 内置 BIST |
| ISO 26262-5 §8 + §9 | SPFM / LFM / PMHF | ASIL D 99% / 90% / < 10 FIT |
| ISO 26262-11 §5.4 (传感器接口) | resolver / Hall / 编码器接口诊断 | 给具体 SM 例 |
3. 失效模式 vs SM 覆盖矩阵
位置链 = 传感器(resolver / Hall / TMR / 编码器)→ 激励/前端(resolver excitation + 差分前端)→ RDC(Resolver-to-Digital Converter)→ DSP。整条链 fault model 至少 8 类:
| # | Fault model | 物理原因 | 主要 SM | DC 等级 |
|---|---|---|---|---|
| 1 | sensor 线圈断 / 短路 | 振动断线、绝缘老化 | RDC fault output (LOS) + 启动自检 | High |
| 2 | excitation 信号断 / 失幅 | 激励电源故障 | RDC fault output (DOS) | High |
| 3 | sin/cos amplitude 不匹配 | 单通道 sensor 老化 | Sin² + Cos² ≈ 1(物理冗余) | High |
| 4 | sin/cos 偏置漂移 | 温漂、ADC offset | 物理冗余 + 启动校零 | Medium |
| 5 | quadrant flip(90°/180° 跳变) | RDC 内部状态机错、软件 bit 错 | 角度速度积分 plausibility | High |
| 6 | frozen angle | DMA 死、RDC 输出锁死 | Time-monitor + speed plausibility | Medium |
| 7 | EMI 噪声污染 | PWM 耦合、长走线 | 滤波 + 多采样平均 + plausibility | Medium |
| 8 | Common cause(单 RDC die 全瘫) | RDC 共用电源 / die 失效 | 双独立 RDC / 双 sensor + DFA | High |
flowchart LR
EXC["excitation"]
RES["resolver"]
AFE["AFE / RDC"]
REG["DSP register"]
EXC -->|"f2 dead exc"| RES
RES -->|"f1 line break / f3 sin cos mismatch"| AFE
AFE -->|"f5 quadrant flip / f6 frozen"| REG
AFE -.->|"f4 offset / f7 EMI"| REG
REG -->|"f8 common cause"| BAD["wrong theta"]("wrong theta".md)
4. RDC IC 内置自诊断
Resolver-to-Digital Converter(AD2S1210 / AD2S1205 / TLE5012B 这类)是位置链的"心脏",ASIL D 项目通常选自带 fault output 的 RDC,把硬件级诊断打包进 IC 内部。直接引 datasheet 的 DC 数字到 FMEDA。
4.1 主流 RDC fault output 总览
RDC 输出的 fault pin 通常用 1-2 个 GPIO 编码,编码方式因厂商不同。以 AD2S1210 为例,fault 状态分 4 类:
| Fault pin | 触发条件 | 对应 fault model |
|---|---|---|
| LOS(Loss of Signal) | sin² + cos² 低于 amp threshold | f1 sensor 断线 |
| LOT(Loss of Tracking) | 内部跟踪误差 > 阈值 | f5 quadrant flip / f7 EMI |
| DOS(Degradation of Signal) | 信号幅度退化但未到 LOS | f3 sin/cos 不匹配,早期警告 |
| CLIP(Signal Clipping) | sin 或 cos 超 ADC 满量程 | f7 EMI 或前端故障 |
这 4 个 pin 直接接 MCU 的中断引脚,反应时间 < 1 µs。这是 ASIL D 位置链最快的 SM,FMEDA 引 datasheet typical DC ≥ 95%。
4.2 RDC 自身的失效不能被自诊断盖住
RDC 内置自诊断不能覆盖"RDC 自己坏了" —— 比如 RDC 内部 ADC 失效、状态机锁死、fault pin 本身卡 high 或卡 low。这一类只能靠外部 SM:
- 启动时拉/推 fault pin 测试是否能正常翻转(loopback test)
- RDC 输出和 MCU 软件模型的角度速度交叉验证
- 双独立 RDC 比较(ASIL D 旗舰方案,但成本高)
5. Sin² + Cos² ≈ 1 ——位置链的 KCL
这是位置传感最强的物理冗余 SM——和电流采样的"三相和为零"地位完全等价。Resolver 输出的两路信号本质就是单位圆上的 (x, y),严格满足:
任何一路 sensor 漂移、单路 ADC 漂、放大器增益漂、激励信号失幅,都会破坏这个等式。信息冗余、零硬件成本、DC 高——和 KCL 一样的金钥匙地位。
5.1 残差定义与阈值
实际系统里残差不会真的为 0,要给允许带:
其中 是名义信号幅度(随激励幅度走), 由 sensor 精度 + ADC 量化误差 + 温漂综合决定。工程上 是典型起点,实际工况下用 EOL 测试标定。
5.2 抓得住 / 抓不住
| Fault | KCL 类比里 | sin²+cos² 能抓 |
|---|---|---|
| 单通道 stuck / 漂大 | ✓ | ✓ 强抓 |
| sin/cos 幅度不匹配 | ✓ | ✓ 强抓 |
| sin/cos 双通道同向同幅漂(共模) | ✗ | ✗ 抓不住,要 plausibility 兜 |
| Quadrant flip(90°/180° 错位) | / | ✗ —— sin²+cos² 在任何 θ 都 = 1,角度跳变它看不见 |
| frozen value | ✗ | ✗ —— 卡死的 sin/cos 仍满足等式 |
关键认知:sin²+cos² 能抓"信号链 fault",抓不住"角度值 fault"。后者必须用速度积分 plausibility(§6)兜。两者正交互补,缺一不可。
6. 角度 / 速度 / 加速度三联 Plausibility
这是抓 quadrant flip / frozen / 跳变 这类角度值层面 fault 的核心 SM。物理基础是"机械系统的转子角度不能瞬间跳"——任何超出物理可能的 θ 变化都是 fault。
6.1 角度 vs 速度积分
把上一步的角度加上"速度 × Δt"得到本步的预期角度,和实测角度比较:
这条约束直接抓 quadrant flip——RDC 软件 bit 错让角度从 30° 跳到 120°,瞬时跳跃远超 的物理上限。
6.2 速度 vs 加速度
速度本身可以 plausibility——电机转动惯量决定了加速度上限,实测 超过 就是 fault:
6.3 三联 plausibility 的设计要点
工程要点:
- 窗口长度 —— 太短会被噪声触发假阳,太长盖不住快事件,典型 1-2 个 PWM 周期(100-200 µs)
- 阈值要按工况切 —— standstill / startup / running 不同窗口
- debounce —— 软故障要求连续 N 次违反,硬故障(如角度突跳 > 90°)1 次即触发
7. Sensorless 交叉校验
主驱在中高速通常都跑 FOC 闭环并行 sensorless observer(EMF / SMO 类),这条 observer 输出的角度可以作为 RDC 的"独立通道"做交叉校验——免费的角度冗余,代价仅 CPU 时间。
| 方案 | 角度精度 | 速度范围 | 启动 |
|---|---|---|---|
| RDC 主测 | ±0.1°(优秀 RDC) | 全速 | OK |
| EMF observer | ±2-5° | 中高速(> 5% 额定) | 不能用,需 RDC 引导 |
| HF injection | ±3° | 0 ~ 中速 | OK |
典型实施:中高速时,RDC 角度 vs EMF observer 角度差异超阈值即报 fault。低速 RDC 是唯一来源,这条 SM 失效——所以不能完全替代物理冗余。
8. 双系统冗余(ASIL D 旗舰)
成本不敏感的旗舰项目(EPS、自动驾驶 EV)会装两套独立的位置传感系统,做 input comparison(D.2.10.4):
| 配置 | 优点 | 缺点 |
|---|---|---|
| 双 resolver | 同精度、同接口 | 物理空间紧、成本最高 |
| Resolver + Hall | Hall 便宜、互补 | 精度不对等(Hall 60° 分辨) |
| Resolver + 感应式 PCB | PCB 集成,空间省 | 感应式精度依赖布板 |
| 双 RDC + 共用 resolver | 成本低 | resolver 本身仍是 single point |
只有"双独立物理 sensor + 双独立 RDC + 双独立电源 + 双独立 MCU 通道"才是真正的 redundancy——任何共因(共用 sensor、共用 RDC、共用电源)都让冗余打折。
9. 启动时校零与极性自检
电机静止 + PWM 全关时,如果上一次停车记录了角度,这一次上电 RDC 读到的角度应该接近上次。差异大说明:
- sensor 校准漂移
- RDC 内部状态机重启时初值错
- resolver 转子位置实际被人扳动(机械边界 fault)
启动时还可以注入小电流(< 5% I_max)做一个"开环测试"——给已知 d-q 电流指令,看转子向预期方向移动多少,抓 sensor 极性接错 / 接线交换 / 标定数据丢失 这类 systematic fault。
10. FTTI 反应链
位置链的 FTTI 比电流更紧——quadrant flip 在高速场景下可能瞬间触发反向扭矩,留给系统反应的窗口极短。
| 反应类型 | FTTI | 对应 fault | Safe state |
|---|---|---|---|
| RDC LOS / LOT / DOS | < 100 µs(硬件 GPIO 中断) | sensor 断线 / 跟踪丢失 | 立刻 ASC(中高速)/ freewheel(低速) |
| sin² + cos² 越限 | 1-2 PWM 周期(100-200 µs) | 信号链漂大 | 同上 |
| 角度速度积分跳变 | 1 PWM 周期 | quadrant flip | 立刻 ASC |
| 慢漂(plausibility) | 5-50 ms | 长期累积漂 | 限功率 + 报 DTC |
| 双通道偏差超阈值 | 100 µs(纯硬件比较) | 两 sensor 不一致 | 立刻 ASC |
Quadrant flip 是位置链最快需要响应的 fault——高速场景下 FTTI 短到只有 1 个 PWM 周期可用,这一类必须在 control ISR 顶部检测,反应路径不能经过任何 ms 级软件层。
11. FMEDA 简化实例
Element: 位置传感链(AD2S1210 RDC + resolver + EMF observer 软件冗余)
Total FIT = 30
Safety-related FIT = 28
| Fault group | FIT | SM | DC | residual FIT |
|---|---|---|---|---|
| Resolver 线圈断 / 短 | 5 | RDC LOS + 启动自检 | 99% | 0.05 |
| Excitation 失幅 | 3 | RDC DOS | 95% | 0.15 |
| Sin/Cos 漂 | 6 | sin²+cos² + plausibility | 99% | 0.06 |
| Quadrant flip | 4 | 速度积分 plausibility(硬件比较器加持) | 99% | 0.04 |
| RDC 内 ADC drift | 4 | RDC ABIST + Vref monitor | 90% | 0.4 |
| Frozen angle | 3 | Time-monitor + speed plausibility | 95% | 0.15 |
| EMI 污染 | 2 | 滤波 + plausibility | 80% | 0.4 |
| Common cause | 1 | DFA + sensorless 软件冗余 | 90% | 0.1 |
差点到 ASIL D 99%。提升办法:把 EMI / common cause 的 DC 升到 95%(更好屏蔽 + 真正双独立 RDC),或叠加 ASIL decomposition 把要求摊到 main + monitor 两通道。详见 ASIL 分解。
12. 安全反模式(5 个常见错)
位置链诊断最常踩的 5 个反模式——识别它们能避免 SPFM 数字看起来达标但实际失效场景下保护失败。
| 反模式 | 表现 | 修法 |
|---|---|---|
| 只信 RDC fault output | 没做 sin²+cos² 和 plausibility,RDC 自己失效就盖不住 | 三层叠加(IC + 物理冗余 + 速度 plausibility) |
| plausibility 没分速度区段 | 静止时 ω=0 让"角度变化必须 ≤ ω·Δt" 永远成立 | 静止时切 sin²+cos² 主导,运行时切角度积分主导 |
| 双系统共用 RDC | "两个 sensor"但接同一颗 RDC,common cause 没切 | 必须双独立 RDC,DFA 走一遍 |
| EMF observer 当 ASIL D 主用 | 中高速精度 ±5° 不够,且低速完全失效 | observer 仅作 sensorless 路径冗余,不能替代 RDC |
| Quadrant flip 走软件 ms 级反应 | 高速 quadrant flip 1 个 PWM 周期就出灾难,软件 ms 级反应过期 | 1 个 PWM 周期内必须硬件比较器或 ISR 顶部检测 + STO 直拉 |
13. 与电流 / 电压采样诊断的对比
把"采样诊断三件套"并排放在一起看,规律就清楚了——电流抓控制层 fault、电压抓控制 + HV + 维修三层 fault、位置抓"方向感"层 fault。
| 维度 | 电流采样诊断 | 电压采样诊断 | 位置采样诊断 |
|---|---|---|---|
| Hazard 范围 | UT / LoT | UT / LoT + HV 失控 + 触电 | UT / LoT(高速 quadrant flip = 反向扭矩 = 整车失控) |
| 物理冗余 SM | KCL 三相和 | 接触器 / 充放电曲线 / BMS V_bat | sin² + cos² ≈ 1(单位圆约束) |
| 隔离要求 | 一般非隔离 | 必须强制隔离 | 通常非隔离(resolver 本身是耦合变压器) |
| 主要器件 | shunt + CSA + ADC | HV 分压 + iso-amp + ADC | resolver + RDC IC |
| 自带的免费 SM 窗口 | 静止时 Iph ≈ 0 校零 | 上电 + pre-charge + 放电三段 | 上电时角度连续性 + 注入小电流极性自检 |
| FTTI(最快事件) | 10-50 ms(traction) | 100 µs(OVP)~ 5 s(放电) | 1 个 PWM 周期(100 µs)—— quadrant flip |
| 法规约束 | ISO 26262 | + UN R100 / ISO 6469-3 | ISO 26262 |
核心要点
- 位置错 ≈ 扭矩错且方向也错 —— 5° → 8.7% 误差,90° → 失推力 + 烧管,180° → 反向扭矩,这些都触发 ASIL D
- Sin² + Cos² ≈ 1 是位置链的 KCL —— 物理冗余、零硬件成本、DC 高,但只抓信号链 fault,不抓角度值 fault
- 角度 / 速度 / 加速度三联 plausibility 抓 quadrant flip / frozen 这类角度值跳变,和 Sin²+Cos² 正交互补,缺一不可
- RDC IC 内置 LOS/LOT/DOS/CLIP fault output 是最快(< 1 µs)硬件 SM,但盖不住 RDC 自身失效
- Sensorless EMF observer 是免费的"中高速冗余",但低速完全失效,不能替代物理 sensor
- 双系统冗余的真前提:双 sensor + 双 RDC + 双电源 + 双 MCU 通道 + DFA 通过——任何共因让冗余打折
- Quadrant flip 必须 1 PWM 周期内反应 —— 软件 ms 级反应在高速场景过期,要硬件比较器或 ISR 顶部 + STO 直拉
- 5 反模式戒除:只信 RDC / plausibility 不分速度 / 双系统共用 RDC / observer 当主用 / quadrant flip 走 ms 软件