> 自動計測Webトップページに戻る

グラフィカル型プログラム言語とテキスト系プログラム言語

プログラム言語は、グラフィカル型プログラム言語(National Instruments社 Lab VIEWや、Keysight Technologies社 Keysight VEEなど)、テキスト系プログラム言語(Microsoft社 Visual BasicやExcel VBAなど)の大きく2種類に分類されます。

グラフィカル型プログラム言語は、意味を持つオブジェクトを画面に配置し、オブジェクト間にデータの「通り道」として線を接続する、といった方法でプログラムを作成します。例えば、オブジェクトとして、測定値を取得するオブジェクト、データを保存するというオブジェクトを、プログラム言語の画面に配置し、それらのオブジェクトを線で接続すると、測定値を取得し、そのデータを保存するといったプログラムが完成します。また、Lab VIEW、Keysight VEEなどは、測定に特化した言語であるために、ストリップチャートなどのグラフ表示のオブジェクトなど、測定に使われるものが、予め用意されていることも魅力の一つです。

一方、テキスト系プログラム言語は、CやC++、Java、C#、Visual Basicなどが代表例としてあげられます。ここでは、厳密に定義された文法と予約語を使用して、プログラムをキー入力していきます。また、これらの開発環境は、特に、自動制御プログラムに特化した機能は持っていません。

以下、それぞれの特徴や利点について、説明していきます。 

■ グラフィカル型プログラム言語

Visual BasicやC言語、Javaがテキスト系言語に分類されるのに対して、グラフィカル型言語というプログラム言語があります。グラフィカル型言語とは、テキスト系言語のように、プログラムをテキストで入力していくのではなく、意味を持ったオブジェクトを、線で繋いでいくことにより、プログラム構築していく言語です。

[長所]
このグラフィカル型言語の利点ですが、

  • 直感的であり、比較的、短い時間でのプログラミング方法の習得が可能
  • 測定に特化した言語であるため、自動制御プログラムの構築が短時間で作成可能

が挙げられます。これらは、テキスト系言語にはない利点です。

  • 直感的であり、比較的、短い時間でのプログラミング方法の習得が可能

グラフィカル型言語の特徴は、意味を持ったオブジェクトを、線で繋いでいくことで、プログラムが出来てしまうことです。ビジュアル的にプログラムを構築していくために、データシーケンスはわかりやすく、文法は直感的であり、テキスト系言語のように覚えておく必要はあまりありません。プログラムの専門家ではなくとも構築が可能です。

例えば、以下は、Keysight VEEというグラフィカル型言語で、振幅測定を10回繰り返し、その測定値をグラフ化したものです。まず、パッと見て、どのようにプログラムが進んでいくのか、想像しやすいのではないかと思います。プログラムの実行は、線の接続通りに、進んでいき、線には、測定値などのデータが流れ、データを受け取ったオブジェクトが動作します。また、個々のオブジェクト自体には、意味や特定の作業が割り当てられていますが、それも、直感的に、理解できると思います。 


     図  Keysight VEE プログラムの例(振幅値測定を10回繰り返す)
 

上記であれば、①スタートから開始、②For Countで10回繰り返し(Loop作業)、③”:MEAS:VPP?”で測定器から測定値を取得する、④そのデータをLogging Alphanumericに数値で表示、⑤XY Traceでグラフとして測定値を表示する。ということが分ると思います。

ルールがわかりやすく、直感的であるために、プログラミング方法の習得は、比較的、短期間で終わらせることができます。

  • 測定に特化した言語であるため、自動制御プログラムの構築が短時間で作成可能

先の例を見て頂ければ、グラフィカル型言語では、プログラムは、オブジェクトを置き、線で結んでいくだけの作業となりますので、簡単で、手早くできるということはご理解いただけると思います。

更に、測定器の制御に特化したグラフィカル型言語の場合、測定器との接続が容易であり、かつ、データ表示に必要となるグラフや、計測関係のGUIが、最初から用意されているため、その部分で悩む必要はありません。例えば、下記は、Keysight VEEにて、用意されているGUIの一部です。ストリップチャートや、スペクトラム表示のためのグラフ、ネットワークアナライザのためのスミスチャートまで用意されています。


             図  Keysight VEEのGUI
 

また、信号解析のための関数など、通常のプログラミング言語では、あまり用意されていない機能が使える事も利点の一つです。下記は、Keysight VEEから、Matlabの関数を呼び出した例です。


       図  Keysight VEEにてMATLABを呼び出す
 

これらのツールは、テキスト系言語には、あまり備わっておらず、実現は面倒で、工数が掛かります。簡単に、手早く行う事ができるのが、測定器に特化したグラフィカル型言語の魅力です。弊社テクニカルサポート部門も、より早く、適切な回答を行うため、Keysight VEEが多用されています。

[短所]
グラフィカル型プログラム言語の短所は以下の二つです。

  • 同僚や他部署とのプログラムの共有を考える場合

グラフィカル型プログラム言語を用いる場合、同僚や他部署との互換性には、注意する必要があります。Excel VBAや、Visual Basic、C#は、一般的に普及している言語であるため、ユーザー数が多いです。更に、プログラム言語の入手もしやすく、また、言語を解説している書籍も多く、そのため、作成したプログラムを同僚や他部署と共有する土壌が既に整っています。しかし、グラフィカル型プログラム言語の場合には、計測器に特化した言語であるために、普及は限定的です。そのため、同僚や他部署とのプログラムの共有には、あまり向いているとは言えません。

  • 大規模なプログラム開発には向いていない

大規模なプログラム開発には、不向きです。プログラムを、グラフィカルに描いていく事になるため、複雑な条件分岐の記述などは分り難く、プログラムのコードが長くなりがちです。また、テキスト系プログラム言語に比べて、実行パフォーマンスは劣っています。そのため、大規模なプログラムの開発には、あまり向いていません。 

■ テキスト系プログラム言語

ここで言うテキスト系プログラミング言語とは、皆さんも馴染みのあるVisual Basicや、Excel VBA、C言語といった一般的に用いられるプログラミング言語です。これらのテキスト系プログラミング言語の特徴としては、グラフィカル言語と比較して、

  • 実行パフォーマンスが高いこと
  • 大規模なプログラム作成が容易

であることが挙げられます。
また、Excel VBAや、現在、無償で入手できるMicrosoft Visual Studio Express等は、入手しやすくなっています。そのため、ユーザーが多く、他人と情報やサンプルプログラムを交換し合うこともグラフィカル言語と比べて容易です。しかし、すべて、テキストにて記載していくため、プログラム記述形式や関数など覚える事が多く、習得には時間が掛かるとされています。さらに、自動計測プログラムに必要な解析のための関数やグラフなどのGUIが標準で用意されていないため、作成に時間がかかる場合があります。

 

> 自動計測Webトップページに戻る

Related Links