1. Introduction
Wind turbine plants represent complex and nonlinear dynamic systems usually driven by stochastic inputs and different disturbances describing gravitational, centrifugal and gyroscopic loads. Moreover, their aerodynamic models are uncertain and nonlinear, whilst wind turbine rotors are subject to complex turbulent wind fields, especially in large systems, thus yielding to extreme fatigue loading conditions. In this way, the development of viable, robust and reliable control solutions for wind turbines can become a challenging issue [
1,
2].
Usually, a model-based control design requires an accurate description of the system under investigation, which has to include different parameters and variables in order to model the most important nonlinear and dynamic aspects. Moreover, the wind turbine working conditions can produce further problems for the design of the control method. In general, commercial codes are not able to adequately describe the wind turbine overall dynamic behavior; usually, special simulation software solutions are used. On the other hand, control schemes have to manage the most important turbine dynamics, without being too complex and unwieldy. Control methods for wind turbines usually rely on the signals from sensors and actuators, with a system that connects these elements together. Hardware or software modules elaborate these signals to generate the output signals for actuators. The main feature of the control law consists of maintaining safe and reliable working conditions of the wind turbine, while achieving prescribed control performances and allowing for optimal energy conversion, as shown, e.g., in recent works applied to the same wind turbine model considered in this work [
3].
Today’s wind turbines can implement several control strategies to allow for the required performances. Some turbines use passive control methods, such as in fixed-pitch, stall control machines. In this case, the system is designed so that the power is limited above rated wind speed through the blade stall. Therefore, the control of the blades is not required [
1]. In this case, the rotational speed control is proposed, thus avoiding the inaccuracy of measuring the wind speed. Rotors with pitch regulation are usually used for constant-speed plants, in order to provide a power control that works better than the blade stall solution. In these machines, the blade pitching is controlled in order to provide optimal power conversion with respect to modeling errors, wind gusts and disturbance. However, when the system works at constant speed and below rated wind speed, the optimal conversion rate cannot be obtained. Therefore, in order to maximize the power conversion rate, the rotational speed of the turbine must vary with wind speed. Blade pitch control is thus used also above the rated wind speed [
1]. A different control method can introduce the yaw regulation to orient the machine into the wind field. A yaw error reference from a nacelle-mounted wind direction sensor system must be included in order to calculate this reference signal [
4].
Regarding the regulation strategies proposed in this paper, two control design examples are described and applied to a wind turbine system. The wind turbine model exploited in this work is freely available for the MATLAB
and Simulink
environments, and already proposed as benchmark for an international competition regarding the validation of fault diagnosis and fault tolerant control approaches [
3].
In particular, a first data-driven method relying on a fuzzy identification approach to the control design is considered. In fact, since the wind turbine mathematical model is nonlinear with uncertain inputs, fuzzy modeling represents an alternative tool for obtaining the mathematical description of the controlled process. In contrast to purely nonlinear identification schemes (see, e.g., [
5]), fuzzy modeling and identification methods are able to directly provide nonlinear models from the measured input-output signals. Therefore, this paper suggests to model the wind turbine plant via Takagi–Sugeno (TS) fuzzy prototypes [
6], whose parameters are obtained by identification procedures. This approach is also motivated by previous works by the same authors [
7]. On the other hand, concerning the control design, the paper proposes also a fuzzy control method for the regulation of the blade pitch angle, and the generator torque of the wind turbine system.
With respect to similar works (see, e.g., [
8]), this paper suggests an off-line identification approach, without any on-line optimization schemes, thus enhancing real-time implementations. Note also that the works by the same authors (see, e.g., [
9]), addressed a different design procedure of the fuzzy regulator, that consists of fuzzy PI controllers. On the other hand, this paper proposes the direct estimation of the fuzzy regulator by means of an identification scheme.
Regarding the second model-based strategy presented in this paper, it relies on an adaptive control scheme [
10]. Again, with respect to pure nonlinear control methods [
11], it does not require a detailed knowledge about the model structure. Therefore, this work suggests the implementation of controllers based on adaptive schemes, used for the recursive derivation of the controller model. In particular, a recursive Frisch scheme extended to the adaptive case for control design is considered in this study, as proposed, e.g., in [
9] by the same authors, which makes use of exponential forgetting laws. This allows the on-line application of the Frisch scheme to derive the parameters of a time-varying controller.
Since it is necessary to evaluate the robustness and the reliability of the designed control methods with respect to modeling uncertainties, disturbance, and measurement errors, the verification and validation tools use extensive Monte Carlo simulations. In fact, the wind turbine system contains elements that cannot be described by analytical models. Thus, the Monte Carlo analysis represents a solution for testing the robustness and reliability features of the control schemes when applied to the wind turbine model. This paper compares the proposed methodologies also with respect to different control methods based on sliding mode techniques, neural controllers, or gain scheduling methods. However, with respect again to [
9] by the same authors, different comparisons are proposed in this work that exploit proper performance metrics.
It is worth highlighting the main features of the proposed data-drive and model-based approaches. Indeed, the term “model-based” could be misleading in this case. In fact, the adaptive control approach suggested in this work should be considered as “active” control method, instead. In fact, the control design relies on an identified model of the process under investigation. In this way, the parameters of the process model are identified on-line via a recursive estimation procedure, in order to adapt this identified model with respect to both the different operating conditions and possible process uncertainty. Due to this adaptation scheme, the control design technique is able to achieve robustness characteristics with respect to possible uncertainty and disturbance effects. On the other hand, the proposed on-line control scheme can be applied to nonlinear dynamic processes, due to its capabilities to recursively track the changes of the controlled process. Moreover, the adaptive control law can be designed by means of different rules that are functions of the process model parameters, thus making the control design solutions robust with respect to disturbances. Another key aspect concerns the identification method exploited for estimating the model parameters. The proposed approach relies on an Error-In-Variable (EIV) scheme [
12], which is more general and less conservative than standard identification techniques. For example, the classical Least Square Method (LSM) assumes that only the output is possibly affected by uncertainty (noise) [
13]. Therefore, the EIV identification scheme proposed in this work for the estimation of the controller parameters makes the developed solutions much more robust and reliable than standard control schemes. Finally, with respect to standard PID regulators, which can be seen as ‘passive’ control solutions, they are not able to track the changes of the controlled process, since their parameters are usually optimized on the basis on the nominal process model [
14].
Finally, this work is organized as follows.
Section 2 recalls the wind turbine model considered for control design purposes.
Section 3 addresses the data-driven scheme exploited for the derivation of the fuzzy controller, proposed in
Section 3.1. On the other hand, the model-based control design is considered in
Section 3.2, based on its mathematical derivation also described in
Section 3. The achieved results and comparisons with different control strategies are outlined in
Section 4. The robustness and reliability features of the developed control strategies are also investigated. Finally,
Section 5 ends the paper by summarizing the main achievements of the work.
2. Wind Turbine Simulated Model
Today’s wind turbines contribute to a larger and larger part of the world’s power production. At the same time the size of the standard turbine has been increasing, as well. Turbines in the megawatt size, as most often installed at present, are expensive, and hence the reliability of their control techniques represents an important issue. They should be able to produce as much time as possible. A way to contribute to ensure this consists in introducing advanced control systems on the wind turbines. The state-of-the-art of advanced control schemes for industrial wind turbines shows that they are quite simple and often conservative [
15]. For example, turbines deployments are turn off even at earlier malfunctions, to wait for service. Consequently, the use of advanced control schemes could improve the on-time of the turbine, even though that might result in production with limited power for some anomalous working conditions [
15]. Some works on advanced control solutions for wind turbines were proposed. For example, an observer based scheme applied to the pitch system was presented in [
16]. On the other hand, priority relation based scheme for change detection was presented in [
17], whilst an unknown input observer applied to the wind turbine drive train in [
18]. Furthermore, the wind turbine electrical conversion system was investigated in [
19,
20,
21]. Therefore, in general, it would be beneficial to compare different control schemes for wind turbine application in order to find the best solutions, as considered in this paper. However, since a wind turbine is a large and complex system such a comparison can only be performed on a limited set of situations. Therefore, in order to test different advanced control techniques for wind turbine applications, this paper considered the benchmark model of a wind turbine process on system level, containing sensors, actuators and systems typical of an energy conversion plant. This benchmark model describes a realistic generic three-bladed horizontal variable speed wind turbine with a full converter coupling, formerly proposed in [
22]. This generic turbine has a rated power of 4.8 MW. Since this model works on a system level, the fast control loops of the converters are not considered. Moreover, since it is a model on system level, its converter and pitch system models are simplified, because they are controlled by internal governors working at higher frequencies than the system model.
This section outlines the wind turbine model, whose sampled inputs and outputs will be used for the proposed control designs, as shown in
Section 3. More details concerning the accurate derivation of the simulator model can be found in preliminary works [
23,
24] and definitely presented in [
22]. In fact, this simulator was proposed for an international competition regarding fault diagnosis and fault tolerant control techniques started in 2009, whose results were summarized in [
3,
25].
The wind turbine system exploited in this work uses a nonlinear dynamic model representing the wind acting on the wind turbine blades, thus producing the movement of the low-speed rotor shaft. The higher speed required by the electric converter is produced by means of a gear box. The simulator is described in more detail, e.g., in [
22,
25]. A scheme of the wind turbine simulator considered in this paper is represented in
Figure 1 with its main blocks.
Both the generator speed and the generator power are controller by means of the two control inputs representing the generator torque and the blade pitch angle . Several signals can be acquired from the wind turbine simulator. In particular, the main signals available from the wind turbine simulator and used for control purpose are listed in the following:
: blade pitch angle (deg);
: generator/converter speed (rad/s);
: generator power (W);
: rotor speed (rad/s);
: requested torque (N m);
: generator torque (N m);
: aerodynamic torque (N m);
v: wind speed (m/s);
The aerodynamic model defining the aerodynamic torque provides the
signal, which is a nonlinear function of the wind speed
, and it is not highlighted in
Figure 1 since included in the ‘Aerodynamic model’ block. This measurement is very difficult to be acquired correctly, as described in [
25].
The aerodynamic model reported in
Figure 1 is described by the following relation:
where the variable
represents the air density, whilst
A is the effective rotor area.
The pitch system implemented in the wind turbine benchmark as depicted in
Figure 1 uses a second-order transfer function, represented by Equation (
2):
where
is the actuated pitch angle, which is exploited in Equation (
1), whilst
is the controlled pitch angle.
is the natural frequency of the pitch actuator model, and
its damping ratio.
Another important variable is represented by the so-called tip-speed ratio, which is defined as:
with
R the rotor radius.
represents the power coefficient, that is normally represented via a two-dimensional map [
25]. The expression of Equation (
1) allows the computation of the signal
(highlighted in
Figure 1) by means of the estimated wind speed
and the signals
and
. Due to the uncertainty of the wind speed, the estimate of
is considered affected by an unknown measurement error, which justifies the robust approaches described in
Section 3. Moreover, the nonlinearity represented by the expressions of Equations (
1) and (
3) motivates the required reliable and robust control approaches suggested in this work.
The wind turbine simulator includes a two-mass model that is exploited to describe the drive-train system depicted in
Figure 1, as shown by the following linear state-space representation [
22]:
where the matrices
and
are defined as:
and:
where
is the momentum of inertia of rotor shaft,
is the torsion stiffness of the drive-train,
is the torsion damping coefficient of the drive-train,
is the viscous friction of the generator shaft,
is the gear ratio,
is the moment of inertia of the generator shaft,
is the efficiency of the drive-train, and
is the torsion angle of the drive train. Note that the benchmark simulator considered in this work does not include possible nonlinear gearbox dynamics, as addressed e.g., in [
26,
27,
28]. However, the data-driven approach proposed in this study could be able to include this further nonlinearity for the design of the control solutions.
Moreover, the generator/converter dynamics are described as a first-order transfer function, as highlighted by Equation (
7):
s being the Laplace operator,
is the time constant of the generator/converter, whilst the power
produced by the generator is given by Equation (
8):
with
denoting the efficiency of the generator. More details regarding the considered simulator are in [
25].
Under these assumptions, the complete state-space description of the wind turbine model has the form of Equation (
9):
where
,
, and
are the control inputs, the monitored output measurements, and the state vector, respectively, as shown in
Figure 1.
is the generator power measurement, whilst
represents the continuous-time nonlinear function that will be approximated via discrete-time models from
N sampled data
and
, with the sample index
, as presented in
Section 3. The model parameters, and the map
are chosen in order to represent a realistic wind turbine plant [
25].
Note that
Section 4.2 will analyze the reliability and robustness properties of the developed controllers when parameter variations and measurement errors are considered. This investigation will rely on the Monte Carlo tool, since the control behavior and the tracking capabilities depend on both the model-reality mismatch effects and the input-output uncertainty levels. Therefore, this analysis will be performed by describing the parameters of the wind turbine model simulator as Gaussian stochastic processes with average values corresponding to the nominal ones summarized in
Table 1 [
25].
Moreover, the input and output measurements available from the wind turbine simulator are assumed to be acquired via sensors [
25] that introduce additive Gaussian noise processes with zero mean and standard deviation values summarized in
Table 2.
Note that the parameters summarized in
Table 2 are the values implemented in the wind turbine benchmark simulator that has been used in this work for the validation of the proposed control solutions. These values represent the uncertainty and disturbance effects of a realistic wind turbine deployment, as modeled by the wind turbine benchmark simulator presented and developed in [
25].
On the other hand, this benchmark model set-up uses a predefined wind speed sequence
consisting of real measured wind data of a wind park from 0 to 4400 s.
Figure 2 highlights that this wind speed covers the range from 5 to 20 m/s, with a few spikes at 25 m/s, which is a good coverage of normal operational for a wind turbine.
It is worth noting also that the nonlinearity represented by Equations (
1) and (
3) is sketched in
Figure 3, for different values of
(i.e.,
) and
.
Figure 3 also shows the power curve that highlights the the so-called partial load (Region 1) and full load (Region 2) working conditions of a wind turbine [
22]. In fact, the baseline controller implemented in the wind turbine simulator works in these two operating conditions. A schematic diagram of the baseline wind turbine controller system is detailed in
Figure 4.
In particular,
Figure 4 highlights that in partial load working condition, the optimal tracking is achieved without any pitching of the blades, which are fixed to zero degrees. In this case,
is constant at its optimal value
, that is defined by the maximal value of the power coefficient map
when
degrees, as shown in
Figure 3a. Therefore, this working condition is completely defined by setting
(i.e., the generator torque is equal to the required reference value) with pitch angle
degrees.
The reference torque signal
shown in
Figure 1 is computed as:
where:
with
the maximal value of
, related the to
, i.e., the optimal tip-speed ratio, as sketched in
Figure 3a.
When the power reference
MW is achieved by the wind turbine system (it corresponds to the so-called rated power) [
22], and the wind speed
increases, the controller is switched to the control Region 2 (full load condition). In this working condition (Region 2), the control objective consists of tracking the power reference
, obtained by regulating
, such that the
is decreased, as shown in
Figure 3a. In a traditional industrial control scheme, usually a PI controller is used to keep
at the prescribed value by changing
; the second input of the controller is
.
The baseline controller considered in this work was implemented with a sample frequency at 100 Hz, i.e.,
s. In full load conditions, i.e., in Region 2, the actuated input
is controlled via the relations of Equation (
12) [
25]:
with the sample index
. The parameters for this PI speed controller are
(1/s) and
(deg/rad/s), with sampling time
s, as reported in [
25]. For the case of the wind turbine system considered in this paper, with rated power
MW, the constant
is equal to 162 (rad/s) [
22].
The control of the further input
shown in
Figure 1, a second PI regulator is used, in the form of Equation (
13):
The parameters for this second PI power controller are
and
[
25].
Finally, note that in Region 2 (partial load, below the rated wind speed) the wind turbine is regulated only by means of the torque input
. In this situation, the blade pitching system is not exploited to achieve the optimal power conversion, as highlighted in
Figure 4. On the other hand, in Region 2 (full load, above the rated wind speed), the wind turbine control regulates both the blade pitch angle
and the control torque
. The wind turbine Simulink
model considered in this work includes also saturation blocks that limit the values of the control signals, which were not reported in
Figure 1 and
Figure 4.
3. Data-Driven and Model-Based Control Designs
This section describes the two approaches considered in this paper for obtaining the control laws by using data-driven and model-based methodologies. Once a suitable mathematical description of the monitored process is provided, the derivation of the controller structure is sketched in
Section 3.1 for the fuzzy approach, whilst
Section 3.2 proposes a different method relying on an adaptive technique.
The first method proposed in this paper for the derivation of the wind turbine controller is based on a fuzzy clustering technique to partition the available data into subsets characterized by linear behaviors. The integration between clusters and linear regression is exploited, thus allowing for the combination of fuzzy logic techniques with system identification methodologies. These tools are already available and implemented in the MATLAB
Fuzzy Modeling and IDentification (FMID) Toolbox recalled below [
6]. This study proposes the use of TS fuzzy prototypes since they are able to model nonlinear dynamic systems with arbitrary accuracy [
6]. The switching between the local affine submodels is achieved through a smooth function of the system state defined exploiting the fuzzy set theory and its tools.
In more detail, the fuzzy estimation scheme relies on a two-step algorithm, in which, the working regions are first defined by exploiting the data fuzzy clustering tool, i.e., the Gustafson-Kessel (GK) method [
6]. On the other hand, the second step performs the identification of the controller structure and its parameters using the estimation method proposed by the same authors in [
7]. This estimation approach can be considered as a generalization of the general least-squares method for hybrid models.
Under these assumptions, the TS fuzzy prototypes have the form of the model of Equation (
14):
where
, with
the parameter vector (regressand), and
is the scalar offset.
represents the regressor vector, which contain delayed samples of the signals
and
.
Note that the discrete-time description of Equation (
14), after the proper estimation of the parameter vector [
6], will be used for reconstructing the sampled outputs
and
of the continuous-time nonlinear model of Equation (
9) fed by the sampled input signals
and
.
The antecedent fuzzy sets
that determine the switching among the different submodels
i in Equation (
14) are estimated using the input-output data acquired from the wind turbine simulator, i.e., the input and output sampled signals
,
and
and
. These data are organized into proper clusters where affine relations hold, as described in [
6]. The consequent parameters
and
are also identified from these input-output data by means of the estimation methodology proposed in [
7]. This identification scheme exploited for the estimation of the TS model parameters has been integrated into the FMID toolbox for MATLAB
by the authors. This approach is preferable when the TS model of Equation (
14) is used as predictor, since it derives the consequent parameters via the so-called Frisch scheme, developed for the Errors-In-Variables (EIV) structures [
7].
Once the description of the monitored process is obtained in the form of Equation (
14), the data-driven approach for the design of the fuzzy controller proposed in this work is presented in
Section 3.1.
The second approach exploited for obtaining the mathematical description of the wind turbine system under investigation is based on a recursive methodology, which will be used for the design of the second control strategy presented in
Section 3.2. An on-line version of the batch Frisch scheme estimation methodology summarized above is recalled in the remainder of this section for estimating the parameters of dynamic EIV models. For the derivation of the adaptation law, an on-line bias-compensating algorithm is also implemented. Thus, the on-line Frisch scheme estimation is generalized to enhance its applicability to real-time implementations. Moreover, by means of an exponential forgetting factor included in the adaptation law, the algorithm is able to deal with Linear Parameter-Varying (LPV) structures, that are exploited in connection with the model-based design of the adaptive control scheme, presented in
Section 3.2. Note that the adaptive algorithm proposed here exploits an iterative procedure that starts from an initial controller estimated off-line, for example using the baseline controller already implemented in the wind turbine simulator, and described in
Section 2. This initial controller model is subsequently adapted on-line using the recursive laws in order to track the different operating conditions of the process under investigation.
Thus, the considered scheme is proposed for the on-line identification of the process modeled by the following transfer function
:
where
,
,
and
represent the unknown parameters and the structure of the model, defining the polynomials
and
, whilst
z is the discrete-time complex variable.
The parameter vector describing the linear relationship is given by:
whose extended version is defined as in Equation (
17):
An equivalent expression of the considered relations is obtained by using vector and matrix notations, in the form of Equation (
18):
where the regressor vector
is defined as:
where the subscript
k denotes the sample index.
The Frisch scheme provides the estimates of the measurement errors affecting the input and output signals
and
, i.e.,
and
and
for a linear time-invariant dynamic system. Note that the polynomial orders
and
in the relation of Equation (
15) are assumed to be fixed in advance.
From the Frisch scheme method, the following expression is considered:
where the noise covariance matrix is given by:
which are approximated by the sample covariance matrix over
N samples:
Thus, the Frisch scheme aims at providing suitable noise variances
and
such that
results to be a matrix singular positive semidefinite as it is rank-one deficient. On the other hand, the system represented by the expression of Equation (
20) can be solved, and
represents its solution.
The expression of Equation (
23) is determined:
whilst the so-called sample auto-covariance is defined in the form of Equation (
24):
where the subscript
h in Equation (
24) indicates a time-shift.
The on-line control development requires a recursive estimate of the model parameters represented by the vector
of Equation (
15), while the input and output data
and
acquired on-line by the dynamic process of the wind turbine system. In fact, the adaptive control law computed at time step
k is based on the recursive estimate of a model of the process, which is derived exploiting the dynamic data up to the sample
k. In this way, the algorithm of the Frisch scheme defined by the expressions of Equations (
20), (
22) and (
24) is expressed by means of an on-line scheme.
Note that the expressions of Equations (
22) and (
24) are required in their recursive form. Therefore, whilst the derivation of the on-line form of the covariance matrix update is easily obtained as in the form of Equation (
25):
the formulation of the auto-covariance expression
can be obtained recursively for
only if the approximated expression of Equation (
26) is considered:
for
. In this way, only the residual
has to be computed at time step
k using the lagged data in the vector
and the updated estimate
of the model parameters. The on-line computation of the expression of the auto-covariance matrix of Equation (
27):
can be achieved using only the vector
at each time step. The initial values
,
and
for the recursive algorithm are equal to the variables of the classic Frisch scheme batch procedure.
Since variations of system properties have to be tracked on-line, in order to cope with time-varying systems, this paper considers a further modification of the recursive estimation scheme. This point can be achieved by placing more emphasis on the more recent data, while forgetting the older ones. Therefore, the methodology represented by the expressions of Equations (
25) and (
27) with the approximation of Equation (
26) is implemented by including the so-called exponential forgetting factor. This is achieved in practice by defining the new expressions of the sample covariance and auto-covariance matrices in the form of Equation (
28):
where
is a scaling factor that coincides with
k when no adaptation is introduced. In this way, the updated expressions have the form:
with
representing the forgetting factor. Thus, the adaptive Frisch scheme algorithm is implemented via Equation (
29) in three steps. First,
,
and
with
are initialized. Moreover, at each recursion step, by means of
, the noise variances
and
are computed. Finally, at each recursion step,
is determined by solving Equation (
20) via the expression of Equation (
29). In this way, the vector
contains the estimates of the model parameter derived at the step
k.
The results achieved by the on-line identification method recalled in this section were obtained in the MATLAB
and Simulink
environments as summarized in
Section 4.
Finally, once the parameters
of the discrete-time linear time-varying model of the nonlinear dynamic process of Equation (
9) have been computed at each time step
k, the adaptive controller is derived as summarized in
Section 3.2.
3.1. Data-Driven Fuzzy Control Strategy
This section describes the derivation of the fuzzy controller model. Once a reasonably accurate fuzzy description of the considered benchmark has been available, as described above, it is used off-line to directly estimate the nonlinear fuzzy controllers. As already remarked, this design procedure differs from the approach proposed in [
29]. In fact, the control design proposed in this paper relies on the so-called inverse model principle, which is solved using the fuzzy identification approach recalled above.
Note that as explained in the following, the fuzzy methodology is exploited twice. First, the fuzzy modeling and identification approach is used to derive a fuzzy representation of the process under investigation, by means of its sampled inputs and outputs. Second, by means of this fuzzy model, and in particular using its state, the design of the fuzzy controller can be achieved. The derivation of the fuzzy controller model is performed by employing the states of the process fuzzy model. However, the estimation of the parameters of the fuzzy controller are achieved by minimizing the error between the reference power and the controlled power , thus leading to maximize the wind turbine generated power.
With reference to stable fuzzy systems, whose inverted dynamics are also stable, a nonlinear controller can be simply designed by inverting the fuzzy model itself. Moreover, when modeling errors and disturbances are not present, this controller is able to allow for exact tracking with zero steady-state errors. However, modeling errors and disturbance effects are always present in real conditions, which can be tackled by directly identifying the controller model (i.e., the inverse controlled model) using the FMID approach. Differently from [
29], a robust control strategy is thus achieved by minimizing a cost function which includes the difference between the desired and controller outputs, and a penalty on the system stability. In general, a nonconvex optimization problem has to be solved, which hampers the direct application of the proposed approach. However, the optimization scheme described in [
7] can be exploited, which is based on a parametrized search technique applied at a higher level to formulate the control objectives and constraints.
Note that, as remarked in
Section 2, the fuzzy approach proposed in this work is able to provide a high-fidelity description of the wind turbine behavior, which already includes uncertainty and disturbance, as described, e.g., in [
22]. The fuzzy approach is thus used again to derive the formulation of the controller in the form of TS prototypes. The parameters of the controller fuzzy model are estimated by minimizing the difference between the monitored outputs and the reference ones, taking into account the disturbance and the uncertainty affecting the wind turbine process. Therefore, the approach proposed in this work is able to cope with external disturbance modeled in the wind turbine benchmark.
In this way, the estimated controller based on the process inverse model and approximated via a fuzzy prototype is able to describe the complete behavior of the monitored plant in its different working conditions (i.e., partial and full load situations). In fact, the rule-based fuzzy inference system of Equation (
14) has been derived for modeling the wind turbine dynamic process of Equation (
9) in its equivalent discrete-time form of Equation (
30):
and, in particular, the TS fuzzy representation has the form of Equation (
31):
The current state
and the input
represent the inputs that drive the model of Equation (
31). Its output represents the prediction of the system output at the next sample
. The model of Equation (
31) requires the estimated membership functions
, the state
and the parameters
,
of the controlled system, which are denoted by the superscript
.
Therefore, the input
generated by the control law feeds the monitored process such that its output
asymptotically follows the desired (reference) output
. This behavior is obtained by using the inverse model principle, represented by the expression of Equation (
32):
that is a nonlinear function of the vector
and the reference
.
However, in general, with reference to Equation (
32), it is difficult to determine the analytical expression of the inverse function
. Therefore, the methodology proposed in this work suggested to exploit the identified fuzzy TS prototype of Equation (
31) to provide the particular state
at each time step
k. In this way, from this mapping, the inverse mapping
is directly identified the form of Equation (
14), if the controlled system is stable, and in particular in the form of Equation (
33):
where the state
and the reference
signal represent the inputs of the identified controller model. The model of Equation (
33) contains the estimated membership functions
and the parameters
,
of the identified controller model, that are denoted by the superscript
. The complete scheme is outlined in
Figure 5.
Note that
Figure 5 sketches the general principle of the design of the controller for a system with input
and output
. On the other hand, the signal
represents the generic set-point to be tracked (i.e.,
or
) depending on the working region (1 or 2) and the controlled output (i.e., the sampled signal
or
). Under this assumption, the identification of the fuzzy controller parameters leads to minimize the difference between
and
. It is not required that
equals
, thus making the problem feasible within the selected degree of accuracy.
Figure 5 highlights the series connection between the controller models (i.e., the inverse process model identified using the fuzzy systems) and the process model itself (described by means of fuzzy models), which should lead to an identity mapping as in Equation (
34):
where
for a proper value of
. However, the expression of Equation (
34) holds in ideal conditions. However, the model-reality mismatch and measurement errors are properly managed by means of the fuzzy modeling scheme recalled in
Section 3. In this way, the difference
can be made arbitrarily small by a suitable selection of the model parameters, i.e., the fuzzy membership functions
, the number of clusters
M, and the regressand
,
. Moreover, as highlighted in
Figure 5, the fuzzy model of the process is used for providing the state vector
. Therefore, the state of the fuzzy controller
is updated using the process model state
and the reference input
. These computations are performed using standard matrix operations, thus making the algorithm suitable for real-time implementations [
30].
Note that, with reference to the data-driven fuzzy approach, the stability issue is analyzed here both during the estimation stage and in simulation. On the one hand, the derivation of the fuzzy regulator is achieved in practice by means of a dynamic inversion of the process model of Equation (
30). In fact, by using the fuzzy approach considered here, this dynamic inversion of the process model of Equation (
31) is achieved by means of the computation of the TS fuzzy prototype describing the controller model of Equation (
33). In more detail, the derivation of the fuzzy controller relies on two steps. In the first step, the fuzzy model of the controlled process of Equation (
31) is obtained. This model is used to estimated the prototype of the fuzzy regulator of Equation (
33). In fact, the fuzzy model of the process is exploited to generate the state
and the other signals
that are required for the identification of the fuzzy model of the controller. Note also that in this iterative procedure, the simulations are performed using only one-step-ahead predictions provided by the relations of Equations (
31) and (
33). In this way, the practical implementation of this algorithm does not suffer from convergence problems. Moreover, the minimization of the difference between the reference and the desired output
with proper accuracy guarantees the derivation of the optimal fuzzy controller. The analytical proof of the stability of the overall system can rely on Lyapunov theory, as described, e.g., in [
31]. On the other hand, the stability of the overall system is verified in simulation, when the proposed fuzzy regulator is applied to the wind turbine benchmark and the Monte Carlo tool is considered. These simulation results will be summarized in
Section 4.
As already remarked, the effects of the model uncertainty and disturbance lead to a different behavior of the model with respect to controlled process, thus resulting in a mismatch between the process outputs
and their references
. This mismatch can be compensated by means of the on-line mechanism described by the expressions of Equations (
31) and (
33). These issues motivate the model-based strategy relying on the adaptive algorithm proposed in
Section 3.2.
Note finally that the fuzzy controller proposed in this section and depicted in
Figure 5 will replace the baseline wind turbine regulator of
Section 2 and reported in
Figure 4.
3.2. Model-Based Adaptive Control Scheme
This section describes the model-based adaptive control strategy used in connection with the on-line estimation scheme presented above. In more detail, with reference to the wind turbine system recalled in
Section 2, adaptive controllers for processes of second order (
) are designed. Moreover, the considered adaptive controllers are based on the trapezoidal method of discretisation.
With reference to Equation (
15), the transfer function of the time-varying controlled system with
is considered, whose parameters estimated using the on-line identification approach recalled above:
Note that the subscript k for model and controller parameters will be dropped in order to simplify equations and formulas.
The control law corresponding to the discrete-time adaptive controller in its difference form of Equation (
36):
with
representing the tracking error, with
, and
the reference (set-point) signal.
is sampling time. The controller parameters
and
are here time-varying and derived from the on-line model parameters in the vector
. The control law can be represented also in its feedback formulation as described by Equation (
37):
where the new controller variables
and
(or
and
) are derived from the relations of Equation (
38):
where the parameters
and
are functions of the (time-varying) critical gain and the critical period of oscillations, respectively,
and
:
that depend on the time-varying model parameters in the vector
. In particular, when considering a second order model described by its (time-varying) parameters
,
,
and
, the variables
and
required by the Ziegler-Nichols method used in this work are computed at each time step
k from the following relations [
32,
33]:
In this way, the adaptive discrete-time linear controllers of Equations (
36) or (
37) are designed on the basis of the time-varying linear model of Equation (
15) estimated via the on-line identification scheme from the data of the nonlinear wind turbine process of Equation (
9).
Note that the adaptive regulators considered in this section were implemented in the Simulink environment, integrating also the on-line estimation scheme recalled above.
The simulation set-up employs three adaptive regulators used for the control of the blade pitch angle
, and the generator control torque
, in the partial and full load working conditions, by using the controlled outputs
and
. The complete block scheme is shown in
Figure 6.
Note that, the adaptive control scheme represented in
Figure 6 will replace the baseline wind turbine controller recalled in
Section 2 and depicted in
Figure 4. In this way, the adaptive controller should be able to manage possible uncertainty affecting the wind turbine system, thus allowing one to improve the performance of the baseline wind turbine control described in
Section 2.
Note that an important point concerns the stability issue when the switching of the controllers is considered, and it can be solved as bumpless transfer for adaptive control. In more detail, in the adaptive control setting, the controller output can have undesired transients (bumps), if a current on-line controller and a new controller to be switched have different outputs at the switching instant. To attenuate these bumps associated with controller switching, which could lead to stability problems, a variety of bumpless transfer methods have been suggested. As in this case, the plant is not precisely known at the outset, and the goal of adaptive control is to change the controllers to improve performance as plant data begins to reveal some information about the plant. Thus, in adaptive switching control an exact plant is generally unavailable at the time of switching. Moreover, in the adaptive application considered in this work where the true plant model may only be poorly known at controller switching times, it may be preferable to employ a bumpless transfer technique that does not depend on a precise knowledge of the true plant model. Therefore, the bumpless transfer method presented in [
34,
35] based on the slow decomposition of the controller is considered. It consists of a method that can be implemented without precise knowledge of the true plant at switching times. In particular, by appropriately re-initializing the states of the controller modes at switching times, this method ensures that not only will the controller output be continuous, but also that it avoid fast transient bumps after switching.
Another key aspect concerns the possible non-minimum phase behavior of the considered wind turbine. In this case, the self-tuning design procedure represented by Equations (
39) and (
40) would lead to poor performances. However, it is worth noting that according to
Section 2, there are two possible regions of turbine operation, namely the high and low wind speed regions. High-speed operation is frequently bounded by the speed limit of the machine. Conversely, regulation in the low-speed region is usually not restricted by speed constraints. However, the system has possible non-minimum phase dynamics in this low-speed region. Moreover, this behavior in the low-speed region can be observed for very low tip-speed-ratio, i.e., when
is near to zero. However, as presented by the paper in
Section 4, the condition
is always not satisfied, also for low wind speed. Therefore, the benchmark under consideration can present non-minimum features only for working conditions different from the ones considered in
Section 2. However, alternative design methodologies that take into account time delay behavior can be found, e.g., in [
36]. Considering again Equation (
46), the Taylor approximation of a time delay transfer function leads to verify that an inverse response time constant
(negative numerator time constant in Equation (
46)) may be approximated as a time delay:
This represents the deteriorating effect of an inverse response similar to that of a time delay. In the same way, a lag time constant
may be approximated again as a time delay:
Furthermore, considering the product of Equations (
41) and (
42), it follows that the effective delay
L of Equation (
43) can be taken as the sum of the contribution from the various approximated terms
and
. In addition, for digital implementation with sampling period
,
L can consider also the contribution of the D/A converter
. Therefore, the approximation of Equation (
43) is valid, and an approximate first-order time delay stable model is obtained as already shown by Equation (
43):
where
k is the model gain,
the dominant lag time constant, and
L the effective time delay. Under these assumptions, the following rules for the tuning of the PI controller can be exploited for first-order time delay (non-minimum phase) models:
where
is the desired first-order closed-loop response time and represents the only tuning parameter. Small values of
lead to response fast speed, whilst large values for stable and robust behavior. A good rule would suggest to set
for fast response with good robustness properties [
36].
It is worth noting that the work [
37] provided an analytical demonstration of the stability of an adaptive control scheme for wind turbines.
Finally,
Section 4 will show the achieved results regarding the design and the application of the adaptive controller to the data from the wind turbine benchmark.