Built on Oliver · Energy & fleet maintenance

The fleet is the baseline.

A turbine is not underperforming against a number in a manual. It is underperforming against the other four hundred and ninety‑nine turning in the same wind. Judging an asset against its own siblings is the whole job — and it only works if you kept what they all did, at the rate they actually said it.

OPC UA · Sparkplug B CAN · DBC full source rate
What the average hides

Sampled every second. Stored as a ten‑minute average.

It is standard practice, and it is six hundred readings collapsed into one. The literature on turbine monitoring is blunt about the cost: transient anomalies simply cannot be detected in averaged signals, and the fastest‑moving channels — the ones that move first when something is wrong — lose the most.

generator torque · one hour every readingten‑minute average
the excursion that started it 600 readings → 1
The event is in both charts. It is only visible in one of them.
Two fleets, one shape

Hundreds of near‑identical assets, all talking at once.

energy

Turbines, arrays and storage

Every nacelle, string and cell reporting continuously. The questions are comparative: which asset is off its curve for the conditions it is actually in, and how long has it been drifting.

  • Power against wind, per turbine, against the site
  • The same gearbox signature, searched across every machine
  • Degradation measured against the sibling that was commissioned beside it
  • Curtailment and availability, reconciled to the meter
OPC UA · Sparkplug B · SCADA historians · per‑signal retention
fleet

Trucks, buses and EVs

Hundreds of signals a vehicle, continuously, from the bus itself. A breakdown costs thousands and strands a route — and the signature that predicted it was usually visible weeks earlier.

  • Fuel or energy per mile against the fleet on the same route
  • Fault codes correlated with the conditions that preceded them
  • Battery state of health, per pack, against its cohort
  • Which units share a part, a batch, or a depot
CAN · DBC · ASAM MDF · telematics gateways
The query that matters

Which one is not like the others?

A fixed threshold fires on a windy day and stays silent through a slow decline. A sibling comparison does neither. Every asset is scored against the fleet it belongs to, in the conditions it was actually in — which means one query over every asset at once, not one query per asset.

output against conditions · 240 assets4 off the curve
Each dot is one asset over one window. The outliers are not the lowest producers — they are the ones furthest from what their siblings managed in the same conditions.
Why it runs here

Keeping it all, and still answering quickly.

resolution

Store what the sensor said

Full source rate rather than an average of it, with retention set per signal — keep years of the coarse channels and weeks of the fast ones, without averaging either.

cardinality

Every tag, every asset

Hundreds of signals times thousands of assets is millions of series. That is a normal table here, not a capacity planning exercise.

comparison

The whole fleet in one pass

Scoring every asset against its cohort is one read rather than one query per machine — which is what turns a nightly report into something you can ask on the way to a decision.

signatures

Find it everywhere it happened

Take the shape that preceded one failure and search every asset and every month for it — the query that only exists if the raw readings were never thrown away.

deployment

At the site, not just the centre

One small binary runs at a substation or a depot with intermittent backhaul, and the same engine runs centrally. Same queries either end.

agents

An engineer that reads everything

Point an agent at the asset record and let it work through a fault across telemetry, work orders and parts history, under a key scoped to what it may see.

The signature was there weeks before the failure.