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
|
|||
|
|||
One operator on two processors
Hi,
I have the following problem: A machine is partially automatic, requires an operator during the first part of the process, and finishes the process automaticly. Because the operator is busy only part of the time, he can do the same process on two different machines, switching machine every time he is done with one of the two. Does anyone have a better implementing solution than the following? The flowitem is a lot (of size up to 700), and the processes have to be done for all 700 parts. I use two MultiProcessors with two processes: one requiring an operator, the other one not requiring an operator. Once the second process is done (label WhichProcess which one of the two processes just finished, OnProcessFinish trigger if(WhichProcess==2)), I generate the following tasksequence: inserttask(ts,TASKTYPE_TRAVEL,current,NULL); inserttask(ts,TASKTYPE_FRLOAD,item,current); inserttask(ts,TASKTYPE_TRAVEL,current,NULL); inserttask(ts,TASKTYPE_FRUNLOAD,item,current); The operator then starts the cycle over again, and a lot label is incremented, in order to know which cycle just finished. In order to avoid the lot leaving the MultiProcessor, its output is closed, giving the STATE_BLOCKED to the MultiProcessor Thanks for ideas! Stefan |
The Following User Says Thank You to Stefan Trabut For This Useful Post: | ||
shafizad (05-03-2011) |
#2
|
|||
|
|||
I like that you are choosing not to model each item of a batch. I have attached a "safer" or at least more recommended approach. Also, it does not require writing a custom task sequence.
There are two labels on the lot item, one for LotSize and another for CurrentCount. Each MultiProcessor sends the item to a temporary Queue that feeds back into port 1 of the MultiProcessor itself. Due to standard FixedResource behavior, no new items will be allowed to enter until the item ahead leaves this loop. The MultiProcessor SendToPort and OnEntry contain the control logic. |
The Following 2 Users Say Thank You to Kris Geisberger For This Useful Post: | ||
Stefan Trabut (04-01-2011) |
#3
|
|||
|
|||
Use transport only for certain ports
Hi,
Thanks for this simplification! If I now would like the operator to transport the FlowItem after he's done with a lot, I would check the box "Use Transport". The problem is now that the operator would also transport the FlowItem back to the fictive queue, instead of just from the MultiProcessor away. Do I have to add an additional queue after the MultiProcessor and check the "Use Transport" box there, or would it be possible to code something like Code:
Request transport from: if(port == 1) { return ???;//not use transport } if(port == 2) { treenode ts = createemptytasksequence(Operator,0,0); inserttask(...); dispatchtasksequence(ts); return 0;//own tasksequence } |
The Following User Says Thank You to Stefan Trabut For This Useful Post: | ||
shafizad (05-03-2011) |
#4
|
|||
|
|||
Request Transport From options
There are two pick options you can use in the Request Transport From pick list.
1. Conditional Transport 2. Multiple Transport Options I used both of them in the attached model to demonstrate. I only had to type "2" in the first, and "port" in the second. |
The Following 2 Users Say Thank You to Kris Geisberger For This Useful Post: | ||
Stefan Trabut (04-06-2011) |
#5
|
|||
|
|||
Processor instead of Multiprocessor
Having had problems with MultiProcessor states (for recording purposes, states > 50), I have found that the MultiProcessors can be replaced by Processors. This can be done by writing a tasksequence in the PickOperator option of the processor.
|
The Following User Says Thank You to Stefan Trabut For This Useful Post: | ||
shafizad (05-03-2011) |
Thread | Thread Starter | Forum | Replies | Last Post |
Dynamically assigning processors/people to time table | Rhonda MacIntyre | Q&A | 7 | 01-28-2010 11:28 AM |
How to process with 2 processors at the same time | wilmermoncada | Q&A | 2 | 11-25-2009 08:34 AM |