Iterative Learning Control for Tailor Rolled Blanks Zhengyang Lu DCT

Similar documents
Lifted approach to ILC/Repetitive Control

ECE3510 Lab #5 PID Control

-MASTER THESIS- ADVANCED ACTIVE POWER AND FREQUENCY CONTROL OF WIND POWER PLANTS

(Refer Slide Time: 00:01:30 min)

ME 132, Dynamic Systems and Feedback. Class Notes. Spring Instructor: Prof. A Packard

Influence of the gap and the friction on trajectory reproduction accuracy in a multiaxis machine with CNC

A successful application of an intelligent hybrid controller for feed drive control of CNC Machine tool

Iterative Learning Control (ILC)

Lecture XXVI. Morris Swartz Dept. of Physics and Astronomy Johns Hopkins University November 5, 2003

Chapter 12. Feedback Control Characteristics of Feedback Systems

ECE 5670/ Lab 3. PID Control of a Brush DC Motor. Objectives

Coupled Drive Apparatus Modelling and Simulation

magnitude [db] phase [deg] frequency [Hz] feedforward motor load -

CHAPTER 8 SCREWS, FASTENERS, NONPERMANENT JOINTS

YTÜ Mechanical Engineering Department

CHV Series Vector Control Inverter Options. Operating Instructions for Tension Control Card

Acceleration Feedback

Hot rolling multivariable model verification and QFT robust looper control

Tribology Prof. Dr. Harish Hirani Department of Mechanical Engineering Indian Institute of Technology, Delhi

SRV02-Series Rotary Experiment # 1. Position Control. Student Handout

GAIN SCHEDULING CONTROL WITH MULTI-LOOP PID FOR 2- DOF ARM ROBOT TRAJECTORY CONTROL

3.1 Overview 3.2 Process and control-loop interactions

Performance Assessment of Power Plant Main Steam Temperature Control System based on ADRC Control

06 Feedback Control System Characteristics The role of error signals to characterize feedback control system performance.

Chapter 4. Oscillatory Motion. 4.1 The Important Stuff Simple Harmonic Motion

THE paper deals with the application of ILC-methods to

REDUCING PROCESS VARIABLITY BY USING FASTER RESPONDING FLOWMETERS IN FLOW CONTROL

CHAPTER 15: FEEDFORWARD CONTROL

Video 5.1 Vijay Kumar and Ani Hsieh

B1-1. Closed-loop control. Chapter 1. Fundamentals of closed-loop control technology. Festo Didactic Process Control System

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

Application Note #3413

OPTIMAL SELECTION OF MACHINE PARAMETERS IN TENSION LEVELLING OF SHEET METALS

Product description. Compact Modules. Characteristic features. Further highlights

Robotics & Automation. Lecture 25. Dynamics of Constrained Systems, Dynamic Control. John T. Wen. April 26, 2007

For the electronic measurement of current: DC, AC, pulsed..., with galvanic separation between the primary and the secondary circuit.

ECE 5670/6670 Lab 8. Torque Curves of Induction Motors. Objectives

Control System Design

Trajectory Planning, Setpoint Generation and Feedforward for Motion Systems

COILER CONTROL IN ENDLESS HOT STRIP ROLLING. T. Motomura, K. Ueda, T. Imazeki, Y. Fukui, K. Yahiro

University of Utah Electrical & Computer Engineering Department ECE 3510 Lab 9 Inverted Pendulum

STATIC AND DYNAMIC RECURSIVE LEAST SQUARES

FEEDBACK CONTROL SYSTEMS

PID Control. Objectives

ADAPTIVE INVERSE CONTROL BASED ON NONLINEAR ADAPTIVE FILTERING. Information Systems Lab., EE Dep., Stanford University

Angular Momentum. Brown University Physics 0030 Physics Department Lab 4

Development of Laser Thickness Gauge in Steel Plate Shearing Line

Time-Varying Systems and Computations Lecture 3

Gain Scheduling Control with Multi-loop PID for 2-DOF Arm Robot Trajectory Control

Transmission Efficiency Analysis and Experiment Research of Gear Box Jing LI1, Chang-Chun LI1,a and Jing HUANG1

BioMechanics and BioMaterials Lab (BME 541) Experiment #5 Mechanical Prosperities of Biomaterials Tensile Test

