141、eIQ的异常检测案例

📅 2026/7/31 15:08:26
141、eIQ的异常检测案例
eIQ的异常检测案例:从一次产线误报开始的调优实录去年秋天,我接手了一个工业振动监测项目。产线上一台离心泵的加速度传感器数据,通过i.MX RT1060跑eIQ推理,结果每天凌晨三点准时报警——说是“异常振动”。现场工程师拆了三次泵,换了两次轴承,结果发现是隔壁冲压车间的夜班机器共振传过来了。模型没错,数据没错,但场景错了。这就是异常检测最典型的坑:你训练了一个“正常”的模型,但现实世界的“正常”每天都在变。今天这篇笔记,就从这个案例出发,拆解eIQ的异常检测完整流程。不扯理论,只讲我在调试板上跑通、踩坑、优化的真实记录。数据准备:别信“正常”两个字eIQ的异常检测基于“学习正常模式,偏离即异常”的思路。所以第一步不是找异常样本,而是定义“正常”的边界。我那台离心泵,空载、满载、50Hz、60Hz、环境温度25℃和40℃时的振动频谱完全不一样。如果只采集了白天平稳工况的数据去训练,模型自然会把夜间的共振当成异常。实操建议:用MCUXpresso SDK里的eiq_exception_detection示例工程,先修改数据采集脚本。在data_collector.c里,把采样窗口从默认的256点改成1024点——别问为什么,低频振动需要更长的时域窗口才能捕捉到周期特征。这里踩过坑:采样点太少,FFT后的频率分辨率不够,相邻频率的峰值会混叠,模型学到的特征全是模糊的。采集时,我习惯在SD卡上同时保存原始时域数据和标签。eIQ的异常检测模型通常用自编码器(Autoencoder)架构,输入是归一化的频谱特征。所