Distance to travel: Task Executer to Flow Item in Rack

zbarachki
Enthusiast Enthusiast
0 Views
4 Replies
Message 1 of 5

Distance to travel: Task Executer to Flow Item in Rack

zbarachki
Enthusiast
Enthusiast

[ FlexSim 23.2.1 ]

Hi,

My model has multiple flow items stored in a rack, I assign a "pick list" to the task executer after which the picking sequence needs to be optimized to the shortest path. I am using A star navigation and trying the "DistanceToTravel" function which works well for objects. However my flow item here is stored in a rack so the distance to travel function gives the distance from Task Executer to the node above the flow item which happens to be the Rack. Instead of having the function look at the node above, is it possible to get the distance from the task executer to the flow item?

I want to add this as an expression in a list field so I can ORDER BY ASC.

In reality I would want to optimize the overall route which means running a simple shortest path algorithm, but I don't want to go to that extent if it is not needed.

0 Likes
Accepted solutions (1)
1 View
4 Replies
Replies (4)
Message 2 of 5

jason_lightfootVL7B4
Autodesk
Autodesk
Accepted solution

You can sort by bay number. If you're visiting multiple racks then you may want to switch sorting ASC and DESC and they move through the store.

0 Likes
Message 3 of 5

zbarachki
Enthusiast
Enthusiast

Thank you for the response Jason. In this case I only have access to the items that are in a list. Here is a sample model of what I am trying to do:
Rack_Pull_OptimalPath.fsm

By adding the rack to the A* I was able to get the distanceTotravel function working in the script console, however the same function does not work in the list field, giving errors.

Is there some custom code that can get the bay number in a list field? That would solve my problem as you suggested.


0 Likes
Message 4 of 5

jason_lightfootVL7B4
Autodesk
Autodesk

This will depend what is in the list. In your case the flowitem is stored so for the bay field in the list you can use the expression:

Storage.Item(value).currentSlot.bayID

To get the distance expression to work you need the puller to be a task executer in 3D space - currently you have it set as the token.

0 Likes
Message 5 of 5

zbarachki
Enthusiast
Enthusiast
Thank you!
0 Likes

Type a product name