[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: gEDA-user: SMT assembly and gerbv lilbro.mosquito.net.nz



I'm very much looking forward to trying out lilbro when the are up and 
running.  Comments below. -dave

John Griessen wrote:
> lilbro.mosquito.net.nz is starting a low volume assembly business and they are choosing
> software to deal with relating solder paste dots and pick and place centroids to
> gerber output that made the boards they are assembling.
> 
> Could gerbv be modified to generate lists of pads after finding where silk outline intersects
> or encloses soldermask openings?

If all you need is a list of pads, can't that come from a paste layer? 
I don't see how the silk adds anything to that part of the problem.  It 
seems like the paste layer should be enough to calculate an aperture 
center and an area, and area can go into a calculation of paste volume.

> 
> Where silk outline intersects or encloses soldermask openings seems to me to be
> the minimal description of recognizing a footprint.
> 
> They won't have anything but gerbers from most customers.

Nasty.  But reality.  As we think about gerber kludgery, we should think 
about how to get pcb to generate the same (presumably higher quality) 
data in the same format so that it could slipstream into the process 
that way.

> That means there is no netlist associated, no pin 1 defined, only a mark on one corner of the silk outline
> that you have to "see" somehow.

Well.... now the library problem has collided with a computer vision 
problem.  I'm guessing that any particular vendor library, say Eagle for 
example, is pretty consistent.  Of course, all of us PCB users have our 
own library :)  So, I see two attacks:

A. From lilbro's perspective, they want to recognize as much as possible 
from the most commonly used libraries. So prioritize and code recognizers.

B. From the perspective of a home-grown library user, just tell me what 
you can easily recognize and I'll tweak my silks.  Actually, anybody 
should be able to add a simple silk mark, no matter what package they 
use. I think it's possible to sell the idea of doing a little extra silk 
work to trade off against tweezer time.  I'm sold already. :)

> 
> I can see a program that uses top copper

Why top copper?  Doesn't it contain a lot of distractions?

> and top silk and top soldermask and no others.
> 
> to do list for centroid program:
> 1.  Uses silk and soldermask to mostly identify which SMT pads are a group

Using a closed-figure detector, I presume?

> 2.  Figures out the orientation. (Has to come from silk -- varies from footprint to footprint,
>          and varies from customer to customer.)  This is the hard part.
>          the circuit pin numbers and orientation is gone when in gerber format.
>          Not sure how to do.

I wonder how far you could get by simply looking for asymmetry? ie:
a. vaguely rectangular
b. Three straight sides
c. one side has a discontinuity in the line, perhaps filled with an arc.

That sounds like an SO or TSSOP.

a. vaguely square
b. 5 sides, would be square but for one corner being nicked at an angle.

This sounds like a TQFP.

Those packages seem easy.... but I bet there is a large variation in SMT 
diode silk.

Most two-pad parts aren't polarized, so it doesn't matter.

> 
> 3.    Update the XY centroid list to also have a footprint name associated.

Where would you get the footprint name?

> 4.     creates list of footprint XY pad centers relative to the centroid for same footprint.
> 5.    Uses rules to change some rows of centers, (paste dots), to offset lines of paste.
> 5.      creates a footprint drawing for each one found with exact pad shapes, orientation, but no silk outline.
> 	Would this be in gerber?  What would help to do fuzzy comparisons?
> 
> Ideas?

Well, my general admonition about most CAD and AI programs is this: The 
world would be a better place if all AI applications, instead of trying 
to do everything automatically and leaving you with a mess when they 
can't, is to instead create an intelligent interactive assistant.

So, I think this should be a GUI application (gerbv interactive 
plugin?????) that takes it's best shot at automatically processing 
things, and then lets you adjust interactively.  So I can see having a 
"rotate" tool for places where the tool gets the pad collection and 
centroid right, but rotates the package by 90 or 180 degrees.  And a 
centroid tweaker, and a paste location and volume tweaker tool.

So now the user interaction becomes:
1) slurp in the gerber file
2) run the auto-recognizer
3) visually scan the layout, applying tweaks as necessary
4) write the paste CAM file.

> 
> John Griessen

-dave


_______________________________________________
geda-user mailing list
geda-user@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user