Problem Set III Solutions

2.830J / 6.780J / ESD.63J Control of Manufacturing Processes (SMA 6303)

Acceleration due to Gravity

Investigation of Steering Feedback Control Strategies for Steer-by-Wire Concept

LABORATORY 4: ROTATIONAL MOTION PLAYGROUND DYNAMICS: THE MERRY-GO-ROUND Written May-June 1993 by Melissa Wafer '95

YTÜ Mechanical Engineering Department

Mechatronics Engineering. Li Wen

FERMENTATION BATCH PROCESS MONITORING BY STEP-BY-STEP ADAPTIVE MPCA. Ning He, Lei Xie, Shu-qing Wang, Jian-ming Zhang

Lab 3: Quanser Hardware and Proportional Control

A B C D. Unit 6 (1-Dimensional Motion) Practice Assessment

SRV02-Series Rotary Experiment # 7. Rotary Inverted Pendulum. Student Handout

Lecture 7 LQG Design. Linear Quadratic Gaussian regulator Control-estimation duality SRL for optimal estimator Example of LQG design for MIMO plant

Regulating Web Tension in Tape Systems with Time-varying Radii

Temperature Control of an External Cleaning Unit

MASSACHUSETTS INSTITUTE OF TECHNOLOGY Department of Mechanical Engineering 2.04A Systems and Controls Spring 2013

Control Systems Theory and Applications for Linear Repetitive Processes

DO NOT DO HOMEWORK UNTIL IT IS ASSIGNED. THE ASSIGNMENTS MAY CHANGE UNTIL ANNOUNCED.

Standard Practices for Air Speed Calibration Testing

Control of MIMO processes. 1. Introduction. Control of MIMO processes. Control of Multiple-Input, Multiple Output (MIMO) Processes

Analyzing Control Problems and Improving Control Loop Performance

Robust Controller Design for Speed Control of an Indirect Field Oriented Induction Machine Drive

Acknowledgements. Control System. Tracking. CS122A: Embedded System Design 4/24/2007. A Simple Introduction to Embedded Control Systems (PID Control)

Calibration Routine. Store in HDD. Switch "Program Control" Ref 1/ Ref 2 Manual Automatic

QFT Framework for Robust Tuning of Power System Stabilizers

EXPERIMENT 2 Acceleration of Gravity

Research on the winding control system in winding vacuum coater

EE 422G - Signals and Systems Laboratory

Sunita.Ch 1, M.V.Srikanth 2 1, 2 Department of Electrical and Electronics, Shri Vishnu engineering college for women, India

Chap. 3 Laplace Transforms and Applications

DC-motor PID control

Portable Friction Meter HEIDON Tribo Gear μs Type 94i-Ⅱ. Operating Manual

(Refer Slide Time 03:12)

Cosc 3451 Signals and Systems. What is a system? Systems Terminology and Properties of Systems

Acceleration due to Gravity

Linear Control Systems

LIAPUNOV S STABILITY THEORY-BASED MODEL REFERENCE ADAPTIVE CONTROL FOR DC MOTOR

Simple Learning Control Made Practical by Zero-Phase Filtering: Applications to Robotics

Application of Neuro Fuzzy Reduced Order Observer in Magnetic Bearing Systems

(Refer Slide Time: 1: 19)

Continuous Manufacturing of Pharmaceuticals: Scale-up of a Hot Melt Extrusion Process

RGS08 Linear Rails: RGS08 Non-Motorized With and Without Guide Screw. RGS08 Non-Motorized Linear Rails

Experiment # 5 5. Coupled Water Tanks

Control & Response Selection

Lecture 14 October 22

TCS SERVO SYSTEM: Mechanical Modeling

Dynamics of High-modulus Belts with Distributed Mass and Friction

Jerk derivative feedforward control for motion systems

COMPOSITE REPRESENTATION OF BOND GRAPHS AND BLOCK DIAGRAMS FOR CONTROLLED SYSTEMS

General procedure for formulation of robot dynamics STEP 1 STEP 3. Module 9 : Robot Dynamics & controls

Transcription:

Iterative Learning Control for Tailor Rolled Blans Zhengyang Lu DCT 2007.066 Master Internship Report Supervisors: Prof. Maarten Steinbuch (TU/e) Camile Hol (Corus) Eindhoven University of Technology Department of Mechanical Engineering Control System Technology Eindhoven, July, 2006

