Internal Model Principle

Similar documents
CONTROL DESIGN FOR SET POINT TRACKING

Topic # Feedback Control. State-Space Systems Closed-loop control using estimators and regulators. Dynamics output feedback

Linear State Feedback Controller Design

Control Systems Design

EECE 460 : Control System Design

Chapter 13 Digital Control

Synthesis via State Space Methods

Lecture 13: Internal Model Principle and Repetitive Control

Control System Design

Chapter 15 - Solved Problems

D(s) G(s) A control system design definition

Analysis of SISO Control Loops

Topic # Feedback Control Systems

EE C128 / ME C134 Fall 2014 HW 9 Solutions. HW 9 Solutions. 10(s + 3) s(s + 2)(s + 5) G(s) =

Raktim Bhattacharya. . AERO 422: Active Controls for Aerospace Vehicles. Basic Feedback Analysis & Design

ECEN 605 LINEAR SYSTEMS. Lecture 20 Characteristics of Feedback Control Systems II Feedback and Stability 1/27

Chapter 7 - Solved Problems

EEE 184: Introduction to feedback systems

5. Observer-based Controller Design

Control Systems I. Lecture 7: Feedback and the Root Locus method. Readings: Jacopo Tani. Institute for Dynamic Systems and Control D-MAVT ETH Zürich

Pole placement control: state space and polynomial approaches Lecture 2

Chapter 3. State Feedback - Pole Placement. Motivation

Robust Internal Model Control for Impulse Elimination of Singular Systems

EL 625 Lecture 10. Pole Placement and Observer Design. ẋ = Ax (1)

Control Systems I. Lecture 6: Poles and Zeros. Readings: Emilio Frazzoli. Institute for Dynamic Systems and Control D-MAVT ETH Zürich

State Regulator. Advanced Control. design of controllers using pole placement and LQ design rules

TRACKING AND DISTURBANCE REJECTION

Control System Design

Laplace Transform Analysis of Signals and Systems

10/8/2015. Control Design. Pole-placement by state-space methods. Process to be controlled. State controller

Unit 11 - Week 7: Quantitative feedback theory (Part 1/2)

Integral action in state feedback control

POLE PLACEMENT. Sadegh Bolouki. Lecture slides for ECE 515. University of Illinois, Urbana-Champaign. Fall S. Bolouki (UIUC) 1 / 19

Control Systems I. Lecture 5: Transfer Functions. Readings: Emilio Frazzoli. Institute for Dynamic Systems and Control D-MAVT ETH Zürich

Chapter 2. Classical Control System Design. Dutch Institute of Systems and Control

Controls Problems for Qualifying Exam - Spring 2014

Lecture 12. Upcoming labs: Final Exam on 12/21/2015 (Monday)10:30-12:30

Identification Methods for Structural Systems

Digital Control: Part 2. ENGI 7825: Control Systems II Andrew Vardy

Intro. Computer Control Systems: F9

State will have dimension 5. One possible choice is given by y and its derivatives up to y (4)

RELAY CONTROL WITH PARALLEL COMPENSATOR FOR NONMINIMUM PHASE PLANTS. Ryszard Gessing

State Feedback and State Estimators Linear System Theory and Design, Chapter 8.

Raktim Bhattacharya. . AERO 632: Design of Advance Flight Control System. Preliminaries

Raktim Bhattacharya. . AERO 422: Active Controls for Aerospace Vehicles. Dynamic Response

Extensions and applications of LQ

State Feedback and State Estimators Linear System Theory and Design, Chapter 8.

Exam. 135 minutes, 15 minutes reading time

Introduction. Performance and Robustness (Chapter 1) Advanced Control Systems Spring / 31

Control of Electromechanical Systems

Feedback Control of Linear SISO systems. Process Dynamics and Control

Control System Design

Power System Control

SYSTEMTEORI - ÖVNING 5: FEEDBACK, POLE ASSIGNMENT AND OBSERVER

Zeros and zero dynamics

Design Methods for Control Systems

Time Response Analysis (Part II)

Topic # Feedback Control Systems

6 OUTPUT FEEDBACK DESIGN

4F3 - Predictive Control

sc Control Systems Design Q.1, Sem.1, Ac. Yr. 2010/11

Intro. Computer Control Systems: F8

Uncertainty and Robustness for SISO Systems

INTRODUCTION TO DIGITAL CONTROL

Control Systems Design

MAS107 Control Theory Exam Solutions 2008

ECE 388 Automatic Control

Control System. Contents

EEE582 Homework Problems

