semarx
Three facts
No training
The healthy reference is 360 averages taken from normal cycles. Nothing is fitted or learned.
No robot model
Works on standard controller telemetry — position error, torque and motor current. No dynamics model, no extra sensors.
Runs at the edge
0.75 ms per cycle on a single ARM core. First reading about 3 seconds into a cycle.

Results on real robot data
Tested on voraus-AD: a physical six-axis collaborative arm, 2,122 recordings, 12 fault types induced on the hardware. Ahead of six of seven published methods and within 5 points of the best, with about 2,800× fewer retained values and no training.


How it works
Your controller already records what the robot sensed, what it commanded, and what happened next — every cycle. We read how those three stay related. When friction, wear or an added load changes that relationship, the reading moves, even when position tracking still looks perfect.
Test it on your own data
-
Send us logs. Normal cycles, plus a log containing faults you know about but don't label.
-
We analyse blind. We return the timestamps and severity of what we detect.
-
You score us. You hold the answers; we see them only after we submit ours.
Research result from our preprint. voraus-AD dataset by Brockmann et al., IEEE Transactions on Robotics (2023), CC BY-NC-SA 4.0. Baselines as published.
​Preprint: How Much Model Does Condition Monitoring Need? Reading a Six-Axis Arm from Its Control Loop — Hafez, Nazeri, Wei (2026).