DTU 10-MW Reference Wind Turbine

Dear all,

I am using the ROSCO controller to simulate a floating wind turbine. According to the above discussions, I downloaded the controller files DISCON_IEA_offshore, IEA-10.0-198-RWT_DISCON.IN and IEA-10.0-198-RWT_Cp_Ct_Cq.txt, applied them in the ServoDyn file and ran the simulation.

The question is that no matter I enable or disable the pitch control, the blade pitch angle came to be 90 after several seconds, and the power coefficient cp droped to about -1. Also, the power exceeds the rated power (10 MW), reaches to about 350MW, which is quite strange. I guess the power issue is related to the blade pitch error, but I cannot figure out what’s wrong with my input files. I also tried to change the wind speed or disable the inflow wind, but the problem was not solved.

The related results and the ServoDyn file is shown below. I would be appreciate if anyone could help to check and give any suggestions on this problem.

------- SERVODYN v1.05.* INPUT FILE --------------------------------------------
Generated with AeroElasticSE FAST driver
---------------------- SIMULATION CONTROL --------------------------------------
False Echo - Echo input data to .ech (flag)
“default” DT - Communication interval for controllers (s) (or “default”)
---------------------- PITCH CONTROL -------------------------------------------
5 PCMode - Pitch control mode {0: none, 3: user-defined from routine PitchCntrl, 4: user-defined from Simulink/Labview, 5: user-defined from Bladed-style DLL} (switch)
0.0 TPCOn - Time to enable active pitch control (s) [unused when PCMode=0]
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]
10.0 PitManRat(1) - Pitch rate at which override pitch maneuver heads toward final pitch angle for blade 1 (deg/s)
10.0 PitManRat(2) - Pitch rate at which override pitch maneuver heads toward final pitch angle for blade 2 (deg/s)
10.0 PitManRat(3) - Pitch rate at which override pitch maneuver heads toward final pitch angle for blade 3 (deg/s) [unused for 2 blades]
0.0 BlPitchF(1) - Blade 1 final pitch for pitch maneuvers (degrees)
0.0 BlPitchF(2) - Blade 2 final pitch for pitch maneuvers (degrees)
0.0 BlPitchF(3) - Blade 3 final pitch for pitch maneuvers (degrees) [unused for 2 blades]
---------------------- GENERATOR AND TORQUE CONTROL ----------------------------
5 VSContrl - Variable-speed control mode {0: none, 1: simple VS, 3: user-defined from routine UserVSCont, 4: user-defined from Simulink/Labview, 5: user-defined from Bladed-style DLL} (switch)
1 GenModel - Generator model {1: simple, 2: Thevenin, 3: user-defined from routine UserGen} (switch) [used only when VSContrl=0]
94.0 GenEff - Generator efficiency [ignored by the Thevenin and user-defined generator models] (%)
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]
---------------------- SIMPLE VARIABLE-SPEED TORQUE CONTROL --------------------
49.76235 VS_RtGnSp - Rated generator speed for simple variable-speed generator control (HSS side) (rpm) [used only when VSContrl=1]
200955.1398 VS_RtTq - Rated generator torque/constant generator torque in Region 3 for simple variable-speed generator control (HSS side) (N-m) [used only when VSContrl=1]
81.1516502 VS_Rgn2K - Generator torque constant in Region 2 for simple variable-speed generator control (HSS side) (N-m/rpm^2) [used only when VSContrl=1]
9.9999e-06 VS_SlPc - Rated generator slip percentage in Region 2 1/2 for simple variable-speed generator control (%) [used only when VSContrl=1]
---------------------- 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]
---------------------- HIGH-SPEED SHAFT BRAKE ----------------------------------
0 HSSBrMode - HSS brake model {0: none, 1: simple, 3: user-defined from routine UserHSSBr, 4: user-defined from Simulink/Labview, 5: user-defined from Bladed-style DLL} (switch)
9999.9 THSSBrDp - Time to initiate deployment of the HSS brake (s)
0.6 HSSBrDT - Time for HSS-brake to reach full deployment once initiated (sec) [used only when HSSBrMode=1]
28116.2 HSSBrTqF - Fully deployed HSS-brake torque (N-m)
---------------------- NACELLE-YAW CONTROL -------------------------------------
0 YCMode - Yaw control mode {0: none, 3: user-defined from routine UserYawCont, 4: user-defined from Simulink/Labview, 5: user-defined from Bladed-style DLL} (switch)
9999.9 TYCOn - Time to enable active yaw control (s) [unused when YCMode=0]
0.0 YawNeut - Neutral yaw position–yaw spring force is zero at this yaw (degrees)
9028320000.0 YawSpr - Nacelle-yaw spring constant (N-m/rad)
19160000.0 YawDamp - Nacelle-yaw damping constant (N-m/(rad/s))
9999.9 TYawManS - Time to start override yaw maneuver and end standard yaw control (s)
0.25 YawManRat - Yaw maneuver rate (in absolute value) (deg/s)
0.0 NacYawF - Final yaw angle for override yaw maneuvers (degrees)
---------------------- TUNED MASS DAMPER ---------------------------------------
False CompNTMD - Compute nacelle tuned mass damper {true/false} (flag)
“” NTMDfile - Name of the file for nacelle tuned mass damper (quoted string) [unused when CompNTMD is false]
False CompTTMD - Compute tower tuned mass damper {true/false} (flag)
“” TTMDfile - Name of the file for tower tuned mass damper (quoted string) [unused when CompTTMD is false]
---------------------- BLADED INTERFACE ---------------------------------------- [used only with Bladed Interface]
“D:\OpenFAST\DTU_10MW\DISCON_IEA_offshore.dll” DLL_FileName - Name/location of the dynamic library {.dll [Windows] or .so [Linux]} in the Bladed-DLL format (-) [used only with Bladed Interface]
“D:\OpenFAST\DTU_10MW\IEA-10.0-198-RWT_DISCON.IN” DLL_InFile - Name of input file sent to the DLL (-) [used only with Bladed Interface]
“DISCON” DLL_ProcName - Name of procedure in DLL to be called (-) [case sensitive; used only with DLL Interface]
“default” DLL_DT - Communication interval for dynamic library (s) (or “default”) [used only with Bladed Interface]
False DLL_Ramp - Whether a linear ramp should be used between DLL_DT time steps [introduces time shift when true] (flag) [used only with Bladed Interface]
9999.9 BPCutoff - Cuttoff frequency for low-pass filter on blade pitch from DLL (Hz) [used only with Bladed Interface]
0.0 NacYaw_North - Reference yaw angle of the nacelle when the upwind end points due North (deg) [used only with Bladed Interface]
0 Ptch_Cntrl - Record 28: Use individual pitch control {0: collective pitch; 1: individual pitch control} (switch) [used only with Bladed Interface]
0.0 Ptch_SetPnt - Record 5: Below-rated pitch angle set-point (deg) [used only with Bladed Interface]
0.0 Ptch_Min - Record 6: Minimum pitch angle (deg) [used only with Bladed Interface]
0.0 Ptch_Max - Record 7: Maximum pitch angle (deg) [used only with Bladed Interface]
0.0 PtchRate_Min - Record 8: Minimum pitch rate (most negative value allowed) (deg/s) [used only with Bladed Interface]
0.0 PtchRate_Max - Record 9: Maximum pitch rate (deg/s) [used only with Bladed Interface]
0.0 Gain_OM - Record 16: Optimal mode gain (Nm/(rad/s)^2) [used only with Bladed Interface]
0.0 GenSpd_MinOM - Record 17: Minimum generator speed (rpm) [used only with Bladed Interface]
0.0 GenSpd_MaxOM - Record 18: Optimal mode maximum speed (rpm) [used only with Bladed Interface]
0.0 GenSpd_Dem - Record 19: Demanded generator speed above rated (rpm) [used only with Bladed Interface]
0.0 GenTrq_Dem - Record 22: Demanded generator torque above rated (Nm) [used only with Bladed Interface]
0.0 GenPwr_Dem - Record 13: Demanded power (W) [used only with Bladed Interface]
---------------------- BLADED INTERFACE TORQUE-SPEED LOOK-UP TABLE -------------
0 DLL_NumTrq - Record 26: No. of points in torque-speed look-up table {0 = none and use the optimal mode parameters; nonzero = ignore the optimal mode PARAMETERs by setting Record 16 to 0.0} (-) [used only with Bladed Interface]
GenSpd_TLU GenTrq_TLU
(rpm) (Nm)
---------------------- OUTPUT --------------------------------------------------
True SumPrint - Print summary data to .sum (flag) (currently unused)
1 OutFile - Switch to determine where output will be placed: {1: in module output file only; 2: in glue code output file only; 3: both} (currently unused)
True TabDelim - Use tab delimiters in text tabular output file? (flag) (currently unused)
“ES10.3E2” OutFmt - Format used for text tabular output (except time). Resulting field should be 10 characters. (quoted string) (currently unused)
0.0 TStart - Time to begin tabular output (s) (currently unused)
OutList - The next line(s) contains a list of output parameters. See OutListParameters.xlsx for a listing of available output channels, (-)
“GenPwr”
“GenTq”
END of input file (the word “END” must appear in the first 3 columns of this last OutList line)

