Pitch-controlled variable-speed doubly-fed induction generator (DFIG) wind turbine model in DIgSILENT PowerFactory
Thanks to one of my former PhD supervisors Mattia Marinelli, I can provide a pitch-controlled variable speed doubly-fed induction generator (DFIG) wind turbine model in DIgSILENT PowerFactory. Mattia developed and implemented the comprehensive model to study and teach wind integration in the power system.
In this post, I present the general concepts of the implemented PowerFactory model and their relation to wind power. However, the post focuses on the simulation capabilities of the model. Several study cases elaborate on the model’s user-specific options and how those can be used to study wind integration.
Doubly-fed induction generator (DFIG) basics
What is a DFIG?
The DFIG consists of a wound rotor induction generator with the stator directly connected to the grid, and the rotor connected to the grid via a bi-directional back-to-back voltage source converter. In the wind turbine community, it is also referred to as Type C or Type 3 wind turbine generator and it is the dominant wind turbine generator technology (especially onshore). The figure below shows a block diagram of the DFIG structure. The partial scale converter is shown as a cumulated converter, but it can be divided into a grid-side and rotor-side converter connected through a DC link.
DFIGs are so popular because of their capability to control reactive power independent of active power. The converter system applies rotor currents with varying magnitude and frequency to the rotor in order to control the reactive power and the rotor speed. The control of the rotor speed allows for variable speed operation to absorb fast fluctuations in wind speed and improve efficiency over a wide range of speeds.
Control system of a DFIG
The control system of a DFIG has basically two main goals:
- control the active power drawn from the wind turbine in order to track the optimum operation point and limit the power for high wind speeds.
- control of the reactive power.
The control system has a hieracical structure with two control levels:
- DFIG control (faster dynamics) – the generator and converter control aims at controlling the power converters and the DFIG with the main goal to independently control active and reactive power.
- Wind turbine control (slower dynamics) – the speed and power control aims at controlling the pitch angle of the wind turbine and the reference active power for the DFIG control level.
Below you can find a block diagram of the DFIG control structure. The DFIG control level controls the rotor- and grid-side converter while the wind turbine control level takes care of speed and power. Even though the DFIG and wind turbine control act in different bandwidths, they are strongly interlinked. For example, the wind turbine control provides the active power reference for the DFIG control.
Doubly-fed induction generator (DFIG) model in DIgSILENT PowerFactory
Modeled wind turbine and DFIG characteristics
- 6.3 MW – 7 MVA @ 14 m/s – please see also the static wind power curve of the model below
- rotor diameter = 126 m
- pitch controlled
- nominal rotational speed (low speed shaft) = 10.78 rpm (1.13 rad/s = 1 pu)
- Min/max rotational speed = 0.72/1.15 pu
- converter size = 30 % of nominal rating = 2.1 MVA
Frame
Below you can find the frame of the DFIG model in PowerFactory. The blue rectangle shows the prime mover model and the red one the converter controllers. The DFIG can be found on the right side of the frame. The other controllers and/or measurements are on the left side of the frame.
Common Models
In this section, I will go through and explain the most important common models. Below a screenshot of the common models of the DFIG model in PowerFactory.
Curve qref (u and p)
Reactive power droop characteristic with voltage (vertical axis) and active power (horizontal axis) as input. The two-dimensional characteristic linearly interpolates between the given points for the reactive power depending on those two variables. Positive reactive power means capacitive behavior (injecting reactive power) and negative means inductive behavior (absorbing reactive power). The min/max capabilities are ±0.45 pu (= 3.15 MVAr, base = 7 MVA) and can be customized within these limits.
Below you can see the plot of the reactive power capability from the table above.
GenPQ-Controller
Active and reactive power control of the rotor-side converter. Calculates the dq-components of the reference rotor current. Don’t change the parameters unless you want to model another type of DFIG.
Irot ctrl
The rotor current controller compares the dq-components of the reference rotor current from the GenPQ-Controller with the actual dq-components of the rotor current and outputs the delta multiplied with a gain and PT1 term. Don’t change the parameters unless you want to model another type of DFIG.
Kinetic response emulator
The kinetic response emulator implements the capability to provide virtual inertia in case of fast frequency changes since inertia response is not an inherent characteristic of the DFIG. A slow and a fast virtual inertia response are available with the corresponding parameters Kslow and Kfast as shown in the screenshot below.
You can modify the inertial response by changing these two parameters (also a combination of fast and slow response). It is also possible to change the corresponding time constants Tslow and Tfast to change the bandwidth of the response. However, the parameter Tdel must not be changed.
MPT control
The maximum point tracking (MPT) control provides the active power reference as a function of the rotational generator speed as shown in the plot below. This is done to track the maximum efficiency for continuously changing wind speeds as the efficiency is a function of the tip-speed ratio and the pitch angle. The rotor converter size determines the minimum and maximum generator speed. In the implemented model, the converter size is assumed to be 30 % of the generator’s apparent power. The MPT characteristic is implemented as a lookup-table. Don’t change the table unless you implement the characteristic of another wind turbine.
However, in the common model (screenshot below), you can change the parameter pcap which defines the maximum power limit of the turbine. By default, the parameter is set to 1, meaning no effect of the limiter. The red line in the plot above shows an example of pcap set to 0.7 pu, which limits the power to 0.7 * 7 MVA = 4.9 MW.
Pitch Control
The pitch control is a PI controller which acts as a function of the rotational speed of the wind turbine. When the rotational speed exceeds the nominal rotor speed (1.3 rad/s or 1.15 pu) the controller increases the pitch angle which causes a drop in efficiency (you could also say you “spill” wind because you don’t use the whole available potential). Here it is important to mention that the pitch control only starts acting above the nominal rotational speed or when reaching the power cap set in the MPT model. Below the nominal rotational speed, the speed is variable and follows the MPT characteristic.
The parameters of the model must not be changed unless you want to model another wind turbine. However, there is one exception. The parameter beta_min (minimum blade angle) can be used to simulate an active power reserve of the wind turbine. Please check the study case section which shows an example of how to use the pitch angle to provide reserve power.
Protection
The wind turbine has three protections. The overspeed/underspeed and overvoltage/undervoltage protection open the machine breaker and stop the turbine when triggered. The rotor current protection inserts the crowbar to save the rotor converter from overloading and ensures that the machine rides through the fault. The speed and voltage protections have two trigger mechanisms, a faster one for more severe deviations and a slower one for less severe ones.
Example of the undervoltage protection setting: The protection trips and disconnects the machine if the voltage stays below 0.2 pu for more than 1 second (faster trigger) or if the voltage stays below 0.8 pu for more than 2 seconds (slower trigger). The protection settings are marked in yellow below. The same logic is also implemented for the overvoltage and speed protections.
You can change the protection settings if you desire different protection dynamics, however, the current settings proofed very robust.
Rotor Current Measurement
Transformation of the dq-components of the rotor current from the rotor-referenced coordinates to stator-referenced coordinates. The resulting dq-rotor currents are used in the rotor current control as the current measurements of rotor current. Additionally, the absolute rotor current (in kA) is calculated and used in the protection model. Don’t change the parameters unless you want to model another type of DFIG.
Shaft
The shaft is modeled as a two-mass model in order to appropriately represent oscillations that might be initiated by sudden changes in mechanical or electrical torque. Sudden changes in torque could be caused, for example, by wind gusts or faults in the grid. The shaft model also considers a gearbox between the turbine and generator with a transformation ratio of 92.9 (turbine = 10.78 rpm = 1.13 rad/s, generator = 1000 rpm = 105 rad/s). The inertia (2H) on the high-speed side is equal to 0.8 s while it is 7.3 s on the low-speed side. Don’t change the parameters unless you want to model another type of DFIG.
Speed ref initial (very important)
The “speed ref initial” common model is very important for the simulations. You always need to make sure that the speed reference (Speed_ref) matches the active power setpoint of the DFIG. Otherwise, the initialization of the model does not work properly.
Transformation
Transforms the dq-components of the rotor current controller into the real and imaginary parts of the rotor voltage which are the controlled inputs of the DFIG. Don’t change the parameters unless you want to model another type of DFIG.
Turbine
The turbine model represents the aerodynamic characteristics of the wind turbine as a function of the tip-speed ratio λ which is the ratio of the blade peripheral speed and the wind speed. The tip-speed ratio and pitch angle determine the power coefficient cp which is implemented as a two-dimensional table as shown below. Don’t change the parameters unless you want to model another type of DFIG.
The power applied to the rotor blades from the wind is calculated as follows: Protor = 0.5 * cp * ρ* A * U³, where A = rotor area (m²), U = wind speed (m/s), ρ = air density (kg/m³), cp = power coefficient (pu). The plot below shows the power coefficient as a function of the tip-speed ratio and pitch angle as implemented by the table above.
Wind
Important note: The initial wind speed of the model is never set explicitly, it is derived from the active power setpoint at the initialization.
Still, the wind model is also interesting for the simulation as it can generate fictitious wind speed profiles. The wind profiles are then added on top of the initial wind speed calculated in the initialization process. Three wind ramps and one wind gust can be defined. Additionally, it is possible to define the tower shadow.
Below you can see the parameters for the wind ramp one marked in yellow. The ramp is defined by the amplitude of the wind (in m/s) and the start and end time (in sec). The other two ramps can be defined analogically.
The parameters for the wind gust definition are marked in blue. Similarly, you can define the amplitude and start and end time.
In the study case section I show an example of a wind ramp and gust.
Study cases
In this section, I am showing some study cases to showcase the capabilities of the implemented DFIG model. This should also give some inspiration to people who want to do wind integration studies. All study cases are available in the downloadable PowerFactory model.
Important remark: If you do your own simulations, don’ forget to set the corresponding speed reference for the chosen active power of the DFIG as described before.
Grid
Below the simple radial grid configuration used for showcasing the model’s capabilities. The radial grid contains the DFIG, synchronous generator, and a load. The generation bus is connected to the load bus via two 20/220 kV transformers and a 100 km long high voltage line.
Study Case 01 – wind ramp and gust
The study case shows how to set up wind ramps/gusts and what to expect from the results. The setup of the model is as follows:
- Active power of the DFIG set to 0.3 MW
- In the common model “Speed ref initial” set the corresponding initial speed to 0.722 pu.
- The three wind ramps and the wind gust set as shown below.
Below the results of the three wind ramps (two up and one down) and wind gust simulation. The lower right plot shows the defined wind ramp and gust in magenta. The orange line shows the total wind (initial wind + defined ramp/gust). You can also observe that the active power and speed of the generator increase with higher wind speeds (as expected) while the reactive power does not change much as the terminal voltage is close to the nominal voltage.
Study Case 02 – wind ramp and gust with power cap
The study case shows how the power capping in the MPT control affects the simulation. The setup of the model is as follows:
- Same as in Study case 01
- The parameter pcap in the “MPT control” model set to 0.5 pu (= 3.5 MW) as shown below.
Below the results of the simulation with power capping. You can see that the second ramp runs the active power (upper left plot) into the max. power limit and the pitch controller increases the pitch angle (lower left plot) to stay within the limits. You can see that the wind gust also triggers the pitch control for a short period of time.
Study Case 03 – reactive power provision
To show the reactive power provision of the DFIG, I made a voltage step with the synchronous generator also connected at the 20 kV Gen Bus. Kind reminder: The reactive power capabilities are modeled in the common model “Curve qref (u and p)” in the Advanced 2 tab. The setup of the model is as follows:
- Active power of the DFIG set to 5.4 MW
- In the common model “Speed ref initial” set the corresponding initial speed to 1.1265 pu.
- Four parameter events change the voltage setpoint of the synchronous generator to simulate a voltage step in positive and one in negative direction. Event 1) usetp =1.03 at 0 sec, Event 2) usetp = 1 at 10 sec, Event 3) usetp = 0.97 at 20 sec, Event 4) usetp = 1 at 30 sec.
The results of study case 03 show nicely the reactive power provision (lower left plot) of the DFIG due to the change in terminal voltage (lower right plot). It is also interesting to see that the active power is only slightly affected by the events as the DFIG controller quickly reacts to the changes in rotational speed.
Study Case 04 – kinetic (inertial) response emulator
The implemented kinetic response emulator allows simulating the provision of virtual inertia with the DFIG. The setup of the model is as follows:
- Active power of the DFIG set to 6 MW
- In the common model “Speed ref initial” set the corresponding initial speed to 1.1403 pu.
- The frequency change is initiated by a load event (+20 % at 0 sec).
- Three simulations with different Kslow and Kfast parameters are carried out.
- Kslow = 0, Kfast = 0 – normal operation (no inertia response)
- Kslow = 30, Kfast = 0 – slow inertia response active
- Kslow = 0, Kfast = 30 – fast inertia response active
The results of the simulation below show nicely the difference between the normal operation (black), fast (red), and slow (green) virtual inertia response. The upper left plot shows that the fast response provides active power virtually without delay while the slow response provides active power with considerable delay.
The lower right plot shows that the speed of the DFIG considerably drops with the fast inertia response as the energy released to the grid is taken from the rotational energy, thus slowing down the machine. Considering the active power it can be seen that after providing the inertia response it also drops below the initial setpoint to recover the rotational energy of the before provided response. You could say the energy for the inertia response was just “borrowed”.
Study Case 05 – pitch control reserve power
In this study case, I show how to simulate active power reserve of the DFIG by offsetting the minimum pitch angle. The setup of the model is as follows:
- Active power of the DFIG set to 3 MW
- In the common model “Speed ref initial” set the corresponding initial speed to 1.0655 pu.
- The minimum pitch angle beta_min set to 5 degrees.
- Add a parameter event to set beta_min = 0 degrees at 0 seconds.
The initial pitch angle changes from 5 degrees to 0 at zero seconds due to the parameter event (lower left plot). You can see that the wind is constant (lower right plot). However, the active power of the DFIG increases as the reduced pitch angle results in a higher extracted power from the wind.
Study Case 06 – short circuit
In this study case, I simulate a three-phase fault at the 220 kV Gen Bus to show how the crowbar activation. The setup of the model is as follows:
- Active power of the DFIG set to 3 MW
- In the common model “Speed ref initial” set the corresponding initial speed to 1.0655 pu.
- Create a short-circuit event that applies a 3-phase short circuit at the 220 kV Gen Bus at 0 seconds.
- Create another event to clear the short circuit at 150 ms.
Due to the short circuit event at the 220 kV Gen Bus the rotor current exceeds its limits as shown in the lower right plot. This triggers the insertion of the crowbar (R and X) in order to save the rotor converter from the overcurrent.
The fault clears at 150 ms and the PowerFactory output window shows the disconnection of the crowbar at around 180 ms because the rotor current drops back below the limit.
I hope you find this article insightful. Consider leaving a comment to let me know your thoughts on the topic.
More insights within energy are to follow in the next article.
Have you also checked the other articles? For example automated bottleneck analysis with Python in PowerFactory