question

Rania A avatar image
0 Likes"
Rania A asked Rania A commented

ASRS QUEUE PRIORITY PROCESS FLOW

Hello,

I have an end-of-aisle system (two racks) with two Queues. One Queue on each side of the aisle.

I Want to make this sequence of tasks: my ASRS first picks up a box from Queue1 stores the box, then proceeds to a retrieval task. The drop points of the retrieval task are either Queue3 or the conveyor. After this I want my ASRS to do the same procedure but starting from Queue2

The flow is: Q1-STORE -RETRIEVE-Q3/CONVEYOR-Q2-STORE-RETRIEVE-Q3/CONVEYOR

I have made the process flow for the first store and retrieval task but it's like the ASRS doesn't want to follow it.

I made a push to list with the items from Queue1 and Queue2 and I assigned to them type values. In the first pull to list, I put a condition of pulling items that their type is 1 with the aim that the ASRS will start the procedure from Queue1 but this doesn't happen. It only happens if the Inter-arrival time of Queue2 is later than the Queue1, but this shouldn't be the way to fix the problem.

I am attaching my model with the process flow, any suggestion will be very helpful.

Thank you.

TEST SIMPLE.fsm

FlexSim 20.0.10
processflowtask sequenceasrs vehiclequeue strategy
test-simple.fsm (78.5 KiB)
5 |100000

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

1 Answer

Felix Möhlmann avatar image
0 Likes"
Felix Möhlmann answered Rania A commented

If you want to control the item movement with a process flow you should start by deleting the connections/logic in the 3d model (except the connections from/to the sources/sinks of course), since those currently control the flow of items.

The "Use Max Wait Timer" option in the first Pull from List activity doesn't seem to make sense because you don't have any logic in place to handle the case where the token couldn't pull an item. If you run the model right now, exactly that happens and the token gets consequently stuck in the load activity.

Lastly, in the Unload activities you are referencing a group, when FlexSim is expecting an object. If your goal is to use a random object from those groups, then you can achieve that with the following command:

Group("groupName")[duniform(1, Group("groupName").length, getstream(activity))]

Group("groupName")[N] accesses the Nth object in the group and duniform(...) returns a random value between 1 and the number of objects in the group.

· 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.

Rania A avatar image Rania A commented ·

Thank you so much! I'll give it a shot; it makes perfect sense that the process flow cannot control the items due to the connections in the 3D model. As for the unload activities I was referring the groups as the destination I want my ASRS to unload the items, it seems that there I have a problem understanding the options, however I think once I manage to control the ASRS I will be able to fix that too.T

Really appreciate your time :)


1 Like 1 ·