question

Helen avatar image
0 Likes"
Helen asked Helen commented

Sequencing production in Join Combiner

Good morning,

I'm trying to join items in a combiner based on a specific sequence. As a simplification, what I'm trying to do it is to produce 3 Product A and 5 Product B. At the same time, Product A needs to assembly 3 parts from Source 1 with 1 from Source 2 and Product B needs to assembly 2 parts from Source 3 and 1 from Source 2.

Based on the answer from Janette F in the forum, I'm facing several issues:

1. I don't manage to enter pallets one at a time.

2. I don't manage to join the parts instead of combining them. I've seen there is an option to batch but not sure on how to join them.

3. Even though I ask in the second product to be send to the Product B queue, it send it to the Product A queue.

Thanks in advance,

Helen


CombTRIAL2.fsm


FlexSim 23.2.1
combinersequencejoin
combtrial2.fsm (40.0 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

Felix Möhlmann avatar image
1 Like"
Felix Möhlmann answered Helen commented

1. Just set the maximum content of the queue to 1.

2. What exaxtly do you mean by "join" here? The combiner fixed resource has an option to join items, meaning it will delete all items but the container before releasing it. Is that your goal?

3. You are looping the tokens. As a result, each pallet will receive items indefinitely and swap between the two product queues every time it does. It seems your Process Flow should actually look more like below.

1702884666896.png


1702884666896.png (26.1 KiB)
· 5
5 |100000

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

Helen avatar image Helen commented ·

Thank you @Felix Möhlmann,

1. This worked

2. Yes, that's exactly what I want.

3. I tried to create a counter so that I'm able to discriminate whether it should combine product A or product B based on this post. I didn't manage. Moreover, it seems that it takes the correct combination of raw material but when delivering one product, it sends two.

Helen,

CombTRIAL3.fsm


0 Likes 0 ·
combtrial3.fsm (42.5 KiB)
Felix Möhlmann avatar image Felix Möhlmann Helen commented ·

Each time the token loops back to the start, the counter is reset to 0. Again resulting in an infinite loop. You have to split the activities, so the token can re-enter after the initial creation of the counter label.

1702887501036.png

In the Decide at the bottom you use "token.Counter = 12". "=" assigns a value to the variable in front of it. To 'equals' comparison is written "==".


You can use a "Destroy Object" activity to clear the items from the pallet. (Either after each batch or after all items are present.

combtrial3-fm.fsm

0 Likes 0 ·
1702887501036.png (13.8 KiB)
combtrial3-fm.fsm (43.6 KiB)
Helen avatar image Helen commented ·

Thank you, this was not really what I wanted. Once the first assembly is done, (2 source 1 and 1 source 2), I want to join the parts and move them to Product A queue. I want to do 5 of those and then move to Product B.

I've tried the following:

1702891831784.pngCombTRIAL4.fsm

Now, the join is done as intended but the sequence doesn't work. I guess that this is related with the use of the of the sink in the Product A container. It is needed to be able to send it but does it reset the value of the Counter?

Thank you,

Helen


0 Likes 0 ·
1702891831784.png (50.1 KiB)
combtrial4.fsm (44.4 KiB)
Felix Möhlmann avatar image Felix Möhlmann Helen commented ·

I assumed that you wanted to place multiple batches on one pallet since you kept the token looping back after my first answer.

The Event-Triggered Source creates a token for each object that enters the combiner queue. So you can think of the token as a representation of that specific pallet. If each pallet should receive one batch of items and then move on, the token should not loop back.

There are multiple other ways to get the correct sequence. You could for example make the "counter" label global (either by using an "Global Variable" or by assigning it as a label to a persistent object).

In the attached model I placed the counter label on the combiner queue.

combtrial4_1.fsm

Other methods would be:

- Assign which product should be produced as a label to the pallet when it is created and read that label in the Process Flow, sending the token down the respective path.

- Use the input statistic of the queue or a Process Flow activity instead of a visible counter.

Note: Please place follow-up posts as comments under an existing answer/comment instead of creating a new answer (except if the new post is in fact an answer to the original question).

0 Likes 0 ·
combtrial4-1.fsm (43.3 KiB)
Helen avatar image Helen Felix Möhlmann commented ·
Thank you @Felix Möhlmann, I managed.

I should start working more with process flow and the interaction with the 3D model.

0 Likes 0 ·