A method for controlling one or more wind turbines of wind turbine park

The method and controller for wind turbines use a partly populated matrix to interpolate setpoint values for a fast 'warm start', addressing suboptimal power generation in wind parks by enhancing convergence and efficiency.

WO2026124737A1PCT designated stage Publication Date: 2026-06-18VESTAS WIND SYSTEMS AS

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
VESTAS WIND SYSTEMS AS
Filing Date
2025-12-10
Publication Date
2026-06-18

AI Technical Summary

Technical Problem

Optimizing power generation in a wind turbine park is challenging due to dynamic wind conditions and interactions between turbines, leading to suboptimal overall performance, especially during startup or resumption of operations.

Method used

A method and controller for wind turbines that utilize a partly populated matrix to interpolate operational setpoint values, allowing for a 'warm start' by using previously collected data to quickly optimize power generation, reducing computational and storage needs.

🎯Benefits of technology

This approach enables faster convergence to optimal operational setpoints, increasing overall power generation and reducing wear by minimizing unnecessary wake steering, while reducing computational and storage requirements.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure DK2025050228_18062026_PF_FP_ABST
    Figure DK2025050228_18062026_PF_FP_ABST
Patent Text Reader

Abstract

Disclosed is a method, of controlling one or more wind turbines of a wind turbine park. The method comprises obtaining wind turbine parameters for a first wind turbine of the one or more wind turbines. The method comprises determining, based on the wind turbine parameters, operational setpoint values for the first wind turbine. Determining the operational setpoint values based on the wind turbine parameters comprises obtaining operational setpoints values by querying, based on the wind turbine parameters, a partly populated matrix for the one or more wind turbines. The partly populated matrix comprises operational setpoint values associated with respective wind speed values and wind direction values. A part of operational setpoint values are zero values. The method comprises, when the obtained operational setpoint values are zero values, interpolating the obtained operational setpoint values to obtain interpolated operational setpoint values as substitutes for the zero values.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] A METHOD FOR CONTROLLING ONE OR MORE WIND TURBINES OF WIND

[0002] TURBINE PARK

[0003] The present disclosure pertains to the field of wind turbine control. The present disclosure relates to a method for control of operation of a wind turbine and related electronic device.

[0004] BACKGROUND

[0005] A wind turbine has several parameters that can be configured to maximize power generation. Among these are yaw offset relative to the wind direction and pitch angle of the blades on the wind turbine. In a wind turbine park comprising more than one wind turbine, optimizing power generating across many wind turbines and various changing atmospheric conditions can be challenging especially in situation when a wind turbine is starting or resuming operations.

[0006] SUMMARY

[0007] In a wind turbine park, changing wind turbine parameters for one wind turbine to maximize the power generation of the one wind turbine may affect the atmospheric conditions of one or more other wind turbines further downstream, resulting in a drop in power generation for the other wind turbines. This might lead to a resulting overall suboptimal power generation for the wind turbine park. As wind conditions change dynamically, a method for quick optimization of the overall power generation of a wind turbine park is desirable.

[0008] It is of benefit to provide methods for ensuring a faster convergence towards operational setpoints for optimizing control of wind turbines in a wind turbine park.

[0009] Accordingly, it would be a benefit to provide an electronic device and a method for controlling operation of a wind turbine, which mitigates, alleviates, or addresses the shortcomings existing and allows for a so-called warm start of a wind turbine in order to optimize a park-wide power generation.

[0010] Disclosed is a method, of controlling one or more wind turbines of a wind turbine park. The method comprises obtaining wind turbine parameters for a first wind turbine of the one or more wind turbines. The method comprises determining, based on the wind turbine parameters, operational setpoint values for the first wind turbine. Determining the operational setpoint values based on the wind turbine parameters comprises obtaining operational setpoints values by querying, based on the wind turbine parameters, a partly populated matrix for the one or more wind turbines. Optionally, the partly populated matrix comprises operational setpoint values associated with respective wind speed values and wind direction values. Optionally, a part of operational setpoint values comprises zero values. The method comprises interpolating the obtained operational setpoint values to obtain interpolated operational setpoint values as substitutes for the zero values when the obtained operational setpoint values are zero values. The method comprises optimizing power generated by the wind turbine park using the interpolated operational setpoint values as initial operational setpoint values for maximizing power generated by the wind turbine park under mechanical and / or operational constraints. The method may comprise controlling, based on the optimized operational setpoint values, the first wind turbine of the wind turbine park.

[0011] Disclosed is a controller for control of a wind turbine park, the controller comprises a control unit configured to perform the method disclosed herein.

[0012] Disclosed is a wind turbine park comprising a controller according to the controller disclosed herein.

[0013] Disclosed is a computer readable storage medium storing one or more programs, the one or more programs comprising instructions, which when executed by an electronic device cause the electronic device to perform any of the methods disclosed herein.

[0014] It is an advantage of the present disclosure, that the disclosed method and controller can control the wind turbine based on optimized operational setpoint values that are likely closer to a solution of the optimization, thereby allowing for a faster convergence of the optimization when starting from initial zero-valued operational setpoints. This is a so- called warm start based on interpolation of operational setpoint values. The disclosure can reduce the time needed for optimization of the operation setpoints based on the wind turbine parameters (such as configuration hyperparameters) by supplying a warm start using an interpolation of already collected but partly populated matrix. This may lead to an increase of the overall power generated in a wind turbine park.

[0015] The disclosed technique may reduce the amount of storage needed and computation required for warm-start and / or for obtaining interpolated operational setpoint values (as substitutes for initial zero valued operational setpoints). For example, the disclosed technique allows reducing the data storage to keep track of and efficiently represent any turbine- or park- related operational setpoint (such as yaw-offset, pitch-offset, etc.) as a function of configuration hyperparameters (such as wind speed, wind direction, turbine state, etc.). The reduced need of computational resources for obtaining operational setpoint values can allow for retrofitting wind farm level controllers. The model is extendable by implementing better data-storage algorithms (such as cluster-algorithms, kernel density estimations, etc.).

