Repetitive learning position control for full order model permanent magnet step motors

Repetitive learning position control for full order model permanent magnet step motors

Automatica 63 (2016) 274–286 Contents lists available at ScienceDirect Automatica journal homepage: www.elsevier.com/locate/automatica Brief paper ...

3MB Sizes 50 Downloads 56 Views

Automatica 63 (2016) 274–286

Contents lists available at ScienceDirect

Automatica journal homepage: www.elsevier.com/locate/automatica

Brief paper

Repetitive learning position control for full order model permanent magnet step motors✩ Cristiano Maria Verrelli a , Patrizio Tomei a , Valerio Salis b , Stefano Bifaretti c a

University of Rome Tor Vergata, Electronic Engineering Department, Via del Politecnico 1, 00133 Rome, Italy

b

Electrical & Electronic Engineering Department, University of Nottingham, University Park, NG7 2RD, Nottingham, UK

c

University of Rome Tor Vergata, Industrial Engineering Department, Via del Politecnico 1, 00133 Rome, Italy

article

info

Article history: Received 8 November 2014 Received in revised form 15 June 2015 Accepted 2 October 2015

Keywords: Learning control Step motor Output tracking

abstract We provide a novel theoretical solution to the yet unsolved problem of tracking, via state feedback, periodic reference signals (with known period) for the rotor position of full order model uncertain permanent magnet step motors with non-sinusoidal flux distribution and uncertain position-dependent load torque. The resulting control is of simple structure and incorporates three repetitive learning estimation schemes generalizing the classical integral actions. Realistic simulation results illustrate the effectiveness of the proposed approach. © 2015 Elsevier Ltd. All rights reserved.

1. Introduction Permanent magnet motors replace DC motors in a wide range of drive applications (machine tools and industrial robots): high efficiency, high torque to inertia ratio, high power density, absence of rotor windings, absence of external rotor excitation are definite advantages. However, the high-precision position tracking control problem for permanent magnet motors turns to be rather difficult to be solved. This is due to the non-sinusoidal flux distribution in the air-gap, which causes speed oscillations (ripples) and deteriorates the system performance especially at low speeds. Even though improvements in motor design can be effective in ripple minimization (Petrović, Ortega, Stanković, & Tadmor, 2000), both production process complexity and machine costs increase. Compensation of torque pulsations by feedback actions thus becomes an attractive solution (Jahns & Soong, 1996). In the case of periodic position reference signals with known period T∗ , the undesirable disturbances become periodic with the same period T∗ . Consequently, learning control techniques can be successfully used to reduce the position tracking error. In this

✩ The material in this paper was not presented at any conference. This paper was recommended for publication in revised form by Associate Editor Abdelhamid Tayebi under the direction of Editor Toshiharu Sugie. E-mail addresses: [email protected] (C.M. Verrelli), [email protected] (P. Tomei), [email protected] (V. Salis), [email protected] (S. Bifaretti).

http://dx.doi.org/10.1016/j.automatica.2015.10.038 0005-1098/© 2015 Elsevier Ltd. All rights reserved.

context, adaptive learning controls (see Sencer & Shamoto, 2014 for an adaptive/sliding mode approach) have been presented in Marino, Tomei, and Verrelli (2008) for current-fed motors (see experimental analyses and comparisons in Bifaretti, Iacovone, Rocchi, Tomei, & Verrelli, 2011) and extended in Marino, Tomei, and Verrelli (2012b) to voltage-fed motors. Exponential convergence of the position tracking error to an arbitrarily small residual set (containing the origin) is achieved, even though the estimation of a possibly large number of Fourier coefficients may be involved in the approximation of the uncertain reference input. On the other hand, iterative/repetitive learning controls (see Ahn, Chen, & Moore, 2007; Dixon, Zergeroglu, Dawson, & Costic, 2002; Xu, 2004; Xu & Tan, 2003 for the fundamental ideas) have been proposed in Bifaretti, Tomei, and Verrelli (2011) and Chen, Yung, and Cheng (2006) (see also Luo, Chen, Ahn, & Pi, 2011; Luo, Chen, & Pi, 2010 for a spacelearning control design minimizing cogging effects and Betin, Pinchon, & Capolino, 2000; Holtz, 1996; Mohamed, 2007; Qian, Panda, & Xu, 2004, 2005; Tsui, Cheung, & Yuen, 2009; Xu, Panda, Pan, Lee, & Lam, 2004 for experimental applications of standard iterative learning control techniques to torque and speed control in permanent magnet synchronous motors). Even though asymptotic position tracking is guaranteed, their design is however restricted to a simplified current-fed motor model, which constitutes a second order system with matching uncertainties. In this paper, novel repetitive learning control techniques (see Marino, Tomei, & Verrelli, 2012a; Tomei & Verrelli, 2015 for recent advances, even though they do not apply to the nonlinear system in exam) are used to innovatively generalize the result in

C.M. Verrelli et al. / Automatica 63 (2016) 274–286

