ATTENTIONThis 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 |
#1
|
|||
|
|||
Two unload spots associated with the same location
Hello,
I am new to Flexsim (apologies in advance) and have the following problem: Please refer to to the attached pic. TaskExecuters (rear dump trucks) are unloading at LOC1. LOC1 has two possible unload points to receive the dump (Point A and Point B). The plan is to make trucks use both points to unload: it could be alternating between A and B, or using B as first priority and unloading on A when B has been taken by another truck. TaskExecuters have been assigned with the task to unload at LOC1. Point A and B are network nodes, both attached to LOC1. In my model trucks always dump on Point A (which makes sense as it is the closest one). And I've been trying to force them to unload at point B by: 1) Closing the access to Point A: It didn't work. Trucks got blocked and stop. 2) Defining un-timed mode in the traffic control object. I tried different things with no success but I'm not sure if made the right definitions. Changing the status of the segments to "No connection" makes the truck choose the alternative spot to unload but I believe this is too expensive to use it on run time since I will need to call optimizenetwork() command each time (if I am right) Thank you un advance for your suggestions Cheers Cristian Last edited by Cristian Ramirez; 01-24-2013 at 02:31 PM. |
#2
|
|||
|
|||
Try instead, returning from the OnArrival trigger, the rank of the path/output port that you want to send the truck along.
|
The Following User Says Thank You to Jason Lightfoot For This Useful Post: | ||
Cristian Ramirez (01-25-2013) |
#3
|
||||
|
||||
Hi,
perhaps you could address it by adding a subtask activated when the truck reaches a decision point? In pseudocode: Code:
// Main task sequence ... inserttask(ts, TASKTYPE_TRAVEL, decisionPoint); inserttask(ts, TASKTYPE_CALLSUBTASK, CHOOSE_DESTINATION); inserttask(ts, TASKTYPE_TRAVEL, loadingPoint); ... // Subtask if (msgCode == CHOOSE_DESTINATION) { ... treenode unloadPoint = NULL; if (NumOfTrucks(pointA) == 0) unloadPoint = pointA; else if (NumOfTrucks(pointB) == 0) unloadPoint = pointB; if (unloadPoint != NULL) inserttask(ts, TASKTYPE_FRUNLOAD, first(truck), unloadPoint); else { inserttask(ts, TASKTYPE_DELAY, NULL, NULL, 10); inserttask(ts, TASKTYPE_CALLSUBTASK, CHOOSE_DESTINATION); } return ts; } |
The Following User Says Thank You to Vadim Fooks For This Useful Post: | ||
Cristian Ramirez (01-25-2013) |
Thread | Thread Starter | Forum | Replies | Last Post |
Robot Unload Offset | Ryan Haferbecker | Q&A | 1 | 11-08-2012 09:44 AM |
Moveobject and Unload | shafizad | Q&A | 1 | 05-22-2012 09:11 AM |
Operator's unload logic | Gutirallo | Tips and Tricks | 3 | 03-26-2012 05:19 AM |
each item has it's given location,and item's code correspond to storage location | Robert Liu | Q&A | 3 | 03-28-2011 08:46 PM |
LOAD and UNLOAD on Robot | Lydia Franck | Q&A | 10 | 09-15-2010 07:29 AM |