Learizing Baseline 5MW Wind Turbine with FAST

Dear Ali,

Can you show a screen shot with the actual error message and several preceding lines before it?

Best regards,

Hello that the screen shot of the simulation

Dear Ali,

The first error indicates that ElastoDyn cannot properly read the AeroDyn input file. It looks like you are trying to use an AeroDyn v15 input file, but you haven’t set CompAero to 2 in the FAST primary input file to enable AeroDyn v15. If CompElast is set to 1 and CompAero is set to 1, the blade discretization specified in AeroDyn v14 will be used for discretization of the blade structural model of ElastoDyn, in which case ElastoDyn will read the blade discretization out of the AeroDyn v14 input file (in this case, input BldNodes in ElastoDyn is unused). FAST throws an error because you’ve specified an AeroDyn v15 input file. To solve the problem, set CompAero to 2 to enable AeroDyn v15.

Best regards,

Hi Dr.Bonnie;
why i am not able to download standalone AeroDyn v14 or v15 from the website. And i also have a doubt that the can we use “NEWTOWER” in TwrShd in FAST8.10. i get error when i used in Test01AD.ipt , and also there is no parameter called TwrPotent in Test01AD.ipt can we just include in that file, i just want to calculate the moment on blades due to shear force, in one of the posts you have mentioned to make these changes. I have enclosed my AD.ipt file what i am using how can we modify to makes changes in these parameters above!! kindly help me in this aspect…
AWT-27CR aerodynamic parameters for FAST certification test #1.
SI SysUnits - System of units for used for input and output [must be SI for FAST] (unquoted string)
BEDDOES StallMod - Dynamic stall included [BEDDOES or STEADY] (unquoted string)
NO_CM UseCm - Use aerodynamic pitching moment model? [USE_CM or NO_CM] (unquoted string)
DYNIN InfModel - Inflow model [DYNIN or EQUIL] (unquoted string)
SWIRL IndModel - Induction-factor model [NONE or WAKE or SWIRL] (unquoted string)
0.005 AToler - Induction-factor tolerance (convergence criteria) (-)
PRANDtl TLModel - Tip-loss model (EQUIL only) [PRANDtl, GTECH, or NONE] (unquoted string)
NONE HLModel - Hub-loss model (EQUIL only) [PRANDtl or NONE] (unquoted string)
“Wind/Shr12_30.wnd” WindFile - Name of file containing wind data (quoted string)
42.672 HH - Wind reference (hub) height [TowerHt+Twr2Shft+OverHang*SIN(ShftTilt)] (m)
0.3 TwrShad - Tower-shadow velocity deficit (-)
1.0 ShadHWid - Tower-shadow half width (m)
2.432 T_Shad_Refpt - Tower-shadow reference point (m)
1.225 AirDens - Air density (kg/m^3)
1.4639e-5 KinVisc - Kinematic air viscosity (m^2/sec)
0.004 DTAero - Time interval for aerodynamic calculations (sec)
10 NumFoil - Number of airfoil files (-)
“AeroData/AWT27_05.dat” FoilNm - Names of the airfoil files [NumFoil lines] (quoted strings)
“AeroData/AWT27_15.dat”
“AeroData/AWT27_25.dat”
“AeroData/AWT27_35.dat”
“AeroData/AWT27_45.dat”
“AeroData/AWT27_55.dat”
“AeroData/AWT27_65.dat”
“AeroData/AWT27_75.dat”
“AeroData/AWT27_85.dat”
“AeroData/AWT27_95.dat”
10 BldNodes - Number of blade nodes used for analysis (-)
RNodes AeroTwst DRNodes Chord NFoil PrnElm
1.81265 5.80 1.2573 0.859 1 NOPRINT
3.06995 5.20 1.2573 1.045 2 NOPRINT
4.32725 4.66 1.2573 1.145 3 NOPRINT
5.58455 3.73 1.2573 1.124 4 NOPRINT
6.84185 2.64 1.2573 1.054 5 NOPRINT
8.09915 1.59 1.2573 0.976 6 NOPRINT
9.35645 0.73 1.2573 0.885 7 NOPRINT
10.61375 0.23 1.2573 0.775 8 NOPRINT
11.87105 0.08 1.2573 0.651 9 NOPRINT
13.12835 0.03 1.2573 0.493 10 NOPRINT

Dear Srinivasa,

We are having a trouble with our website (nwtc.nrel.gov/), preventing people from downloading archives. Hopefully this will be resolved soon.

