← Back to project catalogue
GP-ME-1JLTYPIMechanicalOpen for request

CNC tool-wear prognostics

A prognostics laboratory for estimating CNC cutting-tool wear from prepared vibration, acoustic, current, and machining-condition data.

  • Nuxt
  • Vue
  • FastAPI
  • PostgreSQL
  • Python
  • NumPy
  • SciPy
  • scikit-learn
  • Docker

Project definition

Problem statement

Tool wear changes cutting forces and sensor signals, but the same signals also vary with material, speed, feed, depth of cut, tool geometry, and sensor mounting.

The engineering problem is to estimate wear or remaining useful life without leaking information between portions of the same machining run and to state uncertainty when operating conditions differ from training data.

Project objectives

  • Prepare synchronised machining conditions, sensor windows, tool identity, cut count, and wear measurements.
  • Extract time, frequency, and time-frequency features from selected signals.
  • Compare threshold, regression, classification, and sequence-based baselines where appropriate.
  • Separate complete tool runs between training, validation, and testing.
  • Measure wear error, maintenance-threshold detection, remaining-life error, and confidence reliability.

System design

System modules

01

Run data manager

Stores tool, workpiece, cutting conditions, sensor channels, sampling metadata, wear labels, and run splits.

02

Signal processor

Synchronises, filters, segments, and checks vibration, acoustic, current, and related signals.

03

Feature engine

Calculates statistical, spectral, band-energy, envelope, and selected time-frequency features.

04

Prognostic model

Estimates wear state or remaining life with run-separated training and saved configurations.

05

Maintenance dashboard

Shows tool history, predictions, uncertainty, thresholds, errors, and operating-condition differences.

Methodology

System workflow

  1. 01
    Load machining runs

    The student selects prepared runs and verifies tool, material, cutting, sensor, and wear metadata.

  2. 02
    Prepare windows

    Signals are quality-checked, synchronised, segmented, and assigned by complete run to fixed splits.

  3. 03
    Train models

    Baselines and selected prognostic models use the same training runs and features.

  4. 04
    Predict wear

    Test runs are processed in time order without access to later wear values.

  5. 05
    Review maintenance point

    Prediction error, confidence, and threshold timing are compared with measured wear.

Demonstration scenario

Several prepared milling runs train two wear models, while an entire tool run remains unseen. The dashboard replays the unseen run, compares predicted and measured flank wear, marks the maintenance threshold, and shows increased uncertainty when the cutting conditions move outside the training range.

Engineering

Technical architecture

Web application
Nuxt and Vue for run selection, signal plots, feature views, wear curves, thresholds, and comparisons.
Prognostics API
FastAPI for datasets, signal jobs, features, models, predictions, evaluation, and exports.
Data layer
PostgreSQL for runs, conditions, window metadata, features, wear labels, models, and predictions.
Signal pipeline
Python, NumPy, and SciPy for filtering, segmentation, spectral analysis, and feature extraction.
Model pipeline
scikit-learn and selected sequence models with group-based splits, uncertainty estimates, and reproducible seeds.

Testing

Evaluation

Evaluation measures

  • Mean absolute and root mean squared wear error
  • Maintenance-threshold precision, recall, and timing error
  • Remaining-useful-life error where run-to-failure labels are available
  • Performance on tools and cutting conditions excluded from training
  • Confidence calibration and out-of-distribution warning behaviour
  • Feature, training, and inference time across signal volumes

System boundaries

  • Predictions apply only to the documented tool, material, machine, sensors, and operating ranges.
  • The system does not control a CNC machine or stop a machining process.
  • A maintenance prediction does not replace inspection or manufacturer guidance.
  • Public, synthetic, or explicitly permitted machining data is used.

Included

  1. 01Machining run and sensor-analysis interface
  2. 02Signal, feature, wear, and remaining-life pipelines
  3. 03Wear trend, confidence, error, and maintenance dashboards
  4. 04Prepared machining datasets, experiments, and test results
  5. 05Complete source code in a private GitHub repository
  6. 06Complete project documentation with synopsis, abstract, methodology, machining and signal-flow diagrams, experiment results, screenshots, and conclusion
  7. 07Setup and usage guide

Project record

No buyer information is collected on this page.

Permanent project ID
GP-ME-1JLTYPI
Catalogued
21 Aug 2026
Completed
Pending
Verified
Pending
Demonstration
Added when ready

Handover

After purchase

  1. 01
    Payment is confirmed

    The project is marked unavailable and cannot be purchased again.

  2. 02
    Repository access is granted

    The buyer's submitted GitHub account receives access to the private repository.

  3. 03
    The purchase record is delivered

    The certification sheet is prepared from the reviewed buyer details and sent privately by email.