Global TMW:
Login  |  Register          Free Newsletter Subscription
Subscribe
Email
Print
Reprint
Learn RSS

Frame grabber reliability enhances machine vision

Philip N. Colet, Coreco Imaging -- Test & Measurement World, 10/1/2003

Designing reliable machine-vision systems for demanding applications such as BGA and printed-circuit board inspection has traditionally proved a significant challenge. You'll find it easier to develop a machine-vision system if you use a frame grabber that employs what we at Coreco Imaging call "trigger-to-image reliability."

Frame grabbers that offer trigger-to-image reliability ensure that a machine-vision system acquires an image of the correct target, that the stored image data correlates to the correct target, and that reliable data is transferred into the system's memory for processing. Achieving this level of dependability requires integrating various image-acquisition control functions—including trigger inputs, strobe outputs, camera control signals, and external I/O—onto onboard hardware, and using software application-programming-interface (API) functions for command and control.

Acquiring the right target

Integrating camera-control functions such as trigger and strobe control into a vision system's onboard hardware sounds simple enough: A trigger input generates a strobe output for lighting control and camera exposure. Some circumstances, however, demand a delay between the two events, such as when the camera and lighting units are not in the same position on the conveyor as the trigger sensor. Coordinating the events through software is almost impossible and is certainly not reliable—especially given the inherent variations in the Windows operating system.

To compensate, some frame grabbers permit programmable delays between the signals so developers can establish a precise delay between the trigger input and the firing of the lighting and camera exposure. Unfortunately, any programmed delay reflects only the theoretical speed of a production line. If the actual speed differs or is not constant, the camera will not acquire the target properly.

In contrast, a frame grabber that includes an integrated trigger and strobe mechanism ensures correspondence to the production line's actual speed by establishing each delay according to shaft-encoder ticks. This feature allows proper control of the camera to capture the image of the target being inspected. Although these hardware features remain under software control, once initialized they act independently of any software execution, producing consistent and predictable results.

Triggers, triggers, and more triggers

After a camera sensor acquires a target image, the inspection system must read the data from the sensor and transfer it to the host computer for processing. It's nearly impossible to anticipate all the conditions that could lead to unreliable image acquisition. The sensor may never detect the object in the first place, and therefore it won't generate a trigger signal to the system. To combat this possibility, some frame grabber manufacturers are working with camera vendors to take advantage of new camera models' fast-scan and partial-scan modes that allow the frame grabber to act as the triggered device.

Too many triggers (as in false triggers) can also occur, as can triggers that follow so close together that the system cannot read the sensor memory completely before the next exposure occurs. In this case, the system can notify the host application software of missed triggers through event callbacks. The analysis software becomes aware of the double trigger and automatically rejects the target into the "not inspected" bin, flags the error for a human operator to review, or takes other appropriate action.

Time stamps

Detecting targets, firing lighting strobes and cameras when the targets are in place, and reading the correct data from the sensor represent only the beginning of a reliable machine-vision system. The system also has to coordinate the image data and correlate the images with the corresponding physical objects.

Consider a parts-handling unit processing up to 3600 parts/min. The system must inspect all four surfaces of each part. Because of positioning, it cannot acquire all four images at the same location but must acquire them individually as the target moves through the system. The imaging system must acquire 14,400 images/min and correlate four different acquisition locations with the image data stream. As each object emerges from material handling, the inspection system must decide whether to accept, reject, or re-inspect it.

To correlate all this data, a frame grabber can add an important piece of information to the mix: a time stamp. A time stamp encodes a unique time code into the image data structure, which derives from an onboard hardware clock or from shaft encoder ticks. It provides a direct correlation between the movement of the target through the system and the acquired data.

Because there is a time lag between image capture and analysis, the time stamp ensures that the system acts on the correct target. The time stamp can also help with long or high-speed image sequences, where analyzing the time interval between images can determine if an image was missed during the capture sequence.

Monitoring the acquisition process in host memory

