I’m trying to first: tune a PI collective pitch controller for the 5MW reference Wind Turbine using beamdyn module to regulate rotor speed in the 3 Region, following “Advanced Control Design for Wind Turbines; Part I” Control Design/42437.pdf".
The idea is to use scalar values of A,B to calculate the Kp,Ki gains through Eq(3.10).
The procedure ran smoothly, enabling only 1 DOF: GenSpeed during linearization with Elastodyn.
yet when repeating the process using Beamdyn, with the same settings except for the linearization tolerances and step size in the primary input file )in the MBC transformation generated 290*290 AvgA states (again: only enabling generator speed DOF) so I picked the scalar value of: A to be Avg(146,146) which corresponds to 'ED First time derivative of Variable speed generator DOF), B as Avg(146,9) which is the collective pitch angle input corresponding to generator speed state.
The obtained Kp, Ki gains were unfortunately not optimum and gave poor responses.
I also noticed while trying to do gain scheduling (also following the 42437.pdf Reference) by linearizing with various wind speeds to obtain the double value of B that the change of the chosen scalar B change only slightly with different wind speeds (B at a wind speed of 18 m/s = -65.3/ B = -64.7 at wind speed 30 m/s ).
Any help is appreciated. Thank you so much for your attention and participation.
When BeamDyn is enabled, there is no way to make the blades rigid, so, all of the BeamDyn DOFs show up as states in the linearized model derived from OpenFAST. If you want to model a rigid rotor, I would use ElastoDyn to model the blades (with the blade DOFs disabled in ElastoDyn) instead of enabling BeamDyn.
Thank you for your swift answer.
I’m writing my Bachelor thesis about a comparative Analysis of Blade modeling using Beamdyn and Elastodyn so I am repeating the same steps once with Beamdyn and once with Elastodyn.
I have enabled the 1st flap-wise blade mode. yet it did not solve the mentioned issue regarding tuning the PI controller and gain scheduling its gains, is the procedure mentioned in “Advanced Control Design for Wind Turbines; Part I” Control Design/42437.pdf” possible using Beamdyn?
what do you think about the cause of the issue/ the mistake in my approach ?.
I’m not really understanding what you want to do. The paper you reference describes the approach for deriving the baseline controller gains with a rigid rotor model. Do you want to expand this approach to account for rotor flexibility?
Exactly. I’m trying to tune the baseline PI controller to achieve good response running modeling the blades using Beamdyn.
Then to schedule the obtained Kp, Ki gains to expand the operating range of that PI controller over a wide range of wind speed (step and stochastic wind inflow conditions).
Basically, the same approach as the baseline pitch controller in the paper but with the flexible blades modeled using Beamdyn. ( I don’t believe anymore that the procedure detailed in the paper is valid for flexible blades modeled using Beamdyn)
Any hints on the ideal way to achieve that ?
The baseline controller you are referencing is designed for a rigid rotor, but the controller is likely quite applicable for a flexible rotor, whether modeled in ElastoDyn or BeamDyn. Typically blade flexibility would not need to be included in the linear model used by the controller unless an objective of the controller is minimize blade loading.
hi Mr Jonkman
I have a question
How can we ensure the correctness of the controller (for pitch control) that we have set in Simulink?
Should the values of overshoot or settling time or rise time have specific values?
I’m not sure I understand your question. Are you referring to the design of your own controller or implementation of a controller in Simulink that is meant to mimic another controller used as reference?
I am referring to my own controller design
I first started with simple and steady winds and then tried some step winds
I want to know according to which wind I should adjust Kp and Ki coefficients in my controller
In other words, my turbine works between 3 and 25 m/s wind speed and its nominal wind speed is 11 m/s. Now I want to know the Kp and Ki coefficients in my controller should be adjusted according to which wind speed? For example, if I want to reduce overshoot, should I set Kp and Ki in the nominal wind or in the cut-out wind or in the unit step wind?
Generally, we try to tune controllers to have the lowest possible tower loads and generator transients within 20% of the rated generator speed in the worst-case DLC simulations (usually DLC 1.3). However, there are many different ways to tune controllers. I suggest you review some of the literature and see what suits your needs.
This is my own paper, but several tuning methods are discussed in the introduction:
I went to readthedocs about ROSCO and found that I need to install it first
Then when I went to the installation guide, there were explanations that were unclear to me (like picture bellow)