Keywords

1 Introduction

Wind power generation is the most rapidly growing form of renewable energy where permanent magnet synchronous generator is the most used due to its advantages such as high efficiency, rapid response and high-power density [1, 2]. However, this kind of configuration presents some numerous issues which complicate the controller design for the PMSG such as parametric uncertainties, varying operation condition, nonlinear dynamics and external disturbances [3]. Control strategies for the PMSG have been mainly designed by nonlinear control methods. Literature [4] proposes an adaptive backstepping controller. Predictive control strategies for PMSG are illustrated in [5]. Reference [6] proposes a sliding-mode control approach. Fuzzy control method is developed by reference [7]. In this context, in this paper, we are interested in the so-called passivity-based control (PBC) due to its advantages of enhancing robustness properties, and the cancellation of system nonlinearities is avoided and energy-based approach [8]. In the PBC design, the objective is to bring the system to a desired dynamic, leaving the closed-loop system nonlinear, without cancelling dynamics or introducing controller singularities. A large publication that investigates a PBC on the PMSG can be found in the literature. Reference [9] reported a PBC-PI control. In [10], a passivity-based feedback control has been developed. Further, literature [11] presented a passivity-based sliding controller. Meanwhile, an adaptive passivity-based nonlinear control applied to PMSG is developed by [12]. Moreover, a passivity-based control combined with fuzzy integral sliding-mode control is investigated in [13].

This paper contributes with the new PBC with a linear feedback associated to backstepping technique, applied to the PMSG-based variable wind speed turbine with grid-connection via back-to-back converter to bring the PMSG to work at an optimal point while ensuring stability, fast convergence of the conversion system and performance improvement. This work aims that DC voltage and the reactive power must be maintained at their respective value, whatever the disturbances related to the PMSG. In Sect. 2, the model of the wind turbine and the PMSG is developed. Section 3 deals with the design procedure of proposed controller. Section 4 deals with the PI controller applied to the grid-side. Numerical results are provided in Sect. 5. Section 6 deals with the conclusion.

2 Wind Power and PMSG Modelling

2.1 WindTurbine Model

The mathematical model of the wind power that can be transformed by the turbine is given by (see Fig. 1) [1, 14, 15]:

$$P_{m} = \frac{1}{2}\rho C_{p} (\beta ,\lambda )Av^{3}$$
(1)
$$T_{m} = \frac{{P_{m} }}{{\omega_{m} }}$$
(2)
$$C_{p} (\beta ,\lambda ) = \frac{1}{2}\left( {\frac{116}{{\lambda_{i} }} - 0.4\beta - 5} \right)e^{{ - \left( {\frac{21}{{\lambda_{i} }}} \right)}}$$
(3)
$$\lambda_{i}^{ - 1} = \left( {\lambda + 0.08\beta } \right)^{ - 1} - 0.035\left( {1 + \beta^{3} } \right)^{ - 1}$$
(4)
Fig. 1
figure 1

Wind conversion system under Matlab/Simulink

where A represents the area of the blades, \(\lambda\) represents the tip-speed ratio, \(C_{p}\) denotes the coefficient of the power, β denotes the angle of the pitch, ρ denotes the wind density, v denotes the speed of the wind, \(\omega_{t}\) represents the speed of the turbine and R denotes the blades radius.

2.2 PMSG Modelling

To design the proposed strategy, the dq model of the PMSG is considered and expressed as [16]:

$$v_{dq} = R_{dq} i_{dq} + L_{dq} \dot{i}_{dq} + p\omega_{m} \Im \left( {L_{dq} i_{dq} + \psi_{f} } \right)$$
(5)
$$J\dot{\omega }_{m} = T_{m} - T_{e} - f_{fv} \omega_{m}$$
(6)
$$T_{e} = \frac{3}{2}p\psi_{dq} \Im i_{dq}$$
(7)

