Keywords

1 Introduction

Wind energy is one of the most widely used forms of renewable energy generation in the world, providing (alongside solar) more than 10% of the world’s electricity according to Renewables 2022 Global Status Report [9]. For the generation to be optimal, the blades of the wind turbines (WTs) must be in operational condition, otherwise, the blade could fail due to the structural stresses caused by the wind hitting it, delamination of the fiberglass layers, amongst others detailed in [5], causing the disruption of operation to replace it or the exchange of the complete generator, incurring in significant economic losses. Thus, knowing the state of health (SoH) of the blades becomes a relevant indicator for reliability, safety, and economic reasons. This creates the need to monitor and diagnose the health state of the structure. Structural health monitoring (SHM) uses different techniques to accomplish this task. To diagnose the structures, the system needs data and as with most industrial machinery, WTs count with a Supervisory, Control, and Data Acquisition system or SCADA that measures relevant information about the structure (such as blade pitch, power generated, and wind speed) over a period of time. This information paired with different machine learning techniques allowed for several approaches to be raised. In Mylonas et al. [7] the authors introduce a machine learning-based strategy to use this information, paired with simulations of the blades, to infer the accumulated deterioration of the WTBs. For this, a conditional variational autoencoder was used to model the probability distribution of said wear. Another approach is postulated by Chandrasekhar et al. [1], where Gaussian Processes are trained to predict the edge frequency of WTBs based on the SCADA information of another of the blades combined with the ambient temperature, and then by calculating the residual error between the actual frequency and the prediction; and by putting a threshold to this error the blade is categorized as healthy or damaged. Another popular approach that tries to generate more information than the SCADA system is by instrumenting the structure to obtain, usually, acceleration responses that are analyzed and processed to obtain features that allow the identification of the SoH of the structure. This vibration-based SHM allows the calculation of new features that contain more information, and that can represent the different states of the structure in a better way. This allows for new types of analysis, such as modal analysis where the natural frequencies and mode shapes are used to characterize the healthy state, and by using artificial neural networks (ANNs) [3], statistical and/or modal damage detection [8] the same goal is achieved. Also, strategies based on outlier analysis, such as Tcherniak et al. [10], where Principal Component Analysis (PCA) was applied to represent the healthy state and uses Mahalanobis distance (MD) as a damage detection metric in a laboratory environment, and, in the same line of research, Ulriksen et al. [11] uses a similar strategy but in an operating WT. In the same manner, but without using PCA, Movsessian et al. [6] introduces an ANN that is trained to output this distance, and the damage detection is made by calculating the absolute logarithmic error between the output and the calculated MD. In another technique presented by Feijóo et al. [2], the authors used an autoencoder to reconstruct the healthy data obtained from accelerometer signals taken from an offshore wind turbine jacket replica. Instead of using dimensionality reduction techniques, such as PCA, the authors calculate damage-sensitive features (DSFs) by using statistical values (mean and standard deviation) and frequency features (spectral entropy) in different SoH of the structure, these states are artificially created by introducing cracks on certain parts of the jacket. The approach is similar to the previously mentioned, as the output is used to calculate the reconstruction error that, by using a threshold, classifies SoH.

In this paper, a different approach to the previously discussed is presented. Instead of training only with healthy data, acceleration responses of the blade with different types and levels of damage were collected, labeled, and then used to train the network. For this, DSFs are calculated in a similar fashion to [2], and then fed to an ANN that is trained to classify the input to their corresponding damage state.

Fig. 1.
figure 1

Instrumentation of WT blades A (top) and B (bottom) with the respective distances from the base. The directions represent the measurement axes of the sensors.

Fig. 2.
figure 2

Location of cuts and masses inflicted on the blade

2 Experimenal Setup and Damage States

In this study, a replica of a 5 kW WT is used with three 2.4-meter-long blades. The speed at which the replica rotates is controlled to simulate different operating wind speeds. On top of the simulated WT, a data acquisition system was designed to capture acceleration data. It is composed of three strips of three accelerometers each placed along two of the three blades of the WT, as shown in Fig. 1. Each sensor is an ADXL-345 triaxial accelerometer from Analog Devices, controlled by an ESP32 that records and sends the acceleration data. The measurements were made in ten-minute intervals with the sampling frequency of the sensors set to 200 Hz. Vibration data was collected at different SoH of the blade by inducing damage or modifications to the physical system. This was made firstly by adding masses in specific sections of the blade to simulate events such as ice accumulation and secondly by introducing cuts at specific blade locations where cracks were previously observed during experimental tests conducted in a laboratory environment [4]. The position of the masses and the location and direction of the cuts are shown in Fig. 2. The combination between masses, cuts, and rotation speed receives a label of ‘WT0#_i’ where the ‘#’ indicates the identification number of added mass or cuts and the sub-indices the velocity at which the WT is spinning. Table 1 shows three different SoH used for this report.