[0016] It is an advantage of the present disclosure that the disclosed electronic device and method enable to generate operational setpoint values faster to be used by the wind turbine. Time of optimizations using warm starts allows reducing the time of optimization by several times, effectively reducing the time of actuating the optimized operation setpoint.

[0017] BRIEF DESCRIPTION OF THE DRAWINGS

[0018] The above and other features and advantages of the present disclosure will become readily apparent to those skilled in the art by the following detailed description of exemplary embodiments thereof with reference to the attached drawings, in which:

[0019] Figs. 1A-B show diagrams illustrating schematically examples of how yaw offset on an upstream wind turbine affect the conditions for a downstream wind turbine,

[0020] Fig. 2 shows a diagram illustrating schematically example wind turbines in a wind turbine park and optionally an example central controller according to this disclosure,

[0021] Fig. 3 shows a flow-chart illustrating an exemplary method, performed by an electronic device, for controlling one or more wind turbines of a wind turbine park according to this disclosure, and

[0022] Fig. 4 is a block diagram illustrating an exemplary electronic device according to this disclosure.

[0023] DETAILED DESCRIPTION

[0024] Various exemplary embodiments and details are described hereinafter, with reference to the figures when relevant. It should be noted that the figures are only intended to facilitate the description of the embodiments. They are not intended as an exhaustive description of the disclosure or as a limitation on the scope of the disclosure. In addition, an illustrated embodiment needs not have all the aspects or advantages shown. An aspect or an advantage described in conjunction with a particular embodiment is not necessarily limited to that embodiment and can be practiced in any other embodiments even if not so illustrated, or if not so explicitly described.

[0025] Figs. 1 A-B show a diagram illustrating schematically examples of how yaw offset on an upstream wind turbine affect the conditions for a downstream wind turbine,

[0026] Fig.lA shows a first wind turbine 22, a second wind turbine 24, and a third wind turbine 26 which are part of a wind turbine park. For example, the first wind turbine 22, the second wind turbine 24, and the third wind turbine 26 are located in proximity to each other such that the operations (such as direction, pitch, yaw, etc.) of one wind turbine may influence wind conditions (such as turbulence and wind speed) and operations at another wind turbine due to aerodynamic conditions and operations of the one wind turbine The shaded region 28, is indicative of an effect the first wind turbine 22, may have on the local atmospheric conditions at the second wind turbine 24. The shaded region 30, is indicative of an effect the second wind turbine 24, may have on the local atmospheric conditions at the third wind turbine 26. The shaded region 32, is indicative of an effect the third wind turbine 26, may have on the local atmospheric conditions downstream from the third wind turbine 26. The effect on the local atmospheric conditions is for example one or more of: turbulence, change in wind speed, and change in wind direction. The local atmospheric conditions may have an effect on the power generation of the second wind turbine 24 or the power generation of the third wind turbine 26. For example, the local atmospheric conditions associated with the operations of the first wind turbine 22 may decrease the power generation at the second wind turbine 24 and / or at the third wind turbine 26. The third wind turbine 26, may for example experience greater turbulence than the second wind turbine 24. The local atmospheric conditions may therefore be less optimal for power generation at the third wind turbine 26, compared to the local atmospheric conditions at the second wind turbine 24.

[0027] Fig.1 B shows a first wind turbine 22, a second wind turbine 24, and a third wind turbine 26 which are part of the same wind turbine park (such as the wind turbine park of Fig. 1 A). For example, the first wind turbine 22, the second wind turbine 24, and the third wind turbine 26 are located in proximity to each other such that the operations of wind turbine blades of one wind turbine, such as yaw angle of the first wind turbine 22 relative to the wind direction, pitch angle of the wind turbine blades, derated operation, and / or being out of commission, may influence turbulence and operations observed at another wind turbine. For example, by optimizing the operational setpoint values, e.g. using the disclosed method, the downstream path affected by the local atmospheric conditions 34, associated with the operations of a wind turbine, may be optimized to reduce a detrimental effect on the operations of another wind turbine. For example, the present disclosure may decrease the power generated by the first wind turbine 22, but may increase the power generated at the second wind turbine 24, and the third wind turbine 26. This may lead to a higher power generated by the wind turbine park as a whole.

[0028] It is an object of the present invention to provide faster convergence towards operational setpoint values, e.g. sufficiently fast in view of the time scale of the dynamics of the wind turbines to adjust to the varying wind conditions. This may lead to a warm start of a wind turbine on operational setpoints that are not available at the ready using interpolated setpoint values from a continuously or periodically collected matrix of previous optimized results reflecting relevant configurations. This is beneficial to achieve an improvement of the overall power generated by the wind turbine park as illustrated in Fig. 1B.

[0029] This disclosure provides, inter alia, one or more techniques for efficiently (such as obtaining faster) converging towards the operation setpoints for optimal power generation of wind turbines in a wind farm using an interpolated warm start. For example, the operational setpoint values is used for power generation based on optimization techniques (e.g. using sequential algorithms for cold-start, and linear-programming for convex problems, quadratic-programming for quadratic objective functions and even robust- / stochastic-programming for optimization under uncertainty).

[0030] It is an object of the present invention to improve the ability of converging faster to operational setpoint values of a wind turbine park(e.g. when the setpoint value is not available or is a zero value) that result in optimized power generation, in such a way that the computational and temporal resources needed to execute the operation are kept to a minimum. The present disclosure provides, inter alia, online optimization of power generation based on interpolated operation setpoints on centralized wind farm controllers, enabling consideration of the physical- and wind farm- operational states represented by wind turbine- and park- configuration parameters (such as hyperparameters).