where \(R_{dq} = \left[ {\begin{array}{*{20}c} {R_{S} } & 0 \\ 0 & {R_{s} } \\ \end{array} } \right]\) denotes the stator resistances matrix, \(f_{fv}\) represents the viscous friction coefficient, \(\psi_{f} = \left[ {\begin{array}{*{20}c} {\phi_{f} } \\ 0 \\ \end{array} } \right]\) represents the flux linkages, \(T_{e}\) represents the electromagnetic torque, \(L_{dq} = \left[ {\begin{array}{*{20}c} {L_{d} } & 0 \\ 0 & {L_{q} } \\ \end{array} } \right]\) denotes the stator inductions matrix, \(v_{dq} = \left[ {\begin{array}{*{20}c} {v_{d} } & 0 \\ 0 & {v_{q} } \\ \end{array} } \right]\) denotes the vector of the stator voltages, J denotes the inertia moment, \(\Im = \left[ {\begin{array}{*{20}c} 0 & { - 1} \\ 1 & 0 \\ \end{array} } \right]\), \(i_{dq} = \left[ {\begin{array}{*{20}c} {i_{d} } \\ {i_{q} } \\ \end{array} } \right]\) represents the vector of the stator currents.

3 Proposed Controller Design

Making the system passive is the principal aim of the proposed method. This is possible by introducing a damping term and reshaping its energy. The design of the adaptive linear feedback passivity-based backstepping controller (ALPBC) needs firstly to design the desired torque by the PID controller and then find voltage control as the control law of the PMSG by the backstepping controller.

3.1 Linear Feedback PBC Design

The relationship between the current vector \(i_{dq}\) and the flux linkage \(\psi_{dq}\) are given by [5]:

$$\psi_{dq} = \left[ {\begin{array}{*{20}c} {\psi_{d} } \\ {\psi_{q} } \\ \end{array} } \right] = L_{dq} i_{dq} + \psi_{f}$$
(8)

Substituting the \(i_{dq}\) value obtained from (8) in (5) yields:

$$\dot{\psi }_{dq} + p\omega_{m} \Im \psi_{dq} = v_{dq} - R_{dq} i_{dq}$$
(9)

To design the proposed PBC, a linear feedback is used to the PMSG model that enables regulation in quadrature with the rotor flux and the armature reaction flux. This flux controller sets to zero \(i_{d}\), and the PMSG model will be similar to that of a DC-generator. Then, the used controller has a linearizing feedback, which is expressed by:

$$v_{d} = - L_{q} p\omega_{m} i_{q}$$
(10)

Replacing (10) in (9) enforces the \(i_{d}\) current to zero that yields the simplified model expressed by:

$$\dot{\psi }_{q} - p\omega_{m} \psi_{q} = v_{q} - R_{s} i_{q}$$
(11)

In order to force current \(i_{q}\) to track its set value \(i_{q}^{*}\), a proportional–integral (PI) is adopted, which yields:

$$v_{q} = k_{qp} \left( {i_{q}^{*} - i_{q} } \right) + k_{qi} \int {\left( {i_{q}^{*} - i_{q} } \right){\text{d}}t}$$
(12)

where \(T_{e}^{*}\) represents the desired torque, and \(\psi_{dq}\) denotes the flux linkages expressed by [16]:

Where \(k_{qp} > 0\) and \(k_{qi} > 0\). To track the convergence of vector tracking error \(\varepsilon_{i} = \left( {i{}_{q}^{*} - i_{q} } \right)\), the dynamic of the quadrature current is simplified, and its reference value is considered as the controller inputs of the PMSG when we assume that the PI current loop work satisfactorily by the proper choices of the positive gains. Then, the desired PMSG model, that is controlled by \(i_{q}^{*}\) decoupled by the application of the linear feedback, is expressed below:

$$\dot{\psi }_{q} - p\omega_{m} \psi_{q} = v_{q} - R_{s} i_{q}^{*}$$
(13)
$$J\dot{\omega }_{m} = T_{m} - T_{e} - f_{fv} \omega_{m}$$
(14)
$$T_{e} = \frac{3}{2}p\psi_{q} i_{q}^{*}$$
(15)

The desired model (13)–(15) is used to compute the controller input \(i_{q}^{*}\) with the proposed energy approach.

