Stop pull condition if downstream content is full

Stop pull condition if downstream content is full

poopatel
Not applicable
40 Views
8 Replies
Message 1 of 9

Stop pull condition if downstream content is full

poopatel
Not applicable

[ FlexSim 23.0.0 ]

1709061770868.png

In the model Processor 1, 5, 6 are pulling parts from a list. What I want to do is stop the pull condition if Queue 5, 6, 7 are full (max content) respectively. I tried using triggers but while its closing and opening the ports its not stopping the pull condition by processor. I don't want a part to be waiting on processor.

0 Likes
Accepted solutions (1)
41 Views
8 Replies
Replies (8)
Message 2 of 9

Jeanette_Fullmer
Community Manager
Community Manager

Hi @poopatel,

It's hard to know how to help without looking at your model. To receive a more accurate solution, please post your model or a sample model that demonstrates your question.

If your model contains sensitive information, you could first toggle your post as private using the "make private" option under your question's "gear" menu. Private questions are visible only to site moderators. You can also contact your local FlexSim distributor for phone or email help.

0 Likes
Message 3 of 9

poopatel
Not applicable

Sorry i forgot to post the model


example_dummy.fsm

0 Likes
Message 4 of 9

Jeanette_Fullmer
Community Manager
Community Manager
Accepted solution

Hello @poopatel

I added a condition on the pull from list that checks the queue content is below its max content.


1709065834924.png

When this condition fails the processor will not pull from the list. The processor will need to be prompted when to pull items again. To accomplish this, I added a trigger to the last processor to tell the processor to receive an item.

example-dummy_1.fsm

0 Likes
Message 5 of 9

poopatel
Not applicable

Thank you, it works!!!

Just one more query that I have is what if I am also pushing items in Queue 6 and 7 to a list and processor 2 and 3 will pull from that list will the logic still work ?? or do I need to change the location of trigger to tell the processor 5 and 6 to receive an item.

1709067312769.pngexample-dummy-1.fsm

0 Likes
Message 6 of 9

Jeanette_Fullmer
Community Manager
Community Manager
Your model did not attach can you try adding it again? I have an idea how to accomplish this
0 Likes
Message 7 of 9

poopatel
Not applicable
0 Likes
Message 8 of 9

Jeanette_Fullmer
Community Manager
Community Manager

Hello @poopatel,

I moved the trigger to the Queue and added a Breathe in the code before the receive item. This is to allow the item to exit and not be counted in the pull condition.

await Delay.seconds(0);
receiveitem(current.inObjects[1]);

example-dummy-2.fsm

0 Likes
Message 9 of 9

poopatel
Not applicable
Great!
0 Likes