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
|
|||
|
|||
about model's continuously running
Hello everyone,
I’ve made a model about Coordinated Task Sequence. I created a coordinated task sequence in the "Request Transport From" field of Queue1 manually, and the TS was used to call for three TaskExecuters to transport the same flowitem together. Now, my question is why the model cannot run continuously? It will stop after maximize three flowitems have been processed. Regards, Frans. |
#2
|
||||
|
||||
Unfortunately I can’t unzip your model, because the zip file seems to be broken.
My guess is that you do not deallocate / free the taskexecuters at the end of your tasksequence.
__________________
tom the (A)tom: "We have solved our problems ... now we have to fight the solutions." |
#3
|
|||
|
|||
Tom, thanks for your very quick reply.
But I have deallocated all TEs at the end of ts in my model. I have re-uploaded the model in attachments, and you can have a try again. I am eager for your ideas. |
#4
|
||||
|
||||
It was a tricky problem and there were no events left in model that’s why it stopped.
I solved it by just put three Queues before the Processors. Then everything works. I am not really sure what happens, but I guess I have an idea. If a Processor is still busy processing an item when the next item for this Processor arrives the arriving item can’t leave because the Processor is not available. The item will stay in the arriving Queue. If the Processor gets available the item will not leave the Queue and therefore the task sequence will not be generated. I tried Reevaluate Sendto on Downstram Availability (even if it makes models sometimes slow), but it still did not work. I guess that’s in combination with generating the task sequence. In reality I would expect a Queue in front of a Processor, because the transportation takes time and what the point to store the items at the entrance. But maybe I am wrong here. Another solution could be to control the Queue at the entrance and only let items arrive if the needed Processor is available, if the items are stored at the entrance. Anyway, I hope I was able to help and maybe someone else has a better explanation.
__________________
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: | ||
Frans Zeng (05-20-2010) |
#5
|
|||
|
|||
in chinese -你可以在进入的触发器写任务序列,然后不发送item,看附件
in English-you can write tssquence in onentry trigger, Do Not Release Item see attach.maybe this is a better way Last edited by LINWEIXU; 05-20-2010 at 12:33 AM. |
The Following 3 Users Say Thank You to For This Useful Post: | ||
Tom David (05-20-2010) |
#6
|
||||
|
||||
I like the idea of using the OnEntry trigger and Do Not Release Item, which is another solution.
Good thinking. I had a look into Linwei’s code and just one comment. Even if it is working, I would not use the variable name “i” in my code, because in a way this variable name is reserved like “c” and “a”.
__________________
tom the (A)tom: "We have solved our problems ... now we have to fight the solutions." |
#8
|
|||
|
|||
Tom and LINWEIXU, thanks for being so helpful.
In fact, Using queue to solve the problem is my beginning thought, but it's not an easy work for me to smoothly control the staytime of flowitems in Queue, so I ceased making an effort on it. (For more information about this, refer the last thread.) |
#9
|
|||
|
|||
Tom and LINWEIXU, I had run the modified model for several times, and encountered a new problem. If I change the processtime of Processor1 to more than 100 time-units, the coordinated TEs will transport different item to Processor1 regardless of it's state. This is not what I want!
It's necessary to confirm that the needed Processor is available before the coordinated tasksequence is dispatched. |
#10
|
||||
|
||||
I guess that’s the downside of using the OnEntry trigger, because a task sequence overrules things like Maximum Content, closed Intput, closed Output, etc. In other words, a task sequence does not check the object functionality and control.
In this sense you are right, that you need to check if the Processor is available and only if it is available generate the tasksequence. By the way, I am not sure if it is a good idea to have two threads for the same issue/model.
__________________
tom the (A)tom: "We have solved our problems ... now we have to fight the solutions." |
#11
|
|||
|
|||
Tom, I am sorry for having two threads for the same issue, it is remote from my own will.
In my opinion, the last threads was posted for the topic of multi-taskexecuters, and the problem has been solved by using coordinated ts, so I thought discussion on that threads has ended and started this new threads. I do apologize most sincerely for any embarrassment caused. |
Thread | Thread Starter | Forum | Replies | Last Post |
Running Multiple Versions | michaelsmith | Installation | 2 | 01-12-2010 07:48 AM |
Problems with running time | Jan Brandau | Q&A | 23 | 11-18-2009 04:16 AM |
Continuously Move | Li Chin | Q&A | 12 | 10-13-2008 03:49 AM |
In what cases the running simulation would stop itself? | KelvinHo | Q&A | 1 | 05-08-2008 08:32 AM |
Flexsim instance is still running for over a minute | Martin Saler | Q&A | 1 | 10-04-2007 11:44 PM |