ATTENTION

This FlexSim Community Forum is read-only. Please post any new questions, ideas, or discussions to our new community (we call it Answers) at https://answers.flexsim.com/. Our new Question & Answer site brings a modern, mobile-friendly interface and more focus on getting answers quickly. There are a few differences between how our new Q&A community works vs. a classic, threaded-conversation-style forum like the one below, so be sure to read our Answers Best Practices.


flexsim.com

Go Back   FlexSim Community Forum > FlexSim Software > Tips and Tricks
FAQ Downloads Calendar Search Mark Forums Read

Tips and Tricks Share helpful modeling ideas

Reply
 
Thread Tools Display Modes
  #1  
Old 04-06-2016
Anthony Johnson's Avatar
Anthony Johnson Anthony Johnson is offline
Manager of Product Development
 
Join Date: Jul 2007
Posts: 440
Downloads: 86
Uploads: 4
Thanks: 171
Thanked 899 Times in 288 Posts
Rep Power: 731
Anthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond repute
Default Process Flow Template for AGV Control

Attached is a template model and user library containing a process flow that implements basic control for AGVs that loop around a model looking for work. This template will be added to standard FlexSim as a process flow starting point in the next feature release, and is intended to replace the previous mechanism of AGV control through way points, which effected much more fragmented logic (this is what I really wanted to have, instead of way points, when we first released the AGV module but didn't yet have process flow).

Documentation for the process flow is self-contained in the process flow. Reply to this thread if you have any questions, bugs, or suggestions on how it might be improved for the standard FlexSim release.

Note that this only works in FlexSim 16.0.1 (we fixed some bugs that this model needs to work right).

Note also that where the screenshots say "Location", we really mean a "Destination" connection (we plan on changing the default name of the Object<->Control Point connection to Location in the next release).
Attached Files
File Type: zip AGVTemplateProcessFlow.zip (435.9 KB, 687 views)

Last edited by Anthony Johnson; 04-06-2016 at 03:16 PM.
Reply With Quote
The Following 11 Users Say Thank You to Anthony Johnson For This Useful Post:
AlanZhang (04-08-2016), arunkrmahadeva (04-06-2016), Clair A (04-11-2016), Jason Lightfoot (04-06-2016), Jing Chen (04-06-2016), Katharina Muller (04-08-2016), Kris Geisberger (04-06-2016), sagar bolisetti (04-16-2016), Sebastian Hemmann (04-07-2016), Steven Hamoen (04-07-2016), syseo (04-06-2016)
  #2  
Old 04-10-2016
Katharina Muller Katharina Muller is offline
Flexsim User
 
Join Date: Nov 2012
Posts: 31
Downloads: 16
Uploads: 0
Thanks: 11
Thanked 6 Times in 4 Posts
Rep Power: 92
Katharina Muller is on a distinguished road
Default More features

Dear Anthony,

thanks a lot for this. I have few more comments and questions.
  1. In Unloading, shouldn't the Start Retrieval Process apply to both dropoff options (with or without dropoff points)?
  2. I tried the LookForWork connection for Station 5, but the loads are not moved onto the control points when queues are connected as destination. What am I missing here?
  3. Could you show me how to use the elevator without way point logic?
  4. How can I make 2 AGVs always wait at Station 4 until work arrives? Would I need to create a Waiting Zone for each Station of such type or could I use a partitioned list?
Thanks so much,
Kat
Attached Thumbnails
Click image for larger version

Name:	screenshot.jpg
Views:	614
Size:	196.9 KB
ID:	3226  
Attached Files
File Type: fsm AGVTemplateProcessFlow - Extended.fsm (131.7 KB, 547 views)
Reply With Quote
The Following User Says Thank You to Katharina Muller For This Useful Post:
RalfGruber (04-13-2016)
  #3  
Old 04-11-2016
Anthony Johnson's Avatar
Anthony Johnson Anthony Johnson is offline
Manager of Product Development
 
Join Date: Jul 2007
Posts: 440
Downloads: 86
Uploads: 4
Thanks: 171
Thanked 899 Times in 288 Posts
Rep Power: 731
Anthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond repute
Default

Katharina,
1. I designed it to only implement the dropoff retrieval process if there are dropoff points. My thinking there was, if you don't need dropoff points (there's only one place to drop off), then you can dropoff directly to something like a processor, which lets you simulate the dropoff retrieval process through standard objects in the model.
2. Similar to dropoff points, I only cause movement from an origin object to a control point if there are pickup point connections. If there aren't pickup point connections, it will leave it in the origin object and load it directly from there (you can put the queue right on top of the control point). To force the move into a control point, you would create an additional control point and add a pickup points connection from the Queue's control point to that pickup point.
3. Unfortunately, to implement a process flow based elevator divert, you'd need process flow to be able to listen to the OnPreArrival event of a control point, which is a feature that won't be available until the next feature release. I hope to make a template elevator divert process flow for that release as well. But for now you still need to use way points (and I found a bug that's causing the current way point elevator diverts not work, so I'll need to get you a fix).
4. To make those AGVs wait at Station 4, you use the park points connection. If an AGV arrives at an LFW point with park point connections, it will go to park and wait until it is activated again.

