接上文,老张按照我们的七步法,花了两周把数据采上来了。
他兴奋地打开电脑,看到满屏跳动的数字,然后……懵了。
“这温度怎么一秒内从20度蹦到200度又回来?”
“这台风机的转速怎么和隔壁水泵的流量对上了?”
“西门子PLC里的‘DB20.DBD12’到底是个什么鬼?”
如果你也在做数据采集,大概率遇到过类似的场景。
采得上,读不懂,用不了。
这就是典型的垃圾进,垃圾出。
今天我们就来聊聊:数据采上来了,怎么把它“洗干净”,让系统真正能用。
第一步:处理“野数据”——毛刺与跳变
现象
温度曲线像心电图,压力值忽高忽低,流量数据莫名归零又恢复。
原因
电气干扰(变频器、大电机启停)
传感器接触不良
采集频率过高,捕捉到了瞬时噪声
实操:加一道“软件滤波”
不需要换硬件,在采集网关或采集软件里配置滤波规则即可。
常用三种滤波方法:
方法 |
原理 |
适用场景 |
限幅滤波 |
变化超过阈值就丢弃 |
剔除明显异常跳变 |
中位值滤波 |
连续采N个值,取中间值 |
消除脉冲干扰 |
一阶滞后滤波 |
新值=旧值×(1-a)+采样值×a |
大部分工业场景,平滑效果好 |
真实案例
某注塑厂,温度数据因为变频器干扰,经常从120℃瞬间跳到300℃又回来。
加了一阶滞后滤波(a=0.8),同时给传感器信号线加了磁环,问题解决。
这一步的产出
滤波参数配置表,记录每个测点用了什么滤波方法、阈值是多少。
第二步:统一“黑话”——数据标准化
现象
同一个温度,西门子里叫DB20.DBD12,三菱里叫D100
有的点叫Temp,有的叫Temperature
单位混用:PSI、bar、MPa、公斤随便写
后果
业务人员(设备科长、维修工)看不懂数据。
想做跨设备分析(比如“所有风机轴承温度”),根本没法关联。
实操:建立《数据字典》
把“物理点”(PLC地址)映射成“逻辑点”(业务人员能看懂的名字)。
举个例子:
物理点(PLC地址) |
逻辑点(中文名) |
单位 |
量程 |
设备归属 |
DB20.DBD12 |
3号空压机_一级排气温度 |
℃ |
0-200 |
空压站 |
D100 |
2号水泵_出口压力 |
MPa |
0-1.6 |
循环水 |
命名规范建议:
【车间/区域】_【设备名】_【参数名】_【后缀(可选)】
例如:总装车间_3号装配线_电机电流
例如:锅炉房_2号锅炉_排烟温度
这一步的产出
一份数据字典,Excel表格就行,重点是:所有人都能看懂,且版本统一受控。
第三步:校准“时间轴”——多设备数据对齐
现象
分析故障时发现:
PLC记录的温度飙升发生在10:05:30
振动采集器的异常发生在10:03:15
时间差了2分钟,根本没法判断因果关系。
原因
不同采集设备的时间是各自独立的,有的用设备本地时钟,有的用网关时钟,跑着跑着就偏了。
实操:开启NTP时间同步
NTP = Network Time Protocol(网络时间协议),简单说就是所有设备定期去同一个“时间服务器”对表。
配置要点:
选一个时间源:中控室服务器、车间已有的NTP服务器,或者外网公共NTP(如ntp.aliyun.com)
所有采集设备指向同一个NTP服务器:采集网关、工控机、PLC(如果支持)
同步频率:每小时同步一次,精度可以到毫秒级
真实案例
某汽车零部件厂,振动数据和PLC数据时间差了3分钟,找了两个月没找到故障原因。
开启NTP同步后,数据对齐,发现是某台机器人启动瞬间导致电压跌落,问题迎刃而解。
这一步的产出
NTP配置记录,确认所有采集设备的时间源一致。
写在最后
数据清洗虽然枯燥,但它是从“自动化”迈向“智能化”的必经之路。
三步总结:
步骤 |
核心任务 |
一句话总结 |
第一步 |
处理野数据(滤波) |
把“心电图”变成“平滑曲线” |
第二步 |
统一命名(数据字典) |
让业务人员也能看懂数据 |
第三步 |
校准时间(NTP) |
让多设备数据能“对得上” |
记住:
硬件装完,项目才完成30%。
数据能看、能用、可信,才算真正交付。
如果你的数据采上来了,但报表没人信,先回来看看这三步做好了没。
互动结尾
你的工厂遇到过“数据跳变”或“时间对不上”的问题吗?
欢迎在评论区吐槽你踩过的坑,点赞最高的送一份《数据字典模板》电子版。
推荐阅读:
《数据采集系统从零搭:从捋线到上云,七步走通》
《预测性维护系统搭建:从选型到上线全流程》

