2、工业节点基础:典型工业监测场景(振动、温度、电流)与节点硬件组成

工业节点是TinyML落地的最小物理单元,它直接面对传感器信号、完成数据采集与推理,并在本地输出告警或控制指令。理解工业节点的硬件组成与功能划分,是后续进行MCU选型、采样配置、模型部署和功耗优化的前提。本章从典型工业监测场景出发,梳理振动、温度、电流三类信号的物理特征与采集要求,再拆解节点硬件的模块化架构,明确各功能单元的职责与接口关系。

工业节点硬件架构与信号链路 传感器域 振动传感器 IEPE/压电 温度传感器 PT100/热电偶 电流传感器 霍尔/罗氏线圈 开关量输入 限位/急停 信号类型:模拟/数字/脉冲 量程与带宽差异大 信号调理与采集域 信号调理 放大/滤波/隔离 ADC采样 12-16bit 抗混叠滤波 低通/带通 DMA传输 零CPU搬运 采样率:1Hz ~ 50kHz 分辨率:12/14/16bit 计算与通信域 MCU主控 Cortex-M4/M7 TinyML推理 特征+分类/回归 通信接口 RS485/CAN/WiFi 本地告警 LED/蜂鸣器/DO 实时操作系统:FreeRTOS/裸机 功耗:mA级~uA级 原始信号 数字量 支撑域:电源与时钟 DC-DC + LDO 多级供电 外部晶振 + RTC 看门狗 + 复位管理 ESD/浪涌保护 关键设计点:信号完整性、采样同步、功耗预算、抗干扰 TP1 TP2 TP1:模拟信号测试点(示波器观测原始波形) TP2:数字信号测试点(逻辑分析仪验证时序) 本地告警输出 三级告警:预警/报警/停机 输出方式:DO继电器/声光/OLED

2.1 典型工业监测场景的信号特征

工业设备的状态信息最终以物理量的形式呈现,TinyML节点需要针对不同物理量设计差异化的采集策略。振动、温度、电流是工业现场最常用的三类监测参数,它们的信号带宽、动态范围、采样要求截然不同。

2.1.1 振动监测

振动信号反映旋转机械(电机、泵、风机、压缩机)的动平衡、轴承磨损、齿轮啮合状态。工业振动监测通常使用IEPE型压电加速度传感器,输出电荷经内置放大器转换为电压信号。振动信号的频率范围从数Hz到数十kHz,但工业设备的主要故障特征集中在10Hz~10kHz区间。根据奈奎斯特采样定理,采样率至少为信号最高频率的2倍,实际工程中通常取5~10倍以保证波形还原精度。例如,监测电机轴承故障时,若关注频率为2kHz,采样率应设置为10kHz~20kHz,单次采样点数建议1024或2048点,以便后续FFT分析获得足够的频率分辨率。

振动监测关键参数:
  • 采样率:低速设备(<300rpm)建议2kHz;中速设备(300~3000rpm)建议10kHz;高速设备(>3000rpm)建议20kHz以上。
  • 量程:一般工业设备振动加速度量程±16g~±50g,需根据设备类型预留裕量。
  • 频率分辨率:Δf = fs / N,N为采样点数,1024点@10kHz时Δf≈9.8Hz。

2.1.2 温度监测

温度信号是慢变物理量,工业现场常用PT100铂电阻或K型热电偶。PT100在0℃时阻值100Ω,灵敏度约0.385Ω/℃,需要恒流源激励并测量电压降;热电偶输出毫伏级电压,需要冷端补偿和放大。温度监测的采样率要求很低,通常1Hz~10Hz即可满足绝大多数场景。但温度传感器安装在电机绕组、轴承座、管道表面等位置时,热传导延迟会导致信号滞后,因此TinyML模型需要处理时间序列趋势而非瞬时值。温度监测的精度要求通常为±0.5℃~±2℃,ADC分辨率12bit在0~200℃量程下理论分辨率约0.05℃,满足要求。

2.1.3 电流监测

电流信号反映电机的负载状态、堵转、缺相、绕组老化等异常。工业电流监测使用电流互感器(CT)或霍尔传感器,输出交流或直流信号。对于交流电机,电流信号频率为50Hz/60Hz工频,但故障特征常体现在谐波分量(如3次、5次、7次谐波)和启动电流包络中。电流采样率建议1kHz~5kHz,以捕捉谐波和暂态过程。电流信号的动态范围大,从空载的额定电流10%到堵转的600%,需要ADC具备足够的动态范围或采用可编程增益放大器(PGA)。

