Skip to main content

ルール

  • 識別子にスペースや特殊文字を含めることはできません。

  • アンダースコアが認識されます。

    例えば、 A_BCDAB_CD 2つの異なる識別子として扱われます。

  • 複数の連続したアンダースコアは許可されていません。

  • 大文字と小文字の区別はありません。

    例えば、 VAR1var1 同じ変数を参照してください。

  • 識別子の長さには制限がありません。

を適用することをお勧めします。 推奨事項 変数宣言に関して特に考慮する必要がある項目に加えて。こうすることで、名前を割り当てるときに可能な限り最高の調和が得られます。

  • 識別子はローカルで2回宣言してはなりません。

  • 識別子は、グローバルに複数回使用できます。

    ローカル変数がグローバル変数と同じ名前である場合、ローカル変数はPOU内で優先されます。

  • 識別子をキーワードと同一にすることはできません。

    例:スコープ VAR_Global

  • グローバル変数リストで宣言された変数は、別のGVLで定義された変数と同じ名前を持つことができます。

    CODESYS 変数の名前空間またはスコープの標準を拡張する機能を提供します。

    • グローバル名前空間演算子

      ドットで始まるインスタンスパスは、常にグローバル名前空間を開きます。ローカル変数がある場合(たとえば、 ivar)グローバル変数と同じ名前の場合、グローバル変数を次のように参照します。 .ivar

    • グローバル変数リストの名前は、インクルード変数の名前空間を一意に定義できます。したがって、異なるグローバル変数リストで同じ名前の変数を宣言し、リスト名を前に付けることで一意に参照できます。

      例: globlist1.ivar := globlist2.ivar; (* ivar from GVL globlist2 is copied to ivar in GVL globlist1 *)

    • プロジェクトに含まれるライブラリのグローバル変数リストで定義されている変数は、次の構文に従って一意にアドレス指定できます。

      <name scope library>.< GVL name>.<variable name>

      例: globlist1.ivar := lib1.globlist1.ivar (* ivar from GVL globlist1 in library lib1 is copied to ivar in GVL globlist1 *)

  • ライブラリを挿入するときは、ライブラリマネージャを使用して名前空間も定義します。このようにして、ライブラリPOUまたはライブラリ変数への一意の参照を作成できます。 <namespace library >.<POU name\|variable name>。ライブラリがネストされている場合は、連続しているすべてのライブラリの名前空間を参照する必要があることに注意してください。

    例: Lib1 によって参照されます Lib0、次にPOU funcLib1 によって対処されます Lib0.Lib1.funivar := Lib0.Lib1.fun(4, 5); (* return value from func is copied to variable ivar in the project *)

バックティック識別子

バッククォートを使用すると、特殊文字など、通常は識別子で許可されない文字を識別子で使用することもできます。アキュートアクセント文字はバッククォートに使用されます。 ´ (ユニコード:U+02CA)

同じ識別子を使用できるようにするために、バッククォートの使用をお勧めします。 CODESYS 他のプログラミング言語や回路図などのドキュメントと同様です。

2 つのバッククォートの間には、改行やその他のバッククォートを除く任意の文字を使用できます。キーワードは、バッククォート間の識別子としても使用できます。

例:

´Variable+9´

´INT´

バッククォートは各識別子の一部であるため、 var1 そして ´var1´ は 2 つの異なる識別子です。

304.
PROGRAM PLC_PRG
VAR
    var1 : INT;
    ´var1´: INT;
END_VAR

var1 := var1 + 1;
´var1´ := 12;