LabVIEW RIOアーキテクチャは、4つのコンポーネント、すなわちリアルタイムプロセッサ、ユーザがプログラムできるFPGA、モジュール式I/O、アーキテクチャのあらゆる側面をプログラミングできる完全なソフトウェアツールチェーンをシームレスに統合し、革新的な設計を実現します。
図1 LabVIEW RIOアーキテクチャは、リアルタイムプロセッサ、ユーザがプログラムできるFPGA、モジュール式I/Oインタフェース、完全なソフトウェアツールチェーンを組み合わせて、あらゆる制御・監視アプリケーションに最適なアーキテクチャを提供します。
NIでは、NI Linux Real-Timeを実行する667 MHzのデュアルコアARM A9から、NI Linux Real-TimeまたはWES7オペレーティングシステムを実行する1.9 GHzのクアッドコアIntel Atomまで、さまざまな高性能組み込みプロセッサを用意しています。 プロセッサは、NI Linux Real-TimeのクロスコンパイルサポートによるC/C++、または直感的なLabVIEW Gデータフロープログラミング言語でプログラムを作成、これによりアプリケーションの実行、データセットの操作、信号の処理、データのロギング、通信HMIを使用したインタフェースなどの共通タスクを遂行します。
LabVIEW RIOアーキテクチャの中核となる、再構成可能なフィールドプログラマブルゲートアレイ (FPGA) は、重要なタスクや集中的なタスクをプロセッサから解放し、非常に高いスループットで信頼性が高い、確定的実行を提供します。このFPGAはI/Oに直接接続されているため、信号や画像処理、カスタマイズ可能なタイミング、トリガ、同期化という点で優れたパフォーマンスを発揮します。また、FPGAとI/Oはバスを介さず直接接続しているため、制御ループのレイテンシは実質的にゼロを実現し、ほとんどの高度制御アルゴリズムに対して必要な性能を提供します。例えば、FPGAを使用することで、1台のCompactRIOシャーシを使用した20以上のアナログPID制御ループを100 kHzを超えるレートで同時に実行することができるようになります。 LabVIEW RIOアーキテクチャベースのNIハードウェアは、最新のFPGAテクノロジとXilinxのチップセットを活用しています。
LabVIEW FPGAモジュールを使用すると、VHDLやVerilogなどのハードウェア記述言語の知識がなくても、直感的なグラフィカルプログラミング環境で組み込みFPGAをプログラミングできます。
NI CシリーズI/Oモジュールには、内蔵絶縁、変換回路、信号調節などの機能、工業用センサ、アクチュエータ、機能的安全性 (SIL) センサとアクチュエータ、カメラ、モータ、ドライブへの直接接続、およびProfibus、Profinet、EtherCATなどの工業用通信プロトコルが含まれています。 NIからは100種類を超えるCシリーズモジュールが提供されており、モジュール開発キットを使用することで、アプリケーションの特定のニーズに合わせてカスタムモジュールを開発できます。
図2 センサ、モータ、ドライブ、アクチュエータ、工業用通信プロトコルと直接接続が可能な、100種類以上の選択肢があるCシリーズI/Oモジュールから選択します。
LabVIEWシステム開発ソフトウェアは、LabVIEW RIOアーキテクチャのあらゆる要素のプログラミングとカスタマイズに使用できます。 LabVIEWは、C/C++、IEC 61131-3、Gデータフローなどのプログラミング言語をサポートしているため、既存のコードとプログラミング専門知識を活用できます。 標準的なソフトウェア環境として、数学および解析関数、信号および画像処理アルゴリズム、ネットワークおよびI/OインタフェースAPIが内蔵されています。 NI Linux Real-TimeモジュールはLinuxオングストロームディストリビューションに基づいたオープンソースのリアルタイムオペレーティングシステムです。組み込みプロセッサ上で実行され、信頼性の高い確定的な操作、およびデータロギング、データ転送メカニズム、カスタム処理と解析に使用できる完全なAPIのセットを提供します。 LabVIEW FPGAモジュールを使用すると、VHDLやVerilogなどのハードウェア記述言語の知識がなくても、直感的なグラフィカルプログラミング環境で組み込みFPGAをプログラミングできます。 また、LabVIEWには、IP、アドオン、サンプルプログラム、サポートの総合的なコミュニティがあり、LabVIEW RIOアーキテクチャに基づく組み込み式の制御および監視システムの設計に必要なツールチェーンが用意されています。
制御・監視アプリケーションを実装する場合、システム設計者はセンシングや処理、ネットワーク接続、同期、タイミングなど、あらゆることを考慮する必要があります。 シンプルなオン/オフデジタル制御から高度な多軸モーションシステムまで、システムには多くの場合、何らかの制御が必要となります。 そのような要件は、演算能力、接続性、制御性の3つのカテゴリにまとめることができます。
図3 モノのインターネット (IoT) に使用される制御・監視システムは演算能力、接続性、制御性を必要とします。
システムでは、複雑な数学からブールロジックまで、幅広い処理アルゴリズムや解析ルーチンを実行できます。
デジタルシステムは、センサをはじめ、エンタープライズネットワーク、データベース、クラウドベースサービス、さらには他のマシン、デバイス、インフラストラクチャなども含めた物理的な世界とのインタフェースを確立する必要があります。 接続性の最新情報については、「分散型TSN Ethernetベースの計測システムの設計」のページを参照してください。
埋め込みシステムは多くの場合、内部アルゴリズムと解析の結果として生成される出力を備えています。 これらの出力はモータ、リレー、またはアクチュエータを制御します。
LabVIEW RIOアーキテクチャは、演算能力、接続性、制御性を必要とするシステムに最適です。 モジュール式I/Oはカスタマイズ可能なインタフェースを備えているため、アナログおよびデジタルセンサ、工業用通信プロトコル、カスタムI/O、さらにはカメラやモータなどの特殊I/O、事実上あらゆる接続要件にも対応します。 ユーザがプログラムできるプロセッサとFPGAは、高度な信号や画像処理を実装し、複雑な演算を実行し、条件判断アルゴリズムを実行します。 特にFPGAは高速で確定的な並列動作が可能で、それぞれが固有のタイミングおよびデータ転送メカニズム (kHzからMHz程度のループレート) を持つ多数の制御ループを並列実行するため、制御に最適です。
図4 演算能力、接続性、制御性が必要なシステムに最適なLabVIEW RIOアーキテクチャ。
NIでは、LabVIEW RIOアーキテクチャをベースにしたさまざまなハードウェアターゲットを提供しています。 さまざまなサイズ、性能、価格から選ぶことができるうえ、一貫したアーキテクチャのメリットを活用しているため、ターゲット間でコードが再利用でき、シミュレーション/試作から設計、検証、デプロイメントまで一貫したソフトウェア環境を利用できます。
図5 Single-Board RIOの小さなサイズ、CompactRIOの堅牢性、またはFlexRIOの特筆すべき高性能のどれを必要とするかに関わらず、システム設計ソフトウェアには一貫性があり、コードをデプロイメントターゲットの各ファミリにシームレスに移植することができます。
ハードウェアとソフトウェアを統合すると、あらゆる組み込み制御/組み込み監視アプリケーションに対応したプラットフォームが構築できます。
National Grid社: CompactRIOを使用して配電網を最適化
Airbus社、IoTが実現する未来の工場向けにスマートツールを開発
China Steel社、IoTを利用した機械状態監視システムを開発