Lattice24 · Technical brief

Detecting sensor drift without a reference

The problem

A failed sensor alarms. A drifted sensor does not.

It reports a plausible wrong number, and the control room has no way to know. That is why calibration runs on a schedule rather than on demand — nobody can tell which instrument has moved until someone brings a reference to it. Between calibrations you are running on numbers whose error is unknown and unbounded.

What we do

We read your existing sensor stream through a second, independent estimator and watch the two readings separate. The disagreement tracks the sensor's true error — with no reference instrument involved.

Worked example · ethanol · month 3

1.808 Disagreement — measured live, no reference
1.831 True sensor error — measured after, against a calibrated reference

The size of the failure was called correctly by a system that never saw the reference.

36-month sensor degradation benchmark · 13,910 samples · 16 sensors · bootstrap CI
Productr95% CIHolds
Ethylene+0.983+0.806 → +0.997Yes
Ethanol+0.914+0.144 → +0.992Yes
Acetone+0.789+0.425 → +0.947Yes
Toluene+0.581−0.850 → +1.000Too few points
Ammonia+0.100−0.684 → +0.902No

Three of five products hold, with intervals entirely above zero. Ammonia does not — an earlier five-batch estimate of +0.562 did not survive testing across all ten batches and is withdrawn here rather than quietly dropped.

Why it works

The second estimator does not need to be more accurate than your sensor. It needs to fail differently. Two independent readings of the same process drift apart in a way a single reading cannot reveal, and the size of the gap carries the information.

That is why the method needs no calibration gas, no reference cell and no downtime — only the data you are already logging.

What we are not claiming

Stated plainly, because these were tested and did not hold.

NotA more accurate sensor. On absolute concentration our best result is R² 0.451. We do not replace your instrument.
NotDrift correction. A model trained on month 1 and applied at month 36 performs worse through our representation than through the raw channels.
LimitHolds on three of five products tested. Ammonia fails outright. We do not yet know what distinguishes the products where it works.
LimitOnly ethylene is tightly bounded. Ethanol's interval runs +0.144 to +0.992 — positive, but not precisely located.

Evidence base

The underlying engine has been run across 100 measurement domains and a blind random draw of open scientific datasets, with all results — including failures — published under CC-BY-4.0. Oil & gas domains from that run, one unmodified pipeline, no per-domain tuning:

Signal against randomised surrogate
DomainChannelsSignalp
Compressor station2523/255.2e-06
Gas distribution2424/241.2e-07
Drilling rig1514/158.4e-03
Refinery unit88/87.8e-03
Pipeline pressure98/91.3e-01
Gas turbine119/118.3e-02
Wellhead101/103.9e-03
Pump bearing100/102.0e-03

Wellhead and pump bearing invert — their readings are far more regular than a randomised surrogate. That is the signature of a tightly controlled or steady-load system, and the direction of the inversion distinguishes a controlled process from an uncontrolled one. Both are reported here rather than omitted.

What a pilot looks like

  • You supply historical logs from one unit — six to twelve months, whatever you already archive. No new hardware, no site visit, no interruption.
  • We report, for each channel, whether it carries a readable signal and where the disagreement grows over the period.
  • You check our flagged dates against your own calibration and maintenance records.

If the dates line up, the method works on your plant. If they do not, you have lost nothing but a data export — and we will say so.