Table 1. Test Protocols

3 Damage Diagnosis Approach

As shown in Table 1, the different SoH can be categorized, so the approach selected to diagnose the system is of a supervised classification problem, where the data is fed through a neural network to obtain the class it belongs to at the end. The chosen architecture is a multi-layer perceptron (MLP).

3.1 Data Preprocessing

For the input of the network, features have to be extracted from the responses obtained. As shown by Feijóo et al. [2], the mean (\(\mu \)), standard deviation (\(\sigma \)), and spectral entropy (H) are representative features that contain enough information for an artificial neural network (ANN) to learn to differentiate the states. These features are calculated over 200 samples or one second of measurement.

3.2 Feature Vector

For the analysis, flapwise and edgewise accelerations (Z and X on Fig. 1, respectively) are relevant as there should be no significant acceleration along the longitudinal axis of the blades. So for six sensors, two axes each, and three features per axes, the input vector for the MLP is composed of these 36 features. The feature extraction is defined by the following equations.

First, a set of measurements is defined by Eq. 1

$$\begin{aligned} A^{s,d}_{t} = [a^{s,d}_{t_1},..., a^{s,d}_{t_k}] \end{aligned}$$
(1)

where \(a^{s,d}_{t_1}\) is the acceleration of the sensor s in the direction d at time t, and \(k = 200\) as it is the window for calculating the features. Then, the sets of sensors is defined in Eq. 2

$$\begin{aligned} A_{t} = [A^{1,X}_{t}, A^{1,Z}_{t},..., A^{6,X}_{t}, A^{6,Z}_{t}] \end{aligned}$$
(2)

where t represents the instant (or second) of the samples. After the sets of sensors, the feature extraction is defined as the function shown in Eq. 3 where the three features are extracted in each window.

$$\begin{aligned} F(A_{t,s,d}) = [\mu (A^{s, d}_{t}), \sigma (A^{s, d}_{t}), H(A^{s, d}_{t})] \end{aligned}$$
(3)

Then the feature vector can be defined the following way

$$\begin{aligned} {{\textbf {v}}}_t = [F(A_{t,1,X})), F(A_{t,1,Z}), F(A_{t,2,X}),..., F(A_{t,6,X}), F(A_{t,6,Z})] \end{aligned}$$
(4)

So for the same second, the features of the sensors are organized from one to six or, by using the nomenclature of Fig. 1 from A1 to B3. Finally, each feature is normalized independently using Z-Score as shown in Eq. 5.

$$\begin{aligned} f_{n} = \frac{ f - \mu _f }{\sigma _f} \end{aligned}$$
(5)

where \(f_{n}\) is the normalized feature, \(\mu _f\) is the mean value of the feature in the SoH, and \(\sigma _f\) is the standard deviation of the feature in said SoH. After the normalization process, the vectors can be projected into 2D using UMAP. This is done to understand the distribution of the points on their own dimensionality as UMAP tries to maintain the topological characteristics of the sample when it projects. Figure 3 shows that the classes are mostly separated, but there are some vectors that are on top of others making the problem more complex.

Fig. 3.
figure 3

2D UMAP projection of 5000 feature vectors, in green WT00, in purple WT01, and in red WT03. Some overlap can be seen in the lower left corner between WT00 and WT03 vectors.

3.3 MLP Architecture

The proposed architecture of the MLP is composed of three fully connected layers. As discussed in the previous section, the input layer has 36 input neurons, the first hidden layer of 128 neurons, a second hidden layer of 32 neurons, and at the end the output layer with three neurons (one per category); Fig. 4 shows the summarised architecture. Due to the nature of the signals, even after normalization, they have positive and negative values, this is why the chosen activation function for both hidden layers is hyperbolic tangent (tanh), as the function takes both positive and negative values. At the output, softmax activation is used to obtain the probability of the input belonging to a certain label. Before the training process, the data is divided into two sets of training and testing with an 80%/20% split. For training, the loss function (also known as the cost function), as is modeled as a multi-label classification problem, is cross-entropy paired Stochastic Gradient Descent (SGD) as the optimizer. Finally, the network was trained for 5 epochs with a batch size of 64.

Fig. 4.
figure 4

Proposed MLP Architecture

3.4 Metrics

To measure the performance of the network, a few metrics were used, these are; Accuracy, Precision, Recall, F1-Score, and the confusion matrix. All of the metrics are defined in relation to the amount of correctly classified samples or True Positives (TP) and True Negatives (TN) and the incorrectly classified samples False Positives (FP) and False Negatives (FN). The metrics are defined in the following equations.

