リモートI/Oを備えたリアルタイムシステムの構築
概要
このドキュメントでは、リモートI/Oを備えたリアルタイム実装システムの設計について解説します。ナショナルインスツルメンツは、NI CompactRIOおよびプログラマブルオートメーションコントローラ(PAC)システム用の確定性に優れたEthernet対応NI 9144拡張シャーシを提供しています。NI LabVIEW Real-Timeモジュールと併せて使用することで、このNI Cシリーズモジュール用8スロットシャーシは確定性リモートI/Oに適したソリューションとなります。さらに、LabVIEW FPGAモジュールを使用して、NI 9144をプログラミングし、カスタムタイミングやインライン処理が行える高度な分散型デバイスとして使用できます。
はじめに
タイムクリティカルな制御システムにリモートI/Oを組み込むには、どうしたらよいのでしょうか。まず直面するのが、リアルタイムシステムの確定性を損なわずに、どのようにしてI/Oを組み込むのかという問題です。タイムクリティカルな通信プロトコルがない場合、デジタルI/Oモジュールで共有クロックやハードウェアトリガを使って、複数のリアルタイムコントローラを同期させようとするかもしれません。リモートI/Oを組み込むことだけが目的の場合、コントローラの数が増えると、このような応急措置的作業は複雑すぎて手に負えなくなります。
図1.確定性リモートI/Oを組み込む複雑な方法
この場合の理想的な解決法は、同じNIソフトウェア/ハードウェアプラットフォームで、高速の確定性通信プロトコルを使ってリモートI/Oノードからのデータを渡すという方法です。
NI 9144拡張シャーシ
NI 9144拡張シャーシを使用すると、NI CompactRIOまたはPACシステムに確定性の高いEthernet I/Oを追加することができます。この堅牢なCシリーズモジュール用8スロットシャーシは、EtherCATと呼ばれるオープン規格のリアルタイムEthernetプロトコルを使って、確定的な通信を行います。NIでは、CompactRIO、PXI、工業用コントローラなど、分散システムのマスタコントローラとして使用できる複数のリアルタイム組込コントローラを提供しています。また、数台のNI 9144スレーブシャーシをマスタコントローラにデイジーチェーン接続することで、タイムクリティカルアプリケーションを拡張することができます。
図2.リモートI/Oを備えたNIリアルタイムシステム
NI 9144は、過酷な環境にも耐えうる堅牢性と信頼性を持ち、-40~70℃という広い動作温度範囲に対応する工業用のシャーシです。計測・制御システムをカスタマイズする場合、30種類以上のアナログ/デジタルCシリーズモジュールから選ぶことができます。さらに、ソフトウェア構成とLabVIEWプログラミングの経験があると、リアルタイムI/Oの拡張がより楽になります。
図3.Cシリーズモジュール用NI 9144拡張シャーシ
関連リンク
NI 9144拡張シャーシの内部
CシリーズI/Oモジュールで実現する柔軟性
NI 9144シャーシはモジュール式の拡張システムなので、追加のI/Oモジュールを挿入するだけで、計測の種類とチャンネル数の増加を実現できます。また、拡張シャーシを追加すれば、システムのモジュールスロットをさらに増やすことができます。全てのCシリーズI/Oモジュールが各シャーシ内で自動的に同期されるだけでなく、ネットワーク上の全ての拡張シャーシを互いに同期することができます。
各Cシリーズモジュールには信号調節機能と絶縁機能が内蔵されていますので、熱電対、抵抗、電圧、電流、歪み、加速度など、あらゆる工業信号タイプに対応できます。NI 9144シャーシと同様、全てのCシリーズモジュールはULテスト済みで、工業レベルの温度・衝撃環境に適応することができます。またCシリーズI/Oモジュールは、組込みCompactRIO、USB CompactDAQ、Wi-Fiデータ集録など、他のNIハードウェアプラットフォームでも利用可能です。
ナショナルインスツルメンツ製品では、LabVIEW FPGAの基本I/O関数を使用して各I/Oモジュールの入出力回路にハードウェアが直接アクセスできるため、フィルタリング、高速フーリエ変換(FFT)、PWM、波形生成などのオンボード信号処理を実行することができます。また、LabVIEW Real-Timeの使いやすいNIスキャンモードで、40種類以上のCシリーズモジュールをプログラミングしてシングルポイントアナログ/デジタルI/Oを行うことも可能です。対応するモジュールの全リストは、Cシリーズモジュール互換性チャートでご覧いただけます。NI 9144モジュールは、確定的リモートI/Oのカテゴリにあります。
図4. 信号調節機能、A/Dコンバータ付きのセンサ別コネクタを搭載したCシリーズモジュール
関連リンク
ビデオ: Cシリーズファミリ
Cシリーズモジュール互換性チャート
LabVIEW Real-Timeで拡張が容易に
LabVIEWソフトウェアを使用すると、グラフィカルプログラミング環境に確定的な拡張I/Oを簡単に追加することができます。NI 9144を購入したら、まずNIマスタコントローラにNI-Industrial Communications for EtherCATドライバをインストールします。するとLabVIEWが接続されている全てのスレーブとモジュールを自動で認識します。また、LabVIEW Real-TimeではI/O変数を使用して、簡単なドラッグアンドドロップにより物理的なI/O値に即時にアクセスすることもできます。I/O ForcingとLive Test Panelの機能を用いれば、システム性能の監視や高度なトラブルシューティングが可能です。LabVIEWでのI/O変数の使用に関する詳細については、下記リンク先を参照してください。
図5.NI 9144 I/O変数をLabVIEW VIにドロップ
関連リンク
CompactRIOスキャンモードの概要
確定的リモートI/O入門
LabVIEW FPGAで高性能を実現
購入してすぐに始められる使いやすさだけでなく、NI 9144にはLabVIEW FPGAのツールを使ってカスタマイズできる組込のXilinx FPGAが搭載されています。FPGAは、再構成可能な論理ゲートでハードウェアにコードを実装できるため、極めて高速で信頼性が高く、タイムクリティカルな制御、集録、タイミングなどのアプリケーションの実行に適しています。さらに、仮想ポイントタイミング信号により、分散された複数のNI 9144モジュール間でFPGAコードを同期することができます。しかもジッタは100 ns未満です。FPGAハードウェアをNI 9144に組込むことで、アナログ/デジタルI/Oのカスタムトリガ、インライン処理、アナログ/デジタルI/Oの制御といった機能を実装することが可能となります。LabVIEW FPGAの使用方法の詳細については、下記リンクをご覧ください。

[+] 画像を拡大
図6. LabVIEW FPGAはNI 9144 FPGAチップ用の簡単なグラフィカルプログラミングツールを搭載
関連リンク
LabVIEW FPGAとは?
確定的リモートI/O入門
法律関連事項
本チュートリアル(以下「チュートリアル」という)は、National Instruments(以下「NI」という)によって作成されたものです。本チュートリアルは、NIにてサポートされていますが、本チュートリアルの内容に関するテストや検査が完全に行われていない可能性があり、チュートリアルの品質について、もしくは、関連製品およびドライバの各改訂版に対するサポート継続については、何らの保証も適用されません。本チュートリアルは、いかなる保証もなく「作成された状態のまま」で提供されており、ni.com/jpの使用条件に特別に規定されている特定の制約事項に従うものとします。 (http://ni.com/legal/termsofuse/japan/ja/)