By taking the desired flux linkage vector as \(\psi_{dq}^{*} = \left[ {\begin{array}{*{20}c} {\psi_{d}^{*} } \\ {\psi_{q}^{*} } \\ \end{array} } \right]\), its tracking error vector as \(e_{f} = \left[ {\begin{array}{*{20}c} {e_{fd} } \\ {e_{fq} } \\ \end{array} } \right] = \psi_{dq} - \psi_{dq}^{*}\), and replacing \({e}_{f}\) in (11), the expression of \({e}_{f}\) is deduced. The Lyapunov theory is defined to compute the desired input \(i_{q}^{*}\) by using the defined function \(V(e_{f} ) = 0.5e_{f}^{T} e_{f}\). Then, it yields the following expression of \(i_{q}^{*}\):

$$i_{q}^{*} = - R_{s}^{ - 1} \left( {\dot{\psi }_{q}^{*} + p\omega_{m} \varphi_{f} } \right) + R_{s}^{ - 1} K_{f} e_{fq}$$
(16)

where \(k_{fq} > 0\).

As can be seen, the current controller \(i_{q}^{*}\) depends on the desired quadrature flux \(\psi_{dq}^{*}\). The PMSG operates at optimal torque only if \(i_{d}\) is fixed to zero. Under this condition, using (8), we get

$$\psi_{q}^{*} = L_{q} i_{q}^{*}$$
(17)

Then, from (7) and (17), it yields the following form of the desired quadrature flux \(\psi_{dq}^{*}\):

$$\psi_{q}^{*} = \frac{2}{3}\frac{{L_{q} }}{{p\varphi_{f} }}T_{e}^{*}$$
(18)

The desired torque is computed by forcing the PMSG and wind turbine to rotate at the same speed and Eq. (7), which is given as follows:

$$T_{e}^{*} = J\dot{\omega }_{m}^{*} + T_{m} + f_{fv} \varepsilon_{\omega }$$
(19)

where \(\omega_{m}^{*}\) represents the wind turbine speed. As can be seen from the above Eq. (19), it shows two drawbacks: the dependence of its convergence on the PMSG mechanical parameters (J, \(f_{fv}\)) and it is in open-loop. To solve that, a PID controller is proposed, to ensure fast convergence of the speed tracking error \(\varepsilon_{\omega } = \omega_{m}^{*} - \omega_{m}\), eliminate the static error and introduce a robustness performance under different operation conditions:

$$T_{e}^{*} = J\dot{\omega }_{m}^{*} - k_{cp} \varepsilon_{\omega } - k_{ci} \int\limits_{0}^{t} {\varepsilon_{\omega } } {\text{d}}\tau - k_{cd} \frac{{\text{d}}}{dt}\varepsilon_{\omega }$$
(20)

where \(k_{cp} > 0\), \(k_{ci} > 0\) and \(k_{cd} > 0\).

3.2 Adaptive Backstepping Controller

The computation of control output of the PMSG is by applying the backstepping approach by stabilizing function generation. The linear feedback passivity-based strategy is used to generate the current controller \(i_{dq}^{*}\) expressed in (12), represents the current reference for the backstepping controller to generate the stabilizing function [4, 17]:

Firstly, the vector of current tracking error is defined as follow:

$$e_{dq} = \left[ {\begin{array}{*{20}c} {e_{d} } \\ {e_{q} } \\ \end{array} } \right] = \left[ {\begin{array}{*{20}c} {i_{d}^{*} - i_{d} } \\ {i_{q}^{*} - i_{q} } \\ \end{array} } \right]$$
(21)

Using (6), (12) and (21), the derivative of (21) is computed as below:

$$\begin{aligned} \dot{e}_{dq} & = \left[ {\begin{array}{*{20}c} {\dot{e}_{d} } \\ {\dot{e}_{q} } \\ \end{array} } \right] \\ & = \left[ {\begin{array}{*{20}c} {\frac{{R_{s} }}{{L_{d} }}i_{d} - \frac{{p\omega_{m} L_{q} }}{{L_{d} }}i_{q} - \frac{{v_{d} }}{{L_{d} }}} \\ \begin{gathered} R_{s}^{ - 1} \frac{d}{dt}\left( {( - \dot{\psi }_{q}^{*} + p\omega_{m} \varphi_{f} ) + K_{f} e_{fq} } \right) \hfill \\ - \left( { - \frac{{R_{s} }}{{L_{q} }} + \frac{{p\omega_{m} L_{q} }}{{L_{q} }}i_{d} - \frac{{p\omega_{m} \varphi_{f} }}{{L_{q} }} - \frac{{v_{q} }}{{L_{q} }}} \right) \hfill \\ \end{gathered} \\ \end{array} } \right] \\ \end{aligned}$$
(22)

