PLC 出现程序报错、运行不稳定、输出失控、轴 / 设备不同步,是自动化现场最常见的一类故障,通常不是单一原因,而是程序逻辑、硬件接线、干扰、通讯、参数设置共同导致的。
一、先快速判断:是程序问题还是硬件 / 外部问题
PLC 是否报故障灯
ERR/ALM 红灯常亮 / 闪烁 → 优先查硬件、电源、模块故障
只运行异常但无报警 → 多为逻辑、联锁、延时、复位没写好
手动 / 自动是否都异常
手动点动正常,自动异常 → 程序逻辑、步序、联锁、标志位问题
手动也乱跳、误动作 → 硬件、干扰、接线、电源问题
是否热机后才出问题
刚上电正常,运行一段时间异常 → 散热、电源压降、模块老化、触点氧化
二、程序错误 & 逻辑 bug 导致失控、不同步
1. 最常见程序问题
自锁 / 互锁逻辑错误启动、停止、急停、复位逻辑冲突,导致输出反复吸合。
置位 (SET)/ 复位 (RST) 不配对只置位没复位,或多处重复复位,造成标志位卡死。
定时器 / 计数器溢出、重复调用同一个定时器在多处程序里被触发,计时乱跳。
步进顺控(SFC/SCR)步序错乱转移条件没写死,多步同时满足 → 动作不同步、乱跑。
未做边沿检测直接用常开点驱动输出 → 信号抖动导致频繁通断。
全局变量 / 中间继电器冲突同一个 M、D 地址在多处被改写,数据打架。
快速处理
在线监控,看输出 Y、标志位 M、数据 D是否乱跳
搜索重复地址:同一地址是否多处赋值
检查急停、安全门、复位是否被程序意外覆盖
临时屏蔽复杂逻辑,分段测试定位故障段
三、硬件与接线导致不稳定、失控
1. 电源问题(占比极高)
24V 电源功率不足、压降大、纹波大
传感器、电磁阀、伺服共用一个开关电源
接地不良,零线 / 地线混接现象:模块乱报、输入误触发、通讯闪断
2. 输入信号抖动 / 干扰
接近开关、光电、行程开关劣质或老化
线太长没屏蔽,与动力线并行
没有加软件延时滤波 / 硬件 RC 滤波现象:信号反复跳变,程序误动作
3. 输出侧问题
继电器触点粘连、烧蚀
电磁阀线圈反电势无续流二极管,击穿 PLC 输出点
负载过大,用 PLC 直接带大电流电磁阀 / 接触器现象:输出不受控、一直吸合、烧点
四、通讯导致不同步、失控
如果涉及伺服、变频器、机器人、远程 IO、多 PLC 联动:
Profinet、Modbus、CC-link、以太网通讯丢包、延时
通讯刷新周期设置过长,指令下发不及时
从站掉站再上线后,数据未复位
轴同步控制:电子齿轮、同步指令、轴参数不匹配
现象:动作滞后、位置飘、不同步、偶尔冲出去
五、干扰导致的玄学故障(最容易被忽略)
典型特征:
时而正常时而异常
电机一启动就乱
附近焊机、变频器一开就报错
排查:
强弱电分开布线,信号线用屏蔽线
伺服 / 变频器电机线单独走线
可靠接地,单点接地
开关电源加滤波器,24V 负极接地
通讯网线用工业屏蔽双绞线
六、现场快速急救方案(立刻能做)
全程序复位一次急停→断电→上电→复位,看是否恢复
单独跑最简程序只写一个简单逻辑,测试 PLC 本体是否正常
断开外部负载只接 PLC,不接电磁阀、电机,判断是否外部干扰
在线监控抓现场看异常瞬间哪个输入 / 输出 / 寄存器突变
备份程序后,重新下载一遍有时程序损坏、存储区异常会导致莫名错误。