Bifaretti, Tomei et al. (2011) to voltage-fed motors. The resulting control is of simple structure and incorporates three repetitive learning estimation schemes which generalize the classical integral actions. It is shown that, with a proper choice of the control gains, asymptotic convergence to zero of the rotor position tracking error is achieved through a resulting input signal which is a continuous time function. When compared to Marino et al. (2012a) and Tomei and Verrelli (2015), technical difficulties here appear: (i) an uncertain function multiplying the rotor speed derivative in the motor model here replaces the uncertain constant multiplying the output derivative in Marino et al. (2012a) and Tomei and Verrelli (2015); (ii) uncertain terms in the current dynamics here replace the known terms in the filter state dynamics of Marino et al. (2012a) and Tomei and Verrelli (2015). The resulting innovative control design and stability analysis consequently involve: (i) more than one learning estimation scheme (just like in Marino et al., 2012b in which, however, a ‘‘separation-like principle’’ can be invoked due to persistency of excitation); (ii) the use of an uncertain periodic function in the quadratic-integral Lyapunov-like function (see also Jin & Xu, 2013 for a similar idea). Realistic simulation results finally illustrate the effectiveness of the proposed approach. 2. Dynamic model and problem statement Under the assumptions of negligible stator self inductance variations with position and negligible mutual inductance between stator windings, a permanent magnet step motor (see Khorrami, Krishnamurthy, & Melkote, 2003) 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 dθ(t ) dt

= ω(t )

hp (θ(t )) did (t ) dt

dω(t )

= −αp (θ (t )) − βp (θ (t ))ω(t ) + cp (θ (t ))id (t )

dt

= −

+ iq ( t ) R L0 1

id (t ) + Nr iq (t )ω(t ) −

ω(t ) L0

ηd (θ (t ))

where hp (θ) =

αp (θ) = βp (θ) = cp (θ) =

 n  J if Nr

−1 jLmj cos[(1 − j)Nr θ ]

 TL (θ ) +

J

n Nr i2f 

2

jLfj sin[jNr θ ]

j =4

n hp (θ )if Nr 

J

jLmj sin[(1 − j)Nr θ ]

j=2 n 

jLmj sin[(j − 1)Nr θ ]

j=2 n  j =1

n

j=1

  Lmj cos jNr θ − π2 model the non-sinusoidal flux distriNr i2

bution in the air-gap; the term 2 f j=4 jLfj sin[jNr θ ] represents the disturbance torque due to cogging; the parameters Lmj , 2 ≤ j ≤ n (which are zero under the standard assumption of sinusoidal flux distribution) are much smaller than Lm1 (see Khorrami et al., 2003); hence the direct-axis current id does not significantly contribute to torque production, while the quadrature-axis current iq is assigned to produce the required torque. Since, as in Marino et al. (2012b), all the (constant) system parameters along with the load torque function are here allowed to be uncertain excepting for the number of rotor teeth Nr and the stator windings self inductance L0 , all the previously defined functions are crucially uncertain. The control problem is stated as follows. Under the assumptions: (M.1) Nr and L0 are known parameters; (M.2) αp (θ ) is a class C sα function on R (sα ≥ 2); (M.3) there exist known positive reals hm , hM , kh , kα i , kβ i , ηdM , ηqM , cM , η¯ dM , η¯ qM , Rm , RM ∈ R+ (i = 1, 2) such that   for all θ ∈ R [i = 1, 2]: (i) hm  ≤ hp (θ ) ≤ hM ; (ii)

n

 ∂ i−1 α (θ )   ∂ i−1 β (θ )   ∂ hp (θ )   ∂θ  ≤ kh ; (iii)  ∂θ i−p1  ≤ kαi ; (iv)  ∂θ i−p1  ≤ kβ i ; (v) |η  d (θ )| ≤ ηdM ; (vi) |ηq (θ )| ≤ ηqM ; (vii) |cp (θ )| ≤ cM ; (viii)  ∂ηq (θ )   ∂ηd (θ )   ≤ η¯ qM ; (x) Rm ≤ R ≤ RM , we address  ∂θ  ≤ η¯ dM ; (ix)  ∂θ

the problem of designing a state feedback control for system (1) in order to guarantee the rotor position tracking of a reference signal θ ∗ (t ) which is assumed to belong to the following class: (M.4) θ ∗ (t ) is a class C sθ (sθ ≥ 3) periodic function of known period T∗ (i.e. θ ∗ (t ) = θ ∗ (t + T∗ ), ∀ t ≥ −T∗ ), with bounded time derivatives |θ ∗(i) (t )| ≤ cθ i (i = 1, 2) for all t ∈ [0, T∗ ).

3.1. Preliminary computations (1)

Since a non-zero id only contributes to torque ripples, it is desirable to set the id -reference i∗d = 0 while choosing, as aforementioned, the iq -reference i∗q to produce the desired torque reference (see for instance Chen & Paden, 1993). We define the rotor position and speed tracking errors (kθ is a positive control pa. rameter): θ˜ = θ − θ ∗ , ω ˜ = ω − ω∗ = ω + kθ θ˜ − θ˙ ∗ so that

θ˙˜ = −kθ θ˜ + ω˜ . Furthermore, we express the uncertain function fc (θ , ω) = αp (θ ) + βp (θ )ω as + hp (θ )kθ ω˜ − hp (θ )k2θ θ˜

with q0c (θ ∗ , θ˙ ∗ , θ¨ ∗ ) = αp (θ ∗ ) + βp (θ ∗ )θ˙ ∗ + hp (θ ∗ )θ¨ ∗ gc (θ˜ , ω, ˜ t ) = −hp (θ )kθ ω˜ + hp (θ )k2θ θ˜ + αp (θ ) − αp (θ ∗ )

J

ηq (θ) = if Nr

and



Dhp (θ )

ηd (θ) = −if Nr

