/wtDigiTwin

Primary LanguagePythonMIT LicenseMIT

Build Status

wtDigiTwin

A digital twin model for wind turbine. Contains a set of structrual dynamics tools, beam theory, FEM and more.

This wind turbine digital twin software (wtDigiTwin) provides a digital twin solution for wind turbine applications. The focus of wtDigiTwin is to estimate loads, motions and environmental conditions for an operating wind turbine. The program uses supervisory control and data acquisition (SCADA) measurements as inputs, together with a wind turbine model.

The wind industry is currently challenged by the high cost of operation and maintenance. These costs could be mitigated if component failures are predicted, but such predictions are difficult unless the turbines are equipped with expensive measuring devices. The alternative is to use a digital twin such as wtDigiTwin to estimate the necessary signals.

wtDigiTwin can perform online prediction of signals that are otherwise not measured, using a limited set of reliable measurements and a physics-based model. The predicted signals can be used in applications that have direct cost benefits: 1) real-time estimation of the fatigue consumption of key components of the wind turbine; 2) root cause analyses and failure detections ; 3) lifetime reassessments ; 4) improvements to follow-on designs.

The current version provides examples to estimate wind speed, thrust, torque, tower-top position, and tower loads on an onshore wind turbine using the following measurements tower top acceleration, generator torque, pitch, and rotational speed. The model combines a linear state-space model, a wind speed estimator, and a Kalman filter algorithm that integrates measurements with the state model to perform state estimations. The state space model is obtained either using OpenFAST linearizations, or using the yams package provided with the software.

QuickStart

NOTE: This repository relies on the welib submodule, remember to include --recurse-submodules when cloning it.

Download, install dependencies and package:

git clone --recurse-submodules https://github.com/NREL/wtDigiTwin
cd wtDigiTwin
python -m pip install --user -r requirements.txt  
python -m pip install -e .      # install
python -m unittest discover -v  # run test

Examples

Simple working examples are provided in the example directory.

Relevant packages from welib

The repository relies heavily on welib

In particular the following subpackages of welib:

  • yams: multibody analyses
  • beams: analytical results for beams
  • fast: tools to handle OpenFAST models, in particular a linear OpenFAST model
  • fem: Finite Element Method tools (beams)
  • kalman: kalman filter
  • system: tools for dydnamic systems (e.g. LTI, state space) and mechanical systems (M,C,K matrices), eigenvalue analysis, time integration
  • ode: tools for time integration of ODE
  • ws_estimator: wind speed estimator for wind energy based on tabulated Cp Ct

How to cite:

The core of the model for onshore application is given in the following article:

  • Branlard,E, Giardina, D., Brown, C. S. , Augmented Kalman filter with a reduced mechanical model to estimate tower loads on a land-based wind turbine: a step towards digital-twin simulations, 2020 link

The core of the model for floatting offshore application is given in the following article:

  • Branlard, E., Jonkman, J., Brown, C., and Zhang, J.: A digital-twin solution for floating offshore wind turbines validated using a full-scale prototype, 2023, Wind Energ. Sci., link

Applications using OpenFAST linearization were presented in the following work:

  • Branlard,E, Jonkman, J., Dana, S., Doubrawa, P., A digital twin based on OpenFAST linearizations for real-time load and fatigue estimation of land-based turbines, 2020 link

The structural model referred to as YAMS was described in the following:

  • Branlard, E., Geisler, J., A symbolic framework to obtain mid-fidelity models of flexible multibody systems with application to horizontal-axis wind turbines, 2022, Wind Energ. Sci., link

  • Branlard,E, Flexible multibody dynamics using joint coordinates and the Rayleigh‐Ritz approximation: The general framework behind and beyond Flex , 2019, link. A pre-print of this article is available in the _doc folder of this repository.