Contents 1. Introduction--------------------------------------------2 2. Simulation Model------------------------------------4 3. Iterative Learning control--------------------------6 4. Simulations-------------------------------------------10 4.1 Refined adaptation Law----------------------------------11 4.2 Torque Adaptation-----------------------------------------15 4.3 Length Uncertainty----------------------------------------17 5. Conclusion-------------------------------------------19 6. References------------------------------------------20-1 -

1. Introduction Tailor Rolled blans, which are introduced in the car manufacturing industry, are rolled steel production with varying thicness. Great flexibility in this design is offered by TRB, because the thicness and hence the strength of the components are locally increased. In addition, it helps to reduce the overall weight of the components. The rolling of TRB: after de-coiled, the strip enters the rolling machine. It is rolled by the woring roll, which is connected to the motor by the bac rolls. The screw position is controlled to mae the exit strip have varying thicness. After that, the strip will be coiled. Since the same blan is rolled subsequently many times, the process is repetitive in nature. By applying iterative learning control, we can benefit from this repetitive nature. A typical specification is a thicness transition from 2 to 1.5 mm with a tolerance on the thicness of 50 µ m. A plot of the TRB profile is given in next page. Figure 1. Rolling process - 2 -

In this proect, first, it is investigated if iterative learning control can be applied to reduce the thicness error in TRB. Since the relation between thicness and length is very important, the ILC is scheduled on length basis rather than a time basis. Second, Torque adaptation is applied aiming to get a relative constant rolling speed, thus a better process condition. Last but not least, the length uncertainty is analyzed, and a suitable level of uncertainty is implemented in the simulation model, to investigate if the system is robust enough for the uncertainty. 3 Profile of TRB 2.9 2.8 2.7 2.6 2.5 2.4 2.3 2.2 2.1 2 0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 Figure 2. Profile of TRB The figure above indicates that the length of each blan is 0.4 m, while the thicness varies from 3 mm to 2 mm. - 3 -

2. Simulation model To test a real-time control design a model of the system to be controlled is needed. The model comprises the basic relevant input and output signals with the static and dynamic behavior sufficient to test the designed controller before its real-time implementation. The main part of the model is the screw position controller, the mill, and the deformation module next to the mechanical dynamics of the stand drive. These will be explained in more details below. In the following paragraph, a basic introduction to the offline simulation model is given. Reference signal PI controller S reference Mill Strech Screw Position Corus Deformation Model Screw Position The MIll CMDeformation Figure 3. Offline Simulation Model This basic layout shows how the model is constructed: the physical interaction between different subsystems is clearly showed. The model consists of three blocs: named Controller, the Mill, and the Deformation boxes. The controller is a conventional PI controller to control the varying thicness of the blans by controlling the screw position, - 4 -

The Mill, which is regarded as the plant, represents all the dynamics of our system. The Corus Deformation Model is defined as an S-function in Matlab, and is a static mapping. It calculates the necessary roll force, resulting entry and exit speeds and rolling torque as a function of entry and exit thicness, entry and exit tension stress and wor roll speed as main input signals. - 5 -

3. Iterative Learning Control Iterative learning control is a method that has been developed from a practical environment, and there are many different ILC design techniques were developed. First of all, to mae the next paragraphs more understandable, the definition of two terminologies is given: the time period in which the system has to perform its repetitive tas is called a trial and each tas is called iteration. Convergence is obviously the most important issue of Iterative Learning Control. In iterative learning control, experience from previous iteration or repetition is used such that the ILC system will gradually learn the control action that will result in prefect tracing. One could use the information from previous iteration to generate a new input u for the current iteration (where is the iteration number), so that the tracing error will go to zero as the iteration numbers increase. However, in real industry, what we want is that the tracing error will be decreased to be smaller than required tolerance in an acceptable numbers of iterations or a period of time. Less numbers of iterations or time indicates that the iterative learning control is powerful and efficient, because it will decrease the number of unqualified products, which have to be thrown away or remanufactured. In other words, less number of iterations improves the production efficiency and lowers production cost. The basic woring principle of ILC that we have applied in for the Tailor Rolled Blans can be illustrated by the figure 4. - 6 -