load torque; if is the fictitious rotor current provided by the permanent magnet; R and L0 are the stator windings n resistance and the self inductance, respectively; the harmonics j=1 Lmj cos[jNr θ ]

fc (θ , ω) = q0c (θ ∗ , θ˙ ∗ , θ¨ ∗ ) − hp (θ )θ¨ ∗ + gc (θ˜ , ω, ˜ t)

j =1

hp (θ )

and: (id , iq ) are the stator current vector (d, q) components; (ud , uq ) are the stator voltage vector (d, q) components [which constitute the control inputs]; n ≥ 4 is an uncertain positive integer; D is the friction coefficient; J is the rotor inertia; TL (·) is the

3. Repetitive control design

ud ( t ) L0 diq (t ) R ω(t ) = − iq (t ) − Nr id (t )ω(t ) − ηq (θ (t )) dt L0 L0 1 + uq (t ) L0

+

275

jLmj cos[(j − 1)Nr θ ]

+ βp (θ ∗ )(ω˜ − kθ θ˜ ) + [βp (θ ) − βp (θ ∗ )]ω + [hp (θ ) − hp (θ ∗ )]θ¨ ∗ .

By virtue of assumption (M.4), qc (t ) = q0c (θ ∗ (t ), θ˙ ∗ (t ), θ¨ ∗ (t )) is a class C pc -periodic function of known period T∗ with pc = min{sθ − 2, sα }: it constitutes the uncertain periodic input reference for the current iq (t ) achieving, for id = 0 and compatible initial conditions θ (0) = θ ∗ (0), ω(0) = θ˙ ∗ (0), perfect tracking. From assumptions (M.3) and (M.4), a known bound Bq = kα 1 + kβ 1 cθ 1 + hM cθ 2

276

C.M. Verrelli et al. / Automatica 63 (2016) 274–286

for |qc (t )| can be explicitly computed. Similarly, we introduce the functions qd (t ) ∈ C pd (pd = sθ − 1) and qq (t ) ∈ C pq (pq = min{sθ − 2, sα }) defined as qd (t ) = θ˙ ∗ (t )ηd (θ ∗ (t )) qq (t ) = θ˙ ∗ (t )ηq (θ ∗ (t )) + Rqc (t ) which are periodic of known period T∗ owing to assumption (M.4). Moreover, from assumptions (M.3), (M.4), known bounds Bqd = cθ 1 ηdM , Bqq = cθ 1 ηqM + RM (kα 1 + kβ 1 cθ 1 + hM cθ 2 ) for |qd (t )| and |qq (t )|, respectively, can be explicitly computed. 3.2. Control design and stability analysis We design a repetitive learning control algorithm (compare it with (25)–(28) in Marino et al., 2012b and with (2), (3), (5), (6) in Bifaretti, Tomei et al., 2011) consisting of: (i) an inner rotor position/speed control loop i∗q (t ) = −kω ω( ˜ t ) − kv θ˜ (t ) + satBq qˆ c (t − T∗ )



θ˜ = θ − θ ,



ω˜ = ω + kθ θ˜ − θ



˙∗

(2)

Fig. 1. Block diagram for the inner rotor position/speed control loop in the case of a current-fed PMSM (PMSMC ).

containing the estimate qˆ c (t ) (saturated and T∗ -delayed) of the periodic function qc (t ) provided by the learning estimation scheme qˆ c (t ) = satBq qˆ c (t − T∗ ) − µq ϕT∗ (t )Fq (t )





qˆ c (t ) = 0,

∀t ≤0 Fq (t ) = ω( ˜ t ) + rq sgn[bc (θ (t ))](iq (t ) − i∗q (t )) bc (θ(t )) = kω L0 − Rhp (θ (t ));

(3)

(ii) an outer stator current vector control loop



ud (t ) = L0 −Nr ω(t )iq (t ) −

kid

 ˜id (t ) + qˆ d (t )

rd   d uq (t ) = L0 Nr ω(t )id (t ) + satBq qˆ c (t − T∗ ) dt  kiq − ˜iq (t ) + qˆ q (t ) rq

(4)



Fig. 2. General form for the block diagrams of (3), (5), (6) with tracking error TE , learning gain µ, and gain function ψ(·).

in which the stator current tracking errors ˜id = id − i∗d = id , ˜iq = iq − i∗q appear along with the estimates qˆ d (t ), qˆ c (t ) of qd (t ), qq (t ) being provided by the learning estimation schemes   qˆ d (t ) = satBqd qˆ d (t − T∗ ) − µα ϕT∗ (t )˜id (t ) qˆ d (t ) = 0,

∀t ≤0   ˆqq (t ) = satBqq qˆ q (t − T∗ ) − µδ ϕT∗ (t )˜iq (t )

(5)

qˆ q (t ) = 0,

(6)

∀ t ≤ 0.

chine control literature (see, to this purpose, the last comments of the subsequent Section 3.3). The above inner rotor position/speed control loop (namely the control input i∗q in (2)) is described in the block diagram reported in Fig. 1 for the simplified case of a currentfed permanent magnet step motor PMSM. It apparently incorporates the classical PD position control (with gains kp and kd ):

  −kω ω( ˜ t ) − kv θ˜ (t ) = −(kv + kω kθ )θ˜ (t ) − kω ω(t ) − θ˙ ∗ (t ) = −(k + k k )θ˜ (t ) − k θ˙˜ (t ) v

