From Planimate Knowledge Base
Revision as of 12:49, 26 October 2020 by Rick (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

  Delay: One or more servers in one object


In simulation, objects that can hold an item and apply a process delay time before releasing the item are known as Servers.

The Planimate Delay object has the ability to delay one or more items at a time.

Delays are used in situations where one or a number of items undergo a delay (representing some operation) in parallel or together. The process delay time can be zero, fixed, or made to vary from item to item, with a choice of distribution patterns.

The number of items that may be held in the Delay can be varied in the model over time. This enables you to model situations such as workdays and weekends, lunch breaks, work shifts and regular down time.

The process delay is configured via the object's context menu and can be set per item class.

During a model run (but not in User Mode) clicking on a Delay's icon (or its head in "road" mode)  enables you to browse its items. You can see:

Item Entry Time;  Item class;  Item ID;  Time-till-departure.

Clicking on a line in this list will show the item details for that item.


Delay Objects have these states:

MultiServer-Idle.jpg  Idle   No items are currently in the Delay.

MultiServer-Busy.jpg  Busy   At least one item is currently in the Delay.

MultiServer-Blkd.jpg  Blocked   One or more items are blocked from leaving the Delay.

MultiServer-Unav.jpg  Unavailable   The Delay has entered a period of zero server availability.

Stopped&npsb;  The Delay has been suspended/interrupted by the Control attribute being set to 0.

Note: A MultiServer with a capacity set to 0 sets itself to "Unavailable" state, as long as there are no items present or blocked in which case the busy/blocked states take priority.

Delay Settings


Enables the capacity of the MultiServer to be set.
The Capacity of a MultiServer may be determined in a range of ways:

  • As a constant value that does not change.
  • By reference to an Attribute which may change over time or change based on other conditions in the model during the model run.
  • Using an Attribute reference will enable the capacity to be changed during a model run.

For example, when an item enters the MultiServer the Attribute it is carrying can determine the new MultiServer capacity.


An attribute can stop and resume a Delay. When the control attribute is set to zero, the delay is stopped and all items in the Delay are suspended and resume the delay they were performing when the control attribute becomes non zero.

Delay Options

Show as Road

This option enables a Delay to animate Item process delays along a straight line.

You can adjust the line using the Position Exit option of the Object Edit Menu.

Items with varying delay times are displayed overtaking each other and moving at different speeds.

Adjust the model's Update Interval to adjust the smoothness of your animation.

With this option set, you are also able to adjust the number, and spacing of "Lanes" the items can use as they travel along the line. (Lane Selection will be random during a model run).

Pausable 0 Delay

Pauseable Zero Delay Delays

For full details refer to this page: Pauseable Zero Delay Delays

No Blocking between Items Option

Delays have an option to prevent a blocked item from blocking other finished items.

This makes it act more like a dispatcher when many items are finished and one is blocked.

No blocking between items option is on by default for new servers.

This option is on by default.

If you turn this option off, you create a single exit point for a Delay.

Then, whenever an item is blocked from leaving a multi-server, ALL subsequent items in the Delay become blocked. This single exit is sometimes useful because it maintains the exit order of the items, based on when they finished their delay.

Delay Time

The delay an item undergoes is specific to its item class. Hence if multiple item classes use a Delay, you need to configure them separately.

The context menu for the object lists all the classes using the object so they can be edited.

The delay is set using a Distribution Pattern Dialog.
Refer to Editing Object Properties for information about editing properties common to all objects.

Delay Articles

Delay Object Frequently Asked Questions