Dr Ian R. Manchester Dr Ian R. Manchester AMME 3500 : Review

Intermediate Process Control CHE576 Lecture Notes # 2

x(n + 1) = Ax(n) and y(n) = Cx(n) + 2v(n) and C = x(0) = ξ 1 ξ 2 Ex(0)x(0) = I

CBE507 LECTURE III Controller Design Using State-space Methods. Professor Dae Ryook Yang

Control Systems Design, SC4026. SC4026 Fall 2010, dr. A. Abate, DCSC, TU Delft

= 1 τ (C Af C A ) kc A. τ = V q. k = k(t )=k. T0 e E 1. γ = H ρc p. β = (ρc p) c Vρc p. Ua (ρc p ) c. α =

SAMPLE SOLUTION TO EXAM in MAS501 Control Systems 2 Autumn 2015

EE C128 / ME C134 Final Exam Fall 2014

Control engineering sample exam paper - Model answers

Control Systems. Root Locus & Pole Assignment. L. Lanari

Control Systems I. Lecture 7: Feedback and the Root Locus method. Readings: Guzzella 9.1-3, Emilio Frazzoli

ẋ n = f n (x 1,...,x n,u 1,...,u m ) (5) y 1 = g 1 (x 1,...,x n,u 1,...,u m ) (6) y p = g p (x 1,...,x n,u 1,...,u m ) (7)

University of Toronto Department of Electrical and Computer Engineering ECE410F Control Systems Problem Set #3 Solutions = Q o = CA.

= 0 otherwise. Eu(n) = 0 and Eu(n)u(m) = δ n m

7.4 STEP BY STEP PROCEDURE TO DRAW THE ROOT LOCUS DIAGRAM

Plan of the Lecture. Goal: wrap up lead and lag control; start looking at frequency response as an alternative methodology for control systems design.

High Precision Control of Ball Screw Driven Stage Using Repetitive Control with Sharp Roll-off Learning Filter

LABORATORY OF AUTOMATION SYSTEMS Analytical design of digital controllers

Often, in this class, we will analyze a closed-loop feedback control system, and end up with an equation of the form

Software Engineering/Mechatronics 3DX4. Slides 6: Stability

Übersetzungshilfe / Translation aid (English) To be returned at the end of the exam!

Lifted approach to ILC/Repetitive Control

Lecture: Sampling. Automatic Control 2. Sampling. Prof. Alberto Bemporad. University of Trento. Academic year

ECE317 : Feedback and Control

Classify a transfer function to see which order or ramp it can follow and with which expected error.

A FEEDBACK STRUCTURE WITH HIGHER ORDER DERIVATIVES IN REGULATOR. Ryszard Gessing

Pole Placement Design

Control Systems I. Lecture 4: Diagonalization, Modal Analysis, Intro to Feedback. Readings: Emilio Frazzoli

Topic # /31 Feedback Control Systems

Optimal Polynomial Control for Discrete-Time Systems

Note. Design via State Space

Transcription:

