Skip to content

Our Solution Areas

Artificial Intelligence & Machine Learning

Data analytics, forecasting, computer vision and intelligent decision support systems.

Industrial machine learning starts with data, not with picking a model: a model built without knowing which signal is sampled at which rate, with which timestamp, looks good on a laptop and degrades on the floor. Whether the job is predictive maintenance, anomaly detection, quality prediction or process optimisation, the test is the same — the model has to stay correct under production conditions, including when nobody is watching it.

Where it pays off

In a production environment, machine learning earns its place mostly by seeing changes that are too slow or too multi-dimensional for a person to catch. A bearing’s vibration spectrum drifts over weeks; the quality of a part out of an injection mould depends on the combination of eight parameters. Both are things an eye looking at one gauge at a time misses.

The applications we work on most often:

  • Predictive maintenance. Extracting pre-failure patterns from vibration, current signature and temperature data on rotating equipment — motors, bearings, pumps, gearboxes — so that planned maintenance follows the actual condition of the machine rather than a date on a calendar.
  • Anomaly detection. Learning normal operation only, with no fault labels, and flagging deviation. In industry this is usually the approach that works, because the data everybody has in abundance is “everything is fine” data.
  • Quality prediction. Inferring, in real time and from process parameters, a property that otherwise arrives from the lab at the end of the shift — what the literature calls a soft sensor.
  • Demand and production forecasting. Separating seasonality and campaign effects from the order history to feed planning with something better than last year plus ten percent.
  • Process optimisation. Deriving the trade-off between energy consumption, cycle time and scrap from data, then proposing parameter sets.

How we work

We start with a data assessment, not with model selection. The questions are: at what resolution are the signals sampled, are the timestamps aligned, can stoppages and shift changes be told apart in the record, and are failure events written in a maintenance log or kept in somebody’s head. The step is dull but it determines everything after it — misaligned timestamps let a model see the effect before the cause, and the result is a model that is perfect on paper and useless on site.

For data acquisition our preference is to work over OPC UA, using the control layer’s own tag dictionary. If a new measurement point is required we say so at the start: adding a sensor is both cheaper and more honest than forcing a model to guess.

In modelling we start simple. On tabular process data the gradient boosted tree family (XGBoost, LightGBM) usually outperforms deep learning, trains on far less data, and produces feature importances an engineer can actually interrogate. We move to deep learning when the problem genuinely calls for it — raw signals, images, or time series with long dependencies. Every experiment stays recorded in MLflow: which data version, which hyperparameters, which metric.

For deployment the criterion is model rollout that never stops the line. The model runs in a container or, converted to ONNX, on an edge device; if the inference service crashes the process is unaffected — only the prediction stream stops, and that shows up as an alert.

What makes industrial data different

Scarcity of labelled data. The central contradiction of predictive maintenance is that in a well-run plant failures are rare, so there is little to learn from. That is why we often build one-class or reconstruction-error approaches instead of classifiers.

Class imbalance. A model that calls a defect occurring once in a thousand parts “never present” scores 99.9% accuracy and is worthless. So accuracy is never reported on its own; precision, recall and false alarm rate go with it.

The real cost of a false alarm. If an operator walks to the machine three times for nothing, there is no fourth time. Threshold selection is an operational decision, not a statistical one, and it is made together with the maintenance team.

Concept drift. A model is not something you install and leave. Input distribution and prediction quality are measured continuously, and crossing a drift threshold puts retraining on the table.

How this connects to the other solution areas

A model is only as good as the layer beneath it. If the tag dictionary is inconsistent or the sampling rate is too coarse for the process, no algorithm compensates for that — which is why we run machine learning work as part of the same plan as data acquisition and analytics. Vision-based inspection is built together with machine vision and camera systems: if the lighting and optics are wrong, the model hunts for a defect where the camera never saw it. And when a prediction has to turn into an action, the industrial automation layer is what carries it.

Frequently asked questions

How much data is needed — is what we have enough?

The model type decides that; there is no single number. For anomaly detection a few months of properly collected "normal operation" data is often enough, because the model is looking for deviation. Predictive maintenance is different: it needs examples where the specific failure mode actually occurred, and if a machine has broken down three times in two years, training a classifier on those three examples is statistically meaningless. That is why every engagement starts with a data assessment. If the data is not sufficient we say so, and we build the measurement infrastructure first.

Will the model send commands to the PLC directly?

Not in the first deployment. We run the model in advisory mode first: predictions are produced, shown to the operator and logged, but they do not act on the process. That lets us measure the model's real accuracy under production conditions. Closed-loop operation only becomes a question once that measurement exists, once limits are clamped in hardware on the PLC side, and once the process is guaranteed to fall back to a safe default if the model becomes unavailable.

Do models degrade over time?

Yes, and that is expected behaviour rather than a defect. Suppliers change, tooling wears, seasons pass — the data distribution shifts and the relationship the model learned stops holding. This is called concept drift. What makes it dangerous is that it happens quietly: the model does not throw an error, it simply predicts wrongly. So every system we build carries a monitoring layer that measures input distribution and prediction quality, and retraining is triggered when a drift threshold is crossed.

Do we have to send our data to the cloud?

No. Training usually happens on a central machine because it wants more compute, but inference can run at the edge. Converted to ONNX and executed on an edge device, prediction latency drops to milliseconds and the system keeps working when the internet connection is lost. Where data must not leave the plant at all, training can be done on premises too.

Smart solutions, secure tomorrows

Let us carry your production into the future

Tell us about the bottleneck on your line and we will come back with a measurable improvement plan. Write to us for an initial discussion and requirement analysis.