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 > Q&A
Downloads

Q&A Using Flexsim and building models

  #1  
Old 07-10-2012
syseo's Avatar
syseo syseo is offline
Flexsim User
 
Join Date: Aug 2007
Location: Korea
Posts: 290
Downloads: 439
Uploads: 0
Thanks: 249
Thanked 63 Times in 41 Posts
Rep Power: 211
syseo has a spectacular aura aboutsyseo has a spectacular aura about
Default A Task Executer should receive two tasksequence from dispatcher...

I want to make a task executer start moving to destination whenever receiving two tasksequence from some dispatchers.
Which commands does it need to do it?

Some more details, Task Executer should transfer two items to two destinations sequentially. But two destinations have different available time.

TE should wait till the last destination need time though the first destination is determined.

I want anyone's help.
  #2  
Old 07-10-2012
Steven Hamoen's Avatar
Steven Hamoen Steven Hamoen is offline
Talumis, Flexsim Distributor, The Netherlands
 
Join Date: Aug 2007
Location: Soest, NL
Posts: 854
Downloads: 43
Uploads: 0
Thanks: 391
Thanked 661 Times in 379 Posts
Rep Power: 684
Steven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond repute
Default

I would close both output ports and let the 2 destinations send a message to the taskexecuter when it is ready to receive something. When you have received 2 messages, open the output of the sending objects and off you go!
The Following User Says Thank You to Steven Hamoen For This Useful Post:
syseo (07-10-2012)
  #3  
Old 07-10-2012
syseo's Avatar
syseo syseo is offline
Flexsim User
 
Join Date: Aug 2007
Location: Korea
Posts: 290
Downloads: 439
Uploads: 0
Thanks: 249
Thanked 63 Times in 41 Posts
Rep Power: 211
syseo has a spectacular aura aboutsyseo has a spectacular aura about
Default Thanks Steven. But in the case of push ...

In the case of pull flow, your idea is good. But I have already made the model push type and I can't change it to pull type.

To change the code developed till now to the pull is very hard work, I think and I have not the time to change it.

Sending objects are two and destinations are ten.
I uploaded the test model to 'Straight Line Network AGV model' afew days ago.

Is there another way?

Thanks.
  #4  
Old 07-10-2012
Steven Hamoen's Avatar
Steven Hamoen Steven Hamoen is offline
Talumis, Flexsim Distributor, The Netherlands
 
Join Date: Aug 2007
Location: Soest, NL
Posts: 854
Downloads: 43
Uploads: 0
Thanks: 391
Thanked 661 Times in 379 Posts
Rep Power: 684
Steven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond repute
Default

OK other idea:
When the TE is ready with unloading give it a utilize task.

When you send a tasksequence to the TE send a message after it. If the TE receives 2 messages you do freeoperators() and the TE starts to process both tasksequences
  #5  
Old 07-12-2012
syseo's Avatar
syseo syseo is offline
Flexsim User
 
Join Date: Aug 2007
Location: Korea
Posts: 290
Downloads: 439
Uploads: 0
Thanks: 249
Thanked 63 Times in 41 Posts
Rep Power: 211
syseo has a spectacular aura aboutsyseo has a spectacular aura about
Default The problem happens before TE make ready with unloading...

Dear Steven.
If one tasksequence is dispatched to TE, the TE begin to start the first tasksequence without generating the second tasksequence.

1) generating the first tasksequence when downstream available
2) waiting till the second tasksequence generating without dispatching the first TS.
3) after generating the second TS, dispatch both two TSs sequentially

Is it possible?

I uploaded the exercise model.

You can make the situation as setting the global variable 'InspVar' to 60.

Thanks.
Attached Files
File Type: fsm 4Seats_RGV_CallSubTask_6ws_RandomFinished2.0.fsm (88.2 KB, 106 views)
  #6  
Old 07-12-2012
Steven Hamoen's Avatar
Steven Hamoen Steven Hamoen is offline
Talumis, Flexsim Distributor, The Netherlands
 
Join Date: Aug 2007
Location: Soest, NL
Posts: 854
Downloads: 43
Uploads: 0
Thanks: 391
Thanked 661 Times in 379 Posts
Rep Power: 684
Steven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond repute
Default

yes that is possible, set a flag somewhere with the pointer to the tasksequence and when you create the second one check if the flag is not 0. If so, dispatch both tasksequences.
  #7  
Old 07-12-2012
syseo's Avatar
syseo syseo is offline
Flexsim User
 
Join Date: Aug 2007
Location: Korea
Posts: 290
Downloads: 439
Uploads: 0
Thanks: 249
Thanked 63 Times in 41 Posts
Rep Power: 211
syseo has a spectacular aura aboutsyseo has a spectacular aura about
Default Hi. Steven. It still have one problem to handle with ...

Dear Steven.

I want to know how to handle with the tasksequence created from other dispatcher.

