Linearization issue using Fast V7.02

Provide feedback, request enhancements, and get help with wind-turbine computer-aided engineering tools.

Moderators: Bonnie.Jonkman, Jason.Jonkman

Babak.Gavgani
Posts: 29
Joined: Sat Mar 14, 2020 12:03 pm
Organization: ---
Location: Belgium

Re: Linearization issue using Fast V7.02

Postby Babak.Gavgani » Sat May 30, 2020 1:56 am

Dear Jason,

I don’t have two distinct models.
At first I find the optimal value for the TSR and Cp of the turbine.
Next I do the calculations in opposite direction: If I set that turbine to rotate at fixed optimal speed (for its corresponding wind speed) and I find the TSR and Cp values, they should be the optimal values that I had on the first step. But it is not!!
Because: TSR = (R*rotor speed)/v OR
rotor speed = (TSR *v)/R

Bests,

Jason.Jonkman
Posts: 5057
Joined: Thu Nov 03, 2005 4:38 pm
Location: Boulder, CO
Contact:

Re: Linearization issue using Fast V7.02

Postby Jason.Jonkman » Sat May 30, 2020 8:12 am

Dear Babak,

To answer your question, I need to understand what the difference is between these two FAST solutions:

Solution 1
At first I find the optimal value for the TSR and Cp of the turbine.

Solution 2
Next I do the calculations in opposite direction: If I set that turbine to rotate at fixed optimal speed (for its corresponding wind speed) and I find the TSR and Cp values, they should be the optimal values that I had on the first step. But it is not!!
Because: TSR = (R*rotor speed)/v OR
rotor speed = (TSR *v)/R

What is the difference between how these two FAST solutions are set up or post-processed?

Best regards,
Jason Jonkman, Ph.D.
Senior Engineer | National Wind Technology Center (NWTC)

National Renewable Energy Laboratory (NREL)
15013 Denver West Parkway | Golden, CO 80401
+1 (303) 384 – 7026 | Fax: +1 (303) 384 – 6901
nwtc.nrel.gov

Babak.Gavgani
Posts: 29
Joined: Sat Mar 14, 2020 12:03 pm
Organization: ---
Location: Belgium

Re: Linearization issue using Fast V7.02

Postby Babak.Gavgani » Sun May 31, 2020 5:00 am

Dear Jason,

I want to do linearization around MPP. So I need to have the rotor speed at MPP and then do linearizations.
--But how to find rotor speed at MPP? To do this, I find the optimal TSR and then calculate the rotor speed at MPP for its corresponding constant wind speed. The values are surely correct.

The problem is when:
I just fix the wind speed to constant value and I set the optimal rotor speed to its corresponding wind speed. But there is an inconsistency in the FAST output for Cp and TSR while setting rotor speed to its MPP value.
All DOFs are disabled.
I expect to see that the TSR and Cp are the optimal values but they are not and Cp is lower than Cpmax!!!
But why?
The wind speed is constant and the turbine is set to rotate at fixed rotor speed at MPP. SO the TSR and Cp must be the optimal values.

Kind regards,

Jason.Jonkman
Posts: 5057
Joined: Thu Nov 03, 2005 4:38 pm
Location: Boulder, CO
Contact:

Re: Linearization issue using Fast V7.02

Postby Jason.Jonkman » Mon Jun 01, 2020 6:42 am

Dear Babak,

To debug this, I need to have the input files associated with Solution 1 and Solution 2 to see what is different between the two solutions. Please attach those.

Best regards,
Jason Jonkman, Ph.D.
Senior Engineer | National Wind Technology Center (NWTC)

National Renewable Energy Laboratory (NREL)
15013 Denver West Parkway | Golden, CO 80401
+1 (303) 384 – 7026 | Fax: +1 (303) 384 – 6901
nwtc.nrel.gov

Babak.Gavgani
Posts: 29
Joined: Sat Mar 14, 2020 12:03 pm
Organization: ---
Location: Belgium

Re: Linearization issue using Fast V7.02

Postby Babak.Gavgani » Tue Jun 02, 2020 11:53 am

Dear Jason,

Thanks for your reply.
The solution 1 is just to verify optimal values of TSR and Cp. In different literatures, these values are TSR =5.6 and Cpmax = 0.42. So I have just included the files for solution 2. Please find in the attachment the files. 10kW wind turbine is considered.

