传感器故障诊断入门
传感器故障诊断,本质上是用"测量值"反推"传感器本身是不是出了问题"。这门学科横跨控制理论、信号处理、机器学习三大领域,初学者最容易迷路的地方在于:文献太多、方法太杂,却很少有人告诉你"为什么会有这么多方法、我该从哪里进门"。这篇综述按"故障是什么 → 诊断怎么做的 → 方法怎么演进 → 该读什么、做什么"的顺序,帮你建立一张完整的认知地图。
先搞清楚:传感器到底会出什么故障
不同文献对故障的分类角度略有差异,但主流框架是按故障表征形式划分,这也是建模和仿真时最常用的视角 :
完全失效(卡死/恒值):测量值突然失灵,一直停留在某一个常数(通常是 0 或量程最大值),信号大致是一条水平直线
固定偏差(恒偏差):测量值与真实值相差一个恒定常数,有故障的信号与无故障信号平行
漂移偏差:测量值与真实值的差值随时间推移而变化,通常由温度等因素引起
精度下降(精度损伤):平均值不变,但测量的方差变大,即测量能力变差、精度等级降低
从建模角度,上述故障可进一步抽象为乘性故障和加性故障——偏置故障是在原信号上加一个恒定或随机小信号,漂移故障是信号以某一速率偏移原信号,短路故障信号接近于零,开路故障信号接近传感器输出最大值等 。这是你后面看基于模型的方法时必备的语言。
💡 软故障(偏差、漂移、精度下降)虽然幅值小、变化慢,但比硬故障更危险——因为它长期不被发现,会让控制系统在"看似正常"的状态下逐渐偏离 。
按其它维度还有:按程度分硬故障/软故障;按表现分间歇性/永久性;按进程分突变/缓变;按原因分偏置、冲击、开路、短路、周期性干扰、非线性死区等 。初学者先把"失效/偏差/漂移/精度下降"这四个搞透,其余分类都是在这之上的重新组合。
故障诊断在做的事:一个三段式流程
不管方法多花哨,传感器故障诊断的全过程通常包含三个核心环节 :
故障检测(Fault Detection):及时发现故障并发出警报
故障隔离(Fault Isolation):确定故障发生在哪个传感器上
故障辨识与决策:估计故障大小、类型,并做出容错决策(如切换到冗余传感器或重构信号)
常见的诊断思路是:用多个传感器测同一个物理量,把测量结果的偏差当作故障信号 ;或者构建一个"虚拟传感器"(解析冗余),用模型预测值与实际测量值之差(残差)来判断是否故障。后者是现代故障诊断的核心思想。
方法演进:从硬件冗余到知识-数据双驱动
这是综述最关键的部分。传感器故障诊断的方法演进,本质是"对被诊断对象建模的依赖程度"不断降低的过程。
第一代:硬件冗余 + 阈值判定
最早的办法简单粗暴——装多个传感器测同一个量,通过比较、投票、加权来判定谁坏了。波音 777 的大气数据惯性基准系统就用了这种容错冗余设计 。
优点:安全性高、直观可靠
致命缺点:增加成本、重量、空间占用,在飞行器等对重量敏感的平台上代价极大
第二代:基于解析模型的方法(软件冗余)
既然多装传感器太贵,就用数学模型生成"虚拟传感器"。核心思路是设计滤波器/观测器,构建对干扰具有鲁棒性的残差产生器,通过残差评价和决策实现故障诊断 。
典型技术路线包括 :
状态估计法:如 Kalman 滤波器(KF)、扩展卡尔曼滤波(EKF)、未知输入观测器
参数估计法:物理意义明确,故障分离性能好,但需要激励信号、收敛性差
等价空间法:能分离任意传感器故障、能检测多故障并发,计算量小
📌 这一代方法的代表场景是航空航天。空客 A380/A350 已经用基于模型的方法诊断飞控作动器的非指令信号故障,并通过了适航审定 。
优缺点并存:机理清楚、易分析、可实时;但对模型精度依赖强,建模误差会导致误报漏报,对非线性系统通用性不足 。
第三代:不依赖数学模型的方法
当控制系统越来越复杂、精确建模几乎不可能时,研究者转向两条路 :
3.1 基于信号处理与统计的方法
绝对值检验、趋势检验、小波分析、相关分析、信息融合、Kullback 信息准则等 。不需要对象准确模型,适应性强,但结构复杂、难于实现,检测出的故障类型有限。
3.2 基于知识的方法
专家系统:用知识库+规则库+推理机,模拟人类专家诊断(如 Beaulah 等开发的专家系统方案)
模糊逻辑:Zadeh 提出,用来在不确定和不精确信息下做理性决策
第四代:数据驱动的机器学习与深度学习方法
这是当前最热的方向。随着自动驾驶、工业物联网的爆发,数据驱动的智能诊断体系凭借在复杂故障模式识别中表现出的高精度诊断性能,成为了前沿方向。
传统机器学习阶段:
支持向量机(SVM):凭借优异的分类性能受到关注,胡良谋等提出了基于最小二乘 SVM 的飞控系统故障诊断方法,在保证诊断精度的同时提升了学习速度
神经网络(NN):如 RBF 神经网络,WAN 等提出了基于 RBF 的在线学习传感器故障诊断算法,并在结构内引入内嵌滤波器增强对故障的敏感程度
随机森林、决策树等
深度学习阶段 ,代表性架构:
架构 | 擅长处理的故障类型 | 典型应用 |
|---|---|---|
CNN | 空间特征提取,可将一维信号转为二维图像进行识别 | 多维传感器数据 |
RNN / LSTM / GRU | 时序依赖建模,适合渐进式漂移故障 | 时间序列传感器数据 |
AE / VAE | 无监督异常检测,学习数据分布 | 信号重构与异常评分 |
GAN | 故障样本生成,解决小样本问题 | 数据增强 |
Transformer | 长序列建模,自注意力机制 | 复杂依赖关系 |
GNN | 建模多传感器间关系 | 多传感器系统 |
⚠️ 深度学习的瓶颈也很现实 :故障样本稀缺、可解释性差、计算复杂度高,且"相同输入在不同学习阶段可能输出不同结果"——这对航空等安全关键领域的适航审定来说是巨大的"鸿沟" 。
第五代(正在形成):知识-数据双驱动 + 边缘智能
最新的综述明确指出,未来趋势是混合诊断系统 ——把基于模型的"白盒可解释性"与数据驱动的"复杂模式识别能力"结合起来。同时:
边缘智能部署:在传感器端就近运行轻量模型(如 CNN),降低故障检测延迟
元学习与模块化设计:解决小样本和跨场景泛化
大模型和基础模型:GPT、DeepSeek、Qwen 等大模型为少样本/零样本故障诊断带来新可能,可通过推理驱动、知识增强、多模态融合等方向提升诊断能力
当前的核心挑战
把近年的综述放在一起看,这个领域还没解决的问题高度集中 :
故障与噪声的分离:偏差、漂移等弱小、慢变故障,误报漏报概率大,需要更高的检测精度和速度
故障样本稀缺:真实故障数据难获取,尤其安全关键领域;GAN 生成、迁移学习是主要对策
可解释性 vs 性能的矛盾:深度学习精度高但黑盒,基于模型的方法可解释但精度受限
多故障并发与复杂系统:现有方法对同时发生的多故障组合检测能力不足
适航与安全认证:学习算法的"不确定性"无法被现有适航条款覆盖,是技术推广的"鸿沟"
边缘部署:工业现场的算力、功耗约束
网络安全:传感器面临恶意攻击与篡改风险(如 CrowdStrike 事件)
初学者学习路径建议
如果你是完全的初学者,建议按以下顺序深入:
第一步:打底(2-4 周)
吃透四种基本故障类型(失效/偏差/漂移/精度下降)及其数学表达
理解残差生成、阈值判定、故障可检测性(可检测的充分条件是系统对测量信号可观测且故障幅值大于最小可检测值)等概念
推荐入门综述:Recent advances in sensor fault diagnosis: A review(2020, ScienceDirect)——这篇对故障类型、方法分类、优缺点都有系统梳理
第二步:深耕一类方法(1-2 个月)
想做控制/航天方向 → 主攻基于模型的方法,吃透 Kalman 滤波、未知输入观测器、滑模观测器,读空客 A380/A350 的应用案例
想做工业物联网/边缘智能 → 主攻数据驱动方法,从 SVM、RNN 起步,再学 LSTM、CNN、Transformer
想做安全关键系统 → 重点研究硬件-软件复合冗余架构
第三步:跟踪前沿(持续)
最新 IEEE 综述Toward Reliable and Intelligent Sensor Systems(2025)覆盖了从故障诊断到补偿的全生命周期,以及硬件冗余、解析重构、AI 方法、校准维护等缓解策略,是极佳的"全景图"
关注"知识-数据双驱动"、"大模型+故障诊断"、"边缘智能"三个新兴方向
第四步:动手实践
找公开数据集(如 NASA 的 C-MAPSS、或 UCI 的传感器数据集)跑通一个端到端的诊断 pipeline
先复现一个基于 LSTM 的时序故障检测,再尝试加入注意力机制或 GAN 数据增强
对比基于模型的方法(如 EKF)与纯数据驱动方法的性能差异,体会各自的适用边界
📌 选方法时的工程直觉:系统可建模、安全关键 → 基于模型或混合方法;系统复杂、数据丰富、追求精度 → 数据驱动;资源受限的边缘端 → 轻量级模型 + 硬件冗余兜底。
传感器故障诊断是一门"问题导向"的学科——方法没有绝对优劣,只有"是否匹配你的系统特性"。初学者最容易犯的错是追着最新深度学习模型跑,却忽略了最基础的故障建模和残差分析思想。把第一代的残差思想、第二代的观测器理论、第四代的深度网络串起来理解,你会发现所有花哨的方法,本质上都是在更好地回答"测量值偏离了它应该有的样子多少"这个问题。
一、必读论文清单(按阅读顺序)
📚 奠基性综述(必读,建立全局视野)
Li et al., "Recent advances in sensor fault diagnosis: A review",Sensors and Actuators A, 2020
这是目前传感器故障诊断领域最系统的综述,覆盖了故障类型分类(失效/偏差/漂移/精度下降)、基于模型/数据驱动/知识的方法、优缺点对比、未来挑战。入门第一篇文章,必读。
Sharma, Golubchik, Govindan, "Sensor faults: Detection methods and prevalence in real-world datasets",ACM TOSN, 2010
这篇是无线传感网故障检测的经典,首次明确把故障检测方法归为四类:规则法、估计法、时间序列法、学习法,并在 4 个真实数据集上量化了故障的实际发生率。想做 IoT/环境传感方向必读。
de Bruijn et al., "Benchmark Datasets for Fault Detection and Classification in Sensor Data",SENSORNETS, 2016
这篇论文本身就是数据集——作者在 Intel Lab、SensorScope、Smart Santander 三个真实传感网数据上注入了 random / malfunction / bias / drift / polynomial drift 等故障,并给出了带 ground truth 的基准。它定义了"什么是标准化的传感器故障诊断评测",后续论文都绕不开。
📐 方法类代表论文(按技术路线各读一篇)
技术路线 | 代表论文 | 读它的理由 |
|---|---|---|
基于解析模型 | 经典 Kalman 滤波/EKF 观测器学派 | 理解"残差"思想的源头 |
硬件冗余 + 解析冗余 | 空客 A380/A350 飞控作动器故障诊断方案 | 看工业级如何落地 |
传统机器学习 | SVM / RNN / LSTM 用于传感器故障诊断的代表作 | 数据驱动方法的基线 |
深度学习 | Transformer-based sensor failure prediction for UAVs,ESWA, 2024 | 无人机多传感器故障预测与分类,含首个 UAV 传感器故障数据集 BASiC,准确率 86%/94% |
最新前沿 | 小波去噪超图深度聚类网络用于多传感器故障识别,计算机集成制造系统, 2026 | 无监督、标签不足场景下的新方法 |
IoT 场景最新综述 | "An Insight Survey on Sensor Errors and Fault Detection Techniques in Smart Spaces",CMES, 2023 | 系统梳理 IoT 环境下的误差映射与检测方法选型 |
💡 阅读策略:先读 1 篇综述(建立"地图"),再按你选的技术路线读 1-2 篇方法论文(建立"武器"),最后读 1 篇最新论文(看清前沿在哪)。不要试图读完全部。
二、公开数据集选型(按研究方向对号入座)
🏭 工业过程 / 多传感器监测
Tennessee Eastman Process (TE process) / MMTEP:41 个测量变量 + 12 个操纵变量 + 28 个故障标识,是多变量统计过程监控(MSPC)的事实标准。MMTEP 是多模态版本,更复杂、更接近真实
Hydraulic System Condition Monitoring(UCI):液压试验台多传感器数据,压力、流量、温度、振动等,4 类故障 × 多个严重程度等级,2205 个周期样本
SECOM(UCI):半导体制造过程,590 个传感器 × 1567 个样本,二分类(pass/fail),存在大量缺失值,适合做高维稀疏数据的故障检测
✈️ 航空航天 / 预测性维护
NASA C-MAPSS:涡扇发动机退化仿真数据,FD001~FD004 四个子集,26 个传感器通道。⚠️ 注意:它本质是"设备退化+剩余寿命预测"数据集,不是严格的"传感器故障"数据集——但它是传感器时序数据建模的最常用基准,几乎所有 RUL/时序诊断论文都会用
MetroPT-3(UCI):铁路空气压缩机组传感器数据,包含 COMP/LPS/油压/流量等 15 路信号,208 MB 时序数据,适合做基于异常检测的预测性维护
🛸 无人机 / 多传感器融合
BASiC Dataset(UAV Sensor Failure Dataset):首个针对无人机的传感器故障数据集,包含 GPS/遥控/加速度计/陀螺仪/罗盘/气压计等 6 类传感器故障,70 次自主飞行、超 7 小时数据
🌐 无线传感网 / IoT(最贴近"传感器故障"本义)
de Bruijn Benchmark Datasets:Intel Lab(室内温度/光)+ SensorScope(室外温度)+ Smart Santander(城市传感),共 578 万数据点,注入了 random/malfunction/bias/drift/polynomial drift 等标准故障类型,是传感器故障检测领域最权威的基准
SensorScope、Smart Santander、Intel Lab 原始数据也可单独使用
⚙️ 旋转机械(注意:这类大多诊断的是"设备故障"而非"传感器故障")
CWRU、IMS、Paderborn、HUST 等轴承/齿轮箱数据集 ——如果你的题目是"传感器故障诊断"而非"机械故障诊断",慎用,除非你研究的是"传感器自身失效对机械故障诊断的影响"这类交叉课题。
📌数据集选择建议:初学者建议从TE process 或de Bruijn Benchmark 入手——前者工业属性强、文献对比多;后者故障类型标注规范、评测标准统一。
三、必须做的实验(从入门到能发论文)
🧪 实验 1:故障注入与可视化(入门第 1 周)
在任何数据集上,手动注入 4 种标准故障:
Hard-over(卡死):信号突变为常量
Bias(偏置):信号 + 常数
Drift(漂移):信号 + 线性/多项式趋势
Noise(精度下降):信号叠加高斯白噪声,信噪比逐步降低
画出故障前后的时域/频域图,肉眼确认故障特征。这一步是所有后续实验的基础。
🧪 实验 2:基线方法对比(第 2-3 周)
至少实现 3 类基线,建立对比锚点:
基于阈值/规则:简单的 3σ 上下界检测
基于统计:PCA / Hotelling's T² + Q 统计量(TE process 的标准做法)
基于传统 ML:SVM 或 随机森林(SECOM 上的经典基线 )
🧪 实验 3:主方法实验(第 4-8 周)
选择 1-2 种主方法进行深入:
若走模型驱动:EKF/UKF/未知输入观测器 + 残差评价
若走数据驱动:LSTM / Transformer / CNN-LSTM 等深度学习模型
若走无监督:AutoEncoder / VAE 重构误差 + 阈值
在选定数据集上完成故障检测 + 故障隔离 + 故障辨识三段式全流程。
🧪 实验 4:鲁棒性 & 消融实验(第 9-10 周,决定论文档次)
噪声鲁棒性:在不同 SNR 下测试检测率
故障幅度敏感性:bias 从 1% 到 50% 逐步增大,绘制检测率曲线
多故障并发:同时注入 2-3 种故障,测试隔离能力
消融实验:去掉模型中的关键模块(如 Transformer 中的自注意力、AE 中的退化特征惩罚 ),量化每个模块的贡献
🧪 实验 5:跨数据集泛化(加分项)
在一个数据集上训练,在另一个数据集上测试(如 TE → MetroPT),验证方法泛化性。这是当前顶会的偏好。
四、评价指标(论文里必须报告这些)
分类/检测任务
指标 | 含义 | 优秀范围 |
|---|---|---|
PD (Recall) | 故障检出率 | 0.80-0.95 |
PF (False Alarm Rate) | 误报率 | 0.01-0.05 |
Precision | 精确率 | 0.70-0.90 |
F1 Score | 精确率与召回率的调和均值 | 0.75-0.90 |
AUC | ROC 曲线下面积 | 0.70-0.90 |
回归任务(如故障幅值估计、RUL 预测)
MAE(平均绝对误差)
RMSE(均方根误差)
R²(决定系数)
⚠️关键提醒:故障诊断中类别极度不平衡(正常样本远多于故障样本),单纯报 Accuracy 会被审稿人质疑。必须同时报告F1 和 AUC,最好画出 ROC 曲线和 PR 曲线。
五、新手最容易忽略的几个点
💡关于"故障"的定义:在真实工业数据中,"故障"往往是缓慢演化的——今天 1% 的 bias,一个月后变成 5%。你的方法必须在早期微小故障阶段就能捕获,而不是等故障很明显了才报警。这是工程价值的体现。
💡关于对比的公平性:深度学习论文必须和传统方法(PCA/SVM)对比,否则审稿人会问"你的方法相比 30 年前的 PCA 到底好在哪?"。同样,基于模型的方法也要和纯数据驱动对比。
💡关于可解释性:航空、核电、医疗等安全关键领域,黑盒模型很难过审。如果你的方法在这些领域应用,必须提供某种形式的解释(如注意力权重可视化、残差贡献度分析)。
💡关于"传感器故障" vs "机械故障":再次强调,这是两个不同的研究方向。CWRU、IMS 等旋转机械数据集诊断的是轴承/齿轮故障,不是传感器故障。如果你的题目明确是"传感器故障诊断",用 TE process、MetroPT、de Bruijn benchmark、BASiC 这类数据集才对口。
按照上面的论文清单 + 数据集选型 + 5 个实验,你可以在3 个月左右完成从入门到产出第一篇可投稿论文的全过程。如果你已经确定了具体方向(比如航空发动机、工业互联网、无人机、或农业环境传感),我可以再针对性地缩小必读论文范围和推荐最匹配的数据集。