Control Engineering Solutions
Control Engineering Solutions
IEE CONTROL ENGINEERING SERIES 54 Series Editors: Professor D. P. Atherton Professor G. W. Irwin
Other volumes in this series: Volume 1 Volume 2 Volume 3 Volume 4 Volume 5 Volume 6 Volume 7 Volume 8 Volume 9 Volume 10 Volume 11 Volume 12 Volume 13 Volume 14 Volume 15 Volume Volume Volume Volume Volume Volume Volume Volume Volume Volume Volume 16 17 18 19 20 21 22 23 24 25 26 Multivariable control theory J. M. Layton Elevator traffic analysis, design and control G. C. Barney and S. M. dos Santos Transducers in digital systems G. A. Woolvet Supervisory remote control systems R. E. Young Structure of interconnected systems H. Nicholson Power system control M. J. H. Sterling Feedback and multivariable systems D. H. Owens A history of control engineering, 1800-1930 S. Bennett Modern approaches to control system design N. Munro (Editor) Control of time delay systems J. E. Marshall Biological systems, modelling and control D. A. Linkens Modelling of dynamical systems1 H. Nicholson (Editor) Modelling of dynamical systems2 H. Nicholson (Editor) Optimal relay and saturating control system synthesis E. P. Ryan Self-tuning and adaptive control: theory and application C. J. Harris and S. A. Billings (Editors) Systems modelling and optimisation P. Nash Control in hazardous environments R. E. Young Applied control theory J. R. Leigh Stepping motors: a guide to modern theory and practice P. P. Acarnley Design of modern control systems D. J. Bell, P. A. Cook and N. Munro (Editors) Computer control of industrial processes S. Bennett and D. A. Linkens (Editors) Digital signal processing N. B. Jones (Editor) Robotic technology A. Pugh (Editor) Real-time computer control S. Bennett and D. A. Linkens (Editors) Nonlinear system design S. A. Billings, J. O. Gray and D. H. Owens (Editors) Measurement and instrumentation for control M. G. Mylroi and G. Calvert (Editors) Process dynamics estimation and control A. Johnson Robots and automated manufacture J. Bi lingsley (Editor) Industrial digital control systems K. Warwick and D. Rees (Editors) Electromagnetic suspensiondynamics and control P. K. Slnha Modelling and control of fermentation processes J. R. Leigh (Editor) Multivariable control for industrial applications J. O'Reilly (Editor) Temperature measurement and control J. R. Leigh Singular perturbation methodology in control systems D. S. Naidu Implementation of self-tuning controllers K. Warwick (Editor) Robot control K. Warwick and A. Pugh (Editors) Industrial digital control systems (revised edition) K. Warwick and D. Rees (Editors) Parallel processing in control P. J. Fleming (Editor) Continuous time controller design R. Balasubramanian Deterministic control of uncertain systems A. S. I. Zinober (Editor) Computer control of real-time processes S. Bennett and G. S. Virk (Editors) Digital signal processing: principles, devices and applications N. B. Jones and J. D. McK. Watson (Editors) Trends in information technology D. A. Linkens and R. I. Nicolson (Editors) Knowledge-based systems for industrial control J. McGhee, M. J. Grimble and A. Mowforth (Editors) Control theorya guided tour J. R. Leigh Neural networks for control and systems K. Warwick, G. W. Irwin and K. J. Hunt (Editors) A history of control engineering, 1930-1956 S. Bennett MATLAB toolboxes and applications for control A. J. Chipperfield and P. J. Fleming (Editors) Polynomial methods in optimal control and filtering K. J. Hunt (Editor) Programming industrial control systems using IEC 1131-3 R. W. Lewis Advanced robotics and intelligent machines J. O. Gray and D. G. Caldwell (Editors) Adaptive prediction and predictive control P. P. Kanjilal Neural network applications in control G. W. Irwin, K. Warwick and K. J. Hunt (Editors)
Volume 27 Volume 28 Volume 29 Volume 30 Volume 31 Volume 32 Volume 33 Volume 34 Volume 35 Volume 36 Volume 37 Volume 38 Volume 39 Volume 40 Volume 41 Volume 42 Volume 43 Volume 44 Volume 45 Volume 46 Volume 47 Volume 48 Volume 49 Volume 50 Volume 51 Volume 52 Volume 53
a practical approach
Published by: The Institution of Electrical Engineers, London, United Kingdom 1997: The Institution of Electrical Engineers This publication is copyright under the Berne Convention and the Universal Copyright Convention. All rights reserved. Apart from any fair dealing for the purposes of research or private study, or criticism or review, as permitted under the Copyright, Designs and Patents Act, 1988, this publication may be reproduced, stored or transmitted, in any forms or by any means, only with the prior permission in writing of the publishers, or in the case of reprographic reproduction in accordance with the terms of licences issued by the Copyright Licensing Agency. Inquiries concerning reproduction outside those terms should be sent to the publishers at the undermentioned address: The Institution of Electrical Engineers, Michael Faraday House, Six Hills Way, Stevenage, Herts. SG1 2AY, United Kingdom While the editors and the publishers believe that the information and guidance given in this work is correct, all parties must rely upon their own skill and judgment when making use of it. Neither the authors nor the publishers assume any liability to anyone for any loss or damage caused by any error or omission in the work, whether such error or omission is the result of negligence or any other cause. Any and all such liability is disclaimed. The moral right of the authors to be identified as authors of this work has been asserted by them in accordance with the Copyright, Designs and Patents Act 1988.
British Library Cataloguing in Publication Data A CIP catalogue record for this book is available from the British Library ISBN 0 85296 829 9
Contents
Page Preface Introduction Contributors 1 Process model identification J. Pico, P. Albertos and M. Martinez 1.1 Introduction 1.2 Control problems 1.3 Technical approaches 1.4 Discussion and laboratory experience 1.4.1 Laboratory set-up 1.4.2 Sampling period selection 1.4.3 Data conditioning 1.4.4 Model structure selection 1.4.5 Signal excitability 1.4.6 Parameter tracking and forgetting factors 1.4.7 Closed loop identification 1.5 Conclusions 1.6 References 1.7 Appendix: Process physico-chemical behaviour laws Analogue controller design W. Badelt and R. Strietzel 2.1 Introduction 2.2 Motivation 2.3 Technical approaches 2.3.1 Design of single loop control 2.3.2 Multi-loop control 2.3.3 Two-variable control 2.3.4 Two- and three-level control 2.4 Laboratory set-up (simulation tools) 2.5 Suggested experiments and problems xiii xv xxi 1 1 1 4 6 7 7 8 10 14 15 18 19 20 21 23 23 23 24 24 25 25 29 31 34
vi
Control engineering solutions: a practical approach 2.6 Illustrative results 2.6.1 Single-loop and multi-loop control 2.6.2 Two-variable control 2.6.3 Non-linear control Conclusions References 38 38 38 41 41 42 43 43 43 47 48 48 50 51 51 53 53 53 53 54 54 54 57 57 57 57 57 58 58 59 59 61 61 62 63 63 65 66 66 68
2.7 2.8
Classic controller design P. Bikfalvi and I. Szabo 3.1 Introduction 3.2 Control problem (motivation) Technical approaches to classic regulator design 3.3 3.3.1 Graphical analytical methods 3.3.2 Analytical methods 3.3.3 Controller design based on rule-of-thumb methods 3.4 Laboratory set-up Controller simulation software 3.5 3.5.1 Sampling time setting 3.5.2 Filtering 3.5.3 Demonstration process model operation 3.5.4 Set-up menu 3.5.5 Alarms setting 3.5.6 Graphical menu 3.5.7 Controller algorithm set-up 3.5.8 Exiting the program Suggested experiments 3.6 3.6.1 PID control experiment 3.6.2 Lead-lag control experiment 3.6.3 Predictive control experiment 3.6.4 Digital cascade controller experiment 3.7 Illustrative results Conclusions and extensions 3.8 3.9 References Integral wind-up in control and system simulation B. Sulc 4.1 Introduction 4.2 Motivation and control problem statement 4.3 Technical aspect of integral wind-up 4.3.1 Reset wind-up occurrence in PI controllers of different construction 4.3.2 Anti-wind-up measures 4.3.3 Bumpless transfer 4.3.4 Incremental PID algorithm for practical applications 4.4 Discussion of anti-wind-un anDroaches
Contents 4.5 Laboratory set-up and simulation model for wind-up investigation 4.5.1 Integration stopping in simulation models 4.5.2 Laboratory set-up description Suggested experiments Illustrative results 4.7.1 Results from set-up measurements 4.7.2 Results from simulation Conclusions References Other reading
vii 68 69 71 71 72 72 73 75 75 76 11 77 77 78 79 79 82 83 83 84 84 84 85 85 85 85 86 87 87 87 88 88 88 91 93 93 97 97
Control of unstable systems >. Juricic andJ. Kocijan 5.1 Introduction 5.2 Motivation (control problem) 5.2.1 Design limitations 5.2.2 Performance limitations 5.2.3 Control problem 5.3 Technical approaches to the control of unstable processes 5.3.1 State controller 5.3.2 State controller with observer 5.3.3 PID controller 5.3.4 Model-free design of controllers a genetic algorithm approach 5.4 Discussion 5.4.1 Linear quadratic regulator 5.4.2 Linear quadratic regulator with observer 5.4.3 PID controller 5.4.4 Model-free design using a genetic algorithm approach 5.5 Laboratory set-up 5.6 Suggested experiments 5.7 Illustrative results 5.7.1 Linear quadratic regulator 5.7.2 Linear quadratic regulator with observer (LQG design) 5.7.3 Model-based PID 5.7.4 The optimised PID using a GA approach 5.8 Conclusions 5.9 Acknowledgment 5.10 References Control of temperature and heat flow rate: the problem of delays P. Zitek 6.1 Introduction
viii
Control engineering solutions: a practical approach 6.2 6.3 6.4 Control problem statement 6.2.1 Basic approaches to controlling processes with delay 6.2.2 Control problem example Process model analysis Control system design 6.4.1 Technical approach and discussion 6.4.2 Single feedback loop with a PID controller 6.4.3 State feedback control arrangement Controller parameter assignment 6.5.1 PID controller setting assignment 6.5.2 State feedback setting assignment Suggested experiments Conclusions References Further reading 97 99 99 100 102 102 103 103 104 105 108 109 110 110 111 113 113 113 115 116 117 119 120 123 124 128 128 129 129 129 131 133 134 136 136 137 137 139 141 144
Inverted pendulum control P.M. Frank and N. Kiupel 7.1 Introduction 7.2 Theoretical foundations 7.3 The 'inverted pendulum' system 7.3.1 Mathematical model of the inverted pendulum 7.3.2 Description of the linearised system in the state space 7.3.3 Normalisation of the state equations 7.3.4 Control and disturbance signal observation in the 'inverted pendulum' 7.4 Suggested experiments 7.5 Illustrative results 7.6 Conclusions 7.7 References Disturbance rejection P. Albertos and I Salt 8.1 Introduction 8.2 Control problem 8.3 Technical background 8.3.1 Disturbance filtering 8.3.2 Disturbance estimation 8.4 Laboratory set-up 8.4.1 Model 8.5 Suggested experiments 8.5.1 Basic controller 8.5.2 Feedback filter 8.5.3 Disturbance estimator 8.6 Illustrative experimental results
ix 144 146 147 147 148 148 149 151 151 153 158 158 159 160 161 163 163 163 164 164 165 167 167 168 169 169 169 169 170 174 174 175 175 176 179 180 181
Multivariable process control N. Mort 9.1 Introduction to multivariable systems 9.2 Process modelling 9.2.1 Laboratory process: motor-alternator set 9.2.2 Model identification tests 9.3 Multivariable controller design 9.3.1 Non-interacting control 9.3.2 The characteristic locus method 9.4 Additional experimental work 9.4.1 Implementation of a digital compensator for the motor-alternator 9.4.2 An alternative multivariable process 9.5 Summary 9.6 References Predictive control vs. PID control of thermal treatment processes M. Voicu, C. Lazdr, F. Schonberger, O. Pastravanu and S. Ifrim 10.1 Introduction 10.2 Control problem 10.3 Technical approaches to control the thermal treatment processes 10.3.1 PID algorithm 10.3.2 Predictive algorithm 10.4 Discussion 10.5 Laboratory set-up 10.6 Suggested experiments 10.6.1 Parameter identification for the plant 10.6.2 PID control 10.6.3 Predictive control 10.6.4 Simulation phase and control algorithm implementation 10.7 Illustrative examples 10.8 Conclusions 10.9 References State-space adaptive control for nonlinear systems K. Janiszowski and M. Olszewski 11.1 Introduction 11.2 Models of piston movement in a pneumatic cylinder 11.3 Adaptive control system for a pneumatic cylinder 11.3.1 State reconstruction 11.3.2 State space control algorithm
10
11
Control engineering solutions: a practical approach 11.3.3 Model parameter estimation 11.3.4 Compensation of valve nonlinearity Fuzzy control system for a pneumatic cylinder Laboratory equipment Experimental scope 11.6.1 Determination of state characteristics of the valve-cylinder system 11.6.2 PID control 11.6.3 On-line system identification 11.6.4 State space control 11.6.5 Adaptive state-space control 11.6.6 Compensation for nonlinearity Conclusions Acknowledgments References 182 183 184 184 185 186 186 186 187 187 188 189 190 190 193 193 193 195 196 197 199 201 201 202 203 203 203 204 206 208 209 209 209 209 211 211 213 213 215
Distributed process control B. Rohdl-Ilkiv, P. Zelinka and R. Richter 12.1 Introduction 12.2 Motivation 12.3 Technical approaches to distributed process control 12.4 Discussion 12.4.1 Distributed control 12.4.2 Boundary control 12.5 Laboratory set-up 12.5.1 For distributed control 12.5.2 For boundary control 12.6 Suggested experiments 12.6.1 Aerothermal process 12.5.2 Boundary heated thin copper bar 12.7 Illustrative results 12.8 Conclusions 12.9 References Fuzzy control: demonstrated with the inverted pendulum P.M. Frank andN. Kuipel 13.1 Introduction 13.2 Control problem formulation 13.2.1 Fuzzy operators 13.3 Technical approaches 13.3.1 Fuzzy controller for a steam turbine 13.3.2 Fuzzy controller for flight control 13.3.3 Fuzzy controller for the inverted pendulum 13.4 Discussion
13
Contents 13.5 13.6 13.7 13.8 13.9 14 Laboratory set-up Suggested experiments Illustrative results Conclusion References
xi 218 218 219 221 221 223 223 225 225 228 232 234 235 238 238 238 240 240 241 241 242 244 245 247 247 247 248 249 250 250 259 259 261 261 261 262 262
Adaptive control supervision M. Martinez, P. Albertos, J.Pico andF. Morant 14.1 Control problem 14.2 Technical background 14.2.1 Supervision tasks 14.2.2 Selection of indicators for supervision 14.2.3 Functions and tasks of the supervisory level 14.2.4 Implementation of supervision functions 14.3 Laboratory set-up 14.4 Suggested experiments 14.4.1 Forgetting factor scheduling 14.4.2 Estimator scheduling 14.5 Conclusions 14.6 References 14.7 Appendix: numeric indicators 14.7.1 Associated with the pre-identification process 14.7.2 Associated with the estimation process 14.7.3 Associated with the controller calculus 14.7.4 Associated with the closed loop Model-based fault detection: an online supervision concept P.M. Frank and B. Koppen-Seliger 15.1 Introduction 15.2 Problem formulation 15.3 Process and fault model 15.4 Robust fault detection 15.5 Application 15.6 Design of fault detection filters for a three tank system 15.7 Conclusions 15.8 References Microcomputer-based implementations for DC motor-drive control C Lazar, E. Poll F. Schonberger, and S. Ifrim 16.1 Introduction 16.2 Control problem 16.3 Technical approaches to DC motor drive control 16.3.1 Cascade configuration
15
16
xii
Control engineering solutions: a practical approach 16.4 16.5 16.6 16.7 16.8 16.9 16.3.2 Parallel configuration Discussion Laboratory set-up Suggested experiments 16.6.1 Responses to a speed reference step 16.6.2 Responses to load disturbances Illustrative results Conclusions References 264 266 266
17
Software design for real-time systems A. Braune 17.1 Introduction 17.2 Motivation 17.3 Technical approaches 17.4 Discussion 17.5 Laboratory set-up 17.6 Suggested experiments 17.7 Illustrative results 17.8 Conclusions 17.9 References
Index
Preface
This book collects together in one volume a number of suggested control engineering solutions which are intended to be representative of solutions applicable to a broad class of control problems. It is neither a control theory book nor a handbook of laboratory experiments, but it does include both the basic theory of control and associated practical laboratory set-ups to illustrate the solutions proposed. Most of the content was developed, presented and discussed within the European TEMPUS Project IMPACT (IMProvements in Automation & Control Technology), led by the Austrian group of Professor Manfred Horvart at the Vienna University of Technology, to whom we are all grateful for the excellent organisational support provided throughout the project. Nevertheless, further refining, improvement and debugging has been necessary to reach this final form. Such an origin makes the book truly international, with contributors from many different countries and diverse teaching environments. The main purpose of each contribution is to identify an industrial control problem, to discuss different approaches to solve it and to suggest straightforward laboratory rigs to obtain practical knowledge about this (and related) problems. The common structure of the contributions is broadly based on: treatment of a well-defined and motivated industrial control problem; outline of the control theory involved; discussion of alternative approaches to deal with it; basic laboratory set-up to reproduce the scenario (sometimes just by simulation); experiments suggested to grasp the basic concepts of the problem; illustrative results obtained from the proposed set-up, which may be useful as a guideline for local replications; and final comments and conclusions followed by an introductory bibliography.
The book should interest a broad audience. Control engineering students will find potential applications for control theory and workable examples of practical control problems. Most of the laboratory set-ups will be very easy to replicate by
xiv
control engineering teaching staff, enabling practical activity to complement theoretical and exercise class sessions. Last, but not least, applied control engineers faced with real control problems will find guidelines to approach the solution of their own control problems, including discussion of alternative methods and expected results. We hope that the book will complement conventional theoretical and exercise-oriented control textbooks. The initial idea for the book was first raised with the co-editor Professor Roland Strietzel, organiser of the first round-table discussion session in the framework of EXACT 93, an IMPACT technical meeting held in Dresden in 1993. However, the idea could not become a reality without the effort of Dr. Neil Mort, whose input has included effort in reviewing and improving the style and language of all but one of the chapters which originated from authors whose native language is not English. We hope we deserve the confidence the Institution of Electrical Engineers has shown in publishing our project which is intended to fill a small part of the gap between theory and practice in the control field. Pedro Albertos, Valencia, October 1996
Introduction
In a world where reliability, speed of communication, production competitiveness or product quality requirements, amongst many other technological factors, are more and more demanding, the use of control engineering techniques is an interdisciplinary challenge to be applied in different fields of technology. Control engineering problems, which were historically approached from the two different viewpoints of either tracking or regulation problems, have deservedly received considerable attention and research over the last few decades. A number of theories and techniques have been developed, but they have not always fulfilled the actual need of the users responsible for getting the systems to work properly under control. To understand each one of these approaches well, specific knowledge is needed and special tools are available, which usually require some theoretical background. In most of the control problems engineers dealt with, these techniques are not exclusive but complementary, each one leading to a partial solution. It is not only the requirements and design constraints that define the most suitable approach; the "best" solution will probably involve a combination of concepts and techniques, generally studied in different frameworks. There are a number of steps to take before a control engineering solution can be successfully applied to a given problem. From the initial phase of experimentally building up a model of the process, to the final steps of hardware and software implementation and validation of the designed control system, a number of issues appear. Even where we short-cut the whole process and directly choose a standard control solution already applied to a similar problem, the final steps of integrating controlled system components, tuning the parameters, checking the control requirements and validating the control solution must still be performed. The main purpose of each chapter in the book is to identify an industrial control problem, discuss different approaches to solve it and suggest easy-to-implement laboratory rigs to obtain practical knowledge about this and related problems. Some of the reported problems and techniques discussed are very broad or complex and would require much more space and time to provide a full understanding. Our purpose is less ambitious; we simply try to define the
xvi
problem, propose some solutions and provide references for further study, if so required. The common structure of the chapters is broadly based on: treatment of a well-defined and motivated industrial control problem; outline of the control theory involved; discussion of alternative approaches to deal with it; basic laboratory set-up to reproduce the scenario (sometimes just by simulation); experiments suggested to grasp the basic concepts of the problem; illustrative results obtained from the proposed set-up, which may be useful as a guideline for local replications; and final comments and conclusions followed by an introductory bibliography.
The book is organised into seventeen chapters, a summary of which follows here: The first chapter, by J. Pico, P. Albertos and M. Msirtinez, is devoted to the initial problem of experimental modelling of processes. A typical industrial process, such as a neutralisation tank (or a set of them) is considered. Focusing on techniques for parameter estimation of discrete-time single-input single-output (SISO) models, the basic least-squares family of algorithms is presented and some practical issues in carrying out the experiments are highlighted and discussed. A complementary viewpoint on the solution is presented in Chapter 14. The second chapter summarises techniques for studying most of the basic control approaches by analogue simulation, from linear to non-linear and from SISO to muitivariable (MIMO) systems. The authors, W. Badelt and R. Strietzel, present a versatile analogue set-up to simulate any of these systems and to evaluate the effectiveness of theoretically-designed controllers. The use of measuring devices and actuators allows for a better understanding of the real problems found when implementing a controller. P. Bikfalvi and I. Szabo present a digital counterpart to the previous chapter. Although restricted to linear SISO systems, they provide the tools for practical implementation of different classical digital controllers, from the basic PID to well-known cascade and predictive controllers. Wind-up in integrators is also a classical problem which occurs in control solutions. The use of digital computers, both to implement the control and (partially or totally) to simulate the process, makes this problem more common and, sometimes, less noticeable. In Chapter 4, B. Sulc analyses integral wind-up in control and system simulation, and illustrates its consequences on a practical problem of the control of pressure in a vessel. The processes of diving and flying, as examples of typical unstable systems, pose challenging problems for design of a reliable control system. In Chapter 5, D. Juricic and J. Kocijan review the design techniques available to deal with the control of unstable systems, from classical PID control to the use of genetic
Introduction
xvii
algorithms. These solutions are also compared with those obtained using linear quadratic regulators with observers. As in most of the chapters, the experiments are carried out on an interesting laboratory set-up. The control of thermal processes, so common in process industries, receives the attention of several contributors. P. Zitek, in Chapter 6, analyses the particular issue of the problem of delays in the control of temperature and heat flow rate. Delays are widespread in any process involving the transportation of materials, energy or information. The influence of delays in degrading control performance and ways to overcome it are illustrated experimentally on a laboratory-scale heating system where the process dimensions have been chosen to reduce the time intervals (lags and delays). A typical academic control problem is the inverted pendulum, which is covered by P. Frank and N. Kiupel in Chapter 7. In addition to the explicit non-linear model and well-posed control requirements, the system has a number of properties and difficulties which make it suitable to illustrate the design and implementation of industrial control solutions. The authors describe the different steps, from theoretical modelling based on mechanical laws, through linearisation and statespace controller design. As mentioned previously, one classical control problem is to keep a controlled variable within certain limits in spite of the presence of disturbances. P. Albertos and J. Salt deal with disturbance rejection in Chapter 8, where they discuss sources of disturbances as well as approaches to counteract them. The basic rig involves a laboratory-scale model to control the position of the end effector of a welding machine, where disturbances produced by changes in load, measurement noise or wheel-wear can be observed. Most industrial processes are MIMO systems, although the classical approach is to use multiple single-loop control systems, which are simpler to design. Multivariable process control is the topic is reported by N. Mort in Chapter 9. He covers the basic issues of this topic, illustrated on a motor-alternator set, from experimental system identification to controller design, mainly oriented to decoupling the control actions. The use of available software packages, such as MATLAB Control Toolboxes, allows easy controller design, including design in the frequency domain. M. Voicu, C. Lazar, F. Schonberger, O. Pastravanu and S. Ifrim analyse the advantages of predictive control versus PID control of thermal treatment processes in Chapter 10. This is another alternative to overcome the difficulties in controlling processes involving time delays. In this experimental set-up, it is shown that in applications where the reference signal is well known in advance, the use of feedforward and predictive control can improve the performance obtained by PID controllers. Pneumatic cylinders are used extensively in industrial applications as control actuators. Nevertheless, the nonlinearities inherent in the process and the complexity in the model have made their analytical study difficult. K. Janiszowski
xviii
and M. Olszewski, in Chapter 11, present a number of interesting suggestions to develop state-space adaptive control for such nonlinear systems. A laboratory setup including a pneumatic cylinder is described and both experimental and theoretical ways of modelling it are discussed. PID, state-space, adaptive and fuzzy logic controllers are suggested and practical hints given to counteract the nonlinearities. Distributed parameter processes, that is, those whose state depends not only on time but also on spatial coordinates, are rather common in process industry. Real thermal systems and, in particular, continuous kilns (where the material circulates inside a multizone kiln) are relevant to many different applications. This is the control problem covered by B. Rohal-Ilkiv, P. Zelinka and R. Richter in Chapter 12 on distributed process control. In this chapter, the authors analyse the different tools to deal with both distributed process control and boundary control. Two alternative laboratory set ups are proposed. Ideas of artificial intelligence are being used more and more in the context of control methodologies. From very simple applications to the most complex ones where only approximate knowledge of processes and goals are given, the use of fuzzy logic controllers is becoming very popular. P. Frank and N. Kiupel dedicate Chapter 13 to a demonstration of fuzzy control with an inverted pendulum. The authors also consider applications to a steam turbine and aircraft flight. In computer-controlled systems, the code required to implement the control algorithm is often a minimal part of that of the real-time application needed to handle the process operation information. This information can easily be used for other purposes, in particular, to develop a supervisory level. Based on the information produced in the operation of an adaptive control system, a supervision strategy is proposed by M. Martinez, P. Albertos, J. Pico and F. Morant in Chapter 14. This supervision can be implemented as a set of rules with a structure similar to that of an expert system, although the simplicity of the reasoning does not require any specific software. A pair of coupled tanks serves as the laboratory setup to illustrate the results. Nevertheless, the authors devote most of the chapter to discussion of which indices and indicators are the more suitable to perform adaptive control supervision. Another basic objective of this upper level supervisor is the detection of faults, alarms or malfunctions. This is a crucial issue in many control applications due to the danger of long-lasting hazards or general safety reductions on the operating conditions. P. Frank and B. Koppen-Seliger address this issue in Chapter 15. The three coupled tank system is used as a basic process where the model, control and operation are clearly understood, in such a way that diagnosis concepts based on so-called analytical redundancy can be illustrated. The last two chapters deal with practical implementation issues related to either hardware or software. C. Lazar, E. Poli, F. Schonberger and S. Ifrim discuss microcomputer-based implementations for DC motor-drive control in Chapter 16. Two control schemes are compared, the classical cascade control of speed and
Introduction
xix
current, and two-loop parallel control. Flow diagrams and the system layout given will help in replicating this set-up in any laboratory. Finally, A. Braune introduces some of the basic issues in software design for real-time systems in Chapter 17. The leading application is the programming of an educational robot used as a versatile manipulator, but most of the concepts related to the modular design of real-time software will be very valuable for any of the control applications previously discussed. As you read the book, you will see that, although both the basic theory of control and the practical laboratory set-ups to illustrate the proposed solutions are outlined, this is neither a control theory textbook, nor a handbook of laboratory experiments. It is more a book about the fusion of control theory and practice and we hope it will be a useful book for general reference and consultation.
Contributors
P. Albertos, M. Martinez, F. Morant, J. Pico and J. Salt Department of Systems Engineering, Computers and Control Universidad Politecnica de Valencia PO Box 22012 E-46071 Valencia Spain P. Bikfalvi and I. Szabo Institute of Information Technology Department of Process Control University of Miskolc 3515 Miskolc Egyetemuaros Hungary P. M. Frank, N. Kiupel and B. Koppen-Seliger Department of Measurement and Process Control Gerhard Mercator University Bismarckstrasse 81 BB D-47048 Duisburg Germany
K. Janiszowski and M. Olszewski Warsaw Technical University Institute of Industrial Automatic Control ul. Chodkiewicza 8 PL-02 525 Warsaw Poland D. Juricic and J. Kocijan University of Ljubljana Jozef Stefan Institute Jamova 39 SLO-61111 Ljubljana Slovenia N. Mort Department of Automatic Control and Systems Engineering University of Sheffield PO Box 600 Mappin Street Sheffield S14DU UK
xxii
Control engineering solutions: a practical approach M. Voicu, C. Lazar, F. Schonberger, O. Pastravanu, E. Poli and S. Ifrim Department of Industrial Control and Industrial Informatics Gh Asachi Technical University of Iasi Str. Horia 7-9 RO-6600 Iasi Romania P. Zitek and B. Sulc Department of Automatic Control Czech Technical University Technika 4 CZ-166 07 Prague 6 Czech Republic
B. Rohal-Ilkiv, P. Zelinka and R. Richter Department of Automatic Control and Measurement Mechanical Engineering Faculty Slovak Technical University Nam. Slobody c. 17 812 31 Bratislava Slovak Republic R. Strietzel, W. Badelt and A. Braune Department of Electrical Engineering and Control Theory Dresden University of Technology Mommsenstrasse 13 D-01062 Dresden Germany
Chapter 1
1.1
Introduction
Process model identification techniques, where the model takes the form of a parametrised discrete-time transfer function, are acquiring increasing relevance as digital control systems become more widespread. Many control design strategies rely upon a good process model. Within this framework, many parametric identification algorithms are currently available. Most have a common structure and share many strong and weak points. The goal of this chapter is to enable the reader to become acquainted with the practical use of least squares-based estimation algorithms, as a major representative part of this field. A thorough understanding of their general structure, their solutions and the problems that may be encountered should be acquired by anyone intending to apply these algorithms in a practical situation.
1.2
Control problem
Process control and signal processing problems very often involve the identification of an explicit model of the system under consideration. The model identified may then be used to design signal predictors, interference cancellation filters, equalisers, etc., if signal processing problems are considered, or appropriate control laws, if control problems are considered. Within this field, many control design strategies rely upon the identification of an accurate explicit process model to achieve good performance (e.g. explicit self-tuning regulators). Hence, there is a need for a deep study of identification techniques. Before going further into the identification techniques, some distinctions will be established among the terms identification, modelling and estimation. By modelling one usually refers to the process of setting up a set of equations a mathematical model of the system, based on data not necessarily obtained
experimentally, but based on physical principles, empirical relations or other a priori information [1]. Estimation refers to the process of obtaining the parameters of a given model. Models, in this case, usually take the form of stochastic linear differential or difference equations. On the other hand, the term identification refers to the process of selecting a parametrised model, from a set of them, and then obtaining its parameters. That is, identification refers to modelling followed by estimation. The modelling stage associated with process identification is often termed 'model structure determination'. The classical approaches to process identification deal with the analysis of either the process time response to step or impulse inputs or the process frequency-domain response. In the first case, techniques like the Strejc method lead to approximated models, suitable for controller design purposes. The use of stochastic processes or pseudo-random binary signals allows us to obtain the process impulse response by correlation. Non-parametric models are also obtained by process frequency response analysis, and some techniques will enable the selection of an approximated parametric model. Of course, this approach is suitable if a frequency-domain controller design method is used. Today, however, the use of on-line computer-based identification sehemes provides the tool to obtain continuous time or discrete time parametric models easily. In turn, there are many controller design techniques based on these models. Ljung [2] formulated a sequence of questions that any user of identification methods must answer: (i) (ii) (iii) (iv) (v) Has system identification anything to offer to my problem? How should I design the identification experiment? Within which set of models should I look for a suitable description of the system? What criterion should I use for selecting that model in the model set that best describes the data? Is the model obtained good enough for my problem?
Answering these questions is not an easy task; the answers depend on the knowledge that one has beforehand about the system to be identified, on the use foreseen for the model identified, and on the powers and limitations of the available techniques [ 1 ]. In this chapter some practical aspects concerning process identification will be reviewed, and tested on a waste-water pilot plant. In sulphuric acid production plants, one of the main concerns is the treatment of the waste-water, which leaves the production process with a high temperature and low pH value. Control actions have to be taken so as to reduce the temperature and drive the pH to values within an interval ranging from pH 6.5 to pH 8.5. In Figure 1.1, a simplified scheme of a pilot plant representing this process is depicted.
Figure 1.1
The warm acidic waste-water is introduced into a mixing tank to be cooled and neutralised. For that purpose, a basic inlet flow and a neutral cool water flow are added. The process is highly nonlinear and the variables of interest are coupled. The classical control procedure operates through actuation upon the cool water inlet flow (qw) to control the outlet flow temperature (7Y). On the other hand, by modifying the basic water inlet (qb), the outlet pH (pHs) may be controlled [3]. Faced with the problem of designing appropriate controllers, a good plant model is one of the first requirements. More specifically, in the case we are concerned with, identification of the relationships between the variables Ts/qw andpHs/qb is required. For this purpose, modelling based on the knowledge of the physical and chemical behaviour laws of the process may be undertaken. (The basic equations for the process are described in Appendix l.A.) Nevertheless, the identification of discrete-time parametric models through a computer offers the following advantages: Modelling from physical and chemical laws, as proposed before, besides needing a good knowledge of the process, will eventually require knowledge of physical and chemical process constants which may be difficult (if not impossible) to obtain; Parametric identification methods allow the modelling of process disturbances; Low-magnitude excitation signals may be used, which is important in general (and even more so in the case of nonlinear processes, such as the one considered here); Non-parametric models of the step or frequency response type may be obtained accurately from the parametric models [4]; Recursive on-line identification algorithms may be used if required (i.e. in adaptive control). Henceforth, parametric identification algorithms will be used to identify the aforementioned relationships between Ts/qw andpHs/qb.
1.3
Technical approaches
Parametric identification methods, either recursive or not, have been widely studied for many years [2,4-7]. All the methods can be grouped into two categories [4]: (1) identification methods based on the whitening of the prediction error; (2) identification methods based on the decorrelation of the prediction error and the regression or observation vector. Within each category, different methods exist which, in turn, can face different model structures. Apart from SISO (single-input, single-output) structures, multivariable versions of the algorithms are available to estimate MIMO (multiinput, multi-output) structures [8]. They will not be considered in this chapter. Attention will be restricted to two of the most widely used methods, the least squares (LS) and the extended least squares (ELS), both based on the whitening of the prediction error. The least squares method can be used to tackle models with a structure given by
()
(y
v(k)
(1.1)
where y(k), u(k)and v{k) are the input, output, and disturbance at instant A:, and A and B are polynomials defined as +anq~
where q~l is the backward shift operator. The disturbances are described by the stochastic process v(k) = H(q-])e(k) (1-2)
where H(q~) is a rational function which in this case equals the identity (i.e., H(q~x) = 1) and {e(k)} is white noise statistically defined by
E[e(k)} = E[e(k)e(k
The extended least squares algorithm attempts to estimate the parameters of a model structure where
As for the model structure used by the LS algorithm, the process output can be expressed as y(k) = aT(k)Q(k) + e(k) (1.4)
where the regression or observation vector and the parameter vector are defined respectively by:
97'
=[al9...,aH,b,,...bm]
It is well known that the least squares algorithm provides the estimated parameters 9 at instant k so that the criterion
e(*) = [v7'(*M*)]V(*)r(*)
where
(L6)
The recursive version of this algorithm can be readily obtained [4,9], yielding the recursive least squares (RLS) algorithm:
K(t + l) =
(1.8)
(1.9)
where P is the so-called inverse covariance matrix. The recursive extended least squares (RELS) algorithm follows the same structure given by Equations 1.7, 1.8 and 1.9, the only difference being the regression vector and estimated parameter vector components, which must be extended in order to estimate the coefficients of polynomia C(z~l) Thus, the new vectors become:
is used as an estimate of the white noise signal e. For both algorithms, a set of convergence conditions must be met [2,7]. Other varieties of estimation algorithm, apart from the least squares, may be used. The 'approximate maximum likelihood' and the 'instrumental variable' algorithms are widely used. The first of these performs better than least-squares identification in the case of coloured noise [10]. The instrumental variable algorithm attempts to decorrelate the residuals from the regression vector, thus avoiding an estimation bias. This is achieved by considering, at the regression vector, not the process output but an auxiliary variable highly correlated with the undisturbed process output. In principle, there is no guarantee that all choices of instrumental variables will provide good identification properties.
1.4
In the following section, knowledge from practical laboratory experience with the pilot plant will enable a thorough discussion of classical topics related to the application of identification algorithms to practical situations. First, the laboratory set-up will be briefly sketched.
The pilot plant used for the laboratory experiments was built using very cheap and basic materials as indicated below. Three tanks were used. Two small tanks are used to mix acid (H 2 SO 4 40% dissolved in water) and bleach with water, to obtain homogeneous inlet flows. A third, larger tank, which may have variable sections, is used as a general mixing tank. Pneumatic valves are used to manipulate the flows. The liquid level is measured using an electronic differential pressure sensor. All sensors used give 4 20 mA output current, which is fed to current-to-pneumatic converters (3-15 psi). A PC with a PCL-812PG PC-LabCard completes the equipment. Two different operating points of the pilot plant, given by the following values, were used: Basic ( qb ) 20.0(27.3) 18.0 1&0 Acid ( qa ) 11.11(25.0) 50.0 jkO Neutral ( qw ) 63.0(70.0) 17.0 ^5
Instead of acidic water, another interesting possibility for similar work would consist of using chemical salts and controlling the liquid's conductivity.
1.4.2
Parameter estimation procedures involve the pre-selection of certain algorithm parameters. For discrete-time models, the first issue to tackle is the sampling period selection. This will depend either on the time constants of the process (if the aim is just to model it) or on the desired time constants of the controlled closed-loop system if the main goal is to model it in order to design an appropriate controller. As is well known, the shorter the sampling period ts, the smaller the magnitude of the numerical values obtained for the coefficients of the polynomial B(z~x). The coefficients of A{z~l), on the other hand, will grow with its roots tending towards unity. Figure 1.2 shows the evolution with time of the different process variables for variations in the neutral water and basic inlet flows. Over-damped behaviour can be observed for both Ts and pHs, with apparent time constants of the order of 500 s for Ts and 250 s for pHs. Therefore, a first choice of ts = 25 s seems adequate for both loops. Later, once the model structure has been chosen correctly, identification may be carried out for different sampling periods, therein selecting the most appropriate value. Practical issues, such as available hardware and software restrictions, desired dynamics for the controlled process, numerical
conditioning of the estimated polynomial coefficients etc., will then be taken into account.
25 % 20 151 0 21 20.5 KXX) 2000 3000 MU) 5000 6(XX) 7(XX) KIXX) SKIM) KXXX) 20.5 0 UK) 90 KXX) I 10 91 0 9.5, : : KXX) 2IXX) : : : 3000 : ; : MU) 5IXX) : : : 6IXX) : 7IXX) : SIXX) : : 1 m ) KXXX) : 1 2<XX) 3<XX) 4(X10 5(XX) 6(XX) 7(XX) SfKXl M) KXXX) 0 1 10 g I) 9.2 2(XX) 4IXX) 6000 KO0O KXXX) I2IXX) 2(XX) 4(XX) 6(XX) K(XX) KXXX) I2(XX) 2000 4(XX) 6000 8000 KXXX) 12000
: ; : : : : : : :
KKX) 2(XXi
3000
4000
5IXX)
6(XX) 7IXXI
KIXX)
9000
' KXXX)
50
0 21.5
2000
4<xxi
am
sixx)
HXXXI
12000
'& 95
K.51 0
3IXX)
7IXX)
KIXX)
Figure 1.2
Evolution of plant outputs for variations in the basic inlet flow (qb > left) and neutral inlet flow (qw, right)
the case of on-line estimation, input-output data are available for each sampling period, and recursive calculations are required. The following approaches are possible: Off-line estimation Offset levels can be eliminated by subtracting the mean signal level; Drifts can be eliminated using filtered input-output variations [4]:
with-0.5 </, <0. This method can also be used in on-line identification. On-line estimation: In addition to the previous method for drift removal, the following, which can remove both stationary and non-stationary DC components, are also available: (1) use of data differences between samplings: yf(t) = y(t)-y(t-l), (2) uf (t) = u(t) - u(t -1) (1.12)
(3)
In Figure 1.3, the offset removal for the temperature loop is shown. 1.4.3.3 Scaling of inputs and outputs If the levels of inputs and outputs are very different from each other, then the convergence speed of the estimated parameters associated with the model polynomials will be very different. One solution to this problem consists of scaling data by multiplying inputs or outputs by the appropriate constant. Obviously the stationary gain identified will not be correct, and the estimated parameters of B(z~ ) will have to be re-scaled accordingly.
10
l(XKK)
12OOO
KKKM)
12OOO
KMKK)
12(KX)
t (sees.)
<S()()O
X(K)O
1(K)O()
12OOO
A correct model structure has to be determined for each of the process loops to be identified. In Section 1.3, two basic model structures were considered:
x
(1.13) (1.14)
So, determining the model structure involves: (1) (2) determining the disturbance structure; and determining the process structure, i.e. the correct orders for polynomials A and B and the correct delay d.
A set of tests are available for evaluating these points [4,7,12], including: Determination of A and B orders Delay, d Perturbations structure Test Loss Function Determinants ratio Residuals variance decrease Loss function Poles-zeroes cancellation Residuals analysis
Let us consider the pilot plant pHs/qb and Ts/qw loops and apply two of the most widely used tests for the determination of the polynomial order; the loss function and the residuals variance decrease methods. For delay determination, the
11
loss function test will be applied. Subsequently, analysis of the algorithm residuals will be carried out to decide on the disturbance structure. First, a model structure given by Equation 1.13 will be considered. A set of LS algorithms corresponding to different values of naJ nb and d is selected, and the sum of the squared prediction errors i.e. the loss function is computed over a data set for each of the runs. The structure giving the least value of the loss function, while maintaining simplicity, is chosen. It should be taken into account that if a model structure is evaluated on the same data set on which it was estimated, the loss function will always decrease as the model structure orders (na and nb) are increased (whereas this is not true for the delay d). However, from a given value of the number of parameters na + nh upwards, the decrease in the loss function becomes small, indicating that an increase in the number of parameters does not improve performance. Several tests, such as the Akaike's final prediction error, the information theoretic criterion [12] or the residuals variance decrease test, can be used to make a decision. Some practical guidelines to determine the required values, if there is no a priori knowledge about the process, are: na: typical values span the interval 1 < na < 3 nb: to tackle fractional delays nb>2
In Figure 1.4 the results for the pHs/qb loop are shown when the loss function test is used. Observe that the results given by the test are incremental, in the sense that once an optimal value has been reached for one of the parameters (na, nb or d), the test can be carried out over the other parameters consecutively, hence reaching the global optimum by consecutively reaching the optimum for each problem coordinates. Some results are shown for the residuals variance test used on the pHs/qb loop in Figure 1.5 (left). A value d=0 was assumed and different orders na and nb were tested, corresponding the best fit to na + nb = 4. Should the elbow at the optimum be not as neat as the one obtained in this case (e.g. Ts/qw loop, as shown in Figure 1.5 (right)), criteria based on information gain and structure simplicity may be used [4]. The second step is to deal with the disturbance model selection. As mentioned in Section 1.3, the LS algorithm aims at whitening the residuals (prediction error) sequence. Therefore, if the correlation function of residuals is calculated, it should vanish except for the autocorrelation. In practice, values of the correlation function will not vanish for time shifts greater than one, but should be negligible. Statistical criteria may be used to evaluate the correlation functions. Thus, in [4] the residual prediction error normalised covariance is calculated as:
12
1.35
1.251 1.2
1.4
1.6 1.8 2 2.2 2.4 2.6 pars.# {(ul),(al,u2),(al,u2,u3)} for#b=l and d=()
2.8
x 10
1 x 10'4
1.2
1.4
1.6 1.8 2 2.2 2.4 2.6 pars. # {(bl)t(bl,b2),(bl,b2,b3)} for #a=2 and d=()
2.8
0.2
0.4
0.6 0.8 1 1.2 1.4 1.6 Loss function vs. delay (d=0,l,2) for #a=2 and #b=2
1.8
Figure 1.4
Figure 1.5
Residuals variance test results for the pHs/qb (left) and Ts/qw (right)
13
If NCv{i) obeys the Gaussian distribution M 0,1 / 4N\ , where N is the data set length, then the relationship
2.17
(1.15)
should hold for a confidence interval of 3% (other confidence intervals may be considered). The magnitude of the residual prediction errors must not be very low compared to the process output magnitude for this test to be significant [4]. Thus, a relation between the typical deviations of the conditioned process output and those of the residuals, given by o(output)i'^{residuals) < 60 dB, should hold. If the converse situation holds, then the bias in an LS due to consideration of a simplified disturbance model can be neglected. The results of the residuals correlation test for the two pilot plant loops considered are shown in Figure 1.6. An improvement is obtained in both loops if an extended model is identified. The result is clear for the Ts/qw loop (right). For XhepHs loop (left) a simple LS-like model (Equation 1.13) may be considered.
2 x W
P r d i d i o n m o r . RLS.
x |o'
,10"
II
2000
4000
6000
XIXKI KKKKI
(I
2000
40110
6000
X000 KKKKI
V n n a i i s o i | x o l m m airrclalion.
10
III
10
10
Figure 1.6
Residuals and their correlations for the pHs/qb (left) and Ts/qw (right)
14
0 x 10"2 0.5
C-4
5000
KXXX)
15(XX)
5(XX)
KXXX)
15(XX)
-0.5
-1.5
0
50(X)
KXXX)
15(XX)
Figure 1.7
If the process input is not sufficiently exciting, numerical problems will arise in the inverse covariance matrix (Equation 1.9), leading to poor estimation or even to the so-called 'parameter blow-up' if a forgetting factor is being used (see Section 1.4.6). Possible solutions, if one has to cope with a process where there is lack of signal excitability, include the use of algorithms wherein a priori known values of the parameters are weighted in the loss function [13,14].
15
An important issue when the estimated model has to be used on-line, and needs to be updated when possible, is that of parameter tracking. Process parameter changes are not unusual and three main causes can be considered: (1) drifts in the process dynamic behaviour caused by temperature, time etc.; (2) changes in the process physical configuration, leading to changes in its dynamic behaviour (e.g. opening or closing of valves in liquid tanks). The change in the dynamic behaviour may be rather fast in this case; (3) large reference excursions in nonlinear systems. In this case the linearised transfer functions around the new operating point may differ significantly from the previous ones. 1.4.6.1 A Igorithm fading Use of a recursive identification algorithm is insufficient to ensure tracking of process parameter changes. In fact, if the loss function given by Equation 1.5 is analysed, it becomes clear that, as time passes and therefore the quantity of available data increases, the relative weight of the new incoming data, with respect to the whole data set on which Equation 1.5 is minimised, becomes negligible. Thus, as time passes, the algorithm becomes insensitive to new data and so to possible process dynamic changes. This effect is known as algorithm fading and can also be explained from an analysis of the inverse covariance matrix Equation 1.9. The second term on the right side of the equation is a quadratic term. Hence, if process input signals are sufficiently exciting, the P matrix components will decrease with time. The more excited the process, the quicker the decrease of P values. From Equations 1.7 and 1.8 it is clear that this will have a direct influence on the values of the estimated parameters. To monitor algorithm fading, the trace of the inverse covariance matrix can be used, since it gives an indirect measure of the magnitude of its components. In Figure .1.8 the pilot plant is driven for 7000 s around an operating point where nonlinearities are extreme. Subsequently, the basic inlet flow is increased so that the plant works around an operating point with a rather different dynamic behaviour. As can be seen in Figure 1.9, this change in dynamic behaviour is not reflected in a corresponding change in the estimated parameters, as it should be. The cause of this can be found by inspecting the covariance matrix trace, which shows that the algorithm has faded.
16
- 30
24.5 24
2000
4000
6000
8000
10000
12000
130
2000
4000
6000
8000
10000
12000
120
2000
4000
6000
8000
10000
12000
JS
18
2000
4000
6000
8000
10000
12000
6000 t (sees.)
8000
10000
12000
Figure 1.8
Evolution of variables for the pHs/qb loop. The operating point is changed at t = 7000 s
From the previous comments about algorithm fading and its relationship with the loss function, it turns out that to avoid the first, new data should somehow be weighted more than old data. This can be achieved with the use of forgetting factors. 1.4.6.2 Forgetting factors Forgetting factors are simply a way of weighting data in the loss function to be minimised by the estimator. They can take several forms [2,14,15] including fixed and variable, directional etc. The most widely used type, due to its simplicity, is the so-called exponential window, which uses the loss function: (1.16) where X is the forgetting factor. From this cost function the following recursive equations are obtained: K(t
0.
17
5 0
-2 0
0.2
5000
10000
15000
-5
5000
10000
15000
0.2
5
X)
o
-0.2
5
X>
0
-0.2
5000
10000
15000
5000
10000
15000
0 -100 -200
^YVt^^tf**!**^^
0 2000 4000 6000 : exp. w.=0.96 , 8000 : exp. w.= 1.0 10000 12000
co
1000
C Q 200
o
5000 10000 15000
3 -1000
IOO
5000
10000
15000
Figure 1.9
Parameter estimation for pHs/qb; RLS algorithms with and without exponential window (1.18)
iyP(t)
(1.19)
k+a(t + l) P(t)a(t + l)
The results obtained from the pilot plant, when an exponential window is used, are shown in Figure 1.9. During the first 7000 s, the estimated parameters suffer rather large variations at the time instants where the input changes, indicating a strongly nonlinear behaviour around the corresponding operating point. Smoother parameter changes could be obtained by increasing the exponential window X. When the plant is driven to the second operating point, only the algorithm using a forgetting factor is capable of tracking the process parameters. Thus, if the module of the algorithm residuals in decibels is plotted for both algorithms, it can be observed that its value is appreciably higher if no exponential window is used.
18
The use of forgetting factors may introduce problems. If the process inputs are not sufficiently exciting, then the quadratic term in Equation 1.19 becomes small, and thus
If X is small the gain term in Equation 1.17 will eventually have large fluctuations, leading to similar effects in the estimated parameters, which is known as 'blow-up'. Additionally, if the forgetting factor is too low, noise tracking by the estimated parameters will appear as a side-effect. Therefore, relatively high values are used (e.g. 0.96-0.98 for exponential windows), although they may be temporarily lowered so as to improve process parameter tracking. In Figure 1.10 it can be seen how a value that is too low for the exponential window X causes very noisy estimated parameters, although in this particular case the variation associated with the process input is high enough to prevent the estimated parameters from blowing-up. Some of these problems will also be considered in chapter 14.
1.4.7
Two main situations may be considered when identifying a process in a closed loop structure [7]: (1) Indirect process identification a model of the closed loop is identified. Afterwards, assuming that the controller is known, the process model is calculated by deconvolution; (2) Direct process identification the process model is directly identified. The controller need not be known. Within direct process identification, two main alternatives can also be considered if the process input and output are measured for identification: (1) no external disturbance is applied; (2) an external disturbance (measurable or not) is applied. In the first case a set of identifiability conditions must be met to ensure convergence. For the second, if the additional external disturbance added to the process input is sufficiently exciting and uncorrelated with the process noise e,
19
only the orders of the process must be known, and no additional identifiability conditions are required.
2000
40<X)
6000
8000
KXKX)
12000
2-
o
2000 4000 6(KX) 8(X)0 I( ) ( ) ( ) ( ) 12000
100
2000
4000
6OOO
8000
10000
12<X)()
is
50
()
2000
10000
12000
Figure 1.10
Parameter estimation for Ts/qw; RLS algorithms with low exponential window
Recently, it has been shown that the best model for control design cannot be derived from open-loop experiments alone [16]. If the goal of process identification is to use it to implement a controller, the controller to be implemented should be taken into account by the process identification algorithm. However, in most cases, this controller is not available. Hence, iterative process identification and controller design methodologies have recently been devised [17,18].
1.5
Conclusions
Some practical issues concerning process model parameter estimation have been reviewed and applied to a practical case. The first conclusion that may be drawn is the rather iterative character of the estimation process. That is, it involves the selection of a set of choices (model structure, kind of algorithm etc.) beforehand, which must be tested and adjusted. A high degree of precision in modelling the process can be reached at the cost of increased model complexity. Thus, a tradeoff must be established based on the final aim of the identified model. On the other hand, to cope with complex, variable dynamics, the estimator tuning parameters (forgetting factors etc.), the model structure and even the estimating algorithm employed must be adapted on-line. Therefore, a supervisory
20
level is often required for the correct functioning of the overall system (this is especially required when using estimators in a framework of adaptive control).
1.6
1
References
BOHLIN, T.: 'System identification: prospects and pitfalls', (SpringerVerlag, Berlin, 1991) LJUNG, L. and SODERSTROM, T.: 'Theory and practice of recursive identification', (MIT Press, 1983) MARTINEZ, M., et al.\ 'Waste-water treatment test plant control: computer aided modern control teaching', IFAC Trends in Control and Measurement Education, 1988, Swansea, UK, pp. 53-59 LANDAU, I. D.: 'System identification and control design', (PrenticeHall, 1990) ISERMANN, R.: 'Parameter adaptive control algorithms: a tutorial', Automatical 1982,18, pp. 513-528 ISERMANN, R., and LACHMANN, R.: 'Parameter-adaptive control with configuration aids and supervision function', Automatical 1985, 21, (6) ISERMANN, R.: 'Digital control systems, 2nd edn.', (Springer-Verlag, Berlin, 1991) GOODWIN, G. C. and SIN, K. S.: 'Adaptive filtering, prediction and control', (Prentice-Hall, 1984) WELLSTEAD, P. E., and ZARROP, M. B.: 'Self-tuning systems, control and signal processing', (Wiley & Sons, 1991) JOHANSSON, R.: 'System modeling and identification', (Prentice-Hall, 1993) ASTROM, K. J. and WITTENMARK, B.: "Computer controlled systems: theory and design', (Prentice-Hall, 1988) LJUNG, L.: 'System identification: theory for the user', (Prentice-Hall, 1987)
2 3
4 5 6 7
8 9 10
11 12
21
MORANT, F. and ALBERTOS, P.: 'An algorithm for parameter estimation with multiple undefined solutions: the blending problem'. 7th IF AC Symp. on Identification and System Parameter Estimation, York, UK, 1985 LAMBERT, E. P.: 'Process control applications of long-range prediction'. Report OUEL 1715/87, 1987, Dept. Eng. Science, Oxford University, UK FORTESCUE, T. L. et al: 'Implementation of self tuning regulator with variable forgetting factors', Automatica, 1981, 17 SCHRAMA, R.: 'Accurate identification for control: the necessity of an iterative scheme', IEEE Trans, on Automatic Control, 1991, 37, (7), pp. 991-994 ALBERTOS, P. and PICO, J.: 'Iterative controller design by frequency scale experimental decomposition', Proc. of the 32nd Conf on Decision and Control, San Antonio, Texas, 1993 LEE, W., ANDERSON, B., KOSUT, R. and MAREELS, L: 'On robust performance improvement though the windsurfer approach to adaptive robust control', Proc. of the 32nd Conf on Decision and Control, San Antonio, Texas, 1993
14
15 16
17
18
1.7
The physical system may be described by the following equations: Flow balance: (1.21)
i n
i w
i a
is
dt where acidic waste-water inlet flow neutral water inlet flow basic water inlet flow waste-water outlet flow mixing tank liquid level mixing tank section at the liquid level
K
A
22
d-23)
where Kp : discharge coefficient at the mixing tank output s : output section g : gravity constant. Thermal balance: CJaqa + CJhqh + CJwqw = C,T,q, + C , ^ ^ where Q.1 + K'e{Ts -To)-C, (1-24)
cr
M Kr e
specific heats of the corresponding flows temperatures of the corresponding flows heat of reaction total mass in the mixing tank heat conduction transmission coefficient mixing tank surface thickness environmental temperature
An approximation can be obtained by assuming all specific heats are equal to 1 cal/gC and that the heat of reaction is negligible. Ionic balance:
d(Ah OH-
where
pHs, pHa, pHb, pHw [OFT]a, [OJT^lOfr^ [H+]a [OIT]S : pH of the corresponding flows. : oxidril concentration : concentration of H+ ions at the acid inlet flow
dt
(1.26)
Chapter 2
2.1
Introduction
A high percentage of successful control engineering solutions are implemented by conventional controllers, such as single-loop, multi-loop, single-input singleoutput (SISO), multiple-input multiple-output (MIMO) and multi-step controllers. In many cases the PID structure is used. Experiments are important in the process of developing relevant knowledge, experience and skills. These experiments have to demonstrate and develop the connections between theory and practice transparently. A special electronic analogue computer facilitates a great number of instructive experiments on single-loop, multi-loop, multi-variable and multi-step control systems. At different points in the system, signals are measured and their concordance with theoretical results can be assessed. In contrast with digital computer techniques, simulation using analogue systems and signals is often more closely related to real-world continuous processes. Experience in measurement is also obtained and characteristic system behaviour can be recognised. The usefulness of this type of simulation of the transfer behaviour of systems and components is shown with reference to different examples.
2.2
Motivation
Applying their knowledge of system and control theory the students experimentally grasp the behaviour of the different transfer elements and connections between them. The experiments help to understand: the properties of transfer elements; the stationary and dynamic behaviour of different control structures;
24
Control engineering solutions: a practical approach the command control and the influence of the reference input; the suppression of disturbances; the stability of systems.
Using given plant models, different types of analogue controllers can be used and the properties of the control loop can be studied. Tuning rules using transient responses are applied and the resulting controllers are tested by observation of these responses. Experiments using multi-loop and multi-variable systems are also possible and the advantages and disadvantages of multi-loop systems can be recognised. Use of a two-variable system allows the influence of the coupling coefficient to be studied applying different design methods. Besides a sound understanding of elementary control structures the student gains experience in experimentation and measurement.
2.3
Technical approaches
In the following the properties of different types of controllers are presented as a basis for practical experiments.
where the control error is e, the weighting factor r, the static plant amplification ks and the correcting signal y.
25
Here two methods of introducing additional controlled variables to reduce the influence of disturbances are presented: using a secondary controlled variable; and cascaded control.
In the case of the secondary controlled variable, the large time constants of the plant are compensated by an auxiliary controller, which is in parallel with the plant (see Figure 2.15). For cascaded control the faster work rate of the inner control loop (relative to the outer loop) reduces the influence of disturbances (Figure 2.16).
2.5.3
Two-variable control
A two-variable transfer element is a special case of a multi-variable transfer element. It has two input variables and two output variables. The general case of multivariable systems will be covered in Chapter 9 The input variables yv y2 influence both output variables, and the output variables x p x2 depend on both input variables (Figure 2.1). G(s) is the transfer matrix between the input variables yvy2 and the output variables x1? x2. G(s) = Su(s) S2l(s) Sn(s) S22(s)
Figure 2.1
Many technical multi-variable plants can be regarded as two-variable plants. The design of a controller for such plants includes the following tasks: designing in time or frequency domain (here the frequency domain is used);
26
Control engineering solutions: a practical approach selecting a controller with complete, partial or no decoupling; finding suitable co-ordination between control and controlled variables; design of the main controllers and decoupling controllers; estimation of control behaviour, disturbance rejection, stability and integrity by simulation and in practice.
Figure 2.2 shows the structure of a control loop with plant S, decoupling controller K, main controller R, the vector of controlled variables JC, disturbance variables z, command variables w, control variables y and control errors e.
s
R22 J
s
-"^s \ 0
1 S,, \ S 21
S 12 \ S22 /
Figure 2.2
or
Sn 0
with the coupling coefficient
0 Sr, |
l-C|-S21/522
-Sn/Su 1
(2.3)
(2.4)
2.3.3.1 Design of the main controller without decoupling Using the standard method for the resulting SISO plant (Figure 2.3), the main controller Rt = Ru has to work with a plant characterised by
27
SI
i,j = 1,2, j * /. Equation 2.5 contains the command transfer function of the other loop with disconnected controller Ri9 (2.6)
^
(
w ft.
Vfen
6*-
s 21
R2
^22
Figure 2.3
For the design of the controller Rfc), the other controlled loop is supposed to be approximately unity, that is, (2.7) Therefore the controller is to deal with a plant transfer function (2.8) like a SISO system. In this case the coupling within the plant is considered by the coupling coefficient C(s). It is useful to confirm the results by simulation. The characteristic polynomial for the stability check is
\-C{s)F](s)F2(s) = 0
with the command transfer function according to Equation 2.6.
(2.9)
28
2.3.3.2 Design of decoupled control If a good plant model is available, the decoupling controller can be calculated from Equation 2.3. The result, given in Figure 2.4, is a controller with so-called P structure according to the transfer matrix in Figure 2.1. Because of the inversion of the transfer functions and the conditions for numerator and denominator degrees, the decoupling controller is often only approximately realisable.
x2
Figure 2.4
Another mechanism to build the decoupling controller is based on the V structure. Using the P-to-V conversion presented in Figure 2.5
r h
ro Vn\ K oj
Figure 2.5 P-to- V conversion
LJ
2.10)
for the feedforward and feedback transfer, the simple decoupling controller in Figure 2.6 results.
29
F22=l
Complete decoupling guarantees autonomous control, but the disturbance behaviour of such a system can be worse than that of a control system with partial or no decoupling.
2.3.4
Many technological plants contain static non-linearities, e.g. saturation and dead zone. For economic reasons, industrial controllers also use non-linear elements. In many cases the control loop has the form of Figure 2.7 with separate static nonlinear and linear dynamic transfer elements [3].
W
Figure 2.7
An analogue simulation is useful to investigate the dynamics of the system, especially its stability behaviour. 2.3.4.1 Application of the method of describing functions Under the precondition of low pass behaviour for the linear part and some simplifying assumptions (e.g. symmetry of the non-linear element, zero mean) this approach can be used to prove the stability; estimate the margin of stability; calculate the amplitude and frequency of the oscillation.
30
The main idea is to describe the non-linear transfer by means of a function N(A) of the input amplitude A as the relation between the fundamental oscillation of the output and the sinusoidal input. Figure 2.8 shows a typical three-level element and the corresponding describing function N(A).
enables a study of the existence of a limit cycle to be undertaken, together with its frequency and amplitude, which can be determined analytically, numerically or graphically. 2.3.4.2 Phase plane For non-linear systems of second order, the phase plan is a very instructive way to represent dynamic behaviour. Representation in the phase plane can be achieved by: the method of isoclines; or the method of switching trajectories.
Isoclines help to sketch trajectories by beginning at a starting point and continuing in the given direction of isoclines, Figure 2.9. The field of isoclines is calculated from the second order state equations dx/dt=f(xx) dx/dt=f(xx)
=f2{xl9x2)
( 2 - 12 ) (2.13)
dx2
=c
Analogue controller design Equation 2.13 describes the course of the isocline for a given inclination c.
31
0.4
Figure 2,9
Field of isoclines with marked inclinations, switching lines Ln L2 and trajectory x(t)
If the non-linear element, such as a clipper or multi-level element, is step-wise linear, then the trajectories can be constructed by switching the solutions of the different linear fields. Switching lines separate the different fields (Figure 2.9). Simulation is a useful method of checking the results.
2.4
The laboratory set-up consists of a special electronic analogue computer with a programmable signal generator, a control unit with different modules implementing typical transfer elements, an oscilloscope and an X-Y recorder (Figure 2.10). Control structures of different complexity can be built, as the different components are linked by wires according to a given block diagram. The programmable signal generator produces the necessary inputs for control and distortion. By means of the oscilloscope and X-Y recorder the signals can be observed at any point. Thus it is possible to investigate the effects of different control structures and transfer elements on the output signals. The use of the set-
32
up promotes the understanding of control structures and helps to develop student's skills in measurement.
Figure 2.10
Laboratory set-up
For the simulation of plants, controllers and control loops, the following modules are principally necessary: lag elements of first and second order; oscillating elements; integrators and differentiators; amplifiers; two- and three-level transfer elements (non-linear controller); signal generators and control unit; X-Y recorder, oscilloscope.
as shown in Figures 2.10 and 2.11 and Table 2.1. The flexibility of the three-level transfer element is shown in Figure 2.12. The set up makes possible a great variety of experiments. Figure 2.12 shows the structure of an adjustable non-linear transfer element. The circuit of a PT2 transfer element (lag element with two time constants) is represented in Figure 2.13. The programmable signal generator produces step, ramp, sinusoidal and random functions. All outputs and inputs are short-circuit and voltage protected. Therefore arbitrary connection of inputs and outputs of the same module, and between different modules, will not damage the equipment. The operation range of the output voltage lies between -10 and +10 V.
33
^overload detector
Figure 2.11
Figure 2.12
The system operates in real time and repetition mode. The variables of interest are represented by the X-Y recorder and the oscilloscope, respectively. Time scaling by a factor of 1000 permits a 'permanent' representation by oscilloscope in the repetition mode.
34
-15V
Figure 2.13
2.5
The experiments include: connecting the transfer elements according to the desired block diagram; measuring transient functions of controlled variables and manipulating variables in different control structures; investigation of the influence of system parameters on transient and stability behaviour; tuning controller parameters; discussion of the results.
35
y T (s)
G(s) k
1/(57) kl(\+sT)
io... no
0.1 ...1.1 Ty. 0.1 ... 1.1 I ... n T. 0.1 ... 1.1 0.1 ... 1.1 1... 11 0.1 ... 1.1 1... 11 0.1 ...1.1 1... 11 TN: 0.1 ... 1.1 1 ... 11
l ...n
io... no
a = Oov\
0... 10
T=Ty/20
The following have been selected from the great variety of experiments possible. For the given control loop in Figures 2.14, 2.15 and 2.16, the response of the correcting variable and controlled variable should be measured to a step of reference and/or disturbance variables, showing their dependence on different parameters of the PI controller.
36
O-H
1+-
1 1 + sT,
1 1 + s72
Figure 2.14
S2(s) (UsT,
(i + sr 3 )(i + sr 4 )
. sT 1 + sT R(s)
Figure 2.15
S,(s)
S2(s)
f
1 (\ + sTi)(\ + sT2)
~^<
r
(i + sr3)(i + sr4)
/?(s)
'
KU\
Figure 2.16
/c d+
_ r^ w
Cascaded control
37
A simplified model of a real technical plant, the bottom of a distillation column, is given in Figure 2.17. The input variables are vapour streamy and output material flow^, and the output variables are the temperature xT and the level xs. The design of the controller mainly depends on the definition of the input and output vectors j> and JC, respectively.
0)
YH
Jf
Ik
s K4 1 + sT
(D
YA
(2)
.1
fi
Ks s (2)
Figure 2.17
The following problems are set: co-ordination of the regulating and controlled variables, respectively; design of a controller without decoupling and with complete decoupling; and measurement of the command and disturbance behaviour.
Figure 2.18 shows an example of temperature control of a plant of second order with a two-level controller.
-20C
20C
Figure 2.18
Temperature control
w, basic heating power, a additional heating power
38
Here the problem is to compare theoretical with measured results, especially in the behaviour of the transient trajectory.
2.6
Illustrative results
An essential goal of these experiments is to become acquainted with the step responses of different control systems in the cases of reference control and disturbance rejection [w(t) and z(f) respectively].
2.6.1
Results from the suggested experiment are presented in Figures 2.19, 2.20 and 2.21.
x, V
(w=1V)
Figure 2.19
2.6.2
Two-variable control
Based on the plant model given in Figure 2.17, the calculated decoupling controller and main controller give the resulting control system in Figure 2.22. Figure 2.23 shows the experiments with reference step changes wx = 1 V and
39
x, V
Figure 2.20
Figure 2.21
40
fl,(s)
>n
> \ \_
,
sT
- yi -
1 + sT
R2(s)
Figure 2.22
Two-variable control
~' t^ 1 '"m~' Kx = 1.28s", K2 = 1.20s"1, K3 = 0.40s"1, K4 = 0.32, T= 1 s
x, v
r OT = 1.3 s; r r a = 1-3 s
Figure 2.23
41
e,C I *
700
300
10
15
t/s
Figure 2.24
Transient of temperature control in the time domain (phase plane according to Figure 2.9)
2.7
Conclusions
Such simulations show that: (a) the design of the controller depends on the type and location of input signals for command and disturbance, whereas a control loop sufficiently suppresses only those disturbances for which it has been designed; (b) high control quality demands high power and rapid rate of change of the correcting variable; (c) normally many solutions exist for any one problem and the results are often equivalent. Simulation is an important step in the design process. Therefore an early and adequate introduction to simulation is important to the student. Use of an analogue computer can give a more accurate approximation of the physical reality, together
42
with added clarity when measuring the interesting variables, than digital computer simulation provides.
2.8
1
References
CHIEN, K. L. HRONES, J. H. and RESWICK, J. B.: 'On the automatic control of generalized passive systems', Trans. ASME, 1952, 74, pp. 175185 REINISCH, K.: 'Application of a model control loop to obtain design rules for linear control systems and to calculate of system parameters', MSR, 1962, 6, pp. 245-251 (in German) COOK, P. A.: 'Nonlinear dynamical systems' (Prentice/Hall, Englewood Cliffs, NJ, 1986)
Chapter 3
3.1
Introduction
Classic controller design is most commonly used in automatic engineering. Standard industrial controllers use different variants of PID-control or lead-lag compensation. Digital controllers and PCs with industrial interface cards have widened the field towards more advanced control algorithm implementation, even if some of them are based on classic controller design. A review of theoretical and practical approaches to classic controller design methods is presented here, together with possibilities for digital realisation. Some special PC software, developed to implement some common digital algorithms, is also presented. The software is mainly for educational purposes, but may also be helpful in automatic system research and development.
3.2
Many control problems arise from the design of engineering systems. Such problems are typically large-scale and fuzzy. Common examples include the design of power plants, chemical processes, metallurgical processes, industrial robots, aircraft and biomedical systems. On the other hand, control theory deals with small-scale, well-defined problems. A typical problem is that of the design of a feedback law for a given single-input single-output system, which is described by a differential equation with constant coefficients, so that the closed-loop system has given poles. The system theory related to this problem usually uses methods based on the transfer function (Laplace transform), the frequency domain or, sometimes, the time domain. Among the many difficult problems relating to control system design, it is important to note the relationship between process design and control design. In
44
the early days of automation, control systems were often introduced into existing, or already designed, processes to improve their operation. This still happens today, even if the process and the regulator are designed together as they are in many cases. The resulting drawback is that specific regulator structures, actuators, sensors and estimators need to be designed to suit the specific situation. The regulator's design is therefore strongly influenced by the effort that has been put into the process design. In many cases it is not economical to make much effort, especially if a standard controller will suit the system. Classic automatic control system design can be understood simply as a problem of selecting the type of regulator and calculating its parameters to ensure the desired static and dynamic behaviour of the controlled system. The specific features of such control systems are: division of the system into two components: the plant, including the actuator and the sensor, and the controller (the inertia of which is negligible in comparison with that of the plant); use of standard controllers. Thus the generalised design problem reduces to the selection of a suitable controller, which would ensure the desired control law, and adjustment of the controller's parameters to suit the plant's required dynamic and static responses. Such control loops mostly use a standard, all-purpose regulator with adjustable parameters. The appropriate parameters are found by using a variety of defined tuning rules. Modern regulators use microprocessor-based computer control. This increases the flexibility of realisable control laws, operation is easier and the controller is cheaper and more reliable. Control system design is a compromise between many factors. The following issues must always be considered: model uncertainty, command signals, actuator saturation, disturbances, state constraints, regulator complexity and cost. Few design methods consider all of these factors. It might be argued that a good design is almost never the best one. Therefore, investigation through analysis and/or simulation is also necessary and must be carried out with care. Classic design first sets the control system configuration. Figure 3.1 shows structural diagrams of the most popular controlled systems. In the first case (Figure 3.1a) the most commonly used cascade (series) compensation is shown. The compensator (regulator) is incorporated into the control loop. The open-loop transfer function of the compensated system is:
G(s) = Gc(s).Gp(s)
where: G(s) is the resulting open-loop transfer function; Gc(s) is the transfer function of the cascade (series) regulator; Gp(s) is the transfer function of the uncompensated process.
45
In parallel compensation (Figure 3.16) the regulator is situated in a special feedback loop. In this case:
G(s) =
where:
+ G2(s)-Gc(s)
G(s) is the resulting open-loop transfer function; Gx(s) is the transfer function of the outside compensating feedback loop part of the system; G2(s) is the transfer function of the inside compensating feedback loop part; Gc(s) is the transfer function of the parallel regulator. Formally, parallel compensation can always be selected in such a way as to obtain the same result as in series (cascade) compensation, and vice versa. In practice, the choice between these compensating structures depends on the operational characteristics of the component functional elements. Both of these methods use feedback. Their advantage is that sensitivity to disturbances and to system parameter variations is reduced. Feedback is most effective when the process dynamics need a high bandwidth. For this reason most valuable design methods have been developed using these systems. The third diagram (Figure 3.1c) shows a special structure and is mostly used for measurable disturbance compensation. The regulator is part of a supplementary feedforward loop, along which the signal to be compensated is introduced into the system. This compensation method differs substantially from the two above in its working principle. The structural diagram shows that this compensation cannot affect the stability of the closed-loop system, but improves the system's performance by reducing the dynamic error related to the disturbing action that is to be compensated. It is easy to demonstrate [3] that by selecting the regulator transfer function with the condition:
the dynamic error of the system can be eliminated, irrespective of the nature of the action X(s). Thus, the design of a feedforward compensator is in essence a calculation of the inverse of a dynamic system.
46
(a)
X(s) Y(s)
(c)
Figure 3.1
The use of this method involves many technical difficulties in analogue realisation, which often prevent complete elimination of the dynamic error. This is because the transfer function G2{s) represents (as a rule) an integrating, inertial or oscillatory element, or a combination of them (a real physical element). As a consequence, the compensating element transfer function should correspond to differentiating elements, whose practical implementation is difficult to achieve. The advantage of feedforward, compared with feedback, is that corrective action may be taken before the disturbance has influenced the variables. Since feedforward is an open-loop compensation method, it requires a good process
47
model. The use of feedforward control is better applied to digital control, where this is widely permitted. The compensation methods described above are not mutually exclusive. On the contrary, in many cases, to achieve the desired performance a combination of feedforward and feedback compensation must be applied. A common example is shown in Figure 3.2, where GcX(s) and Gc2(s) are the feedforward and feedback compensators, respectively.
p
X(s)
s)
>
Y(s)
Figure 3.2
Selecting a suitable control system configuration strongly depends on the designer's skill and experience. Specifications can be overly contradictory or too strict which can lead to unsatisfactory or unrealisable solutions. Classic controller design methods will give always an approximate solution, which nevertheless can be considered the best. For example, assuring the desired phase margin or gain margin for a controlled system does not mean that this solution is optimal if a different performance indicator is used. In everyday practice, automatic control systems use very different regulators or compensators. Analogue realisations can be simple RC-networks (low-pass, highpass or band-pass filters) or may include active elements (operational amplifiers) too. In most cases, standard industrial controllers implement different versions of PID control. If they are microprocessor-based, translation into a digital form of the PID control law is implemented within them. A very short sampling interval is also characteristic.
3.3
There are many dedicated methods used to estimate regulation performance and to design regulators (compensators). Regulation problems are often solved by feedback. Feedforward techniques are also useful to reject the measurable disturbances or in servo-system design.
48
This section deals only with single-input single-output, linear system control design methods, especially those that belong to classic control design. The brief overview of each method is given for introductory purposes the reader is advised to study the relevant literature in more detail.
3.3.1
Controller design based on frequency-response In its early period, the theoretical development of control system design was characterised by Nyquist, Hall, Nichols and Bode. They developed graphical analytical methods of design that are consecrated in the literature with their names. Easy to understand and apply, all these methods are commonly used. Many computer-aided tools were subsequently developed from them. The methods are based on the frequency response of an open-loop system and do not require the solution of the model's differential equations. Estimation of the transient and the steady-state performances of the closed-loop system, such as magnitude and phase margin, bandwidth, cut-off frequency, oscillation index, etc., is also possible. In consequence, compensators designed this way mostly have leading, lagging or PID effects, or a combination of these. Detailed description of these methods can be found in almost any process control theory book published in the 1960s or even 1970s [2,3]. Controller design based on root locus Root locus is a graphical analytical method for analysis and synthesis in the s-plane for linear control systems. Its main advantage results in obtaining the time and frequency domain specifications directly from the characteristic polynomial roots (poles) location in the s-plane. A disadvantage of the method is that the design procedure is a step-by-step approach. A solution is easily achieved if computer aid is available. We can mention particularly the work of Evans and Truxal, but detailed descriptions of the method can be found in most of the books mentioned above.
49
of polynomials), so that the closed-loop system has the desired properties. A detailed description of the method appears in many control theory books from the last two decades, many of the latter deal especially with digital control design [4-6]. The method can be presented in a very simple form as follows. Let us consider a feedback control (Figure 3.1a) and G0(s) the transfer function of the desired closed-loop system. In this case the desired open-loop transfer function will be:
l-G0(s)
Gp(s)
The method can be applied to both continuous and sampled linear systems. The design method usually uses an approximate process model and many of the subjective judgements of the control engineer can be incorporated into the desired behaviour model. Pole placement is a general approach in single-input single-output, process control design. Many other design methods, such as root locus, dipole compensation, Smith predictor, Dahlin control algorithm, dead-beat control, model algorithmic control etc., can also be considered as particular aspects of the pole placement design. Two of these will be presented as suggested experiments. Controller design based on time domain response Usually the performance of a controlled system is expressed in the time domain by the specification of its step or impulse response. These types of specification include rise time, overshoot, settling time, steady-state error etc. In most cases the design problem is solved using analytical methods. The performance criterion that satisfies the desired time specifications is usually expressed as a time integral optimisation criterion. The synthesis problem is formulated to minimise this time integral, where the integrand is commonly a quadratic loss function. The mathematical problem is well known in technical literature as the minimum variance control problem for the input-output approach, or the linear quadratic problem for the state-space approach. A detailed description of this issue can be found in References 4-7. This is a very modern design technique but serious difficulties may appear in the analytical solution process. Also, there is no general rule for choosing the form of the integrant function. In many cases only computer aid can help.
50
Smith predictor design The Smith predictor is a special design method for dead-time process control. The block diagram in Figure 3.3 shows the working principles of such a regulator.
Regulator X(s) Process U(s) Gc(s) e- sT hG(s) V(
ft 9
Gp(s)
Figure 3,3
The method can be useful in the compensation of large dead-time processes, where the part of the process with the dead-time (time delay) cannot be separated but the dead-time itself may be precisely determined. Using this method, the regulator does not compensate the dead-time delay, but improves the performance of the part of the process without dead-time. It is easy to note from Figure 3.3 that the regulator contains the time delay, so it is necessary to store the signals. This is difficult using analogue implementation, but easy using a digital computer. The time delay can be represented by a vector, which is shifted at each sampling instant.
3.3.3
Difficulties in precise estimation of process parameters, the non-linear behaviour of real processes, the stochastic character of certain disturbances and the difficulties in finding analytical solutions, all lead to limited usefulness of analytical or graphical-analytical methods. Another important reason for introducing empirical methods of controller design is the fact that standard controller tuning and performance checks must frequently be done locally in the working process. Even if analytical controller design is available, final 'finetuning' is necessary almost every time. Empirical methods have been developed for tuning standard controllers. For a PID controller this means primary parameter setting, namely the proportional factor (or proportional band), the integral time constant and the derivative time constant. The relevant literature gives many examples of such rule-of-thumb methods. This demonstrates again the fact that controller design is a very specific domain,
51
where both theoretical knowledge and practical experience are important. Among these design methods, two have been accepted as more general: the step response method and the ultimate sensitivity (Ziegler-Nichols) method. A detailed description is available in almost any control theory or automatic control book [2,4,5].
3.4
Laboratory set-up
The basic laboratory equipment available in almost any process control laboratory (signal generator, DC current or voltage source, technological models, analogue or digital computers) is very useful. However, new software will need only an IBM PC (or compatible) and, optionally, a common data interface card (PCL 718). Practical experiments can be done using real working models or process simulators (analogue or digital computers) with corresponding interfaces or, lately, the software may have its own demonstration options (if the interface card or the real model is missing).
3.5
The alternative laboratory set-up is, in fact, a controller simulation program. This is PC-implemented, real-time operating software for a standard industrial controller. The software was developed by the authors and is used in their teaching. The recommended minimal hardware configuration is: IBM PC 80286 AT (16 MHz clock speed) or above; VGA display; Microsoft Mouse (driver installed); MS DOS 3.0 (or above); PCL 718 commercial data acquisition card (optional). The software simulates the physical functions of a standard industrial controller, but it offers opportunities for higher control algorithm implementation too. Once started, the screen display shown in Figure 3.4 appears. The basic state of the controller at start-up or reset is: manual mode of operation; set-point variable (SP) and manipulated variable (OUT) are set to zero; no control algorithm installed (TYPE = NONE); no filtering for the process variable (FILTER = OFF); no active alarms (ALARMS LED does not blink); 20 ms sampling period;
58
design of a first-order Smith predictor; influence of tuning parameter (KJ change: experiments on demonstration examples and/or real processes.
3.7
Illustrative results
Figure 3.6 illustrates some results obtained on the demonstration process examples given. Working with real processes (or models) in the laboratory environment, the teacher will have the task of linking the tool to the particular laboratory equipment available.
I I I I I i i i 11 S I I i I I I S
II
Figure 3.6 Illustrative working example of the controller
59
3.8
Classic controller design incorporates much of the basic knowledge that every control engineer must possess. The ability to teach it well, to make it easier to understand for students, is therefore important. The PC-implemented controller presented here is a useful tool and positive reactions from students demonstrate its advantages. Further development of the software is directed towards implementation of a fuzzy Pi-controller. This is in progress at the Department of Process Control, University of Miskolc, Hungary. Extensions are also needed to realise general pole placement design in input-output approach, state observer design and state control design in the state-space approach, but implementation of these methods on a PC needs different concepts and probably another software environment.
3.9
References
There are hundreds of books and articles which deal with the classic methods of controller design. These books and articles mostly relate to the problems of control theory or automatic process control. The reference list here is merely an extremely small selection of representative works. 1 AZZO, J. D. and HOUPIS, C. H.: 'Feedback control system analysis and synthesis', (Mc-Graw Hill, 1966) KUO, B. C : 'Automatic control systems', (Prentice-Hall Inc., 1966) NETUSIL, A.: 'Theory of automatic control', (MIR Publishers, Moscow, 1973) ASTROM, K. J. and WITTENMARK, B.: 'Computer controlled systems: theory and design', (Prentice-Hall Inc., New Jersey, 1990) ISERMANN, R.: 'Digital control systems', (Springer Verlag, Berlin, 1989) MIDDLETON, R. H. and GOODWIN, G. C : 'Digital control and estimation: a unified approach', (Prentice-Hall Inc., New Jersey, 1990)
2 3
4 5 6
Chapter 4
In this chapter a problem of practical controller implementation that is often disregarded is presented, with the aim of demonstrating reasons for its occurrence, consequences if it is neglected, and some technical solutions for its removal. Close links to a correct control system simulation will be also shown.
4.1
Introduction
In each technical implementation of a control system the magnitude of the manipulated variable is limited. In the cases of large changes in the controlled variable, the controller output (manipulated variable) exceeds the values that can be set by an actuator and the manipulated variable becomes saturated. This nonlinear effect leads to different control responses in comparison with those obtained from a linear control system model. This non-linearity is not the only reason for this difference. Actuator saturation is very often connected with existence of socalled 'reset wind-up'. Reset wind-up is a phenomenon restricted to controllers providing integral action. Some of these controllers do not give any guarantee that their integral action parts will stop the integration operation as soon as the controller output exceeds limiting values. Continuing integration produces excess values that can never be achieved by the actuator. However, in the control response the period when the controller output is limited (manipulated variable is saturated) appears as a temporary loss of feedback or a temporary time delay in control action. Depending on how large the integral excess becomes, the control response is characterised by a slower response, sometimes oscillating, with a large overshoot; in the worst case an instability phenomenon can occur. For these reasons reset anti-wind-up measures represent one of the most important components in the technical realisation of digital controllers. Integral action in digital controllers is carried out numerically and therefore there is no other physically-based reason for an integral action stopping but the limits of number
62
representation in the computer. This is why digital controllers may have very different behaviour in actual application compared to that expected from the linear theory. Simulation of such linear control systems should respect all true magnitude bounds in the plant models and take into account necessary integration stopping instead of the integration cropping usually applied.
4.2
Integration performed by hardware means it is always going to stop as soon as the integrator output reaches one of its limits. These limits depend on technical principles which are used in the instrumentation available for performing integration. However, it happens (especially often in controllers or simulation models) that the output of the system, perhaps due to physical or technical restriction, has a smaller range of output values compared with the internal values of the outputs during integration. In such cases the output saturates and integral (reset) wind-up may occur. The integral wind-up is manifested by maintaining changes in the internal integrator outputs (provided their physical or technical limits allow) after the output of the system under consideration has already reached one of its limiting values. The continuing integration leads to an excessive nonrealisable output. Removing the integrator output value excess and returning its values into a technically or physically acceptable range is possible only after a corresponding input change (causing an opposite trend in integration). However, such removal takes time and this is (like a transport time delay) a reason for differences in behaviour between real control circuits and their linear models. This is an important problem concerning both correct process simulation and proper controller function. The goals in considering this problem are as follows: to show the occurrence of reset wind-up in connection with different constructions of PI controllers; to refer to certain approaches to anti-wind-up techniques; to demonstrate the importance of a correct control process simulation with respect to the integral wind-up effects appearing both in various constructions of controllers and in simulated plant models; to present experiments for a laboratory rig which allow practical measurement of control responses with and without wind-up.
63
4.3
The problem of integral wind-up can be explained by analysing its occurrence in different constructions of the PI controller. It is usually referred to reset wind-up if integral action of PI or PID controllers is intended. Inherent differences in behaviour between controllers caused by reset wind-up can be demonstrated by the step responses in Figure 4.1. The maximum realisable output value is considered to be 100%. For the controller A with zero wind-up this value cannot be exceeded, because the integration will come to a standstill as soon as this limit value of the output is reached. The case of a controller B with limited wind-up is characterised by continuing integration (after reaching the limit value of 100%) but not exceeding a technical maximum (e.g. 135%). The full reset wind-up X has no limits for stopping integration. A control error sign change need not be the sufficient reason for return to the region of effective operation.
manipulated variable u
control error e
60
80
time
100
Figure 4.1
64
movement, the speed of which is proportional to the flow rate from an oil supply. The flow rate is again proportional to the control error. This becomes zero if the piston cannot move any further at the end (limit) positions, or if the control error is zero. Integration is automatically stopped at the end positions and thus no windup effect can occur (see Figure 4.1 A). As soon as the control error changes its sign, the output immediately leaves the limit value it has just reached, but in the opposite direction.
Figure 4.2
Pneumatic PI controller In most pneumatic PI controllers pneumatic capacity is used for producing integral action. Extreme values of pressure in such capacity (e.g. the pressure Pj in the integrating bellows in one of the possible technical solutions depicted in Figure 4.3) cannot exceed the supply maximum (usually PN = 130-140 kPa) or a minimum (OkPa). These values limit the wind-up effect. That is, the output of such a pneumatic controller cannot exceed approximately 40% of the standardised output signal range 20-100kPa. Since only the output values within the standardised range can be set by actuators, control error changes do not have any influence on the manipulated variable until the pressure in the integrating capacity is brought back into the working range by the integration (see Figure 4.IB). Due to the simultaneous operation of the proportional action, the time when the controller does not respond to the control error change is usually short and its influence on control behaviour can often be disregarded. Digital PI controller A block diagram of a digital form of the PI controller is illustrated in Figure 4.4. The incrementation of the output uk, which always appears in the case of a nonzero control error, is practically unlimited. The output increases or decreases as long as the control error does not change its sign and the numerical range is not exceeded.
65
z1
z-1
Figure 4.4
66
Control engineering solutions: a practical approach conditioning technique [2] observer approach [3,4] analytical method [5]
67
same value wk as the controlled variable yk during manual operation. No bump will occur at the moment of changeover to automatic mode as the control error is zero throughout manual operation. If there are no other reasons (such as disturbances, transient state), no control actions will be undertaken after transfer from manual to automatic mode. This set point tracking seems to be a reasonable tool when rapid transient responses are expected when switching from manual control. A+ more - E A" \less
r.
Tr. T r
Figure 4.5
Incremental digital PID controller (3) with reset anti-wind-up (4), bumpless transfer (2) and incremental control command setting (1)
68
4.4
Several comparisons of anti-wind-up techniques have recently been made [7]. They are usually based on linear simulation models and this can be dangerous for quantitative interpretation of their results. Essentially, real occurrences of a windup are connected with large changes of the set point or load and depend on the starting position of the operating point and controller setting. For this reason the comparisons are more or less specific to a particular simulated situation. In well designed real control loops it can be difficult to produce wind-up behaviour. From a practical viewpoint, only those anti-wind-up solutions that provide a bumpless switching facility are useful. Although often applied, actuator saturation modelling is not always recommended [8], and methods satisfied by simple hardware measurement (end micro-switch) should be preferred (e.g. the first four in the summary list in Section 4.3.4). Most of the approaches quoted have been derived using a continuous linear description of plant, which can restrict their use in discrete time for certain sampling period selections. The incremental ID algorithm presented (see Section 4.4.4) satisfies these requirements. However, analysing terms in the difference equation for a discrete PI controller (and for PID control this reasoning is even more comprehensive): Auk =; it can easily be recognised that the increment Auk becomes negative even when the control error remains positive. A large negative increment Aek (which often appears during the first phase of response) can cause the first term (which is in this case negative) to prevail over the second positive one and the last value uk_l of the manipulated variable, which has reached the upper limit value of saturation, begins to decrease although the longer lasting positive control error requires it to remain at maximum. Such behaviour may be affected by the setting of the controller parameters, but does not occur in the conditioning technique approach [6].
4.5
Given that the occurrence of the wind-up phenomenon in real conditions is connected with large changes in load or operating point, the best way to obtain objective conclusions on wind-up would be testing on a real device. This is rarely possible under industrial conditions, but laboratory set-up models of the most common kind of real control loops, whose generalised scheme is shown in Figure
69
4.6, can provide us with valuable experience. At the same time, the problem of correct simulation using linear models for such real control loop simulation can easily be demonstrated for the considered class of first-order plants.
Manipulated variable
PI PI Controller
hydraulic pneumatic digital /
>
Plant
Mass/Energy Supply ^
Disturbance
Mass/Energy ^ Outlet
Figure 4.6
Generalised control loop scheme for PI control of plants behaving as a first-order system
70
T, OR
MUL
INT
XL
Figure 4.7
OR
The second situation is less well known but very realistic, and should be considered in any simulation where there is a danger that the variables may reach values that do not correspond to physical or technical conditions. In quoted examples of plants with one mass/energy accumulator, which are modelled by linear first-order systems, it is possible that the controlled variable y (the output from the linear model) can exceed the real value range determined by technical or physical limits. Such non-exceedible maxima are 100 C in water heaters, a maximum level of a liquid in a tank or a maximum pressure in a vessel etc. This fact should be borne in mind in simulation models. The same anti-wind-up precaution must then be included in the integrators of the simulated plant model if a correct simulation of realistic control loop behaviour is required. Integrators of the simulated plant model must be equipped with an integration stop which starts to work if changes of the output variable bring the plant model output beyond the technically or physically realisable range. The solution most often used in simulation, which applies a limiter in order to restrict the output to a permitted range, is not a valid approach. This is demonstrated by Figure 4.8 which depicts the step responses of a linear first-order model of a heater. If the step change of the manipulated variable u is large enough and no integration stop is used, then the temperature either exceeds 100C or, if it is limited in its values by a limiter, it will respond with a 'wind-up' delay when leaving this limit value after the input returns back to the starting value. This delay does not occur in reality; it is a consequence of an integral windup in simulation. Supposing there are overshoots over such physical limits during the control process simulation, then all the integrators in the simulation model of a plant must be treated against wind-up.
71
o.s
O.4 O.3 O-2 O.I
manipulated variable u -
20 delay
12O 1OO
30
40
time
00
anti wind-up
^V%^
linear \ < l a r g e u) -
ao eo
^ ^ control variable y
"
linear""'""""'" (small u)
time
00
Figure 4.8
4.6
Suggested experiments
Suggested experiments might be divided into two groups: experiments performed by means of the set-up and simulation experiments. Modern simulation tools allow experiments to be performed in a way very similar to set-up experiments. Therefore there is no need to distinguish the two groups. The following are suggested:
72
A/D
1
P/E
HP
D/A
Figure 4.9
to test the controller function especially to find out whether the algorithm is set to provide reset anti-wind-up or not (in the set-up described, exclusion of the plant dynamics can be achieved by closing the outlet from the vessel and using adjustable pressure resource for manual generation of the controlled variable y) to determine conditions under which wind-up appears and to verify the efficacy of reset anti-wind-up measures to compare simulation results with real measurements, especially from the viewpoint of correct simulation as demonstrated by the illustrative results in the next section.
4.7
Illustrative results
73
To
12
time[min]
Figure 4.10
74
caused by the numerical computation of the integral and by the stopping algorithm used in which the last value after crossing limits represents the integral output for the whole time it is stopped. Manipulated variable u
2 PIS PIS
J
0 ~ 9
AWP
F*m^
LIS
1
j / ; / LIN
Li i
^AWP
i_
10
15
20
25
30
35
40
45
50
1O
IS
Control variable y
SO
85
3O
35
4O
45
1O
15
2O
25
SO
35
40
45
50
Figure 4.11
Control loop simulation with various level of the integral antiwind-up precautions
AWP full anti-wind-up (both controller and plant integrator stop) PIS plant integrator stop (only for plant integrator anti-wind-up) LIN LIS purely linear PI control (no restrictions for u and>>) linear PI control with actuator saturation (full wind-up)
75
4.8
Conclusions
Integral wind-up is a phenomenon whose negative consequences are evident both in control and simulation. These can be removed or suppressed in a relatively straightforward way enabling significant improvement of control behaviour, especially for large changes in load or in set point setting. Bumpless transfer of a high efficiency can also be ensured providing application of reset anti-wind-up techniques. Not only should algorithms of PID type be equipped with reset antiwind-up precautions but also more sophisticated algorithms with an optimised structure (e.g. dead-beat, pole assignment, quadratic optimal etc.) should be designed to take into account actuator saturation if they are intended for real practical applications. The experiments suggested can help in familiarisation with this topic that is of great importance for digital control.
4.9
1
References
ASTROM, K. J. and RUNDQWIST, L.: 'Integrator wind-up and how to avoid it', American Control Conference, 1989, 2, pp. 1693-1698 HANUS, R.: 'A new technique for preventing Wind-up', Journal A, 1980, 21,(1), pp. 15-20 BENNETT, S.: 'Real-time computer control: an introduction', (PrenticeHall Inc., 1988) BENNETT, S. and LINKENS, D. A. (Eds.): 'Real-time computer control', (Peter Peregrinus Ltd. on behalf of the IEE, 1984) CAMPO, D. J. and MORARI, M : 'Robust control of processes subject to saturation nonlinearities', Computers Chem. Engng., 1990, 14, (4/5), pp. 343-388 VRANCIC, D. and PENG, Y.: 'Tutorial: anti-wind-up, bumpless and conditioned transfer techniques for PID controller', Report DP-6947, 1994, J. Stefan Institute, Ljubljana, Slovenia and Dept. Control Engineering, Free University of Brussels
2 3 4
76
Chapter 5
5.1
Introduction
Many practitioners and researchers in the field of control agree that control systems design can be quite laborious in cases where the plant is unstable. What makes the controller synthesis of unstable systems particularly interesting is the fact that there are, objectively, certain design and closed-loop performance limitations that narrow the range of feasible solutions. These constraints reflect in overshoots, peaks in sensitivity functions and closed-loop bandwidth. Choice of the control structure and the design approach depends considerably on a priori knowledge of the process dynamics and system requirements. The aim of this chapter is to point out some problems occurring in unstable systems control and review some of the basic options for stabilisation of such systems. Finally, their properties are demonstrated on a laboratory test plant and discussed from several perspectives relevant to practitioners.
5.2
Unstable open loop behaviour is a property inherent to a number of systems. Pure unstable modes usually occur in flight systems [1,2], whereas in process industries they are relatively infrequent. As an example, let us mention exothermic reactors [3] where heat (produced by chemical reaction) increases the temperature which, in turn, increases the rate of reaction, and hence the entire system becomes unstable. Control design of unstable systems could be attempted using many of the methods applicable to ordinary stable systems. However, instabilities imply some constraints which require careful and sensible design. Two classes of constraints can be expected in cases of unstable systems:
78
design limitations performance limitations. The main purpose of this chapter is to provide a clear summary of these limitations and to demonstrate some of the prospective techniques on a laboratory test plant.
5.2.1
Design limitations
System identification A good process model is a standard prerequisite for good control design. If physical modelling is not feasible or reasonable, identification approaches must be used. However, direct open-loop estimation of unstable systems is not recommended due to numerical stability, as well as problems with bias in estimates [4]. Instead, it is better first to stabilise the plant by means of a controller with a known transfer function and then estimate the closed-loop parameters using some of the well known techniques suited to stable systems [5,6]. Recalculation of the original plant parameters can be made in a straightforward manner. Model validation How good is a model of an unstable process? Unfortunately, it is not easy to 'measure' the quality of unstable process models using most of the ordinary metrics applicable to the stable plants. Namely, any inconsistency in the model implies unbounded increase of process-model mismatch so that metrics like meansquared error turn out to be useless. Global stabilisability under constrained input Provided the input to an unstable system is constrained within an interval U=[umin,umax] there exists a constrained region (region of stabilisability) in the state space in which the system can be stabilised by using control actions u(t) from the set U. If, by accident, the system state falls out of the region of stabilisability, then there is no feedback law that can stabilise the plant provided u(t)e U [7], This has to be considered in the early phase of system design. Cautious controller design Consider a closed-loop system as shown in Figure 5.1. Let the return ratio H(s) = C(s)G(s) contain real right half poles st (z = 1 ,...,). Then the integral of the sensitivity function S(s) = (l+H(s))~l obeys the following law [8, 9]:
] \og\S(jw)\ dw = n j ^ s ;
(5.1)
79
Since much of the positive area must lie below the crossover frequency [8], it follows that reduction of sensitivity at lower frequencies will result in higher peak values at higher frequencies. This renders the appropriate controller design considerably more difficult than in the case of stable open-loop poles when the right side of Equation 5.1 is zero.
Figure 5.1
C O
>
This result means that unstable poles impose the need for fast action on the control input. However, this must be considered very carefully when noise acts in measured output.
5.2.3
Control problem
The stimulus for the following study originates from diving. Imagine a diver who has to reach a certain depth, perform a task and return to the surface. On the way he/she has to stop at prescribed depths to perform decompressions within prespecified retention times. A simplified sketch of the problem is given in Figure 5.2. Movement of the diver is regulated by means of the volume of the attached balloon which is filled (and emptied) with air from the air supply. The idea is to
80
provide a stand-by automatic controller which could take action in case of emergency and hence safely bring the diver to the surface by proper blowing and emptying of the balloon, thus leading him through the required decompression phases.
Figure 5.2
Principle of diving
To study interesting control problems a laboratory test plant has been constructed as shown in Figure 5.3. The plant consists of a tube and a reservoir linked by a pipe. The tube is filled with water but so that an air cushion is left at the top. The very top of the tube is hermetically closed. The dynamic part of the plant is a body ('rocket') floating up and down on an air bubble within the tube (akin to our diver!). The vertical position of the object depends on the size of the bubble which in turn depends on the hydrostatic pressure of the water. The higher the water pressure acting on the bubble, the smaller is its volume. Consequently, the weight of the rocket becomes greater than the buoyancy force and it falls. As the water pressure decreases, the bubble increases in volume and buoyancy force pulls the rocket up. If both forces are equal, the rocket remains (theoretically) motionless. This state is, however, difficult to maintain since there is no stable equilibrium point. The air pressure at the top of the tube is influenced by the voltage applied to the pump. The control problem is to keep the rocket at the reference position by manipulating the pump voltage. Problems which must be taken into account include the following: in ordinary operating conditions, only the position of the rocket is measured; the pump's static characteristic is nonlinear; the dynamics of the rocket are unstable.
81
Figure 5.3
Mathematical modelling The acceleration of the rocket is governed by the difference between its own weight and the buoyancy force: - h)) (5.3)
mcz = mcg\ I
m,,
where mc, S, /, and Vr represent mass, cross-sectional area, length and volume of the rocket, respectively. These values are: mc = 0.09075 kg, 5 = 3.8x10 m , Vr = 95.^5xlQr6m3 and / = 0.145m. The water level h (see Figure 5.3) is a function of pressure/? within the cushion and rocket position z:
where p0 is the normal air pressure. The air pressure within the cushion depends on the pump voltage u as follows:
82
where a, a, p and y are appropriate constants with the values a = 2, a = 95645, P = 401.5 and y = 476. A linearised model of the entire plant, calculated at the stationary point defined by u* = 4.3 V, in the state space form is as follows:
x = Ax
where 1 0 0 A = 0.4755 0 4.845- 5 0 0 -2
+ Bu
y = Cx
~ 0
n
(5.6)
0 , C = [l 0 0] 9E3
(5.7)
and state vector x = [z, dz/dt, p]\ The system poles are located at 0.6896 and -2.
5.3
Choice of the controller structure, as well as adjustment of structure parameters, depends on several factors [11-13]: the amount of knowledge about the plant; the performance requirements; the possibilities for and cost of experimentation; the design costs A schematic representation is given in Table 5.1. In the following only techniques marked with '*" will be treated.
Design
PID
Table 5.1
83
Optimal state control is a well-established topic in control theory and a number of textbooks and papers address the problem (e.g. References 14-17). To summarise, let us take a controllable plant: d x = Ax + Bu dt y = Cx
(5.8)
with xeR\ ueRn>, ysRp, AeR, BeR", CeRpx". If n =p the optimal control law is then of the form: u = -Kx A way to obtain the matrix K is to minimise the quadratic cost function:
00
(5.9)
Qx(t) + u(ty Ru(t)) dt with Q and R being symmetric and Q > 0 are R > 0. The result is: K = R~]B'P where P is a solution of the matrix Riccati equation: PA + AP- PBR]B'P + Q = 0
(5.10)
(5.11)
(5.12)
Such a controller is called a linear quadratic regulator (LQR). Another alternative to the derivation of the state controller is pole placement where K is such that dct(A-BK) has zeros at the prescribed locations [14].
5.3.2
It is seldom the case that all system states are available. Unmeasurable states can be reconstructed from measurable outputs by means of the state observer. The full-order observer for the system in Equation 5.8 is of the form 4 * = Ax(t) + Bu(t) + L(y(t) - Cx(t)) at (5.13)
84
where x GR" is the estimated state and LeRtvcp is the observer gain. In that case the optimal control law is u = ~Kx (5.14) Matrix L must be such that all eigenvalues of the matrix (A-LQ lie in the left half of the complex plane. A necessary and sufficient condition for asymptotic stability of the observer is that the pair (A,C) is detectable [15]. The observer design is dual to that of the state regulator, i.e. the dual to the LQR is the Kalman filter [15].
where Ts is normally assumed to be sufficiently small. A plethora of different approaches to PID tuning exist (see, for example, [18-20]) which are applicable to stable processes or processes with one integrator pole. These approaches are based on simplified process models but, unfortunately, they are of no use in cases of unstable systems. If a model-based design is used, then a more elaborate process model is required. Design could be easily performed, for example, in the frequency space by means of a Bode diagram [21].
5.4
Discussion
85
The main advantage of the LQR is the fact that at high frequencies it behaves like a first-order system. At the 0 dB cross-over frequency the phase margin is at least 60 whilst above that frequency the phase curve gets close to -90. Hence the LQR has an infinite gain margin in the classical sense [9,15]. Another advantage of the LQR is that it is possible to deliberately locate all the plant poles in given regions of the complex plane. However, in virtually all cases of linear quadratic design (minimisation of criterion 5.10) there is a region in the complex plane where it is not possible to assign the closed-loop poles by classical combination of weights Q and R [29]. In the same paper the author has proposed a remedy to avoid 'hidden' regions, the result of which is that (surprisingly) some of the weights in Q could become negative! The disadvantage of full-state feedback is that all the states must be measurable, which is seldom the case.
5.4.2
For a reduced set of measured variables a state observer must be added to the state controller. In principle, the state space controller and observer can be designed separately since each of them exhibits reasonable properties of robustness and performance. Unfortunately, when put together they may lead to degraded robustness and performance characteristics [30,31]. However, there are a number of techniques which lead to robust design [9,32,33]. For example, in loop transfer recovery (essentially) some of the filter's eigenvalues are located at the zeros of the plant whilst the remaining poles are allowed to be arbitrarily fast [9].
86
loose. Of course, the larger the region of search, the more experiments must be carried out in order to yield the optimal solution.
5.5
Laboratory set-up
The entire experimental set-up is presented in Figure 5.4. The laboratory plant is connected to a PC-486 computer via the Burr-Brown PCI 20000 process interface module with A/D and D/A channels. As a supplement, it is possible also to attach a Honeywell LP 41105-5031 pressure transmitter to the top of the tube in order to sense pressure in the air cushion. Measurement and process control routines are carried out by means of the SIMCOS simulation language which allows for simulation in real-time [34]. SIMCOS can simulate continuous, discrete and hybrid processes and can 'talk' to interface cards and thus send and receive data directly from the process. SIMCOS is based on CSSL syntax and runs under DOS. All the control algorithms discussed above are implemented in their continuous form. Proper 'continuous' behaviour is guaranteed by low sampling times
(ro=o.is).
BURR-BROWN PCI 2 0 0 0 0 INTERFACE
PC-486
Figure 5.4
87
5.6
Suggested experiments
A closed loop step response is taken as a basis for comparison of performance of the controllers discussed above. For this purpose the system is first stabilised at a working point, after which a step change in the reference signal is applied. In order to check robustness it is important to observe the step responses, not only at the original working conditions (i.e. those for which the linearised model is obtained) but also at degraded working conditions. In our case by decreasing the initial pressure at the top of the tube (i.e. pressure at w=0) process gain is increased. The following experiments are performed: (1) step response of the LQR with additional integral state. The rocket position and pressure in the air cushion are directly measured. The speed of the rocket is obtained indirectly by filtering the position signal. Since the band of the derivative action of the filter is wider than the closed loop bandwidth, we practically have real speed at our disposal (2) step response of the LQG controller (LQR with Kalman filter) (3) step response of the model-based PID controller (4) an experimental run of an interactive genetic algorithm which serves to tune the PID structure on the assumption that the plant model is not known. The design of the different controller structures in (1), (2) and (3) is carried out in MATLAB with the aid of the CONTROL Toolbox. The design criteria are for the settling time to be as short as possible, for low overshoot (possibly less than 20%) and good gain and phase margins.
5.7
Illustrative results
= ){r(t)-y(t)}dt
(5.16)
where r(t) denotes the reference signal. The weighting matrices Q and R in Equation 5.9 are determined by trials. The choice Q = diag(l, 0, 0, 1) and R = [1] resulted in controller gain A > [9.17, 11.3, 1.9X10"4, -1.] and the closed loop poles {-2, -0.8, -0.45 y'0.25} which are considered suitable. The return ratio (see
88
Figure 5.5) has 60.15 phase margin and infinite gain margin which is a guarantee of good robustness with respect to changes in the process. This is most evident in the fact that step responses at normal and degraded operating conditions are nearly the same (see Figure 5.5).
5.7.2
The same state controller is equipped with the observer (only the rocket position is measurable). The Kalman filter approach is used so that the result of weight adjustments is observer gain L = [10.83, 53.7, 2.28xlO6] which yields the observer poles {-6.43, -3.2 y'4.8}. Here the classical rule which recommends that we take the observer poles appropriately faster than the regulator poles has appeared useful from the point of view of robustness. The result is a phase margin of 35 and gain margin of 10.5 dB. Good margins result in minimally degraded step responses in the case of changed operating conditions (Figure 5.6). Note that performance is very similar to that of the full-state controller. The break frequency is wB = 3 s" which is slightly higher than in the previous case (wB = 2.5 s"1).
5.7.4
The problem addressed in proposed experiment (4) is to find the optimal PID parameters which yield as fast as possible a settling time with an overshoot no greater than 10%. The settling time was defined as a moment ts such that:
89
50
o
10-3 10 10 3 Frequency [s ] 10 10 3 Frequency [s ]
CO
-2 Re
Time [s]
Figure 5.5
Bode and Nyquist plots for the full-state linear quadratic regulator (LQR)
Step responses at (a) nominal and (b) degraded working conditions are depicted
Two series of tuning experiments were performed directly on the test plant. In the first case c = 0.1, whilst in the second case 8 = 0.05. The search space was defined ad hoc as a cube Kpe[0, 25.4], , = , 6.3], Kd = Kp*Tde[0, 25.4].
p
Candidate solutions were encoded as 21-bit strings consisting of three 7-bit sections representing three PID parameter values. They were evaluated by the socalled fitness function [25]. The parameters of the GA were as follows: the number of generations was set to 30, the number of iterations in each generation (population size) was 10, crossover probability was 0.7, the number of crossing sites was 3 and the mutation rate 0.05. The best of the results generated are given in Figure 5.8. Two observations are needed here:
90
approach
50
-50 10-3
; , . ,,,,
; \ , .....
10 Frequency [s 1
10-3
10 Frequency [s ]
103
c o
First, note that in spite of tough requirements the algorithm has succeeded in finding a PID setting that yields lower settling times and lower overshoots than in the case of model-based controllers (particularly PID). In the previous case we designed controllers on the model whilst GAs design the controller on the process. Since the model is imperfect, some aspects of reality are overlooked by it, but not by the interactive GA! Secondly, note that the choice of s substantially influences the GA search. In the case of a loose steady-state boundary (high e), GAs insist on higher Kp and Kd (fast action!) hence resulting in low overshoots well in accordance with the notes made in the second section. However, in the case of e = 0.05, the GA could not find feasible solutions up to the 15th generation. In that case the resulting Kp and Kd are smaller than in the case of 8 = 0.1, which results in a calm response in the steady state.
91
.s o
0-50 io- 3
' ':' , ^ \
3
10 Frequency [s ]
-4 Time [s]
Figure 5.7
5.8
Conclusions
Several controller structures and design techniques for control of unstable systems have been reviewed and practically demonstrated on a test plant. It has been shown that a full-order LQR yields the best performance and robustness properties. In the case of single measurable output LQG and PID controllers were applied. The LQG is a higher-order controller that gives more opportunities for shaping the loop transfer than PID so that better gain and phase margins can be achieved. However, for a less experienced practitioner the PID might appear more attractive since it is relatively free of the huge theoretical background that comes with LQG, and it has only three tuning knobs. The ultimate aim in model-based design is a good model which might take a great deal of effort. As a remedy, there is direct tuning by means of effective genetic algorithms, which does not require knowledge of the process model. This could yield substantial savings in design time, although the price is a lack of insight into the properties of the control loop
92
and an excessive number of tuning experiments that must be performed directly on the process.
20 r 15 10
b
la
5 0
10 20 Generations 30 25 20 15 10 5 10 20 Generations
30
i b
10 20 Generations
30
25 20 15 10 5
i
0.4 0.3
J
20 Time [si
40
10 20 Generations
30
0.2
Figure 5.8
Best of the generation results ofPID tuning with an interactive genetic algorithm at different steady state boundaries
(a) s = 0.1 and (6) 8 = 0.05 Step responses of the optimal solutions achieved are also depicted
93
5.9
Acknowledgment
The author gratefully acknowledges the support of the Slovene Ministry of Science and Technology.
5.10 References
1 SAFONOV, M. G., LAUB, A. J. and HARTMANN, G.: 'Feedback properties of multivariable systems: the role and use of return difference matrix', IEEE Trans. Automatic Control, 1981, 26, pp. 47-65 SAFONOV, M. G. and CHIANG, R. Y.: 'CACSD using the state-space L theory a design example', IEEE Trans. Automatic Control, 1988, 33, pp. 477-479 3 SHINSKY, F. G.: 'Process control systems: application, design, and adjustment' (McGraw-Hill, New York, 1988) JIANG, J. and DORAISWAMI, R.: 'Convergence analysis of least-squares identification algorithm for unstable systems', IEE Proc. D, 1987, 5, pp. 301-308 ISERMANN, R.: 'Identifikation dynamischer Systeme, Band II', (Springer Verlag, Miinchen, 1988) LJUNG, L.: 'System identification: theory for the user', (Prentice-Hall, New York, 1987) MA, C. C. H.: 'Unstabilizability of linear unstable systems with input limits', Proc. ACC, 1991,1, pp. 130-131 FREUDENBERG, J. S. and LOOZE, D. P.: 'Right half plane poles and zeros and design trade-offs in feedback systems', IEEE Trans. Automatic Control, 1985, 30, pp. 555-565 MACIEJOWSKI, J. M.: 'Multivariable feedback design', (AddisonWesley, New York, 1989) MIDDLETON, R. H.: 'Trade-offs in linear control system design', Automatic^ 1991, 27, (2), pp. 281-292
10
94 11
Control engineering solutions: a practical approach OLSSON, G. and PIANI, G.: 'Computer systems for automatic control', (Prentice-Hall, New York, 1992) ISERMANN, R.: 'Digital control systems', (Springer Verlag, New York, 1981) ASTROM, K. J. and WITTENMARK, B.: 'Computer controlled systems', (Prentice-Hall, New York, 1984) FR1EDLAND, B.: 'Control system design: an introduction to state-space method', (McGraw-Hill, New York, 1986) KWAKERNAAK, H. and SIVAN, R.: 'Linear optimal control systems', (Wiley, New York, 1972) FRANKLIN, G. F. and POWELL, J. D.: 'Digital control of dynamic systems', (Addison-Wesley, Reading MA, 1980) ATHANS, M. and FALB, P. L.: 'Optimal control: an introduction to the theory and its applications', (McGraw-Hill, New York, 1966) PREUp, H. -P.: 'ProzePmodellfreier PID-Regler-Entwurf nach dem Betrngsoptimum', Automatisierungstechnik, 1991,39, pp. 15-22 KRAUS, T. W. and MYRON, T. J.: 'Self-tuning PID controller uses pattern recognition approach', Control Engineering, June 1984, pp. 108111 ASTROM, K. J., HANG, C. C , PERSSON, P. and HO, W. K.: 'Towards intelligent PID control', Automatica, 1992, 28, (1), pp. 1-9 D'AZZO, J. J. and HOUPIS, C. H.: 'Feedback control system analysis and synthesis', (McGraw-Hill, New York, 1966) GOLDBERG, D .E.: 'Genetic algorithms in search, optimization and machine learning', (Addison-Wesley, Reading MA, 1989) DAVIS, L.: 'Handbook of genetic algorithms', (Van Nostrand Reinhold, New York, 1991) RAWLINS, G. J. E.: 'Foundations of genetic algorithms', (Morgan Kaufmann, SanMateo, 1991)
12 13
14
15 16
17 18
19
20
21 22
23
24
95
FILIPIE, B. and JURICIC, D.: 'An interactive genetic algorithm for controller parameter optimization', Prepr. Int. Conf. Neural Networks and Genetic Algorithms, Innsbruck, 1993, pp. 458-462 DEJONG, K.: 'Adaptive system design: a genetic approach', IEEE Trans. Systems, Man. and Cybernetics, 1980, 10, (9), pp. 566-574 PORTER, B., MOHAMED, S. S. and JONES, A. H.: 'Genetic tuning of digital PID controllers for linear multivariable plants', Proc. 2nd European Control Conference, 1993, Groningen, Vol. 3, pp. 1392-1396 WANG, P. and KWOK, D. P.: 'Optimal design of PID process controllers based on genetic algorithms', Prepr. 12th IF AC World Congress, 1993, Sidney, Vol. V, pp. 261-264 JOHNSON, C. D.: 'The "unreachable poles" defect in LQR theory: analysis and remedy', Int. J. of Control, 1988, 47, (3), pp. 697-709 DOYLE, J. C : 'Guaranteed margins for LQG regulators', IEEE Trans. Automatic Control, 1978, 23, pp. 756-757 DOYLE, J. C , and STEIN, G.: 'Robustness with observers', IEEE Trans. Automatic Control, 1979, 24, pp. 607-611 SCHMITENDORF, W. E.: 'Design of observer-based robust stabilizing controllers', Automatica, 1988, 24, pp. 693-696 BARMISH, B. R. and GALIMIDI, A. R.: 'Robustness of Luenberger observers: linear system stabilized via nonlinear control', Automatica, 1986, 22, (4), pp. 413-423 ZUPANCIC, B.: 'SIMCOS language for simulation of continuous and discrete dynamic systems', University of Ljubljana, 1991
26 27
28
29
30
31 32 33
34
Chapter 6
6.1
Introduction
This chapter is devoted to a significant problem in feedback control, namely the problem of delays in the loop. The longer the delays in signal processing, the poorer the control action is likely to be, including loss of the ability to control at all, i.e. the loss of stability. Many phenomena cause different types of delays, of which the most frequent are: transport, i.e. a change occurring at one point in the process is detected elsewhere. distributed process parameters, i.e. properties of continuous spatial variables. latent changes in the process. In the following, the essential features of the control problems resulting from delays in the control loop are explained and some basic approaches for solutions are outlined. A method of complex plane representation of the control problem is presented and its application is demonstrated on a heat transfer process represented by a specific laboratory set-up. Three options of control, namely the classical PID control loop, a feed-forward application and state feedback, are presented, compared and discussed.
6.2
Any kind of mass transport or energy transfer over a distance brings about the phenomenon of delay in the associated control system, i.e. the consequent effect appears some time after its cause. Essentially, the longer the distances between system components, the larger the resulting delays will be. Many methods of control system analysis and design do not specifically take account of these
98
delays, despite the frequent occurrence of delay phenomena in process dynamics. However, as any feedback controller derives its actuating signal from the output response of the process, any kind of input-output delay will influence the control action in a strong negative sense. Feedback control loops with considerable delays usually have unsatisfactory properties and sometimes these delays are so long that acceptable control action cannot be achieved by single loop control alone. Thermal processes in general, and heat exchange processes in particular, are typical physical processes with long delays. For this reason a heat transfer control laboratory set-up is used as an example here. Delays in a process may be represented in various forms. A very simple one is dead-time delay, or transport lag, described by the formula: r(t) = x(t-xD) (6.1)
where JC, r are the original and delayed variables, respectively, and xD is a constant. A more general delay relationship may be expressed by the Stieltjes integral: (6.2) where t is a variable, T is its maximum and h(i) describes the delay distribution. The step responses of both of these relationships are shown in Figure 6.1; the delays in Equations 6.1 and 6.2 may be considered as concentrated and distributed delays, respectively. The longer the parameters tD or T, the more time is lost in controller reaction. From this point of view, solving the problem of control loop delay becomes a problem of minimising the negative influence of this lost time on the control of the process.
Figure 6.1
Control of temperature and heatflowrate: the problem of delays 6.2.1 Basic approaches to controlling processes with delay
99
If the delay in the process is too long to achieve an acceptable control action in a single feedback loop (block R in Figure 6.2) there are three basic approaches to manage the problem: to apply a feed-forward compensation of the dominant input(s); to use state variables to achieve a less delayed actuating signal (i.e. state feedback); to attempt to predict continuation of the process in the controller action (e.g. Smith predictor controller).
Figure 6.2
The feed-forward compensation is represented by the block F and the state feedback by the block S in Figure 6.2. The state feedback approach provides a simple solution where state variables are measurable. In contrast, state variables which are not easily measured require, as shown in the previous chapter, the socalled state observer in the control loop [1]. The Smith predictor arrangement is used only rarely; for more information see, for example, Reference 2. For feedforward compensation it should be stressed that only the disturbance or load which is measured, and whose influence can be identified, can be compensated. Any other disturbing process input can not be counteracted.
6.2.2
The control problem of heating a building may be used as a typical example of a thermal control process in which delays are important. The purpose is to keep the interior temperature at the required constant value in spite of the substantial and irregular influence of weather conditions outside. This very slow thermal process
100
may be modelled in an accelerated form by a laboratory set-up as sketched in Figure 6.3, where the heated room is represented by a vessel A (of volume VA).
Figure 6.3
Room heating is represented by a hot water radiator H and the outside weather influence by water circulating through an external cooler C, driven by a pump. Hot water for heating is prepared in an electric boiler and the heating performance is controlled by adjusting a mixing valve. The essential control problems are as follows: Due to a low heat transfer rate (i.e. insulation) the interior temperature responds to any sudden heat exchange imbalance with a considerable delay; In addition, the interior water temperature varies randomly within a certain range due to gravitational circulation; Changing the boiler temperature is not suitable due to its poor dynamics and also to its hastening influence on the corrosion process.
6.3
To design a sound operational control system a model must be found to analyse the dynamic properties of the process. In fact, the heat exchangers mentioned represent a process with distributed parameters. However, after merging the heat capacities of the vessel A and cooler C, respectively, the following heat balance relationships may be formulated for them according to Figure 6.1: (6.3)
101
The symbols used denote: SA SH Sc MA Mc c Qc KH Kc d xH x A ,x c average water temperature inside vessel A effective temperature of heating water average water temperature inside cooler C mass of the contents of vessel A mass of the contents of cooler C specific thermal capacity rate of flow of the cooling circulation effective heat exchange rate of the radiator effective heat exchange rate of the cooler (screen fully open) relative cooler screen opening dead time of the heater response circulation transport times between the vessel and the cooler
Obviously, the equations obtained are neither linear nor ordinary. Amongst others, one of their non-linearities results from the fact that the heat exchange parameters KH Kc are not constant but depend on their respective rates of flow. The next specific feature of Equations 6.3 and 6.4 is the time shift where TH,TA,XC express the respective delays. After linearisation and application of a Laplace transform, Equations 6.3 and 6.4 may be transformed into the form 7>AS A(s) =KH(A&H(s)e~"H - AS A(s)) - AS A(s) + A&c(s)e~SXc (6.5) (6.6)
where the operator A denotes the respective deviations from the reference values, and the coefficients are
T M
O sic
c O ^c
_ KH Or SdcL
c Or ^cc
&_ q
In the laboratory set-up the heat exchangers were designed with minimal volumes. Their parameters have the following values: MAc = 418 kJK"1, Mcc = 0.42 kJ K"1, Q(c = 0.209 kJs"1 K"1 KH = 0.0253 kJ s"1 K"1, Kc = 0.0029 kJ s"1 K""1, x H = 6s, x A = x c = 4 s The flow rates through the heat exchangers and KH and Kc are considered as constants in Equations 6.5 and 6.6. Based on Equations 6.5 and 6.6, a linear process model results in the block diagram of Figure 6.2. The dynamics are represented by transfer functions
102
and GJ^s) for the heating water temperature and cooling deviations, respectively. Unlike the usual rational fraction form these transfer functions are transcendental:
-K
This form of transfer functions means the controlled process does not belong to the class of minimal-phase systems. Hence, although they are only of second order, their phase angle is not limited as frequency tends to infinity due to the exponentials e~SXH ,e~'nc in their numerators. A rather complicated problem arises in the case of any application using the poles and zeros of G(s) because their number is unlimited [3].
6.4 6.4.1
The model in Equations 6.3 and 6.4 provides a necessary basis for discussing the control problems. First, which manipulating variable is the most suitable for controlling heating performance? Adjusting the flow rate through radiator R is very easy but its value influences the heat exchange rate KH in an intricate and non-linear way. The unsuitability of any way of changing the outlet temperature of boiler B has already been mentioned. The most convenient solution remaining is to control the heating performance by adjusting the inlet water temperature 9 H into radiator H by mixing the flow from boiler B with the return flow. This is carried out by a mixing valve as shown in Figure 6.3. The second question is that of deciding by which controlled variable the mixing valve should be adjusted. Since the original task is to maintain the interior temperature 9 ^ , one standard solution is to arrange a normal feedback loop adjusting the valve according to 9 A deviation. However, as mentioned above, this is not the only method that can be applied. First, since the change of cooling effect happens to be the dominant disturbance of the process, there is a good opportunity here to employ the measured screen position d to control 9 H. However, the change in cooling effect may result not only from the displacement d but also from changes in air temperature, humidity or other parameters. For this reason the state feedback principle is a more perfect solution, particularly if the so-called anisochronic state concept [4] is applied.
103
Using this approach the mixing valve position is adjusted according to both temperatures 9 A and 9 c (as state variables) with suitable controller parameters.
6.4.2
\ + TMs[_TiS
in the feedback loop outlined in Figure 6.2. The symbols for controller parameters denote: r0 Tt Td TM proportional gain integral time derivative time temperature sensor time constant
The corresponding control system dynamics are expressed by the equation {l + GH(s)R(s)}A&A(s) = Gd(s)Ad (610)
Using the model in Equations 6.7, 6.8 and 6.9 with the parameters given above, the following system equation results:
r
L
where Ax =ro/Tn
e-6.v
\ 1- 1 M$ \ S
*+
/J
x A3 A (s) = -K cee~
104
the same: the S controller works as a combined feedback proportional to the deviations of both state variables, as follows:
ffft,*,
j^]
(6.12)
where Kv K2 are the feedback gains. After inserting Equation 6.12 into the transform Equations 6.5 and 6.6, the control system model acquires the form
(sj)
c(s)
= AS A{s)e~SXA - A O c ( s ) - K C d 0 A & c ( s ) - K c A d
(6-14)
It is not difficult to understand why we need to involve the temperature 3 c in the controller action in this case: it responds much more quickly to the input disturbance (a change in cooling) than the interior temperature &A. Positioning the controller sensors as near as possible to the source of the imbalance is the basic way to reduce the harmful influence of delay.
6.5
Control loops with delays are particularly sensitive to controller parameter setting. Some propensity to lose stability is often observed in their behaviour, for which reason the design of controller action has to be carried out more carefully than usual. However, as soon as any form of delay in the process dynamics has occurred, there is little option but to apply control theory. One difficulty we are faced with here is a diminishing choice of analytical methods resulting from the transcendental character of both the transfer functions and the Laplace transform equations describing any system with delay; see Equations 6.5-6.8, for instance. A Laplace transform model of the thermal control system discussed may be generally expressed in the form M(s)A& A (s) = N(s)Ad(s) (6.15)
where, obviously, M{s), N(s) are no longer polynomials but transcendental functions. This also means that, the usual algebraic analytical methods are no longer valid in this class of problems. The key point of this complication is that, unlike an algebraic equation, the transcendental one
105
M(s) = 0
(6.16)
is satisfied by an infinite number of solutions (roots M-zeros) in the complex domain. None of these zeros, of course, may be placed in the right half plane. On the other hand, the function M(s) is transcendental in s only, not with respect to the controller parameters. Therefore if a fixed complex number s=pt is inserted into Equation 6.16, a linear algebraic equation results Kl,K2^) = 0 for unknown controller parameters Kx, K2. (6.17)
6.5.1
A Laplace transform equation for the control system with a PID controller was obtained as Equation 6.11. For the process parameters given above, the system's characteristic function is: M(s) = 8 0 / +(85.04 + 0 . 2 4 4 * r 6 > 3 + (24.79-*T8v +[0.24^ 2 + 0A22A3]e~6s)s2 + (1.134 -T8v +[0.24^ +0A22A2]e~6s)s + 0122A]e-6s (6.18) Two basic tasks may be solved using this function. First, a trial or assigned parameter setting may be tested by M(s), after inserting s=jw, MQ'w). Secondly, some required zeros M(s) may be prescribed and corresponding controller parameters assigned. However, this second task is not as simple as it looks. With an infinite number of M zeros, no finite number of 'stable' and 'well-damped' M zeros (prescribed and achieved) can guarantee either stability or good properties for the control system. For this reason it is necessary to repeatedly combine both the above mentioned procedures in the following way: to compute the controller parameters for prescribed pi to check the resulting dynamics by means of MQ'w) The full procedure is as follows: (1) For an initial trial setting of control coefficients, e.g. Ax=-2.5, J 2 =20, ^3=40, to compute the characteristic function M{s) for s=jw; see Figure 6.4, contour A. (2) Evaluating the contour MQ'w) to check the system's stability and dynamic properties. Since the complete argument increment of the contour A in Figure 6.4 is
106
Control engineering solutions: a practical approach lirn^ Aarg M(jw) = 4n 12 = 360 (6.19)
(3)
(4) (5)
(6)
the system is stable, however this stability is not very strong. The natural oscillations at w=0.108s~1 are only weakly damped, because their damping ratio is 5 = 0.126 (the distance contour M(jw) - s-origin measured in the w scale wd=0.0\36). With respect to the M(Jw) contour, to estimate the attainable frequency wR of the desired control process and its damping rate d. For example, in the case discussed, a required frequency of vt^=0.04 s~l and a good damping rate d=0A may be tried. After inserting M zeros corresponding to the required wR and d, a set of equations for controller parameters can be obtained and then solved. The new controller parameters obtained from the solution of (4) do not yet necessarily assure an acceptable control process. Hence a new M(jw) contour needs to be computed. If it satisfies the stability conditions, a simulation experiment is used for final validation of the result. If the result obtained is not acceptable (e.g. negative controller parameters, unstable control of process, too large control error etc.), a new frequency CD* should be selected and procedures (3)-(5) repeated.
-1
-0.5
'
0.3
A
0
0.5
/
1 I 1
Figure 6.4
To achieve relatively strong damping with d=0A at the required frequency wR = 0.04 s~ three controller parameters need to be adjusted. However, the prescribed wR and d represent only two conditions. The third can be obtained in the form of a Lagrange multiplier relation. Inserting the required
107
p12=cow(-5y)
(6.20)
into M(s), two equations for the real and imaginary parts, M=R+jI, are obtained with^p A2, A3 to be solved R(pl2) = 0.1288496.4, -0.0012355^2-0.00019961A -0.0117954 = 0 l(pl2) =-0.0206525 A{ +0.0060462^ -0.00013717-0.0369 = 0 If the new Al23 are considered as readjustments DAl23 of the original Al0 = 2.5, A20 = 20, A30 - 40 the Equations 6.21 acquire the form 1.288496M, - 0.012355^4, - 0.0019961A^3 = -2.776342 -0.206525M + 0.06462A/1, -0.0013717^4, =-0.269056 (6.22)
Instead of the third required M zero it is possible to apply the well-tried ratio integration/derivative time constant from the Ziegler-Nichols rules
~AA=m
(6 23)
where m is a constant usually equal to 4. From this rule the following Lagrange multiplier condition may be derived:
^LM 8A2
J V2A3
(6.24)
where A1/A3 is taken from the initial trial setting (A1/A3 = 20/40= 0.5). From the Equation set 6.21-6.24 a solution is obtained: Mx = -2.297, AA2 = -12.605, AA3 = -13.672
which means the parameters Ax = 0.203, A2 = 7.395, A3 = 26.328, satisfying both the stability condition (contour B in Figure 6.4) and the damping requirement as well (response B in Figure 6.5). Unfortunately, the resulting control process is rather slow, prompting the question of whether such strong damping is necessary. For rather lower damping, e.g. d = 0.3 and a higher frequency w#=0.05 s"1, the procedure introduced above yields higher values of parameters Ax = 0.803, A2= 12.113, A3 = 37.221, with stable M(jw), contour C in Figure 6.4, and a quicker response C in Figure 6.5. Obviously, slower responses commonly lead to higher values of control error.
108
A 1 \k J \ \
/
-2
1
40
-^ . , _ " \\ /
t
20
60
80 s
Figure 6.5
M(s) =
(6.25)
As a first attempt, dynamic trial parameters Kx = K2 = 2.5 have been selected. The corresponding M(Jw) contour is shown in Figure 6.6 as curve A. From this experiment the complex conjugate pair may be chosen: pl2 = -0.1/0.2 as the prescribed M zeros (damping ratio d = 0.5). Inserting these pt into Equation 6.25, the following equations are obtained for the real and imaginary parts, respectively: 0.367264A:, -0.3040719 2 =5.616088 0.335908*:, +0.744484 2 =12.74632 (6.26)
with the solution K{=21.949, K2=7206. Also this result does not guarantee an acceptable control process since it does not specify the infinite set of possible further M zeros. Only the corresponding contour B in Figure 6.6 proves not only
109
the stability but also the absence of oscillations with weaker damping than required.
k
0.1
\\
V\ \ \
V \ k. \
-0.2
-0.1
\
0.1
Figure 6.6
6.6
Suggested experiments
Thermal processes are often too slow for demonstration of their control problems in real-time in an educational setting. The aim of the laboratory set-up described is to present the control phenomena in a more accelerated manner and to offer a clear experimental verification of various control solutions. The original heating control process is one of those processes which is strongly influenced by delays and is not easily investigated by standard models based on ordinary differential equations or transfer functions of the rational fraction type. The set-up makes it possible to investigate the influence of changing the delays and other dynamic parameters. It is effected using various lengths of connecting tubes between the vessel A and cooler C and, particularly, by changing the flow rate of the circulation. In this way we can see the growing difficulties in accomplishing acceptable control caused by increasing delays in the loop. On the other hand it demonstrates how an important beneficial effect is gained by applying an auxiliary control signal in addition to the main control error, which is less burdened and distorted by delays. As far as controller implementation is concerned, it should be emphasised that the latest compact controllers (in the set-up Siemens SIPART DR 20 was used) can realise not only the PID function but also more complex functions with auxiliary signals, such as state feedback or cascade control.
110
6.7
Conclusions
The dynamic behaviour of control systems with delays or after-effects is essentially more complex in character than can be observed in systems without any delay, which are considered in standard control theory. In the case of transcendental transfer functions the usual algebraic methods in control theory (based on ordinary differential equations) fail when applied in this problem area. The characteristic equation for any control system with delays has to allow an infinite set of solutions, which is why it cannot be substituted by an algebraic one. However, in spite of this property, the control process does not look too complicated, as it is governed almost completely by only so-called predominant M zeros. Other M zeros lying in the higher frequency range are not visible in the system response. Computer simulation is a good means for final verification of controller design and adjustment. Nevertheless, the complex plane provides a more effective tool for finding an efficient controller structure and its settings to satisfy the specification required. The method presented of a characteristic function M{s) works with only the left-hand operator of the control system equation; however, in fact, the slow dynamics of a system with consequent after-effects does not allow prompt tracking of transients, which systems without delays are able to manage through feedback control. From this point of view, the main control task is to restrict the natural tendency to oscillate and to search for any possible opportunity to apply an auxiliary signal which is closer to the causes of the imbalance to be overcome by control. It is also necessary to recognise an important difference between systems with and without delays. While the continuation of a delay-free system's motion is determined only by its instantaneous state variable values, the motion of a system with delays always results from its recent history, the effect of which is given by the length of its delays. Owing to this property these systems are also referred to as hereditary ones. Their different causality of motion represents the main reason to apply special methods of control system design.
6.8
1
References
ACKERMANN, J.: ' Sampled-data control systems. Analysis and synthesis, robust system design', (Springer-Verlag, Berlin, 1985) RAY, W. H.: 'Advanced process control', (McGraw-Hill, New York, 1981) MYSHKIS, A. D.: 'Linear differential equations with delayed argument', (Nauka, Moscow, 1972, in Russian)
111
ZITEK, P: 'Anisochronic modelling and stability criterion of hereditary systems', Problems of control and information theory, 1986, 15, (6), pp. 413-423 ZITEK, P.: 'Control synthesis of systems with hereditary properties', 3rd IEEE Conference on Control Applications, Glasgow, 1994
6.9
Further reading
MALEK-ZAVAREI, M. and JAMSHIDI, M : 'Time-delay systems: analysis, optimization and applications', (North-Holland, 1987) HALE, J.: 'Theory of functional differential equations', (Springer, New York, 1977) ZITEK, P.: 'Anisochronic generalization of dynamic system state', in IFAC 4th symposium on automatization in mining, mineral and metal proc, Helsinki, 1983
Chapter 7
7.1
Introduction
Using state observers it is possible to reconstruct the state vector of observable systems using a mathematical model which is excited by the input and output signals. First, linear system description is introduced in this experiment. Design and calculation of the Luenberger identity observer, using the pole placement method, is then explained. To put the observer to a practical test, the algorithm was implemented on a microcomputer system and applied, for purposes of state observation, to the 'inverted pendulum' laboratory model. By assignment of different observer poles, the dynamic behaviour of the observer can be varied. The resulting effects of these variations on the observer estimates are measured. By comparison of the state estimates with the actual states in the physical system, the respective estimation errors can be determined and evaluated. The results demonstrate which prerequisites for a meaningful state observation must be fulfilled for the 'inverted pendulum' example.
7.2
Theoretical foundations
Time-invariant physical systems can generally be described by th order nonlinear differential equations. If the differential equation is linearised about a pre-assigned operating point and the differentials are defined as the new state vector, a system of first order linear differential equations describing the state equation (7.1) is obtained, the output equation being expressed by
114
where the matrix A2t2 At O(t) = e = I + At + +... W 2! is called the fundamental or transition matrix. The states of the sampled data systems can be computed by integration over the sampling period T. Assuming a piecewise constant input signal = u(kT) kT<t<(k + l)T (7.4)
the discrete time sampled data model of the system is given by *((* +1)7) = AD(T)x(kT) + BD(T)u(kT) where
T
(7.5)
(7.6)
These matrices should be computed only once, because they are independent of the input signal. For the sampled data system, the output equation (7.2) remains unchanged. If a state space system description is given, the system can be controlled by feedback of the state vector to the system input. If the system is controllable (see the definition in Reference 2 or 3), the poles of the open loop system are shifted to stable locations by a suitably selected feedback matrix F. A prefilter, which is described by the matrix F, ensures in the case p=m that in the steady state the output vector y is identical to the setpoint vector w. The input signal u generated by the control system is now computed by the setpoint signal w and the state quantity Fx which is fed back u{kT) = Vw(kT) - Fx(kT) (7.7)
Inverted pendulum control This relation yields the system description of the closed loop control system x((k +1)7) = (AD - BDF)x(kT) + BDVw(kT) y(kT) = (C - DF)x(kT) + DVw(kT)
115
(7.8) (7.9)
7.3
The 'inverted pendulum' system consists of a cart which can be moved along a metal guiding bar. An aluminium rod with a cylindrical weight is fixed to the cart by an axis. The cart is connected by a transmission belt to a drive wheel. The wheel is driven by a current-controlled d.c. motor which delivers a torque proportional to the acting control voltage us such that the cart is accelerated.
Figure 7.1
The following quantities are measured in the pendulum system: 1. The position of the cart, by means of a circular-coil potentiometer which is fixed to the driving shaft of the motor; 2. The velocity of the cart, by means of a tacho generator which is also fixed to the motor; 3. The angle of the pendulum rod, by means of a layer potentiometer which is fixed to the pivot of the pendulum. The inverted pendulum is commercially available (see, for instance, Reference 5).
116
Center of gravity
H Figure 7.2 Free body diagram of the pendulum and the cart
This force is due to the acceleration of the centre of gravity. The vertical component of the force can be computed as V = Mx -jj(ls cos) + Mxg (7.11)
The angular momentum conservation law yields, for the rotary motion of the rod about the centre of gravity,
~ dt
(7.12)
where 0 5 denotes the inertia moment of the pendulum rod with respect to the centre of gravity. C is the friction constant of the pendulum. For the cart system, the equation of motion can be written as
(7.13)
dt
where the mass of the cart is denoted by Mo. The velocity-proportional friction constant is called Fr The force acting via the transmission belt is represented by F. Differentiation of the trigonometric functions yields H= A/ ] (r + / v O c o s O - / ^ 0 2 sinO) and
i " ' i en 1 ^\
(714)
After some straightforward manipulations, one obtains the nonlinear differential equations
and
These equations describe the mathematical model of the pendulum in the form of a system of coupled differential equations. The following abbreviations have been used
2 /H 1 O\
These equations are the basis for the derivation of a mathematical control model of the inverted pendulum.
7.3.2
To complete the description of the 'pendulum' system, a linearisation about a suitable operating point must be performed. The first step is the introduction of a state vector
()
x = f(x,u)
118 yields:
xl=fl(x,u) = x3
X
(7.20)
(7-21)
x3 = / 3 (*,) = p(x2)(#3
a35 sinx 2 x 4 +b3u)
N=
(7.25) (7-26)
have been used, and the coefficients a,-,, bt can be easily derived. In the second step, the operating point, about which the linearisation is to be performed, is defined. It is given by the condition
xA=[kx
0 0
< 7 - 27 >
The set of equations (7.20-7.23) are developed into a Taylor series which is terminated after the first element. .Au
dx
du
(7.28)
The computation of the differential quotient yields for the linearised system matrix
119
0 0
1 0
33 43
a
0 ' 1
U U_
a
"0"
- A A
df
0
x=xA
w=0
A u=0
0 a 32 0 aA1
'
du
(7.29)
The deviations from the operating point are introduced as the new state variables and input signals Ax = x and Aw = w, respectively. The state equation can then be written as x= AAx + bAu
(7.30)
This equation constitutes the linear state space description of the inverted pendulum. Thus, the prerequisites for the application of the controller and observer design techniques introduced in Section 7.2 are satisfied.
7.3.3
The 'inverted pendulum' system is equipped with three sensors, by which the position of the cart, the velocity of the cart and the angle of the pendulum rod are measured. The fourth state variable, i.e. the angular velocity of the pendulum rod, is estimated by a state observer such that state feedback can be performed. Since the sensors deliver a voltage which is proportional to the mechanical quantities to be measured, it is necessary to normalise the system with respect to the electrical quantities. The normalisation can be understood as a regular transformation xt, = Nx and = KFus (7.32)
(7.31)
of the non-normalised state vector JC and the non-normalised input signal u where N = diag[nH] / = 1,...4 C7-33)
is a diagonal matrix. The term KF denotes the factor relating the input voltage of the servo amplifier to the force acting on the cart. Another substitution results in
(7.34)
120
Solving this equation for xn yields the normalised system description xB=NAAN-\+NbAK,us with the normalised system matrix An=NAAN~l and the normalised input matrix bn=NbAKF (7.36) <7-35) ( 7 - 34 )
The elements nn to n33 are identical to the factors relating the electrical to the mechanical quantities. Since the angular velocity is not measured directly, it is possible to assign the element n44 arbitrarily, on the condition that the numerical value of the voltage for the angular velocity does not exceed the maximum voltage of the D/A-converter. The element has been selected to be nu = n?7 sec (7.37)
This signal acts via the factor b3 on the quantity x3 and via the factor b4 on the quantity i 4 , such that the augmented system can be written in the form
121 (7.39)
o' oJU
An observer employing all three measured signals is designed for the augmented system. Figure 7.3 displays the overall system consisting of state feedback control and disturbance compensation.
w(kT)
so
y(kT)
s^
Reduced order observer with disturbance signal estimation (uso)
Figure 7.3
Block diagram of the controlled pendulum with state feedback and reduced order observer
In switch position 1, the nonlinear friction effects are compensated by the disturbance signal observer. In switch position 2, they are compensated in an analogue fashion. According to Figure 7.3, the equation for the reduced order observer is given by = ABx(kT) + FBy(kT) + bBus{kT) (7.40)
122
For the purpose of computing the unknown matrices, the system is discretised and separated into two subsystems. The 5x5 system matrix can be divided into the four submatrices Au, An, A2l, A22. The vectors bx and b2 are built by the input vector.
[A2i
A22\[xB(kT)
x5(kT)\
us(kT)
(7.42)
The measurable state variables (x b x2, x3) of this system are identical to the output signals and are described by the vector y. If a reduced order observer is designed for this system xB((k + 1)7) = (A22 - LAU)xB(kT) + L(y((k + 1)7) - Auy(kT) - b}us(kT)) (7.43) via the change of variables z(kT) = xB (kT) - Ly(kT) the observer equation z((k +1)7) = ABz(kT) + FBy(kT) + bBus(kT) where AB A22 LAX2; rB = A B L + A2l L A U ; bB = b2 Lbx (7.45) (7.44)
is obtained. The matrix L has been selected such that the poles of the observer are located at sX2 = - 1 0 0 \/s or zX2 = -0.0498, respectively. The remaining matrices eventually result in
'41
123
Mathematical techniques for the design of reduced order observers are described in References 3 and 1. Before the feedback matrix is finally computed, the poles of the open loop system will be calculated. They can be determined by det(sI-AA) = 0 From the values of the poles, it can be seen that one has an unstable system which can be stabilised by means of the state feedback shown in Figure 7.3.
7.4
Suggested experiments
This system is very suitable for learning control techniques. Therefore one can calculate equations for the system, or a part of it. From the equations it is possible to draw the block diagram of the system, either of the 'cart' system or the 'inverted pendulum' system. The next steps are the design of the Luenberger observer and, finally, the controller, as a state space feedback controller. As an experiment the friction constant should be identified from the step response of the system.
124
7.5
Illustrative results
STEP RESPONSE : US = 2.3V +.160E+; x = 0.567 s
+.120E+*-
+.400E+9-
1.64V
"2100-
.000E+0- -
-.400E+O .000E+0
+.100E+1
+.200E+1 TIME[SEC]
+.300E+1
+.400E+1
+.500E+
+.250E+*-
x,= 0.54 s
M50E+
+.500E+8-
3. IK
-.500E+O .000E+0
+.100E+1
+.200E+1 TIME[SECJ
+.300E+1
+.400E+1
+.500E+
Figure 7.4
125
- .500E + 1 .OOOE+Q
+.2C0E +
+.400EU TIME[SEC]
+.6C0E + 1
+.800EU
+ . 100E + 2
-.SOOEM .OOOE + 0
.200E +
+.400E 1 TIME[SEC]
.600 E +1
+.8IQEM
+.100E + 2
Figure 7.5
Observation of the position for the 'inverted pendulum' system upper: Observer poles at: s = - 6 Ms lower: Observer poles at: s = - 20 Ms
126
-.225EU .OOOE + O
+.2G0E + 1
+ .4G0EM TIME[SEC]
. 6 0 0 E +1
+ .800EU
+. 10 0 E + 2
-.225EM .O0OE+O
. 2 00 E +1
+.6G0EM
+.800EU
+.HCE + 2
Figure 7.6
127
-.375E*2 .OOOE + O
+.2O0E + 1
+.400E + 1 TINE[SEC]
.6 C 0 E +1
+.803EU
+.10 0 E + 2
+.4S0E2 --
. 150E + 2 --
-. 150E*2 --
-.450E +
-.7S0E+2 .OOOE + 0
+.2C0E + 1
4.600e+l
-\
+.800EU
+ . 10 0 E + 2
Figure 7.7
128
7.6
Conclusions
In this chapter we have described the 'inverted pendulum' system as an example for teaching control techniques, including a short introduction to the theoretical background. The system equations have been derived to provide a mathematical model of the inverted pendulum. With these tools a closed loop system has been calculated using state space techniques to keep the inverted pendulum upright. Another task is to identify the friction constant of the system. The different theoretical methods applied to the system mean that it provides a good application example within a control course aimed at teaching modern control methods.
7.7
1 2 3 4
References
FOLLINGER, O.: Regelungstechnik, 2nd Ed., (Elitera-Verlag, Berlin, 1978) UNBEHAUEN, H: Regelungstechnik II, 4th Ed., (Vieweg - Verlag, Braunschweig, 1987) ACKERMANN, J: Abtastregelung, (Springer - Verlag, Berlin, 1972) MORI, S., NISHIHARA, H. and FURUTA, K.: Control of unstable mechanical system, Control of pendulum, Int. J. Control, 1976, 23, No. 5, pp. 673-692 Amira GmbH: Manual for the laboratory set-up of the inverted pendulum control, Bismarckstr. 67, D-47057 Duisburg, Germany, 1993
Chapter 8
Disturbance rejection
P. Albertos and J. Salt
8.1
Introduction
Traditionally, there are two different ways to show the need for a control system: to track a reference signal at either a higher power level or a distant location, or to keep a variable at a set point in the presence of external disturbances or changes in the process. Typical examples of the first case, so-called servosystems, are feedback amplifiers or steering systems. On the other hand, regulation systems are always present in the process industries. Although it is clear that both problems can be solved within a common framework, most control system design methodologies rely on controlled system behaviour under changes in the reference or set points. The purpose of this chapter is to deal with some industrial control problems where disturbance counteraction is the most relevant issue and to review the suitability of classical control solutions to deal with this particular viewpoint. In a control system, disturbances appear at different points. They may be classified as input, internal or measurement disturbances. Filtering, detection and cancellation are possible approaches to counteract their effect. In the next section, a typical industrial control problem is presented and the various sources of disturbances are analysed. The basic options to deal with these disturbances are then discussed. An easily implemented laboratory set-up will display most of the key issues to solve these control problems.
8.2
Control problem
In most control system design approaches, the specifications are related to the response to changes in the reference, and closed-loop behaviour is analysed without consideration of the effect of external disturbances. However, disturbance rejection specifications are very old [1] and related to feedback control properties.
130
If the disturbance is measurable, a feedforward controller can be envisaged to counteract the disturbance effect, usually in a steady-state framework. Let us consider the welding machine depicted in Figure 8.1. To obtain a uniform welding surface, a constant feeding speed of the stick is required, assuming that there is also a constant relative speed between the tool and the surface. The classical control set-up tries to keep the wheel A's angular speed w(t) constant but, owing to wheel wear, the stick feeding speed v(t) is not constant. A periodic disturbance appears. Its frequency is related to the working speed but, in general, no position sensing is implemented in the wheel A.
Figure 8.1
Welding process
This is not the only disturbance in the welding process. Working in a hard environment, some measurement noise is unavoidable and the welding load could be variable. A physical block diagram is shown in Figure 8.2.
MOTOR m
Figure 8.2 Speed measurement
Rod/ wheel
noise
SENSOR
Disturbance rejection
131
The purpose of this chapter is to analyse basic control system design techniques as they are applied to the specific problem of disturbance rejection. Disturbances will be characterised by their frequency content, in particular their frequency range and magnitude. Other techniques, such as those based on robust controllers or H^ specifications, will not be developed in this chapter. According to these constraints, the proposed methodology is: (1) (2) (3) to measure the disturbance and implement a feedforward controller cancelling its effect; to detect the disturbance and counteract it by means of a feedback controller; or to reduce its relevance either by the controller's integral action or avoiding it feeding back.
The first approach requires disturbance measurement. In the welding control application, some information about the disturbance is available, but its actual value is not. The second approach can be implemented by building a disturbance observer. This requires a good a priori knowledge of both the process model and the disturbance model. Alternatively, using a band-pass filter, only knowledge of the disturbance frequency is required. Once the disturbance is estimated one way or another, a control action is generated to counteract it. The last approach is to consider the disturbance effect on the controlled closedloop system and to compute an additional control action to reduce it. This approach is simpler but is only useful for disturbance frequencies out of the controlled process range of interest, i.e. for high frequency measurement noise or low frequency load disturbances. In this case the approach is, respectively: to filter the measurement noise using a low-pass filter; to reduce the disturbance effect by a high-gain, integral action controller. The application studied covers most of these problems. The following scenarios are considered: high frequency speed measurement noise, low frequency load torque and medium range frequency disturbances. Both classical and modern control design techniques are used. Although disturbance rejection is the primary goal, the effects of the filter and controller on the input-output reference specifications are also analysed. A set of practical results obtained at the laboratory using a d.c. motor, controlled by a personal computer with a commercial data acquisition card, is reported. These results allow a comparison between different design procedures, showing the great variety of techniques available to solve industrial problems.
8.3
Technical background
Let us consider a single-input single-output, disturbed linear continuous timeinvariant system as depicted in Figure 8.3, where u(t) is the plant input, s(t) is the
132
plant output, y(t) is the measurement signal and dx (t), d2 (t) and d3 (t) are input, process and measurement disturbances, respectively. Gf(s) are subprocesses transfer functions.
Figure 8.3
For dl (t) and d2 (t), if they were measurable, a feedforward controller could be designed. If G{ (s) is strictly proper, a control signal
G(s)
will cancel their effect. If this is not the case, a control
U(t) = -
where kx is the static gain of Gl (s), will avoid the steady-state errors for step disturbances [2]. However, disturbances are not, in general, measurable and they must be counteracted by feedback control actions. In the following, they are assumed to be characterised by their frequency content and generated and modelled by autonomous systems. The frequency range of these disturbances is quite distinct. The frequency range of d3 (t), the measurement disturbance or noise, is usually higher than that of the desired output signal, s(t), but if it is an input or process disturbance, the range of frequencies is similar to that of the plant. To take the proper disturbance rejection actions, some information about the disturbances should be available. Two approaches are considered. First, the of the closed-loop controlled output/disturbance transfer function, s^ld^t), plant is specified and a feedback controller is designed. Second, the disturbance is estimated and then an opposite control action applied. The first approach provides a structured control solution, although it can distort the desired output/reference transfer function. The second tries to avoid the inability of the disturbance to be measured, but does not avoid the noninvertibility
Disturbance rejection
13 3
of the transfer functions. Thus, it would mainly be of interest to compensate input disturbances.
r(t)
Figure 8.4
8.3.1.2 Feedback path filtering (measurement noise) Let us now assume a noisy measurement, that is d] (t) = d2 (t) = 0 and d3 (t) & 0 . The measured controlled output y(t) will present this high frequency component. We can compute the appropriate measurement filter F(s) to be implemented in the feedback path, as shown in Figure 8.5, to provide the 'noise-free' feedback m(t) [5]. The measurement filter may be designed as a low-pass filter to suppress the additional high frequency noise. In this way, the plant input will not be disturbed and the plant output, s(t), will be unaffected by this noise. On the other hand, this noise will be evident in the output measurement, y{t).
134
r
F/gwre 8.5
R(s)
Gj(s)
G(s)
y(t)
m(t)
F(s)
If the disturbance is an internal one, such as d2(t) in Figure 8.3, the previous filter will not give an undisturbed plant output, s(t) = y(t). In this case, external disturbance filtering may be achieved out of the loop. Theoretically, a cascade filter F(s) will delete the disturbance frequency content of the output, giving a better filtered output. But this signal is required not after the filter but at the process output. In order to obtain a clean plant output, the equivalent inner loop F(s) can be derived. Let us assume a controlled system as depicted in Figure 8.3. The equivalent in-loop filter F(s) will be:
=
l + R(s)Gx(s)G2(s)-F(s) R(s)Gl(s)G2(s)F(s)
However, the controller is very complex and, although the frequency components of the disturbance are cancelled, the transient behaviour will also be changed.
Disturbance rejection
13 5
Disturbance state estimation. With the assumption of simple disturbance models, like pure sinusoidal disturbances, they can be modelled by an autonomous signal generator, as shown in Figure 8.6.
y(t)
(t)
Figure 8.6
Disturbance observer
An augmented system state vector [2] can be defined and a reduced-order observer can be designed to estimate the state of the disturbance generator. The disturbance is then obtained by the appropriate state combination.
v(kT) = K[x(kT) - Ax[(k -\)T]~ Bu[(k -1)7*]] + (Ad - KBCdv[(k where d represents the estimated value of the disturbance; x and u are the state and the input to the process, respectively; (A,B) and (Ad, Cd) are the process and disturbance state description matrices; v is the disturbance state; and K is the gain matrix of the observer. In this case, the estimated disturbance will also be delayed and a phaselead filter will predict the current value of the disturbance. The disturbance frequency is just one parameter of the disturbance generator model. If the frequency slowly varies with time, an adaptive scheme may be implemented, based on the estimation of this parameter.
136
8.4
Laboratory set-up
The general approaches described above have been applied to design the position control of a laboratory welder stick plant. The stick is fed by a d.c. motor through a carrying wheel which is eccentrically shaped due to wear. The laboratory set-up consists of: a d.c. motor (Quanser Consulting [3]); a commercial data acquisition card (PCL-718 from Labcard [4]); a personal computer. The equipment is completed with an oscilloscope. Two additional options are considered: eccentric gear connection to allow simulation of the wheel wear mentioned above which can be implemented by either an eccentric wheel or an unaligned axis; a signal generator to add extra signals at different points in the loop to simulate periodic disturbances and/or noise; optionally, a CADCS software package such as PC-MATLAB [5] or a high-level language with easy access to program the low-level interfaces. In both cases, the basic set-up depicted in Figure 8.7, relative to the connection between the acquisition card used and the d.c. motor, is necessary owing to a card output (D/A) range of 0 - +4 V.
Figure 8.7
8A.I
Model
The mathematical description of the process is a continuous time, second-order model, where the output y{t) represents the axis position, d/dt[y(t)] the angular speed and u(t) is the input voltage.
Disturbance rejection
137
With no load, the experimental parameter identification procedure leads to the following continuous transfer function description:
G{s)=Y(s)_
U(s)
As explained later, a sampling period of T = 0.05 s has been selected. The discrete state-space description is: x[(k + l)r] = Ax(kT) + Bu{kT)\ where y(kT) = Cx(kT)
[o 0.0252)
A d.c. motor dead zone was detected.
0.0132]
0.5108
8.5
Suggested experiments
low frequency disturbance reduction a PID controller will reject the static and low frequency components of the load; measurement noise filtering; disturbance detection and counteraction.
The plant allows the testing of most of the concepts mentioned above:
GR(s) = Kh + T.s + j -
13 8
where K = 0.675, Td = 0.0056 s, and 7] = 2.25 s. To select the sampling time, the d.c. motor output transient behaviour and some operational constraints were taken into account: the shaft's final position should achieve steady state in a smooth way; the control actions must be lower than the range of saturation of the A/D channels. With these conditions taken into account, a sampling period T = 0.05 s was chosen. The discrete controller can be obtained by using the expressions [2]:
= 0.075
The periodic disturbance is injected into the closed-loop system by means of a signal generator at the input level. We consider a periodic disturbance d(t) = d(0) x cos wt, where w represents the frequency. The disturbance state-space representation is: 0 -w
2
1 0
The discrete model obtained for T = 0.05 s and w = 8 rad/s is xd[(k + \)T] = Ad x xd(kT)\ where:
f 0.921 0Q91 O18Qzl~l 0.3894
d{kT) = Cd x xd(kT)
-0.3894
0.921
Cd=[0
0.2810]
The theoretical step-reference response of the controlled process is shown in Figure 8.8.
Time (sec.)
Figure 8.8
In response (a) no disturbance is considered, whereas response (b) shows the effect of the periodic disturbance.
This filter is only of academic interest, as the complexity involved results in a filter that is difficult to tune and has numerical problems in the equivalent feedback filter discrete time transfer function. For this case the following was obtained:
F(z) =
7.36z8 -18.76z 7 + 6.88z6 +19.16z5 -19.32z 4 -1.55z3 +4.98z2 -1.95z + 0.1 1.82z8 -5.43z 7 +2.1z6 +8.56z5 -9.49z 4 -0.8z 3 +5.38z2 -2.3z + 0.1823
As expected, the closed-loop reference time response obtained, Figure 8.9, shows poor behaviour, quite different from that required, owing to the effect of the filter.
140
Figure 8.9
A frequency domain analysis of the closed-loop transfer function as shown in Figure 8.10, leads to the following conclusions:
low frequency gain is reduced, due to the integral control action; gain at 8 rad/s frequency is reduced due to the notch filter effect, but a range of frequencies is also distorted; high frequency disturbances, such as measurement noise, can easily be removed by filtering.
an
Process
L c c
n i 60 t u 40 d e 20
V/Rcf
^ . * "
:
-20
^ ^ * "
1i
1
. , , 1 10 10 c 10 J Frequency (rad/sec)
Figure 8.10
Disturbance rejection
141
1.6z +0.67 = 0
Where z is the discrete variable. The theoretical result for the assumed case is shown in Figure 8.11a. As can be seen, a problem was detected in the steady-state estimation of the periodic disturbance, when certain kinds of d.c. motor are used: there is a phase shift. This problem was solved by introducing a phase-lead filter D(z) [6,7], see Figure 8.1 \b. w wwo+2/71.
D(z) =
w (w +2/T)
wp v wo
1 /
z-t
where
^-2 P+1IT
IT'
-I.
and
sinG = 1-q
-_L
1+a
where 9 is the phase shift leading to the time response shown in Figure 8.116. The closed-loop time response is better and the disturbance effect is almost fully cancelled out. The transient response is satisfactory, and no steady-state degradation has been detected in most cases, but care must be taken under certain conditions, especially if backlash phenomena appear.
142
0.5
0.5
1.5
2.5
3.5
Figure 8.11
As mentioned previously, some parameters in the disturbance model may be unknown or time-variant. In this case, a classical parameter estimation algorithm can be implemented allowing tracking of the disturbance model. In the following example two different situations are considered: (i) a change in the disturbance frequency appears at a time of 9 s (Figure 8.12) which emulates the case of variation in the speed of the welding operationthe disturbance estimation block follows this change; a change in the disturbance amplitude, reflecting a change in the axis alignment (Figure 8.13). Again, the estimation block works very well.
(ii)
Disturbance rejection
Disturbance estimation. Frec= 8 rad/sec
143
0.5
1.5
4.5
8.5
9.5
10
10.5
11
11.5
12
12.5
13
Figure 8.12
0.5
1.5
4.5
8.5
9.5
10
10.5
11
11.5
12
12.5
13
Figure 8.13
144
8.6
In this section, a set of results obtained working with the experimental set-up is shown, which are in agreement with the theoretical simulations given previously. The first experiment exhibits the disturbance effect: a step change in the reference position is introduced (Figure 8.14).
Time (sec.)
Figure 8.14
The output is analysed in both cases (with and without the disturbance). Case (b) shows the effect of the 8 rad/s periodic disturbance, and curve (a) is the result obtained without the injection of the external disturbance. The second experiment is carried out to try to counteract the disturbance. The disturbance itself has been estimated and a 'feedforward' control signal has been added to the controller output. The same step response is plotted in Figure 8.15. In this case, a steady-state sinusoidal disturbance was generated. Figure 8.16 compares the estimated and real disturbances.
8.7
Conclusions
To counteract the undesirable effect of plant disturbances, a number of options were considered. The solutions proposed, although illustrated by a real control problem, are mainly academically oriented, but we try to give guidelines to deal with these kind of problems. It should be noted that there is always a trade-off between disturbance rejection and reference response. Any controller design based on a set of specifications with
Disturbance rejection
145
only one input response must be carefully checked with respect to other forms of input.
Figure 8.15
Time (sec.)
Figure 8.16
146 8.8 1 2 3 4 5 6 7
Control engineering solutions: a practical approach References CRUZ, J.: 'Feedback systems' (McGraw-Hill, 1972) ISERMANN, R.: 'Digital control systems' (Springer-Verlag, 1989) 'Real time control handbook' (Quanser Consulting) 'Pc Labcard 718 user's guide' (PcLabcard) 'PC-MATLAB user's guide' (The Mathworks Inc.) BOZIC, S. M : 'Digital and Kalman filtering' (Edward Arnold, 1979) PHILLIPS, C. L. and NAGLE, H. T.: 'Digital control systems: analysis and design' (Prentice Hall, 1984)
Chapter 9
9.1
The majority of published work on feedback control systems concentrates on dynamic systems which are single-input, single-output (SISO). However, it is readily acknowledged that many processes found in the process, aerospace and marine industries have more than one input and output and are therefore termed multi-input, multi-output (MIMO) systems. These systems pose a new set of problems when it comes to control because of the effect of one input on more than one output. This can be shown diagramatically in Figure 9.1 where a traditional transfer function representation has been used. Note that the input Rx(s) not only affects the output Yx(s) according to the transfer function Gu(s), but also the output Y2(s) by the cross-coupling term Gn(s). There is a similar effect for the output R2(s) with respect to the outputs F,(s), Y2(s).
G,
2\
R2(s)
2 2
o-
Figure 9.1
148
Considerable effort has been applied to the study of MIMO systems with a significant proportion of the work concentrating on reducing the effect of the cross-coupling terms. Pioneering work in this field can be attributed to Rosenbrock [1,2], Macfarlane [3,4], Owens [5] and others. MIMO processes are commonplace in industry. For example, in the rolling of strip steel, both speed and tension must be adjusted simultaneously in order to maintain the quality of the finished product. In the chemical process industry, the distillation column presents a good example of a non-linear, time-varying multivariable system. There are also numerous examples in the aerospace and marine industries such as military and civil aircraft, surface ships and submarines. In all these cases, there is more than one control surface/actuator and each actuator can influence a number of controlled variables. There is even a common example of a multivariable system in the home the domestic electric shower unit. The effect of a cross-coupling term in the operation of a shower can be seen when a tap is opened elsewhere in the house while the shower is running. The flow is reduced and the temperature increases (often reaching unacceptably high levels!) In multivariable terms, we can consider the inputs to the shower as the pump voltage and the heating element voltage. The outputs are the flow rate and temperature of the water.
9.2
Process modelling
149
Figure 9.2
This plant can be represented as a MIMO system with two inputs and two outputs: alternator field voltage ux alternator field voltage u2 alternator output voltage y{ alternator output frequency (motor speed) y2 Thus it is possible to consider this process with the structure shown earlier in Figure 9.1 and the modelling task becomes a requirement to identity the transfer functions Gu Gn G2l and G22. It is common to represent this structure in vector/matrix form as:
Gn
Gl2
(9.1)
Control engineering solutions: a practical approach Step tests are simple to perform and no special equipment is needed; Experimental time for one response is approximately five times the dominant time constant of the plant; The method is good for gain estimates and adequate dynamic response characteristics, especially if the process is of a low order (first or second).
For the motor alternator the procedure was to apply a unit voltage step to ux while 2 is held constant and record the output transient responses in yx and y2 then to repeat for u2 with ux held constant. The recorded data is then processed using appropriate software; typically MATLAB might be used for displaying the results on a VDU after mean levels had been removed. The results for these tests are shown in Figures 9.3 and 9.4.
Alternator field u o
J
70 80 90 0-1 sec 100 60 70 80 0-1 sec 90 100 Alternator output voltage y1 Alternator speed y2
60
70
80 0-1 sec
90
100
70
80 0-1 sec
90
Figure 9.3
From these figures, it can be seen that the responses are approximately first order. Further examination to assess the gain and time constants reveals that an approximate mathematical model of the plant can be written as 6.1 Gp = s + 7 2.8 _5-i-6.8 4.6
s+14.3 -0.24
(9.2)
5*+ 4
151
100
110
140
100
110
140
Alternator speed y 2
-0.5-0.1 100
100
110
140
110
130
140
Figure 9.4
9.3
It has been stated earlier that one of the main difficulties in designing controllers for multivariable systems is the presence of the cross-coupling terms. A substantial amount of effort has been expended in attempting to understand the effects of the interactions. A useful summary of these methods is contained in Sinha [9]. In this section we will illustrate two possibilities that could be used to deal with the typical plant considered in the last section, the motor-alternator unit. In both cases, the design of a pre-compensator is involved which is intended to address the problem.
152
Precompensator
Plant
Figure 9.5
The basic idea can be stated as: (1) Let Gp(s), the known plant transfer function matrix, be written as: Gp(s) = R(s).A(s) where: R(s) is a diagonal matrix containing the common row elements of Gp(s) A(s) is a matrix of numerator terms only (2) Choose D(s)=A~\s)
(3) Then Gp(s).D(s) = R(s), a diagonal matrix Thus, the combined system, plant and pre-compensator, is non-interacting. It should be noted that the inclusion of D(s) degrades both transient and steadystate performance of the process and additional corrective action would be necessary to restore performance to its original level. Design for the motor-alternator set The transfer function matrix has been derived from experimental tests see Equation 9.2. We must represent Gp(s) as R(s).A(s) where these have been defined earlier, i.e:
12
#21
rn
(9.3)
4.6(5 + 7)
-0.24(5 + 6.8)
(9.4)
Multivariable process control and therefore: 0.24(^ + 6.8) 1 12.88(5 +115 + 28) 2.8(5 + 4)
2
153
(9.5)
But D(s), the decoupling pre-compensator, is A l(s), so the design is complete. Simple matrix arithmetic will show that the product Gp(s).D(s) is, in fact, R(s), a diagonal matrix. Thus, two independent S.I.S.O. control loops can be designed.
9.3.2
Theory This method of dealing with interaction (see Kouvaritakis [10]) has been selected because of its close relationship with ideas of established classical control theory. The characteristic loci of a matrix Q(s) are the set of loci in the complex plane traced out by the eigenvalues of Q(s) as 5 traverses the standard Nyquist contour in a clockwise direction. In summary, the method consists of designing a series of cascaded compensators, each of which attempts to deal with a different part of the frequency spectrum, i.e. low, middle and high. The steps to be followed in this design procedure can be listed as: (1) Compute a real decoupling compensator Kh&G~ (j(dh) where co^ is the bandwidth of the open loop system; Design an approximate commutative controller Km(s) at some frequency coM < coA for the compensated plant G(s).Kh such that KJj<ti) => / as co => 00 (the latter requirement is an attempt to ensure that the decoupling effected by Kh is not disturbed too much). Ideally, we would like KJjcn) to approach / as co => co,, but this is not realistic in practice. If the low frequency behaviour is unsatisfactory (typically because of excessive steady-state errors), design an appropriate commutative controller K}(s) such that ,(/co) => / as co => 00. Realise the complete compensator ^(5) = KffKm(s).K](s)
(2)
(3)
(4)
The subscripts h, m, / denote high, medium and low frequency, respectively. Usually Kx is used to introduce integral action.
154
Design for the motor-alternator set (a) Performance specification To begin the design of a suitable compensator for the laboratory motor-alternator set, it was necessary to have a specification detailing the performance requirements for the compensated system, G(s).K(s). The proposed specification is outlined below in Table 9.1 System parameter Steady state error Overshoot Settling time Bandwidth Interaction Required tolerance
2%
Table 9.1 Performance specification (b) Justification for compensation To verify the requirement for compensation, and to illustrate the time domain performance of the uncompensated system, the closed-loop unit step response for the model can be simulated using, for example, MATLAB. As an illustration, the unity feedback for a unit step change in input 1 (motor armature voltage) is shown in Figure 9.6. It can be seen that in addition to the interaction, there is a large steady state offset and the performance specification given in Table 9.1 is not satisfied. (c) Design procedure The first step is to calculate the multivariable frequency response (MVFR) matrix for the uncompensated system over a suitable frequency range (0.1100rads~1). It is then possible to obtain a graphical representation of the characteristic loci by calculating the eigenvalues of the MVFR matrix. This computationally-intensive operation can be carried out easily using the multivariable frequency domain (MFD) toolbox in MATLAB. This toolbox provides an invaluable extension to the standard functions in MATLAB and is an excellent aid in the design process for multivariable controllers. (d) Scaling compensator The Bode magnitude array for the uncompensated motor-alternator (Figure 9.7) clearly shows that the elements of column 2 are an order of magnitude smaller
15 5
than those of column 1. It proves necessary to balance this difference with a constant gain matrix compensator Kx to make subsequent design stages easier. Here, we choose Kx to be: 1 0 0 10 and use the appropriate function in MFD to carry out the pre-multiplication.
Motor voltage u1
0.05
Alternator field u9
0 0
50
200
-0.05
50
200
Alternator speed y2
50
200
50
200
Figure 9.6
(e) Decoupling pre-compensator The purpose of this compensator is to decouple the interaction at frequencies outside the desired operating bandwidth, so it is usual to implement the design at or near coA. After some trial design, the final form of Kh was chosen to be
2.35 1 -0.23J
The purpose of designing a mid-frequency compensator is to decrease the response time and settling time by increasing the gain over the bandwidth, while
156
ensuring that gains outside the bandwidth are low to protect the noise rejection properties of the system. As with most designs, the final proposal reduces to a compromise between the conflicting requirements of a wide bandwidth for fast response and settling time and a narrow bandwidth for adequate noise rejection. One way of achieving this compromise is via a lead-lag network which ensures gain increases occur within the system bandwidth. Thus, Km is selected to have the structure:
where
T,>T2>CT]>CT2
1, 1] Element
[1,2] Element
10 Frequency
10 Frequency
Figure 9.7
(g) Low-frequency compensator The function of this compensator is to provide integral control action to eliminate steady state offset in the system feedback loops and also to increase the lowfrequency gains, thus reducing low-frequency interactions but without decreasing the stability margins.
15 7
Controller performance The complete controller consists of the combination of the individual compensators considered in (d), (e), (f), and (g) above. The operations described in the development of the compensators can be largely automated using the MFD Toolbox in MATLAB. To test the performance of the compensated design, simulation of plant plus compensator can be readily carried out, again using MATLAB. The structure of the closed loop system with compensation is shown in Figure 9.8.
Figure 9.8
The response of both outputs yv y2 for a unit step demand in r, are shown in Figure 9.9. It can be clearly seen that the controller meets the requirements of the specification with only a transient interaction in the speed response, output y2. The responses shown in Figure 9.9 are simulation results derived from a MATLAB model of the motor-alternator together with the compensator designed using the characteristic locus method. The use of computer-aided techniques has therefore assisted in both the design phase and the testing phase of the overall compensator derivation. What remains to be done, of course, is the final implementation of the compensator on the actual process in the laboratory. There are additional issues to be considered in any practical implementation and we note some of these in the next section. It is sufficient here to state that the implementation of the compensator design can, in principle, be achieved either by analogue or digital methods. If a suitable PC is available with the necessary A/D and D/A interface card, then the digital implementation would be a natural way forward. The procedure to follow involves conversion of the transfer function matrix description of the compensator into the equivalent state space form and then derivation of the recursive equations which approximate the continuous time integration of the state differential equations.
15 8
50
200
-0.05
50
200
Voltage response y 2
0.05
Speed response y 2
50
200
-0.05
50
200
Figure 9.9
9.4
15 9
facilities within MATLAB to determine the PSD and the parameters of an appropriate digital filter. (b) Non-linearities are another factor that begins to influence any real implementation of a digital controller. All the theoretical ideas that have been outlined thus far make the assumption of linearity in the plant parameters. If we restrict our attention to small signal deviations from an operating point then this assumption is generally valid. It is possible, of course, that the system may be subjected to large disturbances and the assumption of linearity is then somewhat suspect. The design of controllers for non-linear systems is beyond the scope of this chapter but there is considerable opportunity for further investigation in this area. (c) The effect of a variation in the sampling rate in the digital compensator is an additional 'degree of freedom' that is present in real computer control systems.
160
the reservoir water temperature increases and this will clearly influence the behaviour of any closed-loop control system for water temperature. Effect of process time delays, which are particularly noticeable in the case of the temperature loops. Effect of different magnitudes of step input on the estimated parameters of the model. It can be shown relatively easily that the gain estimates for a 5% change from an operating point will be different to those obtained for a 20% change. This effect demonstrates the non-linear nature of many real processes in their dynamic response characteristics.
Figure 9.10
9.5
Summary
This chapter has introduced the idea of a multivariable system and an example of a laboratory-scale model of such a process has been described. The presence of
161
interactions in the process has been considered and two methods for dealing with these effects have been explored. The use of MATLAB for both simulation study and multivariable controller design has been pointed out and implementation issues have been addressed. The material here forms the basis for further study of multivariable systems and has the added attraction of highlighting real laboratory analogues of common industrial processes that are multi-input and multi-output. For further information on the technical details of the experimental rigs described in this chapter, see Thomas [11] and Burney [12], respectively. More details concerning the theory and practice of multivariable systems can be found in Maciejowski [13], Skogestad and Postlethwaite [14] and Deshpande [15], for example.
9.6
1 2
References
ROSENBROCK, H. H.: 'Progress in the design of multivariable control systems', Meas. Control, 1971, 4, pp.9-11 ROSENBROCK, H. H.: 'Computer-Aided Control Systems Design', Academic Press, London, 1974 MACFARLANE, A. G. J. and KOUVARITAKIS, B. A. 'A design technique for linear multivariable feedback systems', Int. J. Control, 1977 25, pp.837-874 MACFARLANE A. G. J. and POSTLETHWAITE I.: 'The generalised Nyquist stability criterion and multivariable root-loci', Int. J. Control, 1977,25,pp.81-127 OWENS D. H.: 'Dyadic expansion for the analysis of linear multivariable systems', Proc. IEE, 121, 1974, pp.713-716 LJEUNG, L. J.: 'System Identification', Prentice-Hall, London, 1987 BILLINGS, S. A. and CHEN, S.: 'Neural Networks for nonlinear dynamic system modelling and identification', Int. J. Control, 1992, 56, pp.319-346 MATLAB Users Manual, The Mathworks Inc. SINHA, P. K., 'Multivariable Control - An Introduction', Dekker, New York, 1984
5 6 7 8 9
162 10
Control engineering solutions: a practical approach KOUVARITAKIS, B. A.: 'Theory and practice of the characteristic locus design method', Proc. IEE, 1979,126, pp.542-548 THOMAS, M. A.: 'The Design of a Multivariable Controller for a ModelScale Motor/Generator Set', Project Dissertation, Dept. of Automatic Control & Systems Engineering, University of Sheffield, 1992 BURNEY, P.: 'Modelling of a Temperature and Flow Process Control Rig', Project Dissertation, Dept. of Automatic Control & Systems Engineering, University of Sheffield, 1993 MACIEJOWSKI, J. M.: 'Multivariable Feedback Design', AddisonWesley, 1989 SKOGESTAD, S. and POSTLETHWAITE, I.: 'Multivariable Feedback Control: analysis and design', Wiley, 1996 DESPHANDE, P. B.: 'Multivariable Process Control', Instrument Society of America, 1989
11
12
13
14
15
Chapter 10
10.1 Introduction
The control of thermal processes has been given much attention over recent years and the use of digital controllers has been suggested for such real-life applications. These controllers often consist of discrete time versions of classical PID controllers or sometimes modern predictive and adaptive controllers. In this chapter a comparison is made between predictive and PID control, exemplified on a practical control problem.
164
T[C]
t[s]
Figure 10.1
A furnace with a single temperature zone is usually modelled using a first (or second) order element with a time delay. Estimation of the model parameters can be achieved using the MATLAB System Identification Toolbox facilities and a deterministic auto-regressive moving average (DARMA) model can be obtained.
G(s) =
Kf
Tfs +
(10.1)
there are many methods for tuning PID parameters [3-6] depending on the form of the controller and the performance criteria, (see also chapter 6). In many practical situations, derivative action is introduced in the feedback path and is filtered by a first-order lag which reduces the noise effects. In this particular form of the PID control law, the control signal u(i) is given by
165
00.2)
N where e(t) is the regulation error between the reference signal y*(t) and the measured output of the plant y(t). The parameters Kp, Tt and Td of the PID controller (assuming 7V=10) are determined according to the plant coefficients Kf, Tj and x to minimise the integral of the time and square of error (ITSE) criterion:
Jx=]te\t)dt
(10.3)
using the tuning formulas given in Reference 5. The controller model in the Z domain is obtained, for instance, by using the Euler approximation: U(z) = Gx(z)E(z) - G2{z)Y(z) with: (10.4)
j ^ + r/ifr-q
z-\
G(z) 2 =I^Z}!
(105)
( 1 0 .6)
166
(10.9)
and q~l is the backward shift operator and dT is the time delay. The DARMA model mentioned above can be expressed in d-step-ahead predictor form as: y(t + d) = E{q~l)y{t) + F(q'l)u(t) where: ) = e0 (10-11) (10-10)
The coefficients e0 and /,., i = 0,..., d - 1 are determined according to [7]. For the plant described by Equation 10.7, the weighted one-step-ahead control brings y(t+d) to the desired value y*(t+d) in one step. This control procedure that compensates the time delay may be applied because the future desired output is known from the thermal cycle prescribed by the user. The control law has the form:
(10.13) where: (10.14) (10.15) (10.16) (10.17) and because we chose u{t) = u(t) - u(t -1)
PV) = 0;
* V ) = -l
(10-18)
Predictive control vs. PID control of thermal treatment processes The control law in Equation 10.13 minimises the following cost function:
167
and because (\-q~x) is a factor of R(q~]), zero steady-state tracking error is achieved for a constant y*(t) sequence. Thus, a 2-DOF (degree of freedom) controller equipped with integral action is obtained. By recoding the control law of Equation 10.13 in terms of discrete transfer functions, the predictive control can be expressed as: U(z) = Gx(z)Y*(z)-G2{2)Y(z) (10.20)
(10.22)
10.4 Discussion
By adopting appropriate tuning, PID controllers can give results which compare quite well with advanced controllers. The control objective is to guarantee the fastest time response compatible with a small amount of overshoot and no steadystate offset, accounting for the presence of time delay. The most commonly used tuning criteria in industry have been ISE (integral of square error), IAE (integral of absolute error) and ITSE. The most appropriate criterion which partially solves the control problem outlined is ITSE. Unfortunately, time delay compensation and steady-state offset for ramp inputs remain unsolved. The adoption of a PID controller causes an output response which will differ from the desired one^*(0This might be obtained exactly by a more complex controller structure given by a weighted one-step-ahead control law. Using a predictive procedure, the time delay can be compensated and the accuracy of the controlled system will be improved.
168
Control engineering solutions: a practical approach resistance furnace for thermal treatment processes; commercial data acquisition card; personal computer.
The layout of the furnace, including sensor and actuator, is depicted in Figure 10.2. The command u is applied to the actuator which consists of a variable voltage regulator (VVR). The temperature is measured by means of a thermocouple. The average power given by the resistor R is determined by the phase control of the triac-based static switch TH and the adapter A yields the regulated output;;. The furnace resistance is supplied from a 220 V AC supply and is able to develop a power of 2 kW. The control variable is a normalised 0-5 V analogue signal corresponding to 0-100% power. The thermocouple, with adapter, delivers a 0-5 V signal, corresponding to a 0-550 C temperature range, with a maximum resolution of 1 C. The personal computer used for the control system hardware is provided with an interface card having 12 bit A/D and D/A converters that make the connection to the plant. resistance furnace
1 1 1
B
WR
< TH
Predictive control vs. PID control of thermal treatment processes 10.6.1 Parameter identification for the plant
A step response test of the thermal treatment furnace should be performed. On the basis of the set of response values obtained, the physical parameters of the system can be computed using MATLAB Identification Toolbox facilities.
169
170
5000
10000 [s]
5000
10000 [s]
(a)
Figure 10.3 Simulation results of the PID control loop
(a) closed-loop response (b) control variable evolution
(b)
171
Better performances are obtained using the predictive algorithm. Figure 10.4 shows that the control objectives are reached, that there is no steady-state error for up and down ramps and over- or undershoots are reduced.
[V]6
5
1 IJ
u
5000
5000
10000 [s]
10000 [S]
(b)
The weighting factor X is optimally chosen at the value 0.002. If a value of 0.001 is taken for X (Figure 10.5), the control signal behaviour becomes very erratic, with frequent saturation which can sometimes lead to ON/OFF control during some sample periods. On the other hand, a greater value for the weighting factor X (towards 0.01, Figure 10.6) makes the control action slow and regulation becomes inaccurate. Similar performances have been obtained in real-time experiments. Results of the temperature control experiments on the furnace, performed using PID and predictive controllers are reported in Figures 10.7 and 10.8, respectively.
172
(b)
5000
10000 [s]
(b)
173
(b)
(b)
174
10.8 Conclusions
Temperature control of a thermal treatment furnace with PID and predictive algorithms, respectively, has been presented. Experimental results show a better behaviour from predictive control because of its ability to deal with time delay processes. It is worth noting that predictive control is strongly sensitive to the value of the weighting factor X.
10.9 References
1 DJEBARA, K., DAHHOU, B., BABARY, J. P., KHELLAF, A. and GARIBAL, C : 'Partial state model reference adaptive control of a rapid thermal processor', Int. J. Adaptive Control and Signal Processing, 1993, 7, pp. 45-61 GAWTHROP, P. J., NOMOKOS, P. E. and SMITH, L. S. P. S.: 'Adaptive temperature control of industrial processes: a comparative study', IEE Proc. D, 1990, 137, (3), pp. 137-144 ZIEGLER, J. G. and NICHOLS, N. B.: 'Optimum settings for automatic controllers', Trans. ASME, 1943, pp. 759-768 KAYA, A. and SCHEIB, T. J.: 'Tuning of PID controls of different structures', Control Engineering, July 1988, pp. 62-65 ZHUANG, M. and ATHERTON, D. P.: 'Automatic tuning of optimum PID controllers', IEE Proc. D, 1993,140, (3), pp. 216-224 TAKAHASHI, Y., CHAN, C. S. and AUSLANDER, D. M : 'Parametereinstellung bei linearen DDC-Algorithmen', Regelungstech. Prozessdatenverarb., 1971,19, pp. 237-244 GOODWIN, G. C. and SIN, K. S.: 'Adaptive filtering prediction and control', (Prentice Hall, 1984) LAZAR, C , PASTRAVANU, O. and VOICU, M.: 'Laboratory equipment and process set-ups for control systems', European Seminar on Automatic and Control Technology Education, Dresden, 1993
3 4
5 6
Chapter 11
11.1 Introduction
The integration of a microprocessor and a fine measurement system with a pneumatic cylinder (controlled by a proportional valve) creates a new, powerful servomeehanism with adaptive features which can be applied in positioning units of manipulators or robots. The application of such a system introduces certain control problems, which can be solved only by means of modern control, e.g. identification of a model of the plant, estimation and compensation of nonlinearities, design of a state-space controller, state-space reconstruction and, finally, adaptive control of the system. Therefore a computer control system for positioning, using a pneumatic cylinder, is a useful example for presentation of modern control problems. A pneumatic cylinder is a system consisting of a mass suspended on two air springs and subjected to a friction. It is a well-known mechanic oscillating system with an input in the form of a force of air pressure on the piston surfaces. Movements in a linear system like this are best controlled by a state-space controller. Problems begin at state reconstruction: usually only the piston's position is measured; velocity and acceleration have to be either computed by differentiation of position or estimated by an observer algorithm. The next problem appears with the control valve usually it has a nonlinear characteristic and exhibits hysteresis. The cylinder is not uniquely defined either; variable mass, cylinder volumes, air temperatures and, most of all, variable friction conditions make its description nonlinear and nonstationary. An analytical analysis yields results far from its real dynamics. The only method of obtaining a reasonable approximation of this system's dynamics is to make a statistical estimation, but even this method is limited and introduces many problems in practice.
176
The design of the controller is not completely solved, either. The design of a state-space controller is easy but the limitations of air flows in the control valve make the control nonlinear. The next problem is variation in the plant (e.g. mass of the moving parts) and the need for adequate adaptation rules. The control task is not unique: a position has to be achieved either without overshoot or with a small, acceptable overshoot. A zero steady state error condition can be important or, alternatively, some error is acceptable and response time to the new position may be critical. In the case of real applications, another problem is adaptation to variable working conditions. Where the load is changed, the adaptation has to be very fast in the same movement. In the case of changed temperature or lubrication conditions, the adaptation can be slow and performed in quite a different way. All these problems can be considered in different applications. Hence a wide range of different algorithms can be applied, investigated and examined with students. A short discussion of a model of the system, based on description of the phenomena, is given as an introduction to this chapter together with preparation for subsequent identification of a statistical plant model, which will next be applied for the design of the controller.
where R denotes the gas constant and F(v) is the velocity-dependent friction of the moving parts. The linearisation of Equation 11.1 for a given position (volumes Vx% V20) and air state (pressures pn and temperatures 3/0), with substitution of the pressure difference px - p2 by the piston acceleration a, leads to the following equations:
177
dt
o, o, o,
o,
-
i,
X 0 0 1 V + 0 -2>eo o _ a Ceo
(11.2)
y = [1,
o, 0][x,
where x is the piston position and u denotes control of the proportional servo valve. The valve is considered as an inertia-less element; its cut-off frequency is approximately 10 times greater than cow. In transformation of Equation 11.1 into 11.2, the friction F is substituted by a linear function of velocity v. The system in Equation 11.2 is now described by the following parameters gain C, eigenfrequency co0 and damping >, which are dependent on the parameters of Equation 11.1 as follows: 2D<o =
r
m
2
10
20
(11.3)
_ A 2 \nxpXQ m
10
for surfaces A]=A2=A. The factor kF expresses the influence of friction F and kM is the coefficient of flow characteristic of the valve. The parameters (C, co0, D) are dependent on the piston's position (F10 V20) and the mass m and will vary with the piston's movements. The transfer function for the system in Equation 11.2 is equal to
Ceo,
r +2>co
(11.4)
The values of system parameters (C, co0, D) depend on construction and are usually within the ranges C e <0.15, 1.5 m/s/V> (at 10 V valve input), co0 <10rad/s, 60rad/s> andD e O . I , 1.5>. In the case of computer control a discrete-time model has to be introduced. It has been observed that the sampling time T for efficient control has to be within the interval <1 ms, 5 ms>. These values are small in comparison with those advised in the literature, e.g. Reference 2, but the total control period is approximately 200-300 ms and the piston brakes in approximately 50-80 ms (see Figure 11.2b), hence greater values of T will introduce poorer control results. The discrete-time representation in Equation 11.4 can be considered as a form of difference equation
178
Control engineering solutions: a practical approach v(Jfc) = axv(k -1) + a2 v(k - 2) + b[u(k - 1 - d) + u(k - 2 (11.5)
where A : is a discrete-time value, J = kT, and J is a time delay T = dr. The coefficients tf1? a?2 and & are determined by iterative estimation. For sampling time 7=0.33 ms and the values of frequency <oo mentioned, these coefficients will have practically the same values [3]. The system parameters (C, co0, D) can be derived from the estimations as follows: 2b \-ax co = 0.57[(l + ax - a2 - a, - a2
-il/2
(11.6)
This description (Equations 11.3-11.6) is an approximation valid for a piston velocity high enough to exclude an adhesive force of the piston to the cylinder walls that occurs at low velocities. A more real function of the friction force F is presented in Figure 11.1, where F, is the friction of the seals and/, is the unknown coefficient of Coulomb friction. The rapid increase of the friction at low velocities results in a stick-slip effect in control. Other friction effects, such as different tightening forces of the seals in cylinder volumes and frequent asymmetric construction, introduce hysteresis in the friction characteristic and asymmetry in gain.
Figure 11.1
179
The influence of these factors can be observed in Figure 11.2, which shows measured pulse results of the piston velocity at different valve controls. A distortion of dynamic behaviour at low velocity, Figure 11 2a, where the piston was stopped for a while, is yielded by the adhesive friction and is so strong that the piston could not drive smoothly through the cylinder.
-20k
150
m/s
225
0.75
(b)
Figure 11.26 shows the asymmetry of fast piston movements. Both figures exhibit a large gap between the transients expected from Equation 11.4 and the observed results. There is a visible difference in gains (ratio of velocity to input signal) in both cases, introduced by nonlinear control of the servo valve. All these effects cause the piston's features to be far from those derived from Equations 11.2 and 11.3, but the main character of system remains it is a mass suspended on two air springs and moving in the presence of friction. The representation (equation 11.4) is useful but only approximate and has to be adapted to actual conditions.
180
A full scheme for state-space adaptive control for a nonlinear positioning system is presented in Figure 11.3. A compensator for valve nonlinearity is introduced for correction of the valve characteristics.
u'
volt
proportional valve
air
press
pneumatic cylinder
X piston position
state space control algorithm Kx, Kv, Ka Kx, Kv, Ka controller design C, (o, D
x, v, a
+ 1 x
state reconstruction
observer design
Figure 11.3 Adaptive control system for positioning unit with pneumatic drive 11.3.1 State reconstruction
The state evaluation can be arranged either by direct differentiation of position or by state observers. The first method, based on a simple scheme,
(11.7a)
v(kT)-v(kT-T) = a(kT) =
(11.7b).
introduces high errors at small values of sampling time T. These errors are due to amplification of resolution errors by a factor of 1/7". For poor measurement systems, errors in the acceleration signal can be higher than the signal itself (errors in estimation of acceleration are magnified by factor of \IT2). A simple way to decrease these errors is to introduce a differentiation interval Tdiff T for difference operation and then
181
(1! 8a)
v(kT)-v(kT-TdiJf)
( n 8 b )
When F^equals 7, the quantisation error in signal a(kT) is decreased by a factor of #2. This approach is simple but yields a time delay approximately equal to 0.5 Tdiff For very fast systems (co0 > 40rad/s), the differentiation interval Tdiffh&s to be less than 4 ms. For slower systems satisfactory control results can provide The differentiation scheme of Equation 11.8 gives good results in cases where the resolution of the measurement system is better then 10 um. In the case of poorer resolution, observer schemes, as discussed in Chapters 5 and 7 and in Reference 4, can be applied. The best results were observed by the application of Luenberger observers or a mixed predictor-derivation scheme, where the velocity v(k) was determined from Equation 11.8, and for estimation of the acceleration the state equation (11.2) or its discrete-time form is used: a() = -2apv( -1) + [1 - a T - 2p(l - $)]a(k -1) + 2apCw( -1) with a=0.5co0T and P=l-Dco 0 T. (11.9)
where w denotes a target position for the piston, Kx, Kv Ka are controller gains and offset is a value introduced for compensation of asymmetry of the valve.
182
The gains (Kx9 Kv, Ka) are determined from the system parameters (C, co0, D) and the predefined poles sv s2, s3 of the closed-loop system. The usual approach is to set one real pole and a pair of conjugate poles with moderate damping. The poles have to be dependent on the eigenfrequency o and damping factor D of the system (Equation 11.4) 5, =Res 2 = Res 3 = -1.5co0, lms2 = ~ I
A requirement for smaller control errors yields other choice of poles [5]
RQS
=-K2C0,;(1 + D2)
1 / 2
lms
= -
The coefficients K1? K2? K3, which depend on the system parameters (C, CDO, >), optimised for low sensitivity in respect of damping D, are as follows:
K1=A,/G><,-1 + A K2=1.3, K 3 = \0/(3mo+l6D) (11.13)
where X is a coefficient which can vary within the range 50-1000. For lower values of A,, valve action is slow but the control error is high. High values of X involve oscillatory action of the valve but decrease the error. The controller gains are as follows: Kx = -s{ (Res2 + Ims 2 ) / Ceo2 Kv = {2sx Res2 + Res 2 2 + Ims 2 2 - t o 2 ) / Cm2
Ka =((K
2 1 / 2 2
(11.14)
183
end
start
end
(a) Figure 11.4 On-line estimation of model parameters within one braking interval
System parameters C, co0, D (a) for the valve-cylinder system with a 10 kg mass load (b) for the same system with change of load from 10 to 30 kg
The on-line calculations are started when the braking action of the piston is observed and are performed until the piston velocity attains 10% of its maximum value. One can observe transients of estimations due to 'refreshing' of the covariance matrix [6]. Figure 11 Ab shows estimations of the system parameters in the case of a change in mass load from approximately 10 to 30 kg. The system eigenfrequency co0 has to decrease, see Equation 11.3.
V Vmax J f j
-1
~i
1 >
.5 /
0.5
u 0
/
Umax
05
control signal
real
--05
/ -1
Figure 11.5
184
This characteristic is for a valve with negative overlap. The first part of this characteristic determines an offset value introduced in Equation 11.10. Compensation for valve nonlinearity can be introduced in a control system as a compensator for the valve characteristics or as part of the difference model (Equation 11.5) where terms b} present nonlinear functions of u.
185
Figure 11.6
The joint suspension (right stand) suffers problems with exchange of cylinders and can yield gripping effects. A much better mechanism is to disconnect the mounting of the cylinder and mounting of the carriage (left stand).
186
State-space adaptive control for nonlinear systems 187 11.6.4 State space control
The control experiments can be arranged in the form of cycles of short, medium and long piston movements. The movements are very fast, hence it is advisable to build into the control program a package for automatically saving the input and output data for each movement onto disc for subsequent analysis. Plotting these signals for display in real time, as the controller acts, is difficult. The advised sampling time is 1 ms. The gains of the state-space control algorithm can be derived from Equations 11.1111.13 with system parameters determined in the previous section. The factor X in Equation 11.12 should first be set to 50 and then increased to 600; the differences in control error are visible (at A,=600, control errors are roughly 10% ofthoseatA.=50). Some results of the state-space control are depicted in Figure 11.7a, which shows signals from positioning which is practically time-optimal. The position of the piston and its velocity are shown in the upper part. In the lower diagram the controller input, which is nearly time-optimal in sequence, (first full acceleration and next full braking action) and enlarged control error (100 jum amplitude) are shown. The control time (measured up to lOOuni zone) is approximately 168 ms. Typical positioning results (for the same position) are shown in Figure 11.76, obtained with a controller designed using Equations 11.12 and 11.13 in the adaptive control of the system. The profiles of position and velocity are very similar to those of Figure 11.7a, but the controller output and control error (lower part) show differences. The controller cannot establish braking as efficiently and the control time is visibly longer approximately 264 ms. The controller output is visibly more active than in the previous case but it is adaptive for sudden changes of moving system, e.g. variation of load or lubrication conditions. Positioning results for a strongly overdamped controller are given in Figure 11.7c. This effect can be achieved when the factor K3 in Equation 11.13 is decreased to achieve small or zero overshoots. The piston's movement may be braked too early and has to be accelerated (see the velocity signal) in some parts of the movement. Positioning is very slow it takes approximately 345 ms to reach the correct position. A small overshoot has appeared and the valve activity is too intensive, and can lead to shortening of the time between valve overhauls.
188
value: when the piston velocity in the braking phase of the movement is decreased to 10 or 5% of the maximum value, a revision of control gains can be made.
0.05
0.1
0.15 time, S
0.2
0.25
0.3
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
0.25
0.3
0.35
0.4
(b)
Transients of position and piston velocity (upper part) and control error with controller output (lower part)
(a) For time optimal controller gains (b) For typical adaptive controller settings
189
is less visible movements of the piston are slower and errors in state estimations do not influence controller output so strongly.
position [* 10 mm]
velocity [m/s]
0.2
0.3
0.4
0.5
0.6
0.8
control [V] enlarged position [*0.1 mm]
Figure 11.7 c Transients of position and piston velocity (upper part) and control error with controller output (lower part) for an overdamped controller The limited influence of valve nonlinearity observed was not expected at first; our expectations had been more pessimistic. The effect can be explained after inspection of Figure 11.7. The controller output, in the most important intervals of control, reaches its limits hence compensation for the nonlinearity is not required. Its positive effect can only be observed in those intervals when it does not attain its limits, i.e. at the conclusion of movement. Hence, the positive influence of compensation is observed only in more sensitive, small cylinders. Estimation of the nonlinearity is vital in follow-up control, when the piston control does not attain its limits during the control activity.
11.7 Conclusions
The system described for adaptive control creates a variety of problems, which can be demonstrated on the same apparatus. Many algorithms in modern control
190
have to be applied if satisfactory control results are required. The classic PD or PID control is not useful in the case considered. Only state-space control can fully cope with the problem. Other approaches, such as dead-beat control, can be considered too; however, this type of controller is very sensitive to distortion of the controller output, which is evident in the valve action. Various schemes for state reconstruction can be used but, even in the case of poor resolution, a simple numerical differentiation is most useful. Different methods are used for state-space controller design but pole placement with the proposed choice of closed-loop poles has resulted in good control parameters and is advised for this special application. The introduction of nonlinearity compensation does not introduce much difference in the case of exact control (with a high value of X). Then the controller gains are very high and the controller output attains its limits throughout almost the complete braking interval. The compensation for nonlinearity is necessary in tracking problems, when the piston velocity is controlled. The efficiency of the adaptation method described is observed in the controller design. Good knowledge of the system parameters leads to stable control with high controller gains Kx which yields very low control error. If the control error is less important, but, for example, control time should be minimised, other strategies can be developed. The most important feature of the control system presented is the variety of control problems that are introduced by a simple element such as a pneumatic cylinder, along with its possibilities for systematic training of different algorithms. For this reason we consider that it should become a standard experimental problem, similar to the inverted pendulum or multi-tank level and temperature control.
11.8 Acknowledgements
The authors would like to thank the Polish National Research Committee and Festo Co. for support of the research programme on which this work is based.
11.9 References
1 2 OLSZEWSKI, M.: 'Konzept der Zustandregelung fur schwachgedampfte Fluidantriebe', Olhydraulik undPneumatik, 1991, 35, pp. 932-941 ASTROM, K. and WITTENMARK, B.: 'Adaptive control', (Addison Wesley, Massachusetts, 1989)
191
JANISZOWSKI, K.: 'A modification of the Tustin approximation', IEEE Trans., 1993, AC-38, pp. 1313-1317 ACKERMANN, J.: 'Sampled data control systems' (Springer, New York, 1985) OLSZEWSKI, M. and JANISZOWSKI, K.: 'A survey on pneumatic positioning systems', National Conf on Control, Gdansk, 1994 (in Polish) ISERMANN, R.: 'Identifikation dynamischer Systeme', (Springer Verlag, Berlin, 1988) KLEIN, A.: 'Einsatz der Fuzzy-Logik ...', PhD thesis, 1993, Aachen, Germany TAKAHASHI, Y., et al.\ 'Control and dynamic systems' (Addison Wesley, Massachusetts, 1970)
Chapter 12
12.1 Introduction
Distributed parameter processes are dynamic systems the state of which depends not only on time but also on spatial coordinates. These processes are frequently encountered in important engineering problems. This chapter presents a practical approach to adaptive control of spatial temperature distributions in real thermal systems. Spline functions are used to move from the infinite-dimensional primary process representation to the finite-dimensional (lumped parameter) process description. In this way approximate, real-time models of the distributed processes can be constructed and identified using standard recursive methods. Application to distributed and boundary control is outlined. The resulting control algorithms can be verified and tested by various experiments with two simple laboratory-scale models of thermal distributed processes. The underlying principles of the models are explained here and their use experimentally is shown.
12.2 Motivation
Heating various solid materials is a typical technological operation in industry. In many of these operations the aim is to remove the material once its core temperature has reached a specified value, or once the temperature within the material has reached a particular spatial distribution. Moreover, the heating process should be as fast as possible, efficient to save energy and optimal from both technological and ecological points of view. Modelling of these processes naturally leads to problems of distributed parameter systems. The states of such systems are always a function of spatial positions, that is to say they are distributed. Frequently, only some of these distributed state variables are fully accessible for direct measurement. In this case the point is how to control the unmeasured distributed state variables utilising only output data measured on the
194
distributed system and the knowledge of the physical laws governing the process at hand. The thermal state within an ingot during the heating operation in a multizone reheating furnace is considered (for a simple scheme of the furnace, see Figure 12.1). The main aim is to reach a specified internal temperature in the ingot at the furnace exit which is necessary for hot working. The main difficulty is that the internal temperature cannot be obtained by routine measurement; it can only be predicted using a suitable mathematical model.
thermocouple
M *Wi i IVWVVII/IV
^ ~T Vl
Ingot
I i U / Ii \ X U I 1 1
^1
exi exit
to the mill
M
stack
r^
Figure 12.1
Further problems arise in temperature control of the furnaces from: nonlinearity of the controlled system and its asymmetrical behaviour, due to different time constants in heat supply and heat removal; variations in process dynamics due to irregular movement of the ingots through the furnace; time delays due to the distributed parameter nature of the process.
The goal of this chapter is to present basic ideas for an adaptive control scheme which can handle the problem of control of spatial temperature distributions in real thermal systems. For the case of boundary control, the principle of the control scheme consists of varying the boundary conditions (surface temperature Ts of heated material, see Figure 12.2) that govern the pattern of heat transfer into the heated material until it is calculated that a required value of internal temperature Tc has been reached. Control is achieved not by feedback but by maintaining a pre-calculated (reference) temperature-time profile at the boundary of the heated object. The feedback is then applied to control of the furnace temperature 7} or the surface temperature Ts if this temperature is accessible to direct measurement. The theory of the distributed parameter processes is rather complicated and involves many abstract notions and complex methods. Any practical illustration of the theoretical principles in the laboratory would seem to be very useful to obtain
195
a better physical insight into the problems. In this chapter two laboratory equipments supporting topics of distributed parameter processes are described.
c ! > Tf
.
T
T f = furnace temperature T b = boundary (surface) temperature of material T c = centre temperature (unmeasured) in material
Figure 12.2
196
finite difference method finite element method modal approximation Fourier transform method Mostly these methods mean approximation of the partial differential equations by a set of ordinary differential or algebraic equations. Our obvious conclusion is to treat the distributed parameter problem by substituting such an approximation for it at some stage in the analysis. This might be done at the beginning of the analysis early approximation or in the final phases of the analysis late approximation. Late approximation enables us to solve the problem in an infinitedimensional framework as far as it is possible. The form of the approximation is fundamental in the real-time implementation and determination of the control law.
12.4 Discussion
The techniques above are classical procedures used by many specialists to compute approximate solutions of partial differential equations (PDEs) or to obtain analytical formulas which can represent the solutions. The starting point of these techniques is a known primary model, mostly in the form of PDEs with specified initial and boundary conditions, which describes the process dynamics. In many practical situations it is difficult to obtain such equations which can represent satisfactorily the controlled process dynamics, especially if we want to take into account: time variations in process dynamics; process uncertainties; and stochastic disturbances.
A simple technique of approximation of the distributed processes using a spline function, suggested in Reference 6, appears to be useful to form simple real-time models. The technique utilises some of the ideas of probabilistic modelling of real systems introduced in Reference 7 and does not rely on PDEs. The resulting finite-dimensional models (of regression type) are especially suitable for adaptive control design. In the following two sections this technique will be described briefly when applied to distributed thermal systems.
197
(0 = [,(0,2(0,-,*(0] r
(12.1)
as the input vector of the controlled thermal system. Let us consider that the spatial temperature distribution y(xj) is measured at dy discrete points with coordinates xi9 xt e[0, L], (L is the active length of the system), / = l,2,...,rfy, and let us approximate the spatial temperature distribution by the spline function ys(x,t): ys(xj) = cyf(t)m(xj) 02.2)
where cy(t) is the dcy-dimensional vector of spline coefficients and m(x,t) is the vector of suitable B-splines chosen. Then the model of the controlled system can be written in the following finite-dimensional form:
ny nu
~i) + Y<BMt ~~ * ~ d) + c + EW
(12.3)
matrices of unknown model parameters vector of unmeasurable disturbances absolute term model orders time delay.
It is possible to estimate the unknown parameters of the model (Equation 12.3) by standard recursive methods from the measured input/output data while the distributed nature of the controlled process is kept to a reasonable level.
198
To determine the optimal values of the control input signals Uj(t) we use the following integral control criterion in which the spatial distribution of the controlled variable is included:
jH
= E\ jj Z [ J [CK*> *) - w^
}
(12.4)
and:
u(k)eU(k) where:
w(x,&) ur(k) g(x) Qu H U(k)
k = 1,2,...,//
(12.5)
is a reference value for y(x,k) is a vector of reference values for the input u(k) is the weighting function of the distributed control error is the positive semidefinite input penalty matrix is the control horizon is the set of admissible inputs.
If approximations of the spatially distributed functions y(x,k), w(x,k) in the direction x are performed with the help of the spline functions, then criterion 12.4 can be transformed to the finite-dimensional form:
(12.6)
with condition (12.5) where vector cyr(k) holds reference values of the spline coefficients, Qy is a positive semidefinite non diagonal weighting matrix, its elements are defined as integrals of all combinations of the mutual products of any two B-spline functions Bj(x)Bj(x):
\Bi(x)BJ(x)g2(x)dx
where z is the dimension of the spline base and ij = l,2,...,z. The minimisation of the criterion (12.6) with condition (12.5) can be achieved via the quadratic programming method (a full description is given in References 6
199
and 8). The resulting multivariable adaptive control algorithm has been applied to control of spatial temperature distribution in a laboratory aerothermal system and implemented to control temperature distribution in an industrial multizone reheating furnace.
200
(12.7)
0<x<Z,
t>to,
a*0
a2- c.p'
b- c.p
where L is the length of the bar, X is the thermal conductivity coefficient, c is the specific heat, p is the specific mass of the bar and h is the heat-transfer coefficient.
y(t)
s(x. t)
u(t)
s r (x, t)
u(t) = process input y(t) = measurable output of distributed process s(x, t) = process state (not measured) yr(t) = reference signal to be tracked sr(x, t) = reference (desired) state
Figure 12.3
Control scheme
ME
HI
exchangeable module
Figure 12.4
201
202
- x L s(x, t) y(t) u(t) d) = length of the bar = spatial distribution of temperature at time instant t = boundary temperature = input power = thermocouple
Figure 12.5
203
12.6.1 Aerothermal
process
Real-time and finite-dimensional modelling of distributed parameter processes based on spline approximation of the spatial temperature distribution; Determination of the structure and parameters of the regression models based on measured input/output data; Identification of time-varying distributed parameter processes employing various methods of parameter tracking; Self-tuning and adaptive control of spatial temperature distributions.
204
50.0-
^vv^w^v^^
30.0
500
Figure 12.6
1500
2500
3500 time, s
4500
0.0
4500
Figure 12.7
205
500
2500
3500
time, s
4500
Figure 12.8
to 60-
Airflow
cy3
cy5
45-
, 1500
v/^ A.
> /%
30-
^ ^ 2500
3500
cyi
time, s 4500
500
Figure 12.9
-0.1
500
1500
2500
3500 time, s
4500
Figure 12.10 Control signals Some experimental results with optimal boundary control of the heated copper bar, using inversion of the heat equation, are given in Figure 12.11. The aim of the inversion task is to calculate the optimal reference signal yr(t) for the controller. Following this signal the system reaches desired temperature profiles r(x, /,) in the bar at given time instants tt. The experiment starts from the known initial temperature distribution in the bar at time instant t0 = 0 s (see Figure 12.13). The
206
inversion tasks are solved for time instants tx and t2; tx = 840 s, t2 = 1680 s. Figure 12.12 illustrates the control input signal u(t) to the heater. In Figure 12.11 the real boundary temperature y(t) of the bar and optimal reference signal yr(t) are depicted. The optimal reference signal is calculated using software for inversion tasks. The aim is to reach, in advance, given temperature profiles sr(x, f/) at the time instants t{ and t2. The agreement between the desired profiles, sr(x, t{), sr(x, t2) and real measured profiles can be judged from Figure 12.13. The results obtained show good numerical stability of the proposed inversion algorithm for the cases of inconsistent and consistent tasks.
-t, s
1680
12.8 Conclusions
Based on a spline approximation for spatially distributed signals and simple system decomposition, a technique for modelling and control of distributed parameter processes has been developed. The technique is applicable for distributed as well as boundary control. A reference signal for boundary control to be tracked by the control system, is generated on the basis of an inversion of the given distributed parameter model. Although the experiments were performed on spatially one-dimensional thermal systems, the ideas can be extended to more complex distributed systems.
207
1680
bar length x, mm
280
Figure 12.13 The agreement between desired and measured temperature profiles at time instants th t2
*** s(x,tj) = measured temperature profile s/x,/,) = desired temperature profile
208
12.9 References
1 RAY, W. H. and LAINIOTIS, D. G.: 'Distributed parameter systems', (Marcel Dekker, Inc., New York, 1978) TZAFESTAS, S. G.: 'Distributed parameter control systems', (Pergamon Press. Oxford, 1982) SUNAHARA, Y., TZAFESTAS, S. G. and FUTAGAMI, T. (Eds.): 'Modelling and simulation of distributed parameter systems', Proc. IMACS/IFAC International Symposium, Hiroshima, Japan, 1987 RAUCH, H. E.: (Ed.) 'Control of distributed parameter systems', Proc. 4th IF AC Symposium I, Los Angeles, California, USA, 1986 BANKS, S. P.: 'State-space and frequency-domain methods in the control of distributed parameter systems', (Peter Peregrinus Ltd., London. UK, 1983) ROHAL-ILKIV, B., ZELINKA, P., RICHTER, R., SROKA, I. and ORSZAGHOVA, Z.: 'Design of multivariable self-tuning controller for a class of distributed parameter systems', in K. WARWICK, M. KARNO, A. HALOUSKOVA (Eds.): Advanced Methods in Adaptive Control for Industrial Applications, Springer-Verlag. Berlin - Heidelberg - New York, 158, (1991) pp.233-250 PETERKA, V.: 'Bayesian approach to system identification', 'Trends and progress in system identification', (Pergamon Press, Oxford, 1981) ZELINKA, P.: 'Adaptive control of distributed parameter systems', PhD thesis, Department of automatic control and measurement, Slovak Technical University, Bratislava, Slovakia, (in Slovak), 1989 ROHAL-ILKIV, B., ORSZAGHOVA, Z. and HRUZ, T.: 'A stepwise technique for inverse problem in optimal boundary control of thermal systems', in First International Conference on Inverse Problems in Engineering: Theory and Practice, Sheraton Palm Coast, FL, USA, 1993
2 3
4 5
Chapter 13
13.1 Introduction
In this chapter we report on fuzzy logic control and present results of several feasibility studies. In particular we present the inverted pendulum, amongst others, as a practical example. A simple fuzzy controller is designed for this system. Unlike observer-based approaches, no mathematical model is used. The control strategy is generated by formulating the tasks which need to be carried out to keep the pendulum in an upright position. Certain results of the inverted pendulum control system are presented here.
210
\7
Fuzzifier
Inference
U)
\7
Defuzzifier
u(c)
Figure 13.1
The fuzzifier transforms a crisp value into a fuzzy value. Mathematically this can be denoted as: (13.1) where n is the number of fuzzy sets influenced by the crisp value x, x e [-Z, L] and j^Xx), i e [0, 1] is the compatibility degree of the ith fuzzy set. The ai9 at e [0, 1]V/ describe the fuzzification operator which is in this case the product of the compatibility degree and the membership function. The inference network then provides the fuzzy output value u^. The fuzzy output u^ is the accumulated output of all the rules in the inference network. The inference network consists of r rules, where r is: r= (13.2)
rk is the number of fuzzy sets for each state variable. Each rule in the inference network can be described as follows: (IF u{f)ij =ji l i l ) AND (IF THEN
W(/,.+i=nu)
AND
(IF...)
uWl = \iol
(13.3)
where \xoi denotes the z'th membership function of the output. Then the fuzzy output u^ is the unification of all u^f.
U
(f)
(/hOR
U)20R"*
(13<4^
The aggregation operators AND and OR, used in the inference network, can be described in several ways. The minimum operator is used for the AND
211
aggregation operator. Therefore, for the two input values xx and x2, which belong to fuzzy sets A and B, respectively, we obtain the aggregation value:
The maximum operator is used for the OR aggregation. With the definitions above this results in: (/) =MAX(u(fh,...,u[f)r) (13.6)
The last component is the defuzzifier. The defuzzifier calculates the crisp value tt(c) from the fuzzy value u^. In our case we use the centre of area (COA) method, obtaining the output u^ from the input u^ as follows:
L
jxum(x)dx ^
}"(/)(*)*
03.7)
The last of these three examples we will explain in more detail, whilst the other two are only briefly summarised.
212
model of the turbine which has been well validated on a real turbine, in connection with the design of the PID control. A simple fuzzy controller was designed for this model. To assess the resulting fuzzy control we studied by simulation the step response of the speed due to a sudden load reduction of 100 %, as well as the robustness with respect to parameter variations of the turbine. The control task can be divided into two parts: 1. 2. Speed control of the turbine; Pressure control of the turbine.
In the speed control of a steam turbine the following two tasks are of primary interest: Run-up of the turbine to nominal speed; Catch a sudden load reduction at nominal speed.
To investigate the second task, we use both the dynamic model of the steam turbine as well as the PID control concept. It can be seen from Figure 13.2 that the overshoot of the fuzzy-controlled turbine, due to a sudden load reduction of the turbine, is much less than the overshoot of the PID-controlled turbine. The simulation results show that even a relatively simple fuzzy logic control algorithm can produce better results than a PID controller. More details of the control of the turbine can be found in Reference 5.
speed in [1/minj
speed in [1/minj
Figure 13.2
213
The control problem can also be solved using classical methods, e.g. state-space feedback, as discussed in chapter 7. In this section we will solve the control problem using a fuzzy logic controller. Instead of generating a model of the inverted pendulum for control, the so-called 'human-decision-making-procedure' is used. This means that the model is built using a human description of the process rather than by generating differential equations. The basis for the use of such human modelling is fuzzy logic. This means, also, that no mathematical model of the process is needed, unlike in classical control, e.g. an observer-based method, where a mathematical model is required. A block diagram of the controlled inverted pendulum is shown in Figure 13.4.
214
Figure 13.3
w ruzzy controllerl
X d dt
ruzzy controller2
d dt
Pendulum
Figure 13.4
Block diagram of the closed loop with the cascade fuzzy controller
The two controllers are implemented as cascade controllers. The inner loop controls the angle and the angular velocity of the pendulum while the outer loop controls the position and the velocity of the cart. Because the only quantities measured are the position and the angle, the derivatives of the position x and the angle <j>, respectively, are generated using the difference between two measurements and normalised with the sampling time. With these derivatives all four state variables are available for control. Now it is necessary to describe the fuzzy controller itself.
Fuzzy control: demonstrated with the inverted pendulum The outer loop (position and velocity) is designed as follows: 5 fuzzy sets for the position; 5 fuzzy sets for the velocity; 7 fuzzy sets for the output of this controller.
215
This results in 5x5=25 rules. Both the fuzzy sets and the fuzzy rules are shown in Figure 13.5. The inner loop (angle and angular velocity) is then designed as follows: 5 fuzzy sets for the angle; 5 fuzzy sets for the angular velocity ; 7 fuzzy sets for the output of this controller.
This also results in 5x5=25 rules. Both the fuzzy sets and the fuzzy rules are shown in Figure 13.6.
13.4 Discussion
There is substantial freedom in designing the fuzzy controller. Here we are restricted to the controller algorithms described above, but many modifications are possible, such as: Increasing the fuzzy sets of the state variables; Variation of the shape of the membership functions; Introduction of a reliability factor for each rule; Using a different method for defuzzification; Using different fuzzy operators.
Nevertheless, the structure of the controller is relatively simple and follows directly from the intuition of the design engineer. In our case the design was very straightforward.
216
OQ CU
^^
O Q
O Q O Q
00
oo
00
oo
go
go
SCO H
~ .
1
ocCU
oo
OO
00
_ f~'
.
S
00 00
-1
-z?'
r
. - -, .
<
--
-- -
as
(NOH
- - . ' 1 . < : - ^ .
00
o o -a,
go
.
- <
,
.
O Q
fo
s
O Q
00
=s
N
oo
OH
00
X
3
OQ
OH
- ^
><
- > <
_ ^ S
go
<
^
>
<
^ ^ ^ ,
go
--^ < -^
1
>
K^
<
55 c
"i
i
0
8 8 8 8 8 8 8 8
IS!
NJ 0
u-Thta
NS O
H 1C OO
PS O
pe
o
<o . o>
lOOO 9OO
NB NS ZJR PS PB O O H*OO O O
<O
o, y.
lOOO
8OO
7OO
6OO
y
\ /
9OO
/ V: ... ^ ^ 7 i \ / \
V \
4OO
\ i
/
2OO 1OO O
u \
/
\
-lOOO O Norn : lOOO -lOOO HaxX : lOOO MinX : MinV : 0 HaxY : 1OOO Fuzzu-St von 0 bis 4 wHlt:
PtiPB lOOlOOO
ytftf
...1.1
3OO
1OO
.....
V
A..., \
t A.
I
PB
3
f
Tw-Theta
! 1
ZR PS
N8 Ntt 1OO1OOO
NS lOOO
ZR 10 OO
PS LOOO
NB NS
lOOO
9OO
!
NS NM NB
12
13
;/ i\ NB NS ZR PS PB
10
/
5
/
PS ZR
PM "PS
16
ZR NS NM NB NB
14
roo
/A .11.. ]
6OO
soo
f-|- r
/ \ / \7
40O
3OO
ZR
17
NS NM
18 19
I
P5B PM PS ZR NS
2OO
JA
1OO
iVI/
CoA
IOOO
0 bis
MaxX MaxY
PB
fe P M k
2
*6
I I "
Figure 13.6
218
The model of the inverted pendulum can be reduced to the 'cart' system by removing the pendulum rod. This is useful because now the system is simpler with just two state variables ( x , i ) . For the reduced system, it is even easier to generate a fuzzy controller. It may be helpful to divide the laboratory example into two parts, the cart system for beginners and the inverted pendulum for more advanced students.
219
I
\ \
\ \ \
\
\ /
\ \ 2
31,3.1933 12:07:06
r
6
I 31.3.1993 12:06:5*
J 4 2it in tsc]
g-0.75
\ \ \ \ \ \ \
-0.75
A \ \
\ \ \ \
1-2.
-3.75
5 -5.25
Figure 13.7
220
[nvertiertes Pendel
\ \ \
\ \
r, -3-75
\ \ < / *
Zeit m Csec3
\ \ \ \ \ \ \ \ \
k
I 2.11993 10:39613
Zeit in CsecJ
Zeit i n Cscl
Figure 13.8
13.8 Conclusion
In this chapter we have looked at fuzzy control of a laboratory model of an inverted pendulum. Both the mathematical models of the inverted pendulum and the fuzzy controller have been described. The task consists of the control of a subsystem of the inverted pendulum, in this case the cart position without the pendulum rod, and of the inverted pendulum itself. The latter is more complicated because it is an open-loop unstable system, while the cart without the pendulum rod is open-loop stable. This is a good example to teach students how fuzzy logic control can be applied to unstable non-linear systems with non-minimum phase. Control of the inverted pendulum is, for example, similar to altitude control of flight systems and the control of many mechanical systems.
221
13.9 1 2 3
References BALL AY, R.: 'Real time control of the inverted pendulum using a fuzzy controller, Diplomarbeit, University of Duisberg, Germany, 1993 Amira GmbH: Manual for the laboratory set-up of inverted pendulum control, Bismarckstrasse 67, 47048 Duisburg, Germany, 1993 OSTERAG, E.: 'Fuzzy Control of an Inverted Pendulum with Fuzzy Compensation of Friction Forces', Proc. 6th IAR Colloquium 'Fuzzy Signal Processing and Lean Production \ Duisburg, Germany, 1992 BERTRAM, T.: 'Entwurf einer Fuzzy-Regelung am physikalischen Modell eines Drehschwingers', Proc. 6th IAR Colloquium Fuzzy Signal Processing and Lean Production \ Duisburg, Germany, 1992 Entwicklung eines Fuzzy Reglers fur eine Damfturbine, Casestudy, University of Duisburg, May 1993 Abschlubericht der Projekstudie 'Fuzzy Logik Flugkoerperregelung', University of Duisburg, July 1993 fuer die
6 7
LEE, C.C.: 'Fuzzy logic in Control Systems: Fuzzy Logic Controller', (1990) IEEE Trans. Syst. Man Cybern., SMC-20, No.2, pp. 404-435
Chapter 14
224
correct function of the overall system, either from the start-up or during normal operation [3-5]. Possible violations of these pre-conditions have been classified [5-7] including: incorrect choice of process structure (order and/or delay); non-linearities; deficient signal excitation; presence of unmodelled dynamics; process parameter variations; inadequate sampling time ; unstable poles and zeros; imperfect cancellation (critical for some designs); and loop instability.
These problems can be overcome through appropriate selection of algorithms and tuning parameters, selections based mostly on previous knowledge and experience. In an adaptive scheme the following basic blocks may be considered: Parameter estimation module: in this module we seek the most appropriate parameters, within a family of models, to fit the process' dynamic behaviour; Controller design module: according to the stated objectives and the process model previously obtained, at least one control law is proposed. Usually, the control solution is not unique and additional constraints, goals or requirements will determine which one is the most suitable; Closed loop evaluation module: this module verifies the fulfilment of control specifications, looking for abnormal situations, such as bumping, hidden oscillations, long term drift etc. At the lower levels in the hierarchy the problems can be handled algorithmically. A number of indicators, such as prediction error, trace of estimated covariance matrix, pole location and cost indices, amongst many others, may be evaluated. These indicators, together with some experimental knowledge, should be used at the top level, the supervisor level. In the following we are going to develop a supervisor level which can be designed using AI techniques. The basic scheme of such a supervisory system is depicted in Figure 14.1. The concept of an index or indicator, as the element capable of detecting the aforementioned violations, has then been introduced [5] and justified because of the impossibility of getting general solutions to the problems of stability and robustness of adaptive algorithms.
225
Furthermore, the special characteristics of real processes, with the presence of uncertainty and imprecise knowledge, make so-called heuristic indicators [5] especially useful, due to the ease of interpreting high-level qualitative aspects within the supervision methodology.
Controller compijt.
SUPERVISION
Estimator' Out.
v
Controller Plant
Figure 14.1
Supervision system
226
14.2.1.1 Start-up or pre-identification Strictly speaking, this is not a supervisory task, but it will produce some design factors which will be supervised on-line (for instance, the model order, delay estimates and disturbance model structure), or will be used by the supervisor. If the adaptive controller was applied from the very beginning, we would face the problem of a lack of estimates of the process parameters, which in turn would produce undetermined and possibly unacceptable control actions. Therefore, a prior estimation of the process model order, delay and parameters is made by open-loop testing. Model order estimation may be achieved by several methods [5]; for example, the cost function test. Determination of the model delay is usually carried out either by the cost function test or by using a model with an expanded numerator, the delay being the number of terms in the numerator which can be neglected [5]. Once the process model structure has been determined, the disturbance model structure must be tested. The noise auto-correlation vector is calculated, the noise being estimated as the prediction error in the identification procedure. If the disturbance present in the process can be modelled as white noise, then:
(J4 J }
corr[e(k%e(k +x)] 0
; x >0
If the noise is coloured, there will be v terms in the second expression which are non-zero, v being the order of the coloured noise which models the process disturbance [8], 14.2.1.2 Parameter estimation Estimation methods, as those described in chapter 1, constitute the heart of the self-tuning regulator. The reliability of the controller relies to a great extent on correct estimation of parameters (equations 1.1-1.3) [7]. Aspects to be considered include the following. Signal and estimate filtering. Input and output signals must be filtered so that the estimation does not become corrupted with noise. For instance, to avoid corruption of the estimation by abrupt disturbances, the expected process output may be used. The process output and the (current) model output for the (current) input are compared. If the difference appears to be unacceptable, the expected output can be used instead of the actual output. Obviously, a sudden change at the process output may have been originated from a real sudden change in the process parameters, with the process parameter estimates not yet having converged to the correct values. The source of the difference should be detected or, as is typical with most supervision tasks, a tradeoff must be established between the rejection of sudden abrupt output signal
227
changes and the estimation reaction speed following sudden changes in the process parameters. Estimator suitability to signal excitability. Persistent loop excitability is needed for correct estimation. This persistence is guaranteed by a control signal which sufficiently excites all the modes of the dynamic process. If this condition is not met, for instance, when the controller is well tuned, linearly dependent rows appear in the estimator variance-covariance matrix. Thus, this matrix will become singular or nearly singular in practice, and the estimator equations will become illconditioned. When forgetting factors are used, this problem can be seen from another point of view. From the general RLS estimation equations (equations 1.7-1.9 repeated here for convenience):
(14.2)
(144)
Consider the inverse variance-covariance matrix P(k). If no new significant information enters the system, the regression vector will contain negligible terms, and: P(k) ^ 1 (14.5) Now P will grow exponentially if X < 1, and the parameter estimates 6() will have large excursions - a phenomenon known as bursting. So, if no new significant information is present in the data we should stop the estimation. Algorithm exhaustion. If X 1, since the second term of the right hand side of Equation 14.4 is quadratic, then when the system is properly excited, the values of the P elements will decrease. This means that the estimation algorithm will collapse and so further time-varying parameter estimation becomes impossible. For the correct tracking of variable process parameters, a minimum estimation energy must be kept in the algorithm. This effect may be monitored through the P matrix trace. When its value falls below a certain threshold, two basic actions can be taken:
228
(1) Matrix P reinitialisation. This solution has the disadvantage of modifying the algorithm search direction with corresponding transient behaviour. (2) Forgetting factor modification. This modification can be progressive and so does not produce rough transients. If the trace of P is too high with a corresponding change of parameters bursting, the forgetting factor X should be increased. Conversely, decreasing X increases the sensitivity of the algorithm to new data. One related possibility is the use of constant trace estimation algorithms [3]. 14.2.1.3 Controller design The goal here is to avoid the design of a new controller (either by changing its parameter or its structure, including change of controller type), as this may degrade the effectiveness of the control. Among the functions associated with this supervision task we can find: Poles and zeroes test. Both process and disturbance model poles and zeroes are calculated. Depending on these values, different control strategies will be applied. For instance, minimum variance controllers with control action weighting must be used if the process is minimum phase, etc. [9]. Stability test. Before updating the controller parameters, the closed-loop characteristic equation should be solved in order to determine the stability of the system. Parameters such as the control action weighting in minimum variance controllers can be modified accordingly by the supervisor [5]. 14.2.1.4 Loop supervision The aim of this task is the detection of instabilities in the process input and output signals. If required, loop control is transferred to the back-up controller.
Adaptive control supervision (2) Parameter estimation Prediction error indicators Variance-covariance matrix indicators Estimated parameters indicators Controller design Indicators for the poles and zeroes of the model Loop error indicators Closed-loop Output signal indicators Characteristic equation indicators
229
(3)
(4)
Each one of these groups incorporates statistical indicators (means, variances, covariances, norms, trends, accelerations, etc.), and it is possible to establish which of these gives more information about the problems arising during control. A description of numeric indicators is presented in the Appendix to this chapter. 14.2.2.1 Evaluation of indicators Validation of the indicators can be studied through a simulation package, thus allowing for different estimation and control combinations in open- and closedloop situations. Let us review some results that allow us to connect the numeric information with heuristic information. A complete study of these relationships is given in References 8 and 10. Unmodelled dynamics. Prediction error autocorrelation is used as an indicator for detecting the presence of unmodelled dynamics. As is well-known, if the prediction error can be modelled as a white noise process, the autocorrelation function will be zero for those signals shifted by one or more sampling periods. If it can be modelled as a coloured noise process, as many factors as the order of the corresponding filter will be different from zero (Figures 14.2 and 14.3). Process parameter change. In order to detect changes in the process parameters, the cross-correlated factors between the prediction error and the control action and process output signals, respectively, can be used. These indices inform us quickly, not only about generic parameter changes, but also (with some assumptions) about which specific parameter has changed. This is very important, since it enables specific actions to be taken for the parameter or group of parameters under change, leaving the others untouched.
230
When the estimation is undertaken in the closed loop, the information given by these indicators is not as clear as in the open loop. This is especially true for the process denominator coefficients, due to the presence of feedback (the output is an implicit and explicit function of the parameters). This makes it difficult to specify which parameter is changing. Yet, from a qualitative point of view, the same imprecision may be accepted and it is possible to handle the information given by these indicators (Figure 14.4).
J~
-3.
JE
0||
[in n
1 ? y sr
0 .9771618 /CorEECO)
X
(2)
nip'
-0. 5
ilhn frnnrsnJ1!
.07016
(3)
0. 0
(4)
UL 0rs l
nrIP05280
CoHEE<13^ -0.1
Cor-EE<2>
-0. 5
0 .02801
Figure 14.2
Unmodelled dynamics structure. Second-order overdamped process. RLS. (1) Ref, input, output. (2) A priori prediction error. (3) Autocorrelation Oee(z) coefficients. (4) A posteriori prediction error. The only autocorrelation coefficient not zero is O w (0).
Cor EE CIV
Figure 14.3
Adaptive control supervision 231 14.2.2.2 Minimum set The selection of a minimum set of indicators that represent the process state depends on the individual viewpoint and on the process to be controlled. Numeric and heuristic indicators must be studied in the evaluation step and a relationship between both kinds of indicators has to be established [8,10]. In Table 14.1, we can see that certain numeric indicators supply similar information about the same heuristic aspects whereas others supply complementary information. We propose a minimum set of indicators which is complementary to the set proposed by Reference 5.
(2) Coreu<2) - * 2
(1)
(4)
0.0
0.0
P y
^_
-0-5
0.00000
-i.0
-0.00098
Figure 14 A
Cross-correlation factor evolution when bx and b2 change. ( 1 ) 4 > ( T ) (2)(D ett (T)(4)O ( t ) . Numerical indicator Prediction error index Delay test Norm and trend of the parameters Cross-corr. Func. pred-error/input Cross-corr. Func. pred-error/output Variance of the prediction error Correlation funct. of the pred. error Matrix P trace Trace of the matrix P Trend of the matrix P Variance of the parameters Characteristic equation roots Variance of the output
Heuristic indicator Validity of the process order Validity of the process delay Parameters process change Zeroes process change Poles process change Convergence of the parameters Estimation bias Bursting of parameters Energy of the algorithm Signal excitability Unmodelled dynamics Admissible set of regulators Closed loop stability Table 14.1
232
(2)
(3)
(4)
(5)
(6)
Each supervisory function is the response of the supervisory system to an anomaly which may appear during normal operating conditions and is detected by the indices. One single index, or some combination of several, can detect the anomaly. The information in the set of indices determines the state of the overall system and the most appropriate functions are activated accordingly. Supervisory functions have been studied, together with suitable indicators, each supervisory function being associated with a state. For instance:
233
Indices - cancellation of poles and zeroes - prediction errors - test for time delay detection Function - model structure change - controller structure change (2) State: parameter process change
Indices - prediction error correlation - norm of estimated parameters - variance of estimated parameters Function - forgetting factor modification - estimation algorithm start - filtering of parameters (3) State: signal excitation
Indices - variance-covariance matrix trace - variance-covariance matrix trace trend and acceleration Function - forgetting factor modification - extra control signal The indicator which is associated most suitably with a supervisory function depends on the process to be controlled as well as the environment in which the overall system must operate.
234
235
In this sense, we can define a fuzzy controller as a real-time ES architecture that uses fuzzy logic techniques of knowledge representation to define generalised control strategies [8].
rTl
HI H2
Qi
LJ
LJ Q3
Q2
Figure 14.5
Both tanks are fed, via a safety valve, from a small reservoir with two suction pumps. The flow into each tank can be controlled by modifying the voltage of these pumps. Each tank has a level sensor at the top, to measure the liquid level. The system allows several different configurations depending on the opening of the valves as well as the diameter of the variable orifice between the tanks. It is possible to determine a mathematical model for this process but, due to physical parameter variations (valves opening, orifice between tanks) and level set-point variations that exist in actual operation, it is preferable to find an experimental model by discrete parameter estimation and to use closed-loop control by STR (self-tuning regulator) adaptive control supervision. A set of instrumentation is required for digital control of the whole system; some of this has been developed in our laboratory and some purchased. This set of equipment comprises the following:
Control engineering solutions: a practical approach Level transducer. This transducer has been developed using an ultrasonic transmitter and a receiver. The actuators are two pumps. In order to control the flow through the pumps it is necessary to modify the input voltage for each pump. This is achieved using a special circuit with an output range between 0 to 10 V. Level interface. The information from the level sensor is translated into digital information using an interface between the sensor and the computer. The digital signal is obtained by measuring the interval of time between the emission and reception of one ultrasonic wave train. A pump driver. In order to control the flow through the pump it is necessary to modify the input voltage for each pump. This task is achieved using a special drive with an output range between 0 to 10 V. A DT2808 or PCLAB converter with A/D, D/A converter and digital ports for I/O. A 486 PC-AT computer or above with mathematical co-processor. A package of software including MS-DOS and the Modula-2 compiler.
(3)
(4)
A general diagram of the control equipment is shown in Figure 14.6. The signals with the information concerning the levels are translated using a special interface into a digital word which is read into a digital port installed in the computer. The computer works with this information and, depending on the control algorithm, provides control via an analogue signal to vary the flow through the pumps. The coupled-tank process has the following configuration: valve 1 closed / valve 2 open pump 1 open / pump 2 open controlled variable Hx control variable Qi variable orifice 1 or 1.3 cm sample period 0.3 s
237
sensor1
sdnsor 2
Figure 14.6
With this configuration we pre-estimate a second-order, linear discrete SI SO model using a RLS estimator with a white noise input, defined by the difference equation: (14.6) where h^(k), qt{k) and v(k) are the input, output and disturbances at instant k and A and B are polynomials defined by: (14.7) (14.8) The disturbances are described by the stochastic process:
v(k) = H(z'l)e(k)
(14.9)
where H(z l) is a rational function, and \e(k)} is a white noise process. In this practical case it is possible to assume H(z~l) = 1, then the RLS algorithm gives unbiased estimation and {e(k)} represents the prediction error. A simulation package allows more exhaustive experimentation with more complicated plant and stochastic process models H(z).
238
Many methods can be used for the recursive estimation of the model parameters - RLS, RELS, RIV, RML, STA etc. [6] - the choice of which depends on the nature of H{z).
Adaptive control supervision 239 At the beginning, the RLS algorithm is active whilst the RELS is a back-up algorithm. In the figure the lower diagrams present the first two elements of the prediction error autocorrelation vector (O w (0) up and <&ee(l) down), RLS on the right, and RELS on the left.
Figure 14.7
X
n n
-3 .0
0 .07856 c
\\ 1 0 .6 0 92462
ji
"
<
* . f \ c
/
rls . 1 0 ~0
.0
0 .0
r
rels
if -0.1
Is
r-ls
0.11102
Figure 14.8
The controlled variable y incorporates a coloured noise term which is not detected by the fuzzy controller in the first step of the experiment. Thus, in this step the controlled variable follows the set-point poorly (first step in upper left diagram). When the excitation in the estimation algorithms (RLS and RELS) modifies both autocorrelation vectors eeRLS and eeRELS, then 0>eeRELS < ^eeRis
240
and, at this moment, the fuzzy controller decides to change the estimator type, from RLS to RELS (warning with the letter c in the upper right diagram). After this, the controlled variable behaviour is improved.
14.5 Conclusions
The experience obtained working with adaptive control in real processes has some practical benefits in dealing with the implementation of this kind of control. In this chapter, relevant issues in adaptive control supervision have been highlighted to draw attention to the difficulties of adaptive control implementation in industrial environments. Based on this idea, a fuzzy controller supervising the correct behaviour of the adaptive loop has also been included. A laboratory set-up based on a configurable coupled-tank process has been used. In one of these configurations, we have chosen the more appropriate indicator set to carry out the supervisory functions, and two of the more relevant results, forgetting factor scheduling and estimator scheduling, have been presented. The tool we have developed is simple to handle and very suitable for training students, allowing for a number of process configurations with different control problems. Further, by means of a simulation package for discrete models, more exhaustive experimentation with other models - which are more complicated in dynamic terms than the physical coupled-tank plant - is available.
14.6 References
1 ASTROM, K. J. and WITTENMARK, B. 'Adaptive Control'. AddisonWesley publishing Company, 1989 ALBERTOS, P., NAVARRO, J.L., MARTINEZ, M., and MORANT, F. 'Intelligent Industrial Control'. 1 lth World Congress IF AC. Tallin, URSS, 1990 FORTESCUE, T. L., KERSHENBAUM, L.S., and YDSITIE, B.E. 'Implementation of Self Tuning Regulator with Variable Forgetting Factors'. Automatica, 1981, 17, No. 6, pp.831-885 ISERMANN R. 'Parameter Adaptive Control Algorithms-A tutorial'. Automatica, 1982,18, pp.513-528
241
ISERMANN R., LACHMANN, R. 'Parameter-Adaptive Control with Configuration Aids and Supervision Function'. Automatica, 1985, 21, No. 6, pp.625-638 LJUNG L., SODESTROM T. 'Theory and Practice of Recursive Identification'. MIT Press, 1983 SCHUMANN, R. 'Towards Applicability of Parameter Adaptive Control Algorithms '. Proc. IF AC Congress Kyoto, Pergamon Press, 1981 MARTINEZ, M. 'Indicators for Adaptive Control Supervision. Implementation by means of Expert System Methodology'. PhD Thesis Universidad Politecnica de Valencia (Spain), 1991 ISERMANN R. 'Digital Control Systems'. Springer-Verlag NY, 1981. MARTINEZ, M., MORANT, F., and PICO, J. 'Supervised Adaptive Control'. Applications of Artificial Intelligence in Process Control. Ed. Pergamon Press. ISBN 0-08-042016-8. pp.427-455, 1992 MORANT, F., MARTINEZ, M. 'Hierarchical Expert System as Supervisory Level in an Adaptive Control'. 4th IEEE I. Symp. on Intelligent Control. Albany, September 1989
6 7
9 10
11
14.7 Appendix: numeric indicators 14.7.1 Associated with the pre-identification process
The pre-identification process is responsible for producing an adequate start-up in the adaptive control system. Therefore, it must provide enough information to avoid violating the system pre-conditions. During pre-identification, which is carried out in open-loop, the initial design factors for the on-line control start-up will be proposed from the associated numeric indicators. Indicators (1) The sampling rate test allows for the most appropriate sampling rate to be chosen from the determination of the 95% settling time [5].
242
(2)
The process order test. The prediction error quadratic function may be used to suggest the process model of order m: V(m) = e(m)Te(m) (14.11)
Alternative tests, such as the poles-zeroes test or the residues test exist, but they are more time- and memory-consuming. (3) The process delay test is based on the B polynomial coefficients which can be neglected:
Iv,
(4)
(14.12)
The unmodelled dynamics test. With this test the disturbance model can be determined as either white or coloured noise, so the most adequate estimator can be chosen. The interpretation of the prediction error autocorrelation <bee{%) is used for this purpose.
Mean error value (hereafter may be referred to both the a priori and the a posteriori error):
a!(k) = E{[e(k)-e(k)f}
(5) Error variance trend:
(14.16)
(6)
(7)
Autocorrelation function:
{ [ ] }
(8) Crossed correlation function u/e: u(k)e(k+x)]} (9) Crossed correlation function yle
(14.19)
(14.20)
]}
(10) Cost function:
(14.21)
(14.22)
= e(x)Te(x)
Associated with the V-C matrix (1) V-C matrix: [ (2) V-C matrix inverse: f i ) ) (3) Trace of the V-C matrix inverse: | (14-25) (14.24) (14.23)
244 (4)
(5)
aW-a'W-'f^hQ-aW-Y)
Associated with the estimated parameters (1) Estimated parameters average:
(14-27)
6,() = {9 ,()}
(2) Estimated parameters variance:
(14.28)
[,.(A:)-e,.(A:)]2j
(3) Estimated parameters norm:
(14.29)
(4)
(5)
Norm acceleration:
aN(k)=a
+ (l-a)aN(k-l)
(14.32)
Adaptive control supervision (2) (3) Poles and zeroes: magnitude trend. Poles and zeroes: magnitude acceleration.
245
Associated with the loop error (1) (2) Loop error: eb{k) = r{k)-y(k) Loop error average: (14.33)
{h}
(3) Loop error variance:
(14.34) (H.35)
ol=E{[eh(k)-eh(k)]2}
(4) Loop error variance trend:
(5)
14.7.4 Associated with the closed loop In this case the main effort is to detect the loop's stability evolution. Indicators Associated with the characteristic equation roots (1) (2) (3) Characteristic equation roots: magnitude, arguments, real and imaginary parts. Characteristic equation roots: magnitude trend. Characteristic equation roots: acceleration.
246 (2)
o2y=E{[y(k)-y(k)f
(3) Output trend:
y l )
+ ( l - a ) t
( k - l )
(14.40)
(4)
Output acceleration:
a , W = aM^ + (l-H(i-l)
(5)
(14.41)
Control signal saturation test. The goal is to determine whether the control signal is saturated during a pre-determined number of sampling periods and whether there is any simultaneous change in sign [5].
Chapter 15
15.1 Introduction
In this chapter an online supervision concept based on analytical redundancy is introduced. Based on mathematical models of physical systems and measurements taken to control these systems, a fault detection concept is developed which can detect actuator, component and sensor faults. With this algorithm, signals are generated which allow a reliable decision as to whether a fault has occurred or not and in some cases even give information about the nature of the fault. As a practical example the application of this concept to a three tank system is described and results are shown.
248
deviations or symptoms probable faults should be detected, located and the cause identified in order to take suitable emergency measures or to adapt the maintenance schedule. The comparison of actual with normal behaviour should in this case go further than simple static balance equations which are often already employed in industry. This is in order to make a diagnosis possible under all operating conditions of the system under supervision. Instead, dynamic balance equations should be used which simply involves evaluation of the input and output measurements together with a mathematical model of the system. This concept is known as fault diagnosis using analytical redundancy. The mathematical process model describes the process behaviour under normal operating conditions and serves as a basis for the evaluation of the redundancy inherent to the measurements. The measurements employed are those which are already accessible in the control room for control purposes. The main objective is the supervision of those signals that are already accessible by evaluating them further, not to implement additional hardware in the form of additional sensors. This supervision concept can be implemented purely as software on a digital computer which does not influence the process under supervision at all. A good overview of the state-of-the-art in model-based fault diagnosis can be found in the literature [3-11].
Model-based fault detection: an online supervision concept actuator faults component faults sensor faults
249
actuator
components
I f
Figure 15.1
"T
unknown inputs (parameter uncertainties, disturbances, measurement noise) Effect of faults and unknown inputs on a technical process
250
faults
1 model
K filter, observer
15.5 Application
The concept of model-based fault detection is of special interest to the process and chemical industries where aggressive and highly toxic fluids run through tanks, pipes and pumps. Leaks and blockages can have a serious impact on the environment and need to be detected immediately to allow emergency measures to be taken. The concept presented here has been applied to the laboratory set-up of a three tank system by Prof. P.M. Frank's group at the Institute of Measurement and Control at the University of Duisburg [6,12]. With this method leaks in the different tanks and blockages in the connecting pipes can be detected and localised. In the following the design of a fault detection filter or observer will be explained for this practical example and results will be given.
251
water runs into a basin. There it is collected to serve as a supply for the two pumps. The level of the water in all three tanks is measured via piezo-resistive pressure sensors with integrated test amplifiers. With the help of a digital controller, the levels of the water in the left and right hand tanks can be adjusted independently to a given reference level. The level of the third tank always assumes a certain uncontrollable value. For the implementation of blockages and leaks, the interconnecting pipes can be closed by valves whilst additional outlets representing leaks can be opened by valves [1].
Pump 1 Pump 2
Figure 15.3
For the dynamic model, the incoming mass flows Qx(i) and Q2(t) are defined as inputs while the three measurements of the levels hx{t\ h2(t) and h3(t) are considered as outputs. The state variables are the water levels of the three tanks such that the full state vector is measurable. The dynamic model is derived via the incoming and outgoing mass flows applying Torricelli's law [12]:
Ql
(t)
aZlS
"
dt
~h2(t))pg\h3(t)-h2(t)\
(15.2)
(15.3)
az3sn
Qn (0
252
Qf, (f), (/= 1,2,3) denote the additional mass flows caused by leaks or blockages in the different tanks or the interconnecting pipes. azh az2 and az3 are the discharge coefficients, Sn is the cross-section of the connecting pipe and g the gravity constant. The above equations can be rewritten into matrix form with the following definitions [12]: x(t) = u(t) = (1 / A)[Ql(t),QiO)]r B,(x{t),u{t)j B B(x(t),u(t)) = 2(x(t),u(t)) (15.4) (15.5)
(15.6)
(15.7) (15.8)
B,(x(0,(0) = l 5,(x(0,(0)
-az2S,,pgx2(t) B3 (x(0) = (1 / A)(az,Sn sgn(x, ( 0 - x, -az,Sn s g n ( x 3 ( 0 - x 2 ( t ) p The state-space description results in
(15.9)
(15.10)
-x2(t)\)
(15.11)
253
Starting from this process and fault models, nonlinear filters for fault detection are designed. The objective is to generate residuals which yield clear decisions even in the case of simultaneous faults. To achieve this a bank of fault detection filters was employed [12]. Three different filters or observers have to be designed, each generating a residual which is sensitive to only one fault and insensitive to the other two. If one neglects the nonlinearities B{x(i),u(t)) which are only dependent on the fault-free measurements and the known inputs, then the remaining linear part only consists of three simple integrators excited by the faults. Considering two of the faults as unknown inputs, the design of a robust filter now becomes particularly simple. The first filter has the following form [12]: dzx(t) dt = Fxzx (0 + TxB(y{t\u(t)) + Gxy{t) rx(t) = LX]zx(t) + L2]y(t) with 7J= (1,0,0); Fx=-a0l; G, = (a01,0,0); I,, =-<*,; L2[ = (aox ,0,0) (15.16) (15.14) (15.15)
The estimation error, as well as the residual, is only a function of the fault Qj\(f) in the first tank
<fe,(O
dt
= -amex(t)-Qfx(t) = -aoxex(t)
(15.17) (15.18)
This can also be concluded from the inspection of the transfer function between Qji(t) and the residual r{(t). Here we have a first-order lag system with the time constant l/a01, which can be assigned freely. With LX] = -aox the stationary amplification between the fault signal and the residual can be chosen. The faults Qji(t) and Qfi(f) do not act on the residual, which shows that complete decoupling has been achieved. A similar design has been made for the second and the third tank [12], yielding: ^ F at ( / ) (15.19) (15.20)
2 2
254 with
G2 = (O,aO2,O); A 2 = - a 0 2 ;
(15.21)
dzJt) ^ - = F3z3 (t) + T, 5(X0 " ( 0 ) + G 3 ^(0 dt r3(r) = Z1 z3(t) + L2 y(t) with r3 = (0,0,1); F3=-a03; G3 = (0,0,a03); Z, =a03; Z2 =(0,0, 03 )
0 5 22) (15.23)
(15.24)
for the third filter. The estimation errors and the residuals are again only functions of the fault in the corresponding tank: de2(t) = -ame2(t)-Qfl{t) dt r2(t) = -aO2e2(t) for tank 2 and (15.27) = -aose3(t) (15.28) (15.25) (15.26)
for tank 3. The observer poles a02 and a03 are again freely assignable under the condition 0 < aOi for a stable observer. The general structure of the bank of filters is shown in Figure 15.4 [12]. With the help of this bank of filters unique leak detection is possible in all three tanks, although leakages, however, can only be detected uniquely under the assumption of one fault at a time. The fault detection algorithm has been implemented on a PC in the computer language C with a sampling time of 50 ms. The observer poles were chosen to be aOi = a02 =tf03= 0.25 corresponding to a time constant of 4 s. Figure 15.5 (a-e) shows experimental results from the online application of the scheme designed to the physical process [12].
255
()Qaf
Qi(O Q2(t)
i 1
v h b 3-Tank System
Filter 1
Ib
J Filter 2
2W
,2(
pit)
iii
I Filter 3
Figure 15.4
The operating conditions can be obtained from Figure 15.5 (a and b), including water levels h{(f), h2(t), h3(t), and incoming mass flows Q\(i) and Q2(t). Figure 15.5 (c-e) presents the dynamic behaviour of the three residuals during the following experiments: Leak in tank 3 fromt=8sto t=3Os, Leak in tank 2 from t=70 s to t=92 s, Leak in tank 2 from t= 120 s to t= 140 s. The size of the leaks can be obtained from the residuals since they result in a mass flow of 40 ml s"1. The faults can be detected, isolated and even their magnitude determined. Figure 15.6 (a-e) shows the experimental results for a blockage in the interconnecting pipe between tank 2 and tank 3 for t >3 s [12]. The reaction of the controller can again be seen in Figure 15.6 (b) and the behaviour of the dynamic system in Figure 15.6 (a). Residual r{(t) shows a slight reaction due to the model's uncertainties. Residuals r2(t) and r3(Y), however, exhibit a significant response with equivalent magnitude but opposite sign. This means that no two leaks happened at the same time, as the residuals would then have the same sign, but that there is a certain mass flow missing in one tank and too much in the other tank. Therefore a blockage must be the cause of this effect.
256
Control engineering solutions: a practical approach Measured Water Levels Measured Inflows
a)
hi(t):....:
:....:..
-MO
':-;-:
r2(t) ;--v.
"a
15
Time [sec]
i&
15
Time [sec]
135
e)
_ 60 r3(t)
CO
1-20 -60
"[: f.
15 Time[sec] 135
Figure 15.5
257
b)
TT 80
Qt(t)~~:
Measured Inflows
JS 40
s ;
XT :
:-:
:-:
:-:
^:-; :-V; ; ; ; ; ; v; : : : : : : : \
21
c)
Time[sec]
189 d)
21
Time [sec]
189
TT
60
JL 20
No
-60
I I
21
Time[sec]
189
IT
tO
60
i- 20
ua
^(0 : : :
1
21
1
:
I
Time [sec]
189
Figure 15.6
258
In the case of certain unmodelled faults in the sensors, the residuals react with a significant response. Figure 15.7 (a-e) shows the results for an experiment in the case that the sensor reading for the water level in tank 1 drops to zero for t > 11 s, [12]. An additional logic evaluation of the residuals in Figure 15.7 (c-e) would allow fault identification due to the different time response compared to that of a leak. Since, in that case, the dynamics of the residuals have to be considered, this would need a more sophisticated residual evaluation than simple threshold logic.
Measured Water Levels b) Measured Inflows
80 ..Qi(ty.:
40 J : "
15
Time [sec]
185 d) ~5> 60
15
Time [sec]
135
20
3 -20 -o -60 y -20
r2(t)
I
15 Time [sec] 185 Residual 3, Fault in Sensor 1
e)
60
JL 20
1.2
-60
I t
15
Time [sec]
185
Figure 15.7
259
15.7 Conclusions
Due to the simplicity of this example, the design procedure for the fault detection filter is easy to comprehend but it also illustrates its limits. A precise model description, together with the location and number of measurements, is of critical importance. For each technical process a detailed analysis has to show which faults are detectable with which minimal size and whether they can be isolated from each other. The advantages can be seen in the evaluation of information not previously used, namely in the measurements' inherent redundancy. This, together with the process knowledge of the operator, can be used for a new kind of diagnosis without the need for additional hardware.
15.8 References
1 DTS200 Laboratory Set-up Three Tank System, Documentation, amira GmbH, Duisburg, Germany, 1992 FRANK, P. M.: 'Advanced fault detection and isolation schemes using nonlinear and robust observers', Proc. 10th IF AC World Congr., Miinchen, 1987, 3, pp. 63-68 FRANK, P. M.: 'Fault detection in dynamic systems using analytical and knowledge-based redundancy n A survey and some new results', 1990, Automatical 26, (3), pp. 450-472 FRANK, P. M : 'Enhancement of robustness in observer-based fault detection', Proc. SAFEPROCESSy9h 1991, Baden-Baden, pp. 275-287 FRANK, P. M.: 'Robust model-based fault detection in dynamic systems', IFAC Symp. On-Line Fault Detection and Supervision in the Chemical Process Industries, 1992 Newark, Del., USA FRANK, P. M.: 'Principles of model-based fault detection', IFAC/IFIP/IMACS Symp. on Artif Int. in Real-Time Control, 1992, Delft, Netherlands FRANK, P. M.: 'Advances in observer-based fault diagnosis', Proc. Tooldiag'93, 1993, Toulouse, France, pp. 817-936 GERTLER, J.: 'Analytical redundancy methods in fault detection and isolation', Proc. SAFEPROCESS'91, 1991, Baden-Baden, pp. 9-21
260 9 10
Control engineering solutions: a practical approach ISERMANN, R.: 'Process fault detection based on modelling and estimation methods - A survey', 1984, Automatica, 20, pp. 387-404 PATTON, R. I , FRANK, P. M. and CLARK, R. N. (Eds): 'Fault diagnosis in dynamic systems, Theory and application', (Prentice Hall, 1989) PATTON, R. J. and CHEN, I : 'Parity space approach to model-based fault diagnosis - A tutorial survey and some new results', Proc. SAFEPROCESS'91, 1991, Baden-Baden, pp. 239-255 WUNNENBERG, J.: 'Observer-based fault detection in dynamic systems', Dissertation Universitat-GH-Duisburg, Fortschrittberichte VDI 8 Nr. 222, VDI-Verlag, Dusseldorf, 1990
11
.12
Chapter 16
16.1 Introduction
The cascade loop is a standard configuration used in DC motor drives. As an alternative, we can use the parallel loop scheme based on independent control of speed and current. Digital implementations of the two control methods are presented here for comparative purposes. Digital control algorithms have been implemented and tested on an IBM/PC or compatible computer provided with a commercial PCL812 interface card.
262
Figure 16.1
Block diagram of the speed control and current limiting circuits for the cascade schemes
The control algorithms used in the current and speed loops, respectively, are of the PI type. They are tuned using the Kessler module criterion [2] and the symmetry criterion [3]. Discretisation of the control algorithms using a trapezoidal approximation [4,5] leads to the following expressions:
e,(n) + f^L T, + KP
(16.1)
(16.2) where:
ej(n) = u(O(n)-i(n) *
(16.3) (16.4)
Equation 16.1 is used for the implementation of current controller in an interrupt routine activated with the sample period Ti = 1.2 ms. The output vi of the current loop is limited to the converter limits. The speed loop is activated with the sample period 7^ = 57^, with the output calculated from Equation 16.2 followed by a limit non-linearity.
263
To avoid overshoots due to the saturation of the integral component, the antireset wind-up mechanism described in [6] was used. The implementation of a cascade configuration is presented in pseudo-code in Figure 16.2.
GLOBAL VARIABLES: COUNT(*), FLAG(**), EXFLAGf***) INTERRUPT KEYBOARD ROUTINE (*) { READ KEYBOARD CHARACTER c; IF(c = = ESCAPE) EXFLAG = 1; ELSE IF(c = = CARRIAGE RETURN) EXFLAG = 2; STORE c; ELSE /* digits 0, / , . . . , 9, and floating point. */ EXFLAG = 0; /* acquit interrupt */ INTERRUPT A/D ROUTINE { APPLY OUTPUT COMMAND READ CURRENT/* using pacer trigger Ti = 1.2 ms */ IF (COUNT %5^ = 0) { /* remainder of COUNT/5 is zero, T2 = 6 ms */ FLAG = 1; READ REFERENCE OF CURRENT LOOP; READ SPEED; /* using software trigger */ } CALCULATE CURRENT ERROR; CALCULATE CURRENT COMMAND /* relation (1) */ LIMIT THE COMMAND COUNT = COUNT + 1; /* acquit interrupt */ } MAIN PROGRAM { INITIALIZE DATA INPUTS, SET CARD TIMER FOR PACER TRIGGER; INSTALL INTERRUPT SERVICE ROUTINES; WHILE (I) {/* infinite loop V IF (FLAG = = 1) f CALCULATE SPEED ERROR; CALCULATE SPEED COMMAND; /* relation (2) */ LIMIT COMMAND AS REFERENCE OF CURRENT LOOP; FLAG = 0;} STORE MEASUREMENT SPEED & CURRENT IN ARRAYS IF (EXFLAG = = 1) GOTO ET; IF (EXFLAG = = 2 ) UPDATE SPEED REFERENCE; /* using characters read from the keyboard */ } ET: UNINSTALL ISR'S DISPLA YSPEED & CURRENT ARRA YS } (*) COUNT is a counter in the current loop, incremented at every 1,2 ms; (**) FLAG = 1 means the beginning of the speed loop; FLAG = 0 exit from speed loop. (***) EXFLAG = 1 stop the process; EXFLAG = 2 change speed reference; EXFLAG = 0, otherwise.
Figure 16.2
264
c o G
;4
e.
Gj (z 1 )
Load disturbances
Power converter and motor
Figure 16.3
Block diagram of the speed control and current-limiting circuits for the parallel scheme
The main difficulty in using parallel control is to obtain the right command when switching from one loop to the other, so as not to cause overshoot [7]. To achieve this, Equations 16.1 and 16.2 are rewritten as:
where vc{n~X) is the last converter command value and Avc(n) is the command increment. In order to determine which loop must be activated, their increments should be compared. If the speed command increment is greater than the current command increment, the current loop is activated, otherwise the speed loop is activated. To implement these algorithms in all cases, the current command must be calculated even in speed mode. Another test, which verifies whether the current has surpassed the limit, is also performed as protection. The design methods used for current of speed loops are based on Kessler's optimal criteria. The implementation of the parallel control scheme is presented in pseudo-code in Figure 16.4.
265
MAIN PROGRAM
INITIALIZE DATA INPUTS, SET CARD TIMER FOR PACER TRIGGER; INSTALL INTERRUPT SERVICE ROUTINES; WHILE (I) {/* infinite loop */ IF (EXFLAG = = 1) GOTO ET; IF (EXFLAG = =2) UPDATESPEED REFERENCE; } ET: UNINSTALLER'S DISPLAY SPEED & CURRENT ARRAYS (*) The same as in the cascade scheme algorithm; (* *) MODE = CURRENT means the current controller was chosen, MODE = SPEED means the speed current controller was chosen;
Figure 16.4
266
16.4 Discussion
The controllers for both systems were designed to obtain rapid responses without overshoot. The current loop is identical for both systems. As the implementation of both digital control structures uses very short sample periods, it is necessary to analyse the microprocessor execution time efficiency. From this point of view, the parallel scheme has the advantage of a lower processor utilisation factor in the normal operation mode, the speed mode. Thus, this type of control is more suitable for systems which need to perform additional tasks such as monitoring or adaptive control.
Max. current
/I L o a d
->|
^ Thyristor convertors _4.- J
having inertia
i L2
cu
S h u n t
! "^Cj
Yf^ Tachogenerator
Figure 16.5
A gate-triggering processor, implemented on an IBM/PC or compatible computer provided with 12 bit A/D and D/A converters, receives the external inputs, actual speed and actual current by means of suitable transducers. In
267
addition, the processor can be set for any desired motor speed and limited to the maximum value of the current. A DC motor with the characteristics 1.5 kW, 180 V, 11.4 A and 2500 r.p.m. is used. The motor load can be varied from zero to nominal value by means of an electromagnetic brake. Coupling the load with inertia using an electromagnetic clutch, the inertia moment can be modified, and thus the electromechanical time constant of the motor changed.
268
[A]
"I
xT
Figure 16.6
xT
Figure 16.7
269
The responses to load disturbances for the two configurations are depicted in Figures 16.8 and 16.9. When a torque load is applied, one can notice very small speed variations for both the cascade control system (Figure 16.8a) and the parallel control system (Figure 16.9a). The current variations on application of the load disturbance are seen in Figures 16.85 and 16.95, respectively. In Figure 16.8a and 16.9, we observe the appearance of a larger speed variation when an inertial load is applied. The oscillations superimposed on the speed and current responses, which are seen in open-loop operation, are due to the motor mechanical system.
[rpm]
']
1000
. . . . . . J
V
10mu
(a)
......I
400 200
JO *30
3D
MJO
IS!DO
14
DO
IB00
201XI
xT
[A]
']
10
ji
pMVKtf
" 1"
h
O If
/VVvW
(b)
-10 -18
i 2 30 4 30
00
12 JO
i'
10
20 t
xT
load torque
Figure 16.8
Cascade loop system responses to load disturbances (a) speed (b) current
16.8 Conclusions
Microcomputer-based implementations of cascade and parallel control loops used in DC motor drives have been presented. Experimental results demonstrate that both methods assure speed control and accurate current limiting. They also have comparable dynamic performances to step changes in reference speed. The tuning of speed control loops by the symmetry criterion permits the rejection of load torque-type disturbances. When speed loop performance deteriorates during the application of a load disturbance due to the PI controller becoming de-tuned, other
270
control techniques such as adaptive control could be used. In this case, a parallel scheme (shown in Figure 16.3) is more suitable because it has a lower processor utilisation factor in speed operation mode.
[rpm]
[A]
load torque
Figure 16.9
16.9 References
1 2 BIERNSON, G.: 'Principles of feedback control', (John Wiley, 1988) KESSLER, C : 'Uber die Vorausberechung Optimal Abgestimmter RegelKreise', Regelungstechnik, 1954, 2, (12) KESSLER, C : 4Das symetrische Optimum', Regelungstechnik, 1958, 6, (11) BOLLINGER, J. G. and DUFFIE, N. A.: 'Computer control of machines and processes', (Addison-Wesley, 1989) KATZ, P.: 'Digital control using microprocessors', (Prentice Hall, 1981)
271
ASTROM, K. J. and WITTENMARK, B.: 'Computer-controlled systems: theory and design', (Prentice Hall, 1990) JOOS, G., SICARD, P. and GOODMAN, E. D.: 'A comparison of microcomputer-based implementations of cascaded and parallel speed and current loops in DC motor drives', IEEE Trans. Indust. Appls., 1992, 28, (l),pp. 136-143 LAZAR, C , PASTRAVANU, O. and VOICU, M.: 'Laboratory equipment and process set-ups for control systems', European Seminar on Automation and Control Technology Education, Dresden, 1993
Chapter 17
17.1 Introduction
The software costs of automation systems tend to increase faster than the hardware costs. Many complex problems are automated with computers using special extensive software products, in which software reliability, flexibility and efficiency play an increasing role. Reusable, clearly arranged and modular software solutions therefore have to be produced, requiring methodological software engineering. This requirement is considered in the education of university students in the discipline of automation technology, especially by including software design techniques in laboratory experiments in process control lectures. These lectures include some experiments on real-time programming. The objective of this particular experiment is the homogenous, methodological solution of a real-time problem exemplified by a model robot.
17.2 Motivation
The design, implementation and use of software for the solution of control problems can be divided into distinct phases. These phases can be used to describe software characteristics at various points in the lifetime of the software, and the design process should be oriented towards these phases: Problem analysis with the requirements analysis Analysis tries to answer the question 'What should the software do?' Together with the customers, what the input to the system will be, what output the system should produce etc. will be specified.
274
System specification with the requirement specification The requirement specification is the developer's response to the analysis. The functional specification of the visible part of the system is specified by the end user. Design of the software Analysis and specification help to find out what should be done. Design specifies how it should be achieved. The result of the design phase is a software system that can be implemented with a minimum of difficulties. Coding and implementation of the software system For most of the history of computing, coding the main program was the programmers' main activity. In this phase the programming language is selected and the program is coded. If there are several coders the work must be divided and co-operation has to be arranged. Testing the completed system The test phase can involve as much time and effort as the coding phase. A program still contains bugs and imperfections. Large systems may not even be fully assembled until the test phase begins. The test phase has several goals. In the module test, especially, bugs introduced during the coding phase are found. The integrating test finds design errors, typically involving the interfaces between modules. The final testing step is the acceptance test by the end user. Most acceptance problems actually date from the analysis phase. Maintenance and evolution of the system There are several reasons for modifying software during the application phase. At first any bugs have to be corrected. A second reason is the desire to improve the system and a third category of modifications is adaptive changes. Maintenance and modification must be carried out, possibly over several years. It can cost two to four times as much as the original coding, or up to 80% of the costs in the entire software life-cycle. Life-cycle models describe the order of these phases. A classical model only allows us to proceed forwards step by step. An alternative model is based on the idea that available knowledge is never sufficient to have only one forward planning of the software. A prototype-oriented model allows some 'trips' through the entire process of development to obtain experience. Executable test models of the system, or of particular details, are produced in early phases of the design. Real-time software includes all the elements of standard software, but it must satisfy several special requirements in addition. Under real-time conditions several tasks have to be processed simultaneously and on time. This means real-time software must be divided into parts or modules with predictable timing constraints related to task activation, execution and termination. The parallel processes must be synchronised, if they apply for common resources like the processor or input
275
and output devices. If parallel processes interchange information, they must be able to communicate with each other. Therefore the experience and methods of standard software engineering are the basis for real-time software engineering. The useful methods include supplementary possibilities to recognise and to describe parallel processes, synchronisation and communication, timing constraints and control flows between processes.
17.4 Discussion
To illustrate a software design, a complex automation problem had to be found which had real-time requirements but which was also practicable in a timeconstrained laboratory experiment. The automated process should exist as a real model, not as an analogue or digital simulation. These reasons underlie the choice of using a model robot, in our case, from the Fischertechnik company. The main goal of the experiment is the design and implementation of real-time software, not of special algorithms for robot control.
276
bright spots of the wheel and the computer is configured to count every pulse of the photo-interrupter. Each of the three degrees of freedom and the gripper are protected against overrunning the end position by limit keys. The control software must respond to the reaching of a limit key position by switching off the motor.
Figure 17.1
The robot
Figure 17.2
The d.c. motors can move the gripper with only one motor speed to the right or left. In this experiment to achieve a variable motor speed the motor is switched on for a constant time (run time) and switched off for a variable time (wait time). The highest speed has a wait time equal to zero. The arm can move with a different speed in each degree of freedom.
277
The robot interface is connected to the parallel interface (Centronics) of the PC. The computing interface is compatible with the electronic devices of the robot. 8bit binary input data transfer the information of eight limit keys in polling mode. If the computer scans the input data asynchronously, information will be lost. Three separate binary input signals transfer the information from the photointerrupter. Each pulse creates a general interrupt and an interrupt process has to find out which motor was moved. 8-bit binary output signals control the motors, each motor has two bits for movement to the right or left. Every data input or output transfers all eight bits. Therefore a data output influences all four motors.
The design aspects are: To divide the whole problem into parts, defining modules and module interfaces. Parts of the system analysis and the requirement analysis are given as a description; The coding and implementation of the student's own design; To test the software with the robot. The real-time aspects are: Timeliness: to count the pulses of the photo-interrupter about every 6 ms and to detect the reaching of limit keys; Movement of the robot gripper in the three degrees of freedom, creating three parallel computing processes, necessary because of the variable speed of each degree; Synchronisation of the independent movements in the three degrees in one interface process, as the interface needs all control information in one control byte as mentioned above; Simultaneity in moving the gripper in all axes while displaying its actual position. The students' software design follows some aspects of the structured analysis method. This is a data-oriented method and declares (among others) data sources, data drains and marked data flows. The actions for changing data are called knots.
278
The basis for a design using structured analysis is a data context diagram showing the interface between the software and the real world. Figure 17.3 shows that the robot, the monitor and the keyboard are the data drains and sources. The 'robot control' knot is the action. In the next step this knot is decomposed into a form called a data flow diagram (DFD) which includes more detail. Such a DFD shows the data flows between the knots. Figure 17.4 shows four independent knots without internal data flows. Figure 17.5 represents a part of the refined data flow diagram of knot 1 in Figure 17.4. The structured analysis method demands that the data input and output flows of a knot must be the same in all its refinements. This reduces errors in the refinement steps. Figure 17.6 shows the principle of the method.
and keyboard
Figure 17.3
motor control
motor control
keyboard inputs
()
Figure 17.4
279
position reached
position reached
Figure 17.5
data dictionary
Figure 17.6
Each refinement level has a data dictionary containing descriptions of the newly defined data in this level. Every knot in the lowest level has a mini-specification
280
verbally declaring its function. The mini-specification is the basis for coding. A data dictionary for the given software interface is shown in Figure 17.7. Structured analysis also has a real-time extension, but this is outside the scope of this laboratory experiment.
281
MPosition: ARRAY [1..3] OF INTEGER number of counted increments for each motor; each interrupt increments a motor varaible M CommandMailbox: Mailbox (SIZE(BITSET),4,WAIT) Mailbox for the single motor control statements Command: BITSET Control command for all motors, input for the procedure "Interface Control" Command: motor motor motor motor motor motor motor motor 4 4 3 3 2 2 1 1 gripper gripper down up down up left right
rTTTTTT'n
Endswitches: BITSET Reached limit keys, read from the procedure "rad endswitches" limit limit limit limit limit limit limit limit limit keys key key key key key key key key 8 7 6 5 4 3 2 1 gripper gripper motor 3 motor 3 motor 2 motor 2 motor 1 motor 1
rrmrrn
MotorParameterRecord: RECORD motomumber: CARDINAL; endswitch : CARDINAL; (final limit key, e.g. limit key 8) position : INTEGER; (final position, positiv for the motors 2 and 3, positiv and negativ for the motor 1) wait-time : CARDINAL; ( for speed control) END; All necessary information for moving one motor.
Figure 17.7
I |
I
I
1
prepare positioning
main process
Figure 17.8
I
1
tr
Figure 17.9
Process design for the second problem movement of the robot to a fixed position'
process process synchronisation (initiate or kill a process) process communication with the name of the handled data structure
284
Module Rob Drv: Hardwaretreiber GetESwitch GetLSwitch SetMotor EnablePT Interrupt DisablePT Interrupt
Module Rob Xdrv: Problemorientierte Trelber ReadEnd Switch LSwitch ISR SendMotor Command Calc MWZ Calc GLZ WriteStatus Task
Programmierschnittstelle
Module Rob_XLib: Steuerung jeweils eines Freiheitsgrades MotorControlTask Motortask GotoEnd SwitchTask GotoPosition StartMotor Prozefi Task StopMotor Prozefi OpenGrab Task CloseGrab Task
Module Rob XUPs: Steuerung konrplexer (versuchsaufgabenorientierter) FunJctionen Roblnit RobPosition SpeedContorl Task Ooen Grab Close Grab WriteStatus Task
Module Rob Tin : Teachln Steuerung des Roboters StartTeachln StopTeachln Learn Position LearnClose LearnOpen Grab
17.8 Conclusions
Control design for the robot is the final experiment in a real-time programming course in automation. Students design, code and test a complete real-time software system, using elements of 'structured analysis for real-time systems'. They improve their knowledge and skills about parallel processes, about process synchronisation and communication. Evaluating the experience obtained by the first groups of students we can establish:
285
MODUL RobotControl; (* date, student everybody *) (* Main modul for the first problem *) FROM Xprocess FROM Rob_XLib PROCEDURE Roblnit; VAR Mproc Pparam PMParam ARRAY[1..6] OF Process; TMotorParamRecord; PMotorParameterRecord; - IMPORT IMPORT NewProcess, Process, KillProcess, NoHandler; GotoEndSwitchTask, GotoPositionTask, OpenGrabTask, TaskReady;
BEGIN (* starting all initializing processes *) (* *) (motor 1 *) MParam := HllParamRecord (Mparam, 1, limitkeyl, 0,0, TRUE, TRUE); (* MotorParameterRecord, motor number, limit key, position, wait-time, reached position=zero positiocon, con sider inertia *) Mprocfl] := NewProcess (GotoEndSwitchTask, PMParam, 1000,4000,3, NoHandler); (* process code, process parameter, stack size, heap size, priority, exception handler *) (* motor 2 *) MParam := HllParamRecord (Mparam, 2, Iimitkey3,0,0, TRUE, TRUE); Mproc[2] :=NewProcess (GotoEndSwitchTask, PMParam, 1000,4000, 3, NoHandler);
(*gripper *) Mproc[6] := NewProcess (OpenGrabTask, NIL, 200,500, 3, NoHandler); (* await the end of processes *) FOR i:= 1 TO 6 DO Request (TaskReady) END; (* kill all processes *) FOR i:= 1 TO 6 DO KillProcess (Mproc[i]); END Roblnit.
Figure 17.11 Example of code with programming language Modula-2 and real-time kernal XMOD
286
The necessity for specialised training in software design techniques. Students present and discuss their designed program before coding; Development of increased skills in real-time programming using a 'real' robot model. With timing constraints in the millisecond range, many real-time effects occur, e.g. driving through the final position if the actual motor positions cannot be counted accurately, misrepresentation of motor data on the screen, if the representing process does not get sufficient processing time or moves on only one axis, or if the parallel processes receive inappropriate priority conditions. High demands on time for students and staff. It will take the students about four to six weeks to do the experiment. Staff inspect the design, the coded program and the program functions. Need for good student motivation to do the experiment.
17.9 References
BALZERT, H. (Hrsg.): 'CASESysteme und Werkzeuge' (Mannheim, Bl-Wissenschaftsverlag, 1990) LAUBER, R.: 'ProzeBautomatisierung, Bd. 1' (Springer Verlag, Berlin, 1989) POMBERGER, G., and BLASCHEK, G.: 'Software engineering' (Hanser, Munich) FIEDLER, J., RIX, K. F., and ZOLLER, H.: 'Objektorientierte Programmierung in der Automatisierungstechnik' (VDI, 1991) WARD, P. T., and MELLOR, S. J.: 'Strukturierte Systemanalyse von Echtzeit-systemen'(Hanser/Prentice Hall, Munich/London, 1991) Jensen & Partners International: 'Top speed version 3.01'. Software Documentation GOMAA, H.: 'A software design method for real-time systems', Communications of the ACM, 1984, 27, (9)
Index
actuator coupled-tank equipment 236 saturation 61 adaptive control basic modules 224 closed loop 229 controller design 228, 229 cost function test 226 cylinder 179-84, 187-8 delay/order tests 241 estimated parameters 229 evaluation model 224 experiments 238-40 expert systems 234 indicators see main heading industrial 223 nonlinear 2667 parameter change 229 programming languages 234 software 236 stability test 228 supervision see main heading of systems 175-90 where inappropriate 223-4 aerothermal laboratory model 201 process 203-4 aggregation operators 210 Akaike's final prediction error 11 algorithm constant trace estimation 228 ELS 4 estimation 2, 4-6, 142 fading 15 fault detection 254 genetic 84, 85-6 LS4 PD186 PI 262 PID6-7 predictive 165-6, 171 recursive identification 15 analytical methods 48-9 redundancy 247 analogue computer 31 controller design 23-41 simulation 29 anti-wind-up measures 65-6, 263 compared 68 approximate maximum likelihood 6 artificial intelligence tools 234 augmented system state vector 135 autonomous signal generator see under signal balance equations (dynamic/static) 248 blowup see parameter blowup Bode diagram 84, 88 boundary control 194, 195, 199-200, 202-3 bumpless transfer 66 bursting 227
288
Control engineering solutions: a practical approach systems configurations 44-6 design 43-7, 102-4 step responses 38 two-variable 25 controller calculus 243-4 decoupling 26 design adaptive control 228, 229 empirical methods 50 experiments 57-8 frequency response 48 MIMO systems 151-8 module, adaptive control 224 problems 176 reset wind-up 627 Smith predictor 50 time domain response 49 transfer function 48-9 laboratory set-up 51 main 26 parameters, setting 24, 104-9 rule of thumb methods 50-1 simulation software 51-7 X-Y31 convergence conditions 6 correlation function 11 cost function test, adaptive control 226 Coulomb friction 178 coupled-tank equipment 235 configuration 236-7 coupling coefficient 26 crisp value 210, 211 current controlled DC motor 115,
213
cart system, fuzzy logic control 218 cascade compensation 44-5,46, 49 configurations 25, 214, 261, 2 6 2 ^ controller experiment 58, 267 characteristic equation roots 244 locus method 153-8 chemical industry, fault detection 250 closed loop adaptive control system 229 control 115 evaluation model, adaptive control 224 identification 18-19 step response using MATLAB 154 system with compensation 157 coloured noise 226, 229 compatibility degree 210 compensated systems 44-6 computer analogue 31 control system 175 simulation see software see also programming languages constant trace estimation algorithms 228 control cascaded 25 design vs process design 43-4 horizon 198 law, designing 163-4 loop delays in 97-110 parallel 264-5, 267 structure 26 multi-loop 25 problem 43-7, 79-82 single loop 24 structures, studying effects of 31-2 system design techniques see system design techniques
cylinder adaptive control 179-84, 187-8 fuzzy control 184 nonlinearity 188-9 pneumatic 175-84 valves 186
Index see also pistons in pneumatic cylinder DARMA model 164 data conditioning 8-10 flow diagram 278 DC motor current controlled 115, 213 drives 261-9 dead-time signal processing 50 decoupling controller 26 in fault detection 249 dead-time delay 50 defuzzifier 211 degree of freedom (DOF) controller 167 delays in signal processing controlling 99-100 dead-time 50 defined 97-8 experiments 109-10 heat flow problems 97-110 PID controller setting 105-8 state feedback parameters 108-9 describing function 30 design of control law, thermal systems 163-4 limitations 78-9 motor-alternator set 158-9 problems, systems 43-7 of regulators 47-51 of software 273-86 deterministic auto-regressive moving average see DARMA diagnosis of faults 248 differential equations, time-invariant system 113-4 digital cascade controller experiment 58
289
compensator for motor-alternator 158-9 controller fault detection 251 and nonlinear system 159 PI controller 64 direct process identification 18-19 discrete-time parametric models 3 distributed control 195, 197 parameter processes 193 dynamic behaviour 195 real-time models 193 spline functions 193 state variables 193 disturbance compensation 45, 46 detection 134 estimation 135 and fault detection 248 filtering 133-4, 158 measurement 131-3, 137-43 rejection 129-44, 129-30, 132-3 signal observation, inverted pendulum 120-3 structure 10 suppression 38 see also noise disturbed linear continuous time invariant system 131-2 DOF see degree of freedom drift removal 8 dynamic balance equations 248 behaviour, investigating 29, 30, 159 transfer elements 29 early approximation 196 electric drive system, model 266 ELS algorithm 4 error condition 176
290
Control engineering solutions: a practical approach forgetting factors 16-18, 227, 228 scheduling 238 forward path filtering 133 Fourier transform method 196 frequency domain response 2 response controller design 48 friction, effects of 178 fundamental matrix see transition matrix furnace, see resistance furnace fuzzifier 210 fuzzy logic control 20919 cart system 218 flight control 213 inverted pendulum 213-19 pneumatic cylinder 184 steam turbine 21112 fuzzy control, cylinder 184 operators 209-11 theory, artificial intelligence 234 GA approach experiment 88 gain scheduling, aircraft 213 genetic algorithms 84, 85-6 graphical analytical design methods 48 harmonic balance 30 heat equation 199-200 exchange parameters, calculating 100-1 flow rate delays 97-110 heating a building, example 99-103 delay control experiments 109-10 solid materials 193-4 heuristic indicators, adaptive control 225, 234 converting from numeric 234 hydraulic PI controller 63-4
estimated parameters, adaptive control 229 estimation algorithm 2, 4-6, 142 error, fault detection 253-4 Euler approximation 165 exothermic reactors 78 experiments see under laboratory expert systems, adaptive control 234 exponential window 16-18 extended least squares see ELS algorithm fading algorithm 15 false alarms, fault detection 249 faults detecting 247-58 isolating 249 feedback compensation 44-7, 99 control loops, delays in 98 filter, disturbance measurement 139 transfer 28 in servomechanisms 179 feedforward compensation 45-7, 99 transfer 28 filter fault detection 249-58 design 250-58 feedback 139 signal and estimate f. 226 filtering disturbance 133-4, 158 the process variable 53 final prediction error test 11 finite difference method 195 -dimensional process 195 element method 196 first-order lag system 253 flight control, fuzzy controller 213
Index identification methods 2 parametric 4 incremental PID algorithm see under PID indicators artificial intelligence approach 234 characteristic equation roots 244 controller calculus 243-4 estimated parameters 243 evaluating 229 expert systems 234 heuristic, adaptive control 225, 234 laboratory set-up 235-8 loop error 244 minimum set 231 numeric 240-5 output signal 244 prediction error 241 pre-identification process 240 process order test 241 RLS methods 238 sampling rate test 240-1 selecting 228-9 unmodelled dynamics 229, 241 indirect process identification 18 inference network 210 infinite-dimensional process 195 information theoretic criterion 11 input -output delay 98 penalty matrix 198 inputs, scaling 9 instrumental variable 6 integral control criterion 198 of square error 167 wind-up actuator saturation 61 technical aspect 63 integration stopping 69-71 inverse problem 199
291
variance-covariance matrix 6, 15, 227 numerical problems 14 inverted pendulum cart 115 closed loop control 115 differential equations 113-4, 117 disturbance signal 120 experiments 123, 218-19 fuzzy control 213-5 linear system 113 linearisation 117-8 Luenberger observer 123 mathematical model 116-7 normalising state equations 119 reduced order observer 120-3 system described 115-23 Taylor series 118 transition matrix 114 ISE see integral of square error isoclines 30-1 Kalman filter 84 Kessler module criterion 262, 264, 267 laboratory experiments adaptive control 238-40 control of unstable systems 86-7 DC motor-drive control 267 furnace control 168-9 heating control, delays in 109-10 inverted pendulum 123, 218-19 lead-lag control 57 measuring disturbance 137-43 multivariable process control 158-60 nonlinear systems 185-9 software design 277-80 wind-up investigation 68-71, 71-2
292
Control engineering solutions: a practical approach main controller 26 manipulated variable 61 mathematical model see model MATLAB closed-loop unit step response 154 multivariable controllers 157 thermal process control 164 matrix P reinitialisation 227 maximum operator 211 measurement equation 253 membership function 210 MIMO systems controller design 151-8 process modelling 148-50 step testing 149-50 minimum operator 210 modal approximation 196 modelling 1-2 model discrete-time parametric 3 for disturbance measurement 136-7 fault diagnosis 248 inverted pendulum system 116-17 motor alternator 157 pistons, pneumatic cylinder 176-9 structure selection 2,10 of unstable system 80-2 validation, unstable systems 78 Modula-2 236, 275 motivation and control problems 62 motor-alternator set (example) 148, 151-8 compensator 158-9 design 152-5 multi-input, multi-output see MIMO multi-loop systems 24 control 25 multivariable controllers, use of MATLAB 157 frequency response 154 process, alternative 15960 systems see MIMO systems
setup adaptive control 235-8 DC motor-drive control 266-7 inverted pendulum 218 nonlinear adaptive control 184-5 pilot plant 7-19 software design 275-7 lag element 32-3 Lagrange multiplier condition 107 languages see programming languages Laplace transform 43 delays in heat flow control 101, 104-5 late approximation 196 lead-lag control 56 experiment 57 leak detection, chemical plant 254 least squares see LS algorithm see also RLS level transducer 236 linear control systems controller design 48 quadratic regulator (LQR) 83, 85, 87-8 linearisation 117-8 load disturbances, DC motor drive 267 reduction, steam turbine 212 locus see characteristic locus method loop delays in 97-110 transfer recovery 85 loss function 11,15 low-frequency compensator 156 LS algorithm 4 Luenberger observer inverted pendulum control 123 control of nonlinear systems 181 lumped parameter process see finite-dimensional process
Index transfer element 25 multizone reheating furnace 194 noise auto-correlation vector 226 coloured 226, 229 filtering 158 measuring see disturbance measurement tracking 18 white 229 nondiagonal weighting matrix 198 nonlinear control 41 cylinder 188-9 filters for fault detection 253 systems adaptive control of 175-90 and digital controllers 159 experiments 185-9 Luenberger observer 181 pole placement 181 state reconstruction 180-3 transfer element see under transfer nonlinearity compensation cylinders 188-9 valves 183-4 normalising state equations 119 numeric to heuristic indicators 234 indicators 2405 Nyquist plot 88-9 observer 85 poles 254 see also filters off-line estimation 8-9 offset removal 8 on-line estimation 9 optimal state control 83-4 output/disturbance transfer function 132-3 output signal indicators 244
293
outputs, scaling 9 overshoot, DC motor-drive control 264 parallel compensation 45 control loops 264-5, 267 parameter blowup 14, 18 estimation 142, 224, 228-9 tracking 15-18 parameters, setting in controller 24, 104-9 parametric identification methods 4 partial differential equations (PDE) 196 PD algorithm 186 PDE see partial differential equations persistent loop excitability 227 phase plane 30 physico-chemical behaviour laws 21-2 PI control 64, 262 reset windup 61 PID algorithm 6-7 control computer simulation 54-5 experiment 57 nonlinear systems 186 steam turbine 212 controller and heat flow delays 103 setting delays 105-8 in thermal treatment processes 164-5, 167, 171 tuning 50, 84, 85 piezo-resistive pressure sensors 251 pistons in pneumatic cylinder movements 176-9, 187 state-space control 187-8 velocity 183, 186, 187-8 pneumatic
294
Control engineering solutions: a practical approach pseudo-random binary sequence signals 14, 149 P-structure 28 P-to-V conversion 28 real-time control, thermal treatment furnace 169, 171 software 274-5 experiments 277 recursive identification algorithm 15 least squares see RLS reduced order observer 120-3 disturbance measurement 135 reference control 38 regulator problems 47-51 selecting 44-6 see also controller reset windup 61 design 62-7 PI controllers 63 residual signal 249 residuals correlation test 13 variance decrease test 11 resistance furnace 167-8 Riccati equation 83 RLS 5, 182 robot, software design 275-86 robust fault detection 249 root locus 48, 137 rule of thumb controller design methods 50-1 safety see supervision sampling period 7-8, 53 rate test 240-1 scaling inputs and outputs 9 secondary controlled variable 25
cylinder 175-84 PI controller 64 point-to-point (P-P) control 181 pole placement controller design 48-9 nonlinear systems 181 unstable systems 83 poles and zeros test 228 power spectral density (PSD) 158 P-P see point-to-point PRBS see pseudo random binary signals pre-compensator 151-2 prediction error 4, 6, 228, 229, 241-2 predictive algorithm 165-6, 171 control 56 experiment 57-8, 169, 170, 171 predictor derivation scheme 181 pre-identification process indicators 240 pressure control, steam turbine 212 process description finite-/infmite-dimensional 195 delay/order tests, adaptive control 241 design vs control design A3-4 frequency domain response 2 input signals frequency 14 model identification 1 modelling, MIMO systems 148-50 order test 241 parameter change adaptive control 229 tracking 15 physico-chemical behaviour laws 21-2 structure, determining 10 programming languages, adaptive control 234
Index self-tuning regulator (STR) 223, 226, 235 series configuration see cascade compensation signal and estimate filtering 226 excitability 14 filtering 8 generator for simulation 31, 135 processing delays see delays in signal processing problems 1 simulation 31 integration stopping 69-71 software 51-7 thermal treatment processes 169, 170-2 see also under software SIMULINK software 169 single input, single output see SI SO loop control design 24 SISO control design 48-51 disturbed system (example) 131-2 Smith predictor controller 50, 58, 99 software adaptive control 236 alarms setting 54 alternative model 274 classical model 274 coding and implementation 274, 279-80 control algorithm set-up 54-7 controller simulation s. 51-8 demonstration process model 53 design 273-86 graphic menu 54 laboratory set-up 275-7 life-cycle models 274 maintaining 274 problem analysis 273
295
prototype-oriented model 274 real-time 274-5 requirements analysis 273-4 robot experiment 275-86 set-up menu 53-4 system specification 274 testing 274 see also MATLAB; Modula-2; SIMULINK; XMOD speed control, steam turbine 212 loop performance, DC motor drive 267 reference set, DC motor drive 267 spline function 193, 197 stability test, adaptive control system 228 state equations, normalisation 119-20 feedback controller parameters 108-9 observer 85 reconstruction, nonlinear system 180-3 -space control 179-84, 187-8 feedback 181 variables 114, 251 static balance equation 248 steam turbine, fuzzy controller 211-12 step and ramp functions 163 -reference response 138-9 response design 51 testing 149-50 supervision analytical redundancy 247 controller design 228, 229 estimator scheduling 238-10 fault detection 247-58 forgetting factors 227, 228, 238 functions 232-5
296
Control engineering solutions: a practical approach fault detection 253 PID controller 84 pneumatic cylinder pistons 177 matrix 25 transition matrix 114 trapezoidal approximation 262 tuning rules 25 two -input system see MIMO systems -variable control 25, 38 ultimate sensitivity design 51 unknown inputs 248-9 unmodelled dynamics test 241 unstable systems control 82-4 controller design 78-9 experiments 87 genetic algorithms 84, 85-6 inverted pendulum 123 laboratory set-up 80-2, 86 linear quadratic regulator 83, 85, 87-8 model validation 78 performance limitations 79 PID controller 84, 85, 88 pole placement 83 stabilisability 78 state control 83-4 valve cylinder system characteristics 186 nonlinearity 183-4 variable voltage regulator 168 variance-covariance matrix 227, 228 V-structure 28 waste water treatment 2-3 weighting factor 169, 171 white noise 229 wind-up investigation 68-71, 71-2 reset 62-7, 263
indicators see main heading loop supervision 228 model 248 parameter estimation 2268 pre-identification 226 signal and estimate filtering 226 tasks 225-35, 232-3 symmetry criterion 262 system design techniques disturbance measurement 13145 laboratory set-up 136 Taylor series 118 temperature control 97-110, 194 effects on dynamic behaviour 159 see also thermal processes testing software systems 274 thermal processes 163-74 control law 166-7 designing a control law 163-4 experiments 168-9 integral of square error 167 MATLAB, using 164 PID controllers 164-5, 167 predictive algorithm 165 step response test 169 three -level element 30 tank system 250-58 time domain response controller design 49 -invariant physical systems 113 Top Speed operating environment 275 Torricelli's Law 251 trajectories, switching 31 transfer element 25, 31-2 function 15, 43, 44-5 controller design 48-9 in disturbance rejection 132
Index see also anti-wind-up measures; integral wind-up XMOD 275 X-Y controller 31, 33 Ziegler-Nichols rules 51 heat flow delay problems 107 zonation technique 195
297
The Institution of Electrical Engineers Michael Faraday House, Six Hills Way Stevenage, Herts., SG1 2AY, United Kingdom ISBN 0 85296 829 9 Printed in the United Kingdom
ISBN 978-0-852-96829-9