question

Scott M2 avatar image
1 Like"
Scott M2 asked Scott M2 commented

Problem: Idling TE with work to do.

sorting-problem.fsm

I've got a model that brings boxes into a set of queues to be stored until a later time when they can be sorted into a different set of queues.

Every now and then, for reasons I haven't been able to find, the TE will not make any moves to move boxes to the sorting queues. As in the picture I copied, there are eight (8) boxes that are queued to move into the sorting queues but the TE is sitting at Idle.

I've got a bit of custom coding controlling this model where I could have made a mistake, but I can't figure out why (seemingly at random) the TE just won't bring boxes to sort.

Thanks in advance,

Scott

FlexSim 18.0.6
queuetask executersorting
gfsgv.png (191.2 KiB)
sorting-problem.fsm (41.6 KiB)
· 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.

Joerg Vogel avatar image Joerg Vogel commented ·

@Scott M2, please document your code. "A bit of custom coding" is obviously an understatement!

You open the input of the queue Outgoing Table 56 at distinct times only. The transport has to wait if there is nothing else to do. You have set a maximum content of 21 there too. This means you allow only 21 transport tasksequences to be executed at once to this queue.

Perhaps you can attach smaller models. They are easier to analyze, if you don't document your code or describe your model a bit more in your question. A chart would help!

For other answerers: the sorting algorithm is in "intermediate 56" queue Send To function. It is the smallest object between the two queue fields named rack. The queue "Outgoing Table 56" is the lower yellow queue left. The triggers there control the input. The distinct times are in the table Orders.

0 Likes 0 ·
Joerg Vogel avatar image Joerg Vogel commented ·

Additional hint: Please take into account that there is time gap between creating of transport tasksequences and their execution. This leads to the fact that the rest capacity of a queue consists of the current content and the already created transport tasksequence. There is also an uncertainty of transports to and from the queue away. You don't know exactly when which transport gets to execution.

0 Likes 0 ·
Scott M2 avatar image Scott M2 Joerg Vogel commented ·

sorting-problem.fsm

@Jörg Vogel, I apologize for my model being unclear. For more clarity, I've uploaded another screenshot and model with some names/comments in the code if that helps.

I understand that my Outgoing table is on a schedule; the boxes staying in the red set of queues (the "Sorting" set) isn't where the problem lies. My problem is when the boxes are staying in the green set of queues (the "Storing" set) while the transporter is idle with no orders to bring anywhere else.

The boxes are meant to be stored first in the green area in whatever order they come in, and then be sorted into the red set of queues when the transporter is not doing anything else. The transporter performs this function for much of the simulation run, but sometimes, like the first screenshot, it just doesn't do anything.

I hope this clears up what I'm getting at.

0 Likes 0 ·
sorting-problem.fsm (38.5 KiB)
n89hv.png (108.8 KiB)

1 Answer

·
Raja Sekaran avatar image
2 Likes"
Raja Sekaran answered Scott M2 commented

@Scott M2

I think the reason is, you are sending the first message at sim time 350 to the "outgoing table" queue that opens the input port. That time forklift still has 4 items to move to the green set of queues. So when transporter moving these 4 items to the green set of queues, these 4 items will be assigned directly to send to the "outgoing table" queue based on the existing logic which you have defined in the Send To Port in the green set of the queues.

Also In the OnEntry trigger of "outgoing table", it closes the input port of the queue when the count reaches 20. So after the forklift transfers 20 the items from the sorting queues to "outgoing table". It again closes the input port of the "outgoing table" queue. Because of these, some items are kept on accumulating in storing queues.

You can see at sim time 493, 4 items are waiting in the storing queues, since these 4 items are directly assigned to the "outgoing table" queue. Also at this time "outgoing table" input port is closed. That is the reason Forklift is idle at this time.

If you want to directly transfer the all items from storing queues to sorting queues, just update the Send To Port logic. I have modified the logic in the Send To Port in all the storing queues. This will transfer all the items from storing queues to sorting queues.

Hope this helps.

sorting-problem.fsm

Thanks.


sorting-problem.fsm (38.8 KiB)
· 1
5 |100000

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

Scott M2 avatar image Scott M2 commented ·

@Raja Sekaran

Thank you, I was able to find the root of the problem with this information. I needed to keep the flexibility of pulling from both sets, but I was able to fix the problem by editing the decision logic to make sure there aren't extra boxes that can't be moved.

I appreciate the help.

0 Likes 0 ·

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

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