[0031] The present disclosure addresses the challenge of the convergence speed of optimization for reacting to changing park atmospheric conditions. Convergence time increases linearly with the number of turbines, which can be on the order of minutes for larger farms without the disclosed technique. The proposed disclosure allows, inter alia, setting the actual wake steering in view of the actual wind conditions and reduces the delay in controlling the wake steering in view of the actual conditions. This may result in increased annual energy production and decreased wear due to unnecessary wake steering.

[0032] An approach to addressing this challenge may be to use offline precomputed lookup tables. However, precomputed tables assume that all wind turbines in a wind turbine park are fully functional and operational. The present disclosure advantageously enables obtaining real time operational setpoint values when a wind turbine has a turbine operational state that is e.g. derated, out for service, out for commission, or under other mechanical and / or operational constraints. The present disclosure advantageously provides to use the interpolated setpoint values in replacement of zero setpoint values from the partly populated matrix as disclosed herein as the interpolated setpoint values may result in an improved annual energy production and / or decreased wear due to unnecessary wake steering.

[0033] Fig 2 shows a diagram illustrating schematically an example wind turbine park 10 comprising an example central controller 16.

[0034] The term “wind turbine park” may be seen as a group of at least two wind turbines sharing infrastructure, such as infrastructure for power transmission to a power grid and / or communication infrastructure. In other words, the wind turbine park comprises a plurality of wind turbines being arranged at a geographical site. The wind turbines may be onshore wind turbine or offshore wind turbine, hereunder fixed-bottom and floating wind turbines.

[0035] In particular, the wind turbine park 10 includes a (first) wind turbine 2 and a number of other (or second) wind turbines 4, 6, 8 located on the site of the wind turbine park 10. Each wind turbine 2, 4, 6, 8 captures energy from the wind to generate power. Each wind turbine 2, 4, 6, 8 includes a tower, a nacelle atop the tower housing mechanical and / or electrical components, and a rotor with a plurality of rotor blades mounted thereto.

[0036] Each wind turbine 2, 4, 6, 8 may have a number of sensors associated therewith for measuring and monitoring various aspects related to current operating conditions of the respective wind turbine 2, 4, 6, 8. The sensors may include sensors for measuring aspects of the wind conditions in which the wind turbine is operating, the loads being experienced by different components of the wind turbine, and the movement, e.g., acceleration, of various components of the wind turbine. The sensors provide for example sensor data. The sensor data received from the sensors can be used to control operation of the respective wind turbine, e.g., to control the wind turbine to operate in an appropriate mode of operation, for instance to reduce wear and tear and / or to maximise energy production.

[0037] The disclosed method can be carried out by a controller. The controller may form part of a wind turbine 2, 4, 6, 8 or may be external to a wind turbine. The wind turbine 2, 4, 6, 8 may include a wind turbine controller. In some examples, the wind turbine controller is configured to carry out the method disclosed herein.

[0038] The controller may be an external controller, such as external to a wind turbine. The external controller may be seen as a central controller configured to control operations of the wind turbines of the park. An external controller is for example illustrated as a central controller 16 of Fig. 2. A wind turbine park 10, may have a central controller 16 configured to control operations of the wind turbines e.g. 2, 4, 6, 8 of the wind turbine park 10. In some examples, the central controller 16 is configured to carry out the method disclosed herein.

[0039] For example, the central controller 16 is located at or near to the wind park 10. For example, the central controller 16 is located remotely from the wind park 10, e.g., at or near to an operations centre where one or more technicians may be located.

[0040] It may be envisaged that the control of the wind turbines may be based on a distributed system including a plurality of central controllers where operations for control of the wind turbine(s) are distributed.

[0041] It may be envisaged that the control of the wind turbines may be based on a distributed system including a local controller handing a set of control operations, and the central controller handling another set of control operations.

[0042] The operations of the wind turbine park may for instance be controlled according to data obtained from the various sensors in the form of wind turbine parameters. The central controller 16 may be configured to obtain (e.g. via link 12) wind turbine parameters from one or more of the wind turbines 2, 4, 6, and 8 of the wind turbine park 10. For example, the wind turbine parameters obtained may comprise one or more of: a wind speed, a wind direction, wind turbine measurements, a turbulence intensity measurement, a wind turbine operational state, and a rotational speed of the rotor. The wind turbine parameters may further comprise one or more of: signals, settings, configurations, and operational states associated with operating a wind turbine, e.g. 2, 4, 6, and / or 8, and / or a wind turbine park 10.

[0043] For instance, the central controller 16 may be used for one or more of: adjust a pitch angle of the rotor blades (collectively and / or individually), adjust the yaw angle relative to the wind direction, and control a speed of a generator housed in the nacelle of the turbine. The central controller may be arranged to receive data indicative of measurements taken by the various sensors of the wind turbines 2, 4, 6, 8 over time.

[0044] The central controller 16 is arranged to receive data indicative of measurements taken by the various sensors of each wind turbine 2, 4, 6, 8 over time. This may be stored by the central controller 16, or a data repository and / or memory accessible by the controller 16. In particular, the received sensor data may be stored in the form of a partly populated matrix. The central controller 16 may be configured to obtain (e.g. via the method 100 disclosed herein) interpolated operational setpoint values. The interpolated operational setpoint values may be provided as operational setpoint values and / or the interpolated operational setpoint values may be provided as setpoint values stored in the partly populated matrix for future use.

[0045] The central controller 16 may be configured to provide interpolated operational setpoint values to one or more wind turbines 2, 4, 6, 8 of the wind turbine park 10. The interpolated operational setpoint values may help optimizing the annual energy generation of the wind turbine park 10, by providing operational setpoint values which are associated with a ‘warm start’. A warm start may be associated with interpolated operational setpoint values, such as one or more of: pitch angle, yaw offset relative to the wind direction, and speed of the rotor, etc., that maximize the overall energy production of the wind turbine park 10.

[0046] In some examples, the central controller 16 is configured to act as an electronic device for controlling one or more wind turbines of a wind turbine park, such as the controller disclosed herein. The central controller 16 of the wind turbine park 10 may be configured to act autonomously.

