DNP3 アウトステーション

回路図エディタの DNP3 Outstation コンポーネントの説明。

コンポーネントが無視されます:このコンポーネントはTyphoonSimでは無視されます。TyphoonSimシミュレーション中、このコンポーネントへの入力は破棄され、コンポーネントからの出力はゼロになります。

DNP3 アウトステーション

DNP3は、主に電力・水道業界で使用されているオープンな通信プロトコルセットです。SCADAシステムにおいて、SCADAマスターとRTUおよびIED間の通信に主に使用されます。DNP3は、ポイントツーポイントまたはマルチドロップトポロジーのマスターとアウトステーションを接続できます。DNP3はイベント指向であるため、マスターはアウトステーションのすべてのデータポイントを常にスキャンする必要はありません。DNP3には、データ取得のための2つの主要なメカニズムがあります。

  • イベントポーリング - マスターは定期的に変更されたデータのみをアウトステーションに問い合わせます。データは異なるクラスに分類でき、クラスごとに独自のスキャン間隔を設定できます。
  • 非要求応答 – アウトステーションは変更されたデータを自動的にマスターに報告し、マスターはそれを確認します。このモードは、アウトステーションのデータポイントに変更がない場合、ネットワークが沈黙するため、「静止モード」と呼ばれることもあります。

Typhoon HILツールチェーンのDNP3 Outstationコンポーネント

Typhoon HILツールチェーンでは、DNP3アウトステーションのみが利用可能です。このプロトコルは、以下のTyphoon HILデバイスでサポートされています: HIL402、HIL101、HIL404、HIL602+、HIL604、HIL506、およびHIL606

DNP3 アウトステーション コンポーネントには、図 1に示すように 3 つの入力と 2 つの出力があります。

1 DNP3アウトステーションコンポーネント

DNP3 コンポーネント ダイアログは、構成 ( [構成] タブ)、リンク ([リンク] タブ)、アウトステーション ([アウトステーション] タブ)、およびデータベース タブ ([データベース] タブ) で構成されています。

2 DNP3アウトステーション構成タブウィンドウ

各 DNP3 アウトステーションの構成は、モデル初期化スクリプト (名前空間から)、ファイルから、またはコンポーネントのグラフィカル ダイアログ (ダイアログから) からインポートできます。これらは、[構成] タブの上部で選択できます。モデル初期化スクリプトからの構成例が、構成辞書で必要な各キーの簡単な説明とともに表示されます。[構成] タブの左下隅の[コンポーネント プロパティ]グループ ボックスには、構成の名前とコンポーネントの実行速度を入力するための行編集フィールドがあります。[構成] タブの右下隅では、構成ファイルをインポートしたり、現在の構成をファイルにエクスポートしたりできます。

3 DNP3アウトステーションリンクタブウィンドウ

各 DNP3 デバイスは、チャネルを介して他のデバイスと通信します。2 つのデバイスが相互に通信するには、同じチャネル上になければなりません。一意のチャネルは、デバイスに使用される IP アドレスとポートの組み合わせとして定義されます。デバイスの IP アドレスはエイリアス化されているため、単一のデバイスの場合、異なるポートごとにチャネルが自動的に作成されます。各 DNP3 アウトステーションには、リモート アドレスとローカル アドレスを定義する必要があります。リモート アドレスは、アウトステーションが報告する DNP3 マスターのアドレスです。ローカル アドレスは、アウトステーションのアドレスです。同じチャネル上の 2 つの DNP3 アウトステーションは、同じローカル アドレスを持つことはできませんが、同じリモート (マスター) アドレスを持つことはできます。リモート アドレスとローカル アドレスには、0 から 65530 までの値を指定できます。アドレスとポートの設定は、コンポーネントの [リンク] タブ、または構成ディクショナリの [link] キーで使用できます。

4 DNP3 OutstationのOutstationタブウィンドウ

これらの設定は、非請求応答、さまざまなタイムアウトと再試行期間、各データ ポイントのイベントの最大数 (イベント バッファ サイズ)、および各アウトステーションのサンプル期間などのアウトステーションの動作を定義します。

5 DNP3アウトステーションデータベースタブウィンドウ

データベースタブには、各データ型ごとに6つのサブタブがあります。現在、6つのデータ(オブジェクト)型がサポートされています。入力データ型はバイナリ、ダブルビットバイナリ、アナログです。出力データ型は、バイナリ出力ステータス(制御リレー出力ブロック(CROB)のステータス)、アナログ出力ステータス、オクテット文字列です。

データベースタブの左下には、現在のデータ型に要素を追加するための「要素を追加」ボタンがあります。データベースタブの右下には、現在のデータ型のすべてのエントリをクリアするための「すべてクリア」ボタンがあります。各データポイントの右端には、そのデータポイントの削除ボタンがあります。各データ型には、インデックス、クラス、スタティック、イベント変動の4つの固定プロパティがあります。アナログおよびアナログ出力ステータスデータ型には、デッドバンドプロパティが追加されています。バイナリ出力ステータス、アナログ出力、オクテット文字列データ型には、初期値プロパティも定義されています。

インデックス– 各データ型には、そのデータ型内の各データポイントにインデックスプロパティが設定されます。各データ型は最大65,535個のデータポイントを持つことができます。

