LabVIEW​配列​と​クラスタ​の​説明

概要

​この​記事​では、​配列​と​クラスタ​の​データタイプ​を​調べ、​配列​と​クラスタ​の​作成​および​操作​の​概要​を​説明​し​ます。

配列は要素と次元で構成され、​制御​器​か​表示​器​の​いずれ​か​です。​両方​を​混​ぜ​て​入れる​こと​は​でき​ま​せん。​要素​は、​配列​に​含​ま​れる​データ​または​値​です。​次元​は​配列​の​長​さ、​高​さ、​もしくは​奥行き​です。​配列​は、​類似​データ​の​コレクション​を​使用​し​て​反復​計算​の​履歴​を​保存​する​場合​に​非常​に​役​立ち​ます。

配列​の​要素​に​は​順番​が​付け​ら​れ​てい​ます。​配列​の​各​要素​に​は​それぞれ​対応​する​指標​値​が​あり、​配列​指標​を​使用​し​て​その​配列​の​特定​の​要素​に​アクセス​でき​ます。​NI LabVIEW​ソフトウェア​では、​配列​の​指標​は​ゼロベース​です。​つまり、​1​次元​(1D)​配列​に​n​個​の​要素​が​含​まれ​て​いる​場合、​指標​の​範囲​は​0〜​n – 1​で、​指標​0​は​配列​の​1​番目​の​要素​を​指し、​指標​n – 1​は​配列​の​最後​の​要素​を​指し​ます。

クラスタ​は、​タイプ​の​異なる​データ​要素​を​グループ​化​し​ます。​クラスタ​の​サンプル​は、​ブール​値、​数値、​および​文字​列​を​組み合わせ​た​LabVIEW​エラー​クラスタ​です。​クラスタ​は、​テキスト​ベース​の​プログラミング​言語​における​レコード​または​構造​体​に​似​てい​ます。

配列​と​同様​に、​クラスタ​は​制御​器​か​表示​器​の​いずれ​か​で、​両方​を​混​ぜ​て​入れる​こと​は​でき​ま​せん。​クラスタ​と​配列​の​違い​は、​特定​の​クラスタ​は​固定​サイズ​が​あり、​特定​の​配列​は​サイズ​が​異なる​可能性​が​ある​こと​です。​また、​クラスタ​に​は​混合​データタイプ​を​含める​こと​が​でき​ます​が、​配列​に​含める​こと​が​できる​データタイプ​は​1​つ​だけ​です。

配列​制御​器​および​表示​器​を​作成​する

LabVIEW​で​配列​を​作成​する​に​は、​配列​シェル​を​フロント​パネル​に​配置​し​て​から、​数値、​ブール、​波形​制御​や​表示​器​など​の​要素​を​配列​シェル​内​に​配置​する​必要​が​あり​ます。

  1. 新規​VI​を​作成​し​ます。
  2. フロント​パネル​を​任意​の​場所​で​右​クリック​して制御器パレット​を​表示​し​ます。
  3. コントロールパレット​で、モダン»配列、​行列、​クラスタに​移動​し、配列シェル​を​フロント​パネル​に​ドラッグ​し​ます。

  1. コントロールパレット​で、モダン»数値に移動​し、配列シェル​内​に​数値​表示​器​を​ドラッグ​アンド​ドロップ​し​ます。

  1. マウス​を​配列​の​上​に​置​き、​配列​の​右側​を​ドラッグ​し​て​展開​し、​複数​の​要素​を​表示​し​ます。

前​の​手順​では、​1D​配列​の​作成​について​説明​しま​した。​2D​配列​は​要素​を​グリッド​に​保存​し​ます。​2D​配列​の​各​要素​に​は、​行​指標​と​列​指標​の​2​つ​の​対応​指標​値​が​あり​ます。​この​場合​も、​1D​配列​と​同様、​2D​配列​の​行​と​列​の​指標​は​ゼロベース​です。

 