Regards,
Yajun
Blade pitch.JPG
GenPwr.JPG
RatAeroCp.JPG

Dear Matt,

Thanks for the source code and suggestion to recompile with double precision. As expected it took tremendous amount of simulation time with double precision. Though its worth it. As you can observe there isn’t any strange behavior on the fairlead tensions.

Kind regards
Abhinay Goga

Dear Abhinay,

Matt wasn’t suggesting that you recompile in double precision, but to use his branch where the time variable is stored in double, even when compiling in single precision. This should solve the MoorDyn problem and still run fast.

Best regards,

Dear Jason,

Thanks for correcting me. The code that Mr.Matt provided with single precision also provided a stable numerical output.

Kind regards
Abhinay Goga

Great!

Dear Dr. Nikhar

I’m sorry for the late response. The simulation problem has been solved after I used the latest version of 10MW WT downloaded in GitHub.
Thank you very much.
Also, many thanks to Dr. Roger and Jason!

Best regards
Lixian Zhang

Hi,

I am simulating DTU 10MW as offshore wind turbine. So, could I know where can I find the Hydrodyn and subdyn input files for DTU 10MW? If I use NREL5MW input files by changing inputs (attached), I am not getting the desired mudline loads (resulting zero shear force and bending in two directions and lower values in one direction).

