Paul Toone avatar image
Paul Toone posted


The combiner is used to group multiple flowitems together as they travel through the model. It can either join the flowitems together permanently, or it can pack them so that they can be separated at a later point in time. The combiner will first accept a single flowitem through input port number 1 before it will accepts the subsequent flowitems through the remaining input ports. The user specifies the quantity of subsequent flowitems to accept through input ports 2 and higher. Only after all subsequent flowitems required by the user have arrived will the setup/process time begin. The combiner can be set to require operators during its setup, processing and repair times.


The combiner is a sub-class of the Processor, which is in turn a sub-class of the FixedResource. During operation, the combiner first receives exactly one flowitem from its first input port. It will wait until a flowitem has arrived through input port 1 before it allows other flowitems in. Then it collects a batch of flowitems using its component list. The component list specifies the number of flowitems the combiner should receive from each other input port for each batch.. Row 1 of the component list corresponds to the number of flow items that should be received from input port 2. Row 2 corresponds to input port 3, and so forth. The component list is updated automatically when you connect objects to its input ports. If you have the combiner's Properties window open when you add an input port, you will need to close the window and double-click on the combiner again to register the changes.

Once the combiner has collected a batch, it goes through a setup and Process time, calling operators to the setup and process operations as defined by the Processor functionality.

The combiner can operate in one of three modes: pack, join, or batch. In pack mode the combiner moves all flowitems that were received through ports 2 and higher into the flowitem received through input port 1 and then releases this container flowitem. In join mode the combiner destroys all flowitems except the one received through input port 1. In batch mode, the combiner simply releases all the flow items once the batch is collected and the setup and process times have finished.

The Pull Strategy field is not used for the combiner. The combiner handles this logic on its own.

If you are transporting flowitems into the combiner, then while it is receiving the container flowitem, it will only allow one flowitem to be in transit to itself at a given time, namely the container flowitem. Once the container flowitem has arrived, the combiner will allow all other flowitems for the components list to be in transit at the same time.

Tips on receiving more than one flowitem through input port 1: The combiner is configured to always receive exactly one flowitem from input port 1. If you are in batch or join mode, you may want to receive more than one flowitem from the upstream object that is connected to input port 1. Here you can do one of two things. The simplest option is to connect the upstream object to both input ports 1 and 2 of the combiner, then in the components list make the first row entry be one less than the number of flowitems you want to collect. The combiner will receive one flowitem through input port 1 and then the remaining number you want from input port 2. If this doesn't work in your scenario, then the other option is to add a Source to your model, connect it to input port 1 of the combiner, and give the Source a constant inter-arrival time of 0.

Tip on receiving different types of flowitems from the same upstream object: If you have a single upstream object that can hold many different types of flowitems, but you want to screen these different types separately in the combiner's component list, you can do this by connecting several output ports of the upstream object to several input ports of the combiner. For example, a combiner receives item types 1 and 2 from a single upstream Processor. You want to collect 4 of item type 1, and 6 of item type 2, and pack them onto a pallet. To do this, first connect the pallet's source to input port 1 of the combiner. Then connect the Processor's output port 1 to the combiner's input port 2, and then connect the Processor's output port 2 to the combiner's input port 3. Have the Processor's sendto strategy send by item type. Then in the combiner's component list, enter a 4 in the row corresponding to input port 2, and a 6 corresponding to input port 3.

Note on manually moving flowitems out of the combiner: If you manually move the container flowitem out of the combiner, either using a task sequence or the moveobject command, make sure that you specify a non-zero port number for the item to exit through. When the combiner is packing, it moves packed flowitems out of itself into the container flowitem. This causes its exit trigger to fire, and the way that it distinguishes between a part moving into its container and the container exiting is by the port number of the exit trigger. If the port number is 0, it assumes it is a part being moved into the container, and does nothing. Thus, if you explicitly move the container flowitem out of the combiner, and the port number is 0, it will assume it is a packed flowitem, and will not receive the next container flowitem.


Idle - The object has not received its first flowitem from input port 1.

Collecting - The object has received the first flowitem from input port 1, but is still collecting its remaining batch of flowitems.

Setup - The object is in its modeler-defined setup time.

Processing - The object is in its modeler-defined process time

Blocked - The object has released its flowitem(s), but downstream objects are not ready to receive them yet.

Waiting for Operator - The object is waiting for an operator to arrive, either to repair a breakdown, or to operate on a batch.

Waiting for Transport - The object has released a flow item, and a downstream object is ready to receive it, but a transport object has not picked it up yet.

Down - The object is broken down.

Properties pages


flexsim users manual
5 |100000

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



paul.t contributed to this article


FlexSim 2016.1