Figure 4. Feedbac Loop and ILC Feedforward Loop In the figure above, the whole loop consists of two parts: the offline simulation model and the iterative learning controller. The offline simulation model, as we described before, is a PI controlled feedbac loop. Its input is the feedforward compensation, which comes from the output of the iterative learning controller. And its output, which comes from the CMDeformation, is the thicness of the exit strip. Because it is impossible to measure the thicness of the rolled strip instantly, a delayed measurement is executed. The output of the gauge measurement is the so called gauge meter -- -- the thicness of exit strip on length basis. When the gauge meter is compared with the reference signal, difference is obtained as the input of the iterative learning controller. The iterative learning controller comprises 3 parts: L filter, Q filter, and Memory, with error as its input and adaptation signal as output. L filter: it could be inverse of the plant (with input (error) and output (delta u)) at low frequency, because the dynamics of the plant at high frequency is difficult to obtain. The L filter has no influence on the steady state performance as long as it provides a stable ILC. The coefficient of L filter is the learning gain. Larger value of learning gain will fasten the convergence, but it will also amplify the error, so there is always a compromise between fast convergence and stability system. - 7 -

Q filter: it is the robustness filters to compensate for the influence of the model uncertainty at high frequency. A low pass (Butterworth) filter can be used. Memory: the memory is used to compute and store the future error of current trial, which will be used to compute the control action for the next trial. This means that the ILC is non-causal: the future inputs can influent the current output. However, our ILC algorithm can be described as below: U + 1( t + 1) = Q * U ( t) + f ( e f ( e ( t + 1)) = L * e ( t + 1); ( t + 1)) where L is α * averaging; Q is identity. α is learing gain; The ILC wors in this algorithm: As we have defined before, the time period in which the system has to perform its repetitive tas is called a trial and each tas is called iteration. In our case, time period is replaced by blan length, because the ILC is scheduled on a length basis. In each trial, U + 1 ( t + 1) = Q * U ( t) + f ( e ( t + 1)). The new control signal for a new trial is the sum of the control signal for previous trial with Q filter, and a function of future error of previous trial. The function is a multiplication of future error and L filter. And the error equals e = y ref y, which is the difference between the out reference and the actual output. Both the error and input are stored in the memory of the ILC, which will be used offline for calculating the new feedforward signal for the next iteration, according to user defined adaptation law. Briefly, ILC is an offline method, or better described as open-loop feedbac. It feeds bac information as much the same way as conventional methods do: e.g. the error, the position etc. In addition, as offline method, ILC allows noncausal operations: the future of past trials can tae part in the construction of the current control action. U 1 ( t) = U ( t ) + f ( e ( + 1)) + t where defines the trials, and t defines time. The picture below maybe better describes what future error of past trial is, the difference between ILC and conventional feedbac control. - 8 -

Figure 5. Difference between ILC and conventional feedbac control. - 9 -

4. Simulation First of all, we define the control framewor as below: Figure 6. An overview of control framewor In the figure, the part of red blocs is the offline model, as we have already introduced. Sref is the desired output, or reference signal. Gauge Measurement is where the thicness of the blans is measured. Because there is a distance between the wor rolls and the gauge meter measurement for gauge, we get a delayed measurement: the time delay is about 3.3 sec. it changes due to the fluctuation of the exit speed. - 10 -

4.1 Refined adaptation Law Remember that in ILC the learning law is: U ( t + 1) = Q * U ( t) + f ( e + 1 t + ( 1)) It can be redefined in our system lie: adapt adapt U ( + 1) = U ( ) α * e Where defines segment index; α is the learning gain In the algorithm below, the reference gauge of the horizontal segments are recursively adapted using the measured exit profile, which is illustrated in Figure 7. The x- and y- coordinates are the length and gauge respectively. The adaptation corrects the reference profile in the (+1)th blan using the measured gauge of the previous blan. The refined adaptation law in more clear way is as: h adapt adapt avg ref ( + 1) = h ( ) α ( h ( ) h ( )) α can be tuned for convergence speed. The gauge measurements within a segment are average, resulting in the gauge average h avg () given by: avg 1 h ( ) = h ( x ) dx. L L Where L is the length from the (th) sample point to the (+1)th sample point. There are 100 sample points on the three horizontal segments of each profile, and this adaptation law is only applied on horizontal parts. And this method of calculating h avg () is only used for the starting point of each horizontal segment. A new way of calculating () is defined for eliminating the phase shift. Phase h avg shift is the change in phase of a periodic signal with respect to the reference. In this system, the phase shift was introduced by the one direction average: average the measurement gauge from (th) sample point to (+1)th point, and tae this average value as the measured value for (th) sample point. - 11 -

