Files
znetsixe 4a9521154b
Some checks failed
CI / lint-and-test (push) Has been cancelled
fix: safety overfill keeps pumps running + minHeightBasedOn=inlet
pumpingStation 5e2ebe4: overfill safety no longer shuts down machine
groups or blocks level control. Pumps keep running during overfill
(sewer can't stop receiving). Only upstream equipment is shut down.

Demo config: minHeightBasedOn=inlet (not outlet). The minimum height
reference for the basin is the inlet pipe elevation — sewage flows
in by gravity and the basin level can't go below the inlet without
the sewer backing up.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-14 14:11:08 +02:00
..

EVOLV — End-to-End Example Flows

Demo flows that show how multiple EVOLV nodes work together in a realistic wastewater-automation scenario. Each example is self-contained: its folder has a flow.json you can import directly into Node-RED plus a README.md that walks through the topology, control modes, and dashboard layout.

These flows complement the per-node example flows under nodes/<name>/examples/ (which exercise a single node in isolation). Use the per-node flows for smoke tests during development; use the flows here when you want to see how a real plant section behaves end-to-end.

Catalogue

Folder What it shows
pumpingstation-3pumps-dashboard/ Wet-well basin + machineGroupControl orchestrating 3 pumps (each with up/downstream pressure measurements), individual + auto control, process-demand input via dashboard slider or random generator, full FlowFuse dashboard.

How to import

  1. Bring up the EVOLV stack: docker compose up -d from the superproject root.
  2. Open Node-RED at http://localhost:1880.
  3. Menu → Import → drop in the example's flow.json (or paste the contents).
  4. Open the FlowFuse dashboard at http://localhost:1880/dashboard.

Each example uses a unique dashboard path so they can coexist in the same Node-RED runtime.

Adding new examples

When you create a new end-to-end example:

  1. Make a subfolder under examples/ named <scenario>-<focus>.
  2. Include flow.json (Node-RED export) and README.md (topology, control modes, dashboard map, things to try).
  3. Test it on a fresh Dockerized Node-RED — clean import, no errors, dashboard loads.
  4. Add a row to the catalogue table above.

Wishlist for future examples

These are scenarios worth building when there's a session for it:

  • Pump failure + MGC re-routing — kill pump 2 mid-run, watch MGC redistribute to pumps 1 and 3.
  • Energy-optimal vs equal-flow control — same demand profile run through optimalcontrol and prioritycontrol modes side-by-side, energy comparison chart.
  • Schedule-driven demand — diurnal flow pattern (low at night, peak at 7 am), MGC auto-tuning over 24 simulated hours.
  • Reactor + clarifier loopreactor upstream feeding settler, return sludge controlled by a small pumpingStation.
  • Diffuser + DO control — aeration grid driven by a PID controller from a dissolved-oxygen sensor.
  • Digital sensor bundle — MQTT-style sensor (BME280, ATAS, etc.) feeding a measurement node in digital mode + parent equipment node.
  • Maintenance window — entermaintenance / exitmaintenance cycle with operator handover dashboard.
  • Calibration walk-through — measurement node calibrate cycle with stable / unstable input demonstrations.