Tags and the asset model
How tags from heterogeneous field equipment normalize into one well, facility and tank model, and why the original device tag is always retained.
The problem normalization solves
A field with equipment from four vendors and fifteen years of installation history has four names for tubing pressure, at least two units conventions, and one register that means something entirely different on one make of controller than on another.
Left alone, that inconsistency propagates into every chart, every alarm threshold and every report built on top of it. Normalization is not tidiness — it is what makes a threshold set once apply correctly everywhere.
The model
Assets form a hierarchy:
- Company — the grant boundary. Everything visible to a user is bounded by their company’s grants.
- Facility / battery — the thing a pumper actually visits.
- Well — the producing entity your books are keyed to.
- Tank — a single vessel, belonging to a battery, with a service (oil, condensate or water) and optionally a strapping table and a linked level transmitter.
A tank battery becomes measurable once it has at least one tank with a strapping table.
What a normalized tag carries
Every point resolves to a model location and retains:
| Field | Why |
|---|---|
| Source device | So a value can be traced back to what produced it |
| Original device tag or address | So the mapping stays checkable |
| Engineering units | Retained, never silently converted |
| Acquisition time | When the platform read it |
| Source timestamp | Where the protocol carries one, e.g. DNP3 events |
| Quality state | Mapped from protocol quality where it exists |
The original tag is never discarded
This matters more than it looks. When somebody challenges a number, the useful answer is not “the model says 412 PSIG” — it is “that came from register 40021 on the controller at this site, scaled by 0.1, read at 09:14”.
Keeping the original tag alongside the model point is what makes that answer available.
Gauge capture uses the same model
A manually gauged tank resolves into the same hierarchy as an instrumented one. Downstream, both are the same kind of measurement; they carry different provenance and the platform records which is which.
Where a tank has both a level transmitter and a manual gauge, the two are cross-checked, and a drifting transmitter appears as a growing disagreement rather than as silently wrong data.
Units are never silently converted
If a device reports in one unit and a report wants another, the conversion is explicit and the original unit stays attached to the stored value. A converted figure is identifiable as converted.
Silent unit conversion is a common source of errors that survive for years, because the resulting number is plausible and nothing records what happened to it.