To design controller \(v_{dq}\), a Lyapunov function is defined as follows:

$$V_{e} = \frac{1}{2}\left( {e_{d}^{2} - e_{q}^{2} } \right)$$
(23)

The derivative of (23) yields:

$$\begin{aligned} V_{e} & = - k_{1} e_{d}^{2} - k_{2} e_{q}^{2} \\ & \quad + e_{d} \left( {\frac{{R_{s} }}{{L_{d} }}i_{d} - \frac{{p\omega_{m} L_{q} }}{{L_{d} }}i_{q} - \frac{{v_{d} }}{{L_{d} }} + k_{1} e_{d} } \right) \\ & \quad + e_{q} \left( \begin{gathered} \frac{{R_{s} }}{{R_{s} + k_{f} L_{q} }} \times \hfill \\ \left[ \begin{gathered} - R_{s}^{ - 1} \dot{\psi }_{q}^{*} + p\omega_{m} \varphi_{f} \left( {\frac{{f_{fv} }}{{JR_{s} }} + \frac{1}{{L_{q} }}} \right) \hfill \\ + i_{q} \left( {\frac{{R_{s} }}{{L_{q} }} - \frac{{(p\varphi_{f} )^{2} }}{{JR_{s} }}} \right) + \frac{{p\varphi_{f} }}{{JR_{s} }}T_{m} \hfill \\ - \frac{{v_{q} }}{{L_{q} }} + k_{2} e_{q} \frac{{R_{s} + k_{f} L_{q} }}{{R_{s} }} \hfill \\ \end{gathered} \right] \hfill \\ \end{gathered} \right) \\ \end{aligned}$$
(24)

After simplification, the Lyapunov function (24) becomes:

$$V_{e} = - k_{1} e_{d}^{2} - k_{2} e_{q}^{2} < 0$$
(25)

where \(k_{fd} > 0\) and \(k_{fq} > 0\). The global asymptotic stability of the closed-loop is guaranteed by (25), and controller \(v_{dq}\) need to be chosen as below:

$$v_{d} = R_{s} i_{d} - p\omega_{m} L_{q} i_{q} + k_{1} L_{d} e_{d}$$
(26)
$$\begin{aligned} v_{q} & = R_{s}^{ - 1} L_{q} \dot{\psi }_{q}^{*} + p\omega_{m} \varphi_{f} \left( {\frac{{L_{q} f_{fv} }}{{JR_{s} }} + 1} \right) \\ & \quad + i_{q} \left( {R_{s} - \frac{{L_{q} (p\varphi_{f} )^{2} }}{{JR_{s} }}} \right) + \frac{{L_{q} p\varphi_{f} }}{{JR_{s} }}T_{m} \\ & \quad + k_{2} L_{q} e_{q} \frac{{R_{s} + k_{f} L_{q} }}{{R_{s} }} \\ \end{aligned}$$
(27)

Given the influence of the temperature on the stator resistance, and the PMSG dynamical, the stator resistance needs to be estimated adaptively. A new function is defined with the estimation error parameters as follows:

$$V_{s} = \frac{1}{2}\left( {e_{d}^{2} - e_{q}^{2} } \right) + \frac{{\Delta R_{s}^{2} }}{{2k_{s} }}$$
(28)

where \(\Delta R_{s} = R_{s} - \hat{R}_{s}\), \(\hat{R}_{s}\) represents the stator resistance estimated, and \(k_{s} > 0\) represents the adaptive gain. Thus, the derivative of (28) gives:

$$\dot{V}_{s} = \dot{V}_{e} + \frac{{\Delta R_{s}^{2} }}{{2k_{s} }}$$
(29)

After simplification, Eq. (29) can be expressed as:

$$\dot{\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\frown}$}}{R} }_{s} = k_{s} \left( {\frac{{e_{d} i_{d} }}{{L_{d} }} + \frac{{e_{q} i_{q} }}{{L_{q} }}} \right)$$
(30)

