question

Howard avatar image
0 Likes"
Howard asked Jeanette F commented

Operator to continue to load before the processor finish

I want the operator to not wait until the processor finishes and continue to load different part number from the QueueIn to the next QueueX based on the GlobalTable lookup.


1712846527550.png

1712846844088.png

1712846576916.png

If I do the followings, it errors out.

  1. Uncheck the "Dispatch and Wait" in the Create TS
  2. Uncheck the "Wait Until Complete"
    1. Travel to Item
    2. Load Item from QueueX
    3. Travel to QueueX
    4. Unload Item at QueueX

globaltabledemo[hr] [GlobalList] 20240411 V0.fsm

FlexSim 24.0.2
process flowload unloading
· 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.

Jeanette F avatar image Jeanette F ♦♦ commented ·

Hi @Howard, was Felix Möhlmann's answer helpful? If so, please click the "Accept" button at the bottom of their answer. 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 comment back to reopen your question.

0 Likes 0 ·

1 Answer

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

Since you only have a single token right now that runs through the routing table row by row, the entries in the table necessarily have to happen in that exact sequence. To allow for the order of operations to vary, create one token per row and syncronize them through the list.

I modified your model so only QueueIn2 and the processors push to the list (when the item needs to be moved via Process Flow). I also changed the way the process time is read by assigning the row number of the current task to a label on the item.

globaltabledemohr-globallist-20240411-v0-fm.fsm


· 5
5 |100000

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

Howard avatar image Howard commented ·

@Felix Möhlmann

Your way of having Pull from List to synchronize with the list is good!

I am having an issue when I change the source quantities. The Product5 quantity changes from 1 to 2 in the Source2.

1712940719428.png

The operator is taking first box(Product 5) to Queue5 and then second box(Product 5) to QueueOut2. It supposed to take Product5 to Queue5 and then to QueueOut2.

1712940698485.png

globaltabledemohr-globallist-20240411-v0-fm V0.fsm

0 Likes 0 ·
Felix Möhlmann avatar image Felix Möhlmann Howard commented ·

The Process Flow was build on the assumption that each row in the routing table would only be used once. There is no logic in place that dictates that a "Product5" item needs to always use the first row first.

A better approach then might be to create one token per item that enters the input queue. This token then gets the first row for that product type from the table and manages the entire process until the item enters the output queue. To that end, I added an additional column that denotes which row follows the current one.

globaltabledemohr-globallist-20240411-v0-fm-v0_1.fsm

0 Likes 0 ·
Howard avatar image Howard Felix Möhlmann commented ·

Hi Felix, @Felix Möhlmann


I ran into another issue if I add more destination to Product5 on Row 2 in the GlobalTable2_Routing.

1713204304818.png

Now the item just go back and fore the processor and the queue itself now.

globaltabledemohr-globallist-20240415-v0-fm-v0_1.fsm

0 Likes 0 ·
Show more comments