All DOFs are disabled.
Wind speed is set to 10m/s and I have fixed the rotational speed to the MPP of its corresponding wind speed (10m/s) and pitch angle is fixed at its optimal value (7.5°).
The rotor speed has been calculated as below:
Rotor Speed at MPP = (Optimal TSR)*(Wind Speed)/Rotor radius
Optimal TSR = 5.6; Wind speed =10m/s; Rotor radius = 2.9m SO rotor speed at MPP = 19.31034 rad/s or 184.4002 rpm
The optimal values for TSR and Cp are 5.6 and 0.422, respectively. These values are surely correct.

I obtain the Cp and TSR values from Aerodyn.
If you debug it, you will see that the Cp and TSR are not the optimal values.

Kind regards,
Babak
Attachments
Files.7z
(9.06 KiB) Downloaded 18 times

Jason.Jonkman
Posts: 5057
Joined: Thu Nov 03, 2005 4:38 pm
Location: Boulder, CO
Contact:

Re: Linearization issue using Fast V7.02

Postby Jason.Jonkman » Tue Jun 02, 2020 12:11 pm

Dear Babak,

I'm not an expert on the SWRT model, and I'm not sure what literature you are referring to, but my guess is this OpenFAST models does not predict the same power coefficient curve that you have found in literature. I would suggest trying to generate Solution 1 yourself using this OpenFAST model to better understand the difference.

I briefly looked at your input files, and nothing sticks out to me as incorrect. I did notice that you've set the fixed blade-pitch angles to be 7.5 degrees, whereas the sample SWRT models provided in the OpenFAST r-test use 11.44 degrees; I'm not sure I know why these angles are different.

Please be aware that if you decide to enable structural DOFs, that OpenFAST does not yet support tail-fin aerodynamics or furling degrees of freedom (NREL has not yet been funded to implement this functionality into OpenFAST). If you need to model these physics, I suggest downgrading back to FAST v7.

Best regards,
Jason Jonkman, Ph.D.
Senior Engineer | National Wind Technology Center (NWTC)

National Renewable Energy Laboratory (NREL)
15013 Denver West Parkway | Golden, CO 80401
+1 (303) 384 – 7026 | Fax: +1 (303) 384 – 6901
nwtc.nrel.gov

Shiv.Malhotra
Posts: 4
Joined: Fri Mar 20, 2020 3:49 am
Organization: University of Melbourne
Location: Australia

Re: Linearization issue using Fast V7.02

Postby Shiv.Malhotra » Sun Sep 06, 2020 9:14 pm

Hi Attila,

I am doing exactly what you doing but not bale to generate .lin files that can be utilize to obtain a state space A, B, C, D matrix. Can you please help with generating .lin file in fast 7 using matlab workspace and others way of doing it.

Kind regards
Shiv




Attila.Veress wrote:Dear Forum Members,

First, I would like to thank the NREL team for their hard work in the development of these Software Tools.

Following, I will post the problem that I have with the linearisation.

I intend to linearise the NREL 5MW turbine model in region 3 of operation, in order to design control strategies. I set up the linearisation with all the changes as describe in NREL user manual pages 39-44.

For the liniarisation, I use a wind profile hitting the turbine from front with a wind velocity of 14 m/s.

The fst file for linearisation is as follows

Code: Select all

--------------------------------------------------------------------------------
------- FAST INPUT FILE --------------------------------------------------------
NREL 5.0 MW Baseline Wind Turbine for Use in Offshore Analysis.
Properties from Dutch Offshore Wind Energy Converter (DOWEC) 6MW Pre-Design (10046_009.pdf) and REpower 5M 5MW (5m_uk.pdf); Compatible with FAST v7.02.
---------------------- SIMULATION CONTROL --------------------------------------
False       Echo        - Echo input data to "echo.out" (flag)
   1        ADAMSPrep   - ADAMS preprocessor mode {1: Run FAST, 2: use FAST as a preprocessor to create an ADAMS model, 3: do both} (switch)
   2        AnalMode    - Analysis mode {1: Run a time-marching simulation, 2: create a periodic linearized model} (switch)
   3        NumBl       - Number of blades (-)
999.0      TMax        - Total run time (s)
   0.0125   DT          - Integration time step (s)
---------------------- TURBINE CONTROL -----------------------------------------
   0        YCMode      - Yaw control mode {0: none, 1: user-defined from routine UserYawCont, 2: user-defined from Simulink/Labview} (switch)
