MATLAB Examples

Wind-Turbine Asynchronous Generator in Isolated Network

This example shows a wind turbine asynchronous generator in an isolated network.

R. Reid, B. Saulnier, R. Gagnon; Hydro-Quebec (IREQ)

Contents

Description

A generic model of the High-Penetration, No Storage, Wind-Diesel (HPNSWD) system is presented in this example [1]. This technology was developed by Hydro-Quebec to reduce the cost of supplying electricity in remote northern communities [2]. The optimal wind penetration (installed wind capacity/peak electrical demand) for this system depends on the site delivery cost of fuel and available wind resource. The first commercial application of HPNSWD technology was commissioned in 1999 by Northern Power Systems (Vermont, USA) on St. Paul Island, Alaska [3]. The HPNSWD system presented in this example uses a 480 V, 300 kVA synchronous machine, a wind turbine driving a 480 V, 275 kVA induction generator, a 50 kW customer load and a variable secondary load (0 to 446.25 kW).

At low wind speeds both the induction generator and the diesel-driven synchronous generator are required to feed the load. When the wind power exceeds the load demand, it is possible to shut down the diesel generator. In this all-wind mode, the synchronous machine is used as a synchronous condenser and its excitation system controls the grid voltage at its nominal value. A secondary load bank is used to regulate the system frequency by absorbing the wind power exceeding consumer demand.

The Wind Turbine block uses a 2-D Lookup Table to compute the turbine torque output (Tm) as a function of wind speed (w_Wind) and turbine speed (w_Turb). When you opened this example, the Pm (w_Wind, w_Turb) characteristics was automatically loaded in your workspace (psbwindgen_char array). To display the turbine characteristics, double click on the block located below the Wind Turbine block.

The Secondary Load block consists of eight sets of three-phase resistors connected in series with GTO thyristor switches. The nominal power of each set follows a binary progression so that the load can be varied from 0 to 446.25 kW by steps of 1.75kW. GTOs are simulated by ideal switches.

The frequency is controlled by the Discrete Frequency Regulator block. This controller uses a standard three-phase Phase Locked Loop (PLL) system to measure the system frequency. The measured frequency is compared to the reference frequency (60 Hz) to obtain the frequency error. This error is integrated to obtain the phase error. The phase error is then used by a Proportional-Differential (PD) controller to produce an output signal representing the required secondary load power. This signal is converted to an 8-bit digital signal controlling switching of the eight three-phase secondary loads. In order to minimize voltage disturbances, switching is performed at zero crossing of voltage.

Simulation

For the example, the wind speed (10m/s) is such that the wind turbine produces enough power to supply the load. The diesel generator (not simulated) is stopped and the synchronous machine operates as a synchronous condenser with its mechanical power input (Pm) set at zero. The example illustrates the dynamic performance of the frequency regulation system when an additional 25 kW customer load is switched on.

Start simulation and observe voltages, currents, powers, asynchronous machine speed and system frequency on the two scopes. Initial conditions (xInitial vector) have been automatically loaded in your workspace so that simulation starts in steady state.

As the asynchronous machine operates in generator mode, its speed is slightly above the synchronous speed (1.011 pu). According to turbine characteristics, for a 10 m/s wind speed, the turbine output power is 0.75 pu (206 kW). Because of the asynchronous machine losses, the wind turbine produces 200 kW. As the main load is 50 kW, the secondary load absorbs 150 kW to maintain a constant 60 Hz frequency. At t=0.2 s, the additional load of 25 kW is switched on. The frequency momentarily drops to 59.85 Hz and the frequency regulator reacts to reduce the power absorbed by the secondary load in order to bring the frequency back to 60 Hz. Voltage stays at 1 pu and no flicker is observed.

Regenerate Initial Conditions

This example is set-up with all states initialized so that the simulation starts in steady-state. The initial conditions have been saved in the "power_windgen.mat" file. When you open this model, the InitFcn callback (in the Model Properties/Callbacks) automatically loads into your workspace the contents of this .mat file ("xInitial" variable).

If you modify this model, or change parameter values of power components, the initial conditions stored in the "xInitial" variable will no longer be valid and Simulink® will issue an error message. To regenerate the initial conditions for your modified model, follow the steps listed below:

  1. In the Simulation/Configuration Parameters/Data Import/Export Parameters menu, uncheck the "Initial state" parameter.
  2. Double click on the 3-Phase Breaker block and disable breaker switching (deselect "Switching of phase X" parameters for phases A, B and C").
  3. Change the Simulation Stop Time to 20 s. Note that in order to generate initial conditions coherent with the 60 Hz frequency, the Stop Time must an integer number of 60 Hz cycles.
  4. Start simulation. When Simulation is completed, verify that steady state has been reached by looking at waveforms displayed on the scopes. The final states which have been saved in the "xFinal" array can be used as initial states for future simulations. Executing the next two commands copies these final conditions in "xInitial" and saves this variable in a new file (myModel_init.mat). * >> xInitial=xFinal; * >> save myModel_init xInitial
  5. In the File/Model Properties/Callbacks/InitFcn window, replace the first line of initialization commands with "load myModel_init". Next time you open this model, the variable xInitial saved in the myModel_init.mat file will be loaded in your workspace.
  6. In the Simulation/Configuration Parameters menu, check "Initial state".
  7. Start simulation and verify that your model starts in steady-state.
  8. Double click on the 3-Phase Breaker block and re-enable breaker switching (check "Switching of phase X" parameters for phases A, B and C").
  9. Change the Simulation Stop Time back to 5 s.
  10. Save your Model.

References

[1] R. Gagnon, B. Saulnier, G. Sybille, P. Giroux; "Modeling of a Generic High-Penetration No-Storage Wind-Diesel System Using MATLAB®/Power System Blockset" 2002 Global Windpower Conference, April 2002, Paris, France

[2] B. Saulnier, A.O. Barry, B. Dube, R. Reid; "Design and Development of a Regulation and Control System for the High-Penetration No-Storage Wind/Diesel Scheme" European Community Wind Energy Conference 88, 6-10 june 1988, Herning, Denmark

[3] L. Mott (NPS), B. Saulnier (IREQ) " Commercial Wind-Diesel Project, St. Paul Island, Alaska" 14th Prime Power Diesel Inter-Utility Conference, May 28-June 2, Winnipeg, Manitoba, Canada