2、振动基础:振动的基本概念、常见振动类型(正弦、随机、冲击)、振动参数(频率、幅值、加速度)及测量方法

振动是旋转机械、往复设备、流体系统中最普遍的物理现象。在TinyML设备状态监测场景中,振动信号是判断轴承磨损、转子不平衡、齿轮点蚀、松动等故障的核心数据源。理解振动的基本概念、类型、参数与测量方法,是后续构建特征工程与训练模型的前提。本节将系统梳理振动的基础知识,并给出面向Arduino与MEMS加速度计的实际测量路径。

振动测量与TinyML监测链路 振动源 旋转/往复/冲击 MEMS加速度计 ADXL345/MPU6050 信号调理 滤波/放大/采样 特征提取 时域/频域/统计 核心振动参数 频率 f (Hz) 幅值 A (mm/s) 加速度 a (g) 速度 v (mm/s) 故障频率识别 振动强度评估 高频冲击敏感 中频能量分布 测量方法 ① 安装方式 磁吸/胶粘/螺栓 ② 采样率 ≥2.56×最高频率 ③ 量程选择 ±2g~±16g ④ 数据长度 1024~4096点

上图展示了从振动源到特征提取的完整链路。在TinyML设备状态监测中,我们通常使用MEMS加速度计(如ADXL345、MPU6050)采集振动信号,经过信号调理后,在Arduino或边缘设备上直接提取时域与频域特征,再送入轻量级神经网络进行分类。理解每个环节的物理意义与工程约束,是构建可靠监测系统的关键。

2.1 振动的基本概念与物理本质

振动是指物体围绕其平衡位置进行的往复运动。从力学角度看,振动系统通常包含质量(m)、刚度(k)和阻尼(c)三个基本要素。当系统受到初始扰动或持续激励时,质量块在弹性恢复力和阻尼力的共同作用下产生周期性或非周期性的位移变化。在旋转机械中,振动主要来源于转子不平衡、轴不对中、轴承缺陷、齿轮啮合冲击、流体涡动等。

振动信号是设备状态信息的载体。不同的故障模式会在振动信号中留下特定的“指纹”——例如,轴承外圈点蚀会在特征频率处产生冲击脉冲,转子不平衡会在1倍转频处产生明显的正弦分量。TinyML模型的任务就是从这些复杂的振动信号中自动学习并识别故障模式。

核心理解:振动不是“噪声”,而是设备内部状态的“语言”。在TinyML监测中,我们不是消除振动,而是解读振动。振动信号的频率成分、幅值变化、波形形态共同构成了设备健康的完整画像。

2.2 常见振动类型:正弦、随机与冲击

根据振动波形的数学特征和物理来源,可将振动分为三类:正弦振动、随机振动和冲击振动。这三类振动在设备监测中具有不同的诊断意义。

振动类型 数学特征 典型来源 诊断价值
正弦振动 单一频率,x(t)=A·sin(2πft+φ) 转子不平衡、轴弯曲、齿轮啮合 识别转频及谐波成分,判断转子状态
随机振动 宽频带,功率谱密度连续分布 轴承磨损、流体湍流、松动 分析能量分布,检测早期退化
冲击振动 短时脉冲,时域波形尖峰 轴承点蚀、齿轮断齿、碰撞 提取冲击特征,定位局部缺陷

正弦振动是最基础的振动形式。在理想情况下,转子不平衡产生的振动近似为正弦波,其频率等于转子的旋转频率(f = RPM/60)。例如,一台转速为3000 RPM的电机,其基频为50 Hz。正弦振动的幅值稳定,相位固定,便于用FFT进行频谱分析。

随机振动的波形没有固定的周期,其瞬时值不可预测,但统计特性(如均值、方差、功率谱密度)是稳定的。轴承磨损初期,表面粗糙度增加,滚动体与滚道之间的接触产生宽频随机激励。随机振动通常用功率谱密度(PSD)来描述,它反映了振动能量在不同频率上的分布。