In transferring image data into system memory, software tools can ensure that the frame grabber captures all necessary images accurately. Tracking the events in Table 1 allows the inspection system to accurately monitor the capture and transfer sequence.

Through these events, the host can monitor the target acquisition process from the time the object arrives at the inspection point to the time that the image resides in host memory. To assist the monitoring process, each event can be placed on a specific channel that relates to only one camera. Within each channel, an index counter can increment on each event. An incorrect index value would immediately indicate that an error has occurred.

Proper system design demands a certain amount of overcapacity to handle peak loads, such as when a system must acquire, process, and analyze the 14,400 images/min of the earlier example. To reliably process thousands of images, a machine-vision system can take advantage of circular buffers. By depositing image data into the next available location within a circular buffer, the system can maintain multiple images within a single channel.

If the system acquires images faster than it can process them, filling up the buffer space, the frame grabber can deposit the extra image data in a special frame buffer called the "trash buffer." The system can initiate a hardware event, indicating that there is image data in the trash buffer that must be monitored. As a partial recovery in this scenario, the application software could read the image time stamp, track that object through the system, and assign it to the "not inspected" bin.

Maximizing data quality

Even if a frame grabber reliably captures data, there's no guarantee that the data is usable. What happens if a noise or power glitch merges two pixels or lines together, compromising the data from the camera? Is all subsequent acquired data incorrect? Must you restart the system?

To be truly reliable, a frame grabber must ensure that the data is not corrupt. It should compare the number of pixels and lines being captured to the camera file. If an error has obliterated some camera data, the system can recover on the next incoming image. Simultaneously, the system can set a status flag indicating the suspect quality of the acquired image and encode that flag into the image structure.

Frame grabbers that can detect problems and act on them greatly simplify system development. With such a frame grabber, an OEM doesn't have to invest time and effort to understand why a system failed. In addition, the frame grabber can reduce maintenance and support once the inspection equipment is installed in the field, lowering total system costs.

Table 1. Capture and transfer sequence
EVENTACTION
Trigger Notifies the host application that a trigger event has occurred
Double triggerNotifies the host that a trigger event occurred that did not produce image data
Start of frame/fieldNotifies the host that an image is being acquired
End of frame/fieldNotifies the host that an image has been acquired
Start of transferNotifies the host that an image is being transferred to system memory
End of transferNotifies the host that an image has been transferred to system memory


Author Information
Philip N. Colet is VP of sales and marketing at Coreco Imaging, Montreal, QC, Canada. E-mail him c/o T&MW: editor@tmworld.com.

Email
Print
Reprint
Learn RSS

Talkback

We would love your feedback!

Post a comment

» VIEW ALL TALKBACK THREADS

Related Content

Related Content

 

By This Author

There are no other articles written by this author.

Sponsored Links



 
Advertisement
SPONSORED LINKS

More Content

  • Blogs
  • Podcasts

Blogs

  • Martin Rowe
    Rowe's and Columns

    May 28, 2008
    More on Bill and Dave
    In my January 11 posting, "Tell your Bill and Dave Stories," I asked if the HP Way still e...
    More
  • Rick Nelson
    Taking the Measure

    May 6, 2008
    LED bulbs not quite ready for consumer lighting
    Now that people are finally adopting compact fluorescent bulbs, is it time to throw them out and rep...
    More
  • » VIEW ALL BLOGS RSS

Podcasts

Advertisements





NEWSLETTERS

Click on a title below to learn more.

Test Industry News (3 Times Per Month)
Machine-Vision & Inspection (Monthly)
Communications Test (Monthly)
Design, Test & Yield (Monthly)
Automotive, Aerospace & Defense (Monthly)
Instrumentation (Monthly)
Resource Center E-Alert (Monthly)
©2008 Reed Business Information, a division of Reed Elsevier Inc. All rights reserved.
Use of this Web site is subject to its Terms of Use | Privacy Policy
Please visit these other Reed Business sites