Simulink linearization, keep torque and pitch constant

This forum if for discussing controls. Questions about how to implement controls in FAST are more appropriate to the CAE Tools forum.

Moderator: Bonnie.Jonkman


Simulink linearization, keep torque and pitch constant

Postby Sebastiaan.Mulders » Tue May 21, 2019 2:21 am


We using FAST v8.16 for a wind turbine design course, in which students design a wind turbine and its control system. We created some routines to determine the steady-state operating points for each wind speed, given the blade / rotor design. Subsequently, we use this information (pitch + torque values) to perform an open-loop simulation for linearization of the turbine in Simulink.

For pitch in this open-loop simulation, we set PCMode to 0 and initialize the initial pitch angles in ElastoDyn with BlPitch(X). This works fine, and the pitch signal stays constant for the entire simulation time. However, for torque control, we could not yet find a way to ensure that in all cases the torque signal remains constant. We tried two different set-ups for above-rated linearization:

1. Setting VSContrl to 1, and GenModel to 1. For some turbine design, this sometimes results in a varying torque control signal during open-loop simulation, which makes it hard to reach a steady-state, such that a proper linearization can be performed.
2. Setting VSContrl to 0, GenModel to 1, SIG_SlPc to 1e-6, SIG_SySp to <RatedRotorSpeed>, SIG_RtTq to <RatedTorque>, and SIG_PORt to 1.0. This method works better in most cases. However, for some situations, the torque signal quickly jumps from -<RatedTorque> to +<RatedTorque>, resulting in simulation errors.

I was wondering if there is any way to perform an open-loop simulation in FAST v8.16 (Simulink), and keep the torque signal constant, in a similar way as the pitch signal stays constant.

Posts: 5765
Joined: Thu Nov 03, 2005 4:38 pm
Location: Boulder, CO

Re: Simulink linearization, keep torque and pitch constant

Postby Jason.Jonkman » Tue May 21, 2019 10:18 am

Dear Sebastiaan,

Yes, the process to achieve constant generator torque is described in the "Linearization" section of the old FAST User's Guide: To summarize, to set constant torque in ServoDyn, it is easiest to set VSContrl = 1, VS_RtTq = the constant torque you want in Nm (e.g., 43093.55 Nm is the rated generator torque of the NREL 5-MW turbine) and VS_RtGnSp = VS_Rgn2K = VS_SlPc = some small number greater than zero, e.g., 0.001.

I hope that helps.

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


Re: Simulink linearization, keep torque and pitch constant

Postby Sebastiaan.Mulders » Wed May 22, 2019 3:45 am

Dear Jason,

Thank you very much for your reply, we will implement this!


Return to “Controls”

Who is online

Users browsing this forum: No registered users and 1 guest