9999.9      TYCOn       - Time to enable active yaw control (s) [unused when YCMode=0]
   0        PCMode      - Pitch control mode {0: none, 1: user-defined from routine PitchCntrl, 2: user-defined from Simulink/Labview} (switch)
   0.0      TPCOn       - Time to enable active pitch control (s) [unused when PCMode=0]
  1        VSContrl   - Variable-speed control mode {0: none, 1: simple VS, 2: user-defined from routine UserVSCont, 3: user-defined
9999.9E-9      VS_RtGnSp   - Rated generator speed for simple variable-speed generator control (HSS side) (rpm) [used only when VSContrl=1]
43093.6       VS_RtTq     - Rated generator torque/constant generator torque in Region 3 for simple variable-speed generator control (HSS side) (N-m)
9999.9e-9      VS_Rgn2K    - Generator torque constant in Region 2 for simple variable-speed generator control (HSS side) (N-m/rpm^2)
9999.9e-9      VS_SlPc     - Rated generator slip percentage in Region 2 1/2 for simple variable-speed generator control (%)
   1        GenModel    - Generator model {1: simple, 2: Thevenin, 3: user-defined from routine UserGen} (switch) [used only when VSContrl=0]
True        GenTiStr    - Method to start the generator {T: timed using TimGenOn, F: generator speed using SpdGenOn} (flag)
True        GenTiStp    - Method to stop the generator {T: timed using TimGenOf, F: when generator power = 0} (flag)
9999.9      SpdGenOn    - Generator speed to turn on the generator for a startup (HSS speed) (rpm) [used only when GenTiStr=False]
   0.0      TimGenOn    - Time to turn on the generator for a startup (s) [used only when GenTiStr=True]
9999.9      TimGenOf    - Time to turn off the generator (s) [used only when GenTiStp=True]
   1        HSSBrMode   - HSS brake model {1: simple, 2: user-defined from routine UserHSSBr, 3: user-defined from Labview} (switch)
9999.9      THSSBrDp    - Time to initiate deployment of the HSS brake (s)
9999.9      TiDynBrk    - Time to initiate deployment of the dynamic generator brake [CURRENTLY IGNORED] (s)
9999.9      TTpBrDp(1)  - Time to initiate deployment of tip brake 1 (s)
9999.9      TTpBrDp(2)  - Time to initiate deployment of tip brake 2 (s)
9999.9      TTpBrDp(3)  - Time to initiate deployment of tip brake 3 (s) [unused for 2 blades]
9999.9      TBDepISp(1) - Deployment-initiation speed for the tip brake on blade 1 (rpm)
9999.9      TBDepISp(2) - Deployment-initiation speed for the tip brake on blade 2 (rpm)
9999.9      TBDepISp(3) - Deployment-initiation speed for the tip brake on blade 3 (rpm) [unused for 2 blades]
9999.9      TYawManS    - Time to start override yaw maneuver and end standard yaw control (s)
9999.9      TYawManE    - Time at which override yaw maneuver reaches final yaw angle (s)
   0.0      NacYawF     - Final yaw angle for yaw maneuvers (degrees)
9999.9      TPitManS(1) - Time to start override pitch maneuver for blade 1 and end standard pitch control (s)
9999.9      TPitManS(2) - Time to start override pitch maneuver for blade 2 and end standard pitch control (s)
9999.9      TPitManS(3) - Time to start override pitch maneuver for blade 3 and end standard pitch control (s) [unused for 2 blades]
9999.9      TPitManE(1) - Time at which override pitch maneuver for blade 1 reaches final pitch (s)
9999.9      TPitManE(2) - Time at which override pitch maneuver for blade 2 reaches final pitch (s)
9999.9      TPitManE(3) - Time at which override pitch maneuver for blade 3 reaches final pitch (s) [unused for 2 blades]
   8.70      BlPitch(1)  - Blade 1 initial pitch (degrees)
   8.70      BlPitch(2)  - Blade 2 initial pitch (degrees)
   8.70      BlPitch(3)  - Blade 3 initial pitch (degrees) [unused for 2 blades]
   8.70      BlPitchF(1) - Blade 1 final pitch for pitch maneuvers (degrees)
   8.70      BlPitchF(2) - Blade 2 final pitch for pitch maneuvers (degrees)
   8.70      BlPitchF(3) - Blade 3 final pitch for pitch maneuvers (degrees) [unused for 2 blades]
---------------------- ENVIRONMENTAL CONDITIONS --------------------------------
   9.80665  Gravity     - Gravitational acceleration (m/s^2)
---------------------- FEATURE FLAGS -------------------------------------------
True       FlapDOF1    - First flapwise blade mode DOF (flag)
False       FlapDOF2    - Second flapwise blade mode DOF (flag)
True       EdgeDOF     - First edgewise blade mode DOF (flag)
False       TeetDOF     - Rotor-teeter DOF (flag) [unused for 3 blades]
True        DrTrDOF     - Drivetrain rotational-flexibility DOF (flag)
True        GenDOF      - Generator DOF (flag)
False       YawDOF      - Yaw DOF (flag)
True         TwFADOF1    - First fore-aft tower bending-mode DOF (flag)
True         TwFADOF2    - Second fore-aft tower bending-mode DOF (flag)
True       TwSSDOF1    - First side-to-side tower bending-mode DOF (flag)
True         TwSSDOF2    - Second side-to-side tower bending-mode DOF (flag)
True       CompAero    - Compute aerodynamic forces (flag)
False       CompNoise   - Compute aerodynamic noise (flag)
---------------------- INITIAL CONDITIONS --------------------------------------
   0.0      OoPDefl     - Initial out-of-plane blade-tip displacement (meters)
   0.0      IPDefl      - Initial in-plane blade-tip deflection (meters)
   0.0      TeetDefl    - Initial or fixed teeter angle (degrees) [unused for 3 blades]
   0.0      Azimuth     - Initial azimuth angle for blade 1 (degrees)
  12.1      RotSpeed    - Initial or fixed rotor speed (rpm)
   0.0      NacYaw      - Initial or fixed nacelle-yaw angle (degrees)
   0.0      TTDspFA     - Initial fore-aft tower-top displacement (meters)
   0.0      TTDspSS     - Initial side-to-side tower-top displacement (meters)
---------------------- TURBINE CONFIGURATION -----------------------------------
  63.0      TipRad      - The distance from the rotor apex to the blade tip (meters)
   1.5      HubRad      - The distance from the rotor apex to the blade root (meters)
   1        PSpnElN     - Number of the innermost blade element which is still part of the pitchable portion of the blade for partial-span pitch control
   0.0      UndSling    - Undersling length [distance from teeter pin to the rotor apex] (meters) [unused for 3 blades]
   0.0      HubCM       - Distance from rotor apex to hub mass [positive downwind] (meters)
  -5.01910  OverHang    - Distance from yaw axis to rotor apex [3 blades] or teeter pin [2 blades] (meters)
   1.9      NacCMxn     - Downwind distance from the tower-top to the nacelle CM (meters)
   0.0      NacCMyn     - Lateral  distance from the tower-top to the nacelle CM (meters)
   1.75     NacCMzn     - Vertical distance from the tower-top to the nacelle CM (meters)
  87.6      TowerHt     - Height of tower above ground level [onshore] or MSL [offshore] (meters)
   1.96256  Twr2Shft    - Vertical distance from the tower-top to the rotor shaft (meters)
   0.0      TwrRBHt     - Tower rigid base height (meters)
  -5.0      ShftTilt    - Rotor shaft tilt angle (degrees)
   0.0      Delta3      - Delta-3 angle for teetering rotors (degrees) [unused for 3 blades]
  -2.5      PreCone(1)  - Blade 1 cone angle (degrees)
  -2.5      PreCone(2)  - Blade 2 cone angle (degrees)
  -2.5      PreCone(3)  - Blade 3 cone angle (degrees) [unused for 2 blades]
   0.0      AzimB1Up    - Azimuth value to use for I/O when blade 1 points up (degrees)
---------------------- MASS AND INERTIA ----------------------------------------
   0.0      YawBrMass   - Yaw bearing mass (kg)
 240.00E3   NacMass     - Nacelle mass (kg)
  56.78E3   HubMass     - Hub mass (kg)
   0.0      TipMass(1)  - Tip-brake mass, blade 1 (kg)
   0.0      TipMass(2)  - Tip-brake mass, blade 2 (kg)
   0.0      TipMass(3)  - Tip-brake mass, blade 3 (kg) [unused for 2 blades]
2607.89E3   NacYIner    - Nacelle inertia about yaw axis (kg m^2)
 534.116    GenIner     - Generator inertia about HSS (kg m^2)
 115.926E3  HubIner     - Hub inertia about rotor axis [3 blades] or teeter axis [2 blades] (kg m^2)
---------------------- DRIVETRAIN ----------------------------------------------
 100.0      GBoxEff     - Gearbox efficiency (%)
  94.4      GenEff      - Generator efficiency [ignored by the Thevenin and user-defined generator models] (%)
  97.0      GBRatio     - Gearbox ratio (-)
False       GBRevers    - Gearbox reversal {T: if rotor and generator rotate in opposite directions} (flag)
  28.1162E3 HSSBrTqF    - Fully deployed HSS-brake torque (N-m)
   0.6      HSSBrDT     - Time for HSS-brake to reach full deployment once initiated (sec) [used only when HSSBrMode=1]
"Dummy"     DynBrkFi    - File containing a mech-gen-torque vs HSS-speed curve for a dynamic brake [CURRENTLY IGNORED] (quoted string)
 867.637E6  DTTorSpr    - Drivetrain torsional spring (N-m/rad)
   6.215E6  DTTorDmp    - Drivetrain torsional damper (N-m/(rad/s))
---------------------- SIMPLE INDUCTION GENERATOR ------------------------------
9999.9      SIG_SlPc    - Rated generator slip percentage (%) [used only when VSContrl=0 and GenModel=1]
9999.9      SIG_SySp    - Synchronous (zero-torque) generator speed (rpm) [used only when VSContrl=0 and GenModel=1]
9999.9      SIG_RtTq    - Rated torque (N-m) [used only when VSContrl=0 and GenModel=1]
9999.9      SIG_PORt    - Pull-out ratio (Tpullout/Trated) (-) [used only when VSContrl=0 and GenModel=1]
---------------------- THEVENIN-EQUIVALENT INDUCTION GENERATOR -----------------
9999.9      TEC_Freq    - Line frequency [50 or 60] (Hz) [used only when VSContrl=0 and GenModel=2]
9998        TEC_NPol    - Number of poles [even integer > 0] (-) [used only when VSContrl=0 and GenModel=2]
9999.9      TEC_SRes    - Stator resistance (ohms) [used only when VSContrl=0 and GenModel=2]
9999.9      TEC_RRes    - Rotor resistance (ohms) [used only when VSContrl=0 and GenModel=2]
9999.9      TEC_VLL     - Line-to-line RMS voltage (volts) [used only when VSContrl=0 and GenModel=2]
9999.9      TEC_SLR     - Stator leakage reactance (ohms) [used only when VSContrl=0 and GenModel=2]
9999.9      TEC_RLR     - Rotor leakage reactance (ohms) [used only when VSContrl=0 and GenModel=2]
9999.9      TEC_MR      - Magnetizing reactance (ohms) [used only when VSContrl=0 and GenModel=2]
---------------------- PLATFORM ------------------------------------------------
   0        PtfmModel   - Platform model {0: none, 1: onshore, 2: fixed bottom offshore, 3: floating offshore} (switch)
"Dummy"     PtfmFile    - Name of file containing platform properties (quoted string) [unused when PtfmModel=0]
---------------------- TOWER ---------------------------------------------------
  20        TwrNodes    - Number of tower nodes used for analysis (-)
"NRELOffshrBsline5MW_Tower_Onshore.dat"          TwrFile     - Name of file containing tower properties (quoted string)
---------------------- NACELLE-YAW ---------------------------------------------
9028.32E6   YawSpr      - Nacelle-yaw spring constant (N-m/rad)
  19.16E6   YawDamp     - Nacelle-yaw damping constant (N-m/(rad/s))
   0.0      YawNeut     - Neutral yaw position--yaw spring force is zero at this yaw (degrees)
---------------------- FURLING -------------------------------------------------
False       Furling     - Read in additional model properties for furling turbine (flag)
"Dummy"     FurlFile    - Name of file containing furling properties (quoted string) [unused when Furling=False]
---------------------- ROTOR-TEETER --------------------------------------------
   0        TeetMod     - Rotor-teeter spring/damper model {0: none, 1: standard, 2: user-defined from routine UserTeet} (switch) [unused for 3 blades]
   0.0      TeetDmpP    - Rotor-teeter damper position (degrees) [used only for 2 blades and when TeetMod=1]
   0.0      TeetDmp     - Rotor-teeter damping constant (N-m/(rad/s)) [used only for 2 blades and when TeetMod=1]
   0.0      TeetCDmp    - Rotor-teeter rate-independent Coulomb-damping moment (N-m) [used only for 2 blades and when TeetMod=1]
   0.0      TeetSStP    - Rotor-teeter soft-stop position (degrees) [used only for 2 blades and when TeetMod=1]
   0.0      TeetHStP    - Rotor-teeter hard-stop position (degrees) [used only for 2 blades and when TeetMod=1]
   0.0      TeetSSSp    - Rotor-teeter soft-stop linear-spring constant (N-m/rad) [used only for 2 blades and when TeetMod=1]
   0.0      TeetHSSp    - Rotor-teeter hard-stop linear-spring constant (N-m/rad) [used only for 2 blades and when TeetMod=1]
---------------------- TIP-BRAKE -----------------------------------------------
   0.0      TBDrConN    - Tip-brake drag constant during normal operation, Cd*Area (m^2)
   0.0      TBDrConD    - Tip-brake drag constant during fully-deployed operation, Cd*Area (m^2)
   0.0      TpBrDT      - Time for tip-brake to reach full deployment once released (sec)
---------------------- BLADE ---------------------------------------------------
"NRELOffshrBsline5MW_Blade.dat"                  BldFile(1)  - Name of file containing properties for blade 1 (quoted string)
"NRELOffshrBsline5MW_Blade.dat"                  BldFile(2)  - Name of file containing properties for blade 2 (quoted string)
"NRELOffshrBsline5MW_Blade.dat"                  BldFile(3)  - Name of file containing properties for blade 3 (quoted string) [unused for 2 blades]
---------------------- AERODYN -------------------------------------------------
"NRELOffshrBsline5MW_AeroDyn.ipt"                ADFile      - Name of file containing AeroDyn input parameters (quoted string)
---------------------- NOISE ---------------------------------------------------
"Dummy"     NoiseFile   - Name of file containing aerodynamic noise input parameters (quoted string) [used only when CompNoise=True]
---------------------- ADAMS ---------------------------------------------------
"NRELOffshrBsline5MW_ADAMSSpecific.dat"          ADAMSFile   - Name of file containing ADAMS-specific input parameters (quoted string)
---------------------- LINEARIZATION CONTROL -----------------------------------
"NRELOffshrBsline5MW_Linear.dat"                 LinFile     - Name of file containing FAST linearization parameters (quoted string)
---------------------- OUTPUT --------------------------------------------------
True        SumPrint    - Print summary data to "<RootName>.fsm" (flag)
3           OutFileFmt  - Format for tabular (time-marching) output file(s) (1: text file [<RootName>.out], 2: binary file [<RootName>.outb], 3: both)
True        TabDelim    - Use tab delimiters in text tabular output file? (flag)
"ES10.3E2"  OutFmt      - Format used for text tabular output (except time).  Resulting field should be 10 characters. (quoted string) 
   0.0      TStart      - Time to begin tabular output (s)
   1        DecFact     - Decimation factor for tabular output {1: output every time step} (-)
   1.0      SttsTime    - Amount of time between screen status messages (sec)
  -3.09528  NcIMUxn     - Downwind distance from the tower-top to the nacelle IMU (meters)
   0.0      NcIMUyn     - Lateral  distance from the tower-top to the nacelle IMU (meters)
   2.23336  NcIMUzn     - Vertical distance from the tower-top to the nacelle IMU (meters)
   1.912    ShftGagL    - Distance from rotor apex [3 blades] or teeter pin [2 blades] to shaft strain gages [positive for upwind rotors] (meters)
   0        NTwGages    - Number of tower nodes that have strain gages for output [0 to 9] (-)
            TwrGagNd    - List of tower nodes that have strain gages [1 to TwrNodes] (-) [unused if NTwGages=0]
   3           NBlGages    - Number of blade nodes that have strain gages for output [0 to 9] (-)
 5,9,13     BldGagNd    - List of blade nodes that have strain gages [1 to BldNodes] (-) [unused if NBlGages=0]
               OutList     - The next line(s) contains a list of output parameters.  See OutList.txt for a listing of available output channels, (-)
"WindVxi"                              - Longitudinal, lateral, and vertical wind speeds
"GenPwr   , GenTq"                                           - Electrical generator power and torque
"BldPitch1"                                                  - Blade 1 pitch angle
"Azimuth"                                                    - Blade 1 azimuth angle
"RotSpeed , GenSpeed"                                        - Low-speed shaft and high-speed shaft speeds
"OoPDefl1 , IPDefl1  , TwstDefl1"                            - Blade 1 out-of-plane and in-plane deflections and tip twist
"TTDspFA  , TTDspSS  , TTDspTwst"                            - Tower fore-aft and side-to-side displacments and top twist
END of FAST input file (the word "END" must appear in the first 3 columns of this last line).
--------------------------------------------------------------------------------



Linearisation file .dat

Code: Select all

--------------------------------------------------------------------------------
---------------------- FAST LINEARIZATION CONTROL FILE -------------------------
NREL 5.0 MW offshore baseline linearization input properties.
---------------------- PERIODIC STEADY STATE SOLUTION --------------------------
True        CalcStdy    - Calculate periodic steady state condition {False: linearize about initial conditions} (flag)
   3        TrimCase    - Trim case {1: find nacelle yaw, 2: find generator torque, 3: find collective blade pitch} (switch)
   0.0001   DispTol     - Convergence tolerance for the 2-norm of displacements in the periodic steady state calculation (rad  )
   0.0001  VelTol      - Convergence tolerance for the 2-norm of velocities    in the periodic steady state calculation (rad/s)
---------------------- MODEL LINEARIZATION -------------------------------------
  36        NAzimStep   - Number of equally-spaced azimuth steps in periodic linearized model (-)
   1        MdlOrder    - Order of output linearized model {1: 1st order A, B, Bd, C, D, Dd; 2: 2nd order M, C, K, F, Fd, VelC, DspC, D, Dd} (switch)
---------------------- INPUTS AND DISTURBANCES ---------------------------------
   2        NInputs     - Number of control inputs [0 (none) or 1 to 4+NumBl] (-)
   3,4        CntrlInpt   - List   of control inputs [1 to NInputs] { 3: generator torque, 4: collective blade pitch }
   1        NDisturbs   - Number of wind disturbances [0 (none) or 1 to 7] (-)
   1        Disturbnc   - List   of input wind disturbances [1 to NDisturbs] {1: horizontal hub-height wind speed} (-)


The linearisation goes well, it finds steady state solution in 50 steps. The result is as follows:

Code: Select all

This linearized model file was generated by FAST (v7.02.00d-bjj, 20-Feb-2013) on 05-Feb-2015 at 08:53:18.
The aerodynamic calculations were made by AeroDyn (v13.00.02a-bjj, 20-Feb-2013).

 NREL 5.0 MW Baseline Wind Turbine for Use in Offshore Analysis.


Some Useful Information:

   Type of steady state solution found                Trimmed collective blade pitch (TrimCase = 3)
   Azimuth-average rotor speed, RotSpeed      (rad/s)    1.26711E+00
   Period of steady state solution              (sec)    4.95868E+00
   Iterations needed to find steady state solution      60
   Displacement 2-norm of steady state solution (rad)    6.29953E-05
   Velocity 2-norm of steady state solution   (rad/s)    4.66512E-05
   Number of equally-speced azimuth steps, NAzimStep    36
   Order of linearized model, MdlOrder                   1
   Number of active (enabled) DOFs                      12 (24 states)
   Number of control inputs, NInputs                     2
   Number of input wind disturbances, NDisturbs          1
   Number of output measurements                        13


Order of States in Linearized State Matrices:

   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 = 2nd tower fore-aft bending mode DOF (internal DOF index = DOF_TFA2)
   Row/column  4 = 2nd tower side-to-side bending mode DOF (internal DOF index = DOF_TSS2)
   Row/column  5 = Variable speed generator DOF (internal DOF index = DOF_GeAz)
   Row/column  6 = Drivetrain rotational-flexibility DOF (internal DOF index = DOF_DrTr)
   Row/column  7 = 1st flapwise bending-mode DOF of blade 1 (internal DOF index = DOF_BF(1,1))
   Row/column  8 = 1st flapwise bending-mode DOF of blade 2 (internal DOF index = DOF_BF(2,1))
   Row/column  9 = 1st flapwise bending-mode DOF of blade 3 (internal DOF index = DOF_BF(3,1))
   Row/column 10 = 1st edgewise bending-mode DOF of blade 1 (internal DOF index = DOF_BE(1,1))
   Row/column 11 = 1st edgewise bending-mode DOF of blade 2 (internal DOF index = DOF_BE(2,1))
   Row/column 12 = 1st edgewise bending-mode DOF of blade 3 (internal DOF index = DOF_BE(3,1))
   Row/column 13 to 24 = First derivatives of row/column  1 to 12.


Order of Control Inputs in Linearized State Matrices:

   Column 1 = electrical generator torque       (N·m)    4.30936E+04 op
   Column 2 = rotor collective blade pitch      (rad)    1.51366E-01 op


Order of Input Wind Disturbances in Linearized State Matrices:

   Column 1 = horizontal hub-height wind speed  (m/s) : See selected wind file for op


Order of Output Measurements in Linearized State Matrices:

   Row   1 = WindVxi    (m/s)     
   Row   2 = GenPwr     (kW)     
   Row   3 = GenTq      (kN·m)   
   Row   4 = BldPitch1  (deg)     
   Row   5 = Azimuth    (deg)     
   Row   6 = RotSpeed   (rpm)     
   Row   7 = GenSpeed   (rpm)     
   Row   8 = OoPDefl1   (m)       
   Row   9 = IPDefl1    (m)       
   Row  10 = TwstDefl1  (deg)     
   Row  11 = TTDspFA    (m)       
   Row  12 = TTDspSS    (m)       
   Row  13 = TTDspTwst  (deg)     



In order to compare the results to the nonlinear model I have a second wind profile in which I set a step in the velocity from 14 m/s to 15m/s.

In Matlab, I simulate the averaged state space matrixes for the linearised model. In order to compare the results I use a wind step of one (corresponding to the 14m/s to 15m/s in the nonlinear case).

And I get the following result

results_nonln_vs_lin.jpg


In the figures, with black is represented nonlinear model output, and with blue the liniarised model output . Moreover, in the case of the liniarised model, the GenPwr and RotSpeed decrease, instead of getting to the same steady state as in the case of the nonlinear model. This effect is present when I set the FLAPDOF1 and EDGEDOF to be TRUE.

I cannot make any sense of this behavior, and I have tried several things, but ran out of ideas.
I hope that you can help me with a suggestion, on why is it happening, as maybe I am doing something wrong in the linearisation setup, or when I compare the nonlinear model to the liniarised model.

Thank you in advance!

Jason.Jonkman
Posts: 5057
Joined: Thu Nov 03, 2005 4:38 pm
Location: Boulder, CO
Contact:

Re: Linearization issue using Fast V7.02

Postby Jason.Jonkman » Mon Sep 07, 2020 4:24 pm

Dear Shiv,

The linearization functionality of FAST v7 is not available when running FAST v7 interfaced to MATLAB/Simulink. If you want to linearize a FAST model while running FAST in the MATLAB environment, you'll need to upgrade to FAST v8 or OpenFAST.

Best regards,
Jason Jonkman, Ph.D.
Senior Engineer | National Wind Technology Center (NWTC)

National Renewable Energy Laboratory (NREL)
15013 Denver West Parkway | Golden, CO 80401
+1 (303) 384 – 7026 | Fax: +1 (303) 384 – 6901
nwtc.nrel.gov

Shiv.Malhotra
Posts: 4
Joined: Fri Mar 20, 2020 3:49 am
Organization: University of Melbourne
Location: Australia

Re: Linearization issue using Fast V7.02

Postby Shiv.Malhotra » Wed Sep 09, 2020 8:00 am

Dear Dr. Jonkman,

Please guide why I am not able to receive the exact power from the liniearised model as I am getting in Test 18 NREL 5 MW onshore windturbine FAST Turbine. There is a mismatch of power observed, as less power is developed from the linrearized model when I linearized over 23 time instances.

Kind regards
Shiv Malhotra
Attachments
Screen Shot 2020-09-09 at 11.59.34 pm.png
Screen Shot 2020-09-09 at 11.59.34 pm.png (327.2 KiB) Viewed 45 times
Screen Shot 2020-09-09 at 11.46.04 pm.png
Screen Shot 2020-09-09 at 11.46.04 pm.png (104.37 KiB) Viewed 45 times

Jason.Jonkman
Posts: 5057
Joined: Thu Nov 03, 2005 4:38 pm
Location: Boulder, CO
Contact:

Re: Linearization issue using Fast V7.02

Postby Jason.Jonkman » Wed Sep 09, 2020 8:54 am

Dear Shiv,

I don't know enough about what you are comparing to comment. A few clarifying questions:
  • You are linearizing 23 times, but the linearization times are bit sporadic. What are you doing with the various linear solutions? Are you showing the results from only one linearized model?
  • How are you comparing the linear and nonlinear solutions? Are you stepping the wind or blade pitch about the operating point, with other inputs/disturbances unchanged? Are you plotting power as a perturbation about the operating point?
  • Which structural DOFs have you enabled in your FAST v8 model?
Best regards,
Jason Jonkman, Ph.D.
Senior Engineer | National Wind Technology Center (NWTC)

National Renewable Energy Laboratory (NREL)
15013 Denver West Parkway | Golden, CO 80401
+1 (303) 384 – 7026 | Fax: +1 (303) 384 – 6901
nwtc.nrel.gov


Return to “Computer-Aided Engineering Software Tools”

Who is online

Users browsing this forum: No registered users and 1 guest