This invention relates to systems and methods that select light source channels and control light intensity and direction for precision machine vision inspection using a transient light source.
Methods for operating a machine vision inspection system with a camera and a stage that are movable relative to one another to focus on and inspect selected features of a workpiece on the stage are generally known. Precision machine vision inspection systems may be used to obtain precise dimensional measurements of inspected objects and to inspect various other object characteristics.
Such systems may include a computer, a camera and/or optical system and a precision stage that may be movable in multiple directions to allow the camera to scan the features of a workpiece that is being inspected. One exemplary prior art system, of a type that may be characterized as a general-purpose “off-line” precision vision system, is the commercially available Quick Vision™ series of vision inspection machines and QVPak® software available from Mitutoyo America Corporation (MAC), located in Aurora, Illinois.
Such general-purpose “off-line” precision vision systems often include a programmable illumination system and a lens turret with lenses of various magnifications, for example, to increase versatility of the image systems and provide the ability to rapidly change configuration and imaging parameters for the vision systems to perform a wide variety of inspection tasks. There is a common need to inspect various types of objects or inspection workpieces, or various aspects of a single workpiece, using various combinations of magnifications and the programmable illumination settings.
General purpose precision machine vision inspection systems, such as the Quick Vision™ system, are also generally programmable and operable to provide automated video inspection. Such systems may include features and tools that simplify the programming and operation of such systems, such that operation and programming may be performed reliably by “non-expert” operators. For example, U.S. Pat. No. 6,542,180, which is incorporated herein by reference in its entirety, teaches a vision system that uses automated video inspection. The system performs operations to adjust the lighting used to illuminate a workpiece feature based on a plurality of selected regions of a feature image.
Imaging systems are widely used to inspect workpieces being transported through a manufacturing process. Equipment such as machine vision inspection systems often capture images of the workpieces using a camera, for example, and process captured images to verify various workpiece dimensions by identifying edges of relevant features in the images.
The precise location and repeatability of where an edge is detected within an image depends on the lighting of the workpiece during image capture. Edge artifacts or edge-shifting may be created by lighting-specific shadows cast due to sub-optimal direction of the illumination of the workpiece. Over- or under-exposure may reduce the ability to accurately detect an edge, and decrease measurement repeatability. To increase productivity, workpieces may be kept in motion, even during image capture. This places an additional burden on illumination systems to minimize blurring caused by the motion. Such factors frequently limit the accuracy with which the edge of a feature may be located within an image and/or the velocity that may be tolerated during image capture. Thus, improvements in workpiece illumination control technology would be very desirable.
Various exemplary embodiments provide systems and methods for strobe illumination for imaging a workpiece. Exemplary systems may include an illumination source, an image acquisition device and a control system. The illumination source may emit light of one or more visible or invisible wavelengths of radiation that are suitable for imaging the workpiece, as a transient flash or pulse to the workpiece. The transient flash or pulse may occur in response to a lamp trigger. The illumination source may emit the light at an illumination intensity that rises from a begin threshold to a peak and afterwards diminishes to an end threshold during a flash duration. The image acquisition device may capture the light associated with the workpiece for an exposure duration started in response to an exposure trigger. The control system may control the illumination source and the image acquisition device to provide a desired overlap between the exposure duration and the flash duration. The beginning of the exposure duration may precede the lamp trigger by a lamp lag period. The lamp trigger may be set to synchronize or adjust a timing relationship between an end of the exposure duration and the illumination intensity profile of the flash.
In various exemplary embodiments, exposure triggers may correspond to predetermined positions of the workpiece relative to a coordinate space used by the machine vision inspection system.
In various exemplary embodiments, such a system may further include a spatial light modulator (SLM) that forms an array to control and/or distribute the light from one or more illumination sources. The array may include elements that selectively either block, partially transmit, or transmit the light toward respective lighting channels, such as respective optical fiber bundles. Each respective lighting channel may direct the light along a path to project commanded illumination from a respective position and/or angle of incidence relative to the workpiece.
Various details are described below with reference to the following figures, wherein:
The following detailed description refers to multi-channel strobe illumination for magnified image acquisition. The strobe illumination source may refer to a Xenon flashlamp, for example. However, the principles described herein may be equally applied to any known or later-developed transient illumination sources, beyond the examples specifically discussed herein.
Exemplary systems and methods for machine vision inspection, as provided herein, may be used in conjunction with systems and methods disclosed in U.S. patent application Ser. No. 10/719,210 (Attorney Docket 116523) filed on Nov. 24, 2003 directed to automatic focusing, and/or U.S. patent application Ser. No. 10/901,355 (Attorney Docket 119793) filed on Jul. 29, 2004 directed to strobe illumination, and/or U.S. patent application Ser. No. 10/435,625 filed on May 7, 2003 directed to improved machine vision inspection throughput, each of which is incorporated herein by reference in its entirety.
Various methods and GUIs usable for determining an optimum light setting to be used with rapid auto focus systems that determine an estimated best focus position and associated light adjusting systems are disclosed in U.S. Pat. Nos. 6,542,180 and 6,239,554, each incorporated herein by reference in its entirety. In addition, techniques for measuring surface contours are disclosed in U.S. Pat. No. 6,690,474, also incorporated herein by reference in its entirety.
The control system portion 120 may be firther operably arranged to exchange data and control signals with at least one of a monitor 136a, a printer 136b, a joystick 138a, a keyboard 138b, and a mouse 138c. The vision measuring machine 200 may include a moveable workpiece stage 210 and an optical imaging system 205, which may include a zoom lens or a number of interchangeable lenses. The zoom lens or interchangeable lenses may generally provide various magnifications for images produced by the optical imaging system 205.
The joystick 138a maybe used to control the movement of the movable workpiece stage 210 in both X- and Y-axes horizontal directions, which may be generally parallel to the focal planes and perpendicular to the Z-axis movement direction of the optical imaging system 34. Frequently, Z-axis movement may be controlled by a rotary deflection component of a handle or knob of the joystick 138a. The joystick 138a may be provided in a form other than that shown, such as any visual representation or widget on the monitor 136a that may be intended to function as a “virtual motion control device” of the machine vision inspection system 10 and is controllable through any computer input device, such as the mouse 138c or other analogous devices.
The control system portion 120 may include a controller 125 that may be in communication with, or connected to, an input/output interface 130, a memory 140, a workpiece program generator and executor 170, a computer-aided design (CAD) file feature extractor 180 and a power supply portion 190. The control system portion 120 may also be arranged to exchange data and control signals with display devices 136 and input devices 138, for example, through the input/output interface 130.
The input/output interface 130 may comprise an imaging control interface 131, a motion control interface 132, a lighting control interface 133, and a lens control interface 134. The motion control interface 132 may include a position portion 132a and a speed and acceleration portion 132b. The lighting control interface 133 may include lighting channel exposure and control portion 135.
The various elements of the control system portion 120 may generally encompass hard-wired circuits, software circuits, subroutines, objects, operations, application programming interfaces, managers, applications, or any other known or later-developed hardware or software structure. The display devices 136 may include, for example, the monitor 136a and the printer 136b (
The light generation system 300 may include one or more light generator 310 and a spatial light modulator (SLM) 350 to control the distribution of light from the light generator 310, to a plurality of light channels, as described further below. The light generator 310 and the SLM 350 may be arranged to exchange data and control signals with the light channel exposure and control portion 135, for example, by respective power and signal lines 311, 351. At least one of the lamps (not shown) of the light generator 310 maybe used in a strobe illumination mode of operation to provide a combination of a very fast light generator response time (in the As or ns range) and suitable optical power levels. In various exemplary embodiments, the light generator 310 may include a high intensity Xenon (Xe) flashlamp. However, in general, any light generator that emits a wavelength within a sensing range of the camera 260 may be used. Various features of the light generation system 300 are described further below.
The vision measuring machine 200 may include an optical assembly 205, light sources, including stage light source 220, coaxial light source 230, and programmable ring light (PRL) source 240. The workpiece stage 210 may include a central transparent portion 212 through which light from the stage light source 220 passes. The stage 210 may be controllably movable along X- and Y-axes that lie in a plane substantially parallel to the surface of the stage 210 where a workpiece or target 20 may be positioned.
The stage light source 220 may receive light through a light cable 221 from a respective channel of the SLM 350 to transmit light 222 through the transparent portion 212. The components that provide the light 222 may be regarded as a first light channel of the machine vision inspection system 10′. The coaxial light source 230 may receive light through a light cable 231 from a respective channel of the SLM 350 to transmit light 232 to a beamsplitter that provides a coaxial mirror 233 that directs the transmitted light 232 through the objective lens 250. The components that provide the light 232 may be regarded as a second light channel of the machine vision inspection system 10′. The programmable ring light (PRL) source 240 may form an annular ring above and around the workpiece 20 to transmit light 242 to the workpiece 20 at controllable angles. An exemplary configuration for the PRL source 240 may include four ring-light sources 240a through 240d, arranged in respective quadrants around the ring-light. The four sources 240a through 240d may receive light through respective light cables 241a through 241d from respective channels of the SLM. 350. The various light cables may comprise optical fiber bundles, or the like. The PRL source 240 may be formed as a combination of individually controllable sources. The components that provide respective portions of the light 242 may be regarded as four additional light channels of the machine vision inspection system 10′.
The workpiece 20 may be disposed on the stage 210 at a known or learned position. By detecting macroscopic positions of the stage 210 and/or the workpiece 20, the control system portion 120 may accurately determine where to capture workpiece images to perform inspection of various workpiece features.
The memory 140 may comprise an image file memory portion 141, a workpiece program memory portion 142, and a video tool portion 143. The video tool portion 143 may comprise a region of interest generator 143x, and various respective video tools 143a through 143m, which may include respective GUI interfaces, image processing operations, and the like, which assist a user in performing and/or programming various inspection operations. The region of interest generator 143x provides operations that may assist the user in defining desired regions of interest to be analyzed or operated upon be the various video tools 143a-143m, as described in the '180 patent, for example.
The memory 140 may store data and/or “tools” usable to operate the machine vision inspection system 10 to capture or acquire an image of the workpiece 20 with desired image characteristics. The memory 140 may further store data and/or video tools usable to operate the machine vision inspection system 10 to perform various inspection and measurement operations on the acquired images, either manually or automatically, and to output the results, for example, through the input/output interface 130 through data and/or control busses and/or the controller 125. The memory 140 may also contain data defining a GUI operable through the input/output interface 130 by way of data and/or control busses and/or the controller 125.
The optical assembly 205 may include, for example, a camera or image acquisition device 260, an interchangeable objective lens 250, a turret lens assembly 280, and the coaxial light source 230. The objective lens 250 and the camera 260 may be aligned along a camera axis. The optical assembly 205 may be controllably movable along the Z-axis that is generally orthogonal to the X- and Y-axes, for example, by using a controllable motor 294. Each of the X-, Y- and Z-axes of the machine vision inspection system 10 may be instrumented with respective X-, Y- and Z-axis position encoders (not shown) that provide spatial position information to the control system portion 120, for example, over suitable signal and/or control lines (not shown). The camera 260 may include a charge-couple diode (CCD) array, or a CMOS array, or any other suitable detector array, to provide an image based on the light received from the workpiece 20.
The turret lens assembly 280 may include two or more respective lenses 286, 288 that may be rotated around a rotation axis 284 to be respectively positioned in the optical path between the camera 260 and the objective lens 250 to provide a respective image magnification in combination with the objection lens 250. The control system portion 120 may rotate the turret lens assembly 280 to provide a desired image magnification. The input/output interface 130 may exchange data and control signals with the camera 260, the turret lens assembly 280 and the motor 294, for example, by power and signal lines or busses 262, 281, 296. Respective signal and/or control lines (not shown) of the respective X-, Y- and Z-axes position encoders (not shown) may also be in communication with the input/output interface 130. In addition to carrying image data, the signal line 262 may carry various signals from the controller 125 that set an image acquisition pixel range for the camera 260, initiate an image acquisition camera operation sequence, and/or similar operations.
The optical assembly 205 of the machine vision inspection system 10 may include, in addition to the previously discussed components, other lenses, and/or other optical elements, such as apertures, beam-splitters and other analogous devices, such as may be needed for providing desirable machine vision inspection system features.
The workpiece 20 to be imaged and inspected using the machine vision inspection system 10 may be placed on the stage 210. One or more of the light sources 220, 230, 240 may emit the respective light 222, 232, 242, that may illuminate the workpiece 20. Light may be reflected from or transmitted through the workpiece 20 as workpiece light 255, which may pass through the interchangeable objective lens 250 and one of the lenses 286, 288 of the turret lens assembly 280 to be received by the camera 260. The image of the workpiece 20, captured by the camera 260, may be output, for example, through the signal line 262 to the control system portion 120.
A distance between the stage 210 and the optical assembly 205 may be adjusted to change the focus of the image of the workpiece 20 captured by the camera 260. For example, the optical assembly 205 may be movable in the vertical (Z-axis) direction perpendicular to the stage 32, for example, using the controllable motor 294 that may drive an actuator, a connecting cable, or other analogous devices, to move the optical assembly 205 along the Z-axis. The term Z-axis, as used herein, refers to the axis for focusing the image obtained by the optical assembly 205. The controllable motor 294, when used, may be in communication with the control system portion 120, for example, through the signal line 296.
The control system portion 120 may be usable to determine image acquisition settings or parameters and/or acquire an image of the workpiece 20 with desired image characteristics in a region of interest that includes a workpiece feature to be inspected by workpiece program instructions. Such workpiece imaging instructions may be encoded by the workpiece part programming generator and executor 170 and transmitted to other components through data and/or control busses and/or application programming interfaces 195. The display devices 136 and input devices 138 may be used to view, create and/or modify part programs, to view the images captured by the camera 260, and/or to view and/or modify various GUI features for monitoring and/or controlling the machine vision inspection system 10′. The physical movements may be controlled by the motion control interface 132.
To achieve control of the physical movements of the camera 260, the motion control interface 132 may receive position information from the X-, Y- and Z-axis position encoders and may transmit position altering control signals via data and/or control busses and/or application programming interfaces 195. In general, such. instructions may cause the machine vision inspection system 10′ to manipulate the stage 210 and/or the camera 260 such that a particular portion of the workpiece 20 may be within the field of view of the camera 260 and may provide a desired magnification, a desired focus state and an appropriate illumination. This process may be repeated for each of multiple images in a set of images that are to be captured for inspecting the workpiece 20.
The light generator 310 may emit light 314 to illuminate an illumination area 315 on the SLM 350. The SLM 350 may generally transmit, partially transmit, or block light. The SLM 350 may include a plurality of respective controllable apertures within the illumination area 315. The respective apertures may generally provide illumination control for the respective light channels of the machine vision inspection system by transmitting, partially transmitting, or blocking the light 314 to each of the respective light channels. In the example shown in
The SLM 350 may include an arrangement of shutters that provide the respective apertures. The shutters may be of any now-known or later-developed type that can provide controllable light transmitting and light blocking fimctions in a desired pattern. In various embodiments, it may be advantageous if the shutter may also be used to partially-transmit light. For example, such that the SLM may be used to selectively transmit, attenuate and/or block light from the light generator 310. One example of such an SLM may be a micro-display graphics array from CRL-Opto in Dunfermline, Scotland, United Kingdom, which includes an LCD pixel array that may generally be controlled by conventional video signals, if desired, and may be used to display an electronically generated 8-bit gray-scale pattern that may transmit, partially-transmit, or block the light 314 through any given pixel of the pattern, depending on its gray-scale value. In such a case, the various respective apertures may be implemented as features of the pattern, and the pattern may be controlled at conventional video rates. Alternatively, a custom LCD including a custom pattern of desired apertures may be used in various embodiments. It should be appreciated that the SLM 350 allows one light generator 310 to provide independently controllable lighting to a plurality of light channels, while also allowing the light from a plurality of light channels to be perfectly synchronized, for example as one light generator 310 is strobed during an image acquisition. The use of one light generator 310 also allows reduced cost and reduced size, relative to the use of an individual light generator for each light channel, for example.
Alternatively, the SLM 350 may include an arrangement of any now-known or later-developed type of controllable reflective shutters that can provide controllable light deflection in a desired pattern. In such a case, the light generator 310 may be arranged such that the light 314 will not reach the various light channels unless the controllable reflective shutters or pixels “transmit” the light by reflecting and/or deflecting light at a specific angle toward the various light channels. For example, in contrast to
As previously outlined, it may be advantageous if at least one of the lamps of the light generator 310 may be used in a strobe illumination mode of operation to provide a combination of a very fast light generator response time (in the ls or ns range) at suitable optical power levels. Such illumination is particularly advantageous for allowing imaging of workpieces while continuing to move the stage 210 (
In various exemplary embodiments, the strobe light generator may include a high intensity Xenon (Xe) flashlamp, such as model CX-1500 Xe flashlamp of the CX-Strobeg series from PerkinElmer® Optoelectronics of Frémont, Calif. The CX-1500 Xe flashlamp may illuminate across an electromagnetic spectrum for wavelengths between 250 nm and more than 1100 nm. In various embodiments, it may be desirable to filter the light from the flashlamp, to reduce heating and/or chromatic aberrations. For example, the filter may pass the visible wavelength range between 390 nm (violet) and 750 nm (red) to the light channels. However, in various embodiments, other wavelengths ranges may be desired. The CX-1500 Xe flashlamp may cycle at a repeat rate of between 16 Hz and 35 Hz, with a pulse duration of between 8 μs and 10 μs. The CX-1500 Xe flashlamp may produce a radiometric output of 256 mJ and a photometric light output of 205 lumen-sec at 600 VDC that may be directed into a 0.9″ (23 mm) diameter fiber optic guide.
It should be appreciated that a general purpose machine vision systems may image a wide variety of workpieces, some of which may have surfaces with low reflectivity. Furthermore, magnified images may be desired. Furthermore, fast exposures, enabling imaging of moving workpieces may be desired. All of these factors tend to reduce the amount of light accumulated during an image exposure, as discussed further below. Thus, a very high intensity flashlamp may be advantageous for providing a very versatile machine vision inspection system.
The timing and synchronization portion 135a may provide operations that send and receive control signals that synchronize the SLM 350, the light generator 310, the camera 260 and positioning of the machine vision inspection system 10′. The SLM control portion 135b may provide control for the various light channels by controlling the on-off timing, contrast, and aperture pattern, if applicable, of the SLM 350. The light generator control portion 135c may provide control for the power levels, the trigger signals, and on-off timing (if applicable) of the one or more lamps or LED's, or the like, of the light generator 310. The light generator control portion 135c may also provide for light path control for auxiliary light sources (if applicable), as outlined further below.
For the example shown in
The control window 420 may include panels with the “slider” controls outlined above, along with corresponding numerical settings, along with other slider controls, numerical displays and radio buttons to adjust and display selected parameters which may control the light intensities of the various lighting channels and their representations in the SLM image field 410. The PRL panel may include a “gang” PRL radio button 425 that indicates whether the PRL sources 240a through 240d are ganged together, i.e., adjusted to the same setting, rather than separately controlled.
The slider control scales may denote the range (from none to full) of the intensity to be transmitted by the corresponding aperture. The slider control pointer and the numerical display may indicate the selected value to which the respective light source intensity may have been set. The numerical display may denote a digital quantity across a binary integer grayscale range of 28 from full illumination at 255 to no illumination at 0. In the example illustrated, the stage control panel 531 shows, for example, a low-level value of 71, the coaxial control panel 521 shows, for example, a high-level value of 234, while all the PRL control panels 541a-d show, for example, a mid-level value of 130. The PRL radio button 425 shows, for example, that the PRL sources are ganged together in this example.
A background radio button 426 may indicate a selection of the display background, being either white or black, shown in the example as being black (double cross-hatched.) In a set-up mode of operation, the respective slider controls of “Shift” scales 427V and 427H may be used to adjust the position of the aperture pattern shown in the SLM image field 410 over a limited range along the vertical (V) and horizontal (H) directions, respectively. The actual location of the aperture pattern of the SLM 350 may be controlled in a corresponding manner. The alignment of the actual aperture pattern of the SLM 350 relative to the physical layout of the input ends of the light cables 221, 231, and 241a-241d (
In either case, a light 314 may pass through the collimator lens 312, and be directed as collimated, or approximately collimated, light toward the SLM 350. In the example shown in
As may be observed from the bar chart, increases in magnification reduce the amount of gathered light and the photographic exposure, and generally would demand greater quantities of light to provide sufficient photographic exposure. Also, darker materials, such as the floppy disk may require far greater quantities of light than brighter materials, such as the white connector, or specularly reflective materials, such as the mirrors. This difference in the amount of exposure light received for various materials and magnification demonstrates that the light levels that may be required for imaging and inspection of various magnified surfaces in a general purpose machine vision inspection system may vary widely. In fact, if the saturation values shown for the low-magnification imaging of various materials are to be avoided, and if the low illumination values shown for the higher-magnification imaging of various materials are to be brought up to acceptable imaging levels, the illumination intensity may be required to be adjustable over a range of many orders of magnitude. Thus, there is a need for an illumination system that provides an extraordinarily wide dynamic range and precise control of available illumination.
To increase throughput, imaging the workpiece 20 disposed on the stage 210 may be performed while the stage 210 remains in motion. Under selected conditions of image magnification and stage speed, a strobe light flash of high intensity and short duration may be required to sufficiently illuminate the workpiece 20 in a short enough exposure time to avoid image blur during workpiece motion. To achieve a desirable illumination dynamic range with short illumination and/or exposure durations, an extremely bright strobe lamp, such as a Xe lamp, may be advantageous. For many types of lamps (which may also include LED's, or lasers, or the like, as the term “lamp” is used herein), after being triggered the strobe flash “profile” may temporally change in light intensity beginning with a gradual initial rise, followed by a rapid increase, a leveling off, a rapid reduction and a more gradual decay. Providing a reliable and consistent illumination exposure over a wide dynamic range using such a flash profile would be desirable.
The chart 700 includes, for example, five timelines. The first timeline 710 represents an image acquisition trigger signal 715 beginning at a position trigger time Tpta based on positional X-, Y- and Z-axis coordinates of the stage 210 (
The second timeline 720 represents a camera integration duration 725, that may have a programmable duration (Tei-Tsi) as short as tens of microseconds, and as long as several milliseconds. The controlled duration may be controlled based on a high-speed clock, such that it is relatively consistent. The camera integration duration 725 may start at integration begin time Tsi and end at integration end time Tei. In some implementations, the integration begin time Tsi may occur a discrete latency period (Tsi-Tpta) after the position trigger time Tpta has been used to initiate a camera integration period. However, the latency period may be relatively consistent.
The third timeline 730 represents the flash initiation signal 735 beginning at a pulse trigger time Tpt to initiate the strobe flash. In some implementations, the pulse trigger time Tpt may be based by the same high-speed clock that is used to determine the camera integration duration 725. Therefore, a pulse trigger delay period (Tpt-Tsi) may be programmable, based on the high-speed clock, and relatively consistent. The beginning of the pulse trigger time Tpt may initiate the strobe pulse flash intensity profile indicated by the fourth timeline 740. The flash intensity may exhibit a transient profile, described further below, that rises to a peak 745 before diminishing.
The fifth timeline 750 represents an exposure-related coordinate position latch signal 755 beginning at latch time Ttxyz that may coincide with an effective or nominal exposure time. The X-, Y- and Z- coordinates for the stage 210 or the workpiece 20 at the latch time Ttxyz may be associated with the acquired image and may be stored in memory 140. Descriptions of the timeline events, listed in order of occurrence during an image acquisition cycle, are summarized in Table 1 below.
The strobe pulse flash intensity profile begins at the pulse trigger Tpt with an initial gradual rise until effective start of the flash at time Tsp. After a rapid rise to a peak value 745, the flash may then diminish rapidly, to an effective end point of the flash at a time Tep, and then continue to decay, providing little additional illumination energy, as shown in
As previously indicated, with a Xe lamp, for example, the ability to vary the flash duration (or profile) may be limited, and the flash duration may be inherently less than a typical minimum camera integration period. Therefore, to reduce the effective exposure illumination provided by a strobe flash, by orders of magnitude, with consistent control, it may be desirable that the camera exposure end at a predictable and consistent time before the effective end time Tep of the flash. As previously indicated, the pulse trigger delay period (Tpt-Tsi) may be programmable, based on the high-speed clock, and relatively consistent. Similarly, the programmable camera integration duration (Tei-Tsi) may be programmable, based on the same high-speed clock, and relatively consistent. Furthermore, the latency period between the pulse trigger time Tpt and the effective pulse start time Tsp may be relatively consistent. Therefore, for a given flash time period (Tep-Tsp) and associated profile, the effective exposure illumination may be controlled by selecting and/or programming the programmable camera integration duration (Tei-Tsi), and the pulse trigger delay period (Tpt-Tsi) such that camera integration end time Tei ends at a predictable time during the flash profile, and truncates and determines the effective image exposure illumination. That is, to control the effective image illumination over a wide dynamic range, the start of the effective image exposure illumination may begin with the flash, a short time following the start of the camera integration period, and may end with the end of the camera integration period, during the strobe flash profile. Of course, all of the above latency times may calibrated or determined for particular machines, lamps, voltage levels, etc., by design and/or experiment, and the results calibrated or stored such that a combination of timing, operating voltages, and the like, that provide a desired or calibrated illumination level may be readily determined.
The light generation system 300 may operate in conjunction with the SLM control portion 135b, the timing and synchronization portion 135a (
The camera 260 may receive signals from the imaging control interface 131, and may transmit image data via the imaging control interface 131 via a video input 820. The camera 260 may also receive and transmit signals between a serial communicator 830. A digital monitor 840 and/or an analog monitor 850 may display information related to the SLM 350 (for example, as one means to implement the SLM setup and control GUI 400, described with reference to
The timing and synchronization portion 135a may receive a position trigger output signal (for example, see 715,
The timing and synchronization portion 135a may supply a position latch trigger signal (for example, see 755,
Examples of selected components are described herein. The serial communicator 830 may represent an interface control tool. The control system portion 120 may include a personal computer backplane with the SLM control portion 135b provided by a Matrox dual video interface (DVI) daughter board and the imaging control interface 131 including a Corona II frame-grabber, both available from Matrox Electronic Systems Ltd, St-Régis Dorval (Quebec), Canada. The vision measuring machine 200 may use Quick Vision™ controls for controlling the various light sources. The SLM interface portion 135b′ and the SLM 350 may be provided by a micro-display graphics array and associated electronics from CRL-Opto in Dunfermline, Scotland, United Kingdom. The motion control interface 132 may include a motion controller, for example one of the DMC-XXXX series of motion control cards commercially available from Galil Motion Control, Rocklin, Calif., or a motion control card such as that supplied as part of the previously described Quick Vision™ systems.
The light 314 may be channeled, for example, through a fiber bundle light conduit 910 to then pass, as collimated light 314′, through the aperture 317, the filter 318 and the SLM 350, which are located in a second portion of the light generation system 300′. The second portion of the light generation system 300′ may include a hinged mirror 920, similar to the hinged mirror 313. In a first position 921a, the light 314′ may shine directly into the previously described optical cable arrangement 319, to provide all of the previously described illumination functions.
Alternatively, the SLM 350 may be a controllable element that may include, or be configurable or programmable to form, a structured light pattern, in addition to the exemplary aperture patterns described above. For example, the structured light pattern may include a regular pattern of light (light transmitting) and dark (light blocking) stripes at a desired pitch, and may be formed using the previously described LCD pixel array. In such a case, the collimated light 314′ that passes through the SLM 350 will may provide a field of parallel stripes of light. In a second position 921b, the hinged mirror may deflect the parallel stripes of light to pass through focusing and/or magnifying, and/or collimating lenses 930 before being emitted to provide a structured light source 945 that may be used to illuminate the workpiece 20 (
It should be appreciated that in embodiments where the SLM 350 may be implemented such that the various respective channel apertures may be partially transmitting, for example, when the previously described LCD pixel array is used, the SLM 350 may advantageously be used to increase the dynamic range of the effective image exposure illumination. That is, in addition to the dynamic range control provided by the previously described measures of controlling the camera integration period and the strobe flash timing, gray-level control of an LCD pixel array, or a custom LCD element, or the like, may be used in parallel with any of the foregoing techniques, to provide additional illumination dynamic range.
Table 2 shows various factors which may be used in various combinations to provide a desired illumination level, including the use of a partially-transmitting type of SLM. Row 1 shows that an LCD pixel array may provide a variable illumination attenuation that may be controlled with an 8-bit gray-level command. However, in practice, the actual level of variation observed in the transmitted light is limited to approximately 150:1. Row 2 shows that an LCD pixel array may provide a variable “brightness” attenuation that affects all pixels at once, and may provide an actual level of variation observed in the transmitted light that is approximately 1.2:1. Row 3 shows that a Xe strobe lamp may provide a variable “brightness” depending on its operating voltage level, and may provide an actual level of variation observed in the provided and transmitted light that is approximately 17:1. Row 4 shows that a Xe strobe lamp generally provides an effective exposure time that is shorter than a typical minimum camera integration period, therefore, for strobe exposures, the overall duration of the camera exposure period is not used to affect the exposure. However, as previously indicated, the pulse duration may be set so as to stop the image exposure to effectively truncate part of the flash profile. Row 5 shows that the pulse trigger delay (for example, see [Tpt-Tsi],
The abscissa in
A particular total exposure illumination energy may be defined as corresponding to a particular continuous illumination level, when using the reference or standard exposure time. This energy may be divided by a particular strobe light average power level that may directly determine the corresponding required strobe duration time to a first approximation. Each of the exemplary strobe light power curves 1010, 1020, 1030 may reflect a respective strobe lamp power setting consistent for each point along the respective curves. Thus, operation according to any point along the higher power curve 1030 may allow a shorter strobe duration time than operation according to corresponding (vertically aligned) points along either of the lower power curves 1020, 1010. When using the light generation system 300 or 300′ and the various systems and methods outlined above, higher strobe light power curves may correspond to higher strobe lamp operating voltages and/or controlling the pixels of an LCD pixel array used for the SLM 350 to be fully transmitting. Lower strobe light power curves may correspond to lower strobe lamp operating voltages and/or controlling the pixels of an LCD pixel array used for the SLM 350 to be only partially transmitting.
In order to provide the shortest possible strobe duration and produce images having the least motion-related blur and the smallest possible uncertainty in the elevation distance, there are advantages to operating at a point toward the lower left end of any strobe light power curve.
Each strobe light source may inherently have a maximum allowable power level and, in the absence of other camera response considerations, and other analogous devices, this factor may determine the fastest allowed strobe duration. The higher power curve 1030 generally represents such a maximum power level. For a maximum or selected power level and a desired operating point, for example, as indicated by the line 1040, the corresponding strobe duration period may then be determined.
The strobe duration period may provide the required matching total exposure illumination energy. The lines 1050, 1060, generally represent alternative settings for providing a desired illumination level by using respective strobe duration times corresponding to respective strobe light power levels. Also, for a desired strobe duration time defined along the ordinate, the corresponding required strobe light power may be determined at the intersection of the abscissa and ordinate values in the plot 1000.
An operator may input control parameters such as workpiece positions, light source intensity mixtures, etc. to inspect one or more workpieces manually, semi-automatically, or automatically. An example of types of parameters that may be entered is shown in Table 3 below. Parameters such as workpiece image acquisition positions, stage velocity, magnification, light intensities, etc., may be provided.
The parameters in Table 3 are only examples, and in particular situations, more, or fewer, or alternate parameters may be necessary for compatibility with different equipment designs.
The control parameters may be determined by an operator who places a sample workpiece 20 (
The control system portion 120 may process the control parameters established by the operator that may be obtained during the static imaging conditions of a training mode and convert them to appropriate control commands for dynamic image capture during the continuous motion conditions of an automatic inspection mode. For example, successive image acquisition locations and the associated total illumination energy to be provided by each light source may be established by the operator during a training mode and the measurement path, velocities, SLM settings corresponding to the various light sources, effective strobe duration period corresponding to the various light sources, etc, may then be optimized by appropriate processing and/or analysis in the control system portion 120 (
After processing the control parameters and/or retrieving control commands from the memory 140 (
The captured images may be processed by the video tool portion 143. The image capture cycles may be repeated until completion of a total number of inspection images for each workpiece 20 (
In step S130, the machine vision inspection system may analyze the light power or intensity settings input in step S1120 and determine timing relationships between the strobe flash profile and the camera integration period, and/or a strobe lamp operating voltage, based on the light power or intensity settings, such that the strobe illumination that is integrated during the camera integration period provides an illumination level that is sufficient for all of the respective selected light source channels, in comparison to their respective light power or intensity settings. The control parameters corresponding to the determined timing and/or voltage level may be stored in memory and/or implemented in the appropriate circuits or routines. The corresponding strobe illumination level may exceed the respective light power or intensity settings for some or all of the light source channels, if a controllable SLM is available to attenuate the light transmission to the various light source channels. In a decision step S1140, it may be determined whether the timing and/or voltage level determined in step S1130 is sufficient to provide the desired light power and/or intensity setting for each selected light source. If so, then operation mayjump to step S1160. Otherwise, operation proceeds to step S1150. In step S1150, the respective light channel apertures are adjusted in the SLM to provide respective partial light transmission settings and/or respective aperture sizes that provide a level of light transmission attenuation that provides the desired light power and/or intensity level for each respective light channel. It should be appreciated that a light channel aperture size can be reduced in the SLM, instead of, or in addition to adjusting the pixel gray-levels or the like, in order to attenuate the light transmission through a light source channel aperture. It should be appreciated that in the step S1150, the SLM may be adjusted independently for each light source channel aperture, such that one strobe flash can be differently attenuated for each respective light source channel, to provide a desired combination of illumination levels for multiple light sources during a single flash.
In an optional step S1160, the light control settings determined in steps S1130-S1150 may be tested by acquiring and evaluating a workpiece image using the settings. For example, the user may observe the resulting image on a display of the machine vision inspection system during learn mode, and accept or reject the image. If the image is rejected, the light control settings may be refined and retested until an acceptable image results. However, if the image illumination is not critical for a particular image, and/or if the various light control settings are adequately accurate and/or calibrated such that reliable illumination levels are obtained without confirmation of the determined settings, then the step S1160 may be omitted. In step S1170 the final light control settings determined in steps S1130-S1160 may be applied to acquire a workpiece image suitable for learn mode inspection operations and/or recorded, for example, in a part program that may be used later for automatic high-speed inspection. The process may then end in step S1175.
Artisans having skill in the art will recognize and understand that various functions for the systems and methods for controlling strobe illumination may be performed in any manner among any quantity (e.g., one or many) of hardware and/or software modules or units, computers or processing systems or circuitry. The control system portions may be integrated within a stand-alone system or may be executed separately and be coupled to any number of devices, workstation computers, server computers or data storage devices via any communications medium (e.g., network, modem, direct connection, wireless transmission).
The control system processes may be implemented by any quantity of devices or processing systems (e.g., IBM-compatible, Apple, Palm Pilot, Blackberry). The computer system may include any commercially available or customized operating system (e.g., Windows, Macintosh, Unix, Linux, OS/2, DOS) to execute any commercially available or custom designed software (e.g., Quick Vision™) and any type of input devices (e.g., keyboard, mouse, microphone, I/O port, wireless receiver). It is to be understood that the software of the strobe illumination control may be implemented in any desired computer language (e.g., C, C++, Java, Fortran, Lisp, SQL), and could be developed by one of ordinary skill in the computer and/or programming arts based on the functional description contained herein. Moreover, such software may be available or distributed via any suitable medium (e.g., stored on magnetic or optical devices such as CD-ROM and diskette), downloaded from the internet or other network (via packets and/or carrier signals), downloaded from a bulletin board (via carrier signals), or other conventional distribution mechanisms.
It will be appreciated that various of the above-disclosed and other features and functions, or alternatives thereof, may be desirably combined into many other different systems or applications. Also, various presently unforeseen or unanticipated alternatives, modifications, variations or improvements therein may be subsequently made by those skilled in the art, and are also intended to be encompassed by the following claims.