我目前正在CODESYS中编程/模拟一个小型工厂。我有几个输出(对应于引擎),我需要测试几次,所以我想创建一个条件,结合这个测试,所以我不需要写整个条件。例如,我的条件是验证是否
A=TRUE和B=TRUE,C=TRUE和D=TRUE
我可以创建像“验证引擎”这样的条件来每次使用吗?
谢谢
发布于 2018-09-19 05:42:24
做这件事有很多方法(如果我正确理解你的话)。
例如,这里有两种方法:
1.创建一个具有条件结果的变量并使用该变量。您必须在开始时分配变量,然后可以使用变量而不是长代码。
VAR
EnginesOK : BOOL;
END_VAR
//Check engines
EnginesOK := (A = TRUE AND B = TRUE AND C = TRUE AND D = TRUE);
//.. Later ..
IF EnginesOK THEN
//Do something
END_IF2.创建一个函数,例如,包含检查并将状态作为BOOL返回的F_VerifyEngines。注意:在本例中,A、B、C和D需要是全局变量。您还可以将它们作为函数的参数传递。
FUNCTION F_VerifyEngines : BOOL
VAR_INPUT
//Add A,B,C,D here if needed
END_VAR
VAR
END_VAR
//Return the result
F_VerifyEngines := (A = TRUE AND B = TRUE AND C = TRUE AND D = TRUE); 然后,您可以在代码中使用该函数:
IF F_VerifyEngines() THEN
//Do something
END_IF第二条路可能是你想的那条路。
顺便说一句,没有必要编写A = TRUE AND B = TRUE AND C = TRUE AND D = TRUE,在我看来,当您使用A AND B AND C AND D时,阅读就更清楚了。
https://stackoverflow.com/questions/52394076
复制相似问题