冲击振动的特点是持续时间极短(毫秒级)、幅值很大、频率成分丰富。当轴承滚动体经过外圈点蚀位置时,会产生周期性的冲击脉冲。冲击信号在时域上表现为一系列尖峰,在频域上表现为宽频带的高能量分布。冲击振动的检测对采样率要求较高,通常需要≥10 kHz的采样率才能捕捉到完整的冲击波形。

工程经验:实际设备中的振动往往是三类振动的叠加。例如,一个磨损的轴承同时会产生随机振动(磨损面)和冲击振动(点蚀)。TinyML模型需要从混合信号中分离出有效特征,这要求我们在特征工程阶段同时提取时域统计量(如峰值、峭度)和频域特征(如频谱峰值、边频带能量)。

2.3 振动参数:频率、幅值与加速度

描述振动信号的三个核心参数是频率、幅值和加速度。这三个参数从不同维度刻画了振动的特性,也是TinyML特征输入的基础。

频率(f)表示振动的快慢,单位是赫兹(Hz)。在设备监测中,频率是故障定位的关键线索。每种故障模式都有其特征频率:

  • 转频(1×):f = RPM/60,转子不平衡、轴弯曲的主要特征。
  • 轴承故障频率:BPFO(外圈)、BPFI(内圈)、BSF(滚动体)、FTF(保持架),由轴承几何尺寸和转速计算得出。
  • 齿轮啮合频率:GMF = 齿数 × 转频,齿轮磨损时GMF及其边频带会发生变化。

幅值(A)表示振动的强度,常用位移(μm)、速度(mm/s)或加速度(g)表示。幅值的大小直接反映了振动的剧烈程度。ISO 10816标准给出了不同等级设备的振动速度限值,例如,I类小型设备在良好状态下的振动速度应小于1.8 mm/s(RMS)。

加速度(a)是振动信号中最常用的测量量,单位是g(1g = 9.81 m/s²)。加速度对高频振动敏感,适合检测轴承冲击和齿轮缺陷。MEMS加速度计直接输出加速度值,因此TinyML系统通常以加速度作为原始输入。加速度、速度与位移之间存在微分/积分关系:

位移 x(t) → 速度 v(t) = dx/dt → 加速度 a(t) = dv/dt = d²x/dt²

在频域中,加速度的幅值等于位移幅值乘以角频率的平方(A_acc = A_disp × ω²)。这意味着高频振动即使位移很小,加速度也可能很大。因此,在检测高频冲击时,加速度是最灵敏的参数。

注意:在TinyML特征提取时,不要直接使用原始加速度值作为模型输入。原始信号包含直流偏置、噪声和安装共振成分,需要经过预处理(去均值、带通滤波)后再提取特征。否则,模型可能学习到与故障无关的噪声模式。

2.4 振动测量方法:从传感器到数据

振动测量的核心任务是将机械振动转换为可处理的电信号。在Arduino与TinyML场景中,测量链路包括传感器选型、安装、采样配置和数据采集四个环节。

传感器选型:MEMS加速度计是TinyML设备监测的首选。ADXL345量程为±16g,分辨率13位,适合测量轴承振动;MPU6050内置三轴加速度计和陀螺仪,量程可选±2g至±16g,适合需要姿态信息的场景。对于高频冲击测量,建议选择量程≥±16g、带宽≥1 kHz的传感器。

安装方式:传感器的安装直接影响测量精度。推荐使用螺栓固定或强力胶粘接,确保传感器与设备表面刚性连接。磁吸安装方便但会衰减高频信号(>2 kHz),仅适用于低频测量。安装表面应平整、清洁,避免软垫或双面胶。

采样配置:根据奈奎斯特采样定理,采样率必须大于信号最高频率的2倍。对于轴承故障监测,最高频率通常为10 kHz,因此采样率应≥25 kHz。Arduino Uno的ADC采样率有限(约10 kHz),建议使用ESP32或Arduino Due(采样率可达100 kHz)。每次采集的数据长度建议为1024~4096点,以保证FFT的频率分辨率。