监测参数 信号类型 典型带宽 建议采样率 ADC分辨率 传感器类型
振动 交流电压(IEPE) 10Hz~10kHz 10k~20kHz 16bit 压电加速度计
温度 电阻/毫伏电压 DC~1Hz 1~10Hz 12~16bit PT100/热电偶
电流 交流/直流电压 50Hz~2kHz 1k~5kHz 12~16bit 霍尔/CT

2.2 节点硬件组成与功能划分

一个完整的TinyML工业节点,从硬件角度可划分为四个功能域:传感器域、信号调理与采集域、计算与通信域、支撑域(电源与时钟)。每个域承担明确的职责,域间通过标准接口衔接,便于模块化设计和故障隔离。

2.2.1 传感器域

传感器域负责将物理量转换为电信号。工业节点通常集成1~3种传感器,根据监测对象选择。振动传感器需考虑安装共振频率,IEPE传感器通过恒流源供电(典型2mA~4mA),输出偏置电压约8~12V,需要隔直处理。温度传感器PT100采用三线制或四线制接法消除导线电阻影响。电流传感器选择开环霍尔或闭环霍尔,开环适合低成本、低精度场景,闭环适合高精度、宽频带场景。传感器域的输出接口应统一为模拟电压(0~3.3V或0~5V)或数字信号(I2C/SPI),便于后级处理。

2.2.2 信号调理与采集域

信号调理是保证采样精度的关键环节。振动信号需要隔直电路去除IEPE偏置电压,再经可编程增益放大器(PGA)调整到ADC满量程附近;抗混叠滤波器(低通)截止频率设为采样率的0.4~0.5倍,防止高频分量混叠。温度信号需要精密仪表放大器放大毫伏级信号,并做冷端补偿。电流信号需进行电平偏移,将双极性信号转换为单极性(0~3.3V)供ADC采样。ADC采样建议使用MCU内置的12~16bit逐次逼近型ADC,配合DMA实现多通道循环采样,减少CPU干预。

// 典型ADC+DMA配置(以STM32L4为例)
ADC_HandleTypeDef hadc1;
DMA_HandleTypeDef hdma_adc1;

void MX_ADC1_Init(void) {
    hadc1.Instance = ADC1;
    hadc1.Init.ClockPrescaler = ADC_CLOCK_SYNC_PCLK_DIV4;
    hadc1.Init.Resolution = ADC_RESOLUTION_12B;
    hadc1.Init.DataAlign = ADC_DATAALIGN_RIGHT;
    hadc1.Init.ScanConvMode = ENABLE;      // 多通道扫描
    hadc1.Init.ContinuousConvMode = ENABLE; // 连续转换
    hadc1.Init.DMAContinuousRequests = ENABLE;
    hadc1.Init.NbrOfConversion = 3;         // 3个通道:振动/温度/电流
    HAL_ADC_Init(&hadc1);
}

2.2.3 计算与通信域

计算域的核心是MCU,TinyML推理对MCU的要求集中在三点:算力(DMIPS/MHz)、存储(Flash/RAM)和低功耗。Cortex-M4或M7内核带FPU和DSP指令,适合做FFT、滤波和矩阵运算。典型选型如STM32L4系列(80MHz,512KB Flash,160KB RAM)可运行轻量级CNN或决策树模型。通信接口根据现场条件选择:RS485(Modbus RTU)适合工业总线组网,CAN适合车载或分布式控制,WiFi/4G适合远程监控。本地告警通过GPIO驱动LED、蜂鸣器或继电器,实现三级告警逻辑。

MCU选型经验:TinyML模型参数量在10KB~100KB时,MCU Flash建议≥256KB;RAM需求约为模型参数量的2~3倍(用于中间特征图存储)。若使用CMSIS-NN优化库,Cortex-M7比M4推理速度快2~3倍,但功耗也相应增加。

2.2.4 支撑域:电源与时钟

工业节点供电通常为24V DC(工业标准),需经DC-DC降压至5V,再经LDO稳压至3.3V供MCU和传感器使用。DC-DC效率高但纹波大(约50mV),LDO纹波小(<1mV)但效率低,因此采用两级供电架构:DC-DC负责粗调压,LDO负责精稳压。时钟系统包括外部晶振(8MHz~25MHz)提供MCU主时钟,32.768kHz RTC晶振用于低功耗定时唤醒。看门狗定时器(IWDG)在程序跑飞时自动复位,是工业节点可靠性的最后防线。电源入口需加TVS管和共模电感,抑制浪涌和EMI干扰。

