JP6167622B2 - 制御システムおよび制御方法 - Google Patents

制御システムおよび制御方法 Download PDF

Info

Publication number
JP6167622B2
JP6167622B2 JP2013080774A JP2013080774A JP6167622B2 JP 6167622 B2 JP6167622 B2 JP 6167622B2 JP 2013080774 A JP2013080774 A JP 2013080774A JP 2013080774 A JP2013080774 A JP 2013080774A JP 6167622 B2 JP6167622 B2 JP 6167622B2
Authority
JP
Japan
Prior art keywords
control
movement
image processing
alignment
positioning
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2013080774A
Other languages
English (en)
Other versions
JP2014203365A (ja
Inventor
池田 泰之
泰之 池田
和志 吉岡
和志 吉岡
加藤 豊
豊 加藤
雄一 土井
雄一 土井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Omron Corp
Original Assignee
Omron Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Omron Corp filed Critical Omron Corp
Priority to JP2013080774A priority Critical patent/JP6167622B2/ja
Priority to KR1020140039169A priority patent/KR101668913B1/ko
Priority to EP14163288.5A priority patent/EP2789431B1/en
Priority to US14/246,271 priority patent/US9424646B2/en
Priority to CN201410138678.6A priority patent/CN104102226B/zh
Publication of JP2014203365A publication Critical patent/JP2014203365A/ja
Application granted granted Critical
Publication of JP6167622B2 publication Critical patent/JP6167622B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D3/00Control of position or direction
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0004Industrial image inspection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/24Aligning, centring, orientation detection or correction of the image
    • G06V10/245Aligning, centring, orientation detection or correction of the image by locating a pattern; Special marks for positioning
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/37Measurements
    • G05B2219/37553Two cameras one for coarse scanning, other for fine scanning
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/41Servomotor, servo controller till figures
    • G05B2219/41106Coarse fine take over, transition, switch over
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30108Industrial image inspection
    • G06T2207/30164Workpiece; Machine component
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/06Recognition of objects for industrial automation

Description

本発明は、画像処理を用いて対象物を位置決めするための制御システムおよび制御方法に関する。
従来から、製造現場では様々な自動化技術が開発されている。このような自動化技術の一つとして、画像処理を用いた自動制御技術が知られている。
例えば、特開2000−180810号公報(特許文献1)は、それぞれに位置合わせ用のマークが設けられた一対の透明基板を位置決めして重ね合わせて組み立てる液晶表示セルの製造装置において、上基板ロボットもしくは下基板ロボットいずれかのテーブル搬送位置(教示位置)を上下透明基板の位置ズレ量分修正し制御する構成を開示する。
非特許文献1は、ロボティクスシステムにおいて、画像処理技術を応用したadaptive control schemeを開示する。
なお、ワークの位置決めに関して、特開2006−049755号公報(特許文献2)は、ステージの回転中心を簡易な方法で精度良く求めることにより、ワークの位置決めの精度を向上する方法を開示する。
特開2000−180810号公報 特開2006−049755号公報
P. Papnikopoulos and Khosla P. K., "Adaptive robotic visual tracking", Theory and experiments., IEEE Transactions on Automatic Control, 38(3):429-445, March 1993
しかしながら、製造現場では、高速化および高精度化の要求がますます高まっている。上述の先行技術では、このような要求に応えることができない。具体的には、特許文献1に開示される位置決め技術では、繰返しの位置決めが必要になり、高速化の要求に応えることができない。また、非特許文献1に開示される方法では、精度を高めるために移動速度を抑制する必要があり、全体としては、高速化の要求に応えることが難しい。
そのため、画像処理を用いた位置決めをより高速かつより高精度に実現することが要求されている。
本発明のある局面に係る制御システムは、位置決め用の特徴部分が設けられた対象物を撮影して得られる画像データを取得し、画像データに含まれる特徴部分の位置を特定する画像処理手段と、対象物の位置を変更する移動機構に対して、特定された特徴部分の位置に基づいて制御指令を与えることで、対象物を所定の最終目標位置に位置決めする制御手段とを含む。制御システムは、第1の制御動作を実行後に第2の制御動作を実行し、第1の制御動作において、画像処理手段は、画像データを取得して特徴部分の位置を特定し、制御手段は、特定された特徴部分の位置に基づいて、対象物を所定の第1の速度まで加速した後で第1の速度より小さい所定の第2の速度まで減速して最終目標位置から所定の余裕距離だけ離れた中間目標位置に移動するための制御指令を決定する。第2の制御動作において、画像処理手段は、移動機構の移動中に画像データを取得して特徴部分の位置を特定し制御手段は、特定された特徴部分の位置に基づいて、対象物を最終目標位置に位置決めするための制御指令を決定する。余裕距離は、移動機構を許容される最大加速度で第2の速度から減速させたときに対象物が最終目標位置を行き過ぎることのないよう定められている。
好ましくは、第2の制御動作において、制御システムは、画像処理手段による特徴部分の位置の特定と、制御手段による対象物を最終目標位置に位置決めするための制御指令の決定とを繰返し実行する。
好ましくは、余裕距離は、移動機構を予め定められた移動量だけ移動させて、当該移動後の対象物の位置を画像処理手段が特定した結果と、当該予め定められた移動量との比較により決定される第1の距離と、画像処理手段が画像データを取得してから特徴部分の位置を特定するまでの間だけ移動機構を第2の速度にて移動させ、さらに移動機構を許容される最大加速度で第2の速度から減速させ停止させるまでの間の移動機構の移動量である第2の距離のうち、大きい方の値である。
好ましくは、第1の制御動作における制御指令は、移動機構を許容される最大加速度で加速させる指令を含む。
好ましくは、制御手段は、第2の制御動作において、画像処理手段による特徴部分の位置の特定が正常ではない場合に、制御指令の決定をスキップする。
好ましくは、画像処理手段は、互いに視野サイズの異なる第1および第2のカメラからそれぞれ画像データを取得するように構成されている。制御手段は、視野サイズがより大きい第1のカメラからの画像データに基づいて第1の制御動作において用いられる制御指令を決定し、第1の制御動作において、移動機構の移動中に、画像データの取得先を第1のカメラに代えて視野サイズがより小さい第2のカメラに切換える。
好ましくは、画像処理手段は、第2の制御動作において、特徴部分の位置の特定が正常ではない場合に、制御指令の決定をスキップする。
好ましくは、画像処理手段は、互いに視野サイズの異なる第1および第2のカメラからそれぞれ画像データを取得するように構成されている。画像処理手段は、視野サイズがより大きい第1のカメラからの画像データに基づいて第1の制御動作において用いられる制御指令を決定し、第1の制御動作において、移動機構の移動中に、画像データの取得先を第1のカメラに代えて視野サイズがより小さい第2のカメラに切換える。
好ましくは、移動機構は、第1および第2の制御動作に従って位置決めされる座標系に加えて、さらに移動可能な別の座標系を有している。制御手段は、当該別の座標系において移動機構が移動することによって生じる誤差に応じて、第2の制御動作における制御指令を補正する。
本発明の別の局面に係る制御方法は、位置決め用の特徴部分が設けられた対象物を撮影して得られる画像データを取得し、画像データに含まれる特徴部分の位置を特定するステップと、対象物の位置を変更する移動機構に対して、特定された特徴部分の位置に基づいて制御指令を与えることで、対象物を所定の最終目標位置に位置決めするステップとを含む。制御方法において、第1の制御動作を実行後に第2の制御動作が実行される。第1の制御動作において、画像データを取得して特徴部分の位置を特定するステップが実行された後、位置決めするステップは、特定された特徴部分の位置に基づいて、対象物を所定の第1の速度まで加速した後で第1の速度より小さい所定の第2の速度まで減速して最終目標位置から所定の余裕距離だけ離れた中間目標位置に移動するための制御指令を決定するステップを含む。第2の制御動作において、移動機構の移動中に画像データを取得して特徴部分の位置を特定するステップが実行された後、位置決めするステップは、特定された特徴部分の位置に基づいて、対象物を最終目標位置に位置決めするステップを含む。余裕距離は、移動機構を許容される最大加速度で第2の速度から減速させたときに対象物が最終目標位置を行き過ぎることのないよう定められている。
好ましくは、位置決めするステップは、対象物と目標地点との間の距離が、画像データから特定される位置に生じる誤差に応じた距離以下になると、第1の制御動作から第2の制御動作への切替えるステップを含む。制御方法は、さらに、移動機構を予め定められた移動量だけ移動させるステップと、移動後の対象物の位置を撮影して得られる画像データから位置を特定するステップと、移動機構を複数回移動させるとともに、予め定められた移動量と特定された対象物の位置とのそれぞれの比較に応じて、誤差に応じた距離を決定するステップとを含む。
本発明によれば、画像処理を用いた位置決めをより高速かつより高精度に行うことができる。
本実施の形態に係る制御システムの全体構成を示す模式図である。 本実施の形態に係る制御システムを構成する画像処理装置のハードウェア構成を示す模式図である。 本実施の形態に係る制御システムを構成するモーションコントローラのハードウェア構成を示す模式図である。 本発明の関連技術に係る繰返し位置決めのアライメントを説明するための図である。 本発明の関連技術に係るノンストップアライメントを説明するための図である。 本実施の形態に係るアライメントを説明するための図である。 本実施の形態に係るアライメントの速度パターンを説明するための図である。 本実施の形態に係るアライメントの実施に必要なシステムパラメータを示す図である。 本実施の形態に係るアライメントに用いるノンストップアライメント許容最大速度Vns_maxを決定する方法を説明するための図である。 本実施の形態に係るアライメントの処理手順を示すフローチャートである。 本実施の形態に係るアライメントの前処理としてのキャリブレーションを説明するための図である。 本実施の形態に係るアライメントの前処理としてのキャリブレーションの原理を説明するための図である。 本実施の形態に係るアライメントの前処理としての目標地点(回転中心)の決定処理を説明するための図である。 本実施の形態に係るアライメントの前処理としての目標地点(回転中心)の決定処理の原理を説明するための図である。 本実施の形態に係るアライメントに用いるノンストップアライメント開始距離dnsの理論値を決定する方法を説明するための図である。 本実施の形態に係るアライメントに用いるノンストップアライメント開始距離を決定する方法(その1)を説明するための図である。 図16に示すノンストップアライメント開始距離を決定する手順を示すフローチャートである。 本実施の形態に係るアライメントに用いるノンストップアライメント開始距離を決定する方法(その2)を説明するための図である。 図18に示すノンストップアライメント開始距離を決定する手順を示すフローチャートである。 本実施の形態に係るアライメントの実行時に計測処理が失敗した場合の処理を説明するための図である。 本実施の形態の変形例1に係る制御システムの構成を説明するための模式図である。 本実施の形態の変形例1に係るアライメントを説明するための図である。 本実施の形態の変形例2に係る適用例を説明するための模式図である。 図23に示す適用例における補正処理を説明するための図である。 本実施の形態に係るアライメントによる移動時間の短縮効果を説明するための図である。
本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。
<A.適用例>
まず、本実施の形態に係る制御システムの一つの適用例について説明する。図1は、本実施の形態に係る制御システム1の全体構成を示す模式図である。図1に示す制御システム1は、画像処理を用いてアライメントを行う。アライメントは、典型的には、工業製品の製造過程などにおいて、対象物(以下、「ワーク」とも称す)を生産ラインの本来の位置に配置する処理などを意味する。このようなアライメントの一例として、制御システム1は、液晶パネルの生産ラインにおいて、ガラス基板に回路パターンの焼付処理(露光処理)前に、露光マスク4に対するガラス基板2の位置決めを制御する。ワークには、予め定められた位置に位置決め用の特徴部分である位置決めマーク12および14が設けられている。制御システム1では、ガラス基板上に予め設けられている位置決めマーク12および14を撮影し、この撮影した画像に対して画像処理を行うことで、精密な位置決めを実現する。
制御システム1は、画像処理装置100と、モーションコントローラ200と、ステージ300とを含む。画像処理装置100は、1つ以上のカメラ(図1の例では、カメラ102および104)が撮影した画像データを取得し、その取得した画像データに含まれる位置決めマーク12および14の位置からワークであるガラス基板2の位置を特定する。そして、その特定したガラス基板2の位置に基づいて、ガラス基板2を本来の位置に配置するための指令をモーションコントローラ200へ出力する。すなわち、画像処理手段に相当する画像処理装置100は、予め定められた位置に特徴部分が設けられた対象物を、撮影して得られる画像データを取得するとともに、画像データに含まれる特徴部分の位置を特定する。
モーションコントローラ200は、画像処理装置100からの指令に従って、ステージ300に対して指令を与えることで、ガラス基板2に対するアライメントを実現する。すなわち、制御手段に相当するモーションコントローラ200は、対象物の位置を変更する移動機構に対して、特定された特徴部分の位置に基づいて制御指令を与えることで、対象物を所定の最終目標位置に位置決めする。
ステージ300は、ワークであるガラス基板2を本来の位置に配置できる機構であればどのような自由度のものであってもよい。本実施の形態においては、ステージ300は、水平方向の変位と回転の変位をガラス基板2に与えることができるものとする。すなわち、ガラス基板2をX方向およびY方向にそれぞれ移動させることができるとともに、所定の回転軸を中心にガラス基板2を回転させることができるとする。このようなステージ300に対する制御としては、先にガラス基板2を水平方向に目標地点まで移動させ(以下、「XY移動」とも称す)、その後、必要に応じてガラス基板2を回転させる。
<B.装置構成>
次に、本実施の形態に係る制御システム1を構成する装置の構成について説明する。
[b1:画像処理装置100]
図2は、本実施の形態に係る制御システム1を構成する画像処理装置100のハードウェア構成を示す模式図である。図2を参照して、画像処理装置100は、典型的には、汎用的なコンピュータアーキテクチャに従う構造を有しており、予めインストールされたプログラムをプロセッサが実行することで、後述するような各種の画像処理を実現する。
より具体的には、画像処理装置100は、CPU(Central Processing Unit)やMPU(Micro-Processing Unit)などのプロセッサ110と、RAM(Random Access Memory)112と、表示コントローラ114と、システムコントローラ116と、I/O(Input Output)コントローラ118と、ハードディスク120と、カメラインターフェイス122と、入力インターフェイス124と、モーションコントローラインターフェイス126と、通信インターフェイス128と、メモリカードインターフェイス130とを含む。これらの各部は、システムコントローラ116を中心として、互いにデータ通信可能に接続される。
プロセッサ110は、システムコントローラ116との間でプログラム(コード)などを交換して、これらを所定順序で実行することで、目的の演算処理を実現する。
システムコントローラ116は、プロセッサ110、RAM112、表示コントローラ114、およびI/Oコントローラ118とそれぞれバスを介して接続されており、各部との間でデータ交換などを行うとともに、画像処理装置100全体の処理を司る。
RAM112は、典型的には、DRAM(Dynamic Random Access Memory)などの揮発性の記憶装置であり、ハードディスク120から読み出されたプログラムや、カメラ102および104によって取得されたカメラ画像(画像データ)、カメラ画像に対する処理結果、およびワークデータなどを保持する。
表示コントローラ114は、表示部132と接続されており、システムコントローラ116からの内部コマンドに従って、各種の情報を表示するための信号を表示部132へ出力する。
I/Oコントローラ118は、画像処理装置100に接続される記録媒体や外部機器との間のデータ交換を制御する。より具体的には、I/Oコントローラ118は、ハードディスク120と、カメラインターフェイス122と、入力インターフェイス124と、モーションコントローラインターフェイス126と、通信インターフェイス128と、メモリカードインターフェイス130と接続される。
ハードディスク120は、典型的には、不揮発性の磁気記憶装置であり、プロセッサ110で実行される制御プログラム150に加えて、各種設定値などが格納される。このハードディスク120にインストールされる制御プログラム150は、メモリカード136などに格納された状態で流通する。なお、ハードディスク120に代えて、フラッシュメモリなどの半導体記憶装置やDVD−RAM(Digital Versatile Disk Random Access Memory)などの光学記憶装置を採用してもよい。
カメラインターフェイス122は、ワークを撮影することで生成された画像データを受付ける入力部に相当し、プロセッサ110とカメラ102,104との間のデータ伝送を仲介する。カメラインターフェイス122は、カメラ102および104からの画像データをそれぞれ一時的に蓄積するための画像バッファ122aおよび122bを含む。複数のカメラに対して、カメラの間で共有できる単一の画像バッファを設けてもよいが、処理高速化のため、それぞれのカメラに対応付けて独立に複数配置することが好ましい。
入力インターフェイス124は、プロセッサ110とキーボード134、マウス、タッチパネル、専用コンソールなどの入力装置との間のデータ伝送を仲介する。
モーションコントローラインターフェイス126は、プロセッサ110とモーションコントローラ200との間のデータ伝送を仲介する。
通信インターフェイス128は、プロセッサ110と図示しない他のパーソナルコンピュータやサーバ装置などとの間のデータ伝送を仲介する。通信インターフェイス128は、典型的には、イーサネット(登録商標)やUSB(Universal Serial Bus)などからなる。
メモリカードインターフェイス130は、プロセッサ110と記録媒体であるメモリカード136との間のデータ伝送を仲介する。メモリカード136には、画像処理装置100で実行される制御プログラム150などが格納された状態で流通し、メモリカードインターフェイス130は、このメモリカード136から制御プログラムを読み出す。メモリカード136は、SD(Secure Digital)などの汎用的な半導体記憶デバイスや、フレキシブルディスク(Flexible Disk)などの磁気記録媒体や、CD−ROM(Compact Disk Read Only Memory)などの光学記録媒体等からなる。あるいは、通信インターフェイス128を介して、配信サーバなどからダウンロードしたプログラムを画像処理装置100にインストールしてもよい。
上述のような汎用的なコンピュータアーキテクチャに従う構造を有するコンピュータを利用する場合には、本実施の形態に係る機能を提供するためのアプリケーションに加えて、コンピュータの基本的な機能を提供するためのOS(Operating System)がインストールされていてもよい。この場合には、本実施の形態に係る制御プログラムは、OSの一部として提供されるプログラムモジュールのうち、必要なモジュールを所定の順序および/またはタイミングで呼び出して処理を実行するものであってもよい。
さらに、本実施の形態に係る制御プログラムは、他のプログラムの一部に組み込まれて提供されるものであってもよい。その場合にも、プログラム自体には、上記のような組み合わせられる他のプログラムに含まれるモジュールを含んでおらず、当該他のプログラムと協働して処理が実行される。すなわち、本実施の形態に係る制御プログラムとしては、このような他のプログラムに組み込まれた形態であってもよい。
なお、代替的に、制御プログラムの実行により提供される機能の一部もしくは全部を専用のハードウェア回路として実装してもよい。
[b2:モーションコントローラ200]
図3は、本実施の形態に係る制御システム1を構成するモーションコントローラ200のハードウェア構成を示す模式図である。図3を参照して、モーションコントローラ200は、主制御ユニット210と、複数のサーボユニット240,242,244とを含む。本実施の形態に係る制御システム1では、ステージ300が3軸分のサーボモータ310,312,314を有する例を示し、この軸数に応じた数のサーボユニット240,242,244がモーションコントローラ200に含まれる。
主制御ユニット210は、モーションコントローラ200の全体制御を司る。主制御ユニット210は、内部バス226を介して、サーボユニット240,242,244と接続されており、互いにデータを遣り取りする。サーボユニット240,242,244は、主制御ユニット210からの内部指令などに従って、サーボドライバ250,252,254に対して制御コマンド(典型的には、駆動パルスなど)をそれぞれ出力する。サーボドライバ250,252,254は、接続されているサーボモータ310,312,314をそれぞれ駆動する。
主制御ユニット210は、チップセット212と、プロセッサ214と、不揮発性メモリ216と、主メモリ218と、システムクロック220と、メモリカードインターフェイス222と、通信インターフェイス228と、内部バスコントローラ230とを含む。チップセット212と他のコンポーネントとの間は、各種のバスを介してそれぞれ結合されている。
プロセッサ214およびチップセット212は、典型的には、汎用的なコンピュータアーキテクチャに従う構成を有している。すなわち、プロセッサ214は、チップセット212から内部クロックに従って順次供給される命令コードを解釈して実行する。チップセット212は、接続されている各種コンポーネントとの間で内部的なデータを遣り取りするとともに、プロセッサ214に必要な命令コードを生成する。システムクロック220は、予め定められた周期のシステムクロックを発生してプロセッサ214に提供する。チップセット212は、プロセッサ214での演算処理の実行の結果得られたデータなどをキャッシュする機能を有する。
主制御ユニット210は、記憶手段として、不揮発性メモリ216および主メモリ218を有する。不揮発性メモリ216は、OS、システムプログラム、ユーザプログラム、データ定義情報、ログ情報などを不揮発的に保持する。主メモリ218は、揮発性の記憶領域であり、プロセッサ214で実行されるべき各種プログラムを保持するとともに、各種プログラムの実行時の作業用メモリとしても使用される。
主制御ユニット210は、通信手段として、通信インターフェイス228および内部バスコントローラ230を有する。これらの通信回路は、データの送信および受信を行う。
通信インターフェイス228は、画像処理装置100との間でデータを遣り取りする。
内部バスコントローラ230は、内部バス226を介したデータの遣り取りを制御する。より具体的には、内部バスコントローラ230は、バッファメモリ236と、DMA(Dynamic Memory Access)制御回路232と、内部バス制御回路234とを含む。
メモリカードインターフェイス222は、主制御ユニット210に対して着脱可能なメモリカード224とプロセッサ214とを接続する。
<C.関連技術>
次に、本実施の形態に係るアライメントに係る制御方法の理解を容易にするために、本発明の関連技術について説明する。
[c1:繰返し位置決め(関連技術その1)]
図1に示すような適用例におけるアライメントでは、高い位置精度が要求されるため、1回の移動では要求精度を満たさない場合がある。この主たる原因は、キャリブレーション誤差やカメラのノイズなどによる画像処理における計測誤差である。そのため、特許文献1に開示されるように、位置計測と移動とを数回繰返すことで、位置精度を高めるという手法が採用される場合がある。
図4は、本発明の関連技術に係る繰返し位置決めのアライメントを説明するための図である。図4に示すように、まず撮影を行ってワークの目標地点までの差分(ベクトル量)を算出するとともに、ワークに対するXY移動の動きを決定して実行する(撮影1回目)。このXY移動の動きは、典型的には、一定加速度で加速し、その後一定速度(基本的には、システム許容の最大速度)を維持した後、一定減速度で減速して停止する。この停止時点で、再度撮影を行ってワークの目標地点までの差分を再算出し、ワークが目標地点から所定の許容誤差範囲内に到達していなければ、ワークに対するXY移動の動きを再決定して再実行する(撮影2回目)。
以下、誤差が一定以内になるまで、撮影、目標地点までの差分の算出、移動、および停止という一連の処理サイクルが繰返される。すなわち、目標地点に到達するまでの間、撮影→加速→減速→停止という処理が繰返されることになり、加減速に要する時間だけ全体としての移動時間に無駄が生じる。また、一旦停止させる場合には、装置全体の振動を無くすまでの安定化時間(整定時間)が必要であるため、この点においても、全体としての移動時間が長くなる。
移動時間の短縮のために、ステージ300を停止させることなく、一連の移動によって目標地点に到達することが要求されている。
[c2:ノンストップアライメント(関連技術その2)]
装置の駆動機構を止めずに位置決めする方法として、「ビジュアルサーボ」が知られている。この「ビジュアルサーボ」は、動いているワークをカメラで連続的に撮影し、その画像処理の結果からワークの動きの方向や速度を時々刻々と調整する方法である。非特許文献1に開示されるように、ロボットの制御などの分野において研究が進んでいる。
このような「ビジュアルサーボ」の技術を上述したようなアライメントに適用することができる。このようなアライメントの手法では、図4に示すよう目標地点に到達するまでに、位置計測のためにステージ300を停止させなくともよいので、以下「ノンストップアライメント」あるいは「NSA」と称することにする。
図5は、本発明の関連技術に係るノンストップアライメントを説明するための図である。図5に示すように、まず撮影を行ってワークの目標地点までの差分を算出するとともに、ワークに対するXY移動の動きを決定して実行する。続いて、ステージ300の移動中に再度撮影を行って、ワークの目標地点までの差分を算出するとともに、動きの修正を行う。すなわち、先の撮影の結果に応じて決定された動き(目標軌道、速度パターン、または加速度パターンなど)を新たに撮影された結果に応じて修正する。この撮影と動きの修正とを連続的に繰返すことで、ワークを目標地点まで移動させる。
しかしながら、ノンストップアライメントでは、テーブルを停止させないので、初期地点から目標地点までの移動において、ワークが目標地点を行き過ぎないように制御しなければならない。これは、ワークが目標地点を行き過ぎると、その直前の移動とは逆方向の移動を行わなければならず、移動機構を逆転させる必要がある。このような移動機構の逆転動作によって、バックラッシが発生したり、慣性モーメントによって移動機構を損傷させたりする可能性があるからである。
そのため、ワークの動きを正確に調整し、精度よく目標地点に到達させる必要があり、これを実現するためには、システム許容の最大速度より大幅に低い移動速度でワークを制御する必要がある。その結果、全体としての移動に要する時間を短縮できない、あるいはより長くなる場合がある。
<D.本実施の形態に係るアライメントの概要>
本実施の形態に係るアライメントは、上述したような関連技術に比較して、アライメント開始から終了までに要する時間を最小化することを目的とする。具体的な手法として、アライメントの最初の段階では、システム許容の最大速度で目標地点に近付くとともに、目標地点からある範囲内に到達すると、上述したようなノンストップアライメントに切替えて目標地点に到達する。すなわち、本実施の形態に係るアライメントは、移動速度を高めることができる通常アライメントと、ステージ300を停止させることなく目標地点への位置決めが可能なノンストップアライメントとを組み合わせた方法である。ステージ300の動きを停止させることなく、通常アライメントとノンストップアライメントとを切替えることで、全体としての移動に要する時間を最小化する。
図6は、本実施の形態に係るアライメントを説明するための図である。図6に示すように、まず撮影を行ってワークの目標地点までの差分(ベクトル量)を算出するとともに、ワークに対するXY移動の動きを決定して実行する(撮影1回目)。つまり、1回目の撮影で最初の目標地点を決定し、その決定した目標地点(中間目標位置)に向けてシステム許容の最大速度でステージ300を移動させる。そして、ステージ300が目標地点からある距離だけ離れた位置まで到達すると、ステージ300の減速を開始する。なお、図6に示すステージ300の速度パターンは、撮影1回目の結果によって先に決定されていてもよい。すなわち、ステージ300の減速開始の位置(あるいは、経過時間)は、予め決定されてもよい。
その後、ステージ300が一定速度まで減速されると、ノンストップアライメントを開始し、誤差が一定以内になるまで、撮影と動き修正とが連続的に繰返され、ワークを目標地点まで移動させる。このとき、ノンストップアライメント制御周期fで撮影が実行される。但し、目標地点に十分近づいている場合には、1回の撮影で目標地点に到達できる場合もある。
このような通常アライメントとノンストップアライメントとを組み合わせることで、ワークを目標地点に位置決めするのに要する時間を短縮できる。すなわち、本実施の形態に係る制御システム1は、第1の制御動作(通常アライメント)を実行後に第2の制御動作(ノンストップアライメント)を実行する。第1の制御動作において、画像処理手段(画像処理装置100)は、画像データを取得して特徴部分の位置を特定し、制御手段(モーションコントローラ200)は、当該特定された特徴部分の位置に基づいて、対象物を所定の第1の速度まで加速した後で第1の速度より小さい所定の第2の速度まで減速して最終目標位置から所定の余裕距離だけ離れた中間目標位置に移動するための制御指令を決定する。第2の制御動作において、画像処理手段(画像処理装置100)は、移動機構の移動中に画像データを取得して特徴部分の位置を特定し、制御手段(モーションコントローラ200)は、当該特定された特徴部分の位置に基づいて、対象物を最終目標位置に位置決めするための制御指令を決定する。このとき、余裕距離は、移動機構を許容される最大加速度で第2の速度から減速させたときに対象物が最終目標位置を行き過ぎることのないよう定められている。
なお、多くの場合、第2の制御動作において、制御システム1は、画像処理手段(画像処理装置100)による特徴部分の位置の特定と、制御手段(モーションコントローラ200)による対象物を最終目標位置に位置決めするための制御指令の決定とを繰返し実行する。
なお、第2の制御動作における第1回目の撮影および計測は、中間目標位置への到達の前(例えば、第1の速度から第2の速度への減速中)に実行してもよい。
<E.本実施の形態に係るアライメントの設定>
次に、本実施の形態に係るアライメントの実施に必要な設定について説明する。
図7は、本実施の形態に係るアライメントの速度パターンを説明するための図である。図8は、本実施の形態に係るアライメントの実施に必要なシステムパラメータを示す図である。
図7を参照して、本実施の形態に係るアライメントの動きは、時間t0〜時間t5の合計6区間に分けることができる。
時間t0は、画像処理装置100によってワークを撮影するとともに、ワークの目標地点までの差分(ベクトル量)を算出して、ワークに対するXY移動の動きを決定(初期計測)するのに要する時間である。この時間t0において、通常アライメントに係る速度パターンなどが決定される。
時間t1〜t3までが通常アライメントの期間に相当する。時間t1は、通常アライメントにおける加速期間に相当する。時間t1において、ステージ300は、システム許容の最大加速度で加速する。時間t2は、最も高速に目標地点に近付く期間に相当する。時間t2においては、ステージ300は、システム許容の最大速度Vsys_maxで等速移動する。時間t3は、通常アライメントにおける減速期間に相当する。時間t3において、ステージ300は、システム許容の最大減速度で減速する。
続いて、時間t4〜t5は、ノンストップアライメントの期間に相当する。時間t4において、撮影と動き修正とが連続的に繰返され、ステージ300がワークを目標地点付近まで移動させる。この時間t4において、基本的には、ステージ300はノンストップアライメント許容最大速度Vns_maxで等速移動する。時間t5は、ノンストップアライメントにおける減速期間に相当する。時間t5の経過時点で、ワークは目標地点に位置決めされている。
上述の時間t1〜t5の長さおよび対応する移動距離d1〜d5については、図8に示すようなシステムパラメータを用いて、以下の(1)〜(6)式に従って算出できる。なお、図8に示すシステムパラメータは、システム構成部品の仕様およびシステム要求を含む。
ここで、全体としての移動時間を短縮するためには、以下のような要件が重要となる。
(a)通常アライメントにおける減速開始タイミング:遅いほど好ましい
(b)ノンストップアライメント開始タイミング:遅いほど好ましい
すなわち、時間t2をより長くするとともに、時間t4をより短くすることが好ましい。上述の(3)式および(5)式を参照すると、ノンストップアライメント開始距離dns(以下、「NSA開始距離dns」とも称す)をより短くすることで、上述の(a)および(b)の要件を満たすことがわかる。
NSA開始距離dnsは、キャリブレーション誤差やカメラのノイズなどによる画像処理における計測誤差の影響があったとしても、制御モードがノンストップアライメントへ変更された時点(図7に示すノンストップアライメント開始タイミング(時間t4の開始時点))で、ワークが目標地点を行き過ぎていないようにするための余裕距離に相当する。つまり、システムに応じてこの余裕距離(NSA開始距離dns)を最適化することで、全体としての移動時間を短縮できる。NSA開始距離dnsの決定方法および最適化方法については、後述する。
なお、NSA開始距離dnsと共に、ノンストップアライメント許容最大速度Vns_maxについても最適化することが好ましい。
図9は、本実施の形態に係るアライメントに用いるノンストップアライメント許容最大速度Vns_maxを決定する方法を説明するための図である。まず、ノンストップアライメントの制御性を維持するために、1つのノンストップアライメント制御周期f内で停止する必要がある。つまり、ノンストップアライメント制御周期f内で減速が完了する必要がある。そのため、この要件を満足するための条件としては、システム許容最大加速度をαとして、以下のように示すことができる。
Vns_max≦α×f …(1)
また、制御システム1では、画像処理装置100によって取得された位置情報に基づいてモーションコントローラ200からサーボユニットに対して指示を与えるので、最大で1つのノンストップアライメント制御周期f分だけ遅延する。そのため、ステージ300の2周期分に亘って移動する距離(図9の面積S1と面積S2の合計に相当)だけ誤差が発生する。この発生し得る誤差を要求精度Rより小さくする必要がある。そのため、この要件を満足するための条件としては、以下のように示すことができる。
S≡S1+S2=Vns_max×f+Vns_max×f/2=Vns_max×f×3/2≦R
これを整理すると、以下のような条件が導き出される。
Vns_max≦2R/3f …(2)
上記の(1)式および(2)式を同時に満たすように、ノンストップアライメント許容最大速度Vns_maxが決定される。
このように、対象物と目標地点との間の距離が、画像処理装置100により特定される位置に生じる誤差に応じた距離以下になると、第1の制御動作(通常アライメント)から第2の制御動作(ノンストップアライメント)への切替えが実行される。この誤差に応じた距離を決定する手順については、後述する。
また、第1の制御動作(通常アライメント)における制御指令は、移動機構(ステージ300)を許容される最大加速度で加速させる指令を含む。
<F.本実施の形態に係るアライメントの処理手順>
次に、本実施の形態に係るアライメントの処理手順について説明する。図10は、本実施の形態に係るアライメントの処理手順を示すフローチャートである。図10に示す各ステップは、基本的には、画像処理装置100およびモーションコントローラ200が協働して実行する。なお、本実施の形態においては、2つの処理主体(画像処理装置100およびモーションコントローラ200)を用いる構成を例示するが、これらの処理主体を一体化した実装形態を採用することもできる。この場合には、以下に示す各ステップは、その一体化された処理主体が実行することになる。すなわち、本実施の形態に係るアライメントの実施に必要な各処理は、画像処理装置100およびモーションコントローラ200が互いに連係して、または、いずれか一方が単独で実行する。この処理の分担は、一種の設計事項であり、システム要求や各種制約に応じて適宜選択される。
図10を参照して、画像処理装置100は、カメラ102および104における視野とステージ300の座標との位置関係を特定するためのキャリブレーションを実行する(ステップS2)。このキャリブレーションによって、カメラ102および104によりそれぞれ撮影される位置決めマーク12および14の位置(画素位置)からステージ300の移動量を算出できる。
続いて、画像処理装置100は、カメラ102および104によりワーク上の位置決めマーク12および14をそれぞれ撮影して、ワークの目標地点を決定する(ステップS4)。ステップS2およびS4は、アライメントに係る前処理であり、一度実行されると、対象のワークが変更されるまでは、その前処理において取得されたパラメータを利用できる。そのため、2回目以降のアライメントの実行時には、ステップS2およびS4の実行が省略されてもよい。
続いて、アライメント対象のワークがステージ300上に配置された後、ステップS10以降の処理が実行される。より具体的には、まず、画像処理装置100は、ステージ300上のワークを撮影する(ステップS10)。続いて、画像処理装置100は、カメラ102および104がワークを撮影することで生成された画像データに含まれる位置決めマーク12および14をサーチし、そのサーチ結果に基づいて、ワークの現在地点および目標地点までの差分を算出する(ステップS12)。すなわち、画像処理装置100は、ワーク上の位置決めマーク12および14をカメラ102および104で撮影し、ワークの座標を計測する。つまり、画像処理装置100は、ワークについての位置計測を実行する。この計測結果は、画像処理装置100からモーションコントローラ200へ送信される。
モーションコントローラ200は、目標地点までの差分に基づいて、ステージ300が移動すべき距離(移動量)を算出するとともに、ステージ300の動き(目標軌道、速度パターン、または加速度パターンなど)を決定する(ステップS14)。このとき算出される差分は、ベクトル量であり、例えば、現在地点から目標地点に対する距離および角度が算出される。そして、モーションコントローラ200は、決定された動きに従ってサーボドライバに対して指示を与えることで、ステージ300を移動させる(ステップS16)。ここで、ステップS14において決定される動きは、通常アライメントの区間に相当するものであり、ノンストップアライメントの区間における動きは、ステップS20以降において逐次決定される。
なお、モーションコントローラ200が決定または修正する、動きを定義するデータ構造はどのようなものであってもよい。つまり、ステージ300を図7に示すように移動させることができれば十分である。
ステップS14において決定された動きに従うステージ300の移動が完了すると、つまり図7に示す時間t1〜t3の移動処理が完了すると、ノンストップアライメントが開始される。言い換えれば、上述のステップS10〜S16の処理は、通常のアライメントにおける処理に相当し、ステップS20〜S32の処理は、ノンストップアライメントにおける処理に相当する。
ノンストップアライメントが開始されると、画像処理装置100は、ステージ300上のワークを撮影する(ステップS20)。続いて、画像処理装置100は、カメラ102および104がワークを撮影することで生成された画像データに含まれる位置決めマーク12および14をサーチし、そのサーチ結果に基づいて、ワークの現在地点および目標地点までの差分を算出する(ステップS22)。画像処理装置100によるワークについての位置計測の結果は、画像処理装置100からモーションコントローラ200へ送信される。
モーションコントローラ200は、ワークの目標地点に対する誤差を算出し(ステップS24)、算出した誤差が予め既定された許容値以内であるか否かを判定する(ステップS26)。算出した誤差が許容値以内である場合(ステップS26においてYESの場合)には、アライメントを終了する。すなわち、モーションコントローラ200は、ワークの現在地点と目標地点との間の差分が許容値以内になるように、ステージ300を移動させる。
算出した誤差が許容値を超えている場合(ステップS26においてNOの場合)には、モーションコントローラ200は、画像処理装置100から取得した位置計測の結果がステージ300の制御に使用できるか否かを判定する(ステップS28)。すなわち、画像処理装置100においてワークの位置計測が適切に実行されたか否かが判定される。
画像処理装置100から取得した位置計測の結果がステージ300の制御に使用できると判定された場合(ステップS28においてYESの場合)には、モーションコントローラ200は、目標地点までの差分に基づいて、ステージ300が移動すべき距離(移動量)を算出するとともに、ステージ300の動き(目標軌道、速度パターン、または加速度パターンなど)を修正する(ステップS30)。そして、モーションコントローラ200は、決定された動きに従ってサーボドライバに対して指示を与えることで、ステージ300を移動させる(ステップS32)。
これに対して、画像処理装置100から取得した位置計測の結果がステージ300の制御に使用できないと判定された場合(ステップS28においてNOの場合)には、ステップS30の処理がスキップされる。すなわち、先に決定/修正されている動きをそのまま利用する。
ステップS32の実行後、既定の時間が経過すると、ステップS20以下の処理が再度実行される。
以上のような処理手順によって、本実施の形態に係るアライメントが実行される。なお、あるワークについてのアライメントが完了すると、その位置決めされたワークは次工程へ搬送され、新たなワークを受け入れる。この新たなワークに対して、ステップS10以下の処理が繰返し実行される。
以下、上述のステップのうちいくつかのステップについて、その処理の内容をより詳細に説明する。なお、上述のステップS28の処理は、オプションであり必須の処理ではない。すなわち、ステップS28の判定を行うことなく、ステップS30を実行してもよい。
<G.キャリブレーション>
図10の処理手順のステップS2のキャリブレーションについて説明する。キャリブレーションは、ステージ300の座標系とカメラ102および104の座標系との整合をとる処理を意味する。すなわち、カメラ102および104がワークを撮影することで得られる位置情報と、実際のワーク(または、ステージ300)の位置情報との関係性を決定する処理である。
図11は、本実施の形態に係るアライメントの前処理としてのキャリブレーションを説明するための図である。図12は、本実施の形態に係るアライメントの前処理としてのキャリブレーションの原理を説明するための図である。
図11を参照して、ワーク(ガラス基板2)上の位置決めマーク12および14をカメラ102および104で撮影すると、現実のステージ300の座標系であるステージXY座標系と、カメラ102および104が認識するカメラxy座標系(画像データの画素位置に相当)とは一致しない。そのため、キャリブレーションにおいては、これらの座標系の間で整合をとる。
より具体的には、図12に示すように、位置決めマーク12および14が設けられているワークを移動させ、ステージXY座標系に生じる移動量とカメラxy座標系に生じる移動量とを比較することで、後述するようなキャリブレーションパラメータ(典型的には、アフィン変換パラメータ)を最適化計算する。
より具体的には、ワーク上の位置決めマーク(図12に示す例では、十字マーク)を撮影し、その後、そのワークをステージ300のX方向に沿って所定距離(移動量ΔX)だけ移動させ(Y方向には移動させない)、移動後の位置決めマークを再度撮影する。同様に、そのワークを当初の位置からステージ300のY方向に沿って所定距離(移動量ΔY)だけ移動させ(X方向には移動させない)、移動後の位置決めマークを再度撮影する。
各座標系において、図12に示す3つの位置決めマークのそれぞれについて算出された位置(座標)を用いることで、キャリブレーションパラメータを決定できる。より具体的には、ステージXY座標系における3つの座標とカメラxy座標系における対応する3つの座標とを用いて、以下の式におけるアフィン変換パラメータa〜fを算出する。
このアフィン変換パラメータによって、カメラxy座標系とステージXY座標系との座標値を相互に変換することができる。
<H.目標地点(回転中心)の決定>
図10の処理手順のステップS4のワークの目標地点の決定処理について説明する。本実施の形態に係る制御システム1において、ステージ300はXY方向の移動およびθ方向の回転が可能になっている。ステージ300によるワークの回転中心を目標地点に設定することで、ステージ300を用いてワークのXY方向の移動およびθ方向の回転を合せた位置決めを行うことができる。そのため、本実施の形態においては、前処理として、ステージ300の回転中心を予め特定しておき、この回転中心を目標地点に決定する。
図13は、本実施の形態に係るアライメントの前処理としての目標地点(回転中心)の決定処理を説明するための図である。図14は、本実施の形態に係るアライメントの前処理としての目標地点(回転中心)の決定処理の原理を説明するための図である。
図13を参照して、まず、ワーク(ガラス基板2)をステージ300の正しい位置に配置する。このとき、ワークを配置する位置精度が重要であるので、専用の治具や寸法が正確なマスタワークを用いる。
そして、画像処理装置100は、ワーク上の位置決めマーク12および14をそれぞれカメラ102および104で撮影し、ワークの座標(回転中心の座標と回転角度)を計測する。この回転中心の座標が目標地点に設定される。すなわち、視野が離れた2つのカメラ102および104で撮影した位置決めマーク12および14の座標から、ワーク(ステージ300)の回転中心の座標が算出される。
図14に示すように、ステージ300を角度θだけ回転させて、その前後での位置決めマークの位置の変化に基づいて回転中心を推定する。より具体的には、図14(a)に示すように、位置決めマークが設けられているワークをステージ300によって角度θだけ回転させる。この回転前後における位置決めマークをそれぞれ「サンプリング1点目」および「サンプリング2点目」と示す。そして、図14(b)に示すように、角度θの回転前後における2つの位置決めマークの座標点を通る直線を定義するとともに、図14(c)に示すように、その直線の垂直二等分線上で、2つの位置決めマークとの間になす角が角度θになる座標を算出する。この算出した座標をステージ300の回転中心の座標として決定する。
なお、詳細については、特開2006−049755号公報(特許文献2)を参照されたい。
<I.ノンストップアライメント開始距離dnsの決定方法>
上述したように、ノンストップアライメント開始距離(NSA開始距離)dnsをより短くすることで、全体としての移動時間を短縮できる。すなわち、本実施の形態に係るアライメントを早く完了させるためには、NSA開始距離dnsは、なるべく小さい、すなわちNSA開始距離(ノンストップアライメント開始位置)が目標地点になるべく近い方が好ましい。
一方で、NSA開始距離dnsは、ワークが目標地点を行き過ぎないようにするための余裕距離に相当し、制御安定性の観点からは、より長い方が好ましい。そのため、NSA開始距離dnsを適切に決定する必要がある。
図15は、本実施の形態に係るアライメントに用いるノンストップアライメント開始距離dnsの理論値を決定する方法を説明するための図である。図15を参照して、画像処理装置100がワークを撮影してからモーションコントローラ200へ指令を与えるまでに1つのノンストップアライメント制御周期fに相当するむだ時間が発生し、さらに、減速期間(時間t5)の間もステージ300は移動する。このような滑走距離を考慮すると、NSA開始距離dnsは、以下のような数式に従って算出できる。
dns=Vns_max×f+α×t5/2
=Vns_max×Vns_max/2α
上述の理論値での考慮に加えて、各種の動的に変動する誤差を考慮して、ノンストップアライメント開始距離dnsを決定する必要がある。具体的には、NSA開始距離dnsの最小値は、1回目の撮影による画像処理の結果から算出した移動量に含まれる誤差の最大値に相当する。このような誤差の原因は、(a)カメラのノイズによる計測誤差、および、(b)ステージや光学系の特性に分類できる。(a)の原因は、計測毎に変化し、(b)の原因は、計測位置に依存し、計測毎には変化しない。
(a)の原因については、カメラに用いられている撮像素子の統計的なデータを用いることで、ある程度推測できる。また、(b)の原因については、後述するような手順によって、事前に実験的に測定しておくことで推測できる。
実際にワークを移動させた場合に生じる誤差を実験的に測定しておくことで、NSA開始距離を実験的に決定できる。
最終的には、上述したように決定されるNSA開始距離の理論値と実験値との和をNSA開始距離dnsとして決定する。つまり、余裕距離(NSA開始距離dns)は、移動機構を予め定められた移動量だけ移動させて、当該移動後の対象物の位置を画像処理手段が特定した結果と、当該予め定められた移動量との比較により決定される第1の距離と、画像処理手段が画像データを取得してから特徴部分の位置を特定するまでの間だけ移動機構を第2の速度にて移動させ、さらに移動機構を許容される最大加速度で第2の速度から減速させ停止させるまでの間の移動機構の移動量である第2の距離との和である。
以下、NSA開始距離を実験的に決定する手法について説明する。
[i1:決定方法その1]
図16は、本実施の形態に係るアライメントに用いるノンストップアライメント開始距離dnsを決定する方法(その1)を説明するための図である。図16に示す方法は、ワークの移動量(ベクトル量)をランダムに決定し、このようにランダムに決定された移動量だけワークを移動させた場合に生じる誤差を実験的に取得する。図17は、図16に示すノンストップアライメント開始距離dnsを決定する手順を示すフローチャートである。
図16および図17を参照して、画像処理装置100は、カメラ102および104における視野とステージ300の座標との位置関係を特定するためのキャリブレーションを実行する(ステップS100)。すなわち、ステージ300の座標系とカメラ102および104の座標系との整合をとる。続いて、ユーザは、ワーク(ガラス基板2)をステージ300の所定の位置に配置する(ステップS102)。このとき、ワークを配置する位置精度が重要であるので、専用の治具や寸法が正確なマスタワークを用いる。
そして、画像処理装置100は、ワーク上の位置決めマーク12および14をそれぞれカメラ102および104で撮影し、ワークの座標(回転中心の座標と回転角度)を計測する(ステップS104)。この回転中心の座標(X0,Y0,θ0)が目標地点に設定される。
これによって、NSA開始距離を決定するための前処理が完了する。画像処理装置100は、NSA開始距離dnsの初期値としてゼロをセットする(ステップS106)。続いて、モーションコントローラ200は、位置決めマーク12および14がそれぞれカメラ102および104の視野に入るように、移動量(xt,yt,θt)をランダムに決定し(ステップS108)、決定された移動量に従ってサーボドライバに対して指示を与えることで、ステージ300を移動させる(ステップS110)。
ステージ300の移動後、モーションコントローラ200は、ステージ300を再度目標地点まで移動させる(ステップS112)。すなわち、移動機構(ステージ300)を予め定められた移動量だけ移動させる工程が実行される。画像処理装置100は、ワーク上の位置決めマーク12および14をそれぞれカメラ102および104で撮影し、ワークの座標(X1,Y1,θ1)を計測するとともに、目標地点の座標と計測されたワークの座標との間のステージ300上の距離dを算出する(ステップS114)。すなわち、距離dは、目標地点の座標(X0,Y0)と計測されたワークの座標(X1,Y1)との間の距離に相当する。すなわち、移動後の対象物の位置を撮影して得られる画像データから位置を特定する工程が実行される。
その後、画像処理装置100は、NSA開始距離dnsの現在値と算出された距離dとを比較し、算出された距離dがNSA開始距離dnsの現在値より大きいか否かを判定する(ステップS116)。算出された距離dがNSA開始距離dnsの現在値より大きい場合(ステップS116においてYESの場合)には、画像処理装置100は、NSA開始距離dnsを算出された距離dに更新する(ステップS118)。そして、ステップS108以下の処理が繰返される。
これに対して、算出された距離dがNSA開始距離dnsの現在値より小さい場合(ステップS116においてNOの場合)には、画像処理装置100は、NSA開始距離dnsの更新が所定の回数連続して行われなかったか否かを判定する(ステップS120)。すなわち、NSA開始距離dnsの現在値が生じ得る誤差の最大値になっているか否かが判定される。NSA開始距離dnsの更新が直近の所定回数内に行われている場合(ステップS120においてNOの場合)には、ステップS108以下の処理が繰返される。
これに対して、NSA開始距離dnsの更新が所定の回数連続して行われていない場合(ステップS120においてYESの場合)には、画像処理装置100は、NSA開始距離dnsの現在値を最終的なNSA開始距離dnsの最適値として出力する(ステップS122)。そして、処理は終了する。
以上のとおり、移動機構(ステージ300)を複数回移動させるとともに、予め定められた移動量と特定された対象物の位置とのそれぞれの比較に応じて、誤差に応じた距離(NSA開始距離dns)を決定する工程が実行される。
[i2:決定方法その2]
図18は、本実施の形態に係るアライメントに用いるノンストップアライメント開始距離dnsを決定する方法(その2)を説明するための図である。上述の図16に示す方法では、ワークの移動量をランダムに決定してNSA開始距離dnsを算出する手法について説明したが、図18に示す方法では、規則的に配置された各座標について誤差を評価することで、NSA開始距離dnsを算出する手法について説明する。図19は、図18に示すノンストップアライメント開始距離dnsを決定する手順を示すフローチャートである。
図18および図19を参照して、画像処理装置100は、カメラ102および104における視野とステージ300の座標との位置関係を特定するためのキャリブレーションを実行する(ステップS200)。すなわち、ステージ300の座標系とカメラ102および104の座標系との整合をとる。続いて、ユーザは、ワーク(ガラス基板2)をステージ300の所定の位置に配置する(ステップS202)。このとき、ワークを配置する位置精度が重要であるので、専用の治具や寸法が正確なマスタワークを用いる。
そして、画像処理装置100は、ワーク上の位置決めマーク12および14をそれぞれカメラ102および104で撮影し、ワークの座標(回転中心の座標と回転角度)を計測する(ステップS204)。この回転中心の座標(X0,Y0,θ0)が目標地点に設定される(図18(a)参照)。これによって、NSA開始距離を決定するための前処理が完了する。
まず、モーションコントローラ200は、ステージ300を原点((x,y,θ)=(0,0,0))に移動させる(ステップS206)。その後、モーションコントローラ200は、図18(b)に示すように、ステージ300を原点から目標地点(x0,y0,θ0)に再度移動させる(ステップS208)。画像処理装置100は、ステージ300の移動後に、ワーク上の位置決めマーク12および14をそれぞれカメラ102および104で撮影し、ワークの座標(X1,Y1,θ1)を計測するとともに、目標地点の座標(X0,Y0,θ0)と計測されたワークの座標(X1,Y1,θ1)との間のステージ300上の距離d1を算出する(ステップS210)。すなわち、距離dは、目標地点の座標(X0,Y0)と計測されたワークの座標(X1,Y1)との間の距離に相当する。
次に、モーションコントローラ200は、所定規則に従ってステージ300の移動先を決定する(ステップS212)。具体的には、図18(c)に示すように、ステージ300のX方向に沿って移動させた座標(T,0,0),(2T,0,0),(3T,0,0)を移動先としてそれぞれ決定する。すなわち、あるX軸上の移動先としては、一定の変化量Tずつ変化させた座標が順次設定される。
そして、モーションコントローラ200は、ステージ300をステップS212において決定された移動先に移動させる(ステップS214)。その後、モーションコントローラ200は、ステージ300を移動先から目標地点(x0,y0,θ0)に再度移動させる(ステップS216)。画像処理装置100は、ステージ300の移動後に、ワーク上の位置決めマーク12および14をそれぞれカメラ102および104で撮影し、ワークの座標を計測するとともに、目標地点の座標(X0,Y0,θ0)と計測されたワークの座標との間のステージ300上の距離dnを算出する(ステップS218)。
その後、モーションコントローラ200は、X方向のすべての点を移動先として決定したか否かを判定する(ステップS220)。X方向のすべての点を移動先として決定していない場合(ステップS220においてNOの場合)には、ステップS212以下の処理が再度実行される。
以上のような処理によって、各移動先への移動後に取得された計測座標(X2,Y2,θ2)、(X3,Y3,θ3)、(X4,Y4,θ4)…が取得され、各計測座標と(X0,Y0)との間の距離d2,d3,d4,…が算出される。
X方向のすべての点を移動先として決定している場合(ステップS220においてYESの場合)には、モーションコントローラ200は、ステージ300の移動先のY方向の値を所定値だけインクリメントする(ステップS222)。すなわち、ステージ300の端またはカメラの視野の端まで到達したら、ステージ300をY方向にTだけ移動させる。そして、モーションコントローラ200は、Y方向のすべての点を移動先として決定したか否かを判定する(ステップS224)。Y方向のすべての点を移動先として決定していない場合(ステップS224においてNOの場合)には、ステップS212以下の処理が再度実行される。
Y方向のすべての点を移動先として決定している場合(ステップS224においてYESの場合)、すなわちステージ300上のすべての座標について移動距離を算出できれば、モーションコントローラ200は、ステージ300の移動先のθ成分の値を所定値だけインクリメントする(ステップS226)。すなわち、ステージ300の端またはカメラの視野の端まで到達したら、ステージ300をθ方向に所定値だけ回転させる。そして、モーションコントローラ200は、θ成分のすべての点を移動先として決定したか否かを判定する(ステップS228)。θ成分のすべての点を移動先として決定していない場合(ステップS228においてNOの場合)には、ステップS212以下の処理が再度実行される。
このようにして、図18(d)に示すように、規則的に配置された各座標へ移動させた場合に生じる誤差をそれぞれ算出する処理が実行される。
θ成分のすべての点を移動先として決定している場合(ステップS228においてYESの場合)には、算出されたすべての移動先(X,Y,θ)についての、計測座標(X,Y)と(X0,Y0)との距離dの最大値を算出し、その算出した最大値をNSA開始距離dnsの最適値として出力する(ステップS230)。そして、処理は終了する。
<J.計測失敗時の処理>
図10の処理手順のステップS28において、モーションコントローラ200は、画像処理装置100から取得した位置計測の結果がステージ300の制御に使用できるか否かを判定する。この判定処理は、必須のステップではないが、ノンストップアライメントの位置決め精度を高めるためには、実行することが好ましい。
すなわち、ノンストップアライメントでは、画像処理による計測結果に基づいて動的に速度や位置を制御するため、計測結果に誤差が大きい場合や、画像処理による計測により多くの時間がかかる場合には、制御に大きな外乱が生じ得る。その結果、大幅な時間ロスを生じてしまう。
図20は、本実施の形態に係るアライメントの実行時に計測処理が失敗した場合の処理を説明するための図である。図20に示すように、画像処理装置100から取得した位置計測の結果がステージ300の制御に使用できるか否かが判定され(図10のステップS28参照)、使用できないと判定された場合には、ステージ300の動きを修正しないで、先に決定/修正されている動きに従ってステージ300の移動を継続する。なお、先に決定/修正されている動きでは、目標地点までの挙動が定義されているので、動きをそのまま使用したとしても、大きな問題は生じない。
このように、本実施の形態に係るアライメントにおいては、画像処理の結果がステージ300の制御に使用できるか否かを判定するロジックが含まれており、ステージ300の制御に使用できないと判定された場合には、ステージ300の移動方向の修正をせずに現状の移動が継続される。すなわち、本実施の形態に係る制御システム1は、第2の制御動作(ノンストップアライメント)において、画像処理装置100による特徴部分の位置の特定が正常ではない場合に、制御指令の決定をスキップする。
この位置計測の結果がステージ300の制御に使用できるか否かを判定する基準の一例としては、例えば、以下のようなものが挙げられる。
(1)ワークを検出できなかった
(2)前回の計測結果からの移動距離が大き過ぎる、または、サーボモータのエンコーダ値から推測される現在位置との差がしきい値以上離れている(なお、ノンストップアライメントにおける移動距離は、図8に示す時間t4のうちに進む距離d4を越えることはない)
(3)画像処理が所定処理時間内に完了しなかった(ノンストップアライメントのための画像処理は、図8に示すノンストップアライメント制御周期fを超えてはいけない)
なお、上記の(3)の場合には、最初に、画像処理装置100における画像処理を中断するようにしてもよい。
なお、位置計測の結果がステージ300の制御に使用できるか否かの判定機能を画像処理装置100側に搭載してもよい。この場合には、判定結果が画像処理装置100からモーションコントローラ200へ通知されることになる。また、画像処理装置100は、自身による特徴部分の位置の特定が正常ではない場合に、制御指令の決定をスキップする。
<K.視野サイズの異なる2種類のカメラの使用例(変形例1)>
上述の実施の形態においては、1種類のカメラで位置決めマークを撮影する構成について例示したが、要求される位置精度を満足するために、異なる視野をもつ複数のカメラを用いる構成が採用される場合がある。すなわち、単一のカメラでは視野サイズの広さと分解能の高さとの両方を満足することが困難である。そのため、移動量に対して要求精度が厳しい場合には、視野サイズの異なる複数種類のカメラを用いたアライメントシステムが構成される場合がある。
図21は、本実施の形態の変形例1に係る制御システムの構成を説明するための模式図である。図22は、本実施の形態の変形例1に係るアライメントを説明するための図である。
図21に示す制御システムにおいては、位置決めマーク12および14の各々に対応付けて、視野サイズの異なる2種類のカメラを用意する。カメラ102−1および104−1(広視野カメラ)は、より広い視野を有しており、ワークが存在し得るすべての領域を撮影する。一方、カメラ102−2および104−2(狭視野カメラ)は、より狭い視野を有しており、目標地点の近傍をより高解像度で撮影する。
すなわち、本実施の変形例1に係る画像処理装置100は、互いに視野サイズの異なる第1および第2のカメラからそれぞれ画像データを取得するように構成されている。
図22を参照して、変形例1に係るアライメントでは、広視野カメラの撮影によって粗く位置計測を行い、ワークを狭視野カメラの視野内まで移動させる。その後、狭視野カメラでより精密に位置計測を行うことで、ワークを目標地点に位置決めする。変形例1においては、説明の便宜上、広視野カメラで粗く位置決めすることを「プリアライメント」と称し、狭視野カメラで精密に位置決めすることを「本アライメント」と称す。
このように、本実施の形態の変形例1に係るアライメントにおいては、高精度および広視野を両立するために、異なる視野をもつ複数種類のカメラを用いる構成において、プリアライメントと本アライメントとの間でステージ300を停止することなく、移動制御を継続することで、移動に要する時間を短縮する。
本アライメントは、ワークが狭視野カメラの視野に入ったタイミング(本アライメント開始タイミング)で開始されてもよい。この場合、狭視野カメラの撮影開始タイミングTp(本アライメント開始タイミング)は、広視野カメラでの計測位置から、狭視野カメラの視野までの最短距離に基づいて、以下の式に従って算出できる。
なお、広視野カメラおよび狭視野カメラの両方の視野に位置決めマークを配置してキャリブレーションを行うことで、カメラ切替えによるアライメントへの影響を回避できる。
図21に示すような視野サイズの異なる2種類のカメラを使用する場合であっても、ステージを停止させることなく、連続的に移動させて、アライメントを行うことができる。
すなわち、本実施の形態の変形例1に係る制御システム1は、視野サイズがより大きい第1のカメラ(広視野カメラ)からの画像データに基づいて第1の制御動作(通常アライメント)において用いられる制御指令を決定し、第1の制御動作において、移動機構の移動中に、画像データの取得先を第1のカメラに代えて視野サイズがより小さい第2のカメラ(狭視野カメラ)に切換える。
このようにステージを停止せることなく、広視野カメラから狭視野カメラへの切替えを行うことで、全体の移動に要する時間を短縮できる。
なお、第1のカメラ(広視野カメラ)および第2のカメラ(狭視野カメラ)がともに画像処理装置100に接続されることから、画像処理装置100側に、(1)制御指令の決定する機能、および、(2)第2のカメラの視野にワークが入ることを第1または第2のカメラで監視し、視野に入るまで通常アライメントを継続し、視野に入ったら上記のカメラ切替える機能、の少なくとも一方を搭載してもよい。この場合には、画像処理装置100は、視野サイズがより大きい第1のカメラからの画像データに基づいて第1の制御動作(通常アライメント)において用いられる制御指令を決定し、第1の制御動作において、移動機構の移動中に、画像データの取得先を第1のカメラに代えて視野サイズがより小さい第2のカメラに切換える。
<L.垂直方向の移動(変形例2)>
図1に示すアライメントシステムの適用例においては、ステージを水平方向(XY平面)のみならず、垂直方向(Z軸)にも移動させることがある。変形例2として、このような垂直方向の移動が同時に行われる場合の補正処理について説明する。
図23は、本実施の形態の変形例2に係る適用例を説明するための模式図である。図24は、図23に示す適用例における補正処理を説明するための図である。
図23を参照して、例えば、ガラス基板2に露光マスク4を貼り合せる工程においては、アライメントしながら露光マスク4とガラス基板2との距離を徐々に縮めていき、アライメント完了時点には、露光マスク4が下に置かれたガラス基板2と密着しているようにする。
このような工程において、水平方向(XY平面)の移動を行うXYステージと垂直方向(Z軸)の移動を行うZ軸ステージとがそれぞれ独立に配置される場合がある。すなわち、移動機構であるステージは、第1および第2の制御動作(通常アライメントおよびノンストップアライメント)に従って位置決めされる座標系に加えて、さらに移動可能な別の座標系を有している。このような場合には、Z軸ステージがXYステージに対して垂直になっていない場合がある。このような場合には、次のような問題が発生し得る。
図24を参照して、XYステージおよびZ軸ステージは同時に制御されるが、基本的には、ノンストップアライメントはXY平面に対して実行されるため、XY平面での位置決めが完了すると、Z軸方向の移動が継続しているにもかかわらず、ノンストップアライメントが完了してしまう場合がある。
すなわち、ノンストップアライメントに係る位置決めを行っている対象はXY平面であり、Z軸の移動中に、XY平面の位置決め精度が要求精度内に入ったことで、ノンストップアライメントが終了してしまう(図24の時刻T2)。
ノンストップアライメント終了後、上述のようなステージ間のずれによって、Z軸移動に伴いXY平面に位置ずれが生じる場合がる。図24には、位置決め精度が要求精度内に入り、時刻T=2においてノンストップアライメントは停止するが、その後のZ軸の移動に伴って位置ずれが生じる様子を示す。
このような課題に対する対策として、Z軸の移動に伴うXY平面における変化量を予め取得しておき、ノンストップアライメントの目標地点に対する補正値として与えることが好ましい。具体的には、以下のような数式に従って、目標地点を補正する。
X=X’+AZ
Y=Y’+BZ
ここで、X,Yは補正前の座標を示し、X’,Y’は補正後の座標を示し、ZはZ軸方向の移動量を示す。係数AおよびBは、予めキャリブレーションによって取得しておく。上式において、補正量がZ軸方向の移動量に関する値になっているのは、図24に示すように、目標地点に対するオフセット成分は、露光マスク4のZ位置によって動的に変化させる必要があるからである。
このように、本実施の形態の変形例2においては、アライメント中にステージがXY方向のみならずZ方向にも移動する構成が採用されている。このような構成において、Z軸がXY軸に垂直でない場合、Z軸の移動量に伴うXY方向における変化量を予めキャリブレーションしておくことで、アライメント時にXY位置を補正する。すなわち、本実施の形態の変形例2に係る制御システムは、別の座標系(Z軸)において移動機構(ステージ)が移動することによって生じる誤差に応じて、第2の制御動作(ノンストップアライメント)における制御指令を補正する。
このような補正を行うことで、水平方向および垂直方向にアライメントさせる必要がある場合であっても、その精度を高めることができる。
<M.利点>
本実施の形態に係るアライメント手法では、静止しているワークに対して一回の撮影で目標地点までの移動に係る動きを決定し、その決定した動きに従って当該ワークを移動させる制御(一種のフィードフォワード制御)手法と、移動しているワークに対して一回以上の撮影を順次行うことで、移動速度や移動量を順次調整する制御(一種のフィードバック制御)手法とを途中で切替える。これによって、アライメントに要する時間を短縮化できる。
このとき、上記2つの制御手法を切替えるタイミングを可能な限り遅くすることで、移動速度の遅いフィードバック制御手法が実行される時間を最小化することができる。このとき、システムに生じ得る誤差の最大値を予め計測しておき、この計測によって得られた誤差の最大値に応じて、上記2つの制御手法を切替えるタイミングを決定する。つまり、フィードフォワード制御手法によってワークが当該計測された誤差範囲内に移動すると、そのタイミングで制御手法を切替える。
上述したように、本実施の形態n係るアライメントは、通常アライメントとノンストップアライメントとを組み合わせることで、ワークを目標地点に位置決めするのに要する時間を短縮する。
図25は、本実施の形態に係るアライメントによる移動時間の短縮効果を説明するための図である。図25には、本実施の形態に係るアライメントによる時間短縮化の効果を従来のアライメントと比較した図である。図25に示すように、本実施の形態においては、一旦移動を開始したステージ300(ワーク)を停止させることなく、位置決め制御を行うので、停止に伴う時間のロスがなく、従来のアライメントに比較して、アライメントの完了までに要する時間を大幅に短縮できる。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
2 ガラス基板、4 露光マスク、12、4 位置決めマーク、100 画像処理装置、102,104 カメラ、110,214 プロセッサ、112 RAM、114 表示コントローラ、116 システムコントローラ、118 コントローラ、120 ハードディスク、122 カメラインターフェイス、122a,112b 画像バッファ、124 入力インターフェイス、126 モーションコントローラインターフェイス、128,228 通信インターフェイス、130,222 メモリカードインターフェイス、132 表示部、134 キーボード、136,224 メモリカード、150 制御プログラム、200 モーションコントローラ、210 主制御ユニット、212 チップセット、216 不揮発性メモリ、218 主メモリ、220 システムクロック、226 内部バス、230 内部バスコントローラ、232 制御回路、234 内部バス制御回路、236 バッファメモリ、240,242,244 サーボユニット、250,252,254 サーボドライバ、300 ステージ、310,312,314 サーボモータ。

Claims (9)

  1. 位置決め用の特徴部分が設けられた対象物を撮影して得られる画像データを取得し、前記画像データに含まれる前記特徴部分の位置を特定する画像処理手段と、
    前記対象物の位置を変更する移動機構に対して、前記特定された特徴部分の位置に基づいて制御指令を与えることで、前記対象物を所定の最終目標位置に位置決めする制御手段とを備える制御システムであって、
    前記制御システムは、第1の制御動作を実行後に第2の制御動作を実行し、
    前記第1の制御動作において、前記画像処理手段は、前記画像データを取得して前記特徴部分の位置を特定し、前記制御手段は、前記特定された特徴部分の位置に基づいて、前記対象物を所定の第1の速度まで加速した後で前記第1の速度より小さい所定の第2の速度まで減速して前記最終目標位置から所定の余裕距離だけ離れた中間目標位置に移動するための制御指令を予め決定し、
    前記第2の制御動作において、前記画像処理手段は、前記移動機構の移動中に前記画像データを取得して前記特徴部分の位置を特定し前記制御手段は、前記特定された特徴部分の位置に基づいて、前記対象物を前記最終目標位置に位置決めするための制御指令を決定し、前記画像処理手段による前記特徴部分の位置の特定と、前記制御手段による前記対象物を前記最終目標位置に位置決めするための制御指令の決定とが繰返し実行され、
    前記余裕距離は、前記移動機構を許容される最大加速度で前記第2の速度から減速させたときに前記対象物が前記最終目標位置を行き過ぎることのないよう定められている、制御システム。
  2. 前記余裕距離は、前記移動機構を予め定められた移動量だけ移動させて、当該移動後の対象物の位置を前記画像処理手段が特定した結果と、当該予め定められた移動量との比較により決定される第1の距離と、前記画像処理手段が画像データを取得してから前記特徴部分の位置を特定するまでの間だけ前記移動機構を前記第2の速度にて移動させ、さらに前記移動機構を許容される最大加速度で前記第2の速度から減速させ停止させるまでの間の前記移動機構の移動量である第2の距離との和である、請求項1に記載の制御システム。
  3. 前記第1の制御動作における前記制御指令は、前記移動機構を許容される最大加速度で加速させる指令を含む、請求項1または2に記載の制御システム。
  4. 前記制御手段は、前記第2の制御動作において、前記画像処理手段による前記特徴部分の位置の特定が正常ではない場合に、前記制御指令の決定をスキップする、請求項1〜3のいずれか1項に記載の制御システム。
  5. 前記画像処理手段は、互いに視野サイズの異なる第1および第2のカメラからそれぞれ画像データを取得するように構成されており、
    前記制御手段は、
    視野サイズがより大きい第1のカメラからの画像データに基づいて前記第1の制御動作において用いられる前記制御指令を決定し、
    前記第1の制御動作において、前記移動機構の移動中に、前記画像データの取得先を前記第1のカメラに代えて視野サイズがより小さい第2のカメラに切換える、請求項1〜4のいずれか1項に記載の制御システム。
  6. 前記画像処理手段は、前記第2の制御動作において、前記特徴部分の位置の特定が正常ではない場合に、前記制御指令の決定をスキップする、請求項1〜5のいずれか1項に記載の制御システム。
  7. 前記移動機構は、前記第1および第2の制御動作に従って位置決めされる座標系に加えて、さらに移動可能な別の座標系を有しており、
    前記制御手段は、当該別の座標系において前記移動機構が移動することによって生じる誤差に応じて、前記第2の制御動作における制御指令を補正する、請求項1〜のいずれか1項に記載の制御システム。
  8. 位置決め用の特徴部分が設けられた対象物を撮影して得られる画像データを取得し、前記画像データに含まれる前記特徴部分の位置を特定するステップと、
    前記対象物の位置を変更する移動機構に対して、前記特定された特徴部分の位置に基づいて制御指令を与えることで、前記対象物を所定の最終目標位置に位置決めするステップとを含む制御方法であって、
    前記制御方法において、第1の制御動作を実行後に第2の制御動作が実行され、
    前記第1の制御動作において、前記画像データを取得して前記特徴部分の位置を特定するステップが実行された後、前記位置決めするステップは、前記特定された特徴部分の位置に基づいて、前記対象物を所定の第1の速度まで加速した後で前記第1の速度より小さい所定の第2の速度まで減速して前記最終目標位置から所定の余裕距離だけ離れた中間目標位置に移動するための制御指令を予め決定するステップを含み、
    前記第2の制御動作において、前記移動機構の移動中に前記画像データを取得して前記特徴部分の位置を特定するステップが実行された後、前記位置決めするステップは、特定された特徴部分の位置に基づいて、前記対象物を前記最終目標位置に位置決めするステップを含み、前記特徴部分の位置を特定するステップと、前記対象物を前記最終目標位置に位置決めするステップとは繰返し実行され、
    前記余裕距離は、前記移動機構を許容される最大加速度で前記第2の速度から減速させたときに前記対象物が前記最終目標位置を行き過ぎることのないよう定められている、制御方法。
  9. 前記位置決めするステップは、前記対象物と目標地点との間の距離が、前記画像データから特定される位置に生じる誤差に応じた距離以下になると、前記第1の制御動作から前記第2の制御動作への切替えるステップを含み、
    前記制御方法は、さらに
    前記移動機構を予め定められた移動量だけ移動させるステップと、
    前記移動後の対象物の位置を撮影して得られる画像データから位置を特定するステップと、
    前記移動機構を複数回移動させるとともに、前記予め定められた移動量と前記特定された対象物の位置とのそれぞれの比較に応じて、前記誤差に応じた距離を決定するステップとを含む、請求項に記載の制御方法。
JP2013080774A 2013-04-08 2013-04-08 制御システムおよび制御方法 Active JP6167622B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2013080774A JP6167622B2 (ja) 2013-04-08 2013-04-08 制御システムおよび制御方法
KR1020140039169A KR101668913B1 (ko) 2013-04-08 2014-04-02 제어 시스템 및 제어 방법
EP14163288.5A EP2789431B1 (en) 2013-04-08 2014-04-03 Control system and control method
US14/246,271 US9424646B2 (en) 2013-04-08 2014-04-07 Control system and control method
CN201410138678.6A CN104102226B (zh) 2013-04-08 2014-04-08 控制系统及控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013080774A JP6167622B2 (ja) 2013-04-08 2013-04-08 制御システムおよび制御方法

Publications (2)

Publication Number Publication Date
JP2014203365A JP2014203365A (ja) 2014-10-27
JP6167622B2 true JP6167622B2 (ja) 2017-07-26

Family

ID=50440506

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013080774A Active JP6167622B2 (ja) 2013-04-08 2013-04-08 制御システムおよび制御方法

Country Status (5)

Country Link
US (1) US9424646B2 (ja)
EP (1) EP2789431B1 (ja)
JP (1) JP6167622B2 (ja)
KR (1) KR101668913B1 (ja)
CN (1) CN104102226B (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10695912B2 (en) 2017-11-16 2020-06-30 Kabushiki Kaisha Toshiba Actuation system and computer program product utilizing visual servo control based on images from multiple cameras

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10268927B2 (en) * 2014-10-14 2019-04-23 Eigen Innovations Inc. System, apparatus and method for configuration of industrial vision control modules
JP6562626B2 (ja) * 2014-12-10 2019-08-21 キヤノン株式会社 顕微鏡システム
DE102015205738A1 (de) * 2015-03-30 2016-10-06 Carl Zeiss Industrielle Messtechnik Gmbh Bewegungsmesssystem einer Maschine und Verfahren zum Betreiben des Bewegungsmesssystems
JP2017020797A (ja) * 2015-07-07 2017-01-26 日酸Tanaka株式会社 鋼板位置検出装置及び切断装置
JP6421722B2 (ja) * 2015-08-07 2018-11-14 オムロン株式会社 画像処理装置、校正方法および校正プログラム
JP6376145B2 (ja) * 2016-01-27 2018-08-22 Jfeスチール株式会社 厚鋼板の直角度測定方法及び直角度測定装置
JP6333871B2 (ja) * 2016-02-25 2018-05-30 ファナック株式会社 入力画像から検出した対象物を表示する画像処理装置
WO2017154707A1 (ja) 2016-03-09 2017-09-14 株式会社ニコン 検出装置、検出システム、検出方法、及び検出プログラム
US11421995B2 (en) * 2016-11-29 2022-08-23 Mitsubishi Heavy Industries Machinery Systems, Ltd. Map matching device, map matching system, map matching method and program
JP6903133B2 (ja) * 2016-12-28 2021-07-14 エーエスエムエル ホールディング エヌ.ブイ. 複数イメージ粒子検出のシステム及び方法
JP6984130B2 (ja) 2017-01-17 2021-12-17 オムロン株式会社 画像処理装置、制御システム、画像処理装置の制御方法、制御プログラム、および記録媒体
JP6356845B1 (ja) * 2017-02-13 2018-07-11 ファナック株式会社 検査システムの動作プログラムを生成する装置および方法
JP7167418B2 (ja) 2017-06-30 2022-11-09 オムロン株式会社 位置制御システム、位置検出装置、および制御プログラム
JP6881188B2 (ja) * 2017-09-27 2021-06-02 オムロン株式会社 位置検出装置およびプログラム
CN108885460B (zh) * 2018-02-02 2020-07-03 深圳前海达闼云端智能科技有限公司 定位方法、装置、机器人及计算机可读存储介质
CN108388206B (zh) * 2018-03-07 2020-11-24 深圳市汇川技术股份有限公司 进给速度实时动态规划方法及系统
TWI662781B (zh) * 2018-03-29 2019-06-11 東元電機股份有限公司 馬達控制系統及其方法
JP7020262B2 (ja) * 2018-04-17 2022-02-16 オムロン株式会社 制御システム、制御方法およびプログラム
JP6919623B2 (ja) * 2018-04-26 2021-08-18 オムロン株式会社 制御システム、制御方法、および制御プログラム
JP6922829B2 (ja) * 2018-04-26 2021-08-18 オムロン株式会社 制御システム、制御方法、および制御プログラム
CN108608463B (zh) * 2018-05-16 2021-07-30 珞石(山东)智能科技有限公司 工业机器人传送带动态跟踪方法
JP7078894B2 (ja) * 2018-06-11 2022-06-01 オムロン株式会社 制御システム、制御装置、画像処理装置およびプログラム
JP7172151B2 (ja) * 2018-06-11 2022-11-16 オムロン株式会社 制御システム、制御装置およびプログラム
JP7078895B2 (ja) * 2018-06-11 2022-06-01 オムロン株式会社 制御システム、制御装置、画像処理装置およびプログラム
JP6950631B2 (ja) * 2018-06-26 2021-10-13 オムロン株式会社 位置決めシステム、制御方法およびプログラム
US11002529B2 (en) 2018-08-16 2021-05-11 Mitutoyo Corporation Robot system with supplementary metrology position determination system
US10751883B2 (en) * 2018-08-16 2020-08-25 Mitutoyo Corporation Robot system with supplementary metrology position coordinates determination system
US10871366B2 (en) 2018-08-16 2020-12-22 Mitutoyo Corporation Supplementary metrology position coordinates determination system for use with a robot
US11745354B2 (en) 2018-08-16 2023-09-05 Mitutoyo Corporation Supplementary metrology position coordinates determination system including an alignment sensor for use with a robot
US10913156B2 (en) 2018-09-24 2021-02-09 Mitutoyo Corporation Robot system with end tool metrology position coordinates determination system
JP7211773B2 (ja) * 2018-11-15 2023-01-24 株式会社ミツトヨ 画像測定機および画像測定プログラム
CN109814613A (zh) * 2019-01-23 2019-05-28 唐山钢铁集团微尔自动化有限公司 一种设备动作的控制和定位方法
JP7378934B2 (ja) * 2019-01-29 2023-11-14 キヤノン株式会社 情報処理装置、情報処理方法及びシステム
JP7059968B2 (ja) * 2019-03-01 2022-04-26 オムロン株式会社 制御装置および位置合わせ装置
CN111650805B (zh) * 2020-05-21 2021-03-19 中国科学院西安光学精密机械研究所 一种基于旋转电磁铁切换机构的双视场快速切换装置及方法
US11486893B2 (en) * 2020-10-06 2022-11-01 Pixart Imaging Inc. Optical sensing system and optical navigation system
CN116615701A (zh) 2020-12-24 2023-08-18 松下知识产权经营株式会社 马达控制装置
CN116686210A (zh) 2020-12-24 2023-09-01 松下知识产权经营株式会社 马达控制装置
JP2022178404A (ja) * 2021-05-20 2022-12-02 オムロン株式会社 制御システム、制御方法及びプログラム

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4209853A (en) * 1974-07-22 1980-06-24 Hyatt Gilbert P Holographic system for object location and identification
US4641071A (en) * 1985-09-25 1987-02-03 Canon Kabushiki Kaisha System for controlling drive of a wafer stage
JPH06250740A (ja) * 1993-02-24 1994-09-09 Hitachi Ltd ディジタル位置決め制御装置
JPH0888167A (ja) * 1994-09-20 1996-04-02 Canon Inc 可動体の位置決め制御装置及び定盤の姿勢制御装置及びそれらを使用した半導体露光装置
JPH1173225A (ja) * 1997-08-29 1999-03-16 Oki Electric Ind Co Ltd 位置決め方法
JP2000180810A (ja) 1998-12-15 2000-06-30 Ricoh Co Ltd 液晶表示セルの製造装置
JP3300682B2 (ja) * 1999-04-08 2002-07-08 ファナック株式会社 画像処理機能を持つロボット装置
GB2377409A (en) * 2001-07-13 2003-01-15 Dek Int Gmbh Screen printing alignment and inspection apparatus having at least two workpiece imaging units
DE10155430B4 (de) * 2001-11-12 2006-12-14 Siemens Ag Adaption von Kompensationsdaten zur Verringerung von Stellungsfehlern bei Werkzeugmaschinen und Robotern
JP4345607B2 (ja) * 2004-08-09 2009-10-14 オムロン株式会社 回転中心算出方法およびこの方法を用いたワーク位置決め装置
JP3977398B2 (ja) * 2005-06-10 2007-09-19 株式会社ファースト XYθステージによる位置アライメントシステム
JP2007011611A (ja) 2005-06-29 2007-01-18 Ricoh Co Ltd 位置決め制御装置、位置決め制御方法、その方法をコンピュータに実行させるプログラム、画像形成装置、および記録媒体
JP2007206797A (ja) * 2006-01-31 2007-08-16 Omron Corp 画像処理方法および画像処理装置
JP5132904B2 (ja) * 2006-09-05 2013-01-30 東京エレクトロン株式会社 基板位置決め方法,基板位置検出方法,基板回収方法及び基板位置ずれ補正装置
JP4993614B2 (ja) * 2008-02-29 2012-08-08 東京エレクトロン株式会社 搬送手段のティーチング方法、記憶媒体及び基板処理装置
US8600552B2 (en) * 2009-10-30 2013-12-03 Honda Motor Co., Ltd. Information processing method, apparatus, and computer readable medium
JP5316563B2 (ja) * 2011-02-15 2013-10-16 オムロン株式会社 画像処理装置および画像処理システム
JP2012187651A (ja) * 2011-03-09 2012-10-04 Omron Corp 画像処理装置および画像処理システム、ならびにそれらに向けられたガイダンス装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10695912B2 (en) 2017-11-16 2020-06-30 Kabushiki Kaisha Toshiba Actuation system and computer program product utilizing visual servo control based on images from multiple cameras

Also Published As

Publication number Publication date
CN104102226B (zh) 2017-08-25
KR101668913B1 (ko) 2016-10-24
US9424646B2 (en) 2016-08-23
EP2789431A2 (en) 2014-10-15
EP2789431B1 (en) 2019-10-02
US20140301632A1 (en) 2014-10-09
CN104102226A (zh) 2014-10-15
KR20140121780A (ko) 2014-10-16
JP2014203365A (ja) 2014-10-27
EP2789431A3 (en) 2015-04-15

Similar Documents

Publication Publication Date Title
JP6167622B2 (ja) 制御システムおよび制御方法
CN110581946B (zh) 控制系统、控制装置、图像处理装置以及存储介质
WO2021012124A1 (zh) 机器人手眼标定方法、装置、计算设备、介质以及产品
US11376734B2 (en) Trajectory control device
CN110581945B (zh) 控制系统、控制装置、图像处理装置以及存储介质
JP2010207990A (ja) 計測システム
WO2020003945A1 (ja) 位置決めシステム、制御方法およびプログラム
US20230123629A1 (en) 3d computer-vision system with variable spatial resolution
US20230025149A1 (en) Horizontal correction method for detection platform, electronic device, and storage medium
WO2019208108A1 (ja) 制御システム、制御方法、および制御プログラム
US20220134570A1 (en) Control device and alignment device
CN110581944B (zh) 控制系统、控制装置以及存储介质
WO2024023975A1 (ja) アライメントシステム、アライメント方法及びプログラム
JP2005090983A (ja) 直進移動装置およびステージ移動装置
WO2024023974A1 (ja) アライメントシステム、アライメント方法及びプログラム
Luo et al. Calibration method of roof weld coating robot system based on plane-to-plane intersection model
WO2024023976A1 (ja) アライメントシステム、アライメント方法及びプログラム
JPH1034571A (ja) ロボットの位置ずれ修正装置
KR20230116601A (ko) 머신 좌표계와 영상 좌표계의 정합 방법 및 장치

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160304

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170404

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170515

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170530

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170612

R150 Certificate of patent or registration of utility model

Ref document number: 6167622

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250