question

Lorenzo_pio G avatar image
0 Likes"
Lorenzo_pio G asked Jeanette F commented

Dispatcher Section for a Robot

What is the "pass to" condition of the dispatcher section of a robot used for? I would need to know what parameter I need to act on to tell the robot which combiner to serve.

1665240149279.png

FlexSim 22.1.3
robotcombiners
1665240149279.png (225.8 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

Jeanette F avatar image
1 Like"
Jeanette F answered Jeanette F commented

In our manual you will find this information

"The return value of the Pass To field should be the output port that the dispatcher will pass the task sequence to. If 0 is returned, the task sequence will automatically queue up according to the defined Queue Strategy until the task sequence can be passed to an available dispatcher or task executer. If a value greater than 0 is returned, the task sequence will be sent immediately to the returned port number. If a value of -1 is returned, then the dispatcher does nothing, but rather assumes all dispatch logic is done within the Pass To function using the TaskSequence.move() and TaskSequence.dispatch() methods. "

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

Lorenzo_pio G avatar image Lorenzo_pio G commented ·

If I write such an "if" condition in the "pass to" code, can I tell the robot which output port to serve?

TaskSequence taskSequence = param(1);

Dispatcher current = ownerobject(c);

if (Model.parameters.numCombiner == 1){

return 3;

}else{

return 2;

}

0 Likes 0 ·
Lorenzo_pio G avatar image Lorenzo_pio G Lorenzo_pio G commented ·

1665244805110.png

In my model Combiner1 is the output port number 2 of the robot1. The combiner named "Impacchettamento" is the output port number 3

0 Likes 0 ·
1665244805110.png (225.8 KiB)
Jeanette F avatar image Jeanette F ♦♦ Lorenzo_pio G commented ·

I think you are misunderstanding. "dispatcher will pass the task sequence to " The task sequence is coming form Queue1 and the dispatcher is deciding which task executer will fulfill the task sequence. So, the combiner has already been chosen by that point. Its the queue output logic that you need to look at to adjust.

0 Likes 0 ·
Lorenzo_pio G avatar image Lorenzo_pio G Jeanette F ♦♦ commented ·

Sorry for the misunderstanding, but how can I direct the robot's movement to one or the other combiner?

0 Likes 0 ·
Show more comments