|
很多人上来就怀疑线没接好、模块坏了、程序写错了,折腾半天,其实绝大多数都是 PLC 扫描周期在 “搞鬼”。 想要真正解决这类问题,不用死记硬背复杂理论,先把 PLC 的执行流程吃透就行。 PLC 的工作流程大致可以分成这几步:内部处理、通信服务、输入处理、程序处理、输出处理,周而复始循环执行。 1.内部处理:PLC 自己做自检、初始化、看门狗检测,保证系统不跑飞。 3.输入处理:一次性把所有外部输入信号读到输入映像区,这一步完成后,整个扫描周期内输入状态就固定了,不会中途变。 4.程序处理:严格按照从上到下、从左到右逐行扫描,这是 PLC 最核心的执行规则。 5.输出处理:整段程序扫完后,统一把输出映像区的状态刷新到实际输出点,驱动负载动作。 整个循环走一遍,就是一个扫描周期。像三菱 FX3U 这类常用 PLC,典型扫描周期在 10ms 左右,程序越长,扫描时间自然也会跟着变长。 很多人不理解:为什么按钮按下了,Y 灯不会立刻亮? 我们用一个最简单的例子说清楚。 按钮 X0 刚按下时,信号不会瞬间进入输入映像区,会有几毫秒的响应时间。 进入第一个扫描周期: PLC 读到 X0 还是断开,程序扫下来,M0 不导通,Y0 自然也不输出。 等到第二个扫描周期: 输入映像区终于刷新到 X0 接通,程序执行到 X0 常开点导通,M0 线圈得电。但 Y0 线圈在 M0 前面,这一轮依旧不输出。 直到第三个扫描周期: M0 状态从上一轮保持下来,程序一上来就导通 M0 常开,Y0 线圈条件满足,等程序全部扫完,输出刷新,指示灯才真正亮起来。 这么一算,从按钮按下到输出动作,中间要经过输入响应延时 + 两轮扫描周期。按 10ms 一个周期粗略算,差不多要 30ms 左右才有动作。 这就是很多现场 “逻辑没错、动作滞后” 的根本原因。 同理,寄存器赋值异常、输出忽有忽无、条件互锁不正常,也大多和扫描顺序有关。 比如某段条件在程序前半段断开,后半段才满足,前半段的线圈自然不会跟着立即动作。 真正懂 PLC 的工程师,排查异常不会盲目改程序,而是先看扫描顺序: 输入什么时候刷新、程序哪一行先执行、输出什么时候集中刷新,想明白这三点,大部分奇怪现象都能瞬间找到根源。 以后再遇到 Y 点不输出、数值不对、动作延迟,别先怀疑硬件,先从扫描周期入手分析,往往能少走半天弯路。
|

电工电气学习网 ( )
GMT+8, 2026-5-15 12:17
Powered by © 2011-2026 www.dgdqw.com 版权所有 免责声明