IF IP_emo:=FALSE THEN
State:= OFF_Mode;
ELSE
State :=OFF AND IP_emo:=TRUE AND start_Btn:=TRUE OR start_Btn:=False;
State:= Monitor_Mode;
END_IF
我不知道为什么我得到错误4024在此代码需要a := before "THEN"
。有人能帮我吗?错误4024结构化文本编程
IF IP_emo:=FALSE THEN
State:= OFF_Mode;
ELSE
State :=OFF AND IP_emo:=TRUE AND start_Btn:=TRUE OR start_Btn:=False;
State:= Monitor_Mode;
END_IF
我不知道为什么我得到错误4024在此代码需要a := before "THEN"
。有人能帮我吗?错误4024结构化文本编程
您没有提及您使用的PLC或工具,错误4024的含义以及它来自哪条线。这使得回答你的问题有点难。有些人可能会说,这个问题有资格在这个帐户上下降。
我对你的例子的格式有点困惑。请格式化为代码(如果您使用4个空格缩进,则自动完成),并且它将更易于阅读和回答。
我尝试过下面的格式,并对此有一些评论。
我希望有帮助。 :-)
IF IP_emo:=FALSE THEN
State:= OFF_Mode;
ELSE
State :=OFF AND IP_emo:=TRUE AND start_Btn:=TRUE OR start_Btn:=FALSE;
State:= Monitor_Mode;
END_IF
免责声明:不知道你使用的是什么PLC或什么错误4024种手段,但如果你使用typcicaly IEC 61131 PLC语言(其中大部分PLC是)我可以在你的代码的格式发表意见。
首先,:=
我是一个赋值运算符。 =
是比较运算符。因此,在您if
statment你会用
IF IP_emo = FALSE THEN
或可替代(取决于你使用的PLC。通常所有IEC 61131语言都是一样的,虽然)
IF NOT IP_emo THEN
其次,AND
和OR
是比较所以你不能让他们与assingment操作员。你可以这样做
ELSE
State :=OFF;
IP_emo:=TRUE;
start_Btn:=TRUE;
start_Btn:=FALSE;
State:= Monitor_Mode;
END_IF
也许
ELSE
State :=OFF;
IF IP_emo=TRUE AND start_Btn=TRUE AND (start_Btn=TRUE OR start_Btn=FALSE) THEN
State:= Monitor_Mode;
END_IF
END_IF
不完全知道你正在尝试做的。