Francesco Marra
Simulation and laboratory implementation of a wind turbine control system with short-term grid faults management MSc Thesis
22 May 2008 – 31 October 2008
Francesco Marra
Simulation and laboratory implementation of a wind turbine control system with short-term grid faults management MSc Thesis
MSc Thesis Simulation and laboratory implementation of a wind turbine control system with short-term grid faults management This report was drawn up by: Francesco Marra Supervisors: prof. Franco Maddaleno prof. Marcello Chiaberge External supervisor: prof. Tonny W. Rasmussen
Ørsted•DTU Department of Electrical Engineering Technical University of Denmark Elektrovej Building 325 2800 Kgs. Lyngby Denmark www.oersted.dtu.dk/cet Tel: (+45) 45 25 35 00 Fax: (+45) 45 88 61 11 E-mail:
[email protected]
Release date:
31 October 2008
Category:
Master Thesis
Edition:
1st edition
Comments:
The thesis is part of the requirements to achieve the Master Degree in Mechatronic Engineering at Polytechnic of Turin Italy. This work represents 20 ECTS points at Polytechnic of Turin, 30 ECTS points at DTU.
Rights:
2
© Francesco Marra, 2008
ABSTRACT
The purpose of the thesis is the development of a wind turbine control system capable to handle short-term grid faults. The work has been performed in the department of Electrical Engineering of Danmarks Tekniske Universitet. The present thesis aims to contribute to a growing body of literature concerning with wind turbine control system design. First important know-how on wind technology is analyzed, considering the different topologies of system in the wind market, and then the work conducts to the development strategy that better fits to the aim of project. The thesis is developed in two steps: 1. Simulation of the designed control system, by the use of Matlab/Simulink software. 2. Laboratory implementation, with HiL, and software design by using the digital signal processor, ADSP-21020. Simulation and experimental results will be depicted and commented. Field Oriented Control for operation in normal condition and during grid faults will be considered as control method. In software development for laboratory implementation, Assembler language is used for DSP programming.
Thesis organization The thesis is organized in 9 chapters. Notation, list of tables, list of figures and abbreviations are shown after the table of Contents. Literature references are mentioned in square brackets by number. Detailed information about literature is presented in Bibliography. Appendices are assigned with letters and are arranged in alphabetical order. Equations are numbered in format (x.y) and figures are numbered in format Figure x-y, where x is the chapter number and y is the number of the item. The enclosed CD/ROM contains the project report in Word and PDF formats, source code of the designed software, Simulink models and documentation used throughout the project.
Author would like to thank the supervisor, prof. Tonny W. Rasmussen and the Department of Electrical Engineering of DTU for the important support provided throughout the period of the work.
3
CONTENTS
Abstract ........... ............ ........... ........... ........... ............ ........... ........... ............ .......3 List of figures ........... ........... ........... ........... ............ ........... ........... ........... ...........7 List of tables....................................................................................................11 Notation ........... ........... ........... ............ ........... ........... ........... ............ ........... ......12 Abbreviations ........... ........... ........... ............ ........... ........... ........... ........... .........14 1 Preface ..........................................................................................................15 1.1 Problem formulation ............................................................................................. 15 2 WIND SYSTEM TECHNOLOGY ........... ........... ........... ........... ........... ........... .17 2.1 Power control capability ....................................................................................... 17 2.2 Speed control capability ....................................................................................... 18 2.3 Control objectives in Wind technology ................................................................ 20 2.4 Project Development Strategy .............................................................................. 22 3 MODELING....................................................................................................25 3.1 Wind turbine model .............................................................................................. 25 3.2 Drive-train model.................................................................................................. 27 3.3 Induction machine model...................................................................................... 29 3.4 Back-to-back converter model.............................................................................. 31 4 CONTROL SYSTEM DESIGN.......................................................................34 4.1 Control of generator in different operation regions.............................................. 34 4.2 Current model ....................................................................................................... 35 4.3 Indirect Field Oriented Control ............................................................................ 36 4.4 Speed loop design ................................................................................................. 40 4.5 Flux loop design ................................................................................................... 44 4.6 Space vector PWM design.................................................................................... 48 5 SIMULATIONS ........... ........... ........... ............ ........... ........... ............ ........... ....53 5.1 Blocks of system ................................................................................................... 54 5.2 Implementation of blocks in Simulink ................................................................. 56 5.3 Simulation settings................................................................................................ 59 5.4 Simulation results ................................................................................................. 60 6 SOFTWARE DESIGN....................................................................................66 6.1 Process time-schedule........................................................................................... 67 6.2 Flow-chart ............................................................................................................. 70 6.3 Data structures ...................................................................................................... 72
5
Contents
7 CODE IMPLEMENTATION .......... ............ ........... ........... ........... ........... .........76 7.1 Timer management................................................................................................76 7.2 PI realization..........................................................................................................81 7.3 First order filter realization....................................................................................81 7.4 Signal conditioning................................................................................................82 8 LABORATORY IMPLEMENTATION ........... ............ ........... ........... ............ ... 84 8.1 Test bench setup ....................................................................................................84 8.2 Speed measurement method ..................................................................................85 8.3 Open loop tests and results ....................................................................................87 8.4 Closed loop tests and results .................................................................................89
9 Conclusion .......... ........... ........... ........... ........... ............ ........... ........... ...........94 9.1 Designed control strategy......................................................................................94 9.2 Simulation tool ......................................................................................................94 9.3 Digital Signal Processor in Wind Energy..............................................................95 9.4 Software development...........................................................................................95 9.5 Simulation and experimental results .....................................................................95 9.6 Further work ..........................................................................................................96 References .......... ............ ........... ............ ........... ............ ........... ............ ...........97 A Reference frame theory .......... ........... ........... ........... ........... ........... ........... .. 99 B Laboratory equipment .......... ............ ........... ........... ........... ........... ........... . 103
6
LIST OF FIGURES
Figure 2-1: Wind turbine concepts ................................................................................ 19 Figure 2-2: Ideal power regulation for a wind turbine .................................................. 20 Figure 2-3: Wind turbine system................................................................................... 22 Figure 2-4: Reference system for laboratory implementation....................................... 23 Figure 2-5: Torque characteristic of the induction machine.......................................... 24 Figure 3-1: Power as a function of rotor speed for different wind speeds. ................... 26 Figure 3-2: Power as a function of rotor speed for different pitch angle at Vn............. 26 Figure 3-3: Power as a function of rotor speed for different wind speeds. ................... 26 Figure 3-4: Two-mass model of the wind turbine drive train........................................ 27 Figure 3-5: Bode diagram of Wg/Tg transfer function.................................................. 28 Figure 3-6: Stator αβ and dq equivalent windings ........................................................ 29 Figure 3-7: Back-to back converter ............................................................................... 31 Figure 3-8: Star connected generator and generator side converter .............................. 32 Figure 4-1: Ideal power regulation for a WT................................................................. 34 Figure 4-2: Current model: rotor flux estimation block diagram .................................. 35 Figure 4-3: Indirect field oriented control system with IG and VSI.............................. 38 Figure 4-4: Torque in terms of rotor flux and q-axis stator current............................... 39 Figure 4-5: Speed loop .................................................................................................. 40 Figure 4-6: isq loop ....................................................................................................... 41 * Bode diagram ................................................................................... 42 Figure 4-7: isq / isq *
Figure 4-8: isq / isq step response..................................................................................... 42 Figure 4-9: ωr loop ....................................................................................................... 42 Figure 4-10: Speed loop Bode diagram......................................................................... 44 Figure 4-11: Speed loop step response .......................................................................... 44 Figure 4-12: isd loop...................................................................................................... 44
7
List of figures
* Figure 4-13: isd / isd Bode diagram.................................................................................46 * Figure 4-14: isd / isd step response...................................................................................46
Figure 4-15: isϕ loop ......................................................................................................46 * Figure 4-16: isϕ / isϕ Bode diagram..................................................................................47
Figure 4-17: isϕ / is*ϕ step response...................................................................................47 Figure 4-18: V ref in SVM...............................................................................................48 Figure 4-19: State sequence for symmetric SVM ..........................................................49 Figure 4-20: Switching sequence in symmetric SVM ...................................................51 Figure 4-21: Switching sequence in asymmetric SVM ..................................................51 Figure 5-1: Wind turbine control system .......................................................................53 Figure 5-2: F.O.C. block ................................................................................................56 Figure 5-3: Speed controller block.................................................................................57 Figure 5-4: Fault manager block ....................................................................................58 Figure 5-5: SV-PWM block ...........................................................................................59 Figure 5-6: SV-PWM calculation in sector 1.................................................................59 Figure 5-7: View to solver options of Simulink model..................................................59 Figure 5-8: Simulation time used in simulations ...........................................................60 Figure 5-9: Rotor speed profile as result of simulation in r.p.m. ...................................61 Figure 5-10: Zoom on rotor speed profile ......................................................................61 Figure 5-11: Average electric power generated by the IG.............................................62 Figure 5-12: Average current on the DC side ................................................................62 Figure 5-13: Current on the DC side ..............................................................................63 Figure 5-14: Phase-to-phase voltage of SVM ................................................................63 Figure 5-15: Rotor speed profile during grid fault.........................................................64 Figure 5-16: Electric power under grid fault..................................................................64 Figure 5-17: Average current on the DC side under grid fault ......................................65 Figure 6-1: Sample time Ts............................................................................................68 Figure 6-2: Software time chart .....................................................................................69 Figure 6-3: Flow chart....................................................................................................70 Figure 6-4: Data structures of the in-use timing table....................................................73 Figure 6-5: Data structures of the temporary timing-table.............................................74 Figure 6-6: Loading of the new timing-sequence ..........................................................75
8
List of figures
Figure 6-7: Slide process of linear buffer ...................................................................... 75 Figure 7-1: First order digital filter................................................................................ 82 Figure 7-2: Conditioning procedure .............................................................................. 83 Figure 8-1: Laboratory test bench ................................................................................. 84 Figure 8-2: Control Panel of Frequency Converter ABB ACS600 ............................... 85 Figure 8-3: Phase-to-phase SVM voltage and VDC ..................................................... 87 Figure 8-4: Phase voltage and line current .................................................................... 87 Figure 8-5: Phase voltage and line current at rated speed ............................................. 88 Figure 8-6: Phase-to-phase voltage of SVM and line current at speed of
100rpm .................................................................................................................. 89 Figure 8-7: Rotor speed measure with ωr*
= 100 rpm , fc = 50Hz ................................. 90
* r
= 100 rpm , fc = 10Hz ................................. 90
Figure 8-8: Rotor speed measure with ω
*
Figure 8-9: Rotor speed measure under grid fault, with ωr
= 100 rpm , fc =
50Hz ...................................................................................................................... 91 * Figure 8-10: Rotor speed measures with ωr
= 100 rpm
and different torque
commands.............................................................................................................. 92
9
LIST OF TABLES
Table 1: Open loop transfer functions of isq loop ........................................................ 41 Table 2: Closed loop t ransfer functions of vsq loop ..................................................... 42 Table 3: Open loop transfer functions of speed loop ................................................... 43 Table 4: Closed loop t ransfer functions of speed loop ................................................. 43 * Table 5: Open loop transfer functions of isd loop ........................................................ 45 * Table 6: Closed loop t ransfer functions of isd loop ...................................................... 45
Table 7: Open loop transfer functions of isϕ loop ........................................................ 46 Table 8: Closed loop t ransfer functions of is*ϕ loop ...................................................... 47 Table 9: SV-PWM duty cycles ....................................................................................... 52 Table 10. Sample time of the subsystems ...................................................................... 60 Table 11: Signal conditioning ....................................................................................... 86 Table 12: Closed loop settings ....................................................................................... 89 Table 13: Closed loop settings ....................................................................................... 91
11
Notation
NOTATION
Symbol
Unit
Definition
Rs
Ω
Stator resistance
ωs
rad/s
IG synchronous speed
ω g , ωr
rad/s
Generator rotor speed
fs
Hz
Line frequency
Vmin
m/s
Cut-in wind speed
Vmax
m/s
Cut-out wind speed
Vn
m/s
Rated wind speed
θ
degree
Pitch angle of the wind turbine blades
v
m/s
wind speed
V
m/s
Mean wind speed
Tref
Nm
Reference torque
ωWT
rad/s
WT speed
TWT'
Nm
WT torque referred to the high speed shaft
' ωWT
rad/s
WT speed referred to the high speed shaft
JWT
Kg ⋅ m 2
Moment of inertia of WT referred to the generator side
J gen
Kg ⋅ m 2
Moment of inertia of generator
Tshaft
Nm
Shaft torque on generator side
K gear
-
Gearbox gain
V ref
V
Reference line-to-starpoint space vector voltage
12
Notation
Tpwm
s
Switching period
Ts
s
Sample time
Teta
rad
Electric angle
PWT
W
WT mechanical power
Rr
Ω
Rotor resistance
ωdq
rad/s
Speed of dq reference frame
Ls
H
Stator winding inductance
LM
H
Mutual inductance
Lr
H
Rotor winding inductance
λ rdq
Wb
Rotor flux linkage space vector in dq coordinates
Tr
s
Rotor time constant
S
-
IG slip speed
Ra
Ω
Equivalent resistance
Ta
s
Equivalent time constant
p
-
Pole pairs
Te
Nm
Electromagnetic torque
13
Abbreviations
ABBREVIATIONS
Acronym
14
Definition
WECS
Wind energy conversion system
WT
Wind turbine
IG
Induction generator
SCIG
Squirrel cage induction generator
WRIG
Wound rotor induction generator
FSPCWT
Full-scale power converter for wind turbine
DFIGWT
Doubly-fed induction generator for wind turbine
PWM-VSI
Pulse width modulation for Voltage Source Inverter
VSC
Voltage source converter
DFOC
Direct field oriented control
IFOC
Indirect field oriented control
PI
Proportional-integral controller
MAIN
Subroutine where control algorithm is implemented
1 PREFACE
The progress of wind power technology in recent years has exceeded all expectations, with Europe leading the global market of MW wind-farm. Such a progress has led to cost reduction to levels comparable, in many cases, with conventional methods of electricity generation. Anyway, the increased penetration of wind power in the grid has entailed important technical barriers that limit the development, as stability is a key issue. The Grid Operators in different countries are issuing new grid requirements, called also grid codes that impose more restrictions for the wind turbines behavior especially under grid faults. These new requirements are challenging the control of the wind turbines and new control strategies are needed to meet the target. When a short-term grid fault occurs in a Megawatt wind farm, grid companies with large amounts of wind power presently are starting to require wind turbines to remain connected to the grid during a fault, to avoid the time of reconnection process, which need 4-5 minutes. Furthermore it is economically convenient to handle the fault, without disconnecting the wind turbine from the grid, this permit to store the incoming energy from the wind and to recover it, at the end of fault. In order to be able to stay connected under grid faults special control strategy has to be employed. This strategy should ensure that current and voltage protections are not tripped and no electric power is delivered to the grid. The project aims to simulate a new technical solution in terms of control under grid faults and to test the real system on a laboratory test-bench for experimental measurements, by means of a Digital Signal Processor.
1.1 Problem formulation The main goal of this project is the design of a wind turbine control system capable to handle short-term grid faults. Grid faults can be divided by type of event as follow: Blackout: total absence of electrical current, due to excessive demand or grid damage; Sag: short grid under voltage, due to a peak of demand; Harmonic: variation on the wave shape produced by inductive loads; Surge: short grid over voltage, typically due to the switching off of a big electrical
process;
15
Preface Spike: sudden grid voltage pulse, due to a lightning or to a voltage recovery after a
blackout; Since most of grid fault events are short-term, in the order of 100-300ms of duration it is convenient that control system is able to handle the fault condition without disconnecting the wind turbine from the grid. In fact, in case of disconnection, it would need some minutes to the wind turbine to reach again the steady state condition.
The idea is to increase the generator rotor speed during the fault, in order to store the incoming energy from the wind, in form of kinetic energy in the wind turbine inertia. The stored kinetic energy, transformed in electric energy, can flow through the grid at the end of fault. Anyway, by this method, only short-term grid faults, in the order of 100-300ms time-duration, can be handled, since generator speed can increase till allowed values.
16
WIND SYSTEM TECHNOLOGY
2
WIND SYSTEM TECHNOLOGY In this chapter the main points of wind system technology are presented as background know-how, in order to conduct to the better development strategy for the WT control system.
2.1 Power control capability Wind technology has to cope with the intermittent and seasonal variability of the wind as well as with grid-fault events. During normal condition the control begins to work when wind speed is above the cutin speed so that power is injected into the utility grid; moreover they include some mechanisms to limit the captured power at high wind speeds to prevent overloading. Three control strategies can be used for captured power control: • stall control; • pitch control; • active stall control. The stall control is based on a specific design of the blades so that stall occurs when the wind speed exceeds a certain level; it means that the captured power is automatically limited in the rated power range. This method is simple, robust and cheap but it has low efficiency at low wind speed. In case of pitch control, blades can be tuned away from or into the wind as the captured power becomes too high or too low; this is performed by rotating the blades, or part of them, with respect to their longitudinal axes. Below rated wind speed, blades are pitched for optimum power extraction whereas above the rated wind speed blades are pitched to small angle of attack for limiting the power. Advantages of this type of control are good power control performance, assisted start-up and emergency power reduction; the biggest disadvantage is the extra complexity due to the pitch mechanism. In case of active stall control, stall is actively controlled by pitching blades to larger angle of attack with wind speed above the rated value.
17
WIND SYSTEM TECHNOLOGY
Under fault conditions the control should be able to freeze out the electric power generation without disconnecting the wind turbine from the grid. This is possible by using Direct Field Oriented Control and power electronics as well.
2.2 Speed control capability Beyond the captured power controllability, another important feature is the speed controllability. Based on this, WTs are classified into two main categories: • Fixed speed WTs; • Variable speed WTs. Fixed speed WTs are equipped with induction generator (squirrel cage induction generator SCIG or wound rotor induction generator WRIG) directly connected to the grid and a capacitor bank for reactive power compensation. This is a very reliable configuration because of the robust construction of the standard IG. The IG synchronous speed is fixed and determined by the grid frequency regardless of the wind speed; this implies that such WTs can obtain maximum efficiency at one wind speed. As power electronics is not involved in this configuration, it is not possible to control neither reactive power consumption nor power quality; in fact due to its fixed speed, wind fluctuations are converted into torque fluctuations, slightly reduced by small changes in the generator slip, and transmitted as power fluctuations into the utility grid yielding voltage variations especially in weak grids. Variable speed WTs are equipped with an induction or synchronous generator connected to the grid through a power converter. The variable speed operation, made possible by means of power electronics, allows such WTs to work at the maximum conversion efficiency over a wide range of wind speeds. The most commonly used WT designs can be categorized into four categories: • fixed speed WTs (FSWT); • partial variable speed WTs with variable rotor resistance (PVSWT); • variable speed WTs with partial-scale frequency converter, known as doubly-fed induction generator-based concept (DFIGWT); • variable speed WTs with full-scale power converter (FSPCWT).
18
WIND SYSTEM TECHNOLOGY
Figure 2-1: Wind turbine concepts Figure 2-1 shows the structure of the above concepts. They differ in the generating
system (electrical generator) and the way used to limit the captured aerodynamic power above the rated value. - Fixed speed WTs are characterized by a squirrel cage induction generator (SCIG) directly connected to the grid by means of a transformer. The rotor speed can be considered locked to the line frequency fs as very low slip is encountered in normal operation (typically around 1%). The reactive power absorbed by the generator is locally compensated by means of a capacitor bank following the production variation. A soft-starter can be used to provide a smooth grid connection. This configuration is very reliable because the robust construction of the standard SCIG and the simplicity of the power electronics. - Partial variable speed WTs with variable rotor resistance use a WRIG connected to the grid by means of a transformer. The rotor winding of the generator is connected in series with a controlled resistance; it is used to change the torque characteristic and the operating speed in a narrow range (typically 0 − 10% above the synchronous speed). A capacitor bank performs the reactive power compensation and smooth grid connection occurs by means of a soft-starter. - For a DFIGWT, the stator is directly coupled to the grid while a partial scale power converter controls the rotor frequency and, thus, the rotor speed. The partial scale power converter is rated at 20% − 30% of the WRIG rating so that the speed can be varied within ± 30% of the synchronous speed. The partial scale frequency converter makes such WTs attractive from the economical point of view. However, slip rings reduce the reliability and increase the maintenance.
19
WIND SYSTEM TECHNOLOGY
- Variable speed FSPCWTs are characterized by the generator connected to the grid by means of the full-scale frequency converter.
2.3 Control objectives in Wind technology WECSs connected to the grid must be designed to minimize the cost of supplied energy ensuring safe operation, acoustic emission and grid connection requirements. Control objectives involved in WECSs are: • energy capture; • mechanical load; • grid connection requirements.
Energy capture Variable-speed variable-pitch WTs are usually controlled according to the curve in Figure 2-2; it represents the energy capture capability of a WT in the generated powerwind speed plane.
Figure 2-2: Ideal power regulation for a wind turbine
As shown in Figure 2-2 , the range of operational wind speed is delimited by the cut-in wind speed Vmin and cut-out wind speed Vmax. The WT remains stopped beyond these limits. Below Vmin the available energy is too low to compensate the operational cost whereas above Vmax the WT is shut down to prevent mechanical overload. The selection of the Vmax speed is a trade-off between the following items: • constructing the WT robust enough to support high mechanical stress would be economically inconvenient;
20
WIND SYSTEM TECHNOLOGY
• even though strong winds have large energy content, they occur seldom so their contribution to the annual production is negligible. A good compromise is often V max = 25 m/s. The rated mean wind speed Vn is the speed at which the electrical generator works at its rated power. Within the interval [V min; Vn], the available power is lower than the rated value and so the WT speed is controlled to maximize the captured energy (variable speed, fixed pitch operation). In this 3
operational region, the captured power is proportional to V , where
V is the mean wind
speed. In countries where the wind energy is dispatched as traditional energy, the captured power has to react based on the set-point given by the dispatched center; it follows that the captured power could be controlled to be less than the available one. Above Vn, the induction generator is controlled such that the captured power is limited to the rated value to prevent mechanical overload (fixed-speed variable-pitch operation). In this region the available power in the wind exceeds the rated power, thus the WT must be operated with an aerodynamic efficiency lower than in the previous region.
Mechanical loads Mechanical loads can cause fatigue damage and thereby reduced lifetime of the WT. Since the overall cost is spread over a shorter period of time, the cost of energy will rise. Mechanical loads can be divided into static loads, which result from the interaction of the WT with the mean wind speed, and dynamic loads, which comprise variation of the aerodynamic torque that propagate down the drive train and the mechanical structure. The control system of a WT has a very strong impact especially on the dynamic mechanical loads. The control of the electric generator affects the propagation of drivetrain loads whereas the pitch control affects the structural loads.
Grid connection requirements The injection of large amount of wind power into a network might affect the steady state voltage especially in presence of weak grid. To ensure electrical system stability, system operators in many European countries are setting grid connection requirements for wind generators also known as grid codes (GCs). For MW-size WECSs, very high technical demands are required, such as: • regulation of active and reactive power (frequency and voltage control); • fast responses under dynamic situation; • power quality; • low voltage ride-through capability. WECSs must provide the power quality required to ensure the stability and reliability of the power system they are connected to, and to satisfy the customers connected at the same grid. Voltage and frequency at the point of common coupling (PCC) must be kept as stable as possible. In general, frequency is a quite stable variable. Frequency
21
WIND SYSTEM TECHNOLOGY
variations are always due to power unbalance between generation and consumption (e.g. generators accelerate when the supplied power exceeds the consumption, hence increasing the frequency; analogously they slow down when they can not cover the power demands, thereby frequency decreases). Voltage variations take place as a consequence of variation of the mean wind speed; the amplitude of these variations depends on the impedance of the grid connected at the PCC, on active and reactive power flows. A way of attenuating voltage variations, without affecting power extraction, is to control the reactive power flow. Nowadays the most effective way of reactive power control is based on power electronics. In the next years, the major research challenge is directed towards the grid integration of large wind farms to the electrical power grid. It implies that the survival of different WT concepts is strongly connected by their ability to support the grid, to handle faults on the grid and to comply with grid requirements of the utility companies.
2.4 Project Development Strategy The Full-scale Power Converter WT concept is used to develop the project because it matches with the laboratory equipment. We can’t use the doubly-fed power converter strategy because we have not a doubly-fed induction generator, but both the strategies are suitable to fulfill the goal. As generating system, an induction machine is selected. Induction machines are cheaper and easily controllable respect to synchronous machine; this is the reason why they are preferred in the wind market. The reference system is reported in Figure 2-3.
Figure 2-3: Wind turbine system
The real reference system is represented in Figure 2-3 where
Tshaft and ω gen are
respectively the mechanical torque and the rotational speed of the induction generator. The IG is controlled by Indirect Field Oriented Control method, which uses the current model of the machine that is the most used concept on induction machine control for industrial applications. Furthermore Indirect Filed Oriented Control makes use of the 3-
22
WIND SYSTEM TECHNOLOGY
phase currents and rotor speed measurements to perform the algorithm, and current and speed sensors are available on the laboratory test bench. The IG is connected to the ac grid through a power converter, the so-called back-toback PWM-Voltage Source Inverter; it is a bi-directional power converter consisting of two conventional VSC (generator and grid side converters). The pitched-controlled WT and the gearbox are not available for laboratory implementation therefore they are implemented by means of a torque-controlled asynchronous machine (master). The grid-side converter is not used, as it would require its own control system; since its control is not included in this project, the grid side converter is substituted by a dc power supply directly connected at the dc link. The electric power produced, flowing through the generator side converter, is dissipated by a braking resistor whose current is controlled by a chopper circuit, included in the test bench. According to the above considerations, the layout of the system is modified as presented in Figure 2-4. The reference torque
Tref is produced according to the models of the WT and the wind.
Figure 2-4: Reference system for laboratory implementation
Induction machine principle As shown in torque characteristic of Figure 2-5, an induction machine can operate in different regions. In order the induction machine to operate as generator the following work conditions must be ensured:
•
negative sleep speed (typically less than 1% for large wind farm): the rotor speed is higher than rated speed; of the overall generator region of torque characteristic, only the stable interval can be considered for project development.
•
reactive power supply: in order to produce the magnetization current, and so the rotational magnetic field, reactive power must be supplied to the machine. For grid connected case, the reactive power is supplied from a capacitor bank for the 80% and from the grid for the remaining 20%. While in isolated case reactive power is produced directly by the power converter (generator-side converter).
23
WIND SYSTEM TECHNOLOGY
The wind turbine moves the induction generator rotor in real case, while a driver motor is used for laboratory implementation. The driver motor is powered by a frequency converter commanded in torque operation.
Figure 2-5: Torque characteristic of the induction machine
24
3
MODELING In this chapter the modelling of the system is done. The considered models are used on next step for simulations on Simulink platform.
3.1 Wind turbine model The WT converts wind energy to mechanical energy by means of a torque applied to a drive train. A model of the WT is necessary to evaluate the torque and power production for a given wind speed and the effect of wind speed variations on the produced torque. The torque TWT and power PWT produced by the WT within the interval [V min, Vmax], where V is the mean wind speed, are functions of the WT blade radius R, air pressure, wind speed and of coefficients C Q and CP.
1
TWT
=
PWT
=C
ρπ R CQ ( λ ,θ )V 3
2
( 3.1)
1
(λθ, ) PV =ρ P
2
RλθCP ( , 2
2
)V
3
CP is known as the power coefficient and characterizes the ability of the WT to extract energy from the wind. CQ is the torque coefficient and is related to CP according to:
CQ
CP
=
( 3.2)
λ
Here, λ is the tip-speed-ratio,
λ
=ω
WT
R
( 3.3)
V
where ωWT is the WT rotor speed. As seen from previous equations, TWT and PWT depend both on the coefficient CP that is normally provided by manufacturer in the form of a lookup table. An alternative way to calculate CP is based on the following approximation:
C P (λ ,θ ) = 0.22(
116 λi
−0.4
θ− 5)
−
e
12.5 λi
( 3.4)
25
MODELING
where θ is the pitch angle and λi is described by the equation:
1
=
λi λ
1
+ 0.08 θ θ
−
0.035 3
+1
( 3.5)
Figure 3-1 shows how PWT varies with rotor speed for different wind speeds. The
optimum tip speed ratio curve gives the highest efficiency points for P WT. As seen from figure, for a 2.2KW wind turbine, with rated wind speed of 8m/s, the maximum power is at Vn. Figure 3-2 shows how PWT varies for different θ at the rated mean wind speed Vn. Maximum PWT is reached for θ =0 but as θ is increased, PWT decreases. This is useful to prevent mechanical overloading of the WT when wind speed exceeds Vn.
Figure 3-1: Power as a function of rotor
speed for different wind speeds.
Figure 3-2: Power as a function of rotor speed for different pitch angle at Vn.
Similar curves as the above-mentioned figures are valid for T WT as well. As for power, torque varies similarly with ωWT andθ . For the simulation case the Simulink wind model has been used. It differs from the analyzed one, essentially for the use of normalized unit (p.u).
Figure 3-3: Power as a function of rotor speed for different wind speeds.
As we can see from Figure 3-3, the Wind model block receives the wind speed and generator rotor speed as inputs and puts out the mechanical torque T m for the IG.
26
MODELING
3.2 Drive-train model The rotating shaft system in a wind turbine is divided in sections: the turbine itself is quite heavy and the machine rotor is light. The shaft, connecting the generator and the turbine cannot be assumed to be of infinite stiffness: the gearbox reduces the stiffness, therefore the shaft will twist as it transits torque from one end to the other. Typical value of resonance frequency of such systems is in the range of 1-2Hz, and for a specific Danish windmill the resonance frequency is known to be 1.67 Hz. Thus a model of the drive train is required as it has influence on grid interconnection by producing power fluctuations. Other mechanical dynamics, such as tower and flap bending modes, are negligible from this point of view. A two mass model on the generator side is considered; the model is represented in '
Figure 3-4 where J WT and J gen are respectively the inertia of the wind turbine referred
to the generator side, and the inertia of the induction generator.
Figure 3-4: Two-mass model of the wind turbine drive train
The moment of inertia for the low speed shaft, high-speed shaft and gearbox wheels can '
be neglected because they are small compared with J WT and J gen . Therefore the resultant model is essentially a two-mass model connected by a shaft characterized by an equivalent torsional stiffness K e' and damping factor De' . The drive-train converts the aerodynamic torque produced by the WT, T WT, into a torque at the high-speed shaft T shaft. This conversion is mathematically described by the following differential equations:
ωk
=ω −ω K '
g
WT
gear
•
θk
=ω
•
k '
TWT
−T
( 3.6)
ω'WT
=
Tshaft
= D (ω − ω K
shaft
'
J WT '
e
'
g
WT
) + K eθ k '
gear
27
MODELING
where
K gear is the proportional gain of the gearbox, ωk is the torsional shaft speed,
'
TWT is the WT torque referred at the high-speed shaft, ω ' is the WT rotor speed, Tshaft WT
is the torque applied at the rotor of the generator and
ωg
is the generator mechanical
speed. The torque Tshaft available to be transmitted by the shaft is: ' + J WT' Tshaft = TWT
' dωWT dt
( 3.7)
The torque at the generator end, seen from the shaft is:
Tshaft = Tg − J gen
dω g
( 3.8)
dt
The twisting of the shaft depends on the shaft torsional stiffness K shaft: (θ g
− θWT ) =
Tshaft
( 3.9)
K shaft
The transfer function between the generator speed and the torque at generator side is '
shown in (3.10). The constants K t and Kg are 1/ J WT and 1/ J gen respectively.
H ( s) =
ωg ( s)
T ( s)
=
g
K g ⋅ s 2 + K t ⋅ K shaft s 3 + ( K⋅ K+ t
⋅
shaft
K⋅ K g
) s
( 3.10)
shaft
The Bode diagram reported in Figure 3-5 represents the typical frequency response of such a system. By the way, since the WT and the gearbox are not included in the laboratory equipment, both simulations and experimental tests are conducted without considering the drive-train model.
Figure 3-5: Bode diagram of Wg/Tg transfer function
28
MODELING
3.3 Induction machine model In this section the model of the induction machine in the rotating dq reference frame is derived. First, equations in the
αβ stationary reference frame are obtained. The α-axis is
aligned with the stator a-axis, as shown in Figure 3-6.
Figure 3-6: Stator αβ and dq equivalent windings
In such reference frame the induction machine can be represented by means of space vector as follows:
v sαβ = Rs iαβs
+
d λ sαβ
( 3.11)
dt The current
i sαβ , voltage v sαβ
and stator flux linkage
λ sαβ space vectors with respect
to the α-axis are represented in the rotating dq reference frame as follows:
= v sdq ⋅ e jθ jθ i sαβ = i sdq ⋅ e jθ λ sαβ = λ sdq ⋅ e v sαβ
( 3.12)
dq
( 3.13)
dq
( 3.14)
dq
where θ dq is the angle between the stator α-axis and the d-axis. Substituting (3.12), (3.13) and (3.14) into (3.11)
v sdq ⋅ e =
jθdq
R⋅ s i sdq + e⋅
jθdq
d λ sdq jθ e dt
dq
( 3.15)
Hence
v sdq = Rs i sdq +
d λ sdq + jω dq λ sdq dt
Using a similar approach, the rotor voltage equations in the
( 3.16)
δγ reference frame, rotating
at ωr, can be obtained:
29
MODELING
v rδγ
= 0 = Rr i rδγ +
d λ rδγ dt
( 3.17)
v rδγ = 0. In order to obtain a model of the induction
Since the rotor is short circuited,
machine, both stator and rotor variables must be represented in the same reference frame. Being θ r the angle between the rotor δ-axis and the stator α-axis, it yields:
λ rδγ = λ αβ ⋅ e − jθ s
i rδγ = i sαβ ⋅ e − jθ
( 3.18)
r
( 3.19)
r
Substituting (3.18) and (3.19) in (3.17) and multiplying by
jθ r
e the rotor voltage
equation in the αβ reference frame is obtained:
v rαβ
d λ rαβ dt
= =0 R+r i rαβ −
jω r λ rαβ
( 3.20)
The current, voltage and flux linkage rotor space vectors with respect to the
α-axis are
represented in the rotating dq reference frame as follows:
= v rdq ⋅ e jθ jθ i rαβ = i rdq ⋅ e jθ λ rαβ = λ rdq ⋅ e v rαβ
( 3.21)
dq
( 3.22)
dq
( 3.23)
dq
Where θ is the angle between the stator α -axis and the d-axis. Substituting (3.21), dq
(3.22), (3.23) into (3.20) jθdq
θ
v rdq ⋅ e =
j θ dq
R ⋅ r i+rdq e ⋅
−
d λ rdqθ j ⋅ ej dt
ω r λ rdq e
dq
j
( 3.24)
dq
Hence
v rdq
d λ rdq − dt
==0 R+r i rdq −
j (ω r
ω dq )λ rdq
( 3.25)
3.16 and 3.25 can be written as function of the stator current space vector
i sdq and the
rotor linkage flux space vector λ rdq . After mathematical manipulation:
v sdq = R+s i sdq
σ+ Ls
d i sdq σ ω + j dt
0−= σ r L+M i sdq σλ+
r
dq
λ+
rdq
L d Lr dt
+Ls i sdq λ ωMλ d −ω rdqωλ j ( dt
rdq
dq
r
j
dq
)
rdq
LM Lr
rdq
( 3.26)
( 3.27)
where
λ rdq
= Lr i rdq + LM i sdq
is the rotor flux linkage referred to the stator side:
30
( 3.28)
MODELING
σ
=1−
σr
=
L2M Lr Ls
( 3.29)
1 Tr
( 3.30)
is the dispersion factor and
Rr Lr
=
is the inverse of the rotor time constant Tr.
3.4 Back-to-back converter model The back-to-back converter consists of two voltage source converters (VSC) and a capacitor bank as shown in Figure 3-7. In generator mode operation, the generator side converter absolves, at the same time, the following functions:
• •
inverter for reactive power supply through the IG rectifier for the generated current from the IG
Therefore, due to the bi-directional flow of current, the grid side converter is considered an active power converter. On the other hand the grid-side converter operates as inverter, since it receives the DC voltage on the DC link and produces the 3-phase voltages for the grid. The grid-side converter need of its own control system, anyway its design beyond from the aim of project, thus the grid-side converter will not be considered later on.
Figure 3-7: Back-to back converter
The model of the back-to-back converter is necessary in simulation to feed the generator model. But since only the generator side converter is considered, the model of the whole back-to-back converter is not needed. Consequently, the model of the generator side VSC is sufficient to carry out the simulations. The model of the VSC is an average model as the system includes a mechanical system making the time frame of interest much longer than the switching time of the converter. Therefore, there is no need to have a switching model where the effect of switching adds little significance to the result.
31
MODELING
For a star connected generator, the generator side voltages VA0, VB0 and VC0, shown in Figure 3-8, can be calculated using (3.31), (3.32) and (3.33) where V AN, VBN and VCN
are the line-to-neutral voltages, between the specified points A, B or C and the neutral point N.
Figure 3-8: Star connected generator and generator side converter
As the average model is used, V AN, V BN and VCN are the average voltages and S A, SB and SC are the duty cycles.
V 3 V v− + − DC ( s A 0N 3 V v0−N − +DC ( s A 3
v A0
= vvs − = 0 N − AV=DC v0 N − − DC (2 s A sB sC ) AN
vB 0
= vBN− =vs0 N
vC 0
= vCN− =v0 NC s−VDC=
−BVDC=
( 3.31)
2 sB
sC )
( 3.32)
sB
2 sC )
( 3.33)
where V0N is defined as:
v0 N
=
1 3
(v AN +
V 3
+vBN= vCN ) + +DC ( s A sB sC )
( 3.34)
The current IDC can be expressed as: A ⎢⎡ii ⎥⎤ = s s s [ ] DC A B C ⎢ B⎥ ⎢⎣iC ⎥⎦
With matrix notation the average voltages can be expressed as follow:
32
( 3.35)
MODELING
⎡vA0 ⎤ ⎡ sA ⎤ 2/3 -1/3 -1/3 ⎤ ⎢v ⎥ = V ⎡-1/3 ⎢ ⎥ 2/3 -1/3 ⎥ s ⎢ B 0 ⎥ DC ⎢-1/3 -1/3 ⎢ B⎥ 2/3 ⎣ ⎦ ⎢s ⎥ ⎢⎣vC 0 ⎥⎦ ⎣ C⎦ Gain
( 3.36)
33
CONTROL SYSTEM DESIGN
4
CONTROL SYSTEM DESIGN
4.1 Control of generator in different operation regions A variable-speed variable-pitch WT is controlled as represented in Fig.4-1 in such a way that: • when the mean wind speed V < V min (region 1), the WT rotates but it is not connected to the grid because the power production is not enough to cover the operational cost; • when Vmin ≤ V ≤ n
(region 2), the WT is operated at variable-speed mode such that
the captured power is maximized; the pitch angle is kept to the optimum value, ideally zero; • when Vn
≤V
max (region
3), the WT works in variable-pitch operation for
limiting the captured power to the rated value; the WT rotor speed is then kept constant; • when the mean wind speed V > V max (region 4), the WT is stopped by means of the pitch control system to avoid mechanical overloading; in this case mechanical breaks are normally not enough so blades are pitched to very small angle of attack.
Figure 4-1: Ideal power regulation for a WT
Depending on the WT operation region, different control strategies can be used to perform the desired action. In this project the operation region 2 will be considered, since a wind turbine is not available for pitch control implementation. In region 2, the induction generator is controlled to rotate at the speed that corresponds to the maximum power coefficient CPMAX . The generator reference speed is obtained
34
CONTROL SYSTEM DESIGN
directly from a lookup table that producers provide for installation, and this table depends on the electrical-mechanical features of such a wind turbine.
4.2 Current model In order to use the IFOC concept, a current estimation model is needed. The current estimation model can be either represented in the αβ stationary reference frame or in the dq rotating reference frame. Considering a d-q rotating reference frame aligned with the rotor axis can be written as follows: '
iS
dq
=
λr
dq
LM
(1 + s ⋅ Tr )
( 4.1)
The following steps can be used for the rotor flux estimation: • transforming the stator current space vector i s(a,b,c) into i sdq by means of the Park
(i abc
→ αβ) and Clark
(αβ
→
dq) transformations;
• calculating rotor flux components λ 'rq and λ 'rd using the previous equation; • calculating rotor flux components λ 'rα and λ 'rβ using the inverse Park transformation; • calculating the magnitude λ 'r • calculating cosωϕ • calculating isϕ
=
= λ 'rα / λ'r
and sinωϕ
= λ 'rβ / λ'r
λ 'r LM
• calculating the rotor flux frequency ωϕ by means of the slip compensation equation. The block diagram of the current model in the dq reference frame is shown in Figure 4-2:
Figure 4-2: Current model: rotor flux estimation block diagram
The rotor flux estimation based on the current model requires the measured speed and thus the encoder, but the advantage is that the estimation is well performed down to zero
35
CONTROL SYSTEM DESIGN
speed. The estimation accuracy is affected by the variation of machine parameters especially at high speed. For this reason this estimation model is not suitable at high speed as a voltage model. Since the current model flux estimation is better at low speed and the voltage model is better at high speed, the best solution for the rotor flux estimation would be a hybrid model. However in this project, the current model has been selected because it can work at every speed even though the accuracy decreases as the rotor speed increases.
4.3 Indirect Field Oriented Control This method consists on controlling stator currents represented by a space vector in a rotating reference frame whose coordinates are d and q. The electrical model of the electrical machine, for stator and rotor respectively, are represented by following equations:
v sdq
= R+s i sdq σ+ Ls
d i sdq σ ω + j dt
0−= σ r L+M i sdq σλ+
dq
λ+
rdq
r
+Ls i sdq λ
L d ωMλ Lr dt
d −ω rdqωλ j ( dt
rdq
dq
r
j
dq
)
rdq
LM Lr
rdq
( 4.2)
( 4.3)
where
λ rdq
= Lr i rdq + LM i sdq
( 4.4)
is the rotor flux linkage referred to the stator side σ
=1−
LM
( 4.5)
Lr Ls
is the dispersion factor and
σr
=
Rr Lr
=
1
( 4.6)
Tr
is the inverse of the rotor time constant Tr. '
In the FOC the d-axis is aligned with the d-axis of rotor flux linkage space vector λ rdq . Whit this assumption the rotor flux in the dq reference frame is a scalar '
variable λ rdq
'
= λ r and ω dq = ωϕ .
4.2) and 4.3) can be decomposed into d and q components as follows (d/dt is here substituted by the Laplace operator)
•
d component of rotor voltage:
0− = σ r LM+i sd σλ+ rλ •
36
q component of rotor voltage
r
s
r
( 4.7)
CONTROL SYSTEM DESIGN
0 −= σ r L+ i ω−λ ϕ ωrλ M sq
•
d component of stator voltage
v sd
•
( 4.8)
r
r
= R+s i sd−
σ Ls siσ ω+ sd
LM s Lr
Ls si λsq
ϕ
( 4.9)
r
q component of stator voltage
v sq where isϕ
=
λ 'r Lm
σ+ = R+s i sq σ+ Ls sisqω
L ωs sisdλ
ϕ
ϕ
LM Lr
( 4.10)
r
is the component of the stator current that generates the rotor linkage
flux λ 'r . From 4.7)
λr
=
σ r LM σr
+
isd
=
LM isd 1 + Tr s
( 4.11)
4.11) shows that isd is the command variable for the rotor linkage flux. From 4.8 the angular speed of the rotor flux linkage λ 'r is obtained:
ωϕ
= ωr +
4.12) shows that the rotor flux speed ω
σ r LM λr
isq
( 4.12)
is obtained by adding to the electrical rotor ϕ
speed ω r the slip speed Sω r
=
σ r Lm λ 'r
isq . This is the main characteristic of the Indirect
Field Oriented Control (IFOC). Substituting 4.11) into 4.9)
v sd +σωϕ Ls i=sq σ+ (1 + −σTs s (1
)Ts
s ) Rs isd 1 + Tr s
( 4.13)
where Ts = Ls/Rs is the stator time constant. From the transfer function along the d-axis is obtained:
isd
1 1 + Tr s (v sd Rs TsTrσ s 2 + (σ Ts + Tr ) s + 1
=
+ ωϕσ Lsisq )
( 4.14)
Substituting 4.12) in 4.10):
Ls v σ −ω sq
ϕ
L−(−i ω λi =) s
sd
sϕ
r
LM
Rs (Ts
+σ r
+ Tr )
Tr
TsTr s (1
Ts
+ Tr )isq
( 4.15)
Defining the equivalent time constant
Ta
=σ
TsTr Ts + Tr
( 4.16)
and equivalent resistance
37
CONTROL SYSTEM DESIGN
Ra
=σ
Rs (TsTr ) Ts + Tr
( 4.17)
4.15) can be rewritten as follows
v sq − σ ωϕ Ls (−isd− ω isϕ ) λ=
r
Ls LM
+
Ra (1 Ta s )isq
r
( 4.18)
Hence the transfer function along the q-axis is obtained:
isq
1
=
−(vsq
σ ω−− Ls (isd ω isϕ ) λ ϕ
R (1 + T s) a
Ls r
' r
)
( 4.19)
L
a
M
The reference scheme of IFOC is depicted in Figure 4-3
IFOC
Figure 4-3: Indirect field oriented control system with IG and VSI
Electromagnetic torque in the dq reference frame Stator and rotor linkage fluxes can be expressed as functions of the stator and rotor currents as follows:
λ sαβ = Ls iαβs
+ LM i rαβ λ rαβ = Lr i rαβ + LM i sαβ
( 4.20)
'
substituting
i rαβ from second equation in the first: λ sαβ = σ Ls iαβs
+
LM λ rαβ Lr
( 4.21)
Substituting 4.21) into 3.11)
v sαβ = Rs iαβs
+ σ Ls
d i sαβ dt
+
LM d i rαβ Lr dt
Considering the motor operation, the absorbed instantaneous power is:
38
( 4.22)
CONTROL SYSTEM DESIGN * 3 (t ) = Re( v=sαβi sαβ ) 2
* 3 Re( + Rs i sαβ+αβi s 2
3 2
σ Ls
d i sαβ * αβ i s dt
3 LM d λ rαβ 2 Ld r
αβ
t
*
i s ) (4.23)
The mechanical power in 4.23) is only the term that contains the rotor speed ω r . Hence:
Pm = Re(
3 LM d λ rαβ 2 Lr
dt
*
i sαβ ) = Re(
3 LM
*
jω r λ rαβi sαβ )
2 Lr
'
4.24) can be rewritten in the dq reference frame considering λ rαβ i
* sαβ
* sdq
=i e
jθdq
Pm
=
( 4.24) '
= λ rdqe jθ
dq
and
.
= Re(
3 LM 2 Lr
3 LM 2 Lr
jω λ=r
rdq
)
3 LM Re(+ ω −λ λj r ( 2 Lr
rd
j
rq
)(isd
jisq ) ( 4.25)
ω r λ rdisq
'
where λ rq = 0. The mechanical power can also be expressed as a function of the electromagnetic torque Te:
Pm
=
ωr
Te
( 4.26)
where p is the number of pole pairs. Equating (4.25) and (4.26)
Te
3
= p 2
LM λr isq Lr
( 4.27)
4.27) and 4.11) are combined in the block diagram in Figure 4-4. According to Figure 4-4 the rotor flux linkage λ 'r can be controlled by means of
electromagnetic torque can be controlled by means of
isd whereas the
isq and isd .
Figure 4-4: Torque in terms of rotor flux and q-axis stator current
However, due to the transfer function between
isq and λr , any step variations on
isq cannot produce a sudden change in the rotor flux λr , which will build up with time constant Tr. Thus in the FOC of induction machines, stator currents are controlled in
39
CONTROL SYSTEM DESIGN
such a manner that
isq delivers the desired torque while isd maintains the peak rotor flux
at its rated value as far as ω r
≤ ω rn .
When the induction machine is operated as
generator the rotor flux is reduced proportionally to 1/ωr in order to avoid overvoltage, this method is known as weakening operation.
4.4 Speed loop design The speed loop is represented by the q-axis loop of the system of Figure 4-3. The loop is reported in the block diagram of Figure 4-5.
Figure 4-5: Speed loop * Since isq is the torque command variable, the reference value isq depends on the
required torque. In Figure 4-3 the speed loop is the outermost loop and the isq current loop the innermost loop. The error between the desired speed ω * , and the measured r
generator speed ωr pass through a PI controller (speed controller) in order to generate * * the reference signal isq . The error between isq and the q component of the stator current
isq , obtained by means of the rotor flux estimation model, pass through another PI ' controller, to generate the reference voltage vsq in the dq reference frame. Anyway vsq
is the only component of vsq that depends on the q stator current isq .
vvsq −
= + Ra⋅(1 Ta s)isq
( 4.28)
sq , comp
where
vsq ,comp
= σωϕ Ls (isd −ω isϕ ) λ +
r
Ls LM
r
( 4.29)
is considered a disturbance as it does not depend on isq . In the design, the compensating term vsq ,comp is neglected, as it has not significant influence on the behavior of the system. The PI controllers used for the control design are expressed in the following form:
FPI ( s )
40
= Kp
1 + s ⋅τ i
sτ i
( 4.30)
CONTROL SYSTEM DESIGN
• Inner loop design For the design of the isq loop, only the proportional term is used. Therefore the inner loop is composed by a P controller, a delay block and Plant1, as shown in Figure 4-6. Transfer functions of the open loop are indicated in Table 1.
Figure 4-6: isq loop
The Delay block represents the delay introduced by the digital calculation which is taken into account by means of a first order function with time constant:
Ts =
1
fs
= 0.333ms , where fs = 3KHz is the sampling frequency.
Table 1: Open loop transfer functions of isq loop Open loop transfer functions Plant1
1 Ra (1 + Ta ⋅ s )
1 0.02 s + 3.5
Delay
1
1
1 + s ⋅ Tsampl
3.333e −4 s + 1
G1
Plant1 ⋅ Delay
Open loop poles
Pole(G1)
1 6.66e −7 s 2 + 0.02117 s + 3.5
p1 = −3000
p 2 = −175
Requirements: The requirement for the inner loop is to obtain a rising time at a step command compatible with the management of a 100-200ms grid fault. Therefore the rising time ts is needed to be much smaller respect to the short-term grid fault period. Furthermore a proportional gain is chosen in order to meet the following requirements:
ts
< 10 ms
∧
s
MAX
< 20%
By choosing Kp1 = 10 the aim is fulfilled. The closed loop transfer functions are depicted in Table 2.
41
CONTROL SYSTEM DESIGN
Table 2: Closed loop transfer functions of vsq loop Closed loop transfer functions
Kp1
C1
10
Gcc1
feedback(G1*C1,1)
Closed loop poles
Pole(Gcc1)
10 6.666e −6 s 2 + 0.02117 s + 13.5
p1 = −2291.5 p 2 = −883.8
In Figure 4-7 and Figure 4-8 the closed loop Bode diagram and step response of isq loop are represented respectively.
* Figure 4-7: isq / isq Bode diagram
* Figure 4-8: isq / isq step response
• Outer loop design For the control of the ωr* loop, depicted in Figure 4-9, a PI controller is designed. Therefore the outer loop is composed by a PI controller, a delay block, the closed loop transfer function Gcc1 and plants G3, G4.
Figure 4-9: ωr loop
The open loop transfer functions of the outermost loop are indicated in Table 3.
42
CONTROL SYSTEM DESIGN
Table 3: Open loop transfer functions of speed loop Open loop transfer functions
10
Gcc1
6.666e −6 s 2 + 0.02117 s + 13.5 3
G3
2
p
LM λr Lr
G4
p s⋅J
G2
Gcc1 ⋅ G 3 ⋅ G 4
Open loop poles
Pole(G2)
83.17
2 0.18s 165.5 3.999e −10 s 4 + 2.47e −6 s 3 + 0.00462s 2 + 2.43s p1 = 0
p 2 = −3000.3 p3 = −2291.5 p 4 = −883.8
Requirements: The requirement for the speed loop is to obtain a rising time at a step command compatible with the management of a 100-200ms grid fault. Therefore the rising time ts is needed to be much smaller respect to the short-term grid fault period. In this case a proportional-integral controller is designed to meet the following requirement:
ts
< 50 ms s MAX < 20% ∧
By choosing K pω = 1 and K iω = 5 the aim is fulfilled. The closed loop transfer functions are depicted in Table 4.
Table 4: Closed loop t ransfer functions of speed loop Closed loop Transfer functions C2
⎛ 1 + s ⋅ tau _ ω ⎞ K pω ⎜ ⎟ ⎝ s ⋅ tau _ ω ⎠
Gcc2
feedback(G2*C2,1)
Closed loop poles
Pole(Gcc2)
⎛ 1 + s ⋅ 0.2 ⎞ ⎟ ⎝ s ⋅ 0.2 ⎠ 33.12 s + 165.6 7.998e −11s 5 + 4.939e+−7 s 4 0.000924 + + s 3 + 0.486s 2 p1 = −2877.3 p 2 = −2495 p3 = −724.6 p 4 = −73.3 p5 = −5.4 1⋅ ⎜
33.12 s 165.6
43
CONTROL SYSTEM DESIGN
In Figure 4-10 and Figure 4-11 the closed loop Bode diagram and step response of the speed loop are represented respectively.
Figure 4-10: Speed loop Bode diagram
Figure 4-11: Speed loop step response
4.5 Flux loop design The flux loop is represented by the d-axis loop of the system in Figure 4-3. First the inner loop is designed, in order to obtain the command variable isd for the generation of the IG rotor flux. Then the outer loop is designed for the generation of the command variable isϕ involved to create the magnetizing current of the IG.
• Inner loop design The inner loop of the d-axis loop is represented in Figure 4-12.
Figure 4-12: isd loop
Only the proportional term is designed for the inner loop of the d-axis loop. The open loop transfer functions are shown in Table 5.
44
CONTROL SYSTEM DESIGN * Table 5: Open loop transfer functions of isd loop
Open loop transfer functions Plant1
1 + Ts s Rs TsTs s 2 + (Ts + TR ) s + 1
0.00016 s 2 + 0.028s + 1
0.008s + 0.4
1
Delay
1
1
1 + s ⋅ Tsampl
3.333e −4 s + 1
G1
Plant1 ⋅ Delay
0.008s + 0.4 5.333e −8 s 3 + 1.693e −4 s 2 + 0.02833s + 1
p1 = −3000.3 Open loop poles
p 2 = −125.0
Pole(G1)
p3 = −50.0 Requirements: The requirement for the speed loop is to obtain a rising time at a step command compatible with the management of a 100-200ms grid fault. Therefore the rising time ts is needed to be much smaller respect to the short-term grid fault period. Furthermore a proportional gain is chosen in order to meet the following requirements: t s < 10 ms ∧
s
MAX
< 20%
On this point we decide to use the same proportional gain used in the design of the inner loop of q-axis loop. By using Kp = 10 as proportional gain for the P controller of Figure 4-12 we obtain the following closed loop transfer functions, indicated in Table 6: * Table 6: Closed loop t ransfer functions of isd loop
Closed loop Transfer functions C1 Gcc1
Kp feedback(G1*C1,1)
10 0.08s + 4 5.333e −8 s 3 + 1.693e −4 s 2 + 0.1083s + 5
p1 = −2315.4 Closed loop poles
Pole(Gcc1)
p 2 = −809.9 p3 = −50.0
45
CONTROL SYSTEM DESIGN
In Figure 4-13 and Figure 4-14 the closed loop Bode diagram and step response of isd loop are represented respectively.
* Figure 4-13: isd / isd Bode diagram
* Figure 4-14: isd / isd step response
• Outer loop design For the design of the isϕ loop, a PI controller is designed. Thus the outer loop is composed by a PI controller, a delay block, the closed loop transfer function Gcc1 of isd loop and plants G3, G4. The open loop transfer functions are indicated in Table 7.
Figure 4-15: isϕ loop
Table 7: Open loop transfer functions of isϕ loop Open loop transfer functions Plant2
1
1
(1 + TR ⋅ s )
0.02 s + 1
Delay
1 + s ⋅ Tsampl
G2
Plant 2 ⋅ Delay
1
Open loop poles
46
Pole(G2)
1 3.333e −4 s + 1 2.25e11
s
4
+ 6176 + s 1.156 + e7 s+2 6.189e9 s 2.813e11 p1 −= 3000.3 −=p2 2315.4 p3 = 809.9 p4 = −50.0 3
CONTROL SYSTEM DESIGN
Requirements: In order to move the low frequency pole introduced by the rotor time constant, the integration time constant tau_i is chosen equal to Tr as follows: tau_i = Tr = 0.02 The proportional gain of the flux PI controller is chosen in order to meet the following requirement:
ts
< 50 ms
By choosing K pi = 1.5 and K i = 75 the aim is fulfilled. The closed loop transfer functions are depicted in Table 8.
Table 8: Closed loop t ransfer functions of is*ϕ loop Closed loop Transfer functions C2
⎛ 1 + s ⋅ tau _ i ⎞ Kpi ⎜ ⎟ ⎝ s ⋅ tau _ i ⎠
Gcc2
feedback(G2*C2,1)
⎛ 1 + s ⋅ 0.02 ⎞ ⎟ ⎝ s ⋅ 0.02 ⎠
1.5 ⋅ ⎜
3.376e11
s
4
+ 6126 +s
3
1.125 + e7 s+2
5.626e9 s 3.376e11
p1 = −2906.6 Closed loop poles
Pole(Gcc2)
p 2 = −2470.8 p3 = −679.0 p 4 = −69.2
In Figure 4-16 and Figure 4-17 the closed loop Bode diagram and step response of isϕ loop are represented respectively.
*
Figure 4-16: isϕ / isϕ Bode diagram
*
Figure 4-17: isϕ / isϕ step response
47
CONTROL SYSTEM DESIGN
4.6 Space vector PWM design Space vector PWM method has been selected to produce the 3-phase sinusoidal voltages for the IG. The primary use for SVM is in motor control applications (mainly for induction and brushless DC motors). However SVM can also be used in Uninterruptible Power Supply (UPS) applications. SVM is popular because it generates higher voltages with low total harmonic distortion than traditional sinusoidal PWM techniques. Another advantage of SVM is that it works very well with field oriented control schemes for motor control applications. SVM uses the stationary αβ0 reference frame where the reference voltage space vector V ref is defined as follows: V ref = where α =
1 2
+j
3 2
2 3
(VAref +αVBref +α 2 VCref )
( 4.31)
and VAref , VBref and VCref are the reference voltages.
The definition of V ref depends on its location within the reference frame. In Figure 4-18 V ref is located in sector 1 and is therefore defined by the state voltages V100 and
V110. V110 is the voltage produced by the state [1 1 0] where the upper switches in the first and middle leg of the VSC are conducting. Tpwm is indicated as the switching period of the VSC and γ is the phase angle of V ref .
Figure 4-18: V ref in SVM
The reference voltage vector V ref is obtained by mapping the desired three phase output voltages to the d-q plane through the same d-q transform. When the desired output voltages are three phase sinusoidal voltages with 120 degree phase shift, V ref becomes a
48
CONTROL SYSTEM DESIGN
vector rotating around the srcin of the d-q plane with a frequency corresponding to that of the desired three phase voltages. The envelope of the hexagonal formed by the basic space vectors, as shown in Figure 4-18 is the locus of maximum V ref . Therefore, the magnitude of V ref must be limited to the shortest radius of this envelope when V ref isa rotating vector. This gives a maximum
magnitude of
VDC / 2
for
V ref .
Correspondingly, the maximum rms values of the fundamental line-to-line and line-to neutral output voltages are VDC / 2 and VDC / 6 , which is 2 / 3 times higher than what a sinusoidal PWM technique can generate. Therefore the bus voltage VDC needed for a motor rated at Vn is determined by VDC = 2 ⋅ Vn . This implies that we need of a bus voltage of:
VDC
= 535V
with
Vn = 380V
( 4.32)
As shown in Figure 4-19, the switching sequence occurs in the following order [0 0 0], [1 0 0], [1 1 0], [1 1 1] to reduce the number of switching commutations. The states [0 0 0] and [1 1 1] are known as zero-voltage states as no voltage is applied to the IG during their activity. The other states are referred to active states. In SVM the zero states are symmetrical, that is:
t7
= t=0
1 TPWM ( −− 2 2
t1 t2 )
( 4.33)
Figure 4-19: State sequence for symmetric SVM
Considering as example sector 1, V ref can then be expressed as: t t V ref = V 100 1 + V 110 2 TPWM TPWM 2
( 4.34)
2
where the state voltages are:
49
CONTROL SYSTEM DESIGN
V100 = V110 =
2 3 2 3
0
(α V
DC
0
⋅1 + α
1
V
DC
⋅0 + α
1
⋅ 1 + α⋅ VDC ⋅ 1 + α DC
(α V
2
V
DC
2
2 V 3
⋅ 0)=
2 = 0)V ( 3
+ DC
V
DC
1 2
DC
)j
3
( 4.35)
2
The time durations, t1 and t2, can be calculated using ( 4.34) by splitting to real and imaginary part, where V ref =V ref(cos γ + j sinγ) : Re[Vref ] = Vref cos γ
Im[Vref ] = Vref sin γ
=
2
=
2
3
3
VDC
t1 TPWM 2 t2
VDC
+
2 3
VDC
t2 cos 60 TPWM 2
TPWM 2
sin 60
D
( 4.36)
D
Since Re[Vref] corresponds to Vα and Im[Vref] corresponds to Vβ equations for sector 1 can be rewritten as follow: Vβ
Vα
=
2 3
2
=
VDC
3
t2 cos 30 TPWM 2 t 2 + VDC 2 cos 60 TPWM 3 2
VDC
t1 TPWM 2
D
( 4.37)
D
( 4.38)
Hence t1 =
3Vα
t 2=
50
−
3Vβ TPWM
2VDC Vβ
VDC
3
2
TPWM 2
( 4.39)
( 4.40)
CONTROL SYSTEM DESIGN
In Figure 4-20 the switching sequence of symmetric Space Vector Modulation is represented in circular plane.
Figure 4-20: Switching sequence in symmetric SVM
Figure 4-21: Switching sequence in asymmetric SVM
For easier implementation reason, Asymmetric-SVM has been designed either for simulations or for laboratory implementation. The calculated duty cycles of the output phase voltages vA0, vB0 and vc0 are reported in Table 9.
51
CONTROL SYSTEM DESIGN
Table 9: SV-PWM duty cycles Sector
Angle
Number
[0,
1
2
[
[
3
5
6
52
[
[
]
3
3
3
2π
3
PWM1 = (t1+t2+t7/2)/TPWM PWM2 = (t7/2)/ TPWM PWM0 = (t7/2)/ TPWM PWM1 = (t1+t2+t7/2)/TPWM PWM2 = (t2+t7/2)/TPWM
4π 3
4π 5π
5π
PWM0 = (t1+t7/2)/TPWM ]
,π ]
3
3
PWM1 = (t2+t7/2)/TPWM PWM2 = (t7/2)/ TPWM
π 2π
[π ,
4
PWM0 = (t1+t2+t7/2)/TPWM
π
,
Duty cycle
,
3
PWM0 = (t7/2)/ TPWM ]
PWM1 = (t1+t7/2)/TPWM PWM2 = (t1+t2+t7/2)/TPWM PWM0 = (t2+t7/2)/TPWM ]
PWM1 = (t7/2)/ TPWM PWM2 = (t1+t2+t7/2)/TPWM PWM0 = (t1+t2+t7/2)/TPWM
, 2π ]
PWM1 = (t7/2)/ TPWM PWM2 = (t1+t7/2)/TPWM
SIMULATIONS
5
SIMULATIONS The entire control system is implemented and simulated on Matlab/Simulink platform, version 7.0.4. The Simulink model of the wind turbine control system is shown in Figure 5-1. Since a wind turbine and gearbox are not available, variable speed - fixed
pitch operation has been considered. A slip speed of 1% has been selected for the IG, thus 1515 rpm is the reference speed used for simulations. The wind turbine model is set at the rated wind speed of 12m/s, in order the ideal wind turbine to produce the rated mechanical torque of the IG, which is 25Nm. Electrical and mechanical parameters of the IG are supplied by manufacturer. In real wind systems the reference speed for the IG is obtained by means of a look-up table, supplied directly by manufactures. Anyway, to verify the correct operation of the control system a constant reference speed will be used.
Figure 5-1: Wind turbine control system
53
SIMULATIONS
5.1 Blocks of system The following blocks are used in the designed wind turbine control system:
Speed controller The speed controller includes the designed speed PI controller. It receives the measured speed as a feedback signal and put out the reference rotor flux and torque command to the Field Oriented Control block. N*: reference rotor speed [rpm]
Inputs
N: measured speed [rpm] Flux*: reference rotor flux [Wb]
Outputs
Torque*: reference torque [Nm]
Field Oriented Control (F.O.C.) F.O.C. block receives the measured 3-phase currents and rotor speed, the reference flux and the torque command as inputs and calculates the new reference 3-phase voltages for the SV-PWM block. Flux*: reference rotor flux [Wb] Torque*: reference torque [Nm]
Inputs
N: measured speed [rpm] IABC: measured 3-phase currents [A]
Outputs
Gates: IGBTs pulse pattern
Induction Generator The IG receives the negative torque by the WT model and the 3-phase voltages V A,B,C as inputs, and generates the electric power Pe. Vabc: 3-phase voltages [V]
Inputs
Tm: mechanical torque [Nm]
Outputs
Pe: electric power [W]
Parameters
54
Rotor type
Squirrel-cage
PN
4KW
ωn
1500 rpm
VN
380V
SIMULATIONS
Rs
2.5Ω
Rr
1.0 Ω
Ls, Lr
20 mH
LM
70 mH
J (rotor inertia)
0.18 Kg ⋅ m 2
Pole pairs
2
Space vector modulation (SVM) The SVM block receives the 3-phase reference voltages V a, Vb, Vc and calculates the pulse patterns for the six IGBTs. Wind speed: [m/s] Inputs
Pitch angle [degree] Generator speed [p.u.]
Outputs
Tm: mechanical torque [p.u.]
Power converter The Power Converter is implemented by means of a IGBTs universal bridge. It receives the 3-phase pulse-pattern for the six IGBTs from SVM block and put out the 3-phase voltage VA, VA, VC. Inputs
Gates: IGBTs pulse-pattern
Outputs
3-phase voltage VA, VB, VC [V]
Wind turbine model Wind turbine model receives the wind speed, pitch angle and generator speed as inputs and computes the mechanical torque for the IG. Inputs
Wind speed: [m/s] Pitch angle [degree] Generator speed [p.u.]
Outputs
Tm: mechanical torque [p.u.]
55
SIMULATIONS Parameters
Nominal mechanical power
4KW
Base power of IG
4000/0.84 VA
Base wind speed
12m/s
Base rotational speed
1.01 (p.u.)
Fault manager Fault manager block handles the short-term grid faults by acting directly on the reference flux and torque commands at the output of the speed controller. Its outputs are the new flux and new torque commands under fault condition. Fault manager is a transparent block during normal condition. Inputs Outputs
Flux_in: reference rotor flux [Wb] Torque_in: reference torque [Nm] Flux_out: reference rotor flux [Wb] Torque_out: reference torque [Nm]
5.2 Implementation of blocks in Simulink The implemented blocks of the wind turbine control system are illustrated in this section.
F.O.C. In Figure 5-2 the implemented F.O.C. block is shown:
Figure 5-2: F.O.C. block
56
SIMULATIONS
The F.O.C. block includes the following subsystems:
•
Flux_PI: the subsystem is implemented by means of the designed PI controller with saturation for output bigger than 2 .
•
Flux Calculation: implemented by a first order filter for the estimation of the IG rotor flux.
• •
Teta Calculation: the subsystem estimates the rotor flux position θϕ .
i * and i* calculation: the subsystems calculate the reference current i * and i * q
sq
d
sd
respectively.
•
DQ-ABC and ABC-DQ: the subsystems perform the Clark and Park transform respectively.
Speed controller In Figure 5-3 the Speed controller block is shown: it is composed by the designed PI controller and a look-up table for the generation of the reference rotor flux. Nominal flux is considered to be 0.8 Wb. Two saturations for the PI controller are considered: -5 for lower saturation and +50 for upper saturation.
Figure 5-3: Speed controller block
Fault manager In order to freeze the electric power production during fault condition, Flux* and Torque* commands variables are reduced to a minimum value when a grid fault happens. In real case a grid-connected interface detects the grid fault and sends an enable signal to control system. In simulation case, the short-term grid fault is simulated by 2 step blocks which define the beginning and the end of the fault condition. The fault manager block is shown in Figure 5-4.
57
SIMULATIONS
Figure 5-4: Fault manager block
Space Vector Modulation The Space Vector Modulation block is implemented by using 5 subsystems described in the following lines:
•
abc-AB and angle calculation: the subsystem receives the 3-phase reference voltages Va,Vb,Vc and performs the Park transform for the calculation of the α and β components of the reference voltages. Furthermore the block computes the angle for sector individuation.
•
Sector finder: the subsystem selects the right sector of the voltage vector in the αβ reference frame.
•
SVM: the space vector modulation subsystem receives the information of sector number, Vα , Vβ and Vdc and computes the times for the three hi-side IGBTs.
•
Ramp generator: the subsystem uses a reference frequency of 3 KHz to generate a ramp with same period and amplitude Ts. This block is used for triggering the SVM block.
•
Duty-cycle generator: the subsystem receives the 3 times for IGBT0, IGBT1, IGBT2 and computes the correspondent duty–cycles, by using the created ramp as time reference.
The SV-PWM block with the described subsystems is represented in Figure 5-5.
58
SIMULATIONS
Figure 5-5: SV-PWM block
The calculation algorithm used in SVM for sector 1 is shown in Figure 5-6.
Figure 5-6: SV-PWM calculation in sector 1
The algorithm of SV-PWM is implemented in similar way for the other sectors.
5.3 Simulation settings Solver options The entire control system is simulated with ode23tb solver method. This method is more efficient than other, mainly for stiff problems. The solver options is use are reported in Figure 5-7.
Figure 5-7: View to solver options of Simulink model
59
SIMULATIONS
Powergui interface The graphical user interface for the analysis of circuits and systems (Powergui) is used in the simulation model in order to discretize the system. The simulation time is specified by the parameter Ts as shown in Figure 5-8. The selected simulation time is chosen 20 times smaller than the sample time of the loops. Discrete, Ts = 1.666e-005 s.
Figure 5-8: Simulation time used in simulations
Sample time In order to choose a suitable sampling frequency for such a system, the most common frequency range in the market of WT systems is considered: it corresponds to 2 - 4 KHz. Therefore a sample frequency of 3 KHz is set. Consequently all blocks of system are simulated with the same sample time, which corresponds to 3.333 ⋅ 10 s , as −4
indicated in Table 10. The same sampling frequency will be used for the laboratory implementation part.
Table 10. Sample time of the subsystems Block
Sample time
Speed controller
20 ⋅ Ts
F.O.C
20 ⋅ Ts
SVM
20 ⋅ Ts
5.4 Simulation results In the present section, the simulation results, in normal condition and during grid faults, are shown and commented. The measured power and current have been averaged by using the Simulink component “Mean value”, for better representation. The integration * time considered is 1/50.5Hz, since the ideal electrical frequency is 50.5 Hz, with ωr =
1515 rpm. By this method the observed results are very close to the real mean value and we can well distinguish each operational zone of the IG.
60
SIMULATIONS
Normal condition results Figure 5-9 shows the result of the rotor speed profile, with a reference speed of 1515
rpm. The speed rising-time is limited by a limiter component of Simulink, in order not to overload the machine and to reach gradually the rated speed, in less than 1 second.
Figure 5-9: Rotor speed profile as result of simulation in r.p.m.
After the fixed rising time, the rotor speed maintains the reference speed with very low ripple. The high precision in steady state is a proper characteristic of the Field Oriented Control.
Figure 5-10: Zoom on rotor speed profile
61
SIMULATIONS
In Figure 5-11 the average electric power is represented. The result is an approximation since a fixed integration time of 1/50,5Hz is considered. As we can observe the electric power production is less the 4KW, due to the IG efficiency less than 1.
Figure 5-11: Average electric power generated by the IG
In Figure 5-12 the average electric current on the DC-side is represented. As previously the result is an approximation since a fixed integration time of 1/50,5Hz is considered.
Figure 5-12: Average current on the DC side
62
SIMULATIONS
In Figure 5-13 the current on the DC side is represented. We can observe that the current is impulsive with negative average value; this shows that the IG is delivering energy to the grid.
Figure 5-13: Current on the DC side
In Figure 5-14 the simulation result of SV-PWM is represented and precisely the phaseto phase voltage between phase A and B.
Figure 5-14: Phase-to-phase voltage of SVM
63
SIMULATIONS
Fault condition results In order to verify the behaviour of the designed control system under fault condition, a short-term grid fault has been simulated. We assume to have a 200ms grid fault, in the time interval of 1.1 to 1.3s. As shown in Figure 5-15 the rotor speed remains constant to the reference value until the fault happens. From 1.1s the speed begins to increase till the end of fault. We can observe that at 1.3s (end of fault) the speed is about 1800 rpm, that is an allowed value of speed, respect to the stable region of the torque characteristic of the IG. After the fault, the rotor speed decreases back to the reference value.
Figure 5-15: Rotor speed profile during grid fault
Figure 5-16: Electric power under grid fault
64
SIMULATIONS
In Figure 5-16 we can distinguish between 5 operational regions of the system: 1. In region 1, the electric power is not at the rated value, since rotor speed is increasing till the reference speed. 2. In region 2, electric power has negative average value less than 4KW. This is because we are simulating a machine with efficiency smaller than 1. 3. In region 3, during fault condition, electric power production is close to 0 in the overall interval 1.1 to 1.3s, so the goal is verified. 4. In region 4, the stored kinetic energy is delivered to the grid in form of electric energy, in a time interval of about 200ms, for better graphical representation of the fault management. In real case the speed decreasing time after fault could be of seconds-minutes duration. The end of fault can be handled by means of limiters for torque and flux command variables or practically by the use of inductive loads. 5. In region 5, electric power goes back to the value of normal condition (region 2). The same operational regions are individuated in Figure 5-17 where the average current on the DC side is represented.
Figure 5-17: Average current on the DC side under grid fault
As we can see from Figure 5-17 the average current is close to 0 in region 3, during the grid fault, this demonstrates that no electric power is delivered to the grid during fault condition.
65
SOFTWARE DESIGN
6
SOFTWARE DESIGN The designed wind turbine control system, simulated by means of Matlab/Simulink platform is now implemented via software to investigate its operation with the hardware in the loop. The chapter focalizes on the software design and conducts to the code implementation for the Digital Signal Processor ADSP-21020.
Memory For software design, memory is managed for first, in order to achieve the fixed goal. The available memory is divided in two parts: data memory and program memory. The program variables are contained in data memory, while the program subroutines are contained in program memory. These two parts of memory are organized into sections, so called segments; each segment has a pre-defined dimension, specified on the architecture file.
Subroutines •
START: the Start subroutine is involved to call INIT_21K, which is the
initialization subroutine. Start sub- is included in the program memory segment pm_sram and it is executed only one time after the general reset.
•
INIT_21K: in the Init_21k subroutine the general processor flags are set; timer
is configured to a start-up value and interrupt-requests are enabled.
•
MAIN: the MAIN subroutine, or simply Main, contains the control algorithm to
perform the goal. The MAIN subroutine includes the Speed Controller, the F.O.C. block and the SV-PWM block, implemented in Matlab/Simulink. Furthermore it contains the code for reading from ADC the measured variables.
•
TIMER-ROUTINE: the timer-routine is executed every time the timer-
interrupt occurs. For first it initializes the timer registers TPERIOD and TCOUNT; it sets the right configuration for the IGBTs and regulates the access to MAIN by setting a flag.
66
SOFTWARE DESIGN
•
WAITING: the waiting subroutine is a flag sensitive routine. If flag is 1, a
JUMP to MAIN is performed. Else the process remains in the waiting routine till next timer interrupt.
Software variables Two flags are considered in software design in order to meet the aim. They are explained below: SEM Binary flag [0, 1]. If 1, SEM enables the process to access the MAIN, and execute
the control algorithm. CONT
Range [0, 3]. The working domain of CONT is into the sector subroutine. After the sector number is read from data-memory, CONT permits to switch between one of the four IGBTs configurations, incrementing every time its value by 1, from 0 to 3. At the end of the 4 th configuration it is reset.
6.1 Process time-schedule The main concept on the software development is to perform the control algorithm, by using only one timer, which is the only available on ADSP-21020. During each sample time, control algorithm should be able to calculate the new timing-sequence for the IGBTs; this timing-sequence will be used in the next sample. It means that control introduces a fixed delay of one sample, which compared with the electrical time constants of the system is negligible. In order to use the new timing-sequence in the next sample, a temporary buffer and an in-use buffer are needed. On this point it is important to loo at the terminology used for such buffers: In-use timing table
The in-use timing table contains the in-use timing sequence and it is implemented by means of a linear buffer. Temporary timing table
The temporary table contains the timing sequence calculated on the actual sample and it is implemented by means of a linear buffer. Considering the sample time Ts in Figure 6-1, a timer-interrupt occurs after each time deadline. The in-use timing-sequence, composed by t7/2, t1, t2 and t0/2 has been calculated during the previous sample.
67
SOFTWARE DESIGN
Each single time in the timing-sequence could be different in each sample, but what remains constant is the sum of the 4 times. It is considered with t7/2 the time of the zero-voltage configuration 111 for the three hiside IGBTs; with t0/2 is considered the time of the zero-voltage configuration 000, while t1 and t2 are the active-vector times.
Figure 6-1: Sample time Ts
During each sample different operations have to be executed in order to achieve the goal. The software time chart in Figure 6-2 shows the process operations for one sample.
t7/2 operations: -
Timer setup: read from the in-use configuration table the stored 1
st
time
calculated in the previous sample and set the universal registers TPERIOD and TCOUNT. -
Set IGBTs: after reading the sector number stored in memory, CONT flag is used on this step as switch case between the four possible configurations for IGBTs.
-
Enter MAIN: after setting IGBTs, the process goes to waiting-routine, which read the value of flag SEM and if 1, it immediately jumps to MAIN. For clarity reason waiting has not been indicated in the time chart.
t1 operations: -
Timer setup: read from the in-use configuration table the stored 2
nd
time
calculated in the previous sample and set the universal registers TPERIOD and TCOUNT. -
68
Set IGBTs: after reading the sector number, CONT flag is used on this step as switch case between the four possible configurations for IGBTs.
SOFTWARE DESIGN
Figure 6-2: Software time chart
t2 operations: -
Timer setup: read from the in-use configuration table the stored 3
rd
time
calculated in the previous sample and set the universal registers TPERIOD and TCOUNT. -
Set IGBTs: after reading the sector number stored in memory, CONT flag is used on this step as switch case between the four possible configurations for IGBTs.
-
End MAIN: we can consider, as example that execution of MAIN, started during t7/2, ends during t2. At the end of MAIN, flag SEM is set to 0, so to inhibit to access MAIN again, till next sample-time.
-
Waiting: after the end of MAIN, process goes to waiting routine.
t0/2 operations: -
Timer setup: read from the in-use configuration table the stored 4
th
time
calculated in the previous sample and set the universal registers TPERIOD and TCOUNT. -
Set IGBTs: after reading the sector number stored in memory, CONT flag is used on this step as switch case between the four possible configurations for IGBTs.
-
Load new times: timing-sequence stored in temporary timing-table is copied in the in-use timing-table.
-
Waiting: after loading new timing-sequence, process goes to waiting routine.
69
SOFTWARE DESIGN
Such a strategy performs in effective way the goal without making use of any softwareinterrupt.
6.2 Flow-chart
Figure 6-3: Flow chart
As shown in the flow chart, RST_SVC and TMZH_SVC are the main memory segments used in software development, to meet the goal.
70
SOFTWARE DESIGN
• RST_SVC segment RST_SVC is the reset segment of DSP; it performs a JUMP to the START subroutine.
START The subroutine START performs two CALL directives at different times: 1. Call (I): call to INIT_21K subroutine where general initialization has made; it includes DAG registers initialization and software variable initialization. After the execution of INIT_21K, process goes back to START subroutine, by RTS directive. 2. Call (II): call to MAIN subroutine where control algorithm and times calculation are performed. At the end of execution, process goes back to START subroutine, by RTS directive. 3. Jump:
JUMP to the WAITING subroutine. WAITING is a flag sensitive
subroutine where the waiting is performed by flag SEM set to 0. Otherwise, when the read value of SEM is 1, a JUMP to MAIN subroutine is performed.
• TMZH_SVC segment It is the high priority timer segment. It performs a CALL to timer-routine every time a timer-interrupt occurs.
TIMER-ROUTINE Timer-routine: as explained previously, timer-routine absolves three main operations: -
write to IGBTs the new configuration
-
set flag SEM to regulate the access to MAIN
-
load the new timing sequence from the temporary table to the in-use timing table.
Timer-interrupt and context switch In this paragraph the sequence of operations used to perform the context-switch and context recovery is explained. When a timer-interrupt occurs, the on-going process goes-back to the TMZH_SVC segment, after the context saving in the stack register. As mentioned before, TMZH_SVC performs the CALL to timer-routine, thus we need of two returns from directives: -
RTS: to go back in TMZH_SVC, after timer-routine execution.
-
RTI: to go back at the same point of the MAIN, interrupted by the timerinterrupt.
71
SOFTWARE DESIGN
6.3 Data structures Data structures used for software implementation are illustrated in this section. The in-use timing-table and the temporary timing-table are stored in two 4-elements linear buffers, named vect and temp, respectively. The Data Address Generator system is used to address the two linear buffers: DAG1-6 is used to address vect while DAG1-4 is used to address temp. On this point a short overview on DAG Registers will be spent.
DAG Registers overview In order to operate with circular buffer or linear data vector an overview to DAG registers of ADSP21020 has to be spent. The ADSP-21020 has two DAGs, DAG1 and DAG2. They allow the processor to address memory indirectly; that is, an instruction specifies a DAG register containing an address instead of the address value itself. Both DAGs support circular buffers. Each DAG contains four types of registers: Index (I), Modify (M), Base (B) and Length (L) registers. I register acts as a pointer to memory, and an M register contains the increment value for advancing the pointer. By modifying an I register with different M value, you can vary the increment as needed. B and L registers are used only for circular data buffer. A B register holds the base (starting) address of the circular buffer. The same-numbered L register holds the number of locations in the circular buffer.
72
SOFTWARE DESIGN
In-use timing table The in-use timing table is composed by 4 counts-values, expressed in clock-cycles, thus a 4-elements buffer is needed to store data, and it has been called vect, as indicated in Figure 6-4.
Reading from vect is implemented with indirect addressing method, or by reference. DAG1-6 of ADSP-21020, which is defined as a 4-elements circular buffer, is used as addresser register for vect. B6+3
B6+3
B6
vect[3]
I6
vect[0]
-1
vect[1]
vect[2]
M6 B6+2
vect
B6+1
t7/2 t1 t2 t0/2
Figure 6-4: Data structures of the in-use timing table DAG1-6 initialization
• • •
st
B6 register contains the address of vect, so the address of the 1 element of vect. th
I6 register contains the address of the 4 element of vect. M6 register contains the increment value to slide buffer, which corresponds to -1.
73
SOFTWARE DESIGN
Temporary timing table The temporary timing table is composed by 4 counts-values, like the in-use table, thus a 4-elements vector is needed to store data, and it has been called temp. As previously, reading from temp is implemented by indirect addressing, or by reference. DAG1-4 of ADSP-21020, which is defined as a 4-elements circular buffer, has been used as addresser register for temp.
B4+3
B4
B4
temp[3]
I4
temp[0]
1 temp[1]
temp[2]
M4 B4+2
temp
B4+1
t7/2 t1 t2 t0/2
Figure 6-5: Data structures of the temporary timing-table. DAG1-4 initialization
•
st
B4 register contains the address of temp, so the address of the 1 element of
temp.
• •
st
I4 register contains the address of the 1 element of temp, the same as B4. M4 register contains the increment value to slide the buffer, which corresponds to -1.
74
SOFTWARE DESIGN
Loading of the new timing-sequence th
Loading process involves both circular buffer DAG1-4 and DAG1-6. During the 4
time period of the in-use timing-sequence, the temporary table must be loaded in the inuse table, in order to set the timing-sequence before the new sample. This is made possible thanks to the circular buffer operation, known as indirect addressing with postmodify. The loading process of temp into vect is shown in Figure 6-6:
t7/2 t1 t2 t0/2 temp
t0/2 t2 t1 t7/2 vect
Figure 6-6: Loading of the new timing-sequence
The two buffers are addressed in different way by the two circular buffers. The difference stays on the sense of sliding, due to register M. The slide-process for the two buffers is shown in Figure 6-7.
I4
I6
t7/2 t1 t2 t0/2 temp t7/2 vect Figure 6-7: Slide process of linear buffer
75
CODE IMPLEMENTATION
7
CODE IMPLEMENTATION In this chapter the main parts of the developed assembler code will be examined and commented. The code description is divided per sections, where code fragments are reported directly from the ASM file.
7.1 Timer management The high-priority timer is selected in order to fulfil the aim. In the following paragraph the timer management is depicted and commented. .segment /pm tmzh_svc; call timerroutine; nop; nop; nop; nop; nop; rti; nop; .endseg;
Through this command the CALL to timer-routine is performed every time the timer counter expires.
After the execution of timer-routine, process goes-back in the segment and, through rti directive, it returns to Main
76
CODE IMPLEMENTATION
Timer registers The ADSP-21020 has a programmable interval timer that can generate periodic interrupts. Timer is programmed by writing two universal registers, TPERIOD and TCOUNT. A timer setup is done as below:
tperiod = 0x1F4; tcount = tperiod;
/* 500 counts */ /*Sampling freq 3.0kHz *
bit set imask TMZHI; /* allow timer interrupt*/ bit set mode2 TIMEN; /* turn on timer */ bit set mode1 IRPTEN; /* allow interrupts */
The 5 code lines represent the setup for the high-priority timer. First the time period is set, by writing in TPERIOD register, then the timer counter is enabled and general interrupt requests are allowed.
Timer-routine Four operations have to be executed in timer-routine: 1. Set flag SEM to regulate access to MAIN 2. Write to IGBTs 3. Load the new timing sequence in the in-use timing-table 4. Go-back to waiting routine The implemented Assembler code to absolve the mentioned functions is shown below.
• Set flag SEM to regulate access to MAIN The access to MAIN must occur every 4 timer-interrupt and precisely during the first time period in the actual timing sequence. In this way we are able to use the entire sample time to execute the control algorithm. Flag SEM is set in timer-routine in order to regulate the access to Main. The setting process of flag SEM is allowed by means of operations on the address of circular buffers DAG1-6 and DAG1-4. The idea is that, since at the beginning of every sample I6 points to the 4th element of buffer vect which contains the in-use timing sequence, we can use the address of I6 as control variable for access to MAIN. The implemented code to initialize the circular buffer DAG1-6 is shown in the following lines:
77
CODE IMPLEMENTATION
/*
DAG1-6 for timing buffer b6 l6 m6 r0 r1 r0 i6
= = = = = = =
*/
vect; /* Base */ 4; /* Lenght */ -1; /* increment */ b6; 3; r0 + r1; r0;
Here the circular buffer is initialized: B6 points to vect, the in-use timing table. M6 register contains a negative increment, -1, used to move along the buffer.
I6 = B6+3 at beginning. This procedure permits to obtain a reverse circular buffer, with I6 that points to the last element from the beginning.
Flag SEM is set as shown in the ASM code below:
r13 = b6;
/* every 4 timer-interrupt */
r14 = i6; r13 = r14-r13; r14 = 3; comp(r13,r14); if NE jump out; r13 = 1; /* sem==1: main is open*/ dm(sem)=r13; nop; out: f13 = dm(i6,m6); TPERIOD = f13; TCOUNT = TPERIOD;
During the 1st time of timing-sequence, the address’ difference between I6 and B6 is 3, due to the inverse circular buffer. In this period flag SEM is set to 1, in order to enable access to main.
Instruction of Indirect addressing with post-modify: this instruction decrements I6 every time it is invocated. This mechanism permits to handle access to MAIN.
78
CODE IMPLEMENTATION
• Write to IGBTs The second function performed by timer-routine is the writing to IGBTs. Flag cont is used to handle the selection of the right IGBTs configuration for each sector. The use of cont is based on the following mechanism: every timing-sequence, composed by 4 time-values, stays in only one sector. On this point, after reading the sector number stored in data memory, we can use cont to select the right IGBT configuration, thus cont is bounded between 0 and 3.
r13 = dm(sek); /*-------- sector 1 -------------*/ r14 = 0x0001; /* for sector 1 */ comp(r13,r14); if NE jump outsek1; /* config 1 */ r13 = 0; r14 = dm(cont); /* cont is 0 at start*/ comp(r13,r14); if NE jump out11; r13 = B#0000000000000111; nop; nop; dm(set_igbt) = r13; /* Set IGBT conf.*/ r13 = 1; r13 = r14+r13; dm(cont)=r13; jump ends; out11:
First the sector number is read from data memory for next comparison. The read sector number is compared with a fixed point number in the interval 1-6. If the two values are equal, the lines below are executed. The value of cont is compared each time with a constant value in the interval 0-3. After the 4th IGBTs writing cont is reset to 0, read for a new timin -se uence. As we can see on the code fragment, writing to IGBTs is permitted in two steps: first a 16-bit word is loaded in a temporary variable, and then it is written to the output port called set_igbt in data memory segment.
79
CODE IMPLEMENTATION
• Load the new timing-sequence in the in-use timing-table The loading process of the new timing-sequence in the in-use timing table is shown in the code fragment below. r13 = 0; dm(cont)=r13; /* LOAD timing sequence in dm(i6,m6) */ f13=dm(i4,m4); dm(i6,m6)=f13; f13=dm(i4,m4); dm(i6,m6)=f13; f13=dm(i4,m4); dm(i6,m6)=f13; f13=dm(i4,m4); dm(i6,m6)=f13;
t
After written the 4 IGBTs configuration, cont is reset to 0, ready for the beginning of a new timing-sequence.
The timing-sequence stored in the temporary timing-table is loaded in the in-use timing-table.
Waiting routine The waiting routine executes two tasks: 1. Handle the ON-OFF of system by the use of FLAG0 2. Read the value of SEM for access to MAIN
wait_flag0: r1 = dm(sem); r2 = 1; comp(r1,r2); if EQ jump main; if not flag0_in jump wait_flag0;
In the waiting routine the control variable SEM is used. When SEM is 1 the process jumps to MAIN routine.
80
CODE IMPLEMENTATION
7.2 PI realization The numerical expression of the PI regulator is as follows: k −1
Uk
= K pi ek + Ki ek + ∑ en
( 7.1)
n =0
The discrete-time integrator of the PI controller is implemented with trapezoidal method. For this method, 1/s is approximated by:
Ts ( z + 1) 2 ( z − 1)
( 7.2)
With Ts fixed, corresponding to the sample time, let
x (k )(= y k− +1) ⋅
Ts
− u (k
2
1)
( 7.3)
The integrator uses the following steps to compute its output: Step 0:
y(0) = x(0) = initial cond. x(1) = y(0) + T/2 * u(0)
Step 1:
y(1) = x(1) + T/2 * u(1) x(2) = y(1) + T/2 * u(1)
Step k:
( 7.4)
y(k) = x(k) + T/2 * u(k) x(k+1) = y(k) + T/2 * u(k)
The speed PI controller is implemented with anti-windup technique, because saturation of output could often happen. On the other hand the flux PI controller is implemented without anti-windup because the saturation of the output command variable could happen only for a short time at the beginning.
7.3 First order filter realization The first order filter for the rotor flux estimation in F.O.C. block corresponds to the following equation in Laplace domain:
Phir Id
=
LM 1 + sTr
( 7.5)
In order to implement the transfer function by means of a digital filter for the ADSP21020 the FDATOOL of Matlab is used. FDATOOL is a graphical user interface that allows designing and analyzing digital FIR and IIR filters. The low-pass filter is implemented by means of a first order IIR filter, with Butterworth method. Furthermore FDATOOL permits to export the designed filter as a Simulink
81
CODE IMPLEMENTATION
model, and to know its coefficients for code implementation. In Figure 7-1 the structure of the designed first order filter is represented:
Figure 7-1: First order digital filter
The following code is used for the filter implementation: f1 = dm(coeff1); f2 = dm(coeff2); f3 = dm(Id);
/* input */
f3 = f3*f1; f5 = dm(sign_b); f4 = f5*f2; f4 =f3-f4; dm(sign_b)=f4; f4 = f4+f5; f5 = dm(Lm); f4 = f4*f5;
/* out filter */
dm(Phir)=f4;
The filter coefficients are loaded from data memory.
In order to implement the delay block, the new variable sign_b is used. At the beginning sign_b is 0. Then it is uploaded each sample time.
7.4 Signal conditioning The method followed in order to adapt the measures of speed and currents for the control algorithm is based on the standard procedure of signal conditioning. After converting the measure by means of the A/D converter, an offset and a gain have to be applied in order to have a floating-point representation of the measure. The obtained value will represent the real value of the measure, since normalization to 1 is not performed. The conditioning procedure is shown in Figure 7-2.
82
CODE IMPLEMENTATION
Figure 7-2: Conditioning procedure
The following Assembler code is used to realize the signal conditioning for speed. In similar way the conditioning of the measured currents is implemented. r1 = dm(rd_ad4);
/*read from AD4 - 1 Analog-D1
*/ r2 = ASHIFT r1 BY 20; f1 = FLOAT r2; f2 = 2.4e7; f1 = f1 + f2;
/* offset
f0 = -1.460564752e-6;
/* gain */
*/
f2 = f1*f0; dm(Ux_1) = f2; nop;
/* For time to change waitstate
nop;
/* For time to change waitstate */
*/
The measure of A/D is first loaded in the location rd_ad4 of data memory, after that the value is loaded in register r1 for next operations.
The procedure of signal conditioning is performed by a shift of the value in r1 and then an offset and a gain are applied. The result in f2 is loaded in location Ux_1 of data memory, which is the rotor speed in rpm.
83
LABORATORY IMPLEMENTATION
8
LABORATORY IMPLEMENTATION The embedded control system is implemented by using the ADSP-21020 of Analog Devices, a 32-bit floating-point digital signal processor. The ADSP-21000 Family architecture is the first designed of Analog Device, able to support ANSI standard numerical C. Anyway, Assembler programming language is preferred to C, to fulfil the goal, for higher computational efficiency.
8.1 Test bench setup
Figure 8-1: Laboratory test bench
84
LABORATORY IMPLEMENTATION
The laboratory test-bench is shown in Figure 8-1. The driver induction motor is powered by the frequency converter, ABB ACS600, controlled in torque operation; together they simulate the WT. The induction generator (IG in figure) that is physically connected to the driver by means of a shaft is powered by the power converter, which produces the 3-phase voltages V R, V S, V T by means of the designed
control system. The power converter receives three signals for the 3 hi-side IGBTs, through the digital interface. The pulse-pattern for the power converter is generated by the designed
control algorithm, implemented with assembler programming by the use of a PC. The generated executable file is then loaded in the ADSP-21020. The DC voltage for the power converter is generated, by rectifying the 3-phase AC voltage from the grid. In generator mode operation the voltage on the DC side is kept constant by using a chopper device: it is essentially composed by a voltage comparator which enables an IGBT to conduct when the voltage on the DC side is major than the pre-defined supply voltage. Therefore a resistive load is connected to the chopper in order to dissipate the generated electric power.
8.2 Speed measurement method - The speed measures are conducted by writing in the empty data memory bank of ADSP-21020. Considering that we have 2000 memory cells in total and that speed measurement happens every sample time Ts, that is 3.333e-4s, we have 666.6ms to monitor the speed by using the tool Gnuplot Graph, the graphical user interface of ADSP-21020. The tool Gnuplot Graph is used either for open loop or for closed loop tests. - Furthermore, for closed loop tests the Control Panel of the Frequency Converter ACS600 is used; it is shown in Figure 8-2.
Figure 8-2: Control Panel of Frequency Converter ABB ACS600
85
LABORATORY IMPLEMENTATION
As shown in the previous figure, the Control Panel has a user command line on the screen where both speed and torque reference can be set and visualized, depending on the operation mode we want to use. In order to emulate the wind turbine behaviour at different wind speed, a variable torque command is needed. Measures will show that the designed control system is capable to maintain the speed constant at the reference value, with different torque commands.
Speed sensor overview The measure of the speed is made possible by using the sensor included in the frequency converter ABB-ACS600. As shown in Figure 8-1 the frequency converter supplies the driver motor, but since driver and IG are joined by means of a shaft, it implies that the speed is the same. The sensor mounted on the frequency converter is a current sensor which generates a current signal in the range of 0-20mA proportional to the rotor speed. On this point a resistance is used to obtain a voltage suitable to the input port of the interface. The signal conditioning is shown in Table 11.
Table 11: Signal conditioning 0 – 20 mA
Current sensor
86
Resistance
273 Ω , 1%
Voltage output
0 – 5.46 V
Interface range
0–9V
LABORATORY IMPLEMENTATION
8.3 Open loop tests and results The open loop tests of the designed control system are conducted by generating three sinusoidal signals via software, which implement the Voltage-Frequency control method. Voltage and frequency are modulated in order to obtain a fixed speed ramp for the Induction Generator. In Figure 8-3 the phase-to-phase voltage generated by the designed SVM is depicted. Furthermore the voltage measure at the DC side, V DC is depicted and it corresponds to 535V.
Figure 8-3: Phase-to-phase SVM voltage and VDC
Figure 8-4: Phase voltage and line current
In Figure 8-4 the measures of SVM phase voltage and line current are depicted. The measures have been performed with VDC < 100V. As shown in figure the current wave
87
LABORATORY IMPLEMENTATION
shape is perfectly sinusoidal, this demonstrates the correct operation of the SVM block. Furthermore the thoretical 90 degrees V-I displacement can be observed.
Figure 8-5: Phase voltage and line current at rated speed
In Figure 8-5 the phase voltage and line current measures at the rated rotor speed are depicted. The measure is done with V DC = 535V. In this case a ripple on the current waveform can be observed, and it could be due to the rotor vibrations at the rated speed. The indication of frequency on the scope confirms that the machine is running at the rated speed that is 1500 rpm.
88
LABORATORY IMPLEMENTATION
8.4 Closed loop tests and results In this paragraph the rotor speed, voltage and current measurements in closed loop are depicted. In order to verify the correct operation of the control system in normal condition and during fault, a reference speed of 100 rpm is used; the choice permits to verify that system well works as well and avoids the problem to handle high power in generator operation, at the rated speed and with rated input torque. For closed loop tests the following settings are used:
Table 12: Closed loop settings 100 rpm
Speed reference Input torque
5%
Voltage
535V
Speed filter
fc = 50Hz
In Figure 8-6 the measures of the phase-to-phase voltage of SVM, with VDC equal to 535V and rotor speed are represented. We can observe that the SVM waveform contains a sinusoidal first harmonic component. At the same time the line current measure shows a sinusoidal waveform with some noise contribute.
Figure 8-6: Phase-to-phase voltage of SVM and line current at speed of 100rpm
89
LABORATORY IMPLEMENTATION
In Figure 8-7 the measure of the IG rotor speed is depicted. A low-pass filter of 50Hz as cutting frequency is used at the output of the speed sensor.
* Figure 8-7: Rotor speed measure with ωr
= 100 rpm , fc = 50Hz
In Figure 8-8 the rotor speed measure is depicted. In this case a low-pass filter with cutting frequency of 10Hz is used.
* Figure 8-8: Rotor speed measure with ωr
90
= 100 rpm , fc = 10Hz
LABORATORY IMPLEMENTATION
Fault condition - experimental results The short-term gridfault has been implemented by means of an external pulse generator, connected to the interface of ADSP-21020. By using a square waveform with little dutycycle it is possible to emulate a short-term grid fault. As fault time is considered ΔTfault equal to 200ms. The rotor speed measure during fault condition is depicted in Figure 8-9. Since the process of synchronization with the fault event is made diffcult by the short representation time of GnuplotGraph, only the most significant part of the speed waveform during the fault has been considered for measures. The speed measure during the short-term grid fault is conducted with the following settings indicated in Table 13:
Table 13: Closed loop settings 100 rpm
Speed reference Input torque
70%
Voltage
535V
Speed filter
fc = 50Hz
ΔTfault
200ms
A torque command of 70% is used to feed the driver. Since the driver is bigger than the IG, with a few calculations we can easily obtain that 70% as torque command is very close to the rated torque of the IG.
* Figure 8-9: Rotor speed measure under grid fault, with ωr
= 100 rpm , fc = 50Hz
As shown in Figure 8-9 the speed increase during the fault, till about 125 rpm. Then it decreases back to the reference speed of 100 rpm, after a short speed undershot.
91
LABORATORY IMPLEMENTATION
Speed control - experimental results Variations of wind speed can be emulated as different torque commands generated by the Frequency Converter. In order to verify the correct operation of the speed control we should observe that rotor speed remains at the reference value, even if the input torque varies in the range from 0 to the rated value.
Figure 8-10: Rotor speed measures with ωr*
92
= 100 rpm
and different torque commands
LABORATORY IMPLEMENTATION
As shown in Figure 8-10, by applying four differnt values of input torque, from the 10% to the rated torque of the IG, the rotor speed remain close to the reference value, that is 100 rpm.
93
Conclusion
9
CONCLUSION
The increasing penetration of wind power in the grid makes necessary the management of wind systems not only in normal condition but also during grid faults. Until few years ago, when the first wind farms were been developing, wind turbines were disconnected from the grid during a grid-fault, in order not to deliver electric energy. Nowadays the disconnection of a wind farm of 500MW, for a short-term grid fault entails high wasting of wind energy, since the reconnection process takes about 4-5 minutes. Furthermore Grid Operators require staying connected under grid fault in order to satisfy the grid codes requirements. With this project it has been demonstrated that there is practically no risk of mutual interaction between the wind turbine and its control system, the converter, when a shortterm grid fault occur. The implemented model of wind turbine shows a coherent response when the power system is subjected to a transient grid fault with similar results either in simulation, or in laboratory implementation.
9.1 Designed control strategy The designed control strategy, Indirect Field Oriented Control has leaded to important results in terms of stability, precision and accuracy. This demonstrates than field orientation, in the form of I.F.O.C. is an established control method for high dynamic performance of AC drives. In particular the vector control of I.F.O.C. represents a highly reliable scheme, which has become de facto the industry standard. It needs the direct measure of three variables, at least two of the three-phase currents and the rotor speed. The control strategy used has permitted to manage the fault, by operating directly on the command variables of torque and flux, generated by the control algorithm. As result, an automatic increasing of the induction generator rotor speed is observed and the electric power generation becomes close to zero ensuring that current and voltage protections are not tripped.
9.2 Simulation tool Matlab/Simulink platform for the implementation of the simulation model has permitted to verify in effective way the correct operation of the designed WT control system
94
Conclusion
including the speed controller, IFOC and SVM blocks. The Simulink model of the Induction Machine and Wind Turbine well match the characteristics of the real equipment used for laboratory implementation and tests. Therefore the experimental results are similar to the ones of simulation. On the other hand, if the analysis of the power converter losses is necessary, the complexity of the block diagram used to simulate the power system would increase drastically with the number of semiconductors in the circuit.
9.3 Digital Signal Processor in Wind Energy The use of a Digital Signal Processor is essential for real time control of wind systems. The 33MHz DSP of Analog Devices has been suitable to fulfill the aim, since the sample time used is big enough to include in itself the entire control algorithm. The capability to easily write to memory relevant data is another key issue for using a DSP. In fact by using a suitable memory bank to store data, it is possible to monitor on a predefined time interval the information about rotor speed, currents, rotor flux and the other important measurements in effective way. Furthermore the use of a DSP permits to store information data of the control variables during a fault condition, and to monitor it at the end of fault. Depending on the frequency of the grid faults and on the memory bank capacity, the user can be able to keep trace of several faults within a day or a week and so to analyze the behavior of the system.
9.4 Software development The computational time for most of FOC schemes is high, and special attention is paid especially when the use of low-cost digital signal processors (DSPs) for motor control is required. Software development by means of Assembler programming language has led to a longer way for code implementation, due to register operations and to complex process for handling data structures. By the way, the use of Assembler turns out more efficient for ADSP-21020 programming, compared with C.
9.5 Simulation and experimental results Simulations and experimental measurements have carried out similar results, either in normal condition or under grid faults. The vector control of the induction generator has demonstrated optimal dynamic features, in terms of very low speed and torque ripple in normal condition; furthermore it represents a powerful solution under grid faults, since it operates directly by controlling the torque and flux commands.
95
Conclusion
9.6 Further work The results presented in this thesis indicate that the future of wind turbine control systems is expanding, as for wind farms, in terms of production optimization and fault management. A real-time condition monitoring of offshore wind turbines could be a valid allied for such a control system. A graphical user interface, integrated with the input and output ports of the ADSP-21020 interface would enable to monitor the most significant variables, at the same time, and in real-time way. Furthermore an intelligent condition monitoring system is the key issue to detect specific failure modes and to provide prediction of mean time to failure.
96
REFERENCES
[1]
Leonhard, W., Control of Electric Drives. Springer Verlog , 1985.
[2]
Parekh, R., VF Control of 3-phase Induction Motor Using Space Vector Modulation. Microchip Technology, AN955, 2005.
[3]
ABB Industry Oy, ACS600 – Guida all’avviamento. ABB, 1998. ID 6BFE 64050184 R0104.
[3]
ABB Industry Oy, ACS600 – Guida all’avviamento. ABB, 1998. ID 6BFE 64050184 R0104.
[4]
Carlsson, A., The back to back converter: control and design. Department of Industrial Electrical Eng. And Automation of Lund Institute of Technology, 1998. ISBN: 91-88934-08-X.
[5]
Stiesdal, H., The wind turbine: components and operation . Bonus Energy A/S,
[6]
1999. Kemsley, R., Pannel, G., Barbier, C., Cost effective improvements in DFIG
performance under fault conditions for offshore applications. Econnect Ventures Ltd., 2007. [7]
Kubiczek, Z., Lhlir, P., 3-Phase AC Motor Control with V/Hz Speed Open Loop Using DSP56F80X. Motorola Semiconductor, AN911/D, 2001.
[8]
Analog Devices, 32/40-Bit IEEE Floating-Point DSP Microprocessor ADSP21020. Rev. C.
[9]
Freescale Semiconductor. ACIM Vector Control Drive using the 56F8013 Device.DRM075 2005, Rev 1.
[10]
Zool, H., Direct torque control of induction motor drives using space vector
[11]
modulation. Report, Universiti Teknologi Malaysia, 2005. Jay, W., Earl, G., Advanced electric generator& control for high speed micro/mini turbine based power systems. Patent.
[12]
Texas Instruments Europe, Filed Orientated Control of 3-Phase AC-Motors. Literature Number: BPRA073, 1998.
97
References
[13]
Undeland, T., Overseth, H., Gjengedal, T., Torsional resonance chapter in: Doubly fed induction generator in a wind turbine. Report, Norwegian University of Science and Technology.
[14]
Tomasso, G., Controllo Vettoriale di Coppia e Flusso per Motori Asincroni . Tesi di Dottorato di Ricerca in Ingegneria Industriale, XI ciclo. Universita’ degli studi di Cassino.
[15]
Zhenyu, Y., Space-Vector PWM with TMS320C2x/F24x using hardware and software determined switching patterns. Application Report SPRA524, Texas Instruments, 1999.
[16]
Zhenyu, Y., Figoli, D., AC Induction Motor control using constant V/Hz principle and Space Vector PWM technique with TMS320C240. Application Report, SPRA284, Texas Instruments, 1998.
[17]
Teodorescu, R., Getting started with dSpace system. Report, Department of Electrical Energy Conversion, Aalborg University.
[18]
Padmaraja, Y., Speed control of 3-Phase Induction Motor using PIC18 Microcontrollers. Application Report, AN843, Microchip Technology Inc., 2002.
[19]
Marussi, A., Implementazione di un filtro FIR in codice assembler in floating point sulla scheda TMS320C6711 della Texas Instruments. Laboratory Report,
[20]
Universita’ degli Studi di Trieste. STMicroelectronics, Space vector
[21]
Infineon Technologies Optimized Space Vector Modulation and Over-
modulation using 8-bit ST7MC microcontroller and ST7MC-KIT/BLDC starter kit. Application note, AN2154, 2007, Rev 3. modulation with the XC866, Application Note, 2005, V 2.0. AVR32710: Space Vector Modulation using AVR32 Microcontroller. Application Note, AVR 32, 2008, Rev. 32094A.
UC3
[22]
ATMEL,
[23]
Munoz-Garcia, A., Lipo, T., Novotny, D., A new Induction Motor V/f Control Method Capable of high-performance regulation at low speeds. Paper, IEEE, 1998.
[24]
Burroughs, J., Controlling 3-Phase AC Induction Motors using the PIC18F4431. Application Note, AN900, Microchip Technology, 2004.
[25]
Ackermann, T., Wind power in power systems . WILEY, 2005.
98
A
REFERENCE FRAME THEORY
In this appendix the general frame theory used for three phase machines is presented. In 1920 R. H. Park introduced a new approach to electric machines analysis. Such a new approach is based on a transformation that changes the stator voltage, current and flux linkage variables into space vectors variables, which can be represented in stationary reference frames or rotating reference frames. The main motivation for this was to eliminate all position varying inductances from the voltage equations associated with electric machines, thus making the analysis simpler. Space Vector in the abc reference frame Considering three time varying variables f a( t) , f b (t ) and f c ( t) , they can be represented by means of the space vector f abc defined as follows:
f abc Where α
=e
j
=
2 3
( f a (t ) + α f a (t ) + α 2 f a (t ))
2π 3
. This is represented in Figure A- 1.
Figure A- 1: Space vector concept in the stationary abc reference frame for three general time varying variables.
99
Reference frame theory
Space vector in the αβ 0 reference frame f abc can be represented in a stationary reference frame ( αβ 0 ) by means of the Clarke transformation; the real axis of this reference frame (α-axis) is aligned with the a-axis as shown in Figure A- 2.
Figure A- 2: Space vector concept in the stationary reference frame αβ 0 Components of f αβ 0 can be calculated as follows:
fα
=
2
fβ
=
2
3
3
((f a t ) −
(0 +
3 2
1 2
fb (t ) −
f b (t ) −
1 2 3
2
f c (t ))
A. 1
f c (t ))
A. 2
Space Vector in the dq0 reference frame For the synchronous and induction machines, the natural choice of reference frame is the rotor fixed dq0 reference frame. This choice yields that any dependencies on position change (e.g. the phase inductances) are cancelled out, and the values become constant. f αβ 0 can be represented in a rotating reference frame dq0 by means of Park transformation; the real axis of this reference frame (d-axis) is phase-shifted by θ dq with respect to the a-axis as shown in Figure A- 3.
100
Reference frame theory
Figure A- 3: Space vector concept in the rotating reference frame dq0 Components of f dq 0 can be calculated as follows:
fd
= fα cos θ dq + f β cos θ dq
A. 3
fq
= − fα sin θ dq + f β cos θ dq
A. 4
f dq 0 can be directly obtained from f abc as follows:
f dq 0
= Tdq 0 ⋅ f abc
A. 5
Where
⎡ cos(θ ) dq ⎢ ⎢ 2 Tdq 0 =− ⎢ sin( − θ dq−) 3⎢ ⎢ 1 ⎢ ⎢⎣ 2
2π ) 3 2π sin( θ dq+ ) 3 1
cos( θ dq
−
2
cos(
θ dq
sin(
θdq
+
2π ) 3 2π ) 3
1 2
⎤ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥⎦
A. 6
The 0 component arises only when working with unbalanced 3 phase systems, which lead to non zero current in the 0 conductor of the power supply. The inverse transformation from dq0 to abc is performed by Tdq−10 as below:
f abc
= Tdq−10 ⋅ f dq 0
A. 7
101
Reference frame theory
⎡ −sin( θdq) ⎢cos(θ dq ) ⎢ 2 π 2π Tdq−10 = ⎢cos(−θ dq − ) − s in( θdq ) ⎢ 3 3 ⎢ 2π 2π ⎢ cos(θ dq + ) sin( − θdq + ) 3 3 ⎣
102
1 1 1
⎤ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦
A. 8
Laboratory equipment
B
LABORATORY EQUIPMENT
Induction Motor
Induction Gen.
(the left one) Model: ABB QU132 S4AT, 5.5KW, 380-420V, 50Hz, cosφ = 0.84
(the right one) Model: ABB QU112 M4AT, 4KW, 380-420V, 50Hz, cosφ = 0.84
Power Converter Maximum power: 5KW Maximum voltage: 900V Maximum frequency: 5KHz - 10KVA
Diode rectifier
Main relay ON/OFF of system ON/OFF in emergency case
Chopper Maximum current: 60A
103
Laboratory equipment
Resistance load 200Ω (Parallel)- 5KW (total)
Frequency converter Model: ABB ACS-60100093 9KVA – 5.5KW
3-phase auto-transformer Model: Lubke Vario 3R58-220H 0 – 220V 3x25A
Mono-phase auto-transformer Model: Lubke Vario R54-220-B 0 – 220V ; 10A
Converter transformer 10KVA Project connection: Δ: primary : secondary 1 Δ : secondary 2
Digital Signal Processor Model: ADSP-21020
104
Laboratory equipment
Digital interface
Current (Hall) sensors
Beckman Industrial Model: 360B DC Voltage range: 0-1500V
Current probe amplifier Model: Tektronix AM 503A
Oscilloscope Model: Tektronix TDS 2014 100MHz
Differential probe
Differential probe
Model: SI-9000 Attenuation factor:
Attenuation factor:
• •
1/50 +/-100V
• •
1/50 +/- 350V 1/500 +/- 3500V
1/500 +/-1000V
105
Laboratory equipment
ACS-600 Control Panel
• •
106
Set torque reference Real-time speed measurement