Anylogic simulate material stored in containers

2019-08-26 09:49发布

问题:

I'm trying to simulate materials stored in containers on a shelf where the containers slide forward if you remove the first one.

Example: A container can hold 10 elements and is filled by the batch-block. The container moves to the shelf(conveyor) where it should stay until it's empty. The assembly-block should take one piece out of the container and assemble the product. If the container is empty it can be dropped off the conveyor.

I did try to model the shelf as a conveyor, which does work ok, but if someone has a better idea i'm happy to hear it.

My biggest problem ist the dropoff part. As you see in the screenshot the container is taken out of the conveyor completely, the dropoff-block takes 1 element out of the container and pushes the container containing 9 more parts into the sink.

Does anyone have an idea for this?

回答1:

What you want to do is not possible with the technique you are using..

Yours is a design question so it would take too long to answer with all the details, nevertheless, this is how I would do it using the following structure:

In the split you will receive the parts and create a copy of the part that will go to the wait block, and the original will go to the batch (or vice-versa). Once the box arrives to the end of the conveyor, you free the partsInsideBox that belong to the box that is in the conveyor.. you have to create the logic for this. The parts will then go to partsReadyToUse and when that queue is empty you have to also create the logic to move the conveyor to have a new box at the end of the conveyor and free the partsInsideBox again.... and so on.

You see that the box with all the parts will be going to sink2, but it doesn't matter because you already used your parts copies in the assembler, so all good.

there may be better ways to do it, but i find this one having the best compatibility with animations if you want to do one