collision avoidance and shortest path travel

akshay_p
Not applicable
4 Views
2 Replies
Message 1 of 3

collision avoidance and shortest path travel

akshay_p
Not applicable

[ FlexSim 19.1.1 ]

Dear all,

Attached I have a model for a Factory automation setup where I wish to make the AGV paths bidirectional (instead of being uni directional, as is the case in the model). The problem with keep them bi-directional is that it causes a deadlock and the AGVs are not able to proceed any further. The other objective that I wish to achieve here is that I want to make sure my AGVs use the shortest path possible to execute a task.

The task list is an excel import which is a schedule that needs to executed for successful completion of a lot. An importantstatic-updatednew.fsm consideration is that while an AGV is working on a machine, another AGV can not occupy that machine and has to wait.

Can anyone suggest me any possible approaches to tackle this problem?

0 Likes
Accepted solutions (1)
5 Views
2 Replies
Replies (2)
Message 2 of 3

joseph_g3
Not applicable
Accepted solution

@Akshay P

The AGVs by default should attempt to travel the shortest possible distance to accomplish a task.

As for avoiding deadlocks, this is difficult to do in a bi-directional AGV path like this. It will require some customization through Process Flow and custom code. For reference, here is a model that includes a bi-directional AGV path and has the AGVs avoid each other (they take turns moving): bidirectionalagv.fsm

You could copy the Process Flow logic for moving the other AGV out of the way when one AGV is moving.

To make sure that the two AGVs don't try to occupy the same machine, I recommend pushing all of the machines to a list. Then, when an AGV needs to use a machine it can pull that machine from the list, use it, and then push it back to the list.

I hope this helps!

Message 3 of 3

akshay_p
Not applicable

@Joseph Gillespie thanks for your reply. I will try to implement this approach and look into it 🙂

0 Likes