I’m not sure what error you are getting, but you can use the NEWTOWER feature in AeroDyn v14 within FAST v8.10. The NEWTOWER feature is documented here. (Because the website is not functioning properly, I’ve also attached this file to this post.) To summarize, if the keyword NEWTOWER is used in place of a numerical value for TwrShad in the AeroDyn v14 input file, then inputs ShadHWid and T_Shad_Refpt are replaced with inputs TwrPotent and TwrShadow and two new inputs, TwrFile and CalcTwrAero, added to the input file, following input TwrShadow.

I hope that helps.

Best regards,
NewTower.pdf (214 KB)

Hi, Jason,

I am incorporating a flap control scheme to FAST. Now it is running properly via FAST 8 and Simulink.
Right now, I want to study the effects of flap on the turbine frequency.
As you suggested in other posts, I can do a direct FFT on my time domain data and get a PSD plot (attached).
However, the corresponding mode for the frequency is not very clear in this way.
For different output channel from the same simulation case, the frequencies are not reduced/increased in the same way. Is this normal?

So I plan to use the linearization feature in FAST 7. But it cannot interface with Simulink.
Does that mean I have to direct code my flap control scheme in the FAST 7 and perform the linearization in order to study the flap effects?

Thank you for your help.
Xiao

Ps:
the PSD was obtained from:
random full field wind input
Von Karman spectrum
4m/s mean wind speed
600s simulation time


Dear Xiao Sun,

I would expect different output channels to have different PSDs and different influences from control inputs.

I’m not familiar with how you’ve added “flap control” into FAST, so, I’m not sure I can help you linearize it. You are correct that the linearization feature of FAST v7 is not available in the Simulink interface; the linearization feature of FAST v7 is only available in the executable version. That said, simply incorporating your “flap control” logic directly into the FAST source code does not mean it will be possible to linearize within FAST.

Best regards,

Hi, Jason,

Thanks for the comments.

I used the MultiTab function in the FAST to virtually incorporate my flap.
The basic idea is like this:

  1. get the M_y moment of the output as input signal for the PID controller
  2. use the PID controller to get flap angle as output signal
  3. use the flap angle output signal to search in the MultiTab and find the corresponding aerodynamic coefficients, thereby changing the external aerodynamic forces.
    I think two things might affect the linearization: the disturbance in the external forces and the additional mass due to the introduction of flap. (I ignore the stiffness contribution from the flap)
    Am I right? Can you give me some suggestions if I want to do the linearization?

Thanks
Xiao

Dear Xiao Sun,

Once an operating point has been found, the linearization process is all about computing the Jacobians relating the state derivatives and outputs with respect to the states and control inputs and wind disturbances. It sounds like you want the flap angle to be a control input; you’ll have to determine if the logic you’ve added for your flap control includes states. I suggest studying the FAST_Lin.f90 source file of FAST v7 to see how we’ve performed the linearization of the rest of FAST.

Best regards

Hi Jason,

By Activating GenDOF, 2 row/column is added to the state space matrices. Could you please explain what are the units of this variables?
for examle, in the output “.lin” file it says:
Row/column 3 = Variable speed generator DOF (internal DOF index = DOF_GeAz)
I suppose it is the generator speed. but since given state matrices contain:
Row/column 4 to 6 = First derivatives of row/column 1 to 3,
I wonder how derivative of speed (angular acceleration) can be a state? There is also no explanation for word “DOF_GeAz” in the User Manual. I would be grateful if you kindly explain to what states these two variables are associated.

Thanks,
Elham

Dear Elham,

DOF_GeAz is an internal parameter of FAST v7 identifying the index of the generator DOF within the internal equations of motion. The generator DOF is enabled when GenDOF is set to True in the FAST input file.

When the GenDOF is enabled, 2 states are added to the FAST v7 linearization output:

  • The azimuth angle of the generator DOF, in radians
  • The first derivative of the azimuth angle of the generator DOF i.e. the generator speed, in rad/s

I hope that helps.

Best regards,

Dear Jason,

Thank you for your quick reply.
So as I understand, if the first derivative of the azimuth angle of the generator is the generator speed (lets call it Omega), then azimuth angle of the generator DOF (i.e. Theta ) would be the angle of generator’s rotor angle? please correct me if I am wrong.
If so, why the generator’s rotor angle should affect other states? When the generator speed (Omega) is constant, then Theta will ramp up to infinity which means the system is internally unstable if other states are affected by theta.
For example this are the results I have got for linearizing WindPACT 1.5 MW Baseline @ 18 m/s wind speed:

Row/column 1 = 1st tower fore-aft bending mode DOF (internal DOF index = DOF_TFA1)
Row/column 2 = 1st tower side-to-side bending mode DOF (internal DOF index = DOF_TSS1)
Row/column 3 = Variable speed generator DOF (internal DOF index = DOF_GeAz)
Row/column 4 to 6 = First derivatives of row/column 1 to 3.

