question

shanice.c avatar image
0 Likes"
shanice.c asked Eric M commented

How to let item wait in Queue instead of Control point in AGV system?

In my work, there are several AGVs workiing in the production system similar to attached example, every processor has an upstream queue and a downstream queue, all queue content =1.

In my attached example, the queue content is not 1, but also have following two questions I have.

My first problem is, as I want to collect the time from an item enters Queue until leaves, to konw how long it takes an item to wait for AGV. In my work, I use a global table to write down all items enter and exit Queue times. But I found that in Global Table data, item doesn't have to wait for AGV, each item enter Queue and exit immediately. Also in animation shows that item go to Control Point to wait for AGV, only when control point is occupied, then the rest items will wait for AGV in Queue. Anybody could teach me how to fix my model to let item wait in downstream queue so that I can gain real item "exit time" data.

Second problem

Since there are upstream and downstream Queue, so I need a delay when moving from upstream queue to Processor, also a delay moving from Processor to downstream queue. Is there any way to do this? One solution from this website is to use another new processor between Processor and Queue, and then hide it. but I have more than 100 Processors and Queues in my work, so any quick and effective way would be better.

Thank you in advance!

Three stations.fsm

FlexSim 20.2.3
agvqueueflexsim 20.2.3
three-stations.fsm (140.0 KiB)
· 1
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

Eric M avatar image Eric M commented ·

Hi @Fiona C, was my answer helpful? If so, please click the red "Accept" button at the bottom of the answer. Or if you still have questions, add a comment and we'll continue the conversation.

If we haven't heard back from you within 3 business days we'll auto-accept an answer, but you can always unaccept and comment back to reopen your question.

0 Likes 0 ·

1 Answer

Eric M avatar image
0 Likes"
Eric M answered

Hi @Fiona C, for the first question, I would change the pickup CPs to be look for work CPs (as shown on Queue29). Instead of the item leaving the queue to wait at the CP for pickup, it will now wait in the queue. When the AGV crosses CP14, it will check to see if there's an item to pickup in Queue29. If not, it will keep looping, if there is, it will drive to CP16 to pick it up.

For your second question, one way to do this would be object process flows (I just added a blank one). This works by creating one process flow and attaching as many objects as you want to it. If you add the objects to a group, you can quickly add all the objects in that group to the process flow which should make things easier for you (image below):

1624293393685.png

I created groups for each of the input queues and processors. In the process flows, I used a source, code to stop the output, a delay, and then code to resume the output. You can change the delay to what you'd like and it will be applied to all of the processors / queues in your model that are attached to the process flows. You can visually see when the output is stopped by the red bar over the connection:

1624293631182.png

Now you should be able to measure the time in the queue like you want as well as delay the objects in the input queues and processors. I only changed the CP connections for the first processor group, so you'll need to update the rest. three-stations (1).fsm


1624293393685.png (11.5 KiB)
1624293631182.png (75.5 KiB)
three-stations-1.fsm (151.7 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.