Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Extend ROSCO for MHK #257

Merged
merged 49 commits into from
Sep 19, 2023
Merged

Extend ROSCO for MHK #257

merged 49 commits into from
Sep 19, 2023

Conversation

AthulKrishnaSundarrajan
Copy link
Contributor

@AthulKrishnaSundarrajan AthulKrishnaSundarrajan commented Aug 3, 2023

Description and Purpose

Major Updates

  • Extending ROSCO to support the control of marine hydrokinetic turbines (MHK), including changing fluid properties, a Test_Case and example.
  • A new generator speed reference calculation that does not depend on the wind speed estimate.
  • Any number of notch filters can be applied to the generator speed and/or tower top acceleration signals

Minor Changes

  • Added VS_ConstPower as a specific control mode, separate from how the reference generator speed is calculated
  • Added sweep_yaml_input to CaseLibrary for sweeping any single control_parameter (in the tuning yaml)
  • Changes in run_FAST to improve flexibility and ability to run in WEIS environments
  • Tidying of DISCON writer

Type of change

What types of change is it?
Select the appropriate type(s) that describe this PR

  • Bugfix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (non-backwards-compatible fix or feature)
  • Code style update (formatting, renaming)
  • Refactoring (no functional changes, no API changes)
  • Documentation update
  • Maintenance update
  • Other (please describe)

TODO Items General:

  • Add example/test for new feature
  • Update registry
  • Run testing

TODO Items API Change:

  • Update docs with API change
  • Run update_rosco_discons.py in Test_Cases/
  • Update DISCON schema

Github issues addressed, if one exists

Examples/Testing, if applicable

@@ -198,7 +198,10 @@ def tune_controller(self, turbine):
rated_rotor_speed = turbine.rated_rotor_speed # Rated rotor speed (rad/s)

# ------------- Saturation Limits --------------- #
turbine.max_torque = turbine.rated_torque * self.controller_params['max_torque_factor']
if self.VS_ControlMode == 4:
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are you using this? Could max_torque_factor just be used in the same way?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Its not being used right now, and yes max_torrque_factor could be used.
Its something to increase the max torque when working with fixed pitch controls

@dzalkind
Copy link
Collaborator

dzalkind commented Sep 6, 2023

comp_outputs.pdf
Testing results: nearly identical, only changes due to ICs. New VS_ControlMode not yet used.

@dzalkind dzalkind merged commit 63bcb0d into NREL:develop Sep 19, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants