ISIS project: Supervision and Control of Industrial Robots

Background

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.

Project overview

The activities in the project can be separated into the following areas: The activities within these areas will be described briefly.

Iterative learning control

This part has been around since the project started within ISIS in 1996. The main results of this work are the PhD thesis [T2], seven journal papers [J1-J3,J5-J6,J8-J9], a number of conference papers [C1-C9,C12-C14,C16,C18,C20,C22] and a patent application [P1]. In collaboration with ABB some of the results from the Iterative Learning Control (ILC) research activity were included in a product for laser cutting in the year 2000. The first commercial installation of this product was at Tower Automotive in Milwaukee, USA, a supplier to the automotive industry. The joint project, ``Laser cutting using industrial robots'', was in 2001 nominated as one of three finalists to the NyTeknik Golden mouse award (Guldmusen) in the ``best Swedish IT project 2001'' category. This successful product was also highlighted in the 2001 Annual Technology Report from the ABB Group (page 16: "Precision Robots on the Cutting Edge").

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, tex2html_wrap_inline116 and tex2html_wrap_inline118 ,at or after time tex2html_wrap_inline120 . In the same way it is only possible to interact with the system using sequences of data, tex2html_wrap_inline122 , 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.

   figure42
Figure 1: An ILC system.

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

equation63

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].

Robot modeling and identification

Most industrial robots are controlled without having available explicit measurements from the arm-side. Instead the motor position is measured and used for control. A good model of the relation between motor position and arm position is therefore essential for the control. One result in this area is a course, Robot modeling and control, given the first time in 1999 and then given in 2002 and 2003. The aim has been to catch up with what has been done so far in the field of robot modeling and control. A second result is a report [R1] on the modeling of industrial robots with the the robot ABB IRB 1400 as application example.

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.

Joint level control

The standard situation for commercial industrial robots is that position measurements are available only on the motor side, i.e. the position on the arm side, after flexibilities in the gear box or the arm itself, is not available. In this work robot control on the joint level has been studied from two viewpoints. First, it has been studied how LQG (linear quadratic Gaussian) control can be used. The reason for studying this method is that it uses an estimate of the movement of the arm. The work was initiated in [MSc3] and continued in [C11]. It has been found that there appears to be a limitation for the achievable disturbance rejection performance when only the position of the first mass is available, provided that the regulator itself is stable. Second, it has been studied how additional information achieved by measuring the acceleration on the arm side can be used. This aspect is studied in and [MSc7]. In [MSc5] different aspects related to the sensors used in robot system is covered and different approaches to get a better angular velocity estimate are discussed.

Robot diagnosis

The aim in this work has been to study methods for diagnosis of industrial robots. The reasons for applying diagnosis to industrial robots are the high requirements on performance and productivity. It is important to be able to detect faults as quickly as possible in order to avoid that the production has to be closed down during unnecessarily long periods. The goal has so far been to study faults that can be described by changes of parameters in a model of the system This type of faults include e.g. increased friction, changes in moment of inertia of the load, etc. The approach presented in [T3] and [C17] is based on recursive identification of parameters that represent possible faults, and it can briefly be summarized as follows. In a particular operating point off-line identification of a physically parameterized model is carried out. Using this model as a nominal one the relevant parameters, representing possible faults, are identified recursively. In the publications mentioned a specially selected excitation signal is used during the identification. Using the estimate of e.g. the friction parameter a test variable is formed, and in a second stage the test variables are used to determine if a fault has occurred. Experiments have showed that it is necessary to include some kind of robustification in order to avoid too many false alarms.

Trajectory generation

The work in the trajectory generation area started in 2001 and it aims at developing new algorithms, methods and tools for the generation and optimization of trajectories for industrial robots. This development is motivated by the growing need for improved motion performance in several robot applications such as laser cutting, laser welding, machining, assembly and material handling. An improved trajectory optimization will also make it possible to design robots with smaller margins, resulting in lower robot manufacturing cost. As the number of applications using industrial robots grows, the demands on the functionality of the robot system also grow.

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 problem of trajectory generation for industrial robots has been studied as a research problem for a long time but there are still open questions. Some of the aspects that are studied here are,

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].

Results and development since 2000

The work on iterative learning control (ILC) reached a mile stone by the end of 2000 when the thesis [T2] was completed. The results from this thesis have then been presented in several publications [J1-J3], [J5-J6,J9] as well as in industrial applications [P1]. New results, dealing with different aspects of the control method, have also been obtained. Some of them are presented in [J8], [C13-C14], [C16] and [C18].

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.

Selected Publications

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.

Publications and Reports

Theses (1995-2000):
[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.
Theses (after September 2000):
[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.
Conference papers (after September 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.
Other relevant reports (after September 2000):
[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).
Master theses (after September 2000):
[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).
Some of the reports are available electronically, please search for the report that you are looking for in the publication database.