The above control algorithm depends on: the positive control parameters kv , kθ , kω (chosen to guarantee that bc (θ (t )) is different from zero for any t ≥ 0), rd , rq , kid , kiq , µq , µα , µδ ; the known positive bounds Bq , Bqd , Bqq on |qc (t )|, |qd (t )|, |qq (t )|, respectively; the saturation function satMξ (·) : R → [−Mξ − δs , Mξ + δs ] which

ω θ

ω

. = −kp θ˜ (t ) − kd θ˙˜ (t )   along with the plug-in signal satBq qˆ c (t − T∗ ) which generalizes t the integral action −ki 0 θ˜ (τ )dτ typically used to compensate

q2 ∈ R; the function ϕx (·) : R+ 0 → [0, 1] (x > 0) which is a class C 1 increasing function for t ∈ [0, x] (with ϕx (0) = ϕ˙ x (0) = 0, ϕ˙ x (x) = 0, ϕx (t ) = 1 for any t ≥ x) endowing the above estimates with suitable continuity properties.

the effects of constant disturbances. On the other hand, the above repetitive learning estimation schemes (3), (5), (6) (with (5) and (6) replacing the integral actions on the stator current tracking errors in the outer stator current control loop (4)) apparently use, at each trial, the estimate recorded during the previous trial in conjunction with the actual tracking errors being weighted through the previously introduced learning gains µq , µα , µδ and the continuity function ϕT∗ (·) (see Fig. 2).

Remark. The control (2)–(6) is of simple structure and generalizes the classical field oriented control typically used in the electric ma-

Define y(t ) = [θ˜ (t ), ω( ˜ t ), ˜id (t ), ˜iq (t )]T . The main result of this paper can be stated as follows.

is a class C 1 odd increasing function satisfying (δs is an arbitrary positive real) satMξ (q) = q for any q ∈ (0, Mξ ], limq→∞ satMξ (q) = Mξ + δs and |q1 − q2 | ≥ |q1 − satMξ (q2 )| for any |q1 | ≤ Mξ ,

C.M. Verrelli et al. / Automatica 63 (2016) 274–286

277

Fig. 3. Rotor angle reference signal, rotor angle along with rotor angle and speed tracking errors θ˜ , ω ˜.

Theorem. Consider: system (1) satisfying assumptions (M.1)–(M.3); a rotor position reference signal θ ∗ (t ) satisfying assumption (M.4); the state feedback control (2)–(6). For any initial condition there exist sufficiently high values of the control gains kω , kid , kiq and sufficiently small values of the design parameters rd , rq such that the vector y(t ) is bounded on [0, +∞) and converges asymptotically to zero. Proof. Define the estimation errors (i = c , d, q) q˜ i = qi − qˆ i .

(7)

Then, according to (1) and to the definition of ω ˜ , the rotor speed tracking error dynamics can be derived as



˙˜ = −fc (θ , ω) + iq + cp (θ )id + hp (θ )kθ −kθ θ˜ + ω˜ hp (θ)ω



− hp (θ )θ¨ ∗ where gc (·), according to Bifaretti, Tomei et al. (2011), satisfies

 ˜ ω, ˜ + kβ 2 cθ 1 |gc (θ, ˜ t )| ≤ kh cθ 2 + kβ 1 kθ + kβ 2 |ω| ˜ + kβ 2 kθ |θ|    2 ˜ + kα2 + hM kθ |θ | + kβ 1 + hM kθ |ω|. ˜ On the other hand, the stator current tracking error dynamics satisfy

˙˜i = − R ˜i + N ωi + 1 u − 1 q d d r q d d L0

L0

L0

1 θ˙ ∗ ηd (θ )θ˜ − ηd (θ )ω˜ − [ηd (θ ) − ηd (θ ∗ )] L L L0 0  0 ˜ R k q . id ˜id − d + Ψd (θ˜ , ω, =− + ˜ ·) kθ

L0

rd

L0

˙˜i = − R ˜i − N ωi + 1 u − 1 q q q r d q q L0

+ −



L0

ηq (θ )θ˜ −

L0 di∗q dt



R L0

+ −

1 L0

L0

ηq (θ )ω˜ −

θ˙ ∗ L0

[ηq (θ ) − ηq (θ ∗ )]

[−kω ω˜ − kv θ˜ + µq ϕT∗ Fq ] +

R L0

q˜ c

R L0

˜iq − Nr ωid + 1 uq − 1 qq



L0

ηq (θ )θ˜ −

L0 d

dt

1 L0

L0

ηq (θ )ω˜ −

θ˙ ∗ L0

[ηq (θ ) − ηq (θ ∗ )]

satBq qˆ c (· − T∗ ) − kv ω ˜ + kθ kv θ˜





 (k − µ ϕ ) kv ω q T∗ − kω − ω˜ − θ˜ hp (θ ) hp (θ ) cp (θ ) (1 + rq µq ϕT∗ sgn[bc (θ )]) ˜ ˜id iq + + hp (θ ) hp (θ )  1 1 − q˜ c − gc (θ˜ , ω, ˜ ·) hp (θ ) hp (θ ) R

R

[−kω ω˜ − kv θ˜ + µq ϕT∗ Fq ] + q˜ c L0     R kiq q˜ q kω R . ˜ =− + iq − − − q˜c L0 rq L0 hp (θ ) L0 + Ψq (θ˜ , ω, ˜ ·) + Πd (·)˜id + Πq (·)˜iq , −

= −qc − gc (θ˜ , ω, ˜ ·) + iq + cp (θ )id

+

=−

L0