$$\begin{aligned} Accuracy = \frac{TP + TN}{TN + FP + FN + TP} \end{aligned}$$
(6)
$$\begin{aligned} Precision = \frac{TP}{TP + FP} \end{aligned}$$
(7)
$$\begin{aligned} Recall = \frac{TP}{TP + FN} \end{aligned}$$
(8)
$$\begin{aligned} F1 = 2 \frac{Precision \cdot Recall}{Precision + Recall} \end{aligned}$$
(9)

4 Results and Discussion

Before the architecture was fixed, several parameters were changed and tested. This was made by training different combinations of the number of neurons per layer and the number of layers and keeping the best-performing based on convergence time. This architecture, shown in Fig. 4, was then trained and modified according to the experiment being performed. First, the classification using all SoH.

Fig. 5.
figure 5

Confusion Matrix of the trained MLP calculated with testing data, all values are percentages

Table 2. Classification Metrics of the proposed methodology

The network achieves 100% accuracy, this result also repeats on the different metrics presented in Table 2. In addition to the metrics, the confusion matrix in Fig. 5 shows how well the network classifies the data and how many samples it confuses and with which label. For WT00 a 0.017% or 32 misclassified samples, 21 for WT01, and for WT03 11 samples. From these results, this methodology has an auspicious future for damage detection, as all metrics are extremely good with two different types of damage and healthy data. This could be attributed to the conditions in which the replica was operated, as the rotation speed was fixed and not dependent on the wind. Also, the temperature variability was not significant during the tests. In order to check if these environmental and operational variables (EOV) are relevant to the classification, the training, and testing were repeated, including them in the input vector.

4.1 EOV Effect

As previously explained, the network takes three features calculated with the acceleration obtained from the sensors. In addition to those vectors, the values of the mean rotor speed and mean temperature (over the same 200 samples) were added to them. This means that the input changes to 38, but all the rest of hyperparameters are maintained.

Table 3. Classification metrics of the MLP trained with EOVs

With these new features, the results are maintained from the previous as shown by the confusion matrix Fig. 6 and the metrics in Table 3. With the addition of EOVs, the confused samples are reduced, but not in a significant manner. This means that the approach works only with the vibrational data and the effects that EOVs have on the features are not meaningful enough to change them, and the variables themselves do not have relevant information for the classification. But, this methodology has to be validated with a working WT in regular operational conditions.

Fig. 6.
figure 6

Confusion Matrix of the trained MLP trained with EOVs, all values are percentages

4.2 Network Generalization

In addition to the network knowing the classification of the damage, it is important to know how the network will respond when a new state is presented to it, this is why a binary experiment was performed. In this case scenario, the labels of the classes were changed to healthy or damaged (true or false), instead of the corresponding ‘WT0# label, to create a binary classification problem. This comes with the change of activation function and the number of neurons in the output layer. The neurons are changed to two, one per class, and the activation function is changed to sigmoid. This is done to allow for the training of both neurons, as the healthy data enters the network, the ‘healthy’ neuron trains to converge to ‘1’ and the ‘damaged’ neuron converges to ‘0’ and vice-versa. For this, the training and testing dataset are built using different SoHs. The training dataset is composed of WT00 and WT01 and the testing dataset is made up from WT00 and WT03.

Fig. 7.
figure 7

Generalization experiment confusion matrix, all values are percentages

Table 4. Classification metrics for the generalization experiment

With this, the results show that the network is able to classify the healthy state of the blade almost to a 100%. This is expected as the healthy state does not change with respect to the features, but the damaged state behaves in a completely different manner, as the metrics in Table 4 and the confusion matrix in Fig. 7 show, the damaged state does not generalize in a useful manner, this can be seen in Fig. 3 as the clusters in purple (WT01) are separated from the clusters in red (WT03) so there is no overlap for the MLP to interpret both as damages.

5 Conclusions

This paper presented a supervised machine-learning methodology for damage identification in wind turbine blades (WTBs) that is capable of differentiating between types of damage and correctly classifying them with an accuracy of 100%. The proposed approach has advantages compared to previous techniques as it includes more information on the label, apart from the distinction between healthy and damaged states. The methodology was validated using experimental data from a 2.4-meter-long wind turbine blade, which was tested with added masses and with artificially-induced damage. In addition, the effects of environmental and operational variables (EOV) were also investigated. The proposed methodology proves to be a promising strategy for structural health monitoring (SHM) for WTBs. In addition to the high accuracy, it is remarkable the amount of data needed for the diagnosis, as the features are calculated over 200 samples, and the sampling frequency is 200 Hz, meaning that the network only needs one second of measurements for the diagnosis.

In regard to the generalization experiment, the representation can be improved by training with more types of damages, as the features locate different damages in different regions of the feature vector space and similar damages should be closer. Finally, the next step for this methodology is to be validated with data obtained from an instrumented blade on a working wind farm and explore how the features and performance of the network differ from the controlled setup.