请教各位专家,最近一台水泵在到达设定的运行时间后,水泵没有自动停泵,我到现场看了,水泵的实际运行时间已大于设定值,用了好几年的程序,从未出现过这种现象,我检查了一下程序,主要相关程序段如下,我觉得,可能是FC1比较指令后的上升沿指令问题,在OB1扫描过程中,因为JNB跳转指令的执行,导致在某种情况下,没有捕捉到FC1中的上升沿。请问是不是这样的呢?还请赐教。上升沿、下降沿指令在哪些情况下不能用呢?
OB1组织块中的程序:(CPU属性中勾选了MB0字节为时钟存储器,M0.5的周期为1S)
A M 0.5
FP M 1.0
A M 1.0
JNB cas1
CALL FC1
cas1: NOP 0
CALL FC2
FC1中的程序:(水泵控制)
A(
L DB45.DBD 20 //水泵实际运行时间
L DB45.DBD 16 //水泵设定时间
>=R
)
FP M 1008.2
R Q 0.0 //水泵