question

Kylian K avatar image
0 Likes"
Kylian K asked Ryan Clark commented

different flow items

question.fsmfor my simulation of a production situation i have the following question.

i have 4 production lanes available working to create 1 total product, this product consists of part a and part b.

if processor 1 is has gotten its product from the source i.e. part A, the processor should know part A takes 10 min. according to this processor 2 needs to know it needs to take part B from the source and that part B should take 12 minutes to process. but i do not want the processor to always take the same part. If processor 1 takes B processor 2 should take A and vice versa.

there should always be 2 of the processors working on A and 2 working on B.

at the end of the simulation there should be a combiner which knows that it always needs product a and b to start, not a and a or b and b.

can anyone help me with this?

i have added the flexsim file to demonstrate but it doesnt hold any of the above mentioned properties, yet.

FlexSim 21.2.4
proces flowmultiple flow items
question.fsm (29.5 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

Jacob W2 avatar image
0 Likes"
Jacob W2 answered Ryan Clark commented

@Kylian K,

I have provided an updated model that shows how to solve your question.

To begin I created a two triggers on the source. The first trigger gives each flow item a label, either type "A" or type "B" and is used to set the process times on the processors. This label is given with a 50% chance to be "A" and a 50% chance to be "B". The second trigger sets the color of the flowItem depending on which type it is. In this case "A" is green and "B" is red. This makes it easier to see what a processor is processing. The source then sends the flowItems out to each processesor sequential by using the round robin if available callout in the output properties. This means that each processor will process both type "A" and type "B" flowItems.

To set the processors processing time by the item type, I used the values by case option within the Processor properties on each processor. This allowed me to say the type "A" took 10 time units to process and type "B" took 12 time units to process. For this model I kept the time units in seconds so that it was easier to see the process flow. You can change the time units to minutes in the processor properties. Once processed, the flowItems were then sent on to the next queue and then the paint processors. The paint processors then separated the flowItem by type using a port by case callout in the output properties. The flowItems were sent into two queues before the combiner. This was necessary to allow the combiner to work.

The combiner can take multiple inputs and package them into a single flowItem. The first input port acts as the container for the final product. I used type "A" flowItems as the container. The second, and all following input ports can be given specific number of items needed to complete the finished product. I used the type "B" flowItems and set the combiner to need 1 flowItem to complete the product. I added a trigger that changed to final product color to orange when the combiner finished processing. I sent these items to a queue and disconnected the sink so that you can see that they were processed. I also added a dashboard so that you can see the number of each type of item processed in the processors to show that that each processor works on each type of item.

I hope this answers your questions.

Question updated.fsm


· 10
5 |100000

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

Jeanette F avatar image Jeanette F ♦♦ commented ·

Hello @Kylian K,

Here is an updated version of @Jacob W2 model with an edit to the logic for the first 4 processors. The Items are created in the source in the model and then pushed to the Items list. The process flow below has 4 tokens created; 2 with the label Type "A" and 2 with the label Type "B". Each token then pulls an item from the list with a matching Type label. The token then acquires an available processor and moves the item to the processor. Once the item has exited the processor the processor is released and the token cycles through the logic again.1643837336087.png

question-updated_1.fsm

0 Likes 0 ·
Kylian K avatar image Kylian K commented ·

Hi @Jakob W2 and @Jeanette F

thank you both very much for your answer, this solves some of my issues. but the first processors take the items based on a 50/50 chance correct?

this results in an uneven relation between those so for example more units a than b.

i need it so that if processor 1 draws item A, processor 2 knows to take item B. there shouldnt be a chance for both of them to process A at the same time.


there can also be a queue after the source in which a and b are waiting before the processor if this simplifies it a little bit.

0 Likes 0 ·
Ryan Clark avatar image Ryan Clark Kylian K commented ·

Hi @Kylian K,

I made some modifications to your model that should provide a solution for you. I didn't use the ProcessFlow that was being used earlier, but I used the Output/Input logic on the processors to accept any input at first, but then apply a label to the processor and the opposite label to its partner to have them pull items with different labels on them.

I hope this helps! Let us know if you have further questions!

question-updated-1-rc.fsm

0 Likes 0 ·
Kylian K avatar image Kylian K Ryan Clark commented ·

hi @Ryan Clark

thank you for your reply.

this also solves it somewhat, however in your document it is so that the same processor always runs the same item.

i need it to be that if processor 1 is done with item A, it will draw item B and that when processor 2 is done with B it will draw A. making the whole process more efficient as there will be less time waiting on product further down the line.

while still making it so that if one draws A the other should always draw B as i need the output of both items to be equal to create item C at the end of the line


0 Likes 0 ·
Show more comments