Skip to main content

SA0004:输出上的多写访问

检测写入多个位置的输出。

理由:当输出写入代码的不同位置时,可维护性会降低。然后不确定哪个写访问是在该过程中实际产生影响的访问。好的做法是计算辅助变量中的输出变量,并在循环结束时将计算值分配到一个位置。

重要性:高

PLCopen规则:CP12

提示

当输出变量 (VAR_IN_OUT) 被写入不同的分支 IFCASE 陈述。

杂注不能禁用此规则。

17. 例子
VAR_GLOBAL
    g_xVar AT %QX0.0 : BOOL ;
    g_iTest AT %QW0 : INT ;
END_VAR
PROGRAM PLC_PRG
IF g_iCondition < INT#0 THEN
    g_xVar := TRUE;
    g_iTest := INT#12;
END_IF

CASE g_iCondition OF
    INT#1:
        g_xVar := FALSE;
    INT#2:
        g_iTest := INT#11;
    ELSE
        g_xVar := TRUE;
        g_iTest := INT#9;
END_CASE

输出在 留言 看法:

  • sa_icon_message.png SA0004:对输出“%QX0.0”进行多次写入访问

  • sa_icon_message.png SA0004:对输出“%QW0”进行多次写访问