question

Aitor Oyarbide avatar image
0 Likes"
Aitor Oyarbide asked Jason Lightfoot commented

Combiner: Sort part from ports

Hi,

I have a conveyor that takes a Pallet, and then, I want to make layers of boxes in certain order.

For example: Pallet + Layer of 4 red boxes + Layer of 4 green boxes + Layer of 4 blue boxes + Layer of 4 green boxes and Layer of 4 red boxes.

How can I make (without using process flow PF):

1) Take boxes in certain order?

2) Take boxes from a port in two different moments of time? For example, red boxes go at the beginning (after the pallet) and at the end (last layer).

Thanks for your help.


1700813095420.png

FlexSim 23.1.0
combiners
1700813095420.png (131.5 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.

Jason Lightfoot avatar image Jason Lightfoot ♦♦ commented ·

Hi @Aitor Oyarbide, was one of Joerg Vogel's or Felix Möhlmann's answers helpful? If so, please click the "Accept" button at the bottom of the one that best answers your question. Or if you still have questions, add a comment and we'll continue the conversation.

If we haven't heard back from you within 3 business days we'll auto-accept an answer, but you can always comment back to reopen your question.

0 Likes 0 ·
Felix Möhlmann avatar image
0 Likes"
Felix Möhlmann answered Jason Lightfoot commented

Three options that come to mind (in ascending order of complexicity based on my perception):

1. Activate the "Pull" option in the combiner's Input tab in the properties and use the Pull Requirement to limit which type of item the combiner is allowed to pull depending on whether or not there is a pallet present and how many items are already on that pallet.

2. Control which items are available to the combiner by closing/opening the output of the queues after each layer of 4 items.

3. "Cheat" a bit by having each layer be its own process. Utilize the option to update the combiner component list in its On Entry trigger so it only pulls items for one layer. After a layer is finished, do not release the pallet but instead move it back into the combiner after updating a label so the next layer uses a different component list.

combine-in-layers-fm.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.

Aitor Oyarbide avatar image Aitor Oyarbide commented ·

Thanks Joerg and Felix for your answers. Some are tricky (and clever) and a bit beyond my level of understanding of Flexim but they make me think that probably I should learn to code a little bit.

Thanks a lot,

0 Likes 0 ·
Jason Lightfoot avatar image Jason Lightfoot ♦♦ Aitor Oyarbide commented ·
Alternative use a process flow and a basicFr - that's probably more transparent.
0 Likes 0 ·
Joerg Vogel avatar image
0 Likes"
Joerg Vogel answered

I have a global table to hold a recipe.

A combiner receives only the total amount of products in the sequence a queue provides.

This queue stores a sequence of port numbers inobjects, which opens involved outputs. Whenever an item enters this queue, the involved sending object closes its output instantly.

Codes are in triggers of queue called "parts in sequence". Main code is On Message trigger. On Reset setups the process. On Entry closes involved output object again. Providing product queue closes its output on Reset event.

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