question

Jeoung Ho D avatar image
0 Likes"
Jeoung Ho D asked Nathan B14 commented

my model just stop running.

my model just stop running at certain point.

there's no any system console about wrong point, so i see that it's not my problem. but it's not working...

please help me! thank you!


3f asis.fsm

FlexSim 21.0.8
model stops running
3f-asis.fsm (547.4 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.

Nathan B14 avatar image Nathan B14 commented ·

Hi @Jeoung Ho D was Felix's answer helpful? If so, please click the "Accept" button at the bottom of the one that best answers your question. Or if you still have questions, add a comment and we'll continue the conversation.

If we haven't heard back from you within 3 business days we'll auto-accept an answer, but you can always unaccept and comment back to reopen your question

0 Likes 0 ·

1 Answer

Felix Möhlmann avatar image
0 Likes"
Felix Möhlmann answered

Because you are sending the items out through random ports (by percentage), many items are send to racks that don't actually have a slot to store them in (matching labels requirement). As a result a lot of the items don't actually get pulled and remain in the queues. Eventually the queues end up being totally filled with these items. As no new items can enter the queues the model comes to a stop. You can also see this in the sources that lead directly into the racks. Many items will stay in the sources, as they couldn't be assigned a slot in the rack they were send to by the round robin.

If you want to keep the distribution of items between the racks the same, you could either write some custom code in the form of

if(item.Type < 25)
{
    // Percentage Code for the respective ports
}
else
{
    // Percentage Code for the respective ports
}

The code inside the brackets could be copied from the current "by percentage" option, with the percentages scaled to 100% in total for each bracket.

Alternatively, you could push the items to a list in the "Send to Port" option. You could vary the partition by assigning a label based on the current percentage distribution in the entry trigger and use this to determine the list partition. Then each rack(-pair) would only pull from the respective partition (i.e. one partition for turkey1+turkey2 and so on).

A third option might be to not send the items directly to the rack. Instead have a queue for each pair of racks, from which the correct rack can then pull the item (first available).

5 |100000

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