3、异常检测概述:异常检测的定义、分类及工业应用场景

在TinyML振动异常检测系统中,异常检测(Anomaly Detection)是整个算法链路的起点与核心判断引擎。它的任务不是识别“正常是什么”,而是识别“正常之外是什么”。在工业设备运行过程中,振动信号往往呈现高度复杂的非平稳特性,设备从健康状态退化到故障状态的过程中,异常特征往往隐藏在噪声、工况变化和传感器漂移之中。理解异常检测的本质定义、掌握其分类体系、明确其在工业现场的具体落点,是设计阈值自适应调整方法的前提。本章将系统梳理异常检测的基本概念、三大分类维度及其在工业场景中的映射关系,为后续章节的阈值自适应算法奠定理论基础。

异常检测分类体系与工业映射 异常检测 (Anomaly Detection) 点异常 (Point Anomaly) 上下文异常 (Contextual) 集合异常 (Collective) 单个振动峰值突变 瞬时冲击/碰撞 特定转速下振动异常 温度/负载条件相关 连续多个周期波形畸变 轴承磨损趋势序列 工业场景: 齿轮断齿冲击、异物碰撞 传感器尖峰干扰 工业场景: 变转速工况下的不对中 负载突变时的瞬态振动 工业场景: 轴承渐进式磨损、 齿轮裂纹扩展、松动发展

3.1 异常检测的核心定义与数学表达

异常检测是指在数据集中识别出不符合预期行为模式或显著偏离正常分布规律的数据点的过程。在TinyML振动监测的语境下,异常检测的目标是从连续的振动时序信号中,自动标记出那些可能代表设备状态异常的信号片段或特征值。需要特别强调的是,异常并不等同于故障——异常是统计学意义上的偏离,而故障是工程意义上的失效。一次由于外部敲击管道引起的振动尖峰是异常,但设备本身并未损坏;而轴承内圈出现微小剥落时,振动信号中出现的周期性冲击序列则是故障的前兆。异常检测的任务是尽可能早、尽可能准确地捕获这些偏离信号,为后续的故障诊断和阈值调整提供输入。

从数学角度看,给定一组正常工况下的振动特征样本集 X_normal = {x₁, x₂, ..., xₙ},其中每个样本 xᵢ 可以是时域统计特征(如RMS、峰值因子)、频域特征(如频谱能量分布)或时频域特征(如小波包能量)。异常检测的目标是学习一个正常行为的描述模型 M,使得对于任意新样本 x_new,能够计算其异常得分 S(x_new),并与判定阈值 ε 比较:若 S(x_new) > ε,则判定为异常。这里的阈值 ε 正是后续章节中需要自适应调整的核心参数——固定阈值在工况变化时会导致误报率急剧上升,而自适应阈值则能动态跟踪设备运行状态的变化。

核心要点:异常检测的本质是“正常行为建模”而非“故障模式匹配”。在TinyML场景下,由于MCU算力和存储资源有限,无法部署复杂的深度生成模型,因此通常采用轻量级的统计模型(如高斯分布、马氏距离)或基于距离/密度的经典方法,并配合阈值自适应机制来提升鲁棒性。

3.2 异常检测的三大分类:点异常、上下文异常与集合异常

根据异常数据的形式和上下文关系,异常检测领域将异常分为三类:点异常、上下文异常和集合异常。理解这三者的区别,对于选择特征提取方法和设计阈值调整策略至关重要。

3.2.1 点异常(Point Anomaly)

点异常是指单个数据点相对于整体数据分布呈现出显著偏离。在振动信号中,点异常通常表现为某个采样时刻的振动幅值突然增大或减小,且该偏离无法用正常噪声解释。例如,旋转机械中叶片与静止部件发生瞬时碰摩时,振动加速度信号会出现一个尖锐的冲击峰值;或者传感器受到电磁干扰时,输出信号会出现一个孤立的高幅值毛刺。点异常检测的关键在于建立正常数据的分布模型,常用的方法包括基于统计的3σ准则、基于距离的k近邻方法以及基于密度的LOF(局部离群因子)方法。在TinyML平台上,由于计算资源有限,通常采用滑动窗口内的均值与标准差来实时判断当前采样点是否为点异常。

