用户用例 · 制造业与设备运维

预测性维护:让传感器在故障发生前先开口

预测性维护,不是把定期换件的周期改短一点。用设备正常运行时的传感器数据训练模型,让它学会什么叫正常,再用预测误差衡量当下偏离了多少,异常累积到一定程度自动通知点检责任人。无需历史故障样本,全程零代码,可在信创环境本地部署。
28 个
传感器同时监测
313 列
频谱幅值逐列建模
2 级
报警分级,抑制误报
0 个
历史故障样本也能起步

什么是预测性维护?

预测性维护,是指利用温度、振动、压力等状态监测数据,判断设备劣化趋势并推算可能的故障时点,从而把检修安排在真正需要的时候。它要同时避开两种浪费:好零件被提前换掉,和坏零件在产线上突然停摆。

它和定期保养的区别在于依据。定期保养按日历走,三个月一次,不管设备当下状态如何;状态监测按阈值走,超过某个温度就报警,但阈值是拍出来的,季节变化就会误报。预测性维护换了一条思路:先让模型学会这台设备正常时的行为规律,再看当下的实测值偏离预测值多远。偏离本身就是信号,不需要事先知道故障长什么样。

这也是它最实用的地方:大多数企业根本没有足够的历史故障记录可供训练。相关能力可延伸到制造业数据分析解决方案,与需求预测用例共用同一套时序建模底座。

这个用例解决什么问题

难点不在模型精度,而在两件事:没有故障样本可学,以及报警多到没人看。这条流程针对的正是这两点。

🎓
只学正常,不需故障样本
用正常运行期的数据训练自回归模型,让模型掌握设备的固有节律,异常定义为对这个节律的偏离。
📶
逐列建模不混淆
几百个频谱幅值列各自训练一个模型,某个频段先劣化就能被单独抓到,不会被整体均值抹平。
🔔
两级报警抑制误报
单点越界只记一级报警,只有一级报警在时间窗内持续累积才升为二级报警并触发通知。
📨
告警直达责任人
二级报警激活即自动发出邮件或工单,不必等人去翻看板,也可对接现有的告警通道。
🔁
训练与部署分离
训练流程产出模型与阈值,部署流程每天定时调用打分,模型重训与日常打分互不干扰。
🏛️
信创本地部署
产线数据不出厂区,可运行在麒麟、统信操作系统与达梦等国产数据库之上。

预测性维护:四种异常检测路线的适用边界

选型的第一个分岔口不是精度,而是你手上有没有故障样本。下表按这一列分组。

方法需要故障样本能捕捉渐变劣化典型适用场景
固定阈值报警安全联锁等硬性红线,作为最后一道防线
控制图单一指标、边界随均值与标准差滚动演化
自回归模型有周期节律的时序信号,本用例采用
有监督分类已积累足量带标签的故障记录,追求故障类型判别

四种不是替代关系,实际产线上通常叠着用:硬阈值保安全,自回归模型抓趋势,等异常样本随运行积累够了,再训练有监督模型去区分是轴承问题还是不平衡。相关算法节点可查看统计分析与机器学习功能页

预测性维护:训练与部署两条工作流

这个场景需要两条流程而不是一条。训练流程离线跑,产出模型与误差阈值;部署流程每天定时跑,加载模型给新数据打分并决定是否告警。两者的输入输出在阈值文件上衔接。

工作流一 · 训练:从正常运行数据到模型与阈值
← 左右滑动查看完整流程 →
列循环 · 逐个频谱幅值列重复
读取传感器数据转子频谱幅值
缺失值填充取上一可用值
筛选正常期仅正常运行数据
循环开始按列取一列
训练 AR 模型10 阶滞后为自变量
误差统计样本内预测误差
保存模型与阈值供部署流程调用
只用正常运行期数据,故障期数据被排除在训练集之外以过去 10 个观测值作为自变量
工作流二 · 部署:从新数据打分到分级告警
← 左右滑动查看完整流程 →
列循环 · 逐列打分并判定一级报警
选择部署日期需前两个月历史
加载模型与阈值训练流程的产出
应用 AR 模型预测本期应有值
计算预测误差实际值 – 预测值
一级报警误差越界即标记
二级报警一级报警移动平均
发送邮件告警通知点检责任人
记录并继续留档待观察
部署日需要前两个月的历史值才能构造滞后自变量二级报警才触发通知,一级报警仅记录