4 Grid-Side Control

The mathematical model of the GSC is expressed below [18, 19]:

$$\left[ {\begin{array}{*{20}c} {V_{id} } \\ {V_{iq} } \\ \end{array} } \right] = R_{f} \left[ {\begin{array}{*{20}c} {i_{df} } \\ {i_{qf} } \\ \end{array} } \right] + \left[ {\begin{array}{*{20}c} {L_{f} \dot{i}_{df} - \omega L_{f} i_{qf} } \\ {L_{f} \dot{i}_{qf} - \omega L_{f} i_{df} } \\ \end{array} } \right] + \left[ {\begin{array}{*{20}c} {V_{gd} } \\ {V_{gq} } \\ \end{array} } \right]$$
(31)
$$C\dot{V}_{dc} = \frac{3}{2}\frac{{v_{gd} }}{{V_{dc} }}i_{df} + i_{dc}$$
(32)

where \(i_{df}\) and \(i_{qf}\) denote the grid currents, \(\omega\) represents the grid angular frequency, \(V_{id}\), \(V_{iq}\) denotes the inverter voltages, \(V_{gd}\), \(V_{gq}\) denotes the grid voltages, \(L_{f}\)represents the filter inductance, \(R_{f}\) denotes the filter resistance, \(V_{dc}\) represents the DC-link voltage, C denotes the DC-link capacitor and \(i_{dc}\) represents DC current. The active power \(P_{g}\) and reactive power \(Q_{g}\) are given as:

$$\left\{ {\begin{array}{*{20}c} {Q_{g} = \frac{3}{2}v_{gd} i_{qf} } \\ {P_{g} = \frac{3}{2}v_{gd} i_{df} } \\ \end{array} } \right.$$
(33)

5 Simulation Results

Numerical validation is performed on the conversion by using Matlab/Simulink showed by Fig. 1. The closed-loop parameter values are listed in Table 1. The reference reactive power is fixed to zero, and the DC-link reference is set to 1150 V. Using the pole location method, the gains of the PBC-PI controller are \(k_{p} = 100\), \(k_{i} = 500\), \(k_{qp} = 5\), \(k_{qi} = 8000\). Gains of the DC-link are \(k_{dcp} = 50\), \(k_{dci} = 4000\), And current controller PI gains are \(k_{cp} = 10\), \(k_{ci} = 1000\) and \(K_{fd} = K_{fq} = K_{1} = K_{2} = 100\) and \(k_{s} = 70\).

Table 1 System parameters

The wind velocity is shown in Fig. 2. Figure 3 presents the pace of the electromagnetic torque response. Figure 4 shows the DC-link voltage, which quickly track its reference value 1150 V, without overshoot for the proposed strategy. Figures 5 and 6 show that the reactive power is very well kept at its zero-reference. The ALPBC presents a fast convergence towards the references. The active power is only which is transmitted to the grid. In Fig. 7, we can see a perfect sinusoidal voltage absorption by the grid. This can be deduced that the control strategy successfully achieved main objectives of the paper. The ALPBC shows a higher torque, a reduced DC-link voltage error, a best power generation, with largely more power transmitted for the proposed one when compared to direct PI controller proposed by Sukati et al. in [2] and the passivity-based current control proposed by Belkhier et al. in [20].

Fig. 2
figure 2

Wind velocity

Fig. 3
figure 3

Response of the electromagnetic torque

Fig. 4
figure 4

Response of the DC-link voltage

Fig. 5
figure 5

Generated power

Fig. 6
figure 6

Zoom on reactive power

Fig. 7
figure 7

Grid injected voltage

6 Conclusion

This paper contributes with an adaptive linear feedback energy-based backstepping controller for a wind power system with PMSG to improve its performances. The maximum power extraction from the wind turbine, by taking into account its entire dynamic when synthesizing the controller, represents the main motivation of the present work. The other aim of the study consists to maintain the generated reactive power and DC-link voltage at their reference values. The objectives of the paper are very well achieved. The conversion system shows high efficiency, high performance and fast convergence than the conventional strategies. The control strategy has simple structure and improves the performance of the conversion system.