where the functions Ψd (·), Ψq (·), Πd (·), Πq (·) are accordingly defined. In summary, the overall tracking error dynamics can be rewritten in a compact form as

θ˙˜ = −kθ θ˜ + ω˜ ˙˜ = −kω ω˜ − kv θ˜ − q˜ c + µq ϕT [ω˜ hp (θ )ω ∗ + rq sgn[bc (θ )]˜iq ] − gc (θ˜ , ω, ˜ ·) + cp (θ )˜id + ˜iq   ˙˜i = − R + kid ˜i − q˜ d + Ψ (θ˜ , ω, ˜ ·) d d d L0 rd L0     ˙˜i = − R + kiq ˜i − q˜ q − kω − R q˜ q q c L0 rq L0 hp (θ ) L0 + Ψq (θ˜ , ω, ˜ ·) + Πd (·)˜id + Πq (·)˜iq

(8)

with gc (·), Ψd (·), Ψq (·), Πd (·), Πq (·) exhibiting the property of satisfying, when kv θ˜ 2 (t ) ≤ 2Mw , hm ω ˜ 2 (t ) ≤ 2Mw , the inequalities:

|gc (·)| ≤ Mg (Mw )

278

C.M. Verrelli et al. / Automatica 63 (2016) 274–286

Fig. 4. Functions qc (t ), qd (t ), qq (t ) and their estimates qˆ c (t ), qˆ d (t ), qˆ q (t ).

Fig. 5. Padé approximants-based controller: rotor angle reference signal, rotor angle along with rotor angle and speed tracking errors θ˜ , ω ˜.

|Ψd (·)| ≤ Mψ,d (Mw ),

 + rq |bW (θ ∗ (t ))|˜i2q (t )

|Ψq (·)| ≤ Mψ,q (Mw )

|Πd (·)| ≤ Mπ,d (Mw ),

|Πq (·)| ≤ Mπ,q (Mw )

(9)

in which Mg (·) ∈ R does not increase with kω , while Mψ,d (·), Mψ,q (·), Mπ,d (·), Mπ,q (·) ∈ R+ do not increase with kid , kiq , rd−1 , +

 −1 − LR0 which is well defined when kω is chosen so that bc (θ (t )) in (3) is (uniformly) away from zero for any t ≥ 0. The proof then relies on the quadratic rq−1 . Introduce the function bW (θ ) =



kω hp (θ)

and its time derivative along the trajectories of the closed loop system (8). Besides the typical computations and the classical use of conservative inequalities in the Lyapunov analysis, it is only crucial to recognize that bW (θ ∗ ) bW (θ )

=

bW (θ ) + [bW (θ ∗ ) − bW (θ )]

function V (t ) =

1 2

kv θ˜ 2 (t ) + hp (θ (t ))ω ˜ 2 (t ) + rd˜i2d (t )

Given Mw =

bW (θ ) 1 2



.



¯ w with M ¯ w > 0, it is kv θ˜ 2 (0) + hM ω ˜ 2 (0) + M

straightforward to show that, for sufficiently high values of the

C.M. Verrelli et al. / Automatica 63 (2016) 274–286

279

Fig. 6. Padé approximants-based controller: functions qc (t ), qd (t ), qq (t ) and their estimates qˆ c (t ), qˆ d (t ), qˆ q (t ).

Fig. 7. Padé approximants-based controller (discrete-time version): rotor angle reference signal, rotor angle along with rotor angle and speed tracking errors θ˜ , ω ˜.

control gains kω , kid , kiq and sufficiently small values of the design parameters rd and rq (depending on the (M.3)–(M.4)-based

˜ ˜ bounds (9) and the initial   conditions id (0) and iq (0)), the inequality 1 2

kv θ˜ 2 (t ) + hm ω ˜ 2 (t ) ≤ Mw holds for any time t. Consequently,

the time derivative of the quadratic-integral Lyapunov-like function W (t ) = V (t ) +

+

2µq

rd 2µα L0



t



1

2

qc (τ ) − satBq (ˆqc (τ ))





+

rq 2µδ L0



t

 2 |bW (θ ∗ (τ ))| qq (τ ) − satBq (ˆqq (τ )) dτ

t −T∗

satisfies, along the trajectories of the closed loop system (8) and ˙ (t ) ≤ −cW V (t ) with cW being a suit(3), (5), (6), the inequality: W able positive real. Barbalat’s lemma finally applies and guarantees the asymptotic convergence to zero of ∥[θ˜ (t ), ω( ˜ t ), ˜id (t ), ˜iq (t )]∥. 3.3. Padé approximants

t −T∗ t

2

qd (τ ) − satBqd (ˆqd (τ ))

 t −T∗