3.2.2 上下文异常(Contextual Anomaly)

上下文异常是指单个数据点在全局分布中可能处于正常范围,但在特定的上下文条件(如时间、工况、环境参数)下却表现为异常。在工业振动监测中,上下文异常极为常见。例如,一台离心泵在额定转速2900rpm下运行时,振动速度有效值(RMS)为2.8mm/s属于正常;但当转速降至1450rpm时,同样的RMS值2.8mm/s则明显偏高,因为低转速下正常振动水平应低于1.5mm/s。另一个典型例子是温度对振动的影响:设备冷启动阶段,由于润滑油粘度较高,振动幅值会偏大,这种偏大在冷启动上下文中是正常的,但在热稳定工况下则可能预示故障。上下文异常检测需要引入上下文特征(转速、负载、温度、运行时间等)作为条件变量,建立条件正常模型。

3.2.3 集合异常(Collective Anomaly)

集合异常是指一组连续的数据点作为一个整体呈现出异常模式,但其中每个单独的数据点可能看起来都是正常的。在振动信号中,集合异常通常表现为一段连续时间内的波形形态、频谱结构或统计特征发生系统性变化。例如,轴承外圈出现早期剥落时,振动信号中会周期性出现冲击脉冲,但单个冲击脉冲的幅值可能仍在正常范围内,然而这些冲击脉冲的重复频率、间隔规律和能量累积却构成了异常模式。另一个例子是齿轮箱中齿面磨损导致啮合频率边带逐渐增多,虽然每个频谱分量的幅值变化不大,但整个频谱的边带结构已经偏离正常形态。集合异常检测通常需要分析序列的相关性、周期性或频域特征,常用的方法包括滑动窗口内的频谱对比、时序预测残差分析以及基于马尔可夫模型的序列异常检测。

分类 定义特征 振动信号表现 典型检测方法 TinyML适配性
点异常 单点偏离全局分布 瞬时冲击、尖峰毛刺 3σ准则、LOF、KNN 高(计算量小)
上下文异常 在特定条件下偏离 变转速下RMS偏高 条件高斯、回归残差 中(需引入工况参数)
集合异常 序列整体模式异常 周期性冲击序列、频谱边带 频谱对比、时序预测 中低(需缓存序列)

3.3 工业应用场景与案例拆解

异常检测在工业设备健康管理中的应用极为广泛,从旋转机械到往复式压缩机,从电机到泵组,振动异常检测都是预测性维护的第一道防线。以下通过一个具体的工业案例,展示三类异常在实际场景中的表现与检测策略。

案例:某化工厂离心泵振动异常检测

背景与约束:某化工厂一台卧式离心泵(型号:IS200-150-400),额定流量200m³/h,额定扬程50m,转速2950rpm,电机功率45kW。该泵输送介质为循环冷却水,轴承类型为深沟球轴承6314。工厂要求在不改变现有硬件的前提下,部署基于TinyML的振动监测系统,MCU选用STM32L476(80MHz Cortex-M4,512KB Flash,128KB RAM),加速度传感器采用ADXL345(量程±16g,采样率3200Hz)。

初始现象:设备运行3个月后,操作人员反映泵体振动略有增大,但便携式测振仪显示振动速度RMS为3.2mm/s,仍低于ISO 10816-3标准中该等级泵的报警限值4.5mm/s。然而,设备维护记录显示,该泵在相同工况下历史振动RMS均值为2.5mm/s,标准差为0.3mm/s。

