question

Miguel C12 avatar image
0 Likes"
Miguel C12 asked Eric M commented

Simulate an order system according to color of products

Hello everyone,

I am working on a model of production of three different products. I am trying to keep it simple for now so the products are different only by the color of the Pallet. All the process is actually done but I am struggling at the end to simulate the client section and the orders. For the client I created a random number generator that will create a box that will eventually match with the Pallet from before and then I want to move the client´s box and the product with the same color to another queue.

What I am trying to achieve is a system that on the left produces continuously a set of a Pallet and 4 boxes and on the right, continuously again, random boxes of different colors. Then a third section where the boxes on the right can be matched with the available products on the left and be transported to a queue below them.

The process of creating the products is done and the random box generator is done also but I am having trouble managing to match the boxes and moving the products to the queue below. I tried to use a conditional port and some custom code but it wasn´t successful.

Does anybody have some idea of how can I achieve this? Maybe my explanation was not very good so in case of any doubts I would be happy to explained myself better.

I attached the model in this post

Lego2.fsm

FlexSim 21.1.1
flexsim 21.1.1conditional
lego2.fsm (42.6 KiB)
5 |100000

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

1 Answer

Marcello Rosadini avatar image
0 Likes"
Marcello Rosadini answered Eric M commented

Hi Miguel,

I believe you can use the concept in the attached model. You can have a list of pallets and a list of boxes, and then depending on the client type, pull from each list to complete the order.

Of course for your specific problem you will need to adjust the quantities and transport method if necessary, but it might give you a starting point.

support order matching.fsm


· 3
5 |100000

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

Miguel C12 avatar image Miguel C12 commented ·

Thanks, I downloaded your model and tried a few configurations before adapting it to mine and it works perfectly!

Thank you very much for your help

0 Likes 0 ·
Miguel C12 avatar image Miguel C12 commented ·

Good afternoon again,

Now that I adapted the model and everything looks to be working smoothly, i tried to add some new configurations to the model like a second row of combiners in order to increase the speed of production.

As you can see in the model, after the pallets run through the second combiner they have to spend 80 seconds on the 8-queue block (that simulates an industrial oven) I created (I introduced the delay after the last queue is filled). After the 80 seconds have passed, the 8 products have to go to Queue7 and the oven (8-queue zone) have to be filled again and wait 80 seconds.

My problem come with the second group of products when they are going to pass from the oven to Queue7. It is supposed to pass in groups of 8 to 8 (this occurs with the first group) but the rest of the groups pass 12 products per group. Is there anything I can add to the Queue7 or to the model in order to restrict the number of products that pass? I added a Max Content = 8 to Queue7 but that doesn´t seem to be working.

Thanks a lot,

Lego2.fsm


0 Likes 0 ·
lego2.fsm (53.2 KiB)
Eric M avatar image Eric M Miguel C12 commented ·

Hi @Miguel C12, what's happening here is that any token that leaves the "Assembly" combiners (including those waiting in queue 16) get put in the delay. This means the "move object" command moves all of them even though they were never in the oven. This can be fixed with a "batch" activity that collects and releases 8 tokens at a time.

The other problem is that many of your wait for event activities' label matching / assignment were set to "assign" rather than "match." Match basically allows the token to stay connected to the flow item that it created at the beginning of the process (e.g. the token will only leave the wait for event activity if its matching flow item was the one that caused the event). If it's on assign, any token can move past the event any time a flow item executes that event and the token label will be reassigned to match that flow item.

lego2_EM.fsm

0 Likes 0 ·
lego2-em.fsm (52.2 KiB)