グラフィカルプログラミング

本ページの内容

 

ビデオ: LabVIEWを使用したデータフロープログラミング

LabVIEWは、データフローモデルに従ってVIを実行します。ブロックダイアグラムノードは、必要な入力を全て受信すると実行されます。ノードを実行すると、出力データを生成し、そのデータをデータフローパスの次のノードに渡します。ノードを介したデータの移動は、ブロックダイアグラム上のVIおよび関数の実行順序を決定します。

Visual Basic、C++、Java、その他のほとんどのテキストベースのプログラミング言語は、プログラム実行の制御フローモデルに従います。制御フローでは、プログラム要素の順序によってプログラムの実行順序が決まります。

データフロープログラミングの例として、図1のように、2つの数字を足してから50.00を引くブロックダイアグラムについて考えてみましょう。この場合、ブロックダイアグラムは左から右へ実行されます。これは、オブジェクトが並び順どおりに実行されるためではなく、「和」関数が実行を終了しデータが「差」関数に渡されるまで、「差」関数を実行できないためです。このように、ノードは、全ての入力端子にデータが供給されて初めて実行され、関数の実行が終了するまで出力端子にはデータが供給されないことに注意してください。

図1. データフロープログラミング

図2で、「和」、「乱数生成」、「割り算」のどのコードセグメントが最初に実行されるか考えてみましょう。答えは、このコードではわかりません。「和」関数と「商」関数の入力には同時にデータが到達し、「乱数」関数には入力がないからです。1つのコードセグメントが他のコードセグメントより先に実行する必要があり、それらの関数間にデータ依存関係がない場合は、シーケンスストラクチャやエラークラスタといった他のプログラミング方法を利用して、実行順を強制的に定義します。

図2. 複数のコードセグメントのデータフローの例

ブロックダイアグラムオブジェクト間のデータ転送はワイヤを介して行います。図1および2では、制御器および表示器の端子と「和」関数および「差」関数がワイヤで接続されています。各ワイヤのデータソースは2つですが、そのデータを読み取る多くのVIおよび関数に配線できます。ワイヤの色、スタイル、太さは、データタイプによって異なります。


不良ワイヤは、上図のように、中央に赤いXのある黒の破線で表示されます。ワイヤは、データタイプに互換性がない2つのオブジェクトを配線しようとした場合など、さまざまな理由で壊れます。

表1は、最も一般的なワイヤのタイプを示しています。

ワイヤタイプ スカラ 1D配列 2D 配列
数値 オレンジ(浮動小数点数)、青(整数)
ブール
文字列 ピンク

表1. 一般的なワイヤのタイプ

released with niBCVideo v1.1

ビデオ: LabVIEWのデータタイプ

LabVIEWでは、ワイヤを使用して複数の端子を接続し、VI内でデータの受け渡しをします。ワイヤによって運ばれるデータと互換性のある入力と出力に配線する必要があります。例えば、配列出力を数値入力に配線することはできません。また、ワイヤの方向も決まっています。ワイヤは少なくとも1つの出力に配線する必要があります。入力は1つしか配線できません。例えば、表示器同士を配線することはできません。配線の互換性を決める要素は、制御器/表示器のデータタイプや端子のデータタイプです。例えば、スイッチの枠が緑の場合、そのスイッチはExpress VI上で緑のラベルの付いた入力に配線することができます。枠がオレンジ色のノブは、オレンジ色のラベルが付いた入力ならどれでも配線できます。オレンジ色のノブを緑のラベルの入力に配線することはできません。ワイヤは端子と同じ色になります。

オブジェクトを自動配線する

選択したオブジェクトをブロックダイアグラムの別のオブジェクトの近くに移動すると、有効な接続を示すワイヤが一時的に描画されます。マウスボタンを放してブロックダイアグラムにオブジェクトを配置すると、ワイヤが自動的に接続されます。また、既にブロックダイアグラム上にあるオブジェクトを自動的に配線することもできます。LabVIEWでは、対応し合う端子が接続され、対応しない端子は接続されません。

関数パレットからオブジェクトを選択したり、既にブロックダイアグラム上にあるオブジェクトを<Ctrl>キーを押したままドラッグしてコピーすると、デフォルトで自動配線が有効になります。位置決めツールを使用してすでにブロックダイアグラム上にあるオブジェクトを移動すると、デフォルトで自動配線は無効になります。

自動配線の設定を変更するには、ツール→オプションを選択し、カテゴリリストからブロックダイアグラムを選択します。

オブジェクトを手動配線する

配線ツールを端子上に置くと、端子の名前を示したヒントラベルが表示されます。また、詳細ヘルプウィンドウとアイコン上で端子が点滅しますので、正しい端子に配線していることを確認できます。オブジェクト同士を配線するには、まず最初の端子に配線ツールを持って行ってクリックし、カーソルを次の端子に移動させてまたクリックします。配線が終わったら、ワイヤを右クリックしてショートカットメニューからワイヤを調整を選択すると、ワイヤの経路が自動で選択されます。壊れたワイヤを削除する必要がある場合は、<Ctrl-B>を押すとブロックダイアグラム上の全ての壊れたワイヤが削除されます。

新しい方法でLabVIEWの基礎を学習する

新しい対話形式の方法で、LabVIEWの概念を学習しましょう。

学習を続ける

前へ 環境の基本
一般的なツール 次へ