Picking Loose parts on table

568 views
Skip to first unread message

Denny Draco (Denny)

unread,
Nov 3, 2022, 12:57:45 PM11/3/22
to OpenPnP
Hello,
New to the group. Looking at OpenPnp for picking bulk parts off of a surface and placing on a board.

I'm a SMT Process Engineer at Circuit Works Corporation in Waukegan Ill. in the U.S.

My goal is to replace Hand placing processes with a pick and placer built directly on the
PCB conveyor after Production / Manufacturing full size machines.

A lot of times parts come in stick tubes or boxes and are not place able by machines that require packaging like tape and reel or trays.

I appreciate any feedback about if the OpenPnP vision system could handle this scenario.

Thanks,

Denny

 

johanne...@formann.de

unread,
Nov 3, 2022, 1:25:25 PM11/3/22
to OpenPnP
Depends a bit on the part, your vision system need be able to detect the rotation (either top or bottom vision).
But general the advanced loose part feeder is what you want to take a look at.

Denny Draco (Denny)

unread,
Nov 4, 2022, 9:13:35 AM11/4/22
to OpenPnP
Thanks,
I'll check that out.

Denny

Fernando Corona

unread,
Nov 4, 2022, 11:17:23 AM11/4/22
to ope...@googlegroups.com
Hey Denny,

I'm been in the similar situation myself for the past couple months reviving a pick n place machine to pick up loose parts and place them in loading pallets. If you have any questions feel free to ask. My inital approach was the following:

1. Downloaded OpenPnP and got familiar with the user interface and ran the simulation job. 

2. Most Important tested the software by running the advanced loose part feeder or reference loose part feeder vision pipeline on your parts with a USB camera i had. If it works then you should proceed with the hardware. 

Just a tip if you're parts are tiny like mine are. Then you can use andonstars microscopes they have a usb mode that works with OpenPnP. Also Dinolite has USB microscope cameras I would like to try myself once I get a chance. 

Regards,
Fernando


--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/c10f1670-3936-4d4e-977f-b94c11f8d902n%40googlegroups.com.

Ravi Ganesh

unread,
Nov 6, 2022, 4:03:25 AM11/6/22
to OpenPnP
I am trying hard to get vision work with LooseParts feeder. 
When Top vision fails with "No parts Found" I want to be suggested with human vision i.e option to jog to part-location manually. 
Is there a possibility to add this functionality in the pipeline? (i.e without altering the source code)
Ravi

Fernando Corona

unread,
Nov 6, 2022, 5:51:51 PM11/6/22
to ope...@googlegroups.com
I believe the source code of the feeder would have to be modified for such functionality. Industrial loose part feeder systems have the loose tray of parts on a xy table that will move when the vision has no result as in the case you describe. I will have to figure out what to do for my machine as well as I would like this feature as well. How I would add this feature is expand on the feature the feeder already has which is it will jog slightly looking for parts before reporting no parts found. One solution could be having multiple feeder locations that the camera will jog to automatically if no parts are found. Hopefully someone in the community with experience scripting a feeder can help us. 

Ravi Ganesh

unread,
Nov 7, 2022, 4:30:24 PM11/7/22
to OpenPnP
Here is a Video of "Human Vision Fallback" for ReferenceLoosePartFeeder. 


For those of us who find CV challenging to get working flawlessly, this could be useful.
pull request has been made. Hope this approach is "mainstream" quality.
Ravi

Fernando Corona

unread,
Nov 7, 2022, 11:50:56 PM11/7/22
to ope...@googlegroups.com
Ravi, 

What are your thoughts on making the feeder have a scan or search functionality instead of user jogging? 
The idustrial pick and place machine at my work has this feature and it makes the machine 90% autonomous. The operator just needs to resupply parts once the loose tray is empty. 
The basic function is if the feeder has a no parts found instead of an error it moves in the x axis and searches again till it hits the limit of the tray then moves down the y axis and repeats moving on the x axis till it can't find parts. The path is a snake motion across the tray size. I'm not sure how to achieve this yet but would be ideal to make the loose tray feeder more autonomous. 

Ravi Ganesh

unread,
Nov 8, 2022, 12:06:08 AM11/8/22
to OpenPnP
Hi Fernando,
You can have a second LoosePartFeeder of the same part. When no part is found in the first area, OpenPnP would automatically move to the second area. 
You can have as many clones as you want. Hope this approach solves your problem.
Ravi

Fernando Corona

unread,
Nov 8, 2022, 2:24:52 AM11/8/22
to ope...@googlegroups.com
Thanks for the tip Ravi, will try that. 

Fernando. 

Mark

unread,
Nov 8, 2022, 9:48:05 AM11/8/22
to ope...@googlegroups.com

IMHO this sounds reasonable and more generally useful that babysitting, but obviously not so easy to implement.

And I wonder what the OP (Danny) has to say, I'm not sure he was talking about the same thing.

_Mark

Ravi Ganesh

unread,
Nov 8, 2022, 12:39:45 PM11/8/22
to OpenPnP
Babysitting.... Hmm. There is a Philosophical difference. In thickly populated regions of the world, the machine should make the work of the human easier rather than completely replace the human. The human would then feel very unwanted and sad.

Mark

unread,
Nov 8, 2022, 2:19:43 PM11/8/22
to ope...@googlegroups.com

OK that term was not called for. Sorry about that. 😅

