iDDS – 背景概要

概要

Instrumentation Data Distribution Service (iDDS) はデータ収集および計測器制御向けに設計されたデータ抽象化プロトコルです。iDDSはテスト施設、テスト制御システム、測定システムのすべての要素をリンクさせます。 

 

システムエンジニアはiDDSを使用して、ベンダに依存しないモジュール式のテストシステムを構築します。iDDSは「ソースでのタイムスタンプ」によって高い集約スループットを実現し、伝送遅延に影響されないネットワークシステム上のデータアライメントを可能にします。航空用エンジンテストセルで使用されるような高性能なテストシステムに理想的です。 

 

iDDSはRolls Royceが導入し、MDS Aero社との提携のもと、十数社の航空宇宙企業および計測機器関連企業を含むiDDS Working Groupの支援を受けて開発されました。

内容

iDDSアーキテクチャ

Data Distribution Service (DDS) はiDDSモデルのバックボーンを提供します。DDSはネットワーク通信に対応したシステム、アプリケーションプログラミングインタフェース、ワイヤプロトコルを定義するObject Management Group (OMG) 標準です。これは特に、リアルタイムシステムや組込システムの性能要件とサービス品質要件を満たすように設計されています。複数の業界にわたるモノのインターネット (IoT)、タイムクリティカルアプリケーション、ミッションクリティカルアーキテクチャに採用されています。iDDSソースのタイムスタンプではデータ処理時に時間軸を合わせることができるため、ネットワーク設計が最適でない場合に生じるレイテンシの悪影響が軽減されます。

図1: iDDSアーキテクチャ

DDSネットワークはミドルウェアサービスによって管理されます。ミドルウェアソフトウェアはRTI、Twin Oaks、またはOpenDDSから入手可能です。ミドルウェアはDDSネットワーク上のリソースを事前に割り当てるため、ダイナミックなリソース割り当てを最小限に抑え、データのコピーを複数作成しなければならない状況を少なくすることができます。

iDDSは、次のような計測器固有のデータ定義をDDSに追加します。

  • チャンネルメタデータ—これにより、計測器はデータタイプ、工学単位、およびその他の情報を表示でき、サブスクライバサービスはパブリッシュデバイスに関する具体的な知識 (情報) がなくてもデータを処理できます。
  • IEEE 1588 Precision Timing Protocol タイムスタンプ—IEEE 1588は、イーサネットネットワークと同じ物理的な接続を介して、デバイスのクロックに同期を提供します。iDDS対応の計測器ではデータにタイムスタンプが含まれるため、「ソースでのタイムスタンプ」が実現します。 タイミングジェネレータは、システムのグランドマスタクロックとして機能することが求められます。
  • 構成システム—測定エンジニアは、構成システムを使用して測定を計画し、測定の範囲、レート、キャリブレーション、その他の重要なテスト情報を定義します。 
  • システム健全性の監視—これはエンジニアがシステム、パラメータ、またはハードウェアの障害に関する使用データを追跡するのに役立ちます。また、この監視により、不足しているパラメータがある場合でも実行を継続する手段が提供されます。

iDDSネットワークはノードで構成されます。パブリッシャはネットワーク上のノードであり、ネットワークに対するデータを生成します。このデータを消費するのがサブスクライバです。ノードはネットワーク経由でネットワーク上の他のすべてのノードに接続でき、どのノードも任意のパラメータをサブスクライブできます。 

DDSドメインはマルチキャストアドレスにマッピングされます。ネットワーク セグメンテーションは、標準的なネットワークインフラストラクチャで管理できます。シンプルな室内実験から大規模なテストセルまで、さまざまなタイプの施設に対応する拡張性を備えています。テストでは、10,000を超えるパラメータを同一ネットワーク上でパブリッシュできることが確認されています。

図2:マルチドメインアーキテクチャ

この例ではリアルタイムネットワークに物理的なパーティションが存在しないため、どのノードもすべてのルータに接続できます。システムネットワークで発生したネットワーク問題は、リアルタイムネットワークに干渉しないように切り分けられます。ドメインはデータタイプ (低速、高速、制御など) によって関連付けることができます。

