説明

画像取得動作の連続ストリームが実行モード中に実行されるパートプログラムのマシンビジョンシステム編集環境

【課題】画像取得動作の連続ストリームが実行モード中に実行されるパートプログラムのマシンビジョンシステム編集環境を提供する。
【解決手段】画像取得動作の連続ストリームが実行モード中に実行されるパートプログラムのためのマシンビジョンシステム編集環境が提供される。一形態では、新しい共通シンタックス及び表現が利用され、2つのステージで実行されるパートプログラムを実行し、そのような連続画像取得動作が通常動作と同じ方法で記録される。最初のステージでは、画像取得の連続ストリームを持つパートプログラムの一部が画像取得動作のためにスキャンされ、画像取得プロセスが開始された後に、画像を取得するために最も効果的な命令が決定される。そして、第2のステージでは、画像取得プロセスが実行されている間に、パートプログラムの一部が再度スキャンされ、そして画像解析動作が実行される。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、概してマシンビジョン検査システムに関し、より具体的には、そのようなシステムで連続高速画像取得を含むパートプログラムの編集環境に関する。
【背景技術】
【0002】
精密なマシンビジョン検査システム(又は略して「ビジョンシステム」)は、被検査物体の精密な寸法測定を取得し、様々な他の物体の要素を検査するために利用することができる。そのようなシステムは、コンピュータと、カメラ及び光学系と、複数の方向に移動可能であり、カメラが検査中のワークピースの要素をスキャンできるようにする精密ステージとを含み得る。市販されている例示的な1つの従来技術によるシステムは、Aurora,ILに所在のMitutoyo America Corporation (MAC)から入手可能なQUICK VISION(登録商標)シリーズのPCに基づくビジョンシステム及びQVPAK(登録商標)ソフトウェアである。QUICK VISION(登録商標)シリーズのビジョンシステム及びQVPAK(登録商標)ソフトウェアの機能及び動作は一般に、例えば、2003年1月に公開されたQVPAK 3D CNC Vision Measuring Machine User's Guide及び1996年9月に公開されたQVPAK 3D CNC Vision Measuring Machine Operation Guideに説明されている。この製品は、例えば、QV-302 Proモデルで例示されるように、顕微鏡型光学系を使用して、ワークピースの画像を様々な倍率で提供し、必要に応じてステージを動かして、任意の単一のビデオ画像の限界を超えてワークピース表面を横断することが可能である。単一のビデオ画像は通常、そのようなシステムの所望の倍率、測定分解能、及び物理的サイズ制限を考えると、観測中又は検査中のワークピースの一部のみしか包含しない。
【0003】
マシンビジョン検査システムは一般に、自動ビデオ検査を利用する。米国特許第6,542,180号では、そのような自動ビデオ検査の様々な態様が教示されている。180号特許において教示されるように、自動ビデオ検査装置は一般に、プログラミング機能を有し、プログラミング機能により、自動検査イベントシーケンスをユーザが特定の各ワークピース構成に関して定義することができる。これは、例えば、テキストに基づくプログラミングにより、グラフィカルユーザインタフェースを用いてユーザが実行する検査動作シーケンスに対応するマシン制御命令シーケンスを記憶することで、検査イベントシーケンスを徐々に「学習」する記録モードを通して、又は両方の組み合わせを通して実施することができる。そのような記録モードは多くの場合、「学習モード」又は「トレーニングモード」と呼ばれる。検査イベントシーケンスが「学習モード」で定義されると、そのようなシーケンスを使用して、「実行モード」中にワークピースの画像を自動的に取得する(且つさらに解析又は検査する)ことができる。
【0004】
ビデオツール(又は略して「ツール」)及び他のグラフィカルユーザインタフェース機能は、手動で使用して、手動での検査及び/又はマシン制御動作を達成し得る(「手動モード」で)。そのセットアップパラメータ及び動作も、学習モード中に記録して、自動検査プログラム又は「パートプログラム」を作成することができる。ビデオツールは、例えば、エッジ/境界検出ツール、オートフォーカスツール、形状又はパターン照合ツール、寸法測定ツール等を含み得る。他のグラフィカルユーザインタフェース機能は、データ解析に関連するダイアログボックス、ステップアンドリピートループプログラミング等を含み得る。例えば、そのようなツールは、上述したQUICK VISION(登録商標)シリーズのビジョンシステム及び関連付けられたQVPAK(登録商標)ソフトウェア等の市販の様々なマシンビジョン検査システムに日常的に使用されている。
【0005】
特定の検査イベントシーケンス(すなわち、各画像を取得する方法及び各取得画像を解析/検査する方法)を含むマシン制御命令は一般に、特定のワークピース構成に固有の「パートプログラム」又は「ワークピースプログラム」として記憶される。例えば、パートプログラムは、ワークピースに対してカメラを位置決めする方法、照明レベル、倍率レベル等の各画像を取得する方法を定義する。さらに、パートプログラムは、例えば、エッジ/境界検出ビデオツール等の1つ又は複数のビデオツールを使用することにより、取得画像を解析/検査する方法を定義する。所定の命令動作シーケンスを実行する命令を有するパートプログラムを作成する能力は、検査再現性の増大並びに1つ又は複数の互換性のあるマシンビジョン検査システムで同じパートプログラムを繰り返し自動的に実行する能力を含め、いくつかの利点を提供する。
【0006】
前に参照したQUICK VISION(登録商標)シリーズのPCに基づくビジョンシステムを例とする、広範囲のワークピースの高速プログラミングを意図する汎用マシンビジョン検査システムでは、従来的には、画像取得動作は、最新の取得画像に対して実行される画像解析動作及び/又は要素検査動作に組み入れられてきた(本明細書では、「組み入れ」型動作と呼ぶ)。しかし、汎用マシンビジョン検査システムがより高いスループットを提供することがますます求められている。一方法によれば、これは、カメラとワークピースステージとの連続相対移動を使用している間に(組み入れ型動作に必要とされるように相対移動の断続的な停止及び開始とは対照的に)画像取得を実行することにより達成し得、それにより、検査スループットが大幅に増大する。そのような動作は、本明細書では、連続移動型動作と呼ばれる。そのようなシステムが、ストローブ光照明を含み、画像のスミア(又はにじみ)なしで連続移動中の画像取得を支援することが有利である。
【0007】
高速生産ラインに使用される高速「インライン」ビジョン検査システムは、連続移動型の画像取得を提供してきた。しかし、そのようなインラインビジョンシステムは通常、単一の生産ライン専用であり、例えば、コンベアシステム上の連続したワークピースの「同じ」画像を何度も繰り返して取得する。そのような場合、画像毎に、移動速度及びストローブ照明パラメータ等は同じである。さらに、ワークピース構成及び/又は画像取得パラメータ等は希にしか変更されない。したがって、そのようなシステムのプログラミング方法は、比較的未熟なユーザによる無制限の様々なワークピース、カメラ位置、画像取得パラメータ等の高速プログラミングに役立っていない。
【0008】
対照的に、経験により、汎用マシンビジョン検査システムが、比較的未熟なユーザによる無制限の様々なワークピース、カメラ位置、画像取得パラメータ等の高速プログラミングに役立つことが極めて重要であることが示された。汎用マシンビジョン検査システムの従来のプログラミング方法は、連続移動型の動作のプログラミングを十分に容易又は高速にしていなかった。さらに、従来のプログラミング方法は、組み入れ型の動作と組み合わせられた連続移動型の動作のプログラミングを十分に容易又は高速にしていなかった。これらの問題及び欠点を別個に、又は組み合わせて解消可能なプログラミングシステム及び方法が望ましい。
【0009】
これらの問題及び欠点のうちのいくつかを解消する従来技術による例示的な一方法は、米国特許第7,590,276号に示されている。276号特許に記載のように、ユーザが、学習モード動作中、関連付けられた画像解析動作に組み入れられた複数の画像取得動作を自然で直観的に理解可能な関係で容易に定義することができるパートプログラミングの方法が提供される。次に、結果として生成されるパートプログラムにおいて、画像のうちの少なくともいくつかの画像取得動作は、画像を取得し、画像を「非組み入れ型」のように記憶する連続移動画像取得シーケンスに自動的に再構成されて、マシンビジョン検査システムのスループットを増大させる。
【発明の概要】
【発明が解決しようとする課題】
【0010】
しかし、276号特許に示されるような特定の従来のプログラミング方法の1つの欠点は、画像取得動作の連続ストリームが通常、学習モード中にユーザにより入力される様々な動作を解析し、「再グループ化」されたプログラミング表現及びシンタックスを使用してパートプログラム命令内で順序を変更又は「再グループ化」し、それにより、画像取得命令が、連続移動を使用して複数の画像を取得するように一緒にグループ化され、対応する画像解析命令が、画像取得命令に続くように変更又は「再グループ化」され、それにより、画像解析動作が連続移動中に高速画像取得に組み入れられない、すなわち、邪魔する必要がないようにすることにより達成されることである。その結果、パートプログラム命令が編集又は表示に呼び出されるとき、画像解析命令は、対応する画像の取得命令から切り離されている。これは、関連する画像取得命令と画像解析命令とが、「関連しない」画像取得命令及び画像処理命令の介在により切り離されるという点で、そのようなシステムのユーザを混乱させることが証明されており、そのような切り離しは非直観的であり、ユーザが「再構成された」パートプログラム命令を読み出すか、又は編集しようとする際の非効率性及びエラーに繋がる。換言すれば、パートプログラム内の画像取得動作を一緒にグループ化するために再構成されたプログラミング表現及びシンタックスは、ユーザにとってのそのようなパートプログラムのプログラミング及び編集をより難しくする。これら及び他の欠点を解消して、精密マシンビジョン検査システムの連続した画像取得パートプログラムのプログラミング及び編集をより効率的、直観的、且つ柔軟にすることができるパートプログラミングシンタックス並びに編集動作及び機能が必要である。
【課題を解決するための手段】
【0011】
本概要は、詳細な説明においてさらに後述する選択された概念を簡易化された形態で紹介するために提供される。本概要は、特許請求される趣旨の主要な特徴を識別する意図はなく、特許請求される趣旨の範囲を判断する際の助けとして使用される意図もない。
【0012】
本発明の一態様によれば、画像取得動作の連続又は途切れない連続ストリームが、実行モード中に実行される精密マシンビジョンシステム編集環境が、パートプログラムに提供される。精密マシンビジョン検査システムは、撮像部と、撮像部の視野(FOV)内に1つ又は複数のワークピースを保持するステージと、制御部と、ディスプレイと、ユーザインタフェースとを含む。
【0013】
本発明の別の態様によれば、マシンビジョン検査システムは学習モードをさらに含み、学習モードは、マシンビジョン検査システムの動作を制御すべくユーザ入力を受け取り、被制御動作に対応する命令を記録して、パートプログラムを作成するように動作可能である。学習モードは、パートプログラムを編集し、実行の編集モードに従って前に記録されたパートプログラム命令を実行するようにも動作可能である。学習モードは、ユーザ制御可能なストリームモード命令要素及びパートプログラム命令の編集可能パートプログラム表現等のユーザインタフェース機能を含む。ユーザ制御可能なストリームモード命令要素は、ストリームモード実行に指定されたパートプログラムのセグメントを含むストリームモードセグメントの指定に使用可能である。様々な実施形態では、ストリームモード実行は、連続移動シーケンス中に順番に画像取得動作を実行することを含み得、連続移動シーケンスでは、ステージ及び撮像部が互いに連続して移動して、少なくとも2つの画像を取得する。編集可能パートプログラム表現は、画像取得動作に対応する画像取得命令表現、画像解析動作に対応する画像解析命令表現、及びストリームモードセグメント表現を含む。
【0014】
本発明の別の態様によれば、マシンビジョン検査システムは実行モードを含み、実行モードは、前に作成されたパートプログラムを実行するように動作可能であり、実行モードは、ストリームモードセグメント内にないパートプログラム命令を実行する非ストリームモードと、ストリームモードセグメント内にあるパートプログラム命令を実行するストリームモードとを含む。
【0015】
本発明の別の態様によれば、学習モードは、編集可能パートプログラム表現が、対応する被制御動作がパートプログラム作成のために実行された順に対応する第1の順で、画像取得命令及び対応する画像解析命令を含む第1の複数のパートプログラム命令を表現するように構成される。さらに、学習モードは、実行の編集モードが、第1の複数のパートプログラム命令のうちのパートプログラム画像取得命令及び対応する画像解析命令を実行して、第1の複数のパートプログラムの画像取得命令及び対応する画像解析命令がストリームモードセグメントに含まれるか否かに関係なく、第1の順に一致するように、画像取得動作及び対応する画像解析動作を実行するようにさらに構成される。
【0016】
本発明の別の態様によれば、実行モードは、ストリームモードが、第1の複数のパートプログラムがストリームモードセグメントに含まれる場合、第2の順に従って第1の複数のパートプログラムの画像取得命令及び対応する画像解析命令を実行するように構成される。一実施形態では、第2の順は、第1の複数のパートプログラムの画像取得命令を実行して、対応する画像解析動作の実行に依存せずに、対応する画像取得動作を順番に実行することを含む。さらに、第2の順は、対応する画像が取得された後、第1の複数のパートプログラムの画像解析命令を実行して、対応する画像解析動作を実行することをさらに含み得る。一実施形態では、対応する画像が取得された後の画像解析動作の実行は、画像取得動作の順番中に行われる。
【0017】
本発明の別の態様によれば、順番での画像取得動作の実行は、連続移動シーケンス中に行われ、連続移動シーケンスでは、ステージ及び撮像部は互いに連続して移動(例えば、ステージが撮像部に対して連続して移動)して、画像を取得する。いくつかの構成では、ステージの移動は、ワークピースを水平面(例えば、X−Y平面)で物理的に移動させるが、撮像部は移動させないように動作可能であってもよく、その一方で、ステージの移動は、撮像部を垂直方向(例えば、Z方向)に移動させるが、ワークピースは移動させないように動作可能であってもよい。他の構成では、ステージの移動は、ワークピースを一水平方向(例えば、X方向)でのみ物理的に移動させ、撮像部を移動させないように動作可能であってもよく、その一方で、ステージの移動は、撮像部を異なる水平方向(例えば、Y方向)及び垂直方向(例えば、Z方向)で移動させるが、ワークピースは移動させないように動作可能であってもよい。様々な実施形態では、画像取得動作は、少なくとも2つの画像に対して連続移動シーケンスで実行される。
【0018】
本発明の別の態様によれば、対応する画像が取得された後の画像解析動作の実行は、少なくとも部分的に、画像取得動作の順番中に実行される。
【0019】
本発明の別の態様によれば、実行の非ストリームモードは、ストリームモードセグメント内にない第1の複数のパートプログラム命令の画像取得命令及び対応する画像解析命令を実行して、画像取得動作及び対応する画像解析動作を第1の順に一致するように実行する。
【0020】
本発明の別の態様によれば、学習モードは、ストリームモードセグメントを含むパートプログラムが編集に呼び出される場合、編集可能パートプログラム表現が第1の順に表示されるように構成され、実行の編集モードは、画像取得動作及び対応する画像解析動作を第1の順に一致するように実行する。本発明の別の態様によれば、学習モードは、ユーザが、ストリームモードセグメントに含まれるパートプログラム命令表現を、対応するパートプログラム命令の実行の編集モードを開始する場所として選択し得るように構成され、その後、続くパートプログラム命令は、第1の順に一致するように実行される。本発明の別の態様によれば、続くパートプログラム命令は、第1の順に一致するように実行される。
【0021】
本発明の別の態様によれば、ストリームモードセグメントは、第1の命令セット及び第2の命令セットを含み、第1の命令セットは、第1の画像取得命令と、第1のビデオツールのビデオツール命令を含む第1の画像解析命令とを含み、第2の命令セットは、第2の画像取得命令と、第2のビデオツールのビデオツール命令を含む第2の画像解析命令とを含み、実行の編集モード中、第1の画像取得命令及び第1のビデオツールのビデオツール命令を含む第1の画像解析命令は、第2の画像取得命令及び第2のビデオツールのビデオツール命令を含む第2の画像解析命令の実行を開始する前に実行される。実行モード中、ストリームモード命令要素により、ストリームモードセグメントがストリームモードで実行され、実行の実行モードのストリームモードセグメントの実行中、第1及び第2の画像取得命令が、第1及び第2のビデオツールのビデオルール命令を含む対応する第1及び第2の画像解析動作の実行に依存せずに、順番に実行される。本発明の別の態様によれば、第1及び第2のビデオツールは、エッジ検出ビデオツールを含む。
【0022】
本発明の別の態様によれば、パートプログラムは、非ストリームモードセグメントをさらに含み、学習モード中、非ストリームモードセグメントは、非ストリームモードセグメントにストリームモード命令要素がないことにより、ストリームモードセグメントから区別され、非ストリームモードセグメントは、第3の命令セット及び第4の命令セットを含み、第3の命令セットは、第3の画像取得命令と、第3のビデオツールのビデオツール命令を含む第3の画像解析命令とを含み、第4の命令セットは、第4の画像取得命令と、第4のビデオツールのビデオツール命令を含む第4の画像解析命令とを含み、実行の編集モード中、第3の画像取得命令及び第3のビデオツールのビデオツール命令を含む第3の画像解析命令は、第4の画像取得命令及び第4のビデオツールのビデオツール命令を含む第4の画像解析命令の実行を開始する前に実行される。実行モード中、非ストリームモードセグメントは、非ストリームモードセグメントにストリームモード命令要素がないことにより、非ストリームモードで実行され、非ストリームモードセグメントの実行の実行モード中、第3及び第4の画像取得命令が、第3及び第4のビデオツールのビデオルール命令を含む対応する第3及び第4の画像解析動作の実行に依存せずに、順番に実行される。
【0023】
本発明の別の態様によれば、ストリームモードセグメントを含むパートプログラム命令が編集に呼び出されると、編集可能パートプログラム表現が第1の順で表示され、実行の編集モードは、画像取得動作及び対応する画像解析動作を第1の順に一致するように実行する。
【0024】
本発明の別の態様によれば、学習モード中、ユーザは、ストリームモードセグメント内の任意のパートプログラム命令を、パートプログラム命令の実行を開始する場所として選ぶことができ、その後、続くパートプログラム命令は、第1の順に一致するように実行される。
【0025】
本発明の別の態様によれば、ストリームモードセグメントは、第1の命令セット及び第2の命令セットを含む。第1の命令セットは、第1の画像取得命令と、第1のビデオツールのビデオツール命令を含む第1の画像解析命令とを含み、第2の命令セットは、第2の画像取得命令と、第2のビデオツールのビデオツール命令を含む第2の画像解析命令とを含む。一実施形態では、実行の編集モード中、第1の画像取得命令及び第1のビデオツールのビデオツール命令を含む第1の画像解析命令は、第2の画像取得命令及び第2のビデオツールのビデオツール命令を含む第2の画像解析命令の実行を開始する前に実行される。次に、実行モード中、ストリームモード命令要素により、ストリームモードセグメントがストリームモードで実行される。ストリームモードセグメントの実行の実行モード中、第1及び第2の画像取得命令が、第1及び第2のビデオツールのビデオルール命令を含む対応する第1及び第2の画像解析動作の実行に依存せずに、順番に実行される。一実施形態では、第1及び第2のビデオツールは、エッジ検出ビデオツールを含む。
【0026】
本発明の別の態様によれば、パートプログラムは、非ストリームモードセグメントをさらに含み、学習モード中、非ストリームモードセグメントは、非ストリームモードセグメントにストリームモード命令要素がないことにより、ストリームモードセグメントから区別される。一実施形態では、非ストリームモードセグメントは、第3の命令セット及び第4の命令セットを含む。第3の命令セットは、第3の画像取得命令と、第3のビデオツールのビデオツール命令を含む第3の画像解析命令とを含み、第4の命令セットは、第4の画像取得命令と、第4のビデオツールのビデオツール命令を含む第4の画像解析命令とを含む。実行の編集モード中、第3の画像取得命令及び第3のビデオツールのビデオツール命令を含む第3の画像解析命令は、第4の画像取得命令及び第4のビデオツールのビデオツール命令を含む第4の画像解析命令の実行を開始する前に実行される。次に、実行モード中、非ストリームモードセグメントが、非ストリームモードセグメントにストリームモード命令要素がないことにより、非ストリームモードで実行される。非ストリームモードセグメントの実行の実行モード中、第3及び第4の画像取得命令が、第3及び第4のビデオツールのビデオルール命令を含む対応する第3及び第4の画像解析動作の実行に依存せずに、順番に実行される。
【0027】
本発明の別の態様では、学習モード中、第1及び第2の命令セットは、第1の順に実行され、第1及び第2の画像取得命令のうちの少なくともいくつかは、第1のビデオツール及び第2のビデオツールのビデオツール命令に組み入れられ、命令は第1の順でユーザインタフェースに表示される。次に、実行モード中、ストリームモードで、ストリームモードセグメントに対応するパートプログラム命令が処理されて、画像取得ルーチンが決定され、画像取得ルーチンは、第1及び第2の命令セットの画像取得命令を含むが、ビデオツール命令を含まず、画像取得ルーチンが実行されて画像を取得し、画像取得ルーチンが実行されている間、ビデオツール命令が実行される。
【0028】
本発明の別の態様によれば、実行モード中、ストリームモードで、ストリームモードセグメントの2回目の実行中にビデオツール命令の実行の少なくとも一部分は、画像取得ルーチンの実行と並行して行われる。
【0029】
本発明の別の態様によれば、実行モード中での画像取得ルーチンの実行中、複数の画像取得命令が順番に実行され、その時間中、学習モード中に組み入れられた任意のビデオツール命令はまだ実行されず、それにより、命令は第1の順とは異なる第2の順で実行される。
【0030】
本発明の別の態様によれば、実行モード中、画像取得ルーチンが実行される場合、ステージ及び撮像部は互いに連続して移動して、画像を取得する。
【0031】
本発明の別の態様によれば、パートプログラムのストリームモードセグメントは、ストリームモードセグメントの冒頭及び末尾において指定されたストリームモード命令表現により識別される。
【0032】
本発明の別の態様によれば、学習モード中、ストリームモードセグメント内のパートプログラム命令パートプログラム表現として表示され、ストリームモードセグメント外にある同様のパートプログラム命令の表現と同一の外観を有するようになされ、それにより、ユーザは、ストリームモードセグメント外とは対照的に、ストリームモードセグメント内の動作をプログラム又は編集する場合、異なるプログラミング表現又はシンタックスを使用する必要がない。
【0033】
本発明の上記態様及び付随する利点の多くは、添付図面と併せて解釈される場合、以下の詳細な説明を参照することによってよりよく理解されるため、より容易に理解されよう。
【図面の簡単な説明】
【0034】
【図1】汎用精密マシンビジョン検査システムの様々な典型的な構成要素を示す図である。
【図2】図1と同様であり、本発明による機能を含むマシンビジョン検査システムの制御システム部と、ビジョン構成要素部とのブロック図である。
【図3】画像取得動作の連続ストリームが実行モード中に実行されるストリームモードセグメントを含む、パートプログラムの表現を含む編集インタフェースの図である。
【図4】図3のパートプログラムが実行されるワークピースの一部分を含むユーザインタフェースの図である。
【図5A】ストリームモードセグメントを含むパートプログラムに編集環境を提供するルーチンの一実施形態の流れ図である。
【図5B】ストリームモードセグメントを含むパートプログラムに編集環境を提供するルーチンの一実施形態の流れ図である。
【発明を実施するための形態】
【0035】
図1は、本明細書に記載の方法により使用可能な例示的な1つのマシンビジョン検査システム10のブロック図である。マシンビジョン検査システム10はビジョン測定機12を含み、ビジョン測定機12は、データ及び制御信号を交換するように、制御コンピュータシステム14に動作可能に接続される。制御コンピュータシステム14は、データ及び制御信号を交換するように、モニタ又はディスプレイ16、プリンタ18、ジョイスティック22、キーボード24、及びマウス26とさらに動作可能に接続される。モニタ又はディスプレイ16は、マシンビジョン検査システム10の動作の制御及び/又はプログラミングに適したユーザインタフェースを表示し得る。
【0036】
ビジョン測定機12は、可動式ワークピースステージ32と、光学撮像システム34とを含み、光学撮像システム34はズームレンズ又は交換式レンズを含み得る。ズームレンズ又は交換式レンズは一般に、光学撮像システム34により提供される画像に様々な倍率を提供する。マシンビジョン検査システム10は一般に、上述したQUICK VISION(登録商標)シリーズのビジョンシステム及びQVPAK(登録商標)ソフトウェア並びに同様の先端技術の市販されている精密マシンビジョン検査システムに類似する。マシンビジョン検査システム10は、本願と同じ譲受人に譲渡された米国特許第7,454,053号及び同第7,324,682号並びに米国特許出願公開第2010/0158343号及び同第2011/0103679号にも記載されている。
【0037】
図2は、図1のマシンビジョン検査システムと同様であり、本発明による機能を含むマシンビジョン検査システム100の制御システム部120と、ビジョン構成要素部200とのブロック図である。より詳細に後述するように、制御システム部120は、ビジョン構成要素部200の制御に利用される。ビジョン構成要素部200は、光学アセンブリ205と、光源220、230、及び240と、中央透明部212を有するワークピースステージ210とを含む。ワークピースステージ210は、ワークピース20を位置決めし得るステージ表面に略平行する平面内にあるX軸及びY軸に沿って制御可能に移動可能である。光学アセンブリ205は、カメラ系260と、交換式対物レンズ250とを含み、レンズ286及び288を有するタレットレンズアセンブリ280を含み得る。タレットレンズアセンブリに対する代替として、固定レンズ、又は手動で交換可能な倍率変更レンズ、又はズームレンズ構成等を含み得る。光学アセンブリ205は、制御可能なモータ294を使用することにより、X軸及びY軸に略直交するZ軸に沿って制御可能に移動可能である。
【0038】
マシンビジョン検査システム100を使用して撮像すべきワークピース20又は複数のワークピース20を保持したトレイ若しくは固定具は、ワークピースステージ210に配置される。ワークピースステージ210は、光学アセンブリ205と相対移動するように制御し得、それにより、交換式対物レンズ250は、ワークピース20上の位置間及び/又は複数のワークピース20間で移動する。透過照明光220、落射照明光230、及び斜め照明光240のうちの1つ又は複数は、光源光222、232、又は242のそれぞれを発して、1つ又は複数のワークピース20を照明する。光源光はワークピース光255として反射又は透過し、交換式対物レンズ250及びタレットレンズアセンブリ280を通過し、カメラ系260に集められる。カメラ系260により捕捉されたワークピース20の画像は、信号線262上で制御システム部120に出力される。光源220、230、及び240は、信号線又はバス221、231、及び241のそれぞれを通して制御システム部120に接続し得る。画像の倍率を変更するには、制御システム部120は、信号線又はバス281を通して、軸284に沿ってタレットレンズアセンブリ280を回転させて、タレットレンズを選択し得る。
【0039】
様々な例示的な実施形態では、光学アセンブリ205は、制御可能なモータ294を使用してワークピースステージ210に対して垂直なZ軸方向に移動可能であり、制御可能なモータ294は、アクチュエータ、接続ケーブル等を駆動して、光学アセンブリ205をZ軸に沿って移動させ、カメラ系260により捕捉されるワークピース20の画像のフォーカスを変更する。本明細書で使用される場合、Z軸という用語は、光学アセンブリ205により得られた画像のフォーカスに使用されることを意図される軸を指す。制御可能なモータ294は、使用される場合、信号線296を介して入出インタフェース130に接続される。
【0040】
図2に示されるように、様々な例示的な実施形態では、制御システム部120は、コントローラ125と、入出インタフェース130と、メモリ140と、ワークピースプログラム生成・実行器170と、電源部190とを含む。これらの構成要素のそれぞれ並びに後述する追加の構成要素は、1つ若しくは複数のデータ/制御バス及び/又はアプリケーションプログラミングインタフェースにより、或いは様々な要素間の直接接続により相互接続し得る。
【0041】
本発明による様々な実施形態では、ワークピースプログラム生成・実行器170は編集部172を含み、編集部172は、より詳細に後述するように、パートプログラムの編集に関連する様々な動作及びユーザインタフェース機能を提供又はアクティブ化する。「ワークピースプログラム」及び「パートプログラム」という用語を本明細書では同義で使用し得ることが理解されよう。一般に、編集部172は、編集機能の動作を制御する編集動作コントローラ174と、編集機能のユーザインタフェース機能を提供する編集インタフェース176とを含む。ワークピースプログラム生成・実行器170はストリームモード部178も含み、ストリームモード部178は、より詳細に後述するように、本発明に関連付けられた様々な機能を提供する。
【0042】
図2に示されるように、入出力インタフェース130は、撮像制御インタフェース131と、移動制御インタフェース132と、照明制御インタフェース133と、レンズ制御インタフェース134とを含む。移動制御インタフェース132は、位置制御要素132aと、速度/加速度制御要素132bとを含み得るが、そのような要素は統合且つ/又は区別不可能であってもよい。照明制御インタフェース133は、例えば、マシンビジョン検査システム100の様々な対応する光源の選択、電力、オン/オフ切り替え、及び該当する場合にはストローブパルスタイミングを制御する照明制御インタフェース133a〜133nを含む。
【0043】
メモリ140は、画像ファイルメモリ部141と、1つ又は複数のパートプログラム等を含み得るワークピースプログラムメモリ部142と、ビデオツール部143とを含む。ビデオツール部143は、ビデオツール部143aと、他のビデオツール部(例えば、143m)とを含み、他のビデオツール部は、対応する各ビデオツールのGUI、画像処理動作等を決定する。多くの既知のビデオツールが、上述したQUICK VISION(登録商標)シリーズのビジョンシステム及び関連付けられたQVPAK(登録商標)ソフトウェア等の市販のマシンビジョン検査システムに含まれる。ビデオツール部143は関心領域(ROI)生成器143xも含み、関心領域生成器143xは、ビデオツール部143に含まれる様々なビデオツールで動作可能な様々なROIを画定する自動、半自動、及び/又は手動の動作をサポートする。
【0044】
一般に、メモリ部140は、ワークピース20の取得画像が所望の画像要素を有するように、ワークピース20の画像を捕捉又は取得するビジョンシステム構成要素部200の動作に使用可能なデータを記憶する。メモリ部140は、検査結果データも記憶し得、取得画像に対して様々な検査動作及び測定動作を手動又は自動で実行して(例えば、部分的にビデオツールとして実施される)、入出力インタフェース130を通して結果を出力するようにマシンビジョン検査システム100を動作させるために使用可能なデータをさらに記憶し得る。メモリ部140は、入出力インタフェース130を通して動作可能なユーザインタフェースを定義するデータを含むこともできる。
【0045】
透過照明光220、落射照明光230、及び斜め照明光240のそれぞれの信号線又はバス221、231、及び241はすべて、入出力インタフェース130に接続される。カメラ系260からの信号線262及び制御可能なモータ294からの信号線296は、入出力インタフェース130に接続される。画像データの搬送に加えて、信号線262は、画像取得を開始する信号をコントローラ125から搬送し得る。
【0046】
1つ又は複数のディスプレイ装置136(例えば、図1のディスプレイ16)及び1つ又は複数の入力装置138(例えば、図1のジョイスティック22、キーボード24、及びマウス26)も、入出力インタフェース130に接続することができる。ディスプレイ装置136及び入力装置138を使用して、ユーザインタフェースを表示することができ、ユーザインタフェースは、検査動作の実行並びに/或いはパートプログラムの作成及び/又は変更に使用可能な様々なユーザインタフェース機能を含み、カメラ系260により捕捉された画像を表示し、且つ/又はビジョンシステム構成要素部200を直接制御し得る。
【0047】
様々な例示的な実施形態では、ユーザは、マシンビジョン検査システム100を利用して、ワークピース20のパートプログラムを作成する場合、ワークピースプログラミング言語を使用して明示的に命令を自動的、半自動的、又は手動でコーディングすることにより、且つ/又は学習モードでマシンビジョン検査システム100を動作させて、命令を生成することにより、パートプログラム命令を生成して、所望の画像取得トレーニングシーケンスを提供する。例えば、トレーニングシーケンスは、ワークピース要素を視野(FOV)内に位置決めすること、光レベルを設定すること、フォーカス又はオートフォーカスすること、画像を取得すること、及び画像に適用される解析トレーニングシーケンスを提供すること(例えば、ビデオツールを使用して)を含み得る。学習モードは、シーケンスを捕捉又は記録し、対応するパートプログラムステップ(すなわち、命令)に変換するように動作する。これらのパートプログラムステップは、パートプログラムが実行される場合、マシンビジョン検査システムにトレーニングされた画像取得及び解析動作を再生させ、パートプログラム作成時に使用されたワークピースに一致する1つ又は複数のワークピースを自動的に検査させる。
【0048】
関連する編集機能及び動作も、「リアルタイムコンテキスト生成機能を含むマシンビジョンシステムプログラム編集環境」(代理人整理番号MEIP138167)、「同期ユーザインタフェース機能を含むマシンビジョンシステムプログラム編集環境」(代理人整理番号MEIP138244)、及び「マシンビジョンシステムのパートプログラム編集環境内で編集初期化ブロックを利用するシステム及び方法」(代理人整理番号MEIP137678)という名称の特許出願に記載されている。
【0049】
図3は、選択バー310等の様々な測定及び/又は動作選択バーと、非ストリームモードセグメント表現330及びストリームモードセグメント表現340を含む様々なパートプログラム命令に対応するパートプログラム320の編集可能な表現とを含む編集インタフェース300の図である。非ストリームモードセグメント表現330は、パートプログラム命令表現セット331及び332を含み、ストリームモードセグメント表現340は、パートプログラム命令表現セット341〜349を含む。ストリームモードセグメント340は、より詳細に後述するように、ストリームモード実行に指定されたパートプログラム320のセグメントである。特定のパートプログラム命令331〜349の動作については図4に関してより詳細に後述する。
【0050】
図4は、ワークピース415の一部分を有する視野ウィンドウ410を含むユーザインタフェース400を示す図である。ユーザインタフェース400は、選択バー420及び440、リアルタイムX−Y−Z(位置)座標ウィンドウ430、光制御ウィンドウ450、並びにビデオツールパラメータボックス460等の様々な測定及び/又は動作選択バーも含む。より詳細に後述するように、ワークピース415の様々な要素は、図3の関連するパートプログラム命令に従って特定される。
【0051】
以下の説明では、図3のパートプログラム命令表現321〜350と、図4のワークピース415に関する対応する動作との両方を参照する。図3に示されるように、パートプログラム320は、命令表現321、331、及び332で開始され、命令表現321、331、及び332は、プロローグノードを示し、光が設定され、ステージが所望の位置に移動することのそれぞれを示す。図4に関して、光の設定は、視野ウィンドウ410内の照明に関して可視であり、ステージの移動は、視野ウィンドウ410内で可視であり、リアルタイムX−Y−Z(位置)座標ウィンドウ430に示される。より詳細に後述するように、命令表現331及び332は、非ストリームモードセグメント表現330の一部分であり、図3の図では、ストリームモードセグメント表現340が後に続く。説明のために、非ストリームモードセグメント表現330は2つのみの命令表現を含むようになされたが、より詳細な実施形態では、より詳細に後述するように、ビデオツール命令表現等のより多数の命令表現を含み得ることが理解されよう。
【0052】
命令表現341はストリームモード命令要素であり、ストリームモードセグメント340の開始を指定する。命令表現341は、例えば、プログラムメニュー360下のメニュー選択を通して、ストリームモード部178をアクティブ化することにより挿入し得る。次に、命令表現342、343、344、及び345のそれぞれは、倍率が設定され、経路平滑化がオフになり、許される移動が設定され、光が設定されることを示す。
【0053】
次に、命令表現346は、対応する命令表現346A〜346Cに示されるように、円ツールが開かれて、円C1を測定することを示す。より具体的には、命令表現346Aは、測定のセットアップ(例えば、指定位置へのステージの移動及び対応する画像の取得を含む)を示し、その一方で、命令表現346Bは、円ツールを利用して、取得画像内にある円C1のエッジ点を特定することを示す。円ツール及び他のエッジ検出ビデオツールの機能及び動作は当分野で既知であり、前に参照した文献に詳細に説明されている。図4に示されるように、円ツールは、視野ウィンドウ410内に、ワークピース415に重なった円要素(例えば、円C1等)として示される。次に、命令表現346Cが円ツールにより特定されたエッジ点を利用して、円C1を画定する。
【0054】
同様に、命令表現347及び348は、対応する命令表現347A〜347C及び348A〜348Cのそれぞれで示されるように、円ツールが開かれて、円C2及びC3を測定することを示す。より具体的には、命令表現347A及び348Aは、測定のセットアップ(例えば、指定位置へのステージの移動及び対応する画像の取得を含む)を示し、命令表現347B及び348Bは、円ツールを利用して、取得画像内にある円C2及びC3のエッジ点を特定することを示す。図4を参照して、これは、対応する画像を取得するために、視野ウィンドウ415が円要素C1から円要素C2及びC3のそれぞれへの移動を示すように、ステージが移動することを示す。次に、命令表現347C及び348Cが円ツールにより特定されるエッジ点を利用して、円C2及びC3を画定する。命令表現349は、ストリームモードセグメント340の終了を指定するストリームモード命令要素である。命令表現350は、パートプログラムの終了を示す。
【0055】
パートプログラム320の最初の作成に関して、パートプログラム命令は、ユーザ入力に従って(例えば、ユーザインタフェースを通して提供されて、マシンビジョン検査システムの動作を制御する)学習モード中に記録される。その後、編集モード中、上述したパートプログラム命令表現321〜350が、図3の編集インタフェース300等の編集インタフェースに提供されて、対応するパートプログラム命令(例えば、プログラミング言語で書かれた)を、便宜及び使いやすさのために簡易化された形態で表現する。より詳細に後述するように、ストリームモードセグメント340内のパートプログラム命令表現341〜349のシーケンスは、編集モードにおいて第1の順(すなわち、図3に示される順)で表現されるが、実行モード中、本発明によれば、対応するパートプログラム命令を第2の順で実行し得る。
【0056】
より具体的には、一実施形態では、実行モードは、識別されたストリームセグメントに適用可能な実行のストリームモードを含み、ストリームモードは、ストリームモードセグメント表現340に対応するパートプログラム命令が処理されて、ストリームセグメント内に含まれる画像取得動作(例えば、複数の画像取得動作)を識別するように構成される。複数の画像の画像取得プロセスは、この処理により可能になるとすぐに開始し得る。さらに、ストリームモードセグメント表現340に対応するパートプログラム命令を処理して、取得画像に対応する画像解析動作を識別し、識別された画像解析命令(例えば、ビデオツール動作)は、画像取得動作シーケンスを邪魔しない(例えば、画像の取得に使用される連続移動を、画像解析動作に依存せずに続け得る)場合、対応する画像が取得されるとすぐに開始し得る。
【0057】
具体例として、パートプログラム320の動作順は、以下のように実行される。プロローグノードの命令表現321並びに光を設定しステージを移動させる命令表現331及び332(非ストリームモードセグメント表現330の一部分)は、示される順に実行される。上述したように、命令表現341に達すると、これは、ストリームモード処理を開始するストリームモードセグメント表現340の開始を示す。ストリームモードで、ストリームモードセグメント340の1回目の実行を行い、画像取得動作のリストを決定し、次に、この動作リストが実行され、次に、2回目の実行を行って画像解析動作(例えば、ビデオツール動作)の実行を開始する。
【0058】
より具体的には、ストリームモードセグメント340の1回目の実行では、一実施形態では、画像取得に必要なあらゆる動作が、画像取得ルーチンのリストに追加され、その一方で、画像取得動作に必要ないあらゆる動作は無視される。したがって、特定の一実施形態例では、画像取得に向けてマシンビジョン検査システムをセットアップするすべての部分である命令表現342〜345は、画像取得ルーチンの一部分である動作リストに追加される。対照的に、円測定ツールを開く必要があることを示すパートプログラム命令表現346は、対応する画像の取得に必要とされないため、画像取得ルーチンのリストに追加されない。しかし、測定のセットアップを示し、所定位置に移動し、画像を集めることを含む命令表現346Aは、画像取得ルーチンのリストに追加される。円ツールの実行及び円の画定に関連する命令表現346B及び346Cは、画像取得に必要とされないため、リストに追加されずに無視される。同様にして、命令表現347は無視され、命令表現347Aはリストに追加され、命令表現347B、347C、及び348は無視され、命令表現348Aはリストに追加され、命令表現348B及び348Cは無視される。
【0059】
ストリームモードセグメント340を最初に実行した後、画像取得ルーチンが命令表現342〜345、346A、347A、及び348Aに従って特定されると、画像取得ルーチンの実行が開始される。画像取得ルーチンが実行されている間、ストリームモードセグメント340の2回目の実行が行われ、その間、画像解析動作(例えば、ビデオツール動作)が実行される。2回目の実行中、一実施形態では、いかなる画像解析動作も含まない命令表現342〜345は無視される。円測定を開く必要があることを示す命令表現346は実行される。
【0060】
より詳細に後述するように、命令表現346Aは、画像取得動作及び画像解析動作の両方を示す特殊な場合である。手短に言えば、2回目の実行中、前に画像取得動作を示した命令表現346Aは、画像をロードする必要があることも示し、これは画像解析動作であるため、実行される。より具体的には、命令表現346Aにより示された画像が、上述したように開始された画像取得ルーチンによりすでに取得されている場合、画像がロードされる。画像がまだ取得されていない場合、画像が画像取得ルーチンにより取得されるまで、2回目の実行プロセスは一時的に中断する。したがって、命令表現346Aに示されるように、特定の命令表現は、ストリームモードセグメント340の1回目及び2回目の実行の両方中に実行される動作を示し得る。
【0061】
命令表現346Aの実行後、2回目の実行が命令表現346B及び346Cを用いて続けられ、これらの命令表現は、円ツールを実行し、円ツールにより特定されたエッジ点に従って円C1を画定するために実行される。同様に、命令表現347が実行され、円C2の対応する画像をロードする命令表現347Aは、画像が画像取得ルーチンにより取得されている場合は実行され、画像がまだ取得されていない場合には、画像の取得を待つ。命令表現347Aの実行後、命令表現347B、347C、及び348が実行され、命令表現348Aは、対応する画像がある場合には実行され、画像がまだ取得されていない場合には画像の取得を待つ。命令表現348Aの実行後、命令表現348B及び348Cが実行され、命令表現349は、ストリームモードセグメント340の終了及びストリームモードの終了を示す。追加の命令表現がストリームモードセグメント340の後に続く実施形態では、これらがストリームモード外にあり、非ストリームモードセグメント330の命令要素331及び332と同様に、非ストリームモードに従って示される順に実行されることが理解されよう。
【0062】
ストリームモードセグメントに関して上述した動作及び編集環境が、特定の従来技術による実施よりも有利なことが理解されよう。より具体的には、特定の従来の実施では、コマンドの明示的なリストを画像取得に利用し、異なる明示的なコマンドリストを取得された画像の解析に利用していた。連続移動型の画像取得を達成するには、プログラミング時に、画像取得命令を別個のリストに編成し、異なるプログラム表現及びシンタックスでパートプログラム内にあった。これにより、対応するパートプログラムの編集及び「デバッグ」が難しくなった。より具体的には、ユーザが、パートプログラムの動作が記録された箇所に戻り、異なるプログラミング表現及びシンタックスが連続移動型画像取得に使用された場合、連続移動画像取得ルーチンの内部にある命令の編集又は再プログラミング方法の決定は、外部よりも分かりにくい。さらに、パートプログラムのデバッグは、元々実行された際のように容易に閲覧可能なステップ表現がないため、どの命令がどの結果の原因となったのかの特定がより難しいという点でさらに複雑であり得る。
【0063】
本発明によれば、上述したように、パートプログラム命令表現を元々の順で提供し得る、より望ましい編集環境が提供される。さらに、ストリームモードセグメント(例えば、ストリームモードセグメント340)内の命令表現は、ストリームモードセグメント外の命令表現と同一の外観を有するようになされる。具体例として、命令表現346、346A、346B、及び346Cがストリームモードセグメント340外(例えば、非ストリームモードセグメント330内)に記録された場合、命令表現341に「含まれ」ている表現を除き、編集インタフェース300内で同一の外観を有する。これは、命令表現が、ストリームモードセグメントの内部では、外部と異なるプログラミング表現及びシンタックスで提供される上述した従来技術による方法とは対照的である。上述したように、編集インタフェース300に示されるパートプログラム320の表現では、パートプログラムのデバッグをストリームモードセグメント340内であっても順番に実行することも可能である。より具体的には、デバッグプロセス中(例えば、編集モード中)、ユーザは、ストリームモードセグメント340内の命令表現を第1の順(すなわち、編集表現300に示される順)で実行させることを選択し得、第1の順は、命令表現がステップバイステッププロセスで元々プログラムされた順であり、どの命令表現がどの結果の原因となったかの特定を簡易化する。
【0064】
図5A及び図5Bは、ストリームモードセグメントを含むパートプログラムに編集環境を提供するルーチン500の一実施形態の流れ図500A及び500Bである。図5Aに示されるように、ブロック510において、学習モードが提供され、学習モードは、マシンビジョン検査システムの動作を制御すべくユーザ入力を受け取り、被制御動作に対応する命令を記録して、パートプログラムを作成するように動作可能である。学習モードは、パートプログラムを編集し、実行の編集モードに従って前に記録されたパートプログラム命令を実行するようにも動作可能である。
【0065】
ブロック520において、ユーザインタフェース機能が提供され、ユーザインタフェース機能は、ユーザ制御可能なストリームモード命令要素と、パートプログラム命令の編集可能パートプログラム表現とを含む。ユーザ制御可能なストリームモード命令要素は、ストリームモード実行に指定されたパートプログラムのセグメントを含むストリームモードセグメントを指定するために使用可能である。編集可能パートプログラム表現は、画像取得動作に対応する画像取得命令表現と、画像解析動作に対応する画像解析命令表現と、ストリームモードセグメント表現とを含み得る。
【0066】
ブロック530において、実行モードが提供され、実行モードは、前に作成されたパートプログラムを実行するように動作可能であり、実行モードは、ストリームモードセグメント内にないパートプログラム命令を実行する非ストリームモードと、ストリームモードセグメント内にあるパートプログラム命令を実行するストリームモードとを含む。ブロック530から、ルーチンは、図5Bに関してより詳細に後述するように、ポイントAに続く。
【0067】
図5Bに示されるように、ポイントAから、ルーチンはブロック540に続く。ブロック540において、学習モードは、編集可能パートプログラム表現が、パートプログラムを作成するために対応する被制御動作が実行された順に対応する第1の順で、画像取得命令と、対応する画像解析命令とを含む第1の複数のパートプログラム命令を表現するように構成される。学習モードは、実行の編集モードがパートプログラム命令を実行して、第1の複数のパートプログラム命令がストリームモードセグメント内に含まれるか否かに関係なく、画像取得動作及び対応する画像解析動作を第1の順に一致するように実行するようにさらに構成される。
【0068】
ブロック550において、実行モードは、ストリームモードが、第1の複数のパートプログラム命令を、ストリームモードセグメント内にある場合、第2の順に従って実行するように構成される。第2の順は、第1の複数のパートプログラムの画像取得命令を実行し、対応する画像取得動作を、対応する画像解析動作の実行に依存せずに順番に実行することを含む。一実施形態では、画像取得動作は、連続移動シーケンス中に順番に実行し得る。第2の順は、対応する画像が取得された後、第1の複数のパートプログラム画像解析命令を実行して、対応する画像解析動作を実行することをさらに含む。
【0069】
本発明の様々な好ましい例示的な実施形態を図示し説明したが、本発明の趣旨及び範囲から逸脱せずに、様々な変更を実施形態に行い得ることが理解されよう。
【符号の説明】
【0070】
10、100 マシンビジョン検査システム
12 ビジョン測定機
14 制御コンピュータシステム
16、136 ディスプレイ
18 プリンタ
22 ジョイスティック
24 キーボード
26 マウス
32、210 ステージ
34 光学撮像システム
320 パートプログラム
330 非ストリームモードセグメント表現
340 ストリームモードセグメント

