question

Bryan V avatar image
0 Likes"
Bryan V asked Joerg Vogel commented

Help me! Problem with split in Separator

Hello guys, i have a big problem.

I have 4 items types in my model: Product1, Product2, Product3 and Product4.

All these items are created from Source and going to enter the separator.

Product1 and Product3 dont need to be split, only processed and then sent to a specific output port.

Product2 and Product4 need to be split into 3 work items, then they needs to be routed to different ports, 2 items on queue1 and 1 on queue2.

My model works when i have only 1 quantity for each items:

Separator mult-Input.fsm ----------> This is the working model

But when i increase quantity of Product2 and Product4 from the Source, my model dont works good after the 5th item processed in the Separator:

not working.fsm ----------> This model is not working good after increase quantity

FlexSim 19.0.0
sourceflexsim 19.0.0separator logic
not-working.png (103.4 KiB)
not-working.fsm (14.8 KiB)
· 1
5 |100000

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

Jeff Nordgren avatar image
0 Likes"
Jeff Nordgren answered

@Bryan V,

Attached is your model with the changes that I've made. I hope that I have understood exactly what it is you are trying to do. In short, types 1 and three produce one flowitem going to the queues while types 2 & 4 generate 3 flowitems each.

Take a look at the model and see if something like this would work for you.

If you have any problems or questions, please let us know.

Thanks.

separator-mult-input-JN1.fsm


5 |100000

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

Joerg Vogel avatar image
1 Like"
Joerg Vogel answered Joerg Vogel commented

@Bryan V, I follow a different approach. Instead of modulus operation I use label value reset and decrement value to achieve the distribution of items to different queues.

  • On Process Finish the Send To Port function is not evaluated yet I set a label "CycleOutput" at the Separator to high value like 100.
  • Then Send To Port evaluates this label value current.CycleOutput to send the item to Port 1 in the case of value 100.
  • On Exit trigger increments the label current.CycleOutput by -1, which infact results in decrementing the value by 1.
  • Then all other items of the same process are going to Port 2 by default case in Send To Port function and they are decrementing the label value also.

You have implemented already splitting items and set Process Time by case. @Jeff Nordgren has implemented a sequence of items in different quantities. I added a Send To port mechanism, that starts over again On Process Finish and Send items To different ports.

.separator-multi-input-jn-jv.fsm


· 2
5 |100000

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