Internal Model Principle If the reference signal, or disturbance d(t) satisfy some differential equation: e.g. d n d dt n d(t)+γ n d d 1 dt n d 1 d(t)+...γ d 1 dt d(t)+γ 0d(t) =0 d n d 1 then, taking Laplace transform, [ s n d + γ nd 1s nd 1 ] +...+ γ }{{ 0 D(s) =f(0,s) } Γ d (s) where f(0,s) is a polynomial in s arises because of initial conditions, d(0), d(0), d(0) etc. We call Γ d (s) the disturbance generating polynomial. Example: d(t) =sin(ωt): Γ d (s) =(s 2 + ω 2 ). d(t) =d 0 a constant: Γ d (s) =s d(t) =e at : Γ d (s) =(s a). d(t) =d 0 + d 1 e at : Γ d (s) =s(s a). M.E. University of Minnesota 259

From the last example, we see that we can form disturbance generating polynomials for d(t) =α(t)+ β(t) by combining (multiplying) the disturbance generating polynomials for α(t) and β(t). The internal model principle says that if the input disturbance, d i (t), the output disturbance, d o (t), ora reference r(t) has Γ d (s) as the generating polynomial, then using a controller of the form: C(s) = P (s) Γ d (s) L(s) (51) in the standard one degree-of-freedom control architecture can asymptotically reject the effect of the disturbance and cause the output to track the reference. Note that only the generating polynomial is needed. The magnitude of the disturbances or of the reference is not needed. To see why IMP works, let the plant model be G o (s) = B o(s) A o (s) = b n 1 s n 1 + b n 2 s n 2 +...+ b 0 s n + a n 1 s n 1 + a n 2 s n 2 +...+ a 0. Assume that Γ d (s) is not a factor of B o (s). M.E. University of Minnesota 260

The sensitivity, input sensitivity, and complementary sensitivity functions of the closed loop system S o (s), S io (s) and T o (s) are given by: S o (s) = S io (s) = T o (s) = Γ d (s) L(s)A o (s) Γ d (s) L(s)A o (s)+p (s)b o (s) Γ d (s) L(s)B o (s) Γ d (s) L(s)A o (s)+p (s)b o (s) P (s)b o (s) Γ d (s) L(s)A o (s)+p (s)b o (s) Suppose that L(s) and P (s) have been chosen such that the closed loop characteristic equation A cl (s) =Γ d (s) L(s)A o (s)+p (s)b o (s) has roots that have negative real parts. The response of the system to the output disturbance d 0 (t) with generating polynomial Γ d (s) is: Y (s) =S o (s)d o (s) =S o (s) f(0,s) Γ d (s) = L(s)A o (s) f(0,s) A cl (s) The last equality is because of the cancellation of Γ d (s) term. Since A cl (s) is assumed to have stable roots, M.E. University of Minnesota 261

the inverse Laplace transform of Y (s) converges to 0. Thus, y(t )=0. Similarly with input disturbance, d i (t), Y (s) =S io (s)d i (s) = L(s)B o (s) f(0,s) A cl (s) so that y(t )=0. Finally for a reference r(t) with Γ d (s) as its generating polynomial. Let e(t) =r(t) y(t). E(s) =(1 T o (s)) f(0,s) Γ d (s) = S o(s) f(0,s) Γ d (s) so that e(t )=0and y(t) r(t). Therefore, 1) in the presence of output or input disturbances (d o (t) or d i (t)), y(t) 0; and 2) in the presence of reference signal, y(t) r(t) whenever d o (t), d i (t) and r(t) have generating polynomial Γ d (s). The application of IMP is straightforward. However, we need to design L(s) and P (s) in the controller (51) so that the closed loop characteristic equation A cl (s) has stable roots. One way is by assigning the poles of A cl (s). M.E. University of Minnesota 262

Pole placement Problem Plant: Strcitly proper and of order n G o (s) = B o(s) A o (s) B o (s) =b n 1 s n 1 + b n 2 s n 2 +...+ b 1 s + b 0 A o (s) =s n + a n 1 s n 1 +...+ a 1 s + a 0 Controller: Proper and of degree (i.e. order) n l C(s) = P (s) L(s) P (s) =p nl s n l + p nl 1s n 1 +...+ p 1 s + p 0 L(s) =s n l + l nl 1s n 1 +...+ l 1 s + l 0 We assume that L(s) and A o (s) are monic (i.e. the leading coefficients are 1). M.E. University of Minnesota 263

The closed loop characteristic polynomial is of degree n cl = n + n l A cl (s) =A o (s)l(s)+b o (s)p (s) = s n+n l + γ n+nl 1s n+n l 1 +...+ γ 0 Question: Under what circumstance can we use C(s) to assign the roots of A cl (s) (i.e. the poles of the closed loop system)? Theorem: (Pole placement) If A o (s) and B o (s) have no common factors (co-prime), then using a controller of order n l = n 1 can be used to assign the n c = n l + n-th order closed loop characteristic polynomial A cl (s) arbitrarily. Thus, in order for roots of A cl (s) to be arbitrarily assignable, we need at least n cl =2n 1. Idea of proof: Count the number of parameters The number of free coefficients in L(s) and P (s) available is: n l + n l +1=2n l +1. The number of equations that need to be solved equals number of assignable coefficients in A cl (s). M.E. University of Minnesota 264

Since leading coefficient in A cl (s) is always 1, there are n cl = n l + n coefficients to assign. For problem to be solvable, number of free parameters number of equations 2n l +1 n l + n n l n 1 or n cl = n + n l 2n 1. Notice that coefficients in L(s) and P (s) enter into coefficient is A cl (s) linearly. In the case n l = n 1, then matrix that relate the coefficients of L(s) and P (s) to the coefficients of A cl (s) is related to the Sylvester matrix (see Goodwin 7.2) which is nonsingular when A o (s) and B o (s) are co-prime. Typically, if n l is greater than what is stated in the Theorem, A cl (s) is still assignable, but the solution is not unique. Example: G o (s) =1/s and C(s) = p 1s+p 0 s+l 0. A cl (s) =s 2 +(p 1 + l 0 )s + p 0 The roots of A cl (s) can be assigned arbitrarily, but L(s) and P (s) are not unique. M.E. University of Minnesota 265

