Automatica 47 (2011) 227–234
Contents lists available at ScienceDirect
Automatica journal homepage: www.elsevier.com/locate/automatica
Brief paper
A global robust iterative learning position control for current-fed permanent magnet step motors✩ Stefano Bifaretti, Patrizio Tomei, Cristiano Maria Verrelli ∗ Electronic Engineering Department of ‘‘Tor Vergata’’ University, Via del Politecnico 1, 00133 Rome, Italy
article
info
Article history: Received 19 November 2009 Received in revised form 10 May 2010 Accepted 20 September 2010 Available online 3 December 2010 Keywords: Learning control Global robust control Step motor Output tracking
abstract The tracking control problem via state feedback for uncertain current-fed permanent magnet step motors with non-sinusoidal flux distribution and uncertain position-dependent load torque is addressed: a periodic reference signal (of known period) for the rotor position is required to be tracked. A robust iterative learning control algorithm is designed which, for any motor initial condition and without requiring any resetting procedure, guarantees, despite system uncertainties: exponential convergence of the rotor position tracking error to a residual ball (centered at the origin) whose radius can be made arbitrarily small by properly setting the learning gain; asymptotic convergence of the rotor position tracking error to zero. A sufficient condition for the asymptotic estimation of the uncertain reference input achieving, for compatible initial conditions, perfect tracking is derived. Robustness with respect to a finite memory implementation of the control algorithm based on the piecewise linear approximation theory is shown to be guaranteed; satisfactory performances of a discrete-time implementation of the control algorithm are obtained in realistic simulations for the full-order voltage-fed motor. © 2010 Elsevier Ltd. All rights reserved.
1. Introduction Even though permanent magnet motors offer the advantages of high efficiency and power density, excellent durability and serviceability, high torque to inertia ratio as well as absence of external rotor excitation and windings, the non-uniformity in the developed torque is the major obstacle in achieving high-precision positioning. When the position reference profile is periodic (of known period), learning control approaches can be effectively followed to compensate torque pulsations by additional control efforts: learning algorithms, which are not model based, aim at reconstructing the uncertain reference input corresponding to the periodic output reference. In Marino, Tomei, and Verrelli (2008) (see also Chen & Paden, 1993), a Fourier series expansion in conjunction with robust adaptive control techniques (see also Del Vecchio, Marino, and Tomei (2003)) is used to solve the position tracking control problem for current-fed permanent magnet step motors with non-sinusoidal flux distribution: even though exponential convergence of the position tracking error to an arbitrarily small residual set (containing the origin) is achieved
✩ This research was supported by the Italian Ministry of Education, University and Research. The material in this paper was not presented at any conference. This paper was recommended for publication in revised form by Associate Editor Pedro Albertos under the direction of Editor Toshiharu Sugie. ∗ Corresponding author. Tel.: +39 0672597410; fax: +39 0672597412. E-mail addresses:
[email protected] (S. Bifaretti),
[email protected] (P. Tomei),
[email protected] (C.M. Verrelli).
0005-1098/$ – see front matter © 2010 Elsevier Ltd. All rights reserved. doi:10.1016/j.automatica.2010.10.048
without increasing the feedback control gains, the estimation of a possibly large number of Fourier coefficients may be however required. In this paper, novel robust iterative learning control techniques (see Marino & Tomei, 2009, for recent advances) are applied to derive a simpler control algorithm which relies on the storage of the input exerted in the preceding trial and does not require any resetting procedure. For any motor initial condition the following properties are shown to be guaranteed: (i) all closed loop signals (states and inputs) are bounded; (ii) the rotor position tracking error exponentially converges to a residual ball (centered at the origin) whose radius can be made arbitrarily small (as for the robust control design) by increasing the gain involved in the learning scheme; (iii) asymptotic rotor position tracking is achieved, which is not in general guaranteed by the robust control design (see for instance Krishnamurthy & Khorrami, 2003). Contrary to Chen, Yung, and Cheng (2006), in which a possibly discontinuous input signal may result, the proposed approach guarantees the resulting input signal to be a continuous time function (so that a sufficient condition for the asymptotic estimation of the uncertain reference input achieving, for compatible initial conditions, perfect tracking can be derived). Robustness with respect to a finite memory implementation1 of the control algorithm based on the piecewise linear approximation
1 This relevant issue is addressed neither in Chen et al. (2006) nor in Dixon, Zergeroglu, Dawson, and Costic (2002).
228
S. Bifaretti et al. / Automatica 47 (2011) 227–234
theory is shown to be guaranteed while satisfactory performances of a discrete-time implementation of the control algorithm are obtained in realistic simulation for the full-order voltage-fed motor. 2. System dynamic model
−
m if Nr −
J
2J
jLmj sin[(1 − j)Nr θ (t )]id (t )
j =2
m Nr i2f −
jLfj sin[jNr θ (t )] −
TL (θ (t ))
j=4
π model the non-sinusoidal flux distribuj=1 Lmj cos jNr θ − 2
∑m
tion in the airgap3 while the term 2
jLfj sin[jNr θ ]
j=4
represents the disturbance torque due to cogging. Since, in practice, the parameters Lmj , 2 ≤ j ≤ m (which are zero under the standard assumption of sinusoidal flux distribution) are much smaller than Lm1 (see for instance Chen & Paden, 1993; Krishnamurthy & Khorrami, 2003), we have for all t ≥ 0 m −
jLmj cj (t ) = Lm1 +
j=1
m −
h(θ(t ))
j =2
dt
if Nr h(θ )
−1 jLmj cos[(1 − j)Nr θ ]
j =1
TL (θ ) +
J
m Nr i2f −
2
jLfj sin[jNr θ ]
j =4
Dh(θ ) J
are uncertain functions (owing to uncertainties in all system parameters) and χ (θ , iq , id ) is such that χ (θ , iq , 0) = 0 for all (θ , iq ) ∈ R2 . 3. Problem statement Consider the current-fed permanent magnet step motor (1) with the non-structured uncertain scalar function f (θ , ω) = α(θ ) + β(θ )ω under the following assumptions (typically being satisfied in practice): (A.1) Nr is a known parameter; (A.2) the function α(θ ) is of class C sα (sα ≥ 1); (A.3) there exist known positive reals hm , hM , kh , kα 1 , kα 2 , kβ 1 , kβ 2 ∈ R+ such that, for all θ ∈ R, (i) h (θ ) ∈ [hm , hM ];
∂α(θ )
(ii) ∂θ ≤ kh ; |α(θ )| ≤ kα 1 ; ∂θ ≤ kα 2 ; |β(θ )| ≤ kβ 1 ; ∂β(θ ) ∂θ ≤ kβ 2 .
Let θ ∗ (t ) be the rotor position reference signal which is assumed to belong to the following class: (A.4) θ ∗ (t ) is periodic with known period T (i.e. θ ∗ (t ) = θ ∗ (t + s T ), ∀ t ≥ −T ), of class C θ (sθ ≥ 3) with bounded time derivatives θ˙ ∗ (t ) ≤ cθ 1 , θ¨ ∗ (t ) ≤ cθ 2 for all t ∈ [0, T ). The aim of this paper is to design an iterative learning control via state feedback which guarantees, for any motor initial condition and without requiring any resetting procedure, the boundedness of all closed loop signals (states and inputs) and the asymptotic position tracking of the reference θ ∗ (t ). 4. Iterative learning control design and stability analysis
θ˜ = θ − θ ∗ . ω˜ = ω − ω∗ = ω + kθ θ˜ − θ˙ ∗ so that
θ˙˜ = −kθ θ˜ + ω˜ and let us express f (θ , ω) as f (θ , ω) = q(θ ∗ , θ˙ ∗ , θ¨ ∗ ) − h(θ )θ¨ ∗ + g (θ˜ , ω, ˜ ω)
= −α(θ (t )) − β(θ (t ))ω(t ) + iq (t ) + χ (θ (t ), iq (t ), id (t ))
m −
Define the tracking errors (kθ is a positive control parameter):
jLmj cj (t ) ≥ ah > 0
with cj (t ) = cos[(1 − j)Nr θ (t )] so that the previous model can be rewritten as dθ(t ) = ω(t ) dt dω(t )
β(θ ) =
J
∂ h(θ )
J
where (id , iq ) are the stator current vector (d, q) components [which constitute the control inputs], D is the friction coefficient, J is the rotor inertia, TL (·) is the load torque,2 if is the fictitious constant rotor current provided by the permanent magnet, L1 is ∑m a non-negative parameter, the harmonics j=1 Lmj cos[jNr θ ] and
m Nr i2f −
h(θ ) =
α(θ ) =
The dynamics of a current-fed permanent magnet step motor with two phases in the (d, q) reference frame rotating at speed Nr ω and identified by the angle Nr θ in the fixed (a, b) reference frame attached to the stator [θ is the rotor position, ω is the rotor speed and Nr is the number of rotor teeth] are given by (see Chen & Paden, 1993 and Melkote & Khorrami, 1998) [m ≥ 4 is an uncertain integer] dθ(t ) = ω(t ) dt dω(t ) D 2Nr L1 = − ω(t ) + id (t )iq (t ) dt J J m if Nr − + jLmj cos[(1 − j)Nr θ (t )]iq (t ) J j =1
+
where
+ h(θ )kθ ω˜ − h(θ )k2θ θ˜
(1) with
q(θ ∗ , θ˙ ∗ , θ¨ ∗ ) = α(θ ∗ ) + β(θ ∗ )θ˙ ∗ + h(θ ∗ )θ¨ ∗ 2 Even though position/speed-dependent load torques T (θ, ω) can be considL ered in general electric motor applications (see for instance Tomei and Verrelli (2010), Tomei, Verrelli, Montanari, and Tilli (2008), in which the problem of controlling induction motor servo drives is addressed), this paper considers the wide family of positioning applications for permanent magnet step motors in which the load torque only depends on rotor position. The control design presented in this paper can be however extended, under suitable assumptions and minor modifications, to the case of uncertain TL (θ, ω). 3 In ideal motors, each element of the inductance matrix is represented by a constant offset plus a pure sinusoidal function of θ whose frequency depends on the symmetries of the motor. Geometric imperfections determine non-sinusoidal gap saliency so that inductances, in real motors, contain phase shifts and higherorder harmonics.
and g (θ˜ , ω, ˜ ω) = −h(θ )kθ ω˜ + h(θ )k2θ θ˜ + α(θ ) − α(θ ∗ )
+ β(θ ∗ )(ω˜ − kθ θ˜ ) + [β(θ ) − β(θ ∗ )]ω + [h(θ ) − h(θ ∗ )]θ¨ ∗ . By virtue of assumption (A.4), the uncertain function ur (t ) = q(θ ∗ (t ), θ˙ ∗ (t ), θ¨ ∗ (t )), is periodic of known period T , that is ur (t ) = ur (t + T ),
∀t ≥ −T .
Function ur (t ) constitutes the uncertain periodic input reference for current iq (t ) achieving, for id = 0 and compatible initial
S. Bifaretti et al. / Automatica 47 (2011) 227–234
conditions θ (0) = θ ∗ (0) and ω(0) = θ˙ ∗ (0), perfect tracking. From assumptions (A.3) and (A.4), a known bound Mu = kα 1 + kβ 1 cθ 1 + hM cθ 2 for |ur (t )| can be explicitly computed. Since, according to the motor torque expression in (1), a non-zero id only contributes to torque ripples, it is desirable to set id = 0
V˙ (t ) ≤ −
v(ω) =
2kθ kv
+ g2 +
4
+
k¯ ω 4
+
k2h ω2 4k¯ ω
g1 (ω) = 5h2M k4θ + 5k2h cθ22 + 5k2β 1 k2θ + 5k2β 2 ω2 + 5k2α 2 g2 = kβ 1 + hM kθ
(4)
u˜ r (t ) = ur (t ) − uˆ r (t )
uˆ r (t ) = sat(ˆur (t − T )) − µϕ(t )ω( ˜ t) (5)
in which the positive control parameter µ is the learning gain, Mu is a known positive bound of |ur (t )| and sat(q) =
if − Mu ≤ q ≤ Mu if q > Mu if q < −Mu .
(6)
By definition, 0 ≤ ϕ(t ) ≤ 1 for all t ≥ 0. Let W (t ) =
1
kv θ˜ 2 (t ) + h(θ (t ))ω ˜ 2 (t )
V (t ) = W (t ) +
2µ
t
∫
2
ur (τ ) − sat(ˆur (τ ))
4
2
4
+ (ϕ(t ) − 1)ω( ˜ t ) ur (t ) − sat(ˆur (t − T )) .
dτ
(7)
t −T
whose time derivative along the trajectories of the closed loop system satisfies [complete the squares and recall (5)]
V˙ (t ) ≤ −
kv kθ
V˙ (t ) ≤ −
kv kθ
θ˜ 2 (t ) − kω ω˜ 2 (t ) +
˙
˙˜ = h(θ)ω˙ + h(θ)kθ θ˜ − h(θ)θ¨ ∗ h(θ)ω = −f (θ, ω) + iq + h(θ)kθ −kθ θ˜ + ω˜ − h(θ)θ¨ ∗ ˜ ω, = −ur − g (θ, ˜ ω) + iq . 5 Note that
˜ ω, |g (θ, ˜ ω)| ≤ kh cθ 2 + kβ 1 kθ + kβ 2 |ω| + kα2 + hM k2θ |θ˜ | + kβ 1 + hM kθ |ω| ˜ . ˜ = s1 |θ| + g2 |ω| ˜
Mu2
(9)
2 k while the definition of ϕ(t ) guarantees that for t > T 2
k ω˜ 2 (t ). θ˜ 2 (t ) − kω +
(10)
4
, hkMω + 4hkM so that we can write for t > T ∫ t 2 c V˙ (t ) ≤ −cV (t ) + ur (τ ) − sat(ˆur (τ )) dτ . 2µ t −T
kθ 2
Since the following inequality:
∫
t
2
ur (τ ) − sat(ˆur (τ ))
dτ ≤ 4Mu2 T
t −T
holds for any t ≥ 0, we obtain for t > T
θ˜ 2 (t ) ≤
4 Recall that
(8)
According to (8), for any t ∈ [0, T ], by completing the squares we obtain
5
with s21 ≤ g1 .
4
Define c = 2 min
2 and consider the function (see Dixon et al., 2002; Marino & Tomei, 2009) 1
2
k ˜θ 2 (t ) − kω + ω˜ 2 (t )
+ µ(ϕ(t ) − 1)ϕ(t )ω˜ 2 (t ) kv kθ 2 k ≤− θ˜ (t ) − kω + ω˜ 2 (t )
is the input reference estimation error. Let ϕ(t ) be a continuous increasing function for t ∈ [0, T ] with ϕ(0) = 0 and ϕ(t ) = 1 for all t ≥ T (see Xu, 2004) and define the estimation law for the uncertain ur (·) as
q Mu −Mu
≤−
kv kθ
k θ˜ 2 (t ) − kω + ω˜ 2 (t ) − u˜ r (t )ω( ˜ t)
+ (ϕ(t ) − 1)˜ur (t )ω( ˜ t) kv kθ 2 k =− ω˜ 2 (t ) θ˜ (t ) − kω + 2 4 + (ϕ(t ) − 1)ω( ˜ t ) ur (t ) − sat(ˆur (t − T ))
in which
kv kθ
2
taking into account the state-dependent disturbance g (θ˜ , ω, ˜ ω). Thus we have4
∀q ≤ 0
ω˜ 2 (t ) − u˜ r (t )ω( ˜ t)
+ (ϕ(t ) − 1)˜ur (t )ω( ˜ t) 1 2 − u˜ r (t ) − [ur (t ) − sat(ˆur (t ))]2 2µ kv kθ 2 k ≤− θ˜ (t ) − kω + ω˜ 2 (t )
with
uˆ r (q) = 0,
=−
(3)
˙˜ = −kω ω˜ − kv θ˜ − u˜ r − g (θ˜ , ω, h(θ)ω ˜ ω) − v(ω)ω˜
4
2 4 2 1 ur (t ) − sat(ˆur (t )) + 2µ 2 1 u˜ r (t ) − µϕ(t )ω( ˜ t) − 2µ
which contains the estimate uˆ r (t ) of the uncertain open loop reference ur (t ) and a suitable robustifying term (k and k¯ ω are positive control parameters) k
k
θ˜ 2 (t ) − kω +
2 1 ur (t ) − sat(ˆur (t )) 2µ 2 1 − ur (t − T ) − sat(ˆur (t − T )) 2µ
while choosing iq to produce the desired torque reference (see for instance Chen & Paden, 1993). By using back-stepping and robust techniques involving, as we shall see in the next section, the choice of a suitable Lyapunov function, we design the stator current vector q-component (kω and kv are positive control parameters)
g1 (ω)
2
+
(2)
iq = −kω ω ˜ − kv θ˜ + uˆ r − v(ω)ω˜
kv kθ
229
2 kv
[
e− c ( t − T ) W ( T ) +
4Mu2 T
] (11)
µ
which shows that the rotor position tracking error, for any motor initial condition, exponentially converges to a residual ball (centered at the origin) whose radius can be made arbitrarily small by increasing the learning gain µ [recall that W (T ) does not increase while increasing µ]. Since θ˜ (t ) and ω( ˜ t ) are bounded on [0, +∞), uˆ r (t ) is bounded
˙
on [0, +∞) and therefore iq (t ) is bounded on [0, +∞). Since θ˜ (t )
˙˜ t ) are bounded on [0, +∞), θ˜ (t ) and ω˜ (t ) are uniformly and ω( continuous on [T , +∞) and therefore, according to (10), by the 2
2
230
S. Bifaretti et al. / Automatica 47 (2011) 227–234
defined, for τi ≤ t ≤ τi+1 , i = 1, 2, . . . , i∗ − 1, as
Barbalat Lemma
lim θ˜ 2 (t ) + ω ˜ 2 (t ) = 0.
If the resulting uˆ r (t ) is an uniformly continuous function on [0, +∞), then, according to (4) and the Barbalat Lemma, lim u˜ r (t ) = 0
[
a,b
t →∞
t →∞
that is the asymptotic ‘‘learning’’ is achieved. The following theorem states the main result of this paper. Theorem. Consider the current-fed permanent magnet motor (1) in closed loop with the robust iterative learning control algorithm (2), (3), (5) and (6). Let assumptions (A.1)–(A.3) hold and θ ∗ (t ) be a periodic rotor position reference signal belonging to class (A.4). Then, for any motor initial condition, the following properties hold: (i) the state variables (θ (t ), ω(t )) and the control inputs (id (t ), iq (t )) are
I2 {f } = f (τi ) +
] (f (τi ) − f (τi+1 )) (t − τi ) (τi − τi+1 )
while n ∈ N+ 0 (n ≥ 2) is the number of values of the function sat uˆ r[n] (·) stored in each time interval [lT , (l + 1)T ], l = −1, 0, 1, . . . , and t∗ (t ) =
t
if D∗1 T
−T + j
(n − 1) D∗1 : there exists i ∈ N+ 0 : t = −T +
iT
(n − 1)
bounded on [0, +∞); (ii) the rotor position tracking error θ˜ (t ) = (θ(t ) − θ ∗ (t )) exponentially converges to a residual ball (centered at the origin) whose diameter can be made arbitrarily small by increasing the learning gain µ; (iii) asymptotic rotor position tracking is achieved. If the resulting uˆ r (t ) is an uniformly continuous function on [0, +∞), then
D∗2 : there exists j ∈ N+ 0 :
lim u˜ r (t ) = 0.
mac ,b
t →∞
Remark 1. In the case of constant load torque, the uncertainties appearing in the rotor speed dynamics can be linearly parameterized so that adaptive control techniques may be used (see Petrović, Ortega, Stanković, and Tadmor (2000) for the case of a welldesigned permanent magnet synchronous motor with negligible reluctance and cogging torque): however m in (1) is required to be known. Remark 2. It is interesting to note and not difficult to show that a sufficient condition for guaranteeing the uniform continuity of uˆ r (t ) on [0, +∞) (and therefore the asymptotic ‘‘learning’’), is the existence of three positive reals cω , αω ≥ 2, Tω such that6 cω |ω( ˜ t )| ≤ α , ∀t ≥ Tω . t ω 5. A finite memory implementation of the control algorithm The control algorithm (2), (3), (5), (6) proposed in Section 4 requires infinite memory: asymptotic rotor position tracking is achieved provided that at each time t the value uˆ r (t − T ) is available. Since, in practice, finite memory implementations of control laws are needed and only a finite number of function values can be stored and used for feedback, according to the piecewise linear approximation theory (see de Boor, 2001) we replace the learning scheme (5) by
−T ,t (t ) uˆ r (t ) = uˆ [rn] (t ) = I2 ∗ sat uˆ [rn] (t − T ) − µϕ(t )ω( ˜ t) uˆ r (q) = 0, [n]
∀q ≤ 0
−T +
jT
T Recalling that the modulus of continuity of f at (n− is given by 1)
f;
T
(n − 1)
6 Since the asymptotic property lim ω( ˜ t) = 0
t →∞
has been already established, a sufficient condition for asymptotic ‘‘learning’’ is constituted by a sufficiently fast convergence to zero of the tracking error ω( ˜ t ).
= max |f (x) − f (y)| : x, y ∈ [a, b], |x − y| ≤
T
(n − 1)
the following property:
‖f − I2a,b {f }‖[a,b] = max {|f (t ) − I2a,b {f (t )}|} a≤t ≤b T ≤ mac ,b f ; (n − 1) a,b
holds (see de Boor, 2001). Clearly the uniform norm ‖f − I2 {f }‖[a,b] can be made arbitrarily small by making the number n or equivalently the number i∗ of points τ1 , . . . , τi∗ large: while this increases the number of parameters needed to describe the a ,b approximating function I2 {f }, it does not really locally increase a ,b
a ,b
the complexity of I2 {f } since, locally, I2 {f } is always just a straight line. Define the approximation error [t ≥ 0] ea (t − T ) = sat uˆ [rn] (t − T )
− I2−T ,t∗ (t ) sat uˆ r[n] (t − T ) so that by computing the time derivative of function V in (7) along the trajectories of the closed loop system we obtain [u˜ [rn] (t ) = ur (t ) − uˆ [rn] (t )]
(12)
in which {f } denotes [the subscript 2 refers to the order of the polynomial pieces making up the interpolant] the piecewise linear interpolant to f ∈ C ([a, b]) at points [a = lT , l ∈ Z, b ∈ R+ 0 , i∗ ∈ N+ , i∗ ≥ 2] (i − 1)T τi = a + , i = 1, 2, . . . , i∗ − 1 (n − 1) (i∗ − 1)T =b τi∗ = a + (n − 1)
(j + 1)T . (n − 1)
< t < −T +
(n − 1)
˙ (t ) + V˙ (t ) = W
a ,b I2
if D∗2
−
2 1 ur (t ) − sat uˆ [rn] (t )
2µ
2 1 [n] u˜ r (t ) − µϕ(t )ω( ˜ t ) − ea ( t − T ) 2µ
from which, by using arguments similar to those used in the previous section, we have for any t ∈ [0, T ] V˙ (t ) ≤ −
kv kθ 2
θ˜ 2 (t ) − kω ω˜ 2 (t ) +
Mu2 k
+
2Mu2
µ
while for t > T
k 1 θ˜ 2 (t ) − kω + ω˜ 2 (t ) + ur ( t ) 2 4 µ − I2−T ,t∗ (t ) sat uˆ r[n] (t − T ) ea (t − T ) kv kθ 2 k 2Mu ˜ ≤− θ (t ) − k ω + ω˜ 2 (t ) + |ea (t − T )| 2 4 µ
V˙ (t ) ≤ −
kv kθ
(13)
S. Bifaretti et al. / Automatica 47 (2011) 227–234
231
so that for t > T
θ˜ 2 (t ) ≤
2 kv
e
−c (t −T )
4Mu2 T
W (T ) +
µ
+
4Mu2
(14)
µc
θ
and property (ii) of the previous theorem still holds. In particular, since
{ea (s)} T ,t∗ (t ) ≤ m− sat uˆ [rn] ; c max
ω
−T ≤s≤t∗ (t )
T
(n − 1)
we can obtain for t > T the less conservative inequality e
kv
+
−c (t −T )
2Mu
µc
W (T ) +
T ,t∗ (t ) m− c
Fig. 1. Schematic diagram of the considered motor/load system.
4Mu2 T
µ
1.5
sat uˆ [rn] ;
T
(n − 1)
which exactly reduces to (11) if ea (t − T ) = 0 for all t > T . Furthermore, if there exists a positive integer n∗ ≥ 2 such that the family F [n] of functions uˆ [rn] (t ) , n ≥ n∗ , is uniformly equicontinuous on [−T , +∞) then there exists a sufficiently large n which, for all t ≥ 0, makes arbitrarily small the quantity −T ,t∗ (t )
mc
[n]
sat uˆ r
;
T
1
1 0.5
0
-0.5
-1
-1 16
24
0
˙ with θ˜ (t ) and θ˜ (t ) bounded functions on [0, +∞) (uniformly with
32
0
-2
-0.2 -0.4
-4
-0.6
-6
-0.8
-8 0
24
0.2
0
(15)
16
Rotor Speed Tracking Error
2
T
8
0.4
4
t
˜ )2 dτ ≤ Me + ε θ(τ
-1.5
32
x10-3 Rotor Angle Tracking Error
(n − 1)
so that: (i) the radius of the ball into which θ˜ (t ) is exponentially attracted tends, as n → ∞, to the radius obtained in the case of the control algorithm with infinite memory; (ii) there exists a positive real Me such that, for any ε > 0 and any t > T , a sufficiently large n guarantees that
∫
0
-0.5
8
Rotor Angle
1.5
0.5
-1.5 0
Rotor Angle Reference Signal
[rad]
[rad]
2
[rad]
θ˜ (t ) ≤ 2
[rad/s]
max {|ea (τ − T )|} ≤
0≤τ ≤t
8
16 [s]
24
32
-1 0
8
16 [s]
24
32
respect to n). 6. Simulation results In order to verify the effectiveness of the proposed solution, we tested by simulation the finite memory implementation (2), (3), (6), (12) of the simplified robust iterative learning control algorithm (2), (3), (5), (6) (in which the robustifying term v(·) is set to zero) with reference to a permanent magnet step motor with load torque TL (θ ) = NT sin(θ ) and parameters: J = 0.0733 kg m2 , L1 = 0, m = 4, Lm1 = 5 mH, Lm2 = 0.5 mH, Lm3 = 0.166 mH, Lm4 = 0.0625 mH, Lf 4 = 1.766 mH, Nr = 50, if = 1 A, D = 0.002 kg m2 /s, NT = 1.7201 kg m2 /s2 (see Krishnamurthy & Khorrami, 2003). The rotor angle is required to track the known periodic reference signal θ ∗ (t ) = sin(4−1 π t ) rad. The considered application is the robotic application described in Dawson, Hu, and Burg (1998) and Krishnamurthy and Khorrami (2003) (see Fig. 1) in which the load torque TL = NT sin(θ ) models the positiondependent single link robotic load represented by a metal bar link attached to the rotor shaft and a brass ball attached to the free end. All the motor initial conditions are set to zero.7 6.1. Current-fed motor The control (2), (3), (6), (12) is simulated with reference to the current-fed model (1). The control parameters (all values are
7 This choice complies with a realistic setting in which the motor is initially at rest and the initial position is compatible with the corresponding reference signal. Note that however this choice does not correspond to zero initial conditions for the tracking error system (for which the global result has been established): even ˜ 0) = 0, ω( though θ( ˜ 0) = −θ˙ ∗ (0) = −4−1 π rad/s.
Fig. 2. Proposed learning control: rotor angle reference signal θ ∗ (t ), rotor angle ˜ t ), ω( θ(t ) and rotor angle and speed tracking errors θ( ˜ t ).
in SI units) are: kθ = 72, kω = 12, kv = 1, µ = 72 while 2
t = 10−3 s (equal to the integration step8 ) and ϕ(t ) = 64 for t ∈ [0, 8]. Fig. 2 shows the time histories of rotor angle reference signal θ ∗ (t ), rotor angle θ (t ) and rotor angle and speed tracking errors θ˜ (t ), ω( ˜ t ), while Fig. 3 shows the time histories of the uncertain function ur (t ) with its estimate uˆ r[n] (t ) and the corresponding estimation error u˜ r[n] (t ). The rotor speed ω(t ) and the stator currents iq (t ), ia (t ), ib (t ) are reported in Fig. 4. Satisfactory position T
(n−1)
tracking is achieved despite system uncertainties along with satisfactory estimation of the uncertain periodic input reference signal ur (t ). For comparison, the same simulation is performed by applying the fifteenth order dynamic robust adaptive learning control algorithm designed in Marino et al. (2008) (l = 1, . . . , (N − 1)/2): id = 0 iq = −kω ω ˜ − kv θ˜ + ρ[ ˆ N ]T ΦN
˙ˆ N ] = Proj −µΦN ω, ρ[ ˜ ρ[ ˆ N ], ν, Mu ΦN (t ) = [ϕ0 (t ), . . . , ϕN −1 (t )]T ϕ0 (t ) = 1 2π 2π √ √ ϕ2l (t ) = 2 cos lt , ϕ2l−1 (t ) = 2 sin lt T
8 Thus 8000 values are stored in each period.
T
232
Rotor Angle
1.5
1 0.5
8
16
24
[rad]
1 0.5 [rad]
0
1.5
0 -0.5
32
Input Reference Estimate
-1
-1
-1.5
-1.5
0
8
x10-3
6
0
8
16
24
32
Input Reference Estimation Error
9 6 3 0 -3 -6 -9 8
16 [s]
24
Rotor Speed
0.9
8 4 [A]
[rad/s]
0.6 0.3 0 -0.3
4
0.4
2
0.2
0 -2
-1.2
0
-0.4 -0.6
8
16
24
dt dω(t ) 0
Stator Current a
8
16
24
12
8
8
32
dt
0
-4
-4
-8
did (t ) dt
-8 8
16 [s]
24
32
0
8
16 [s]
24
32
32
Fig. 4. Proposed learning control: rotor speed ω(t ) and stator current vector
(q, a, b) components iq (t ), ia (t ), ib (t ).
with control parameters: kθ = kω = 12, kv = 1, µ = 72, ν = 3, N = 15. Even though a relatively large number (fifteen) of Fourier coefficients of the uncertain input reference ur (t ) is estimated by the adaptive control in Marino et al. (2008) (leading to a relatively high computational complexity requirement compared to the relatively low one of the previously simulated proposed control), the radius of the residual ball to which the rotor position tracking error converges (see Figs. 5 and 2) is significantly larger than the one obtained with the robust iterative learning control algorithm proposed in this paper. 6.2. Voltage-fed motor A discrete-time version (with sampling time Ts = 250 µs) of the proposed controller (with i∗d and i∗q in place of id and iq ) in
diq (t ) dt
n if Nr −
J
+
[A] 0
0
D
= − ω(t ) + −
4
[A]
4
24
24
32
Rotor Speed Tracking Error
-0.8 0
8
16 [s]
24
32
= ω(t )
Stator Current b
12
16 [s]
16
Fig. 5. Learning control in Marino et al. (2008): rotor angle reference signal θ ∗ (t ), ˜ t ), ω( rotor angle θ(t ) and rotor angle and speed tracking errors θ( ˜ t ).
-8 32
8
8
0
-6
dθ (t )
-12 0
0
-0.2
-4
-4
-0.6 -0.9
32
conjunction with an integral–proportional loop (with parameters Kp = 1, Ki = 500) based on the stator current tracking errors id and (iq − i∗q ) is obtained and then simulated with reference to the full-order model [(ud , uq ) are the stator voltage vector (d, q) components, R and L0 are the stator windings resistance and the self-inductance, respectively]
Stator Current q
12
24
Rotor Angle Tracking Error
32
Fig. 3. Proposed learning control: reference input ur (t ), its estimate uˆ [rn] (t ) and corresponding estimation error u˜ r[n] (t ).
1.2
16
0.6
-8 0
0
0 -0.5
[rad/s]
9 6 3 0 -3 -6 -9
Rotor Angle Reference Signal
Input Reference
[rad]
9 6 3 0 -3 -6 -9
S. Bifaretti et al. / Automatica 47 (2011) 227–234
n Nr i2f −
2J
jLmj sin[(1 − j)Nr θ (t )]id (t )
j =2
jLfj sin[jNr θ (t )] −
j =4
n if Nr −
J
J
TL (θ (t )) J
jLmj cos[(1 − j)Nr θ (t )]iq (t )
j =1
R 1 id (t ) + Nr iq (t )ω(t ) + ud (t ) L0 L0 n if Nr − + jLmj sin[(j − 1)Nr θ (t )]ω(t ) L0 j =2
= −
R 1 iq (t ) − Nr id (t )ω(t ) + uq (t ) L0 L0 n if Nr − − jLmj cos[(j − 1)Nr θ (t )]ω(t ) L0 j =1
= −
of the permanent magnet step motor described in Krishnamurthy and Khorrami (2003) [R = 1 Ohm, L0 = 0.7 mH]. The control parameters (all values are in SI units) are: kω = 10, kv = 1, kθ =
µ = 12 while ϕ(t ) =
t2 64
for t ∈ [0, 8]. The rotor position measurement is provided by a discrete-time model of a 1000 ppr encoder while the rotor speed is computed on the basis of the model of a microcontroller unit which counts the rising and falling edges of the two quadrature signals provided by the encoder. The discrete-time Kalman filter proposed in Bellini, Bifaretti, and Costantini (2003) with a 20 Hz cut-off frequency is used to reduce the possible noise affecting the computed rotor speed (due to the relatively small rotor speed and encoder resolution). The results are reported in
S. Bifaretti et al. / Automatica 47 (2011) 227–234
Fig. 6. Proposed discrete-time learning control with PI current loop (T /(n − 1) = ˜ t ). 250Ts ): rotor angle reference signal θ ∗ (t ) and rotor angle tracking error θ(
Fig. 7. Proposed discrete-time learning control with PI current loop (T /(n − 1) = 250Ts ): stator current and voltage vector (a, b) components ia (t ), ib (t ), ua (t ), ub (t ).
233
Fig. 8. Proposed discrete-time learning control with PI current loop (T /(n − 1) = ˜ t ). 500Ts ): rotor angle reference signal θ ∗ (t ) and rotor angle tracking error θ(
Fig. 9. Proposed discrete-time learning control with PI current loop (T /(n − 1) = 500Ts ): stator current and voltage vector (a, b) components ia (t ), ib (t ), ua (t ), ub (t ).
T Figs. 6 and 7 for (n− = 250Ts (corresponding to 128 values stored 1) T in each period) and in Figs. 8 and 9 for (n− = 500Ts (correspond1) ing to 64 values stored in each period): satisfactory performances, in the presence of unmodelled dynamics, discrete-time controller implementation, encoder quantization errors as well as rotor speed filtering, are obtained in both cases by the controller with relatively small control gains9 and relatively low computational complexity. The effectiveness of the learning action of the control algorithm is confirmed by Figs. 10 and 11 which show how the performance significantly degrades when only the robust action of the controller is simulated (i.e. uˆ [rn] ≡ 0 in (12)).
7. Conclusions For uncertain current-fed permanent magnet step motors with non-sinusoidal flux distribution and uncertain positiondependent load torque, a robust iterative learning control (2), (3),
9 As expected, the tracking precision increases when a larger number of values is stored in each period.
Fig. 10. Proposed discrete-time learning control with PI current loop and uˆ [rn] ≡ 0:
˜ t ). rotor angle reference signal θ ∗ (t ) and rotor angle tracking error θ(
234
S. Bifaretti et al. / Automatica 47 (2011) 227–234 Krishnamurthy, P., & Khorrami, F. (2003). Robust adaptive voltage-fed permanent magnet step motor control without current measurements. IEEE Transactions on Control Systems Technology, 11, 415–425. Marino, R., & Tomei, P. (2009). An iterative learning control for a class of partially feedback linearizable systems. IEEE Transactions on Automatic Control, 54, 1991–1996. Marino, R., Tomei, P., & Verrelli, C. M. (2008). Position learning control for currentfed permanent magnet step motors with uncertainties. In 10th IEEE international workshop on advanced motion control AMC’08. (pp. 699–703). Melkote, H., & Khorrami, F. (1998). Adaptive variable structure torque ripple cancellation for permanent magnet stepper motors. In Proceedings of the American control conference. Vol. 2. (pp. 1033–1037). Petrović, V., Ortega, R., Stanković, A. M., & Tadmor, G. (2000). Design and implementation of an adaptive controller for torque ripple minimization in PM synchronous motors. IEEE Transactions on Power Electronics, 15, 871–879. Tomei, P., & Verrelli, C. M. (2010). Learning control for induction motor servo drives with uncertain rotor resistance. International Journal of Control, 83, 1515–1528. Tomei, P., Verrelli, C. M., Montanari, M., & Tilli, A. (2008). Robust output feedback learning control for induction motor servo drives. International Journal of Robust and Nonlinear Control, 19, 1745–1759. Xu, J.-X. (2004). A new periodic adaptive control approach for time-varying parameters with known periodicity. IEEE Transactions on Automatic Control, 49, 579–583.
Fig. 11. Proposed discrete-time learning control with PI current loop and uˆ [rn] ≡ 0: stator current and voltage vector (a, b) components ia (t ), ib (t ), ua (t ), ub (t ).
(5), (6) is designed which, for any motor initial condition and without requiring any resetting procedure, guarantees that: (i) all closed loop signals (states and inputs) are bounded; (ii) the rotor position tracking error exponentially converges to a residual ball (centered at the origin) whose diameter can be made arbitrarily small by increasing the learning gain; (iii) asymptotic rotor position tracking is achieved. A sufficient condition for the asymptotic estimation of the uncertain reference input achieving, for compatible initial conditions, perfect tracking is also given in Section 4. Robustness with respect to the control algorithm finite memory implementation (2), (3), (6), (12) is shown to be guaranteed in Section 5. Simulation results illustrate the effectiveness of the presented approach while the simple structure of the controller and the small number of design parameters to be tuned make the proposed solution suitable for real applications. References Bellini, A., Bifaretti, S., & Costantini, S. (2003). A digital speed filter for motion control drives with a low resolution position encoder. Automatika, 1–2, 67–74. Chen, D., & Paden, B. (1993). Adaptive linearization of hybrid step motors: stability analysis. IEEE Transactions on Automatic Control, 38, 874–887. Chen, W. D., Yung, K. L., & Cheng, K. W. (2006). A learning scheme for low-speed precision tracking control of hybrid stepping motors. IEEE/ASME Transactions on Mechatronics, 11, 362–365. Dawson, D. M., Hu, J., & Burg, T. C. (1998). Nonlinear control of electric machinery. New York: Marcel Dekker. de Boor, C. (2001). A practical guide to splines. New York: Springer. Del Vecchio, D., Marino, R., & Tomei, P. (2003). Adaptive learning control for feedback linearizable systems. European Journal of Control, 9, 483–496. Dixon, W. E., Zergeroglu, E., Dawson, D. M., & Costic, B. T. (2002). Repetitive learning control: a Lyapunov-based approach. IEEE Transactions on Systems, Man and Cybernetics, 32, 538–545.
Stefano Bifaretti was born in Rome, Italy, on January 3, 1974. He received the Laurea degree and the Ph.D. degree in Electronic Engineering from University of Rome ‘‘Tor Vergata’’, Italy, in 1999 and 2003. Since 2004 he is an Assistant Professor at Department of Electronic Engineering at University of Rome ‘‘Tor Vergata’’. In 2007 he has been involved by PEMC research group, University of Nottingham (UK), in the European research project on Advanced Power Converters for Universal and Flexible Power Management in Future Electricity Network. He is a lecturer of Power Electronics and Control Circuits at University of Rome ‘‘Tor Vergata’’. His research interests include power electronic converters, industrial drives and photovoltaic conversion systems. He is co-author of more than 50 papers published in international journals and conferences. Patrizio Tomei was born in Rome, Italy, on June 21, 1954. He received the ‘‘dottore’’ degree in Electronic Engineering in 1980 and the ‘‘dottore di ricerca’’ degree in 1987, both from the University of Rome ‘‘La Sapienza’’. He is currently Professor of ‘‘Adaptive Systems’’ at the University of Rome ‘‘Tor Vergata’’. He is co-author (with R. Marino) of the book ‘‘Nonlinear Control Design’’ (Prentice Hall, 1995) and co-author (with R. Marino, C.M. Verrelli) of the book ‘‘Induction Motor Control Design’’ (Springer, 2010). His research interests include adaptive control, nonlinear control, learning control, robotics, and control of electrical machines. Cristiano Maria Verrelli was born in Italy on September 12, 1977. He received the Ph.D. in System Engineering from the University of Rome ‘‘Tor Vergata’’ in 2005. He has been visiting scholar at Laboratoire des signaux et systèmes L2S (Supelec, Gif-Sur-Yvette) and at Laboratoire Systèmes Complexes LSC (Evry) in 2004 and 2005. He is currently an Assistant Professor at the Department of Electronic Engineering at the University of Rome ‘‘Tor Vergata’’. He taught course of Dynamical Systems from 2006 to 2008. From 2008, he has been teaching Controls of Dynamical Systems. He is co-author (with R. Marino, P. Tomei) of the book ‘‘Induction Motor Control Design’’ (Springer, 2010). His research interests include robust adaptive nonlinear control and learning control with application to electrical machines.