Printed Circuit Board Assembly & PCB Design SMT Electronics Assembly Manufacturing Forum

Printed Circuit Board Assembly & PCB Design Forum

SMT electronics assembly manufacturing forum.

AOI Algorythms

Views: 2329


AOI Algorythms | 21 June, 2006

Hello SMT netters,

Can anyone help me with AOI algorythms. I have to find out the differences between algorythms for recognition(black and white, grayscale, matching, golden board.....). I know all of you are using different type of AOI machines. Can you please tell me what are the advantages and especially disatvantages of the recognitions your machine is using. Don't mention brands. I just want to know the principles , possibilities and possible failures. I will appreciate any opinion.

Thank you!

reply »


AOI Algorythms | 22 June, 2006

I'm no AOI expert by any means, however I spent a few minutes one time about 4 years ago working on an old CR Technology (or is it CR Technologies?) machine so I've been chosen by my company to be the "technical guy" for our AOI evaluation.

We are looking at 3 different brands. Two of the AOIs do pixel comparison, the third does image comparison. From what I can gather, these are the two basic AOI inspection theories.

Image comparison (maybe what you mean by golden board?) - you put in a "good" board, then take sample images from this board. As more boards are inspected, the images from the "good" board are compared to images from the current board. If the AOI fails a part on the current board that is actually acceptable, you may save the current image as an alternate. This makes the machine extremely easy to program. Yesterday after a couple of hours of instruction, I was able to sit down and generate my own program, debugged, in an hour and 1/2. I think this type of machine could be very useful for proto shops, or people who are more concerned about correct values and polarity than solder. I cannot say just yet if the solder inspection from this machine will meet our needs. This particular machine has a color camera, and can verify color. On one of our boards we have it verifying that the yellow-domed LED is in the correct spot, right next to the green-domed LED.

Pixel comparison - Rather than comparing images, you are selecting algorithms and defining areas of interest. As an example, if I want to check polarity and there is a "bright" polarity mark, I may expect to see "bright" on one side of the part relative to the "dark" side of the part. Then I have to set my thresholds... Just how much brighter does it have to be to be acceptable? This also works for chamfered ICs. The chamfer looks "dark" because it's slightly shadowed... and of course you can adjust your lighting levels and/or angles to make it look more shadowed. Most comparison is just bright to dark. On a gull wing lead, the top of the lead, near the body of the part, will look bright because it's relatively horizontal. Then the lead slopes down, so light is reflected away from the camera. This section will look relatively dark. The lead then "flattens out" again, so it will look bright. This is how the machine can identify leads, and may use lead recognition to calculate if the component is aligned correctly on the board. At the toe of the lead, the solder joint should look dark, because it's sloping down to the pad. This lets you know you have solder present. Otherwise, it will look bright because there is no fillet... the pad will reflect light right back to the camera, or if the lead didn't wet you'll have rounded solder on the pad that will have a bright spot in the center. One of the two pixel comparison machines we have binarizes everything... It doesn't really do a greyscale comparison. What this means is that it breaks it down to black and white. I need to decide what light level is called black, and what light level is called white. Perhaps on a scale of 0 to 255, for part # 1234, 160 is to be considered black. Maybe on part # 4321, 100 is considered black. The application engineer we had here would make adjustments first at the package level, in some cases at the part number level, and in many cases he'd adjust it at the reference designator level.

My opinion: If you don't have a lot of resources to dedicate to one of the two more complicated machines they are probably not going to work all that well. I think if you have someone who really knows what they are doing and is dedicated to the machine they will work great. It took the application engineers for the two pixel comparison machines about 2-3 weeks to develop and debug programs for 5 boards. We have very simple boards, maybe 250 placements per board if that.

If you don't have a lot of resources, do lots of change over with a bunch of ECO's and primarily want to do first article, verify values and polarity... Then I think a machine of the image comparison type may be the best bet. The application engineer for this machine arrived Tuesday, of this week and we'll be done programming our 5 boards today.

If you are somewhere in between like us, then don't worry because the CEO or someone will just make the choice for you anyway no matter what you recommend, then at least it's not YOUR fault you got the wrong one.

reply »



AOI Algorythms | 22 June, 2006

I wouldn't worry too much about the pixel comparison machines taking too long to program, it takes ages at first but once you've done a few programs you start to build a library of components. yes you may still have to slightly adjust these as you go due to changes in board finish, component colour etc but overall it doesn't take too long. I find that for a brand new product nowadays it takes me anything from 2 - 5 hours depending on complexity. I found that the machines that use this technology find more faults than the comparator based machines, others may disagree.

reply »


AOI Algorythms | 23 June, 2006

Thank you for the post cuculi. I really appreciate it.

I've read about some kind of vectoral imaging machine technology. The explanation of the principal was: When you desing the component in the library, the machine takes this information(dimensions, polarity marks...) The machine makes pictures on the board(after placement) and applies this vectoral models from the library. It automaticly finds the objects on the board, when the component is compared to the model and it matches. The recognition itself is some kind of edge detect algorythms and it is grayscale. Is there anyone working with that type of machine? More details on this or some other recognition technology will be very useful.

reply »

Small Parts Tips

SMT Reflow Soldering Equipment Company of the Year 2020!