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
|
|||
|
|||
Transport 2 once!
If operator capacity is 2 and the processor maximum content is 1,then how to make operator to transport 2 once? Then place 1 for the processor after the processor finished it,the operator could place another one immediately without to travel to upstream to get a new one so as to increase production efficiency.
|
#2
|
|||
|
|||
Hi,
I have 2 suggestion that you can look at. First one is to have a queue before your processor, the queue should have the capacity of 2, performing batching and flush the contents between batches. This approach will make the operator take 2 item to the queue and wait at the queue until it is empty, then goes and pick up 2 new item. Second suggestion is to write your own tasksequence which picks up 2 item, travel to the processor, unload first item, wait for the first item to be finished and then unload the second item to the processor. To get this to work you need to use sendmessage and/or subtask for the operator. The sendmessage/subtask is used for to controling when the second item will be unloaded to the processor. Lars-Olof |
#3
|
|||
|
|||
Hi Johan,
First your question. Quote:
Code:
int port=1; treenode ts = createemptytasksequence(centerobject(current,1),0,0); inserttask(ts,TASKTYPE_TRAVEL,current,NULL); // Load first item in the queue inserttask(ts,TASKTYPE_FRLOAD,rank(current,1),current,port); // Load second item in the queue inserttask(ts,TASKTYPE_FRLOAD,rank(current,2),current,port); inserttask(ts,TASKTYPE_TRAVEL,outobject(current,port),NULL); // Unload first item and wait inserttask(ts,TASKTYPE_FRUNLOAD,rank(current,1),outobject(current,port),opipno(current,port)); inserttask(ts,TASKTYPE_UTILIZE,rank(current,1),outobject(current,port),STATE_UTILIZE); // Unload second item and wait inserttask(ts,TASKTYPE_FRUNLOAD,rank(current,2),outobject(current,port),opipno(current,port)); inserttask(ts,TASKTYPE_UTILIZE,rank(current,2),outobject(current,port),STATE_UTILIZE); dispatchtasksequence(ts); The last change in the queue is to have Send To Port not release items. In the Processor you must Free the Operator OnPrecessFinish. If you have more questions please keep post them in this topic. Lars-Olof |
The Following 2 Users Say Thank You to Lars-Olof Leven For This Useful Post: | ||
Tom David (05-20-2010) |
#4
|
|||
|
|||
transport 2 once
Hi Lars-Olof,
I also wanna know how to make it run continuously, since it will stop at about 20th time unit in the model.I attached it,would you pls refer to it.Thanks! John Mic |
#5
|
||||
|
||||
It’s a pointer problem on the items to load. Because in the task sequence rank 1 and rank 2 are used, but several items can enter the Queue it points to the same items. If these items are destroyed the bad pointer appears.
One solution could be to manage to point on the right items. Store the arriving item pointer e.g. in the tree and use them in the task sequence. Another simpler solution is to change the maximum content of the Queue to 2. Now only 2 items are at the same time in the Queue and the pointer rank 1 and rank 2 are correct.
__________________
tom the (A)tom: "We have solved our problems ... now we have to fight the solutions." |
The Following User Says Thank You to Tom David For This Useful Post: | ||
Lars-Olof Leven (05-20-2010) |
#6
|
|||
|
|||
Hi,
The easiest way is set the queue to capacity of 2. Why I suggested to have capacity of 2 is to be sure that I am only handling 2 items every time I want to do my task sequence. Otherwise I need keep track of which items that are already assigned to a task sequence. Lars-Olof |
Thread | Thread Starter | Forum | Replies | Last Post |
How do you transport using two different methods | Derrick Serbonich | Q&A | 1 | 02-25-2009 05:50 PM |
Keep calling the same operator for transport | Jorge Toucet | Q&A | 3 | 11-05-2008 01:27 PM |
flowiTems From transport to transport | Manuel Kraenzle | Q&A | 1 | 10-27-2008 01:32 PM |
Using different combinations of operators for Transport | Brandon Peterson | Tips and Tricks | 0 | 06-20-2008 09:08 AM |
use of operator for transport and setup | Pablo Concha | Q&A | 2 | 08-23-2007 11:30 AM |