Professional Documents
Culture Documents
Application of CMAC Neural Network To The Control of Induction Motor Drives
Application of CMAC Neural Network To The Control of Induction Motor Drives
Review
A R T I C L E I N F O A B S T R A C T
Article history: In this paper, a cerebellar-model-articulation-controller (CMAC) neural network (NN) based control
Received 5 December 2007 system is developed for a speed-sensorless induction motor that is driven by a space-vector pulse-width
Received in revised form 24 March 2009 modulation (SVPWM) inverter. By analyzing the CMAC NN structure and motor model in the stationary
Accepted 28 May 2009
reference frame, the motor speed can be estimated through CMAC NN. The gradient-type learning
Available online 6 June 2009
algorithm is used to train the CMAC NN online in order to provide a real-time adaptive identification of
the motor speed. The CMAC NN can be viewed as a speed estimator that produces the estimated speed to
Keywords:
the speed control loop to accomplish the speed-sensorless vector control drive. The effectiveness of the
CMAC neural network
Real-time adaptive identification
proposed CMAC speed estimator is verified by experimental results in various conditions, and the
Speed-sensorless performance of the proposed control system is compared with a new neural algorithm. Accurate tracking
Induction motor response and superior dynamic performance can be obtained due to the powerful online learning
capability of the CMAC NN.
ß 2009 Elsevier B.V. All rights reserved.
Contents
1. Introduction for the elimination of the speed sensor have been proposed:
algorithms using state equations [1,2], model reference adaptive
Accurate speed information is necessary for realizing high- systems [3,4], Luenberger- or Kalman-filter observers [5,6],
performance and high-precision speed control of an induction saliency effects [7], sliding-mode controls [8,9], sensorless vector
motor. The mechanical sensors such as resolvers or pulse encoders control [10–12] and direct controls of torque and flux [13–15].
are used to achieve the speed control loop. However, these sensors However, an induction motor is a highly coupled, nonlinear
are usually expensive and bulky. Therefore, the cost and size of the dynamic plant. It is very difficult to obtain good performance for an
induction motor drive systems are increased. entire speed range and transient states using previous methods.
Since the late 1980s, speed-sensorless control methods of Since 1990, there have been some investigation into the
induction motors using the estimated speed instead of the application of neural networks to various aspects of induction
measured speed have been studied. Various control algorithms motor control such as adaptive control [16], sensorless speed
control [17–19], as well as for motor parameter identification
purposes [20], and flux estimation purposes [21,22]. Neural
networks show great potential for modeling nonlinear systems
* Corresponding author.
E-mail addresses: chtsai@cc.chit.edu.tw (C.-H. Tsai), where it is difficult by using traditional techniques, owing to their
mfyeh@mail.lhu.edu.tw (M.-F. Yeh). inherent parallel structure and ability to learn. Especially, the
1568-4946/$ – see front matter ß 2009 Elsevier B.V. All rights reserved.
doi:10.1016/j.asoc.2009.05.001
1188 C.-H. Tsai, M.-F. Yeh / Applied Soft Computing 9 (2009) 1187–1196
CMAC NN [23,24], a particular type of neural network, is capable of Mapping of CMAC NN can be divided into two parts as follows:
learning nonlinear functions quickly due to the local nature of its
weight modification. Therefore, this kind of network is easier to f : s!A
w (1)
implement in the motor control algorithm than the other types of g : A! p;
neural network. Furthermore, the CMAC NN is suitable for on-line where s is a k-dimension input space, A is an N-dimension
and real-time implementation of modeling and controlling association cell vector which contains M active elements, P is the
induction motor that typically exhibit nonlinear behavior. output space and W is the corresponding weight vector in which
In this paper, a new method for speed estimation of an the mapping information of P is stored.
induction motor is presented. In the proposed approach, two The first mapping function, f, means that each state in s maps
models of state variable estimation are used. One provides the onto the vector A* 2 A that contains M nonzero elements. In the
desired output, and the other one gives the estimated values. The second mapping, output P will be the sum of the weights whose
weights of the CMAC NN are chosen to be the motor parameters, corresponding association cells are activated. Its mathematic form
such as rotor speed. The estimated speed is then fed to the can be represented as follows:
adjustable model. The output of the adjustable model is compared
to the desired value, and the total error between the desired and P k ¼ gðak Þ ¼ Ak W; (2)
the estimated state variable is then backpropagated to adjust the
weights (i.e., rotor speed) of the CMAC NN, so that the output of this ak
where k means k-th state, means the set of activated association
model will coincide with the desired value. The simulation and cells of k-th state, and Ak is the association cell vector of k-th state.
experimental results will show that the effectiveness and validity The weights will be updated by the learning as follows:
of the proposed scheme. a
This paper is structured as follows: in Section 2, the basic W k ð j þ 1Þ ¼ W k ð jÞ þ DW k ð jÞ ¼ W k ð jÞ þ ðY d;k P k ð jÞÞ
M
concept of the CMAC NN is introduced. The Section 3 describes the a
¼ W k ð jÞ þ ðY d;k Ak W k ð jÞÞ (3)
mathematical model of the induction motor. The speed estimation M
method using CMAC NN for speed-sensorless vector control drives
where Wk means the weight vector at k-th state, j means j-th
is constructed in Section 4. In Section 5, the simulation and
iteration, a is learning rate, M is the number of activated
experimental system setup is discussed. The last two sections
association cells(generalization width), and Yd,k is the desired
provide the experimental results and conclusions, respectively.
output at k-th state. In (3), the learning rule of CMAC is to distribute
the error equally to the corresponding weights. The actual output
2. The basic concept of CMAC NN
of each state can be represented as follows:
2 3
In a CMAC NN, each state variable is quantized and the problem w1
space is divided into discrete states [23,24]. A vector of quantized 6 w2 7 X n
6 7
input values specifies a discrete state and is used to generate ysk ¼ ask W ¼ ½ask;1 ask;2 ask;n 6 .. 7 ¼ ask; j w j ; (4)
4 . 5 j¼1
addresses for retrieving information from memory elements for wn
this state. The architecture of the CMAC NN is shown in Fig. 1.
Learning space (input layer) s is quantized into discrete states s1, s2, The functioning of CMAC is described in the following. In each
. . ., sk . Each state maps into an association cell matrix A (conceptual time step k, the CMAC neural network involves a learning process
layer). Suppose that ȧk is the set of nonzero or active cells of k-th and a recall process. Initially, the CMAC table is empty. In the recall
state of A. The actual output of each state would be the sum of the process, as shown in Fig. 2, used Yd(k + 1) and Y(k) as the address to
weights stored in the memory cells (physical layer) which are generate the control signal Uc from the CMAC table, where the
corresponding to the activated association cells. Note that Yd(k + 1) is the desired system output of the next time step.
difference between actual output and desired output is used to In the learning process, as shown in Fig. 3, the input of the
update the data stored in the corresponding memory cells. controlled plant U is treated as a desired output to modify the
The state equations of an induction motor in the stationary Fig. 3. CMAC learning process.
reference frame is described in the following [25]:
dXðtÞ
¼ A XðtÞ þ B V s ðtÞ; (5)
dt
where
X ¼ ½ ids iqs fdr fqr T ;
Y ¼ ½ ids iqs T ;
V s ¼ ½ vds vqs T
2 3
Rs 1s Lm Lm
6 þ 0 vr
6 s Ls st r s Ls Lr t r s Ls Lr 77
6 Rs 1s Lm Lm 7
6 0 þ vr 7
6 s Ls st r s Ls Lr s Ls Lr t r 7 Fig. 4. Block division of CMAC NN for a two-variable example.
A¼6
6
7
7
6 L 1
vr 7
m
6 0 7
6 tr tr 7 convenient to express these equations in the stationary frame since
4 Lm 1 5
0 vr the induction motor voltages and currents are measured in the
tr tr
stationary reference frame, and they are expressed in (7) and (8) as
follows:
2 1 3
0
6 s Ls 7 Voltage model:
6 7
6 1 7 1 0 0 0
B¼6 0 7; C¼ Lr
6 s Ls 7 0 1 0 0 ḟr ¼ ðV s Rs is s Ls i̇s Þ (7)
4 5 Lm
0 0
0 0 Current model:
T
is ¼ ½ ids iqs stator current 1 Lm
T l̇r ¼ I þ vr J lr þ is (8)
fr ¼ fdr fqr rotor flux tr tr
Rs, Rr stator and rotor resistance T
where the symbol ‘‘’’ denotes the time derivative, lr ¼ ½ ldr lqr is
Ls, Lr stator and rotor self inductance the same rotor flux but obtained from (8), and the matrices I, J are
Lm mutual inductance defined as:
s leakage coefficient, s ¼ 1 L2m =ðLs Lr Þ 1 0 1 1
I¼ ; J¼ :
0 1 1 0
tr rotor time constant
vr motor angular velocity
T
The stator current is ¼ ½ ids iqs and the rotor flux fr ¼ 4. CMAC speed estimator design for sensorless vector control of
T
fdr fqr are chose as the state variables. The input variable induction motor
is the stator voltage V s ¼ ½ vds vqs T .
From (5), two well known flux simulators are obtained. One is Owing to Eq. (7) does not involve the speed vr, it is selected
called the voltage model and the other is the current model. It is to generate the desired value of rotor flux, fr, and (8) which does
1190 C.-H. Tsai, M.-F. Yeh / Applied Soft Computing 9 (2009) 1187–1196
involve vr generates the estimated rotor flux, lr. Eq. (8) may be
regarded as CMAC model with adjustable weights. Eq. (7) may
also be regarded as a reference model. Fig. 5 illustrates the
structure of the proposed speed estimator of an induction motor
using CMAC. Given complete data of the motor parameters and
the motor speed, these two model outputs should coincide.
However, any mismatch between the speed used in the CMAC
and the motor speed would automatically result in error
between the output of the two estimators lr and fr. It is this
error between the desired rotor flux and the actual rotor flux
that will be used to adjust the weights of the CMAC, in other
words the rotor speed vr in (8).
To obtain the learning algorithm, the discrete–time model of (8)
is first derived using the backward difference method: Fig. 7. Flowchart of the training algorithm for the CMAC speed estimator.
lr ðkÞ ¼ W 1 Z 1 þ W 2 Z 2 þ W 3 Z 3 (9)
where W1 = vrT, W2 = 1 (T/tr), W3 = (Lm/tr)T, Z1 = Jlr(k 1), represent the weights of the networks, is and lr(k 1) are the
Z2 = Ilr(k 1), Z3 = Iis(k 1), and T is the sampling period. input features of the CMAC NN as shown in Fig. 5. The error output
The model (9) can be represented as a two-dimensional CMAC between the desired flux and the plant output is given by
model with three index memories, where W1, W2, and W3 eðkÞ ¼ fr ðkÞ lr ðkÞ. The weights in CMAC are tuned so as to
Fig. 9. Estimator performance (a) estimated speed and (b) estimated rotor flux.
1192 C.-H. Tsai, M.-F. Yeh / Applied Soft Computing 9 (2009) 1187–1196
Fig. 10. Improved estimator performance (a) estimated speed and (b) estimated rotor flux.
Fig. 11. Speed and current response of speed-sensorless control with load change
vr ¼ 1800 rpm. (a) The actual rotor speed, (b) the estimated rotor speed, and (c) the Fig. 12. Speed reversal operation of vr ¼ 900 rpm with load applied. (a) The actual
feedback a-phase current. rotor speed, (b) the estimated rotor speed, and (c) the feedback a-phase current.
C.-H. Tsai, M.-F. Yeh / Applied Soft Computing 9 (2009) 1187–1196 1193
Fig. 14. Reference, measured, estimated speed, and speed estimation error with all
five-speed observers during a speed reversal from 100 to 100 rad/s (experimental)
[28].
6. Experimental results
Fig. 15. Reference, measured, and estimated speed in a square wave reference of amplitude 2 rad/s and pulsation 0.3 rad/s (experimental) [28].
deceleration mode with load applied at star-up. Similarly, as in speed-sensorless drive. From Fig. 13, it is shown that the proposed
Fig. 11, the proposed scheme has high performance at the rated algorithm also has good speed estimation and high-performance
speed region. Fig. 13 shows the speed reversal and current control vector control characteristics at low-speed operation. As shown in
performance in the low-speed operation region (10 rpm) of the Figs. 11–13, the speed estimation error is very small.
Fig. 16. The weights change in time with the operating speed and torque. (a) The estimated speed, (b) the weight of the CMAC NN, (c) the d-axis current, and (d) the weight of
the CMAC NN.
C.-H. Tsai, M.-F. Yeh / Applied Soft Computing 9 (2009) 1187–1196 1195
7. Conclusions
References
[20] B. Karanayil, M.F. Rahman, C. Grantham, Stator and rotor resistance observers for [24] J.S. Albus, Data storage in the cerebellar model articulation controller (CMAC),
induction motor drive using fuzzy logic and artificial neural networks, IEEE Journal of Dynamic Systems, Measurement, and Control-Transactions of the
Transactions on Energy Conversion 20 (4) (2005) 771–780. ASME 97 (3) (1975) 228–233.
[21] J.O. Pinto, B.K. Bose, L.E.B. da Silva, A stator-flux-oriented vector-controlled induc- [25] P.C. Kuarse, Analysis of Electric Machinery, McGraw-Hill, New York, 1986.
tion motor drive with space-vector PWM and flux-vector synthesis by neural [26] F.J. Lin, R.J. Wai, P.C. Lin, Robust speed sensorless induction motor drive, IEEE
networks, IEEE Transactions on Industry Applications 37 (5) (2001) 1308–1318. Transactions on Aerospace and Electronic Systems 35 (1999) 566–578.
[22] A. Ba-Razzouk, A. Cheriti, G. Olivier, P. Sicard, Field-oriented control of induction [27] S.H. Kim, T.S. Park, J.Y. Yoo, G.T. Park, N.J. Kim, Dead time compensation in a
motors using neural-network decouplers, IEEE Transactions on Power Electronics vector-controlled induction machine, in: Proceedings of IEEE PESC’98, 1998, pp.
12 (4) (1997) 752–763. 1011–1016.
[23] J.S. Albus, A new approach to manipulator control: the cerebellar model articula- [28] M. Cirrincione, M. Pucci, G. Cirrincione, G.A. Capolino, Sensorless control of
tion controller (CMAC), Journal of Dynamic Systems, Measurement, and Control- induction machines by a new neural algorithm: the TLS EXIN neuron, IEEE
Transactions of the ASME 97 (3) (1975) 220–227. Transactions on Industrial Electronics 54 (1) (2007) 127–149.