抽象化による生産性の向上

抽象化というのは、使われ過ぎて本来の意味を失いつつある言葉の1つです。抽象化とは、簡単に言えば、複雑なものを一般化するという意味になります。エンジニアリングシステムの設計の世界では、複雑さの根源はプログラミングにあることが少なくありません。例として、スマートシステムに「スマートさ」を加えるカスタムのロジックについて考えます。通常、そのコーディングは非常に複雑なものとなり、プロとアマチュアの差が出る部分にもなります。しかし、複雑なものは一般化しなければなりません。この課題を解決するために必要になるのが「プログラミングをオプションとするワークフロー」です。それにより、計測用のハードウェアを検出して構成を行い、現実の世界からデータを取得し、未処理のデータから実用的なインサイトを得るためにデータアナリティクスを実行するといった具合です。ナショナルインスツルメンツ(NI)は、「LabVIEW NXG」という構成(コンフィギュレーション)ベースの新たなワークフロー製品の提供を開始しました。従来の「LabVIEW」は、30年近くにわたり複雑なシステム設計に携わる開発者の生産性向上に貢献してきました。LabVIEW NXGは、そのLabVIEWのパラダイムを踏襲しています。つまり、データフローをベースとするグラフィカルなプログラミング手法を採用しているということです。ユーザは、構成ベースで対話形式のスタイルにより、センサの接続から最終的なシステムの機能に至るまでのすべてに対応できます。その際には、プログラミングを行うことなく、必要に応じてコードのモジュールを構築することが可能です。モジュールを構築する機能は重要なものです。それにより、1回限りのインサイトを、再現が可能な自動計測に転換するために必要となる一連の作業を効率化することが可能になります。

図1. LabVIEW NXGが提供する新たなワークフローにより、ユーザはプログラミングを行うことなく、計測したデータの取得/分析/エクスポートを実施することができる

ソフトウェアの相互運用

今日のソリューションはますます複雑化しています。それに伴い、複数のソフトウェア言語、環境、アプローチの組み合わせを可能にすることが当然の要件になりつつあります。しかし、そうしたソフトウェアコンポーネントの統合には莫大なコストがかかります。その額は今後も増加の一途をたどるはずです。何らかの目的に特化したハードウェアプラットフォームで使用する言語は、そうしたコンピューティングプラットフォームが1つのデバイスに統合されることに伴い、ほかの言語との統合を実現できるものでなければならなくなります。これに対する解決策は、一般的には設計チームが大きな労力を費やして統合を実現するというものになります。しかし、この方法は対症療法のようなものであり、問題の根本的な解決にはなりません。ソフトウェアベンダは、根本的な問題の解決を図る必要があります。

ソフトウェアを中心とするNIのプラットフォームは、ソフトウェアの相互運用性を確保することを、開発プロセスにおける最も重要な事柄として位置付けて設計されています。ソフトウェアを中心とするこのアプローチの中核にあるのはLabVIEWですが、特定のタスクに特化した補完的なソフトウェア製品が他社から数多く提供されています。ここで言う特定のタスクの例としては、テストのシーケンシング、HIL(Hardware-in-the-Loop)方式のプロトタイピング、サーバベースのデータアナリティクス、技術者の教育向けの回路シミュレーション、オンラインのアセット管理などが挙げられます。各ソフトウェア製品は、そうしたタスクを実行する設計者や技術者の一般的なワークフローを対象として構築されています。同一の用途に向けた業界内のほかのソフトウェアも、これと同様の性質を備えています。しかし、NIのソフトウェアの場合、LabVIEWというエンジニアリングに特化したプログラミング言語によって最大限の拡張性が提供されています。それにより、特定用途向けのソフトウェアが抱える制約が取り払われます。具体的な例としては「DAQExpress」が挙げられます。

図2. NIのソフトウェア製品間では、相互運用性が確保されている。このことから、より複雑な開発案件においても、IPの共有やコードの移行といった作業が簡素化される

DAQExpressは、USBとNIが提供する低コストのプラグイン式データ収集用ハードウェアに向けた新たな同梱ソフトです。これにより、ハードウェアの検出と構成の作業が簡素化され、2回のクリックによってライブデータにアクセスできます。この製品内の「タスク」の構成は、すべてLabVIEW NXGに移行することが可能です。LabVIEW NXGは、ハードウェアの構成から計測の自動化までの一連の作業を簡素化します。

NIのプラットフォーム内で相互運用性を確保することに加えて、LabVIEW 2017などの製品では、IPや標準化された通信プロトコルに対する相互運用性も強化されています。産業用オートメーション機器との相互運用が必要な組み込みシステムに対応できるように、LabVIEW 2017は、IEC 61131-3、OPC UA、セキュアなメッセージング規格であるDDS(Data Distribution Service)をネイティブにサポートします。また、新しいインタラクティブな機械学習のアルゴリズムを備えていることに加え、Amazon Web Services(AWS)とのネイティブな統合もサポートしています。

ここまでに説明したように、NIの各製品には、それぞれに必要なイノベーションが盛り込まれています。それだけでなく、製品群全体を通して見た場合にも、ソフトウェアに対して継続的に投資を行ってきたNIの取り組みの成果が表れていることがわかります。各ソフトウェア製品が本質的に相互運用性を備えていることから、NIのプラットフォーム上では独自の組み合わせを実現することができます。この点が他社製品とは一線を画すNIのプラットフォームの特徴です。現在、ほかのベンダは、ソフトウェアの重要性を認識し始めた段階にあります。それに対し、NIは30年間にわたってソフトウェアに対する投資を着実に拡大してきました。