logo of a stick man holding a beer

IsaacAdoboe.®

Machine Learning Technique to Detect Faults in Induction Motors

I dive into a summary of one of my earliest machine learning projects to detect faults in induction motors. This project, spearheaded to minimize industrial economic losses, presents an AI-based fault diagnosis framework.

Read time5 min read

Collaborators


Overview

The project aimed to develop an improved machine learning framework for diagnosing faults in induction motors. By using convolutional neural networks (CNNs) and advanced signal processing techniques like Continuous Wavelet Transform (CWT), the research highlights a non-invasive, accurate, and efficient fault classification process. Despite challenges, the results showed potential for further refinement and real-world application.

Introduction

Faults in induction motors can result in significant industrial downtimes, causing financial losses and operational inefficiencies. Traditional fault diagnosis methods often fall short in terms of scalability, accuracy, and efficiency. To address these challenges, this project explores the application of machine learning, particularly Convolutional Neural Networks (CNNs), to analyze sensor data and scalograms for fault classification. The non-invasive nature of this approach ensures that motors can remain operational during diagnosis, providing a practical and efficient solution for industries. The following are the objectives of the project:

  1. Develop a robust machine learning model to detect and classify faults in induction motors.
  2. Utilize Continuous Wavelet Transform (CWT) for time-frequency analysis of motor signals, enabling better feature extraction.
  3. Address data limitations by employing augmentation techniques to enhance the dataset’s diversity and size.
  4. Validate the model under real-world conditions, identifying strengths and areas for improvement to ensure its practical applicability.

Our primary goal was to train a Neural Network capable of detecting faults before they occur, allowing the motor to shut down and identify the specific fault for immediate action. This proactive approach can save significant costs, as motor repairs are expensive once faults are detected.

This project represents a forward-thinking approach to fault diagnosis, aiming to revolutionize how industries monitor and maintain induction motors.

Key Techniques and Literature Insights

The literature review revealed multiple methods for motor fault detection:

  • Signal Processing: Continuous Wavelet Transform and empirical mode decomposition were highlighted for extracting key signal features.
  • Machine Learning Models: Artificial Neural Networks (ANN), fuzzy logic, and clustering methods were explored.
  • Data Challenges: Many methods struggled with limited datasets and noise, emphasizing the need for robust augmentation and preprocessing.

Methodology

Data Collection

In this project, we purchased a perfectly working induction motor and run a bunch of experiments on it to collect data. Signals from current and vibration sensors were collected for five motor conditions: healthy, single phasing, overloading, bearing faults, and washer faults. Over 1,500 data points were compiled using MATLAB and Excel for preprocessing. Spoiler alert: The motor did not survive.

An example image

Signal Processing

MATLAB’s algorithms transformed raw signals into scalograms, which were then augmented by applying rotations (90°, 180°, and 270°) to expand the dataset. Applying rotations to the scalograms helps in data augmentation, a technique used to artificially expand the training dataset by introducing slight variations in the data. In this case, rotating the scalograms ensures that the model becomes more robust and generalizable by learning features that are invariant to orientation. This can improve the model’s ability to recognize faults in induction motors regardless of the orientation of the signal, leading to better performance and accuracy in real-world applications. This augmented our original 1,500 data points to 6,000, providing enough variety for most machine learning algorithms to effectively learn patterns in the data.

Scalogram

Model Training

CNNs are a specialized type of deep neural network designed primarily for processing grid-like data, such as images or time-series data. They consist of layers that automatically detect important features in the data, such as edges, shapes, or patterns. CNNs use a process called convolution, where a small filter (or kernel) slides over the input data, performing a mathematical operation to extract important features. These features are then passed through multiple layers, including pooling layers to reduce dimensions and fully connected layers for final classification or regression. CNNs are particularly effective for tasks like image classification, speech recognition, and, in this case, fault detection in induction motors.

I do not want to turn this into a Convolutional Neural Network class. If you are interested in diving deeper, here's a great blogpost from Towards Data Science -> Convolutional Neural Networks, Explained

Architecture of Convolutional Neural Networks

The CNN was built using TensorFlow and Keras, with 90% of the data for training and 10% for testing. Model training was executed on Google Colab to leverage free GPU resources.

Neural Network Architecture

  • Convolutional Layers: 64 filters, kernel size of 2, ReLU activation, and stride of 2.
  • Pooling Layers: Max pooling (2x2) optimized feature extraction.
  • Fully Connected Layer: Flattened output, softmax activation for classification into five labels.

Results and Analysis

Training Accuracy

After 20 epochs, the model achieved a peak training accuracy of 61.83%. The high recognition accuracy for healthy and single-phasing faults validated the potential of the approach.

Testing Accuracy

Testing produced consistent results, with accuracy settling around 60%. This close match between training and testing accuracy indicates good generalization.

Model Loss

The model’s loss value of 1.7 was within acceptable limits for an experimental setup with limited data.

Challenges

  1. Limited input data: The data collected was constrained due to the short runtime of the motor during experiments, limiting the variety and volume of training data.
  2. Low sensor sensitivity: The accelerometer sensor’s low sensitivity impacted the quality of the data, potentially reducing the model’s ability to detect subtle faults.
  3. GPU limitations: We believe that with access to more powerful GPUs, we could significantly improve the model’s training process, enabling faster training times and more refined learning of complex patterns.

Conclusions and Recommendations

This project demonstrated the feasibility of AI-driven fault detection for induction motors. The non-invasive framework using CNNs and scalograms showed promising results, but there’s room for improvement:

  • Use highly sensitive sensors for better signal quality.
  • Collect larger datasets for robust model training.
  • Expand the framework to other motor types and fault categories.

In industrial applications, this technique can be further refined to prevent motor failures, reduce downtime, and save costs. By integrating machine learning with condition monitoring, the future of motor diagnostics looks brighter than ever.

✦

Related Articles

Continue exploring similar topics

How I Efficiently Set Up My MacBook for Machine Learning and Productivity (2025 Edition)

•8 min read

Setting up a new MacBook always feels like a fresh start-a blank canvas ready to build, experiment, and get things DONE. Over time, I’ve refined my setup process, so whether you're just getting started in data science, or you're simply optimizing your workflow, here’s exactly how I set up my Mac for machine learning, deep learning, and general productivity.

DeepSeek Changes the AI Game-And Here's How

•11 min read

DeepSeek released DeepSeek-R1, a free, powerful, and open-source AI model. It's cheaper and more accessible than competitors like GPT-4, changing how AI is developed and used. This could shape the future of AI for everyone.

Building my portfolio website with NextJS, TailwindCSS and Velite in 3 weeks

•10 min read

Building my portfolio website with NextJS, TailwindCSS, and Velite in 3 weeks was a challenging yet rewarding experience. From planning to deployment, I explored modern web development tools, overcame obstacles, and created a clean, professional site that showcases my journey in data science, statistics, and life.

Don't miss the next post

Subscribe to get notified when I publish new articles. No spam, unsubscribe anytime.

Stay up to date

Get monthly updates on the latest insights, and unsubscribe at any time.