question

Tushar H avatar image
0 Likes"
Tushar H asked Tushar H commented

Operator holding items and picking other items

Hello All,

In this model i used multiple operators to transfer the items but after some time operator not unloading items and its holding that part and moving to next task.

I want to do that first operator complete that task and move to next task.

PFA model operator movement.fsm

Thank you in advance

FlexSim 24.1.1
operatoroperator unload task
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 Tushar H commented

When a pallet moves past the exit transfer, the transport task generated for that pallet is aborted by the default behaviour. This brings two issues with it:

- The preempting task sequence only has a single task in it, resulting in an error because the trigger code assumes that the operator will only receive transport task sequences with five tasks. So we need to check for the number of tasks in the task sequence.

- We don't want to abort the task sequence if the box was already taken from the pallet. Thus, when a task sequence with a single task is received (the abort TS) and the operator is currently holding an item, we change the preempt value of the TS so the transport task is not aborted.

- Additionally, you added multiple exit transfers, yet the trigger code always assumes that the pickup happens at the first one. Use the information about the pick location from the first travel or load task to send the operator to the correct location.

if(taskSequence.tasks.length == 5)
{     Object pallet = taskSequence.tasks[2].involved1;     taskSequence.tasks[2].involved1 = pallet.first;     taskSequence.tasks[5].involved1 = pallet.first;     taskSequence.addTask(TASKTYPE_PICKOFFSET, pallet, taskSequence.tasks[1].involved1, 1, 1, 0);     taskSequence.tasks[6].rank = 2; } else {     if(current.subnodes.length > 0)     {         // Ignore abort task         taskSequence.preempt = 0;     } }

Just to say it again. This code is tailored to exact situation in the model. If you make alterations or add for example a time table or other tasks to the operators, the logic will break and need to be adjusted.

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

Tushar H avatar image Tushar H commented ·

In this code (taskSequence.tasks.length == 5) 5 means number of queues, right?


0 Likes 0 ·
Felix Möhlmann avatar image Felix Möhlmann Tushar H commented ·
No, it's the number of tasks in the default transport task sequence generated by fixed resources when the "Use Transport" option is active.
0 Likes 0 ·
Tushar H avatar image Tushar H Felix Möhlmann commented ·
Ohh Got it. Thank you so much for your quick support
0 Likes 0 ·