Good morning,

It’s the first time I write in this forum and my english is not good at all, but I’ll try to explain my problem as well as I can.

I’m a student from “Universidad Pública de Navarra” (UPNA) in Pamplona (north of Spain) and I’m currently performing a Final Master Project with FAST.

One of the major points of the project is the validation of FAST simulations and linearizations with constant winds, step winds, step pitch angles and step torque values. The process is as it follows:

1- FAST simulation with a constant wind and “Control defined by User” (Pitch and Torque. Yaw Control disabled).
2- Fixing equilibrium points of “RotSpeed”, “Blade Pitch”, etc. for further linearization.
3- Linearization with “RotSpeed” = Equilibrium Point obtained in the previous point.
4- Open-loop simulation in the Simulink interface of FAST, using unit steps in wind, torque and pitch. This should show agreement with the step responses of the linearized model.
5 - Controller design and validation.

The agreement sought in point 4 is achieved for wind and pitch steps, but not for torque ones. In fact, when I introduce a torque step in the open-loop simulator, the system reacts increasing its generator speed, when a decrease is expected.
The torque step is introduced as shownin the attached second figure. The results are also shown in the first attached figure.

Can you help me? I think the problem is in my open-loop simulator, but I cannot find it.

Thank you so much,
Pedro López.

Dear Pedro,

I agree that stepping up the generator torque should lead to decrease in generator speed. It’s not obvious to me what the problem might be.

What is the difference between “Simulink” and “FAST” in your time-series plot? What are the other conditions of the simulation (e.g. normal operation under steady wind)?

Best regards,

Good morning (in Spain),

First of all, thank you for your kind reply.

Regarding your last question, the conditions of each simulation are as follows:


[b]Steady Wind (15 m/s) without steps, during 1000 sec.

0 ------------------ YCMode
9999.9 ---------- TYCOn
1 ------------------ PCMode (Using a control dll routine prepared by my teacher)
0 ------------------ TPCOn
2 ------------------ VSContrl (Using a control dll routine prepared by my teacher)
9999.9 ---------- VS_RtGnSp
9999.9 ---------- VS_RtTq
9999.9 ---------- VS_Rgn2K
9999.9 ---------- VS_SlPc
1 ----------------- GenModel
7.0 -------------- Initial RotSpeed
0.0 -------------- Initial Blade Pitch (same with the other 2 blades)[/b]

By running this simulation, I can obtain an equilibrium state. The reached equilibrium point in this case is:

43090.00 Nm ------------------ GenTq
4999000.00 W --------------- GenPwr
0.17 rad (9.91 deg) --------- BlPitch
1174.00 rpm ------------------ GenSpeed
12.10 rpm -------------------- RotSpeed

Then, I introduce these equilibrium values in a FAST primary input file to perform a linearization. I check that the equilibrium points obtained by the trimming process are similar to the original ones (first column ==> equilibrium values from first FAST simulation, second column ==> equilibrium values from linearization setting the initial parameters to the previous values):

43090.00 Nm ---------- 43090.00 Nm -------------- GenTq
4999000.00 W ---------- 4997833.33 W ----------- GenPwr
0.17 rad ----------------- 0.18 rad ------------------- BlPitch
1174.00 rpm ---------- 1173.08 rpm --------------- GenSpeed
12.10 rpm -------------- 12.09 rpm ----------------- RotSpeed


Once the equilibrium values have been validated, I introduce them as initial parameters in the Simulink Open-Loop block. The parameters of the FAST primary input file are the following:

[b] - Steady Wind (15 m/s) during 1000 sec.
- An step increase in torque (1000 Nm over the equilibrium value) is introduced via Simulink 500 secs after starting the simulation.

0 ------------------ YCMode
9999.9 ---------- TYCOn
2 ------------------ PCMode
0 ------------------ TPCOn
3 ------------------ VSContrl
9999.9 ---------- VS_RtGnSp
9999.9 ---------- VS_RtTq
9999.9 ---------- VS_Rgn2K
9999.9 ---------- VS_SlPc
1 ----------------- GenModel
12.1 ------------- Initial RotSpeed
9.91 ------------- Initial Blade Pitch (same with the other 2 blades)[/b]

To check the validity of the linearization, I compare the result of the previous simulation with the step response of the torque-to-GenSpeed transfer function (initialized at the eq. point). I’m attaching a detail of my original figure showing how, at the moment of the Torque step (500 sec), the generator speed decreases in the linear response (as it must do) but it increases in the SIMULINK simulation of FAST (wrong behavior). The red line is just the response of the first FAST simulation (no steps), carried out to find the equilibrium point.

Big thanks for your FAST support,
Pedro López

Dear Pedro,

Your approach makes sense, but I do not understand why you are seeing in increase in generator speed after stepping up the generator torque in your Simulink model. I have not seen similar behavior myself. Could there be a minus sign invoked in your summation block?

Best regards,

Dear Jason,

A lot of thanks.

I have been trying to find the mistake and I finally found it. The problem was the wind of the Simulink/FAST simulation (stepping with Generator Torque). I thought that I was simulating with a steady wind, but in the .ipt file there was the path to a step of wind.

The answer were so simple and the mistake was mine. Now, my validations work perfectly.

I’m attaching a detail of the newl figure showing how, at the moment of the Torque step (500 sec), the generator speed decreases in both responses (inear response and SIMULINK simulation of FAST).

I think this topic could help other persons in the future.

Best regards,

Dear Pedro,

OK, great! I’m glad you identified the problem!

Best regards,