VSet ステートメント

適用

  • ビジョンオブジェクト: すべてのビジョンオブジェクト
  • ビジョンシーケンス
  • ビジョンキャリブレーション

解説
VSet は、SPEL+ 言語でプロパティーの値を設定するときに用います。

用法

VSet  Sequence.Property, value
VSet  Calibration.Property, value
VSet  Sequence.Object.Property, value
Sequence
シーケンス名かシーケンス名を示す文字列変数
Calibration
プロパティーの値を設定するキャリブレーション名
Object
プロパティーの値を設定するオブジェクト名。シーケンスかキャリブレーションのプロパティーの設定の場合は省略します。
Property
新たに値を設定するプロパティーの名前
value
新しい値の式。データタイプはプロパティータイプによります。

詳細説明
VSetは、SPEL+ プログラムからビジョンシーケンス、キャリブレーション、ビジョンオブジェクトのプロパティーを設定するのに使用します。プロパティーを設定したあと、VSaveを使用してビジョン設定を保存します。

ビジョンシーケンスの主要なプロパティー設定は、Vision Guideの開発環境の中で行えます。しかし、ビジョンシーケンスの実行前に、SPEL+ プログラムからもプロパティーの値を設定できます。例えば、NumberToFindプロパティーの値をシーケンス実行前に設定したり、同じビジョンシーケンスを2台の異なるカメラで実行したい場合、いずれも、VSetを使用してSPEL+ プログラムで対応できます。

次は、ボード上から検出された穴の数を検出するために、2台の異なるカメラに対して同一のビジョンシーケンスを実行するVision Guideプログラムの例です。

このプログラム実行前に、"FindHoles"シーケンスを作成してください。"FindHoles"は、"Part"というBlobオブジェクトのHolesリザルトから、サーチウィンドウ内で検出した穴の数を取得し、表示します。

VSetをプログラムから呼び出すと、変更はメモリー上でのみ行われ、ビジョンシーケンスは保存されません。新しい設定を保存するには、VSaveを呼び出してください。VSaveを呼び出さなければ、プログラム実行終了後、ビジョンシーケンスは以前に保存した状態にリストアされます。

Function test

  Integer count
  #define CAMERA1 1
  #define CAMERA2 2

  VSet FindHoles.Camera, CAMERA1         ' Find holes for part at camera 1
  VSave
  VRun FindHoles                            ' Run the Vision Sequence
  VGet FindHoles.Part.Holes, count       ' Get the # of holes which were found
  Print "Camera1 holes found =", count

  VSet FindHoles.Camera, CAMERA2         ' Repeat for camera 2
  VSave
  VRun FindHoles
  VGet FindHoles.Part.Holes, count      ' Get the # of holes which were found
  Print "Camera2 holes found =", count

Fend

参照
VGet ステートメント, VSave ステートメント, VRun ステートメント, VSet ステートメント, ビジョンシーケンス