Skip to main content

要素:関連付け

アソシエーションは、認識を表すUML関係です。認識要素は、ポインターとして別の要素を指します。

IECコードでは、これは POINTER TO また REFERENCE TO ステートメント(たとえば、 ptrFb_A: POINTER TO Fb_A; また ptrFb_B: REFERENCE TO Fb_B;)。だから両方 アソシエーション(POINTER)協会(参考) 要素はUMLエディターで使用できます。カーディナリティは、関係が発生する頻度を示します。 IECコードでは、これはARRAY [..]に対応します。

1より大きいカーディナリティーを指定すると、システムは次のように宣言します。

ptrMulti_B : ARRAY[1..8] OF POINTER TO Fb_B;

アソシエーションは、クラスまたはグローバル変数リストからクラスを指します(タイプ: FUNCTION_BLOCK)または DUT

_uml_img_assoziation.png

プロパティ

関係

関係タイプ

ルートを最適化する

このオプションを選択すると、関係矢印のルートが自動的に最適化されます。固定点は、開始要素の始点と終了要素の終点です。たとえば、終了要素を移動しても、矢印が終了要素を指すポイントは同じままです。このオプションの選択を解除すると、ルートは変更されません。関係要素がクラス図に手動で配置されるとすぐに、このオプションの選択が解除されます。

自動最適化が必要な場合は、このオプションを選択してください。

開始要素

関係要素が始まる要素の名前

終了要素

関係要素が指す要素の名前

識別子

のために 協会構成 関係のみ

関係要素の名前

ユーザー入力

アクション

説明

  1. を選択します 協会 _uml_icon_tool_association.png 道具。

  2. クラスまたはGVLをクリックします。

  3. 関連付ける必要のある要素をクリックします。

    The 変数宣言 ダイアログが開きます。

  4. 名前を指定してクリックします わかった ダイアログを終了します。

要素間に関連付けが描画されます。

IECコードは、既存の要素の宣言部分を拡張することによって自動的に適合されます。例: var_A : POINTER TO Fb_A

  1. を選択 協会 _uml_icon_tool_association.png 道具。

  2. クラスまたはGVLを選択します。

  3. 図の空白の領域をクリックします。

    The POUを追加する ダイアログが開きます。

  4. 名前を指定し、設定を構成して、をクリックします 追加 ダイアログを終了します。

クラスまたはGVLから新しいクラスを指す関連付けが作成されます。

IECコードは、既存の要素の宣言部分を拡張することによって自動的に適合されます。例: varClass_1 : POINTER TO Class_1

  1. を選択 選択 _uml_tool_selection.png 道具。

  2. 関連付けをクリックします。

  3. 行を移動します。

行が変更されます。 The ルーティングを最適化する プロパティは自動的に選択解除されます。

  1. を選択 選択 _uml_tool_selection.png 道具。

  2. 関連付けをクリックします。

  3. を押します デル キーまたはクリック 消去 コンテキストメニューで。

関連付けは、ダイアグラムとIECコードから削除されます。 The POINTER TO ステートメントは、要素の宣言部分から削除されます。

15. クラスの関連付け

Fb_C 認識します Fb_BFb_A (単一および複数)。

_uml_img_example_assoziation_class.png
FUNCTION_BLOCK Fb_C
VAR
    VarFb_A : POINTER TO Fb_A;
    VarMultiFb_A: ARRAY [1..10] OF POINTER TO Fb_A; (* Kardinalität 10 *)
END_VAR


16. データ構造の関連付け

Fb_C 認識します Dut_A

_uml_img_example_assoziation_dut.png
FUNCTION_BLOCK Fb_C
VAR
    pDut_A: POINTER TO Dut_A;
END_VAR


17. GVLの関連付け

GVL 認識します POU_2

_uml_img_example_assoziation_gvl.png
VAR_GLOBAL
    g_iCounter : INT;
    g_a : BOOL;
    pPOU_2: POINTER TO POU_2;
END_VAR