Still, OpenPnP is all about automation. I would always first try to find an automatic solution over a manual one. Especially, if it is a purely routine operation like the feed operation, i.e. notably not a one-time "teach-in" operation.

_Mark

Ravi Ganesh

unread,
Nov 14, 2022, 4:22:44 PM11/14/22
to OpenPnP
Human Vision is exciting. Robust. Accurate. Here is a second video of Human Vision in action on a real machine.
Human Vision for pick and place

Any feedback is welcome.





bert shivaan

unread,
Nov 15, 2022, 5:52:10 AM11/15/22
to ope...@googlegroups.com
I think I have been wanting this feature ever since I started with openPNP. This is awesome!!

Is it scripts or did you modify the source for this?

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.

Ravi Ganesh

unread,
Nov 15, 2022, 3:57:59 PM11/15/22
to OpenPnP
Hi Bert,
Thanks.
Unfortunately it requires modifications to the source. Refer this Pull Request

bert shivaan

unread,
Nov 15, 2022, 5:48:55 PM11/15/22
to ope...@googlegroups.com
Oh no worries, If it gets added in that is just fine. Thank you for the hard work and contribution to the project :)


--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.

bert shivaan

unread,
Nov 15, 2022, 6:36:18 PM11/15/22
to ope...@googlegroups.com
Ravi, after reading the pull request I am confused a little. Will it work without running a job? For instance lets say I have a board with a handful of parts. Can I simply invoke your process to pick and place a part at will? Or do I need to start the job and have it fail the pick?

As a work around to the pull request issues, what if you just let the job processor ski[p the bad part, then go back at the end of the job and manually place the missed parts using your human vision feeder? Maybe that way it won't be so complicated to get working?

surab...@gmail.com

unread,
Nov 15, 2022, 10:40:12 PM11/15/22
to ope...@googlegroups.com

Hi Bert,

Please find my answers inline:

 

From: ope...@googlegroups.com <ope...@googlegroups.com> On Behalf Of bert shivaan
Sent: Wednesday, November 16, 2022 5:06 AM
To: ope...@googlegroups.com
Subject: Re: [OpenPnP] Picking Loose parts on table

 

Ravi, after reading the pull request I am confused a little. Will it work without running a job? For instance lets say I have a board with a handful of parts. Can I simply invoke your process to pick and place a part at will? Or do I need to start the job and have it fail the pick?

You mean a job.xml + brd.xml file with the placements. Then you can enable parts one by one and run the job and place the parts one by one. That is how we do.

In case you don’t have an .xml file and hence no placements coordinates, then prior code will work fine. You have to manually jog, actuate the vacuum etc.. We do that for placing the BGA IC’s - 100% error free and accurate.

 

 

As a work around to the pull request issues, what if you just let the job processor ski[p the bad part, then go back at the end of the job and manually place the missed parts using your human vision feeder?

You can press the cancel button in the popped up information pane, disable the part and then run the job. Finally you can place them at the end one by one as mentioned above.

 

Maybe that way it won't be so complicated to get working?

It works good now. Whether it meets the quality expectations of main stream code/design, is for the seniors to decide.

 

 

 

 

On Tue, Nov 15, 2022 at 5:48 PM bert shivaan <bert.s...@gmail.com> wrote:

Oh no worries, If it gets added in that is just fine. Thank you for the hard work and contribution to the project :)

 

 

On Tue, Nov 15, 2022 at 3:58 PM Ravi Ganesh <surab...@gmail.com> wrote:

Hi Bert,

Thanks.

Unfortunately it requires modifications to the source. Refer this Pull Request

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/bbf720c7-d4a9-4dff-8143-f8fbc58a559fn%40googlegroups.com.

--
You received this message because you are subscribed to a topic in the Google Groups "OpenPnP" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/openpnp/OyZd4SEXhmA/unsubscribe.
To unsubscribe from this group and all its topics, send an email to openpnp+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CA%2BKNHNyGSyO9jSLXrk%3D_c0ejXJ9eigFqujGSkx2DobbsSi0geg%40mail.gmail.com.

Mike Menci

unread,
Nov 17, 2022, 4:35:39 PM11/17/22
to OpenPnP
A simple 3D printed nozzle and arranging LEDS:  https://vm.tiktok.com/ZMFmLGPs2/

Ravi Ganesh

unread,
Nov 17, 2022, 7:56:14 PM11/17/22
to OpenPnP
Tiktok banned in India. Not able to access :D

Litterio Andrea Guainella

unread,
Nov 18, 2022, 12:51:29 AM11/18/22
to OpenPnP
Hi Ravi,
try to connect here and put TikTok link.
Maybe can works!!
I use this because I haven't tiktok account.

38.png

LAG

Ravi Ganesh

unread,
Nov 18, 2022, 1:41:09 AM11/18/22
to OpenPnP
Thanks LAG.

Hi Mike, Super and very ingenious. What software are you using? OpenPnP?
Can you give the link to the details that you mentioned in the video. I still could not figure how your nozzle is able to pick and place at all. Very clever.



Mike Menci

unread,
Nov 18, 2022, 2:23:59 AM11/18/22
to OpenPnP
Sorry Ravi, I am not the author of this video.
Mike 

Mark

unread,
Nov 18, 2022, 2:53:08 AM11/18/22
to ope...@googlegroups.com

Cool link, but @Mike, please open a new thread for a new topic, this has nothing to do with "Picking Loose parts on table"... 😁

_Mark

Reply all
Reply to author
Forward
0 new messages