[0047] Fig. 3 shows a flow diagram of an exemplary method 100 for controlling wind turbines of a wind turbine park, according to the disclosure. The method 100 may be performed by a controller for control of a wind turbine park, such as the controller for control of a wind turbine park disclosed herein, such as the controller 300 of Fig. 4, the central controller 16 of Fig. 2, and / or a wind turbine controller (discussed in Fig. 2).

[0048] The method 100 comprises obtaining (such as receiving, and / or retrieving, and / or generating) S102 wind turbine parameters for a first wind turbine of the one or more wind turbines. The wind turbine parameters may be seen as parameters associated with a wind turbine or a wind turbine park. For example, the wind turbine parameters can comprise one or more of: a wind speed, a wind direction, wind turbine measurements, a turbulence intensity measurement, a wind turbine operational state, a power grid information, a rotational speed of the rotor, and a wind turbine identifier.

[0049] In one or more example methods, the wind turbine parameters comprise one or more of: wind speed value, wind direction value, wind turbine measurements, turbulence intensity measurements, a wind turbine operational state, and power grid information. The wind turbine parameters may be seen as parameters obtained by receiving, from a wind detection module, a wind speed value and a wind direction value. Obtaining S102 the wind turbine parameters for a first wind turbine for example comprises obtaining one or more of: a current wind speed value, a current wind direction, a current wind turbine measurement (such as from one or more sensors of the wind turbine and / or of the wind turbine park), a current turbulence intensity, a current wind turbine operational state, and a current power grid information. A turbulence intensity measurement may be seen as a measurement parameter indicative of turbulence intensity, such as local turbulence intensity at a given wind turbine. For example, the turbulence intensity measurement can be provided by a sensor of a wind turbine to detect turbulence intensity and / or by a sensor to detect turbulence intensity placed near a wind turbine. The turbulence intensity measurement may be obtained by a sensor and / or a technique providing data indicative of turbulence intensity at a wind turbine upstream from a wind turbine or downstream from a wind turbine.

[0050] A wind turbine operational state may be indicative of the operational state of a wind turbine, such as a state associated with the conditions of a wind turbine, such as current conditions. For example, a wind turbine operational state may be e.g.: operating, derated, partially derated, out of commission. A wind turbine operational state may be associated with the power generation of a wind turbine. Power grid information may be seen as data indicative of the power grid, such as load on the power grid, e.g. “in production”, “operating”, a price information, a demand information, and the presence or absence of a “grid” event (such as a disturbance or change in electrical grid that affects operation of wind turbines), etc.

[0051] The wind turbine parameters may comprise one or more of: signals, settings, wind turbine configurations, and operational states relevant for operating the wind turbine.

[0052] Obtaining S102 the wind turbine parameters for a first wind turbine for example comprises receiving, from a wind detection module, a wind speed value and a wind direction value; and optionally calculating, for the wind turbine park, a wind speed value and a wind direction value, wherein the calculating comprises real-time calculations and / or predictive calculations.

[0053] The method 100 comprises determining S104, based on the wind turbine parameters, operational setpoint values for the first wind turbine. The operational setpoint (or sometimes setpoint or set point) values may be seen as values associated with (e.g. used for) operating a wind turbine or a wind turbine park. The term “operational setpoint values” and “operational setpoints” can be used interchangeably in one or more examples.

[0054] In one or more example methods, the operational set point values are indicative of a yaw angle and / or a pitch angle of one or more blades of the first wind turbine. The operational setpoint values may for example comprise one or more of: a yaw offset value, and a pitch offset value. A yaw offset value may for example refer to the orientation / direction of the wind turbine relative to the wind direction. A pitch offset may for example refer to the offset angle of each blade of the wind turbine. The operational setpoint values may be seen as values controlling wind turbines in a wind turbine park, and may for example be used to optimize overall power generation.

[0055] In one or more examples, S104 can comprise determining operational setpoint guess values or initial operational setpoint values, e.g. by querying a partly populated matrix.

[0056] In one or more example methods, determining S104 the operational setpoint values comprises obtaining S104A operational setpoints values, e.g. by querying S104AA, based on the wind turbine parameters, a partly populated matrix for the one or more wind turbines (or a partly populated representation of the operational setpoint values for one or more wind turbines). In one or more example methods, determining S104 the operational setpoint values comprises querying S104AA, based on the wind turbine parameters, a partly populated matrix for the one or more wind turbines. The operational setpoint values obtained may be seen as initial operational setpoint values.

[0057] A partly populated matrix (or partly populated representation) may be seen as a matrix (or representation) comprising one or more matrix elements, where some (e.g. less than all) matrix elements are not populated, e.g. empty or null. For example, a partly populated matrix may contain operational setpoint values for one or more types of wind turbine parameters. The partly populated matrix comprises operational setpoint values associated with respective wind turbine parameters, such as respective wind speed values and wind direction values. A part of the operational setpoint values of the partly populated matrix comprises zero values. In other words, the partly populated matrix comprises for example operational setpoint values associated with respective wind speed values and wind direction values which are zero values and non-zero values. A zero value may also be seen as a null value and / or an empty value. In an example a partly populated matrix may comprise zero operational setpoint values for one or more wind turbine parameters. In other words, the partly populated matrix can be seen e.g. a sparsely populated matrix of operational setpoint values, and / or a sparse matrix of operational setpoint values. The operational setpoint values in a partly populated matrix may be constructed using calculated operational setpoint values based on wind turbine parameters, such as wind speed parameters^ partly populated matrix can be generated through one or more approaches, such as one or more of: cluster-algorithms, and kernel density estimations. The approaches disclosed may be advantageous due to cache-agnosticism compared to approaches that solely reduces resolution per configuration parameter. The partly populated matrix may be stored as a look up table.

[0058] Determining the operational setpoint values based on the wind turbine parameters may comprise collecting and / or storing, in the partly populated matrix, optimized operation setpoints for corresponding wind turbine parameters, such as operational configuration hyperparameters.

