How to confine the movement of AGVs?

How to confine the movement of AGVs?

wei_cheng_c
Not applicable
50 Views
8 Replies
Message 1 of 9

How to confine the movement of AGVs?

wei_cheng_c
Not applicable

[ FlexSim 22.2.0 ]

Hi,


I am not familiar with the use of AGVs, and I would like to know if there is a way to restrict AGVs to specific areas. In my model, I have two different areas. I have divided the AGVs in the two areas into two groups: "AREA1_AGV" and "AREA2_AGV". I want the former to only move in area 1, and the latter to only move in area 2. However, I would like the AGVs in the two areas to be able to assist each other when the number of items in Queue1 or Queue3 exceeds 50.


Thank you for your help.


1690273809410.png

agvv.fsm

0 Likes
Accepted solutions (1)
51 Views
8 Replies
Replies (8)
Message 2 of 9

julie_weller
Not applicable
Accepted solution

Hi @Liam Chiu! I would create 3 AGV templates with different lists, one for the first area, one for the second area and the third for the combined areas. On the combined area one, add a wait for event or event triggered source that samples queue 1 and queue3 and waits for content change like this

1690301954211.png

That way it will only fire when needed. For the other two you could also add a wait for event that waits until it decreases below 30 so all 3 process flows are never going at once.

0 Likes
Message 3 of 9

wei_cheng_c
Not applicable

Hello @Julie Weller! I still find myself somewhat perplexed regarding the method to confine an AGV's operations within a predetermined area. If feasible, would you be able to present a gif or a sample model for clarification?

Much appreciated!!

0 Likes
Message 4 of 9

julie_weller
Not applicable

Hi @Liam Chiu! I spent a while working on your model and I find myself perplexed that you're using the AGV templates at all. The AGV template especially that you were using is unnecessarily complex. You could definitely use my first answer to modify the template but it would take a pretty deep understanding of AGV's and frankly it's easier to just create a simpler process flow.

I ended up using a much simpler process flow:

1690494310387.png

Essentially it pulls from lists and when one of the queues reaches 50 it starts helping that queue. You might have to tweak it to get the behavior you specifically want because when both queues reach over 50 the AGV's just essentially switch tracks. Here's the model:

agvv (1).fsm

Message 5 of 9

wei_cheng_c
Not applicable

Hi @Julie Weller Thank you for taking the time to help me with this issue~~!!


I use such a complex template because my real model has tens to hundreds of bays. The method you provided seems difficult to scale to larger models because I need to set up a process for each bay when my model is quite complex. This makes it quite difficult to build the model.


However, I am very grateful for the method you provided.


Thank you again for your time and help. 🙂

Message 6 of 9

moehlmann_fe
Explorer
Explorer

If you use labels and expression fields to denote the area the queues and AGVs belong to instead of partitions, the tokens can query all items at the same time. This would allow you to scale the solution much easier.

In the attached model the tokens pull items from queues with a content of more than 50 or items from their own area.

I guess the challenge when this is extended to 100s of areas would be to find a suitable restriction (for example, AGVs may only travel up to 3 areas away from their own). With that in mind I added the "areaDiff" field to the list that could be used to restrict how far away an AGV will travel.

agvv-1-fm.fsm

Message 7 of 9

wei_cheng_c
Not applicable

Hi @Felix Möhlmann ! Thank you for your suggestion. It seems like a more straightforward way to do it.


By the way, I have posted a similar AGV problem in another post. I am trying to control the AGV to run only in its own bay by sticking labels on the AGV, but I encountered some errors. Could you please help me take a look?

https://answers.flexsim.com/questions/147364/agv-path-condition.html

Message 8 of 9

moehlmann_fe
Explorer
Explorer
​I can't open the link. Is that a private question? Because I can't access those.
0 Likes
Message 9 of 9

wei_cheng_c
Not applicable

@Felix Möhlmann

I have made the post public, and it should be accessible now.

0 Likes