Cx程序员 - 结构化文本,数组分配

时间:2016-12-24 11:24:56

标签: arrays plc structured-text

我正在学习结构化文本,使用欧姆龙软件Cx-programmer进行编程。

我环顾四周但是找不到将多个元素分配给数组的方法, 我试过这个解决方案,但它不起作用,

这是Arrays声明(内部变量):

Name              Data type   Initial value
SenCheck_Array      BOOL[8]     FALSE       
SEN                 INT[2]       0          

INT数组:

     SEN[1...2]:=[1,2];

BOOL数组:

      SenCheck_Array[0...7] := [ S_LF,S_LS,S_LH2O,S_LO,S_Col ,S_BAR,S_TAP,S_ET ] ;

错误是一样的:

ERROR:  Missing ]

我成功地单独分配了元素,但我需要将它们分配到一行。

任何帮助都是相关的:)

P.S:我正在使用cx程序员教育版。

Screen shot link:

1 个答案:

答案 0 :(得分:0)

编辑:此示例(显示SCL块代码的声明部分)仅对西门子PLC有效。

要初始化数组,必须用不带方括号的逗号分隔值:

CONST
    // Constants
    S_LF := TRUE;
    S_LS := FALSE;
    S_LH2O := FALSE;
    S_LO := FALSE;
    S_Col := TRUE;
    S_BAR := TRUE;
    S_TAP := TRUE;
    S_ET  := TRUE;
END_CONST

VAR
    // Static Variables
    SEN: ARRAY[1..2] OF INT := 1, 2;
    SenCheck_Array: ARRAY[0..7] OF BOOL := S_LF, S_LS, S_LH2O, S_LO, S_Col , S_BAR, S_TAP, S_ET;
END_VAR