Feeders, new hardware (split from Head wiping tapes)

Started by Gopher, March 25, 2011, 08:00:39 PM

Previous topic - Next topic

fcb

I wrote the machine vision myself from scratch.  It is so intrinsic to the very fibre of the machine that I felt it was the only way to truly understand it.

Cameras have been an issue, but I think we have solved that.  The longevity/availabilty and lens quality being the keys.  It is surprising that if you get the lens, lighting and software right, you don't actually need mega-high resl.

Started - apart from getting the feeders right (minor - ha!) and re-designing the software front end, we're largely done.


fcb

Quote from: Gopher on March 26, 2011, 07:34:06 PM
We went and looked at the Quadra and it was a "oh, is that it?" kind of feeling especially with its price tag, at the time Blundell's other option was an M4, which has the opposite response, "what the hell would I want that for?"
I have to say that I liked the apparent simplicity of the Quadra, just felt it wasn't worth it for the money. It also shook alot when placing (but it did manage to place correctly), and I'm not a fan of linear guides epoxied to folded sheet metal..

QuoteIf it can be delivered at your target price I could see sub-con people buying it to stick in the corner for things that do not warrant loading the 12k cph machine.
Perhaps, although they aren't my main targets - but it had crossed my mind.

QuoteGood luck, when do we get to see it?
It may be worth inviting a few people down in the next couple of months for opinions/demo.


[/quote]

Gopher

Quote from: fcb on March 26, 2011, 07:47:50 PM


Started - apart from getting the feeders right (minor - ha!)


Well I only meant in so much as you have 20+ years of other people mistakes to learn from by looking at them, what with them being physical. For your price point I'm sure the RV feeders are quite good enough I'm putting things though my RV that might involve me changing some reels 3 times over the job run but that's a whole different kettle of fish, I think.
Certainly if we go back 10 years the odd 10 minutes swearing at a feeder wasn't a problem and its even less of a problem when you have paid for an unashamed ultra low volume prototyper with no pretensions.

Gopher


Mike

Quote from: Gopher on March 26, 2011, 07:20:16 PM
Camera's: cheap usb webcams probably won't cut the mustard (unless there are known good ones) their focal lengths are not exactly rock solid and the models go out of fashion quicker than H&M.
Even an expensive USB camera is like £50. There is a standard for generic USB cameras so you shouldn't be constrained to a particular model, or even resolution. Another option is cctv type cams and a video-capture device, as on the RV, but I don't think the resolution is quite up to the job.  
Lens quality and close-up focussing is an issue but you could probably use something like a standard 12mm CCTV lens with a tweaked lens-sensor distance and fix up the geometry errors in software.
All you need do is supply an accurately printed calibration grid fixed to a nozzle as a cal tool.

Mike

Quote from: fcb on March 26, 2011, 07:54:10 PM
It may be worth inviting a few people down in the next couple of months for opinions/demo.
Whereabouts is 'down'?

Gopher

http://www.ntscope.com/SX1000.html like this but without the comical fishing weights on feeders? And from what I have read, utterly dire software.

Mike

Although the fishing weights are a bit of a joke, the principle of using the head to advance the tape is an interesting way to save feeder cost, and doesn't preclude the use of active feeders as well, providing an upgrade route from a low entry cost.

Mike

Quote from: fcb on March 26, 2011, 07:47:50 PM
Started - apart from getting the feeders right (minor - ha!) and re-designing the software front end, we're largely done.
A few random thoughts/suggestions  based on RV annoyances amongst others :
SO's can come in tape or tube, so you need a 'placement-time' way to easily swap the rotation accordingly without messing with multiple part defs. Similarly you may find different makes of parts needing different vision parameters. Maybe the answer is that parts may have multiple variants that can be selected at the start of placement.