2D​配列​を​作成​する​に​は、​最初​に​1D​配列​を​作成​し​て​から、​それに​次元​を​追加​する​必要​が​あり​ます。​前​に​作成​した​1D​配列​に​戻り​ます。

  1.  フロント​パネル​で、​指標​表示​を​右​クリック​し​て、​ショートカット​メニュー​から次元​を​追加を​選択​し​ます。

  1.  マウス​を​配列​の​上​に​置​き、​配列​の​コーナー​を​ドラッグ​し​て​展開​し、​複数​の​行​や​列​を​表示​し​ます。

この​時点​まで、​作成​した​配列​の​数値​要素​は​ゼ​ロ​で​淡色​表示​さ​れ​てい​ます。​淡色​表示​の​配列​要素​は、​要素​が​初期​化​さ​れ​てい​ない​こと​を​示し​ます。​要素​を​初期​化​する​に​は、​要素​の​内側​を​クリック​し​て、​淡色​表示​の​0​を​任意​の​数値​に​置​き​換え​ます。

要素​は​任意​の​数値​に​初期​化​でき​ます。​これら​は、​上記​の​値​と​同じ​で​ある​必要​は​ありま​せん。

配列​定数​を​作成​する

配列​定数​を​使用​すると、​定数​データ​を​保存​する​か、​または​他の​配列​と​比較​する​基準​として​保存​でき​ます。

  1.  ブロック​ダイ​ア​グラム​を​右​クリック​して関数パレット​を​開き​ます。
  2. 関数パレット​で、プログラミング»配列に​移動​し、配列​定数を​ブロック​ダイ​ア​グラム​に​ドラッグ​し​ます。

  1.  関数パレット​で、プログラミング»数値移動​し、数値​定数を​配列​定数​シェル​内​に​ドラッグ​アンド​ドロップ​し​ます。

  1. 配列​定数​の​サイズ​を​変更​し、​いくつか​の​要素​を​初期​化​し​ます。


配列​入力/​出力

For​ループ​へ​の​入力​として​配列​を​配線​する​場合、​LabVIEW​は​自動​指標​付け​機能​を​使用​し​て​For​ループ​の​カウント​端子​を​配列​の​サイズ​に​自動​設定​する​オプション​を​提供​し​ます。​アレイ​に​配線​さ​れ​た​ループ​トンネル​を​右​クリック​し、​指標​付け​使用​(不​使用)​を​選択​する​こと​で​自動​指標​付け​オプション​を​有効​または​無効​に​する​こと​が​可能​です。

自動​指標​付け​を​有効​に​すると、​For​ループ​の​各​反復​に、​配列​の​対応​要素​が​渡​さ​れ​ます。

For​ループ​の​出力​として​値​を​配線​する​場合、​自動​指標​付け​を​有効​に​すると​配列​が​出力​さ​れ​ます。​配列​の​サイズ​は、​For​ループ​によって​実行​さ​れる​反復​の​数値​と​等​しく、​For​ループ​の​出力​値​を​含み​ます。

  1. 新規​VI​を​作成​し​ます。ファイル»新規​VIに​移動​し​ます。
  2. 以下​の​配列​定数​と​同様​の​ブロック​ダイ​ア​グラム​で、​6​つ​の​数値​要素​を​含む​2​つ​の​1D​配列​定数​を​作成​し​て​初期​化​し​ます。

  1. フロント​パネル​に​数値​表示​器​の​1D​配列​を​作成​し​ます。​数値​タイプ​を​32​ビット​整数​に​変更​し​ます。​配列​を​右​クリック​し​て、表現»I32を​選択​し​ます。

  1. ブロック​ダイ​ア​グラム​に​For​ループ​を​作成​し、​For​ループ​内​に​加算​関数​を​配置​し​ます。
  2. 配列​定数​の​1​つ​を​For​ループ​に​配線​し、​それ​を​加算​関数​の​x​端子​に​接続​し​ます。

  1.  配列​定数​の​1​つ​を​For​ループ​に​配線​し、​それ​を​加算​関数​の​y​端子​に​接続​し​ます。

  1. 追加​関数​の​出力​端子​を​For​ループ​の​外側​に​配線​し、​数値​表示​器​の​配列​の​入力​端子​に​接続​し​ます。

  1. 最終​的​な​ブロック​ダイ​ア​グラム​と​フロント​パネル​は、​以下​の​よう​に​なり​ます。

  

