Git Product home page Git Product logo

wind-turbine-control's Introduction

Wind Turbine Controllers with NREL Fast and Matlab/Simulink

This repository has a few controllers for the 5-MW Reference Wind Turbine for Offshore System Development. The controllers are implemented through Matlab / Simulink.

We start with a simple 1-DOF controller, where we consider only the rotor. The complexity of the system is increased up to 11 DOF, where we use MBC techniques to extract important features, don't worry, the details will be on the appropriate folder. On the control side, we start with a simple feedback controller until we reach an Artificial Neural Network based controller. In the process, we'll see state observer (Kalman Filter), disturbance rejection and gain scheduling, all in due time.

Ok, let's cut to the chase, you're here to see some pretty graphs and poor explanation.

These are the topics covered in this tutorial:

  1. Set-up Environment
  2. Linearization
  3. State Space Feedback
  4. State Space Observer
  5. Artificial Neural Network based Gain Scheduling
  6. Comparing Controllers

This is the "final" result, where we compare a baseline PID controller with a Radial Basis Function Neural Network based controller:

<iframe width="560" height="315" src="https://www.youtube.com/embed/4yMLgmyRM1s" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

Other info and disclaimers:

Controllers designed to the 5MW NREL wind turbine using the MATLAB Simulink and FAST V8. Note: OpenFAST is already available and it's open-source, the reason I'm still using FAST V8 is that my MATLAB is an older version not supported on the most recent FAST distribution.

The FAST software is distributed by the National Renewable Energy Laboratory

Matlab and Simulink are property of Mathworks;

The Matlab version used in this project is the Matlab R20017b

The FAST version used was FAST V8(v8.16.00a-bjj)

For Linearization, I used FAST V7 mainly because the output file (.lin) is easier to extract the desired information.

Although this is an individual repository maintained by the only author, some of the files contained here are modified by the members of the Laboratoire de Mécanique de Normandie (LMN) from the INSA Rouen freely made available as example for anyone who is interested in this topic.

Useful links:

The parameters used for the turbine are given by NREL in here: Definition of a 5-MW Reference Wind Turbine for Offshore System Development

Some controllers are adapted from Advanced Control Design for Wind Turbines; Part I: Control Design, Implementation, and Initial Tests

Fell free to contact me anytime for help, suggestions, critics and insults as well :)

These files are provided without warranty. Use them at your own risk.

wind-turbine-control's People

Contributors

borgestassio avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.