【特許請求の範囲】
【請求項1】
撮像部と、前記撮像部の視野(FOV)内に1つ又は複数のワークピースを保持するステージと、制御部と、ディスプレイと、ユーザインタフェースとを含む精密マシンビジョン検査システムであって、
前記マシンビジョン検査システムの動作を制御すべくユーザ入力を受け取り、被制御動作に対応する命令を記録して、パートプログラムを作成するように動作可能であり、パートプログラムを編集するように動作可能であり、実行の編集モードに従って前に記録されたパートプログラム命令を実行するように動作可能であり、ユーザインタフェース機能を含む学習モードであって、前記ユーザインタフェース機能は、
ストリームモード実行に指定されたパートプログラムのセグメントを含むストリームモードセグメントの指定に使用可能なユーザ制御可能なストリームモード命令要素、
パートプログラム命令の編集可能パートプログラム表現であって、画像取得動作に対応する画像取得命令表現、画像解析動作に対応する画像解析命令表現、及びストリームモードセグメント表現を含む、編集可能パートプログラム表現
を含む、学習モードと、
前に作成されたパートプログラムを実行するように動作可能な実行モードであって、ストリームモードセグメント内にないパートプログラム命令を実行する非ストリームモード及びストリームモードセグメント内にあるパートプログラム命令を実行するストリームモードを含む、実行モードと、
をさらに備え、
前記学習モードは、
前記編集可能パートプログラム表現が、前記対応する被制御動作が前記パートプログラム作成のために実行された順に対応する第1の順で、画像取得命令及び対応する画像解析命令を含む第1の複数のパートプログラム命令を表現し、
実行の前記編集モードは、前記第1の複数のパートプログラム命令のうちの前記パートプログラム画像取得命令及び前記対応する画像解析命令を実行して、前記第1の複数のパートプログラム命令がストリームモードセグメントに含まれるか否かに関係なく、前記第1の順に一致するように、前記画像取得動作及び前記対応する画像解析動作を実行する
ように構成され、
前記実行モードは、
前記ストリームモードが、前記第1の複数のパートプログラム命令がストリームモードセグメントに含まれる場合、第2の順に従って前記第1の複数のパートプログラム命令を実行する
ように構成され、前記第2の順は、
前記第1の複数のパートプログラムの画像取得命令を実行して、前記対応する画像解析動作の実行に依存せずに、対応する画像取得動作を順番に実行し、対応する画像が取得された後、前記第1の複数のパートプログラムの画像解析命令を実行して、対応する画像解析動作を実行することを含む、システム。
【請求項2】
前記画像取得動作の実行は、連続移動シーケンス中に行われ、前記連続移動シーケンスでは、前記ステージ及び前記撮像部は互いに連続して移動して、前記画像を取得する、請求項1に記載のシステム。
【請求項3】
対応する画像が取得された後の前記画像解析動作の実行は、少なくとも部分的に、画像取得動作の順番中に実行される、請求項1に記載のシステム。
【請求項4】
前記実行の非ストリームモードは、ストリームモードセグメント内にない前記第1の複数のパートプログラム命令の前記画像取得命令及び前記対応する画像解析命令を実行して、前記画像取得動作及び前記対応する画像解析動作を前記第1の順に一致するように実行する、請求項1に記載のシステム。
【請求項5】
前記学習モードは、ストリームモードセグメントを含むパートプログラムが編集に呼び出される場合、前記編集可能パートプログラム表現が前記第1の順に表示されるように構成され、実行の前記編集モードは、前記画像取得動作及び前記対応する画像解析動作を前記第1の順に一致するように実行する、請求項1に記載のシステム。
【請求項6】
前記学習モードは、ユーザが、ストリームモードセグメントに含まれるパートプログラム命令表現を、対応するパートプログラム命令の実行の編集モードを開始する場所として選択し得るように構成され、その後、続くパートプログラム命令は、前記第1の順に一致するように実行される、請求項1に記載のシステム。
【請求項7】
前記続く前記パートプログラム命令は、前記第1の順に一致するように実行される、請求項6に記載のシステム。
【請求項8】
前記ストリームモードセグメントは、第1の命令セット及び第2の命令セットを含み、前記第1の命令セットは、第1の画像取得命令と、第1のビデオツールのビデオツール命令を含む第1の画像解析命令とを含み、前記第2の命令セットは、第2の画像取得命令と、第2のビデオツールのビデオツール命令を含む第2の画像解析命令とを含み、実行の前記編集モード中、前記第1の画像取得命令及び前記第1のビデオツールのビデオツール命令を含む前記第1の画像解析命令は、前記第2の画像取得命令及び前記第2のビデオツールのビデオツール命令を含む前記第2の画像解析命令の実行を開始する前に実行され、
前記実行モード中、前記ストリームモード命令要素により、前記ストリームモードセグメントが前記ストリームモードで実行され、前記ストリームモードセグメントの実行の前記実行モード中、前記第1及び第2の画像取得命令は、前記第1及び第2のビデオツールのビデオツール命令を含む前記対応する第1及び第2の画像解析動作の実行に依存せずに順番に実行される、請求項1に記載のシステム。
【請求項9】
前記パートプログラムは非ストリームモードセグメントをさらに含み、前記学習モード中、前記非ストリームモードセグメントは、前記非ストリームモードセグメントにストリームモード命令要素がないことにより、前記ストリームモードセグメントから区別され、前記非ストリームモードセグメントは、第3の命令セット及び第4の命令セットを含み、前記第3の命令セットは、第3の画像取得命令と、第3のビデオツールのビデオツール命令を含む第3の画像解析命令とを含み、前記第4の命令セットは、第4の画像取得命令と、第4のビデオツールのビデオツール命令を含む第4の画像解析命令とを含み、実行の前記編集モード中、前記第3の画像取得命令及び前記第3のビデオツールのビデオツール命令を含む前記第3の画像解析命令は、前記第4の画像取得命令及び前記第4のビデオツールのビデオツール命令を含む前記第4の画像解析命令の実行を開始する前に実行され、
前記実行モード中、前記非ストリームモードセグメントは、前記非ストリームモードセグメントにストリームモード命令要素がないことにより、前記非ストリームモードで実行され、前記非ストリームモードセグメントの実行の前記実行モード中、前記第3及び第4の画像取得命令は、前記第3及び第4のビデオツールのビデオツール命令を含む前記対応する第3及び第4の画像解析動作の実行に依存せずに順番に実行される、請求項8に記載のシステム。
【請求項10】
前記第1及び第2のビデオツールはエッジ検出ビデオツールを含む、請求項8に記載のシステム。
【請求項11】
前記学習モード中、前記第1及び第2の命令セットは、前記第1の順に実行され、前記第1及び第2の画像取得命令のうちの少なくともいくつかは、前記第1のビデオツール及び前記第2のビデオツールの前記ビデオツール命令に組み入れられ、前記命令は前記第1の順で前記ユーザインタフェースに表示され、
前記実行モード中、前記ストリームモードで、前記ストリームモードセグメントに対応する前記パートプログラム命令が処理されて、前記第1及び第2の命令セットの前記画像取得命令を含むが、前記ビデオツール命令を含まない画像取得ルーチンを決定し、前記画像取得ルーチンは実行されて前記画像を取得し、前記画像取得ルーチンが実行されている間、前記ビデオツール命令が実行される、請求項8に記載のシステム。
【請求項12】
前記実行モード中、前記ストリームモードで、前記ストリームモードセグメントの2回目の実行中の前記ビデオツール命令の実行の少なくとも一部分は、前記画像取得ルーチンの実行と並行して行われる、請求項11に記載のシステム。
【請求項13】
前記実行モード中での前記画像取得ルーチンの実行中、複数の画像取得命令が順番に実行され、その時間中、前記学習モード中に組み入れられた任意のビデオツール命令はまだ実行されず、それにより、前記命令は前記第1の順とは異なる第2の順で実行される、請求項11に記載のシステム。
【請求項14】
前記実行モード中、前記画像取得ルーチンが実行されるとき、前記ステージ及び前記撮像部は互いに対して連続して移動し、前記画像を取得する、請求項11に記載のシステム。
【請求項15】
前記パートプログラムの前記ストリームモードセグメントは、前記ストリームモードセグメントの冒頭及び末尾のストリームモード命令表現により識別される、請求項1に記載のシステム。
【請求項16】
前記学習モード中、前記ストリームモードセグメント内の前記パートプログラム命令は、パートプログラム表現として表示され、前記ストリームモードセグメント外の同様のパートプログラム命令の表現と同一の外観を有するようになされ、それにより、ユーザは、前記ストリームモードセグメント外とは対照的に、前記ストリームモードセグメント内の動作をプログラム又は編集する場合、異なるプログラミング表現又はシンタックスを使用する必要がない、請求項1に記載のシステム。
【請求項17】
撮像部と、前記撮像部の視野(FOV)内に1つ又は複数のワークピースを保持するステージと、制御部と、ディスプレイと、ユーザインタフェースとを含む精密マシンビジョン検査システムを動作させる方法であって、
前記マシンビジョン検査システムの動作を制御すべくユーザ入力を受け取り、被制御動作に対応する命令を記録して、パートプログラムを作成するように動作可能であり、パートプログラムを編集するように動作可能であり、実行の編集モードに従って前に記録されたパートプログラム命令を実行するように動作可能であり、ユーザインタフェース機能を含む学習モードを提供することであって、前記ユーザインタフェース機能は、
ストリームモード実行に指定されたパートプログラムのセグメントを含むストリームモードセグメントの指定に使用可能なユーザ制御可能なストリームモード命令要素、
パートプログラム命令の編集可能パートプログラム表現であって、画像取得動作に対応する画像取得命令表現、画像解析動作に対応する画像解析命令表現、及びストリームモードセグメント表現を含む、編集可能パートプログラム表現
を含む、学習モードを提供すること、及び
前に作成されたパートプログラムを実行するように動作可能な実行モードを提供することであって、前記実行モードは、ストリームモードセグメント内にないパートプログラム命令を実行する非ストリームモード及びストリームモードセグメント内にあるパートプログラム命令を実行するストリームモードを含む、実行モードを提供すること、
を含み、
前記学習モードは、
前記編集可能パートプログラム表現が、前記対応する被制御動作が前記パートプログラム作成のために実行される順に対応する第1の順で、画像取得命令及び対応する画像解析命令を含む第1の複数のパートプログラム命令を表現し、
実行の前記編集モードは、前記第1の複数のパートプログラム命令のうちの前記パートプログラム画像取得命令及び前記対応する画像解析命令を実行して、前記第1の複数のパートプログラム命令がストリームモードセグメントに含まれるか否かに関係なく、前記第1の順に一致するように、前記画像取得動作及び前記対応する画像解析動作を実行する
ように構成され、
前記実行モードは、
前記ストリームモードが、前記第1の複数のパートプログラム命令がストリームモードセグメントに含まれる場合、第2の順に従って前記第1の複数のパートプログラム命令を実行する
ように構成され、前記第2の順は、
前記第1の複数のパートプログラムの画像取得命令を実行して、前記対応する画像解析動作の実行に依存せずに、対応する画像取得動作を順番に実行し、対応する画像が取得された後、前記第1の複数のパートプログラムの画像解析命令を実行して、対応する画像解析動作を実行することを含む、方法。
【請求項18】
ストリームモードセグメントを含むパートプログラムが編集に呼び出される場合、前記編集可能パートプログラム表現は前記第1の順に表示され、実行の前記編集モードは、前記画像取得動作及び前記対応する画像解析動作を前記第1の順に一致するように実行する、請求項17に記載の方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5A】
image rotate

【図5B】
image rotate


【公開番号】特開2013−105500(P2013−105500A)
【公開日】平成25年5月30日(2013.5.30)
【国際特許分類】
【外国語出願】
【出願番号】特願2012−250667(P2012−250667)
【出願日】平成24年11月14日(2012.11.14)
【出願人】(000137694)株式会社ミツトヨ (979)
【Fターム(参考)】