Allocating nearby AGV using process flow?

Allocating nearby AGV using process flow?

rajankur6494
Advocate Advocate
44 Views
9 Replies
Message 1 of 10

Allocating nearby AGV using process flow?

rajankur6494
Advocate
Advocate

[ FlexSim 23.1.3 ]

Hi Team,

In my model, it is allocating the AGV alternate basis but the requirement is the nearby available AGV.

How can I change it?

Please find model here.

Thank you!

Allocating_AGV.fsm

0 Likes
Accepted solutions (1)
45 Views
9 Replies
Replies (9)
Message 2 of 10

jason_lightfootVL7B4
Autodesk
Autodesk
Accepted solution

Try adding this query to the acquire activity:

ORDER BY distancetotravel(value,Puller.item.up) ASC
0 Likes
Message 3 of 10

rajankur6494
Advocate
Advocate

@Jason Lightfoot

Sure, I will check on it.

Also, would like to add 1 point here. Is it possible to assign returning AGV to pick if it is nearby?

The reason I am asking it because AGV remains occupied until released.

Thank you!

0 Likes
Message 4 of 10

jason_lightfootVL7B4
Autodesk
Autodesk

You can Release it before it's finished returning to a park position and them pre-empt that return job by issuing a pre-empting task sequence with a higher priority - if that's what you want to do.


Most people's use of the Resource construct is to simplify/combine together the concepts of zones/ lists, references and task executers for a seemingly more complete solution, but the truth is that these concepts are still operating in the background ready for you to customize and override behaviors. You may choose just to implement those behaviors yourself and avoid the use of Resources entirely.

0 Likes
Message 5 of 10

rajankur6494
Advocate
Advocate

@Jason Lightfoot

Appreciate your quick response!

It is working fine. But I would like to understand it better for future reference. Can you provide clarity over following:

1. What does it mean by value here since it seems standard keyword to refer?

2. I think in Puller.item.up, Puller is used to refer token.resource. Is it correct?

Thank you!

0 Likes
Message 6 of 10

moehlmann_fe
Explorer
Explorer

A Resource that refers to a group of objects actually just a list that exists in the background. Both value and puller are list concepts and might be easier to understand if you think about the Resource as a list as well.

1. The value is the thing on the list the query currently evaluates. For example "WHERE value.Type == 3" would filter for objects with a Type label of 3. In both the Acquire and Pull from List activities, if you type a string that is not some keyword into the query, will interpret it as a label on the value. So normally you'd only type "WHERE Type == 3". So you only really ever use value in cases where the actual object reference needs to be passed into a function.

2. Similarly, puller refers to the 'thing' that is trying to pull something from the list. In the Pull from List activity the user can specify the puller (the token by default). In an Acquire activity the puller is always the token.

0 Likes
Message 7 of 10

rajankur6494
Advocate
Advocate
Thank you @Felix Möhlmann!

It helps a lot going further.

0 Likes
Message 8 of 10

rajankur6494
Advocate
Advocate

@Jason Lightfoot

It is little difficult to follow.

Can you help me to build it here?

1702990674525.png

I have highlighted the return activity with yellow.

Prioritising_Return_AGV_to_Pickup.fsm

0 Likes
Message 9 of 10

rajankur6494
Advocate
Advocate
@Felix Möhlmann

Also, I have 1 question to ask. As you mentioned puller is the token, is it okay if we are using token instead of puller.

i.e.

token.item.up

I tried using it but it was not working.

Thank you!

0 Likes
Message 10 of 10

jason_lightfootVL7B4
Autodesk
Autodesk
No, as Felix says 'puller' is the token so you should refer to that. If you used Lists instead of Resources then you have flexibility to determine the puller yourself, but even then you don't reference 'token' in the mixed use field when using a query expression - you use 'puller'
0 Likes