Linearization issue using Fast V7.02

Hi all,

How can I get the averaged state space matrixes for the linearized periodic model? I got the periodic state matrices from the FAST v7 linearization output file. I guess that Eigenanalysis.m can get the azimuth-averaged matrices. But I can’t find the file Eigenanalysis.m in the CertTest file. Can the linearized periodic model from FAST V7 use the MBC procedure for FAST V8?

Thank you!

Yanhua

Dear Yanhua,

Use the MBC tool (nwtc.nrel.gov/MBC), which works with linearization files from both FAST v7 and FAST v8.

Best regards,

Dear Jason,

Thank you so much for your nice answer. I tried to use MBC to get the LTI model from the periodic model. I am using the first-order system matrix. However, I found that only the A matrix to be azimuth-averaged. The matrix B, Bd, C, D, Dd are still time-varying. How can I get these corresponding azimuth-averaged matrix for B, Bd, C, D, Dd?

Thank you.

All the best.

Yanhua

Dear Yanhua,

I’m not sure why the MBC3 script does not automatically azimuth-average the other MBC-transformed matrices (B, Bd, C, D, Dd), but the calculation is easy to implement – simply copy the logic used to calculate MBC_AvgA.

Best regards,

Dear Jason,

Thank you so much. I find the reason why I only got the average-azimuthed A. It is because I run ccm.m which is only for A matrix. Actually, I got 36 linearized models because it’s based on the azimuth angle (10 degrees increase each time) and I attached the .lin file (changed into .txt). After the MBC3.mat, 36 linearized models are still periodic to azimuth angle. So what is the meaning of the MBC transformation? After the MBC3.mat, how to use these 36 linearized models for controller design?

All the best.

Yanhua
init5MW.lin.txt (214 KB)

Dear Yanhua,

I have not looked at your attachment, but I would not use the cce.m script. It is far better to apply MBC3 and then azimuth-average the MBC-transformed matrices. Please see the MBC3 documentation for information on what it is doing. As discussed in my post dated May 07, 2010 in the following forum topic: http://forums.nrel.gov/t/fast-linearized-models/249/4, MBC does not eliminate the periodicity, it simply transforms the rotating states of a model into the nonrotating frame and further azimuth-averaging of the lightly-periodic MBC-transformed matrices (i.e. averaging the 36 matrices into 1 single matrix) has been shown to be quite adequate for controls design.

Best regards,

Dear Jason,

Thanks for your reply. I linearized the model at 36 azimuth angles (10 degrees increase) then obtained the first-order average-azimuthed linear model using MBC. I activated 4 DOFs (Generator DOF and First flapwise blade mode DOF). Now I am confusing about the state vector.

As I know, q is the vector of DOF displacements. So in my case q will be [xr, xbfl1, xbfl2, xbfl3], which means rotor displacement, the flapwise tip displacement of the i-th blade, respectively. Then the state vector for the first-order linearized model will be [xr, xbfl1, xbfl2, xbfl3,xr’,xbfl1’, xbfl2’, xbfl3’]. And I think xr’ is the rotor speed. After MBC transformation, the state vector changes into [xr, xbflo,xbflc, xbfls, xr’,xbflo’,xbflc’, xbfls’], where xbflo,xbflc, xbfls are the zero, cosine, sine components respectively.

I am not sure what the DOF displacement of Generator DOF is? Is it the rotor displacement which can be obtained from the integration of rotor speed. Is it right? If it is not, what it will be? Hope you can help me. Thank you so much.

All the best.

Yanhua

Dear Yanhua,

Your understanding is correct, but I would call xr the perturbation of the rotor-azimuth angle, not the integral of the rotor speed. Keep in mind that the states of the linear model are perturbations of the degrees of freedom (DOFs) about the operating point, not the DOFs themselves.

Best regards,

Dear Jason,

Thanks for your timely reply. I am trying to compare the simulation results between the nonlinear model and the obtained linearized model. But I am not sure how to compare. My linearization is done under wind speed 18m/s with 0.2 vertical shear, 14.75-degree pitch angle. According to you, after MBC transformation, the state vector changes into [azimuth-r, xbflo,xbflc, xbfls, azimuth-r’,xbflo’,xbflc’, xbfls’], where azimuth-r means the rotor-azimuth angle. How can I get the perturbations of the degrees of freedom (DOFs) about the operating point? For example, xbflo1=xbflo-xbflop, where xbflo1 means the perturbation of the flapwise tip displacement zero component, xbflo is the real time value from the sensor, xbflop is the value in this operating point. Can you give me some hints? I am really confusing how to evaluate the obtained linearized model. Thank you.

All the best.

Yanhua

Dear Yanhua,

It sounds like you understand how the perturbations are defined. I’m not what else I can explain. Perhaps searching the forum for other FAST linearization-related discussion would be of use to you?

Best regards,

Dear Jason,
I intend to linearise the NREL 5MW turbine model in region 3 of operation. About the linearization of the file I put the annex.I have used MAC software to calculate the matrix of the state space model and build the model in simulink.But I don’t know how to determine the value of input and wind disturbance. Can you help me?

Dear Zhe.Zhang,

The inputs (u) and disturbances (ud) are the perturbations of the controller input (collective blade-pitch angle) and wind disturbance (wind speed) about their operating point values. I would expect that you’d set the wind disturbance to be what you want (e.g. 1 m/s steps) and that you’d design/implement a controller to calculate the controller input derived from the system outputs.

Best regards,

Dear Jason,
Thanks for your timely reply.Are the initial values for these states all zero?

Dear Zhe.Zhang,

You can set the initial states in your Simulink model. See the MATLAB/Simulink documentation for more information.

Best regards,

Dear Jason,
I know that the dimensions of these state vectors are set according to the DOF in FAST, but how are the initial values of these states determined, they represent the deviation from the set point, so are they all 0?
Best regards,

Dear Zhe.Zhang,

I’m not an expert on Simulink, but I know that you can set the initial states in the Simulink model. Please check the MATLAB/Simulink documentation for more information. I would guess that the states are initialized to zero if not set.

Best regards,

[attachment=2]NRELOffshrBsline5MW_Floating_TLP.lin.docx[/attachment]Dear Jason,
According to your suggestion, I added controller and disturbance input to the state space model, but the simulation results are very different from what I expected. I suspect that my FAST linearization is wrong. Can you help me?[attachment=1]QQ截图20191024112617.png[/attachment][attachment=0]QQ截图20191024112648.png[/attachment]

Dear Zhe.Zhang,

Just a couple comments:

  • Did you post-process your linear model to convert the states in the rotating frame to the fixed frame and azimuth-average the state matrices? And did you eliminate the rotor-azimuth state from your state-space model (reducing the total states from 26 to 25). See the following forum topic for more information: http://forums.nrel.gov/t/fast-linearization-v7/1680/17.
  • The linear model is only valid for perturbations about the operating point, so, I would not expect that you’d add the operating point values (12.1 rpm and 14.74 degrees) to your inputs and outputs.

Best regards,

Dear Jason,
I use the GetMats command to obtain the six matrices of AvgAMat, AvgBMat, AvgBdMat, AvgCMat, AvgDMat, and AvgDdMat as the coefficient matrix of the state space model. The mbc3 command can only get the MBC_AvgA matrix. Should I modify the mbc3 file?
Best regards,

Dear Zhe.Zhang,

Yes, I would apply MBC before azimuth-averaging the matrices, otherwise, many of the rotation-related terms will not be well represented in the linear model.

Best regards,