Rosco

Latest version: v2.9.3

Safety actively analyzes 641872 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 4

2.9.2

Fixes to compilers and pypi

2.9.1

Minor update from [v2.9.0](https://github.com/NREL/ROSCO/releases/tag/v2.9.0) with better error handling around the Cp surface reading.

2.9.0

raaw1.4
This control library will be used in the RAAW validation campaign. It includes the rotor position control (RPC) used in the modeling studies.

By setting `OL_Mode` to 2 and including the open loop input (`OL_Filename`), the controller will track the rotor position (Azimuth) using the generator torque. Blade pitch will follow the prescribed open loop input exactly. The nacelle yaw position will be controlled in the open loop if `Ind_YawRate` is non-zero.

Setting `OL_Mode` to 0 will run ROSCO normally as a reference controller.

2.9.0rc1

2.8.0

Major Updates:
- Optional inputs: users do not have to set all inputs to ROSCO. Whether an input is optional is determined by the [control flags](https://github.com/NREL/ROSCO/blob/e3b7db779ad9e7bea5dea692e92f52b10116cf02/Test_Cases/IEA-15-240-RWT-UMaineSemi/DISCON-UMaineSemi.IN#L8).
- Cable control: users can control OpenFAST cables in MoorDyn and SubDyn using ROSCO. Open loop and [user-defined control](https://github.com/NREL/ROSCO/blob/e3b7db779ad9e7bea5dea692e92f52b10116cf02/ROSCO/src/Controllers.f90#L695) schemes are available. [`Examples/22_cable_control.py`](https://github.com/NREL/ROSCO/blob/main/Examples/22_cable_control.py) sets up a floating turbine with cable control and applies an open loop mooring control to move the turbine near the (0,0) (surge, sway) location. In the [DISCON](https://github.com/NREL/ROSCO/blob/e3b7db779ad9e7bea5dea692e92f52b10116cf02/Test_Cases/IEA-15-240-RWT-UMaineSemi/DISCON-UMaineSemi.IN#L168) or [tuning yaml](https://github.com/NREL/ROSCO/blob/e3b7db779ad9e7bea5dea692e92f52b10116cf02/Tune_Cases/IEA15MW_cable.yaml#L58), users specify the indices of the cable length control in the avrSWAP; these indices can be found in the ServoDyn summary file.
- Structural control: users can control OpenFAST structural controllers (tuned mass dampers and added forces) via ROSCO. Open loop and [user-defined control](https://github.com/NREL/ROSCO/blob/e3b7db779ad9e7bea5dea692e92f52b10116cf02/ROSCO/src/Controllers.f90#L770) schemes are available. [`Examples/23_structural_control`](https://github.com/NREL/ROSCO/blob/main/Examples/23_structural_control.py) sets up the IEA-15MW semi-submersible floating platform with structural controls as added forces to emulate ballast control for even keel; it relies on the current develop branch of OpenFAST (to be released in v3.5.0) to apply the added force. Users specify the indices to the avrSWAP in the [DISCON](https://github.com/NREL/ROSCO/blob/e3b7db779ad9e7bea5dea692e92f52b10116cf02/Test_Cases/IEA-15-240-RWT-UMaineSemi/DISCON-UMaineSemi.IN#L173) or [tuning yaml](https://github.com/NREL/ROSCO/blob/e3b7db779ad9e7bea5dea692e92f52b10116cf02/Tune_Cases/IEA15MW_ballast.yaml#L58), as specified by the ServoDyn summary file.
- Active wake control: users have two methods, [detailed here](https://github.com/NREL/ROSCO/blob/e3b7db779ad9e7bea5dea692e92f52b10116cf02/Examples/20_active_wake_control.py#L9), for adding pitch offsets, e.g., the helix method, to the collective pitch angle for better wake dissipation. [`Examples/20_active_wake_control.py`](https://github.com/NREL/ROSCO/blob/main/Examples/20_active_wake_control.py) runs several different active wake control modes.


Minor Updates:
- [The NREL 2.8 MW reference turbine](https://github.com/NREL/ROSCO/tree/main/Test_Cases/NREL_2p8_127) has been added to the set of tuned turbine inputs. Pitch control gains were determined using [WEIS control optimization](https://github.com/WISDEM/WEIS/tree/main/examples/02_control_opt) to minimize tower DELs with a constraint on the maximum generator speed in DLC 1.2. IPC is also tuned for this model. [`Examples/12_tune_ipc.py`](https://github.com/NREL/ROSCO/blob/main/Examples/12_tune_ipc.py) was updated to test all the IPC saturation modes.
- File I/O and plotting: an updated [plotting notebook](https://github.com/NREL/ROSCO/blob/main/ROSCO_toolbox/ofTools/fast_io/plot_FAST.ipynb) is available to users. The [`output_processing.py`](https://github.com/NREL/ROSCO/blob/main/ROSCO_toolbox/ofTools/fast_io/output_processing.py) script was parallelized.

2.7.0

Added Features:
- IPC saturation modes (IPC_SatMode)
- Pitch actuator faults: simulate constant blade pitch offsets. More is possible in future releases.
- Ability to initialize filters with specific values
- Support for latest OpenFAST version (v3.4.0)
- Add a tool for updating DISCONs from older ROSCO versions

Bug Fixes:
- Initialize `NacIMU_FA_Acc` and `FA_Acc` to 0. Initial conditions would result in offset of floating feedback pitch command
- Fix cases where debug outputs ***********
- Add nacelle heading (NacHeading) input to ROSCO
- Add method for closing dll in control interface on Windows
- Fix units in sim.py

Software Changes:
- Support for the latest numpy version (1.24)
- Re-named examples to represent the features they demonstrate
- Refactored ratelimit function to store it's own previous signal value
- Features that rely on collective blade pitch signal now use average of 3 current blade pitch values (useful in IPC cases)
- Clean up file readers/writers to sync with WEIS analogues
- Update features that rely on latest version of pyFAST
- Enable use of runFAST when `python setup.py install` is used.
- Add tune.py for specifically translating tuning yaml to controller objects and updating discon files
- When reading turbine model from openfast, only read necessary input module files

raaw1.3
This controller contains individual pitch control updates for the RAAW project

What's Changed
* Add OpenFAST channels that Simulink reads by dzalkind in https://github.com/NREL/ROSCO/pull/135
* ROSCO 2.6.0 by dzalkind in https://github.com/NREL/ROSCO/pull/162
* Adding pitch actuator fault by mayankchetan in https://github.com/NREL/ROSCO/pull/163
* Various Bug Fixes by dzalkind in https://github.com/NREL/ROSCO/pull/167

New Contributors
* mayankchetan made their first contribution in https://github.com/NREL/ROSCO/pull/163

**Full Changelog**: https://github.com/NREL/ROSCO/compare/raaw1.2...raaw1.3

Page 1 of 4

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.