[0059] The method 100 comprises, when the obtained operational setpoint values are zero values (such as null values, not populated or not specified values), interpolating S104B the obtained operational setpoint values to obtain interpolated operational setpoint values as substitutes for the zero values. In other word words, for each of the obtained operational setpoint values that are zero values, the obtained operational setpoint values which are zero values are replaced by interpolating based on non-zero values. An interpolated operational setpoint value may be seen as an operational setpoint value that is obtained by interpolation because the initial operational setpoint value from the query of the partly populated matrix is null or zero value. The interpolated operational setpoint values may comprise values for a wind turbine indicating one or more of: a wind speed, a wind direction, wind turbine measurements, a turbulence intensity measurement, a wind turbine operational state, a power grid information, and a rotational speed of the rotor. The interpolated operational setpoint values may be obtained interpolating (e.g. calculating, deriving) from one or more of: operational setpoint values for other wind turbine parameters (such as neighbouring operational setpoint values), current wind turbine parameter values, and historical data sets.

[0060] The method 100 comprises optimizing S108 power generated by the wind turbine park using the interpolated operational setpoint values as initial operational setpoint values, e.g. for maximizing the power generated by the wind turbine park, e.g. under mechanical and / or operational constraints. Initial operational setpoint values may be seen as operational setpoint values obtained by interpolation and provided to the partly populated matrix at power generation initiated by the wind turbine and / or wind turbine park, for given wind turbine parameters. The initial operational setpoint values are for example zero values of the partly populated matrix which then get populated by interpolation and used to optimize the power generated by the wind turbine park. The operational setpoint values (e.g. initial non-zero and / or interpolated operational setpoint values) for a wind turbine and / or wind turbine park may comprise one or more of: yaw angle, yaw offset relative to the wind direction, derating, and pitch angle. Operational setpoint values may be seen as parameters for control of a wind turbine or a wind turbine park at start (e.g. allowing warm start instead of using zero values), that is assisting in controlling power generation performance of the wind turbine or wind turbine park.

[0061] For example, saving previously optimized operation setpoint values (e.g. resulting from previous optimization(s)) under the respective operational configuration hyperparameters in the partly populated matrix progressively gets the partly populated matrix more and more populated, e.g. a continuously populated matrix. This allows retrieving operational setpoint values up for future similar wind turbine parameters (such as configuration hyperparameters; current operational state, turbine measurements, turbine operational state, power grid information, etc). The accuracy and gain in the setpoint interpolation may be increased. An advantage of the present disclosure is the reduced required storage capacity over a fully populated matrix as well as faster convergence towards nonzero operational setpoint values used for optimizing the power generation (instead of starting from zero valued operational setpoint values).

[0062] The interpolated operational setpoint values can be used as starting values and / or starting guess values for the optimization process that e.g. maximizes the power generated by the wind turbine park, e.g. under mechanical and / or operational constraints. In other words, for example, the optimization process results in optimized operational setpoint values, that are used for controlling the wind turbines to achieve a maximizing of power generation under constraints. Mechanical and / or operational constraints may be associated with conditions that prevent one or more wind turbines in a wind turbine park from performing at maximum capacity. Mechanical and / or operational constraints for example comprise one or more of: structural constraints to maintain the integrity of the structure of the wind turbine, limitations associated with the one or more wind turbines being in a derated state, limitations associated with the one or more wind turbines being out of operation, current wind direction exceeding maximum yaw angle, total yaw wear, maximum yaw actuation time, and one or more wind turbines operating under other mechanical limitations.

[0063] The method 100 comprises controlling S110, based on the optimized operational setpoint values (e.g. the operational setpoint values resulting S108), the first wind turbine of the wind turbine park. For example, controlling the first wind turbine can include controlling one or more operations: wind turbine blade operations, such as yaw, pitch, speed, etc. For example, controlling S110 the first wind turbine based on the optimized operational setpoint values comprises generating control data based on the optimized operational setpoint values, and optionally transmitting the control data to a wind turbine controller, wherein the control data causes the wind turbine controller to operate according to the optimized operational setpoint values.

[0064] In one or more example methods, the method comprises generating S103 the partly populated matrix based on historical data set. In one or more example methods, the historical data set comprises one or more of historical wind direction values, historical wind speed values, and historical operational setpoint values. A historical data set may be seen as a data set comprising previously optimized operational setpoint values and previously recorded wind turbine parameters, for the wind turbine and / or the wind turbine park. The historical data set may comprise one or more of: historical wind direction values, historical wind speed values, historical rotational speed of the rotor, and historical operational setpoints, including previously optimized operational setpoint values.

[0065] Historical data set may be associated with data set that has been recorded and stored at a point earlier in time.

[0066] In one or more example methods, generating S103 the partly populated matrix comprises applying S103A an estimation technique to the historical data set. The estimation technique comprises one or more of: a clustering technique, and a kernel density-based estimation. An estimation technique may be seen as a technique to obtain estimated values by performing calculations and / or prediction and / or statistical derivations based on existing values. For example, an estimation technique may be a wind turbine type or a wind turbine park type.

[0067] A clustering technique may be seen as a technique grouping based on similarity. A clustering technique may be seen as an unsupervised learning technique that groups similar data points into clusters, creating a hierarchy of clusters, wherein the clusters may be distinct from each other. For example, a clustering technique may be used to extrapolate or interpolate from the historical data set, to obtain setpoint values associated with the historical data set. In other words, a clustering technique may be used to obtain estimated values to be stored in partly populated matrix, such as a partly populated matrix, such as a partly populated matrix for operational setpoint values for a wind turbine.