h avg = ( L 1 1 + L ) L L 1 h ( x ) dx ; Here, each averaging starts from (-1)th sample point and ends at (+1)th point. The profile is corrected with these averages according the adaptation law, resulting in the green curve in figure 7. These adaptation gauge h adapt ( +1) are used to compute the screw position for the next (+1)st blan. Tae the second horizontal segment for example, the new adaptation (the green one) is larger than the old adaptation (the blue one), since the realized averaged gauge (the red one after averaging) was smaller than the reference. The reference for the second horizontal segment will therefore be increased, compared with it at previous blan, thus a smaller error is expected. This adaptation law is applied in length basis instead of time basis. The adaptation law is clearly showed with the help of figure 7. The Figure 7. Scheme of Profile Adaptation - 12 -

Stability Requirement The stability requirement that we get for this system is: Q L( PS) < 1 This stability requirement is obtained by applying Small Gain Theory. It is similarly applied in our control system as: Figure 9. Disconnected control system - 13 -

Simulation results: 3.5 measured gauge 3 2.5 2 1.5 1 0.5 after 5 trials after 15 trials after 5 trials after 25 trials 0 0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 Figure 10. Simulation results for measured gauge 0.05 error 0-0.05-0.1-0.15 after 20 trials after 30 trials -0.2 0 500 1000 1500 2000 2500 3000 3500 4000 4500 Figure 10. Simulation results for error The figures above clearly show that the ILC improves the performance of the system after trials: the gauge is getting close to the reference, and the error is getting smaller. The peas in the error figure are corresponding to the two slope parts of the profile, because there is no adaptation law applied. That means that they can not eliminate the repetitive disturbance, thus a relatively larger error here is reasonable. - 14 -

4.2 Torque adaptation The goal of the torque adaptation is to get a relatively constant rolling speed, thus a better rolling condition is obtained. By applying Newton s law (or better say torque balance ), the equation is made as below: I inertia V p = ( Tadapt + T ff ) + Rolling _ Torque; (1) Move the adaptation torque to the left side of the equation: T adapt = Rolling _ Torque T ff I inertia V p ; (2) T ff is the feedforward torque given by the feedforward controller as currently used in the TRB control system. It is a linear function of the reference screw position s as follow: ref Where TFF ( t) = ( K + C) sref ( t), for all t > 0; (3) K the scaling factor of each trial, and C is a constant offset. The gain for this feedforward signal was initially set to be K=20N/mm, later an adaptation law is applied to mae this value gradually converge to the optimal value, by looing at decreasing the maximum speed variation of trial after trial. The principle of the adaptation is: Initially the scaling factor is set K=20N/mm, which is obviously not large enough. In addition, we observe that by increasing this K, the maximum speed variation of each trial decreases, until K is increased to a certain value K optimal. Because K optimal is not exactly nown, the adaptation is used to mae the K increase to K optimal automatically, by comparing the maximum speed variation of trial -1 and trial. For example, if by applying K = ( 1+ β ) K 1, Vvar iation ( ) < Vvar iation ( 1) is obtained, K + 1 = (1 + β ) K will be applied for next trial. The K optimal is achieved when Vvar iation ( ) < Vvar iation ( 1) doesn t hold anymore. β is a user defined constant value to determine how much the scaling factor increases (how large the step is) for each trial and it can be tuned for faster or slower convergence to K. V var iation is the maximum speed variation of each trial. optimal - 15 -

