2023.1.1175.2 DES
When working on a preview setup-, or when only (production) process variation- and timing is relevant you will want to use Discrete Event Simulation (DES). DES is what a mechanical engineer would call - Kinematic - meaning ‘Simulating Motion without considering Force’. Arguably this way of simulating moving parts is more akin to creating a standard 3D animation: the transformations and material interaction are continuously calculated over a set of paths in the 3D world (called Splines).
Due to its continuous nature DES can also run much faster-than-real-time - allowing you to use it turn your material handling setup directly into a throughput simulation, or even extend it to help validate order planning.
DES & Material Handling
In Chapter 2 of the Digital Twin Planning & Development guide (add link after move) we present our core planning model for Digital Twins. The following Figure 1 is a cross-section of that models' Material Handling axis mapped onto DES Temporal and Spatial fidelity; this allows us to visually discuss:
(1) how different tools in DES help create increased material handling fidelity (vertical axis)
(2) how these tools map onto theoretical material handling fields (pink ovals)
(3) when these tools are best used in the development process in order to facilitate a comfortable project workflow (vertical axis overlap with pink ovals)
Figure 1 - Overview of DES tools mapped on Material Handling Fidelity
I | Scene
For DES to function in a scene all DES Monobehavior components must be transform children of a DES Controller component. You can change Material Handling playback speed in this Controller to run it faster-than-real-time (for e.g. throughput simulation) or slower-than-real-time (for e.g. analyzing motion faster than 25hz). You link DES material handling to A | Visualization & Other Modalities and B | External Interaction in the scene.
II | Shots & Splines
In the scene your Material Actors (Agents) can find their way over paths (or Splines) - To correctly define these splines we use ‘shots’ or ‘poses’ of said actors in the scene.
By default a spline offers a single degree-of-freedom (the actor can move up-and-down the spline) - but using different Motion Types and Spline Tensor Products much more complicated multi-degree motion (such as highly deterministic 2D Stacking) can be simulated.
III | Cues & Junctions
Points-of-Interest on these paths, can be specified using Cues (which can also be used as motion sensors) - and an interconnected network of splines can be created using Junction Cues.
IV | Instructors
As Material Handling systems become more complicated and interconnected you will find yourself in need of sub-system control - these are managed by Instructors. Note that Instructors are rarely the material itself; rather they guide the behavior of Actors based on events they witness in the scene.
Arguably you can follow the known subsystem subdivision you have in your plant (e.g. each conveyor has its own PLC, so each conveyor gets its own control mechanism); or you can base it on more ‘implicit’ systems of control (e.g. in the image above a traffic light is used to prevent unwanted ‘material interaction’ (e.g. collisions) - but note there’s no physical barrier for cars to run the light; participation in the sub-system is voluntary).
V | Actors
Actors (or Agents) are the Simulation participants that actually move through your material handling scenario - they are the containers of data that allow you to evaluate your material flow.
VI | Activities
All DES Participants (Actors and Instructors) can execute Activities during the simulation. Most notably Timers and (for Actors) Motion and (un-) Parenting
VII | Activity Sequencing
Actors in a Material Handling Scenario can adhere a temporal and spatial step-by-step planning - this firstly means you must be able to sequence Activities using Motion Web Instruction Sequences.
VIII | Compound Actors
Sometimes you need more detailed control over the sequencing of (nested) motion (e.g. Imagine a robot arm that can either move its end-effector, or its base - but not both simultaneously) In such a scenario it can be prudent to split up a single Actor into multiple nested Actors, each in control of a specific motion - this is when Compound Actors come into play.
IX | (Assignment) Buffers
A single Actor often cannot execute 2 tasks at the same time - this means you must be able to reserve an actor, or queue your assignment with the Actor - this is when you use Assignment Buffers. Where Assignment Buffers are used for temporal reservation you will need Material buffers for spatial reservation
X | Process Simulation
After combining the above tools to create an accurate simulation of your material handling scenario you may want to test what would happen when you release actual work-orders into the system; what would be the lead time? and what will the utilization of the individual (resource) actors be? The Process Simulation toolset offers you a way to quickly convert your DES setup to a Throughput Simulation.
Prespective Documentation