question

Yifei Wang avatar image
1 Like"
Yifei Wang asked Brandon Peterson commented

How to assign each transporter to be in charge of different queues?

Hi,

Please see my model. Based on this model, I would like each transporter to be in charge of multiple queues. For example, I would like the transporter 1 to be in charge of moving all desired objects from racks to queue 1and 2. Transporter 2 is going to be in charge of moving all desired objects from racks to queue 3 and 4. Can someone help me with this? Thanks!

Note: one queue may need multiple kinds of itemtypes. Please refer to the model.

newmodel.fsm

FlexSim 16.1.0
queuesforklift
newmodel.fsm (28.4 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.

Brandon Peterson avatar image
5 Likes"
Brandon Peterson answered Brandon Peterson commented

Yifei,

On the racks in your model you can use the "Center Port By Case" picklist option in the Use Transport field. In the field "Case Function" enter the word "port". Then you can set the cases 1 and 2 to return the number for the center port connection to transporter 1 and the cases 3 and 4 to return the number for the center port connection to transporter 2. Doing it this way will not be affected by the itemtype of the flowitems.

Hope this helps!

Brandon

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

Adrian Haws avatar image
1 Like"
Adrian Haws answered Yifei Wang commented

Hi Yifei,

We were able to find another solution using the Send to Port in rack properties with "Push to Task Sequence List" instead of "Center Port By Case." Then in that list add another Expression Field called "unloadStation." So each of these racks will send the destination of the object to a list. Then in each transporter in the OnResourceAvailable trigger click on "Pull from Task Sequence List" and enter a Query to determine which partitions to pull from. So for Transporter1 it would look like this:

  1. WHERE unloadStation = node("/Queue1", model()) OR unloadStation = node("/Queue2", model())

We ran the model and it seemed to work just fine according to what you described. See attached model and let us know if you have any questions!


1001-newmodel-1.fsm (29.9 KiB)
· 4
5 |100000

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

David Besson avatar image
1 Like"
David Besson answered Yifei Wang commented

You could:

  1. for each Queue: add a Dispatcher and connect it with a center port
  2. for each Dispatcher: connect the corresponding Transporters
  3. for each Rack: change the transport field as follow: "centerobject(destination, 1)"

See attached model.

990-newmodel-r1.fsm


990-newmodel-r1.fsm (30.2 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.