POLITECHNIKA WARSZAWSKA
POLITECHNIKA WARSZAWSKA
POLITECHNIKA WARSZAWSKA
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>POLITECHNIKA</strong><br />
<strong>WARSZAWSKA</strong><br />
WARSAW UNIVERSITY OF TECHNOLOGY<br />
Faculty of Electrical Engineering<br />
ROZPRAWA DOKTORSKA<br />
Ph.D. Thesis<br />
Dariusz L. Sobczuk, M. Sc.<br />
Application of ANN for Control of PWM<br />
Inverter Fed Induction Motor Drives<br />
WARSZAWA<br />
1999
Warsaw University of Technology<br />
Faculty of Electrical Engineering<br />
Institute of Control and Industrial Electronics<br />
Ph.D. Thesis<br />
M.Sc. Dariusz L. Sobczuk<br />
Application of ANN for Control of PWM<br />
Inverter Fed Induction Motor Drives<br />
Thesis supervisor<br />
Prof. dr hab. Marian P. Kaźmierkowski<br />
Warsaw – Poland, 1999
Contents<br />
1. Introduction 4<br />
2. Mathematical description of induction motor 7<br />
2.1. Introduction 7<br />
2.2. Basics of induction motor model 7<br />
2.2.1. Space vectors 7<br />
2.2.2. Vector Equilibrium equations 9<br />
2.2.3. Vector Equilibrium equations in per unit system 11<br />
2.2.4. Orientation of the model 11<br />
3. Basics of Artificial Neural Networks (ANN) 14<br />
3.1. Introduction 14<br />
3.2. Artificial neuron model 15<br />
3.2.1. Activation function 16<br />
3.3. ANN topologies 18<br />
3.3.1. The layer of neurons 18<br />
3.3.2. Linear filter 19<br />
3.3.3. Multilayer Neural Networks (MNN) 20<br />
3.4. Learning and training of ANN 21<br />
3.4.1. Introduction 21<br />
3.4.2. Learning algorithms for feedforward neural networks 22<br />
3.5. Structures of Neuromorphic controllers 32<br />
3.5.1. Introduction 32<br />
3.5.2. Inverse control 34<br />
3.5.3. Adaptive neurocontrol 38<br />
4. ANN based current controllers (CC) 40<br />
4.1. Introduction 40<br />
4.2. Basics of CC in three-phase PWM converters 41<br />
4.2.1. General requirements and performance criteria 41<br />
4.2.2. Nonlinear current controllers 43<br />
4.2.3. Linear current controllers 49<br />
4.3. Off line trained neural comparator 54<br />
4.3.1. Introduction 54<br />
4.3.2. NN controller in three-phase ABC coordinates 54<br />
4.3.3. NN controller in α-β coordinates 63<br />
4.3.4. Results 64<br />
4.3.5. Current controller based on single layer perceptron model 79<br />
4.4. Optimal mode ANN CC 85<br />
4.4.1. Optimal mode CC 85<br />
4.4.2. Three layers NN controller trained by optimal PWM pattern 89
Contents<br />
5. Speed estimation of induction motor 97<br />
5.1. Introduction 97<br />
5.2. Basic techniques of speed estimation 97<br />
5.2.1. Open loop estimators 99<br />
5.2.2. Closed loop estimators – observers 102<br />
5.2.3. Model Reference Adaptive Systems 107<br />
5.2.4. Estimator based on Artificial Intelligence 109<br />
5.3. ANN based speed estimators 113<br />
5.3.1. Speed estimation with on-line ANN 113<br />
6. ANN sensorless field oriented control of IM 120<br />
6.1. Principle of field oriented control (FOC) 120<br />
6.2. Block scheme description 125<br />
6.2.1. General description 125<br />
6.2.2. Description of block scheme implemented in practice 127<br />
6.3. Design of current controller 130<br />
6.3.1. Introduction 130<br />
6.3.2. Decoupled current regulators 130<br />
6.3.3. Controllers design for field oriented IM 131<br />
6.3.4. Internal model control 133<br />
6.4. Design of speed controller 136<br />
6.4.1. Introduction 136<br />
6.4.2. Design methods 137<br />
6.5. Rotor and stator resistance adaptation 139<br />
6.5.1. Introduction 139<br />
6.5.2. Stator resistance adaptation 140<br />
6.5.3. Rotor resistance adaptation 142<br />
7. Simulation and experimental results 145<br />
7.1. Introduction 145<br />
7.2. The choice of the learning rate 145<br />
7.3. Steady state behaviour 147<br />
7.4. Dynamic behaviour 158<br />
8. Conclusions 168<br />
References 155<br />
Appendices 170<br />
A1. Description of the simulation program 170<br />
A2. Laboratory setup 194<br />
A3. Motor parameters 202<br />
A4. Notation 203
1. Introduction<br />
1. INTRODUCTION<br />
The induction motor thanks to its well known advantages as simply construction,<br />
reliability, raggedness and low cost has found very wide industrial applications.<br />
Furthermore, in contrast to the commutator dc motor, it can also be used in aggressive<br />
or volatile environments since there is no problems with spark and corrosion. These<br />
advantages, however, are occupied by control problems when using induction motor<br />
in speed regulated industrial drives. This is due primarily three reasons:<br />
(a) - the induction motor is high order nonlinear dynamic system with internal<br />
coupling,<br />
(b) - some state variables, rotor currents and fluxes, are directly not measurable,<br />
(c) - rotor resistance (due to heating) and magnetising inductance (due to saturation)<br />
varies considerably with a significant impact on the system dynamics.<br />
Therefore in the early 70s besides the simple scalar u/f=const control method, the<br />
more complicated vector approaches have been developed. The field oriented control<br />
(FOC) has been proposed almost in the same time by Hasse and Blaschke. In this<br />
method the motor equations are transformed in the field coordinates system (which<br />
rotates with the rotor flux vector). This transformation corresponds to the decoupled<br />
torque production in separately excited DC motor. The disadvantage of this method is<br />
its complicity. It is necessary to design the flux, torque, and two current controllers,<br />
and of course make signals transformation to the field-oriented coordinate system.<br />
Current Control (CC) technique of the Voltage Source (VS) Pulse Width Modulated<br />
(PWM) inverters is the key problem in the FOC systems. There are many possibilities<br />
to design CC, but only few are based on artificial neural network (ANN) approach.<br />
Among the main advantages of the ANN controllers are fast signal processing,<br />
learning and generalisation abilities, robustness and insensitivity to the load parameter<br />
changes.<br />
Currently, thanks to digital processor based control implementation induction motor<br />
drives have reached the status of modern technology in a wide range applications<br />
from low-cost to high performance systems. Recently, a very intensive research is<br />
concentrated on the elimination of the mechanical speed sensor without distortion the<br />
4
1. Introduction<br />
dynamic performance of the speed control loop. The advantages of such sensorless<br />
speed control drive can be summarized as follows:<br />
- lower cost,<br />
- reduced size of the drive motor,<br />
- elimination of the sensor cable,<br />
- higher reliability.<br />
In recent years a lot of methods have been developed which allows to eliminate speed<br />
sensors, because in many industrial applications it is neither possible nor desirable to<br />
use a mechanical sensors. These methods can be generally divided in two groups:<br />
closed loop sensorless speed control where the motor speed is estimated from other<br />
measurable quantities as stator voltage and currents and open loop speed control with<br />
slip compensation where the motor synchronous speed is controlled and the effect of<br />
load torque changes on motor shaft speed is only compensated. For speed estimation<br />
very often advanced observer technique or neural networks are applied. Slip<br />
compensation methods, in contrast, are usually much simpler but cannot guarantee<br />
good dynamic performances.<br />
Among published papers only one is based on Neural Networks (NN) approach.<br />
Therefore, the author has formulated the following tasks of the thesis:<br />
• Basing on the Artificial Neural Network approach, development of the current<br />
controllers in field oriented controlled PWM voltage source inverter fed<br />
induction motor,<br />
• Basing on the Artificial Neural Network theory, estimate the mechanical speed of<br />
the induction motor, with the measuring of the stator currents and voltages.<br />
In the both groups of problems the new original solutions have been proposed (the<br />
author is the co-author of the patent no. P310512). To carry out this tasks at first the<br />
simulation investigation have been performed, and after that the experimental set-up<br />
has been design and the laboratory experiments have been done. Note that the<br />
sensorless FOC of induction motor, described in this thesis, could be used in the high<br />
performance motor drives of the electrical vehicles (for example hybrid cars) and in<br />
the factories, in which the measurement of the mechanical speed is expensive or even<br />
impossible.<br />
5
1. Introduction<br />
In the author’s opinion the following results of the thesis are his original achievements:<br />
• Development in C language of simulation packet DSIM for the investigation<br />
of PWM voltage source inverter fed induction motors control,<br />
• Development of the two types of the Artificial Neural Network Current<br />
Controllers. The simulation study and experimental verification of these<br />
approaches,<br />
• Development of the new Artificial Neural Network based induction motor<br />
speed estimator. The simulation study and experimental verification of this<br />
approach<br />
• Implementation of the closed loop field oriented control (FOC) with the<br />
neural network based speed estimator (instead of the tachogenerator,<br />
encoder or resolver) on experimental set up with floating point DSP –<br />
TMS320C31.<br />
The thesis consists of eight chapters. Chapter 1 is an introduction. Chapter two is<br />
devoted to the mathematical model of the induction motor. Chapter 3 is the simple<br />
introduction to the Artificial Neural Network theory, which is used, in the further part<br />
of this thesis. Chapter 4 describes the Current Controllers design methods. In the same<br />
chapter two ANN based current controller design approaches are presented and the<br />
simulation and experimental results are shown. In Chapter 5 the speed estimation<br />
methods are described and discussed. The new ANN based speed estimator is shown<br />
and compared with other methods. In Chapter 6 in turn the Field Oriented Control<br />
(FOC) and its implementation is described and discussed in details. Finally in<br />
Chapter 7 the simulation and experimental results in closed loop FOC with the neural<br />
network based speed estimator are presented and studied. Chapter 8 includes<br />
conclusions. Description of the simulation program and the laboratory set-up is given<br />
in Appendix.<br />
6
2. Mathematical description of induction motor<br />
2. MATHEMATICAL DESCRIPTION OF INDUCTION MOTOR<br />
2.1. Introduction<br />
In this chapter the continuous model of induction motor will be presented and, in the<br />
further part of this thesis, used as the controlled plant. This mathematical description<br />
is based on the complex space vector in per unit (p.u.) notation [12]. The<br />
mathematical model in the coordinates, which rotate with angular speed (ω K ), is<br />
presented. Finally some special cases, i.e. α-β and x-y coordinates are considered.<br />
2.2. Basics of induction motor model<br />
2.2.1. Space vectors<br />
The induction motor model will be presented in space vector notation. Therefore, in<br />
this subsection we introduce the short description of this approach.<br />
A three-phase symmetric system can be replaced by one resultant space vector<br />
represented as the complex number.<br />
Let us:<br />
A<br />
B<br />
C<br />
T<br />
k = [k , k , k ]<br />
(2.1)<br />
and the elements of this vector satisfy the condition:<br />
k k + = 0<br />
(2.2)<br />
A + B kC<br />
then a space vector is defined as<br />
2<br />
[ 1k<br />
+ ak + a k ]<br />
2<br />
k = A B C<br />
(2.3)<br />
3<br />
where a and a 2 are calculated using following formula:<br />
7
2. Mathematical description of induction motor<br />
j2π<br />
/ 3 1<br />
a = e = − + j<br />
2<br />
2 j4π<br />
/ 3 1<br />
a = e = − − j<br />
2<br />
3<br />
2<br />
3<br />
2<br />
(2.4)<br />
It is obviously that space vector k is divided into real and imaginary parts:<br />
k = k α + jk β<br />
(2.5)<br />
Using eq. 1.2, eq.1.3 we can obtain<br />
kα<br />
= k A<br />
kB<br />
− k<br />
k = C<br />
β<br />
3<br />
(2.6)<br />
and<br />
k A = kα<br />
1<br />
kB<br />
= − kα<br />
+<br />
2<br />
kC<br />
1<br />
= − kα<br />
−<br />
2<br />
3<br />
kβ<br />
2<br />
3<br />
kβ<br />
2<br />
(2.7)<br />
These equations describe transformations from ABC to αβ and from αβ to ABC<br />
respectively.<br />
8
2. Mathematical description of induction motor<br />
2.2.2. Vector equilibrium equations<br />
The following simplifying assumptions are made when deriving the set of equation<br />
describing induction motor [12]:<br />
1. the motor under consideration is a symmetrical three-phase one;<br />
2. only the basic harmonic is considered, while the higher harmonics of<br />
the spatial field distribution and of the magnetomotive force (MMF)<br />
in the air gap are disregarded;<br />
3. the distributed stator and rotor windings are replaced by a specially<br />
formed so-called concentrated coil;<br />
4. the effects of anisotropy, magnetic saturation, iron losses and eddy<br />
currents are neglected;<br />
5. the coil resistances and reactances are taken to be constant.<br />
Using above assumptions one can obtain the following equation of the motor [12]:<br />
d Ψ<br />
U = + sK<br />
sK Rs<br />
I sK + jΩK<br />
ΨsK<br />
dt<br />
d Ψ′<br />
U ′ = ′ + rK<br />
rK Rr<br />
I rK + j(<br />
ΩK<br />
− pbΩm<br />
) Ψ′ rK<br />
dt<br />
ΨsK<br />
= Ls<br />
I sK + LM<br />
I ′ rK<br />
Ψ′ rK = Lr′<br />
I ′ rK + LM<br />
I sK<br />
dΩm<br />
1 ⎡ m<br />
⎤<br />
=<br />
⎢<br />
− p s *<br />
b LM<br />
Im( I sK I ′ rK ) − M L<br />
dt J<br />
⎥<br />
⎣ 2<br />
⎦<br />
(2.8)<br />
where:<br />
• Ω m denotes the rotor angular speed,<br />
• Ω K denotes the angular speed of reference frame K,<br />
9
2. Mathematical description of induction motor<br />
• Ψ sK denotes the the stator flux space vector in K frame,<br />
• I sK denotes the stator current space vector in K frame,<br />
• U sK denotes the stator voltage space vector in K frame,<br />
• Ψ ’ r denotes the rotor flux space vector in K frame referred to the stator circuit,<br />
• I ’ rK denotes the rotor current space vector in K frame referred to the stator circuit,<br />
• U ’ rK denotes the rotor voltage space vector in K frame referred to the stator circuit,<br />
• M L denotes the external torque on the motor shaft.<br />
Motor parameters:<br />
• R s is stator winding self-resistance,<br />
• R ’ r is rotor resistance referred to the stator circuit,<br />
• L s is stator winding self-inductance,<br />
• L ’ r is rotor winding self-inductance referred to the stator circuit,<br />
• L M is main, magnetizing inductance,<br />
• p b is number of pole pairs,<br />
• m s is number of phase windings,<br />
• J is the moment of inertia.<br />
2.2.3. Vector equilibrium equations in per unit system<br />
Per unit (p.u.) systems are defined in terms of base units which most frequently<br />
correspond to rated motor parameters (U b , I b , Ω mb ).<br />
It is a standard procedure to use capital letters to denote the absolute physical<br />
quantities and to represent the relevant quantities expressed in relative units by small<br />
letters.<br />
Thus, for instance, if<br />
U<br />
u = (2.9)<br />
U b<br />
then U is an absolute physical value (in volts), U b the base quantity (in volts), and u<br />
the dimensionless relative value. Using per unit system equations eq. 2.8 can be<br />
rewritten in the following form<br />
10
2. Mathematical description of induction motor<br />
d<br />
u<br />
sK<br />
sK = rs<br />
isK<br />
+ TN<br />
+ jωKψ<br />
dt<br />
sK<br />
dψ<br />
u<br />
rK<br />
rK = rr<br />
irK<br />
+ TN<br />
+ j(<br />
ωK<br />
−ωm<br />
)<br />
dt<br />
= x<br />
sK s isK<br />
+ xM<br />
irK<br />
= x<br />
rK r irK<br />
+ xM<br />
isK<br />
dωm<br />
1 *<br />
= [ Im( ψ isK<br />
) − mL<br />
]<br />
dt T sK<br />
M<br />
ψ<br />
ψ<br />
ψ<br />
ψ<br />
rK<br />
(2.10)<br />
Note, that:<br />
• time t, T M and T N are expressed in absolute units,<br />
• l = x, the inductances in the flux-current equation are replaced by the reactances<br />
corresponding to them,<br />
• the rotor quantities recalculated to the stator side are referred to the same base<br />
units - for that reason the prime index is omitted.<br />
2.2.4. Orientation of the model<br />
When resolving vector equations, one can adopt an arbitrary coordinate reference<br />
frame. The main applied coordinate systems are chosen as follows:<br />
• stator-fixed system of coordinates (α-β) (ω K = 0),<br />
• rotor-fixed system of coordinates (d-q) (ω K = ω m ),<br />
• synchronous-rotating system of coordinates (x-y);<br />
In the last case the coordinate system is oriented along one of the space vectors in the<br />
motor. This vector could be:<br />
• the space vector for the stator currents<br />
• the space vector for the stator voltages<br />
• the space vector for the rotor currents<br />
• the space vector for the rotor flux linkages<br />
Some of these possibilities will be presented.<br />
11
2. Mathematical description of induction motor<br />
2.2.4.1. Stator oriented model α - β<br />
In this case ω K = 0 and the set of induction motor vector equation may be written as:<br />
d<br />
u<br />
s<br />
s = rs<br />
is<br />
+ TN<br />
dt<br />
dψ<br />
u<br />
r<br />
r = rr<br />
ir<br />
+ TN<br />
− j<br />
dt<br />
= x<br />
s s is<br />
+ xM<br />
ir<br />
= x<br />
r r ir<br />
+ xM<br />
is<br />
dωm<br />
1 *<br />
=<br />
s s<br />
dt TM<br />
ψ<br />
ψ<br />
ψ<br />
ω<br />
m<br />
ψ<br />
[ Im( ψ i ) − m ]<br />
L<br />
r<br />
(2.11)<br />
We can rewrite the above equations in the α-β coordinates as:<br />
u<br />
u<br />
u<br />
u<br />
ψ<br />
ψ<br />
ψ<br />
ψ<br />
sα<br />
sβ<br />
rα<br />
rβ<br />
sα<br />
sβ<br />
rα<br />
rβ<br />
dω<br />
dt<br />
= r i<br />
= r i<br />
m<br />
= x<br />
= x<br />
= x<br />
= x<br />
s sα<br />
s sβ<br />
= r i<br />
= r i<br />
r rα<br />
r rβ<br />
i<br />
s sα<br />
i<br />
s sβ<br />
i<br />
r rα<br />
i<br />
r rβ<br />
1<br />
=<br />
T<br />
M<br />
+ T<br />
+ T<br />
+ T<br />
+ T<br />
N<br />
N<br />
N<br />
N<br />
+ x<br />
+ x<br />
+ x<br />
+ x<br />
dψ<br />
dt<br />
dψ<br />
dt<br />
i<br />
M rα<br />
i<br />
M rβ<br />
i<br />
M sα<br />
i<br />
M sβ<br />
[(<br />
ψ i −ψ<br />
i ) − m ]<br />
sα<br />
sβ<br />
sα<br />
sβ<br />
dt<br />
dψ<br />
dt<br />
dψ<br />
rα<br />
rβ<br />
+ ω ψ<br />
m<br />
−ω<br />
ψ<br />
m<br />
sβ<br />
sα<br />
rβ<br />
rα<br />
L<br />
(2.12)<br />
In the case of a cage rotor machine, we have additionally u r = 0 i.e. u rα = u rβ = 0.<br />
State variables could be chosen as follows:<br />
12
2. Mathematical description of induction motor<br />
13<br />
T<br />
m<br />
s<br />
s<br />
r<br />
r<br />
i<br />
i ]<br />
,<br />
,<br />
,<br />
,<br />
[ ω<br />
ψ<br />
ψ<br />
β<br />
α<br />
β<br />
α<br />
=<br />
x (2.13)<br />
then the above equations may be rewritten in the following manner:<br />
where<br />
r<br />
s<br />
M<br />
x<br />
x<br />
x 2<br />
= 1−<br />
σ (2.15)<br />
L<br />
s<br />
r<br />
s<br />
r<br />
r<br />
M<br />
m<br />
M<br />
s<br />
s<br />
s<br />
r<br />
s<br />
r<br />
M<br />
s<br />
r<br />
r<br />
r<br />
s<br />
r<br />
M<br />
r<br />
m<br />
r<br />
s<br />
M<br />
s<br />
N<br />
s<br />
s<br />
s<br />
r<br />
s<br />
r<br />
M<br />
s<br />
r<br />
r<br />
m<br />
r<br />
s<br />
M<br />
r<br />
r<br />
s<br />
r<br />
M<br />
s<br />
N<br />
s<br />
M<br />
r<br />
r<br />
r<br />
r<br />
r<br />
r<br />
m<br />
r<br />
N<br />
s<br />
M<br />
r<br />
r<br />
r<br />
m<br />
r<br />
r<br />
r<br />
r<br />
N<br />
m<br />
i<br />
i<br />
x<br />
x<br />
dt<br />
d<br />
T<br />
u<br />
x<br />
i<br />
x<br />
x<br />
r<br />
x<br />
r<br />
x<br />
x<br />
x<br />
r<br />
x<br />
x<br />
x<br />
x<br />
dt<br />
di<br />
T<br />
u<br />
x<br />
i<br />
x<br />
x<br />
r<br />
x<br />
r<br />
x<br />
x<br />
x<br />
x<br />
x<br />
x<br />
r<br />
x<br />
dt<br />
di<br />
T<br />
i<br />
x<br />
x<br />
r<br />
x<br />
r<br />
dt<br />
d<br />
T<br />
i<br />
x<br />
x<br />
r<br />
x<br />
r<br />
dt<br />
d<br />
T<br />
−<br />
−<br />
=<br />
+<br />
+<br />
−<br />
+<br />
+<br />
= −<br />
+<br />
+<br />
−<br />
+<br />
=<br />
+<br />
−<br />
=<br />
+<br />
−<br />
= −<br />
)<br />
(<br />
1<br />
1<br />
2<br />
2<br />
2<br />
2<br />
2<br />
2<br />
2<br />
2<br />
α<br />
β<br />
β<br />
α<br />
β<br />
β<br />
β<br />
α<br />
β<br />
α<br />
α<br />
β<br />
α<br />
α<br />
β<br />
β<br />
α<br />
β<br />
α<br />
β<br />
α<br />
α<br />
ψ<br />
ψ<br />
ω<br />
σ<br />
ο<br />
ψ<br />
σ<br />
ψ<br />
ω<br />
σ<br />
σ<br />
ο<br />
ψ<br />
ω<br />
σ<br />
ψ<br />
σ<br />
ψ<br />
ψ<br />
ω<br />
ψ<br />
ψ<br />
ω<br />
ψ<br />
ψ<br />
(2.14)
3. Basics of Artificial Neural Network (ANN)<br />
3. BASICS OF ARTIFICIAL NEURAL NETWORK (ANN)<br />
3.1. Introduction<br />
Recently parallel distributed processing such as Artificial Neural Networks (ANN)<br />
have received wide attentions in processing a complex data in very short time. ANN<br />
models are composed of many linear or nonlinear computational elements (neurons or<br />
nodes) operating in parallel. Parallelism, robustness, and learning ability are among<br />
the main features, which determined wide applications for ANN to control of<br />
industrial processes.<br />
This Chapter is intended to provide a general introduction to neural networks.<br />
Concepts of Artificial Neural Networks (ANN) are introduced, and their attributes are<br />
described. Many types of ANN exist and the configuration that are most applicable to<br />
the context of control problems are overviewed. The special interest from this point of<br />
view has Multilayer Neural Network (MNN) with backpropagation learning<br />
algorithm. Finally some structures of neuromorfic control will be presented.<br />
Artificial Neural Networks have several important characteristics, which are of<br />
interest to control engineers:<br />
• Modeling. Because of their ability to be trained using data records for the<br />
particular system of interest.<br />
• Nonlinear systems. The nonlinear networks have the ability to learn<br />
nonlinear relationship.<br />
• Multivariable systems. Artificial Neural Networks, by their nature, have<br />
many inputs and many outputs and so can be easy applied to multivariable<br />
systems.<br />
• Parallel structure. This feature implies very fast parallel processing, fault<br />
tolerance and robustness.<br />
14
3. Basics of Artificial Neural Network (ANN)<br />
The above features are the main reason for the interest, which is currently being<br />
concentrated in this field.<br />
3.2. Artificial neuron model<br />
The elementary computational elements, which create neural network, have many<br />
inputs and only one output. These elements are inspired by biological neurons systems<br />
and, therefore, are call neurons (or by analogy with directed graphs - nodes).<br />
Inputs Weights Output<br />
x 1<br />
w 1<br />
x 2<br />
w 2 Σ F<br />
y<br />
w 0<br />
w N<br />
x N Bias<br />
Fig. 3.1. Neuron model<br />
The individual inputs x j weighted by elements w j are summed to form the weighted<br />
output signal:<br />
e = ∑<br />
N<br />
w j⋅<br />
x j<br />
(3.1)<br />
j = 0<br />
and<br />
x 0 = 1<br />
(3.2)<br />
15
3. Basics of Artificial Neural Network (ANN)<br />
where elements w j , are called synapse weights, can be modified during the learning<br />
process.<br />
The output of the neuron unit is defined as follows:<br />
y = F(e) (3.3)<br />
Note, that w 0 - is adjustable bias and F – is activation function (also called transfer<br />
function). Thus, the output, y, is obtained by summing the weighted inputs and<br />
passing the results through a nonlinear (or linear) activation function F.<br />
The activation function F map, a weighted sum's e (possibly) infinite domain<br />
to a prespecified range. Although the number of F functions is possibly infinite, six<br />
types are regularly applied in the majority of ANN: linear, step, bipolar, sigmoid,<br />
hyperbolic tangent. With the exception of the linear F function, all of these functions<br />
introduce a nonlinearity in the network by bounding the output within a fixed range.<br />
In the next subsection some examples of commonly used activation functions are<br />
briefly presented.<br />
3.2.1. Activation functions<br />
The linear F function (Fig. 3.2) produces a linearly modulated output from the input e<br />
as described by equation<br />
F(e) = ξ e (3.3)<br />
F (e)<br />
F (e)<br />
1<br />
1<br />
0<br />
e<br />
0<br />
e<br />
-1<br />
-1<br />
-1 0 1<br />
-1 0 1<br />
Fig. 3.2. Linear activation function<br />
16
3. Basics of Artificial Neural Network (ANN)<br />
where e ranges over the real numbers and ξ is a positive scalar. If ξ = 1, it is<br />
equivalent to removing the F function completely. In this case:<br />
y = ∑<br />
N<br />
w j⋅<br />
x j<br />
(3.4)<br />
j = 0<br />
The step F function (Fig. 3.3a) produces only two, typically, a binary value in<br />
response to the sign of the input, emitting +1 if e is positive and 0 if it is not. This<br />
function can be described as:<br />
⎧1<br />
if e ≥ 0<br />
F (e) = ⎨<br />
(3.5)<br />
⎩0<br />
otherwise<br />
One small variation of Eq. 3.5 is the bipolar F function (see Fig. 3.3b)<br />
⎧1<br />
if e ≥ 0<br />
F (e) = ⎨<br />
(3.6)<br />
⎩-1<br />
otherwise<br />
which replaces the 0 output value with a~-1.<br />
F (e)<br />
a) b)<br />
F (e)<br />
1<br />
1<br />
0 0<br />
e<br />
e<br />
-1<br />
-1<br />
-1 0 1 -1 0 1<br />
Fig. 3.3. Step activation function<br />
The sigmoid F function is a continuous, bounded, monotonic, nondecreasing function<br />
that provides a graded, nonlinear response within a prespecified range. The most<br />
common function is the logistic function:<br />
17
3. Basics of Artificial Neural Network (ANN)<br />
1<br />
F (e) =<br />
(3.7)<br />
1+<br />
exp( −βe)<br />
where β > 0 (usually β=1), which provides an output value from 0 to 1.<br />
The alternative to the logistic sigmoid function is the hyperbolic tangent:<br />
F ( e) = tanh( βe)<br />
(3.8)<br />
which ranges from -1 to 1.<br />
3.3. ANN topologies<br />
In the biological brain, a large number of neurons are interconnected to form the<br />
network and perform advanced intelligent activities. Artificial Neural Network is built<br />
by neuron models and in most cases consists of neurons layers interconnected by<br />
weighted connections. The arrangement of the neurons, connections, and patterns into<br />
a neural network is referred to as a topology (or architecture).<br />
3.3.1. The layer of neurons<br />
Neural networks are organized into layers of neurons. Within a layer, neurons are<br />
similar in two respects:<br />
• the connection that feed the layer of neurons are from the same source;<br />
• the neurons in each layer utilize the same type of connections and activation F<br />
function.<br />
A one-layer network with N inputs and M neurons is shown in Fig. 3.4.<br />
18
3. Basics of Artificial Neural Network (ANN)<br />
Inputs Neuron Layer Outputs<br />
x 1<br />
Σ F<br />
x 2<br />
Σ F<br />
x N<br />
w 11<br />
w NM<br />
Σ F<br />
y 1<br />
y 2<br />
y M<br />
Fig. 3.4. One layer network<br />
In this topology, each element of the input vector X is connected to each<br />
neuron input through the weight matrix W. The sum of the appropriate weighted<br />
network inputs W*X is the argument of the activation F function. Finally, the neuron<br />
layer outputs form a column vector Y. Note, that it is common for the number of<br />
inputs to be different from the number of neurons, i.e. N ≠M.<br />
3.3.2. Linear filter<br />
For the linear activation F function, with ξ=1, the output of the neuron layer can be<br />
described by the following matrix equation:<br />
Y = W k X (3.9)<br />
where<br />
⎡w<br />
11 w21<br />
L wN1<br />
⎤<br />
W =<br />
⎢<br />
⎥<br />
k M M M<br />
(3.10)<br />
⎢<br />
⎥<br />
⎢⎣<br />
w1M<br />
w2M<br />
L wNM<br />
⎥⎦<br />
19
3. Basics of Artificial Neural Network (ANN)<br />
is the weight matrix.<br />
Such a simple network can recognize M different class of patterns. The matrix W k<br />
define linear transformation of the input signals X ∈ R N into output signals Y ∈ R M .<br />
This linear transformation can have an arbitrary form (for example Fourier transform).<br />
Therefore, such a network can be viewed as a linear filter.<br />
3.3.3. Multilayer Neural Networks (MNN)<br />
A neural network can have several layers. There are two types of connections applied<br />
in MNN:<br />
• Intralayer connections are connections between neurons in the same layer.<br />
• Interlayer connections are connections between neurons in different layers.<br />
It is possible to build ANN that consist of one, or both, types of connections.<br />
Organization of the MNN is classified largely into two types:<br />
• a feedforward network,<br />
• a feedback (also called recurrent) network.<br />
When the MNN has connections that feed information in only one direction (e.g.,<br />
input to output) without any feedback pathways in the network, it is a feedforward<br />
MNN. But if the network has any feedback paths, where feedback is defined as any<br />
path through the network that would allow the same neurons to be visited twice, then<br />
it is call a feedback MNN.<br />
An example of multilayer feedforward network is shown in Fig. 3.5.<br />
Each layer has a weight matrix W (l) k , a weighted input E (l) , and an output vector Y (l) ,<br />
where l is the layer number. The layers of a multilayer ANN play different roles.<br />
Layers whose output is the network output are called output layers. All other layers<br />
are called hidden layers. In many publications additional layer so called input layer is<br />
introduced. This layer consists of input vector to the whole MNN (in this layer input<br />
vector is equal to output vector).<br />
Note that the output of each layer is the input of the next one.<br />
20
3. Basics of Artificial Neural Network (ANN)<br />
Layer 1 Layer 2 Layer 3<br />
w 11<br />
1<br />
e 1 1<br />
y 1 1<br />
x 2<br />
e 1 e2<br />
2<br />
y 1 2 2<br />
Σ F<br />
2<br />
y<br />
2<br />
Σ F Σ<br />
e 3 2<br />
x 1 Σ F Σ F Σ<br />
e 3 1<br />
e 2 1<br />
y<br />
1<br />
2<br />
F<br />
F<br />
y 1<br />
3<br />
y 2<br />
3<br />
x N<br />
1<br />
w NM<br />
Σ<br />
e 1 M<br />
F<br />
y 1 M<br />
Σ<br />
e M<br />
2<br />
F<br />
y M<br />
2<br />
Σ<br />
e M<br />
3<br />
F<br />
y M<br />
3<br />
Fig. 3.5. Multilayer feedforward ANN.<br />
Feedback ANN has all possible connections between neurons. Some of the weight can<br />
be set to zero to create layers within the feedback network if that is desired. The<br />
feedback network are quite powerful because they are sequential rather than<br />
combinational like the feedforward networks. The output of such networks, because<br />
of the existing feedback, can either oscillate or converge.<br />
Finally we can note, that the Multilayer Linear Neural Network is equivalent to<br />
Neural Network with one layer. So, it is senseless to use linear ANN with multiple<br />
layers.<br />
3.4. Learning and training of ANN<br />
3.4.1. Introduction<br />
One of the most important qualities of ANN is their ability to learn. Learning is<br />
defined as a change of connection weight values that result in the capture of<br />
information that can later be recalled. Several algorithms are available for a learning<br />
process. Generally, the learning methods can be classified into two categories:<br />
supervised and unsupervized learning.<br />
21
3. Basics of Artificial Neural Network (ANN)<br />
Supervized learning is a process that incorporates an external teacher and (or) global<br />
information. The supervized learning algorithms include: error correction learning,<br />
reinforcement learning, stochastic learning, etc.<br />
Unsupervized learning, also referred to as self-organization, is a process that incorporates<br />
no external teacher and relies upon only local information during the entire<br />
learning process. Examples of unsupervized learning include: Hebbian learning,<br />
principal component learning, differential Hebbian learning, min-max learning and<br />
competitive learning.<br />
Most learning techniques utilize off-line learning. When the entire pattern set<br />
is used to condition the connections prior to the use of the network, it is called off-line<br />
learning. For example, the backpropagation training algorithm is used to adjust<br />
connections in multilayer feedforward ANN, but it requires thousands of cycles<br />
through all the pattern pairs until the desired performance of the network is achieved.<br />
Once the network is performing adequately, the weight are stored and the resulting<br />
network is used in recall mode thereafter. Off-line learning systems have the inherent<br />
requirement that all the patterns have to be resident for training.<br />
Not all networks perform off-line learning . Some networks can add new information<br />
"on the fly" nondestructively. If a new pattern needs to be incorporated into the<br />
network's connections, it can be done immediately without any loss of prior stored<br />
information. The advantage of off-line learning networks is that they usually provide<br />
superior solutions in difficult problems such as nonlinear classification, but on-line<br />
learning allows ANN to learn during the system operation.<br />
In this Section only the supervized learning algorithms based on error<br />
correction for feedforward ANN will be described. This is because in control systems<br />
mostly the feedforward ANN are applied.<br />
3.4.2. Learning algorithms for feedforward neural networks<br />
In the 1986 Rumelheart et. al. proposed a learning algorithm with the teacher of the<br />
feedforward ANN to solve this problem by multilayering using a back-propagation<br />
algorithm [149]. The back-propagation is a generalization of the Least Mean Squares<br />
(LMS) algorithm. In this algorithm, an error function is defined and equal to the mean<br />
22
3. Basics of Artificial Neural Network (ANN)<br />
square difference between the desired output and the actual output of the feedforward<br />
ANN. In order to minimize this error function, the backpropagation algorithm uses a<br />
gradient search technique.<br />
3.4.2.1. The Widrow-Hoff (standard delta) learning rule<br />
Learning rule for one linear neuron<br />
Let us consider the simplest case of ANN. It means, that the Neural Network consists<br />
of one linear neuron with N inputs. We will study supervized learning process of this<br />
network. So, it is convenient to introduce so-called teaching sequence. We can define<br />
this sequence as follows:<br />
T<br />
( 1) (1) (2) (2) ( P)<br />
( P)<br />
= {{ X , z },{ X , z }, K ,{ X , z }} (3.11)<br />
( j)<br />
( j)<br />
where each element { X , z }, consists of input vector X in the j-th step of learning<br />
process, and appropriate desired output signal z.<br />
In order to show the learning algorithm, we define the error function as:<br />
Q =<br />
1<br />
2<br />
P<br />
( j)<br />
( j)<br />
2<br />
∑(<br />
z − y )<br />
j=<br />
1<br />
(3.12)<br />
We can rewrite this equation in the following form:<br />
Q =<br />
P<br />
( j)<br />
∑Q<br />
j=<br />
1<br />
(3.13)<br />
where:<br />
23
3. Basics of Artificial Neural Network (ANN)<br />
( j)<br />
Q<br />
1 ( j)<br />
( ) 2<br />
= ( z − y<br />
j )<br />
(3.14)<br />
2<br />
Since Q is a function of W, the minimum of Q can be found by using the gradient<br />
descent method:<br />
wi<br />
= −<br />
∂Q<br />
∂wi<br />
∆ η (3.15)<br />
where η - is proportionality constant called learning rate.<br />
For the j-th step of the learning process we can obtain:<br />
( j+<br />
1) ( j)<br />
wi<br />
− wi<br />
= ∆wi<br />
( j)<br />
∂Q<br />
= −η (3.16)<br />
∂wi<br />
and using the chain rule:<br />
( j)<br />
∂Q<br />
∂wi<br />
( j)<br />
∂Q<br />
=<br />
( j)<br />
∂y<br />
( j)<br />
∂y<br />
∂wi<br />
(3.17)<br />
The first part shows the error changes in the j-th step of the learning process with the<br />
output of the neuron and the second parts how much changing w i changes that output.<br />
From Eq. 3.14 is:<br />
( j)<br />
∂Q<br />
( j)<br />
∂y<br />
( j)<br />
( j)<br />
= −(<br />
z − y )<br />
= −δ<br />
( j)<br />
(3.18)<br />
Since the linear network output is defined as:<br />
N<br />
( j)<br />
( j)<br />
( j)<br />
y = ∑wk<br />
⋅ xk<br />
k = 1<br />
(3.19)<br />
24
3. Basics of Artificial Neural Network (ANN)<br />
than<br />
( j)<br />
∂y<br />
∂w<br />
i<br />
= x<br />
( j)<br />
(3.20)<br />
Substituting Eq. 3.18 and Eq. 3.20 back into Eq. 3.17 one obtains<br />
( j)<br />
∂Q<br />
( j)<br />
( j)<br />
− = δ ⋅ x<br />
(3.21)<br />
∂wi<br />
Thus, the rule for changing weights Eq. 3.16 is given by:<br />
( j)<br />
( j)<br />
( j)<br />
∆wi<br />
= ηδ ⋅ xi<br />
(3.22)<br />
or in vector form:<br />
( j)<br />
( j)<br />
( j)<br />
∆ = ηδ ⋅<br />
(3.23)<br />
W<br />
X<br />
Finally, the algorithm for new values of the weight vector W can be written as:<br />
W<br />
( j+<br />
1) ( j)<br />
( j)<br />
( j)<br />
= + ηδ ⋅<br />
(3.24)<br />
W<br />
X<br />
Learning rule for linear ANN<br />
In the case of the linear ANN with M outputs and N inputs, we can introduce the<br />
learning algorithm by results generalization of the previous paragraph. In this<br />
paragraph the teaching sequence is define as follows:<br />
( 1) (1) (2) (2) ( P)<br />
( P)<br />
T = {{ X , Z },{ X , Z }, K,{<br />
X , Z }} (3.25)<br />
25
3. Basics of Artificial Neural Network (ANN)<br />
( j)<br />
( j)<br />
where each element { X , Z } consists of input vector X in the j-th step of learning<br />
process, and appropriate desired output vector Z.<br />
One can obtain on the analogy of Eq. 6.24 the following learning algorithm:<br />
W<br />
( j+<br />
1) ( j)<br />
(j) ( j)<br />
( j)<br />
T<br />
k<br />
= Wk<br />
+ η ( Z − Y ) ⋅(<br />
X )<br />
(3.26)<br />
One can define error vector:<br />
D<br />
( j)<br />
(j) ( j)<br />
= Z − Y<br />
(3.27)<br />
this vector consists of the following elements:<br />
( j)<br />
( j)<br />
( j)<br />
( j)<br />
T<br />
D = [ δ1<br />
, δ<br />
2<br />
, K,<br />
δ<br />
M<br />
]<br />
(3.28)<br />
where<br />
( j)<br />
( j)<br />
( j)<br />
δ<br />
i<br />
= zi<br />
− yi<br />
(3.29)<br />
is the difference between desired and actual i-th output in the j-th step of learning<br />
process.<br />
Finally substituting Eq. 3.27 to Eq. 3.26, the algorithm for new values of the weight<br />
vector W can be rewritten as:<br />
W<br />
( j+<br />
1) ( j)<br />
(j) ( j)<br />
T<br />
k<br />
= Wk<br />
+ η D ⋅(<br />
X )<br />
(3.30)<br />
where:<br />
• Y (j) - network output vector M × 1 in the j-th step of learning process,<br />
• Z (j) - target vector M × 1 in the j-th step of learning process,<br />
• X (j) - input vector N × 1 in the j-th step of learning process,<br />
26
3. Basics of Artificial Neural Network (ANN)<br />
• D (j) - error vector M × 1 in the j-th step of learning process,<br />
( j 1) ( j)<br />
• W + k<br />
, Wk<br />
- weights matrix M × N in the j+1-th and j-th step of learning<br />
process,<br />
• N - number of neurons,<br />
• M - number of inputs,<br />
• P - number of learning steps,<br />
• η - learning rate.<br />
The algorithm given by Eq. 3.30 is called the Widrow-Hoff learning rule [149]. Also,<br />
because the amount of learning is proportional to the difference D (j) - or delta -<br />
between the target and actual network output, the algorithm is often called the<br />
standard delta rule [149].<br />
The delta rule is the basis for most applied learning algorithms. As shown the standard<br />
delta rule essentially implements gradient descent in a sum-squared error for linear<br />
functions. In this case, without hidden layers, the error surface is shaped like a bowl<br />
with only one minimum, so that the gradient descent is guaranteed to find the best set<br />
of weights with hidden layers, however, it is not so obvious how to compute the<br />
derivatives, and the error surface is not concave upward, so there is the danger of<br />
getting stuck in local minima. Note, that the same algorithm (Eq. 3.32) one can use to<br />
adapt weights in single layer perceptron with nonlinearity described by Eq. 6.6 or<br />
Eq. 6.5.<br />
Acceleration of the learning process<br />
The algorithm described by Eq. 3.30 is a generalization of the Least Mean Squares<br />
(LMS) algorithm using gradient search technique. In this case the learning process is<br />
convergent, but this convergence is very slowly. However, we can have an effect on<br />
the some features of the learning algorithm to improve learning convergence:<br />
• Selection of the initial value of the weight matrix<br />
(1)<br />
W<br />
k . In the most cases, one can<br />
assume that the initial values of this matrix should be selected at random and<br />
27
3. Basics of Artificial Neural Network (ANN)<br />
rather small. Very important condition is to avoid the same values of any pairs of<br />
elements, i.e.<br />
• Selection of the learning rate coefficient η. It is possible to change this value<br />
during the time of the learning process. But in the many applications, it is enough<br />
to assume a typical constant value of η = 0.6.<br />
• Modification of the standard delta rule algorithm. One can improve the learning<br />
process by adding the additional term to Eq. 3.30 proportional to momentum.<br />
Momentum is defined by:<br />
( j)<br />
( j)<br />
( j−1)<br />
M = Wk<br />
− Wk<br />
(3.31)<br />
Thus, the algorithm for new values of the weight vector can be written as:<br />
( j+<br />
1)<br />
k<br />
( j)<br />
k<br />
( j)<br />
T<br />
W = W + η D ⋅(<br />
X ) + µ M<br />
(j)<br />
( j)<br />
(3.32)<br />
The good results of the learning process are obtained with η = 0.9 and µ = 0.6.<br />
3.4.2.2. The generalized delta learning rule - backpropagation<br />
Generalized delta rule has been developed for learning the layered feedforward ANN<br />
with hidden layers [149]. In the first paragraph, we will derive a learning formula for<br />
one nonlinear neuron using the consideration described in the previous section. In the<br />
second paragraph, the actual generalized delta learning rule will be derived.<br />
Learning rule for one nonlinear neuron<br />
In the case of one nonlinear neuron the output in the j-th step can be expressed as:<br />
( j)<br />
( j)<br />
y = F(<br />
e )<br />
(3.33)<br />
28
3. Basics of Artificial Neural Network (ANN)<br />
where<br />
(j)<br />
e<br />
= ∑<br />
N ( j)<br />
( j)<br />
w<br />
i<br />
⋅ x<br />
i<br />
i = 0<br />
(3.34)<br />
and F(.) is activation function.<br />
We can use sigmoidal activation F function, which is continuous, nondecreasing and<br />
differentiable function.<br />
The derivative in Eq. 3.16 is product of two parts:<br />
∂<br />
( j)<br />
Q<br />
∂wi<br />
∂<br />
=<br />
∂<br />
( j)<br />
Q<br />
( j)<br />
e<br />
( j)<br />
e<br />
wi<br />
∂<br />
∂<br />
(3.35)<br />
From Eq. 3.34 we see that the second factor is:<br />
( j)<br />
∂e<br />
∂wi<br />
=<br />
∂<br />
∂<br />
wi<br />
N<br />
∑wk<br />
xk<br />
k =1<br />
= xi<br />
(3.36)<br />
The first part of Eq. 3.35 can be written as:<br />
( j)<br />
( j)<br />
( j)<br />
( j)<br />
∂Q<br />
∂Q<br />
∂y<br />
δ = − = −<br />
(3.37)<br />
( j)<br />
( j)<br />
( j)<br />
∂e<br />
∂y<br />
∂e<br />
By Eq. 3.33 we see that<br />
( j)<br />
∂y<br />
( j)<br />
∂e<br />
=<br />
d<br />
de<br />
F(<br />
e)<br />
(3.38)<br />
is derivative of the activation function. In case of the sigmoid function this derivative<br />
is very easy to calculate:<br />
29
3. Basics of Artificial Neural Network (ANN)<br />
d<br />
de<br />
( j)<br />
( j)<br />
F(<br />
e)<br />
= y (1 − y )<br />
(3.39)<br />
The first factor in Eq. 3.37 we can calculate as:<br />
( j)<br />
∂Q<br />
( j)<br />
∂y<br />
( j)<br />
( j)<br />
= −(<br />
z − y )<br />
(3.40)<br />
and substituting for the two factors in Eq. 3.37 we get:<br />
( j)<br />
( j)<br />
( j)<br />
d<br />
δ = ( z − y ) ⋅ F(<br />
e)<br />
(3.41)<br />
de<br />
Finally Eq. 3.41 and Eq. 3.22 give us the description of the algorithm in the form:<br />
( j+<br />
1) ( j)<br />
( j)<br />
( j)<br />
dF(<br />
e)<br />
( j)<br />
wi<br />
= wi<br />
+ η ( z − y ) ⋅ xi<br />
(3.42)<br />
de<br />
For the sigmoid activation function, we can rewrite Eq. 3.42 using Eq. 3.39 as:<br />
w<br />
( j+<br />
1)<br />
i<br />
= w<br />
( j)<br />
i<br />
+<br />
( j)<br />
( j)<br />
( j)<br />
( j)<br />
( j)<br />
η ( z − y )(1 − y ) y xi<br />
(3.43)<br />
Learning rule for nonlinear multilayer ANN<br />
In the case of the nonlinear ANN with M outputs and N inputs, we can introduce the<br />
learning algorithm by results generalization of the previous paragraph. For the output<br />
layer this generalization is very simple:<br />
( j+<br />
1)( L)<br />
( j)(<br />
L)<br />
( j)<br />
( j)<br />
dF(<br />
e)<br />
( j)(<br />
L)<br />
wim<br />
= wim<br />
+ η ( zm<br />
− ym<br />
) xi<br />
(3.44)<br />
de<br />
30
3. Basics of Artificial Neural Network (ANN)<br />
where L is the output layer number,<br />
the desired and actual output, respectively.<br />
For the hidden layer l we use the chain rule to write:<br />
( j)<br />
( j)<br />
z m , y m are m-th components in the j-th step of<br />
( j)<br />
∂Q<br />
( j)(<br />
l)<br />
∂ym<br />
( j)<br />
( j)(<br />
l)<br />
∂Q<br />
∂e<br />
=<br />
k<br />
∑<br />
=<br />
( j)(<br />
l)<br />
( j)(<br />
l)<br />
k ∂e<br />
∂y<br />
k m<br />
( j)<br />
∂Q<br />
∂ ( j)(<br />
l + 1) ( j)(<br />
l + 1)<br />
∑ ( )( ) ( )( ) ∑wik<br />
y =<br />
j l j l<br />
i<br />
k ∂ek<br />
∂ym<br />
i<br />
( j)<br />
∂Q<br />
( j)(<br />
l + 1) ( j)(<br />
l + 1) ( j)(<br />
l + 1)<br />
∑ w = −<br />
( j)(<br />
l)<br />
mk ∑δ<br />
k wmk<br />
k ∂ek<br />
k<br />
(3.45)<br />
In this case, substituting for the two parts in Eq. 3.37 yields:<br />
( j)(<br />
l)<br />
dF( e)<br />
( j)(<br />
l + 1) ( j)(<br />
l + 1)<br />
δ m = ∑δ<br />
k w<br />
de<br />
mk<br />
(3.46)<br />
k<br />
Using Eq. 3.46, one can obtain the algorithm to adapt weights in the hidden layer l in<br />
the j-th step:<br />
w<br />
( j+<br />
1)( l)<br />
( j)(<br />
l)<br />
( j)(<br />
l)<br />
( j)(<br />
l)<br />
im<br />
= wim<br />
+ ηδ m xim<br />
(3.47)<br />
( j)(<br />
l)<br />
where δ m one can calculate from Eq. 3.46.<br />
Equations Eq. 3.44 and Eq. 3.46, Eq. 3.47 give an recursive algorithm for computing<br />
the weights of the MNN. This algorithm is known as generalized delta rule [149].<br />
Note, that in this case we can use the same improvements like in linear ANN (for<br />
instance learning with momentum).<br />
31
3. Basics of Artificial Neural Network (ANN)<br />
3.4.2.3. The back-propagation training algorithm<br />
The application of the generalized delta rule involves four phases:<br />
(1) - presentation phase: present an input training vector and calculate<br />
each layer's output until the last layer's output is found.<br />
(2) - check phase: calculate the network error vector and the sum squared<br />
error Q (j) for the input vector. Stop if the sum of squared error for all P<br />
training vectors (Eq. 3.12, Eq. 3.13, Eq. 3.14) is less than the specified<br />
value or your specified maximum number of epoch has been reached.<br />
Otherwise continue calculations.<br />
(3) - backpropagation phase: calculate delta vectors for the output layer<br />
using the target vector, then backpropagate the delta vector to<br />
proceeding layers Eq. 3.46.<br />
(4) - learning phase: calculate each layer's new weight matrix, then return<br />
to first phase.<br />
The above given training algorithm is commonly known as error backpropagation<br />
[143, 149].<br />
3.5. Structures of Neuromorphic Controllers<br />
3.5.1. Introduction<br />
The recent efforts in applying neural networks to control of dynamics processes<br />
resulted in the new field of neurocontrol, which can be considered as a nonconventional<br />
branch of adaptive control theory. The attractively of neurocontrol for engineers<br />
can be explained by three following reasons:<br />
32
3. Basics of Artificial Neural Network (ANN)<br />
(1) biological nervous systems are living examples of intelligent adaptive<br />
controllers,<br />
(2) ANN are essentially adaptive systems able to learn how to perform<br />
complex tasks,<br />
(3) neurocontrol techniques are believed to be able to overcome many<br />
difficulties that conventional adaptive techniques suffer when dealing<br />
with nonlinear plants or plants with unknown structure.<br />
Although several ANN architectures have been applied to process control, most of the<br />
actual neurocontrol literature concentrates on multi layer neural networks (MNN).<br />
This is because of the following basic reasons:<br />
• MNN's are essentially feedforward structures in which the information<br />
flows forward, from the inputs to the outputs, through hidden layers. This<br />
characteristic is very convenient for control engineers, used to work with<br />
systems represented by blocks with inputs and outputs clearly defined and<br />
separated,<br />
• MNN's with a minimum of one hidden layer using arbitrary sigmoidal<br />
activation functions are able to perform any nonlinear mapping between<br />
two finite - dimensional spaces to any desired degree of accuracy,<br />
provided there are enough number of hidden neurons. In other words,<br />
MNN's are versatile mappings of arbitrary precision. In control, usually<br />
many of the blocks involved in the control system can be viewed as<br />
mappings and, therefore, can be emulated by MNN's with inputs and<br />
outputs properly defined.<br />
• The basic algorithm for learning in MNN's, the back propagation<br />
algorithm, belongs to the class of gradient methods largely applied in<br />
optimal control, and is, therefore, familiar to control engineers.<br />
33
3. Basics of Artificial Neural Network (ANN)<br />
In this Chapter the main structures of neural controllers (also called neuromorphic<br />
controllers) (NC), i.e., controllers based on an ANN structure, will be described.<br />
3.5.2. Inverse control<br />
The principle of the inverse neurocontroller is shown in Fig. 3.6. The neural network<br />
MNN learn the inverse dynamic of the plant f -1 (u) by using an appropriate training<br />
signal (Fig. 3.6a). When training is performed the ANN's weight are fixed and the<br />
network is used as a feedforward neural controller before the plant (Fig. 3.6b) to<br />
compensate for the plant nonlinearity f(u).<br />
a)<br />
y r<br />
MNN<br />
u<br />
Plant<br />
f(u)<br />
y<br />
TRAINING SIGNAL<br />
b)<br />
y r<br />
NC<br />
f -1 (u)<br />
u<br />
Plant<br />
f(u)<br />
y<br />
Fig. 3.6. Principle of inverse control: a) training phase;<br />
b) feedforward neural controller<br />
The controller's training signal in Fig. 3.6a provides information needed for the NC to<br />
learn the inverse dynamics of the plant in such a way that an error function J of the<br />
plant output error e = y r - y is minimized. Bellow, three controller's training<br />
configurations are briefly presented.<br />
34
3. Basics of Artificial Neural Network (ANN)<br />
3.5.2.1. Direct inverse control (off-line)<br />
The inverse model is built up as shown in Fig. 3.7. and the plant output y for the<br />
known input u is used for input to the MNN to obtain network output u c . The learning<br />
process of MNN is carried out to minimize the overall error e 2 between u and u c .<br />
Therefore, this method is also called general learning architecture [143].<br />
a)<br />
u<br />
Plant<br />
f(u)<br />
y<br />
NC<br />
u c<br />
-<br />
+<br />
e<br />
b)<br />
y r<br />
P<br />
CONTROLLER<br />
u<br />
Plant<br />
f(u)<br />
y<br />
NC<br />
u c<br />
-<br />
+<br />
Fig. 3.7. Direct inverse control architectures:<br />
a) open loop training; b) closed loop training<br />
e<br />
The success of this method depends largely on the ability of the ANN to generalize or<br />
learn to respond correctly to inputs that were not specifically used in the training<br />
phase. In this architecture is not possible to train the system to respond correctly in<br />
regions of interest because it is normally not known which plant inputs correspond to<br />
35
3. Basics of Artificial Neural Network (ANN)<br />
the desired outputs. Some improvement can be achieved by using closed loop training<br />
architecture (Fig. 3.7b) [146].<br />
3.5.2.2. Direct adaptive control (on-line)<br />
To overcome the general training problems, the ANN learns during on-line<br />
feedforward control (Fig. 3.8) [143]. In this method, the NC can be trained in regions<br />
of interest only since the reference value is the input signal for the ANN. The ANN is<br />
trained to find out the plant output that derives the system output y to the reference<br />
value y r . The weights of the ANN are adjusted so that the error between the actual<br />
system output and the reference value is maximal decreased in every iteration step.<br />
y r<br />
NC<br />
u<br />
Plant<br />
f(u)<br />
y<br />
e<br />
+<br />
-<br />
Fig. 3.8. Direct adaptive control<br />
In this method, the dynamic model of the plant can be regarded as an additional layer.<br />
Consequently, it is necessary to use some prior information such as the sensitive<br />
derivatives or the Jacobian of the system in order to apply the back propagation<br />
algorithm. The problem of direct inverse control is that since the ANN controls the<br />
system directly by itself, the controlled system may be unstable at the first stage on<br />
learning. Therefore, it is necessary to prepare the initial value of the weights for the<br />
ANN in the controller, which may be acquired by prior off-line learning as supervized<br />
control, in order to avoid instability.<br />
36
3. Basics of Artificial Neural Network (ANN)<br />
3.5.2.3. Feedback error training<br />
In this method (Fig. 3.9.), the ANN is used as a feedforward controller NC and trained<br />
by using the output of a feedback controller P as error signal.<br />
NC<br />
+<br />
y r<br />
-<br />
e<br />
P<br />
CONTROLLER<br />
+<br />
+<br />
u<br />
Plant<br />
f(u)<br />
y<br />
Fig. 3.9. Feedback error learning configuration.<br />
The problem of their feedback error learning as indirect inverse control is that they<br />
used a priori knowledge as input to the ANN to handle dynamics. There are problems<br />
with such knowledge in that the assumption is that plant dynamics are unknown.<br />
3.5.2.4. Indirect adaptive control<br />
Although in many practical cases the sensitive derivatives or the Jacobian of the<br />
system can be easly estimated or replaced +1 or -1, that is the signum of the<br />
derivative, this is not the general case. In the indirect adaptive control scheme shown<br />
in Fig. 3.10., a ANN based plant emulator NE is used to compute the sensivity of the<br />
error function J with respect to the controller's output. Since NE is a MNN, the<br />
desired sensivity can be easly calculated by using back propagation algorithm.<br />
Furthermore, the configuration in Fig. 3.10. useful when the inverse of the plant is ill<br />
defined, i.e., the function f does not admit a true inverse.<br />
37
3. Basics of Artificial Neural Network (ANN)<br />
+<br />
e c<br />
-<br />
NE<br />
-<br />
e e<br />
y r<br />
NC<br />
u<br />
Plant<br />
f(u)<br />
+<br />
y<br />
Fig. 3.10. Indirect adaptive control<br />
The NE should be off-line trained with a data set sufficiently rich to allow plant<br />
identification, and then both the NC and NE are on-line trained. In a sense, the NE<br />
performs system identification and, therefore, for rapidly changing systems, it is<br />
preferred to update the NE more often than the NC.<br />
3.5.3. Adaptive neurocontrol<br />
In this subsection two configurations of adaptive controllers based on ANN's will be<br />
presented. In Fig. 3.11. the structure of a neural self tuning regulator (STR) is shown.<br />
NI<br />
IDENTIFIER<br />
-<br />
e e<br />
y r<br />
ADAPTIVE<br />
CONTROLLER<br />
u<br />
Plant<br />
f(u)<br />
+<br />
y<br />
Fig. 3.11. Neuro self tuning regulator (STR)<br />
38
3. Basics of Artificial Neural Network (ANN)<br />
The ANN is used to identify system parameters (NI) and tune the conventional<br />
controller. In Fig. 3.12., in turn, a neural model reference adaptive control (MRAC)<br />
system is presented.<br />
NC<br />
+<br />
e c<br />
-<br />
NE<br />
e e<br />
-<br />
y r<br />
NC<br />
u<br />
Plant<br />
f(u)<br />
+<br />
y<br />
Fig. 3.12. Example of neural MRAC system<br />
In this structure both the controller NC and identifier NI use neural networks. The<br />
overall system error e c between model reference y m and system outputs y is applied for<br />
NC tuning, while error e i adjusts the neural network identifier NI.<br />
39
4. ANN based Current Controllers (CC)<br />
4 ANN BASED CURRENT CONTROLLERS (CC)<br />
4.1 Introduction<br />
Current Control (CC) technique of the Voltage Source (VS) Pulse Width Modulated<br />
(PWM) inverters is the key problem in such high performance applications as: AC motor<br />
drives and motion controllers, AC power supplies and active power filters. A review of<br />
current control methods for VS-PWM inverters is presented by Kazmierkowski and<br />
Dzieniakowski [129]. Recently, for current control the neural network (NN) approach has<br />
been applied [111, 110, 115, 117]. Among the main advantages of the NN controllers are<br />
fast signal processing, learning and generalisation abilities, robustness and insensitivity to<br />
the load parameter changes.<br />
The first NN current controller, based on off line trained (by back propagation<br />
algorithm) three layer NN, has been proposed by Harashima et. al. [115] and it has<br />
performance similar to delta modulators[117].<br />
In this chapter the improvements of Harashima NN controller by application of a new<br />
sampling technique and other learning technique is presented. This work shows as<br />
well how the same properties can be achieved using instead of three layer a single<br />
layer perceptron NN with precalculated weights. As results the time consuming<br />
training procedure is eliminated.<br />
In the second part the multilayer NN controller trained off-line by a model PWM pattern<br />
generated using Optimal Current Controller (OC) is investigated. To overcome noise<br />
problem in signal processing instead of EMF voltage, the flux and synchronous frequency<br />
signals are applied as the NN inputs. It is shown that three layers (5-10-10-3 architecture)<br />
feedforward NN controller has the best performance in this class of controllers.<br />
The basic block scheme of the three phase VSI with PWM current control is shown in<br />
Fig. 4.1.<br />
By comparing the command i Ac<br />
(i Bc<br />
, i Cc<br />
) and measured i A<br />
(i B<br />
, i C<br />
) values of the phase<br />
currents, the Current Controller generates the command states S A<br />
, S B<br />
, S C<br />
. for inverter<br />
switching devices.<br />
40
4. ANN based Current Controllers (CC)<br />
U d<br />
i A c<br />
i B c<br />
i C c<br />
ε A<br />
ε B<br />
ε C<br />
PWM<br />
Current<br />
Regulator<br />
S A<br />
S B<br />
S C<br />
Voltage<br />
Sourced<br />
Inverter<br />
3 ph.<br />
Load<br />
i A<br />
i B<br />
i C<br />
Fig. 4.1. Basic block scheme of the VSI PWM current control<br />
4.2 Basics of Current Control (CC) in Three-Phase PWM Voltage<br />
Source (VS) Converters<br />
4.2.1 General Requirements and Performance Criteria<br />
The accuracy of CC can be evaluated with reference to basic requirements, valid in<br />
general, and to specific requirements, typical of some group of application.<br />
General requirements of a CC are:<br />
- no phase and amplitude errors (ideal tracking) in wide output frequency range,<br />
- fast response to provide high dynamic of the system,<br />
- limited or constant switching frequency to guarantee safe operation of converter<br />
semi-conductor power devices,<br />
- good DC-link voltage utilization.<br />
The specific requirements for the most important applications can be summarized as<br />
follows.<br />
- VS PWM inverters:<br />
AC motor control:<br />
wide range of output frequency, variable AC side voltage (motor EMF), high<br />
dynamic, decoupled x-y field oriented control structure, operation in PWM/square<br />
wave transient region<br />
41
4. ANN based Current Controllers (CC)<br />
AC power supply/UPS:<br />
narrow range of output frequency (UPS), reduced harmonic content (output filter),<br />
fault protection.<br />
- VS PWM line rectifiers and active filters:<br />
constant AC side (line power) frequency 50/60Hz nearly constant amplitude and<br />
waveform of AC side voltage, poorly damped AC side network, variable DC link<br />
voltage (power filter).<br />
The evaluation of CC may be done according to performance criteria which<br />
include static and dynamic performance. Table 4.1 presents the static criteria in two<br />
groups:<br />
- those valid also for open loop voltage PWM (see e.g. [1,8,9,16])<br />
- those specific for CC-PWM converters based on current error definition (denoted •).<br />
The following parameters of the CC system dynamic response can be considered:<br />
dead time, settling time, rise time, time of the first maximum and overshoot factor.<br />
The foregoing features result both from the PWM process and from the response of<br />
the control loop. For example, for dead time the major contributions arise from signal<br />
processing (conversion and calculation times), and may be appreciable especially if<br />
the control is of the digital type.<br />
Table 4.1<br />
Performance Criteria<br />
CRITERIA DEFINITION<br />
RMS = [1/T∫(ε α<br />
2 + εβ 2 )dt] 1/2<br />
J = 1/T∫[(ε α<br />
2 + εβ 2 )] 1/2 dt<br />
N = Σ imp⎪t ∈ 〈0,T〉<br />
I hrms = [1/T∫(i (t) - i 1(t) ) 2 dt] 1/2<br />
COMMENTS<br />
the r.m.s. vector error<br />
the vector error integral<br />
number of switchings<br />
(also for nonperiodical)<br />
the r.m.s harmonic current<br />
d = I hrms / I hrms six-step the distortion factor<br />
d = [Σ h 2 i (k⋅f1 )] 1/2 k≠1 synchronised PWM case<br />
d = [∫ h d<br />
2 (f) df] 1/2 f≠f 1<br />
nonsynchronised PWM case<br />
h i (k⋅f 1 )- discrete current spectra<br />
h d (f) - density current spectra<br />
42
4. ANN based Current Controllers (CC)<br />
On the other hand, rise time is mainly affected by the AC side inductances of the<br />
converter. The optimization of the dynamic response usually requires a compromise,<br />
which depends on the specific needs. This may also influence the choice of the CC<br />
technique according to the application considered.<br />
In general, the compromise is easier as the switching frequency increases. Thus,<br />
with the speed improvement of today's switching components (e.g. IGBT's), the<br />
peculiar advantages of different methods lose importance and even the simplest one<br />
may be adequate. Nevertheless, for some applications with specific needs, like active<br />
filters, which require very fast response, or high power inverters where the<br />
commutations must be minimized, the most suitable CC technique must be selected.<br />
4.2.2 Nonlinear Current Controllers<br />
A. Hard Switched Converters<br />
1) Hysteresis Current Controllers<br />
Hysteresis control schemes are based on a nonlinear feedback loop with two-level<br />
hysteresis comparators (Fig. 4.2a) [61]. The switching signals S A ,S B ,S C are produced<br />
directly when the error exceeds an assigned tolerance band h (Fig. 4.2b).<br />
U DC<br />
i Ac<br />
i Bc +<br />
i Cc<br />
+ -<br />
+ -<br />
-<br />
S A<br />
S B<br />
S C<br />
i A<br />
i B<br />
i C<br />
Three-phase<br />
Load<br />
β<br />
B<br />
state 1<br />
Hysteresis<br />
band<br />
state 0<br />
A<br />
500<br />
N<br />
250<br />
(a)<br />
a<br />
b<br />
c<br />
i S<br />
C<br />
-h<br />
+h<br />
α<br />
0 0 ms<br />
40<br />
(b)<br />
(c)<br />
Fig. 4.2. Two-level hysteresis controller: block scheme (a), switching trajectory (b) Number of inverter<br />
switchings N (c) for: a) three two-level hysteresis comparators, b) three-level comparatos and lookup table<br />
working in stationary and c) rotating coordinates<br />
43
4. ANN based Current Controllers (CC)<br />
Variable switching frequency controllers<br />
Among the main advantages of hysteresis CC are: simplicity, outstanding<br />
robustness, lack of tracking errors, independence of load parameter changes, and<br />
extremely good dynamics limited only by switching speed and load time constant.<br />
However, this class of schemes, also known as free-running hysteresis controllers<br />
[16], has the following disadvantages:<br />
- the converter switching frequency depends largely on the load parameters and varies<br />
with the AC voltage,<br />
- the operation is somewhat rough due to the inherent randomness caused by the<br />
limit cycle; therefore, protection of the converter is difficult [56].<br />
It is characteristic of the hysteresis CC that the instantaneous current is kept exact in a<br />
tolerance band except for systems without neutral leaders where the instantaneous<br />
error can reach double the value of the hysteresis band [3,54]. This is due to the<br />
interaction in the system with three independent controllers. The change of<br />
comparator state in one-phase influences the voltage applied to the load in two other<br />
phases (coupling). However, if all three current errors are considered as space vectors<br />
[60], the interaction effect can be compensated, and many variants of controllers<br />
known as space vector based, can be created [41,48,50,58, 63,68]. Moreover, if threelevel<br />
comparators with a look-up table are used, a considerable decrease in the<br />
inverter switching frequency can be achieved [37,48,50,58,63]. This is possible<br />
thanks to appropriate selection of zero voltage vectors [48] (Fig.4.2c).<br />
In the synchronous rotating d-q coordinates, the error field is rectangular and the controller<br />
offers the opportunity of independent harmonic selection by choosing different<br />
hysteresis values for the d and q components [49,62]. This can be used for torque<br />
ripple minimisation in vector controlled AC motor drives (the hysteresis band for the<br />
torque current component is set narrower than that for flux current component).<br />
Constant average switching frequency controllers<br />
A number of proposals have been put forward to overcome variable switching<br />
frequency. The tolerance band amplitude can be varied, according to the AC side<br />
voltage [39,43,47,53-55,57,59,69,103], or by means of a PLL control (Fig.8).<br />
An approach which eliminates the interference, and its consequences, is that of<br />
decoupling error signals by subtracting an interference signal derived from the mean<br />
inverter voltage u N (Fig.4.3) [54]. Similar results are obtained in the case of<br />
44
4. ANN based Current Controllers (CC)<br />
"discontinuous switching" operation, where decoupling is more easily obtained<br />
without estimating load impedance [55]. Once decoupled, regular operation is<br />
obtained and phase commutations may (but need not) be easily synchronized to a<br />
clock.<br />
to other<br />
phases<br />
i c<br />
i<br />
δ′′<br />
δ′ ′<br />
+ δ -<br />
δ′<br />
-<br />
+<br />
Load<br />
Impedance<br />
Simulator<br />
-1<br />
R + pL<br />
Hysteresis<br />
control<br />
β<br />
LP<br />
Filter<br />
S<br />
S<br />
+<br />
+<br />
+<br />
+<br />
+<br />
Upper<br />
PD<br />
Lower<br />
PD<br />
from other<br />
phases<br />
r<br />
r<br />
Driver<br />
Switching<br />
frequency<br />
refrence<br />
Fig. 4.3. Decoupled, constant average switching frequency hysteresis controller [54]<br />
Although the constant switching frequency scheme is more complex and the main<br />
advantage of the basic hysteresis control - namely the simplicity - is lost, these<br />
solutions guarantee very fast response together with limited tracking error. Thus,<br />
constant frequency hysteresis controls are well suited for high-performance, high<br />
speed applications.<br />
2) Controllers with On Line Optimization<br />
This class of controllers performs a real time optimization algorithm and requires<br />
complex on-line calculations, which usually can be implemented only on<br />
microprocessors.<br />
Minimum switching frequency predictive algorithm<br />
The concept of this algorithm [92] is based on space vector analysis of hysteresis<br />
controllers. The boundary delimiting the current error area in the case of independent<br />
controllers with equal tolerance band +h in each of three phases makes a regular<br />
symmetrical hexagon (Fig. 4.2b).<br />
Suppose only one hysteresis controller is used - the one acting on the current error<br />
vector. In such a case, the boundary of the error area (also called the switching or<br />
error curve) might have any form (Fig. 4.4b). The location of the error curve is<br />
determined by the current command vector i sc . When the current vector i s reaches a<br />
45
4. ANN based Current Controllers (CC)<br />
point on the error curve, seven different trajectories of the current are predicted, one<br />
for each of seven possible (six active and zero) inverter output voltage vectors.<br />
Finally, based on the optimisation procedure, the voltage vector which minimises the<br />
mean inverter switching frequency is selected (Fig. 4.4c). For fast transient states the<br />
strategy which minimises the response time is applied.<br />
U DC<br />
i sc<br />
T<br />
+<br />
- -<br />
i s<br />
e<br />
Calculation of<br />
voltage<br />
command<br />
vector<br />
u sc<br />
PWM<br />
modulator<br />
Load<br />
model<br />
(a)<br />
Three-phase<br />
Load<br />
q<br />
ω s<br />
i s<br />
(t,u k<br />
)<br />
Error<br />
area<br />
Actual<br />
trajectory<br />
i s<br />
(t 0<br />
,t k<br />
)<br />
i sc<br />
i s<br />
(t 0<br />
)<br />
Ψ r<br />
d<br />
(b)<br />
i sc<br />
+<br />
Sampling Error<br />
time area<br />
T<br />
Prediction of<br />
the current<br />
- vector<br />
i s trajectory<br />
e<br />
PWM<br />
modulator<br />
Load<br />
model<br />
U DC<br />
Three-phase<br />
Load<br />
(c)<br />
Fig 4.4. Predictive current controllers: Linear constant switching frequency controller (a),<br />
an example of error area (b), Minimum switching frequency controller (c)<br />
46
4. ANN based Current Controllers (CC)<br />
Control with field orientation<br />
The minimum frequency predictive CC can be implemented in any rotating or stationary<br />
coordinates. Like the three level hysteresis controller working in d-q field oriented<br />
coordinates [49], a further switching frequency reduction can be achieved by the<br />
selection of a rectangular error curve with higher length along rotor flux direction [96].<br />
In practice, the time needed for the prediction and optimisation procedures limits the<br />
achieved switching frequency. Therefore, in more recently developed algorithms, a reduced<br />
set of voltage vectors consisting of the two active vectors adjacent to the EMF<br />
vector and the zero voltage vector are considered for optimisation without loss of<br />
quality [8].<br />
Trajectory tracking control<br />
This approach, proposed in [89,90], combines an off-line optimized PWM pattern for<br />
steady state operation with an on-line optimization to compensate for the dynamic<br />
tracking errors of converter currents. Such a strategy achieves very good stationary<br />
and dynamic behaviour even for low switching frequencies.<br />
B) Soft Switched Resonant DC Link (RDCL) Converters<br />
In soft switched RDCL three-phase converters with Zero Voltage Switching (ZVS),<br />
the commutation process is restricted to the discrete time instants T when the DC link<br />
voltage pulses are zero (Fig.2b). Therefore, special techniques called Delta<br />
Modulation (DM) or Pulse Density Modulation (PDM) are used [70-82].<br />
1) Delta Modulation (DM)<br />
The basic scheme, the Delta Modulation-Current Controller (DM-CC) [74,82], is<br />
shown in Fig. 4.5a. It looks quite similar to that of a hysteresis CC (Fig. 4.2a), but the<br />
operating principle is quite different. In fact, only the error sign is detected by the comparators,<br />
whose outputs are sampled at a fixed rate so that the inverter status is kept<br />
constant during each sampling interval. Thus, no PWM is performed; only basic voltage<br />
vectors can be generated by the converter for a fixed time. This mode of operation gives<br />
a discretization of the inverter output voltage, unlike the continuous variation of output<br />
voltages which is a particular feature of PWM. One effect of the discretization is that,<br />
when synthesizing periodic waveforms, a non-negligible amount of sub-harmonics is<br />
generated [74,76,77]. Thus, to obtain comparable results, a DM should switch at a<br />
frequency about seven times higher than a PWM modulator [76]. However, DM is very<br />
simple and insensitive to the load parameters. When applied to three-phase inverters<br />
with an insulated-neutral load, the mutual phase interference and the increased degree<br />
47
4. ANN based Current Controllers (CC)<br />
of freedom in the choice of voltage vector must be taken into account. Therefore,<br />
instead of performing independent DM in each phase control, output vectors are chosen<br />
depending not only on the error vector, but also on the previous status, so that the zero<br />
vector states become possible [73]. Due to the S&H block applied after the ideal<br />
comparator, the switching frequency is limited to the sampling frequency f s . The<br />
amplitude of the current harmonics is not constant but is determined by the load<br />
parameters, DC-link voltage, AC side voltage and sampling frequency.<br />
S H A<br />
S H B<br />
S H C<br />
U D C<br />
i A c<br />
+ -<br />
i B c<br />
i C c<br />
+<br />
+ -<br />
-<br />
S & H<br />
i A<br />
S A<br />
S B<br />
S C<br />
i B<br />
i C<br />
(a)<br />
T h ree-p h ase<br />
L o ad<br />
SH A<br />
Conventional<br />
sampling<br />
SH A<br />
Shifted<br />
sampling<br />
SH B<br />
SH B<br />
SH C<br />
SH C<br />
(b)<br />
(c)<br />
Fig. 4.5. Delta modulation current controller: basic scheme (a), sampling techniques (b)<br />
quality factors (c)<br />
48
4. ANN based Current Controllers (CC)<br />
If the sampling signal in the three-phase system is shifted 120° in each S&H block<br />
(Fig.4.5b), only one of the inverter legs will change its state during the sample period<br />
1/f s . This guarantees only adjacent and zero voltage vector selection, and<br />
consequently a better quality of current waveform (lower RMS, J) at this same<br />
sampling frequency f s (Fig.4.5c) [71]. It is noted that the DM-CC can also be applied<br />
in the space vector based controllers working in either stationary or rotating<br />
coordinates [75,79,81]. The main advantages of DM-CC are extremely simple and<br />
tuning-free hardware implementation, and good dynamics.<br />
2) Optimal discrete modulation algorithm<br />
For the RDCL converters an optimal algorithm selects the voltage vector which<br />
minimizes the RMS current error for each resonant pulse [80,93,106].<br />
U s<br />
Synch.<br />
RDCL<br />
i sc<br />
+<br />
- -<br />
i s<br />
T<br />
e<br />
Calculation<br />
of voltage<br />
referen<br />
vector<br />
Voltage<br />
vector<br />
Load<br />
model<br />
Three-phase<br />
Load<br />
Fig. 4.6. Optimal (mode) discrete modulation controller for RDCL<br />
As shown in [106] this is equivalent to selecting the nearest available voltage vector<br />
commands u sc (T). So, instead of the PWM algorithm (Fig.4.4a) only the voltage<br />
vector selector is required (Fig.4.6). However, errors and subharmonics typical of the<br />
discrete modulation are obtained.<br />
4.2.3 Linear Current Controllers<br />
The linear controllers operate with conventional voltage type PWM modulators [21-<br />
36]. In contrast to the nonlinear controllers (see Section 4.2.2), linear controller<br />
schemes have clearly separated current error compensation and voltage modulation<br />
parts. This concept allows us to exploit the advantages of open loop modulators<br />
(sinusoidal PWM, space vector modulator, optimal PWM) which are: constant<br />
49
4. ANN based Current Controllers (CC)<br />
switching frequency, well-defined harmonic spectrum, optimum switch pattern and<br />
DC link utilisation. Also, full independent design of the overall control structure as<br />
well as open loop testing of the inverter and load can be easily performed. In the<br />
linear group, the following controllers are described: PI stationary and synchronous,<br />
state feedback, predictive with constant switching frequency.<br />
A. Stationary controller PI<br />
The Stationary Controller, also called the Ramp Comparison Current Controller,<br />
uses three PI error compensators to produce the voltage commands u Ac ,u Bc , u Cc for a<br />
three-phase sinusoidal PWM (Fig.4.7) [5].<br />
i Ac +<br />
i Bc + -<br />
i Cc + -<br />
-<br />
Carrier<br />
u Ac<br />
u Bc<br />
u Cc<br />
S A<br />
S B<br />
S C<br />
U DC<br />
i A<br />
i B<br />
i C<br />
Three-phase<br />
Load<br />
Fig. 4.7. Linear current controller: stationary PI<br />
In keeping with the principle of sinusoidal PWM, comparison with the triangular<br />
carrier signal generates control signals S A<br />
,S B<br />
, S C<br />
for the inverter switches. Although<br />
this controller is directly derived from the original triangular suboscillation PWM<br />
[19], the behaviour is quite different, because the output current ripple is fed back and<br />
influences the switching times. The integral part of the PI compensator minimizes<br />
errors at low frequency, while proportional gain and zero placement are related to the<br />
amount of ripple. The maximum slope of the command voltage u Ac (u Bc , u Cc ) should<br />
never exceed the triangle slope. Additional problems may arise from multiple crossing<br />
of triangular boundaries. As a consequence, the controller performance is satisfactory<br />
only if the significant harmonics of current commands and the load EMF are limited<br />
at a frequency well below the carrier (less than 1/9 [4]). The main disadvantage of this<br />
technique is an inherent tracking (amplitude and phase) error. To achieve<br />
50
4. ANN based Current Controllers (CC)<br />
compensation, use of additional PLL circuits [24] or feedforward correction [29, 38]<br />
is also made.<br />
B. Synchronous Vector Controller (PI)<br />
In many industrial applications an ideally impressed current is required, because<br />
even small phase or amplitude errors causes incorrect system operation (e.g. vector<br />
controlled AC motors). In such cases the control schemes based on space vector<br />
approach are applied. Fig. 4.8a illustrates the Synchronous Controller, which uses two<br />
PI compensators of current vector components defined in rotating synchronous<br />
coordinates d-q [5,12,14,31,32,35]. Thanks to the coordinate transformations, i sd and<br />
i sq are dc-components, and PI compensators reduce the errors of the fundamental<br />
component to zero.<br />
i sdc +<br />
+<br />
-<br />
Current<br />
regulator<br />
PI<br />
-<br />
PI<br />
Coordinate<br />
transformation<br />
dq<br />
αβ<br />
αβ<br />
ABC<br />
sin γ s<br />
i sqc<br />
i sq<br />
(a)<br />
PWM<br />
modulator<br />
U DC<br />
i sd<br />
dq<br />
αβ<br />
cos γ s<br />
αβ<br />
ABC<br />
i A<br />
iB<br />
i C<br />
Three-phase<br />
Load<br />
i α<br />
i αc + -<br />
ω c<br />
K1<br />
K2<br />
i βc<br />
+ + u βc<br />
+ K2<br />
- + + i α<br />
i K1 β<br />
i β<br />
+<br />
+<br />
+<br />
+ u αc<br />
αβ<br />
(b)<br />
ABC<br />
αβ<br />
PWM<br />
modulator<br />
ABC<br />
i A<br />
iB<br />
i C<br />
U DC<br />
Three-phase<br />
Load<br />
Fig. 4.8. Synchronous PI current controllers: (a) working in rotating coordinates with<br />
DC components, (b) working in stationary coordinates with AC components<br />
51
4. ANN based Current Controllers (CC)<br />
Based on work [34] (where it has been demonstrated that is possible to perform<br />
current vector control in an arbitrary coordinates), a synchronous controller working<br />
in the stationary coordinates α-β with ac components has been presented [33]. As<br />
shown in Fig.4.8b by the dashed line, the inner loop of the control system (consisting<br />
of two integrators and multipliers) is a variable frequency generator, which always<br />
produces reference voltages uαc , u βc for the PWM modulator, even when in the<br />
steady state the current error signals are zero.<br />
In general, thanks to the use of PWM modulators, the linear controllers make a well<br />
defined harmonic spectrum available, but their dynamic properties are inferior to<br />
those of bang-bang controllers.<br />
C. State Feedback Controller<br />
The conventional PI compensators in the current error compensation part can be<br />
replaced by a state feedback controller working in stationary [29] or synchronous<br />
rotating coordinates [13,25,27,28,30].<br />
Feedforward<br />
K f<br />
K d<br />
Disturbance<br />
U DC<br />
i sc<br />
+<br />
-<br />
K 2<br />
u sc<br />
PWM<br />
modulator<br />
Integral part<br />
K 1<br />
State<br />
feedback<br />
i s<br />
Three-phase<br />
Load<br />
Fig. 4.9. State feedback Current controller<br />
The controller of Fig. 4.9 works in synchronous rotating coordinates d-q and is synthesised<br />
on the basis of linear multivariable state feedback theory. A feedback gain<br />
matrix K=[K 1 ,K 2 ] is derived by utilising the pole assignment technique to guarantee<br />
sufficient damping. While with integral part (K 2 ) the static error can be reduced to<br />
zero, the transient error may be unacceptably large. Therefore, feedforward signals for<br />
the reference (K f ) and disturbance (K d ) inputs are added to the feedback control law.<br />
52
4. ANN based Current Controllers (CC)<br />
Because the control algorithm guarantees the dynamically correct compensation for<br />
the EMF voltage, the performances of the state feedback controller are superior to<br />
conventional PI controllers [27,28].<br />
D. Predictive and Dead Beat Controllers<br />
This technique predicts at the beginning of each sampling (modulation) period the<br />
current error vector on the basis of the actual error and of the AC side (load)<br />
parameters R,L,E. The voltage vector to be generated by PWM during the next<br />
modulation period is thus determinated so as to minimize the forecast error<br />
[60,102,105,107-109].<br />
Hybrid CC combining predictive and hystersis techniques have also been proposed<br />
[99].<br />
1) Constant switching frequency predictive algorithm<br />
In this case the predictive algorithm calculates the voltage vector commands u sc (T)<br />
once every sample period T. This will force the current vector according to its<br />
command i sc (Fig. 4.4c). The inverter voltage u s (T) and EMF voltage e(T) of the load<br />
is assumed to be constant over the sample period T. The calculated voltage vector<br />
u sc (T) is then implemented in the PWM modulator algorithm, e.g. space vector<br />
[60,86,100,102] or sinusoidal modulator [107,108]. Note that while the current ripple<br />
is variable, the inverter switching frequency is fixed (1/T). The disadvantage of this<br />
algorithm is that it does not guarantee the inverter peak current limit.<br />
2) Dead Beat Controllers<br />
When the choice of the voltage vector is made in order to null the error at the end of<br />
the sample period, the predictive controller is often called a dead beat controller<br />
[85,94,95,97]. Among the additional information given to the controller, nonavailable<br />
state variables (e.g. flux, speed) can be included. Their determination can require the<br />
use of observers or other control blocks, which often may be shared with the control<br />
of the entire scheme, as in case of AC drives [83,97].<br />
53
4. ANN based Current Controllers<br />
4.3. Off-line trained neural comparator<br />
4.3.1. Introduction<br />
In this section the application of off-line trained ANN working as a comparator in<br />
current control loop of the PWM inverter will be presented. This idea has been<br />
published by Harashima et al [115]. In this section this idea will be developed and<br />
extended. In the first part, the configuration presented is the same as in [115] and a<br />
block scheme of this system is shown. In the second part, in contrast to the previous<br />
approach, we will introduce controller working in α-β coordinates. Finally simulation<br />
results will be presented, and comparative study with delta modulator and hysteresis<br />
comparators will be carried out. The new solutions based on the perceptron will be<br />
presented as well, and will be shown, that such a simple NN is enough to implement<br />
the Delta Regulator.<br />
4.3.2. NN controller in three phase ABC coordinates<br />
4.3.2.1. Current control scheme<br />
Harashima et. al. [115] have proposed NN regulator (Fig. 4.10b) which should have<br />
similar input-output relation to that of the hysteresis comparator (Fig. 4.10a).<br />
The three layer (3-5-3 architecture) feedforward NN has been trained according to the<br />
rules given in the Table 4.2 using back propagation algorithm [149].<br />
After learning process, when the errors between the desired output and the actual NN<br />
output were less than 1%, the NN has been applied as current regulator. However, for<br />
the three phase symmetrical load (without zero leader) the sum of the instantaneous<br />
current errors is always zero:<br />
ε A<br />
+ ε B<br />
+ ε C<br />
= 0<br />
54
4. ANN based Current Controllers<br />
a)<br />
ε A<br />
K<br />
S A<br />
ε B<br />
K<br />
S B<br />
ε C<br />
K<br />
S C<br />
SH<br />
b)<br />
ε A<br />
K<br />
S A<br />
ε B<br />
K<br />
S B<br />
ε C<br />
K<br />
S C<br />
SH<br />
c)<br />
ε A<br />
K<br />
S&H<br />
S A<br />
ε B<br />
K<br />
S&H<br />
S B<br />
ε C<br />
K<br />
S&H<br />
S C<br />
SH<br />
Fig. 4.10. Current regulators for three phase PWM inverters:<br />
(a) three hysteresis comparators, (b) three layer feedforward NN regulator [6],<br />
(c) Delta modulation Regulator (DR)<br />
55
4. ANN based Current Controllers<br />
Table 4.2<br />
Learning table for three input ANN<br />
INPUT OUTPUT VECTOR<br />
ε A<br />
ε B<br />
ε C<br />
V(S A<br />
,S B<br />
,S C<br />
)<br />
1 δ δ δ V 7<br />
(1,1,1) *<br />
2 -δ δ δ V 4<br />
(0,1,1)<br />
3 δ -δ δ V 6<br />
(1,0,1)<br />
4 δ δ -δ V 2<br />
(1,1,0)<br />
5 δ -δ -δ V 1<br />
(1,0,0)<br />
6 -δ δ -δ V 3<br />
(0,1,0)<br />
7 -δ -δ δ V 5<br />
(0,0,1)<br />
8 -δ -δ -δ V 0<br />
(0,0,0) *<br />
Therefore, the current errors have never the same signs and NN regulator trained<br />
according to the rules given in Table 4.2 cannot select inverter zero vectors V 0<br />
(000)<br />
and V 7<br />
(111).<br />
As a result, the NN regulator operates rather more similar to Delta Regulator (DR)<br />
than to hysteresis comparator (see oscilogram presented in Fig. 4.11)<br />
4.3.2.2. Learning rules<br />
The performance of the NN regulator depends strong on the applied learning method.<br />
In the previous Sections we discussed the NN regulator trained according to the rules<br />
given in Table 4.2. This rules guarantee that NN learn "static" type of the input-output<br />
relation and parameter δ determinate the accuracy around error zero crossing point.<br />
However, other method can be applied in which a "PWM time pattern" generated by<br />
model system (i.e. hysteresis or Delta Regulator) is used for NN learning . In this case<br />
NN can be trained with different Number of Data Points (NDP). In Table II the result<br />
of the comparison of two learning rules for the same Number of learning steps (NLS)<br />
is presented.<br />
56
4. ANN based Current Controllers<br />
Hysteresis Regulator (a)<br />
NN Regulator (b)<br />
Fig. 4.11 Simulated waveforms for current regulators (δ= 0.05)<br />
I - i α<br />
, i β<br />
, II - u β<br />
, III - u α<br />
= f(u β<br />
) , IV -voltage vectors<br />
57
4. ANN based Current Controllers<br />
Table 4.3<br />
Comparison of the learning rules<br />
learning rules<br />
Table 4.2<br />
learning rules<br />
PWM pattern<br />
δ 0.001 0.01 0.1 ⎯ ⎯<br />
NDP ⎯ ⎯ ⎯ 150 450<br />
PSE 87% 87% 72% 94% 92%<br />
NDP - number of data points; NLS - number of learning steps (NLS = 100000); PSE<br />
- pattern selection efficiency factor.<br />
The Number of Learning Steps (NLS) is assumed constant = hundred thousand. It can<br />
be seen that Pattern Selection Efficiency factor<br />
Number of correct pattern selection<br />
PSE =<br />
,<br />
Total number of pattern selection<br />
which shows how often the NN generates the "correct voltage vector", is better for<br />
NN trained according to the rules given by "PWM time pattern" than by the rules<br />
given in Table 4.2. However, the learning method according to rules given in<br />
Table 4.2 is independent of system parameters and, therefore, is much simpler for<br />
implementation.<br />
4.3.2.3. Improved Neural Network Current Regulator<br />
The discussion and results presented in the previous Section show that the NN<br />
regulator proposed by Harashima has performance similar to that of Delta Regulator<br />
(Fig. 4.10b). From the other side it is known that Delta Regulator never selects the<br />
zero voltage vectors. This leads to poor quality of the output current generation and<br />
creates ±1 transition of the DC voltage. These transitions (corresponds to the<br />
switching between not adjacent vectors i.e. V 1<br />
→V 3<br />
, etc.) cause voltage stress on the<br />
inverter devices, and, instantaneous reversal in DC link current. Also, as a result of<br />
58
4. ANN based Current Controllers<br />
not going to zero vector the Pulse Polarity Consistency Rules (PPCR) is violated. To<br />
eliminate these disadvantages and force the NN regulator to select zero vectors and<br />
only adjacent active vectors a modified sampling technique is proposed (Fig. 4.12.).<br />
a)<br />
ε A<br />
K<br />
S&H<br />
S A<br />
ε B<br />
K<br />
S&H<br />
S B<br />
ε C<br />
K<br />
S&H<br />
S C<br />
b)<br />
SH A SH B<br />
SH<br />
C<br />
Fig. 4.12. Improved NN regulator : a) block scheme, b) modified sampling technique<br />
When the sign of the NN outputs signals are sampled not at the same instant but with<br />
a phase shift (Fig. 4.12b) i.e.2π/3, the regulator output signals S A<br />
,S B<br />
,S C<br />
can have the<br />
same values. The inverter under such control operates as shown in Table 4.4. and<br />
illustrates in Fig. 4.14.<br />
59
4. ANN based Current Controllers<br />
Table 4.4<br />
Voltage Vector Selection<br />
For Improved NN Regulator<br />
, , ,<br />
, ,<br />
,<br />
,<br />
,<br />
,<br />
Fig. 4.13. Operation of the improved NN regulator from<br />
Note that in contrast to conventional sampling case (Fig. 4.11b), the improved NN<br />
regulator selects systematically the zero voltage vectors and always chooses adjacent<br />
active vectors (see voltage vector time sequence and switching trajectory in α-β<br />
coordinates Fig. 4.14b).<br />
60
4. ANN based Current Controllers<br />
(a) Delta Regulator<br />
(b) Improved NN Regulator<br />
Fig. 4.14. Simulated waveforms for current regulators<br />
I - i α<br />
, i β<br />
, II - u β<br />
, III - u α<br />
= f(u β<br />
), IV - voltage vectors<br />
61
4. ANN based Current Controllers<br />
The voltage vector state can be changed in the proposed method three times during<br />
the sampling period, whereas in conventional approach only once. It means<br />
increasing of the internal switching frequency, but the total number of switching in<br />
period (and the mean switching frequency) does not change. Therefore, the harmonic<br />
performance of this regulator is superior to the conventional NN since the zero vector<br />
is being used to avoid ±1 transitions.<br />
This regulator, however, cannot guarantee conformance to the PPCR because the<br />
precise point in time where the line to line voltage fundamental crosses zero cannot<br />
be estimated without the knowledge of the counter EMF.<br />
4.3.2.4. Comparison with three hysteresis controllers<br />
As has been suggested in [115] the input-output relation of three teaching signal is<br />
similar to that of the hysteresis comparator with hysteresis width of δ. Note, that<br />
introduction of such a similarity is false. The reasons of this conclusion is as follows:<br />
• The feedforward ANN presented in this Section cannot implements<br />
characteristic with hysteresis, because the system presented is without<br />
memory;<br />
• If the system is with symmetrical load, it does not choose zero vectors (i.e.<br />
vector number 0 and 7), in spite of this, that we teach system such states.<br />
The reason is, that it is not possible to obtain all values of error positive or<br />
negative, because the sum of these errors has to be zero. So, this situation<br />
is different as compared to hysteresis comparators;<br />
• δ in Table 4.2 has no correlation with width of the hysteresis;<br />
• The system presented is similar to delta modulator<br />
In the next subsection ANN controller in α-β coordinates is introduced. The<br />
considerations described in this subsection are explained and developed.<br />
62
4. ANN based Current Controllers<br />
4.3.3. NN controller in α−β coordinates<br />
4.3.3.1. Current control scheme<br />
The block diagram of an off-line trained ANN based current control has two inputs<br />
and three outputs. This scheme is similar to the scheme presented in Fig. 4.10b<br />
The differences between reference and actual currents for α (i αref -i α ) and β (i βref -i β )<br />
components are delivered to the blocks with gain factor K. The output signals of the<br />
K-blocks are inputs to the ANN. So, the inputs to the ANN are amplified current<br />
errors in α−β coordinates. The ANN output signals, in turn, after digitization in<br />
comparator blocks generates the inverter control signals S A , S B , S C .<br />
4.3.3.2. Off-line training<br />
The three-layer feedforward ANN with sigmoidal nonlinearities is trained by using<br />
back propagation algorithm according to the rules given in Table 4.5.<br />
Table 4.5<br />
Learning table for two inputs ANN<br />
INPUT OUTPUT VECTOR<br />
ε α ε β V(S A<br />
,S B<br />
,S C<br />
)<br />
1 1<br />
− δ 3 V 5<br />
(0,0,1) *<br />
− δ<br />
2 2<br />
2 -δ 0 V 4<br />
(0,1,1)<br />
3<br />
4<br />
1<br />
− δ 3 V 3<br />
(0,1,0)<br />
δ<br />
2 2<br />
1<br />
δ<br />
2<br />
−<br />
3<br />
δ<br />
2<br />
V 6<br />
(1,0,1)<br />
5 δ 0 V 1<br />
(1,0,0)<br />
6<br />
1<br />
δ<br />
2<br />
3 δ<br />
V (1,1,0)<br />
2<br />
2<br />
63
4. ANN based Current Controllers<br />
As training signals for the ANN the random generated inputs chosen from the Table<br />
4.6 were applied.<br />
Note that the same results can be obtained in a system described in previous<br />
subsection after recalculating in α-β coordinates. Therefore, in fact, in this both cases,<br />
the systems are approximations of delta modulator scheme.<br />
4.3.4. Results<br />
4.3.4.1. Comparison ANN with classical delta modulator and three hysteresis<br />
controllers<br />
The trained ANN is used in the PWM inverter current control loop. Furthermore, the<br />
systems presented in Fig 4.10a and Fig 4.10c are used for comparison with ANN<br />
controllers. The simulated oscillograms of actual currents, phase voltages errors and<br />
quality indexes in two neural network systems and two delta modulators and with<br />
hysteresis controller are presented in Fig. 4.15-Fig. 4.27 respectively<br />
4.3.4.2. Quality indexes in ANN, classical delta modulator and three hysteresis<br />
controllers<br />
To compare two ANN controllers and delta modulator and hysteresis systems a<br />
different quality factors are considered (see Table 4.1):<br />
• Nrs − the number of switching in a period;<br />
• the integral vector error J.<br />
•<br />
In Table 4.6. quality factors in two ANN, delta modulation and hysteresis controllers<br />
systems are presented. It can be seen, that there are no significant differences between<br />
results obtained using ANN algorithms and Delta Regulator. Otherwise the hysteresis<br />
system is different compared to three remaining ones.<br />
64
4. ANN based Current Controllers<br />
Table 4.6<br />
Frequency<br />
Regulator 5 Hz 25 Hz 50 Hz<br />
J NRS J NRS J NRS<br />
ANN regulator 0.0737 4522 0.0753 886 0.0739 425<br />
ANN modified 0.0579 4472 0.0582 883 0.0593 424<br />
Delta Regulator 0.0652 4518 0.0658 890 0.0667 431<br />
DR modified. 0.0538 4513 0.0550 889 0.0554 427<br />
Hysteresis Regulator 0.0667 2125 0.0660 430 0.0646 197<br />
65
4. ANN based Current Controllers<br />
Fig. 4.15. Behaviour of Neural Network current regulator for f = 50 Hz<br />
a) i α , i β = f(t) , b) i β = f(i α ) , c) u β = f(t) , d) u β = f(u α ) ,<br />
e) number of voltage vector = f(t) , f) RMS, J = f(t) , g) ε 2 α = f( t) , h) NRS = f(t)<br />
66
4. ANN based Current Controllers<br />
Fig. 4.16. Behaviour of Delta current regulator for f = 50 Hz<br />
a) i α , i β = f(t) , b) i β = f(i α ) , c) u β = f(t) , d) u β = f(u α ) ,<br />
e) number of voltage vector = f(t) , f) RMS, J = f(t) , g) ε 2 α = f( t) , h) NRS = f(t)<br />
67
4. ANN based Current Controllers<br />
Fig. 4.17. Behaviour of hysteresis current regulator for f = 50 Hz<br />
a) i α , i β = f(t) , b) i β = f(i α ) , c) u β = f(t) , d) u β = f(u α ) ,<br />
e) number of voltage vector = f(t) , f) RMS, J = f(t) , g) ε 2 α = f( t) , h) NRS = f(t)<br />
68
4. ANN based Current Controllers<br />
Fig. 4.18. Behaviour of modified Neural Network current regulator for f = 50 Hz<br />
a) i α , i β = f(t) , b) i β = f(i α ) , c) u β = f(t) , d) u β = f(u α ) ,<br />
e) number of voltage vector = f(t) , f) RMS, J = f(t) , g) ε 2 α = f( t) , h) NRS = f(t)<br />
69
4. ANN based Current Controllers<br />
Fig. 4.19. Behaviour of modified Delta current regulator for f = 50 Hz<br />
a) i α , i β = f(t) , b) i β = f(i α ) , c) u β = f(t) , d) u β = f(u α ) ,<br />
e) number of voltage vector = f(t) , f) RMS, J = f(t) , g) ε 2 α = f( t) , h) NRS = f(t)<br />
70
4. ANN based Current Controllers<br />
Fig. 4.20. Behaviour of Neural Network current regulator f = 25 Hz<br />
a) i α , i β = f(t) , b) i β = f(i α ) , c) u β = f(t) , d) u β = f(u α ) ,<br />
e) number of voltage vector = f(t) , f) RMS, J = f(t) , g) ε 2 α = f( t) , h) NRS = f(t)<br />
71
4. ANN based Current Controllers<br />
Fig. 4.21. Behaviour of Delta current regulator for f = 25 Hz<br />
a) i α , i β = f(t) , b) i β = f(i α ) , c) u β = f(t) , d) u β = f(u α ) ,<br />
e) number of voltage vector = f(t) , f) RMS, J = f(t) , g) ε 2 α = f( t) , h) NRS = f(t)<br />
72
4. ANN based Current Controllers<br />
Fig. 4.22. Behaviour of hysteresis current regulator for f = 25 Hz<br />
a) i α , i β = f(t) , b) i β = f(i α ) , c) u β = f(t) , d) u β = f(u α ) ,<br />
e) number of voltage vector = f(t) , f) RMS, J = f(t) , g) ε 2 α = f( t) , h) NRS = f(t)<br />
73
4. ANN based Current Controllers<br />
Fig. 4.23. Behaviour of modified Neural Network current regulator for f = 25 Hz<br />
a) i α , i β = f(t) , b) i β = f(i α ) , c) u β = f(t) , d) u β = f(u α ) ,<br />
e) number of voltage vector = f(t) , f) RMS, J = f(t) , g) ε 2 α = f( t) , h) NRS = f(t)<br />
74
4. ANN based Current Controllers<br />
Fig. 4.24. Behaviour of modified Delta current regulator for f = 25 Hz<br />
a) i α , i β = f(t) , b) i β = f(i α ) , c) u β = f(t) , d) u β = f(u α ) ,<br />
e) number of voltage vector = f(t) , f) RMS, J = f(t) , g) ε 2 α = f( t) , h) NRS = f(t)<br />
75
4. ANN based Current Controllers<br />
Fig. 4.25. Behaviour of Neural Network current regulator f = 5 Hz<br />
a) i α , i β = f(t) , b) i β = f(i α ) , c) u β = f(t) , d) u β = f(u α ) ,<br />
e) number of voltage vector = f(t) , f) RMS, J = f(t) , g) ε 2 α = f( t) , h) NRS = f(t)<br />
76
4. ANN based Current Controllers<br />
Fig. 4.26. Behaviour of Delta current regulator for f = 5 Hz<br />
a) i α , i β = f(t) , b) i β = f(i α ) , c) u β = f(t) , d) u β = f(u α ) ,<br />
e) number of voltage vector = f(t) , f) RMS, J = f(t) , g) ε 2 α = f( t) , h) NRS = f(t)<br />
77
4. ANN based Current Controllers<br />
Fig. 4.27. Behaviour of hysteresis current regulator for f = 5 Hz<br />
a) i α , i β = f(t) , b) i β = f(i α ) , c) u β = f(t) , d) u β = f(u α ) ,<br />
e) number of voltage vector = f(t) , f) RMS, J = f(t) , g) ε 2 α = f( t) , h) NRS = f(t)<br />
78
4. ANN based Current Controllers<br />
4.3.5. Current Controller based on single layer perceptron model<br />
4.3.5.1. Block scheme<br />
The configuration of the proposed NN discrete current controller is shown in<br />
Fig. 4.28a. In this very simple case the three inputs-three outputs, single layer NN<br />
with hard nonlinearity activation functions (ideal comparators) corresponds to the<br />
architecture known as perceptron [145].<br />
When compare with Delta modulation discrete controller (Fig. 4.28b), the proposed<br />
NN controller include additionally to w A , w B , w C weighted phase error connections,<br />
only w AB , w AC ,..., w CB weighted interphase connections. These typical for NN<br />
interphase connections, however, have decided influence on the controller operation<br />
and robustness.<br />
4.3.5.2. Selection of NN weights<br />
On the basis of the Fig. 4.28a the following equation describing NN inputs - outputs<br />
relations can be obtain:<br />
e A = w A ⋅ε A + w BA ⋅ε B + w CA ⋅ε C ,<br />
e B = w AB ⋅ε A + w B ⋅ε B + w CB ⋅ε C ,<br />
e C = w AC ⋅ε A + w BC ⋅ε B + w C ⋅ε C ,<br />
(4.1a)<br />
(4.1b)<br />
(4.1c)<br />
where:<br />
ε A , ε B , ε C<br />
- instantaneous line current errors in phases A, B, C, respectively<br />
w A , w B , w C<br />
- weight factors in phases A, B, C respectively<br />
w AB , w AC ,..., w BC - weight factors in interphase connections.<br />
79
4. ANN based Current Controllers<br />
a)<br />
ε<br />
w<br />
w<br />
e<br />
A A A<br />
AB<br />
S&H<br />
S<br />
A<br />
ε<br />
B<br />
e<br />
B<br />
S&H<br />
S B<br />
ε<br />
C<br />
w<br />
C<br />
e<br />
C<br />
S&H<br />
S<br />
C<br />
SH SH SH<br />
A B C<br />
b)<br />
ε A<br />
S&H<br />
S<br />
A<br />
ε<br />
B<br />
S&H<br />
S<br />
B<br />
ε<br />
C<br />
S&H<br />
S<br />
C<br />
SH SH SH<br />
A B C<br />
c)<br />
Conventional<br />
Modified<br />
Fig. 4.28. Current controllers for three phase PWM inverters: (a) proposed NN<br />
controller, (b) Delta modulation controller, (c) modified sampling technique<br />
80
4. ANN based Current Controllers<br />
Assuming equal values of weights:<br />
w A = w B = w C = 1,<br />
w AB = w AC = ... = w BC = -1,<br />
(4.2a)<br />
(4.2b)<br />
the equations Eq.4.1a, Eq.1b, Eq.1c can be rewritten as follows:<br />
e A = ε A - ε B - ε C ,<br />
e B = - ε A + ε B - ε C ,<br />
e C = - ε A - ε B + ε C .<br />
(4.3a)<br />
(4.3b)<br />
(4.3c)<br />
However, for the three phase symmetrical load (without zero leader) the sum of the<br />
instantaneous current errors is always zero:<br />
ε A + ε B + ε C = 0. (4.4)<br />
Therefore, the equations Eq.4.3a, Eq.3b, Eq.3c can be represented as:<br />
e A = 2ε A ,<br />
e B = 2ε B ,<br />
e C = 2ε C .<br />
(4.5a)<br />
(4.5b)<br />
(4.5c)<br />
The last equations show clearly, that when the values of the phase and interphase<br />
weights are equal (equations. Eq.4.2a, Eq.4.2b), the NN operates as conventional<br />
Delta modulation controller without any interphase connections (Fig. 4.28b).<br />
Assuming, however, that:<br />
w A = w B = w C = k,<br />
w AB = w AC = ... = w BC = -1,<br />
(4.6a)<br />
(4.6b)<br />
81
4. ANN based Current Controllers<br />
the equations Eq.4.3a, Eq.4.3b, Eq.4.3c can be written as:<br />
e A = k⋅ε A - ε B - ε C ,<br />
e B = - ε A + k⋅ε B - ε C ,<br />
e C = - ε A - ε B + k⋅ε C .<br />
(4.7a)<br />
(4.7b)<br />
(4.7c)<br />
In this case, for k >> 1, when one error signal is lacking (for example ε A = 0) from<br />
equations. Eq.4.7a, Eq.4.7b, Eq.4.7c and Eq.4.4 the following formulas can be obtain:<br />
e A = - ε B - ε C ,<br />
e B = k⋅ε B ,<br />
e C = k⋅ε C .<br />
(4.8a)<br />
(4.8b)<br />
(4.8c)<br />
Hence, the lacking error signal of phase A is reconstructed from the errors of other<br />
two phases B and C. Therefore, NN controller has robust behaviour and is able to<br />
operate correctly even when one of the error input signals is lacking.<br />
Note, that here the robust behaviour of the controller is achieved using only the simple<br />
one layer NN with precalculated weight factors, whereas in controller proposed by<br />
Harashima et al. [115] the three layer feedforward NN (with 3-5-3 architecture)<br />
trained by back propagation algorithm has been applied.<br />
4.3.5.3. Results<br />
The proposed NN current controller has been investigated by simulation and<br />
implemented in hardware. The simulated and experimental waveforms for<br />
investigated Delta and NN current controllers are shown in Fig. 4.29 and Fig. 4.30,<br />
respectively. In both controllers a modified (shifted) sampling technique is applied.<br />
This modified sampling technique force controller to select zero voltage vectors (not<br />
possible in conventional Delta controller) and always chooses only adjacent active<br />
vectors (see voltage vectors switching path u α<br />
= f(u β<br />
) in Figs. 4.29 and 4.30).<br />
Note, that in contrast to the Delta controller, the proposed NN controller operate<br />
correctly without phase A error signal ε A = 0.<br />
82
4. ANN based Current Controllers<br />
I - NN controller<br />
II - Modified delta controller<br />
Fig. 4.29. Simulated waveforms for current controllers, when error signal in phase A<br />
is lacking (ε A =0):<br />
a) phase voltage u sα , b) phase current i sα , c) voltage vector path u sβ = f(u sα ),<br />
d) current vector path i sβ = f(i sα ).<br />
83
4. ANN based Current Controllers<br />
a) I - NN controller a) II - Modified delta controller<br />
b) b)<br />
c) c)<br />
Fig.4.30. Experimental waveforms for current controllers, for ε A =0:<br />
a) phase voltage u sα and phase current i sα , b) voltage vector path u sβ = f(u sα ),<br />
b) current vector path i sβ = f(i sα ).<br />
84
4. ANN based Current Controllers<br />
4.4. Optimal mode ANN CC<br />
4.4.1. Optimal mode CC<br />
In the case of such a type of controller an optimal algorithm in every sampling<br />
interval T s selects voltage vector that minimise RMS current error (see the section 4.2.<br />
as well). This is equivalent to selection the available inverter voltage vector that lies<br />
nearest to command vector u Sc (t). The command vector is calculated by assumption<br />
that the inverter voltage u Sc (t) and EMF voltage e r (T) of the load is constant over the<br />
sampling interval T s . Based on the calculated u Sc (t) value the voltage vector selector<br />
chooses the nearest available inverter voltage vector (Fig. 4.31.)<br />
u s<br />
synch.<br />
RDCL<br />
i sc<br />
i s<br />
+<br />
-<br />
e r<br />
T<br />
Calculation<br />
of voltage<br />
command<br />
vector<br />
u sc<br />
Voltage<br />
vector<br />
selector<br />
VSI<br />
load<br />
model<br />
3 ph.<br />
load<br />
Fig. 4.31. Optimal discrete modulation controller<br />
Desired voltage vector can be calculated using motor parameters r s , l σ and<br />
electromotive force EMF according to the following equations:<br />
l<br />
u σ<br />
s αc<br />
= ( isαc<br />
− isα<br />
) + rs<br />
isαc<br />
+ eα<br />
(4.9a)<br />
∆t<br />
85
4. ANN based Current Controllers<br />
and<br />
l<br />
u σ<br />
s βc<br />
= ( isβc<br />
− isβ<br />
) + rs<br />
isβc<br />
+ eβ<br />
(4.9b)<br />
∆t<br />
2 2<br />
usc( n) = usαc + usβc<br />
(4.10a)<br />
s c<br />
γ<br />
u<br />
= arctg u α<br />
usβc<br />
(4.10b)<br />
Using these formulas it is possible to calculate for each inverter vector (seven<br />
possibilities) the quality factor J:<br />
J( n) = ( usαc( n) − usα( n)) + ( usβc( n) −usβ ( n))<br />
(4.11)<br />
2 2<br />
and chose the vector, which minimise this index.<br />
Note that:<br />
n – voltage vector number, u sαc – command voltage, u sα - actual voltage.<br />
If we assume that:<br />
ε uα( n) uSαC( n) usα( n)<br />
= − (5.12a)<br />
ε uβ( n) usβc( n) usβ( n)<br />
= − (5.12b)<br />
the equation Eq.4.11 has the following form:<br />
2 2<br />
J = εuα( n) + εuβ( n) (5.13)<br />
The above described procedure is repeated in each sampling time, and it implies, that<br />
implementation of such a system requires very fast microprocessors.<br />
The performance of optimal regulator is much better than in the case of Delta<br />
Regulator. To illustrate this feature the simulation results obtained in both systems are<br />
shown in Fig. 4.32 and Fig. 4.33 respectively.<br />
86
4. ANN based Current Controllers<br />
Fig. 4.32. Behaviour of current Delta Regulator for f = 25 Hz<br />
a) i α , i β = f(t) , b) i β = f(i α ) , c) u β = f(t) , d) u β = f(u α ) ,<br />
e) voltage vector = f(t) , f) RMS, J = f(t) , g) ε 2 α = f( t) , h) NRS = f(t)<br />
87
4. ANN based Current Controllers<br />
Fig. 4.33. Behaviour of current Optimal Regulator for f = 25 Hz<br />
a) i α , i β = f(t) , b) i β = f(i α ) , c) u β = f(t) , d) u β = f(u α ) ,<br />
e) voltage vector = f(t) , f) RMS, J = f(t) , g) ε 2 α = f( t) , h) NRS = f(t)<br />
The presented oscillograms show that the behaviour of optimal regulator is much<br />
better compare to Delta Modulator.<br />
88
4. ANN based Current Controllers<br />
4.4.2. Three layers NN controller trained by optimal PWM pattern<br />
4.4.2.1. Description of the system<br />
The optimal discrete current controller from Fig. 4.31 can be replaced by an off line<br />
trained NN as shown in Fig. 4.34.<br />
u s<br />
synch.<br />
RDCL<br />
+<br />
i sc<br />
-<br />
i s<br />
(ψ<br />
NN<br />
regulator<br />
VSI<br />
(ψ r<br />
T, , ω<br />
)<br />
s<br />
load<br />
model<br />
3 ph.<br />
load<br />
Fig. 4.34. Neural Network discrete modulation controller.<br />
As controller two (5-10-3) and three (5-10-10-3) layers feedforward NN with<br />
sigmoidal nonlinearity are investigated. Before using as controller, the NN was<br />
trained (by back propagation algorithm [149]) with random selected data from the<br />
optimal PWM pattern generated by simulated controller.<br />
In the system with PWM supply there is a practical problem with noise. Therefore, in<br />
signal processing instead of EMF voltage, the rotor flux ψ r components and<br />
synchronous frequency ω s signals are applied to the NN inputs. These signals are<br />
used in conventional vector control schemes of AC motors [12].<br />
89
4. ANN based Current Controllers<br />
The multilayer feedforward NN has been trained using the back propagation<br />
algorithm. The learning samples have been calculated before the learning process and<br />
were created in the system with optimal discrete current regulator.<br />
4.4.2.2. Results<br />
The simulation results have been obtained in NN systems with one and two hidden<br />
layers. In each of these cases ten neurons in these layers have been used. In the<br />
figures Fig. 4.35-Fig. 4.40. the behaviour of the system for three frequencies and two<br />
kinds of neural network are presented respectively. In these oscillograms the voltages,<br />
currents and quality indexes are shown. Some of quality indexes are presented in the<br />
Table 4.7 as well.<br />
Table 4.7.<br />
f<br />
Parameters<br />
[Hz] PSE RMS J<br />
50 - 0.05160 0.04685<br />
Optimal Regulator 25 - 0.05038 0.04679<br />
5 - 0.06056 0.05660<br />
50 0.68 0.07675 0.06804<br />
NN with one hidden layer 25 0.71 0.06851 0.06042<br />
5 0.70 0.07811 0.07075<br />
50 0.92 0.05433 0.04894<br />
NN with two hidden layers 25 0.94 0.05224 0.04814<br />
5 0.96 0.06084 0.05675<br />
It can be seen that Pattern Selection Efficiency factor which shows how often the NN<br />
generates the "correct voltage vector", is about 0.94 for three layers, and about 0.7 for<br />
two layers NN. So, the performance of the NN controller only slightly differs from<br />
Optimal Controller and is much better than for Delta Controller.<br />
90
4. ANN based Current Controllers<br />
Fig. 4.35. Behaviour of NN with two hidden layers for f = 50 Hz<br />
a) i α , i β = f(t) , b) i β = f(i α ) , c) u β = f(t) , d) u β = f(u α ) ,<br />
e) voltage vector = f(t) , f) RMS, J = f(t) , g) ε 2 α = f( t) , h) NRS = f(t)<br />
91
4. ANN based Current Controllers<br />
Fig. 4.36. Behaviour of NN with two hidden layers f = 25 Hz<br />
a) i α , i β = f(t) , b) i β = f(i α ) , c) u β = f(t) , d) u β = f(u α ) ,<br />
e) voltage vector = f(t) , f) RMS, J = f(t) , g) ε 2 α = f( t) , h) NRS = f(t)<br />
92
4. ANN based Current Controllers<br />
Fig. 4.37. Behaviour of NN with two hidden layers for f = 5 Hz<br />
a) i α , i β = f(t) , b) i β = f(i α ) , c) u β = f(t) , d) u β = f(u α ) ,<br />
e) voltage vector = f(t) , f) RMS, J = f(t) , g) ε 2 α = f( t) , h) NRS = f(t)<br />
93
4. ANN based Current Controllers<br />
Fig. 4.38. Behaviour of NN with one hidden layer for f = 50 Hz<br />
a) i α , i β = f(t) , b) i β = f(i α ) , c) u β = f(t) , d) u β = f(u α ) ,<br />
e) voltage vector = f(t) , f) RMS, J = f(t) , g) ε 2 α = f( t) , h) NRS = f(t)<br />
94
4. ANN based Current Controllers<br />
Fig. 4.39. Behaviour of NN with one hidden layer for f = 25 Hz<br />
a) i α , i β = f(t) , b) i β = f(i α ) , c) u β = f(t) , d) u β = f(u α ) ,<br />
e) voltage vector = f(t) , f) RMS, J = f(t) , g) ε 2 α = f( t) , h) NRS = f(t)<br />
95
4. ANN based Current Controllers<br />
Fig. 4.40. Behaviour of NN with one hidden layer for f = 5 Hz<br />
a) i α , i β = f(t) , b) i β = f(i α ) , c) u β = f(t) , d) u β = f(u α ) ,<br />
e) voltage vector = f(t) , f) RMS, J = f(t) , g) ε 2 α = f( t) , h) NRS = f(t)<br />
96
5. Speed estimation of induction motor<br />
5. SPEED ESTIMATION OF INDUCTION MOTOR<br />
5.1. Introduction<br />
A variety of different method for sensorless IM drives has been developed in the past<br />
few years [12, 14, 134, 135]. This Chapter gives a general review of different<br />
techniques with special attention to ANN based speed estimators, and presents an<br />
improved on line trained ANN estimator proposed and implemented by the author.<br />
5.2. Basic Techniques of Speed Estimation<br />
The operation of speed controlled IM drives without mechanical speed sensor<br />
requires the estimation of state variables of the drive. This estimation is based<br />
exclusively on measured motor voltages and currents, which are available in every<br />
PWM inverter-fed drive system. Low performance, low cost sensorless drives can be<br />
designed using simple algebraic estimators. However, high performance systems are<br />
based on dynamic models for the estimation of the magnitude and special position of<br />
magnetic flux in the stator or in the rotor as well as rotor counter EMF vector.<br />
Development of speed sensorless IM control methods has been based on<br />
different approaches and techniques. A historical review is presented in Tab. 5.1. The<br />
development has been started with algebraic slip frequency estimation proposed by<br />
Abbondanti and Brenner in 1975. The newest proposal by Ben-Brahim and<br />
Kurosawa, based on ANN approach, is dated 1993 [130].<br />
The most successful method (which is an extension of torque current estimation<br />
proposed by Kazmierkowski and Koepcke for CSI [132]) is proposed by Othani et. al<br />
and is used in Yasakawa standard inverter-fed drive systems.<br />
The general classification of speed sensorless control techniques is shown in<br />
Fig. 5.1. In this thesis only high performance methods based on open and closed loop<br />
estimators are the subjects of consideration.<br />
97
5. Speed estimation of induction motor<br />
Table 5.1.<br />
Review of Speed Sensorless Induction Motor Control<br />
1975 A. Abbondanti<br />
Slip calculation - stationary<br />
M. B. Brenner<br />
1982 R. Jötten, G. Mäder Slip estimation - dynamic<br />
(EMF - oriented control)<br />
1983 M.P. Kazmierkowski<br />
H.J. Köpcke<br />
Torque current estimation<br />
(EMF - oriented control)<br />
1990 D. S. Zinger, F. Profumo<br />
Speed estimation based on Space Harmonics<br />
T. A. Lipo,D. W. Novotny<br />
1991 W. Lotzkat V/Hz with active stator current control<br />
1991 X. Xu + D.W. Novotny Direct Stator Flux Oriented-slip estimation<br />
1992 L. Kreindler,<br />
Stator Phase Voltage Third Harmonics<br />
J. C. Moreira<br />
A. Testa, T. A. Lipo<br />
1992 B. Ohtani<br />
C. Takada<br />
Torque current and rotor flux estimation<br />
Field oriented control<br />
K. Tanaka<br />
1995 H. Tajima, Y. Matsumoto<br />
Speed estimation from induced speed voltage e T<br />
H. Umida , M. Kawano<br />
1992 U. Baader<br />
M. Depenbrock, G. Girse<br />
DSC scheme with speed estimation from hysteresis torque<br />
controller<br />
1992 C. Schander MRAS - flux criterion<br />
1994 F.Z. Peng<br />
MRAS - Reactive Power Criterion (no R s influence)<br />
T. Fukao<br />
1991 G. Hanneberger<br />
Kalman Filter<br />
B.-J. Brunsbach<br />
Th. Klepsch<br />
1994 Y.R. Kim, S.K. Sul<br />
Extended Kalman Filter<br />
M.H. Park<br />
1993 H. Kubata, K. Matsuse<br />
Full order adaptive speed obserwer with R r compensation<br />
T. Nakano<br />
1993 T. Kanmachi<br />
Estimation ω m = (i r × pψ r )/(i r ψ r )<br />
I. Takahashi<br />
1990 S. Doki, S.I. Yong,<br />
Adaptive Sliding Mode Observers<br />
S. Sangwongwani et. al,<br />
1994 J.W. Chooi<br />
Estimation based on High Frequency Current Injection<br />
S.K. Sul<br />
1993 L. Ben-Brahim<br />
R. Kurosawa<br />
Neural Network Based Estimation<br />
98
5. Speed estimation of induction motor<br />
Sensorless Speed Control Techniques<br />
Low performance<br />
dynamic requirements<br />
High performance<br />
dynamic requirements<br />
Constant V/Hz<br />
control<br />
Slip frequency<br />
compensation<br />
Estimators using<br />
machine<br />
imperfections<br />
Open and closed<br />
loop estimators<br />
Estimators using<br />
saliency effects<br />
Estimators based on<br />
space harmonics<br />
Estimator based<br />
on Artificial<br />
Inteligence<br />
Open loop<br />
estimators<br />
MRAS<br />
Observers<br />
(Luenberger ,<br />
Kalman)<br />
ANN based<br />
estimator<br />
Neuro-fuzzy<br />
based estimator<br />
Fuzzy logic<br />
based estimator<br />
Fig. 5.1. General classification of speed sensorless control techniques<br />
5.2.1. Open loop estimators<br />
In the books [12, 14] many open loop estimation methods based on IM model<br />
is discussed. Below seven basic estimator equations are presented:<br />
99
5. Speed estimation of induction motor<br />
ω<br />
m<br />
= ω −ω<br />
=<br />
T<br />
N<br />
s<br />
d<br />
dt<br />
r<br />
⎛ψ<br />
rβ<br />
⎞ T<br />
arctan⎜<br />
⎟ −<br />
ψ<br />
⎝ rα<br />
⎠ T<br />
N<br />
r<br />
x<br />
M<br />
( ψ<br />
rα<br />
sβ<br />
2<br />
rα<br />
+<br />
ψ<br />
i<br />
−ψ<br />
ψ<br />
i<br />
rβ<br />
sα<br />
2<br />
rβ<br />
)<br />
(5.1)<br />
ω<br />
m<br />
= ω −ω<br />
=<br />
T<br />
N<br />
s<br />
d<br />
dt<br />
r<br />
⎛ψ<br />
sβ<br />
⎞ T<br />
arctan<br />
⎜ −<br />
ψ<br />
⎟<br />
⎝ sα<br />
⎠ T<br />
N<br />
r<br />
xs<br />
( ψ sαisβ<br />
−ψ<br />
sβ<br />
isα<br />
)<br />
ψ s ( ψ s − xσ<br />
isx<br />
)<br />
(5.2)<br />
ωm<br />
= ωs<br />
−ωr<br />
=<br />
d ⎛ erβ<br />
⎞ T<br />
T arctan<br />
N<br />
N ⎜ ⎟ − ωs<br />
dt<br />
e<br />
⎝ rα<br />
⎠ Tr<br />
xM<br />
xr<br />
xs<br />
( e<br />
i<br />
rα<br />
sα<br />
2<br />
erα<br />
+<br />
+ e<br />
e<br />
i<br />
rβ<br />
sβ<br />
2<br />
rβ<br />
)<br />
(5.3)<br />
ω<br />
m<br />
= ω −ω<br />
=<br />
T<br />
N<br />
s<br />
d<br />
dt<br />
r<br />
⎛ esβ<br />
⎞ T<br />
arctan<br />
⎜ −<br />
e<br />
⎟<br />
⎝ sα<br />
⎠ T<br />
N<br />
r<br />
ω<br />
s<br />
xs<br />
( esαisα<br />
+ esβ<br />
isβ<br />
)<br />
es<br />
( es<br />
−ωs<br />
xσ<br />
isx<br />
)<br />
(5.4)<br />
ω<br />
m<br />
ψ<br />
⎡<br />
d<br />
r<br />
⎤<br />
d<br />
r<br />
⎢(<br />
ψ − xM<br />
i s ) × T<br />
r<br />
N ⎥ ( ψ − x<br />
r M is<br />
) × TN<br />
= sgn ⎢<br />
dt ⎥ ⋅<br />
dt<br />
(5.5)<br />
⎢ ( ψ − x<br />
r M is<br />
) ⋅ψ<br />
ψ − x<br />
r ⎥ (<br />
r M is<br />
) ⋅ψ<br />
r<br />
⎢<br />
⎣<br />
⎥<br />
⎦<br />
ψ<br />
i<br />
i<br />
sy<br />
sy<br />
ψ<br />
i<br />
−ψ<br />
i<br />
rα<br />
sβ<br />
rβ<br />
sα<br />
= (5.6)<br />
2 2<br />
ψ rα<br />
+ ψ rβ<br />
e<br />
i<br />
+ e<br />
i<br />
rα<br />
sα<br />
rβ<br />
sβ<br />
= (5.7)<br />
2 2<br />
erα<br />
+ erβ<br />
The accuracy of speed estimators using Eq.5.1-5.7 depends greatly on the motor<br />
parameters used, and also on the scheme used for the estimation of the flux/EMF<br />
components. The basic properties of open loop speed estimators are summarized in<br />
the Tab. 5.2.<br />
100
Table 5.2.<br />
Basic open loop speed estimators<br />
5. Speed estimation of induction motor<br />
Method<br />
1 Based on rotor flux vector<br />
estimation (Eq. 5.1)<br />
2 Based on stator flux vector<br />
estimation (Eq. 5.2)<br />
3 Based on voltage induced by rotor<br />
flux –rotor EMF (Eq. 5.3)<br />
4 Based on voltage induced by stator<br />
flux –stator EMF (Eq. 5.4)<br />
5 Based on vector and scalar product<br />
(Eq. 5.5)<br />
6 Based on torque current estimation<br />
(Eqs. 5.6, 5.7)<br />
Parameter<br />
sensitivity<br />
r s , σx s , T r ,<br />
x M<br />
r s , σx s , T r ,<br />
x s<br />
r s , σx s , T r ,<br />
xM<br />
xr<br />
r s , σx s , T r ,<br />
x s<br />
r s , σx s , T r ,<br />
x M<br />
r s , σx s ,<br />
xM<br />
xr<br />
Remarques<br />
Higher accuracy when<br />
flux is calculated in polar<br />
coordinates<br />
Higher accuracy when<br />
flux is calculated in polar<br />
coordinates<br />
Two integrations are<br />
eliminated<br />
Two integrations are<br />
eliminated<br />
Valid only for waveform<br />
with harmonics<br />
Only for Field oriented<br />
Control Schemes<br />
Note that four important parameters influence the accuracy of open loop estimators:<br />
stator resistance r s , stator transient reactance σx s , stator reactance x s and rotor time<br />
constant T r . These parameters convary due to temperature (r s , r r ), saturation (x M , x s ,<br />
x r ) and skin effect (r r ).<br />
In low speed region, the accuracy of the open loop estimation is reduced, and in<br />
particular, parameter deviations from their actual values have great influence on the<br />
steady state and transient performance of the drive system, which uses an open loop<br />
estimator. Higher accuracy is achieved if the stator flux is calculated by a scheme,<br />
which avoids using of pure integrators (Fig. 5.2.). This leads to improved schemes<br />
working with polar coordinates ψ = ψ , γ ] (Fig. 5.3.). It is important, that in the<br />
s<br />
[ s s<br />
case of rotor field-oriented system stator flux must be recalculated to the rotor flux.<br />
Finally, it should be noted that the robustness against parameter mismatch and noise<br />
(in the measured signals) can be considerably improved by using closed loop<br />
observers.<br />
101
5. Speed estimation of induction motor<br />
a)<br />
isα<br />
usα<br />
rs<br />
_<br />
1<br />
∫<br />
Ψsα<br />
isβ<br />
usβ<br />
rs<br />
_<br />
T N<br />
1<br />
T N<br />
∫<br />
Ψsβ<br />
b)<br />
isα<br />
usα<br />
usβ<br />
isβ<br />
αβ isx<br />
rs<br />
_<br />
usx<br />
esx 1<br />
Ψsx<br />
= Ψs<br />
T N<br />
∫<br />
usy<br />
esy<br />
_<br />
isy<br />
xy rs<br />
÷<br />
esy<br />
ω<br />
s<br />
=<br />
sin γ s<br />
Ψsx<br />
cos ∫<br />
γ s<br />
Fig. 5.2. Stator flux vector estimators: a) Stator flux estimator in cartesian coordinates<br />
b) Stator flux estimator in polar coordinates<br />
5.2.2. Closed loop estimators – observers<br />
Having an open loop estimator of a dynamic system state variables, by introducing a<br />
correction term involving the estimation error, one obtains a closed loop estimator<br />
which is referred to as an observer.<br />
If the plant is considered to be deterministic, then the observer is deterministic<br />
observer, otherwise it is a stochastic observer. The most popular observers are<br />
Luenberger and Kalman types.<br />
102
5. Speed estimation of induction motor<br />
a)<br />
isα<br />
usα<br />
usβ<br />
isβ<br />
αβ isx<br />
rs<br />
_<br />
usx<br />
esx 1<br />
Amplitude Ψsx<br />
= Ψs<br />
T Limiter<br />
N<br />
usy<br />
esy<br />
_<br />
isy<br />
xy rs<br />
÷<br />
esy<br />
ω<br />
s<br />
=<br />
sin γ s<br />
Ψsx<br />
cos ∫<br />
γ s<br />
b)<br />
+<br />
T dΨ sx<br />
= 1<br />
N<br />
esx<br />
Ψsx<br />
= Ψ<br />
dt<br />
s + ω<br />
s<br />
c y LPF<br />
+<br />
ωc<br />
s + ω<br />
c<br />
Limiter<br />
Fig. 5.3. Improved stator flux estimator in polar coordinates:<br />
a) stator flux estimator with amplitude limiter, b) amplitude limiter<br />
5.2.2.1. Luenberger Observer<br />
Luenberger observer (LO) is of the deterministic type and basically is applicable to<br />
linear time-invariant deterministic systems. The extended Luenberger observer (ELO)<br />
is applicable to nonlinear time-varying deterministic system.<br />
x&<br />
= Ax<br />
+ Bu<br />
i<br />
s<br />
= Cx<br />
s<br />
(5.8)<br />
where<br />
103
5. Speed estimation of induction motor<br />
x = [ i<br />
u<br />
s<br />
s<br />
= [ u<br />
ψ ]<br />
sα<br />
r<br />
= [ i<br />
⎡A11<br />
A12<br />
⎤<br />
A = ⎢ ⎥<br />
⎣A21<br />
A22<br />
⎦<br />
⎡1<br />
0⎤<br />
C = [ I 0],<br />
I = ⎢ ⎥<br />
⎣0<br />
1⎦<br />
T<br />
,<br />
i<br />
s<br />
T<br />
usβ<br />
]<br />
sα<br />
T<br />
isβ<br />
]<br />
, ψ<br />
r<br />
= [ ψ<br />
rα<br />
ψ ]<br />
rβ<br />
T<br />
(5.9)<br />
u s<br />
B<br />
Induction<br />
Motor<br />
i s<br />
^<br />
i s<br />
+ -<br />
I/s<br />
+<br />
C<br />
+ +<br />
^<br />
ω m<br />
A<br />
^<br />
ψ r<br />
∧ ∧ ∧<br />
ω m<br />
(r s<br />
,T r<br />
)<br />
Adaptive scheme<br />
Fig.5.4. Block diagram of adaptive flux and speed observer<br />
K<br />
Based on a Lyapunov function<br />
V<br />
T<br />
= e e + ( ˆ ωm<br />
−ωm<br />
) / c<br />
(5.10)<br />
where c is positive factor, and applying the conventional procedure of pole placement<br />
technique, the gain matrix K can be calculated as follows:<br />
⎡k<br />
K = −⎢<br />
⎣k<br />
1<br />
3<br />
I + k<br />
I + k<br />
2<br />
4<br />
J⎤<br />
⎥,<br />
J⎦<br />
⎡0<br />
J = ⎢<br />
⎣1<br />
−1⎤<br />
0<br />
⎥<br />
⎦<br />
(5.11)<br />
104
5. Speed estimation of induction motor<br />
with<br />
k<br />
k<br />
k<br />
k<br />
1<br />
2<br />
3<br />
4<br />
η ≥ 1<br />
⎛ 1<br />
= −(<br />
η −1)<br />
⎜<br />
⎝τ<br />
s′<br />
= ( η −1)<br />
ˆ ω<br />
m<br />
1 ⎞<br />
+<br />
⎟<br />
τ r′<br />
⎠<br />
2 ⎡⎛<br />
1 1−σ<br />
⎞ x′<br />
= ( η −1)<br />
⎢<br />
⎜ +<br />
⎟<br />
s x<br />
⎣⎝τ<br />
s′<br />
τ r′<br />
⎠ xr<br />
x<br />
+<br />
τ<br />
xs′<br />
xM<br />
⎛ 1 1 ⎞<br />
( η −1)<br />
⎜ +<br />
⎟<br />
xr<br />
⎝τ<br />
s′<br />
τ r′<br />
⎠<br />
2 x<br />
= −(<br />
η −1)<br />
ˆ ω<br />
s xM<br />
m<br />
x<br />
r<br />
M<br />
M<br />
r<br />
⎤<br />
⎥ +<br />
⎦<br />
(5.12)<br />
where<br />
x′<br />
s = σxs<br />
,<br />
x′<br />
′ = s<br />
s ,<br />
rs<br />
τ<br />
τ<br />
xr′<br />
= σxr<br />
,<br />
xr′<br />
r′<br />
= ,<br />
rr<br />
τ<br />
r<br />
=<br />
xr<br />
rr<br />
(5.13)<br />
In a discrete implementation, however, for small sampling time and low speed,<br />
accurate computation is required. This is because of stability problems which can<br />
occur (roots are close to stability limit). Therefore, another pole-placement procedure<br />
has to be used, which ensures that the low speed roots are select away from the<br />
stability limit.<br />
5.2.2.2. Extended Kalman Filter (EKF)<br />
The EKF is a recursive optimum stochastic state estimator, which can be applied for<br />
common state and parameter estimation of nonlinear dynamic systems in real time by<br />
using measured signals with random distributed noise. Of course, it assumes that the<br />
measurement noise w and disturbance noise v (Fig. 5.5) are uncorrelated.<br />
105
5. Speed estimation of induction motor<br />
u s<br />
Induction Motor<br />
v<br />
.<br />
+ x<br />
B<br />
I/s<br />
x<br />
C<br />
+ +<br />
+<br />
i s<br />
+<br />
w<br />
B<br />
A(x)<br />
^<br />
+ x ^.<br />
x^ i s -<br />
+<br />
C<br />
I/s<br />
+ +<br />
A(x)<br />
^<br />
K<br />
Fig. 5.5. Block diagram of EKF<br />
In fact the EKF is a variant of the Kalman Filter, but the extended KF can be used for<br />
a nonlinear systems. In the speed adaptive flux observers, the speed is considered as a<br />
state variable. The design procedure is complicated and includes the following steps<br />
for the discrete EKF algorithm<br />
• Selection of discretized IM model,<br />
• Determination of the noise and state covariance matrices,<br />
• Implementation of the EKF algorithm<br />
• Tuning<br />
The most important features of the ELO and EKF can be summarized as below<br />
106
5. Speed estimation of induction motor<br />
ELO<br />
• Can be used in a majority of industrial<br />
systems since they can be considered<br />
as deterministic<br />
• Its performance can be chosen by<br />
selection the gain matrix; fast<br />
convergence and robust design can be<br />
obtained<br />
• Lower computational requirements<br />
(no matrix inversion as in the EKF)<br />
• It is large flexibility in design of the<br />
ELO, because of existed redundancy<br />
in the gain matrix specification<br />
EKF<br />
• It is effective for an industrial systems<br />
which can be considered as stochastic<br />
• Its performance is adjusted by tuning<br />
the covariance matrices<br />
• Because of fact that a limitation<br />
implying optimality condition has to<br />
be satisfied, it is no design flexibility<br />
• The nonlinear nature of the IM and an<br />
“ad hoc” tuning of covariance matrix<br />
may result in non-optimal estimator<br />
and a bias problem<br />
5.2.3. Model Reference Adaptive Systems (MRAS)<br />
Another method to increase the accuracy of the open loop estimators discussed in<br />
section 5.2.1, is application of an closed loop approach. The Model Reference<br />
Adaptive System (MRAS) constitutes a wide class of the closed loop flux and speed<br />
observers.<br />
As can be seen in Fig.5.6. in a MRAS system, some state variables x (e.g. rotor flux<br />
vector components x = [ ψ rα<br />
ψ rβ<br />
] or back EMF components x = [ e r α erβ<br />
]) of<br />
IM (calculated from the monitored voltage vector u s and current vector i s ) are<br />
estimated in a Reference Model (RM) and then compared to state variable xˆ<br />
estimated in an Adaptive Model (AM). The error between these state variables is then<br />
in an Adaptation Algorithm to obtain estimated speed ω m which adjusts the AM.<br />
Adaptive algorithm is derived by using Popov’s hyperstability criterion.<br />
107
5. Speed estimation of induction motor<br />
u s<br />
Reference<br />
Model<br />
x<br />
i s<br />
i s<br />
Adaptation<br />
ε<br />
Adaptive<br />
Model<br />
∧<br />
x<br />
ω^m<br />
Algorithm<br />
Fig.5.6. Block scheme of MRAS based speed estimator<br />
Depending of the definition of the error signal for speed tuning, several types of the<br />
MRAS can be defined<br />
⎧ = ˆ<br />
*<br />
ε1<br />
Im( ψ ψ ) with ψ = ψ +<br />
⎪<br />
r r<br />
r rα<br />
jψ<br />
rβ<br />
⎪<br />
*<br />
ε 2 = Im( er<br />
eˆ<br />
r ) with er<br />
= erα<br />
+ jerβ<br />
ε = ⎨<br />
⎪<br />
*<br />
ε3<br />
= Im( ∆er<br />
i s ) with ∆er<br />
= er<br />
− eˆ<br />
r<br />
⎪<br />
⎪<br />
*<br />
⎩ε<br />
4 = Im( ∆erdi<br />
s / dt)<br />
with ∆er<br />
= er<br />
− eˆ<br />
r<br />
(5.14)<br />
where •ˆ denotes the quantities estimated by the AM<br />
*<br />
• denotes conjugate complex quantities.<br />
Basic features of MRAS speed estimation algorithms given by Eq.5.x are<br />
summarized in Tab. 5.3. The ε 3 algorithm is insensitive to stator resistance changes<br />
and, therefore, seems to be most attractive. Also, it has been shown that when for<br />
rotor FOC schemes the same value of T r as in the MRAS speed observer is used, then<br />
108
5. Speed estimation of induction motor<br />
the drive system will be robust to the T r changes as well. Another ε 4 algorithm is<br />
insensitive to leakage reactance x σ changes. However, it requires calculation of stator<br />
current i s derivative, which in PWM inverter fed IM is strong noisy signal.<br />
Finally, it should be pointed out that MRAS based structures also create basics<br />
for Artificial Intelligence estimators, which are discussed in the next section 5.2.4.<br />
Table 5.3.<br />
MRAS speed estimation algorithms<br />
1<br />
2<br />
3<br />
4<br />
Adaptation criterion<br />
Parameter<br />
sensitivity<br />
ε Im( ˆ<br />
*<br />
1 = ψ )<br />
r ψ<br />
r s , x σ , T r ,<br />
r<br />
xM<br />
x<br />
ε Im( ˆ<br />
*<br />
2 = e r e r ) r s , x σ , T r ,<br />
xM<br />
x<br />
ε *<br />
3 = Im( ∆e r i s ) x σ , T r ,<br />
xM<br />
x<br />
ε 4 = Im( ∆erdis<br />
/ dt)<br />
*<br />
r<br />
r<br />
r<br />
r s , T r ,<br />
xM<br />
x<br />
r<br />
Computational<br />
requirements<br />
High<br />
Medium<br />
Low<br />
Medium<br />
Remarques<br />
Initial<br />
condition and<br />
drift problem<br />
(pure<br />
integration)<br />
No pure<br />
integration<br />
problem<br />
r s effect is<br />
eliminated<br />
x σ effect is<br />
eliminated<br />
5.2.4. Estimators based on Artificial Intelligence (AI)<br />
There are many possibilities of using AI based speed estimators. One can use ANN<br />
approach or neuro-fuzzy or fuzzy logic schemes. In this thesis only the ANN based<br />
estimators are described.<br />
ANN speed estimators have the following advantages compare to the classical<br />
solutions:<br />
• The calculation time can be shorter, because of the parallel processing,<br />
• The system can calculate almost correctly, even if the information is not complete<br />
(redundancy of the system)<br />
109
5. Speed estimation of induction motor<br />
• The ANN can work as low pass filter, so one do not need the additional filters,<br />
• The development time of such an estimator is rather short comparing to classical<br />
solutions,<br />
• The systems based on ANN are robust to parameter variations and noise.<br />
The block diagram of sensorless control of induction motor based on ANN<br />
speed estimation is shown in Fig.5.7. The speed command signal ω mc is compared<br />
with estimated value ω m and the error is delivered to the speed controller. As input<br />
signals to the ANN speed estimator are stator voltage and current vectors. The actual<br />
speed ω m is measured by tachogenerator for testing only.<br />
u d<br />
ω mc<br />
+<br />
-<br />
Speed &<br />
Vector<br />
Controller<br />
VSI<br />
∧<br />
ω m<br />
NN Based<br />
Speed<br />
Estimator<br />
u s<br />
i s<br />
ω m<br />
IM<br />
Fig.5.7. Sensorless control of PWM inverter-fed IM based on ANN speed estimator<br />
One can use the ANN estimator in on-line and off-line fashion. In the system,<br />
which works on-line the ANN is used as MRAS, and mechanical speed is<br />
proportional to weights of this neural network. The block diagram is very similar to<br />
Fig.5.6 and it is shown in Fig.5.8.<br />
110
5. Speed estimation of induction motor<br />
u s<br />
Reference<br />
Model<br />
x<br />
i s<br />
i s<br />
Learning<br />
ε<br />
ANN<br />
∧<br />
x<br />
ω^m<br />
Algorithm<br />
Fig.5.8. Block scheme of an on-line ANN based speed estimator<br />
As Adaptive Model the one layer linear ANN is used. More detailed description of<br />
this approach is shown in the next section.<br />
In the off-line approach a three-layer feedforward ANN is used, and the<br />
mechanical speed is the output of the neural network. The input vector to the ANN<br />
could be as follows:<br />
xin<br />
= [ u<br />
sα<br />
(<br />
i<br />
k)<br />
sα<br />
(<br />
k)<br />
u<br />
sβ<br />
(<br />
i<br />
k)<br />
sβ<br />
(<br />
k)<br />
u<br />
sα<br />
(<br />
i<br />
sα<br />
(<br />
k −1)<br />
k −1)<br />
u<br />
i<br />
sβ<br />
(<br />
sβ<br />
(<br />
k −1)<br />
k −<br />
T<br />
1)]<br />
(5.15)<br />
The block diagram of this approach is presented in Fig. 5.9.<br />
Because of the its simplicity, and the advantages of an ANN in the further part<br />
of this thesis only approaches based on ANN are detailed described and used in real<br />
system.<br />
111
5. Speed estimation of induction motor<br />
ψ rc<br />
-<br />
ω mc<br />
+<br />
Control<br />
Inverter<br />
IM<br />
i s (k)<br />
i s (k)<br />
u s (k)<br />
^<br />
ω m<br />
ANN based<br />
speed<br />
estimator<br />
i s<br />
(k-1)<br />
u s<br />
(k)<br />
u s<br />
(k-1)<br />
Z −1<br />
Z −1<br />
Fig.5.9. Block scheme of an off-line ANN based speed estimator<br />
112
5. Speed estimation of induction motor<br />
5.3. ANN based speed estimators<br />
5.3.1. Speed estimators with on-line ANN<br />
In this part of the thesis three methods based on an on-line ANN is presented. The<br />
first approach has been originally published by Ben-Brahim and Kurosawa [130] and<br />
is based on two flux models. The second method is a small modification of the first<br />
one, but with big improvement in the length of the learning time.<br />
The third method is the new method originally invented by the author, and is<br />
based on stator current calculations.<br />
5.3.1.1. Method based on two flux models<br />
The concept proposed in [130] is based on two independent rotor flux simulators<br />
[12]:<br />
- voltage model<br />
TN(dΨru/dt) = (xr/xM)[us - rs is - σxs TN(dis/dt)] (5.16)<br />
- current model<br />
TN(dΨri/dt) = [-(TN/Tr) + jωm]Ψri + (TN xM/Tr) is (5.17)<br />
where:<br />
Tr = (TN xr/rr) — rotor time constant,<br />
TN = (1/2πFSN) = (1/ 2π50 Hz) — nominal time constant,<br />
σ = 1- (xMxM/xrxs) — leakage factor.<br />
The block diagram of the NN speed estimator is shown in Fig.5.10.<br />
113
5. Speed estimation of induction motor<br />
u s<br />
i s<br />
Flux Model<br />
z -1<br />
ψ ru<br />
-<br />
ε<br />
Neural Netwok<br />
with<br />
Weight ^ ω m<br />
+<br />
ψ ri<br />
Fig.5.10 . Block diagram of the NN based speed estimator<br />
The discrete current model of rotor flux one can calculate from Eq.5.17.<br />
Ψri(k) = [(1-Ts/Tr)+jωmTs/T N ]Ψ ri(k-1)+(TsxM/Tr) is(k-1) (5.18)<br />
where Ts is the sampling time.<br />
The model based on Eq.5.18 is similar to neural network. One weight is proportional<br />
to mechanical speed, and the output is Ψri [130].<br />
Ψri(k) = w 1 Ψ ri(k-1) + w 2 jΨ ri(k-1) + w 3 is(k-1) (5.19)<br />
The error output is given by<br />
e(k) = Ψri(k) - Ψru(k) (5.20)<br />
Therefore, to calculate estimated mechanical speed ωm one can use back propagation<br />
training algorithm [144].<br />
The ANN in this case has very simple form and is presented in Fig.5.11.<br />
114
5. Speed estimation of induction motor<br />
W1<br />
ψ_<br />
u<br />
x 1<br />
x 2<br />
x 3<br />
W3<br />
Σ<br />
ψ_<br />
i<br />
ε<br />
W2<br />
ω^<br />
m<br />
LA<br />
x 1<br />
x 2<br />
= ψ_<br />
(k-1)<br />
R<br />
= jψ<br />
_<br />
(k-1)<br />
R<br />
x 3 = _ i s<br />
(k-1)<br />
Fig.5.11. Structure of linear ANN used in on-line speed estimation method<br />
Using back propagation learning method one can get following formula:<br />
w2<br />
= w2<br />
−η(<br />
−eα<br />
Ψriβ<br />
+ eβΨriα<br />
) + α∆w<br />
2<br />
T<br />
ˆ N<br />
m = w2<br />
Ts<br />
ω<br />
(5.21)<br />
where η is called learning rate and α - momentum factor.<br />
Note, that one can use the same NN to estimate T r instead of mechanical speed.<br />
115
5.3.1.2. Improved method based on two flux models<br />
5. Speed estimation of induction motor<br />
In this method in contrast to the method presented in 5.3.1.1, the block diagram of NN<br />
based speed estimator is a little bit different. The improvement is presented in<br />
Fig.5.12, and it implies much better behavior of this estimator.<br />
u s<br />
i s<br />
Flux Model<br />
Z −1<br />
ε<br />
+<br />
ψ ri<br />
Weight ω m<br />
Neural Network<br />
with<br />
ψ ru<br />
-<br />
Fig.5.12 . Block diagram of the modified NN based speed estimator<br />
5.3.1.3. Method based on current estimation error<br />
The new method presented in this paper is based on stator current calculation:<br />
di s xM<br />
T<br />
⎛ 2<br />
⎛ N ⎞ xM<br />
T ⎞<br />
σ x N<br />
s =<br />
j ⎜<br />
m r<br />
r ⎟<br />
s i s + us<br />
dt x<br />
⎜ − ω − +<br />
r T<br />
⎟ Ψ<br />
(5.22)<br />
⎝<br />
⎜<br />
r ⎠ xrT<br />
⎟<br />
⎝ r ⎠<br />
This equation one can use to calculate the estimate value of stator current, using<br />
Eq.5.16 to obtain rotor flux value.<br />
116
5. Speed estimation of induction motor<br />
i s<br />
z -1<br />
^+<br />
i<br />
i s<br />
Neural Network<br />
s<br />
Ψr<br />
u with weight ω ^<br />
m<br />
s z -1<br />
Flux estimation<br />
i s<br />
-<br />
Fig. 5.13. Block diagram of the new NN based speed estimation method<br />
x 1<br />
W1<br />
x 3<br />
W3<br />
Σ<br />
^<br />
i s<br />
_<br />
i s<br />
ε<br />
x 4<br />
W4<br />
x 2<br />
W2<br />
^<br />
ω m<br />
LA<br />
x 1<br />
x 2<br />
= ψ_<br />
(k-1)<br />
R<br />
= j ψ_<br />
(k-1)<br />
R<br />
x 3 = _ i s<br />
(k-1)<br />
x 4<br />
= u s<br />
(k-1)<br />
Fig.5.14. Structure of linear ANN used in new on-line speed estimation method<br />
117
Therefore, the discrete model of stator current is as follows:<br />
5. Speed estimation of induction motor<br />
ˆ<br />
x ⎛ T<br />
i ( k)<br />
=<br />
M<br />
s<br />
⎜<br />
xrσxs<br />
⎝ T<br />
⎡ 1<br />
⎢ 1−<br />
⎢ σx<br />
⎣<br />
s<br />
2<br />
M<br />
⎛<br />
⎜<br />
x T<br />
⎜<br />
⎝<br />
xrTr<br />
s<br />
s<br />
r<br />
− jω<br />
+ r<br />
s<br />
T<br />
T<br />
m<br />
s<br />
N<br />
T<br />
T<br />
s<br />
N<br />
⎞<br />
⎟ Ψ r ( k −1)<br />
+<br />
⎠<br />
⎞⎤<br />
⎟ ˆ<br />
T<br />
⎥i<br />
( k −1)<br />
+<br />
s<br />
u<br />
⎟ s<br />
⎠⎥<br />
T x<br />
⎦<br />
Nσ<br />
s<br />
s<br />
( k −1)<br />
(5.23)<br />
This equation can be rewrite in NN form, with one weight proportional to mechanical<br />
speed ω m .<br />
iˆ<br />
s ( k)<br />
= w1ψ ( k −1)<br />
+ w2<br />
jψ<br />
( k −1)<br />
+ w3i<br />
s ( k −1)<br />
+ w4us<br />
( k −1)<br />
(5.24)<br />
r<br />
r<br />
The block scheme of new calculation method of speed estimation based on Eq.5.23 is<br />
presented in Fig. 5.13. The linear ANN is shown in Fig. 5.14.<br />
Note that current estimation error<br />
e( k)<br />
= iˆ<br />
( k)<br />
− i ( k)<br />
(5.25)<br />
s<br />
s<br />
is used to NN tuning.<br />
Therefore, one can calculate estimated speed using the following formula:<br />
w2<br />
= w2<br />
−η(<br />
−eα<br />
Ψriβ<br />
+ eβΨriα<br />
) + α∆w<br />
2<br />
T x<br />
ˆ ω<br />
N r<br />
m = − σx<br />
sw2<br />
Ts<br />
xM<br />
(5.26)<br />
Instead of estimate mechanical speed, using this NN one can estimate motor<br />
parameters.<br />
118
5.3.1.4. Comparison of two presented methods<br />
5. Speed estimation of induction motor<br />
The structure of the new method described in 5.3.1.3. is similar to the method<br />
presented in 5.3.1.1 [130]. The differences are as follows:<br />
a) different error signals for NN tuning,<br />
b) more NN weights in new method,<br />
c) NN depends on more number of motor parameters in new method.<br />
d) using above approaches to estimate motor parameters, more information we can<br />
get from the new method (especially information about stator resistance, which<br />
can be used to parameter adaptation, as is shown in next chapter).<br />
119
6. ANN sensorless Field Oriented Conrol of IM<br />
6 ANN SENSORLESS FIELD ORIENTED CONTROL OF IM<br />
6.1 Principles of field oriented control (FOC)<br />
6.1.1 Introduction<br />
In this chapter the short description of vector control will be presented. The field<br />
orientation concept (vector control) [126, 122] is widely used for high-performance<br />
control of ac motors. The main feature of field oriented approach is to enable<br />
decoupling control of torque and flux similar to the control of a separately excited dc<br />
motor.<br />
In the further part the block diagrams of direct and indirect FOC will be described,<br />
and the design of current and speed controllers will be shown.<br />
6.1.2 FOC description<br />
The principle of vector control method is based on a mathematical model of induction<br />
motor in the rotating reference coordinate frame. It is very convenient to select the<br />
angular speed of the coordinate system ω K = ω sψ . In this case the coordinate system is<br />
oriented along the space vector of the rotor flux linkages ψ r (see fig. 6.1).<br />
We can assume that:<br />
and<br />
= ψ<br />
r r ψ rx<br />
(6.1)<br />
ψ =<br />
ψ = 0<br />
(6.2)<br />
ry<br />
Let us assume, moreover, that it is a cage motor, i.e.<br />
u u = 0<br />
(6.3)<br />
rx = ry<br />
120
6. ANN sensorless Field Oriented Conrol of IM<br />
β<br />
Y<br />
isβ<br />
is<br />
ψ R<br />
X<br />
δ<br />
isx<br />
i sy<br />
γ s<br />
α<br />
isα<br />
Fig. 6.1. Vector diagram of induction motor<br />
If we for the sake of simplicity omit the equation of stator voltage (current control),<br />
than the rest of equation we can write as:<br />
d r r<br />
T<br />
r<br />
N = −<br />
dt xr<br />
dωm<br />
x<br />
T<br />
M<br />
M =<br />
dt xr<br />
r<br />
ψ<br />
ω = ω<br />
sψ<br />
−<br />
ω<br />
ψ<br />
ψ<br />
rr<br />
r + xM<br />
isα<br />
xr<br />
risy<br />
− mL<br />
rr<br />
xM<br />
m =<br />
xr<br />
isy<br />
ψ<br />
r<br />
(6.4)<br />
From these equations, it can be noted, that i sx is control signal of rotor flux dynamic<br />
and i sy is control signal of electromagnetic torque m, where<br />
x<br />
m = M<br />
ψ risy<br />
(6.5)<br />
xr<br />
and ω r is a slip frequency.<br />
121
6. ANN sensorless Field Oriented Conrol of IM<br />
The whole description of the motor (with stator voltage equations) can be calculated<br />
as follows:<br />
TN<br />
TN<br />
TN<br />
TN<br />
ψ<br />
d r rr<br />
r<br />
= − ψ<br />
r<br />
r + xM<br />
isx<br />
dt xr<br />
xr<br />
2 2<br />
disx<br />
xM<br />
rr<br />
xr<br />
rs<br />
+ xM<br />
r<br />
= ψ<br />
r<br />
r −<br />
isx<br />
+ ωmisy<br />
+<br />
dt 2<br />
2<br />
σxs<br />
xr<br />
οxs<br />
xr<br />
2<br />
r i<br />
r sy 1<br />
xM<br />
+ usx<br />
xr<br />
ψ r σxs<br />
di<br />
2 2<br />
sy xM<br />
xr<br />
rs<br />
+ xM<br />
r<br />
= − ω<br />
r<br />
mψ<br />
r −ωmisx<br />
−<br />
isy<br />
−<br />
dt σxs<br />
x<br />
2<br />
r<br />
οxs<br />
xr<br />
r i<br />
r sxisy<br />
1<br />
xM<br />
+ usy<br />
xr<br />
ψ r σxs<br />
dθ<br />
r i<br />
r sy<br />
= ωm<br />
+ xM<br />
dt xr<br />
ψ r<br />
(6.6)<br />
Where<br />
⎛ψ<br />
rβ<br />
⎞<br />
θ = arctan ⎜<br />
⎟<br />
(6.7)<br />
⎝ψ<br />
rα<br />
⎠<br />
is the phase position of the ψ r space vector in α-β coordinates.<br />
The block scheme, which represents equations Eq. 6.4, is shown in Fig. 6.2.<br />
If we compare this system and the separately excited dc we can note some similarities.<br />
In x-y frame the rotor flux ψ r is at rest and is directed along x-axis. If the stator<br />
current rotate with the synchronous angular speed (steady state), then we obtain<br />
motionless vectorial graph in the field coordinates x-y<br />
122
6. ANN sensorless Field Oriented Conrol of IM<br />
Fig. 6.2. Block diagram of induction motor in x--y field coordinates<br />
These considerations give us the following analogies:<br />
• i sx component of the stator current vector in induction motor corresponds<br />
to the exciting current in the separately excited dc motor,<br />
• i sy component of the rotor current vector in induction motor corresponds<br />
to the armature current in the separately excited dc motor.<br />
123
6. ANN sensorless Field Oriented Conrol of IM<br />
The basic control properties of induction motor can be presented as:<br />
• The relationship between i sx component and rotor flux ψ r is not static. The<br />
dynamic is represented by the first order system with the rotor time<br />
constant T r , where:<br />
x<br />
T r<br />
r = TN<br />
(6.8)<br />
rr<br />
therefore, i sx component is equal to the magnetizing current<br />
iMr<br />
ψ<br />
= r<br />
(6.9)<br />
xM<br />
only in steady state,<br />
• The torque m and flux ψ r are dependent on the stator current vector i s and<br />
cannot be controlled independent,<br />
• It is good idea to make decoupling, in such a way, that the change of i sx<br />
component does not influence on i sy component and vice versa. In this case<br />
we can control rotor flux using i sx control signal, and torque using i sy . If we<br />
additionally keep the value of i sx as constant, the situation is analogous to<br />
the separately excited dc motor.<br />
124
6. ANN sensorless Field Oriented Conrol of IM<br />
6.2 Block scheme description<br />
6.2.1 General description<br />
The basics of the field-oriented control have been presented in the previous section.<br />
The main feature of this approach is the coordinate transformation, which allows to<br />
calculate the decoupled field oriented coordinates i sx , i sy of the vector stator current to<br />
the fixed stator frame i sα ,i sβ :<br />
i sα = i sx cosγ s - i sy sinγ s<br />
i sβ = i sx sinγ s + i sy cosγ s<br />
(6.10a)<br />
(6.10b)<br />
Depending to the way of rotor flux angle calculations one can distinguish two kinds of<br />
field oriented control:<br />
• Direct field oriented control (DFOC) (Fig. 6.3)<br />
• Indirect field oriented control (IFOC) (Fig. 6.4)<br />
DIRECT FIELD ORIENTED CONTROL<br />
REFERENCE<br />
FLUX<br />
REFERENCE<br />
TORQUE<br />
FIELD<br />
ORIENTED<br />
CONTROLLER<br />
INVERTER<br />
IM<br />
γ s<br />
VOLTAGE<br />
ROTOR FLUX<br />
MEASURMENT OR<br />
ESTIMATION<br />
CURRENT<br />
ωm<br />
TACHO<br />
Fig. 6.3. Structure of direct field oriented control (DFOC)<br />
125
6. ANN sensorless Field Oriented Conrol of IM<br />
INDIRECT FIELD ORIENTED CONTROL<br />
REFERENCE<br />
FLUX<br />
REFERENCE<br />
TORQUE<br />
FIELD<br />
ORIENTED<br />
CONTROLLER<br />
INVERTER<br />
VOLTAGE<br />
CURRENT<br />
IM<br />
γ s<br />
∫<br />
ω S<br />
SLIP<br />
FREQUENCY<br />
CALCULATION<br />
ω r<br />
+<br />
+<br />
ω m<br />
TACHO<br />
Fig. 6.4. Structure of indirect field oriented control (IFOC)<br />
In DFOC system (Fig. 6.3.) the rotor flux vector is directly measured or estimated<br />
from stator voltages and currents. The rotor flux vector angle is then calculated from<br />
the rotor flux coordinates.<br />
In IFOC system (Fig. 6.4.) the rotor flux angle γ S is estimated using the reference<br />
values of flux and torque (the slip frequency model) and the value of mechanical<br />
speed ω m .<br />
γ S = ∫ (ω m + ω r ) dt ; (6.11)<br />
and<br />
r i<br />
r syc<br />
ω r =<br />
(6.12)<br />
xr<br />
isxc<br />
126
ω<br />
r<br />
6. ANN sensorless Field Oriented Conrol of IM<br />
6.2.2 Description of block schemes implemented in practice<br />
In previous subsection the general schemes of the direct and indirect field oriented<br />
control have been presented. Now the more detailed description of the control<br />
structure will be discussed.<br />
In the Fig. 6.5 block diagram of DFOC is shown. Note that as speed controller the PI<br />
regulator is used. The current regulators control currents in field oriented frame.<br />
These regulators are decoupled. The structure and the way of tuning these regulators<br />
will be presented in the next section.<br />
ω re<br />
f<br />
Ψref Ψrc 1<br />
x M<br />
ω re<br />
f<br />
-<br />
ω m<br />
Ψr<br />
PI<br />
me c<br />
u sxc<br />
αβ<br />
u sαc<br />
i sxc<br />
xy<br />
αβ<br />
-<br />
PI<br />
1 i syc<br />
u syc<br />
αβ<br />
u sβc γ<br />
Ψ u u,<br />
s<br />
rc<br />
- sinγ cos γ<br />
γ S<br />
sinγ<br />
u<br />
cosγ<br />
sαc<br />
u sβc<br />
sinγ cosγ<br />
i sx<br />
xy<br />
αβ<br />
i sy<br />
DECOUPLED PI<br />
CURRENT CONTROL<br />
ABC<br />
γ u<br />
u s<br />
VECTOR<br />
MODULATOR<br />
U , I<br />
2/3<br />
S A<br />
S B<br />
S C<br />
u dc<br />
VSI<br />
IM<br />
~<br />
u sαc<br />
i sα<br />
u sβc<br />
FLUX<br />
ESTIMATOR<br />
i sβ<br />
Ψr<br />
ω m<br />
Fig. 6.5. Block scheme of the direct field oriented (DFOC)<br />
In the Fig. 6.6. the block scheme of the indirect field oriented control is presented.<br />
The control blocks are similar to these presented in Fig. 6.5. Only difference is the<br />
way of coordinates transformation calculation as it was mentioned in previous<br />
subsection.<br />
127
6. ANN sensorless Field Oriented Conrol of IM<br />
Ψref<br />
ω s<br />
ω ref<br />
-<br />
PI<br />
me c<br />
Ψrc<br />
1<br />
Ψ rc<br />
1<br />
1<br />
i sxc<br />
XM<br />
i syc<br />
-<br />
-<br />
DECOUPLED PI<br />
CURRENT CONTROL<br />
u sxc<br />
u syc<br />
sinγ<br />
xy<br />
αβ<br />
u sαc<br />
u sβc<br />
cosγ<br />
γ u<br />
u<br />
γ s<br />
u , u s<br />
αβ<br />
VECTOR<br />
MODULATOR<br />
S A<br />
S B<br />
S C<br />
u dc<br />
VSI<br />
i sy<br />
i sx<br />
sinγ<br />
sinγ<br />
cosγ<br />
xy<br />
αβ<br />
cosγ<br />
γ S<br />
1/s<br />
ω s<br />
U , I<br />
IM<br />
~<br />
i sα<br />
i sβ<br />
1<br />
T i<br />
r sxc<br />
u sαc<br />
u sβc<br />
ω m<br />
ω m<br />
ω m<br />
αβ<br />
ABC<br />
2/3<br />
ω r<br />
Fig. 6.6. Block scheme of the Indirect Field Oriented Control (IFOC)<br />
ω ref<br />
Ψref Ψrc 1<br />
ω s<br />
XM<br />
me c 1 i syc<br />
PI<br />
Ψ rc<br />
-<br />
^ ω m<br />
1/s<br />
1<br />
T r<br />
i sxc<br />
ω s<br />
i sxc<br />
-<br />
-<br />
DECOUPLED PI<br />
CURRENT CONTROLLERS<br />
u sxc<br />
u syc<br />
xy<br />
αβ⎺<br />
αβ<br />
u sαc<br />
u sβc<br />
si n γs<br />
cosγ s<br />
γ S sin γs<br />
cos γs<br />
si n γ cosγ<br />
s<br />
s<br />
i i<br />
sx<br />
sα<br />
xy<br />
i sy<br />
i sβ<br />
αβ<br />
u s<br />
γ u<br />
u sαc<br />
u sβc<br />
αβ<br />
ABC<br />
γ u<br />
u s<br />
VECTOR<br />
MODULATOR<br />
U , I<br />
2/3<br />
S A<br />
S B<br />
S C<br />
u dc<br />
VSI<br />
IM<br />
~<br />
ω r<br />
^ ω m<br />
u sαc<br />
u sβc<br />
ANN BASED<br />
SPEED<br />
ESTIMATOR<br />
i sα<br />
i sβ<br />
Fig. 6.7. Block scheme of the speed sensorless Indirect Field Oriented Control (IFOC)<br />
with ANN based speed estimator<br />
128
6. ANN sensorless Field Oriented Conrol of IM<br />
In the Fig. 6.7. the block scheme of sensorless indirect field oriented control is shown.<br />
As the speed estimator is used neural network based system described in chapter 5.<br />
This system has been implemented in laboratory. The results obtained in experiments<br />
will be described in the next chapter.<br />
6.3 Design of current controller<br />
6.3.1 Introduction<br />
In this section the design methodology for the current regulators will be presented.<br />
The current regulators are very important part of the field oriented based control<br />
systems (see Fig. 6.5—Fig. 6.7). The good dynamic behavior and proper results in<br />
steady state operation are desired to good operation of the whole system.<br />
The review of current regulators has been presented in chapter four. In this section our<br />
interest is limited to the linear PI controllers, and we assume that in the system exists<br />
vector modulator which controls PWM voltage source inverter.<br />
6.3.2 Decoupled current regulators<br />
For decoupled torque and flux control the rotor flux and torque current have to<br />
be properly controlled. The basic requirements for current controllers can be specified<br />
as follows:<br />
• Fast response which assure the high dynamics of the system,<br />
• Overload protection,<br />
• The instantaneous changes of the currents should be controlled,<br />
• Load parameter compensation,<br />
• Sinusoidal waveform.<br />
In practical implementation the PI regulators are used very often because of their<br />
simple structure, simplicity of tuning process and robustness.<br />
129
6. ANN sensorless Field Oriented Conrol of IM<br />
Unfortunately the x and y stator voltage components are coupled to each other. It<br />
means, that any changes of the voltage component in x (y) axes results in changes of<br />
the both current components (x and y). This implies that the classical design methods<br />
of linear and decoupled systems are not valid.<br />
In Fig 6.8 the decoupling system is presented. The more detailed description of this<br />
system will be presented in the further part of this section.<br />
Due to limited dc voltage of the voltage source inverter the PI controllers have to<br />
include anti windup protections. This kind of protection is achieved by updating only<br />
the integral terms as long as saturation in the voltage is not detected.<br />
i syc<br />
i sy<br />
xσ<br />
PI<br />
anti windup<br />
-<br />
u syc<br />
ω s<br />
i sx<br />
xσ<br />
PI<br />
anti windup<br />
+<br />
u sxc<br />
i sxc<br />
Fig. 6.8. The current controllers with decoupling<br />
6.3.3 Controller design for field oriented IM<br />
In the sake of the current regulators synthesis, it is necessary to make analysis of the<br />
voltage equation of field oriented induction motor.<br />
130
6. ANN sensorless Field Oriented Conrol of IM<br />
2 2<br />
disx<br />
xM<br />
rr<br />
xr<br />
rs<br />
+ xM<br />
r<br />
T<br />
r<br />
N = ψ r −<br />
isx<br />
+ ωmisy<br />
+<br />
dt 2<br />
2<br />
σxs<br />
xr<br />
οxs<br />
xr<br />
2<br />
r i<br />
r sy 1<br />
xM<br />
+ usx<br />
xr<br />
ψ r σxs<br />
di<br />
2 2<br />
sy xM<br />
xr<br />
rs<br />
+ xM<br />
r<br />
T<br />
r<br />
N = − ωmψ<br />
r −ωmisx<br />
−<br />
isy<br />
−<br />
dt σxs<br />
x<br />
2<br />
r<br />
οxs<br />
xr<br />
r i<br />
r sxisy<br />
1<br />
xM<br />
+ usy<br />
xr<br />
ψ r σxs<br />
dθ<br />
r i<br />
r sy<br />
ωsψ = TN<br />
= ωm<br />
+ xM<br />
dt xr<br />
ψ r<br />
(6.13)<br />
The first two equations we can rewrite in complex form:<br />
σ x<br />
s<br />
T<br />
N<br />
r<br />
j<br />
x<br />
r<br />
di<br />
r<br />
dt<br />
x<br />
s<br />
M<br />
x<br />
+<br />
2<br />
r<br />
r<br />
r<br />
s<br />
2<br />
xM<br />
rr<br />
2<br />
r<br />
+<br />
x<br />
isy<br />
σxs<br />
i<br />
ψ<br />
s<br />
i<br />
x<br />
=<br />
x<br />
M<br />
r<br />
s<br />
+ jω<br />
σx<br />
i<br />
⎛ r<br />
⎜<br />
⎝ x<br />
r<br />
r<br />
m<br />
s<br />
− jω<br />
m<br />
s<br />
+<br />
⎞<br />
⎟ψ<br />
r<br />
⎠<br />
+ u<br />
s<br />
(6.14)<br />
and because the last equation in Eq. 6.13 is fulfilled, the equation Eq. 6.14 has the<br />
following form<br />
σ x<br />
s<br />
T<br />
N<br />
x<br />
=<br />
x<br />
di<br />
dt<br />
M<br />
r<br />
s<br />
x<br />
+<br />
⎛ r<br />
⎜<br />
⎝ x<br />
r<br />
r<br />
2<br />
r<br />
r<br />
s<br />
− jω<br />
2<br />
xM<br />
rr<br />
2<br />
r<br />
+<br />
x<br />
m<br />
⎞<br />
⎟ψ<br />
r<br />
⎠<br />
i<br />
s<br />
+ u<br />
+<br />
s<br />
jω<br />
σx<br />
s<br />
s<br />
i<br />
s<br />
(6.15a)<br />
If we introduce notation<br />
131
6. ANN sensorless Field Oriented Conrol of IM<br />
r<br />
im<br />
=<br />
x<br />
xσ = σx<br />
2<br />
r rs<br />
s<br />
+ x<br />
x<br />
2<br />
r<br />
2<br />
M rr<br />
(6.15b)<br />
finally we obtain<br />
x<br />
di<br />
x ⎛ r ⎞<br />
+<br />
⎝ ⎠<br />
s<br />
M r<br />
σ TN<br />
+ rimis<br />
+ jωs<br />
x σ is<br />
= j m u<br />
r s<br />
dt<br />
x<br />
⎜ − ω<br />
r x<br />
⎟ψ<br />
(6.16)<br />
r<br />
Eq. 6.16. can be rewritten in the matrix form:<br />
⎡usx<br />
⎤ ⎡sx<br />
+ rim<br />
⎢ ⎥ = ⎢<br />
⎣<br />
usy<br />
⎦ ⎣ ωsxσ<br />
⎡ xM<br />
rr<br />
⎤<br />
− ω<br />
−<br />
⎤⎡<br />
⎤ ⎢ r<br />
s x i<br />
ψ<br />
σ sx x ⎥<br />
⎥⎢<br />
⎥ + r<br />
sx + ⎢ x ⎥<br />
σ rim<br />
⎦⎣<br />
isy<br />
⎦<br />
M<br />
⎢−<br />
ωmψ<br />
r ⎥<br />
⎣ xr<br />
⎦<br />
σ<br />
2<br />
(6.17)<br />
Note that this system is coupled because the matrix is not diagonal. Therefore it is<br />
impossible to control both current components separately. In this section the part of<br />
the Eq. 6.17. with the rotor flux will be treated as the constant distortion and will be<br />
not taken into account in the dynamic behaviour investigation. Let us call the output<br />
signals of the v x and v y respectively. If we omit the part with rotor flux the equation<br />
Eq. 6.17 obtains the following form<br />
⎡usx<br />
⎤ ⎡vx<br />
⎤ ⎡−ωs<br />
xσ<br />
isy<br />
⎤<br />
⎢ ⎥ = ⎢ ⎥ + ⎢ ⎥<br />
⎣<br />
usy<br />
⎦ ⎣<br />
v y ⎦ ⎣ ωs<br />
xσ<br />
isx<br />
⎦<br />
(6.18)<br />
and<br />
⎡vx<br />
⎤ ⎡sxσ<br />
+ rim<br />
⎢ ⎥ = ⎢<br />
⎣<br />
v y ⎦ ⎣ 0<br />
0 ⎤⎡isx<br />
⎤<br />
⎥⎢<br />
⎥<br />
sxσ<br />
+ rim<br />
⎦⎣<br />
isy<br />
⎦<br />
(6.19)<br />
The whole current controller with decoupling in Fig. 6.8 is presented. The matrix<br />
transfer function of the decoupled current controlled induction motor is equal<br />
132
6. ANN sensorless Field Oriented Conrol of IM<br />
⎡ 1<br />
⎤<br />
⎢<br />
0<br />
sx + r<br />
⎥<br />
G s<br />
im<br />
o = ⎢ σ 1<br />
( )<br />
⎥ = I<br />
(6.20)<br />
⎢<br />
1<br />
0<br />
⎥ sxσ<br />
+ rim<br />
⎢⎣<br />
sxσ<br />
+ rim<br />
⎥⎦<br />
where I is identity matrix.<br />
6.3.4 Internal model control<br />
6.3.4.1 General description of Internal Model Control<br />
The structure of internal model control is presented in Fig. 6.9. In this approach the<br />
internal model G i (s) is used in parallel; with controlled object G o (s). Additional the<br />
IMC controller C(s) is used in outer loop. Note that G o (s), G i (s) and C(s) are transfer<br />
function matrices.<br />
r(t)<br />
+<br />
-<br />
C(s)<br />
u(t)<br />
G(s)<br />
y(t)<br />
G i<br />
(s)<br />
-<br />
+<br />
Fig. 6.9. The basic scheme of IMC regulator<br />
133
6. ANN sensorless Field Oriented Conrol of IM<br />
G r<br />
(s)<br />
r(t)<br />
+<br />
+<br />
+<br />
C(s)<br />
u(t)<br />
G(s)<br />
y(t)<br />
G i<br />
(s)<br />
Fig. 6.10. Equivalent scheme in classic control structure<br />
There is interesting that this scheme is the special case of the classical control<br />
structure (see Fig. 6.10), where the regulator has the following transfer function.<br />
G r (s)=[I-C(s) G i (s)] -1 C(s) (6.21)<br />
Additional we assume that internal model is exactly the same like the controlled<br />
object i.e.<br />
G i (s)=G o (s) (6.22)<br />
In this case closed-loop system has the following transfer function<br />
G c (s)=G o (s)C(s) (6.23)<br />
Note, that if we assume the closed loop transfer function as multivariable first orders<br />
system i.e.<br />
1<br />
G c ( s)<br />
= LP(<br />
s)<br />
= I<br />
(6.24)<br />
1 + τs<br />
then the behavior of the system is dependent only on one time constant, and the tuning<br />
is very simple.<br />
134
6. ANN sensorless Field Oriented Conrol of IM<br />
6.3.4.2 Design of current loop with internal model approach<br />
In the case of induction motor, after decoupling the open loop transfer function is<br />
defined by equation Eq. 6.20. If we substitute this formula to equation Eq. 6.21 and<br />
assume the closed loop system defined by equation Eq. 6.24, we can obtain<br />
⎡ 1 ⎤<br />
Gr<br />
( s)<br />
=<br />
⎢<br />
I − I<br />
⎣ 1+<br />
τs<br />
⎥<br />
⎦<br />
−1<br />
G<br />
−1<br />
o<br />
1 sx r<br />
s<br />
σ +<br />
( ) =<br />
1+<br />
τs<br />
τs<br />
im<br />
I<br />
(6.25)<br />
or in different form<br />
⎡ ⎤<br />
x ⎢ ⎥<br />
Gr<br />
s =<br />
σ 1<br />
( )<br />
⎢<br />
1+<br />
I<br />
x ⎥<br />
(6.26)<br />
τ σ<br />
⎢ s<br />
⎣ r im<br />
⎥<br />
⎦<br />
It means that to control i sx and i sy currents we should use the PI controllers with the<br />
same parameters<br />
K pc<br />
=<br />
xσ<br />
x<br />
, Tic<br />
= σ TN<br />
(6.27)<br />
τ<br />
rim<br />
where the K pc is the gain factor of the PI controller, and T ic is the time constants of this<br />
controller.<br />
Note that in this case we have the desired transfer function of the closed loop system<br />
(Eq. 6.24) which is useful in tuning of the speed control part. Furthermore because of<br />
this that decoupled system is the first order system, we do not need to use more<br />
complicated regulators. As result the design of PI controller is unique.<br />
135
6. ANN sensorless Field Oriented Conrol of IM<br />
6.4 Design of speed controller<br />
6.4.1 Introduction<br />
In Fig. 6.11 the simplified scheme of the speed controller is shown. The error between<br />
speed reference and measured speed (or estimated speed in the case of speed<br />
sensorless control) is feed to PI regulator which output is torque command. Using the<br />
current controller described in previous section the whole electrical part of induction<br />
motor is reduced to the first order system with time constant τ.<br />
K p<br />
T i ττ T M<br />
K o<br />
m e<br />
ω mref<br />
ω m<br />
Fig. 6.11. The simplified diagram of speed controller<br />
The mechanical part is represented by the integrator with mechanical time constant,<br />
which is created due the inertia of the rotor. The transfer function of the open loop<br />
system is given by the following formula<br />
K<br />
G s o<br />
o( ) =<br />
(6.28)<br />
sTM<br />
( 1 + sτ )<br />
The continues PI regulator has the transfer function which is shown in equation<br />
⎛ 1 ⎞<br />
Gc( s)<br />
= K p<br />
⎜1<br />
+<br />
⎟<br />
(6.29)<br />
⎝ Ti<br />
s ⎠<br />
In the case of such system very often the symmetry or modulus criterion are used.<br />
136
6. ANN sensorless Field Oriented Conrol of IM<br />
Other method is very good known in classical control theory Ziegler-Nichols method<br />
(in continues case) or similar to this method Takahashi algorithm (in discrete case).<br />
6.4.2 Design methods<br />
6.4.2.1 Symmetry and modulus criterion<br />
The most popular criterions in tuning PI regulators in drive system are symmetry and<br />
modulus criterion. In speed control the symmetry criterion is used more often then<br />
modulus criterion. The parameters of PI controllers tuned using these criterions are<br />
collected in the Table 6.1<br />
K p /K o<br />
Modulus<br />
Criterion<br />
T M<br />
2τ<br />
Table 6.1. Modulus and symmetry criterions<br />
Discrete<br />
Modulus<br />
Criterion<br />
0.5<br />
TM<br />
− Ts<br />
2τ + Ts<br />
Symmetry<br />
Criterion<br />
T M<br />
2τ<br />
Discrete<br />
Symmetry<br />
Criterion<br />
2τ<br />
TM<br />
+ Ts<br />
T i T M T M -0.5T s 4τ 4τ+2T s<br />
Where T s is the sampling time in discrete regulator.<br />
Note, that in the case of symmetry criterion the additional first order filter of the<br />
reference value is used. Time constant of this filter should be equal T i .<br />
For T M < 4τ the modulus criterion is more useful,<br />
For τ
6. ANN sensorless Field Oriented Conrol of IM<br />
Table 6.2. Ziegler-Nichols algorithm<br />
K p /K o T i T D<br />
P<br />
PI<br />
PID<br />
T M<br />
τ<br />
0 .9 T M<br />
τ<br />
1 .2 T M<br />
τ<br />
3.3 τ<br />
2 τ 0.5 τ<br />
Table 6.3. Takahashi algorithm<br />
K p /K o T p /T i T D /T p<br />
P<br />
τ<br />
TM<br />
+ Ts<br />
0.9TM<br />
0. 135TM<br />
Ts<br />
0. 27T<br />
PI −<br />
M TsKo<br />
τ + 0.5T<br />
( 0.5 )<br />
2<br />
2<br />
τ + T K ( τ + 0.5 T )<br />
s<br />
s<br />
p<br />
s<br />
1.2TM<br />
0. TM<br />
Ts<br />
6T<br />
PID −<br />
M TsKo<br />
τ + 0.5T<br />
( )<br />
2<br />
2<br />
τ +<br />
30.5 T K<br />
0.( τ + 0.5 T )<br />
s<br />
s<br />
p<br />
s<br />
0 .5<br />
TM<br />
Ko<br />
K pTs<br />
6.4.2.3 PI and IP controllers<br />
Instead of the PI controller sometimes is better use the IP controller, which is similar<br />
to PI. In this controller only the error signal is integrated and the proportional part is<br />
applied to the output signal (see Fig. 6.12).<br />
r<br />
K p<br />
T i<br />
s<br />
PLANT<br />
y<br />
K p<br />
Fig. 6.12. The block diagram of IP controller<br />
138
6. ANN sensorless Field Oriented Conrol of IM<br />
It is easy to show, that IP controller is equivalent to PI regulator with the first order<br />
filter in the input. The equivalent circuit is shown in Fig. 6.13.<br />
r<br />
T i<br />
K p<br />
T i<br />
PLANT<br />
y<br />
Fig. 6.13. The equivalent of IP controller<br />
Note that:<br />
1. The controller tuned by the symmetry could be build using the IP structure<br />
2. Where we add to the remain groups of PI controllers first order filter in the input<br />
we can obtain lower overshooting. This give us the possibility to use IP regulator<br />
with the same tuning criterions like in PI case.<br />
6.5 Rotor and stator resistance adaptation<br />
6.5.1 Introduction<br />
The speed estimator, which is used in the system presented in Fig. 6.7. was<br />
presented in section 5.3. It is easy to see that the following motor parameters have the<br />
influence on this estimator:<br />
• Rotor resistance r r ,<br />
• Stator resistance r s ,<br />
• Main inductance x M ,<br />
• Leakage inductance σx s .<br />
Two of these parameters x M and σx s do not vary with temperature, and can be<br />
measured precisely. Therefore, the main problem is to make speed identification<br />
robust to stator and rotor resistance variations. The solution of this task is to apply the<br />
139
6. ANN sensorless Field Oriented Conrol of IM<br />
same neural network (Eq. 5.23), which was used for speed estimation. Unfortunately,<br />
it is impossible to calculate at the same time instant the value of motor speed and the<br />
rotor resistance (or rotor time constant). The reason of this phenomenon can be<br />
explained based on Fig. 5.13 and Fig. 6.7. It is obvious, that the neural network must<br />
set the value of mechanical speed in the way, which assure correct field-oriented<br />
current transformation. Therefore, the estimated synchronous speed and the load angel<br />
δ should have the correct value. These conditions we can write in the following form:<br />
ω<br />
s<br />
isy<br />
= ˆ ωs<br />
and tg(<br />
δ ) = = Trωr<br />
= Tˆ<br />
r ˆ ωr<br />
(6.30)<br />
isx<br />
From these equations we can conclude that:<br />
• It is impossible to separate the rotor time constant and slip frequency.<br />
• Even, if the rotor time constant is not correct, the current transformation work still<br />
good and there is no influence on the torque production.<br />
• The error of the speed in closed loop caused by the rotor time constant mismatch<br />
is as follows:<br />
⎛ T −<br />
m<br />
1<br />
r<br />
( ˆ )<br />
e<br />
ω = ⎜ ⎟<br />
ω<br />
ˆ r = rr<br />
− rr<br />
T<br />
(6.31)<br />
2<br />
⎝ r ⎠<br />
ψ r<br />
e<br />
⎞<br />
Note, that this error is small, in high speed region with the small value of the load<br />
torque. The influence of the speed and load torque on the speed estimation error is<br />
presented in Fig. 6.14 and Fig.6.15.<br />
6.5.2 Stator resistance adaptation<br />
Stator resistance can be obtained using the same ANN scheme (Fig. 5.13.), which<br />
was constructed to the speed estimation. In this case the Eq. 5.23. can be written as:<br />
140
6. ANN sensorless Field Oriented Conrol of IM<br />
rˆ<br />
Fig. 6.14. The relative speed estimation error for r = 0.7, 0.85,1.15, 1.3<br />
rr<br />
Motor load torque m L =0.2<br />
respectively<br />
rˆ<br />
Fig. 6.14. The relative speed estimation error for r = 0.7, 0.85,1.15, 1.3<br />
rr<br />
Motor load torque m L =0.5.<br />
respectively<br />
141
6. ANN sensorless Field Oriented Conrol of IM<br />
ˆ<br />
x T<br />
i ( k)<br />
=<br />
M<br />
s<br />
x σx<br />
T<br />
⎡ 1<br />
⎢ 1−<br />
⎣ σx<br />
s<br />
r<br />
s<br />
⎛ T<br />
⎜rs<br />
⎝ T<br />
s<br />
N<br />
s<br />
r<br />
( Ψ<br />
⎞⎤<br />
⎟⎥i<br />
⎠⎦<br />
s<br />
r<br />
( k −1)<br />
− x<br />
T<br />
( k −1)<br />
+<br />
s<br />
T σx<br />
N<br />
M<br />
T<br />
i ( k −1))<br />
− j<br />
s<br />
s ωm<br />
T<br />
s<br />
u ( k −1)<br />
s<br />
N<br />
Ψ ( k −1)<br />
+<br />
r<br />
(6.32)<br />
This equation can be rewrite in NN form, with one weight w 3 including r s and one<br />
weight proportional to mechanical speed ω m (w 2 ).<br />
iˆ<br />
s ( k)<br />
= w1<br />
( ψ ( k −1)<br />
− xM<br />
is<br />
( k −1))<br />
+ w2<br />
jψ<br />
( k −1)<br />
+<br />
r<br />
r<br />
w3i<br />
s ( k −1)<br />
+ w4us<br />
( k −1)<br />
(6.33)<br />
It is possible to estimate the mechanical speed and stator resistance in one time, using<br />
back-propagation learning algorithm for the ANN defined by Eq. 6.33, and setting<br />
only weights w 2 and w 3 . This approach gives us the adaptation of the stator resistance<br />
in the following form:<br />
rˆ<br />
= rˆ<br />
+ η<br />
α<br />
s<br />
s<br />
1 ( eα isα<br />
+ eβisβ<br />
) − 1∆w<br />
2<br />
(6.34)<br />
where e is defined by Eq. 5.25 and η 1 is the learning rate for stator resistance. This<br />
adaptation should be performed only in low speed region, where the influence of the<br />
stator resistance on the system behaviour is significant. In other situation the<br />
adaptation mechanism should be turn off, because using of this estimator for high<br />
speeds can give not correct value of estimation.<br />
6.5.3 Rotor resistance adaptation<br />
As it was mentioned, it is impossible to estimate rotor resistance and<br />
mechanical speed simultaneously. There are two ways, to omit this problem [135]:<br />
• By adding additional ac signal to flux command component<br />
• By tracking the changes of stator resistor estimated value.<br />
142
6. ANN sensorless Field Oriented Conrol of IM<br />
The first method is more complicated, and it is not very easy for implementation. The<br />
second approach is very simple, but it has the disadvantage that we must know the<br />
ratio of the values of stator and rotor resistance. The changes of these resistances are<br />
caused by the temperature variations. For this reason, there is the good approximation<br />
to assume that this ratio is constant and equal r sr .<br />
The algorithm is as follows:<br />
1) Calculate the estimation of r s according to Eq. 6.34.<br />
2) Calculate the estimation of rotor resistance according to<br />
rˆ = rsrrˆ<br />
s<br />
(6.35)<br />
These calculations are performed only in low speed region, where the influence of<br />
stator resistance is more significant. The adaptation process for speed ω m =0.05 and<br />
load torque m L =0.2 is presented in Fig. 6.36. and Fig. 6.37.<br />
Note that the above procedure is possible only in the proposed ANN presented in<br />
Fig. 5.14. and not possible in structure proposed in [130] (Fig. 5.11).<br />
Fig. 6.36. The r r adaptation process in IFOC system with ANN speed estimator.<br />
Mechanical speed ω m =0.05 and load torque m L =0.2<br />
143
6. ANN sensorless Field Oriented Conrol of IM<br />
Fig. 6.37. The r r adaptation process in IFOC system with ANN speed estimator.<br />
Mechanical speed ω m =0.05 and load torque m L =0.2<br />
144
7. Simulation and experimental results<br />
7. SIMULATION AND EXPERIMENTAL RESULTS<br />
7.1. Introduction<br />
In this chapter the simulation and experimental results obtained in the system<br />
described in Chapter 6 will be shown. The parameters of this system are presented in<br />
Appendix A3. The experimental set-up is described in Appendix A2. The steady state<br />
behaviour as well as the dynamic waveforms will be presented and discussed. The<br />
influence of the learning rate on the speed estimator is shown, and the short<br />
discussion, how to choose this coefficient is made.<br />
7.2. The choice of the learning rate<br />
The influence of learning rate on the NN estimator behaviour in steady state<br />
operation is shown in Fig. 7.1. It can be observed that the higher learning rate causes<br />
bigger ripples in estimated speed. However, the dynamic behaviour of the estimator<br />
with the smaller learning rate could be not correct and the estimated speed could not<br />
follow the real mechanical speed of the induction motor. This situation is presented in<br />
Fig. 7.2., where the dynamic results of the NN speed estimator are shown.<br />
It is possible to conclude that the learning rate should be big enough to achieve fast<br />
response of speed estimator and small enough to avoid big ripples in steady state<br />
operation. In the system, which is presented in this thesis, the value of the learning<br />
rate is assumed η=0.1.<br />
145
7. Simulation and experimental results<br />
Fig. 7.1. Influence of learning rate on the NN estimator behaviour in steady state<br />
(η=0.02, η=0.2, η=2.0 from upper to lower figure respectively).<br />
On the left – experimental results. On the right – simulation results<br />
Fig. 7.2. Influence of learning rate on the NN estimator behaviour in dynamic state<br />
Speed step response: lower fig.-speed from encoder, upper fig.-speed from estimator.<br />
left fig. present results for η=0.01, rigth fig. present results for η=0.001<br />
146
7. Simulation and experimental results<br />
7.3. Steady state behaviour<br />
The simulation and experimental results obtained in steady state for the system<br />
described in the previous chapter are presented in Fig. 7.3-Fig. 7.20.<br />
The first part of these graphs (Fig. 7.3.-Fig. 7.11) corresponds to the system<br />
with measured speed taken to the feedback and coordinate transformation. These<br />
investigations have been performed to show the behaviour of the FOC system,<br />
without influence of the speed estimation. In these graphs estimated speed, stator<br />
phase current, rotor flux component and electromagnetic torque are shown, for<br />
different values of the mechanical speed and load torque. Note that the bahaviour of<br />
the system in steady state is correct and the simulation results are similar to the<br />
experimental ones.<br />
The second part of graphs (Fig. 7.12-Fig. 7.20) corresponds to the system with<br />
estimated speed taken to the feedback and coordinate transformation. These results<br />
confirm the good behaviour of neural network speed estimator.<br />
Figure 7.3 Steady state for the induction motor controlled via FOC with the encoder<br />
speed signal taken to feedback and transformation ( ω m = 0.1p.<br />
u ; m L = 0 p.<br />
u ).<br />
Experimental and simulation results:<br />
1) estimated speed, 2) stator phase current, 3) rotor flux component,<br />
4) electromagnetic torque.<br />
147
7. Simulation and experimental results<br />
Figure 7.4 Steady state for the induction motor controlled via FOC with the encoder<br />
speed signal taken to feedback and transformation ( ω m = 0.5p.<br />
u ; m L = 0 p.<br />
u ).<br />
Experimental and simulation results:<br />
1) estimated speed, 2) stator phase current, 3) rotor flux component,<br />
4) electromagnetic torque.<br />
Figure 7.5 Steady state for the induction motor controlled via FOC with the encoder<br />
speed signal taken to feedback and transformation ( ω m = 1.0p.<br />
u ; m L = 0 p.<br />
u ).<br />
Experimental and simulation results:<br />
1) estimated speed, 2) stator phase current, 3) rotor flux component,<br />
4) electromagnetic torque.<br />
148
7. Simulation and experimental results<br />
Figure 7.6. Steady state for the induction motor controlled via FOC with the encoder<br />
speed signal taken to feedback and transformation ( ω m = 0.1p.<br />
u ; m L = 0.2 p.<br />
u ).<br />
Experimental and simulation results:<br />
1) estimated speed, 2) stator phase current, 3) rotor flux component,<br />
4) electromagnetic torque.<br />
Figure 7.7. Steady state for the induction motor controlled via FOC with the encoder<br />
speed signal taken to feedback and transformation ( ω m = 0.5p.<br />
u ; m L = 0.2 p.<br />
u ).<br />
Experimental and simulation results:<br />
1) estimated speed, 2) stator phase current, 3) rotor flux component,<br />
4) electromagnetic torque.<br />
149
7. Simulation and experimental results<br />
Figure 7.8. Steady state for the induction motor controlled via FOC with the encoder<br />
speed signal taken to feedback and transformation ( ω m = 1.0p.<br />
u ; m L = 0.2 p.<br />
u ).<br />
Experimental and simulation results:<br />
1) estimated speed, 2) stator phase current, 3) rotor flux component,<br />
4) electromagnetic torque.<br />
Figure 7.9. Steady state for the induction motor controlled via FOC with the encoder<br />
speed signal taken to feedback and transformation ( ω m = 0.1p.<br />
u ; m L = 0.5p.<br />
u ).<br />
Experimental and simulation results:<br />
1) estimated speed, 2) stator phase current, 3) rotor flux component,<br />
4) electromagnetic torque.<br />
150
7. Simulation and experimental results<br />
Figure 7.10. Steady state for the induction motor controlled via FOC with the encoder<br />
speed signal taken to feedback and transformation ( ω m = 0.5p.<br />
u ; m L = 0.5p.<br />
u ).<br />
Experimental and simulation results:<br />
1) estimated speed, 2) stator phase current, 3) rotor flux component,<br />
4) electromagnetic torque.<br />
Figure 7.11. Steady state for the induction motor controlled via FOC with the encoder<br />
speed signal taken to feedback and transformation ( ω m = 1.0p.<br />
u ; m L = 0.5p.<br />
u ).<br />
Experimental and simulation results:<br />
1) estimated speed, 2) stator phase current, 3) rotor flux component,<br />
4) electromagnetic torque.<br />
151
7. Simulation and experimental results<br />
Figure 7.12. Steady state for the induction motor controlled via FOC with estimated<br />
speed signal taken to feedback and transformation ( ω m = 0.1p.<br />
u ; m L = 0 p.<br />
u ).<br />
Experimental and simulation results:<br />
1) estimated speed, 2) stator phase current, 3) rotor flux component,<br />
4) electromagnetic torque.<br />
Figure 7.13. Steady state for the induction motor controlled via FOC with estimated<br />
speed signal taken to feedback and transformation ( ω m = 0.5p.<br />
u ; m L = 0 p.<br />
u ).<br />
Experimental and simulation results:<br />
1) estimated speed, 2) stator phase current, 3) rotor flux,<br />
4) electromagnetic torque.<br />
152
7. Simulation and experimental results<br />
Figure 7.14. Steady state for the induction motor controlled via FOC with estimated<br />
speed signal taken to feedback and transformation ( ω m = 1.0p.<br />
u ; m L = 0 p.<br />
u ).<br />
Experimental and simulation results:<br />
1) estimated speed, 2) stator phase current, 3) rotor flux component,<br />
4) electromagnetic torque.<br />
Figure 7.15. Steady state for the induction motor controlled via FOC with estimated<br />
speed signal taken to feedback and transformation ( ω m = 0.1p.<br />
u ; m L = 0.2 p.<br />
u ).<br />
Experimental and simulation results:<br />
1) estimated speed, 2) stator phase current, 3) rotor flux component,<br />
4) electromagnetic torque.<br />
153
7. Simulation and experimental results<br />
Figure 7.16. Steady state for the induction motor controlled via FOC with estimated<br />
speed signal taken to feedback and transformation ( ω<br />
m<br />
= 0.5p.<br />
u ; m L = 0.2 p.<br />
u ).<br />
Experimental and simulation results:<br />
1) estimated speed, 2) stator phase current, 3) rotor flux component,<br />
4) electromagnetic torque.<br />
Figure 7.17. Steady state for the induction motor controlled via FOC with estimated<br />
speed signal taken to feedback and transformation ( ω<br />
m<br />
= 1.0 p.<br />
u ; m L = 0.2 p.<br />
u ).<br />
Experimental and simulation results:<br />
1) estimated speed, 2) stator phase current, 3) rotor flux component,<br />
4) electromagnetic torque.<br />
154
7. Simulation and experimental results<br />
Figure 7.18. Steady state for the induction motor controlled via FOC with estimated<br />
speed signal taken to feedback and transformation ( ω<br />
m<br />
= 0.1p.<br />
u ; m L = 0.5p.<br />
u ).<br />
Experimental and simulation results:<br />
1) estimated speed, 2) stator phase current, 3) rotor flux component,<br />
4) electromagnetic torque.<br />
Figure 7.19. Steady state for the induction motor controlled via FOC with estimated<br />
speed signal taken to feedback and transformation ( ω<br />
m<br />
= 0.5p.<br />
u ; m L = 0.5p.<br />
u ).<br />
Experimental and simulation results:<br />
1) estimated speed, 2) stator phase current, 3) rotor flux component,<br />
4) electromagnetic torque.<br />
155
7. Simulation and experimental results<br />
Figure 7.20. Steady state for the induction motor controlled via FOC with estimated<br />
speed signal taken to feedback and transformation ( ω<br />
m<br />
= 1.0 p.<br />
u ; m L = 0.5p.<br />
u ).<br />
Experimental and simulation results:<br />
1) estimated speed, 2) stator phase current, 3) rotor flux component,<br />
4) electromagnetic torque.<br />
In the end of this subsection the rms of speed estimation error divided by the<br />
measured speed in percent (rms%), and the mean value of error modulus divided by<br />
measured speed in percent (jeps%) as the function of mechanical speed in steady state<br />
is presented. Note, from these graphs (Fig. 7.21, Fig. 7.22.), that in the wide range of<br />
the speed region the estimation error is below 1%. Only for the small values of the<br />
speed and the values lying in neighborhood of the ω m =1 p.u., the error is bigger.<br />
In the small speed region the bigger error is caused by the influence of the rotor flux,<br />
which in this region is calculated not precisely.<br />
The other reason of the bigger estimation error is in high-speed region. In this case the<br />
influence of the sampling time caused, that the calculations for faster signals are<br />
performed with the raised error.<br />
156
7. Simulation and experimental results<br />
Fig. 7.21. The rms%=(e est,rms /ω m )*100% as the function of the mechanical speed in<br />
steady state.<br />
Fig. 7.22. The jeps%=(e est,jeps /ω m )*100% as the function of the mechanical speed in<br />
steady state.<br />
157
7. Simulation and experimental results<br />
7.4. Dynamic behaviour<br />
The simulation and experimental results obtained in dynamic state for the induction<br />
motor controlled via FOC are presented in Fig. 7.23-Fig. 7.40.<br />
The presented graphs, as in previous subsection, are divided into two parts. The first<br />
part of graphs (Fig. 7.23.-Fig. 7.31) corresponds to the system with measured speed,<br />
and the second part (Fig. 7.32-7.40) with the estimated speed, taken to the feedback<br />
and coordinate transformation. The speed step responses and speed reversals are<br />
presented in Fig. 7.23.-Fig. 7.26 and Fig. 7.32.-7.35. respectively. The response time<br />
of the system with estimator is only about 10% longer compare to this one with speed<br />
sensor. Besides, in Fig. 7.27. and Fig.7.36. the load torque step response is drawn. In<br />
these graphs reference and mechanical speed, rotor flux magnitude and<br />
electromagnetic torque are shown. In this case the speed error area is a little bit bigger<br />
in system with estimator. Note, that the bahaviour of the system in dynamic state and<br />
the results confirm the good behaviour of neural network speed estimator.<br />
The rest of graphs (Fig. 7.28-Fig. 7.31 and Fig. 7.37-Fig. 7.40) show the decoupling<br />
of the current controllers in x and y-axes<br />
Figure 7.23. Speed step response for the induction motor controlled via FOC with the<br />
encoder speed signal taken to feedback and transformation ( ω m = 0.0<br />
→ 0. 1).<br />
Experimental and simulation results:<br />
1) reference speed, 2) mechanical speed, 3) rotor flux amplitude,<br />
4) electromagnetic torque.<br />
158
7. Simulation and experimental results<br />
Figure 7.24 Speed step response for the induction motor controlled via FOC with the<br />
encoder speed signal taken to feedback and transformation ( ω m = 0.0<br />
→ 0. 6 ).<br />
Experimental and simulation results:<br />
1) reference speed, 2) mechanical speed, 3) amplitude of rotor flux,<br />
4) electromagnetic torque.<br />
Figure 7.25. Speed reversal for the induction motor controlled via FOC with the<br />
encoder speed signal taken to feedback and transformation ( ω m = −0.1→<br />
0. 1 ).<br />
Experimental and simulation results:<br />
1) reference speed, 2) mechanical speed, 3) amplitude of rotor flux,<br />
4) electromagnetic torque.<br />
159
7. Simulation and experimental results<br />
Figure 7.26. Speed reversal for the induction motor controlled via FOC with the<br />
encoder speed signal taken to feedback and transformation ( ω m = −0.5<br />
→ 0. 5).<br />
Experimental and simulation results:<br />
1) reference speed, 2) mechanical speed, 3) amplitude of rotor flux,<br />
4) electromagnetic torque.<br />
Figure 7.27. Load torque step response for the induction motor controlled via FOC<br />
with the encoder speed signal taken to feedback and transformation ( m L = 0.0<br />
→ 0. 4 ).<br />
Experimental and simulation results:<br />
1) reference speed, 2) mechanical speed, 3) amplitude of rotor flux,<br />
4) electromagnetic torque.<br />
160
7. Simulation and experimental results<br />
Figure 7.28. Decoupling in y-axis with the encoder speed signal taken to feedback and<br />
transformation. Experimental results ( i sxc = 0.1→<br />
0. 5, time=1s):<br />
1) x-axis reference current, 2) x-axis current, 3) y-axis reference current,<br />
4) y-axis current.<br />
Figure 7.29. Decoupling in y-axis with the encoder speed signal taken to feedback and<br />
transformation. Experimental results ( i sxc = 0.1→<br />
0. 5, time=5ms):<br />
1) x-axis reference current, 2) x-axis current , 3) y-axis reference current ,<br />
4) y-axis current<br />
161
7. Simulation and experimental results<br />
Figure 7.30. Decoupling in x-axis with the encoder speed signal taken to feedback and<br />
transformation. Experimental results ( i = −0.3<br />
→ 0. 3, time=1s):<br />
1) x-axis reference current, 2) x-axis current, 3) y-axis reference current,<br />
4) y-axis current.<br />
syc<br />
Figure 7.31. Decoupling in x-axis with the encoder speed signal taken to feedback and<br />
transformation. Experimental results ( i = −0.3<br />
→ 0. 3, time=5ms):<br />
1) x-axis reference current, 2) x-axis current, 3) y-axis reference current,<br />
4) y-axis current.<br />
syc<br />
162
7. Simulation and experimental results<br />
Figure 7.32. Speed step response for the induction motor controlled via FOC with the<br />
estimated speed signal taken to feedback and transformation ( ω m = 0.0<br />
→ 0. 1 ).<br />
Experimental and simulation results:<br />
1) reference speed, 2) mechanical speed, 3) rotor flux amplitude,<br />
4) electromagnetic torque.<br />
Figure 7.33. Speed step response for the induction motor controlled via FOC with the<br />
estimated speed signal taken to feedback and transformation ( ω m = 0.0<br />
→ 0. 6 ).<br />
Experimental and simulation results:<br />
1) reference speed, 2) mechanical speed, 3) rotor flux amplitude,<br />
4) electromagnetic torque.<br />
163
7. Simulation and experimental results<br />
Figure 7.34. Speed reversal for the induction motor controlled via FOC with the<br />
estimated speed signal taken to feedback and transformation ( ω m = −0.1→<br />
0. 1 ).<br />
Experimental and simulation results:<br />
1) reference speed, 2) mechanical speed, 3) amplitude of rotor flux,<br />
4) electromagnetic torque.<br />
Figure 7.35. Speed reversal for the induction motor controlled via FOC with the<br />
estimated speed signal taken to feedback and transformation ( ω m = −0.5<br />
→ 0. 5).<br />
Experimental and simulation results:<br />
1) reference speed, 2) mechanical speed, 3) amplitude of rotor flux,<br />
4) electromagnetic torque.<br />
164
7. Simulation and experimental results<br />
Figure 7.36. Load torque step response for induction motor controlled via FOC with<br />
the estimated speed signal taken to feedback and transformation ( m L = 0.0<br />
→ 0. 4 ).<br />
Experimental and simulation results:<br />
1) reference speed, 2) mechanical speed, 3) amplitude of rotor flux,<br />
4) electromagnetic torque.<br />
Figure 7.37. Decoupling in y-axis with estimated speed signal taken to feedback and<br />
transformation. Experimental results ( i sxc = 0.1→<br />
0. 5, time=1s):<br />
1) x-axis reference current, 2) x-axis current, 3) y-axis reference current,<br />
4) y-axis current.<br />
165
7. Simulation and experimental results<br />
Figure 7.38. Decoupling in y-axis with estimated speed signal taken to feedback and<br />
transformation. Experimental results ( i sxc = 0.1→<br />
0. 5, time=5ms):<br />
1) x-axis reference current, 2) x-axis current, 3) y-axis reference current,<br />
4) y-axis current.<br />
Figure 7.39. Decoupling in x-axis with estimated speed signal taken to feedback and<br />
transformation. Experimental results ( i = −0.5<br />
→ 0. 5 , time=1s):<br />
1) x-axis reference current, 2) x-axis current, 3) y-axis reference current,<br />
4) y-axis current.<br />
syc<br />
166
7. Simulation and experimental results<br />
Figure 7.40. Decoupling in x-axis with estimated speed signal taken to feedback and<br />
transformation. Experimental results ( i = −0.5<br />
→ 0. 5 , time=5ms):<br />
1) x-axis reference current, 2) x-axis current, 3) y-axis reference current,<br />
4) y-axis current.<br />
syc<br />
167
8. Conclusions<br />
8. CONCLUSIONS<br />
The research results presented in this thesis based on the simulation and experimental<br />
investigations can be summarized as follows:<br />
In case of the ANN based PWM current controllers:<br />
ANN COMPARATOR<br />
• The neural network (ANN) based controllers are an interesting alternative to<br />
the conventional regulators;<br />
• The main advantages of the ANN controllers include robustness, learning<br />
ability and insensitiveness to the parameter changes;<br />
• The off-line trained multi-layers nonlinear ANN comparator has operation<br />
characteristics similar to the delta modulators. This is because the feedforward<br />
ANN cannot implement characteristic with hysteresis. Therefore, to obtain<br />
comparable accuracy of the current generation as in controller with three<br />
hysteresis comparators much higher switching frequency has to be applied.<br />
• The simple perceptron based ANN can be applied instead of the multilayer<br />
ANN. The results obtained in these two models are almost the same.<br />
OPTIMAL MODE ANN<br />
• The NN optimal regulator switches only between adjacent active vectors and<br />
zero voltage vectors. There are no ±1 transitions in the line to line voltage<br />
which reduces the stress on the inverter switching devices,<br />
• The RMS current error of the proposed optimal NN regulator is superior to the<br />
conventional Delta Regulator and the NN regulator presented in Section 4.3.<br />
• Three layers feedforward NN is able to regulate PWM inverter output current<br />
very well without on-line calculations needed in the case of the Optimal<br />
Regulator and have almost the same control quality as this optimal regulator.<br />
• The off-line NN can work faster, in the hardware implementation based on<br />
microprocessor or DSP system, compare to the Optimal Regulator. From this<br />
reason one can expect possibility of increasing the PWM frequency.<br />
168
8. Conclusions<br />
In case of the ANN based speed estimator<br />
• Application of artificial NN speed estimators for PWM inverter-fed<br />
induction motors creates many new schemes.<br />
• One of the simplest NN estimator schemes is based on combination of<br />
the voltage and current rotor flux estimation proposed in [115].<br />
• This thesis shows the possibility of improvement of the classical<br />
scheme, using new structure (Section 5.3). The implementation of the<br />
improved system and new NN method based on digital signal processor<br />
TMS320C31 is presented and experimental results are shown.<br />
• The speed tracking by the ANN based estimator is good in steady state<br />
and in dynamical state.<br />
In the case of the sensorless Field Oriented Control (FOC)<br />
• The steady state operation and dynamical behaviour is correct.<br />
• There is a very fast torque response,<br />
• The system allows the independent control of rotor flux and motor<br />
torque,<br />
• There is no problem with start and stop of the system,<br />
• Even without speed sensor the system behaviour is correct in low speed<br />
region,<br />
• Sensorless FOC of induction motor, described in this thesis, could be<br />
used in the high performance motor drives of the electrical vehicles (for<br />
example hybrid cars) and in the factories, in which the measurement of<br />
the mechanical speed is expensive or even impossible<br />
169
References<br />
REFERENCES<br />
Books and Overview Papers<br />
[1] B. K. Bose, Power Electronics and Variable Frequency Drives. IEEE Press,<br />
1996.<br />
[2] B. K. Bose, Power electronics and electrical AC drives. Englewood Cliffs,<br />
Prentice Hall, 1986.<br />
[3] D. M. Brod and D.W. Novotny, "Current control of VSI-PWM inverters", IEEE<br />
Trans. on Ind. Appl., vol. IA-21, No. 4, pp. 562-570, 1985.<br />
[4] H. W. van der Broeck, H. Ch. Skudelny and G. Stanke, "Analysis and<br />
realization of a pulse width modulator based on voltage space vectors". IEEE<br />
Trans. Ind. Appl., vol. 24, No. 1, pp. 142-150, 1988.<br />
[5] H. Bühler, Einführung in die Theorie geregelter Drehstrom-Antriebe, Bd. 1, Bd.<br />
2. Basel - Stuttgart, Birkhauser, 1977.<br />
[6] H. Ertl, J. W. Kolar and F. C. Zach, "Analysis of different current control<br />
concepts for forced commutated rectifier (FCR)" in PCI Conf. Proc., pp.<br />
195-217, 1986.<br />
[7] J. Holtz, W. Lotzkat and A. M. Khambadadkone, "On continous control of<br />
PWM inverters in the overmodulation range including the six-step mode", in<br />
IEEE Trans. on Power Electronics, vol. 8, No. 4, pp.540-553, 1993.<br />
[8] J. Holtz, "Pulsewidth modulation for electronic power conversion", in Proc. of<br />
the IEEE, vol. 82, No. 8, Aug., pp. 1194-1214, 1994.<br />
[9] F. Jenni, D. Wüst, Steuerverfahren für selbstgeführte Stromrichter. B.G.<br />
Teubner, Stuttgart, 1995.<br />
[10] D. Jouve, J. P. Rognon, D. Roye, "Effective Current and Speed Controllers for<br />
Permanent Magnet Machines: A Survey", in IEEE-APEC Conf., pp. 384-393,<br />
1990.<br />
[11] M. P. Kazmierkowski, M. A. Dzieniakowski, "Review of Current Regulation<br />
Methods for VS-PWM inverters", in IEEE-IECON'94 Conf. Rec., pp. 567-575,<br />
1994.<br />
[12] M. P. Kazmierkowski, H. Tunia, Automatic Control of Converter-Fed Drives.<br />
Amsterdam, ELSEVIER, 1994.<br />
[13] D. C. Lee, S. K Sul and M. H. Park, "Comparison of AC current regulators for<br />
IGBT inverter". PCC'93 Conf. Rec., Yokohama, pp. 206-212, 1993.<br />
[14] W. Leonhard, Control of Electrical Drives. Springer Verlag, Berlin, Second<br />
Edition, 1996.<br />
[15] L. Malesani and P. Tomasin, "PWM current control techniques of voltage<br />
source converters - a survey". IEEE IECON'93 Conf. Rec., Maui, Hawaii, pp.<br />
670-675, 1993.<br />
[16] J. D. M. Murphy and F. G. Turnbull, Control Power Electronics of AC Motors.<br />
Pergamon Press, 1988.<br />
[17] D. W. Novotny and T. A. Lipo, Vector Control and Dynamics of AC Drives,<br />
Clarendon Press, Oxford, 1996.<br />
[18] S. Ogasawara, H. Akagi, A. Nabae, "A novel PWM scheme of voltage inverter<br />
based on space vector theory", EPE Conf., pp. 3.1197-1202, 1989.<br />
170
References<br />
[19] A. Schönung and H. Stemmler, "Static frequency changers with subharmonic<br />
control in conjunction with reversible variable speed a.c. drives". Brown Boweri<br />
Rev., Aug/Sept., pp. 555-577, 1964.<br />
[20] A. M. Trzynadlowski, "An Overview of Modern PWM Techniques for Three-<br />
Phase Voltage Control-led, Voltage-Source Inverters", in Proc. IEEE-ISIE'96,<br />
Warsaw, Poland, pp. 25-39, 1996.<br />
PI and State Feedback Controllers<br />
[21] Y. Baudon, D. Youve and J. P. Ferrieux, "Current control of permanent magnet<br />
synchronous machines. Experimental and simulation study". IEEE Trans.<br />
Power Electronics, vol.7, no.3, pp. 560-567, 1992.<br />
[22] J. H. Choi, B. J. Kim, "Improved Digital Control Scheme of Three Phase UPS<br />
Inverter Using Double Control Strategy", in Proc. APEC, 1997.<br />
[23] J. W. Choi and S. K. Sul, "New current control concept -Minimum time current<br />
control in 3-phase PWM converter". IEEE PESC, pp. 332-338, 1995.<br />
[24] P. Enjeti, P. D. Ziogas, J. F. Lindsay and M. H. Rashid, "A novel current<br />
controlled PWM inverter for variable speed AC drives", IEEE-IAS Conf. Rec.,<br />
Denver, pp. 235-243, 1986.<br />
[25] P. Feller, "Speed control of an ac motor by state variables feedback with<br />
decoupling", in Proc. IFAC on Control in Power Electronics and Electrical<br />
Drives, Lausanne, pp. 87-93, 1983.<br />
[26] J. Holtz and B. Bayer, "Optimal pulsewidth modulation for AC servos and<br />
low-cost industrial drives", in IEEE-IAS Conf. Rec., Houston, pp. 1010-1017,<br />
1992.<br />
[27] D. C. Lee, S. K. Sul and M. H. Park, "High Performance Current Regulator for a<br />
Field-Oriented Controlled Induction Motor Drive", IEEE Trans. Industry Appl.,<br />
Vol. 30, No. 5, 1994.<br />
[28] D. C. Lee, S. K. Sul and M. H. Park, "Novel current regulation for a<br />
field-oriented controlled inductio motor drive". ISPE'92 Conf. Proc., pp.<br />
135-141,1992.<br />
[29] R. D. Lorenz and D. B. Lawson, "Performance of feedforward current<br />
regulators for field oriented induction machine controllers". IEEE Trans. on Ind.<br />
Appl., vol. IA-23, 1987, pp. 537-662.<br />
[30] J. Moerschel, "Signal processor based field oriented Vector Control for an<br />
induction motor drive", in Proc. EPE-Conference, Firenze, Italy, pp.<br />
2.145-2.150, 1991.<br />
[31] L. Norum, W. Sulkowski and L. A. Aga, "Compact realisation of PWM-VSI<br />
current controller for PMSM drive application using low cost standard<br />
microcontroller", in IEEE-PESC Conf. Rec., Toledo, pp. 680-685, 1992.<br />
[32] C. T. Rim, N. S. Choi, G. C. Cho and G. H. Cho, "A Complete DC and AC<br />
Analiysis of Three-Phase Controlled-Current PWM Rectifer Using Circuit D-Q<br />
Transformation", IEEE Trans. Power Electronics, Vol. 9, No. 4, 1994.<br />
[33] T. M. Rowan and R. J. Kerkman, "A new synchronous current regulator and an<br />
analysis of current regulated PWM inver-ters". IEEE Trans. Ind. Appl., vol.<br />
IA-22, no. 4, pp. 678-690, 1986.<br />
171
References<br />
[34] D. Schauder, and R. Caddy, "Current control of voltage-source inverters for fast<br />
four-quadrant drive performance," IEEE Trans. Industry Appl., vol. IA-18, no.<br />
1, pp. 163-171, 1982.<br />
[35] R. B. Sepe and J. H. Lang, "Inverter Nonlinearities and Discrete-Time Vector<br />
Current Control", IEEE Trans. Industry Appl., Vol.30, No.1, 1994.<br />
[36] N. R. Zargari, G. Joos, "Performance Investigation of a Current-Controlled<br />
Voltage-Regulated PWM Rectifer in Rotating and Stationary Frames", in IEEE-<br />
IECON, pp.1193-1198, 1993.<br />
Hysteresis and Sliding Mode Controllers<br />
[37] A. Ackva, H. Reinold and R. Olesinski, "A simple and self-adapting<br />
high-performance current control scheme for three-phase voltage source<br />
inverters". IEEE PESC'92 Conf. Rec., Toledo, pp. 435-442, 1992.<br />
[38] C. Andrieux and M. Lajoie-Mazenc, "Analysis of different current control<br />
systems for inverter-fed synchronous machine". EPE Conf. Rec., Brussels, pp.<br />
2.159-2.165, 1985.<br />
[39] B. K. Bose, "An adaptive hysteresis-band current control technique of a voltagefed<br />
PWM inverted for machine drive system," IEEE Trans. Ind. Electronics,<br />
vol. 37, no. 5, pp. 402-408, 1990.<br />
[40] M. Carpita and M. Marchesoni, "Experimental Study of a Power Conditioning<br />
System Using Sliding Mode Control", IEEE Trans. Power Electronics, Vol.11,<br />
No. 5, 1996.<br />
[41] T. Y. Chang, T.C. Pan, "A practical vector control algorithm for µ-based<br />
induction motor drives using a new space vector controller", IEEE Trans. on<br />
Ind. Electronics, vol. 41, No. 1, pp. 97-103, 1994.<br />
[42] C. Chiarelli, L. Malesani, S. Pirondini and P. Tomasin, "Single-phase,<br />
three-level, constant frequency current hysteresis control for UPS applications".<br />
EPE'93 Conf. Rec., Brighton, pp. 180-185, 1993.<br />
[43] T. W. Chun and M. K. Choi, "Development of Adaptive Hysteresis Band<br />
Current Control Strategy of PWM Inverter with Constant Switching<br />
Frequency". IEEE-APEC, San Josè, pp. 194-199, 1996.<br />
[44] E. Gaio, R. Piovan, and L. Malesani, "Comparative analysis of hysteresis<br />
modulation methods for VSI current control," in Proc. IEE Machines and Drives<br />
Conference, (London), pp. 336-339, 1988.<br />
[45] V. J. Gosbell, P. M. Dalton, "Current Control of Induction Motors at Low<br />
Speed", IEEE Trans. on Ind. Appl., vol. 28, no. 2, pp. 482-489, 1992.<br />
[46] S. L. Jung, Y. Y. Tzou, "Sliding Mode Control of a Closed-loop Regulated<br />
PWM Inverter under Large Load Variations", in Proc. IEEE-PESC, 1993.<br />
[47] A. Kawamura and R. G. Hoft, "Instantaneous feedback controlled PWM<br />
inverters with adaptive hysteresis". IEEE Trans. on Industry Applications, Vol.<br />
IA-20, pp. 769-775, 1984.<br />
[48] M. P. Kazmierkowski, M. A. Dzieniakowski and W. Sulkowski, "Novel space<br />
vector based current controllers for PWM-inverters", IEEE Trans. Power<br />
Electronics, vol.6, no.1, pp.158-166, 1991.<br />
[49] M. P. Kazmierkowski, and W. Sulkowski, "A novel vector control scheme for<br />
transistor PWM inverted-fed induction motor drive," IEEE Trans. Ind.<br />
Electronics, vol. 38, no. 1, pp. 41-47, 1991.<br />
172
References<br />
[50] B.-H. Kwon, T.-W. Kim, and J.-H. Youn, "A Novel SVM-Based Hysteresis<br />
Current Controller", IEEE Trans. on Power Electronics, vol. 13, No. 2, pp. 297-<br />
307, 1998.<br />
[51] M. Lajoie-Mazenc, C. Villanueva and J. Hector, "Study and implementation of<br />
hysteresis control inverter on a permanent magnet synchronous machine".<br />
IEEE/IAS Ann. Mtg., Conf. Rec., Chicago, pp. 426-431, 1984.<br />
[52] L. Malesani, P. Mattiavelli, P. Tomasini, "High-performance Histeresis<br />
Modulation Technique for Active Filters", IEEE-APEC'96 Conf., pp. 939-946,<br />
1996.<br />
[53] L. Malesani, L. Rossetto, L. Sonaglioni, P. Tomasin, A. Zuccato, "Digital,<br />
adaptive hysteresis current control with clocked commutations and wide<br />
operating range", IEEE Trans. on Industrial Application, vol.32, No.2, pp.<br />
1115-1121, 1996.<br />
[54] L. Malesani and P. Tenti, "A novel hysteresis control method for current<br />
controlled VSI PWM inverters with constant modulation frequency", IEEE<br />
Trans. on Industry Applications, Vol.26, No.1, pp. 88-92, 1990.<br />
[55] L. Malesani, P. Tenti, E. Gaio, R. Piovan, "Improved current control technique<br />
of VSI PWM inverters with constant Modulation frequency and extended<br />
voltage range", IEEE Trans. on Ind. Appl., Vol. 27, No. 2, pp. 365-369, 1991.<br />
[56] W. Mc Murray, "Modulation of the chopping frequency in dc choppers and<br />
inverters having current hysteresis controllers", IEEE Trans. Ind. Appl., vol<br />
IA-20, no. 4, pp. 763-768, 1984.<br />
[57] I. Nagy, "Novel Adaptive Tolerance Band Based PWM for Field Oriented<br />
Control of Induction Machines", IEEE Trans. on Industrial Electronics, vol. 41,<br />
no. 4, pp. 406-417, 1994.<br />
[58] C. T. Pan and T. Y. Chang, "An improved hysteresis current controller for<br />
reducing switching frequency". IEEE Trans. on Power Electronics, vol. 9, no. 1,<br />
pp.97-104, 1994.<br />
[59] E. Perssen, N. Mohan, B. Ben Banerjee, "Adaptive tolerance-band control of<br />
standby power supply provides load-current harmonic neutralization," in IEEE-<br />
PESC Conf. Rec., (Toledo, Spain), pp. 320-326, 1992.<br />
[60] G. Pfaff, A. Weschta and A. Wick, "Design and experimental results of a<br />
brushless ac servo drive". IEEE Trans. Ind. Appl., vol. IA-22, no. 4,<br />
pp. 814-821, 1984.<br />
[61] A. B. Plunkett," A current controlled PWM transistor inverted drive," in IEEE-IAS,<br />
Ann. Mtg., Conf. Rec., pp. 785-792, 1979.<br />
[62] J. Rodriguez, and G. Kästner, "Nonlinear current control of an inverted-fed<br />
induction machine," Etz-Archiv, vol. 9, no. 8, pp. 245-250, 1987.<br />
[63] C. Rossi and A. Tonielli, "Robust Current Controller for Three-Phase Inverter<br />
Using Finite-State Automation", IEEE Trans. Industrial Electronics, Vol. 42,<br />
No. 2,1995.<br />
[64] N. Sabanovic-Behlilovic, T. Ninomiya, A. Sabanovic and B. Perunicic, "Control<br />
of Three-Phase Switching Converters, A Sliding Mode Approach", in Proc.<br />
IEEE-PESC, pp. 630-635, 1993.<br />
[65] S. Salama and S. Lennon, "Overshoot and limit cycle free current control<br />
method for PWM inverter". in Proc. EPE'91, Firenze, pp. 3.247-3.251, 1991.<br />
173
References<br />
[66] A. Tripathi and P. C. Sen, "Comparative analysis of fixed and sinusoidal band<br />
hysteresis current controllers for voltage source inverters". IEEE Trand. on<br />
Industrial Electronics, vol. 39, no.1, pp. 63-73,1992.<br />
[67] K. Tungpimolrut, M. Matsui and T. Fukao, "A simple limit cycle suppression<br />
scheme for hysteresis current controlled PWM-VSI with consideration of<br />
switching delay time". IEEE/IAS Ann. Mtg., Conf. Rec., Houston, pp.<br />
1034-1041,1992.<br />
[68] D. Wüst and F. Jenni, "Space vector based current control schemes for voltage<br />
source inverters". IEEE PESC'93 Conf. Rec., Seattle, pp. 986-992, 1993.<br />
[69] Q. Yao and D. G. Holmes, "A simple, novel method for<br />
variable-hysteresis-band current control of a three phase inverter with constant<br />
switching frequency". IEEE/IAS Ann. Mtg. Conf. Rec., pp. 1122-1129, 1993.<br />
Delta Modulation Controllers<br />
[70] D. M. Divan, G. Venkataramanan, L. Malesani and V. Toigo, "Control<br />
strategies for synchronized resonant link inverters". IPEC'90, Conf. Rec.,<br />
Tokyo, pp. 338-345, 1990.<br />
[71] M. A. Dzieniakowski and M. P. Kazmierkowski, "Microprocessor-based novel<br />
current regulator for VSI-PWM inverters". IEEE/PESC Conf. Rec., Toledo, pp.<br />
459-464, 1992.<br />
[72] P. Freere, D. Atkinson and P. Pillay, "Delta current control for vector controlled<br />
permanent magnet synchronous motors". IEEE-IAS'92 Conf. Rec., Houston, pp.<br />
550-557, 1992.<br />
[73] T. G. Habetler and D. M. Divan, "Performance characterization of a new<br />
discrete pulse modulated current regulator". IEEE IAS'88 Conf. Rec., Pittsburgh,<br />
pp. 395-405, 1988.<br />
[74] M. Kheraluwala and D. M. Divan, "Delta modulation strategies for resonant link<br />
inverters". IEEE PESC'87 Conf. Rec., pp. 271-278, 1987.<br />
[75] R. D. Lorenz and D. M. Divan, "Dynamic analysis and experimental evaluation<br />
of delta modulators for field oriented ac machine current regulators". IEEE-<br />
IAS'87 Conf. Rec., Atlanta, pp. 196-201, 1987.<br />
[76] A. Mertens, "Performance analysis of three phase inverters controlled by<br />
synchronous delta-modulation systems," IEEE Trans. Industry Appl., vol. 30,<br />
no. 4, 1994<br />
[77] A. Mertens and H.Ch. Skudelny, "Calculations on the spectral performance of<br />
sigma delta modulators". IEEE-PESC'91 Conf. Rec., Cambridge, pp. 357-365,<br />
1991.<br />
[78] M. A. Rahman, J. E. Quaice, M. A. Chowdry, " Performance Analysis of Delta<br />
Modulation PWM Inverters", IEEE Trans. on Power Electronics, vol. 2, no. 3,<br />
pp. , 1987.<br />
[79] G. Venkataramanan and D. M. Divan, "Improved performance voltage and<br />
current regulators using discrete pulse modulation". IEEE-PESC Conf. Rec.,<br />
Toledo, 1992, pp. 601-606, 1991.<br />
[80] G. Venkataramanan, D. M. Divan, T. M. Jahns, "Discrete Pulse Modulation<br />
Stategies for High Frequency Inverter Systems", IEEE-PESC Conf. Rec., pp.<br />
1013-1020, 1989.<br />
174
References<br />
[81] X. Xu, and D. W. Novotny, "Bus utilisation of discrete CRPWM inverters for<br />
field oriented drives", in IEEE-IAS Ann. Mtg., Conf.Rec., pp. 362-367, 1988.<br />
[82] D. Ziogas, "The delta modulation technique in static PWM inverters," IEEE<br />
Trans. Industry Appl., vol. IA-17, no. 2, pp. 199-204, 1982.<br />
Predictive and On Line Optimized Controllers<br />
[83] L. Ben-Brahim and A. Kawamura, "Digital current regulation of field-oriented<br />
controlled induction motor based on predictive flux observer", in IEEE IAS Ann.<br />
Mtg. Conf. Rec., pp. 607-612., 1990.<br />
[84] L. J. Borle and C. V. Nayar, "Zero Avarage Current Error Controlled Power<br />
Flow for AC-DC Power Converters", IEEE Trans. on Power Electronics, vol.<br />
10, No. 6, pp. 725-732, 1996.<br />
[85] K. P. Gokhale, A. Kawamura and R. G. Hoft, "Dead beat microprocessor<br />
control of PWM inverter for sinusoidal output waveform synthesis". IEEE<br />
Trans. Ind. Appl., vol. IA-23, no. 5, pp. 901-909, 1987.<br />
[86] T. G. Habetler, "A space vector based rectifier regulator for AC/DC/AC<br />
converters", in Proc. EPE Conf., Firenze, pp. 2.101-2.107, 1991.<br />
[87] W. Hofmann, "Practical Design of the Current Error Trajectory Control for<br />
PWM AC-Drives", in Proc. IEEE-APEC, pp. 782-787, 1996.<br />
[88] D. G. Holmes and D. A. Martin, "Implementation of a Direct Digital Predictive<br />
Current Controller for Single and Three Phase Voltage Source Inverters". IEEE-<br />
IAS Ann. Mtg, San Diego, pp. 906-913, 1996.<br />
[89] J. Holtz and B. Bayer, "Fast Current Trajectory Tracking Control Based on<br />
Synchronous Optimal Pulsewidth Modulation", IEEE Trans. Industry Appl.,<br />
Vol.31, No.5. 1995.<br />
[90] J. Holtz, and B. Bayer, "The trajectory tracking approach - a new method for<br />
minimum distortion PWM in dynamic high power drives," IEEE Trans.<br />
Industry Appl., vol. 30, no. 4, 1994.<br />
[91] J. Holtz and E. Bube, "Field oriented asynchronous pulsewidth modulation for<br />
high performance ac machine drives operating at low switching frequency",<br />
IEEE Trans. on Ind. Appl., vol. IA-27, no. 3, pp. 574-581, 1991.<br />
[92] J. Holtz and S. Stadtfeld, "A predictive controller for the stator current vector of<br />
ac machines fed from a switched voltage source", in Proc. IPEC, Tokyo, pp.<br />
1665-1675, 1983.<br />
[93] M. Kassas, M. Wells, M. Fashoro, "Design and simulation of current regulators<br />
for induction motors using the error magnitude voltage vector correction<br />
(EMVVC)" in IEEE-IAS Ann. Mtg., Conf. Rec., pp. 132-138, 1992.<br />
[94] T. Kawabata,T. Miyashita and Y. Yamamoto, "Dead beat control of three phase<br />
PWM inverter". IEEE Trans. Power Electronics, vol. 5, no. 1, pp. 21-28, 1990.<br />
[95] A. Kawamura, T. Haneyoshi and R. G. Hoft, "Deadbeat controlled PWM<br />
inverter with parameter estimation using only voltage sensor". IEEE-PESC,<br />
Conf. Rec., pp. 576-583., 1986.<br />
[96] A. Khambadkone, J. Holtz, "Low switching frequency high-power inverter<br />
drive based on field-oriented pulse width modulation", EPE Conf., pp. 4.672-<br />
677, 1991.<br />
175
References<br />
[97] J. W. Kolar, H. Ertl and F. C. Zach, "Analysis of on- and off-line optimized<br />
predictive current controllers for PWM converter system". IEEE Trans. Power<br />
Electronics, vol. 6, no. 3, pp. 454-462, 1991.<br />
[98] O. Kukrer, "Discrete-Time Current Control of Voltage-Fed Three-Phase PWM<br />
Inverters", IEEE Trans. Power Electronics, Vol. 11, No. 2, 1996.<br />
[99] H. Le-Huy and L. Dessaint, "An adaptive current control scheme for PWM<br />
synchronous motor drives: analysis and simulation", IEEE Trans. on Power<br />
Electronics, Vol. 4, No. 4, pp. 486-495, 1989.<br />
[100] H. Le-Huy, K. Slimani, P. Viarouge, "Analyse and Implementation of a Real-<br />
Time Predictive Current Controller for Permanent-Magnet Synchronous Servo<br />
Drives", IEEE Trans. Industrial Electronics, Vol. 41, No.1, 1994.<br />
[101] I. Miki, O. Nakao, and S. Nishiyma, "A new simplified current control method<br />
for field oriented induction motor drives", in IEEE-IAS Ann. Mtg., Conf.Rec.,<br />
pp. 390-395,1989.<br />
[102] H. R. Mayer and G. Pfaff, "Direct control of induction motor currents - design<br />
and experimental results". EPE Conf., Brussel, pp. 3.7-3.12,1985.<br />
[103] A. Nabae, S. Ogasawara and H. Akagi, "A novel control scheme of<br />
current-controlled PWM inverters", IEEE Trans. on Ind. Appl., vol. IA-2, no. 4,<br />
pp. 697-701, 1986.<br />
[104] D. S. Oh, K. Y. Cho, M. J. Youn, "A Discretized Current Control Technique<br />
with Delayed Voltage Feedback for a Voltage-Fed PWM Inverter", IEEE Trans.<br />
on Power Electronics, Vol. 7, No. 2, pp. 364-373, 1992<br />
[105] G. Pfaff and A. Wick, "Direct current control of ac drives with pulsed frequency<br />
converters". Process Automat., Vol. 2, pp. 83-88, 1983.<br />
[106] S. K. Sul, B. H. Kwon, J. K. Kang, K. J. Lim, and M. H. Park, "Design of an<br />
optimal discrete current regulator", in IEEE-IAS Ann. Mtg., Conf. Rec.,<br />
pp. 348-354, 1989.<br />
[107] R. Wu, S. B. Dewan and G. R. Slemon, "A PWM ac-dc converter with fixed<br />
switching frequency", IEEE Trans. on Industry Applications, vol. 26, no. 5, pp.<br />
880-885, 1990.<br />
[108] R. Wu, S. B. Dewan and G. R. Slemon, "Analysis of a PWM ac to dc voltage<br />
source converter under the predicted current control with a fixed switching<br />
frequency", IEEE Trans. on Industry Applications, vol. 27, no. 4, pp. 756-<br />
764.,1991.<br />
[109] L. Zhang, F. Hardan, "Vector controlled VSI-fed AC drive using a predictive<br />
space-vector current regulation scheme", IEEE-IECON, pp. 61-66, 1994.<br />
Neural Networks and Fuzzy Logic Controllers<br />
[110] Buhl, and R. D. Lorenz, "Design and implementation of neural networks for<br />
digital current regulation of inverter drives", in IEEE-IAS Ann. Mtg., Conf. Rec.,<br />
pp.415-421, 1991.<br />
[111] B. Burton, R. G. Harley, G. Diana, J. R. Rodgerson, " Implementation of a<br />
neural network to adaptively identify and control VSI fed induction motor stator<br />
currents," in IEEE-IAS Ann. Mtg, Conf. Rec., Denver, pp. 1733-1740, 1994.<br />
[112] B. Burton, F. Karman, R. G. Harley, T. G. Habetler, M. A. Brooke and R.<br />
Poddar, "Identification and Control of Induction Motor Stator Currents Using<br />
176
References<br />
Fast On-Line Random Training of a Neural Network," IEEE Trans. on Ind.<br />
Applications, Vol. 33, No. 3, pp. 697-704, 1997.<br />
[113] M. A. Dzieniakowski and P. Z. Grabowski, "Fuzzy Logic Controller with State<br />
Recognation for Three Phase PWM-VSI", in IEEE-ISIE'96 Conf., Warsaw, pp.<br />
438-443, 1996.<br />
[114] M. A. Dzieniakowski, M. P. Kazmierkowski, "Self-tuned Fuzzy PI Current<br />
Controller for PWM-VSI", in Proc. EPE'95, Sevilla, pp. 1.308-1.313, 1995.<br />
[115] F. Harashima, Y. Demizu, S. Kondo and H. Hashimoto, "Application of neural<br />
networks to power converter control". IEEE IAS'89 Conf. Rec., San Diego, pp.<br />
1087-1091, 1989.<br />
[116] Y. Ito, T. Furuhashi, S. Okuma and Y. Uchikawa, "A digital current controller<br />
for a PWM inverter using a neural network and its stability". IEEE-PESC Conf.<br />
Rec., San Antonio, pp. 219-224, 1990.<br />
[117] M. P. Kazmierkowski, D. L. Sobczuk, M. A. Dzieniakowski, "Neural Network<br />
Current Control of VS-PWM Inverters", in Proc. EPE'95, Sevilla, pp. 1.415-<br />
1.420, 1995.<br />
[118] S. S. Min, K. C. Lee, J. W. Song and K. B. Cho, "A fuzzy current controller for<br />
field-oriented controlled induction machine by fuzzy rule". IEEE PESC'92<br />
Conf. Rec., Toledo, pp. 265-270, 1992.<br />
[119] S. Saetieo, D. A. Torrey, "Fuzzy Logic Control of a Space Vector PWM<br />
Current Regulator for Three Phase Power Converters", in Proc. IEEE-APEC,<br />
1997<br />
[120] D. R. Seidl, D. A. Kaiser, R. D. Lorenz, "One-Step Optimal Space Vector PWM<br />
Current Regulation Using a Neural Network", in IEEE-IAS Ann. Mtg, Conf.<br />
Rec., pp.867-874, 1994.<br />
[121] Y. Y. Tzou, "Fuzzy-Tuning Current-Vector Control of a 3-Phase PWM<br />
Inverter", in Proc. IEEE-PESC, pp. 326-331, 1995.<br />
Field Oriented Control<br />
[122] F. Blaschke, "Das Verfahren der Feldorientirung zur Regleung der<br />
Asynchronmaschine", Siemens Forschungs und Ent-wicklungsberichte, 1(1): pp.<br />
184-193, 1972.<br />
[123] R. De Doncker, D. W. Novotny, "The Universal Field Oriented Controller",<br />
IEEE Trans. on Ind. Applications, Vol. 30, No. 1, pp. 92-100, 1994<br />
[124] G. O. Garcia, R. M. Stephan and E. H. Watanabe, "Comparing the Indirect Field<br />
Oriented Control with a Scalar Method. IEEE Trans. on Industrial Electronics,<br />
Vol. 41, No. 2, pp. 201-207, 1994<br />
[125] F. Harashima, "Power Electronics and Motion Control - A Future Perspective",<br />
in Proceedings of the IEEE, vol. 82, no. 8, August 1994, pp.1107-1111.<br />
[126] K. Hasse: "Drehzahlgelverfahren fur schnelle Umkehrantriebe mit stromrichtergespeisten<br />
Asynchron - Kurzchlusslaufer-motoren", Reglungstechnik, 20:<br />
pp. 60-66, 1972.<br />
[127] J. Holtz, "Speed Estimation and Sensorless Control of AC Drives.<br />
IEEE/IECON'93 Conf. Rec., pp. 649-654, 1993<br />
[128] M. P.. Kazmierkowski, W. Sulkowski, "Novel Vector Control Scheme for<br />
Transistor PWM Inverter-Fed Induction Motor Drive," IEEE Trans. on Ind.<br />
Electronics, Vol. 38, No. 1, pp. 41-47, 1991.<br />
177
References<br />
[129] M. P. Kazmierkowski, M. A. Dzieniakowski, "Review of Current Regulation<br />
Techniques for Three Phase PWM Inverters", in Proc. IEEE/IECON'94,<br />
Bologna, pp. 567-575, 1994<br />
Speed Sensorless<br />
[130] L. Ben-Brahim and R. Kurosawa, "Identification of induction motor speed using<br />
neural networks," in PCC-Yokohama, pp. 689-694, 1993.<br />
[131] L. Ben-Brahim, S. Tadakuma, A. Akdag, “Speed control of induction motor<br />
without rational transducers”, IEEE Trans. On Ind. App, vol 35, No 4, pp. 844-<br />
850, jul/aug 1999.<br />
[132] A. B. Kasprowicz, M. P. Kazmierkowski, S. Kanoza, "Speed Sensorless Direct<br />
Torque Control of DC Link Resonant Inverter-Fed Induction Motor Drive," in<br />
Proc. IEEE Intern. Symposium on Industrial Electronics ISIE'96, Warsaw,<br />
Poland, pp. 186-189, 1996.<br />
[133] M. P. Kazmierkowski, H.-J. Koepcke, "Current source inverter-fed induction<br />
motor drive system controlled without speed sensor," in European Conference<br />
on Power Electronics EPE, Brussels, Belgium, Conf. Rec., pp. 3.345-3.350,<br />
1985.<br />
[134] M. P. Kazmierkowski, M. A. Dzieniakowski, A. B. Kasprowicz, S. Kanoza,<br />
"Speed Sensorless Control of DC Link Resonant Inverter-Fed Induction Motor<br />
Drives," in Proc. PEMC'96, Budapest, Hungary, pp. 110-114 , 1996.<br />
[135] K. Rajashekara et. al.: "Sensorless Control of AC Motor Drives. Speed and<br />
Position Sensorless Operation," IEEE Press, 1996.<br />
[136] Dariusz L. Sobczuk, Pawel Z. Grabowski: “DSP Implementation of Neural<br />
Network Speed estimator for Inverter fed Induction Motor”, IEEE-IECON<br />
Conference Record, pp. 981-985, 1998<br />
[137] T. Orłowska-Kowalska, M. Pawlak, “Implementation of Neural Network speed<br />
estimator with help of TMS320C Digital Signal Procesor”, EDPE Conf. Rec.,<br />
pp. 292-297, 1999<br />
[138] T. Orłowska-Kowalska, P. Migas, “Influence of Neural Network structure on<br />
the induction motor speed estimator quality”, EDPE Conf. Rec., pp. 23-31, 1999<br />
[139] T. Orłowska-Kowalska, M. Pawlak, “Induction motor speed estimation based<br />
on neural identification method”, Electrimacs Conf. Rec., pp. II-45-II-50, 1999<br />
[140] T. Orłowska-Kowalska, P. Wojsznis, Cz. T. Kowalski, “Comparative study of<br />
different flux estimators for sensorless induction motor drive”, Electrimacs<br />
Conf. Rec., pp. II-51-II-56, 1999<br />
Artificial Neural Networks basics<br />
[141] A. Abdulaziz and M. Farsi: "Dynamic modeling and control for a class of nonlinear<br />
systems using neural nets", in Proc. PESC’93 , pp.543-547, 1993<br />
[142] Zhou Guozhong, Sun Yaming: “A Combined Learning Algorithm for Multi-<br />
Layered Neural Networks”, in Proc IEEE-IECON’91, pp. 1492-1495, 1991.<br />
[143] T. Fukuda, and T. Shibata, "Theory and application of neural networks for<br />
industrial control," IEEE Trans. on Ind. Electronics, vol. 39, no. 6, pp. 472-489,<br />
1992.<br />
178
References<br />
[144] H. N. Koivo: "Adaptive control and neural networks - Tutorial", in Proc<br />
IECON’91, pp. 69-82, 1991<br />
[145] R. P. Lippmann, "An introduction to computing with neural nets," IEEE ASSP<br />
Magazine, April, pp. 4-22, 1987.<br />
[146] T. S. Low, T. H. Lee, and H. K. Lim, "A methodology for neural network<br />
training for control of drives with nonlinearitites," IEEE Trans. on Ind.<br />
Electronics, vol. 39, no. 2, pp. 243-249, 1993.<br />
[147] K. S. Narandera and K. Parthasarathy: "Identification and control of dynamical<br />
systems using neural networks", IEEE Transaction on Neural Networks, vol. 1,<br />
no. 1, pp. 4-27, 1990.<br />
[148] P. E. Raiskila and H. N. Koivo", "Properties of a neural network controller -<br />
Tutorial", IEEE-IECON Conference Record, pp. 84-88, 1991<br />
[149] D. E. Rumelhart and J. L. McClelland, "Parallel Distributed Processing.<br />
Explorations in the Microstructure of Cognition, vol. 1: Foundations, (Chapters<br />
2, 8 and 11)", MIT Press, 1986<br />
[150] S. Shin and H. Nishimura, "Neuro-adaptive control for general nonlinear<br />
discrete-time systems", IEEE-IECON Conference Record, pp. 1454-1458, 1991<br />
[151] J. Tanomaru and S. Omatu, "Process control by on-line trained neural<br />
controllers", IEEE Transaction on Industrial Electronics, vol. 39, no. 6, pp.<br />
511-521, 1992<br />
[152] P. J. Werbos, "Artificial neural networks: General Capabilities and Control<br />
Applications - Tutorial", IEEE-IECON Conference Record, pp. 5-66, 1991<br />
[153] B. Widrow and M. A. Lehr, "30 Years of adaptive neural networks: perceptron,<br />
madaline, and backpropagation", Proceedings of IEEE, vol. 78, no. 9, pp. 1415-<br />
1442, 1990.<br />
179
A1. Description of the simulation program<br />
A1. Description of the simulation program<br />
A1.1.<br />
Structure of the Program<br />
Program consist of the following files:<br />
• Main file (include parts described in Sections A1.1 - A1.3.) file rootmain.c<br />
• Control part (section A1.4) file rootster.c<br />
• Configuration and data files files readpar.c, simfile.c<br />
• Graphics file simgraph.c<br />
• Menu file simmenu.c<br />
• Procedure for differential equations solution (RKF45) file rkf45.c<br />
Declaration of variables and procedures are located in following overhead files:<br />
rootdef.h, rootdefe.h, rootmain.h, sim.h, simfile.h, simgraph.h, simmenu.h.<br />
It should be noted that user could modify all source and header files with the first part<br />
of the name root-<br />
A1.2.<br />
Configuration and Data Files<br />
A1.2.1.<br />
Introduction<br />
The program allows you to read the configuration parameters and data from<br />
one file and write it to other file(s). After the program is run such a parameters and<br />
data as configuration, graphics, load, control, numerical, are read from the following<br />
files:<br />
• root.cfg<br />
• graph.dat<br />
• mot.dat<br />
• rootctrl.dat<br />
• rootnum.dat<br />
• rootint.dat<br />
180
A1. Description of the simulation program<br />
A1.2.2.<br />
Configuration File<br />
A1.2.2.1.<br />
Listing configuration file root.cfg<br />
# Config file created by C:\USR\ROOT.EXE<br />
graph.dat<br />
mot.dat<br />
rootctrl.dat<br />
rootnum.dat<br />
rootint.dat<br />
root<br />
names<br />
PAGE 1 WINDOW 1<br />
PAGE 1 WINDOW 2<br />
PAGE 1 WINDOW 3<br />
PAGE 1 WINDOW 4<br />
PAGE 2 WINDOW 1<br />
PAGE 2 WINDOW 2<br />
PAGE 2 WINDOW 3<br />
PAGE 2 WINDOW 4<br />
file<br />
time isalf isbet ubet ualf vec nrs<br />
screen 2 2 2 2<br />
time omega_m 1 1 red<br />
time isalf 1 2 red<br />
time me 1 3 red<br />
time psira 1 4 red<br />
psira psirb 2 1 red<br />
isalf isbet 2 2 red<br />
ualfc ubetc 2 3 red<br />
ualf ubet 2 4 red<br />
scale<br />
1 1 0 1.2<br />
1 2 -8 8<br />
1 3 -5 5<br />
1 4 -1.2 1.2<br />
2 1 -1.5 1.5 -1.5 1.5<br />
2 2 -10 10 -10 10<br />
2 3 -3 3 -2 2<br />
2 4 -3 3 -2 2<br />
181
A1. Description of the simulation program<br />
A1.2.2.2.<br />
Description of the configuration file root.cfg.<br />
File root.cfg (see Section A1.2.1) includes:<br />
h # comments line;<br />
h names of data files, as: graphic file (graph.dat), induction motor parameters<br />
file (mot.dat), numerical file (rootnum.dat), control file (rootctrl.dat), integer file<br />
(rootint.dat);<br />
h initial name of the file (here for example root) in which (if required by user)<br />
simulation results are stored (program automatically extents the name with three<br />
digits of simulation number: 001, 002, etc.);<br />
h names of graphics windows;<br />
h variables which should by stored in file during simulation;<br />
h number of windows for graphic pages.<br />
For example command: screen 2 2 1 2,<br />
means that there are 2x2 diagrams versus time in graphic window<br />
No 1 (time), and 1x2 function diagram in graphic window No 2;<br />
h axes definitions for diagrams. On the one diagram several function can be<br />
shown, but in the same scale.<br />
For example line: time me 1 3 red,<br />
means that diagram 3 in graphic window No 1 present the torque me versus time,<br />
with red colour.<br />
h scales definition for each axes. For the first graphic page, which present<br />
diagrams versus time, only Y scale is required. For the second page scaling for X<br />
and Y axes should be defined.<br />
A1.2.3.<br />
Data files<br />
A1.2.3.1.<br />
Listing data files<br />
h File graph.dat with graphic parameters :<br />
182
A1. Description of the simulation program<br />
# parameter file created by C:\USR\ROOT.EXE<br />
graphdrv 1<br />
graphmode 1<br />
npage 1<br />
page_op 1<br />
bkc1 7<br />
bkc2 3<br />
blc -1<br />
ac 1<br />
bc 3<br />
ec 1<br />
hc 9<br />
gc 8<br />
tc 9<br />
pc 1<br />
stc 8<br />
gls 1<br />
gul 17500<br />
flag_hw 4<br />
mlbc 1<br />
mlfc 7<br />
mwidth 15<br />
iwidth 15<br />
dwidth 25<br />
doslines 10<br />
doswidth 50<br />
mboption 1<br />
mbfc 14<br />
mbtc 1<br />
fsg 4<br />
fsm 4<br />
fc 1<br />
mc 14<br />
gridx 1<br />
gridy 1<br />
nxt 5<br />
nyt 10<br />
xnmb 3<br />
ynmb 3<br />
vnmb 3<br />
dstep 10<br />
h File mot.dat with induction motor parameters:<br />
# parameter file created by C:\USR\ROOT.EXE<br />
183
A1. Description of the simulation program<br />
rs 0.0314<br />
xs 2.184<br />
rr 0.0464<br />
xr 2.237<br />
xM 2.133<br />
Tm 0.2<br />
omega_n 314.159<br />
n_s 1<br />
mL 0<br />
h File rootctrl.dat with control parameters:<br />
# parameter file created by C:\USR\ROOT.EXE<br />
ud 2.5<br />
tgen 0.0002<br />
amps 1<br />
ampsin 0.85<br />
h File rootint.dat with integer parameters:<br />
# parameter file created by C:\USR\ROOT.EXE<br />
flag_f 0<br />
npl 0<br />
flag_ctrl 0<br />
flag_dscrt 0<br />
max_nsub 50<br />
File rootnum.dat with numerical data:<br />
# parameter file created by C:\USR\ROOT.EXE<br />
tb 0<br />
te 0.17<br />
tsamp 1e-05<br />
tprint 1e-05<br />
tstop 1e4<br />
relerr 1e-06<br />
abserr 1e-06<br />
omega_m 0.0<br />
psira 0.0<br />
psirb 0.0<br />
isalf 0.0<br />
isbet 0.0<br />
theta 0.0<br />
184
A1. Description of the simulation program<br />
A1.2.3.2.<br />
Short description of selected parameters<br />
Most important graphic parameters are:<br />
• graphics driver selection:<br />
graphdrv 0 - Hercules<br />
1 - VGA<br />
2 - SVGA16<br />
3 - SVGA256<br />
4 - VESA16<br />
For:<br />
- graphdrv 0 ( Hercules graphics),<br />
following parametr should be set:<br />
- graphmode 0 dla HERCMONOHI 720*348, mono, 2 graphic pages;<br />
- graphdrv 1 (VGA graphics),<br />
following parametr should be set:<br />
- graphmode 0 dla VGALO 640*200, 16 colours, 4 graphic pages;<br />
- graphmode 1 dla VGAMED 640*350, 16 colours, 2 graphic pages;<br />
- graphmode 2 dla VGAHI 640*480, 16 colours, 1 graphic page;<br />
- graphdrv 2 (tzn. SVGA16),<br />
following parametr should be set::<br />
- graphmode 0 dla SVGA 320*200, 16 colours;<br />
- graphmode 1 dla SVGA 640*200, 16 colours;<br />
- graphmode 2 dla SVGA 640*350, 16 colours;<br />
- graphmode 3 dla SVGA 640*480, 256 colours;<br />
- graphmode 4 dla SVGA 800*600, 16 colours;<br />
- graphmode 5 dla SVGA 1024*768, 16 colours;<br />
- graphdrv 3 (tzn. SVGA256),<br />
following parametr should be set:<br />
- graphmode 0 dla SVGA 320*200, 256 colours,<br />
- graphmode 1 dla SVGA 640*400, 256 colours;<br />
- graphmode 2 dla SVGA 640*480, 256 colours;<br />
- graphmode 3 dla SVGA 800*600, 256 colours;<br />
185
A1. Description of the simulation program<br />
- graphmode 4 dla SVGA 1024*768, 256 colours;<br />
• Selection of graphic pages number:<br />
- npage = number of pages - 1;<br />
• if npage is 0 then we have options:<br />
- page_op 0 without second graphic page;<br />
- page_op 1 second page below the first ones;<br />
- page_op 2 second graphic page on the right relative to the first;<br />
- page_op 3 without first graphic page;<br />
• header mode - flag_hw;<br />
• grid on/off - gridx, gridy;<br />
• number of ticks on axes - nxt, nyt;<br />
• number of significant digits on axes and overheads (window title) - xnmb, ynmb,<br />
vnmb;<br />
• windows width - ...width (i.e. all variables with this ending);<br />
• colours - ...c (i.e. all variables with this ending);<br />
• how often the results are displayed - dstep;<br />
Induction motor parameters:<br />
• resistances and reactances - rs, xs, rr, xr, xM;<br />
• mechanical (acceleration) time constant - Tm;<br />
• nominal speed - omega_n;<br />
• reference synchronous speed - n_s;<br />
• load torque - mL;<br />
Control parameters:<br />
• DC link voltage - ud;<br />
• triangular carrier period - tgen;<br />
• sinus wave amplitude - ampsin;<br />
• triangular carrier amplitude - amps;<br />
Integer parameters:<br />
• writing to file - flag_f;<br />
• number of output file - npl;<br />
186
A1. Description of the simulation program<br />
• control selection - flag_ctrl;<br />
• discrete or continuous system - flag_dscrt;<br />
• maximum steps number in RKF45 numerical procedure - max_nsub;<br />
Numerical parameters:<br />
• starting and final simulation time - tb, te;<br />
• sampling time - tsamp;<br />
• how often results will be written to file - tprint;<br />
• simulation stops - tstop;<br />
• relative and absolute accuracy of RKF45 numerical procedure - relerr, abserr;<br />
• initial values of state variables:<br />
- mechanical angular speed of IM - omega_m;<br />
- rotor flux in alpha-beta coordinates - psira, psirb;<br />
- stator current in alpha-beta coordinates - isalf, isbet;<br />
- position of IM shaft - theta;<br />
A1.3.<br />
Description of selected variables<br />
Variable, which we can read from file and change during program execution,<br />
are calculated in each step and can be presented as diagrams (oscillograms) or written<br />
to output file in text format. In the program are integer and real variables.<br />
As example of real variables used in the program are:<br />
• Stator flux components in alpha-beta coordinates - psisa, psisb;<br />
• electromagnetic torque - me;<br />
• inverter output voltages in alpha-beta coordinates - ualf, ubet;<br />
• inverter output voltages (3-phase) - uA, uB, uC;<br />
• inverter voltage commands in alpha-beta coordinates - ualfc, ubetc;<br />
• voltages commands (3-phase)- uAc, uBc, uCc;<br />
• stator current amplitude (modulus) - is;<br />
• stator currents (3-phase) - iA, iB, iC;<br />
• time - time.<br />
187
A1. Description of the simulation program<br />
As example of integer variables used in the program are:<br />
• switch states of inverter - d1, d2, d3;<br />
• number of applied inverter voltage vector - vec;<br />
• number of inverter switchings - nrs;<br />
A1.4.<br />
Menu options<br />
The program can change and store selected parameters. In each moment of<br />
execution the program can be stopped (by appropriate button) and arbitrary graphics<br />
and/or simulation parameters can be changed. Also, the results can be observed.<br />
Additionally, each variable or parameter can be seen in edition window. It is possible<br />
to write and read new and old configuration files as well as data files with name given<br />
by user.<br />
Examples of Menu options:<br />
• P (or M-P) - activation of parameter window. To change arbitrary parameter,<br />
write the name of the parameter, push Enter and write the new<br />
value.<br />
• F (or M-F) - activation of parameter and configuration window sub-menu:<br />
G - write current graphics parameters to file with user defined name;<br />
M - write current induction motor parameters to file with user defined<br />
name;<br />
N - write current numerical parameters to file with user defined<br />
name;<br />
T - write current control parameters to file with user defined name;<br />
I - write current integer parameters to file with user defined name;<br />
C - write all current parameters to files with user defined names. This<br />
option is equivalent to all above and S option;<br />
D - write all current parameters to files with extension dft.<br />
Configuration data are written to the file default.cfg;<br />
S - actualization of configuration parameters in configuration file to<br />
current values;<br />
188
A1. Description of the simulation program<br />
• L (or M-L) - activation of reading parameters and configuration file window<br />
submenu:<br />
G - read new graphics parameters from file with user defined name;<br />
M - read new induction motor parameters from file with user defined<br />
name;<br />
N - read new numerical parameters from file with user defined name;<br />
T - read new control parameters from file with user defined name;<br />
I - read new integer parameters from file with user defined name;<br />
C - read new configuration parameters from configuration file with<br />
user defined name;<br />
D - read all parameters from configuration file default.cfg;<br />
S - change configuration parameters to current values existing in<br />
configuration file;<br />
• O (or M-O) - activation of changes and view window submenu:<br />
1) name of output file in which variable will be stored during simulation;<br />
2) list of variables which values will be stored during simulation;<br />
3) window variables and coulors of diagrams in selected windows;<br />
4) axes scaling in selected windows;<br />
5) windows names;<br />
Modification of variables according to 2) and 3) can be done using commands as<br />
add, new, del. To remove all window variables, a command clear can be used.<br />
N - change name of output file;<br />
F-W - view of variables, which values will be stored during simulation;<br />
V-W - view of window variables and diagram colours in selected<br />
window;<br />
A-W - view of axes scaling in selected windows;<br />
D-W - view of selected windows names;<br />
O-M - selection (modification) of variables, which values will be stored<br />
during simulation.<br />
For example, to introduce a new variable isalf, write: add isalf<br />
To create a new set of variables, write for example:<br />
new isalf isbet<br />
189
A1. Description of the simulation program<br />
To delete a variable write for example: del isalf<br />
S-M - selection (modification) of window variables and coulors of<br />
diagrams in selected window.<br />
For example to select in window 1 on the 1st graphic page<br />
electro-magnetic torque waveform drawn with red line: select<br />
submenu: Page 1 Window 1,<br />
and than write in edit window: add time me RED<br />
C-M - selection of axes scaling in selected window. For the first graphic<br />
page only Y scale is required (time diagrams) whereas for second<br />
graphic page both X and Y scaling is necessary.<br />
For example to change scale in the 2 nd window on the 1 st graphic<br />
page, write: 1 2 -0.5 0.5<br />
And for the 1 st window of the 2 nd graphic page, write:<br />
2 1 0 0.15 -0.01 0.01<br />
W-M - change name of selected window.<br />
• V(or M-V)- - activation of view window submenu:<br />
1) name of configuration file;<br />
2) names data files;<br />
3) first part of name of output file;<br />
4) all parameters and variables;<br />
5) location of root.exe file in catalog<br />
C -name of current configuration file;<br />
G - name of current graphic parameters file;<br />
R - name of current induction motor parameters file;<br />
N - name of current numerical data file;<br />
T - name of current control data file;<br />
I - name of current integer parameters file;<br />
O - initial name of output file;<br />
P -activation of edit window to view all parameters and variables;<br />
S - location of the file root.exe in catalog.<br />
190
A1. Description of the simulation program<br />
A1.5.<br />
Design example using ANN-LAB software<br />
As the example, how to use this program to simulate the ANN optimal mode current<br />
controller (see section 4.4), the algorithm divided in few steps is presented as follows.<br />
A1.5.1.<br />
General information about the ANN model:<br />
A1.5.1.1.<br />
Limitations<br />
There are some limitations in the ANN structure:<br />
max number of neurons 40<br />
max number of weights 300<br />
max number of inputs 10<br />
max number of outputs 10<br />
A1.5.1.2.<br />
ANN structure (file: int.DATA)<br />
Weights description is: w xyz,<br />
where x denoted No. of layer, y denoted No. of input connection, z denoted No. of<br />
output connection<br />
x y z are numbers 0 9<br />
A1.5.1.3.<br />
Data scaling:<br />
There are adjustable gain factors on ANN inputs: kr0 - kr9<br />
191
A1. Description of the simulation program<br />
A1.5.2.<br />
Off-line trained ANN design procedure for using as PWM Current<br />
Controller<br />
The simulation algorithm consists of the following steps:<br />
A1.5.2.1.<br />
Creating a training file: nnf000.asc<br />
⎝ Run opt.exe with data file opt.cfg for 3 (or more) values of speed (steady state),<br />
⎝ Store the simulation results as files nnf001.asc, nnf002.asc, nnf003.asc (by stetting<br />
flag_f to 1, and variable npl to 1,2,3 respectively)<br />
⎝ Create a sum file under DOS:<br />
nnf001.asc+nnf002.asc+nnf003.asc, and change the name of the resulting file to:<br />
nnf000.asc<br />
A1.5.2.2.<br />
Training ANN<br />
⎝ Execute opt.exe with data file nn3w.cfg for different:<br />
- learning factors eta,<br />
- forgetting factors mu.<br />
Usually training time is about 10 s<br />
⎝ Save data (F) and create numerical data (N) file weights.dat<br />
⎝ Edit file weights.dat and change the regulation time (tb start and te final time) which<br />
is much shorter compare to training time<br />
A1.5.2.3.<br />
Running ANN as PWM Current Controller<br />
⎝ Go to file: om3.cfg (or om3a.cfg) and write in the numerical data (3 row) the name<br />
of the new created in point 2 file weights.dat with ANN weights.<br />
⎝ Run opt.exe with data file om3.cfg<br />
Observe the performance factors: PSE and PR.<br />
If PSE is lower as 0.75 reaped the procedure and go to point 1.<br />
192
A1. Description of the simulation program<br />
A1.6.<br />
Summary<br />
The presented program has following features and advantages:<br />
• is written in C language,<br />
• fast operation,<br />
• high numerical accuracy,<br />
• user friendly graphic interface,<br />
• simply extending and modification of existing controllers,<br />
• easy implementation even complex control structures,<br />
• possibility to read and write parameters to files,<br />
• flexible graphics configuration,<br />
• possibility to change parameters values during simulation.<br />
193
A2. Laboratory setup<br />
A2. Laboratory setup.<br />
A2.1.<br />
System configuration<br />
The practical results have been made on the laboratory setup based on the<br />
dSpace board DS1102 which is controlled by Texas Instrument TMS320C31 3rd<br />
generation floating-point Digital Signal Processor (master processor) and the<br />
TMS320P14 (slave processor).<br />
Inverter<br />
Reversable<br />
converter<br />
Encoder<br />
Tachogenerator<br />
Reference signals<br />
Feedback signals<br />
Induction motor<br />
DC motor<br />
RS232<br />
DSP SYSTEM<br />
dSPACE<br />
TMS 320C31<br />
Measurement system<br />
RS232<br />
Host computer<br />
Local computer<br />
Fig. A2.1 Laboratory setup<br />
194
A2. Laboratory setup<br />
Fig.A2.1 presents the system configuration that consists of the following components:<br />
- Machine kit – induction motor and the DC motor as a load,<br />
- 3 phase inverter with IPM modules,<br />
- Reversable converter for DC motor control,<br />
- dSpace DC1102 board inside PC,<br />
- Isolated system between dSpace board and the inverter,<br />
- Measurement system builds on the LEM converters.<br />
A2.2.<br />
Inverter<br />
The power circuit contains two Mitsubishi Electric modules: one as a rectifier and<br />
the second one as an inverter based on IGBT transistors. The IPM consists seven<br />
transistors, the extra one works as a security in case to high DC voltage.<br />
B W V U<br />
D1 D2 D3<br />
+<br />
D7<br />
T7<br />
T6<br />
T5<br />
RT1<br />
t<br />
R1<br />
C1<br />
IGBT<br />
IGBT<br />
IGBT<br />
RT2<br />
RT3<br />
t<br />
t<br />
C11<br />
1.5u/750V<br />
T1<br />
T2<br />
T3<br />
T4<br />
D4 D5 D6<br />
+<br />
C2<br />
R2<br />
IGBT<br />
IGBT<br />
IGBT<br />
IGBT<br />
RELAY 4PST<br />
Fig. A2.2 High power circuit<br />
The optic fibbers are used as interface between PWM-VSI and the DSP controller<br />
board, which provide good isolation between dSpace board and inverter. The inverter<br />
parameters are as follows:<br />
- Voltage 1200 V,<br />
- Current 50 A,<br />
- Switching frequency 15kHz,<br />
- Dead time 3µs.<br />
195
A2. Laboratory setup<br />
A2.3.<br />
dSpace DS1102 board.<br />
The dSPACE is based on the Texas Instrument TMS320C31 3rd generation<br />
floating-point Digital Signal Processor (master processor) and the TMS320P14 (slave<br />
processor). The master processor builds the main processing unit providing fast<br />
instruction cycle time for numeric intensive algorithms. The slave processor is<br />
responsible for PWM signal generation. A PC is used for software development and<br />
the results visualisation.<br />
The dSpace board consists of the following components:<br />
- A/D converters,<br />
- D/A converters,<br />
- I/O circuits,<br />
- Encoder co-operation circuit.<br />
128kx32<br />
RAM<br />
TMS 320P14<br />
Digital I/O<br />
16-bit ADC 1<br />
Serial<br />
interface<br />
TMS320C31<br />
16-bit ADC 2<br />
12-bit ADC 3<br />
12-bit ADC 4<br />
12-bit DAC 1<br />
Analog/digital I/O connector<br />
JTAG<br />
connection<br />
12-bit DAC 2<br />
12-bit DAC 3<br />
JTAG<br />
Interface<br />
12-bit DAC 4<br />
Encoder 1<br />
Filter<br />
PC/AT Interface<br />
Encoder 2<br />
Filter<br />
PC/AT BUS<br />
Fig. A2.3 DS 1102 board block scheme<br />
196
A2. Laboratory setup<br />
A2.3.1.<br />
The TMS320C31 DSP<br />
The TMS320C31 third generation floating-point DSP is a high performance member<br />
of Texas Instruments’ TMS320 family of VLSI digital signal processor. It performs<br />
parallel multiply and ALU operations on integers or floating-point numbers in a single<br />
cycle. The TMS320C31 supports a large address space with various addressing modes<br />
allowing the use of high-level languages for application development. Some key<br />
features of the TMS320C31 are:<br />
- 50 ns single cycle instruction execution time,<br />
- object code compatible with the TMS320C30,<br />
- Two 1K x 32-bit dual access on-chip data RAM blocks,<br />
- 64 x 32 bit floating-point/integer multiplier and ALU,<br />
- 32-bit barrel shifter,<br />
- Eight 40-bit accumulators,<br />
- Two independent address arithmetic units,<br />
- 2- and 3- operand instructions,<br />
- Serial port,<br />
- DMA controller for concurrent DMA and CPU operation,<br />
- Four external interrupts,<br />
- Two 32-bit timers.<br />
A2.3.2.<br />
A/D Subsystem<br />
The DS1102 contains two types of ACDs:<br />
- Two 16-bit autocalibrating sampling A/D converters with integrated<br />
sample/holds,<br />
- Two 12-bit sampling A/D converters with integrated sample & holds.<br />
All ADCs have single ended bipolar inputs with +-10V input span. All return lines are<br />
connected to system ground.<br />
197
A2. Laboratory setup<br />
Offset<br />
calibration<br />
EEPROM<br />
DAC<br />
IN<br />
+<br />
Sample<br />
&<br />
Hold<br />
12-bit<br />
A/C<br />
EEPROM<br />
DAC<br />
IN<br />
+<br />
Sample<br />
&<br />
Hold<br />
12-bit<br />
A/D<br />
IN<br />
Sample<br />
&<br />
Hold<br />
16<br />
A/D<br />
serial<br />
parallel<br />
calibration<br />
IN<br />
Sample<br />
&<br />
Hold<br />
16 - bit<br />
A/D<br />
serial<br />
parallel<br />
calibration<br />
Offset&Gain<br />
calibration<br />
Fig. A2.4 Block diagram of the AD subsystem<br />
The DS1102 contains two 16-bit charge redistribution ADCs with integrated<br />
sample/holds. Each of the ADCs contains a 16-bit successive approximation (SAR)<br />
type AD converter, a sample/hold circuit and a microcontroller based autocalibraction<br />
circuit. The converter achieves a conversion time of 10 µs. There is also the second<br />
pair 12-bit charge distribution successive approximation ADCs with integrated<br />
sample/hold circuits and a digitally controlled offset calibration units. Each converter<br />
achieves a conversion time of 3 µs.<br />
198
A2. Laboratory setup<br />
A2.3.3.<br />
D/A Subsystem.<br />
The DS1102 contains a quad 12-bit DAC with programmable output voltage ranges.<br />
The DA subsystem consists of four data registers, four output registers, a mode<br />
register and a strobe bit in the IOCTL register.<br />
INPUT<br />
Data<br />
register<br />
Output<br />
register<br />
12-bit<br />
D/A<br />
prog. Output<br />
range<br />
+<br />
Data<br />
register<br />
Output<br />
register<br />
12-bit<br />
D/A<br />
prog. Output<br />
range<br />
+<br />
Data<br />
register<br />
Output<br />
register<br />
12-bit<br />
D/A<br />
prog. Output<br />
range<br />
+<br />
OUTPUT<br />
Data<br />
register<br />
Output<br />
register<br />
12-bit<br />
D/A<br />
prog. Output<br />
range<br />
+<br />
Control<br />
Control logic<br />
EEPROM<br />
&<br />
DAC<br />
Gain<br />
calibration<br />
Reference<br />
offset<br />
calibration<br />
Fig. A2.5 Block diagram of the DA subsystem.<br />
The DACs have single ended voltage outputs with +- 10 V span. The return lines of<br />
the outputs are connected to system ground. Each DACs features a set of two back to<br />
back registers, a data register connected to the data inputs and an output register<br />
connected to the DA converter. This allows to sequentially preload new output values<br />
and then to update the DAC outputs simultaneously by copying the contents of the<br />
data registers to the output registers by a common transfer strobe. The DA subsystem<br />
features a digital controlled offset and gain calibration unit. The circuit is intended to<br />
be used to eliminate the offset and gain errors of the DACs. The calibration unit<br />
199
A2. Laboratory setup<br />
consists of an EEPROM device connected to a DAC. It is adjusted during<br />
manufacturing and doesn’t need to be changed under normal operating conditions.<br />
A2.3.4.<br />
Incremental encoder subsystem.<br />
The DS1102 contains two incremental sensor interfaces to support optical incremental<br />
sensors commonly used in position control. Each interface contains line receivers for<br />
the input signals, a digital noise pulse filter eliminating spikes on the phase lines, a<br />
quadranture decoder which converts the sensor’s phase information to count-up and<br />
count-down pulses, a 24-bit output latch.<br />
25 MHz<br />
RESET<br />
STROBE<br />
Ph 0<br />
Ph 90<br />
Line<br />
receiver<br />
Noise filter<br />
Quadranture<br />
decoder<br />
24-bit position<br />
counter<br />
24-bit output<br />
latch<br />
INDEX<br />
Line<br />
receiver<br />
DSP INT<br />
Fig. A2.6 Block diagram of an incremental encoder interface.<br />
The minimum encoder state width is 120 ns resulting in a maximum count frequency<br />
of 8.3 MHz. Noise pulses shorter than 80 ns are eliminated by the digital noise pulse<br />
filter.<br />
A2.3.5.<br />
Software<br />
The control algorithm is done in high level C language. There are also two others<br />
programs made by dSpace: Cockpit and Trace.<br />
Cockpit is a Windows based graphical application purposive to change program<br />
internal variables. This software provide:<br />
- processor memory cell state tracking,<br />
- processor registers and ports state tracking,<br />
- interactive modification of chosen variables.<br />
200
A2. Laboratory setup<br />
COCKPIT<br />
INACTIVE<br />
COCKPIT<br />
ACTIVE<br />
DSP MEMORY<br />
DSP MEMORY<br />
Cockpit allocated<br />
buffer<br />
data<br />
buffer<br />
serwis code<br />
Data<br />
Data<br />
DSP<br />
application<br />
TRAPU<br />
DSP<br />
application<br />
TRAPU<br />
code<br />
RETS<br />
code<br />
Fig. A2.7 Implementation of COCKPIT on the DSP<br />
A piece of service code is downloaded to the DSP board (see Fig. A2.7 ). The purpose<br />
of this is to copy the contents of all required variables to a small buffer in the DSP<br />
memory. This buffer can be read as one block of data by Cockpit, so that the<br />
communication between the host computer and the signal processor board is<br />
minimized.<br />
Trace is the Windows based application purposive to presentation all DSP programs<br />
signals and variables. This program can be used as an oscilloscope. The basis function<br />
is the same as a Cockpit program.<br />
201
A3. Motor parameters<br />
A3. MOTOR PARAMETERS<br />
A3.1. Parameters used in Chapter 4<br />
DC link voltage = 2.5 pu<br />
Induction motor parameters data (pu):<br />
rr = 0.0464<br />
rs = 0.0314<br />
xr = 2.237<br />
x s = 2.194<br />
x M = 2.133<br />
TM = 0.4 s<br />
A3.2. Parameters used in Chapter 7<br />
DC link voltage = 1.74 pu<br />
Induction motor parameters data (pu):<br />
r r = 0.0543<br />
rs = 0.0543<br />
xr = 1.96<br />
xs = 1.88<br />
x M = 1.96<br />
TM = 0.1 s<br />
T s =350µs<br />
202
A4. Notation<br />
A4. NOTATION<br />
A4.1.<br />
Symbols<br />
• i - current, p.u. value<br />
- i r - rotor current space vector<br />
- i rx , i ry - rotor current vector components of the induction motor in<br />
field-oriented x, y coordinates<br />
- i rα , i rβ - rotor current vector components of the induction motor in<br />
stationary α, β coordinates<br />
- i s - stator current space vector<br />
- i sx , i sy - stator current vector components of the induction motor in<br />
field-oriented x, y coordinates<br />
- i sα , i sβ - stator current vector components of the induction motor in<br />
stationary α, β coordinates<br />
• r - resistance, p.u. value<br />
- r r - rotor resistance<br />
- r s - stator resistance<br />
• T - time constant, absolute value<br />
- T M - inertia time constant of the electric motor<br />
- T N - nominal time constant<br />
- T r - rotor electromagnetic time constant of the induction motor<br />
- T s - sampling time<br />
• u - voltage, p.u. value<br />
- u r - rotor voltage space vector<br />
- u rx , u ry - rotor voltage vector components of the induction motor in<br />
field-oriented x, y coordinates<br />
- u rα , u rβ - rotor voltage vector components of the induction motor in<br />
stationary α, β coordinates<br />
203
A4. Notation<br />
- u s - stator voltage space vector<br />
- u sx , u sy - stator voltage vector components of the induction motor in<br />
field-oriented x, y coordinates<br />
- u sα , u sβ - stator voltage vector components of the induction motor in<br />
stationary α, β coordinates<br />
• x - reactance, p.u. value calculated for nominal frequency<br />
- x M - induction motor main reactance<br />
- x r - rotor windings self-reactance<br />
- x s - stator windings self-reactance<br />
- x σ - total leakage reactance of the induction motor<br />
• η- neural network learning rate<br />
• ψ - flux, p.u. value<br />
- ψ r - rotor flux space vector<br />
- ψ rx , ψ ry - rotor flux vector components of the induction motor in fieldoriented<br />
x, y coordinates<br />
- ψ rα , ψ rβ - rotor flux vector components of the induction motor in<br />
stationary α, β coordinates<br />
- ψ s - stator flux space vector<br />
- ψ sx , ψ sy - stator flux vector components of the induction motor in fieldoriented<br />
x, y coordinates<br />
- ψ sα , ψ sβ - stator flux vector components of the induction motor in<br />
stationary α, β coordinates<br />
• σ - total leakage factor<br />
• ω - angular speed, p.u. value<br />
- ω m - angular speed of the motor shaft<br />
- ω r - slip angular speed<br />
- ω s - synchronous angular speed<br />
204
A4. Notation<br />
A4.2.<br />
Rectangular coordinate systems<br />
• x, y - field-oriented (rotated) coordinates<br />
• α, β - stator-oriented (stationary) coordinates<br />
A4.3.<br />
Indices<br />
• M - main, magnetizing<br />
• m - mechanical<br />
• N - nominal value<br />
• r - rotor<br />
• s - stator<br />
A4.4.<br />
Abbreviations<br />
• ANN - artificial neural network<br />
• DFOC - direct field-oriented control<br />
• FOC - field-oriented control<br />
• IFOC - indirect field-oriented control<br />
• MNN - multilayer neural network<br />
• PWM - pulse-width modulation<br />
• VSI - voltage-sourced inverter<br />
205