In the attached I've made several adjustments to your model.
1. At Station 5 I added the correct connections to get the items moved into the control points.
2. I added park point connections to station 4.
3. I reworked the way that the process flow starts up the AGVs. Now you connect the AGVs to an LFW point, and at the start of the simulation it will move them immediately to an available park point. This makes the logic for starting the simulation the same as for running the simulation, and allows the connections to be simpler.

I also had to rework the way that parked AGV activation works, specifically for station 4. With station 4 it gets complicated because the park points are the same as the pickup points. So when you get a load, and there is an AGV parked there, you must activate that parked AGV, or stuff will get stuck. So I adjusted the process flow there.

Also, even with my changes, you'll see that the simulation gets backed up at times. This is because the park/pickup points are inline with each other at Station 4. The problem is, if an AGV is parked on the first control point, and another wants to get to the last control point, it's blocked by the parked AGV. To get around this, you would need to implement a mechanism in the process flow that bumps parked AGVs forward whenever the AGV in front gets activated (assuming that is how it works in real life). This is definitely feasible, but more than I'm willing to do for free. So if you want to have a go at it yourself, feel free.
Attached Files
File Type: fsm AGVTemplateProcessFlow - Extended2.fsm (137.0 KB, 553 views)

Last edited by Anthony Johnson; 04-11-2016 at 03:36 PM.
Reply With Quote
The Following User Says Thank You to Anthony Johnson For This Useful Post:
arunkrmahadeva (04-11-2016)
  #4  
Old 04-11-2016
Anthony Johnson's Avatar
Anthony Johnson Anthony Johnson is offline
Manager of Product Development
 
Join Date: Jul 2007
Posts: 440
Downloads: 86
Uploads: 4
Thanks: 171
Thanked 899 Times in 288 Posts
Rep Power: 731
Anthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond repute
Default

Katharina,
Also, another change I made was I made all the paths use No Accumulation. This was causing gridlock in the system. If you need accumulation, you should either have you control points/intersections spaced farther apart, or decrease the intersection stop distances for the Default Accumulation type.
Anthony
Reply With Quote
  #5  
Old 04-13-2016
Katharina Muller Katharina Muller is offline
Flexsim User
 
Join Date: Nov 2012
Posts: 31
Downloads: 16
Uploads: 0
Thanks: 11
Thanked 6 Times in 4 Posts
Rep Power: 92
Katharina Muller is on a distinguished road
Smile

Thanks so much Anthony for your help, this is awesome! I especially love this little orange spider legs showing to which control points the AGV currently connects, a feature I always wanted! I think I can convince the client to change the in-line station layout to the parallel layout, it was originally designed by someone else and I keep telling that parallel is more space and time efficient.
Thanks, Kat
Reply With Quote
  #6  
Old 04-13-2016
Anthony Johnson's Avatar
Anthony Johnson Anthony Johnson is offline
Manager of Product Development
 
Join Date: Jul 2007
Posts: 440
Downloads: 86
Uploads: 4
Thanks: 171
Thanked 899 Times in 288 Posts
Rep Power: 731
Anthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond repute
Default

FYI the spider legs are a "hidden feature" that will be unhidden in the next release. You turn it on by setting the value of the node MODEL:/AGVNetwork>variables/drawAllocations
Reply With Quote
The Following 3 Users Say Thank You to Anthony Johnson For This Useful Post:
Clair A (04-18-2016), Jörg Vogel (04-14-2016), Sebastian Hemmann (04-13-2016)
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is On

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Process Flow Images - No Select/Tree Properties michaelsmith Q&A 1 04-01-2016 12:16 AM
Process Flow - Resource Utilisation & Shifts michaelsmith Q&A 2 03-16-2016 08:11 PM
Process Flow - Copy Label to On Event Source michaelsmith Q&A 1 12-08-2015 10:41 AM
FlexSim 7.7 - Process Flow FilipOdwazny Q&A 5 11-26-2015 04:27 AM
how to control the output flow item in Comniner... syseo Q&A 2 07-07-2011 08:43 PM


All times are GMT -6. The time now is 09:42 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, vBulletin Solutions Inc.
Copyright 1993-2018 FlexSim Software Products, Inc.