クラス– 各データ型にはクラスプロパティがあります。データポイントはクラス0、クラス1、クラス2、クラス3のいずれかに割り当てることができます。クラス0は静的データ(現在の値)に使用され、クラス1、2、3のデータポイントにはイベントデータ(以前の値)も含まれており、各データポイントに任意に割り当てることができます。

静的バリエーションとイベントバリエーション– 各データタイプには、静的バリエーションとイベントバリエーションのプロパティがあります。これらのバリエーションは、使用されるデータ(オブジェクト)タイプによって異なります。各データタイプで利用可能なバリエーションは、以下の表に示されています。

データ(オブジェクト)タイプ 静的バリエーション イベントのバリエーション
バイナリ入力
  • グループ 1 変数 1 – パック形式
  • グループ1 バリエーション2 – 旗付き
  • グループ2 ヴァージョン1 – 時間なし
  • グループ2 Var 2 – 絶対時間付き
  • グループ2 変法3 – 相対時間付き

2ビットバイナリ入力
  • グループ3 バリエーション2 – 旗付き

  • グループ4 ヴァージョン1 – 時間なし
  • グループ4 Var 2 – 絶対時間付き
  • グループ4 変法3 – 相対時間付き

アナログ入力
  • グループ30 変数1 – フラグ付き32ビット
  • グループ30 Var 2 – フラグ付き16ビット
  • グループ30 変数3 – フラグなし32ビット
  • グループ30 変数4 – フラグなし16ビット
  • グループ30 変数5 – フラグ付き単精度浮動小数点
  • グループ30 変数5 – フラグ付き倍精度浮動小数点
  • グループ32 変数1 – 時間なしの32ビット
  • グループ32 Var 2 – 時間なし16ビット
  • グループ32 変数3 – 時間付き32ビット
  • グループ32 Var 4 – 16ビット、時間付き
  • グループ32 変数5 – 時間なしの単精度浮動小数点
  • グループ32 変数6 – 時間なしの倍精度浮動小数点
  • グループ32 変数7 – 時間付き単精度浮動小数点数
  • グループ32 変数8 – 時間付き倍精度浮動小数点数

バイナリ出力ステータス
  • グループ10 Var 2 – フラグ付き出力ステータス

  • グループ11 Var 1 – 時間のない状態
  • グループ11 Var 2 – 時間によるステータス

アナログ出力ステータス
  • グループ40 Var 1 – フラグ付き32ビット
  • グループ40 Var 2 – フラグ付き16ビット
  • グループ40 変数3 – フラグ付き単精度浮動小数点
  • グループ40 変数4 – フラグ付き倍精度浮動小数点

  • グループ42 Var 1 – 時間なしの32ビット
  • グループ42 Var 2 – 16ビット(時間なし)
  • グループ42 Var 3 – 32ビット、時間付き
  • グループ42 Var 4 – 16ビット、時間付き
  • グループ42 変数5 – 時間なしの単精度浮動小数点
  • グループ42 変数6 – 時間なしの倍精度浮動小数点
  • グループ42 変数7 – 時間付き単精度浮動小数点数
  • グループ42 変数8 – 時間付き倍精度浮動小数点数

オクテット文字列
  • グループ 110 変種 1
  • グループ 111 変数 1

それぞれの静的およびイベントのバリエーションの詳細な説明については、DNP 組織の Web サイトで入手できる DNP3 ドキュメントを参照してください。

デッドバンド– 前述の通り、アナログ入力とアナログ出力ステータスにはデッドバンドプロパティがあります。デッドバンドは浮動小数点値で、急激に変化する値をフィルターするために使用されます。例えば、デッドバンド値が0.5に設定され、データポイントの現在値と前回値の差が0.5未満の場合、アウトステーションはそのポイントに対してイベント変更を生成しません。差がデッドバンド値より大きい場合、イベントが生成され、値が更新されます。

初期値- これはバイナリ出力ステータス、アナログ出力ステータス、およびオクテット文字列データ型に固有のプロパティです。このプロパティを設定すると、シミュレーション開始時に出力される値が変更されます。

注: Typhoon HILツールチェーンは、実行時にHIL SCADAで文字列値を監視することはできません。代わりに、モデルのコンパイル前にスケマティックエディタでオクテット文字列値を一度設定することができます。

ダイアログ全体の下部には、左から右に、クリップボードにコピーOKキャンセルのボタンがあります。

「クリップボードにコピー」ボタンは、コンポーネントの現在の設定をクリップボードにコピーします。これにより、モデル初期化スクリプトに簡単に設定を転送したり、他のユーザーと設定を共有したりできます。モデル初期化スクリプトからの設定例(Python辞書形式):

6 DNP3アウトステーション構成の例

特定のデータ型のデータベースエントリが不要な場合は、データ型キーの値として空のリスト [] を使用してください。すべてのキーは必須です。

時間同期

時刻同期が必要な場合は、 「時刻同期」をご覧ください。

仮想HILサポート

Virtual HILは現在このプロトコルをサポートしていません。非リアルタイム環境(例:ローカルコンピュータでモデルを実行する場合)を使用する場合、このコンポーネントへの入力は破棄され、このコンポーネントからの出力はゼロになります。