This project is carried out by the Division of Automatic Control in cooperation with ABB Robotics. Participants in the project from the Division of Automatic Control are Mikael Norrlöf, Svante Gunnarsson, and Erik Wernholt.
Two of the main issues for the robot industry of today are 1) to continuously improve the performance of the robots and 2) to adapt the control systems to new robot configurations and new applications. The overall aim of this project is therefore to study and develop methods for improving the performance of industrial robots.
Within the ILC research community the group (consisting of Svante Gunnarsson and Mikael Norrlöf) within ISIS is well accepted for the academic results. This is shown, for example, by a number of invitations to invited sessions (IFAC World Congress 2002, IEEE Control Applications 2004), a great number of journal publications and that Mikael Norrlöf was one of five invited speakers at the Iterative Learning Control International Summer School at Utah State University, Logan, Utah, USA, June 8-13, 2003. The aim of the summer school was to introduce new researchers in the field and also to stimulate collaborative research projects among research groups around the world.
The basic ideas of ILC can be introduced by considering the control system depicted in Figure 1. The system T is assumed to repeatedly follow the same trajectory r(t) over a finite time interval. It is assumed that the structure of the system inside the frame in Figure 1 can not be changed. It is only possible to observe some of the signals, depicted in the figure with dashed arrows crossing the border of the frame. These signals are only available as complete sequences, and ,at or after time . In the same way it is only possible to interact with the system using sequences of data, , where the sequence must be completely defined at time 0. Because of the fact that the input sequence has to be defined in advance it is not possible to use conventional feedback.
If the system in Figure 1 is performing the same action, following the same reference trajectory r(t) repetitively, and it is assumed that the dynamics of the system does not change over time, obviously, the same input will give the same output when the system starts from the same initial condition. By using the reference and the output it is possible to define an error, e(t) = r(t) - y(t). The aim of ILC is now to iteratively calculate a compensation signal u(t) that, next time the same action is performed, results in a decreasing error evaluated in some norm (such as the energy of the error). A common formulation of such an updating algorithm is
where the indices refer to the iteration number. A big consideration in the research field of ILC is given to the choice of the two filters Q(q) and L(q). One important condition for this choice is to have convergence along the iterations. With convergence is here referred to the fact that the control signal u and the error e should not grow infinitely when the number of iterations goes to infinity. In practice, of course, the error should decrease (otherwise it is no use in applying the method in the first place).
In the PhD thesis [T2], the journal papers [J1-J3,J5-J6,J8-J9], and the conference papers [C1-C9,C12-C14,C16,C18,C20,C22], many different aspects of Iterative Learning Control have been covered. Several design schemes for iterative learning control methods are presented, including first order [T1,T2], [J1-J3,J5-J6,J8-J9], and [C1-C3,C5-C8,C12-C13,C16,C20,C22] as well as higher order iterative learning control [T2], [J5], and [C4,C9,C14]. An adaptive approach to iterative learning control is also covered in [T2], [J3], [C12] and in [J9] and [C20] an iteration varying although not adaptive approach is discussed. Many of the suggested design methods are also given with stability and robustness results. Most of the references also contains experiments where the proposed design schemes are evaluated on a commercial industrial robot, ABB IRB 1400.
Future work on ILC will for example be directed towards applications of ILC where the controlled variable is not directly measurable. In robotics this is the case since ultimately it is the tool that should follow a particular path while the controller only have measurements from the motors. This topic is also discussed in [T2] and [C7]. In [C22] some experimental results from a 1-DOF flexible robot arm are given. The arm position is in [C22] estimated using angle measurements from the motor and acceleration measurements from the arm, ILC is then applied to minimize the predicted error on the arm position. The results in [C22] are based upon the theoretical results in [C7]. The next step in this area is to use a 3-DOF accelerometer on a commercial industrial robot and apply the same kind of technique as is described in [C7,C22]. Another area of interest is to further study so called high order ILC algorithms, and their ability to, for example, deal with disturbances. The later aspects are covered to some extent by [C14]. Current Iteration Tracking Error ILC is also an area where some more work need to be done, some results in this area are given in [C18] and they are further developed in [J8].
System identification is also a useful tool for robot modeling. The publications [J4] and [C10] deal with identification of an ABB IRB1400 using both black-box and physically parameterized models. It has been found that the behavior, including flexibilities, of the robot when moving around axis one can be reasonably well described by a linear model consisting of three masses connected via springs and dampers. It is however clear that the robot contains nonlinearities, like e.g. back-lash and friction. A study has therefore been carried out, see [R2], where the effects of nonlinearities on black-box models have been investigated.
In [T3] and [C19] is has been studied how the parameters in a physically parameterized model of the robot can be identified using recursive prediction error methods. An key problem is then to form the gradient of the prediction error, with respect to the physical parameter, in the continuous time model using only discrete time data. The method that has been found useful is to first derive the derivative of the prediction error using the continuous time model, and in a second stage transform the problem to discrete time.
The trajectory generation problem can be divided into two separate problems. The first is to represent the path, that is the geometrical description. In [R3,R4], [C21] and [MSc8] this problem is covered theoretically and a number of new approaches to Cartesian zone path interpolation are, for example, suggested. As a result of the Master Thesis project of M. Nyström [MSc8] a first version of a general toolbox for path generation in Matlab [R5] has been developed. In [C21], [R3] and [MSc8] algorithms are presented for transformation of Cartesian space paths (in 3-DOF) into joint space representation, parameterized using cubic splines.
The second problem involved in the trajectory generation problem is to
assign a velocity profile to the geometrical path (in Cartesian space
and in joint space). This step is discussed in [R3] but is also still
an issue for future research.
The last step also includes taking into consideration the constraints
present on the Cartesian path velocity and acceleration, the robot
motor speed and acceleration, and also other possible constraints.
A first contribution in this area is the report [R3].
Robot modeling using system identification has been an active area since 2000 and the work has included aspects of off-line as well as recursive identification of physically parameterized models. A main contribution in the are is the thesis [T3], and results from this thesis have also been presented in [J4], [J7], [C10] and [C19]. While this work has concentrated on SISO models the current work is directed towards multivariable identification of the dynamics the three main axes of an industrial robot. This research questions includes issues like choice of excitation signal, influence of periodic disturbances, friction, etc.
The robot diagnosis problem has been studied in connection with recursive identification of physical parameters. This means that the interest has been focused on faults that can be described by parameter changes. Some results have been presented in [T3] and [C17].
The work in the area of joint level control has mainly been carried out as master thesis projects [MSc5-MSc6], both dealing with the problem from a multivariable viewpoint. Questions of interest have been how to select sensor locations, how choose an appropriate control system structure, etc. Some aspects of the joint level control problem have also been presented in [T3] and [C11] where e.g. the problem of regulator stability has been treated.
Since the trajectory generation problem was introduced as a topic within the ISIS project in 2001 all the work presented in the Section "Trajectory generation" above represents what has been achieved after 2000.
M. Norrlöf. An adaptive Iterative Learning Control algorithm with experiments on an industrial robot. IEEE Transactions on Robotics and Automation 18(2):245-251. 2002. |
M. Östring, S. Gunnarsson and M. Norrlöf. Closed loop identification of an industrial robot containing flexibilities. Control Engineering Practice 11(3), 2003. | M. Norrlöf and S. Gunnarsson. Time and frequency domain convergence properties in iterative learning control. International Journal of Control 75(14): 1114-1126, 2002. |
M. Norrlöf and S. Gunnarsson. Experimental Comparison of Some Classical Iterative Learning Control Algorithms. IEEE Transactions on Robotics and Automation 18(4): 636-641, 2002. |
M. Nyström and M. Norrlöf. Path generation for industrial robots. Mekatronikmöte 2003, Göteborg, Sweden, August 27-28, 2003. |
[T1] | M. Norrlöf. On analysis and implementation of Iterative Learning Control. Licentiate Thesis. Linköping Studies in Science and Technology. Thesis No 727, Oct 1998. |
[T2] | M. Norrlöf. Iterative Learning Control. Analysis, design and experiments. Linköping Studies in Science and Technology. Thesis No 653, 2000. |
[T3] | M. Östring. Identification, Diagnosis and Control of a Flexible Robot Arm. Linköping Studies in Science and Technology. Thesis No 948, 2002. |
Journal papers (after September 2000):
[J1] | M. Norrlöf and S. Gunnarsson. Disturbance Aspects of Iterative Learning Control. Engineering Applications of Artificial Intelligence, 14(1):87-94, 2001. |
[J2] | S. Gunnarsson and M. Norrlöf. On the Design of ILC Algorithms Using Optimization. Automatica 37(12), 2001. |
[J3] | M. Norrlöf. An adaptive Iterative Learning Control algorithm with experiments on an industrial robot. IEEE Transactions on Robotics and Automation 18(2):245-251. 2002. |
[J4] | M. Östring, S. Gunnarsson and M. Norrlöf. Closed loop identification of an industrial robot containing flexibilities. Control Engineering Practice 11(3), 2003. |
[J5] | M. Norrlöf and S. Gunnarsson. Time and frequency domain convergence properties in iterative learning control. International Journal of Control 75(14): 1114-1126, 2002. |
[J6] | M. Norrlöf and S. Gunnarsson. Experimental Comparison of Some Classical Iterative Learning Control Algorithms. IEEE Transactions on Robotics and Automation 18(4): 636-641, 2002. |
[J7] | M. Östring and S. Gunnarsson. Recursive identification of physical parameters in a flexible robot arm Submitted to Asian Journal of Control. Under revision. |
[J8] | M. Norrlöf and S. Gunnarsson. A note on causal and CITE iterative learning control algorithms. Submitted to Automatica. Under revision. |
[J9] | M. Norrlöf. Disturbance rejection using an ILC algorithm with iteration varying filters. Submitted to Asian Journal of Control. Under revision. |
Conference papers (1995-2000):
[C1] | S. Gunnarsson and M. Norrlöf. On the use of learning control for improved performance in robot control systems. European Control Conference, 1997. |
[C2] | S. Gunnarsson and M. Norrlöf. Some experiences of the use of iterative learning control form performance improvement in robot control systems. 5th IFAC Symposium on Robot Control, 1997. |
[C3] | M. Norrlöf and S. Gunnarsson. Some results on iterative learning control with disturbances. Reglermöte'98, 1998. |
[C4] | M. Norrlöf and S. Gunnarsson A Frequency Domain Analysis of a Second Order Iterative Learning Control Algorithm. IEEE Conference on Decision and Control, 1999. |
[C5] | S. Gunnarsson and M. Norrlöf Some Aspects of an Optimization Approach to Iterative Learning Control. IEEE Conference on Decision and Control, 1999. |
[C6] | M. Norrlöf and S. Gunnarsson. A Model Based Iterative Learning Control Method Applied to 3 Axes of a Commercial Industrial Robot. 6th IFAC Symposium on Robot Control, 2000. |
[C7] | S. Gunnarsson and M. Norrlöf Iterative Learning Control of a Flexible Mechanical System Using Accelerometers. 6th IFAC Symposium on Robot Control, 2000. |
[C8] | M. Norrlöf and S. Gunnarsson A model based Iterative Learning Control method applied to an industrial robot Reglermöte'00, 2000. |
[C9] | M. Norrlöf Comparative study on first and second order ILC - frequency domain analysis and experiments. IEEE Conference on Decision and Control, 2000. |
[C10] | M. Östring, S. Gunnarsson and M. Norrlöf. Closed Loop Identification of the Physical Parameters of an Industrial Robot, International Symposium on Robotics, 2001. |
[C11] | S. Gunnarsson and M. Östring On Regulator Stability in Control of Flexible Mechanical Systems. International Symposium on Robotics, 2001. |
[C12] | M. Norrlöf An adaptive approach to Iterative Learning Control with experiments on an industrial robot. European Control Conference, ECC2001, 2001. |
[C13] | O. Markusson, H. Hjalmarsson (Royal Inst. of Tech.), and M.Norrlöf. Iterative learning control of nonlinear non-minimum phase systems and its application to system and model inversion. 2001 IEEE Conference on Decision and Control, Orlando, Florida, USA, 2001. |
[C14] | M. Norrlöf and S. Gunnarsson. Disturbance Aspects of High Order Iterative Learning Control. IFAC World Congress, 2002. |
[C15] | M. Norrlöf, F. Tjärnström, M. Östring (Linköpings universitet), and M . Aberger (Johannes Kepler University Linz, Austria). Modeling and identification of a mechanical industrial manipulator. IFAC World Congress, 2002. |
[C16] | O. Markusson, H. Hjalmarsson (Royal Inst. of Tech.), and M.Norrlöf. A General Framework for Iterative Learning Control. IFAC World Congress, 2002. |
[C17] | M. Östring, F. Tjärnström, and M. Norrlöf. Modeling of industrial robot for identification, monitoring, and control. International Symposium on Advanced Control of Industrial Processes, Kumamoto, Japan June 10-11, 2002. |
[C18] | M. Norrlöf and S. Gunnarsson. Some new results on current iteration tracking error ILC. Asian Control Conference, 2002. |
[C19] | M. Östring and S. Gunnarsson. Recursive identification of physical parameters in a flexible robot arm. Asian Control Conference, 2002. |
[C20] | M. Norrlöf. Iteration varying filters in Iterative Learning Control. Asian Control Conference, 2002. |
[C21] | M. Nyström and M. Norrlöf. Path generation for industrial robots. Mekatronikmötet 2003. |
[C22] | S. Gunnarsson, M. Norrlöf, E. Rahic and M. Özbek. Iterative learning control of a flexible robot arm using accelerometers. Mekatronikmötet 2003. |
Other relevant reports (1995-2000):
[R1] | M. Norrlöf. Modeling of industrial robots. LiTH-ISY-R-2208, 1999. |
[R2] | M. Aberger. Effects of Nonlinearities in Black Box Identification of an Industrial Robot. LiTH-ISY-R-2322, 2000. |
[R3] | M. Norrlöf On path planning and optimization using splines. LiTH-ISY-R-2490, 2003. |
[R4] | M. Nyström and M. Norrlöf Results from simulations using spline based path generation algorithms. LiTH-ISY-R-2505, 2003. (In Swedish). |
[R5] | M. Nyström and M. Norrlöf PGT - A path generation toolbox for Matlab (v0.1). LiTH-ISY-R-2542, 2003. |
Patent applications:
[P1] | S. Gunnarsson, M. Norrlöf, G. Hovland, U. Carlsson, Torgny Brogårdh, T. Svensson and S. Moberg. Method for High Accuracy Performance of an Industrial Robot. Swedish Patent Application No. 0001312-8. |
Master theses (1995-2000):
[MSc1] | M. Fleischer. Friction estimation in an industrial robot system. Report LiTH-ISY-EX-1777, 1997. (In Swedish) |
[MSc2] | K. Rahmati. Identification of a flexible servo. Report LiTH-ISY-EX-1927, 1998. (In Swedish). |
[MSc3] | M. Östring. Damping of oscillations in robot servos Report LiTH-ISY-EX-1948, 1998. (In Swedish). |
[MSc4] | F. Vikstén. On the use of an accelerometer for identification of a flexible manipulator. LiTH-ISY-EX-3028, 2001. |
[MSc5] | N. Durinder and J. Wallmander. Examination of measurement system and control structures for industrial applications. LiTH-ISY-EX-3200, 2002. (In Swedish). |
[MSc6] | P. Skoglar. Modelling and control of IR/EO-gimbal for UAV surveillance applications. LiTH-ISY-EX-3258, 2002. |
[MSc7] | E. Malmlöf & O. Scholander. Control of flexible structures using multiple sensors. LiTH-ISY-EX-3338, 2003. (In Swedish). | [MSc8] | M. Nyström. Path generation for industrial robots. LiTH-ISY-EX-3357, 2003. (In Swedish). |