question

Manuela T avatar image
0 Likes"
Manuela T asked Joerg Vogel commented

Hello all. How can I block a transporter when other is moving?

FlexSim 21.1.0
transporterflexsim 21.1.0
· 2
5 |100000

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

Manuela T avatar image Manuela T commented ·

both are connect with a dispatcher

0 Likes 0 ·
Manuela T avatar image Manuela T commented ·

Could you check my model? I have 2 transporters but I can't have the both moving at the same time. ACAB1.fsm

0 Likes 0 ·
acab1.fsm (112.9 KiB)
Joerg Vogel avatar image
0 Likes"
Joerg Vogel answered Joerg Vogel commented

You do this with a process flow. A single token can only acquire one of the available transporters of the resource. You can order the transporters by input or by state. In my example I order them by input.

I push the transport tasksequences by the On Receiving trigger of the dispatcher onto a tasksequence list. The token pull an available tasksequence of the list and dispatch it to the acquired resource for execution. After the the transporter have got available again the token loops back to pull another tasksequence and chooses a resource.

acab_jv.fsm


acab-jv.fsm (122.2 KiB)
· 3
5 |100000

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

Manuela T avatar image Manuela T commented ·

Thanks!!! :D

0 Likes 0 ·
Tatiane G avatar image Tatiane G Manuela T commented ·

@Jörg Vogel and @Manuela T, Hello!!


Jörg, your model are doing exactly what Manuela wanted. The use of process flow was a good idea to simplify the logic.


I only noticed that when I execute your model in FlexSim 21.0.5, one error occurs on time 88.925448. The error is: "time: 88.925448 exception: Error: Bad task sequence reference in dispatch task sequence activity "Dispatch TS" in process flow "ProcessFlow""


This error happened because when the transporter went to pull the line from the list, it happened to be na information that had already been pulled by the other transporter and is already running in the model.


This error doesn’t affects the results of the model, but one solution for it doesn’t show anymore is to increment a Query in “Pull from TS List” with the criterion of not pulling fields with reference 0x0 from the TS List, as shown in the picture below.


1 Like 1 ·
query.jpg (92.3 KiB)
Joerg Vogel avatar image Joerg Vogel Tatiane G commented ·

Yes, this something to improve. I would test if “token.ts“ has got a valid length to proceed in current process flow. Otherwise I divert it to a wait for event branch, that checks if TS List gets populated again and then the activity releases the token to the pull activity again. If you don’t divert it in a decide activity you can create an infinite loop, because there is a delay activity missing in the process.

1 Like 1 ·
Jeanette F avatar image
0 Likes"
Jeanette F answered Manuela T commented

I am assuming you would like one to be blocked when the other is moving within a proximity. Check out the Proximity Agent System. I suggest you look at post in the forum too that involve Proximity Agent System for examples.

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

Manuela T avatar image Manuela T commented ·

Thanks for reply, but in my case isn't about proximity.

0 Likes 0 ·