ROSCO v2.10.6 adds windIO support and OpenFAST v5.0 compatibility, and improves fixed-blade-pitch (FBP) control for marine hydrokinetic (MHK) turbines. The DISCON.IN format has not changed, so existing DISCON files work as they are.
Compatibility
- The toolbox now requires Python 3.11 or newer. Python 3.9 and 3.10 are no longer supported.
- Tuning now requires OpenFAST v5.0 input files (
openfast_io~=5.0). If you need to tune from OpenFAST v4.2 inputs, use v2.10.5. Turbineno longer reads the ElastoDyn/BeamDyn blade files, and theTurbine.bld_flapwise_dampattribute has been removed.
What's new
windIO support
- Convert between the
controlsection of a windIO turbine file and ROSCO DISCON parameters withwindio_to_discon()anddiscon_to_windio()inrosco.toolbox.inputs.windio. Rotor speeds in windIO are converted to generator speeds in ROSCO using the gearbox ratio. Examples/34_discon_windio.pyshows the conversion in both directions. windIO turbine files for the IEA-15, IEA-22 and NREL-5MW are inExamples/example_inputs/windio/.
OpenFAST v5.0
- The toolbox reads OpenFAST v5.0 input files, and the example models in
Examples/Test_Cases/have been updated to v5.0.
Fixed-blade-pitch control for MHK turbines
- You can now soft-start an FBP rotor with
PRC_Mode = 2by rampingPRC_R_Torque, which now de-ratesVS_MaxTqin FBP mode. Existing configurations behave the same, becausePRC_R_Torquedefaults to 1. - The toolbox now rejects FBP settings that ROSCO would reject at runtime, and warns when
VS_ControlModedoesn't matchVS_FBP. - Fixed the below-rated operating schedule and the minimum rotor speed limits that the toolbox generates for FBP.
- The MHK documentation has been substantially expanded. It now covers variable-pitch control, alternate Region 3 schedules, and rotor speed limits and cavitation.
Examples/31_fixed_pitch_mhk.pynow walks through three verified case studies.
Other changes
CaseLibrary.sweep_control_paramscan now sweep a DISCON parameter (discon_param) or a list of full controller configurations (param_sweeps). Each case gets its own copy of the parameters.- The default
PRC_WindSpeedsandPRC_GenSpeedsare now based on the turbine instead of hard-coded values. VS_ControlModeis now correctly described as the below-rated torque mode.- The
ControllerInterfacedocstrings now say that yaw inputs are in radians. load_ascii_outputno longer fails on rows with the wrong number of columns.- The README explains how to get a precompiled
libdisconfrom the conda-forge package, so you don't have to compile ROSCO. - Linux wheels are built on
manylinux_2_28, and 32-bit Linux (i686) wheels are no longer built.
Pull requests
- WindIO Support by @dzalkind in #492
- Account for gearbox ratio in windio conversion by @dzalkind in #498
- OpenFAST 5.0 Support by @dzalkind in #503
- Update documentation errors by @skygering in #506
- Fixed Blade Pitch Control Updates for MHKs by @dzalkind in #508
- ROSCO v2.10.6 by @dzalkind in #509
New Contributors
- @skygering made their first contribution in #506
Full Changelog: v2.10.5...v2.10.6