JP2019215635A - Control system, control unit, image processing apparatus, and program - Google Patents
Control system, control unit, image processing apparatus, and program Download PDFInfo
- Publication number
- JP2019215635A JP2019215635A JP2018111387A JP2018111387A JP2019215635A JP 2019215635 A JP2019215635 A JP 2019215635A JP 2018111387 A JP2018111387 A JP 2018111387A JP 2018111387 A JP2018111387 A JP 2018111387A JP 2019215635 A JP2019215635 A JP 2019215635A
- Authority
- JP
- Japan
- Prior art keywords
- movement
- image processing
- imaging operation
- moving mechanism
- image
- 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.)
- Granted
Links
- 238000012545 processing Methods 0.000 title claims abstract description 146
- 230000033001 locomotion Effects 0.000 claims abstract description 276
- 238000003384 imaging method Methods 0.000 claims abstract description 176
- 230000007246 mechanism Effects 0.000 claims abstract description 126
- 238000012937 correction Methods 0.000 claims abstract description 63
- 238000013459 approach Methods 0.000 claims description 20
- 238000005259 measurement Methods 0.000 description 41
- 230000006870 function Effects 0.000 description 38
- 238000000034 method Methods 0.000 description 28
- 238000012986 modification Methods 0.000 description 17
- 230000004048 modification Effects 0.000 description 17
- 230000015654 memory Effects 0.000 description 15
- 230000008569 process Effects 0.000 description 15
- 238000004364 calculation method Methods 0.000 description 14
- 238000004891 communication Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 13
- 238000001514 detection method Methods 0.000 description 9
- 238000006243 chemical reaction Methods 0.000 description 8
- 238000003860 storage Methods 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 7
- 230000008859 change Effects 0.000 description 7
- 238000013519 translation Methods 0.000 description 7
- 230000001133 acceleration Effects 0.000 description 5
- 239000000872 buffer Substances 0.000 description 5
- 230000000007 visual effect Effects 0.000 description 5
- 238000004519 manufacturing process Methods 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 4
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 230000014509 gene expression Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 238000012890 quintic function Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/68—Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
- H04N23/682—Vibration or motion blur correction
- H04N23/684—Vibration or motion blur correction performed by controlling the image sensor readout, e.g. by controlling the integration time
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/68—Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
- H04N23/682—Vibration or motion blur correction
- H04N23/684—Vibration or motion blur correction performed by controlling the image sensor readout, e.g. by controlling the integration time
- H04N23/6842—Vibration or motion blur correction performed by controlling the image sensor readout, e.g. by controlling the integration time by controlling the scanning position, e.g. windowing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/695—Control of camera direction for changing a field of view, e.g. pan, tilt or based on tracking of objects
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Control Of Position Or Direction (AREA)
- Studio Devices (AREA)
Abstract
Description
本技術は、対象物を位置決めするための制御システム、制御装置、画像処理装置およびプログラムに関する。 The present technology relates to a control system, a control device, an image processing device, and a program for positioning an object.
FA(ファクトリーオートメーション)において、対象物の位置を目標位置に合わせる技術(位置決め技術)が各種実用化されている。この際、目標位置に対する対象物の位置の偏差を計測する方法として、対象物を撮像することにより得られた画像を用いる方法がある。 In FA (Factory Automation), various technologies (positioning technology) for adjusting the position of an object to a target position have been put to practical use. At this time, as a method of measuring the deviation of the position of the object from the target position, there is a method of using an image obtained by imaging the object.
特開2014−203365号公報(特許文献1)には、対象物の位置を変更する移動機構の移動中に対象物を撮像して画像データを取得し、画像データに含まれる特徴部分の位置に基づいて、対象物を目標位置に位置決めする制御システムが開示されている。 Japanese Patent Laying-Open No. 2014-203365 (Patent Literature 1) discloses that an image of an object is captured while moving a moving mechanism that changes the position of the object, image data is acquired, and the position of a characteristic portion included in the image data is acquired. A control system for positioning an object at a target position based on the object is disclosed.
特許文献1に開示された技術では、移動中の対象物を撮像して得られた画像データを用いて特徴部分の位置が特定されるため、位置決めを高速化できる。しかしながら、移動中の対象物を撮像するため画像ブレが発生する。画像ブレが発生した画像データを用いて特徴部分の位置を特定する場合、特徴部分の位置精度が低下する。その結果、位置決め精度も低下する。 According to the technique disclosed in Patent Document 1, the position of the characteristic portion is specified using image data obtained by imaging a moving target, so that the positioning can be speeded up. However, image blur occurs because the moving target is imaged. When the position of the characteristic portion is specified using the image data in which the image blur has occurred, the positional accuracy of the characteristic portion is reduced. As a result, the positioning accuracy also decreases.
本発明は、上記の問題を鑑みてなされたものであり、その目的は、対象物を高精度に位置決めできる制御システム、制御装置、画像処理装置およびプログラムを提供することである。 The present invention has been made in view of the above problems, and an object of the present invention is to provide a control system, a control device, an image processing device, and a program capable of positioning an object with high accuracy.
本開示の一例によれば、対象物を移動させる移動機構を制御して、対象物の位置決めを行なう制御システムは、画像処理装置と、移動制御部と、推定部とを備える。画像処理装置は、対象物に対する撮像周期ごとの撮像動作によって得られる画像を取得し、取得した画像に基づいて、対象物の特徴部分の位置を特定する。移動制御部は、画像処理装置によって特定された特徴部分の位置に基づいて、対象物の位置が目標位置に近づくように移動機構を制御する。推定部は、第1の撮像動作によって得られた画像に基づいて画像処理装置によって特定された特徴部分の位置と、移動機構からの情報および移動制御部によって生成される情報の少なくとも一方を含む参照情報とに基づいて、第1の撮像動作の次の第2の撮像動作における露光期間中の特徴部分の移動軌跡を推定する。画像処理装置は、移動軌跡に基づいて、第2の撮像動作によって得られた画像のブレ補正を行なう。 According to an example of the present disclosure, a control system that controls a moving mechanism that moves an object to position the object includes an image processing device, a movement control unit, and an estimation unit. The image processing device obtains an image obtained by performing an imaging operation on the object in each imaging cycle, and specifies a position of a characteristic portion of the object based on the obtained image. The movement control unit controls the movement mechanism based on the position of the characteristic portion specified by the image processing device so that the position of the target object approaches the target position. The estimating unit includes a position including the position of the characteristic portion specified by the image processing device based on the image obtained by the first imaging operation, and at least one of information from the moving mechanism and information generated by the moving control unit. Based on the information, the movement trajectory of the characteristic portion during the exposure period in the second imaging operation following the first imaging operation is estimated. The image processing device performs shake correction on an image obtained by the second imaging operation based on the movement trajectory.
この開示によれば、移動機構からの情報および移動制御部によって生成される情報の少なくとも一方を含む参照情報は、移動機構の移動を直接的に示す情報である。そのため、推定部は、第2の撮像動作の露光期間における特徴部分の移動軌跡を精度良く推定できる。これにより、画像処理装置は、画像のブレ補正を精度良く行なうことができ、特徴部分の位置を精度良く特定できる。その結果、対象物を高精度に位置決めすることができる。 According to this disclosure, the reference information including at least one of the information from the moving mechanism and the information generated by the movement control unit is information directly indicating the movement of the moving mechanism. Therefore, the estimating unit can accurately estimate the movement locus of the characteristic portion during the exposure period of the second imaging operation. Accordingly, the image processing apparatus can accurately perform the image blur correction, and can accurately specify the position of the characteristic portion. As a result, the object can be positioned with high accuracy.
本開示の一例によれば、移動機構は、対象物を移動させるために駆動されるモータを含む。参照情報は、第1の撮像動作からのモータの駆動量を示す情報を含む。 According to an example of the present disclosure, the moving mechanism includes a motor driven to move the object. The reference information includes information indicating a driving amount of the motor from the first imaging operation.
この開示によれば、露光期間のモータの駆動量を示す情報は、第1の撮像動作からの移動機構の移動量を直接的に示す。そのため、推定部は、第2の撮像動作の露光期間における特徴部分の移動軌跡をより精度良く推定できる。 According to this disclosure, the information indicating the driving amount of the motor during the exposure period directly indicates the moving amount of the moving mechanism from the first imaging operation. Therefore, the estimating unit can more accurately estimate the movement locus of the characteristic portion during the exposure period of the second imaging operation.
本開示の一例によれば、移動制御部は、制御周期ごとに移動機構に対する移動指令を生成する。参照情報は、第1の撮像動作以降に移動制御部によって生成された移動指令を示す情報を含む。 According to an example of the present disclosure, the movement control unit generates a movement command for the movement mechanism in each control cycle. The reference information includes information indicating a movement command generated by the movement control unit after the first imaging operation.
移動指令は、移動機構を移動させるための指令であり、移動機構の移動に直接的に関係する。そのため、この開示によれば、推定部は、第2の撮像動作の露光期間における特徴部分の移動軌跡をより精度良く推定できる。さらに、推定部は、露光期間の終了時刻と重なる制御周期の開始時刻において、当該露光期間における特徴部分の移動軌跡を推定することができる。すなわち、推定部は、露光期間の終了前に、移動軌跡を推定することができる。そのため、画像処理装置は、第2の撮像動作の終了後にブレ補正を即座に開始することができる。 The movement command is a command for moving the moving mechanism, and is directly related to the movement of the moving mechanism. Therefore, according to this disclosure, the estimation unit can more accurately estimate the movement locus of the characteristic portion during the exposure period of the second imaging operation. Further, the estimating unit can estimate the movement trajectory of the characteristic portion in the exposure period at the start time of the control cycle overlapping the end time of the exposure period. That is, the estimating unit can estimate the movement locus before the end of the exposure period. Therefore, the image processing apparatus can immediately start the blur correction after the end of the second imaging operation.
本開示の一例によれば、移動制御部は、目標位置に対する画像処理装置によって特定された位置の偏差に基づいて移動機構の目標軌道を決定し、決定した目標軌道に従って移動するように移動機構を制御する。参照情報は、目標軌道を示す情報を含む。 According to an example of the present disclosure, the movement control unit determines the target trajectory of the moving mechanism based on the deviation of the position specified by the image processing device with respect to the target position, and causes the moving mechanism to move according to the determined target trajectory. Control. The reference information includes information indicating the target trajectory.
この開示によっても、推定部は、露光期間の終了前に、移動軌跡を推定することができる。そのため、画像処理装置は、第2の撮像動作の終了後にブレ補正を即座に開始することができる。 According to this disclosure, the estimating unit can also estimate the movement locus before the end of the exposure period. Therefore, the image processing apparatus can immediately start the blur correction after the end of the second imaging operation.
本開示の一例によれば、移動制御部は、制御周期ごとに移動機構に対する速度指令を生成し、露光期間と重なる制御周期において、一定の速度指令を生成する。 According to an example of the present disclosure, the movement control unit generates a speed command for the moving mechanism in each control cycle, and generates a constant speed command in a control cycle that overlaps with the exposure period.
この開示によれば、露光期間において、特徴部分は等速移動する。そのため、画像処理装置におけるブレ補正の処理に要する時間が短くなる。 According to this disclosure, the characteristic portion moves at a constant speed during the exposure period. Therefore, the time required for the blur correction processing in the image processing apparatus is reduced.
本開示の一例によれば、移動機構は、並進移動する第1機構と、回転移動する第2機構とを含む。移動制御部は、露光期間において、第2機構を停止させる。 According to an example of the present disclosure, the moving mechanism includes a first mechanism that translates and a second mechanism that rotates. The movement control unit stops the second mechanism during the exposure period.
この開示によれば、画像処理装置は、回転のブレによるぼけを除去するブレ補正を行なう必要がない。そのため、画像処理装置におけるブレ補正の処理に要する時間が短くなる。 According to this disclosure, the image processing apparatus does not need to perform blur correction for removing blur due to rotation blur. Therefore, the time required for the blur correction processing in the image processing apparatus is reduced.
本開示の一例によれば、対象物を移動させる移動機構と、対象物に対する撮像周期ごとの撮像動作によって得られる画像を取得し、取得した画像に基づいて、対象物の特徴部分の位置を特定するための画像処理装置とを制御して、対象物の位置決めを行なう制御装置は、移動制御部と、推定部と、指示部とを備える。移動制御部は、画像処理装置によって特定された特徴部分の位置に基づいて、対象物の位置が目標位置に近づくように移動機構を制御する。推定部は、第1の撮像動作によって得られた画像に基づいて画像処理装置によって特定された特徴部分の位置と、移動機構からの情報および移動制御部によって生成される情報の少なくとも一方を含む参照情報とに基づいて、第1の撮像動作の次の第2の撮像動作における露光期間中の特徴部分の移動軌跡を推定する。指示部は、移動軌跡に基づいて第2の撮像動作によって得られた画像のブレ補正を行なう画像処理装置に指示する。 According to an example of the present disclosure, a moving mechanism that moves an object, an image obtained by an imaging operation of the object in each imaging cycle is acquired, and a position of a characteristic portion of the object is specified based on the acquired image. A control device that controls an image processing device for performing positioning to position an object includes a movement control unit, an estimation unit, and an instruction unit. The movement control unit controls the movement mechanism based on the position of the characteristic portion specified by the image processing device so that the position of the target object approaches the target position. The estimating unit includes a position including the position of the characteristic portion specified by the image processing device based on the image obtained by the first imaging operation, and at least one of information from the moving mechanism and information generated by the moving control unit. Based on the information, the movement trajectory of the characteristic portion during the exposure period in the second imaging operation following the first imaging operation is estimated. The instructing unit instructs an image processing apparatus that performs blur correction of an image obtained by the second imaging operation based on the movement trajectory.
本開示の一例によれば、画像処理装置は、対象物を移動させる移動機構を制御する制御装置からの指示に応じて、対象物に対する撮像周期ごとの撮像動作によって得られる画像を取得し、取得した画像に基づいて、対象物の特徴部分の位置を特定する。制御装置は、画像処理装置によって特定された特徴部分の位置に基づいて、対象物の位置が目標位置に近づくように移動機構を制御する。画像処理装置は、推定部と、補正部とを備える、推定部は、第1の撮像動作によって得られた画像に基づいて画像処理装置によって特定された特徴部分の位置と、移動機構からの情報および制御装置によって生成される情報の少なくとも一方を含む参照情報とに基づいて、第1の撮像動作の次の第2の撮像動作における露光期間中の特徴部分の移動軌跡を推定する。補正部は、移動軌跡に基づいて、第2の撮像動作によって得られた画像のブレ補正を行なう。 According to an example of the present disclosure, the image processing apparatus acquires an image obtained by an imaging operation in each imaging cycle for an object in response to an instruction from a control device that controls a moving mechanism that moves the object, and acquires the image. The position of the characteristic portion of the object is specified based on the image thus obtained. The control device controls the moving mechanism based on the position of the characteristic portion specified by the image processing device so that the position of the target object approaches the target position. The image processing device includes an estimating unit and a correcting unit. The estimating unit includes a position of a characteristic portion specified by the image processing device based on an image obtained by the first imaging operation, and information from a moving mechanism. A movement trajectory of a characteristic portion during an exposure period in a second imaging operation subsequent to the first imaging operation is estimated based on the reference information including at least one of information generated by the control device. The correction unit performs shake correction on an image obtained by the second imaging operation based on the movement trajectory.
本開示の一例によれば、対象物を移動させる移動機構を制御して、対象物の位置決めを行なう制御システムをサポートするためのプログラムは、コンピュータに、第1〜第3のステップを実行させる。制御システムは、対象物に対する撮像周期ごとの撮像動作によって得られる画像を取得し、取得した画像に基づいて、対象物の特徴部分の位置を特定するための画像処理装置を備える。第1ステップは、画像処理装置によって特定された特徴部分の位置に基づいて、対象物の位置が目標位置に近づくように移動機構を制御するステップである。第2ステップは、第1の撮像動作によって得られた画像に基づいて画像処理装置によって特定された特徴部分の位置と、移動機構からの情報および制御するステップによって生成される情報の少なくとも一方を含む参照情報とに基づいて、第1の撮像動作の次の第2の撮像動作における露光期間中の特徴部分の移動軌跡を推定するステップである。第3ステップは、移動軌跡に基づいて第2の撮像動作によって得られた画像のブレ補正を行なう画像処理装置に指示するステップである。 According to an example of the present disclosure, a program for controlling a moving mechanism that moves an object and supporting a control system that positions the object causes a computer to execute first to third steps. The control system includes an image processing device for acquiring an image obtained by an imaging operation of the object in each imaging cycle, and identifying a position of a characteristic portion of the object based on the acquired image. The first step is a step of controlling the moving mechanism based on the position of the characteristic portion specified by the image processing device so that the position of the target object approaches the target position. The second step includes a position of the characteristic portion specified by the image processing device based on the image obtained by the first imaging operation, and at least one of information from the moving mechanism and information generated by the controlling step. This is a step of estimating a movement trajectory of a characteristic portion during an exposure period in a second imaging operation subsequent to the first imaging operation, based on the reference information. The third step is a step of instructing the image processing apparatus that performs blur correction of the image obtained by the second imaging operation based on the movement trajectory.
これらの開示によって、画像処理装置は、画像のブレ補正を精度良く行なうことができ、対象物の位置を精度良く特定できる。その結果、対象物を高精度に位置決めすることができる。 According to these disclosures, the image processing apparatus can perform image blur correction with high accuracy, and can specify the position of the target with high accuracy. As a result, the object can be positioned with high accuracy.
本発明によれば、対象物を高精度に位置決めできる。 According to the present invention, an object can be positioned with high accuracy.
本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。 Embodiments of the present invention will be described in detail with reference to the drawings. Note that the same or corresponding parts in the drawings are denoted by the same reference numerals and description thereof will not be repeated.
§1 適用例
まず、本実施の形態に係る制御システムの一つの適用例について説明する。図1は、本実施の形態に係る制御システム1の全体構成を示す模式図である。図1に示す制御システム1は、画像処理を用いてアライメントを行う。アライメントは、典型的には、工業製品の製造過程などにおいて、対象物(以下、「ワーク」とも称す)を生産ラインの本来の位置に配置する処理などを意味する。このようなアライメントの一例として、制御システム1は、液晶パネルの生産ラインにおいて、ガラス基板であるワーク2に対する回路パターンの焼付処理前に、露光マスク4に対するワーク2の位置決めを制御する。ワーク2には、予め定められた位置に位置決め用の特徴部分であるマーク5a,5bが設けられている。制御システム1では、ワーク2上に設けられたマーク5b,5bを撮像し、撮像により得られた画像に対して画像処理を行うことで、ワーク2の位置決めを実現する。
§1 Application Example First, an application example of the control system according to the present embodiment will be described. FIG. 1 is a schematic diagram illustrating an overall configuration of a control system 1 according to the present embodiment. The control system 1 shown in FIG. 1 performs alignment using image processing. The alignment typically means a process of arranging an object (hereinafter, also referred to as “work”) at an original position of a production line in a manufacturing process of an industrial product or the like. As an example of such alignment, the control system 1 controls the positioning of the work 2 with respect to the exposure mask 4 before the circuit pattern is printed on the work 2 which is a glass substrate in a liquid crystal panel production line. The workpiece 2 is provided with marks 5a and 5b, which are characteristic portions for positioning, at predetermined positions. The control system 1 realizes positioning of the work 2 by imaging the marks 5b, 5b provided on the work 2 and performing image processing on an image obtained by the imaging.
制御システム1は、移動機構100と、ドライバユニット200と、視覚センサ300と、モーションコントローラ400とを備える。 The control system 1 includes a moving mechanism 100, a driver unit 200, a visual sensor 300, and a motion controller 400.
移動機構100は、ワーク2を移動させる。移動機構100は、ワーク2を目標位置に配置できる機構であればどのような自由度のものであってもよい。移動機構100は、たとえば、水平方向の並進移動と回転移動とをワーク2に与えることができるXYθステージである。 The moving mechanism 100 moves the work 2. The moving mechanism 100 may have any degree of freedom as long as the mechanism can arrange the work 2 at the target position. The moving mechanism 100 is, for example, an XYθ stage that can apply horizontal translational movement and rotational movement to the work 2.
図1に示す例の移動機構100は、Xステージ110Xと、Yステージ110Yと、θステージ110θと、サーボモータ120X,120Y,120θとを含む。図1に示す例では、サーボモータ120X,120Y,120θの各々は回転式モータで構成される。サーボモータ120Xは、Xステージ110XをX軸方向に沿って並進駆動する。サーボモータ120Yは、Yステージ110YをY軸方向に沿って並進駆動する。サーボモータ120θは、Z軸に平行な軸を中心にθステージ110θを回転駆動する。Xステージ110XとYステージ110Yとサーボモータ120X,120Yとは、並進移動する機構を構成する。θステージ110θとサーボモータ120θとは、回転移動する機構を構成する。 The moving mechanism 100 of the example shown in FIG. 1 includes an X stage 110X, a Y stage 110Y, a θ stage 110θ, and servomotors 120X, 120Y, 120θ. In the example shown in FIG. 1, each of the servomotors 120X, 120Y, and 120θ is constituted by a rotary motor. The servo motor 120X translates and drives the X stage 110X along the X-axis direction. The servo motor 120Y translates and drives the Y stage 110Y along the Y-axis direction. The servo motor 120θ drives the θ stage 110θ to rotate about an axis parallel to the Z axis. The X stage 110X, the Y stage 110Y, and the servomotors 120X, 120Y constitute a mechanism for performing translational movement. stage 110θ and servo motor 120θ constitute a mechanism for rotating and moving.
ドライバユニット200は、制御周期Tsごとに受ける移動指令に従って、移動機構100に対するフィードバック制御を行なう。図1に示されるように、ドライバユニット200は、サーボドライバ200X,200Y,200θを含む。サーボドライバ200Xは、Xステージ110Xの移動量が移動指令に近付くように、サーボモータ120Xに対してフィードバック制御を行なう。サーボドライバ200Yは、Yステージ110Yの移動量が移動指令に近付くように、サーボモータ120Yに対してフィードバック制御を行なう。サーボドライバ200θは、θステージ110θの移動量が移動指令に近付くように、サーボモータ120θに対してフィードバック制御を行なう。 Driver unit 200 performs feedback control on moving mechanism 100 according to a moving command received at each control cycle Ts. As shown in FIG. 1, the driver unit 200 includes servo drivers 200X, 200Y, and 200θ. Servo driver 200X performs feedback control on servo motor 120X such that the movement amount of X stage 110X approaches the movement command. The servo driver 200Y performs feedback control on the servomotor 120Y so that the movement amount of the Y stage 110Y approaches the movement command. The servo driver 200θ performs feedback control on the servomotor 120θ so that the movement amount of the θ stage 110θ approaches the movement command.
視覚センサ300は、1つ以上のカメラ(図1の例では、カメラ302a,302b)と、画像処理装置304とを含む。画像処理装置304は、ワーク2に対する撮像周期Tbごとのカメラ302a,302bの撮像動作によって得られた画像を取得し、取得した画像に基づいて、ワーク2上のマーク5a,5bの位置を特定する。 The visual sensor 300 includes one or more cameras (cameras 302a and 302b in the example of FIG. 1) and an image processing device 304. The image processing device 304 acquires images obtained by the imaging operations of the cameras 302a and 302b for the imaging cycle Tb on the work 2, and specifies the positions of the marks 5a and 5b on the work 2 based on the obtained images. .
モーションコントローラ400は、たとえばPLC(プログラマブルロジックコントローラ)であり、各種のFA制御を行なう。モーションコントローラ400は、画像処理装置304によって特定されたマーク5a,5bの位置に基づいて、ワーク2の位置が目標位置に近づくように移動機構100を制御する。具体的には、モーションコントローラ400は、制御周期Tsごとに、ワーク2の位置を目標位置に近づけるための移動指令を生成し、生成した移動指令をドライバユニット200に出力する。 The motion controller 400 is, for example, a PLC (programmable logic controller), and performs various FA controls. The motion controller 400 controls the moving mechanism 100 based on the positions of the marks 5a and 5b specified by the image processing device 304 so that the position of the work 2 approaches the target position. Specifically, the motion controller 400 generates a movement command for bringing the position of the work 2 closer to the target position for each control cycle Ts, and outputs the generated movement command to the driver unit 200.
モーションコントローラ400は、移動機構100からの情報に基づいて、カメラ302a,302bの露光期間におけるマーク5a,5bの移動軌跡を示す軌跡情報を生成する。移動機構100からの情報は、移動機構100の移動量を示す情報であり、たとえば、サーボモータ120X,120Y,120θの駆動量(ここでは回転量)を示すエンコーダ値である。 The motion controller 400 generates trajectory information indicating the trajectory of the marks 5a and 5b during the exposure period of the cameras 302a and 302b based on the information from the moving mechanism 100. The information from the moving mechanism 100 is information indicating a moving amount of the moving mechanism 100, and is, for example, an encoder value indicating a driving amount (a rotation amount in this case) of the servomotors 120X, 120Y, 120θ.
画像処理装置304は、モーションコントローラ400によって生成された軌跡情報を用いて、カメラ302a,302bによって撮像された画像のブレ補正を行なう。これにより、画像処理装置304は、ブレ補正が行なわれた画像に含まれるマーク5a,5bの位置を精度良く特定できる。その結果、ワーク2の位置決め精度を向上させることができる。 The image processing device 304 uses the trajectory information generated by the motion controller 400 to perform blur correction on images captured by the cameras 302a and 302b. Accordingly, the image processing device 304 can accurately specify the positions of the marks 5a and 5b included in the image on which the blur correction has been performed. As a result, the positioning accuracy of the work 2 can be improved.
§2 具体例
次に、本実施の形態に係る制御システム1の具体例について説明する。
§2 Specific Example Next, a specific example of the control system 1 according to the present embodiment will be described.
<2−1.画像処理装置のハードウェア構成>
図2は、本実施の形態に係る制御システムを構成する画像処理装置のハードウェア構成を示す模式図である。図2を参照して、画像処理装置304は、典型的には、汎用的なコンピュータアーキテクチャに従う構造を有しており、予めインストールされたプログラムをプロセッサが実行することで、後述するような各種の画像処理を実現する。
<2-1. Hardware configuration of image processing device>
FIG. 2 is a schematic diagram illustrating a hardware configuration of an image processing apparatus included in the control system according to the present embodiment. Referring to FIG. 2, image processing apparatus 304 typically has a structure according to a general-purpose computer architecture, and executes various programs described below by executing a program installed in advance by a processor. Implement image processing.
より具体的には、画像処理装置304は、CPU(Central Processing Unit)やMPU(Micro-Processing Unit)などのプロセッサ310と、RAM(Random Access Memory)312と、表示コントローラ314と、システムコントローラ316と、I/O(Input Output)コントローラ318と、ハードディスク320と、カメラインターフェイス322と、入力インターフェイス324と、モーションコントローラインターフェイス326と、通信インターフェイス328と、メモリカードインターフェイス330とを含む。これらの各部は、システムコントローラ316を中心として、互いにデータ通信可能に接続される。 More specifically, the image processing device 304 includes a processor 310 such as a CPU (Central Processing Unit) and an MPU (Micro-Processing Unit), a RAM (Random Access Memory) 312, a display controller 314, and a system controller 316. , An I / O (Input Output) controller 318, a hard disk 320, a camera interface 322, an input interface 324, a motion controller interface 326, a communication interface 328, and a memory card interface 330. These units are connected to each other so as to enable data communication with the system controller 316 at the center.
プロセッサ310は、システムコントローラ316との間でプログラム(コード)などを交換して、これらを所定順序で実行することで、目的の演算処理を実現する。 The processor 310 exchanges programs (codes) and the like with the system controller 316 and executes them in a predetermined order, thereby realizing the intended arithmetic processing.
システムコントローラ316は、プロセッサ310、RAM312、表示コントローラ314、およびI/Oコントローラ318とそれぞれバスを介して接続されており、各部との間でデータ交換などを行うとともに、画像処理装置304全体の処理を司る。 The system controller 316 is connected to the processor 310, the RAM 312, the display controller 314, and the I / O controller 318 via buses, respectively, exchanges data with each unit, and performs processing of the entire image processing apparatus 304. Govern
RAM312は、典型的には、DRAM(Dynamic Random Access Memory)などの揮発性の記憶装置であり、ハードディスク320から読み出されたプログラムや、カメラ302a,302bによって取得された画像(画像データ)、画像に対する処理結果、およびワークデータなどを保持する。 The RAM 312 is typically a volatile storage device such as a DRAM (Dynamic Random Access Memory), and includes programs read from the hard disk 320, images (image data) acquired by the cameras 302a and 302b, images , And the work data, etc. are retained.
表示コントローラ314は、表示部332と接続されており、システムコントローラ316からの内部コマンドに従って、各種の情報を表示するための信号を表示部332へ出力する。 The display controller 314 is connected to the display unit 332, and outputs a signal for displaying various information to the display unit 332 according to an internal command from the system controller 316.
I/Oコントローラ318は、画像処理装置304に接続される記録媒体や外部機器との間のデータ交換を制御する。より具体的には、I/Oコントローラ318は、ハードディスク320と、カメラインターフェイス322と、入力インターフェイス324と、モーションコントローラインターフェイス326と、通信インターフェイス328と、メモリカードインターフェイス330と接続される。 The I / O controller 318 controls data exchange between a recording medium connected to the image processing apparatus 304 and an external device. More specifically, the I / O controller 318 is connected to the hard disk 320, camera interface 322, input interface 324, motion controller interface 326, communication interface 328, and memory card interface 330.
ハードディスク320は、典型的には、不揮発性の磁気記憶装置であり、プロセッサ310で実行される制御プログラム350に加えて、各種設定値などが格納される。このハードディスク320にインストールされる制御プログラム350は、メモリカード336などに格納された状態で流通する。なお、ハードディスク320に代えて、フラッシュメモリなどの半導体記憶装置やDVD−RAM(Digital Versatile Disk Random Access Memory)などの光学記憶装置を採用してもよい。 The hard disk 320 is typically a nonvolatile magnetic storage device, and stores various setting values in addition to the control program 350 executed by the processor 310. The control program 350 installed on the hard disk 320 is distributed while being stored in a memory card 336 or the like. Instead of the hard disk 320, a semiconductor storage device such as a flash memory or an optical storage device such as a DVD-RAM (Digital Versatile Disk Random Access Memory) may be employed.
カメラインターフェイス322は、ワークを撮影することで生成された画像データを受付ける入力部に相当し、プロセッサ310とカメラ302a,302bとの間のデータ伝送を仲介する。カメラインターフェイス322は、カメラ302a,302bからの画像データをそれぞれ一時的に蓄積するための画像バッファ322a,322bを含む。複数のカメラに対して、カメラの間で共有できる単一の画像バッファを設けてもよいが、処理高速化のため、それぞれのカメラに対応付けて独立に複数配置することが好ましい。 The camera interface 322 corresponds to an input unit that receives image data generated by photographing a workpiece, and mediates data transmission between the processor 310 and the cameras 302a and 302b. The camera interface 322 includes image buffers 322a and 322b for temporarily storing image data from the cameras 302a and 302b, respectively. Although a single image buffer that can be shared between cameras may be provided for a plurality of cameras, it is preferable to independently arrange a plurality of cameras in association with each camera in order to speed up processing.
入力インターフェイス324は、プロセッサ310とキーボード334、マウス、タッチパネル、専用コンソールなどの入力装置との間のデータ伝送を仲介する。 The input interface 324 mediates data transmission between the processor 310 and input devices such as a keyboard 334, a mouse, a touch panel, and a dedicated console.
モーションコントローラインターフェイス326は、プロセッサ310とモーションコントローラ400との間のデータ伝送を仲介する。 Motion controller interface 326 mediates data transmission between processor 310 and motion controller 400.
通信インターフェイス328は、プロセッサ310と図示しない他のパーソナルコンピュータやサーバ装置などとの間のデータ伝送を仲介する。通信インターフェイス328は、典型的には、イーサネット(登録商標)やUSB(Universal Serial Bus)などからなる。 The communication interface 328 mediates data transmission between the processor 310 and another personal computer or server device (not shown). The communication interface 328 is typically made of Ethernet (registered trademark), USB (Universal Serial Bus), or the like.
メモリカードインターフェイス330は、プロセッサ310と記録媒体であるメモリカード336との間のデータ伝送を仲介する。メモリカード336には、画像処理装置304で実行される制御プログラム350などが格納された状態で流通し、メモリカードインターフェイス330は、このメモリカード336から制御プログラムを読み出す。メモリカード336は、SD(Secure Digital)などの汎用的な半導体記憶デバイスや、フレキシブルディスク(Flexible Disk)などの磁気記録媒体や、CD−ROM(Compact Disk Read Only Memory)などの光学記録媒体等からなる。あるいは、通信インターフェイス328を介して、配信サーバなどからダウンロードしたプログラムを画像処理装置304にインストールしてもよい。 The memory card interface 330 mediates data transmission between the processor 310 and the memory card 336 as a recording medium. The memory card 336 distributes the control program 350 executed by the image processing device 304 in a stored state, and the memory card interface 330 reads the control program from the memory card 336. The memory card 336 includes a general-purpose semiconductor storage device such as SD (Secure Digital), a magnetic recording medium such as a flexible disk (Flexible Disk), and an optical recording medium such as a CD-ROM (Compact Disk Read Only Memory). Become. Alternatively, a program downloaded from a distribution server or the like may be installed in the image processing device 304 via the communication interface 328.
上述のような汎用的なコンピュータアーキテクチャに従う構造を有するコンピュータを利用する場合には、本実施の形態に係る機能を提供するためのアプリケーションに加えて、コンピュータの基本的な機能を提供するためのOS(Operating System)がインストールされていてもよい。この場合には、本実施の形態に係る制御プログラムは、OSの一部として提供されるプログラムモジュールのうち、必要なモジュールを所定の順序および/またはタイミングで呼び出して処理を実行するものであってもよい。 When using a computer having a structure according to the general-purpose computer architecture as described above, an OS for providing basic functions of the computer in addition to an application for providing functions according to the present embodiment (Operating System) may be installed. In this case, the control program according to the present embodiment executes a process by calling necessary modules in a predetermined order and / or timing among program modules provided as a part of the OS. Is also good.
さらに、本実施の形態に係る制御プログラムは、他のプログラムの一部に組み込まれて提供されるものであってもよい。その場合にも、プログラム自体には、上記のような組み合わせられる他のプログラムに含まれるモジュールを含んでおらず、当該他のプログラムと協働して処理が実行される。すなわち、本実施の形態に係る制御プログラムとしては、このような他のプログラムに組み込まれた形態であってもよい。 Further, the control program according to the present embodiment may be provided by being incorporated in a part of another program. Even in such a case, the program itself does not include a module included in another program to be combined as described above, and the process is executed in cooperation with the other program. That is, the control program according to the present embodiment may be a form incorporated in such another program.
なお、代替的に、制御プログラムの実行により提供される機能の一部もしくは全部を専用のハードウェア回路として実装してもよい。 Alternatively, part or all of the functions provided by executing the control program may be implemented as a dedicated hardware circuit.
<2−2.モーションコントローラのハードウェア構成>
図3は、実施の形態に係る制御システムを構成するモーションコントローラ400のハードウェア構成を示す模式図である。モーションコントローラ400は、チップセット412と、プロセッサ414と、不揮発性メモリ416と、主メモリ418と、システムクロック420と、メモリカードインターフェイス422と、通信インターフェイス428と、内部バスコントローラ430と、フィールドバスコントローラ438とを含む。チップセット412と他のコンポーネントとの間は、各種のバスを介してそれぞれ結合されている。
<2-2. Hardware Configuration of Motion Controller>
FIG. 3 is a schematic diagram illustrating a hardware configuration of the motion controller 400 included in the control system according to the embodiment. The motion controller 400 includes a chipset 412, a processor 414, a nonvolatile memory 416, a main memory 418, a system clock 420, a memory card interface 422, a communication interface 428, an internal bus controller 430, and a field bus controller. 438. The chipset 412 and other components are respectively connected via various buses.
プロセッサ414およびチップセット412は、典型的には、汎用的なコンピュータアーキテクチャに従う構成を有している。すなわち、プロセッサ414は、チップセット412から内部クロックに従って順次供給される命令コードを解釈して実行する。チップセット412は、接続されている各種コンポーネントとの間で内部的なデータを遣り取りするとともに、プロセッサ414に必要な命令コードを生成する。システムクロック420は、予め定められた周期のシステムクロックを発生してプロセッサ414に提供する。チップセット412は、プロセッサ414での演算処理の実行の結果得られたデータなどをキャッシュする機能を有する。 The processor 414 and the chipset 412 typically have a configuration according to a general-purpose computer architecture. That is, the processor 414 interprets and executes the instruction codes sequentially supplied from the chipset 412 according to the internal clock. The chipset 412 exchanges internal data with various connected components and generates an instruction code necessary for the processor 414. The system clock 420 generates a system clock having a predetermined cycle and provides the system clock to the processor 414. The chip set 412 has a function of caching data and the like obtained as a result of execution of arithmetic processing by the processor 414.
モーションコントローラ400は、記憶手段として、不揮発性メモリ416および主メモリ418を有する。不揮発性メモリ416は、プロセッサ414で実行される制御プログラム440に加えて、データ定義情報、ログ情報などを不揮発的に保持する。制御プログラム440は、記録媒体424などに格納された状態で流通する。主メモリ418は、揮発性の記憶領域であり、プロセッサ414で実行されるべき各種プログラムを保持するとともに、各種プログラムの実行時の作業用メモリとしても使用される。 The motion controller 400 has a nonvolatile memory 416 and a main memory 418 as storage means. The non-volatile memory 416 non-volatilely stores data definition information, log information, and the like, in addition to the control program 440 executed by the processor 414. The control program 440 is distributed while being stored in the recording medium 424 or the like. The main memory 418 is a volatile storage area that holds various programs to be executed by the processor 414 and is also used as a working memory when executing various programs.
モーションコントローラ400は、通信手段として、通信インターフェイス428および内部バスコントローラ430を有する。これらの通信回路は、データの送信および受信を行う。 The motion controller 400 has a communication interface 428 and an internal bus controller 430 as communication means. These communication circuits transmit and receive data.
通信インターフェイス428は、画像処理装置304との間でデータを遣り取りする。内部バスコントローラ430は、内部バスを介したデータの遣り取りを制御する。より具体的には、内部バスコントローラ430は、バッファメモリ436と、DMA(Dynamic Memory Access)制御回路432と、内部バス制御回路434とを含む。 The communication interface 428 exchanges data with the image processing device 304. The internal bus controller 430 controls data exchange via the internal bus. More specifically, the internal bus controller 430 includes a buffer memory 436, a DMA (Dynamic Memory Access) control circuit 432, and an internal bus control circuit 434.
メモリカードインターフェイス422は、モーションコントローラ400に対して着脱可能な記録媒体424とプロセッサ414とを接続する。 The memory card interface 422 connects the recording medium 424 detachable to the motion controller 400 and the processor 414.
フィールドバスコントローラ438は、フィールドネットワークに接続するための通信インターフェイスである。モーションコントローラ400は、フィールドバスコントローラ438を介してサーボドライバ200X,200Y,200θと接続される。当該フィールドネットワークには、たとえば、EtherCAT(登録商標)、EtherNet/IP(登録商標)、CompoNet(登録商標)などが採用される。 The fieldbus controller 438 is a communication interface for connecting to a field network. The motion controller 400 is connected to the servo drivers 200X, 200Y, 200θ via the fieldbus controller 438. For the field network, for example, EtherCAT (registered trademark), EtherNet / IP (registered trademark), CompoNet (registered trademark), or the like is employed.
<2−3.画像処理装置の機能構成>
図4は、図1に示される制御システム1の機能構成を示すブロック図である。画像処理装置304は、モーションコントローラ400から撮像トリガTRを受けると、撮像動作を行なうようにカメラ302a,302bを制御し、撮像動作によって得られた画像を取得する。図4に示されるように、画像処理装置304は、補正部32と位置特定部34とを含む。
<2-3. Functional Configuration of Image Processing Device>
FIG. 4 is a block diagram showing a functional configuration of the control system 1 shown in FIG. Upon receiving the imaging trigger TR from the motion controller 400, the image processing device 304 controls the cameras 302a and 302b to perform an imaging operation, and obtains an image obtained by the imaging operation. As shown in FIG. 4, the image processing device 304 includes a correction unit 32 and a position identification unit 34.
<2−3−1.補正部>
補正部32は、モーションコントローラ400から受けた軌跡情報を用いて、カメラ302a,302bによって撮像された画像から画像ブレによるぼけを除去するブレ補正を行なう。軌跡情報は、露光期間中のマーク5a,5bの画像上の移動軌跡を示す情報である。
<2-3-1. Correction section>
Using the trajectory information received from the motion controller 400, the correction unit 32 performs blur correction for removing blur due to image blur from images captured by the cameras 302a and 302b. The trajectory information is information indicating the movement trajectory of the marks 5a and 5b on the image during the exposure period.
補正部32は、軌跡情報で示されるマーク5a,5bの移動軌跡に基づいて、たとえば特開2006−129236号公報(特許文献2)等に記載されている公知の技術を用いてブレ補正を行なう。 The correction unit 32 performs blur correction based on the movement trajectories of the marks 5a and 5b indicated by the trajectory information using a known technique described in, for example, JP-A-2006-129236 (Patent Document 2). .
具体的には、補正部32は、マーク5aの移動軌跡に基づいて、点拡がり関数(Point Spread Function)を作成する。点拡がり関数は、画像ブレによるぼけのない画像から画像ブレによるぼけのある画像を生成するための空間フィルタである。補正部32は、点拡がり関数の逆特性を有する補正関数を求め、当該補正関数を用いて、カメラ302aの撮像動作によって得られた画像から画像ブレによるぼけを除去することができる。たとえば、補正部32は、露光開始時刻からの画像ブレによるぼけを画像から除去することにより、露光開始時刻のマーク5aの状態に近い画像を生成できる。同様にして、補正部32は、マーク5bの移動軌跡に基づいて、カメラ302bの撮像動作によって得られた画像に対してブレ補正を行なう。 Specifically, the correction unit 32 creates a point spread function based on the movement locus of the mark 5a. The point spread function is a spatial filter for generating a blurred image due to image blur from an image not blurred due to image blur. The correction unit 32 obtains a correction function having an inverse characteristic of the point spread function, and can use the correction function to remove blur caused by image blurring from an image obtained by the imaging operation of the camera 302a. For example, the correction unit 32 can generate an image close to the state of the mark 5a at the exposure start time by removing the blur due to the image blur from the exposure start time. Similarly, the correction unit 32 performs shake correction on an image obtained by the imaging operation of the camera 302b based on the movement locus of the mark 5b.
<2−3−2.位置特定部>
位置特定部34は、カメラ302aによって撮像された画像に含まれるマーク5aの位置(以下、「計測位置PSa」という)を特定する。位置特定部34は、カメラ302bによって撮像された画像に含まれるマーク5bの位置(以下、「計測位置PSb」という)を特定する。位置特定部34は、公知のパターン認識技術を用いて、画像の中からマーク5a,5bを認識し、認識したマーク5a,5bの座標を計測する。マーク5a,5bの座標は、カメラ302a,302bのローカル座標系でそれぞれ示される。位置特定部34は、特定したマーク5aの計測位置PSa,PSbの座標をモーションコントローラ400に出力する。
<2-3-2. Position specifying part>
The position specifying unit 34 specifies the position of the mark 5a (hereinafter, referred to as “measurement position PSa”) included in the image captured by the camera 302a. The position specifying unit 34 specifies the position of the mark 5b (hereinafter, referred to as “measurement position PSb”) included in the image captured by the camera 302b. The position specifying unit 34 recognizes the marks 5a and 5b from the image using a known pattern recognition technique, and measures the coordinates of the recognized marks 5a and 5b. The coordinates of the marks 5a and 5b are indicated in the local coordinate system of the cameras 302a and 302b, respectively. The position specifying unit 34 outputs the coordinates of the measured positions PSa and PSb of the specified mark 5a to the motion controller 400.
位置特定部34は、補正部32がモーションコントローラ400から軌跡情報を受けている場合、補正部32によってブレ補正が行なわれた画像の中からマーク5a,5bをそれぞれ探索する。位置特定部34は、補正部32がモーションコントローラ400から軌跡情報を受けていない場合、カメラ302a,302bによって撮像された画像の中からマーク5a,5bを探索する。 When the correcting unit 32 receives the trajectory information from the motion controller 400, the position specifying unit 34 searches for the marks 5a and 5b in the image on which the blur correction has been performed by the correcting unit 32, respectively. When the correcting unit 32 has not received the trajectory information from the motion controller 400, the position specifying unit 34 searches for the marks 5a and 5b from the images captured by the cameras 302a and 302b.
<2−4.モーションコントローラの機能構成>
図4を参照して、モーションコントローラ400は、移動制御部41と、指示部45と、推定部46とを備える。移動制御部41と指示部45と推定部46とは、図3に示すプロセッサ414が制御プログラム440を実行することにより実現される。
<2-4. Functional Configuration of Motion Controller>
Referring to FIG. 4, motion controller 400 includes a movement control unit 41, an instruction unit 45, and an estimation unit 46. The movement control unit 41, the instruction unit 45, and the estimation unit 46 are realized by the processor 414 illustrated in FIG.
また、図4に示されるように、移動機構100はエンコーダ130を含む。エンコーダ130は、サーボモータ120X,120Y,120θの移動量に応じたパルス信号をそれぞれ発生する。エンコーダ130は、サーボモータ120Xに対応するパルス信号に含まれるパルス数をカウントすることにより、初期位置からのXステージ110XのX方向の並進移動量をエンコーダ値PVmXとして計測する。パルス数のカウント値と移動量とは、所定の係数によって関係付けられる。そのため、エンコーダ130は、パルス数のカウント値に当該係数を乗ずることにより、移動量を計測できる。同様に、エンコーダ130は、初期位置からのYステージ110YのY方向の並進移動量をエンコーダ値PVmYとして計測するとともに、初期位置からのθステージ110θの回転移動量をエンコーダ値PVmθとして計測する。エンコーダ130は、制御周期Tsと同じ周期で、エンコーダ値PVmX,PVmY,PVmθを計測して出力する。 Further, as shown in FIG. 4, the moving mechanism 100 includes an encoder 130. The encoder 130 generates a pulse signal corresponding to the amount of movement of each of the servomotors 120X, 120Y, 120θ. Encoder 130 counts the number of pulses included in the pulse signal corresponding to servo motor 120X, and measures the translation amount of X stage 110X in the X direction from the initial position as encoder value PVmX. The count value of the number of pulses and the movement amount are related by a predetermined coefficient. Therefore, the encoder 130 can measure the movement amount by multiplying the count value of the number of pulses by the coefficient. Similarly, encoder 130 measures the translation amount of Y stage 110Y in the Y direction from the initial position as encoder value PVmY, and measures the rotational movement amount of θ stage 110θ from the initial position as encoder value PVmθ. The encoder 130 measures and outputs the encoder values PVmX, PVmY, PVmθ at the same cycle as the control cycle Ts.
<2−3−1.移動制御部>
移動制御部41は、画像処理装置304によって特定された、マーク5aの計測位置PSaおよびマーク5bの計測位置PSbに基づいて、ワーク2の位置が目標位置SPに近づくように移動機構100を制御する。
<2-3-1. Movement control section>
The movement control unit 41 controls the movement mechanism 100 based on the measurement position PSa of the mark 5a and the measurement position PSb of the mark 5b specified by the image processing device 304 such that the position of the work 2 approaches the target position SP. .
ワーク2の目標位置SPは、生産工程ごとに予め決められている。たとえば、マーク5aとマーク5bとの中点が予め定められた座標に位置し、かつ、マーク5aとマーク5bとを結ぶ直線とX軸またはY軸とのなす角度が予め定められた角度となるようなワーク2の位置が目標位置SPとして設定される。 The target position SP of the work 2 is determined in advance for each production process. For example, the midpoint between the mark 5a and the mark 5b is located at a predetermined coordinate, and an angle between a straight line connecting the mark 5a and the mark 5b and the X axis or the Y axis is a predetermined angle. Such a position of the work 2 is set as the target position SP.
もしくは、カメラ302a,302bは、ワーク2のマーク5a,5bと合わせて、露光マスク4(図1参照)に設けられた2つの目標マークも撮像してもよい。この場合、撮像された画像に含まれる当該2つの目標マークの位置に応じて目標位置SPが設定される。たとえば、マーク5aが2つの目標マークの一方と一致し、かつ、マーク5bが2つの目標マークの他方と一致するようなワーク2の位置が目標位置SPとして設定される。 Alternatively, the cameras 302a and 302b may image two target marks provided on the exposure mask 4 (see FIG. 1) together with the marks 5a and 5b of the work 2. In this case, the target position SP is set according to the positions of the two target marks included in the captured image. For example, the position of the work 2 where the mark 5a matches one of the two target marks and the mark 5b matches the other of the two target marks is set as the target position SP.
移動制御部41は、画像処理装置304によって特定されたマーク5aの計測位置PSaおよびマーク5bの計測位置PSbに基づいて、ワーク2の位置を目標位置SPに近づけるための移動指令を生成する。 The movement control unit 41 generates a movement command for bringing the position of the work 2 closer to the target position SP based on the measurement position PSa of the mark 5a and the measurement position PSb of the mark 5b specified by the image processing device 304.
計測位置PSa,PSbは、撮像周期Tbごとに特定される。一方、移動指令は、制御周期Tsごとに生成される。一例として、撮像周期Tbは、撮像状況などに応じて変動し、たとえば約60msである。制御周期Tsは、固定であり、たとえば1msである。このように、撮像周期Tbは、制御周期Tsよりも長い。そのため、画像処理装置304によって特定された計測位置PSa,PSbのみを用いて移動機構100が制御されると、オーバシュートおよび振動が生じやすくなる。このようなオーバシュートおよび振動を避けるため、移動制御部41は、計測位置PSa,PSbと、エンコーダ値PVmX,PVmY,PVmθとを用いて、ワーク2の推定位置PVを決定し、推定位置PVに基づいて制御指令を生成する。 The measurement positions PSa and PSb are specified for each imaging cycle Tb. On the other hand, the movement command is generated for each control cycle Ts. As an example, the imaging cycle Tb varies according to the imaging situation and the like, and is, for example, about 60 ms. The control cycle Ts is fixed, for example, 1 ms. Thus, the imaging cycle Tb is longer than the control cycle Ts. Therefore, if the moving mechanism 100 is controlled using only the measurement positions PSa and PSb specified by the image processing device 304, overshoot and vibration are likely to occur. In order to avoid such overshoot and vibration, the movement control unit 41 determines the estimated position PV of the work 2 using the measured positions PSa and PSb and the encoder values PVmX, PVmY and PVmθ, and sets the estimated position PV as the estimated position PV. A control command is generated based on the control command.
図4に示されるように、移動制御部41は、位置決定部42と、減算部43と、演算部44とを含む。 As shown in FIG. 4, the movement control unit 41 includes a position determination unit 42, a subtraction unit 43, and a calculation unit 44.
位置決定部42は、画像処理装置304によって特定されたマーク5aの計測位置PSaおよびマーク5bの計測位置PSbとエンコーダ値PVmX,PVmY,PVmθとに基づいて、ワーク2の推定位置PVを制御周期Tsごとに決定する。推定位置PVの決定方法の詳細については、後述する動作例において説明する。 The position determination unit 42 determines the estimated position PV of the workpiece 2 based on the measured position PSa of the mark 5a and the measured position PSb of the mark 5b specified by the image processing device 304 and the encoder values PVmX, PVmY, PVmθ in the control cycle Ts. Determined for each. Details of the method of determining the estimated position PV will be described in an operation example described later.
減算部43は、目標位置SPに対する推定位置PVの偏差を出力する。演算部44は、目標位置SPに対する推定位置PVの偏差が0に収束するように演算(たとえばP演算、PID演算など)を行ない、制御周期Tsごとに移動指令MVX、MVY,MVθを算出する。移動指令MVXは、Xステージ110Xに対する移動指令である。移動指令MVYは、Yステージ110Yに対する移動指令である。移動指令MVθは、θステージ110θに対する移動指令である。演算部44は、算出した移動指令MVX、MVY,MVθをサーボドライバ200X,200Y,200θにぞれぞれ出力する。移動指令MVX、MVY,MVθは、たとえば位置指令または速度指令である。 The subtraction unit 43 outputs a deviation of the estimated position PV from the target position SP. The calculation unit 44 performs calculations (for example, P calculation, PID calculation, and the like) so that the deviation of the estimated position PV from the target position SP converges to 0, and calculates the movement commands MVX, MVY, and MVθ for each control cycle Ts. The movement command MVX is a movement command for the X stage 110X. The movement command MVY is a movement command for the Y stage 110Y. The movement command MVθ is a movement command for the θ stage 110θ. The calculation unit 44 outputs the calculated movement commands MVX, MVY, MVθ to the servo drivers 200X, 200Y, 200θ, respectively. The movement commands MVX, MVY, MVθ are, for example, position commands or speed commands.
<2−3−2.指示部>
指示部45は、視覚センサ300に対して動作指示を出力する。指示部45は、撮像周期Tbに従って、撮像トリガTRを画像処理装置304に出力する。これにより、撮像トリガを受けた画像処理装置304は、カメラ302a,302bを制御して、予め設定された露光時間Taだけ露光させる。ただし、指示部45が撮像トリガTRを出力してからカメラ302a,302bが露光を開始するまで、一定の遅延時間が発生する。当該遅延時間は、予め実験等により確認されている。
<2-3-2. Instructor>
The instruction unit 45 outputs an operation instruction to the visual sensor 300. The instruction unit 45 outputs the imaging trigger TR to the image processing device 304 according to the imaging cycle Tb. Accordingly, the image processing apparatus 304 that has received the imaging trigger controls the cameras 302a and 302b to expose the image for the preset exposure time Ta. However, a certain delay time occurs from when the instruction unit 45 outputs the imaging trigger TR to when the cameras 302a and 302b start exposure. The delay time is confirmed in advance by an experiment or the like.
さらに、指示部45は、推定部46によって後述する軌跡情報が生成されると、当該軌跡情報を用いて画像のブレ補正を行なうように画像処理装置304に指示する。 Further, when the trajectory information described later is generated by the estimation unit 46, the instruction unit 45 instructs the image processing apparatus 304 to perform image blur correction using the trajectory information.
<2−3−3.推定部>
推定部46は、エンコーダ値PVmX,PVmY,PVmθに基づいて、カメラ302a,302bの露光期間における、ワーク2のマーク5a,5bの画像上の移動軌跡を推定する。以下、推定部46によるマーク5a,5bの画像上の移動軌跡の推定手順について説明する。
<2-3-3. Estimation part>
The estimating unit 46 estimates the movement trajectory of the marks 5a and 5b of the work 2 on the image during the exposure period of the cameras 302a and 302b based on the encoder values PVmX, PVmY and PVmθ. Hereinafter, a procedure of estimating the movement trajectory of the marks 5a and 5b on the image by the estimating unit 46 will be described.
推定部46は、指示部45から撮像トリガTRが出力された時刻(以下、「トリガ出力時刻」という)に基づいて、カメラ302a,302bの各撮像タイミングにおける露光開始時刻と露光終了時刻とを算出する。具体的には、推定部46は、トリガ出力時刻に予め確認されている上記の遅延時間だけ経過した時刻を露光開始時刻として算出する。さらに、推定部46は、露光開始時刻から露光時間Taだけ経過した時刻を露光終了時刻として算出する。本実施の形態では、露光時間Taは、制御周期Tsの整数倍の時間である。 The estimating unit 46 calculates an exposure start time and an exposure end time at each imaging timing of the cameras 302a and 302b based on the time at which the imaging trigger TR is output from the instruction unit 45 (hereinafter, referred to as “trigger output time”). I do. Specifically, the estimating unit 46 calculates, as the exposure start time, a time at which the above-described delay time, which has been confirmed in advance at the trigger output time, has elapsed. Further, the estimating unit 46 calculates a time when the exposure time Ta has elapsed from the exposure start time as an exposure end time. In the present embodiment, the exposure time Ta is a time that is an integral multiple of the control cycle Ts.
推定部46は、k回目(kは2以上の整数)の撮像動作の露光期間中における制御周期Ts間隔の複数の時刻を特定する。具体的には、露光時間Taが制御周期Tsのn倍である場合、推定部46は、k回目(kは2以上の整数)の撮像動作の露光開始時刻(以下、「時刻tk0」という)から露光終了時刻(以下、「時刻tkn」という)までのn+1個の時刻tki(iは、0〜nの整数))を特定する。時刻tk(i+1)は、時刻tkiから制御周期Tsだけ経過した時刻である。 The estimating unit 46 specifies a plurality of times at the control cycle Ts interval during the exposure period of the k-th (k is an integer of 2 or more) imaging operation. Specifically, when the exposure time Ta is n times the control cycle Ts, the estimating unit 46 sets the exposure start time of the k-th (k is an integer of 2 or more) imaging operation (hereinafter, referred to as “time tk0”). , And (n + 1) times tki (i is an integer from 0 to n) from the exposure end time (hereinafter, referred to as “time tkn”). The time tk (i + 1) is a time when the control cycle Ts has elapsed from the time tki.
推定部46は、(k−1)回目の撮像動作の露光開始時刻(以下、「時刻t(k−1)」という)から時刻tki(iは、0〜nの整数))までの間のワーク2の移動量Δpi=(ΔXi,ΔYi,Δθi)を推定する。ΔXiは、Xステージ110XのX方向の並進移動量を示す。ΔYiは、Yステージ110YのY方向の並進移動量を示す。Δθiは、θステージ110θの回転移動量を示す。 The estimating unit 46 sets the time from the exposure start time (hereinafter, referred to as “time t (k−1)”) to the time tki (i is an integer of 0 to n) of the (k−1) th imaging operation. The moving amount Δpi = (ΔXi, ΔYi, Δθi) of the work 2 is estimated. ΔXi indicates the translation amount of the X stage 110X in the X direction. ΔYi indicates a translation amount of the Y stage 110Y in the Y direction. Δθi indicates the amount of rotational movement of the θ stage 110θ.
図5は、時刻t(k−1)から時刻tkiまでの間のワーク2の移動量を推定する方法を説明する図である。図5に示されるように、推定部46は、時刻t(k−1)におけるエンコーダ値PVm(k−1)と時刻tkiにおけるエンコーダ値PVm(ki)とに基づいて、移動量Δpiを推定する。なお、時刻tjにおけるPVm(j)は、(PVmX(j),PVmY(j),PVmθ(j))で表される。PVmX(j),PVmY(j),PVmθ(j)は、それぞれ時刻tjにおいてエンコーダ130から出力されるエンコーダ値PVmX,PVmY,PVmθである。もしくは、時刻tjとエンコーダ130の検出時刻とがずれている場合、PVmX(j)は、時刻tjに近接する2つの検出時刻にエンコーダ130から出力されるエンコーダ値PVmXの内挿補間値である。同様に、PVmY(j)は、時刻tjに近接する2つの検出時刻にエンコーダ130から出力されるエンコーダ値PVmYの内挿補間値である。PVmθ(j)は、時刻tjに近接する2つの検出時刻にエンコーダ130から出力されるエンコーダ値PVmθの内挿補間値である。内挿補間値の算出方法については後述する。 FIG. 5 is a diagram illustrating a method of estimating the movement amount of the work 2 from time t (k−1) to time tki. As shown in FIG. 5, the estimation unit 46 estimates the movement amount Δpi based on the encoder value PVm (k-1) at time t (k-1) and the encoder value PVm (ki) at time tki. . Note that PVm (j) at time tj is represented by (PVmX (j), PVmY (j), PVmθ (j)). PVmX (j), PVmY (j), PVmθ (j) are encoder values PVmX, PVmY, PVmθ output from the encoder 130 at time tj, respectively. Alternatively, if the time tj is different from the detection time of the encoder 130, PVmX (j) is an interpolation value of the encoder value PVmX output from the encoder 130 at two detection times close to the time tj. Similarly, PVmY (j) is an interpolation value of the encoder value PVmY output from the encoder 130 at two detection times close to the time tj. PVmθ (j) is an interpolation value of the encoder value PVmθ output from the encoder 130 at two detection times close to the time tj. The method of calculating the interpolation value will be described later.
推定部46は、時刻t(k−1)におけるエンコーダ値PVm(k−1)と時刻tkiにおけるエンコーダ値PVm(ki)との差を、時刻t(k−1)0から時刻tkiまで間のワーク2の移動量Δpiとして推定する。つまり、推定部46は、以下の式(1)に従って、移動量Δpiを推定する。 The estimation unit 46 calculates the difference between the encoder value PVm (k-1) at time t (k-1) and the encoder value PVm (ki) at time tki from time t (k-1) 0 to time tki. It is estimated as the movement amount Δpi of the work 2. That is, the estimation unit 46 estimates the movement amount Δpi according to the following equation (1).
Δpi=(ΔXi,ΔYi,Δθi)
=(PVmX(ki)−PVmX(k−1),PVmY(ki)−PVmY(k−1),PVmθ(ki)−PVmθ(k−1) ・・・式(1)
推定部46は、時刻tk0,・・・,tknについて、移動量Δp0,・・・,Δpnをそれぞれ推定する。
Δpi = (ΔXi, ΔYi, Δθi)
= (PVmX (ki) -PVmX (k-1), PVmY (ki) -PVmY (k-1), PVmθ (ki) -PVmθ (k-1) Equation (1)
The estimating unit 46 estimates movement amounts Δp0,..., Δpn for times tk0,.
推定部46は、(k−1)回目の撮像動作で得られた画像から特定されたマーク5aの計測位置PSaと、移動量Δpiとに基づいて、時刻tkiにおけるマーク5aの予測位置PEaiを予測する。 The estimating unit 46 predicts the predicted position PEai of the mark 5a at the time tki based on the measured position PSa of the mark 5a specified from the image obtained in the (k-1) th imaging operation and the movement amount Δpi. I do.
推定部46は、画像処理装置304から受けた計測位置PSaの座標(カメラ302aのローカル座標系)をワールド座標系(移動機構100の機械座標系)の座標に変換する。推定部46は、カメラ302aのローカル座標系とワールド座標系とを対応付ける第1キャリブレーションデータを用いて、ワールド座標系における計測位置PSaのXY座標(xsa,ysa)を求める。 The estimating unit 46 converts the coordinates of the measurement position PSa (the local coordinate system of the camera 302a) received from the image processing device 304 into the coordinates of the world coordinate system (the mechanical coordinate system of the moving mechanism 100). The estimating unit 46 obtains the XY coordinates (xsa, ysa) of the measurement position PSa in the world coordinate system using the first calibration data that associates the local coordinate system of the camera 302a with the world coordinate system.
推定部46は、移動量Δpi=(ΔXi,ΔYi,Δθi)だけワーク2が移動したときの計測位置PSaから予測位置PEaiへの変換式を用いて、ワールド座標系における予測位置PEaiの座標を求める。変換式は、以下の式(2)に示される。 The estimating unit 46 obtains the coordinates of the predicted position PEai in the world coordinate system using a conversion formula from the measured position PSa to the predicted position PEai when the work 2 has moved by the movement amount Δpi = (ΔXi, ΔYi, Δθi). . The conversion equation is shown in the following equation (2).
Eai=Ti(Rai(Sa)) ・・・式(2)
式(2)において、Saは、ワールド座標系における計測位置PSaのX座標xsaおよびY座標ysaの転置行列である(xsa,ysa)Tを示す。Ra( )は、回転移動に対応する変換式を示し、θステージ110θの回転中心と計測位置PSaとの距離と、θステージ110θの回転移動量Δθiとに基づいて定められる。Ti( )は、並進移動に対応する変換式を示し、Xステージ110Xの移動量ΔXiとYステージ110Yの移動量ΔYiと応じて定められる。Eaiは、ワールド座標系における予測位置PEaiのX座標xeaiおよびY座標yeaiの転置行列である(xeai,yeai)Tを示す。
Eai = Ti (Rai (Sa)) Equation (2)
In the equation (2), Sa represents (xsa, ysa) T which is a transposed matrix of the X coordinate xsa and the Y coordinate ysa of the measurement position PSa in the world coordinate system. Ra () indicates a conversion formula corresponding to the rotational movement, and is determined based on the distance between the rotational center of the θ stage 110θ and the measurement position PSa and the rotational movement amount Δθi of the θ stage 110θ. Ti () indicates a conversion equation corresponding to the translational movement, and is determined according to the movement amount ΔXi of the X stage 110X and the movement amount ΔYi of the Y stage 110Y. Eai indicates (xeai, yeai) T which is a transposed matrix of the X coordinate xeai and the Y coordinate yeai of the predicted position PEai in the world coordinate system.
推定部46は、第1キャリブレーションデータを用いて、ワールド座標系における予測位置PEaiの座標をカメラ302aに対応するローカル座標系の座標に逆変換する。これにより、推定部46は、ローカル座標系における予測位置PEaiの座標を得ることができる。このようにして、推定部46は、時刻tk0,・・・,tknについて、予測位置PEa0,・・・,PEanの座標をそれぞれ算出する。 The estimating unit 46 uses the first calibration data to inversely transform the coordinates of the predicted position PEai in the world coordinate system into coordinates in the local coordinate system corresponding to the camera 302a. Thereby, the estimation unit 46 can obtain the coordinates of the predicted position PEai in the local coordinate system. In this way, the estimation unit 46 calculates the coordinates of the predicted positions PEa0,..., PEan for the times tk0,.
同様の方法により、推定部46は、時刻tkiにおけるマーク5bの予測位置PEbiを予測する。つまり、推定部46は、画像処理装置304から受けた計測位置PSbの座標(カメラ302bのローカル座標系)をワールド座標系の座標に変換する。推定部46は、カメラ302bのローカル座標系とワールド座標系とを対応付ける第2キャリブレーションデータを用いて、ワールド座標系における計測位置PSbのXY座標(xsb,ysb)を求める。 In a similar manner, the estimation unit 46 predicts the predicted position PEbi of the mark 5b at the time tki. That is, the estimation unit 46 converts the coordinates of the measurement position PSb (the local coordinate system of the camera 302b) received from the image processing device 304 into the coordinates of the world coordinate system. The estimating unit 46 obtains the XY coordinates (xsb, ysb) of the measurement position PSb in the world coordinate system using the second calibration data that associates the local coordinate system of the camera 302b with the world coordinate system.
推定部46は、移動量Δpi=(ΔXi,ΔYi,Δθi)だけワーク2が移動したときの計測位置PSbから予測位置PEbiへの変換式を用いて、ワールド座標系における予測位置PEbiの座標を求める。変換式は、以下の式(3)に示される。 The estimating unit 46 obtains the coordinates of the predicted position PEbi in the world coordinate system using a conversion formula from the measured position PSb to the predicted position PEbi when the work 2 moves by the moving amount Δpi = (ΔXi, ΔYi, Δθi). . The conversion equation is shown in the following equation (3).
Ebi=Ti(Rbi(Sb)) ・・・式(3)
式(3)において、Sbは、ワールド座標系における計測位置PSbのX座標xsbおよびY座標ysbの転置行列である(xsb,ysb)Tを示す。Rbi( )は、回転移動に対応する変換式を示し、θステージ110θの回転中心と計測位置PSbとの距離と、θステージ110θの回転移動量Δθiとに基づいて定められる。Ti( )は、並進移動に対応する変換式を示し、Xステージ110Xの移動量ΔXiとYステージ110Yの移動量ΔYiと応じて定められる。Ebiは、ワールド座標系における予測位置PEaiのX座標xebiおよびY座標yebiの転置行列である(xebi,yebi)Tを示す。
Ebi = Ti (Rbi (Sb)) Equation (3)
In Expression (3), Sb represents (xsb, ysb) T which is a transposed matrix of the X coordinate xsb and the Y coordinate ysb of the measurement position PSb in the world coordinate system. Rbi () indicates a conversion formula corresponding to the rotational movement, and is determined based on the distance between the rotational center of the θ stage 110θ and the measurement position PSb and the rotational movement amount Δθi of the θ stage 110θ. Ti () indicates a conversion equation corresponding to the translational movement, and is determined according to the movement amount ΔXi of the X stage 110X and the movement amount ΔYi of the Y stage 110Y. Ebi indicates (xebi, yebi) T which is a transposed matrix of the X coordinate xebi and the Y coordinate yebi of the predicted position PEai in the world coordinate system.
推定部46は、第2キャリブレーションデータを用いて、ワールド座標系における予測位置PEbiの座標をカメラ302bに対応するローカル座標系の座標に変換する。これにより、推定部46は、ローカル座標系における予測位置PEbiの座標を得ることができる。このようにして、推定部46は、時刻tk0,・・・,tknについて、予測位置PEb0,・・・,PEbnの座標をそれぞれ算出する。 The estimating unit 46 converts the coordinates of the predicted position PEbi in the world coordinate system into coordinates in the local coordinate system corresponding to the camera 302b using the second calibration data. Thus, the estimation unit 46 can obtain the coordinates of the predicted position PEbi in the local coordinate system. Thus, the estimating unit 46 calculates the coordinates of the predicted positions PEb0,..., PEbn at times tk0,.
予測位置PEa0,・・・,PEanの座標(ローカル座標系)は、時刻tk0,・・・,tknにおける画像上のマーク5aの予測位置の座標を示す。そのため、推定部46は、予測位置PEa0,・・・,PEanをこの順に繋ぐ軌跡を、k回目のカメラ302aの撮像動作の露光期間におけるマーク5aの画像上の移動軌跡として推定する。推定部46は、予測位置PEa0,・・・,PEanをこの順に繋ぐ軌跡を示す関数をマーク5aの軌跡情報として生成する。関数は、連続する2つの予測位置同士を結ぶ直線を示してもよいし、予測位置PEa0,・・・,PEanの近似曲線を示してもよい。 , PEan indicate the coordinates of the predicted position of the mark 5a on the image at times tk0,..., Tkn. Therefore, the estimation unit 46 estimates a trajectory connecting the predicted positions PEa0,..., PEan in this order as a movement trajectory of the mark 5a on the image during the exposure period of the k-th camera 302a imaging operation. The estimating unit 46 generates a function indicating a trajectory connecting the predicted positions PEa0,..., PEan in this order as trajectory information of the mark 5a. The function may indicate a straight line connecting two consecutive predicted positions, or may indicate an approximate curve of the predicted positions PEa0,..., PEan.
予測位置PEb0,・・・,PEbnの座標(ローカル座標系)は、時刻tk0,・・・,tknにおける画像上のマーク5bの予測位置の座標を示す。そのため、推定部46は、予測位置PEb0,・・・,PEbnをこの順に繋ぐ軌跡を、k回目のカメラ302bの撮像動作の露光期間におけるマーク5bの画像上の移動軌跡として推定する。推定部46は、予測位置PEb0,・・・,PEbnをこの順に繋ぐ軌跡を示す関数をマーク5bの軌跡情報として生成する。関数は、連続する2つの予測位置同士を結ぶ直線を示してもよいし、予測位置PEb0,・・・,PEbnの近似曲線を示してもよい。 The coordinates of the predicted positions PEb0,..., PEbn (local coordinate system) indicate the coordinates of the predicted position of the mark 5b on the image at times tk0,. Therefore, the estimation unit 46 estimates a trajectory connecting the predicted positions PEb0,..., PEbn in this order as a movement trajectory of the mark 5b on the image during the exposure period of the k-th camera 302b imaging operation. The estimating unit 46 generates a function indicating a trajectory connecting the predicted positions PEb0,..., PEbn in this order as trajectory information of the mark 5b. The function may indicate a straight line connecting two consecutive predicted positions, or may indicate an approximate curve of the predicted positions PEb0,..., PEbn.
なお、露光時間Taが制御周期Tsの1(=n)倍である場合、推定部46は、k回目の撮像動作の露光開始時刻(時刻tk0)および露光終了時刻(時刻tk1)におけるマーク5aの予測位置PEa0および予測位置PEa1をそれぞれ予測する。この場合、k回目のカメラ302aの撮像動作の露光期間におけるマーク5aの画像上の移動軌跡は、予測位置PEa0を始点とし、予測位置PEa1を終点とするベクトルによって示される。同様に、推定部46は、露光開始時刻(時刻tk0)および露光終了時刻(時刻tk1)におけるマーク5bの予測位置PEb0および予測位置PEb1をそれぞれ予測する。そして、k回目のカメラ302bの撮像動作の露光期間におけるマーク5bの画像上の移動軌跡は、予測位置PEb0を始点とし、予測位置PEb1を終点とするベクトルによって示される。 When the exposure time Ta is 1 (= n) times the control cycle Ts, the estimation unit 46 sets the mark 5a at the exposure start time (time tk0) and the exposure end time (time tk1) of the k-th imaging operation. The predicted position PEa0 and the predicted position PEa1 are predicted respectively. In this case, the movement locus of the mark 5a on the image during the exposure period of the k-th imaging operation of the camera 302a is indicated by a vector having the predicted position PEa0 as a start point and the predicted position PEa1 as an end point. Similarly, the estimation unit 46 predicts the predicted position PEb0 and the predicted position PEb1 of the mark 5b at the exposure start time (time tk0) and the exposure end time (time tk1). The movement trajectory of the mark 5b on the image during the exposure period of the k-th imaging operation of the camera 302b is indicated by a vector having the predicted position PEb0 as a start point and the predicted position PEb1 as an end point.
§3 動作例
<3−1.制御システムの位置決め処理の流れ>
図6を参照して、制御システム1の位置決め処理の流れの一例について説明する。図6は、制御システムの位置決め処理の流れの一例を示すフローチャートである。
§3 Operation example <3-1. Flow of positioning process of control system>
An example of the flow of the positioning process of the control system 1 will be described with reference to FIG. FIG. 6 is a flowchart illustrating an example of the flow of the positioning process of the control system.
まずステップS1において、モーションコントローラ400は、推定位置PVおよびエンコーダ値PVmX,PVmY,PVmθを初期化する。次にステップS2において、ワーク2が移動機構100上に載置されると、指示部45は、視覚センサ300に対して撮像トリガTRを出力する。これにより、移動機構100が停止した状態で、カメラ302a,302bは、ワーク2に対する1回目の撮像動作を行なう。 First, in step S1, the motion controller 400 initializes the estimated position PV and the encoder values PVmX, PVmY, PVmθ. Next, in step S <b> 2, when the work 2 is placed on the moving mechanism 100, the instruction unit 45 outputs an imaging trigger TR to the visual sensor 300. Thus, with the moving mechanism 100 stopped, the cameras 302a and 302b perform the first imaging operation on the workpiece 2.
次にステップS3において、画像処理装置304は、カメラ302aの撮像動作によって得られた画像に含まれるマーク5aの計測位置PSaと、カメラ302bの撮像動作によって得られた画像に含まれるマーク5bの計測位置PSbとを特定する。次にステップS4において、移動制御部41は、移動機構100の移動制御を開始する。 Next, in step S3, the image processing device 304 measures the measurement position PSa of the mark 5a included in the image obtained by the imaging operation of the camera 302a and the measurement position PSa of the mark 5b included in the image obtained by the imaging operation of the camera 302b. The position PSb is specified. Next, in step S4, the movement control unit 41 starts movement control of the movement mechanism 100.
次にステップS5において、移動制御部41は、目標位置SPに対する推定位置PVの偏差が閾値未満か否かを判断する。閾値は、要求される位置決め精度に応じて予め定められる。目標位置SPに対する推定位置PVの偏差が閾値未満である場合(ステップS5でYES)、移動制御部41は、移動機構100の移動制御を終了する。これにより、位置決め処理が終了する。 Next, in step S5, the movement control unit 41 determines whether the deviation of the estimated position PV from the target position SP is less than a threshold. The threshold value is predetermined according to the required positioning accuracy. If the deviation of the estimated position PV from the target position SP is smaller than the threshold (YES in step S5), the movement control unit 41 ends the movement control of the movement mechanism 100. Thus, the positioning process ends.
目標位置SPに対する推定位置PVの偏差が閾値未満でない場合(ステップS5でNO)、ステップS6〜ステップS10の処理が撮像周期Tbごとに繰り返される。なお、ステップS6〜S10の間にも、移動制御部41による移動制御が並行して実行される。 If the deviation of the estimated position PV from the target position SP is not less than the threshold (NO in step S5), the processing in steps S6 to S10 is repeated for each imaging cycle Tb. Note that the movement control by the movement control unit 41 is also performed in parallel between steps S6 to S10.
ステップS6において、指示部45は、現時刻が撮像トリガTRの出力時刻であるか否かを判断する。撮像トリガTRの出力時刻は、撮像周期Tbに従って定められている。現時刻が撮像トリガTRの出力時刻でない場合(ステップS6でNO)、処理はステップS5に戻る。 In step S6, the instruction unit 45 determines whether or not the current time is the output time of the imaging trigger TR. The output time of the imaging trigger TR is determined according to the imaging cycle Tb. If the current time is not the output time of the imaging trigger TR (NO in step S6), the process returns to step S5.
現時刻が撮像トリガTRの出力時刻である場合(ステップS6でYES)、指示部45は、撮像トリガTRを画像処理装置304に出力する。これにより、ステップS7において、撮像トリガTRを受けた画像処理装置304は、撮像するようにカメラ302a,302bを制御し、カメラ302a,302bによって撮像された画像を取得する。 If the current time is the output time of the imaging trigger TR (YES in step S6), the instruction unit 45 outputs the imaging trigger TR to the image processing device 304. Accordingly, in step S7, the image processing device 304 that has received the imaging trigger TR controls the cameras 302a and 302b to capture an image, and obtains images captured by the cameras 302a and 302b.
次にステップS8において、推定部46は、カメラ302a,302bの露光期間中におけるマーク5a,5bの画像上の移動軌跡をそれぞれ推定し、推定した移動軌跡を示す軌跡情報を生成する。そして、指示部45は、生成された軌跡情報を用いて画像のブレ補正を行なうように、画像処理装置304に指示する。 Next, in step S8, the estimation unit 46 estimates the movement trajectories of the marks 5a and 5b on the images during the exposure periods of the cameras 302a and 302b, respectively, and generates trajectory information indicating the estimated movement trajectories. Then, the instruction unit 45 instructs the image processing device 304 to perform image blur correction using the generated trajectory information.
次にステップS9において、画像処理装置304の補正部32は、軌跡情報を用いて、カメラ302a,302bによって撮像された画像のブレ補正を行なう。ステップS10において、位置特定部34は、ブレ補正が行なわれた画像に含まれるマーク5a,5bの計測位置PSa,PSbをそれぞれ特定する。ステップS10の後、処理はステップS5に戻る。 Next, in step S9, the correction unit 32 of the image processing device 304 performs blur correction of the images captured by the cameras 302a and 302b using the trajectory information. In step S10, the position specifying unit 34 specifies the measurement positions PSa and PSb of the marks 5a and 5b included in the image subjected to the shake correction, respectively. After step S10, the process returns to step S5.
<3−2.移動制御部の処理>
図7は、移動制御部による移動機構の制御処理の流れの一例を示すフローチャートである。まずステップS11において、位置決定部42は、画像処理装置304によって特定された最新の計測位置PSa,PSbを取得する。ステップS12において、位置決定部42は、計測位置PSa,Psbの算出の元となる撮像時刻を取得する。たとえば、位置決定部42は、推定部46によって算出された露光開始時刻を撮像時刻として取得すればよい。
<3-2. Processing of movement control unit>
FIG. 7 is a flowchart illustrating an example of a flow of a control process of the moving mechanism by the movement control unit. First, in step S11, the position determination unit 42 acquires the latest measurement positions PSa and PSb specified by the image processing device 304. In step S12, the position determination unit 42 acquires the imaging time that is the basis for calculating the measurement positions PSa and Psb. For example, the position determining unit 42 may acquire the exposure start time calculated by the estimating unit 46 as the imaging time.
次にステップS13において、位置決定部42は、撮像時刻に近い複数の時刻のエンコーダ値PVmX,PVmY,PVmθを取得する。 Next, in step S13, the position determination unit 42 acquires the encoder values PVmX, PVmY, PVmθ at a plurality of times close to the imaging time.
次にステップS14において、位置決定部42は、複数の時刻のエンコーダ値PVmXの内挿補間値を算出し、当該内挿補間値を撮像時刻のエンコーダ値PVmsXとする。同様に、位置決定部42は、複数の時刻のエンコーダ値PVmYの内挿補間値を算出し、当該内挿補間値を撮像時刻のエンコーダ値PVmsYとする。位置決定部42は、複数の時刻のエンコーダ値PVmθの内挿補間値を算出し、当該内挿補間値を撮像時刻のエンコーダ値PVmsθとする。 Next, in step S14, the position determination unit 42 calculates an interpolation value of the encoder value PVmX at a plurality of times, and sets the interpolation value as the encoder value PVmsX at the imaging time. Similarly, the position determination unit 42 calculates an interpolation value of the encoder value PVmY at a plurality of times, and sets the interpolation value as the encoder value PVmsY at the imaging time. The position determination unit 42 calculates an interpolation value of the encoder value PVmθ at a plurality of times, and sets the interpolation value as the encoder value PVmsθ at the imaging time.
具体的には、位置決定部42は、以下のようにして内挿補間値を算出する。検出時刻t(j)においてエンコーダ130によって検出されたエンコーダ値PVmXをエンコーダ値PVmX(j)とする。位置決定部42は、撮像時刻tviに近接する2つの時刻、例えば、時間軸上で、撮像時刻tviを挟む検出時刻t(q)と検出時刻t(q+1)とを特定する。 Specifically, the position determination unit 42 calculates an interpolation value as follows. The encoder value PVmX detected by the encoder 130 at the detection time t (j) is defined as an encoder value PVmX (j). The position determining unit 42 specifies two times close to the imaging time tvi, for example, a detection time t (q) and a detection time t (q + 1) sandwiching the imaging time tvi on the time axis.
位置決定部42は、検出時刻t(q)のエンコーダ値PVmX(q)と、検出時刻t(q+1)のエンコーダ値PVmX(q+1)とを取得する。過去に検出されたエンコーダ値は、モーションコントローラ400の記憶部(たとえば不揮発性メモリ416または主メモリ418(図3参照))に記憶される。 The position determination unit 42 acquires the encoder value PVmX (q) at the detection time t (q) and the encoder value PVmX (q + 1) at the detection time t (q + 1). The encoder values detected in the past are stored in the storage unit of the motion controller 400 (for example, the nonvolatile memory 416 or the main memory 418 (see FIG. 3)).
位置決定部42は、エンコーダ値PVmX(q)とエンコーダ値PVmX(q+1)との内挿補間値を用いて、撮像時刻tviのエンコーダ値PVmsX(vi)を算出する。具体的には、位置決定部42は、次の式(4)を用いて、撮像時刻tviのエンコーダ値PVmsX(vi)を算出する。 The position determination unit 42 calculates an encoder value PVmsX (vi) at the imaging time tvi using an interpolation value between the encoder value PVmX (q) and the encoder value PVmX (q + 1). Specifically, the position determination unit 42 calculates the encoder value PVmsX (vi) at the imaging time tvi using the following equation (4).
PVmsX(vi)=PVmX(q)+Kk*(PVmX(q+1)−PVmX(q)) ・・・(4)
ここで、Kkは、内挿補間係数である。制御周期をTsとし、エンコーダ値PVmXの伝送遅延時間をTedとし、撮像トリガTRの伝送遅延時間をTsdとして、Ts−Ted≦Tsd<2Ts−Tedの場合、内挿補間係数Kkは、次の式(5)を用いて算出される。
PVmsX (vi) = PVmX (q) + Kk * (PVmX (q + 1) -PVmX (q)) (4)
Here, Kk is an interpolation coefficient. When the control cycle is Ts, the transmission delay time of the encoder value PVmX is Ted, and the transmission delay time of the imaging trigger TR is Tsd, and Ts−Ted ≦ Tsd <2Ts−Ted, the interpolation coefficient Kk is expressed by the following equation. It is calculated using (5).
Kk={Tsd−(Ts−Ted)}/Ts ・・・(5)
このような内挿補間値の算出方法を用いることによって、撮像時刻tviのエンコーダ値PVmsX(vi)を高精度に算出できる。同様にして、撮像時刻tviのエンコーダ値PVmsY(vi),PVmsθ(vi)が算出される。なお、撮像時刻がエンコーダ値の算出時刻と一致する場合には、このエンコーダ値をそのまま用いればよい。
Kk = {Tsd- (Ts-Ted)} / Ts (5)
By using such a method of calculating the interpolation value, the encoder value PVmsX (vi) at the imaging time tvi can be calculated with high accuracy. Similarly, encoder values PVmsY (vi) and PVmsθ (vi) at the imaging time tvi are calculated. If the imaging time matches the calculation time of the encoder value, the encoder value may be used as it is.
次にステップS15において、位置決定部42は、最新の計測位置PSa,PSbと、撮像時刻以後のエンコーダ値PVmX,PVmY,PVmθと、撮像時刻のエンコーダ値PVmsX,PVmsY,PVmsθとを用いて、推定位置PVを算出する。 Next, in step S15, the position determination unit 42 estimates using the latest measurement positions PSa and PSb, the encoder values PVmX, PVmY, and PVmθ after the imaging time, and the encoder values PVmsX, PVmsY, and PVmsθ at the imaging time. The position PV is calculated.
具体的には、X方向に(PVmX−PVmsX)だけ並進移動し、Y方向に(PVmY−PVmsY)だけ並進移動し、(PVmθ−PVmsθ)だけ回転移動するときのアフィン変換式に計測位置PSaを入力し、アフィン変換後の位置PSwaが算出される。同様に、当該アフィン変換式に計測位置PSbを入力し、アフィン変換後の位置PSwbが算出される。位置決定部42は、マーク5aが位置PSwaに位置し、マーク5bが位置PSwbに位置するときのワーク2の位置を推定位置PVとして決定する。つまり、位置決定部42は、位置PSwaと位置PSwbとの中点の座標と、位置PSwaと位置PSwbとを結ぶ直線とX軸またはY軸とのなす角度とを、推定位置PVを特定する情報として算出する。 Specifically, the measurement position PSa is translated by (PVmX−PVmsX) in the X direction, translated by (PVmY−PVmsY) in the Y direction, and rotationally moved by (PVmθ−PVmsθ) in the Y direction. The position PSwa after the input and the affine transformation is calculated. Similarly, the measurement position PSb is input to the affine transformation equation, and the position PSwb after the affine transformation is calculated. The position determination unit 42 determines the position of the work 2 when the mark 5a is located at the position PSwa and the mark 5b is located at the position PSwb as the estimated position PV. That is, the position determination unit 42 determines the coordinates of the midpoint between the positions PSwa and PSwb, and the angle between the straight line connecting the positions PSwa and PSwb and the X axis or the Y axis, as information for specifying the estimated position PV. Is calculated as
次にステップS16において、演算部44は、目標位置SPに対する推定位置PVの偏差に基づいて、たとえばP演算により、移動指令MVX,MVY,MVθを生成して、サーボドライバ200X,200Y,200θにそれぞれ出力する。 Next, in step S16, the calculation unit 44 generates the movement commands MVX, MVY, MVθ by, for example, P calculation based on the deviation of the estimated position PV from the target position SP, and sends it to the servo drivers 200X, 200Y, 200θ, respectively. Output.
このような処理を実行することによって、モーションコントローラ400は、画像処理による高精度な計測位置PSa,PSbが入力される時刻には、この高精度な計測位置PSa,PSbを用いて推定位置PVを算出し、高精度な位置決め制御を実現できる。ここで、計測位置PSa,PSbが入力される時間間隔は、撮像周期Tbであり、エンコーダ値PVmX,PVmY,PVmθが入力される制御周期Tsに比べて長い。しかしながら、時間軸上で隣り合う計測位置PSa,PSbの入力時刻間において、位置決定部42は、入力周期が短いエンコーダ値PVmX,PVmY,PVmθの入力時刻毎に、推定位置PVを決定して、移動機構100の移動制御を行う。これにより、高精度且つ短周期の位置決め制御が可能になる。さらに、位置決定部42は、上述の簡単な四則演算を用いる処理を行なう。そのため、簡素な構成および処理による高速且つ高精度な位置決めを実現できる。 By executing such processing, the motion controller 400 determines the estimated position PV using the high-precision measurement positions PSa and PSb at the time when the high-precision measurement positions PSa and PSb are input by the image processing. It is possible to calculate and realize high-accuracy positioning control. Here, the time interval at which the measurement positions PSa and PSb are input is the imaging period Tb, which is longer than the control period Ts at which the encoder values PVmX, PVmY, and PVmθ are input. However, between the input times of the adjacent measurement positions PSa and PSb on the time axis, the position determination unit 42 determines the estimated position PV for each input time of the encoder values PVmX, PVmY, and PVmθ having a short input cycle. The movement of the movement mechanism 100 is controlled. This enables high-accuracy and short-period positioning control. Further, the position determination unit 42 performs a process using the above-described simple four arithmetic operations. Therefore, high-speed and high-accuracy positioning by a simple configuration and processing can be realized.
<3−3.作用・効果>
以上のように、制御システム1は、画像処理装置304と移動制御部41とを備える。画像処理装置304は、ワーク2に対する撮像周期ごとの撮像動作によって得られる画像を取得し、取得した画像に基づいて、ワーク2のマーク5a,5bの計測位置PSa,PSbをそれぞれ特定する。移動制御部41は、画像処理装置304によって特定された計測位置PSa,PSbに基づいて、ワーク2の位置が目標位置SPに近づくように移動機構100を制御する。さらに、制御システム1は、推定部46を備える。推定部46は、(k−1)回目の撮像動作によって得られた画像に基づいて特定された計測位置PSa,PSbと、移動機構100からの情報を含む参照情報とに基づいて、k回目の撮像動作における露光期間中のマーク5a,5bの移動軌跡を推定する。画像処理装置304は、マーク5a,5bの移動軌跡に基づいて、k回目の撮像動作によって得られた画像のブレ補正を行なう。
<3-3. Action / Effect>
As described above, the control system 1 includes the image processing device 304 and the movement control unit 41. The image processing device 304 acquires an image obtained by performing an imaging operation on the work 2 in each imaging cycle, and specifies the measurement positions PSa and PSb of the marks 5a and 5b of the work 2 based on the obtained image. The movement control unit 41 controls the movement mechanism 100 based on the measurement positions PSa and PSb specified by the image processing device 304 so that the position of the work 2 approaches the target position SP. Further, the control system 1 includes an estimation unit 46. The estimating unit 46 performs the k-th measurement based on the measurement positions PSa and PSb specified based on the image obtained by the (k−1) -th imaging operation and the reference information including the information from the moving mechanism 100. The movement trajectory of the marks 5a and 5b during the exposure period in the imaging operation is estimated. The image processing device 304 performs shake correction on an image obtained by the k-th imaging operation based on the movement trajectories of the marks 5a and 5b.
移動機構100からの情報は、移動機構100の移動を直接的に示す情報である。そのため、軌跡情報は、カメラ302a,302bの露光期間におけるマーク5a,5bの移動軌跡を精度良く示す。これにより、画像処理装置304は、画像のブレ補正を精度良く行なうことができ、マーク5a,5bの位置を精度良く特定できる。その結果、ワーク2を高精度に位置決めすることができる。 The information from the moving mechanism 100 is information directly indicating the movement of the moving mechanism 100. Therefore, the trajectory information accurately indicates the movement trajectory of the marks 5a and 5b during the exposure period of the cameras 302a and 302b. Accordingly, the image processing device 304 can accurately perform the image blur correction, and can accurately specify the positions of the marks 5a and 5b. As a result, the workpiece 2 can be positioned with high accuracy.
移動機構100からの情報は、ワーク2を移動させるために駆動されるサーボモータ120X,120Y,120θの回転量をそれぞれ示すエンコーダ値PVmX,PVmY,PVmθである。カメラ302a,302bの露光期間におけるエンコーダ値PVmX,PVmY,PVmθは、移動機構100の移動量を直接的に示す。そのため、推定部46によって生成される軌跡情報は、露光期間におけるマーク5a,5bの移動軌跡を精度良く示す。 The information from the moving mechanism 100 is encoder values PVmX, PVmY, PVmθ indicating the rotation amounts of the servo motors 120X, 120Y, 120θ driven to move the work 2 respectively. The encoder values PVmX, PVmY, PVmθ during the exposure period of the cameras 302a, 302b directly indicate the amount of movement of the moving mechanism 100. Therefore, the trajectory information generated by the estimation unit 46 accurately indicates the trajectories of the marks 5a and 5b during the exposure period.
§4 変形例
<4−1.変形例1>
推定部46は、(k−1)回目の撮像動作以降に移動制御部41によって生成された移動指令MVX,MVY,MVθを参照情報として取得し、移動指令MVX,MVY,MVθに基づいて、軌跡情報を生成してもよい。
§4 Modification <4-1. Modification 1>
The estimating unit 46 acquires the movement commands MVX, MVY, MVθ generated by the movement control unit 41 after the (k−1) -th imaging operation as reference information, and obtains a trajectory based on the movement commands MVX, MVY, MVθ. Information may be generated.
ワーク2が載置された移動機構100は、移動指令MVX,MVY,MVθに従って移動する。そのため、(k−1)回目の撮像動作の露光開始時刻(時刻t(k−1))からk回目の撮像動作の露光期間中の時刻tki(iは、0〜nの整数))までの期間におけるワーク2のX方向の並進移動量ΔXiは、当該期間に生成された移動指令MVXから推定される。同様に、時刻t(k−1)から時刻tkiまでの期間におけるワーク2のY方向の移動量ΔYiは、当該期間に生成された移動指令MVYから推定される。時刻t(k−1)から時刻tkiまでの期間におけるワーク2の回転移動量Δθiは、当該期間に生成された移動指令MVθから推定される。 The moving mechanism 100 on which the work 2 is placed moves according to the movement commands MVX, MVY, MVθ. Therefore, from the exposure start time of the (k-1) th imaging operation (time t (k-1)) to the time tki (i is an integer of 0 to n) during the exposure period of the kth imaging operation. The translational movement amount ΔXi of the workpiece 2 in the X direction during the period is estimated from the movement command MVX generated during the period. Similarly, the movement amount ΔYi of the workpiece 2 in the Y direction during the period from the time t (k−1) to the time tki is estimated from the movement command MVY generated during the period. The rotational movement amount Δθi of the work 2 during the period from the time t (k−1) to the time tki is estimated from the movement command MVθ generated during the period.
推定部46は、たとえば移動指令MVXが速度指令であり、時刻tにおける移動指令MVXの値をMVX(t)とすると、以下の式(6)に従って、時刻t(k−1)から時刻tkiまでの期間におけるX方向の並進移動量ΔXiを算出する。制御周期Tsの間、MVX(t)は一定である。 For example, assuming that the movement command MVX is a speed command and the value of the movement command MVX at time t is MVX (t), the estimating unit 46 calculates the time from time t (k−1) to time tki according to the following equation (6) Is calculated in the X direction during the period of. MVX (t) is constant during the control cycle Ts.
同様に、推定部46は、以下の式(7),(8)に従って、時刻t(k−1)から時刻tkiまでの期間における、Y方向の並進移動量ΔYiと、回転移動量Δθiとを算出する。式(7)において、MVY(t)は、時刻tにおける移動指令MVYの値を示す。式(8)において、MVθ(t)は、時刻tにおける移動指令MVθの値を示す。移動指令MVY,MVθは速度指令であり、MVY(t)およびMVθ(t)は、制御周期Tsの間、一定である。 Similarly, the estimating unit 46 calculates the translational movement amount ΔYi in the Y direction and the rotational movement amount Δθi in the period from time t (k−1) to time tki in accordance with the following equations (7) and (8). calculate. In equation (7), MVY (t) indicates the value of the movement command MVY at time t. In equation (8), MVθ (t) indicates the value of the movement command MVθ at time t. The movement commands MVY and MVθ are speed commands, and MVY (t) and MVθ (t) are constant during the control cycle Ts.
推定部46は、上記のようにして算出したΔXi,ΔYi,Δθiを用いて、移動軌跡を推定すればよい。 The estimation unit 46 may estimate the movement trajectory using ΔXi, ΔYi, and Δθi calculated as described above.
変形例1に係る制御システムによれば、露光終了時刻と重なる制御周期Tsの開始時刻において、推定部46は、軌跡情報を生成することができる。すなわち、推定部46は、露光終了時刻の前に、軌跡情報を生成することができる。そのため、画像処理装置304の補正部32は、カメラ302a,302bによって撮像された画像に対するブレ補正を即座に行なうことができる。これにより、撮像トリガTRが出力されてから計測位置PSa,PSbが特定されるまでの時間を短縮できる。 According to the control system according to Modification 1, the estimation unit 46 can generate the trajectory information at the start time of the control cycle Ts that overlaps with the exposure end time. That is, the estimation unit 46 can generate the trajectory information before the exposure end time. Therefore, the correction unit 32 of the image processing device 304 can immediately perform blur correction on images captured by the cameras 302a and 302b. Thereby, the time from when the imaging trigger TR is output to when the measurement positions PSa and PSb are specified can be reduced.
<4−2.変形例2>
推定部46は、k回目の撮像動作の露光期間中の時刻tki(iは、0〜nの整数))を前半(時刻tki(iは、0〜sの整数(sは1以上n未満の整数))と後半(時刻tki(iは、s+1〜nの整数)とに分けてもよい。推定部46は、(k−1)回目の撮像動作の露光開始時刻(時刻t(k−1))から前半の時刻tki(iは、0〜sの整数))までの期間におけるワーク2の移動量Δpiを、エンコーダ値を用いて算出する。推定部46は、時刻t(k−1)から後半の時刻tki(iは、s+1〜nの整数))までの期間におけるワーク2の移動量Δpiを、変形例1と同様に移動指令MVX,MVY,MVθを用いて算出する。
<4-2. Modification 2>
The estimating unit 46 sets the time tki (i is an integer of 0 to n) during the exposure period of the k-th imaging operation to the first half (time tki (i is an integer of 0 to s (s is 1 or more and less than n)). The estimation unit 46 may determine the exposure start time (time t (k-1) of the (k-1) -th imaging operation at the time tki (i is an integer of s + 1 to n). )) To the first half of time tki (i is an integer of 0 to s)) to calculate the movement amount Δpi of the work 2 using the encoder value.The estimating unit 46 calculates the time t (k−1). Is calculated using the movement commands MVX, MVY, and MVθ in the same manner as in the first modification, from the time tki to the latter half of the time tki (i is an integer of s + 1 to n).
これにより、軌跡情報によって示される移動軌跡は、変形例1に係る制御システムと比較して、マーク5a,5bの実軌跡により近くなる。その結果、画像処理装置304の補正部32によってブレ補正された画像がより鮮明となり、位置決め精度を高めることができる。さらに、変形例1と同様に、推定部46は、露光終了時刻の前に、軌跡情報を生成することができる。そのため、撮像トリガTRが出力されてから計測位置PSa,PSbが特定されるまでの時間を短縮できる。 As a result, the movement trajectory indicated by the trajectory information is closer to the actual trajectories of the marks 5a and 5b than in the control system according to the first modification. As a result, the image blur-corrected by the correction unit 32 of the image processing device 304 becomes clearer, and positioning accuracy can be improved. Further, similarly to the first modification, the estimating unit 46 can generate the trajectory information before the exposure end time. Therefore, the time from when the imaging trigger TR is output to when the measurement positions PSa and PSb are specified can be reduced.
<4−3.変形例3>
上記の説明では、移動制御部41は、推定位置PVが目標位置SPに近づくように、移動指令MVX,MVY,MVθを生成する。しかしながら、ワーク2をより滑らかに移動させるための移動機構100の目標軌道が決定され、決定された目標軌道に従って移動機構100が制御されてもよい。この場合、ワーク2は、決定された目標軌道に従って移動する。そのため、制御システムは、撮像トリガTRを出力する前に、目標軌道に基づいて、露光期間におけるマーク5a,5bの移動軌跡を示す軌道情報を生成することができる。これにより、変形例1,2と同様に、撮像トリガTRが出力されてから計測位置PSa,PSbが特定されるまでの時間を短縮できる。さらに、モーションコントローラは、撮像トリガTRと軌道情報とを同時に画像処理装置304に出力することができる。その結果、画像処理装置304とモーションコントローラ400との間の通信シーケンスを簡略化できる。
<4-3. Modification 3>
In the above description, the movement control unit 41 generates the movement commands MVX, MVY, MVθ so that the estimated position PV approaches the target position SP. However, the target trajectory of the moving mechanism 100 for moving the workpiece 2 more smoothly may be determined, and the moving mechanism 100 may be controlled according to the determined target trajectory. In this case, the work 2 moves according to the determined target trajectory. Therefore, before outputting the imaging trigger TR, the control system can generate trajectory information indicating the movement trajectory of the marks 5a and 5b during the exposure period based on the target trajectory. Thus, similarly to the first and second modifications, the time from when the imaging trigger TR is output to when the measurement positions PSa and PSb are specified can be reduced. Further, the motion controller can output the imaging trigger TR and the trajectory information to the image processing device 304 at the same time. As a result, the communication sequence between the image processing device 304 and the motion controller 400 can be simplified.
<4−3−1.制御システムの機能構成>
図8は、変形例3に係る制御システム1Aの機能構成を示すブロック図である。図8に示されるように、制御システム1Aは、図4に示す制御システム1と比較して、モーションコントローラ400の代わりにモーションコントローラ400Aを備える点で相違する。モーションコントローラ400Aは、モーションコントローラ400と比較して、移動制御部41および推定部46の代わりに、移動制御部41Aおよび推定部46Aをそれぞれ含む点で相違する。移動制御部41Aは、移動制御部41と比較して、位置決定部42、減算部43および演算部44の代わりに目標軌道決定部47および演算部44Aを備える点で相違する。
<4-3-1. Functional configuration of control system>
FIG. 8 is a block diagram illustrating a functional configuration of a control system 1A according to the third modification. As shown in FIG. 8, the control system 1A is different from the control system 1 shown in FIG. 4 in that a motion controller 400A is provided instead of the motion controller 400. The motion controller 400A is different from the motion controller 400 in that the motion controller 400A includes a movement control unit 41A and an estimation unit 46A instead of the movement control unit 41 and the estimation unit 46, respectively. The movement control unit 41A is different from the movement control unit 41 in that a target trajectory determination unit 47 and a calculation unit 44A are provided instead of the position determination unit 42, the subtraction unit 43, and the calculation unit 44.
<4−3−1−1.目標軌道決定部>
目標軌道決定部47は、画像処理装置304によって特定された計測位置PSa,PSbと、目標位置SPとに基づいて、移動機構100の目標軌道を決定する。具体的には、以下のようにして目標軌道を決定する。
<4-3-1-1. Target trajectory determination unit>
The target trajectory determination unit 47 determines a target trajectory of the moving mechanism 100 based on the measurement positions PSa and PSb specified by the image processing device 304 and the target position SP. Specifically, the target trajectory is determined as follows.
目標軌道決定部47は、画像処理装置304によって特定された計測位置PSa,PSbに基づいて、ワーク2の実位置を特定する。目標軌道決定部47は、特定したワーク2の実位置から目標位置SPに移動させるための移動機構100の必要移動距離Loを算出する。目標軌道決定部47は、移動機構100の必要移動距離Loを、X軸方向の必要移動距離LXとY軸方向の必要移動距離LYと回転方向の必要移動距離Lθに分解する。 The target trajectory determination unit 47 specifies the actual position of the work 2 based on the measurement positions PSa and PSb specified by the image processing device 304. The target trajectory determination unit 47 calculates a required moving distance Lo of the moving mechanism 100 for moving the specified work 2 from the actual position to the target position SP. The target trajectory determination unit 47 divides the required moving distance Lo of the moving mechanism 100 into the required moving distance LX in the X-axis direction, the required moving distance LY in the Y-axis direction, and the required moving distance Lθ in the rotation direction.
目標軌道決定部47は、必要移動距離LXと、Xステージ110Xの目標位置SPXとに基づいて、Xステージ110Xの目標軌道TGXを決定する。目標軌道決定部47は、必要移動距離LYと、Yステージ110Yの目標位置SPYとに基づいて、Yステージ110Yの目標軌道TGYを決定する。目標軌道決定部47は、必要移動距離Lθと、θステージ110θの目標位置SPXとに基づいて、θステージ110θの目標軌道TGθを決定する。 The target trajectory determining unit 47 determines a target trajectory TGX of the X stage 110X based on the required moving distance LX and the target position SPX of the X stage 110X. The target trajectory determination unit 47 determines a target trajectory TGY of the Y stage 110Y based on the required moving distance LY and the target position SPY of the Y stage 110Y. The target trajectory determination unit 47 determines the target trajectory TGθ of the θ stage 110θ based on the required moving distance Lθ and the target position SPX of the θ stage 110θ.
図9は、目標軌道TGX,TGY,TGθの一例を示す図である。目標軌道TGXは、時刻tにおける目標軌道TGXの位置と目標位置SPXとの偏差の時間変化を示す関数LX(t)が5次以上の多次関数となるように決定される。関数LX(t)は、必要移動距離LXと時刻tとを少なくとも説明変数とする関数である。同様に、目標軌道TGYは、時刻tにおける目標軌道TGYの位置と目標位置SPYとの偏差の時間変化を示す関数LY(t)が5次以上の多次関数となるように決定される。目標軌道TGθは、時刻tにおける目標軌道TGθの位置と目標位置SPθとの偏差の時間変化を示す関数Lθ(t)が5次以上の多次関数となるように決定される。 FIG. 9 is a diagram illustrating an example of the target trajectories TGX, TGY, and TGθ. The target trajectory TGX is determined so that the function LX (t) indicating the time change of the deviation between the position of the target trajectory TGX at time t and the target position SPX is a fifth-order or higher-order function. The function LX (t) is a function in which the required moving distance LX and the time t are at least explanatory variables. Similarly, the target trajectory TGY is determined such that the function LY (t) indicating the time change of the deviation between the position of the target trajectory TGY and the target position SPY at the time t is a fifth-order or higher-order function. The target trajectory TGθ is determined so that the function Lθ (t) indicating the time change of the deviation between the position of the target trajectory TGθ at time t and the target position SPθ is a multidimensional function of order 5 or higher.
目標軌道決定部47は、決定した目標軌道TGX,TGY,TGθと目標位置SPX,SPY,SPθとの偏差の時間変化をそれぞれ示す関数LX(t),LY(t),Lθ(t)を演算部44Aに出力する。関数LX(t),LY(t),Lθ(t)は、それぞれ目標軌道TGX,TGY,TGθを示す情報である。 The target trajectory determination unit 47 calculates functions LX (t), LY (t), and Lθ (t) indicating the time change of the deviation between the determined target trajectories TGX, TGY, TGθ and the target positions SPX, SPY, SPθ, respectively. Output to the unit 44A. The functions LX (t), LY (t), Lθ (t) are information indicating the target trajectories TGX, TGY, TGθ, respectively.
目標軌道決定部47は、撮像周期Tbごとに、画像処理装置304によって特定されたワーク2の最新の実位置に従って、関数LX(t),LY(t),Lθ(t)を更新する。 The target trajectory determination unit 47 updates the functions LX (t), LY (t), and Lθ (t) according to the latest actual position of the work 2 specified by the image processing device 304 for each imaging cycle Tb.
<4−3−1−2.演算部>
演算部44Aは、関数LX(t),LY(t),Lθ(t)に基づいて、制御周期Tsごとに移動指令MVX、MVY,MVθをそれぞれ算出する。具体的には、演算部44Aは、関数LX(t)に現時刻tを代入することにより、目標位置SPXに対する目標軌道TGXにおける現時刻tの位置の偏差を算出する。演算部44Aは、算出した偏差に対してたとえばP演算を行なうことにより、移動指令MVXを算出する。演算部44Aは、同様の方法により、移動指令MVY,MVθを算出する。
<4-3-1-2. Arithmetic unit>
The calculation unit 44A calculates the movement commands MVX, MVY, MVθ for each control cycle Ts based on the functions LX (t), LY (t), Lθ (t). Specifically, the arithmetic unit 44A calculates the deviation of the position of the current time t on the target trajectory TGX from the target position SPX by substituting the current time t into the function LX (t). Arithmetic unit 44A calculates movement command MVX by performing, for example, P operation on the calculated deviation. The calculation unit 44A calculates the movement commands MVY and MVθ by the same method.
<4−3−1−3.推定部>
推定部46Aは、目標軌道TGX,TGY,TGθを示す情報を参照情報として取得する。推定部46Aは、目標軌道TGX,TGY,TGθに基づいて、(k−1)回目の撮像動作の露光開始時刻(時刻t(k−1))からk回目の撮像動作の露光期間中の時刻tki(iは、0〜nの整数))までの期間におけるワーク2の移動量Δpiを算出する。具体的には、図9に示されるように、推定部46Aは、目標軌道TGXにおける時刻t(k−1)から時刻tkiまでの移動量を、ワーク2のX方向の並進移動量ΔXiとして算出する。同様に、推定部46Aは、目標軌道TGYにおける時刻t(k−1)から時刻tkiまでの移動量を、ワーク2のY方向の並進移動量ΔYiとして算出する。推定部46Aは、目標軌道TGθにおける時刻t(k−1)から時刻tkiまでの移動量を、ワーク2の回転移動量Δθiとして算出する。
<4-3-1-3. Estimation part>
The estimating unit 46A acquires information indicating the target trajectories TGX, TGY, TGθ as reference information. Based on the target trajectories TGX, TGY, and TGθ, the estimating unit 46A estimates the time during the exposure period of the k-th imaging operation from the exposure start time of the (k-1) -th imaging operation (time t (k-1)). The movement amount Δpi of the work 2 during a period up to tki (i is an integer from 0 to n) is calculated. Specifically, as shown in FIG. 9, the estimating unit 46A calculates the movement amount from the time t (k-1) to the time tki on the target trajectory TGX as the translation movement amount ΔXi of the work 2 in the X direction. I do. Similarly, the estimating unit 46A calculates the movement amount from the time t (k-1) to the time tki on the target trajectory TGY as the translation movement amount ΔYi of the work 2 in the Y direction. The estimating unit 46A calculates the movement amount from the time t (k-1) to the time tki on the target trajectory TGθ as the rotation movement amount Δθi of the work 2.
推定部46Aは、上記のようにして算出したΔXi,ΔYi,Δθiを用いて、移動軌跡を推定すればよい。 The estimation unit 46A may estimate the movement trajectory using ΔXi, ΔYi, and Δθi calculated as described above.
<4−3−2.目標軌道決定部の処理>
図10は、目標軌道決定部における処理の流れを示すフローチャートである。図10に示される処理は、撮像周期Tbごとに行なわれる。
<4-3-2. Processing of target trajectory determination unit>
FIG. 10 is a flowchart illustrating a flow of processing in the target trajectory determination unit. The process shown in FIG. 10 is performed for each imaging cycle Tb.
ステップS21において、目標軌道決定部47は、マーク5a,5bの計測位置PSa,PSbを画像処理装置304からそれぞれ取得する。 In step S21, the target trajectory determining unit 47 acquires the measurement positions PSa and PSb of the marks 5a and 5b from the image processing device 304, respectively.
ステップS22において、目標軌道決定部47は、マーク5a,5bの計測位置PSa,PSbに基づいて、ワーク2の実位置を特定する。そして、目標軌道決定部47は、特定したワーク2の実位置から目標位置SPに移動させるための、X軸方向の必要移動距離LXとY軸方向の必要移動距離LYと回転方向の必要移動距離Lθとを算出する。 In step S22, the target trajectory determination unit 47 specifies the actual position of the work 2 based on the measurement positions PSa and PSb of the marks 5a and 5b. Then, the target trajectory determination unit 47 calculates the required movement distance LX in the X-axis direction, the required movement distance LY in the Y-axis direction, and the required movement distance in the rotation direction for moving the specified work 2 from the actual position to the target position SP. Lθ is calculated.
ステップS23において、目標軌道決定部47は、必要移動距離LX,LY,Lθを補正する。当該補正は、移動機構100上におけるワーク2のすべりや、移動機構100の位置決め後における残留振動を抑制するために行なわれる。なお、ワーク2のすべりや残留振動が無視できる程度に小さい場合には、ステップS23は省略されてもよい。 In step S23, the target trajectory determination unit 47 corrects the required movement distances LX, LY, Lθ. The correction is performed in order to suppress the slip of the work 2 on the moving mechanism 100 and the residual vibration after the positioning of the moving mechanism 100. If the slip or residual vibration of the work 2 is so small as to be negligible, step S23 may be omitted.
ステップS23の補正方法は、以下の通りである。目標軌道決定部47は、エンコーダ130からのエンコーダ値に基づいて決定される移動機構100の実位置と、前回決定した目標軌道における現時刻の位置との位置偏差En(t)を誤差として算出する。位置偏差En(t)は、X軸方向の成分EnX(t)と、Y軸方向の成分EnY(t)と、回転方向の成分Enθ(t)とに分解される。 The correction method in step S23 is as follows. The target trajectory determination unit 47 calculates, as an error, a position deviation En (t) between the actual position of the moving mechanism 100 determined based on the encoder value from the encoder 130 and the current time position on the target trajectory determined last time. . The position deviation En (t) is decomposed into a component EnX (t) in the X-axis direction, a component EnY (t) in the Y-axis direction, and a component Enθ (t) in the rotation direction.
目標軌道決定部47は、必要移動距離LXを位置偏差EnX(t)で補正することにより、補正後の必要移動距離LXmを算出する。同様に、目標軌道決定部47は、必要移動距離LYを位置偏差EnY(t)で補正することにより、補正後の必要移動距離LYmを算出する。目標軌道決定部47は、必要移動距離Lθを位置偏差Enθ(t)で補正することにより、補正後の必要移動距離Lθmを算出する。 The target trajectory determination unit 47 calculates the required moving distance LXm after correction by correcting the necessary moving distance LX with the position deviation EnX (t). Similarly, the target trajectory determination unit 47 calculates the corrected required moving distance LYm by correcting the required moving distance LY with the position deviation EnY (t). The target trajectory determining unit 47 calculates the corrected required moving distance Lθm by correcting the required moving distance Lθ with the position deviation Enθ (t).
ステップS24において、目標軌道決定部47は、計測時刻tをゼロに初期化する。ステップS25において、目標軌道決定部47は、軌道時間Tを算出する。軌道時間Tは、目標軌道TGX,TGY,TGθの開始点から終了点まで移動機構100を移動するために要する時間を表わす。一例として、軌道時間Tは、以下の式(9)に基づいて算出される。 In step S24, the target trajectory determination unit 47 initializes the measurement time t to zero. In step S25, the target trajectory determination unit 47 calculates the trajectory time T. The trajectory time T represents the time required to move the moving mechanism 100 from the start point to the end point of the target trajectories TGX, TGY, TGθ. As an example, the trajectory time T is calculated based on the following equation (9).
T=max{f(Amax),Tmin} ・・・(9)
上記式(9)に示される「Amax」は、最大加速度を表わす。「f()」は、最大加速度Amaxで必要移動距離を移動機構100に移動させた場合にかかる軌道時間を求めるための関数である。「Tmin」は、所定の最小軌道時間である。「max(α,β)」は、数値α,βの内から最大値を取得するための関数である。
T = max {f (Amax), Tmin} (9)
“Amax” shown in the above equation (9) represents the maximum acceleration. “F ()” is a function for calculating the trajectory time required when the necessary moving distance is moved to the moving mechanism 100 at the maximum acceleration Amax. “Tmin” is a predetermined minimum trajectory time. “Max (α, β)” is a function for obtaining the maximum value from the numerical values α and β.
上記式(9)により、軌道時間Tは、最小軌道時間Tmin未満にならないように決められる。最小軌道時間Tminが設けられていなければ、必要移動距離Lが非常に小さい場合に、移動機構100が目標位置にすぐに到達してしまうので、次の撮像タイミングまでの時間を無駄にすることになる。しかしながら、最小軌道時間Tminが設けられることで、必要移動距離Loが非常に小さい場合に、移動機構100は、最大加速度よりも低い加速度で移動することとなり、移動機構100は、滑らかに移動することができる。一例として、最小軌道時間Tminは、平均撮像間隔に対して一定の割合(たとえば、50%)を乗じることで算出される。 According to the above equation (9), the orbit time T is determined so as not to be less than the minimum orbit time Tmin. If the minimum trajectory time Tmin is not provided, the moving mechanism 100 immediately reaches the target position when the required moving distance L is very small, so that the time until the next imaging timing is wasted. Become. However, by providing the minimum trajectory time Tmin, when the required movement distance Lo is extremely small, the moving mechanism 100 moves at an acceleration lower than the maximum acceleration, and the moving mechanism 100 moves smoothly. Can be. As an example, the minimum trajectory time Tmin is calculated by multiplying the average imaging interval by a fixed ratio (for example, 50%).
ステップS26において、目標軌道決定部47は、ステップS23で得られた必要移動距離LXm,LYm,Lθmと、ステップS25で算出された軌道時間Tとに基づいて、目標軌道TGX,TGY,TGθをそれぞれ決定する。 In step S26, the target trajectory determination unit 47 sets the target trajectories TGX, TGY, and TGθ on the basis of the necessary movement distances LXm, LYm, and Lθm obtained in step S23 and the trajectory time T calculated in step S25. decide.
具体的には、目標軌道決定部47は、目標軌道TGXの位置と目標位置SPXとの偏差の時間変化を示す関数LX(t)が以下の式(10)で表されるように、目標軌道TGXを決定する。目標軌道決定部47は、目標軌道TGYの位置と目標位置SPYとの偏差の時間変化を示す関数LY(t)が以下の式(11)で表されるように、目標軌道TGYを決定する。目標軌道決定部47は、目標軌道TGθの位置と目標位置SPθとの偏差の時間変化を示す関数Lθ(t)が以下の式(12)で表されるように、目標軌道TGXを決定する。 Specifically, the target trajectory determining unit 47 sets the target trajectory such that the function LX (t) indicating the time change of the deviation between the position of the target trajectory TGX and the target position SPX is represented by the following equation (10). Determine TGX. The target trajectory determination unit 47 determines the target trajectory TGY such that a function LY (t) indicating the time change of the deviation between the position of the target trajectory TGY and the target position SPY is represented by the following equation (11). The target trajectory determining unit 47 determines the target trajectory TGX such that a function Lθ (t) indicating the time change of the deviation between the position of the target trajectory TGθ and the target position SPθ is represented by the following equation (12).
LX(t)=LXm*[1−(t/T)3{10−15(t/T)+6(t/T)2}]・・・(10)
LY(t)=LYm*[1−(t/T)3{10−15(t/T)+6(t/T)2}]・・・(11)
Lθ(t)=Lθm*[1−(t/T)3{10−15(t/T)+6(t/T)2}]・・・(12)
式(10)〜(12)に示されるように、関数LX(t),LY(t),Lθ(t)は、必要移動距離LXm,LYm,Lθmと時刻tとを少なくとも説明変数とし、目標位置SpX,SPY,SPθとの偏差を目的変数とする多次関数である。
LX (t) = LXm * [1- (t / T) 3 {10-15 (t / T) +6 (t / T) 2 }] (10)
LY (t) = LYm * [1- (t / T) 3 {10-15 (t / T) +6 (t / T) 2 }] (11)
Lθ (t) = Lθm * [1− (t / T) 3 {10−15 (t / T) +6 (t / T) 2 }} (12)
As shown in Expressions (10) to (12), the functions LX (t), LY (t), and Lθ (t) use the necessary movement distances LXm, LYm, Lθm and time t at least as explanatory variables, and This is a multi-dimensional function using deviations from the positions SpX, SPY, and SPθ as objective variables.
なお、上記の式(10)〜(12)に示す関数LX(t),LY(t),Lθ(t)は、5次関数であるが、関数LX(t),LY(t),Lθ(t)は、6次以上の多次関数であってもよい。 The functions LX (t), LY (t) and Lθ (t) shown in the above equations (10) to (12) are quintic functions, but the functions LX (t), LY (t) and Lθ (T) may be a sixth-order or higher order function.
最大加速度Amaxが与えられた場合、軌道時間Tは、下記式(13)〜式(15)で計算される。なお、式(10)において、Lmは、LXm,LYm,Lθmである。 When the maximum acceleration Amax is given, the trajectory time T is calculated by the following equations (13) to (15). In equation (10), Lm is LXm, LYm, Lθm.
f(Amax)=C1*Lm/Amax ・・・(13)
C1=60C2(2C2 2−3C2+1) ・・・(14)
C2=0.5−31/2/6 ・・・(15)
このようにして、目標軌道決定部47は、計測位置PSa,PSbが特定されるたびに、移動機構100が目標位置SPに到達するまでの間の目標軌道TGX,TGY,TGθをそれぞれ示す関数LX(t),LY(t),Lθ(t)を一括して算出する。
f (Amax) = C 1 * Lm / Amax (13)
C 1 = 60C 2 (2C 2 2 -3C 2 +1) ··· (14)
C 2 = 0.5-3 1/2 / 6 ··· (15)
In this manner, every time the measurement positions PSa and PSb are specified, the target trajectory determination unit 47 sets the functions LX indicating the target trajectories TGX, TGY, and TGθ until the moving mechanism 100 reaches the target position SP. (T), LY (t), and Lθ (t) are collectively calculated.
<4−4.変形例4>
ワーク2が一定速度で移動している場合、画像処理装置304の補正部32におけるブレ補正の処理に要する時間が短くなる。そのため、移動制御部41は、カメラ302a,302bの露光期間において生成する移動指令MVX,MVY,MVθを、一定の速度指令とすることが好ましい。
<4-4. Modification 4>
When the work 2 is moving at a constant speed, the time required for the blur correction processing in the correction unit 32 of the image processing device 304 is reduced. Therefore, it is preferable that the movement control unit 41 use the movement commands MVX, MVY, and MVθ generated during the exposure periods of the cameras 302a and 302b as constant speed commands.
<4−5.変形例5>
一般に、並進および回転の両方のブレによるぼけを除去するブレ補正よりも並進のブレによるぼけのみを除去するブレ補正の方が処理に要する時間が短い。そのため、移動制御部41は、カメラ302a,302bの露光期間において回転移動しないように移動機構100を制御することが好ましい。つまり、移動制御部41は、移動機構100のうち回転移動する機構であるθステージ110θとサーボモータ120θとを停止させる。具体的には、移動制御部41は、移動指令MVθが位置指令である場合、露光期間に生成する移動指令MVθを一定値とする。もしくは、移動制御部41は、移動指令MVθが速度指令である場合、露光期間に生成する移動指令MVθを0とする。
<4-5. Modification 5>
In general, the time required for processing is shorter in blur correction that removes only blur due to translational shake than in blur correction that removes blur due to both translation and rotation. Therefore, it is preferable that the movement control unit 41 controls the movement mechanism 100 so as not to rotate during the exposure periods of the cameras 302a and 302b. That is, the movement control unit 41 stops the θ stage 110θ and the servomotor 120θ, which are the rotating mechanisms of the moving mechanism 100. Specifically, when the movement command MVθ is a position command, the movement control unit 41 sets the movement command MVθ generated during the exposure period to a constant value. Alternatively, when the movement command MVθ is a speed command, the movement control unit 41 sets the movement command MVθ generated during the exposure period to 0.
変形例4と変形例5とを組み合わせることにより、移動機構100は、カメラ302a,302bの露光期間において、等速直線移動する。これにより、補正部32によるブレ補正の処理に要する時間をさらに短くすることができる。この場合、露光期間におけるマーク5aの移動軌跡を示す軌跡情報は、露光開始時刻のマーク5aの位置を始点とし、露光終了時刻のマーク5aの位置を終点とする移動ベクトルによって示される。同様に、露光期間におけるマーク5bの移動軌跡を示す軌跡情報は、露光開始時刻のマーク5bの位置を始点とし、露光終了時刻のマーク5bの位置を終点とする移動ベクトルによって示される。そのため、推定部46による軌跡情報の生成に要する時間も短くすることができる。 By combining Modification 4 and Modification 5, the moving mechanism 100 linearly moves at a constant speed during the exposure period of the cameras 302a and 302b. Thereby, the time required for the blur correction processing by the correction unit 32 can be further reduced. In this case, the trajectory information indicating the movement trajectory of the mark 5a during the exposure period is represented by a movement vector whose start point is the position of the mark 5a at the exposure start time and whose end point is the position of the mark 5a at the exposure end time. Similarly, the trajectory information indicating the movement trajectory of the mark 5b during the exposure period is indicated by a movement vector whose start point is the position of the mark 5b at the exposure start time and whose end point is the position of the mark 5b at the exposure end time. Therefore, the time required for the generation of the trajectory information by the estimation unit 46 can also be shortened.
<4−6.その他の変形例>
上記の説明では、移動機構100はXYθテーブルとした。しかしながら、移動機構100は、θXYテーブル、UVWテーブル、XYテーブル、XYZテーブル、多関節ロボットなどであってもよい。
<4-6. Other variations>
In the above description, the moving mechanism 100 is an XYθ table. However, the moving mechanism 100 may be a θXY table, a UVW table, an XY table, an XYZ table, an articulated robot, or the like.
上記の説明では、ワーク2に設けられたマーク5a,5bをワーク2の特徴部分として用いて、ワーク2が位置決めされる。しかしながら、ワーク2の他の部分をワーク2の特徴部分として用いて、ワーク2が位置決めされてもよい。たとえば、ワーク2に設けられたネジまたはネジ穴をワーク2の特徴部分として用いてもよい。もしくは、ワーク2の角部をワーク2の特徴部分として用いてもよい。 In the above description, the work 2 is positioned using the marks 5a and 5b provided on the work 2 as characteristic portions of the work 2. However, the work 2 may be positioned using another part of the work 2 as a characteristic part of the work 2. For example, a screw or a screw hole provided in the work 2 may be used as a characteristic portion of the work 2. Alternatively, a corner of the work 2 may be used as a characteristic portion of the work 2.
上記の説明では、推定部46,46Aは、モーションコントローラ400,400Aにそれぞれ含まれるものとした。しかしながら、推定部46,46Aは、画像処理装置304に含まれていてもよい。この場合、画像処理装置304に含まれる推定部46は、移動機構100からの情報であるエンコーダ値PVmX,PVmY,PVmθを取得して、軌跡情報を生成する。もしくは、画像処理装置304に含まれる推定部46は、移動制御部41によって生成された情報である移動指令MVX,MVY,MVθを取得して、軌跡情報を生成する。もしくは、画像処理装置304に含まれる推定部46Aは、移動制御部41Aによって生成された、目標軌道TGX,TGY,TGθを示す情報(関数LX(t),LY(t),Lθ(t)を取得して、軌跡情報を生成する。 In the above description, the estimation units 46 and 46A are included in the motion controllers 400 and 400A, respectively. However, the estimation units 46 and 46A may be included in the image processing device 304. In this case, the estimation unit 46 included in the image processing device 304 acquires encoder values PVmX, PVmY, and PVmθ, which are information from the moving mechanism 100, and generates trajectory information. Alternatively, the estimation unit 46 included in the image processing device 304 acquires the movement commands MVX, MVY, and MVθ, which are information generated by the movement control unit 41, and generates trajectory information. Alternatively, the estimating unit 46A included in the image processing device 304 uses the information (functions LX (t), LY (t), Lθ (t) indicating the target trajectories TGX, TGY, TGθ generated by the movement control unit 41A. Obtain and generate trajectory information.
サーボモータ120X,120Y,120θは、回転式モータではなく、リニアモータであってもよい。また、エンコーダ130は、リニアエンコーダであってもよい。この場合、推定部46は、モータの駆動量を示す情報として直線軸の位置を示す情報を取得し、取得した情報に基づいて、移動量Δpを推定すればよい。 The servomotors 120X, 120Y, 120θ may be linear motors instead of rotary motors. Further, the encoder 130 may be a linear encoder. In this case, the estimation unit 46 may acquire information indicating the position of the linear axis as information indicating the drive amount of the motor, and estimate the movement amount Δp based on the acquired information.
§5 付記
以上のように、本実施の形態および変形例は以下のような開示を含む。
§5 Supplement As described above, the present embodiment and modifications include the following disclosure.
(構成1)
対象物(2)を移動させる移動機構(100)を制御して、前記対象物(2)の位置決めを行なう制御システム(1,1A)であって、
前記対象物(2)に対する撮像周期ごとの撮像動作によって得られる画像を取得し、取得した画像に基づいて、前記対象物(2)の特徴部分(5a,5b)の位置を特定するための画像処理装置(304)と、
前記画像処理装置(304)によって特定された前記特徴部分(5a,5b)の位置に基づいて、前記対象物(2)の位置が目標位置に近づくように前記移動機構(100)を制御するための移動制御部(41,41A)と、
第1の撮像動作によって得られた画像に基づいて前記画像処理装置(304)によって特定された前記特徴部分の位置と、前記移動機構(100)からの情報および前記移動制御部(41,41A)によって生成される情報の少なくとも一方を含む参照情報とに基づいて、前記第1の撮像動作の次の第2の撮像動作における露光期間中の前記特徴部分(5a,5b)の移動軌跡を推定するための推定部(46,46A)とを備え、
前記画像処理装置(304)は、前記移動軌跡に基づいて、前記第2の撮像動作によって得られた画像のブレ補正を行なう、制御システム(1,1A)。
(Configuration 1)
A control system (1, 1A) for controlling a moving mechanism (100) for moving an object (2) to position the object (2),
An image for acquiring an image obtained by an imaging operation of the object (2) for each imaging cycle, and specifying the position of a characteristic portion (5a, 5b) of the object (2) based on the acquired image A processing device (304);
For controlling the moving mechanism (100) such that the position of the object (2) approaches a target position based on the position of the characteristic portion (5a, 5b) specified by the image processing device (304). A movement control unit (41, 41A);
The position of the characteristic portion specified by the image processing device (304) based on the image obtained by the first imaging operation, information from the moving mechanism (100), and the movement control units (41, 41A) The movement trajectory of the characteristic portion (5a, 5b) during the exposure period in the second imaging operation subsequent to the first imaging operation, based on the reference information including at least one of the information generated by the first and second imaging operations. And an estimating unit (46, 46A) for
The control system (1, 1A), wherein the image processing device (304) performs shake correction of an image obtained by the second imaging operation based on the movement trajectory.
(構成2)
前記移動機構(100)は、前記対象物(2)を移動させるために駆動されるモータ(120X,120Y,120θ)を含み、
前記参照情報は、前記第1の撮像動作からの前記モータ(120X,120Y,120θ)の駆動量を示す情報を含む、構成1に記載の制御システム(1)。
(Configuration 2)
The moving mechanism (100) includes a motor (120X, 120Y, 120θ) driven to move the object (2),
The control system (1) according to Configuration 1, wherein the reference information includes information indicating a driving amount of the motor (120X, 120Y, 120θ) from the first imaging operation.
(構成3)
前記移動制御部(41)は、制御周期ごとに前記移動機構(100)に対する移動指令を生成し、
前記参照情報は、前記第1の撮像動作以降に前記移動制御部(41)によって生成された移動指令を示す情報を含む、構成1に記載の制御システム(1)。
(Configuration 3)
The movement control unit (41) generates a movement command for the movement mechanism (100) for each control cycle,
The control system (1) according to configuration 1, wherein the reference information includes information indicating a movement command generated by the movement control unit (41) after the first imaging operation.
(構成4)
前記移動制御部(41A)は、前記目標位置に対する前記画像処理装置(304)によって特定された位置の偏差に基づいて前記移動機構(100)の目標軌道を決定し、決定した前記目標軌道に従って移動するように前記移動機構(100)を制御し、
前記参照情報は、前記目標軌道を示す情報を含む、構成1に記載の制御システム(1A)。
(Configuration 4)
The movement control unit (41A) determines a target trajectory of the moving mechanism (100) based on a deviation of the position specified by the image processing device (304) from the target position, and moves according to the determined target trajectory. Controlling the moving mechanism (100) so that
The control system (1A) according to Configuration 1, wherein the reference information includes information indicating the target trajectory.
(構成5)
前記移動制御部(41,41A)は、
制御周期ごとに前記移動機構(100)に対する速度指令を生成し、
前記露光期間と重なる前記制御周期において、一定の速度指令を生成する、構成1から4のいずれかに記載の制御システム(1,1A)。
(Configuration 5)
The movement control unit (41, 41A)
Generating a speed command for the moving mechanism (100) for each control cycle;
The control system (1, 1A) according to any one of Configurations 1 to 4, wherein a constant speed command is generated in the control cycle overlapping the exposure period.
(構成6)
前記移動機構(100)は、並進移動する第1機構(110X,110Y,120X,120Y)と、回転移動する第2機構(110θ,120θ)とを含み、
前記移動制御部(41,41A)は、前記露光期間において、前記第2機構(110θ,120θ)を停止させる、構成1から5のいずれかに記載の制御システム(1,1A)。
(Configuration 6)
The moving mechanism (100) includes a first mechanism (110X, 110Y, 120X, 120Y) that translates and a second mechanism (110θ, 120θ) that rotates.
The control system (1, 1A) according to any of Configurations 1 to 5, wherein the movement control unit (41, 41A) stops the second mechanism (110θ, 120θ) during the exposure period.
(構成7)
対象物(2)を移動させる移動機構(100)と、前記対象物(2)に対する撮像周期ごとの撮像動作によって得られる画像を取得し、取得した画像に基づいて、前記対象物の特徴部分(5a,5b)の位置を特定するための画像処理装置(304)とを制御して、前記対象物(2)の位置決めを行なう制御装置であって、
前記画像処理装置(304)によって特定された前記特徴部分(5a,5b)の位置に基づいて、前記対象物(2)の位置が目標位置に近づくように前記移動機構(100)を制御するための移動制御部(41,41A)と、
第1の撮像動作によって得られた画像に基づいて前記画像処理装置(304)によって特定された前記特徴部分の位置と、前記移動機構(100)からの情報および前記移動制御部(41,41A)によって生成される情報の少なくとも一方を含む参照情報とに基づいて、前記第1の撮像動作の次の第2の撮像動作における露光期間中の前記特徴部分(5a,5b)の移動軌跡を推定するための推定部(46,46A)と、
前記移動軌跡に基づいて前記第2の撮像動作によって得られた画像のブレ補正を行なう前記画像処理装置(304)に指示するための指示部(45)とを備える、制御装置。
(Configuration 7)
A moving mechanism (100) for moving the object (2), and an image obtained by an imaging operation of the object (2) in each imaging cycle are acquired, and based on the acquired image, a characteristic portion of the object ( A control device for controlling the position of the object (2) by controlling an image processing device (304) for specifying the position of 5a, 5b);
For controlling the moving mechanism (100) such that the position of the object (2) approaches a target position based on the position of the characteristic portion (5a, 5b) specified by the image processing device (304). A movement control unit (41, 41A);
The position of the characteristic portion specified by the image processing device (304) based on the image obtained by the first imaging operation, information from the moving mechanism (100), and the movement control units (41, 41A) The movement trajectory of the characteristic portion (5a, 5b) during the exposure period in the second imaging operation subsequent to the first imaging operation, based on the reference information including at least one of the information generated by the first and second imaging operations. Estimating units (46, 46A) for
A control device comprising: an instruction unit (45) for instructing the image processing device (304) that performs blur correction of an image obtained by the second imaging operation based on the movement trajectory.
(構成7’)
構成1から6のいずれかの制御システム(1,1A)に用いられる制御装置(400,400A)であって、
前記移動制御部(41,41A)と、
前記推定部(46,46A)と、
前記移動軌跡に基づいて前記第2の撮像動作によって得られた画像のブレ補正を行なう前記画像処理装置(304)に指示するための指示部(45)とを備える、制御装置(400,400A)。
(Configuration 7 ')
A control device (400, 400A) used in the control system (1, 1A) according to any one of the configurations 1 to 6,
Said movement control unit (41, 41A);
The estimation unit (46, 46A);
A control unit (400, 400A) comprising: an instruction unit (45) for instructing the image processing device (304) that performs shake correction of an image obtained by the second imaging operation based on the movement trajectory. .
(構成8)
対象物(2)を移動させる移動機構(100)を制御する制御装置(400,400A)からの指示に応じて、前記対象物(2)に対する撮像周期ごとの撮像動作によって得られる画像を取得し、取得した画像に基づいて、前記対象物の特徴部分(5a,5b)の位置を特定するための画像処理装置(304)であって、
前記制御装置(400,400A)は、前記画像処理装置(304)によって特定された特徴部分(5a,5b)の位置に基づいて、前記対象物(2)の位置が目標位置に近づくように前記移動機構(100)を制御し、
前記画像処理装置(304)は、
第1の撮像動作によって得られた画像に基づいて前記画像処理装置(304)によって特定された前記特徴部分の位置と、前記移動機構(100)からの情報および前記制御装置(400,400A)によって生成される情報の少なくとも一方を含む参照情報とに基づいて、前記第1の撮像動作の次の第2の撮像動作における露光期間中の前記特徴部分(5a,5b)の移動軌跡を推定するための推定部(46,46A)と、
前記移動軌跡に基づいて、前記第2の撮像動作によって得られた画像のブレ補正を行なうための補正部(32)とを備える、画像処理装置(304)。
(Configuration 8)
In accordance with an instruction from a control device (400, 400A) that controls a moving mechanism (100) for moving the object (2), an image obtained by an imaging operation of the object (2) in each imaging cycle is acquired. An image processing device (304) for specifying a position of a characteristic portion (5a, 5b) of the object based on the acquired image,
The control device (400, 400A) controls the position of the object (2) based on the position of the characteristic portion (5a, 5b) specified by the image processing device (304) so as to approach the target position. Controlling the moving mechanism (100),
The image processing device (304) includes:
The position of the characteristic portion specified by the image processing device (304) based on the image obtained by the first imaging operation, information from the moving mechanism (100), and the control device (400, 400A) For estimating a movement locus of the characteristic portion (5a, 5b) during an exposure period in a second imaging operation subsequent to the first imaging operation, based on reference information including at least one of the generated information. Estimation unit (46, 46A),
An image processing device (304), comprising: a correction unit (32) for performing shake correction of an image obtained by the second imaging operation based on the movement trajectory.
(構成8’)
構成1から6のいずれかの制御システム(1,1A)に用いられる画像処理装置(304)であって、
前記推定部(46,46A)と、
前記移動軌跡に基づいて、前記第2の撮像動作によって得られた画像のブレ補正を行なうための補正部(32)とを備える、画像処理装置(304)。
(Configuration 8 ')
An image processing device (304) used in the control system (1, 1A) according to any one of the configurations 1 to 6,
The estimation unit (46, 46A);
An image processing device (304), comprising: a correction unit (32) for performing shake correction of an image obtained by the second imaging operation based on the movement trajectory.
(構成9)
対象物(2)を移動させる移動機構(100)を制御して、前記対象物(2)の位置決めを行なう制御システム(1,1A)をサポートするためのプログラム(440)であって、
前記制御システム(1,1A)は、前記対象物(2)に対する撮像周期ごとの撮像動作によって得られる画像を取得し、取得した画像に基づいて、前記対象物の特徴部分(5a,5b)の位置を特定するための画像処理装置(304)を備え、
コンピュータに、
前記画像処理装置(304)によって特定された特徴部分(5a,5b)の位置に基づいて、前記対象物(2)の位置が目標位置に近づくように前記移動機構(100)を制御するステップと、
第1の撮像動作によって得られた画像に基づいて前記画像処理装置(304)によって特定された前記特徴部分の位置と、前記移動機構(100)からの情報および前記制御するステップによって生成される情報の少なくとも一方を含む参照情報とに基づいて、前記第1の撮像動作の次の第2の撮像動作における露光期間中の前記特徴部分(5a,5b)の移動軌跡を推定するステップと、
前記移動軌跡に基づいて前記第2の撮像動作によって得られた画像のブレ補正を行なう前記画像処理装置(304)に指示するステップとを実行させる、プログラム(440)。
(Configuration 9)
A program (440) for supporting a control system (1, 1A) for controlling a moving mechanism (100) for moving the object (2) and positioning the object (2),
The control system (1, 1A) acquires an image obtained by an imaging operation of the object (2) in each imaging cycle, and, based on the acquired image, a characteristic portion (5a, 5b) of the object. An image processing device (304) for specifying a position,
On the computer,
Controlling the moving mechanism (100) such that the position of the object (2) approaches a target position based on the position of the characteristic portion (5a, 5b) specified by the image processing device (304); ,
The position of the characteristic portion specified by the image processing device (304) based on the image obtained by the first imaging operation, information from the moving mechanism (100), and information generated by the controlling step Estimating a movement locus of the characteristic portion (5a, 5b) during an exposure period in a second imaging operation subsequent to the first imaging operation, based on reference information including at least one of the following:
Instructing the image processing device (304) to perform shake correction of an image obtained by the second imaging operation based on the movement trajectory.
(構成9’)
構成1から6のいずれかの制御システム(1,1A)をサポートするためのプログラムであって、
コンピュータに、
前記画像処理装置(304)によって特定された位置に基づいて、前記対象物(2)の位置が目標位置に近づくように前記移動機構(100)を制御するステップと、
第1の撮像動作によって得られた画像に基づいて前記画像処理装置(304)によって特定された前記特徴部分の位置と、前記移動機構(100)からの情報および前記制御するステップによって生成される情報の少なくとも一方を含む参照情報とに基づいて、前記第1の撮像動作の次の第2の撮像動作における露光期間中の前記特徴部分(5a,5b)の移動軌跡を推定するステップと、
前記移動軌跡に基づいて前記第2の撮像動作によって得られた画像のブレ補正を行なう前記画像処理装置(304)に指示するステップとを実行させる、プログラム。
(Configuration 9 ')
A program for supporting the control system (1, 1A) according to any one of the configurations 1 to 6,
On the computer,
Controlling the moving mechanism (100) based on the position specified by the image processing device (304) such that the position of the object (2) approaches a target position;
The position of the characteristic portion specified by the image processing device (304) based on the image obtained by the first imaging operation, information from the moving mechanism (100), and information generated by the controlling step Estimating a movement locus of the characteristic portion (5a, 5b) during an exposure period in a second imaging operation subsequent to the first imaging operation, based on reference information including at least one of the following:
Instructing the image processing device (304) that performs blur correction of an image obtained by the second imaging operation based on the movement trajectory.
今回開示された各実施の形態は全ての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内での全ての変更が含まれることが意図される。また、実施の形態および各変形例において説明された発明は、可能な限り、単独でも、組合せても、実施することが意図される。 The embodiments disclosed this time should be considered in all respects as illustrative and not restrictive. The scope of the present invention is defined by the terms of the claims, rather than the description above, and is intended to include any modifications within the scope and meaning equivalent to the terms of the claims. Further, it is intended that the inventions described in the embodiments and the respective modified examples are implemented alone or in combination as much as possible.
1,1A 制御システム、2 ワーク、4 露光マスク、5a,5b マーク、32 補正部、34 位置特定部、41,41A 移動制御部、42 位置決定部、43 減算部、44,44A 演算部、45 指示部、46,46A 推定部、47 目標軌道決定部、100 移動機構、110X Xステージ、110Y Yステージ、110θ θステージ、120X,120Y,120θ サーボモータ、130 エンコーダ、200 ドライバユニット、200X,200Y,200θ サーボドライバ、300 視覚センサ、302a,302b カメラ、304 画像処理装置、310,414 プロセッサ、312 RAM、314 表示コントローラ、316 システムコントローラ、318 I/Oコントローラ、320 ハードディスク、322 カメラインターフェイス、322a,322b 画像バッファ、324 入力インターフェイス、326 モーションコントローラインターフェイス、328,428 通信インターフェイス、330,422 メモリカードインターフェイス、332 表示部、334 キーボード、336 メモリカード、350,440 制御プログラム、400,400A モーションコントローラ、412 チップセット、416 不揮発性メモリ、418 主メモリ、420 システムクロック、424 記録媒体、430 内部バスコントローラ、432 DMA制御回路、434 内部バス制御回路、436 バッファメモリ、438 フィールドバスコントローラ。 1, 1A control system, 2 work, 4 exposure mask, 5a, 5b mark, 32 correction unit, 34 position identification unit, 41, 41A movement control unit, 42 position determination unit, 43 subtraction unit, 44, 44A calculation unit, 45 Instruction unit, 46, 46A estimation unit, 47 target trajectory determination unit, 100 moving mechanism, 110XX stage, 110YY stage, 110θ stage, 120X, 120Y, 120θ servomotor, 130 encoder, 200 driver unit, 200X, 200Y, 200θ Servo driver, 300 visual sensor, 302a, 302b camera, 304 image processing device, 310,414 processor, 312 RAM, 314 display controller, 316 system controller, 318 I / O controller, 320 hard disk, 32 Camera interface, 322a, 322b image buffer, 324 input interface, 326 motion controller interface, 328, 428 communication interface, 330, 422 memory card interface, 332 display unit, 334 keyboard, 336 memory card, 350, 440 control program, 400, 400A motion controller, 412 chipset, 416 non-volatile memory, 418 main memory, 420 system clock, 424 recording medium, 430 internal bus controller, 432 DMA control circuit, 434 internal bus control circuit, 436 buffer memory, 438 field bus controller.
Claims (9)
前記対象物に対する撮像周期ごとの撮像動作によって得られる画像を取得し、取得した画像に基づいて、前記対象物の特徴部分の位置を特定するための画像処理装置と、
前記画像処理装置によって特定された前記特徴部分の位置に基づいて、前記対象物の位置が目標位置に近づくように前記移動機構を制御するための移動制御部と、
第1の撮像動作によって得られた画像に基づいて前記画像処理装置によって特定された前記特徴部分の位置と、前記移動機構からの情報および前記移動制御部によって生成される情報の少なくとも一方を含む参照情報とに基づいて、前記第1の撮像動作の次の第2の撮像動作における露光期間中の前記特徴部分の移動軌跡を推定するための推定部とを備え、
前記画像処理装置は、前記移動軌跡に基づいて、前記第2の撮像動作によって得られた画像のブレ補正を行なう、制御システム。 A control system that controls a moving mechanism that moves the object, and positions the object,
An image processing apparatus for acquiring an image obtained by an imaging operation for each imaging cycle for the target object, and identifying a position of a characteristic portion of the target object based on the obtained image,
A movement control unit for controlling the movement mechanism such that the position of the target object approaches a target position, based on the position of the characteristic portion specified by the image processing device,
A reference including a position of the characteristic portion specified by the image processing device based on an image obtained by the first imaging operation, and at least one of information from the moving mechanism and information generated by the movement control unit. And an estimating unit for estimating a movement trajectory of the characteristic portion during an exposure period in a second imaging operation subsequent to the first imaging operation, based on the information.
The control system, wherein the image processing device performs shake correction of an image obtained by the second imaging operation based on the movement trajectory.
前記参照情報は、前記第1の撮像動作からの前記モータの駆動量を示す情報を含む、請求項1に記載の制御システム。 The moving mechanism includes a motor driven to move the object,
The control system according to claim 1, wherein the reference information includes information indicating a drive amount of the motor from the first imaging operation.
前記参照情報は、前記第1の撮像動作以降に前記移動制御部によって生成された移動指令を示す情報を含む、請求項1に記載の制御システム。 The movement control unit generates a movement command for the movement mechanism for each control cycle,
The control system according to claim 1, wherein the reference information includes information indicating a movement command generated by the movement control unit after the first imaging operation.
前記参照情報は、前記目標軌道を示す情報を含む、請求項1に記載の制御システム。 The movement control unit determines a target trajectory of the moving mechanism based on a deviation of the position specified by the image processing device from the target position, and controls the moving mechanism to move according to the determined target trajectory. ,
The control system according to claim 1, wherein the reference information includes information indicating the target trajectory.
制御周期ごとに前記移動機構に対する速度指令を生成し、
前記露光期間と重なる前記制御周期において、一定の速度指令を生成する、請求項1から4のいずれか1項に記載の制御システム。 The movement control unit includes:
Generating a speed command for the moving mechanism for each control cycle;
The control system according to any one of claims 1 to 4, wherein a constant speed command is generated in the control cycle overlapping the exposure period.
前記移動制御部は、前記露光期間において、前記第2機構を停止させる、請求項1から5のいずれか1項に記載の制御システム。 The moving mechanism includes a first mechanism that translates and a second mechanism that rotates.
The control system according to claim 1, wherein the movement control unit stops the second mechanism during the exposure period.
前記画像処理装置によって特定された前記特徴部分の位置に基づいて、前記対象物の位置が目標位置に近づくように前記移動機構を制御するための移動制御部と、
第1の撮像動作によって得られた画像に基づいて前記画像処理装置によって特定された前記特徴部分の位置と、前記移動機構からの情報および前記移動制御部によって生成される情報の少なくとも一方を含む参照情報とに基づいて、前記第1の撮像動作の次の第2の撮像動作における露光期間中の前記特徴部分の移動軌跡を推定するための推定部と、
前記移動軌跡に基づいて前記第2の撮像動作によって得られた画像のブレ補正を行なう前記画像処理装置に指示するための指示部とを備える、制御装置。 A moving mechanism for moving the object, and an image processing apparatus for acquiring an image obtained by an imaging operation of the object for each imaging cycle and identifying a position of a characteristic portion of the object based on the acquired image Controlling the positioning of the object,
A movement control unit for controlling the movement mechanism such that the position of the target object approaches a target position, based on the position of the characteristic portion specified by the image processing device,
A reference including a position of the characteristic portion specified by the image processing device based on an image obtained by the first imaging operation, and at least one of information from the moving mechanism and information generated by the movement control unit. An estimating unit for estimating a movement trajectory of the characteristic portion during an exposure period in a second imaging operation subsequent to the first imaging operation, based on the information;
A control unit for instructing the image processing apparatus to perform shake correction on an image obtained by the second imaging operation based on the movement trajectory.
前記制御装置は、前記画像処理装置によって特定された前記特徴部分の位置に基づいて、前記対象物の位置が目標位置に近づくように前記移動機構を制御し、
前記画像処理装置は、
第1の撮像動作によって得られた画像に基づいて前記画像処理装置によって特定された前記特徴部分の位置と、前記移動機構からの情報および前記制御装置によって生成される情報の少なくとも一方を含む参照情報とに基づいて、前記第1の撮像動作の次の第2の撮像動作における露光期間中の前記特徴部分の移動軌跡を推定するための推定部と、
前記移動軌跡に基づいて、前記第2の撮像動作によって得られた画像のブレ補正を行なうための補正部とを備える、画像処理装置。 In accordance with an instruction from a control device that controls a moving mechanism that moves the object, an image obtained by an imaging operation of the object for each imaging cycle is acquired, and a characteristic portion of the object is acquired based on the acquired image. An image processing device for specifying the position of
The control device controls the moving mechanism such that the position of the target object approaches a target position based on the position of the characteristic portion specified by the image processing device,
The image processing apparatus includes:
Reference information including a position of the characteristic portion specified by the image processing device based on an image obtained by the first imaging operation, and at least one of information from the moving mechanism and information generated by the control device. An estimating unit for estimating a movement locus of the characteristic portion during an exposure period in a second imaging operation subsequent to the first imaging operation, based on
An image processing apparatus, comprising: a correction unit configured to perform shake correction on an image obtained by the second imaging operation based on the movement trajectory.
前記制御システムは、前記対象物に対する撮像周期ごとの撮像動作によって得られる画像を取得し、取得した画像に基づいて、前記対象物の特徴部分の位置を特定するための画像処理装置を備え、
コンピュータに、
前記画像処理装置によって特定された前記特徴部分の位置に基づいて、前記対象物の位置が目標位置に近づくように前記移動機構を制御するステップと、
第1の撮像動作によって得られた画像に基づいて前記画像処理装置によって特定された前記特徴部分の位置と、前記移動機構からの情報および前記制御するステップによって生成される情報の少なくとも一方を含む参照情報とに基づいて、前記第1の撮像動作の次の第2の撮像動作における露光期間中の前記特徴部分の移動軌跡を推定するステップと、
前記移動軌跡に基づいて前記第2の撮像動作によって得られた画像のブレ補正を行なう前記画像処理装置に指示するステップとを実行させる、プログラム。 A program for controlling a moving mechanism for moving an object, and supporting a control system for positioning the object,
The control system acquires an image obtained by an imaging operation for each imaging cycle for the object, and includes an image processing device for specifying the position of a characteristic portion of the object based on the acquired image.
On the computer,
Based on the position of the characteristic portion specified by the image processing apparatus, controlling the moving mechanism so that the position of the target object approaches a target position,
Reference including at least one of the position of the characteristic portion specified by the image processing device based on the image obtained by the first imaging operation, information from the moving mechanism, and information generated by the controlling step. Estimating a movement trajectory of the characteristic portion during an exposure period in a second imaging operation subsequent to the first imaging operation, based on the information;
Instructing the image processing apparatus to perform shake correction on an image obtained by the second imaging operation based on the movement trajectory.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018111387A JP7078895B2 (en) | 2018-06-11 | 2018-06-11 | Control systems, controls, image processing devices and programs |
CN201910384647.1A CN110581945B (en) | 2018-06-11 | 2019-05-09 | Control system, control device, image processing device, and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018111387A JP7078895B2 (en) | 2018-06-11 | 2018-06-11 | Control systems, controls, image processing devices and programs |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019215635A true JP2019215635A (en) | 2019-12-19 |
JP7078895B2 JP7078895B2 (en) | 2022-06-01 |
Family
ID=68810804
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018111387A Active JP7078895B2 (en) | 2018-06-11 | 2018-06-11 | Control systems, controls, image processing devices and programs |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP7078895B2 (en) |
CN (1) | CN110581945B (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021025164A1 (en) | 2019-08-08 | 2021-02-11 | 三菱ケミカル株式会社 | Nonaqueous electrolytic solution and nonaqueous-electrolytic-solution battery |
JP2022034420A (en) * | 2020-08-18 | 2022-03-03 | オムロン株式会社 | Position identification device, control method of position identification device, information processing program, and recording medium |
WO2022049805A1 (en) | 2020-09-04 | 2022-03-10 | オムロン株式会社 | Control device, control system, and program |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7415848B2 (en) * | 2020-08-17 | 2024-01-17 | 横河電機株式会社 | Apparatus, system, method and program |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006129236A (en) * | 2004-10-29 | 2006-05-18 | Sanyo Electric Co Ltd | Ringing eliminating device and computer readable recording medium with ringing elimination program recorded thereon |
JP2014017690A (en) * | 2012-07-10 | 2014-01-30 | Canon Inc | Imaging apparatus |
JP2014203365A (en) * | 2013-04-08 | 2014-10-27 | オムロン株式会社 | Control system and control method |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2377409A (en) * | 2001-07-13 | 2003-01-15 | Dek Int Gmbh | Screen printing alignment and inspection apparatus having at least two workpiece imaging units |
JP4859205B2 (en) * | 2005-02-04 | 2012-01-25 | キヤノン株式会社 | Information processing apparatus, information processing method, and program |
CN107888828B (en) * | 2017-11-22 | 2020-02-21 | 杭州易现先进科技有限公司 | Space positioning method and device, electronic device, and storage medium |
-
2018
- 2018-06-11 JP JP2018111387A patent/JP7078895B2/en active Active
-
2019
- 2019-05-09 CN CN201910384647.1A patent/CN110581945B/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006129236A (en) * | 2004-10-29 | 2006-05-18 | Sanyo Electric Co Ltd | Ringing eliminating device and computer readable recording medium with ringing elimination program recorded thereon |
JP2014017690A (en) * | 2012-07-10 | 2014-01-30 | Canon Inc | Imaging apparatus |
JP2014203365A (en) * | 2013-04-08 | 2014-10-27 | オムロン株式会社 | Control system and control method |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021025164A1 (en) | 2019-08-08 | 2021-02-11 | 三菱ケミカル株式会社 | Nonaqueous electrolytic solution and nonaqueous-electrolytic-solution battery |
JP2022034420A (en) * | 2020-08-18 | 2022-03-03 | オムロン株式会社 | Position identification device, control method of position identification device, information processing program, and recording medium |
JP7052840B2 (en) | 2020-08-18 | 2022-04-12 | オムロン株式会社 | Positioning device, control method of position specifying device, information processing program, and recording medium |
WO2022049805A1 (en) | 2020-09-04 | 2022-03-10 | オムロン株式会社 | Control device, control system, and program |
Also Published As
Publication number | Publication date |
---|---|
JP7078895B2 (en) | 2022-06-01 |
CN110581945B (en) | 2021-02-23 |
CN110581945A (en) | 2019-12-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110581945B (en) | Control system, control device, image processing device, and storage medium | |
JP6167622B2 (en) | Control system and control method | |
JP7078894B2 (en) | Control systems, controls, image processing devices and programs | |
JP7143643B2 (en) | Positioning system, monitoring device, monitoring method and program | |
CN111886556B (en) | Control system, control method, and computer-readable storage medium | |
JP6950631B2 (en) | Positioning system, control methods and programs | |
JP7172151B2 (en) | Control systems, controllers and programs | |
JP6813000B2 (en) | Control systems, control methods and programs | |
CN111902785B (en) | Control system, control method, and computer-readable storage medium | |
JP7059968B2 (en) | Control device and alignment device | |
JP7020262B2 (en) | Control systems, control methods and programs | |
JP6922829B2 (en) | Control systems, control methods, and control programs | |
JP7392590B2 (en) | Robot control system, control program and control method | |
WO2021261024A1 (en) | Robot control system, control program and control method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20201211 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210831 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20211012 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20211207 |
|
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: 20220420 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220503 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7078895 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |