IP Library Granted Patent US 9,156,168
Granted Patent B2
US 9,156,168 · App. 13/861,844 · Granted Oct 13, 2015

Active alignment using continuous motion sweeps and temporal interpolation

Inventor: Andre By (Winchester, MA)
Assignee: Automation Engineering, Inc.
B25J9/1697G02B7/005G02B13/001Y10S901/47
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,156,168
App. No.
13/861,844
Granted
Oct 13, 2015
Kind
B2
Abstract

Methods and apparatus for actively aligning a first optical element, such as a lens, to a second optical element, such as an image sensor, use continuous scans, even absent a synchronization signal from one of the optical elements. During a scan, timed position information about the scanned optical element is collected, and then a relationship between position of the scanned optical element and time is estimated, such as by fitting a curve to a set of position-time pairs. This relationship can then be used to estimate locations of the scanned optical element at times when image data or other alignment quality-indicating data samples are acquired. From this alignment quality versus location data, an optimum alignment position can be determined, and the scanned optical element can then be positioned at the determined alignment position.

Claims (101)

1. A computer-implemented method for actively aligning a first optical element to a second optical element, the method comprising performing, by a processor, operations of:

causing a robot to continuously scan the first optical element along a trajectory from a starting location to an ending location;

while the robot continuously scans the first optical element from the starting location to the ending location:

storing a plurality of time spaced-apart positions of the first optical element; and

acquiring a plurality of time spaced-apart alignment data items, wherein each alignment data item of the plurality of time spaced-apart alignment data items:

results from an optical signal that passed through the first optical element and was received by the second optical element; and

contains data indicative of a degree of optical alignment between the first optical element and the second optical element;

for each position of the plurality of time spaced-apart positions of the first optical element, storing a corresponding acquisition time at which the position was acquired;

estimating a first relationship between (a) position of the first optical element and (b) time, based on the plurality of time spaced-apart positions of the first optical element and the respective acquisition time of each position;

estimating a plurality of positions of the first optical element corresponding to times when respective ones of the time-spaced apart alignment data items were acquired, using times at which the time spaced-apart alignment data items were acquired and the first relationship;

estimating a second relationship between (a) degree of optical alignment between the first optical element and the second optical element and (b) position of the first optical element, based on the plurality of time spaced-apart alignment data items and the plurality of positions of the first optical element;

estimating a desired alignment position, based at least in part on the plurality of time spaced-apart alignment data items and the plurality of time spaced-apart positions of the first optical element, wherein estimating the desired alignment position comprises estimating the desired alignment position based on the second relationship; and

causing the robot to move the first optical element to the desired alignment position.

2. A method according to claim 1 , wherein storing the plurality of time spaced-apart positions of the first optical element comprises, for each alignment data item of the plurality of time spaced-apart alignment data items, storing a corresponding position of the first optical element in timed relation with acquiring image data for the alignment data item.

3. A method according to claim 1 , further comprising:

for each alignment data item of the plurality of time spaced-apart alignment data items, generating a synchronization signal in timed relation with acquisition of the alignment data item;

wherein storing the plurality of time spaced-apart positions of the first optical element comprises, for each position of the plurality of time spaced-apart positions, storing a position of the first optical element in response to the synchronization signal.

4. A method according to claim 3 , further comprising:

estimating a relationship between (a) degree of optical alignment between the first optical element and the second optical element and (b) position of the first optical element, based on the plurality of time spaced-apart alignment data items and the plurality of time spaced-apart positions of the first optical element; wherein:

estimating the desired alignment position comprises estimating the desired alignment position based on the relationship.

5. A method according to claim 3 , wherein:

the second optical element comprises a digital image sensor; and

acquiring the plurality of time spaced-apart alignment data items comprises, for each alignment data item of the plurality of time spaced-apart alignment data items, acquiring image data for a respective image from the digital image sensor and generating the synchronization signal in timed relation with acquiring the image data.

6. A method according to claim 5 , wherein generating the synchronization signal comprises generating the synchronization signal by the digital image sensor.

7. A method according to claim 1 , wherein:

storing a corresponding acquisition time comprises accessing a first clock; and

