LabVIEWにおけるIf文

更新しました Nov 15, 2018

使用製品

Software

  • LabVIEW Full
  • LabVIEW Base

問題

LabVIEWでプログラミングするのが初めてで、テキストベースのプログラミングにあるifif-else、またはswitch文の機能を実現する方法をLabVIEWで探しています。これらの文についてのLabVIEWに相当するものは何ですか?

解決策

LabVIEWにおけるif 文、if-else文、またはswitch文は、ストラクチャパレットにあるケースストラクチャです(関数パレット>>ストラクチャ>>ケースストラクチャ)。もう一つの方法として単純なif 文は、比較パレットにある選択関数が使用できます(関数>>比較>>選択)。

ケースストラクチャのデフォルトは、1つのTrueケースと1つのFalse ケースです。それぞれのケースについて、設定した条件が満たされた場合に実行されるLabVIEWコードを記述することができます。図1からわかるように、ケースストラクチャには、ケースセレクタ端子と呼ばれる緑色の疑問符入力端子があります。このケースを実行する条件を設定するには、ブール出力をこの端子に配線する必要があります。図1のコードは、変数 "x"と定数値5を比較するif文と同等です。変数"x"が5に等しい場合、ケースストラクチャはTrueケース内にあるコードを実行します。"x"が5に等しくない場合、ケースストラクチャはFalseケース内にあるコードを実行します。この図1の例では、"x"が5に等しい場合、Trueケースが選択されているため、フロントパネルにある緑色のブールLEDがTRUEの値を受け取ります。

 

図1 - ケースストラクチャ - if

 

あるいは、簡単な条件およびアクションには、選択関数も同様に機能します。選択関数は、3つの入力があります。下記のリストは、入力端子を上から下へ順番に説明したものです。

  1. TRUEの場合の望ましい出力
  2. TRUE/FALSEの選択
  3. FALSEの場合の望ましい出力


図2は、図1のケースストラクチャと同等のif文機能を示していますが、選択関数を使用しています。
 

図2 - 選択関数 - if



ケースストラクチャを使用する利点は、ケースを追加して本質的にif-else文とswitch文を作成できることです。ケースセレクタ入力に配線された文字列、数値、または列挙を使用することで、使用可能なすべてのケースを識別できます。LabVIEW 7.1以前では、ケースストラクチャの詳細については、LabVIEW User Manualを参照してください。LabVIEW 8.0以降では、LabVIEWヘルプにあるケースストラクチャのトピックを参照してください。ケースストラクチャのサンプルもいくつかインストールされています。LabVIEWのサンプルにアクセスするには、ヘルプメニューからサンプルの検索を選択します。 次に検索タブをクリックし、検索するキーワードとして”ケースストラクチャ”と入力しして検索するといくつかの例が見つかります。
図3に、上記のswitch文の例を示します。この例では、ユーザーが数値入力を制御します。アクセスされたコードと各ケースの結果出力は、ユーザーが選択した数値入力に依存します。  
 

図3 - スイッチ文 - 数値入力



switch文として使用されるケースストラクチャのアーキテクチャは、ユーザーが入力できるデータ型と将来使用するための変更に関して柔軟性を提供します。最後の例で使用したように数値入力ではなく、図4のような簡単に変更可能な列挙型入力を受け入れることもできます。ケースストラクチャでケースを追加する方法の詳細については、LabVIEWヘルプのサブダイアグラムの追加と複製セクションを参照してください。
 

図4 - 列挙体入力の値


アクセスされたコード部分と出力は、ユーザーが選択した入力値に依存します。これは、下の図5に示されています。
 

図5 - Switch文 - ケースゼロ

この記事はお役に立ちましたか?

いいえ