When the delay terms are approximated as in Tomei and Verrelli (2015) by properly using the Padé rational functions (see Re-

280

C.M. Verrelli et al. / Automatica 63 (2016) 274–286

Fig. 8. Padé approximants-based controller (discrete-time version): functions qc (t ), qd (t ), qq (t ) and their estimates qˆ c (t ), qˆ d (t ), qˆ q (t ).

Fig. 9. Padé approximants-based controller (discrete-time version): stator current and voltage vector (d, q) components.

mark 3 and stability/convergence implications therein), we obtain learning estimation schemes with inputs Fq , ˜id , ˜iq and outputs qˆ c , qˆ d , qˆ q , respectively, which are linear and bounded-input boundedoutput (the saturation functions along with the ϕT∗ (·)—functions are no longer required). The resulting control1 is guaranteed to be bounded and, when compared to (2)–(6), involves (s is the complex

1 No first order filters are used (so that α = 0 in Tomei & Verrelli, 2015), while, for the sake of clarity, the same Padé approximants with odd order m are used for the three ‘‘first order’’ learning estimation schemes (see Tomei & Verrelli, 2015 for comments on the role of m).

β

variable): Λ(s) = 1+β (P[m,m] (s) + 1)Qˆ c (s), M (s) = sΛ(s) in place   d of satBq (ˆqc (t − T∗ )) and its time derivative dt satBq qˆ c (t − T∗ ) in (2) and (4), respectively, with – in place of (3), (5), (6) – the modified linear learning estimation schemes [Qˆ c (s), Qˆ d (s), Qˆ q (s), Fq (s),

˜Id (s), ˜Iq (s) are the Laplace transforms of the Laplace transformable signals qˆ c (t ), qˆ d (t ), qˆ q (t ), Fq (t ), ˜id (t ), ˜iq (t ), respectively]: Qˆ c (s) = d (s) d (s) d (s) − p µq Fq (s), Qˆ d (s) = − p µα ˜Id (s), Qˆ q (s) = − p µδ ˜Iq (s) inqπ (s)

qπ (s)

qπ (s)

−sT∗ corporating the [m, m]-Padé approximant of e : P[m,m] (s) = m m (2m−k)! Pm (−sT∗ ) . np (s) = d (s) (here Pm (sT∗ ) denotes k=0 k (2m)! (sT∗ )k and P (sT ) m



p

C.M. Verrelli et al. / Automatica 63 (2016) 274–286

281

Fig. 10. Padé approximants-based controller (discrete-time version): stator current and voltage vector (a, b) components.

Fig. 11. Padé approximants-based controller (discrete-time version, T∗ = 4 s): rotor angle reference signal, rotor angle along with rotor angle and speed tracking errors θ˜ ,

ω˜ .

β < 1 is such that qπ (s) = dp (s) − β np (s) has all its roots in C− ). It is relevant to notice that, for µq = µ ¯ q T ∗ , µα = µ ¯ α T∗ , µδ = µ ¯ δ T∗ , β = 1, we get: T∗ −1 (1 − P[m,m] (s))Qˆ c (s) = −µ ¯ q Fq (s), T∗ −1 (1 − P[m,m] (s))Qˆ d (s) = −µ ¯ α ˜Id (s), T∗ −1 (1 − P[m,m] (s))Qˆ q (s) = ˜ −µ ¯ δ Iq (s) with the limit of the previous left-hand-sides for T∗ → 0 being equal to sQˆ c (s), sQˆ d (s) and sQˆ q (s), respectively and Λ(s) converging to Qˆ c (s). In other words, for T∗ → 0 (corresponding to the case of constant references θ ∗ ), the three learning estimation schemes reduce to simple integral actions.

3.4. Realistic simulation results We tested by simulation the repetitive learning control algorithm (2)–(6) with reference to the PM stepper motor described in Krishnamurthy and Khorrami (2003). The load torque is TL (θ ) = NT sin(θ ), while the motor parameters are: J = 0.0733 kgm2 , n = 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 kgm2 /s, NT = 1.7201 kgm2 /s2 , R = 1 Ohm, L0 = 0.7 mH. The rotor angle is required to track the reference signal θ ∗ (t ) = sin(4−1 π t ) rad (exactly as in Bifaretti, Tomei et al., 2011; Marino et al., 2012b),

282

C.M. Verrelli et al. / Automatica 63 (2016) 274–286

Fig. 12. Padé approximants-based controller (discrete-time version, T∗ = 4 s): functions qc (t ), qd (t ), qq (t ) and their estimates qˆ c (t ), qˆ d (t ), qˆ q (t ).

Fig. 13. Padé approximants-based controller (discrete-time version, filtered trapezoidal signal): rotor angle reference signal, rotor angle along with rotor angle and speed tracking errors θ˜ , ω ˜.

which is periodic with period T∗ = 8 s. In the considered robotic application, 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. Continuous-time setting. The control parameters (all values are in SI units and obtained through a trial and error approach) are: 1 kθ = 72, kω = 12, kv = 1, kid /rd = kiq /rq = L− 0 , µq = 5, rq = 0.3, µα = µδ = 72, while the function ϕT∗ (x) is taken equal to 3/64x2 − 1/256x3 for x ∈ [0, T∗ ]. Fig. 3 shows the time histories of the rotor angle reference signal θ ∗ (t ), the rotor angle θ (t ) and the rotor angle and speed tracking errors θ˜ (t ), ω( ˜ t ), while Fig. 4 shows

the time histories of the uncertain functions qc (t ), qd (t ), qq (t ) with their estimates qˆ c (t ), qˆ d (t ), qˆ q (t ). Satisfactory disturbances estimation and rotor position tracking are achieved (compare the results with the ones in Marino et al. (2012b) in the analogous scenario), while stator currents and voltages (not reported here for the sake of brevity) are within physical limits. Similar results are obtained in Figs. 5 and 6 by the controller described in Section 3.3 involving Padé approximants of order m = 7 (β = 0.99, µq = 10, µδ = 0.72), though with relatively small (expected) residual tracking and estimation errors appearing.

C.M. Verrelli et al. / Automatica 63 (2016) 274–286

283