数据采集流程:

  1. 初始化I2C或SPI接口,配置加速度计量程和带宽。
  2. 设置采样率,连续读取加速度数据并存入缓冲区。
  3. 对原始数据进行去直流处理(减去均值)。
  4. 可选:应用低通滤波器去除高频噪声。
  5. 将数据打包为特征向量,供TinyML模型推理。
// Arduino + ADXL345 振动数据采集示例
#include <Wire.h>
#include <ADXL345.h>
ADXL345 accel;
const int SAMPLE_COUNT = 1024;
float x_data[SAMPLE_COUNT];

void setup() {
  Wire.begin();
  accel.init();
  accel.setRange(ADXL345_RANGE_16G);
  accel.setBandwidth(ADXL345_BW_3200); // 3.2 kHz带宽
}

void loop() {
  for (int i = 0; i < SAMPLE_COUNT; i++) {
    accel.readAccel(&x_data[i], NULL, NULL);
    delayMicroseconds(100); // 约10 kHz采样率
  }
  // 此处可进行特征提取或模型推理
}
案例拆解:某化工厂离心泵轴承监测项目。初始现象:泵运行3个月后振动明显增大,操作员凭经验判断“轴承可能有问题”。目标:用TinyML实现自动预警。关键数据:使用ADXL345以10 kHz采样率采集振动数据,每次采集2048点。分析过程:对正常状态和故障状态的振动信号分别提取峭度、RMS、峰值因子和频谱峰值频率。结果:故障状态下峭度从3.2升至8.7,峰值因子从4.1升至7.5,且在2.3 kHz处出现明显边频带。实际操作:将特征输入一个3层全连接神经网络(输入层4个特征,隐藏层16个节点,输出层2类),在Arduino Nano 33 BLE Sense上运行,推理时间约15 ms。结果对比:模型对轴承故障的识别准确率达96.8%,比传统阈值法提前2天预警。风险与代价:传感器安装位置不当导致部分信号衰减,需重新固定;模型训练数据量较小(仅200组),存在过拟合风险,后续需扩充数据。复盘经验:特征选择比模型结构更重要,峭度和峰值因子对冲击型故障最敏感;采样率不足会漏掉高频冲击特征,导致误判。

2.5 常见误区与总结复盘

在振动测量与TinyML应用中,初学者常犯以下错误,需要特别注意规避。

  • 误区一:采样率设置过低。如果采样率低于信号最高频率的2倍,会发生频率混叠,高频故障特征被折叠到低频段,导致误判。例如,用1 kHz采样率测量10 kHz的轴承冲击,冲击特征会完全丢失。
  • 误区二:忽略安装共振。传感器安装不当会引入共振频率,该频率与设备故障无关,但会被模型误认为故障特征。建议在安装后进行锤击测试,确认共振频率不在关注频段内。
  • 误区三:直接使用原始波形作为模型输入。原始振动数据维度高、噪声大,直接输入模型会导致训练困难且泛化能力差。应提取有物理意义的特征(如RMS、峭度、频谱峰值)后再建模。
  • 误区四:忽视量程设置。量程过小会导致信号削顶,量程过大会降低分辨率。应根据设备振动水平选择合适的量程,一般预留20%~30%的余量。

总结复盘:振动基础是TinyML设备状态监测的基石。理解正弦、随机、冲击三类振动的物理特征,掌握频率、幅值、加速度三个参数的诊断意义,并正确实施传感器选型、安装和采样配置,是构建可靠监测系统的前提。在实际项目中,建议先通过频谱分析确定设备的主要振动频率成分,再针对性地设计特征提取方案和模型结构。振动测量不是简单的数据采集,而是需要结合机械原理、信号处理和机器学习知识的系统工程。

实践建议:在开始TinyML项目前,先用FFT分析仪或Python脚本对采集的振动数据进行离线分析,确认故障特征频率是否清晰可见。如果离线分析都无法区分正常与故障状态,那么再复杂的模型也无济于事。振动基础知识的扎实程度,直接决定了TinyML应用的上限。