1. 训练:先把正常的样子学下来

读取历史传感器数据后填补缺失值,然后关键一步是筛选:只保留设备确认正常运行的时段作为训练集。这一步做错,模型就把故障前兆当成了正常节律,后面全盘失效。

2. 训练:逐列建模并记录误差分布

循环遍历每个频谱幅值列,各自训练一个自回归模型,用过去若干个观测值预测当期值。模型训练完后在训练集上自己跑一遍,统计预测误差的分布,而这个分布就是后面判定异常的标尺,和模型一起保存下来。

3. 部署:打分与一级报警

每天定时加载模型和阈值,对新到的数据逐列预测。实测值与预测值之差超出训练期误差分布的界限,该列该时点记一个一级报警。一级报警不通知任何人,它只是原始信号。

4. 部署:二级报警与动作

对一级报警做时间窗内的移动平均,超过设定水平才升为二级报警。这一层是误报过滤器:偶发的单点跳变会被平均掉,持续劣化才会累积上来。二级报警激活后由条件分支触发邮件通知,也可以换成工单或停机指令,调度与触发方式见数据分析自动化

从示例工作流走向产线值班室
示例工作流回答的是”异常能不能被算出来”,进了车间还要回答三个问题:数据能不能从采集系统稳定取到、报警阈值谁来负责调、误报率高的时候点检班组还愿不愿意看。技术上最难的那部分反而不是模型,而是把二级报警的灵敏度调到让人愿意相信它。
可视化工作流在这里的价值是流程即文档:设备工程师能看懂每一步在做什么,调阈值不必找开发。本用例的技术原型来自开源社区的公开模板,包括其中的两级报警设计与自回归建模思路,原始英文版本可在 KNIME 官网查阅。
麒麟 / 统信
鲲鹏 / 海光 / 龙芯
达梦数据库
对接 SCADA / MES

常见问题

能,而且这正是本用例采用自回归异常检测的原因。模型只需要正常运行期的数据,学会设备的固有节律后,把偏离视为异常。有监督方法才需要带标签的故障样本,那通常是运行一两年、积累了若干次真实故障之后才有条件做的事。
取决于劣化模式。缓慢磨损类的问题往往有较长的前兆期,开源社区公布的转子案例中,控制图方法曾在故障出现前数周就捕捉到异常累积;而突发性断裂几乎没有前兆,任何方法都无能为力。上线前建议用一段包含已知故障的历史数据回放,实际测一下提前量。
这是落地的头号问题,班组一旦被误报烦到,真报警也会被忽略。三个可调的地方:一级报警的误差界限放宽、二级报警的移动平均窗口拉长、升级所需的累积水平提高。建议先按历史数据回放调到误报可接受,再上线,而不是上线后边跑边调。
训练阶段确实耗时,因为是循环逐列训练,通常放在夜间或周末执行。部署阶段只是加载模型打分,开销小得多,日频调度完全够用。若列数上千,可先做特征筛选,只对与故障相关性高的频段建模。
按工况变化决定,而不是按日历。换了工艺参数、大修之后、或产品型号切换,设备的正常节律都会改变,此时旧模型会持续误报,应当重训。日常情况下季度级重训是常见节奏,重训只是重跑一次训练流程。
iModel 专属客服
在线留言或电话联系
在线留言

留下您的问题和联系方式,我们会在一个工作日内回复。

手机与邮箱至少填一项

4008568196 拨打此号码联系我们

微信扫码咨询

iModel 微信咨询二维码

使用微信扫描上方二维码