Machinery TwinDocs

App modes: Idle, Simulation, Online

The single most important concept, what runs in each mode and where variable values come from.

The mode switch in the toolbar puts the whole project in one of three states. Every variable has two configurations, one for Simulation, one for Online, and the mode decides which one is active.

Idle

Nothing is computed. Objects sit at their static pose. Use Idle while you build: importing models, positioning objects, wiring bindings.

Simulation

The simulation loop runs every frame:

  1. State machines tick first and write to their target variables.
  2. Variables are computed in dependency order using each variable's Simulation config, constants, functions (sine, master clock, and so on), motion cams, or values copied from other variables.
  3. The scene re-renders with objects reading the fresh values.

Simulation needs no hardware and runs entirely in the browser. It is how you validate motion, timing and sequence logic before a PLC is involved, and how you demo a machine that doesn't exist yet.

Online

The same loop runs, but each variable now uses its Online config. The key extra mode is From Connection: the value is read from a PLC tag over a live connection (Siemens S7, Beckhoff ADS, or OPC UA). Variables not bound to the PLC can still use constants, functions, or cams in Online mode.

Online mode requires the Windows PLC Connector. See Connectivity for the architecture.

Same twin, two lives

Because each variable carries both configs, the same project switches between a purely simulated machine and a PLC-driven one without any rewiring. A common workflow: build and tune everything in Simulation, then fill in the Online config of the handful of variables the PLC owns.

What survives a mode switch

Switching modes does not modify your project, it only changes which computation runs. State machine runtime state (current state, timers) resets when simulation restarts.

On this page