Fig. 14. Padé approximants-based controller (discrete-time version, filtered trapezoidal signal): functions qc (t ), qd (t ), qq (t ) and their estimates qˆ c (t ), qˆ d (t ), qˆ q (t ).

Fig. 15. Padé approximants-based controller (discrete-time version, T∗ = 4 s, C implementation, white noise): rotor angle reference signal, rotor angle along with rotor angle and speed tracking errors θ˜ , ω ˜.

Discrete-time setting (with encoder simulation). In order to check the effectiveness of the proposed controller in the realistic scenario of Bifaretti, Tomei et al. (2011), a discrete-time version (with sampling time Ts = 250 µs) of the proposed controller with Padé approximation order m = 7 is obtained and then simulated (with µq = 12, µα = 7.2, µδ = 0.72). In particular, we apply the 1−T s/2

Tustin transformation z = 1+Ts s/2 to the Padé s-functions in order s to translate them in the z-domain. 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, as in Bifaretti, Tomei et al. (2011), 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 Figs. 7–10. Satisfactory performances, in the presence of 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 gains) owing to its learning capabilities. The most satisfactory results are however achieved by the rotor position tracking error θ˜ (t ) with the residual rotor speed tracking error ω( ˜ t ) depending on implementation and measurement issues as well as on the use of Padé approximants (comparatively recall Figs. 3 and 5).

284

C.M. Verrelli et al. / Automatica 63 (2016) 274–286

Fig. 16. Padé approximants-based controller (discrete-time version, T∗ = 4 s, C implementation, white noise): functions qc (t ), qd (t ), qq (t ) and their estimates qˆ c (t ), qˆ d (t ), qˆ q (t ).

Fig. 17. Padé approximants-based controller (discrete-time version, T∗ = 4 s, C implementation, white noise): stator current and voltage vector (d, q) components.

Additional simulation results – not reported here for the sake of brevity – show how the performance significantly degrades when only the robust action of the controller is simulated (i.e. when Λ(s) = M (s) = Qˆ d (s) = Qˆ q (s) = 0): the rotor position tracking error remains approximately equal to the one corresponding to the first trial in Fig. 7. For the sake of exhaustiveness, analogous satisfactory results are finally reported for different rotor position reference signals: (i) a sinusoidal profile with period T∗ = 4 s and amplitude 1 rad (Figs. 11–12); (ii) a filtered trapezoidal signal with period T∗ = 8 s (Figs. 13–14).

3.5. Toward experiments (C language implementation and additional stator current noise) In order to illustratively evaluate the performance of the controller in a setting which is rather close to an experimental scenario, the aforementioned controller using Padé approximants described in the previous Section 3.4 ‘‘Discrete-time setting’’ (µα = 0.172) is first implemented in C language (in order to explicitly remove the algebraic loop induced by the Tustin transformationbased, discrete-time representation of the controller while making

C.M. Verrelli et al. / Automatica 63 (2016) 274–286

285

Fig. 18. Padé approximants-based controller (discrete-time version, T∗ = 4 s, C implementation, white noise): stator current and voltage vector (a, b) components.

the resulting code suitable for experimental realizations) and then simulated in the realistic set up of Section 3.4 ‘‘Discretetime setting’’ with white noise in the compact set [−0.5, 0.5] (A) being added to the stator current measurements. The results concerning the sinusoidal rotor position reference signal with period T∗ = 4 s and amplitude 1 rad (described is Section 3.4) are reported in Figs. 15–18 (compare the corresponding profiles in Figs. 11–12). Satisfactory tracking results are again obtained, though the estimation of qd (t ) (as well as the regulation of the stator current vector d-component id (t ) to zero) turns to be, as expected, more affected by the relatively large current noise. 4. Conclusions For uncertain full order model permanent magnet step motors (1) with non-sinusoidal flux distribution and uncertain positiondependent load torque, a repetitive learning control (2)–(6) has been innovatively designed to guarantee the asymptotic tracking of rotor position periodic reference signals with known period T∗ . The simple structure of the controller (which moves in the light of the classical field oriented controls typically used in the electric machine control literature) along with the satisfactory simulation results obtained in rather realistic settings encourage the experimental validation of the proposed approach in the direction dictated by Bifaretti, Iacovone et al. (2011). References Ahn, H.-S., Chen, Y. Q., & Moore, K. L. (2007). Iterative learning control: brief survey and categorization. IEEE Transactions on Systems, Man, and Cybernetics—Part C: Applications and Reviews, 37, 1099–1121. 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. Betin, F., Pinchon, D., & Capolino, G.-A. (2000). Fuzzy logic applied to speed control of a stepping motor drive. IEEE Transactions on Industrial Electronics, 47, 610–622. Bifaretti, S., Iacovone, V., Rocchi, A., Tomei, P., & Verrelli, C. M. (2011). Global learning position controls for permanent magnet step motors. IEEE Transactions on Industrial Electronics, 58, 4654–4663. Bifaretti, S., Tomei, P., & Verrelli, C. M. (2011). A global robust iterative learning position control for current-fed permanent magnet step motors. Automatica, 47, 227–234.

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 Transactions on Mechatronics, 11, 362–365. 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. Holtz, J. (1996). Identification and compensation of torque ripple in high-precision permanent magnet motor drives. IEEE Transactions on Industrial Electronics, 43, 309–320. Jahns, T. M., & Soong, W. L. (1996). Pulsating torque minimization techniques for permanent magnet AC motor drives—A review. IEEE Transactions on Industrial Electronics, 43, 321–330. Jin, X., & Xu, J. X. (2013). Iterative learning control for output-constrained systems with both parametric and parametric uncertainties. Automatica, 49, 2508–2516. Khorrami, F., Krishnamurthy, P., & Melkote, H. (2003). Modeling and adaptive nonlinear control of electric motors. Berlin: Springer-Verlag. 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. Luo, Y., Chen, Y. Q., Ahn, H.-S., & Pi, Y. (2011). Dynamic high order periodic adaptive learning compensator for cogging effect in permanent magnet synchronous motor servo system. IET Control Theory & Applications, 5, 669–680. Luo, Y., Chen, Y. Q., & Pi, Y. (2010). Cogging effect minimization in PMSM position servo system using dual high-order periodic adaptive learning compensation. ISA Transactions, 49, 479–488. Marino, R., Tomei, P., & Verrelli, C.M. (2008). Position learning control for current-fed permanent magnet step motors with uncertainties. In: 10th IEEE international workshop on advanced motion control AMC’08 (pp. 699–703). Marino, R., Tomei, P., & Verrelli, C. M. (2012a). Learning control for nonlinear systems in output feedback form. Systems & Control Letters, 61, 1242–1247. Marino, R., Tomei, P., & Verrelli, C. M. (2012b). Robust adaptive learning control for nonlinear systems with extended matching unstructured uncertainties. International Journal of Robust and Nonlinear Control, 22, 645–675. Mohamed, Y. A.-R. I. (2007). A hybrid-type variable-structure instantaneous torque control with a robust adaptive torque observer for a high-performance directdrive PMSM. IEEE Transactions on Industrial Electronics, 54, 2491–2499. 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. Qian, W., Panda, S. K., & Xu, J.-X. (2004). Torque ripple minimization in PM synchronous motors using iterative learning control. IEEE Transactions on Power Electronics, 19, 272–279. Qian, W., Panda, S. K., & Xu, J.-X. (2005). Speed ripple minimization in PM synchronous motors using iterative learning control. IEEE Transactions on Energy Conversion, 20, 53–61. Sencer, B., & Shamoto, E. (2014). Effective torque ripple compensation in feed drive systems based on the adaptive sliding-mode controller. IEEE/ASME Transactions on Mechatronics, 19, 1764–1772.

