Help with Bin Picking

Hi. So, I need to understand how to create a Bin Picking system similar to the one in this video:

I know about the Bin Picking layout and I know it’s all programmed with Python, but I wish there was another way to do it or any tutorial explaining it step by step. Any feedback is welcome.

Hi,
if you want an easy way to simulate a BinPicking process, you could use Process Modelling with an assembly.

You can define an assembly in the ProductTypeEditor and place all your products in the same step. If you change their orientation, it can look like they are randomly placed in the box. Be careful with the OrderIndex, so that the robot picks the products on top first.

Then you can define which product goes on which conveyor with the Product Filter.

Check the Academy if you’re not sure how the Assemblies in PM work : How to do Assemblies in Process Modeling | Visual Components Academy

Here an example :
BinPicking_with_PM.vcmx (1.9 MB)

As I said, it’s a very simplified way. So it doesn’t take into account physics or the random side of bin picking.

3 Likes

Hi Tilma,

First of all, thanks for your reply!

In my situation, I need to pick many tiny screws, so it is harder that way. Nevertheless, that is definitely a way that can be useful in some scenarios, I appreciate it.

Hi,
you can also use the BinPicking Layout
grafik

The Python Script is in the robot pedestal, but you don’t necessarily need to change it.
You can delete the rods and replace them with your components. Write “BINPICK” in front of your components name, place one on top of the box and use the Pattern function to create more of it.
When you begin the simulation, the Python script should add a Physics behaviour and pick frames to this products.

3 Likes

Hi. Using the original and adding “_ BINPICK _” works, yes. Thanks for your help, Tilda!

Hello Tilma.

Regarding this example you sent me with assemblies, do you know how I could release the parts to physics instead of placing them in the conveyor?

Thanks in advance.

Hello Gustavo,
If you want to release parts in physics, you can use the “Realease to physics” property of the robot :

This doesn’t work with Process modelling though, you’ll have to programm the robot (or do it with a Python script : Python Robotics - Programming a Robot with Python | Visual Components Academy).
BinPicking_withPhysics

1 Like

And if you don’t need precise physics but just that it looks a bit like the products are falling, you could still use Process modelling and fake it with an Interpolation transport. It’s a lot quicker and easier :

1 Like

Since I’m using process modeling, I might go for that interpolation transport solution, even though it’s not perfect. Thank you once again for helping.