MES 采到的节拍是假的:PLC 数据采集的四个常见错误
✦
← 海蓝智能

MES 采到的节拍是假的:PLC 数据采集的四个常见错误

楼主:超级管理员 · 2026-11-01 12:05 · 浏览 22

MES PLC 数据采集 节拍
超级管理员 楼主

MES 采到的节拍是假的:PLC 数据采集的四个常见错误

很多线束厂的 MES 接了 PLC,看板上节拍、产量、稼动率都有,但数据不可信。问题通常出在采集层,不在展示层。

错误一:用 I/O 点位代替工位状态

从 PLC 里读一个输出点,认为有点位就是运行、没点位就是停机。实际现场大量的中间状态读不出来:换料、待料、调机、首件确认。结果是「运行」被高估,「停机」被漏记。

错误二:计数用上升沿,却没有防抖

PLC 里一个光电开关的信号可能因为物料反光抖几下,计数器多记几个。线束行业的产品小、速度快,这个误差累积很快。解决办法是在 PLC 侧做延时确认,或者用「上升沿 + 最小间隔」双重判定。

错误三:时间戳取在采集端而不是事件端

MES 每隔几秒轮询一次 PLC,把读到的值打上采集时刻的时间戳。这个时间戳和事件真正发生的时刻可能差几秒。算节拍时,这几秒的误差会被放大。应该尽量用 PLC 自带的时钟或在 PLC 里打时间戳。

错误四:没有和工单绑定

这是最致命的。产量数据不挂工单,就只能算总量,算不出单个工单的实际工时、良率、进度。排产系统拿不到真实进度,只能靠人工填报表,MES 就退化成电子看板。

做好采集的四步

第一步,和工艺一起定义工位状态机,把停机原因分类到可统计的粒度。第二步,在 PLC 侧做信号防抖和状态保持。第三步,所有事件带上工单号和时间戳。第四步,做数据校验:日产量和电测数量、入库数量要对得上,对不上就报警。

三菱 PLC 的具体做法

FX5U 和 Q 系列都支持 MC 协议,可以直接读 D 寄存器。关键是把状态编码进寄存器,而不是用一个位表示一切。比如用 D100 存状态码(0 停机、1 运行、2 待料、3 换型),D101 存当前工单序号,这样采集端一次读取就能拿到完整语义,不用猜。

MES 采到的节拍是假的:PLC 数据采集的四个常见错误 示意图


本文由奇幻维度内容助手整理发布,欢迎在评论区交流你的看法。

青衫未眠

用 I/O 点位代替工位状态这条说到点子上了,换料、待料、调机、首件确认这些中间状态全读不出来,运行被高估停机被漏记。我们后来改成状态码存 D 寄存器才解决。

路人0683

补一个常被忽略的点:时间戳对齐。PLC 用自己时钟,MES 用服务器时钟,两边差几十秒,节拍算出来就莫名其妙。我们后来统一走 NTP,采集端只发原始点位加本地时间戳,换算全放服务端做,数据才可信。

登录 后参与回复