2.3 案例拆解:电机轴承振动监测节点

以某化工厂循环水泵电机(额定功率45kW,转速1480rpm)为例,设计一个TinyML振动监测节点,实现轴承故障的本地预警。

背景与约束:该电机位于防爆区域,不允许无线通信,只能通过RS485有线组网;现场电磁干扰强,电源波动大;要求节点在本地完成故障判断,仅将告警结果上传DCS系统。

硬件配置:

  • 传感器:IEPE加速度计(灵敏度100mV/g,量程±50g),磁吸式安装于电机轴承座水平方向。
  • 信号调理:隔直电路+二阶巴特沃斯低通滤波器(截止频率5kHz)+PGA增益1/10/100可调。
  • MCU:STM32L431(Cortex-M4,80MHz,256KB Flash,64KB RAM)。
  • 通信:RS485收发器(隔离型,波特率9600bps,Modbus RTU从站)。
  • 电源:24V DC输入,DC-DC降至5V,LDO降至3.3V;传感器独立LDO供电(+5V)。

采样参数设置:采样率fs=10kHz,单次采样点数N=2048,采样时长约0.2s,每5分钟采集一次。ADC分辨率12bit,量程±3.3V,实际振动信号经PGA放大后峰峰值约±1.5V,有效利用ADC量程的45%。

TinyML模型:在MCU上运行一个轻量级1D-CNN模型,输入为2048点振动波形,先计算时域特征(RMS、峰值、峭度),再经2层卷积提取频域特征,最终输出三类结果:正常、轴承磨损、轴承缺油。模型参数量约32KB,Flash占用约45KB,RAM占用约18KB,单次推理耗时约85ms。

实施过程与结果:

  1. 在实验室用振动台标定节点,输入已知频率和幅值的正弦振动,验证采样精度(幅值误差<2%)。
  2. 现场安装后连续运行7天,采集正常工况数据500组,建立基线。
  3. 第9天,模型输出“轴承磨损”概率达87%,同时时域RMS值从0.8g升至1.4g,节点触发本地预警(黄色LED闪烁)。
  4. 第11天,RMS继续升至2.1g,模型输出“轴承磨损”概率95%,触发报警(红色LED+蜂鸣器),并通过RS485上报DCS。
  5. 停机检修发现轴承滚道出现明显剥落,更换轴承后振动恢复至0.7g,模型输出恢复正常。
风险与代价:该节点误报过一次(第6天),原因是管道振动传递导致传感器安装共振。后续在信号调理中增加了带通滤波(100Hz~5kHz),并调整了模型阈值(从0.8降至0.75),误报消除。此案例说明,传感器安装方式和信号预处理对TinyML模型的实际效果影响巨大,不能只关注模型本身。

2.4 常见误区与设计复盘

在工业节点硬件设计中,以下问题值得特别注意:

  • 误区一:采样率越高越好。高采样率带来数据量剧增,MCU存储和功耗压力成倍上升。应根据信号带宽合理选择采样率,振动10kHz、电流2kHz、温度1Hz是经验上限。
  • 误区二:忽略抗混叠滤波。若ADC前没有低通滤波,高于fs/2的频率分量会折叠到低频段,污染有效信号。这是TinyML推理准确率下降的常见隐性原因。
  • 误区三:电源纹波影响被低估。DC-DC的开关噪声会耦合到模拟信号链路,导致ADC采样值抖动。建议模拟电路和数字电路分区布局,模拟电源单独用LDO。
  • 误区四:传感器安装不规范。振动传感器安装共振频率应高于被测频率5倍以上,磁吸安装的共振频率约2kHz,胶粘约5kHz,螺纹安装可达10kHz。安装方式不当会导致高频信号失真。
设计复盘要点:
  1. 先明确监测对象的故障特征频率范围,再确定采样率和滤波器参数。
  2. 硬件设计时预留测试点(TP1模拟信号、TP2数字信号),便于现场排障。
  3. 电源和时钟是“隐形杀手”,优先保证模拟电源的纯净度。
  4. TinyML模型部署前,必须用现场真实数据验证,实验室数据往往过于理想。
  5. 本地告警逻辑要设计去抖和延时,避免瞬时干扰导致误报。