2. TinyML与振动异常检测基础

在工业设备预测性维护、旋转机械状态监测和结构健康监测等场景中,振动信号是反映设备运行状态最直接、最丰富的物理量之一。然而,传统振动分析依赖高采样率数据采集与云端服务器处理,存在带宽成本高、响应延迟大、数据隐私风险等问题。TinyML(微型机器学习)技术的出现,为在微控制器(MCU)级硬件上直接运行轻量化异常检测模型提供了可能,使得振动监测从“事后分析”走向“实时边缘智能”。本章将系统梳理TinyML的核心概念、边缘计算带来的工程优势、振动信号的关键特征维度,以及异常检测的典型应用场景,为后续板级验证与校准奠定理论基础。

传感器与信号采集 边缘MCU处理 决策与执行 加速度计 ADC采样 抗混叠滤波 窗函数/帧 特征提取 TinyML推理 异常评分 阈值判断 本地告警 云端上报 振动信号特征 • 时域:RMS、峰值、峭度 • 频域:FFT谱、包络谱、边带 TinyML约束 • RAM: 数十KB • Flash: 数百KB • 算力: 数十MHz • 功耗: mW级 应用场景 • 电机/泵/风机 • 齿轮箱/轴承 • 刀具磨损 • 结构健康监测

上图展示了TinyML振动异常检测的完整链路:从传感器信号采集、边缘MCU上的特征提取与模型推理,到最终的本地决策与云端交互。整个链路中,振动信号的特征质量与模型在MCU上的适配程度,直接决定了板级验证与校准的成败。

2.1 TinyML核心概念与边缘计算优势

2.1.1 TinyML定义与技术边界

TinyML是机器学习与嵌入式物联网系统的交叉领域,其核心目标是在功耗受限、计算资源有限的微控制器上部署和运行机器学习模型。与云端AI不同,TinyML模型通常经过量化、剪枝、蒸馏等技术压缩至几百KB以内,推理过程完全在本地完成,不依赖网络连接。典型的TinyML硬件平台包括ARM Cortex-M系列、RISC-V MCU以及低功耗DSP,其RAM容量通常在16KB至512KB之间,Flash存储在256KB至2MB之间。

关键理解:TinyML并非简单地将模型“缩小”,而是从硬件指令集、内存布局、算子优化到模型结构设计的系统性协同。例如,在Cortex-M4上利用SIMD指令加速卷积运算,或采用8bit整数量化替代32bit浮点运算,都是TinyML工程落地的常见手段。

2.1.2 边缘计算在振动监测中的四大优势

将振动异常检测下沉到边缘设备,相比传统云端方案具有不可替代的工程价值,具体对比如下:

维度云端计算方案TinyML边缘方案工程收益
实时性依赖网络,延迟100ms~数秒本地推理,延迟<10ms满足高速旋转机械的瞬态报警需求
带宽成本需持续上传原始波形(如25.6kHz×16bit)仅上传异常事件或特征摘要降低90%以上数据传输量
数据隐私与安全原始振动数据暴露于公网数据不出设备,仅上报结论符合工业数据合规要求
可靠性断网即失效本地自治,断网仍可监测提升系统鲁棒性

以一条典型的工业产线为例,若部署20个振动监测点,每个测点以25.6kHz采样率、16bit分辨率连续采集,单日原始数据量约为44GB。若采用云端方案,即便经过压缩,每日仍需传输数GB数据;而采用TinyML边缘方案,仅需在检测到异常时上传一段1~2秒的波形片段,每日数据量可控制在几十MB以内,同时报警响应时间从秒级缩短至毫秒级。

2.2 振动信号特征体系与异常表征

2.2.1 振动信号的物理基础与采集约束

振动信号本质上是机械设备动力学行为在传感器敏感轴上的投影。对于旋转机械,振动源包括转子不平衡、轴不对中、齿轮啮合冲击、轴承滚动体缺陷等。在板级验证阶段,必须明确采样定理的工程约束:采样率至少为最高分析频率的2.56倍(工程常用系数),抗混叠滤波器截止频率应设置为采样率的0.4~0.45倍。例如,若要分析轴承故障特征频率(通常在2kHz~10kHz),采样率应不低于25.6kHz。

2.2.2 时域与频域关键特征指标

在TinyML模型设计中,特征选择直接影响模型复杂度与检测精度。下表归纳了振动异常检测中最常用的特征类别及其物理含义:

特征类别具体指标计算公式/获取方式异常敏感方向
时域统计均方根值(RMS)\(\sqrt{\frac{1}{N}\sum_{i=1}^{N}x_i^2}\)整体能量变化,对磨损、负载变化敏感
时域统计峭度(Kurtosis)\(\frac{1}{N}\sum_{i=1}^{N}(\frac{x_i-\mu}{\sigma})^4\)冲击脉冲,对早期点蚀、裂纹敏感
频域特征频谱峰值幅值FFT后提取1X、2X转频分量不平衡、不对中、松动
频域特征包络谱特征频率Hilbert变换+FFT轴承内圈/外圈/滚动体故障
时频特征小波包能量熵小波分解后各频带能量占比非平稳、瞬态冲击

