1. Introduction
The world’s needs for cleaner and renewable energy show no signs of slowing down, leaving markets seeking immediate solutions. Researchers face a daunting task: discovering ways to meet this ever-growing demand. Wind energy offers a promising possibility, particularly with the proliferation of wind farms.
While advances in wind technology are encouraging, many existing farms were built hastily, neglecting crucial long-term maintenance considerations.
Given that an essential part of the costs of generating wind energy originates in wind farms’ operation and maintenance stage, the most relevant line of action is making wind energy more competitive by reducing these costs. Once the WFs are built, O&M costs are the few parts of the process involved in generating wind power that can be addressed. To do so, condition-based maintenance (CBM) is considered one of the best solutions [
1]. Supervisory control and data acquisition (SCADA) systems are used for data collection in wind farms, providing operational and condition information about wind turbines. These systems collect information from sensors distributed over different parts of the WT and provide the recorded captures’ maximum, minimum, average, and standard deviation values every 5/10 min. Although the SCADA systems were not originally designed to perform WTs prognosis, due to their wide availability and low cost (since we found them installed), much research has been generated to take advantage of their data.
As is well known, WTs are highly non-linear systems. One of the simplest and most efficient ways used by the manufacturers of WTs to characterize their performance is through the curve that relates the power generated as a function of the wind speed. These curves have four zones. The wind turbines do not generate power in zone 1, corresponding to low speeds. In zone 2, above a wind speed value, the generated power increases as the wind increases. In zone 3, the wind turbine generates its nominal power, and even if the wind speed continues to increase, the generated power remains constant. In zone 4, from a critical wind speed, the wind turbine stops for safety.
Given a wind speed profile, the power curve is used for the planning and development of wind farms and, as it is known that the malfunction of a wind turbine can drastically reduce its power generation capacity, and that the fact is reflected in this curve, it is also used to diagnose its health [
2,
3]. WT manufacturers certify these curves for specific wind conditions and turbine types, including air density and temperature at tower height. The International Electrotechnical Commission (IEC) standard 61400-12-1 [
4] describes the certification process for measuring and recording a single turbine’s power performance characteristics. In practice, the power curve is constructed using historical data from the supervisory control and data acquisition (SCADA) system, with several SCADA-based models proposed for this purpose [
5,
6,
7]. It is not surprising, therefore, that among the various magnitudes captured by SCADA, wind speed and active power output have attracted the attention of researchers [
7]. When the pair of wind speed and power points are plotted directly from the SCADA data, the points are distributed around the theoretical curve, exhibiting some dispersion due to measurement errors and showing variations from the curve of the manufacturer, among other causes, in the 5 min averages made by the SCADA system. In addition, from the representation of the power curves from the raw data, a set of points appears outside the expected area, far from the manufacturer-given points. In this context, we call such points anomalies. To correctly estimate the power curves, it is necessary to clean the data anomalies [
8,
9,
10]. These anomalies remain after typical outlier detection based primarily on statistical techniques. Most of the applied filtering and anomaly detection techniques are still based on statistical criteria and apply rules based on interquartile ranges (IQRs), or other statistical measures such as skewness or kurtosis, or more sophistical methods based on ML techniques such as self-organized maps (SOMs) and linear mixtures (LSOMs), which are unsupervised methods.
According to the literature [
2], power curve modeling methods can be classified into discrete, deterministic/probabilistic, parametric/non-parametric, and based on the data used for modeling methods [
2,
3,
11]. This work has focused on modeling power curves with non-parametric methods, as they are suitable for extracting models from large amounts of data. So, concerning modeling wind turbines’ power curves, the main non-parametric methods used explore artificial neural networks (ANN) [
12], adaptive neuro-fuzzy inference system (ANFIS) [
13,
14], clustering [
15], regression models, as well as different Machine Learning (ML) methods, such as support vector machine (SVM) and Gaussian Process (GP), due to their capabilities to modeling nonlinearities [
16]. In addition, and in a very particular way to the estimation of power curves, copula models focus on learning the joint probability of wind speed and wind power [
17].
As the estimation of power curves in wind turbines using SCADA data remains an active field, contributions are constantly made. Recently, improved estimations have been achieved mainly by the incremental sophistication of ML techniques. For example, in [
18], super vector regressors are developed using a set of multivariate input features in which, in addition to mean variables, maximums, minimums and standard deviations provided by the SCADA are also considered. SVMs continue to be applied for a long time, as recently as in [
19]. In [
20], a deep learning technique based on convolutional neural networks (CNN) is introduced. To be able to train big networks, in this case, the authors first combine the action of multiple extreme learning machines (ELM) to increase the data dimensionality, followed by techniques to reduce redundant mapping before the application of CNNs. In general, data-driven ML-based methods exhibit a superior performance; however, they lack explainability, so a relevant line of research seeks to interpret the results in explainability, as in [
21], or physical uncertainty quantification, as in [
22]. Although most of the proposed estimators are data-driven, there are also contributions concerning parametric estimators, as in [
23]. Due to the multiple contributions addressing the problem from different angles, it is always interesting to be aware of the latest state-of-the-art compilations, e.g., [
24].
This work characterizes wind power curves using SCADA data, and is based on a new anomalies filtering technique approach and small artificial neural networks (ANNs) to estimate the curves. The filtering method introduced directly applies graphical information expressed as a condition to each pair of wind speed and power points. Removing such points using this method is fast. So, before making the estimation, a continuous power curve is obtained from the information provided by the WT manufacturer. The method we present is simple but effective, and especially practical compared to proposals appearing in the recent state of the art, where the dominant trend seems to add complexity to the methods. Although more complex methods can perform optimally in optimum conditions, they can face problems in real wind farm (WF) applications. Our method directly relates the two variables involved, the power and the wind speed, in the form of SCADA averages. A small-sized ANN performs well in the test without overfitting and requires only a few parameters to be tuned. That also requires less data to obtain a power curve estimation from new data, which helps to visualize possible changes faster. So, from our point of view, that is a valuable fact.
As for this work, we also have the curves of the particular WT model used in the experiments provided directly by the manufacturer; we can compare the characterization of the manufacturer concerning the estimated curves obtained from their estimation using the SCADA.
This work will be organized into Materials and Methods (
Section 2), where we provide detailed descriptions of the following components: data used, Fuhrländer FL 2500/100 power curve provided by the manufacturer, anomaly filtering, and Wind Power curves estimation. The results are presented in
Section 3, where we provide detailed descriptions of the following components: filtering and isolation of anomalies, using the filtered SCADA signals to estimate power curves, the training data, using the filtered SCADA signals to estimate power curves, and the test.
Section 4 has a Discussion, and the main Conclusions are summarized in
Section 5.
3. Results
3.1. Filtering and Isolation of Anomalies
This section presents the result of filtering anomalies according to the expression in (
2). The same filtering values of
m/s and
W have been used for all WTs. In
Figure 7,
Figure 8,
Figure 9,
Figure 10 and
Figure 11, we show the same results WT to WT.
So, each figure shows the results for each of the five WTs of the WF individually. Notice that different colors identify the data of each WT. The points detected as anomalies in the left subplot are marked in black. On the color points, we present the curve, also in black, provided by the manufacturer. In the subplot on the right, we represent the points captured as anomalies in isolation.
3.2. Using the Filtered SCADA Signals to Estimate Power Curves: Training Data
For each WT, we estimate the wind-power curve using the ANN architecture described in (
3) by using 3/4 of the total available data for the training by selecting the filtered wind speeds (wnac_avg_WSpd1) as the predictor and the filtered active power (wgdc_avg_TriGri_PwrAt) as the target. For all WTs, we have used the same ANN size consisting of
hidden nodes (neurons).
Figure 12 shows all the estimated curves of each WT together with the power curve calculated from the data provided by the manufacturer in black indicating, in small squares, the specific points provided.
At this point, we notice how the estimated power-wind curves obtained from SCADA data differ from the one provided by the manufacturer, especially in the rang that goes from 8 to 12 m/s.
Comparing the estimated curves of each WT, we also notice that they are slightly different.
3.3. Using the Filtered SCADA Signals to Estimate Power Curves: Test Data
Using the same anomaly filtering and estimation method, in this section, we estimate the same curves from the last quarter of available data that we reserved for the test. Once estimated, we compare them with the curves obtained in the training part. We provide the results in
Figure 13.
It is interesting to check that the estimated power curves of each machine in the test part fit very well with those obtained using the training data. The most notable difference is the WT84 machine, which suffered a major breakdown, causing it to be stopped for a long time. In this case, we see that the differences between the curves are observed in the part of the initial start-up of the WT when little power is still generated.
3.4. Experiment 1
Next, we experiment to check whether the size of the ANNs works correctly and whether the results depend on the network size.
In the following experiment, for each WT, we use the filtered data according to the proposed filter to train a series of models of different sizes and evaluate them with the test data. We evaluate the models by calculating the RMSE of each model’s estimation error concerning the measured power. In the experiment, we evaluate ANNs with only five hidden nodes and progressively increase their hidden layer. In
Table 2, we present the RMSEs obtained in the training phase, and in
Table 3, the RMSEs obtained with the test data.
Notice that, in the test, which is the relevant part of the experiment and serves to size the network, all the ANNs evaluated work practically similarly, with the smallest configuration achieving the best result. Notice also that the magnitudes of RMSE are high, but it must be considered that the WTs are 2500 kW, and therefore, high values are handled.
3.5. Experiment 2
Once we have estimated the power curve of each WT, we have an estimate of the power curve of each WT that fits the data better than the curve determined from the points provided by the manufacturer, which has been used in the first filter. The question at this point is whether the filtering rule can be improved with the knowledge of this new curve. That is why we conduct this second experiment. We use the network of five hidden nodes to filter the row data and eliminate some points that in the improved rule may be considered anomalies, but that with the original rule may not.
In
Figure 14, we show graphically, for the WT80, the power curve obtained from the ANN on the filtered data. In this experiment, for all WTs, values of
and
had been used, which are smaller than those used in the original filtering rule and therefore are more selective. In this figure, the points considered are shown in lighter blue, and those discarded as anomalies are shown in darker blue. With this new filtering, the previous experiment was repeated by training models of different sizes and evaluating them in the test. The results are again given in terms of the RMSE. In
Table 4 for the training and in
Table 5 for the test.
Based on the results of this experiment, improving the filtering rule improves the results obtained in the training, but leaves the test results practically unchanged.
4. Discussion
We want to point out different aspects. In the context of this work, we understand by anomalies all those points that, due to failures in the sensors that measure the power or the wind speed or due to the starting and stopping processes of the WTs, fall in places far from the theoretical curve. Therefore, to obtain a good curve estimation, we note the need to filter anomaly data before the estimation to remove anomalies, as otherwise supervised ML-based methods also attempt to capture them into the models. So, when working with SCADA data, estimating the power curves of each WT from the data (cleaned of anomalies) is necessary, since there are significant differences from the power curve provided by the turbine manufacturer. The cause of such significant differences seems to be the nature of the SCADA data, which consists of temporal averages, in our case, of 5 minutes. Instead, the manufacturer’s values model instantaneous relations of wind and power.
In this work, we use a filtering rule that depends on the choice of and values, which can slightly determine the estimates of the curves in the regions where the curve meets the flat areas. In any case, what is vital is to consider the same rule in both the training and test phases to clean anomalies in the same way. This rule can be refined by changing the estimate of the curve provided by the manufacturer, , to the estimate of the curve measured in each WT. As noted in our work, we have kept a general rule for all WTs.
Once the estimates are made, we see that, despite presenting significant similarities, each WT has its particular curve. In this sense, it is also interesting to see that, for each WT, the estimates made with the training and test data are highly similar for all the WTs that work correctly and for the one we know has a failure in the test part, the WT84, the malfunction is captured in its curve.
The curves (to be precise, the points provided by the manufacturer) have been obtained according to a measurement protocol that is very clearly defined to be comparable between WTs from different manufacturers. Taking measurements under these conditions is expensive, so the manufacturer only provides points every 0.5 m/s. We understand, therefore, that the measurements supplied by the manufacturer are exact. In working conditions, things change slightly. First, of all, environmental conditions are continuously evolving. For example, it is known that air turbulence affects the generation conditions or that sometimes the orientation of the blades is not optimal either. These phenomena, in itself, cause observable differences between WTs of the same WF. However, one of the most significant things in this context is that the estimates are made from data provided by the SCADA system. Apart from the fact that the sensors are subject to noise, what is also very relevant is that these data are obtained from temporal averages of usually 10 min (although, in our case, they are 5 min). Temporal averages combined with wind variations in this time interval explain these differences between the estimated and manufacturer curves.