The product
It reads the program your factory actually runs.
No digital twin to maintain, no re-modeling of the line. P-Atlas imports the vendor project — Siemens TIA or Schneider, plus the HMI — and everything downstream is grounded in that file.
One model
Three sources. One causal model.
The PLC program, the HMI project, and the live machine describe the same line in three languages. P-Atlas merges them into a single graph — 17,167 entities, 22,102 relationships — where an alarm text, the rung that raises it, and the input that tripped it are one connected path.
TIA project · HMI project · live values — one graph.
Ladder, rendered
Ladder logic in prose — 92% of networks, two languages.
P-Atlas renders the ladder the way the programmer drew it — rails, contacts, coils — then writes down what each rung does. In the verified program, 92% of logic networks carry an explanation like the one on the right, in English and Italian, each one generated from the causal graph and tied to its exact block and network.
Not summaries — grounded explanations, generated from the graph and cited back to the network they describe.
Explanation — EN
CONV_RUN — the conveyor run output %Q1.4 — energizes when start pushbutton %I0.3 closes while the cycle-ready flag %M2.1 is set; the coil’s own contact then seals the start in until the flag drops. If the conveyor won’t start, the operand to trace is %M2.1 — it is written in Network 2 of this block.
CONV_RUN — l’uscita di marcia del nastro %Q1.4 — si eccita quando il pulsante di marcia %I0.3 si chiude mentre il flag di ciclo pronto %M2.1 è attivo; il suo stesso contatto mantiene la marcia finché il flag non cade. Se il nastro non parte, l’operando da tracciare è %M2.1: viene scritto nel Network 2 di questo blocco.
Illustrative network in the product’s format.
The why-engine
22,102 relationships. One question: why.
When a line stops, P-Atlas walks the graph backward from the alarm — through the coil that raised it, the interlock that held it, to the input that started it — and writes the chain down in operator language. Where evidence is missing, it says so. An answer that hides its uncertainty is a guess wearing a uniform.
The live layer
Connected to the machine. Read-only.
P-Atlas connects to the running PLC over the protocols it already speaks — and the connection can only read. Live values overlay the exact contacts and coils that use them, so the logic on screen is the logic in the metal, now. Before trusting a link, the connector confirms the machine’s identity matches the project’s.
Writes fail closed and are audited.
S7 S7CommPlus Modbus TCP
LIVE — READ-ONLY
| Address | Symbol | Value | Protocol |
|---|---|---|---|
| %I4.2 | "S12_GUARD_DOOR" | TRUE | S7CommPlus |
| %Q6.0 | "ROBOT6_START" | FALSE | S7CommPlus |
| DB12.DBW44 | "XFER_STEP" | 7 | S7 |
| 40012 | "LINE_SPEED_RPM" | 61.4 | Modbus TCP |
Illustrative values.
The AI layer
The AI shows its state, not a spinner.
These orbs are the product’s own status language — the site is showing you the real interface vocabulary.
- Tracing the signal path
- Assembling the causal chain
- Writing the explanation
Model-agnostic by design.
Anthropic, OpenAI, or an on-premise model behind your firewall. Factories that never let source code leave the building don’t have to. The model is a component, not a dependency.
The write path
Edits that compile, or nothing.
Every program edit passes validation, a backup is taken, the change is imported and compiled in real TIA — and if anything fails, the original is restored automatically. 167 automated tests hold the whole system down.
Every edit passes validate, backup, import and compile in real TIA; if any step fails, the original program is restored automatically.