ブロック​ダイ​ア​グラム

フロント​パネル

  1. フロント​パネル​に​移動​し、​VI​を​実行​し​ます。​数値​表示​器​の​配列​の​各​要素​は、​2​つ​の​配列​定数​の​対応​要素​の​合計​が​入力​さ​れる​こと​を​留意​し​て​くだ​さい。

1​つ​以上​の​ループ​トンネル​で​自動​指標​付け​を​有効​にし、​For​ループ​カウント​端子​を​配線​する​場合、​反復​回数​は​選択肢​の​小さい​方​に​等しい​ことに​注意​し​て​くだ​さい。​たとえば、​下​の​図​では、​For​ループ​カウント​端子​が​15​回​の​反復​を​実行​する​よう​に​設定​さ​れ​て​おり、​配列​1​に​は​10​個​の​要素​が​含​まれ、​配列​2​に​は​20​個​の​要素​が​含​まれ​てい​ます。​下​の​図​の​VI​を​実行​すると、​For​ループ​が​10​回実行され、​配列​結果​に​は​10​個​の​要素​が​含​まれ​ます。​これ​を​試し​て、​自分​の​目​で​確か​め​て​くだ​さい。

以下​の​よう​に、​ネストされた​For​ループ​と​自動​指標​付け​を​使用​し​て​2D​配列​を​作成​でき​ます。​外側​の​For​ループ​が​行​要素​となり、​内側​の​For​ループ​が​列​要素​となり​ます。


クラスタ​を​作成​する

  1.  新規​VI​を​作成​し​ます。
  2.  フロント​パネル​を​任意​の​場所​で​右​クリック​して制御器パレット​を​表示​し​ます。
  3.  コントロールパレット​で、モダン»配列、​マトリックス、​クラスタに​移動​し、クラスタシェル​を​フロント​パネル​に​ドラッグ​し​ます。

 

  1. クラスタシェル​の​サイズ​を​変更​し​て、​複数​の​要素​を​含める​の​に​十分​な​大​き​さ​にし​ます。

 

  1.  コントロールパレット​で、モダン»数値に​移動​し、​クラスタ​シェル​内​に​数値​制御​を​ドラッグ​アンド​ドロップ​し​ます。

  1. コントロールパレット​で、モダン»文字​列​&​パスに移動​し、クラスタシェル​内​に​文字​列​制御​を​ドラッグ​アンド​ドロップ​し​ます。

  1. コントロールパレット​で、モダン»ブールに移動​し、クラスタシェル​内​に​垂直​実​トグルスイッチ​を​ドラッグ​アンド​ドロップ​し​ます。

  1. これ​で、​クラスタ​は​以下​の​よう​に​なり​ます。

これ​で、​ブロック​ダイ​ア​グラム​全体​で、​3​つ​の​別々​の​配線​では​なく​1​つ​の​配線​で​数値、​文字​列、​ブール​制御​を​配線​でき​ます。

クラスタ​定数​を​作成​する

クラスタ​定数​と​同様​に、​クラス​と​定数​から​保存​定数、​または​他の​クラスタ​と​の​比較​基準​として​使​え​ます。​前述​の​手順​で​配列​定数​を​作成​した​とき​と​同じ​方法​で、​クラスタ​定数​を​作成​し​ます。

クラスタ​制御​または​表示​器​が​既に​あり、​同じ​データタイプ​を​含む​クラスタ​定数​を​作成​する​場合​は、​ブロック​ダイ​ア​グラム​で​クラスタ​制御​または​表示​器​の​コピー​を​作成​し、​コピー​を​右​クリック​し​て、​ショートカット​メニュー​から定数​に​変更を​選択​し​ます。

クラスタ​関数

