可编程逻辑控制器
控制设备动作的工业计算机;是控制器采集方式的数据来源。
数据采集PLC
可编程逻辑控制器 · PLC
控制设备动作的工业计算机;是控制器采集方式的数据来源。
采集时要注意
读 PLC 数据一般不改变控制逻辑,但需要占用通讯资源并知道地址。实务上要确认:是否允许第三方读取(部分设备厂商以保修为由不允许)、通讯口是否被占用、扫描周期是否足以捕捉短停机。
若需要修改 PLC 程序才能取到数据,项目性质就变了——那是改造,不是接入,周期和风险都要重估。
PLC 里哪些信号能用来算 OEE:点位表示例
下表为示例,地址是虚构的,不同品牌写法不同。原则是只要四五个点就够起步,不要一上来就把整个程序的变量全读出来。
| 信号 | 类型 | 示例地址 | 采样周期 | 用途 |
|---|---|---|---|---|
| 自动运行中 | 位 | M100.0 | 1 秒 | 运行/停止判定 |
| 循环完成 / 产量计数 | 32 位整数 | DB10.DBD0 | 1–5 秒 | 产量、实际节拍 |
| 报警总标志 | 位 | M100.1 | 1 秒 | 区分故障停与待机停 |
| 报警代码 | 16 位整数 | DB10.DBW4 | 1 秒 | 停机原因提示 |
| 当前配方 / 产品号 | 整数或字符串 | DB10.DBW6 | 变化时 | 匹配理想节拍 |
产量尽量读 PLC 内部的累计计数器,由采集端做差,而不是去捕捉一个只亮几十毫秒的“完成”脉冲——后者在秒级轮询下必然漏计。
常见 PLC 品牌用什么协议读数据
- 西门子 S7 系列:S7 通讯,TCP 端口 102;S7-1500 等新型号可用 OPC UA。S7-1200/1500 需在组态里允许 PUT/GET 访问,优化块访问的数据块按绝对地址读不到。详见西门子 PLC 接入。
- 三菱 FX / Q / iQ-R:MC 协议(SLMP),以太网口或加装以太网模块。详见三菱 PLC 接入。
- 欧姆龙:FINS 协议;较新的型号支持 EtherNet/IP。
- 多数国产及其他品牌 PLC:普遍支持 Modbus TCP 或 Modbus RTU。
动手之前,最要紧的是向设备厂商要到变量表或程序注释。没有地址说明,协议通了也不知道该读哪里。
PLC 没有空余网口或不让读,怎么办
按代价从小到大:
- 网口被触摸屏占用:加一台工业交换机,PLC、触摸屏、采集网关各接一口。要确认 PLC 的连接数资源够用。
- 只有串口:通过 RS-485/RS-232 走 Modbus RTU 或品牌专用串口协议,或加装以太网通讯模块。
- 厂商加密、不给地址、保修期内不让碰:放弃读 PLC,改从三色灯与信号采集旁路取状态和计数,数据少一些,但不依赖任何人配合。
凡是进电气柜接线、加模块的操作,应断电并由持证电工完成,不改动安全回路。
常见问题
读 PLC 数据会不会影响设备运行或保修?
只读、低频的通讯一般不影响控制逻辑,但会占用 PLC 的通讯连接和少量扫描时间。保修是合同问题而不是技术问题,保修期内的设备应先书面征得设备厂商同意,或者直接选用不接触控制器的信号采集方式。
PLC 程序加了密,还能采集数据吗?
多数情况下能。程序加密保护的是逻辑代码不被查看和修改,不一定禁止通讯读取数据区。真正的障碍是不知道地址,需要设备厂商提供变量表。如果连通讯访问也被关闭且厂商不配合,就改用外部信号采集。
PLC 采集的扫描周期设多少合适?
用于 OEE 的状态和计数,1 秒左右足够,几秒的短停机也能记到。需要注意的是采集周期必须短于你想捕捉的最短事件,瞬时脉冲类信号应改读 PLC 内部的累计值。工艺曲线类数据另当别论,需要单独评估通讯负荷。
最近更新:2026-09-21 · 出版:工厂数字化编辑部(TEEPTRAK)
微信:Teeptrak-SZ