question

Krystian Zawadzki avatar image
0 Likes"
Krystian Zawadzki asked Krystian Zawadzki commented

Transferring items between queues by transporter preserving order

Hello,

I want to transfer items between two queues by transporter, getting order of items in second queue the same as in first queue.

I made two attempts: (1) using sorting by transporter and (2) using list with sorting by query, but I haven't obtained result that I wanted. I attach two models with my attempts - please note the items' labels with order in arrival and how they change between two queues. The input port of processor after second queue is closed for demonstration purposes by OnReset trigger in Shape object.

Regards,

Krystian

P.S. The solution without ProcessFlow is strongly preferable :-|.

transfer_between_buffers_preserving_order-attempt_01-sorting_by_transporter.fsm

transfer_between_buffers_preserving_order-attempt_02-sorted_pulling_from_list.fsm

FlexSim 17.0.13
flexsim 17.0.13transferring items
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
0 Likes"
Joerg Vogel answered Krystian Zawadzki commented

@Krystian Zawadzki, the tasksequence queue stores begun and not begun taskseqeunces. You need to force the taskexecuter to abondon the active tasksequence after loading the last item and switch to the first already begun tasksequence back again. My approach finds the first begun transport tasksequence and the break tasktype of the active tasksequence is forced to get executed even if there isn't any transport capacity is left. (Task variable1 is not zero) The break tasktype redirects the execution to the first broken tasksequence. (task involved2 is a direct reference to this already begun tasksequence). I change the priority of begun tasksquences to let FlexSim choose the begun tasksequence get executed in descending order of priority.

transfer-between-buffers-preserving-order-attempt-3.fsm


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

Krystian Zawadzki avatar image Krystian Zawadzki commented ·

@Jörg Vogel Thank you very much for your help and updated model!

0 Likes 0 ·
Parker S avatar image
0 Likes"
Parker S answered Krystian Zawadzki commented

@Krystian Zawadzki

This can be done by using the first queue's "Send To Port" option to send the items to your item list. Make sure your list has fields for the labels you to need query. You can then use the second queue's "Pull Strategy" to pull items from your list using the ORDER BY queries.

Let me know if you have any other questions!

· 12
5 |100000

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

Steven Hamoen avatar image Steven Hamoen commented ·

@Krystian Zawadzki I have used processflow and attached the model. What I did was change the unload order. I guess you haven't used process flow and maybe it is a bit much to begin with but with process flow it is so much easier to control what your model needs to do that you must learn that as well.

transfer-preserving-order-attempt_TAL.fsm

1 Like 1 ·
Krystian Zawadzki avatar image Krystian Zawadzki Steven Hamoen commented ·

@steven.hamoen Thank you very much for the updated model. But it works as mine (wrongly) - the order in Queue2 is wrong (the items are not according to their number_in_arrival ascending order as they enter Queue1; it also generates "Task Error" on unloading last item :-|).

0 Likes 0 ·
Steven Hamoen avatar image Steven Hamoen Krystian Zawadzki commented ·

@Krystian Zawadzki Yes you were right, problem was that there was still some 3D functionality present. I have now removed the connection to the forklift, removed the sendtoport, use transport and pull functions and I didn't had to reverse the unloading. I think this one works.transfer-preserving-order-attempt_TAL1.fsm

1 Like 1 ·
Show more comments
Krystian Zawadzki avatar image Krystian Zawadzki commented ·

Hello @Parker S

Thank you for your reply. I've done what you adviced me, but now the transporter doesn't move and no transfer between queues occurs. Can you look at my updated model and tell me what's wrong?

Regards,

Krystian

transfer_between_buffers_preserving_order-attempt_02-sorted_pulling_from_list-v02.fsm

0 Likes 0 ·
Parker S avatar image Parker S ♦ Krystian Zawadzki commented ·

It looks like you still need to set up the pull strategy on the second queue, located in the Input section of the properties. You also need to add another field to your list to contain the "arrival_number" lable.

0 Likes 0 ·
Krystian Zawadzki avatar image Krystian Zawadzki Parker S ♦ commented ·

I've done another version with changes according to your reply and items in second queue are still not in right order :-(. The result is the same as in my first version :-|

transfer_between_buffers_preserving_order-attempt_02-sorted_pulling_from_list-v03.fsm

0 Likes 0 ·
Show more comments