LabVIEWユーザー向けクイックスタートガイド

Aurora Vision StudioとLabVIEWの両方は、データフロープログラミングモデルがデータ処理アプリケーションで非常に有用であるという考え方に基づいています。これにより、両アプリケーションは一般的なレベルでは類似していますが、詳細レベルでは非常に異なります。Aurora Vision Studioは主にマシンビジョンエンジニア向けに設計されており、一方、LabVIEWは「どんな測定または制御システムにも最適なソフトウェア」と宣伝されています。これにより、Aurora Vision Studioはより直列のアルゴリズムに重点を置き、データプレビューがメインウィンドウ内で直接アクセス可能な異なるユーザーインターフェースの完全に異なる設計が生じます。

LabVIEWを以前使用したことがある場合、以下に新しい概念を既存の知識にマッピングすることで、Aurora Vision Studioでの作業をより迅速に開始できるようにするための主な違いのリストがあります:

LabVIEW Aurora Vision Studio ノート
ノード フィルターインスタンス 両環境ともに、これらの要素には複数の入力と出力があり、基本的なデータ処理要素です。
Wires Connections Aurora Vision StudioにおけるConnectionsは、LabVIEWのワイヤーよりもプログラムの複雑さが含まれます。LabVIEWのように、基本的な接続とデータ変換を伴う接続があります(LabVIEW: coercion)。しかしながら、データをループで送信する配列接続や、条件によって実行対象のフィルターが全く実行されない場合がある条件付き接続もあります。
基本データ型 Aurora Vision Studioには、2つの数値データ型があります:整数実数、どちらも32ビットです。また、ブール(LabVIEW: ブール)、文字列、ファイル(LabVIEW: パス)や列挙型もあります。
配列とクラスタ 配列構造体 配列と構造体は、C言語の対応する要素により類似しています。Aurora Vision Studioの配列は多次元にすることができます。例えば、整数の配列の配列を持つことができます。構造体型は事前定義されており、要素は適切なMakeフィルタとAccessフィルタで「バンドル」および「アンバンドル」できます。
ローカル変数 ラベル Aurora Vision Studioのプログラミングモデルは、プロシージャスタイルの変数の代わりにデータフロー接続の使用を強制します。ローカル変数の代わりに、実際には接続を置き換えるビジュアル的なラベルを使用できます。
グローバル変数 グローバルパラメータ LabVIEWのグローバル変数は、同時に実行されるVI間で情報をやり取りするために主に推奨されています。Aurora Vision Studioでは、これは似ています。グローバルパラメータは、Parallel Tasks間やHMIイベントとの通信に使用するべきです。
動的値 / ポリモーフィックVI 汎用フィルタ Aurora Vision Studioの汎用フィルタは、C++プログラミング言語のテンプレートにより類似しています。ユーザーは実際の型を明示的に指定し、したがって環境は接続の型をより正確に制御できます。
ウェーブフォーム プロファイル 2次元チャートで表現できる数値値のシーケンスをプロファイルと呼びます。
仮想インスツルメント
(VI、SubVI)
マクロフィルタ マクロフィルタは、複数の入出力のインターフェースの背後に隠された他のフィルタのシーケンスです。通常のフィルタと同様にプログラムの多くの場所で使用できます。マクロフィルタには個々のフロントパネルはありません。代わりに、Aurora Vision Studioの環境は、出力データのプレビューと入力データの制御を可能にするように設計されています。
フロントパネル HMI Aurora Vision Studioでは、HMI(人間とマシンのインターフェース)は、マシンビジョンシステムのエンドユーザー向けに作成されます。したがって、プロジェクトごとに1つのHMIがあります。プログラムエディタには、HMIコントロールに対応するブロックはありません。アルゴリズムとHMIコントロール間の接続は、「HMI」というラベルで表されます。
For Loop, While Loop 配列接続, タスクマクロフィルタ ループを作成する方法は2つあります。最初の方法は直感的です。ユーザーが配列を含む出力を、単一の要素を受け入れる入力に接続すると、配列接続が使用されます。ここで、for-eachループが暗黙的に作成されます。 2つ目は、LabVIEWの構造体により類似していますが、より暗黙的です。タスクマクロフィルタ全体がループ内で動作します。したがって、ネストされたループが必要な場合は、新しいタスクマクロフィルタを作成するだけです。これらのループは使用されるフィルタによって制御されます。フィルタが新しいデータの生成能力を示すと、より多くの反復が実行されます。
Shift Registers レジスタ Aurora Vision Studioのレジスタは、シフトレジスタと非常に類似しています。1つの違いは、レジスタの型と初期値を明示的に設定する必要があることです。 ステップマクロフィルタは、それらを含むタスクの単一の実行内で、連続した実行間でレジスタの状態を保持します。 スタックされたシフトレジスタはありませんが、代わりにLastTwoObjects / AccumulateElementsフィルタを使用できます。
Case Structures 変数マクロフィルタ タスクマクロフィルタはLabVIEWのWhileループの相当物と考えることができますが、変数マクロフィルタはCase構造の相当物と考えることができます。 セレクターターミナルとケースは、それぞれForkingポートとバリアントと呼ばれます。
Sequence Structures Aurora Vision Studioのすべてのマクロフィルタは順次実行されるため、明示的なシーケンス構造は不要です。
コントロールパレット HMIコントロール
関数パレット ツールボックス
Formula / Expression Nodes 式ブロック 式ブロックは、標準的なテキスト式で値を定義するために使用されます。複数の入力と出力が可能ですが、ループや他のC風の文はありません。 この機能は、LabVIEWのExpressionとFormula Nodesの中間のものです。 C風の文が必要な場合は、Aurora Vision Studioと完全に統合されたC++ユーザーフィルタを使用してください。
ブレークポイント 現在のマクロフィルタを繰り返す タスクマクロフィルタ以外の明示的なループがないため、マクロフィルタは実際にはプログラムのデバッグに最も適した単位です。 選択したマクロフィルタの反復を続行するために、現在のマクロフィルタを繰り返すコマンドを使用できます。
エラー処理 Aurora Vision Studioには エラー入出力 ポートがありません。代わりに、エラー は別々のサブプログラムである エラーハンドラ で処理されます。 ツールの出力を計算できない場合には、条件付き出力 が使用されます。特別な値 Nil は、特別な場合を示しています。これは、実際には交差しない2つの線分の交差点を見つけようとした場合などです。
Call Library Function Node ユーザーフィルタ ユーザーフィルタを使用して、Microsoft Visual C++で書かれたコードの一部を実行できます。ユーザーフィルタの作成および使用プロセスは、高度に自動化されています。