Observadores Verghese Sanders
Observadores Verghese Sanders
Observadores Verghese Sanders
1, FEBRUARY 1988
85
SANDERS
Abstract-Flux estimation in induction machines is examined from the viewpoint of observer theory. It is pointed out that estimators presently used in connection with schemes such as field-oriented control are typically real-time simulations of machine equations, without feedback of any corrective prediction error. We show that corrective feedback can be used to speed up convergence of the flux estimates, and note that it can also reduce the sensitivity of the estimates to parameter variations.
I. INTRODUCTION
IELD-ORIENTED control has (along with some variants) emerged as an important approach to the control of ac machines, and continues to be discussed and developed in the literature (see [ I]-[3], [27], [28], and references therein). Rotor flux estimation from the terminal variables (stator voltage and current, and rotor speed) is a key step in the most popular implementations of such field-oriented control for induction machines. The estimation schemes in use for this purpose are typically real-time simulations of the dynamic equations governing rotor flux. The task of rotor flux estimation may also be expected to arise in other approaches to control and monitoring of induction machines. A framework for understanding and extending flux estimation schemes in a unified way is provided by observer theory, which is briefly reviewed in Section 11. We use this framework in Section 111 to assess the literature on flux estimation in induction machines, pointing out the constrained convergence rates of the real-time simulations typically used. Section IV begins by examining a real-time simulator based on the equations governing the rotor circuit, as this is a preferred estimation scheme for field-oriented control. We then show analytically, and verify by numerical simulations, that the modifications suggested by observer theory yield flux estimators that converge faster. Though present field-oriented control schemes demonstrate high performance, it is believed that there will be situations where improved convergence of the flux estimator itself will be called for. Section V outlines a similar development for an estimation scheme based on the stator circuit. Both these schemes correspond to reduced-order observers; a full-order observer is derived in Section VI. The use of the observer structure to achieve objectives other than
Manuscript received July 30, 1986; revised June 4, 1987. This work was supported in part by the MIT/Industry Power Electronics Collegium, and in part by a grant from the General Electric Company. In addition, G . C. Verghese was supported by the Soderberg Chair in Power Engineering at MIT, and S. R. Sanders was supported by an IBM Fellowship. i t h the Laboratory for Electromagnetic and Electronic The authors are w Systems, Massachusetts Institute of Technology, Cambridge, MA 02 139. IEEE Log Number 8718160.
faster convergence rate, such as reduced sensitivity to pararneter variations, is also mentioned in these sections. Section VI1 discusses issues related to sampled-data implementation of observers. A preliminary report on the work presented in this paper appeared in the conference paper [4], while several details not shown in the present paper are given in the thesis [51. Some pioneering work along the directions pursued in this paper can be found in papers of Bellini et al. [6]-[8] and, more recently, [9]. Our results, while similar in several respects (even though initially developed completely independently), are perhaps more transparent. One reason for this is that our development views an observer as a real-time simulation corrected by feedback of a prediction error term, and thereby permits the observer approach to be directly related to existing flux estimation schemes. There is also significant overlap between our work and the interesting and thorough study in the recent thesis (in German) of Zagelein [lo]. Some of these connections to [6]-[IO] are noted at appropriate points in the paper. It should be kept in mind that the basic methodology of observer design is applicable to a much broader class of problems than the particular (and important) one addressed here, and similar issues may be expected to arise in other situations involving estimation and control for electrical machine systems. One of the objectives of this paper, therefore, is to provide a paradigm for treatments in other contexts. 11. ESSENTIALS OF OBSERVER THEORY Consider a system modeled by the state-space description x(t) =Ax(t)
+B u ( t ) + G d ( t )
(1)
where x(t) is an n-dimensional state vector, x(t) is its component-wise derivative, u(t) is an m-dimensional vector of known inputs, and d ( t ) is a k-vector of unknown inputs representing external disturbances and parameter uncertainties. Suppose the measured outputs of the system are modeled by
U( t ) = Cx(t) + H d ( t )
wherey(t) is ap-dimensional vector. Here A , B, C, G , and H are all constant matrices of appropriate dimensioiis. Observer theory is aimed at providing a real-time estimate 2(t) of the state x(t) in the above model, using only the known signals U(*) and U(*).The theory is well developed in the
86
observer design, one would not attempt in practice to make the observer overly fast. A fast observer would require large values for the entries of K , and these large values would in turn cause large entries in G + HK, with a corresponding accentuation of the effects of nonzero d ( t ) . In fact, the primary objective of observer design often shifts altogether to that of obtaining estimates that are less sensitive to distur2( t )= A$( I ) + Bu ( t ) . (3) bancesiuncertainties, rather than obtaining estimates that However, an observer for the system modeled by (1) and (2) converge fast. For example, the most familiar version of the goes one step further, in that one corrects the above real-time celebrated Kalman filter (see references in [l 11) is precisely an simulation by use of the discrepancy between the actual observer in which the gain K is chosen to give minimum mean outputs y ( t ) of the system and the prediction C i ( t ) of these square estimation error when d ( t ) is modeled as a white outputs that is obtained by ignoring the term H d ( t )in (2). This Gaussian noise process. Our results in this paper focus entirely on obtaining faster flux estimates in induction machines, but results in the system of equations we shall refer to work by others that is aimed at obtaining less ? ( t ) = A i ( t )+ B u ( t )+ K [ c i ( t ) -y( t)]. (4) sensitive estimates. It is also possible to consider combining these approaches, trading off speed of convergence against The term in brackets is called the prediction error, and the lowered sensitivity. The review of elementary observer theory given in this matrix K is termed the observer gain. When K = 0, one recovers the simple real-time simulation of (3). Given U(.) section is only intended to expose the underlying philosophy of and y ( - ) ,the system (4) can be solved by integrating forward using a real-time simulation that is corrected by a prediction in real time from some specified initial condition i ( O ) , using error term. There are many variants of the above situation that analog and/or digital methods (e.g., using a microprocessor), could be addressed. For example, the measured outputs may thereby providing a state estimate. be given by a more complicated form than ( 2 ) , perhaps The effectiveness of the observer is assessed by examining involving the inputs, their derivatives, and state derivatives. In the dynamics of the estimation error this case, one may want to construct the observer with modified variables so as to avoid differentiation of signals. e ( t )= i ( t ) -x(t). ( 5 ) This will be the situation for the particular class of observers we derive in Sections IV and V , but we defer the treatment of It is easily seen from ( l ) , ( 2 ) , and (4) that this case to those sections, rather than attempting a general statement here. Similarly, for machines operating with variae( t ) = ( A + KC)e( t ) - ( G K H ) d ( t ) . (6) ble speed, our models will turn out to be time-varying, so that The initial condition for (6) is the initial estimation error e(O), the associated dynamics is no longer simply characterized by which (even if small) is invariably nonzero because of eigenvalues of the governing matrices. Again, we shall defer treatment to the appropriate sections below, rather than trying uncertainties regarding the initial state of (1). to develop the requisite results in any generality here. Consider first the case where the disturbancehncertainty term d ( t ) can be taken to be 0. The behavior of (6) is then 111. ASSESSMENT OF EXISTING FLUX ESTIMATION SCHEMES governed by the eigenvalues of A + KC. If we set K = 0, context of linear systems (see [ I I], for example) and many results are known in the case of nonlinear systems as well (see [ 121, [ 131, for example). A straightforward approach to providing a state estimate for the model (1) when d ( t ) is unknown is via a real-time simulation of (1) that ignores the term G d ( t ) ,namely
i.e., if the real-time simulation is not corrected by a prediction error term, then the error dynamics is governed by the eigenvalues of the matrix A , and is thus the same as that of the underlying system (1). For a sluggish or unstable system ( I ) , this is typically unacceptable, because the estimate i ( t ) will then converge only sluggishly or not at all to x ( f ) .We might expect that the error dynamics can be modified to obtain faster convergence of the estimate if we appropriately pick some nonzero observer gain K . It turns out-see [ 1 I]-that, under a so-called observability condition on the pair of matrices A , C, an appropriate choice of K can place the eigenvalues of A + KC arbitrarily (subject only to the requirement that complex eigenvalues are specified in conjugate pairs). The error dynamics can therefore, in principle, be modified arbitrarily from that of the simple real-time simulator. The unavoidable presence of system disturbances and model uncertainties, i.e., the fact that d ( t ) is nonzero, causes the error behavior to not be governed purely by the eigenvalues of A KC, as is evident from (6). Thus, even if one makes the simplifying assumption that d ( l ) = 0 when carrying out the
The literature on flux estimation for electrical machines rarely makes a clear distinction (notationally or otherwise) between the state of the system being studied and the state of the estimator itself, thus obscuring the issue of the behavior of the estimation error. There are some notable exceptions, the most explicit treatments being [6]-[lo], [14], [15], and, in a Kalman filter setting, 1191-1211. The distinction between the underlying state and its estimate is also made in [16] and [17], where the focus is on the effects of parameter errors. A further striking fact is that most flux estimation schemes that we are aware of correspond essentially to real-time simulations that have no correction term derived from the prediction error. This applies to [ 141 and [ 151 as well, even though they use the word observer in their titles. Schemes that do use a corrective prediction error include [l], [6]-[lo], [16], [18]-[22]. As already mentioned in Section I, the closest in spirit to our work are [6]-[ lo], and these will be mentioned again later. The results in [l], [lo], [16], and [ 181 are primarily concerned with reducing sensitivity to uncertainties in parameters (especially the rotor time constant,
87 where A, and i, are two-component vectors that constitute the two-axis representations (in stator-fixed coordinates) of rotor flux and stator current, respectively, w is the angular velocity of the rotor (we are assuming without loss of generality that there is only one pole pair), T, is the rotor time constant, M is the mutual inductance between rotor and stator, and
which varies substantially with operating temperature) or to errors in measurements (of speed, for example-see [lo] and [18]). Of these latter four references, the schemes in [lo] and [18] have the same essential form as the observers that are discussed later in this paper, though the estimator in [18] is not presented as an observer. The schemes in [I] and [16], on the other hand, generate their prediction error terms in a slightly more intricate way, and use these to correct (on a much slower time-scale than the flux dynamics) the value of the assumed rotor time constant in a real-time simulator; they may thus be considered slowly adapting real-time simulators, rather than observers in the sense of this paper. The papers [19]-[22] proceed via an extended Kalman filter or least squares approach and therefore automatically have a corrective prediction error term. We may also note that [23] mentions the use of corrections to the real-time simulator but does not elaborate on this at all. The discussion following (6) suggests that the dynamics of the estimation error in all those schemes that are simply realtime estimators is governed by the rotor time constant. We shall exhibit this fact in more detail in Section IV, and show how to obtain faster error decay by the use of a corrective prediction error signal. An alternative estimation scheme based on the stator circuit is examined in Section V, and is found to have no error decay mechanism! Again, the use of a corrective prediction error signal serves to remedy the situation. There are perhaps two main reasons for the neglect of error dynamics in existing flux estimation schemes. Firstly, fieldoriented control has been found in practice to be satisfactorily robust and effective without faster flux estimation than that provided by present schemes. Despite this first reason, the issue needs to be exposed and studied, because there will undoubtedly be applications where error decay at a rate limited by, for example, the rotor time constant may not be at all satisfactory. Secondly, existing theoretical treatments of this error dynamics, such as [6]-[9], [14], [15], [19]-[22], are not easily penetrated. This fact gives us additional motivation to examine the question of error dynamics. It has already been noted in Section I that our study here of observers for faster flux estimation can also serve as a paradigm for similar treatments in the context of other estimation problems in machine systems. There is a clear trend toward replacing sensors that are expensive, unreliable, or hard to install, with less costly measurement schemes and more sophisticated signal processing; see, for example, the discussions in 111, [201, [22], [24], [27]. One will thus inevitably have to confront the issue of estimation errors and their dynamics in other contexts. IV. OBSERVER BASED ON A . A Real-Time Simulator Consider the idealized two-axis model of a squirrel-cage induction machine that is used throughout the literature on field-oriented control (see, for example [l]). The rotor flux dynamics in this model satisfies
THE
Note that A,, is, and w can, and generally will, all be functions of time, though we shall not explicitly show the time argument in order to avoid notational clutter. It should also be mentioned that A, and i, can also be taken as complex numbers rather than real two-component vectors, with 1 and J then being interpreted as 1 and respectively (see [25], [27]). The model (7) motivates the following real-time simulation that constitutes a common estimation schemes for rotor flux
a,
x;
= [( - l/T,)I+
wJ]x,+(l/T,)Mi,.
(9)
It is assumed that rotor speed and stator current are known quantities, so that the state-space model (9) is in principle simply implemented, with analog or digital hardware to perform the required real-time integration of (9). The error in the flux estimate produced by (9) is
e = A, - A ,
(10)
and is governed by the following state-space equation, obtained by subtracting (7) from (9): e ' = [( - l/T,)I+ wJ]e. (1 1)
ROTOR CIRCUIT
As mentioned in Section 111, this equation is rarely displayed or examined explicitly in the literature, with [SI, [9], [15], and [16] being exceptions (and with [6], [7], [lo] and [I41 displaying the analogous equation for the full-order observer, see Section VI). For a given speed waveform w , (1 1) is a linear system. However, since w is in general a time-varying function, the convergence properties of (1 1) cannot in general be studied by simply taking the eigenvalues of the matrix in brackets. When the speed w is constant, this matrix becomes constant. In this case, since the eigenvalues of the matrix are - 1/T, -t jw (which is most easily seen if one understands the isomorphism b J and the complex between matrices of the form a 1 number a + j b , see [25]), the two scalar components of e display an oscillation at the frequency w (the constant rotor speed) that is damped with a time constant of T, (the rotor time constant). Significant insight into the case of general, time-varying w is also fairly easily obtained. Premultiplying both sides of (1 1) by 2e*, where the * denotes transposition (or conjugation, if the complex variable notation is being used), and using the facts that 2e*e' = (e*e)' and e * J e = 0, we see that the squared magnitude of the error satisfies the equation
(12)
(7)
The magnitude of the error thus decays with the time constant
88
1.
FEBRUARY 1988
of the rotor. This analysis is really the Lyapunov function analysis in [15], with e*e as Lyapunov function.
the error decay is scaled down from that of the conventional observer by this factor, while the frequency of oscillation in the error decay waveform is scaled up by the same factor. For the more general time-varying case, we proceed as earlier to find that (1 2) is replaced by
(20)
(21)
(13)
where U = 1 - M2/(L,L,), the leakage parameter, with L,, L,, and R, being the rotor and stator inductances and the stator resistance, respectively; note also that T, = L,/R,, where R, is the rotor resistance. If the stator voltage is measured, it can be compared with the stator voltage predicted on the basis of (13), but using i; instead of X i
It is evident that k can be chosen to make this time constant considerably smaller than T,. (The analysis of the dynamics of the closely related observer in [ 8 ] , [9] is carried out by invoking Wazewski's inequality, which involves essentially the same ideas.) We now consider how to avoid having to take derivatives in implementing (14), (15). First define the auxiliary variable
z = [ I - K (M/L,)]ir- K ( uL,)i,. (22) Then z' is simply obtained by grouping together all the terms of ( 1 5 ) that contain derivatives (after substituting for G, from (14)), so that z ' = [ ( - l/T,)Z+wJ]~,+(l/T,)Mi,+K(R,i,-u,). (23)
Now (22) shows that (24) We can substitute this expression for in (23) to get a state equation for the vector z that is driven only by U, and is, not their derivatives. This can be solved forward from whatever initial condition z(0) is imposed by the choice of i,(0) in ( 2 2 ) . To then find from z , one simply uses (24). Thus, no differentiation of signals is needed to implement this observer.
C J = ( M / L r ) i+(uL,)i: i +R7i,.
The resulting observer then takes the form
= [( - l / T , ) I +
(14)
wJ]i,+(l/T,)Mi,+K(G,-u,)
(15)
x,
, is computed from (14). K is a 2 x where U , is measured and C 2 matrix of observer gains. This is essentially the same observer as that of [8], [ 9 ] , though our approach to it is somewhat different. It is also closely related to the flux estimator in [ 181, which will be further discussed later in this section. We shall shortly show how to avoid having to take derivatives in implementing (14), (15). First, however, a straightforward calculation shows that the system (1 1) that governed error dynamics of the real-time simulation is now replaced by
x,
e' =[-(l/T,)Z+
or
wJ]e+(M/L,)Ke'
(16)
e'
=[I-
(M/L,)K]
I[ - ( 1/
T,)I+ w J ] e.
(17)
It is evident that different choices of the observer gain matrix K will lead to different error dynamics. Suppose, for illustration, that we pick
K=kI
(18)
where k is a scalar observer gain parameter. If the rotor speed w is constant, then (17) is a time-invariant linear system, and the eigenvalues that govern it are seen from (17),(18) to be
( I -kM/L,)-'(-l/T,+jw).
(19)
D. Extensions
The particular gain in (18) was chosen for ease of illustration. A more general gain, suggested to us by results in [8], is
Thus, the eigenvalues of the error dynamics are scaled up by the factor (1 - k M / L , ) - ' , i.e., the time constant that governs
89
Consider the implementation of the rotor flux observer (15) in the case where the assumed value of rotor resistance R , is not equal to the actual value R,. The observer then becomes
Parameters R
of machine used i n n u m e r i c a l s i m u l a t i o n
= 0.0553 H
= 0.3
0.0533 ti
R r = 0.3
L v = 0.0546 H
+ ( R , - R,) h,
(28)
It is thus seen that the error dynamics contains a driving term that is associated with the uncertainty in the rotor resistance. The error system (29) has the form of the error system (6) discussed in the section on observer theory. Note that the strength of the driving disturbance is dependent upon the state or operating point of the induction machine. There are two general routes that may be followed in K = kl I + k2J. (25) analyzing this error dynamics. If prior bounds on the machine If the rotor speed w is constant, the corresponding error state variables A,, is and on the uncertainty in the rotor system is again a time-invariant linear system. The governing resistance can be determined, then by picking an appropriate eigenvalues are easily computed to be Lyapunov function (e.g., e*e) the error e can be shown to be asymptotically confined to a certain bounded region about the -[gl/Tr+g~w+ l j [ g tw-g~/TrI (264 origin. A second approach is to consider the behavior of (29) when the machine is in the sinusoidal steady state. The where literature contains numerous studies using this latter approach. g l = ( l -MkI/L,)/[(l -Mkl/Lr)2+(Mk2/L,)2] (26b) Garces [ 161 displayed a similar error system to that of (29) with gain K = 0, but the focus in [16] (and in [ l ] )was to g2=(Mk2/Lr)/[(1 -M~I/L,)~ (Mkz/L,)']. + (26~) slowly update the assumed value R, to reduce steady-state It is not hard to see from (26) that by proper choice of kl and errors in the rotor flux estimate. Vagati and Villata [18] k2 one can place these eigenvalues at any specified pair of proposed an observer similar to the one here (though they did conjugate locations. It is in principle also possible to vary k, not label it an observer), with a particular gain that resulted in and k2 as a function of (a slowly varying) operating speed, to reduced sensitivity to proportional variations in R, and R, control the variation of error dynamics with the operating simultaneously and to measurement errors in the speed w. It is point in some desired fashion, in accordance with (26); this worth mentioning that this particular gain selection actually sort of idea is explored (for a full-order observer, but similar lead to a slower estimation error convergence rate than that of ideas would apply here) in [6].When w is not constant (and the real-time simulator. Bellini et al. [9]studied the effects of not slowly varying), a Lyapunov analysis of the kind used to uncertainties in the stator and rotor resistances and the obtain (12) and (20) can be carried out for the present case of machine inductance parameters. In [ 9 ] , steady-state estimation the gain in (25), but we omit the details. error results are tabulated for various operating speeds and for various parameter errors. The gains suggested in [9] for E. Effects of Parameter Uncertainty and Measurement minimizing sensitivity to parameter uncertainties are generally Errors different from K = k l . The thesis of Zagelein [ l o ]contains It is important to examine the effects on the observer of the most comprehensive discussion of steady-state estimation errors in measured speed, in the current and voltage signals, error in conventional estitnation schemes and in observers of and in the machine parameter values. We shall illustrate an the type discussed in this paper. It also demonstrates the approach to studying such effects by examining the case of improved performance attainable by use of an observer in uncertainty in the rotor resistance, a parameter that is known field-oriented control of induction machines. to vary considerably with the operating temperature [ l ] ,[16]. There are many other directions in which the above scheme References to some of the literature on the effects of needs to be further investigated and developed. The study of measurement and parameter errors will also be given. issues related to microprocessor implementation is of particu(e) (f) Fig. 1. (a) Speed. (b) Rotor flux on axis 1. (c) Conventional flux estimate (9). (d) Flux estimate of observer with corrective prediction error term (23), (24). (e) Error in conventional estimate (11). (f) Error in observer's estimate (17).
90
lar interest, see 191, [27], [28], and the comments in Section VII.
V. ORSERVER BASED ON
THE
STATOR CIRCUIT
There are many flux estimation schemes that may be considered, as evident from the review in [IO]. One natural alternative to the schemes discussed in Section IV is based on rewriting (13) as
A , = ( L , / M ) (U , - R, i s )- (aL,L, / M )is
(30)
=(L,/M)(u~-~~i,)-(aL,L,/~)i~ (31) .
The limitation of this scheme that is typically quoted in the literature is the poor behavior at low rotor speeds. Note the additional fact, however, that the estimation error remains constant, because (if the scheme is actually implemented as above) the derivatives of actual and estimated flux are equal! There is no mechanism for decay of error induced by initial uncertainty or noise during operation. One can now attempt to improve this estimator by feeding in a corrective prediction error term. In this case, it is (7) that we turn to for the prediction error term. The resulting observer then has the form
= ( L , / M ) (U , - R,is) - (aL,L,/M) i :
x,
x,.
+K (
- is)
(32)
where
U$
+ I(
--
1 / T,) Z + w J ]
xr } .
(33)
(34)
or
= -[(I-
(T,/M)K]
I(
(35)
The parallel between this error model and the one in the previous section is evident. Once again, simple choices of K such as those in (1 8) or (25) will lead to error dynamics that is substantially different from that of the uncorrected system. Also, by use of appropriate auxiliary variables, it is again straightforward to implement the observer without use of differentiators. The question that now arises is how one is to choose between the observer in this section and that in the previous section. The two are closely related, since they actually result from using the same sets of equations, and the error dynamics obtained by any particular choice of gain matrix in one scheme can typically be obtained by some appropriate choice of gain matrix in the other. However, it may be that one scheme is more easily implemented than the other in a given situation. For example, if one wanted the time constant of error decay to be T,, with a gain of the form k l , then k would be 0 in the first scheme but infinite in the second. We have not carried out any detailed comparative study.
The observer proposed in [I41 is a fourth-order real-time simulation, without any corrective prediction error term. It generates estimates of both stator and rotor fluxes, using measured values of stator voltage and rotor speed. The present subsection reviews the analysis of [I41 (displaying its key features in a much more direct way than [14]). The next subsection then examines the use of a corrective prediction error term, based on measurements of stator current. The fourth-order system model under consideration is given by
U,
91
stator flux, rotor flux, and stator voltage, respectively, The matrices R and L represent winding resistances and machine inductances, respectively,
0.02
0.
\
(a)
0.075
If the observer is simply a real-time simulation of the above system model, as it is in [14], then the error model is easily seen to be given by
1
0 075
where e is now the four-component vector denoting the error in the flux vector estimate. If w is (nearly) constant, the dynamics of the error system is (approximately) governed by the eigenvalues of the system in (38). The special structure of (38), see [25], allows us to write the eigenvalues down explicitly, as the roots p l , p2 of the polynomial p2+ [(l/T,a)+ (I/T,a)-jw]p+ (1 -jwTr)/( TSTra) (39)
(b) Fig. 2. Fourth-order observer without corrective prediction error term. Rotor flux estimation error on axis 1, (38). (a) at 0 rad/s and @) at 377 radls.
along with their complex conjugates pT, p f , where T, is the stator time constant L,/R5. Fig. 2 shows results of numerical simulations of the observer error transients for the same machine used for Fig. 1. Near 0 speed, the above eigenvalues are approximately - 2.77 (twice) and - 182.0 (twice). These values are reflected in the error transient associated with the rotor flux estimate on axis 1, shown in (a); the response is ultimately dominated by the larger time constant, which is 0.36 s ( = 1/2.77). At a speed of 377 rad/s, the eigenvalues are computed to be at -93.0 f j354.0 and - 91.7 f j22.7. Again, these values are reflected in the rotor flux error waveform for axis 1, shown in (b); the time constant of the envelope is now 0.01 s ( = 1/91.7). If w is not constant, a natural route to follow is Lyapunov analysis. Instead of examining the derivative of the squared length e*e as before, we examine that of a weighted squared length, e*R-le. It is not hard to show from (38) that
derived from measurements of stator current. This approach has been taken earlier in [7], but our treatment is rather different. It is convenient for our purpose to work with a model whose state variables are stator current and rotor flux. This is also a practical choice, since many control schemes need accurate estimates of these variables. The model is given by
-.
where
a = (L:R,+M2R,)/(bLr)
and
(43) (44)
b = aLrL,.
We .~ propose an observer of the form
( M / T r ) I ( - l/Tr)Z
(e*R-e) = -2(e*L-e)
< O for e#O
(40)
where the inequality follows from the positive definiteness of L (or, less technically, from the fact that L, > 0 and L,Lr > M 2 ) . It can be shown from (40) that the weighted squared length of e decays at least as fast as an exponential of time constant (max eigenvalue of L ) / 2 (min { Rs, Rr}). (41)
(45) where the k; are scalars. Note the use of speed-dependent gains in (45). The resulting model for the observer error dynamics is then
Applying this bound to the constant speed case, and comparing with the exact eigenvalues given in the previous paragraph, shows that the bound in (41) tends to be conservative at higher speeds, but good at lower ones.
k 2J k4 J
I-(7b)J] 1
1
e. (46)
92
Note that we can freely determine the scalar coefficients in the left-hand blocks of the two matrices in (46). If k , and k3 are selected such that
kl - a =
and
k2/Tr
(474
0
0 075
0 075
e' = A Q ( w)e
where
(484
- 0 0 075
A=
and
':
0 075
k2I ( - M / b ) l k41 I
1
.
(48c)
Q(w)=
(b) (4 Fig. 3, Fourth-order observer with corrective predlction error term, (45). (a) Stator current estimation error on axis 1 at 0 radis. (b) Rotor flux estimation errnr at 0 rad/s. (c) Stator current estimation errnr at 377 radi's. (d) Rotor flux estimation error at 377 radis.
( - UTr)!+ W J
( - l/Tr)Z+W J
The freedom that we have in selecting kz and k4 can be used to place the eigenvalues of A in pairs at arbitrary locations, as is easily verified by noting that the characteristic polynomial of A is
implementation is natural in the context of microprocessor control. Consider first the linear, time-invariant, continuoustime system (1) with d ( t ) = 0, and suppose that its input u ( t ) is constant over intervals of length T , starting at t = 0
u ( t ) = u ( n T )for n T s t < ( n + l ) T , n = 0 , 1 ,
. (51)
[ p 2 - ( 1 +kZ)p+kz+k,(M/b)]'.
(49)
If the eigenvalues of A are P I (twice) and p2 (twice), then the eigenvalues of A Q ( w ) can be shown to be
[( - l / T r ) + j w ] p ,and [( - 1/Tr)?jw]p2.
It is then well known, see for example [26], that the evolution of the sampled state x ( n T ) is described by the linear, timeinvariant. discrete-time model
(524
ST
exp ( A q ) B dq
(52b)
e x p ( A q ) = I + A q + A 2 q 2 / 2 ! + . ...
(52c)
The latter matrix is called the matrix exponential. Note that F and G are independent of the discrete time index n. The model in (52) is termed the sampled-data model corresponding to the continuous-time system (1). If the underlying continuous-time system is time-varying, of the form
x ' ( t )= A ( f ) x ( t + ) B ( t ) u (t )
(53)
then the above procedure cannot be followed. However, if A ( t ) and B ( t ) can be taken as piecewise constant over intervals of length T , with values A , and B, in the nth interval, then one can still obtain a sampled model, except that it is now time-varying
x ( n T + T ) = F , x ( n T ) t G,u(nT)
where
(544
93
The major difficulty with this is the need to recompute the matrices in (54) at each time step to obtain the model that applies to that step. The main point we wish to make in this section is that the observers we have been considering so far have the feature that very little new computation is needed at each step. To see this, return to the reduced-order observer (23), (24) of Section IV. If we assume that w is constant, and that U, and is are piecewise constant, then a time-invariant sampled-data implementation of the form (52) is readily obtained by applying the above procedure. With the choice of gain K given in (18), the matrix exponential involved is
- 1 / T r ) I + W J ]T } exg {(I - k M / L r ) - [ (
= exp
0.75
1
0
0.15
-0.75
0.75
1
0. 0.15
-0.75
(cT)
cos ( d T ) sin ( d T )
- sin
(dT)
cos ( d T )
where
C=
-(1 - k M / L r ) - / T r
(533) (55c)
-c
d = ( l - kM/L,)-W.
The more interesting case occurs when w is not constant. Assuming that w is piecewise constant, taking the value w, in the nth interval, one can obtain a time-varying sampled data model of the form (54). Note from (55) that the new model for each time step is easily computed when the new value of w is obtained. The reason for this is that the matrix exponential in this case is a simple function of w. Similar comments can be made for the other observers we have considered in this paper; see [5] for details. Fig. 4 compares the performance of the continuous-time and sampled-data implementations of the reduced-order observer in Section IV. The waveform in (a) is just Fig. l(f) repeated, showing the error in the rotor flux estimate produced by the continuous-time observer, while (b) shows the estimate produced by a sampled-data observer sampling at 10 kHz. It is evident that the sampled-data implementation performs well. For comparison, the waveform in (c) shows the error obtained if one attempts to get away without computing matrix exponentials at all, but simple uses forward differences to approximate derivatives (i.e., uses the forward Euler method); the result in this instance is a disaster! Further issues related to microprocessor implementation are discussed in [9], [27], and [28]. VIII. CONCLUSION This paper has used the perspectives of observer theory to examine the problem of flux estimation in induction machines. Related work in the literature has also been noted. There are several interesting directions in which further studies of state estimation for electrical machines may be usefully pursued. Among these are the development of adaptive observers, extending the work in [ l ] and [16], and the development of nonlinear observers for estimation of rotor speed as well, extending results such as [19]-[21].
Fig. 4. (a) Same as Fig. l(f). (b) Error in sampled-data implementation of observer, IO-kHz sampling. (c) Error in approximate sampled-data implementation using forward Euler method.
consult the following very recent work, which extends the results in this paper: 1) Y. Hori, V. Cotter, and Y. Kaya, A novel induction machine flux observer and its application to a high performance ac drive system, presented at IFAC, 10th World Congress on Automatic Control, Munich, July 1987. 2) V. Cotter, Implementation of a sampled-data secondary flux observer for an induction motor and minimization of its sensitivity to parameter variation, Masters thesis, Univ. Tokyo, 1987. REFERENCES
[I1 R. Gabriel and W . Leonhard, Microprocessor control of induction motor, in Proc. Int. Semiconductor Power Converter Conf. (Orlando, FL), pp. 385-396, May 1982. P I A. Kawamura and R. Hoft, An analysis of induction motor field oriented or vector control, in Proc. 14th IEEE PESC Record (Albuquerque, NM), pp. 91-101, June 1983. [31 M. P. Kazmierkowski and H.-J. Kopcke, Comparison of dynamic behavior of frequency converter fed induction machine drives, in
Proc. 3rd IFAC Symp. Control Power Electronics Electrical Drives, (Lausanne), pp. 55-62, Sept. 1983. ~ 4 1 G. C. Verghese and S. R. Sanders, Observers for faster flux estimation in induction machines, in 16th IEEE PESC Record
(Toulouse), June 1985. 151 S . R. Sanders, State Estimation in Induction Machines, S.M. thesis, EECS Dept., M.I.T., Cambridge, MA, June 1985. I61 A. Bellini and G. Figalli, A bilinear observer of the state of the induction machine, Ricerche di Automatica, vol. 9, no. 1, pp. 7085, June 1978. 171 A. Bellini, G . Figalli, and T. Lombari, An approach to induction machines by means of the bilinear system theory, in Proc. Int. Cony. Electrical Machines (Brussels), pp. E2l2, 1978. [SI A. Bellini, G. Figalli, and G. Ulivi, Realization of a bilinear observer of the induction machine, in Proc. 2nd. Int. Cony. Electrical Variable Speed Drives (London), pp. 175-178, 1979. , A microprocessor-based state observer for the feedback control 191 of induction motor drives, in Proc. 1st European Cony. Power Electronics and App. (Brussels), Oct. 1985.
94
IEEE TRANSACTIONS ON INDUSTRIAL ELECTRONICS, VOL. 35, NO. 1 , FEBRUARY 1988 the asynchronous machine by measuring the terminal quantities only, in Proc. 3rd IFAC Symp. Control Power Electronics and Electrical Drives (Lausanne), pp. 55-62, Sept. 1983. B. Gallwitz, F. Hillenbrand, and Ch. Landgraf, A proposal for avoiding the direct measurement of speed and angular position of the synchronous machine, in Proc. Third IFAC Symp. Control Power Electronics Electrical Drives (Lausanne), pp. 63-68, Sept. 1983. B. de Fornel, Cl. Reboulet, and M. Boidin, Speed control by microprocessor for an induction machine fed by a static converter, in
W . Zagelein, Speed regulation of asynchronous motors using an observer with reduced parameter sensitivity, Ph.D. dissertation, Institute for Electrical Drives, Universitat Erlangen-Niirnberg, 1984 (in German). T. Kailath, Linear Systems. Englewood Cliffs, NJ: Prentice-Hall, 1980. I. Derese, P. Stevens and E. Noldus, Observers for bilinear systems with bounded input, Int. J. Systems Science, vol. 10, pp. 649-668, 1979. M. Vidyasagar, On the stabilization of nonlinear systems using state detection, IEEE Trans. Automat. Contr., vol. AC-25, pp. 504509, June 1980. Y . Dote, Existence of limit cycle and stabilization of induction motor via new nonlinear state observer, IEEE Trans. Automat. Contr., vol. AC-24, pp. 421-428, June 1979. Y . Dote, Stabilization of controlled current induction motor drive system via new nonlinear state observer, IEEE Trans. Ind. Electron. Contr., Insfrum., vol. IECI-27, pp. 77-81, May 1980. L. J. Garces, Parameter adaptation for the speed-controlled static AC drive with a squirrel-cage induction motor, IEEE TRans. Ind. App., vol. IA-16, pp. 173-178, Mar./Apr. 1980. A. Nabae, K. Otsuka, H. Uchino, and R. Kurosawa, An approach to flux control of induction motor operated with variable-frequency power supply, IEEE Trans. Ind. Appl., vol. IA-16, pp. 342-349, May/ June 1980. 1181 A . Vagati and F. Villata, AC servo system for position control, Int. Conf. Electrical Machines (Lausanne), pp. 871-874, Sept. 1984. I I91 Y. Dote and K. Anbo, Combined parameter and state estimation of controlled current induction motor drive system via stochastic nonlinear filtering technique, in Proc. IEEE 1,4S Conf., (Cleveland, OH), pp. 838-842, Sept. 1979. F. Hillenbrand. A method for determining the speed and rotor flux of