129 94 3MB
English Pages 332 [324] Year 2006
Advances in Industrial Control
Other titles published in this Series: Digital Controller Implementation and Fragility Robert S.H. Istepanian and James F. Whidborne (Eds.) Optimisation of Industrial Processes at Supervisory Level Doris Sáez, Aldo Cipriano and Andrzej W. Ordys Robust Control of Diesel Ship Propulsion Nikolaos Xiros Hydraulic Servo-systems Mohieddine Jelali and Andreas Kroll Strategies for Feedback Linearisation Freddy Garces, Victor M. Becerra, Chandrasekhar Kambhampati and Kevin Warwick Robust Autonomous Guidance Alberto Isidori, Lorenzo Marconi and Andrea Serrani
Rudder and Fin Ship Roll Stabilization Tristan Perez Hard Disk Drive Servo Systems (2nd Edition) Ben M. Chen, Tong H. Lee, Kemao Peng and Venkatakrishnan Venkataramanan Measurement, Control, and Communication Using IEEE 1588 John Eidson Windup in Control Peter Hippe Piezoelectric Transducers for Vibration Control and Damping S.O. Reza Moheimani and Andrew J. Fleming Manufacturing Systems Control Design Stjepan Bogdan, Frank L. Lewis, Zdenko Kovaˇci´c and José Mireles Jr.
Dynamic Modelling of Gas Turbines Gennady G. Kulikov and Haydn A. Thompson (Eds.)
Nonlinear H2 /H∞ Constrained Feedback Control Murad Abu-Khalaf, Jie Huang and Frank L. Lewis
Control of Fuel Cell Power Systems Jay T. Pukrushpan, Anna G. Stefanopoulou and Huei Peng
Practical Grey-box Process Identification Torsten Bohlin Publication due May 2006
Fuzzy Logic, Identification and Predictive Control Jairo Espinosa, Joos Vandewalle and Vincent Wertz
Modern Supervisory and Optimal Control Sandor A. Markon, Hajime Kita, Hiroshi Kise and Thomas Bartz-Beielstein Publication due June 2006
Optimal Real-time Control of Sewer Networks Magdalene Marinaki and Markos Papageorgiou
Advanced Fuzzy Logic Technologies in Industrial Applications Ying Bai, Hanqi Zhuang and Dali Wang (Eds.) Publication due July 2006
Process Modelling for Control Benoît Codrons Computational Intelligence in Time Series Forecasting Ajoy K. Palit and Dobrivoje Popovic
Process Control Performance Assessment Andrzej Ordys, Damien Uduehi and Michael A. Johnson (Eds.) Publication due June 2006
Modelling and Control of mini-Flying Machines Pedro Castillo, Rogelio Lozano and Alejandro Dzul
Wind Turbine Control Systems Fernando D. Bianchi, Hernán De Battista and Ricardo J. Mantz Publication due July 2006
Peter Hippe
Windup in Control Its Effects and Their Prevention
With 139 Figures
123
Peter Hippe, Dr.-Ing. Lehrstuhl für Regelungstechnik Universität Erlangen-Nürnberg Cauerstraße 7 91058 Erlangen Germany
British Library Cataloguing in Publication Data Hippe, Peter Windup in control : its effects and their prevention. (Advances in industrial control) 1.Feedback control systems 2.Automatic control Reliability 3.Automatic control I.Title 629.8’3 ISBN-13: 9781846283222 ISBN-10: 1846283221 Library of Congress Control Number: 2006922555 Advances in Industrial Control series ISSN 1430-9491 ISBN-10: 1-84628-322-1 e-ISBN 1-84628-323-X ISBN-13: 978-1-84628-322-2
Printed on acid-free paper
© Springer-Verlag London Limited 2006 MATLAB® is a registered trademark of The MathWorks, Inc., 3 Apple Hill Drive Natick, MA 01760-2098, USA. http://www.mathworks.com 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 only be reproduced, stored or transmitted, in any form or by any means, 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. Enquiries concerning reproduction outside those terms should be sent to the publishers. The use of registered names, trademarks, etc. in this publication does not imply, even in the absence of a specific statement, that such names are exempt from the relevant laws and regulations and therefore free for general use. The publisher makes no representation, express or implied, with regard to the accuracy of the information contained in this book and cannot accept any legal responsibility or liability for any errors or omissions that may be made. Printed in Germany 987654321 Springer Science+Business Media springer.com
Advances in Industrial Control Series Editors Professor Michael J. Grimble, Professor of Industrial Systems and Director Professor Michael A. Johnson, Professor (Emeritus) of Control Systems and Deputy Director Industrial Control Centre Department of Electronic and Electrical Engineering University of Strathclyde Graham Hills Building 50 George Street Glasgow G1 1QE United Kingdom
Series Advisory Board Professor E.F. Camacho Escuela Superior de Ingenieros Universidad de Sevilla Camino de los Descobrimientos s/n 41092 Sevilla Spain Professor S. Engell Lehrstuhl für Anlagensteuerungstechnik Fachbereich Chemietechnik Universität Dortmund 44221 Dortmund Germany Professor G. Goodwin Department of Electrical and Computer Engineering The University of Newcastle Callaghan NSW 2308 Australia Professor T.J. Harris Department of Chemical Engineering Queen’s University Kingston, Ontario K7L 3N6 Canada Professor T.H. Lee Department of Electrical Engineering National University of Singapore 4 Engineering Drive 3 Singapore 117576
Professor Emeritus O.P. Malik Department of Electrical and Computer Engineering University of Calgary 2500, University Drive, NW Calgary Alberta T2N 1N4 Canada Professor K.-F. Man Electronic Engineering Department City University of Hong Kong Tat Chee Avenue Kowloon Hong Kong Professor G. Olsson Department of Industrial Electrical Engineering and Automation Lund Institute of Technology Box 118 S-221 00 Lund Sweden Professor A. Ray Pennsylvania State University Department of Mechanical Engineering 0329 Reber Building University Park PA 16802 USA Professor D.E. Seborg Chemical Engineering 3335 Engineering II University of California Santa Barbara Santa Barbara CA 93106 USA Doctor K.K. Tan Department of Electrical Engineering National University of Singapore 4 Engineering Drive 3 Singapore 117576 Doctor I. Yamamoto Technical Headquarters Nagasaki Research & Development Center Mitsubishi Heavy Industries Ltd 5-717-1, Fukahori-Machi Nagasaki 851-0392 Japan
To Helga
Series Editors’ Foreword
The series Advances in Industrial Control aims to report and encourage technology transfer in control engineering. The rapid development of control technology has an impact on all areas of the control discipline. New theory, new controllers, actuators, sensors, new industrial processes, computer methods, new applications, new philosophies. . . , new challenges. Much of this development work resides in industrial reports, feasibility study papers and the reports of advanced collaborative projects. The series offers an opportunity for researchers to present an extended exposition of such new work in all aspects of industrial control for wider and rapid dissemination. Actuators that have saturation characteristics are very common in the process industries where valves and pumps are good examples that have a limited maximum throughput. When an actuator saturates then the integral term of the classical PI and PID controller exhibits windup with concomitant poor system performance. Industrial anti-windup schemes try to prevent this controller windup phenomenon without access to a system model, and such schemes are often standard in industrial controller hardware. The process industries are the area where model-based predictive control has been successful in many applications. One of the oft-cited advantages of model-based predictive control is its ability to subsume input and output constraints into the computation for the control action. This is an alternative route to tackling the control problems caused by constrained inputs. Actuators with saturation characteristics also appear in the high-performance aerospace and marine industries. For example, a marine vessel’s rudder is constrained by a maximum angle of travel and this has an impact on the vessel’s control system. Rudders and stabilizing fins on marine vessels are good examples of actuators that also have a rate of travel saturation limit. These types of actuators can only travel so far and so fast to implement a control input. Further the failure of control in a marine or aerospace system owing to actuator saturation could have catastrophic consequences, so these design issues are of considerable importance for safe travel.
x
Series Editors’ Foreword
For such a common industrial process feature, it is surprising that the published technical literature is not better developed. Whilst there are a few key papers and some edited books on the subject, an important recent book is Control Systems with Input and Output Constraints by A.H. Glattfelder and W. Schaufelberger published in our Springer Verlag series, Advanced Textbooks in Control and Signal Processing. This entry to the field of windup studies demonstrated that it is possible and desirable to study these phenomena in a coherent unified framework, able to subsume both single-input, single-output and multivariable system problems. Peter Hippe from the Universit¨ at Erlangen-N¨ urnberg, Germany has been studying the phenomenon of windup caused by input saturation characteristics for over a decade and has now written this very welcome Advances in Industrial Control monograph as a record of his results and the approaches he used in the study. The study has produced clear definitions of controller windup and plant windup as two separate effects that can be obscured by being superimposed on one another. A third phenomenon identified for multipleinput, multiple-output decoupled control designs is the “destruction of directionality” in the presence of input actuator saturation characteristics. These and related effects and their remedies are studied in the general unified framework of a system-observer description. Such a description is able to accommodate both classical and advanced controller designs and leads to prescriptive anti-windup solutions and conditions for both single-input, single-output and multivariable system configurations. This is a volume that the industrial control engineer and the control system theorist will both find valuable. The theorist will undoubtedly find the precision of the analysis presented using the system-observer framework attractive and is likely to seek extensions and applications with advanced control system designs; the industrial control engineer will find the insight that the analysis provides useful in understanding existing process windup problems. Indeed, it seems the work reported would form a good basis for developing practical guidelines for windup prevention in industrial control applications. We are pleased to welcome such an excellent and thorough study of windup in control into the Advances in Industrial Control monograph series. M.J. Grimble and M.A. Johnson Industrial Control Centre Glasgow, Scotland, U.K.
Preface
Since unlimited control energy is not available, actuator saturation is probably the most frequent nonlinearity encountered in control applications. Although a reduction of the input amplitude slows down the transient speed, it can have a detrimental effect on the behaviour of the closed loop and it may even cause instability. These effects were first observed in controllers containing integral parts, when the integrator state was “winding up” during input saturation and because of this, the undesired effects of input saturation are now called windup. Input saturation not only causes a mismatch in the controller states (the controller windup) but also a mismatch in the plant states (the plant windup). Though both types of windup have similar effects on the transients of the closed loop, they can clearly be separated from one another and this conceptual differentiation also allows a systematic design of appropriate measures for their prevention. Whereas controller windup is removable by structural modifications when realizing the compensator, the prevention of plant windup calls for additional dynamics. The problem of windup prevention in the presence of stable plants has been a well-researched field for a long time. The solutions presented, however, are based on various interpretations of the windup effects and, consequently, the remedies offered also look quite dissimilar at first sight. At a closer inspection, however, the various approaches can be represented in a unified scheme, with certain parameters adapted to the special approach. The prevention of windup in the presence of unstable systems has not yet reached the same state of maturity. As the prevention of controller windup is not influenced by the location of the plant poles, the difficult problem to solve in open loop unstable systems is the prevention of plant windup. There are numerous papers on constrained control for unstable systems, but most results only apply to special problems and/or require mathematical tools not commonly used by engineers. This book presents solutions to the prevention of windup for stable and unstable, single input and single output (SISO), as well as multiple input and multiple output (MIMO) systems, which only use standard tools for the
xii
Preface
investigation of linear systems like state equations, transfer functions and frequency responses. The stability tests are based on the well-known criteria for loops that consist of a linear part with isolated nonlinearity of the sector type. However, also “engineering solutions” are presented, which guarantee improved performance, though without a strict proof of stability. Thus, the designer can choose between a conservative solution allowing a sound proof of stability, or a considerably improved performance at the expense of a missing rigorous proof. Whereas controller and plant windup equally occur in SISO and MIMO systems, there is an additional problem arising in MIMO systems, namely that of directionality. A popular design goal in multivariable systems is to obtain a decoupled behaviour, so that the modification of one set point does not influence the remaining controlled variables. Such a decoupling control requires a very specific input vector (its length and its direction defined by the individual plant inputs) in order to counteract the existing cross-couplings in the plant. If one or several input signals saturate, the direction of this decoupling control input is destroyed, giving rise to possibly disastrous consequences for the behaviour of the closed loop. So far, there have been attempts to mitigate the effects of this directionality problem. In this book, an exact solution to the directionality problem is presented and it is applicable both to stable and unstable systems. Another problem arising in control applications are rate-constrained actuators. Due to technological restrictions, the compensator output signal often cannot be transferred arbitrarily fast to the system. If such rate constraints are not taken into account, they may also have a destabilizing effect on the closed loop. It turns out that this additional rate constraint can easily be handled within the presented framework for amplitude limitations, when a special model for such an actuator is inserted at the output of the controller. Thus all known approaches to the prevention of windup also become applicable to the case of joint amplitude and rate constraints. Finally, also the problem of bumpless transfer is discussed, arising when switching from manual to automatic during start-up or in an override control. It turns out that the suggested approach for the prevention of windup also constitutes a systematic solution to this problem. The methods discussed in this book are developed for observer-based compensators possibly containing signal models for disturbance rejection. Therefore, the time and the frequency domain design of such compensators is summarized in the Appendix. The presentation of methods for the prevention of windup in observer-based compensators does not restrict the applicability of the approaches, as any linear controller (e.g., a PI controller) can also be interpreted as an observer-based state controller. The developments of the methods are always supplemented by numerical examples, which can easily be replicated, since all necessary parameters are provided. In order to facilitate the comparison of results, the exact values of the simulation parameters are presented whenever possible. Thus any plot of
Preface
xiii
variables not shown in the examples is easily obtainable when repeating the simulations. The author has been interested in the subjects covered in this book for more than a decade and he is greatly indebted to his colleague Christoph Wurmthaler, without whom this project would never have materialized. Of course there are numerous other contributors of good ideas, and among them I especially want to name H. B¨ uhler of EPF Lausanne, Switzerland, whose idea of cascaded nonlinear loops helped to formulate the solutions of the prevention of windup for unstable systems and the directionality problem. Special thanks to G. Roppenecker for the constant encouragement, the valuable suggestions and the continuous support. There were many helpful hands in the preparation of the final manuscript. Without the aid of Bernhard M¨ uller, Gerald Drenckhahn and Andreas P¨ osch I would have never mastered the challenge of preparing the manuscript in LATEX. Many thanks also to Ulrich Forster, whose critical comments were more than welcome. I am especially indebted to Robert Bell who helped me to improve the English presentation.
Erlangen, February 2006
Peter Hippe
Contents
1
Undesired Effects of Input Saturation . . . . . . . . . . . . . . . . . . . . . 1 1.1 Introductory Remarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.2 Controller Windup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.3 Plant Windup in Stable Systems . . . . . . . . . . . . . . . . . . . . . . . . . . 6 1.4 Plant Windup in Unstable Systems . . . . . . . . . . . . . . . . . . . . . . . . 12 1.5 Problem of Directionality in MIMO Systems . . . . . . . . . . . . . . . . 16 1.6 Short Outline of the Approaches to Preventing the Undesired Effects of Input Saturation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2
Prevention of Controller Windup . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1 Introductory Remarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2 Some Measures to Prevent Controller Windup for PI and PID Compensators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3 Prevention of Controller Windup for Observer-based Controllers 2.3.1 Time Domain Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3.2 Frequency Domain Approach . . . . . . . . . . . . . . . . . . . . . . . 2.4 Realization of General Compensators in the Observer Structure 2.5 Prevention of Controller Windup in the Presence of Signal Models for Disturbance Rejection . . . . . . . . . . . . . . . . . . . . . . . . . . 2.5.1 Disturbance Observers – Johnson’s Approach . . . . . . . . . 2.5.2 Observer-based Controllers Containing Disturbance Models – Davison’s Approach . . . . . . . . . . . . . . . . . . . . . . .
3
Prevention of Plant Windup in Stable Systems . . . . . . . . . . . . 3.1 Introductory Remarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2 Criteria for the Prevention of Plant Windup . . . . . . . . . . . . . . . . 3.3 Additional Dynamic Element for the Prevention of Plant Windup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.1 Additional Dynamic Element in the Frequency Domain 3.3.2 Additional Dynamic Element in the Time Domain . . . . .
21 21 23 27 27 34 40 43 43 50 59 59 61 65 65 77
xvi
4
Contents
Further Methods for the Prevention of Windup . . . . . . . . . . . 4.1 Introductory Remarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2 Relations Between the Observer Technique and Other Methods for the Prevention of Controller Windup . . . . . . 4.3 The Approach of Schneider and Teel and Kapoor to the Prevention of Windup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.4 B¨ uhler’s Cascaded Control Scheme . . . . . . . . . . . . . . . . . . . . . . . .
81 81 83 88 92
5
Prevention of Plant Windup in Stable and Unstable Single Input Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 5.1 Introductory Remarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 5.2 A New Scheme for the Prevention of Windup . . . . . . . . . . . . . . . 105 5.3 Reference Shaping Filter for Unstable Systems . . . . . . . . . . . . . . 108 5.4 Reference Shaping Filter for Stable Systems . . . . . . . . . . . . . . . . 123 5.5 Incorporating State-plus-disturbance Observers . . . . . . . . . . . . . . 136 5.6 Application of the New Scheme to General Controllers . . . . . . . 151
6
Prevention of Windup in Multivariable Systems . . . . . . . . . . . 159 6.1 Introductory Remarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159 6.2 Multivariable Systems with Input Saturation . . . . . . . . . . . . . . . . 162 6.3 Prevention of Controller Windup in Multivariable Systems . . . . 166 6.4 Prevention of Plant Windup in Stable Multivariable Systems . . 167 6.5 Problem of Directionality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174 6.6 Systematic Solution of the Directionality Problem . . . . . . . . . . . 181
7
Additional Rate Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197 7.1 Introductory Remarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197 7.2 Application to the Case of Stable Systems . . . . . . . . . . . . . . . . . . 200 7.3 Application to the Case of Unstable Systems . . . . . . . . . . . . . . . . 206 7.4 An Alternative Solution for Stable Systems . . . . . . . . . . . . . . . . . 212
8
Bumpless Transfer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217 8.1 Introductory Remarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217 8.2 Bumpless Transfer in Observer-based Controllers . . . . . . . . . . . . 219 8.3 Bumpless Transfer in the Scheme of Schneider and Teel and Kapoor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220 8.4 Bumpless Transfer Between Two Controllers that Give Rise to Plant Windup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221 8.5 Bumpless Transfer in Conjunction with the Reference Shaping Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
9
R´ esum´ e and Concluding Discussions . . . . . . . . . . . . . . . . . . . . . . . 229 9.1 Introductory Remarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229 9.2 Controller Windup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231 9.3 Plant Windup in Stable Systems . . . . . . . . . . . . . . . . . . . . . . . . . . 232
Contents
9.4 9.5 9.6 9.7 A
xvii
Plant Windup in Unstable Systems . . . . . . . . . . . . . . . . . . . . . . . . 234 Other Methods for the Prevention of Windup . . . . . . . . . . . . . . . 236 Multivariable Systems with Input Saturation . . . . . . . . . . . . . . . . 237 Additional Aspects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238
Design of Observer-based Controllers . . . . . . . . . . . . . . . . . . . . . . 239 A.1 Introductory Remarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239 A.2 State Feedback in the Time and in the Frequency Domains . . . 241 A.3 State Observation in the Time Domain . . . . . . . . . . . . . . . . . . . . . 244 A.4 Observer-based Control in the Time and in the Frequency Domains . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246 A.5 Incorporation of Disturbance Models . . . . . . . . . . . . . . . . . . . . . . . 265 A.5.1 Johnson’s Disturbance Observer in the Time and in the Frequency Domains . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266 A.5.2 Davison’s Disturbance Model in the Time and in the Frequency Domains . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281 A.6 Time Domain Design of Observer-based Controllers with Disturbance Models for MIMO Systems . . . . . . . . . . . . . . . . . . . . 299
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307 Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
1 Undesired Effects of Input Saturation
1.1 Introductory Remarks Most of the controllers found in industrial applications can be characterized by linear differential equations, and also the plant models used for control design are often linear. Though systems that satisfy all formal definitions of linearity do not exist in practice, linear models describe the system behaviour with sufficient accuracy as long as the loop operates in the vicinity of the operating point for which the control design was carried out. Due to unexpectedly large disturbance inputs, or during major set point changes, as for example, in startup operations, large tracking errors can result, which cause large compensator output signals that cannot be transferred to the plant. Limitations of the amplitude of plant inputs are either a consequence of technological or energy restrictions, or they are imposed by safety requirements. In such a situation, the compensator output signal is larger than the signal actually driving the system, i.e., there is an actuator saturation. In linear control systems, the transient settling time (for example after reference step inputs) is independent of the actual amplitude. This is no longer true if input saturation becomes active. The input signal to the (linear) plant is then smaller than the control input generated by the controller, causing an increased settling time in the constrained case. This delaying influence of amplitude restrictions cannot be avoided, and one could argue that this should result in better damped transients. If, however, the controller contains integral action, input saturation can give rise to large and poorly decaying overshoots in the transients, which must be avoided. These undesired overshoots result from an overreaction of the integrator. The integral part of the controller “winds up” during input signal limitation, and this effect is usually called “reset windup” or simply “windup”. However, not only integral action can give rise to an uncontrolled increase of the compensator output. Since feedback is interrupted during actuator saturation (because variations of the output signal of the plant have no influence on the input of the plant during this period), any critically stable
2
1 Undesired Effects of Input Saturation
or unstable modes of the compensator can develop freely in this open loop situation, causing the typical windup phenomenon. In the early windup literature, only this undesired influence of input saturation and its prevention were discussed. This is probably due to the fact that in classical PI- or PID-applications, the destabilizing influence of input saturation is mainly attributable to unstable controller dynamics, e.g., to integral action. This form of windup is consequently called “controller windup”. An example of the background and of the effects of controller windup can be found in Section 1.2. A closer inspection of control loops with input saturation shows that the so-called controller windup is not the only undesired influence of limitations of the plant input signals. Also in the absence of unstable compensator modes, as for example, in a constant state feedback loop where the compensator does not contain any dynamic element at all, input saturation may cause an oscillatory transient behaviour or even instability. Since this destabilizing influence of actuator saturation is quite similar to that observed in the presence of unstable compensator dynamics, it is also called windup. This windup, however, is not attributable to the controller dynamics (for example to an integrator). It is related to the dynamics of the (controlled) plant, and is consequently called “plant windup” or also “oscillatory plant windup”. The two examples discussed in Section 1.3 clearly demonstrate the background of an oscillatory plant windup. In a given control application controller and plant windup effects can, of course, superimpose. This is possibly the main reason why the clear separation of the two windup phenomena is not generally accepted in the windup community. The following investigations will show, however, that this separation is not only helpful for an interpretation of windup, but it is also of importance in the design of preventive measures. In the presence of stable systems, the destabilizing effect of input saturation can give rise to limit cycles in the worst case. If, however, the plant is unstable, the undesired effects of actuator saturation are much more dramatic. Due to the limited amplitude range, there is always a critical output amplitude (systems with eigenvalues at the origin of the s-plane are not considered here) beyond which the unstable system cannot be stabilized. If the output passes this critical amplitude, it will increase in an exponential fashion. As plant windup often leads to an oscillatory behaviour, it can further reduce the safely applicable reference step amplitudes that do not cause an unstable operation. The problems produced by plant windup in the presence of unstable systems are demonstrated by an example in Section 1.4. In multivariable control problems, i.e., when the system to be controlled has more than one control input, the windup phenomena discussed above can also occur. In the presence of unstable modes of the compensator there is the danger of controller windup, and if the eigenvalues of the system are shifted too far to the left, plant windup can cause an oscillatory behaviour. Controller windup can be prevented by stabilizing the controller in the case of input saturation, and by shaping the linear part of the loop (in the presence
1.2 Controller Windup
3
of stable systems), so that a particular stability criterion is met, actuator saturation does not trigger an oscillatory plant windup. Nevertheless, there possibly remains a plant windup effect, namely that of “directionality”. One design goal in multivariable control is a decoupled behaviour, so that a modification of the set point for one controlled variable does not have a disturbing influence on the remaining ones. To achieve this, the existing crosscouplings in the system need to be compensated by a decoupling controller. The individual components of the controller output define the direction and length of the decoupling vector of inputs to the plant. If, however, one or several of the control signals saturate, the direction of the input vector is modified, which gives rise to possibly enormous cross-couplings, i.e., there is the problem of directionality (see Section 1.5 for an example). Section 1.6 contains a short outline of the measures for the prevention of windup discussed in this book. In what follows, all quantities are scaled by their physical units. The Laplace transform of a time signal u(t) will be denoted by u ¯(s), i.e., L {u(t)} = u ¯(s), and the frequency response plots are discussed in the range 0 < ω < ∞.
1.2 Controller Windup It is assumed in the following that the control loop has the structure shown in Figure 1.1. The system to be controlled is a (linear) single input single output system of order n with a transfer behaviour y¯(s) = saturation us (t) = satu0 (u(t)) defined by ⎧ ⎨ u0 if u > u0 u if − u0 ≤ u ≤ u0 ; satu0 (u) = ⎩ −u0 if u < −u0
N (s) u ¯s (s) and an input D(s)
u0 > 0
(1.1)
Small input signals u(t) pass according to us (t) = u(t), whereas for |u(t)| > u0 , the input signal to the linear system is us (t) = u0 sign[u(t)]. We do not consider the classical controller driven by the tracking error ε(t) = y(t) − r(t), but the controller with two degrees of freedom. It is characterized by two transfer functions GY (s) = NY (s)/DC (s) and GR (s) = NR (s)/DR (s), which define how the output y(t) of the system and the reference r(t) influence the controller output u(t). The classical controller with one degree of freedom and input ε(t) is contained in this description for DR (s) = DC (s) and NR (s) = NY (s). In the linear (unconstrained) case, the controller is intended to give a well-damped behaviour of the closed loop. Reference inputs that cause control signals |u(t)| > u0 may give rise to large and poorly decaying overshoots when controller eigenvalues (the zeros of DC (s)) are located close to the imaginary axis, on it, or in the right half s-plane.
4
1 Undesired Effects of Input Saturation satu0 r
us
u
NR (s) DR (s)
y
N (s) D(s)
NY (s) DC (s)
Figure 1.1. Closed loop with input saturation
This problem was first observed in controllers with integral action. During saturation of the input signal, the integral part can attain enormous amplitudes, requiring large and long lasting overshoots for their elimination. There have been numerous suggestions for preventing these undesired effects of input saturation, and nearly as many different explanations have been offered for this phenomenon. A simple straightforward explanation can be obtained from the following observation. If input saturation is active, variations in the output signal y(t) of the plant do not modify its input signal us (t), so that the controller works in an open loop situation. In open loop the output of the integral part can increase arbitrarily, giving rise to integral windup, or as suggested here, to controller windup. The unlimited growth of the amplitude is, of course, even more dramatic in the presence of exponentially unstable eigenvalues of the compensator. Example 1.1. Demonstration of the effects of controller windup Figure 1.2 shows a speed control loop, where the current-controlled electrical drive is modelled by a first-order system and integral action (time constants TE = 0.01 and TI = 1). The maximum allowable value of the input current u(t) is imax . satimax nref
1 sTN+1
r
u V
us
1 (1+sTE )sTI
uI 1 sTN
Figure 1.2. Speed control with PI controller and input saturation
y= ˆ n
1.2 Controller Windup
5
The PI speed controller is designed to achieve the “symmetric optimum” (V = 50 and TN = 0.04). In order to reduce overshoots (due to the zero in the PI controller), a reference shaping filter r¯ (s) = Gf (s)¯ nref (s) with Gf (s) = 1 sTN + 1
is added.
In Figure 1.3 the speed n(t), the limited current us (t) and the output signal uI (t) of the integral action are shown for different maximum allowable amplitudes imax . The transients of the speed n(t) show that the rising slope is proportional to the maximum current imax . However, the overshoot in relation to the set
2
20
20 5 Current us (t)
10 15 1 20
0.5
0
0
0.2
0.4
15 10
10 5 0
−10
0.6
0
Time
0.2
0.4
Time
(a) Motor speed n(t)
(b) Input current us (t)
100
5 Output uI (t)
Speed n(t)
1.5
50
10 15 20
0
0
0.2
0.4
Time
(c) Integrator output uI (t) Figure 1.3. Reference transients for different limit values imax
0.6
6
1 Undesired Effects of Input Saturation
point n = 1 increases with decreasing imax , though n(t) approaches its desired value more and more slowly. The reason for this behaviour becomes obvious by inspection of Figure 1.3c, where the output uI (t) of the integral part of the controller is depicted. Since the tracking error exists for longer periods when imax is smaller, the integral action attains unnecessarily high amplitudes; it winds up. These amplitudes can only be reduced after the sign of the tracking error changes (i.e., there is an overshoot). An uncontrolled increase of the integrator amplitude can, for example, be prevented by: i) Setting the input to the integrator to zero ii) Resetting the integrator amplitude iii) Feeding the difference u(t) − us (t) back to the integrator input during actuator saturation. Some of these measures for classical controllers are discussed in Section 2.2. After controller windup has been prevented or if the danger of controller windup does not exist as, for example, in a mere proportional controller, actuator saturation can have a detrimental influence on the transients of the closed loop and it may even cause an unstable behaviour. This phenomenon will be discussed in the next section.
1.3 Plant Windup in Stable Systems In addition to controller windup, a restricted input signal can give rise to another undesired effect, namely to plant windup. This is not due to an uncontrolled increase of controller states during input saturation. Instead it is caused by plant states that cannot be brought to their steady state values fast enough because of the existing input signal restriction. Plant windup can give rise to an oscillatory transient behaviour and even to an instability of the closed loop. The popular three-tank system is well-suited for demonstrating the problem of oscillatory plant windup. If its eigenvalues are shifted beyond certain limits by the control, plant states possibly develop, which cannot be reduced fast enough because of the limited input amplitude. Example 1.2. Demonstration of a typical plant windup Figure 1.4 shows a schematic diagram of the three-tank system. Three tanks with equal diameter are connected by tubes. A pump with limited maximum flow qmax supplies a flow rate qin (t) of water to the left tank (tank 1), and the water then flows to the center tank (tank 2), to the right tank (tank 3), and finally into the reservoir. The controlled variable is the water level h2 (t) in the centre tank.
1.3 Plant Windup in Stable Systems
7
pump qin
A
h1
h2 h3
tank 1
qout
q23
q12 tank 2
tank 3
Figure 1.4. Schematic diagram of the three-tank system
Initially the system is in the steady state, characterized by an outflow qSout , and levels hS1 , hS2 and hS3 such that the constant inflow qSin is centred between the maximum inflow qmax and zero. Linearization of the differential equations for the levels in the three tanks with the increments Δh1 (t) = h1 (t) − hS1 ≡ x1 (t), Δh2 (t) = h2 (t) − hS2 ≡ x2 (t) = y(t), Δh3 (t) = h3 (t)−hS3 ≡ x3 (t), and Δqin (t) = qin (t)−qSin ≡ us (t) gives the following (amplitude and time scaled) state equations x(t) ˙ = Ax(t) + bus (t) y(t) = cT x(t) or ⎤ ⎤⎡ ⎤ ⎡ ⎤ ⎡ 6.5 −0.45 0.45 0 x1 (t) x˙ 1 (t) ⎥ ⎥⎢ ⎥ ⎢ ⎥ ⎢ ⎢ ⎣ x˙ 2 (t) ⎦ = ⎣ 0.45 −0.89 0.45 ⎦⎣ x2 (t) ⎦ + ⎣ 0 ⎦ us (t) 0 0 0.45 −1.26 x3 (t) x˙ 3 (t) ⎡ ⎤ x (t) ⎢ 1 ⎥ y(t) = 0 1 0 ⎣ x2 (t) ⎦ x3 (t) ⎡
In relation to the steady state value qSin , the inflow us (t) ≡ Δqin (t) is limited to the region −1 ≤ us (t) ≤ 1, i.e., there is an input nonlinearity as defined in (1.1) with an amplitude u0 = 1.
8
1 Undesired Effects of Input Saturation
All three levels are measurable, and since the system is completely controllable from the input us (t), a constant state feedback u(t) = −k T x(t) + mr(t) can be used to place the eigenvalues of the closed loop at desired locations. A choice of the reference injection factor m=
cT (−A
1 + bk T )−1 b
assures vanishing tracking errors y(∞) − r(∞) for constant reference inputs. 1 356.4 455.796 256.6232 assigns the The feedback vector k T = 1053 eigenvalues of the closed loop at s = −1.6 and the corresponding m is given 8.192 by m = . 7.371 Figure 1.5 shows the reference transients starting from the steady state for an input r(t) = 1(t) (where 1(t) is the unit step function).
Δqin (t)
y(t) = Δh2 (t)
Δh1 (t)
1
2.5
0.8
Δh3 (t)
1.4
0.4
1.2
0.35
2 0.3
1 0.6
0.25
1.5
0.8 0.2
0.4
0.6
1
0.15 0.4
0.2
0.1
0.5 0.2
0
0
5 Time
10
0
0
5 Time
10
0
0.05
0
5 Time
10
0
0
5
10
Time
Figure 1.5. Input signal and levels for a step-like reference input (for dynamics of the closed loop that avoid plant windup)
1.3 Plant Windup in Stable Systems
9
The inflow Δqin (t) (left plot), the transient responses of the levels Δh1 (t), y(t) = Δh2 (t) and Δh3 (t) are shown. Except for a short period at the beginning, the input signal Δqin (t) is unsaturated and as a consequence, the controlled variable y(t) shows a welldamped transient behaviour. The level h1 (t) in tank 1 exhibits a distinct overshoot, which is a necessary condition to obtain the desired transient behaviour of the controlled variable y(t) (characterized by the three real poles at s = −1.6). There is a slight overshoot in y(t) in spite of all eigenvalues of the closed loop being real. This is due to a dominant zero in the transfer function between the input us and the output y of the system at s = −1.26. The transients shown in Figure 1.6 are obtained by placing the eigenvalues of the closed loop further to the left, namely to s = −6. This requires 1 2494.8 26354.196 87560.7192 and a factor a feedback vector k T = 1053 432 . m= 7.371 The controlled variable y(t) now exhibits a distinct oscillatory behaviour which is caused by plant windup.
Δqin (t)
Δh1 (t)
1
0.5
Δh3 (t)
y(t) = Δh2 (t)
6
1.6
0.45
5
1.4
0.4 0.35
1.2
4
0.3 1 3
0.25
0
0.8 0.2
2 0.6
0.15 1
−0.5
0.4
0 −1
0
5 Time
10
−1
0.1
0.2
0
5 Time
10
0
0.05 0
5 Time
10
0
0
5
10
Time
Figure 1.6. Input signal and levels for a step-like reference input (for dynamics of the closed loop that provoke plant windup)
10
1 Undesired Effects of Input Saturation
To assure the desired fast transient behaviour, the required inflow would have to be Δqin = 58.6 at the beginning. This is not possible because of the existing input limitation u0 = 1. Consequently, the saturated input signal Δqin = 1 acts until the controlled variable y(t) = Δh2 (t) comes close to the desired value y = 1 for the first time. In the meantime, the level h1 (t) is far beyond the amplitude necessary to assure the desired steady state for h2 (t). To prevent Δh2 (t) from exceeding the new set point Δh2 = 1, a large negative input us (t) would be necessary to reduce the level h1 (t) to its corresponding steady state value. This, however, is not possible because of the existing input saturation at Δqin = −1 (which corresponds to qin = 0). This leads to a considerable overshoot in h2 (t), whose reduction requires an input signal that again exceeds the saturation limit. When h2 (t) approaches the desired final value from above, the controller tries to adjust the level h1 (t) to the correct value. At this time, however, h1 (t) is still far below that value and an adequate rise in h1 (t) would again necessitate an input us (t) = Δqin (t) exceeding the saturation level at +1. Thus, an undershoot of y(t) results and only the reduction of this undershoot is achieved with an unsaturated input signal, so that the system finally reaches the desired set point at about time t = 4. However, not only state feedback control can cause plant windup. This is demonstrated by the next example. Example 1.3. Plant windup caused by a proportional controller in a stable SISO system of the order three We consider a system of the order three with the transfer function G(s) =
s2 + 16s + 90 N (s) = 3 D(s) s + 3s2 + 2s + 2
At the input of the system there is a saturating nonlinearity according to (1.1) with an amplitude u0 = 0.1. Therefore, the maximum sustainable amplitude of the output is restricted to the region −4.5 ≤ y(∞) ≤ 4.5. The controller has mere proportional action with gain V = 60 and its input is the tracking error y(t) − r(t). To obtain a vanishing tracking error y(∞) − r(∞) for reference inputs r(t) = rS 1(t) and no overshoot, a reference shaping filter with the transfer function Gf (s) =
54020 Nf (s) = Df (s) 5400(s + 10)
is added. Thus, the controller of the loop in Figure 1.1 is characterized by DC (s) = 1, NY (s) = 60, NR (s) = 3241200 and DR (s) = 5400(s + 10). For extremely small input amplitudes rS the controller output u(t) stays below the saturation limit u0 , and therefore, the reference transients exhibit the nominal linear behaviour characterized by the reference transfer function
1.3 Plant Windup in Stable Systems
11
54020(60s2 + 960s + 5400) y¯(s) = r¯(s) 5400(s3 + 63s2 + 962s + 5402)(s + 10) If input saturation occurs, the settling time of the transients is increased in relation to the linear case, and for input step amplitudes rS ≥ 0.04 input saturation causes distinct overshoots. Figure 1.7a shows the reference transients for step amplitudes in the region 0.02 ≤ rS ≤ 0.08. Reference step inputs with amplitudes rS ≥ 0.1 trigger non-decaying limit cycles. Figure 1.7b shows the transient response for a reference step input with rS = 1. The effects observed cannot be attributed to a controller windup because the controller does not contain dynamic elements. However, if the limited input signal acts for some time it causes amplitudes of the states of the system that cannot be reduced fast enough by the constrained input signal, so that overshoots, undershoots and for larger reference inputs non-decaying limit cycles appear. This is the typical effect of a severe plant windup. The systems in Examples 1.2 and 1.3 are both controlled by a proportional feedback of the available measurements. Consequently, there are no states of the compensator that could wind up. Instead the observed oscillatory behaviour results whenever the states of the system are driven to values from where the constrained input signal cannot bring them back fast enough to guarantee the well-damped behaviour that was assigned to the linear loop. Whenever the dynamics of the closed loop are “too fast” in view of the existing input saturation, there is the danger of an oscillatory plant windup.
2
0.14
1.5
0.1
Output y(t)
Output y(t)
0.12
0.08 0.06
1 0.5
0.04
0
0.02 0
0
0.5
1
1.5
Time
(a) Small input amplitudes
2
−0.5
0
10
20
30
Time
(b) Large input amplitude
Figure 1.7. Reference transients impaired by plant windup
40
12
1 Undesired Effects of Input Saturation
1.4 Plant Windup in Unstable Systems The examples in Section 1.3 demonstrated that plant windup may cause an increased oscillatory or even an unstable behaviour of the closed loop. In the presence of stable systems this instability becomes manifest in limit cycles with finite amplitude (see e.g., Figure 1.7b). In the presence of unstable systems, however, such an instability may give rise to exponentially growing outputs. To obtain a safe operation, the exponential growth of the output must be prevented. In the presence of input saturation, an exponential growth of the controlled variable can only be prevented if the output has not passed a critical amplitude. In the following discussions, poles at s = 0 are excluded. Given the transfer function G(s) of the unstable plant, and a saturation nonlinearity (1.1) with amplitude u0 , the critical amplitude is ymax = |G(0)| u0
(1.2)
For stable systems (1.2) defines the maximum sustainable amplitude of the output. This is also true in unstable systems. However, if the output y(t) of an unstable system would reach this critical amplitude exactly, it could not be brought back into the region −ymax < y(t) < ymax by the constrained input, and infinitesimally small disturbances or small rounding errors by the computer could destabilize the loop. Therefore, in the presence of constrained unstable systems the reference signal must always be confined to a safe region −r0 ≤ r(t) ≤ r0
with r0 < ymax
(1.3)
If, for example, step-like changes of the reference signal take place, the safety margin εsaf e = ymax − r0 depends on the control design. For slow dynamics of the closed loop εsaf e can be small. If the eigenvalues of the system are shifted further left the danger of plant windup occurs, giving rise to an oscillatory transient behaviour. Thus the critical amplitude ymax may already result for reference inputs |r(t)| 17, whereas for τd < 17 the additional disturbance causes an exponentially increasing output. Figure 1.11 shows the system outputs that result for a reference sequence with rS = 0.6 and τ = 15 and an additional disturbance step input with τd = 10. The solid line represents the case dS = 0, the dotted line the case dS = 0.3, and the dash-dotted line the case dS = −0.3, where the additional disturbance causes an exponentially increasing output y(t). 0.8 0.6
Output y(t)
0.4 0.2 0 −0.2 −0.4 −0.6 −0.8
0
5
10
15
20 Time
25
30
35
40
Figure 1.11. Transients for jointly acting reference and disturbance signals
16
1 Undesired Effects of Input Saturation
1.5 Problem of Directionality in MIMO Systems The windup effects investigated so far can be observed both in SISO and MIMO systems. If the compensator contains poorly damped or unstable modes, the danger of controller windup exists and if the dynamics of the closed loop are “too fast”, there is the possibility of plant windup. However, also if controller windup has been prevented and the linear part of the loop satisfies one of the criteria that make sure that input saturation does not cause an increased oscillatory behaviour (see Sections 3.2 and 6.4), there is still the possibility of a plant windup effect in MIMO systems, namely that of directionality. An important design goal in MIMO control is to obtain a decoupled behaviour. When using classical controllers this has the advantage of allowing an independent tuning of the controllers for each input-output pair. With observer-based controllers, a decoupling – or if this is not exactly achievable, an approximate decoupling – design is also desirable, since the existing crosscouplings in the system may cause a considerable deterioration of the reference behaviour. When changing the set point of one controlled variable this should not have a disturbing influence on the remaining ones. Given a set of tracking errors, the decoupling controller generates specific output signals ui (t), which counteract the existing cross-couplings in the system. The individual output signals define the length, the direction, and the dynamic evolution of the output vector u(t). In the linear case, the vector us (t) = u(t) then constitutes the decoupling control input to the system. If one or more input signals saturate, the direction of us (t) no longer coincides with that of the decoupling output vector u(t) of the controller, which may result in severe cross-couplings. Therefore, the so-called directionality problem occurs whenever the direction of the decoupling input vector u(t) cannot be transferred to the system. Example 1.5. Demonstration of a directionality problem We consider a MIMO system of the order three with two inputs and two outputs. Its input-output behaviour y¯(s) = G(s)¯ us (s) is characterized by the transfer function matrix ⎤ ⎡ 1 0 ⎢ s+3 ⎥ ⎥ G(s) = ⎢ (1.4) ⎣ 1 1 ⎦ s+1 s+4 At the input of the system there is a saturating actuator us (t) = satu0 (u(t)), and its components are described by ⎧ ⎨ u0i if ui > u0i ui if − u0i ≤ ui ≤ u0i ; u0i > 0; i = 1, 2 (1.5) satu0 (ui ) = ⎩ −u0i if ui < −u0i
1.5 Problem of Directionality in MIMO Systems
17
The saturation limits are u01 = 4 and u02 = 17. Using a decoupling input network ⎡ ⎤ 1 0 ⎦u u¯(s) = ⎣ s + 4 ¯R (s) 1 − s+1 the transfer behaviour of the overall system from the new input vector uR to the system output y becomes diagonal, namely ⎡ ⎤ 1 0 ⎥ ⎢ s+3 ⎥u y¯(s) = ⎢ ¯ (s) ⎣ 1 ⎦ R 0 s+4 Now this system can be controlled by two proportional SISO controllers u¯R1 (s) = −30¯ y1(s) + 33¯ r1 (s) and u¯R2 (s) = −30¯ y2(s) + 34¯ r2 (s)
1
Outputs y1 (t) and y2 (t)
Outputs y1 (t) and y2 (t)
This assures a decoupled reference behaviour, i.e., the reference signal r1 (t) only influences y1 (t) and the reference input r2 (t) only acts on y2 (t). In the following, only a unit step input for y1 (t) is applied, i.e., r1 (t) = 1(t), while the amplitude of the reference input for y2 (t) is kept at zero. Figure 1.12a shows the reference behaviour of the linear unconstrained loop which is obviously decoupled.
y1
0.8 0.6 0.4 0.2
y2
0 −0.2
0
1
2
3
1
y1 0.5
0
y2
−0.5 0
1
Time
(a) Linear reference transients
2
3
Time
(b) Nonlinear reference transients
Figure 1.12. A directionality problem
18
1 Undesired Effects of Input Saturation
If, however, the signals u1 (t) and u2 (t) saturate at u01 = 4 and u02 = 17, the decoupling behaviour no longer results when a reference signal r1 (t) = 1(t) is applied. Figure 1.12b shows the corresponding transients, which clearly indicate that a considerable cross-coupling is caused by input saturation. The examples in Chapter 1 have demonstrated that there are various possible reasons for the detrimental effects of input saturation. Undesired overshoots are not only caused by controller windup but also by plant windup. It turns out that plant windup not only produces an undesired oscillatory behaviour (or even an unstable behaviour of the closed loop), but it may also cause directionality problems in MIMO systems. All these effects superimpose, so that an inspection of the transients alone does not provide enough information about the causes. Since we have used mere proportional controllers in Example 1.5, controller windup does not occur. An investigation of the transfer behaviour between the output of the saturation element and its input shows that it satisfies the so-called circle criterion, which rules out stability problems due to input saturation (see Chapter 6). Therefore, the detrimental effects of actuator saturation can be attributed to a directionality problem here.
1.6 Short Outline of the Approaches to Preventing the Undesired Effects of Input Saturation Comparing the undesired effects of input saturation discussed in Chapter 1, it becomes obvious that by visual inspection one cannot decide whether they result from a controller windup, a plant windup or a superposition of both. For MIMO systems this becomes even more complicated, since the directionality problem can be superimposed on the windup phenomena known from SISO systems. So the question arises: “Why should one differentiate between controller windup and plant windup at all?” The main reason for this distinction is the fact that for each form of windup there are special methods available for its prevention. Controller windup, which is due to unfavorable compensator eigenvalues, can be prevented by an appropriate realization of the compensator, which ensures that the controller becomes a stable system in the case of input saturation. There are numerous approaches to the prevention of controller windup. At the beginning of Chapter 2 some of them are discussed for classical PI and PID controllers. Then the prevention of controller windup is investigated for observer-based controllers, which possibly incorporate signal models for disturbance rejection. A systematic prevention of controller windup is obtained by the so-called observer technique. This technique assures that input saturation does not cause observation errors. Thus the remaining undesired effects of input saturation are completely independent of the dynamics of the compensator, so that they are solely attributable to plant windup.
1.6 Short Outline of the Approaches to Windup Prevention
19
Nearly all linear controllers can be interpreted as observer-based controllers, so that the observer technique is, for example, also applicable to classical PI and PID controllers. After applying the observer technique, the reference behaviour of the loop is exactly the same as if constant state feedback control was present. Thus, the observer technique also allows a systematic solution of the bumpless transfer problem, which is presented in Chapter 8. Plant windup is due to fast dynamics of the closed loop, i.e., the eigenvalues of the system have been shifted too far into the left half s-plane in view of the existing input saturation. The danger of plant windup is indicated by the linear part of the loop, i.e., by the transfer function between the output and the input of the nonlinear saturating element. Some of the criteria that indicate the danger of plant windup for stable systems will be discussed in Section 3.2. The most obvious approach to the prevention of plant windup is to assign the dynamics of the closed loop such that the transfer function of the linear part satisfies one of these criteria. This slowing down of the loop dynamics, however, can have two drawbacks. The (now) reduced transient speed also occurs for very small reference signal amplitudes, and it can also impair the attenuation of the disturbances, which may not be acceptable. Another approach to avoiding the effects of plant windup is an appropriate (temporary) reduction of the reference signal as soon as plant states develop that cannot be brought to their future steady state values fast enough because of the restricted input signal. For stable systems, such a reduction can be achieved by an additional dynamic element, discussed in Section 3.3. The design of this additional dynamic element uses the fact that it influences the transfer function of the linear part of the loop in a transparent way. Thus simple techniques for frequency response shaping become applicable. Chapter 4 gives a short summary of various methods for the prevention of windup known from the literature. It turns out that many of them can be interpreted within the schemes discussed in Chapters 2 and 3. The nonlinear cascaded control developed by H. B¨ uhler has an exceptional role. It allows plant windup to be removed without introducing additional dynamic elements, and it is not only applicable to stable but also to unstable systems. Though it has an unfavorable influence on disturbance rejection, it constitutes the basis for a new approach to the prevention of windup discussed in Chapter 5. In unstable systems plant windup cannot be prevented by a modification of the linear part of the loop. Though the prevention of controller windup remains unchanged, a totally new method for the removal of plant windup is necessary. Due to actuator saturation the (stabilizing) feedback is interrupted, allowing an uncontrolled development of the unstable modes of the system. Consequently, a proof of finite output signals in spite of input saturation is only possible when the signals acting on the system are known exactly. Unfortunately, the disturbance signals are usually not known a priori, and this is also true of the applied reference signals in many cases. A strict
20
1 Undesired Effects of Input Saturation
proof of stability in the presence of unknown input signal forms is feasible for constrained unstable systems if input saturation never becomes active. This is the idea behind the control scheme discussed in Chapter 5, which solves the problem of windup prevention for both stable and unstable systems. The scheme uses a model-based nonlinear reference shaping filter. This filter shapes arbitrary reference inputs so that the resulting trajectories can be tracked without exceeding predefined amplitude limits for the control input. Appropriate measures assure that feedback signals are not generated by reference signals. Thus one can split the restricted amplitude range of the input signal into one part necessary for the rejection of the disturbances and a remaining part used for tracking. Consequently, input saturation can be prevented completely, so that the stabilizing feedback control is always active. In a slightly modified form the new approach presented in Chapter 5 also applies to stable systems, where input saturation does not have to be prevented under all circumstances. In MIMO systems the controller and the (oscillatory) plant windup can be prevented as in SISO systems. In MIMO systems, however, the additional problem of directionality may be present, which is not removable by the classical measures for the prevention of plant windup. There have been various attempts to solve the directionality problem. Most of them, however, only provide approximate solutions. Unfortunately also the well-known “directionality preserving” control proposed by Campo and Morari can only be successfully applied under very specific circumstances. The new structure for the prevention of plant windup presented in Chapter 5 allows input saturation to be completely avoided. When designing a reference shaping filter that generates decoupled trajectories for the system, the new scheme allows one to assure an exact preservation of directionality for stable and unstable MIMO systems (see Chapter 6). So far only amplitude limitations have been considered. There are, however, actuators that contain an additional speed limitation (actuators with limited slew rate, or rate-saturated actuators). If this rate saturation is not taken into account it may also have a destabilizing effect. Due to the additional rate constraint a second nonlinear element is present in the loop. This complicates the stability analysis of such control systems. However, when using a simple model of an actuator with joint amplitude and rate constraints (see Chapter 7), all known methods for the prevention of windup are readily applicable also to this problem. In Chapter 8 the bumpless transfer problem is also shortly addressed. It arises when switching from manual to automatic during start-up, or when switching between different controllers in certain applications. The schemes presented for the prevention of windup also constitute a systematic solution to this problem, because observation errors are also prevented in the open loop, so that after the transfer of authority to the new controller, no transients are caused by wrong initial states of the compensator.
2 Prevention of Controller Windup
2.1 Introductory Remarks As already discussed in Chapter 1, input saturation can have a degrading influence on the transients of a closed loop designed to achieve a well-damped behaviour. Such phenomena were first observed with classical I, PI, or PID controllers, where the integrator “winds up” during the saturation period. This is the reason why the undesired effects of input saturation are called “integral windup”, “reset windup” or simply “windup”. Since the integral windup is clearly attributable to the eigenvalues of the controller, it was suggested in [34] that it be called “controller windup”. In an observer-based controller integral action can be viewed as a signal model for constant disturbances, which is a fictitious part of the system in the design of an observer for the states of the system and the disturbance model. Since it is possible to interpret every linear compensator as an observer-based controller, the following discussions also apply to general controllers. Driven by the outputs of the system and the controller, the observer generates an estimate for the acting disturbance, which is then counteracted by a suitable control signal. Given, for example, a positive controller output, the disturbance observer reconstructs the external disturbance responsible for the reduced output slope, which must be counteracted by a larger input signal. If, however, the reduced transient speed results from a saturation of the plant input signal instead, the observer also reconstructs the (not existing) disturbance, and the effort to counteract this phantom disturbance can give rise to the poorly decaying overshoots, which are a typical consequence of controller windup. Therefore, controller windup can be interpreted as observation errors that are caused by input saturation. This gives a simple guideline for the prevention of controller windup: “realize the compensator as an observer-based controller and feed the actual (namely possibly saturated) plant input signal into the observer.” This method for the prevention of controller windup, which is known as the observer technique, has a positive side effect, because it allows a continued observation of
22
2 Prevention of Controller Windup
the disturbances even in the constrained case. The observer technique has the further advantage that a possibly remaining undesired influence of input saturation (the so-called plant windup) is completely independent of the observer for the states of the system and the disturbance model. Another explanation of the occurrence of controller windup can be derived from the observation that feedback is interrupted during input saturation, because changing system outputs do not cause modified inputs to the linear plant during input saturation. In open loop, however, integrating or exponentially unstable modes of the controller can attain enormous amplitudes, whose reduction then causes the well-known effects of controller windup. There exist various heuristic approaches to avoiding the unchecked growth of unstable modes of the controller during input saturation such as stopping the integration or resetting the integrator in the case of saturation, or more systematic ones like stabilizing the controller during the saturation period. Some of these methods developed for classical controllers are reviewed in Section 2.2. In Section 2.3 the observer technique is first discussed for observer-based controllers that do not contain signal models for disturbance rejection. This makes sense from two different points of view. On the one hand, marginally stable and unstable controllers can also occur in the absence of signal models, and on the other hand, the investigation of the remaining effects of input saturation becomes particularly simple after the observer technique has been applied. The discussions in Section 2.3.1 use a time domain representation of system and controller, whereas the equivalent frequency domain results are presented in Section 2.3.2. How to convert a classical control configuration into an observer-based structure is discussed in Section 2.4. This conversion uses two different representations of observer-based controllers, namely the classical structure with two degrees of freedom and the observer structure. Thus the methods for the prevention of windup in observer-based controllers also become applicable to general, for example, P, PI and PID controllers. There are two different approaches to the rejection of constantly acting disturbances. The first was introduced by Johnson on the basis of a disturbance observer with subsequent injection of the observed states for disturbance attenuation (see Section A.5.1). The second, namely Davison’s approach, uses a signal model in the controller (see Section A.5.2). In a time domain representation of Johnson’s technique, a feedback of the constrained signal into the observer directly prevents controller windup, and also the frequency domain version of the observer technique is applicable without modification (see Section 2.5.1). With Davison’s method this is only true in the frequency domain. In the time domain version a feedback of the constrained input signal into the observer does not remove controller windup, since the signal model is not driven by the plant input in Davison’s original technique. Only by introducing an suitable modification of Davison’s approach (see also the discussion in Section A.5.2), the prevention of controller windup also becomes possible in a time domain setting.
2.2 Prevention of Controller Windup for PI and PID Compensators
23
2.2 Some Measures to Prevent Controller Windup for PI and PID Compensators In the discussions below the plant input signal u(t) is allowed to have different upper and lower saturation limits umax and umin . Since controller windup occurs when input saturation allows unstable modes of the controller, such as integral action, to increase without limits, this unchecked growth must be prevented. A multitude of different methods for the prevention of controller windup have been developed on the background of this observation. In the following, some of them will be discussed. In Figure 2.1a, integration is stopped whenever the plant input signal passes the limits umax or umin . This scheme prevents the integrator from winding up, since integration is only allowed for unsaturated inputs u(t) to the system. umax
a)
us
u V umin uI 1 sTN 1
b)
umax us
u V uI
umin
1 sTN 1
Figure 2.1. PI controller with blocking of integration (a) when the output signal of the controller is outside the saturation limits and (b) when the tracking error is outside certain limits
24
2 Prevention of Controller Windup
An alternative for the prevention of controller windup is shown in Figure 2.1b. Here integration is only allowed as long as the tracking error is within predefined limits. Figure 2.2a uses an override control to assure a state of the integrator such that the output u(t) of the controller never leaves the allowed region umin ≤ u(t) ≤ umax . A similar effect is achieved by the scheme of Figure 2.2b. Whenever the output signal of the controller leaves the region umin ≤ u(t) ≤ umax , the integrator is stabilized by a feedback of the difference us (t) − u(t). Consequently, the danger no longer exists that the state of the integrator attains enormous amplitudes during input saturation. a)
umax
Kb
u V uI 1 sTN umin
Kb
b) umax us
u
V uI
umin
1 sTN
TN Kf
Figure 2.2. PI controller with modification of the integral part (a) using an override control and (b) by feedback of the difference between the unsaturated and the constrained outputs of the controller
2.2 Prevention of Controller Windup for PI and PID Compensators
25
The above approaches prevent the unlimited growth of the output of the integrator during saturation. They suffer, however, from a common drawback because they are based on more or less heuristic manipulations, which have to be tuned to the particular application. Only the scheme in Figure 2.2b comes close to the systematic solution investigated in the sequel. Beyond the above approaches, there are numerous other ways of preventing the detrimental effects of input saturation in classical controllers with integral action. They are discussed in more detail in the first part of the book [23]. For an extensive list of references on the prevention of windup see also [7]. Example 2.1. The prevention of windup for a PI controller using the method of Figure 2.2b Considered is the speed control loop of Figure 1.2 that was investigated in Example 1.1. Figure 2.3a shows the reference transients n(t) for a limitation of the maximum current to imax = 10 and Figure 2.3b the corresponding amplitudes of the integrator output uI (t). The four different transients result for feedback factors Kf = 0, Kf = 10, Kf = 30, and Kf = 50 in the scheme of Figure 2.2b. The results demonstrate that Kf may vary over a wide range and that it has a distinct influence on the transient behaviour when input saturation becomes active. In this example, increasing values of Kf assure an improved damping in the transients of the nonlinear loop. Though the above design guideline for the scheme in Figure 2.2b, namely increase Kf to obtain reduced overshoots, is correct it does not always produce the desired results. This is demonstrated by the next example. 1.5
40
Integrator output uI (t)
Kf = 0
Speed n(t)
Kf = 10 1
Kf = 30 Kf = 50 0.5
0
0
0.1
0.2
0.3
Time
(a) Reference transients
0.4
Kf = 0 30
Kf = 10
20
Kf = 30
10 0 −10
Kf = 50 0
0.1
0.2
0.3
0.4
Time
(b) Integrator amplitudes
Figure 2.3. Reference behaviour of the loop in Figure 1.2 when the scheme for the prevention of windup of Figure 2.2b is applied for different values of Kf
26
2 Prevention of Controller Windup
Example 2.2. Investigation of a closed loop with a plant of the order three and a PI controller. Demonstration that the prevention of controller windup does not always guarantee well-damped transients of the nonlinear loop We consider again a control system as shown in Figure 1.2. The system is now characterized by the transfer behaviour y¯(s) = G(s)¯ us (s) with G(s) =
s2 + 10s + 74 s3 + 3s2 + 3s + 1
and the parameters of the controller are V = 50 and TN = 0.1. The responses of the linear loop to a reference input r(t) = rS 1(t) with rS = 1 are welldamped and do not exhibit overshoot. If, however, a saturation us (t) = satu0 (u(t)) with u0 = 0.1 of the input occurs (see (1.1)), the reference transients of the nonlinear loop oscillate (limit cycles). The limit cycles that develop for rS = 1 have a stationary amplitude of about 6.4. Using the scheme of Figure 2.2b for the prevention of controller windup, the oscillatory behaviour can be reduced. Figure 2.4a shows the reference transients (with input amplitude rS = 1) for the values Kf = 0, Kf = 1, Kf = 10 and Kf = 100. The different plots show the tendency already observed in Example 2.1, namely that increasing factors Kf entail an improved damping. A comparison of the transients for Kf = 100 and Kf = 1000 in Figure 2.4b, however, shows that the resulting improvements are barely noticeable beyond Kf = 100. Though the controller windup has been eliminated by the measure shown 6
1.5
Kf = 0 Kf = 1 Kf = 10
2
Kf = 1000 Output y(t)
Output y(t)
4
0
Kf = 100
1
Kf = 100
0.5
−2 −4
0
5
10
Time
(a) Reference transients for feedback factors 0 ≤ Kf ≤ 100
0
0
5
10
Time
(b) Reference transients for feedback factors Kf = 100 and Kf = 1000
Figure 2.4. Influence of different feedback factors Kf on the reference transients (rS = 1, u0 = 0.1)
2.3 Prevention of Controller Windup for Observer-based Controllers
27
in Figure 2.2b, the transients of the loop still exhibit a distinct oscillating behaviour. These oscillations cannot be prevented by any of the approaches discussed above. A suitable tuning of the heuristic measures for the prevention of controller windup often produces the desired results in standard control applications. On the one hand, the above methods are far from being systematic and, on the other hand, they may not be sufficient to remove all undesired effects of input saturation (see Example 2.2). Therefore, a more systematic approach is desirable, and it becomes possible along the lines pursued in the following.
2.3 Prevention of Controller Windup for Observer-based Controllers 2.3.1 Time Domain Approach We consider linear, stable, time-invariant systems of the order n with one manipulated (or control) input us (t), a controlled output y(t), and p ≥ 1 measurements ym (t), with the state equations x(t) ˙ = Ax(t) + bus (t) y(t) = cT x(t) ym (t) = Cm x(t)
(2.1)
It is assumed that (2.1) describes a minimal realization of the system, i.e., the pair (A, b) is completely controllable and the pair (A, Cm ) is completely observable. The transfer behaviour between the input us and the output y is denoted by y¯(s) = G(s)¯ us (s) with the transfer function G(s) = cT (sI − A)−1 b =
N (s) D(s)
(2.2)
such that N (s) does not contain a zero at s = 0. There is a saturating nonlinearity us (t) = satu0 (u(t)) at the input of the system, which limits the amplitudes of the output signal u(t) of the controller according to ⎧ ⎨ u0 if u > u0 u if −u0 ≤ u ≤ u0 ; u0 > 0 (2.3) satu0 (u) = ⎩ −u0 if u < −u0 Remark 2.1. In general, the input signals of the system may be limited according to umin ≤ us (t) ≤ umax . In order to reduce the notational complexity, symmetric lower and upper saturation limits umax = −umin = u0 are assumed throughout this book. However, the methods discussed for the prevention of windup also hold for non-symmetric saturation limits.
28
2 Prevention of Controller Windup
Due to the restricted amplitude of the input, there is a maximum sustainable amplitude ymax of the output, which limits the range of the controlled output according to −ymax ≤ y(t → ∞) ≤ ymax (2.4) This amplitude ymax is finite unless there is an eigenvalue of the system at s = 0. Given the static gain
VSt = cT (−A)−1 b , 0 < VSt < ∞ (2.5) the maximum sustainable amplitude of the output is ymax = VSt u0
(2.6)
In many cases the actual output y(t) stays within the maximum used range, which is limited by (2.7) −r0 ≤ y(t → ∞) ≤ r0 where the maximum applied amplitude r0 of the reference signal satisfies the inequality (2.8) r0 < ymax In the case of stable systems, this restriction is used to reserve part of the constrained input signal range for disturbance rejection. In the case of unstable systems, ymax is the critical amplitude that must be avoided to guarantee a stable operation of the closed loop in the presence of input saturation. See also the discussions in Section 1.4 and Chapter 5. Now assume there is a nominal control u(t) = −k T x(t) + mr(t)
(2.9)
The state feedback in (2.9) is often denoted by u˜(t) = k T x(t)
(2.10)
in this book and the control (2.9) is also called “ideal state feedback”, since its realization would require that all states of the system can be measured (which is hardly ever the case). The control (2.9) is intended to assign the desired dynamics of the linear loop, i.e., for us (t) = u(t). Vanishing tracking errors y(∞) − r(∞) are assured for constant reference signals r(t) by m=
cT (−A
1 + bk T )−1 b
(2.11)
Whenever the number of measurements is smaller than the order of the system (i.e., p < n), a (reduced-order) state observer is required.
2.3 Prevention of Controller Windup for Observer-based Controllers
29
For the design of the observer the measurement vector ym (t) is subdivided according to 1 1 (t) ym Cm x(t) (2.12) ym (t) = = 2 2 (t) Cm ym 2 The vector ym (t) contains the κ measurements that are directly used in the computation of the state estimate x ˆ(t). The (reduced-order) state observer
z(t) ˙ = F z(t) + Lym (t) + T bu(t)
(2.13)
of order nO = n − κ with 0 ≤ κ ≤ p, whose design is discussed in detail in Section A.3, leads to z(t) = T x(t) in the steady state, if the relation T A − F T = LCm
(2.14)
2 holds. If the rows of Cm and T are linearly independent, the estimate x ˆ(t) for x(t) is −1 2 Cm y 2m (t) = Ψ2 y 2m (t) + Θz(t) (2.15) xˆ(t) = z(t) T
This can equivalently be expressed as xˆ(t) = Ψ ym (t) + Θz(t)
(2.16)
by introducing the abbreviation Ψ = 0n,p−κ
Ψ2
(2.17)
As a consequence of (2.15) the relation Ψ Cm + ΘT = In
(2.18)
holds. It assures xˆ(t) = x(t) whenever z(t) = T x(t) (see (2.16)). Substituting x(t) in (2.9) and (2.13) by x ˆ(t), one obtains the state equations of the observer-based controller z(t) ˙ = (F − T bk T Θ)z(t) + (L − T bk T Ψ )ym (t) + T bmr(t) u(t) = −k T Θz(t) − k T Ψ ym (t) + mr(t)
(2.19)
Figure 2.5 shows a block diagram of the closed loop. The observer was designed for the linear system. Hence it is evident that input saturation will cause observation errors, because the actual input signal us (t) = satu0 (u(t)) to the linear system differs from the controller output u(t) for |u(t)| > u0 . When inserting a model of the saturating actuator into the compensator so that the input signal u(t) to the system is replaced by satu0 [mr(t) − uˆ˜(t)], actuator saturation never becomes active, and consequently it can be removed from the representation of the loop as shown in Figure 2.6.
30
2 Prevention of Controller Windup satu0 r
x˙ = Ax + bus y = cT x ym = Cm x
u m ˆ u ˜
y
ym
kT x ˆ Θ
z
z˙ = F z+Lym +T bu
Ψ
Figure 2.5. Observer-based control in the time domain
The linear system and the observer are now driven by the same (restricted) input signal us (t). Therefore saturation us (t) = satu0 (u(t)) at the input of the system no longer causes observation errors and consequently controller windup is prevented. See also the introductory remarks in Section 2.1. Using the open loop argument to describe the effects of input saturation, the denominator in the transfer functions between ym and u in Figure 2.5 is the polynomial det(sI − F + T bk T Θ). The zeros of this polynomial are not necessarily located in the left half s-plane. satu0 r
us
u
m
x˙ = Ax + bus y = cT x ym = Cm x
ˆ u ˜
y
ym
kT x ˆ Θ
z
z˙ = F z+Lym +T bus
Ψ
Figure 2.6. Observer technique to remove controller windup (controller in observer structure)
2.3 Prevention of Controller Windup for Observer-based Controllers
31
Therefore the danger of controller windup can exist. In Figure 2.6, on the other hand, the denominator polynomial of the transfer functions between ym and u is det(sI − F ) in the case of input saturation. This polynomial is always Hurwitz, so that an uncontrolled increase of the states of the controller cannot occur during input signal limitation. The above method for the prevention of controller windup is the “observer technique”. As observation errors are not caused by input saturation when the controller is realized in the observer structure, the reference behaviour of the loop in Figure 2.6 is exactly the same as if the ideal state feedback control u(t) = −k T x(t) + mr(t) had been applied. Due to the absence of dynamic elements in ideal state feedback control, there are no states of the controller that can wind up, and consequently, the observer technique is a systematic approach to the prevention of controller windup. us (s) in the loop of Figure The open loop transfer behaviour u¯(s) = −GL (s)¯ 2.6 is characterized by GL (s) = k T (sI − A)−1 b
(2.20)
and it coincides with GL (s) in the ideal state feedback loop in Figure 2.7. Figure 2.7 shows the loop with system, input saturation, and constant (ideal) state feedback control. It represents the reference behaviour of the observer-based loop in Figure 2.6, which is in the so-called observer structure. Remark 2.2. In the time domain the arguments concerning controller windup concentrate on the observation errors caused by input saturation. Provided the eigenvalues of the controller, i.e., the zeros of det(sI − F + T bk T Θ), are located in the left half s-plane and have a sufficient distance from the imaginary axis, these observation errors do not give rise to the typical effects of controller windup. Nevertheless, the observer technique should always be applied because:
satu0 r
m
r
us
u
u ˜
Linear System
y
x kT
Figure 2.7. Ideal state feedback with input saturation
32
2 Prevention of Controller Windup
i) The observer technique allows a systematic discrimination between controller and plant windup, ii) The control signal must often remain in standardized amplitude ranges, iii) A distinctive controller windup can occur also in the absence of integral action, iv) State estimation is not interrupted by input saturation, which is especially important in the presence of disturbance models. Example 2.3. Occurrence of a severe controller windup in an observer-based controller, although the eigenvalues of the system, the controlled system and the observer are real. Input saturation exerts a rather atypical influence on the transients of the loop We consider a SISO system of the order three where the state equations (2.1) have the parameters ⎡ ⎤ ⎡ ⎤ 2 −6 −7 1 A = ⎣ 3 −7 −8 ⎦, b = ⎣ 1 ⎦ and cT = cTm = 4.7 −3.7 4.8 −1 2 2 0 The control (2.10) shifts the eigenvalues of the system from s = −1 to s = −3, 2 and the state observer of minimal order (i.e., nO = n − p = 2 and Cm = cTm ) has eigenvalues at s = −4. The feedback vector k T = 2 4 30 assigns the desired eigenvalues of the system and m = 54/17 assures vanishing tracking errors for step-like reference inputs r(t) = rS 1(t). When choosing a matrix F with eigenvalues at s = −4 and a matrix L such that the pair (F, L) is completely controllable, (2.14) can be solved for T . With −5 −1 9 F = and L = 1 −3 0 the solution of (2.14) is T =
10 −8.6 4 −2.3
5.9 3.1
Therefore, the state equations (2.13) of the observer are z˙1 (t) 1.4 9 −5 −1 z1 (t) u(t) = + ym (t) + 1 −3 z2 (t) 1.7 0 z˙2 (t) 2 Given Cm = cTm and T , the state estimate (2.16) is parameterized by ⎡ ⎤ ⎡ ⎤ 4.3 194.5 −130.9 1 1 and Θ = ⎣ −46.3 202.7 ⎦ Ψ = ⎣ −74 ⎦ 205.77 205.77 −39.9 −34.2 114
2.3 Prevention of Controller Windup for Observer-based Controllers
33
When realizing the controller in the structure of Figure 2.5 (with input saturation neglected for the moment), a reference step input with rS = 1 gives rise to the dashed response in Figure 2.8, i.e., the reference transient is well-damped and has no overshoot. If, however, input saturation with an amplitude u0 = 0.2 becomes active, the same reference input gives rise to the transient shown by the solid line in Figure 2.8. As in the linear case, the reference step response approaches the new set point without overshoot. However, the transient exhibits a distinct oscillatory behaviour and an extremely prolonged settling time. This is the effect of a controller windup, though the controller itself is a stable system with, however, inadequately damped eigenvalues. The zeros of det(sI − F + T bk T Θ) are located at s1/2 = −0.05 ± 2.77j. Though, in this example, the effects of controller windup are different from those usually observed (large and poorly decaying overshoots), they are also extremely undesirable. When applying the observer technique according to Figure 2.6, i.e., when replacing the term T bu(t) in the state equation (2.13) of the observer by the term T bus (t) instead, the dotted reference step response in Figure 2.8 results. It is simply delayed in relation to the linear case. The controller windup, however, is completely removed.
1.2
1
Output y(t)
0.8
0.6
0.4 With controller windup Linear behaviour
0.2
Without controller windup
0
0
5
10
15
20
Time
Figure 2.8. Reference transients of the closed loop
25
34
2 Prevention of Controller Windup
2.3.2 Frequency Domain Approach The frequency domain design of observer-based controllers starts from the transfer behaviour y¯(s) = G(s)¯ us (s) and y¯m (s) = Gm (s)¯ us (s) of the system (2.1), where the transfer function G(s) = N (s)D−1 (s) is defined by (2.2) and the p-transfer vector Gm (s) by Gm (s) = Cm (sI − A)−1 b = Nm (s)D−1 (s)
(2.21)
The quantities N (s) and D(s) = ˆ det(sI − A) are polynomials. The column vector Nm (s) in the transfer vector Gm (s), namely ⎡ ⎤ Nm1 (s) ⎢ ⎥ .. Nm (s) = ⎣ ⎦ . Nmp (s) contains the p numerator polynomials of the individual transfer functions Nmi (s) y¯mi (s) = , i = 1, 2, . . . , p. At the input of the system there is a saturatu ¯s (s) D(s)
ing nonlinearity (2.3). The observer-based controller is characterized by its transfer behaviour u ¯(s) = −GTCy (s)¯ ym (s) + GCr (s)¯ r (s)
(2.22)
with the row transfer vector −1 GTCy (s) = DC (s) NCy1 (s) · · · NCyp (s)
(2.23)
and the transfer function GCr (s) =
NCr (s) DC (s)
(2.24)
In the time domain, the state feedback control is parameterized by the vector k T and in the frequency domain, by the characteristic polynomial ˜ D(s) = ˆ det(sI − A + bk T ). The connecting relation ˜ D(s) − D(s) = k T (sI − A)−1 b D(s)
(2.25)
has been derived in the Appendix (see (A.14)). Given the desired charac˜ teristic polynomials D(s) of the controlled plant and Δ(s) = ˆ det(sI − F ) of the (reduced-order) state observer, the unknown polynomials DC (s) and NCyi (s), i = 1, 2, . . . , p of the observer-based controller can be obtained from the polynomial equation (see Section A.4) T ˜ (s)Nm (s) = Δ(s)D(s) DC (s)D(s) + NCy
(2.26)
2.3 Prevention of Controller Windup for Observer-based Controllers
35
In an observer-based controller as shown in the block diagrams in Figures 2.5 and 2.6 the numerator polynomial NCr (s) has the form NCr (s) = Δ(s)m where m=
(2.27)
˜ D(0) N (0)
(2.28)
assures vanishing tracking errors y(∞) − r(∞) for constant reference signals. Figure 2.9 shows a block diagram of the considered loop with input saturation. It is the frequency domain equivalent to the loop in Figure 2.5 because during input saturation the eigenvalues of the compensator (the zeros of the ˆ det(sI − F + T bk T Θ)) influence the behaviour of the polynomial DC (s) = open loop. If these eigenvalues are located in the vicinity of the imaginary axis, on it, or in the right half s-plane, controller windup effects may considerably degrade the transients of the loop. Introducing the polynomial NCu (s) = DC (s) − Δ(s)
(2.29)
(see also Section A.4), and a model of the saturating actuator, so that the actual saturation of the actuator never becomes active (see Section 2.3.1), the loop in Figure 2.9 can also be realized in the form of Figure 2.10, which is the direct frequency domain equivalent to the block diagram in Figure 2.6 provided that NCr (s) = Δ(s)m. In the linear case (saturation us (t) = satu0 (u(t)) not active), both loops in Figures 2.9 and 2.10 exhibit the same behaviour. Whereas input saturation can trigger controller windup effects in the loop of Figure 2.9, it does not do so in the loop of Figure 2.10.
N (s)D−1 (s)
y
satu0 r
−1 DC (s)NCr (s)
u
us
Nm (s)D−1 (s)
ym
−1 T DC (s)NCy (s)
Figure 2.9. Observer-based control with input saturation in the frequency domain
36
2 Prevention of Controller Windup N (s)D−1 (s)
y
satu0 r
Δ−1 (s)NCr (s)
r
us
u
Nm (s)D−1 (s)
ym
ˆ u ˜ Δ−1 (s)NCu (s)
T (s) Δ−1 (s)NCy
Figure 2.10. Frequency domain representation of the observer technique for the prevention of controller windup (controller in observer structure)
In Figure 2.10 the open loop behaviour of the controller (i.e., when input saturation is active) is no longer characterized by the possibly unstable denominator polynomial DC (s) but by the (always Hurwitz) polynomial Δ(s). Consequently, the states of the controller can no longer wind up during input saturation, i.e., controller windup is prevented. us (s) in Figure 2.10 The open loop transfer behaviour u ¯(s) = −GL (s)¯ T is characterized by GL (s) = Δ−1 (s) NCu (s)D(s) + NCy (s)Nm (s) D−1 (s). When using (2.29) and the polynomial equation (2.26) this takes the form ˜ D(s) ˜ −1 − D(s) D−1 (s) = GL (s) = D(s) D(s)
(2.30)
Because of this result, the reference behaviour of the loop in Figure 2.10 can also be represented by the loop in Figure 2.11. Due to the connecting relation (2.25) it is obvious that the loops in Figures 2.11 and 2.7 give an identical reference behaviour. Remark 2.3. It is discussed in Chapter 4 that the undesired effects of controller windup can also be removed by arbitrary Hurwitz polynomials Δ1 (s) (instead of Δ(s)), because this also assures that the transfer function of a possibly unstable controller is replaced by a stable one in the case of input saturation. However, a clear distinction between controller and plant windup is then no longer possible. When choosing Δ1 (s) = Δ(s) the correct estimation of the states of the plant and the disturbance process is no longer guaranteed during input saturation. Moreover, the simple form of GL (s) obtained by the observer technique facilitates the design of measures for the prevention of plant windup.
2.3 Prevention of Controller Windup for Observer-based Controllers
37
y N (s) satu0 r
m
r
u
us
D−1 (s)
Nm (s)
ym
u ˜ ˜ D(s) − D(s)
Figure 2.11. Reference behaviour of the observer-based control after applying the observer technique (frequency domain equivalent of Figure 2.7)
Example 2.4. Influence of the parameterization of the observer on the effects of input saturation. Prevention of controller windup by the observer technique In Examples A.3 and A.4 the design of an observer-based controller is discussed for a system of the order three with one input and two measurements, described by the state equations ⎤⎡ ⎤ ⎤ ⎡ ⎤ ⎡ ⎡ −5 −2 2 x1 (t) 0 x˙ 1 (t) ⎥⎢ ⎥ ⎥ ⎢ ⎥ ⎢ ⎢ 0 −2 ⎦⎣ x2 (t) ⎦ + ⎣ −1 ⎦us (t) = ˆ Ax(t) + bus (t) ⎣ x˙ 2 (t) ⎦ = ⎣ 2 −2 −1 −1 x3 (t) 0 x˙ 3 (t) 0 −2 x(t) = y(t) = 1 ˆ cT x(t) 0 −1 1 ym (t) = x(t) = ˆ Cm x(t) 1 0 −2 The feedback vector k T = 14 −9 −18 assigns the desired characteristic ˜ polynomial D(s) = ˆ det(sI − A + bk T ) = (s + 5)3 of the controlled system and m = 62.5 assures vanishing tracking errors y(∞)−r(∞) for constant reference signals. The eigenvalues of the identity observer (nO = n = 3) are located at s = −5, and the two controllers in Examples A.3 and A.4 result from a different choice of the existing three free parameters in the feedback matrix L of this identity observer. These parameters influence the disturbance rejection of the controller. In Example A.3 the parameter matrix L is ⎡ ⎤ 2 0 2⎦ La = ⎣ −5 1 −1.5
38
2 Prevention of Controller Windup
and in Example A.4 this matrix is ⎡
−28 Lb = ⎣ −34.625 −17.625
⎤ 30 15 ⎦ 19
To demonstrate the effects caused by controller windup the observer-based control is first assumed to be realized as in Figure 2.5. The dotted transient in Figure 2.12 is the reaction of the linear loop with T = I, F = (A − LCm ), Θ = I and Ψ ≡ 0 to a reference step input r(t) = 1(t). For unconstrained input signals the reference behaviour is independent of the parameterizations via La or Lb . Now a saturation element us (t) = satu0 (u(t)) with u0 = 4 is incorporated at the input of the system. When the observer is parameterized by La one obtains the reference step response of the loop shown in the broken line in Figure 2.12. Compared to the linear case, the transient is delayed, but no oscillatory behaviour and no overshoot are caused by the nonlinear element at the input of the system. When the observer is parameterized by the matrix Lb , however, the reference step response shown in an unbroken line in Figure 2.12 results. A limit cycle with a stationary amplitude 0.7 develops. The background of this disastrous effect of input saturation is two unstable eigenvalues of the controller (i.e., roots of det(sI − A + Lb Cm + bk T )) at s1/2 = 0.39 ± 1.5j. On the other hand, the real eigenvalues of the controller are located in the left half s-plane (at s1/2 = −5 and s3 = −14) when the observer is parameterized by La .
1 0.8
Output y(t)
0.6 0.4 0.2 0 −0.2 −0.4 −0.6 −0.8
0
1
2
3
4
5
6
7
8
Time
Figure 2.12. Reference transients of the closed loop
9
10
2.3 Prevention of Controller Windup for Observer-based Controllers
39
When applying the observer technique, i.e., feeding the limited input signal us (t) into the observer as in Figure 2.6, both observers give rise to the same (nonlinear) reference transients, and they are almost identical to the step response shown in a broken line in Figure 2.12. For both parameterizations of the observer, the reference behaviour of the closed loop is the same as if it had the structure of Figure 2.7 (ideal state feedback loop). Example 2.5. Prevention of controller windup in the frequency domain for an observer-based controller with integral action 2 (t) = ˆ y(t) is directly used for the reconUnder the assumption that only ym struction of the state of the system of Example 2.4 an observer-based controller of order two is designed in Example A.6. The transfer behaviour of the system is characterized by 2 G(s) = 3 2 s + 6s + 11s + 6 and 2 1 s + 7s + 10 Gm (s) = 2 s3 + 6s2 + 11s + 6 ˜ Given the desired characteristic polynomials D(s) = (s + 5)3 of the controlled 2 system and Δ(s) = (s + 5) of the reduced-order state observer, an observerbased controller is designed in Example A.6 both in the time and in the frequency domain. In the frequency domain the free parameters are chosen so that the resulting transfer functions of the compensator are strictly proper and the controller contains integral action. The transfer functions of this controller are −1 T GTCy (s) = DC (s)NCy (s) =
1 (125s + 160) s(s + 19)
(320.5s + 762.5)
and
62.5(s2 + 10s + 25) s2 + 19s Introducing a saturating element with an amplitude u0 = 10 at the input of the system, and realizing the closed loop as in Figure 2.9, a reference input r(t) = rS 1(t)−2rS 1(t−10/3)+rS 1(t−20/3) with rS = 1 causes the transients shown in a solid line in Figure 2.13. There are overshoots that do not occur for unconstrained input signals. Computing NCu (s) = DC (s) − Δ(s) = 9s − 25 GCr (s) =
and realizing the closed loop as in Figure 2.10 (observer structure), the reference transients shown in a broken line in Figure 2.13 are obtained. As controller windup is systematically prevented by the observer technique all reference step responses caused by amplitudes from the achievable region −10/3 < rS < 10/3 are now well-damped without overshoot.
40
2 Prevention of Controller Windup 2
With controller windup
1.5
Without controller windup
Output y(t)
1 0.5 0 −0.5 −1 −1.5 −2
0
1
2
3
4
5
6
7
8
9
10
Time
Figure 2.13. Reference transients with and without controller windup
2.4 Realization of General Compensators in the Observer Structure In Section 2.3.2 two different realizations of observer-based controllers are considered, namely the usual structure with two degrees of freedom of Figure 2.9, and the observer structure of Figure 2.10. The relation connecting the two realizations is NCu (s) = DC (s) − Δ(s)
(2.31)
where the denominator polynomial DC (s) of the compensator may or may not be Hurwitz, whereas the characteristic polynomial Δ(s) of the state observer always is. Using (2.31), nearly every linear compensator (i.e., also classical PI and PID controllers) can be realized in the observer structure, i.e., it can be interpreted as an observer-based controller. Therefore, the measures for the prevention of controller windup discussed above are also applicable to classical controllers. Reference shaping filters as in the loop of Figure 1.2 are neglected in the following discussions. They can be added later. We assume that a general controller of the order nO (for simplicity we restrict the discussions to the SISO case) is described by its transfer functions GCy (s) =
NCy (s) DC (s)
(2.32)
2.4 Realization of General Compensators in the Observer Structure
and GCr (s) =
NCr (s) DC (s)
41
(2.33)
and that it has been designed to control the system of the order n with transfer function N (s) G(s) = (2.34) D(s) Then the characteristic polynomial of the closed loop CP (s) = NCy (s)N (s) + DC (s)D(s)
(2.35)
is of the degree n + nO and this polynomial is Hurwitz. When combining n ˜ zeros of CP (s) in the polynomial D(s) and the remaining nO zeros in the polynomial Δ(s), the controller given in the usual structure with two degrees of freedom as in Figure 2.9 can be realized in the observer structure of Figure 2.10 if the polynomial NCu (s) is computed according to (2.31). Only if all zeros of CP (s) are complex conjugate, with both the orders of ˜ the system and the controller uneven, an exact partitioning CP (s) = Δ(s)D(s) is not feasible. An approximate partitioning can then be obtained by replacing the polynomial s2 + 2Dω0 s + ω02 that has the largest parameter D by a polynomial with two real zeros according to (s + ω0 )(s + ω0 ). Example 2.6. Application of the observer technique for the prevention of controller windup in a PI controller Consider the simple control system of Example 1.1. The current-controlled electric drive is modelled by G(s) =
100 N (s) = D(s) s(s + 100)
and it is coupled to a PI controller with the transfer function GCy (s) =
50(s + 25) NCy (s) = DC (s) s
The maximum current is limited to imax = 10. Figure 2.14 shows the block diagram of the loop, where the pre-filter 1
n ¯ ref (s) is neglected for the moment. r¯ (s) = sTN + 1 To obtain a realization in the observer structure, the zeros of the characteristic polynomial CP (s) = NCy (s)N (s) + DC (s)D(s) = (s + 50)(s2 + 50s + 2500) ˜ need to be known. In this simple example, a factorization CP (s) = Δ(s)D(s) close at hand is ˜ Δ(s) = s + 50 and D(s) = s2 + 50s + 2500
42
2 Prevention of Controller Windup satimax r
NCy (s) DC (s)
us
u
N (s) D(s)
n
NCy (s) DC (s)
Figure 2.14. Block diagram of the speed control loop
With NCu (s) = DC (s) − Δ(s) = −50 the PI controller can be represented in an observer structure as shown in Figure 2.15 (now the pre-filter is added). In the linear case (i.e., us = u), both loops in Figures 1.2 and 2.15 exhibit an identical behaviour. satimax nref
r 25 s + 25
50(s + 25) s + 50
us
u
100 s(s + 100)
n
− 50 s + 50 50(s + 25) s + 50
Figure 2.15. Closed loop of Figure 1.2 in the observer structure
When input saturation becomes active, however, the loop in Figure 1.2 exhibits distinctive controller windup effects (see Figure 1.3), whereas no reference transient of the loop in Figure 2.15 is impaired by windup. For r(t) = 1(t) the reference step response is almost identical to the one for Kf = 50 in Figure 2.3a. In the above two examples, the controllers contained integral action. In Example 2.5, the zero at s = 0 of the denominator polynomial DC (s) was a consequence of the special parameters assigned for an observer-based controller. In Example 2.6, a classical PI controller was considered. It is well-known that integral action can be interpreted as a signal model for constantly acting disturbances. This concept can be generalized to all signal forms generated by a suitable dynamical process.
2.5 Prevention of Controller Windup in the Presence of Signal Models
43
2.5 Prevention of Controller Windup in the Presence of Signal Models for Disturbance Rejection A controller containing integral action allows one to accommodate permanently acting constant disturbances in the controlled output. This concept can be extended to all disturbance signals modelled in a dynamic process of the order q v˙ d (t) = Sd vd (t) with vd (0) = vd0 unknown and d(t) = Hvd (t) with (Sd , H)
completely observable
(2.36)
The eigenvalues of these signal processes are usually located on the imaginary axis of the complex plane. Constant or step-like disturbances are, for example, modelled by a process (2.36) with the characteristic polynomial det(sI −Sd ) = s, sinusoidal disturbances by det(sI − Sd ) = s2 + ωd2 , and ramp-shaped ones by det(sI − Sd ) = s2 . There are two approaches to the accommodation of such disturbances, introduced by C.D. Johnson and E.J. Davison (see Section A.5). Both methods can be applied in a time and a frequency domain design of observer-based controllers. To achieve the prevention of controller windup, the frequency domain representation of the control loop is especially advantageous, because the observer technique is then applicable to both approaches without modifications. When using the time domain representation, only the disturbance observer in the sense of Johnson allows the prevention of controller windup by feeding the limited input signal into the observer. In its original version, Davison’s disturbance model is not driven by the plant input signal, so that by feeding the limited input signal into the state observer, a prevention of controller windup is not assured. The necessary modifications for preventing controller windup by the observer technique also used in Davison’s approach are discussed in Section A.5. 2.5.1 Disturbance Observers – Johnson’s Approach We consider linear systems of the order n with one control input us (t), a non-measurable controlled output y(t), p ≥ 1 measurements ym (t), and a disturbance input d(t) described by x(t) ˙ = Ax(t) + bus (t) + bd d(t) y(t) = cT x(t) + dd d(t) ym (t) = Cm x(t) + dmd d(t)
(2.37)
It is further assumed that the system is completely controllable and observable and that, in view of the step-like changing reference signals r(t), the transfer function N (s)D−1 (s) = cT (sI − A)−1 b of the system does not contain zeros at s = 0.
44
2 Prevention of Controller Windup
A nonlinearity us (t) = satu0 (u(t)) of the saturation type modifies the input signal according to ⎧ ⎨ u0 if u > u0 satu0 (u) = u if −u0 ≤ u ≤ u0 ; u0 > 0 (2.38) ⎩ −u0 if u < −u0 The disturbance is modelled by a signal process (2.36) whose characteristic polynomial is Ddis (s) = ˆ det(sI − Sd ) = sq + ψq−1 sq−1 + · · · + ψ1 s + ψ0
(2.39)
Asymptotic compensation of d(t) in the controlled output y(t) is possible by the control signal u(t) = −˜ u(t) + mr(t) (2.40) where u ˜(t) is a feedback u ˜(t) = k T x(t) + kvT vd (t)
(2.41)
of the states x(t) of the system and the states vd (t) of the fictitious signal process (2.36). For details see Section A.5.1. The feedback vector k T assigns the eigenvalues of the system (i.e., the zeros of the characteristic polynomial det(sI − A + bk T )) to the desired locations, and m according to (2.11) assures vanishing tracking errors y(∞) − r(∞) for reference inputs r(t) = rS 1(t). Substituting the control (2.40) and (2.41) in (2.37), and taking into account that the disturbances are output signals of the process (2.36), the linear loop (i.e., u(t) = us (t)) is described by the state equations x(t) ˙ A − bk T bd H − bkvT x(t) bm = + r(t) vd (t) v˙ d (t) 0 Sd 0 (2.42) x(t) T dd H c y(t) = vd (t) An asymptotic compensation of the disturbances in y(t) results if the q-vector kvT is such that the states vd (t) of the signal model are not observable in y(t). This requires that the rank of the observability matrix for the pair A − bk T bd H − bkvT (2.43) , cT dd H 0 Sd is equal to the rank of the observability matrix for the pair A − bk T , cT . To realize the feedback (2.41) the states of the augmented system x(t) ˙ A bd H x(t) b = + us (t) v˙ d (t) vd (t) 0 0 Sd (2.44) x(t) ym (t) = Cm dmd H vd (t)
2.5 Prevention of Controller Windup in the Presence of Signal Models
must be known. The design of the state-plus-disturbance observer b u (t) z(t) ˙ = F z(t) + Lym (t) + T 0 s
45
(2.45)
for the system (2.44) follows the lines of Section A.3. Its order is nΔ = nO + q, where nO = n − κ with 0 ≤ κ ≤ p is the order of the (reduced-order) state observer and q is the order of the signal When replacing the states process. xˆ(t) x(t) and vd (t) by the observed states in (2.41), (2.40) and (2.45), the vˆd (t) state equations of the observer-based controller result. The controller assigns the desired eigenvalues of the closed loop and assures disturbance attenuation in y(t). When realizing the closed loop according to Figure 2.5 (i.e., the observer is driven by the unconstrained signal u(t)), controller windup can occur. This is not necessarily due to the disturbance model, because different from classical controllers and when incorporating a signal model as proposed by Davison, the characteristic polynomial of the assumed signal model does not always appear in the denominator of the controller in Johnson’s approach. Nevertheless, the observer technique (see Figure 2.6) should always be applied, because it systematically eliminates controller windup, so that all degrading effects of input saturation are then clearly attributable to plant windup. The main advantage of Johnson’s approach is the fact that it assures the rejection of disturbances in non-measurable outputs y(t), and that the observer technique for the prevention of controller windup can be applied without modification. Unfortunately, Johnson’s approach is neither robust to variations of the plant parameters nor to changing input locations of the disturbances. Disturbance rejection is no longer guaranteed if the plant is different to the model used for controller design, whereas classical controllers incorporating integral action assure a robust rejection of the modelled disturbances. This is also the case with Davison’s approach, which shall be discussed in Section 2.5.2. Example 2.7. Prevention of controller windup for a controller with disturbance observer in the sense of Johnson (time domain design) An observer-based controller incorporating a disturbance observer for sinusoidal signals d(t) = dS sin(t + ϕd )1(t) is designed in Example A.8. The state equations of the system have the parameters ⎡ ⎤ ⎡ ⎤ ⎡ ⎤ 0 0 1 0 0 A = ⎣ 0 0 1 ⎦, b = ⎣ 0 ⎦, bd = ⎣ 1 ⎦ 0 −1 −3 −3 1 cT = 3 1 0 , dd = 0, 16 8 1 0 , dmd = Cm = 0 1 0 0
46
2 Prevention of Controller Windup
and the model of the fictitious disturbance process (2.36) is parameterized by the pair 0 1 Sd = and H = 1 0 −1 0 The control u(t) = −k T x(t) + mr(t) shifts the eigenvalues of the system from s = −1 to s = −3 when the feedback vector has the form k T = 26 24 6 and m = 9 assures vanishing tracking errors. The asymptotic rejection of the sinusoidal disturbance in y(t) is assured by the feedback vector kvT = 9 1 . The state-plus-disturbance observer of minimal order nΔ = nO + q = 3 for the augmented system (2.44) is described by the state equations ⎡ ⎤ ⎡ ⎤ ⎡ ⎡ ⎤ ⎤⎡ ⎤ z˙1 (t) 1.75 −3 1 0 z1 (t) −4 −4 (t) y m1 ⎢ ⎥ ⎥ ⎢ 1 ⎦⎣ z2 (t) ⎦ + ⎣ −4 4 ⎦ + ⎣ 1.5 ⎦ us (t) ⎣ z˙2 (t) ⎦ = ⎣ 0 −3 ym2 (t) 2 0 0 −3 4 −4 z˙3 (t) z3 (t) and it provides the estimates x ˆ(t) and vˆd (t). When substituting these estimates in the control (2.40) and (2.41) the output of the controller is ⎡ ⎤ z1 (t) ⎢ ym1 (t) 1 ⎥ 1 −168 286.8 −117.9 ⎣ z2 (t) ⎦ − 153.6 −387.6 u(t) = − + 9r(t) ym2 (t) 9 9 z3 (t) (see Example A.8). This controller asymptotically rejects the sinusoidal disturbance in the controlled output y(t) (see Figure A.10) and it guarantees well-damped reference transients in the linear case, i.e., in the absence of input saturation. In the presence of input saturation us (t) = satu0 (u(t)) with u0 = 4, reference inputs r(t) = rS 1(t) with rS > 1 give rise to an unstable behaviour of the closed loop when the unlimited system input u(t) is fed into the observer. This instability causes the plant input signal us (t) to stay at one of the saturation limits u0 or −u0 . Figure 2.16a shows the reference transients that result for step amplitudes rS = 0.8, rS = 1, rS = 1.2, and rS = 1.4. This instability is not an immediate consequence of the dynamics of the disturbance process. For the chosen observer parameters F and L the resulting observer-based controller has an unstable eigenvalue, i.e., one root of det sI − F + T
b 0
kT
kvT Θ
is located at s = +3.39.
When feeding the constrained signal us (t) into the observer, all reference step responses within the achievable region −12 ≤ rS ≤ 12 have a welldamped stable behaviour, since the danger of controller windup is completely removed by the observer technique. Figure 2.16b shows reference transients for input amplitudes in the range 0 < rS ≤ 12.
2.5 Prevention of Controller Windup in the Presence of Signal Models 15
12
rS = 1.4
5
10
Output y(t)
Output y(t)
10
rS = 1
0
rS = 0.8
−5 −10 −15
47
6 4 2
rS = 1.2 0
8
5
0
10
0
5
Time
10
Time
(a) Reference transients with controller (b) Reference transients without conwindup troller windup Figure 2.16. Reference transients of the closed loop
Also the frequency domain design of controllers incorporating disturbance observers in the sense of Johnson is discussed in Section A.5.1. It uses the transfer behaviour ¯ and y¯(s) = G(s)¯ us (s) + Gd (s)d(s) ¯ us (s) + Gmd (s)d(s) y¯m (s) = Gm (s)¯
(2.46)
of the system (2.37) where the transfer functions and vectors are characterized by the polynomials G(s) = ⎡
⎤ Nm1 (s) ⎢ ⎥ .. Gm (s) = ⎣ ⎦ . Nmp (s)
1 D(s)
N (s) , D(s)
Nd (s) D(s) ⎡ ⎤ Nmd1 (s) ⎢ ⎥ .. and Gmd (s) = ⎣ ⎦ . Gd (s) =
Nmdp (s)
(2.47)
1 D(s)
(2.48)
The observer-based compensator of the order nΔ = nO + q is characterized by its transfer behaviour u ¯(s) = −GTCy (s)¯ ym (s) + GCr (s)¯ r (s)
(2.49)
with the polynomial representations GTCy (s) =
1 NCy1 (s) · · · NCyp (s) DC (s)
and GCr (s) =
NCr (s) DC (s)
(2.50)
48
2 Prevention of Controller Windup
It was assumed that the controlled output y(t) is not measurable. Therefore, the transfer function between the disturbance input d and the controlled output y has the form y¯(s) ¯ = d(s)
Nd (s)DC (s) + DC (s)D(s) +
p k=1 p
NCyk (s)Nkdiv (s) (2.51) NCyk (s)Nmk (s)
k=1
where the polynomials Nkdiv (s) are the result of the polynomial extraction Nkdiv (s) = [Nd (s)Nmk (s) − Nmdk (s)N (s)] /D(s), k = 1, 2, ..., p
(2.52)
See Section A.5.1 for details. The controller design is based on two polynomial equations. The first DC (s)D(s) +
p
˜ NCyk (s)Nmk (s) = Δ(s)D(s)
(2.53)
k=1
assigns the desired characteristic polynomial of the closed loop. The second Nd (s)DC (s) +
p
NCyk (s)Nkdiv (s) = NRem (s)Ddis (s)
(2.54)
k=1
guarantees an asymptotic compensation of the modelled disturbances in the controlled output y(t) by assuring that Ddis (s) = det(sI − Sd) is a polynomial divisor of the numerator of the transfer function (2.51). The polynomial NRem (s) = RnRem snRem + · · · + R1 s + R0
(2.55)
nRem = n + nΔ − q
(2.56)
is of the degree with unknown coefficients Ri . When realizing the controller in the observer structure (Figure 2.10), controller windup is completely removed. Example 2.8. Prevention of controller windup by the observer technique in the frequency domain for a controller incorporating a disturbance observer in the sense of Johnson The frequency domain design of the disturbance rejecting controller considered in Example 2.7 is discussed in Example A.9. The transfer functions of the system are G(s) =
s+3 N (s) = 3 , D(s) s + 3s2 + 3s + 1
Gd (s) =
s2 + 6s + 9 Nd (s) = 3 D(s) s + 3s2 + 3s + 1
2.5 Prevention of Controller Windup in the Presence of Signal Models
Gm (s) =
49
s2 + 8s + 16 Nm1 (s) 1 1 = 3 2 Nm2 (s) D(s) s s + 3s + 3s + 1
Gmd (s) =
and
2 8s + 37s + 47 Nmd1 (s) 1 1 = Nmd2 (s) D(s) s2 + 3s s3 + 3s2 + 3s + 1
The signal model of the sinusoidal disturbance is of the order q = 2 and its characteristic polynomial is Ddis (s) = s2 + 1. The order of the controller is nΔ = 3 and since the system has p = 2 measured outputs, the transfer vector 1 NCy1 (s) NCy2 (s) . of the compensator has the form GTCy (s) = DC (s)
This controller is intended to place the eigenvalues of the controlled system ˜ at s = −3, i.e., D(s) = (s + 3)3 , and also the eigenvalues of the observer are located at s = −3, i.e., the characteristic polynomial of the state-plusdisturbance observer is Δ(s) = (s + 3)3 . At the same time, an asymptotic compensation of the sinusoidal disturbance in y(t) is required. The controller polynomials DC (s), NCy1 (s) and NCy2 (s) can be obtained from the polynomial equations (2.53) and (2.54). In addition to the poly˜ also the polynomials N1div (s) and N2div (s) nomials Δ(s), Ddis (s) and D(s), must be known. They result from the polynomial extraction (2.52) as (see also Example A.9) N1div (s) = s + 3 and N2div (s) = 0. When assigning the three free parameters in DC (s) = s3 + p2 s2 + p1 s + p0 the values p2 = (−6.2)/3, p1 = −11/3 and p0 = (−8.2)/3, one obtains exactly the same controller as in Example 2.7. The parameters of the transfer functions are (see Example A.9) DC (s) = 13 3s3 − 6.2s2 − 11s − 8.2 and NCy1 (s) = 13 51.2s3 + 145.2s2 + 95.2s + 137.2 1 3 2 NCy2 (s) = 3 −129.2s − 399.2s + 486.8s + 1788.8 The reference channel u ¯(s) =
NCr (s) r¯(s) of the controller that assures vanishDC (s)
ing tracking errors y(∞) − r(∞) for step-like reference signals is characterized by the polynomial NCr (s) = 9(s3 + 9s2 + 27s + 27). As the denominator of the compensator contains a zero in the right half s-plane (at s = 3.39), input saturation causes the controller windup effects shown in Figure 2.16a, if the controller is realized as in Figure 2.9. Computing, however, NCu (s) = DC (s) − Δ(s) =
1 −33.2s2 − 92s − 89.2 3
and realizing the controller in the observer structure of Figure 2.10, controller windup no longer occurs and the reference transients shown in Figure 2.16b result.
50
2 Prevention of Controller Windup
2.5.2 Observer-based Controllers Containing Disturbance Models – Davison’s Approach In the following, single input systems of the order n with a measurable controlled output y(t), p measurements ym (t), and ρ disturbance inputs d(t) are considered. Their state equations are x(t) ˙ = Ax(t) + bus (t) + Bd d(t) y(t) = cT x(t) + dTd d(t) ym (t) = Cm x(t) + Dmd d(t)
(2.57)
At the input of the system is a saturating nonlinearity us (t) = satu0 (u(t)) as defined in (2.38) and it is again assumed that the system (2.57) is completely controllable and observable and that it allows to track constant reference signals. The accommodation of disturbances that are modelled by a signal process (2.36) is possible when the system is augmented by a model of this process and this model is driven by the tracking error (see (A.97) and Figure A.11). This approach suggested by Davison gives robust disturbance rejection and robust tracking for all signal forms modelled, provided the system and the model are stabilized. However, in the presence of such signal models, an application of the observer technique does not prevent controller windup, since these models are not driven by the system input. On the other hand, the joint accommodation of disturbance and reference signals within the same signal process can have an undesirable effect on the reference behaviour (see Example A.10). As described in Section A.5.2, a modification of Davison’s original approach is therefore adopted here. It gives robust rejection of all modelled disturbances and a reference behaviour as if the nominal (ideal) state feedback u(t) = −k T x(t) + mr(t)
(2.58)
1 cT (−A + bk T )−1 b
(2.59)
has been applied with m=
assuring vanishing tracking errors y(∞) − r(∞) for constant reference inputs. A modified model of the signal process (2.36) is driven by the controlled output y(t), the feedback signal uC (t) and the constrained plant input signal us (t) according to v(t) ˙ = Sv(t) + bε y(t) − bσ [uC (t) + us (t)] where
uC (t) = kxT
kvT
x(t) v(t)
(2.60)
(2.61)
2.5 Prevention of Controller Windup in the Presence of Signal Models
51
The pair (S, bε ) is assumed to be completely controllable and the matrix S contains the eigenvalues of the signal process, i.e., det(sI − S) = det(sI − Sd ) (see also (2.39)). This is obviously satisfied for the pair ⎡ ⎤ ⎡ ⎤ 0 1 0 ··· 0 ⎢ .. ⎥ ⎢ .. .. .. .. ⎥ ⎢ ⎥ ⎢ . . . ⎥ S=⎢ . (2.62) ⎥ and bε = ⎢ . ⎥ ⎦ ⎣0⎦ ⎣ 0 0 ··· 1 1 −ψ0 −ψ1 · · · −ψq−1 The vector bσ in (2.60) is selected such that the signal model (2.60) is not controllable from the reference input r(t). It thus obtains the property of a disturbance observer. Following the design guidelines in Section A.5.2, the controller parameters are computed as follows. Given is a “nominal” state feedback (2.58) for the system (2.57) that assigns a desired characteristic polynomial det(sI −A+bk T ). If X is a solution of the Sylvester equation X(A − bk T ) − SX = bε cT
(2.63)
bσ = −Xb
(2.64)
compute and determine the feedback vector kvT so that the eigenvalues of (S − bσ kvT ) are located at desired positions. With kxT = k T − kvT X
(2.65)
u(t) = −uC (t) + mr(t)
(2.66)
the control with uC (t) as in (2.61) assures: i) A characteristic polynomial det(sI − A + bk T ) det(sI − S + bσ kvT ) of the linear unconstrained loop and a tracking behaviour of the linear and the nonlinear loop as if only the nominal “ideal” state feedback u(t) = −k T x(t) + mr(t) had been applied (see Section A.5.2) and ii) An open loop transfer behaviour u¯(s) = −GL (s)¯ us (s) of the loop when input saturation is active where the transfer function GL (s) has the simple form GL (s) = k T (sI − A)−1 b. Therefore, when applying the observer technique to the usually necessary observer for the states x(t) of the system, the above modifications of Davison’s approach assure that the windup effects due to the eigenvalues of the controller (i.e., the controller windup) are systematically removed and the possibly existing effects of plant windup are the same as if the nominal state feedback control (2.58) had been applied.
52
2 Prevention of Controller Windup
To show ii) the system (2.57) is augmented by the signal model (2.60). The transfer behaviour between us and u is then characterized by the state equations x(t) b x(t) ˙ A 0 + us (t) = −bσ v(t) ˙ bε cT − bσ kxT S − bσ kvT v(t) (2.67) T x(t) T kv u(t) = − kx v(t) Applying the similarity transformation x(t) I 0 = ζ(t) v(t) X I to (2.67) one obtains A ˙ = ζ(t) SX − XA − bσ (kxT + kvT X) + bε cT u(t) = − kxT + kvT X
kvT ζ(t)
0 ζ(t)+ S − bσ kvT b + us (t) −Xb − bσ
(2.68)
(2.69)
When observing the relations (2.63), (2.64), and (2.65) this takes the form b 0 ˙ζ(t) = A us (t) T ζ(t) + 0 0 S − bσ kv (2.70) T T kv ζ(t) u(t) = − k us (s) and that the which immediately shows that u¯(s) = −k T (sI − A)−1 b¯ non-controllable part is stable. Since the states v(t) of the model (2.60) are directly measurable, only a state observer for the system (2.57) is required (see Section A.3). When replacing x(t) in (2.61) by the observed state xˆ(t) the quantity xˆ(t) (2.71) u ˆC (t) = kxT kvT v(t) results and the state quations (2.60) of the signal model then obtain the form v(t) ˙ = Sv(t) + bε y(t) − bσ [ˆ uC (t) + us (t)]
(2.72)
The introduction of a state observer does not modify the transfer behaviour u ¯(s) = −k T (sI − A)−1 b¯ us (s) in the case of input saturation. Figure 2.17 shows the block diagram of the closed loop, consisting of a system with input saturation, and an observer-based controller with the modified signal model for disturbance rejection.
2.5 Prevention of Controller Windup in the Presence of Signal Models d
satu0 r
y x˙ = Ax+bus +Bd d y = cT x + dTd d ym = Cm x + Dmd d
us
u
m
53
ym
u ˆC x ˆ
kxT
z˙ = F z+Lym +T bus x ˆ = Θz + Ψ ym
σ kvT
v
v˙ = Sv+bε y−bσ σ
Figure 2.17. Observer-based control with signal model for disturbance rejection and prevention of controller windup by the observer technique
Example 2.9. Prevention of controller windup for an observer-based controller with signal model for disturbance rejection (time domain design) In Example A.10 an observer-based controller with a disturbance model is designed for an unstable system of order four with two disturbance inputs. The state equations of the system are x(t) ˙ = Ax(t) + bus (t) + B d d(t) = ⎡ ⎡ ⎤ ⎡ ⎤ 0 1 0 0 0 ⎢ −2 −3 0 −1 ⎥ ⎢ ⎢ ⎥ ⎥x(t) + ⎢ 1 ⎥us (t) + ⎢ =⎢ ⎣ 0 0 ⎣ ⎦ ⎣ ⎦ 0 1 0 0 0 2 −1 1 y(t) = cT x(t) = −6 −3 −2 3 x(t) ⎡ ⎤ −6 −3 −2 3 1 2 −1 ⎦x(t) ym (t) = Cm x(t) = ⎣ 1 −8 −4 −3 5
⎤ 0 −0.2 1 0.1 ⎥ ⎥d(t) 0 0.1 ⎦ 1 0
The controller should reject step-like disturbances d1 (t) = dS1 1(t) and sinusoidal disturbances d2 (t) = dS2 sin(3t + ϕd )1(t). Therefore, a signal process (2.36) that models both disturbance signals has the characteristic polynomial det(sI − Sd ) = s(s2 + 9), and the parameters of the model (2.60) are ⎡ ⎤ ⎡ ⎤ 0 0 1 0 0 1 ⎦ and bε = ⎣ 0 ⎦ S=⎣ 0 1 0 −9 0 Here the main focus is on the windup effects and not on the disturbance rejection. There is a saturating nonlinearity us (t) = satu0 (u(t)) with an amplitude u0 = 4 at the input of the system.
54
2 Prevention of Controller Windup
The “nominal” state feedback (2.58) shifts the eigenvalues of the system to s1 = −2, s2 = −4 and s3/4 = −5, which requires k T = −96 −48 6 60 and entails m = 25. The desired eigenvalues of the state observer and of the controlled signal model are located at s = −5. ⎡ ⎤ 0.84 1 ⎣ −2.5 ⎦ from (2.64), Given the solution X of (2.63) one obtains bσ = 289 4 T and with this the vector kv = 3125 956 1025 places the eigenvalues of the matrix (S − bσ kvT ) at s = −5. Finally (2.65) leads to the feedback vector T kx = −1302 −651 −336 678 for the (observed) state of the system. 33.6 0 −3 and It is easy to check that the parameters F = −5, L = T = −44.4 −22.2 −20 20.9 solve (2.14), and replacing x(t) in (2.13), (2.66) and (2.61) by the state estimate x ˆ(t) finally gives 0 −3 ym (t) − 1.3us (t) z(t) ˙ = −5z(t) + 33.6 ⎡ ⎡ ⎤ ⎤ −2625 −514.04 −861 2696.4 1 1 ⎣ 7812.5 ⎣ −8025 ⎦z(t)+ 2390 2851.5 ⎦v(t) + v(t) ˙ = 289 48841 −12500 −6425 −4100 12840 ⎡ ⎤ ⎡ ⎤ −50321.88 0 −327.6 1 −0.84 1 ⎣ 149767.5 ⎣ 2.5 ⎦us (t) 0 975 ⎦ym (t) + + 48841 289 −190787 0 −1560 −4 1 3210z(t) + −3125 −956 −1025 v(t)+ u(t) = 169 1 −59907 0 −390 ym (t) + 25r(t) + 169 (2.73) The controller (2.73) is already in the observer structure when a model of the input saturation is used and its output us (t) drives the state observer and the signal model. If us (t) is replaced by the controller output signal u(t) in (2.73), there is no prevention of controller windup. As a consequence, the eigenvalues of the controller at s = 0 and s = ±3j can develop freely during input saturation. This gives rise to the windup effects shown by the unbroken line in Figure 2.18, which depicts the response of the loop to a reference sequence r(t) = rS 1(t) − 2rS 1(t − 10/3) + rS 1(t − 20/3) with rS = 0.33. If running the simulation for rS ≥ 0.34, the reference transients no longer decay. Their exponential growth is due to the eigenvalue of the system at s = 1. The controller according to (2.73) (i.e., after applying the observer technique) yields the dashed transient shown in Figure 2.18. It is well-damped without overshoot. Input saturation, however, allows the unstable mode of the system to develop freely so that plant windup occurs. Its intensity depends on the period of saturation. For larger reference amplitudes, this saturation period increases, which gives rise to increased overshoots. Figure 2.19 shows the reaction of the loop with a controller according to (2.73) when the above reference sequence with step amplitudes rS = 0.5, 1, 1.5 and 2 is applied.
2.5 Prevention of Controller Windup in the Presence of Signal Models
55
0.4 0.3 0.2
Output y(t)
0.1
Without controller windup
0 −0.1 −0.2 −0.3
With controller windup
−0.4 −0.5
0
1
2
3
4
5 Time
6
7
8
9
10
Figure 2.18. Reference step responses with and without controller windup
3 2
Output y(t)
1 0 −1 −2 −3 −4 −5
0
1
2
3
4
5 Time
6
7
8
9
10
Figure 2.19. Reference step responses after the prevention of controller windup
Due to plant windup, input amplitudes rS > 2.3 now cause exponentially increasing transients. Taking into account that the maximum sustainable amplitude is ymax = 8, the degrading influence of plant windup is remarkable.
56
2 Prevention of Controller Windup
The measures discussed in Chapter 3 cannot be applied for a systematic prevention of plant windup in unstable systems, because the corresponding transfer function of the linear part of the loop cannot be reshaped so that it satisfies one of the stability criteria for systems with an isolated sector nonlinearity. A new approach that allows unstable systems to be handled in a systematic way is discussed in Chapter 5. In the frequency domain, the system (2.57) is described by its transfer behaviour ¯ and y¯(s) = G(s)¯ us (s) + GTd (s)d(s) (2.74) ¯ us (s) + Gmd (s)d(s) y¯m (s) = Gm (s)¯ with the polynomial representations 1 N (s) , GTd (s) = Nd1 (s) · · · Ndρ (s) D(s) D(s) ⎡ ⎤ Nm1 (s) ⎢ ⎥ 1 .. and Gm (s) = ⎣ ⎦ . D(s) Nmp (s) ⎡ 1 ⎤ ρ Nmd1 (s) · · · Nmd1 (s) ⎢ ⎥ 1 .. .. ⎥ Gmd (s) = ⎢ . . ⎣ ⎦ D(s) ρ 1 Nmdp (s) · · · Nmdp (s) G(s) =
(2.75)
Since y(t) is assumed to be measurable, one obtains (2.76) y(t) = γ T ym (t) with the p-incidence vector γ T = 0 · · · 1 · · · 0 , where the element with index iC is 1 if the iC -th element of ym (t) is the controlled output y(t), i.e., NmiC (s) = ˆ N (s). The disturbances are assumed to be modelled by a signal process of the order q with the characteristic polynomial ˆ det(sI − S) = sq + ψq−1 sq−1 + · · · + ψ1 s + ψ0 Dd (s) =
(2.77)
The controller incorporating a disturbance model is of the order nΔ = (nO +q), where nO = n − κ with 0 ≤ κ ≤ p the order of the state observer and q the order of the assumed signal process. The controller is described by u ¯(s) = −GTCy (s)¯ ym (s) + GCr (s)¯ r (s)
(2.78)
with GTCy (s) and GCr (s) having the polynomial representations GTCy (s) =
1 NCy1 (s) · · · NCyp (s) DC (s)
and GCr (s) =
NCr (s) DC (s)
(2.79)
2.5 Prevention of Controller Windup in the Presence of Signal Models
57
The frequency domain equivalent of the controller investigated above in the time domain is characterized by DC (s) = DC (s)Dd (s)
(2.80)
and NCyk (s) = NCyk (s)Dd (s),
k = 1, 2, · · · , p,
k = iC
(2.81)
i.e., the denominator and all numerator polynomials of the controller contain the characteristic polynomial of the assumed signal process as a factor, except for the numerator with index iC , i.e., the numerator of the transfer function between y = ymiC and u. Given the descriptions (2.74) of the system and the desired polynomials ˜ ˆ ΔO (s)Δd (s) of the D(s) = ˆ det(sI −A+bk T ) of the state feedback and Δ(s) = overall observer with ΔO (s) = ˆ det(sI − F ) and Δd (s) = ˆ det(sI − S + bσ kvT ), the transfer functions of the controller can be obtained from the polynomial equation T ˜ NCy (s)Nm (s) + DC (s)D(s) = Δ(s)D(s) (2.82) For the actual solution the special forms of the polynomials (2.80) and (2.81) have to be taken into account. The detailed design equation and the linear system of equations for the comparison of coefficients in (2.82) can be found in Section A.5.2. Vanishing tracking errors for constant reference signals are assured by the reference transfer function GCr (s) = of the controller with m =
Δ(s) NCr (s) = m DC (s) DC (s)
(2.83)
˜ D(0) . N (0)
When realizing the controller as shown in Figure 2.9, the danger of controller windup exists, which is now mainly due to the dynamics of the signal model. When employing the polynomial NCu (s) = DC (s) − Δ(s)
(2.84)
in an observer structure according to Figure 2.10, controller windup is completely eliminated and the possibly remaining undesired effects of input saturation can be investigated in the simplified loop of Figure 2.11. In Example A.11 the controller of Example 2.9 was designed in the frequency domain. One obtains the results of Example 2.9 when the closed loop is either represented in the structure of Figure 2.9 (with controller windup) or according to Figure 2.10 (without controller windup).
3 Prevention of Plant Windup in Stable Systems
3.1 Introductory Remarks The following discussions are based on the assumption that controller windup does not occur (as in constant state feedback) or that it has been removed, for example, by the observer technique. Nevertheless, input saturation can give rise to undesired oscillatory transients of the closed loop or even limit cycles. This is the effect of plant windup. The control systems considered consist of a linear system, a linear controller, and an isolated nonlinear element us (t) = satu0 (u(t)) at the input of the system. Denoting the transfer behaviour of the linear part of the loop (for r ≡ 0) by u¯(s) = −GL (s)¯ us (s), and taking into account that r (t) is the modified reference signal as in Figure 2.11, plant windup can be investigated in the simple structure shown in Figure 3.1. The introductory examples in Chapter 1 demonstrate that plant windup is the result of dynamics of the controlled system that are “too fast” in view of the existing input restrictions. This causes states of the system that cannot be
y G(s) satu0 r
u
us
GL (s)
Figure 3.1. Structure of the closed loop for the analysis of plant windup
60
3 Prevention of Plant Windup in Stable Systems
brought to their new steady state values fast enough because of the existing limitations of the input amplitude. Consequently, overshoots and undershoots, and in severe cases, limit cycles can occur. A more formal discussion of plant windup is based on nonlinear stability analysis of the loop in Figure 3.1. The occurrence of limit cycles is a clear indication of an instability of the closed loop. Therefore, the prevention of plant windup requires that the linear part GL (s) does not violate known criteria for the stability of loops that consist of a linear system and an isolated nonlinearity of the sector type. It is obvious from linear system analysis that stability in itself does not guarantee well-damped transients of the closed loop. In order to also satisfy performance specifications, the concepts of phase and amplitude margins have been introduced. This is the background of the phase design aid, which was especially developed for the prevention of plant windup in the presence of input saturation (see Section 3.2). On the one hand, there is no strict proof of stability for this design aid so far, but on the other hand, it represents a practical tool that does not suffer from the conservativeness of the strictly proven criteria. The criteria allowing a rigorous proof of stability for the nonlinear loop only provide sufficient conditions. It turns out that they are even conservative when considering the prevention of overshoots due to input saturation. So, when using the standard criteria briefly discussed in Section 3.2, one obtains guaranteed stability, however, often at the expense of unnecessarily delayed transients in view of the existing input restrictions. The prevention of controller windup is possible by mere structural measures when realizing the controller (see Chapter 2), so that the order of the controller remains unchanged. The observer technique for the prevention of controller windup is especially advantageous, because then the danger of plant windup can be investigated on the basis of a linear system having the same order as the plant to be controlled. The transfer behaviour between the output us of the nonlinearity and its input u only depends on the system and on the applied (nominal) state feedback. This can also be achieved for classical control applications, because almost every linear controller can be interpreted as an observer-based controller (see Section 2.4). Also, in the presence of signal models for disturbance rejection in the sense of Davison, the simple form of the open loop transfer function GL (s) can be assured (see Section 2.5.2). The prevention of plant windup, on the other hand, requires the introduction of additional dynamic elements. Only B¨ uhler’s approach to the prevention of plant windup described in Section 4.4 seems to be an exception to this rule. As discussed in Section 3.3, a dynamic element can be added to the controller such that the undesired effects of plant windup are removed from the loop. The design of the additional dynamic element is feasible both in the time and in the frequency domains.
3.2 Criteria for the Prevention of Plant Windup
61
3.2 Criteria for the Prevention of Plant Windup The loop in Figure 3.1 constitutes a standard problem of nonlinear control. It consists of a linear part and a nonlinearity of the sector type. The inputoutput graph of the nonlinearity us (t) = satu0 (u(t)) stays within a sector, limited by two straight lines passing through the origin with slopes zero and one. Stability analysis for such loops usually assumes an unforced system, i.e., the transients of the closed loop start from initial conditions, whereas the input signal r (t) is zero. Reference step responses, however, can be interpreted within this framework as an unforced transient that starts from the initial conditions defined by the set point resulting from the past reference input and ends in the new set point. In this context, the stability results can be extended also to the case of non-vanishing input signals. For the following discussions it is tacitly assumed that the linear system is stable, i.e., all its eigenvalues have negative real parts, with single eigenvalues on the imaginary axis allowed. The linear part of the loop is characterized by its transfer behaviour us (s) u ¯(s) = −GL (s)¯
(3.1)
When applying the observer technique for the prevention of controller windup (see, for example, Figures 2.6 and 2.10), the transfer function GL (s) has the simple form ˜ D(s) −1 (3.2) GL (s) = k T (sI − A)−1 b = D(s) where the polynomial D(s) = det(sI − A) characterizes the open loop and the ˜ polynomial D(s) = det(sI − A + bk T ) the closed loop system. By inspecting the plot of the frequency response GL (jω) it can be decided whether or not the nonlinear loop of Figure 3.1 is asymptotically stable. If the feedback vector k T is such that GL (s) does not violate the chosen stability criterion, it is called a “safe” feedback vector kST . Since the following stability criteria only provide sufficient conditions for stability, an unstable behaviour of the closed loop cannot be inferred from a violation of any of these criteria. In the systems considered, an instability manifests itself in limit cycles that occur for sufficiently large input excitations. An easily verified stability criterion is the so-called circle criterion [37]. In the presence of a sector nonlinearity bounded by the slopes zero and one it guarantees asymptotic stability if the plot of the frequency response GL (jω) stays to the right of the vertical line passing through the point (−1, j0) in the complex plane. Example 3.1 demonstrates that this may entail quite conservative results. Even more conservative results are obtained when GL (s) is required to be positive real [2], which implies that the plot of GL (jω) stays in the right half complex plane.
62
3 Prevention of Plant Windup in Stable Systems
Less conservative results are obtained by the Popov criterion. This criterion assures asymptotic stability of the closed loop in the presence of nonlinearities with sector limits zero and one if the plot of the modified frequency response G∗ (jω) = Re{G(jω)} + jωIm{G(jω)} stays on the right of a line intersecting the negative real axis at the point (−1, j0) [37]. Whether or not the danger of limit cycles exists in a nonlinear loop can be investigated by a relatively simple graphical approach, namely the so-called describing function method, which is sometimes also called the method of harmonic balance [59]. For a saturating nonlinearity, limited by the sector slopes zero and one, this method predicts the possibility of limit cycles whenever the plot of the frequency response GL (jω) intersects the negative real axis left of (−1, j0). Such an unstable behaviour has to be avoided under all circumstances. Though the describing function method only yields approximate results, simulations for all kinds of closed loops with input saturation show that this method predicts the possibility of limit cycles quite accurately. In practically all cases where the plot of GL (jω) intersects the negative real axis left of the point (−1, j0), initial conditions that cause limit cycles can be found, and when this intersection does not occur, unforced oscillations in the closed loop die out. On the other hand, if the plot of GL (jω) comes too close to the negative real axis left of −1, input saturation may cause transients of the closed loop that are impaired by an undesired oscillatory behaviour. As to which distance between the negative real axis left of −1 and GL (jω) must be regarded as “sufficient” cannot, of course, be answered in a rigorous fashion. However, one knows by experience that a “sufficient phase margin” ensures well-damped transients in a linear loop. On the basis of this observation, a phase design aid was developed in [74]. It constitutes an easy design guideline for the linear part of the loop in Figure 3.1. This design aid answers the question: “To what extent is it possible to increase the linear dynamics in a loop with input constraints before saturation gives rise to an undesired oscillatory behaviour?” Backed by simulations the following rules have been obtained. If the linear loop assures well-damped reference transients, input saturation does not trigger an oscillatory behaviour when a sufficient “phase margin” of about 50◦ is observed in relation to the negative real axis left of −1. In a graphical interpretation this is equivalent to the condition that the plot of the frequency response GL (jω) avoids the sector centred at the point (−1, j0) in the complex plane and opens to the left with a cone angle of ±50◦ . When using the circle criterion, the corresponding phase margin would be 90◦ . Whether or not GL (jω) observes the above-defined phase margin can also be tested by inspection of the phase ΦL (ω) of GL (jω) + 1. This is the background of the following formulation of the phase design aid [34].
3.2 Criteria for the Prevention of Plant Windup
63
Phase Design Aid. The linear control is supposed to give well-damped transients. Then, if the phase ΦL (ω) of the frequency response GL (jω) + 1 stays within the range (3.3) −130◦ < ΦL (ω) < 130◦ input saturation does not trigger an increased oscillatory behaviour of the closed loop. The circle criterion is consequently satisfied if the phase ΦL (ω) stays within the limits (3.4) −90◦ < ΦL (ω) < 90◦ Whenever GL (s) has the simple form as in (3.2), the danger of plant windup can be analyzed by inspection of the phase ΦL (ω) of GL (jω) + 1 = k T (jωI − A)−1 b + 1 =
˜ D(jω) D(jω)
(3.5)
so that already at an early design stage it becomes apparent whether or not the dynamics of the closed loop, which are parameterized either by k T or ˜ D(s), will cause plant windup effects. Using simulations one can easily verify that the condition (3.4) for the phase ΦL (ω) of GL (jω) + 1, which assures that the circle criterion is satisfied, usually leads to very conservative results, and that input saturation does not cause an increased tendency to an oscillatory behaviour when this phase margin is expanded to 130◦ (phase design aid). Therefore, the phase design aid allows faster (nonlinear) transients. Remark 3.1. Also, in linear control systems there is no rigorous proof that a certain phase margin assures a particular behaviour of the closed loop for all kinds of systems. Likewise, the above phase design aid does not provide exact results [34]. If the phase ΦL (ω) were to reach ±180◦, this would correspond to the stability limit indicated by the describing function method. If it stayed in the region −90◦ < ΦL (ω) < −90◦ the circle criterion [37] would guarantee global asymptotic stability of the nonlinear loop. If in a specific application a tuning by the phase design aid leads to small overshoots, which are not acceptable, the phase margin of 130◦ should be reduced (see also Example 3.5). Numerous applications in the past decades, however, have shown that the phase design aid is an extremely useful tool when designing control systems in the presence of input saturation. A reduction of the phase margin to 90◦ gives proven stability, albeit at the expense of the resulting transient speed. Consequently, the engineer has to decide whether to use a solution with a rigorous proof of stability, or a solution that gives an improved behaviour, however without exact proof of stability.
64
3 Prevention of Plant Windup in Stable Systems
Example 3.1. Comparison of reference step responses obtained when the circle criterion and the phase design aid are applied We consider a system of the order three with transfer function G(s) =
1 N (s) = D(s) (s + 1)3
and an input saturation with amplitude u0 = 1. By constant state feedback u(t) = −k T x(t) + mr(t) the eigenvalues of the system are shifted to s = −α. ˜ This leads to the characteristic polynomial D(s) = det(sI − A + bk T ) = 3 (s + α) . Vanishing tracking errors are assured by m = α3 . For α = 3 the phase ΦL (ω) of
˜ D(jω) comes close to the limit of the circle D(jω)
0.5
0.05
0.4
0.04
Output y(t)
Output y(t)
criterion. Figure 3.2a shows the resulting reference transients in dashed lines. For α = 5.3 the phase ΦL (ω) of GL (jω) + 1 comes close to the limits of the phase design aid. The solid lines in Figure 3.2a show the corresponding reference step responses. They are obviously improved with considerably reduced settling time. Though the circle criterion is violated, the input saturation does not cause an oscillatory behaviour. The improvements due to an application of the phase design aid are remarkable especially for small reference amplitudes. See the reference step responses obtained for α = 3 (dashed lines) and α = 5.3 (solid lines) in Figure 3.2b. In the following discussion of measures for the prevention of plant windup, the phase design aid is applied in most cases. The design procedure, however, does not change when the circle criterion, the Popov criterion or any other stability criterion is used.
0.3 0.2 0.1 0
0.03 0.02 0.01
0
1
2
3
4
Time
(a) Comparison for large amplitudes
0
0
0.5
1
1.5
2
Time
(b) Comparison for small amplitudes
Figure 3.2. Control design with the circle criterion and the phase design aid
3.3 Additional Dynamic Element
65
3.3 Additional Dynamic Element for the Prevention of Plant Windup When applying the observer technique for the prevention of controller windup, the possibly remaining undesired effects of input saturation depend on the dynamics of the closed loop assigned by state feedback u(t) = −k T x(t). Consequently, a prevention of plant windup would be possible by placing the eigenvalues of the closed loop so that the restrictions of the phase design aid are satisfied (as in Example 3.1). This, however, amounts to a restriction of the dynamics of the linear loop, which are not only relevant for the tracking of small reference inputs but also for the rejection of disturbances. A sufficient attenuation of disturbances is sometimes only achievable when the eigenvalues of the closed loop are shifted far into the left half s-plane by u(t) = −k T x(t). A typical example is position control in the presence of dry friction. In such systems a desired accuracy of position is not achievable with integral controller action, since this gives rise to limit cycles with unacceptably large amplitudes. Much better results can be obtained by a high-gain controller without integral action. The static gain of this controller is increased to such an extent that a tracking error outside the acceptable error band generates control signals that overcome the dry friction. This, however, can lead to transfer functions GL (s) of the open loop that even violate the stability limit indicated by the describing function method, so that limit cycles can be caused by input saturation. Using the three-tank example in Chapter 1 it was demonstrated that plant windup results from system states that cannot be brought to their new steady state values fast enough because of the existing input saturation. Consequently, plant windup can be prevented by modifying the reference input signal temporarily whenever this danger exists. This is achieved by the additional dynamic element added to the controller as described in this section. 3.3.1 Additional Dynamic Element in the Frequency Domain If the linear part (3.1) of the loop in Figure 3.1 is such that the phase ΦL (ω) of GL (jω)+1 leaves the allowed range, there is the danger of plant windup. Plant windup can be prevented by introducing an appropriately tuned additional dynamic element (ADE). Figure 3.3 shows the frequency domain representation of an ADE. ˜ The two monic Hurwitz polynomials Ω(s) and Ω(s) are of equal degree to obtain a strictly proper transfer function between δ and η, thus avoiding an algebraic loop. For unsaturated input signals the ADE does not become active. This guarantees linear performance recovery. Input saturation gives rise to a nonvanishing input signal δ(t), causing a temporary modification of the reference input r (t). When u(t) returns to the linear range −u0 < u(t) < u0 , the input δ(t) to the ADE vanishes, but decaying transients of the ADE still influence
66
3 Prevention of Plant Windup in Stable Systems ADE ˜ Ω(s) − Ω(s) Ω(s) δ
η
G(s)
y
satu0 r u
GL (s)
us
Figure 3.3. Additional dynamic element (ADE) in the frequency domain
the loop. Consequently, the zeros of Ω(s) (i.e., the eigenvalues of the ADE) should be located as far left in the s-plane as possible, and they should give rise to well-damped transients for η(t). A systematic design of the ADE becomes feasible by inspection of the transfer function between the output us of the nonlinearity and its input u. ˜ The two polynomials Ω(s) and Ω(s) modify the linear part of the loop in us (s) according to Figure 3.3, which is characterized by u ¯(s) = −GLΩ (s)¯ GLΩ (s) = [GL (s) + 1]
Ω(s) −1 ˜ Ω(s)
When the modified GLΩ (jω) + 1 = [GL (jω) + 1]
(3.6)
Ω(jω) meets any of the ˜ Ω(jω)
criteria discussed, input saturation does not cause an undesired oscillatory behaviour, i.e., plant windup no longer occurs. If controller windup has been removed by the observer technique, the modified GLΩ (s) + 1 has the simple form GLΩ (s) + 1 =
˜ D(s)Ω(s) ˜ D(s)Ω(s)
(3.7)
˜ Assuming that the zeros of Ω(s) are located left of the zeros of Ω(s) in the splane, the element with transfer function ΦL (ω) of GL (jω)+1 =
Ω(jω) is a lead element. If the phase ˜ Ω(jω)
˜ D(jω) violates the chosen criterion for the prevention of D(jω)
plant windup by less than about 70◦ , the necessary phase lead can be obtained ˜ with polynomials Ω(s) and Ω(s) having degree one only. If considerably larger
3.3 Additional Dynamic Element
67
phase leads are required, the order of the additional dynamic element must be increased. It may sometimes be advisable to increase the order of the ADE above the minimum necessary order to obtain improved nonlinear reference transients (see Example 3.2). When GLΩ (s) + 1 has the form (3.7), the most straightforward design rule ˜ for the polynomials Ω(s) and Ω(s) is to obtain a so-called compensating ADE. ˜ ˜ First, by Ω(s) = D(s) the dynamics of the controlled plant that cause the un˜ desired effects of plant windup are compensated. Then the compensated D(s) is replaced by a polynomial Ω(s), such that the phase ΦLΩ (ω) of the frequency response
Ω(jω) stays in the allowed range. The order of this compensating D(jω)
ADE coincides with the order of the system. The time domain version of the ADE discussed in Section 3.3.2 is also of the order n. Remark 3.2. If the existing plant windup is very pronounced so that the dis˜ tance between the zeros of Ω(s) and Ω(s) is beyond certain limits, the ADE can cause delayed reference transients and even an all pass-like behaviour. This is due to a premature retraction of the input signal u(t) (i.e., a much ˜ too early change of sign), which can result when the zeros of Ω(s) and Ω(s) are too far apart. If the required phase lead is small enough, the premature retraction of the input signal can often be prevented by a suitable modifica˜ tion of the polynomials Ω(s) and Ω(s) (see Example 3.4). If, however, the required phase lead is beyond certain limits, the early change of sign caused by the ADE cannot be prevented. Example 3.2. Prevention of plant windup for the system of Example 1.3, where a classical proportional controller causes considerable plant windup. Demonstration of the influence of different parameterizations of the ADE In Example 1.3, a proportional controller with gain V = 60 causes a severe plant windup if saturation (with amplitude u0 = 0.1) becomes active at the input of the system with transfer function G(s) =
s2 + 16s + 90 + 3s2 + 2s + 2
s3
A pre-filter r¯ (s) = Gf (s)¯ r (s) with transfer function Gf (s) =
54020 5400(s + 10)
assures reference step responses without overshoot and vanishing tracking errors in the steady state. us (s) between the outComputing the transfer behaviour u ¯(s) = −GL (s)¯ put us of the saturation element and its input u, one obtains GL (s) = 60(s2 + 16s + 90) , which leads to s3 + 3s2 + 2s + 2
68
3 Prevention of Plant Windup in Stable Systems
GL (s) + 1 =
s3 + 63s2 + 962s + 5402 s3 + 3s2 + 2s + 2
The solid line in Figure 3.4 depicts the phase ΦL (ω) of GL (jω) + 1. Here and in the following, the frequency response plots are investigated in the region 0 < ω < ∞. The phase ΦL (ω) reaches its minimum value −190◦ at the frequency ωmin = 3.5, i.e., the phase ΦL (ω) dips below −180◦ , where the describing function method indicates the possibility of limit cycles. Limit cycles are indeed caused by reference inputs r(t) = rS 1(t) with rS ≥ 0.1. Figure 1.7b shows the reference transient for an input amplitude rS = 1. The pronounced plant windup can be removed by a suitable ADE. Figure 3.5 shows the block diagram of the loop considered with ADE. ˜ Using the phase design aid, the polynomials Ω(s) and Ω(s) must be chosen so that the absolute value of the phase ΦLΩ (ω) of the frequency response Ω(jω) meets the restriction |ΦLΩ (ω)| < 130◦ . GLΩ (jω) + 1 = [GL (jω) + 1] ˜ Ω(jω) Since the necessary phase lift is only 190◦ − 130◦ = 60◦ , an ADE of the order one is sufficient. Its tuning is especially simple if the zeros of Ω(s) ˜ and Ω(s) are chosen symmetrically in relation to the frequency ωmin = 3.5 according to s + 3.5/α Ω1 (s) = ˜ s + 3.5α Ω1 (s) 50
Ω2
Phase ΦL (ω)
0
−50
Ω3 −100
Ω1 −150
Without ADE −200 −1 10
10
0
10
1
10
2
Frequency ω
Figure 3.4. Phase plots without and with ADE
10
3
3.3 Additional Dynamic Element
69
˜ Ω(s) − Ω(s) Ω(s) δ
η satu0
u
us
y
G(s)
V
r
Gf (s)
r
Figure 3.5. Closed loop of Example 1.3 with ADE
For α = 3.9 the required phase lead of > 60◦ results. The dashed line in Figure 3.4 represents the resulting phase ΦLΩ1 (ω) of [GL (jω) + 1]
Ω1 (jω) with ˜1 (jω) Ω
˜1 (s) = s + 13.65 Ω1 (s) = s + 0.8974 and Ω It stays within the region required by the phase design aid. The reference transient shown in a dashed line in Figure 3.6 is obtained with this ADE of order one. In spite of input saturation, no reference step amplitudes within the achievable range −4.5 < rS < 4.5 give rise to an oscillatory behaviour. For comparison, the solid line in Figure 3.6 shows the reference transient when plant windup has not been prevented. The dashed nonlinear transient is relatively sluggish. This is due to the eigenvalue of the ADE (the zero of Ω1 (s)) at s = −0.8974. Though the input signal δ(t) to the ADE vanishes at time t = 0.84, the decaying transient of the ADE causes the observed delay. The reference transients can be improved if the zeros of the polynomials ˜ Ω(s) and Ω(s) are not chosen symmetrically about the frequency ωmin , but such that the zero of Ω(s) is located as far left in the s-plane as possible. This is, for example, the case for the pair ˜2 (s) = s + 100 Ω2 (s) = s + 1.5 and Ω The corresponding phase ΦLΩ2 (ω) of [GL (jω) + 1]
Ω2 (jω) is shown in a dash˜2 (jω) Ω
dotted line in Figure 3.4. The dash-dotted line in Figure 3.6 shows the reference transient obtained with this improved ADE of order one. A further improvement is sometimes achievable by increasing the order of the ADE. Using an ADE of order two, the absolute value of the phase ΦLΩ3 (ω)
70
3 Prevention of Plant Windup in Stable Systems
1.6
Without ADE
1.4
Output y(t)
1.2
Ω3
1 0.8
Ω2
0.6 0.4
Ω1
0.2 0 −0.2
0
0.5
1
1.5
2 Time
2.5
3
3.5
4
Figure 3.6. Influence of different parameterizations of the ADE
of [GL (jω) + 1]
Ω3 (jω) does not exceed 130◦ with ˜3 (jω) Ω
Ω3 (s) = (s + 3)2
˜3 (s) = (s + 15)2 and Ω
The dotted line in Figure 3.4 shows the phase ΦLΩ3 (ω) and the dotted line in Figure 3.6 the corresponding reference transient. It has an even shorter settling time than the transient obtained with the ADE parameterized by the ˜2 (s). pair Ω2 (s) and Ω Since the majority of examples in this book is related to observer-based controllers, another loop with a classical controller is discussed next. Example 3.3. System controlled by a PI controller, where the application of the measure of Figure 2.2b for the prevention of windup does not remove the oscillatory behaviour caused by input saturation Chapter 2 contains another example of a plant windup caused by a classical controller. A system with the transfer function (see Example 2.2) G(s) =
N (s) s2 + 10s + 74 = 3 D(s) s + 3s2 + 3s + 1
has an input saturation with amplitude u0 = 0.1 and it is coupled to a PI controller according to Figure 1.2. The parameters of the controller are V = 50 and TN = 0.1. Input saturation triggers a considerable oscillatory behaviour
3.3 Additional Dynamic Element
71
(see Figure 2.4a). Improvements are obtained by different factors Kf in the scheme of Figure 2.2b for windup prevention. For factors Kf > 100, however, the improvements are barely noticeable, since in addition to controller windup caused by the integral action, the danger of plant windup exists. When the measures for the prevention of controller windup according to us (s) of the Figure 2.2b are included, the transfer behaviour u¯(s) = −GL (s)¯ loop is u ¯(s) = −GL (s)¯ us (s) = −
V N (s)(s + 1/TN ) − Kf D(s) u¯s (s) D(s)(s + Kf )
Plant windup effects can be anticipated if the phase ΦL (ω) of V N (ω)(ω + 1/T N ) + ωD(ω) D(ω)(ω + Kf )
GL (ω) + 1 =
does not stay in the range −130◦ < ΦL (jω) < 130◦ (phase design aid). Substituting the above parameters and Kf = 100 one obtains GL (s) + 1 =
s4 + 53s3 + 1003s2 + 8701s + 37000 (s + 1)3 (s + 100)
The solid line in Figure 3.7a shows the phase plot of ΦL (ω). It reaches its minimum value −176◦ for ωmin = 3.4. This explains the inadequately decaying oscillations in Figure 2.4b for Kf = 100. The effects of plant windup can be prevented by an additional dynamic element. Figure 3.8 shows a block diagram of the loop. It consists of the
4
50
With ADE 3
Output y(t)
Phase ΦL (ω)
0 −50 −100
2
Without ADE With ADE
1
−150
Without ADE
−200 10
0
2
10
Frequency ω
(a) Phase plots
0
0
5
Time
(b) Reference transients
Figure 3.7. Results with and without an additional dynamic element
10
72
3 Prevention of Plant Windup in Stable Systems ˜ Ω(s) − Ω(s) Ω(s)
η
δ
s + Kf V(s+1/TN ) r
satu0
η 1 sTN + 1 r
u
V
us
N (s) D(s)
y
1 sTN Kf TN
Figure 3.8. The investigated closed loop
system with input saturation, a PI controller according to Figure 1.2, and the measure of Figure 2.2b for the prevention of controller windup. The ADE is modified by the element η¯ (s) =
s + Kf η¯(s) to obtain V (s + 1/TN )
the situation of Figure 3.3, where the transfer function between the output η of the ADE and u is (minus) one. The necessary phase lead of 176◦ − 130◦ = 46◦ can be obtained with an ˜ ADE of order one. When choosing Ω(s) = s+2 and Ω(s) = s+17, the element ˜ Ω(jω) gives the desired phase lead of > 46◦ . Ω(jω)
˜ Using the above polynomials Ω(s) and Ω(s) in the modified linear part GLΩ (s) + 1 =
Ω(s)[V N (s)(s + 1/T N ) + sD(s)] ˜ Ω(s)D(s)(s + Kf )
of the loop in Figure 3.8, one obtains the phase plot shown in a dashed line in Figure 3.7a. It now satisfies the requirements of the phase design aid and consequently, plant windup no longer occurs. The solid line in Figure 3.7b again shows the transient caused by a reference input r(t) = rS 1(t) with rS = 3 for Kf = 100 when the ADE for the prevention of plant windup is not present. The dashed line in Figure 3.7b shows the reaction to the same reference input when the ADE is added as in Figure 3.8. The transient is no longer impaired by plant windup effects. This is also true for all reference step amplitudes within the whole achievable range −7.4 < rS < 7.4. The maximum sustainable output amplitude is ymax = 7.4.
3.3 Additional Dynamic Element
73
Example 3.4. Another example demonstrating the effects of different additional dynamic elements We consider a system of the order three with input saturation u0 = 1 and a transfer function F (s) = realization of this system is ⎡
N (s) 1 . We assume that the state space = D(s) (s + 1)3
⎤ ⎡ ⎤ 0 1 0 0 x(t) ˙ = ⎣ 0 0 1 ⎦ x(t) + ⎣ 0 ⎦ us (t) −1 −3 −3 1 y(t) = 1 0 0 x(t)
When applying the observer technique for the prevention of controller windup, the plant windup effects are the same as if constant state feedback has been applied. Therefore, an ideal state feedback u(t) = −k T x(t) + mr(t) is considered. With k T = 7999 1197 57 and m = 8000 all eigenvalues of the system are shifted from s = −1 to s = −20. This state feedback causes a severe plant windup, because the phase ΦL (ω) of
˜ D(jω) dips down to −194◦. Consequently D(jω)
input saturation can cause limit cycles in the output signal y(t). ˜K (s) = D(s) ˜ Using a “compensating” ADE with Ω = (s + 20)3 and 3 ˜ ΩK (s) = Dsaf e = (s + 5.3) , the phase ΦLΩK (ω) of the modified frequency response GLΩK (jω) + 1 =
˜ D(jω)Ω K (jω) satisfies the restrictions of the phase ˜ D(jω)ΩK (jω)
design aid. The dashed line in Figure 3.9a represents the resulting output y(t) of the system for a reference input r(t) = rS 1(t) with rS = 0.2. The corresponding input signal us (t) is shown by the dashed line in Figure 3.9b. There is a premature change of sign in the input signal, giving a delayed transient response. Since the phase excess is 194◦ − 130◦ = 64◦ , an ADE of the order one can be used to prevent the existing plant windup. The best choice for Ω(s) ˜ becomes possible when the root of Ω(s) is located far to the left in the s-plane. ˜1 (s) = s + 100 the polynomial Ω1 (s) = s + 1.6 gives the desired phase With Ω lead for ΦLΩ1 (ω) of
˜ D(jω)Ω 1 (jω) . ˜ D(jω)Ω1 (jω)
An ADE of the order one usually causes no premature change of sign in the input signal u(t) (for an exception see Example 3.5). Therefore, the output y(t) shown in a solid line in Figure 3.9a rises considerably faster. Nevertheless, the settling time is delayed in relation to the compensating ADE. This is a consequence of the eigenvalue of the ADE at s = −1.6. An improved transient behaviour can be achieved with the aid of an ADE ˜2 (s) of this ADE are optimized of the order two. The polynomials Ω2 (s) and Ω (by simulation) so that the phase lead required is obtained by fast eigenvalues under the condition that no premature backlash occurs.
74
3 Prevention of Plant Windup in Stable Systems 0.2 1
Input us (t)
Output y(t)
0.15 0.1 0.05
0.5 0 −0.5
0 −1 −0.05
0
1
2
3
4
0
1
Time
(a) Reference transients
2
3
4
Time
(b) Input signals
Figure 3.9. Reference behaviour with ADEs of the orders one, two and three
A pair of polynomials satisfying this requirement is Ω2 (s) = (s + 3.4)2 and
˜ ˜2 (s) = (s + 15)2 . The phase ΦLΩ2 (ω) of D(jω)Ω2 (jω) stays in the region Ω ˜2 (jω) D(jω)Ω
−130◦ < ΦLΩ2 < 130◦ . The resulting reference transient is shown in a dashdotted line in Figure 3.9a, and it turns out that the output y(t) rises as fast as ˜1 (s), while the settling with the ADE parameterized by the pair Ω1 (s) and Ω time is comparable to that obtained with the compensating ADE. ˜ If faster dynamics are assigned to the loop, for example D(s) = (s + 30)3 , one cannot find an ADE that does not cause a premature retraction of the input signal u(t) when saturation becomes active. Example 3.5. Investigation of a system where the margin of the phase design aid needs to be reduced when overshoots caused by input saturation are not acceptable and where also an ADE of the order one can give rise to a premature backlash in the input signal We consider a system of the order three with the transfer function y¯(s) =
(s + 0.3)(s + 0.5) N (s) u¯s (s) = u ¯s (s) D(s) (s + 0.01)2 (s + 2)
and a PI controller whose transfer behaviour is characterized by u ¯(s) = −
17(s + 1) NCy (s) [¯ y (s) − r¯(s)] = − [¯ y(s) − r¯(s)]. DC (s) s
Due to the input saturation us (t) = satu0 (u(t)) with u0 = 1, the maximum sustainable amplitude of the output is ymax = 750. In the linear loop the reference transients hardly exhibit an overshoot.
3.3 Additional Dynamic Element
75
If input saturation becomes active a pronounced windup occurs. For reference inputs r(t) = rS 1(t) with rS > 2.4 limit cycles develop. The controller windup resulting from the integral action can be prevented by the method discussed in Section 2.4, namely by the observer technique. Computing the characteristic polynomial (2.35) of the closed loop, one obtains CP (s) = NCy (s)N (s) + DC (s)D(s) = = s4 + 19.02s3 + 30.6401s2 + 16.1502s + 2.55 ˜ An exact factorization CP (s) = Δ(s)D(s) is feasible here, because this polynomial has two real and one pair of complex conjugate zeros. Given the above ˜ system and controller, D(s) is of the degree three and Δ(s) of the degree one. There are two ways to factorize CP (s). Here the partitioning ˜ D(s) = (s2 + 1.4317s + 0.51585)(s + 0.28570) and Δ(s) = s + 17.303 is used. With these polynomials the controller can be realized in the observer structure according to Figure 2.10. Using (2.31), one obtains the polynomial NCu (s) = DC (s) − Δ(s) = −17.303 and the transfer behaviour r¯ (s) = GCr (s)¯ r (s) is characterized by GCr (s) =
NCy (s) 17s + 17 . = Δ(s) s + 17.303
For small input amplitudes (rS < 7) the nonlinear transients are now well-damped, but for rS > 7 input saturation still gives rise to an oscillatory behaviour. The phase ΦL (ω) of the frequency response
˜ D(jω) attains its minimum D(jω)
value −141◦ at ωmin = 0.06. Consequently the danger of plant windup exists, which can be prevented by a suitable ADE. Since the required phase lead is relatively small, an ADE of order one is sufficient. ˜ The polynomials Ω(s) and Ω(s) should not be chosen symmetrically about ˜ = s + ωmin α the frequency ωmin according to Ω(s) = s + ωmin /α and Ω(s) here, because the resulting ADE would cause very sluggish transients. ˜ 1 (s) = s + 10 gives faster decaying The pair Ω1 (s) = s + 0.22 and Ω transients and it assures a minimum value −129◦ for the phase ΦLΩ1 (ω) of ˜ D(jω)Ω 1 (jω) (phase design aid). As predicted by the phase design aid, input ˜1 (jω) D(jω)Ω
saturation no longer triggers an oscillatory behaviour when this ADE is added to the loop. Figure 3.10a shows a comparison of the reference step responses for rS = 25 when the ADE is added to the loop (dashed line) and without ADE (solid line). The ADE causes a delay in the transients, because the input signal us (t) changes from +1 to −1 at t = 0.08 and only returns to +1 at t = 1. This premature retraction of the input signal can be avoided by an ADE where the
76
3 Prevention of Plant Windup in Stable Systems
˜ distance between the zeros of Ω(s) and Ω(s) is smaller. This is, for example, ˜ 2 (s) = s + 1.3. This ADE also the case for the pair Ω2 (s) = s + 0.2 and Ω assures a minimum value −129◦ for the phase ΦLΩ2 (ω) of
˜ D(jω)Ω 2 (jω) . The ˜ D(jω)Ω2 (jω)
dash-dotted line in Figure 3.10a shows that the transient with this ADE is no longer delayed by a backlash of the input signal. For rS > 30, however, overshoots still occur. This is demonstrated by the unbroken line in Figure 3.10b, which represents the reference transient for rS = 100 when applying the ADE parameterized by the polynomials Ω2 (s) ˜2 (s). and Ω If such overshoots are not acceptable, the limits for ΦLΩ (ω) defined in the phase design aid must be reduced to, say, 120◦. When employing an ADE parameterized by the pair Ω3 (s) = s + 0.1 and
˜ ˜ 3 (s) = s + 1, the minimum value of the phase ΦLΩ3 (ω) of D(jω)Ω3 (jω) is Ω ˜3 (jω) D(jω)Ω
−119◦ and a premature retraction of the plant input signal is also avoided. With this modified ADE the dashed transient in Figure 3.10b results. Only for extremely large input amplitudes rS > 600 can small overshoots still be observed with this modified ADE. Some of the problems occurring in this system are probably due to the fact that the behaviour of the linear loop hardly changes when the two eigenvalues of the system at s = −0.01 are replaced by two eigenvalues at s = 0. Such eigenvalues, however, characterize an unstable system. Since the methods discussed in this chapter are restricted to stable systems, this proximity to an unstable system may be the background of the overshoot effects observed.
150
20
Ouput y(t)
Output y(t)
30
10
100
50
0 0
10
20
30
40
50
0
0
(a) Reference transients
50
Time
Time
(b) Reference transients
Figure 3.10. Influence of different ADEs
100
3.3 Additional Dynamic Element
77
The above examples give some hints for the design of the additional dynamic element according to Figure 3.3. The danger of plant windup exists if the us (s) of the linear part of the loop is such transfer behaviour u ¯(s) = −GL (s)¯ that the phase ΦL (ω) of the frequency response GL (jω) + 1 violates the limits of the chosen criterion (i.e., 90◦ for the circle criterion and 130◦ for the phase design aid). As long as the phase excess is relatively small (for example < 70◦ ) an ADE of order one is sufficient to obtain the necessary phase lead for the prevention of plant windup. However, as the examples have demonstrated, an ADE of higher order sometimes gives improved transients. Since the zeros of the polynomial Ω(s) characterize the transient behaviour of the ADE, one should always try to obtain the required phase lead by a pair of polynomials where the zeros of Ω(s) are located as far left in the s-plane as possible. ˜ If the zeros of Ω(s) and Ω(s) are too far apart, a premature backlash can occur in the input signal u(t) of the plant, which causes delayed transients. When moving the zeros of Ω(s) further to the right in the s-plane, the required ˜ phase lead can be obtained by a pair of polynomials, where the zeros of Ω(s) are closer to the zeros of Ω(s). Due to the reduced distance the premature backlash in u(t) is probably prevented, so that in spite of the now “slower” polynomial Ω(s) the resulting transient behaviour is improved. This procedure, however, cannot be implemented successfully in all cases. If the necessary phase lead is beyond certain limits, it seems to be impossible to find a pair of polynomials that do not cause a premature change of sign in the input signal of the system. 3.3.2 Additional Dynamic Element in the Time Domain In the following, it is assumed that the system is described by its state equations x(t) ˙ = Ax(t) + bus (t) y(t) = cT x(t) ym (t) = Cm x(t)
(3.8)
and that the observer-based controller (with or without signal models for disturbance rejection) has been realized in the observer structure, i.e., controller windup does not occur. Consequently, the transfer behaviour of the linear part in the loop of Figure 3.1 is the same as if constant state feedback u(t) = −k T x(t) + r (t) had been applied. In the absence of an additional dynamic element one has GL (s) = k T (sI − A)−1 b
(3.9)
If this GL (s) indicates the danger of plant windup (if, for example, the phase ΦL (ω) of the frequency response GL (jω) + 1 leaves the range defined in the phase design aid), plant windup can be prevented when replacing the control u(t) = −k T x(t) + r (t) by
78
3 Prevention of Plant Windup in Stable Systems
u(t) = −k T x(t) − η(t) + r (t)
(3.10)
˙ = (A − bk T )ξ(t) + b [u(t) − us (t)] ξ(t) S
(3.11)
where η(t) results from η(t) = (k T − kST )ξ(t)
Figure 3.11 shows a block diagram of the closed loop with this additional dynamic element.
ADE ξ˙ =(A−bkST )ξ+bδ η =(kT −kST )ξ δ
η satu0 r
System
y
us
u u ˜
x kT
Figure 3.11. Additional dynamic element (ADE) in the time domain
Given the above ADE, the open loop transfer behaviour between the output us of the saturation element in Figure 3.11 and its input u is characterized by the state equations x(t) ˙ x(t) b A 0 + u (t) = ˙ −b s −bk T A − bk T ξ(t) ξ(t) (3.12) x(t) u(t) = − k T (k T − kST ) ξ(t) Applying the similarity transformation x(t) I = ξ(t) −I to (3.12) it takes the form
0 ζ(t) I
(3.13)
3.3 Additional Dynamic Element
0 b ˙ζ(t) = A ζ(t) + u (t) 0 A − bk T 0 s u(t) = − kST (k − kST ) ζ(t)
79
(3.14)
us (s) is which clearly indicates that the transfer behaviour u ¯(s) = −GLS (s)¯ characterized by GLS (s) = kST (sI − A)−1 b, and that the uncontrollable part of the loop is stable. Whenever the feedback vector kST characterizes a “safe” state feedback such that the phase ΦLS (ω) of the frequency response GLS (jω) + 1 with GLS (s) defined by GLS (s) = kST (sI − A)−1 b (3.15) satisfies the chosen criterion, the ADE (3.11) prevents a possibly existing plant windup. The time domain version of the ADE shown in Figure 3.11 has the same order as the “compensating” ADE discussed in Section 3.3.1. Equivalent results are obtained with a compensating ADE if the polynomials Ω(s) and ˜ Ω(s) are chosen as ˜ = det(sI − A + bk T ) Ω(s) = det(sI − A + bkST ) and Ω(s) A drawback of the time domain version of the additional dynamic element is that its order is always equivalent to the order of the system, regardless of how badly the chosen criterion is violated. The main advantage, however, is the fact that this time domain version of the ADE can directly be used to prevent plant windup in the MIMO case (see Section 6.4). A “safe” state feedback matrix KS is then obtainable from the so-called Kalman-Yakubovich lemma. Example 3.6. The prevention of plant windup for the three-tank system of Example 1.2 In Chapter 1 the background of plant windup was explained using the controlled three-tank system (see Example 1.2). First a slow state feedback kST = 0.3385 0.4329 0.2437 was applied, which shifted the eigenvalues of the system to s = −1.6. This control assured well-damped reference step responses in spite of input saturation. Then a faster state feedback with k T = 2.3692 25.028 83.154 was applied, and this control shifted the eigenvalues of the system to s = −6. This fast control gave rise to the typical plant windup effects in the case of input saturation. When using an ADE according to Figure 3.11 with the above kST , the “fast” control (parameterized by k T ) can be applied and it is assured that input saturation does not trigger undesired oscillations.
4 Further Methods for the Prevention of Windup
4.1 Introductory Remarks The measures for the prevention of windup discussed in Chapters 2 and 3 are, of course, not the only methods known from the literature. The existing techniques for the prevention of controller windup are especially numerous, and there is a corresponding variety of explanations for the occurrence of these effects. Though the proposed measures for the prevention of controller windup use different design guidelines, there is a common factor to these approaches, namely stabilize the compensator in the case of input saturation The main difference in the various schemes for the prevention of controller windup is the substitution of the (Hurwitz) polynomial for the possibly unstable denominator of the transfer function of the compensator in the case of plant input saturation. The observer technique (see Chapter 2) uses the characteristic polynomial of the observer, the conditioning technique [25, 70] the numerator polynomial of the reference transfer function of the compensator (provided it is a Hurwitz polynomial), and the generalized antireset windup (GAW) [4], some arbitrary Hurwitz polynomial. Because of this, the known techniques for the prevention of controller windup can be represented in one common scheme. The discussions in Section 4.2 are based on a unified characterization of the different approaches mentioned above, and it is demonstrated how they are related to the observer technique. For a long time, controller windup was considered the only undesired influence of input saturation. This is probably because plant windup effects are seldom caused by classical controllers. Within the framework of the conditioning technique, plant windup has been called the “short-sightedness of the conditioning technique” [25], and the means of preventing it is the “filtered set point”. The filtered set point
82
4 Further Methods for the Prevention of Windup
can be represented as an equivalent additional dynamic element. Therefore, the two-step approach to the prevention of windup discussed in Chapters 2 and 3 is also applicable within the framework of the conditioning technique or the generalized antireset windup. This two-step approach can be summarized as follows. First apply structural methods for the prevention of controller windup as, e.g., the observer technique, the conditioning technique or the GAW. Then, if the resulting transfer function of the linear part of the nonlinear loop violates one of the criteria that indicate the danger of plant windup, modify this transfer function in a suitable manner. In stable systems this modification can either be achieved by an additional dynamic element or by an introduction of the filtered set point. A completely different design for the prevention of windup has been proposed by Teel and Kapoor [67], and it is interesting to note that exactly the same anti-windup scheme was already presented a decade earlier by Gerhard Schneider [61]. This approach is briefly discussed in Section 4.3. By suitably introducing a model of the system and the saturating actuator into the loop, both forms of windup, namely controller and plant windup are prevented simultaneously. The main advantage of the approach of Schneider and Teel and Kapoor is its easy applicability to general controllers. The structure of this scheme does not depend on the order or the realization of the controller, and different from the conditioning technique, the GAW technique or the observer technique it does not require structural modifications in the realization of the controller. Its design is also completely independent of the intensity of the possibly existing danger of plant windup. The necessity to introduce additional dynamic elements into the loop (namely a model of the system) regardless of whether or not the danger of plant windup exists could be considered as a drawback of this scheme. The approach suggested by Hansruedi B¨ uhler [8] has a special position among the existing techniques for the prevention of plant windup. After applying the observer technique for the prevention of controller windup, nonlinear cascaded loops are used for the prevention of plant windup. The realization of this nonlinear cascaded control does not require the introduction of additional dynamic elements. Whereas the methods for the prevention of plant windup discussed so far require the system to be stable, this nonlinear cascaded control scheme is applicable both to stable and unstable systems. It is described in Section 4.4, and guidelines are presented for the design of the cascaded loops. Unfortunately, the saturation elements in the cascaded loops exert an unfavourable influence on the disturbance rejection of the control. However, the nonlinear multi-cascade approach constitutes an important element in a new approach to the prevention of windup for stable and unstable systems, which will be described in Chapter 5.
4.2 Relations Between the Observer Technique and Other Methods
83
4.2 Relations Between the Observer Technique and Other Methods for the Prevention of Controller Windup Since the basic difference between the various approaches to the prevention of controller windup is the (Hurwitz) polynomial that replaces the denominator polynomial of the controller when input saturation becomes active, they can be interpreted as special cases of one general scheme. Starting from a general controller in a two degrees of freedom structure according to Figure 2.9, the conditioning technique and the generalized antireset windup (GAW) control can be represented by the block diagram in Figure 4.1. N (s)D−1 (s)
y
satu0 r
Δ−1 1 (s)NCr (s)
r
us
u
Nm (s)D−1 (s)
ym
Δ−1 1 (s)NCu1 (s)
T Δ−1 1 (s)NCy (s)
Figure 4.1. Representation of the different methods for the prevention of controller windup
The denominator polynomial Δ1 (s) of the transfer functions of the controller in Figure 4.1 is the only discriminating quantity. For unconstrained input signals the loops in Figures 2.9 and 4.1 exhibit the same behaviour (linear performance recovery) if the polynomial NCu1 (s) has the form NCu1 (s) = DC (s) − Δ1 (s)
(4.1)
For Δ1 (s) = Δ(s), the block diagram in Figure 4.1 describes the observer technique, where Δ(s) represents the characteristic polynomial of the stateplus-disturbance observer (see Chapter 2). The conditioning technique uses a representation of the numerator polynomial NCr (s) in the reference transfer function of the controller according to (4.2) NCr (s) = Δ1 (s)m1 where m1 is the coefficient multiplying the highest power of s, so that Δ1 (s) is a monic polynomial. For classical controllers, the roots of Δ1 (s) coincide
84
4 Further Methods for the Prevention of Windup
with the roots of NCy (s). This choice of Δ1 (s) is, of course, only meaningful when NCy (s) is a Hurwitz polynomial. The conditioning technique also offers, however, solutions for the case where NCy (s) has roots in the right half splane. For classical controllers, the conditioning technique is easy to apply, since the zeros of NCy (s) are known, whereas the characteristic polynomial (2.35) of the closed loop must be computed first, before an “observer polynomial” Δ(s) can be obtained. In classical control applications the zeros of NCy (s) are often further left in the s-plane than the eigenvalues of the closed loop and are, therefore, located to the left of the zeros of Δ(s). This can have a favourable influence on the intensity of plant windup (see below), and it may be the background for remarks like: “The conditioning technique gives better results than the observer technique”. These effects, however, depend on the particular application. For observer-based controllers, the numerator polynomial NCr (s) has the form NCr (s) = Δ(s)m and, consequently, the observer and the conditioning technique give identical results in this case. In the GAW approach Δ1 (s) is not related to any polynomial of the controller or the closed loop. It is simply a monic Hurwitz polynomial that has the degree of DC (s). The zeros of Δ1 (s) are the design parameters for obtaining a desired behaviour of the closed loop in the case of input saturation. Chapter 2 shows that the observer technique for the prevention of controller windup allows a systematic distinction between the windup effects that are either caused by a mismatch of the states of the controller or the system. The controller windup occurs whenever the controller contains eigenvalues in the vicinity of the imaginary axis or in the right half s-plane. The use of the observer technique, however, is also recommended for controllers with welldamped eigenvalues, because then the undesired effects of input saturation are exactly the same as if one had used constant state feedback. In constant (ideal) state feedback there are no states of the controller, so that all detrimental effects of input saturation are clearly attributable to plant windup, i.e., to states of the system that cannot be reduced to their steady state values fast enough because of the existing input restriction. Therefore, the observer technique allows a systematic splitting of the undesired effects of input saturation into controller and plant windup. On this background it is interesting to see how the other approaches to the prevention of controller windup relate to the observer technique. To facilitate this comparison, the block diagram 4.1 is redrawn as shown in Figure 4.2. T ˜ (s)Nm (s) + DC (s)D(s) = Δ(s)D(s) defines the characterRecall that NCy istic polynomial of the closed loop and that NCu (s) = DC (s) − Δ(s) assures linear performance recovery in the observer technique. Figure 4.2 demonstrates that the different schemes all prevent controller windup (compare Figures 2.10 and 4.2), and that they influence the plant windup effects if Δ1 (s) = Δ(s). This influence is characterized by a special element with transfer behaviour
4.2 Relations Between the Observer Technique and Other Methods
85
Δ−1(s) [Δ1 (s)−Δ(s)] δ η
y N (s)D−1 (s) satu0
r
Δ−1 (s)NCr (s)
r
us
u
Nm (s)D−1 (s)
ym
ˆ u ˜ Δ−1 (s)NCu (s)
T (s) Δ−1 (s)NCy
Figure 4.2. Representation of the different methods for the prevention of controller windup within the framework of the observer technique
η¯(s) =
Δ1 (s) − Δ(s) ¯ δ(s) Δ(s)
(4.3)
This special element does not require additional dynamics for its realization. It simply describes the influence of a polynomial Δ1 (s) = Δ(s) on the transfer behaviour u¯(s) = −GLΔ1 (s)¯ us (s) of the linear part of the nonlinear loop. The transfer function GLΔ1 (s) for the loops in Figures 4.1 and 4.2 is GLΔ1 (s) =
˜ D(s)Δ(s) −1 D(s)Δ1 (s)
(4.4)
and this representation makes it easy to assess the influence of a polynomial Δ1 (s) = Δ(s) on the possibly existing plant windup. Whenever the zeros of Δ1 (s) are located to the left of the zeros of Δ(s) in the s-plane, the element Δ(jω) is a lead element, usually reducing the danger of plant windup caused Δ1 (jω)
by GL (jω) + 1 according to (3.5). For zeros of Δ1 (s) located to the right of the zeros of Δ(s), a lag element results. This can increase the danger of plant windup. Consequently, the various methods all prevent controller windup, but they differ because of their influence on the intensity of plant windup. When n is the order of the system and nO the order of the controller, the danger of plant windup is indicated by a system of the order n when using the observer technique, and by a system of the order (n + nO ) for any other method.
86
4 Further Methods for the Prevention of Windup
That the various techniques for the prevention of windup do not differ much has been exploited in [43], where a “unified framework” has been developed that contains nearly all the existing methods as special cases of a general scheme. In [44] this general scheme is supplemented by design guidelines for the zeros of Δ1 (s) so as to obtain a prevention of plant windup at the same time. It should be noted, however, that only such effects can be removed by an appropriate choice of Δ1 (s) that are related to a moderate violation of the criteria indicating the possibility of plant windup (see Section 3.2). For a demonstration of this, see the Examples 2.2 and 4.1. Example 4.1. Discussion of the influence of different polynomials Δ1 (s) To demonstrate the effect of different choices of Δ1 (s) we consider the system of the order three with the transfer function G(s) =
1 N (s) = D(s) (s + 1)3
The limit of the input saturation is u0 = 1.5, so that the maximum sustainable amplitude of the output is ymax = 1.5. The design of the observer-based controller is carried out in the frequency ˜ domain. The polynomial D(s) = (s + 8)3 characterizes the state feedback and 2 the polynomial Δ(s) = (s + 8) the (reduced-order) observer. The solution of the polynomial equation (A.39) or (2.26) is NCy (s) = 3430s2 + 18865s + 32242 and DC (s) = s2 + 37s + 526 and with m = 512 the relation (A.51) or (2.27) gives NCr (s) = 512s2 + 8192s + 32768 When realizing the controller in the observer structure, i.e., when choosing Δ1 (s) = Δ(s) in Figures 4.1 and 4.2, the reference step responses shown in Figure 4.3a are obtained. Due to plant windup they exhibit an oscillatory ˜ D(jω) has a minimum value of −153◦ . D(jω) ˜ D(jω)Δ(jω) has a minimum For Δ1 (s) = (s + 30)2 , the phase ΦLΔ1 (ω) of D(jω)Δ1 (jω)
behaviour because the phase ΦL (ω) of
value of −128◦ . In view of the phase design aid, this assures the prevention of plant windup and the transients in Figure 4.3b show that input saturation does not cause an oscillatory behaviour. If, similarly to the conditioning technique when applied to classical controllers, one assigns a polynomial Δ1 (s) having the zeros of NCy (s), i.e., Δ1 (s) = NCy (s)/3430 = s2 + 5.5s + 9.4, the phase ΦLΔ1 (ω) of GLΔ1 (jω) + 1 has a minimum value of −202◦ , which indicates a severe plant windup. The corresponding reference transients in Figure 4.3c, therefore, exhibit limit cycling for sufficiently large reference input amplitudes.
4.2 Relations Between the Observer Technique and Other Methods 1.5
Output y(t)
Output y(t)
1.5
1
0.5
0
87
0
5 Time
1
0.5
0
10
(a) Δ1 (s) = Δ(s) = (s + 8)2
0
5 Time
10
(b) Δ1 (s) = (s + 30)2
Output y(t)
1.5
1
0.5
0
0
5 Time
10
(c) Δ1 (s) = (s2 + 5.5s + 9.4) Figure 4.3. Intensity of plant windup due to different polynomials Δ1 (s)
˜ If one uses the polynomials D(s) = (s + 15)3 and Δ(s) = (s + 15)2 in the design of an observer-based controller, no Δ1 (s) prevents plant windup in the schemes of Figures 4.1 and 4.2. Also the method suggested in [44] fails here. The plant windup is so intensive that it can only be removed by an additional dynamic element as introduced in Section 3.3. A polynomial Δ1 (s) = Δ(s) provides degrees of freedom to influence the behaviour of the nonlinear loop. The clear structure of the approach suggested in Chapters 2 and 3, however, constitutes a scheme for the prevention of windup that is both transparent and easy to apply, also in the presence of MIMO systems. This certainly outweighs the advantage of a scheme with Δ1 (s) = Δ(s).
88
4 Further Methods for the Prevention of Windup
4.3 The Approach of Schneider and Teel and Kapoor to the Prevention of Windup Most approaches to preventing the undesired effects of input saturation use a two-step procedure. First controller windup is eliminated, and if the danger of plant windup exists, additional measures are taken such as the ADE, the filtered setpoint, or the measures described in Section 4.4. A method that removes controller and plant windup in one scheme was introduced by G. Schneider [61]. He called it “Was du heut’ nicht kannst besorgen, das verschiebe halt auf morgen” (Put off till tomorrow what you cannot do today). The same scheme is used by Teel and Kapoor [67], who in addition give a strict proof of stability for this approach. Figure 4.4 shows a block diagram of this one-step technique for the prevention of windup. Due to a model of the saturating nonlinearity at the input of the system, the actual actuator saturation does not become active and is, therefore, also omitted in the scheme of Figure 4.4. The symbols used in Figure 4.4 are for MIMO systems, so that the case of single input systems is included for B = ˆ b, ˆ kξT . A model of the plant is added to the loop and the state C= ˆ cT and Kξ = vector ξ(t) of this model is fed back via Kξ ξ(t). Model of actuator saturation
System
y C
satu0 u
us
x˙ = Ax+Bus
ym
x
Cm
System model Kξ
δ
ξ˙ = Aξ + Bδ
ξ
Cm ε
uC Nominal controller
r
Figure 4.4. The prevention of windup according to Schneider and Teel and Kapoor (time domain)
4.3 Approach of Schneider and Teel and Kapoor to Windup Prevention
89
The title of the paper [61] reflects the following interpretation of the scheme. The model of the system temporarily stores that part of the control signal uC (t) that is not directly transferred to the system because of the input saturation. As soon as it becomes feasible, this stored part of uC (t) is transferred to the system via Kξ ξ(t). During input saturation the model of the system and the nominal controller constitute a linear closed loop, so that unstable modes of the controller cannot develop freely. Therefore, controller windup does not occur in the scheme of Figure 4.4. A more formal explanation of the scheme is possible along the following lines. As long as the input signals of the system are unconstrained (i.e., us (t) = u(t)), the input δ(t) to the model of the system vanishes, so that the loop consisting of system and nominal controller is active (linear performance recovery). In the case of input saturation, the nominal controller no longer forms a closed loop with the system because feedback is interrupted by input saturation. Instead it controls the model of the system, which is unconstrained. Therefore, the eigenvalues of the controller and the model of the system are located at the positions assigned by the linear control. The corresponding characteristic polynomial is Hurwitz, so that unstable modes of the controller are not effective during input saturation and controller windup does not occur. us (s) If input saturation is active, the transfer behaviour u¯(s) = −GLξ (s)¯ between the output us of the nonlinear element and its input u is characterized by GLξ (s) = Kξ (sI − A)−1 B (4.5) in the scheme of Schneider and Teel and Kapoor. This becomes plausible by inspection of Figure 4.4. If input saturation is active, the controller is no longer controllable from the output signal us (t) of the nonlinearity because both transfer functions between us and the input ε of the controller are identical but with different signs. Hence the transfer behaviour of the linear part of the loop is given by (4.5). When GLξ (s) is positive real (as suggested in [67]), or satisfies the circle criterion, the nonlinear loop in Figure 4.4 is globally asymptotically stable. Also when using the phase design aid to shape GLξ (s) in single input systems, well-damped nonlinear transients result, regardless of whether the nominal controller is classical or observer-based, or whether or not it contains signal models for disturbance rejection. It is interesting to note that the loop in Figure 3.11 (where controller windup has been prevented by the observer technique) exhibits exactly the ˆ kξT . same behaviour as the loop in Figure 4.4 for kST = Taking into account the relation (A.14) between the time and the frequency domain representations of state feedback control, the transfer matrix (4.5) can also be written as ˜ ξ (s)D−1 (s) − I (4.6) GLξ (s) = D ˜ ξ (s) is where in the single input case the polynomial D
90
4 Further Methods for the Prevention of Windup System
Model of actuator saturation
y N (s)D−1 (s)
satu0 u
us
Nm (s)D−1 (s)
ym
˜ ξ (s)D−1 (s) − I D
δ
Nm (s)D−1 (s) ε
System model uC −1 DC (s)NCy (s)
Nominal controller −1 (s)NCr (s) DC
r
Figure 4.5. The prevention of windup according to Schneider and Teel and Kapoor (frequency domain)
˜ ξ (s) = det(sI − A + bk T ) D ξ
(4.7)
Figure 4.5 shows the equivalent frequency domain representation of the scheme in Figure 4.4. A drawback of the method suggested by Schneider and Teel and Kapoor is that additional dynamic elements of the order n (system model) are added to the controller even if there is no danger of plant windup. Moreover, the discussions in Chapter 3.3.1 have shown that one can remove a possibly existing danger of plant windup by additional dynamic elements whose order is considerably reduced in relation to the order n of the system.
4.3 Approach of Schneider and Teel and Kapoor to Windup Prevention
91
Example 4.2. Design of the scheme of Schneider and Teel and Kapoor for an observer-based controller with a disturbance model An observer-based controller incorporating a disturbance model in the sense of Davison was designed in [34] for a system with the transfer function G(s) = N (s)D−1 (s) =
2 s3 + 2s2 + 2s + 2
The characteristic polynomial of the signal model is det(sI − S) = s, and the ˜ desired characteristic polynomials of the closed loop are D(s) = (s + 6)3 and 3 Δ(s) = (s + 4) . The transfer functions of the controller are −1 GCy (s) = DC (s)NCy (s) =
877s3 + 4122s2 + 8326s + 6912 and s3 + 28s2 + 314s
−1 GCr (s) = DC (s)NCr (s) =
108s3 + 1296s2 + 5184s + 6912 s3 + 28s2 + 314s
The saturation limit is u0 = 1.5. If no measures for the prevention of windup are taken, a reference sequence r(t) = rS 1(t) − 2rS 1(t − 5) + rS 1(t − 10) with amplitudes rS ≥ 0.43 gives rise to non-decaying limit cycles. As demonstrated in [34], this is the effect of controller and plant windup, since the phase ΦL (jω) of the frequency response GL (jω) + 1 =
˜ D(jω) dips down to −160◦ . D(jω)
˜ ξ (s) in the scheme of Figure 4.5 such that Choosing the polynomial D GLξ (jω) + 1 =
˜ ξ (jω) D satisfies the restrictions of the phase design aid, which D(jω)
1
2
0.5
1
Input us (t)
Output y(t)
˜ ξ (s) = (s + 3.7)3 , one obtains the responses of the closed loop is the case for D shown in Figure 4.6 and they do not exhibit any oscillatory behaviour.
0
−0.5
−1
0
−1
0
5
10
Time
(a) Reference step responses
15
−2
0
5
10
15
Time
(b) Corresponding input signals
Figure 4.6. Reference transients when applying the scheme of Figure 4.5
92
4 Further Methods for the Prevention of Windup
4.4 B¨ uhler’s Cascaded Control Scheme Plant windup can be removed by an additional dynamic element, a filtered setpoint, or the approach of Schneider and Teel and Kapoor. All these measures, however, require the system to be stable. H. B¨ uhler [8] proposed to use nonlinear cascaded loops for the prevention of plant windup, and this scheme is not restricted to stable systems. The starting point of B¨ uhler’s approach is the loop shown in Figure 2.7, i.e., the observer technique of Figure 2.6 has been applied for the prevention of controller windup. Since reference inputs do not cause observation errors, the reference behaviour of the loop in Figure 4.7 does not change when the actual state x(t) of the system is replaced by the observed state x ˆ(t). In the following discussions, the influence of disturbances is neglected. Disturbance rejection shall be discussed at the end of this section. Plant windup occurs if the dynamics of the controlled system are “too fast” in view of the existing input saturation. The cascaded control in Figure 4.7 allows one to assign relatively fast linear dynamics (effective for small reference inputs), while preventing plant windup at the same time. The scheme of Figure 4.7 is tailored to an application for stable systems. With minor modifications, it is also applicable to unstable systems. This will be discussed later in this section. We consider a linear single input system with the state equations x(t) ˙ = Ax(t) + bus (t)
(4.8)
y(t) = cT x(t) and an input saturation us (t) = satu0 (u(t)).
r mc
mb
ma
satu0 uc
kcT
satu0
satu0 ub
ucs
kbT
ubs
u
kaT
us
System
y
x
Figure 4.7. B¨ uhler’s nonlinear cascaded control for the prevention of plant windup
4.4 B¨ uhler’s Cascaded Control Scheme
93
The nominal control T x(t) + mnom r(t) unom (t) = −knom
(4.9)
is assumed to cause a distinct plant windup. B¨ uhler’s idea for the prevention of plant windup is as follows. Use a sufficient number of nested nonlinear loops so that the scheme in Figure 4.7 assures the nominal behaviour when no saturation is active. The following discussions assume that three cascades are needed to achieve this goal, i.e., one has T = kaT + kbT + kcT (4.10) knom and mnom = ma + mb + mc
(4.11)
The structure of the scheme remains the same for any number of cascades. The dynamics in each cascade are assigned such that the transfer function between the output of the saturating element and its input satisfies the chosen stability criterion (see Section 3.2), provided that only this saturation element is active. For simplicity, we assume that the circle criterion is applied. The control in the inner loop u(t) = −kaT x(t) + ma r(t) + ubs (t)
(4.12)
is designed such that the transfer function −¯ u(s) = kaT (sI − A)−1 b u ¯s (s)
(4.13)
satisfies the circle criterion and ma = [cT (−A + bkaT )−1 b]−1
(4.14)
assures vanishing tracking errors y(∞) − r(∞) for constant reference signals and ubs (t) ≡ 0. If the design were to end here, the stability of the nonlinear loop could be proven. However, the dynamics of the linear control, character˜ a (s) = det(sI − A + bkaT ) would be restricted by the ized by the polynomial D requirement that the transfer function (4.13) has to satisfy the circle criterion. To obtain improved linear dynamics, a second cascade ub (t) = −kbT x(t) + mb r(t) + ucs (t)
(4.15)
is added with ubs (t) = satu0 (ub (t)) so that the transfer function −¯ ub (s) = kbT (sI − A + bkaT )−1 b u¯bs (s)
(4.16)
also satisfies the circle criterion. The eigenvalues of the linear loop (i.e., for us (t) = u(t) and ubs (t) = ub (t)) are now characterized by the zeros of the ˜ b (s) = det[sI − A + b(k T + k T )]. The factor polynomial D a b
94
4 Further Methods for the Prevention of Windup
−1 −1 mb = cT −A + b(kaT + kbT ) b − ma
(4.17)
assures vanishing tracking errors. When finally adding the third cascade uc (t) = −kcT x(t) + mc r(t)
(4.18)
with ucs (t) = satu0 (uc (t)) such that also the transfer function −¯ uc (s) = kcT [sI − A + b(kaT + kbT )]−1 b u¯cs (s)
(4.19)
satisfies the circle criterion, the dynamics of the linear loop are characterized ˜ c (s) = det[sI − A + b(kaT + k T + kcT )] and by D b −1 −1 mc = cT −A + b(kaT + kbT + kcT ) b − mb − ma
(4.20)
assures vanishing tracking errors. Given the above assumptions, this assures T ˜ c (s) = D ˜ nom (s) = det(sI − A + bknom D ). The above design only assures a stable behaviour when saturation and desaturation occur in the correct order. A correct saturation sequence is characterized by uc (t) saturating first, then ub (t), and u(t) last. Desaturation must occur in u(t) first, then in ub (t), and finally in uc (t). A correct saturation sequence can usually be assured by an appropriate modification of the factors ma , mb , and mc , so that the signals u(t), ub (t) and uc (t) coincide in the steady state [H. B¨ uhler: private communication], i.e., the signal u(∞) that assures a vanishing tracking error y(∞) = r(∞) is provided by uc (t) while the differences εa (∞) = ma r(∞) − kaT x(∞) and εb (∞) = mb r(∞) − kbT x(∞) vanish. If the system contains eigenvalues at s = 0, B¨ uhler suggests assigning the inner state feedback kaT such that det(sI − A + bkaT ) has a zero at s = 0. Thus, unlimited amplitudes for y(t) can be obtained in spite of input saturation. Example 4.3. Application of B¨ uhler’s approach to the prevention of plant windup in a stable system We consider a stable system of the order three with the state equations ⎡ ⎤ ⎡ ⎤ 0 1 0 0 0 1 ⎦x(t) + ⎣ 0 ⎦us (t) x(t) ˙ =⎣ 0 −1 −3 −3 1 1 0 0 x(t) y(t) = The equivalent description in the frequency domain is y¯(s) =
1 N (s) u ¯s (s) = u¯s (s) D(s) (s + 1)3
4.4 B¨ uhler’s Cascaded Control Scheme
95
A saturating element with u0 = 1.5 is at the input of the system. Thus, the maximum sustainable amlitude of the output is ymax = 1.5. For simplicity, assume that the maximum amplitude of the reference signal is also r0 = 1.5. The nominal control is intended to shift the eigenvalues of the system from s = −1 to s = −27. This causes a severe plant windup, because the minimum value of the phase ΦL (ω) of
˜ nom (jω) D is −205◦. Therefore, input D(jω)
saturation can cause limit cycles in the nonlinear loop when this nominal control is applied. Stable transients in spite of input saturation can be obtained by the multicascade loop in Figure 4.7. Given the above specifications, the nominal characteristic polynomial can ˜ c (s) = (s + 27)3 . ˜ nom (s) = D be obtained with cascades, i.e., D the aid of three T With ka = 26 24 6 the characteristic polynomial of the inner loop ˜ a (s) = det(sI − A + bk T ) = (s + 3)3 . With this k T the transfer function is D a a kaT (sI − A)−1 b =
˜ a (s) D − 1 satisfies the circle criterion and (4.14) leads to D(s)
ma = 27. The vector kbT = 702 216 18 assigns the characteristic polynomial ˜ b (s) = det[sI −A+b(kaT +k T )] = (s+9)3 . With this k T the transfer function D b b kbT (sI − A + bkaT )−1 b =
˜ b (s) D −1 also satisfies the circle criterion and (4.17) ˜ Da (s)
leads to mb = 702. The vector kcT = 18954 1944 54 assigns the characteristic polynomial ˜ c (s) = det[sI − A + b(kaT + k T + kcT )] = (s + 27)3 . The corresponding transfer D b function kcT [sI −A+b(kaT +kbT )]−1 b =
˜ c (s) D −1 also satisfies the circle criterion ˜ b (s) D
and (4.20) leads to mc = 18954. Figure 4.8a shows the transients of the loop in Figure 4.7 for reference inputs r(t) = rS 1(t) in the range 0.014 ≤ rS ≤ 1.4. The transients are welldamped for nearly all set points. A closer inspection, however, reveals that input saturation triggers an oscillatory behaviour when rS is close to r0 = 1.5. This is due to a wrong saturation sequence. Figure 4.8b shows the signals us (t) (solid line), ubs (t) (dashed line) and ucs (t) (dotted line) that occur for a reference input with rS = 1.4. Obviously at time t = 5.9 the inner signal u(t) is saturated, while the signal ub (t) in the cascade (b) is unconstrained. This incorrect saturation sequence can be prevented by a modification of the factors ma , mb and mc such that the steady state values of u(t), ub (t) and uc (t) coincide. When replacing ma , mb and mc by m∗a = ma − 1 = 26,
m∗b = mb = 702 and m∗c = mc + 1 = 18955
the signals εa (∞) = ma r(∞) − kaT x(∞) and εb (∞) = mb r(∞) − kbT x(∞) vanish. The resulting reference transients are shown in Figure 4.9.
96
4 Further Methods for the Prevention of Windup 2
us (t), usb (t) and ucs (t)
Output y(t)
1.5
1
0.5
0
0
5
ucs
1
0
us
−1
ubs
−2 5.2
10
Time
5.4
5.6
5.8
6
6.2
6.4
Time
(a) Transients for 0.014 ≤ rS ≤ 1.4
(b) Input signals for rS = 1.4
Figure 4.8. Reference step responses of the loop in Figure 4.7 with a wrong saturation sequence
1.6
us (t), ubs (t) and ucs (t)
Output y(t)
1.5
1
0.5
0
0
5
10
Time
(a) Transients for 0.014 ≤ rS ≤ 1.4
ucs
1.5
ubs
us 1.4
1.3
1.2
0
5
10
Time
(b) Input signals for rS = 1.4
Figure 4.9. Reference responses of the loop in Figure 4.7 when the correct saturation sequence is observed
The signals in Figure 4.9b show that now the signal u(t) in the inner cascade becomes non-saturated first, then ub (t) and finally uc (t). As a consequence, the reference transients in Figure 4.9a no longer exhibit an oscillatory behaviour.
4.4 B¨ uhler’s Cascaded Control Scheme
97
An application of B¨ uhler’s approach to unstable systems is possible by modifying the inner cascade (a). Due to this modification the outer cascades can be designed as above, namely for a stable system with input saturation. Figure 4.10 shows a version of the scheme in Figure 4.7 that allows one to obtain proven stability for constrained unstable systems. Given limit u0 of the input saturation and the static gain
the amplitude
VSt = cT (−A)−1 b (see also (2.5)) of the system (4.8), the maximum sustainable amplitude of the output is ymax = VSt u0
(4.21)
The maximum amplitude r0 of the reference signal should be smaller, i.e., r0 < ymax
(4.22)
Thus the maximum used range of the output is limited by −r0 ≤ y(t) ≤ r0
(4.23)
See also the definitions of the different amplitude ranges in Section 1.4. For the system (4.8), which may now have exponentially unstable modes, a control (4.24) u(t) = −kaT x(t) + ma ubs (t) ˜ a (s) = det(sI − A + bkaT ) is Hurwitz and ma is as is designed so that the D ˜ a (s) are such that when restricting the input defined in (4.14). The zeros of D signal ubs (t) to the range −r0 ≤ ubs (t) ≤ r0
(4.25)
r mb satu0
satr0 ub
kbT
ubs
u
ma
kaT
us
System
y
x
Figure 4.10. B¨ uhler’s nonlinear cascaded control for unstable systems
98
4 Further Methods for the Prevention of Windup
the model nonlinearity of the saturating actuator never becomes active. For arbitrary input signals ub (t) the restriction (4.25) can be assured by ubs (t) = satr0 (ub (t))
(4.26)
As neither the model of the actuator in front of the system nor the actual actuator saturate, the inner loop is a stable linear system with input ubs (t), output y(t), and saturation (4.26). A stable operation is assured when ub (t) = −kbT x(t) + mb r(t) ˜ b (s) = det[sI assigns a Hurwitz polynomial D
− A + b(kaT
(4.27) + ma kbT )],
−¯ ub (s) = kbT (sI − A + bkaT )−1 bma u ¯bs (s)
such that (4.28)
satisfies the circle criterion. When the system to be controlled is exponentially unstable this is, of course, only true for vanishing initial conditions x(t0 ) and provided the reference signal r(t) is the only input to the loop. A factor mb according to mb ma = [cT (−A + b kaT + ma kbT )−1 b]−1 (4.29) assures vanishing tracking errors. Vanishing tracking errors only result for amplitudes in the region −r0 ≤ rS ≤ r0 . Reference inputs with |rS | > r0 are simply ignored. They give rise to a reference signal ref f = r0 sign (r(t)). ˜ nom (s) are left of the zeros of D ˜ b (s) in the s-plane, more If the zeros of D cascades can be added, i.e., (4.27) becomes ub (t) = −kbT x(t)+ mb r(t)+ ucs (t). Here we assume that one additional cascade uc (t) = −kcT x(t) + mc r(t)
(4.30)
is needed to achieve the nominal dynamics for unconstrained signals. Vanishing tracking errors y(∞) − r(∞) are assured when mc ma = [cT (−A + b{kaT + ma (kbT + kcT )})−1 b]−1 − mb ma
(4.31)
The vector kcT in the cascade (c) is selected so that the transfer function −¯ uc (s) = kcT [sI − A + b(kaT + ma kbT )]−1 bma u¯cs (s)
(4.32)
satisfies the circle criterion. For unsaturated signals ub (t) and uc (t) (by construction the signal u(t) is always unconstrained) the feedback T u(t) = −[kaT + ma (kbT + kcT )]x(t) = −knom x(t)
(4.33)
characterizes the dynamics of the closed loop. If the nominal feedback (4.9) is such that (4.33) cannot be satisfied, further cascades can be added. A correct saturation sequence, and consequently a stable behaviour, can usually be assured when modifying the factors mb and mc so that the the signals ub (t) and uc (t) coincide in the steady state.
4.4 B¨ uhler’s Cascaded Control Scheme
99
Example 4.4. Prevention of plant windup for an unstable system. Demonstration of the unfavourable influence of the scheme in Figure 4.10 on the rejection of disturbances We consider a system of the order three with one eigenvalue in the left half s-plane (at s1 = −1) and a pair of complex conjugate eigenvalues in the right half s-plane (at s2/3 = 1 ± j), which is subject to step-like disturbances d(t). The state equations of the system are x(t) ˙ = Ax(t) + bus (t) + bd d(t) y(t) = cT x(t) with
⎡
0 A=⎣ 0 −2
1 0 0
⎤ 0 1 ⎦, 1
⎡ ⎤ 0 b = ⎣ 0 ⎦, 1
⎡ ⎤ 0 bd = ⎣ 1 ⎦ and cT = 2 1
0
0
There is an input saturation with amplitude u0 = 1.5, so that the maximum (and here critical) amplitude of the output is ymax = 1.5. With a “slow” state feedback u(t) = −ksT x(t) + ms r(t) which is parameterized by ksT = −1.75 1.25 3 and ms = 0.125, the unstable eigenvalues of the system are shifted to s = −0.5 and the stable eigenvalue at s = −1 is left unchanged. This leads to the characteristic polynomial ˜ s (s) = det(sI − A + bksT ) = (s + 1)(s + 0.5)2 . With this control, a sequence D r(t) = rS 1(t) − 2rS 1(t − 20) + rS 1(t − 40) up to an amplitude rS = r0 = 1.49 can be applied without causing exponentially increasing transients. Thus, the safely applicable amplitude r0 is very close to ymax = 1.5. Step-like disturbances d(t) = dS 1(t) with dS = 0.06, however, already give rise to an output signal y(∞) = 1.44, and for dS > 0.073 the output increases exponentially. On the other hand, applying a “fast” state feedback u(t) = −kfT x(t) + mf r(t) with kfT = 193.112 100.92 18.4 and mf = 97.556, all system eigenvalues ˜ f (s) = det(sI − A + bk T ) = (s + 5.8)3 . are shifted to s = −5.8, which gives D f Now a disturbance input with amplitude dS = 0.06 only causes an output signal y(∞) = 0.014. Compared to the slow control, the disturbance rejection has been improved by a factor 103. Disturbances up to an amplitude dS = 0.53 are handled in a stable manner. When applying the above reference sequence to this fast control, stable transients only result for amplitudes rS ≤ 0.08, i.e., compared to the slow control the allowable amplitude of the reference input is reduced by a factor 18. The cascaded control of Figure 4.10 allows one to achieve a fast (linear) behaviour while guaranteeing stable reference transients up to an amplitude r0 = 1.49.
100
4 Further Methods for the Prevention of Windup
When assigning the slow dynamics to the inner loop, i.e., when choosing ˜ a (s) = D ˜ s (s), the cascaded kaT = −1.75 1.25 3 and ma = 0.125 so that D control according to Figure 4.10 allows reference transients up to an amplitude r0 = 1.49 and larger amplitudes are simply ignored. It should be mentioned that the slow control does not completely meet the design guideline for the inner loop, namely the total absence of input saturation for all reference signals. In this introductory example short-term saturations of u(t) are allowed to happen in worst case situations, since they do not destabilize the loop. The design of the inner loop so that input saturation does not occur under any circumstances will be discussed in Chapter 5. By designing the cascade (b) so that the phase ΦL (ω) of
˜ b (jω) D satisfies ˜ Da (jω)
|ΦL (ω)| < 90◦ (circle criterion), stable transients are guaranteed in the whole amplitude range −1.49 < rS < 1.49. The circle criterion is satisfied for ˜ b (s) = (s + 2)(s + 1.9)2 D A small-amplitude behaviour characterized by the “fast” state feedback is obtained by an additional cascade uc (t) = −kcT x(t) + mc r(t), which assigns ˜ c (s) = D ˜ f (s) = (s + 5.8)3 D ˜ ˜ c (s), the phase ΦL (ω) of Dc (jω) does not become smaller than For this D ˜ b (jω) D
◦
−90 . The corresponding feedback vectors kbT and kcT and the factors mb and mc are mb = 28.88, and kbT = 55.76 79.68 30.4 , kcT = 1503.136 717.68 92.8 , mc = 751.568 When using the modified factors m∗b = mb − 1
and m∗c = mc + 1
the signals ub (∞) and uc (∞) coincide and this prevents the occurrence of wrong saturation sequences. Figure 4.11a shows the reference transients for the above sequences up to an amplitude of rS = 1.4. They exhibit a well-damped and stable behaviour. Given a step-like disturbance with amplitude dS = 0.06 the “fast” state feedback u(t) = −kfT x(t) assures y(∞) = 0.014. Therefore, one would expect that a step-like disturbance with amplitude dS = 0.12 causes an output y(∞) = 0.028 in the loop of Figure 4.10 (augmented by a cascade (c)). This is, however, not the case. When applying a disturbance signal with dS = 0.12 to the cascaded loop, the output signal y(t) reaches y(∞) = 1.4 instead. See the disturbance step responses in Figure 4.11b for input amplitudes dS = 0.02, dS = 0.04, dS = 0.06, dS = 0.08, dS = 0.1 and dS = 0.12.
4.4 B¨ uhler’s Cascaded Control Scheme 1.5
1.5
dS = 0.12 Output y(t)
1
Output y(t)
101
0.5 0 −0.5
1
dS = 0.1 0.5
dS = 0.08
−1
dS = 0.06 −1.5
0
10
20
30
40
50
Time
(a) Reference transients for step amplitudes 0.014 ≤ rS ≤ 1.4
0
0
5
10
15
20
Time
(b) Disturbance step responses for amplitudes 0.02 ≤ dS ≤ 0.12
Figure 4.11. Reference and disturbance transients of the cascaded loop
Disturbances with an amplitude dS > 0.13 cause unstable transients, whereas the fast state feedback u(t) = −kfT x(t) allows disturbance step amplitudes dS ≤ 0.53. The deterioration of the disturbance behaviour is a consequence of saturating signals ub (t) and uc (t) in the (augmented) scheme of Figure 4.10. For dS ≥ 0.031, the signal ucs (t) remains saturated permanently and for dS ≥ 0.065 also ubs (t). Thus, only the slow control of the inner cascade is effective for dS ≥ 0.065, and this gives rise to the dramatically degraded disturbance rejection. A further problem should be kept in mind. Jointly acting reference and disturbance signals may lead to an unstable behaviour of the loop. One could try to reduce the amplitude r0 of the outer saturation elements ubs (t) = satr0 (ub (t)) and ucs (t) = satr0 (uc (t)) to obtain an amplitude reserve for the rejection of disturbances. This, however, is no solution to the problem, because then the outer loops would saturate even earlier and the impaired disturbance behaviour would result for even smaller disturbances. Leaving, for example, the outer saturation limits at r0 = 1.49, but restricting the reference input signals to −1 < r(t) < 1, one can reserve part of the restricted input signal for disturbance rejection, but this does not prevent saturation in the outer cascades caused by large disturbances. Chapter 5 presents a new scheme for the prevention of windup that allows one to achieve a good reference behaviour and a desired disturbance rejection at the same time and is applicable to stable and unstable systems.
5 Prevention of Plant Windup in Stable and Unstable Single Input Systems
5.1 Introductory Remarks Systems with exponentially unstable eigenvalues do not complicate the prevention of controller windup. The observer technique in Chapter 2 prevents any mismatch of the controller states, so that after its application all possibly remaining undesired effects of input saturation are clearly attributable to a mismatch of the system states, i.e., to plant windup. The main problem with constrained unstable systems is the prevention of plant windup. On the one hand, the consequences of plant windup are much more dramatic than for stable systems and on the other hand, the measures for the prevention of plant windup discussed so far cannot be used. In a constrained system without eigenvalues at s = 0 the maximum sustainable amplitude ymax = VSt u0 depends
on the limit
u0 of the input saturation and the static gain VSt = |G(0)| = ˆ cT (−A)−1 b . In exponentially stable systems, input signals with amplitudes |u(t)| > u0 are simply not transferred to the output. They give rise to a stationary output y(∞) = ymax . In systems with exponentially unstable eigenvalues, the output y(t) can grow exponentially even for vanishing input signals. An equilibrium value y(∞) = 0 requires an input signal u(∞) = 0. Due to input saturation, the critical amplitude of a realizable equilibrium is, therefore, ymax . Contrary to stable systems, ymax is not the maximum applicable amplitude of the reference signal in unstable systems. When the output of the system attains y(∞) = ymax , there is no reserve in u(t) to stabilize the system at this equilibrium or to drive it back to equilibria with smaller amplitudes, and infinitesimally small disturbances can destabilize the loop. Therefore, the observation of a safe amplitude region −r0 ≤ y(t) ≤ r0 with 0 < r0 < ymax is of vital importance for a stable behaviour of the closed loop. If plant windup causes overshoots, an r0 u0 . On the other hand, disturbances acting during reference transients can cause an unstable behaviour in such a scheme. In arbitrary unstable systems, a prevention of plant windup with proven stability is possible when assuring that input saturation never becomes active. This can be achieved with the control scheme presented in this chapter. It allows a prevention of windup with proven stability for exponentially unstable systems even in the presence of jointly acting reference and disturbance inputs. With minor modifications this scheme can also be applied to stable systems. The idea behind this scheme is the following: Do not burden the feedback controller with problems solvable by feedforward control. The new scheme introduced in Section 5.2 is based on a feedback control for disturbance rejection and system stabilization, and a feedforward control for reference tracking. The feedforward part uses a nonlinear model-based trajectory generator (reference shaping filter) that assures a stable reference behaviour in spite of input saturation. For arbitrary reference input signals the shaping filter does not generate input signals for the system that exceed predefined amplitude limits. By suitably injecting the states of the trajectory generator, reference inputs do not activate the feedback controller. This allows a splitting of the restricted input range into one part reserved for disturbance rejection and a remaining part for tracking. Thus, input saturation can either be prevented completely or it can be reduced to an extent that has been shown not to cause an unstable behaviour of the closed loop. For unstable systems, the design of the reference shaping filter is discussed in Section 5.3 and for stable systems in Section 5.4. In stable systems, input saturation can be allowed to become active. Then, however, an ADE must probably be added to prevent plant windup. In Section 5.5, the scheme is generalized to the case of observer-based controllers with signal models for disturbance rejection. Section 5.6 presents a version of the new scheme that allows it to be used also in the presence of classical controllers.
5.2 A New Scheme for the Prevention of Windup
105
5.2 A New Scheme for the Prevention of Windup First the general structure of the new scheme for the prevention of windup is introduced. It uses an ideal state feedback control u(t) = −k T x(t) for system stabilization and disturbance rejection. This makes sense insofar as the transfer function GL (s) = k T (sI − A)−1 b of the linear part of this loop specifies the extent of plant windup (see Chapter 3). When general compensators are used instead, the measures for the prevention of controller windup suggested in Chapter 2 assure that also in the presence of state and disturbance observers, or when the controller contains signal models for disturbance rejection in the sense of Davison, this simple transfer function GL (s) characterizes the possible danger of plant windup. The basic feature of the loop in Figure 5.1 is the systematic separation into a feedforward control for tracking and a nominal feedback control u(t) = −k T [x(t) − xM (t)]
(5.1)
for the stabilization of the system and disturbance rejection. The feedback control only becomes active when the actual trajectory x(t) diverges from the model trajectory xM (t), which is generated in the reference shaping filter. Such deviations can either be caused by non-matching initial conditions or by external disturbance inputs d(t). In both cases the feedback control assures finite differences x(t) − xM (t). The signal uCr (t) and the corresponding reference trajectory xM (t) are output signals of a nonlinear trajectory generator (reference shaping filter). The design of the reference shaping filter, which incorporates a model of the system, is discussed for unstable systems in Section 5.3 and for stable systems in Section 5.4. d
satu0 uCr
u
us
Linear system
uCδ r
Nonlinear reference shaping filter
yM kT
x
xM
Figure 5.1. The new scheme for the prevention of windup
y
106
5 Plant Windup Prevention in Stable and Unstable SISO Systems
It is assumed that the model of the system used in the trajectory generator is correct. By construction the signal uCr (t) that drives the model of the linear system in the reference shaping filter is restricted to |uCr (t)| < u0 (see Sections 5.3 and 5.4). If, as shown in Figure 5.1, uCr (t) also drives the actual system, coinciding trajectories x(t) = xM (t) and y(t) = yM (t) result. Therefore, in the absence of disturbance inputs the feedback signal uCδ (t) vanishes. This is, of course, only true when the transients after the initial startup have decayed. The nominal state feedback is assumed to stabilize the system and to give a desired rejection of disturbances. So when, for example, a difference x(t) = xM (t) is caused by external disturbances, the nominal control (5.1) acts in a stabilizing way and it either keeps this difference small or leads to vanishing steady state errors x(∞) − xM (∞) in the presence of signal models for disturbance rejection. An important feature of the scheme in Figure 5.1 is that reference inputs r(t) do not give rise to feedback signals uCδ (t). Because of this, the control signal u(t) driving the system is the superposition of the signal uCr (t), which assures the desired tracking, and the signal uCδ (t) which assures the desired rejection of disturbances. Therefore, one part of the restricted input range −u0 ≤ u(t) ≤ u0 can be reserved for disturbance rejection by only using the remaining part for tracking. This permits a control design so that input saturation never becomes active. In stable systems input saturation must not be avoided completely. To reject the disturbances that occur most frequently one could reserve part of the restricted input signal range, so that only larger and less frequently occurring disturbances cause saturating input signals. If the nominal control is such that the linear part of the loop violates the chosen stability criterion (see Section 3.2), there is, however, the danger of plant windup. For stable systems this can easily be prevented by an appropriate additional dynamical element (see Section 3.3). A different situation arises in exponentially unstable systems. During input saturation the loop is open so that the unstable modes of the system can develop freely. If input signals |u(t)| > u0 are caused by external disturbances, whose signal forms and time of occurrence are unknown in general, states of the system could develop that can only be stabilized by input signals that exceed the saturation limits. When further taking into consideration that plant windup can no longer be removed by an additional dynamic element, a stable behaviour of the closed loop can only be guaranteed in the presence of exponentially unstable systems if disturbances acting during reference transients do not cause saturations in the plant input signal. In addition to their spectral content, the amplitudes of the disturbance signals are also more or less unknown. For the stable operation of an exponentially unstable plant, however, the prior knowledge of the amplitudes of the worst case disturbances is of vital importance. It would literally be dis-
5.2 A New Scheme for the Prevention of Windup
107
astrous if it turned out during system operation that the applied control was not able to handle the occurring disturbances. Therefore, one must tacitly assume that the feedback control only generates signals uCδ (t) for the rejection of external disturbances that satisfy the restriction |uCδ (t)| < βu0 ,
0 u0 , when the signal ub (t) is restricted by r0 =
1 = 0.99 (i.e., r0 is only reduced by 1% in αsil
relation to ymax ). The resulting transient of the inner loop for ubs (t) = rS 1(t) with rS = 0.9 is shown in a dashed line in Figure 5.3.
114
5 Plant Windup Prevention in Stable and Unstable SISO Systems
1
Output y(t)
0.8
˜ a (s) allowing With D for r0 = 0.909
0.6
0.4
˜ a (s) allowing With D for r0 = 0.99
0.2
0
0
5
10
15
20
25 Time
30
35
40
45
50
Figure 5.3. Transient responses of the inner loop for filter designs that assure r0 = 0.99 and r0 = 0.909
˜ a (s) is When assigning the dynamics of the inner loop so that D ˜ af (s) = (s2 + 4s + 8)(s + 0.5)3 D the L1 -norm of
u ¯a (s) DM (s) 1 = f ma is αfil = 1.1002. Consequently, for r0 = f ˜ u ¯bs (s) αil Da (s)
= 0.909 the signal ua (t) never exceeds the saturation limit in spite of arbitrary input signals. Hence only about 91% of the maximum existing output range −ymax < yM (t) < ymax can now be used. The solid line in Figure 5.3 shows the transient of the inner loop for an ˜ a (s) = D ˜ f (s) characterizes the dynamics of input amplitude rS = 0.9 when D a ˜ ˜ as (s) a considerably improved the inner loop. Compared to the case Da (s) = D transient behaviour can be observed. In the following, we assume that the inner loop is parameterized by ˜ af (s). This characteristic polynomial is assigned by the feedback ˜ a (s) = D D T vector ka = 0 0 6.125 −7.25 6.5 and ma = 0.0625/3 guarantees vanishing errors yM (∞) − ubs (∞). As demonstrated above, the saturation limit of the nonlinearity ubs (t) = satr0 (ub (t)) is r0 = 0.909.
5.3 Reference Shaping Filter for Unstable Systems
115
The outer loop should be assigned (via kbT ) so that the transfer function ˜ b (s) must be chosen to (5.18) satisfies the circle criterion, i.e., the zeros of D obtain a phase ΦL (ω) of
˜ b (jω) D that stays in the region −90◦ < ΦL (ω) < 90◦ . ˜ a (jω) D
˜ b (s) = (s2 + 4s + 8)(s + 1.5)3, and with the above k T This is the case for D a and ma the relation (5.17) gives kbT = 0 0 156 288 144 , and from (5.19) it follows that mb = 27. The resulting reference shaping filter in Figure 5.2 produces stable transients for arbitrary reference inputs. Because uCr (t) ≡ ua (t) never exceeds the saturation limit u0 = 1, there is no danger of plant windup when this signal is used to drive the system according to Figure 5.1. Of course, the output y(t) of the system cannot track arbitrary reference signals. Instead, the output yM (t) of the model is the achievable reference trajectory in view of the existing input limitations. As reference signal amplitudes |r(t)| > r0 are not transferred, arbitrarily large reference inputs neither destabilize the filter nor the system. Figure 5.4 shows the reference trajectories yM (t) generated in the filter when an input sequence r(t) = rS 1(t)−2rS 1(t−30)+2rS 1(t−60)−rS 1(t−90) with amplitudes 0 < rS ≤ 0.9 is applied. For all realizable amplitudes rS ≤ r0 a well-damped, stable transient behaviour results. This is, of course, also true for the output y(t) of the system, 1
Output yM (t)
0.5
0
−0.5
−1
0
10
20
30
40
50
60
70
80
90
100
Time
Figure 5.4. Step responses of the trajectory generator with proven stability
116
5 Plant Windup Prevention in Stable and Unstable SISO Systems
if a stabilizing nominal feedback (5.1) is added and the signal uCr (t) ≡ ua (t) is used to drive the system. Significantly faster transients are achievable for small reference signal changes when two more cascades are added to the trajectory generator. Figure 5.5 shows this extended version. ˜ c (s) = (s + 3.7)5 and The zeros of the two characteristic polynomials D ˜ d (s) = (s + 7)5 are chosen so that the phases ΦL (ω) of the frequency reD sponses
˜ c (jω) ˜ d (jω) D D and remain in the region −90◦ < ΦL (ω) < 90◦ . ˜ ˜ c (jω) Db (jω) D
This design assures stable filter transients only if saturation and desaturation occur in the correct sequence, i.e., the signal ud (t) saturates first, then uc (t) and ub (t) last. Desaturation must begin with ub (t) and progress outwards (also see below). The (exact) feedback vectors are 1 −1072.464656 537.228928 115156.136688 95204.325008 13382.771072 29 1 T T T = kd1 kd2 , with kd1 = 107115.664656 10197.171072 and 29 1 = 2884096.263312 384302.074992 12770.828928 29
kcT = kdT T kd2
and mc = 666.43957 and md = 16113.56043 assure vanishing tracking errors yM (∞) − r(∞). Figure 5.6 demonstrates the improvements due to the additional cascades. Shown are the reactions to r(t) = rS 1(t) with rS = 0.001. The dashed line represents the reaction of the generator in Figure 5.2 and the solid line the reaction of the augmented filter in Figure 5.5.
r
Trajectory generator with two addidional cascades md
mb
mc satr0
ud
kdT
satr0 uds
kcT
uCr
uc
satr0 ucs
kbT
ub
ubs
ua
ma
System yM model
kaT xM
Figure 5.5. Model-based nonlinear trajectory generator for unstable systems with two additional cascades
5.3 Reference Shaping Filter for Unstable Systems
117
×10−4
10
Output yM (t)
8
With four cascades
6
4
With two cascades 2
0
0
1
2
3
4
5
6
7
Time
Figure 5.6. Improvements due to the additional cascades
For larger reference steps rS > 0.1, the improvements due to the extended filter are barely noticeable, since both signals uc (t) and ud (t) remain saturated during most of the transient period and desaturate only shortly before the final value is attained. In addition, persistent oscillations occur for transients in the vicinity of the maximum achievable amplitude. Figure 5.7 shows transients obtained with the filter of Figure 5.5 for rS = 0.89. This is a consequence of a wrong saturation sequence occurring in the extended trajectory generator. Figure 5.7b shows the signals ubs (t) (solid line), ucs (t) (dashed line) and uds (t) (dotted line) caused by a reference step amplitude rS = 0.89 in the filter of Figure 5.5. It is obvious that the signal ub (t) reaches the saturation limit twice between time t = 14 and t = 15, while the signal uc (t) in the outer cascade stays unsaturated. For t > 15 saturation occurs in an inner cascade (c) before the outer cascade (d) also saturates. This causes the instability observed in the step response of Figure 5.7a. A modification of the factors mb , mc and md so that the stationary signals ub (∞), uc (∞) and ud (∞) coincide prevents the wrong saturation sequence and, consequently, also the oscillatory transient behaviour. This is the case if the above factors mb , mc and md are replaced by m∗b = mb − 1 = 26 m∗c = mc and m∗d = md + 1 = 16114.56043
118
5 Plant Windup Prevention in Stable and Unstable SISO Systems 0.9
ubs (t), ucs (t) and uds (t)
1
Output yM (t)
0.88 0.86 0.84 0.82 0.8
0
20
40
60
Time
(a) Oscillations in the output yM (t)
0.5
ubs
0
ucs uds
−0.5
−1 13
14
15
16
Time
(b) Control signals in the cascades (b), (c) and (d)
Figure 5.7. Problems caused by a wrong saturation sequence in the vicinity of the maximum achievable output amplitude
The transients of the trajectory generator of Figure 5.5 are now stable and well-damped for all input amplitudes that can be handled. Stable transients are also obtained for the (unstable) system if a stabilizing control as shown in Figure 5.1 is added. The feedback vector 1 25.6 83.2 11677.2 7683.2 1743.8 87 ˜ gives a characteristic polynomial D(s) = det(sI − A + bk T ) = (s + 4)5 of the closed loop. This assures limited deviations from the desired reference transients when external disturbances act. If additional disturbances enter the system in the control scheme of Figure 5.1, part of the limited input signal range must be reserved for disturbance rejection (i.e., r0 has to be reduced accordingly). kT =
Example 5.2. Design of a trajectory generator for a chain of six integrators As a second example of trajectory generators for unstable systems we consider a system consisting of a chain of six integrators. The state equations (5.7) are parameterized by ⎡ ⎤ ⎡ ⎤ 0 1 0 0 0 0 0 ⎢ 0 0 1 0 0 0⎥ ⎢0⎥ ⎢ ⎥ ⎢ ⎥ ⎢ 0 0 0 1 0 0⎥ ⎢ ⎥ ⎥, b = ⎢ 0 ⎥, cT = cTm = 1 0 0 0 0 0 A=⎢ ⎢ 0 0 0 0 1 0⎥ ⎢0⎥ ⎢ ⎥ ⎢ ⎥ ⎣ 0 0 0 0 0 1⎦ ⎣0⎦ 0 0 0 0 0 0 1
5.3 Reference Shaping Filter for Unstable Systems
119
There is an input saturation with amplitude u0 = 5 and we consider the design of a reference shaping filter that allows the achievement of unlimited output amplitudes y(t). The design is carried out under the assumption that only step-like reference signal changes occur, and modifications of the set point only take place after all transients resulting from previous changes of the set point have settled. To obtain stable reference transients for the system, a stabilizing control (see Figure 5.1) uCδ (t) = k T [x(t) − xM (t)] has to be added. The desired eigenvalues of the closed loop are located at s = −2, so that the characteristic polynomial is ˜ D(s) = det(sI − A + bk T ) = (s + 2)6 This polynomial is assured by the vector k T = 64 192 240 160 60 12 . Unlimited output amplitudes y(∞) = ˆ yM (∞) can be obtained by the reference shaping filter in spite of the restricted input signal if the inner state ˜ a (s) at s = 0. feedback ua (t) = −kaT xM (t) + ma ubs (t) assigns one zero of D ˜ The location of the remaining zeros of Da (s) (with real parts < 0) has an influence on the transient behaviour for large reference amplitudes. Improved transients for very small reference signal changes are obtained by placing the ˜ a (s) further left in the s-plane. This, however, entails considerably zeros of D delayed transients for larger amplitudes. The solid line in Figure 5.8 shows the output yM (t) of the reference shaping filter caused by an input signal r(t) = rS 1(t) with amplitude rS = 200000, when the dynamics of the inner cascade are characterized by the polynomial ˜ as (s) = det(sI − AM + bM kaT ) = s(s + 0.1)5 . The dashed line represents the D output yM (t) caused by the same input amplitude when the characteristic ˜ af (s) = det(sI − AM + bM kaT ) = s(s + 0.4)5 . polynomial of the inner loop is D Both versions of the filter give approximately the same settling time for transients below an amplitude of rS = 100. For rS > 1000, however, the tra˜ as (s) attain their final values much faster jectories generated by the filter with D f ˜ than those with Da (s) (see Figure 5.8). Considerably delayed transients also ˜ as (s), but only for input amplitudes result with the filter parameterized by D of rS > 4000000. ˜ a (s) should be chosen in view of the reference Therefore, the zeros of D signal range most frequently used, so that the slow transient behaviour (due to the integrating eigenvalue at s = 0) only results for rarely occurring large changes of the set point. The following filter design is carried out under the assumption that reference signal changes with rS > 100 are exceptional, so that the inner cascade ˜ a (s) = D ˜ af (s). This corresponds to a feedback can be parameterized by D vector kaT = 0 0.01024 0.128 0.64 1.6 2 The factor ma can be chosen arbitrarily as ma = 1. Under the above assumptions, the maximum amplitude of the signal ua (t) occurs when the input ubs (t) changes from one saturation limit to the opposite.
120
5 Plant Windup Prevention in Stable and Unstable SISO Systems ×105 2.5
Output yM (t)
2
1.5
Slow inner cascade
1
0.5
Fast inner cascade
0
−0.5
0
20
40
60
80
100
120
140
160
180
200
Time
Figure 5.8. Two different dynamics in the inner cascade
Assuming for the moment that this limit is one, simulations of the inner loop (i.e., only the control ua (t) = −kaT xM (t) + ma ubs (t) is present) show that the maximum amplitude of ua (t) is 2.01. Since input saturation occurs for u0 = 5, a saturation limit 5 ≈ 2.49 r0 = 2.01 in ubs (t) = satr0 (ub (t)) leads to worst case amplitudes of ua (t) = ˆ uCr (t) that never exceed the saturation limit u0 = 5. If an outer cascade ub (t) = −kbT xM (t) + mb r(t) is added so that the transˆ fer function kbT (sI − AM + bM kaT )−1 bM ma =
˜ b (s) D −1 ˜ Da (s)
satisfies the circle
criterion, the stability of the trajectory generator can be proven under the above assumptions. Considerably faster transients of the filter are obtained for smaller changes of the reference signal when three more cascades (c), (d) and (e) are added to the scheme in Figure 5.2. In a first attempt, we design the outer cascades such that the phases ΦL (ω) of the frequency responses ˜ b (jω) D , ˜ Da (jω)
˜ c (jω) D , ˜ b (jω) D
˜ d (jω) D ˜ c (jω) D
and
˜ e (jω) D ˜ Dd (jω)
5.3 Reference Shaping Filter for Unstable Systems
121
remain in the region −130◦ < ΦL (ω) < 130◦ (i.e., we apply the phase design aid). Differing from what has been defined in (5.19), (5.26), (5.27), . . . , the reference injection factors mb , mc , md and me guaranteeing vanishing tracking errors yM (∞)−r(∞) in the reference shaping filter for the chain of integrators are now given by ˜ b (0) mb = D ˜ c (0) − mb mc = D ˜ d (0) − mb − mc md = D ˜ e (0) − mb − mc − md me = D The resulting reference shaping filter produces stable transients for arbitrary input amplitudes. However, wrong saturation sequences (due to a bang-bang behaviour in two inner cascades) cause small overshoots of the reference step responses. A wrong saturation sequence in the different cascades can usually be prevented by a modification of the factors mb , mc , md and me , such that for constant reference inputs, all stationary signals ub (∞), uc (∞), ud (∞) and ue (∞) coincide. Here, in the case of an integrating inner loop, the stationary signals ub (∞), uc (∞), ud (∞) and ue (∞) already coincide for the above factors mb , mc , md and me (i.e., they all vanish). For the investigated chain of six integrators it turns out that an assignment ˜ c (s), D ˜ d (s) and D ˜ e (s) so that each ˜ b (s), D of the characteristic polynomials D cascade satisfies the requirements of the phase design aid gives rise to signals uc (t) and ud (t), which change from one saturation limit to the opposite (see Remark 5.2). By a restriction of the phases ΦL (ω) of the frequency responses
˜ b (jω) D , ˜ a (jω) D
˜ c (jω) D ˜ d (jω) ˜ e (jω) D D , and to the region −90◦ < ΦL (ω) < 90◦ (i.e., the ˜ ˜ ˜ Db (jω) Dc (jω) Dd (jω)
circle criterion is satisfied), the unfavourable bang-bang behaviour in the inner cascades (c) and (d) no longer occurs. Remark 5.4. The phenomenon observed in the trajectory generator for the chain of six integrators cannot be considered as a counter-example to the phase design aid, because when designing the outer cascade (b) in the twocascade filter (see Figure 5.2) according to the phase design aid, no oscillatory behaviour occurs in the corresponding filter. The problem observed above is a consequence of a wrong saturation sequence in some inner cascades of an extended reference shaping filter (see Remark 5.2). Instead, this example sheds some light on the difficulties that prevent a proof of proper functioning of the extended scheme.
122
5 Plant Windup Prevention in Stable and Unstable SISO Systems
With
˜ b (s) = (s + 0.4)(s + 0.5)5 D ˜ c (s) = (s + 0.9)(s + 0.8)5 D ˜ d (s) = (s + 1.3)(s + 1.4)5 and D ˜ e (s) = (s + 2.3)3 (s + 2.4)3 D
the phase limits −90◦ < ΦL (ω) < 90◦ are satisfied for all cascades (b), (c), (d) and (e), and the corresponding feedback vectors have the forms with mb = 0.0125 kbT = 0.0125 0.14601 0.6845 1.61 1.9 0.9 , T kc = 0.282412 2.01463 5.8435 8.63 6.5 2 , with mc = 0.282412 kdT = 6.6968 28.17776 48.224 42.04 18.7 3.4 , with md = 6.6968 keT = 161.204896 399.284 402.3416 206.567 54.13 5.8 , with me = 161.204896
1
100
0.5
50
Output yM (t)
Output yM (t)
Though this reference shaping filter violates all known stability criteria for closed loops with an isolated nonlinearity of the sector type, the reference transients are stable and well-damped for all input amplitudes. Figure 5.9a shows the reference transients for small amplitudes in the region 0 < rS ≤ 1 and Figure 5.9b for larger amplitudes in the region 0 < rS ≤ 100. Considerably delayed transients only result for reference step amplitudes rS > 1000, which were assumed to be the exception.
0
−0.5
−1
0
50
100
Time
(a) Small reference step amplitudes
0
−50
−100
0
50
100
Time
(b) Large reference step amplitudes
Figure 5.9. Reference transients of the trajectory generator for the chain of six integrators
5.4 Reference Shaping Filter for Stable Systems
123
5.4 Reference Shaping Filter for Stable Systems The inner cascade in the trajectory generator for unstable systems was designed to obtain an inner loop consisting of a stable linear system with input saturation ubs (t) = satr0 (ub (t)). Thus, the standard stability criteria could be used to design an outer feedback ub (s) = −kbT xM (t) + mb r(t), which then guarantees asymptotic stability of the filter for arbitrary reference inputs. The inner stabilizing cascade is obviously not necessary in the case of stable systems. Therefore, the reference shaping filter with proven stability for such systems is as shown in Figure 5.10. If the state feedback in ua (t) = −kaT xM (t) + ma r(t)
(5.28)
is designed so that the transfer function ˜ a (s) D −¯ ua (s) = kaT (sI − AM )−1 bM = −1 ˆ u ¯as (s) D(s)
(5.29)
˜ a (s) = det(sI − AM + bM k T )) satisfies a stability criterion for sys(where D a tems with a sector nonlinearity, the trajectory generator in Figure 5.10 is asymptotically stable for all reference signals r(t). When the amplitude u0f of the saturation nonlinearity uas (t) = satu0f (ua (t)) satisfies the restriction u0f < u0 , the signal uCr (t) = ˆ uas (t), which drives the system as shown in
r Reference shaping filter for stable systems uCr
ma satu0f ua
uas
System model
yM
kaT xM
Figure 5.10. Trajectory generator for stable systems with proven stability
124
5 Plant Windup Prevention in Stable and Unstable SISO Systems
Figure 5.1, does not exceed the saturation limit u0 . Thus, no matter how the nominal state feedback uCδ (t) = k T [x(t) − xM (t)]
(5.30)
has been designed, reference inputs do not cause plant windup effects in the control scheme of Figure 5.1. Additionally acting disturbances, however, can drive the input of the system into saturation. The splitting of the limited range of the input signal u(t) into one part used for disturbance rejection and the remaining part for tracking is, of course, also possible for stable systems. However, it would be unnecessarily restrictive. When the nominal state feedback entails the danger of plant windup, additional measures for the prevention of plant windup can be introduced (see Section 3.3). Additional cascades can, of course, also be introduced in the presence of stable systems. To prevent stability problems caused by wrong saturation sequences, the factors ma , mb , mc , . . . should be modified so that the steady state values uas (∞), ubs (∞), ubs (∞), . . . coincide. See also the discussions in Sections 4.4 and 5.3. In Example 4.3 the design of a multi-cascade control for a stable system is discussed. The arguments concerning this control also apply to the trajectory generator. As another, nontrivial, example the design of a trajectory generator for an elastic system is discussed in the sequel. Elastic positioning systems, for example for large telescopes or complex machine tool drives, are characterized by pole-zero patterns where both the poles and zeros are located close to the imaginary axis of the s-plane. The classical control structure for such systems consists of an inner cascade for the velocity of the drive and an outer cascade for the position of the system. Problems are caused by the fact that the modes of the closed loop are inadequately damped, and the zeros in the outer loop do not compensate these poles. Therefore, oscillations can be triggered by reference signals. The stimulation of oscillations can be prevented by using “smooth” reference inputs. An alternative is to use a reference shaping filter. Example 5.3. Design of an extended trajectory generator for an elastic system with input saturation The system considered is a (simplified) model of the azimuth axis of a radio telescope. The input signal u(t) is the voltage at the drive motor and the output y(t) is the azimuth angle. The state equations of the system are x(t) ˙ = Ax(t) + bus (t) + bd d(t) y(t) = cT x(t) with
5.4 Reference Shaping Filter for Stable Systems
⎡
−0.46 1 0 ⎢ −529.0529 0 0 ⎢ ⎢ 0 0 −0.34 ⎢ 0 0 −289.0289 A=⎢ ⎢ ⎢ 0 0 0 ⎢ ⎣ 0 0 0 0 0 0 ⎤ ⎡ ⎡ ⎤ 998.5 −0.1 ⎢ 185.9 ⎥ ⎢ 0⎥ ⎢ ⎥ ⎢ ⎥ ⎢ 749.38 ⎥ ⎢ 0.1 ⎥ ⎢ ⎥ ⎥ 1 ⎢ ⎢ 101.83 ⎥, bd = ⎢ 0⎥ b= ⎥ ⎢ ⎥, 1875 ⎢ ⎢ 692.66 ⎥ ⎢ 0.1 ⎥ ⎢ ⎥ ⎥ ⎢ ⎣ 60.887 ⎦ ⎣ 0⎦ 1875 0.1
0 0 0 0 0 0 1 0 0 0 0 0 0 −0.22 1 0 −121.0121 0 0 0 0
0 0 0 0 0 0 0
125
⎤ ⎥ ⎥ ⎥ ⎥ ⎥, ⎥ ⎥ ⎥ ⎦
cT = 1 0 1 0 1 0 1
and we assume that an input saturation us (t) = satu0 (u(t)) with u0 = 1 exists. Figure 5.11 shows the pole-zero pattern of this telescope with alternating poles and zeros in the vicinity of the imaginary axis. Such pole-zero patterns are typical for elastic systems.
25
Imaginary axis
20
15
10
5
0 −2
−1.5
−1
−0.5 Real axis
0
0.5
Figure 5.11. Pole-zero pattern of the elastic system
1
126
5 Plant Windup Prevention in Stable and Unstable SISO Systems
The zeros of the system are located at s1/2 = −0.21 ± 21j, s3/4 = −0.15 ± 15j and s5/6 = −0.09 ± 9j and the poles at s1/2 = −0.23 ± 23j, s3/4 = −0.17 ± 17j, s5/6 = −0.11 ± 11j and s7 = 0 Very fast transients of the controlled system can be obtained by a state feedback u(t) = −k T x(t) + mr(t), which gives an exact pole-zero cancellation, i.e., six poles are placed below the six zeros and the remaining pole is, for example, shifted to s = −50. The solid line in Figure 5.12a shows the output y(t) of the system caused by a reference input r(t) = rS 1(t) with rS = 0.01, when the state feedback has been designed for “exact cancellation”. The input saturation does not become active for this small input amplitude. Another design goal is, for example, “asymptotic cancellation”, i.e., all poles are shifted to the real axis, where the distance from the origin of the splane of each pair of poles coincides with that of a pair of complex conjugate zeros. The remaining seventh pole is again placed at s = −50. Here, this “asymptotic cancellation” design is equivalent to poles of the closed loop at s1/2 = −9, s3/4 = −15, s5/6 = −21 and s7 = −50 The dashed line in Figure 5.12a shows the reference transient resulting from an “asymptotic cancellation” design, and it is considerably delayed in relation to the “exact cancellation”. ×10−3
0.3 0.25
10
Input u(t)
Output y(t)
0.2 5
0.15 0.1 0.05 0
0
−0.05 0
0.5
1
Time
(a) Reference transients
1.5
0
5
10
15
Time
(b) System input signals
Figure 5.12. Different design philosophies for the trajectory generator
20
5.4 Reference Shaping Filter for Stable Systems
127
One could try to obtain faster decaying transients by moving the poles from their “asymptotic cancellation” locations further left to, say, s1/2/3/4/5/6/7 = −21 The dash-dotted line in Figure 5.12a shows the resulting reference transient. It rises faster, but at the cost of a rather “bumpy” behaviour. Shortly after the reference step is applied, the output is close to the desired value rS = 0.01. However, it then oscillates in the opposite direction, producing an undershoot of about 40% before finally approaching the set point. The undershoots are even more pronounced when the poles are shifted further to the left. When comparing the reference transients in Figure 5.12a one could come to the conclusion that an “exact cancellation” design is the best. The price to be paid for the fast transient behaviour in an exact cancellation design can be seen in Figure 5.12b. The system input signal u(t) shown in a solid line is related to the “exact cancellation” design. It is highly oscillating while the input signal in an “asymptotic cancellation” design (dashed line in Figure 5.12b) is almost smooth. Apart from the undesired oscillatory input signal, the “exact cancellation” approach is less robust to variations of the system parameters than the “asymptotic cancellation” design. The plots in Figure 5.13 show the reaction of the system (with no stabilizing feedback) to an input signal that is generated by a reference shaping filter where the poles and zeros of the model used for the design of the filter differ from the poles and zeros of the actual system by 1%. 0.035
Output y(t)
Exact compensation
0.03
Asymptotic compensation
0.025
0
2
4
6
8
10
12
14
16
18
Time
Figure 5.13. Different influences of system parameter variations
20
128
5 Plant Windup Prevention in Stable and Unstable SISO Systems
The input signal uCr (t) for the system generated in a filter designed by “asymptotic cancellation” leads to an output y(t) of the system (see the dashed transient in Figure 5.13) that can hardly be distinguished from the transient of the nominal system (i.e., when system and model coincide). The input signal uCr (t) generated in a filter designed by “exact cancellation”, however, causes distinct oscillations in the system (see solid line in Figure 5.13). Therefore, we adopt the “asymptotic cancellation” design for the trajectory generator. Figure 5.14 shows an extended reference shaping filter with four cascades, which is discussed in the sequel. The phases ΦL (ω) of the frequency responses
˜ a (jω) D ˜ b (jω) D ˜ c (jω) D , , and ˜ a (jω) D ˜ b (jω) D(jω) D
˜ d (jω) D remain within the region −90◦ < ΦL (ω) < 90◦ if one pair of complex ˜ c (jω) D
conjugate poles is shifted to the real axis in each cascade, so that its distance from the origin of the s-plane remains constant. This means that the zeros of ˜ b (s) and D ˜ c (s) are specified such that in ˜ a (s), D the polynomials D ˜ a (s) = s(s2 + 0.46s + 529.0529)(s2 + 0.34s + 289.0289)(s + 11)2 D the pair of complex conjugate poles at −0.11 ± 11j, in ˜ b (s) = s(s2 + 0.46s + 529.0529)(s + 17)2 (s + 11)2 D the pair of complex conjugate poles at −0.17 ± 17j, and in ˜ c (s) = s(s + 23)2 (s + 17)2 (s + 11)2 D
Trajectory generator with three additional cascades
r md
mc satu0f
ud
kdT
mb satu0f
uds
kcT
uc
uCr
ma satu0f
satu0f
ucs ub
ubs ua
kbT
kaT
uas
System model
yM
xM
Figure 5.14. Trajectory generator for stable systems with four cascades
5.4 Reference Shaping Filter for Stable Systems
129
also the pair of complex conjugate poles at −0.23 ± 23j is shifted to the real axis without modifying the distance from s = 0. The pole at s = 0 should be left unchanged in the inner cascades (a), (b) and (c), because otherwise an incorrect saturation sequence would cause an oscillatory behaviour. This problem also occurs when in each of the cascades (a), (b) and (c) one pair of poles is directly placed to obtain “asymptotic cancellation”. The placement of the poles to obtain “asymptotic cancellation” is only carried out in the outer cascade (d). The characteristic polynomial of the outer cascade is then ˜ d (s) = (s + 50)(s + 21)2 (s + 15)2 (s + 9)2 D i.e., the pairs of real poles that were assigned in the inner cascades (a), (b) and (c) are now shifted to locations where an “asymptotic cancellation” is obtained of the complex conjugate zeros at −0.09 ± 9j, −0.15 ± 15j and −0.21 ± 21j. Additionally the integrating pole is shifted to s = −50. The corresponding feedback vectors in the individual cascades are (here only a limited number of digits is given, which approximately assures the desired pole shifting) kaT = 0 0 0 0 58.95371 0.04310151 0 kbT = 0 0 87.17174 −10.87894 −2.632872 11.81249 0 kcT =
1 −494.0851 −33.15115 1186.764 32.48984 −322.1509 12.75795 0 2
kdT = −598.3464 9.175589 469.1699 −65.07155 403.2637 32.65351 21.71736
With the above feedback vectors, the factors ma = mb = mc = 0 and md = 21.71736 are obtained. Figure 5.15 shows the plots of the phases ΦL (ω)
˜ a (jω) D , in a dashed line D(jω) ˜ b (jω) ˜ c (jω) ˜ d (jω) D D D , in a dash-dotted line for and in a dotted line for . for ˜ ˜ ˜ c (jω) Da (jω) Db (jω) D
of the individual cascades, namely in a solid line for
All phases stay within the region −90◦ < ΦL (ω) < 90◦ . Since the system is stable, it is sufficient to reduce the amplitude limit u0f by a small amount in relation to u0 = 1. Here, for example, one can choose u0f = 0.99. Figure 5.16 shows the reference transients of the trajectory generator. In Figure 5.16a step sequences r(t) = rS 1(t)−2rS 1(t−3)+2rS 1(t−7)−rS 1(t−10) are applied and the amplitudes are within the region 0 < rS ≤ 0.5. Figure 5.16b shows the reaction of the reference shaping filter to step sequences r(t) = rS 1(t) − 2rS 1(t − 23) + 2rS 1(t − 55) − rS 1(t − 87) where the amplitudes are now from the range 0 < rS ≤ 10.
130
5 Plant Windup Prevention in Stable and Unstable SISO Systems
Except for a short oscillatory behaviour after each reference signal change (for the background see the dashed line in Figure 5.12a), the transients are well-damped and approach the set point without overshoot. 90
60
Phase ΦL (ω)
30
0
−30
−60
−90 0 10
10
1
10
2
Frequency ω
Figure 5.15. Phase plots for the individual cascades
10
Output yM (t)
Output yM (t)
0.5
0
5
0
−5
−0.5
0
3
6
9
12
Time
(a) Small reference step amplitudes
−10
0
50
100
Time
(b) Large reference step amplitudes
Figure 5.16. Transients for the azimuth angle generated by the reference shaping filter
5.4 Reference Shaping Filter for Stable Systems
131
Now it is assumed that the system is subject to stochastic disturbances d(t), which could be wind gusts acting on the telescope (they are realized here R by the Simulink block “Uniform Random Number” with the parameters minimum = −1, maximum = 1, initial seed = 0, sample time = 1.4). When assuming that the states of the system are directly measurable, the best disturbance rejection is obtained if the nominal feedback control is ˜ designed for “exact cancellation” i.e., six zeros of D(s) = det(sI − A + bk T ) ˜ are identical to the zeros of the system and one zero of D(s) is located at s = −50. This is approximately assured by the feedback vector kT = 21.52373 0.4344719 21.57618 0.4344776 21.62832 0.4344781 21.72387
In the system investigated here, the numerator polynomial Nd (s) of the transy¯(s)
Nd (s)
is different to the numerator polynomial N (s) of fer function ¯ = D(s) d(s) y¯(s) N (s) = . When placing the poles of the closed loop below the zeros u ¯s (s) D(s)
of N (s), it seems obvious that cancellation cannot occur in the disturbance transfer function at the same time. However, it does. The zeros of the disturbance transfer function of the closed loop coincide with the zeros of N (s) provided the state feedback is assigned for “exact cancellation”. This becomes plausible by the following arguments. A controllability or an observability defect in the state equations of a system is equivalent to pole-zero cancellations in the corresponding transfer function. Since a controllability defect cannot be created by state feedback control [40], the control for “exact cancellation” produces an observability defect for the cancelled eigenvalues. This observability defect, however, is independent of the input vector bd , so that the zeros of N (s) also appear in the disturbance transfer function of the closed loop when an “exact cancellation” control is applied. Thus, the disturbance transfer function of the closed loop describes a system of the order one having a pole at s = −50. However, the input signal u(t) again exhibits a highly oscillating behaviour, which may not be acceptable in a practical application. Figure 5.17a shows the output of the controlled system caused by the disturbances and Figure 5.17b shows the corresponding input signal for the system. Assuming that the above disturbances approximately constitute the worst case, it would be sufficient to reserve an input amplitude 0.3 for disturbance rejection. Hence, when reducing the saturation amplitude u0f to u0f = 0.7, only 70% of the restricted input signal range can be used for set point tracking. At the same time, this assures non-saturated input signals for jointly acting reference and disturbance inputs. Figure 5.18a shows the reaction of the closed loop in Figure 5.1 when a reference sequence r(t) = rS 1(t)−2rS 1(t−15)+2rS 1(t−30)−rS 1(t−45) with rS = 1 is applied and the above disturbances act at the same time (amplitude limit u0f = 0.7). The input signal to the system shown in Figure 5.18b always remains below the saturation limit u0 = 1.
132
5 Plant Windup Prevention in Stable and Unstable SISO Systems
This assures that the the stabilizing feedback control is always active. If input saturation became active, the closed loop would be open and oscillations triggered by the disturbances, for example, could not be attenuated during this period. ×10−3 0.3
Controller output u(t)
4
Output y(t)
2
0
−2
−4
0.2 0.1 0 −0.1 −0.2
0
10
20
30
0
10
20
30
Time
Time
(a) Azimuth angle y(t)
(b) Controller output signal u(t)
Figure 5.17. Response of the closed loop to stochastic disturbances
1.5
1
Controller output u(t)
Output y(t)
1 0.5 0 −0.5 −1 −1.5
0
20
40
Time
(a) Azimuth angle y(t)
60
0.5
0
−0.5
−1
0
20
40
60
Time
(b) Controller output signal u(t)
Figure 5.18. Response of the closed loop to jointly acting reference and disturbance inputs
5.4 Reference Shaping Filter for Stable Systems
133
Example 5.4. Redesign of the trajectory generator of Example 5.3 by removing two of the four cascades The trajectory generator designed for the elastic system in Example 5.3 consists of four cascades. It turns out that a reference shaping filter with two cascades can be designed where the pole shifting accomplished by the three inner cascades (a), (b) and (c) in the trajectory generator in Example 5.3 is carried out in the inner cascade (a). In this reference shaping filter with two cascades only, the state feedback in the inner loop ua (t) = −kaT xM (t) + ma r(t) shifts all six complex conjugate poles of the system to real locations that are characterized by the polynomial ˜ a (s) = s(s + 23)2 (s + 17)2 (s + 11)2 D i.e., the distances of the pairs of poles to the origin of the s-plane is not changed. In the outer loop with ub (t) = −kbT xM (t) + mb r(t) the pairs of real poles are relocated on the real axis so that the corresponding characteristic polynomial becomes ˜ b (s) = (s + 50)(s + 21)2 (s + 15)2 (s + 9)2 D i.e., one obtains an “asymptotic cancellation” and the integrating pole is shifted to s = −50. The phase ΦL (ω) of the frequency response
˜ a (jω) D (inner cascade) dips D(jω) ˜ b (jω) D
down below −190◦ and the minimum value of the phase ΦL (ω) of
D(jω)
,
which is effective if the inner saturation is active while the outer signal ub (t) is not saturated, is smaller than −230◦. Consequently, even the describing function method would indicate the occurrence of limit cycles. Nevertheless, this trajectory generator with two cascades gives the same stable and well-damped reference transients for yM (t) as the reference shaping filter with four cascades in Example 5.3. An explanation of this (though no proof) is that similar transients can be obtained with a two-cascade filter with strictly proven stability (see Example 5.5). The output yM (t) of the two-cascade filter (with u0f = 0.99) due to the sequence r(t) = rS 1(t) − 2rS 1(t − 15) + 2rS 1(t − 30) − rS 1(t − 45) with rS = 1 is shown by a solid line in Figure 5.19 and it is identical with the response of the filter in Figure 5.14. The design of a two-cascade filter with proven stability will be discussed in the next example.
134
5 Plant Windup Prevention in Stable and Unstable SISO Systems
Example 5.5. Design of a two-cascade filter with proven stability for the elastic system Figure 5.20 shows the block diagram of the reference shaping filter for the elastic system with two cascades, which allows a strict proof of stability. 1.5
Output yM (t)
1
0.5
0
−0.5
−1
−1.5
0
5
10
15
20
25
30
35
40
45
50
Time
Figure 5.19. Reference transients with the two-cascade filter
r
uCr
mb satu0f
satu0r ub
kbT
ubs
ua
uas
System model
yM
kaT xM
Figure 5.20. Trajectory generator for the elastic system with proven stability
5.4 Reference Shaping Filter for Stable Systems
135
The basic idea in the design of this reference shaping filter is as follows. Reduce the saturation limit u0r of ubs (t) = satu0r (ub (t)) in the outer cascade to an extent that arbitrary reference signals r(t) do not cause input signals |ua (t)| ≥ u0f . This can be achieved by using the L1 -norm of the transfer function between the restricted signal ubs and the signal ua , which is
u ¯a (s) D(s) = when the ˜ a (s) u ¯bs (s) D
saturation element uas (t) = satu0f (ua (t)) is removed. Denoting this L1 -norm by αil and reducing the outer saturation limit according to u0r =
u0f , the inner saturation uas (t) = satu0f (ua (t)) does not αil
become active for arbitrary reference inputs. Since the phase ΦL (ω) of the frequency response
˜ b (jω) D stays within the region −90◦ < ΦL (ω) < 90◦ (see ˜ a (jω) D
the dotted line in Figure 5.15), the resulting reference shaping filter is stable for arbitrary reference inputs. Given the parameterization of the inner cascade used in Example 5.4, this u0f
= 0.306 assures non-saturating L1 -norm is αil = 3.24, so that u0r = 3.24 signals ua (t) in the scheme of Figure 5.20. The reference transients produced by this filter are shown in dotted lines in Figure 5.19. They are rather delayed in relation to the transients generated by the filter of Example 5.4. Considerably improved results (also with proven stability) can be obtained by redesigning the inner cascade. In Example 5.4 the inner cascade shifted the complex conjugate poles of the system to the real axis along circles centred at s = 0. It turns out that the transfer function
˜ b (s) D u ¯b (s) = − 1 does ˜ a (s) u ¯bs (s) D
not violate the circle criterion when this pole shift along the circles stops about halfway between the poles of the open loop and the real axis. Backed ˜ a (s), such that by numerical simulations one can try to find an “optimal” D both the circle criterion is satisfied and the resulting transient responses of the reference shaping filter settle as fast as possible. ˜ a (s) has, for example, zeros at One admissible characteristic polynomial D s1/2 = −13.965±15.685j, s3/4 = −9.975±11.204j, s5/6 = −5.985±6.722j and ˜ b (s) = (s+50)(s+21)2 (s+15)2 (s+9)2 the transfer function s7 = 0, and with D ˜ b (s) D ˜ a (s) − 1 satisfies the the circle criterion. With the above polynomial D ˜ Da (s) u ¯a (s) D(s) = is αil = 4.4. Though this ˜ a (s) u ¯bs (s) D 0.99 = = 0.225 as above, the transients shown 4.4
the L1 -norm of the transfer function
gives rise to a smaller value u0r in dashed lines in Figure 5.19 are obtained with this filter. They are nearly as good as the reference transients of the trajectory generator of Example 5.4.
136
5 Plant Windup Prevention in Stable and Unstable SISO Systems
5.5 Incorporating State-plus-disturbance Observers So far the nominal feedback controller for system stabilization and disturbance rejection was assumed to be a constant state feedback u(t) = −k T x(t) in the scheme of Figure 5.1. Now we discuss the modifications entailed by controllers containing state and disturbance observers or signal models for disturbance rejection in the sense of Davison. The system to be controlled is described by its state equations x(t) ˙ = Ax(t) + bus (t) + Bd d(t) y(t) = cT x(t) + dTd d(t) ym (t) = Cm x(t) + Dmd d(t)
(5.31)
with one control input us (t), ρ external disturbances d(t), a controlled output y(t) and p ≥ 1 measurements ym (t). There is a saturating nonlinear element us (t) = satu0 (u(t)) (see, for example, (1.1) or (2.38)) at the input of the system. The system is supposed to satisfy the usual prerequisites for the design of observer-based controllers (see Chapter 2 or the Appendix) and the application of constant reference signals. Because reduced-order state observers are also used, the measured output is subdivided according to 1 1 (t) ym Cm x(t) (5.32) ym (t) = = 2 2 (t) Cm ym 2 (t) contains the measurements directly used for computing The κ-vector ym 1 the state estimate x ˆ(t), and the (p − κ)-vector ym (t) contains the remaining measurements. In the frequency domain, the system is again characterized by its transus (s) with the transfer fer behaviour y¯(s) = G(s)¯ us (s) and y¯m (s) = Gm (s)¯ function N (s) = cT (sI − A)−1 b (5.33) G(s) = D(s)
and the p-dimensional (column) transfer vector Gm (s) = Nm (s)
1 = Cm (sI − A)−1 b D(s)
(5.34)
The state observer of the (reduced or full) order nO = n−κ with 0 ≤ κ ≤ p (see also the detailed introduction in Section A.3) is described by the differential equation (5.35) z(t) ˙ = F z(t) + Lym (t) + T bus(t) This observer is driven by the limited input signal us (t) of the system (i.e., the observer technique for the prevention of controller windup according to Chapter 2 has been applied).
5.5 Incorporating State-plus-disturbance Observers
The state estimate is 2 −1 2 y m (t) Cm xˆ(t) = = Ψ2 T z(t)
Θ
y 2 (t) m = Ψ ym (t) + Θz(t) z(t)
137
(5.36)
i.e., the abbreviation Ψ = 0n,p−κ Ψ2 is used for a compact representation of x ˆ(t). In the absence of disturbances and after the initial transients have decayed, this estimated state x ˆ(t) coincides with the true state x(t) of the system if the relations (5.37) T A − F T = LCm and Ψ Cm + ΘT = In
(5.38)
are satisfied. When replacing the state x(t) of the system by the estimate x ˆ(t) in the block diagram of Figure 5.1, the disturbance behaviour of the loop is modified (both the disturbance attenuation and the amplitudes of the output signal uCδ (t) of the controller). The reference behaviour, however, remains unchanged because input saturation us (t) = satu0 (u(t)) does not cause observation errors when the observer technique has been applied. Reference inputs consequently lead to x ˆ(t) = x(t), so that the scheme of Figure 5.1 still allows a splitting of the limited amplitude range of u(t) into a part reserved for the rejection of disturbances and the remainder for tracking. The compensation of constantly acting disturbances either requires a disturbance observer in the sense of Johnson (see Section A.5.1), where the prevention of controller windup by the observer technique applies unchanged (see Section 2.5.1), or a signal model in the sense of Davison (see Section A.5.2). To assure a prevention of controller windup also in compensators incorporating signal models for the rejection of disturbances in the sense of Davison, the modified signal model uC (t) + us (t)] v(t) ˙ = Sv(t) + bε y(t) − bσ [ˆ has to be used. At the same time the state feedback xˆ(t) u ˆC (t) = kxT kvT v(t)
(5.39)
(5.40)
should be designed so that the danger of plant windup only depends on the desired nominal state feedback u˜(t) = k T x(t) which assigns the characteristic polynomial
(5.41)
138
5 Plant Windup Prevention in Stable and Unstable SISO Systems
˜ D(s) = det(sI − A + bk T )
(5.42)
The design procedure is as follows. Given the system, the signal model and the nominal state feedback vector k T , the solution X of the Sylvester equation (see also Section A.5.2) X(A − bk T ) − SX = bε cT
(5.43)
can be computed. With this X define the vector bσ = −Xb
(5.44)
and determine the feedback vector kvT so that the matrix (S − bσ kvT ) has the desired eigenvalues. Finally compute kxT = k T − kvT X
(5.45)
With these results, the observer-based controller containing a signal model for disturbance rejection according to (5.35), (5.36), (5.39) and (5.40) is completely parameterized. Figure 5.21 shows the block diagram of the closed loop, which also contains an additional dynamic element (ADE). The ADE may be necessary for the prevention of plant windup in the presence of stable plants.
ADE ˜ Ω(s) − Ω(s) Ω(s)
δ
η d satu0
y x˙ = Ax+bus +Bd d y = cT x + dTd d ym = Cm x + Dmd d
us
uCr u
ym
uCδ r
Nonlinear reference shaping filter
x ˆ
kxT
xM
z˙ = F z+Lym +T bus x ˆ = Θz + Ψ ym
σ kT
u ˆC
kvT
v
v˙ = Sv+bε y−bσ σ
Figure 5.21. Version of the scheme of Figure 5.1 for the prevention of windup when state observers and signal models for disturbance rejection are incorporated
5.5 Incorporating State-plus-disturbance Observers
139
If no disturbances act, reference inputs give rise to coinciding trajectories x ˆ(t) = x(t) = xM (t). Therefore, reference inputs do not cause feedback signals uCδ (t) in the loop of Figure 5.21. Due to the above design procedure for the observer-based controller, the open loop transfer function between us and u in Figure 5.21 is the same as in Figure 5.1, i.e., it is determined by the nominal state feedback u ˜(t) = k T x(t). This can be shown by investigating the transfer behaviour between the signals us (t) and uˆC (t) in Figure 5.21. When inserting the state estimate (5.36) in the control signal (5.40), this transfer behaviour is characterized by the state equations ⎤⎡ ⎤ ⎡ ⎤ ⎡ ⎤ ⎡ x(t) b x(t) ˙ A 0 0 ⎥⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ F 0 ˙ ⎦=⎣ LCm ⎦⎣ z(t) ⎦ + ⎣ T b ⎦ us (t) ⎣ z(t) T T T T v(t) −bσ bε c − bσ kx Ψ Cm −bσ kx Θ S − bσ kv v(t) ˙ ⎡ ⎤ x(t) ⎢ ⎥ u ˆC (t) = kxT Ψ Cm kxT Θ kvT ⎣ z(t) ⎦ v(t) (5.46) Introducing the similarity transformation ⎡ ⎤ ⎡ ⎤ x(t) I 0 0 ⎢ ⎥ ⎢ ⎥ (5.47) ⎣ z(t) ⎦ = ⎣ T I 0 ⎦ ζ(t) v(t) X 0 I in (5.46) it takes the form ⎤ ⎡ ⎤ ⎡ b A 0 0 ⎥ ⎢ ⎥ ˙ =⎢ 0 0 F 0 ζ(t) + ζ(t) ⎦ ⎣ ⎦us (t) ⎣ T T 0 0 −bσ kx Θ S − bσ kv T T T kx Θ kv ζ(t) u ˆC (t) = k
(5.48)
where the relations (5.37), (5.38), (5.43), (5.44) and (5.45) have been used. The state equations (5.48) demonstrate that neither the state observer nor the signal model (stabilized via bσ kvT ) are controllable from the input us (t), so that u¯ ˆC (s) = k T (sI − A)−1 b¯ us (s) (5.49) holds. This shows that the transfer behaviour of the linear part of the loop in Figure 5.21 is characterized by (5.49). Therefore, the danger of plant windup is indicated by the transfer function k T (sI − A)−1 b =
˜ D(s) −1 D(s)
(5.50)
When the controller with disturbance rejecting properties has been designed in the frequency domain (see Sections A.5 and 2.5), the prevention of controller
140
5 Plant Windup Prevention in Stable and Unstable SISO Systems
windup becomes especially simple, because the frequency domain version of the observer technique shown in Figure 2.10 also applies without modifications when the controller contains signal models in the sense of Davison. The output of the controller T ¯ us (s) + Δ−1 (s)NCy (s)¯ ym (s) u ˆC (s) = Δ−1 (s)NCu (s)¯
(5.51)
¯ ¯˜(s) = k T x ¯(s), is then equivalent to u ˆC (s) = k T x¯ ˆ(s), which becomes u ¯C (s) = u provided no disturbances act on the system and the initial transients have decayed. The frequency domain equivalent to the scheme of Figure 5.21 is shown in Figure 5.22. Thus, the scheme for the prevention of windup in stable and unstable systems can equally be designed in the time and in the frequency domains. The versions for stable and unstable systems differ only slightly. On the one hand, the design of the reference shaping filter depends on the stability properties of the system (see Sections 5.3 and 5.4), and on the other hand, an ADE may be necessary in the presence of stable systems.
˜ Ω(s) − Ω(s) Ω(s)
η
δ
N (s)D−1 (s)
y
satu0 u
uCr
r
Nonlinear reference shaping filter
us
uCδ
Nm (s)D−1 (s)
ym
Δ−1 (s)NCu (s)
xM kT
u ˆC
T Δ−1 (s)NCy (s)
Figure 5.22. Frequency domain representation of the new scheme for the prevention of windup
5.5 Incorporating State-plus-disturbance Observers
141
Example 5.6. Exponentially unstable system with eigenvalues at s = 0. Design of a trajectory generator allowing the achievement of unlimited amplitudes of the controlled output We investigate the control of the inverted pendulum on a cart system, linearized about the inverted position, but with input saturation included. The system contains one exponentially unstable eigenvalue and two eigenvalues at s = 0. The measured outputs are the cart position y1 (t) and the deviation y2 (t) of the angle of the pendulum from the inverted position. The controlled output y(t) is the cart position and u(t) is the control input for the cart drive. Following [66] the data are taken from the “Inverted Pendulum with R R in MATLAB . Animation” demo in Simulink us (s) of the pendulum is characThe transfer behaviour y¯m (s) = Gm (s)¯ terized by Nm1 (s) 1 Gm (s) = with Nm2 (s) D(s) Nm1 (s) ≡ N (s) = c12 s2 + c10 = 2.19762817s2 − 70.615056971 Nm2 (s) =
c22 s2 4
= −7.2059s 2
2
(5.52)
and
4
D(s) = s + a2 s = s − 46.96086784s2 The state space description x(t) ˙ = Ax(t) + bus (t) y(t) = cT x(t) ym (t) = Cm x(t) of the pendulum is parameterized by ⎡ ⎤ −6.8528 0 0 1 ⎢ 0 0 1 0 ⎥ ⎥, A=⎢ ⎣ 0 0 0 0 ⎦ 0 0 0 6.8528 cT = −0.0963 1 0 0
and Cm
⎡
⎤ 0 ⎢ ⎥ 0 ⎥ b=⎢ ⎣ 1.5037 ⎦ −7.2059 −0.0963 1 0 0 = 1 0 0 0
The eigenvalues of the pendulum are located at s1 = 6.8528, s2/3 = 0 and s4 = −6.8528. The saturation limit is u0 = 10, and the observer-based controller is intended to reject constant disturbances (i.e., it has an integral action characterized by Dd (s) ≡ det(sI − S) = s). It is assumed that the nominal state feedback shifts the eigenvalues of the system to s1/2/3 = −6.8528 and s4 = −7, and that the eigenvalues of the (completely reduced-order) observer and of the stabilized signal model (i.e., the overall observer) are also located at s = −7. Thus, the characteristic polynomial of the controlled system has the form
142
5 Plant Windup Prevention in Stable and Unstable SISO Systems
˜ D(s) = s4 + a ˜ 3 s3 + a ˜ 2 s2 + a ˜1 s + a ˜0 = (s + 6.8528)3(s + 7)
(5.53)
Given the characteristic polynomials ΔO (s) = (s + 7)2 of the state observer and Δd (s) = s+7 of the controlled signal model, the characteristic polynomial Δ(s) = ΔO (s)Δd (s) of the overall observer (see Sections A.5.2 and 2.5.2) obtains the form Δ(s) = s3 + δ2 s2 + δ1 s + δ0 = (s + 7)3
(5.54)
˜ The desired eigenvalues of the controlled system (i.e., the zeros of D(s)) are assigned by k T = 0 −31.90104 −18.52284 −7.689699 where only a finite number of digits is shown. The state observer of (minimal) order two with the state equation z(t) ˙ = F z(t) + Lym (t) + T bus (t) is parameterized by −7 0 49 4.922613216 F = , L= and 0 −7 −49 −4.514786784 1.38528 7 −1 −0.1 T = 1.38528 −7 1 −0.1 With these results the state estimate (5.36) is parameterized by the two matrices ⎡ ⎤ ⎡ ⎤ 0 1 0 0 ⎢ 1 ⎢ 0.0963 ⎥ 0 0⎥ ⎥ and Θ = ⎢ ⎥ Ψ =⎢ ⎣ 7 ⎦ ⎣ 0.6741 −0.5 0.5 ⎦ 0 13.8528 −5 −5 With S = 0 and bε = 1 the state equation (5.39) of the modified signal model is uC (t) + us (t)] v(t) ˙ = y(t) − bσ [ˆ Given the above data for k T , A, S, b, bε and cT , the solution of the Sylvester equation (5.43) is X = 0.01405265 −0.5806344 −0.1575439 −0.03722583 and when using (5.44) one obtains bσ = −0.03134694. The desired eigenvalue of (S − bσ kv ) at s = −7 is assigned by the factor kv = −223.3073, and this leads to the characteristic polynomial of the controlled signal model ˆ det(sI − S + bσ kv ) = (s + 7). Δd (s) = Finally the feedback vector kxT = 3.138059 −161.5609 −53.70353 −16.00250 is obtained from (5.45). This concludes the parameterization of the observerbased controller incorporating integral action.
5.5 Incorporating State-plus-disturbance Observers
143
The trajectory generator is designed to allow the tracking of reference inputs r(t) = rS 1(t) with unlimited amplitudes rS . The inner cascade of the trajectory generator according to Figures 5.2 or ˜ a (s) are located 5.5 will be designed (with ma = −1) so that the zeros of D at s1 = 0, s2 = −6.8528 (i.e., the stable eigenvalue remains unchanged) and s3/4 = −0.8. This corresponds to a feedback vector kaT = 0 0 −0.06210845 −1.185999 Since the L1 -norm of
D(s) m is αil = 8.635, a saturation limit r0 = 1.16 ˜ a (s) a D
assures that completely arbitrary reference signal changes do not cause input signals ua (t) that exceed the input saturation limit u0 = 10. If, however, only step-like reference signals are applied when the inverted pendulum has attained its stationary position after the previous change of the set point, a value r0 = 1.667 is sufficient to assure |ua (t)| < 10. First the filter with saturation limit r0 = 1.667 is investigated. For this filter we shall demonstrate what happens if signals |ua (t)| > 10 occur. Therefore, the model of the system in this trajectory generator contains a saturating element uas (t) = satu0 (ua (t)) at its input, so that the output signal uCr (t) of this filter is uCr (t) = uas (t). The influence of disturbances is neglected here. This is justified in a simulation study. As long as the condition |ua (t)| ≤ 10 is satisfied, the inner loop is a stable linear system with input saturation ubs (t) = satr0 (ub (t)). Assigning the feedback vector kbT in ub (t) = −kbT xM (t) + mb r(t) so that the polynomial ˜ ˜ b (s) = det[sI − AM + bM (k T + ma k T )] leads to a phase ΦL (ω) of Db (jω) D a b
˜ a (jω) D
that remains in the region −90◦ < ΦL (ω) < 90◦ (circle criterion), the resulting reference shaping filter is stable for arbitrary amplitudes of the reference input. The above condition for the phase ΦL (ω) is satisfied, for example, when ˜ b (s) = (s + 1)2 (s + 2)(s + 5.67). This selecting the characteristic polynomial D assures a compensation of the zero of N (s) at s = −5.67. The corresponding feedback vector is kbT = 0.5810409 0.1605890 0.3676866 0.2456446 . Vanishing tracking errors yM (∞) − r(∞) result for mb =
˜ b (0) 1 D , which leads to N (0) ma
mb = 0.1605890. The transients caused by small changes of the reference signal can be improved considerably when extending this filter by an additional cascade uc (t) = −kcT xM (t) + mc r(t), which is designed to assure that the phase ΦL (ω) of
˜ c (jω) D remains in the region −90◦ < ΦL (ω) < 90◦ , where the polynomial ˜ b (jω) D
˜ c (s) is defined as D ˜ c (s) = det sI − AM + bM kaT + ma (k T + kcT ) . D b
144
5 Plant Windup Prevention in Stable and Unstable SISO Systems
˜ c (s) = (s+3.8)3 (s+5.67), and the corresponding feedThis is the case for D T back vector is kc = − 0.4815961 4.245330 3.825620 1.825252 . Vanishing tracking errors yM (∞) − r(∞) result for mc =
˜ c (0) 1 D − mb = 4.245330. N (0) ma
100
2
50
1
Output y2 (t)
Output y(t) = y1 (t)
Thus, the reference shaping filter is also completely parameterized and the loop shown in Figure 5.21 (with stabilizing feedback control but without ADE) can be realized. Figure 5.23 shows the reference step responses of this loop. The cart position y(t) = ˆ y1 (t) (Figure 5.23a) and the deviation y2 (t) of the pendulum angle from the inverted position (Figure 5.23b) are shown. It is obvious that the cart attains the desired final position without overshoot.
0
−1
−50
−100
0
0
10
20 Time
30
−2
40
(a) Cart position y1 (t)
0
10
20 Time
30
40
(b) Pendulum angle y2 (t)
Input signal ua (t)
10
5
0
−5
−10
0
10
20 Time
30
40
(c) Corresponding signal ua (t) Figure 5.23. Response of the inverted pendulum to a reference step sequence
5.5 Incorporating State-plus-disturbance Observers
145
100
15
50
10
Input signal ua (t)
Output yM (t)
Figure 5.23c demonstrates that reference signals do not cause signals |ua (t)| > 10 in this trajectory generator, so that the inner loop is a linear stable system as assumed in the design. This, however, is only true if step-like changes of the reference signal take place when the pendulum is at rest. Figure 5.24a shows the response of the trajectory generator when this assumption is not satisfied. Since the change of r(t) from rS = −100 to rS = 0 occurs before yM (t) has reached the set point yM (t) = −100, an input signal ua (t) > 10 results (see Figure 5.24b). This leads to an unstable transient of the trajectory generator and, therefore, also of the controlled pendulum. Whenever unexpected changes of the reference input cannot be ruled out, one should use the more conservative design of the reference generator, which assures that arbitrary reference signals do not cause signals |ua (t)| > 10. It was shown above that a saturation limit of r0 = 1.16 is required to achieve this. When r0 is reduced to the safe value of 1.16, stable transients are obtained for completely arbitrary changes of the reference signal. In the following discussions r0 = 1.16 is assumed. The position of the cart exhibits a non-minimum phase behaviour, because a zero of N (s) is located at s = +5.67. For larger reference step inputs (as in Figures 5.23 and 5.24) this is not visible in the plot. Figure 5.25a shows the cart position y(t) due to a reference input r(t) = 1(t). In spite of a positive reference input, the cart moves initially towards the negative direction. This is necessary to divert the pendulum far enough from its vertical position, so that an acceleration of the cart in the positive direction
0 −50 −100 −150
0
5
10
15
20
Time
(a) Cart position yM (t)
25
5 0 −5 −10
0
5
10
15
20
25
Time
(b) Input signal to the inner cascade
Figure 5.24. Response of the trajectory generator when a reference step is applied before the pendulum is at rest
146
5 Plant Windup Prevention in Stable and Unstable SISO Systems
1
Output y2 (t)
Output y(t) = y1 (t)
0.3
0.5
0.2
0.1
0
0 0
1
2
3
−0.1
4
0
1
Time
2
3
4
Time
(a) Cart position y(t)
(b) Angle y2 (t) of the pendulum
Figure 5.25. Reference transients demonstrating the non-minimum phase behaviour of the cart position
does not topple the pendulum. See also the pendulum angle y2 (t) in Figure 5.25b. Since all eigenvalues are real and at least one eigenvalue is located to the right of the zero of N (s) at s = −5.67 in all cascades, there is no overshoot of the cart position. When applying the frequency domain design to the control problem under consideration, the polynomial equation (A.137) (see also (2.82)) ˜ (s)Nm2 (s) + DC (s)D (s) = Δ(s)D(s) NCy1 (s)Nm1 (s) + NCy2
˜ must be solved. The given polynomials are Nm1 (s) = ˆ N (s), D(s), Δ(s) (see (5.52), (5.53) and (5.54)) (s) = sNm2 (s) = c22 s3 = ˆ ζ32 s3 Nm2
5
3
and
5
D (s) = sD(s) = s + a2 s = ˆ s + α3 s3
The unknown polynomials of the controller are (s) = p2 s2 + p1 s + p0 DC NCy1 (s) = l31 s3 + l21 s2 + l11 s + l01 NCy2 (s) = l22 s2 + l12 s + l02
The system of linear equations (A.142) for the comparison of coefficients in (A.137) is
5.5 Incorporating State-plus-disturbance Observers
⎡
1 ⎢0 ⎢ ⎢ a2 ⎢ ⎢0 ⎢ ⎢0 ⎢ ⎢0 ⎢ ⎣0 0
0 1 0 a2 0 0 0 0
0 0 1 0 a2 0 0 0
0 0 c12 0 c10 0 0 0
0 0 0 c12 0 c10 0 0
0 0 0 0 c12 0 c10 0
0 0 0 0 0 c12 0 c10
0 0 c22 0 0 0 0 0
0 0 0 c22 0 0 0 0
⎡ ⎤ p ⎡ ⎤ 2 ⎢ p 1 0 ⎢ 1⎥ ⎥ ⎢ p ⎥ ⎢ ˜3 0⎥ ⎥⎢ 10 ⎥ ⎢ a ⎢ ⎥ ⎢ ˜2 0⎥ ⎥⎢ l31 ⎥ ⎢ a ⎥ ⎢ ˜1 ⎥ 0 ⎥⎢ ⎢ l2 ⎥ ⎢ a 2 ⎥⎢ 1 ⎥ = ⎢ ˜0 c2 ⎥⎢ l1 ⎥ ⎢ a ⎢ 1⎥ ⎢ 0⎥ ⎥⎢ l0 ⎥ ⎢ 0 ⎣ 0 2 ⎥ 0 ⎦⎢ ⎢ l2 ⎥ ⎣ ⎦ 2 0 0 l1 l02
0 1 a ˜3 a ˜2 a ˜1 a ˜0 0 0
0 0 1 a ˜3 a ˜2 a ˜1 a ˜0 0
147
⎤ 0 0 ⎥ ⎥⎡ ⎤ 0 ⎥ ⎥ 1 ⎢ ⎥ 1 ⎥ ⎥⎢ δ2 ⎥ ⎥ a ˜3 ⎥⎣ δ1 ⎦ a ˜2 ⎥ ⎥ δ0 a ˜1 ⎦ a ˜0
It is underdetermined with eight equations for the ten unknown parameters in the polynomials DC (s), NCy1 (s) and NCy2 (s). Consequently two free parameters exist. The rank of the matrix of coefficients decreases when the columns that multiply the parameters p2 , p1 , l21 , l11 , l01 and l12 are eliminated. However, the linear system of equations ⎡
1 ⎢0 ⎢ ⎢ a2 ⎢ ⎢0 ⎢ ⎢0 ⎢ ⎢0 ⎢ ⎣0 0
0 1 0 a2 0 0 0 0
0 0 1 0 a2 0 0 0
0 0 0 c12 0 c10 0 0
0 0 0 0 c12 0 c10 0
0 0 0 0 0 c12 0 c10
0 0 0 c22 0 0 0 0
⎤⎡ ⎤ ⎡ ⎤ 0 p2 1 ⎥ ⎢p ⎥ ⎢ 0⎥ a ˜ 3 + δ2 ⎥⎢ 1 ⎥ ⎢ ⎥ 1 1 2 2 ⎥ ⎢ ⎥ ⎢ 0 ⎥⎢ p0 ⎥ ⎢ a ˜2 + a ˜ 3 δ2 + δ1 −c2 l3 − c2 l2 ⎥ ⎥ ⎢ l21 ⎥ ⎢ a ⎥ 0⎥ ˜1 + a ˜ 2 δ2 + a ˜ 3 δ1 + δ0 ⎢ ⎢ ⎥ ⎥ ⎥ 2 ⎥⎢ 1 ⎥ = ⎢ 1 1 ⎥ c2 ⎥⎢ l1 ⎥ ⎢ a ˜0 + a ˜ 1 δ2 + a ˜ 2 δ1 + a ˜ 3 δ0 −c0 l3 ⎥ 1⎥ ⎥ ⎢ ⎢ ⎥ 0 ⎥⎢ l0 ⎥ ⎢ a ˜ 0 δ2 + a ˜ 1 δ1 + a ˜ 2 δ0 ⎥ ⎦ 0 ⎦⎣ l12 ⎦ ⎣ a ˜ 0 δ1 + a ˜ 1 δ0 0 a ˜ 0 δ0 l02
has a unique solution for arbitrary values of the two independent parameters l31 and l22 . When selecting l31 = −450 and l22 = −280 one obtains the polynomials DC (s) = s(s + 47.95873)(s + 0.5996687) NCy1 (s) = −450(s2 + 2.4439426s + 2.7240331)(s + 8.926354) and NCy2 (s) = −280s(s + 7.628683)(s + 4.864799) of the controller. Relation (2.84) determines the polynomial NCu (s) = DC (s) − Δ(s) = 27.5584(s − 6.274257)(s + 1.983708) which is required for a realization of the controller in the observer structure. When realizing this controller and the above-designed trajectory generator according to Figure 5.22, the transients of the closed loop shown in Figures 5.23 through 5.25 result. The controllers parameterized in the time domain and in the frequency domain are not identical. They assure, however, identical reference transients and almost coinciding responses of the closed loop to input disturbances.
148
5 Plant Windup Prevention in Stable and Unstable SISO Systems
Example 5.7. Exponentially unstable system with eigenvalues at s = 0. Design of a trajectory generator for restricted amplitudes of the controlled output The trajectory generator in Example 5.6 was designed to track reference signals with arbitrarily large amplitudes in spite of the existing saturation limit u0 = 10. In a technical realization of the inverted pendulum, the range of the cart position is, of course, restricted. In what follows it is assumed that the maximum achievable cart position is limited by r0 = 10, i.e., the cart can only be positioned within the range −10 < y(t) < 10. In order to compare the results obtained in Examples 5.6 and 5.7, it is also assumed that step-like reference changes only take place when the pendulum is at rest. When outputs with finite amplitudes have to be handled, all eigenvalues assigned by the inner cascade ua (t) = −kaT xM (t) + ma ubs (t) can have negative real parts. Since the parameter r0 delimits the achievable amplitude of the output yM (t) in the structure of Figure 5.2, the zeros of the ˜ a (s) = det(sI − AM + bM kaT ) have to be placed so that even in polynomial D the worst case (equivalent to a sudden change of ubs (t) from one limit to the opposite) the limitation |ua (t)| ≤ u0 = 10 is obeyed. This is assured by ˜ a (s) = (s + 6.8528)(s + 1.7)3 D ˜ a (s) are assigned by the feedThe zeros of this characteristic polynomial D T back vector ka = 0 −0.4767794 −0.9109499 −1.848845 , and vanishing tracking errors in the steady state are assured by ma = −0.4767794. The next cascade ub (t) = −kbT xM (t) + mb r(t) ˜ b (s) = det[sI −AM +bM (k T +ma k T )] assures is assigned so that the resulting D a b a phase ΦL (ω) of
˜ b (jω) D that remains in the range −90◦ < ΦL (ω) < 90◦ . ˜ a (jω) D
3 ˜ This is the case for Db (s) = (s + 6.8528)(s + 5) with a corresponding T feedback vector kb = 0 24.44270 17.06774 6.443204 and mb = 25.44270. Up to this point, the stability of the reference shaping filter can be proven in a rigorous way. Improved transients can be obtained, however, when augmenting the filter 4 ˜ by an additional cascade (c), which is characterized by Dc (s) = (s + 12) , a T corresponding vector kc = 4.350532 590.4573 186.3216 46.49150 , and by
˜ ˜ c (s) the phase ΦL (ω) of Dc (jω) also stays within mc = 590.4573. With this D ◦
◦
the range −90 < ΦL (ω) < 90 .
˜ b (jω) D
5.5 Incorporating State-plus-disturbance Observers
149
To prevent a wrong saturation sequence in the filter with the additional cascade (c), the factors mb and mc must be modified to assure coinciding amplitudes ub (∞) = uc (∞). This is obtained with the modified factors m∗b = mb − 1 and m∗c = mc + 1. The trajectories generated by the reference shaping filter can, of course, only be realized when the exponentially unstable system is stabilized by a feedback control. For this purpose, the observer-based controller with integral action as designed in Example 5.6 is used here. The solid line in Figure 5.26a shows the reference step response of the cart position when the maximum achievable amplitude rS = 10 is applied. The transient shown in the dashed line in Figure 5.26a results from the trajectory generator of Example 5.6, which was designed to achieve unlimited output signals. The transients are quite similar, but the settling time of the trajectory generated by the reference shaping filter of Example 5.6 is significantly shorter. As rS = 10 constitutes the maximum achievable amplitude in the shaping filter for limited output amplitudes, both cascades (b) and (c) are permanently saturated for this input r(t). Therefore, only the inner cascade is active, so that the speed of the transients is limited by the three (slowest) eigenvalues of the inner cascade at s = −1.7. In the reference shaping filter of Example 5.6, even the outer cascade becomes active in the vicinity of rS = 10, and its slowest three eigenvalues are located at s = −3.8. ×10−3
15
10
Example 5.7
5
Output y(t)
Output y(t)
10
Example 5.6
0 −5
5
Example 5.7
0
−10 −15
Example 5.6 −5
0
10
20
30
40
Time
(a) For a reference input amplitude rS = 10
0
0.5
1
1.5
2
Time
(b) For a reference input amplitude rS = 0.01
Figure 5.26. Comparison of transients obtained with the trajectory generators of Examples 5.6 and 5.7
150
5 Plant Windup Prevention in Stable and Unstable SISO Systems
For smaller reference step amplitudes, the transients of the trajectory generator designed for the limited range −10 < y(t) < 10 settle much faster than the transients of the generator for unlimited amplitudes, because in the former the eigenvalues assigned in each cascade are considerably “faster” than in the latter. For very small input amplitudes, the improved behaviour of the trajectory generator for limited amplitudes becomes especially evident. Figure 5.26b shows a comparison of the trajectories generated by the shaping filter of Example 5.6 (dashed line) and the shaping filter of Example 5.7 (solid line) for a step amplitude rS = 0.01. In the reference shaping filter considered in this example, the transients of the cart position exhibit an overshoot. Figure 5.27a shows reference step responses in the amplitude region 0 < rS ≤ 1. The overshoots are due to the zero of N (s) at s = −5.67. If all cascades are active, this zero is dominant and it causes the observed overshoot. These overshoots can be prevented by placing one zero of the polynomial ˜ ˜ c (s) at s = −5.67. A phase |ΦL (ω)| < 90◦ of Dc (jω) is, for example, obtained D ˜ b (jω) D
˜ c (s) = (s + 5.67)(s + 16)3 . The zeros of this polynomial are assigned by for D the feedback vector kcT = −5.610919 664.3653 232.0199 57.6780 , which gives rise to mc = 664.3653. Figure 5.27b shows the transients obtained with this modified outer cascade and it is obvious that overshoots no longer occur.
1
Output y(t)
Output y(t)
1
0.5
0.5
0
0 0
0.5
1
1.5
2
Time
(a) Zero of N (s) not compensated
0
0.5
1
1.5
2
Time
˜ c (s) (b) Zero of N (s) compensated by D
Figure 5.27. Reference transients of the cart position for small input amplitudes
5.6 Application of the New Scheme to General Controllers
151
5.6 Application of the New Scheme to General Controllers So far we have assumed observer-based feedback control. The scheme that uses feedforward control for reference tracking and feedback control for system stabilization and disturbance rejection, however, can also be applied in the presence of classical P, PI, or PID controllers. To allow for more general controllers, the systems considered are assumed to have a control input us (t), a controlled output y(t) and p ≥ 1 measured outputs ym (t), characterized by their transfer behaviour us (s) y¯m (s) = Gm (s)¯
(5.55)
For p = 1, Gm (s) is a transfer function and in the presence of p > 1 measurements, Gm (s) is a column transfer vector ⎡ ⎤ Nm1 (s) ⎢ ⎥ 1 .. (5.56) Gm (s) = Nm (s)D−1 (s) = ⎣ ⎦ . D(s) Nmp (s) The transfer behaviour between the disturbance input d(t) and the system ¯ output ym (t) is denoted by y¯m (s) = Gmd (s)d(s). There is a controller (P, PI, PID or a more general compensator) whose transfer behaviour ym (s) (5.57) u¯C (s) = GTCy (s)¯ assures the desired disturbance rejection. In the case of one measured output, GCy (s) is a transfer function, and for p > 1 it is a row transfer vector −1 T (s)NCy (s) = GTCy (s) = DC
1 NCy1 (s) · · · NCyp (s) DC (s)
(5.58)
Given is a state space model x˙ M (t) = AM xM (t) + bM ua (t) ymM (t) = CmM xM (t)
(5.59)
of the system to be controlled. It is assumed that this model is correct, i.e., that the transfer function GmM (s) = CmM (sI − AM )−1 bM of the model coincides with Gm (s) in (5.55). Therefore a trajectory generator for the system can be designed along the lines of Sections 5.3 and 5.4. Figure 5.28 shows a block diagram of the considered control scheme for general controllers, however without measures for the prevention of controller windup. Since the output signal uCr (t) of the trajectory generator never exceeds the saturation limit u0 , it produces an output ym (t) of the system which coincides with the output ymM (t) of the model. In the absence of disturbance signals, this leads to vanishing signals uCδ (t).
152
5 Plant Windup Prevention in Stable and Unstable SISO Systems d
satu0 u
uCr
r
Nonlinear xM reference shaping filter
us
ym
Nm (s)D−1 (s)
uCδ −1 T DC (s)NCy (s)
ε
ymM
Figure 5.28. General controller with reference shaping filter
Only disturbance inputs cause a feedback signal uCδ (t) = 0 in the scheme of Figure 5.28. Therefore, in unstable systems, the stability of the closed loop can be assured by reserving one part βu0 with 0 < β < 1 of the constrained input u(t) for disturbance rejection and the remaining part (1 − β)u0 for tracking (see also Section 5.2). This guarantees unconstrained input signals u(t) and consequently there is no danger of controller or plant windup. In stable systems, the occurrence of signals |u(t)| > u0 must not be prevented, i.e., disturbances may be allowed to drive u(t) past the limits of input saturation. Controller and plant windup problems may then occur. Both, however, can be removed systematically in the presence of stable systems. Section 2.4 shows how the observer technique can be applied to general controllers. Of course, all approaches to prevent controller windup can also be used. The modifications entailed by this are described in Chapter 4. The observer technique requires a factorization of the characteristic polynomial T (s)Nm (s) (5.60) CP (s) = DC (s)D(s) + NCy of the closed loop according to ˜ Cp (s) = Δ(s)D(s)
(5.61)
˜ Here D(s) is a polynomial of the degree n, the order of the system, and Δ(s) a polynomial of the degree nO , the order of the controller. Using the polynomial NCu (s) = DC (s) − Δ(s)
(5.62)
a realization of the controller according to Figure 2.10 (observer technique) prevents controller windup. Figure 5.29 shows the application of the observer technique to the loop in Figure 5.28. The ADE may be necessary if this scheme is applied to stable systems. Included is also a necessary modification to assure a vanishing signal uCδ (t) for reference inputs. The element with transfer function Δ−1 (s)NCu (s) is now driven by the difference [us (t) − uCr (t)].
5.6 Application of the New Scheme to General Controllers
153
˜ Ω(s) − Ω(s) Ω(s)
d
satu0 uCr
us
u
Nm (s)D−1 (s)
ym
uCδ r
Nonlinear xM reference shaping filter ymM
Δ−1 (s)NCu (s)
T (s) Δ−1 (s)NCy
ε
Figure 5.29. Modified scheme of Figure 5.28 when input saturation can be caused by disturbances in the presence of stable systems
After an application of the observer technique, the linear part of the loop has the transfer behaviour u ¯(s) = −GL (s)¯ us (s) with GL (s) = If the phase ΦL (ω) of
˜ D(s) −1 D(s)
(5.63)
˜ D(jω) is not within the range defined by the chosen staD(ω)
bility criterion (see Section 3.2), plant windup can occur. It can be prevented by an ADE according to Section 3.3. Figure 5.29 shows the frequency domain version of the ADE. The linear part of the loop is modified by the ADE and this leads to us (s) with u ¯(s) = −GLΩ (s)¯ GLΩ (s) =
˜ D(s)Ω(s) −1 ˜ D(s)Ω(s)
(5.64)
˜ Using the monic Hurwitz polynomials Ω(s) and Ω(s) of equal degree, the phase ΦLΩ (ω) of the frequency response
˜ D(jω)Ω(jω) can always be made to ˜ D(jω)Ω(jω)
stay in a range that assures the prevention of plant windup (see Chapter 3). Since the systems are allowed to have more than one measured output, the block diagram in Figure 5.29 can be regarded as an alternative to the scheme of Figure 5.22.
154
5 Plant Windup Prevention in Stable and Unstable SISO Systems
Example 5.8. Trajectory generator for a SISO system with a PI feedback controller. Discussion of different parameterizations of the filter and the ADE We consider the system of Example 3.5 with the transfer function Gm (s) ≡ G(s) =
(s + 0.3)(s + 0.5) N (s) = D(s) (s + 0.01)2 (s + 2)
The saturation limit is u0 = 1, which leads to a maximum achievable output amplitude ymax = 750. The transfer function of the controller is GCy (s) =
17(s + 1) NCy (s) = DC (s) s
This controller is intended to give the desired rejection of input disturbances (i.e., Gd (s) = G(s)). As disturbances are allowed to drive the input signal into saturation, the observer technique should be applied. The factorization (5.61) has already been carried out in Example 3.5. Using these results, one obtains ˜ D(s) = (s2 + 1.4317s + 0.51585)(s + 0.28570) Δ(s) = s + 17.303 and NCu (s) = −17.303. The minimum value of the phase ΦL (ω) of
˜ D(jω) D(ω)
is −141◦, so that even the limit of the phase design aid is violated. Using ˜1 (s) = s + 1.5, the phase an ADE parameterized by Ω1 (s) = s + 0.03 and Ω ΦLΩ1 (ω) of
˜ D(jω)Ω 1 (jω) stays in the region −90◦ < ΦLΩ1 (ω) < 90◦ . This ˜ D(jω)Ω1 (jω)
allows a strict proof of stability for the nonlinear loop. As discussed in Example 3.5, well-damped transients without overshoot also result when employing an ADE parameterized by the pair Ω2 (s) = s+0.1 ˜2 (s) = s + 1, giving a phase |ΦLΩ2 (ω)| < 120◦ . and Ω Discussed are two reference shaping filters, namely one with strictly proven stability, and another one giving improved transients (without proof of stability). The filter design uses a state space model of the system parameterized by ⎡ ⎤ ⎡ ⎤ −2.02 −0.0401 −0.0002 1 ⎦, bM = ⎣ 0 ⎦ and cTM = 1 0.8 0.15 0 0 AM = ⎣ 1 0 1 0 0 To obtain strictly proven stability, the only cascade ua (t) = −kaT xM (t) + ma r(t) of the filter with uas (t) = satu0f (ua (t)) (see Section 5.4) must assure that the phase ΦL (ω) of
˜ a (jω) D is restricted to −90◦ < ΦL (ω) < 90◦ (circle D(jω)
5.6 Application of the New Scheme to General Controllers
155
˜ a (s) = (s + 2)(s + 0.058)2 , assigned by criterion). This is the case for D T 0.096 0.195264 0.006528 and giving rise to ma = 0.13456/3. A satka = uration limit u0f = 0.98 allows 98% of the restricted amplitude range to be used for tracking, i.e., the achievable output range is −735 < yM (t) < 735. The dashed transient in Figure 5.30a shows the response of this filter with proven stability to an input r(t) = rs 1(t) with rS = 50. The two eigenvalues of (AM − bM kaT ) at s = −0.058 are responsible for the sluggish response. 1
Signals uas (t) and ubs (t)
50
Output yM (t)
40
Two cascades
30
One cascade
20 10 0
0
50
100
ubs
0.5
uas
0
−0.5
−1
0
Time
50
100
Time
(a) Output yM (t) in the filter with one (b) Wrong saturation sequence in the and two cascades two-cascade filter Figure 5.30. Signals in the reference shaping filter
Considerably improved transients can be obtained by adding a second cascade. This changes the inner cascade to ua (t) = −kaT xM (t) + ma r(t) + ubs (t) with the above kaT , ma and ubs (t) = satu0f (ub (t)). The outer cascade is ub (t) = −kbT xM (t) + mb r(t) When selecting kbT = 0.544 1.193536 0.211072 and mb = 4.22144/3, the ˜ b (s) = det[sI − AM + bM (kaT + k T )] are located at s1 = −2 zeros of D b and s2/3 = −0.33 so that also kbT (sI − AM + bM kaT )−1 bM satisfies the circle criterion. Coinciding stationary signals ua (∞) and ub (∞) are assured by m∗a = ma − 0.004/3 = 0.04352 and m∗b = mb + 0.004/3 = 1.40848 Compared to the filter with only one cascade, the two-cascade filter assures a faster decay of tracking errors. However, slight overshoots (1.3%) occur for
156
5 Plant Windup Prevention in Stable and Unstable SISO Systems
input amplitudes rS > 11. These are due to the wrong saturation sequence shown in Figure 5.30b for an input with rS = 50. Between time t = 44.9 and t = 46.6, the inner signal ua (t) (solid line) is saturated while the outer signal ub (t) (dashed line) is not. This wrong saturation sequence happens in spite of the modified factors m∗a and m∗b . The background of this is discussed in Remark 5.2. The signal ua (t) in the inner cascade changes from one saturation limit to the other (bang-bang behaviour). This, however, should only occur in the outer cascade. A bang-bang behaviour in an inner cascade can be eliminated by reduced ˜ a (s) phase limits in all cascades (Remark 5.2). When assigning the zeros of D ˜ ˜ b (s) such that the phases ΦL (ω) of Da (jω) and and D D(jω)
˜ b (jω) D remain ˜ Da (jω)
in the region −80◦ < ΦL (ω) < 80◦ , the bang-bang behaviour in the inner cascade no longer occurs, so that the filter transients are well-damped without overshoot in the whole signal range −735 ≤ rS ≤ 735. This is assured by ˜ a (s) = (s + 2)(s + 0.045)2 and D ˜ b (s) = (s + 2)(s + 0.2)2 , which is equivalent D T to ka = 0.07 0.141925 0.00385 and kbT = 0.31 0.657975 0.07595 , and leads to m∗a = 0.077/3 and m∗b = 1.523/3. The solid line in Figure 5.30a shows the reference transient for an input amplitude of rS = 50. The improvement is obvious when comparing it to the dashed transient of the one-cascade filter. Since the output signal uCr (t) ≡ uas (t) of the trajectory generator is limited to |uCr (t)| ≤ 0.98, saturation does not become active at the input of the system. Therefore, the reference transients produced by the schemes in Figures 5.28 and 5.29 are not impaired by windup effects. If, however, disturbances act during reference transients, input saturation us (t) = satu0 (u(t)) may become active. With the above polynomial NCu (s), controller windup is prevented in the scheme of Figure 5.29. ˜ Two pairs of polynomials Ω(s) and Ω(s) for the prevention of plant windup have been chosen above. Their influence on the disturbance rejecting properties will be discussed in the sequel. Assume that in addition to a reference input with rS = 10 an input disturbance d(t) = dS 1(t) with dS = −0.6 acts on the system. In a realization of the loop as in Figure 5.28 this causes unstable transients, mainly because of controller windup due to the integrator. In the loop of Figure 5.29 controller windup is removed by the observer technique and plant windup by the ADE. Figure 5.31 shows the transients of the loop in Figure 5.29 when both reference and disturbance inputs occur. The dotted line is the reference response without disturbance input (i.e., dS = 0), and the dash-dotted line shows the transient for dS = −0.6 when the ADE is parameterized by the polynomials ˜1 (s), designed to satisfy the circle criterion. Windup does not ocΩ1 (s) and Ω cur, but the transients are considerably more sluggish than for dS = 0. This is caused by the “slow” eigenvalue of the ADE at s = −0.03. When applying the ˜ 2 (s), which was designed to satisfy the ADE parameterized by Ω2 (s) and Ω
5.6 Application of the New Scheme to General Controllers
157
10
Output y(t)
8
rs = 0
6
4
rs = −0.6 2
0
0
5
10
15
20
25
30
35
40
45
50
Time
Figure 5.31. Joint reference and disturbance inputs
phase design aid, the dashed transient in Figure 5.31 results. It is considerably improved because the eigenvalue of this ADE is located at s = −0.1. Numerous simulation studies have shown that input saturation due to disturbances only causes problems in a control scheme with trajectory generator when the existing plant windup is very severe (when, for example, limit cycles can occur). In this example, the phase ΦL (ω) of
˜ D(jω) has a minimum value D(jω)
of −141◦ , which is far from the critical value −180◦. Since reference inputs do not cause plant windup, it is of interest to investigate the disturbance behaviour in the absence of an ADE. When the ADE is not present, joint reference and disturbance inputs cause the transients shown in the solid line in Figure 5.31. Since the retarding influence of the ADE is no longer present, disturbance rejection is improved, and though input saturation is active, the transients are not impaired by plant windup effects. Also, Example 5.7 demonstrates that it may be worth using engineering intuition to look for improved solutions. Compared to the schemes where stability can be proven in a rigorous way, the resulting improvements are sometimes remarkable. Before leaving the sound bedrock of proven stability, however, one should carefully investigate whether such improvements are assured for all operating conditions.
6 Prevention of Windup in Multivariable Systems
6.1 Introductory Remarks So far it has been assumed that the systems to be controlled have one manipulated input u(t). Therefore, the problems of tracking and disturbance rejection have to be solved for only one output y(t). This facilitates the design of controllers, especially if based on frequency domain representations of the system and the controller. In the presence of m > 1 manipulated inputs u(t), and, therefore, also of m controlled outputs y(t), the additional problems resulting from the multiinput property of the system are hardly noticeable when using state space representations of the system and the controller. The n-input vector b has simply to be replaced by the n × m-input matrix B and the n-feedback vector k T by the m × n-feedback matrix K. Nevertheless, compared to the case of single input systems, the control problem becomes considerably more involved for multiple input, multiple output (MIMO) systems. This is a consequence of the following. In a control design for single input systems, the feedback vector k T for the state of the system is completely specified by the desired eigenvalues of the closed loop. The corresponding coefficients ki of this feedback vector can either be computed using Ackermann’s formula (see, for example, the function R ) or by a comparison of coefficients in the characteristic “Acker” in MATLAB ˜ polynomial D(s) = det(sI − A + bk T ). In the case of multivariable systems, the desired eigenvalues of the controlled system only fix n out of the mn coefficients kij in the feedback matrix K. The remaining (m − 1)n unknowns in K, however, also influence the properties of the closed loop. For SISO systems the effects, different pole locations, and, therefore, different feedback vectors k T , can have on the properties of the closed loop are known. For MIMO systems such design experience is only of limited help, as it provides no information on how the additional (m − 1)n degrees of freedom must be chosen to obtain desired properties of the closed loop.
160
6 Prevention of Windup in Multivariable Systems
MIMO control systems can also be designed in the frequency domain on the basis of the transfer function matrices of the system and the controller. When using matrix fraction representations for these transfer matrices, the design equations of the controller and the characterizing functions of the closed loop are equally valid for SISO and MIMO systems. This corresponds to the above-mentioned advantage of state space descriptions in a joint handling of SISO and MIMO systems. In the Appendix it is shown that the time domain results for single input systems are easily convertible into equivalent frequency domain results and vice versa. This is, of course, also true for MIMO systems. The system manipulations on the basis of polynomial matrix fraction descriptions are, however, not as widely known as the state space methods, and an introduction to the polynomial approach is beyond the scope of this book on windup in control. Therefore, the methods for the prevention of windup in multi-input systems presented in the sequel are based on the well-known state space representations for systems and controllers. In multivariable systems, input amplitude restrictions influence the achievable output amplitudes in a more complex manner than in the SISO case. Section 6.2 contains a short discussion of different ranges. It turns out that the achievable output amplitudes still depend on the input saturation and the static gain of the system, but this dependence is not as simple as in the single input case. The usable range of one output yi (t) of the system is now also affected by the ranges required for the remaining controlled outputs yj (t), j = 1, 2, . . . , m, j = i. Section 6.3 contains a short r´esum´e of the steps necessary for the prevention of controller windup in the presence of observer-based controllers that can also contain signal models for the rejection of disturbances. This short form is sufficient because the design steps are more or less the same as in the single input case. For stable systems the prevention of plant windup is possible with the aid of an ADE. Its properties when applied to MIMO systems are discussed in Section 6.4. The necessary modifications of the ADE presented in Section 3.3.2 are minor, but simple investigations of phase margins are no longer applicable for its design. When using the Kalman-Yakubovich lemma, however, a straightforward design of the ADE can also be carried out for multiple input systems. A MIMO example for the prevention of windup in the presence of signal models for sinusoidal disturbances concludes this section. Controller and plant windup can occur both in SISO and MIMO systems. The observer technique assures a systematic prevention of controller windup. When in addition the linear part of the nonlinear loop is assigned so that one of the criteria discussed in Section 3.2 is satisfied, all undesired effects of input saturation are prevented in single input systems. In multi-input systems, however, an additional plant windup effect occurs, namely that of directionality.
6.1 Introductory Remarks
161
An important design goal in MIMO systems is to achieve a decoupled reference behaviour, so that the modification of the set point ri (t) for the controlled output yi (t) does not affect the remaining outputs yj (t), j = 1, 2, . . . , m, j = i. Even if a system cannot be completely decoupled by state feedback, an almost decoupling control is usually applied. In general, an input signal ui (t) influences all output signals of the system. In order to exert an effect on one output yj (t) only, very specific input signals ui (t), i = 1, 2, . . . , m are required. These individual signals ui (t) define the direction and the length of the input vector u(t). When one or several components ui (t) saturate, the direction of this input vector is changed, and this can give rise to strong and undesired coupling effects. This is the background of the so-called problem of directionality. Though the problem of directionality occurs in nearly all control applications with more than one manipulated input, its intensity varies from negligible to disastrous. The different aspects of directionality are discussed in Section 6.5. An important issue in the decoupling control of constrained systems is related to the fact that some plants cannot be decoupled without violating all the existing stability criteria for systems with input saturation. If saturation becomes active in such a loop, instability can occur. Most published schemes for the prevention of directionality solve the problem approximately. Only the widely known “directionality preserving control” [9] seems to give an exact solution. Unfortunately this is only true for a very restricted class of applications. Section 6.6 contains guidelines for the design of a nonlinear, model-based trajectory generator that not only prevents the usual oscillatory plant windup, but also allows a systematic solution of the directionality problem for stable and unstable multiple input systems. This generator is the MIMO version of the reference shaping filter introduced in Chapter 5, and most of the design aspects discussed therein are equally valid in the multivariable case. Different trajectory generators for stable and unstable systems are of minor interest in the case of MIMO systems, because the guideline for the design of the inner loop of the filter for unstable SISO systems, i.e., arbitrary reference signals should not cause saturating plant input signals, is also the basic idea behind the reference shaping filter, which guarantees a systematic preservation of directionality. Only in special applications where the directionality problem has no, or only minor, influence would it be of interest to design the reference shaping filter along the lines of Section 5.4, where saturating input signals are also allowed in the inner loop of the filter. This special case, however, is not treated separately in this chapter.
162
6 Prevention of Windup in Multivariable Systems
6.2 Multivariable Systems with Input Saturation We consider linear, time invariant systems of the order n with m manipulated inputs us (t), m controlled outputs y(t) (which are assumed to be measurable), p ≥ m measured outputs ym (t) and ρ disturbance inputs d(t) with the state equations x(t) ˙ = Ax(t) + Bus (t) + Bd d(t) y(t) = Cx(t) + Dd d(t) (6.1) ym (t) = Cm x(t) + Dmd d(t) The pair (A, B) is assumed to be completely controllable and the pair (A, Cm ) to be completely observable. To be able to apply step-like changes of the reference input signals according to ri (t) = rSi 1(t), i = 1, 2, . . . , m, the system (A, B, C) is assumed to have no transmission zeros at s = 0 [49]. There is a saturating nonlinearity us (t) = satu0 (u(t)) at the input of the system whose m components are defined by ⎧ ⎪ ⎨ u0i if ui > u0i ui if − u0i ≤ ui ≤ u0i ; u0i > 0; ∀ i = 1, 2, . . . , m (6.2) satu0 (ui ) = ⎪ ⎩ −u0i if ui < −u0i (see also Remark 2.1). A nominal state feedback u(t) = −Kx(t) + M r(t)
(6.3)
is assumed to assign the desired dynamics of the closed loop in the linear case (i.e., us (t) = u(t)), and M according to −1 M = C(−A + BK)−1 B
(6.4)
assures vanishing tracking errors εi (∞) = yi (∞) − ri (∞) ,
i = 1, 2, . . . , m
(6.5)
The inverse of the matrix in square brackets in (6.4) exists, because the system does not have transmission zeros at s = 0. In the single input case, the number of free parameters ki in the control law (6.3) coincides with the number of eigenvalues of the system. When all states of the system can be measured (i.e., rank(Cm ) = n), the zeros of the characteristic polynomial det(sI − A + bk T ) completely parameterize the behaviour of the closed loop. Therefore, for SISO systems, a “pole placing” design of the controller is feasible in a relatively straightforward manner, because control engineers know how different pole locations influence the transients of the closed loop.
6.2 Multivariable Systems with Input Saturation
163
Complex conjugate poles in the transfer functions of the closed loop can give rise to an oscillatory behaviour, dominant zeros can cause an overshoot in the transients in spite of all poles being real, and a left shift of the poles leads to faster decaying transients. The characteristic polynomial det(sI − A + BK) of a MIMO system also has n roots (the eigenvalues of the closed loop), and their placement is also possible in view of a non-oscillatory behaviour or fast decaying transients. The feedback matrix K in (6.3), however, now contains mn free parameters, so that (m − 1)n degrees of freedom remain in u(t) = −Kx(t) after an assignment of the desired poles. These degrees of freedom also influence the properties of the closed loop, but differing to the SISO approach, rules of thumb no longer exist for a suitable choice of these parameters. One possibility of exploiting the existing degrees of freedom in a systematic way is the “parametric design” or the “eigenstructure assignment” [51, 20, 57]. This allows a subdivision of the design parameters into one subset that assigns the eigenvalues of the loop and another subset that does not influence the locations of the poles. Other useful techniques for an assignment of the existing free parameters are, for example, the linear quadratic control [3], or the H∞ approach [65]. The zeros of a SISO system cannot be modified by state feedback. Thus, the influence of dominant zeros can be compensated by corresponding zeros in the characteristic polynomial det(sI − A + bk T ), provided these zeros are located in the left half s-plane. This assures reference transients without overshoot when the non-compensated eigenvalues are real. In a multivariable control the zeros of the reference transfer functions y¯i (s) , i = 1, 2, . . . , m, j = 1, 2, . . . , m depend on the parameters in K, and r¯j (s)
these zeros influence the reference transients. Due to unfavourable locations of the zeros, overshoots or even an all pass behaviour can occur, unless the parameters in K are especially tuned to minimize these effects. The overshoots or undershoots in an output yi (t) not only depend on the elements of the transfer function matrix but also on the relative changes in all reference inputs. This is a result of cross-coupling. Therefore, in systems that can be decoupled by constant state feedback [21] it makes sense to assign the control (6.3) such that a decoupled reference behaviour results. To obtain a decoupling control, the eigenvalues of the closed loop must be assigned so that the existing transmission zeros of the system are compensated. Only then the remaining degrees of freedom in K can be used to assure that the modification of one reference input ri (t) only affects the corresponding output yi (t) but not the remaining outputs yj (t), j = 1, 2, . . . , m, j = i. Because of the restricted input signals usi (t), i = 1, 2, . . . , m, the stationary amplitudes yi (∞), i = 1, 2, . . . , m of the controlled outputs are confined to the maximum sustainable regions yimin ≤ yi (∞) ≤ yimax , i = 1, 2, . . . , m
(6.6)
164
6 Prevention of Windup in Multivariable Systems
For single input systems with an input saturation us (t) = satu0 (u(t)) one obtains
ymax = −ymin = cT (−A)−1 b u0 i.e., the maximum sustainable output amplitude ymax is given by the static
gain VSt = cT (−A)−1 b of the system times the saturation limit u0 (see also Section 2.3.1). On the other hand, there is also a region of the maximum usable output amplitudes (6.7) yil ≤ yi (∞) ≤ yiu , i = 1, 2, ..., m which is characterized by the requirement that arbitrary combinations of output signals yi (t) can be sustained on the boundaries of the regions defined by (6.7).
Usually one has |yimin | > yil and |yimax | > |yiu |, i.e., the maximum usable regions are smaller than the maximum sustainable amplitudes. The relations yimin = yil and yimax = yiu always hold in single input systems. In multivariable systems, the maximum usable output regions depend not only on the saturation limits ui0 , i = 1, 2, . . . , m, but also on each other. Example 6.1. Demonstration of how the usable output regions depend on the input saturation limits and the static gain, and also on the regions required for the individual outputs yi (t) We consider a system with transfer behaviour y¯(s) = G(s)¯ us (s), where G(s) has the form ⎡ ⎤ 1 1 ⎢ ⎥ ⎢ s + 4 s + 1⎥ G(s) = ⎢ ⎥ ⎣ 1 1 ⎦ s+2
s+5
The input saturation limits are u01 = 10 and u02 = 10 (see (6.2)). Due to the above G(s) the static gain of the system is 0.25 1 −1 ˆ C(−A) B = VSt = G(0) = 0.5 0.2 The maximum sustainable amplitudes of the output are characterized by y1min = −12.5, y1max =12.5, y2min = −7 and y2max = 7, because an input us1 (∞) 10 y1 (∞) 12.5 vector = gives rise to an output vector = . us2 (∞) y2 (∞) 10 7 The maximum usable amplitudes of the output depend on the kind of regions required for the yi (t). Possible choices are, for example, symmetric regions yil = −yiu , i = 1, 2 or coinciding amplitudes for all controlled outputs, i.e., yil = y l and yiu = y u , i = 1, 2.
6.2 Multivariable Systems with Input Saturation
165
usable l One maximum region for the output of the system is, for example, y1 , y1u −7.5, +7.5 = . This range meets the requirement that all possible −3, +3 y2l , y2u combinations of these amplitudes can be sustained from the restricted input signals even in the worst case situation. If the outputs y1∞ = y1 (∞) and y2∞ = y2 (∞) are both at the upper or lower limit, the amplitudes of the input vector required are |us1∞ | = 10/3 and |us2∞ | = 20/3.An output vector T = 7.5 −3 , however, requires an input vector uTs∞ = −10 10 where y∞ both components are at their limits. A maximum usable limits of equal magnitude output range with symmetric y1l , y1u −3.75, +3.75 is characterized by = , because the output vector −3.75, +3.75 y2l , y2u T = 3.75 −3.75 requires an input vector uTs∞ = −10 6.25 . y∞ If, as another example, only positive output signals with coinciding maximum are desired, the existing input saturation limits allow l uamplitudes y1 , y1 0, +4.5 T = 0 4.5 requires = , because the output vector y∞ l u 0, +4.5 y2 , y2 an input vector uTs∞ = 10 −2.5 , where again the signal u1 (t) is at its saturation limit. To reduce notational complexity, we assume symmetric limits for the maximum usable output regions yiu = −yil = y0i , i = 1, 2, . . . , m
(6.8)
In order to have a reserve of the control signal u(t) also in worst case situations, the entire amplitude regions (6.7) or (6.8) are usually not used. In unstable systems such amplitude reserves are a necessity for a stable operation of the control system (see also the discussions in Sections 1.4 and 5.1). In stable systems, part of the resticted input signals is often reserved to suppress the most frequently occurring disturbances. Therefore, one also defines the maximum used ranges of the controlled outputs (6.9) −r0i < yi (t) < r0i , i = 1, 2, . . . , m where the limits r0i satisfy r0i < y0i , i = 1, 2, . . . , m
(6.10)
(see also (6.8)). This also specifies the regions −r0i < ri (t) < r0i , i = 1, 2, . . . , m of the maximum applied reference signals.
(6.11)
166
6 Prevention of Windup in Multivariable Systems
6.3 Prevention of Controller Windup in Multivariable Systems If the observer-based controller also incorporates a disturbance observer in the sense of Johnson (see Section A.5.1), and the constrained input signal us (t) drives this state-plus-disturbance observer, the controller windup is completely prevented. The transfer behaviour us (s) u ¯(s) = −GL (s)¯
(6.12)
of the linear part of the loop is then characterized by the transfer matrix GL (s) = K(sI − A)−1 B
(6.13)
which is identical with the corresponding transfer matrix of a proportional state feedback without an observer. The same result can be obtained when the controller contains signal models for the rejection of disturbances in the sense of Davison. A compact introduction to the design of such MIMO controllers is presented in Section A.6. A transfer matrix (6.13) of the linear part of the loop can be obtained for such controllers by feeding the limited input signal us (t) of the plant into the state observer and by a suitable parameterization of the modified signal model uC (t) + us (t)] (6.14) v(t) ˙ = Sv(t) + Bε y(t) − Bσ[ˆ The input signal
x ˆ(t) uˆC (t) = [Kx Kv ] v(t)
(6.15)
in (6.14) is the output signal of the observer-based controller, obtained from the estimated states of the system and the states of the disturbance model. Given the nominal state feedback u(t) = −Kx(t) + M r(t)
(6.16)
and the solution X of the Sylvester equation X(A − BK) − SX = Bε C
(6.17)
Bσ = −XB
(6.18)
the matrix can be computed. With this Bσ , Kv is selected such that (S − Bσ Kv ) has the desired eigenvalues. Finally computing Kx = K − Kv X
(6.19)
the intensity of plant windup is indicated by the loop of Figure 2.7 where the n-vector k T is replaced by the m × n-matrix K.
6.4 Prevention of Plant Windup in Stable Multivariable Systems
167
6.4 Prevention of Plant Windup in Stable Multivariable Systems The danger of plant windup is again indicated by the criteria discussed for single input systems in Section 3.2. These criteria can, however, no longer be analyzed by inspection of the phase of some frequency response function. In [33] a multivariable version of the phase design aid is presented, which uses the MIMO Nyquist plots of GL (jω) (see also Remark 6.1 below). Proven stability results can, for example, be obtained from the circle criterion. Whether or not the given open loop transfer function matrix GL (s) satisfies the circle criterion can, for example, be tested along the lines presented in [60]. With u(t) = −Kx(t)+M r(t) the linear part of the loop in Figure 2.7 satisfies the circle criterion if for some matrix Q and a positive definite symmetric matrix P the conditions of the Kalman-Yakubovich lemma AT P + P A = −QT Q BT P + W T Q = K
(6.20)
T
W W = 2I are satisfied [42, 69]. For stable systems a “safe” state feedback KS x(t), i.e., a state feedback that guarantees global asymptotic stability in the loop of Figure 2.7, always exists. The computation of this safe KS can be carried out by solving (6.20) for some weighting matrix Q. If the circle criterion is violated for a given nominal state feedback Kx(t), the danger of plant windup exists. For stable systems it can be prevented by an ADE, which is characterized by ˙ = (A − BKS )ξ(t) + B [u(t) − us (t)] ξ(t) η(t) = (K − KS )ξ(t)
(6.21)
(see also Section 3.3.2), where KS is a “safe” feedback matrix. The proof of this uses exactly the same arguments as in Section 3.3.2, with the only modification due to the stability test for GL (s). Figure 6.1 shows the nonlinear MIMO loop, consisting of a linear plant with input saturation, an observer-based controller containing signal models in the sense of Davison and the necessary measures for the prevention of plant windup. If some technique other than the observer technique is used for the prevention of controller windup, the resulting transfer matrix GL (s) no longer describes a system of the order n, but of the order n + nO + mq. This complicates the design of a safe feedback matrix KS . Only the approach of Schneider and Teel and Kapoor discussed in Section 4.3 is an alternative to the suggested two-step approach, namely a prevention of controller windup by the observer technique and a prevention of plant windup by an ADE, because the additional dynamics required in the approach of Schneider and Teel and Kapoor also have the order n of the plant.
168
6 Prevention of Windup in Multivariable Systems ADE
ξ˙ = (A − BKs )ξ+Bδ η = (K − Ks )ξ
δ
η
d y
satu0 r
M
x˙ = Ax+Bus +Bd d y = Cx + Dd d ym = Cm x + Dmd d
us
u
ym
u ˆC x ˆ
Kx
z˙ = F z+Lym +TBus x ˆ = Θz + Ψ ym
σ Kv
v
v˙ = Sv+Bε y−Bσ σ
Figure 6.1. Nonlinear loop with measures for the prevention of windup
Example 6.2. Multivariable system with an observer-based controller containing sinusoidal signal models for disturbance rejection. Step by step prevention of controller and plant windup We consider a stable system of the order six with two inputs and two outputs (y(t) ≡ ym (t)). The parameters in the state equations (6.1) are ⎡ ⎤ ⎡ ⎤ 0 1 0 0 0 0 0 0 ⎢ 0 0 1 0 0 0⎥ ⎢ 0 0⎥ ⎢ ⎥ ⎢ ⎥ ⎢ −1 −3 −3 1 1 0 ⎥ ⎢ 1 0⎥ 3 0 0 1 0 0 ⎢ ⎥ ⎢ ⎥ A =⎢ ⎥, B = ⎢ 0 0 ⎥, C = Cm = −1 0 0 4 0 0 ⎢ 0 0 0 0 1 0⎥ ⎢ ⎥ ⎣ 0 0 0 0 0 1⎦ ⎣ 0 0⎦ −1 −2 −1 −1 −3 −3 0 1 T Bd = 0.1 0 −0.1 0 0.1 −0.2 and Dd ≡ Dmd = 0 A sinusoidal disturbance d(t) = dS sin(2t + ϕd )1(t) is acting at this system, so that the characteristic polynomial (A.164) of the corresponding disturbance process is det(sI − Sd ) = s2 + 4. The nominal state feedback (6.3) or (6.16) and M according to (6.4) are chosen to obtain a decoupled reference behaviour, and the freely assignable eigenvalues of the closed loop are shifted far to the left in the s-plane to demonstrate the effects of a pronounced plant windup.
6.4 Prevention of Plant Windup in Stable Multivariable Systems
169
Since the system has no finite transmission zeros, all eigenvalues of the closed loop are freely assignable and it is assumed that the characteristic polynomial of the closed loop is det(sI − A + BK) = (s + 14)6 . It is further assumed that the eigenvalues of the state observer of minimal order (nO = n − p = 4) are located at s = −10. Given the static gain of the system 1 2 VSt = C(−A)−1 B = −2.5 1.5 and the input saturation limits u01 = 4 and u02 = 5.6, the maximum usable output ranges (6.8) are restricted by y01 = y02 = 7.428, provided symmetric limits of equal amplitude are required. 7.428 y1 (∞) = requires an This is because a stationary output −7.428 y2 (∞) 4 us1 (∞) = , i.e., the input signal u1 (t) is at its maxiinput vector us2 (∞) 1.71 mum value u01 = 4. The maximum amplitudes used (see (6.9)) are limited by r0i = 5, i = 1, 2. A nominal state feedback that assures a decoupled reference behaviour while placing the eigenvalues of the controlled system at s = −14 is parameterized by the pair 1 10976 −2744 2743 585 39 1 1 0 K= and M = −1 −2 −1 2743 585 39 2744 8232 13 The matrices S and Bε in the disturbance signal model (A.165) or (6.14) obviously have the forms ⎡ ⎡ ⎤ ⎤ 0 1 0 0 0 0 ⎢ −4 0 ⎢ ⎥ 0 0⎥ ⎥ and Bε = ⎢ 1 0 ⎥ S=⎢ ⎣ 0 0 ⎣ 0 0⎦ 0 1⎦ 0 0 −4 0 0 1 The Sylvester equations (A.171) or (6.17) are solved by ⎡ ⎤ 87324 8232 219 29108 2744 73 1 ⎢ −600936 −41448 −966 −200312 −13816 −322 ⎥ ⎥ X= 6⎢ 116432 10976 292 ⎦ 10 ⎣ −29108 −2744 −73 200312 13816 322 −801248 −55264 −1288 and with this, (6.18) leads to ⎡
−219 1 ⎢ 966 Bσ = −XB = 6 ⎢ 10 ⎣ 73 −322
⎤ −73 322 ⎥ ⎥ −292 ⎦ 1288
170
6 Prevention of Windup in Multivariable Systems
A matrix (S −Bσ Kv ), which is block diagonal and has eigenvalues at s = −10, is obtained with 1 802304 430336 −200576 −107584 Kv = 601728 322752 13 200576 107584 and by applying (A.173) or (6.19) one finally obtains 18455 1521 59 1 1 0 Kx = −1 −2 −1 18455 1521 59 If all states of the system can be measured the design of the compensator would be complete. Here only two controlled outputs are directly measurable, so that a state observer is required whose minimal order is nO = 4. For κ = p one has 2 1 Cm ≡ C, Ψ2 ≡ Ψ and Cm vanishes. Choosing the observer matrices F and L as ⎡ ⎤ ⎡ ⎤ −10 1 0 0 200.69 −50.14 ⎢ ⎢ 0 −10 1 0⎥ 188.96 ⎥ ⎥ and L = ⎢ −773.91 ⎥ F =⎢ ⎣ ⎦ ⎣ 0 0 −10 1 1682.59 −404.43 ⎦ 0 0 0 −10 −672.66 151.20 the design equation (A.161) of the observer is solved by ⎡ 45.37 −2.99 0.26 −0.13 0 ⎢ −198.77 14.69 −1.17 −1.17 0.13 T =⎢ ⎣ 524.16 −48.36 6.5 5.2 −1.04 −217.23 20.8 −2.99 −6.5 0.91
⎤ 0 0⎥ ⎥ 0.13 ⎦ −0.13
which leads to ⎡
⎡ ⎤ ⎤ 216 −54 0 0 0 0 ⎢ ⎢ −450 4623 −1139.5 ⎥ 50 50 50 ⎥ ⎢ ⎢ ⎥ ⎥ ⎢ ⎢ ⎥ 1 ⎢ 15499.5 −3600.25 ⎥ 1 ⎢ −2475 575 575 575 ⎥ ⎥ Ψ= and Θ = 54 162 ⎥ 0 0 0 0⎥ 702⎢ 702⎢ ⎢ ⎢ ⎥ ⎥ ⎣ −52153.5 15253.25 ⎦ ⎣ 28575 4925 −475 −475 ⎦ −345519 89392.5 184950 29250 −8550 −13950
(see (A.160)). This concludes the parameterization of the observer-based controller with a signal model in the sense of Davison. The reference behaviour of the linear loop (i.e., us (t) ≡ u(t)) is characterized by ⎤ ⎡ 2744 0 ⎥ ⎢ (s + 14)3 ⎥ r¯(s) y¯(s) = ⎢ ⎣ 2744 ⎦ 0 (s + 14)3
6.4 Prevention of Plant Windup in Stable Multivariable Systems
171
i.e., one obtains fast settling reference transients that are decoupled and have no overshoot. To demonstrate the controller windup caused by the signal models for sinusoidal disturbances, the realizations (A.159) of the observer and (A.165) of the signal model are considered first, i.e., the unrestricted controller output u(t) is used to drive both systems. Reference input signals ri (t) = rSi 1(t), i = 1, 2 with rS1 = 1 and rS2 = −1 cause non-decaying oscillations (limit cycles) in both outputs y1 (t) and y2 (t) (see Figure 6.2a). When preventing the controller windup by the observer technique, i.e., when replacing the unrestricted output vector u(t) in the controller descriptions (A.159) and (A.165) by the restricted input vector us (t), the reference transients of the loop are considerably improved and the oscillations die out (see Figure 6.2b). However, a strong oscillatory behaviour still exists, which is the consequence of a severe plant windup. For the nominal state feedback Kx(t) used in this example, the circle criterion is considerably violated. Remark 6.1. An indication of the intensity of plant windup is given by the method presented in [33], where multivariable Nyquist plots are used to obtain a graphical interpretation of the phase design aid and the circle criterion also in the MIMO case. Though a strict proof of stability has still to be found for this approach, it gives an indication of how badly the chosen criterion is violated. This information cannot be obtained from the usual MIMO stability tests, where the outcome is simply yes or no.
y1
Outputs y1 (t) and y2 (t)
Outputs y1 (t) and y2 (t)
5
0
−5
y2 −10
0
5
10
15
20
Time
(a) Transients with controller windup and plant windup
1
y1 0
−1
−2
y2 0
5
10
15
20
Time
(b) Transients with plant windup only
Figure 6.2. Reference step responses with and without controller windup
172
6 Prevention of Windup in Multivariable Systems
The prevention of plant windup can be achieved by a suitably designed additional dynamic element as introduced in this section. This ADE is parameterized by a “safe” feedback matrix KS , such that the transfer function matrix KS (sI − A)−1 B satisfies, for example, the circle criterion. For MIMO systems this safe feedback matrix can be computed using the Kalman-Yakubovich lemma (6.20). When solving the first equation in (6.20), namely AT P + P A = −QT Q, for 12 0 0 4 −16 0 Q= −4 0 0 16 8 0 √ 2 √0 (so that the third equaand using the weighting matrix W = 0 2 tion W T W = 2I in (6.20) is satisfied), the second equation in in (6.20) yields the safe feedback matrix 20011 22220 8700 2824 −8355 −3880 1 KS = 135 −7684 −7800 −3880 23475 32067 10180 (rounded result). With this KS the transfer matrix KS (sI − A)−1 B meets the circle criterion. If the ADE in Figure 6.1 is parameterized by this KS , the resulting transients of the closed loop shown in Figure 6.3a are no longer impaired by plant windup effects. They are well-damped for all input amplitudes −r0i ≤ rS ≤ r0i , i = 1, 2.
Outputs y1 (t) and y2 (t)
Outputs y1 (t) and y2 (t)
6
y1
4 2 0 −2 −4 −6
y2 0
5
10
Time
(a) Reference transients after preventing controller windup and plant windup
0.1
0.05
y2 y1
0 0
5
10
Time
(b) Reaction of the closed loop to a sinusoidal disturbance input
Figure 6.3. Responses of the closed loop to reference and disturbance inputs
6.4 Prevention of Plant Windup in Stable Multivariable Systems
173
The compensator also assures an asymptotic compensation of sinusoidal disturbances. Figure 6.3b shows the output signals y1 (t) and y2 (t) caused by a sinusoidal disturbance input with amplitude dS = 1 and ϕd = 0. After the initial transients have decayed, the harmonic disturbance signal is completely compensated. In the case of single input systems, all undesired effects of input saturation are removed after controller windup has been prevented and the transfer beus (s) of the loop is such that GL (s) meets one of the haviour u ¯(s) = −GL (s)¯ criteria for the prevention of (oscillatory) plant windup. Here, in the case of multivariable systems, an additional (plant) windup effect can occur, namely that of directionality. Figure 6.4a shows the transients due to reference steps with amplitudes rS1 = 0.005 and rS2 = 0. Since these reference inputs do not drive u1 (t) and u2 (t) into saturation, the control assures perfect decoupling, i.e., y1 (t) tracks the reference input signal r1 (t), while y2 (t) remains constant. For step-like reference inputs with rS1 > 0.01, however, input saturation becomes active, and this gives rise to a coupled transient behaviour. Figure 6.4b shows this coupling for reference inputs with rS1 = 1 and rS2 = 0. The desired decoupling requires an input vector u(t) whose two components u1 (t) and u2 (t) have a specific amplitude and direction. If u1 (t), u2 (t) or both saturate, the amplitude and the direction of the input vector are modified. By this the decoupling direction is probably annihilated, so that the directionality effect occurs.
×10−3 Outputs y1 (t) and y2 (t)
Outputs y1 (t) and y2 (t)
6
y1
4
2
y2
0 0
5
10
Time
(a) With non-saturated input signals
1
y1
0.5
y2
0 0
5
10
Time
(b) With saturated input signals
Figure 6.4. Reference transients of the closed loop
174
6 Prevention of Windup in Multivariable Systems
6.5 Problem of Directionality Though the control system designed in Example 6.2 does not guarantee a perfect decoupling when input saturation becomes active, the additional coupling caused by this input saturation may be considered acceptable in many applications. There are, however, systems where the problem of directionality becomes much more dramatic: “For MIMO controllers, the saturation may cause a change in the direction of the plant input resulting in disastrous consequences” [18]. The most straightforward method for the preservation of directionality is a control design that guarantees non-saturated inputs ui (t) for all reference signals from the amplitude range −r0i ≤ rS ≤ r0i , i = 1, 2, . . . , m. This, however, necessitates rather slow dynamics of the closed loop, effective also for small changes of the reference signal. On the other hand, the slow dynamics would probably cause an undesirable disturbance behaviour. Better results can seemingly be achieved by applying the so-called directionality preserving control suggested in [9]. Its functional principle is relatively simple. Whenever one of the input signals ui (t), i = 1, 2, . . . , m is on the verge of saturating, the loop gain is reduced to assure |ui (t)| < u0i , for all i = 1, 2, . . . , m. Apparently, the linear and decoupling control thus remains active all the time, while allowing at least one of the restricted input signals to stay close to its maximum value |ui (t)| = u0i . Unfortunately, this directionality preserving control is only a heuristic approach without proof of stability. It obviously cannot be applied in the presence of unstable systems, where a reduction of the loop gain can give rise to instability. Actually, the desired directionality preservation is only achieved for a very restricted class of systems (obviously Example 2 in [9] belongs to this class). There are two reasons why the technique suggested in [9] does not guarantee the preservation of directionality for arbitrary systems. If the gain of the closed loop is reduced by, say, 50% the decoupling control is still active, but it no longer assures vanishing tracking errors. On the other hand, the closed loop with its feedback gain depending on the output signal of the controller can be interpreted as a time-variant system, whose transient behaviour cannot be explained exclusively by the pole-zero patterns existing at a given instant of time. Since the reduction of the loop gain proposed in [9] completely prevents input saturation, one could be tempted to use it also for the prevention of plant windup. In the following example, the directionality preserving control is applied to the system of Example 6.2. For simplicity, only a nominal feedback of measured plant states is considered, because an observer-based controller gives rise to the same reference behaviour when it is enhanced by the observer technique.
6.5 Problem of Directionality
175
Example 6.3. The nominal state feedback u(t) = −Kx(t) + M r(t) places the eigenvalues of the system in Example 6.2 at s = −14. This gives rise to a severe plant windup (see the transients in Figure 6.2b) if the input signals exceed the corresponding saturation limits u01 = 4 and u02 = 5.6 The directionality preserving scheme of [9] uses the nonlinear operator R2 described by ⎧ ⎪ ⎨ u(t) for u (t)∞ ≤ 1 uM (t) = R2 u(t) = u(t) ⎪ ⎩ for u (t)∞ > 1 u (t)∞ where
u (t)∞
ui (t)
= max i u0i
Figure 6.5 shows a block diagram of this scheme. satu0 r
u M
uM
us
R2
y System
x K
Figure 6.5. Directionality preserving control according to [9]
For reference step inputs ri (t) = rSi 1(t), i = 1, 2 with rS1 = 1 and rS2 = −1, the resulting signals uMi (t), i = 1, 2 that drive the nonlinear element us (t) = satu0 (uM (t)) at the input of the plant never exceed the saturation limits u01 = 4 and u02 = 5.6 (see Figure 6.6b). However, the resulting reference transients shown in Figure 6.6a are not improved by this measure (compare with the transients in Figure 6.2b). Why the reduction of the loop gain does not solve the problem of plant windup becomes plausible if we consider the situation in single input systems. Assume, for example, that the frequency response GL (jω) of a SISO loop intersects the negative real axis left of −1, so that limit cycles can be triggered by input saturation. Due to a reduction of the loop gain the intersection with the negative real axis can be relocated to the interval [−1, 0], so that even the linear loop is unstable. Though this interpretation does not have a one-to-one counterpart in the multivariable case, the effects are definitely similar.
1
Signals uM 1 (t) and uM 2 (t)
6 Prevention of Windup in Multivariable Systems
Outputs y1 (t) and y2 (t)
176
y1
0
−1
y2 −2
0
5
10
6
uM 1 4 2 0 −2 −4 −6
uM 2 0
5
(a) Reference transients
10
Time
Time
(b) Output of the operator R2
Figure 6.6. Reference behaviour with the “directionality preserving” control
Thus, the scheme of Figure 6.5 cannot be applied for the prevention of plant windup. However, what about the directionality preserving property? A nominal state feedback that places the eigenvalues of the closed loop at s = −3 prevents the above-observed oscillatory plant windup. The corresponding parameters of the controller are 1 108 −27 26 24 6 1 1 0 K= , M= 27 81 −1 −2 −1 26 24 6 13 giving the decoupled (linear) behaviour ⎡ 27 ⎢ (s + 3)3 y¯(s) = ⎢ ⎣ 0
⎤ 0 27 (s + 3)3
⎥ ⎥ r¯(s) ⎦
of the closed loop. Figure 6.7a shows the reference transients for input amplitudes rS1 = 1 and rS2 = 0 when no directionality preservation is applied, and it turns out that y2 (t) is slightly influenced by the reference step input for y1 (t). Figure 6.7b shows the resulting transients when the directionality preserving control according to [9] is used. The decoupling is better preserved, though not exactly. Due to the plot scaling, the deviations of y2 (t) are hardly visible. For larger input amplitudes, the directionality preserving control is not at all successful. Figure 6.8 shows the transients for input amplitudes rS1 = 5 and rS2 = 0. Figure 6.8b depicts the results obtained with the directionality preserving approach of Figure 6.5 and Figure 6.8a when no such measure is applied.
1
Outputs y1 (t) and y2 (t)
Outputs y1 (t) and y2 (t)
6.5 Problem of Directionality
y1 0.8 0.6 0.4 0.2
5y2
0 −0.2
0
5
10
1
177
y1
0.8 0.6 0.4 0.2
5y2
0 −0.2
0
5
Time
10
Time
(a) Without directionality preserving control
(b) With directionality preserving control
Figure 6.7. Comparison of the reference transients without and with directionality preserving control
5
Outputs y1 (t) and y2 (t)
Outputs y1 (t) and y2 (t)
5
y1
4 3 2 1
y2
0 −1
0
5
10
Time
(a) Without directionality preserving control
y1
4 3 2 1
y2
0 −1
0
5
10
Time
(b) With directionality preserving control
Figure 6.8. Comparison of the reference transients without and with directionality preserving control
The measures of Figure 6.5 obviously give an “over-compensation” here, so that the coupling influence is to the opposite direction. These results demonstrate that the “directionality preserving control” of [9] is only successfully applicable in very restricted situations, and that it does not constitute a general solution to the problem.
178
6 Prevention of Windup in Multivariable Systems
The directionality problem and methods for its prevention are also discussed in various other papers (see, for example, [63, 71, 56, 50, 41, 76]. Most of these approaches, however, only constitute approximate solutions. An additional problem related to directionality preservation is the following. In order to obtain transients of the closed loop that are not impaired by oscillatory plant windup, GL (s) has to meet one of the stability criteria for systems with input sector nonlinearity. There are, however, situations where one cannot find a decoupling control that gives a GL (s) satisfying a stability criterion, e.g., the circle criterion. If input saturation becomes active in such a loop, stability is endangered. Example 6.4. Demonstration of a severe directionality problem. The multivariable system with input saturation can be decoupled by state feedback, but each decoupling feedback matrix K gives a transfer matrix GL (s) = K(sI − A)−1 B, which violates the circle criterion. Thus, there is no decoupling control with guaranteed stability of the nonlinear loop We consider a stable system of the order six with three inputs and outputs, i.e., n = 6, m = p = 3 and y(t) ≡ ym (t). The parameters in the state equation (6.1) are ⎡
C = Cm
0 1 ⎢ −3 −2 ⎢ ⎢ 0 0 A=⎢ ⎢ −2 2 ⎢ ⎣ 0 0 −1 −3 ⎡ 3 1 1 = ⎣ −2 0 1 1 1 0
⎤ ⎡ 0 0 0 0 0 ⎢1 2 0 −1 −1 ⎥ ⎥ ⎢ ⎢ 0 1 0 0⎥ ⎥, B = ⎢ 0 ⎥ ⎢0 −1 −3 −2 −2 ⎥ ⎢ ⎦ ⎣0 0 0 0 1 2 2 0 −1 0 ⎤ 0 10.5 0 1 −18 0 ⎦, Bd = 0 and 0 18.5 1
0 0 0 1 0 0
⎤ 0 0⎥ ⎥ 0⎥ ⎥ 0⎥ ⎥ 0⎦ 1
Dd = Dmd = 0
The saturation limits of the input signals are u01 = 6, u02 = 12 and u03 = 9. Because the static gain of the system is ⎡ ⎤ −38.5 35 54.5 1 VSt = C(−A)−1 B = ⎣ 84 −69 −120 ⎦ 3 −88.5 72 124.5 the above saturation limits allow the following maximum achievable output regions y01 = y02 = y03 = 1.248 when equal amplitudes for all outputs are required. The stationary output T can only be sustained by an input vector y(∞) = −1.248 1.248 1.248 vector u(t), where the first component is at its limiting value u01 = 6 (see also
6.5 Problem of Directionality
179
the discussions in Section 6.2). The maximum used ranges of the output are assumed to be delimited by r01 = r02 = r03 = 1, i.e., the controlled outputs are confined to the ranges −1 ≤ yi (t) ≤ 1, i = 1, 2, 3. The following discussions are based on different parameterizations of the state feedback control. The system considered can be decoupled by constant state feedback [21], and a decoupling control that places the freely assignable eigenvalues at s = −5 (the transmission zeros of the system are located at s1/2 = −2 ± 2j and s3 = −8) is parameterized by the pair ⎡ ⎤ ⎡ ⎤ 12 6 7 1 51.5 9.5 5 0 0 K = ⎣ −12 0 4 3 −92 −20 ⎦ and M = ⎣ 0 5 0 ⎦ −11 −5 −3 1 40 12 −5 0 5 giving the decoupled transfer behaviour ⎡ 5 ⎢s+5 0 ⎢ 5 ⎢ y¯(s) = ⎢ 0 ⎢ s+5 ⎣ 0 0
⎤ 0
⎥ ⎥ ⎥ r¯(s) 0 ⎥ ⎥ ⎦ 5 s+5
This decoupling K, however, does not satisfy the Kalman-Yakubovich lemma (see (6.20)), and the transfer matrix K(sI − A)−1 B violates the circle criterion. It turns out that no choice of the freely assignable eigenvalues gives a decoupling K for which the circle criterion is satisfied. Therefore, stability is not guaranteed for any decoupling control design unless input saturation is completely prevented. The above decoupling control gives well-damped reference transients, provided the input signals ui (t) do not saturate. Plant input saturation, however, can give rise to an unstable behaviour of the closed loop. Figure 6.9a shows reference transients for input signals ri (t) = rSi 1(t) with rS1 = 0.7, rS2 = −0.8 and rS3 = −0.9. Given the above decoupling controller, one would expect stationary output signals y1 (∞) = 0.7, y2 (∞) = −0.8 and y3 (∞) = −0.9. In fact the resulting output signals attain the stationary values y1 (∞) = −53.5, y2 (∞) = 84 and y3 (∞) = −91.5. These amplitudes are not only far beyond those desired, but the signals y1 (t) and y2 (t) are also driven into the wrong direction. This is the consequence of an unstable behaviour of the closed loop. Due to this instability, all input signals reach one of their saturation limits and remain there. Also the directionality preserving control of [9] does not solve the problems here. Stable reference transients in the whole amplitude region −1 ≤ yi (t) ≤ 1, i = 1, 2, 3 can be obtained if the feedback matrix K is assigned via the Kalman-Yakubovich lemma (6.20). For Q = 1.5C one obtains (rounded data)
180
6 Prevention of Windup in Multivariable Systems 10
us1 (t), us2 (t) and us3 (t)
y1 (t), y2 (t) and y3 (t)
100
y2
50 0
y1
−50
y3 −100
0
5
10
Time
(a) Output signals yi (t), i = 1, 2, 3
us3 5
us1
0 −5 −10 −15
us2 0
5
10
Time
(b) Corresponding input signals
Figure 6.9. Reaction of the closed loop to reference step inputs with rS1 = 0.7, rS2 = −0.8 and rS3 = −0.9
⎡ ⎤ −204336 822579 185320 −642074 −1395287 −1044501 1 ⎣ 133032 −642074 −66400 538606 1139337 838215 ⎦ K= 1078 377641 −1042214 −218589 838215 2083779 1413044 and
⎡ 1 ⎣ M= 17248
⎤ 288484.5 2642139.5 1201193.5 29591.75 −1074743.75 −75254.75 ⎦ 182091.875 −3714011.875 −1914795.375
For this K the transfer matrix K(sI − A)−1 B meets the circle criterion. Figure 6.10a shows the transients of the loop for a reference sequence ri (t) = rSi 1(t) − rSi 1(t − 5), i = 1, 2, 3, when the same input amplitudes are applied as above. Figure 6.10b shows the corresponding input signals usi (t). Now input saturation does not cause an unstable behaviour of the closed loop. The transients, however, are far from being satisfactory, as enormous cross-couplings already occur for unsaturated input signals. By an appropriate modification of the weighting matrix Q one could probably obtain slightly improved transients. A decoupling state feedback control such that K(sI − A)−1 B satisfies the circle criterion, however, cannot be obtained. An exact directionality preservation is possible on the basis of the control scheme introduced for single input systems in Chapter 5.
6.6 Systematic Solution of the Directionality Problem 15
us1 (t), us2 (t) and us3 (t)
y1 (t), y2 (t) and y3 (t)
15 10
y3
5
y1
0 −5
y2
−10 −15
181
0
5
10
10
us3
5
us1
0
us2
−5 −10 −15
0
Time
5
10
Time
(a) Output signals yi (t), i = 1, 2, 3
(b) Corresponding input signals
Figure 6.10. Reference behaviour of a control satisfying the circle criterion
6.6 Systematic Solution of the Directionality Problem The nonlinear model-based reference shaping filter (trajectory generator) discussed in Section 5.3 can be applied to obtain a systematic preservation of directionality both for stable and unstable MIMO systems. It uses a model x˙ M (t) = AM xM (t) + BM ua (t) yM (t) = CM xM (t)
(6.22)
of the system (6.1) with input signal ua (t). This model is assumed to be correct, i.e., one has (AM , BM , CM ) = (A, B, C). Because of constant reference input signals, the system must not have transmission zeros at s = 0, and for the moment, it is also assumed that the system does not have eigenvalues at s = 0. The input saturation limits for the signals ui (t) are u0i , i = 1, 2, . . . , m (see (6.2)), and the reference shaping filter shown in Figure 6.11 is designed so that the signals uCri (t) ≡ uai (t), i = 1, 2, . . . , m, which are used to drive the system, do not exceed these limits. In a (stabilizing) state feedback ua (t) = −Ka xM (t) + Ma ubs (t)
(6.23)
the pair (Ka , Ma ) is chosen so that the zeros of the polynomial det(sI − AM + BM Ka )
(6.24)
are located in the open left half s-plane and all steady state errors εMi (∞) = yMi (∞) − ubsi (∞), i = 1, 2, . . . , m vanish. The latter is assured for
182
6 Prevention of Windup in Multivariable Systems uCr
r Reference shaping filter Mb satr0 ub
ubs
ua
Ma
System model
yM
Ka
Kb
xM
Figure 6.11. Directionality preserving trajectory generator
−1 Ma = CM (−AM + BM Ka )−1 BM
(6.25)
Moreover, the pair (Ka , Ma ) is assumed to give a decoupled behaviour between the input signals ubsi (t) and the output signals y Mi (t), i = 1, 2, . . . , m of the model. If the system cannot be decoupled by static state feedback, Ka can at least be chosen to obtain an almost decoupling control [16]. For simplicity, the following discussions assume a decoupling controller design. Given the limits r0i for the maximum used ranges of the output (see (6.9) and (6.10)), the zeros of det(sI − AM + BM Ka ) are assumed to be such that for arbitrary input signals ubsi (t) within the regions −r0i ≤ ubsi (t) ≤ r0i ,
i = 1, 2, . . . , m
(6.26)
i = 1, 2, . . . , m
(6.27)
no signal uai (t) exceeds the limits −u0i ≤ uai (t) ≤ u0i , This has two important implications: • •
First, when using the signal uCr (t) ≡ ua (t) to drive the plant, arbitrary reference inputs to the filter never produce a saturated signal u(t). Second, when the input signal ua (t) to the model of the system never exceeds the saturation limits, the saturation at the input of the model can be omitted. Thus, the stabilizing control of the inner loop is always active, so that stable and unstable systems can be handled in the same way.
6.6 Systematic Solution of the Directionality Problem
183
A restriction of the input signal ubs (t) to the range (6.26) is assured by an input nonlinearity ubs (t) = satr0 (ub (t)) (see also (6.2)). Now the following problem remains to be solved. Given a state feedback (6.23), do all signals uai (t) meet the restrictions |uai (t)| ≤ u0i , i = 1, 2, . . . , m even in worst case situations? If the applied reference signals are known, simulations can be used to answer this question. If, however, arbitrary changes of the reference signals can occur, the L1 norm should be used to obtain the maximum possible amplitudes |uai (t)|. For the L1 -norm see the discussions in Section 5.2. The transfer behaviour of interest is u¯a (s) = Gua (s)¯ ubs (s) = = −Ka (sI − AM + BM Ka )−1 BM Ma + Ma u ¯bs (s)
(6.28)
First consider the L1 -norms Guija 1 (see (5.4)) of the individual transfer functions ubsj (s), i, j = 1, 2, . . . , m (6.29) u¯ai (s) = Guija (s)¯ Since the signals ubsj (t) are confined to the regions −r0j ≤ ubsj (t) ≤ r0j , j = 1, 2, . . . , m, the upper limits uaimax of the signals uai (t) are uaimax =
m
Guika 1 r0k ,
i = 1, 2, . . . , m
(6.30)
k=1
i.e., for arbitrary input signals ubi (t) the signal uai (t), i = 1, 2, . . . , m never exceeds uaimax . If the restriction uaimax ≤ u0i is satisfied by each uai (t), the inner loop in Figure 6.11 with input vector ub (t) and output vector yM (t) is a linear stable and decoupled system with input nonlinearity ubs (t) = satr0 (ub (t)). When designing a decoupling state feedback ub (t) = −Kb xM (t) + Mb r(t)
(6.31)
det[sI − AM + BM (Ka + Ma Kb )]
(6.32)
so that the polynomial
is Hurwitz and the transfer matrix Kb (sI − AM + BM Ka )−1 BM Ma
(6.33)
satisfies the circle criterion, the nonlinear model-based trajectory generator in Figure 6.11 is stable for arbitrary reference input signals r(t). Of course, only reference signals within the range −r0i ≤ ri (t) ≤ r0i , i = 1, 2, . . . , m are effective. By assigning Mb according to (6.34) Mb = Ma−1 CM (−AM + BM Ka + BM Ma Kb )−1 BM −1 vanishing tracking errors εMi (∞) = yMi (∞) − ri (∞), i = 1, 2, . . . , m are assured.
184
6 Prevention of Windup in Multivariable Systems
Remark 6.2. This filter can also be augmented by additional cascades, as discussed for single input systems in Chapter 5.3. This considerably improves the behaviour for small amplitudes. Here a modification of the matrices Mb , Mc , Md , . . . should also be performed so that the input signals ubi (t), uci (t), udi (t), . . ., i = 1, 2, . . . , m coincide in the steady state. This solves the problems caused in such multi-cascade filters by wrong saturation or desaturation sequences in most cases (see also Remark 5.2). However, as in the single input case, no strict proof of this exists. Remark 6.3. Because of the decoupling inner control (6.23) the inner loop can also be treated as m SISO systems in parallel. Thus, the design of the outer cascades could use SISO methods. For notational convenience, however, the MIMO formulation has been retained for the description of the outer cascades. Remark 6.4. If the system contains eigenvalues at s = 0, unlimited amplitudes of the output y(t) can be obtained in spite of the existing input saturations. To assure this, the inner loop of the reference shaping filter must also contain eigenvalues at s = 0 (see also the Remark 5.1 and Example 5.2). A detailed discussion of these problems in the presence of MIMO systems is not presented here. Remark 6.5. As discussed in Chapter 5.4, one could omit the inner (stabilizing) cascade in the presence of stable systems. This, however, entails signal saturations at the input of the model of the system that is used in the reference shaping filter. Therefore, this can only be recommended when directionality preservation does not constitute a problem. Figure 6.12 shows the complete control scheme, which consists of the system, the trajectory generator, an observer-based controller with signal model for disturbance rejection in the sense of Davison and an additional dynamic element that is possibly necessary in the case of stable plants. This scheme assures the reference behaviour assigned by the trajectory generator and the disturbance behaviour assigned by the observer-based controller. The signals uCri (t), i = 1, 2, . . . , m generated in the trajectory generator never exceed the corresponding saturation limits u0i , i = 1, 2, . . . , m. Consequently, plant input saturation does not become active so that the ADE is not necessary in the absence of disturbances. In the presence of unstable systems one should make certain that jointly acting reference and disturbance inputs do not cause plant input saturation (see Chapter 5). Therefore, when the scheme of Figure 6.12 is applied to unstable systems, the ADE can be omitted. In stable systems disturbances can usually be allowed to cause input saturation. If the nominal state feedback uC (t) = Kx(t) is such that plant windup leads to a distinct oscillatory behaviour, an appropriately designed ADE should be added.
6.6 Systematic Solution of the Directionality Problem
185
ADE ξ˙ = (A−BKS )ξ+Bδ η = (K −KS )ξ
δ
η
d satu0
y x˙ = Ax+Bus +Bd d y = Cx + Dd d ym = Cm x + Dmd d
us
u
uCr
ym
uCδ r
Nonlinear reference shaping filter
x ˆ
Kx
z˙ = F z+Lym +TBus x ˆ = Θz + Ψ ym
σ
xM K
u ˆC
Kv
v
v˙ = Sv+Bε y−Bσ σ
Figure 6.12. Control scheme consisting of the system, the trajectory generator, the observer-based controller and the ADE that is possibly necessary in the case of stable plants
Example 6.5. Design of a reference shaping filter that preserves directionality for the system investigated in Example 6.2. Demonstration of plant windup effects triggered by disturbance inputs We consider the system of Example 6.2. The saturation limits u01 = 4 and u02 = 5.6 restrict the maximum usable output regions to y01 = y02 = 7.428 and the maximum used output amplitudes are assumed to be r01 = r02 = 5. In what follows we assume that only step-like changes of the reference input occur when the filter is in steady state. Thus, the maximum amplitudes of ua (t) caused by reference signals can be determined in simulation. When experimenting with different parameterizations of the decoupling control ua (t) = −Ka xM (t) + Ma ubs (t), one observes the following. Step-like changes of ubs (t) with −r0i ≤ ubsi (t) ≤ r0i ,
i = 1, 2
cause signals uai (t) that stay within the limits −u0i ≤ uai (t) ≤ u0i ,
i = 1, 2
if all six zeros of the characteristic polynomial det(sI − AM + BM Ka ) are located at s = −1.16. The corresponding matrices are
186
6 Prevention of Windup in Multivariable Systems
0.560896 1.0368 0.48 1 1 Ka = −1 −2 −1 0.560896 1.0368 1 6.243584 −1.560896 Ma = 4.682688 13 1.560896
0 0.48
and
A decoupling state feedback ub (t) = −Kb xM (t) + Mb r(t) that places the zeros of the polynomial det[sI −AM +BM (Ka +Ma Kb )] at s = −3.4 gives a transfer matrix Kb (sI − AM + BM Ka )−1 BM Ma which satisfies the circle criterion. The corresponding matrices Kb and Mb are 1 1769208 1436400 315000 589736 478800 105000 Kb = 24389 −589736 −478800 −105000 2358944 1915200 420000 1 614125 0 Mb = 0 614125 24389 Up to this point the stability of the filter can be proven. Improved transients for small amplitudes can be obtained by an additional cascade (c) (6.35) uc (t) = −Kc xM (t) + Mc r(t) according to Figure 6.13. The feedback matrix Kc is chosen to obtain a decoupled behaviour and a transfer matrix Kc [sI − AM + BM (Ka + Ma Kb )]−1 BM Ma
(6.36)
r Reference shaping filter uCr
Mb
Mc satr0 uc
Kc
satr0 ucs
ub
Kb
ubs
ua
Ma
System model
yM
Ka xM
Figure 6.13. Trajectory generator with three cascades
6.6 Systematic Solution of the Directionality Problem
187
which satisfies the circle criterion. The matrix −1 −1 Mc = Ma−1 CM {−AM + BM Ka + BM Ma (Kb + Kc)} BM − Mb (6.37) assures vanishing tracking errors. When using a decoupling Kc such that the zeros of the characteristic polynomial det[sI − AM + BM Ka + BM Ma (Kb + Kc )] are located at s = −10, the transfer matrix (6.36) satisfies the circle criterion. The corresponding matrices are 1 45032625 12436875 928125 15010875 4145625 309375 Kc = 24389 −15010875 −4145625 −309375 60043500 16582500 1237500 1 15010875 0 Mc = 0 15010875 24389 Figure 6.14a shows the improvements due to the additional cascade (c) for inputs ri (t) = rSi 1(t), i = 1, 2 with rS1 = 0.1 and rS2 = −0.1. The dashed transients are obtained with a reference shaping filter having only two cascades (Figure 6.11), and the transients shown in solid lines with the reference shaping filter of Figure 6.13. There is a considerable improvement due to the third cascade. However, when using the above matrices Mb and Mc for the injection of the reference signals, the correct saturation and desaturation sequences (see discussions in Section 4.4 and Chapter 5) are not always assured. 6
0.1
ubs1 ubs1 (t) and ucs1 (t)
yM 1 (t) and yM 2 (t)
yM 1 0.05
0
−0.05
4
2
ucs1
yM 2 −0.1
0
1
2
3
Time
(a) Output signals of the filters with two and three cascades
0
3
4
5
6
Time
(b) Wrong saturation sequence
Figure 6.14. Transients of the reference shaping filters
7
188
6 Prevention of Windup in Multivariable Systems
Figure 6.14b shows the signals ubs1 (t) (solid lines) and ucs1 (t)(dashed lines) resulting from a reference input with rS1 = 4.5 and rS2 = −4.5. It is obvious that the signal ub1 (t) in the inner cascade saturates at t = 4.6, whereas the corresponding signal uc1 (t) in the outer cascade remains unsaturated until t = 4.9. Desaturation also takes place in the wrong order. The stability of the reference shaping filter is only guaranteed if saturation takes place in the outer cascade first and progresses inwards, while desaturation starts in the inner cascade and progresses outwards. When modifying the matrices Mb and Mc so that the stationary signals in the cascades (b) and (c) coincide, the wrong saturation sequences no longer occur. One obtains coinciding values ubi (∞) = uci (∞), i = 1, 2, if the condition Kb xM (∞) = Mb∗ r(∞) is satisfied. The modified matrices are here given by Mb∗ = Mb − I and Mc∗ = Mc + I The solid lines in Figure 6.15a depict the reference transients of the system, when the three-cascade filter with modified matrices Mb∗ and Mc∗ is used to drive the system in a scheme of Figure 5.1. The observer-based controller of Example 6.2 is used for stabilization and disturbance rejection, and the additional dynamic element of Example 6.2 to prevent plant windup which, of course, is not caused by reference signals. The amplitudes of the input signal vary within the regions 0 ≤ rS1 ≤ 5 and
− 5 ≤ rS2 ≤ 0
6
5
y1 (t) and y2 (t)
yM 1 (t) and yM 1 (t)
y1
4 2 0 −2 −4 −6
yM 1
3 2 1 0
y2 0
4
5
10
Time
(a) Comparison with transients obtained in Example 6.2
−1
yM 2 0
5
10
Time
(b) Demonstration of the decoupling
Figure 6.15. Reference transients of the system
6.6 Systematic Solution of the Directionality Problem
189
The dashed lines in Figure 6.15a show the transients obtained with the controller in Example 6.2. Especially for small amplitudes of the reference steps they are considerably delayed in comparison to the transients obtained with the reference shaping filter. This is a consequence of an early change of sign in the input signals of the system, caused by the additional dynamic element in the scheme of Figure 6.1. This premature retraction of the plant input signal occurs when the intensity of plant windup is beyond certain limits. A detailed discussion of these effects is presented in [35]. An inspection of the plots in Figure 6.15a also shows that for reference step inputs in the vicinity of the maximum used amplitudes, the transients occurring with the trajectory generator do not approach the new set point as fast as those obtained in Example 6.2. This is a consequence of the fact that the output signal uCr (t) ≡ ua (t) of the reference shaping filter for the preservation of directionality never reaches the input saturation limits, while input saturation becomes active in the control configurations discussed in Example 6.2. Figure 6.14b shows the reference transients of the shaping filter due to input amplitudes in the regions 0 ≤ rS1 ≤ 5 and rS2 = 0. Decoupling is obviously assured within the whole region. Now assume that a sinusoidal disturbance acts during reference transients and that it causes an output signal u(t) of the controller that exceeds the saturation limits. This, of course, forces the output y(t) of the system to diverge from the desired reference transient yM (t). The tracking error yM (∞) − y(∞) vanishes when u(t) becomes non-saturated. Plant windup effects are not caused by input saturation, as long as a suitable additional dynamic element is present. Figure 6.16a shows reference transients for ri (t) = rSi 1(t), i = 1, 2 with rS1 = 1 and rS2 = 0, when at time τ = 2 a sinusoidal disturbance input d(t) = dS sin [2(t − τ )] 1(t − τ ) with dS = 1 is acting. The input signals us1 (t) and us2 (t) shown in Figure 6.16b demonstrate that both saturate. Apart from the inevitable deviations caused by the disturbance input, the output y(t) does not exhibit additional undesired effects of input saturation. However, as already observed in other examples, the dynamics of the aditional dynamic element exert a negative influence on the disturbance rejection. Figure 6.16c shows the reaction of the loop to the same input signals as in Figure 6.16a, when no ADE is present. Obviously the deviations of y(t) from the desired trajectory are increased by the ADE. Figure 6.17 demonstrates that it may nevertheless be advisable to use an ADE in this case, since the plant windup due to the nominal control is quite intensive (see the transients in Figure 6.2b). The dashed transients in Figure 6.17 result when no ADE is present and when reference input signals with rS1 = 5 and rS2 = 0 are applied at time t = 0, while a sinusoidal disturbance is acting at time τ = 2 with amplitude dS = 5.
190
6 Prevention of Windup in Multivariable Systems 6 4
y1
us1 (t) and us2 (t)
y1 (t) and y2 (t)
1
0.5
0
0
us1
−2 −4
y2 0
us2
2
5
−6
10
0
5
Time
10
Time
(a) Output signals of the system with ADE present
(b) Corresponding input signals of the system
y1 (t) and y2 (t)
1
y1 0.5
y2
0 0
5
10
Time
(c) Output signals of the system without ADE Figure 6.16. Jointly acting reference and disturbance inputs
Now saturation caused by the jointly acting reference and disturbance inputs gives rise to an oscillatory behaviour. If the ADE of Example 6.2 is introduced, the same input signals give rise to the transients shown in solid lines in Figure 6.17, i.e., no plant windup effects occur. The slight ripple in y1 (t) stems from repeated saturations of u1 (t), which are caused by the disturbance. The results of Figure 6.17 demonstrate that jointly acting reference and disturbance input signals can give rise to plant windup effects. This danger exists especially if the nominal control gives rise to a severe violation of the circle criterion, which is the case for single input systems if the phase ΦL (ω) of the frequency response K(jω − A)−1 B + 1 is |ΦL (ω)| ≥ 170◦ .
6.6 Systematic Solution of the Directionality Problem
191
7
Outputs y1 (t) and y2 (t)
6 y1
5 4 3 2 1
y2
0 −1
0
5
10
15
20
Time
Figure 6.17. Responses of the closed loop for larger input signals
Example 6.6. Design of a trajectory generator that preserves directionality for the system in Example 6.4, where no decoupling state feedback exists that guarantees stability in case of input saturation The system discussed in Example 6.4 is characterized by a transfer behaviour that does not allow a decoupling state feedback without violating, for example, the circle criterion. Thus, input saturation can give rise to stability problems in any decoupling state feedback. The maximum used output ranges are limited by r0i = 1, i = 1, 2, 3, which is assured by the input saturation ubs (t) = satr0 (ub (t)) in the schemes of Figures 6.11 and 6.13. If one assumes that step-like changes of the reference signal only occur when the transients due to the previous change have settled, a placing of the freely assignable eigenvalues at s = −1 gives a decoupling control such that no signal uai (t), i = 1, 2, 3 exceeds the corresponding saturation limits u01 = 6, u02 = 12 and u03 = 9. The worst case situation arises when the outputs of the system have reached their maximum positive values and all reference inputs change to their maximum negative values. If this happens there is a short period with |ua1 (t)| > 6, which is allowed here since it only occurs in the worst case and during a very short time period (< 0.3). The decoupling control ua (t) = −Ka xM (t)+Ma ubs (t) that shifts the freely assignable eigenvalues to s = −1 is parameterized by the pair
192
6 Prevention of Windup in Multivariable Systems
⎡
0 2 Ka = ⎣ −4 0 −3 −5
⎡
⎤ 9.5 9.5 −20 −20 ⎦ 8 8
3 1 0 −1 1 1
⎤ 1 0 0 and Ma = ⎣ 0 1 0 ⎦ −1 0 1
Though the transfer matrix Ka (sI − AM )−1 BM violates the circle criterion, stability problems do not occur, since the signal ua (t) stays in the linear range of the actuator. Therefore, the inner loop of the reference shaping filter is a stable, linear, decoupled system with transfer behaviour ⎡
1 ⎢s+1 0 ⎢ 1 ⎢ y¯M (s) = ⎢ 0 ⎢ s + 1 ⎣ 0 0
⎤ 0
⎥ ⎥ ⎥ u ¯bs (s) 0 ⎥ ⎥ ⎦ 1 s+1
and an input nonlinearity ubs (t) = satr0 (ub (t)). The stability of the model-based trajectory generator is assured if a decoupling state feedback ub (t) = −Kb xM (t) + Mb r(t) is added such that the transfer matrix (6.33) satisfies the circle criterion. This is the case when the freely assignable eigenvalues are shifted to s = −20 by this outer cascade. The corresponding pair is ⎡ ⎡ ⎤ ⎤ 57 19 19 0 199.5 0 20 0 0 Kb = ⎣ −38 0 19 19 −342 0 ⎦ and Mb = ⎣ 0 20 0 ⎦ 19 19 0 0 351.5 19 0 0 20 The linear behaviour of the filter (effective for small reference amplitudes only) is then characterized by ⎤
⎡
20 ⎢ s + 20 0 ⎢ 20 ⎢ y¯M (s) = ⎢ 0 ⎢ s + 20 ⎣ 0 0
0
⎥ ⎥ ⎥ r¯(s) 0 ⎥ ⎥ ⎦ 20 s + 20
Figure 6.18a shows the transients of the reference shaping filter when the same input sequence is applied as in Figures 6.9 through 6.10 (i.e., rS1 = 0.7, rS2 = −0.8 and rS3 = −0.9). Figure 6.18b shows the corresponding plant input signals. Compared to the results in Example 6.4 the improvements are obvious. The relatively sluggish transients only occur for large changes of the reference signal, while the behaviour for small changes is much faster. This is demonstrated by the results shown in Figure 6.18c, which also show the perfect preservation of directionality.
6.6 Systematic Solution of the Directionality Problem
193
ua1 (t), ua2 (t) and ua3 (t)
yM 1 (t), yM 2 (t) and yM 3 (t)
1
yM 1
0.5
0
−0.5
yM 2 −1
10
5
ua1
0
ua2 −5
ua3
yM 3 0
5
0
10
5
10
Time
Time
(a) Reference transients
(b) Corresponding input signals
yM 1 (t), yM 2 (t) and yM 3 (t)
1
yM 1 0.5
yM 2
0
−0.5
yM 3 −1
0
5
10
Time
(c) Decoupled behaviour generated by the trajectory generator Figure 6.18. Transients of the directionality preserving reference shaping filter
The above design assumed step-like changes of the reference signal when the filter is in the steady state. If this is not guaranteed, input signals ua (t) can result that exceed the saturation limits. Figure 6.19a shows a reference sequence, where the signal ua1 (t) clearly violates the restriction |ua1 (t)| ≤ 6. Arbitrary (e.g., stochastic) reference inputs can also drive ua3 (t) beyond its limit u03 = 9. In order to be certain that arbitrary ri (t) do not drive ua (t) beyond the saturation limits, the L1 -norm must be used. Given the above pair Ka and Ma , the matrix of the L1 -norms of the individual transfer functions (6.29) is
194
6 Prevention of Windup in Multivariable Systems
0.5
ua1 (t), ua2 (t) and ua3 (t)
r1 (t), r2 (t) and r3 (t)
1
r1 r2
0
r3 −0.5 −1 0
2
4
6
0
−5
ua1 −10
8
ua3
ua2
5
0
2
Time
4
6
8
Time
(a) Reference sequence applied
(b) Input signals generated
Figure 6.19. Violation of the amplitude restriction for ua (t) if the filter is not in the steady state when changes of the reference signals occur
⎡
2.63 G 1 = ⎣ 4.79 5.90 ua
2.26 3.40 2.43
⎤ 2.30 5.01 ⎦ 5.28
With r0i = 1, i = 1, 2, 3 the relation (6.30) gives the vector of upper limits uamax = 7.19
13.2
13.6
T
All uaimax are above the corresponding input saturation limits u0i . Smaller upper limits of the signals uai (t) can be obtained by reducing the real parts of the freely assignable eigenvalues in the decoupling control ua (t) = −Ka xM (t) + Ma ubs (t). Assigning a transfer behaviour ⎤ ⎡ 0.55 0 0 ⎥ ⎢ s + 0.55 ⎥ ⎢ 0.7 ⎥ ⎢ y¯M (s) = ⎢ u¯bs (s) 0 0 ⎥ ⎥ ⎢ s + 0.7 ⎦ ⎣ 0.7 0 0 s + 0.7 for the inner loop that requires the pair ⎡ ⎡ ⎤ ⎤ −1.35 1.55 2.55 1 4.775 9.5 0.55 0 0 0 −0.3 −1.3 −14.6 −20 ⎦ and Ma = ⎣ 0 0.7 0⎦ Ka = ⎣ −3.4 −1.95 −4.85 1.45 1 7.175 7.7 −0.55 0 0.7 the resulting matrix of the L1 -norms of the transfer matrix in (6.28) now has the form
6.6 Systematic Solution of the Directionality Problem
⎡
1.44 Gua 1 = ⎣ 2.72 3.49
195
⎤ 2.30 3.83 ⎦ 3.69
2.26 2.67 1.81
and with this (6.30) leads to uamax = 6.00
9.22
8.99
T
Therefore, with this decoupling inner cascade, arbitrary reference signals do not cause signals |uai (t)| > u0i . When placing the freely assignable eigenvalues at s = −20, the outer decoupling cascade ub (t) = −Kb xM (t) + Mb r(t) is parameterized by ⎤ ⎡ 8169 2723 2723 0 28591.5 0 1 ⎣ −4246 0 2123 2123 −38214 0⎦ Kb = 77 2123 2123 0 0 39275.5 2123 ⎡
and
2800 1 ⎣ 0 Mb = 77 0
⎤ 0 0⎦ 2200
0 2200 0
With this Kb the transfer matrix (6.33) satisfies the circle criterion. In Figure 6.20a the reference transients of this shaping filter are plotted and Figure 6.20b shows the corresponding input signals. Compared to the results in Figure 6.18a the transients are distinctly delayed. The behaviour for small changes of the reference input, however, is identical in both filters. 5
ua1 (t), ua2 (t) and ua3 (t)
yM 1 (t), yM 2 (t) and yM 3 (t)
1
yM 1
0.5
0
−0.5
yM 2 −1
yM 3 0
5
Time
(a) Reference step responses
10
ua3 0
ua1
ua2
−5
0
5
10
Time
(b) Corresponding input signals
Figure 6.20. Transients generated by the filter, where arbitrary changes of the reference signals do not cause input signals |uai (t)| > u0i
7 Additional Rate Constraints
7.1 Introductory Remarks So far it has been assumed that only amplitude restrictions are present, whereas smaller changes of the input signal can be transferred in an immediate proportional manner. In some applications, however, the velocity of the input signal is also bounded. Many actuators contain storage elements with an integrating behaviour. Consider, e.g., hydraulic cylinders or actuators incorporating thread rods. Both the inflow to the hydraulic cylinder and the speed of the motor driving the rod are finite, so that the realizable rate of change of the input signal is also restricted. Rate limitations can have a destabilizing influence on the closed loop when not properly accounted for [46]. Critical problems have arisen in modern flight control systems, where rate saturation contributed to the onset of pilot induced oscillations and where it even caused airline crashes [17, 45]. In what follows, the limit of amplitude saturation will be denoted by u0 and the limit of rate saturation by uV . Figure 7.1 shows a model of an actuator with joint amplitude and rate constraints, which was presented in [5].
satu0 u
sign us
w
ws
1 −1
uV
1 s
us
Figure 7.1. Model of an amplitude- and rate-restricted actuator
198
7 Additional Rate Constraints
This model, however, reproduces the behaviour of the amplitude- and ratesaturated actuator only when the rate of change |u(t)| ˙ is above the limit uV . The model in Figure 7.1 causes problems in simulation whenever the input signal w(t) to the sign function vanishes and whenever |u(t)| ˙ < uV . A model that is better suited for simulation is depicted in Figure 7.2. The gain V should be chosen so that the resulting time constant of the (linear) first-order system exerts a negligible influence on the dynamic behaviour of the closed loop. Figure 7.3a shows the output us (t) of the model in Figure 7.2 for step-like inputs u(t) = su 1(t) with su = 0.1, 0.3, 0.5, 0.7, 0.9, 1.1 and for the parameters u0 = 1, uV = 2 and V = 200.
satuV
satu0 u
us
us
1 s
V
Figure 7.2. Approximate model of an amplitude- and rate-restricted actuator
Output us (t)
1
satuuV0
0.8 0.6
u
us
0.4 0.2 0
0
0.5
1
Time
(a) Step responses of the approximate actuator model with saturation limits u0 = 1 and uV = 2
(b) Block diagram of an actuator with joint amplitude and rate saturation
Figure 7.3. Behaviour of the approximate model and block diagram of an actuator with joint amplitude and rate saturation
7.1 Introductory Remarks
199
In what follows, an amplitude- and rate-restricted actuator will be represented by the symbol shown in Figure 7.3b. For control systems consisting of a linear part and an isolated nonlinearity of the sector type, various stability tests are available and their application is relatively simple (see Section 3.2). If several nonlinearities are present the stability tests are much more involved (see also Section 4.4 and Chapter 5). The actuator models shown in Figures 7.1 and 7.2 both contain two nonlinear elements, so that the standard stability criteria used throughout the book are no longer applicable. This may be one of the reasons why papers dealing with joint amplitude and rate constraints are far less numerous than those on amplitude restricted actuators. There are solutions of the problem of joint amplitude and rate constraints in the literature (see, for example, the references in [11], [6] or [5] and the discussions of the existing approaches therein). The solutions presented so far use an actuator model incorporating two nonlinear elements (for amplitude and rate saturation). Consequently the handling of the problem becomes much more involved as compared to the well-known methods for the prevention of windup in the presence of amplitude restricted actuators. By a relatively simple measure, all known techniques for the prevention of windup also become applicable to amplitude- and rate-constrained actuators. This uses an ersatz model of amplitude- and rate-restricted actuators containing one saturating nonlinearity only. Figure 7.4 shows this ersatz model. The restriction of the amplitude to the region −u0 ≤ us (t) ≤ u0 is assured by the nonlinearity us (t) = satu0 (u(t)) and the restriction of the rate of change −uV ≤
dus (t) ≤ uV by an appropriate time constant TV of the first-order dt
system. When assigning this time constant as TV =
2u0 uV
(7.1)
arbitrary input signals u(t) to this model do not cause output signals us (t) with rate
dus (t) > uV . dt
satu0 u
us
1 TV s + 1
us
Figure 7.4. Ersatz model of an amplitude- and rate-restricted actuator
200
7 Additional Rate Constraints
This can either be proven with the aid of the L1 -norm, or it can be made plausible by worst case arguments. ¯˙s (s) = GV (s)¯ The transfer behaviour u us (s) between the input to the firstorder system in Figure 7.4 and the velocity of its output is characterized by GV (s) =
s 2 . The L1 -norm of this transfer function is GV (s)1 = . sTV + 1 TV
Given the restriction |us (t)| ≤ u0 , the maximum amplitude of the output is limited by |u˙ s (t)| ≤
2 u0 = uV (see (5.4) and (7.1)). TV
A plausibility argument is the following. The worst case situation for u˙ s (t) is a sudden change of the signal us (t) from one saturation limit to the opposite one. This worst case input step has an amplitude 2u0 . When applied to a firstorder system with time constant TV , the initial velocity of its output signal is |u˙ s (0)| = 2u0
1 = uV . TV
When inserting this ersatz model in front of the system, neither the amplitude nor the rate saturation in the actual actuator become active and, consequently, the actuator nonlinearities do not have to be taken into account for the analysis of the closed loop. Therefore, the control design and the stability analysis can be carried out for a linear system (augmented by the first-order system) with an input nonlinearity of the saturation type. Thus all known techniques for the prevention of windup also apply to actuators with joint amplitude and rate saturation. Remark 7.1. The above-suggested solution of the windup problems caused by amplitude- and rate-saturated actuators is relatively conservative, as the resulting input signal us (t) to the plant always stays below the existing saturation limits (though it may come arbitrarily close in worst case situations). The ersatz model used, however, has an important advantage, as it contains only one nonlinearity us (t) = satu0 (u(t)).
7.2 Application to the Case of Stable Systems Given are stable, linear, time invariant single input systems of the order n with one manipulated input us (t), a controlled output y(t) and p ≥ 1 measured outputs ym (t), described by their state equations x(t) ˙ = Ax(t) + bus (t) y(t) = cT x(t) ym (t) = Cm x(t)
(7.2)
As a generalization of the following procedure to MIMO systems is obvious, the discussions are restricted to single input systems for simplicity. On the one hand, the actuator at the input of the system has an amplitude limitation, i.e., only signals within the region
7.2 Application to the Case of Stable Systems
−u0 ≤ u(t) ≤ u0
201
(7.3)
can be transferred to the system (7.2). On the other hand, the actuator also has a restricted slew rate, i.e., only signal changes within the region −uV ≤
du(t) ≤ uV dt
(7.4)
can be handled. When inserting the ersatz model of Figure 7.4 in front of the system, one can add the first-order system to the model (7.2) of the plant to obtain the state equations of the augmented system x˙ (t) = A x (t) + b us (t) y(t) = cT x (t)
(7.5)
ym (t) = Cm x (t)
where x (t) = and A =
x(t) y (t) (t) = m = ˆ col [x(t), us (t)] , ym = ˆ col [ym (t), us (t)] us (t) us (t)
A b , 0 −1/TV
b =
0 , 1/TV
cT = cT 0 ,
= Cm
Cm 0 0 1
A saturation nonlinearity us (t) = satu0 (u(t)) is located at the input of this augmented system. Remark 7.2. The problems of actuators with amplitude saturation only and with joint amplitude and rate saturation can be handled in the same manner. In the case of mere amplitude restraints, the state equations (7.2), and in the case of additional rate constraints, the state equations (7.5) of the augmented system constitute the description of the plant. When using observer-based controllers, first the state feedback u(t) = −k T x (t) + m r(t)
(7.6)
˜ (s) = det(sI − A + b k T ) are at has to be designed such that the zeros of D the desired locations. The danger of plant windup is indicated by the phase ΦL (ω) of the fre˜ (jω) D where D (s) = det(sI − A ). If this danger exists, and quency response D (jω) it is usually increased when the system is extended by a first-order system as discussed above, plant windup can be prevented by an additional dynamic element.
202
7 Additional Rate Constraints
When using the frequency domain version according to Section 3.3.1, ˜ monic Hurwitz polynomials Ω(s) and Ω(s) of equal degrees must be selected ˜ (jω)Ω(jω) D satisfies the chosen criterion for such that the phase ΦLΩ (ω) of ˜ D (jω)Ω(jω) the prevention of plant windup. Since the actual input signal us (t) ≡ xn+1 (t) to the system neither exceeds the amplitude limit u0 nor the rate limit uV , the actuator nonlinearity satuuV0 (·) at the input of the system never becomes active. Moreover, when the transfer function GLΩ (s), which characterizes the linear transfer behaviour ˜ (s)Ω(s) D u ¯(s) = −GLΩ (s)¯ us (s) = − (7.7) − 1 u¯s (s) ˜ D (s)Ω(s) satisfies, for example, the circle criterion, the loop in Figure 7.5 is globally asymptotically stable. In the block diagram of Figure 7.5 only a state observer is shown. Of course, disturbance observers or signal models in the sense of Davison can also be incorporated in this scheme.
ADE ˜ Ω(s) − Ω(s) Ω(s)
satuuV0
satu0 r
m
us
u
us
1 TV s + 1
y Linear system
ym
xn+1
Ersatz model
col ym
kT
xˆ
State observer
Figure 7.5. Closed loop with an observer-based controller in the presence of actuators with joint amplitude and rate constraints
7.2 Application to the Case of Stable Systems
203
Example 7.1. Destabilizing influence of an existing rate limitation when not taken into account Given is a stable system of the order three with one input and two measured outputs. The parameters of the state space description (7.2) are ⎡ ⎤ ⎡ ⎤ 0 1 0 0 −2 −1 1 A = ⎣ −1 −2 −1 ⎦, b = ⎣ 1 ⎦, cT = −2 −1 1 and Cm = 1 0 0 0 0 −1 1 and there is a saturation with amplitude u0 = 1 at the input of the plant. The denominator polynomial of the transfer function G(s) of the system is D(s) = ˆ det(sI − A) = (s + 1)3 . We consider an observer-based control that shifts the eigenvalues of the ˜ system to s = −10, so that D(s) = ˆ det(sI − A + bk T ) = (s + 10)3 is obtained. The eigenvalues of the minimal-order state observer are placed at s = −15, so that its characteristic polynomial is Δ(s) = ˆ det(sI − F ) = s + 15. The state feedback u(t) = −k T x(t) + mr(t) has the parameters and m = 1000 (see Section A.2) k T = −1701 −972 999 and the state observer z(t) ˙ = F z(t) + Lym (t) + T bus(t)
with x ˆ(t) = Ψ ym (t) + Θz(t)
is characterized by
F = −15, L = −98 −98 , T =
⎡ 0 7 7 −6.5 , Ψ = ⎣ 13 14
⎤ ⎡ ⎤ 1 0 12 ⎦ and Θ = ⎣ 2 ⎦ 14 2
(see Example A.1). ˜ D(jω) dips down to D(jω) −165◦ at ω = 3, an additional dynamic element (ADE) is required to prevent ˜ plant windup. When using the polynomials Ω(s) = s + 6 and Ω(s) = s + 1.5 ˜ D(jω)Ω(jω) is (see Section 3.3) the minimum value of the phase ΦLΩ (ω) of ˜ D(jω)Ω(jω) −128◦, i.e., ΦLΩ (ω) stays within the limits required by the phase design aid. The dashed line in Figure 7.6 depicts the transient due to a reference input r(t) = rS 1(t) with rS = 0.5. Though input saturation becomes active, the ADE prevents an oscillatory behaviour that would otherwise be caused by plant windup. When the actuator with amplitude saturation u0 = 1 also contains a rate saturation with uV = 2, i.e., when the input saturation us (t) = satu0 (u(t)) is replaced by a joint amplitude and rate constraint us (t) = satuuV0 (u(t)), the same reference input signal gives rise to the limit cycling shown in a solid line in Figure 7.6. Since the phase ΦL (ω) of the frequency response
204
7 Additional Rate Constraints 0.7 0.6
Amplitude constraint only
Output y(t)
0.5 0.4 0.3 With additional rate constraint
0.2 0.1 0
0
2
4
6
8
10
Time
Figure 7.6. Reference transients without and with rate saturation in the actuator
Example 7.2. Controller design for the system of Example 7.1 such that the rate saturation is also taken into account Given is the amplitude constraint u0 = 1 and the rate constraint uV = 2. Therefore, the time constant in the ersatz model is TV = 1, so that the parameters in the description (7.5) of the augmented system are ⎡ ⎡ ⎤ ⎤ ⎡ ⎤ 0 1 0 0 0 −2 −1 1 0 ⎢ ⎢ ⎥ ⎥ −1 −2 −1 1 ⎥ ⎢ 0 ⎥ T ⎣ 1 0 0 0⎦ A =⎢ ⎣ 0 0 −1 1 ⎦, b =⎣ 0 ⎦, c = −2 −1 1 0 , Cm = 0 0 0 1 0 0 0 −1 1 ˜ (s) = (s+10)4 This leads to D (s) = (s+1)4 . The characteristic polynomial D of the closed loop is assigned by the feedback vector (see (7.6)) k T = −16038 −9477 9963 36 which leads to m = 10000. The state observer of minimal order one z(t) ˙ = F z(t) + Lym (t) + T b us (t) with x ˆ (t) = Ψ ym (t) + Θz(t) is parameterized by F = −15, T = 3.5 3.5 −3.25 0.125 , L = −49 −49 2 ⎡ ⎤ ⎡ ⎤ 0 1 0 0 ⎢ 13 12 −0.5 ⎥ ⎢4⎥ ⎥ ⎢ ⎥ Ψ =⎢ ⎣ 14 14 −0.5 ⎦ and Θ = ⎣ 4 ⎦ 0 0 1 0
7.2 Application to the Case of Stable Systems
205
The danger of plant windup is now indicated by the phase ΦL (ω) of the ˜ (jω) D . Its minimum value is −219◦. The necessary phase frequency response D (jω) lead to assure the prevention of plant windup is not achievable with an ADE ˜ of the order one. A choice of Ω(s) = (s + 2)2 and Ω(s) = (s + 22)2 gives a ˜ D (jω)Ω(jω) with |ΦLΩ (ω)| < 130◦ , i.e., the restrictions of phase ΦLΩ (ω) of ˜ D (jω)Ω(jω) the phase design aid are satisfied. When parameterizing the ADE by two polynomials ΩC (s) = (s + 0.8)2
the 2 ˜
and ΩC (s) = (s + 17) , one obtains ΦLΩC (ω) < 90◦ , i.e., with this ADE the circle criterion is satisfied. The dashed line in Figure 7.7 shows the transient of the closed loop for a reference step input with amplitude rS = 0.2 when the ADE is parameterized ˜ by the pair Ω(s) and Ω(s). The solid line shows the case where the ADE is ˜C (s). parameterized by the two polynomials ΩC (s) and Ω The transient shown by a solid line is not only delayed considerably in comparison to the dashed line, it also exhibits an all pass-like behaviour, which should be avoided whenever possible. This undesired transient behaviour is caused by a premature change of sign in the plant input signal, which results ˜C (s) are too far apart whenever the zeros of the polynomials ΩC (s) and Ω (see also Remark 3.2). Since the phase lead required by the phase design aid ˜ is smaller, the distance between the zeros of Ω(s) and Ω(s) is also smaller. 0.2
Output y(t)
0.15
Phase design aid used for the parameterization of the ADE
0.1
0.05
Design of the ADE so that the circle criterion is satisfied 0
−0.05
0
1
2
3
4
5
6
7
8
9
10
Time
Figure 7.7. Reference transients for two different additional dynamic elements
206
7 Additional Rate Constraints
7.3 Application to the Case of Unstable Systems When using the control structure introduced in Chapter 5, a closed loop with proven stability can be designed even for constrained unstable systems. The basic feature of this scheme is a subdivision of the restricted input range into one part that is used for disturbance rejection and the remaining part for tracking. This becomes possible by using a nonlinear model-based trajectory generator, whose stability is guaranteed for arbitrary reference signals. It generates input signals for the system that stay in a predefined region, whose limits are smaller than the existing saturation limits. The feedback controller is only used for system stabilization and disturbance rejection. Due to an appropriate injection of the model states, the feedback controller is not activated by reference inputs. Given is a single input system of the order n with manipulated input us (t), controlled output y(t) (assumed to be measurable), p ≥ 1 measured outputs ym (t), and ρ disturbance inputs d(t). The system is assumed to be completely observable and controllable. Its state equations are x(t) ˙ = Ax(t) + bus (t) + Bd d(t) y(t) = cT x(t) + dTd d(t)
(7.8)
ym (t) = Cm x(t) + Dmd d(t) Now the system is allowed to have exponentially unstable eigenvalues. At its input there is a nonlinear element restricting the amplitude of the signals driving the linear system to the range −u0 ≤ us (t) ≤ u0
(7.9)
(amplitude saturation) and their rate of change to dus (t) ≤ uV (7.10) dt (rate saturation). If the system does not have eigenvalues at s = 0, the crit ical amplitude of the output is ymax = cT (−A)−1 b u0 . Therefore, one must observe a safe region −r0 ≤ r(t) ≤ r0 for the applied reference signals with r0 < ymax (see also Sections 1.4, 5.1 and 6.2). Inserting the ersatz model of an amplitude- and rate-restricted actuator according to Figure 7.4 at the input of the system, neither the amplitude nor the rate saturation in the actuator become active and, therefore, the actual actuator can be neglected in the control design. The feedback control for stabilization and disturbance rejection must be designed for the augmented system −uV ≤
x˙ (t) = A x (t) + b us (t) + Bd d(t) y(t) = cT x (t) + dTd d(t) (t) ym
=
Cm x (t)
+
Dmd d(t)
(7.11)
7.3 Application to the Case of Unstable Systems
with
x(t) = ˆ col [x(t), us (t)] , us (t) y (t) (t) = m = ˆ col [ym (t), us (t)] ym us (t) x (t) =
and
207
0 , b = 1/TV T Cm 0 T c = c 0 , Cm = 0 1 Bd Dmd Bd = = , Dmd 0 0 A b A = 0 −1/TV
2u0 assures that the restriction (7.10) is satisfied. uV The nominal state feedback The time constant TV =
u ˜(t) = k T x (t)
(7.12)
is intended to stabilize the system and to assure the desired disturbance rejection. Disturbance rejection also depends, of course, on the observer and on the signal model possibly included in the controller. The design of the observer-based compensator for the augmented system is along the lines presented in the Appendix. As the additional state variable xn+1 (t) = us (t) is measurable, the design of the state observer may also be carried out for the non-augmented system (7.8). For the reference shaping filter one uses a model x˙ M (t) = AM xM (t) + bM ua (t) yM (t) = c M xM (t) T
(7.13)
of the augmented system (7.11) with input ua (t) and signal this model is as T T sumed to be correct, i.e., AM , bM , c M = A , b , c . Its design follows the lines presented in Chapter 5, i.e., the output signal uCr (t) of this filter is confined to that part of the restricted signal range −u0 ≤ u(t) ≤ u0 that is not required for the rejection of disturbances. Therefore, the saturation nonlinearity us (t) = satu0 (u(t)) at the input of the system never becomes active, so that plant windup does not occur and the linear (stabilizing) feedback is always active. The resulting control scheme is shown in Figure 7.8. It consists of the system with joint amplitude and rate constraints, an ersatz model of this nonlinearity, an observer-based controller with signal model in the sense of Davison and a trajectory generator.
208
7 Additional Rate Constraints satu0 u
uCr
us
d
satuuV0 1 TV s + 1
us
y
Linear system
ym
xn+1 col r
uCδ
Reference shaping filter
ym
xM
k x
T
k
T
u ˆC
kvT
xˆ
State observer
v
Signal model
Figure 7.8. Scheme for unstable systems with reference shaping filter and observerbased controller incorporating a signal model for disturbance rejection in the sense of Davison
Example 7.3. Reference shaping filter and feedback control for an exponentially unstable system with an amplitude- and rate-saturated actuator We consider the inverted pendulum already discussed in Example 5.6. The parameters of the state space representation (7.8) are ⎡ ⎤ ⎡ ⎤ 0 −6.8528 0 0 1 ⎢ ⎥ ⎢ 0 0 0 1 0 ⎥ ⎥ ⎥, b = ⎢ A=⎢ ⎣ 1.5037 ⎦ ⎣ 0 0 0 0 ⎦ −7.2059 0 0 0 6.8528 −0.0963 1 0 0 Cm = , cT = −0.0963 1 0 0 1 0 0 0 As in Example 5.6 there is an amplitude saturation with u0 = 10 and here it is assumed that also an additional rate saturation with uV = 30 exists. When replacing the input saturation us (t) = satu0 (u(t)) in the loop in Figure 5.21 (without ADE) by the nonlinearity us (t) = satuuV0 (u(t)) for a joint amplitude and rate saturation (see e.g., Figure 7.2), about the same reference transients as shown in Figure 5.23a result. The rate restriction uV = 30 obviously does not cause problems when the reference shaping filter of Example 5.6 is used. It is assumed that the saturation amplitude r0 in this filter is r0 = 1.16, which assures stable filter transients for arbitrary reference signals.
7.3 Application to the Case of Unstable Systems
209
When, however, a reference signal r(t) = rS 1(t)−2rS 1(t−0.7)+rS 1(t−1.4) with rS = 10 is applied, the rate saturation causes unstable transients. The parameters of the ersatz model of the amplitude- and rate-restricted actuator are u0 = 10 and TV = 2/3 in this case (see (7.1)). Consequently, the state equations (7.11) of the augmented system are parameterized by ⎡
⎡ ⎤ ⎤ 1 0 0 ⎢ ⎥ ⎥ 0 0 ⎥ ⎢ 0 ⎥ ⎢ ⎥ 0 1.5037 ⎥, b = ⎢ 0 ⎥ ⎥ ⎣ 0 ⎦ 6.8528 −7.2059 ⎦ 0 −1.5 1.5 ⎡ −0.0963 1 0 0 1 0 0 0 = −0.0963 1 0 0 0 and Cm =⎣ 0 0 0 0 −6.8528 ⎢ 0 ⎢ 0 A = ⎢ ⎢ ⎣ 0 0
cT
0 0 0 0 0
0 1 0 0 0
⎤ 0 0 ⎦ 1
ˆ det(sI − A ) = s2 (s + 6.8528)(s − 6.8528)(s + 1.5). so that D (s) = The state feedback u ˜(t) = k T x (t) in the nominal feedback controller is assumed to place the eigenvalues at s1/2/3 = −6.853 and s4/5 = −7, which is equivalent to k T = 0 −148.871539 −107.707300 −71.0159056 22.0389333 This and most of the following results are displayed in finite word length. Using this feedback vector and the descriptions of the augmented system and the disturbance model (with S = 0 and bε = 1), the solution of the Sylvester equation X(A − b k T ) − SX = bε cT (see e.g., (5.43)) is X=
1 1.40526500 −72.3491545 −24.0491597 −7.16613264 0.447813377 100
This leads to bσ = −0.00671720066 (see (5.44)) so that the signal model v(t) ˙ = Sv(t) + bε y(t) − bσ [ˆ uC (t) + us (t)] (see (5.39)) is completely parameterized. The feedback factor kv , which places the eigenvalue of (S − bσ kv ) at s = −7, is kv = −1042.10077 This finally gives the feedback vector k x for the state of the augmented system (see also (5.45)) T
T k x = 14.6442774 −902.822637 −358.323779 −145.694229 26.70560000
210
7 Additional Rate Constraints
The state observer z(t) ˙ = F z(t) + Lym (t) + T b us (t), x ˆ (t) = Ψ ym (t) + Θz(t) is characterized by the matrices −7 0 49 4.922613216 2.22429 F = , L= 0 −7 −49 −4.514786784 2.22429 1.38528 7 −1 −0.1 0.5468 T = 1.38528 −7 1 −0.1 0 ⎡ ⎤ ⎤ ⎡ 0 1 0 0 0 ⎢ 1 0.0963 ⎢ 0⎥ 0 0⎥ ⎢ ⎥ ⎥ ⎢ ⎢ ⎥ ⎢ Ψ = ⎢ 7 0.6741 0.2734 ⎥ and Θ = ⎢ −0.5 0.5 ⎥ ⎥ ⎣ 0 13.8528 2.7340 ⎦ ⎣ −5 −5 ⎦ 0 0 0 0 1
This completes the parameterization of the observer-based feedback controller incorporating integral action. For the trajectory generator (see also the block diagram in Figure 5.2), T the state equations (7.13) of the model with AM , bM , c M = A , b , cT are used. A choice of kaT = 0 0 −0.0786060118 −6.77800266 5.7685¯3 and ma = −1 assigns the characteristic polynomial ˜ a (s) = D ˆ det(sI − AM + bM kaT ) = s(s + 6.8528)(s + 1.5)(s + 0.9)2 of the inner cascade. The L1 -norm of the transfer function
DM (s) m (see ˜ a (s) a D
10
also (5.15)) is 7.9 so that a choice of r0 = = 1.266 for the input saturation 7.9 ubs (t) = satr0 (ub (t)) assures |ua (t)| < 10 in the presence of arbitrary input signals ub (t). If the outer cascade is parameterized by kbT = 0 0.335385650 0.920594734 3.358422723 −2.2 which leads to
˜ b (s) = (s + 6.8528)(s + 1.2)3 (s + 3) D
and mb = 0.335385650, the transfer function
˜ b (s) D − 1 (see (5.18)) satisfies ˜ a (s) D
the circle criterion. The stability of this two-cascade filter can be proven. Improved transients for smaller input amplitudes can be achieved (see Chapter 5 for details), by adding another cascade (see Figure 5.5) with kcT = 0 8.56449699 10.6951826 11.8457004 −4.7¯3
7.3 Application to the Case of Unstable Systems
211
˜ c (s) = (s + 6.8528)(s + 3.4)3 (s + 3.5) and mc = 8.56449699. which leads to D ˜ ˜ c (s) the transfer function Dc (s) − 1 (see (5.24)) also satisfies the With this D ˜ b (s) D circle criterion. The above feedback controller and the reference shaping filter were designed without considering the rejection of disturbances (i.e., β = 0 was assumed in (5.3)). Figure 7.9 shows the reaction of the closed loop to reference sequences r(t) = rS 1(t) − 2rS 1(t − 15) + rS 1(t − 35) in the region 0 < rS ≤ 100. Arbitrary reference inputs do not cause an unstable behaviour of the closed loop in spite of the existing amplitude and rate saturations. Compared to the results in Figure 5.23 the transients are delayed. This is a consequence of the input signals generated in the shaping filter such that the rate saturation is completely avoided. Especially in this example the results obtained with the ersatz model are quite conservative. The maximum velocity of the input signal to the system occurring during the transients shown in Figure 7.9 is u˙ amax = 5.55. This is more than five times smaller than the actually allowed change of rate uV = 30. Even for stochastic reference input signals, the maximum rate u˙ max at the input of the system is less than 10, so that one could redesign the control with an ersatz model having the modified time constant TV = 2/9 instead of TV = 2/3. This would allow considerably faster transients of the filter and the controlled system.
0.6 0.4
50
Angle y2 (t)
Position y(t) = ˆ y1 (t)
100
0
0.2 0 −0.2
−50 −0.4 −100
0
10
20
30
40
Time
(a) Cart position y(t)
50
0
10
20
30
40
50
Time
(b) Pendulum angle y2 (t)
Figure 7.9. Reference behaviour of the inverted pendulum with amplitude- and rate-restricted actuator
212
7 Additional Rate Constraints
7.4 An Alternative Solution for Stable Systems The above-suggested solution of the problems caused by an additional rate constraint in the actuator is somehow outside the basic design paradigm of windup prevention, namely Design a linear control without considering input saturation and then add appropriate measures to remove the problems caused by the signal limitations. It is based on a simple model of an actuator with joint amplitude and rate constraints that consists of a saturating nonlinear element with an appending first-order system (the ersatz model shown in Figure 7.4). When inserting this model at the input of the plant all known techniques for windup prevention can be applied when the controller is designed for the system augmented by this first-order system. Thus the complexity of the nonlinear stability analysis is dramatically reduced and this simple strategy can be applied in the presence of stable and unstable systems. Figure 7.10 shows a block diagram representation of a modified ersatz model of an amplitude- and rate-restricted actuator, which allows one to apply the conventional procedure of anti-windup design, namely to design the linear controller without taking notice of the existing nonlinearities in the actuator and to add appropriate measures for the prevention of controller and plant windup later. This model also contains a first-order system with time constant TV =
2u0 uV
(7.14)
and a single saturation element us (t) = satu0 (u (t)), where u0 is the limit of the amplitude saturation and uV is the limit of the rate saturation (see also the defining equation (7.1)).
satu0 u
V +1 V
V
u
us
1 sTV + 1
us
Figure 7.10. Modified ersatz model of an actuator with joint amplitude and rate constraints
7.4 An Alternative Solution for Stable Systems
213
Differing from the ersatz model, which was introduced in Section 7.1, this model contains an additional feedback with gain V >> 1 so that the resulting time constant TV (7.15) TLV = V +1 of the linear system (i.e., saturation is not active) is negligible with relation to the dynamics of the closed loop. For arbitrary input signals u(t) the output us (t) of this modified ersatz model always stays in the regions −u0 ≤ us (t) ≤ u0
(7.16)
and dus (t) ≤ uV (7.17) dt so that when inserting this model at the input of a system that contains an actuator with amplitude and rate restrictions, neither the amplitude nor the rate saturation in the actual actuator become active. Consequently, the stability analysis of the loop with an amplitude- and rate-restricted actuator boils down to the investigation of a linear system with an isolated nonlinearity of the saturation type. Figure 7.11 shows a block diagram of a system as in (7.2) for which an observer-based controller with signal model for disturbance rejection has been designed. −uV ≤
y r
u
m
Modified ersatz model of Figure 7.10
x˙ = Ax+bus y = cT x ym = Cm x
us
ym
u ˆC x ˆ
kxT
z˙ = F z+Lym +T bus x ˆ = Θz + Ψ ym
σ kvT
v
v˙ = Sv+bε y−bσ σ
Figure 7.11. Prevention of controller windup by the observer technique when using the modified ersatz model of Figure 7.10
214
7 Additional Rate Constraints
Controller windup is prevented by feeding the output signal us (t) of the modified ersatz model, which is now limited in amplitude and rate, into the controller as shown in Figure 7.11. Due to the observer technique the transfer behaviour between the signals us and u is characterized by us (s) = − u ¯(s) = −k T (sI − A)−1 b¯
˜ D(s) − D(s) u¯s (s) D(s)
(7.18)
(see also Sections 2.5.2 and A.5.2). Here k T is the “nominal” state feedback vector, D(s) = det(sI − A) is the characteristic polynomial of the open loop ˜ system and D(s) = det(sI − A + bk T ) is the characteristic polynomial of the controlled system. Therefore the simplified block diagram of Figure 7.12 can be used to investigate the danger of plant windup and to design the additional dynamic element (ADE) for its prevention. The danger of plant windup exists if, in the absence of an ADE, the transfer behaviour us (s) (7.19) u ¯ (s) = −GL (s)¯ between the output us of the saturating element and its input u is such that the phase ΦL (ω) of GL (jω) + 1 violates the phase design aid, where ˜ ˜ V D(s) + D(s) − D(s) GL (s) = (7.20) (sTV + 1)D(s) (see Figure 7.12).
˜ −Ω Ω Ω
ADE
1 V
r
satu0 m
u
V +1 V
V
u
us
1 sTV + 1
us D ˜ −D D
Modified ersatz model
Figure 7.12. Prevention of plant windup when using the modified ersatz model of Figure 7.10
7.4 An Alternative Solution for Stable Systems
215
ˆ L (jω) + 1 with For V >> 1 one obtains GL (jω) + 1 ≈ G ˆ L (jω) + 1 = V G
˜ D(jω) (jωTV + 1)D(jω)
(7.21)
(for comparison see the corresponding frequency response (3.5) in the case of mere amplitude saturation). If ΦL (ω) violates the phase design aid (and this danger is considerably increased by a rate saturation), an ADE as shown in Figure 7.12 must be ˜ added. The two monic Hurwitz polynomials Ω(s) and Ω(s) of equal degrees should assign a transfer behaviour us (s) u ¯ (s) = −GLΩ (s)¯
(7.22)
with GLΩ (s) =
˜ ˜ ˜ ˜ − Ω(s) V Ω(s)D(s) + D(s)Ω(s) − D(s)Ω(s) − sTV D(s) Ω(s) ˜ (sTV + 1)D(s)Ω(s)
(7.23) (see Figure 7.12) so that the phase ΦLΩ (ω) of GLΩ (jω) + 1 stays within the limits of the phase design aid. For V >> 1 one obtains GLΩ (jω) + 1 ≈ ˆ LΩ (jω) + 1 with G ˆ LΩ (jω) + 1 = V G
˜ D(jω)Ω(jω) ˜ (jωTV + 1)D(jω)Ω(jω)
(7.24)
(for comparison see the corresponding frequency response (3.7) in the case of mere amplitude saturation). Thus, the usual procedure for the prevention of windup is also applicable in the case of joint amplitude and rate constraints. First design a controller for the linear system and insert a model of the existing nonlinearities at the input of the system so that the actual saturations in the actuator never become active. Then apply the observer technique for the prevention of controller windup (i.e., feed the output signal us (t) of the modified ersatz model into the state-plus-disturbance observer or into the state observer and the signal model in the sense of Davison). Finally use an ADE for the prevention of a possibly existing plant windup. Differing from the case of mere amplitude saturation, this ADE acts inside the ersatz model (see Figure 7.12). In unstable systems, the prevention of plant windup suggested in this book is based on a complete prevention of input saturation. An inspection of the modified ersatz model in Figure 7.10 reveals that when using this model in the design of a reference shaping filter for unstable systems one obtains extremely conservative results. Therefore the procedure described in this section is only recommended for stable systems.
216
7 Additional Rate Constraints
Example 7.4. Prevention of windup when the actuator in the system of Example 7.1 has an amplitude limit u0 = 1 and a rate limit uV = 2 In Example 7.1 an observer-based controller is considered for a system with input saturation u0 = 1. The characteristic polynomial of the system is D(s) = ˜ (s + 1)3 and of the closed loop D(s) = (s + 10)3 . The state observer has an eigenvalue at s = −15. If input saturation becomes active, this controller gives rise to plant windup since the phase ΦL (ω) of GL (jω)+1 has a minimum value ˜ of −165◦. This plant windup can be prevented by an ADE with Ω(s) = s+ 1.5 and Ω(s) = s + 6. If, however, a rate saturation with uV = 2 is also present, the transients of the loop are oscillating (see Figure 7.6). When inserting the modified ersatz model of Figure 7.10 with TV = 1 and V = 100 (which gives the negligible time constant TLV = 1/101) at the input of the system, and applying the observer technique for the prevention of controller windup, the transfer behaviour of the linear part of the loop indicates a ˆ L (jω) + 1 = severe plant windup. The phase ΦˆL (ω) of G
˜ V D(jω) dips (jωTV + 1)D(jω)
˜ down to −239◦. When using an ADE with Ω(s) = s2 + 3.6s + 3.24 and Ω(s) = ˆLΩ (ω) of G ˆ LΩ (jω) + 1 = s2 + 80s + 1600, the phase Φ
˜ V D(jω)Ω(jω) ˜ (jωTV + 1)D(jω)Ω(jω)
stays within the region −130◦ < ΦˆLΩ (ω) < 130◦ (phase design aid). The solid line in Figure 7.13 shows the resulting reference step responses and the dashed line shows the transients obtained with the control designed in Example 7.2. They are almost identical.
Output y(t)
0.5
0
−0.5
0
5
10
15
20
25
30
35
40
Time
Figure 7.13. Comparison of the reference step responses obtained in Example 7.2 (dashed line) and in Example 7.4 (solid line)
8 Bumpless Transfer
8.1 Introductory Remarks During start-up it may be necessary to assure a gentle transfer towards the nominal point of operation, and only if the system is in the vicinity of the desired set point, one switches from manual to automatic. Manual start-up is, of course, only feasible if the system is stable. For unstable plants a stabilizing controller must be used for start-up, and authority is transferred to the nominal controller when the system is in the vicinity of the desired point of operation. The switching from one controller to another should, of course, entail as little agitation as possible. By parallel operation of the non-active controller one could try to drive its output signals towards the “correct” amplitude, so that the resulting transients of the closed loop due to a transfer of authority are as small as possible. This is known as the bumpless transfer problem. A completely smooth transfer is of course only feasible under ideal conditions, namely if the switching from one control to the other takes place when the system is in the steady state and no disturbances act. Small tracking errors usually exist at the time of authority transfer. The transfer of authority in the presence of such deviations gives rise to bumps in the input signal to the plant. The resulting discontinuities, however, should only depend on the existing tracking error and not on a mismatch of the states of the controller. Discontinuities in the input signal (though not really desirable in view of actuator wear) do not have dramatic consequences as long as input saturation does not cause windup effects. Small bumps in the manipulated input of the system are, therefore, considered to be a minor problem in the discussions below. If totally smooth input signals are required, additional measures could be taken to prevent abrupt changes of the input signal. The above-mentioned parallel operation of the non-active controller is, of course, only feasible if the controller does not contain integral action or exponentially unstable eigenvalues. In the parallel mode of operation, an integral action could attain enormous amplitudes. To prevent this, both the inputs and
218
8 Bumpless Transfer
outputs of such controllers would have to be decoupled from the plant. This, however, would entail wrong states of the controller at the switching instant, giving rise to possibly severe windup problems after authority transfer. The bumpless transfer problem has been studied intensively in connection with the conditioning technique (see, e.g., [25, 55]). Corresponding investigations have also been carried out with relation to general approaches to the prevention of windup, as e.g., in [10, 24, 19, 68]. All methods guaranteeing a stable compensator also for constrained input signals allow operation of the controller in parallel without causing diverging states of the controller due to integral action or exponentially unstable modes. This considerably reduces the discontinuities in the input signal to the plant due to the switching. The method suggested for the prevention of controller windup in Chapter 2, namely the observer technique, not only guarantees a stable controller in open loop, but it also assures a continued observation of the states of the system and the disturbance model. Therefore, the bumpless transfer scheme on the basis of the observer technique can be regarded as a systematic solution of the problem. A strictly proven solution of the problem of bumpless transfer was presented in [75]. It is based on the method [67] for the prevention of windup described in Section 4.3. The solution of the bumpless transfer problem in [75] uses “a compensation scheme guaranteeing an L2 bound on the mismatch, after the switching time between the actual plant output and a particular target, ideal response.” The schemes presented are valid both for unconstrained and for constrained systems. The results obtained for the constrained case are the same as if one uses the observer technique in conjunction with an appropriately tuned ADE. The background of this identical behaviour is the following. The two-step techniques presented in Chapters 2 and 3 give exactly the same results as the one-step approach of [67], provided an ADE of order n (i.e., the time domain version presented in Sections 3.3.2 or 6.4) is used for the prevention of plant windup, and the “safe” feedback vector kST is identical with the feedback vector kξT of the states of the model in the scheme of Figure 4.4. If the frequency domain version of the ADE of reduced order is applied, there are small differences between both schemes, however, with marginal influence on the behaviour of the closed loop. Section 8.2 describes the bumpless transfer scheme based on the techniques for the prevention of windup discussed in Chapters 2 and 3, and in Section 8.3 on the basis of the one-step scheme of Section 4.3. In Section 8.4 a bumpless transfer scheme is presented for a switching between two controllers where both can cause plant windup. Section 8.5 shortly discusses bumpless transfer in connection with the control structure of Chapter 5. An example demontrating the results obtainable with the bumpless transfer schemes concludes this chapter.
8.2 Bumpless Transfer in Observer-based Controllers
219
8.2 Bumpless Transfer in Observer-based Controllers The basic control scheme enhanced by the measures for the prevention of windup as described in Chapters 2 and 3 is depicted in Figure 6.1. It uses the observer technique for the prevention of controller windup and an ADE for the prevention of plant windup. Most investigations of bumpless transfer assume a start-up procedure (either in manual mode for stable systems or with the aid of a stabilizing controller in the case of unstable systems), which gives rise to a signal uSt up (t) so that input saturation does not become active, and if so, so that the possibly used start-up controller does not cause plant windup. Under these assumptions, the switching from uSt up (t) to the nominal controller should take place at the location indicated in Figure 8.1. In this configuration, the ADE reduces the differences between uN (t) and uSt up (t) possibly existing at the instant of switching and consequently also the discontinuity of the amplitude occurring in u(t) (see also Example 8.1). Since the observer-based controller is driven by the output of the system and the constrained input signal to it, the reconstruction of the state is exactly the same as if the controller is active. So, when switching from uSt up (t) to uN (t) there are no transients of the closed loop due to a mismatch of the controller states.
˜ Ω(s) − Ω(s) Ω(s)
uSt up
d satu0
r
us
u
m
uN
x˙ = Ax+bus +Bd d y = cT x + dTd d ym = Cm x + Dmd d
u ˆC kxT
x ˆ
z˙ = F z+Lym +T bus x ˆ = Θz + Ψ ym σ
kvT
v
v˙ = Sv+bε y−bσ σ
Figure 8.1. Bumpless transfer with observer-based controllers
y ym
220
8 Bumpless Transfer
8.3 Bumpless Transfer in the Scheme of Schneider and Teel and Kapoor In Section 4.3 a one-step scheme for the prevention of windup that incorporates an additional model of the system [61, 67] was described. This model is also present when the danger of plant windup is not caused by the nominal controller. In [75] it is shown that the scheme of Figure 8.2 gives a systematic solution to the bumpless transfer problem. The formal definition of the bumpless transfer problem adopted in [75] is based on the target response generated by a target closed loop system, which characterizes the ideal behaviour of the closed loop after the switch. The scheme in Figure 8.2 also assumes that the control scheme generating uSt up (t) does not give rise to plant windup effects.
y
uSt up
cT satu0 us
u
x˙ = Ax+bus
uN
ym
x
Cm
kξT
δ
ξ˙ = Aξ + bδ
ξ
u ˆC
kT
m
Cm ε
z˙ = F z + Lε + T bˆ uC x ˆ = Θz + Ψ ε
x ˆ
r
Figure 8.2. Bumpless transfer with the scheme of Schneider and Teel and Kapoor
8.4 Bumpless Transfer Between two Controllers
221
8.4 Bumpless Transfer Between Two Controllers that Give Rise to Plant Windup If the controller used to generate uSt up (t) is so aggressive that input saturation can give rise to plant windup effects, the schemes in Figures 8.1 and 8.2 do not prevent the plant windup caused by this second controller. To obtain a behaviour of the closed loop that is not impaired by plant windup, both controllers need to be extended by an additional dynamic element (see Figure 8.3). Here it is assumed that the second controller is described by T x ˆ(t) + mSt r(t) uSt up (t) = −kSt
(8.1)
The additional dynamic element is parameterized by the two monic Hurwitz ˜St (s) and ΩSt (s) (see Section 3.3.1), which must be chosen to polynomials Ω shape the transfer behaviour u¯St up (s) = −GLSt (s)¯ us (s) such that GLSt (s) in the scheme of Figure 8.3 meets the chosen criterion for the prevention of plant windup. Start-up controller
˜St (s) − ΩSt (s) Ω ΩSt (s) T kSt
˜ Ω(s) − Ω(s) Ω(s)
mSt
uSt up
d satu0
r
m
uN
us
u
x˙ = Ax+bus +Bd d y = cT x + dTd d ym = Cm x + Dmd d
y ym
u ˆC kxT
x ˆ
z˙ = F z+Lym +T bus x ˆ = Θz + Ψ ym σ
kvT
v
v˙ = Sv+bε y−bσ σ
Figure 8.3. Bumpless transfer if the start-up controller gives rise to plant windup
222
8 Bumpless Transfer
8.5 Bumpless Transfer in Conjunction with the Reference Shaping Filter The new control configuration introduced in Chapter 5 is based on a separation of tracking and disturbance rejection. By cautiously manipulating the input to the reference shaping filter, the start-up procedure can be carried out as desired. The feedback controller for disturbance rejection and stabilization only becomes active when disturbances act during start-up. If one were not able to use the nominal feedback controller during start-up, it would be no problem to switch between different feedback vectors for the observed state of the system, as the separation principle guarantees an uninterrupted estimation of x(t) for different kiT . The above switching schemes are, of course, also applicable in the case of MIMO systems. Example 8.1. Discussion of some aspects related to authority transfer between different controllers The problems occurring when switching from uSt up (t) to the output uN (t) of the nominal controller are demonstrated with the aid of an observer-based controller incorporating a signal model for disturbance rejection. The system of the order four is described by the state equations ⎡ ⎡ ⎤ ⎤ ⎡ ⎤ −0.2 0 1 0 0 −1 ⎢ ⎢ 0 −1 −1 0 ⎥ ⎥ ⎢ ⎥ ⎥ x(t) + ⎢ 2 ⎥ us (t) + ⎢ 0.2 ⎥ d(t) x(t) ˙ =⎢ ⎣ ⎣3 ⎦ ⎣ ⎦ 0⎦ 3 −4 1 2 −0.1 4 4 −4 1 1 y(t) = 45 30 −7 −1 x(t) ⎡ ⎤ 45 30 −7 −1 0 1 −1 ⎦ x(t) ym (t) = ⎣ 1 19 14 −2 −4 There is a saturation with amplitude u0 = 1 at the input of the plant and a sinusoidal disturbance d(t) = dS sin(t + ϕd )1(t) to be attenuated in the controlled output y(t). In order to obtain a meaningful controller design, one should keep in mind that the transfer function between the manipulated input and the controlled output is N (s) (s + 4)(s + 6) y¯(s) = = u ¯s (s) D(s) (s + 1)4 To obtain fast reference transients without overshoots, the nominal state feedback u(t) = −k T x(t) + mr(t) is assumed to place the eigenvalues of the closed ˜ loop (the zeros of D(s) = det(sI − A + bk T ))at s1 = −4, s2 = −6 (the zeros of N (s)) and at s3/4 = −12. This gives k T = 5854 4039 −926 −342 , and m = 144 assures vanishing tracking errors for constant reference signals.
8.5 An Example for Bumpless Transfer
223
The eigenvalues of the necessary state observer and the controlled signal model are assumed to be located at s = −8. For the reconstruction of the state x(t) of the system a minimal-order observer z(t) ˙ = F z(t) + Lym (t) + T bus (t) with nO = 1 is used. The design equa- 14 −7 −21 tion T A−F T = LC is solved by the parameters F = −8, L = m and T = 25 11 −4 9 . Therefore, the state estimate x ˆ(t) = Ψ ym (t)+Θz(t) is parameterized by ⎡ ⎡ ⎤ ⎤ 68 102 −119 −34 ⎢ ⎥ ⎥ 1 ⎢ ⎢ −139.5 −196.5 246 ⎥ and Θ = 1 ⎢ 72 ⎥ Ψ= 51 ⎣ −155.5 −169.5 268 ⎦ 51 ⎣ 83 ⎦ −87.5 −118.5 149 49 The disturbance model has the form 0 1 0 uC (t) + us (t)] v(t) ˙ = v(t) + y(t) − bσ [ˆ −1 0 1 xˆ(t) . To obtain a prevention of controller windup v(t) also for this signal model, the procedure of Section 2.5.2 must be applied. Given the solution 1 755.4 510 −119.32 −25 X= 841 −6077.8 −4090 956.24 184 where u ˆC (t) = kxT
kvT
of the equation X(A − bk T ) − SX = bε cT one obtains 1 −0.96 bσ = −Xb = 5.72 841 The feedback vector k vT , which places the eigenvalues of (S − bσ kvT ) to s = −8, 8625 3800 . Given the above parameters the feedback vector kxT is is kvT = kxT = 25569 17289 −4023 −917 . This concludes the parameterization of the observer-based controller incorporating a model for sinusoidal disturbance signals. Controller windup is prevented by the observer technique (see also Figure 8.1). ˜ D(jω) , however, it turns out that it dips Inspecting the phase ΦL (jω) of D(jω) ◦ down to −195 , so that input saturation can give rise to limit cycles. To prevent plant windup, an ADE (time domain version) with the fol lowing safe feedback vector kST = 56 40 8 −32 is introduced. The phase det(jωI − A + bkST ) has a minimum value of −120◦, so that the ΦLS (jω) of D(jω) requirements of the phase design aid are satisfied (but not those of the circle criterion).
224
8 Bumpless Transfer 12
1
Control input us (t)
Output y(t)
10 8 6 4 2 0
0
10
20
Time
(a) System output y(t)
30
0.5
0
−0.5
−1
0
10
20
30
Time
(b) Corresponding plant input us (t)
Figure 8.4. Transients caused by a reference step amplitude rS = 10 and a jointly acting sinusoidal disturbance with amplitude dS = 1
Figure 8.4a shows reference transients for r(t) = rS 1(t) with rS = 10 when a sinusoidal disturbance with dS = 1 and ϕd = π is acting at the same time. Figure 8.4b shows the corresponding input signal us (t) to the plant. Now a slow start-up controller is considered. For simplicity, it is assumed to be a proportional state feedback 2 T uSt up (t) = −kSt x(t) + mSt r(t) = − −4 −5 10 −10 x(t) + r(t) 3 The above reference and disturbance inputs are again applied. The start-up controller is active at the beginning and only after the set point rS = 10 has almost been reached at t = 19.5, is control authority transferred to the nominal controller for disturbance attenuation. First assume that during start-up the nominal controller is totally disconnected from the system and that its states are zero. When connecting the inputs and outputs of this controller to the system at t = 19.5, the output signal u(t) of the controller exhibits the extremely “bumpy” behaviour shown in Figure 8.5a. The dashed transient in Figure 8.6 is the corresponding output signal y(t) of the system, which is nevertheless well-damped because of the measures taken for the prevention of windup. Applying the bumpless transfer scheme of Figure 8.1 instead, the control signal u(t) shown in Figure 8.5b results. Its amplitudes are reduced dramatically and the solid line in Figure 8.6 depicts the corresponding transient y(t). Remark 8.1. If one had used the scheme of Figure 8.2 instead, the same results as above would have resulted for kξT = kST .
8.5 An Example for Bumpless Transfer
225
The immediate amplitude change in u(t) in the bumpless transfer scheme in Figure 8.1 depends on the tracking error. It is here caused by the disturbance, which is not compensated by the start-up controller. In the absence
1000 5
−1000
Input u(t)
Input u(t)
0
−2000 −3000
0
−4000 −5
−5000
0
10
20
30
0
10
20
30
Time
Time
(a) Switching to the totally disconnected nominal controller
(b) Bumpless transfer
Figure 8.5. Input signals u(t) resulting from the bumpy and the bumpless transfer
12 10
Output y(t)
8 6
Bumpy transfer 4
Bumpless transfer 2 0 −2
0
5
10
15 Time
20
25
30
Figure 8.6. Transients resulting from the bumpy and the bumpless transfer
226
8 Bumpless Transfer
of a disturbance input the switching from uSt up (t) to the control signal produced by the nominal controller causes a discontinuity in u(t) that is hardly noticeable. Figure 8.7 demonstrates the influence of different input signals driving the additional dynamic element when a reference input with rS = 10 and a disturbance input with dS = 1 and ϕd = π is applied, and authority is transferred to the nominal controller at time t = 19.5. The solid line shows the signal uN (t) resulting in the scheme in Figure 8.1. The dashed line in Figure 8.7 depicts the signal uN (t) that occurs when instead of δ(t) = uN (t) − us (t) the signal δ (t) = u(t) − us (t) is used to drive the ADE. The scheme suggested in Figure 8.1 obviously assures output signals uN (t) of the inactive nominal controller that are closer to the output signals it would generate if it were active. To demonstrate an authority transfer also for a start-up controller causing plant windup, the modified parameterization of the start-up controller T x(t) + mSt r(t) = uSt up (t) = −kSt
300.125 = − 4056 2760 −600 −240 x(t) + r(t) 3
1500
Driving the ADE with δ = u − us Driving the ADE with δ = uN − us
Input signal uN (t)
1000
500
0
−500
0
5
10
15
20
25
30
Time
Figure 8.7. Consequence of different inputs to the additional dynamic element
8.5 An Example for Bumpless Transfer
227
is assumed. This controller shifts the eigenvalues of the closed loop to s = −7, which leads to a phase ΦLSt (jω) of
T det(jωI − A + bkSt ) attaining −194◦ . D(jω)
This controller not only violates the phase design aid, it also entails the danger of limit cycles. When using the output of this controller in the scheme of Figure 8.1, the dashed transients shown in Figures 8.8a and 8.8b result. Here the driving signal is a reference step with amplitude rS = 1 only (no disturbances acting). There are limit cycles during the initial transients, which immediately disappear once authority is transferred to the nominal controller (enhanced by measures for the prevention of controller and plant windup). The corresponding input signal us (t) to the system shown in Figure 8.8b exhibits the typical bang-bang behaviour related to limit cycles. Applying an ADE of the order one (this time the frequency domain version is used), which is characterized by the polynomials ˜ St (s) = s + 11 ΩSt (s) = s + 0.58 and Ω the phase ΦLΩSt (jω) of
T det(jωI − A + bkSt )ΩSt (jω) stays above −130◦ (phase ˜ D(jω)ΩSt (jω)
design aid). Using this ADE in the scheme of Figure 8.3, the results shown in solid lines in Figures 8.8a and 8.8b are obtained. The transients are now stable and well-damped. 4
1
Input us (t)
Output y(t)
0.5
2
0
0
−0.5
−2
0
10
20
Time
(a) Output transients
30
−1
0
10
20
30
Time
(b) Corresponding input signals
Figure 8.8. Reference step responses when the start-up controller causes plant windup
9 R´ esum´ e and Concluding Discussions
9.1 Introductory Remarks In control systems where a saturation at the input of the plant is the only nonlinearity in the loop, signal limitations can cause different windup effects, namely: • •
Controller windup and Plant windup
The latter manifests itself in two forms, namely as an: • •
Oscillatory plant windup and a Directionality problem
Whereas controller windup and the oscillatory plant windup equally occur in single-input and multi-input systems, the directionality problem only arises in constrained multi-input multi-output (MIMO) systems. Controller windup is related to the dynamics of the controller. It can be prevented by an appropriate realization of the controller so that its dynamics do not influence the undesired effects of input saturation. The prevention of controller windup is independent of the fact whether the system to be controlled is stable or unstable. Plant windup, on the other hand, is related to the eigenvalues of the controlled plant. It can cause an increased oscillatory behaviour, or if it is very pronounced, it may give rise to limit cycling in the presence of stable systems or an exponential increase of the output signals when the system contains eigenvalues in the right half s-plane. For stable systems plant windup can be prevented either by: • •
Appropriate modification of the transfer behaviour of the linear part of the loop or Avoiding input saturation completely
230
9 R´esum´e and Concluding Discussions
The transfer behaviour of the linear part of the loop depends on the dynamics assigned by the linear control. Therefore, an oscillatory plant windup can be avoided by a suitable placement of the eigenvalues. This, however, may impose unacceptable constraints on the performance of the closed loop, for example in view of disturbance rejection. In stable systems, the danger of plant windup can also be prevented by an additional dynamic element that allows an appropriate reshaping of the linear part of the nonlinear loop. In the presence of unstable systems there is no suitable form of the linear part of the loop that would guarantee the prevention of plant windup. When an unstable system with input saturation is stabilized by a linear controller, the closed loop is only conditionally stable. In unstable systems without eigenvalues at s = 0, a finite critical amplitude exists. If the system passes this critical amplitude, an exponential increase of the controlled output can no longer be prevented by the constrained input. When the input signal of the system exceeds the saturation limits, the stabilizing control is not effective and, therefore, unstable modes can increase in an arbitrary manner during this period. For known input signal forms one may succeed in proving that some “over saturation” can be allowed without giving rise to an unstable behaviour of the closed loop [62]. If the form of the input signals is not known a priori, the period of saturation is not predictable, so that stability of a loop with an unstable system cannot be proven unless saturation is avoided completely. This becomes possible by a scheme that uses feedback control for disturbance rejection and system stabilization, and feedforward control for tracking. In this scheme, reference signals only cause input signals to the plant in a predefined amplitude range and they do not cause output signals of the feedback controller. So when only using that part of the restricted amplitude range for tracking that is not required for disturbance rejection, input saturation can be avoided completely in spite of jointly acting reference and disturbance signals. The directionality problem only arises in multivariable systems with input saturation, and its occurrence can be prevented by the control scheme for unstable single input systems, when unsaturated input signals are assured for the model of the system in the reference shaping filter. Another problem is actuators, where not only the amplitude but also the rate of change is constrained. The usual models for such actuators contain two nonlinearities, which complicate the stability analysis of such systems. If an ersatz model of such actuators, which contains one nonlinear element only, is inserted at the input of the system, the prevention of windup in the presence of such actuators is considerably facilitated. Often control authority is transferred either from manual to automatic, or from one controller to another. If this switching is not done in an appropriate manner, input signals with large peaks may result, giving rise to windup effects if not properly accounted for. Therefore, the bumpless transfer problem is closely related to the prevention of windup, and it can be solved by the same techniques.
9.2 Controller Windup
231
9.2 Controller Windup Variations in the output of the controlled system do not cause changes in its input when saturation is active. Therefore, the control loop is open in this state. Among the various explanations of the background of controller windup, the open-loop argument is especially plausible. In open loop, integral action or exponentially unstable modes of the controller can develop freely, possibly giving rise to enormous internal states of the compensator. These amplitudes can only be reduced after the tracking error has changed its sign, so that large and badly decaying transients result; the well-known effects of integral or controller windup. Most of the existing measures for the prevention of controller windup consequently utilize the functional principle Stabilize the controller in case of input saturation A common principle of all approaches is linear performance recovery, i.e., the techniques for the prevention of controller windup do not influence the linear behaviour of the closed loop. Though the various existing techniques for the prevention of controller windup are based on different explanations of the occurrence of this undesired effect of input saturation they mainly differ in the Hurwitz polynomial, which replaces the denominator of the compensator in the case of input saturation. The different Hurwitz polynomials used in the various techniques for the prevention of controller windup, however, influence the probably remaining undesired effects of input saturation, namely the plant windup. The observer technique for the prevention of controller windup (which is the method of choice in this book) is based on the interpretation that controller windup is caused by observation errors due to input saturation. When system and observer are driven by the same (constrained) input signal, observation errors are no longer caused by input saturation. The prevention of controller windup, however, is only one advantage of the observer technique. After its application, the remaining windup effects in the nonlinear loop are completely independent of the dynamics of the controller, i.e., they are the same as if constant state feedback had been applied to the constrained system. This can also be assured in the presence of signal models for disturbance rejection (see Section 2.5) and for classical controllers (see Section 2.4). Thus controller windup is systematically removed by the observer technique. After an application of the observer technique for the prevention of controller windup, all remaining effects of input saturation are clearly attributable to plant windup, whose intensity depends on the pole shifting properties of the nominal state feedback.
232
9 R´esum´e and Concluding Discussions
9.3 Plant Windup in Stable Systems Provided that the system to be controlled is stable, the linear part of the closed loop is a stable system if controller windup has been removed by the observer technique. A stable linear part is assured by almost all techniques for the prevention of controller windup. However, the complexity of the resulting transfer function GL (s) of the linear part of the loop is especially reduced when the observer technique has been applied. Figure 9.1 shows the block diagram representation of the closed loop after controller windup has been prevented.
G(s)
y
satu0 r
u
us
GL (s)
Figure 9.1. Closed loop after the prevention of controller windup
This block diagram characterizes a standard problem of nonlinear control, consisting of a linear part and an isolated nonlinearity of the sector type. If the frequency response GL (jω) possesses certain properties, all equilibrium points in the achievable range are asymptotically stable. After an application of the observer technique, GL (s) has the intriguingly simple form −1 ˜ (s) − I (9.1) GL (s) = K(sI − A)−1 B = D(s)D where G(s) = N (s)D−1 (s) = C(sI − A)−1 B is the transfer matrix of the ˜ system, K is the state feedback matrix and det D(s) = det(sI − A + BK) is the characteristic polynomial of the controlled system. This formulation is valid both for SISO and MIMO systems. Within the framework of this book, however, only the state space formulation has been employed for MIMO systems. The simple form (9.1) of GL (s) can also be obtained in classical control applications (see Section 2.4) and when the observer-based controller contains signal models for disturbance rejection (see Sections 2.5 and 6.3). If GL (s) violates one of the criteria indicating the danger of plant windup (see Section 3.2 for the single input case), plant states may attain amplitudes that cannot be brought to their steady state values fast enough because of the existing input restriction. Thus overshoots and undershoots can appear in the transients of the closed loop; the typical effect of an oscillatory plant windup.
9.3 Plant Windup in Stable Systems
233
ADE δ
η
G(s)
y
satu0
r
us
u
GL (s)
Figure 9.2. Additional dynamic element for the prevention of plant windup
In stable systems, the occurrence of plant windup can be prevented by an appropriately designed additional dynamic element (ADE). Figure 9.2 shows the closed loop with this ADE. The ADE can either be designed in the frequency domain (for single input us (s) systems) or in the time domain. If the ADE is such that u¯(s) = −GLΩ (s)¯ assures stability of the nonlinear loop in Figure 9.2, fast dynamics (possibly required for disturbance rejection) can be assigned by the nominal controller without running the danger of plant windup effects. The frequency domain version of the ADE is described by ˜ Ω(s) − Ω(s) η¯(s) = ¯ Ω(s) δ(s)
(9.2)
and given GL (s) according to (9.1), the modified transfer function GLΩ (s) obtains the simple form GLΩ (s) =
˜ D(s)Ω(s) −1 ˜ D(s)Ω(s)
(9.3)
˜ The two monic Hurwitz polynomials Ω(s) and Ω(s) of equal degree must be chosen such that GLΩ (s) meets one of the criteria that guarantee the prevention of plant windup. They can be of degree one provided the phase lead required is not too pronounced. Otherwise, polynomials of higher degrees must be employed. The time domain version of the ADE has the state equations ˙ = (A − BKS )ξ(t) + Bδ(t) ξ(t) η(t) = (K − KS )ξ(t)
(9.4)
234
giving
9 R´esum´e and Concluding Discussions
GLΩ (s) = KS (sI − A)−1 B
(9.5)
This form of GLΩ (s) makes it evident how the “safe” feedback matrix KS must be assigned. It has been demonstrated that a prevention of plant windup with the aid of the criteria that assure strictly proven stability of the nonlinear loop often yields quite conservative results. Stability in itself usually does not guarantee well-damped transients. However, the stability criteria for nonlinear systems are only sufficient and not necessary. Thus, an application of, say, the circle criterion gives frequency responses GL (jω) of the linear part of the loop that are far away from the limits indicating the possibility of limit cycles in a nonlinear loop according to Figure 9.1. All simulation studies carried out so far have shown that the limits suggested in the phase design aid (see Section 3.2) are sufficient to prevent an oscillatory behaviour due to input saturation. The phase design aid not only allows improved nonlinear transients, but its application sometimes also helps to prevent undesirable all pass-like effects in the transients of the nonlinear loop (see, e.g., Example 7.2). The designer thus has to decide whether to trade in proven stability for an improved performance or vice versa.
9.4 Plant Windup in Unstable Systems The prevention of controller windup is not influenced by the stability properties of the plant. The stabilization of an unstable system is not feasible during input saturation, so that also after an application of the observer technique for the prevention of controller windup does the transfer matrix GL (s) characterize an unstable system. Therefore, when the input signal saturates, the modes of the unstable system can diverge in an uncontrolled manner, so that its trajectories may leave the region of attraction. Most techniques for the prevention of windup only become active after the input signal has passed the maximum transferable amplitude for the first time. Any such scheme can be destabilized by disturbance signals that give rise to input saturation during reference transients. When applying reference signals, there are situations where the signal forms occurring are restricted to a certain class (e.g., constant, step-like or sinusoidal). In view of disturbance inputs, however, such restrictions do not exist in general. Proven stability of a closed loop incorporating an arbitrarily unstable system with input saturation can consequently only be obtained when the plant input signals stay unsaturated. Such confinement of the plant input signals in spite of jointly acting reference and disturbance inputs requires a subdivision of the restricted amplitude range into one part reserved for disturbance rejection and the remaining part for reference tracking (see Chapter 5).
9.4 Plant Windup in Unstable Systems
235
This becomes possible by using feedforward control for tracking and feedback control for disturbance rejection and system stabilization. The basis of this is: •
•
A model-based nonlinear trajectory generator (reference shaping filter), which filters arbitrary reference inputs so that the inputs generated for the system stay within predefined limits that are smaller than the existing amplitude restrictions, and An injection of the model states such that reference inputs do not cause output signals of the feedback control.
The reservation of one part of the limited range of the input signal for disturbance rejection restricts, of course, the maximum sustainable region of the controlled output. However, it allows a strict proof of stability even for constrained unstable systems in the presence of jointly acting reference and disturbance inputs. The control scheme that uses a reference shaping filter is, of course, also applicable in the presence of stable systems, where a complete prevention of plant input saturation is no necessity, since plant windup can be prevented by an additional dynamic element. Thus, the new scheme with the nonlinear trajectory generator introduced in Chapter 5 could be regarded as a universal solution to the prevention of windup. The reference shaping filter is designed as follows. First, if the system to be controlled is unstable, a model of the unstable system is stabilized by an inner cascade. The input to this inner cascade is then restricted such that the input signal to the model never passes the saturation limits. Thus, the remaining control problem to be solved is that of a stable linear system with input saturation. By adding an overlying cascade that satisfies, for example, the circle criterion, a shaping filter with proven stability is obtained. Faster transients for small reference amplitudes can be obtained by additional cascades as decribed in Chapters 5 and 6. There is, however, no rigorous proof of stability for the multi-cascade approach. A filter assuring a fast small-amplitude behaviour could also be obtained by assigning the desired linear dynamics with one overlying cascade only. This cascade probably violates the existing criteria for the prevention of plant windup. However, by using an appropiately designed additional dynamic element, the fast linear dynamics can be obtained without running the danger of plant windup effects for larger reference signals. Thus, a reference shaping filter with proven stability can be designed. When the overlying cascade gives rise to a severe plant windup, the ADE can cause transients that are impaired by an all pass-like behaviour. This is due to a premature retraction of the input signal, a problem not occurring when using the multi-cascade approach.
236
9 R´esum´e and Concluding Discussions
9.5 Other Methods for the Prevention of Windup Throughout this book, the observer technique has been used for the prevention of controller windup and an additional dynamic element to eliminate the possibly existing danger of plant windup. There are numerous other methods, especially for the prevention of controller windup. The most popular among these methods seems to be the “conditioning technique”. Instead of the characteristic polynomial of the observer, it uses the (scaled) numerator polynomial of the compensator’s reference transfer function as the denominator of the controller in the case of input saturation. The major advantage of this approach is the fact that it can immediately be applied to classical controllers, since the transfer functions of the compensator are easily accessible. Before one can apply the observer technique, however, the characteristic polynomial of the closed loop must be computed and factorized in a suitable manner. The “generalized antireset windup” control uses an arbitrary Hurwitz polynomial of degree nO (where nO is the order of the controller), and it can be chosen to obtain a favourable influence on the effects of plant windup. This influence, however, is limited. An intensive plant windup cannot be removed from the loop by any suitably chosen denominator polynomial of the compensator in the case of input saturation. The “unified scheme” presented in [43] contains all the different techniques for the prevention of controller windup as special cases. On the one hand, the possibly existing danger of plant windup is not generally removable by such approaches and, on the other hand, the transfer function indicating the danger of plant windup has only n poles (n is the order of the system) when the observer technique has been applied, whereas for any other technique, this transfer function contains (n + nO ) poles (nO is the order of the controller). This would also require an additional dynamic element of order (n + nO ) for the prevention of plant windup when using the time domain version of Section 3.3.2. An especially transparent approach to the prevention of controller and plant windup is the one-step technique of Schneider and Teel and Kapoor (STK), which is described in Section 4.3. The major advantages of this scheme are that: • • •
The controller and plant windup are removed in one common scheme, The tuning of the scheme is independent of the compensator, and The additional dynamics for the prevention of plant windup have the order n of the plant only.
As a drawback one could consider the fact that the additional dynamics of the order n (which stem from the model of the plant in this scheme) are also required when the given nominal controller does not cause the danger of plant windup.
9.6 Multivariable Systems with Input Saturation
237
The observer technique removes controller windup by structural measures and only if the danger of plant windup exists, do additional dynamic elements (ADE) have to be used for its prevention. If the time domain version of this ADE is applied, equivalent results are obtained by the two-step (observer technique plus ADE) and the STK approach, provided that the safe feedback vector in the first is identical with the feedback vector of the states of the model in the second. The nonlinear cascade approach to the prevention of plant windup introduced by B¨ uhler is applicable in the case of stable and unstable systems alike. Unfortunately, it exerts a negative influence on the disturbance rejecting properties of the loop, so that it should not be applied in its original form. However, when it is used for tracking only, the results obtainable are excellent (see Chapter 5 and Section 6.6).
9.6 Multivariable Systems with Input Saturation Controller and (oscillatory) plant windup equally occur in SISO and MIMO systems, and the corresponding measures for their prevention are also quite similar. There is, however, an additional plant windup problem occurring in multivariable systems, namely that of directionality. Usually one input ui (t) to the system exerts an influence on all controlled outputs yj (t), j = 1, 2, . . . , m. So when a multivariable controller is designed (e.g., by linear quadratic methods), the modification of one set point ri (t) of the corresponding controlled output yi (t) also influences all other outputs yj (t), j = 1, 2, . . . , m, j = i. Though this interaction is not permanent, undesired effects can be caused by the coupling. Therefore, one often tries to obtain a decoupled reference behaviour, which requires a specific input vector to accommodate the existing cross-couplings in the system. If one or more input signals saturate, components of this vector are clipped, so that both its length and direction are modified. The reduced length of the input signal gives rise to more sluggish transients in the SISO case. This is of course also true for MIMO systems. However, also the decoupling direction of the input vector may be destroyed and this possibly causes severe cross-couplings, the so-called directionality problem. The model-based trajectory generator introduced in Chapter 5 also allows a perfect preservation of directionality. By designing its inner cascade such that input saturation in front of the model of the system does not become active, a decoupling input signal to the system can be generated, which gives relatively sluggish transients for large changes of the set point, but much faster ones for small changes. Thus the restricted signal range is much better exploited than it would be with a slow controller that avoids input saturation for all reference signals from the maximum used range.
238
9 R´esum´e and Concluding Discussions
9.7 Additional Aspects In some industrial applications, not only the maximum amplitude but also the maximum rate of change of the plant input signal is restricted. Whereas the case of amplitude saturation has been discussed in a multitude of papers, the results related to an additional rate constraint are much less numerous. This may be due to the fact that actuator models with joint amplitude and rate constraints incorporate two nonlinear elements. A second nonlinearity, however, considerably complicates the stability analysis. The usual method to prevent the undesired effects of input nonlinearities is the following. Insert a model of the nonlinear element at the input of the system, so that the actual actuator nonlinearity does not become active. Thus stability analysis can be carried out for the model nonlinearity and the linear plant. When using this approach with amplitude and rate restricted actuators, the problem to be solved is still complicated by the two nonlinear elements in the usual models of such actuators. In Chapter 7, an ersatz model of amplitude and rate restricted actuators has been introduced, which incorporates one saturating nonlinearity only. The rate constraint is assured by a first-order system with gain one and a specially adapted time constant. When inserting this ersatz model at the input of the system, one has to solve the usual problem of a linear system with input saturation when adding the first-order system of the ersatz model to the plant description and when designing the controller for this augmented system. Thus all known approaches to the prevention of windup are readily applicable also in the case of joint amplitude and rate constraints. Though this approach requires the design of a controller for the plant augmented by an additional first-order system, it allows in a simple fashion to solve the problems caused by actuators with joint amplitude and rate constraints and it is equally applicable to stable and unstable systems. By an appropriate modification of this ersatz model as proposed in Section 7.4 the usual approach to windup prevention also becomes applicable, namely to design the controller without taking notice of the actuator nonlinearities and to add measures for the prevention of controller and plant windup later. This approach, however, seems to be restricted to stable systems so far. The bumpless transfer problem is closely related to windup prevention, and it has always been discussed in this context. When switching from one control to another, the existing deviations from the desired steady state necessarily give rise to small “bumps” in the input to the plant. These amplitude agitations, however, should not be intensified by a mismatch in the states of the controller or by windup effects. Therefore, the suggested bumpless transfer procedure on the basis of the observer technique gives a systematic solution also to this problem, as the states of the controller do not play a role in the effects caused by input saturation. Moreover, a possibly existing danger of plant windup is prevented by the additional dynamic element.
A Design of Observer-based Controllers
A.1 Introductory Remarks Both the time and the frequency domain representations of observer-based controllers are discussed in this book. There is, of course, a great body of literature covering linear output feedback control, but in most cases attention is focused on the time domain representation, i.e., the design is based on the state equations of the system and the controller. Though state feedback control was originally developed in the time domain, the frequency domain representation on the basis of transfer functions for the system and the controller has also been adopted at a fairly early stage. Both the time and the frequency domains offer specific advantages. Questions concerning controllability and observability, the occurrence of observation errors, and their influence on the behaviour of the closed loop, are best discussed in the time domain. On the other hand, one should never assign the dynamics of the closed loop without taking into account the zeros of the system. This is considerably facilitated by using the frequency domain approach. Moreover, the use of frequency response or root locus methods can prove helpful when designing observer-based controllers. Constant state feedback in single input systems is parameterized either by ˜ the row vector k T in the time domain, or by the characteristic polynomial D(s) of the controlled plant in the frequency domain. A simple relation connects these two equivalent parameterizations (see Section A.2). In Section A.3 the time domain design of (reduced-order) observers is discussed. The equations presented cover all observer orders between the fullorder observer and the completely reduced-order observer. An equivalent frequency domain parameterization of such observers is also feasible. For systems with more than one output this requires the use of polynomial matrix fraction descriptions. The discussion of polynomial matrices, however, is beyond the scope of this short introduction to observer-based control. Once the feedback vector k T , the state equations of the observer, and the state estimate have been specified, the time domain parameterization
240
A Design of Observer-based Controllers
of the observer-based controller is complete. The frequency domain design of such controllers (discussed in Section A.4) is based on the characteristic ˜ polynomials D(s) of the controlled plant and Δ(s) of the state observer. The transfer functions of the observer-based controller can be obtained from these quantities by solving a polynomial equation. Suitable realizations must then be chosen for these transfer functions. If constantly acting disturbances of known signal forms are present (for example step-like or sinusoidal disturbance inputs), they can be asymptotically compensated (i.e., in the steady state) when introducing a disturbance observer or a dynamic model for such signals. Two well-known approaches for dealing with such external disturbances are discussed in Section A.5. In Johnson’s approach (Section A.5.1), the disturbances are assumed to be the output signals of a fictitious disturbance process. By an appropriate injection of its states at the input of the system, the disturbances can be compensated asymptotically. Though the states of the disturbance process are not measurable, they can be reconstructed in an observer. Adding the equations of the fictitious disturbance process to the system, an observer of this augmented system (the state-plus-disturbance observer) yields both the states of the system and the disturbance process, so that the asymptotic compensation of the disturbances becomes feasible. The main benefit of this approach is its applicability even in the case of non-measurable controlled outputs. Another advantage is the prevention of controller windup by the observer technique (see Section 2.3) without additional modifications. Unfortunately Johnson’s disturbance observer is neither robust to variations of the plant parameters nor to changing input locations of the disturbances. Davison suggested driving a model of the fictitious disturbance process (disturbance model) by the tracking error and stabilizing this augmented plant by state feedback (see Section A.5.2). Since the states of the disturbance model are directly accessible, the design of the state observer is as simple as in the standard case without a disturbance model. Davison’s control scheme differs from Johnson’s in that it is both robust to modified plant parameters and to changing input locations of the external disturbances. It requires, however, that the controlled outputs are contained in the measured outputs. On the other hand, the standard observer technique does not remove controller windup in such controllers. Nevertheless the prevention of controller windup is also feasible in the presence of disturbance models when introducing the modifications of Davison’s approach described in Section A.5.2. For both controllers with disturbance rejecting properties an equivalent frequency domain approach is also presented, so that they can be designed by solving polynomial equations. The design equations are formulated as systems of linear equations yielding the transfer functions of the controller, provided that all necessary conditions for the design of such controllers are satisfied.
A.2 State Feedback in the Time and in the Frequency Domains
241
A.2 State Feedback in the Time and in the Frequency Domains We consider linear time invariant single input and multiple output (SIMO) systems of the order n, with one manipulated (or control) input u(t), a controlled output y(t), and p ≥ 1 measurements, where ymi (t) are the p components of the measurement vector ym (t). The state equations of the system are x(t) ˙ = Ax(t) + bu(t) y(t) = cT x(t)
(A.1)
ym (t) = Cm x(t) It is assumed that the pair (A, b) is completely controllable and the pair (A, Cm ) completely observable. If the controlled output y(t) is measurable, it coincides with a component of ym (t). The systems are supposed to be strictly proper, i.e., there is no direct feed-through du(t) from the input u(t) to y(t) and no term Dm u(t) in the measurement equation. Of course, proper systems (with non-vanishing d and Dm ) can also be handled, but this would cause unnecessary complications since “in practice almost all real systems are strictly proper” [22]. In the frequency domain the systems considered are characterized by their u(s). The transfer transfer behaviour y¯(s) = G(s)¯ u(s) and y¯m (s) = Gm (s)¯ function between the input u and the output y of the system is denoted by G(s) = cT (sI − A)−1 b = N (s)D−1 (s)
(A.2)
with N (s) and D(s) polynomials in s. Because of D(s) = det(sI − A), D(s) is a monic polynomial. The vector Gm (s) of transfer functions between the input u and the p-vector ym of measurements is denoted by Gm (s) = Cm (sI − A)−1 b = Nm (s)D−1 (s)
(A.3)
with D(s) as above and the (column) vector Nm (s) having p components Nmi (s), i = 1, 2, . . ., p. In order to apply constant non-vanishing reference inputs r(t) for the controlled output y(t), the polynomial N (s) must not have a zero at s = 0. The measurement vector ym (t) is subdivided according to 1 1 (t) ym Cm ym (t) = x(t) (A.4) = 2 2 (t) Cm ym The κ components (0 ≤ κ ≤ p) of ym (t), which directly enter the state esti2 1 mate x ˆ(t), form the vector ym (t), and the vector ym (t) contains the remaining p − κ measurements.
242
A Design of Observer-based Controllers
The control considered has the form u(t) = −˜ u(t) + mr(t)
(A.5)
u˜(t) = k T x(t)
(A.6)
with The constant row vector k T parameterizes the state feedback, m is a constant factor and r(t) is the reference input. The eigenvalues of the controlled system x(t) ˙ = (A − bk T )x(t) + bmr(t)
(A.7)
y(t) = cT x(t)
can be placed arbitrarily by the feedback vector k T , as the pair (A, b) is completely controllable. Figure A.1 shows a block diagram of the closed loop having the reference transfer behaviour y¯(s) = cT (sI − A + bk T )−1 bm¯ r (s)
(A.8)
A vanishing tracking error y(∞) − r(∞) is assured by the factor m=
cT (−A
1 + bk T )−1 b
(A.9)
The denominator of (A.9) vanishes if N (s) contains a zero at s = 0, but this was excluded above. The loop in Figure A.1 is said to be the “ideal” state feedback loop, as it requires all states of the system to be measurable.
y cT
b
m
ym
x
u
r
u ˜
s−1 I
Cm
A
kT
Figure A.1. Constant state feedback control in the time domain
A.2 State Feedback in the Time and in the Frequency Domains
243
The connecting relation between the time and the frequency domain representations of the “ideal” state feedback loop is derived below by inspection of the open loop transfer behaviour ¯ u ˜(s) = k T (sI − A)−1 b¯ u(s)
(A.10)
between the signals u and u ˜. A frequency domain representation of the loop in Figure A.1 is shown in Figure A.2. It is based on the transfer functions (A.2) and (A.3) of the system ˜ and on the polynomial D(s). Whereas the state feedback is parameterized by ˜ plays the correspondthe vector k T in the time domain, the polynomial D(s) ing role in the frequency domain. The variable π is the so-called partial state of the system [73]. This partial state is a “flat output”, being the starting point for the design of a tracking control using variational calculus methods [15]. The reference transfer behaviour of the loop in Figure A.2 is characterized by ˜ −1 (s)m¯ r (s) (A.11) y¯(s) = N (s)D and the open loop transfer behaviour between u and u˜ is given by −1 ˜ ¯ (s) − 1]¯ u(s) u ˜(s) = [D(s)D
(A.12)
Comparing (A.8) and (A.11) reveals that ˜ D(s) = det(sI − A + bk T )
(A.13)
is the characteristic polynomial of the controlled system. Both loops shown in Figures A.1 and A.2 exhibit an identical behaviour if the two transfer functions in (A.10) and (A.12) coincide.
y N (s) r
ym
π
u D−1 (s)
m
Nm (s)
u ˜ ˜ D(s) − D(s)
Figure A.2. Ideal state feedback loop in the frequency domain
244
A Design of Observer-based Controllers
This is the case if the relation −1 ˜ D(s)D (s) = 1 + k T (sI − A)−1 b
(A.14)
is satisfied. Equation (A.14) is the well-known relation that connects the time and the frequency domain representations of constant state feedback control ˜ or [40, 28]. Given k T , (A.14) could be used to compute the equivalent D(s) vice versa. Here in the case of single input systems (A.13) can also be used as a connecting relation. Vanishing tracking errors y(∞) − r(∞) are assured by m=
˜ D(0) N (0)
(A.15)
and this coincides, of course, with the result of (A.9). The factor m is finite, since N (s) was assumed to have no zero at s = 0.
A.3 State Observation in the Time Domain If not all states of the system are directly measurable (i.e., for rank (Cm ) < n), the control (A.6) can only be realized with the aid of a (stable) state observer of the order nO , and it is assumed that the order of the observer is within the range n − p ≤ nO ≤ n. A state observer of the order nO = (n − κ) with 0 ≤ κ ≤ p can, for example, be characterized by its state equations z(t) ˙ = F z(t) + Lym (t) + T bu(t)
(A.16)
If the initial transients have vanished and no disturbances act on the system, the state of the observer is z(t) = T x(t), provided that the relation T A − F T = LCm
(A.17)
holds. Prerequisites for the design of the observer are [48]: i) The pair (A, Cm ) is completely observable ii) The pair (F, L) is completely controllable iii) The matrices A and F do not have coinciding eigenvalues It follows from (A.17) that the state of the system does not cause observation errors. When choosing an observer matrix F with desired eigenvalues and a R function “lyap” can, for example, be used to obtain matrix L, the MATLAB the solution T of (A.17). 2 2 ym (t) Cm The n-vector = x(t) can be formed from the n − κ states T z(t) 2 (t) = C 2m x(t). Proz(t) = T x(t) of the observer and the κ measurements ym 2 vided that the rows of Cm and T are linearly independent, this relation can be solved for the state estimate
A.3 State Observation in the Time Domain
x ˆ(t) =
2 Cm
T
−1
y 2m (t) = Ψ2 z(t)
y 2 (t) m Θ z(t)
245
(A.18)
If no disturbances act on the system (A.1) and the initial transients have settled, the estimate x ˆ(t) coincides with the state x(t) of the system. Remark A.1. The above conditions i) through iii) can easily be verified. 2 and T are linearly independent can only Whether or not the rows of Cm be tested after the solution T of (A.17) is known. If the resulting T is not 2 linearly independent of Cm , a modified L, and if this is not sufficient, also a modified F (however with the desired eigenvalues) can be tested to obtain an 2 Cm . invertible matrix T Equation (A.18) shows that the two relations 2 Cm Iκ 0 2 Ψ2 Θ = + ΘT = In and Ψ2 Cm 0 In−κ T
(A.19)
hold. They are useful in manipulations to prove various properties of the closed loop. In order to simplify notations, the abbreviation (A.20) Ψ = 0n,p−κ Ψ2 is used in the sequel. The state estimate (A.18) then has the form y (t) m xˆ(t) = Ψ Θ z(t)
(A.21)
and the second relation in (A.19) becomes Ψ Cm + ΘT = In
(A.22)
The relations presented hold for all observer orders n ≥ nO ≥ n − p (which is equivalent to 0 ≤ κ ≤ p), i.e., for all observers giving an estimate xˆ(t) for the state x(t). For κ = 0 or nO = n the well-known identity observer results, which is additionally characterized by T = In , Θ = In and a vanishing Ψ . For κ = p or nO = n − p one obtains the completely reduced (or minimal) order state observer. The so-called observer of a linear functional [47] of the order nO = ν − 1, where ν is the observability index of the system (A.1) will not be considered here. There exists an equivalent frequency domain parameterization of the above state observer similar to the state feedback case (see Section A.2). Connecting relations can also be formulated for the observer representations in the time and in the frequency domains, allowing the computation of equivalent frequency domain results from the time domain parameterizations and vice
246
A Design of Observer-based Controllers
versa at every design step. For systems having more than one measurement ym (t), the frequency domain description of the observer is based on the left coprime polynomial matrix fraction description of the system. Since a system representation on the basis of coprime polynomial matrix fractions is not as widely known as the state space equations, the observer parameterization in the frequency domain is not discussed here. The details can be found, for example, in [28], [27], or [29].
A.4 Observer-based Control in the Time and in the Frequency Domains The loop shown in Figure A.3 is obtained by replacing x(t) in the control law ˆ(t). Inserting the observed u(t) = −k T x(t) + mr(t) by the observed state x state (A.21) in the feedback (A.5) and (A.6), and in (A.16), one obtains the state equations z(t) ˙ = (F − T bk T Θ)z(t) + (L − T bk T Ψ )ym (t) + T bmr(t) u(t) = −k T Θz(t) − k T Ψ ym (t) + mr(t)
(A.23)
of the observer-based controller. Its input signals are the measurements ym (t) and the reference signal r(t), and its output is the control signal u(t). Since 2 the measurements ym (t) enter the state estimate x ˆ(t) directly (see (A.18)), 1 only the p − κ transfer functions of the observer-based controller between ym 2 and u are strictly proper, whereas the remaining κ ones between ym and u are proper. The reference behaviour of the loop in Figure A.3 is characterized by the state equations
r
y
u
System
m
ym
ˆ u ˜ kT x ˆ
Observer
Figure A.3. Observer-based state control in the time domain
A.4 Observer-based Control in the Time and in the Frequency Domains
x(t) ˙
=
A − bk T Ψ Cm
−bk T Θ
LCm − T bk Ψ Cm F − T bk Θ x(t) cT 0 y(t) = z(t)
z(t) ˙
T
T
x(t) z(t)
+
bm
247
T bm
r(t) (A.24)
resulting from (A.1) (after inserting u(t) from (A.23)) and from (A.23). Substituting the observer state z(t) by the observation error ξ(t) = z(t) − T x(t) the state equations (A.24) take the more transparent form x(t) ˙ bm A − bk T −bk T Θ x(t) + r(t) = ˙ 0 F ξ(t) 0 ξ(t) x(t) cT 0 y(t) = ξ(t)
(A.25)
(A.26)
where the relations (A.17) and (A.22) have been used. The structure of (A.26) reveals that the characteristic polynomial of the closed loop in Figure A.3 is CP (s) = det(sI − A + bk T ) det(sI − F )
(A.27)
The state equations (A.26) further show that the observer is not controllable from the input signal r(t), i.e., reference signals do not trigger observation errors. As a consequence of the fact that the zeros of a (single input) system are not influenced by state feedback, the reference transfer behaviour of the loop in Figure A.3 is characterized by y¯(s) =
N (s) det(sI − F ) m¯ r (s) det(sI − A + bk T ) det(sI − F )
(A.28)
which coincides with the transfer behaviour in (A.8) and (A.11) of the “ideal” state feedback loop shown in Figures A.1 and A.2. The observer-based controller in Figure A.3 is characterized by its (open ˆ loop) transfer behaviour between u and u ˜ and between ym and uˆ˜. Using the ˆ˜(t) = k T xˆ(t) together with (A.21) and (A.16), this transfer state feedback u ¯ˆ behaviour is characterized by the two relations u ˜(s) = k T Θ(sI − F )−1 T b¯ u(s) ¯ T −1 and uˆ ˜(s) = k Θ(sI − F ) L + Ψ y¯m (s). Introducing the notations
and
k T Θ(sI − F )−1 T b = Δ−1 (s)NCu (s)
(A.29)
T (s) k T Θ(sI − F )−1 L + Ψ = Δ−1 (s)NCy
(A.30)
the loop of Figure A.3 can also be represented by the equivalent block diaT (s) is a row vector whose components gram A.4. In this representation, NCy
248
A Design of Observer-based Controllers N (s)D−1 (s) r
u Nm (s)D−1 (s)
m
y
ym
ˆ u ˜ Δ−1 (s)NCu (s)
T (s) Δ−1 (s)NCy
Figure A.4. Observer-based state control in the frequency domain (“observer structure”)
are the polynomials of the numerators of the p individual transfer functions ¯ˆ NCyi (s) u ˜(s) = , i = 1, 2, . . . , p. The denominator polynomial Δ(s) obviy¯mi (s) Δ(s) ously characterizes the dynamics of the observer since a comparison of both sides of (A.29) and (A.30) shows that Δ(s) = det(sI − F )
(A.31)
is the characteristic polynomial of the state observer (A.16). The frequency domain representation in Figure A.4 is based on the transfer functions of ˆ˜, and consequently one ˆ the observer between u and u ˜ and between ym and u ¯ T ¯ ˆ obtains u ˆ(s). Therefore, the block diagram in Figure A.4 is also ˜(s) = k x said to be in observer structure. Since no observation error is caused by the reference input, the reference behaviour of the loop in Figure A.4 is the same as that of the ideal state feedback loop in Figures A.1 and A.2. Eliminating the inner feedback (from u to uˆ˜), the transfer behaviour of the controller becomes ym (s) + GCr (s)¯ r (s) u ¯(s) = −GTCy (s)¯
(A.32)
Comparing this with (A.23) leads to the relations −1 GCr (s) = −k T Θ(sI − F + T bk T Θ)−1 T bm + m = DC (s)NCr (s)
and
(A.33)
GTCy (s) = k T Θ(sI − F + T bk T Θ)−1 L − T bk T Ψ + k T Ψ = −1 T (s)NCy (s) = DC
(A.34)
A.4 Observer-based Control in the Time and in the Frequency Domains
N (s)D−1 (s) r
−1 (s)NCr (s) DC
u
Nm (s)D−1 (s)
249
y
ym
−1 T (s)NCy (s) DC
Figure A.5. Frequency domain representation of the observer-based control in a structure with two degrees of freedom
Figure A.5 shows the corresponding block diagram in a structure with two degrees of freedom. The above relations define the frequency domain entities T (s) and NCr (s), given a time domain parameterization of the DC (s), NCy observer-based controller (see Sections A.2 and A.3). It is also possible to determine these polynomials of the compensator directly in the frequency domain. This will be discussed immediately below. The reference behaviour of the loop in Figure A.4 has the form −1 T (s)Nm (s) Δ(s)m¯ r (s) (A.35) y¯(s) = N (s) {Δ(s) + NCu (s)} D(s) + NCy The reference behaviour of the loop in Figure A.5 is characterized by −1 NCr (s)¯ r (s) (A.36) y¯(s) = N (s) DC (s)D(s) + N TCy (s)Nm (s) Comparing (A.35) and (A.36) shows that both loops in Figures A.4 and A.5 have an identical reference behaviour if the two relations NCr (s) = Δ(s)m
(A.37)
DC (s) = Δ(s) + NCu (s)
(A.38)
and hold. Using suitable manipulations one can also show that the entities (A.29) and (A.30) lead to (A.34) when using (A.38). Any standard loop in the structure with two degrees of freedom (see Figure A.5) can be realized in an observer-based control structure in the form of Figure A.4 by using (A.38) and replacing m in Figure A.4 by
NCr (s) . Δ(s)
By a suitable choice of the polynomials NCyi (s), i = 1, 2, . . . , p and DC (s) one can also obtain a behaviour of the loop in Figure A.5 as if one had used a state feedback via k T as in Section A.2 and a state observer as in Section A.3.
250
A Design of Observer-based Controllers
Using (A.37) in (A.36) and comparing the result with (A.11) gives the basic polynomial equation T ˜ DC (s)D(s) + NCy (s)Nm (s) = Δ(s)D(s)
(A.39)
which is also known as the Diophantine equation. It assures coinciding characteristic polynomials of the loops in Figures A.3 and A.5. In addition, when parameterizing the reference channel by (A.37) the same reference behaviour is obtained as if one had used static state feedback as in Section A.2. The polynomial equation (A.39) can be solved by a comparison of coefficients. This comparison can be written down when the polynomial coefficients are defined. The polynomials of the plant Nmi (s) = cin−1 sn−1 + · · · + ci1 s + ci0 , i = 1, 2, . . . , p
(A.40)
D(s) = sn + an−1 sn−1 + · · · + a1 s + a0
(A.41)
and cin sn
are given. If the plant was not strictly proper, a term would be present in (A.40). Likewise, the desired characteristic polynomials of the controlled plant ˜ ˜n−1 sn−1 + · · · + a ˜1 s + a ˜0 (A.42) D(s) = sn + a and of the state observer Δ(s) = snO + δnO −1 snO −1 + · · · + δ1 s + δ0
(A.43)
are known. The order nO of the controller is fixed by the order n−p ≤ nO ≤ n of the observer. Equivalent frequency domain results are only obtained if the structural properties of the time domain parameterization are mapped into the frequency domain. Depending on the order of the observer, there are strictly proper transfer functions of the compensator (having more poles than zeros) and proper transfer functions (having the same number of poles and zeros). In the case of: i) An identity observer (i.e., for κ = 0 and nO = n) all transfer functions GCyi (s), i = 1, 2, . . . , p of the compensator are strictly proper, ii) An observer with completely reduced order (i.e., κ = p and nO = n − p) all transfer functions GCyi (s) of the compensator are proper, iii) An observer with “intermediate” order (i.e., 0 < κ < p and nO = n − κ) the transfer functions GCyi (s), i = 1, 2, . . . , p − κ of the compensator are strictly proper whereas the remaining ones are proper. In order to cover the general case, all transfer functions of the compensator are supposed to have an equal number of poles and zeros at the outset. To obtain a strictly proper transfer function GCyi (s), the numerator coefficient of the highest power of s must vanish. Consequently the numerator polynomials of the compensator are denoted by
A.4 Observer-based Control in the Time and in the Frequency Domains
NCyi (s) = lni O snO + · · · + l1i s + l0i ,
i = 1, 2, . . . , p
251
(A.44)
and the denominator polynomial of the compensator by DC (s) = pnO snO + pnO −1 snO −1 + · · · + p1 s + p0
(A.45)
It follows from the relations (A.39)-(A.43) that the leading coefficient pnO of the denominator always has the value pnO = 1. Substituting the above polynomials in (A.39), the unknown coefficients lji und pk can be obtained from a simple comparison of coefficients. This can be written in compact form as the system of linear equations ˜ Kh h = Aδ
(A.46)
where the (n + nO + 1) × (p + 1)(nO + 1)-coefficient matrix ⎡ 0 ⎢ 1 ⎢ ⎢a ⎢ n−1 1 ⎢ . ⎢ . ⎢ . an−1 ⎢ .. Kh = ⎢ ⎢ a0 . ⎢ a0 ⎢ 0 ⎢ . .. ⎢ . ⎢ . . ⎣ 0 0
··· .. . .. . .. .
0 .. . 0
1 an−1 . .. . .. · · · a0
0
0
c1n−1 0 .. . c1n−1 .. c1 . 0
0 .. . 0
··· .. ..
.
0 .. . 0
. 0 c1n−1 c10 . .. . . . .. . 0 · · · c10
.. . 0 0 .. p . c 0 .. n−1 . .. cp . n−1 .. .. . cp . 0 p .. 0 c 0 . . . .. .. .. . 0 .. 0 .
⎤ ··· ..
.
..
.
0 .. . 0
0 cpn−1 . .. . .. · · · cp0
⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦
(A.47) consists of the polynomial coefficients of the plant defined in (A.41) and (A.40), and the (p + 1)(nO + 1)-vector hT = pnO · · · p1 p0 ln1 O · · · l11 l01 · · · lnp O · · · l1p l0p (A.48) contains the unknown coefficients of the polynomials (A.45) and (A.44) of the compensator. The (n + nO + 1) × (nO + 1)-coefficient matrix A˜ and the (nO + 1)-vector δ have the form ⎡ ⎤ 1 0 ··· 0 ⎢a ⎥ ⎢ ˜n−1 1 · · · 0 ⎥ ⎤ ⎡ . ⎢ .. .. 1 .. ⎥ ⎢ . a ⎥ . ˜ n−1 ⎥ ⎢ ⎢ δnO −1 ⎥ ⎥ ⎢ ⎥ ⎢ .. . . (A.49) A˜ = ⎢ a and δ = ⎥ ⎢ .. ⎥ . 1 ⎥ . ⎢ ˜0 ⎣ . ⎦ ⎥ ⎢ 0 a ˜0 a ˜n−1 ⎥ ⎢ δ0 ⎥ ⎢ . . . .. . . ... ⎦ ⎣ .. 0
0
··· a ˜0
252
A Design of Observer-based Controllers
˜ on the right-hand side of (A.46) are i.e., the elements of the column vector Aδ ˜ the coefficients of the characteristic polynomial Δ(s)D(s) of the closed loop. For arbitrary right-hand sides (i.e., for arbitrarily chosen eigenvalues of the closed loop) the system of linear equations (A.46) can only be solved if it is not over-determined, i.e., if the number (p + 1)(nO + 1) of unknowns is not smaller than the number n + nO + 1 of linear equations. If the coefficient matrix Kh is square and has full rank, there is a unique solution. Given the lower limit nO = n−p of the order of the observer, the difference between the number of columns and rows in Kh is ϑ = (p − 1)(n − p). Since p ≥ 1 and p ≤ n, this difference is always ϑ ≥ 0, i.e., the system of linear equations (A.46) is never over-determined. The matrix Kh is known as the Sylvester resultant [40], which can be used to verify whether two or more polynomials are relatively coprime. The matrix Kh has full row rank if and only if the polynomials D(s) and Nmi (s), i = 1, 2, . . ., p do not have a common root. This is the case if in a state space realization (A, b, Cm ) of the system, the pair (A, b) is completely controllable and the pair (A, Cm ) is completely observable. On the other hand, if Kh does not have full row rank for an order nO = n − p of the controller, the system obviously does not meet the prerequisites for a pole placing design of the controller (namely the property of being completely controllable and observable). This is a consequence of the fact that the smallest order of the controller giving a full row rank of Kh is the so-called observability index ν of the system [73]. This observability index, however, satisfies the inequality ν ≤ n − p. Remark A.2. In the time domain approach to observer-based controllers, the so-called observer of a linear functional [48] having order nO = ν − 1 has not been considered, as it cannot be incorporated in the chosen representation of ˆ(t) of the estimated state vector x ˆ(t). Here in the frequency a feedback k T x domain approach, such compensator orders can easily be incorporated without further modifications. The complete controllability and observability of the system is a prerequisite both for the time and the frequency domain designs of observer-based controllers. In the time domain design of the state observer, there is the additional assumption that plant and observer do not have common eigenvalues. This is not required in the frequency domain design. If, however, one is interested in the relation z(t) = T x(t) that exists between the states z(t) of the compensator in Figure A.5 and x(t) of the system, then a similar assumption would also have to be introduced [32]. Given an order nO ≥ n − p of the observer, (A.46) has p(nO + 1) − n ≥ 0
(A.50)
degrees of freedom. When assigning these free parameters, care should be taken to select independent ones.
A.4 Observer-based Control in the Time and in the Frequency Domains
253
Remark A.3. An element of the vector h in a system of linear equations (A.46) is called an “independent parameter” if an elimination of the corresponding column in the coefficient matrix Kh does not reduce the (row) rank of Kh . Using (A.37), the transfer function of the compensator’s reference channel is GCr (s) =
Δ(s)m NCr (s) = DC (s) DC (s)
(A.51)
where m results from (A.15). One sometimes comes across suggestions for placing the poles of the closed loop such as “assign the eigenvalues of the observer further to the left in the s-plane than the eigenvalues of (A − bk T )”. An inspection of the basic design equation (A.39) reveals that this does not make much sense. No matter how ˜ a given set of zeros of the characteristic polynomial CP (s) is split into D(s) ˜ and Δ(s) (“slow” poles in D(s) and “fast” ones in Δ(s) or vice versa), the resulting transfer functions GCyi (s) of the compensator, and consequently the resulting compensator, are the same. ˜ Hence the roots of D(s) and Δ(s) should have more or less the same locations such that the desired rejection of disturbances results. Different locations ˜ of the zeros of D(s) and Δ(s) only influence the tracking behaviour, since the observer poles are compensated by the zeros of NCr (s). The following examples are chosen to demonstrate the design steps in the time and in the frequency domains for different observer (and consequently controller) orders, and to show what influence existing degrees of freedom can have on the behaviour of the closed loop (e.g., on the disturbance attenuation) and on the stability of the resulting controller. The particular choice of the parameters is often made to take account of windup effects discussed in the main part of the book. Example A.1. Time domain design of an observer-based controller using a completely reduced observer of the order nO = n − p We consider the time domain design of a state feedback control on the basis of an observer with completely reduced order (i.e., κ = p) for a system of the order three with one input and p = 2 measurements. The system is characterized by ⎡ ⎤ ⎡ ⎤ 0 1 0 0 −2 −1 1 A = ⎣ −1 −2 −1 ⎦ , b = ⎣ 1 ⎦ , cT = −2 −1 1 , Cm = 1 0 0 0 0 −1 1 Since the pair (A, b) is completely controllable and the pair (A, Cm ) completely observable, an observer-based controller for arbitrary eigenvalue assignment exists. With n = 3 and p = 2, the order of the observer is nO = (n − p) = 1, 1 2 vanishes and one obtains Cm ≡ Cm and and due to κ = p the quantity Cm Ψ2 ≡ Ψ . Both the eigenvalues of the controlled system and the observer are assumed to be located at s = −15.
254
A Design of Observer-based Controllers
The feedback vector k T that assures the desired pole assignment for the R system can either be computed using Ackermann’s formula (see MATLAB command “Acker”) or by a comparison of coefficients. Introducing the vector k T = k1 k2 k3 and the desired characteristic ˜ polynomial D(s) = ˆ det(sI − A + bk T ) = (s + 15)3 = s3 + 45s2 + 675s + 3375 of the closed loop in (A.13), the comparison of coefficients can be written as the system of linear equations ⎡ ⎤⎡ ⎤ ⎡ ⎤ 0 1 1 k1 42 ⎣ 1 0 2 ⎦⎣ k2 ⎦ = ⎣ 672 ⎦ 0 0 1 k3 3374 It has the solution
k T = −6076 −3332
3374
The factor m multiplying the reference signal results from (A.9) as m = 3375. Since the order of the observer is nO = 1, the choice of the observer matrix F is unique, namely F = −15. The quantity L can also be chosen arbitrarily (as long as the pair (F, L) is completely controllable), but it influences the transfer behaviour of the observer-based controller. Whenever possible, the free parameters in the examples are chosen such that the resulting solutions can be represented exactly. With L = −98 −98 the design equation (A.17) of the observer ⎡ ⎤ 0 1 0 −2 −1 1 ⎣ ⎦ t1 t2 t3 −1 −2 −1 − (−15) t1 t2 t3 = −98 −98 1 0 0 0 0 −1 is solved by T = 7 7 −13/2 . With this solution (A.18) yields the quantities ⎡ ⎤ ⎡ ⎤ 0 1 0 Ψ2 ≡ Ψ = ⎣ 13 12 ⎦ and Θ = ⎣ 2 ⎦ 14 14 2 The observer-based controller is, therefore, described by the state equations (see (A.23)) z(t) ˙ = −57z(t) + −2058 −686 ym (t) + 1687.5r(t) u(t) = −84z(t) − 3920 1176 ym (t) + 3375r(t) The corresponding transfer functions (A.33) and (A.34) are 1 [3375s + 50625] and s + 57 1 (3920s + 50568) (1176s + 9408) GTCy (s) = s + 57 GCr (s) =
A.4 Observer-based Control in the Time and in the Frequency Domains
255
Example A.2. Frequency domain design of the observer-based controller of Example A.1. Demonstration of the influence of the free parameters. Discussion of the realization problem for the resulting transfer functions of the controller In Example A.1 an observer-based controller of the order one was designed in the time domain for a system of the order three with two measured outputs. The frequency domain design of this compensator is based on the transfer functions 1 and s3 + 3s2 + 3s + 1 1 1 1 Nm1 (s) −1 Gm (s) = Nm (s)D (s) = = s s3 + 3s2 + 3s + 1 Nm2 (s) D(s) G(s) = N (s)D−1 (s) =
of the system. ˜ The characteristic polynomials D(s) of the controlled plant and Δ(s) of the state observer are specified by the desired eigenvalues at s = −15, i.e., ˜ D(s) = (s + 15)3 = s3 + 45s2 + 675s + 3375 (A.13) and Δ(s) = s + 15 (A.31). The compensator is described by its transfer behaviour y¯ (s) ym (s) = − GCy1 (s) GCy2 (s) m1 u ¯(s) = −GTCy (s)¯ y¯m2 (s) Denoting the polynomials occurring in GCy1 (s) = GCy2 (s) =
−u ¯(s) NCy1 (s) = and y¯m1 (s) DC (s)
−u ¯(s) NCy2 (s) = by NCy1 (s) = l11 s + l01 , NCy2 (s) = l12 s + l02 and y¯m2 (s) DC (s)
DC (s) = p1 s + p0 , (A.39) is solved by the comparison of coefficients (A.46) ⎡ ⎤ ⎡ ⎤ ⎡ ⎤ p1 ⎡ ⎤ 1 0 1 1 0 0 0 0 0 ⎢ p0 ⎥ ⎥ ⎢ ⎢ 3 1 0 0 0 0 ⎥⎢ 1 ⎥ ⎢ 45 ⎢ 60 ⎥ 1 ⎥ ⎥ l1 ⎥ ⎢ ⎥ 1 ⎢ ⎢ ⎥ ⎢ ⎥ ⎢ 3 3 0 0 1 0 ⎥⎢ 1350 ⎥ =⎢ 1 ⎥ = ⎢ 675 45 ⎥ ⎢ ⎥⎢ ⎢ ⎥ 15 l ⎥ ⎢ ⎣ 13500 ⎦ ⎣ 1 3 1 0 0 1 ⎦⎢ 0 ⎥ ⎣ 3375 675 ⎦ ⎣ 2⎦ 0 3375 50625 0 1 0 1 0 0 l1 l02 This system of linear equations is underdetermined (five equations and six unknowns), so that one parameter can be specified arbitrarily. This parameter should be independent, so that neither p1 , p0 , l01 or l12 are possible candidates, because an elimination of the corresponding columns in the coefficient matrix Kh reduces its row rank. The parameters l11 and l02 are both independent. A choice of l02 = 0 would, for example, assign a zero at s = 0 in the second transfer function GCy2 (s) of the compensator, and l11 = 0 would make GCy1 (s) strictly proper. Taking l11 as the free parameter, one obtains the system of equations
256
A Design of Observer-based Controllers
⎡ ⎢ ⎢ ⎢ ⎢ ⎣
1 3 3 1 0
0 1 3 3 1
0 0 0 0 1
0 0 1 0 0
⎤⎡ ⎤ ⎡ ⎤ ⎡ ⎤ 0 p1 1 0 ⎢ p0 ⎥ ⎢ ⎥ ⎢0⎥ 0⎥ 60 ⎥ ⎢ ⎥⎢ 1 ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ l0 ⎥ = ⎢ 0⎥ 1350 ⎥ ⎥⎢ ⎢ ⎥ − ⎢ 01 ⎥ ⎢ 2⎥ ⎣ ⎦ ⎦ ⎣ l1 ⎦ 1 ⎣l ⎦ 13500 1 0 0 l2 50625 0
which has a unique solution for each given l11 . Exactly the same compensator as in Example A.1 is obtained for l11 = 3920 (see the numerators of GTCy (s) in Example A.1). For l11 = 1176 the transfer functions (A.34) of the compensator are 1 ( 1176s + 50568) (1176s + 12152) GTCy (s) = s + 57 with identical coefficients multiplying the variable s in the numerators of GCy1 (s) and GCy2 (s). Equation (A.15) also leads to m = 3375, so that the reference transfer function (A.51) of the compensator becomes GCr (s) =
1 [3375s + 50625] s + 57
which coincides with the corresponding GCr (s) in Example A.1. A compensator with identical coefficients multiplying s in the numerators of GCy1 (s) and GCy2 (s) can also be designed in the time domain. This requires a matrix L = −94.08 15.68 when solving (A.17) for T . In a time domain design, however, the influence of L on the transfer functions of the compensator is not as easily discernible as that of the free parameter l11 in the frequency domain. Since the state equations define a specific realization of the system, the time domain parameterization of the observer-based compensator also specifies its realization. The frequency domain approach only yields the transfer behaviour of the corresponding compensator, so that the question of a suitable realization of the controller remains to be solved. At first sight this is a drawback of the frequency domain approach. Actually it can be converted into a benefit when investigating the influence of inaccurate realization parameters (due to a finite accuracy of components in an analogue realization, or due to the finite word lengths in a digital realization) on the performance of the closed loop [26]. Figure A.6 shows a possible realization of the controller. It is in the socalled observer canonical form [1, p. 504], which was shown in [26] to be especially advantageous because inaccurate realization parameters have little influence on the performance of the closed loop (i.e., it gives robustness to variations of the controller parameters).
A.4 Observer-based Control in the Time and in the Frequency Domains y1
−1176
−50568
−12152
y2 −1176
1/s
50625
r
257
1
u
−57 3375
Figure A.6. Realization of the controller in the observer canonical form
Example A.3. Time domain design of an observer-based compensator using an identity observer. All transfer functions of the controller are strictly proper, giving noise attenuation and consequently a reduced actuator strain We consider a completely controllable and observable system of the order three with two measurements ym (t), where the second measured output is the controlled output y(t). As both measurements are noisy, an identity observer (i.e., κ = 0) is used. The state equations of the system are ⎤ ⎡ ⎤ ⎡ ⎡ ⎤⎡ ⎤ −5 −2 2 x1 (t) 0 x˙ 1 (t) ⎣ x˙ 2 (t) ⎦ = ⎣ 2 0 −2 ⎦⎣ x2 (t) ⎦ + ⎣ −1 ⎦ u(t) = ˆ Ax(t) + bu(t) x˙ 3 (t) −2 −1 −1 x3 (t) 0 y(t) = 1 0 −2 x(t) = ˆ cT x(t) 0 −1 1 ym (t) = x(t) = ˆ Cm x(t) 1 0 −2 and because κ = 0 the entities relevant to the design of the observer have the 1 2 ≡ Cm , T = I and Θ = I while Cm , Ψ2 and Ψ vanish. special forms Cm It is assumed that state feedback shifts the eigenvalues of the system to s = −5 and that the (three) eigenvalues of the observer are located at s = −5. The feedback vector k T = 14 −9 −18 assigns the desired characteristic polynomial det(sI − A + bk T ) = (s + 5)3 , and m = 62.5 (see (A.9)) assures vanishing tracking errors for constant reference inputs. The characteristic polynomial of the identity observer is det(sI − F ) = s3 + 15s2 + 75s + 125 2 vanishes, (A.18) reduces to xˆ(t) = z(t), and (A.17) Because T = I and Cm defines the observer matrix F = A − LCm .
258
A Design of Observer-based Controllers
The desired eigenvalues of F = A − LCm only fix three of the six parameters in L. The existing three degrees of freedom in the observer matrix F also influence the performance of the closed loop. A parameterization of L could be carried out using the so-called parametric approach [54, 57], allowing an arbitrary modification of the free parameters while keeping the desired eigenvalues at their locations. In this simple example, the characteristic polynomial det(sI − A + LCm ) depends on the six parameters ij of L, and it is relatively easy to formulate the relations for the dependent parameters so that det(sI − A + LCm) = (s + 5)3 . Choosing 12 , 22 and 32 as free parameters, the desired eigenvalues of the observer at s = −5 result if the remaining parameters 11 , 21 and 31 of L are the solution of the system of linear equations ⎤⎡ ⎤ ⎡ 11 0 −1 1 ⎣ −4 + 22 − 32 −7 − 12 + 232 7 + 12 − 222 ⎦⎣ 21 ⎦ = −8 + 622 + 232 −10 − 612 + 1032 10 − 212 − 1022 31 ⎤ ⎡ 9 − 12 + 232 ⎦ ⎣ 64 − 512 + 832 119 − 212 + 222 + 432 With 12 = 0, 22 = 2 and 32 = −1.5 one obtains ⎡ ⎡ ⎤ −5 2 0 0 2 ⎦ and A − LCm = ⎣ L = ⎣ −5 −0.5 1 −1.5
0 −5 0
⎤ 0 7⎦ −5
i.e., the desired eigenvalues of F = A − LCm appear on its main diagonal. Given the observer, the state estimate x ˆ(t) = z(t), the feedback vector k T , and the reference injection factor m, the complete parameterization of the observer-based controller z(t) ˙ = (A − LCm )z(t) + Lym (t) + bu(t) u(t) = −k T z(t) + mr(t) is determined. The output equation of the controller demonstrates that there is no direct feedthrough from the measurement vector ym (t) to the controller output signal u(t). Since the reference behaviour does not depend on the observer, the choice of 12 , 22 and 32 only affects the disturbance behaviour of the closed loop. To demonstrate the influence of the free parameters on the disturbance behaviour, it is assumed that a unit step disturbance d(t) = 1(t) is superimposed on the input signal of the plant, i.e., the first line of the state equations (A.1) now has the form x(t) ˙ = Ax(t) + bu(t) + bd(t). The identity observer with the above parameterization gives rise to the disturbance step response shown in a solid line in Figure A.7.
A.4 Observer-based Control in the Time and in the Frequency Domains
259
0.05
0.04
Example A.3 Output y(t)
0.03
Example A.4 0.02
Example A.5
0.01
0
−0.01
0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
5
Time Figure A.7. Disturbance step responses of the closed loop with different observer parameterizations
Example A.4. Time domain parameterization of the identity observer to obtain a better attenuation of step-like disturbances than with the observer of Example A.3 In Example A.3 the free parameters were chosen to obtain a matrix F containing the eigenvalues of the observer on its main diagonal. Now the free parameters are selected for an improved attenuation of input disturbances d(t) = dS 1(t). Using the set of parameters 12 = 30, 22 = 15, 32 = 19 the above system of linear equations has the solution ⎡ ⎤ −28 30 L = ⎣ −34.625 15 ⎦ −17.625 19 and consequently the matrix F of the observer has the form ⎡ ⎤ −35 −30 90 F = A − LCm = ⎣ −13 −34.625 62.625 ⎦ −21 −18.625 54.625 Though the eigenvalues of F = A − LCm are again located at s = −5, the resulting disturbance attenuation is considerably improved (see the dashed transient in Figure A.7).
260
A Design of Observer-based Controllers
Example A.5. Frequency domain design of the observer-based controller with the identity observer and discussion of the influence of the free parameters In the frequency domain, the system of Example A.3 is described by its transfer functions 2 1 s + 7s + 10 Gm (s) = Nm (s)D−1 (s) = and 3 2 2 s + 6s + 11s + 6 2 G(s) = N (s)D−1 (s) = 3 s + 6s2 + 11s + 6 ¯ between disturbance d and the conThe transfer behaviour y¯(s) = Gd (s)d(s) trolled output y of the system is characterized by Gd (s) = Nd (s)D−1 (s) =
s3
+
6s2
2 + 11s + 6
Given the desired eigenvalues, the characteristic polynomial of the controlled ˜ ˜ plant is D(s) = s3 + 15s2 + 75s + 125, and with D(0) = 125 and N (0) = 2 (A.15) leads to m = 62.5. The observer-based controller is of the order three and its characteristic polynomial Δ(s) = ˆ det(sI − F ) is Δ(s) = s3 + 15s2 + 75s + 125. The corresponding system of linear equations (A.46) ⎡
⎡
1 0 0 0 ⎢ 6 1 0 0 ⎢ ⎢ 11 6 1 0 ⎢ ⎢ 6 11 6 1 ⎢ ⎢ 0 6 11 6 ⎢ ⎣ 0 0 6 11 0 0 0 6
0 0 0 0 1 0 0 0 7 1 0 0 10 7 1 0 0 10 7 1 0 0 10 7 0 0 0 10
00 00 00 20 02 00 00
⎤ p3 ⎢ p2 ⎥ ⎢ ⎥ ⎤⎢ p1 ⎥ ⎡ ⎤ ⎡ ⎤ ⎥ 00⎢ 1 0 0 0 1 ⎢ p0 ⎥ ⎢ ⎥ ⎢ ⎥⎡ ⎤ ⎢ 30 ⎥ 0 0⎥ ⎥⎢ l31 ⎥ ⎢ 15 1 0 0 ⎥ 1 ⎢ ⎥ ⎥ ⎢ ⎢ ⎥ ⎥ ⎢ 375 ⎥ 0 0 ⎥⎢ 1 ⎥ ⎢ 75 15 1 0 ⎥⎢ ⎥ ⎢ ⎥ l 15 ⎢ 2⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥ 0 0⎥ ⎥⎢ l11 ⎥=⎢ 125 75 15 1 ⎥⎣ 75 ⎦=⎢ 2500 ⎥ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ 0 0 ⎥⎢ 1 ⎥ ⎢ 0 125 75 15 ⎥ 9375 ⎥ ⎥ l0 ⎥ ⎣ 125 ⎢ ⎢ ⎦ ⎦ ⎣ 20⎢ 2⎥ 0 0 125 75 18750 ⎦ l3 ⎥ 02⎢ 0 0 0 125 15625 ⎢ l2 ⎥ ⎢ 2⎥ ⎣ l2 ⎦ 1 l02
is underdetermined (twelve unknowns and seven linear equations). As we consider an identity observer, the measurements do not enter the state estimate x ˆ(t) directly. Therefore, all transfer functions of the compensator in (A.34) are strictly proper. This can be taken into account by choosing l31 = l32 = 0. Thus, three free parameters remain (exactly the same number as in the time domain design). Obviously p1 , p0 and l22 are independent parameters. Therefore, the system of linear equations
A.4 Observer-based Control in the Time and in the Frequency Domains
⎡ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣
1 0 6 1 11 6 6 11 0 6 0 0 0 0
0 0 1 7 10 0 0
0 0 0 0 0 0 1 0 7 1 10 7 0 10
0 0 0 0 0 2 0
0 0 0 0 0 0 2
261
⎤⎡
⎤ ⎡ ⎤ p3 1 ⎥⎢ p2 ⎥ ⎢ 30 ⎥ ⎥⎢ 1 ⎥ ⎢ ⎥ ⎥⎢ l2 ⎥ ⎢ 375 − p1 ⎥ ⎥⎢ 1 ⎥ ⎢ ⎥ ⎥⎢ l1 ⎥ = ⎢ 2500 − 6p1 − p0 ⎥ ⎥⎢ 1 ⎥ ⎢ ⎥ ⎥⎢ l0 ⎥ ⎢ 9375 − 11p1 − 6p0 − 2l22 ⎥ ⎥⎢ ⎥ ⎢ ⎥ ⎦⎣ l2 ⎦ ⎣ 18750 − 6p1 − 11p0 ⎦ 1 2 15625 − 6p0 l0
has a unique solution for any set of parameters p1 , p0 and l22 . The disturbance behaviour of the loop is characterized by y¯(s) =
Nd (s)DC (s) ¯ d(s) ˜ Δ(s)D(s)
˜ are fixed, the offset due to a Since the polynomials Nd (s), Δ(s) and D(s) disturbance step depends on the coefficient DC (0) = p0 . In the controller of Example A.4, this parameter was DC (0) = p0 = 59.375. However, since the corresponding denominator polynomial DC (s) = det(sI − A + LCm + bk T ) = s3 + 24s2 − 16.875s + 59.375 is not Hurwitz, the controller itself is unstable. This may cause severe problems when input saturation becomes active. A stable compensator assuring the same offset after input step disturbances is obtained by choosing, for example, p0 = 59.375, p1 = 60 and l22 = 200. Inserting these parameters in the above system of linear equations gives −1 T (s)NCy (s) = DC
1 s3 + 24s2 + 60s + 59.375 (160s2 + 690.625s + 1380.375) (200s2 + 584s + 732.5)
With the above m and Δ(s), one obtains (see (A.51)) −1 DC (s)NCr (s) =
62.5(s3 + 15s2 + 75s + 125) s3 + 24s2 + 60s + 59.375
This compensator assures the same reference behaviour as those of Examples A.3 and A.4. It leads to the same disturbance offset as the controller in Example A.4, and the resulting disturbance step response is shown in a dotted line in Figure A.7. Example A.6. Time and frequency domain designs of a compensator for the system of Examples A.3, A.4, and A.5 with an observer of the order n − p < nO < n. In the frequency domain the free parameters are chosen to obtain a compensator with integral action and strictly proper transfer functions We consider again the system of Examples A.3, A.4 and A.5, and this time we assume that the controlled output y(t) ≡ ym2 (t) is directly used to compute
262
A Design of Observer-based Controllers
the state estimate x ˆ(t) according to (A.18), i.e., we consider the case κ = 1 so that the order of the observer is nO = n − κ = 2. The state equations of the system are now ⎡ ⎤ ⎡ ⎤ ⎡ ⎤⎡ ⎤ x˙ 1 (t) −5 −2 2 x1 (t) 0 ⎣ x˙ 2 (t) ⎦ = ⎣ 2 0 −2 ⎦⎣ x2 (t) ⎦ + ⎣ −1 ⎦ u(t) x˙ 3 (t) −2 −1 −1 x3 (t) 0 y(t) = 1 0 −2 x(t) 1 0 −1 1 Cm x(t) = x(t) ym (t) = 2 1 0 −2 Cm The state feedback is designed to obtain eigenvalues of the closed loop at s = −5, and the (two) eigenvalues of the observer are also located at s = −5. The feedback vector k T = 14 −9 −18 yields det(sI −A+bk T ) = (s+5)3 and m = 62.5 assures vanishing tracking errors y(∞) − r(∞) for constant reference signals (see also Examples A.3 through A.5). Choosing the matrices −5 0 8 12 F = and L = 0 −5 6 12 the solution of (A.17) is
T = ⎡
5 −1 −7 4 −1 −7
⎤ ⎡ ⎤ 0 1 −1 and (A.18) leads to Ψ2 = ⎣ 3.5 ⎦ and Θ = ⎣ 0.5 −1.5 ⎦ and with (A.20) −0.5 0.5 −0.5 ⎡ ⎤ 0 0 one obtains Ψ = ⎣ 0 3.5 ⎦. Thus the time domain parameterization of 0 −0.5 the observer-based compensator is complete. Computing its transfer vector GTCy (s), one obtains GTCy (s) =
1 ( 55s + 275) s2 + 19s + 70
(−22.5s2 − 117s − 22.5)
which shows that the second transfer function GCy2 (s) =−
u ¯(s) is proper y¯m2 (s)
and that all its numerator coefficients have a negative sign. The frequency domain design starts from the transfer functions G(s) = and
2 s3 + 6s2 + 11s + 6
A.4 Observer-based Control in the Time and in the Frequency Domains
Gm (s) =
263
1 s2 + 7s + 10 2 s3 + 6s2 + 11s + 6
of the system. Due to the desired pole locations, the characteristic polynomials ˜ D(s) of the controlled plant and Δ(s) of the state observer are ˜ D(s) = s3 + 15s2 + 75s + 125 and Δ(s) = s2 + 10s + 25 Consequently, the system of linear equations (A.46) has the form ⎡
⎡
1 ⎢ 6 ⎢ ⎢ 11 ⎢ ⎢ 6 ⎢ ⎣ 0 0
0 1 6 11 6 0
0 0 1 6 11 6
0 1 7 10 0 0
0 0 1 7 10 0
0 0 0 1 7 10
0 0 0 2 0 0
0 0 0 0 2 0
⎤ p2 ⎤⎢ p1 ⎥ ⎡ ⎤ ⎡ ⎤ ⎥ 0 ⎢ 1 0 0 1 ⎢ p0 ⎥ ⎢ ⎥ ⎢ ⎥⎡ ⎤ ⎢ 25 ⎥ 0⎥ ⎥⎢ l21 ⎥ ⎢ 15 1 0 ⎥ 1 ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ 250 ⎥ 0 ⎥⎢ 1 ⎥ ⎢ 75 15 1 ⎥ ⎥ ⎢ ⎥ ⎣ ⎦ l 10 = = ⎢ 1⎥ ⎢ ⎥ ⎢ 1250 ⎥ 0⎥ ⎥⎢ l01 ⎥ ⎢ 125 75 15 ⎥ 25 ⎢ ⎥ ⎥ ⎣ 0 125 75 ⎦ ⎣ 3125 ⎦ 0 ⎦⎢ ⎢ l2 ⎥ 2 ⎥ 2 ⎢ 0 0 125 3125 ⎣ l2 ⎦ 1
l02
It is underdetermined (six equations and nine unknowns), so that three free parameters exist. To obtain the same structure of the compensator as in the time domain, l21 = 0 must be assigned, since the first measurement ym1 (t) is not explicitly used when computing the state estimate x ˆ(t). Choosing p0 and l22 as the remaining free parameters, a unique solution can be obtained for each pair p0 and l22 from ⎡
1 ⎢ 6 ⎢ ⎢ 11 ⎢ ⎢ 6 ⎢ ⎣ 0 0
0 1 6 11 6 0
0 0 1 7 10 0
0 0 0 1 7 10
0 0 0 0 2 0
⎤⎡ ⎤ ⎡ ⎤ 0 p2 1 ⎢p ⎥ ⎢ ⎥ 0⎥ ⎥⎢ 11 ⎥ ⎢ 25 ⎥ ⎢ ⎢ ⎥ ⎥ ⎥ 0 ⎥⎢ l1 ⎥ ⎢ 250 − p0 ⎥ = 1⎥ 2⎥ ⎥ ⎢ ⎢ 0 ⎥⎢ l0 ⎥ ⎢ 1250 − 6p0 − 2l2 ⎥ ⎦ 0 ⎦⎣ l12 ⎦ ⎣ 3125 − 11p0 2 2 l0 3125 − 6p0
Exactly the same compensator as by the time domain design is obtained for p0 = 70 and l22 = −22.5. With m = 62.5 the numerator of the reference transfer function of the compensator has the form NCr (s) = 62.5(s2 + 10s + 25) ˜ Since the reference behaviour (A.28) only depends on the polynomials D(s) 2 and N (s), it is not influenced by the free parameters p0 and l2 . The actual choice of p0 and l22 , however, affects the disturbance rejecting properties of the controller. Assuming again that a disturbance step d(t) = 1(t) acts at the input of the system, the above compensator yields the disturbance transient shown by a solid line in Figure A.8.
264
A Design of Observer-based Controllers 0.05
0.04
Time domain design Output y(t)
0.03
Frequency domain design 0.02
0.01
0
−0.01
0
1
2
3
4
5
6
7
8
9
10
Time Figure A.8. Transients due to an input step disturbance
Choosing the free parameters as p0 = 0 and l22 = 0 instead, the solution to the above system of linear equations leads to a transfer behaviour of the compensator which is characterized by GTCy (s) =
1 (125s + 160) s(s + 19)
Now the second transfer function GCy2 (s) = −
(320.5s + 762.5)
u ¯(s) is also strictly proper y¯m2 (s)
with positive numerator coefficients this time. The denominator of the compensator contains a zero at s = 0, i.e., there is integral controller action. This gives a vanishing offset for disturbance step inputs as shown by a broken line in Figure A.8. An integral controller action could, of course, also be obtained in the time domain by an appropriate choice of the design parameters F and L such that det(F − T bk T Θ) = 0 results. This is, for example, the case for the pair −7 −2 6 0.63701421352353 F = and L = 2 −3 2 8
However, it is obviously much easier to chose p0 = 0 in the frequency domain approach than to search for the above pair of matrices F and L. It would be even harder to find a pair F and L giving both integral action and a strictly proper transfer function GCy2 (s) of the compensator.
A.5 Incorporation of Disturbance Models
265
A.5 Incorporation of Disturbance Models The observer-based controller discussed in Section A.4 does not provide, in general, a complete rejection of constantly acting disturbances. It is known from classical control theory that integral action gives vanishing tracking errors y(∞) − r(∞) for constant disturbances, and it is, of course, also possible to incorporate integral action in observer-based controllers. Moreover, vanishing tracking errors y(∞) − r(∞) can also be obtained for more general forms of disturbance signals, provided that they can be modelled as output signals of a homogenous dynamical process of the order q v˙ d (t) = Sd vd (t);
vd (0) = vd0
d(t) = Hvd (t)
(A.52)
Within this framework, constant or step-like disturbances are modelled by a dynamical process (A.52) of the order q = 1 with Sd = 0 and H = 1. When starting from an initial condition vd0 , the resulting output of this process is obviously the step-like signal d(t) = vd0 1(t). In the frequency domain the characteristic polynomial Ddis (s) = ˆ det(sI − Sd ) = sq + ψq−1 sq−1 + · · · + ψ1 s + ψ0
(A.53)
of the disturbance process (A.52) is the crucial entity, i.e., step-like disturbance signals are characterized by a polynomial Ddis (s) = s. Sinusoidal disturbances d(t) = dS sin(ωd t + ϕd )1(t) can, for example, be modelled in a process (A.52) with q = 2, 0 1 and Sd = −ωd2 0 H= 1 0 or by the corresponding characteristic polynomial Ddis (s) = s2 + ωd2 . Analogously it is possible to consider, for example, model processes for ramp-shaped (Ddis (s) = s2 ), parabola-shaped (Ddis (s) = s3 ), or exponentially increasing (Ddis (s) = s − α) disturbance signals. The following discussions relate to the problem of disturbance attenuation. Similar signal processes also play a central role in the design of a tracking control for such signal forms [13]. There are two different methods for the rejection of disturbance signals. Johnson’s approach uses a disturbance observer and a subsequent injection of the observed states of the signal model for disturbance attenuation. Davison’s approach is based on a model of the signal process that is driven by the tracking error. Stabilization of the system and the appending signal model gives robust disturbance rejection of all signal forms modelled.
266
A Design of Observer-based Controllers
A.5.1 Johnson’s Disturbance Observer in the Time and in the Frequency Domains We consider linear systems of the order n with one control input u(t), p ≥ 1 measurements ym (t) and a (not necessarily measurable) controlled output y(t). To avoid unnecessarily complicated notation, it is assumed that there is only one disturbance signal d(t). The case of several disturbance signals can, of course, also be handled [38, 39]. The state equations of the system are x(t) ˙ = Ax(t) + bu(t) + bd d(t) y(t) = cT x(t) + dd d(t) ym (t) = Cm x(t) + dmd d(t)
(A.54)
The pair (A, b) is assumed to be completely controllable and the pair (A, Cm ) completely observable. In view of tracking constant reference signals r(t), the numerator polynomial N (s) of the transfer function
N (s) = cT (sI − A)−1 b D(s)
must not contain a zero at s = 0. It is further assumed that the disturbances acting on the system can be modelled as output signals of a dynamical process of the order q v˙ d (t) = Sd vd (t) with vd (0) = vd0 unknown completely observable d(t) = Hvd (t) with (Sd , H)
(A.55)
If the states x(t) of the system and vd (t) of the disturbance process are directly measurable, they can be used in a state feedback u ˜(t) = k T x(t) + kvT vd (t)
(A.56)
u(t) = −˜ u(t) + mr(t)
(A.57)
so that the control signal
shifts the eigenvalues of the controlled system (i.e., the zeros of the characteristic polynomial det(sI − A + bk T )) to desired locations, gives vanishing tracking errors y(∞) − r(∞), and assures an asymptotic rejection of the modelled disturbance. Asymptotic disturbance rejection is only feasible when the polynomials N (s) and Ddis (s) do not contain common zeros. Otherwise, signals required to counteract the disturbances cannot be transferred from the input u to the output y. By substituting the control signal (A.57) in (A.54) one obtains A − bk T bd H − bkvT x(t) bm x(t) ˙ = + r(t) vd (t) 0 Sd 0 v˙ d (t) (A.58) x(t) T dd H c y(t) = vd (t)
A.5 Incorporation of Disturbance Models
267
An asymptotic rejection of the disturbance results if the state vd (t) of the disturbance process is made unobservable in the controlled output y(t), which is the case if the rank of the observability matrix for the pair T A − bk T bd H − bkvT c d H , d 0 Sd coincides with the rank of the observability matrix for the pair (A − bk T , cT ). The compensating vector kvT assuring the observability defect can be computed by introducing the transformation x(t) In Td ζ(t) (A.59) = vd (t) 0 Iq in (A.58) such that the transformed T ˙ζ(t) = A − bk 0 T y(t) = c
system becomes 0 bm ζ(t) + r(t) Sd 0 0 ζ(t)
(A.60)
The state equations (A.60) immediately show that the disturbance model is no longer observable in the controlled output. It is straightforward to show that the special structure of (A.60) results if the n × q-matrix Td and the vector kvT are solutions of (A − bk T )Td − Td Sd − bkvT + bd H = 0
(A.61)
cT Td + dd H = 0
(A.62)
and Using the Kronecker product and the vec-operator [77], the two relations (A.61) and (A.62) can be transformed into a system of linear equations. Designing kvT such that the states of the disturbance process are not observable in y(t) is only one design guideline. For more general solutions to the problem of disturbance rejection see, for example, [38] and [39]. Remark A.4. The disturbance rejecting vector kvT depends on the actual parameters A, b, bd , cT , dd and H of the system. The desired disturbance rejection only results if the model of the system used for controller design exactly matches the system behaviour and if the disturbances act at exactly the locations assumed. For modified properties of the system, either due to modelling errors or changing operating conditions, the desired disturbance behaviour no longer results, i.e., Johnson’s approach, which uses a disturbance observer is not robust to plant parameter variations and changing input locations. In order to realize the state feedback (A.56), an estimate of the state of the augmented system
268
A Design of Observer-based Controllers
A x(t) ˙ = v˙ d (t) 0 ym (t) = Cm
b x(t) + u(t) 0 vd (t) x(t) dmd H vd (t)
bd H Sd
(A.63)
must be obtained. To allow a more compact representation, (A.63) will also be denoted by x˙ au (t) = Aau xau (t) + bau u(t) (A.64) ym (t) = Cmau xau (t) The design of the state (plus disturbance) observer for the augmented system (A.64) follows the lines presented in Section A.3 (see also Example A.8). The order of the observer is nΔ = nO + q, where nO = n − κ with 0 ≤ κ ≤ p is the order of the (reduced-order) observer for the state x(t) of the system, and q is the order of the disturbance process. Replacing x(t) and vd (t) in (A.56) and (A.57) by the observed quantities x ˆ(t) and vˆd (t), the modelled disturbances are attenuated in y(t). A prerequisite for the observer design is the complete observability of the pair (Aau , Cmau ). Since the system (A.54) is supposed to be observable, the pair (Aau , Cmau ) is completely observable if, additionally, the states of the signal process are observable in the measured output ym (t). In the frequency domain, this additional observability condition can be checked by inspection of the zeros of the transfer functions between the disturbance input d(t) and the measured outputs ymi (t), i = 1, 2, . . ., p. If any zero of Ddis (s) is also a zero of all these transfer functions, there is an observability defect. The following simple example shows that the observability matrix of the pair (Aau , Cmau ) is not necessarily of full rank, even though the system itself is observable and the disturbance directly enters the output ym (t). Example A.7. Consider the system of the order one x(t) ˙ = u(t) = ˆ Ax(t) + bu(t) + bd d(t) ym (t) = x(t) + d(t) = ˆ cm x(t) + dmd d(t) This system is a pure integrator with A = 0, b = 1, bd = 0, cm = 1 and dmd = 1 with a disturbance directly acting at its output ym (t). Assume that the disturbance can be modelled by v˙ d (t) = 0 , d(t) = vd (t)
vd (0) = vd0
i.e., it changes step-like. When inspecting the state equations x(t) ˙ 0 0 x(t) 1 = + u(t) = Aau xau (t) + bau u(t) v˙ d (t) 0 0 vd (t) 0 x(t) ym (t) = 1 1 = cTmau xau (t) vd (t)
A.5 Incorporation of Disturbance Models
269
of the augmented system (A.64), the rank of the corresponding observability matrix T cmau 1 1 Qau = T = 0 0 cmau Aau is only one. Consequently, the augmented system is not completely observable. Inspecting, on the other hand, the transfer behaviour between the distur¯ with bance d and the measurement ym , one obtains y¯m (s) = Gmd (s)d(s) Gmd (s) = cm (sI − A)−1 bd + dmd =
s s
A zero in the transfer function between the disturbance d and the measurement ym coincides with a zero of the characteristic polynomial Ddis (s) = s. Consequently, the frequency domain condition for the design of a disturbance observer is also violated. Given an output signal ym (t), it is not possible to decide which part of it is due to the state of the system and which part can be attributed to the disturbance. In the frequency domain, the system (A.54) is characterized by its transfer behaviour ¯ u(s) + Gmd (s)d(s) and y¯m (s) = Gm (s)¯ (A.65) ¯ y¯(s) = G(s)¯ u(s) + Gd (s)d(s) The polynomials in the transfer functions G(s) and Gd (s) are denoted by G(s) =
N (s) D(s)
and Gd (s) =
Nd (s) D(s)
and the polynomials in the transfer vectors Gm (s) and Gmd (s) by ⎡ ⎡ ⎤ ⎤ Nm1 (s) Nmd1 (s) ⎢ ⎢ ⎥ 1 ⎥ 1 .. .. and Gmd (s) = ⎣ Gm (s) = ⎣ ⎦ ⎦ . . D(s) D(s) Nmp (s) Nmdp (s) The inputs to the state-plus-disturbance observer of the order nΔ = nO +q are the manipulated input u(t), the vector ym (t) of measurements, and the reference signal r(t). For simplicity, the representation of Figure A.5 is chosen for the observer-based controller in the frequency domain. The transfer behaviour of the controller is characterized by u ¯(s) = −GTCy (s)¯ ym (s) + GCr (s)¯ r (s)
(A.66)
and the polynomials in the transfer vector GTCy (s) and in the transfer function GCr (s) are denoted by GTCy (s) =
1 NCy1 (s) · · · NCyp (s) DC (s)
and GCr (s) =
NCr (s) DC (s)
270
A Design of Observer-based Controllers
Figure A.9 shows a block diagram of the control system considered. In the following it is assumed that the controlled output is not measurable, i.e., y(t) is not contained in the measurement vector ym (t). If y(t) is measurable, one should use the approach discussed in Section A.5.2. The transfer behaviour of the closed loop between the disturbance input d and the controlled output y is given by p NCyk (s) [Nd (s)Nmk (s) − Nmdk (s)N (s)] Nd (s)DC (s)D(s) + y¯(s) k=1 p ¯ = d(s) NCyk (s)Nmk (s) D(s) DC (s)D(s) + k=1
(A.67) The denominator of the transfer function (A.67) is of the degree nΔ + 2n, though the closed loop only consists of the plant having the order n and the compensator having the order nΔ . Consequently, the polynomials in square brackets in the numerator of (A.67) either vanish or they contain the polynomial D(s) as a factor. Applying the polynomial divisions Nkdiv (s) = [Nd (s)Nmk (s) − Nmdk (s)N (s)] /D(s),
k = 1, 2, . . . , p
(A.68)
the disturbance transfer function (A.67) becomes
Nd (s) D(s)
d
Nmd (s)
1 D(s)
N (s) D(s) r
NCr (s) DC (s)
u Nm (s)
1 D(s)
y
ym
1 N T (s) DC (s) Cy
Figure A.9. Closed loop with reference and disturbance input (frequency domain representation)
A.5 Incorporation of Disturbance Models
y¯(s) ¯ = d(s)
Nd (s)DC (s) + DC (s)D(s) +
p k=1 p
271
NCyk (s)Nkdiv (s) (A.69) NCyk (s)Nmk (s)
k=1
The frequency domain design of the controller is based on the polynomial representation of the system and the compensator. The transfer functions of the system are represented by the polynomials D(s) = sn + an−1 sn−1 + · · · + a1 s + a0
(A.70)
and Nmk (s) = ckn−1 sn−1 + · · · + ck1 s + ck0 ,
k = 1, 2, . . . , p
(A.71)
The eigenvalues of the controlled system are the zeros of the characteristic polynomial ˜ ˜n−1 sn−1 + · · · + a ˜1 s + a ˜0 (A.72) D(s) = sn + a The state-plus-disturbance observer is of the order nΔ with the characteristic polynomial (A.73) Δ(s) = snΔ + δnΔ −1 snΔ −1 + · · · + δ1 s + δ0 The observer-based controller (see the structure in Figure A.9) is also of the order nΔ , and the denominator polynomials of its transfer functions are denoted by (A.74) DC (s) = pnΔ snΔ + · · · + p1 s + p0 As to how the numerator polynomials of the compensator have to be assigned to reflect the fact that some of the transfer functions GCyk (s) are proper and the others strictly proper, the arguments of Section A.4 apply. In order to allow a general solution, all numerator polynomials NCyk (s), k = 1, 2, . . . , p are chosen so that the GCyk (s) are proper, i.e., NCyk (s) = lnk Δ snΔ + · · · + l1k s + l0k , k = 1, 2, . . . , p
(A.75)
An observer-based controller allows to assign the eigenvalues of the closed ˜ loop arbitrarily, i.e., the characteristic polynomial CP (s) = Δ(s)D(s) of the closed loop can be chosen at will. ym (s) assigns the deA controller with transfer behaviour u¯(s) = −GTCy (s)¯ sired characteristic polynomial CP (s) provided that the polynomial equation DC (s)D(s) +
p
˜ NCyk (s)Nmk (s) = Δ(s)D(s)
(A.76)
k=1
is satisfied. It was shown in Section A.4 how to convert the comparison of coefficients for the solution of this polynomial equation into a system of linear equations.
272
A Design of Observer-based Controllers
The controller, however, must not only assign the eigenvalues of the closed loop, but it also has to assure the asymptotic rejection of the disturbance. This is the case if the numerator polynomial in the disturbance transfer function (A.69) contains the characteristic polynomial Ddis (s) (see (A.53)) of the assumed disturbance process as a factor. This is the case if the condition Nd (s)DC (s) +
p
NCyk (s)Nkdiv (s) = NRem (s)Ddis (s)
(A.77)
k=1
is satisfied. If the disturbance directly acts on the controlled output (i.e., dd = 0 in (A.54)), the polynomial Nd (s) is of the degree n and, consequently, the polynomial on the left-hand side of (A.77) is of the degree (n + nΔ ). If it contains the polynomial Ddis (s) = sq + ψq−1 sq−1 + · · · + ψ1 s + ψ0
(A.78)
as a factor, the remaining polynomial NRem (s) on the right-hand side of (A.77) is of degree nRem with nRem = n + nΔ − q (A.79) and it is represented by NRem (s) = RnRem snRem + · · · + R1 s + R0
(A.80)
So far the coefficients Ri are unknown. The polynomial on the left-hand side of (A.77) contains the polynomial Ddis (s) as a factor if the condition Nd (s)DC (s) +
p
NCyk (s)Nkdiv (s) − NRem (s)Ddis (s) = 0
(A.81)
k=1
is satisfied. The polynomial coefficients of Nd (s) = cdn sn + · · · + cd1 s + cd0
(A.82)
and Nkdiv (s) = αkn sn + · · · + αk1 s + αk0 ,
k = 1, 2, . . . , p
(A.83)
have to be defined before the comparison of coefficients for the simultaneous solution of both polynomial equations (A.76) and (A.81) can be formulated. The system of linear equations representing this comparison of coefficients has the form (A.84) Kh h = BRS The {(p + 1)(nΔ + 1) + nRem + 1}-vector h contains the unknown coefficients of the polynomials, namely T (A.85) h = pnΔ · · · p1 p0 ln1 Δ · · · l11 l01 · · · lnp Δ · · · l1p l0p RnRem · · · R1 R0
A.5 Incorporation of Disturbance Models
273
The (known) 2(nΔ + n + 1)-vector BRS on the right-hand side of (A.84) has the form ⎤ ⎡ ˜ Aδ ⎢ 0 ⎥ ⎢ ⎥ (A.86) BRS = ⎢ . ⎥ ⎣ .. ⎦ 0 with the (n + nΔ + 1) × (nΔ + 1)-coefficient matrix ⎡ ⎤ 1 0 ··· 0 ⎢a ⎥ ⎢ ˜n−1 1 · · · 0 ⎥ ⎥ ⎢ .. . . ⎢ . a ˜n−1 . . .. ⎥ ⎥ ⎢ ⎥ ⎢ .. . . A˜ = ⎢ a . 1 ⎥ . ⎥ ⎢ ˜0 ⎢ 0 a ˜n−1 ⎥ a ˜0 ⎥ ⎢ ⎢ . .. . . . ⎥ ⎣ .. . .. ⎦ . 0 and the (nΔ + 1)-vector
··· a ˜0
0 ⎡
(A.87)
1
⎤
⎢ δnΔ −1 ⎥ ⎥ ⎢ δ=⎢ . ⎥ ⎣ .. ⎦ δ0
(A.88)
The (known) 2(n + nΔ + 1) × {(p + 1)(nΔ + 1) + nRem + 1}-coefficient matrix ⎡ ⎢ 1 ⎢ ⎢ an−1 ⎢ ⎢ .. ⎢ . ⎢ ⎢ ⎢ a0 ⎢ ⎢ . ⎢ .. ⎢ ⎢ ⎢ 0 ⎢ Kh = ⎢ ⎢ d ⎢ cn ⎢ ⎢ .. ⎢ . ⎢ ⎢ .. ⎢ . ⎢ ⎢ ⎢ cd ⎢ 0 ⎢ . ⎢ .. ⎣ 0
··· .. . .. .
0 .. . 1
0
···
c1n−1 .. .
..
.
0 .. . 0
an−1 c10 c1n−1 . .. . . . .. . .. . .. . · · · a0 ··· .. .
0 .. .
cdn .. . .. .. . . · · · cd0
0
· · · c10
α1n · · · 0 .. . . . . .. . .. . α1n .. α10 . .. . . .. . . . 0
· · · α10
.. . 0 .. p . cn−1 .. .. . . .. p . c0 .. .. . . .. . 0 .. p . αn .. .. . . .. .. . . .. p . α0 .. .. . . .. . 0
···
cpn−1 . .. . ..
0 .. . .. . .. . .. .
· · · cp0
0
..
.
··· .. .
0 .. . 0
0 .. .
αpn .. . .. .. . . · · · αp0
−1 −ψq−1 .. . −ψ0 .. . 0
···
⎤ 0 .. . .. . .. . .. .
⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ··· 0 ⎥ ⎥ ⎥ ⎥ ··· 0 ⎥ ⎥ .. ⎥ .. . . ⎥ ⎥ ⎥ .. . −1 ⎥ ⎥ ⎥ −ψq−1 ⎥ ⎥ .. ⎥ .. . . ⎥ ⎦ · · · −ψ0 (A.89)
274
A Design of Observer-based Controllers
contains the known polynomial coefficients of the frequency domain descriptions of the system and the signal process. The system of linear equations (A.84) provides 2(n + nΔ + 1) conditions for the determination of {(p + 1)(nΔ + 1) + nRem + 1} unknowns in the polynomials DC (s), NCyk (s) , k = 1, 2, . . . , p and in NRem (s). It has a solution for arbitrary right-hand sides (i.e., for arbitrary eigenvalues of the closed loop) if it is not over-determined. If Kh is square and has full rank, there is a unique solution. The lowest order of the state observer considered in the time domain approach is nO = n − p (observers with completely reduced order). For this order of the observer and for nRem as in (A.79), the difference ϑ between the number of rows and columns in Kh is ϑ = (n − p + q)(p − 1). Because p ≥ 1 and p ≤ n one obtains ϑ ≥ 0, so that in (A.84) the number of equations never exceeds the number of unknown parameters. When designing a controller on the basis of a state observer of the order nO ≥ n − p there are p(nO + 1) + q(p − 1) − n
(A.90)
free parameters in (A.84). The matrix Kh has full row rank if the prerequisites for the design of a disturbance rejecting controller are met, namely if: • •
•
The system is completely controllable and observable. The equivalent frequency domain condition is the absence of a common zero in D(s) and in all polynomials Nmk (s) , k = 1, 2, . . . , p, It is possible to transfer all signals from the input u to the output y necessary to counteract the disturbance, i.e., the numerator polynomial N (s) and the characteristic polynomial Ddis (s) of the disturbance process have no common zeros, The states of the disturbance process are observable in the measurements ym (t). This is the case, if there is no common zero in all polynomials Nmk (s) , k = 1, 2, . . . , p, which coincides with a zero of Ddis (s).
The frequency domain design solving Johnson’s disturbance observer approach can also be formulated if the controlled output is measurable. If this is the case, however, it is suggested to use Davison’s technique instead (see Section A.5.2), because it gives a robust rejection of the disturbances. If the reference transfer behaviour of the compensator is characterized by (A.51) it assures vanishing tracking errors for constant reference signals. Example A.8. Controller design in the time domain for a system of the order three with two measurements, a non-measurable controlled output, and a sinusoidal disturbance input The system of the order n = 3, with one input u(t), p = 2 measurements ym (t), and a non-measurable controlled output y(t) is subject to a sinusoidal disturbance d(t) = dS sin(t + ϕd )1(t). Consequently, the order of the disturbance process is q = 2. The state equations of the system are characterized
A.5 Incorporation of Disturbance Models
by
⎡
⎤ 0 1 0 A = ⎣ 0 0 1⎦, b= −1 −3 −3 dd = cT = 3 1 0 , 16 8 1 , dmd = Cm = 0 1 0
275
⎡ ⎤ 0 bd = ⎣ 1 ⎦ 0
⎡ ⎤ 0 ⎣0⎦, 1 0 0 0
The disturbance signal can be modelled in a signal process (A.55) with 0 1 Sd = and H = 1 0 −1 0 x(t) is to shift the One purpose of the state feedback u(t) = − k T kvT vd (t) eigenvalues of the controlled plant to s = −3. This is achieved by the feedback vector k T = 26 24 6 . Vanishing tracking errors for constant reference inputs are assured by m according to (A.9), i.e., by m=
cT (−A
1 =9 + bk T )−1 b
To obtain the desired rejection of the sinusoidal disturbance in y(t), the vector kvT = kv1 kv2 must ensure an observability defect of the order q = 2 in the controlled output y(t). Introducing the above k T and kvT in (A.58) one obtains ⎡ ⎤ 0 1 0 0 0 ⎢ 0 0 1 1 0 ⎥ ⎢ ⎥ A − bk T bd H − bkvT ∗ ⎢ A = = ⎢ −27 −27 −9 −kv1 −kv2 ⎥ ⎥ 0 Sd ⎣ 0 0 0 0 1 ⎦ 0 0 0 −1 0 and
c∗T = cT dd H = 3
1
0
0
0
The state of the controlled system is not completely observable in y(t), as the rank of the observability matrix for the pair (A − bk T , cT ) is two. To obtain an asymptotic compensation of the sinusoidal disturbance in y(t), the components in kvT have to be tuned so that the rank of the observability matrix Q∗ for the pair (A∗ , c∗T ) is also two. The matrix Q∗ is given by ⎤ ⎡ ∗T ⎤ ⎡ c 3 1 0 0 0 ⎥ ⎢ c∗T A∗ ⎥ ⎢ 0 3 1 1 0 ⎥ ⎢ ∗T ∗2 ⎥ ⎢ ⎥=⎢ −27 −27 −6 ⎥ c A 1 − k 3 − k Q∗=⎢ v1 v2 ⎥ ⎢ ∗T ∗3 ⎥ ⎢ ⎣ c A ⎦ ⎣ 162 135 27 −28 + 6kv1 + kv2 3 − kv1 + 6kv2 ⎦ c∗T A∗4 −729 −567 −108 132 − 26kv1 − 6kv2 −28 + 6kv1 − 26kv2 Here it is relatively easy to see that by choosing
276
A Design of Observer-based Controllers
kvT = kv1 kv2 = 9
1
one obtains rank(Q∗ ) = 2. As an alternative approach, one can solve the two equations (A.61) and (A.62) instead. This gives the above kvT and ⎡ ⎤ 0 0 Td = ⎣ 0 0 ⎦ −1 0 Neither x(t) nor vd (t) are directly measurable. Therefore, one needs an ob T server for the state xau (t) = xT (t) vdT (t) of the augmented system (A.64). Using an observer of the minimal order nO = n − p = 1 for the state of the system, the observer for the augmented state xau (t) is of the order nΔ = nO + q = 3. The state equations of the observer are z(t) ˙ = F z(t) + Lym (t) + T bau u(t)
(A.91)
In the steady state this yields z(t) = T xau (t)
(A.92)
T Aau − F T = LCmau
(A.93)
if the relation is satisfied. The matrices of the descriptions (A.63) and (A.64) of the augmented system are ⎡ ⎤ ⎡ ⎤ 0 0 1 0 0 0 ⎢0⎥ ⎢ 0 0 1 1 0⎥ ⎢ ⎥ ⎢ ⎥ A bd H b ⎥ =⎢ =⎢ Aau = −1 −3 −3 0 0 ⎥ , bau = ⎢ 1 ⎥ and ⎢ ⎥ 0 0 Sd ⎣0⎦ ⎣ 0 0 0 0 1⎦ 0 0 0 0 −1 0 16 8 1 0 0 Cmau = Cm dmd H = 0 1 0 0 0 Since the pair [Aau , Cmau ] is completely observable, an observer of the order three for the reconstruction of xau (t) according to
−1 x ˆ(t) Θx Ψx Cmau ym (t) = = y (t) + z(t) (A.94) x ˆau (t) = vˆd (t) z(t) T Ψv m Θv exists. By choosing the matrices ⎡ ⎤ −3 1 0 F = ⎣ 0 −3 1 ⎦ 0 0 −3
⎡
⎤ −4 −4 and L = ⎣ −4 4 ⎦ 4 −4
A.5 Incorporation of Disturbance Models
277
(i.e., the eigenvalues of the observer are also located at s = −3), (A.93) is solved by ⎡ ⎤ −25.25 −2.5 1.75 0.838 −0.266 −2 1.5 0.28 0.04 ⎦ T = ⎣ −13.5 22 4 2 −1.2 0.4 so that the state estimate (A.94) is parameterized by the matrices ⎡ ⎡ ⎤ ⎤ 0.472 −3.712 −0.16 0.016 −0.108 1⎣ 1 ⎦ , Θx = ⎣ 0 0 9 0 0 ⎦ Ψx = 9 9 1.448 −12.608 2.56 −0.256 1.728 and Ψv =
1 13.82 −50.72 , 9 8.26 25.04
Θv =
1 −14.6 23.96 −12.105 9 −47.8 72.28 −16.515
ˆ(t) − kvT vˆ(t) + mr(t) the state equations of the With (A.91) and u(t) = −k T x observer-based controller have the form ⎤ ⎡ ⎤ ⎡ ⎡ ⎡ ⎤ ⎤⎡ ⎤ 1.75 z˙1 (t) −3 1 0 z1 (t) −4 −4 ⎣ z˙2 (t) ⎦ = ⎣ 0 −3 1 ⎦⎣ z2 (t) ⎦ + ⎣ −4 4 ⎦ ym1 (t) + ⎣ 1.5 ⎦ u(t) ym2 (t) z˙3 (t) 2 0 0 −3 z3 (t) ⎤ 4 −4 ⎡ (t) z 1 y (t) + 9r(t) u(t) = − 91 −168 286.8 −117.9 ⎣ z2 (t) ⎦ − 19 153.6 −387.6 m1 ym2 (t) z3 (t) This controller shifts all eigenvalues of the closed loop to s = −3, and it assures vanishing tracking errors y(∞) − r(∞) for constant reference inputs r(t) and in spite of the sinusoidal disturbance input d(t) = dS sin(t + ϕd )1(t). Figure A.10 shows the effects of a disturbance with ds = 1 and ϕd = 0. The dashed line represents the reaction of y(t) in the open loop (scaled down by a factor 0.1) and the solid line depicts the response of the closed loop to this disturbance. After a transient period the effect of the sinusoidal disturbance is completely compensated. Example A.9. Frequency domain design of the controller for the system of Example A.8. Discussion of the influence of the free parameters In the frequency domain, the system is represented by its transfer behaviour ¯ u(s) + Gmd (s)d(s) y¯m (s) = Gm (s)¯
¯ and y¯(s) = G(s)¯ u(s) + Gd (s)d(s)
where the transfer vectors Gm (s) and Gmd (s) have the forms 1 2 c2 s + c11 s + c10 Nm1 (s) 1 1 = 2 2 = Gm (s) = c2 s + c21 s + c20 s3 + a2 s2 + a1 s + a0 Nm2 (s) D(s) 2 1 s + 8s + 16 = s s3 + 3s2 + 3s + 1
278
A Design of Observer-based Controllers 0.5 0.4
0.1y without control
0.3
Output y(t)
0.2 0.1 0
y with control
−0.1 −0.2 −0.3 −0.4
0
1
2
3
4
5
6
7
8
9
10
Time Figure A.10. Open loop and closed loop responses to a sinusoidal disturbance
and
2 1 1 8s + 37s + 47 Nmd1 (s) = Gmd (s) = 3 2 Nmd2 (s) D(s) s2 + 3s s + 3s + 3s + 1
and the transfer functions G(s) and Gd (s) are G(s) = Gd (s) =
s+3 N (s) = 3 D(s) s + 3s2 + 3s + 1
and
cd s3 + cd2 s2 + cd1 s + cd0 Nd (s) s2 + 6s + 9 = 33 = D(s) s + a 2 s2 + a 1 s + a 0 s3 + 3s2 + 3s + 1
The disturbance signal is characterized by the polynomial Ddis (s) = s2 + ψ1 s + ψ0 = s2 + 1 and the observer-based controller is required to place the poles of the con˜ trolled system at s = −3, i.e., the desired characteristic polynomial D(s) is ˜ D(s) = s3 + a ˜ 2 s2 + a ˜1 s + a ˜0 = s3 + 9s2 + 27s + 27 The eigenvalues of the state-plus-disturbance observer of the order nΔ = 3 are also located at s = −3, so that its characteristic polynomial is Δ(s) = s3 + δ2 s2 + δ1 s + δ0 = s3 + 9s2 + 27s + 27
A.5 Incorporation of Disturbance Models
279
Thus the order of the controller is three and its numerator and denominator polynomials have the form DC (s) = p3 s3 + p2 s2 + p1 s + p0 NCy1 (s) = l31 s3 + l21 s2 + l11 s + l01 NCy2 (s) =
l32 s3
+
l22 s2
+
l12 s
+
and
l02
The numerators in (A.69) depend on the polynomials Nkdiv (s), k = 1, 2 defined in (A.68). With the given polynomials one obtains (see also (A.83)) N1div (s) = α13 s3 + α12 s2 + α11 s + α10 = s + 3 and N2div (s) = α23 s3 + α22 s2 + α21 s + α20 = 0 Before (A.84) can be written down, the degree nRem of the unknown polynomial (A.80) must be known. With nRem = n + nΔ − q = 4 one obtains NRem (s) = R4 s4 + R3 s3 + R2 s2 + R1 s + R0 Now all known and unknown coefficients are defined, so that the system of linear equations (A.84) (giving the simultaneous solution of the polynomial equations (A.76) and (A.81)) has the form ⎤ ⎡ p3 ⎤⎢ p2 ⎥ ⎡ ⎥ ⎡ 1 ⎤ 1 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 ⎢ ⎢ p1 ⎥ ⎥ ⎢ 18 ⎥ ⎢ 3 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 ⎥⎢ ⎥⎢ p0 ⎥ ⎢ ⎥ ⎥ ⎢ ⎢ 135 ⎥ ⎢ 3 3 1 0 8 1 0 0 1 0 0 0 0 0 0 0 0 ⎥⎢ 1 ⎥ ⎢ ⎥⎢ ⎢ ⎥ l 3 ⎥ ⎢ 540 ⎥ ⎢ 1 3 3 1 16 8 1 0 0 1 0 0 0 0 0 0 0 ⎥⎢ 1 ⎥ ⎢ ⎥⎢ ⎢ ⎥ l 2 ⎥ ⎢ 1215 ⎥ ⎢ 0 1 3 3 0 16 8 1 0 0 1 0 0 0 0 0 0 ⎥⎢ 1 ⎥ ⎢ ⎥⎢ ⎢ ⎥ l 1 ⎥ ⎢ 1458 ⎥ ⎢ 0 0 1 3 0 0 16 8 0 0 0 1 0 0 0 0 0 ⎥⎢ 1 ⎥ ⎢ ⎥⎢ ⎢ ⎥ l 0 ⎥ ⎢ 0 0 0 1 0 0 0 16 0 0 0 0 0 0 0 0 0 ⎥⎢ 729 ⎥ ⎥ ⎢ 2 ⎥⎢ ⎢ ⎢ ⎥ l3 ⎥ = ⎢ ⎢ 0 0 0 0 0 0 0 0 0 0 0 0 −1 0 0 0 0 ⎥⎢ ⎥ ⎢ 0 ⎥ 2 ⎥⎢ ⎢ ⎥ l2 ⎥ ⎢ ⎢ 1 0 0 0 0 0 0 0 0 0 0 0 0 −1 0 0 0 ⎥⎢ ⎥ ⎢ 0 ⎥ 2 ⎥⎢ ⎢ ⎥ l1 ⎥ ⎢ ⎢ 6 1 0 0 1 0 0 0 0 0 0 0 −1 0 −1 0 0 ⎥⎢ ⎥ ⎢ 0 ⎥ 2 ⎥⎢ ⎢ ⎥ l0 ⎥ ⎢ ⎢ 9 6 1 0 3 1 0 0 0 0 0 0 0 −1 0 −1 0 ⎥⎢ ⎥ ⎢ 0 ⎥ ⎥⎢ ⎢ ⎥ R4 ⎥ ⎢ 0 9 6 1 0 3 1 0 0 0 0 0 0 0 −1 0 −1 ⎥⎢ ⎥ ⎢ 0 ⎥ ⎥⎢ ⎢ ⎢ ⎥ ⎥ ⎣ 0 0 9 6 0 0 3 1 0 0 0 0 0 0 0 −1 0 ⎦⎢ ⎢ R3 ⎥ ⎣ 0 ⎦ ⎥ ⎢ 0 0 0 9 0 0 0 3 0 0 0 0 0 0 0 0 −1 ⎢ R2 ⎥ 0 ⎣ R1 ⎦ R0 It is underdetermined (there are fourteen equations and seventeen unknowns), so that p(nO + 1) + q(p − 1) − n = 3 (see (A.90)) free parameters exist. Inspection of the coefficient matrix shows that the coefficients p2 , p1 and p0 of the denominator polynomial DC (s) are independent parameters. By
280
A Design of Observer-based Controllers
choosing p2 = (−6.2)/3, p1 = −11/3 and p0 = (−8.2)/3 the frequency domain design yields exactly the controller obtained in Example A.8. Its transfer 1 NCy1 (s) NCy2 (s) is behaviour u ¯(s) = −GTCy (s)¯ ym (s) with GTCy (s) = DC (s)
characterized by
1 3 3s − 6.2s2 − 11s − 8.2 3 1 and NCy1 (s) = 51.2s3 + 145.2s2 + 95.2s + 137.2 3 1 −129.2s3 − 399.2s2 + 486.8s + 1788.8 NCy2 (s) = 3 DC (s) =
Obviously, DC (s) is not Hurwitz and consequently the controller itself is unstable. A stable controller can be obtained by, for example, choosing p2 = 2.2, p1 = 1.4 and p0 = 0.2. The resulting controller is then characterized by the polynomials DC (s) = s3 + 2.2s2 + 1.4s + 0.2 NCy1 (s) = 12.8s3 + 39.15s2 + 13.6s + 45.55 and NCy2 (s) = −17.55s3 − 3.6s2 + 427.25s + 874 and it leads to approximately the same disturbance rejection as the unstable controller above. A reference transfer function of the controller according to GCr (s) =
Δ(s)m 9(s3 + 9s2 + 27s + 27) NCr (s) = = DC (s) DC (s) DC (s)
(see also (A.51)) gives vanishing tracking errors for constant reference signals. When applying Johnson’s approach to disturbance rejection in the time domain, one first computes the state feedback vector k T and the vector kvT for disturbance rejection, and then designs an observer for the system that is augmented by a model of the assumed disturbance process. In the frequency domain, the same controller results directly from a system of linear equations. Though the number of free parameters is the same in the time and in the frequency domain designs, the influence of different choices of the parameters is much more apparent if the frequency domain approach is used. The main advantage of Johnson’s approach to controllers for disturbance rejection is that it also works for non-measurable controlled outputs. Its main drawback, however, is the lack of robustness. On the other hand, a classical controller with integral action yields robust rejection of constant disturbances. The approach discussed in the next section assures a robust rejection of all disturbances that can be modelled by the process (A.52) or (A.55).
A.5 Incorporation of Disturbance Models
281
A.5.2 Davison’s Disturbance Model in the Time and in the Frequency Domains We consider linear, time-invariant systems of the order n with one manipulated input u(t), a measurable controlled output y(t), p ≥ 1 measurements ym (t) and ρ disturbance inputs d(t) described by the state equations x(t) ˙ = Ax(t) + bu(t) + Bd d(t) y(t) = cT x(t) + dTd d(t) ym (t) = Cm x(t) + Dmd d(t)
(A.95)
The pair (A, b) is assumed to be completely controllable and the pair (A, Cm ) completely observable. In view of tracking constant reference signals r(t), the numerator polynomial N (s) of the transfer function
N (s) = cT (sI − A)−1 b is D(s)
assumed not to contain a zero at s = 0. It is further assumed that the disturbances d(t) can be modelled by a signal process (A.52) with the characteristic polynomial ˆ det(sI − Sd ) = sq + ψq−1 sq−1 + · · · + ψ1 s + ψ0 Dd (s) =
(A.96)
Davison originally suggested driving a model of the assumed signal process by the tracking error, namely v(t) ˙ = Sv(t) + bε [y(t) − r(t)]
(A.97)
The dynamics of this model are such that det(sI − S) = det(sI − Sd ) and the pair (S, bε ) is completely controllable. When the system is augmented by this model and stabilized by u(t) = −uC (t) with T x(t) T T kv uC (t) = kaug xaug (t) = kx (A.98) v(t) as shown in Figure A.11, robust disturbance rejection and robust tracking are assured for all signals modelled by the signal process [13, 14]. In general, the reference signals do not have the same forms as the disturbances (one exception is probably constant signals with det(sI − S) = s). When using a joint signal process for different disturbance and reference signals, the rejection of disturbances is also guaranteed for all reference signal forms and asymptotic tracking results for all signal forms of the disturbances. On the one hand, this is more than required and, on the other hand, it may have an unfavourable influence on the behaviour of the closed loop. The book [32] contains a demonstration example of the disastrous consequences a joint signal process for sinusoidal disturbances and step-like reference signals can have on the reference transients (see also Example A.10). It, therefore, seems reasonable to use a signal model in the sense of Davison for disturbance rejection only and to accommodate constant reference signals
282
A Design of Observer-based Controllers
as discussed within the framework of observer-based control, i.e., as if the nominal state feedback u(t) = −k T x(t) + mr(t)
(A.99)
1 + bk T )−1 b
(A.100)
had been applied with m=
cT (−A
assuring vanishing tracking errors for constant reference signals. This approach is pursued in the following. Figure A.12 shows the modified version of Davison’s approach, which ensures the rejection of all modelled disturbances and the tracking of reference inputs r(t) = rS 1(t) as if only the nominal state feedback (A.99) had been applied. d ym
u
y
System
uC
x kxT v
kvT
v˙ = Sv + bε ε
r ε
Figure A.11. Davison’s original approach
d r
ym
u
m
System
uC
x kxT
kvT
v
v˙ = Sv + bε y − bσ mr
Figure A.12. Modified version of Davison’s approach
y
A.5 Incorporation of Disturbance Models
283
The state equations of the modified signal model are v(t) ˙ = Sv(t) + bε y(t) − bσ mr(t)
(A.101)
with ⎡
1 0 ⎢ .. .. ⎢ . S=⎢ . ⎣ 0 0 −ψ0 −ψ1
··· .. .
0 .. .
··· 1 · · · −ψq−1
⎤ ⎥ ⎥ ⎥ ⎦
⎡ ⎤ 0 ⎢ .. ⎥ ⎢ ⎥ and bε = ⎢ . ⎥ ⎣0⎦ 1
(A.102)
The input vector bσ needs to be designed such that the states v(t) of the signal model are not controllable from the reference input r(t). Thus, the disturbance model has the property of a disturbance observer in the sense of Johnson, where the joint state and disturbance observer does not influence the tracking behaviour (see Section A.5.1). When joining the system (A.95) and the model (A.101) of the signal process, the state equations of the augmented system have the form x˙ aug (t) = Aaug xaug (t) + baug u(t) + braug r(t) + Bdaug d(t) yaug (t) = Caug xaug (t) + Ddaug d(t) with
(A.103)
A 0 x(t) b 0 , Aaug = , braug = , baug = xaug (t) = v(t) b ε cT S 0 −bσ m Bd ym (t) Cm 0 Dmd Bdaug = , yaug (t) = , Caug = , Ddaug = bε dTd 0 v(t) 0 I Provided that the pair Aaug , baug is completely controllable, the eigenvalues of the augmented system (A.103) can be assigned arbitrarily by the control u(t) = −uC (t) with uC (t) as in (A.98). If the control (A.98) stabilizes the loop, all disturbances modelled in the signal process are asymptotically (i.e., in the steady state) rejected in y(t). The above controllability condition is satisfied if the system (A.95) and the model (A.101) are controllable (which has been assumed) and if, additionally, the transfer function of the system between u ˆ det(sI − S) [13]. and y does not contain zeros of the polynomial Dd (s) = The reference behaviour of the loop in Figure A.12 is characterized by the state equations bm x(t) ˙ A − bkxT −bkvT x(t) + r(t) = b ε cT S v(t) −bσ m v(t) ˙ (A.104) x(t) T 0 c y(t) = v(t) To obtain the reference transfer function
284
A Design of Observer-based Controllers
y¯(s) = cT (sI − A + bk T )−1 bm¯ r (s)
(A.105)
of the ideal state feedback loop (see (A.8)) there must exist a similarity transformation x(t) I 0 = ζ(t) (A.106) v(t) X I which transforms the state equations (A.104) to the form T Y bm ˙ = A − bk ζ(t) + r(t) ζ(t) 0 Z 0 0 cT ζ(t) y(t) =
(A.107)
Introducing (A.106) in (A.104) one obtains A − b(kxT + kvT X) bm −bkvT ˙ζ(t) = ζ(t)+ r(t) −(Xb+bσ )m SX−X(A−bkxT −bkvT X)+bε cT S + XbkvT 0 ζ(t) cT y(t) = (A.108) A comparison of (A.107) and (A.108) shows that Y = −bkvT and that bσ must have the form (A.109) bσ = −Xb This gives Z = S − bσ kvT
(A.110)
The characteristic polynomial of the closed loop contains the polynomial det(sI − A + bk T ) if (A.111) kxT = k T − kvT X Finally, if X is a solution of the Sylvester equation X(A − bk T ) − SX = bε cT
(A.112)
(A.108) obtains the desired form. Therefore, the controller for robust disturbance rejection can be designed along the following lines. First, choose the desired nominal state feedback (A.99) with m according to (A.100). Then compute the solution X of the Sylvester equation (A.112) and use (A.109) to obtain bσ . Subsequently, find kvT so that the matrix (S − bσ kvT ) (see (A.110)) has desired eigenvalues. When finally solving (A.111) for kxT , the closed loop has i) Eigenvalues that are the zeros of det(sI − A + bk T ) det(sI − S + bσ kvT ), ii) A reference behaviour as if ideal state feedback had been applied. Since the state v(t) of the model (A.101) is directly measurable (this model is part of the controller), only a state observer of the order nO = n − κ with 0 ≤ κ ≤ p (see Section A.3) for the state x(t) of the system is required.
A.5 Incorporation of Disturbance Models
285
When using the state estimate x ˆ(t) in (A.98), the control signal for the augmented system becomes u(t) = −ˆ uC (t) + mr(t)
(A.113)
u ˆC (t) = kxT xˆ(t) + kvT v(t)
(A.114)
with With u(t) as in (A.113), the state equation (A.101) of the model can be expressed equivalently as uC (t) + u(t)] v(t) ˙ = Sv(t) + bε y(t) − bσ [ˆ
(A.115)
Here in the linear case (no input saturation) both forms (A.115) and (A.101) are identical because u ˆC (t) + u(t) = mr(t) (see (A.113)). In order to prevent controller windup (see Chapter 2), however, the representation (A.115) of the signal model is preferable. The closed loop consisting of the system, the signal model (A.115), an observer for the state of the system, and the control (A.113) and (A.114) has the form shown in Figure A.13. This assures the rejection of all modelled disturbance signals in y(t) regardless of where they act. This is also true in the presence of plant parameter perturbations, provided that they do not cause an instability of the closed loop. Due to the modified structure of the model, the tracking behaviour of the loop is the same as if ideal state feedback had been applied, i.e., the reference behaviour of the loops shown in Figures A.13 and A.1 coincides. Thus, the stabilized signal model can be interpreted as part of an overall observer, which consists of the state observer and the controlled signal model. d y r
x˙ = Ax+bu+Bd d y = cT x + dTd d ym = Cm x + Dmd d
u
m
ym
u ˆC x ˆ
kxT
z˙ = F z+Lym +T bu x ˆ = Θz + Ψ ym
σ kvT
v
v˙ = Sv+bε y−bσ σ
Figure A.13. Observer-based control with signal model for disturbance rejection
286
A Design of Observer-based Controllers
The frequency domain design of controllers containing signal models for disturbance rejection is very similar to the design discussed in Section A.4. The system (A.95) is characterized by its transfer behaviour ¯ y¯(s) = G(s)¯ u(s) + Gd (s)d(s) ¯ y¯m (s) = Gm (s)¯ u(s) + Gmd (s)d(s)
(A.116)
and the (given) polynomials appearing in G(s) and in Gm (s) are denoted by G(s) = and
N (s) D(s)
(A.117)
⎡
⎤ Nm1 (s) ⎢ ⎥ .. Gm (s) = ⎣ ⎦ . Nmp (s)
1 D(s)
(A.118)
having the polynomial coefficients D(s) = sn + an−1 sn−1 + · · · + a1 s + a0
(A.119)
and Nmk (s) = ckn−1 sn−1 + · · · + ck1 s + ck0 ,
k = 1, 2, . . . , p
(A.120)
The ρ disturbances d(t) are such that they can be modelled in a signal process of the order q with the characteristic polynomial Dd (s) = ˆ det(sI − S) = sq + ψq−1 sq−1 + · · · + ψ1 s + ψ0
(A.121)
The dynamics of the closed loop are characterized by the polynomial ˜ D(s) = sn + a ˜n−1 sn−1 + · · · + a ˜1 s + a ˜0
(A.122)
of the controlled plant, by the polynomial ΔO (s) = ˆ det(sI − F ) of the state observer (degree nO , with n − p ≤ nO ≤ n), and by the polynomial Δd (s) = ˆ det(sI − S + bσ kvT ) of the controlled signal model (degree q). Consequently, the characteristic polynomial of the overall observer is Δ(s) = ΔO (s)Δd (s) = snΔ + δnΔ −1 snΔ −1 + · · · + δ1 s + δ0
(A.123)
with nΔ = nO + q. Since the controlled output y(t) is contained in the measurement vector ym (t) (A.124) y(t) = γ T ym (t) with the p-incidence vector γ T = 0 · · · 1 · · · 0 . The element with index iC is 1 if the iC -th element of ym (t) is the controlled output y(t), i.e., NmiC (s) = ˆ N (s). The transfer behaviour between the input ym and the output u of the controller shown in Figure A.13 is characterized by
A.5 Incorporation of Disturbance Models
z(t) ˙ v(t) ˙
=
F − T bkxT Θ −T bkvT
u(t) = −
0
kxT Θ
kvT
z(t)
+
L − T bkxT Ψ
287
ym (t)
bε γ T S v(t) z(t) − kxT Ψ ym (t) v(t)
(A.125)
(because when r(t) ≡ 0, σ(t) also vanishes). The order of the controller is nΔ = nO + q. Its transfer behaviour is u ¯(s) = −GTCy (s)¯ ym (s) with 1 NCy1 (s) · · · NCyiC (s) · · · NCyp (s) DC (s) (A.126) The state equations (A.125) show that the denominator polynomial DC (s) of the compensator contains the characteristic polynomial (A.121) of the signal process as a factor, i.e., −1 T GTCy (s) = DC (s)NCy (s) =
(s)Dd (s) DC (s) = DC
with
(A.127)
(s) = pnO snO + pnO −1 snO −1 + · · · + p1 s + p0 DC
(A.128)
a polynomial of degree nO with unknown coefficients. Due to the incidence vector γ T , (A.125) shows that the signal model is only controllable from y(t) = ˆ ymiC (t), so that the polynomial Dd (s) is a factor of all numerator polynomials NCyk (s), k = 1, 2, . . . , p, k = iC . To allow all compensator transfer functions to be proper, the numerator polynomials NCyk (s) have the general form NCyiC (s) = lniCΔ snΔ + · · · + l1iC s + l0iC
(A.129)
and (s)Dd (s), NCyk (s) = NCyk
k = 1, 2, · · · , p,
k = iC
(A.130)
with Dd (s) as defined in (A.121) and (s) = lnk O snO + · · · + l1k s + l0k , NCyk
k = 1, 2, · · · , p,
k = iC
(A.131)
The desired eigenvalues of the controlled system are the zeros of the polyno˜ mial D(s) = det(sI − A + bk T ) and the eigenvalues of the “overall observer” the zeros of Δ(s) (see (A.123)). Therefore, the characteristic polynomial of the closed loop has the form ˜ CP (s) = Δ(s)D(s)
(A.132)
In terms of the polynomials appearing in the transfer functions of the system and the controller, the characteristic polynomial of the closed loop is given by T (s)Nm (s) + DC (s)D(s). CP (s) = NCy
288
A Design of Observer-based Controllers
The controller assigns the desired eigenvalues of the closed loop if the polynomial equation T ˜ NCy (s)Nm (s) + DC (s)D(s) = Δ(s)D(s)
(A.133)
is satisfied. This is equivalent to the design equation (A.39) of the observerbased controller. Here, however, the polynomials of the controller have the special forms (A.127) through (A.131). Introducing these special forms in (A.133), one obtains NCyiC (s)N (s) +
p
˜ NCyk (s)Dd (s)Nmk (s)+DC (s)Dd (s)D(s) = Δ(s)D(s)
k=1 k=iC
(A.134) where NmiC (s) = N (s) has been used. After introducing the polynomials Nmk (s) = Dd (s)Nmk (s),
and
k = 1, 2, · · · , p,
k = iC
(A.135)
D (s) = Dd (s)D(s)
(A.136)
the polynomial equation (A.134) can be written in the usual form (unknown polynomial times a known polynomial), namely NCyiC (s)N (s) +
p
˜ NCyk (s)Nmk (s)+DC (s)D (s) = Δ(s)D(s)
(A.137)
k=1 k=iC
The coefficients of the new polynomials (A.135) and (A.136) are denoted by k Nmk (s) = ζn+q−1 sn+q−1 + · · · + ζ1k s + ζ0k ,
k = 1, 2, · · · , p,
k = iC (A.138)
D (s) = sn+q + αn+q−1 sn+q−1 + · · · + α1 s + α0
(A.139)
and
The coefficients ζij and αk result from the polynomial multiplications ⎤ ⎡ k 0 0 cn−1 ⎤ ⎡ k ζn+q−1 ⎥⎡ ⎢ .. ⎤ . ⎥ ⎢ ⎢ ζk 0 ⎥ ckn−2 ⎥ 1 ⎢ ⎢ n+q−2 ⎥ ⎢ ⎥ ⎥ ⎢ .. ⎢ ⎢ ψq−1 ⎥ .. ⎥ ⎢ . ⎥ ⎢ . ckn−1 ⎥ ⎥⎢ = ⎥ ⎢ .. ⎥ , k = 1, 2, · · · , p, k = iC .. ⎥⎢ ⎢ k ⎥ ⎢ ⎦ ⎣ k . ⎥ ⎢ cn−2 ⎥ . ⎥ ⎢ c0 ⎢ ⎦ ⎢ ⎣ ψ . ⎥ .. 0 .. ⎦ ⎣ 0 . ζ0k 0 0 ck0 (A.140) and
A.5 Incorporation of Disturbance Models
⎡
⎤
⎡
1 ⎢ ⎢ αn+q−1 ⎥ ⎢ an−1 ⎢ ⎥ ⎢ ⎢ ⎥ ⎢ .. ⎢ ⎥ ⎢ . ⎢ ⎥=⎢ .. ⎢ ⎥ ⎢ a0 . ⎢ ⎥ ⎢ ⎣ ⎦ ⎢ ⎣ 0 α0 0 1
0 .. . .. .
0
⎥⎡ ⎤ 0 ⎥ ⎥ 1 ⎥⎢ ψq−1 ⎥ ⎢ ⎥ 1 ⎥ ⎥⎢ .. ⎥ ⎣ . ⎦ an−1 ⎥ ⎥ .. ⎥ ψ0 . ⎦
..
. 0
289
⎤
(A.141)
a0
The system of linear equations for the solution of the polynomial equation (A.137) then takes the simple form ˜ Kh h = Aδ
(A.142)
with the {p(nO + 1) + nΔ + 1}-vector hT = pnO · · · p0 ln1 O · · · l01 · · · lniCΔ · · · l0iC · · · lnp O · · · l0p
(A.143)
containing the unknown polynomial coefficients in (A.128), (A.129) and (A.131), the known (n + nΔ + 1) × (nΔ + 1)-matrix ⎡ ⎤ 1 0 0 ⎢ ⎥ .. ⎢a . 0 ⎥ ⎢ ˜n−1 ⎥ ⎢ .. ⎥ .. ⎢ . 1 ⎥ (A.144) A˜ = ⎢ . ⎥ ⎢ a ⎥ a ˜ ˜ 0 n−1 ⎢ ⎥ ⎢ .. ⎥ .. ⎣ 0 . . ⎦ 0
0
a ˜0
˜ containing the coefficients of the polynomial D(s), and the known (nΔ + 1)vector T (A.145) δ = 1 δnΔ −1 · · · δ0 containing the coefficients of the polynomial Δ(s). The known (n + nΔ + 1) × {p(nO + 1) + nΔ + 1}-coefficient matrix Kh= ⎡ 1 ⎢ ⎢ ⎢αn+q−1 ⎢ ⎢ .. ⎢ . ⎢ ⎢ ⎢ α0 ⎢ ⎢ ⎢ 0 ⎣ 0
0 .. .
0
0
0
1 ζn+q−1
..
1
.. .
.
αn+q−1 .. .. . .
ζ01
0
0
α0
0
··· .. . .. .
0 .. . 0
.. . 0 .. iC . cn−1 .. .. . . .. iC . c
1 ζn+q−1 .. .. .. . . . .. 1 . 0 ζ 0
0
0 0
··· .. .
0 .. .
..
0
.
.. . 0 .. p . ζn+q−1 .. .. . . .. . ζp
C cin−1 . . .. . .. .. . 0 ciC ..
0
··· .. . .. .
⎤ 0 .. .
0
⎥ ⎥ ⎥ ⎥ ⎥ 0 ⎥ ⎥ ⎥ p ζn+q−1⎥ ⎥ .. ⎥ .. . . ⎥ ⎦
0
0
0
ζ0p (A.146)
290
A Design of Observer-based Controllers
contains the polynomial coefficients of the transfer functions of the system augmented by the signal model. For arbitrary right-hand sides (i.e., when the characteristic polynomial (A.132) of the closed loop is chosen arbitrarily) the system of linear equations (A.142) can only be solved if it is not over-determined, i.e., if the number {p(nO + 1) + nΔ + 1} of unknown parameters in the transfer functions of the controller is not smaller than the number (n + nΔ + 1) of linear equations. If the coefficient matrix Kh is square and has full rank, there is a unique solution. The difference ϑ between the number of columns and rows in the coefficient matrix Kh is ϑ = p(nO + 1) − n. In the worst case, namely when using a state observer of minimal order nO = n − p, this becomes ϑ = (p − 1)(n − p). Due to the relations p ≤ n and p ≥ 1 this difference is always ϑ ≥ 0, so that the system of linear equations (A.142) is not over-determined for any observer of the order nO ≥ n − p. If the polynomials Nmk (s), k = 1, 2, · · · , p, k = iC , N (s) = ˆ NmiC (s) and D (s) are relatively coprime, the coefficient matrix Kh has full row rank. Obviously these polynomials do not contain a common root if the requirements for the design of a pole placing controller incorporating a signal model are satisfied, i.e., if the polynomials D(s) and Nmk (s), k = 1, 2, · · · , p of the nonaugmented system are relatively coprime (i.e., the system is completely conˆ NmiC (s) trollable and observable) and if the polynomials Dd (s) and N (s) = do not have a common zero. If these polynomials were to have a common zero, not all disturbances could be counteracted in the controlled output y(t). For a state observer whose order nO is within the region n − p ≤ nO ≤ n there are p(nO + 1) − n ≥ 0 (A.147) degrees of freedom when solving the system of linear equations (A.142), i.e., an equivalent number of controller parameters can be assigned arbitrary values, provided that they are independent (see also Section A.4). In order to discuss the disturbance behaviour of the closed loop, the transfer functions between the disturbances dj , j = 1, 2, ..., ρ and the outputs y and ymi , i = 1, 2, ..., p also need to be defined. Denoting these open loop transfer functions by Ndj (s) y¯(s) and = D(s) d¯j (s) j y¯mk (s) Nmdk (s) , = ¯ D(s) dj (s)
k = 1, 2, . . . , p and j = 1, 2, . . . , ρ
the transfer function of the closed loop between a disturbance input dj and the controlled output y becomes
A.5 Incorporation of Disturbance Models
Ndj (s)DC (s)D(s) + y¯(s) = ¯ dj (s)
p k=1 k=iC
291
j NCyk (s) Nmk (s)Ndj (s) − Nmdk (s)N (s) p
DC (s)D(s) +
NCyk (s)Nmk (s) D(s)
k=1
j = 1, 2, . . . , ρ
(A.148)
As in the loop with disturbance observer in Section A.5.1, the disturbance transfer function seemingly describes a closed loop of the order (2n + nΔ ). Its correct order, however, is (n + nΔ ). Consequently all non-vanishing polyno-
j mials Nmk (s)Ndj (s) − Nmdk (s)N (s) must contain the polynomial D(s) as a factor. By introducing the notation j Nmk (s)Ndj (s) − Nmdk (s)N (s) /D(s) = Nkj (s) (A.149)
the transfer functions (A.148) take on the more plausible form Ndj (s)DC (s) + y¯(s) = d¯j (s)
DC (s)D(s) +
p k=1 k=iC p
NCyk (s)Nkj (s) ,
j = 1, 2, . . . , ρ
(A.150)
NCyk (s)Nmk (s)
k=1 (s)Dd (s) and NCyk (s) = NCyk (s)Dd (s), k = 1, 2, · · · , p, Because DC (s) = DC k = iC , the numerator polynomials in all transfer functions (A.150) contain the polynomial Dd (s) of the disturbance model as a factor. Consequently, asymptotic disturbance rejection in y(t) results for all modelled disturbance signals. This is also true for system polynomials Dmod (s) and mod Nmk (s), k = 1, 2, . . . , p, differing from those used for the design of the controller, provided that the resulting characteristic polynomial of the closed T mod (s)Nm (s) + DC (s)Dmod (s) remains Hurwitz (robustloop CPmod (s) = NCy ness to plant parameter variations) and for arbitrary polynomials Ndjmod (s), jmod (s), k = 1, 2, . . . , p, j = 1, 2, . . . , ρ (robustness to changing input locaNmdk tions of the disturbances). To obtain a reference behaviour as if the nominal state feedback control u(t) = −k T x(t) + mr(t) had been applied, the reference transfer function of the controller must have the form
GCr (s) =
Δ(s)m NCr (s) = DC (s) DC (s)
where m=
˜ D(0) N (0)
assures vanishing tracking errors for constant reference inputs.
(A.151)
(A.152)
292
A Design of Observer-based Controllers
Example A.10. Time domain design of an observer-based controller with disturbance model in the sense of Davison. The system of the order four with one input and two measured outputs has an exponentially unstable eigenvalue. The system is forced by two disturbances, one step-like and one sinusoidal. Demonstration of the effects resulting from Davison’s original approach The single input system to be controlled is described by its state equations ⎡ ⎤ ⎡ ⎤ ⎡ ⎤ 0 1 0 0 0 0 −0.2 ⎢ −2 −3 0 −1 ⎥ ⎢1⎥ ⎢ 1 0.1 ⎥ ⎥ ⎢ ⎥ ⎢ ⎥ x(t) ˙ = Ax(t)+bu(t)+Bdd(t) =⎢ ⎣ 0 0 0 1 ⎦x(t)+⎣ 0 ⎦u(t)+⎣ 0 0.1 ⎦d(t) 0 0 2 −1 1 1 0 y(t) = cT x(t) = −6 −3 −2 3 x(t) ⎡ ⎤ −6 −3 −2 3 ym (t) = Cm x(t) = ⎣ 1 1 2 −1 ⎦ x(t) −8 −4 −3 5 The controlled output y(t) is identical with the firstmeasured output ym1 (t), so that the incidence vector in (A.124) is γ T = 1 0 0 . The controller is intended to reject step-like disturbances d1 (t) = dS1 1(t) and sinusoidal disturbances d2 (t) = dS2 sin(3t+ϕd )1(t), and to give vanishing tracking errors for constant reference signals r(t). For the reconstruction of the state of the system a minimal order observer is used. The “nominal” state feedback is supposed to shift the eigenvalues of the system to s1 = −2, s2 = −4 and s3/4 = −5. This assures reference transients without overshoots, since all poles are real and the zeros of the transfer function between the system input u and the controlled output y at s1 = −2 and s2 = −4 are compensated. The eigenvalues of the state observer and of the controlled signal model (i.e., of the overall observer) are located at s = −5. The disturbances can be modelled in a signal process (A.52) with the ˆ det(sI − Sd ) = s(s2 + 9), so that the characteristic polynomial Dd (s) = parameters S and bε in the model (A.101) are ⎡ ⎡ ⎤ ⎤ 0 1 0 0 S = ⎣ 0 0 1 ⎦ and bε = ⎣ 0 ⎦ 0 −9 0 1 The “nominal” feedback vector k T = −96 −48 6 60 leads to the charac˜ teristic polynomial D(s) = det(sI − A + bk T ) = (s + 2)(s + 4)(s + 5)2 of the controlled system, and m = 25 (see (A.9)) assures vanishing tracking errors for constant reference inputs. To obtain a reference behaviour not influenced by the dynamics of the disturbance model, the solution X of the Sylvester equation (A.112) must be
A.5 Incorporation of Disturbance Models
293
known. With the above k T and the given quantities A, b, cT , S, and bε , the solution of (A.112) is ⎡ ⎤ 30.36 15.18 6.76 −16.02 1 ⎣ −111 −55.5 −27 58 ⎦ X= 289 351 175.5 101 −179.5 With this (A.109) leads to ⎡ ⎤ 0.84 1 ⎣ −2.5 ⎦ bσ = 289 4 and the feedback vector that assigns the eigenvalues of (S − bσ kvT ) to s = −5 has the form kvT = 3125 956 1025 With the above kvT and X, (A.111) finally yields the feedback vector kxT = −1302 −651 −336 678 The feedback (A.98) now places the eigenvalues of the closed loop at the locations that correspond to the zeros of the polynomials det(sI − A + bk T ) and det(sI − S + bσ kvT ). Since the state x(t) is not directly measurable, an observer of the (completely reduced) order nO = n− p = 1 has to be designed. It is easy to confirm that the observer (A.16), which has an eigenvalue at s = −5, and the estimate 2 1 = Cm , Ψ = Ψ2 , and Cm vanishes) (A.18) of the state (for κ = p one has Cm are parameterized by F = −5 L = 33.6 0 −3 T = −44.4 −22.2 −20 20.9 ⎡ ⎡ ⎤ ⎤ 309 −169 −52 −40 1 ⎢ −991 338 286 ⎥ 1 ⎢ 90 ⎥ ⎢ ⎢ ⎥ and Θ = ⎥ Ψ= ⎣ ⎦ 274 0 −39 169 169 ⎣ −30 ⎦ −134 0 156 −10 The observer-based controller with a signal model in the sense of Davison is described by the state equations (A.125). To also incorporate the reference input, the first equation in (A.125) needs to be extended by the vector T bm r(t) and the second equation by the quantity mr(t). Substitution of −bσ m the given numbers yields
294
⎡
A Design of Observer-based Controllers
z(t) ˙
⎤ ⎡ −386 13
⎢ v˙ (t) ⎥ ⎢ 0 ⎢ 1 ⎥ ⎢ ⎥ =⎢ ⎢ ⎣ v˙ 2 (t) ⎦ ⎣ 0
4062.5 1242.8 1332.5
0
v˙ 3 (t)
0 0
1 0
0 1
0
−9
0
−3210 169
z(t)
⎤ ⎡ 6427.5
⎥⎢ v (t) ⎥ ⎢ ⎥⎢ 1 ⎥ ⎢ ⎥⎢ ⎥+⎢ ⎦⎣ v2 (t) ⎦ ⎣ v3 (t)
⎡ u(t) = −
⎤⎡
13
00
0 0⎥ ⎥ ⎥ ym (t)+ 0 0⎦
0 0 1
00 ⎡ ⎤ −9392.5 ⎢ −21 ⎥ ⎥ 1 ⎢ + 289 ⎢ ⎥r(t) ⎣ 62.5 ⎦ −100
⎤
z(t)
⎤
⎥ ⎢ ⎢ v1 (t) ⎥ 59907 3125 956 1025 ⎢ ⎥ − 169 0 ⎣ v2 (t) ⎦
30 13
ym (t) + 25r(t)
v3 (t) The disturbance rejecting properties of the loop are discussed first. Figure A.14a shows the output signals y(t) that result for a step-like disturbance d1 (t) with dS1 = −1 (dashed line), for a sinusoidal disturbance d2 (t) with dS2 = 0.5 and ϕd = 0 (dash-dotted line), and for both disturbances acting at the same time (solid line). The corresponding control signals u(t) are depicted in Figure A.14b. The compensator obviously leads to the desired disturbance rejection in y(t) and this would also be the case if the disturbances acted at other locations (i.e., for a different matrix Bd and non-vanishing quantities Dmd and dTd ). 0.02
2
Controller output u(t)
System output y(t)
Disturbance d1 Disturbance d2 Both disturbances
0.01
0
−0.01
−0.02
0
2
4
Time
(a) Output y(t) of the system
6
1
0
−1
−2
Disturbance d1 Disturbance d2 Both disturbances 0
2
4
Time
(b) Output u(t) of the controller
Figure A.14. Disturbance behaviour of the closed loop
6
A.5 Incorporation of Disturbance Models
295
The dash-dotted line in Figure A.15a shows the transient response for r(t) = 1(t) and it is equivalent to that of the nominal state feedback control. If one had used Davison’s original approach, i.e., the signal model is driven by the tracking error according to (A.97) and the output signal of the conˆC (t) given by (A.114), a vanishing tracking troller is u(t) = −ˆ uC (t), with u error would not only result for constant but also for sinusoidal reference signals r(t) = rS sin(3t + ϕr )1(t). Broken lines Figure A.15b show a sinusoidal reference input with rS = 1 and ϕr = 0 and the solid line represents the reaction of the controlled output y(t) to this reference input. Davison’s original approach, consequently, also gives an asymptotic tracking of sinusoidal reference signals here, though this is not required. The response in solid lines in Figure A.15a shows the reaction of the closed loop to a step-like reference input when Davison’s original approach is applied. This demonstrates that it yields vanishing tracking errors both for steplike and sinusoidal reference inputs, but at the cost of degraded transients for step inputs. They are impaired by a backlash and by a considerably delayed approach to the desired final value. This is a consequence of unfavourable zeros in the reference transfer function of the compensator. In the modified approach described in Section A.5.2, these zeros are the eigenvalues of the overall observer, so that the tracking behaviour of the “nominal” state feedback results. The reference transfer behaviour of Davison’s original controller (signal model as in (A.97) and the control signal u(t) = −ˆ uC (t) with uˆC (t) given by
Reference r(t) and Output y(t)
1
Output y(t)
0.8 0.6
Davison’s approach
0.4
Suggested approach
0.2 0
0
1
2
3
Time
(a) Step-like reference input
4
1.5
r
1 0.5 0 y −0.5 −1
0
1
2
3
4
5
Time
(b) Sinusoidal reference input
Figure A.15. Tracking behaviour of the loop with Davison’s original approach
296
A Design of Observer-based Controllers
(A.114)) is characterized by the state equations z(t) ˙ F − T bkxT Θ −T bkvT z(t) 0 r(t) = + 0 S v(t) −bε v(t) ˙ z(t) kvT u(t) = − kxT Θ v(t)
(A.153)
Using Rosenbrock’s system matrix [58] one can show that the zeros of the u ¯(s) of this controller are specified numerator in the reference transfer function r¯(s) by the eigenvalues of the observer (i.e., by the roots of det(sI −F )) and by the zeros of the transfer function kvT (sI − S)−1 bε . The latter somehow depend on the eigenvalues of S and the feedback vector kvT . In this example, these zeros are located at −0.466 ± 1.68j (i.e., they are relatively close to the imaginary axis), and they give rise to the backlash behaviour observed in the transient shown in a solid line in Figure A.15a.
Example A.11. Frequency domain design of the compensator considered in Example A.10 In the frequency domain, the behaviour of the system of Example A.10 is described by y¯m (s) = Gm (s)¯ u(s) with the transfer vector ⎤ ⎡ s2 + 6s + 8 1 ⎦ ⎣ 2s + 2 Gm (s) = 4 s + 4s3 + 3s2 − 4s − 4 3 s + 4s2 + 9s + 10 where the first component of Gm (s) characterizes y¯(s) = G(s)¯ u(s). Consequently, the index of the controlled output is iC = 1. ¯ between the two disturbance The transfer behaviour y¯m (s) = Gmd (s)d(s) inputs d and the three measured outputs ym is characterized by the transfer matrix 1 Gmd (s) = 4 s + 4s3 + 3s2 − 4s − 4
s2 + 6s + 8 2s + 2 3 s + 4s2 + 9s + 10
0.7s3 + 2.5s2 + 1.4s − 1.6 0.1s3 + 0.4s2 + 0.3s 0.9s3 + 3.4s2 + 2.3s − 1.8
Considered is an observer-based controller (of minimal order nO = n − p = 1) that contains an internal signal model to suppress constant and sinusoidal disturbances of frequency ωd = 3. It assigns the eigenvalues of the controlled system at s1 = −2, s2 = −4 and s3/4 = −5 and the four eigenvalues of the overall observer at s = −5. The characteristic polynomial of the signal model is Dd (s) = s3 + 9s. ˜ The desired characteristic polynomials are D(s) = (s + 2)(s + 4)(s + 5)2 = 4 3 2 s + 16s + 93s + 230s + 200 (controlled system) and Δ(s) = (s + 5)4 = s4 + 20s3 + 150s2 + 500s + 625 (overall observer).
A.5 Incorporation of Disturbance Models
297
˜ Given D(s) and N (s) = s2 + 6s + 8, the factor m = 200/8 = 25 (see (A.152)) assures vanishing tracking errors for constant reference signals. Thus the numerator polynomial of the compensator’s reference channel is NCr (s) = 25s4 + 500s3 + 3750s2 + 12500s + 15625 (see (A.151)). The matrix Kh (see (A.146)) contains the polynomial coefficients of D (s) = Dd (s)D(s) = s7 + 4s6 + 12s5 + 32s4 + 23s3 − 36s2 − 36s (s) = Dd (s)Nm2 (s) = 2s4 + 2s3 + 18s2 + 18s and Nm2 Nm3 (s) = Dd (s)Nm3 (s) = s6 + 4s5 + 18s4 + 46s3 + 81s2 + 90s
obtained from (A.140) and (A.141). With nO = 1, q = 3, nΔ = 4 and iC = 1 the unknown polynomials of the controller have the form DC (s) = p1 s + p0
NCy1 (s) = l41 s4 + l31 s3 + l21 s2 + l11 s + l01 NCy2 (s) = l12 s + l02 NCy3 (s)
=
l13 s
+
and
l03
Therefore, the comparison of coefficients (A.142) for the solution of the polynomial equation (A.137) has the form ⎡ ⎤ p1 ⎤ ⎤⎢ p0 ⎥ ⎡ ⎡ 1 00 0 0 0 0 0 0 0 0 ⎢ ⎥ 1 0 0 0 0 ⎢ 1⎥ ⎥ ⎢l ⎥ ⎢ ⎢ 4 1 0 0 0 0 0 0 0 1 0⎥ ⎥⎢ 41 ⎥ ⎢ 16 1 0 0 0 ⎥⎡ ⎢ ⎤ ⎢ ⎥ ⎢ ⎢ 12 ⎥ l 4 1 0 0 0 0 0 0 4 1 ⎥⎢ 3 ⎥ ⎢ 93 16 1 0 0 ⎥ ⎥ 1 ⎢ ⎥⎢ ⎥⎢ l1 ⎥ ⎢ ⎢ ⎢ 32 12 6 1 0 0 0 2 0 18 4 ⎥⎢ 2 ⎥ ⎢ 230 93 16 1 0 ⎥⎢ 20 ⎥ ⎥ ⎥ ⎥⎢ ⎥ ⎢ ⎢ ⎢ 23 32 8 6 1 0 0 2 2 46 18 ⎥⎢ l11 ⎥ = ⎢ 200 230 93 16 1 ⎥⎢ 150 ⎥ ⎥ ⎥⎢ ⎥⎢ 1 ⎥ ⎢ ⎢ ⎥ ⎢ −36 23 0 8 6 1 0 18 2 81 46 ⎥⎢ l0 ⎥ ⎢ 0 200 230 93 16 ⎥⎢ ⎥⎣ 500 ⎦ ⎥⎢ ⎥ ⎢ ⎢ ⎥ ⎥⎢ ⎥ ⎢ ⎢ ⎢ −36 −36 0 0 8 6 1 18 18 90 81 ⎥⎢ l12 ⎥ ⎢ 0 0 200 230 93 ⎥ 625 ⎥ ⎥⎢ 2 ⎥ ⎢ ⎢ ⎣ 0 −36 0 0 0 8 6 0 18 0 90 ⎦⎢ l0 ⎥ ⎣ 0 0 0 200 230 ⎦ ⎢ ⎥ ⎥ 0 0 0 0 200 0 00 0 0 0 8 0 0 0 0 ⎢ ⎣ l13 ⎦ l03 This system of linear equations is underdetermined. There are eleven unknowns and nine equations, so that two free parameters exist. Neither the parameters l01 or p1 , nor the pairs (l12 , l02 ) or (p0 , l13 ) should be assigned arbitrary values, because then the rank of the coefficient matrix would decrease. The unknowns l12 and l13 , however, are independent parameters. One obtains the same controller as in Example A.10 when choosing l12 = 0 and l13 = 30/13. Substituting these values in the above system of equations gives
298
A Design of Observer-based Controllers
⎡
1 0 0 0 ⎢ 4 1 0 0 ⎢ ⎢ 4 1 0 ⎢ 12 ⎢ ⎢ 32 12 6 1 ⎢ ⎢ 23 32 8 6 ⎢ ⎢ ⎢ −36 23 0 8 ⎢ ⎢ −36 −36 0 0 ⎢ ⎣ 0 −36 0 0 0 0 0 0
0 0 0 0 1 6 8 0 0
0 0 0 0 0 1 6 8 0
0 0 0 0 0 0 1 6 8
0 0 0 0 2 2 18 18 0
⎤⎡ ⎤ ⎡ ⎤ 1 0 p1 ⎢ p0 ⎥ ⎢ 36 −30/13 ⎥ ⎥ ⎢ 0⎥ ⎥⎢ ⎥ 1 ⎥ ⎥⎢ ⎢ ⎥ l4 ⎥ ⎢ 563 −120/13 1 ⎥⎢ ⎥ ⎥ ⎥⎢ ⎢ ⎢ l31 ⎥ ⎢ 4990 −540/13 ⎥ ⎥ 4⎥ ⎥ ⎥⎢ ⎥ ⎢ l1 ⎥ ⎢ ⎥ ⎢ 18 ⎥⎢ 2 ⎥ = ⎢ 27375 −1380/13 ⎥ ⎥ ⎥⎢ l11 ⎥ ⎥ ⎥ ⎢ 95000 −2430/13 46 ⎥⎢ ⎢ ⎥ ⎥ ⎢ ⎥⎢ ⎥ 1 ⎥ ⎢ l ⎥ ⎢ 81 ⎥⎢ 0 ⎥ ⎢ 203125 −2700/13 ⎥ ⎥ ⎢ ⎥ ⎦ 90 ⎦⎣ l02 ⎦ ⎣ 243750 0 l3 125000 0
The unique solution of this system of linear equations defines the polynomials DC (s) = (s3 + 9s)(s + 386/13) NCy1 (s) = (59907s4 + 364904s3 + 1566852s2 + 3061056s + 2640625)/169 NCy2 (s) = 0 and NCy3 (s) = (s3 + 9s)(390s + 11580)/169 of the controller. These polynomials parameterize the frequency domain description of the controller considered in Example A.10. The disturbance behaviour of the loop is characterized by the transfer functions (A.150). When the transfer functions of the system are substituted in (A.149) one obtains the polynomials N21 (s) = 0, N31 (s) = 0, N22 (s) = −s − 8 and N32 (s) = 0.7s2 + 1.6s + 0.4 and by inserting this in (A.150) one obtains the disturbance transfer behaviour y¯(s) =
1 NdCL N 2 (s) ¯ (s) ¯ d1 (s) + dCL d2 (s) ˜ ˜ Δ(s)D(s) Δ(s)D(s)
of the closed loop with 1 (s) = Nd1 (s)DC (s) + NdCL
3
NCyk (s)Nk1 (s) =
k=2
1 (13s6 + 464s5 + 2537s4 + 7264s3 + 21780s2 + 27792s) 13 3 2 (s) = Nd2 (s)DC (s) + NCyk (s)Nk2 (s) = NdCL =
k=2
1 (118.3s7 + 4208.1s6 + 22576.3s5 + = 169 63311.7s4 + 190207.6s3 + 228949.2s2 − 30571.2s)
A.6 MIMO Controllers with Disturbance Models
299
A.6 Time Domain Design of Observer-based Controllers with Disturbance Models for MIMO Systems The time domain design of observer-based MIMO controllers is only slightly different from the single input case, so that the following discussions can be kept short. The MIMO systems considered are of the order n with m control inputs u(t), m (measurable) controlled outputs y(t), p ≥ m measured outputs ym (t), and ρ disturbances d(t). The state equations of these systems are x(t) ˙ = Ax(t) + Bu(t) + Bd d(t) y(t) = Cx(t) + Dd d(t) ym (t) = Cm x(t) + Dmd d(t)
(A.154)
2 The measurement vector is assumed to be subdivided into a κ-vector ym (t), containing the measurements directly used in the construction of the state 1 (t) of the remaining measurements, i.e., estimate x ˆ(t), and a (p − κ)-vector ym one has 1 1 1 (t) Cm ym Dmd = ym (t) = x(t) + d(t) (A.155) 2 2 2 ym (t) Cm Dmd
In view of tracking constant reference signals, the system (A, B, C) must not have a transmission zero at s = 0 [65]. The nominal state feedback u(t) = −Kx(t) + M r(t)
(A.156)
is parameterized by the m × n-matrix K and the m × m-matrix M . This control is intended to assign desired dynamics of the closed loop and to yield vanishing tracking errors εi (∞) = yi (∞) − ri (∞),
i = 1, 2, . . . , m
(A.157)
for constant reference signals. This is assured by −1 M = C(−A + BK)−1 B
(A.158)
The matrix in square brackets on the right-hand side of (A.158) is invertible because the system (A, B, C) does not have a transmission zero at s = 0. If the system can be decoupled by constant state feedback [21], the control (A.156) is intended to give a decoupled reference behaviour. If the system cannot be decoupled, a near decoupling approach could be applied [72]. The decoupling design is not discussed here. See the existing literature, e.g., [64, 36, 52, 73]. The (reduced-order) observer for the system (A.154) is described by its state equations (A.159) z(t) ˙ = F z(t) + Lym (t) + T Bu(t)
300
A Design of Observer-based Controllers
2 Given the κ-vector ym (t) of the measurements and the (n − κ)-vector z(t) of the observer states with 0 ≤ κ ≤ p (see also Section A.3), the state estimate −1 2 y 2m (t) Cm x ˆ(t) = (A.160) = Ψ ym (t) + Θz(t) z(t) T results, where the abbreviation Ψ = 0 Ψ2 (see also (A.20)) has been used. If the transients have decayed and no disturbances act on the system, the state estimate x ˆ(t) coincides with the real state x(t) of the system if the relations
T A − F T = LCm
(A.161)
Ψ Cm + ΘT = In
(A.162)
and hold. When inserting the estimate x ˆ(t) in (A.159) and (A.156) one obtains the state equations of the observer-based controller z(t) ˙ = (F − T BKΘ)z(t) + [L − T BKΨ] ym (t) + T BM r(t) u(t) = −KΘz(t) − KΨ ym (t) + M r(t)
(A.163)
Now assume that the ρ disturbances d(t) acting on the system can be modelled in a signal process with the characteristic polynomial det(sI − Sd ) = sq + ψq−1 sq−1 + · · · + ψ1 s + ψ0
(A.164)
An asymptotic rejection of all modelled disturbance signals in y(t) occurs if the system is augmented by a model v(t) ˙ = Sv(t) + Bε y(t) − Bσ [ˆ uC (t) + u(t)] of the signal process. Here S = diag(Sd ), Bε = diag(bε ) with ⎤ ⎡ ⎡ ⎤ 1 0 ··· 0 0 ⎢ .. ⎢ .. ⎥ .. .. .. ⎥ ⎥ ⎢ . ⎢ . . . ⎥ and bε = ⎢ . ⎥ Sd = ⎢ ⎥ ⎣ 0 ⎣0⎦ 0 ··· 1 ⎦ −ψ0 −ψ1 · · · −ψq−1 1 where v(t) is an mq-vector. The quantity u ˆC (t) is given by xˆ(t) uˆC (t) = Kx Kv v(t)
(A.165)
(A.166)
(A.167)
Adding the signal model (A.165) to the system (A.154) and observing that u ˆC (t) + u(t) = M r(t) (see also (A.174)), one obtains the description x˙ aug (t) = Aaug xaug (t) + Baug u(t) + Braug r(t) + Bdaug d(t) yaug (t) = Caug xaug (t) + Ddaug d(t)
(A.168)
A.6 MIMO Controllers with Disturbance Models
301
of the augmented system with x(t) A 0 B 0 , Baug = , Aaug = , Braug = xaug (t) = v(t) Bε C S 0 −Bσ M Bd ym (t) Cm 0 Dmd , Caug = , Ddaug = , yaug (t) = Bdaug = v(t) 0 I Bε Dd 0 If the pair Aaug , Baug is completely controllable, the eigenvalues of the augmented system (A.168) can be assigned arbitrarily by u(t) = −uC (t) with x(t) uC (t) = Kaug xaug (t) = Kx Kv (A.169) v(t) If the feedback (A.169) stabilizes the loop, all disturbances modelled by the signal process are rejected asymptotically in y(t). The above controllability condition is satisfied if the system (A.154) and the model (A.165) are controllable (which has been assumed) and if, in addition, the transfer matrix of the system between u and y does not contain a transmission zero that is also a ˆ det(sI − Sd ) [13]. zero of the polynomial Dd (s) = To obtain a tracking behaviour as if the nominal (ideal) state feedback (A.156) had been applied, the matrices Bσ , Kv and Kx must be specified along the following lines. Given a nominal state feedback u˜(t) = Kx(t)
(A.170)
for the system (A.154). If X is a solution of the Sylvester equation X(A − BK) − SX = Bε C
(A.171)
Bσ = −XB
(A.172)
define and select Kv so that the matrix (S − Bσ Kv ) has the desired form with eigenvalues in the left half s-plane. Now when computing Kx = K − Kv X then the feedback control
u(t) = −ˆ uC (t) + M r(t) = − Kx with
Kv
(A.173)
x ˆ(t) v(t)
−1 M = C(−A + BK)−1 B
assures the following properties of the closed loop:
+ M r(t)
(A.174)
(A.175)
302
A Design of Observer-based Controllers
i) The characteristic polynomial of the controlled system (augmented by the signal models) is det(sI − A + BK) det(sI − S + Bσ Kv ), ii) The signal model (A.165) is not controllable from the reference inputs ri (t), so that the tracking behaviour of the loop is the same as if only the nominal control u(t) = −Kx(t) + M r(t) had been applied to the system (A.154). This can be shown as in Section A.5.2. Example A.12. Design of an observer-based controller incorporating integral action for a MIMO system of the order six with three inputs and outputs We consider a completely controllable and observable linear system with three inputs ui (t), three measured outputs ymi (t) = ˆ yi (t), and a step-like disturbance signal d(t). The state equations (A.154) of the system are parameterized by ⎡ ⎡ ⎤ ⎤ ⎡ ⎤ 0 1 0 0 0 0 0 0 0 0 ⎢ −4 −5 0 0 ⎢ 0.1 ⎥ ⎢ 1 0 0⎥ 3 3⎥ ⎢ ⎢ ⎥ ⎥ ⎢ ⎥ ⎢ 0 0 0 1 ⎢ 0 ⎥ ⎥ ⎢ ⎥ 0 0⎥ 0 0 0⎥ ⎢ ⎢ ⎥ ⎢ A=⎢ ⎥ , B = ⎢ 0 1 0 ⎥ , Bd = ⎢ 0.1 ⎥ ⎢ 7 7 −5 −6 −11 −11 ⎥ ⎢ ⎥ ⎢ ⎥ ⎣ 0 0 0 0 ⎣ 0 ⎦ ⎣ 0 0 0⎦ 0 1⎦ −5 −5 2 2 6 5 0.1 0 0 1 ⎡
Cm
⎤ 8 0 −6 1 −7 1 ≡ C = ⎣ −6 −2 7 3 4 2 ⎦ 4 1 −3 −1 −1 0
and Dd = 0
The eigenvalues of the system are located at s = −1, and the design goal is to obtain a decoupling control that shifts the freely assignable eigenvalues of the system to s = −5. To reject the step-like disturbance, a signal model in the sense of Davison is incorporated in the observer-based controller. The eigenvalues of the state observer of minimal order and the controlled signal model, i.e., the eigenvalues of the overall observer, are also located at s = −5. The system to be controlled can be decoupled by constant state feedback u(t) = −Kx(t) + M r(t) [21]. The pair ⎡ ⎤ ⎡ ⎤ 86 18 −80 −16 −82 −14 10 −5 −5 K = ⎣ 77 21 −70 −14 −91 −27 ⎦ and M = ⎣ 10 −5 −10 ⎦ −35 −11 37 9 51 19 −5 5 10 shifts the freely assignable eigenvalues to s = −5 (the transmission zeros are located at s1/2 = −2 ± j and s3 = −10) and it assures the decoupled reference behaviour
A.6 MIMO Controllers with Disturbance Models
⎡
5 ⎢s+5 0 ⎢ 5 ⎢ y¯(s) = ⎢ 0 ⎢ s+5 ⎣ 0 0
303
⎤ 0
⎥ ⎥ ⎥ r¯(s) (A.176) 0 ⎥ ⎥ 5 ⎦ s+5 The disturbance is modelled by a signal process with the characteristic polynomial det(sI − Sd ) = s. Consequently, the matrices S and Bε in (A.165) have the forms ⎡ ⎤ ⎤ ⎡ 0 0 0 1 0 0 S = ⎣ 0 0 0 ⎦ and Bε = ⎣ 0 1 0 ⎦ 0 0 0 0 0 1 The matrix
⎡
⎤ −1.6 0 1.2 −0.2 1.4 −0.2 0.4 −1.4 −0.6 −0.8 −0.4 ⎦ X = ⎣ 1.2 −0.8 −0.2 0.6 0.2 0.2 0
solves the Sylvester equation (A.171) and this leads to ⎡ ⎤ 0 0.2 0.2 0.6 0.4 ⎦ Bσ = ⎣ −0.4 0.2 −0.2 0 (see (A.172)). A diagonal matrix (S − Bσ Kv ) with eigenvalues at s = −5 is obtained by ⎡ ⎤ 50 −25 −25 Kv = ⎣ 50 −25 −50 ⎦ −25 25 50 and with the above K and Kv (A.173) leads to ⎡ 176 23 −160 −16 −167 Kx = ⎣ 147 21 −135 −9 −171 −65 −11 72 9 96
⎤ −14 −27 ⎦ 24
The necessary state observer of minimal order nO = n − p = 3 can be parameterized by the matrices ⎡ ⎡ ⎤ ⎤ 51.2 −345.6 −1100.8 −5 0 0 1 ⎣ −8 20 36 ⎦ F = ⎣ 0 −5 0 ⎦ and L = 17 −22.4 219.2 685.6 0 0 −5 and the solution of (A.161) is ⎡ −528.6 −151 132.2 1 ⎣ −4 5 16 T = 17 332.2 82 −84.4
17 0 0
0 17 0
⎤ 0 0⎦ 17
304
A Design of Observer-based Controllers
With this matrix T the state estimate x ˆ(t) according to (A.160) is parameterized by ⎤ ⎡ 40.5 −384.75 −668.25 ⎢ −67.5 884.25 1545.75 ⎥ ⎥ ⎢ ⎥ ⎢ 104 −665.5 −1128.5 ⎥ 1 ⎢ ⎥ and ⎢ Ψ= 1066 1727 ⎥ 81 ⎢ ⎥ ⎢ −149 ⎢ −68.5 275.75 450.25 ⎥ ⎦ ⎣ 50.5 −50.75 −0.25 ⎤ ⎡ 445.5 1154.25 729 ⎢ −1039.5 −2463.75 −1701 ⎥ ⎥ ⎢ ⎥ ⎢ 764 2261.5 1227 ⎥ 1 ⎢ ⎥ ⎢ Θ= −3580 −1983 ⎥ 81 ⎢ ⎥ ⎢ −1241 ⎢ −308.5 −1051.25 −483 ⎥ ⎦ ⎣ 101.5 556.25 132 This concludes the parameterization of the observer-based controller with a signal model for disturbance rejection. Figure A.16a shows transients of the loop for ri (t) = rSi 1(t), i = 1, 2, 3 with amplitudes in the regions 0 < rS1 ≤ 1, −1 ≤ rS2 < 0 and for a constant rS3 = −0.9. Due to the decoupled behaviour, first-order transients result for all three outputs, and this behaviour is neither influenced by the state observer nor by the disturbance model (integral action).
1
0.05
y1
0.04
y1
Outputs y(t)
Outputs y(t)
0.5
0
y2
0.03 0.02
y2
0.01
−0.5 0
y3
y3 −1
0
0.5
1
1.5
Time
(a) Reference transients
2
−0.01
0
1
2
3
Time
(b) Disturbance transients
Figure A.16. Reference and disturbance behaviour of the loop
4
A.6 MIMO Controllers with Disturbance Models
305
Figure A.16b shows the reaction of the controlled system to a disturbance signal d(t) = 1(t). An asymptotic rejection of the disturbance is assured in all three controlled outputs y(t), and this would also be the case if the disturbance acted at another location. The quality of the disturbance attenuation can be assessed by the fact that in an open loop situation the disturbance would give rise to the output signals y1 (∞) = 9.9, y2 (∞) = −14.3 and y3 (∞) = 9.2 of the system. For single input systems the design of observer-based controllers (which possibly also incorporate disturbance observers in the sense of Johnson or signal models for disturbance rejection in the sense of Davison) has been discussed both in the time and in the frequency domain. It has been demonstrated that the results obtained in a time domain design of the controller can immediately be converted into equivalent frequency domain parameterizations and vice versa. For systems with more than one manipulated input signal (MIMO systems), only the time domain design has been discussed because the frequency domain representation of such control systems is based on coprime polynomial matrix fraction descriptions, which are not as commonly used as the state space representations. The frequency domain design of observer-based controllers for MIMO systems (also on the basis of reduced-order observers) which allows a direct conversion of the time domain results into equivalent frequency domain parameterizations and vice versa can, for example, be found in the following papers [27, 28, 29, 30, 31]. The basis of the frequency domain approach to the design of reduced-order observers which allows to formulate the one-to-one relationship with the time domain design can be found in [29]. This becomes possible by introducing a (non-minimal) representation of reduced-order observers in the time domain on the basis of a full-order model of the system. Thus the connecting relations between the time and the frequency domain descriptions of reduced-order observers can be derived. Using these results, the frequency domain design of compensators based on completely reduced-order observers [28] and general observers of the order nO = n − κ with 0 ≤ κ ≤ p can be formulated [30]. Also the design of controllers that incorporate signal models in the sense of Davison is feasible in the frequency domain [31], and it gives the same results as the time domain approach discussed in this section. It should be noted that the parameterization of the reduced-order observer in [29] also constitutes the basis of the design of optimal reduced-order estimators in the frequency domain [27].
References
1. Ackermann, J.: Sampled-data control systems: analysis and synthesis, robust system design. Springer, Berlin Heidelberg New York (1985) 2. Anderson, B.D.O.: A system theory criterion for positive real matrices. SIAM Journal of Control 5, 171–182 (1967) 3. Anderson, B.D.O., Moore, J.B.: Optimal control - Linear quadratic methods. Prentice Hall, Englewood Cliffs, NJ (1989) 4. Astr¨ om, K.J., Wittenmark, B.: Computer controlled systems: Theory and design. Prentice Hall, Englewood Cliffs, NJ (1997) 5. Barbu, C., Reginatto, R., Teel, A.R., Zaccarian, L.: Anti-windup for exponentially unstable linear systems with rate and magnitude constraints. In: V. Kapila, K.M. Grigoriadis (eds.) Actuator saturation control. Marcel Dekker, New York (2002) 6. Bateman, A., Lin, Z.: An analysis and design method for discrete-time linear systems under nested saturation. IEEE Transactions on Automatic Control 47, 1305–1310 (2002) 7. Bernstein, D., Michel, A.: A chronological bibliography on saturating actuators. International Journal Robust Nonlinear Control 5, 375–380 (1995) 8. B¨ uhler, H.: Regelkreise mit Begrenzungen, vol. 828. VDI-Verlag, D¨ usseldorf (2000) 9. Campo, P.J., Morari, M.: Robust control of processes subject to saturation nonlinearities. Computers Chemical Engineering 14, 343–358 (1990) 10. Campo, P.J., Morari, M., Nett, C.N.: Multivariable anti-windup and bumpless transfer: a general theory. In: Proceedings of the American Control Conference, pp. 1706–1711. Pittsburg, USA (1989) 11. da Silva, J.M.G., Tarbouriech, S., Garcia, G.: Local stabilization of linear systems under amplitude and rate saturating actuators. IEEE Transactions on Automatic Control 48, 842–847 (2003) 12. Dahleh, M.A., Pearson, J.B.: L1-optimal compensators for continuous-time systems. IEEE Transactions on Automatic Control 32, 889–895 (1987) 13. Davison, E.J.: The robust control of a servomechanism problem for linear timeinvariant multivariable systems. IEEE Transactions on Automatic Control 21, 25–34 (1976) 14. Davison, E.J., Goldenberg, A.: Robust control of a general servomechanism problem: The servo-compensator. Automatica 11, 461–471 (1975)
308
References
15. Deutscher, J.: A linear differential operator approach to flatness based tracking for linear and non-linear systems. International Journal of Control 76, 266–276 (2003) 16. Deutscher, J., Hippe, P.: A frequency domain approach to the partial decoupling of non-minimum phase systems and non-decouplable systems. In: Proceedings of the 5th European Control Conference, ECC’99, F1019-2. Karlsruhe, Germany (1999) 17. Dornheim, M.A.: Report pinpoints factors leading to the yf-22 crash. Aviation Week and Space Technology, pp. 53–54 (1992) 18. Doyle, J.C., Smith, R.S., Enns, D.F.: Control of plants with input saturation nonlinearities. In: Proceedings of the 1987 American Control Conference, pp. 1034–1039. Minneapolis, MN (1987) 19. Edwards, C., Postlethwaite, I.: Anti-windup and bumpless-transfer schemes. Automatica 34, 199–210 (1998) 20. Fahmy, M.M., O’Reilly, J.: Eigenstructure assignment in linear multivariable systems – a parametric solution. IEEE Transactions on Automatic Control 28, 990–994 (1983) 21. Falb, P.L., Wolovich, W.A.: Decoupling in the design and synthesis of multivariable control systems. IEEE Transactions on Automatic Control 12, 651–659 (1967) 22. F¨ ollinger, O.: Regelungstechnik. H¨ uthig-Verlag, Heidelberg (1994) 23. Glattfelder, A.H., Schaufelberger, W.: Control Systems with input and output constraints. Springer, Berlin Heidelberg New York London (2003) 24. Graebe, S.F., Ahlen, A.: Bumpless transfer. In: W.S. Levine (ed.) The Control Handbook, chap. 20, pp. 381–388. CRC Press, Boca Raton, FL (1996) 25. Hanus, R., Kinnaert, M., Henrotte, J.L.: Conditioning technique, a general antiwindup and bumpless transfer method. Automatica 23, 729–739 (1987) 26. Hippe, P.: Der Entwurf von Zustandsreglern unter dem Gesichtspunkt minimaler Reglerempfindlichkeit. Ph.D. Thesis, Universit¨at Erlangen-N¨ urnberg (1976) 27. Hippe, P.: Design of reduced-order optimal estimators directly in the frequency domain. International Journal of Control 50, 2599–2614 (1989) 28. Hippe, P.: Parameterization of reduced-order compensator in the frequency domain. International Journal of Control 49, 1143–1162 (1989) 29. Hippe, P.: A nonminimal representation of reduced-order observers. Automatica 26, 405–409 (1990) 30. Hippe, P.: Design of observer based compensators: the polynomial approach. Kybernetika 27, 125–150 (1991) 31. Hippe, P.: Design of MIMO compensators for systems with unmeasurable disturbances: the polynomial approach. Automatica 28, 1003–1009 (1992) 32. Hippe, P., Wurmthaler, C.: Zustandsregelung. Springer, Berlin Heidelberg New York (1985) 33. Hippe, P., Wurmthaler, C.: Controller and plant windup prevention in MIMO loops with input saturation. In: Proceedings of the 4th European Control Conference, ECC’97, 493. Brussels, Belgium (1997) 34. Hippe, P., Wurmthaler, C.: Systematic closed-loop design in the presence of input saturation. Automatica 35, 689–695 (1999) 35. Hippe, P., Wurmthaler, C., Glattfelder, A.H., Schaufelberger, W.: Regelung von Strecken mit Stellbegrenzung. In: S. Engell (ed.) Entwurf nichtlinearer Regelungen. Oldenbourg Verlag, M¨ unchen (1995)
References
309
36. Howze, J.W., Pearson, J.B.: Decoupling and arbitrary pole placement in linear systems using output feedback. IEEE Transactions on Automatic Control 15, 660–663 (1970) 37. Hsu, J.C., Meyer, A.U.: Modern Control Principles and Applications. McGraw Hill, New York (1968) 38. Johnson, C.D.: Accommodation of external disturbances in linear regulator and servomechanism problems. IEEE Transactions on Automatic Control 16, 635– 644 (1971) 39. Johnson, C.D.: Accommodation of disturbances in optimal control problems. International Journal of Control 15, 209–231 (1972) 40. Kailath, T.: Linear Systems. Prentice Hall, Englewood Cliffs, NJ (1980) 41. Kendi, T.A., Doyle, F.J.: An anti-windup scheme for multivariable nonlinear systems. Journal Process Control 7, 329–343 (1997) 42. Khalil, H.K.: Nonlinear Systems. Prentice Hall, Englewood Cliffs, NJ (1996) 43. Kothare, M.V., Campo, P.J., Morari, M., Nett, C.N.: A unified framework for the study of anti-windup designs. Automatica 30, 1869–1883 (1994) 44. Kothare, M.V., Morari, M.: Multiplyer theory for stability analysis of antiwindup control systems. Automatica 35, 917–928 (1999) 45. Lenorovitz, J.M.: Gripen control problems resolved through in-flight, ground simulations. Aviation Week and Space Technology, pp. 74–75 (1990) 46. Lin, Z.: Semi-global stabilization of linear systems with position and rate-limited actuators. Systems and Control Letters 30, 1–11 (1997) 47. Luenberger, D.G.: Observers for multivariable systems. IEEE Transactions on Automatic Control 11, 190–197 (1966) 48. Luenberger, D.G.: An introduction to observers. IEEE Transactions on Automatic Control 16, 596–602 (1971) 49. MacFarlane, A.G.J., Karcanias, N.: Poles and zeros of linear multivariable systems: a survey of the algebraic, geometric and complex-variable theory. International Journal of Control 24, 33–74 (1976) 50. Mhatre, S., Brosilow, C.: Multivariable model state feedback. In: Proceedings of the IFAC World Congress, p. 139. San Francisco, CA (1996) 51. Moore, B.C.: On the flexibility offered by state feedback in multivariable systems beyond closed loop eigenvalue assignment. IEEE Transactions on Automatic Control 21, 689–692 (1976) 52. Morse, A.S., Wonham, W.M.: Status of noninteracting control. IEEE Transactions on Automatic Control 16, 568–581 (1971) 53. M¨ uller, K.: L1-optimale Abtastregelungen mit minimaler Stellgr¨osse. 844. VDIVerlag, D¨ usseldorf (2000) 54. O’Reilly, J.: Observers for linear systems. Academic Press, London (1983) 55. Peng, Y., Vrancic, D., Hanus, R.: Anti-windup, bumpless, and conditioning transfer techniques for PID controllers. IEEE Control Systems 16, 48–57 (1996) 56. Peng, Y., Vrancic, D., Hanus, R., Weller, S.S.R.: Anti-windup designs for multivariable controllers. Automatica 34, 1559–1565 (1998) 57. Roppenecker, G.: On parametric state feedback design. International Journal of Control 43, 793–804 (1986) 58. Rosenbrock, H.H.: State space and multivariable theory. Nelson, London (1970) 59. Sastry, S.: Nonlinear Systems. Springer, Berlin Heidelberg New York London (1999)
310
References
60. Schmitt, G.: Frequency domain evaluation of circle criterion, Popov criterion and off-axis cricle criterion in the MIMO case. International Journal of Control 72, 1299–1309 (1999) 61. Schneider, G.: Was du heut’ nicht kannst besorgen, das verschiebe halt auf morgen. Eine generelle Methode zur Kompensation von Stellgr¨ossenbeschr¨ ankungen. Automatisierungstechnik 34, 59–65 (1986) 62. Seron, M.M., Goodwin, G.C., Graebe, S.F.: Control system design issues for unstable linear systems with saturated inputs. IEE Proc. Control Theory and Applications 142, 335–344 (1995) 63. Shim, J.H., Goodwin, G.C., Graebe, S.F.: MIMO design with saturating actuators. In: Proceedings of the CESA’96 IMACS Multiconference, pp. 1026–1031. Lille, France (1996) 64. Silverman, L.M.: Decoupling with state feedback and precompensation. IEEE Transactions on Automatic Control 15, 487–489 (1970) 65. Skogestad, S., Postlethwaite, I.: Multivariable feedback control. John Wiley & Sons, Chichester (1996) 66. Teel, A.R.: Anti-windup for exponentially unstable systems. International Journal Robust and Nonlinear Control 9, 701–716 (1999) 67. Teel, A.R., Kapoor, N.: The L2 anti-windup problem: its definition and solution. In: Proceedings of the 4th European Control Conference, ECC’97. Brussels, Belgium (1997) 68. Turner, M.C., Walker, D.J.: Linear quadratic bumpless transfer. Automatica 36, 1089–1101 (2000) 69. Vidyasagar, M.: Nonlinear Systems Analysis. Prentice Hall, Englewood Cliffs, NJ (1993) 70. Walgama, K.S., R¨ onnb¨ ack, S., Sternby, J.: Generalization of conditioning technique for anti-windup compensators. IEE Proceedings Control Theory and Applications 139, 109–118 (1992) 71. Walgama, K.S., Sternby, J.: Conditioning technique for multiinput multioutput processes with input saturation. IEE Proceedings Control Theory and Applications 140, 231–241 (1993) 72. Wang, Q.G.: Decoupling Control. Springer, Heidelberg New York London (2003) 73. Wolovich, W.A.: Linear multivariable systems. Springer, Heidelberg New York London (1974) 74. Wurmthaler, C.: Ein Beitrag zum Entwurf von Zustandsreglern und deren Einsatz unter praxisnahen Randbedingungen. Ph.D. Thesis, Universit¨at ErlangenN¨ urnberg (1979) 75. Zaccarian, L., Teel, A.R.: The L2 (l2) bumpless transfer problem for linear plants: its definition and solution. Automatica 41, 1273–1280 (2005) 76. Zheng, A., Kothare, M.V., Morari, M.: Anti-windup design for internal model control. International Journal of Control 60, 1015–1024 (1994) 77. Zhou, K., Doyle, J.C., Glover, K.: Robust and optimal control. Prentice Hall, Englewood Cliffs, NJ (1996)
Index
additional dynamic element (ADE) 60, 65, 77 frequency domain version 66, 69, 72, 73, 75, 85, 138, 140, 153, 154, 202, 203, 205, 219, 221, 227 time domain version 78, 79, 167, 168, 185, 223, 233 all pass-like behaviour due to a premature retraction of the input signal 67, 205, 234 amplitude and rate saturation 197 approximate model 198 block diagram 198 ersatz model 199 model 197 modified ersatz model 212 amplitude restriction see amplitude saturation amplitude saturation 3, 16, 27, 44, 162, 199 anti-windup see controller windup prevention or plant windup prevention augmented system 44, 51, 267, 269, 276, 283, 290, 301 backlash 67, 73, 75–77, 189, 235 bumpless transfer 217 between two controllers which cause plant windup 221 in the scheme of Schneider and Teel and Kapoor 220 to an observer-based controller 219
cascaded control 92 stable systems 92, 94 unstable systems 96, 99 characteristic polynomial closed loop 41, 75, 152, 247, 287, 288, 291 observer 34, 57, 248, 250, 271 overall observer 57, 286, 296 signal process 44, 56, 265, 281, 286, 300 state feedback 34, 51, 57, 61, 138, 163, 243, 250, 266, 271, 286 state-plus-disturbance observer 49, 271, 278 circle criterion 61, 167 classical control 4, 10, 23, 24, 41, 69, 72, 74 command input see reference input conditioning technique 81, 83, 86, 236 control input 27, 299 controlled output 27, 299 controller realization 256 controller windup 3, 4, 33, 229, 231 prevention 21, 83, 236 frequency domain approach 34–36, 39, 49, 75, 83, 85, 86, 152, 154 in classical controllers 23–26, 40, 42, 71, 75 in the presence of disturbance models 51, 52, 138, 140, 142, 169, 209, 223 in the presence of disturbance observers 43, 46
312
Index
time domain approach 27, 30, 33, 38, 46, 54, 166, 171 coprime matrix fraction descriptions 305 coprime polynomials 252 d.c. motor 4 decoupling 17, 161, 163, 169, 173, 176, 178–180, 182, 183, 186, 191, 192, 195, 299, 302 decoupling element 17 decoupling in steady state 162, 299 degrees of freedom observer 254, 258, 259 observer-based controller 252, 255, 260, 274, 279, 290, 297 state feedback 163 describing function 62 design equation in the frequency domain disturbance rejecting controller (Davison) 57, 289 disturbance rejecting controller (Johnson) 48, 272 observer-based controller 34, 251 Diophantine equation 250 directionality problem 16, 174, 177, 178, 229, 237 solution of Campo and Morari 175 systematic solution 181, 186, 192 disturbance model see signal process disturbance observer see observerbased controllers with disturbance observer disturbance process see signal process disturbance rejection 15, 100, 106, 131, 189, 224, 258, 259, 263, 264, 277, 278, 294, 304 eigenvalue assignment
impulse response 107 incidence vector 56, 286, 292 independent parameter 253 input constraint see amplitude saturation integral action 4–6, 23–26, 39, 41, 53, 65, 70, 74, 91, 141, 142, 147, 154, 209 integral windup see controller windup inverted pendulum 141, 148 Kalman-Yakubovich lemma
167
Laplace transform of a signal (notation) 3 L1 -norm 107, 110, 135, 183, 193, 200, 210 manipulated input see control input matrix fraction description 90 matrix transfer function 16, 89, 164, 166, 170, 176, 179, 183, 192, 194, 302 maximum reference signal applied 28, 165 sustainable region 28, 163, 164 usable region 164 used region 28, 165 measurements 27, 299 MIMO system 16, 88, 90, 162, 164, 166, 168, 178, 181, 185, 191, 200, 299, 302 MIMO systems with constraints 162, 237 multiple input multiple output systems see MIMO systems nonlinear cascaded control cascaded control
see
242, 252
feedback control 104, 105 feedforward control 104, 105 filtered set point 81 flat output 243 flexible structures 124 general controller 3, 4, 40, 83, 90, 151 generalized antireset windup 81, 83, 236
observability index 245, 252 observation error 21, 29–31, 92, 137, 231, 239, 244, 247, 248 observer canonical form 256, 257 observer of a linear functional 245 observer structure frequency domain version 36 of general compensators 40, 42, 75 time domain version 29 observer technique 237
Index frequency domain version 36, 40, 75, 85, 140, 147, 152, 153 time domain version 29, 33, 39, 46, 53, 54, 138, 168, 171, 185, 214 observer-based controllers 29, 43, 50, 246, 266, 281, 300 frequency domain design for MIMO systems 305 frequency domain design for single input systems 34, 251, 255, 260, 263 with disturbance observer 48, 269–274, 279 with signal model 57, 286–290, 296–298 time domain design for MIMO systems 299, 300 with signal models 299–301, 302 time domain design for single input systems 28, 29, 32, 37, 241–246, 254, 257, 259, 262 with disturbance observer 43, 44, 266–268, 275–277 with signal model 50–52, 281–285, 292 oscillatory plant windup see plant windup overall observer 285 override control 24 phase design aid 63, 64, 68, 71–73, 75, 86, 89, 91, 112, 121, 154, 157, 203, 205, 223, 227, 234 MIMO version 167, 171, 172 PI controller 4, 5, 21, 23, 24, 26, 40, 41, 70, 72, 74, 151 PID controller 21, 23, 40, 151 plant windup 229 in stable systems 6, 9, 11, 221, 232 in unstable systems 14, 55, 234 prevention in MIMO systems stable systems 88, 90, 167, 185 unstable systems 182, 186 prevention in single input systems B¨ uhler’s approach 92 criteria 61, 62 stable systems 59, 66, 69, 72, 78, 79, 123, 128, 133, 138, 140, 153, 214
313
unstable systems 96, 99, 100, 103, 108, 109, 113, 116, 119–122, 143–145, 148–150 pole assignment see eigenvalue assignment pole placement see eigenvalue assignment polynomial matrix fraction description 305 Popov criterion 62 pre-filter 5, 41, 67, 69, 72 premature retraction of input signal see backlash rate saturation see amplitude and rate saturation reference input frequency domain 35, 39, 41, 57, 83, 248, 249, 253, 269, 291 time domain 28, 30, 44, 50, 51, 53, 92, 93, 96, 242, 246, 266, 282, 283, 285, 299 reference shaping filter 105, 109, 116, 123, 128, 133, 152, 153, 182, 185, 186 for stable systems 123, 128, 132, 133, 155 with proven stability 123, 133 for unstable systems 108–111, 114–117, 119–122, 143, 148 with proven stability 108–110, 145 MIMO version 182, 186, 192, 194, 195 with proven stability 182, 195 robustness to changing input locations of the disturbances 267, 291 to inaccurate controller realization 256 to plant parameter variations 267, 281 saturating actuator see amplitude saturation or rate saturation saturation nonlinearity 3, 16, 27, 44, 162 scaling of variables 3 set point see reference input
314
Index
signal model see signal process signal process 43, 50, 52, 56, 137, 142, 166, 169, 185, 209, 221, 223, 265, 266, 268, 272, 275, 278, 281–283, 285, 286, 292, 300, 303 single input system 3, 27, 34, 41, 47, 50, 92, 108, 136, 151, 200, 206, 241, 242, 266, 269, 281, 286 sinusoidal disturbance 45, 53, 168, 189, 222, 274, 292, 296 slew rate limitation 201 state estimate 29, 30, 53, 137, 138, 168, 185, 202, 208, 219–221, 245, 246, 285, 300 feedback frequency domain approach 37, 243, 305 time domain approach 28, 162, 242, 299 observer 29, 136, 244, 300 frequency domain design 305 full-order 257, 259 minimal order 32, 46, 54, 142, 170, 204, 210, 223, 254, 276, 293, 303 of a linear functional 245, 252 reduced-order 29, 244, 262 static gain 28, 97, 103, 113, 164, 169, 178 steady state gain see static gain
switching between two controllers 221 Sylvester equation 51, 138, 166, 284, 301 Sylvester resultant 252 system of linear equations 251, 272, 289 three-tank system 6, 7 time constant of ersatz model 199, 212 tracking 28, 35, 41, 44, 47, 50, 56, 57, 92, 105, 138, 140, 152, 153, 162, 166, 168, 185, 201, 202, 242, 246, 248, 249, 270, 282, 285, 299 trajectory generator see reference shaping filter two degrees of freedom structure 3, 4, 35, 40, 83, 249 unstable systems 12, 99, 103, 108, 113, 118, 141, 148, 206, 208, 234 windup see controller or plant windup windup due to rate saturation prevention in stable systems 200, 204 prevention in unstable systems 206, 208 windup prevention method of Schneider and Teel and Kapoor 88, 90 unified framework 86, 236
Other titles published in this Series (continued): Soft Sensors for Monitoring and Control of Industrial Processes Luigi Fortuna, Salvatore Graziani, Alessandro Rizzo and Maria Gabriella Xibilia Publication due July 2006 Analysis and Control Techniques for Distribution Shaping in Stochastic Processes Michael G. Forbes, J. Fraser Forbes, Martin Guay and Thomas J. Harris Publication due August 2006 Adaptive Voltage Control in Power Systems Giuseppe Fusco and Mario Russo Publication due August 2006 Distributed Embedded Control Systems Matjaˇz Colnariˇc, Domen Verber and Wolfgang A. Halang Publication due October 2006 Practical PID Control Antonio Visioli Publication due November 2006
Modelling and Analysis of Hybrid Supervisory Systems Emilia Villani, Paulo E. Miyagi and Robert Valette Publication due November 2006 Model-based Process Supervision Belkacem Ould Bouamama and Arun K. Samantaray Publication due February 2007 Magnetic Control of Tokamak Plasmas Marco Ariola and Alfredo Pironti Publication due May 2007 Process Control Jie Bao, and Peter L. Lee Publication due June 2007 Optimal Control of Wind Energy Systems Iulian Munteanu, Antoneta Iuliana Bratcu, Nicolas-Antonio Cutululis and Emil Ceanga Publication due November 2007