Demand for renewable energy is growing. Wind energy is at the forefront of renewable energy sources. A continuing challenge for renewable energy is competing with other energy sources in terms of cost and reliability. A consideration for wind turbines that harvest energy from wind is the efficiency of operation. Another challenge is locating wind turbines in places that have sufficient wind. The recent development of floating offshore wind turbines (FOWTs) has provided exciting opportunities and challenges. One challenge facing the control of FOWTs is the problem of instability, or “negative damping,” when using blade pitch feedback to control generator speed. This closed-loop instability can be attributed to non-minimum phase zeros in the transfer function from blade pitch to generator speed. Standard approaches to improving stability and performance include robust tuning of control gains and introducing multiple feedback loops to respond to platform motion. Combining these approaches is nontrivial because multiple control loops complicate the impact of coupling in the system dynamics. The single-loop approach to analyzing stability robustness neglects inter-loop coupling, while a simplistic multi-loop approach is highly sensitive to dimensional scaling and overestimates the robustness of the single-loop controller.
The present invention is directed to systems and methods for stabilizing a floating offshore wind turbine (FOWT). A controller may include measurement equipment for measuring wind speed relative to the FOWT and a pitch angle of a tower of the FOWT, a blade pitch actuator configured to adjust a blade pitch of blades of the FOWT, and a torque resistance actuator configured to adjust torque resistance of the FOWT. Additionally or alternatively, the controller may also estimate the wind speed and pitch angle of a tower or platform based on rotor speed measurements and a model of the wind turbine dynamics. The controller receives the wind speed and the pitch angle from the measurement equipment or estimator as control input and, based upon the control input, adjusts at least one of the blade pitch angle using the blade pitch actuator and the torque resistance using the torque resistance actuator to improve stability of the FOWT. The controller may execute a combined gain-scheduled proportional-integral (PI) control and platform feedback (PF) control, or a single-input, single output (SISO) proportional-integral control loop and a set of multi-input, multi-output control loops.
Further embodiments of the present disclosure are directed to a FOWT, including a base, a tower, and a nacelle coupled to the tower and housing wind turbine components. The FOWT also includes blades coupled to the wind turbine components within the nacelle, the blades protruding from the nacelle. The wind turbine components include an adjustable torque resistance component that adjusts a torque resistance of the wind turbine components. The FOWT also includes blade pitch actuators coupled to the blades that adjust a pitch of the blades, measurement equipment configured to measure wind speed relative to the FOWT or estimation equipment configured to estimate the wind speed relative to the FOWT, and a position monitor configured to measure or estimate a pitch angle of the FOWT defined as an angle relative to vertical and generally aligned with the tower. The FOWT also includes a controller configured to receive the wind speed and platform pitch angle of the FOWT as inputs, the controller being configured to calculate adjustments to at least one of the blade pitch using the blade pitch actuators, and a torque resistance using the torque resistance component.
Still further embodiments of the present disclosure are directed to a system for stabilizing a FOWT. The system may estimate a wind speed using convention methods or may include a wind speed sensor for sensing wind speed in an environment around the FOWT. Similarly, the system may estimate a position of the FOWT or include measurement equipment to measure a position sensor for sensing a position of the FOWT. The FOWT has a base that sits in a body of water, a tower extending vertically from the base, a nacelle, rotor, and blades coupled to the rotor such that wind moving past the blades causes the blades to rotate the rotor. The turbine generates power therefrom. The FOWT also includes blade pitch actuators that adjust a pitch of the blades. Increasing the pitch of the blades decreases wind capture and decreasing the pitch of the blades increases wind capture. The FOWT also includes a resistance torque actuator that adjusts resistance torque. Increasing resistance torque causes the turbine to generate more power and more resistance to the aerodynamic torque, and decreasing resistance torque causes the turbine to generate less power and less resistance to the aerodynamic torque. The FOWT also includes a controller configured to receive as inputs the wind speed and the position of the FOWT to adjust the pitch of the blades using the blade pitch actuator, and to adjust the resistance torque in response to the inputs.
This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter.
Additional features and advantages of the invention will be set forth in the description which follows, and in part will be obvious from the description, or may be learned by the practice of the invention. The features and advantages of the invention may be realized and obtained by means of the instruments and combinations particularly pointed out in the appended claims. These and other features of the present invention will become more fully apparent from the following description and appended claims or may be learned by the practice of the invention as set forth hereinafter.
In order to describe the manner in which the above-recited and other advantages and features of the invention can be obtained, a more particular description of the invention briefly described above will be rendered by reference to specific implementations thereof which are illustrated in the appended drawings. Understanding that these drawings depict only typical implementations of the invention and are not therefore to be considered to be limiting of its scope, the invention will be described and explained with additional specificity and detail through the use of the accompanying drawings in which:
The present disclosure is directed to floating offshore wind turbines (FOWTs) and specifically systems and methods for controlling FOWTs in the environment in which they are located. There are challenges to operating any floating structure, which are exacerbated by the nature of a FOWT that is designed and intended to experience high winds. The FOWTs are floating structures that are free to move with the waves and motion of the ocean in which they are located. There are many movements that are experienced by the FOWTs including the pitch of the FOWT, defined as the forward and back motion of the FOWT in a direction generally parallel with the flow of wind. Instability in FOWTs experiencing high winds and without being anchored to a solid structure poses a problem for the efficiency and, in extreme cases, failure of the FOWT.
The present disclosure is directed to a sensitivity representation that separates some of the natural FOWT dynamic coupling into a parallel feedback loop in the sensitivity function loop to address both of these concerns. The modified robustness measure is used with a simplified linear FOWT model to optimize scheduled multi-loop control parameters in an automated tuning procedure. This controller is implemented for the 10-MW Ultraflexible Smart FLoating Offshore Wind Turbine (USFLOWT) and compared against conventional single- and multi-loop controllers tuned using frequency-domain analysis and high-fidelity OpenFAST simulations. The multi-loop robust controller shows the highest overall performance in generator speed regulation and tower load reduction, though consideration of power quality, actuator usage, and other structural loading leads to additional trade-offs.
The following abbreviations are used throughout this disclosure:
Floating offshore wind turbines (FOWTs) represent a significant step forward in the future growth and upscaling of utility-scale wind energy. In addition to modifications to the aerodynamic and structural design process from that of land-based wind turbines (and the need for hydrodynamic design), the control approaches for maximizing power and safety must adapt to be effective in a floating offshore environment, with the ultimate design objective being a reduction in levelized cost of energy (LCOE), the total cost per unit of energy produced. The additional degrees-of-freedom introduced by the floating platform present a particular challenge for the control system. For a horizontal axis wind turbine (HAWT), blade-pitch control at above-rated wind speeds affects the rotor thrust and induces platform fore-aft translational and rotational motion through the lever arm of the tower. Current trends in the deployment of HAWTs indicate that longer blades and taller towers are being utilized further exacerbating the effects of rotor thrust.
In addition to the expected increase in structural loading due to platform motion, the interplay between the aerodynamic torque and thrust sensitivities to blade pitch leads to non-minimum phase zeros (NMPZs). A FOWT system with NMPZs can become closed-loop unstable when employing a controller designed for a land-based HAWT. The presence of NMPZs can reduce a feedback system's margin of stability, restricting the allowable range of stabilizing feedback gains. For typical turbine designs, NMPZs are usually present at wind speeds just above vrated and disappear at higher wind speeds. While nonlinear analysis suggests that linearized closed-loop instability may not necessarily lead to catastrophic failure of the FOWT system, non-decaying oscillations induced by this instability can cause high structural loading and poor overall performance.
Wind turbines typically use gain-scheduled proportional-integral (PI) control to regulate generator speed at high winds. The simplest approach to avoiding instability without structurally modifying the conventional baseline controller is to detune the control gains. A common rule of thumb is to tune a controller such that the closed-loop response of the generator speed mode in isolation has a natural frequency below the platform's dominant fore-aft resonant frequency. This approach is convenient because the baseline PI controller is often tuned to target a particular natural frequency ωpi and damping ratio ζpi, as in the Reference Open-Source Controller (ROSCO) toolbox. Within this PI tuning framework, the simple detuning approach need only reduce ωpi to be below the platform frequency ωptfm. While easy to implement, this simple detuning may not be sufficient to restore stability at wind speeds close to vrated for platforms with low natural hydrodynamic damping. An additional drawback is that attempting to maintain the same detuned natural frequency at all wind speeds enforces detuning even at high wind speeds that do not suffer from this instability issue. Even within the lesser stable wind speeds at the low end of Region 3, the level of detuning necessary for stability differs for each operating point. Together, these aspects suggest that it is beneficial to design the controller with a distinct natural frequency at each operating point, but further analysis of the system dynamics is required to select an optimal schedule for ωpi and ζpi. The solution employed by some designs is to leverage a quantitative margin of stability for a low-order FOWT model to tune a gain schedule. The most common general stability margin is the inverse of the ∞-norm of the sensitivity function.
Another promising FOWT control approach is the addition of feedback loops to compensate for the rotor-platform coupling that causes instability. Feeding back nacelle fore-aft velocity to the blade pitch and generator torque control inputs already used by the baseline controller allows benefits to performance without necessitating the cost of additional special-purpose actuators. Analyzing such multi-loop feedback requires a multi-input, multi-output (MIMO) transfer function representation of the FOWT dynamics because the rotor-platform coupling in the FOWT model is affected by the controller. Combining a robust PI gain schedule with multi-loop feedback results in good performance, but the standard approach of tuning each control loop in isolation can be improved by joint tuning that considers the coupled effects of MIMO feedback loops on one another in addition to their independent effects on the FOWT system.
The systems and methods of the present disclosure apply well to the Ultraflexible Smart FLoating OffshoreWind Turbine (USFLOWT) system, a research FOWT design. USFLOWT is composed of the DTU-10MW reference wind turbine atop the SpiderFLOAT platform, a highly flexible platform with relatively lower natural damping than many common platform substructures found in the literature. The low natural damping of the SpiderFLOAT platform, which assists in dissipating wave loads, makes USFLOWT a unique testing ground for controllers.
This disclosure presents a MIMO robustness analysis of the USFLOWT controller along with a set of controllers exploring the trade-offs between generator speed tracking, robust closed-loop stability, and design complexity. In Section 2, the FOWT control design problem is discussed, and a simplified control-oriented design model is introduced. In Section 3, common SISO and MIMO FOWT control approaches are described in the context of the design model and six scheduled controllers are tuned for USFLOWT using analytical and numerical methods. The stability robustness of each tuning approach is analyzed. In Section 4, the controllers are evaluated by simulating the closed-loop USFLOWT system using the nonlinear aero-servo-hydro-elastic tool OpenFAST that offers a higher level of fidelity than the simplified design model.
Region 2 is defined as wind speeds below the rated wind speed for the turbine. In Region 2, a control objective is to improve power generation. A standard generator torque control law τ=kΩ2 is used in Region 2, while τ is nominally held constant to its rated value τrated by the baseline controller once Ω reaches its rated value, Ωrated.
At wind speeds above the rated wind speed (Region 3), the blades pitch to keep the aerodynamic torque Ta equal in opposition to the resisting generator torque τrated and the generator speed equal to Ωrated. The fore-aft motion of the nacelle, dominated by the platform pitch degree of freedom (DOF) ϕ, plays a significant role in FOWT behavior in Region 3 due to the coupling between platform pitch, generator speed, and blade pitch. Actuating the blade pitch β to regulate generator speed Ω also impacts the rotor thrust Fa and disturbs the platform pitch ϕ. The platform motion in turn causes a disturbance on the generator speed that must be corrected by blade pitch feedback, driving additional platform pitch activity. This coupling may cause closed-loop instability if not taken into account by the design process.
One objective of the Region 3 controller in this disclosure is to track a generator speed reference, which is taken as the constant rated value Ωrated. Some controllers use a variable reference to achieve power or stability goals. The maximum allowable generator overspeed is constrained to Ω≤1.2·Ωrated in this disclosure for the safety of the turbine. Underspeed errors are not critical failures but represent a loss of annual energy production (AEP) and thus should be avoided for LCOE performance. The standard deviation (STD) is used to quantify regulation performance for both overspeed and underspeed, and the absolute maximum overspeed must be kept below the constraint. While the variation of generator power is often a consideration of Region 3 wind turbine performance, power quality is not included as an objective of the control design approach in this disclosure. Other MIMO feedback architectures have been designed to reduce power variations, and regulation of both generator speed and power may be improved by combining multiple MIMO control approaches.
At an elevated position on the tower 104 is a nacelle 106 that holds a rotor and other equipment for harvesting energy from the passing wind 112. The nacelle 106 is typically mounted on top of the tower 104. The FOWT 100 also includes blades 110 which protrude from the nacelle 106 and are coupled to the turbine such that passing wind rotates the blades 110 which in turn rotate the rotor to generate useful energy. The blades 110 can be adjustable in terms of pitch by blade pitch actuators (not shown). Changing the pitch of the blades 110 causes the wind to exert more or less torque on the rotor due to the passing wind 112.
The natural movement of the FOWT 100 in the water is a sinusoidal, periodic oscillation between a forward-most point 115 and a rearward-most point 116. As the FOWT 100 moves between these points the wind speed it experiences changes as a function of the sinusoidal movement.
The FOWT 100 includes a controller 120 that performs calculations based on inputs, and controls parameters of the FOWT 100 in response that mitigate the movements and forces experienced by the FOWT 100. In some embodiments the control inputs are the wind speed and the position of the FOWT 100, particularly with respect to the pitch angle of the tower of the FOWT 100. Outputs can be adjustments to the blade pitch and the torque resistance in the turbine. In some embodiments these outputs are altered to generally match the sinusoidal oscillations of the FOWT 100 itself.
Inputs for the controller 120 include the speed of wind 122 as measured by suitable sensory equipment that measures the wind or estimated wind speeds. The speed of wind may include a relative speed of the wind, as well as an independent measurement that does not change with the pitching of the FOWT. Another input to the controller 120 can be the movement of the FOWT which can be expressed in terms of position, velocity, and/or periodicity of the pitching movement of the FOWT as it rocks back and forth in the water. The movement of the FOWT can be measured and/or estimated using conventional methods.
The controller 120 makes calculations on the basis of these inputs and outputs control signals in terms of resistance torque at 126. The resistance torque 126 can be increased or decreased by making adjustments to generator parameters and/or rotor parameters. Another output can be the pitch of the blades at 128. The lower the pitch of the blades, the greater the torque caused by the passing wind. By controlling these outputs the stability of the FOWT is improved.
The mechanical components of the system are subject to structural loading, both as fatigue due to cyclic loading and ultimate limits from extreme loading events. Fatigue loads are estimated by computing the damage equivalent load (DEL) resulting from loading cycles, and extreme loads are calculated from the maximum absolute load experienced over all simulation cases. The FOWT components considered for loading analysis in this disclosure are the rotor-shaft torsion, tower-base bending moment, tower-top bending moment, and blade flapwise bending moment. A secondary objective for the controller is keeping these structural loads low. The control design model includes states representing generator speed Ω and platform pitch ϕ, so the model-based control design can directly target rejecting disturbances affecting these signals using feedback to the modeled actuators, blade pitch β and generator torque τ. Unmodeled outputs (such as structural loads) are indirectly addressed in the design process by limiting feedback gains and reducing platform motion. Gain limits in the design process also indirectly reduce actuator usage.
For the purposes of control design in this disclosure, most higher order nonlinear effects are ignored in favor of a simplified model that lends itself to design through intuition. The generator speed Ω is represented by {dot over (θ)}, where the generator azimuth θ=∫Ωdt is used for integral feedback control. A first-order model of a wind turbine describes the dynamics of the generator speed, {dot over (θ)}, with respect to the aerodynamic torque Ta and the generator resistance torque τ:
where β is the blade pitch angle, v is the rotor-averaged wind speed, Ng is the gearbox ratio, and Jr is the rotor-drivetrain inertia. The aerodynamic torque is a nonlinear function of rotor variables ({dot over (θ)}, v, and β) described numerically by the power coefficient Cp calculated by a rotor aerodynamic solver (the sometimes-used torque coefficient Cq is related to the power coefficient by Cq=Cp/λ, where λ is the TSR). Dynamic induced-flow effects are neglected by this first-order model; the wake is quasi-static. We can numerically compute a linearized model describing the system response to small perturbations in the state and input variables at each operating point. The linearized form of (1) is
where {tilde over (×)} indicates a perturbation from steady-state equilibrium point
is evaluated at ({dot over (
Tuning FOWT-specific control features requires a model that incorporates some floating platform dynamics. In this disclosure, the platform is represented by a single DOF: platform pitch. The dynamic response of the platform pitch ϕ is approximated as a second-order oscillator aggregating the damping and restoring forces caused by gravity, hydrodynamics, and mooring elasticity, while the other platform DOFs are ignored. The pitch direction is defined such that ϕ>0 means that the platform is tilting downwind (“backwards” from the rotor-facing direction), and during operation ϕ is assumed small enough that the small-angle approximation holds. The simplified second-order platform dynamics are:
J
ϕ
{umlaut over (ϕ)}+D
ϕ
{dot over (ϕ)}+K
ϕ
ϕ=H
t
F
a({dot over (θ)}, v, β), (3)
where Jϕ is the moment of inertia of the FOWT about the pitch rotational axis, Ht is the distance from the rotor hub to the platform pitch rotational axis (approximately tower length), Dϕ is the hydrodynamic damping, and Kϕ is the spring-like stiffness. Both Dϕ and Kϕ are assumed constant linear and are identified using platform-displacement decay tests of a nonlinear USFLOWT model in OpenFAST. Fa is the aerodynamic thrust at the rotor, a nonlinear function of the rotor variables computed similarly to Ta. Platform pitch motion {dot over (ϕ)} induces a relative wind speed at the rotor in addition to the inflow wind disturbance vd. The effective wind speed seen by the rotor is:
v=v
d
−H
t{dot over (ϕ)}. (4)
When platform motion is considered, this relative wind speed (4) is applied to the aerodynamic torque Ta in (1) and (2) and the aerodynamic thrust Fa in (3).
The simplified model in (3) ignores many higher order dynamics of the USFLOWT system, including additional platform DOFs (such as surge and heave translations), nonlinear mooring dynamics, and the complex flexibility and hydrodynamic response of the SpiderFLOAT platform. However, this low-order model is sufficiently detailed for the tuning process presented here, as long as the platform does not experience extreme displacement (>5°) during operation. Similar to (2), the platform dynamics (3) can be linearized at a given operating point and coupled with (4) to form:
Combining linearized models for generator speed (2) and platform pitch (5) yields a state-space model with state vector x=[{tilde over (θ)}{dot over ({tilde over (θ)})}{tilde over (ϕ)}{dot over ({tilde over (ϕ)})}]T and input vector u=[{tilde over (v)}d{tilde over (β)}{tilde over (τ)}]T, where bold typeface indicates a multi-dimensional vector or matrix quantity. The state-space model is {dot over (x)}=Ax+Bu:
The blocks on the diagonal represent uncoupled second-order dynamics of the generator and platform modes from (2) and (5), and the off-diagonal blocks represent dynamic coupling between modes. In particular, the nonzero entry in the upper-right block of A is the coupling due to rotor-relative wind speed (4) that amplifies platform motion as a disturbance on the generator speed. Reducing this term is a goal of the MIMO control design in Section 3.
The system outputs y=Cx+Du can be selected based on available measurements from the FOWT system and required observability for feedback control design. For this disclosure it is assumed that {dot over ({tilde over (θ)})} and {dot over ({tilde over (ϕ)})} are directly measured states and therefore clearly observable, and {tilde over (θ)} is constructed by integrating {dot over ({tilde over (θ)})}. The output matrices for this control design are:
The output signals y are filtered as part of each feedback loop to remove noise and over-actuation at undesirable frequencies. This filtering is ignored for the model analysis in this disclosure but is included for all stability margin calculations.
The transfer function representation of this system is:
where each element Guy(s) is a single-input, single-output (SISO) transfer function from input ũ (column index) to output {tilde over (y)} (row index). A basic turbine controller feeds back generator speed error {dot over ({tilde over (θ)})} to blade pitch {tilde over (β)}, (see Section 3.1.1) effectively operating on the SISO transfer function Gβ{dot over (θ)}(s). In this disclosure, the state-space model is used to gain analytical insight to the FOWT dynamics, while the transfer function is used for sensitivity analysis in the frequency domain.
The SISO transfer function Gβ{dot over (θ)}(s) suffers from the presence of NMPZ when:
Within the operating regions of the wind turbine, Ta and Fa are both strictly increasing with respect to v and strictly decreasing with respect to
The normalized left-hand side of inequality (9) computed for the open-loop USFLOWT model (6) is visualized by the black curve (Baseline) in
The blade-pitch regulator feedback loop causes the closed-loop poles to approach the open-loop zeros. NMPZs pull the poles towards the right half-plane (RHP) in the s-plane. Considering each complex-conjugate pair of poles as a second-order damped oscillator mode, this feedback reduces the damping ratio ζ, until eventually the poles cross into the RHP and become unstable. This instability implies ζ<0 so is referred to as the “negative damping” problem. When NMPZs are present, even relatively modest feedback gains can lead to closed-loop linearized instability. Instability for a FOWT system causes the generator speed and platform pitch to undergo oscillations with non-decaying amplitude, even without disturbances. Nonlinearities save the FOWT system from unbounded divergence, but a stable linearized control system typically has better performance than one that does not maintain stability.
The structure of the controller used in this disclosure is adapted from well-tested FOWT controllers in the literature. The controller is built from individual control loops rather than a full-state feedback approach. State feedback has been explored using methods such as linear-quadratic regulator (LQR) and ∞ control, but individual loop construction is preferred in this disclosure to leverage intuition about a more easily conceptualized design space and to satisfy industry preferences towards simplicity. The controller structure is introduced above and then tuned in a variety of SISO and MIMO configurations to contrast different approaches for designing FOWT controllers to improve closed-loop stability. The control tuning parameters may be jointly optimized and scheduled across all of Region 3.
The FOWT controller consists of two feedback components: a SISO PI control loop regulating generator speed (described in Section 3.1.1) and a set of MIMO auxiliary loops referred to as platform feedback (PF) (described in Section 3.1.2). The PI and PF control loops are closed around the simplified FOWT model (6) in Section 3.1.3. For added context, the closed-loop system matrix (22) is referenced prior to its introduction.
The fundamental component of the FOWT controller is a turbine control loop feeding back generator speed error to blade pitch, most often using a PI controller. The turbine PI controller equation is:
{tilde over (β)}pi=−kp{dot over ({tilde over (θ)})}−ki{tilde over (θ)}, (10)
and the torque control actuator is left constant: {tilde over (τ)}pi=0. In implementation, the azimuth term {tilde over (θ)} is computed as the integral ∫{dot over ({tilde over (θ)})}dt rather than employing feedback of a second measured state. The azimuth state is included in the model (6) to facilitate a simple closed-loop description in (22).
For simplicity, some common wind turbine control features are left out of consideration in this disclosure entirely, including constant-power torque control and peak thrust shaving, but these could be combined with the control architecture considered in this disclosure without significant modifications.
The PI controller is represented as a SISO transfer function from generator speed {dot over ({tilde over (θ)})} to blade pitch {tilde over (β)} by
This controller transfer function is embedded into a sparse 3×2 MIMO transfer function matrix Kypi(s) for MIMO controller design. The PI controller (10) is embedded in a sparse full-state 3×4 feedback gain matrix Kxpi to match the state-input dimension of the model (6) as
where the PI controller (10) is formulated in the Laplace and time domains as u(s)=−Kypi(s)y(s) and equivalently u=−Kxpix. The PI controller appears in the upper-left block of the closed-loop system matrix (22). The PI gains kp and ki are parameterized using the decoupled SISO generator model in (2). Blade-pitch PI feedback results in a second-order closed-loop system with natural frequency ωpi and damping ratio ζpi:
which is represented in state-space form in the upper-left block of (22). Gains can be selected to satisfy a desired ωpi and ζpi as follows:
where the aerodynamic sensitivities
are evaluated at {dot over (
There is a one-to-one relationship between desired ωpi and ζpi (the tuning parameters) and PI gains kp and ki (the “raw” gains). By parameterizing the controller with (ωpi, ζpi), the tuning process is more intuitive to the control designer6 and well-conditioned for an optimization algorithm. Gain parameters designed for a floating system, without accounting for platform dynamics, may make the FOWT system unstable near rated. Restoring stability to the closed-loop SISO system can be accomplished by detuning ωpi or by optimizing the parameters over a stability margin. Both methods are employed to schedule the PI controller gains.
Introducing feedback from platform pitch rate {dot over ({tilde over (ϕ)})} to the turbine control actuators {tilde over (β)} and {tilde over (τ)} can further influence the FOWT dynamics beyond the generator-speed control loop accessible to a SISO controller. These MIMO control loops are called platform feedback (PF) in this disclosure, but they have been referred to as floating feedback, nacelle feedback, and tower-top feedback in other works. For simplicity, each loop has only a proportional gain multiplying {dot over ({tilde over (ϕ)})}, leading to PF signals for blade pitch (14a) and generator torque (14b):
{tilde over (β)}pf=−kβ{dot over ({tilde over (ϕ)})} (14a)
{tilde over (τ)}pf=−kr{dot over ({tilde over (ϕ)})}. (14b)
The PF signals for each actuator add to the PI control signals to make the combined MIMO controller: {tilde over (β)}={tilde over (β)}pi+{tilde over (β)}pf and {tilde over (τ)}={tilde over (τ)}pi+{tilde over (τ)}pf. Similarly, the PF controller is formulated as a transfer function and full-state feedback gain matrix as
Note that the PI (11) and PF (15) gain matrices are each sparse, whereas a fullstate feedback approach would potentially employ twice as many gains in the bottom two rows of the state-feedback gain Kx but with far less decipherable understanding of the contributions of each feedback loop. The gains kβ and kτ are parameterized according to two effects that platform feedback has on the system dynamics: decoupling compensation and platform damping.
The goal of decoupling compensation is to reduce the size of the generator platform coupling term in the upper-right-block entry of the system matrix (6), the term caused by rotor-relative wind speed (4). According to (22), this term is affected by both kβ and kτ. Setting
will fully compensate for the coupling (driving it to zero), but partial compensation can be accomplished using less aggressive gains. If (16) does not hold but the lefthand side is greater than 0, then the coupling will be partially compensated. If the left-hand side is negative, then the coupling will be made worse (e.g., using a platform damper configuration; see below). In Region 3,
so both sides of the equation are positive if kβ>0 and kτ>0. We can parameterize the PF gains based on their individual contribution to the full compensation represented by (16). Define
as the full-compensation gain for each actuator in isolation, so (kβ, kτ)=(γβ, 0) and (kβ, kτ)=(0, γτ) are both solutions to (16). We tune each gain relative to its full-compensation γ× as
kβ=αβγβ; kτ=ατγτ (18)
where αβ and ατ are the fractional contributions of each actuator to the left-hand side of (16). The total degree of compensation αcomp=αβ+ατ represents the fractional change of the relative-wind coupling entry (upper-right block) from open-loop (6) to closed-loop (22) system matrices.
Platform feedback to τ is not coupled directly to the platform dynamics, so in theory it is an ideal actuator for performing the decoupling compensation. In fact, τ platform feedback (also called parallel compensation) is capable of completely removing the NMPZs from Gβ{dot over (θ)}(s) by changing μa in (9) to be:
If the degree of torque compensation ατ breaks inequality (9), then the MIMO feedback system will not have NMPZs.
While the name “parallel compensation” is sometimes used to refer to general platform feedback to either generator torque or blade pitch, β-feedback compensation approaches use the same actuator as the PI controller so are not fully parallel, so the name does not quite apply. In this disclosure, the term “decoupling compensation” instead refers to platform feedback to either actuator with the goal of reducing the relative-wind coupling term without distinguishing input-output loop architecture.
Increasing the platform damping is possible using blade-pitch platform feedback, shown by the uncoupled platform dynamics (5) in the lower-right block of Acl in (22). The isolated platform DOF in this system matrix block has a second-order characteristic frequency ωptfm and damping ratio ζptfm defined as
The platform natural frequency ωptfm is fixed by the physical parameters Kϕ and Jϕ when only using proportional feedback of {dot over ({tilde over (ϕ)})}, but the damping ratio ζptfm comes from three sources: the hydrodynamic damping Dϕ (positive, constant), relative wind speed coupling
(positive, magnitude depends weakly on operating point), and platform feedback control kβ (fully tunable). The sign of kβ can be tuned to either increase (kβ<0) or decrease (kβ>0) platform damping ζptfm. Using kβ<0 can increase ζptfm at the expense of dynamic coupling, reducing platform motion but amplifying its disturbance on the generator-speed loop. Using instead kβ>0 for decoupling compensation increases αcomp and redistributes the effect of NMPZs, but blade-pitch feedback cannot directly change the location of the zeros. Such a tuning approach stabilizes the generator speed mode at the expense of reducing ζptfm and decreasing the platform stability. Both tuning approaches are explored in designing a MIMO controller in Section 3.3. Inverting (20) with a desired ζptfm implies the following tuning scheme for blade-pitch PF:
A choice of desired ζptfm implies a tuning for kβ and αβ, after which a choice of αcomp implies ατ and therefore tunes kτ. The platform feedback gains are fully determined by these two parameters (αcomp, ζptfm).
The capacity for PF to improve system performance is constrained by the authority of the control actuators at each wind speed. The generator torque actuator is already set to its rated value by the Region-3 baseline controller, and for safety reasons the electromechanical system imposes a strict limit on the maximum generator torque signal to avoid generator damage, assumed to be 120% of rated torque. This is considered a conservative maximum limit well below the actual capabilities of the generator, but it is used in this disclosure so that a combined simultaneous spike of maximum generator torque and generator speed will never make the generator power exceed 150% of rated power. A more nuanced formulation of generator constraints may allow relaxation of this torque limit, enabling greater control authority but also requiring a more complex controller implementation. A simple saturation to τmax=1.2·τrated is applied to τ after τpf is added to τrated, potentially introducing nonlinear behavior if the input signal is cut off by the saturation limit. This saturation can be avoided by restricting the torque PF gain kτ, thereby limiting control authority. In this disclosure, kτ is constrained by the τ saturation limit assuming a maximum platform pitch rate {dot over (ϕ)}max that depends on the operating point and the platform pitch damping ζptfm. Designer intuition can choose tuning parameters to construct a workable controller based on these equations, but optimization over the stability landscape offers a better consideration of the involved trade-offs. Jointly optimized PI and PF tuning is explored in Section 3.3.
The overall controller gain matrix Kx=Kxpi+Kxpf is combined with the openloop state-space model (6) as
The block structure of Acl is identical to that of (6). An alternative representation of the closed-loop system uses MIMO transfer functions for the system (8) and controller: Ky(s)=Kypi(s)+Kypf(s). The resulting closed-loop system is the 2×2 transfer function Gcl(s)=(I+G(s)Ky(s))−1G(s)Ky(s). The transfer function form is easier to manipulate for frequency-domain analysis and controller optimization performed in MATLAB, but the state-space model is easier to conceptually understand in the context of the tuning parameterization used here.
The closed-loop system formulated above (22) is not guaranteed to be stable, especially for FOWT platforms with low natural damping like the SpiderFLOAT platform. The stability of a linear feedback system can be analyzed using Nyquist's stability criterion. The stability criterion offers not only a binary answer between stable or unstable but can also be used to quantify the robustness of a nominally stable system against model uncertainty. In this disclosure, control parameters are optimized to seek out a large stability margin and ensure a nominally stable system. Multiple sensitivity function formulations exist for evaluating the stability margins of the MIMO feedback system, and these are depicted by block diagrams in
The stability margin Sm of a closed-loop-stable SISO system is defined as the minimum distance between the Nyquist curve of the loop transfer function L(s)=G(s)K(s) (where G(s) is the SISO open-loop plant and K(s) is a SISO controller) and the stability boundary at s=−1. An equivalent and more easily computable definition is the inverse of the ∞-norm of the sensitivity function (denoted S(s)), defined as
This SISO stability margin has been used to robustly tune a baseline PI controller for a FOWT system. By replacing the open-loop plant G(s) with a SISO transfer function resulting from the inner-loop closure of MIMO PF loops Ginner(s), the SISO stability margin may also be used to quantify the robustness of a MIMO feedback system, as in
To design MIMO controllers in this disclosure, we instead use a MIMO formulation of the sensitivity function defined around a MIMO loop transfer function L(s), most commonly defined around the feedback loop from an output disturbance vector to the system output: L(s)=G(s)K(s) (where G(s) is the MIMO open-loop plant and K(s) is a MIMO controller gain matrix), as depicted in
Implicit in this MIMO formulation is the need to re-scale the input/output signals of L(s) to remove dimensionality.
When applied to the FOWT system, this simplistic MIMO stability margin formulation (24) is highly sensitive to input/output scaling and tends to underestimate the stabilizing impact of platform feedback. To best capture the coupling between control loops and natural dynamics, a new MIMO stability margin is developed for this disclosure using a loop transfer function modified from the standard feedback loop product G(s)K(s). This modified sensitivity formulation is referred to as the MIMO feedback-coupled (FC) stability margin. To formulate the MIMO FC stability margin, the relative-wind dynamic coupling in the FOWT model (4) is first removed from the open-loop MIMO plant G(s) to form the decoupled plant model Gfc(s). Then the coupling is reintroduced as a control-like feedback loop by the sparse gain matrix Kyfc(s). The feedback coupled loop transfer function is:
Note that the
entry in the upper-right block of A is missing from Afc. The MIMO FC stability margin calculation proceeds as (24) using the FC loop transfer function Lfc, also depicted in
Schedules for each control parameter are shown across Region 3 in
Three PI controllers are tuned as the initial design step: Baseline, Detuned, and SISO Robust. These are SISO controllers, with zero (Baseline) platform feedback. Differentiating the SISO control design in this disclosure is the PI controller parameterization and robust optimization of the PI gains over a two-dimensional design space. SISO Robust could serve as a stabilizing baseline controller to compare advanced control design, and in this disclosure SISO Robust is used as the baseline to compare the simulation performance of MIMO controllers. To introduce MIMO feedback to the FOWT controller, SISO Robust is augmented with two PF tunings, decoupling compensator (Comp) and platform damper (Damp), without modifying the SISO Robust PI tuning. Finally, the PI and PF components are jointly optimized in the MIMO Robust controller. MIMO Robust has both PI and PF tunings not shared with any other controller, seen by its row-column isolation in
The Baseline PI controller is adapted from ROSCO and tuned with constant desired ωpi=0.3 rad/s and ζpi=0.7. The filtering of feedback loops included in ROSCO are used in the PI controller implementation and stability analysis in this disclosure. Although the closed-loop natural frequency ωpi is below the platform resonant frequency, the stability analysis in later sections shows that this controller destabilizes the system at operating points near rated.
The Detuned PI controller follows a common rule of thumb to avoid negative damping: reduce the bandwidth of the generator-speed control loop. The PI control parameters are still constant but modified from the baseline with the goal of improving the stability properties. The desired closed-loop natural frequency is decreased to ωpi=0.2 rad/s to reduce the bandwidth, and the damping ratio is increased to ζpi=1.2 to reduce oscillations in the system response. The decreased natural frequency demands a smaller integral gain ki, which has a large influence on the closed-loop stability. A large damping ratio ζpi>1 makes the generator-speed control loop overdamped, dramatically reducing oscillations but also further decreasing the disturbance-rejection bandwidth. The simple detuning design approach is attractive for its lack of complexity, but it is not guaranteed to restore stability at low winds, and the reduced bandwidth also struggles to maintain regulation performance in the presence of greater disturbances at high winds.
The SISO Robust (SR) PI controller does not attempt to maintain constant tuning parameters. The PI parameter schedule (ωpi, ζpi) was optimized over the SISO stability margin from Section 3.2 independently at each operating point. The resulting schedules for ωpi and ζpi are plotted in
At these lower winds, the PI gains grow rather than following the aerodynamic-sensitivity-induced trend of the constant-parameter PI schedules of Baseline and Detuned. At higher winds, the parameters are mostly constant, similar to the other controllers but at different parameter values. The reasons for the discontinuity in the parameter schedule at around
The Decoupling Compensator, or Comp, PF tuning attempts to make αcomp close to 1 despite some reduction of ζptfm. Both generator-torque and blade-pitch PF loops are tuned for compensation, so ατ>0 and αβ>0, leading to a large sum αcomp=αβ+ατ. The torque compensation gain kτ is limited by the actuator saturation under maximum expected platform velocity {dot over (ϕ)} in the feedback loop. This implies a limit to the torque compensation degree ατ dependent on platform damping ζptfm, itself decreasing as blade-pitch compensation degree αβ increases. Based on heuristically estimating the maximum {dot over (ϕ)} based on ζptfm, a trade-off is made between ατ and αβ to maximize the sum αcomp without suffering too large a reduction in ζptfm. The Comp PF controller is combined with the SISO Robust PI controller to form a complete MIMO controller without retuning the PI parameter schedule. The Comp PF parameter schedules are shown in
The Platform Damper, or Damp, PF tuning takes the opposite approach: attempting to drive ζptfm higher at the expense of decreasing αcomp. The generator-torque PF, which has no direct impact on ζptfm, is still tuned for compensation ατ>0, but the blade-pitch PF is tuned with the opposite sign αβ<0. The advantage of increased platform damping is reduced platform motion and therefore structural loads, although the increased dynamic coupling causes the remaining platform motion to have a greater disturbance on the PI control loop. The same maximum {dot over (ϕ)}-heuristic as Comp is used to tune Damp, and because increased platform damping reduces platform motion, the Damp PF actually enables a larger torque compensation ατ than Comp (but lower, even negative, total compensation αcomp). The presence of NMPZs in Gβ{dot over (θ)}(s) depends only on the partial compensation ατ, so Damp PF is better able to remove NMPZs at lower wind speeds (see
The MIMO Robust controller attempts to find a compromise between Comp and Damp PF tunings, while retuning the PI control loop jointly to take advantage of increased stability at lower winds. Compared to SISO Robust PI tuning, the MIMO Robust optimization takes advantage of the entire four-dimensional parameter space to find an optimal tuning over the MIMO FC stability margin from Section 3.2. The optimized parameter schedule for the MIMO Robust controller is plotted in
The stability margin varies greatly over operating points and control parameter changes, but visualizing these changes is difficult because of the large design space. Taken together, the controller tuning parameter space (ωpi, αpi, αcomp, ζptfm) combined with the scheduling parameter
The PI and PF controller components are considered in turn (refer to Sections 3.1.1 and 3.1.2, respectively). Slices of the PI parameter space (ωpi, ζpi), sampled using the scheduled PF parameter values of
The SISO Robust and MIMO Robust controllers are tuned by optimizing over a cost function based on an estimate of the stability margin and closed-loop bandwidth. The cost function is weighted to encourage a large stability margin Sm, disallowing destabilizing controllers where Sm=0. The bandwidth of the coupled generator-speed regulation loop is used as a performance estimate and maximized (subject to other goals) by the cost function up to saturation at the platform natural frequency ωptfm=0.4 rad/s. After the cost function is constructed and weighted, a locally optimal solution is found using a gradient-based solver in MATLAB with a stabilized detuning of the Baseline controller used as an initial condition.
The stability margin is shown across variation in the PI tuning parameters (ωpi, ζpi) in
The stability margin is shown across variation in the PF tuning parameters (αcomp, ζptfm) in
The USFLOWT system was simulated with each of the six controllers designed in Section 3. The nonlinear aero-hydro-servo-elastic tool OpenFAST was used to model USFLOWT, and the controller was implemented in Simulink. At each Region 3 mean wind speed v=12, 13, . . . , 25 m/s, corresponding wave conditions are informed by metocean data for a site near Monhegan Island, Maine. The wave conditions used the JONSWAP spectrum with parameters correlated with wind speed. Significant wave height ranged from Hs=1.18 m at 12 m/s to Hs=3.44 m at 25 m/s, and peak period ranged from and Tp=7.27 s at 12 m/s to Tp=9.32 s at 25 m/s. While an irregular wave disturbance was simulated in every case, it has not been found to have a significant impact on the SpiderFLOAT platform and USFLOWT performance at the peak wave frequencies of operational conditions, justifying the lack of wave disturbance in the control design model (6). TurbSim was used to simulate a wind field with 16% characteristic turbulence intensity with a 10-min mean at each integer Region 3 wind speed. The wind field was generated using the International Electrotechnical Commission (IEC) Kaimal spectral model and a vertical shear exponent of 0.14. Twelve random seeds for wind turbulence and wave power spectrum were simulated at each reference wind speed for each controller. All simulations used a duration of 800 s, with the first 200 s of transient settling discarded. An example 180-s segment time series of a simulation with reference wind speed 18 m/s is shown in
The states included in the control design model (6) are used to analyze simulation results across all Region 3 mean wind speeds. The generator-speed error {dot over ({tilde over (θ)})} is normalized to the rated value Ωrated, and the platform pitch {tilde over (ϕ)} is normalized to the mean value of the Baseline controller at v=12 m/s. Note that due to the presence of some low-frequency turbulence, the performance data for each reference wind speed is blurred with that of adjacent wind speeds, but the trends between lower and higher winds are useful for comparison of behavior between controllers.
Power quality, a measure of the output power variation, plays a role in the suitability of a power generation system to be integrated into the grid. As wind energy grows to contribute a larger portion of the grid power resource, any negative impacts on the quality of power in the grid distribution are more pronounced. Although the grid can make use of power electronics designed to reactively compensate for the reduction in power quality expected from renewable sources, power quality may still be a factor in FOWT design decisions. In addition to the states of the simplified model, the variation of output power is also used to compare controller designs. The power-output equation and its linearization are:
P=τ{dot over (θ)}; {tilde over (P)}={tilde over (τ)}Ω
rated+τrated{dot over ({tilde over (θ)})} (26)
Note the dependence of power variation {tilde over (P)} on input torque {tilde over (τ)}. In a SISO controller, torque is constant and the generator power in Region 3 is directly related to the generator speed. In a MIMO controller, feedback to {tilde over (τ)} may either increase or decrease power variation relative to generator speed. The platform feedback via (14b) used in this disclosure tends to increase power variation.
Some higher-order FOWT system behaviors are relevant to comparing performance but not captured by the simplified design model. These include mean power output, actuator usage, and structural loading of various mechanical components. Each of these quantities is aggregated over Region 3 by weighting the simulation output statistics at each wind speed based on the wind-speed probability.
The six controllers described in Section 3 are compared in two stages. The simulation results of the three SISO controllers are discussed in Section 4.1 and compared against the destabilizing Baseline in
In each of
In each of
In
Additional performance statistics not explicitly factored into the control design process are calculated and aggregated over Region 3 to compare controller designs. The outputs considered are AEP, blade-pitch travel, and fatigue and extreme structural loading. The statistics are aggregated by computing the performance at each reference wind speed: mean power, mean blade-pitch velocity, and DEL, then averaged over all wind speeds weighted by the Region 3 Weibull probability distribution for the site. For fatigue loads, the DEL is calculated using rainflow counting with a Wöhler exponent of m=10 for the blades and m=3 for the other components in a modified version of MCrunch. For extreme loads, the aggregate value is the absolute maximum over all wind speeds.
Annual energy production (AEP) is arguably the most important metric for success of a FOWT system, as it is directly tied to revenue generation in a commercial wind farm. The AEP calculation used for the comparison in
Rotor-shaft torsional loading, shown in
Tower structural loading is shown in
The blade-root structural loading in
The stability robustness of the USFLOWT closed-loop dynamics has been investigated over a sampling of MIMO controller tuning parameter space. An automated tuning procedure for Region 3 FOWT controllers based on this stability analysis has been used to construct robust SISO and MIMO controllers that are compared against traditional incremental FOWT control design. A robust SISO PI controller compares favorably against a fixed-bottom baseline and a simply detuned controller, similar to other results. Robust PI tuning leads to decreases in tower structural loading while also improving generator-speed regulation and AEP through identifying sections of the parameter space that satisfy both stability robustness and aggressive regulation bandwidth. This aggressive tuning at high wind speeds also increases blade pitch actuator usage as a consequence, but this drawback could potentially be mitigated by reducing the maximum allowed PI bandwidth. Some additional performance benefits arrive from adding MIMO feedback to the robust PI gain schedule with the purpose of compensating dynamic coupling or an increase in platform damping. Independently tuning control loops no longer captures all of the benefits offered by the control loop structure. Improvement is limited if the PI controller is not redesigned in the presence of beneficial platform feedback. A known problem with using generator torque feedback in parallel compensation is an increase in shaft and drivetrain loads and poor power quality, which is becoming more practically critical because of the rising penetration of wind energy in modern power grids. Power quality can be improved by incorporating other MIMO feedback architectures, such as a constant-power controller, or farm-level design decisions such as energy storage.
For measuring robustness of a multi-loop feedback system, a SISO stability margin calculation is too simplistic to capture loop coupling. The direct extension to a conventional MIMO sensitivity function is highly sensitive to dimensional scaling of input and output signals and under-emphasizes the contribution to stability of platform feedback. We have proposed a loop configuration for defining the FOWT sensitivity function that emphasizes FOWT-specific model coupling, the MIMO feedback-coupled (FC) representation. By treating the internal dynamics of a FOWT as a control-like feedback loop, the coupling between natural dynamics and control feedback influence the stability margin calculation in similar ways, improving upon the more simplistic SISO and MIMO sensitivity representations. Examination of the evolution of the stability margin across Region 3 wind speeds and multiple subsamplings of the 4-dimensional control parameter space reveals intuition about how various tuning configurations of each control parameter work together to influence FOWT stability. These parameters may then be optimized over the design space to find a compromise between closed-loop stability margin and disturbance-rejection bandwidth.
Although the MIMO robust controller optimization increases the complexity and computational cost of the automated controller tuning, advantages of full parameter optimization appear at low wind speeds due to the ability to optimally retune a more aggressive generator-speed control loop under the increased stability offered by platform feedback. Such aggressive regulation comes at a cost of power quality, blade pitch actuator usage, and certain structural loads. The “best” performing trade-off depends on the application goals, and cost function tuning allows targeting certain design objectives with application goals in mind. While the intuitively formulated controller proposed in this disclosure may not compare to full-state feedback like that provided by LQR or ∞ methods, the relative ease of conceptualization for the performance trade-offs of the isolated loop design space lends the problem well to intuitive design.
The proposed robust controller tuning method has led to improved performance in the targeted metrics, generator-speed regulation and tower loading, despite known modelling inaccuracy due to dynamic simplifications, ignored degrees of freedom, and imprecise parameter identification. One benefit of stability robustness is tolerance to model uncertainty, which allows a controller designed on such a simplified model to maintain performance qualities in nonlinear higher fidelity simulation used to validate the control design. Introducing additional model dynamics (such as structural flexibility, floating platform DOFs, and accurate hydrodynamics) could improve the match between the behavior predicted in the design process with the simulation model, but in doing so the dynamics would further depart from designer intuition and increase computation times. Maintaining intuition about which design decisions have positive influence is useful when the design problem is broadened to include additional plant parameters, and automated tuning facilitates fast redesign suitable for a control co-design process flow. The simplicity of a few-DOF control design model is compensated for by robust tuning, allowing better understanding and performance for the designer and controller.
The processor(s) 202 may comprise one or more sets of electronic circuitries that include any number of logic units, registers, and/or control units to facilitate the execution of computer-readable instructions (e.g., instructions that form a computer program). Such computer-readable instructions may be stored within storage 204. The storage 204 may comprise one or more computer-readable recording media and may be volatile, non-volatile, or some combination thereof. Furthermore, storage 204 may comprise local storage, remote storage (e.g., accessible via communication system(s) 210 or otherwise), or some combination thereof. Additional details related to processors (e.g., processor(s) 202) and computer storage media (e.g., storage 204) will be provided hereinafter.
As will be described in more detail, the processor(s) 202 may be configured to execute instructions stored within storage 204 to perform certain actions. In some instances, the actions may rely at least in part on communication system(s) 210 for receiving data from remote system(s) 212, which may include, for example, separate systems or computing devices, sensors, and/or others. The communications system(s) 210 may comprise any combination of software or hardware components that are operable to facilitate communication between on-system components/devices and/or with off-system components/devices. For example, the communications system(s) 210 may comprise ports, buses, or other physical connection apparatuses for communicating with other devices/components. Additionally, or alternatively, the communications system(s) 210 may comprise systems/components operable to communicate wirelessly with external systems and/or devices through any suitable communication channel(s), such as, by way of non-limiting example, Bluetooth, ultra-wideband, WLAN, infrared communication, and/or others.
Furthermore,
The following discussion is intended to provide a brief, general description of a suitable computing environment in which the present disclosure may be implemented. Although not required, the present disclosure will be described in the general context of computer-executable instructions, such as program modules, being executed by computers in network environments. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. Computer-executable instructions, associated data structures, and program modules represent examples of the program code means 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.
Those skilled in the art will appreciate that the present disclosure may be practiced in network computing environments with many types of computer system configurations, including personal computers, hand-held devices, multi-processor systems, microprocessor-based or programmable consumer electronics, network PCs, minicomputers, mainframe computers, and the like. The present disclosure may also be practiced in distributed computing environments where local and remote processing devices perform tasks and are linked (either by hardwired links, wireless links, or by a combination of hardwired or wireless links) through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.
The present disclosure may comprise or utilize a special-purpose or general-purpose computer system that includes computer hardware, such as, for example, a processor and system memory, as discussed in greater detail below. The scope of the present disclosure also includes physical and other computer-readable media for carrying or storing computer-executable instructions and/or data structures. Such computer-readable media can be any available media that can be accessed by a general-purpose or special-purpose computer system. Computer-readable media that store computer-executable instructions and/or data structures are computer storage media. Computer-readable media that carry computer-executable instructions and/or data structures are transmission media. Thus, by way of example, and not limitation, the present disclosure can comprise two distinctly different kinds of computer-readable media: computer storage media and transmission media.
Computer storage media are physical storage media that store computer-executable instructions and/or data structures. Physical storage media include computer hardware, such as RAM, ROM, EEPROM, solid state drives (“SSDs”), flash memory, phase-change memory (“PCM”), optical disk storage, magnetic disk storage or other magnetic storage devices, or any other hardware storage device(s) which can be used to store program code in the form of computer-executable instructions or data structures, which can be accessed and executed by a general-purpose or special-purpose computer system to implement the disclosed functionality of the present disclosure.
Transmission media can include a network and/or data links which can be used to carry program code in the form of computer-executable instructions or data structures, and which can be accessed by a general-purpose or special-purpose computer system. A “network” is defined as data links that enable the transport of electronic data between computer systems and/or modules and/or other electronic devices. When information is transferred or provided over a network or another communications connection (either hardwired, wireless, or a combination of hardwired or wireless) to a computer system, the computer system may view the connection as transmission media. Combinations of the above should also be included within the scope of computer-readable media.
Further, upon reaching various computer system components, program code in the form of computer-executable instructions or data structures can be transferred automatically from transmission media to computer storage media (or vice versa). For example, computer-executable instructions or data structures received over a network or data link can be buffered in RAM within a network interface module, and then eventually transferred to computer system RAM and/or to less volatile computer storage media at a computer system. Thus, it should be understood that computer storage media can be included in computer system components that also (or even primarily) utilize transmission media.
Computer-executable instructions comprise, for example, instructions and data which, when executed at a processor, cause a general-purpose computer system, special-purpose computer system, or special-purpose processing device to perform a certain function or group of functions. Computer-executable instructions may be, for example, binaries, intermediate format instructions such as assembly language, or even source code.
Those skilled in the art will appreciate that the present disclosure may be practiced in network computing environments with many types of computer system configurations, including, personal computers, desktop computers, laptop computers, message processors, hand-held devices, multi-processor systems, microprocessor-based or programmable consumer electronics, network PCs, minicomputers, mainframe computers, mobile telephones, PDAs, tablets, pagers, routers, switches, and the like. The present disclosure may also be practiced in distributed system environments where local and remote computer systems, which are linked (either by hardwired data links, wireless data links, or by a combination of hardwired and wireless data links) through a network, both perform tasks. As such, in a distributed system environment, a computer system may include a plurality of constituent computer systems. In a distributed system environment, program modules may be located in both local and remote memory storage devices.
Those skilled in the art will also appreciate that the present disclosure may be practiced in a cloud-computing environment. Cloud computing environments may be distributed. When distributed, cloud computing environments may be distributed internationally within an organization and/or have components possessed across multiple organizations. In this description and the following claims, “cloud computing” is defined as a model for enabling on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services). The definition of “cloud computing” is not limited to any of the other numerous advantages that can be obtained from such a model when properly deployed.
A cloud-computing model can be composed of various characteristics, such as on-demand self-service, broad network access, resource pooling, rapid elasticity, measured service, and so forth. A cloud-computing model may also come in the form of various service models such as, for example, Software as a Service (“SaaS”), Platform as a Service (“PaaS”), and Infrastructure as a Service (“IaaS”). The cloud-computing model may also be deployed using different deployment models such as private cloud, community cloud, public cloud, hybrid cloud, and so forth.
A cloud-computing environment, or cloud-computing platform, may comprise a system that includes a host that is capable of running virtual machines. During operation, virtual machines emulate an operational computing system, supporting an operating system and perhaps other applications as well. Each host may include a hypervisor that emulates virtual resources for the virtual machines using physical resources that are abstracted from view of the virtual machines. The hypervisor also provides proper isolation between the virtual machines. Thus, from the perspective of any given virtual machine, the hypervisor provides the illusion that the virtual machine is interfacing with a physical resource, even though the virtual machine interfaces with the appearance (e.g., a virtual resource) of a physical resource. Examples of physical resources including processing capacity, memory, disk space, network bandwidth, media drives, and so forth.
The present invention may be embodied in other specific forms without departing from its spirit or essential characteristics. The described implementations are to be considered in all respects only as illustrative and not restrictive. The scope of the invention is, therefore, indicated by the appended claims rather than by the foregoing description. All changes which come within the meaning and range of equivalency of the claims are to be embraced within their scope.
This patent application claims priority to U.S. Provisional Patent Application No. 63/417,900 filed on Oct. 20, 2022, which is incorporated herein by reference in its entirety.
This invention was made with government support under Grant No. DE-AR0001181 awarded by the U.S. Department of Energy. The government has certain rights to the invention.
Number | Date | Country | |
---|---|---|---|
63417900 | Oct 2022 | US |