Skip to main content

ステップ 4: 「ライト」サブモジュールの作成

スイッチの場合と同様に (Switch) とシンプルなスイッチ (SwitchSimple) モジュールには必須です Light「モジュール宣言」 Light、ファンクションブロック Light そしてインターフェース ILight 作成されます。モジュールはファンクション ブロックによって実装され、ファンクション ブロックによってインターフェイスが作成されます。 ILight 実装されました。

モジュールへ Light モジュールの下にある Room 追加できるようにするには、次のモジュール宣言を追加します。Room セクション付き Slots 拡大される。このセクションはサブセクションになります Slot_Multi どちらかを宣言します Lights 呼び出されるモジュールとそのタイプのモジュール Light 対応できます。部屋に追加する必要がある、または追加できるライトの数は、パラメータによって決まります。 Cardinality 定義されています(この例ではライトが 1 ~ 3 つの間)。さらに、次の 2 つの変数を定義する必要があります。 Variable (pLights、部屋の照明モジュールの機能ブロック インスタンスを記述します)、および Var_Count (uiNumberOfLights、部屋の照明の数を表します)。

図 9. セクションの定義 Slots
セクションの定義 Slots


変数 pLights そして uiNumberOfLights 「Lights」モジュールの機能ブロックに追加する必要があります。 uiNumberOfLights ある UINT そして pLights タイプの POINTER TO ILight は。この定義では、モジュールのみをスロットに挿入できます。 Lights 追加される機能ブロックにはインターフェースも含まれます ILight 実装する。

図 10. ファンクションブロックでの宣言 Room
ファンクションブロックでの宣言 Room


モジュールと同じスロットコンセプト Room「使用されていたものはモジュールに使用されるようになりました」 Light 使用済み。したがって、次の宣言は、 Light 1つのスロット Switch, そのため、このスロットはマルチスロットではなく、シンプルなスロットです。モジュールの追加パラメータ Light 調光器の速度です rSpeed そして最大の明るさ uiMaxValue。最後に、関連する光の明るさを表す出力を定義する必要があります。すべてのパラメータ、スロット、出力もモジュールの機能ブロックに変数として含める必要があります。 Light 追加されます。

図 11. モジュールの宣言 Light
モジュールの宣言 Light


図 12. ファンクションブロックの宣言 Light
ファンクションブロックの宣言 Light


図 13. テストリストと画像集
テストリストと画像集


ステップ 5: 「Light simple」サブモジュールの作成