Function-Block Editor Logic

A graphical wiresheet sandbox — the kind of logic surface Niagara, EBO, and Distech all use. Add blocks, wire an output pin to an input pin, and a live tick loop carries values through the sheet. Not modelled on any one product; the goal is to feel how a control sequence is built. New to it? Start with Function-Block Basics →

Desktop tool

Wiring blocks on a wiresheet is drag work that wants a pointer and a wide canvas — open this page on a laptop or desktop to build and run a sequence. A finger can't both drag a block and pan the sheet, so it's pointer-only by design. Here's the mental model it teaches:

  • Sheets flow left to right. Sources (sensors, constants) on the left, logic and math in the middle, outputs on the right — read a wiresheet as a signal's journey.
  • Wire output → input, like to like. An output pin on a block's right edge feeds an input pin on another's left edge; analog only connects to analog, digital only to digital.
  • Comparators turn analog into digital. A greater-than or less-than block compares two numbers and emits TRUE or FALSE — the bridge from a measured value to an on/off decision.
  • Latches hold; loops settle. An SR latch remembers its last set or reset. A feedback wire carries the previous scan's value, so a loop settles each tick instead of hanging.
  • It runs as a scan, about ten times a second. Change a source and the whole sheet re-evaluates — the way a real controller cycles its program.
  • Blocks carry real units. The PID block's Ti and Td are in seconds — so if you tuned in the PID tuner's default reset (repeats/min), bridge it with Ti (s) = 60 ÷ reset before you transcribe the numbers.

New to wiresheets? Function-Block Basics covers the same ideas and reads fine on a phone.

Running
analog (number) digital TRUE digital FALSE

How it works

Click a palette block to drop it on the sheet; drag it by its title bar to reposition. To wire, click an output pin (right edge) then a compatible input pin (left edge) — pins only connect like-to-like, analog to analog and digital to digital. Click a block or a wire to select it; press Delete to remove the selection, or Escape to cancel a wire-in-progress. The inspector below the canvas edits the selected block's parameters live. Placing and wiring blocks needs a mouse or trackpad; the inspector and the sim-bar buttons take keyboard too.

The sequence evaluates ten times a second. Pure logic settles in a single pass; a feedback loop (an output wired back to its own chain) carries the previous tick's value, so a latch holds and a loop never hangs. Source and output blocks show their value; a digital wire turns green when it carries TRUE. Nothing is saved — reload, or pick a Try this example, to start fresh.

DIVIDE outputs 0 when its divisor is 0 — a guard, so a downstream comparator stays sane instead of reading Infinity or NaN.

← All simulators