新增:当选择一个运算块和执行命令时,点击并行插入触点时,将添加一条带有单个垂直线的并行分支。这表明已实施短路评估(SCE)。如果特定条件为TRUE,则SCE允许跳过具有布尔输出的功能块的执行。该条件可以在LD编辑器中显示为与功能块分支并行连接的分支。短路状态由该分支中一个或多个平行或顺序互连的触点定义。
功能原理:
首先处理不包含功能块的分支如果CODESYS为这些分支之一检测到值TRUE,则不会在并行分支中调用功能块。在这种情况下,功能块输入的值将直接发送到输出。如果CODESYS对SCE条件确定为FALSE,则将调用该框,并传递其处理的布尔结果。如果所有分支都包含功能块,则从上到下对其进行分析,并对其输出进行逻辑或运算。如果没有带功能块的分支,则执行常规的或运算。
.例如
功能块实例x1(TON)具有布尔输入和布尔输出。如果并行行分支中的条件确定为TRUE,则跳过x1的执行。条件值由连接触点cond1,cond2和cond3的OR和AND操作得出。
如果来自触点cond1,cond2和cond3的连接的条件值为FALSE,则执行x1。
(1)从双重垂直连接中指示它是受SCE约束的构造。
(2)从单个垂直连接指示它是OR构造。
给定的LD示例在下面显示为ST代码。 P_IN和P_OUT是平行线分支的输入(分割点)和输出(统一点)的布尔值。
P_IN := b1 AND b2;
IF ((P_IN AND cond1) AND (cond2 OR cond3)) THEN
P_OUT := P_IN;
ELSE
x1(IN := P_IN, PT := {p 10}t#2s);
tElapsed := x1.ET;
P_OUT := x1.Q;
END_IF
bRes := P_OUT AND b3;