acquiring the plurality of time spaced-apart alignment data items comprises, for each alignment data item of the plurality of time spaced-apart alignment data items, accessing a second clock, distinct from the first clock; and further comprising:

synchronizing the first clock with the second clock.

8. A method according to claim 1 , wherein:

storing a corresponding acquisition time comprises accessing a first clock; and

acquiring the plurality of time spaced-apart alignment data items comprises, for each alignment data item of the plurality of time spaced-apart alignment data items, accessing a second clock, distinct from the first clock; and further comprising:

calculating an offset between the first clock and the second clock; and

storing the offset.

9. A method according to claim 1 , wherein the first optical element comprises a lens and the second optical element comprises an image sensor, the method further comprising:

positioning a target, such that the lens projects an image of the target on the image sensor;

wherein the data indicative of the degree of optical alignment between the first optical element and the second optical element comprises image data acquired from the image sensor.

10. A method according to claim 9 , wherein estimating the second relationship comprises:

analyzing the image data to calculate a plurality of focus scores; and

basing the degree of optical alignment between the first optical element and the second optical element on the plurality of focus scores.

11. A system for actively aligning a first optical element to a second optical element, the system comprising:

a robot configured to grasp the first optical element;

a motion controller configured to:

cause the robot to continuously scan the first optical element along a trajectory from a starting location to an ending location;

while the robot continuously scans the first optical element from the starting location to the ending location, store a plurality of time spaced-apart positions of the first optical element; and

for each position of the plurality of time spaced-apart positions of the first optical element, store a corresponding first acquisition time at which the position was acquired;

a measurement controller configured, while the robot continuously scans the first optical element from the starting location to the ending location, to:

acquire a plurality of time spaced-apart alignment data items, wherein each alignment data item of the plurality of time spaced-apart alignment data items:

results from an optical signal that passed through the first optical element and was received by the second optical element; and

contains data indicative of a degree of optical alignment between the first optical element and the second optical element;

a curve fitter configured to estimate a first relationship between (a) position of the first optical element and (b) time, based on the plurality of time spaced-apart positions of the first optical element and the respective acquisition time of each position; and

an alignment processor configured to:

estimate a plurality of positions of the first optical element corresponding to times when respective ones of the time-spaced apart alignment data items were acquired, using times at which the time spaced-apart alignment data items were acquired and the first relationship;

estimate a second relationship between (a) degree of optical alignment between the first optical element and the second optical element and (b) position of the first optical element, based on the plurality of time spaced-apart alignment data items and the plurality of positions of the first optical element; and

estimate a desired alignment position, based on the second relationship; and

cause the robot to move the first optical element to the desired alignment position.

12. A system according to claim 11 , wherein the motion controller is configured, for each alignment data item of the plurality of time spaced-apart alignment data items, to store a corresponding position of the first optical element in timed relation with acquiring image data for the alignment data item.

13. A system according to claim 11 , wherein:

the measurement controller is configured, for each alignment data item of the plurality of time spaced-apart alignment data items, to generate a synchronization signal in timed relation with acquisition of the alignment data item; and

the motion controller is configured to store a position of the first optical element in response to the synchronization signal.

14. A system according to claim 13 , wherein the alignment processor is configured to:

estimate a relationship between (a) degree of optical alignment between the first optical element and the second optical element and (b) position of the first optical element, based on the plurality of time spaced-apart alignment data items and the plurality of time spaced-apart positions of the first optical element; and

estimate the desired alignment position based on the relationship.

15. A system according to claim 13 , wherein:

the second optical element comprises a digital image sensor; and

the measurement controller is configured, for each alignment data item of the plurality of time spaced-apart alignment data items, to acquire image data for a respective image from the digital image sensor and generate the synchronization signal in timed relation with acquiring the image data.

16. A system according to claim 13 , wherein the second optical element comprises a digital image sensor configured to generate the synchronization signal.

17. A system according to claim 11 , further comprising:

a first clock coupled to the motion controller; and

a second clock, distinct from the first clock, coupled to the measurement controller;

wherein:

the motion controller is configured to obtain each first acquisition time from the first clock; and

the measurement controller is configured to store a second acquisition time, obtained from the second clock, corresponding to acquisition time of each alignment data item of the plurality of time spaced-apart data items; and further comprising:

