So I’ve got this shipping container that I want filled with boxes (It’s an assembly). The problem is, the boxes arrive in bundles of three on an AGV. Now I know how to separate bundles if I only do that, and I know how to fill the container with boxes if they arrive one by one, but… I don’t know how to do it both in one go. Even though I feel like I’ve nearly solved it, I’m stuck…
This is only an experiment, so right now there’s only six available spots in the assembly - meaning it only needs to receive two batches before it’s full.
Here is the current process I’ve cobbled together, I’ve marked the area where I receive parts and work on the assembly in pink.
Second batch is also separated and placed correctly. The assembly is now complete and everything should just move on… But the process gets stuck on ‘Contruct’. It doesn’t move on to ‘CheckAssembly’ to see that the assembly is ready, everything stops. I don’t quite understand the output message, or rather, what to do differently about it. Any suggestions? I probably don’t use the statements correctly.
(PS. Don’t mind the human, he’s only there to assist the AGV with unloading boxes. Also the clipping is not important right now…)
Maybe you need to add a different name assembly variable name in the construct? I think the error message comes from that you are adding more than one product to the variable CurrentAssembly, so it becomes a list.
Hey Este. I changed the name and the process went a little further. However it didn’t pass ‘CheckAssembly’, whose condition is still ‘False’. So instead of escaping the loop, the AGV went and picked up a third batch which it just left on the ground. Then the process got stuck, with the same output message.
The solution isn’t scalable. I increased the number of box slots, but it stops after batch 3. I suppose I would have to continue adding new and uniquely named assemblies for each batch maybe, but that isn’t very practical…
But, I will try have look at your suggestion as well and find a better solution if I can. Because while I’m happy that it now works again, I’m not happy with the way I did it (It’s getting out of hand ). I only have a trial licence though, and tomorrow it’s all spent…
Actually nope, it didn’t quite work still… After having filled the three containers, it broke down on the second attempt to fill the first container… So I’ve changed it to this, and now it works:
Had to change CurrentAssembly to tempAssembly0 (Forgot that I had to leave the actual assembly alone). Also had to clear the tempAssebly lists after use, like you mentioned… Wasn’t enough to just remove them.
Where did you learn how to use construct assembly,check assembly, using list to work with assembly? Is there a tutorial out there anywhere on how to use them? Does this knowledge come from learning python API?