1. Introduction
Wind energy, which has received very wide development in many countries of the world, now represents significant competition for traditional energy sources [
1]. A particularly high level of wind energy development is observed in Southeast Asia and Europe [
2]. For example, in 2018, in Denmark, 42% of all electricity produced was produced by wind turbines; in Portugal—27%; in Spain—20%; in Ireland—19%; in Germany—18.8%; in the Mediterranean region on the Greek islands—more than 21% [
3]; and in the European Union as a whole—7.5% [
4]. It is important to note that the share of renewable energy sources in the total energy consumption of the countries of the European Union in 2018 reached 17.5% [
5]. In 2022, for the first time in the EU, solar and wind energy came out on top in terms of generation, overtaking all other sources. Combined, wind and solar energy provided a record fifth of the EUs electricity (22.3%)—a contribution larger for the first time than either nuclear (21.9%) or gas (19.9%) generation [
6]. According to the Union of the Electricity Industry, Eurelectric, two-thirds of the electricity generated in Europe in the first half of 2023 is carbon-free [
7]. The share of renewable energy sources is 40% of the total production, while electricity generation based on fossil fuels has fallen by 18% [
8]. By 2030, up to 80% of the EUs electricity could be produced without the use of fossil fuels [
8].
Figure 1 shows the dynamics of simple electricity generation by different types of sources from 2000 to 2022.
The observed period can be divided into three parts. First, from 2000 to 2010, the main share of generated electricity was from nuclear and thermal power plants. In the second period, from 2010 to 2016, their relative share in the total gross production gradually began to decrease, while in the last period (after 2016), an increase in the electricity produced from renewable energy sources (RES) was observed. In the last three years, after 2020, the share of electricity produced by RES exceeds 50% of the total production.
Wind turbines are devices designed to capture the kinetic energy of the wind and convert it into useful electrical energy [
10]. They play an important role in promoting sustainable energy solutions and come in two main types: Horizontal Axis Wind Turbine (HAW) and Vertical Axis Wind Turbine (VAW). At present, HCVs dominate the market, but HCVs remain the subject of active research [
11]. Despite some comparative disadvantages, such as lower aerodynamic efficiency, problems with self-launching at low wind speeds, and design difficulties when scaling to large levels, HFWs have certain advantages, including their applicability on a small scale and the ability to generate power from various wind directions, which makes them suitable for distributed energy systems in urban environments [
12].
One of the main tasks of wind turbine control is to regulate the output power in response to changes in wind speed, which is called the point of maximum power, which is critical for optimal power generation [
13]. The various loads they experience when extracting energy from the wind are carefully analyzed when designing wind turbines. Proper structural design and choice of materials are key to the efficient operation of wind turbines [
14]. The wind turbine blade position control system plays an important role in optimizing its operation when wind conditions change. This system provides accurate positioning of the turbine blades at the optimum angle to maximize the capture of wind energy and mitigate the impact of adverse meteorological events such as strong winds and gusts [
15]. The angle of inclination of the blades directly affects the aerodynamic load and the extraction of energy from the wind. There are two main categories of blade position control systems: passive and active control systems.
Passive control systems use the built-in aerodynamic and mechanical characteristics of the blades to control their position [
16]. Such an approach might include changing the profile of the blades or including flaps that automatically adjust the angle of attack based on wind speed. Although passive systems are easy to use and do not require active intervention, their effectiveness can be limited due to their static nature. In contrast, active control systems use complex electronics, sensors, and actuators to dynamically control the position of the blades [
17]. This real-time adjustment capability allows blade rotation to be fine-tuned based on factors such as wind speed and generator load, resulting in increased efficiency and adaptation to changing wind conditions. However, active systems require more complex infrastructure and complex equipment [
14]. Algorithmic control systems represent another promising approach using advanced algorithms and software for optimization purposes [
15]. Some authors suggested using PID controllers with the extension of derivation and integration orders from integer to non-integer numbers with extended functions in comparison to classical ones [
18]. These algorithms may include wind speed prediction, adaptive blade angle control, generator optimization, and other techniques that provide the flexibility and potential for optimal generator performance. Other researchers proposed adaptive compensation by using a multilayer perceptron neural network. The results of this method offered a practical implementation [
19].
However, the implementation of such systems requires significant computing resources and experience in programming algorithms [
16]. Selecting an appropriate blade position control system for a wind turbine project requires a careful assessment of project requirements, costs, technical resources, and other relevant factors. Each system has its advantages and disadvantages, which makes the decision-making process important and complex [
17]. However, the ultimate goal remains the same: to achieve the optimal position of the wind turbine blades for maximum efficiency and overall energy efficiency. With the pursuit of a green and environmentally friendly future, the continuous development of blade position control technologies paves the way for a more efficient and sustainable use of wind energy [
20].
3. Materials and Methods
A 3D model of a vertical-axis wind turbine blade position control system was developed using computer-aided design (CAD) principles in the Solidworks
® 2019 software environment. The core methodology of the 3D model is built on CAD principles [
28]. Through the CAD process, the physical components of a wind turbine, including the blades, motor, and controls, were carefully and accurately modeled. This involved defining the geometry and orientation of each component to create a detailed digital representation of the entire control system. This 3D model serves as the main tool for a general understanding of the behavior of the system. This made it possible to carry out visualization, analysis, and optimization, and thanks to 3D modeling, it was possible to create a physical laboratory model of the control system on a 3D printer for conducting experiments.
This 3D model provides a comprehensive representation of the control system and facilitates an in-depth analysis of its dynamics [
29]. The development of this virtual model is instrumental in predicting the behavior of the control system at various engine speed values, thus enabling the examination of multiple scenarios and input parameters. Through such analysis, optimal control strategies can be determined, and the performance of the control system can be thoroughly evaluated. The foundation of the dynamic model lies in the implementation of the Runge–Kutta method, a widely used numerical technique for solving differential equations. This iterative method yields an approximate solution with the desired level of accuracy, which is essential for understanding the relationship between motor rotation and blade rotation [
30]. This insight into the motor–blade relationship further facilitates the analysis and optimization of the control system. Additionally, during the control system’s development process, a crucial aspect involved approximating the relationship between motor activation time and blade angle. The data obtained were subjected to polynomial approximation utilizing the SciPy library [
31]. Given the blade’s angle dependency on time, the polynomial function serves as a fitting approach to accurately represent this intricate relationship [
32]. The mathematical function derived from the polynomial approximation proves to be a valuable tool for comprehending and predicting the blade position control system’s behavior. Through a thorough examination of this function, it becomes possible to discern the optimal parameters for effectively controlling the wind turbine blade position and, subsequently, maximizing the overall system’s efficiency [
33].
Figure 2 visually showcases the 3D model of the control system, emphasizing its significance as a powerful tool for simulations and analysis. This model allows researchers and engineers to visualize the intricate interplay between various components and gain a deeper understanding of the system’s behavior under different operating conditions. The development of a sophisticated 3D model of the blade position control system for vertical-axis wind generators, combined with numerical calculations and the utilization of the Runge–Kutta method [
34], has yielded invaluable insights into system dynamics and performance. The polynomial approximation of the motor activation time and blade angle relationship further enhances the model’s accuracy, enabling researchers to make informed decisions regarding the optimal control strategies for maximizing wind turbine efficiency. This software environment represents a significant advancement in the field of wind turbine technology, contributing to the quest for sustainable and efficient renewable energy.
The mechanism described in the article is designed to control the blades of a wind generator (1) effectively. It utilizes a lever system (2) that is mounted on a movable disk (6). The key component in the system is the motor (4), which initiates the rotation. As the motor rotates, it drives a gear train (3, 5), which in turn causes the disk to rotate. This rotational motion of the disk ultimately adjusts the positions of the blades. By employing this lever system and motor-driven gear train, the mechanism allows for precise control over the blade positions. This control is crucial for optimizing the wind generator’s performance in capturing wind energy. The ability to adjust the blade positions ensures that the generator can efficiently harness the available wind resources under different conditions. The appearance of the wind turbine in several modes of operation is shown in
Figure 3 [
35].
The process of determining the optimal parameters of a mathematical model of a wind turbine control system involves a combination of modeling, experimentation, and control algorithm tuning. The model was used to predict the behavior of the system under conditions of changes in wind speed and engine activation time. A proportional-integral (PI) controller was used to control the position of the blades. The controller has two key parameters:
(proportional gain) and
(integral gain). The optimal values of those parameters have been determined experimentally. The laboratory experiments were conducted using a 3D-printed model of a wind turbine. This experiment involved exposing a model to airflow at 25 m per second and measuring the wind generator’s output voltage over time (
Figure 3). The stabilization time required for a wind turbine to achieve a stable rotation speed was determined to be 7 s. Based on the analysis of the dynamic properties of the wind power plant, a control program was developed. The control program is executed in real-time, and its performance was validated using a wind turbine model to achieve a blade angle of 90 degrees in 7 s at a wind speed of 25 m per second.
In this case, the selection of the optimal parameters of a wind turbine control system is a complex and multifaceted process, which is influenced by many factors, including changes in wind speed and engine rotation. However, determining the specific optimal parameters depends largely on the wind turbine materials, environmental conditions, and operational requirements. Factors such as the structural integrity of the turbine, the aerodynamic characteristics of its blades, the local climate, and even the desired power output come into play.
4. Dynamic Wind Generator Model
This section describes the dynamics of gear train movement, which allows you to calculate the angles, angular velocities, and accelerations of gears depending on external forces, system parameters, and initial conditions.
Figure 4 shows a diagram of the gearing of gears.
Generalized coordinates of the change in the angle of the teeth
and
, which correspond to the angles
and
:
Equation (2) is the mathematical expression of motion and describes Newton’s second law for gearing. It connects the change in kinetic energy (
), dissipative forces (
) with external forces
acting on the system [
36]. In this case,
represents the Lagrange function. Since the degree of freedom of the above system is two, the number of Lagrange equations will be two:
where
is the motion of the link driven by applied forces.
Next, the dependence of the moment of inertia
on the angular velocity was determined
:
The time derivative was taken from Equation (3) and the angular acceleration was determined
:
Equations (5) and (6) describe the change in the Lagrangian function (
) concerning the angle
for the second gear in the transmission [
37]:
Equation (5) describes the part of the Lagrange function (L) that depends on . The Lagrange function in mechanics is used to determine the energy of a system. In this case, the terms of this equation determine the potential and kinetic energy of the system, as well as energy losses (dissipation) in the system. The coefficients and can depend on time t and represent system characteristics. The coefficients describes the rigidity (or elasticity) of the connection between the teeth of the first and second gear train, and can depend on time t and represent system characteristics. These coefficients and represent the radii of the first and second gears, respectively. They are used to determine the mechanical characteristics of the transmission, such as moment of inertia and torque, and can depend on the size and geometry of the teeth.
Equation (6) is a simplified version of Equation (5) and describes the part of the Lagrange function that depends only on
.
With the help of Equation (6) it can be ignored dissipation and the additional term associated with the derivative .
Equation (7) defines the energy dissipation term for the first gear:
where
is the friction force between the teeth of the first and second gears. It determines how quickly energy is lost during motion and can include both energy dissipation in the form of heat and other frictional effects. The specific meanings of coefficients
,
,
,
, depending on the physical properties of the gears and the system being modeled.
The total force
is determined by the Formula [
38]:
where
is the torque on the first shaft.
Equation (9) is the equation of motion for the first gear, relating the moment of inertia, kinetic and dissipative energies, external forces, and system parameters:
Equations (10)–(12) are similar to Equations (2)–(4) but refer to the second gear:
Equation (13) describes the change in the Lagrangian function (
L) concerning the angle
φ2 for the second gear in the transmission
This is only true for and does not depend on , because in this case it is assumed that there is no derivative concerning .
Equation (14) defines the energy dissipation function (
D), which depends on the time derivative of
(
). The dissipation function is usually associated with energy losses in the system, for example, due to friction or other dissipative forces.
All these equations form the basis for the analysis of motion and energy losses in a given mechanical system, using the generalized coordinates and .
Equation (15) is an expression for the external forces
acting on the second gear [
11]:
where
is the torque on the second shaft.
Thus, the equation of motion for the gear transmission will take the form [
39]:
Next, it is necessary to transform the dynamic equation into a simple system of equations of the first series
The technique described above shows the dynamics of a transmission system using gears. Variables V1, V2, V3, and V4 represent the angular movements and speeds of the gears involved in the transmission (
Figure 5). The following values were arbitrarily adopted for the system parameters [
40]:
The provided code implements a numerical method called the Runge–Kutta method to solve a system of differential equations describing the dynamics of a gear transmission system. Differential equations reflect the behavior of a system as it evolves over time. The differential equations that describe the behavior of the system are defined in the system equations function. These equations are based on the physical properties of gears and the forces applied to them. The variables V1, V2, V3, and V4 represent the angular velocities and gear positions. The physical parameters of the system are defined as constants in the system_equations function. These parameters include masses, radii, stiffnesses, damping, moments of inertia, external forces, and friction coefficients. The initial conditions of the system are set equal to zero for all variables (V1(0) = 0, V2(0) = 0, V3(0) = 0, V4(0) = 0).
Further, the presented calculation method was written in the form of a program code in the Python language, taking into account the numerical parameters of the system for performing the calculation (
Figure 6):
The simulation time interval is determined by the parameters t_start, t_end, and dt (time step). In code, it models the system from t_start to t_end with a time step dt. Numerical integration (Runge–Kutta method): the main loop is repeated in time steps from t_start to t_end. At each time step, it calculates the derivatives of the variables (V1_dot, V2_dot, V3_dot, V4_dot) using the Runge–Kutta method. This involves calculating the values of k1, k2, k3, and k4, which are used to update the variables at the next time step. The simulation results, i.e., the values of V1, V2, V3, and V4 at each time step, are stored in the V_solution array. Finally, the code prints the time and the corresponding values of V1, V2, V3, and V4 at each time step.
The presented program code plays a crucial role in determining the speed of rotation of the gear. It accomplishes this by utilizing a series of expressions, specifically expressions (1)–(18), which are programmed into the code. These expressions represent the mathematical calculations and algorithms necessary to calculate the gear’s rotational speed accurately. By inputting the relevant parameters and variables into the program, such as the wind speed, gear ratio, and other relevant factors, the code can calculate and determine the optimal rotational speed for the gear.
There is a visualization of the program’s output in
Figure 7. This figure provides a graphical representation of the results obtained from running the program. It may include plotted data points, curves, or other relevant visual elements that demonstrate the relationship between the input parameters and the resulting rotational speed of the gear.
Following
Figure 2, the energy from the gear transmission is transferred to the disk, and then the position of the blades is controlled through the lever system.
Figure 8 shows the complete program code for calculating the position of the blades:
The initial conditions and simulation time steps are set up, and arrays to store the solution are initialized. The for loop iterates over time steps, calculating k1, k2, k3, and k4 values based on the Runge–Kutta formula. The solution is updated at each time step using the weighted sum of these k values. The result is stored in the V_solution array, which represents the system’s state variables (e.g., velocities). Polynomial approximation is employed to approximate the relationship between motor activation time and blade angle. The lever_system_equations function defines the equations governing the lever system, including parameters like motor torque, ramp time, lever length, blade length, and lift coefficient. A conditional statement is used to vary the motor torque with time, simulating a ramp-up in torque. Angular acceleration is calculated based on the motor torque. The theta_dot value represents the rate of change of blade angle with time.
After running this program code, calculations of the angles of rotation of the blades were obtained depending on the time the motor was turned on (
Table 1).
Based on the data obtained, the following observations can be made: when the engine is turned on with the previously set parameters, the blades begin to rotate from zero angle and gradually increase their angle of rotation (column 3 in
Table 1 shows the value of the blade rotation angle in radians, column 4 in degrees). The increase in the angle of rotation of the blade occurs gradually and, by the end of the simulation, reaches a maximum value of 83 degrees. Thus, to fully bring the wind generator into emergency operation, as shown in
Figure 3c, it is necessary to keep the engine on for 0.6 s. Next, you need to derive a mathematical function according to
Table 1. To do this, an approximation of the dependence between the engine on time and the angle of rotation of the blades is carried out.
Using the SciPy library, a polynomial approximation of the data was performed. Since the angle of rotation of the blades depends on time, a polynomial function can be used. Below is the code that performs the approximation and outputs the resulting mathematical function [
41]. Further, according to the data obtained, it is necessary to derive a mathematical function according to the data in
Table 1. To do this, an approximation of the dependence between the time of switching on the motor and the angle of rotation of the blades is carried out. Since the angle of rotation of the blades depends on time, a polynomial function can be used.
Figure 9 shows the program code that performs the approximation and outputs the resulting mathematical function [
41]:
After running the program code, a mathematical function was obtained that approximates the dependence of the angle of rotation of the blades on the time the motor is turned on according to the data from
Table 1:
Here t represents the time the motor is turned on, and the values of the coefficients (a = 293.6769, b = +81.0778, c = 4.9338) are determined by approximation.
These techniques enable the creation of a dynamic model that can predict the behavior of the control system and provide valuable insights into optimizing wind turbine efficiency. The code in (
Figure 8) demonstrates the practical implementation of these techniques used in the automatic approach.
5. Results
Computer simulation was carried out in the TIA Portal 14 software environment, where various values of the control coefficients were studied. The results obtained make it possible to choose the optimal control parameters.
In accordance with Equation (19), for further development of a control system based on this equation, it was decided to use feedback to maintain a given angle of rotation of the blades of a vertically axial wind generator. Let
be the desired angle of rotation of the blades and
be the current angle of rotation as measured by the sensor. The rotation angle error will be determined by the difference between the desired and the current rotation angle [
42]:
This error will be used further to calculate the control signal that will affect the operation of the motor. One approach to control the system is to use a PI (proportional-integral) controller. The formula for calculating the control signal in the PI controller is as follows [
43]:
where u(t) is the control signal applied to the motor;
is the coefficient of proportionality (proportional coefficient);
is the integration coefficient (integral coefficient);
is the rotation angle error at time t;
dt is the integral of the rotation angle error from the initial time to t.
Determining the optimal coefficients ( and ) for a PI controller, as demonstrated in the research, can be accomplished through numerical simulations and experiments. This offers a relatively straightforward path to tuning the controller to achieve the desired system performance. The integral component of a PI controller () accounts for accumulated errors and ensures the elimination of steady-state errors, which can be crucial in systems requiring precise control.
The values of and can be adjusted experimentally to achieve the required performance of the control system. Thus, using this PI controller formula and replacing with the angle of rotation obtained from the approximation function , we can calculate the control signal for the motor at each time t.
As a result, the control system will look like this:
where
is the calculated according to Equation (19),
is the measured angle of rotation of the blades at time t.
A test was carried out and the coefficients were determined for a wind turbine blade control system. This model includes equations for the gear transmission system and the blade angle control system. To test the dynamic model, computer simulation was carried out using the TIA Portal software environment. The software allowed the exploration of various control coefficients. A proportional-integral (PI) controller was used to control the wind turbine blades. The PI controller calculates the control signal () based on the error between the desired angle () and the actual angle () measured by the sensor. The proportional gain () and integral gain () were adjusted experimentally during the simulation to achieve the required control system performance to minimize the error between the desired and actual blade angles and ensure stable operation.
The general scheme of the control system for the position of the wind turbine blades is shown in
Figure 10.
Criteria for selecting odds: Proportional gain (): A value of 0.5 was selected. The choice of affects the proportional component of the control and affects the speed of response of the control system to errors. The ratio was chosen to balance the control characteristics without causing excessive fluctuations. Integral factor (): A value of 50 was selected. The coefficient () affects the integral component of the control, which helps eliminate steady-state errors. These coefficients and equations will be used in a real control system to maintain the desired blade angle in a real wind turbine.
To determine the control coefficients, computer simulation was carried out in the TIA portal software 14 environment. In this study, 40 was chosen as the desired value of the blade installation angle. This value depends on the wind speed, on the dimensions of the wind turbine, and on the characteristics of climatic conditions, which are not considered within the framework of this article. The simulation results are shown in
Figure 11,
Figure 12 and
Figure 13. The proportionality coefficient was chosen as 0.5 since, with it, the P component does not exceed the desired value SP_INT; when the integration time was changed, the following results were obtained, which are shown in
Table 2. At small values of
, the control signal at the beginning of the transient process has a pronounced oscillatory character (
Figure 11). In the analysis of the results in
Figure 11, an important observation emerges: the transient process, represented by the characteristic S-shaped curve, concludes at approximately 7 s. This finding underscores the inherent necessity for developing a control system capable of effecting the required change in the wind generator blade pitch angle within a 7-s window. It is particularly noteworthy that this study was exclusively focused on the maximum steady wind speed. Clearly, at lower wind speeds, this time window will expand. Consequently, the developed control system proves itself capable of effectively responding and ensuring a 90-degree change in blade position, even in the face of sudden wind gusts at or near maximum speed.
The component completely covers the P component, so it has a much larger value. With a further increase in the integration time, the initial fluctuations decrease (
Figure 12), resulting in the transient process taking on an exponential form after the influence of the P component ceases. However, this longer integration time prolongs the overall duration of the transient process (
Figure 13).
;
Equation (22) would then look like this:
Simplifying, we get the control signal:
The desired value of the blade installation angle was set at 40, depending on wind speed, wind turbine dimensions, and climatic conditions. The simulation results in
Figure 11,
Figure 12 and
Figure 13 illustrated the behavior of the control system using a proportional-integral (PI) controller with specific coefficients. For the given coefficients (
and
), the control signal (
) was derived using Equation (25). The influence of the integration time (
) on the transient process and the wind generator’s operating modes were examined. A smaller
led to pronounced oscillatory behavior, while a moderate
reduced initial fluctuations, and a larger
resulted in an exponential transient process.