question

christophe C2 avatar image
0 Likes"
christophe C2 asked Joerg Vogel commented

Refill a rack or queue depending its level

As you can see in my attached model, I want to manage the level of my intermediate stock.

I want to refill my intermediate stock with a batch of item when we reach a certain level.

So, the model begin with 50 items into my intermediate stock, and with 100 items into my main stock. (I used some Onreset triggers and Onmessage triggers for this).

Then, how can I ask to the transporter to bring 10 items (in one way) from the main stock to the intermediate stock, only when the intermediate stock contain less than 40 items.

It should be done with some message I think, but I don’t understand how to manage them correctly.

Could you please help me for this ?

intermediate-stock-level.fsm

FlexSim 16.0.9
batchstocklevelrefill
· 2
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

Jeff Nordgren avatar image Jeff Nordgren commented ·

@christophe C2

You are using such an old version of FlexSim that I'm guessing the maintenance has run out on it. It would be best if you contacted your local distributor for support on this question and to possibly upgrade your version of FlexSim. Here is their contact information in case you don't already have it:

ASE (Analysis Simulation Engineering) AG

Häringstrasse 20
8001 Zürich
Switzerland
contact 1: Uri Schtalheim
contact 2: Lukas Gamper
phone: +41 44 253 75 70
direct: +41 44 253 75 72

[email protected]
[email protected]
www.ase.ch

@Lukas Gamper

To Distributor: Please help this customer with their model problem(s). If you need FlexSim's help, please contact us separately.

Thanks.

1 Like 1 ·
christophe C2 avatar image christophe C2 Jeff Nordgren commented ·

Hi! Thanks Jeff for the message.

My retailer already send us the update but my school still need to make the upgrade on the server.

Best regards.

0 Likes 0 ·
Arun Kr avatar image
0 Likes"
Arun Kr answered Joerg Vogel commented

@christophe C2,

Connect a dispatcher to deliver task sequences to the Transporter. Close the input port of the Transporter using its OnReset trigger.

When the content of the Intermediate Queue reaches 40, open input port of the Transporter using the i On exit trigger of the intermediate Queue. Also set the capacity of Transporter as 10.

treenode  Transporter = node("Transporter8", model());//Inside On Exit Trigger
if(content(current)<=40)
{
openinput(Transporter);
}

To stop the Transporter from delivering to the Intermediate Queue. You can set an upper limit condition using the On Entry trigger of the Intermediate Queue.

treenode  Transporter = node("Transporter8", model());//Inside On Entry Trigger
if(content(current)>80)
{
 closeinput(Transporter);
}

Here is a sample model on 16 version.

intermediate-stock-level-v16.fsm

Regards,

Arun KR


· 2
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

DaniCor avatar image DaniCor commented ·

Hi buddy

I have a question it's possible to do this refill with more than a transporter only with one dispatcher? I tried to do it but the program doesn't work

refill-process.pngSIMULACIÓN REVISIÓN PERIODICAv4 con processor.fsm

I look forward to your response

0 Likes 0 ·
Joerg Vogel avatar image Joerg Vogel DaniCor commented ·
@DaniCor, please ask a new question, if you don’t add new information to an accepted answer. You should add a link to an accepted answer, if it is in relation to your new request. It is a good practice to get familiar with a common behavior in a forum you want to participate in actively. Thank you for considering my hints.
0 Likes 0 ·
Raja Sekaran avatar image
0 Likes"
Raja Sekaran answered Arun Kr edited

Hi @christophe C2,

I have attached the model with some changes.

In the attached the model, OnExit trigger of Intermediate level, When the content of the Intermediate Queue reaches 40, i have send message to rawmaterial stock queue to release the item. I have used the below code in OnMessage trigger to release the num items from Rawmaterial stock.

int value = msgparam(3);
if(value == 1)
{
	for(int i=1;i<=10;i++)
	{
	releaseitem(rank(current,i),1);
	}
}

intermediatestocklevel.fsm

Thanks.


· 9
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

Arun Kr avatar image Arun Kr commented ·

@Raja Sekaran,

Exceptions, when the Raw material queue becoming empty can be avoided by modifying the if condition to send message in the on exit trigger of the intermediate Queue

.Message Condition in the On Exit Trigger of Intermediate Queue :

content(current)<40 && content(inobject(current,1))>=10 

Also attaching the modified model.

intermediatestocklevel-2.fsm

Regards,

Arun KR

1 Like 1 ·
Raja Sekaran avatar image Raja Sekaran Arun Kr commented ·

@Arun KR Thanks for letting me know about that.

1 Like 1 ·
christophe C2 avatar image christophe C2 Arun Kr commented ·

Hi !

Thanks for your answer ! I can't understand, I do exactly what you did and it's still doesn't work as you can see in the small model attached.

The transporter delivers automatically 10 item without waiting that the intermediate stock reach the good level. Do you see what's going wrong ?

Many thanks in advance.

model-test-autosave.fsm

0 Likes 0 ·
Arun Kr avatar image Arun Kr christophe C2 commented ·

Hi,

Use do not release item option in the send to port field of Raw material Queue instead of First Available.

Regards,

Arun KR

1 Like 1 ·
option.png (50.5 KiB)
Show more comments