Skip to main content
Robotic assembly line with AI data analytics overlays
UC Berkeley · MIDS W210 · Capstone 2026

Kinetisys
Real-Time AI Insights for Robotic Operations

Detects anomalies, classifies 25 fault types, and explains what went wrong — in plain language — so engineers can act fast.

5,000 Screw Cycles Analyzed
25 Fault Classes
AI-Enabled Detection & Explanation

Assembly failures are hard to catch — and harder to explain

When a screw-driving robot fails — an under-torqued fastener, a stripped thread — the root cause is buried in raw sensor data that engineers don't have time to parse manually.

Slow Triage

Engineers manually sift through torque-angle curves to find anomalies, delaying corrective action on the line.

Opaque Signals

Raw sensor streams encode rich fault information, but extracting interpretable features requires domain expertise most teams lack.

No Actionable Explanation

Traditional monitoring flags failures without explaining why — leaving operators with an alert and no guidance.

Animated screw-driving experiment scene showing the fastening workflow

Animated view of the screw-driving sequence used to ground failure analysis before users dive into model outputs.

From raw sensor data to actionable insight

A four-stage pipeline transforms screw-driving sensor data into clear triage decisions — from ingestion through grounded AI explanation.

01
Data Ingestion & Preprocessing

PyScrew s04 dataset loaded via a configurable pipeline — handling duplicates, interpolating gaps, and standardizing sequence lengths.

PyScrew · Pandas · NumPy
02
Feature Engineering

Phase-by-phase statistical features extracted from torque, angle, and gradient signals across all four screw phases.

sklearn · Phase segmentation
03
ML Classification

XGBoost and Random Forest models handle binary OK/NOK detection and 25-class fault identification, with SHAP explaining each prediction.

XGBoost · RF · SHAP
04
AI Q&A & Triage UI

Engineers select any NOK event, review its torque-angle chart, and ask plain-language questions via a RAG chat layer.

FastAPI · RAG · Chart.js

Built for the operations engineer

AI-Powered Explanation

Ask "What went wrong?" — get a real answer

The grounded RAG Q&A layer lets engineers query any failure event in natural language. Responses are anchored to actual sensor evidence — not hallucinated — so operators can trust the explanation and act immediately.

  • Cites specific torque/angle evidence from the flagged cycle
  • Suggests next diagnostic steps based on fault class
  • Provides context from historical similar NOK events
AI RAG chat interface showing a natural language query about a screw failure event
Binary Classification

OK / NOK Detection

XGBoost and Random Forest models compete on binary fault detection using workpiece-grouped cross-validation, producing an anomaly score for every cycle.

  • ROC-AUC evaluated on out-of-fold predictions
  • Class-balanced training handles real-world imbalance
  • Grouped split prevents screw-pair data leakage
Multi-Class Fault ID

25 Fault Types, Ranked by SHAP

Each NOK event is classified into one of 25 fault categories — stripped threads, wrong conditions, misalignment — with SHAP scores highlighting the top contributing sensor features.

  • XGBoost multi:softprob for calibrated probabilities
  • SHAP TreeExplainer for global + per-event attribution
  • Top features surfaced directly in the triage UI

Built end-to-end with production-ready tools

Data Pipeline
PyScrew s04 Pandas NumPy Zenodo API sklearn Pipeline JSON→CSV
ML & Modeling
XGBoost Random Forest SHAP StratifiedGroupKFold joblib
App & Frontend
FastAPI Vite Alpine.js Tailwind Chart.js Docker

PyScrew s04 — Industrial Assembly Scenarios

The PyScrew s04 dataset captures real screw-driving operations under 25 assembly conditions — from nominal runs to stripped threads, wrong materials, and fault injections. Each cycle records torque, angle, time, and gradient at millisecond resolution across four fastening phases.

Each screw run is stored as a ScrewRun → ScrewStep → Measurements hierarchy, converted to structured CSV via a configurable PyScrew pipeline before feature extraction and modeling.

s04 Scenario

25 assembly condition variants, including normal and faulty states

4 Sensor Signals

Torque · Angle · Gradient · Time — per-step, per-cycle

4 Screw Phases

Finding · Thread-forming · Pre-tightening · Final tightening

OK/NOK Labels

Binary + 25-class labels with workpiece location and usage metadata

UC Berkeley MIDS · Capstone Summer 2026

A multidisciplinary team from the UC Berkeley Master of Information and Data Science program, combining expertise in machine learning, software engineering, and industrial data systems.

Headshot of Venkat Ramdas
Venkat Ramdas
App · Backend
Headshot of Charles DeWilde
Charles DeWilde
EDA · Feature Engineering
Karthik Bharathy
Modeling · SHAP
Headshot of Nedim Hodzic
Nedim Hodzic
UI/UX · Product Manager

Explore the code, data, and models

Everything — from the PyScrew pipeline to the FastAPI backend and Alpine.js triage UI — is available on GitHub. Contributions and questions welcome.