Thanks,
Satish J
DTU_10MW.zip (9.88 KB)

Hi Satish,

The repository for the OpenFAST model of the IEA Wind Task 37 version of the DTU 10-MW reference turbine is available here: github.com/IEAWindTask37/IEA-10.0-198-RWT. I don’t see an offshore configuration defined here. I know there was an OpenFAST model shared of this turbine atop a monopile within IEA Wind Task 30 OC6 Phase II, but this was only shared with participants of that task.

Did you create the SubDyn and HydroDyn inputs you attached?

Can you clarify what problems you are seeing? I don’t see that you attached the corresponding ElastoDyn input file. Did you set the tower base in ElastoDyn to be at 10-m above MSL and enable the platform DOFs to properly couple ElastoDyn with SubDyn?

Best regards,

Dear Jason,

Thanks for your reply.

I have edited only the diameter of monopile in NREL5MW hydrodyn and subdyn files.

I did change the input values in Elastodyn now, but getting NaN in the output. I have attached all related input files.

Thanks,
Satish J
DTU_10MW_RWT_out.zip (680 KB)
DTU_10MW_RWT.zip (29.3 KB)

Dear Satish,

From my quick review of your files, I’m not seeing any obvious problems, but the NaNs in the output suggest that the model is going numerically unstable. Your time step is already quite small, so, while the use of too large a time step is often the cause of the problem, I’m not sure that is the case in your model. Regardless, I would suggest simplifying the model to debug. Are there specific DOFs, when enabled, that cause the model to go unstable?

Best regards,

Dear Jason,

Thanks for your response.

As you suggested, I did check with DOFs. When I disable Platform yaw rotation DOF (PtfmYDOF), it runs smoothly without any NaN. Could I please what would be the reason, how would I resolve this. Is there anything I need to change in input files?

Thanks,
Satish J

Dear Satish,

Ah, now I know what the problem is. I see that you have PtfmYDOF = YawDOF = TRUE, with PtfmYIner = 0. ElastoDyn does not consider the inertia of the tower about its centerline. So, if both PtfmYDOF and YawDOF = TRUE, you must have some nonzero PtfmYIner set (e.g., to represent the tower inertia about its centerline), otherwise the yaw inertia about the platform will be zero and ill conditioned, resulting in NaNs. This is discussed more in Section 5.4 of the draft SubDyn User’s Guide and Theory Manual (drive.google.com/file/d/1mX-_qI … sp=sharing)

Best regards,

Dear Jason,

Thanks for your reply.

I calculated the total rotational inertia of undeflected tower at each point using the formula, m*(ri^2+r0^2)/2 and then adding all the values to get the total inertia which resulted in 8366211.218 kgm2. Is that the way of calculating, if not could I know how is there any reference where I can use to calculate as I cannot see any formulae or basis of calculation in Subdyn manual which you provided.

Thanks,
Satish J

Dear Satish,

I haven’t confirmed your results, but I agree that your equation applies to each tower element.

Best regards,

Dear Jason,

After specifying PtfmYIner, looking at the results when compared with NREL 5MW and IEA 15MW turbine (below table), values are very low. Could what else might be the reason.

Thanks,
Satish J
LoadComparisons.PNG

Dear Satish,

You haven’t really provided enough information to really comment. What conditions (e.g., wind speed) are you simulating to obtain the results you show in your table, and are these mean values of something else?

Best regards,

Dear Jason,

Thanks for your reply.

Wind condition corresponding to 1ETM with their respective rated wind speed and the loads are maximum (ULS unfactored) over time simulation of 630sec with TStart = 30sec. Wave loads of H = 10.6 and T = 11.54 s (regular waves).

Thanks,
Satish J

Dear Satish,

I’m not sure I can really comment on these results. It may help to break down the results into mean, standard deviation, and ultimate loads for wind only, wave only, and combined wind+wave to understand the trends a bit more.

Best regards,

Dear Jason,

Thanks for your reply.

Corresponding to parameters mentioned in the previous post. I have attached summary of results (Mean, SD, Ultimate loads) of all three turbines (NREL 5MW, DTU 10MW, IEA 15MW) for wind only, wave only, and combined wind+wave.

Thanks,
Satish J
Summary.docx (14.3 KB)

Dear Satish,

Do you have any comment on these results? What makes sense to you and what does not?

Best regards,