Pole Assignment for IMP For solving the IMP problem, C(s) has an additional constraint: C(s) = P (s) Γ d (s) L(s) where the disturbance generating polynomial Γ d (s) is monic and of order n d. To make sure that the controller is implementable, C(s) must be proper, we ensure that the degree (or order) of P (s) is at most the degree of L(s)Γ d (s). L(s) =s n l + l nl 1s n 1 +...+ l 1 s + l 0 P (s) =p nl +n d s n l+n d + p nl +d 1s n l+n d 1 +...+ p 1 s + p 0. Note: n l here denotes the degree of L(s). The total degree of the controller is n l + n d. The closed loop characteristic polynomial A cl (s) will be of order n cl = n l + n d + n: A cl (s) =A o (s) L(s)Γ d (s)+b o (s)p (s) M.E. University of Minnesota 266

Question: When is the roots of A cl (s) arbitrarily assignable with the IMP constraint? Theorem: (Pole placement for IMP) Let Γ d (s) be a n d degree disturbance generating polynomial. Assume that A o (s) and B o (s), nor Γ d (s) and B o (s) has common factors and A o (s) is of degree n. Then, using an IMP controller of the form: C(s) = P (s) L(s)Γ d (s) where L(s) is of the order n l = n 1, P (s) is of degree n l + n d can be used to assign the n cl = n l + n d + n =2n + n d 1-th order closed loop characteristics polynomial A cl (s) arbitrarily. Thus, in order for roots of A cl (s) to be arbitrarily assignable, n cl =2n + n d 1. Idea of Proof: Number of free parameters is n l + n d +1 (from P (s)) plusn l (from L(s)), i.e. 2n l +n d +1 in total. Number of coefficients in A cl (s) is n l + n d + n. M.E. University of Minnesota 267

So, we need 2n l + n d +1 n l + n d + n. This gives the condition, n l n 1. Total degree of A cl (s) is n c = n l + n + n d, so it must be at least n c 2n + n d 1. In particular, n cl =2n + n d 1 will work. Typically, if n l is greater than what is stated in the Theorems, the solution is not unique. M.E. University of Minnesota 268

Internal model principle in states space We develop IMP based control concepts in the states space formulation. There are two methods: disturbance estimate feedback output filtering Disturbance Exo-system: Suppose that disturbance d(t) is unknown, but we know that it satisfies some differential equation. This implies that d(t) is generated by an exo-system: Since, ẋ d = A d x d d = C d x d D(s) =C d (si A d ) 1 x d (0) = C d Adj(sI A d ) det(si A d ) x d(0) where x d (0) is the inital value of x d (t = 0). Thus, the disturbance generating polynomial is nothing but the characteristic polynomial of A d, Γ d (s) =det(si A d ) M.E. University of Minnesota 269

For example, if d(t) =d 0 + αsin(ωt + φ), = 0 1 0 ω 2 0 0 x d1 x d2 0 0 0 ẋd1ẋ d2 ẋ d3 x d3 d = x d1 + x d3 The characeteristic polynomial, as expected, is: Γ d (s) =det(si A d )=s(s 2 + ω 2 ) M.E. University of Minnesota 270

Method 1: Disturbance-estimate feedback Suppose that disturbance enters a state space system: ẋ = Ax + B(u + d) y = Cx If we knew d(t) then an obvious control is: u = d + v Kx where K is the state feedback gain. However, d(t) is generally unknown. Thus, we estimate it using an observer. First, augment the plant model. ( ẋ ẋ d ) = y = ( C ( A BCd 0 A d )( x x d ) 0 )( x x d ) + ( B 0 ) u Notice that the augmented system is not controllable from u. Nevertheless, if d has effect on y, it is observable from y. M.E. University of Minnesota 271

