FUNCTION TM1 : VOID
VAR_TEMP
moto1:BOOL;
moto2:BOOL;
END_VAR
BEGIN
IF TEMP1<100 THEN;
moto1:=FALSE;
END_IF;
IF TEMP1>105 OR moto1 THEN;
moto1:=TRUE;
END_IF;
IF TEMP2<100 THEN;
moto2:=FALSE;
END_IF;
IF TEMP2>105 OR moto2 THEN;
moto2:=TRUE;
END_IF;
IF moto1 OR moto2 THEN;
TEMPHIGH:=TRUE;
ELSE;
TEMPHIGH:=FALSE;
END_IF;
作用是当 temp1或 temp2大于105时 TEMPHIGH置位,只有低于100时才复位。
用s7 v5.5 模拟运行无问题,但是将程序用v5.4 编译后下载到plc中执行结果变为大于105置位,低于或等于105后就复位了。
是什么原因呢?