Currently, one of the lines of work of our group is about engine failure prediction given a time-series of many different measures of an electrical engine behaviour.
The dataset contains many different measures of the first 10 seconds of operation of an electrical engine. In total, we have up to 13 different types of measures, which can be divided into 9 (henceforth CVV measures) + 4 (henceforth V measures), because the first nine contains 120.000 measures (12K per second), and the other four "only" 30.000 (3K per second).
- Motor Voltage A
- Motor Voltage B
- Motor Voltage C
- Ground
- Motor Current A
- Motor Current B
- Motor Current C
- Motor Current N
- Encoder Counts (not exactly, but let's say that is the speed)
- Accelerometer reference.
- Accelerometer X.
- Accelerometer Y.
- Accelerometer Z.
The dataset has 2806 experiments.
The experiments were runned in different conditions of workload and frequency.
- Mixed workload.
- Medium workload.
- No workload.
- 3hz.
- 30hz.
- 60hz.
- Line.
Electrical engines can suffer three different types of failures, and those can happen at the same time, thats why for us, is a multi-label problem.
- Unbalance.
- Misalignment.
- Broken bar.
So, our main purpose is to be able to predict if one engine is going to suffer one (or many) of the mentioned failures.
There are different approaches to follow that can help us with this problem.
Currently we are working with a deep learning approach using recurrent neural networks like LSTM (long short-term memory). But we are having issues dealing with the dataset size. Our idea is to train a recurrent neural network with the following architecture, using convolutions for data reduction and hidden features learning, and LSTM for temporal-dependent features learning:
Other idea related with Deep Learning is to create a pure convolutional network with many convolutional layers.
We also want to try ARMA / ARIMA models which could work good for this specific time-series problem.