Feeder index numbers should be associated with the part def, not the feeder setup.
It should  be possible to train the vision by showing it a part instead of manually entering dimensions.
It should have an option to not automatically reset the job when it thinks it's completed, as you may have omitted parts or feeders that you want to place afterwards for various reasons.
There should be a way to specify placement order - for very dense boards you want to place taller parts after smaller ones, but there may be other reasons.
You should be able to pause placement at any time and tweak vision parameters with minimum effort. Ditto feeder positions and anything else you may see going wrong during placement. It should be possible to tell it to move on to other feeders while you de-jam/reload the current one - maybe a "pause feeder" type  button for each feeder. Similarly it should be quick & easy to manually index any feeder at any time. You probably want a graphical display of feeders showing status and pause/index/refill buttons for each lane.

Step/repeat should probably be done at the placement stage rather than at job setup, this makes things like dealing with panel cross-outs and test builds easier.
Local fiducials for fine-pitch packages.

Should be possible to import fiducial positions from P&P data - I do this in my PCAD->TFR file  importer with a special 'fid' component which comprises the pad & a P&P point.

A paste dispensing add-on option is highly desirable for a low-end machine - if people are buying for fast turnaround, not having to wait for stencils is good.

Anyone should be able to download and try the software in offline mode to see if it suits their needs. Similarly on no account should a forum be limited to owners - user forums are an extremely useful tool in evaluating potential purchases, both in terms of product performance and manufacturer reaction to issues.   

SteveW

Quote from: Mike on March 26, 2011, 11:13:20 PM
It should  be possible to train the vision by showing it a part instead of manually entering dimensions.

Yes. oh yes. I shall be asking dumb questions tomorrow, on this subject. I'm confused. Likewise, components rotated compared to the pick'n'place file. Am I doomed to my leds being forever backwards?

Quote from: Mike on March 26, 2011, 11:13:20 PM
Step/repeat should probably be done at the placement stage rather than at job setup, this makes things like dealing with panel cross-outs and test builds easier.

Yes. For a prototype shop, being able to include, or drop, boards from a panel, is deeply handy.

Quote from: Mike on March 26, 2011, 11:13:20 PM
A paste dispensing add-on option is highly desirable for a low-end machine - if people are buying for fast turnaround, not having to wait for stencils is good.