After this, the T ff is approximately the same as Rolling Torque, with slightly V inertia varying difference. If T adapt could converge to this difference, the term I p in equation becomes 0. Because I inertia as a constant value is not zero, the V p will be zero. Then a constant rolling speed is obtained. The simulation result is shown as: 0.509 0.508 0.507 Rolling Speed after 30 trials reference after 100 trials 0.506 [m/s] 0.505 0.504 0.503 0.502 0.501 0.5 0 2000 4000 6000 8000 10000 12000 Figure 11. Rolling Speed Variation Figure 11 clearly shows the decrease of the rolling speed variation. The green line is reference rolling speed 0.5 [m/s]. After 30 trials (the blue curve) the speed variation is reduced to 0.008 [m/s], and after 100 trials it decreases to about 0.004 [m/s], reduced by 50%. That is no more than 1% speed variation, so a relatively constant rolling speed is achieved. Although the speed variation decreases significantly by the Torque adaptation and Feedforward Torque, a large improvement in the tracing of the gauge reference is not observed. - 16 -

4.3 Length uncertainty It is always very important that the system is robust to system uncertainty. Especially in simulation, a model of a system never exactly captures all system dynamics. In our case, the most important uncertainty is probably (blan) length uncertainty: the uncertainty to detect the exact start and end point of each horizontal segment. This results in a potential misfit of the length-coordinate y which causes inclusion of wrong values from the transition section. However, after analyzing the real time data (collected from real-time data of the rolling mill), we feel that the length uncertainty is not as large as we thought it could be. In addition, we found that the length uncertainty is mainly caused by slip (need to be further proved later). A small uncertainty is implemented in the system, and the system still performs well. Simulation results: First we checed the difference between entry strip volume and exit strip volume by the formula given as below: EntryStripLength * H - ExitStripLength * h Per variation = EntryStripLength * H Entry and exit variables are distinguished by a rule that a capital letter is used for the entry side and lower case for the exit (e.g. H is entry thicness and h is exit thicness). 0. 3 p e rc e n ta g e o f va ria t io n o f in t e g ra l vo lu m 0. 2 Percetage of variation [mm] 0. 1 0-0. 1-0. 2-0. 3-0. 4 0 1 2 3 4 5 6 7 L e n g th [ m m ] x 1 0 4 Figure 12. Percentage of variation of stripvolume - 17 -

The difference between roll speed and the exit strip speed varies over the profile which results in varying slip. The slip is calculated from the exit strip speed and the wor roll speed with the following equation: slip = ( v v ) / v strip roll roll The variation in slip during TRB rolling shows that TRBs can only be produced according to specification on a mill that is equipped with an accurate strip speed measuring device. The following figure shows how large the length uncertainty is, after analyzing the real time data. 0. 0 1 L e n g th U n c e rt a n ity 0. 0 0 8 0. 0 0 6 0. 0 0 4 Uncertanity [mm] 0. 0 0 2 0-0. 0 0 2-0. 0 0 4-0. 0 0 6-0. 0 0 8-0. 0 1 0 1 2 3 4 5 6 7 L e n g th [m m ] x 1 0 4 Figure 13. Length Uncertainty Two times larger uncertainty (length basis) was installed in the simulation model, and the system still performs well. All the results showed before in this report were with this amount of uncertainty. - 18 -

5. Conclusion and Recommendation The iterative learning control method (the refined profile adaptation) proved to be very useful and helpful for TRB: it helps us to reduce the error in thicness significantly and results in a nice tracing of the reference gauges. The simulation results of the torque adaptation are very satisfying: it leads to very small fluctuation (almost constant) in the roll speed and tension force. This torque adaptation will be applied next time in real time at the mill. Some of the future wors are: firstly, prove soundly that the slip is main reason for the length uncertainty. Secondly, considering the relatively larger error at the slope parts of the blan profile, a simple adaptation can be applied later, when it is necessary. Lastly, redefine the blan profile to decrease the error at the transition of continuous blans, by adding the last horizontal segment of the last blan and the first horizontal segment of the next blan to the profile of the current blan. - 19 -

6. Reference [1] Iterative Learning Control with applications to a wafer stage B.G.Distra, Phd thesis, Concept Version 1.1 [2] Iterative Learning Control----a critical review Mar Verwoerd, 2005 [3] Iterative Learning Control with Wavelet Filtering R.J.E. Merry, Master Thesis, TU/e DCT 2005.54 [4] Iterative Learning Control on an Inet Printhead Niels Johannes Maria Bosch, Master Thesis, TU/e DCT 2005.80 [5] Corus internal references [6] Iterative Learning Control and Repetitive Control for Engineering practice Richard W. Longman, 2000-20 -