[0068] A kernel density based estimation technique may be seen as a technique for estimating the probability density function of a random variable (e.g. being the operational setpoint values) based on kernels as weights, historical values. In other words, a kernel density based estimation technique may be seen as a non-parametric estimation method to obtain a list of values from a set of discrete values. Kernel density based estimation techniques may for example be used to provide data for the partly populated matrix, such as operational setpoint values for a wind turbine. In one or more example methods, generating S103 the partly populated matrix comprises storing S103B, in the partly populated matrix, estimation results, e.g. obtained from applying the estimation technique to the historical data set. For example, the estimation results may be stored in the partly populated matrix, e.g. in the memory of the controller disclosed herein, and / or remotely from the controller in a remote database. For example, the estimation results are a set of size smaller than the historical data set.

[0069] In one or more example methods, interpolating S104B the obtained (e.g. initial, and / or guessed) operational setpoint values comprises applying S104BA one or more of: a multidimensional interpolation technique, a parametric clustering technique, a parametric regression technique, a non-parametric regression technique, and a non-parametric clustering technique. For example, the multidimensional interpolation techniques comprise one or more of: linear interpolation, spline interpolation, polynomial interpolation, and natural neighbour interpolation. Multidimensional interpolation techniques may be associated with computational model used to obtain new values based on existing data. Multidimensional interpolation techniques may be used for interpolating operational setpoint values to find values for the zero valued operational setpoint values of the partly populated matrix. Examples of multidimensional interpolation techniques applicable herein comprise one or more of: surrogate modelling (such as neural networks, kriging, Support Vector Machines, Polynomial Response Surfaces, Radial Basis Function, and / or Gradient-Enhanced Kriging), Bayesian Networks, and Space Mapping. Surrogate modelling can be seen as a simplified approximation of a complex system or process that mimics the input-output behaviour (wind turbine parameters-operational setpoints behaviour) while being computationally cheaper to evaluate. Bayesian networks can be seen as probabilistic graphical models that represent a set of variables and their conditional dependencies, e.g. using a directed acyclic graph. Space Mapping can be seen as an optimization technique involving a fine model and a coarse model as well as a mapping between both. For example, Space Mapping uses the coarse model to gain information about the fine model, directing most evaluations to the faster coarse model.

[0070] For example, the parametric clustering technique comprises one or more of.: K-Means Clustering methods, Gaussian Mixture Models (GMM), or Expectation-maximization algorithms. For example, a parametric clustering technique may be used for obtaining new values based on existing values. A parametric clustering technique may be used for e.g. obtaining initial operational setpoint values for a wind turbine park, by interpolating operational setpoint values. The parametric regression technique comprises e.g.: polynomial and / or linear regression model(s), logistic regression model(s), and / or neural networks.

[0071] The non-parametric regression technique comprises e.g.: kernel regression, local regression, multivariate adaptive regression splines, and / or neural networks.

[0072] A non-parametric clustering technique considers for example the number of clusters unknown as opposed to parametric clustering, where the number of clusters are considered known a prior. Examples of non-parametric clustering technique include one or more of: mean shift clustering, Dirichlet Process Mixture Models (DPMM), affinity propagation, spectral clustering, and Density-Based Spatial Clustering of Applications with Noise (DBSCAN). For example, mean shift clustering may be applied as an unsupervised clustering algorithm that discovers dense regions in a data set of operational setpoint values by iteratively shifting data points towards areas of higher density for given wind turbine parameters. DPMM can be seen as a class of Bayesian non-parametric models used for clustering and density estimation. For example, DPMMs extend finite mixture models by allowing an infinite number of components (such as operational setpoints), automatically inferring the appropriate number of clusters from the operational setpoints data. Affinity propagation can be seen as a clustering algorithm that automatically determines the number of clusters based on the operational setpoints of the partly populated matrix and identifies exemplars (representative operational setpoints) within a dataset of operational setpoints. DBSCAN may be seen as an unsupervised clustering model that groups densely packed operational setpoints into clusters while identifying outliers as noise.

[0073] In one or more example methods, optimizing S108 the power generated by the wind turbine park using the interpolated operational setpoint values as initial operational setpoint values for maximizing (or increasing) power generated by the wind turbine park under mechanical and / or operational constraints comprises applying S108A one or more of: a sequential optimization technique for maximizing (or increasing) power generated by the wind turbine park under the mechanical and / or operational constraints, a quadratic objective function for maximizing (or increasing) power generated by the wind turbine park, and a cost function based on maximizing (or increasing) power generated by the wind turbine park under the mechanical and / or operational constraints. The sequential optimization technique may be seen as an iterative approach used to solve complex power system optimization problems. The sequential optimization technique for example breaks down the optimization problem into a sequence of simpler subproblems that are solved iteratively to converge towards an increased or maximized (local or global maxima) power generated by the wind turbine park under the mechanical and / or operational constraints.

[0074] A quadratic objective function may be seen as an example of sequential optimization. For example, the quadratic objective function handles quadratic objective functions and linear constraints efficiently for maximizing power generation while minimizing the computational cost.

[0075] A cost function may be seen as a function that minimizes the total cost of power generation while meeting the mechanical and / or operational constraints. The cost function may for example be used to maximize the overall energy production of the wind turbine park, while minimizing the wear or tear on the wind turbines.

[0076] In one or more example methods, the method 100 comprises storing S112 the interpolated operational setpoint values in the partly populated matrix. For example, the interpolated operational setpoint values are stored in the partly populated matrix, which progressively gets more populated as zero valued operational setpoint values are replaced by the interpolated operational setpoint values generated and stored. For example, the interpolated operational setpoint values and the wind turbine parameters (e.g. input-output pairs) are stored in the partly populated matrix.

[0077] In one or more example methods, the wind turbine parameters are configuration hyperparameters indicative of one or more conditions of operation of the one or more wind turbines. Configuration hyperparameters may be seen as parameters of configuration of a wind turbine or wind turbine park. Configuration hyperparameters for example include wind speed, wind direction, current wind speed and / or current wind direction. Configuration hyperparameters may be seen as parameters that configure a wind turbine or a wind turbine park, e.g. in a way to maximize overall power generation. In an example where the disclosed technique is applied, a partly populated matrix can be made by decreasing the resolution on the wind turbine parameters. For example, the continuously populated matrix is in a partially populated state, currently in the process of getting populated, with the entries “nan” being operation setpoint values yet to be found, such as the zero valued operational setpoint values. In the example table below, the values are reflecting a collected yaw offset table (operation set point value example) for a single turbine for a select range of wind speed (WSP) and wind direction (WDIR) in a 2D table,

