Unfortunately our machine is picking and placeing now reliably.
You can see a demo video here:
https://www.youtube.com/watch?v=rYFK_RLNU-gWhat it is all about:
Its aim is to provide as much as possible different type of parts and as many parts for each type
to the machine at the click of a button. It should reduce the time needed for human workers for
seting up a pick and place job.
On our table we could put over 600 part types with up to 4000 pices of each type. In total we could
have nearly 2.5 million parts on "stock" directly reachable by the machine.
The HeapFeeder consists of following components:
1) The DropBox: it is used for separation and flipping the parts
2) BoxTrays: They consist in our case of 16 SubBoxes with a size of 13x13x35mm inner volume.
They are surrounded by corridors for parts transportation to eliminate the risk of mixing
up differnt types of parts.
3) The ChipFlipper: it is used for sideview via a mirror and can flip parts automatically.
The procedure ist for now the most simplest approach:
1) If the feeder has changed sice last HeapFeeder's feed, check if we have to clean up the DropBox
2) Fetch new parts from the defined SubBox. This is a critical stage to get reliably parts from a
heap of parts.
3) Transport the partd through the predefined corridors
4) Drop the parts in the DropBox and categorize them for upside up, upside down and anything else.
5) a) Pick the upside up parts and place them.
b) If no upside up parts could be found, pick a flipped part and try to flip it by picking
it up and dropping it repeatedly.
c) anything else is left for clean up
If you want to have a look into the code, you can find it on GitHub, but be aware - it is a hack for now. There are still many todos
https://github.com/KarlZeilhofer/openpnp/tree/feature/heapfeederGreets, Karl
from Team14