FlexSim Licensing Display Down
Our License server is experiencing an unknown error that is causing licenses to not be displayed in your FlexSim account. Activating & Returning licenses from within FlexSim is still functioning correctly. If you do not have access to your license activation code please contact your FlexSim Distributor


Adil M avatar image
Adil M asked Felix Möhlmann commented

Conveyors stops in case of volume accumulation

In the current state if the packages are not picked by operators they flow to the end of the conveyor and end up at the missed_package pallet. I want to simulate a model wherein the last section of the conveyor is not powered(gravity conveyor) and the packages move to the end of the end and start filling up. Once a certain sections is filled I want the section before that to also stop getting power. Is that something we can simulate?

We can break the conveyor into 5 sections with the last one not having power, and as packages accumulate in the last section(5th sections) the 2nd last sections(4th section) losses power(becomes gravity conveyor) and if packages accumulate there the 3rd sections losses power and so on. Stnadard work Final Phase 2 Grab 2 and go Stratergy no port conncetions_autosave.fsm

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

Jason Lightfoot avatar image Jason Lightfoot ♦ commented ·
In your mind what is the change in behavior between a gravity conveyor and a powered conveyor? What happens differently to the items when power is cut? Is it just a speed change? If so you can use photoeyes to detect the accumulation and change speeds.
0 Likes 0 ·
Adil M avatar image Adil M Jason Lightfoot ♦ commented ·

A speed change yes, but we would need 2 photo eyes(one at the start of the section and one at the end of the section) to be blocked together in order to slow down the section before it to stop. Not sure how to put that condition on the model.

0 Likes 0 ·

1 Answer

Felix Möhlmann avatar image
Felix Möhlmann answered Felix Möhlmann commented

Two Photo Eyes being blocked at the same time could result in false slow downs, because two items might coincidentaly have the required gap to pass them at the same time.

I would suggest to use a single photo eye at the end. If it stays blocked for longer than an item would normally require to clear it, the speed of the upstream conveyor gets reduced. This is relatively easy to set up in a Process Flow.


(Run the command in the script console to open the sink at some point to see how the conveyors behave when item are clearing out).

Alternatively, you could use the Entry/Exit triggers on each conveyor section to add up the total length of all items in a label. When that value reaches the length of the section (or close to it), reduce the speed of the previous section.

· 10
5 |100000

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

Adil M avatar image Adil M commented ·

Hi thank you for your response. The reason I did not use process flow was because I don't know how. Is there a way this can be achieved without using process flow?

I tried adding conveyors and photoeye to the model but was not able to add a time delay in the triggers. The only options I could see were change speed on block but that seemes instantaneous. Furthermore, while I understand that adding two might not be the way since both of them can be covered at the same time I feel the time delay could be helpful. I could not find any trigger or condition that can be added to change conveyor speed only when multiple(2 or more) photoeyes are covered for a fixed period of time. Base model.fsm

0 Likes 0 ·
base-model.fsm (77.6 KiB)
Felix Möhlmann avatar image Felix Möhlmann Adil M commented ·

The possibility to delay the execution of code within a function was only added to 22.0 and later versions.To work around this you can send a delayed message to the Photo Eye when it becomes covered. Then you check if it is still covered by the same item in the On Message trigger.

A simpler approach would be to utilize the On Entry and On Exit triggers on the conveyors themselves and forego the use of Photo Eyes entirely. Whenever an item enters or exits a conveyor, a label that holds the total length of items on the conveyor is updated. When that value appraoches the lenght of the conveyor (the conveyor is full) the speed of the next upstream conveyor, referenced through a centerport connection, is reduced. When the total length falls below a threshold, the speed is increased again.


I would still suggest that you try to find time to familiarize yourself with Process Flow. It is a powerful tool that allows to build quite complex logic without the need for much coding experience.

0 Likes 0 ·
Adil M avatar image Adil M Felix Möhlmann commented ·

Base model 2.fsmThanks Felix- I could not find where in the model are we creating the label 'TotalItemLength' ? I checked the source and the start of the conveyor but could not find it. I also see that we still have some process flow in the model is that still required if we are not using photoeye?

I added the code on my model but obviously ran into error since my model does not have the label. Can you please add the logic to my model? It would be helpful since I had built the physical structure on it already

0 Likes 0 ·
base-model-2.fsm (102.0 KiB)
Show more comments
Show more comments

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

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