FoundryNet / Canonical Data Model / Manufacturing

VERTICAL · MANUFACTURING

Canonical Data Model for Manufacturing

2,461 mappings·1,027-field schema·ISA-95 categorized·deterministic

A single machine is an integration. A floor with eight vendors on it is a translation problem, and translation is where the budget goes.

Try it on your tags →See pricing →

The problem

One machine is readable. A floor is not.

A frontier model can read one machine's raw telemetry unaided. Point it at a Fanuc dump and it will work out that SpindleSpeed is an RPM. Pretending otherwise insults the reader. The hard part starts at machine number two.

Eight vendors on one floor means eight naming conventions, three unit systems and no shared definition of load: a percentage on a Haas, a torque ratio on a Sinumerik. An agent asked to rank your worst-performing machines is comparing percentages against ratios and calling it analysis. Roughly 70% of installed equipment is 20+ years old, so the fleet you own is a museum of naming decisions made before anyone expected a model to read them.


The canonical data model

Every vendor on the floor, one field set.

CNC, robotics and process assets resolve into the same schema, so a query spans the floor instead of one cell.

Raw vendor tagCanonical fieldISA-95 category
SPINDLE_SPEED_ACT→spindle_speed_rpmequipment_performance
S1Temp→spindle_temperatureequipment_condition
SPINDEL_AUSLASTUNG→spindle_load_pctequipment_performance
Conveyor1_Speed_FPM→conveyor_speed_m_sequipment_performance
PART_COUNT→part_countproduction_performance

Every row above is produced by the shipping engine, not written by hand. This page fails to build if any of them stops resolving to the field shown.


How it works

Deterministic resolution, in layers, with the answer shown.

Resolution is a lookup, not an inference. A tag is matched against a curated corpus of 2,461 confirmed vendor mappings; only if that misses does it fall to weaker layers: a normalized fold that strips unit suffixes and separators, then a signal classifier that reads structure and unit evidence. Each layer carries a lower confidence, and the layer that answered is named in the response. A mapping you disagree with is visible rather than buried.

Below a confidence threshold the engine abstains. An evidence gate refuses a match it cannot justify and reports the tag unresolved, by name, with the score and the reasons, because a wrong field at high confidence is far more expensive than an honest miss. Six read-time validators then check what survives: sentinel detection, physics bounds, stuck sensors, dropout, operating mode and correlation.

Units are converted to SI where the source unit is known, and every conversion is reported with its factor. A value that fails a physics bound is nulled with the bound it violated attached, not silently dropped.


Limits

What it will not do.

It does not invent fields. A tag outside the corpus that the signal layer cannot justify comes back unresolved and counted, and those names feed the roadmap for the next pack rather than a plausible guess in your data. It is a translation layer, not a historian: it holds no time series and replaces no SCADA system. And the container is a sandbox: it ships the deterministic layers and the canonical schema, not the production embedding, research and corpus-learning layers.


The proof

Pull the container. Send your own tags.

No key, no account, no sales call. The sandbox runs locally and answers with the same canonical schema production does.

docker pull ghcr.io/foundrynet/forge-sandbox

Paste telemetry from any two machines and watch them come out as the same schema. That is the whole demo, and it takes about a minute.

1,027-field schema
2,461vendor mappings
47vendor packs
12protocols

Next

Try it with two vendors at once.

One machine proves nothing. Two proves the point. See platform licensing for embedding the canonical data model in your own product, or pricing for usage-based API access.

Try it on your tags →See pricing →

Related

Other canonical data model pages

Fanuc CNC
Haas CNC
Siemens PLC
Unified Namespace
Why does a cross-vendor canonical data model matter? The Machine Agent breaks it down weekly. Read it →
Get the thesis behind this infrastructure: The Machine Agent, weekly.