Two objects of dispatcher use one TE and the first dispatcher create the first TS to the TSqueue and waiting with not dispatch it to the TE.
And the second object create the second TS and then dispatch the first TS of the first one & the second TS of itself in sequential.

The two tasksequences should be done like that.
And many dynamic TSs of high priority is created between both two TS.
And then the other instances TS of same TS maybe be created to be added in the TSqueue from the two objects among them.

But I want to know how the first TS to be dispatched from the second object.

Thanks.

P.S

During one pair TS is done, the other pairs is created from both objects and added in the TSqueue.

Last edited by syseo; 07-12-2012 at 09:38 PM.
  #8  
Old 07-12-2012
Jörg Vogel's Avatar
Jörg Vogel Jörg Vogel is offline
Flexsim User
 
Join Date: Sep 2007
Location: Hannover, Germany
Posts: 643
Downloads: 35
Uploads: 0
Thanks: 802
Thanked 665 Times in 410 Posts
Rep Power: 642
Jörg Vogel has a reputation beyond reputeJörg Vogel has a reputation beyond reputeJörg Vogel has a reputation beyond reputeJörg Vogel has a reputation beyond reputeJörg Vogel has a reputation beyond reputeJörg Vogel has a reputation beyond reputeJörg Vogel has a reputation beyond reputeJörg Vogel has a reputation beyond reputeJörg Vogel has a reputation beyond reputeJörg Vogel has a reputation beyond reputeJörg Vogel has a reputation beyond repute
Default

Please ignore my post. Thanks!
you can insert in the second tasksequence a break task with involved2 as reference to the first tasksequence.

Jörg

Last edited by Jörg Vogel; 07-12-2012 at 11:34 PM. Reason: made a mistake
  #9  
Old 07-13-2012
Steven Hamoen's Avatar
Steven Hamoen Steven Hamoen is offline
Talumis, Flexsim Distributor, The Netherlands
 
Join Date: Aug 2007
Location: Soest, NL
Posts: 854
Downloads: 43
Uploads: 0
Thanks: 391
Thanked 661 Times in 379 Posts
Rep Power: 684
Steven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond repute
Default

If you create a tasksequence with:
treenode MyTs = createemptytasksequenc(........);

MyTs is a pointer to the tasksequence
So you can make a global variable of type double and on reset make it 0. Then instead of doing dispatchtasksequence you set the global variable:

GlobalTsFlag = tonum( MyTs);

and then when you create a second tasksequence you say:

if( GlobalTsFlag > 0) dispatchtasksequence( tonode( GlobalTsFlag));

But I have taken a look at your model and in these situation we usually create a control object and send messages to that object. Then on those messages the control object find out what it has to do and create all the needed tasksequences (or maybe one big one) and then dispatches it.
The Following 2 Users Say Thank You to Steven Hamoen For This Useful Post:
syseo (07-14-2012)
  #10  
Old 07-14-2012
syseo's Avatar
syseo syseo is offline
Flexsim User
 
Join Date: Aug 2007
Location: Korea
Posts: 290
Downloads: 439
Uploads: 0
Thanks: 249
Thanked 63 Times in 41 Posts
Rep Power: 211
syseo has a spectacular aura aboutsyseo has a spectacular aura about
Default You said a control object. Which object do you mean that?

A Control object means 'Dispatcher' object?
Or if that is fixed object, any object is OK?

I have solved my problem using close & open port till two items finished as you said first in this forum. Thank you for your help.

But I want to know your meaning of using 'control object' in more detail.
I hope your detail explanation about your usual method.

Thanks a lot.
  #11  
Old 07-14-2012
Steven Hamoen's Avatar
Steven Hamoen Steven Hamoen is offline
Talumis, Flexsim Distributor, The Netherlands
 
Join Date: Aug 2007
Location: Soest, NL
Posts: 854
Downloads: 43
Uploads: 0
Thanks: 391
Thanked 661 Times in 379 Posts
Rep Power: 684
Steven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond repute
Default

Any object can function as a control object, you just need a onmessage eventhandler. We usually take a basicFR but actually any object will do.
The Following 2 Users Say Thank You to Steven Hamoen For This Useful Post:
syseo (07-14-2012)


Thread Thread Starter Forum Replies Last Post
On Receive Error: Rack David Chan Q&A 0 11-09-2011 12:01 AM
Dispatcher: Which TaskExecuter did the task? Stefan Trabut Q&A 3 04-05-2011 05:49 AM
Dispatch task only on idle dispatcher waiting on a certain node shafizad Q&A 12 02-03-2011 01:56 PM
arrive was given a task sequence but is not a dispatcher Brent Merryman FlexSim HC: Q&A 3 04-09-2010 08:34 AM
task executer juan alberto Pre-sales Questions 1 06-01-2009 07:06 PM


All times are GMT -6.
Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2020, vBulletin Solutions Inc.
Copyright 1993-2018 FlexSim Software Products, Inc.