[0078] Table A:

[0079] For example, an operational setpoint value is not available or zero valued in table A with wind speed and wind direction of 9m / s and 255° . An initial non-zero operational setpoint value is provided using the disclosed interpolation technique of -12.842°. After calculating the optimized or optimal operational setpoint value of -14.4, the setpoint value for at 9m / s and 255° is appended to Table A to -14.4 as provided below, thereby illustrating the process of continuous population of the partly populated matrix: The collected set points values can be appended with further turbine configuration hyperparameters detailing the configuration, for example: current operational state, turbine measurements, turbine operational state, power grid information, etc. For storage and computational advantages, the partly populated (e.g. sparse) matrix can be maintained as sparse by cluster-algorithms, kernel density estimations.

[0080] For example, a wind speed and a wind direction of 8.5m / s and 257.5° is found by interpolation for given wind turbine parameters, such as configuration hyperparameters. For example, there is the possibility to interpolate the table, as this particular part of the continuously populated matrix is populated.

[0081] The interpolation in this example is 2D-linear, weighing all four values equally, resulting in 5.1215 for the particular turbine for which this table represents the optimized yaw offsets (operation setpoint value), under the found conditions (configuration hyperparameters). For example, this process is done for every turbine in the wind farm, under the corresponding configuration hyperparameters. For example, doing the interpolation can comprise any multidimensional interpolation algorithm, where a choice is made depending on applicational value for the particular control setpoint.

[0082] Fig. 4 shows a block diagram of an exemplary controller 300 according to the disclosure. The controller 300 comprises memory circuitry 301, processor circuitry 302, and an interface 303. The controller 300 is configured to perform any of the methods disclosed in Fig. 3. In other words, the controller 300 is configured for controlling one or more wind turbines of a wind turbine park. For example, the controller 300 may be a controller of a wind turbine, such as an internal controller of the wind turbine. For example, the controller may be a device remote from the wind turbine. For example, the controller may be an external controller of the wind turbine. A controller for control of a wind turbine park, the controller comprises a controller configured to perform the method disclosed herein. The controller is configured to control a wind turbine park comprising a controller as disclosed herein. The controller 300 is configured to obtain (e.g., via memory circuitry 301, processor circuitry 302 and / or interface 303) wind turbine parameters for a first wind turbine of the one or more wind turbines.

[0083] The controller 300 is configured to determine (e.g., via processor circuitry 302), based on the wind turbine parameters, operational setpoint values for the first wind turbine.

[0084] The controller 300 is configured to obtain (e.g., via memory circuitry 301 and / or processor circuitry 302) operational setpoint values, e.g. by querying, based on the wind turbine parameters, a partly populated matrix for the one or more wind turbines. The partly populated matrix comprises operational setpoint values associated with respective wind speed, and wind direction values. The controller 300 (e.g., via memory circuitry 301 and / or processor circuitry 302) is configured to obtain a partly populated matrix. Optionally, a part of the operational setpoint values comprises zero values.

[0085] The controller 300 is configured to interpolate (e.g., via processor circuitry 302) the obtained operational setpoint values, when the obtained operational setpoint values are zero values.

[0086] The controller 300 is configured to obtain (e.g., via memory circuitry 301 and / or processor circuitry 302) interpolated operational setpoint values as substitutes for the zero values.

[0087] The controller 300 is configured to optimize (e.g., via memory circuitry 301 and / or processor circuitry 302) power generated by a wind turbine park by using the interpolated operational setpoint values, e.g. for maximizing power generated by the wind turbine park under mechanical and / or operational constraints.

[0088] The controller 300 is configured to control (e.g., via memory circuitry 301 , processor circuitry 302, and / or interface 303), based on the optimized (e.g. results of optimization based on interpolated operational setpoint values) operational setpoint values, the first wind turbine of the wind turbine park.

[0089] The controller 300 is configured to generate (e.g., via memory circuitry 301 and / or processor circuitry 302), a partly populated matrix based on historical data sets comprising one or more of historical wind direction values, historical wind speed values, and historical operational setpoint values. The controller 300 is configured to generate (e.g., via memory circuitry 301 and / or processor circuitry 302), a partly populated matrix by applying an estimation technique to a historical dataset, wherein the estimation technique comprises one or more of: a clustering technique and a kernel-based estimation.

[0090] The controller 300 is configured to generate (e.g., via memory circuitry 301 and / or processor circuitry 302), a partly populated matrix by storing the estimation results.

[0091] The controller 300 is configured to interpolate (e.g., via memory circuitry 301 and / or processor circuitry 302) obtained operational setpoint values by applying one or more of: a multidimensional interpolation technique, a parametric clustering technique, a parametric regression technique, a non-parametric regression technique, and a nonparametric clustering technique.

[0092] The controller 300 is configured to optimize (e.g., via memory circuitry 301 and / or processor circuitry 302) the power generated by the wind turbine park using the interpolated operational setpoint values as initial operational setpoint values, e.g. for maximizing power generated by the wind turbine park under mechanical and / or operational constraints comprises one or more of: a sequential optimization technique for maximizing power generated by the wind turbine park under the mechanical and / or operational constraints, a quadratic objective function for maximizing power generated by the wind turbine park, and a cost function based on maximizing power generated by the wind turbine park under the mechanical and / or operational constraints.

[0093] The controller 300 is configured to store (e.g., via memory circuitry 301 and / or processor circuitry 302) the interpolated operational setpoint values in the partly populated matrix.

