Processor maximum content

Processor maximum content

chuoTV3H9
Participant Participant
24 Views
4 Replies
Message 1 of 5

Processor maximum content

chuoTV3H9
Participant
Participant

[ FlexSim 19.2.2 ]

Hello,

I have a series of processors that allows 5 items to go through at a time. To enforce this workflow, I close the input port of Processor1 on process finish, and open the input port when the total number of items in Processor1 and Processor2 is less than 5. However, the model doesn't work as intended; for example, when there are items in Processor2 still, 5 items enter Processor1 regardless. I've attempted to address this issue by regulating the output of Queue1, by setting up a conditional port such that items get sent to Processor1 only if the total number of items in Processor1 and Processor2 is less than 5. That doesn't seem to work either. I'm wondering if my logic is not sound, or if I'm missing any functions that can regulate this behaviour.

Any help would be appreciated, thank you!maximum-content.fsm

0 Likes
Accepted solutions (1)
25 Views
4 Replies
Replies (4)
Message 2 of 5

jeff_nordgren
Not applicable

@Steven C7,

Attached is your model with the changes that I've made. Take a look at it and see if it now does what you are wanting it to do. If not, please explain further what needs to happen in the model.

I changed the Send To Port of Queue1 to be first available. You had it as conditional, which when true or false would send to either port 1 or 2. But you only have one output port on Queue1 so that didn't make any sense to me.

I changed/added code to the OnEntry and OnExit triggers of the processors to open/close the input port of Processor1.

Again, take a look at the model and see if this solution would work for you.

Thanks.

maximum-content-jn1.fsm

0 Likes
Message 3 of 5

chuoTV3H9
Participant
Participant
@Jeff Nordgren

Unfortunately, the same issue persists. In essence, what I'm trying to do is that at any given moment in time, there can only be 5 or less items in total in Processor1 and Processor2 at the same time. I hope that clarifies my problem.

0 Likes
Message 4 of 5

tanner_p
Not applicable
Accepted solution

Hi @Steven C7,
I'm not sure what the foolproof method for doing this would be when strictly using 3D objects and their triggers. I tried changing things for a little but was unsuccessful. That said, someone may come along and know how to do it...

I do know that this kind of thing is relatively easy using Process Flow. I've added an example Process Flow to your model (with the old one to compare; the numbers in front of the processors represent the total count between the two processors' contents). The Process Flow utilizes Zones to limit the number of tokens that are active at one time. In this Process Flow, the tokens are created first when the items arrive in Queue3 and then they acquire an operator, load the item, and unload it at the Processor. From there, the token waits for the item to finish processing at the second processor, acquires the operator again, and moves the box to the final queue. This is all accomplished while the token is in the zone, so another token cannot enter the zone until an item has completely processed.

Let me know if you have any questions about this model.

maximum-content.fsm

0 Likes
Message 5 of 5

chuoTV3H9
Participant
Participant

Thanks @tanner.p!

Your solution works beautifully. I've also just solved the problem using lists, but your method of using zones mimics my intended workflow better.