A = [ 0 0 0 1.0000 0 0
0 0 0 0 1.0000 0
0 0 0 0 0 1.0000
-6.5200 0.0008 0.0034 -0.2615 -0.0635 -1.7890
-0.0015 -6.5630 0.0009 -0.0243 -0.0189 -0.0254
-0.0023 0.1356 0.0009 -0.0583 -0.0107 -0.5168]

Here column 3 with non zero elements of A(4,3),A(5,3) and A(6,3) are the coefficients associated to Theta. which means some of the states will be affected by Theta.
Please let me know if I am missing something here. Thank you very much.

Best Regards,
Elham

I put a screenshot of matrices for convenience.

Dear Elham,

That is correct.

Please recall that the linearization output of FAST v7 involve periodic matrices (periodic with the rotor azimuth angle). To derive a linear time-invariant model, as I suspect you want, one would normally apply MBC for 3-bladed rotors: (nwtc.nrel.gov/MBC), followed by azimuth-averaging. Of course, in your case you don’t have any states or inputs in the rotating frame, so MBC is not needed and you can simply azimuth-average the matrices. After doing so, I suspect you’ll find that the column associated with the generator azimuth angle will be zero, allowing you to eliminate the generator azimuth angle as a state.

Best regards,

Dear Jason,

Thank you for your reply. I downloaded the MBC and gave it the .lin file I had. “GetMats” reads the file and fetches the FAST linearization output file information. However mbc3, states that there are no rotating states (The green box in the screen shot).
I set the NAzimStep = 1000, and Tolerences on 0.0001. It calculates the average A,B matrix, but as you can see the vector associated with Generator Azimuth is although very small but not still zero (See the Red box).
By increasing NAzimStep those values shrink, but they asymptote on these values. So I am wondering, am I using mbc3 code correctly?
Thanks for your helps.
Elham

Dear Elham,

Yes, your model has no states in the rotating frame; in your case, you only need to azimuth-average the matrices without first applying MBC (applying MBC would do no harm as it would have no influence at all).

The very small numbers remaining are the result of numerical round-off in the numerical solution and output. Using FAST compiled in double precision and/or outputting matrices in higher precision would likely reduce the values even further, but my guess is they would still not be exactly zero unless the linearization was formed analytically and all digits of precision were kept in the output. However, for all practical purposes, the values are zero (7 orders of magnitude less than the most dominant term) and you can safely eliminate the generator azimuth angle as a state.

Best regards,

Hello Jonson
If I understand well, according to the post Fri May 13, 2016 7:05 am , we should eliminate the third ligne and the third colomn in order to obtain the system [3x3] correspond to the three DOF enbled (Rotspeed, GedSpeed DrTr)
You have said in the post of Wed Sep 17, 2014 2:24 pm

Can you explain plus

Dear Ali,

By saying, “Δωt = Δωg + Δδtg” (using the nomenclature from the original post: Fast Linearized Models - #13 by Jason.Jonkman), I simply meant that the rotor azimuth state is the sum of the generator-azimuth state and the drivetrain-torsion angle state.

I hope that helps.

Best regards,

Dear Sir
The linearization of the CART wind turbine model, as mentioned by Wright, with FST V7 by considiring three DOF (generator speed, drive train flexibility and the balde falpwise bending moment as system with eight states is generated which are the deflexion and the velocity for each DOF. In the control system the author have remplaced the flapwise DOF for the two baldes with the symetric flapwise bending, and thus the matrix states is given by:
Amod = [[0,0,0,1,0
0,0,0,0,1
AvgAMat(5,2),2AvgAMat(5,3),AvgAMat(5,5),AvgAMat(5,6),2AvgAMat(5,7)
AvgAMat(6,2),2AvgAMat(6,3),AvgAMat(6,5),AvgAMat(6,6),2AvgAMat(6,7)
AvgAMat(7,2),(AvgAMat(7,3)+AvgAMat(7,4)),AvgAMat(7,5),AvgAMat(7,6),(AvgAMat(7,7)+AvgAMat(7,8))]]
I am demanding some clarifications:
Why considering the symetric flapwise mode rather than the flapwise mode for the two baldes
How the new state matrix is obtained from the origine state matrix given by FAST V7
If we apply the same process a three balde WT how about the satate mtrix when considering the asymmetric flapwise
If i want to extract the two parameters ( symetric flapwise deflexion and velocity) in Simulink, how to do

Dear Ali,

I don’t have any experience with this approach myself, so, I won’t answer your questions directly. But Alan Wright discusses his 5-state model in section 5.4 of his Ph.D. thesis-turned NREL report: nrel.gov/docs/fy04osti/35816.pdf.

Best regards,