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.
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:
- Develop a robust machine learning model to detect and classify faults in induction motors.
- Utilize Continuous Wavelet Transform (CWT) for time-frequency analysis of motor signals, enabling better feature extraction.
- Address data limitations by employing augmentation techniques to enhance the dataset’s diversity and size.
- 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.

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.

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

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
- 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.
- 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.
- 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.