構成サーバはネットワーク全体を管理します。このサーバは、ノードが必要とするバックボーン固有の構成データを公開します。構成サーバによりノードに送信された構成ファイルがノードによって保存されることで、構成が維持されます。

iDDSメリット

iDDSは、2000年代初めに開発されたモノリシックなシングルサプライヤシステムに対抗して開発されました。シングルサプライヤシステムでは、ベンダ間の相互運用性で問題が生じるリスクが最小限に抑えられますが、長期にわたって変更や保守を行うことが困難であることにユーザが気づきました。特にハードウェアが古くなるとそれが顕著になります。 

iDDSでは、データ中心のモデル (データセントリックモデル) を採用し、データを第一に考えます。特定の計測器機能からデータを取り出し、マルチベンダによる相互運用性のメリットを提供します。これによりハードウェアデバイスの交換が容易になり、システムが単一のベンダやデバイスに依存することがなくなります。 

iDDSアーキテクチャは、測定システムに次のようなメリットをもたらします。

  • 相互運用性—エンジニアは、さまざまなベンダのパブリッシャノードとサブスクライバノードでシステムを構築し、システム上の各モジュールの性能を個別に最大化できます。
  • 互換性—エンジニアは最小限の労力で、インタフェースが同じである別のモジュールにスワップアウトすることができます。これにより、システムの他の部分に影響を与えることなくシステムコンポーネントのアップグレードが可能となり、システムの長寿命化への道筋をつけることができます。コンポーネントを利用できなくなった場合でも同様です。
  • 柔軟なアーキテクチャ—エンジニアは、他のモジュールやアーキテクチャに大きな変更を加えることなく、各テストで求められることを的確に満たすようにモジュールを配置できます。
  • 拡張性。このアーキテクチャは、同一の基本的なビルディングブロックを使用して、数十のパラメータから1万を超えるパラメータまでのアーキテクチャに対応できます。
  • 疎結合—システムモジュールは、他のシステムについての具体的な情報を持たなくても、データを共有し、通信を行うことができます。これにより、システム全体に対するリワークや構成にかかる労力を最小限に抑えることができます。 
  • すべての機能システムをサポート (高性能および低性能の CPU)—信号処理用の低性能CPUからサーバ用の高性能CPUに至るまで、テストのニーズに合わせて選択できます。
  • 単一の測定パラメータへの粒度—エンジニアは、単一のデータパラメータに至るまでストリーミングデータを送受信するようにシステムを構成できます。これにより、ノードアプリケーションはデータセントリックな方法で必要となるパラメータのみを扱うことができます。
  • ソースに限りなく近いタイムスタンプデータ—測定データには、単一のソースからの対応する時刻がタグ付けされ、各種システムからのデータを最速のデータサンプリングレートで相関させることができます。
  • サブシステム固有の操作の抽象化—エンジニアは、特定のデバイスの特定のチャネルに対するものではなく、測定パラメータ単位での操作コマンドを発行できます (「zero」「calibrate」など)。

これらのメリットにより、テストシステムの設計者は測定ごとの性能の最大化、システムの耐用年数の延長、システムの総コストの削減、長期的な視点でのシステム老朽化リスクの最小化を実現するシステムを柔軟に管理できるようになります。 

iDDSNIプラットフォーム

現在、ほとんどのiDDSツールはLinuxプラットフォーム上で動作します。NIはCompactRIOデバイスとPXIデバイスを使用して、NI Linux Real-Time上でテストすることに成功しました。 

NIのテストでは、データの取得にNI-DAQmx呼び出しを使用しました。取得したデータはiDDS標準に従ってパッケージ化され、iDDSネットワークに公開されました。

図3: iDDSの実装

NIのエンジニアは、このアーキテクチャを使用して、さまざまなベンダによる数千ものデータパラメータを実行しているiDDSシステムでのコンプライアンスを実証しました。

NIのハードウェアへのiDDS実装の詳細については、NIのサポートにお問い合わせください。

ステップ

 

参考資料