Key Concepts¶
Consystence is built around a small set of core abstractions. Understanding these will help you navigate the platform.
Organisation¶
An organisation is the top-level commercial entity — equivalent to a GitHub organisation. It owns sites, users, licences, and device types. A single Consystence deployment can host multiple organisations with full tenant isolation.
Site¶
A site is a physical location: a mine, a processing plant, a port, or a workshop. Each site runs its own on-premises site server connected to the plant network. Sites belong to an organisation and contain processes.
Process¶
A process is a running industrial system with real equipment and I/O. Examples: a coal handling plant, a water treatment facility, a conveyor network. A process groups together the device instances, alarm configuration, and operator screens for a single system.
Device Type¶
A device type is a reusable template that defines everything needed to monitor and control a class of equipment:
- Tags — the data points (e.g.
MotorSpeed,BearingTemp,RunHours) - UI — the control screen layout and graphics
- Alarms — threshold and state-change alarm rules
- Commands — operator actions (e.g. Start, Stop, Reset Fault)
Device types are versioned and shared through the marketplace, similar to NuGet packages for industrial equipment.
Device Instance¶
A device instance is a configured device at a specific site — a real pump, conveyor, or crusher mapped to PLC addresses. It is created from a device type and bound to the tags on a particular PLC.
Scene Graph¶
The scene graph is the visual representation of a physical plant. It is a tree of graphical elements (pipes, tanks, valves, motors) rendered as SVG on the server and streamed to the browser. The scene graph is data-bound to live tag values, so colours, positions, and labels update in real time.
GUI DSL¶
The GUI DSL is the layout system that assembles operator screens. It defines pages, panels, grids, alarm lists, trend charts, and navigation — all as structured data. AI uses the GUI DSL to generate control screens dynamically based on the devices present at a site.
Three-tier architecture¶
Consystence operates across three tiers:
graph TB
subgraph Cloud["Cloud Tier — Azure"]
direction LR
ID[Identity & Licensing]
FM[Fleet ML Models]
MP[Type Marketplace]
end
subgraph Server["Site Server — On-Prem"]
direction LR
OS[Orleans Silo]
SG[Scene Graph Engine]
DB[(PostgreSQL)]
end
subgraph Edge["Edge Tier — Nvidia Orin"]
direction LR
ML[TensorRT Inference]
GW[PLC Gateway]
OB[Offline Buffer]
end
Cloud <-->|"gRPC + SignalR"| Server
Server <-->|"gRPC"| Edge | Tier | Runs on | Responsibility |
|---|---|---|
| Cloud | Azure | Identity, licensing, fleet analytics, type marketplace |
| Site Server | On-premises hardware | Orleans silo, scene graph rendering, alarm processing, historian |
| Edge Device | Nvidia Orin | PLC communication, ML inference, offline buffering |
Data flows upward for analytics and downward for configuration. Each tier can operate independently during network outages.
Next steps¶
- Quick Start — see these concepts in action
- Architecture — deep dive into the system design