a clock synchronizer coupled to the first clock and to the second clock and configured to synchronize the first clock with the second clock.

18. A system according to claim 11 , further comprising:

a first clock coupled to the motion controller; and

a second clock, distinct from the first clock, coupled to the measurement controller;

wherein:

the motion controller is configured to obtain each first acquisition time from the first clock; and

the measurement controller is configured to store a second acquisition time, obtained from the second clock, corresponding to acquisition time of each alignment data item of the plurality of time spaced-apart data items; and further comprising:

a clock synchronizer coupled to the first clock and to the second clock and configured to calculate an offset between the first clock and the second clock and to store the offset.

19. A system according to claim 11 , wherein:

the first optical element comprises a lens;

the second optical element comprises an image sensor; and further comprising:

a target positioned such that the lens projects an image of the target on the image sensor; and wherein:

the data indicative of the degree of optical alignment between the first optical element and the second optical element comprises image data acquired from the image sensor.

20. A system according to claim 11 , wherein the alignment processor is configured, in estimating the second relationship, to:

analyze the image data to calculate a plurality of focus scores; and

base the degree of optical alignment between the first optical element and the second optical element on the plurality of focus scores.

21. A computer program product for actively aligning a first optical element to a second optical element, the computer program product comprising a non-transitory computer-readable medium having computer readable program code stored thereon, the computer readable program code configured to:

cause a robot to continuously scan the first optical element along a trajectory from a starting location to an ending location;

while the robot continuously scans the first optical element from the starting location to the ending location:

store a plurality of time spaced-apart positions of the first optical element; and

acquire a plurality of time spaced-apart alignment data items, wherein each alignment data item of the plurality of time spaced-apart alignment data items:

results from an optical signal that passed through the first optical element and was received by the second optical element; and

contains data indicative of a degree of optical alignment between the first optical element and the second optical element;

for each position of the plurality of time spaced-apart positions of the first optical element, store a corresponding acquisition time at which the position was acquired;

estimate a first relationship between (a) position of the first optical element and (b) time, based on the plurality of time spaced-apart positions of the first optical element and the respective acquisition time of each position;

estimate a plurality of positions of the first optical element corresponding to times when respective ones of the time-spaced apart alignment data items were acquired, using times at which the time spaced-apart alignment data items were acquired and the first relationship;

estimate a second relationship between (a) degree of optical alignment between the first optical element and the second optical element and (b) position of the first optical element, based on the plurality of time spaced-apart alignment data items and the plurality of positions of the first optical element;

estimate a desired alignment position, based at least in part on the plurality of time spaced-apart alignment data items and the plurality of time spaced-apart positions of the first optical element, based on the second relationship; and

cause the robot to move the first optical element to the desired alignment position.

Assignments (6)
CHANGE OF ADDRESS Recorded Mar 8, 2024
From: ASMPT AEI, INC.
To: ASMPT AEI, INC.
Reel/Frame 066761/0720 →
CHANGE OF NAME Recorded Nov 22, 2022
From: AUTOMATION ENGINEERING, INC.
To: ASMPT AEI, INC.
Reel/Frame 061983/0908 →
RELEASE OF SECURITY INTEREST Recorded Dec 16, 2013
From: AUTOMATION ENGINEERING, INC.
To: MASSACHUSETTS GROWTH CAPITAL CORPORATION
Reel/Frame 031791/0180 →
CORRECTIVE ASSIGNMENT TO CORRECT THE 13861884 PREVIOUSLY RECORDED ON REEL 031422 FRAME 0131. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT. Recorded Oct 21, 2013
From: AUTOMATION ENGINEERING, INC.
To: MASSACHUSETTS GROWTH CAPITAL CORPORATION
Reel/Frame 031447/0803 →
SECURITY AGREEMENT Recorded Aug 22, 2013
From: AUTOMATION ENGINEERING, INC.
To: MASSACHUSETTS GROWTH CAPITAL CORPORATION
Reel/Frame 031422/0131 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 16, 2013
From: BY, ANDRE
To: AUTOMATION ENGINEERING, INC.
Reel/Frame 030222/0292 →
Continuity (2)
Provisional Application 61623932 · Apr 13, 2012
Related Publication 20130274923A1 · Oct 17, 2013