question

Paúl Alejandro R avatar image
0 Likes"
Paúl Alejandro R asked Paúl Alejandro R commented

Close and open ports problems

Hello, I need help with the following.

In the attached model I have 5 items which are combined with some complements. The combination items+complements have an item type and a label (WIP): 0111, 0112, 0113, 0114, 0115, respectively. These products could be processed in 5 processors (1-5). Processor 1 processes products with the following itemtypes 0111 and 0115, and the other four processors can process all items (0111 - 0115). Processor 1, Processor 4 and Processor 5 work in batches, with a minimun capacity of 20 items and a maximun capacity of 30 items. Processor 2 and Processor 3 have a minimun capacity of 5 items and a maximun capacity of 10 items. For this reason I sent messages in queues 1, 2 and 3 to closeoutput and openoutput.

1.- I need processor only process a batch of the same items at a time. It means no other batch of items can enter to the processor until the previous batch finish to be process, so in Processors 4 and 5 I sent messages to stopinput and openinput, but once the input close it does not open again. How I can resolve this problem?

2.- I am using a operator to move items from Queues 2, 3 and 4 to Processors. The operator have a capacity of 30 units. Is it possible that the operator load an specif type of items each time?; because in the model it load different itemtypes until complety his maximun capacity. If there are 3o units of the same type the operator should load all of them, but if there are less than 30 it only should take that quantity.

3.- Items which enter to Queues 3 and 4 can be process in Processors 2, 3, 4 or 5. However, there is an issue in the way Flexsim in processing a bunch of items. For instance, if there are 45 items with an itemtype 0111, Flexsim is taken 30 units to process in Processor 2 and the 15 remaining items are waiting to complete a new batch of at least 20 item; however, I would want that Flexsim to divide 25 to be processor in Processor 2 and 20 in Processor 3 to avoid to have death time in processors. Is there any way to achieve this behavior?

model-example-pf.fsm

FlexSim 18.1.1
operatorclose and open ports
· 8
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

Joerg Vogel avatar image
0 Likes"
Joerg Vogel answered Paúl Alejandro R commented

I don't think this should be an accepted answer. Here are some remarks.

The different batch conditions should you solve inside of queues. Queues can batch items better than a processor, because a processor is going to work when there is something to do. It gets difficult to stop a processor and allow entering products. (1)

You can control the capacity of the processor directly or you close their input, if you don't expect any more items entering the processor.

The item distribution conditions matches with a combination of Send To Port first available and Pull Requirement in the processors. The two processors which are allowed to process only 0111 and 0115 using the Pull option on the Flow tab in their properties. You set a logical expression that compares the item type to be equal to 0111 or 0115 in the Pull Requirement.

The standard sending and receiving procedure has got a priority mechanism. The standard is set to push items. But if a next object is set to pull items the standard push procedure is set to a lower priority. The outgoing item is tested to be pulled first. After that the item is pushed to the output ports still available to receive items, if the item is still available to be sent.

· 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.