Disassemble - Machining - Assemble / Of Higher Complexity

My dear community,

I have been coming here for a while now, and have always got the answers to my questions.
Until now, I have stumbled across an issue that I have not been able to solve.

Hopefully you guys can help me.

I want to create an simulation of the following scenario:

• Incoming pallet, with layers of products. Separated by sheets. 

• Only the products should be processed in a machine. 

• Processed parts should be located in the same pattern into an empty pallet with a sheet in the bottom.

• When the first layer is empty of products, the sheet needs to go to the "processed product pallet". 

• Then continue with the second layer of products (Inserting them into machine process).

• Repeat this loop until the pallet of "unprocessed parts" is empty. 

I will share what I have been able to create.
Hopefully it will be possible to achieve a solution for this with only process statements.

Disassemble_Machining_Assemble.vcmx (2.0 MB)

Best regards,

you were almost there!
If you want the sheets and products to follow different process steps, it’s best to put them into 2 different Flow groups. Then you can define in your flows that the products go through the machine and the sheet directly to the next pallet.
And also you should try to always add product filters to your assembly slots in the Assembly Editor so that the robot doesn’t place the wrong product at the wrong place :

Disassemble_Machining_Assemble_v2.vcmx (2.0 MB)


I had a go as well, and ended up redoing almost everything. Not sure if the end result is anymore what you wanted but it works :smiley:

I simplified the whole flow to use only one assembly product type, which then lead to complications in defining the flow and products going into wrong assembly slots & processes so I had to tediously define the product filters into the assembly slots etc.
At some point I was suspicious if the conveyors are somehow messing up the positioning of the products (there has been such a bug before) so I replaced those with interpolation transport.

Disassemble_Machining_Assemble_Fixed.vcmx (1.4 MB)


Thank you both so much, highly appreciated!

I forgot to mention a crucial aspect of the simulation.

The robot needs to change its head to be able to process the sheet movement. Sequentially, change back to operate the products.

Does this mean I need to add an additional flow?

Have a great weekend!


To change the tool the robot is using, you just have to define in the Transport links which one you want (write the name of your tool component) :

(This is an example from the eCat → Layouts → Assembly Cell Cobots)

You can find more information about changing Tools in the Robot Transport Controller manual from page 18-19:


Once again, thank you!

If I would like to create the following:

  • Two pallets with incoming products.

  • Two incoming empty pallets.

  • The robot fills up the first “pallet”.

  • Sequentially, start filling the second “pallet”.

Do I need to create an entirely new flow group and an assembly?
Or is there a smarter way?

I attached the file, so you can get a visualization of my thought!

Disassemble_Machining_Assemble_v3.vcmx (1.6 MB)

Thank you!


you could use SendSignal and WaitSignal statements to empty or fill the pallet one after the other instead of both at the same time. In the process tab, you can add a boolean signal in one of the process and use it to signal when the process is over and the next one can begin. Here is an example :
Assembly_alterning.vcmx (2.3 MB)

1 Like

Thank you so much for the help Tilma.

I wish you great day!