关键数据与判断过程:部署TinyML节点后,采集了24小时连续振动数据。按照三类异常分别分析:

  1. 点异常检测:在时域波形中发现每转出现一个约0.5g的冲击脉冲,而正常时冲击幅值不超过0.2g。该冲击脉冲持续时间约0.3ms,属于典型的点异常。但单个冲击的幅值并未超过传感器量程的10%,若仅用固定阈值判断,不会触发报警。
  2. 上下文异常检测:进一步分析发现,该泵在夜间低负荷运行时(流量降至120m³/h),振动RMS反而升高至3.5mm/s,而历史同工况下RMS应为2.0mm/s。这表明振动水平与工况的对应关系发生了偏移,属于上下文异常。
  3. 集合异常检测:对振动信号进行包络谱分析,发现轴承外圈故障特征频率(BPFO=11.2Hz)处出现明显峰值,且其2倍频、3倍频处也有能量累积。虽然每个频点的幅值单独看都在正常范围内,但整个包络谱的结构已经呈现出典型的轴承外圈剥落模式,属于集合异常。

实际操作步骤:基于上述三类异常的综合判断,维护团队决定在下一个计划停机日对泵进行解体检查。检查发现轴承外圈滚道出现约3mm×2mm的剥落坑,保持架轻微变形。更换轴承后,振动RMS恢复至2.4mm/s,包络谱中BPFO特征消失。

结果对比与复盘:如果仅依赖固定阈值(4.5mm/s),该故障至少还需要运行2-3周才会触发报警,届时可能导致轴颈磨损或密封失效。而通过三类异常的综合检测,提前了约200小时发现故障隐患。本次案例的教训是:单一类型的异常检测容易产生漏报,实际部署中应将三类异常检测结果进行融合决策。同时,该案例也凸显了阈值自适应调整的必要性——固定阈值无法感知设备正常退化过程中振动水平的缓慢上升,而自适应阈值可以跟踪这种渐变趋势,在故障发展到临界点之前给出预警。

工程警示:在TinyML平台上实现三类异常检测时,必须考虑资源限制。点异常检测计算量最小,适合在中断服务程序中实时执行;上下文异常需要缓存工况参数,建议在低功耗模式下周期性计算;集合异常通常需要FFT或小波变换,应安排在MCU空闲时段批量处理,避免影响实时控制任务。

3.4 常见误区与设计要点

在工业振动异常检测系统的设计与部署中,工程师常陷入以下误区,导致系统误报率居高不下或漏报关键故障。

  • 误区一:将异常等同于故障。异常是统计偏离,故障是物理失效。一次由于管道水锤效应引起的振动冲击是异常,但设备并未损坏。若将所有异常都触发报警,维护团队将陷入“狼来了”困境,最终对报警麻木。正确做法是建立异常分级机制:轻微异常记录日志,中度异常增加采样频率,严重异常才触发报警。
  • 误区二:忽略工况变化对正常模型的影响。许多团队在实验室环境下采集正常数据训练模型,但现场工况(转速、负载、温度)波动范围远超实验室设定。导致模型在工况偏离时产生大量误报。解决方案是建立多工况正常模型库,或引入工况参数作为上下文特征进行条件建模。
  • 误区三:固定阈值一劳永逸。设备在正常使用过程中,由于磨损、润滑状态变化、基础松动等原因,振动基线水平会缓慢漂移。固定阈值要么过早报警(阈值设置过低),要么报警过晚(阈值设置过高)。阈值自适应调整是解决这一问题的核心手段,后续章节将详细展开。
  • 误区四:忽视传感器自身异常。传感器松动、线缆磨损、ADC饱和等自身故障会产生与设备故障相似的异常信号。在检测流程中应加入传感器自检环节,例如通过注入已知测试信号或监测传感器偏置电压来判断传感器是否健康。
设计建议:在TinyML振动异常检测系统中,建议采用“三级检测架构”:第一级为实时点异常检测(基于滑动窗口的轻量统计),第二级为上下文异常检测(结合工况参数的查表或回归模型),第三级为集合异常检测(周期性执行的频谱分析)。三级检测结果通过加权投票或逻辑规则融合,最终输出异常等级。这种架构在计算资源受限的条件下,能够兼顾实时性与检测全面性。