Assemble Subassembly in Assembly

Hello folks,

i want to build a closed conveyor loop where an assembly is build up on a workpiece carrier (WPC) and will be removed from the WPC at the end of the loop. Then the process starts again with this empty WPC.
For this i have 2 assemblies:

  • The main assembly
  • The assembly with WPC and the main assembly

Due to other processes located outside the conveyor i think i will also need subassemblies for those processes.
The product structure will look something like this:

MainAssy (assembly)
Part1 (product)
Part2 (product)
Part3 (product)
SubAssy1 (assembly)
Part5 (product)

SubAssy1 (assembly)
Part10 (product)
Part11 (product)

AssyWorkpieceCarrier (assembly)
WorkpieceCarrier (product)
MainAssy (assembly)

Now i run into the following problem:
I produce MainAssy outside the conveyor and transport it onto the WPC located on the conveyor where i build up the AssyWorkpieceCarrier.
In the next process on the conveyor i want to add the next step of MainAssy but this added product is not placed and attached correctly to the MainAssy.

I’ve attached a sample-layout where the problem occurs aswell after i add the milkpack.
Montage Sub Assembly.vcmx (1.2 MB)
The MainAssy on the WPC should look like this:

But after adding the milkpack in the corresponding process the milkpack is not attached to the blue box as it should be. It is not even attached to the pallet. Instead it is attached to some (fictional!?) component.

How is it possible to build up the MainAssy inside the AssyWorkpieceCarrier ?
I’ve searched the forum, template layouts and other layouts but i didn’t found any solution for this problem.

Can please someone give me a good advise on how to build up such assemblies or how to build up the product structure so that i am able to do this?

Greetings
Andreas

Nobody? :confused:
I think that it is simply wrong assigning of variables but i am not able to find my mistake.
I also tried to combine 2 GetAssemly-statements to get access to the subassembly of the assembly but was not able to do so.

I think I got it fixed. The main changes are:

  1. In BuildSubAssembly you don’t need to use Construct statement, just let the TransportIn make the assembly for you.
  2. In AddMilk you need to first get the sub-assembly product into a variable so you can use GetAssembly and TransportIn on that sub-assembly instead of the main one. I used GetAssembly with the list output option, which works here because you only have one sub-assembly.

With a more complex main assembly you may have to use Detach and Assign statements to get the specific sub-assembly product into a variable, and that is pretty fragile logic against assembly state and structure changes.

Montage Sub Assembly fixed.vcmx (1.2 MB)

1 Like

Hey Tsy,

thank your VERY MUCH for your answer. I was able to recreate your steps and adapt it into my big layout. :grinning:

Greetings
Andreas

1 Like