How to model more ingredients than places to store them

How to model more ingredients than places to store them

james_engelhart
Not applicable
33 Views
3 Replies
Message 1 of 4

How to model more ingredients than places to store them

james_engelhart
Not applicable

[ FlexSim 20.2.0 ]

I'm trying to model a situation where I have fewer bins than ingredients. To clarify/simplify: We have 7 ingredients that we use across a number of recipes, but we only have 6 bins. So, Ingreds: A-G. If a shipment comes in, and I already have some in a bin, it needs to go to the same bin. If it is an ingredient that is Not currently in a bin, it needs to go to an Empty bin. If none are available, it has to wait to be received. Ingredients behind it can be received if they have a place to go.
I tried to use a list but I can't seem to make a list limit the number of entries.
Any help in what direction to go would be appreciated.
I'm a newb at using Process Flow, so give me all the baby steps too please.

0 Likes
Accepted solutions (1)
34 Views
3 Replies
Replies (3)
Message 2 of 4

joerg_vogel_HsH
Mentor
Mentor

I suggest you try a different approach first. The fluid objects store and process in time ticker intervals. Tanks can store non discrete values.Their content can be updated. You convert items into fluids and process fluids. If a tank gets empty, you can change the ingredient that this tank can hold.

But if you still want to get a discrete flow item model, I suggest as an alternative the use of a List with a "pull select" approach. The attached model consists of two processes.

  1. Manage bins and resupply ingredients to a partitioned list
  2. Transfer amounts of ingredients to the bins in a combiner

An additional processor consumes the ingredients of the list.

This model does not provide the change to a different set of ingredients if some bins get empty.

List_partial_value_pull.fsm

0 Likes
Message 3 of 4

joerg_vogel_HsH
Mentor
Mentor

My model contains hidden the solution of your request, because I limit the available bins. If a bin and its mass entry field in the list gets empty, you can assign a different Type to this item and another partition is created in the list.
The Queue2 OnEntry trigger function checks currently against an updated array in the Queue1, if a Type is available to be processed. If there isn’t a Type available, then the method indexOf returns -1 value. Currently I use this behavior to get a false condition value in an “if“ structure. You can use this approach to divert the item to another storage object in the Send to Port function of this queue.

0 Likes
Message 4 of 4

parker_s
Not applicable
Accepted solution

Hi @James Engelhart

I've attached a model that demonstrates what you are trying to achieve. The main functionality of the model uses Process Flow and a list that stores information about the bins. The model can also be easily adapted or recreated to fit your application.

I would suggest looking through all of the Process Flow activities and the Global List called "BinList" and noting all the parameters; this would give you an idea of the steps I took to create the model.

Don't hesitate to reach out with any additional questions!

INGREDIENTS_advanced_1.1.fsm

0 Likes