This invention relates generally to controlling an angular rotor speed of induction motors, and more particularly to controlling sensorless variable speed induction motors.
Methods for controlling the angular rotor speed of induction motors have evolved from variable frequency control to vector control and other variants, e.g., direct and indirect field oriented state feedback control, sensorless speed control, and adaptive field oriented control. Vector control with a full state or rotor speed measurements can provide adequate performance at the expenses of additional sensors, which can limit their application in practice.
Sensorless speed control includes sensorless adaptive control, where the rotor speed is typically treated as an unknown parameter to avoid nonlinearity in dynamics. Controls relying on parameter assumptions generally have unsatisfactory transient performance inherent to the adaptation.
Other methods that use a high gain state estimator, sliding mode estimator, or an extended Kalman filter (EKF) avoid the parameter assumptions, but fail to address performance. As an example, resorting to nonlinear estimator techniques entails a system in certain normal forms, which turns out to be difficult. Well-known high gain estimators designs assume an observable canonical form.
Input to the motor drive is a reference rotor flux amplitude signal 111. An estimate 112 from a flux estimator block 106 is added to the signal 111 so that the signal 113 represents a difference between signals 111 and 112.
A flux control block 101 determines a stator current 114 used to control the rotor flux linkage in the d-axis. A signal 115 is an estimate or true stator current, in the d-axis, produced by a flux estimator 106. A difference 116 between the signals 115 and 114 is used by a current control block 103 to determine a reference stator voltage 123 in the d-axis. Similarly, a signal 117 denotes the desired rotor speed reference of the induction motor.
A signal 118 denotes an estimated rotor speed produced by a speed estimator 107 based on output signal 126 of the flux estimator 106. A difference 119 between signals 117 and 118 is used to determine a reference stator current 120, in the q-axis, by the flux control block 102.
An estimated or true stator current 121, in the q-axis, is compared to the reference stator current 120, in an imaginary q-axis used to control the torque of the motor, to produce a difference signal 122. The current control block 103 determines the stator voltage signal 123, in d- and q-axes, on the basis of difference signals 116 and 122. A Clarke or Park transformation 104 converts the desired stator voltage, in d- and q-axes, into three-phase voltages 124 to drive the induction motor 105.
Note that the flux estimator 106 takes the three-phase voltages 124 and sensed phase currents 125 as input signals, and outputs estimated or true stator currents 115 and 121, estimated rotor flux amplitude 112, and estimated rotor speed signal 118 to produce the difference signals 113, 116, 119, and 122. The estimated stator current and the estimated rotor flux amplitude, and the estimated rotor speed can be determined independently. The signal 119 is used for speed control 102.
The embodiments of the invention provide a method and system for controlling an angular rotor speed of an induction motor without measuring the angular rotor speed. With a general state estimator, the tracking control explicitly takes parametric uncertainties and state estimation errors into consideration by backstepping-based adaptive control.
In control theory, state estimators are also known as state observers. The state observer provides an estimate of internal states of a given system from measurements of the input and output of the system. Herein, the terms estimator and observer are used interchangeably.
The method results in the tracking control where the ranges of gains are practical. Thus, the method can be used by motor drives for high bandwidth speed tracking tasks. Moreover, the gain selection for the controller is relatively straightforward. An extended Kalman filter (EKF) is used to estimate the state of the induction motor.
Different from prior art, where the EKF design is typically based on a model of an induction motor model a constant rotor speed, the invention considers and validates an EKF state estimator for the induction motor that can operate at variable speeds. The state estimation errors are explicitly dealt with back-stepping control design, so that the final control accuracy is guaranteed. There is no assumption on time-scale separation for both the estimation and the control design, so that high overall bandwidth is achieved even with practical constrains.
The method can achieve a high bandwidth, e.g., 200 Hz, and high precision speed tracking of the induction motor under practical implementation constraints, e.g., a 20 kHz sampling rate and a 400 V input saturation. The gain selection for the method is straightforward and does not depend on trajectories. The method can track various trajectories as long as the state and control input constraints are considered.
The embodiments of the invention provide a method and system for controlling an angular rotor speed of an induction motor based on sensing stator currents in the motor.
Model of Induction Motor
With the assumption of linear magnetic circuits and balanced operating conditions, a two-phase equivalent model of an induction motor, represented in a fixed a b reference frame, can be written as
where r and s represent the rotor and stator, a and b represent the a and b axis, ω is the angular speed of the rotor, i denotes the current, φ denotes the flux linkage, u is the input stator voltage, R, L, M, J, TL(ω) and np denote the resistance, inductance, mutual inductance, rotor inertia, load torque, and number of pole pairs, respectively, and
For simplicity, the load torque TL is assumed to be parameterized as TL(ω)=T0+Cfω with T0 and Cf constants. With the following change of variables
x1=ω, x2=isa, x3=isb, x4=φra, x5=φrb, u1=usa, u2=Usb,
a5=αβ, a6=npβ, a7=γ, a8=α, a9=np, a10=αM,
equation (1) can be rewritten as
Problem Formulation
Many sensorless speed motor drives use vector control to regulate two variables: the rotor speed x1 and the amplitude x42+x52 of the rotor flux. The invention synthesizes the control input u such that x1 and x42+x52 track the angular speed ωd (t), and the flux linkage φd2, respectively using the induction motor model of equation (2).
General State Estimator
A general state estimator can be expressed as
{circumflex over ({dot over (x)})}={circumflex over (f)}+O({tilde over (y)})
ŷ=C{circumflex over (x)} (3)
where {circumflex over (x)} ε 5, {circumflex over (f)}=f ({circumflex over (x)},u), {tilde under (y)}=y−ŷ, and O is an output injection term. Equation (3) is an abstraction of well-known state estimators. For example, extended Kalman filter (EKF) and Luenberger based estimators correspond to the following expression of the vector field I as
O
i({tilde over (x)}2, {tilde over (x)}3)=li1{tilde over (y)}1+li2{tilde over (y)}2, 1≦i≦5,
and a sliding mode observer (SMO) corresponds to
O
i({tilde over (x)}2, {tilde over (x)}3)=hi1S({tilde over (y)}1)+hi2S({tilde over (y)}2), 1≦i≦5.
We define estimation errors as {tilde over (x)}=x−{circumflex over (x)}. Given information of previous states, we can construct a projection mapping to bound the state estimates
{circumflex over (x)}
i=Projx
τi={circumflex over (f)}i+Oi (4)
where {circumflex over (f)}i is the ith component of {circumflex over (f)}. The projection mapping, when applied to a scalar, is
When applied to a vector {circumflex over (x)}, the component-wise projection mapping is
Proj{circumflex over (x)}(•)=[Proj{circumflex over (x)}
For any function τi, the projection mapping of equation (5) guarantees
A slowly varying load torque can be treated by augmenting the state x with a2, which is adapted in the estimator. Other slowly changing quantities, Rr, a5 a7 a8 a10, can be treated in a similar manner.
State Estimator
We select the EKF as a state estimator to avoid a complicated gain tuning process. The idea of using EKF and its variants in speed sensorless motor drives are not new. Numerous methods use the EKF with a simplified induction motor model and a constant rotor speed, i.e., as expressed in equation (1) with {dot over (ω)}=0, see Kim et al., “Speed sensorless vector control of induction motor using extended Kalman filter,” IEEE Trans. Ind. Appl., vol. 30, no. 5, pp. 1225-1233, Sep./Oct. 1994, and Barut et al. “Speed-sensorless estimation for induction motors using extended Kalman filter,” IEEE Trans. Ind. Electron., vol. 54, no. 1, pp. 272-280, Jan. 2007.
Using a simplified induction motor model does simplify the structure of the EKF estimator. Because a simplified conventional induction motor model implicitly assumes speed as a parameter, the corresponding EKF necessarily performs as an adaptive estimator, which generally yields slowly convergent estimation error dynamics.
We reduce the effect of this limitation by considering the EKF estimator based on the full induction motor model of equation (2).
With the sampling rate of the filter denoted by Ts and the forward difference method, the system of equation (2) is discretized as
x
k
=T
s
f(xk-1,uk-1)+xk-1=f′ (xk-1,uk-1) (7)
Linearization of the dynamics is expressed as
hence, Ak=TsA+I with the identity matrix I.
Predictions
A predicted state estimate is
{circumflex over (x)}k|k-1=f′({circumflex over (x)}k-1|k-1, uk|k-1), and (8)
a predicted covariance estimate is
P
k|k-1
=A
k-1
P
k-1|k-1
A
k-1
T
+Q
k-1 , (9)
Update
A measurement residual is
{tilde over (y)}
k
=y
k
−C{tilde over (x)}
k|k-1 , (10)
a residual covariance is
S
k
=C
k
P
k|k-1
C
k
T
+R
k , (11)
a near-optimal Kalman gain is
K
k
=P
k|k-1
C
k
T
S
k
−1 , (12)
an updated state estimate is
{circumflex over (x)}
k|k
={circumflex over (x)}
k|k-1
+K
k
{tilde over (y)}
k , (13)
an updated covariance estimate is
P
k|k=(I−KkCk)Pk|k-1, and (14)
for the general observer form
Integrated Control Design
Assumptions and General Treatment
We consider the general case where a system is subject to parametric uncertainties θ ε p, and uncertain nonlinearities {tilde over (d)}. The following practical assumption can be used in a speed control step described below.
Assumptions
Both parametric and nonlinear uncertainties are bounded, i.e.,
where {tilde over (d)}=d−{circumflex over (d)}, θmin=[θ1min, . . . , θpmin]T, θmax=[θ1max, . . . , θpmax]T are known constants. The operation ≦ for two vectors is performed componentwise, and δd is a known bounding function.
Parametric uncertainties are treated by adaptation and projection. Let {circumflex over (θ)} denote the estimate of θ and {tilde over (θ)} so that an estimation error is {tilde over (θ)}=θ−{circumflex over (θ)}). In view of equation (16), the following adaptation law with discontinuous projection modification can be used
{circumflex over (θ)}=Proj{circumflex over (θ)}(Γτ), (18)
where Γ>0 is a diagonal matrix, τ ε p is a vector of adaptation functions synthesized later. The projection mapping
Proj{circumflex over (θ)}(•)=[Proj{circumflex over (θ)}
is taken as follows
It can be shown that for any τ, the adaption law in equations (18)-(19) ensures equation (16) and
{tilde over (θ)}T(Γ−1Proj{circumflex over (θ)}(Γτ)−τ)≦0, ∀τ. (20)
For the induction motor case, parametric uncertainties can be due to the slowly time-varying resistance and load torque, and uncertain nonlinearities can be result from the state estimation error {tilde over (x)}=x−{circumflex over (x)}.
When restricted to the induction motor case, state estimation error {tilde over (x)} is bounded as
where {tilde over (x)}min=[{tilde over (x)}1min, . . . , {tilde over (x)}5min]T and {tilde over (x)}max=[{tilde over (x)}1max, . . . , {tilde over (x)}5max]T Similarly, the boundedness of the state estimation error is guaranteed by equations (4)-(5).
Adaptive Backstepping Induction Motor Control
The first step is the speed control loop outputs an electromagnetic torque as a first virtual control signal. The second step is the torque control loop which regulates the electromagnetic torque. The third step is the flux control outer loop, and the fourth step is the flux control inner loops, which regulate the magnetic flux magnitude. State estimation errors are explicitly taken into account within all control design steps under the assumption described above.
The reference numerals for
The components of the motor drive can be implemented as hardware circuits or other electronic components.
Comparison with Prior Art
Before describing the structure of the controller according to the embodiments of this invention, details of the differences with the prior art controller are noted. The prior art controller focuses on the current 123 produced by the current control 103 for the transformation power electronics 104, which is not required in the embodiment shown in
inner 224 and outer 203 loop. The torque control loop 202 and control transformation 208 of
It is also noted that the embodiments use a number of “virtual” control signals, e.g., v1, v2, v3, and v4. The reason the controls are virtual is that the signal do not represent real physical values, but rather intermediate values.
Step 1—Speed Control
We define a speed tracking error as a difference 350 z1={circumflex over (x)}1−ωd, and determine its time derivative as
We define a first virtual control signal v1, and define a difference between v1 and an estimated electromagnetic torque η1=a1(x3{circumflex over (x)}4−x2{circumflex over (x)}5) as
z
2
=a
1(x3x4−x2x5)−v1 . (23)
Thus, the speed tracking error dynamics 330 can be rewritten as
ż
1
=−a
3
z
1
+v
1
+z
2
+O
1({tilde over (x)}2, {tilde over (x)}2)−{dot over (ω)}d−a3ωd−â2 . (24)
The first virtual control signal v1 has two parts
v1=v1a+vis , (25)
where v1a is the feedforward model compensation given by
v
1a
=−O
1({tilde over (x)}2,{tilde over (x)}2)+{dot over (ω)}d+a3ωd+â2 , (26)
and v1s is an the feedback from the linear stabilization control 320
v
1s
=−k
1s1
z
1 . (27)
Thus, equation (24) can be rewritten as follows
ż
1
=−k
1
z
1
+z
2
,k
1
=a
3
+k
1s1 . (28)
Overall the first virtual control signal v1 is
v
1
=−k
1s1
z
1
−O
1({tilde over (x)}2, {tilde over (x)}2)+{dot over (ω)}d+a3ωd+â2 , (29)
and its derivative is determined as follows
which is used in the torque control step.
Step 2—Torque Control
According to equations (23), (30), and (3), we have
ż
2
=v
2+Ψ2+d2 . (31)
where v2=a21bu1+a22bu2 with a21=−a1{circumflex over (x)}5, a22=a1{circumflex over (x)}4, and
Note that d2 denotes the disturbance due to state estimation errors. Although d2 is typically time varying, one can estimate its slowly time-varying component, which can result in improved performance. In this case, the adaption law 420 for identifying d2 can be
τ22=z2
{circumflex over ({dot over (d)})}
2=Proj(Γ22τ22) (33)
with {circumflex over (d)}2 representing the estimation of d2.
We denote d2={circumflex over (d)}2+{tilde over (d)}2. The second virtual control signal v2 is rewritten as
v
2
=v
2a
+v
2s , (34)
where the feedforward model compensation term is
v
2a=Ψ2−{circumflex over (d)}2−z1 , (35)
and the feedback stabilization term v2s has a nominal stabilization term v2s1 and a control term v2s2
v
2s
=v
2s1
+v
2s2
v
2s1
=−k
2s1
z2
k
2
=a
7
+a
8
+k
2s1 (36)
Thus, equation (31) can be rearranged as
ż
2
=k
2
z
2
+v
2s2
+{tilde over (d)}
2
−z
1 . (37)
Given the above assumption, {tilde over (d)}2 is bounded. Thus, there exists v2s2 such that the following conditions hold
z
2(v2s2+{tilde over (d)}2)≦ε2, and
z
2
v
2s2≦0,
where ε2 is an arbitrarily small threshold parameter. One example of v2s2 that satisfies above conditions is
where h2=δd2 and δd2 is the bound of {tilde over (d)}2.
The first and second virtual control signals v1 and v2 ensure that the speed z1 and torque z2 are bounded. We define a positive definite function
and its time derivative
Hence, Vs2 is bounded by
where the function min returns a minimum.
If the state estimator design can guarantee finite time convergence, i.e., {tilde over (d)}2=0 after some t2, then it can be shown that from Barbalat's lemma and equation (41) with {tilde over (d)}2=0, the tracking error approaches zero over time, i.e., z1, z2→0, as t→∞.
Step 3—Flux Outer Loop Control
Flux tracking control also uses backstepping. We define a flux module tracking error as
z
3
={circumflex over (x)}
4
2
+{circumflex over (x)}
5
2−φd2 and (42)
denote Ψd(t)=φd2(t), and its time derivative
ż
3=2a10(x2{circumflex over (x)}4+x3{circumflex over (x)}5)+Ψ3 , (43)
where
Note that Ψ3 depends on accessible signals. We use a third virtual control signal v3, and a state z4 to denote the discrepancy between v3 and
η2=2a10(x2{circumflex over (x)}4+x3{circumflex over (x)}5), i.e.,
z
4=2a10(x2{circumflex over (x)}4+x3{circumflex over (x)}5)−v3 . (44)
Similar to the rewriting of the first virtual control signal v1, the second virtual control signal v3 is rewritten as
v
3
=v
3a
+v
3s , (45)
where the feedforward model compensation is v3a=−Ψ3 and the feedback stabilization term v3s=−k3s1z3. Thus, we have
ż
3
=−k
3
z
3
+z
4 , (46)
where k3=k3s1.
Step 4—Flux Inner Loop Control
The derivative of the virtual control signal discrepancy is
ż
4
=v
4+Ψ4+d4 , (47)
where v4=a21bu1+a22bu2 with a41=2a10{circumflex over (x)}4 and a42=2a10{circumflex over (x)}5, and
A function of accessible signals is Ψ4, and d4 represents the disturbance result from the state estimation error. Although d4 is time-varying, one can estimate its slowly time-varying component by adaptation and a discontinuous projection
τ44=z4
{circumflex over (d)}
4=Proj(Γ44τ44) (48)
where {circumflex over (d)}4 is the estimate of d4.
We denote the fourth virtual control v4 as
v
4
=v
4a
+v
4s , (49)
where the feedforward model compensation is
v
4a=−Ψ4−{circumflex over (d)}4−z3 . (50)
and the feedback term includes a nominal stabilization term v4s1 and a control term v4s2 given by
v
4s
=v
4s1
+v
4s2
v
4s1
=−k
4
z4 (51)
We define {tilde over (d)}4=d4−{circumflex over (d)}4. Thus,
ż
4
=−k
4
z
4
+v
4s2
+{tilde over (d)}
4
−z
3 . (52)
Given the above assumption, d4 is bounded. Also, the adaptive law equation (48) ensures the boundedness of {circumflex over (d)}4. Consequently, we know {tilde over (d)}4 is bounded. Hence, v4s2 can be determined such that
z
4(v4s2+{tilde over (d)}4)≦ε4, and
z
4
v
4s2≦0,
where ε4 is an arbitrarily small design parameter. One example of v4s2 satisfying above inequalities is
where h4=δd4 and δd4 is the bound of {tilde over (d)}4.
Third and fourth virtual control signals v3 and v4 guarantee the boundedness of z3 and z4. Taking a Lyapunov function candidate
and determining its time derivative, we can derive
with λ4=2min(k3, k4). This implies the boundedness of z3 and z4. If we assume that z3 and z4 dynamics are only subject to parametric uncertainties, i.e., {tilde over (d)}4=0), after some finite time t4, the zero solution of z3 and z4 dynamics is asymptotically stable, i.e., z3, z4→0, as t→∞.
The control input can be determined by
For the control input voltage to has unique solution, we have
which means that the flux modulus estimate should not be zero.
Flux and Speed Estimator
Although the invention has been described by way of examples of preferred embodiments, it is to be understood that various other adaptations and modifications can be made within the spirit and scope of the invention. Therefore, it is the object of the appended claims to cover all such variations and modifications as come within the true spirit and scope of the invention.
The U.S. Patent Application is related to U.S. Ser. No. 14/612,429, co-filed herewith on Feb. 3, 2015, and incorporated herein. Both Applications disclose a method and system for controlling the angular rotor speed of sensorless induction motors.