question

Amanda Prado avatar image
0 Likes"
Amanda Prado asked Amanda Prado commented

Performing in batch

AGV_Doubt.fsmHello Community,

I am in the initial steps of developing a transportation system. I am having difficulty with a simple stage, as I am unable to make my AGV transport the batch as configured in the queue.

The model consists of the following: The AGV collects 33 scanners at the collection point (Queue Scanners). This number will be configured via parameter in the future to find an ideal number, but for now, I will leave this value deterministic just to start.

Well, the "Scanners" queue is configured to perform in batch, so the AGV should pick up 33 scanners and take them to the first door. However, the AGV carries 25 items and not 33. I would like to understand the reason for this behavior.

Another point of doubt is that in the AGV itself, I configured "Load" and "Unload" - Batch Processing as shown in the screenshot below.

1744915566846.png
1744915579665.png
I created the "batch" label for this batch of 33 items, with a cycle time of 30 seconds for the batch. For what reason, after the first loading, when the AGV collects 25 items, does the "batch" label show the value 9?

1744915704288.png

What I would like to do is very simple. Besides understanding the behaviors mentioned above, I would like to make my AGV collect 33 items from the queue and distribute them according to the "Round Robin" rule to the connected queues.

Thank for everyone.

FlexSim 25.0.0
agvbatchperform batching
1744915566846.png (21.4 KiB)
1744915579665.png (19.4 KiB)
1744915704288.png (9.5 KiB)
agv-doubt.fsm (190.7 KiB)
· 2
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

Joerg Vogel avatar image Joerg Vogel commented ·
Once you collect a batch it does not become a new entity. Each item behaves like a single item. It gets released, it is sent to a port. A tasksequence is created for transport. A tasksequence is dispatched. Each of these steps depends on conditions, which must be fulfilled. A receiving object must be available for example. A conveyor entry transfer allows only one item in transit per default. You can change the number of items in transit in this transfer object to receive more items simultaneously. It is up to you to analyze if you have enough receiving objects and spaces in them to transport 33 items simultaneously.
0 Likes 0 ·
Amanda Prado avatar image Amanda Prado Joerg Vogel commented ·

Sorry Joerg, but I couldn't understand your explanation.


0 Likes 0 ·

1 Answer

Felix Möhlmann avatar image
0 Likes"
Felix Möhlmann answered Amanda Prado commented

The queue has a maximum content of 100 and sends the items by round robin. So there are 25 items bound for each of the processors. Because the "Break To" option is set to "Same Destination", the TE will only load items that have the same destination as the previously loaded item. This limits the first trip to 25 items.

Either change the "Break To" option to allow 'mixed' transports. Or send all items in a batch to the same destination. Or increase the maximum content of the queue.

The "batch" is a helper label that keeps track of many items can be loaded in 0s before the cycle time is used again. It is offset by one in a way, because it gets set to 33 after the first item is loaded and is reset when it reaches 1. The label names should thus be different for the load/unload times. Otherwise they share the same variable which will lead to incorrect times when partial batches are transported.

· 3
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

Felix,
Regarding this : "Either change the "Break To" option to allow 'mixed' transports." Could you explain how I allow TE to transport 'mixed' transports? Because there is no such option.

1745339363829.png"Or send all items in a batch to the same destination" - This is exactly what I would like to do.

0 Likes 0 ·
1745339363829.png (13.7 KiB)

The 'mixed' transports would require to edit the Break To code directly.

1745341776806.png

I think the overall easiest (especially to follow) solution for releasing and moving the items as a batch is to use a list and Process Flow.

release-as-batch.fsm

0 Likes 0 ·
1745341776806.png (49.6 KiB)
Amanda Prado avatar image Amanda Prado Felix Möhlmann commented ·

Thank you for the explanation.

I knew that developing a solution using PF and list would be a possible path, but I wanted to develop it directly in 3D, without the need PF, because I thought it would be something "simple" to do, but from what I saw, it is not that simple.

Anyway, I tested the script that you suggested, but it did not work as I needed. I will continue using PF, as per your suggestion.

Anyway, here is my suggestion for the next versions, some configuration that allows TE to load and unload a complete batch per destination, as required by this discussion.

Thank you very much for your help.

0 Likes 0 ·