アクションウィジェット

このセクションでは、アクションウィジェットについて説明します。

アクションウィジェットは、モデル設定を変更できるウィジェットのグループです。ウィジェットの機能は、埋め込まれたPythonスクリプトによって定義されます。

スクリプトの作成を開始する最も簡単な方法は、コードエディターウィンドウの左側に初期配置されているAPIウィザードを使用することです(図1コードエディターを開いてAPIウィザードを使用するには、任意のマクロウィジェットを右クリックし、コンテキストメニューから「マクロコードの編集」を選択します。

ウィザードでは、アクションは標準のモデル設定と同様の方法でグラフィカルに定義され、ボタンをクリックするだけで適切な API 関数呼び出しに変換されます。

このグループでは、いくつかのウィジェットが利用可能です。

  1. ボタン- ボタンをクリックするたびにスクリプトの実行が開始されます。
  2. テキストボックス- テキストボックスに新しい値を入力するとマクロの実行が開始されます。入力された値は、マクロスクリプトの入力変数として使用できます。
  3. コンボボックス- 新しいコンボボックスの値が選択されるとマクロの実行が開始されます。選択された値はマクロスクリプトで使用でき、ユーザーはコンボボックスで使用可能な値を指定することもできます。
  4. チェックボックス- 小さなチェックボックスフィールドのチェックの有無によってマクロの実行が開始されます。チェックボックスの状態は、マクロスクリプトの入力変数として使用できます。
  5. スライダーノブ- スライダーを動かすとマクロの実行が開始されます。スライダー/ノブの値は、マクロスクリプト内で入力変数として使用できます。
  6. マクロ – これは 4 つのイベント ハンドラーを持つ特別なアクション ウィジェットで、そのコードは 4 つの異なる方法で実行されます。
    • 開始時- このハンドラーで指定されたコードは、パネル初期化スクリプトの実行後、シミュレーションの開始時に実行されます。
    • クリック時- このハンドラーで指定されたコードは、ボタン アクション ウィジェットと同様に、ボタンのクリック時に実行されます。
    • タイマー時- このハンドラーで指定されたコードは、指定された HIL SCADA タイムスロットのタイマー イベントで実行されます。
    • 停止時- シミュレーションが停止した後、このハンドラーで指定されたコードが実行されます。
    注意:少なくとも 1 つのハンドラーがアクティブである必要があります。
    注意: On Start ハンドラー内で指定された変数は、他の 2 つのハンドラーでも使用できます。

他のすべてのアクション ウィジェットには、マクロウィジェットに似た 3 つの特別なハンドラーを設定できます。

  • 開始時 ハンドラー - このハンドラーで指定されたコードは、パネル初期化スクリプトの実行後、シミュレーションの開始時に実行されます。
    注: On Startハンドラは、基本設定→マクロコードプロパティセクションで指定されたコードと同じコードを使用できます。使用するコードは、「コードソース」コンボボックスで変更できます。
  • オンタイマーハンドラー - このハンドラーで指定されたコードは 1000 ミリ秒ごとに定期的に実行されます。
  • 停止中 - このハンドラーで指定されたコードは、シミュレーションが停止した後に実行されます。
    注:追加のハンドラーを使用すると、ウィジェットの初期値の設定(On Startハンドラー)、ウィジェットの値を定期的に変更する(On Timerハンドラー)、ウィジェットの値をリセットする(On Stopハンドラー)こともできます。値は、ハンドラースクリプト内でwidgetValue変数を設定することで変更されます。
1マクロ/式スクリプトの定義と編集のためのシンプルなコードエディター
注:マクロスクリプトは埋め込み型であるため、HIL API関数の一部のみを使用できます。その他のTyphoon API(回路図エディタAPIなど)はサポートされていないため、マクロスクリプトでは使用しないでください。