この​チュートリアル​では、​クラスタ​操作​に​よく​使用​さ​れる​4​つ​の​主要​な​クラスタ​関数​を​調べ​ます。​これらはバンドルバンドル​解除名前​で​バンドル名前​で​バンドル​解除の​関数​です。

Bundle関数​を​使用​し​て、​個々​の​要素​から​クラスタ​を​組み立て​ます。​要素をバンドル関数​に​配線​する​に​は、​マウス​を​使用​し​て​関数​の​サイズ​を​変更​する​か、​関数​を​右​クリック​し​て​ショートカット​メニュー​から入力​の​追加を​選択​し​ます。

名前​で​バンドルまたはバンドル関数​を​使用​し​て、​既存​の​クラスタ​を​変更​し​ます。名前​で​バンドル関数​は、バンドル関数​と​同じ​方法​で​サイズ​を​変更​でき​ます。

 

                                   

                               

名前​で​バンドル関数​は、​変更​する​クラスタ​要素​を​正確​に​把握​できる​ため、​既存​の​クラスタ​を​変更​する​とき​に​非常​に​役​立ち​ます。​たとえば、​「文字​列​1」​と​「文字​列​2」​という​ラベル​の​付​い​た​2​つ​の​文字​列​要素​を​含む​クラスタ​を​考慮​し​ます。 バンドル関数​を​使用​し​て​クラスタ​を​変更​すると、​関数​の​端子​は​ピンク色​の​abc​の​形​で​表示​さ​れ​ます。​どの​端末​が​「文字​列​1」​を​変更​し、​「文字​列​2」​を​変更​する​か​は​わか​り​ま​せん。

 

ただし、名前​で​バンドル関数​を​使用​し​て​クラスタ​を​変更​する​場合、​関数​端子​は​要素​ラベル​を​表示​する​ため、​どの​端子​が​「文字​列​1」​を​変更​し、​「文字​列​2」​を​変更​する​か​が​わか​り​ます。

バンドル​解除 関数​を​使用​し、​クラスタ​を​個々​の​要素​に​分解​し​ます。名前​で​バンドル​解除 関数​を​使用​し、​名前​で​指定​した​クラスタ​要素​を​分解​し​ます。​また、バンドルおよび名前​で​バンドル関数​と​同じ​方法​で、​複数​の​要素​に対して​これらの​関数​の​サイズ​を​変更​でき​ます。

 

クラスタ​順序

クラスタ​要素​に​は​シェル​内​の​位置​に​関係​の​ない​論理​上の​順位​が​割り当て​ら​れ​ます。​クラスタ​に​最初​に​配置​さ​れ​た​オブジェクト​が​要素​0、​2​番目​に​は​要素​1​など​の​よう​に​なり​ます。​要素​を​削除​すると、​順序​は​自動的​に​調整​さ​れ​ます。​クラスタ​順位​は​ブロック​ダイ​ア​グラム​内のバンドル関数​およびバンドル​解除関数​上​に​端子​として​表示​さ​れる​要素​の​順位​を​決定​し​ます。​クラスタ​順序​を​表示​した​り、​修正​した​り​する​に​は、​クラスタ​の​枠​線​を​右​クリック​し​て​ショートカット​メニュー​からクラスタ​内​の​制御​器​の​並び​替えを​選択​し​ます。

各​要素​の​白い​ボックス​は、​クラスタ​順序​の​現在​の​位置​を​示し​てい​ます。​黒い​ボックス​は、​順序​の​要素​の​新しい​位置​を​示し​てい​ます。​クラスタ​要素​の​順序​を​設定​する​に​は、クリック​し​て​設定テキスト​ボックス​に​新しい​順序​番号​を​入力​し、​要素​を​クリック​し​ます。​要素​の​クラスタ​順序​が​変更​さ​れる​と、​他の​要素​の​クラスタ​順序​が​自動的​に​調整​さ​れ​ます。​ツール​バーの確認ボタン​を​クリック​し​て​変更​を​保存​し​ます。キャンセルボタン​を​クリック​し、​前​の​状態​に​戻​し​ます。 

Was this information helpful?

Yes

No