在MCU上实现上述特征时,需要特别注意计算效率。例如,峭度计算涉及四次方运算,在无FPU的Cortex-M0上可能消耗较多周期,此时可考虑使用绝对值四阶矩近似,或降低计算帧长。FFT点数通常选择256、512或1024点,对应频率分辨率分别为100Hz、50Hz、25Hz(在25.6kHz采样率下),需根据目标故障特征频率间隔合理选择。

2.2.3 异常检测的建模思路

振动异常检测通常分为两类建模路径:基于重构误差的自动编码器(AE)和基于分类的监督模型。在TinyML场景中,由于正常样本易获取、故障样本稀缺,更推荐采用半监督或单类分类方法。例如,在MCU上部署一个轻量级自编码器,输入为提取的振动特征向量(如12维),中间隐藏层仅4~6个神经元,输出为重构向量。通过正常数据训练后,计算重构误差(MSE),当误差超过阈值时判定为异常。该模型参数量通常不足500个,量化后仅需2KB Flash,非常适合板级部署。

工程经验:在板级验证阶段,建议先在PC端用Python脚本提取特征并训练模型,导出为C数组或TensorFlow Lite Micro格式,再移植到MCU。切勿直接在MCU上调试特征提取算法,否则会极大降低调试效率。

2.3 典型应用场景与板级验证需求

2.3.1 旋转机械健康监测

以某化工厂的冷却水泵为例,电机转速为2970rpm(转频50Hz),水泵轴承型号为6312。轴承外圈故障特征频率(BPFO)约为3.05×转频=152.5Hz。在TinyML方案中,传感器以25.6kHz采样率采集振动数据,MCU每秒钟计算一次特征向量(包括RMS、峭度、1X/2X幅值、包络谱BPFO幅值),输入轻量级异常检测模型。当模型输出异常评分超过阈值时,本地LED告警并通过UART上报事件。

2.3.2 刀具磨损预测

在CNC机床主轴监测中,刀具磨损会导致切削力增大,进而引起振动信号的高频分量能量上升。TinyML模型可提取主轴振动在3kHz~8kHz频段的能量占比,结合主轴负载电流,实现刀具剩余寿命的粗略估计。由于机床控制柜空间有限,通常采用贴片式加速度计与邮票型MCU模块,整体功耗控制在0.5W以内。

2.3.3 结构健康监测

对于桥梁、建筑等大型结构,振动频率较低(0.5Hz~20Hz),采样率可降低至100Hz~200Hz。此时TinyML的优势在于可以部署大量无线节点,每个节点独立进行频谱峰值跟踪,当固有频率偏移超过5%时触发报警。这种应用对MCU的ADC精度要求较高(至少16bit),但对算力要求较低。

2.4 常见误区与设计复盘

2.4.1 误区一:忽视采样率与抗混叠滤波的匹配

在板级验证中,若ADC前未放置合适的抗混叠滤波器,高频噪声会折叠到低频段,导致特征提取失真。例如,采样率25.6kHz时,若传感器谐振频率为30kHz,则30kHz信号会折叠至21.2kHz(30-25.6=4.4kHz,实际折叠至25.6-4.4=21.2kHz),污染高频特征。正确做法是在ADC驱动电路前加入二阶有源低通滤波器,截止频率设为10kHz(0.4×采样率)。

2.4.2 误区二:模型精度与资源消耗的失衡

部分开发者倾向于使用较大的深度学习模型以追求精度,但忽略了MCU的Flash和RAM限制。例如,一个包含3层卷积的模型(参数量约50K)在量化后仍需约50KB Flash,而典型MCU可用Flash仅256KB,还需存放Bootloader、RTOS和协议栈。建议在模型设计阶段就设定资源预算:Flash占用不超过总容量的60%,RAM峰值不超过总RAM的70%。

2.4.3 误区三:忽略温度漂移对振动传感器的影响

工业现场温度变化范围大(-40℃~85℃),MEMS加速度计的零偏和灵敏度会随温度漂移。在板级校准时,若未进行温度补偿,可能导致误报或漏报。建议在PCB上靠近传感器位置放置NTC热敏电阻,在MCU中建立温度-零偏查找表,每10℃一个补偿点,线性插值修正。

风险提示:在振动异常检测的板级验证中,务必使用标准振动台(如B&K 4808)进行激励,以验证传感器安装方向、灵敏度设置和信号链路的正确性。切勿直接用手敲击或随意放置传感器进行验证,否则无法获得可重复的基准数据。

2.4.4 设计复盘:从原型到量产的关键检查项

在完成TinyML振动异常检测板级验证后,建议按照以下清单进行复盘:

  1. 信号链路完整性:确认从传感器到ADC的每一级增益、偏置、滤波参数是否与设计一致,使用信号发生器注入已知正弦波验证链路增益误差<±2%。
  2. 特征提取一致性:在PC端与MCU端分别运行相同的特征提取代码,对比输出结果,确保RMS误差<0.5%,FFT幅值误差<1%。
  3. 模型推理确定性:输入相同的固定特征向量,连续运行100次,确保输出结果完全一致(无随机性)。
  4. 功耗验证:在连续运行模式下,测量MCU核心电流与传感器电流,确认总功耗满足电池供电或能量采集的预算要求。
  5. 异常注入测试:使用电磁激振器模拟轴承外圈故障特征频率,验证系统能在2秒内触发报警,且无误报。