多態性単位を使用する



LabVIEW 2018ヘルプ


発行年月: 2018年3月
製品番号: 371361R-0112
製品情報を参照

ダウンロード (Windowsのみ)


LabVIEW 2016ヘルプ
LabVIEW 2017ヘルプ
LabVIEW 2018ヘルプ
LabVIEW 2019ヘルプ
LabVIEW 2020ヘルプ

表現や式を評価するときは、単位を使用して整合性レベルを向上させてください。これを次元解析といいます。LabVIEWでは単位系の変換についても心配する必要はありません。データ表示または入力の際に単位が変換されます。

LabVIEWの「」や「」のような標準関数は単位に対して多態性であるため、さまざまな単位が自動的に処理されます。ただし、多態性の単位を処理するという同じ機能を持つサブVIを作成するには、多態性単位を使用する必要があります。

入力点が受け取る単位に関係なく、1つのVIは多態性単位を使用して同じ計算を行うことができます。たとえば、波形のRMSを計算するVIを作成する場合、波形に関連した単位にする必要があります。電圧の波形、電流の波形、温度の波形などに対してそれぞれ別のVIが必要となります。ただし、同じVIをもう一度作成する代わりに、多態性単位を持つサブVIを1つ作成して、特定の単位を持つVIからそれを呼び出すことができます。

LabVIEWでは多態性単位は固有の単位として扱われます。多態性単位は他の単位と異なり、他の単位に変換したりブロックダイアグラムを伝達したりすることができません。多態性単位が$1の制御器を多態性単位が同じ$1の表示器に配線すると、単位が一致し、VIはコンパイルできます。

$1は、他の単位と同様に、組み合わせて使用することができます。たとえば、制御器に3秒を乗算して表示器に配線する場合には、表示器の単位を$1 sにする必要があります。単位が異なる制御器と表示器を配線すると、ワイヤが壊れる原因となります。

多態性単位を含むサブVIを呼び出すと、出力単位は入力が受け取る単位に基いて計算されます。たとえば、多態性単位が$1$2の2つの入力があり、$1$2/sの形式で出力を作成するサブVIを作成するとします。m/sを入力とするサブVIを$1入力に、そしてkg$2入力へ配線すると、出力単位はkg m/s^2として計算されます。

また、$1$1/sの2つの入力があり、$1^2の出力を計算する別のVIがあるとします。m/sを入力とするVIを$1入力に、そしてm/s^2$1/s入力へ配線すると、出力単位はm^2/s^2で計算されます。ただし、mを入力とするこのVIを$1入力に配線し、kg$1/s入力にすると、サブVIの呼び出しは壊れます。その入力の一方は単位の競合として宣言され、他方の単位の出力が計算されます(可能な場合)。LabVIEWは、それぞれの単位を明確に区別するため、多態性単位を持つVIは多態性単位を持つサブVIを持つことができます。

どのような場合に多態性単位を使用するか

このセクションでは、多態性単位を使用するVIと使用しないVIのサンプルについて説明します。まず、単位を使用しない簡単な平均化のサンプルについて説明し、次に、基本単位を使用するサンプルについて説明します。その次に、このサンプルを多態性単位を使用するものに変え、別のサンプルのサブVIとして使用します。Multiple AveragesサンプルとMultiple Ratesサンプルは、多態性単位の機能を持つサブVIを使用する場合の例として示します。

単位を使用せずに平均化を行う場合

以下に2つの数の平均を計算するVIのフロントパネルを示します。制御器または表示器に単位がないことに注目してください。

以下にVIのブロックダイアグラムを示します。

単位を1つ使用して平均化を行う場合

以下に、メートル(m)を単位とする2つの数の平均を計算するVIのフロントパネルを示します。

このVIのブロックダイアグラムは、上記のブロックダイアグラムと同一です。フロントパネルのみに単位が表示されます。フロントパネルの1つの制御器または表示器に1つの単位がある場合には、そのフロントパネルのすべての制御器と表示器に単位が必要です。この条件が満たされなければ、ブロックダイアグラムのワイヤは壊れてVIは実行しません。

多態性単位を使用して平均化を行う場合

以下に2つの数の平均を計算するVIのフロントパネルを示します。上記のフロントパネルとは異なり、以下のフロントパネルには多態性単位があります。「Multiple Averages」サンプルは、このVIをサブVIとして使用します。

このVIのブロックダイアグラムは、上記のブロックダイアグラムと同一です。Averaging with Metersサンプルと同様に、多態性単位はフロントパネル上にのみ表示されます。フロントパネルの1つの制御器または表示器に1つの単位がある場合には、そのフロントパネルのすべての制御器と表示器に単位が必要です。この条件が満たされなければ、ブロックダイアグラムのワイヤは壊れてVIは実行しません。

Multiple Averages

以下に単位がそれぞれ異なる3つの平均値を計算するVIのフロントパネルを示します。これは、どのような場合に多態性単位のサブVIを使用するかを示す例です。

以下の図の長さaの単位はフィート(ft)、長さb平均長の単位はインチ(in)であることに注目してください。このVIは多態性単位を使用するため、フィート(ft)からインチ(in)への変換は自動的に処理されます。

以下に、Averaging with Polymorphic Units VIを使用してMultiple Averagesサンプルのそれぞれのサンプルを平均化するブロックダイアグラムを示します。

Averaging with Polymorphic UnitsサブVIで、Multiple Averages VIにあるすべての単位を使用できることに注目してください。異なる単位の2つの数を平均化するたびに別のVIを作成する代わりに、多態性単位のサブVIを使用することができます。

Rates with Polymorphic Units

レートの計算など、表示器の単位が入力単位の組み合わせとなっている場合も、多態性単位を使用することができます。以下に一定間隔当たりの量を計算するVIのフロントパネルを示します。通常、このような簡単なサブVIは作成しません。これは単にサブVI上の2つの多態性単位を示すための例です。Multiple Ratesサンプルは、このVIをサブVIとして使用します。

数量単位が$1、一定間隔の単位が$2であることに注目してください。多態性単位には、1から9までのいずれの数でも使用することができます。

以下にVIのブロックダイアグラムを示します。

複数のレート

以下に、勾配、加速、圧力の3つの異なるレートを計算するVIのフロントパネルを示します。

制御器の2つの単位が複合単位であることに注目してください。上記のRates with Polymorphic UnitsサブVIでは、単一の単位と複合単位の両方を使用できます。

以下にVIのブロックダイアグラムを示します。

Multiple AveragesのブロックダイアグラムとMultiple Ratesのブロックダイアグラムはほとんど同じです。これらのVIはそれぞれ多態性単位の1つのサブVIを使用して、3つの異なる計算を行います。



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

役に立たなかった