[0094] The processor circuitry 302 is optionally configured to perform any of the operations disclosed in Fig. 3 (such as any one or more of: S102, S103, S103A, S103B, S104, S104A, S104B, S104BA, S104BB, S104AA, S108, S108A, S110, S112). The operations of the controller 300 may be embodied in the form of executable logic routines (e.g., lines of code, software programs, etc.) that are stored on a non-transitory computer readable medium (e.g., the memory circuitry 301) and are executed by the processor circuitry 302).

[0095] Furthermore, the operations of the controller 300 may be considered a method that the controller 300 is configured to carry out. Also, while the described functions and operations may be implemented in software, such functionality may as well be carried out via dedicated hardware or firmware, or some combination of hardware, firmware and / or software.

[0096] The memory circuitry 301 may be one or more of a buffer, a flash memory, a hard drive, a removable media, a volatile memory, a non-volatile memory, a random access memory (RAM), or other suitable device. In a typical arrangement, the memory circuitry 301 may include a non-volatile memory for long term data storage and a volatile memory that functions as system memory for the processor circuitry 302. The memory circuitry 301 may exchange data with the processor circuitry 302 over a data bus. Control lines and an address bus between the memory circuitry 301 and the processor circuitry 302 also may be present (not shown in Fig. 4). The memory circuitry 301 is considered a non-transitory computer readable medium.

[0097] It should further be noted that any reference signs do not limit the scope of the claims, that the exemplary embodiments may be implemented at least in part by means of both hardware and software, and that several "means", "units" or "devices" may be represented by the same item of hardware.

[0098] The various exemplary methods, devices, nodes, and systems described herein are described in the general context of method steps or processes, which may be implemented in one aspect by a computer program product, embodied in a computer- readable medium, including computer-executable instructions, such as program code, executed by computers in networked environments. A computer-readable medium may include removable and non-removable storage devices including, but not limited to, Read Only Memory (ROM), Random Access Memory (RAM), compact discs (CDs), digital versatile discs (DVD), etc. Generally, program circuitries may include routines, programs, objects, components, data structures, etc. that perform specified tasks or implement specific abstract data types. Computer-executable instructions, associated data structures, and program circuitries represent examples of program code for executing steps of the methods disclosed herein. The particular sequence of such executable instructions or associated data structures represents examples of corresponding acts for implementing the functions described in such steps or processes.

[0099] A function may be characterizing a relation between an input and an output, such as mathematical relation, a database relation, a hardware relation, logical relation, and / or other suitable relations. Although features have been shown and described, it will be understood that they are not intended to limit the claimed disclosure, and it will be made obvious to those skilled in the art that various changes and modifications may be made without departing from the scope of the claimed disclosure. The specification and drawings are, accordingly, to be regarded in an illustrative rather than restrictive sense. The claimed disclosure is intended to cover all alternatives, modifications, and equivalents.

Claims

CLAIMS1. A method of controlling one or more wind turbines of a wind turbine park, the method comprising: obtaining wind turbine parameters for a first wind turbine of the one or more wind turbines; determining, based on the wind turbine parameters, operational setpoint values for the first wind turbine, wherein determining the operational setpoint values based on the wind turbine parameters comprises:- obtaining operational setpoints values by querying, based on the wind turbine parameters, a partly populated matrix for the one or more wind turbines, wherein the partly populated matrix comprises operational setpoint values associated with respective wind speed values and wind direction values, wherein a part of operational setpoint values comprises zero values; and- when the obtained operational setpoint values are zero values, interpolating the obtained operational setpoint values to obtain interpolated operational setpoint values as substitutes for the zero values, optimizing power generated by the wind turbine park using the interpolated operational setpoint values as initial operational setpoint values for maximizing power generated by the wind turbine park under mechanical and / or operational constraints; and controlling, based on the optimized operational setpoint values, the first wind turbine of the wind turbine park.

2. The method according to claim 1 , wherein the operational set point values are indicative of a yaw angle and / or a pitch angle of one or more blades of the first wind turbine.

3. The method of any of the previous claims, the method comprising generating the partly populated matrix based on historical data set comprising one or more of historical wind direction values, historical wind speed values, historical operational setpoint values.

4. The method according to claim 3, wherein generating the partly populated matrix comprises: applying an estimation technique to the historical data set, wherein the estimation technique comprise one or more of: a clustering technique and a kernel density-based estimation; and storing, in the partly populated matrix, estimation results.

5. The method according to any of the previous claims, wherein interpolating the obtained operational setpoint values comprises applying one or more of: a multidimensional interpolation technique, a parametric clustering technique, a parametric regression technique, a non-parametric regression technique, and a non-parametric clustering technique.

6. The method according to any of the previous claims, wherein optimizing the power generated by the wind turbine park using the interpolated operational setpoint values as initial operational setpoint values for maximizing power generated by the wind turbine park under mechanical and / or operational constraints comprises applying one or more of: a sequential optimization technique for maximizing power generated by the wind turbine park under the mechanical and / or operational constraints, a quadratic objective function for maximizing power generated by the wind turbine park, and a cost function based on maximizing power generated by the wind turbine park under the mechanical and / or operational constraints.

7. The method according to any of the previous claims, wherein the wind turbine parameters are configuration hyperparameters indicative of one or more conditions of operation of the one or more wind turbines.

8. The method according to any of the previous claims, wherein the wind turbine parameters comprise one or more of: wind speed value, wind direction value, windturbine measurements, turbulence intensity measurements, a wind turbine operational state, and power grid information.

9. The method according to any of the previous claims, the method comprising storing the interpolated operational setpoint values in the partly populated matrix.

10. A controller for control of a wind turbine park, wherein the controller comprises a control unit configured to perform the method according to any of claims 1-9.

11. A wind turbine park comprising a controller according to claim 10.

12. A computer readable storage medium storing one or more programs, the one or more programs comprising instructions, which when executed by an electronic device cause the electronic device to perform any of the methods of claims 1-9.