I can see the benefit. I can also see the doom. Are paste dispensers worth the effort? They seem to be regarded as evil by many. Is this because they're slow and not as good as a real stainless stencil, knocking out 1000 panels an hour, or because they can't do 10 successive 0603s? (I genuinely don't know. Stencils work for me, and have lead times comparable to PCBs.)

Quote from: Mike on March 26, 2011, 11:13:20 PM
Anyone should be able to download and try the software in offline mode to see if it suits their needs. Similarly on no account should a forum be limited to owners - user forums are an extremely useful tool in evaluating potential purchases, both in terms of product performance and manufacturer reaction to issues.

Yes. Software is key. If i hadn't seen the Versatronic stuff before I bought, it would just have been a punt on a pile of hardware from which I might have been able to build a machine. As it is, it's been useful. not yet profitable, but that's this month's invoicing run... And this forum, well, it's been a sanity saver, especially for a product that's unloved by its manufacturer.

[/quote]

Mike

Quote
Yes. oh yes. I shall be asking dumb questions tomorrow, on this subject. I'm confused. Likewise, components rotated compared to the pick'n'place file. Am I doomed to my leds being forever backwards?
That's mostly about getting your libraries the right way round, and more important, in a consistent orientation. SOs are a bugger due to the tape-or-tube twist so you end up having two parts for the different rotation.

QuoteA paste dispensing add-on option is highly desirable for a low-end machine - if people are buying for fast turnaround, not having to wait for stencils is good.
Quote
I can see the benefit. I can also see the doom. Are paste dispensers worth the effort? They seem to be regarded as evil by many. Is this because they're slow and not as good as a real stainless stencil, knocking out 1000 panels an hour, or because they can't do 10 successive 0603s? (I genuinely don't know. Stencils work for me, and have lead times comparable to PCBs.)
I wouldn't  advocate dispensing for anything more than very low volumes & protos. It's as much about cost as leadtime, although I have in the past made a homebrew PCB, hand-pasted, P&P'd a couple of hundred parts all in 2 hours. Dispensing systems are by no means perfect unless you can afford an auger based head, but are cheap and simple, and all it takes to turn a P&P into a dispenser is a mounting point, a trigger signal and some software, so worth thinking about.
And of course once you have that you can do glue dots, and potentially also do all sorts of other auto-dispensing tasks that may not involve a PCB at all.  

Gopher

Some random idea's
I would drop the RV approach of 3 apps to get things done. One control program with 3 distinct stages within it.

1: create or select the project.

2: step and repeat parameters, the ability to say you are just doing the one non-panelled board this time, without then losing step and repeat settings.

3: place, with a nice GUI much like the RV, however in this instance each pcb within the panel should be clearly distinguishable so you can tell it if some are crossed out. Maybe the pcb images on the grid could in fact be buttons with a clear active and inactive state. Be nice to be able to reassign feeders or indeed decide you are placing something after all at this stage, or indeed switch from so8 in a tape to a tube because that's what you have.

Error rates, it needs to track both repeat pick/place issues and  the rate they happen at, specified parameters for each should cause the feeder to passed over, if those parts are next to something tall, the tall thing should be passed over too. A nice flashy light would be nice either on a stick the feeder or both.
What the problem was - imaging or pick should be displayed in a feeder status box

Big monitors are cheap; might as well make the most of all that space and have as much data as possible up there. So panel graphics, feeder status, time done, time remaining, parts used, probable attrition etc

Place order should be shortest first by default, overrides should be possible for odd requirements, and feeder locations should probably be suggested for parts where it will make a difference. This does depend on bank size and changeover time tho', if it take 10mins to move reel its unlikely you'll get it back in a small batch.

The SO packaging problem, unless I am mistaken SO's are always one way in a tube and the other in a tape
(the exception here seems to be sot223 and DPAK if they are made by IR who do things their own way) so as long as the software knows this it could automatically adjust accordingly, it clearly knows the feeder type.

PCB counter, I get tired of counting PCBs by hand especially panels with crossouts.

Some features like training a part or indexing a feeder should be available in all stages
You need to be able to go back one stage (to tweak) without the machine going through some ridiculous park and reset routine

Tube feeders - tombstoning, jamming, stacking on top of each other are all significant issues with a vibratory system, any cunning way of keeping these at a minimum could well be handy, I assume cost means special mechanics are out as is air but special adaptors that clip on the ends of the tubes so the pick area is exactly the size it should be could help.

fcb

Quote from: Mike on March 26, 2011, 10:15:13 PM
Although the fishing weights are a bit of a joke, the principle of using the head to advance the tape is an interesting way to save feeder cost, and doesn't preclude the use of active feeders as well, providing an upgrade route from a low entry cost.
It's quite a good way. Apparently it's patented in the US (although I found no relevant patent after a long search).

fcb

QuoteA few random thoughts/suggestions  based on RV annoyances amongst others :
SO's can come in tape or tube, so you need a 'placement-time' way to easily swap the rotation accordingly without messing with multiple part defs. Similarly you may find different makes of parts needing different vision parameters. Maybe the answer is that parts may have multiple variants that can be selected at the start of placement.
Some sort of taxonomic function, eg: FAMILY=SO8, GENUS=LM358D, SPECIES=ST/MALAYSIA/TUBE/90DEG
With the ability to create new species with a couple of button presses. Vision parameters would be SPECIES specific.
"Placement/Pick" list would only need to state the GENUS.
As the machine goes down the list, it could then look to current state of the feeders to find the nearest match.
On screen PLAY/STOP/PAUSE buttons and the ability to run the machine in SIMULATION (for checking the programming) or SEMI mode, that would automatically pause before picking the part, pause again when it had put the part over the centring camera (allows for tweaking component rotation and vision parameters live).
If the "placement/pick" list was on screen and you could interact with it more or less 'live'.

QuoteFeeder index numbers should be associated with the part def, not the feeder setup.
Yes.

QuoteIt should  be possible to train the vision by showing it a part instead of manually entering dimensions.
Yes, but probably later code version.

QuoteIt should have an option to not automatically reset the job when it thinks it's completed, as you may have omitted parts or feeders that you want to place afterwards for various reasons.
Partial build is essential - it's pretty much how I do things now as I'm not that organised (I tend to program CNC on-the-fly also).

QuoteThere should be a way to specify placement order - for very dense boards you want to place taller parts after smaller ones, but there may be other reasons.
Component height is a parameter presently used, no reason why in the "optimiser" component height should not have a priority option.

QuoteYou should be able to pause placement at any time and tweak vision parameters with minimum effort. Ditto feeder positions and anything else you may see going wrong during placement. It should be possible to tell it to move on to other feeders while you de-jam/reload the current one - maybe a "pause feeder" type  button for each feeder. Similarly it should be quick & easy to manually index any feeder at any time. You probably want a graphical display of feeders showing status and pause/index/refill buttons for each lane.
See previous comments.

QuoteStep/repeat should probably be done at the placement stage rather than at job setup, this makes things like dealing with panel cross-outs and test builds easier.
Yes. I visualised something like BATCH>PANEL>BOARD hierachy with the ability to remove faulty boards (cross-outs) from individual panels. EG: You if you had a BATCH of 5 panels (20 circuits per panel), you could define that circuits #7,8,12 on panel#3 and circuit #13 on panel#5 where faulty before placement began - because if like me you switch into 'robot' mode and tend not to like thinking (especially if answering emails, writing code, listening to R4, soldering thru-hole etc...)

QuoteLocal fiducials for fine-pitch packages.
Yes

QuoteShould be possible to import fiducial positions from P&P data - I do this in my PCAD->TFR file  importer with a special 'fid' component which comprises the pad & a P&P point.
Will try and bear in mind that there's more than one way to enter fiducials and that local's are very important too.

QuoteA paste dispensing add-on option is highly desirable for a low-end machine - if people are buying for fast turnaround, not having to wait for stencils is good.
I hate paste dispensers. Perhaps i'll leave hooks in the hardware for this, but not an option at launch.

QuoteAnyone should be able to download and try the software in offline mode to see if it suits their needs. Similarly on no account should a forum be limited to owners - user forums are an extremely useful tool in evaluating potential purchases, both in terms of product performance and manufacturer reaction to issues.
Agree, that and lots of videos, forums agree.

Gopher


QuoteStep/repeat should probably be done at the placement stage rather than at job setup, this makes things like dealing with panel cross-outs and test builds easier.
Yes. I visualised something like BATCH>PANEL>BOARD hierachy with the ability to remove faulty boards (cross-outs) from individual panels. EG: You if you had a BATCH of 5 panels (20 circuits per panel), you could define that circuits #7,8,12 on panel#3 and circuit #13 on panel#5 where faulty before placement began - because if like me you switch into 'robot' mode and tend not to like thinking (especially if answering emails, writing code, listening to R4, soldering thru-hole etc...)
[/quote]

I might still be pasting the panels while the machine gets going on the first so I might not yet know the precise order they are going into the machine, so I would want the ability to denote a crossout on the fly. But the ability to do it before hand is still useful as quite often issues at the PCB shop do seem to be the same pcb in a panel over and over.

Hmmm ah yes robot mode, here's some of mine. That cause me to make paranoid checks on what I just did..

Take a pcb out and put a loaded one back in, or press place again without removing the board. Don't do it often (usually when multitasking, or I have to grab a board off the oven conveyor) but damn is it annoying when I do.

Load a board with symmetrical Fiducials 180degrees out, oops! maybe use a track image locally as well to check....

Take a board out and then realise it hadn't finished, there were errors, no idea how to stop someone like me doing this and its minor as you realise soon enough.