286

C.M. Verrelli et al. / Automatica 63 (2016) 274–286

Tomei, P., & Verrelli, C. M. (2015). Linear repetitive learning controls for nonlinear systems by Padé approximants. International Journal of Adaptive Control and Signal Processing, 29, 783–804. Tsui, K. W.-H., Cheung, N. C., & Yuen, K. C.-W. (2009). Novel modeling and damping technique for hybrid stepper motor. IEEE Transactions on Industrial Electronics, 56, 202–211. 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. Xu, J.-X., Panda, S. K., Pan, Y.-J., Lee, T. H., & Lam, B. H. (2004). A modular control scheme for PMSM speed control with pulsating torque minimization. IEEE Transactions on Industrial Electronics, 51, 526–536. Xu, J.-X., & Tan, Y. (2003). Authors’ reply [to comments on ‘‘A composite energy function-based learning control approach for nonlinear systems with timevarying parametric uncertainties’’]. IEEE Transactions on Automatic Control, 48, 1672–1674.

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 for the research project (Marie Curie Training Site): Transient stabilization of power systems. He currently is an Associate Professor at the Department of Electronic Engineering at the University of Rome ‘‘Tor Vergata’’. He taught the course of Dynamical Systems from 2006 to 2008. He currently teaches the courses of Feedback Control Systems and of Control of Electrical Machines. He is co-author (with R. Marino, P. Tomei) of the book ‘‘Induction Motor Control Design’’ (Springer, 2010). His research interests are in robust adaptive nonlinear control and learning control theory with application to electrical machines, electrical vehicles, robots and physiological systems. He is Associate Editor for the IFAC journal ‘‘Control Engineering Practice’’. He is reviewer for several high impact international journals in the field ‘‘Automation’’ as well as reviewer for the ‘‘American Mathematical Society’’.

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 currently is professor of ‘‘Adaptive Systems’’ at the University of Rome ‘‘Tor Vergata’’. He is coauthor of the books ‘‘Nonlinear Control Design’’, Prentice Hall, 1995 (with R. Marino) and co-author of the book ‘‘Induction Motor Control Design’’, Springer, 2010 (with R. Marino and C.M. Verrelli). His research interests are in adaptive control, nonlinear control, learning control, robotics, and control of electrical machines. Valerio Salis received the Master’s degree in Electronic Engineering from the University of Rome Tor Vergata, Rome, Italy, in 2014. He is currently working toward the Ph.D. degree in Electrical and Electronic Engineering in the Power Electronics, Machines and Control Group, University of Nottingham, Nottingham, UK. His research interests include study of instability issues in microgrids, linear time periodic system analysis and control design.

Stefano Bifaretti received the Ph.D. degree in Electronic Engineering from University of Rome ‘‘Tor Vergata’’, Italy, in 1999 and 2003. In 2004 he became Assistant Professor at the same University where he is currently a lecturer in Power Electronics. In 2007 he was with the PEMC research group at the University of Nottingham (UK), collaborating on the UNIFLEX-PM European project. His research interests include power electronics converters, industrial drives and future electricity networks. He has published over 80 papers in international journals and conferences. He is an Associate Editor of IEEE Transaction on Industry Applications.