大家好,最近在自学PLC,关于PLC扫描工作方式遇到了一些问题没想明白,特来社区求教,还望各位社区前辈赐教!
5 I) |/ ], A2 [; |% BPLC的扫描工作方式:输入扫描→程序执行→输出刷新,问题出在对程序执行时的疑惑,具体如下:7 h2 |' E3 R/ ~8 X; r! V
首先看梯形图:6 ?! w! G o v: L9 n- N
3 p7 t0 O4 Y: s( d# T1、我图片中的梯形图,假设程序段4在某一扫描周期时触点接通,使得M0.0线圈得电,此时T37开始计时1秒,同时M0.0常开触点闭合,实现自锁;
) `" c: g* E( x, h9 G3 M. k2、当T37计时未满1s时(在这1s内会经历n个扫描周期),程序段5的T37常开触点不会闭合,因此M0.1没有得电;
5 K" f4 h7 t+ O; c3、当T37计时满1s时(此时处于第k个扫描周期),T37常开触点闭合,M0.1得电: E' f! F" X! A& g. G d- _
那么问题来了:
# ]5 O+ B% b7 G4 Y: Z, M/ kPLC是按从上到下的顺序依次执行程序的,在第k个扫描周期时,先执行程序段4,此时M0.0是得电的。然后执行程序段5,T37常开触点闭合,M0.1得电,但是程序段4中串联了一个M0.1的常闭触点,此时PLC是否会回过头去把M0.1常闭触点断开,使得M0.0断电,当这一个扫描周期执行完的时候,M0.0的状态应该为0,M0.1的状态应该为1。(或者是程序继续往下执行,当这一扫描周期执行完的时候,M0.0的状态为1,M0.1的状态也为1,等下一个扫描周期,即第k+1个扫描周期的时候,M0.1常闭触点断开,M0.0失电,当第K+1个扫描周期执行完的时候,M0.0状态为0,M0.1状态为1)/ z l6 d2 b' D0 B! p: K" b
% |. t3 V( B! N5 T: E( c; G
; S9 H8 o( G2 {, M
+ e' A" F; P8 h& F$ p6 ]7 X
$ ?1 q2 u, ]- {% `" r4 A补充内容 (2021-6-3 08:59):9 o) O! @* D4 Q6 K
在网上找到了一个比较详细的说法,按照该说法,我括号里面的分析才是对的。http://www.plc100.com/jichu/yuanli/yunxing.htm |