Thus, we can design an observer for the augmented system, and use the observer state for feedback: ) d dt( ˆxˆx d = ( A BCd 0 A d )( ˆxˆx d ) + ( B 0 ) u + ( L1 L 2 ) (y C ˆx) u = C }{{ dˆx } d +v K ˆx = v ( ) ( ) ˆx K C d ˆx d ˆd where L = [L T 1,L T 2 ] T is the observer gain. The controller can be simplified to be: ) d dt( ˆxˆx d = ( )( ) A BK L1 C 0 L 2 C A d ˆxˆx d u = ( K C d ) ( ˆx ˆx d ) ( )( ) B L1 v 0 L 2 y + v The y(t) u(t) controller transfer function C yu (s) has eigenvalues of A BK L 1 C and of A d as poles. To see this, notice that the transfer function of the M.E. University of Minnesota 272

controller from y u is: C yu (s) = ( ) ( ) 1 ( ) si A + BK + LC 0 L1 K Cd L 2 C si A d L 2 And the determinant of the block lower triangular matrix is: det(si A + BK + LC)det(sI A d ) =det(si A + BK + LC)Γ d (s) Hence, the controller C yu (s) has Γ d (s) in its denominator. This is exactly the Internal Model Principle. M.E. University of Minnesota 273

Method 2: Augmenting plant dynamics by filtering the output In this case, the goal is to introduce the disturbance generating polynomial into the controller dynamics by filtering the output y(t). Let ẋ d = A d x d, d = C d x d be the disturbance exosystem. Nominal plant ẋ = Ax + Bu + Bd y = Cx Output filter: ẋ a = A d x a + C T d y Stabilize the augmented system using (observer) state feedback: ( ˆx u = [K o K a ] xa) where ˆx is the observer estimate of the original plant itself. ˆx = Aˆx + Bu + L(y C ˆx). M.E. University of Minnesota 274

Notice that x a need not be estimated since it is generated by the controller itself! The transfer function of the controller is: C(s) = ( Ko K a ) ( si A + BK + LC BK 0 si A d ) 1( L C T d from which it is clear that its denominator has Γ d (s) = det(si A d ) in it. i.e. the Internal Model Principle. The following is an intuitive way of understanding how the output filtering approach works. For concreteness, assume that the disturbance d(t) is a sinuosoid with frequency ω. ) Suppose that the closed loop system is stable. This means that for any bounded input, any internal signals will also be bounded. For the sake of contradiction, if some residual sinuoidal response in y(t) still remains, then Y (s) is of the form: α(s, 0) Y (s) = s 2 + ω 2 M.E. University of Minnesota 275

The augmented state is the filtered version of Y (s), X a (s) = β(s, 0) (s 2 + ω) 2 for some polynomial β(0,s). The time response of x a (t) is of the form x a (t) =γsin(ωt + φ 1 )+δ t sin(ωt + φ 2 ). The second term will be unbounded. In general, for other types of disturbances, system output y(t) will have the same mode as specified by Γ d (s). By filtering the output by a filter with Γ d (s) in its denominator, one would always have Γ d (s) 2 in the denominator. This leads to t term. Since the Laplace transform relationship is: L(f(t)) = F (s) L(tf(t)) = d ds F (s) For example, 1 (s + a) 2 = d ds ( ) ( ) 1 L 1 1 s + a (s + a) 2 = te at M.E. University of Minnesota 276

For the sinusoidal case, a = jω. te at. In this case, Since d(t) is a bounded sinuosoidal signal, x a (t) must also be bounded. This must mean that y(t) does not contain sinuosoidal components with frequency ω. The most usual case concerns combating constant disturbances using integral control. In this case, the augmented state is: x a (t) = t 0 y(τ)dτ. It is clear that if the output converges to some steady value, y(t) y, y must be 0. Or otherwise x a (t) will be unbounded. M.E. University of Minnesota 277

State space formulation of discrete time repetitive control The goal of repetitive control is to eliminate the effect of periodic disturbance or to track a periodic reference input. The mentality if that of learning the disturbance or the required control signal that cancels it. In implementation, it is basically an IMP controller. Consider periodic discrete time disturbance, d(k N) =d(k) where N is the period. We can formulate a disturbance generating exo-system: x d1 0 1 0 0... x d1 x d2 0 0 1 0... x d2 x d3 (k + 1) =.... 0 x d3. 0... 0... 1. (k) 1 0... 0 0 x dn d(k) =x d1 (k). x dn This can be written as x d (k + 1) = A d x d (k) d(k) =C d x d (k) M.E. University of Minnesota 278

If the plant to be controlled is: e(k + 1) = Ae(k) +B(u(k) +d(k)) y(k) =Ce(k) We proceed just like the disturbance-estimate feedback approach to IMP. A control strategy would be: u(k) = Ke(k) ˆd(k) where ˆd(k) is the estimate of d(k) obtained using an observer: ( ê ˆx d ) (k + 1) = ( ) ( A BCd (k + 1) + 0 A }{{ d ˆxˆxd) } A com L(Cê(k) y(k)) ˆd(k) =C dˆx d (k) ( B 0 ) u(k) where L is the observer gain chosen such that all the eigenvalues of A com LC have absolute values less than 1. i.e. the eigenvalues should lie within the unit disk centered at the origin. This is the stability criterion for discrete time systems. M.E. University of Minnesota 279

A difficulty in this approach is that N, the dimension of x d (k) is typically very large. The dimension, N is the ratio of period of the periodic disturbance to the sampling time. This makes designing a stable observer difficult. M.E. University of Minnesota 280

Polynomial Approach to Repetitive Control Here we consider a polynomial (transfer function) approach to solving the repetitive control problem. The approach is to utilize the Internal Model Principle and design a discrete time controller that contains the generating polynomial for the discrete time disturbance in the denominator. First we discuss the transfer function representation for discrete time system.... M.E. University of Minnesota 281

Discrete Time Transfer Functions Let u(k) be a discrete time sequence, i.e. the sequence u(0), u(1), u(2),... The shift or the delay operator is denoted by q 1. y(k) =q 1 [u(k)] denotes the 1 step delay version of the sequence u(k), i.e.y(k) =u(k 1) for any k 0. A discrete time system can be described by a difference equation: y(k)+a 1 y(k 1) + a 2 y(k 2) +...a n y(k n) =b 0 u(k δ)+b 1 u(k δ 1) +...b m u(k δ m), so that the response at time index k, y(k) is a function of previous output as well as present (if the relative degree (or delay) δ =0) and past inputs. Using the shift operator notation, the system can be written as: ( 1+a1 q 1 + a 2 q 2 +...a n q n) [y(k)] =q δ ( b 0 + b 1 q 1 +...+ b m q m) [u(k)] M.E. University of Minnesota 282

We can define the transfer function G o (q 1 )= B o(q 1 ) A o (q 1 ) = q δ ( b 0 + b 1 q 1 +...+ b m q m) (1 + a 1 q 1 + a 2 q 2 +...a n q n ) to represent the difference equation. Sometimes, the delay (or relative degree term) q δ is factored out of B o (q 1 ) to make the structure more clear. M.E. University of Minnesota 283

Stability of discrete time transfer function If we factor A o (q 1 ) into A o (q 1 )=(1 α 1 q 1 )(1 α 2 q 1 )...(1 α n q 1 ) then q = α i are the roots of the A o (q 1 ). Notice that α i can be in complex conjugate pairs. Then, we say that A o (q 1 ) is stable if all α i < 1. To see why stability is related to the roots of A o (q 1 ) this way, consider the zero input response, e(k), of the system (i.e. no input): A o (q 1 )[e(k)] = 0 If input is considered, then the RHS will have present and past inputs u(k), u(k 1) etc. in it. Now factor A o (q 1 ) into: A o (q 1 )[e(k)] = ( (1 α 1 q 1 )Π n i=2(1 α i q 1 ) ) [e(k)] = 0 Let Then, g 1 (k) :=Π n i=2(1 α i q 1 )[e(k)] (1 α 1 q 1 )[g 1 (k)] = 0 g 1 (k + 1) = α 1 g 1 (k). M.E. University of Minnesota 284

Now for m =2,...,n 1. g m (k) :=Π n i=m+1(1 α i q 1 )[e(k)] so that (1 α m q 1 )[g m (k)] = g m 1 (k), i.e. g m (k + 1) = α m g m (k)+g m 1 (k + 1) Thus, e(k) =g n (k). We can rewrite this in state-space form: g 1 α 1 0 0... g 1 g 2 g 3. (k+1) = α 1 α 2 0 0... g 2 α 1 α 2 α 3 0... g 3... 0. (k). g n α 1 α 2... α n 1 α n g n So that g 1 g 2 g 3. g n (k+1) = k α 1 0 0... α 1 α 2 0 0... α 1 α 2 α 3 0...... 0 α 1 α 2... α n 1 α n g 1 g 2 g 3. g n (0). Notice that the eigen values of this system are α i, i =1,...,n. So that if α i < 1 for all i, wehave g i (k) 0 as k 0. M.E. University of Minnesota 285

Hence α i, i =1,...,n, the magnitude of the roots of A o (q 1 )=Π n i=1 (1 α iq 1 ), determine the stability of the transfer function. M.E. University of Minnesota 286

Periodic Disturbance and IMP If a discrete time disturbance d(k) satisfies: d(k)+γ 1 d(k 1) +...+ γ N d(k N) =0 we have (1 +γ 1 q 1 +...+γ N q N )[d(k)] = 0. Wecall Γ d (q 1 ):=(1+γ 1 q 1 +...+ γ N q N ) the disturbance generating polynomial for d(k). In the case of a N periodic disturbance, we have d(k N) =d(k). So, d(k) satisfies: q N [d(k)] = d(k), (1 q N )[d(k)] = 0. The periodic disturbance generating polynomial is therefore: Γ d (q 1 )=1 q N. IMP in the discrete time domain works the same way as in the continuous time. Specifically, if the controller is of the form C(q 1 )= P (q 1 ) Γ d (q 1 ) L(q 1 ) M.E. University of Minnesota 287

The closed loop characteristic polynomial is A cl (q 1 )=Γ d (q 1 ) L(q 1 )A o (q 1 )+P (q 1 )B o (q 1 ). Then, the sensitivities are: S o (q 1 )= Γ d(q 1 ) L(q 1 )A o (q 1 ) A cl (q 1 ) S io (q 1 )= Γ d(q 1 ) L(q 1 )B o (q 1 ) A cl (q 1 ) T o (q 1 )= P (q 1 )B o (q 1 ) A cl (q 1 ) In the case of output disturbance, the response is y(k) =S o (q 1 )d(k). A cl (q 1 )[y(k)] = L(q 1 )A o (q 1 )Γ d (q 1 )d(k) =( L(q 1 )A o (q 1 ))[Γ d (q 1 )[d(k)]] = 0. If A cl (q 1 ) is designed so that it is stable, y(k) 0 as k. M.E. University of Minnesota 288

Similarly for input disturbance, y(k) =S io (q 1 )d i (k) A cl (q 1 )[y(k)] = L(q 1 )B o (q 1 )[Γ d (q 1 )d(k)] = 0. Hence, y(k) 0. In the presence of a reference r(k), y(k) =T o (q 1 )[r(k)] = r(k) S o (q 1 )[r(k)]. Since S o (q 1 )[r(k)] 0, wehavey(k) r(k). M.E. University of Minnesota 289

Prototype Repetitive Controller Since the disturbance generating polynomial is of very high order, it is difficult to assign the poles of the closed loop system. The prototype repetitive controller which is of very simple structure is therefore proposed. For simplicity, we assume that A o (q 1 ) and B o (q 1 ) in G o (q 1 ) have roots within the unit disk (stable and minimum phase). C(q 1 )= k rg 1 o (q 1 )q N A o (q 1 )q δ N 1 q N = k r B o (q 1 )(1 q N ) Notice that C(q 1 ) consists of inverting the plant G o (q 1 ), incorporating 1 q N and in the denominator (IMP), in delaying the control by one cycle q N. Since N is typically much larger than the excess degree of G o (q 1 ), C(q 1 ) will be proper. M.E. University of Minnesota 290

With periodic (output) disturbance (input disturbance / reference cases are similar), we have: A cl (q 1 )[e(k)] = (1 q N )d(k) =0 0 = ( (1 q N )+k r q N) [e(k)] 0 =(1 (1 k r )q N )[e(k)] e(k) =(1 k r )e(k N). Let λ := (1 k r ).If0 <k r < 2, then λ < 1. Forany k 0, we can write k = n+in where 0 n N 1, and i 0 is an integer. We then have e(k) =e(n + in) =λ i e(n) 0. Remarks: In the case when A o (q 1 ) has unstable roots, the system can be stabilized first. If B o (q 1 ) has unstable factors, these should not be cancelled (else internal instability). The repetitive controller needs to be modified by doing a zero phase compensation and by modification of the gain. See (Tomizuka, Tsao, Chew 1989) paper for details. M.E. University of Minnesota 291

Having exactly 1 q N as the generating polynomial may present some robustness problems, since this implies the controller has very high gain at all harmonics of the disturbance frequency. One idea is to limit the bandwidth by modifying 1 q N to 1 Q(q, q 1 )q N where Q(q, q 1 ) is a unity gain zero phase filter (known as Q-filter). For example, Q(q, q 1 )=0.1q 2 +0.15q +0.5+0.15q 1 +0.1q 2 This smoothes out the generating polynomial and has the effect of reducing the gain at high order harmonics. Normally, if 1 q N the sensitivity function S o (q 1 ) will have 1 q N in its denominator. The sensitivity becomes vanish at q = e jωt s,forω are harmonics of the fundamental: ω fund = 2π NT s where T s is the sampling period. Using the Q-filter, if Q(q, q 1 ) is low pass, the sensitivity is small only at the 1st few harmonics. High frequency harmonics are ignored to preserve robustness. M.E. University of Minnesota 292

Repetitive Control and IMP Example Consider a plant given by: ẋ = u e = x + d(t) d(t) =d(t 2) is a periodic disturbance of period 2 given by: d(t) =0.5 sin(ωt)+0.3cos(2ωt)+d 1 (t) whereω = 2π/2 is the fundamental frequency, d1(t 2) is a random, piecewise constant (with sampling period T s =0.02s) periodic distrbance between ±0.1. We develop 3 controllers: IMP based continuous time controller that compensates for the fundamental and harmonics. A discrete time repetitive controller based on disturbance estimate cancellation using an observer. A Prototype Repetitive Controller. M.E. University of Minnesota 293

The latter two will be based on discrete time formulation with sampling time of T s =0.02s. Continuous time IMC The continuous time IMC Controller that takes care of the fundamental and 1st harmonics: C(s) = p 4s 4 + p 3 s 3 + p 2 s 2 + p 1 s + p 0 (s 2 + ω 2 )(s 2 +4ω 2 ) Coefficients are chosen such that closed loop poles are at 1. To develop the repetitive controller, we discretize the system using sampling period of T s =0.02. Discrete time Repetitive Control The time discretized system is: e(k + 1) = e(k)+t s (u(k)+ d(k)) where d(k) = 1 T s [d(k+1) d(k)]. We assume that d(k) is generated by a disturbance generating exo-system, x d (k + 1) = A d x d (k), d(k) =C d x d (k). M.E. University of Minnesota 294

We consider the repetitive control law using the disturbance cancellation method: u(k) = ˆ d(k) 0.1e(k). The disturbance observer is designed to be: ( ê ˆx d ) (k + 1) = L(ê e) ( )( ) 1 Ts C d ê (k)+ 0 A d ˆx d ( ) Ts u(k) 0 where L is chosen using the LQ design method via Matlab. >> [K, S, E] = lqr(a, C, Q, R); >> L = K ; where Q is a positive definite matrix (e.g. identity) with dimension of (e, x T d ),andr(small scalar) is of the dimension of e. This ensures that A LC is stable. Prototype Repetitive Controller To design the prototype repetitive control law, the transfer function of the plant is: G o (q 1 )= T sq 1 1 q 1 M.E. University of Minnesota 295

i.e. B(q 1 )=T s, δ =1, and A o (q 1 )=1 q 1. Therefore, prototype repetitive control law is: C(q 1 )= k r q (N 1) (1 q 1 ) T s 1 q N = k r q (N 1) q (N 2) T s 1 q N The control action is given by: (1 q N )[u(k)] = k r T s (q (N 1) q (N 2) )[ e(k)] Hence, u(k) =u(k N) k r T s (e(k +1 N) e(k +2 N)). Notice that the control action is based on modifying the previous control input by the error in the previous cycle. Hence, the control is being learned. The SIMULINK diagram is shown below: M.E. University of Minnesota 296

repetall Signal Generator Signal Generator1 Scope1??? Repeating Sequence2 Zero Order Hold1 0 Constant1 Cnum(s) Cden(s) Transfer Fcn 1 s Integrator1 0 Constant y(n)=cx(n)+du(n) x(n+1)=ax(n)+bu(n) Discrete State Space1 1 s Integrator2 Scope3 1/Ts*[1 1] den(z) Discrete Transfer Fcn 1 s Integrator Scope5 learn To Workspace /h/pli/repetall.mdl printed 08 Nov 2002 09:00 page 1/1 The error shown is below. M.E. University of Minnesota 297

2 1 0 1 2 3 2 4 6 8 10 12 14 16 18 20 Time offset: 0 Error using IMC, state-space type repetitive control and prototype repetitive control Notice that both repetitive controllers are able to make the error to completely vanish, whereas the random part of the error passes straight through the IMC unattenuated. With k r =1in the prototype repetitive control, the control action is learned in 1 cycle. Thus, M.E. University of Minnesota 298

the error converges pretty much after the 1st cycle. 10 5 0 5 Control Signal IMC 10 7 8 9 10 11 12 13 14 15 16 Control Signal StateSpace Repetitive 50 0 50 7 8 9 10 11 12 13 14 15 16 Control Signal Prototype Repetitive 50 0 50 7 8 9 10 11 12 13 14 15 16 Time s Control action using IMC, state-space type repetitive control and prototype repetitive control are shown above. Notice from the control actions that all three cases learn a periodic control action, with the IMC mainly having the fundamental and harmonics. The learned control action by both the repetitive controllers are similar. M.E. University of Minnesota 299