This preview shows pages 1–5. Sign up to view the full content.
This preview has intentionally blurred sections. Sign up to view the full version.
View Full DocumentThis preview has intentionally blurred sections. Sign up to view the full version.
View Full Document
Unformatted text preview: Advanced Textbooks in Control and Signal Processing 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, UK Other titles published in this series:
Genetic Algorithms K.F. Man, K.S. Tang and S. Kwong Neural Networks for Modelling and Control of Dynamic Systems M. Nørgaard, O. Ravn, L.K. Hansen and N.K. Poulsen Modelling and Control of Robot Manipulators (2nd Edition) L. Sciavicco and B. Siciliano Fault Detection and Diagnosis in Industrial Systems L.H. Chiang, E.L. Russell and R.D. Braatz Soft Computing L. Fortuna, G. Rizzotto, M. Lavorgna, G. Nunnari, M.G. Xibilia and R. Caponetto Statistical Signal Processing T. Chonavel Discretetime Stochastic Processes (2nd Edition) T. Söderström Parallel Computing for Realtime Signal Processing and Control M.O. Tokhi, M.A. Hossain and M.H. Shaheed Multivariable Control Systems P. Albertos and A. Sala Control Systems with Input and Output Constraints A.H. Glattfelder and W. Schaufelberger Analysis and Control of Nonlinear Process Systems K. Hangos, J. Bokor and G. Szederkényi Model Predictive Control (2nd Edition) E.F. Camacho and C. Bordons Principles of Adaptive Filters and Selflearning Systems A. Zaknich Digital Selftuning Controllers V. Bobál, J. Böhm, J. Fessl and J. Macháˇek c Control of Robot Manipulators in Joint Space R. Kelly, V. Santibáñez and A. Loría Active Noise and Vibration Control M.O. Tokhi Publication due November 2005 D.W. Gu, P. Hr. Petkov and M. M. Konstantinov Robust Control Design with MATLAB®
With 288 Figures 123 DaWei Gu, PhD, DIC, CEng Engineering Department, University of Leicester, University Road, Leicester, LE1 7RH, UK Petko Hristov Petkov, PhD Department of Automatics, Technical University of Soﬁa, 1756 Soﬁa, Bulgaria Mihail Mihaylov Konstantinov, PhD University of Architecture, Civil Engineering and Geodesy, 1 Hristo Smirnenski Blvd., 1046 Soﬁa, Bulgaria British Library Cataloguing in Publication Data Gu, D.W. Robust control design with MATLAB.  (Advanced textbooks in control and signal processing) 1. MATLAB (Computer ﬁle) 2. Robust control 3. Control theory I. Title II. Petkov, P. Hr (Petko Hr.), 1948III. Konstantinov, M. M. (Mihail M.), 1948629.8’312 ISBN10: 1852339837 Library of Congress Control Number: 2005925110 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. Advanced Textbooks in Control and Signal Processing series ISSN 14392232 ISBN10: 1852339837 ISBN13: 9781852339838 Springer Science+Business Media springeronline.com © SpringerVerlag London Limited 2005 MATLAB® and Simulink® are the registered trademarks of The MathWorks, Inc., 3 Apple Hill Drive, Natick, MA 017602098, U.S.A. http://www.mathworks.com The software disk accompanying this book and all material contained on it is supplied without any warranty of any kind. The publisher accepts no liability for personal injury incurred through use or misuse of the disk. The use of registered names, trademarks, etc. in this publication does not imply, even in the absence of a speciﬁc 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. Typesetting: Camera ready by authors Production: LETEX Jelonek, Schmidt & Vöckler GbR, Leipzig, Germany Printed in Germany 69/3141543210 Printed on acidfree paper SPIN 11309833 To our families Series Editors’ Foreword The topics of control engineering and signal processing continue to flourish and develop. In common with general scientific investigation, new ideas, concepts and interpretations emerge quite spontaneously and these are then discussed, used, discarded or subsumed into the prevailing subject paradigm. Sometimes these innovative concepts coalesce into a new subdiscipline within the broad subject tapestry of control and signal processing. This preliminary battle between old and new usually takes place at conferences, through the Internet and in the journals of the discipline. After a little more maturity has been acquired by the new concepts then archival publication as a scientific or engineering monograph may occur. A new concept in control and signal processing is known to have arrived when sufficient material has evolved for the topic to be taught as a specialised tutorial workshop or as a course to undergraduate, graduate or industrial engineers. Advanced Textbooks in Control and Signal Processing are designed as a vehicle for the systematic presentation of course material for both popular and innovative topics in the discipline. It is hoped that prospective authors will welcome the opportunity to publish a structured and systematic presentation of some of the newer emerging control and signal processing technologies in the textbook series. It is always interesting to look back at how a particular field of control systems theory developed. The impetus for change and realization that a new era in a subject is dawning always seems to be associated with short, sharp papers that make the academic community think again about the prevalent theoretical paradigm. In the case of the evolution of robust control theory, the conference papers of Zames (circa. 1980) on robustness and the very short paper of Doyle on the robustness of linear quadratic Gaussian control systems seem to stand as landmarks intimating that control theory was going to change direction again. And the change did come; all through the 1980s came a steady stream of papers rewriting control theory, introducing system uncertainty, H robust control and µsynthesis as part of a new control paradigm. Change, however did not come easily to the industrial applications community because the new theories and methods were highly mathematical. In the early stages even the classical feedback diagram which so often opened control engineering courses was replaced by a less intuitively obvious diagram. Also it viii Series Editors’ Foreword was difficult to see the benefits to be gained from the new development. Throughout the 1990s the robust control theory and methods consolidated and the first major textbooks and software toolboxes began to appear. Experience with some widely disseminated benchmark problems such as control design for distillation columns, the control design for harddisk drives, and the invertedpendulum control problem helped the industrial community see how to apply the new method and the control benefits that accrued. This advanced course textbook on robust control system design using MATLAB® by DaWei Gu, Petko Petkov and Mihail Konstantinov has arrived at a very opportune time. More than twenty years of academic activity in the robust control field forms the bedrock on which this course book and its set of insightful applications examples are developed. Part I of the volume presents the theory – a systematic presentation of: systems notation, uncertainty modelling, robust design specification, the H design method, H loop shaping, µanalysis and synthesis and finally the algorithms for providing the loworder controllers that will be implemented. This is a valuable and concise presentation of all the necessary theoretical concepts prior to their application which is covered in Part II. Inspired by the adage “practice makes perfect”, Part II of the volume comprises six fully workedout extended examples. To learn how to apply the complex method of H design and µsynthesis there can be no surer route than to work through a set of carefully scripted examples. In this volume, the examples range from the academic massdamperspring system through to the industrially relevant control of a distillation column and a flexible manipulator system. The benchmark example of the ubiquitous harddisk drive control system is also among the examples described. The MATLAB® tools of the Robust Control Toolbox, the Control System Toolbox and Simulink® are used in these application examples. The CDROM contains all the necessary files and instructions together with a pdf containing colour reproductions of many of the figures in the book. In summary, after academic development of twenty years or so, the robust control paradigm is now fully fledged and forms a vital component of advanced control engineering courses. This new volume in our series of advanced control and signal processing course textbooks on applying the methods of H and µsynthesis control design will be welcomed by postgraduate students, lecturers and industrial control engineers alike. M.J. Grimble and M.A. Johnson Glasgow, Scotland, U.K. February 2005 Preface Robustness has been an important issue in controlsystems design ever since 1769 when James Watt developed his ﬂyball governor. A successfully designed control system should be always able to maintain stability and performance level in spite of uncertainties in system dynamics and/or in the working environment to a certain degree. Design requirements such as gain margin and phase margin in using classical frequencydomain techniques are solely for the purpose of robustness. The robustness issue was not that prominently considered during the period of 1960s and 1970s when system models could be much more accurately described and design methods were mainly mathematical optimisations in the time domain. Due to its importance, however, the research on robust design has been going on all the time. A breakthrough came in the late 1970s and early 1980s with the pioneering work by Zames [170] and Zames and Francis [171] on the theory, now known as the H∞ optimal control theory. The H∞ optimisation approach and the µsynthesis/analysis method are well developed and elegant. They provide systematic design procedures of robust controllers for linear systems, though the extension into nonlinear cases is being actively researched. Many books have since been published on H∞ and related theories and methods [26, 38, 65, 137, 142, 145, 174, 175]. The algorithms to implement the design methods are readily available in software packages such as MATLAB r and Slicot [119]. However, from our experience in teaching and research projects, we have felt that a reasonable percentage of people, students as well as practising engineers, still have diﬃculties in applying the H∞ and related theory and in using MATLAB r routines. The mathematics behind the theory is quite involved. It is not straightforward to formulate a practical design problem, which is usually nonlinear, into the H∞ or µ design framework and then apply MATLAB r routines. This hinders the application of such a powerful theory. It also motivated us to prepare this book. This book is for people who want to learn how to deal with robust controlsystem design problems but may not want to research the relevant theoretic developments. Methods and solution formulae are introduced in the ﬁrst part x Preface of the book, but kept to a minimum. The majority of the book is devoted to several practical design case studies (Part II). These design examples, ranging from teaching laboratory experiments such as a massdamperspring system to complex systems such as a supersonic rocket autopilot and a ﬂexiblelink manipulator, are discussed with detailed presentations. The design exercises are all conducted using the new Robust Control Toolbox v3.0 and are in a handson, tutorial manner. Studying these examples with the attached MATLAB r and Simulink r programs (170 plus M and MDLﬁles) used in all designs will help the readers learn how to deal with nonlinearities involved in the system, how to parameterise dynamic uncertainties and how to use MATLAB r routines in the analysis and design, etc.. It is also hoped that by going through these exercises the readers will understand the essence of robust control system design and develop their own skills to design real, industrial, robust control systems. The readership of this book is postgraduates and control engineers, though senior undergraduates may use it for their ﬁnalyear projects. The material included in the book has been adopted in recent years for MSc and PhD engineering students at Leicester University and at the Technical University of Soﬁa. The design examples are independent of each other. They have been used extensively in the laboratory projects on the course Robust and Optimal Control Systems taught in a masters programme in the Technical University of Soﬁa. The authors are indebted to several people and institutions who helped them in the preparation of the book. We are particularly grateful to The MathWorks, Inc. for their continuous support, to Professor Sigurd Skogestad of Norwegian University of Science and Technology who kindly provided the nonlinear model of the Distillation Column and to Associate Professor Georgi Lehov from Technical University of Russe, Bulgaria, who developed the uncertainty model of the FlexibleLink Manipulator. Using the CD ROM
The attached CD ROM contains six folders with M and MDLﬁles intended for design, analysis and simulation of the six design examples, plus a pdf ﬁle with colour hypertext version of the book. In order to use the M and MDLﬁles the reader should have at his (her) disposition of MATLAB r v7.0.2 with Robust Control Toolbox v 3.0, Control System Toolbox v6.1 and Simulink r v6.1. Further information on the use of the ﬁles can be found in the ﬁle Readme.m on the disc. Contents Part I Basic Methods and Theory 1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.1 Controlsystem Representations . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.2 System Stabilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 1.3 Coprime Factorisation and Stabilising Controllers . . . . . . . . . . . . 7 1.4 Signals and System Norms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.4.1 Vector Norms and Signal Norms . . . . . . . . . . . . . . . . . . . . . 9 1.4.2 System Norms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Modelling of Uncertain Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1 Unstructured Uncertainties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2 Parametric Uncertainty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3 Linear Fractional Transformations . . . . . . . . . . . . . . . . . . . . . . . . . 2.4 Structured Uncertainties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Robust Design Speciﬁcations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.1 Smallgain Theorem and Robust Stabilisation . . . . . . . . . . . . . . . 3.2 Performance Consideration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3 Structured Singular Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . H∞ 4.1 4.2 4.3 Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Mixed Sensitivity H∞ Optimisation . . . . . . . . . . . . . . . . . . . . . . . . 2DegreeOfFreedom H∞ Design . . . . . . . . . . . . . . . . . . . . . . . . . . H∞ Suboptimal Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3.1 Solution Formulae for Normalised Systems . . . . . . . . . . . . 4.3.2 Solution to S overKS Design . . . . . . . . . . . . . . . . . . . . . . . 4.3.3 The Case of D22 = 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3.4 Normalisation Transformations . . . . . . . . . . . . . . . . . . . . . . 4.3.5 Direct Formulae for H∞ Suboptimal Central Controller 4.4 Formulae for Discretetime Cases . . . . . . . . . . . . . . . . . . . . . . . . . . 13 13 17 20 23 25 25 28 29 35 35 38 39 39 43 44 45 47 50 2 3 4 xii Contents 5 H∞ Loopshaping Design Procedures . . . . . . . . . . . . . . . . . . . . . . 5.1 Robust Stabilisation Against Normalised Coprime Factor Perturbations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.2 Loopshaping Design Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . 5.3 Formulae for the Discretetime Case . . . . . . . . . . . . . . . . . . . . . . . 5.3.1 Normalised Coprime Factorisation of Discretetime Plant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.3.2 Robust Controller Formulae . . . . . . . . . . . . . . . . . . . . . . . . 5.3.3 The Strictly Proper Case . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.3.4 On the Three DARE Solutions . . . . . . . . . . . . . . . . . . . . . . 5.4 A Mixed Optimisation Design Method with LSDP . . . . . . . . . . . µAnalysis and Synthesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.1 Consideration of Robust Performance . . . . . . . . . . . . . . . . . . . . . . 6.2 µSynthesis: DK Iteration Method . . . . . . . . . . . . . . . . . . . . . . . . 6.3 µSynthesis: µK Iteration Method . . . . . . . . . . . . . . . . . . . . . . . . Lowerorder Controllers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.1 Absoluteerror Approximation Methods . . . . . . . . . . . . . . . . . . . . 7.1.1 Balanced Truncation Method . . . . . . . . . . . . . . . . . . . . . . . 7.1.2 Singular Perturbation Approximation . . . . . . . . . . . . . . . . 7.1.3 Hankelnorm Approximation . . . . . . . . . . . . . . . . . . . . . . . . 7.1.4 Remarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.2 Reduction via Fractional Factors . . . . . . . . . . . . . . . . . . . . . . . . . . 7.3 Relativeerror Approximation Methods . . . . . . . . . . . . . . . . . . . . . 7.4 Frequencyweighted Approximation Methods . . . . . . . . . . . . . . . . 55 56 58 61 61 62 63 65 67 71 71 74 77 79 80 81 82 83 85 86 90 92 6 7 Part II Design Examples 8 Robust Control of a MassDamperSpring System . . . . . . . . . 101 8.1 System Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 8.2 Frequency Analysis of Uncertain System . . . . . . . . . . . . . . . . . . . . 107 8.3 Design Requirements of Closedloop System . . . . . . . . . . . . . . . . 108 8.4 System Interconnections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112 8.5 Suboptimal H∞ Controller Design . . . . . . . . . . . . . . . . . . . . . . . . . 115 8.6 Analysis of Closedloop System with Khin . . . . . . . . . . . . . . . . . . 117 8.7 H∞ Loopshaping Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 8.8 Assessment of H∞ Loopshaping Design . . . . . . . . . . . . . . . . . . . . 128 8.9 µSynthesis and DK Iterations . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131 8.10 Robust Stability and Performance of Kmu . . . . . . . . . . . . . . . . . . 141 8.11 Comparison of H∞ , H∞ LSDP and µcontrollers . . . . . . . . . . . . 150 8.12 Order Reduction of µcontroller . . . . . . . . . . . . . . . . . . . . . . . . . . . 158 8.13 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162 Contents xiii 9 A Triple Inverted Pendulum Controlsystem Design . . . . . . . 163 9.1 System Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164 9.2 Modelling of Uncertainties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167 9.3 Design Speciﬁcations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180 9.4 System Interconnections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182 9.5 H∞ Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186 9.6 µSynthesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191 9.7 Nonlinear System Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199 9.8 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202 10 Robust Control of a Hard Disk Drive . . . . . . . . . . . . . . . . . . . . . . 203 10.1 Hard Disk Drive Servo System . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203 10.2 Derivation of Uncertainty Model . . . . . . . . . . . . . . . . . . . . . . . . . . 209 10.3 Closedloop Systemdesign Speciﬁcations . . . . . . . . . . . . . . . . . . . 215 10.4 System Interconnections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218 10.5 Controller Design in Continuoustime . . . . . . . . . . . . . . . . . . . . . . 219 10.5.1 µDesign . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221 10.5.2 H∞ Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228 10.5.3 H∞ Loopshaping Design . . . . . . . . . . . . . . . . . . . . . . . . . . . 228 10.6 Comparison of Designed Controllers . . . . . . . . . . . . . . . . . . . . . . . 229 10.7 Controllerorder Reduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237 10.8 Design of Discretetime Controller . . . . . . . . . . . . . . . . . . . . . . . . . 239 10.9 Nonlinear System Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244 10.10Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247 11 Robust Control of a Distillation Column . . . . . . . . . . . . . . . . . . . 249 11.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249 11.2 Dynamic Model of the Distillation Column . . . . . . . . . . . . . . . . . 250 11.3 Uncertainty Modelling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254 11.4 Closedloop Systemperformance Speciﬁcations . . . . . . . . . . . . . . 256 11.5 Openloop and Closedloop System Interconnections . . . . . . . . . 261 11.6 Controller Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261 11.6.1 Loopshaping Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262 11.6.2 µSynthesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271 11.7 Nonlinear System Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283 11.8 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286 12 Robust Control of a Rocket . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289 12.1 Rocket Dynamics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289 12.2 Uncertainty Modelling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301 12.3 Performance Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306 12.4 H∞ Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 310 12.5 µSynthesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315 12.6 Discretetime µSynthesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324 12.7 Simulation of the Nonlinear System . . . . . . . . . . . . . . . . . . . . . . . . 328 xiv Contents 12.8 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332 13 Robust Control of a FlexibleLink Manipulator . . . . . . . . . . . . 335 13.1 Dynamic Model of the Flexible Manipulator . . . . . . . . . . . . . . . . 336 13.2 A Linear Model of the Uncertain System . . . . . . . . . . . . . . . . . . . 339 13.3 Systemperformance Speciﬁcations . . . . . . . . . . . . . . . . . . . . . . . . . 355 13.4 System Interconnections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359 13.5 Controller Design and Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361 13.6 Nonlinear System Simulations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372 13.7 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377 Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387 Part I Basic Methods and Theory 1 Introduction Robustness is of crucial importance in controlsystem design because real engineering systems are vulnerable to external disturbance and measurement noise and there are always diﬀerences between mathematical models used for design and the actual system. Typically, a control engineer is required to design a controller that will stabilise a plant, if it is not stable originally, and satisfy certain performance levels in the presence of disturbance signals, noise interference, unmodelled plant dynamics and plantparameter variations. These design objectives are best realised via the feedback control mechanism, although it introduces in the issues of high cost (the use of sensors), system complexity (implementation and safety) and more concerns on stability (thus internal stability and stabilising controllers). Though always being appreciated, the need and importance of robustness in controlsystems design has been particularly brought into the limelight during the last two decades. In classical singleinput singleoutput control, robustness is achieved by ensuring good gain and phase margins. Designing for good stability margins usually also results in good, welldamped time responses, i.e. good performance. When multivariable design techniques were ﬁrst developed in the 1960s, the emphasis was placed on achieving good performance, and not on robustness. These multivariable techniques were based on linear quadratic performance criteria and Gaussian disturbances, and proved to be successful in many aerospace applications where accurate mathematical models can be obtained, and descriptions for external disturbances/noise based on white noise are considered appropriate. However, application of such methods, commonly referred to as the linear quadratic Gaussian (LQG) methods, to other industrial problems made apparent the poor robustness properties exhibited by LQG controllers. This led to a substantial research eﬀort to develop a theory that could explicitly address the robustness issue in feedback design. The pioneering work in the development of the forthcoming theory, now known as the H∞ optimal control theory, was conducted in the early 1980s by Zames [170] and Zames and Francis [171]. In the H∞ approach, the designer from the outset speciﬁes a model of system uncertainty, such as additive perturbation 4 1 Introduction and/or output disturbance (details in Chapter 2), that is most suited to the problem at hand. A constrained optimisation is then performed to maximise the robust stability of the closedloop system to the type of uncertainty chosen, the constraint being the internal stability of the feedback system. In most cases, it would be suﬃcient to seek a feasible controller such that the closedloop system achieves certain robust stability. Performance objectives can also be included in the optimisation cost function. Elegant solution formulae have been developed, which are based on the solutions of certain algebraic Riccati equations, and are readily available in software packages such as Slicot [119] and MATLAB r . Despite the mature theory ([26, 38, 175]) and availability of software packages, commercial or licensed freeware, many people have experienced diﬃculties in solving industrial controlsystems design problems with these H∞ and related methods, due to the complex mathematics of the advanced approaches and numerous presentations of formulae as well as adequate translations of industrial design into relevant conﬁgurations. This book aims at bridging the gap between the theory and applications. By sharing the experiences in industrial case studies with minimum exposure to the theory and formulae, the authors hope readers will obtain an insight into robust industrial controlsystem designs using major H∞ optimisation and related methods. In this chapter, the basic concepts and representations of systems and signals will be discussed. 1.1 Controlsystem Representations
A control system or plant or process is an interconnection of components to perform certain tasks and to yield a desired response, i.e. to generate desired signal (the output), when it is driven by manipulating signal (the input). A control system is a causal, dynamic system, i.e. the output depends not only the present input but also the input at the previous time. In general, there are two categories of control systems, the openloop systems and closedloop systems. An openloop system uses a controller or control actuator to obtain the design response. In an openloop system, the output has no eﬀect on the input. In contrast to an openloop system, a closedloop control system uses sensors to measure the actual output to adjust the input in order to achieve desired output. The measure of the output is called the feedback signal, and a closedloop system is also called a feedback system. It will be shown in this book that only feedback conﬁgurations are able to achieve the robustness of a control system. Due to the increasing complexity of physical systems under control and rising demands on system properties, most industrial control systems are no longer singleinput and singleoutput (SISO) but multiinput and multioutput (MIMO) systems with a high interrelationship (coupling) between these chan 1.1 Controlsystem Representations 5 nels. The number of (state) variables in a system could be very large as well. These systems are called multivariable systems. In order to analyse and design a control system, it is advantageous if a mathematical representation of such a relationship (a model) is available. The system dynamics is usually governed by a set of diﬀerential equations in either openloop or closedloop systems. In the case of linear, timeinvariant systems, which is the case this book considers, these diﬀerential equations are linear ordinary diﬀerential equations. By introducing appropriate state variables and simple manipulations, a linear, timeinvariant, continuoustime control system can be described by the following model, x(t) = Ax(t) + Bu(t) ˙ y (t) = Cx(t) + Du(t) (1.1) where x(t) ∈ Rn is the state vector, u(t) ∈ Rm the input (control) vector, and y (t) ∈ Rp the output (measurement) vector. With the assumption of zero initial condition of the state variables and using Laplace transform, a transfer function matrix corresponding to the system in (1.1) can be derived as G(s) := C (sIn − A)−1 B + D and can be further denoted in a short form by G(s) =: AB CD (1.3) (1.2) It should be noted that the H∞ optimisation approach is a frequencydomain method, though it utilises the timedomain description such as (1.1) to explore the advantages in numerical computation and to deal with multivariable systems. The system given in (1.1) is assumed in this book to be minimal, i.e. completely controllable and completely observable, unless described otherwise. In the case of discretetime systems, similarly the model is given by x(k + 1) = Ax(k ) + Bu(k ) y (k ) = Cx(k ) + Du(k ) or xk+1 = Axk + Buk yk = Cxk + Duk with a corresponding transfer function matrix as G(s) := C (zIn − A)−1 B + D AB =: CD (1.5) (1.4) 6 1 Introduction 1.2 System Stabilities
An essential issue in controlsystems design is the stability. An unstable system is of no practical value. This is because any control system is vulnerable to disturbances and noises in a real work environment, and the eﬀect due to these signals would adversely aﬀect the expected, normal system output in an unstable system. Feedback control techniques may reduce the inﬂuence generated by uncertainties and achieve desirable performance. However, an inadequate feedback controller may lead to an unstable closedloop system though the original openloop system is stable. In this section, controlsystem stabilities and stabilising controllers for a given control system will be discussed. When a dynamic system is just described by its input/output relationship such as a transfer function (matrix), the system is stable if it generates bounded outputs for any bounded inputs. This is called the boundedinputboundedoutput (BIBO) stability. For a linear, timeinvariant system modelled by a transfer function matrix (G(s) in (1.2)), the BIBO stability is guaranteed if and only if all the poles of G(s) are in the openlefthalf complex plane, i.e. with negative real parts. When a system is governed by a statespace model such as (1.1), a stability concept called asymptotic stability can be deﬁned. A system is asymptotically stable if, for an identically zero input, the system state will converge to zero from any initial states. For a linear, timeinvariant system described by a model of (1.1), it is asymptotically stable if and only if all the eigenvalues of the state matrix A are in the openlefthalf complex plane, i.e. with positive real parts. In general, the asymptotic stability of a system implies that the system is also BIBO stable, but not vice versa. However, for a system in (1.1), if [A, B, C, D] is of minimal realisation, the BIBO stability of the system implies that the system is asymptotically stable. The above stabilities are deﬁned for openloop systems as well as closedloop systems. For a closedloop system (interconnected, feedback system), it is more interesting and intuitive to look at the asymptotic stability from another point of view and this is called the internal stability [20]. An interconnected system is internally stable if the subsystems of all inputoutput pairs are asymptotically stable (or the corresponding transfer function matrices are BIBO stable when the state space models are minimal, which is assumed in this chapter). Internal stability is equivalent to asymptotical stability in an interconnected, feedback system but may reveal explicitly the relationship between the original, openloop system and the controller that inﬂuences the stability of the whole system. For the system given in Figure 1.1, there are two inputs r and d (the disturbance at the output) and two outputs y and u (the output of the controller K ). The transfer functions from the inputs to the outputs, respectively, are Tyr = GK (I + GK )−1 1.3 Coprime Factorisation and Stabilising Controllers 7 Fig. 1.1. An interconnected system of G and K Tyd = G(I + KG)−1 Tur = K (I + GK )−1 Tud = −KG(I + KG)−1 (1.6) Hence, the system is internally stable if and only if all the transfer functions r y in (1.6) are BIBO stable, or the transfer function matrix M from to d u is BIBO stable, where M := GK (I + GK )−1 G(I + KG)−1 −1 K (I + GK ) −KG(I + KG)−1 (1.7) The stability of (1.7) is equivalent to the stability of I − GK (I + GK )−1 G(I + KG)−1 ˆ M := −1 K (I + GK ) I − KG(I + KG)−1 By simple matrix manipulations, we have ˆ M= = (I + GK )−1 G(I + KG)−1 K (I + GK )−1 (I + KG)−1 I −G −K I
−1 (1.8) (1.9) Hence, the feedback system in Figure 1.1 is internally stable if (1.9) is stable. It can be shown [20] that if there is no unstable pole/zero cancellation between G and K , then any one of the four transfer functions being BIBO stable would be enough to guarantee that the whole system is internally stable. 1.3 Coprime Factorisation and Stabilising Controllers
Consider a system given in the form of (1.2) with [A, B, C, D] assumed to be ˜ minimal. Matrices (M (s), N (s)) ∈ H∞ ((M (s), N (s)) ∈ H∞ ), where H∞ 8 1 Introduction denotes the space of functions with no poles in the closed righthalf complex plane, constitute a left (right) coprime factorisation of G(s) if and only if ˜ ˜ (i) M (M ) is square, and det(M )(det(M )) = 0 . (ii) the plant model is given by ˜ ˜ G = M −1 N (= N M −1 ) ˜˜ (iii) There exists (V , U )((V, U )) ∈ H∞ such that ˜˜ ˜˜ MV + NU = I (U N + V M = I ) (1.11) (1.10) Transfer functions (or rational, fractional) matrices are coprime if they share no common zeros in the righthalf complex plane, including at the inﬁnity. The two equations in (iii) above are called Bezout identities ([97]) and are ˜˜ necessary and suﬃcient conditions for (M , N ) ((M, N )) being left coprime (right coprime), respectively. The left and right coprime factorisations of G(s) can be grouped together to form a Bezout double identity as the following VU ˜˜ −N M ˜ M −U ˜ NV =I (1.12) For G(s) of minimal realisation (1.2) (actually G is required to be stabilisable and detectable only), the formulae for the coprime factors can be readily derived ([98]) as in the following theorem. Theorem 1.1. Let constant matrices F and H be such that A + BF and ˜ ˜ A + HC are both stable. Then the transfer function matrices M and N (M and N ) deﬁned in the following constitute a left (right) coprime factorisation of G(s), A + HC ˜ ˜ N (s) M (s) = C ⎡ A + BF N (s) = ⎣ C + DF M (s) F B + HD −H D I ⎤ B D⎦ I (1.13) (1.14) ˜ ˜ Furthermore, the following U (s), V (s), U (s) and V (s) satisfy the Bezout double identity (1.12), A + HC ˜ ˜ U (s) V (s) = F ⎡ A + BF U (s) =⎣ F V (s) C + DF H B + HD 0 I ⎤ H 0⎦ I (1.15) (1.16) 1.4 Signals and System Norms 9 ˜˜ It can be easily shown that the pairs (U , V ) and (U, V ) are stable and coprime. Using (1.9), it is straightforward to show the following lemma. Lemma 1.2. ˜˜ K := V −1 U = U V −1 (1.17) is a stabilising controller, i.e. the closedloop system in Figure 1.6 is internally stable. ˜ ˜ Further, the set of all stabilising controllers for G = M −1 N = N M −1 can be obtained in the following Youla Parameterisation Theorem ([98, 167, 168]). Theorem 1.3. The set of all stabilising controllers for G is ˜ ˜ ˜ ˜ {(V + QN )−1 (U + QM ) : Q ∈ H∞ } The set can also be expressed as {(U + M Q)(V + N Q)−1 : Q ∈ H∞ } (1.19) (1.18) 1.4 Signals and System Norms
In this section the basic concepts concerning signals and systems will be reviewed in brief. A control system interacts with its environment through command signals, disturbance signals and noise signals, etc. Tracking error signals and actuator driving signals are also important in control systems design. For the purpose of analysis and design, appropriate measures, the norms, must be deﬁned for describing the “size” of these signals. From the signal norms, we can then deﬁne induced norms to measure the “gain” of the operator that represents the control system. 1.4.1 Vector Norms and Signal Norms Let the linear space X be F m , where F = R for the ﬁeld of real numbers, or T F = C for complex numbers. For x = [x1 , x2 , ..., xm ] ∈ X , the pnorm of the vector x is deﬁned by m 1norm x 1 := i=1 xi  , for p = 1 m p 1/p , for 1 < p < ∞ pnorm x p := ( i=1 xi  ) ∞norm x ∞ := max1≤i≤m xi  , for p = ∞ When p = 2, x 2 is the familiar Euclidean norm. When X is a linear space of continuous or piecewise continuous time scalarvalued signals x(t), t ∈ R, the pnorm of a signal x(t) is deﬁned by 10 1 Introduction 1norm x 1 := , for 1 < p < ∞ pnorm x p := for p = ∞ ∞norm x ∞ := supt∈R x(t) , The normed spaces, consisting of signals with ﬁnite norm as deﬁned correspondingly, are called L1 (R), Lp (R) and L∞ (R), respectively. From a signal point of view, the 1norm, x 1 of the signal x(t) is the integral of its absolute value. The square of the 2norm, x 2 , is often called the energy of the signal 2 x(t) since that is what it is when x(t) is the current through a 1 Ω resistor. The ∞norm, x ∞ , is the amplitude or peak value of the signal, and the signal is bounded in magnitude if x(t) ∈ L∞ (R). When X is a linear space of continuous or piecewise continuous vectorT valued functions of the form x(t) = [x1 (t), x2 (t), · · · , xm (t)] , t ∈ R, we may have Lp (R) := {x(t) : x p = −∞ i=1 x(t)p dt < ∞, m for 1 ≤ p < ∞} L∞ (R) := {x(t) : x ∞ = supt∈R x(t) ∞ < ∞} m Some signals are useful for control systems analysis and design, for example, the sinusoidal signal, x(t) = A sin(ωt + φ), t ∈ R. It is unfortunately not a 2norm signal because of the inﬁnite energy contained. However, the average power of x(t) T 1 x2 (t)dt lim T →∞ 2T −T exists. The signal x(t) will be called a power signal if the above limit exists. The square root of the limit is the wellknown r.m.s. (rootmeansquare) value of x(t). It should be noticed that the average power does not introduce a norm, since a nonzero signal may have zero average power. 1.4.2 System Norms System norms are actually the inputoutput gains of the system. Suppose that G is a linear and bounded system that maps the input signal u(t) into the output signal y (t), where u ∈ (U, · U ), y ∈ (Y, · Y ). U and Y are the signal spaces, endowed with the norms · U and · Y , respectively. Then the norm, maximum system gain, of G is deﬁned as G := sup
u=0 ∞ m 1/p ∞ x(t)dt , −∞ 1/p ∞ x(t)p dt −∞ for p = 1 Gu Y uU (1.20) or G = sup
u
U =1 Gu Y = sup
u
U ≤1 Gu Y Obviously, we have 1.4 Signals and System Norms 11 Gu Y ≤G·u U If G1 and G2 are two linear, bounded and compatible systems, then G1 G2 ≤ G1 · G2 G is called the induced norm of G with regard to the signal norms · U and · Y . In this book, we are particularly interested in the socalled ∞norm of a system. For a linear, timeinvariant, stable system G : L2 (R) → L2 (R), m p the ∞norm, or the induced 2norm, of G is given by G
∞ = sup G(jω )
ω ∈R 2 (1.21) where G(jω ) 2 is the spectral norm of the p × m matrix G(jω ) and G(s) is the transfer function matrix of G . Hence, the ∞norm of a system describes the maximum energy gain of the system and is decided by the peak value of the largest singular value of the frequency response matrix over the whole frequency axis. This norm is called the H∞ norm, since we denote by H∞ the linear space of all stable linear systems. 2 Modelling of Uncertain Systems As discussed in Chapter 1, it is well understood that uncertainties are unavoidable in a real control system. The uncertainty can be classiﬁed into two categories: disturbance signals and dynamic perturbations. The former includes input and output disturbance (such as a gust on an aircraft), sensor noise and actuator noise, etc. The latter represents the discrepancy between the mathematical model and the actual dynamics of the system in operation. A mathematical model of any real system is always just an approximation of the true, physical reality of the system dynamics. Typical sources of the discrepancy include unmodelled (usually highfrequency) dynamics, neglected nonlinearities in the modelling, eﬀects of deliberate reducedorder models, and systemparameter variations due to environmental changes and tornandworn factors. These modelling errors may adversely aﬀect the stability and performance of a control system. In this chapter, we will discuss in detail how dynamic perturbations are usually described so that they can be well considered in system robustness analysis and design. 2.1 Unstructured Uncertainties
Many dynamic perturbations that may occur in diﬀerent parts of a system can, however, be lumped into one single perturbation block ∆, for instance, some unmodelled, highfrequency dynamics. This uncertainty representation is referred to as “unstructured” uncertainty. In the case of linear, timeinvariant systems, the block ∆ may be represented by an unknown transfer function matrix. The unstructured dynamics uncertainty in a control system can be described in diﬀerent ways, such as is listed in the following, where Gp (s) denotes the actual, perturbed system dynamics and Go (s) a nominal model description of the physical system. 14 2 Modelling of Uncertain Systems 1. Additive perturbation: Fig. 2.1. Additive perturbation conﬁguration Gp (s) = Go (s) + ∆(s) 2. Inverse additive perturbation: (2.1) Fig. 2.2. Inverse additive perturbation conﬁguration (Gp (s))−1 = (Go (s))−1 + ∆(s) 3. Input multiplicative perturbation: (2.2) Fig. 2.3. Input multiplicative perturbation conﬁguration 2.1 Unstructured Uncertainties 15 Gp (s) = Go (s)[I + ∆(s)] 4. Output multiplicative perturbation: (2.3) Fig. 2.4. Output multiplicative perturbation conﬁguration Gp (s) = [I + ∆(s)]Go (s) 5. Inverse input multiplicative perturbation: (2.4) Fig. 2.5. Inverse input multiplicative perturbation conﬁguration (Gp (s))−1 = [I + ∆(s)](Go (s))−1 6. Inverse output multiplicative perturbation: (Gp (s))−1 = (Go (s))−1 [I + ∆(s)] 7. Left coprime factor perturbations: ˜ ˜ Gp (s) = (M + ∆M )−1 (N + ∆N ) ˜ ˜ 8. Right coprime factor perturbations: Gp (s) = (N + ∆N )(M + ∆M )−1 (2.5) (2.6) (2.7) (2.8) 16 2 Modelling of Uncertain Systems Fig. 2.6. Inverse output multiplicative perturbation conﬁguration Fig. 2.7. Left coprime factor perturbations conﬁguration Fig. 2.8. Right coprime factor perturbations conﬁguration The additive uncertainty representations give an account of absolute error between the actual dynamics and the nominal model, while the multiplicative representations show relative errors. ˜˜ In the last two representations, (M , N )/(M, N ) are left/right coprime factorizations of the nominal system model Go (s), respectively; and (∆M , ∆N ) ˜ ˜ /(∆M , ∆N ) are the perturbations on the corresponding factors [101]. The block ∆ (or, (∆M , ∆N ) /(∆M , ∆N ) in the coprime factor perturba˜ ˜ tions cases) is uncertain, but usually is normbounded. It may be bounded by a known transfer function, say σ [∆(jω )]≤ δ (jω ), for all frequencies ω , where δ is a known scalar function and σ [·] denotes the largest singular value of a matrix. The uncertainty can thus be represented by a unit, normbounded block ∆ cascaded with a scalar transfer function δ (s). 2.2 Parametric Uncertainty 17 It should be noted that a successful robust controlsystem design would depend on, to certain extent, an appropriate description of the perturbation considered, though theoretically most representations are interchangeable. Example 2.1 The dynamics of many control systems may include a “slow” part and a “fast” part, for instance in a dc motor. The actual dynamics of a scalar plant may be Gp (s) = ggain Gslow (s)Gfast (s) where, ggain is constant, and Gslow (s) = 1 ; 1 + sT Gfast (s) = 1 ; 1 + αsT α ≤≤ 1. In the design, it may be reasonable to concentrate on the slow response part while treating the fast response dynamics as a perturbation. Let ∆a and ∆m denote the additive and multiplicative perturbations, respectively. It can be easily worked out that ∆a (s) = Gp − ggain Gslow = ggain Gslow (Gfast − 1) −αsT = ggain (1 + sT )(1 + αsT ) −αsT Gp − ggain Gslow = Gfast − 1 = ∆m (s) = 1 + αsT ggain Gslow The magnitude Bode plots of ∆a and ∆m can be seen in Figure 2.9, where ggain is assumed to be 1. The diﬀerence between the two perturbation representations is obvious: though the magnitude of the absolute error may be small, the relative error can be large in the highfrequency range in comparison to that of the nominal plant. 2.2 Parametric Uncertainty
The unstructured uncertainty representations discussed in Section 2.1 are useful in describing unmodelled or neglected system dynamics. These complex uncertainties usually occur in the highfrequency range and may include unmodelled lags (time delay), parasitic coupling, hysteresis and other nonlinearities. However, dynamic perturbations in many industrial control systems may also be caused by inaccurate description of component characteristics, tornandworn eﬀects on plant components, or shifting of operating points, etc. Such perturbations may be represented by variations of certain system parameters over some possible value ranges (complex or real). They aﬀect the lowfrequency range performance and are called “parametric uncertainties”. 18 2 Modelling of Uncertain Systems
Bode plot (Magnitude)
0 −20 Solid line: absolute error Dashed line: relative error −40 Magnitude (dB) −60 −80 −100 −120 −140 −3 10 10 −2 10 −1 10 0 10 Frequency (rad/s) 1 10 2 10 3 10 4 10 5 Fig. 2.9. Absolute and relative errors in Example 2.1 Example 2.2 A massspringdamper system can be described by the following secondorder, ordinary diﬀerential equation m dx(t) d2 x(t) + kx(t) = f (t) +c dt dt2 where, m is the mass, c the damping constant, k the spring stiﬀness, x(t) the displacement and f (t) the external force. For imprecisely known parameter values, the dynamic behaviour of such a system is actually described by (mo + δm ) dx(t) d2 x(t) + (ko + δk )x(t) = f (t) + (co + δc ) dt dt2 where, mo , co and ko denote the nominal parameter values and δm , δc and δk possible variations over certain ranges. By deﬁning the state variables x1 and x2 as the displacement variable and its ﬁrstorder derivative (velocity), the 2ndorder diﬀerential equation (2.2) may be rewritten into a standard statespace form x1 = x2 ˙ x2 = ˙ 1 [−(ko + δk )x1 − (co + δc )x2 + f ] mo + δm y = x1 2.2 Parametric Uncertainty 19 Fig. 2.10. Analogue block diagram of Example 2.2 Further, the system can be represented by an analogue block diagram as in Figure 2.10. 1 1 Notice that mo +δm can be rearranged as a feedback in terms of mo and δm . Figure 2.10 can be redrawn as in Figure 2.11, by pulling out all the uncertain variations. Fig. 2.11. Structured uncertainties block diagram of Example 2.2 Let z1 , z2 and z3 be x2 , x2 and x1 , respectively, considered as another, ˙ ﬁctitious output vector; and, d1 , d2 and d3 be the signals coming out from the perturbation blocks δm , δc and δk , as shown in Figure 2.11. The perturbed 20 2 Modelling of Uncertain Systems system can be arranged in the following statespace model and represented as in Figure 2.12. ⎤ d1 0 000⎣⎦ d2 + 1 f + −1 −1 −1 mo d3 ⎡ ⎤⎡ ⎤ ⎡ 1 ⎤ −1 −1 −1 d1 mo + ⎣ 0 0 0 ⎦ ⎣ d2 ⎦ + ⎣ 0 ⎦ f d3 000 0 (2.9) ⎡ x1 ˙ x2 ˙ ⎡ = 0 1 ⎤ ⎤ ⎡ ko c − mo − moo z1 x1 ⎣ z2 ⎦ = ⎣ 0 1⎦ x2 z3 1 0 y= 10 x1 x2 c k − mo − moo o x1 x2 Fig. 2.12. Standard conﬁguration of Example 2.2 The statespace model of (2.9) describes the augmented, interconnection system M of Figure 2.12. The perturbation block ∆ in Figure 2.12 corresponds to parameter variations and is called “parametric uncertainty”. The uncertain block ∆ is not a full matrix but a diagonal one. It has certain structure, hence the terminology of “structured uncertainty”. More general cases will be discussed shortly in Section 2.4. 2.3 Linear Fractional Transformations
The block diagram in Figure 2.12 can be generalised to be a standard conﬁguration to represent how the uncertainty aﬀects the input/output relationship 2.3 Linear Fractional Transformations 21 of the control system under study. This kind of representation ﬁrst appeared in the circuit analysis back in the 1950s ([128, 129]). It was later adopted in the robust control study ([132]) for uncertainty modelling. The general framework is depicted in Figure 2.13. Fig. 2.13. Standard M ∆ conﬁguration The interconnection transfer function matrix M in Figure 2.13 is partitioned as M11 M12 M= M21 M22 where the dimensions of M11 conform with those of ∆. By routine manipulations, it can be derived that z = M22 + M21 ∆(I − M11 ∆)−1 M12 w if (I − M11 ∆) is invertible. When the inverse exists, we may deﬁne F (M, ∆) = M22 + M21 ∆(I − M11 ∆)−1 M12 F (M, ∆) is called a linear fractional transformation(LFT) of M and ∆. Because the “upper”loop of M is closed by the block ∆, this kind of linear fractional transformation is also called an upper linear fractional transformation(ULFT), and denoted with a subscript u, i.e. Fu (M, ∆), to show the way of connection. Similarly, there are also lower linear fractional transformations(LLFT) that are usually used to indicate the incorporation of a controller K into a system. Such a lower LFT can be depicted as in Figure 2.14 and deﬁned by Fl (M, K ) = M11 + M12 K (I − M22 K )−1 M21 With the introduction of linear fractional transformations, the unstructured uncertainty representations discussed in Section 2.1 may be uniformly described by Figure 2.13, with appropriately deﬁned interconnection matrices M s as listed below. 22 2 Modelling of Uncertain Systems Fig. 2.14. Lower LFT conﬁguration 1. Additive perturbation: 0I I Go M= 2. Inverse additive perturbation: (2.10) M= 3. Input multiplicative perturbation: −Go Go −Go Go (2.11) M= 0I G o Go (2.12) 4. Output multiplicative perturbation: 0 Go I Go M= (2.13) 5. Inverse input multiplicative perturbation: −I I −Go Go M= (2.14) 6. Inverse output multiplicative perturbation: −I Go −I Go M= (2.15) 2.4 Structured Uncertainties 23 7. Left coprime factor perturbations: ˜− − MG 1 0 M =⎣ ˜ −1 MG ⎡ ⎤ −Go ⎦ I Go (2.16) ˜− ˜ where Go = MG 1 NG , a left coprime factorisation of the nominal plant; ˜ ˜ and, the perturbed plant is Gp = (MG + ∆M )−1 (NG + ∆N ). ˜ ˜ 8. Right coprime factor perturbations:
− − −MG 1 0 MG 1 −Go I Go M= (2.17) where Go = NG MG −1 , a right coprime factorisation of the nominal plant; and, the perturbed plant is Gp = (NG + ∆N )(MG + ∆M )−1 . In the above, it is assumed that [I − M11 ∆] is invertible. The perturbed system is thus Gp (s) = Fu (M, ∆) In the coprime factor perturbation representations, (2.16) and (2.17), ∆ = ∆M ∆M ∆N and ∆ = , respectively. The block ∆ in (2.10)–(2.17) is ˜ ˜ ∆N supposed to be a “full” matrix, i.e. it has no speciﬁc structure. 2.4 Structured Uncertainties
In many robust design problems, it is more likely that the uncertainty scenario is a mixed case of those described in Sections 2.1 and 2.2. The uncertainties under consideration would include unstructured uncertainties, such as unmodelled dynamics, as well as parameter variations. All these uncertain parts still can be taken out from the dynamics and the whole system can be rearranged in a standard conﬁguration of (upper) linear fractional transformation F (M, ∆). The uncertain block ∆ would then be in the following general form ∆ = diag [δ1 Ir1 , · · · , δs Irs , ∆1 , · · · , ∆f ] : δi ∈ C , ∆j ∈ C mj ×mj
s f (2.18) where i=1 ri + j =1 mj = n with n is the dimension of the block ∆. We may deﬁne the set of such ∆ as ∆. The total block ∆ thus has two types of uncertain blocks: s repeated scalar blocks and f full blocks. The parameters δi of the repeated scalar blocks can be real numbers only, if further information of the uncertainties is available. However, in the case of real numbers, the analysis and design would be even harder. The full blocks in (2.18) need not be square, but by restricting them as such makes the notation much simpler. 24 2 Modelling of Uncertain Systems When a perturbed system is described by an LFT with the uncertain block of (2.18), the ∆ considered has a certain structure. It is thus called “structured uncertainty”. Apparently, using a lumped, full block to model the uncertainty in such cases, for instance in Example 2.2, would lead to pessimistic analysis of the system behaviour and produce conservative designs. 3 Robust Design Speciﬁcations A control system is robust if it remains stable and achieves certain performance criteria in the presence of possible uncertainties as discussed in Chapter 2. The robust design is to ﬁnd a controller, for a given system, such that the closedloop system is robust. The H∞ optimisation approach and its related approaches, being developed in the last two decades and still an active research area, have been shown to be eﬀective and eﬃcient robust design methods for linear, timeinvariant control systems. We will ﬁrst introduce in this chapter the SmallGain Theorem, which plays an important role in the H∞ optimisation methods, and then discuss the stabilisation and performance requirements in robust designs using the H∞ optimisation and related ideas. 3.1 Smallgain Theorem and Robust Stabilisation
The SmallGain Theorem is of central importance in the derivation of many stability tests. In general, it provides only a suﬃcient condition for stability and is therefore potentially conservative. The SmallGain Theorem is applicable to general operators. What will be included here is, however, a version that is suitable for the H∞ optimisation designs, and in this case, it is a suﬃcient and necessary result. Consider the feedback conﬁguration in Figure 3.1, where G1 (s) and G2 (s) are the transfer function matrices of corresponding linear, timeinvariant systems. We then have the following theorem. Theorem 3.1. [21] If G1 (s) and G2 (s) are stable, i.e. G1 ∈ H∞ , G2 ∈ H∞ , then the closedloop system is internally stable if and only if G1 G2
∞ < 1 and G2 G 1 ∞ <1 26 3 Robust Design Speciﬁcations Fig. 3.1. A feedback conﬁguration A closedloop system of the plant G and controller K is robustly stable if it remains stable for all possible, under certain deﬁnition, perturbations on the plant. This implies, of course, that K is a stabilising controller for the nominal plant G, since we always assume that the perturbation set includes zero (no perturbation). Let us consider the case of additive perturbation as depicted in Figure 3.2, where ∆(s) is the perturbation, a “full” matrix unknown but stable. Fig. 3.2. Additive perturbation conﬁguration It is easy to work out that the transfer function from the signal v to u is Tuv = −K (I + GK )−1 . As mentioned earlier, the controller K should stabilise the nominal plant G. Hence, from the SmallGain theorem, we have the following theorem. Theorem 3.2. [14, 109] For stable ∆(s), the closedloop system is robustly stable if K (s) stabilises the nominal plant and the following holds ∆K (I + GK )−1 and K (I + GK )−1 ∆
∞ ∞ <1 <1 3.1 Smallgain Theorem and Robust Stabilisation 27 or, in a strengthened form, K (I + GK )−1
∞ < 1 ∆∞ (3.1) The second condition becomes necessary, when the unknown ∆ may have all phases. If required to ﬁnd a controller to robustly stabilise the largest possible set of perturbations, in the sense of ∞norm, it is then clear that we need to solve the following minimisation problem
Kstabilising min K (I + GK )−1 ∞ (3.2) In many cases, we may have a priori knowledge of the perturbation, say, σ (∆(jω )) ≤ σ (W2 (jω )) for all ω ∈ R Then, we may rewrite the perturbation block as ∆(s) = ∆(s)W2 (s) where ∆(s) is the unit norm perturbation set. Correspondingly, the robust stabilisation condition becomes W2 K (I + GK )−1 and the optimisation problem
Kstabilising ∞ <1 min W2 K (I + GK )−1 ∞ (3.3) Robust stabilisation conditions can be derived similarly for other perturbation representations discussed in Chapter 2 and are listed below (Go is replaced by G for the sake of simplicity). 1. Inverse additive perturbation: G(I + KG)−1 2. Input multiplicative perturbation: K G(I + KG)−1 3. Output multiplicative perturbation: GK (I + GK )−1
∞ ∞ ∞ < 1 ∆∞ (3.4) < 1 ∆∞ (3.5) < 1 ∆∞ (3.6) 28 3 Robust Design Speciﬁcations 4. Inverse input multiplicative perturbation: (I + KG)−1
∞ < 1 ∆∞ (3.7) 5. Inverse output multiplicative perturbation: (I + GK )−1
∞ < 1 ∆∞ (3.8) The cases of perturbation on coprime factors will be discussed in Chapter 5. Remark: In the above discussion, the stability of the perturbation block has been assumed. Actually, the conclusions are also true if the perturbed systems have the same number of closed righthalf plane poles as the nominal system does (see [96]). If even this is not satisﬁed, then we will have to use the coprime factor perturbation models, as will be discussed in Chapter 5. Robust stabilisation is an important issue not just as a design requirement. As a matter of fact, the H∞ design and related approaches ﬁrst formulate the stability as well as performance design speciﬁcations as a robust stabilisation problem and then solve the robust stabilisation problem to ﬁnd a controller. 3.2 Performance Consideration
Figure 3.3 depicts a typical closedloop system conﬁguration, where G is the plant and K the controller to be designed. r, y, u, e, d, n are, respectively, the reference input, output, control signal, error signal, disturbance and measurement noise. With a little abuse of notations, we do not distinguish the notations of signals in the time or frequency domains. The following relationships are immediately available. y = (I + GK )−1 GKr + (I + GK )−1 d − (I + GK )−1 GKn u = K (I + GK )−1 r − K (I + GK )−1 d − K (I + GK )−1 n e = (I + GK )−1 r − (I + GK )−1 d − (I + GK )−1 n Assume that the signals r, d, n are energy bounded and have been normalised, i.e. lying in the unit ball of L2 space. We, however, do not know what exactly these signals are. It is required that the usual performance speciﬁcations, such as tracking, disturbance attenuation and noise rejection, should be as good as possible for any r, d or n whose energy does not exceed 1. From the discussions in Chapter 1 on signal and system norms, it is clear that we should 3.3 Structured Singular Values 29 Fig. 3.3. A closedloop conﬁguration of G and K minimise the ∞norm, the gain, of corresponding transfer function matrices. Hence, the design problem is that over the set of all stabilising controller K s, (i.e. those K s make the closedloop system internally stable), ﬁnd the optimal one that minimises • for good tracking, (I + GK )−1 ∞ • for good disturbance attenuation, (I + GK )−1 ∞ • for good noise rejection, − (I + GK )−1 GK ∞ • for less control energy, K (I + GK )−1 ∞ It is conventional to denote S := (I + GK )−1 , the sensitivity function, and T := (I + GK )−1 GK , the complementary sensitivity function. In general, weighting functions would be used in the above minimisation to meet the design speciﬁcations. For instance, instead of minimising the sensitivity function alone, we would aim at solving
Kstabilising min W1 S Wd ∞ where W1 is chosen to tailor the tracking requirement and is usually a highgain lowpass ﬁlter type, Wd can be regarded as a generator that characterises all relevant disturbances in the case considered. Usually, the weighting functions are stable and of minimum phase. 3.3 Structured Singular Values
Systems with uncertain dynamics can all be put in the standard M − ∆ conﬁguration of Figure 2.13. The robust stabilisation conditions derived in Section 3.1 are suﬃcient and necessary conditions for unstructured uncertainties, i.e. ∆ is a full block and will have all phases. In the case of structured uncertainty 30 3 Robust Design Speciﬁcations (Section 2.4), these robust stabilization results could be very conservative. To deal with structured uncertainties, we need to introduce the socalled structured singular values (SSV). In fact, these robust stabilisation results, such as that in Theorem 3.2, can be equivalently written as [14, 109] det [I − M (jω )∆(jω )] = 0, ∀ω ∈ R, ∀∆ (3.9) where the nominal (closedloop) system M (s) is assumed to be stable as usual. This condition for robust stability is suﬃcient and necessary even for structured uncertainty ∆. Roughly speaking, in order to have the closedloop system robustly stable, all the uncertainties of a known structure of (2.18) should be small enough not to violate the condition (i.e. not make I − M (jω )∆(jω ) singular at any frequency ω ). On the other hand, for a given M with a ﬁxed controller K and a known structure of the uncertainties, the smallest “size”of the uncertainty that makes I − M (jω )∆(jω ) singular at some frequency ω describes how robustly stable the controller K is in dealing with such structured uncertainties. This measurement is the socalled structured singular values (SSV) introduced below. First, as in Section 2.4, we deﬁne the structure of uncertainty of (2.18) and repeat here for convenience, ∆ = {diag[δ1 Ir1 , · · · , δs Irs , ∆1 , · · · , ∆f ] : δi ∈ C , ∆j ∈ C mj ×mj } (3.10) where i=1 ri + j =1 mj = n with n is the dimension of the block ∆. We also assume the set of ∆ is bounded. And, we may thus deﬁne a normalised set of structured uncertainty by B∆ := {∆ : σ (∆) ≤ 1, ∆ ∈ ∆} (3.11)
s f Deﬁnition 3.3. For M ∈ C n×n , the structured singular value µ∆ (M ) of M with respect to ∆ is the number deﬁned such that µ−1 (M ) is equal to the ∆ smallest σ (∆) needed to make (I − M ∆) singular (rank deﬁciency). That is µ−1 (M ) := min {σ (∆) : det(I − M ∆) = 0} ∆
∆∈∆ (3.12) If there is no ∆ ∈ ∆ such that det(I − M ∆) = 0, then µ∆ (M ) := 0. When M is an interconnected transfer matrix as in Figure 2.13, the structured singular value, with respect to ∆, is deﬁned by µ∆ (M (s)) := sup µ∆ (M (jω ))
ω ∈R (3.13) Correspondingly, the uncertainty set may be deﬁned as M(∆) := {∆(·) ∈ RH∞ : ∆(jω ) ∈ ∆ f or all ω ∈ R} (3.14) 3.3 Structured Singular Values 31 When the uncertainty structure is ﬁxed, we may omit the subscript ∆ of µ∆ (M ) for brevity. The reciprocal of the structured singular value denotes a frequencydependent stability margin ([18, 132]). The robust stability result with regard to structured uncertainty is now given in the following theorem. Theorem 3.4. [23] Let the nominal feedback system (M (s)) be stable and Let β > 0 be an uncertainty bound, i.e. ∆ ∞ ≤ β, ∀ ∆(·) ∈ M(∆). The perturbed system of Figure 2.3 is robustly stable, with respect to ∆, if and 1 only if µ∆ (M (s)) < β . It is obvious that if the uncertainty lies in the unit ball B∆, the robust stability condition is then µ∆ (M (s)) < 1. µ∆ (M (s)) is frequency dependent and is calculated at “each” frequency over a reasonable range in practical applications. In the literature, µ∆ (M (s)) is sometimes redeﬁned as M µ for an interconnected transfer function matrix M (s). This notation is convenient; however, it should be clear that it is not a norm. It does not satisfy the three basic properties of a norm. Also, it depends on M (s) as well as the uncertainty structure of ∆. The structured singular value plays an important role in robust design. As became clear in the early parts of this chapter, the H∞ optimisation approach can deal with robust stabilisation problems with regard to unstructured uncertainties and can achieve nominal performance requirements. In the case of structured uncertainty, Theorem 3.4 gives a suﬃcient and necessary condition for robust stabilisation. Furthermore, the robust performance design can also be transformed into a robust stabilisation problem with regard to structured uncertainties, as will be described in Chapter 6. However, the computation of the structured singular value is not an easy task. It is still an open topic and requires further research. A few properties of the structured singular value and its computation are listed below. Interested readers are referred to [23, 32, 33, 120, 121, 122, 175] for details. Coded routines for the µ computation are available in software packages MATLAB r [9] and Slicot [119]. Let ρ(·) denote the spectral radius of a square matrix. By direct manipulations, we have the following lemma. Lemma 3.5. For a square, constant matrix M , µ(M ) = max ρ(M ∆)
∆∈B∆ The following properties of µ can also be easily derived. • µ(αM ) = α · µ(M ), ∀α ∈ C • det(I − M ∆) = 0, ∀∆ ∈ B∆ ⇐⇒ µ(M ) < 1 32 3 Robust Design Speciﬁcations • if ∆ = {δIn : δ ∈ C} (s = 1, f = 0; r1 = n) −→ µ(M ) = ρ(M ) • if ∆ = C n×n (s = 0, f = 1; m1 = n) =⇒ µ(M ) = σ (M ) In the above, s, f and n are dimensions of the uncertainty set ∆ as deﬁned in (3.10). Further, we have the following lemma. Lemma 3.6. ρ(M ) ≤ µ(M ) ≤ σ (M ) Lemma 3.6 gives upper and lower bounds for µ(M ). They are, however, not particularly useful for the computation of µ(M ), because the gap between ρ(M ) and σ (M ) could be arbitrarily large. More accurate bounds are needed and these can be obtained by using some transformations on M that may change the values of ρ(M ) and σ (M ) but not change µ(M ). The following two constant matrix sets are introduced for this purpose. Deﬁne U = {U ∈ ∆ : U U ∗ = In } and D = {D = diag D1 , · · · , Ds , d1 Im1 , · · · , df Imf :
∗ Di ∈ C ri ×ri , Di = Di > 0, dj > 0} The matrix sets U and D match the structure of ∆. U is of a (block) diagonal structure of unitary matrices and for any D ∈ D and ∆ ∈ ∆, D (D−1 ) commutes with ∆. Furthermore, for any ∆ ∈ ∆, U ∈ U, and D ∈ D, we have • U ∗ ∈ U, U ∆ ∈ ∆, ∆U ∈ ∆, and σ (U ∆) = σ (∆U ) = σ (∆) • D∆D−1 = ∆, D∆D−1 ∈ ∆, and σ (D∆D−1 ) = σ (∆) More importantly, we have ρ(M U ) ≤ µ(M U ) = µ(M ) = µ(DM D−1 ) ≤ σ (DM D−1 )
(3.15) In the above, µ(M U ) = µ(M ) is derived from det(I − M ∆) = det(I − M U U ∗ ∆) and U ∗ ∆ ∈ ∆, σ (U ∗ ∆) = σ (∆). Also, µ(M ) = µ(DM D−1 ) can be seen from det(I − DM D−1 ∆) = det(I − DM ∆D−1 ) = det(I − M ∆). The relations in (3.15) directly lead to the following theorem. Theorem 3.7. max ρ(M U ) ≤ µ(M ) ≤ inf σ (DM D−1 )
U ∈U D ∈D 3.3 Structured Singular Values 33 Theorem 3.7 provides tighter upper and lower bounds on µ(M ). In [23], it was shown that the above lower bound is actually an equality, max ρ(M U ) = µ(M )
U ∈U Unfortunately, this optimisation problem is not convex. ρ(M U ) may have multiple local maxima. Direct computation of maxU ∈U ρ(M U ) may not ﬁnd a global maximum. On the other hand, the upper bound of µ(M ) in Theorem 3.7 is easier to ﬁnd, since σ (DM D−1 ) is convex in lnD ([25, 139]). However, this upper bound is not always equal to µ(M ). For the cases of 2s + f ≤ 3, it can be shown that µ(M ) = inf σ (DM D−1 )
D ∈D The problem of calculating µ(M ) is therefore reduced to an optimal diagonal scaling problem. Most algorithms proposed so far for the structured singular values compute this upper bound. 4 H∞ Design A control system is robust if it remains stable and achieves certain performance criteria in the presence of possible uncertainties as discussed in Chapter 2. The robust design is to ﬁnd a controller, for a given system, such that the closedloop system is robust. The H∞ optimisation approach, being developed in the last two decades and still an active research area, has been shown to be an eﬀective and eﬃcient robust design method for linear, timeinvariant control systems. In the previous chapter, various robust stability considerations and nominal performance requirements were formulated as a minimisation problem of the inﬁnitive norm of a closedloop transfer function matrix. Hence, in this chapter, we shall discuss how to formulate a robust design problem into such a minimisation problem and how to ﬁnd the solutions. The H∞ optimisation approach solves, in general, the robust stabilisation problems and nominal performance designs. 4.1 Mixed Sensitivity H∞ Optimisation
Every practising control engineer knows very well that it will never be appropriate in any industrial design to use just a single cost function, such as those formulated in Chapter 3. A reasonable design would use a combination of these functions. For instance, it makes sense to require a good tracking as well as to limit the control signal energy, as depicted in Figure 4.1. We may then want to solve the following mixed sensitivity (or, socalled S over KS) problem, min (I + GK )−1 K (I + GK )−1 (4.1)
∞ Kstabilising This cost function can also be interpreted as the design objectives of nominal performance, good tracking or disturbance attenuation, and robust stabilisation, with regard to additive perturbation. 36 4 H∞ Design Fig. 4.1. A mixed sensitivity consideration In order to adopt a uniﬁed solution procedure, the above cost function (4.1) can be recast into a standard conﬁguration as in Figure 4.2. This can be obtained by using the LFT technique introduced in Chapter 2 and by specifying/grouping signals into sets of external inputs, outputs, input to the controller and output from the controller, which of course is the control signal. Note that in Figure 4.2 all the external inputs are denoted by w, z denotes the output signals to be minimised/penalised that includes both performance and robustness measures, y is the vector of measurements available to the controller K and u the vector of control signals. P (s) is called the generalised plant or interconnected system. The objective is to ﬁnd a stabilising controller K to minimise the output z , in the sense of energy, over all w with energy less than or equal to 1. Thus, it is equivalent to minimising the H∞ norm of the transfer function from w to z . Fig. 4.2. The standard H∞ conﬁguration Partitioning the interconnected system P as: 4.1 Mixed Sensitivity H∞ Optimisation 37 P (s) = it can be obtained directly P11 (s) P12 (s) P21 (s) P22 (s) z = [P11 + P12 K (I − P22 K )−1 P21 ]w =: Fl (P, K )w where Fl (P, K ) is the lower linear fractional transformation of P and K . The design objective now becomes
Kstabilising min Fl (P, K ) ∞ (4.2) and is referred to as the H∞ optimisation problem. Referring to the problem in (4.1), it is easy to derive its standard form e z1 = , y = e and u = u. Consequently, the by deﬁning w = r, z = z2 u interconnected system ⎡ ⎤ I −G P = ⎣0 I ⎦ (4.3) I −G where we may set P11 = P21 = I I 0 P12 = P22 −G I = −G Other mixed cases of cost transfer function matrices such as S over T, S over T over KS, etc., can be dealt with similarly to formulate into the standard conﬁguration. In practical designs, it is often necessary to include (closedloop) weights with these cost functions. For instance, instead of (4.1), we may have to consider with z1 = W1 e and z2 = W2 u, min W1 (I + GK )−1 W2 K (I + GK )−1 (4.4)
∞ Kstabilising These weighting functions can be easily absorbed into the interconnected system P (s), as in this case, ⎤ ⎡ W1 −W1 G W2 ⎦ (4.5) P = ⎣0 I −G 38 4 H∞ Design 4.2 2DegreeOfFreedom H∞ Design
Among controlsystem design speciﬁcations, referencesignal tracking is often a requirement. The output of a designed control system is required to follow a preselected signal, or in a more general sense, the system is forced to track, for instance, the step response of a speciﬁed model (inﬁnitetime model following task). A 2degreeoffreedom(2DOF) control scheme suits naturally this situation. The idea of a 2DOF scheme is to use a feedback controller (K2 ) to achieve the internal and robust stability, disturbance rejection, etc., and to design another controller (K1 ) on the feedforward path to meet the tracking requirement, which minimises the diﬀerence between the output of the overall system and that of the reference model. 2DOF control schemes were successfully applied in some practical designs ([67, 87, 114]). Figure 4.3 shows one structure of these 2DOF control schemes. In this conﬁguration, in addition to the internal stability requirement, two signals e and u are to be minimised. The signal e shows the diﬀerence between the system output and the reference model output. u is the control signal and also is related to robust stability in the additive perturbation case. In Figure 4.3, two weighting functions are included to reﬂect the tradeoﬀ between and/or characteristics of these two penalised signals. Fig. 4.3. A 2DOF design conﬁguration The conﬁguration of Figure 4.3 can be rearranged as the standard conﬁgW1 e r z ,y= and uration of Figure 4.2 by deﬁning w = r, z = 1 = z2 y W2 u u = u. Note that in this conﬁguration, K = [K1 − K2 ]. Consequently, the interconnected system ⎡ ⎢ P =⎢ ⎣ where we may set P11 = P21 = −W1 Mo 0 I 0 4.3 H∞ Suboptimal Solutions 39 −W1 Mo W1 G 0 W2 ⎥ ⎥ I 0⎦ 0 G ⎤ P12 = P22 = W1 G W2 0 G 4.3 H∞ Suboptimal Solutions
The solution to the optimisation problem (4.2) is not unique except in the scalar case ([175, 59]). Generally speaking, there are no analytic formulae for the solutions. In practical design, it is usually suﬃcient to ﬁnd a stabilising controller K such that the H∞ norm of the closedloop transfer function is less than a given positive number, i.e., Fl (P, K )
∞ <γ (4.6) where γ > γo := minKstabilising Fl (P, K ) ∞ . This is called the H∞ suboptimal problem. When certain conditions are satisﬁed, there are formulae to construct a set of controllers that solve the problem (4.6). The solution set is characterised by a free parameter Q(s), which is stable and of ∞norm less than γ . It is imaginable that if we successively reduce the value of γ , starting from a relatively large number to ensure the existence of a suboptimal solution, we may obtain an optimal solution. It should, however, be pointed out here that when γ is approaching its minimum value γo the problem would become more and more illconditioned numerically. Hence, the “solution” thus obtained might be very unreliable. 4.3.1 Solution Formulae for Normalised Systems Let the statespace description of the generalised (interconnected) system P in Figure 4.2 be given by x(t) = Ax(t) + B1 w(t) + B2 u(t) ˙ z (t) = C1 x(t) + D11 w(t) + D12 u(t) y (t) = C2 x(t) + D21 w(t) where x(t) ∈ Rn is the state vector, w(t) ∈ Rm1 the exogenous input vector, u(t) ∈ Rm2 the control input vector, z (t) ∈ Rp1 the error (output) vector, and 40 4 H∞ Design y (t) ∈ Rp2 the measurement vector, with p1 ≥ m2 and p2 ≤ m1 . P (s) may be further denoted as P (s) = P11 (s) P12 (s) P21 (s) P22 (s) ⎤ ⎡ A B1 B2 = ⎣ C1 D11 D12 ⎦ 0 C2 D21 AB CD (4.7) =: Note that in the above deﬁnition it is assumed that there is no direct link between the control input and the measurement output, i.e. D22 = 0. This assumption is reasonable because most industrial control systems are strictly proper and the corresponding P (s) would have a zero D22 in a sensible design conﬁguration. The case of a nonzero direct term between u(t) and y (t) will be, however, considered in the next subsection for the sake of completeness. The H∞ solution formulae use solutions of two algebraic Riccati equations(ARE). An algebraic Riccati equation E T X + XE − XW X + Q = 0 where W = W T and Q = QT , uniquely corresponds to a Hamiltonian matrix E −W . The stabilising solution X , if it exists, is a symmetric matrix that −Q −E T solves the ARE and is such that E − W X is a stable matrix. The stabilising solution is denoted as X := Ric Deﬁne Rn := D1∗ T D1∗ − and γ 2 Ip1 0 T ˜ Rn := D∗1 D∗1 − 00 where D1∗ = D11 D12 and D∗1 = D11 D21 γ 2 Im1 0 00 E −W −Q −E T ˜ Assume that Rn and Rn are nonsingular. We deﬁne two Hamiltonian matrices H and J as 4.3 H∞ Suboptimal Solutions 41 H := A 0 T −C1 C1 −AT − B − T Rn 1 D1∗ C1 B T T −C1 D1∗ J := Let 0 CT AT T ˜− Rn 1 D∗1 B1 C − T T −B1 B1 −A −B1 D∗1 X := Ric (H) Y := Ric (J) Based on X and Y , a state feedback matrix F and an observer gain matrix L can be constructed, which will be used in the solution formulae, ⎤ ⎡ F11 F1 − =: ⎣ F12 ⎦ F := −Rn 1 (D1∗ T C1 + B T X ) =: F2 F2 T T ˜ −1 L := −(B1 D∗1 + Y C )Rn =: L1 L2 =: L11 L12 L2 where F1 , F2 , F11 and F12 are of m1 , m2 , m1 − p2 and p2 rows, respectively, and L1 , L2 , L11 and L12 of p1 , p2 , p1 − m2 and m2 columns, respectively. Glover and Doyle [48] derived necessary and suﬃcient conditions for the existence of an H∞ suboptimal solution and further parameterised all such controllers. The results are obtained under the following assumptions. A1 A2 A3 A4 (A, B2 ) is stabilisable and (C2 , A) detectable; 0 and D21 = 0 Ip2 ; D12 = Im2 A − jωI B2 has full column rank for all ω ; C1 D12 A − jωI B1 has full row rank for all ω . C2 D21 Together with appropriate partition of D11 = D1111 D1112 , where D1122 D1121 D1122 has m2 rows and p2 columns, the solution formulae are given in the following theorem. Theorem 4.1. [175] Suppose P (s) satisﬁes the assumptions A1 − A4. (a) There exists an internally stabilising controller K (s) such that Fl (P, K ) ∞ < γ if and only if (i) γ > max(σ [D1111 , D1112 ], σ [D1111 T , D1121 T ]) and (ii) there exist stabilising solutions X ≥ 0 and Y ≥ 0 satisfying the two AREs 42 4 H∞ Design corresponding to the Hamiltonian matrices H and J, respectively, and such that ρ(XY ) < γ 2 where ρ(·) denotes the spectral radius. (b) Given that the conditions of part (a) are satisﬁed, then all rational, internally stabilising controllers, K (s), satisfying Fl (P, K ) ∞ < γ are given by K (s) = Fl (M, Φ) for any rational Φ(s) ∈ H∞ such that Φ(s) ∞ < γ , where M (s) has the realisation ⎡ˆ ˆ ˆ ⎤ A B1 B2 ⎣ C1 D11 D12 ⎦ M (s) = ˆ ˆ ˆ ˆˆ C2 D21 0 and ˆ D11 = −D1121 D1111 T (γ 2 I − D1111 D1111 T )−1 D1112 − D1122 ˆ ˆ D12 ∈ Rm2 ×m2 and D21 ∈ Rp2 ×p2 are any matrices (e.g. Cholesky factors) satisfying ˆ ˆT D12 D12 = I − D1121 (γ 2 I − D1111 T D1111 )−1 D1121 T ˆT ˆ D21 D21 = I − D1112 T (γ 2 I − D1111 D1111 T )−1 D1112 and ˆ ˆ B2 = Z (B2 + L12 )D12 ˆ ˆ C2 = −D21 (C2 + F12 ) ˆ ˆ− ˆ ˆ B1 = −ZL2 + B2 D121 D11 ˆ = −ZL2 + Z (B2 + L12 )D11 ˆ ˆ ˆ− ˆ C1 = F2 + D11 D211 C2 ˆ = F2 − D11 (C2 + F12 ) ˆ ˆ ˆ− ˆ A = A + BF + B1 D211 C2 ˆ = A + BF − B1 (C2 + F12 ) 4.3 H∞ Suboptimal Solutions 43 where Z = (I − γ −2 Y X )−1 When Φ(s) = 0 is chosen, the corresponding suboptimal controller is called the central controller that is widely used in the H∞ optimal design and has the statespace form Ko (s) = ˆˆ A B1 ˆ1 D11 Cˆ In the assumptions made earlier, A2 assumes that the matrices D12 and D21 are in normalised forms and the system P (s) is thus a socalled normalised system. When these two matrices are of full rank but not necessarily in the normalised forms will be discussed later. 4.3.2 Solution to S overKS Design The mixed sensitivity optimisation S overKS is a common design problem in practice. The problem is formulated as in (4.1) or (4.4), and the interconnected system is in (4.3) or (4.5). In this case, the second algebraic Riccati equation is of a special form, i.e. the constant term is zero. We list the solution formulae for this special design problem here. For simplicity, we consider the suboptimal design of (4.1). That is, for a given γ , we want to ﬁnd a stabilising controller K (s) such that, (I + GK )−1 K (I + GK )−1 <γ
∞ The interconnected system in the standard conﬁguration is ⎤ ⎡ ⎤ ⎡ 0 −B A Ip −G ⎢C 0⎥ Ip ⎥ P = ⎣ 0 Im ⎦ = ⎢ ⎣0 0 Im ⎦ Ip −G Ip 0 C where we assume that G(s) has m inputs and p outputs, and G(s) = AB C0 It is clear that γ must be larger than 1 from the assumption (a)/(i) of Theorem 4.1, because the 2norm of the constant matrix D11 of the above P (s) is 1. In this case, the two algebraic Riccati equations are 44 4 H∞ Design AT X + XA − XBB T X + (1 − γ −2 )−1 C T C = 0 AY + Y AT − Y C T CY = 0 And, the formula of the central controller is Ko = A − BB T X − (1 − γ −2 )−1 ZY C T C ZY C T 0 BT X where Z = (I − γ −2 Y X )−1 . The formulae for all suboptimal controllers are K (s) = Fl (M, Φ) with M (s) having the statespace realisation ⎤ ⎡ A − BB T X − (1 − γ −2 )−1 ZY C T C ZY C T −ZB M (s) = ⎣ 0 Im ⎦ BT X Ip 0 −(1 − γ −2 )−1 C and Φ(s) ∈ H∞ , such that Φ 4.3.3 The Case of D22 = 0 When there is a direct link between the control input and the measurement output, the matrix D22 will not disappear in (4.7). The controller formulae for the case D22 = 0 are discussed here. As a matter of fact, the D22 term can be easily separated from the rest of the system as depicted in Figure 4.4. A controller K (s) for the system with zero D22 will be synthesised ﬁrst, and then the controller K (s) for the original system can be recovered from K (s) and D22 by K (s) = K (s)(I + D22 K (s))−1 ˜ The statespace model of K (s) can be derived as AK − BK D22 (I + DK D22 )−1 CK BK (I + D22 DK )−1 ˜ K (s) = DK (I + D22 DK )−1 (I + DK D22 )−1 CK where we assume that K (s) = AK BK CK DK
∞ < γ. 4.3 H∞ Suboptimal Solutions 45 Fig. 4.4. The case of nonzero D22 4.3.4 Normalisation Transformations In general, the system data given would not be in the normalisation form as discussed in Section 4.3.1, though D12 will be of full column rank and D21 of full row rank, respectively, for any realistic control systems. In order to apply the results in Theorem 4.1, certain transformations must be used ﬁrst. Using the singular value decomposition(SVD) or otherwise, we may ﬁnd orthonormal matrices U12 , V12 , U21 and V21 , such that
T U12 D12 V12 = 0 Σ12 (4.8) (4.9) T U21 D21 V21 = 0 Σ21 where Σ12 : m2 × m2 and Σ21 : p2 × p2 are nonsingular. Furthermore, we have
T− U12 D12 V12 Σ121 = 0 I (4.10) (4.11) − T Σ211 U21 D21 V21 = 0 I The righthand sides of the above equations are now in the normalised form. When p1 > m2 and p2 < m1 , the matrices U12 and V21 can be partitioned as U12 = V21 = U121 U122 V211 V212 (4.12) (4.13) 46 4 H∞ Design with U121 : (p1 − m2 ) × p1 , U122 : m2 × p1 , V211 : (m1 − p2 ) × m1 and V212 : p2 × m1 . The normalisation of P (s) into P (s) is based on the above transformations and shown in Figure 4.5. Fig. 4.5. Normalisation conﬁguration Given P (s), the statespace form of P (s) is obtained as follows B1 B2 C1 C2 = = = =
T B1 V21 T− B2 V12 Σ121 U12 C1 − Σ211 U21 C2 T T U121 D11 V211 U121 D11 V212 T T U122 D11 V211 U122 D11 V212 T D11 = U12 D11 V21 = D12 = 0 T− = U12 D12 V12 Σ121 I − T D21 = 0 I = Σ211 U21 D21 V21 Since V21 and U12 are orthonormal, the inﬁnitive norms of the transfer function matrices from w to z and from w to z are the same, i.e. Tzw ∞ = Tzw ∞ , 4.3 H∞ Suboptimal Solutions 47 − T− with obviously K (s) = V12 Σ121 K (s)Σ211 U21 , where K (s) is a suboptimal solution with regard to P (s). 4.3.5 Direct Formulae for H∞ Suboptimal Central Controller Based on the transformations discussed in the last subsection and by further manipulations, direct solution formulae can be derived for the general, nonnormalised system data (4.7) [57]. We ﬁrst discuss the two algebraic Riccati equations that are essential in the computations of H∞ suboptimal controllers. The conclusion is a little surprising: the two AREs remain the same with matrices in the normalised system data (matrices with bars) replaced by corresponding matrices in the general form (matrices without bars) of P (s). This is obtained by the following routine matrix manipulations,
TT T C 1 C 1 = C1 U12 U12 C1 = C1 C1 T B T −C 1 D1∗ = = T B1 V21 TT T −C1 U12 U12 D11 V21 T− B2 V12 Σ121 TT T− −C1 U12 U12 D12 V12 Σ121 B T −C1 D1∗ T V21 0 T− 0 V12 Σ121 T T− U12 D11 V21 U12 D12 V12 Σ121 D 1∗ D 1∗ = = where T T T V21 D11 U12 −T T T Σ12 V12 D12 U12 0 V21 VT 0 D1∗ T D1∗ 21 T −1 −T 0 V12 Σ12 0 Σ12 V12 D1∗ := D11 D12 Thus, Rn = with R := D1∗ T D1∗ − γ 2 Im1 0 00 0 V21 VT 0 R 21 T −1 −T 0 V12 Σ12 0 Σ12 V12 (4.14) (4.15) Consequently, the Hamiltonian H deﬁned for normalised system data is given by H= A 0 T −C1 C1 −AT − B T R−1 D1∗ C1 B T T −C1 D1∗ (4.16) Similarly, the Hamiltonian J is given by 48 4 H∞ Design J= where 0 CT AT T ˜ R−1 D∗1 B1 C − T T −B1 B1 −A −B1 D∗1 (4.17) D∗1 := and D11 D21 (4.18) γ 2 Ip1 0 ˜ R := D∗1 D∗1 T − 00 with
T 0 0 U12 U12 ˜ R Rn = −1 − T 0 Σ21 U21 0 U21 Σ21T (4.19) Hence, we have shown that the two AREs are exactly the same and so we may, in the following, let X and Y be the stabilising solutions of the two AREs corresponding to the general system data. Another pair of matrices used in Theorem 4.1 may also be deﬁned from the solutions X and Y , F := −R−1 (D1∗ T C1 + B T X ) =: F1 F2 (4.20) (4.21) ˜ L := −(B1 D∗1 T + Y C T )R−1 =: L1 L2 with F1 : m1 × n, F2 : m2 × n, L1 : n × p1 and L2 : n × p2 . It is easy to check that 0 V21 F 0 Σ12 V12 F= and F 11 = V211 F1 F 12 = V212 F1 F 2 = Σ12 V12 F2 Similarly, we have L=L and
T 0 U12 T 0 U21 Σ21 4.3 H∞ Suboptimal Solutions
T L11 = L1 U121 T L12 = L1 U122 T L2 = L2 U21 Σ21 49 Using the above results and Theorem 4.1, with further manipulations, we can get the following corollary. Note that the assumption A2 is relaxed to the general case A2 D12 is of full column rank and D21 of full row rank Also, note that for the sake of simplicity, only the formulae for the central suboptimal controller is given. Formulae for all suboptimal controllers can be derived accordingly. Corollary 4.2. Suppose P (s) satisﬁes the assumptions A1 − A4. (a) There exists an internally stabilising controller K (s) such that Fl (P, K )∞ < γ if and only if (i)
T γ > max{σ (U121 D11 ), σ (D11 V211 )} (4.22) where U121 and V211 are as deﬁned in (4.12) and (4.13), and (ii) there exist solutions X ≥ 0 and Y ≥ 0 satisfying the two AREs corresponding to (4.16) and (4.17), respectively, and such that ρ(XY ) < γ 2 where ρ(•) denotes the spectral radius. (b) Given that the conditions of part (a) are satisﬁed, then the central H∞ suboptimal controller for P (s) is given by K (s) = where
T T T DK = −γ 2 (U122 D12 )−1 U122 (γ 2 I − D11 V211 V211 D11 U121 U121 )−1 T T D11 V212 (D21 V212 )−1 BK = −Z [L2 − (B2 + L1 D12 )DK ] CK = F2 − DK (C2 + D21 F1 ) AK = A + BF − BK (C2 + D21 F1 ) (4.23) AK BK CK DK (4.24) (4.25) (4.26) (4.27) where Z = (I − γ −2 Y X )−1 (4.28) and U12 , V21 , F and L are as deﬁned in (4.8) and (4.12), (4.9) and (4.13), (4.20), and (4.21), respectively. 50 4 H∞ Design Remark: The above corollary addresses the general case of p1 > m2 and p2 < m1 . There are three special cases of the dimensions in which the solution formulae would be simpler. Case 1: p1 = m2 and p2 < m1 . In this case, the orthogonal transformation on D12 is not needed. The T condition (a)/(i) in Corollary 4.2 is reduced to γ > σ (D11 V211 ), and
− T T DK = −D121 D11 V212 (D21 V212 )−1 Case 2: p1 > m2 and p2 = m1 . In this case, the orthogonal transformation on D21 is not needed. The condition (a)/(i) in Corollary 4.2 is reduced to γ > σ (U121 D11 ), and
− DK = −(U122 D12 )−1 U122 D11 D211 Case 3: p1 = m2 and p2 = m1 . In this case, both orthogonal transformations are not needed. The condition (a)/(i) in Corollary 4.2 is reduced to any positive γ , and
− − DK = −D121 D11 D211 Another special case is when D11 = 0, in which the central controller is simply given by K (s) = A + BF + ZL2 (C2 + D21 F1 ) −ZL2 0 F2 4.4 Formulae for Discretetime Cases
In this section, formulae for H∞ solutions in discretetime cases ([53, 60]) will be given. Consider a generalised, linear, discretetime system, described by the equations xk+1 = Axk + B1 wk + B2 uk zk = C1 xk + D11 wk + D12 uk yk = C2 xk + D21 wk + D22 uk (4.29) where xk ∈ Rn is the state vector, wk ∈ Rm1 is the exogenous input vector (the disturbance), uk ∈ Rm2 is the control input vector, zk ∈ Rp1 is the error vector, and yk ∈ Rp2 is the measurement vector, with p1 ≥ m2 and p2 ≤ m1 . The transfer function matrix of the system will be denoted by 4.4 Formulae for Discretetime Cases 51 P (z ) = P11 (z ) P12 (z ) P21 (z ) P22 (z ) ⎤ ⎡ A B1 B2 = ⎣ C1 D11 D12 ⎦ C2 D21 D22 AB CD (4.30) =: Similar to the continuoustime case, the H∞ suboptimal discretetime control problem is to ﬁnd an internally stabilising controller K (z ) such that, for a prespeciﬁed positive value γ , F (P, K ) We need the following assumptions. A1 (A, B2 ) is stabilisable and (C2 , A) is detectable; A2 A3 A − ejΘ In B2 C1 D12 A − ejΘ In B1 C2 D21 has full column rank for all Θ ∈ [0, 2π ); has full row rank for all Θ ∈ [0, 2π ).
∞ <γ (4.31) We shall also assume that a loopshifting transformation that enables us to set D22 = 0 has been carried out. The general case (D22 = 0) will be dealt with at the end of this section. Note that the method under consideration does not involve reduction of the matrices D12 and D21 to some special form, as is usually required in the design of continuoustime H∞ controllers. Let D11 D12 C1 , D= C= Im1 0 0 and deﬁne J= I I 0 0 0 Ip1 ˆ ˜ , J = m1 , J = m1 0 −γ 2 Im1 0 −γ 2 Im2 0 −γ 2 Ip1 Let X∞ be the solution to the discretetime Riccati equation X∞ = C J C + AT X∞ A − LT R−1 L
where R = D J D + B T X∞ B =:
T T R 1 R2 R2 R3 T (4.32) 52 4 H∞ Design L = D J C + B T X∞ A =: T L1 L2 Assume that there exists an m2 × m2 matrix V12 such that
T V12 V12 = R3 and an m1 × m1 matrix V21 such that
T T− V21 V21 = −γ −2 ∇, ∇ = R1 − R2 R3 1 R2 < 0 Deﬁne the matrices At Ct ⎡ ˜ Bt ˜t D ⎤ ˜˜ At  Bt1 Bt2 ⎢ −−  − − −− ⎥ ⎥ =: ⎢ ˜˜ ⎣ Ct1  Dt11 Dt12 ⎦ = ˜˜ Ct2  Dt21 Dt22 ⎡
−  B1 V21 1 − −−−−−−− − −  V12 R3 1 R2 V21 1 −1  D21 V21 A − B1 ∇−1 L∇ ⎢−−−−−−−−−−− ⎢ − ⎣ V12 R3 1 (L2 − R2 ∇−1 L∇ ) C2 − D21 ∇−1 L∇ where ⎤ 0 −− ⎥ ⎥ I⎦ 0 T− L∇ = L1 − R2 R3 1 L2 Let Z∞ be the solution to the discretetime Riccati equation
− ˜ ˆ ˜T Z∞ = Bt J Bt + At Z∞ AT − Mt St 1 MtT t (4.33) in which St1 St2 T ˜ ˆ˜T St = Dt J Dt + Ct Z∞ Ct =: T St2 St3
T ˜ ˆ˜T Mt = Bt J Dt + At Z∞ Ct =: [Mt1 Mt2 ] Equations (4.32) and (4.33) are referred as the XRiccati equation and ZRiccati equation, respectively. A stabilising controller that satisﬁes F (P, K )
∞ <γ exists, if and only if ([53]) 1. there exists a solution to the Riccati equation (4.32) satisfying X∞ ≥ 0 ∇<0 such that A − BR−1 L is asymptotically stable; 2. there exists a solution to the Riccati equation (4.33) such that 4.4 Formulae for Discretetime Cases 53 Z∞ ≥ 0
− T St1 − St2 St3 1 St2 < 0 − with At − Mt St 1 Ct asymptotically stable. In this case, a controller that achieves the objective may be given by ([53]) − ˆ ˆ xk+1 = At xk + B2 uk + Mt2 St3 1 (yk − Ct2 xk ) ˆ − V12 uk = −Ct1 xk − St2 St3 1 (yk − Ct2 xk ) ˆ ˆ that yields K0 = At −
− − − B2 V12 1 (Ct1 − St2 St3 1 Ct2 ) − Mt2 St3 1 Ct2 −1 −1 −V12 (Ct1 − St2 St3 Ct2 ) (4.34)
− − − −B2 V12 1 St2 St3 1 + Mt2 St3 1 −1 −1 −V12 St2 St3 This is the socalled central controller that is widely used in practice. Consider now the general case of D22 = 0. Suppose ˆˆ AB ˆ K = ˆk ˆ k Ck Dk is a stabilising controller for D22 set to zero, and satisﬁes F Then ˆ ˆ ˆ ˆ ˆ F (P, K (I + D22 K )−1 ) = P11 + P12 K (I + D22 K − P22 K )−1 P21 00 ˆ ,K =F P− 0 D22 ˆ In this way, a controller K for P− 00 0 D22 P− 00 ˆ ,K 0 D22
∞ <γ ˆ ˆ yields a controller K = K (I + D22 K )−1 for P . It may be shown that K= ˆ ˆ ˆ ˆˆ ˆ ˆ ˆ Ak − Bk D22 (Im2 + Dk D22 )−1 Ck Bk − Bk D22 (Im2 + Dk D22 )−1 Dk −1 ˆ −1 ˆ ˆ ˆ (Im2 + Dk D22 ) Dk (Im2 + Dk D22 ) Ck ˆ In order to ﬁnd K from K we must exclude the possibility of the feedback ˆ system becoming illposed, i.e. det(I + K (∞)D22 ) = 0. 5 H∞ Loopshaping Design Procedures In the previous chapter the H∞ optimisation approach was introduced that formulated robust stabilisation and nominal performance requirements as (sub)optimisation problems of the H∞ norm of certain cost functions. Several formulations of cost function are applicable in the robust controller design, for instance, the weighted S/KS and S/T design methods. The optimisation of S/KS , where S is the sensitivity function and K the controller to be designed, could achieve the nominal performance in terms of tracking or output disturbance rejection and robustly stabilise the system against additive model perturbations. On the other hand, the mixed sensitivity optimisation of S/T , where T is the complementary sensitivity function, could achieve robust stability against multiplicative model perturbations in addition to the nominal performance. Both of them are useful robust controller design methods, but the model perturbation representations are limited by the condition on the number of righthalf complex plane poles. Also, there may exist undesirable polezero cancellations between the nominal model and the H∞ controllers ([138]). In this chapter, an alternative way to represent the model uncertainty is introduced. The uncertainty is described by the perturbations directly on the coprime factors of the nominal model ([153, 154]). The H∞ robust stabilisation against such perturbations and the consequently developed design method, the H∞ loopshaping design procedure (LSDP) ([100, 101]), could relax the restrictions on the number of righthalf plane poles and produce no polezero cancellations between the nominal model and controller designed. This method does not require an iterative procedure to obtain an optimal solution and thus raises the computational eﬃciency. Furthermore, the H∞ LSDP inherits classical loopshaping design ideas so that practising control engineers would feel more comfortable to use it. 56 5 H∞ Loopshaping Design Procedures 5.1 Robust Stabilisation Against Normalised Coprime Factor Perturbations
+ + ˜˜ Matrices (M , N ) ∈ H∞ , where H∞ denotes the space of functions with no poles in the closed righthalf complex plane, constitute a left coprime factorisation of a given plant model G if and only if ˜ ˜ (i) M is square, and det(M )= 0 . (ii) the plant model is given by ˜ ˜ G = M −1 N
+ ˜˜ (iii) There exists (V , U ) ∈ H∞ such that (5.1) ˜˜ ˜˜ MV + NU = I (5.2) A left coprime factorisation of a plant model G as deﬁned in (5.1) is normalised if and only if ˜˜ ˜˜ N N − + M M − = I, ˜ ˜ where N − (s) = N T (−s), etc. For a minimal realisation of G(s), G(s) = D + C (sI − A)−1 B AB =: CD ∀s (5.3) (5.4) A statespace construction for the normalised left coprime factorisation can be obtained in terms of the solution to the generalised ﬁlter algebraic Riccati equation (A − BDT R−1 C )Z + Z (A − BDT R−1 C )T − ZC T R−1 CZ + B (I − DT R−1 D)B T = 0 (5.5) where R := I + DDT and Z ≥ 0 is the unique stabilising solution. If H = −(ZC T + BDT )R−1 , then A + HC B + HD H ˜˜ N M := R−1/2 C R−1/2 D R−1/2 (5.6) ˜ ˜ is a normalised left coprime factorisation of G such that G = M −1 N . The normalised right coprime factorisation can be deﬁned similarly and a statespace representation can be similarly obtained in terms of the solution to the generalised control algebraic Riccati equation [101], (A − BS −1 DT C )T X + X (A − BS −1 DT C ) − XBS −1 B T X + C T (I − DS −1 DT )C = 0 (5.7) 5.1 Robust Stabilisation Against Normalised Coprime Factor Perturbations 57 where S := I + DT D and X ≥ 0 is the unique stabilising solution. A perturbed plant transfer function can be described by ˜ ˜ G∆ = (M + ∆M )−1 (N + ∆N ) ˜ ˜ where (∆M , ∆N ) are unknown but stable transfer functions that represent the ˜ ˜ uncertainty (perturbation) in the nominal plant model. The design objective of robust stabilisation is to stabilise not only the nominal model G, but the family of perturbed plants deﬁned by ˜ ˜ G = {(M + ∆M )−1 (N + ∆N ) : [∆M , ∆N ] ˜ ˜ ˜ ˜
∞ <} where > 0 is the stability margin. Using a feedback controller K as shown schematically in Figure 5.1 and the SmallGain Theorem, the feedback system ˜˜ (M , N , K, ) is robustly stable if and only if (G, K ) is internally stable and ˜ K (I − GK )−1 M −1 −1 ˜ −1 (I − GK ) M ≤
∞ −1 Fig. 5.1. Robust stabilisation with regard to coprime factor uncertainty To maximise the robust stability of the closedloop system given in Figure 5.1, one must minimise γ := K ˜ (I − GK )−1 M −1 I ∞ The lowest achievable value of γ for all stabilising controllers K is γo = inf K ˜ (I − GK )−1 M −1 I (5.8)
∞ K stabilizing 58 5 H∞ Loopshaping Design Procedures and is given in [101] by ˜˜ γo = (1 − [N M ] where ·
H 2 −1/2 H) (5.9) denotes the Hankel norm. From [101] ˜˜ [N M ]
2 H = λmax (ZX (I + ZX )−1 ) (5.10) where λmax (·) represents the maximum eigenvalue, hence from (5.9), γo = (1 + λmax (ZX ))1/2 (5.11) From [101], all controllers optimising γ are given by K = U V −1 , where U and V are stable and are right coprime factorisations of K , and where ˜ U −N ∗ ˜∗ + V M ˜˜ = [N M ]
∞ H This is a Hankel approximation problem and can be solved using an algorithm developed by Glover [46]. A controller that achieves a γ > γ0 is given in [101] by K := A + BF + γ 2 (LT )−1 ZC T (C + DF ) γ 2 (LT )−1 ZC T −DT BT X (5.12) where F = −S −1 (DT C + B T X ) and L = (1 − γ 2 )I + XZ . However, if γ = γo , then L = XZ − λmax (XZ )I , which is singular, and thus (5.12) cannot be implemented. This problem can be resolved using the descriptor system [134, 135]. A controller that achieves a γ ≥ γo can be given in the descriptor form by K := −LT s + LT (A + BF ) + γ 2 ZC T (C + DF ) γ 2 ZC T −DT BT X (5.13) 5.2 Loopshaping Design Procedures
In the classical control systems design with singleinputsingleoutput (SISO) systems, it is a wellknown and practically eﬀective technique to use a compensator to alter the frequency response (the Bode diagram) of the openloop transfer function so that the unity feedback system will achieve stability, good performance and certain robustness. Indeed, these performance requirements discussed in Chapter 3 can be converted into corresponding frequency requirements on the openloop system. For instance, in order to achieve good tracking, it is required that (I + GK )−1 ∞ should be small. 1, for ω over a lowfrequency range, since the That is σ ((I + GK )−1 (jω )) signals to be tracked are usually of low frequency. This in turn implies that 5.2 Loopshaping Design Procedures 59 1, for ω over that frequency range. Similar deductions can be σ (GK (jω )) applied to other designperformance speciﬁcations. However, a direct extension of the above method into multivariable systems is diﬃcult not only because multiinput and multioutput (MIMO) are involved but also due to the lack of phase information in MIMO cases that makes it impossible to predict the stability of the closedloop system formed by the unity feedback. However, based on the robust stabilisation against perturbations on normalised coprime factorisations, a design method, known as the H∞ loopshaping design procedure (LSDP), has been developed [100]. The LSDP method augments the plant with appropriately chosen weights so that the frequency response of the openloop system (the weighted plant) is reshaped in order to meet the closedloop performance requirements. Then a robust controller is synthesised to meet the stability. Fig. 5.2. Onedegreeoffreedom LSDP conﬁguration This loopshaping design procedure can be carried out in the following steps. (i) Using a precompensator, W1 , and/or a postcompensator, W2 , as depicted in Figure 5.2, the singular values of the nominal system G are modiﬁed to give a desired loop shape. Usually, the least singular value of the weighted system should be made large over the lowfrequency range to achieve good performance such as the tracking, the largest singular value is small over the highfrequency range to deal with unmodelled dynamics, and the bandwidth aﬀects the system response speed, while the slope of the singular values near the bandwidth frequency should not be too steep. The nominal system and weighting functions W1 and W2 are combined to form the shaped system, Gs , where Gs = W2 GW1 . It is assumed that W1 and W2 are such that Gs contains no hidden unstable modes. (ii) A feedback controller, Ks , is synthesised that robustly stabilises the normalized left coprime factorisation of Gs , with a stability margin . It can be shown [100] that if is not less than 0.2, the frequency response of Ks W2 GW1 will be similar to that of W2 GW1 . On the other hand, if the achievable is too large, this would probably indicate an overdesigned case in respect of the robustness, which means that the performance of 60 5 H∞ Loopshaping Design Procedures the system may possibly be improved by using a larger γ in computing Ks . (iii) The ﬁnal feedback controller, Kf inal , is then constructed by combining the H∞ controller Ks , with the weighting functions W1 and W2 such that Kf inal = W1 Ks W2 For a tracking problem, the reference signal generally comes between Ks and W1 . In order to reduce the steadystate tracking error, a constant gain Ks (0)W2 (0) is placed on the feedforward path, where Ks (0)W2 (0) = lim Ks (s)W2 (s)
s→0 The closedloop transfer function between the reference r and the plant output y then becomes Y (s) = [I − G(s)Kf inal (s)]−1 G(s)W1 (s)Ks (0)W2 (0)R(s) The above design procedure can be developed further into a twodegreeoffreedom (2DOF) scheme as shown in Figure 5.3. Fig. 5.3. Twodegreeoffreedom LSDP The philosophy of the 2DOF scheme is to use the feedback controller K2 (s) to meet the requirements of internal and robust stability, disturbance rejection, measurement noise attenuation, and sensitivity minimisation. The precompensator K1 is applied to the reference signal, which optimises the response of the overall system to the command input such that the output of the system would be “near” to that of a chosen ideal system Mo . The feedforward compensator K1 depends on design objectives and can be synthesised together with the feedback controller in a single step via the H∞ LSDP [67]. In the 2DOF LSDP, the postcompensator W2 is usually chosen as an identity matrix. The constant ρ is a scaling parameter used to emphasise the modelmatching part in the design. 5.3 Formulae for the Discretetime Case 61 5.3 Formulae for the Discretetime Case
In this section, the formulae for the (1block) H∞ LSDP controller in the discretetime case will be introduced ([58]). 5.3.1 Normalised Coprime Factorisation of Discretetime Plant Let G(z ) be a minimal realisation, discretetime model of a plant, G(z ) = D + C (zI − A)−1 B AB := CD with A : n × n, B : n × m, C : p × n, and D : p × m. + + ˜ ˜ Matrices (M (z ), N (z )) ∈ H∞ , where H∞ denotes the space of functions with all poles in the open unit disc of the complex plane, constitute a left coprime factorisation of G(z ) if and only if ˜ ˜ (i) M is square, and det(M )= 0 . (ii) the plant model is given by ˜ ˜ G = M −1 N
+ ˜˜ (iii) There exists (V , U ) ∈ H∞ such that (5.14) ˜˜ ˜˜ M V + N U = Ip (5.15) A left coprime factorisation of G as deﬁned in (5.14) is normalised if and only if ˜ ˜1 ˜ ˜1 N (z )N T ( ) + M (z )M T ( ) = Ip z z (5.16) The concept of right coprime factorisation and normalised right coprime factorisation can be introduced similarly. However, the work presented here will follow the (normalised) left coprime factorisation, although all results concerning the (normalised) right coprime factorisation can be derived similarly. Statespace constructions for the normalised coprime factorisations can be obtained in terms of the solutions to the following two discrete algebraic Riccati equations(DARE), ΦT P Φ − P − ΦT P BZ1 Z1 T B T P Φ + C T R1 −1 C = 0 and
T ΦQΦT − Q − ΦQC T Z2 Z2 CQΦT + BR2 −1 B T = 0 (5.17) (5.18) 62 5 H∞ Loopshaping Design Procedures where R1 = Ip + DDT , R2 = Im + DT D, Φ = A − BR2 −1 DT C , Z1 Z1 T = (R2 + B T P B )−1 , Z2 T Z2 = (R1 + CQC T )−1 . And, P ≥ 0 and Q ≥ 0 are the unique stabilising solutions, respectively. Without loss of generality, we may assume that both Z1 and Z2 are square matrices, and Z1 = Z1 T , Z2 = Z2 T . Further, by deﬁning H = −(AQC T +BDT )Z2 T Z2 and F = −Z1 Z1 T (B T P A+ T D C ), then A + HC B + HD H ˜˜ N M := Z2 D Z2 Z2 C and N M ⎤ A + BF BZ1 := ⎣ C + DF DZ1 ⎦ Z1 F ⎡ (5.19) (5.20) are the normalised left, and right, coprime factorisations of G, correspondingly. 5.3.2 Robust Controller Formulae As in the continuoustime case, the discretetime H∞ loopshaping design procedure is based on the construction of a robust stabilising controller against the perturbations on the coprime factors. The same form of cost function for robust stabilisation will be derived, and the optimal achievable γ is given by γo = (1 + λmax (QP ))1/2 (5.21) where Q and P are the solutions to (5.17) and (5.18), respectively. For a given γ > γo , a suboptimal H∞ LSDP controller K in the discretetime case can be recast as a standard H∞ suboptimal control problem as was discussed in Section 4.4. The generalised (interconnected) system in this case is P (z ) = P11 (z ) P12 (z ) P21 (z ) P22 (z ) ⎤ ⎡ Im 0 ˜ = ⎣ M −1 G ⎦ ˜ M −1 G ⎤ ⎡ A −HZ2 −1 B ⎢0 0 Im ⎥ ⎥ =⎢ ⎣ C Z2 −1 D⎦ D C Z2 −1 (5.22) Following the solution procedure given in Section 4.4, one more DARE needs to be solved in order to compute the required controller. In general H∞ 5.3 Formulae for the Discretetime Case 63 suboptimal problems, two more algebraic Riccati equations are to be solved. Here, however, due to the structure of P (z ) in (5.22), it can be shown that the solution to one of the DARE is always zero. The third DARE is the following −Z2 −1 H T ˜ AT X∞ A − X∞ − F T (R + X∞ R 2 − 1 /2 B T ˜ −HZ2 −1 BR2 −1/2 )F + C T C = 0 where −Z2 −1 H T ˜ F = −(R + R2 −1/2 B T ( and R= Z2 −2 − γ 2 Ip Z2 −1 R1 −1/2 D Im DT R1 −1/2 Z2 −1 X∞ −HZ2 −1 BR2 −1/2 )−1 X∞ A) (5.23) −Z2 −1 C −Z2 −1 H T + R2 −1/2 B T DT R1 −1/2 C F1 , where, F1 : p × n and F2 : m × n, a F2 suboptimal H∞ discretetime LSDP(DLSDP) controller K can be constructed as ˜ Further, by deﬁning F = K (z ) = where ˆ ˆ ˆ ˆ AK = AK − BK D(I + DK D)−1 CK −1 ˆ ˆ BK = BK (I + DDK ) ˆ ˆ K D)−1 CK CK = (I + D ˆ ˆ DK = DK (I + DDK )−1 with ˆ DK = −(R2 + B T X∞ B )−1 (DT − B T X∞ H ) ˆ ˆ BK = −H + B DK − 1 /2 ˆ ˆ CK = R F2 − DK (C + Z2 −1 F1 )
2 AK BK CK DK (5.24) ˆ ˆ AK = A + HC + B CK 5.3.3 The Strictly Proper Case (5.25) It may be appropriate to say that most (formulated) plants considered in the practical, discretetime controlsystems design are, in using the H∞ optimisation approach in particular, strictly proper, i.e. D = 0. This is not only 64 5 H∞ Loopshaping Design Procedures because most physical plants in industrial studies are strictly proper, as in the continuoustime case, but also because the H∞ controllers designed tend to be proper due to the “ﬂatness” of the optimality sought in the synthesis. Hence, when the (formulated) plant is just proper, it is possible to encounter the problem of an algebraic loop in the implementation of the resultant controller. When the plant under consideration is strictly proper, all the computations and formulae described in Section 5.3.2 will be signiﬁcantly simpler. The two DAREs (5.17) and (5.18) become AT P A − P − AT P BZ1 Z1 T B T P A + C T C = 0 and
T AQAT − Q − AQC T Z2 Z2 CQAT + BB T = 0 (5.26) (5.27) where Z1 Z1 T = (Im + B T P B )−1 , Z2 T Z2 = (Ip + CQC T )−1 . The third DARE (5.23) is now the following −Z2 −1 H T ˜ X∞ AT X∞ A − X∞ − F T (R + BT ˜ −HZ2 −1 B )F + C T C = 0 where −Z2 −1 H T ˜ F = −(R + BT ( and R= Z2 −2 − γ 2 Ip 0 0 Im X∞ −HZ2 −1 B )−1 X∞ A) (5.28) −Z2 −1 H T −Z2 −1 C + 0 BT H = −AQC T Z2 T Z2 F1 , where, F1 : p × n and F2 : m × n, the F2 suboptimal H∞ DLSDP controller K in the case of a strictly proper G can be constructed as ˜ Further, by deﬁning F = K (z ) = where DK = (Im + B T X∞ B )−1 B T X∞ H BK = −H + BDK CK = F2 − DK (C + Z2 −1 F1 ) AK = A + HC + BCK (5.29) AK BK CK DK 5.3 Formulae for the Discretetime Case 65 5.3.4 On the Three DARE Solutions As discussed above, the discretetime H∞ LSDP suboptimal controller formulae require the solutions to the three discretetime algebraic Riccati equations, (5.17), (5.18) and (5.23), or (5.26), (5.27) and (5.28) in the strictly proper case. In this subsection, we will show that there is a relation between these three solutions, namely the solution X∞ to the third DARE can be calculated directly from the ﬁrst two solutions P and Q. This fact is important and useful, especially in the numerical implementation of the DLSDP routines. We start with a general DARE, hence the notations are not related to those deﬁned earlier in the chapter, F T XF − X − F T XG1 (G2 + GT XG1 )−1 GT XF + C T C = 0 1 1 (5.30) where F, H, X ∈ Rn×n , G1 ∈ Rn×m , G2 ∈ Rm×m , and G2 = GT > 0. We 2 assume that (F, G1 ) is a stabilisable pair and that (F, C ) is a detectable pair. We also deﬁne G = G1 G−1 GT . 1 2 It is well known ([124]) that solutions to DARE (5.30) are closely linked with a matrix pencil pair (M, L), where M= L= F0 −H I IG 0 FT (5.31) It also can be shown that if there exist n × n matrices S , U1 and U2 , with U1 invertible, such that M U1 U2 =L U1 S U2 (5.32) − then, X = U2 U1 1 is a solution to (5.30). Further, the matrix F − G1 (G2 + T −1 T G1 XG1 ) G1 XF shares the same spectrum as S . Hence, if S is stable, i.e. all the eigenvalues are within the open unit disc, F − G1 (G2 + GT XG1 )−1 GT XF 1 1 is also stable. Such an X is nonnegative deﬁnite and unique, and is called the stabilising solution to (5.30). Under the above assumptions on (5.30), it was shown in [124] that none of the generalised eigenvalues of the pair (M, L) lies on the unit circle, and if λ = 0 is a generalised eigenvalue of the pair, then 1/λ is also a generalised eigenvalue of the same multiplicity. In other words, the stable spectrum, consisting of n generalised eigenvalues lying in the open unit disc, is unique. Therefore, if there exists another triple (V1 , V2 , T ) satisfying (5.32), with V1 being invertible and T stable, then there must exist an invertible R such that T = R−1 SR. Consequently, U1 U2 = V1 R −1 V2 (5.33) 66 5 H∞ Loopshaping Design Procedures The solution, of course, remains the same, since X = V2 V1−1 = (U2 R)(U1 R)−1 = − U2 U1 1 . In the present case, we can accordingly deﬁne the three matrix pencils as MP = LP = MQ = LQ = ⎡ Φ 0 − −C T R1 1 C I
− I BR2 1 B T 0 ΦT (5.34) ΦT 0 − −BR2 1 B T I
− I C T R1 1 C 0 Φ (5.35) ⎤ 0⎥ ⎥ ⎦ I MX LX − Z2 1 C − − A − −HZ2 1 BR2 1/2 R−1 −1/2 ⎢ D T R1 C =⎢ − ⎣ Z2 1 C − − −C T C + C T Z2 1 C T R1 1/2 D R−1 T − 1 /2 D R1 C ⎤ ⎡ − −Z2 1 H T − 1 /2 − R −1 I −HZ2 1 BR2 −1/2 ⎢ R2 B T ⎥ ⎥ =⎢ −1 T ⎦ ⎣ T −1 −Z2 H T −1 T − 1 /2 0 A − C Z2 C R1 D R −1/2 R2 B T (5.36) With all the above properties of the DAREs and the notations, the following theorem may be proved ([58]). Theorem 5.1. Let P , Q and X∞ be the stabilising solutions to the DAREs (5.17), (5.18) and (5.23), (or, (5.26), (5.27) and (5.28) when G is strictly proper), respectively, the following identity holds X∞ = P
2 1 − γ −2 In − γ −2 QP
2 −1 −1 (5.37) = γ P γ In − (In + QP ) A similar result can be found in [155] for the relationship between three discretetime algebraic Riccati equations arising in the general H∞ suboptimal design. The results concerning the discretetime loopshaping design procedure are with three diﬀerent DAREs and the conclusion is of a slightly diﬀerent form. 5.4 A Mixed Optimisation Design Method with LSDP 67 5.4 A Mixed Optimisation Design Method with LSDP
It is well known that controlsystem design problems can be naturally formulated as constrained optimisation problems, the solutions of which will characterise acceptable designs. The numerical optimisation approach to controller design can directly tackle design speciﬁcations in both the frequency domain and the time domain. The optimisation problems derived, however, are usually very complicated with many unknowns, many nonlinearities, many constraints, and in most cases, they are multiobjective with several conﬂicting design aims that need to be simultaneously achieved. It is also known that a direct parameterisation of the controller will increase the complexity of the optimisation problem. On the other hand, the H∞ loopshaping design procedure (LSDP) discussed in this chapter is an eﬃcient, robust design method that just depends on appropriate choice of weighting functions to shape the openloop system. In general, the weighting functions are of low orders. This indicates if we take the weighting functions as design parameters it may well combine the advantages of both the numerical optimisation approach and the H∞ LSDP in terms of ﬂexible formulation of design objectives, mature numerical algorithms, tractable optimisation problems, guaranteed stability and a certain degree of robustness. Such a design method is proposed in [161]. The numerical optimisation component of the method is based on the method of inequalities(MOI). Performance speciﬁcations for controlsystems design are frequently, and more naturally, given in terms of algebraic or functional inequalities, rather than in the minimisation of some objective function. For example, the system may be required to have a rise time of less than one second, a settling time of less than ﬁve seconds and an overshoot of less than 10%. In such cases, it is obviously more logical and convenient if the design problem is expressed explicitly in terms of such inequalities. The method of inequalities [169] is a computeraided multiobjective design approach, where the desired performance is represented by such a set of algebraic inequalities and where the aim of the design is to simultaneously satisfy these inequalities. The design problem is expressed as φi (p) ≤
i, for i = 1, · · · , n (5.38) where i are real numbers, p ∈ P is a real vector (p1 , p2 , · · · , pq ) chosen from a given set P , and φi are real functions of p. The functions φi are performance indices, the components of p represent the design parameters, and i are chosen by the designer and represent the largest tolerable values of φi . The aim is the satisfaction of the set of inequalities so that an acceptable design p is reached. For controlsystems design, the functions φi (p) may be functionals of the system step response, for example, the risetime, overshoot or the integral absolute tracking error, or functionals of the frequency responses, such as the bandwidth. They can also represent measures of the system stability, such 68 5 H∞ Loopshaping Design Procedures as the maximum real part of the closedloop poles. Additional inequalities that arise from the physical constraints of the system can also be included, to restrict, for example, the maximum control signal. In practice, the constraints on the design parameters p that deﬁne the set P are also included in the inequality set, e.g. to constrain the possible values of some of the design parameters or to limit the search to stable controllers only. Each inequality φi (p) ≤ i of the set of inequalities (5.38) deﬁnes a set Si of points in the q dimensional space Rq and the coordinates of this space are p1 , p2 , · · · , pq , so Si = {p : φi (p) ≤
i} (5.39) The boundary of this set is deﬁned by φi (p) = i . A point p ∈ Rq is a solution to the set of inequalities (5.38) if and only if it lies inside every set Si , i = 1, 2, · · · , n, and hence inside the set S that denotes the intersection of all the sets Si
n S=
i=1 Si (5.40) S is called the admissible set and any point p in S is called an admissible point denoted ps . The objective is thus to ﬁnd a point p such that p ∈ S . Such a point satisﬁes the set of inequalities (5.38) and is said to be a solution. In general, a point ps is not unique unless the set S is a singleton in the space Rq . In some cases, there is no solution to the problem, i.e. S is an empty set. It is then necessary to relax the boundaries of some of the inequalities, i.e. increase some of the numbers i , until an admissible point ps is found. The actual solution to the set of inequalities (5.38) may be obtained by means of numerical search algorithms, such as the movingboundaries process (MBP); details of the MBP may be found in [159, 169]. The procedure for obtaining a solution is interactive, in that it requires supervision and intervention from the designer. The designer needs to choose the conﬁguration of the design, which determines the dimension of the design parameter vector p, and initial values for the design parameters. The progress of the search algorithm should be monitored and, if a solution is not found, the designer may either change the starting point, relax some of the desired bounds i , or change the design conﬁguration. Alternatively, if a solution is found easily, to improve the quality of the design, the bounds could be tightened or additional design objectives could be included in (5.38). The design process is thus a twoway process, with the MOI providing information to the designer about conﬂicting requirements, and the designer making decisions about the “tradeoﬀs” between design requirements based on this information as well as on the designer’s knowledge, experience, and intuition about the particular problem. The designer can be supported in this role by various graphical displays [117] or expert systems [56]. 5.4 A Mixed Optimisation Design Method with LSDP 69 A diﬃcult problem in controlsystems design using the MOI method is how to deﬁne the design parameter vector p. A straightforward idea is to directly parametrise the controller, i.e. let p be the system matrices of the controller, or the coeﬃcients of the numerator and denominator polynomials of the controller. In doing so, the designer has to choose the order of the controller ﬁrst. In general, the lower the dimension of the design vector p, the easier it is for numerical search algorithms to ﬁnd a solution, if one exists. Choosing a loworder controller, say a PI controller p1 + ps2 , may reduce the dimension of p. However, it may not yield a solution and, in that case, a solution may exist with higher order controllers. A further limitation of using the MOI alone in the design is that an initial point that gives the stability of the closedloop system must be located as a prerequisite to searching the parameter space in order to improve the index set of (5.38). Two aspects of the H∞ LSDP make it amenable to combine this approach with the MOI. First, unlike the standard H∞ optimisation approaches, the H∞ optimal controller for the weighted plant can be synthesised from the solutions of two algebraic Riccati equations (5.5) and (5.7) and does not require timeconsuming γ iteration. Second, in the LSDP described earlier in this chapter, the weighting functions are chosen by considering the openloop response of the weighted plant, so eﬀectively the weights W1 and W2 are the design parameters. This means that the design problem can be formulated as in the method of inequalities, with the parameters of the weighting functions used as the design parameters p to satisfy the set of closedloop performance inequalities. Such an approach to the MOI overcomes the limitations of the MOI. The designer does not have to choose the order of the controller, but instead chooses the order of the weighting functions. With loworder weighting functions, highorder controllers can be synthesised that often lead to significantly better performance or robustness than if simple loworder controllers were used. Additionally, the problem of ﬁnding an initial point for system stability does not exist, because the stability of a closedloop system is guaranteed through the solution to the robust stabilisation problem, provided that the weighting functions do not cause undesirable pole/zero cancellations. The design problem is now stated as follows. Problem: For the system of Figure 5.2, ﬁnd a (W1 , W2 ) such that γo (W1 , W2 ) ≤ and φi (W1 , W2 ) ≤ where γo = [1 + λmax (ZX )]1/2 with Z and X the solutions of the two AREs, (5.5) and (5.7), of the weighted plant.
i γ (5.41) for i = 1, · · · , n (5.42) 70 5 H∞ Loopshaping Design Procedures In the above formulation, φi are functionals representing design objectives, γ and i are real numbers representing desired bounds on γo and φi , respectively, and (W1 , W2 ) a pair of ﬁxed order weighting functions with real parameters w = (w1 , w2 , · · · , wq ). Consequently, a design procedure can be stated as follows. Design Procedure: A design procedure to solve the above problem is 1. Deﬁne the plant G, and deﬁne the functionals φi . 2. Deﬁne the values of γ and i . 3. Deﬁne the form and order of the weighting functions W1 and W2 . Bounds should be placed on the values of wj to ensure that W1 and W2 are stable and minimum phase to prevent undesirable pole/zero cancellations. The order of the weighting functions, and hence the value of q , should be small initially. 4. Deﬁne initial values of wj based on the openloop frequency response of the plant. 5. Implement the MBP, or other appropriate algorithms, in conjunction with (5.12) or (5.13) to ﬁnd a (W1 , W2 ) that satisﬁes inequalities (5.41) and (5.42). If a solution is found, the design is satisfactory; otherwise, either increase the order of the weighting functions, or relax one or more of the desired bounds , or try again with diﬀerent initial values of w. 6. With satisfactory weighting functions W1 and W2 , a satisfactory feedback controller is obtained from (5.12) or (5.13). This mixed optimisation design approach has been applied in some design cases. Examples of application and some extensions can be found in [115, 147, 161, 160, 162, 158, 163]. 6 µAnalysis and Synthesis As discussed earlier in the book, the H∞ optimisation approach may achieve robust stabilisation against unstructured system perturbations and nominal performance requirements. It is though possible that by applying appropriate weighting functions some robust performance requirements can be obtained. Satisfactory designs have been reported, in particular when using the H∞ loopshaping design methods. In order to achieve robust stability and robust performance, design methods based on the structured singular value µ can be used. In this chapter, we ﬁrst show how a robust performance design speciﬁcation for a control system with unstructred/structured perturbations can be transformed into a robust stabilisation problem with regard to structured perturbation. We then discuss how these design speciﬁcations are related to some indications of this new setting, followed by introduction of two iterative µsynthesis methods, the DK iteration and µK iteration methods. We recall, as deﬁned in Chapter 3, for M ∈ C n×n and a known structure of ∆ (usually representing uncertainties), ∆ = {diag[δ1 Ir1 , · · · , δs Irs , ∆1 , · · · , ∆f ] : δi ∈ C , ∆j ∈ C mj ×mj }
s f (6.1) where i=1 ri + j =1 mj = n with n is the dimension of the block ∆, the structure singular value µ is deﬁned by µ−1 (M ) := min {σ (∆) : det(I − M ∆) = 0} ∆
∆∈∆ (6.2) If there is no ∆ ∈ ∆ such that det(I − M ∆) = 0, then µ∆ (M ) := 0. Some important properties of µ have been listed in Chapter 3. 6.1 Consideration of Robust Performance
When M is an interconnected transfer function matrix M (s) formed with respect to the uncertainty set ∆, the structured singular value of M (s) 72 6 µAnalysis and Synthesis µ∆ (M (s)) := sup µ∆ (M (jω ))
ω ∈R (6.3) indicates the robust stability of the perturbed system. Without loss of generality, we assume that the uncertainties have been normalised in the rest of this chapter, i.e. ∆ ∈ B∆. From Theorem 3.4, the standard conﬁguration Figure 6.1 is robustly stable if M (s) is stable and µ∆ (M (s)) < 1 (or, M µ < 1). Fig. 6.1. Standard M ∆ conﬁguration As discussed in Chapter 3 in design of control systems, in addition to the stability the performance of the system must be taken into account. The designed system should perform well (for instance, good tracking) against exogenous disturbances, which requires a closedloop structure. The feedback controller is usually designed based on a nominal plant model. In the case of the existence of plant perturbations, the closedloop system may well possibly perform badly, even degrade to an unsatisfactory level. The robust performance requires that a designed control system maintains a satisfactory performance level even in the presence of plant dynamic uncertainties. We now expand Figure 6.1 to include input and output signals, as depicted in Figure 6.2. In Figure 6.2, w, z , v and d are usually vector signals. w denotes the exogenous input typically including command signals, disturbances, noises, etc.; z denotes the error output usually consisting of regulator output, tracking errors, ﬁltered actuator signals, etc.; v and d are the input and output signals of the dynamic uncertainties. Systemperformance speciﬁcations can usually be interpreted as reduction of z with respect of w. With the assumption that w and z are both energybounded signals, the performance requirement is equivalent to the minimisation of the H∞ norm of the transfer function from w to z . Let M be partitioned accordingly as M= M11 M12 M21 M22 6.1 Consideration of Robust Performance 73 Fig. 6.2. Standard M ∆ conﬁguration for RP analysis it can be easily derived that z = M22 + M21 ∆(I − M11 ∆)−1 M12 w = Fu (M, ∆)w (6.4) Using normalisation, a satisfactory level of performance requirement can be set as Fu (M, ∆)
∞ <1 (6.5) Equation (6.5) implies the stability of Fu (M, ∆) that denotes the robust stability with respect to the plant perturbations ∆. Condition (6.5) is equivalent to the system loop in Figure 6.3 to be robustly stable with regard to a ﬁctitious uncertainty block ∆p . ∆p is unstructured with appropriate dimensions, satisﬁes ∆p ∞ ≤ 1 and is usually called the performance uncertainty block. The part enclosed in the dotted line is, of course, Fu (M, ∆). For robust performance, (6.5) should hold for all ∆ ∈ B∆. Based on Figure 6.3, the robust performance design as well as robust stabilisation against ∆, can be equivalently considered as a robust stabilisation problem in Figure 6.1 ˜ with the uncertainty block to be replaced by ∆ where ˜˜ ∆ ∈ ∆ := {diag{∆, ∆p } : ∆ ∈ B∆, ∆p
∞ ≤ 1} This is thus a robust stabilisation problem with respect to a structured ˜ uncertainty ∆. And, we have the following indications. ˜ • Robust Performance (RP) ⇐⇒ M µ < 1, for structured uncertainty ∆ • Robust Stability (RS) ⇐⇒ M11 µ < 1, for structured uncertainty B∆ • Nominal Performance (NP) ⇐⇒ M22 ∞ < 1 • Nominal Stability (NS) ⇐⇒ M is internally stable Of course, if the uncertainty ∆ is unstructured, then the robust stability requirement corresponds to M11 ∞ < 1. 74 6 µAnalysis and Synthesis Fig. 6.3. Standard M ∆ conﬁguration with ∆p analysis It is easy to see that, by setting ∆p ≡ 0, M µ < 1 implies M11 µ < 1. Hence, the former condition yields a robust stability and robust performance(RSRP) design. 6.2 µSynthesis: D K Iteration Method
The transfer function matrix M (s) in Figure 6.2 usually contains the controller K , hence a closedloop interconnected matrix. For the purpose of controller design, we may rearrange the conﬁguration and explicitly show the dependence of the closedloop system on the controller K . That is, Figure 6.2 is reshown in Figure 6.4. The nominal, openloop interconnected transfer function matrix P (s) in Figure 6.4 does not include the controller K (s) nor any perturbations that are under consideration. P (s) may be partitioned as ⎤ ⎡ P11 P12 P13 P (s) = ⎣ P21 P22 P23 ⎦ P31 P32 P33 The signals y and u represent the feedback signals (measured output, tracking error, etc., the input to the controller) and the control signal (the output from the controller), respectively. The relationship between M in Figure 6.2 and P can be obtained by straightforward calculations as M (P, K ) = Fl (P, K ) P13 P11 P12 + K (I − P33 K )−1 P31 P32 = P21 P22 P23 (6.6) 6.2 µSynthesis: DK Iteration Method 75 Fig. 6.4. Standard M ∆ conﬁguration with K where M (s) is explicitly written as M (P, K ) to show that M is formed by P and K . For the RSRP design, it is required to ﬁnd a stabilising controller K such that
ω ∈R sup µ[M (P, K )(jω )] < 1 (6.7) ˜ where the subscript ∆ has been suppressed for the sake of simplicity. Or, for the “optimal” RSRP design, the objective is to solve for K
K (s) ω ∈R inf sup µ[M (P, K )(jω )] (6.8) An iterative method was proposed to solve (6.8) in [24]. The method is called the DK iteration µsynthesis method, and is based on solving the following optimisation problem, for a stabilising controller K and a diagonal constant scaling matrix D,
K (s) ω ∈R D ∈D inf sup inf σ [DM (P, K )D−1 (jω )] (6.9) where the scaling matrix set D is deﬁned in Section 3.3. The justiﬁcation for using (6.9) is obvious, from Theorem 3.7 and the discussion afterwards, with µ[M (P, K )] replaced by its upper bound inf D∈D σ [DM (P, K )D−1 ]. Corresponding to the case of (6.7), a stabilising controller is to be found such that
ω ∈R D ∈D sup inf σ [DM (P, K )D−1 (jω )] < 1 (6.10) 76 6 µAnalysis and Synthesis The DK iteration method is to alternately minimise (6.9), or to reduce the lefthandside value of (6.10), for K and D in turn while keeping the other one ﬁxed. For a given matrix D, either constant or transfer function, (6.9) is a standard H∞ optimisation problem inf DM (P, K )D−1
K ( s) ∞ (6.11) that can be further written as inf DFl (P, K )D−1
K ∞ ˜ = inf Fl (P , K )
K ∞ (6.12) D0 D −1 0 ˜ compatible with the partition of P . with P = P 0 I 0I On the other hand, for a ﬁxed K (s), inf D∈D σ [DM (P, K )D−1 (jω )] is a convex optimisation problem at each frequency ω . After the minimisation over a range of frequency of interest, the resultant diagonal (constant) matrices Ds can be approximated, via curve ﬁtting, by a stable, minimum phase, rational transfer function matrix D(s), which will be used in the next iteration for K . The DK iterative µsynthesis algorithm is thus: Step 1: Start with an initial guess for D, usually set D = I . Step 2: Fix D and solve the H∞ optimisation for K , ˜ K = arg inf Fl (P , K )
K ∞ Step 3: Fix K and solve the following convex optimisation problem for D at each frequency over a selected frequency range, D(jω ) = arg inf σ [DFl (P, K )D−1 (jω )]
D ∈D Step 4: Curve ﬁt D(jω ) to get a stable, minimumphase D(s); goto Step 2 and repeat, until a prespeciﬁed convergence tolerance or (6.10) is achieved, or a prespeciﬁed maximum iteration number is reached. Successful applications of the DK iteration method have been reported. This method has also been applied in the case studies in Part II of this book. It should be noticed, however, that the algorithm may not converge in some cases. The resultant controller may be very conservative, particularly in the case of real and/or mixed perturbations, due to the possible gap between µ(M ) and inf D∈D σ [DM D−1 ] in general cases, and due to the lack of powerful algorithms to compute the real and mixed µ values and to solve the optimisation problem for D. Another adverse eﬀect in practical designs is that the order of resultant µcontrollers is usually very high, and hence controllerorder reduction must be applied. 6.3 µSynthesis: µK Iteration Method 77 6.3 µSynthesis: µK Iteration Method
As discussed above, the structured singular value µ plays an important role in the robust stability and robust performance designs. The µdesign is to seek a stabilising controller that either minimises or reduces the µ value over a frequency range. There is another design method proposed in the literature that can be applied to ﬁnd a µcontroller. That is the socalled µK iteration method ([89, 90, 127]). It is shown in [64] that in many optimisationbased controlsystem designs, the resultant, optimal controller will make a “wellposed” cost function (i.e. satisfying certain assumptions ([64], Theorem 4.1)) constant in the frequency ω almost everywhere. This feature is obvious in the H∞ optimisations and can also be observed in the µdesigns using the DK iterations where the controller K (s) obtained in the iteration gradually ﬂattens the curve of µ(M ). The µK iteration method is motivated by the above. In the µK iterations, the obtained µ curves are used as weighting functions on the H∞ cost function ˜ Fl (P , K ) ∞ with the aim to suppress the peak values of the µ curves in the successive iterations. An algorithm to implement the µK iteration method is described below. Step 1: Solve the H∞ optimisation problem for K0 , ˜ K0 := arg inf Fl (P , K )
K ∞ Step 2: Compute the µ curve corresponding to K0 over a chosen frequency range, µ0 (jω ) := µ[Fl (P, K0 )(jω )] Step 3: Normalise µ0 by its maximum value, i.e. µ0 := ˜ µ0 maxω µ0 Step 4: Curve ﬁt µ0 (jω ) to get a stable, minimumphase, rational µ0 (s). ˜ ˜ Step 5: Solve for the H∞ optimal controller K1 (s), ˜ K1 := arg inf µ0 Fl (P , K ) ˜
K ∞ (6.13) goto Step 2, multiply the newly obtained µ curve function onto the pre˜ vious cost function in (6.13) (e.g. µ1 µ0 Fl (P , K ) ∞ ); repeat until the µ ˜˜ curve is suﬃciently ﬂat or until a desired level of performance (measured by the peak value of µ) has been achieved. 7 Lowerorder Controllers There is a dilemma concerning design of control systems. Due to increasing demands on quality and productivity of industrial systems and with deeper understanding of these systems, mathematical models derived to represent the system dynamics are more complete, usually of multiinputmultioutput form, and are of high orders. Consequently, the controllers designed are complex. The order of such controllers designed using, for instance, the H∞ optimisation approach or the µmethod, is higher than, or at least similar to, that of the plant. On the other hand, in the implementation of controllers, highorder controllers will lead to high cost, diﬃcult commissioning, poor reliability and potential problems in maintenance. Lowerorder controllers are always welcomed by practising control engineers. Hence, how to obtain a loworder controller for a highorder plant is an important and interesting task, and is the subject of the present chapter. In general, there are three directions to obtain a lowerorder controller for a relatively highorder plant, as depicted in Figure 7.1, (1) plant model reduction followed by controller design; (2) controller design followed by controllerorder reduction; and, (3) direct design of loworder controllers. Approaches (1) and (2) are widely used and can be used together. When a controller is designed using a robust design method, Approach (1) would usually produce a stable closed loop, though the reduction of the plant order is likely to be limited. In Approach (2), there is freedom in choosing the ﬁnal order of the controller, but the stability of the closedloop system should always be veriﬁed. The third approach usually would heavily depend on some properties of the plant, and require numerous computations. This approach will not be introduced in this book. Interested readers are referred to [10, 17, 55, 68, 71]. From the viewpoint of being a control system, model reductions (usually referred to the reduction of orders of the original plant models) and controller 80 7 Lowerorder Controllers Highorder plant Q Q Controller design  Highorder controller Q Model reduction Q Q Direct design Q Q Q Q Q Q Controller reduction ? Loworder plant Q Q Q s Controller design  ? Loworder controller Fig. 7.1. Diagram for design of loworder controllers reductions are similar. Indeed, most methods introduced in this chapter are applicable in both cases, though some methods may be more suitable for one of them. This will be discussed along with the introduction of methods. In this book, only details of continuoustime case reduction will be discussed. Where the method is applicable in the discretetime case as well references will be given. When we say order reductions of plants/systems, we actually refer to the order reduction of a model of the plant/system. In the rest of the chapter, let the original system have a statespace representation G(s) := C (sI − A)−1 B + D AB =: CD (7.1) (7.2) where A : n × n, B : n × m, C : p × n, D : p × m, and [A, B, C ] is assumed to be a minimal realisation. A reducedorder system Gr (s) is represented by Gr (s) := Cr (sI − Ar )−1 Br + Dr Ar Br =: Cr Dr with Ar : r × r, Br : r × m, Cr : p × r, Dr : p × m, and r < n. (7.3) (7.4) 7.1 Absoluteerror Approximation Methods
The aim of the following methods is to ﬁnd a reducedorder system Gr (s) such that some norm of the error system is small, i.e. to minimise 7.1 Absoluteerror Approximation Methods 81 G(s) − Gr (s) (7.5) Three methods are to be introduced: Balanced Truncation, Singular Perturbation Approximation (Balanced Residualisation), and HankelNorm Approximation. These methods are for stable systems only. The case of unstable systems will be discussed at the end of this section. 7.1.1 Balanced Truncation Method The general idea of truncation methods is to neglect those parts of the original system that are less observable or/and less controllable. Hopefully, this would lead to a system that is of lower order and retains the important dynamic behaviour of the original system. However, in some systems, a mode would be weakly observable but highly controllable, or vice versa. To delete such a mode may be inappropriate with regard to the whole characteristics of the system. Hence, in the balanced truncation method ([30, 29, 108, 126]), a state similarity transformation is applied ﬁrst to “balance” the controllability and observability features of the system. A stable system G(s) is called balanced if the solutions P and Q to the following Lyapunov equations AP + P AT + BB T = 0 A Q + QA + C C = 0
T T (7.6) (7.7) are such that P = Q = diag(σ1 , σ2 , · · · , σn ) := Σ , with σ1 ≥ σ2 ≥ · · · ≥ σn > 0. P and Q are called the controllability gramian and observability gramian, respectively. When the system is balanced, both gramians are diagonal and equal. σi , i = 1, · · · , n, is the ith Hankel singular value of the system. For a general system not in the balanced realisation form, the following algorithm ([81]) can be applied. Balanced Realisation Algorithm: Step 1 : Calculate the gramians P and Q from (7.6) and (7.7), respectively Step 2 : Calculate a Cholesky factor R of Q, i.e. Q = RT R Step 3 : Form a positivedeﬁnite matrix RP RT and diagonalise it, RP RT = U Σ 2 U T where U is an orthonormal matrix, U T U = I , and Σ = diag(σ1 , σ2 , · · · , σn ), σ1 ≥ σ 2 ≥ · · · ≥ σ n > 0 1 Step 4 : Let T = Σ − 2 U T R. [T, T −1 ] is a required state similarity transformation (balancing transformation). That is, [T AT −1 , T B, CT −1 ] is a balanced realisation. 82 7 Lowerorder Controllers We now assume that the statespace model of the original system G(s), [A, B, C, D], is already in the balanced realisation form. Assume Σ = diag(Σ1 , Σ2 ), with Σ1 = diag(σ1 , · · · , σr ), Σ2 = diag(σr+1 , · · · , σn ), where σr > σr+1 . The matrices A, B and C can be partitioned compatibly as A11 A12 B1 A= ,B= , and C = C1 C2 . Then, a reducedorder sysA21 A22 B2 tem Gr (s) can be deﬁned by Gr (s) = C1 (sI − A11 )−1 B1 + D = A11 B1 C1 D (7.8) Such a Gr (s) is of rth order and is called a balanced truncation of the full order (nth) system G(s). It can be shown that Gr (s) is stable, in the balanced realisation form, and G(s) − Gr (s)
∞ ≤ 2tr(Σ2 ) (7.9) where tr(Σ2 ) denotes the trace of the matrix 2 , i.e. tr(Σ2 ) = σr+1 + · · · + σn , the sum of the last (n − r) Hankel singular values ([30, 46]). In most applications, to reduce the original system into an rthorder sysσr+1 . tem there should be a large gap between σr and σr+1 , i.e. σr 7.1.2 Singular Perturbation Approximation In many engineering systems, the steadystate gain of a system, usually called dcgain (the system gain at inﬁnitive time, equivalent to G(0)), plays an important role in assessing system performances. It is thus better to maintain the dc gain in a reducedorder model, i.e. Gr (0) = G(0). The Balanced Truncation method introduced in the last subsection does not keep the dc gain unchanged in the reducedorder system. The singular perturbation approximation method [93] (or, balanced residualisation method [136]) presented below does retain the dc gain. Assume that [A, B, C, D] is a minimal and balanced realisation of a stable system G(s), and partitioned compatibly as in the previous subsection. It can be shown that A22 is stable (e.g. see Theorem 4.2 of [46]), and thus invertible. Deﬁne Ar = A11 − A12 A−1 A21 22 Br = B1 − A12 A−1 B2 22 Cr = C1 − C2 A−1 A21 22 Dr = D − C2 A−1 B2 22 A reducedorder system Gr (s) deﬁned by Gr (s) = Cr (sI − Ar )−1 Br + Dr (7.14) (7.10) (7.11) (7.12) (7.13) 7.1 Absoluteerror Approximation Methods 83 is called a singular perturbation approximation (or, balanced residualisation) of G(s). It is a straightforward computation to show that the dcgain remains unchanged, i.e. −CA−1 B + D = −Cr A−1 Br + Dr r by noting that I 0 −A−1 A21 I 22 I A12 A−1 22 0 I and I −A12 A−1 22 0 I A11 A12 A21 A22 −A−1 A21 22 I 0 I
−1 (7.15) I 0 =I A−1 A21 I 22 I −A12 A−1 22 0 I =I (7.16) (7.17) = A−1 0 r 0 A−1 22 (7.18) It can also be shown that such a reduction Gr (s) is a stable and balanced realisation [136] and enjoys the same error bound as the balanced truncation method, i.e. G(s) − Gr (s)
∞ ≤ 2(σr+1 + · · · + σn ) It can be seen that instead of discarding the “less important” part totally as in the balanced truncation method, the derivative of x2 in the following equation is set to zero, in the singular perturbation approximation (balanced residualisation) method, x2 = A21 X1 + A22 x2 + B2 u ˙ (7.19) x2 is then solved in (7.19) in terms of x1 and u, and is substituted as residual into the state equation of x1 and output equation to obtain the reducedorder system Gr (s) as given above. This idea resembles what happens in analysis of singular perturbation systems with x2 = A21 X1 + A22 x2 + B2 u ˙ where 0 < 1, and hence the term of singular perturbation approximation. 7.1.3 Hankelnorm Approximation For a stable system G(s) with Hankel singular values deﬁned in Section 7.1.1, the largest Hankel singular value σ1 is deﬁned as the Hankelnorm of G(s) ([46]). The Hankelnorm denotes the largest possible L2 gain from past inputs to future outputs. In some orderreduction cases, minimisation of the Hankelnorm of the error system is more appropriate and thus required. 84 7 Lowerorder Controllers Approximation 1: Let G(s) represent a stable and square system with a statespace model [A, B, C, D] of minimal and balanced realisation. Let the gramians be P = Q = diag(Σ1 , σIl ), where σ is the smallest Hankel singular value with multiplicity l and every diagonal element of Σ1 is larger than σ . Let [A, B, C ] be partitioned compatibly. An (n − l)thorder system Gh (s) can be constructed as follows. Deﬁne ˆ A = Γ −1 (σ 2 A11 T + Σ1 A11 Σ1 − σC1 T U B1 T ) ˆ B = Γ −1 (Σ1 B1 + σC1 T U ) ˆ C = C1 Σ1 + σU B1 T ˆ = D − σU D where U is an orthonormal matrix satisfying B2 = −C2 T U and Γ = Σ1 2 − σ 2 I The reducedorder system Gh (s) is deﬁned as ˆ ˆ ˆ ˆ Gh (s) = C (sI − A)−1 B + D (7.26) (7.25) (7.24) (7.20) (7.21) (7.22) (7.23) It is shown in [46] that the (n − l)thorder Gh (s) is stable and is an optimal approximation of G(s) satisfying G(s) − Gh (s)
H =σ (7.27) And, it is also true that G(s) − Gh (s) is allpass with the infnorm G(s) − Gh (s)
∞ =σ (7.28) Approximation 2: It can be shown that the Hankel singular values of Gh (s) deﬁned in (7.26) are correspondingly equal to those ﬁrst (n − l) Hankel singular values of G(s). Hence, the above reduction formula can be repeatedly applied to get further reducedorder systems with known error bounds. Let the Hankel singular values of G(s) be σ1 > σ2 > · · · > σr with multiplicities mi , i = 1, · · · , r, i.e. m1 + m2 + · · · + mr = n. By repeatedly applying the formulae (7.20)–(7.26), we may have G(s) = D0 + σ1 E1 (s) + σ2 E2 (s) + · · · + σr Er (s) (7.29) where D0 is a constant matrix and Ei (s), i = 1, · · · , r, are stable, norm1, allpass transfer function matrices. Ei (s)s are the diﬀerences at each approximation. Consequently, we may deﬁne reducedorder models, for k = 1, · · · , r − 1, 7.1 Absoluteerror Approximation Methods
k ˆ Gk (s) = D0 + Σi=1 σi Ei (s) 85 (7.30) ˆ Such a Gk (s) is stable, with the order m1 + · · · + mk , and satisﬁes ˆ G(s) − Gk (s)
∞ ≤ (σk+1 + · · · + σr ) (7.31) ˆ However, Gk (s) is not an optimal Hankel approximation, for k < r −1. The method to obtain an optimal Hankel approximation with “general”order is given below. Approximation 3: Let the Hankel singular values of G(s) be σ1 ≥ σ2 ≥ · · · ≥ σk > σk+1 = · · · = σk+l > σk+l+1 ≥ · · · σn . Apply appropriate state similarity transformations to make the gramians of G(s) be arranged as Σ = diag(σ1 , σ2 , · · · , σk , σk+l+1 , · · · , σn , σk+1 , · · · , σk+l ). Deﬁne the last l Hankel singular values to be σ . Following the formulae (7.20)–(7.26), ˆ ˆ deﬁne an (n − l)thorder G(s). This G(s) is not stable but has exactly k ˆ stable poles. The k thorder stable part Gh,k (s) of G(s), obtained by using modal decompositions say, is an k thorder Hankel optimal approximation of G(s) and satisﬁes G(s) − Gh,k (s)
H =σ (7.32) Nonsquare plants can be augmented with zero columns/rows and then be applied by the above procedures. 7.1.4 Remarks 1. The three methods introduced in the last 3 subsections can be applied to original systems (plants) as well as to controllers. However, most reported cases are on plant reductions. This may be due to robust controller design methods used subsequently that leads to better closedloop performance even with a reducedorder plant. Examples of application on controllersize reduction can be found in [136]. In [136] it is also observed that the Balanced Truncation method and the Hankelnorm Approximation usually perform better at high frequency, while the singular perturbation approximation (balanced residualisation) method performs better in the low and mediumfrequency ranges. 2. Glover shows in [46] that any stable, rthorder approximation Gr of G(s) can never achieve G(s) − Gr (s) ∞ ≤ σr+1 . This lower error bound may serve as a yardstick to compare with the actual error obtained in practice. 3. All the three methods are applicable for stable systems only. If a system is unstable, modal decomposition can be applied ﬁrst. That is, ﬁnd a stable Gs (s) and an antistable Gus (s) (with all the poles in the closed righthalf complex plane) such that G(s) = Gs (s) + Gus (s) (7.33) 86 7 Lowerorder Controllers Then, Gs (s) can be reduced to Gsr (s), by using any of the three methods, and a reducedorder system of the original G(s) can be formed as Gr (s) = Gsr (s) + Gus (s) (7.34) The routines to calculate a modal decomposition can be found in software packages such as MATLAB r or Slicot. 4. The formulae introduced here are for continuoustime systems. In the case of discretetime systems, the gramians are calculated from the discrete Lyapunov equations instead, AP AT − P + BB T = 0 AT QA − Q + C T C = 0 (7.35) (7.36) The balanced truncation method can then be applied similar to the case of continuous time. However, it should be noted that the reducedorder system is no longer in a balanced realisation form ([126, 34]), though the same error bound still holds ([8]). For using the singular perturbation approximation (balanced residualisation) on a system with zero Dmatrix, the reducedorder system Gr (s) = [Ar , Br , Cr , Dr ] can be instead deﬁned by Ar = A11 + A12 (I − A22 )−1 A21 Br = B1 + A12 (I − A22 )−1 B2 Cr = C1 + C2 (I − A22 )−1 A21 Dr = C2 (I − A22 )−1 B2 (7.37) Such a reducedorder system is still in a balanced realisation and enjoys the same error bound ([8, 35, 93, 111]). The discretetime case of Hankelnorm approximation has been studied for a long time and is also called the Hankelmatrix approximation. Details can be found in [6, 78, 79, 116, 173]. 5. Research has been conducted on numerical implementations of the above reduction methods. For instance, in balanced transformation in order to avoid numerical instability of forming products BB T and C T C , algorithms for direction calculation of the Choleski factors and improved balanced truncation scheme have been proposed ([62, 82, 148]). Also, to avoid illconditioned computational problems, balancingfree approaches can be considered ([133, 134, 151]). It is recommended that the modelreduction subroutines developed in the software package Slicot be used because of their superior numerical properties. 7.2 Reduction via Fractional Factors
The modal decomposition can be used to reduce the order of a general, unstable system as discussed in the last section. However, the order of the antistable 7.2 Reduction via Fractional Factors 87 part will not be reduced at all. Another reduction method applicable in the case of unstable systems is via reduction of normalised coprime factors of the system introduced in Chapter 5. AB , recall that a normalised For a minimal realisation model G(s) = C0 ˜ −1 ˜ ˜ left coprime factorisation is deﬁned by G(s) = M (s) N (s), where M (s) and ˜ N (s) are stable and satisfy (5.2) and (5.3). Note that we assume G(s) has a zero Dmatrix and model reduction is conducted with regard to such a strictly proper system. In the case of a nonzero feedthrough term in G(s), the nonzero Dmatrix should be added to the reducedorder model. Such a treatment greatly simpliﬁes formulae. It will keep the highfrequency gain of the original system in the fractional balanced truncation(FBT) method, or maintain the dcgain in the fractional singular perturbation approximation(FSPA) method, both introduced below. ˜ ˜ The factors M (s) and N (s) have the following statespace models A + HC B H ˜˜ NM = 0I C (7.38) where H = −ZC T with Z > 0 solves the following algebraic Riccati equation AZ + ZAT − ZC T CZ + BB T = 0 (7.39) ˜˜ N M in (7.38) is stable and a balanced realisation transformation can be found. Following the balanced realisation algorithm in Section 7.1.1, a state similarity transformation [T, T −1 ] can be obtained such that [T (A + HC )T −1 , T B H , CT −1 ] is a balanced realisation with the gramian Σ = diag(σ1 , σ2 , · · · , σn ). To reduce the system to rth order, where σr > σr+1 , let T (A + HC )T −1 =: ˜˜ A11 A12 ˜˜ A21 A22 = A11 + H1 C1 A12 + H1 C2 A21 + H2 C1 A22 + H2 C2 (7.40) ˜ B T B H =: ˜1 B2 = B1 H1 B2 H2 (7.41) (7.42) (7.43) ˜˜ CT −1 =: C1 C2 = C1 C2 ˜ D := 0 I where T AT −1 =: T B =: A11 A12 A21 A22 B1 B2 H1 H2 (7.44) (7.45) (7.46) (7.47) CT −1 =: C1 C2 T H =: 88 7 Lowerorder Controllers Accordingly, the gramian is divided as Σ= Σ1 0 0 Σ2 (7.48) with Σ1 = diag(σ1 , · · · , σr ) and Σ2 = diag(σr+1 , · · · , σn ). Now, the reduction methods introduced in Section 7.1 can be applied to ˜˜ obtain a rthorder Nr Mr which leads to a reduced order (rthorder) model −1 ˜ ˜ Gr (s) = Mr (s) Nr (s). Fractional Balanced Truncation(FBT) Method In this direct truncation method, we deﬁne ˜ ˜ A11 B1 ˜˜ Nr Mr := ˜ C1 0 I = A11 + H1 C1 B1 H1 0I C1 (7.49) ˜˜ It is easy to check that the above realisation of Nr Mr is still a balanced realisation with the gramian Σ1 . Deﬁne
−1 ˜ ˜ Gr (s) := Mr (s) Nr (s)
(7.50) By direct manipulations, we have Gr (s) = A11 B1 C1 0 (7.51) An error bound directly follows the result in Section 7.1.1 and is shown in [107], that is
n ˜ ˜˜ ˜ N − Nr M − M r ∞ ≤2
i=r +1 σi (7.52) Fractional Singular Perturbation Approximation(FSPA) Method Naturally, the singular perturbation approximation method (or, the balanced residualisation method) in Section 7.1.2 can be used to reduce the order of ˜˜ NM . Deﬁne ˜ ˜˜˜ Ar = A11 − A12 A−1 A21 22 ˜1 − A12 A−1 B2 ˜˜˜ Br = B 22 ˜ ˜˜ ˜ Cr = C1 − C2 A−1 A21 22 ˜ ˜˜ ˜ Dr = D − C2 A−1 B2 22 (7.53) (7.54) (7.55) (7.56) 7.2 Reduction via Fractional Factors 89 Furthermore, Br and Dr can be compatibly partitioned as ˜˜ ˜˜ Br = Br,1 Br,2 := B1 − A12 A−1 B2 H1 − A12 A−1 H2 22 22 (7.57) ˜ ˜ Dr = Dr,1 Dr,2 := −C2 A−1 B2 I − C2 A−1 H2 22 22 Hence, let Ar Br,1 Br,2 ˜˜ Nr Mr := Cr Dr,1 Dr,2 (7.59) (7.58) which is of balanced realisation form with the gramian Σ1 . An rthorder model Gr (s) is then obtained by
−1 −1 −1 Ar − Br,2 Dr,2 Cr Br,1 − Br,2 Dr,2 Dr,1 ˜ ˜ Gr (s) = Mr (s) Nr (s) = −1 −1 Dr,2 Dr,1 Dr,2 Cr (7.60) In the case that the original model G(s) is not strictly proper, the nonzero feedthrough term should be added in the Dmatrix in (7.60). The error bound (7.52) obviously holds here as well, from the result in Section 7.1.2. Remarks: ˜˜ 1. Meyer [107] shows that N M H < 1, i.e. Σ < I . Also, the inﬁnitive ˜ M ∞ = 1, because of the normalised coprime factorisation. ˜ norm N 2. It can be obtained that, in either the FBT method or FSPA method, we have G(s) − Gr (s)
∞ ˜− ≤ Mr 1 ∞ ˜ ˜ ˜˜ N − Nr M − M r ∞ ˜ M −1 ∞ (7.61) by writing ˜ ˜− ˜ ˜ G − Gr = M −1 N − Mr 1 Nr ˜− = Mr 1 ˜− = Mr 1 ˜ ˜˜ ˜ N − Nr M − Mr ˜ ˜ ˜˜ N − Nr M − Mr I ˜ ˜ −M −1 N ˜ M ˜ M −1 ˜ −N (7.62) and by the fact that ˜ M ˜ −N
∞ = 1. 90 7 Lowerorder Controllers 3. Note that the methods introduced above are based on the left coprime factorisation. Similarly, model reductions can be done with regard to the normalised right coprime factorisation. 4. The model reduction in the discretetime case using the fractional balanced truncation method is straightforward, and using the fractional singular perturbation approximation method can be found in [112, 111]. 7.3 Relativeerror Approximation Methods
As discussed in Section 7.1.4, the balanced truncation method gives a good approximation over highfrequency ranges, while the singular perturbation approximation performs better over low and mediumfrequency ranges. If a reducedorder system is required in some practical problems to approximate equally well over the whole frequency range, then the method called the balanced stochastic truncation(BST) method may be considered [19, 52, 51, 92, 152]). The eﬀect of this method may be viewed as, for a stable, square and invertible G(s), a minimisation of G−1 (s)(G(s) − Gr (s))
∞ (7.63) Hence, the reducedorder system Gr (s) approximates the original system in the sense of making G−1 Gr nearer to identity. Problem (7.63) represents a minimisation of a relative error and is one of several relativeerror approximation methods (e.g., see [47, 49]). The idea of the BST method is the following. First, a spectral factor W (s) of G(s)G− (s) is to be found. That is, W − (s)W (s) = G(s)G− (s) where W − (s) := W T (−s), similarly for G− (s); and W (s) is stable, square and of minimum phase (i.e. (W (s))−1 ∈ H∞ ). W (s) contains the “magnitude” part of G(s). Correspondingly, a “phase” matrix of G(s) can be deﬁned as F (s) = (W − (s))−1 G(s). F (s) is an allpass transfer function matrix and contains both stable and unstable modes. The BST method is then to apply a balanced truncation on the stable part of F (s) (which is of the same order as G(s)), with the same state similarity transformation and partition on the state space model of G(s) to obtain a reducedorder Gr (s). AB we assume this For a given nthorder, stable and square G(s) = CD is a minimal realisation and the invertibility of G(s) implies the existence of D−1 . The computational steps of the BST method can be described as: Step 1: Solve the Lyapunov equation AP + P AT + BB T = 0 where the solution P > 0. (7.64) 7.3 Relativeerror Approximation Methods 91 Step 2: Let BW = P C T + BDT T CW = D−1 (C − BW QW ) (7.65) (7.66) where QW is the stabilising solution to the following Riccati equation
T AT QW + QW A + CW CW = 0 (7.67) Remark: (A, BW , CW ) forms the stable part of F (s). Step 3: Decide a balanced realisation transformation with regard to (P, QW ) and apply the transformation onto G(s). Let the balanced gramian matrix be Σ = diag(σ1 , · · · , σn ) in descending order. Remarks: (1) After applying the above transformation, G(s) is, in general, not in the balanced realisation form, but with its controllability gramian being Σ ; (2) Σ ≤ I , due to F (s) being an allpass matrix. Step 4: Partition Σ as Σ= Σ1 0 0 Σ2 (7.68) where Σ1 = diag(σ1 , · · · , σr ), Σ2 = diag(σr+1 , · · · , σn ), with σr > σr+1 . Partition compatibly the matrices A, B and C (of the transformed stateB1 A11 A12 ,B= , and C = C1 C2 . space model of G(s)) A = A21 A22 B2 Then, a reducedorder system Gr (s) can be deﬁned by Gr (s) = C1 (sI − A11 )−1 B1 + D (7.69) For this reducedorder system, a relative error bound can be derived ([52]) as G−1 (G − Gr )
∞ ≤ 1 + σi −1 1 − σi i=r +1 n (7.70) The errors between the phase matrices, with the same antistable and constant parts, are bounded by F (s) − Fr (s) F (s) − Fr (s) Remarks: 1. The BST method can be applied to nonsquare G(s) as well, with slight modiﬁcations. The invertibility of G(s) is changed to the assumption that
∞ H ≤ 4(σr+1 + · · · + σn ) ≤ 2(σr+1 + · · · + σn ) (7.71) (7.72) 92 7 Lowerorder Controllers D is of full row rank. The constant matrix of the square spectral facT tor W (s) would be DW , with DW DW = DDT , and the output matrix T −1 T CW = DW (DD ) (C − BW QW ). However, in the nonsquare case, there would be no explicit explanation of the relative error format (7.63). The reduction just shows an approximation with respect to phase. 2. In the above method, instead of balanced truncation, the Hankelnorm approximation can be used ([47]). That is, the balanced realisation of the stable part, Fs (s), of the phase matrix F (s) is to be approximated by a Hankelnorm approximant, Fs,r (s), calculated using the formula in Section 7.1.3. The reduced model, Gr , can then be deﬁned as Gr = G − W − (Fs − Fs,r ) (7.73) It can be shown ([47, 52]) that Gr is stable and satisﬁes the following error bound
n G − 1 ( G − Gr ) ∞ ≤
i=r +1 (1 + σi ) − 1 (7.74) 7.4 Frequencyweighted Approximation Methods
The modelorder reduction approaches introduced above can be in theory applied to plants (the original system models) as well as to controllers. However, to reduce the order of a designed controller, it is necessary to take into account the plant that is being compensated and other design speciﬁcations of the closedloop system. With such considerations, the controllerorder reduction problem would be better formulated as a frequencyweighted model reduction, and suitable approaches have been suggested. Assume that a controller K (s) has been designed for a plant with a model G(s), and denote a reducedorder controller by Kr (s). The conﬁguration with K (s) replaced by Kr (s) in the closedloop system can be depicted by Figure 7.2. From the SmallGain Theorem (Theorem 3.1), it is easy to obtain that the closedloop system with the reducedorder controller Kr (s) remains stable if K (s) and Kr (s) have the same number of unstable poles and if [K (s) − Kr (s)]G(s)[I + K (s)G(s)]−1 or [I + G(s)K (s)]−1 G(s)[K (s) − Kr (s)]
∞ ∞ <1 (7.75) <1 (7.76) Let Wi (s) := G(s)[I + K (s)G(s)]−1 and Wo (s) := [I + G(s)K (s)]−1 G(s). Then in order to reserve the stability of the closedloop system, a reducedorder controller Kr (s) is sought to minimise the frequencyweighted cost functions 7.4 Frequencyweighted Approximation Methods 93 Fig. 7.2. Closedloop system with reducedorder controllers [K (s) − Kr (s)]Wi (s) or Wo (s)[K (s) − Kr (s)] ∞ (7.77) ∞ (7.78) Note in this case the input frequency weight function Wi (s) equals the output frequency weight function Wo (s). Another consideration is about the performance of the closedloop system. The performance is closely related to the transfer function of the closedloop system. Naturally, to maintain the performance of the designed, closedloop system, it requires the transfer function of the closedloop system with reducedorder controller to be as near as possible to that with the original controller. The two transfer functions are, respectively, G(s)K (s)[I + G(s)K (s)]−1 G(s)Kr (s)[I + G(s)Kr (s)]−1 The diﬀerence between these two transfer functions, by neglecting terms of second and higher orders in K − Kr , is G(s)[I + K (s)G(s)]−1 [K (s) − Kr (s)][I + G(s)K (s)]−1 Hence, a reducedorder controller Kr (s) should try to minimise Wo (s)[K (s) − Kr (s)]Wi (s)
∞ (7.79) where Wi (s) := [I + G(s)K (s)]−1 and Wo (s) := G(s)[I + K (s)G(s)]−1 . Let us now concentrate on the general form of frequencyweighted model reduction of (7.79), but replacing K (s) and Kr (s) by G(s) and Gr (s), respectively. Assume that G(s)is stable and has the minimal realisation as deﬁned in (7.2). The input weight function Wi (s) and the output weight Wo (s) are also Ao Bo Ai Bi , and Wo (s) = stable with minimal realisations: Wi (s) = Co Do Ci Di respectively. 94 7 Lowerorder Controllers Remark: Obviously the stability assumption of G(s) would be a restriction in the case of controllerorder reduction. In the case of unstable G(s), the modal decomposition discussed in Section 7.1.4 can be considered. The augmented systems G(s)Wi (s) and Wo (s)G(s) have the statespace models ⎤ ⎡ A BCi BDi ˆˆ Ai B i (7.80) G(s)Wi (s) = ˆ ˆ = ⎣ 0 Ai Bi ⎦ Ci Di C DCi DDi
⎤ A0 B Bo D ⎦ = ⎣ Bo C Ao Do C Co Do D ⎡ ˆ A Wo G(s) = ˆo Co ˆ Bo ˆo D (7.81) ˆ ˆ Let P and Q be two nonnegative matrices satisfying the following two Lyapunov equations, respectively, ˆˆ ˆˆ ˆˆ AP + P A T + B B T = 0 Tˆ ˆ ˆˆ ˆ ˆ A Q + QA + C T C = 0 ˆ ˆ Furthermore, partition P and Q as ˆ P= ˆ Q= P P12 T P12 P22 Q Q12 QT Q22 12 (7.84) (7.85) (7.82) (7.83) where, P and Q are of ndimension, and are called the input weighted gramian and output weighted gramian, respectively. Several frequencyweighted modelreduction algorithms use balanced realisation transformations on P and Q or are related with truncations. Three such methods are introduced below. Frequencyweighted Balanced Truncation(FWBT) Enns [30, 29] proposes to ﬁnd a balanced realisation on P and Q, i.e. to ﬁnd an invertible n × n matrix T (see Section 7.1.1) such that T P T T = (T −1 )T QT −1 = diag(σ1 , · · · , σr , σr+1 , · · · , σn ) with σ1 ≥ σ2 ≥ · · · ≥ σr > σr+1 ≥ · · · ≥ σn ≥ 0. Apply such a state similarity transformation (T, T −1 ) on G(s) and partition it accordingly, 7.4 Frequencyweighted Approximation Methods 95 T AT −1 T B CT −1 D A11 A12 BB = ⎣ A21 A22 1 2 ⎦ C1 C2 D ⎡ ⎤ (7.86) where A11 is of r × r dimension. A reducedorder Gr (s) can then be deﬁned by Gr (s) = A11 B1 C1 D (7.87) Gr (s) obtained in (7.87) is not necessarily stable, except in the cases where either Wi = I or Wo = I (oneside weight only). There is an error bound derived ([75]) for Wo (s)[G(s) − Gr (s)]Wi (s)
∞ However, this bound has to be computed iteratively, depending on reducedorder models of n − 1, · · · , r + 1, and is not practically useful. Frequencyweighted Singular Perturbation Approximation(FWSPA) Lin and Chiu [88] introduce another truncation method to obtain a frequencyweighted reduced model. Assume that P22 and Q22 in (7.84) and (7.85), respectively, are nonsingular. This condition is guaranteed, for example, in the case that the realisations (7.80) and (7.81) are minimal, i.e. if there are no pole/zero cancellations between G(s) and Wi (s), nor between Wo (s) and G(s). Instead of applying a balanced realisation transformation on P and Q as in the Enns method, a balanced realisation transformation is to be found with − T regard to P − P12 P221 P12 and Q − QT Q−1 Q1 2. This balanced realisation is 12 22 then applied onto the original model G(s) and truncation taken in the same way as in (7.86) and (7.87). − T Apparently, this method is so named because the matrices P − P12 P221 P12 −1 T and Q − Q12 Q22 Q1 2 are in the form of the reducedorder state matrix used in the Singular Perturbation Approximation method (Section 7.1.2). It − I 0 I −P12 P221 and is observed that, by pre/postmultiplying − T −P221 P12 I 0 I on (7.82), and similar multiplications with regard to Q on (7.83), matrices − T P − P12 P221 P12 and Q − QT Q−1 Q1 2 satisfy two Lyapunov equations, re12 22 spectively. Hence, the diagonalised matrices of these two after the balanced realisation transformations satisfy the Lyapunov equations, too. This indicates the reducedorder system is guaranteed to be stable. There is an error bound available for this method ([144]). However, it suﬀers the same weakness as the error bound for the Enns method. The error bound cannot be simply calculated from the original model data. 96 7 Lowerorder Controllers Frequencyweighted Modulii Truncation Method(FWMT) The error bounds for the above two methods are not practically useful. In [157], Wang et al. propose another truncation method with a priori computable error bound. Quoting the upperleft blocks of (7.82) and (7.83) gives the following two matrix equations:
TT T AP + P AT + BCi P12 + P12 Ci B T + BDi Di B T = 0 T T AT Q + QA + Q12 Bo C + C T Bo QT + C T Do Do C = 0 12 (7.88) (7.89) Let
TT T X = BCi P12 + P12 Ci B T + BDi Di B T T T Y = Q12 Bo C + C T Bo QT + C T Do Do C 12 (7.90) (7.91) Note that X and Y deﬁned above are symmetric but not signdeﬁnite in general. Apply congruent transformations on X and Y to obtain orthogonal matrices U and V such that X = U ΘU T Y = V ΓV
T (7.92) (7.93) where Θ = diag(θ1 , · · · , θi , 0, · · · , 0), Γ = diag(γ1 , · · · , γo , 0, · · · , 0), with θ1  ≥ · · · ≥ θi  > 0 and γ1  ≥ · · · ≥ γo  > 0. Now, deﬁne
1 1 ˜ B = U diag(θ1  2 , · · · , θi  2 , 0, · · · , 0) 1 1 ˜ C = diag(γ1  2 , · · · , γo  2 , 0, · · · , 0)V T (7.94) (7.95) Solve the following two Lyapunov equations: ˜ ˜ ˜˜ AP + P AT + B B T = 0 ˜ ˜˜ ˜ QA + AT Q + C T C = 0 (7.96) (7.97) ˜˜ It can be shown ([157]) that (A, B, C ) is a minimal realisation and hence ˜ ˜ the solutions P and Q to (7.96) and (7.97), respectively, are positive deﬁnite. Similar to FWBT and FWSPA methods, a balanced realisation is found with ˜ ˜ regard to P and Q and the transformation is applied to the original model (A, B, C ) to yield a reducedorder model Gr (s). Such a Gr (s) is stable, following the same reasoning as in the FWSPA method. Furthermore, the following error bound can be derived ([157]). Deﬁne K = diag(θ1  2 , · · · , θi  2 , 0, · · · , 0)U T B L = CV diag(γ1  , · · · , γo  , 0, · · · , 0)
1 2 1 2 1 1 (7.98) (7.99) 7.4 Frequencyweighted Approximation Methods 97 Then, it is shown in ([157]) that
n Wo (s)(G(s) − Gr (s))Wi (s) where k = 2 Wo (s)L
∞ ∞ ≤k
j =r +1 σj (7.100) K Wi (s) ∞ and (σ1 , ·, σr , σr+1 , · · · , σn ) are the diagonal elements of the balanced form of ˜˜ P (Q). Part II Design Examples 8 Robust Control of a MassDamperSpring System In this chapter we consider the design of a robust control system for a simple, secondorder, mechanical system, namely a massdamperspring system. The massdamperspring system is a common control experimental device frequently seen in an undergraduate teaching laboratory. As the ﬁrst case study considered in this book, we show in detail the design of three diﬀerent controllers for this system and present robust stability and robust performance analysis of the corresponding closedloop systems, respectively. In order to keep the designs simple we take into account only the structured (parametric) perturbations in the plant coeﬃcients. In this design example we give some information for several basic commands from the Robust Control Toolbox that are used in the analysis and design in this and subsequent case studies. To illuminate in a clear way the implementation of the most important Robust Control Toolbox commands, we include in the chapter all ﬁles used in computations related to the analysis and design of the massdamperspring control system. It is hoped that this chapter may serve as a tutorial introduction not only to robust control systems analysis and design but also to the use of the Robust Control Toolbox. 8.1 System Model
The onedegreeoffreedom(1DOF) massdamperspring system is depicted in Figure 8.1. The dynamics of such a system can be described by the following 2ndorder diﬀerential equation, by Newton’s Second Law, mx + cx + kx = u ¨ ˙ where x is the displacement of the mass block from the equilibrium position and u = F is the force acting on the mass, with m the mass, c the damper constant and k the spring constant. A block diagram of such a system is shown in Figure 8.2. 102 8 Robust Control of a MassDamperSpring System Fig. 8.1. Massdamperspring system Fig. 8.2. Block diagram of the massdamperspring system In a realistic system, the three physical parameters m, c and k are not known exactly. However, it can be assumed that their values are within certain, known intervals. That is, m = m(1 + pm δm ), c = c(1 + pc δc ), k = k (1 + pk δk ) where m = 3, c = 1, k = 2 are the socalled nominal values of m, c and k . pm , pc and pk and δm , δc and δk represent the possible (relative) perturbations on these three parameters. In the present study, we let pm = 0.4, pc = 0.2, pk = 0.3 and −1 ≤ δm , δc , δk ≤ 1. Note that this represents up to 40% uncertainty in the mass, 20% uncertainty in the damping coeﬃcient and 30% uncertainty in the spring stiﬀness. The three constant blocks in Figure 8.2 can be replaced by block diagrams in terms of m, pm , δm , etc., in a uniﬁed approach. We note that the quantity 1 m may be represented as a linear fractional transformation (LFT) in δm
pm 1 1 1 δm (1 + pm δm )−1 − = = m m m(1 + pm δm ) m = FU (Mmi , δm ) with Mmi = −pm −pm
1 m 1 m 8.1 System Model 103 Similarly, the parameter c = c(1 + pc δc ) may be represented as an upper LFT in δc c = FU (Mc , δc ) with Mc = 0c pc c and the parameter k = k (1 + pk δk ) may be represented as an upper LFT in δk , k = FU (Mk , δk ) with Mk = 0k pk k All these LFTs are depicted by block diagrams in Figure 8.3. Fig. 8.3. Representation of uncertain parameters as LFTs To further represent the system model as an LFT of the unknown, real perturbations δm , δc and δk , we use the block diagrams in Figure 8.3 and denote the inputs and outputs of δm , δc and δk as ym , yc , yk and um , uc , uk , respectively, as shown in Figure 8.4. With the above substitutions, the equations relating all “inputs”to corresponding “outputs”around these perturbed parameters can now be obtained as 1 um −pm m ym = 1 u − vc − vk x ¨ −pm m yc vc yk vk = = 0c pc c 0k pk k uc x ˙
uk x um = δm ym uc = δc yc uk = δk yk 104 8 Robust Control of a MassDamperSpring System Fig. 8.4. Block diagram of the massdamperspring system with uncertain parameters Let us set x1 = x, x2 = x = x1 , y = x1 ˙ ˙ such that x2 = x = x1 ˙ ¨¨ As a result, we obtain the following equations x1 ˙ x2 ˙ ym yc yk vc vk y um uc uk = x2 1 = −pm um + m (u − vc − vk ) 1 = −pm um + m (u − vc − vk ) = cx2 = kx1 = pc uc + cx2 = pk uk + kx1 = x1 = δm ym = δc yc = δk yk By eliminating the variables vc and vk , the equations governing the system dynamic behaviour are given by 8.1 System Model 105 ⎤ ⎤⎡ ⎤⎡ 0 10 0 00 x1 x1 ˙ ⎢ x2 ⎥ ⎢ − k − c  −pm − pc − pk  1 ⎥ ⎢ x2 ⎥ m ⎥⎢ m m ⎥ ⎢˙ ⎥ ⎢ m m ⎢ −− ⎥ ⎢ −− −− − −− −− −− − −− ⎥ ⎢ −− ⎥ ⎥ ⎥⎢ ⎢ ⎥⎢ ⎢ ym ⎥ ⎢ − k − c  −p − pc − pk  1 ⎥ ⎢ um ⎥ m ⎥ ⎢ ⎥=⎢ m m m ⎥⎢ m m ⎢ yc ⎥ ⎢ 0 c0 0 0  0 ⎥ ⎢ uc ⎥ ⎥ ⎥⎢ ⎢ ⎥⎢ ⎢ yk ⎥ ⎢ k 00 0 0  0 ⎥ ⎢ uk ⎥ ⎥ ⎥⎢ ⎢ ⎥⎢ ⎣ −− ⎦ ⎣ −− −− − −− −− −− − −− ⎦ ⎣ −− ⎦ u y 1 00 0 00 ⎡ ⎤⎡ ⎤⎡ ⎤ um δm 0 0 ym ⎣ uc ⎦ = ⎣ 0 δ c 0 ⎦ ⎣ y c ⎦ uk 0 0 δk yk ⎡ Let Gmds denote the input/output dynamics of the massdamperspring system, which takes into account the uncertainty of parameters as shown in Figure 8.5. Gmds has four inputs (um , uc , uk , u), four outputs (ym , yc , yk , y ) and two states (x1 , x2 ). Fig. 8.5. Input/output block diagram of the massdamperspring system The state space representation of Gmds is ⎤ ⎡ A B1 B2 Gmds = ⎣ C1 D11 D12 ⎦ C2 D21 D22 where 0 1 0 0 0 0 , B2 = 1 , B1 = c k −pm − pc − pk −m −m m m m ⎤ ⎡1⎤ ⎤ ⎡ ⎡k pk pc c −pm − m − m −m −m m 0 0 ⎦ , D12 = ⎣ 0 ⎦ C1 = ⎣ 0 c ⎦ , D11 = ⎣ 0 0 0 0 0 k 0 A=
C2 = 1 0 , D21 = 0 0 0 , D22 = 0 Note that Gmds depends only on m, c, k, pm , pc , pk and on the original diﬀerential equation connecting y with u. Hence, Gmds is known and contains no uncertain parameters. 106 8 Robust Control of a MassDamperSpring System Below, we give the Mﬁle mod mds.m, which can be used to compute the system matrix Gmds and to save it in the MATLAB r variable G. File mod mds.m m = 3; c = 1; k = 2; pm = 0.4; pc = 0.2; pk = 0.3; % A=[ 0 1 k/m c/m]; B1 = [ 0 0 0 pm pc/m pk/m]; B2 = [ 0 1/m]; C1 = [k/m c/m 0 c k 0 ]; C2 = [ 1 0 ]; D11 = [pm pc/m pk/m 0 0 0 0 0 0 ]; D12 = [1/m 0 0 ]; D21 = [0 0 0]; D22 = 0; G = pck(A,[B1,B2],[C1;C2],[D11 D12;D21 D22]); The uncertain behaviour of the original system can be described by an upper LFT representation y = FU (Gmds , ∆)u with diagonal uncertainty matrix ∆ = diag(δm , δc , δk ), as shown in Figure 8.6. It should be noted that the unknown matrix ∆, which will be called the uncertainty matrix, has a ﬁxed structure. It is a diagonal matrix. It could, in general, be block diagonal. Such uncertainty is thus called structured uncertainty. Apart from the method presented above in which system equations are derived ﬁrst followed by explicitly deﬁning all those coeﬃcient matrices, the system matrix Gmds may also be obtained by using the MATLAB r command sysic. The following ﬁle sys mds.m shows how this can be done. 8.2 Frequency Analysis of Uncertain System 107 Fig. 8.6. LFT representation of the massdamperspring system with uncertainties File sys mds.m m_nom = 3; c_nom = 1; k_nom = 2; p_m = 0.4; p_c = 0.2; p_k = 0.3; mat_mi = [p_m 1/m_nom; p_m 1/m_nom]; mat_c = [0 c_nom; p_c c_nom]; mat_k = [0 k_nom; p_k k_nom]; int1 = nd2sys([1],[1 0]); int2 = nd2sys([1],[1 0]); systemnames = ’mat_mi mat_c mat_k int1 int2’; sysoutname = ’G’; inputvar = ’[um;uc;uk;u]’; input_to_mat_mi = ’[um;umat_c(2)mat_k(2)]’; input_to_mat_c = ’[uc;int1]’; input_to_mat_k = ’[uk;int2]’; input_to_int1 = ’[mat_mi(2)]’; input_to_int2 = ’[int1]’; outputvar = ’[mat_mi(1);mat_c(1);mat_k(1);int2]’; sysic; 8.2 Frequency Analysis of Uncertain System
The frequency responses of the perturbed openloop system may be computed by using the command starp at a few diﬀerent values of the perturbation parameters δm , δc , δk . In the Mﬁle pfr mds below, three values of each perturbation are chosen, the corresponding openloop transfer function matrices generated and frequency responses calculated and plotted. 108 8 Robust Control of a MassDamperSpring System File pfr mds.m % % Frequency responses of the perturbed plants % mod_mds omega = logspace(1,1,100); [delta1,delta2,delta3] = ndgrid([1 0 1],[1 0 1], ... [1 0 1]); for j = 1:27 delta = diag([delta1(j),delta2(j),delta3(j)]); olp = starp(delta,G); olp_ic = sel(olp,1,1); olp_g = frsp(olp_ic,omega); figure(1) vplot(’bode’,olp_g,’c’) subplot(2,1,1) hold on subplot(2,1,2) hold on end subplot(2,1,1) olp_ic = sel(G,4,4); olp_g = frsp(olp_ic,omega); vplot(’bode’,olp_g,’r’) subplot(2,1,1) title(’BODE PLOTS OF PERTURBED PLANTS’) hold off subplot(2,1,2) hold off The Bode plots of the family of perturbed systems for −1 ≤ δm , δc , δk ≤ 1 are shown in Figure 8.7. 8.3 Design Requirements of Closedloop System
The design objective for the massdamperspring system in this study is to ﬁnd a linear, output feedback control u(s) = K (s)y (s), which ensures the following properties of the closedloop system. Nominal stability and performance: The controller designed should make the closedloop system internally stable. Further, the required closedloop system performance should be achieved for 8.3 Design Requirements of Closedloop System
1 109 Bode plots of perturbed plants 10 Magnitude (Log) 10 0 10 −1 10 −2 10 −3 10 −1 10 Frequency (rad/s) 0 10 1 0 −50 Phase (deg) −100 −150 −200 −1 10 10 Frequency (rad/s) 0 10 1 Fig. 8.7. Bode plots of perturbed openloop systems the nominal plant model Gmds . In this case study, the performance criterion for the closedloop system is the socalled S over KS design and is described by Wp S (Gmds ) Wu KS (Gmds ) <1
∞ (8.1) where S (Gmds ) = (I + Gmds K )−1 is the output sensitivity function of the nominal system, and Wp , Wu are weighting functions chosen to represent the frequency characteristics of some external (output) disturbance d and performance requirement (including consideration of controleﬀort constraint) level. Satisfaction of the above norm inequality indicates that the closedloop system successfully reduces the eﬀect of the disturbance to an acceptable level, and achieves the required performance. It should also be noted that the sensitivity function S denotes the transfer function of the reference tracking error. 110 8 Robust Control of a MassDamperSpring System Robust stability: The closedloop system achieves robust stability if the closedloop system is internally stable for all possible plant models G = FU (Gmds , ∆). In the present case this means that the system must remain stable for any 1.8 ≤ m ≤ 4.2, 0.8 ≤ c ≤ 1.2, 1.4 ≤ k ≤ 2.6. Robust performance: In addition to the robust stability, the closedloop system, for all G = FU (Gmds , ∆), must satisfy the performance criterion Wp (I + GK )−1 Wu K (I + GK )−1 <1
∞ Also, it is desirable that the complexity of the controller is acceptable, i.e., it is of suﬃciently low order. The block diagram of the closedloop system showing the feedback structure and including the elements reﬂecting model uncertainty and performance requirements, is given in Figure 8.8. Fig. 8.8. Closedloop system structure The rectangle with dashed lines in Figure 8.8 represents the transfer function matrix G. Inside the rectangle is the nominal model Gmds of the massdamperspring system and the uncertainty matrix ∆ that includes the model uncertainties. In general, the matrix ∆ could be a transfer function matrix and is assumed to be stable. ∆ is unknown but satisﬁes the norm condition ∆ ∞ < 1. The variable d is the disturbance on the system, at the system output. It is easy to work out that ep eu = Wp (I + GK )−1 d Wu K (I + GK )−1 8.3 Design Requirements of Closedloop System 111 Hence, the performance criterion is that the transfer functions from d to ep and eu should be small in the sense of . ∞ , for all possible uncertain transfer matrices ∆. The weighting functions Wp and Wu are used to reﬂect the relative signiﬁcance of the performance requirement over diﬀerent frequency ranges. In the given case, the performance weighting function is a scalar function Wp (s) = wp (s) and is chosen as wp (s) = 0.95 s2 + 1.8s + 10 s2 + 8.0s + 0.01 which ensures, apart from good disturbance attenuation, good transient response (settling time less than 10 s and overshoot less than 20% for the nominal system). The control weighting function Wu is chosen simply as the scalar wu = 10−2 . Note that ﬁnding appropriate weighting functions is a crucial step in robust controller design and usually needs a few trials. For complex systems, signiﬁcant eﬀorts may be required. To deﬁne the chosen weighting functions in MATLAB r , the following ﬁle wts mds.m is used. File wts mds.m nuWp = [1 1.8 10]; dnWp = [1 8 0.01]; gainWp = 0.95; Wp = nd2sys(nuWp,dnWp,gainWp); nuWu = 1; dnWu = 1; gainWu = 10^(2); Wu = nd2sys(nuWu,dnWu,gainWu); To achieve the desired performance of disturbance rejection (or, of tracking error) it is necessary to satisfy the inequality Wp (I + GK )−1 ∞ < 1. Since Wp is a scalar function in the present case, the singular values of the sensitivity 1 function (I + GK )−1 over the frequency range must lie below that of wp . This −1 indicates Wp (I + GK ) ∞ < 1 if and only if for all frequencies σ [(I + 1 GK )−1 (jω )] < 1/wp (jω ). The inverse weighting function wp is calculated by the commands omega = logspace(4,4,100); Wp_g = frsp(Wp,omega); Wpi_g = minv(Wp_g); vplot(’liv,lm’,Wpi_g) title(’Inverse of Performance Weighting Function’) xlabel(’Frequency (rad/sec)’) ylabel(’Magnitude’) The singular values of in Figure 8.9.
1 wp over the frequency range [10−4 , 104 ] are shown 112 8 Robust Control of a MassDamperSpring System
10
1 Inverse of performance weighting function 10 0 Magnitude 10 −1 10 −2 10 −3 10 −4 10 −3 10 −2 10 −1 10 Frequency (rad/s) 0 10 1 10 2 10 3 10 4 Fig. 8.9. Singular values of 1 wp This weighting function shows that for low frequencies the closedloop system (the nominal as well as perturbed) must attenuate the output disturbance in the ratio of 10 to 0.01. In other words, The eﬀect of a unit disturbance on the steadystate output should be of the order 10−3 or less. (The same is also valid for the reference tracking error since in the given case the corresponding transfer function coincides with the sensitivity transfer function.) This performance requirement becomes less stringent with increasing frequency. It is seen in Figure 8.9 that from the frequency 1 rad/s the disturbance is no longer to be “attenuated”. This shows in the time response the eﬀect of disturbance will not be alleviated until some time later and will then be reduced to a scale of 10−3 or even less. 8.4 System Interconnections
The structure of the openloop system is represented in Figure 8.10. The variable y c (the controller input) is taken with negative sign since the commands intended for design in the Robust Control Toolbox produce controllers with positive feedback. The variables pertin and pertout have three elements, and the variables control, dist, e p, e u and y c have one element. The command sysic can be used to create the structure of openloop systems in MATLAB r . In the present case study, the openloop system is 8.4 System Interconnections 113 Fig. 8.10. Structure of openloop system saved as the variable sys ic. sys ic has ﬁve inputs and six outputs, as shown in Figure 8.11, and is a variable of the type SYSTEM (denoted also as P ). Fig. 8.11. Generalised block diagram of openloop system The following Mﬁle olp mds.m is used to create the variable sys ic. File olp mds.m systemnames = ’ G Wp Wu ’; inputvar = ’[ pert{3}; dist; control ]’; outputvar = ’[ G(1:3); Wp; Wu; G(4)dist ]’; input_to_G = ’[ pert; control ]’; input_to_Wp = ’[ G(4)+dist ]’; input_to_Wu = ’[ control ]’; sysoutname = ’sys_ic’; 114 8 Robust Control of a MassDamperSpring System cleanupsysic = ’yes’; sysic To analyse the openloop system, the following commands can be used. minfo(sys_ic) spoles(sys_ic) spoles(W_p) To assess the performance of designed systems, a uniﬁed simulation ﬁle of codes, clp mds.m, is used and will be listed in Section 8.6. This simulation of closedloop systems with designed controllers is based on the structure shown in Figure 8.12. Note that the weighting functions Wp and Wu are not included in the blockdiagram for obvious reasons. Fig. 8.12. Structure of the closedloop system The model of the openloop system with uncertainties is set by the Mﬁle sim mds.m below. File sim mds.m systemnames = ’ G ’; inputvar = ’[ pert{3}; ref; dist; control ]’; outputvar = ’[ G(1:3); G(4)+dist; ref  G(4)  dist ]’; input_to_G = ’[ pert; control ]’; sysoutname = ’sim_ic’; cleanupsysic = ’yes’; sysic 8.5 Suboptimal H∞ Controller Design 115 8.5 Suboptimal H∞ Controller Design
The ﬁrst controller to be designed for the connection of type SYSTEM, shown in Figure 8.11, is an H∞ (sub)optimal controller. This controller minimizes the inﬁnitenorm of FL (P, K ) over all stabilising controllers K . Remember that FL (P, K ) is the transfer function matrix of the nominal closedloop system from the disturbance (the variable dist) to the errors (e), as shown in Figure ep . For this purpose, we ﬁrst extract from sys ic the 8.13, where e = eu corresponding transfer function matrix P using the following command and save it in the variable hin ic. hin_ic = sel(sys_ic,[4:6],[4:5]) Fig. 8.13. Closedloop LFTs in H∞ design The design uses the command hinfsyn that computes a suboptimal H∞ controller, based on the given openloop structure. The syntax, input and output arguments of hinfsyn are [k,clp] = hinfsyn(p,nmeas,ncon,glow,ghigh,tol) The arguments have the following meanings. Input arguments openloop interconnection (matrix of type SYSTEM) number of measurements number of controls lower bound of bisection upper bound of bisection absolute tolerance for the bisection method p nmeas ncons glow ghigh tol 116 8 Robust Control of a MassDamperSpring System Output arguments controller (matrix of type SYSTEM) closedloop system (matrix of type SYSTEM) k clp In the present exercise, the openloop interconnection is saved in the variable hin ic. It consists of one measurement (obtained by a sensor), two error signals, one control input, one disturbance and four states (two states of the plant plus two of the weighting function Wp ). Note that for the given structure, the openloop system whose norm is to be minimised has 1 input and 2 outputs. The interval for γ iteration is chosen between 0.1 and 10 with tolerance tol = 0.001. At each iteration the program displays the current value of γ and the results of ﬁve tests for existence of a suboptimal controller. At the end of each iteration the symbol p or f is displayed, which indicates the value of the current γ is either accepted or rejected. The symbol # is used to denote which of the ﬁve conditions for the existence of H∞ (sub)optimal controllers is violated for the γ used. When the iteration procedure succeeds, the achievable minimum value of γ is given. The transfer function matrix of the closedloop system from dist to e is saved in the variable clp. Below, we give the ﬁle hin mds.m used to design an H∞ (sub)optimal controller Khin , followed by the display of results obtained in the exercise. File hin mds.m nmeas = 1; ncon = 1; gmin = 1; gmax = 10; tol = 0.001; hin_ic = sel(sys_ic,4:6,4:5); [K_hin,clp] = hinfsyn(hin_ic,nmeas,ncon,gmin,gmax,tol); Resetting value of Gamma min based on D_11, D_12, D_21 terms Test bounds: gamma 10.000 5.475 3.212 2.081 1.516 1.233 1.091 1.021 0.985 hamx_eig 8.9e001 8.9e001 8.9e001 8.8e001 8.8e001 8.8e001 8.8e001 8.8e001 8.8e001 0.9500 < xinf_eig 6.2e003 6.2e003 6.3e003 6.3e003 6.4e003 6.5e003 6.7e003 6.8e003 6.9e003 gamma <= 10.0000 yinf_eig 0.0e+000 0.0e+000 1.1e020 0.0e+000 2.2e014 7.9e021 0.0e+000 0.0e+000 7.9e021 nrho_xy 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 p/f p p p p p p p p p hamy_eig 1.3e003 1.3e003 1.3e003 1.3e003 1.3e003 1.3e003 1.3e003 1.3e003 1.3e003 8.6 Analysis of Closedloop System with Khin 117 0.968 0.959 0.954 0.952 0.951 0.951 8.8e001 8.8e001 8.8e001 8.8e001 8.8e001 8.8e001 7.0e003 7.1e003 7.2e003 7.2e003 7.2e003 7.2e003 1.3e003 1.3e003 1.3e003 1.3e003 1.3e003 1.3e003 0.0e+000 7.9e021 0.0e+000 0.0e+000 7.9e021 0.0e+000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 p p p p p p Gamma value achieved: 0.9506 The controller obtained is of 4th order. To check the achieved H∞ norm of the closedloop system that is found to be 0.95 in the iteration, the following command line can be used. hinfnorm(clp) 8.6 Analysis of Closedloop System with Khin
From the last section, it is obvious that the required condition Wp (I + Gmds K )−1 Wu K (I + Gmds K )−1 <1
∞ is satisﬁed and thus the closedloop system achieves nominal performance requirements. Further, we use the following commands to form the transfer function of Figure 8.13, with the designed (sub)optimal H∞ controller Khin , to analyse the behaviour of the closedloop system. minfo(K_hin) spoles(K_hin) omega = logspace(2,6,100); clp_g = frsp(clp,omega); vplot(’liv,lm’,vsvd(clp_g)) title(’Singular Value Plot of clp’) xlabel(’Frequency (rad/sec)’) ylabel(’Magnitude’) Figure 8.14 shows the singular values of the closedloop system clp. Since clp is of dimensions 2 × 1, there is just one (nonzero) singular value at each frequency. Since the H∞ norm of the closedloop system is less than one, the condition Wp (I + Gmds K )−1 ∞ < 1 is satisﬁed in the given case. This may be checked by computing the sensitivity function of the closedloop system and comparing it with the inverse of the performance weighting function. The following ﬁle sen mds.m can be used for this purpose. 118 8 Robust Control of a MassDamperSpring System
Singular Value Plot of clp 0.95 0.9 0.85 0.8 0.75
Magnitude 0.7 0.65 0.6 0.55 0.5 0.45 −2 10 10 −1 10 0 10 1 10 Frequency (rad/s) 2 10 3 10 4 10 5 10 6 Fig. 8.14. Singular values of the closedloop system with Khin File sen mds.m sim_mds K = K_hin; clp = starp(sim_ic,K); % % inverse performance weighting function wts_mds omega = logspace(4,2,100); Wp_g = frsp(Wp,omega); Wpi_g = minv(Wp_g); % % sensitivity function sen_loop = sel(clp,4,5); sen_g = frsp(sen_loop,omega); vplot(’liv,lm’,Wpi_g,’m’,vnorm(sen_g),’y’) title(’CLOSEDLOOP SENSITIVITY FUNCTION’) xlabel(’Frequency (rad/sec)’) ylabel(’Magnitude’) The result of the comparison is shown in Figure 8.15. It is seen that in the 1 lowfrequency range the sensitivity function lies below wp . The test for robust stability is conducted on the leading 3 × 3 diagonal block of the transfer function matrix clp and the test for nominal performance is tested on its bottomright (the (4 − 4) element), 2 × 1 transfer function. These transfer functions may be obtained by using the command sel from clp, and their frequency responses can be calculated afterwards. Or, it is 8.6 Analysis of Closedloop System with Khin
10
1 119 Closed−loop sensitivity function 10 0 10
Magnitude −1 10 −2 10 −3 Solid line: nominal sensitivity function Dashed line: inverse weighting function 10 −4 10 −4 10 −3 10 −2 10 Frequency (rad/s) −1 10 0 10 1 10 2 Fig. 8.15. Sensitivity function with Khin possible to calculate the frequency response clp g of the whole system clp ﬁrst, and then use sel to obtain corresponding frequency responses. The closedloop transfer function matrix clp ic is obtainable from the openloop interconnection sys ic together with the controller K by implementing the function starp. Since the uncertainty considered is structured, veriﬁcation of the robust stability and robust performance needs the frequency response in terms of µ values. The syntax of the command mu is as the following. [bnds,dvec,sens,pvec] = mu(matin,deltaset) The function mu for µanalysis computes upper and lower bounds for the structured singular value of the matrix matin with respect to the block structure deltaset. The matrix matin may be a matrix of the type CONSTANT or a matrix of the type VARYING, such as the frequency response of the closedloop system. The command mu ﬁnds the upper and lower bounds for µ values in the 1 × 2 matrix bnds of the type VARYING, the frequencydependent Dscaling matrices in dvec, the frequencydependent perturbation, related to the lower bound, in pvec and the sensitivity of the upper bound to the Dscalings in sens. To achieve robust stability it is necessary that the upper bound of µ values is less than 1 over the frequency range. In the present example, the frequency response in terms of µ values is denoted by rob stab and the block structure is set by 120 8 Robust Control of a MassDamperSpring System blksR = [1 1;1 1;1 1] This means that in the robust stability analysis the parametric perturbations are assumed to be real. However, for better convergence of the algorithm that computes the lower bound of µ, we include 1% complex perturbations. This may, of course, produce some conservativeness in the design. The ﬁle rob mds.m below analyses the robust stability of the designed system, in which K = K_hin; has been deﬁned in advance. The same ﬁle may be used for robust stability analysis of other controllers K . File rob mds.m clp_ic = starp(sys_ic,K); omega = logspace(1,2,100); clp_g = frsp(clp_ic,omega); blkrsR = [1 1;1 1;1 1]; rob_stab = sel(clp_g,[1:3],[1:3]); pdim = ynum(rob_stab); fixl = [eye(pdim); 0.1*eye(pdim)]; % 1% Complex fixr = fixl’; blkrs = [blkrsR; abs(blkrsR)]; clp_mix = mmult(fixl,rob_stab,fixr); [rbnds,rowd,sens,rowp,rowg] = mu(clp_mix,blkrs); disp(’ ’) disp([’murobust stability: ’ ... num2str(pkvnorm(sel(rbnds,1,1)))]) disp(’ ’) vplot(’liv,lm’,sel(rbnds,1,1),’y’,sel(rbnds,1,2),’m’, ... vnorm(rob_stab),’c.’) title(’ROBUST STABILITY’) xlabel(’Frequency (rad/s)’) ylabel(’mu’) The frequency responses of the upper and lower bounds of µ are shown in Figure 8.16. It is clear from the ﬁgure that the closedloop system with Khin achieves robust stability. The maximum value of µ is 0.764 that shows 1 that structured perturbations with norm less than 0.764 are allowable, i.e., 1 the stability maintains for ∆ ∞ < 0.764 . In the same ﬁgure we also plot the frequency response of the maximum singular value of the leading 3 × 3 transfer function matrix, which characterises the robust stability with respect to unstructured perturbations. It is seen that the latter is greater than 1 over the frequency interval [0.5, 1] rad/s roughly. Thus, the robust stability 8.6 Analysis of Closedloop System with Khin
10
1 121 Robust stability 10 0 10 −1 µ
10
−2 −3 10 Solid line: upper bound Dashed line: lower bound Dash−dotted line: H bound ∞ 10 −4 10 −1 10 0 10 1 10 2 Frequency (rad/s) Fig. 8.16. Robust stability analysis of Khin is not preserved if the uncertainty is unstructured, which shows that the µ values give less conservative results if further information is known about the uncertainty. The nominal performance of the closedloop system (with respect to the weighting performance function) is analysed by means of the frequency response of the lowerright 2 × 1 transfer function block of clp. The nominal performance is achieved, if and only if for the frequency range considered the response magnitude is less than 1. The robust performance of the closedloop system with Khin may be tested by means of the µanalysis. The closedloop transfer function clp have four inputs and ﬁve outputs. The ﬁrst three inputs/outputs correspond to the three channels of perturbations ∆, while the 4th input/4th and 5th outputs pair corresponds to the weighted mixed sensitivity function. Hence, for µanalysis of the robust performance the block structure must consist of a 3 × 3 uncertainty block and an 1 × 2 performance block as ∆P := ∆0 0 ∆F : ∆ ∈ R3×3 , ∆F ∈ C 1×2 The robust performance of the designed system is achieved, if and only if µ∆P (·) is less than 1 for each frequency. 122 8 Robust Control of a MassDamperSpring System The nominal and robust performance of the closedloop system with the controller Khin is analysed using the ﬁle nrp mds.m, which may be used for other controllers as well by deﬁning, accordingly, the controller K . File nrp mds.m clp_ic = starp(sys_ic,K);; omega = logspace(1,2,100); clp_g = frsp(clp_ic,omega); blkrsR = [1 1;1 1;1 1]; % % nominal performance nom_perf = sel(clp_g,4,4); % % robust performance rob_perf = clp_g; blkrp = [blkrsR;[1 2]]; bndsrp = mu(rob_perf,blkrp); vplot(’liv,lm’,vnorm(nom_perf),’y’,sel(bndsrp,1,1),’m’,... sel(bndsrp,1,2),’c’) tmp1 = ’NOMINAL PERFORMANCE (solid) and’; tmp2 = ’ ROBUST PERFORMANCE (dashed)’; title([tmp1 tmp2]) xlabel(’Frequency (rad/s)’) disp(’ ’) disp([’murobust performance: ’ ... num2str(pkvnorm(sel(bndsrp,1,1)))]) disp(’ ’) The frequency responses showing the nominal and robust performance are given in Figure 8.17. It is seen from this ﬁgure that the system with Khin achieves nominal performance but fails to satisfy the robust performance criterion. This conclusion follows from the fact that the frequency response of the nominal performance has a maximum of 0.95, while the µ curve for the robust performance has a maximum of 1.67. With respect to the robust performance, this means in the present case that the size of the perturbation matrix ∆ must be limited to ∆ ∞ ≤ 1.1 , 67 to ensure the (perturbed) performance function satisfying Wp (I + FU (Gmds , ∆G )K )−1 Wu K (I + FU (Gmds , ∆G )K )−1 ≤1 ∞ The closedloop simulation with the ﬁle clp mds.m includes determination of the transient responses in respect to the reference and disturbance, in which the command trsp is used. 8.6 Analysis of Closedloop System with Khin
Nominal performance (solid) and robust performance (dashed) 123 2 1.8 1.6 1.4 1.2 1 0.8 0.6 0.4 −1 10 10 0 10
Frequency (rad/s) 1 10 2 Fig. 8.17. Nominal and robust performance of Khin File clp mds.m % response to the reference sim_mds clp = starp(sim_ic,K); timedata = [0 20 40]; stepdata = [1 0 1]; dist = 0; ref = step_tr(timedata,stepdata,0.1,60); u = abv(0,0,0,ref,dist); y = trsp(clp,u,60,0.1); figure(1) vplot(sel(y,4,1),’y’,ref,’r’) title(’CLOSEDLOOP TRANSIENT RESPONSE’) xlabel(’Time (secs)’) ylabel(’y (m)’) % % response to the disturbance timedata = [0 20 40]; stepdata = [1 0 1]; dist = step_tr(timedata,stepdata,0.1,60); ref = 0; u = abv(0,0,0,ref,dist); y = trsp(clp,u,60,0.1); figure(2) 124 8 Robust Control of a MassDamperSpring System vplot(sel(y,4,1),’y’,dist,’r’) title(’TRANSIENT RESPONSE TO THE DISTURBANCE’) xlabel(’Time (secs)’) ylabel(’y (m)’) The transient responses to the reference input and to the disturbance input are shown in Figures 8.18 and 8.19, respectively. The transient responses are relatively slow and have slight overshoots.
Closed−loop transient response
1.4 1.2 1 0.8 0.6 y (m)
0.4 0.2 0 −0.2 −0.4 0 10 20 30 Time (s) 40 50 60 Fig. 8.18. Transient response to reference input (Khin )
Transient response of the disturbance
1.5 1 0.5 y (m)
0 −0.5 −1 0 10 20 30 Time (s) 40 50 60 Fig. 8.19. Transient response to disturbance input (Khin ) 8.7 H∞ Loopshaping Design 125 8.7 H∞ Loopshaping Design
Let us consider now using the H∞ loopshaping design procedure (LSDP) for the massdamperspring system. For this aim the pre and postcompensators (see Chapter 5) are taken as 8s + 1 , W2 (s) = 1 0.9 The precompensator W1 is chosen so as to introduce an integrating eﬀect in the lowfrequency range that leads to good attenuation of disturbances. W1 (s) = 2
Frequency response of the precompensator 10 3 Magnitude 10 2 10 −2 10 1 10 −1 10 0 10 Frequency (rad/s) 1 10 2 10 3 10 4 Fig. 8.20. Frequency response of the precompensator The frequency response of the precompensator W1 is shown in Figure 8.20, and the frequency responses of the plant and of the shaped plant are given in Figure 8.21. The H∞ LSDP controller is computed by calling the function ncfsyn from the Robust Control Toolbox. The syntax, input and output arguments of ncfsyn are [sysk,emax,sysobs] = ncfsyn(sysgw,factor,opt) The arguments have the following meanings: Input arguments sysgw the shaped plant (matrix of type SYSTEM); 126 8 Robust Control of a MassDamperSpring System
10
2 Frequency responses of the plant and shaped plant 10 1 10
Magnitude 0 10 −1 10 −2 Solid line: frequency response of the plant Dashed line: frequency response of the shaped plant 10 −3 10 −1 10 Frequency (rad/s) 0 10 1 Fig. 8.21. Frequency responses of the plant and shaped plant factor = 1 implies that optimal controller is required. > 1 implies that suboptimal controller is required achieving a performance that is FACTOR times less than the optimal one; opt ‘ref’ the controller includes an additional set of reference signals and should be implemented as a twodegreeoffreedom controller (optional). Output arguments sysk H∞ loopshaping controller; emax Stability margin that shows the robustness to unstructured perturbations. emax is always less than 1 and values of emax larger than 0.3 generally indicate good robustness margins; sysobs H∞ controller with state observer. This variable is created only if factor>1 and opt = ‘ref’. 8.7 H∞ Loopshaping Design 127 The loopshaping design of the massdamperspring system is executed by the ﬁle lsh mds.m below. The parameter factor is chosen as 1.1, which means that the resulted suboptimal controller will be close to the optimal one. The designed controller is named Klsh in the program. File lsh mds.m % % set the precompensator nuw1 = [2 1]; dnw1 = [0.9 0]; gainw1 = 8; w1 = nd2sys(nuw1,dnw1,gainw1); % % frequency response of w1 omega = logspace(2,4,100); w1g = frsp(w1,omega); figure(1) vplot(’liv,lm’,w1g,’r’) title(’Frequency response of the precompensator’) xlabel(’Frequency (rad/sec)’) ylabel(’Magnitude’) % % form the shaped plant G_l = sel(G,4,4); sysGW = mmult(G_l,w1); % % frequency responses of the plant and shaped plant omega = logspace(1,1,100); G_lg = frsp(G_l,omega); sysGWg = frsp(sysGW,omega); figure(2) vplot(’liv,lm’,G_lg,’c’,sysGWg,’m’) title(’Frequency responses of the plant and shaped plant’) xlabel(’Frequency (rad/sec)’) ylabel(’Magnitude’) % % compute the suboptimal positive feedback controller [sysK,emax] = ncfsyn(sysGW,1.1); disp([’Stability margin emax = ’ num2str(emax)]); K = mmult(w1,sysK); % % construct the negative feedback controller [ak,bk,ck,dk] = unpck(K); 128 8 Robust Control of a MassDamperSpring System ck = ck; dk = dk; K_lsh = pck(ak,bk,ck,dk); 8.8 Assessment of H∞ Loopshaping Design
The H∞ LSDP controller Klsh ensures a stability margin emax = 0.395, which is a good indication with respect to the robust stability. As in the case of the previous H∞ design, the order of the resulting controller is equal to 4.
Closed−loop sensitivity function 10 1 10 0 10 −1 Magnitude 10 −2 10 −3 Solid line: nominal sensitivity function Dashed line: inverse weighting function 10 −4 10 −5 10 −4 10 −3 10 −2 10 Frequency (rad/s) −1 10 0 10 1 10 2 Fig. 8.22. Sensitivity function of Klsh The sensitivity function of the closedloop system of Klsh is shown in Figure 8.22. It is clear that the requirement for disturbance attenuation is satisﬁed. To check the robust stability of the designed closedloop system with Klsh , the upper and lowbounds of µ values of the corresponding transfer function matrix (the leading 3 × 3 diagonal block of clp with Klsh ) are shown in Figure 8.23. It is clear from that ﬁgure that the closedloop system achieves robust stability for the parametric perturbations under consideration. The nominal and robust performance of the closedloop system are assessed in Figure 8.24. It is seen in the ﬁgure that with the designed H∞ 8.8 Assessment of H∞ Loopshaping Design
10
0 129 Robust stability 10 −1 10 µ −2 10 −3 Solid line: upper bound Dashed line: lower bound 10 −4 10 −1 10 0 10
Frequency (rad/s) 1 10 2 Fig. 8.23. Robust stability of closedloop system with Klsh LSDP controller the closedloop system achieves both nominal and robust performance.
Nominal performance (solid) and robust performance (dashed) 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 −1 10 10 0 10
Frequency (rad/s) 1 10 2 Fig. 8.24. Nominal and robust performance of Klsh 130 8 Robust Control of a MassDamperSpring System Further, the transient responses of the closedloop system are obtained, once more using the ﬁle clp mds.m, and are shown in Figures 8.25 and 8.26. The time responses are slower than in the case of the H∞ controller but with smaller overshoots (less than 25%).
Closed−loop transient response
1.4 1.2 1 0.8 0.6 y (m)
0.4 0.2 0 −0.2 −0.4 0 10 20 30 Time (s) 40 50 60 Fig. 8.25. Transient response to reference input (Klsh )
Transient response to the disturbance
1 0.8 0.6 0.4 0.2 y (m) 0 −0.2 −0.4 −0.6 −0.8 −1 0 10 20 30 Time (s) 40 50 60 Fig. 8.26. Transient response to disturbance input (Klsh ) 8.9 µSynthesis and DK Iterations 131 8.9 µSynthesis and DK Iterations
The block diagram of the closedloop system used in the µsynthesis is given in Figure 8.8 and is reproduced for convenience in Figure 8.27. Fig. 8.27. Structure of closedloop system Let P (s) denote the transfer function matrix of the ﬁve inputs, six outputs openloop system sys ic in Figure 8.11 and let the block structure ∆P be deﬁned as in the case of the robust performance analysis in previous sections as ∆0 : ∆ ∈ R3×3 , ∆F ∈ C 1×2 ∆P := 0 ∆F The ﬁrst uncertainty block ∆ of this structured matrix is diagonal and corresponds to the uncertainties used in the modelling of the massdamperspring system. The second block ∆F is a ﬁctitious uncertainty block that is introduced to represent the performance requirements in the framework of the µapproach. The following optimisation problem is formed to minimize the upper bound of µ values which in turn reduces the maximum value of µ.
− min min D (s)FL (P, K )Dr 1 (s) K D (s), Dr (s) stabilizing stable, min. phaze ∞ ⎤ d1 (s) 0 0 0 ⎢ 0 d2 (s) 0 0⎥ ⎥ D (s) = ⎢ ⎣0 0⎦ 0 d3 (s) 0 0 0 d4 (s)I2 ⎡ 132 8 Robust Control of a MassDamperSpring System ⎤ d1 (s) 0 0 0 ⎢ 0 d2 (s) 0 0⎥ ⎥ Dr (s) = ⎢ ⎣0 0 d3 (s) 0 ⎦ 0 0 0 d4 (s) where d1 (s), d2 (s), d3 (s), d4 (s) are scaling transfer functions. The ﬁnding of a minimum value of the cost function and construction of a controller K , which would achieve performance arbitrary close to the optimal level, is called the µsynthesis. In other words, the aim of µsynthesis is to ﬁnd a stabilising controller K , such that for each frequency ω ∈ [0, ∞] the structured singular value is to satisfy the condition µ∆P [FL (P, K )(jω )] < 1 Fulﬁlment of the above condition guarantees robust performance of the closedloop system, i.e., Wp (I + FU (Gmds , ∆)K )−1 Wu K (I + FU (Gmds , ∆)K )−1 <1
∞ ⎡ The µsynthesis is executed by the Mﬁle dkit from the Robust Control Toolbox, which automates the procedure by using DK iterations. To implement the function dkit it is necessary to prepare a ﬁle such as the following dk mds.m, in which the necessary variables are assigned. The ﬁle below can be easily modiﬁed for the µsynthesis of other systems. File dk mds.m % dk_mds % % This script file contains the USER DEFINED VARIABLES % for the mutools DKIT script file. The user MUST define % the 5 variables below. %% % REQUIRED USER DEFINED VARIABLES % %% % Nominal plant interconnection structure NOMINAL_DK = sys_ic; % Number of measurements NMEAS_DK = 1; % Number of control inputs NCONT_DK = 1; % Block structure for mu calculation 8.9 µSynthesis and DK Iterations 133 BLK_DK = [1 1;1 1;1 1;1 2]; % Frequency response range OMEGA_DK = logspace(2,4,100); AUTOINFO_DK = [1 4 1 4*ones(1,size(BLK_DK,1))]; NAME_DK = ’mds’; % end of dk_mds  % The variables, set in the above ﬁle, have the following meanings. A variable containing the nominal openloop NOMINAL DK system Number of measurements (number of inputs of NMEAS DK K) Number of control inputs (number of NCONT DK outputs of K ) Block structure for computation of µ BLK DK (involves the uncertainty blocks as well as the performance block) Frequency response range OMEGA DK Variable, which is used for full automation AUTINFO DK of the DKiteration. It has the following components: AUTOINFO DK(1) Initial iteration AUTOINFO DK(2) Final iteration AUTOINFO DK(3) Visualisation ﬂag (1  the results appear on the display, 2  the results are not displayed) The rest elements in AUTOINFO DK (their number is equal to the number of blocks in BLK DK) set the maximum dynamic order of the transfer functions during the Dscaling Suﬃx to the names of the saved variables NAME DK
After preparing the ﬁle dk mds, it is necessary to assign the name of the string variable DK DEF NAME, in the MATLAB r workspace, to DK MDS. Now the command dkit can be called, with which begins the DKiteration procedure. The whole design is completed by the ﬁle ms mds.m below. File ms mds.m DK_DEF_NAME = ’dk_mds’; dkit 134 8 Robust Control of a MassDamperSpring System K_mu = k_dk4mds; Note that the µcontroller named as Kµ is obtained after four iterations in this exercise. The results from the ﬁrst iteration are listed below, in which the numbers have been shortened for display. Iteration Number: 1 Resetting value of Gamma min based on D_11, D_12, D_21 terms Test bounds: gamma 100.000 50.475 25.713 13.331 7.141 4.045 2.498 3.097 hamx_eig 6.4e001 6.3e001 6.3e001 6.3e001 6.1e001 5.5e001 3.8e001 4.8e001 0.9500 < xinf_eig 2.2e001 2.2e001 2.2e001 2.2e001 2.2e001 2.3e001 2.4e001 2.3e001 gamma <= 100.0000 yinf_eig nrho_xy p/f 1.6e013 0.0002 p 0.0e+000 0.0010 p 2.1e014 0.0038 p 1.9e013 0.0143 p 0.0e+000 0.0522 p 7.3e018 0.1924 p 2.9e019 1.6946# f 0.0e+000 0.4322 p hamy_eig 1.3e003 1.3e003 1.3e003 1.3e003 1.3e003 1.3e003 1.3e003 1.3e003 Gamma value achieved: 3.0966 Calculating MU of closedloop system: points completed.... 1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17. 18.19.20.21.22.23.24.25.26.27.28.29.30.31.32.33.34.35. 36.37.38.39.40.41.42.43.44.45.46.47.48.49.50.51.52.53. 54.55.56.57.58.59.60.61.62.63.64.65.66.67.68.69.70.71. 72.73.74.75.76.77.78.79.80.81.82.83.84.85.86.87.88.89. 90.91.92.93.94.95.96.97.98.99.100. points completed.... 1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17. 18.19.20.21.22.23.24.25.26.27.28.29.30.31.32.33.34.35. 36.37.38.39.40.41.42.43.44.45.46.47.48.49.50.51.52.53. 54.55.56.57.58.59.60.61.62.63.64.65.66.67.68.69.70.71. 72.73.74.75.76.77.78.79.80.81.82.83.84.85.86.87.88.89. 90.91.92.93.94.95.96.97.98.99.100. Iteration Summary Iteration # 1 Controller Order 4 Total DScale Order 0 Gamma Acheived 3.097 8.9 µSynthesis and DK Iterations 135 Peak muValue 2.340 Auto Fit in Progress Block 1, MaxOrder=4, Block 2, MaxOrder=4, Block 3, MaxOrder=4, Block 4, MaxOrder=4, Order Order Order Order = = = = 01234 0123 012 0 The results obtained may be interpreted in the following way. First, the design of a fourthorder H∞ controller is ﬁnished (initially the openloop system is of fourth order), with the scaling matrix being set equal to the unit matrix. With this controller one achieves a value of γ equal to 3.097 and maximum value of µ equal to 2.34. Then, an approximation (curve ﬁtting) of the diagonal elements of the scaling matrix, obtained in the computation of µ, takes place. These elements are functions of the frequency and are approximated by stable minimum phase transfer functions whose orders do not exceed 4. It is seen from the results that the ﬁrst diagonal element is approximated by a fourthorder transfer function, the second one by a thirdorder transfer function, the third one by a secondorder transfer function, and the fourth one by a scalar. These transfer functions are “absorbed” into the transfer function P , which is to be used in the H∞ design at the second iteration. Altogether, the order of the “absorbed” transfer functions is 9 + 9 = 18. This increase of the openloop system order leads to the increase of the controller order at the second iteration to 22. The structured singular value µ of the closedloop system with the H∞ controller from the ﬁrst step and the H∞ norm of the scaled system are shown in Figure 8.28. The latter is an upper bound of the former. The second iteration gives: Iteration Number: 2 Resetting value of Gamma min based on D_11, D_12, D_21 terms Test bounds: gamma 2.387 1.669 1.309 1.433 1.358 1.333 hamx_eig 1.1e002 1.1e002 1.1e002 1.1e002 1.1e002 1.1e002 0.9500 < xinf_eig 2.6e008 2.6e008 2.6e008 2.6e008 2.6e008 2.6e008 gamma <= 2.3873 yinf_eig 1.2e017 1.1e014 1.7e017 1.4e017 2.9e020 1.9e020 nrho_xy 0.0671 0.1720 1.5886# 0.3344 0.5738 0.8201 p/f p p f p p p hamy_eig 1.3e003 1.3e003 1.3e003 1.3e003 1.3e003 1.3e003 Gamma value achieved: 1.3334 Calculating MU of closedloop system: 136 8 Robust Control of a MassDamperSpring System
Closed−loop MU: Controller 1
2.4 2.2 2 1.8 1.6 MU 1.4 1.2 1 0.8 0.6 0.4 −2 10 10 −1 10 0 10 Frequency (rad/s)
−1 1 10 2 10 3 10 4 MU bounds(solid) and D*M*D  (dashed): Iteration 2 2.4 2.2 2 1.8 1.6 1.4 1.2 1 0.8 0.6 0.4 −2 10 10 −1 10 0 10 Frequency (rad/s) 1 10 2 10 3 10 4 Fig. 8.28. µ values and D–scaling at ﬁrst iteration points completed.... 1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17. 18.19.20.21.22.23.24.25.26.27.28.29.30.31.32.33.34.35. 36.37.38.39.40.41.42.43.44.45.46.47.48.49.50.51.52.53. 54.55.56.57.58.59.60.61.62.63.64.65.66.67.68.69.70.71. 72.73.74.75.76.77.78.79.80.81.82.83.84.85.86.87.88.89. 90.91.92.93.94.95.96.97.98.99.100. points completed.... 1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17. 18.19.20.21.22.23.24.25.26.27.28.29.30.31.32.33.34.35. 36.37.38.39.40.41.42.43.44.45.46.47.48.49.50.51.52.53. 54.55.56.57.58.59.60.61.62.63.64.65.66.67.68.69.70.71. 72.73.74.75.76.77.78.79.80.81.82.83.84.85.86.87.88.89. 8.9 µSynthesis and DK Iterations 137 90.91.92.93.94.95.96.97.98.99.100. Iteration Summary Iteration # 1 2 Controller Order 4 22 Total DScale Order 0 18 Gamma Acheived 3.097 1.333 Peak muValue 2.340 1.274 Auto Fit in Progress Block 1, MaxOrder=4, Block 2, MaxOrder=4, Block 3, MaxOrder=4, Block 4, MaxOrder=4, Order Order Order Order = = = = 01234 0123 0123 0 After this iteration, the value of γ decreases to 1.333, and the value of µ reduces to 1.274. This is achieved, however, by a 22ndorder controller. The corresponding closedloop system obtained is of 26th order. The diagonal elements of the scaling matrix are approximated by transfer functions of orders 4, 3, 3 and 0, respectively, which increases the order of the openloop system by 20. Thus, the openloop system is now of 24th order. Note that the increase of the openloop system order is signiﬁcant for the controller order only at the next step and there is no “accumulation” of order in the absorbed transfer functions in the sense that at each iteration new scaling functions are generated and old ones are discarded. The µ values and the H∞ norm of DM D−1 at Iteration 2 are shown in Figure 8.29. Note the approximation error in the range from 1 rad/s to 1000 rad/s. The results after the third iteration are: Iteration Number: 3 Resetting value of Gamma min based on D_11, D_12, D_21 terms Test bounds: gamma 1.489 1.219 1.085 1.017 1.071 1.082 hamx_eig 1.1e002 1.1e002 1.1e002 1.1e002 1.1e002 1.1e002 0.9500 < xinf_eig 4.4e011 4.4e011 4.4e011 4.4e011 4.4e011 4.4e011 gamma hamy_eig 1.3e003 1.3e003 1.3e003 1.3e003 1.3e003 1.3e003 1.0847 <= 1.4889 yinf_eig 8.9e019 1.8e019 4.0e018 1.9e018 2.5e019 3.4e020 nrho_xy 0.2997 0.5799 0.9993 1.5626# 1.0760# 1.0138# p/f p p p f f f Gamma value achieved: 138 8 Robust Control of a MassDamperSpring System
Closed−loop MU: Controller 2
1.3 1.2 1.1 1 0.9 MU
0.8 0.7 0.6 0.5 0.4 −2 10 10 −1 10 0 10 Frequency (rad/s) 1 10 2 10 3 10 4 −1 MU bounds(solid) and D*M*D  (dashed): Iteration 3 1.8 1.6 1.4 1.2 1 0.8 0.6 0.4 −2 10 10 −1 10 0 10 Frequency (rad/s) 1 10 2 10 3 10 4 Fig. 8.29. µ and D–scaling at second iteration Calculating MU of closedloop system: points completed.... 1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17. 18.19.20.21.22.23.24.25.26.27.28.29.30.31.32.33.34.35. 36.37.38.39.40.41.42.43.44.45.46.47.48.49.50.51.52.53. 54.55.56.57.58.59.60.61.62.63.64.65.66.67.68.69.70.71. 72.73.74.75.76.77.78.79.80.81.82.83.84.85.86.87.88.89. 90.91.92.93.94.95.96.97.98.99.100. points completed.... 1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17. 18.19.20.21.22.23.24.25.26.27.28.29.30.31.32.33.34.35. 36.37.38.39.40.41.42.43.44.45.46.47.48.49.50.51.52.53. 8.9 µSynthesis and DK Iterations 139 54.55.56.57.58.59.60.61.62.63.64.65.66.67.68.69.70.71. 72.73.74.75.76.77.78.79.80.81.82.83.84.85.86.87.88.89. 90.91.92.93.94.95.96.97.98.99.100. Iteration Summary Iteration # 1 2 3 Controller Order 4 22 24 Total DScale Order 0 18 20 Gamma Acheived 3.097 1.333 1.085 Peak muValue 2.340 1.274 1.079 Auto Fit in Progress Block 1, MaxOrder=4, Block 2, MaxOrder=4, Block 3, MaxOrder=4, Block 4, MaxOrder=4, Order Order Order Order = = = = 0123 0123 012 0 The value of γ after this iteration is 1.085, and the maximum value of µ is 1.079. The elements of the scaling matrix are approximated by transfer functions of 3rd, 3rd, 2nd and 0th orders, respectively, so that the order of the openloop system for computation of a controller at the next iteration becomes 20. The µ values of M and the H∞ norm of DM D−1 at the third iteration are shown in Figure 8.30. After the fourth iteration we obtain: Iteration Number: 4 Resetting value of Gamma min based on D_11, D_12, D_21 terms Test bounds: gamma 1.115 1.033 0.991 0.971 hamx_eig 7.1e003 7.1e003 7.1e003 7.1e003 0.9500 < xinf_eig 1.3e009 1.4e009 1.4e009 1.4e009 gamma hamy_eig 1.3e003 1.3e003 1.3e003 1.3e003 <= 1.1153 yinf_eig 5.3e021 9.0e019 2.3e019 7.7e022 nrho_xy 0.3322 0.4737 0.6042 0.7069 p/f p p p p Gamma value achieved: 0.9707 Calculating MU of closedloop system: points completed.... 1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17. 18.19.20.21.22.23.24.25.26.27.28.29.30.31.32.33.34.35. 36.37.38.39.40.41.42.43.44.45.46.47.48.49.50.51.52.53. 54.55.56.57.58.59.60.61.62.63.64.65.66.67.68.69.70.71. 140 8 Robust Control of a MassDamperSpring System
Closed−loop MU: Controller 3 1.15 1.1 1.05 1 MU 0.95 0.9 0.85 0.8 0.75 −2 10 10 −1 10 0 10 Frequency (rad/s)
−1 1 10 2 10 3 10 4 MU bounds (solid) and D*M*D  (dashed): Iteration 4 1.15 1.1 1.05 1 0.95 0.9 0.85 0.8 0.75 −2 10 10 −1 10 0 10 Frequency (rad/s) 1 10 2 10 3 10 4 Fig. 8.30. µ and D–scaling at third iteration 72.73.74.75.76.77.78.79.80.81.82.83.84.85.86.87.88.89. 90.91.92.93.94.95.96.97.98.99.100. points completed.... 1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17. 18.19.20.21.22.23.24.25.26.27.28.29.30.31.32.33.34.35. 36.37.38.39.40.41.42.43.44.45.46.47.48.49.50.51.52.53. 54.55.56.57.58.59.60.61.62.63.64.65.66.67.68.69.70.71. 72.73.74.75.76.77.78.79.80.81.82.83.84.85.86.87.88.89. 90.91.92.93.94.95.96.97.98.99.100. Iteration Summary Iteration # 1 2 3 4 Controller Order 4 22 24 20 8.10 Robust Stability and Performance of Kmu 141 Total DScale Order Gamma Acheived Peak muValue 0 3.097 2.340 5 18 1.333 1.274 20 1.085 1.079 16 0.971 0.965 Next MU iteration number: It is seen that at this iteration the value of γ decreases to 0.971 and the value of µ becomes equal to 0.965, which means that robust performance has been achieved. The µ plot of the closedloop system with the newly obtained controller Kmu at Iteration 4 is shown in Figure 8.31. Closed−loop MU: Controller 4 0.955 0.95 0.945 0.94 MU 0.935 0.93 0.925 0.92 0.915 −2 10 10 −1 10 0 10 Frequency (rad/s) 1 10 2 10 3 10 4 Fig. 8.31. µ plot after fourth iteration 8.10 Robust Stability and Performance of Kmu
In Figure 8.32 we show the sensitivity function of the closedloop system with the 20thorder controller Kmu . It is clear that the sensitivity function is below the inverse of the performance weighting function, which shows that the nominal performance is achieved. The robust stability of the closedloop system with µcontroller is analysed by calling the ﬁle rob mds.m, with deﬁning in advance K = K_mu; The upper and lower bounds of µ are shown in Figure 8.33. It is seen that in this case the robust stability of the closedloop system is achieved since the maximum value of µ is equal to 0.468, i.e., the system stability is preserved 1 for ∆ ∞ < 0.468 . 142 8 Robust Control of a MassDamperSpring System
10
1 Closed−loop sensitivity function 10 0 10
Magnitude −1 10 −2 10 −3 Solid line: nominal sensitivity function Dashed line: inverse weighting function 10 −4 10 −4 10 −3 10 −2 10 Frequency (rad/s) −1 10 0 10 1 10 2 Fig. 8.32. Sensitivity function of Kmu The frequency responses of the nominal and robust performance criteria are obtained by the commands from the ﬁle nrp mds.m, also used in the analysis of the H∞ controller, and are shown in Figure 8.34. The maximum value of µ in the robust performance analysis is 0.96. This means that the closedloop system with µcontroller achieves robust performance since Wp (I + FU (Gmds , ∆)K )−1 Wu K (I + FU (Gmds , ∆)K )−1 < 0.96
∞ for every diagonal ∆ with ∆ ∞ < 1. To illustrate the robust properties of the system with the µcontroller, we show in Figure 8.35 the frequency response of the sensitivity functions of the perturbed closedloop systems, obtained by using the ﬁle psf mds.m below. File psf mds.m % % Sensitivity functions of perturbed systems % sim_mds clp = starp(sim_ic,K); 8.10 Robust Stability and Performance of Kmu
10
0 143 Robust stability 10 −1 10 µ −2 10 −3 Solid line: upper bound Dashed line: lower bound 10 −4 10 −1 10 0 10 1 10 2 Frequency (rad/s) Fig. 8.33. Robust stability of Kmu % % inverse performance weighting function wts_mds omega = logspace(4,2,100); Wp_g = frsp(Wp,omega); Wpi_g = minv(Wp_g); figure(1) vplot(’liv,lm’,Wpi_g,’m’) hold on [delta1,delta2,delta3] = ndgrid([1 0 1],[1 0 1], ... [1 0 1]); for j = 1:27 delta = diag([delta1(j),delta2(j),delta3(j)]); clp = starp(delta,starp(sim_ic,K)); sen_loop = sel(clp,1,2); clp_g = frsp(sen_loop,omega); figure(1) vplot(’liv,lm’,clp_g,’c’) hold on end title(’PERTURBED SENSITIVITY FUNCTIONS’) xlabel(’Frequency (rad/s)’) 144 8 Robust Control of a MassDamperSpring System
Nominal performance (solid) and robust performance (dashed)
1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 −1 10 10 0 10 1 10 2 Frequency (rad/s) Fig. 8.34. Nominal and robust performance of Kmu ylabel(’Magnitude’) hold off It is seen that the frequency responses of the perturbed sensitivity functions remain below the frequency response of the inverse of the performance weighting function. In Figure 8.36 we show the magnitude responses of Wp (I + FU (Gmds , ∆)K )−1 Wu K (I + FU (Gmds , ∆)K )−1 (the weighted, mixed sensitivity function) of the perturbed system, using the following ﬁle ppf mds.m. It is clear from Figure 8.36 that for all perturbed systems, the magnitudes over the frequency range are below the criterion for the closedloop system robust performance. File ppf mds.m % % Performance of the perturbed closedloop systems % % perturbed peformance 8.10 Robust Stability and Performance of Kmu
10
1 145 Perturbed sensitivity functions 10 0 10
Magnitude −1 10 −2 10 −3 Solid line: perturbed sensitivity functions Dashed line: inverse weighting function 10 −4 10 −4 10 −3 10 −2 10 Frequency (rad/s) −1 10 0 10 1 10 2 Fig. 8.35. Sensitivity functions of perturbed systems with Kmu omega = logspace(2,2,100); [delta1,delta2,delta3] = ndgrid([1 0 1],[1 0 1], ... [1 0 1]); for j = 1:27 delta = diag([delta1(j),delta2(j),delta3(j)]); clp = starp(delta,starp(sys_ic,K)); clp_g = frsp(clp,omega); figure(1) vplot(’liv,lm’,vsvd(sel(clp_g,1:2,1)),’c’) hold on end % % robust performance clp_ic = starp(sys_ic,K); clp_g = frsp(clp_ic,omega); % real perturbations blkrsR = [1 1;1 1;1 1]; rob_perf = clp_g; blkrp = [blkrsR;[1 2]]; bndsrp = mu(rob_perf,blkrp); figure(1) 146 8 Robust Control of a MassDamperSpring System
Perturbed performance (solid) and robust performance (dashed) 10 −0.1 10 −0.2 10 −0.3 10 −0.4 10 −0.5 10 −0.6 10 −0.7 10 −0.8 10 −0.9 10 −2 10 −1 10 Frequency (rad/s) 0 10 1 10 2 Fig. 8.36. Performance of perturbed systems with Kmu vplot(’liv,lm’,sel(bndsrp,1,1),’y’,sel(bndsrp,1,2),’m’) tmp1 = ’PERTURBED PERFORMANCE (solid) and’; tmp2 = ’ ROBUST PERFORMANCE(dashed)’; title([tmp1 tmp2]) xlabel(’Frequency (rad/s)’) hold off In Figure 8.37 we show the frequency responses of the perturbed closedloop systems. These responses are obtained by the commands included in the ﬁle pcf mds.m. File pcf mds.m % % Frequency responses of the perturbed closedloop % systems % sim_mds omega = logspace(1,2,100); [delta1,delta2,delta3] = ndgrid([1 0 1],[1 0 1], ... [1 0 1]); 8.10 Robust Stability and Performance of Kmu
2 147 Bode plots of perturbed closed−loop systems 10 Magnitude (Log) 10 0 10 −2 10 −4 10 −1 10 0 10 1 10 2 Frequency (rad/s)
0 −50 −100 Phase (deg) −150 −200 −250 −300 −1 10 10 0 10 1 10 2 Frequency (rad/s) Fig. 8.37. Frequency responses of perturbed systems with Kmu for j = 1:27 delta = diag([delta1(j),delta2(j),delta3(j)]); clp = starp(delta,starp(sim_ic,K)); clp_g = frsp(clp,omega); figure(1) vplot(’bode’,sel(clp_g,1,1),’c’) subplot(2,1,1) hold on subplot(2,1,2) hold on end subplot(2,1,1) clp = starp(sim_ic,K); clp_g = frsp(clp,omega); vplot(’bode’,sel(clp_g,4,4),’r’) subplot(2,1,1) title(’BODE PLOTS OF PERTURBED CLOSEDLOOP SYSTEMS’) hold off 148 8 Robust Control of a MassDamperSpring System subplot(2,1,2) hold off We see from Figure 8.37 that the frequency responses of the closedloop, perturbed systems maintain their magnitude over a wider frequency band, in comparison to that of the openloop system (Figure 8.7). Hence, faster responses would be expected with the designed closedloop system. In Figures 8.38 and 8.39 we show the transient responses of the system with µcontroller. Comparing with the responses in the case of the LSDP controller (Figures 8.25 and 8.26), we see that the µcontroller ensures smaller overshoot (10%) while maintaining the similar settling time.
Closed−loop transient response
1.2 1 0.8 0.6 y (m)
0.4 0.2 0 −0.2 0 10 20 30 Time (s) 40 50 60 Fig. 8.38. Transient response to reference input (Kmu ) In Figure 8.40 we show the transient responses (to the reference input) of a family of perturbed closedloop systems with µcontroller. In all cases the overshoot does not exceed 20% that demonstrates satisfactory performance in the presence of parametric perturbations, i.e., the closedloop system achieves robust performance. 8.10 Robust Stability and Performance of Kmu
Transient response to the disturbance
1 149 0.8 0.6 0.4 0.2 y (m) 0 −0.2 −0.4 −0.6 −0.8 −1 0 10 20 30 Time (s) 40 50 60 Fig. 8.39. Transient response to disturbance input (Kmu ) Transient responses of perturbed systems
1.2 1 0.8 0.6 y (m)
0.4 0.2 0 −0.2 0 10 20 30 Time (s) 40 50 60 Fig. 8.40. Transient responses of perturbed systems (Kmu ) 150 8 Robust Control of a MassDamperSpring System 8.11 Comparison of H∞ , H∞ LSDP and µcontrollers
The comparison of the designed systems with H∞ , H∞ loopshaping and µcontrollers begins with the frequency responses of these three controllers. These responses are produced by using the ﬁle kf mds.m below and are shown in Figure 8.41. File kf mds.m omega = logspace(2,3,100); % % H_infinity controller K_hing = frsp(K_hin,omega); % % Loop Shaping controller K_lshg = frsp(K_lsh,omega); % % mucontroller K_mug = frsp(K_mu,omega); % figure(1) vplot(’bode’,K_hing,’r’,K_lshg,’m’,K_mug,’c.’) subplot(2,1,1) title(’BODE PLOTS OF ALL CONTROLLERS’) subplot(2,1,2) It can be seen from Figure 8.41 that the H∞ loopshaping controller and µcontroller are characterised by larger gains compared with the H∞ controller, in the frequency range above 5 rad/s. All the phase responses are close to each other up to about 3 rad/s and after that frequency the H∞ controller continues to introduce a larger phase delay. The comparison of frequency responses of the nominal closedloop systems is conducted by the commands included in the ﬁle clf mds.m, and the results are shown in Figure 8.42. File clf mds.m sim_mds omega = logspace(2,2,100); % % H_infinity controller clp_hin = starp(sim_ic,K_hin); ref_hin = sel(clp_hin,4,4); ref_hing = frsp(ref_hin,omega); 8.11 Comparison of H∞ , H∞ LSDP and µcontrollers
4 151 Bode plots of all controllers 10 Magnitude (Log) 10 2 10 0 Solid line: H controller
∞ 10 −2 Dashed line: loop−shaping controller Dash−dotted line: µ−controller 10 −4 10 −2 10 −1 10 Frequency (rad/s) 0 10 1 10 2 10 3 100 0 Phase (deg) −100 −200 −300 −2 10 10 −1 10 Frequency (rad/s) 0 10 1 10 2 10 3 Fig. 8.41. Frequency responses of controllers % % Loop Shaping controller clp_lsh = starp(sim_ic,K_lsh); ref_lsh = sel(clp_lsh,4,4); ref_lshg = frsp(ref_lsh,omega); % % mucontroller clp_mu = starp(sim_ic,K_mu); ref_mu = sel(clp_mu,4,4); ref_mug = frsp(ref_mu,omega); figure(1) vplot(’bode’,ref_hing,’r’,ref_lshg,’m’,ref_mug,’c.’) subplot(2,1,1) title(’BODE PLOTS OF CLOSEDLOOP SYSTEMS’) subplot(2,1,2) Figure 8.42 shows that the systems with the H∞ loopshaping and µcontrollers are characterised by larger bandwidth that leads to faster dynamics of the corresponding closedloop systems. 152
2 8 Robust Control of a MassDamperSpring System
Bode plots of closed−loop systems 10 Magnitude (Log) 10 0 10 −2 Solid line: H controller ∞ Dashed line: loop−shaping controller Dash−dotted line: µ−controller 10 −4 10 −6 10 −2 10 −1 10 Frequency (rad/s) 0 10 1 10 2 0 −100 Phase (deg) −200 −300 −400 −2 10 10 −1 10 Frequency (rad/s) 0 10 1 10 2 Fig. 8.42. Frequency responses of closedloop systems The comparison of the robust stability is conducted by the ﬁle rbs mds.m. File rbs mds.m omega = logspace(1,2,100); % Real perturbations blkrs_R = [1 1;1 1;1 1]; blkrs = [blkrsR; abs(blkrsR)]; pdim = 3; % % Hinf controller clp_h = starp(sys_ic,K_hin); clp_hg = frsp(clp_h,omega); rob_stab = sel(clp_hg,[1:3],[1:3]); fixl = [eye(pdim); 0.1*eye(pdim)]; % 1% Complex fixr = fixl’; clp_mix = mmult(fixl,rob_stab,fixr); 8.11 Comparison of H∞ , H∞ LSDP and µcontrollers 153 rbnds_h = mu(clp_mix,blkrs); % % Loop Shaping controller clp_lsh = starp(sys_ic,K_lsh); clp_lshg = frsp(clp_lsh,omega); rob_stab = sel(clp_lshg,[1:3],[1:3]); fixl = [eye(pdim); 0.1*eye(pdim)]; % 1% Complex fixr = fixl’; clp_mix = mmult(fixl,rob_stab,fixr); rbnds_lsh = mu(clp_mix,blkrs); % % mucontroller clp_mu = starp(sys_ic,K_mu); clp_mug = frsp(clp_mu,omega); rob_stab = sel(clp_mug,[1:3],[1:3]); fixl = [eye(pdim); 0.1*eye(pdim)]; % 1% Complex fixr = fixl’; clp_mix = mmult(fixl,rob_stab,fixr); rbnds_mu = mu(clp_mix,blkrs); % figure(1) vplot(’liv,lm’,sel(rbnds_h,1,1),’r’, ... sel(rbnds_lsh,1,1),’m’, ... sel(rbnds_mu,1,1),’c.’) title(’ROBUST STABILITY FOR ALL CONTROLLERS’) xlabel(’Frequency (rad/s)’) ylabel(’Upper bound of \mu’) The frequency responses of µ for three controllers are shown in Figure 8.43. The system with the H loopshaping controller is characterized with best robust stability since in this case the destabilising perturbations have the largest norm (note that the norm of these perturbations is inversely proportional to the maximum value of µ). The nominal performance of the closedloop systems is obtained by the ﬁle prf mds.m. The frequency responses of the weighted sensitivity functions of the nominal systems are shown in Figure 8.44. Again, the systems with the H∞ loopshaping and µcontrollers achieve better performance. File prf mds.m omega = logspace(2,2,100); % % H_infinity controller clp_hin = starp(sys_ic,K_hin); 154 8 Robust Control of a MassDamperSpring System
10
0 Robust stability for all controllers 10 −1 Upper bound of µ 10 −2 Solid line: H controller ∞ Dashed line: loop−shaping controller Dash−dotted line: µ−controller 10 −3 10 −4 10 −1 10 0 10 1 10 2 Frequency (rad/s) Fig. 8.43. Comparison of robust stability for 3 controllers prf_hin = sel(clp_hin,4,4); prf_hing = frsp(prf_hin,omega); % % Loop Shaping controller clp_lsh = starp(sys_ic,K_lsh); prf_lsh = sel(clp_lsh,4,4); prf_lshg = frsp(prf_lsh,omega); % % mucontroller clp_mu = starp(sys_ic,K_mu); prf_mu = sel(clp_mu,4,4); prf_mug = frsp(prf_mu,omega); figure(1) vplot(’liv,m’,vnorm(prf_hing),’r’,vnorm(prf_lshg), ... ’m’,vnorm(prf_mug),’c.’) title(’NOMINAL PERFORMANCE: ALL CONTROLLERS’) xlabel(’Frequency (rad/sec)’) The comparison of the robust performance is obtained by the ﬁle rbp mds.m. 8.11 Comparison of H∞ , H∞ LSDP and µcontrollers
Nominal performance: all controllers 155 1 0.9 Solid line: H controller ∞ Dashed line: loop−shaping controller 0.8 Dash−dotted line: µ−controller 0.7 0.6 0.5 0.4 0.3 0.2 0.1 −2 10 10 −1 10 Frequency (rad/s) 0 10 1 10 2 Fig. 8.44. Comparison of nominal performance for 3 controllers File rbp mds.m blkrsR = [1 1;1 1;1 1]; blkrp = [blkrsR;[1 2]]; omega = logspace(2,2,100); % % H_infinity controller clp_hin = starp(sys_ic,K_hin); rbp_hin = frsp(clp_hin,omega); bnd_hin = mu(rbp_hin,blkrp); % % Loop Shaping controller clp_lsh = starp(sys_ic,K_lsh); rbp_lsh = frsp(clp_lsh,omega); bnd_lsh = mu(rbp_lsh,blkrp); % % mucontroller clp_mu = starp(sys_ic,K_mu); rbp_mu = frsp(clp_mu,omega); bnd_mu = mu(rbp_mu,blkrp); figure(1) 156 8 Robust Control of a MassDamperSpring System vplot(’liv,m’,bnd_hin,’r’,bnd_lsh,’m’,bnd_mu,’c.’) title(’ROBUST PERFORMANCE: ALL CONTROLLERS’) xlabel(’Frequency (rad/sec)’) ylabel(’\mu’) text(2.D+0,1.7D+0,’H_\infty controller’) text(2.D+0,1.6D+0,’ Loop shaping controller’) text(2.D+0,1.5D+0,’. \mucontroller’) The µ values over the frequency range for all three designed systems are plotted in Figure 8.45. This conﬁrms again that the system with the H∞ controller does not achieve the robust performance criterion.
Robust performance: all controllers
1.8 1.6 Solid line: H controller ∞ Dashed line: loop−shaping controller 1.4 Dash−dotted line: µ−controller 1.2 1 µ 0.8 0.6 0.4 0.2 −2 10 10 −1 10 Frequency (rad/s) 0 10 1 10 2 Fig. 8.45. Comparison of robust performance for 3 controllers In summary, all three controllers ensure robust stability of the closedloop system with respect to the parametric perturbations that are included in the 3 × 3 diagonal uncertainty matrix. However, the closedloop system performance varies in a diﬀerent way under the action of these diagonal perturbations. In the following ﬁle, pdc mds.m, we use the function wcperf, which allows us to ﬁnd the worstcase perturbation with respect to the performance, and to compare the performance of the three systems when the norm of perturbations increases. (The execution of this ﬁle may be accompanied by some warnings.) 8.11 Comparison of H∞ , H∞ LSDP and µcontrollers 157 File pdc mds.m omega = logspace(2,3,100); % Real perturbations blks = [1 1;1 1;1 1]; % % H_infinity controller clp_hin = starp(sys_ic,K_hin); clp_hing = frsp(clp_hin,omega); % % Loop Shaping controller clp_lsh = starp(sys_ic,K_lsh); clp_lshg = frsp(clp_lsh,omega); % % mucontroller clp_mu = starp(sys_ic,K_mu); clp_mug = frsp(clp_mu,omega); % alpha = 0.1; npts = 10; [deltabadh,lowbndh,uppbndh] = wcperf(clp_hing,blks, ... alpha,npts); [deltabadlsh,lowbndlsh,uppbndlsh] = wcperf(clp_lshg, ... blks,alpha,npts); [deltabadmu,lowbndmu,uppbndmu] = wcperf(clp_mug,blks, ... alpha,npts); figure(1) vplot(lowbndh,’r’,uppbndh,’r’,lowbndlsh,’m’, ... uppbndlsh,’m’,lowbndmu,’c.’,uppbndmu,’c.’) axis([0 1.8 0 2.0]) title(’PERFORMANCE DEGRADATION CURVES FOR ALL CONTROLLERS’) xlabel(’Size of Uncertainty’) text(1.0,0.6,’H_\infty controller’) text(1.0,0.4,’ Loop shaping controller’) text(1.0,0.2,’. \mucontroller’) The results in Figure 8.46 show that the H∞ loopshaping controller and the µcontroller ensure robust performance for larger perturbations, with the former slightly outperforming the latter. The closedloop performance deteriorates most rapidly with increasing perturbation magnitude in the case of the H∞ controller. The comparison results indicate that in the present exercise the H∞ loopshaping controller might be the best one to choose in terms of system robustness, though the µcontroller is not that far behind. It is important to stress that in the above comparison the µcontroller is a reducedorder one of order 4. The order of the original µcontroller is actually 158 8 Robust Control of a MassDamperSpring System
Performance degradation curves for all controllers 2 1.8 1.6 1.4 1.2 1 0.8
Solid lines: H controller
∞ 0.6 0.4 Dashed lines: loop−shaping controller 0.2 Dash−dotted lines: µ−controller 0 0 0.2 0.4 0.6 1 0.8 Size of Uncertainty 1.2 1.4 1.6 1.8 Fig. 8.46. Performance degradation for 3 controllers 20. However, the use of such a reducedorder µcontroller will be justiﬁed in the next section, which shows that the reducedorder controller does not seriously deteriorate the closedloop system performance. It is also important to point out that for diﬀerent design cases these three design approaches may well produce diﬀerent results. That is, even the use of the H∞ controller may lead to acceptable results in terms of performance and controller complexity. However, in general, in the case of structured uncertainty, the µsynthesis will always produce more satisfactory and less conservative controllers. 8.12 Order Reduction of µcontroller
As shown in Section 8.9, the order of the µcontroller Kmu is 20, which makes it diﬃcult in implementation. A reducedorder controller would be usually preferred. Various methods may be used to reduce the order, as discussed in Chapter 7. In this case study, the Hankelnorm approximation is used and implemented in the ﬁle red mds.m. Two important commands in the ﬁle are sysbal and hankmr. The command sysbal generates the balanced realisation of a system (input argument) of the type SYSTEM. This command removes the unobservable and/or uncontrollable modes, if the system is not minimal. The command sysbal also returns the Hankel singular values of the system that 8.12 Order Reduction of µcontroller 159 can be used to choose the order to be reduced. To use the ﬁle red mds.m, ﬁrst deﬁne K = K_mu; File red mds.m omega = logspace(2,4,100); K_g = frsp(K,omega); [Kb,hsig] = sysbal(K); Kred = hankmr(Kb,hsig,4,’d’); Kred_g = frsp(Kred,omega); vplot(’bode’,K_g,’y’,Kred_g,’m’) subplot(2,1,1) title(’BODE PLOTS OF FULL AND REDUCED ORDER CONTROLLERS’) subplot(2,1,2) K = Kred; In the present case the balanced realization Kb turns out to be of 20th order as well, which means that the statespace model of the µcontroller is already minimal. The Hankel singular values are
hsig = 1.0e+003 * 1.28877293261018 0.01757808424290 0.01413607705650 0.00185159191695 0.00043945590100 0.00027713314731 0.00013630163054 0.00006894336934 0.00002465391647 0.00000787583669 0.00000779094168 0.00000247258791 0.00000053897770 0.00000023805949 0.00000016178585 0.00000008448505 0.00000001681482 0.00000000066695 0.00000000021363 0.00000000000201 160 8 Robust Control of a MassDamperSpring System Some of these values are very small, which suggests that the controller order can be greatly reduced. In this exercise this order is set equal to 4 in the command hankmr and the test with this reducedorder controller shows that the closedloop system obtained is stable. Actually, a 3rdorder controller has been tried as well, but noticeable diﬀerences exist in the frequency responses in the range of 10−1 − 101 rad/s. The system matrices of this 4th order controller are
[Ak,Bk,Ck,Dk] = unpck(K) Ak = 5.94029444678383 12.71890180361086 11.09659323806946 15.39552256762868 29.53184484831400 16.41287136235254 0 0 6.84730630402175 0 0 0 0.04081607183541 0.00507186515891 0.03584524485830 0.00125108980521 Bk = 15.96860717359783 7.91326562204500 13.97349755769254 1.79576743717989 Ck = 12.96086158489860 14.24741790999237 9.28057043520263 1.79885756979541 Dk = 0.54044998732827 In Figure 8.47 we display the frequency responses of the fullorder and reducedorder controllers. The responses plots practically coincide with each other, for frequencies up to 100 rad/s (up to about 1000 rad/s in magnitude) that ensures almost the same closedloop performance for both controllers. In particular, the transient responses of the closedloop systems with fullorder and reducedorder controllers are practically indistinguishable (compare Figure 8.48 with Figure 8.38). Clearly, the 4thorder controller is implemented much easier compared to the 20thorder controller. 8.12 Order Reduction of µcontroller
4 161 Bode plots of full− and reduced−order contollers 10 Solid line: full−order controller Magnitude (Log)
10
2 Dashed line: reduced−order controller 10 0 10 −2 10 −2 10 −1 10 0 10 Frequency (rad/s) 1 10 2 10 3 10 4 50 0 Phase (deg) −50 −100 −2 10 10 −1 10 0 10 Frequency (rad/s) 1 10 2 10 3 10 4 Fig. 8.47. Frequency responses of full and reducedorder controllers Closed−loop transient response
1.2 1 0.8 0.6 y (m)
0.4 0.2 0 −0.2 0 10 20 30 Time (s) 40 50 60 Fig. 8.48. Transient response for reducedorder controller 162 8 Robust Control of a MassDamperSpring System 8.13 Conclusions
The design exercise of the massdamperspring system leads to the following conclusions. • Even for a loworder plant such as the massdamperspring system the derivation of the uncertainty model may not be straightforward. For a system with parametric perturbations, it has to form a standard conﬁguration in order to use the analysis and design commands from the Robust Control Toolbox. In this procedure, it may be convenient to consider separately the uncertain parameters, describe these perturbation inﬂuences by simple LFTs and construct the whole uncertainty model of the plant by using the function sysic. • Finding appropriate weighting functions is a crucial step in robust control designs. It usually involves trial and error. Design experience and knowledge of the plants will help in choosing weighting functions. • Best design results for this particular system are obtained by using the H∞ loopshaping design procedure and µsynthesis. With nearly identical robustness properties, the µcontroller gives better transient responses with smaller overshoot than the H∞ LSDP controller. • Even for a secondorder plant like this, the order of the µcontroller may be very high (20 in the given design). This makes it necessary to apply model reductions. Usually, the order may be reduced signiﬁcantly without serious performance degradation. Notes and References
The derivation of the uncertainty model of massdamperspring system is shown in [175, Chapter 10]. A model, obtained by using the function sysic and implemented by the ﬁle sys mds.m, is presented in [9, Chapter 4]. 9 A Triple Inverted Pendulum Controlsystem Design Robust design of a triple inverted pendulum control system is discussed in this chapter. The triple inverted pendulum is an interesting control system that resembles many features found in, for instance, walking robots and ﬂexible space structures, and other industrial applications. This kind of pendulum system is diﬃcult to control due to the inherent instability and nonlinear behaviour. Some of the pendulum parameters may not be known exactly in practice, which inﬂuences signiﬁcantly the system dynamics. In the design of a robust control system for triple inverted pendulums it is conventionally assumed that the system is aﬀected by unstructured uncertainties and thus the robust properties of the closedloop system could be achieved by using an H∞ controller. In real cases, however, the uncertainties of such a pendulum system would be more reasonably considered to have some structures. For instance, because the moments of inertia and the friction coeﬃcients are diﬃcult to estimate precisely, it makes sense to assume unknown deviations in those parameters. Also, we would like to design the closedloop control system to be more “robust”against those parameters that have a “larger”or more serious inﬂuence upon the system behaviour. For instance, the viscous friction in the joints may destroy the controllability of the linearised model. Hence, it would be important to treat uncertainties in such parameters individually rather than congregate them in an overall, unstructured uncertainty of the system dynamics. Consequently, it may be more suitable to apply the µsynthesis technique that may lead to a lessconservative design to meet tighter design speciﬁcations. In the pendulum controlsystem design we ﬁrst model the uncertainties as a mixed type that consists of complex uncertainties in the actuators, real uncertainties in the moments of inertia and in the viscous friction coeﬃcients. A twodegreeoffreedom (2DOF) design framework is adopted. Both H∞ suboptimal and µcontrollers are designed. The H∞ controller shows better transient and disturbance responses but does not ensure robust stability nor robust performance. The µcontroller achieves both robust stability and robust per 164 9 A Triple Inverted Pendulum Controlsystem Design formance, however, at the price of poorer time responses. The µcontroller designed is initially of quite high order, which makes it unsuitable for implementation in practice. A model reduction is then conducted that leads to a reducedorder controller maintaining the required robust stability and robust performance of the closedloop system. 9.1 System Description
The triple inverted pendulum considered is the experimental setup realized by Furuta et al. [41] (Figure 9.1). The pendulum consists of three arms that are hinged by ball bearings and can rotate in the vertical plane. The torques of the two upper hinges are controlled by motors, with the lowest hinge made free for rotation. By controlling the angles of the two upper arms around speciﬁed values, the pendulum can be stabilised inversely with the desired angle attitudes. A horizontal bar is ﬁxed to each of the arms to ease the control by increasing the moment of inertia. Two dc motors, M1 and M2 , are mounted on the ﬁrst and third arm, respectively, acting as actuators that provide torques to the two upper hinges through timing belts. The potentiometers P1 , P2 and P3 are ﬁxed to the hinges to measure the corresponding angles. III M2 P3 II P2 M1
I P1 Fig. 9.1. Triple inverted pendulum 9.1 System Description 165 Let Θi denote the angle of the ith arm. The ﬁrst potentiometer measures the angle Θ1 , and the second and third potentiometers measure the angles Θ2 − Θ1 and Θ3 − Θ2 , respectively (Figure 9.2). l3 h3 Θ3
l2 I3, M3 C3
h2 Θ2 I2, M2 C2 l1 Θ1 I1, M1 h1 C1 Fig. 9.2. Geometric relationship of potentiometers The mathematical description of the triple inverted pendulum is derived under the following assumptions: (a) each arm is a rigid body; (b) the lengths of the belts remain constant during the operation of the system; (c) the friction force in the bottom hinge is proportional to the velocity of the bottom arm and the friction forces in the upper hinges are proportional to the diﬀerences of the respective velocities of two neighbouring arms. We shall ﬁrst consider the mathematical model of the pendulum itself, without the actuators. The pendulum model is constructed using the Lagrange diﬀerential equations [41] that yield the following nonlinear vectormatrix differential equation ⎤ ⎡ ⎤⎡⎤ ⎡⎤ ⎡ ˙ ¨ Θ1 Θ1 q1 τ1 tm1 ¨ ˙ (9.1) = T ⎣ τ2 ⎦ M (Θ) ⎣ Θ2 ⎦ + N ⎣ Θ2 ⎦ + ⎣ q2 ⎦ + G tm2 ¨ ˙ q3 τ3 Θ3 Θ3 166 9 A Triple Inverted Pendulum Controlsystem Design ⎤ Θ1 where, Θ = ⎣ Θ2 ⎦ Θ3 ⎤ l1 M2 cos(Θ1 − Θ2 ) − Ip1 l1 M3 cos(Θ1 − Θ3 ) J1 + Ip1 ⎣ l1 M2 cos(Θ1 − Θ2 ) − Ip1 J2 + Ip1 + Ip2 l2 M3 cos(Θ2 − Θ3 ) − Ip2 ⎦ l1 M3 cos(Θ1 − Θ3 ) l2 M3 cos(Θ2 − Θ3 ) − Ip2 J3 + Ip2 ⎤ ⎡ −C2 − Cp1 0 C1 + C2 + Cp1 N = ⎣ −C2 − Cp1 Cp1 + Cp2 + C2 + C3 −C3 − Cp2 ⎦ 0 −C3 − Cp2 C3 + Cp2 ⎡ ˙2 ˙2 q1 = l1 M2 sin(Θ1 − Θ2 )Θ2 + l1 M3 sin(Θ1 − Θ3 )Θ3 − M1 g sin(Θ1 ) ˙2 ˙2 q2 = l1 M2 sin(Θ1 − Θ2 )Θ1 + l2 M3 sin(Θ2 − Θ3 )Θ3 − M2 g sin(Θ2 ) ˙2 ˙˙ ˙2 ˙˙ q3 = l1 M3 sin(Θ1 − Θ3 )(Θ1 − 2Θ1 Θ3 ) + l2 M3 sin(Θ2 − Θ3 )(Θ2 − 2Θ2 Θ3 ) −M3 g sin(Θ3 ), ⎤ ⎡ ⎤ 1 −1 0 0 K1 G = ⎣ −K1 K2 ⎦ , T = ⎣ 0 1 −1 ⎦ 001 0 −K2 ⎡
2 2 Cpi = Cp + Ki Cmi , Ipi = Ip + Ki Imi ,
i i ⎡ M (Θ) = M1 = m1 h1 + m2 l1 + m3 l1 , M2 = m2 h2 + m3 l2 , M3 = m3 h3
2 2 2 J1 = I1 + m1 h2 + m2 l1 + m3 l1 , J2 = I2 + m2 h2 + m3 l2 1 2 J3 = I3 + m3 h2 3 and all other parameters and variables are deﬁned in Table 9.1. After linearisation of (9.1) under the assumptions of small deviations of the pendulum from the vertical position and of small velocities, one obtains the following equation ⎡ ⎡ ⎤ ⎤ ⎤ ⎡⎤ ⎡ ˙ ¨ Θ1 Θ1 Θ1 τ1 t m1 ¨ ˙ (9.2) = T ⎣ τ2 ⎦ M ⎣ Θ2 ⎦ + N ⎣ Θ2 ⎦ + P ⎣ Θ2 ⎦ + G t m2 ¨ ˙ Θ3 τ3 Θ3 Θ3 where ⎤ l1 M2 − Ip1 l 1 M3 J1 + Ip1 M = ⎣ l1 M2 − Ip1 J2 + Ip1 + Ip2 l2 M3 − Ip2 ⎦ l1 M3 l2 M3 − Ip2 J3 + Ip2 ⎡ ⎤ M1 g 0 0 P = ⎣ 0 −M2 g 0 ⎦ 0 0 −M3 g ⎡ By introducing the control torques vector tm = [tm1 tm2 ]T and the vector of disturbance torques d = [τ1 , τ2 , τ3 ]T , (9.2) can be rewritten in the form 9.2 Modelling of Uncertainties Table 9.1. System nomenclature 167 Symbol uj tmj τi li hi mi Ii Ci Θi Cmi Imi Ki Cp
i Ip i αi g Description input voltage to the j th motor control torque of the j th motor disturbance torque to the ith arm length of the ith arm the distance from the bottom to the centre of gravity of the ith arm mass of the ith arm moment of inertia of the ith arm around the centre of gravity coeﬃcient of viscous friction of the ith hinge angle of the ith arm from vertical line viscous friction coeﬃcient of the ith motor moment of inertia of the ith motor ratio of teeth of beltpulley system of the ith hinge viscous friction coeﬃcient of the beltpulley system of the ith hinge moment of inertia of the beltpulley system of the ith hinge gain of the ith potentiometer acceleration of gravity ¨ ˙ M Θ + N Θ + P Θ + Gtm = T d i.e., ¨ ˙ Θ = −M −1 N Θ − M −1 P Θ − M −1 Gtm + M −1 T d. The blockdiagram of the pendulum system is shown in Figure 9.3 and the nominal values of the parameters are given in Table 9.2. 9.2 Modelling of Uncertainties
Based on practical considerations, we in particular consider the variations of the moments of inertia I1 , I2 and I3 of the three arms and the variations of the viscous friction coeﬃcients C1 , C2 , C3 and Cp1 , Cp2 . It is assumed that the moments of inertia are constants but with possible relative error of 10% around the nominal values; similarly, the friction coeﬃcients may have with 15% relative errors. Notice that in the rest of the chapter, a parameter with a bar above denotes its nominal value. Therefore, the actual moments of inertia are presented as Ii = I i (1 + pi δIi ), i = 1, 2, 3 168 9 A Triple Inverted Pendulum Controlsystem Design d T tm G − +
−−
Σ M 1 .. Θ . Θ Θ N P
Fig. 9.3. Block diagram of the triple inverted pendulum system Table 9.2. Nominal values of the parameters Symbol (unit) l1 (m) l2 (m) h1 (m) h2 (m) h3 (m) m1 (kg) m2 (kg) m3 (kg) I1 (kg m2 ) I2 (kg m2 ) I3 (kg m2 ) C1 (N m s) C2 (N m s) C3 (N m s) value 0.5 0.4 0.35 0.181 0.245 3.25 1.90 2.23 0.654 0.117 0.535 6.54 × 10−2 2.32 × 10−2 8.80 × 10−3 Symbol (unit) α1 (V/rad) α2 (V/rad) α3 (V/rad) Cm1 (N m s) Cm2 (N m s) Im1 (kg m2 ) Im2 (kg m2 ) Cp (N m s) 1 Cp (N m s) 2 Ip (kg m2 ) 1 Ip (kg m2 ) 2 K1 K2 value 1.146 1.146 0.9964 2.19 × 10−3 7.17 × 10−4 2.40 × 10−5 4.90 × 10−6 0 0 7.95 × 10−3 3.97 × 10−3 30.72 27.00 where I i is the nominal value of the corresponding moment of inertia, pi = 0.10 is the maximum relative uncertainty in each of these moments and −1 ≤ δIi ≤ 1, i = 1, 2, 3. As a result, the matrix M is obtained in the form
M = M + Mp ∆I where the elements of M are determined by the nominal values of the moments of inertia, 9.2 Modelling of Uncertainties 169 l1 M 3 l 1 M 2 − I p1 J 1 + I p1 M = ⎣ l1 M 2 − I p1 J 2 + I p1 + I p2 l2 M 3 − I p2 ⎦ J 3 + I p2 l 2 M 3 − I p2 l1 M 3
and ⎡ ⎤ ⎤ I 1 p1 0 0 δ I1 0 0 Mp = ⎣ 0 I 2 p2 0 ⎦ , ∆I = ⎣ 0 δI2 0 ⎦ 0 0 δ I3 0 0 I 3 p3 ⎡ ⎡ ⎤ Next we calculate the matrix M −1 . We have that
− − M −1 = (Mp 1 M + ∆I )−1 Mp 1 Using the Matrix Inversion Lemma, we obtain
− (Mp 1 M + ∆I )−1 = M −1 Mp − M −1 Mp ∆I (M −1 Mp ∆I + I3 )−1 M −1 Mp where I3 is the 3 × 3 unit matrix. Therefore, we have M −1 = M
−1 −M −1 Mp ∆I (I3 + M −1 Mp ∆I )−1 M −1 The matrix M −1 can be represented as an upper linear fractional transformation (LFT) M −1 = FU (QI , ∆I ) = QI22 + QI21 ∆I (I3 − QI11 ∆I )−1 QI12 where QI11 = −M QI21 = −M such that QI = QI11 QI12 QI21 QI22 =
−1 −1 Mp , QI12 = M Mp , QI22 = M
−1 −1 −1 −M Mp M −1 −1 −M Mp M −1 Let us now consider the uncertainties in the friction coeﬃcients. It can be seen that Cp1 and C2 always appear together and so do Cp2 and C3 , in the matrix N . Further, the magnitude of Cp1 and Cp2 is much smaller in comparison to that of C2 and C3 , Hence, the related uncertainties in Cp1 and Cp2 have much less inﬂuence with regard to the system dynamics. We may therefore assume C2 + Cp1 = (C 2 + C p1 )(1 + s2 δC2 ) C3 + Cp2 = (C 3 + C p2 )(1 + s3 δC3 ) where s2 = s3 = 0.15 and −1 ≤ δC2 , δC3 ≤ 1. Similarly, we set C1 = C 1 (1 + s1 δC1 ) where s1 = 0.15 and −1 ≤ δC1 ≤ 1. 170 9 A Triple Inverted Pendulum Controlsystem Design Taking into account the uncertainties in the friction coeﬃcients, we obtain N = N + ∆N where
⎤ 0 −C 2 − C p 1 C 1 + C 2 + C p1 N = ⎣ −C 2 − C p1 C 2 + C p1 + C 3 + C p2 −C 3 − C p2 ⎦ C 3 + C p2 0 −C 3 − C p 2 ⎡ and ⎡ C 1 s1 δC1 + (C 2 + C p1 )s2 δC2 ⎢ −(C 2 + C p1 )s2 δC2 ⎢ ⎣ 0
⎤ 0 −(C 2 + C p1 )s2 δC2 (C 2 + C p1 )s2 δC2 −(C 3 + C p2 )s3 δC3 ⎥ ⎥ ⎦ +(C 3 + C p2 )s3 δC3 −(C 3 + C p2 )s3 δC3 (C 3 + C p2 )s3 δC3 ∆N = The matrix ∆N may be represented as ∆N = N1 ∆C N2 where ⎤ 0 C 1 s1 −(C 2 + C p1 )s2 N1 = ⎣ 0 (C 2 + C p1 )s2 −(C 3 + C p2 )s3 ⎦ 0 0 (C 3 + C p2 )s3 ⎡ ⎤ ⎡ ⎤ 1 00 δC1 0 0 N2 = ⎣ −1 1 0 ⎦ , ∆C = ⎣ 0 δC2 0 ⎦ 0 −1 1 0 0 δ C3 ⎡ In turn, the matrix N = N + N1 ∆C N2 can be rewritten as an upper LFT N = FU (QC , ∆C ) = QC22 + QC21 ∆C (I3 − QC11 ∆C )−1 QC12 where QC11 = 03×3 , QC12 = N2 , QC21 = N1 , QC22 = N such that QC = QC11 QC12 QC21 QC22 = 03 × 3 N 2 N1 N To represent the pendulum model as an LFT of the real uncertain parameters δI1 , δI2 , δI3 , and δC1 , δC2 , δC3 , we ﬁrst extract out the uncertain parameters and then denote the inputs and outputs of ∆I and ∆C as yI , yC and uI , uC , respectively, as shown in Figure 9.4. The dynamic equation of the pendulum system is then rearranged as 9.2 Modelling of Uncertainties 171 d uI
T ∆I QI yC yI
.. Θ . Θ tm G −Σ −− + Θ ∆C QC uC vC P
Fig. 9.4. System block diagram with uncertain parameters yI ¨ Θ = −M Mp M −1 −1 −M Mp M uc ˙ Θ −1 −1 uI T d − (Gtm + vC + P Θ) 0 N yc = 3× 3 2 vc N1 N uI = ∆I y I uC = ∆C yC The pendulum state vector x = [x1 x2 x3 x4 x5 x6 ]T is deﬁned by ˙ ˙ ˙ x1 = Θ1 , x2 = Θ2 , x3 = Θ3 , x4 = Θ1 , x5 = Θ2 , x6 = Θ3 Hence x1 x2 x3 ˙˙˙ and x4 x5 x6 ˙˙˙ As for the output vector, we deﬁne y = [Θ1 Θ2 Θ3 ]T The outputs are measured by linear potentiometers, whose voltages are given by yp1 = α1 Θ1 , yp2 = α2 (Θ2 − Θ1 ), yp3 = α3 (Θ3 − Θ2 )
T ˙ =Θ ¨ =Θ T 172 9 A Triple Inverted Pendulum Controlsystem Design By introducing the vector of the measured outputs yp = [yp1 yp2 yp3 ]T we obtain that ⎤ 00 α1 yp = Cp Θ, Cp = ⎣ −α2 α2 0 ⎦ 0 −α3 α3 ⎡ As a result, we obtain the equations of the system ⎡⎤ x1 ˙ ˙ ⎣ x2 ⎦ = Θ ˙ x3 ˙ ⎡ ⎤ x4 ˙ ⎣ x5 ⎦ = ˙ x6 ˙ yI = yC = vC = y= yp = uI = uC = −M
−1 −1 −1 −1 M p uI + M Td − M Td − M −1 −1 (Gtm + vC + P Θ) (Gtm + vC + P Θ) −M Mp uI + M ˙ N2 Θ ˙ N1 u C + N Θ Θ Cp Θ ∆I y I ∆C y C ¨ By substituting the variable vC in the equations of Θ and yI , respectively, the system equations are summarised as ⎡ ⎡ ⎤ ⎤ x1 x1 ˙ ⎢ x2 ⎥ ⎢ x2 ⎥ ⎢ ⎢˙ ⎥ ⎥ ⎢ x3 ⎥ ⎢ x3 ⎥ ⎢ ⎢˙ ⎥ ⎥ ⎢ x4 ⎥ ⎢ x4 ⎥ ⎢ ⎢˙ ⎥ ⎥ ⎢ x5 ⎥ ⎢ x5 ⎥ ⎢ ⎢˙ ⎥ ⎥ ⎢ ⎢ x6 ⎥ ⎥ ⎢ ˙ ⎥ = Π ⎢ x6 ⎥ (9.3) ⎢ −− ⎥ ⎢ −− ⎥ ⎢ ⎢ ⎥ ⎥ ⎢ uI ⎥ ⎢ yI ⎥ ⎢ ⎢ ⎥ ⎥ ⎢ uC ⎥ ⎢ yC ⎥ ⎢ ⎢ ⎥ ⎥ ⎢ −− ⎥ ⎢ −− ⎥ ⎢ ⎢ ⎥ ⎥ ⎣d⎦ ⎣y⎦ yp tm uI uC where Π= = ∆I 0 0 ∆C yI yC (9.4) 9.2 Modelling of Uncertainties 173 ⎡ I3×3 ⎢ 03×3 ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ −M −1 P − M −1 N ⎢ ⎢ ⎢ ⎢− − − − − − − − − ⎢ ⎢ −M −1 P − M −1 N ⎢ ⎢ 03×3 N2 ⎢ ⎢− − − − − − − − − ⎢ ⎣I 03×3 3×3 Cp 03×3   03×3 03×3   −1 −1  −M Mp − M N1  − −−−−−−−−− −1 −1  −M Mp − M N1  03 × 3 03×3 − −−−−−−−−−  03 × 3 03×3  03 × 3 03×3       −   −   ⎤ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ −1 −1 M T −M G ⎥ ⎥ ⎥ ⎥ − − − − − − − − −⎥ ⎥ −1 −1 M T −M G ⎥ ⎥ 03×3 03×2 ⎥ ⎥ − − − − − − − − −⎥ ⎥ ⎦ 0 0 03×3 03×2 3×3 3×2 03×3 03×2 Thus, the openloop, pendulum model ⎡⎤ ⎡ ⎤ yI uI ⎢ yC ⎥ ⎢ ⎥ ⎢ ⎥ = Gpend ⎢ uC ⎥ ⎣y⎦ ⎣d⎦ yp tm is an eleveninput, twelveoutput system with six states, where ⎤ ⎡ A B1 B2 Gpend = ⎣ C1 D11 D12 ⎦ C2 D21 D22 and A= 03×3 03×3 03×3 I3×3 , B1 = −1 −1 −1 −1 −M Mp −M N1 −M P −M N B2 =
−1 −1 03×2 03 × 3 −1 −1 M T −M G
−1 −1 C1 = −M P −M N , D11 = −M Mp −M N1 03×3 03 × 3 N2 03 × 3 D12 = M T −M G 03×3 03×2
C2 = I3×3 03×3 , D21 = 06×6 , D22 = 06×5 Cp 03×3
−1 −1 This pendulum model is implemented by the Mﬁle mod pend.m. (Note that the system matrix Gpend may be obtained by using the function sysic, too.) The input/output relation of the perturbed, pendulum system is described by the upper LFT y yp = FU (Gpend , ∆pend ) d tm 174 9 A Triple Inverted Pendulum Controlsystem Design with the diagonal, uncertain matrix ∆pend = as depicted in Figure 9.5. ∆I 0 0 ∆C ∆I 0 0 ∆C d tm Gpend y yp Fig. 9.5. The LFT representation of the perturbed triple inverted pendulum The singular value plot of the triple, inverted pendulum system (the nominal system) is shown in Figure 9.6.
Singular value plot of G 10 2 10 0 10 −2 10 −4 10 −6 10 −8 10 −10 10 −12 10 −2 10 −1 10 0 10 1 10 Frequency (rad/s) 2 10 3 10 4 10 5 10 6 Fig. 9.6. Singular values of the pendulum system 9.2 Modelling of Uncertainties 175 We now consider the models of the actuators. The nominal transfer functions of the actuators are taken as ﬁrstorder, phaselag models of Gm 1 = with parameters K m1 = 1.08, T m1 = 0.005, K m2 = 0.335, T m2 = 0.002 It is assumed that the actual gain coeﬃcients (Km1 , Km2 ) are constants with relative error 10% around their nominal values and the time constants (Tm1 , Tm2 ) with relative error 20%. The uncertain frequency responses of the actuators are shown in Figure 9.7. In order to account for unmodelled dynamics and nonlinear eﬀects, the uncertainties in the actuator models are approximated by input multiplicative uncertainties that give rise to the perturbed transfer functions Gm1 = (1 + Wm1 δm1 )Gm1 , Gm2 = (1 + Wm2 δm2 )Gm2
where δm1  ≤ 1, δm2  ≤ 1 and the uncertainty weights Wm1 , Wm2 are so chosen that Gm1 (jω ) − Gm1 (jω ) Gm1 (jω ) < Wm1 (jω ) , Gm2 (jω ) − Gm2 (jω ) Gm2 (jω ) < Wm2 (jω ) . K m2 K m1 , Gm 2 = T m2 s + 1 T m1 s + 1 The frequency responses of Wm1 , Wm2 are found graphically as shown in Figure 9.8 and then approximated by ﬁrstorder transfer functions using the ﬁle wfit.m. As a result, we obtain Wm1 = 0.3803s + 60.8973 0.3877s + 25.6011 , W m2 = 1.0000s + 599.5829 1.0000s + 246.3606 By introducing the vector u = [u1 , u2 ]T , the equations of the actuators are rewritten as tm = Gm (I2 + Wm ∆m )u where Gm = 0 Wm1 0 δ Gm 1 0 , Wm = , ∆m = m1 0 W m2 0 δm2 0 Gm 2 The block diagram of the actuators with the input multiplicative uncertainty is shown in Figure 9.9. Let the inputs and outputs of the uncertain blocks (δm1 , δm2 ) be denoted by ym1 , ym2 and um1 , um2 , respectively. Deﬁning the vectors um = [um1 um2 ]T and ym = [ym1 ym2 ]T , we may rearrange the actuator models as 176 9 A Triple Inverted Pendulum Controlsystem Design
10
1 Uncertain transfer function of the first actuator 10 0 Magnitude 10 −1 Solid line: G (jω) nom Dashed line: G(j ) ω 10 −2 10 1 10 2 10
Frequency (rad/s) 3 10 4 10 0 Uncertain transfer function of the second actuator Magnitude 10 −1 Solid line: G (jω) nom Dashed line: G(j ) ω 10 −2 10 1 10 2 10
Frequency (rad/s) 3 10 4 Fig. 9.7. Uncertain frequency responses of the actuators ym tm = Gact um u (9.5) (9.6) um = ∆m ym where Gact = 02×2 Wm Gm Gm 9.2 Modelling of Uncertainties
10
0 177 Approximation of the transfer function of the first actuator 10 −1 Magnitude
−2 10 Solid line: Wm(j ) ω Dashed line: (G(j )−Gnom(jω))/Gnom(jω) ω 10 −3 10 1 10 2 10
Frequency (rad/s) 3 10 4 10 0 Approximation of the transfer function of the second actuator 10 −1 Magnitude
−2 10 Solid line: Wm(j ) ω Dashed line: (G(j )−G ω
nom (jω))/G nom (jω) 10 −3 10 1 10 2 10
Frequency (rad/s) 3 10 4 Fig. 9.8. Actuators uncertainty approximations The perturbed actuators can be described by the following upper LFT and shown in Figure 9.10, tm = FU (Gact , ∆m )u Having modelled both the pendulum and the actuators with consideration of possible perturbations, the blockdiagram of the whole system is seen as in Figure 9.11. Note that ∆m is a complex uncertainty, while ∆I and ∆C are real 178 9 A Triple Inverted Pendulum Controlsystem Design Wm ∆m + + u _
Gm Σ tm Fig. 9.9. Block diagram of the perturbed actuators ∆m u Gact tm Fig. 9.10. LFT representation of the perturbed actuators uncertainties. We thus have a case of a mixed, real and complex, uncertainty conﬁguration. ∆m ∆I 0 0 ∆C u Gact tm d Gpend y yp Fig. 9.11. Triple inverted pendulum system with uncertainties The model of the whole triple inverted pendulum system is given by the equations 9.2 Modelling of Uncertainties 179 ⎡ ym um ⎢ yI ⎥ ⎢ uI ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ yC ⎥ = Gsys ⎢ uC ⎥ ⎢ ⎥ ⎢ ⎥ ⎣y⎦ ⎣d⎦ yp u ⎤ ⎡ ⎤ (9.7) where the transfer matrix Gsys is determined by the matrices Gact and Gpend , and can be easily obtained by using the function sysic. The whole, perturbed, triple inverted pendulum system can be described by the following upper LFT, as shown in Figure 9.12, y yp = FU (Gsys , ∆) d u with the diagonal, uncertainty matrix ⎡ ⎤ ∆m 0 0 ∆ = ⎣ 0 ∆I 0 ⎦ 0 0 ∆C (9.8) ∆ d u Gsys y yp Fig. 9.12. LFT representation of triple inverted pendulum system with uncertainty 180 9 A Triple Inverted Pendulum Controlsystem Design 9.3 Design Speciﬁcations
The block diagram of the closedloop system, which includes the triple inverted pendulum model, the feedback structure and the controller, as well as the elements reﬂecting the model uncertainty and the performance objectives, is depicted in Figure 9.13. In order to achieve better performance, we shall make use of the conﬁguration of a twodegreeoffreedom (2DOF) controller. Fig. 9.13. Interconnection structure of the closedloop system The model of the triple inverted pendulum system represents an upper LFT in the form G = FU (Gsys , ∆). The rectangle, shown with dashed lines, represents the transfer function matrix G. Inside the rectangle is the nominal model Gsys and the block ∆, which parametrises the model uncertainties. The matrix ∆ is unknown, but with the structure deﬁned in (9.8) and with the norm bound ∆ ∞ < 1. The feedback signal is generated on the basis of the potentiometers output yp = Cp y , which requires the reference r to be multiplied by the matrix Cp − (the other way to deal with the situation is to multiply yp by Cp 1 ). The measurement of the arm angles is accompanied by introduction of frequencydependent noises that are inevitable in practice and are thus added to the corresponding measurements. This is why at the outputs of the potentiometers one obtains the signal yc = −(yp + Wn η ), where Wn is a weighting function (shaping ﬁlter on the measurement noise) and η = [η1 η2 η3 ]T is an arbitrary noise signal satisfying η 2 ≤ 1. By choosing an appropriate Wn it is possible 9.3 Design Speciﬁcations 181 to form the desired spectral contents of the actual noise signal (in the form of Wn η ). In the given case the matrix Wn is chosen as ⎡ ⎤ wn (s) 0 0 Wn (s) = ⎣ 0 wn (s) 0 ⎦ 0 0 wn (s)
10 where the weighting transfer function wn = 2 × 10−5 0.1s+1 is a high pass ﬁlter s+1 that shapes the noise spectral density for the type of potentiometers under consideration. The magnitude plot of this ﬁlter is shown in Figure 9.14. This transfer function means that in the lowfrequency range the magnitude of the measurement error is about 2 × 10−5 V, and in the highfrequency range, about 2 × 10−3 V. 10 −2 Sensor noise weight 10 −3 Magnitude
10
−4 10 −5 10 −4 10 −2 10 10 Frequency (rad/s) 0 2 10 4 10 6 Fig. 9.14. Measurement noise weighting function The closedloop system error ey = r − y may be determined by ⎡⎤ r ey = S ⎣ d ⎦ η where the matrix S = S (Gsys ) is considered as the nominal sensitivity function with respect to the inputs r, d and η . As for feedback signals, we shall use yc = −(yp + Wn η ) and Cp r. The performance objective requires the transfer function matrices from r, d and η to ey and eu to be small in the sense of · ∞ , for all possible (stable) 182 9 A Triple Inverted Pendulum Controlsystem Design uncertainty matrices ∆. The transfer function matrices Wp and Wu are used to reﬂect the relative signiﬁcance over diﬀerent frequency ranges for which the performance is required. The design problem for the triple inverted pendulum system is to ﬁnd a linear, output controller K (s) to generate the output feedback u(s) = K (s) yc (s) Cp r(s) to ensure the following properties of the closedloop system. Nominal performance: The closedloop system achieves nominal performance if the following performance objective is satisﬁed for the nominal plant model Gsys , Wp S (Gsys ) Wu KS (Gsys ) <1
∞ (9.9) where Wp and Wu are appropriately chosen weighting functions. This objective corresponds to the mixed S/KS sensitivity optimisation. Robust stability: The closedloop system achieves robust stability if the closedloop system is internally stable for each possible, perturbed plant dynamics G = FU (Gsys , ∆). Robust performance: The closedloop system must maintain, for each G = FU (Gsys , ∆), the performance objective Wp S (G) <1 (9.10) Wu KS (G) ∞ where S (G) is the perturbed sensitivity function of G = FU (Gsys , ∆). In addition to the above requirements, it is desirable that the controller designed would have acceptable complexity, i.e. it is of reasonably low order. 9.4 System Interconnections
The internal structure of the nineteeninput, nineteenoutput openloop system, which is saved as the variable pend ic, is shown in Figure 9.15. The inputs and outputs of the uncertainties are saved in the variables pertin and pertout, respectively, and the reference, the disturbance and the noise in the 9.4 System Interconnections
pertin {18}
pertout {18} 183 Gsys control{12} yp{13}
Wu
Σ
− yc{13} Wn
Cp noise{13} Fig. 9.15. OpenLoop interconnection of the triple inverted pendulum system variables ref, dist, noise, respectively. The control signal is saved in the variable control. The variables pertin and pertout each have eight elements. The variables ref, dist, noise, y, y p, y c, e y have all three elements and the variables control, e u have two elements. The openloop connection is assigned by the Mﬁle olp pend. The schematic diagram showing the speciﬁc input/output ordering for the variable pend ic is shown in Figure 9.16. The blockdiagram used in the closedloop system simulation is shown in Figure 9.17. The corresponding closedloop interconnection, which is saved in the variable pend sm, is obtained by the Mﬁle sim pend. Figure 9.18 shows the schematic diagram of the speciﬁc input/output ordering for the variable pend sm. − dist{13} y{13} ey{13}
Σ Wp + eu{12} − ref{13} 184 9 A Triple Inverted Pendulum Controlsystem Design
pertin{1} pertin{2} pertin{3} pertin{4} pertin{5} pertin{6} pertin{7} pertin{8} ref{1} ref{2} ref{3}
dist{1} dist{2} dist{3}
noise{1} noise{2} noise{3} control{1} control{2} 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 pend_ic 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
17 18 19 pertout{1} pertout{2} pertout{3} pertout{4} pertout{5} pertout{6} pertout{7} pertout{8} ey{1} ey{2} ey{3} eu{1} eu{2} yc{1} yc{2} yc{3}
ref{1} ref{2} ref{3} Fig. 9.16. Schematic diagram of the openloop system pertin {18} pertout {18} dist{13}
control{12} Gsys y{13}
yp{13}
−
Σ control{12} K Fig. 9.17. Closedloop interconnection structure of the pendulum system − yc{13} noise{13} Wn
Cp
ref{13} 9.4 System Interconnections
pertin{1} pertin{2} pertin{3} pertin{4} 185 pertin{5} pertin{6} pertin{7} pertin{8} ref{1} ref{2} ref{3}
dist{1} dist{2} dist{3}
noise{1} noise{2} noise{3} control{1} control{2} 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 pend_sm 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 pertout{1} pertout{2} pertout{3} pertout{4} pertout{5} pertout{6} pertout{7} pertout{8} y{1} y{2} y{3} u{1} u{2} yc{1} yc{2} yc{3} ref{1} ref{2}
ref{3} Fig. 9.18. Schematic diagram of the closedloop system 186 9 A Triple Inverted Pendulum Controlsystem Design 9.5 H∞ Design
The design goal in this case is to ﬁnd an H∞ (sub)optimal control law for the interconnection shown in Figure 9.19, in which we neglect the uncertainty inputs and outputs. The variable hin ic, which corresponds to the transfer function matrix of the augmented system, may be obtained by the command line hin_ic = sel(pend_ic,[9:19],[9:19]) The H∞ optimal control minimises the · ∞ norm of FL (P, K ) over the stabilising controller transfer matrix K , where P is the transfer function matrix of the augmented system. In the given case FL (P, K ) is the nominal closedloop system transfer matrix from the references, disturbances and noises (the signals r, d and η ) to the weighted outputs ey and eu (Figure 9.19). Fig. 9.19. Block diagram for H∞ design In the given case the weighting performance functions are chosen in the forms of ⎤ ⎡ 0 wp1 (s) 0 wu (s) 0 Wp (s) = ⎣ 0 wp2 (s) 0 ⎦ , Wu (s) = 0 wu (s) 0 0 wp3 (s) where wp1 (s) = 10−6 wp2 (s) = wp3 (s) = and wu (s) = 10−6 . s4 + 12s3 + 80s2 + 80s + 65 s4 + 1500s3 + 13000s2 + 12000s + 0.005 s4 + 12s3 + 80s2 + 80s + 65 + 1500s3 + 13000s2 + 12000s + 0.005 s4 s4 + 12s3 + 80s2 + 80s + 65 s4 + 1500s3 + 13000s2 + 12000s + 0.005 9.5 H∞ Design 187 The small gain in the ﬁrst weighting function (wp1 ) indicates that the ﬁrst error may be allowed to be large. This is due to the fact that the requirement on precision position of the ﬁrst arm may be relaxed a little in this case. The weighting functions are set in the Mﬁle wts pend.m. The H∞ design is conducted by using the Mﬁle hinf pend.m. It utilises the function hinfsyn, which determines a (sub)optimal H∞ control law, based on the prescribed openloop interconnection. The interval for γ iteration is chosen between 0 and 10 with a tolerance tol = 0.001. The controller obtained is of 28th order and for this controller the closedloop system achieves H∞ norm equal to 1.0005. An undesired property of the controller is that it has a pole at 33.6, i.e. this controller is unstable, which makes it less favourable in practice. The singular value plot of the H∞ controller transfer matrix is shown in Figure 9.20.
Singular value plot of the controller 10 5 10 4 10 3 10 2 10 1 10 −4 10 0 10 −3 10 −2 10 −1 10 Frequency (rad/s) 0 10 1 10 2 10 3 10 4 Fig. 9.20. Singular values of the H∞ controller The closedloop, transient responses (reference tracking) are obtained by using the ﬁle clp pend. The transient response of the closedloop system with H∞ controller for the reference vector ⎡ ⎤ 0 r = ⎣ −0.1 ⎦ 0.2 (the references are measured in radians) is shown in Figure 9.21. The response is fast (settling time approximately equal to 6 s) with small overshoots of the output variables. The steadystate errors are small, except for a small error on the position of the ﬁrst arm. 188 9 A Triple Inverted Pendulum Controlsystem Design
Closed−loop transient response 0.5 0.4 Dashed line: y 1 Dash−dotted line: y
2 0.3 Solid line: y 3 y1, y2, y3 (rad) 0.2 0.1 0 −0.1 −0.2 0 2 4 6 8 10 Time (s) 12 14 16 18 20 Fig. 9.21. Closedloop transient response of H∞ controller Closed−loop disturbance response
0.05 0.04 Dashed line: y 1 Dash−dotted line: y 2 0.03 Solid line: y 3 y1, y2, y3 (rad) 0.02 0.01 0 −0.01 −0.02 0 2 4 6 8 10 Time (s) 12 14 16 18 20 Fig. 9.22. Disturbance rejection of H∞ controller The disturbance rejection of the closedloop system with the H∞ controller is shown in Figure 9.22. The disturbance vector is set to 0.1 d = ⎣ 0.1 ⎦ 0.1 and measured in N m.
10
1 ⎡ ⎤ 9.5 H∞ Design 189 Singular value plot of the closed−loop transfer function matrix 10 0 10 −1 10 −2 10 −4 10 −3 10 −2 10 Frequency (rad/s) −1 10 0 10 1 10 2 Fig. 9.23. Closedloop singular values with H∞ controller In Figure 9.23 we show the singular values plot of the closedloop transfer matrix with the H∞ controller. The test for robust stability is based on the µ values of the upper 8 × 8 block of the closedloop transfer function matrix. The block structure of the uncertainty is set as blks = [1 1;1 1;1 1;1 1;1 1;1 1;1 1;1 1] The upper and lower bounds of the structured singular value µ (over the frequency range) are shown in Figure 9.24. It is clear that the closedloop system with H∞ controller does not achieve robust stability, since the maximum value of µ is equal to 1.666. The robust performance of the closedloop system with H∞ controller is checked with the µanalysis, too. The blockstructure of the uncertainty ∆P consists of an 8 × 8 diagonal uncertainty block and a 9 × 5 full (complex) uncertainty performance block, i.e., ∆P := ∆0 0 ∆F : ∆ ∈ C 8×8 , ∆F ∈ C 9×5 The µ values corresponding to the case of robust performance analysis are shown in Figure 9.25. Again, the closedloop system does not achieve robust performance either, because the maximum value of µ is equal to 1.673. 190 9 A Triple Inverted Pendulum Controlsystem Design
10
1 Robust stability 10 0 mu 10 −1 Solid line: upper bound Dashed line: lower bound 10 −2 10 −1 10 0 10 1 10 Frequency (rad/s) 2 10 3 10 4 Fig. 9.24. Robust stability test of H∞ controller Hence, it is concluded that the designed H∞ controller leads to good closedloop transient responses, but does not ensure the necessary robustness of the closedloop system as required.
Robust performance 1.8 1.6 1.4 Solid line: upper bound 1.2 Dashed line: lower bound 1
mu 0.8 0.6 0.4 0.2 0 −1 10 10 0 10 1 10 Frequency (rad/s) 2 10 3 10 4 Fig. 9.25. Robust performance of H∞ controller 9.6 µSynthesis 191 9.6 µSynthesis
Let us denote by P (s) the transfer function matrix of the nineteeninput, sixteenoutput, openloop system consisting of the pendulum system model plus the weighting functions, and let the block structure ∆P of uncertainties be deﬁned by ∆P := ∆0 0 ∆F : ∆ ∈ R8×8 , ∆F ∈ C 9×5 The ﬁrst block of the matrix ∆P , the uncertainty block ∆, corresponds to the parametric uncertainties modelled in the triple inverted pendulum system. The second block, ∆F , is a ﬁctitious uncertainty block, introduced to include the performance objectives in the framework of the µapproach. To meet the design objectives a stabilising controller K is to be found such that, at each frequency ω ∈ [0, ∞], the structured singular value µ satisﬁes the condition µ∆P [FL (P, K )(jω )] < 1 The fulﬁllment of this condition guarantees robust performance of the closedloop system, i.e., Wp S (G) <1 Wu KS (G) ∞ where G = FU (Gsys , ∆), for all stable perturbations ∆ with ∆ ∞ < 1. The µsynthesis is conducted by using the Mﬁle ms pend.m. The uncertainty structure and other parameters used in the DK iteration are assigned in the auxiliary ﬁle dk pend.m. The experiments with µsynthesis show that the use of the weighting functions, used in the H∞ design, leads to very slow transient responses. Hence, these functions are appropriately modiﬁed to wp1 (s) = 10−6 wp2 (s) = 2.5 wp3 (s) = 10 s4 + 12s3 + 80s2 + 80s + 65 15s4 + 1500s3 + 13000s2 + 12000s + 0.005 s4 + 12s3 + 80s2 + 80s + 65 + 1500s3 + 13000s2 + 12000s + 0.005 15s4 s4 + 12s3 + 80s2 + 80s + 65 15s4 + 1500s3 + 13000s2 + 12000s + 0.005 The control weighting functions are again taken as wu (s) = 10−6 . The progress of the DK iteration is shown in Table 9.3. It can be seen from the table that after the third iteration the maximum value of µ is equal to 0.960, which indicates that the robust performance has been achieved. The ﬁnal controller obtained is of 84th order. Note that this controller is stable. 192 9 A Triple Inverted Pendulum Controlsystem Design Table 9.3. DK iterations results in µsynthesis Iteration Controller order Maximum value of µ 13.852 28 1 1.422 84 2 0.960 84 3 10 3 Singular value plot of the controller 10 2 10 1 10 0 10 −1 10 −4 10 −3 10 −2 10 −1 10 Frequency (rad/s) 0 10 1 10 2 10 3 10 4 Fig. 9.26. Singular values of the µcontroller The singular value plot of the µcontroller is shown in Figure 9.26. Similar to the H∞ controller, the µcontroller has an integrating action in the low frequency range. The structured singular values for the robust stability study (over the frequency range) are shown in Figure 9.27. The maximum value of µ is 0.626 which means that the stability of the system is preserved under perturbations 1 that satisfy ∆ ∞ < 0.626 . The µ values over the frequency range for the case of robust performance analysis are shown in Figure 9.28. The closedloop system achieves robust performance, since the maximum value of µ is equal to 0.820. Consider now the closedloop transient responses obtained by using the Mﬁle clp pend. The same reference signal as used in the H∞ simulation is used here. That is, ⎡ ⎤ 0 r = ⎣ −0.1 ⎦ 0.2 The transient response is shown in Figure 9.29. To compare with those of the 9.6 µSynthesis
10
0 193 Robust stability 10 −1 10
mu −2 Solid line: upper bound Dashed line: lower bound 10 −3 10 −4 10 −5 10 −1 10 0 10 1 10 Frequency (rad/s) 2 10 3 10 4 Fig. 9.27. Robust stability of µ controller Robust performance
0.9 0.8 Solid line: upper bound Dashed line: lower bound 0.7 0.6 mu 0.5 0.4 0.3 0.2 0.1 −1 10 10 0 10 1 10 Frequency (rad/s) 2 10 3 10 4 Fig. 9.28. Robust performance of µ controller H∞ controller, it can be seen that the transient response (reference tracking) of the µcontroller is slower and the steadystate errors are slightly larger, though with less overshoot (undershoot). 194 9 A Triple Inverted Pendulum Controlsystem Design
Closed−loop transient response
0.25 0.2 0.15 Dashed line: y 1 Dash−dotted line: y y1, y2, y3 (rad)
0.1 2 Solid line: y 3 0.05 0 −0.05 −0.1 0 2 4 6 8 10 Time (s) 12 14 16 18 20 Fig. 9.29. Closedloop transient response of µcontroller Closed−loop control
0.02 0 −0.02 Solid line: u 1 Dashed line: u
2 u1, u2 (V) −0.04 −0.06 −0.08 −0.1 −0.12 0 2 4 6 8 10 Time (s) 12 14 16 18 20 Fig. 9.30. Control action of µcontroller The control action in the case of a µcontroller is shown in Figure 9.30. The motor voltages are kept within 0.12 V. 9.6 µSynthesis 195 The disturbance rejection of the closedloop system with the µcontroller is shown in Figure 9.31. We see that the overshoot of the third output is almost 7 times larger than in the case of the H∞ controller.
Closed−loop disturbance response
0.35 0.3 Dashed line: y 1 Dash−dotted line: y 2 Solid line: y 0.25 0.2 3 0.15 y1, y2, y3 (rad) 0.1 0.05 0 −0.05 −0.1 −0.15 0 2 4 6 8 10 Time (s) 12 14 16 18 20 Fig. 9.31. Disturbance rejection of µcontroller Hence, it is clear that the (nominal) transient responses in terms of reference tracking and disturbance attenuation are worse in the case of the µcontroller. This is the price that has to be paid to ensure the robust stability and robust performance of the closedloop system. In Figure 9.32, we show the noise wn η3 that acts at the output of the third potentiometer, and the corresponding response of the output y3 . From the magnitudes of wn η3 and y3 , one may conclude that the closedloop system is susceptible to noises. The closedloop frequency responses are obtained by the Mﬁle frs pend.m. The singular values of the closedloop transfer matrix with the µcontroller are plotted in Figure 9.33. The comparison with the plot shown in Figure 9.23 reveals that the closedloop bandwidth in the case of a µcontroller is smaller, which leads to a slower response and worse disturbance attenuation. The singular values of the transfer function matrix concerning disturbance rejection are shown in Figure 9.34. We see that the disturbance attenuation is worst for frequencies around 1 rad/s. From the singular values plot of the transfer function matrix concerning noise attenuation, shown in Figure 9.35, we see that the inﬂuence of noises on the system output would be maximal for frequencies between 1 rad/s and 10 rad/s. 196 9 A Triple Inverted Pendulum Controlsystem Design
2 x 10
−3 Sensor output 1.5 1 0.5 3 0 η −0.5 −1 −1.5 −2 0
−4 2 4 6 8 10 Time (s) 12 14 16 18 20 6 x 10 Closed−loop noise response 4 2 y3 (rad) 0 −2 −4 −6 0 2 4 6 8 10 Time (s) 12 14 16 18 20 Fig. 9.32. Sensor noise and closedloop noise response As mentioned earlier, the controller obtained by µsynthesis is initially of 80th order, which makes its implementation in practice very diﬃcult. Therefore, it is necessary to reduce the controller order. For this purpose, we implements the Mﬁle red pend.m. We use the model reduction algorithm based on system balancing followed by optimal Hankel approximation. This algorithm allows us to reduce the controller order to 27. Further reduction of the controller order leads to deterioration of the closedloop transient responses and would even cause the instability of the closedloop system. In Figure 9.36 we compare the frequency responses (the maximum singular values) of the fullorder and reducedorder µcontrollers. Up to the frequency 104 rad/s the frequency plots of both controllers coincide with each other, which implies very similar performance of the closedloop systems. In fact, 9.6 µSynthesis
10
1 197 Singular value plot of the closed−loop transfer function matrix 10 0 10 −1 10 −2 10 −3 10 −4 10 −5 10 −6 10 −4 10 −3 10 −2 10 Frequency (rad/s) −1 10 0 10 1 10 2 Fig. 9.33. Closedloop singular value plot 10 1 Singular value plot of the disturbance transfer function matrix 10 0 10 −1 10 −2 10 −3 10 −4 10 −5 10 −6 10 −7 10 −8 10 −9 10 −4 10 −3 10 −2 10 −1 10 Frequency (rad/s) 0 10 1 10 2 10 3 10 4 Fig. 9.34. Singular values of the disturbance rejection transfer function matrix the closedloop transient responses with the fullorder controller and those with the reducedorder controller (not included in the book) are practically undistinguishable. A discretetime controller may be obtained by sampling the already designed continuoustime controller for a sampling frequency fs = 1/Ts . This can be conducted by the Mﬁle dcl pend.m that utilises the Robust Control Toolbox function samhld. The resulting, sampleddata closedloop system can be simulated by using the function sdtrsp. Since the inverted pendu 198 9 A Triple Inverted Pendulum Controlsystem Design
10
−1 Singular value plot of the noise transfer function matrix 10 −2 10 −3 10 −4 10 −5 10 −6 10 −7 10 −8 10 −9 10 −10 10 −11 10 −4 10 −3 10 −2 10 −1 10 Frequency (rad/s) 0 10 1 10 2 10 3 10 4 Fig. 9.35. Singular values of the noiseattenuation transfer function matrix 10 3 Maximum singular values of the controller transfer function matrices 10 2 10 1 10 0 Solid line: full−order controller Dashed line: reduced−order controller 10 −1 10 −4 10 −3 10 −2 10 −1 10 Frequency (rad/s) 0 10 1 10 2 10 3 10 4 Fig. 9.36. Frequency responses of the full and reducedorder controllers lum is a relatively slow system, the sampling frequency may be chosen to be small. For instance, if this frequency is 100 Hz then the transient responses of the sampleddata system are close to the corresponding responses of the continuoustime system. 9.7 Nonlinear System Simulation 199 9.7 Nonlinear System Simulation
The nonlinear, closedloop system of the triple inverted pendulum is simulated by using the Simulink r models c pend.mdl (for the continuoustime system) and d pend.mdl (for the sampleddata system). Both models allow us to simulate the closedloop system for diﬀerent references, disturbances and noise signals. Both models utilise the Mﬁle Sfunction s pend.m that includes the nonlinear diﬀerential equations (9.1) of the triple inverted pendulum. The initial conditions of the pendulum are assigned in the Mﬁle inc pend.m. The sampleddata model consists of the discretised controller, a 14bit analoguetodigital converter with maximum input voltage 5 V, and a 14bit digitaltoanalogue converter with maximum output voltage 5 V. It is assumed that the calculation of the control action requires no longer than one sampling period Ts . Before simulating the system it is necessary to set the model parameters by using the Mﬁle init c pend.m (in the continuoustime case) or the Mﬁle init d pend.m (in the discretetime case). The simulation of the nonlinear system for small references and disturbances produces results that are very close to the results obtained for the linearised model. The Simulink r model c pend.mdl of the continuoustime, nonlinear, pendulum system is shown in Figure 9.37. In Figure 9.38 we show the transient response of the continuoustime, nonlinear system for a reference r = [0 − 0.1 0.2]T . The transient response is close to that of the linear system (Figure 9.29). Since the triple inverted pendulum is essentially nonlinear, the simulation results may diﬀer in the case of large references and disturbances. In Figure 9.39 we show the transient response of the continuoustime, nonlinear system for a reference r = [0 0 0.6]T . It is seen that for this relatively large reference the closedloop system even becomes unstable. 200 Simulink model of the triple inverted pendulum system y Controls Disturbances y vector d y u
tp
In1 Out1 x’ = Ax+Bu y = Cx+Du Controller Actuators s_pend Outputs Pendulum r K*u References Cp Sensors K*u 9 A Triple Inverted Pendulum Controlsystem Design Fig. 9.37. Simulation model of the nonlinear system
yp
Out1 t Clock Time Noises 9.7 Nonlinear System Simulation
Nonlinear system transient response
0.2 201 0.15 0.1 Dashed line: y 1 Dash−dotted line: y
2 y1, y2, y3 (rad) 0.05 Solid line: y 3 0 −0.05 −0.1 −0.15 0 2 4 6 8 10 Time (s) 12 14 16 18 20 Fig. 9.38. Transient response of the nonlinear system  small reference Nonlinear system transient response 1 0.8 0.6 y1, y2, y3 (rad) 0.4
Dashed line: y 1 0.2 Dash−dotted line: y Solid line: y 3 2 0 −0.2 −0.4 0 5 10 15 Time (s) 20 25 30 Fig. 9.39. Transient response of the nonlinear system  large reference 202 9 A Triple Inverted Pendulum Controlsystem Design 9.8 Conclusions
The experience gained in the design of the triple inverted pendulum control system makes it possible to make the following comments. • The derivation of the uncertainty model of the triple inverted pendulum system is a diﬃcult task. It is necessary to make several justiﬁable assumptions in order to obtain a relatively simple model. • The use of a twodegreeoffreedom control structure allows us to obtain acceptable performance as well as robustness of the closedloop system. • The necessity to achieve robust stability and robust performance of the closedloop system leads to decrease of the closedloop bandwidth that in turn leads to slower response and worse disturbance attenuation. Thus, there is a tradeoﬀ between nominal performance and robustness of the closedloop system. In the given case an acceptable tradeoﬀ is achieved by using a µcontroller. • The order of the µcontroller is very high that thus requires controller order reduction to preserve the closedloop performance and robustness while making implementation of the controller easier and more reliable. • The triple inverted pendulum is an essentially nonlinear system and the results obtained by using the linearised model are valid only for suﬃciently small arm angles and arm velocities. Notes and References
As noted in [166] the inverted pendulum is frequently used as a good example to show the power of modern control theory. The design of inverted pendulum control systems is initially done by using statespace methods [110]. The single and double inverted pendulums are relatively easy to stabilize by using linear controllers [40, 80, 165]. The triple inverted pendulum is more diﬃcult to control and it is very sensitive to torque disturbances, joint frictions and measurement noises [149]. The design of analogue and digital controllers for triple inverted pendulum systems has been considered in several papers (see, for instance, [41, 104]). References [28, 102] address the challenging problem of stabilising a triple inverted pendulum, a cart system that uses only one actuator. The robust control of diﬀerent types of inverted pendulums is considered in several publications, see, for instance, [72, 103, 149, 150]. 10 Robust Control of a Hard Disk Drive This chapter considers the design of a robust servo system of a hard disk drive(HDD). Three robust design methods are applied, namely, the µsynthesis, H∞ optimal design and the H∞ loopshaping design procedure (LSDP). After a description of the HDD servosystem dynamics in the ﬁrst section, it is shown in detail (in Section 10.2) how to derive the plant model that involves several uncertain parameters. Then we consider the synthesis of continuoustime controllers using the available methods for robust control design. These controllers are compared in aspects of robustness of closedloop system stability and of performance in the frequency domain and in the timedomain. The design of discretetime controller is also included, for two sampling frequencies. Finally, we present the simulation results of the nonlinear continuoustime and discretetime closedloop systems, followed by conclusions at the end of the chapter. The prevalent trend in harddisk design is towards smaller disks with increasingly larger capacities. This implies that the track width has to be smaller leading to lower error tolerance in the positioning of the read/write heads. The controller for track following has to achieve tighter regulation in the presence of parameter variations, nonlinearities and noises. Hence, it is appropriate to use advanced design methods like µsynthesis and H∞ optimisation in order to achieve robust stability and robust performance of the closedloop servo system. 10.1 Hard Disk Drive Servo System
The schematic diagram of a typical hard disk drive is shown in Figure 10.1. The disk assembly consists of several ﬂat disks called platters coated on both sides with very thin layers of magnetic material (thinﬁlm media). The magnetic material is used to store the data in the form of magnetic patterns. The platters rotate at high speed, driven by a spindle motor. Recently, the spindle speed is 5400 r.p.m., 7200 r.p.m. or even 10,000 and 15,000 r.p.m. The 204 10 Robust Control of a Hard Disk Drive Spindle motor Arm Pivot Read/write heads Platter Voice coil motor (VCM)
Fig. 10.1. Schematic diagram of a hard disk drive data are retrieved from, or recorded onto, the platters by electromagnetic read/write(R/W) heads that are mounted at the bottom of sliders. Today’s hard disks read data using giantmagnetoresistive(GMR) heads and write data with thinﬁlm inductive heads. The sliders with read/write heads are mounted onto head arms. The arms are lightweight rigid constructions allowing them to be moved rapidly on the platter surface. There is one arm per read/write head and all arms are mounted in a stack assembly that moves over multiple disk surfaces simultaneously. The heads are suspended several microinches above the disk surface. The appropriate ﬂying height of the heads is achieved thanks to the air ﬂow generated by the spinning disk. The data recorded on the platters are in concentric circles called tracks. Modern hard disks have tens of thousands of tracks resulting in track density as high as 30 000 tracks per inch(TPI). Thus, the distance between adjacent tracks is of the order of a microinch. Each track is divided into smaller pieces called sectors that contain 512 bytes of information. There may be several hundreds or even thousands of sectors in a track. The drive density may reach more than 20 GB per platter. 10.1 Hard Disk Drive Servo System 205 The head arms are moved on the surface of the platter by a rotary voice coil actuator frequently called the Voice Coil Motor(VCM). The VCM consists of a voice coil, mounted at the end of the head arm assembly, and permanent electromagnets. By controlling the current in the coil, the heads can move in one direction or the other in order to follow precisely the data track. The goal of the hard disk drive servo control system is to achieve a precise positioning of the read/write heads on the desired track (trackfollowing mode) while data are being written or read, and a quick transition from one track to another target track (seeking mode). As the drive initiates a seek command, it switches to a seek control algorithm that is a type of timeoptimal (bangbang) control algorithm. When the head is positioned over the desired track, the drive switches into trackfollowing mode. In the present work we consider the servo controller of the trackfollowing mode. All modern hard disk drives read the relative position of the head to track directly from the disk media by using a method called embedded servo or sector servo. In this method the servo information is interleaved with user data across the entire surface of all platters. Position information is placed on the disk surfaces in servo frames during the manufacturing of the disk and cannot be rewritten. This is why the disk heads are locked out by the drive controller from writing to the areas where servo information is written. Because of the interleaving of servo information with data, the embedded servo system is a sampleddata system. Increasing the number of servo frames within a track improves the performance of the servo system due to the higher sample rate but limits the maximum data storage. The servo information is read by the same head that reads the data. The position information usually consists of two parts: coarse position giving track number and ﬁne position information relative to each track. The position error, representing the diﬀerence between the reference track position and the head position, is measured by making use of position bursts that are part of the servo information. The position bursts are patterns of alternating magnetic polarity written on the disk surface with a particular frequency. The periodic signal, obtained from the read head passing over a burst pattern, has an amplitude that is proportional to how much the read head is directly over the burst pattern. The signals corresponding to 2 or 4 bursts of position information are demodulated by a servo demodulator in order to compose the position error signal(PES). This signal is used by the servo controller to change the voice coil current appropriately and hence the read/write heads position. It should be pointed out that the absolute head position is not generally known from the servo information that is read oﬀ of the disk. Only a signal proportional to the position error is available, which means that for track following the reference signal is ideally equal to zero. The failure of the head to follow the track on a platter surface faithfully as the disk spins is referred to as runout. The runout could have serious consequences, especially during writing where data in adjacent tracks might be overwritten. There are two types of runout, namely the repeatable runout(RRO) and nonrepeatable runout(NRRO). Repeatable runout is caused 206 10 Robust Control of a Hard Disk Drive by both imbalance in the spindle and imperfections in the servowriting process that result in noncircular position information. This information is encoded at the spindle frequency, yielding a repeatable noncircular track for the disk servo to follow. The nonrepeatable runout is caused by a windage induced actuator arm, slider motion and mechanical vibrations that can arise from various sources such as ball bearing defects, spindle motor vibrations and slider vibrations. The RRO may be reduced through feedforward compensation at the corresponding frequency by using harmonic correctors. kb
PA
− VC ic kt tm td ta Hd(s) th 1 ω 1 Θ Js s u D/A Kd
+ + A/D S/H + − +y + η R.tpm.ky yr yref Fig. 10.2. Block diagram of the hard disk drive servo system The blockdiagram of the HDD servo system is shown in Figure 10.2. The R/W heads are moved by a VCM that is driven by the output current ic of a power ampliﬁer(PA). The actual position signal y is compared with the signal yref that represents the desired head position. For the track following, the reference input yref is theoretically equal to zero and y (t) appears as an error signal. In practice, yref must be set equal to the signal representing both RRO and NRRO. The digital signal yr is a reference for the desired track and is used during the seeking mode. The error signal is sampled by an analoguetodigital(A/D) converter and serves as part of an input to the digital servo controller Kd that is typically implemented on a DSP chip. The output of the controller is converted to analogue form by a digitaltoanalog(D/A) converter and ampliﬁed by the PA. Since the motor torque is proportional to the voice coil current, the ampliﬁer is conﬁgured as a current source. The exogenous signal td is the torque disturbance due to external shock and vibrations, power ampliﬁer noise, digitaltoanalogue converter noise, pivot bearing friction and ﬂex cable bias. The increase of the spindle speed increases the air ﬂow inside the disk (windage) that in turn increases the disturbance torque on the actuator. The disturbance is a lowfrequency signal with spectral content usually 10.1 Hard Disk Drive Servo System 207 below 500 Hz. The position noise signal η includes quantisation errors due to servo demodulator noise, ﬁnite resolution of the analoguetodigital converter, media noise and preampliﬁer noise. The position noise is a highfrequency signal with spectral content usually above 1 kHz. Since the measured PES is contaminated with noise, the true PES, yref − y , is not available. One of the limitations inherent in the design of servo controllers for high track density HDD is the inﬂuence of actuator mechanical resonant modes on the headpositioning servo. If the actuator input contains a periodic component with frequency equal to a resonance frequency, this component may be ampliﬁed greatly that results in large oﬀtrack deviation of the read/write heads. Usually, the actuator is mechanically designed in such a way that the resonant modes occur at frequencies that will be attenuated by the servo system. However, as servo bandwidth increases to meet higher performance requirements, this attenuation may not be achieved due to mechanical design constraints. It is also important to note that the presence of resonant modes may limit the servo bandwidth via stability margin constraints. With a reduced bandwidth, the servo system may not be able to achieve the desired performance. The rotary actuators of hard disks may have tens of resonances that may lead to a high order model. However, in practice only 3 to 4 main resonances are taken into account. Usually, these are the ﬁrst and second torsion modes (in the range 1500 − 2500 Hz) as well as the ﬁrst sway mode (in the range 8000 − 12000 Hz). A common approach to reduce the eﬀect of resonance modes is to put notch ﬁlters in the servoloop that attenuates or ﬁlters out vibrations at selected major resonant frequencies. However, each notch ﬁlter introduces phase margin loss at low frequencies thus reducing the system robustness. Also, the presence of uncertainty in the resonant modes may decrease signiﬁcantly the eﬃciency of those ﬁlters. Our goal in this chapter is to design a robust trackfollowing servo control system for a 3.5inch HDD with track density 25 400 TPI. The desired settling time is about 1 ms in the presence of four resonances, several uncertain parameters, position sensing noise and disturbances. The parameters of the rigidbody model and their tolerances are given in Table 10.1. For dimensional compatibility, the track density is given in tracks per metre, instead of in TPI. We now ﬁrst consider the derivation of a HDD servo system model. The dynamics of the rotary arm is described by the equation J d2 Θ = tm + td dt2 where J is the arm moment of inertia, Θ is the angle of arm rotation, tm is the VCM torque and td is the disturbance torque. The VCM torque is given by tm = kt ic 208 10 Robust Control of a Hard Disk Drive Table 10.1. Rigid body model parameters and tolerances Para Description meter J R kP A kt kb tpm ky Rcoil Rs arm moment of inertia arm length ampliﬁer gain VCM torque constant back e.m.f. constant tracks per meter position measurement gain coil resistance sense resistance in the power ampliﬁer feedback Lcoil coil inductance emax saturated power ampliﬁer voltage RPM disk rotation rate tw track width Value Units Tolerance ±10.0% ±0.1% ±0.0% ±10.0% ±10.0% – ±5.0% ±20.0% ±1.0%
+0, −15% −0, +5% ±1.0% ±1.0% 6.3857 × 10−6 5.08 × 10−2 10.0 9.183 × 10−2 9.183 × 10−2 106 1 .2 8.00 0 .2
0.001 12.0 7200 1 kg m2 m V/V N m/A N m/A tracks V/track Ω Ω
H V rev/min µm where kt is the motor torque constant and ic is the current through the VCM coil. The voice coil has a resistance Rcoil and an inductance Lcoil . An additional current sense resistance Rs is connected in serial with the voice coil to implement a feedback from the power ampliﬁer output. Hence the voice coil admittance is described by the transfer function Gvca (s) = 1/Rc ic (s) = τs + 1 ec (s) where ec is the input voltage to the voice coil, τ = Lcoil /Rc and Rc = Rcoil + Rs . The block diagram of the power ampliﬁer with voice coil is shown in Figure 10.3. The input of the voice coil is the diﬀerence ec = ep − eb , where ep is the output voltage of the ampliﬁer and eb = kb ω is the back electromotive force (e.m.f.) that is generated during the moving of the coil in the magnetic ﬁeld. Since the saturation voltage of the ampliﬁer is emax , in the absence of back e.m.f., the ampliﬁer will saturate for an input voltage greater than emax /kP A . In the study limited to linear systems, the ampliﬁer saturation is neglected. The length of the arc, corresponding to the arm rotation angle Θ, is equal to RΘ. For small values of Θ the number of tracks contained in the arc is R · Θ · tpm. This gives an output signal y = R · tpm · ky · Θ. If we neglect the dynamics of the voice coil, the transfer function of the servoactuator considered as a rigid body is obtained in the form of a dou 10.2 Derivation of Uncertainty Model 209 ω kb
+ emax
− eb ep
− emax − u kPA − ec 1 1 RC τ s + 1 ic RS
Fig. 10.3. Block diagram of the power ampliﬁer with voice coil ble integrator. Such a model oversimpliﬁes the system dynamics and cannot produce reliable results if used in the design. The next step is to take into account the high frequency resonant modes of the head disk assembly represented by the transfer function Hd (s). In the given case Hd (s) consists of four resonant modes and is obtained as
4 Hd (s) =
j =1 2 b2j ωj s + b2j −1 ωj 2 s2 + 2ξj ωj s + ωj (see Figure 10.4). Here ωj , ξj and b2j , b2j −1 are respectively the resonance frequency, the damping coeﬃcient and the coupling coeﬃcients of the j th mode, for j = 1, ..., 4. The resonance parameters are usually determined experimentally and for the servo system under consideration their values are shown in Table 10.2. It is important to note that all model parameters are known with some tolerances and may vary with the changing of working conditions as well as with time. Also, the closedloop system can be very sensitive to the external disturbance td and the positionsensing noise η . Both factors would lead to an actual system dynamics far away from the dynamics of the nominal closedloop system. Thus, it is necessary to use controlsystem design methods that ensure the desired closedloop stability and performance in the presence of uncertain parameters, noises and disturbances. 10.2 Derivation of Uncertainty Model
In order to implement robust control design methods we must have a plant model that incorporates uncertain parameters. As is seen from Tables 10.1 210 10 Robust Control of a Hard Disk Drive Hd(s)
( b2s + b1ω1)ω1 s + 2ξ1ω1s + ω12
2 ya1 ya2
th ta ( b4s + b3ω2)ω2 s + 2ξ2ω2s + ω22
2 ( b6s + b5ω3)ω3 s2 + 2ξ3ω3s + ω32 ya3 ya4 ( b8s + b7ω4)ω4 s + 2ξ4ω4s + ω42
2 Fig. 10.4. Transfer functions of resonant modes Table 10.2. Resonance parameters and tolerances Parameter ω1 ω2 ω3 ω4 b1 b2 b3 b4 b5 b6 b7 b8 ξ1 ξ2 ξ3 ξ4 Description pivot bearing resonance ﬁrst torsional resonance second torsional resonance ﬁrst sway resonance ﬁrst resonance coupling ﬁrst resonance coupling second resonance coupling second resonance coupling third resonance coupling third resonance coupling fourth resonance coupling fourth resonance coupling ﬁrst resonance damping second resonance damping third resonance damping fourth resonance damping Value 2π 50 2π 2200 2π 6400 2π 8800 0.006 0 0.013 −0.0018 0.723 −0.0015 0.235 −0.0263 0.05 0.024 0.129 0.173 Units rad/s rad/s rad/s rad/s – 1/s – 1/s – 1/s – 1/s – – – – Tolerance ±5.0% ±12.0% ±8.0% ±15.0% ±7.0% ±7.0% ±10.0% ±7.0% ±5.0% ±10.0% ±5.0% ±10.0% ±5.0% ±8.0% ±10.0% ±10.0% and 10.2, the total number of uncertain parameters is greater than 25, which complicates the analysis and design of a HDD servo system. In this study, we shall concentrate on those uncertainty parameters that inﬂuence the closedloop system behaviour most. The block diagram of the plant is shown in Figure 10.5. 10.2 Derivation of Uncertainty Model 211 kb
u
_ _ td ω kPA
Rs Gvca(s) ic kt tm +t a Hd(s) th 1 R.tpm Js s ky y Fig. 10.5. Block diagram of the plant Consider ﬁrst the derivation of the uncertainty model for the resonant modes. All four modes have similar transfer functions. A statespace model is x1 = ωx2 , ˙ x2 = ω (−x1 − 2ξx2 + ta ) ˙ ya = b1 x1 + b2 x2 ta
− + ω . x2 2 ξ x2 ω . x1 x1 Fig. 10.6. Block diagram of a resonant mode The block diagram corresponding to the state equations of a resonant mode is shown in Figure 10.6. The variations in the frequency ω and the damping coeﬃcient ξ are represented, respectively, by ω = ω (1 + pω δω ) and ξ = ξ (1 + pξ δξ ) where ω and ξ are the nominal values, pω and pξ are the maximum relative uncertainties with −1 ≤ δω ≤ 1 −1 ≤ δξ ≤ 1 being the relative variations in these parameters. 212 10 Robust Control of a Hard Disk Drive The parameter ω may be represented as an upper linear fractional transformation (LFT) in δω , ω = FU (Mω , δω ) with Mω = 0ω pω ω and the parameter ξ may be represented similarly as ξ = FU (Mξ , δξ ) with Mξ = 0ξ pξ ξ uω
ta
− ω + Mω yω . x2 vω x2 ω Mω zω . x1 x1 yξ
2 ξ uξ vξ Mξ Fig. 10.7. Resonant mode with uncertain parameters The block diagram of a resonant mode with uncertain parameters is given in Figure 10.7. Based on this diagram we derive the following equations yω x2 ˙ = zω x1 ˙ yξ vξ and ya = b1 b2 x1 x2 0ω pω ω = = uω ta − 2vξ − x1 0ω pω ω 0ξ pω ξ vω x2 uξ , x2 10.2 Derivation of Uncertainty Model 213 From these equations we further obtain the perturbed model of a resonant mode in the form of ⎤ ⎤ ⎡ ⎡ x1 ˙ x1 ⎢ x2 ⎥ ⎢ x2 ⎥ ⎥ ⎢˙ ⎥ ⎢ ⎢ −− ⎥ ⎢ −− ⎥ ⎥ ⎥ ⎢ ⎢ ⎥ ⎢ yω ⎥ ⎢ ⎥ = Π ⎢ uω ⎥ ⎢ ⎢ zω ⎥ ⎢ vω ⎥ ⎥ ⎥ ⎢ ⎢ ⎢ yξ ⎥ ⎢ uξ ⎥ ⎥ ⎥ ⎢ ⎢ ⎣ −− ⎦ ⎣ −− ⎦ ya ta where ⎡ Π=  0 pω 0  pω 0 −2ωpξ − −−− −−− −−−  0 0 −2ωpξ  0 0 0  0 0 0 − −−− −−− −−−  0 0 0   −    −  ω 0 ⎢ −ω −2ωξ ⎢ ⎢ −− − − − ⎢ ⎢ −ω −2ωξ ⎢ ⎢0 ω ⎢ ⎢0 ξ ⎢ ⎣ −− − − − b1 b2
⎤ 0 ω⎥ ⎥ −− ⎥ ⎥ ω⎥ ⎥ 0⎥ ⎥ 0⎥ ⎥ −− ⎦ 0 uω vω uξ ta yω zω yξ ya Fig. 10.8. Block representation of a resonant mode A block with four inputs and four outputs can be used to represent a resonant mode (Figure 10.8). We now consider other uncertain parameters of the plant. The uncertain parameters of the rigidbody model are taken as kt = k t (1 + pkt δkt ) J = J (1 + pJ δJ ) ky = k y (1 + pky δky ) where k t , J, k y are the corresponding nominal parameters and −1 ≤ δkt ≤ 1 −1 ≤ δJ ≤ 1 214 10 Robust Control of a Hard Disk Drive −1 ≤ δky ≤ 1 are variations. These parameters are represented as LFTs in the related uncertainties δkt , δJ , δky : kt = FU (Mkt , δkt ) J = FU (MJi , δJ ) ky = FU (Mky , δky ) where Mkt = −pJ 0 kt , MJi = −pJ pkt k t
1 J 1 J , Mky = 0 ky pky k y u ω1 vω1 uξ 1 ta 1 yω1 zω1 yξ1 ya1 uω2 vω2 uξ 2 ta 2 yω2 zω2 yξ2 ya2 ukt ykt ic Mkt tm td ta uω3 vω3 uξ 3 ta 3 yω3 zω3 yξ3 ya3 th uω4 vω4 uξ 4 ta 4 yω4 zω4 yξ4 ya4 Fig. 10.9. Representations of uncertain motor torque constant and resonant modes In Figure 10.9 we show the part of the uncertainty model involving the motor torque constant and the four resonant modes, and in Figure 10.10 we show the part of the model involving the arm moment of inertia and position measurement gain. Overall, we have twelve uncertain parameters but four of them (ω1 , ω2 , ω3 and ω4 ) are repeated twice. By “puling out” the uncertain parameters from 10.3 Closedloop Systemdesign Speciﬁcations 215 uJ J yJ
ω Θ uky
R.tpm ky yky
y th MJi Mky Fig. 10.10. Block diagram of uncertain arm moment of inertia and position gain the nominal part of the model, we obtain a perturbed plant model in the form of an upper LFT FU (Gnom , ∆) as shown in Figure 10.11 with a 15 × 15 matrix ∆, ∆ = diag(δω1 , δω1 , δξ1 , δω2 , δω2 , δξ2 , δω3 , δω3 , δξ3 , δω4 , δω4 , δξ4 , δkt , δJ , δky ) that contains all the uncertain parameters. In the given case the matrix Gnom is obtained by the function sysic using the interconnections shown in Figures 10.5, 10.7, 10.9 and 10.10. The system model is of order 11. The uncertainty model of the HDD servo system is implemented by the Mﬁle mod hdd.m. ∆ u Gnom y Fig. 10.11. Plant model in the form of an upper LFT 10.3 Closedloop Systemdesign Speciﬁcations
The design of the HDD servo controller will be ﬁrst conducted in the continuoustime case. In general, it may obtain best possible performance in the continuoustime case that can then be considered as a limit for discretetime designs. Also, in the continuoustime case it is easier to ﬁnd appropriate performance weighting functions that again may be implemented in the discretetime design. The block diagram of the closedloop system, which includes the feedback structure and the controller as well as the elements representing the model uncertainty and the performance objectives, is shown in Figure 10.12. 216 10 Robust Control of a Hard Disk Drive Wu eu ∆
w z
+ d
Gnom y
+ r + K u + Wp ey + + Wn n M
Fig. 10.12. Block diagram of the closedloop system with performance speciﬁcations The system has a reference input (r), an input disturbance (d), a noise (n) and two output costs (ey and eu ). The system M is an ideal model of performance, to which the designed closedloop system tries to match. The rectangle, shown with dashed lines, represents the plant transfer function matrix G. Inside the rectangle is the nominal model Gnom of the Hard Disk Drive plant and the block ∆ that parameterises the model uncertainties. The matrix ∆ is unknown, but has a diagonal structure and norm bound ∆ ∞ < 1. The performance objective requires the transfer matrices from r, d and n to ey and eu to be small in the sense of · ∞ , for all uncertain matrices ∆ under consideration. The position noise signal is obtained by passing the unitbounded signal n through the weighting transfer matrix Wn . The transfer matrices Wp and Wu are used to reﬂect the relative signiﬁcance of the diﬀerent frequency ranges for which the performance is required. Hence, the performance objective can be recast, with possible slight conservativeness, as that the · ∞ of the transfer function matrix from r, d and n to ey and eu is less than 1. It is straightforward to show that ⎡⎤ r ey Wp (So GK − M ) Wp So G −Wp So GKWn ⎣ ⎦ d (10.1) = eu Wu Si K −Wu KSo G −Wu KSo Wn n where Si = (I + KG)−1 , So = (I + GK )−1 are the input and output sensitivities, respectively. Note that So G is the transfer function between d and y. 10.3 Closedloop Systemdesign Speciﬁcations 217 This objective is similar to the usual mixed S/KS sensitivity optimization and it would meet both robust stability and performance criteria by incorporating performance speciﬁcations in the matching model M . The six functions to be minimised are described in Table 10.3.
Table 10.3. H∞ functions to be minimised Description Function Wp (So GK − M ) Weighted diﬀerence between the ideal and actual closedloop systems Weighted disturbance sensitivity Wp So G Weighted noise sensitivity Wp So GKWn Weighted control eﬀort due to reference Wu Si K Weighted control eﬀort due to disturbance Wu KSo G Weighted control eﬀort due to noise Wu KSo Wn The controller synthesis problem of the Hard Disk Drive Servo System is to ﬁnd a linear, output feedback controller K (s) that has to ensure the following properties of the closedloop system. Nominal performance: The closedloop system achieves nominal performance if the performance objective is satisﬁed for the nominal plant model. The nominal performance objective is to satisfy the inequality Wp (So Gnom K − M ) Wp So Gnom −Wp So Gnom KWn Wu Si K −Wu KSo Gnom −Wu KSo Wn Robust stability: The closedloop system achieves robust stability if the closedloop system is internally stable for each possible plant dynamics G = FU (Gnom , ∆). Robust performance: The closedloop system must remain internally stable for each G = FU (Gnom , ∆) and in addition the performance criterion Wp (So GK − M ) Wp So G −Wp So GKWn Wu Si K −Wu KSo G −Wu KSo Wn <1
∞ < 1 (10.2)
∞ (10.3) 218 10 Robust Control of a Hard Disk Drive should be satisﬁed for each G = FU (Gnom , ∆). This means that the structured ⎡⎤ w ⎢r⎥ ⎢ ⎥ to singular value, corresponding to the transfer function matrix from ⎣ ⎦ d n ⎡⎤ z ⎣ ey ⎦ (in Figure 10.12) should be less than 1, with regard to ∆ 0 where 0 ∆F eu ∆F is a ﬁctitious 3 × 2 complex uncertainty block. In addition to these requirements it is desirable that the controller designed would have acceptable complexity, i.e. it is of reasonably low order. According to the above considerations, the aim of the design is to determine a controller K , such that for all stable perturbations ∆ with ∆ ∞ < 1, the perturbed closedloop system remains stable and the performance objective is satisﬁed for all such perturbations. 10.4 System Interconnections
The internal structure of the eighteeninput, seventeenoutput system, which is saved in the variable sys ic, is shown in Figure 10.13. The inputs and outputs of the uncertainties are saved in the variables pertin and pertout, the reference, the disturbance and the noise in the variables ref, dist, noise, respectively, and the control signal in the variable control. Both variables pertin and pertout have ﬁfteen elements and ref, dist, noise, y, y c, e y and e u are scalar variables.
pertin {115} pertout {115} + control
+ Wn noise y_c + Fig. 10.13. Block diagram of the openloop system with performance speciﬁcations −
+ dist + Gnom y e_y Wp
e_u Wu
M − ref 10.5 Controller Design in Continuoustime 219 The openloop connection is obtained by the Mﬁle olp hdd. The schematic diagram showing the speciﬁc input/output ordering for the variable sys ic is shown in Figure 10.14. pertin{1} pertin{2} pertin{3} pertin{4} pertin{5} pertin{6} pertin{7} pertin{8}
pertin{9} pertin{10} pertin{11} pertin{12} pertin{13} pertin{14} pertin{15} ref dist noise control 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 sys_ic 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 pertout{1} pertout{2} pertout{3} pertout{4} pertout{5} pertout{6} pertout{7} pertout{8} pertout{9}
pertout{10} pertout{11} pertout{12} pertout{13} pertout{14} pertout{15} ey eu yc Fig. 10.14. Schematic diagram of the openloop connection The blockdiagram used in the simulation of the closedloop system is shown in Figure 10.15. The corresponding closedloop interconnection, which is saved in the variable sim ic, is obtained by the Mﬁle sim hdd. The schematic diagram showing the speciﬁc input/output ordering for the variable sim ic is shown in Figure 10.16. 10.5 Controller Design in Continuoustime
There are a few further “hard” constraints for the controller design, as listed below. 220 10 Robust Control of a Hard Disk Drive pertin {115} pertout {115} dist + + Gnom y control + Wn noise y_c K Fig. 10.15. Block diagram of the closedloop system Peak closedloop gain < 4 dB Openloop gain > 20 dB at 100 Hz Steadystate error < 0.1 µ m Settling time < 1.5 ms Closedloop bandwidth > 1000 Hz Gain margin > 5 dB Phase margin > 40 deg The designed control system must achieve good disturbance rejection and noise attenuation. In addition, it is necessary to have control action smaller than 1.2 V in order to avoid powerampliﬁer saturation. To design the controller we shall use µsynthesis, H∞ optimisation and the H∞ loop shaping design procedure (LSDP) in this exercise. In the case of µsynthesis and H∞ optimisation design, we have to specify the model transfer function M and the weighting transfer functions Wn , Wp and Wu . The model transfer function is chosen so that the time response to the reference signal would have an overshoot less than 20 % and a settling time less than 1 ms. A possible model satisfying the requirements is M= 3.75 × 10−9 s2 1 + 1.2 × 10−4 s + 1 − + ref 10.5 Controller Design in Continuoustime
pertin{1} pertin{2} pertin{3} pertin{4} 221 pertin{5} pertin{6} pertin{7} pertin{8}
pertin{9} pertin{10} pertin{11} pertin{12} pertin{13} pertin{14} pertin{15} ref dist noise control 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 sym_ic 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 pertout{1} pertout{2} pertout{3} pertout{4} pertout{5} pertout{6} pertout{7} pertout{8} pertout{9}
pertout{10} pertout{11} pertout{12} pertout{13} pertout{14} pertout{15} y control yc Fig. 10.16. Schematic diagram of the closedloop connection The noise shaping function Wn is determined on the basis of the spectral density of the position noise signal. In the given case it is taken as the highpass ﬁlter 0.1s + 1 Wn = 6 × 10−4 0.001s + 1 whose output has a signiﬁcant spectral content above 500 Hz. For this shaping ﬁlter, the position noise signal is only 0.6 mV in the lowfrequency range but it is 60 mV in the highfrequency range that corresponds to a position error of 5% of the track width. The weighting functions Wp and Wu have to be chosen so as to ensure an acceptable tradeoﬀ between the nominal performance and the robust performance of the closedloop system. They are selected in the course of the µsynthesis, since this particular design method allows us to achieve maximum performance of the perturbed, closedloop system. 10.5.1 µDesign In the µsynthesis it is necessary to specify individually the inputs and outputs of the uncertainty blocks. In this exercise, only the inputs and outputs 222 10 Robust Control of a Hard Disk Drive of the uncertainty in the rigidbody model (i.e. the parameters kt , J and ky ) will be considered. The inclusion of the uncertainties of resonant modes would make the D − K iterations diﬃcult to converge. This conﬁrms that the resonant modes may create diﬃculties in the controller design. However, these resonant modes (with nominal values) are included in the plant dynamics and will be considered, with parametric variations, in the assessment of designed controllers in Section 10.6. u kt uJ uky r d n nominal_dk ykt yJ yky ey eu u K yc Fig. 10.17. Block diagram of the closedloop system with µcontroller The block diagram of the closedloop system used in the µsynthesis is shown in Figure 10.17. Denote by P (s) the transfer matrix of the seveninput, sixoutput, openloop system nominal dk and let the block structure of the uncertainty ∆P be deﬁned by ∆P := ∆r 0 0 ∆F : ∆r ∈ R3×3 , ∆F ∈ C 3×2 The ﬁrst block of this uncertainty matrix corresponds to the block ∆r containing the uncertainties in the rigidbody model. The second block ∆F is a ﬁctitious uncertainty block that is used for the performance requirements in the framework of the µ approach. In order to satisfy the robust performance requirements it is necessary to ﬁnd a stabilising controller K (s), such that for each frequency ω ∈ [0, ∞] the structured singular value satisﬁes the condition µ∆P [FL (P, K )(jω )] < 1 The fulﬁllment of this condition guarantees robust performance of the closedloop system, i.e. Wp (So GK − M ) Wp So G −Wp So GKWn Wu Si K −Wu KSo G −Wu KSo Wn <1
∞ (10.4) 10.5 Controller Design in Continuoustime 223 The µsynthesis is conducted by using the Mﬁle ms hdd along with the ﬁle dk hdd describing the interconnection of the design. It should be noted that the robust performance achieved during the D − K iteration is only with respect to the uncertainties in the rigidbody model, since only these uncertainties are taken into account in the design. Hence it is necessary to make additional robust stability and robust performance analysis that takes into account the other uncertainties. The closedloop system performance speciﬁcations are reﬂected by the weighting performance function Wp (s). Three performance weighting functions are considered in the design. They are Wp1 (s) = 10−4 Wp2 (s) = 10−4 and Wp3 (s) = 10−4 s2 + 8 × 104 s + 108 + 7 × 104 s + 2.5 × 104 s2 s2 + 4 × 105 s + 2.5 × 109 s2 + 3.9 × 105 s + 6.25 × 105 s2 + 1.15 × 106 s + 3.6 × 1010 s2 + 1.05 × 106 s + 9 × 106 The inverse of performance weighting functions 80 70 Solid line: W p1 −1 60 Dashed line: W p2 −1 Dash−dotted line: W p3 −1 50
Magnitude (dB) 40 30 20 10 0 −4 10 10 −2 10 0 10
Frequency (Hz) 2 10 4 10 6 Fig. 10.18. Frequency response of the inverse of Wp In Figure 10.18 we show the frequency responses of the inverses of these − − − three weighting functions, i.e. Wp11 , Wp21 and Wp31 . It is seen that in all three 224 10 Robust Control of a Hard Disk Drive selections, the aim is to achieve a small diﬀerence between the system and model outputs, and a small eﬀect of the disturbance on the system outputs. This will ensure good tracking of the reference input and small error due to lowfrequency disturbances. Changing the performance weighting function from Wp1 to Wp3 moves the inverse weighting frequency response to the right (to higher frequencies) which forces the system to match the model in over a larger frequency range. The control weighting function is usually chosen as highpass ﬁlters in order to ensure that the control action will not exceed 1.2 V . Again, three such weighting functions are considered in the design and are listed below: Wu1 (s) = 10−6 Wu2 (s) = 10−6 and 0.385s2 + s + 1 10−4 s2 + 2 × 10−3 s + 1 0.55s2 + s + 1 + 2.1 × 10−3 s + 1 10−4 s2 4.05s2 + s + 1 + 2 × 10−3 s + 1 These three control weighting functions are paired with the three performance weighting functions, in the given order, in the µsynthesis. The ﬁnal choice of the appropriate performance and control weighting functions is obtained by comparing the results from the corresponding µdesigns. (Six D − K iterations are used in each case.) The robust stability and robust performance analysis conducted by the ﬁle mu hdd gives the results shown in Table 10.4. Wu3 (s) = 3 × 10−6 10−4 s2
Table 10.4. Robust stability and robust performance for three controllers Controller Order Robust stability Robust performance µmax µmax 0.436 0.3730 38 1 0.549 0.412 38 2 0.904 0.577 30 3 In the ﬁrst and third design cases, corresponding to the weighting functions (Wp1 , Wu1 ) and (Wp3 , Wu3 ), we take the controllers from the 6th D − K iteration and in the second case we take the controller obtained at the 5th D − K iteration. The closedloop system achieves robust stability and robust performance for all three controllers; however, the best results, in terms of gain and phase margins, come from the ﬁrst controller. This can also be seen from the corresponding µvalues. The gain and phase margins for all three design cases are listed in Table 10.5. 10.5 Controller Design in Continuoustime Table 10.5. Gain and phase margins for three controllers 225 Controller Gain margin Phase margin deg dB 59.0 10.9 1 50.5 8.9 2 36.9 8.9 3 The closedloop transient responses are shown in Figure 10.19, for a simulated runout of 1 track width (1µ m) and a torque disturbance td = 0.0005 N m.
Closed−loop transient response
1.2 1 0.8 Solid line: the first controller Position error signal (track) 0.6 Dashed line: the second controller 0.4 Dash−dotted line: the third controller 0.2 0 −0.2 −0.4 −0.6 0 0.5 1 1.5 2 Time (s) 2.5 3 3.5 x 10 4
−3 Fig. 10.19. Transient responses of three µcontrollers It is seen from Figure 10.19 that the ﬁrst controller gives a response with the smallest undershoot (about 20%), but this response is the slowest one. The third controller gives the fastest response but the undershoot in this case is the largest one (about 50%). Figure 10.20 shows that as a result of the appropriate tuning of the control weighting functions all three controllers produce a control action whose amplitude is slightly less than 1.2 V. The comparison of the transient responses to disturbance, shown in Figure 10.21, reveals that the worst disturbance rejection is found in the ﬁrst 226 10 Robust Control of a Hard Disk Drive
Control action due to the reference 1 0.8 Solid line: the first controller 0.6 Dashed line: the second controller 0.4 Dash−dotted line: the third controller u (V)
0.2 0 −0.2 −0.4 0 0.5 1 1.5 2 2.5 Time (s) 3 3.5 4 4.5
x 10 5
−4 Fig. 10.20. Control actions of three µcontrollers controller case and the best in the third controller case. This is a result of the tightest closedloop bandwidth of 2 kHz (measured at −3 dB) in the ﬁrst controller case compared with the bandwidth of 3.2 kHz in the third controller case (see Figure 10.22). Note that the largest peak of the magnitude is found in the third controller case, which results in the largest undershoot of the transient response. The results obtained from diﬀerent weighting functions show that moving the frequency response of the inverse performance weighting function to the right would lead to larger closedloop system bandwidth, and consequently, faster timeresponses of the closedloop system, though may introduce larger over(under)shoot. However, at the same time, this may reduce the robustness of the closedloop system. Hence, one has to compromise between the diﬀerent objectives in the design. In the present design case, it seems that the second controller leads to a good tradeoﬀ between the requirements in terms of transient response, disturbance rejection and robustness. Hence, we will use the weighting functions Wp2 and Wu2 in both the µsynthesis and H∞ design. 10.5 Controller Design in Continuoustime
Transient response to the disturbance
0.05 227 0 −0.05 Position error signal (track) −0.1 −0.15 −0.2 Solid line: the first controller Dashed line: the second controller −0.25 Dash−dotted line: the third controller −0.3 0 0.5 1 1.5 2 Time (s) 2.5 3 3.5 x 10 4
−3 Fig. 10.21. Transient responses to disturbance of three µcontrollers Closed−loop magnitude plot
10 8 6 4 Magnitude (dB) 2 0 −2 Solid line: the first controller
−4 Dashed line: the second controller
−6 Dash−dotted line: the third controller
−8 −10 2 10 10 Frequency (Hz) 3 10 4 Fig. 10.22. Closedloop magnitude plots of three µcontrollers 228 10 Robust Control of a Hard Disk Drive 10.5.2 H∞ Design The aim of the design in this case is to ﬁnd an H∞ (sub)optimal, output controller for the interconnection shown in Figure 10.23 in which we exclude the inputs and outputs of the uncertainty block. r d n P ey eu u K yc Fig. 10.23. Closedloop system with H∞ controller The variable hin ic that corresponds to the transfer function P of the openloop system is obtained by the command line hin_ic = sel(sys_ic,[16:18],[16:19]) The H∞ optimal control minimises the ∞norm of FL (P, K ) with respect to the transfer function K of the controller. In the given case FL (P, K ) (as the transfer function matrix in (10.2)) is the nominal closedloop transfer function matrix from the reference, disturbance and noise signals (the variables ref, dist and noise) to the weighted outputs e y and e u. The design is conducted using the Mﬁle hinf hdd.m, which computes a (sub)optimal H∞ control law for a given openloop system. The value of γ is chosen 10% higher than the minimum possible value. The controller such obtained is of 18th order. 10.5.3 H∞ Loopshaping Design The design of a robust control for the Disk Drive System can be successfully accomplished using the H∞ loopshaping design procedure (LSDP) as well, as described in this subsection. Note that in the case of H∞ LSDP, we do not use the performance weighting function implemented in the cases of µ and H∞ designs. Instead, we use a preﬁlter W1 and a postﬁlter W2 in order to shape appropriately the frequency response of the augmented, openloop transfer function W2 GW1 (see Chapter 5). In the present case we choose a preﬁlter with transfer function W1 = 4 0.05s + 1 s 10.6 Comparison of Designed Controllers 229 The gain of 4 is chosen to ensure a steadystate error, due to the disturbance, of less than 10% of the track width. Larger gain leads to smaller steadystate errors but possibly worse transient response. The postﬁlter is taken simply as W2 = 1. The magnitude plots of the original and shaped systems are shown in Figure 10.24. The design of the H∞ LSDP controller uses the Mﬁle lsh hdd that implements the function ncfsyn. The controller obtained is of order 13.
Frequency responses of the plant and the shaped plant
200 150 Magnitude (dB) 100 50 Solid line: the original plant Dashed line: the shaped plant 0 −50 −2 10 10 −1 10 0 10 Frequency (Hz) 1 10 2 10 3 10 4 Fig. 10.24. Magnitudes of the original and shaped systems 10.6 Comparison of Designed Controllers
The comparison of the closedloop system with µ, H∞ and H∞ LSDP controllers begins with the robust stability and performance analysis. The robust stability is tested on the upper 15 × 15 block of the closedloop transfer function matrix. To achieve robust stability it is necessary that the µvalues are less than 1 over the frequency range. In Figure 10.25 we compare the structured singular values, for the robust stability analysis, of the closedloop systems with the three controllers (µ, H∞ , and H∞ LSDP). This shows that all three closedloop systems achieve the robust stability. The best robustness is obtained by the µcontroller. The nominal performance is tested on the bottom 3 × 2 block of the closedloop transfer matrix. The comparison of the nominal performance for the three controllers, in Figure 10.26, shows that the performance in the H∞ 230 10 Robust Control of a Hard Disk Drive
Robust stability of three controllers
1 0.9 Solid line: µ controller Dashed line: H controller
0.8
∞ Dash−dotted line: loop−shaping controller
0.7 Upper bound of µ 0.6 0.5 0.4 0.3 0.2 0.1 1 10 10 2 10 Frequency (Hz) 3 10 4 10 5 Fig. 10.25. Robust stability of the closedloop systems LSDP controller case over the lowfrequency range is much worse than that in the other two cases. This is a consequence of the fact that the performance speciﬁcations used in the µdesign and H∞ design are not explicitly adopted in the design of the H∞ LSDP controller. The larger magnitude over the low frequencies leads to an expectation of larger steadystate errors. The robust performance of the closedloop system is studied also with the aid of the µanalysis. The closedloop transfer function matrix has 18 inputs and 17 outputs. The ﬁrst 15 inputs/outputs correspond to the 15 channels connecting the perturbation matrix ∆, while the last 3 inputs and 2 outputs correspond to the weighted sensitivity of the closedloop system. Hence, for a µanalysis of the robust performance the blockstructure of the uncertainty should consist of a 15 × 15 diagonal real uncertainty block and a 3 × 2 complex uncertainty block. ∆P := ∆0 0 ∆F : ∆ ∈ C 15×15 , ∆F ∈ C 3×2 The robust performance (with respect to the uncertainty and performance weighting functions) is achieved if and only if for each frequency µ∆P (.), computed for the closedloop frequency response, is less than 1. The robust performance test for all controllers is shown in Figure 10.27. Again, the H∞ LSDP controller shows large µvalues over the lowfrequency range. 10.6 Comparison of Designed Controllers
10
1 231 Nominal performance of three controllers 10 0 10
Magnitude −1 10 −2 Solid line: µ controller Dashed line: H controller ∞ Dash−dotted line: loop−shaping controller 10 −3 10 −4 10 1 10 2 10 Frequency (Hz) 3 10 4 10 5 Fig. 10.26. Nominal performance of the closedloop systems Robust performance of three controllers 10 0 Upper bound of µ Solid line: µ controller Dashed line: H controller
∞ Dash−dotted line: loop−shaping controller 10
1 10 2 10 Frequency (Hz) 3 10 4 10 5 Fig. 10.27. Robust performance of the closedloop systems The robust stability and robust performance analysis also shows that the worse results may possibly occur over frequencies around the resonant frequencies. 232 10 Robust Control of a Hard Disk Drive
Closed−loop magnitude plot
10 8 Solid line: µ controller 6 Dashed line: H controller ∞ 4 Dash−dotted line: loop−shaping controller Magnitude (dB) 2 0 −2 −4 −6 −8 −10 1 10 10 2 10 3 10 4 Frequency (Hz) Fig. 10.28. Magnitudes of the closedloop systems Closed−loop phase plot 50 0 −50 −100
−150 Solid line: µ controller
Phase (deg) −200 Dashed line: H controller ∞ −250 Dash−dotted line: loop−shaping controller −300 −350 −400 −450 1 10 10 2 10
Frequency (Hz) 3 10 4 Fig. 10.29. Phase plots of the closedloop systems The Bode plots of the closedloop systems with three controllers are shown in Figures 10.28 and 10.29. It is seen that the system with the H∞ LSDP controller has the largest bandwidth that may lead to a fast transient response. 10.6 Comparison of Designed Controllers 233 A larger bandwidth, however, may also lead to a larger eﬀect of noises and resonances.
Output sensitivity to the disturbance
60 50 40 Magnitude (dB) 30 20 10 Solid line: µ controller Dashed line: H controller ∞ 0 Dash−dotted line: loop−shaping controller −10 −2 10 10 −1 10 0 10 Frequency (Hz) 1 10 2 10 3 10 4 Fig. 10.30. Output sensitivity to disturbance The plot of the output sensitivity to disturbances (Figure 10.30) shows that in the lowfrequency range the inﬂuence of the disturbance on the system output in the case of the H∞ LSDP controller is the largest. Better disturbance attenuation for this controller may be achieved by choosing higher gain in the preﬁlter. This will lead, however, to greater overshoot in the transient response. The sensitivity to disturbance in the cases of µ and H∞ controllers reaches a maximum value in the frequency range from 300 Hz to 700 Hz, which is inside of the closedloop bandwidth. This means that the closedloop system will be susceptible to disturbances over that frequency range. It is interesting to notice that the sensitivity of the H∞ LSDP controller over the same range is 8 dB lower. The output sensitivity to noise is shown in Figure 10.31. (Note that the sensitivity is with respect to the unitbounded noise, the input of the noise shaping ﬁlter.) The lowest sensitivity to noise has been achieved by the system with the µcontroller and the largest sensitivity by the system with the H∞ LSDP controller. The Bode plots of the three controllers are compared in Figures 10.32 and 10.33. It is seen that the H∞ LSDP controller has a very low gain in the range from 1 Hz to 500 Hz which is the reason for the weak attenuation of the disturbances over that range. 234 10 Robust Control of a Hard Disk Drive
Output sensitivity to the noise
−15 −20 −25 −30 Magnitude (dB) −35 −40 −45 −50 Solid line: µ controller Dashed line: H controller ∞ Dash−dotted line: loop−shaping controller −55 −60 −65 −1 10 10 0 10 1 10 2 10 3
10 4 Frequency (Hz) Fig. 10.31. Output sensitivity to noise Controller magnitude plot
30 20 10 0 Magnitude (dB) −10 −20 −30 Solid line: µ controller Dashed line: H controller ∞ −40 Dash−dotted line: loop−shaping controller −50 −2 10 10 −1 10 0 10 1 10 Frequency (Hz) 2 10 3 10 4 10 5 10 6 Fig. 10.32. Magnitude plots of three controllers The transient responses of the closedloop systems are obtained by using the ﬁle clp hdd. In Figure 10.34 we show the transient responses of the closedloop systems to a reference signal, equivalent to 1 track. While for the H∞ 10.6 Comparison of Designed Controllers
Controller phase plot 235 150
Solid line: µ controller 100 Dashed line: H controller ∞ Dash−dotted line: loop−shaping controller 50 Phase (deg) 0 −50 −100 −150 −2 10 10 −1 10 0 10 1 10 Frequency (Hz) 2 10 3 10 4 10 5 10 6 Fig. 10.33. Phase plots of three controllers Closed−loop transient response
1.2 1 Solid line: µ controller Dashed line: H controller ∞ Dash−dotted line: loop−shaping controller 0.8 0.6 Position error signal (track) 0.4 0.2 0 −0.2 −0.4 −0.6 −0.8 0 0.5 1 1.5 2 x 10 2.5
−3 Time (s) Fig. 10.34. Transient responses with three controllers and H∞ LSDP controllers the undershoot is about 60%, it is only 28% for the µcontroller. The settling time for the H∞ LSDP, µ and H∞ controllers is 0.8 ms, 1 ms and 1.5 ms, respectively. 236 10 Robust Control of a Hard Disk Drive
Control action due to the reference
1.5 1 Solid line: µ controller Dashed line: H controller
∞ 0.5 Dash−dotted line: loop−shaping controller u (V)
0 −0.5 −1 0 0.5 1 1.5 2 2.5 Time (s) 3 3.5 4 4.5
x 10 5
−4 Fig. 10.35. Control actions of three controllers The control actions of the three controllers are shown in Figure 10.35. For all controllers the control signal amplitude does not exceed 1.2 V, as required. In Figure 10.36 we show the system response to a step torque disturbance td = 0.0005 N m (equivalent to a force of 9.8 × 10−3 N applied to the disk head sssembly). The transient error for the H∞ LSDP controller has the smallest undershoot (11.5%) but has a nonzero steadystate error. This reveals that in the given case the LSDP controller does not have integrating action with respect to the disturbance. The transient error for µ and H∞ controllers is less than 17% of the track width and the steadystate error is practically equal to zero. The output response to the positionsensing noise is simulated for a noise signal with an amplitude that does not exceed 60 mV (5% of the track width). This signal is obtained at the output of the noise shaping ﬁlter whose input is chosen as a sequence of uniformly distributed random numbers in the interval [−1, 1]. In the case of the µcontroller the output due to noise is less than 1.9% of the track width. The largest output to the noise (2.3% of the track width) is seen in the H∞ LSDP controller case due to the largest closedloop bandwidth of this controller. The comparison of the robust stability and robust performance for the three controllers, as well as the comparison of the corresponding frequency 10.7 Controllerorder Reduction
Transient response to the disturbance
0.02 237 0 −0.02 −0.04 Solid line: µ controller Dashed line: H controller
∞ Position error signal (track) −0.06 −0.08 Dash−dotted line: loop−shaping controller −0.1 −0.12 −0.14 −0.16 −0.18 0 0.5 1 1.5 2 Time (s) 2.5 3 3.5 x 10 4
−3 Fig. 10.36. Transient disturbance responses of three controllers and transient responses shows that it is reasonable to conclude that the µ controller is preferable. 10.7 Controllerorder Reduction
The controller obtained by the µsynthesis is initially of 38th order. It is useful to reduce as much as possible the controller order, which will simplify the implementation and increase the reliability. To do this we use the system balancing followed by optimal Hankel approximation (see Chapter 7). There is a clear gap between the 12th and 13th Hankel singular values. Hence, the order of the µcontroller is reduced to 12. Further reduction of the controller order leads to deterioration of the closedloop performance. In Figures 10.37 and 10.38, we compare the Bode plots of the full order and reducedorder controllers. The corresponding plots practically coincide with each other, which implies similar performances in the closedloop systems. In particular, the transient responses of the closedloop system with full order and that with the reducedorder controller are practically undistinguishable. 238 10 Robust Control of a Hard Disk Drive
Controller magnitude plots
30 20 10 Magnitude (dB) 0 −10 −20 Solid line: the full−order controller Dashed line: the reduced−order controller −30 −40 −2 10 10 −1 10 0 10 Frequency (Hz) 1 10 2 10 3 10 4 Fig. 10.37. Magnitude plots of full and reducedorder µcontrollers Controller phase plots 150 100 Solid line: the full−order controller Dashed line: the reduced−order controller 50 Phase (deg) 0 −50 −100 −150 −2 10 10 −1 10 0 10 Frequency (Hz) 1 10 2 10 3 10 4 Fig. 10.38. Phase plots of full and reducedorder µcontrollers 10.8 Design of Discretetime Controller 239 10.8 Design of Discretetime Controller
In general, there are two approaches to designing a discretetime servo controller. The ﬁrst approach is to sample the already designed continuoustime controller at a given sampling frequency fs = 1/Ts . This may be accomplished by the Mﬁle dcl hdd.m that utilises the Robust Control Toolbox function samhld. It is assumed that the controlaction calculation requires one sampling period Ts . This introduces a pure delay equal to Ts that is approximated by a rational transfer function using the command pade. The resultant sampleddata, closedloop system is simulated by using the function sdtrsp. This approach gives satisfactory results for a suﬃciently high sampling frequency (say, 100 kHz in the given case). The second method is to sample the continuoustime, openloop system (including the weighting ﬁlters) and to design directly a discretetime controller by using H∞ optimisation (implementing the function dhinfsyn) or µsynthesis (implementing the function dkit). The choice of the sampling frequency in the discretetime case has a strong inﬂuence on the closedloop system performance. A low sampling frequency limits the system bandwidth and would deteriorate the transient performance such as the disturbance rejection. On the other hand, the increase of the sampling frequency would complicate the controller implementation and raise the cost of the HDD. Later we consider the µsynthesis of the discretetime controller for two sampling rates – 24 kHz and 36 kHz. In both cases we use the same performance weighting function Wp2 (s) = 10−4 s2 + 4 × 105 s + 2.5 × 109 + 3.9 × 105 s + 6.25 × 105 s2 utilised already in the continuoustime design. Depending on the sample rate we use two diﬀerent control weighting functions Wu1 (s) = 10−6 (for fs = 24 kHz) and Wu2 (s) = 10−6 7.5−5 s2 1.04s2 + 2s + 1 . + 2 × 10−3 s + 1 4s2 + 2s + 1 2 × 10−3 s2 + 2 × 10−3 s + 1 (for fs = 36 kHz). This allows, in both cases, to obtain control signals that do not exceed 1.2 V. The noise shaping ﬁlter is the same as in the continuoustime case. The sampling of the extended openloop system for the given sampling rate is conducted by the Mﬁle dlp hdd.m. The discretetime µsynthesis is 240 10 Robust Control of a Hard Disk Drive accomplished by the ﬁle dms hdd.m that is used in conjunction with the auxiliary ﬁle ddk hdd.m. The ﬁle ddk hdd.m sets the structure of the uncertainty and the parameter values of the D − K iteration. As in the continuoustime µsynthesis, only the rigidbody uncertain parameters are taken into account. The frequency is set on the unit circle in the interval [0, π ]. In the discretetime case it is also necessary to add the operator DISCRETE_DK = 1; in the ﬁle ddk hdd.m. The results from the µsynthesis for fs = 24 kHz show that for the chosen weighting functions the closedloop system almost achieves robust performance at the ﬁfth D − K iteration (µmax = 1.06) but the closedloop response is relatively slow and the undershoot is large (44%). The maximum control amplitude is 1.19 V. To obtain better results it is necessary to increase the sampling frequency.
Robust stability Solid line: the upper bound Dashed line: the lower bound 10 0 10 −1 10 −2 µ 10 −3 10 −4 10 −5 10 1 10 2 10 Frequency (Hz) 3 10 4 10 5 Fig. 10.39. Robust stability of fs = 36 kHz design We now present in more detail the results from the µsynthesis at fs = 36 kHz. In this case an appropriate controller is obtained after three D − K iterations and the maximum robust performance achieved is µmax = 1.071. In Figures 10.39 and 10.40, we show the µplots, obtained by the Mﬁle dmu hdd.m, for robust stability analysis and robust performance analysis, respectively. In both plots the worst results are seen around the second resonant frequency of 2.2 kHz. 10.8 Design of Discretetime Controller
Robust performance 241 10 1 Solid line: the upper bound Dashed line: the lower bound
0 10 µ 10 −1 10 −2 10 1 10 2 10 Frequency (Hz) 3 10 4 10 5 Fig. 10.40. Robust performance of fs = 36 kHz design The closedloop transient response is obtained by the ﬁle dsl hdd.m that uses the function sdtrsp. The function sdtrsp also computes the control signal obtained at the output of the digitaltoanalogue converter. The closedloop transient response is shown in Figure 10.41 and the corresponding control action in Figure 10.42. The undershoot of the transient response is less than 36% and the peak amplitude of the control is less than 1.05 V. The transient response to disturbance is shown in Figure 10.43. Overall, the results obtained are almost as good as the results obtained with the continuoustime, µcontroller. 242 10 Robust Control of a Hard Disk Drive
Closed−loop sampled−data transient response 1.2 1 0.8 Position error signal (track) 0.6 0.4 0.2 0 −0.2 −0.4 0 0.5 1 1.5 2 2.5 Time (s) 3 3.5 4 4.5 5 x 10
−3 Fig. 10.41. Transient response of fs = 36 kHz design Controller output due to the reference 1.5 1 0.5 u (V) 0 −0.5 −1 −1.5 0 0.1 0.2 0.3 0.4 0.5 Time (s) 0.6 0.7 0.8 0.9 1 x 10
−3 Fig. 10.42. Control action of fs = 36 kHz design 10.8 Design of Discretetime Controller
Transient response to the disturbance 243 0.1 0.05 0
Position error signal (track) −0.05 −0.1 −0.15 −0.2 −0.25 0 0.5 1 1.5 2 2.5 Time (s) 3 3.5 4 4.5 x 10 5
−3 Fig. 10.43. Transient response to disturbance of fs = 36 kHz design 244 10 Robust Control of a Hard Disk Drive 10.9 Nonlinear System Simulation
In order to obtain a realistic idea about the behaviour of the designed system, the nonlinear, closedloop servo system is simulated by using Simulink r . For this aim, two models are developed, namely c hdd.mdl for the continuoustime system and d hdd.mdl for the sampleddata system. In the simulation we take into account the ampliﬁer saturation, which was neglected in the design so far. Both models allow us to simulate the closedloop system for diﬀerent reference, disturbance and noise signals. Before simulating the continuoustime system it is necessary to assign the model parameters by using the Mﬁle init c hdd.m. The sampleddata model involves the discretetime controller, 16bit analoguetodigital converter with maximum input voltage 2.5 V and 16bit digitaltoanalogue converter with maximum output voltage 10 V. It is assumed that the discretetime controller is implemented on a digital signal processor(DSP) with word length of 64 bits. These parameters are set prior to the simulation by using the Mﬁle init d hdd.m. It is assumed that the control action calculation requires one sampling period Ts . In Figure 10.44 we show the Simulink r model d hdd.mdl of the nonlinear, sampleddata, closedloop system. As in the linear case, the transient responses of the nonlinear closedloop system are obtained for a simulated runout of 1 track width (1µm) and torque disturbance td = 0.0005 N m. In Figure 10.45 and in Figure 10.46 we compare the results from the simulation of the continuoustime and discretetime nonlinear systems. The continuoustime controller is the reducedorder µcontroller in Section 10.7 and the discretetime controller is the controller designed at the sampling frequency of 36 kHz. The transient responses of the nonlinear system are close to the corresponding responses of the linear system due to the small input signals (amplitude less than 1.2 V). It should be mentioned that the controllers designed are appropriate for small reference signals (equivalent to one track). For larger references the ampliﬁer saturates and it is necessary to implement an appropriate seeking algorithm. Simulink model of the nonlinear sampled−data hard disk drive servo system num(s) den(s) Mode 1 num(s) 1/Rc tau.s+1 Mode 2 Gain1 num(s) den(s) Mode 3 Arm Integrator1 Integrator2 Position gain 1/J Admittance Kt 1 s y To Workspace Control Control1 u Kpa i Tm den(s) ω
1 s Θ y
−K− Output PA Saturation Rs Resistance Td
num(s) den(s) Mode 4 Kb Back e.m.f. Disturbance Out1 In1 Controller ref
Out1 10.9 Nonlinear System Simulation Fig. 10.44. Simulation model of the nonlinear sampled data system
Reference Noise1 t Clock To Workspace2 245 246 10 Robust Control of a Hard Disk Drive
Nonlinear system response to the reference
0.2 0 −0.2 Solid line: the continuous−time system Position error signal (track) −0.4 Dashed line: the discrete−time system −0.6 −0.8 −1 −1.2 −1.4 0 0.5 1 1.5 2 2.5 Time (s) 3 3.5 4 4.5
x 10 5
−3 Fig. 10.45. Transient responses of the nonlinear systems Nonlinear system response to the disturbance
0.1 0.05 0 Position error signal (track) −0.05 −0.1 Solid line: the continuous−time system −0.15 Dashed line: the discrete−time system −0.2 −0.25 0 0.5 1 1.5 2 2.5 Time (s) 3 3.5 4 4.5
x 10 5
−3 Fig. 10.46. Disturbance responses of the nonlinear systems 10.10 Conclusions 247 10.10 Conclusions
The experience gained in the design of the HDD servo controllers makes it possible to derive the following conclusions: • The implementation of designed µ, H∞ and H∞ LSDP controllers in the HDD servo system gives satisfactory results with respect to robustness and performance. All three controllers ensure robust stability of the closedloop system. The best robust performance is achieved by using the µ and H∞ controllers. The implementation of the H∞ LSDP controller gives the fastest transient response and the corresponding design is less complicated. This controller, however, leads to the worst performance in the lowfrequency range, which results in a large steadystate error. In the given case the best tradeoﬀ between the robustness and transient response requirements is achieved by using the µcontroller that is, to some extent, due to the specially chosen weighting functions. • The number of original uncertain parameters is very large (more than 25 in the given case). This complicates the derivation of the uncertainty model and produces heavy computation demands. This is why it is necessary to investigate the parameter importance with respect to the robustness and performance in order to reduce their number to an acceptable value. However, in the evaluation of the design, it is better to take into account all the possible uncertainties to ensure a satisfactory design in a real case. • In the µsynthesis, the order of the resultant controller depends on the order of the plant, of the weighting functions and of the scaling diagonal elements approximations. The designed controllers are usually of high orders, which complicates the implementation of the controller. Hence, an order reduction should usually be considered right after the controller design. Most controllers used in the HDD designs are of order between 8 and 15. • Good disturbance attenuation requires suﬃciently large closedloop bandwidth. This may, however, lead to diﬃculties in achieving robust stability and robust performance in the presence of resonant modes. Some resonances whose frequencies are much higher than the closedloop bandwidth and thus seem innocent may even actually destroy the robust stability of the system. In such cases, it is necessary to increase the damping of these modes by using techniques of passive/active damping. • The presence of resonant modes may require suﬃciently high sampling rates in the case of using a discretetime controller. • It is important to stress that better results, with respect to the transient response (overshoot and settling time), are diﬃcult to obtain for the current plant parameters. If higher performance demands are required, it is necessary to change the HDD parameters, for instance to increase the VCM torque constant. 248 10 Robust Control of a Hard Disk Drive Notes and References
The history of the Hard Disk Drive control is presented in the fascinating papers of Abramovitch and Franklin [1, 2]. An excellent survey on similarities and contrasts in the magnetic and optical disk controls is given in [5]. In [77] one may ﬁnd an attractive description of the HDD construction and functioning. The book of Chen et al. [15] is the only book up to the moment that is entirely devoted to HDD servo systems and contains rich information related to the design of such systems. A tutorial on HDD control can be found in [106]. A detailed model of the HDD servo system, which has very much inﬂuenced the model used in this chapter, is presented in the book of Franklin et al. [39, Chapter 14]. Below 100 Hz the rotary actuator dynamics is aﬀected by pivot bearing nonlinearity, which is known under the name “stickslip” . It has a strong eﬀect particularly in the case of small disk drives with lower actuator inertia. Analysis and simulation of this phenomenon are presented in [4, 156]. An important step in the design of HDD servo systems is the reliable estimation of the various disturbances and noises acting on the system. Methods for such estimations are described in [3, 27, 61]. The harmonic compensation used to reduce RRO is considered in [16, 74]. The trackseeking and trackfollowing modes require diﬀerent control algorithms. Trackseeking algorithms are described in [39, 123]. The switching of control mode from trackseeking to trackfollowing should be smooth so that the residual vibration of the read/write head suspension is minimal. There are several control algorithms that work for both trackseeking and following, see for instance [70, 63]. Such algorithms utilise twodegreeoffreedom (2DOF) controllers in which case the track seeking is accomplished by using a feedforward controller along with a reference trajectory. Apart from the track seeking and track following the HDD also contains a spindle velocity control loop. The purpose of this loop is to control the air ﬂow over the disk in order to guarantee the appropriate ﬂying height of the read/write head. This is a lowfrequency control loop and its design does not represent a serious diﬃculty. Further expansion of the closedloop bandwith of the HDD control system may be achieved by using the socalled dualstage servos that consist of a lowbandwidth coarse actuator (the usual VCM) and a high bandwidth ﬁne actuator. The ﬁne actuator has a small stroke and may be implemented as a piezoelectric transducer(PZT) [31]. The design of dualstage servos is considered in [22, 66, 76]. Other important aspects of the analysis and design of HDD servo systems are presented in [50, 69, 83, 99, 164], to name a few. 11 Robust Control of a Distillation Column In this chapter we present the design of a robust control system for a highpurity distillation column. The original nonlinear model of the column is of high order and it includes parametric gain and timedelay uncertainty. A loworder linearised distillation column model is used in the design of a twodegreeof freedom (2DOF) H∞ loopshaping controller and a µcontroller. Both controllers ensure robust stability of the closedloop system and fulﬁllment of a mixture of timedomain and frequencydomain speciﬁcations. A reduced order µcontroller is then found that preserves the robust stability and robust performance of the closedloop system. The simulation of the closedloop system with the nonlinear distillation column model shows very good performance for diﬀerent reference and disturbance signals as well as for diﬀerent values of the uncertain parameters. 11.1 Introduction
Distillation is an important process in the separation and puriﬁcation of chemicals. The process exploits the diﬀerence at boiling points of multicomponent liquids. The control of distillation columns is diﬃcult, because the distillation process is highly nonlinear and the corresponding linearised models are often illconditioned around the operating point. The aim of the design, presented in this chapter, is to ﬁnd a controller that achieves robust stability and robust performance of the closedloop control system of a highpurity distillation column. The original nonlinear model of the column is of 82nd order and it includes uncertainties in the form of parametric gains and time delay. The uncertainty model is considered in the form of an input multiplicative complex uncertainty. In our design exercises, we found that it is diﬃcult to achieve the desired performance of the closedloop system using onedegreeoffreedom controllers. Hence, we turned to the H∞ twodegreeoffreedom loopshaping design procedure and µsynthesis/analysis method. The 250 11 Robust Control of a Distillation Column designs are based on a 6thorder linearised distillation column model. Both designed controllers ensure robust stability of the closedloop system and achieve a mixed set of timedomain and frequencydomain speciﬁcations. We present several timedomain and frequencydomain characteristics of the corresponding closedloop systems that makes possible the comparison of controllers efﬁciency. An 11thorder reducedorder µcontroller is found that preserves the stability and performance of the closedloop system in the presence of uncertainties. The simulation of the closedloop system with this µcontroller and with the nonlinear distillation column model is conducted in Simulink r and shows very good performance for diﬀerent reference and disturbance signals as well as for diﬀerent values of the uncertain parameters. 11.2 Dynamic Model of the Distillation Column
A typical twoproduct distillation column is shown in Figure 11.1. The objective of the distillation column is to split the feed F , which is a mixture of a light and a heavy component with composition zF , into a distillate product D with composition yD , which contains most of the light component, and a bottom product B with composition zB , which contains most of the heavy component. For this aim, the column contains a series of trays that are located along its height. The liquid in the columns ﬂows through the trays from top to bottom, while the vapour in the column rises from bottom to top. The constant contact between the vapour and liquid leads to increasing concentration of the morevolatile component in the vapour, while simultaneously increasing concentration of the less volatile component in the liquid. The operation of the column requires that some of the bottom product is reboiled at a rate V to ensure the continuity of the vapor ﬂow and some of the distillate is reﬂuxed to the top tray at a rate L to ensure the continuity of the liquid ﬂow. The notations used in the derivation of the column model are summarised in Table 11.1 and the column data are given in Table 11.2. The index i denotes the stages numbered from the bottom (i = 1) to the top (i = Ntot ) of the column. Index B denotes the bottom product and D the distillate product. A particular highpurity distillation column with 40 stages (39 trays and a reboiler) plus a total condensor is considered. The nonlinear model equations are: 1. Total material balance on stage i dMi /dt = Li+1 − Li + Vi−1 − Vi 2. Material balance for the light component on each stage i d(Mi xi )/dt = Li+1 xi+1 + Vi−1 yi−1 − Li xi − Vi yi This equation leads to the following expression for the derivative of the liquid mole fraction 11.2 Dynamic Model of the Distillation Column 251 Overhead vapour VT Condensor P Reflux N N1 L MD Condensor holdup Distillate D, yD Feed F, zF 3 2 1 Boilup V Reboiler Reboiler holdup Bottom product B, xB
Fig. 11.1. The distillation column system dxi /dt = (d(Mi xi )/dt − xi (dMi /dt))/Mi 3. Algebraic equations The vapour composition yi is related to the liquid composition xi on the same stage through the algebraic vapourliquid equilibrium yi = αxi /(1 + (α − 1)xi ) From the assumption of constant molar ﬂows and no vapour dynamics, one obtains the following expression for the vapour ﬂows Vi = Vi−1 The liquid ﬂows depend on the liquid holdup on the stage above and the vapor ﬂow as follows 252 11 Robust Control of a Distillation Column Table 11.1. Column nomenclature Description Feed rate [kmol/min] feed composition [mole fraction] fraction of liquid in feed distillate (top) and bottom product ﬂowrate [kmol/min] distillate and bottom product composition (usually of light component) [mole fraction] L reﬂux ﬂow [kmol/min] V boilup ﬂow [kmol/min ] N number of stages (including reboiler) Ntot = N + 1 total number of stages (including condensor) i stage number (1 – bottom, NF – feed stage, NT – total condensor) Li and Vi liquid and vapour ﬂow from stage i [kmol/min] xi and yi liquid and vapour composition of light component on stage i Mi liquid holdup on stage i [kmol] (MB – reboiler, MD – condensor holdup) α relative volatility between light and heavy component τL time constant for liquid ﬂow dynamics on each stage [min]
Table 11.2. Column data N Ntot NF 40 41 21 B L V 0.5 2.706 29 3.206 29 F 1 yD 0.99 zF 0.5 xB 0.01 qF D 1 0.5 M i τL 0.5 0.063 Symbol F zF qF D and B yD and xB Li = L0i + (Mi − M 0i )/τL + λ(Vi−1 − V 0i−1 ) where L0i [kmol/min] and M 0i [kmol] are the nominal values for the liquid ﬂow and holdup on stage i and V 0i is the nominal boilup ﬂow. If the vapour ﬂow into the stage eﬀects the holdup then the parameter λ is diﬀerent from zero. For the column under investigation λ = 0. The above equations apply at all stages except in the top (condensor), feed stage and bottom (reboiler). 1. For the feed stage, i = NF (it is assumed that the feed is mixed directly into the liquid at this stage) dMi /dt = Li+1 − Li + Vi−1 − Vi + F d(Mi xi )/dt = Li+1 xi+1 + Vi−1 yi−1 − Li xi − Vi yi + F zF 11.2 Dynamic Model of the Distillation Column 253 2. For the total condensor, i = Ntot (MNtot = MD , LNtot = LT ) dMi /dt = Vi−1 − Li − D d(Mi xi )/dt = Vi−1 − Li xi − Dxi 3. For the reboiler, i = 1(Mi = MB , Vi = VB = V ) d(Mi xi )/dt = Li+1 xi+1 − Vi yi − Bxi As a result, we obtain a nonlinear model of the distillation column of 82nd order. There are two states per tray, one representing the liquid composition and the other representing the liquid holdup. The model has four manipulated inputs (LT , VB , D and B ) and three disturbances (F, zF and qF ). In order to ﬁnd a linear model of the distillation column it is necessary to have a steadystate operating point around which the column dynamics is to be linearised. However, the model contains two integrators, because the condensor and reboiler levels are not under control. To stabilise the column, we make use of the so called LVconﬁguration of the distillation column where we use D to control MD and B to control MB . This is done by two proportional controllers with both gains equal to 10. The nonlinear model is linearised at the operating point given in Table 11.2 (the values of F, L, V, D, B, yD , xB and zF ). These steadystate values correspond to an initial state where all liquid compositions are equal to 0.5 and the tray holdups are also equal to 0.5 [kmol]. The steadystate vector is obtained for t = 5000 min by numerical integration of the nonlinear model equations of the LVconﬁguration given in the Mﬁle cola lv.m. The linearisation is carried out by implementing the Mﬁle cola lin that makes use of the equations given in the ﬁle cola lv lin.m. The 82ndorder, linear model is stored in the variable G4 u and has four inputs (the latter two are actually disturbances) [LT VB F zF ] and two outputs [yD xB ] Before reducing the model order, the model G4 u is scaled in order to make all inputs/disturbances and all outputs at about the same magnitude. This is done by dividing each variable by its maximum change, i.e. u = U/Umax ; y = Y /Ymax where U, Y are the input and output of the model G4 u in original units, Umax , Ymax are the corresponding maximum values allowed, and u, y are the scaled variables. The scaling is achieved by using the input scaling matrix ⎤ ⎡ 10 0 0 ⎢0 1 0 0 ⎥ ⎥ Si = ⎢ ⎣ 0 0 0.2 0 ⎦ 0 0 0 0.1 254 11 Robust Control of a Distillation Column and output scaling matrix So = 100 0 0 100 The scaled model is then found as G4 = SoG4 uSi . The ﬁnal stage in selecting the column model is the order reduction of the scaled model G4 . This is done by using the commands sysbal and hankmr. As a result, we obtain a 6thorder model saved in the variable G. All commands for ﬁnding the 6thorder linear model of the distillation column are contained in the ﬁle mod col.m. The frequency responses of the singular values of G are compared with the singular values of the 82nd order linearised model G4 in Figure 11.2. It is seen that the behaviour of both models is close until the frequency 2 rad/min.
Singular value plots of G and G 4 10 3 10 2 10 1 Magnitude 10 0 10 −1 Solid line: singular values of G Dashed line: singular values of G4 10 −2 10 −3 10 −4 10 −4 10 −3 10 −2 10 Frequency (rad/min) −1 10 0 10 1 10 2 Fig. 11.2. Singular values of G and G4 11.3 Uncertainty Modelling
The uncertainties considered in the distillation column control systems are a gain uncertainty of ±20% and a time delay of up to 1 min in each input channel. Thus, the uncertainty may be represented by the transfer matrix 11.3 Uncertainty Modelling 255 Gd W∆
u1 1 ∆1 + +
y1 W∆ 2
u2 ∆2 + + G y2 Fig. 11.3. Distillation column with input multiplicative uncertainty Wu = 0 k1 e−Θ1 s 0 k2 e−Θ2 s where ki ∈ [0.8 1.2]; Θi ∈ [0.0 1.0]; i = 1, 2. It is convenient to represent this uncertainty by an input multiplicative uncertainty, as shown in Figure 11.3, with ∆1 0 ∆= 0 ∆2 where ∆1  ≤ 1, ∆2  ≤ 1. The uncertainty weighting function W∆ = W ∆1 0 0 W∆2 is determined in the following way. Denote by W ui = 1 the nominal transfer function in the ith channel for ki = 1 and Θi = 0; i = 1, 2. According to Figure 11.3 we have that Wui = (1 + W∆i ∆i )W ui , i = 1, 2 Taking into account that ∆i  ≤ 1 it follows that the relative uncertainty should satisfy Wui (jω ) − W ui (jω ) W ui (jω ) ≤ W∆i (jω ) , i = 1, 2 where Wui (jω ) = ki ejωΘi = ki (cos(ωΘi ) + j sin(ωΘi )). In this way, to choose the uncertainty weight W∆i is equivalent to determining an upper bound of the frequency response of the relative uncertainty Wui (jω ) − W ui (jω ) W ui (jω ) = (ki cos(ωΘi ) − 1)2 + (ki sin(ωΘi ))2 . 256 11 Robust Control of a Distillation Column
Approximation of uncertain time delay by multiplicative perturbation
2.5 2 1.5 Magnitude
1 0.5 0 −2 10 10 −1 10 Frequency (rad/min) 0 10 1 10 2 Fig. 11.4. Approximation of the uncertain time delay The frequency responses of the relative uncertainty Wui (jω ) − W ui (jω ) W ui (jω ) are computed by the ﬁle unc col.m and shown in Figure 11.4. These responses are then approximated by 3rdorder transfer functions using the ﬁle wfit.m. As a result, one obtains W ∆i = 2.2138s3 + 15.9537s2 + 27.6702s + 4.9050 , i = 1, 2 1.0000s3 + 8.3412s2 + 21.2393s + 22.6705 11.4 Closedloop Systemperformance Speciﬁcations
The aim of the distillation column controlsystem design is to determine a controller that meets robust stability and robust performance speciﬁcations for the LV conﬁguration. Since these speciﬁcations are diﬃcult to satisfy with a onedegreeoffreedom controller, we present the design of twodegreeoffreedom controllers that ensure robust stability and robust performance of the closedloop system. In the given case, the robust stability means guaranteed closedloop stability for all 0.8 ≤ k1 , k2 ≤ 1.2 and 0 ≤ Θ1 , Θ2 ≤ 1 min. The timedomain speciﬁcations are given in terms of stepresponse requirements, which must be met for all values of k1 , k2 , Θ1 and Θ2 . Speciﬁcally, for a unit 11.4 Closedloop Systemperformance Speciﬁcations 257 step command to the ﬁrst input channel at t = 0, the scaled plant outputs y1 (tracking) and y2 (interaction) should satisfy: • • • • • y1 (t) ≥ 0.9 for all t ≥ 30 min; y1 (t) ≤ 1.1 for all t; 0.99 ≤ y1 (∞) ≤ 1.01; y2 (t) ≤ 0.5 for all t; −0.01 ≤ y2 (∞) ≤ 0.01. Correspondingly, similar requirements should be met for a unit step command at the second input channel. In addition, the following frequencydomain speciﬁcation should be met: • ˆ ˆˆ σ (Ky S )(jω ) < 316, for each ω , where Ky denotes the feedback part of the unscaled controller. (Here and latter, a variable with a hat refers to the case of unscaled plant.) This speciﬁcation is included mainly to avoid saturation of the plant inputs. ˆˆ ˆˆ • σ (GKy )(jω ) < 1, for ω ≥ 150; or σ (Ky S )(jω ) ≤ 1, for ω ≥ 150. ˆ ˆˆ In the above, σ denotes the largest singular value, and S = (I + GKy ) < 1 is ˆ. the sensitivity function for G
eu Wu W∆ ∆ r K u G y+ Wp ey Wn n M
Fig. 11.5. Closedloop interconnection structure of the distillation column system The block diagram of the closedloop system incorporating the design requirements consideration represented by weights is shown in Figure 11.5. The plant enclosed by the dashed rectangle consists of the nominal scaled model G plus the input multiplicative uncertainty. The controller K implements a 258 11 Robust Control of a Distillation Column feedback from outputs yD and xB and a feedforward from the reference signal r. The measurement of the distillate and bottom products composition is corrupted by the noise n. The desired dynamics of the closedloop system is sought by implementation of a suitably chosen model M . The model M represents the desired dynamic behaviour of the closedloop system from the reference signal to the outputs. The usage of a model of the desired dynamics allows us to take easily into account the design speciﬁcations. The transfer function matrix of the model M is selected as M=
1 T s2 +2ξT s+1 0
1 T s2 +2ξT s+1 0 The coeﬃcients of the transfer functions (T = 6, ξ = 0.8) in both channels of the model are chosen such as to ensure an overdamped response with a settling time of about 30 min. The oﬀdiagonal elements of the transfer matrix are set as zeros in order to minimise the interaction between the channels.
0 Model frequency response 10 10 −1 10 −2 Magnitude 10 −3 10 −4 10 −5 10 −6 10 −4 10 −3 10 −2 10 Frequency (rad/min) −1 10 0 10 1 10 2 Fig. 11.6. Model frequency response The frequency response of the model M is shown in Figure 11.6. Let the scaled, twodegreeoffreedom controller be partitioned as K (s) = [Ky (s) Kr (s)] where Ky is the feedback part of the controller and Kr is the preﬁlter part. It is easy to show that ep eu = ˜ −Wp T Wn Wp (S GKr − M ) ˜ Wu (I + Ky G)−1 Kr −Wu Ky SWn r n 11.4 Closedloop Systemperformance Speciﬁcations 259 ˜ where S = (I +GKy )−1 is the sensitivity function for the scaled plant, T = (I + ˜ y )−1 GKy is the complementary sensitivity function and G = G(I + W∆ ∆) ˜ ˜ GK is the uncertain, scaled plant model. The performance objective is to satisfy ˜ −Wp T Wn Wp (S GKr − M ) ˜ )−1 Kr −Wu Ky SWn Wu (I + Ky G <1
∞ (11.1) ˜ for each uncertain G. The performance and control action weighting functions are chosen as Wp =
9. 0.3 0.55 9.5s5s+3 4 +10− 9. 0.3 0.55 9.5s5s+3 4 +10− , Wu = s+1 0 0.87 0.01s+1 s+1 0 0.87 0.01s+1 The implementation of the performance weighting function Wp aims to ensure closeness of the system dynamics to the model over the lowfrequency range. Note that this function contains nonzero oﬀdiagonal elements that make it easier to meet the timedomain speciﬁcations. A small constant equal to 10−4 is added in the denominator in each channel to make the design problem regular. The usage of the control weighting function Wu allows us to limit the magnitude of control actions over the speciﬁed frequency range (ω ≥ 150).
Inverse of the performance weighting function 10 1 10 0 10 −1 Magnitude 10 −2 10 −3 10 −4 10 −5 10 −6 10 −5 10 −4 10 −3 10 10 Frequency (rad/min) −2 −1 10 0 10 1 10 2 Fig. 11.7. Inverse of performance weighting function The magnitude plot of the inverse of the performance weighting function Wp is shown in Figure 11.7 and the magnitude plot of the control weighting function is shown in Figure 11.8. The noise shaping ﬁlter 260 11 Robust Control of a Distillation Column
10
2 Control action weighting function 10 1 Magnitude 10 0 10 −1 10 −4 10 −3 10 −2 10 −1 10 10 Frequency (rad/min) 0 1 10 2 10 3 10 4 Fig. 11.8. Controlaction weighting function Wn = s 0 10−2 s+1 s 0 10−2 s+1 is determined according to the spectral contents of the sensor noises accompanying the measurement of the distillate and bottom product composition. 10 −2 Sensor noise weighting function 10 −3 Magnitude 10 −4 10 −5 10 −6 10 −4 10 −3 10 −2 10 Frequency (rad/min) −1 10 0 10 1 10 2 Fig. 11.9. Noise weighting function The magnitude plot of the noise shaping ﬁlter is shown in Figure 11.9. The model transfer function, the performance and control weighting functions as well as the noise shaping ﬁlter are all set in the ﬁle wts col.m. 11.6 Controller Design 261 11.5 Openloop and Closedloop System Interconnections
pertout {12}
pertin {12} W∆ G
−
+ y e_y Wp
e_u control
− − Wu
Wn noise M ref Fig. 11.10. Openloop interconnection structure of the distillation column system The openloop system interconnection is obtained by the Mﬁle olp col. The internal structure of the eightinput, tenoutput openloop system, which is saved as the variable sys ic, is shown in Figure 11.10. The inputs and outputs of the uncertainties are saved as the variables pertin and pertout, the references and the noises – as the variables ref and noise, respectively, and the controls – as the variable control. All variables have two elements (i.e. 2dimensional vectors). The schematic diagram showing the speciﬁc input/output ordering for the variable sys ic is given in Figure 11.11. The blockdiagram used in the simulation of the closedloop system is shown in Figure 11.12. The corresponding closedloop system interconnection, which is saved as the variable sim ic, is obtained by the Mﬁle sim col.m. The schematic diagram showing the speciﬁc input/output ordering for the variable sim ic is shown in Figure 11.13. 11.6 Controller Design
Successful design of the distillation column control system may be obtained by using the H∞ loopshaping design procedure (LSDP) and the µsynthesis. Note that in the case of LSDP we do not use the performance speciﬁcations implemented in the case of µsynthesis. Instead of these speciﬁcations we use a preﬁlter W1 and a postﬁlter W2 in order to shape appropriately the openloop transfer function W1 GW2 . 262 11 Robust Control of a Distillation Column pertin{1} pertin{2}
ref{1} ref{2}
noise{1} noise{2} control{1}
control{2} 1 2 3 4 5 6 7 8 sys_ic 1 2 3 4 5 6 7 8 9 10 pertout{1} pertout{2} e_y{1} e_y{2} e_u{1}
e_u{2}
y{1}noise{1} y{2}noise{2} ref{1} ref{2} Fig. 11.11. Schematic diagram of the openloop interconnection pertout {12} pertin {12} W∆
Gd y control
− − Wn noise ref
Fig. 11.12. Closedloop interconnection structure of the distillation column system 11.6.1 Loopshaping Design In the present case, we choose a preﬁlter with transfer function W1 =
1s 0 1.7 1.10+1 s 1s 0 1.7 1.10+1 s 11.6 Controller Design 263 pertin{1} pertin{2}
ref{1} ref{2}
noise{1} noise{2} control{1}
control{2} 1 2 3 4 5 6 7 8 sim_ic 1 2 3 4 5 6 7 8 9 10 pertout{1} pertout{2} y{1} y{2} control{1}
control{2}
y{1}noise{1} y{2}noise{2} ref{1} ref{2} Fig. 11.13. Schematic diagram of the closedloop interconnection The choice of the gain equal to 1.7 is done to ensure a suﬃciently small steadystate error. Larger gain leads to smaller steadystate errors but worse transient response. The postﬁlter is taken simply as W2 = I2 .
Frequency responses of the original plant and the shaped plant 10 6 10 5 10 4 10 3 Magnitude 10 2 10 1 10 0 10 −1 Solid line: the original plant 10 −2 Dashed line: the shaped plant 10 −3 10 −4 10 −3 10 −2 10 Frequency (rad/min) −1 10 0 10 1 10 2 Fig. 11.14. Singular values of the original system and shaped system 264 11 Robust Control of a Distillation Column
10
0 Robust stability 10 −1 mu 10 −2 10 −3 10 −4 10 −3 10 −2 10 −1 10 Frequency (rad/min) 0 10 1 10 2 10 3 Fig. 11.15. Robust stability for loopshaping controller The singular value plots of the original and shaped systems are shown in Figure 11.14. The design of the twodegreeoffreedom LSDP controller is done by using the Mﬁle lsh col.m that implements the function ncfsyn. The controller obtained is of order 10. The robust stability analysis of the closedloop system is done by the ﬁle mu col the frequency response plot of the structured value µ shown in Figure 11.15. According to this plot the closedloop system preserves stability for all perturbations with norm less than 1/0.6814. As usual, the requirements for nominal performance and robust performance are not fulﬁlled with this controller. The closedloop frequency responses are obtained by using the ﬁle frs col.m. The singular value plot of the unscaled closedloop system transfer function is shown in Figure 11.16. Both lowfrequency gains are equal to 1 that ensures zero steadystate errors in both channels. The singular value plots of the transfer function matrix with respect to the noises (Figure 11.17) show that the noises are attenuated by at least a factor of 104 times at the system output. ˆˆ ˆˆ The singularvalue plots of the transfer function matrices GKy and Ky S are shown in Figures 11.18 and 11.19, respectively. The maximum of the ˆˆ largest singular value of GKy is less than 1 for ω ≥ 150 and the maximum of ˆˆ the largest singular value of Ky S is less than 200 so that the corresponding frequencydomain speciﬁcation is met. 11.6 Controller Design
10
1 265 Singular value plot of the closed−loop transfer function matrix 10 0 10 −1 10 −2 10 −3 10 −2 10 −1 10 0 10 1 Frequency (rad/min) Fig. 11.16. Frequency response of the closedloop system with loopshaping controller
Singular value plot of the noise transfer function matrix 10 −3 10 −4 10 −5 10 −6 10 −7 10 −8 10 −9 10 −10 10 −3 10 −2 10 −1 10 Frequency (rad/min) 0 10 1 10 2 10 3 Fig. 11.17. Frequency response to the noises 266 11 Robust Control of a Distillation Column
10
6 Singular value plot of GKy 10 4 10 2 10 0 10 −2 10 −4 10 −6 10 −3 10 −2 10 −1 10 Frequency (rad/min) 0 10 1 10 2 10 3 ˆˆ Fig. 11.18. Singularvalue plot of GKy 10 3 Singular value plot of KyS 10 2 10 1 10 0 10 −1 10 −2 10 −2 10 −1 10 10 Frequency (rad/min) 0 1 10 2 10 3 ˆˆ Fig. 11.19. Singularvalue plot of Ky S 11.6 Controller Design
Transient responses of the perturbed systems
1.5 267 1 y11 0.5 0 −0.5 0 10 20 30 40 50 Time (min) 60 70 80 90 100 Fig. 11.20. Perturbed transient response y11 for loopshaping controller Transient responses of the perturbed systems
1.5 1 y12 0.5 0 −0.5 0 10 20 30 40 50 Time (min) 60 70 80 90 100 Fig. 11.21. Perturbed transient response y12 for loopshaping controller In Figures 11.20 – 11.23 we show the transient responses of the scaled closedloop system obtained by the ﬁle prtcol.m for diﬀerent values of the 268 11 Robust Control of a Distillation Column
Transient responses of the perturbed systems
1.5 1 y21 0.5 0 −0.5 0 10 20 30 40 50 Time (min) 60 70 80 90 100 Fig. 11.22. Perturbed transient response y21 for loopshaping controller
Transient responses of the perturbed systems
1.5 1 y22 0.5 0 −0.5 0 10 20 30 40 50 Time (min) 60 70 80 90 100 Fig. 11.23. Perturbed transient response y22 for loopshaping controller uncertain gain and time delay. The timedomain speciﬁcation is met and the closedloop system transient response has a small settling time. The control action in the closedloop system for the same variations of the uncertain parameters is shown in Figures 11.24 – 11.27. 11.6 Controller Design
Control action in the perturbed systems
1.5 269 1 u11 0.5 0 −0.5 0 10 20 30 40 50 Time (min) 60 70 80 90 100 Fig. 11.24. Perturbed control action u11 for loopshaping controller
Control action in the perturbed systems
1.5 1 u12 0.5 0 −0.5 0 10 20 30 40 50 Time (min) 60 70 80 90 100 Fig. 11.25. Perturbed control action u12 for loopshaping controller 270 11 Robust Control of a Distillation Column
Control action in the perturbed systems
1.5 1 u21 0.5 0 −0.5 0 10 20 30 40 50 Time (min) 60 70 80 90 100 Fig. 11.26. Perturbed control action u21 for loopshaping controller
Control action in the perturbed systems
1.5 1 u22 0.5 0 −0.5 0 10 20 30 40 50 Time (min) 60 70 80 90 100 Fig. 11.27. Perturbed control action u22 for loopshaping controller 11.6 Controller Design 271 11.6.2 µSynthesis Let us denote by P (s) the transfer function matrix of the eightinput, tenoutput openloop system consisting of the distillation column model plus the weighting functions and let the block structure ∆P is deﬁned as ∆P := ∆0 0 ∆F : ∆ ∈ C 2×2 , ∆F ∈ C 4×4 The ﬁrst block of this matrix corresponds to the uncertainty block ∆, used in modelling the uncertainty of the distillation column. The second block ∆F is a ﬁctitious uncertainty 4 × 4 block, introduced to include the performance objectives in the framework of the µapproach. The inputs to this block are the weighted error signals ep and eu the outputs being the exogenous inputs r and n. To meet the design objectives a stabilising controller K is to be found such that, at each frequency ω ∈ [0, ∞], the structured singular value satisﬁes the condition µ∆P [FL (P, K )(jω )] < 1 The fulﬁllment of this condition guarantees robust performance of the closedloop system, i.e., ˜ −Wp T Wn Wp (S GKr − M ) ˜ )−1 Kr −Wu Ky SWn Wu (I + Ky G <1
∞ (11.2) The µsynthesis is done by using the Mﬁle ms col.m. The uncertainty structure and other parameters used in the DK iteration are set in the auxiliary ﬁle dk col.m.
Table 11.3. Results of the µsynthesis Iteration Controller order Maximum value of µ 1.072 22 1 0.980 28 2 0.984 30 3 0.975 28 4 The progress of the DK iteration is shown in Table 11.3. In the given case an appropriate controller is obtained after the fourth DK iteration. The controller is stable and its order is equal to 28. It can be seen from Table 11.3 that after the fourth iteration the maximum value of µ is equal to 0.975. The µanalysis of the closedloop system is done by the ﬁle mu col. 272 11 Robust Control of a Distillation Column
10
0 Robust stability 10 −1 10
mu −2 10
−3 10 −4 10 −5 10 −3 10 −2 10 −1 10 Frequency (rad/min) 0 10 1 10 2 10 3 Fig. 11.28. Robust stability for µcontroller The frequencyresponse plot of the structured singular value for the case of robust stability is shown in Figure 11.28. The maximum value of µ is 0.709,
Robust performance
1 0.9 0.8 0.7 0.6 mu 0.5 0.4 0.3 0.2 0.1 0 −3 10 10 −2 10 −1 10 Frequency (rad/min) 0 10 1 10 2 10 3 Fig. 11.29. Robust performance for µcontroller 11.6 Controller Design 273 which means that the stability of the system is preserved under perturbations 1 that satisfy ∆ ∞ < 0.709 . The frequency response of µ for the case of robust performance, analysis is shown in Figure 11.29. The closedloop system achieves robust performance, the maximum value of µ being equal to 0.977.
Singular value plot of the closed−loop transfer function matrix 10 0 10 −1 10 −2 10 −3 10 −4 10 −5 10 −2 10 −1 10 0 10 1 Frequency (rad/min) Fig. 11.30. Closedloop singularvalue plots The unscaled closedloop system singularvalue plot is shown in Figure 11.30. The closedloop bandwidth is about 0.1 rad/min. The frequency responses with respect to the noise are shown in Figure 11.31. It is seen from the ﬁgure that the noises in measuring the distillate and bottomproduct composition have a relatively small eﬀect on the system output. In Figure 11.32 we show the singularvalue plot of the unscaled sensitivity ˆ function S . The singularvalue plots of the unscaled µcontroller are shown in Figure 11.33. ˆˆ ˆˆ The singularvalue plots of GKy and Ky S are shown in Figures 11.34 and ˆˆ 11.35, respectively. The maximum of the largest singular value of GKy is less ˆˆ than 1 for ω ≥ 150 and the maximum of the largest singular value of Ky S is less than 300, thus the frequencydomain speciﬁcation is met. Consider now the eﬀect of variations of uncertain parameters on the system dynamics. 274 11 Robust Control of a Distillation Column
10
−3 Singular value plot of the noise transfer function matrix 10 −4 10 −5 10 −6 10 −7 10 −8 10 −9 10 −10 10 −3 10 −2 10 −1 10 Frequency (rad/min) 0 10 1 10 2 10 3 Fig. 11.31. Frequency responses with respect to noises ˆ The frequency responses of the perturbed sensitivity function S obtained by the ﬁle pfr col.m are shown in Figure 11.36. ˆˆ The frequency responses of the perturbed transfer function matrix Ky S are shown in Figure 11.36. The maximum of the largest singular value of this matrix does not exceed 300 for all values of the uncertain parameters. 11.6 Controller Design
10
1 275 Singular value plot of the sensitivity function 10 0 10 −1 10 −2 10 −3 10 −4 10 −5 10 −3 10 −2 10 Frequency (rad/min) −1 10 0 10 1 Fig. 11.32. Frequency responses of the sensitivity function 10 5 Singular value plot of the controller 10 4 10 3 10 2 10 −3 10 1 10 −2 10 Frequency (rad/min) −1 10 0 10 1 Fig. 11.33. Singular values of the controller 276 11 Robust Control of a Distillation Column
10
6 Singular value plot of GKy 10 4 10 2 10 0 10 −2 10 −4 10 −6 10 −3 10 −2 10 −1 10 Frequency (rad/min) 0 10 1 10 2 10 3 ˆˆ Fig. 11.34. Frequency responses of GKy 10 3 Singular value plot of KyS 10 2 10 1 10 0 10 −1 10 −2 10 −2 10 −1 10 10 Frequency (rad/min) 0 1 10 2 10 3 ˆˆ Fig. 11.35. Frequency responses of of Ky S 11.6 Controller Design
10
1 277 Singular value plots of the sensitivity functions 10 0 10 −1 10 −2 10 −3 10 −4 10 −2 10 −1 10 10 Frequency (rad/min) 0 1 10 2 10 3 Fig. 11.36. Frequency responses of the perturbed sensitivity function 10 3 Singular value plots of KyS 10 2 10 1 10 0 10 −1 10 −2 10 −2 10 −1 10 10 Frequency (rad/min) 0 1 10 2 10 3 ˆˆ Fig. 11.37. Perturbed frequency responses of Ky S 278 11 Robust Control of a Distillation Column
Transient responses of the perturbed systems
1.5 1 y11 0.5 0 −0.5 0 10 20 30 40 50 Time (min) 60 70 80 90 100 Fig. 11.38. Perturbed transient response y11 for µcontroller Transient responses of the perturbed systems
1.5 1 y12 0.5 0 −0.5 0 10 20 30 40 50 Time (min) 60 70 80 90 100 Fig. 11.39. Perturbed transient response y12 for µcontroller The perturbed transient responses of the scaled closedloop system with a µcontroller are shown in Figures 11.38 – 11.41. The responses to the cor 11.6 Controller Design
Transient responses of the perturbed systems
1.5 279 1 y21 0.5 0 −0.5 0 10 20 30 40 50 Time (min) 60 70 80 90 100 Fig. 11.40. Perturbed transient response y21 for µcontroller
Transient responses of the perturbed systems
1.5 1 y22 0.5 0 −0.5 0 10 20 30 40 50 Time (min) 60 70 80 90 100 Fig. 11.41. Perturbed transient response y22 for µcontroller responding references have no overshoots and the interaction of channels is weaker than in the case of using loopshaping controller. The control actions in the case of perturbed system with the µcontroller is shown in Figures 11.42 – 11.45. 280 11 Robust Control of a Distillation Column
Control action in the perturbed systems
1.5 1 u11 0.5 0 −0.5 0 10 20 30 40 50 Time (min) 60 70 80 90 100 Fig. 11.42. Perturbed control action u11 for µcontroller
Control action in the perturbed systems
1.5 1 u12 0.5 0 −0.5 0 10 20 30 40 50 Time (min) 60 70 80 90 100 Fig. 11.43. Perturbed control action u12 for µcontroller 11.6 Controller Design
Control action in the perturbed systems
1.5 281 1 u21 0.5 0 −0.5 0 10 20 30 40 50 Time (min) 60 70 80 90 100 Fig. 11.44. Perturbed control action u21 for µcontroller
Control action in the perturbed systems
1.5 1 u22 0.5 0 −0.5 0 10 20 30 40 50 Time (min) 60 70 80 90 100 Fig. 11.45. Perturbed control action for µcontroller 282 11 Robust Control of a Distillation Column Consider now the reduction of controller order. For this aim we implement the Mﬁle red col.m. After balancing of the controller and neglecting the small Hankel singular values its order is reduced to 11.
Maximum singular values of the controller transfer function matrices 10 2 10 1 10 0 10 −1 10 −2 10 −3 10 −4 Solid line: the full−order controller Dashed line: the reduced−order controller 10 −5 10 −6 10 −2 10 −1 10 0 10 1 10 10 Frequency (rad/min) 2 3 10 4 10 5 10 6 Fig. 11.46. Frequency responses of the fullorder and reducedorder controllers In Figure 11.46 we compare the frequency responses of the maximum singular values of the scaled fullorder and reducedorder controllers. The frequency responses of both fullorder and reducedorder controllers coincide up to 23 rad/min that is much more than the closedloop bandwidth of the system. This is why the transient responses of the closedloop system with fullorder and with reducedorder controllers are practically undistinguishable. 11.7 Nonlinear System Simulation 283 11.7 Nonlinear System Simulation
The LSDP controller and µcontroller designed are investigated by simulation of the corresponding nonlinear closedloop system. The simulation is carried out by the Simulink r model nls col.mdl that implements the nonlinear plant model given in Section 11.2. To simulate the nonlinear plant we use the Mﬁles colamod and colas by kind permission of the author, Sigurd Skogestad. The Simulink r model of the distillation column control system shown in Figure 11.47 allows us to carry out a number of simulations for diﬀerent set points and disturbances. Note that the inputs to the controller are formed as diﬀerences between the values of the corresponding variables and their nominal (steadystate) values used in the linearisation. In contrast, the controller outputs are added to the corresponding nominal inputs in order to obtain the full inputs to the nonlinear model of the column. Before simulation of the system it is necessary to set the model parameters by using the Mﬁle init col.m. Also, the controller is rescaled so as to implement the unscaled input/output variables. The nonlinear system simulation is done for the following reference and disturbance signals. At t = 10 min the feed rate F increases from 1 to 1.2, at t = 100 min the feed composition zF increases from 0.5 to 0.6 and at t = 200 min the set point in yD increases from 0.99 to 0.995. The time response of the distillate yD for the case of the reducedorder µcontroller is given in Figure 11.48. It is seen from the ﬁgure that the disturbances are attenuated well and the desired set point is achieved exactly. The time response of the bottomproduct composition xB for the same controller is given in Figure 11.49. The simulation results show that the robust design method is appropriately chosen and conﬁrm the validity of the uncertain model used. 284 Simulink model of the distillation column system
F y1 y_D Graph1 qf1 zF 2.70629 L0 colas x_B y3 Distillation column (nonlinear) M_D y4 M_B Comp Sum1 −10 0.5 Sum9 Gain1 −10 0.5 Sum2 ref_M_B Sum10 Gain2 ref_M_D Comp. LV configuration Transport Delay1 Transport Delay2 y2 Sum3 Graph2 Sum4 3.20629 kf1*[Tf11 0](s) Tf12.s+1 Shaping filter1 kf2*[Tf21 0](s) Tf22.s+1 Shaping filter2 0.99 Noise2 Noise1 11 Robust Control of a Distillation Column V0 Sum5 yDs1 0.01 Sum6 xBs1 Sum7 ref_yD Sum8 ref_xB t Clock Time Graph3 x’ = Ax+Bu y = Cx+Du Controller Fig. 11.47. Simulation model of the nonlinear system u1 Delta L u2 Delta V Graph4 11.7 Nonlinear System Simulation
Nonlinear system simulation 285 0.996 0.994 0.992
Product composition yD 0.99 0.988 0.986 0.984 0 50 100 150 Time (min) 200 250 300 Fig. 11.48. Transient response of the nonlinear system  yD
Nonlinear system simulation 0.015 0.014 0.013
Product composition xB 0.012 0.011 0.01 0.009 0.008 0 50 100 150 Time (min) 200 250 300 Fig. 11.49. Transient response of the nonlinear system  xB 286 11 Robust Control of a Distillation Column 11.8 Conclusions
The results from the analysis and design of a distillation column control system may be summarised as follows. • It is possible to use a suﬃciently loworder linearised model of the given nonlinear plant, so that the designed linear controllers allow to be achieved satisfactory dynamics of the nonlinear closedloop system. The linearised model is scaled in order to avoid very small or very large signals. • The onedegreeoffreedom controller does not allow us to meet the timedomain and frequencydomain speciﬁcations, which makes it necessary to use twodegreeoffreedom controllers. Two controllers are designed – one by using the H∞ loopshaping design method and the other by using the µsynthesis method. Both controllers satisfy the timedomain and frequencydomain speciﬁcations and ensure robust stability of the corresponding closedloop systems. It is impressive how the loworder, easily designed loopshaping controller allows us to obtain practically the same characteristics of the closedloop systems as the µcontroller, while the latter requires much more experiments for tuning the weighting functions. • The nonlinear system simulation results conﬁrm the ability of the loopshaping controller and the reducedorder µcontroller to achieve disturbance attenuation and good responses to reference signals. The simulation conﬁrms the validity of the uncertain model used. Notes and References
The distillation column control problem presented in this chapter was introduced by Limebeer [86] as a benchmark problem at the 1991 Conference on Decision and Control. In [86] the uncertainty is deﬁned in terms of parametric gain and delay uncertainty and the control objectives are a mixture of timedomain and frequencydomain speciﬁcations. The problem originates from Skogestad et al. [141] where a simple model of a highpurity distillation column was used and uncertainty and performance speciﬁcations were given as frequencydependent weighting functions. A tutorial introduction to the dynamics of the distillation column is presented in [140]. A design of a twodegreeoffreedom loopshaping controller for the distillation column is presented in [53] where an 8thorder model of the column is used. A twodegreeoffreedom controller for the distillation column system is proposed in [95] with a reference model and using µsynthesis. In that paper, one may ﬁnd a selection procedure for the weighting functions described in details. Our design diﬀers from the design in [95] in several respects. First, instead of a 2ndorder model with time delay we use a 6thorder model that is justiﬁed by the results from nonlinear system simulation. Second, we use modiﬁed weighting functions in order to obtain better results. In particular, we use 11.8 Conclusions 287 a performance weighting transfer function matrix with nonzero oﬀdiagonal elements that meets the timedomain speciﬁcations much better. Also, the control weighting functions are taken as ﬁrstorder, lowpass ﬁlters. Various design methods have been reported, in addition to the above, to tackle this distillation column problem ([127, 161, 147, 113, 142]). In [161], the design problem is formulated as a mixed optimisation problem. It is well known that controlsystem design problems can be formulated as constrained optimisation problems. Design speciﬁcations in both the time and frequency domains as well as stability can be naturally formulated as constraints. Numerical optimisation approaches can be used directly and a solution obtained, if there is one, will characterise an acceptable design. However, the optimisation problems so derived are usually very complicated with many unknowns, many nonlinearities, many constraints, and in most cases, they are multiobjective with several conﬂicting design aims that need to be simultaneously achieved. Furthermore, a direct parameterization of the controller will increase the complexity of the optimisation problem. In [161], the H∞ loopshaping design procedure is followed. Instead of direct parameterization of controllers, the pre and postweighting functions used to shape the openloop, augmented system are chosen as design (optimisation) parameters. The low order and simple structure of such weighting functions make the numerical optimisation much more eﬃcient. The H∞ norm requirement is also included in the cost/constraint set. The stability of the closedloop system is naturally met by such designed controllers. Satisfactory designs are reported in that paper. Reference [147] further extends the optimisation approach in [161] by using a Genetic Algorithm to choose the weighting function parameters. 12 Robust Control of a Rocket In this chapter we consider the design of a robust system for attitude stabilisation of a winged supersonic rocket ﬂying at altitudes between 1000 m and 10000 m. The plant to be controlled is timevariant, which makes the controller design diﬃcult. To simplify the design, we ﬁrst derive linearised equations of the longitudinal motion of the rocket. Variations of the aerodynamic coeﬃcients of this motion are considered as parametric uncertainties in the design. In this study, both continuoustime and discretetime µcontrollers are designed that are implemented for pitch and yaw control and ensure the desired closedloop dynamics in the presence of uncertainty, disturbances and noises. Robust stability and robust performance of the closedloop systems with the implementation of each controller are investigated, respectively, and the nonlinear closedloop, sampleddata system simulation results are given. 12.1 Rocket Dynamics
We consider a winged rocket that has a canard aerodynamic conﬁguration and is equipped with a solid propellant engine. The actuators of the attitudestabilization system in the longitudinal and lateral motions are four control surfaces (ﬁns) that may rotate in pairs about their axes. The roll angle stabilisation is realised by auxiliary surfaces (ailerons). The control aim is to ensure accurate tracking of required acceleration maneuvers in the presence of uncertainties in the aerodynamic characteristics, disturbances (wind gusts) and sensor noises. The controller produces the inputs to two servoactuators that rotate the ﬁns. The normal acceleration in each plane and the pitch (yaw) rate are measured, respectively, by an accelerometer and a rate gyro, and are feedback signals to the controller. To describe the rocket motion in space we shall need three orthogonal reference frames: the vehiclecarried vertical reference frame, the bodyﬁxed reference frame and the ﬂightpath reference frame. These three reference frames all have their origin in the rocket’s mass centre. 290 12 Robust Control of a Rocket Fig. 12.1. Relationship between the vehiclecarried vertical reference frame and the bodyﬁxed reference frame The x∗ axis of the vehiclecarried vertical reference frame is directed to the North, the y ∗ axis to the East, and the z ∗ axis points downwards along the local direction of the gravity. The x1 axis of the bodyﬁxed reference frame is directed towards to the nose of the rocket, the y1 axis points to the top wing, and the z1 axis points to the right wing. In Figure 12.1 we show the relationship between the vehiclecarried vertical reference frame O∗ x∗ y ∗ z ∗ and the bodyﬁxed reference frame Ox1 y1 z1 . The rocket attitude (i.e. the position of the frame Ox1 y1 z1 with respect to O∗ x∗ y ∗ z ∗ ) is characterised by the angles ϑ, ψ, γ that are called pitch angle, yaw angle, and roll angle, respectively. The value of the roll angle in the nominal motion is usually very small. The xaxis of the ﬂightpath reference frame is aligned with the velocity vector V of the rocket and the y axis lies in the plane Ox1 y1 . The relationship between the bodyﬁxed reference frame and the ﬂightpath reference frame is shown in Figure 12.2. The orientation of the bodyﬁxed reference frame with respect to the ﬂightpath reference frame is determined by the angle of attack α and the sideslip angle β . Finally, the relationship between the vehiclecarried vertical reference frame O∗ x∗ y ∗ z ∗ and the ﬂightpath reference frame Oxyz is shown in Figure 12.3. The position of the frame Oxyz with respect to O∗ x∗ y ∗ z ∗ is determined 12.1 Rocket Dynamics 291 Fig. 12.2. Relationship between the bodyﬁxed reference frame and the ﬂightpath reference frame by the ﬂightpath angle Θ, the bank angle Ψ and the aerodynamic angle of roll γc . The characteristic points along the longitudinal body axis of the rocket are shown in Figure 12.4, where xG is the coordinate of the mass centre of the rocket; xC is the coordinate of the aerodynamic centre of pressure (the point where the aerodynamic forces are applied upon); xR is the coordinate of the ﬁns rotation axis. The rocket will be statically stable or unstable depending on the location of the centre of pressure relative to the centre of mass. If xG < xC then the rocket is statically stable. The control of the lateral acceleration of the rocket is carried out in the following way. The moments about the mass centre, due to the ﬁns deﬂections, create the corresponding angle of attack and sideslip angle. These angles, in turn, lead to the lifting forces and accelerations in the corresponding planes. The control problem consists of generation of the ﬁns deﬂections by the autopilot that produce angle of attack and sideslip angle, corresponding to a maneuver called for by the guidance law, while stabilising the rocket rotational motion. The nonlinear diﬀerential and algebraic equations describing the six degreeoffreedom motion of the rocket are as follows. 292 12 Robust Control of a Rocket Fig. 12.3. Relationship between the vehiclecarried vertical reference frame and the ﬂightpath reference frame Fig. 12.4. Coordinates of the characteristic points of the body 1. Equations describing the motion of the mass centre ˙ mV = P cos α cos β Q − G sin Θ + Fx (t) ˙ mV Θ = P (sin α cos γc + cos α sin β sin γc ) +Y cos γc − Z sin γc − G cos Θ + Fy (t) ˙ = P (sin α sin γc − cos α sin β cos γc ) −mV cos ΘΨ (12.1) 12.1 Rocket Dynamics 293 +Y sin γc + Z cos γc + Fz (t) In these equations, P is the engine thrust, Q is the drag force, Y and Z are the lift forces in directions y and z , respectively, G = mg is the rocket weight (g = 9.80665 m/s2 is the acceleration of gravity at sea level), Fx (t), Fy (t), Fz (t) are generalised disturbance forces in directions x, y, z , respectively. Also, m is the mass of the rocket in the current moment of the time. The engine thrust is given by P = P0 + (p0 − p)Sa , where P0 is the engine thrust at the sea level, p0 = 101325 N/m2 is the atmospheric pressure at the sea level, p is the pressure at the ﬂight altitude, and Sa is the area of the engine nozzle output section. It is assumed that the mass consumption rate µ of the propellant remains constant, i.e. P0 = const. Further, let S and L be the reference area and the length of the rocket 2 body, respectively and let q = ρV be the dynamic pressure, where ρ is 2 the air density at the corresponding altitude. Then, Q = Qa + Qc , where Qa = cx qS is the drag force of the body and wings, δ Qc = (cxy δy  + cδz δz )qS is the drag force due to the ﬁns deﬂections, x δy , δz are the angles of the ﬁns deﬂection in the longitudinal and lateral δ motion, respectively, and cx , cxy , cδz are dimensionless coeﬃcients; x Y = Ya + Yc , where Ya = cy qS is the lift force of the body and wings, Yc = cδz δz qS is the lift force due to the deﬂection of the horizontal ﬁns, y cy = cα α and cα is a dimensionless coeﬃcient. Similar expressions hold for y y the lift force Z : Z = Za + Zc , Za = cz qS , Zc = czy δy qS , where cz = cβ β . z δ Due to the rocket symmetry cβ = −cα , czy = −cδz . y z y The aerodynamic coeﬃcients cx , cxy , cδz , cα , cβ depend on the rocket x y z geometry as well as on the Mach number M = V , where a is the sound a speed at the corresponding altitude. These coeﬃcients are determined by approximate formulae and are deﬁned more precisely using experimental data. 2. Equations, describing the rotational motion about the mass centre
f d c Ix ωx + (Iz − Iy )ωy ωz = Mx + Mx + Mx + Mx (t) ˙ f d c Iy ωy + (Ix − Iz )ωz ωx = My + My + My + My (t) ˙ δ δ (12.2) Iz ωz + (Iy − Ix )ωx ωy = ˙ f Mz + d Mz + c Mz + Mz (t) ˙ ψ = (ωy cos γ − ωz sin γ )/ cos θ ˙ θ = ωy sin γ + ωz cos γ γ = ωx − tan θ(ωy cos γ − ωz sin γ ) ˙ (12.3) f f In these equations, Ix , Iy , Iz are the rocket moments of inertia; Mx , My , f Mz are aerodynamic moments due to the angle of attack α and the sideslip 294 12 Robust Control of a Rocket
d d d angle β ; Mx , My , Mz are aerodynamic damping moments due to the roll, c c c pitch and yaw rates ωx , ωz , ωy , respectively; Mx , My , Mz are control moments due to the ﬁns deﬂections δx , δy , δz , respectively, and Mx (t), My (t), Mz (t) are generalised disturbance moments about corresponding axes. We have that f f f • Mx = (mα α + mβ β )qSL; My = mβ βqSL; Mz = mα αqSL, where x x y z α β β α mx , mx , my , mz are dimensionless coeﬃcients; ω d d d • Mx = mωx ωx qSL2 /V, My = my y ωy qSL2 /V, Mz = mωz ωz qSL2 /V , x z ωy where mωx , my , mωz are dimensionless coeﬃcients; x z δ c c c • Mx = mδx δx qSL, My = myy δy qSL, Mz = mδz δz qSL, where mδx , x z x myy , mδz are dimensionless coeﬃcients. For the given rocket conﬁguraz c c tion it is fulﬁlled that My = Zc (xG −xR ) cos β, Mz = Yc (xG −xR ) cos α so that myy = −czy (xG − xR )/L cos β, mδz = cδz (xG − xR )/L cos α. z y 3. Equations providing the relationships between the angles ψ, θ, γ, α, β, Ψ, Θ, γc sin β = (sin θ sin γ cos(Ψ − ψ ) − cos γ sin(Ψ − ψ )) cos Θ − cos θ sin γ sin Θ sin α = ((sin θ cos γ cos(Ψ − ψ ) + sin γ sin(Ψ − ψ )) cos Θ − cos θ cos γ sin Θ)/ cos β sin γc = (cos α sin β sin θ − (sin α sin β cos γ − cos β sin γ ) cos θ)/ cos Θ 4. Equations providing the accelerations nx1 , ny1 , nz1 in the bodyﬁxed reference frame nx1 = nx cos α cos β + ny sin α − nz cos α sin β ny1 = −nx sin α cos β + ny cos α + nz sin α sin β nz1 = nx sin β + nz cos β where the accelerations nx , ny , nz in the ﬂightpath reference frame are given by nx = (P cos α cos β − Q)/G ny = (P sin α + Y )/G nz = (−P cos α sin β + Z )/G Note that the accelerations ny1 , nz1 are measured by accelerometers ﬁxed with the axes y1 , z1 , respectively. For brevity, later instead of ny1 , nz1 we shall write ny , nz . Equations (12.1) – (12.5) are used later in the simulation of the nonlinear rocket stabilization system. For small deviations from the nominal(unperturbed) motion, the threedimensional motion of the rocket can be decomposed with suﬃcient accuracy (12.4)
δ δ δ (12.5) 12.1 Rocket Dynamics 295 in three independent motions – pitch, yaw and roll. In the controller design, we consider only the pitch perturbation motion. In this case the rocket attitude is characterised by the angles Θ and θ (or, equivalently, α and θ). Due to the rocket symmetry the yaw stabilisation system is analogous to the pitch stabilisation system. Fig. 12.5. Force diagram in the vertical plane The equations describing the rocket’s longitudinal motion have the form (Figure 12.5). 1. Equations describing the motion of the mass centre These equations are obtained from (12.1) by substituting β = 0, γc = 0. ˙ mV = P cos α − Q − G sin Θ + Fx (t) ˙ mV Θ = P sin α + Y − G cos Θ + Fy (t) (12.6) (12.7) 2. Equations, describing the rotational motion about the mass centre These equations are obtained from (12.2) and (12.3) by substituting ωx = 0, ωy = 0, γ = 0.
f d c ˙ Iz ωz = Mz + Mz + Mz + Mz (t) ˙ θ = ωz (12.8) 296 12 Robust Control of a Rocket 3. Equation giving the relationships between the angles α, θ, Θ This equation is obtained from (12.4) for Ψ = 0, ψ = 0. α=θ−Θ 4. Equation giving the normal acceleration ny This equation is obtained from (12.5) for β = 0. P sin α + Y P cos α − Q cos α (12.10) sin α + G G Later, it is assumed that the rocket velocity V (or Mach number) is constant and the nonlinear diﬀerential equation (12.6) associated with V is dropped from the design model. This assumption is justiﬁed by the results from the nonlinear system simulation presented later. Also, as is often customary, we shall neglect the eﬀect of the gravitational force in (12.7). In order to obtain a linear controller (12.7) – (12.10) are linearised about o o trim operating points (Θ = Θo , θ = θo , α = αo , ωz = ωz , δz = δz ) under o the assumptions that the variations ∆Θ = Θ − Θ , ∆θ = θ − θo , ∆α = o o α − αo , ∆ωz = ωz − ωz , ∆δz = δz − δz are suﬃciently small. In such a case it is fulﬁlled that sin ∆α ≈ ∆α, cos α ≈ 1. As a result, the linearised equations of the perturbed motion of the rocket take the form (for convenience the symbol ∆ is omitted) ny = − Fy (t) Y δz P +Yα ˙ δz + α+ Θ= mV mV mV δ ω α Mz (t) Mz z Mz z Mz δz + ωz + α+ ωz = ˙ Jz Jz Jz Jz ˙ = ωz θ α = θ−Θ Y δz Q+Yα δz α+ ny = G G (12.9) (12.11) α ω δ where Y α = cα qS, Y δz = cδz qS, Mz = mα qSL, Mz z = mωz qSL2 /V, Mz z = y z y z δz mz δz qSL. Equations (12.11) are represented as ˙ Θ = aΘΘ α + aΘδz + F y (t) ¨ ˙ θ = aθθ θ + aθθ α + aθδz δz + M z (t) ˙ α = θ−Θ ny = any α α + any δz δz where
+Y aΘΘ = PmV , aΘδz = Y mV α ω Mz Mz z aθθ = Jz , aθθ = Jz ˙
α δz (12.12) aθδz = Jz , z δz any δz = YG M δz any α = Q +Y α G 12.1 Rocket Dynamics 297 In (12.12) we used the notation Fy (t) = and Fy (t) mV Mz (t) J Equations (12.12) are extended by the equation describing the rotation of the ﬁns 2 2o ˙ ¨ (12.13) δz + 2ξδz ωδz δz + ωδz δz = ωδz δz M z (t) =
o where δz is the desired angle of ﬁn’s deﬂection (the servoactuator reference), ωδz is the natural frequency and ξδz the damping coeﬃcient of the servoactuator. The set of equations (12.12) and (12.13) describes the perturbed rocket longitudinal motion. The block diagram of the stabilisation system, based on (12.12) and (12.13), is shown in Figure 12.6. In the following we consider the attitude stabilisation of a hypothetical rocket whose parameters are given in Table 12.1. Table 12.1. Rocket parameters Parameter L d S Sa mo µ Jx0
Jy 0 Jz 0 P0 xG0 xC 0 xR ωδz ξδz tf Description Value Dimension m m m2 m2 kg kg/s kg m2
kg m2 kg m2 N m m m rad/s s rocket length 1 .6 rocket diameter 0.12 reference area 0.081 engine nozzle output section area 0.011 initial rocket mass 45 propellant consumption per second 0 .3 initial rocket moment of inertia 8.10 × 10−2 about xaxis initial rocket moment of inertia 9.64 about y axis initial rocket moment of inertia 9.64 about z axis engine thrust at the sea level 740g initial rocket mass centre coordinate 0 .8 initial rocket pressure centre coordinate 1 .0 ﬁns rotation axis coordinate 0 .3 natural frequency of the servoactuator 150 servoactuator damping 0.707 duration of the active stage of the 40 ﬂight 298 12 Robust Control of a Rocket Fig. 12.6. Block diagram of the stabilisation system During the ﬂight the coeﬃcients of the rocket motion equations vary due to the decreasing of the vehicle mass and also due to variation of the aerodynamic coeﬃcients as a result of the velocity and altitude change. 12.1 Rocket Dynamics 299 The coeﬃcients in the motion equations are to be determined for the nominal (unperturbed) rocket motion. Nominal values of the parameters are assumed in the absence of disturbance forces and moments. The unperturbed longitudinal motion is described by the equations ˙ mV ∗ = P cos α∗ − Q∗ − mg0 sin Θ∗ ˙ mV ∗ Θ = P sin α∗ + Y ∗ − mg0 cos Θ∗ ˙ H = V ∗ sin Θ∗ m = −µ∗ ˙ where α∗ = θ ∗ − Θ ∗
∗ δz = −(mα /mδz )α∗ z z ∗ Q∗ = cx qS + cδz δz qS x ∗ Y ∗ = cα α∗ qS + cδz δz qS y y q= ρV ∗ 2 , ρ = ρ(H ) 2 cx = cx (M ), cα = cα (M ), cδz = cδz (M ) y y y y M = V ∗ /a∗ , a∗ = a∗ (H ) mα = (cx + cα )(xG − xC )/L, mδz = cδz (xG − xR )/L z y z y θ∗ = θ∗ (t) In these equations, θ∗ (t) is the desired time program for changing the pitch angle of the vehicle. We now consider the dynamics of the stabilisation system with coeﬃcients calculated for the unperturbed motion in which the rocket performs a horizontal ﬂight in the atmosphere, i.e. ϑ∗ = 0◦ with initial velocity V ∗ = 300 m/s and diﬀerent altitude H ∗ . The parameters of the unperturbed motion are computed by numerical integration of the equations given above, taking into account the change of the vehicle mass during the ﬂight, the dependence of the air density on the ﬂight altitude and the dependence of the aerodynamic coeﬃcients on the Mach number. The parameters of the unperturbed motion are obtained by the function sol rock that invokes the function dif rock, setting the diﬀerential equations, and the MATLAB r function ode23tb intended to solve stiﬀ diﬀerential equations. The dependence of the aerodynamic coeﬃcients on the Mach number for the speciﬁc vehicle is described in the ﬁles cx fct.m and cy fct.m. The ﬂight parameters p, ρ and M are computed as functions of the altitude by the command air data that implements an approximate model of the international standard atmosphere(ISA). The time program of the pitch angle is set by the function theta rock. 300 12 Robust Control of a Rocket
Rocket velocity at different altitudes
1500 H0 = 10 000 m 1000 H0 = 5 000 m V (m/s) H0 = 1 000 m 500 0 0 5 10 15 20 25 Time (s) 30 35 40 45 50 Fig. 12.7. Rocket velocity at diﬀerent altitudes The rocket velocity as a function of the time for initial velocity V = 300 m/s and ﬂights at altitudes 1000, 5000 and 10000 m is shown in Figure 12.7. It is seen that between the 15th second and 40th second of the ﬂight the velocity may be assumed constant. The ﬂight parameters corresponding to the unperturbed motion with initial altitude H ∗ = 5000 m are given in Table 12.2 for diﬀerent time periods. The coeﬃcients in the diﬀerential equations of the perturbed motion are computed on the basis of the parameters of unperturbed motion by using the function cfn rock. We consider the following as a rocket transfer function
o Gny δz (s) = ny (s) o δz (s) In Figure 12.8 we show a family of magnitude frequency responses (logarithmic) of the vehicle for initial altitude H0 = 5000 m and various time instants. The magnitude response of the openloop system has a large peak and varies with time. In the following sections, we will consider the controller design of the stabilisation system for the rocket dynamics at the 15th second of ﬂight at an initial altitude H ∗ = 5000 m. 12.2 Uncertainty Modelling Table 12.2. Flight parameters for the unperturbed motion 301 t (s) 10 15 20 25 30 35 40 V (m/s) 869.8 902.4 907.2 905.0 901.5 898.0 894.7 M 2.710 2.809 2.822 2.814 2.801 2.789 2.778 H (m) 4873 4815 4763 4716 4674 4637 4604 xG (m) 0.75 0.725 0.70 0.675 0.65 0.625 0.60 Fig. 12.8. Family of logarithmic magnitude frequency responses of the rocket 12.2 Uncertainty Modelling
The main variation of coeﬃcients of perturbed motion happens in the aerodynamics coeﬃcients cx , cα , mα , mωz . As noted above, these coeﬃcients y z z are usually determined experimentally as functions of the Mach number and may vary in suﬃciently wide intervals in practice. This is why it is supposed Magnitude (dB) 302 12 Robust Control of a Rocket that the construction parameters of the vehicle are known exactly and the aerodynamic coeﬃcients lead to 30% variations in the perturbed motion case. This uncertainty is actually much larger than the real one but it makes it possible for the controller designed to work satisfactorily under the changes of the rocket mass and velocity. In this way, the increased robustness of the closedloop system may help overcome (to some extent) the timevariance of the plant parameters. In deriving the uncertain model of the rocket dynamics we shall eliminate the angle Θ in the system (12.12) by using the relationship Θ = θ − α. This allows us to avoid the use of the angle θ itself working only with its derivatives ¨ ˙ θ and θ. This, in turn, makes it possible to avoid the usage of an additional integrator in the plant dynamics that leads to violation of the conditions for controller existence in the H∞ design. As a result, we obtain the equations ˙ α = −aΘΘ α + θ − aΘδz δz ˙ ¨ ˙ θ = aθθ θ + aθθ α + aθδz δz ˙ ny = any α α + any δz δz (12.14) The seven uncertain coeﬃcients of the perturbed motion equations are given in Table 12.3.
Table 12.3. Uncertainty in rocket coeﬃcients Coeﬃcients Uncertainty range (%) aΘΘ 30 aΘδz 30 aϑϑ 30 ˙ aϑϑ 30 aϑδz 30 any α 30 any δz 30 Each uncertain coeﬃcient (c) may be represented in the form c = c(1 + pc δc ) where c is the nominal value of the coeﬃcient c (at a given time instant), pc is the relative uncertainty (pc = 0.3 for uncertainty 30%) and −1 ≤ δc ≤ 1. The uncertain coeﬃcient c = c(1 + pc δc ) may be further represented as an upper linear fractional transformation (LFT) in δc ,
c = FU (Mc , δc ) where 12.2 Uncertainty Modelling 303 Mc = as is shown in Figure 12.9. 0c pc c Fig. 12.9. Uncertain parameter as LFT The uncertainty model corresponding to the system of (12.14) is diﬃcult to obtain directly. This is why we shall derive the uncertain models corresponding to the individual equations in the system (12.14) and then we shall combine them in a common model. Consider ﬁrst the equation ˙ α = −aΘΘ α + θ − aΘδz δz ˙ The uncertain model corresponding to this equation is shown in Figure 12.10 Fig. 12.10. Block diagram of the uncertain model for α where MΘΘ = 0 aΘΘ pΘΘ aΘΘ 304 12 Robust Control of a Rocket MΘδz = 0 aΘδz pΘδz aΘδz pΘΘ = 0.3, pΘδz = 0.3, δaΘΘ  ≤ 1, δaΘδz  ≤ 1 and the nominal values of the coeﬃcients are denoted by a bar. Fig. 12.11. Block diagram of the uncertain model for θ The uncertain model corresponding to the equation ¨ ˙ θ = aθθ θ + aθθ α + aθδz δz ˙ is shown in Figure 12.11, where Mθθ = ˙ Mθθ = Mθδz = 0 aθθ ˙ pθθ aθθ ˙ ˙ 0 aθθ pθθ aθθ 0 aθδz pθδz aθδz and pθθ = 0.3, pθθ = 0.3, pθδz = 0.3, δaθθ  ≤ 1, δaθθ  ≤ 1, δaθδz  ≤ 1. ˙ ˙ Finally, the uncertain model corresponding to the equation ny = any α α + any δz δz is shown in Figure 12.12, where Mny α = Mny δz = 0 any α pny α any α 0 any δz pny δz any δz 12.2 Uncertainty Modelling 305 Fig. 12.12. Block diagram of the uncertain model for ny Fig. 12.13. Plant model in the form of upper LFT and pny α = 0.3, pny δz = 0.3, δany α  ≤ 1, δany δz  ≤ 1. By “pulling out”the uncertain parameters from the known part of the model one obtains an uncertain model in the form of upper LFT, shown in Figure 12.13 with a 7 × 7 matrix ∆ of uncertain parameters, ∆ = diag(δaΘΘ , δaΘδz , δaθθ , δaθθ , δaθδz , δany α , δany δz ) ˙ Due to the complexity of the plant, the easiest way in simulation and design to deﬁne the uncertainty model is to implement the command sysic. In this o case, the plant input is considered as the reference signal u(t) = δϑ to the ﬁn’s servoactuator, and the plant outputs are the normal acceleration ny and the ˙ derivative θ of the pitch angle. A model thus obtained is of 4th order. The rocket uncertainty model is implemented by the Mﬁle mod rock.m. For a given moment of the time, the nominal model coeﬃcients are computed by using the ﬁle cfn rock.m. The values of the rocket parameters, as given in Table 12.1, are set in the ﬁle prm rock.m. 306 12 Robust Control of a Rocket 12.3 Performance Requirements
The aim of the rocket stabilisation system is to achieve and maintain the desired normal acceleration in the presence of disturbances and of sensor noises. Fig. 12.14. Block diagram of the closedloop system with performance requirements A blockdiagram of the closedloop system including the feedback and controller as well as the elements reﬂecting the model uncertainty and weighting functions related to performance requirements is shown in Figure 12.14. This system has a reference signal r, noises ηa and ηg on measurement of ˙ ny and θ, respectively, and two weighted outputs ep and eu that characterise performance requirements. The transfer functions Wa and Wg represent the dynamics of the accelerometer measuring ny , and the dynamics of the rate ˙ gyro measuring θ, respectively. The coeﬃcient Ka is the accelerometer gain. The system M is the ideal model to be matched by the designed closedloop system. The rectangular box, shown with dashed lines, represents the perturbed plant model G = FU (Grock , ∆). Inside the rectangular box is the nominal model Grock of the rocket and the block ∆ parametrising the model uncertainty. The matrix ∆ is unknown but has a diagonal structure and is norm bounded, ∆ ∞ < 1. It is required for performance that the transfer function matrix from r, ηa and ηg to ep and eu should be small in the sense of . ∞ , for all possible uncertain matrices ∆. The transfer function matrices Wp and Wu are employed to represent the relative signiﬁcance of performance 12.3 Performance Requirements 307 requirements over diﬀerent frequency ranges. The measured, output feedback signals are ˙ y1 = Wa ny + ηa , y2 = Wg θ + ηg The transfer functions Wa and Wg in this design are chosen as Wa = Wg = 0.4 1.0 × 10−6 s2 + 2.0 × 10−3 s + 1 5.5 2.56 × 10−6 s2 + 2.3 × 10−3 s + 1 The highfrequency noises ηa and ηg , which occurred in measuring the normal acceleration and the derivative of the pitch angle, may be represented in the form ˜ ˜ ηa = Wan ηa ηg = Wgn ηg where Wan and Wgn are weighting transfer functions (shaping ﬁlters) and ηa , ˜ ˜ ˜ ηg are arbitrary (random) signals satisfying the condition ηa 2 ≤ 1, ηg 2 ≤ ˜ 1. By appropriate choice of the weighting functions Wan and Wgn it is possible to form the desired spectral contents of the signals ηa and ηg . (Note that a more realistic approach to represent the noises ηa and ηg is to describe them as timevarying stochastic processes.) In the given case Wan and Wgn are highpass ﬁlters whose transfer functions are Wan (s) = 2 × 10−4 0.12s + 1 , 0.001s + 1 Wgn (s) = 6 × 10−5 0.18s + 1 0.002s + 1 The synthesis problem of the rocketattitude stabilisation system considered here is to ﬁnd a linear, stabilising controller K (s), with feedback signals y1 and y2 , to ensure the following properties of the closedloop system. Nominal performance: The closedloop system achieves nominal performance. That is, the performance criterion is satisﬁed for the nominal plant model. In this case, the perturbation matrix ∆ is zero. Denote by Φ = Φ(G, K ) the transfer function of the closedloop system from r, ηa and ηg to ep and eu , ˜ ˜ ⎤ ⎡ r(s) ep (s) ˜ = Φ(s) ⎣ ηa ⎦ eu (s) ηg ˜ The criterion for nominal performance is to satisfy the inequality Φrock (s)
∞ <1 (12.15) 308 12 Robust Control of a Rocket where Φrock (s) is the transfer function matrix of the closedloop system for the case ∆ = 0. This criterion is a generalisation of the mixed sensitivity optimisation problem and includes performance requirements by matching an “ideal system” M. Robust stability: The closedloop system achieves robust stability if the closedloop system is internally stable for all possible, perturbed plant dynamics G = FU (Grock , ∆). Robust performance: The closedloop system must remain internally stable for each G = FU (Grock , ∆) and, in addition, the performance criterion Φ(s)
∞ <1 (12.16) must be satisﬁed for each G = FU (Grock , ∆). For the problem under consideration here, it is desired to design a controller to track commanded acceleration maneuvers up to 15g with a time constant no greater than 1 s and a command following accuracy no worse than 5%. The controller designed should also generate control signals that do not violate the constraints δz  < 30 deg (≈ 0.52 rad), α < 20 deg (≈ 0.35 rad) where δz , α are the angle of the control ﬁn’s deﬂection and angle of attack, respectively. In addition to these requirements it is desirable that the controller should have acceptable complexity, i.e. it is of suﬃciently low order. The ideal system model to be matched with, which satisﬁes the requirements to the closedloop dynamics, is chosen as M= 1 0.0625s2 + 0.20s + 1 and the performance weighting functions are Wp (s) = 1.0s2 + 3.0s + 5.0 , Wu (s) = 10−5 1.0s2 + 2.9s + 0.005 The magnitude frequency response of the model is shown in Figure 12.15. The performance weighting functions are chosen so as to ensure an acceptable tradeoﬀ between the nominal performance and robust performance of the closedloop system with control action that satisﬁes the constraint imposed. These weighting functions are obtained iteratively by trial and error. 12.3 Performance Requirements
10
1 309 Model frequency response 10 0 10 −1 Magnitude 10 −2 10 −3 10 −4 10 −5 10 −2 10 −1 10 10 Frequency (rad/s) 0 1 10 2 10 3 Fig. 12.15. Model frequency response 10 1 Inverse of the performance weighting function 10 0 Magnitude 10 −1 10 −2 10 −3 10 −4 10 −3 10 −2 10 Frequency (rad/s) −1 10 0 10 1 10 2 Fig. 12.16. Frequency response of the inverse weighting function In Figure 12.16 we show the frequency response of the inverse of the per− formance weighting function Wp 1 . As can be seen from the ﬁgure, over the lowfrequency range we require a small diﬀerence between the system and model and a small eﬀect on the system output due to the disturbances. This ensures good reference tracking and a small error in the case of lowfrequency disturbances. The openloop interconnection for the rocket stabilisation system is generated by the ﬁle olp rock.m. The internal structure of the system with 11 inputs and 11 outputs is shown in Figure 12.17 and is computed by using the ﬁle sys rock.m that saves the openloop system as the variable sys ic. The sensors transfer functions and weighting performance functions are deﬁned in 310 12 Robust Control of a Rocket Fig. 12.17. Block diagram of the openloop system with performance requirements the ﬁles wsa rock.m and wts rock.m, respectively. The openloop system is of 14th order. The inputs and outputs of the uncertainty are stored as the variables pertin and pertout. The reference signal is the variable ref and the noises at the inputs of the shaping ﬁlters are noise{1} and noise{2}. The control action is the variable control and the measured outputs are the variables y{1} and y{2}. Both variables pertin and pertout are 7dimensional. Variables noise and y are 2dimensional. ref, n y, d theta, e p and e u are all scalar variables. A schematic diagram showing the speciﬁc input/output ordering for the system variable sys ic is shown in Figure 12.18. 12.4 H∞ Design
In this section, the H∞ (sub)optimal design method is employed to ﬁnd an output feedback controller K for the connection shown in Figure 12.19. It is noted that in this setup the uncertainty inputs and outputs (i.e. signals 12.4 H∞ Design 311 Fig. 12.18. Schematic diagram of the openloop system structure Fig. 12.19. Closedloop system with H∞ controller around ∆) are excluded. The variable hin ic, corresponding to the openloop transfer function P in Figure 12.19, is obtained by the command line hin_ic = sel(sys_ic,[8:11],[8:11]) The H∞ optimal control synthesis minimises the . ∞ norm of Φrock = FL (P, K ) in terms of all stabilising controllers (K ). According to the deﬁnition given above, Φrock is the nominal transfer function matrix of the closedloop system from the reference and noises (the variables ref and noise) to the weighted outputs e p and e u. The H∞ controller is computed by the Mﬁle hin rock.m. It utilises the function hinfsyn, which for a given openloop system calculates an H∞ (sub)optimal control law. In the given case the ﬁnal value of Φrock ∞ (γ ) achieved is 4.53 × 105 that shows a poor H∞ performance. The controller obtained is of 14th order. Robust stability and robust performance analysis of the closedloop system are carried out by the ﬁle mu rock.m. The robust stability test is related to the upperleft 7 × 7 subblock of the closedloop system transfer matrix formed by sys ic and the designed controller K . To achieve robust stability it is 312 12 Robust Control of a Rocket necessary for each frequency considered an upper bound of the structured singular value µ of that subblock transfer function matrix must be less than 1. In the computation of µ the structured uncertainty is deﬁned as
Robust stability 10 0 10 −1 10 −2 mu 10 −3 Solid line: upper bound
−4 10 Dashed line: lower bound 10 −5 10 −6 10 −3 10 −2 10 −1 10 Frequency (rad/s) 0 10 1 10 2 Fig. 12.20. Robust stability of the closedloop system with Khin blkrsR = [1 1;1 1;1 1;1 1;1 1;1 1;1 1] The frequency response of the structured singular value for the case of robust stability analysis is shown in Figure 12.20. The maximum value of µ is 0.52, which means that the stability of the closedloop system is preserved under all perturbations that satisfy ∆ ∞ < 0.1 . 52 The nominal performance is tested on the lower 2 × 3 block of the closedloop system transfer matrix. From the frequency response of the nominal performance shown in Figure 12.21 it is seen that the nominal performance is achieved within a large margin. The obtained peak value of γ is 0.43, which is much less than 1. The robust performance of the closedloop system with the H∞ controller is also investigated by means of the µanalysis. The closedloop transfer function matrix has 10 inputs and 9 outputs. The ﬁrst 7 inputs and outputs correspond to the 7 channels that connect to the uncertainty matrix ∆, while the last 3 inputs and 2 outputs correspond to the weighted sensitivity of the closedloop system and connect to a ﬁctitious uncertainty matrix. Hence, for µanalysis of the robust performance the blockstructure of the uncertainty must comprise a 7 × 7 diagonal, real uncertainty block ∆ and a 2 × 3 complex 12.4 H∞ Design
Nominal performance 313 0.45 0.4 0.35 0.3 0.25 0.2 0.15 0.1 0.05 0 −3 10 10 −2 10 −1 10 Frequency (rad/s) 0 10 1 10 2 Fig. 12.21. Nominal performance of the closedloop system for Khin uncertainty block ∆F ∆P := ∆0 0 ∆F : ∆ ∈ R7×7 , ∆F ∈ C 2×3 The robust performance (with respect to the uncertainty and performance weighting functions) is achieved if and only if, over a range of frequency under consideration, the structured singular value µ∆P (jω ) at each ω is less than 1. The frequency response of µ for the case of robust performance analysis is given in Figure 12.22. The peak value of µ is 1.153, which shows that the robust performance has not been achieved. Or in other words, the system does not preserve performance under all relative parameter changes shown in Table 12.3. The results obtained are valid for t = 15 s. To check if the controller designed achieves robust stability and robust performance of the closedloop system at other time instants of ﬂight, further analysis should be conducted with corresponding dynamics. The simulation of the closedloop system is implemented by using the ﬁle clp rock.m that corresponds to the structure shown in Figure 12.23. In this structure the performance weighting functions Wp and Wu , used in the system design and performance analysis, are absent. The simulation shows the transient responses with respect to the reference signal for t = 15 s. The transient responses are computed by using the function trsp under the assumption of “frozen”model parameters. (Note that all transient responses are shown with a time oﬀset of 15 s.) In Figure 12.24 we show the transient responses of the closedloop system with the designed H∞ controller for a step signal with magnitude r = ±15g , 314 12 Robust Control of a Rocket
Robust performance
1.4 1.2 Solid line: upper bound Dashed line: lower bound 1 0.8 mu
0.6 0.4 0.2 0 −3 10 10 −2 10 −1 10 Frequency (rad/s) 0 10 1 10 2 Fig. 12.22. Robust performance of the closedloop system for Khin Fig. 12.23. Structure of the closedloop system 12.5 µSynthesis
Response in ny
25 315 20 15 10 5 n (g) y 0 −5 −10 −15 −20 −25 0 1 2 3 4 Time (s) 5 6 7 8 9 Fig. 12.24. Transient response of the closedloop system, t = 15 s which corresponds to a change in the normal acceleration with ±15g . The transient response for this controller is oscillatory. The overshoot is under 30% and the settling time is approximately 2 s. For the same reference signal, ˙ the transient response of the pitch rate θ is shown in Figure 12.25. The time response contains highfrequency oscillations. It is noticed that the H∞ controller designed does not satisfy the requirements for the closedloop system dynamics. Better results are obtained with the µcontroller designed in the next section. 12.5 µSynthesis
In this section, we consider the same design problem but using another approach, namely the µsynthesis method. Because the uncertainties considered in this case are highly structured, better results with respect to the closedloop performance may be achieved by the µsynthesis. The model of the openloop system has 14 states, 11 inputs and 11 outputs. Uncertainties (i.e. parameter variations) are considered with seven parameters aΘΘ , aΘδz , aθθ , aθθ , aθδz , any α and any δz . ˙ Denote by P (s) the transfer function matrix of the 11input, 11output openloop system nominal dk and let the block structure of the uncertainty matrix ∆P be deﬁned as 316 12 Robust Control of a Rocket
Response in dθ/dt
1 0.8 0.6 0.4 0.2 dθ/dt (rad/s) 0 −0.2 −0.4 −0.6 −0.8 −1 0 1 2 3 4 Time (s) 5 6 7 8 9 ˙ Fig. 12.25. Transient response of θ, t = 15 s ∆P := ∆0 0 ∆F : ∆ ∈ R7×7 , ∆F ∈ C 2×3 The ﬁrst block ∆ of the matrix ∆P is diagonal and corresponds to the parametric uncertainties in the vehicle model. The second, diagonal block ∆F is a ﬁctitious uncertainty block, which is used to introduce the performance requirements in the design framework of the µsynthesis. To satisfy robust performance requirements it is necessary to ﬁnd a stabilising controller K (s), such that at each frequency ω over relevant frequency range, the following inequality of the structured singular value holds µ∆P [FL (P, K )(jω )] < 1 The above condition guarantees robust performance of the closedloop system, i.e., (12.17) Φ(s) ∞ < 1 The µsynthesis of the rocket controller is implemented by the Mﬁle ms rock.m that exploits the function dkit. The uncertainty description is deﬁned in the ﬁle dk rock.m by the statement BLK DK = [1 1;1 1;1 1;1 1;1 1;1 1;1 1;3 2] The results from the iterations after each step are shown in Table 12.4. The controller obtained, after 3 iterations, is of 28th order. 12.5 µSynthesis Table 12.4. Results from the DK iterations Iteration Controller order Maximum value of µ 14 1.730 1 18 1.084 2 28 0.810 3 317 To check the robust stability and robust performance of the closedloop system it is necessary to follow µ analysis using again the ﬁle mu rock.m.
Robust stability 10 0 10 −1 10
mu −2 10 −3 Solid line: upper bound 10 −4 Dashed line: lower bound 10 −5 10 −3 10 −2 10 −1 10 Frequency (rad/s) 0 10 1 10 2 Fig. 12.26. Robust stability of the closedloop system with Kmu The frequency response of the structured singular value for the case of robust stability is shown in Figure 12.26. The maximum value of µ is 0.441, which shows that under the considered parametric uncertainties the closedloop system stability is preserved. The frequency response of the structured singular value for the case of robust performance is shown in Figure 12.27. The maximum value of µ is 0.852, which shows that the closedloop system achieves robust performance. This value of µ is smaller than the corresponding value of µ, obtained in the H∞ design, i.e. the µcontroller provides better robustness. 318 12 Robust Control of a Rocket
Robust performance
0.9 0.8 0.7 0.6 Solid line: upper bound 0.5 Dashed line: lower bound mu
0.4 0.3 0.2 0.1 0 −3 10 10 −2 10 −1 10 Frequency (rad/s) 0 10 1 10 2 Fig. 12.27. Robust performance of the closedloop system with Kmu Closed−loop magnitude plot 20 0 −20
Magnitude (dB) −40 −60 −80 −100 −1 10 10 0 10 Frequency (rad/s) 1 10 2 10 3 Fig. 12.28. Magnitude response of the closedloop system The frequency responses of the closedloop system with the µcontroller are obtained by using the ﬁle frs rock.m and are shown in Figures 12.28 and 12.29. Over the lowfrequency region the value of the magnitude response is 12.5 µSynthesis
Closed−loop phase plot 319 0 −50 Phase (deg) −100 −150 −200 −250 −1 10 10 0 10 Frequency (rad/s) 1 10 2 10 3 Fig. 12.29. Phase response of the closedloop system close to 1, i.e. the reference signal can be followed accurately. The closed loop system bandwidth is about 2 rad/s.
Sensitivity to accelerometer and rate gyro noises
−40 −60 −80 Magnitude (dB) −100 −120 Solid line: sensitivity to accelerometer noise Dashed line: sensitivity to rate gyro noise −140 −160 −1 10 10 0 10 1 10 Frequency (rad/s) 2 10 3 10 4 Fig. 12.30. Sensitivity to the noises ηa and ηg ˜ ˜ 320 12 Robust Control of a Rocket In Figure 12.30 we show the frequency responses of the transfer functions ˜ with respect to the noises ηa and ηg . The noises of the accelerometer and ˜ of the rate gyro are attenuated 1000 times (60 dB), i.e. both noises have a relatively weak inﬂuence on the output of the closedloop system.
Controller magnitude plot
60 40 Solid line: K o δn y Dashed line: K o dθ/dt δ
20 Magnitude (dB) 0 −20 −40 −60 −80 −1 10 10 0 10 1 10 Frequency (rad/s) 2 10 3 10 4 Fig. 12.31. Controller magnitude plots The magnitude and phase plots of the controller transfer functions are shown in Figures 12.31 and 12.32, respectively. In Figure 12.33 we show the transient responses of the closedloop system with the designed µcontroller for a step signal with magnitude r = ±15 g that corresponds to a change in the normal acceleration with ±15g . The overshoot is under 1% and the settling time is less than 1 s. For the same reference ˙ signal, the transient response of the pitch rate θ is shown in Figure 12.34. The angle of deﬂation δz of the control ﬁns in the closed loop system is shown in Figure 12.35. The magnitude of this angle is less than 30 deg, as required. In Figure 12.36 we show the perturbed transient responses of the closedloop system for a step reference signal with magnitude r = ±15g . The designed µcontroller can be used in cases of a wider range of vehicle coeﬃcient values. In Figure 12.37 we show the transient response with respect to the reference signal for the 15th second of the ﬂight at altitude H = 1000 m 12.5 µSynthesis
Controller phase plot 321 200 150 Solid line: K o n δ y Dashed line: K o dθ/dt δ 100 Phase (deg) 50 0 −50 −100 −150 −200 −1 10 10 0 10 1 10 Frequency (rad/s) 2 10 3 10 4 Fig. 12.32. Controller phase plots Response in ny
20 15 10 5 ny (g) 0 −5 −10 −15 −20 0 1 2 3 4 Time (s) 5 6 7 8 9 Fig. 12.33. Transient response of the closed loop system, t = 15 s and in Figure 12.38 is the corresponding transient response for the 15th second of the ﬂight at altitude H = 10000 m. Due to the achieved robustness of the closedloop system, both responses are similar to that of the design case, 322 12 Robust Control of a Rocket
Response in dϑ/dt
0.8 0.6 0.4 0.2 dϑ/dt (rad/s) 0 −0.2 −0.4 −0.6 −0.8 0 1 2 3 4 Time (s) 5 6 7 8 9 ˙ Fig. 12.34. Transient response of θ, t = 15 s Fin deflection
0.4 0.3 0.2 0.1 δ (rad) 0 −0.1 −0.2 −0.3 −0.4 0 1 2 3 4 Time (s) 5 6 7 8 9 Fig. 12.35. Control action in the closed loop system, t = 15 s though there is signiﬁcant diﬀerence in the rocket dynamics between these two cases and the design case. This shows that the designed controller may be 12.5 µSynthesis
Transient responses of the perturbed systems
20 323 15 10 5 ny (g) 0 −5 −10 −15 −20 0 1 2 3 4 Time (s) 5 6 7 8 9 Fig. 12.36. Perturbed transient response of the closedloop system, t = 15 s Response in ny
15 10 5 ny (g) 0 −5 −10 −15 0 1 2 3 4 Time (s) 5 6 7 8 9 Fig. 12.37. Transient response of the closedloop system for H = 1000 m employed for system stabilisation for diﬀerent altitudes and velocities, which would simplify the controller implementation. 324 12 Robust Control of a Rocket
Response in n
20
y 15 10 5 ny (g) 0 −5 −10 −15 −20 0 1 2 3 4 Time (s) 5 6 7 8 9 Fig. 12.38. Transient response of the closedloop system for H = 10000 m As was noted above, the controller obtained by the µsynthesis is initially of 28th order. In order to reduce the order of the controller, the ﬁle red rock.m may be used. This ﬁle implements system balancing followed by optimal Hankel approximation, calling functions sysbal and hankmr. As a result the controller order can be reduced to 8. Further reduction of the controller order leads to deterioration of the closedloop system dynamics. The structured singular values of the closedloop system with the fullorder and reducedorder controllers are compared in Figure 12.39. They are close to each other over the whole frequency range of practical interest. The transient responses of the closed loop systems with fullorder and reducedorder controllers are indistinguishable, and are thus not included. 12.6 Discretetime µSynthesis
The rocket stabilisation is, in practice, implemented by a digital controller that may be obtained by discretization of a continuoustime (analogue) controller at a given sampling frequency. Another possible approach is to discretise the continuoustime, open loop plant and then synthesize a discretetime controller directly. In this section we describe the later approach that produces better results in this design exercise. The discretetime, openloop interconnection is obtained by using the ﬁle dlp rock.m. Since the frequency bandwidth of the designed closedloop system in the continuous time case is about 2 Hz, the sampling frequency is 12.6 Discretetime µSynthesis
10
3 325 Singular values of the controller transfer function matrices 10 2 10 1 10 0 Solid line: full−order controller Dashed line: reduced−order controller 10 −1 10 −2 10 −6 10 −4 10 10 Frequency (rad/s) −2 0 10 2 10 4 Fig. 12.39. Singular values of the fullorder controller and reducedorder controller chosen equal to 250 Hz that corresponds to a sampling period Ts of 0.004 s. For this frequency we derive a discretised model of the openloop system by using the function samhld. The controller may be synthesised by the aid either of H∞ optimisation (by using the function dhinfsyn), or µsynthesis (by using the function dkit). In the following, we consider the µsynthesis of a discretetime controller that is obtained by implementing the ﬁles dms rock.m and ddk rock.m. As in the µsynthesis of the continuoustime controller, the synthesis is conducted for the fullorder vehicle model. Hence, the uncertainty structure under consideration is of the form BLK DK = [1 1;1 1;1 1;1 1;1 1;1 1;1 1;3 2] In the discretetime case, the frequency range is on the unit circle and chosen as the interval [0, π ]. To set up 100 frequencies, the following line is used OMEGA DK = [pi/100:pi/100:pi]; For the discretetime design it is necessary to include the command line DISCRETE DK = 1; 326 12 Robust Control of a Rocket The design follows the usual route, by calling the function dkit. In Table 12.5 the results of the discrete time DK iterations are listed.
Table 12.5. Results of the DK iterations Iteration Controller order Maximum value of µ 14 2.101 1 22 0.600 2 28 0.730 3 The discretetime controller KD obtained is of 28th order. Note that better robustness is achieved with the controller obtained at the 2nd step. This controller, however, does not ensure the desired closedloop dynamics.
Robust stability 10 0 10 −1 10 −2 10
mu −3 Solid line: upper bound 10 −4 Dashed line: lower bound 10 −5 10 −6 10 −7 10 −3 10 −2 10 −1 10 Frequency (rad/s) 0 10 1 10 2 10 3 Fig. 12.40. Robust stability of the closedloop system with KD Robust stability and robust performance of the closedloop system with KD are shown in Figures 12.40 and 12.41, respectively, in which the µ values over frequency range are calculated by the ﬁle dmu rock.m. It is seen that the discretetime closedloop system achieves both robust stability and robust performance, just as in the continuoustime case with Kmu . 12.6 Discretetime µSynthesis
Robust performance
0.9 327 0.8 0.7 0.6 Solid line: upper bound 0.5 Dashed line: lower bound mu
0.4 0.3 0.2 0.1 0 −3 10 10 −2 10 −1 10 Frequency (rad/s) 0 10 1 10 2 10 3 Fig. 12.41. Robust performance of the closedloop system with KD Response in ny
20 15 10 5 ny (g) 0 −5 −10 −15 −20 0 1 2 3 4 Time (s) 5 6 7 8 9 Fig. 12.42. Transient response for KD , t = 15 s 328 12 Robust Control of a Rocket
Fin deflection
0.4 0.3 0.2 0.1 δ (rad) 0 −0.1 −0.2 −0.3 −0.4 0 1 2 3 4 Time (s) 5 6 7 8 9 Fig. 12.43. Control action in the closed loop system for KD , t = 15 s In Figures 12.42 and 12.43 we show the transient response of the closed loop system with respect to the reference signal, and the corresponding control action, respectively. These two ﬁgures are generated by the ﬁle dcl rock.m that utilises the function sdtrsp. The results displayed above show that the achieved behaviour of the sampled data, closedloop system are close to those in the continuoustime case, with each corresponding µcontroller. 12.7 Simulation of the Nonlinear System
The dynamics of the nonlinear, timevarying rocket model diﬀers from that of the linear, timeinvariant model used in the analysis and design described in the previous sections. Also, for large reference signals there is a strong interconnection between the longitudinal and lateral motions that may aﬀect the stability and performance of the whole system. It is therefore important to study the dynamic behaviour of the closed loop, nonlinear, timevarying system with the designed controller that regulates the sixdegreeoffreedom rocket motion. The closedloop rocket stabilisation system of the nonlinear, timevarying plant is simulated by using the Simulink r models c rock.mdl (for the continuoustime system with an analogue controller) as well as d rock.mdl (for the sampled data system with a digital controller). Both systems involve 12.7 Simulation of the Nonlinear System 329 two identical controllers for the longitudinal and lateral motion. The sampleddata system also contains 16bit analoguetodigital and digitaltoanalogue converters. (The outputs of the digitaltoanalogue converters are scaled to give the reference input of the servoactuators.) Both models allow us to simulate the closedloop system for diﬀerent reference, disturbance and noise signals. The roll motion is stabilised by a separate gyro with simple leadlag compensator. (A robust roll controller is also possible to implement.) In Figure 12.44 we show the Simulink r model d rock.mdl of the nonlinear, sampleddata, closedloop system. Before carrying out simulation it is necessary to assign the model parameters by using the Mﬁle init c rock.m (in the continuoustime case) or the the Mﬁle init d rock.m (in the discretetime case). Before the perturbation motion begins to aﬀect (i.e. before the time instance t0 ), only the nonlinear equations of the unperturbed (program) motion are solved. (This ensures that the parameters of the linearised model at t0 are the same as those used in the controller design.) After t0 , the equations of the perturbed motions are solved by using the Sfunction s rock.m. The initial conditions for the perturbed motion are assigned in the ﬁle inc rock.m that is invoked by s rock.m. During the time interval [0, t0 ], the equations of the unperturbed motion are solved in the ﬁle inc rock.m by using the function sol rock.m. The values of the pitch angle θ for the program motion are assigned in the ﬁle theta rock.m. The simulation of the perturbed motion, which involves the controller action, is based on the nonlinear diﬀerential and algebraic equations (12.1)– (12.5). In Figures 12.45 and 12.46 we show the transient response of the nonlinear sampleddata system with respect to the normal accelerations ny and nz , respectively, for a reference step change of 15g occurring at t0 = 15 s in each channel. In the simulation we used the discretetime controller designed for the same moment of the time in the previous section. It is seen that the behaviour of nz is very close to the behaviour of the corresponding variable shown in Figure 12.42. The small diﬀerence in the responses of ny and nz is due to the inﬂuence of the Earth’s gravity on the pitch angle. 330 Simulink model of the sampled−data rocket stabilisation system
Roll control
ainWr*numWr(s num(s) denKr(s) denWi(s) Roll giro Roll compensator ainWi*numWi(s) Ka Yaw control
denWr(s) delta_y Roll fins ref_nz Gain1 gamma
gamma In1 Out1 ainWd*numWd(s denWd(s) Fins_y s_rock Saturation1 Controller_y y em
omega_y Ka Pitch control
In1 Out1 Rocket ref_ny ainWd*numWd(s denWd(s)
Out1 12 Robust Control of a Rocket Gain2 omega_z Controller_z
Out3 Out4 Fins_z
Out2 Saturation2 n_y Noise n_y ainWa*numWa(s denWa(s) Accelerometer_y n_z ainWg*numWg(s denWg(s) Rate giro_z delta_z n_y Output4 om_z
n_z Output5 ainWa*numWa(s −1 Gain3 denWa(s) Accelerometer_z ainWg*numWg(s denWg(s) −1 Rate giro_y Gain4 n_z y Outputs6_13 t om_y
Clock Fig. 12.44. Simulation model of the nonlinear sampled data system Time 12.7 Simulation of the Nonlinear System
Nonlinear response in ny
16 331 14 12 10 8 n (g) y 6 4 2 0 −2 14 15 16 17 Time (s) 18 19 20 Fig. 12.45. Transient responses in ny of the nonlinear sampleddata system Nonlinear response in nz
16 14 12 10 8 n (g) z 6 4 2 0 −2 14 15 16 17 Time (s) 18 19 20 Fig. 12.46. Transient responses in nz of the nonlinear sampleddata system 332 12 Robust Control of a Rocket 12.8 Conclusions
From the results/experiences obtained, the design of a robust stabilisation system for a winged, supersonic rocket may be summarised as the following. • The linearised equations of the rocket should be arranged in a proper way in order to avoid the appearance of an additional integrator in the uncertainty model. The inclusion of this integrator leads to violation of the conditions for H∞ design. • Both H∞ optimisation and µsynthesis approaches may be used to design controllers that, for a speciﬁed moment of ﬂight dynamics, achieve robust stability of the rocket stabilisation system in the presence of disturbances and sensor noises. However, the H∞ controller can not ensure robust performance in the given case. The µcontroller achieves both robust stability and robust performance of the closedloop system. • The µcontroller obtained may be used successfully for diﬀerent altitudes and Mach numbers. However, in order to control the rocket eﬃciently through the whole ﬂight envelope it may be necessary to implement several controllers designed for diﬀerent ﬂight conditions. • A digital controller has been successfully designed for a discretetime model of the openloop system. The corresponding sampled data, closedloop system achieves robust stability and robust performance at almost the same as the continuoustime one. • The µsynthesis in the discretetime case shows that achieving a smaller value of µ may lead to the deterioration of the system dynamics, i.e. better robustness may be achieved at the price of poorer dynamics. This is why a value of µ slightly less than 1 may be a good tradeoﬀ between the requirements for the robustness and dynamic performance. • The simulation of the nonlinear, timevarying closedloop system shows that for a suﬃciently large interval of time, the dynamics behaviour is close to that of the timeinvariant system which has ﬁxed model parameters. Notes and References
The design of rocket and spacecraft ﬂightcontrol systems is considered in depth in many books, see for example [11, 12, 54, 172]. The design of robust ﬂightcontrol systems is presented in [7, 36]. Ensuring good performance of the closedloop system for the whole range of the ﬂight operating conditions by a ﬁxed controller is rarely possible and, in general, it is necessary to change the controller parameters as the rocket model varies. For this aim, it is possible to use some technique of gain scheduling: see the survey papers [84, 131]. The classical approach for gain scheduling is to design several timeinvariant controllers for diﬀerent points in the operational region and then interpolate their parameters for the intermediate values, see, for instance, [130, 118, 13]. 12.8 Conclusions 333 This approach has several disadvantages, for instance it is diﬃcult to guarantee robust stability and robust performance in the transition regions, i.e. between design points at which the controllers are designed. In this respect robust controllers are more suitable for gain scheduling since they ensure satisfactory performance at least in some neighbourhood around an operating point and thus fewer ﬁxed controllers are needed. Another approach for gain scheduling is to derive a linear, parametervarying(LPV) model of the rocket and then design an LPV controller that hopefully will achieve the desired performance for the whole range of operating conditions. Examples of using this approach may be found in [37, 143]. The elasticity of the rocket body may aﬀect signiﬁcantly the dynamics of the closedloop system, see, for instance, [11, 91]. 13 Robust Control of a FlexibleLink Manipulator In this chapter we discuss the robust control system design of a ﬂexiblelink manipulator that moves in the horizontal plane. Lightweight manipulators possess many advantages over the traditional bulky manipulators. The most important beneﬁts include high payloadtoarm weight ratio, faster motion, safer operation, improved mobility, low cost, longer reach and better energy eﬃciency, etc. However, the reduction of weight leads to the increase of the link elasticity that signiﬁcantly complicates the control of the manipulator. The diﬃculty in control is caused by the fact that the link model is a distributed parameter plant. In this case, several elastic modes are required to achieve suﬃciently high accuracy. Also, the plant has several uncertain parameters (payload mass, hub and structural damping factors, etc.) that inﬂuence signiﬁcantly the system performance. The inherent, nonminimum phase behaviour of the ﬂexible manipulator is another obstacle to achieving simultaneously a highlevel performance as well as good robustness. The aim of the present case study is to design a control system for a singlelink ﬂexible manipulator. A twomode dynamic model of the manipulator is ﬁrst obtained by using the Lagrangianassumed modes method. This is followed by the modelling of uncertainties involved in the manipulator. The uncertainties include the real parametric uncertainties in the payload mass as well as in the hub and structural damping factors. These parameters are the basic uncertainty source in the dynamic behaviours of the ﬂexiblelink manipulators. The µsynthesis method is then applied to design a robust, noncollocated controller on the feedback signals of joint angle and tip acceleration. In the design, in order to obtain a feasible solution, a simpliﬁed uncertainty description is considered in the DK iterations. Appropriate weighting functions are chosen in the design to ensure robust stability and robust performance. It is shown in this chapter that good robust performance has been achieved in the design. The closedloop system exhibits excellent tipmotion performance for a wide range of payload mass and the system eﬃciently suppresses the elastic vibrations during the fast motion of the manipulator tip. For the 336 13 Robust Control of a FlexibleLink Manipulator sake of implementation and reliability in practice, a reducedorder controller is found that maintains the robust stability and robust performance of the closedloop system. Finally, the advantages of the µcontroller over a conventional, collocated PD controller are demonstrated. 13.1 Dynamic Model of the Flexible Manipulator y0 y mL τ(t) O0 Jh R α(t)
O ,I ,E ,L m w (x,t) θ(t) x x0 Fig. 13.1. Schematic diagram of the ﬂexiblelink manipulator Figure 13.1 shows the schematic model used to derive the equations of motion for the ﬂexiblelink manipulator. The manipulator moves in the horizontal plane. Frame x0 − O0 − y0 is the ﬁxedbase frame. Frame x − O − y is the local frame rotating with the hub. The xaxis coincides with the undeformed longitudinal axis of the link. The rotating inertia of the servomotor, the gear box, and the clamping hub are modelled as a single hub inertia Jh . The distance between the hub centre and the root of the link is denoted by R. The ﬂexible link is assumed to be a homogeneous rod with a constant crosssectional area. L is the length of the link, m is the mass per unit length of the link, I is the link crosssectional moment of inertia and E is the Young’s modulus of elasticity for the material of the link. The payload is modelled as a point mass mL . The variables τ (t) and θ(t) are the driving torque and the joint angle, respectively. The elastic deﬂection of a point located at a distance x from O along the link is denoted by w(x, t). It is assumed that the elastic deﬂections of the link lie in the horizontal plane, and are perpendicular to the xaxis and small in magnitude compared to the link length. The motion equations of the ﬂexible manipulator are to be derived by using the Lagrangian approach combined with the assumedmodes method [94]. The ﬂexible link is modelled as an Euler–Bernoulli beam. The free vibration of the link is described by the partial diﬀerential equation [105] 13.1 Dynamic Model of the Flexible Manipulator 337 EI ∂ 2 w(x, t) ∂ 4 w(x, t) =0 +m ∂t2 ∂x4 with boundary conditions w(0, t) = 0,
∂w(0,t) ∂x =0 ∂ 2 w(L,t) ∂x2 ∂ 3 w(L,t) ∂x3 =0 =0 − 2 mL ∂ w(L,t) ∂t2 EI According to the assumedmodes method the elastic deﬂection can be expressed as
n w(x, t) =
i=1 ϕi (x)ηi (t) (13.1) where ηi (t) is the generalised coordinate of the ith mode, ϕi (x) is the space eigenfunction of the ith mode, and n is the number of the modes that describe the link deﬂection. The mode angular frequencies ωi , i = 1, ..., n, of the ﬂexible link are given by EI 2 (13.2) ωi = βi m where βi , i = 1, ..., n, are the ﬁrst n positive roots of the transcendental equation mL (βL) (sinh(βL) cos(βL) − cosh(βL) sin(βL)) = 0 mL (13.3) The shape functions ϕi (x), i = 1, ..., n, satisfy the orthogonality condition 1 + cosh(βL) cos(βL) +
L m
0 ϕi (x)ϕj (x)dx + mL ϕi (L)ϕj (L) = 0, i = j and can be written in the form ϕi (x) = λi ((cosh(βi x) − cos(βi x)) − cosh(βi L) + cos(βi L) (sinh(βi x) − sin(βi x)) sinh(βi L) + sin(βi L) (13.4) A normalisation of the shape functions convenient for the uncertainty modelling is accomplished by determining the coeﬃcients λi , i = 1, ..., n, in (13.4) on the basis of the relation
L m
0 ϕ2 (x)dx + mL ϕ2 (L) = 1 i i 338 13 Robust Control of a FlexibleLink Manipulator The joint angle θ and the deﬂection variables ηi , i = 1, ..., n, are used as generalised coordinates in the derivation of the equation of motion. As a result of applying the Lagrangian procedure, the following nonlinear dynamic model of the ﬂexible manipulator is obtained mr (η ) mT rf mrf In + where η = [η1 ... ηn ]
n T 0 0T n 0n Cf ¨ ˙ d 0T θ θ + vn 0n Df η ¨ η ˙ ˙ η, η ) 1 θ h (θ, ˙ = +r˙ τ 0n η hf (θ, η ) (13.5) mr (η ) = a0 +
i=1 2 ηi 1 a0 = Ja + m (L + R)3 − R3 + mL (L + R)2 3 T mrf = [a1 ... an ]
L ai = m
0 (x + R)ϕi (x)dx + mL (L + R)ϕi (L) (13.6) 2 2 Cf = diag(ω1 , ..., ωn ) Df = diag(df 1 , ..., df n ) n ˙ ˙ hr (θ, η, η ) =
i=1 ˙˙ 2θηi ηi
T ˙ ˙ ˙ hf (θ, η ) = −θ2 η1 ... − θ2 ηn In denotes the n × n identity matrix, 0n is the ndimensional null vector, and ˙ dv , df 1 , ..., df n are damping coeﬃcients. The terms dv θ and Df η have been ˙ included to account for the viscous friction at the hub and for the structural damping of the ﬂexible link, respectively. The angle w(L, t) (13.7) α = θ + arctan L+R is chosen as the coordinate that determines the position of the manipulator tip. The following numerical values of the manipulator parameters are used: L = 1 m, R = 0.4 m, Jh = 0.1 kg m2 , m = 0.54 kg/m, ﬂexural rigidity of the ﬂexible link EI = 18.4 N m2 . The values of m and EI correspond to an aluminium link with E = 6.9 × 1010 N m2 , density ρ = 2700 kg/m3 and a cross–section 0.004 m×0.05 m. It is assumed that in performing a given motion the payload mass has a constant but unknown value in the range from 0.125 kg to 0.375 kg. It is also 13.2 A Linear Model of the Uncertain System 339 ˙ assumed that the coeﬃcients in the damping terms dv θ and Df η are known ˙ inaccurately. The ﬁrst two natural frequencies of the ﬂexible link, calculated for the average value of the payload according to (13.2) and (13.3), are ω1 = 12.1 rad/s and ω2 = 99.2 rad/s. Since the rest natural frequencies are very large (ω3 = 302.5 rad/s and so on), a twomode model of the ﬂexible manipulator is used in the controller design. 13.2 A Linear Model of the Uncertain System
In this section we ﬁrst consider how to model the uncertainties of the ﬂexiblelink manipulator and then develop a complete, linear dynamic model of the system in the form of linear fractional transformation (LFT). As mentioned earlier, the uncertainties considered are related to the payload mass, hub damping coeﬃcient and the damping levels of the ﬁrst two modes. It is important to note that these parameters are the basic source of uncertainty dynamic behaviour of ﬂexiblelink manipulators. In the modelling of uncertain damping levels of the ﬂexible modes, we may set df i = di ωi , i = 1, 2 where ωi are the ﬁrst two natural frequencies and the damping factors d1 , d2 are considered as uncertain parameters. The uncertain parameters mL , dv , d1 , d2 may be represented as follows mL = mL (1 + pm δm ), dv = dv (1 + pdv δdv ) d1 = d1 (1 + pd1 δd1 ), d2 = d2 (1 + pd2 δd2 ) where the uncertain variables δm , δdv , δd1 , δd2 are real and satisfy the normalised bound −1 ≤ δm , δdv , δd1 , δd2 ≤ 1 The nominal values and the maximum relative uncertainty bounds of those parameters are set as mL = 0.25 kg, pm = 0.5, dv = 0.15 kg m2 /s, pdv = 0.1, d1 = 0.03 kg m2 , pd1 = 0.2, d2 = 0.1 kg m2 , pd2 = 0.2. The plant input is the driving torque τ . The controlled variable is the tip position α and the measured variables are the joint angle θ and the tip acceleration α. ¨ To obtain a linear model of the manipulator the nonlinear terms n 2 ˙ ˙ ˙ i=1 ηi , hr (θ, η, η ) and hf (θ, η ) in (13.5) are neglected due to the fact that their eﬀects are relatively very small. Also, since w(L, t) << L, the function arctan(z ) in (13.7) can be approximated by z . As a result, we may obtain the following equations ¨ ˙ ¨ ¨ a0 θ + dv θ + a1 η1 + a2 η2 = τ 2 ¨ ηi + di ωi ηi + ωi ηi + ai θ = 0, i = 1, 2 ¨ ˙ α = θ + b1 η1 + b2 η2 α = θ + b1 η1 + b2 η2 ¨¨ ¨ ¨ (13.8) (13.9) (13.10) (13.11) 340 13 Robust Control of a FlexibleLink Manipulator where the following notation is used ϕi (L) , i = 1, 2 (13.12) L+R The diﬃculty in modelling the uncertainty in this case study comes from the fact that the coeﬃcients a0 , a1 , a2 , ω1 , ω2 , b1 and b2 in (13.8)–(13.11) are functions of the payload mass mL . Among these coeﬃcients, only a0 explicitly depends on mL in an aﬃne form. The rest coeﬃcients depend on mL in a complicated, nonlinear and implicit manner as is seen from (13.2), (13.3), (13.4), (13.6), (13.12). Direct approximation of these coeﬃcients by linear functions of the payload mass leads to a very inaccurate model and the uncertain parameter δm would be repeated 13 times. This diﬃculty is approached here by exploiting the relations between the coeﬃcients as functions of the payload mass. The analysis of these functions shows that there exist suﬃciently accurate linear dependencies between appropriately chosen coeﬃcients that can be used to derive a simple and more accurate uncertainty model. The bestsuited dependencies are chosen so as to reduce signiﬁcantly the number of uncertain parameters in the ﬁnal model achieving in the same time a high accuracy in the description of the uncertainty in the payload mass. This procedure is brieﬂy described in the following. Equations (13.8) and (13.9) can be rewritten in the form bi = ¨ ˙ ¨ ¨ a 0 θ + d v θ = τ − a 1 η1 − a 2 η2 a1 ¨ 1 η1 + d1 η1 + ω1 η1 = − θ ¨ ˙ ω1 ω1 a2 ¨ 1 η2 + d2 η2 + ω2 η2 = − θ ¨ ˙ ω2 ω2 (13.13) (13.14) (13.15) The coeﬃcients a1 /ω1 , a2 /ω2 that appear in (13.14) and (13.15) may be expressed as linear functions of a0 , which is in turn a function of mL , by using the following approximate relationships a1 ≈ k1 a0 + k2 (13.16) ω1 a2 ≈ k3 a0 + k4 (13.17) ω2 where k1 , k2 , k3 and k4 are constants to be determined appropriately. The numerically calculated values of a1 /ω1 and a2 /ω2 are shown, as functions of mL , in Figure 13.2. By using the least square method, linear approximations are obtained (Figure 13.2). The coeﬃcients of the linear approximations are k1 = 0.12905, k2 = −0.017706, k3 = 5.5600 × 10−4 and k4 = 6.8034 × 10−4 (all numbers are given to ﬁve signiﬁcant digits). ¨ Accordingly for the variables (ai /ωi )θ, i = 1, 2, we have a1 ¨ ¨ θ ≈ (k1 a0 + k2 )θ (13.18) ω1 a2 ¨ ¨ (13.19) θ ≈ (k3 a0 + k4 )θ ω2 13.2 A Linear Model of the Uncertain System
(a1/ω1)*d ϑ/dt = k1*(a0*d ϑ/dt ) + k2*d ϑ/dt
2 2 2 2 2 2 341 0.07 Solid line: a /ω1 1 Dashed line: (a /ω1)approx = k1 a0 + k2 1 0.065 0.06 0.055 0.05 0.045 0.04
0.15 0.2 0.25 mL
2 3 0 4 0.3 0.35 10.8 x 10 −4 (a /ω )*d2ϑ/dt2 = k *(a *d2ϑ/dt2) + k *d2ϑ/dt2
2 10.6 Solid line: a /ω2a2/ω2 2 Dashed line: (a /ω )
2 10.4 2 approx =k a +k
3 0 4 10.2 10 9.8 9.6 9.4 9.2 9 0.15 0.2 0.25 m
L 0.3 0.35 Fig. 13.2. Approximation of a1 /ω1 (above) and a2 /ω2 (below) in the expressions ¨ for (ai /ωi )θi , i = 1, 2 342 13 Robust Control of a FlexibleLink Manipulator ¨ Using (13.18) and (13.19), the variables (ai /ωi )θ, i = 1, 2, are determined ¨ and θ, and (13.13) can be depicted in a block diagram ¨ from the variables a0 θ as in Figure 13.3. Fig. 13.3. Block diagram of the joint angle equation In a similar way, the quantities ai ηi , appearing in (13.13), can be calculated ¨ from (1/ωi )¨i and ηi on the basis of η ¨ a1 ≈ k5 a2 ≈ k11 1 + k6 ω1 1 + k12 ω2 The actual, calculated values and the approximation quantities of a1 and a2 , as functions of mL , are shown in Figure 13.4, where k5 = 7.2587, k6 = 0.077825, k11 = 10.165 and k12 = −0.0033967. ¨ ¨ Again, the block diagrams showing the determination of a1 η1 and a2 η2 from the variables η1 and η2 are shown in Figures 13.5 and 13.6, respectively. ¨ ¨ The coeﬃcients ω1 and ω2 can be expressed in terms of b1 and b2 , respectively, according to ω1 = k9 b1 + k10 ω2 = k15 b2 + k16 Figure 13.7 plots the actual and approximate quantities of ω1 and ω2 , as functions of mL , with k9 = 7.7970, k10 = −0.089136, k15 = −13.355 and k16 = 89.500. 13.2 A Linear Model of the Uncertain System
a *d2η /dt2 = k *(d2η /dt2/ω ) + k *d2η /dt2
1 1 5 1 1 6 1 343 0.78 0.76 0.74 0.72 Solid line: a 1 Dashed line: (a )approx = k5 (1/ω1) + k6 1 0.7 0.68 0.66 0.64 0.62 0.6 0.58 0.15 0.2 0.25 m
L 0.3 0.35 a2*d2η2/dt2 = k11*(d2η2/dt2/ω2) + k12*d2η2/dt2 0.102 0.101 Solid line: a 2 0.1 Dashed line: (a ) 2 approx =k 11 (1/ω ) + k
2 12 0.099 0.098 0.097 0.096 0.095 0.094 0.093 0.15 0.2 0.25 mL 0.3 0.35 Fig. 13.4. Approximation of a1 (above) and a2 (below) in the expressions for ¨ a i ηi , i = 1 , 2 344 13 Robust Control of a FlexibleLink Manipulator Fig. 13.5. Block diagram of the ﬁrst elastic mode In this way we obtain an uncertainty model corresponding to (13.8) and (13.9). In this model only the coeﬃcients a−1 , ω1 and ω2 depend on the 0 payload mass, while the coeﬃcients ω1 and ω2 are repeated twice. The part of the uncertainty model corresponding to (13.10) and (13.11) can be derived without introducing new uncertainty parameters. The terms bi ηi , i = 1, 2, are expressed by (1/ωi )¨i and ηi using the relationships ¨ η ¨ b1 ≈ k7 b2 ≈ k13 1 + k8 ω1 1 + k14 ω1 Similarly, Figure 13.8 plots the calculated and approximate quantities of b1 and b2 , as functions of mL , with k7 = −18.980, k8 = 3.1319, k13 = 7.4054 and k14 = −8.1915. ¨ ¨ The block diagrams showing the variables b1 η1 and b2 η2 , based on the ¨ variables η1 and η2 , are already included in Figures 13.5 and 13.6, respectively. ¨ In the expressions for ω1 , ω2 and b1 η1 , b2 η2 , the coeﬃcients b1 and b2 can be represented as LFTs in the real uncertain parameter δm by using the following approximate relationships 13.2 A Linear Model of the Uncertain System 345 Fig. 13.6. Block diagram of the second elastic mode b1 ≈ b2 ≈ 1 γ1 1 γ2 where γ1 and γ2 depend aﬃnely on mL and can be written as γ1 = γ 1 (1 + pγ1 δm ) γ2 = γ 2 (1 + pγ2 δm ) The calculated and approximate quantities of b1 and b2 as functions of mL are shown in Figure 13.9 for γ 1 = 0.64095, pγ1 = 0.16414, γ 2 = −1.3780 and pγ2 = 0.36534. The constants k1 , ..., k16 , γ 1 , pγ1 , γ 2 and pγ2 are all determined by least squares approximations in such a way that for the nominal payload mass the corresponding relationships are satisﬁed perfectly (interpolation conditions). Hence for the nominal payload the manipulator model is accurate. In the approximations, the worst relative error for each relationship is always obtained at the case mL = 0.125 kg, and the largest relative error among all these is less than than 3.4% . These constants are found by using the ﬁle par flm. 346 13 Robust Control of a FlexibleLink Manipulator
ω = k *b + k
1 9 1 10 15 14.5 Solid line: ω1 Dashed line: ( 1)approx = k9 b1 + k10 ω 14 13.5 13 12.5 12 11.5 11 10.5 10 0.15 0.2 0.25 m
L 0.3 0.35 ω2 = k15*b2 + k16
105 104 Solid line: ω2 Dashed line: ( ) ω 103 2 approx =k 15 b +k
2 16 102 101 100 99 98 97 0.15 0.2 0.25 0.3 0.35 Fig. 13.7. Approximation of ω1 (above) and ω2 (below) Once appropriate approximations of the coeﬃcients have been obtained it is possible to develop the uncertainty models corresponding to (13.13)–(13.15). This is done by using the ﬁle mod flm. 13.2 A Linear Model of the Uncertain System
b *d η /dt = k *(d η /dt /ω ) + k *d η /dt
1 1 7 1 1 8 1 2 2 2 2 2 2 347 1.9 1.8 Solid line: b 1 Dashed line: (b )
1 approx = k (1/ω ) + k
7 1 8 1.7 1.6 1.5 1.4 1.3 0.15 0.2 0.25 m
L
2 2 2 2 2 0.3 0.35 b2*d η2/dt = k13*(d η2/dt /ω2) + k14*d η2/dt
−0.5 2 −0.6 Solid line: b 2 Dashed line: (b )
−0.7 2 approx =k 13 (1/ω ) + k
2 14 −0.8 −0.9 −1 −1.1 0.15 0.2 0.25 m
L 0.3 0.35 Fig. 13.8. Approximation of b1 (above) and b2 (below) in the expressions for ¨ b i ηi , i = 1 , 2 348 13 Robust Control of a FlexibleLink Manipulator
b = 1/γ
1 1 1.8 Solid line: b 1 Dashed line: 1/ γ
1 1.7 1.6 1.5 1.4 1.3 0.15 0.2 0.25
b = 1/γ
2 2 0.3 0.35 −0.5 −0.6 Solid line: b 2 Dashed line: 1/ γ
2 −0.7 −0.8 −0.9 −1 −1.1 0.15 0.2 0.25 0.3 0.35 Fig. 13.9. Approximation of b1 (above) and b2 (below) in the expressions for ωi and bi ηi , i = 1, 2 In Figure 13.10 we show the block diagram of the joint angle with uncertain parameters derived from the block diagram shown in Figure 13.2. 13.2 A Linear Model of the Uncertain System 349 Fig. 13.10. Block diagram of the joint angle with uncertain parameters The corresponding interconnection is obtained by using the function sysic. A schematic diagram of the input/output ordering for this interconnection is shown in Figure 13.11. Fig. 13.11. Schematic diagram of the joint angle connection 350 13 Robust Control of a FlexibleLink Manipulator The uncertainty model of the ﬁrst elastic mode is given in Figure 13.12 and a schematic diagram of the corresponding interconnection is shown in Figure 13.13. Fig. 13.12. First elastic mode with uncertain parameters The uncertainty model of the second elastic mode (Figure 13.14) is obtained in a similar way and a schematic diagram of the input/output ordering is shown in Figure 13.15. A schematic diagram for the output equations interconnection is shown in Figure 13.16. Finally, the uncertainty model of the ﬂexible link manipulator is obtained by connecting the models shown in Figures 13.10, 13.12 and 13.14. A schematic diagram of the input/output ordering of the corresponding interconnection is shown in Figure 13.17. This model has 9 inputs and 20 outputs. Based on the above modelling, an LFT model of the ﬂexiblelink manipulator with diagonal uncertainty matrix ∆ = diag(δm I5 , δv , δd1 , δd2 ) (13.20) 13.2 A Linear Model of the Uncertain System 351 Fig. 13.13. Schematic diagram of the ﬁrst elastic mode interconnection can be readily obtained. Note that in this modelling of uncertainties the uncertain parameter δm appears repeatedly ﬁve times. The accuracy of such a derived model may be veriﬁed by the comparison of the Bode plots of the exact and approximate models of the manipulator. Figure 13.18 shows the Bode plots for the case mL = 0.125 kg. The plots are obtained from the corresponding transfer functions of the input τ and output θ. The Bode plot of the exact model is computed on the basis of (13.8) and (13.9), using the exact values of the coeﬃcients. The Bode plot of the “approximate”model is calculated based on the derived uncertainty model. It can be seen that the match between those two models is very good. Similar closeness of the corresponding plots holds for transfer functions of other plant outputs from the input τ . It has been found in this case study that if the approximation of the coeﬃcients in (13.8)–(13.11) as functions of the payload mass is conducted directly with linear dependencies, then the model obtained would be very inaccurate. And, in that case, the uncertain parameter δm would repeat itself 13 times in the uncertainty model. 352 13 Robust Control of a FlexibleLink Manipulator Fig. 13.14. Second elastic mode with uncertain parameters Fig. 13.15. Schematic diagram of the second elastic mode interconnection 13.2 A Linear Model of the Uncertain System 353 Fig. 13.16. Schematic diagram of the output equations interconnection Fig. 13.17. Schematic diagram of the ﬂexiblelink manipulator interconnection 354 13 Robust Control of a FlexibleLink Manipulator
Bode plot of exact and approximated manipulator models
10
0 Magnitude (dB) Solid line: exact model
10
−2 Dashed line: approximate model 10 −4 10 0 10 1 10 2 10 3 Frequency (rad/s)
0 −50 Phase (deg) −100 −150 −200 0 10 10 1 10 2 10 3 Frequency (rad/s) Fig. 13.18. Bode plots of exact and approximated manipulator models for mL = 0.125 kg 13.3 Systemperformance Speciﬁcations 355 13.3 Systemperformance Speciﬁcations
In this ﬂexiblelink manipulator controlsystem design exercise, the purpose is to ﬁnd a controller that suppresses eﬃciently the elastic vibrations of the ﬂexible link in fast motions and moves the tip to a desired position in the presence of uncertainties in the payload mass, hub and structural damping factors. Since the uncertainties considered are real and structured, the most appropriate robust control design method to be applied in the present case is the µsynthesis. Fig. 13.19. Closedloop interconnection structure of the ﬂexiblelink manipulator system The block diagram of the closedloop system incorporating the design requirements is shown in Figure 13.19. The controller K works on the feedback signals of the tip acceleration α and the joint angle θ. The inclusion of the ¨ tip acceleration in the control scheme aims to achieve better tipmotion performance and leads to a noncollocated controller structure. Furthermore, in the given design case, we select a suitable dynamic model and target the dynamics of the designed closedloop system to be close to that model. The use of such a model to represent the desired dynamics allows us to take into account the requirements on system performance more easily and directly. In other words, such a model (named M in Figure 13.19) prescribes the desired dynamic behaviour of the closedloop system from the reference signal to the tip position. In Figure 13.19 the plant G, enclosed by the dashed rectangle, is in the form of upper LFT, G = FU (Gf lm , ∆), with the nominal model Gf lm 356 13 Robust Control of a FlexibleLink Manipulator and the parametric uncertainty matrix ∆ (in (13.20)). The internal, current control loop of the servo drive Wact is modelled as a ﬁrstorder lag with the time constant 0.003 s. Let the 3 × 1 transfer matrix G be partitioned as ⎡ ⎤ Gατ (s) G(s) = ⎣ Gθτ (s) ⎦ Gατ (s) ¨ where Gατ , Gθτ , Gατ are the transfer functions from the control torque τ to ¨ the outputs α, θ and α, respectively, and let the controller ¨ K (s) = [K1 (s) K2 (s)] It can be shown by direct manipulations that ⎡⎤ r ep = Φ ⎣ n1 ⎦ eu n2 where Φ= Wp (SGατ Wact K2 − M ) Wp SGατ Wact K1 Wn1 −Wp SGατ Wact K2 Wn2 Wu SK2 Wu SK1 Wn1 −Wu SK2 Wn2 and S= 1 1 − Gατ Wact K1 + Gθτ Wact K2 ¨ The design objective for the controller K is thus to be set as Φ ⎡ ⎤
∞ <1 (13.21) Gατ (s) for all perturbed ⎣ Gθτ (s) ⎦ = FU (Gf lm , ∆). Gατ (s) ¨ It is clear that, with appropriately chosen weighting functions, a controller K satisfying the above (13.21) makes the closedloop system robustly stable, robustly achieving good matching to the dynamic model M (in terms of ep ), and with restricted control eﬀort (in terms of eu ). The model transfer function to be matched is taken in this design as M= 625 s2 + 50s + 625 The coeﬃcients of this transfer function are chosen to ensure overdamped response with a settling time of about 0.19 s. The performance weighting functions are chosen as 13.3 Systemperformance Speciﬁcations 357 Wp = 5s + 1 s2 + 25s + 150 , Wu = 10−5 0.05s + 1 s2 + 22s + 0.15 The criterion for the performance weighting function Wp aims to ensure the closeness of the system dynamics to that of the model M over the lowfrequency range. The use of the control weighting function Wu allows us to bound the magnitude of the control action in the frequency range containing the natural frequencies of the ﬂexible link. The magnitude plots of the inverses of the performance and control weighting functions are shown in Figure 13.20.
Inverse of the performance weighting function 10 1 10 0 Magnitude 10 −1 10 −2 10 −3 10 −3 10 −2 10 −1 10 Frequency (rad/s) 0 10 1 10 2 10 3 10 5 Inverse of the weighting function on control action Magnitude 10 4 10 −4 10 3 10 −3 10 −2 10 −1 10 Frequency (rad/s) 0 10 1 10 2 10 3 10 4 Fig. 13.20. Inverses of performance weighting function (above) and control weighting function (below) 358 13 Robust Control of a FlexibleLink Manipulator The noise shaping ﬁlters Wn1 = 2 × 10−5 0.5s + 1 s+1 , Wn2 = 10−7 0.005s + 1 0.01s + 1 are determined according to the spectral contents of the sensor noises n1 and n2 at the measurements of the tip acceleration and joint angle signals, respectively. The magnitude plots of the noise shaping ﬁlters are shown in Figure 13.21.
Frequency response of the shaping filter for the first noise 10 −2 10 −3 Magnitude
10
−4 10 −5 10 −2 10 −1 10 0 10 Frequency (rad/s) 1 10 2 10 3 10 4 10 −5 Frequency response of the shaping filter for the second noise Magnitude 10 −6 10 −7 10 −2 10 −1 10 0 10 Frequency (rad/s) 1 10 2 10 3 10 4 Fig. 13.21. Noise weighting functions 13.4 System Interconnections 359 The model transfer function, the performance and control weighting functions as well as the noise shaping ﬁlters are assigned in the ﬁle wts flm.m. 13.4 System Interconnections Fig. 13.22. Openloop interconnection structure of the ﬂexiblelink manipulator system The openloop interconnection is obtained by the Mﬁle olp flm. The internal structure of the 12input/12output openloop system, which is saved in the variable sys ic, is shown in Figure 13.22. The inputs and outputs of the uncertainties are saved in the variables pertin and pertout, the reference and the noises saved in the variables ref, noise1 and noise2, and the control signal in the variable control. Both variables pertin and pertout have eight elements, while the rest variables are scalars. A schematic diagram of the speciﬁc input/output ordering for the variable sys ic is shown in Figure 13.23. The blockdiagram used in the simulation of the closedloop system is shown in Figure 13.24. The corresponding closedloop interconnection, which is saved in the variable sim ic, is obtained by the Mﬁle sim flm. A schematic diagram of the speciﬁc input/output ordering for the variable sim ic is shown in Figure 13.25. 360 13 Robust Control of a FlexibleLink Manipulator Fig. 13.23. Schematic diagram of the openloop interconnection Fig. 13.24. Closedloop interconnection structure of the ﬂexiblelink manipulator system 13.5 Controller Design and Analysis 361 Fig. 13.25. Schematic diagram of the closedloop interconnection 13.5 Controller Design and Analysis
Let us denote by P (s) the transfer function matrix of the twelveinput, twelveoutput openloop system consisting of the ﬂexiblelink manipulator model and the actuator and weighting functions (Figure 13.22). Deﬁne a block structure of uncertainty ∆P as ∆P := ∆0 0 ∆F : ∆ ∈ R8×8 , ∆F ∈ C 3×2 The ﬁrst part of this matrix corresponds to the uncertain block ∆ that is used in the modelling of the uncertainties in the ﬂexible manipulator. The second block ∆F is a ﬁctitious uncertainty 3 × 2 block and is introduced to represent the robust performance objective in the framework of the µapproach. The inputs to the block ∆F are the weighted error signals ep and eu and the outputs from ∆F are the exogenous signals r, n1 and n2 (inputs to the manipulator closedloop system). As discussed in previous sections, in order to meet the design objectives a stabilising controller K = [K1 (s) K2 (s)] is to be found such that, at each frequency ω ∈ [0, ∞], the structured singular value satisﬁes the condition 362 13 Robust Control of a FlexibleLink Manipulator µ∆P [FL (P, K )(jω )] < 1 The fulﬁllment of the above condition guarantees the robust performance of the closedloop system, i.e. (13.22) Φ ∞<1 In the computation of a µcontroller, there is, however, a numerical problem. That is, with the inclusion of the multiple 5 × 5 real uncertainty block (corresponding to δm ) the DK iteration algorithm does not converge. In particular, it is diﬃcult to obtain the approximation of a 5 × 5 scaling function matrix in the Dstep. Hence, in our computation that multiple 5 × 5 real uncertainty block was removed in the uncertainty matrix during the DK iteration. It should be stressed that the robust stability and robust performance analysis of the closedloop system of the designed controller, which will be presented next, is tested with regard to the whole uncertainty structure, i.e. with the inclusion of that multiple 5 × 5 real uncertainty block. The µsynthesis is carried out by using the Mﬁle ms flm.m. The uncertainty structure and other parameters used in the DK iteration are set in the auxiliary ﬁle dk flm.m. The progress of the DK iteration is shown in Table 13.1.
Table 13.1. Results of the µsynthesis Iteration Controller order Maximum value of µ 1.564 14 1 1.078 18 2 0.618 22 3 0.484 28 4 In the design exercise, an appropriate controller is obtained after the fourth DK iteration. The controller is stable and has an order of 28. The magnitude and phase plots of the µcontroller are shown in Figure 13.26. It can be seen from Table 13.1 that after the fourth iteration the maximum value of µ is equal to 0.484. Note that this, however, does not necessarily mean that the robust performance has been achieved since we neglected the multiple 5 × 5 real uncertainty block in the computation. Hence, additional robust performance analysis is needed as below. The µanalysis of the closedloop system is conducted by the ﬁle mu flm that takes into account all uncertainty blocks discussed in Section 13.2. The frequency response plot of the structured singular value for veriﬁcation of robust stability is shown in Figure 13.27. The maximum value of µ is 0.444 that means that the stability of the system is preserved under perturbations 1 that satisfy ∆ ∞ < 0.444 . 13.5 Controller Design and Analysis
Controller magnitude plot
120 363 100 80 60 Magnitude (dB) 40 20 0 Solid line: Ku d2α/dt2 Dash−dotted line: Ku ϑ −20 −40 −60 −80 −4 10 10 −2 10 0 10 Frequency (rad/s) 2 10 4 10 6 Controller phase plot 250 200 Solid line: K u d α/dt 2 2 Dash−dotted line: K uϑ 150 Phase (deg) 100 50 0 −50 −100 −4 10 10 −2 10 0 10 Frequency (rad/s) 2 10 4 10 6 Fig. 13.26. Controller magnitude (above) and phase (below) plots The frequency response of µ for the robust performance analysis is shown in Figure 13.28. The closedloop system achieves robust performance since the maximum value of µ is equal to 0.806. 364 13 Robust Control of a FlexibleLink Manipulator
Robust stability 0.45
Solid line: upper bound 0.4
Dashed line: lower bound 0.35 0.3 0.25
mu 0.2 0.15 0.1 0.05 0 0 10 10 1 10 Frequency (rad/s) 2 10 3 10 4 Fig. 13.27. Robust stability for µcontroller
Robust performance 0.9 0.8 Solid line: upper bound 0.7 Dashed line: lower bound 0.6 0.5
mu 0.4 0.3 0.2 0.1 0 0 10 10 1 10 Frequency (rad/s) 2 10 3 10 4 Fig. 13.28. Robust performance for µcontroller 13.5 Controller Design and Analysis 365 Consider now the closedloop transient responses that are computed by using the Mﬁle clp pend. The reference trajectory for the manipulator tip movement in the simulation is chosen in the form r= at − (a/ψ ) sin(ψt) + r0 , 0 ≤ t ≤ tm r(tm ), tm < t ≤ tf This trajectory allows the tip to be moved smoothly from an arbitrary initial position r0 to a desired ﬁnal position r(tm ) = atm , with an appropriate ψ . Closed−loop transient response 0.3 0.25 0.2 0.15
ref, α, θ Dashed line: ref Solid line: α 0.1 dash−dotted line: θ 0.05 0 −0.05 0 0.5 1 1.5 Time (s) 2 2.5 3 Fig. 13.29. Closedloop transient response for µcontroller In Figure 13.29 we show the transient response of the tip position α along with the joint angle θ and the reference r. The transient response of the tip deﬂection w(L, t) is shown in Figure 13.30. The control action generated by the designed µcontroller is shown in Figure 13.31. The closedloop frequency responses are obtained by the Mﬁle frs flm.m. The Bode plot of the closedloop system is shown in Figure 13.32. The closedloop bandwidth is about 10 rad/s. Note that a good match in magnitude between the closedloop system and the dynamic model M is achieved for frequencies up to 70 rad/s. 366 13 Robust Control of a FlexibleLink Manipulator
wL
0.015 0.01 0.005 wL (m) 0 −0.005 −0.01 −0.015 0 0.5 1 1.5 Time (s) 2 2.5 3 Fig. 13.30. Tipdeﬂection transient response for µcontroller Closed−loop control
1 0.8 0.6 0.4 0.2 u (V)
0 −0.2 −0.4 −0.6 −0.8 0 0.5 1 1.5 Time (s) 2 2.5 3 Fig. 13.31. Control action for µcontroller The Bode plots of the tipdeﬂection transfer function are shown in Figure 13.33. The maximum amplitude of the tip deﬂection is observed for the input signal with frequency 40 rad/s. Finally, in Figure 13.34 we show the magnitude plots with respect to the ﬁrst and second noise. It is seen from the ﬁgure that the noise in measuring the joint angle has a negligible eﬀect on the system output. 13.5 Controller Design and Analysis
Closed−loop magnitude plot 0 367 −10 −20 Solid line: the closed−loop system −30 Dashed line: the model Magnitude (dB) −40 −50 −60 −70 −80 −90 −100 0 10 10 1 10 Frequency (rad/s) Closed−loop phase plot 2 10 3 0 −100 −200 Phase (deg) −300 Solid line: the closed−loop system Dashed line: the model −400 −500 −600 −700 0 10 10 1 10 Frequency (rad/s) 2 10 3 Fig. 13.32. Closedloop magnitude (above) and phase (below) plots We consider now the order reduction of the designed controller. As indicated in Table 13.1, the order of the µcontroller is 28. It would be good for implementation if the order could be reduced while essentially keeping the achieved performance. For this aim, we use the Mﬁle red flm.m. Af 368 13 Robust Control of a FlexibleLink Manipulator
Magnitude plot of w1 10 0 −10 −20 Magnitude (dB) −30 −40 −50 −60 −70 −80 −90 −1 10 10 0 10 Frequency (rad/s)
Phase plot of w1 1 10 2 10 3 0 −50 −100 −150 Phase (deg) −200 −250 −300 −350 −400 −450 −500 −1 10 10 0 10 Frequency (rad/s) 1 10 2 10 3 Fig. 13.33. Magnitude (above) and phase (below) plots for the tip deﬂection ter the balanced realisation transformation of the controller and by neglecting the small Hankel singular values, the order of the controller can be reduced to 11 without losing too much performance. In Figure 13.35 we compare the frequency responses of the maximum singular values of the fullorder 13.5 Controller Design and Analysis
Sensitivity to the first noise 369 −60 −80 −100 −120
Magnitude (dB) −140 −160 −180 −200 −220 −2 10 10 −1 10 0 10 Frequency (rad/s) 1 10 2 10 3 Sensitivity to the second noise −120 −130 −140 −15 0
Magnitude (dB) −160 −17 0 −180 −19 0 −200 −2 10 10 −1 10 0 10 Frequency (rad/s) 1 10 2 10 3 Fig. 13.34. Magnitude plots for the ﬁrst and second noise and reducedorder controllers. The frequency responses of both fullorder and reducedorder controllers practically coincide. The transient responses of the closedloop system with fullorder and with reducedorder controller are also practically indistinguishable. (Figures are not included here.) 370 13 Robust Control of a FlexibleLink Manipulator
10
6 Controller magnitude plot 10 5 Solid line: the full−order controller Dashed line: the reduced−order controller
10
4 10 3 10 2 10 1 10 0 10 −1 10 −4 10 −2 10 0 10 2 10 4 10 6 Fig. 13.35. Frequency responses of the fullorder and reducedorder controllers It is interesting to compare the results obtained with the µcontroller with those from the conventional collocated PD controller in the form of ¨ u = kP (r − θ) − kD θ The proportional and derivative coeﬃcients are chosen as kP = 358 N m/rad and kD = 28.5 N m/(rad/s). The values of kP and kD are selected such that after neglecting the link ﬂexibility the closedloop transfer function coincides with the transfer function of the model. The results by using the µanalysis method in this case (i.e. with the PD controller) are 0.447, 6.82 and 7.41 for the robust stability, nominal performance and robust performance, respectively. Therefore, the PD controller leads to poor nominal performance and poor robust performance, in comparison to the µcontroller designed. This can be seen by comparing Figures 13.36 and 13.37 with Figures 13.29 and 13.30, respectively. It has to be noticed that good results in the design may also be obtained by using a collocated controller on the feedback from the joint angle θ and the ˙ velocity θ. The use of the tip acceleration α, however, allows better results ¨ with respect to the robust performance to be obtained. 13.5 Controller Design and Analysis
Closed−loop transient response using the PD controller 371 0.3 0.25 0.2 0.15
ref, α, θ Dashed line: ref Solid line: α 0.1 Dash−dotted line: θ 0.05 0 −0.05 0 0.5 1 1.5 Time (s) 2 2.5 3 Fig. 13.36. Closedloop transient response for the PD controller wl 0.025 0.02 0.015 0.01 0.005
wl (m) 0 −0.005 −0.01 −0.015 −0.02 0 0.5 1 1.5 Time (s) 2 2.5 3 Fig. 13.37. Tipdeﬂection transient response for the PD controller 372 13 Robust Control of a FlexibleLink Manipulator 13.6 Nonlinear System Simulations
The performance of the µcontroller designed in the previous section is further investigated by simulations of the nonlinear closedloop system with this controller. The simulation is carried out by the Simulink r model nls flm.mdl using the nonlinear plant model (13.5). A number of simulations may be performed for several values of the payload mass and of the damping coeﬃcients. The Simulink r model nls flm.mdl is shown in Figure 13.38. Before running the simulation, it is necessary to set the model parameters by using the Mﬁle init flm.m. The time response of the tip position α(t), along with the joint angle θ and the reference r, for the case of the reducedorder µcontroller and nominal payload mass is given in Figure 13.39. The tip deﬂection w(L, t), for the nominal payload mass and the same reference signal, is shown in Figure 13.40. The values of the damping coeﬃcients correspond to the case of light damping of the mechanical structure. In particular, the value of the hub damping coeﬃcient dr corresponds to a relative uncertainty of –20%. The damping coeﬃcients df1 and df2 are taken so that the respective relative perturbations in d1 and d2 for the nominal payload are equal to –40%. The parameters of the reference signal used in the simulation ensure fast motion and are set as a = 0.1π rad/s, ψ = 2.5π s−1 , r0 = 0 rad, tm = 0.8 s and tf = 3 s. In the nonlinear system simulations, it is shown that the µcontroller efﬁciently suppresses the elastic vibrations during the fast motion of the manipulator tip. It thus justiﬁes that the µsynthesis is an appropriate robust design method in this exercise. It also conﬁrms the validity of the uncertain model derived. Simulink model of the flexible manipulator system alpha u / tau
u tau
In1 Out1 r / alpha / theta
yout theta
d2alpha/dt2 yout Output refer_flm Actuator Flexible Manipulator
eta_2 eta_1 r x’ = Ax+Bu y = Cx+Du s_flm
em wl Clock Reference Signal Controller wl t eta_1 Clock1 Time eta_2 Fig. 13.38. Simulation model of the nonlinear system
Out1 Out2 13.6 Nonlinear System Simulations Noise 373 374 13 Robust Control of a FlexibleLink Manipulator
Nonlinear system transient response 0.3 0.25 0.2 0.15
ref, α, θ Dashed line: ref Solid line: α 0.1 Dash−dotted line: θ 0.05 0 −0.05 0 0.5 1 1.5 Time (s) 2 2.5 3 Fig. 13.39. Transient response of the nonlinear system Nonlinear system tip position 0.015 0.01 0.005 0
wL (m) −0.005 −0.01 −0.015 −0.02 0 0.5 1 1.5 Time (s) 2 2.5 3 Fig. 13.40. Transient response of the nonlinear system (w(L, t)) 13.7 Conclusions 375 13.7 Conclusions
A few conclusions may be drawn as the following, based on the analysis and design of the ﬂexible manipulator control system: • In applying linear robust control system design techniques for a nonlinear plant it is usually unavoidable to derive a complicated uncertainty model, because of the requirement of a suﬃciently accurate linear approximation. That would, however, adversely aﬀect the controller design and analysis. It is important, therefore, to simplify the model of uncertainty. Methods such as the numerical approximation used in this study can be considered. • In contrast to many known models, the uncertainty model derived in this study for the ﬂexible manipulator system contains real parametric uncertainties in a highly structured form. Such a model appeals naturally to the application of µsynthesis and analysis method that greatly reduces the conservativeness in the controller design. • A robust noncollocated controller on the feedback signals of joint angle and tip acceleration is designed in this study on the basis of the uncertainty model derived and by using the µsynthesis. The µcontroller shows very good robust performance on the tip motion for a wide range of payload mass. The controller eﬃciently suppresses the elastic vibrations during the fast motion of the manipulator tip. • The nonlinear system simulation results conﬁrm the high performance of the controller designed and also verify the validity of the uncertain model used. • It is also possible to investigate various noncollocated and collocated controller structures on diﬀerent output feedback signals, with the uncertainty model and linearised plant derived in this study. Notes and References
The control of ﬂexible manipulators has been an area of intensive research in recent years. An eﬃcient approach to improve the manipulator performance is to use a feedback from the manipulator tip position [44], tip acceleration [42] or basestrain [43]. The usage of such feedbacks leads to a noncollocated control scheme that may increase the closedloop system sensitivity to modelling errors or to parameter uncertainties [125]. The necessity to achieve robustness of the manipulator control system in the presence of uncertainties makes it appropriate to apply the robust control design methods. In a few recent papers the authors develop diﬀerent H∞ controllers [45], [85], [146] and µsynthesis controllers [73] for ﬂexiblelink manipulators. A common disadvantage in the previous robust designs for ﬂexible manipulators is the use of unstructured uncertainty model that leads to potentially very conservative results. References 1. D. Abramovitch and G. Franklin. A brief history of disk drive control. IEEE Control Systems Magazine, 22:28–42, 2002. 2. D. Abramovitch and G. Franklin. Disk drive control: The early years. In Proceedings of the 15th IFAC Congress. Session TThM12, pages 1–12, Barcelona, Spain, July 2002. CDROM. 3. D. Abramovitch, T. Hurst, and D. Henze. An overview of the PES Pareto method for decomposing baseline noise sources in hard disk postion error signals. IEEE Transactions on Magnetics, 34:17–23, 1998. 4. D. Abramovitch, F. Wang, T. Hurst, and G. Franklin. Disk drive pivot nonlinearity modelling Part I: Frequency domain. In Proceedings of the 1994 American Control Conference, pages 2600–2603, Baltimore, MD, June 1994. 5. D.Y. Abramovitch. Magnetic and optical disk control: Parallels and contrasts. In Proceedings of the 2001 American Control Conference, pages 421–428, Arlington, VA, June 2001. 6. V.M. Adamjan, D.Z. Arov, and M.G. Krein. Analytic properties of Schmidt pairs for a Hankel operator and the generalized SchurTakagi problem. Mat. USSR Sbornik, 15:31–73, 1971. 7. R.J. Adams, J.M Buﬃngton, A.G. Sparks, and S.S. Banda. Robust Multivariable Flight Control. SpringerVerlag, New York, 1994. 8. U.M. AlSaggaf and G.F. Franklin. An error bound for a discrete reduced order model of a linear multivariable system. IEEE Transactions on Automatic Control, AC32:815–819, 1987. 9. G.J. Balas, J.C. Doyle, K. Glover, A. Packard, and R. Smith. µAnalysis and Synthesis Toolbox: User’s Guide. MUSYN Inc. and The Mathworks, Inc., 1995. 10. D.S. Bernstein and W.M. Haddad. LQG control with an H∞ performance bound: A Riccati equation approach. IEEE Transactions on Automatic Control, AC34:293–305, 1989. 11. J.H. Blakelock. Automatic Control of Aircraft and Missiles. Wiley, New York, 1991. 12. A.E. Bryson. Control of Spacecraft and Aircraft. Princeton University Press, Princeton, NJ, 1994. 13. H. Buschek. Design and ﬂight test of a robust autopilot for the IRIST airtoair missile. Control Engineering Practice, 11:551–558, 2003. 378 References 14. F.M. Callier and C.A. Desoer. Linear System Theory. SpringerVerlag, New York, 1991. 15. B.M. Chen, T.H. Lee, and V. Venkataramanan. Hard Disk Drive Servo Systems. SpringerVerlag, Berlin, 2002. 16. K.K. Chew and M. Tomizuka. Digital control of repetetive errors in disk drive systems. IEEE Control Systems Magazine, 10:16–20, 1990. 17. B.W. Choi, D.W. Gu, and I. Postlethwaite. Loworder H∞ SubOptimal Controllers. IEE Proceedings  Part D, 141:243–248, 1994. 18. R.R.E. de Gaston and M.G. Safonov. Exact calculation of the multiloop stability margin. IEEE Transactions on Automatic Control, AC33:156–171, 1988. 19. U.B. Desai and D. Pal. A transformation approach to stochastic model reduction. IEEE Transactions on Automatic Control, AC29:1097–1100, 1984. 20. C.A. Desoer and W.S. Chan. The feedback interconnection of lumped linear timeinvariant systems. Journal of the Franklin Institute, 300:335–351, 1975. 21. C.A. Desoer and M. Vidyasagar. Feedback Systems: InputOutput Properties. Academic Press, New York, 1975. 22. J. Ding, M. Tomizuka, and H. Numasato. Design and robustness analysis of dual stage servo system. In Proceedings of the 2000 American Control Conference, pages 2605–2609, Chicago, Illinois, June 2000. 23. J.C. Doyle. Analysis of feedback systems with structured uncertainties. IEE Proceedings  Part D, 129:242–250, 1982. 24. J.C. Doyle. Structured uncertainty in control system design. In Proceedings of the 24 IEEE Conference on Decision and Control, pages 260–265, December 1985. 25. J.C. Doyle. A review of µ: For case studies in robust control. In Proceedings of 10th IFAC World Congress, pages 395–402, Munich, Germany, July 1987. 26. J.C. Doyle, B.A. Francis, and A.R. Tannenbaum. Feedback Control Theory. Macmillan Publishing Co., New York, 1992. 27. C. Du, J. Zhang, and G. Guo. Vibration analysis and control design comparison of HDDs using ﬂuid bearing and ball bearing spindles. In Proceedings of the 2002 American Control Conference, pages 1378–1383, Anchorage, AK, May 2002. 28. K.G. Eltohamy. Nonlinear optimal control of a triple inverted pendulum with single control input. International Journal of Control, 69:239–256, 1998. 29. D. Enns. Model Reduction for Control Systems Design. PhD thesis, Department of Aeronautics and Astronautics, Stanford University, Stanford, CA, 1984. 30. D. Enns. Model reduction with balanced realizations: An error bound and a frequency weighted generalization. In Proceedings of the 23rd IEEE Conference on Decision and Control, pages 127–132, Las Vegas, NV, 1984. 31. R.B. Evans, J.S. Griesbach, and W.C. Messner. Piezoelectric microactuator for dual stage control. IEEE Transactions on Magnetics, 35:977–982, 1999. 32. M.K.H. Fan and A.L. Tits. Characterization and eﬃcient computation of the structured singular value. IEEE Transactions on Automatic Control, AC31:734–743, 1986. 33. M.K.H. Fan, A.L. Tits, and J.C. Doyle. Robustness in the presence of mixed parametric uncertainty and unmodeled dynamics. IEEE Transactions on Automatic Control, AC36:25–38, 1991. References 379 34. K.V. Fernando and H. Nicholson. Singular perturbational model reduction of balanced systems. IEEE Transactions on Automatic Control, AC27:466–468, 1982. 35. K.V. Fernando and H. Nicholson. Singular perturbational approximation for discretetime systems. IEEE Transactions on Automatic Control, AC28:240– 242, 1983. 36. G. Ferreres. A Practical Approach to Robustness Analysis with Aeronautical Applications. Kluwer Academic/Plenum Publishers, New York, 1999. 37. I. Fialho, G.J. Balas, A.K. Packard, J. Renfrow, and C. Mullaney. Gainscheduled lateral control of the F14 aircrfat during powered approach landing. Journal of Guidance, Control, and Dynamics, 23:450–458, 2000. 38. B.A. Francis. A Course in H∞ Control Theory, volume 88 of Lecture Notes in Control and Information Sciences. SpringerVerlag, 1987. 39. G.F. Franklin, J.D. Powell, and M.L. Workman. Digital Control of Dynamic Systems. AddisonWesley, Menlo Park, CA, third edition, 1998. 40. K. Furuta, K. Kajiwara, and K. Kosuge. Digital control of a double inverted pendulum on an inclined rail. International Journal of Control, 32:907–924, 1980. 41. K. Furuta, T. Ochia, and N. Ono. Attitude control of a triple inverted pendulum. International Journal of Control, 39:1351–1365, 1984. 42. E. GarciaBenitez, J. Walkins, and S. Yurkovich. Nonlinear control with acceleration feedback for a twolink ﬂexible robot. Control Engineering Practice, 1:989–997, 1993. 43. S. Ge, T. Lee, and G. Zhu. Improving regulation of a singlelink ﬂexible manipulator with strain feedback. IEEE Transactions on Robotics and Automation, 14:179–185, 1998. 44. H. Geniele, R. Patel, and K. Khorasani. Endpoint control of a ﬂexiblelink manipulator: Theory and experiment. IEEE Transactions on Control Systems Technology, 5:559–570, 1997. 45. M. Ghanekar, D. Wang, and G. Heppler. Scaling laws for linear controllers of ﬂexible link manipulators characterized by nondimensional groups. IEEE Transactions on Robotics and Automation, 13:117–127, 1997. 46. K. Glover. All optimal Hankelnorm approximations of linear multivariable systems and their l∞ error bounds. International Journal of Control, 39:1115– 1193, 1984. 47. K. Glover. Multiplicative approximation of linear multivariable systems with L∞ error bounds. In Proceedings of the 1986 American Control Conference, pages 1705–1709, Minneapolis, MN, 1986. 48. K. Glover and J.C. Doyle. Statespace formulae for all stabilizing controllers that satisfy an H∞ norm bound and relations to risk sensitivity. Systems & Control Letters, 11:167–172, 1988. 49. K. Glover and E.A. Jonckheere. A comparison of two Hankel norm methods for approximating spectra. In C.I. Byrnes and A. Lindquist, editors, Modelling, Identiﬁcation and Robust Control. NorthHolland, Amsterdam, The Netherlands, 1986. 50. T.B. Goh, Z. Li, B.M. Chen, T.H. Lee, and T. Huang. Design and implementation of a hard disk drive servo system using robust and perfect tracking approach. In Proceedings of the 38th IEEE Conference on Decision and Control, pages 5247–5252, Phoenix, Arizona, December 1999. 380 References 51. M. Green. Balanced stochastic realizations. Linear Algebra & its Applications, 98:211–247, 1988. 52. M. Green. A relative error bound for balanced stochastic truncation. IEEE Transactions on Automatic Control, AC33:961–965, 1988. 53. M. Green and D.J.N. Limebeer. Linear Robust Control. PrenticeHall, Englewood Cliﬀs, NJ, 1995. 54. A.L. Greensite. Analysis and Design of Space Vehicle Flight Control Systems. Spartan, New York, 1970. 55. D.W. Gu, B.W. Choi, and I. Postlethwaite. Loworder stabilizing controllers. IEEE Transactions on Automatic Control, AC38:1713–1717, 1993. 56. D.W. Gu, S.J. Goh, T. Fitzpatrick, I. Postlethwaite, and N. Measor. Application of an expert system for robust controller design. Control’96, 2:1004–1009, 1996. 57. D.W. Gu, P.Hr. Petkov, and M.M. Konstantinov. Direct Formulae for the H∞ SubOptimal Central Controller. Technical Report 19987, Niconet Report, 1998. Available at http://www.win.tue.nl/niconet. 58. D.W. Gu, P.Hr. Petkov, and M.M. Konstantinov. Formulae for discrete H∞ loop shaping design procedure controllers. In Proceedings of the 15th IFAC World Congress, paper 276, Session TMoM15, Barcelona, Spain, July 2002. CDROM. 59. D.W. Gu, I. Postlethwaite, and M.C. Tsai. H∞ superoptimal solutions. In C.T. Leondes, editor, Advances in Control and Dynamic Systems, volume 51, pages 183–246. Academic Press, San Diego, CA, 1992. 60. D.W. Gu, M.C. Tsai, and I. Postlethwaite. Statespace formulae for discretetime optimization. International Journal of Control, 49:1683–1723, 1989. 61. L. Guo, H.S. Lee, A. Hudson, and S.H. Chen. A comprehensive time domain simulation tool for hard disk drive TPI prediction and mechanical/servo enhancement. IEEE Transactions on Magnetics, 35:879–884, 1999. 62. S. Hammarling. Numerical solution of the stable nonnegative deﬁnite Lyapunov equation. IMA Journal of Numerical Analysis, 2:303–323, 1982. 63. S. Hara, T. Hara, L. Yi, and M. Tomizuka. Two degreeoffreedom controllers for hard disk drives with novel reference signal generation. In Proceedings of the 1999 American Control Conference, pages 4116–4121, San Diego, CA, June 1999. 64. J.W. Helton. Worst case analysis in the frequency domain: The H∞ approach to control. IEEE Transactions on Automatic Control, AC30:1154–1170, 1985. 65. J.W. Helton and O. Merino. Classical Control Using H∞ Methods. Society for Industrial and Applied Mathematics, Philadelphia, PA, 1998. 66. D. Hernandez, S.S. Park, R. Horowitz, and A.K. Packard. Dual stage trackfollowing servo design for hard disk drives. In Proceedings of the 1999 American Control Conference, pages 4116–4121, San Diego, CA, June 1999. 67. D. Hoyle, R. Hyde, and D.J.N. Limebeer. An H∞ approach to twodegreeoffreedom design. In Proceedings of the 30th IEEE Conference on Decision and Control, pages 1581–1585, Brighton, UK, December 1991. 68. C.S. Hsu, X. Yu, H.H. Yeh, and S.S. Banda. H∞ compensator design with minimal order observer. In Proceedings of the 1993 American Control Conference, San Francisco, CA, June 1993. 69. Y. Huang, P. Mathur, and W.C. Messner. Robustness analysis on a high bandwidth disk drive servo system with an instrumented suspension. In Proceedings References 381 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. of the 1999 American Control Conference, pages 3620–3624, San Diego, CA, June 1999. J. Ishikawa, Y. Yanagita, and T. Hattori ans M. Hashimoto. Head positioning control for low sampling rate systems based on two degreeoffreedom control. IEEE Transactions on Magnetics, 32:1787–1792, 1996. T. Iwasaki and R.E. Skelton. All low order H∞ controllers with covariance upper bound. In Proceedings of the 1993 American Control Conference, San Francisco, CA, June 1993. H. Kajiwara, P. Apkarian, and P. Gahinet. LPV techniques for control of an inverted pendulum. IEEE Control Systems Magazine, 19:44–54, 1999. M. Karkoub, G. Balas, K. Tamma, and M. Donath. Robust control of ﬂexible manipulators via µsynthesis. Control Engineering Practice, 8:725–734, 2000. C. Kempf, W. Messner, M. Tomizuka, and R. Horovitz. Comparison of four discretetime repetetive control algorithms. IEEE Control Systems Magazine, 13:48–54, 1993. S.W. Kim, B.D.O. Anderson, and A.G. Madievski. Error bound for transfer function order reduction using frequency weighted balanced truncation. Systems & Control Letters, 24:183–192, 1995. M. Kobayashi, T. Yamaguchi, and R. Horowitz. Trackseeking controller design for dualstage actuator in magnetic disk drives. In Proceedings of the 2000 American Control Conference, pages 2610–2614, Chicago, Illinois, June 2000. C.M. Kozierok. The PC Guide. The Reference Section on Hard Disk Drives. January 2003. Available at http://www.PCGuide.com. S. Kung. A new loworder approximation algorithm via singular value decomposition. In Proceedings of the 18th IEEE Conference on Decision and Control, Ft. Lauderdale, Florida, December 1979. S. Kung and D.W. Lin. Optimal Hankel norm model reduction: Multivariable systems. IEEE Transactions on Automatic Control, AC26:832–852, 1981. P.J. Larcombe. On the generation and solution of the symbolic, openloop charactersitic equation for a double inverted pendulum. International Journal of Systems Science, 24:2379–2390, 1993. A.J. Laub. On computing balancing transformations. In Proceedings of the Joint 1980 American Control Conference, pages FA8–E, San Francisco, CA, August 1980. A.J. Laub, M.T. Heath, C.C. Paige, and R.C. Ward. Computation of system balancing transformations and other applications of simultaneous diagonalization algorithms. IEEE Transactions on Automatic Control, AC32:115–121, 1987. H.S. Lee. Controller optimization for minimum position error signals of hard disk drives. In Proceedings of the 2000 American Control Conference, pages 3081–3085, Chicago, Illinois, June 2000. D.J. Leith and W.E. Leithead. Survey of gainscheduling analysis and design. International Journal of Control Control, 73:1001–1025, 2000. Y. Li, B. Thang, Z. Shi, and Y. Lu. Experimental study for trajectory tracking of a twolink ﬂexible manipulators. International Journal of Systems Science, 31:3–9, 2000. D.J.N. Limebeer. The speciﬁcation and purpose of a controller design study. In Proceedings of the 30th IEEE Conference on Decision and Control, pages 1579–1580, Brighton, UK, December 1991. 382 References 87. D.J.N. Limebeer, E.M. Kasenally, and J.D. Perkins. On the design of robust two degree of freedom controllers. Automatica, 29:157–168, 1993. 88. C.A. Lin and T.Y. Chiu. Model reduction via frequency weighted balanced realization. CONTROL – Theory and Advanced Technology, 8:341–351, 1992. 89. J.L. Lin. Control System Design for Robust Stability and Robust Performance. PhD thesis, Department of Engineering, University of Leicester, Leicester, UK, May 1992. 90. J.L. Lin, I. Postlethwaite, and D.W. Gu. µK iteration: a new algorithm for µsynthesis. Automatica, 29:219–244, 1993. 91. R. Lind and M. Brenner. Robust Aeroservoelastic Stability Analysis. Flight Test Applications. SpringerVerlag, London, 1999. ISBN 1852330961. 92. A. Lindquist and G. Picci. On the stochastic realization problem. SIAM Journal of Control and Optimization, 17:365–389, 1979. 93. Yi Liu and B.D.O. Anderson. Singular perturbation of balanced systems. International Journal of Control, 50(4):1379–1405, 1989. 94. A. De Luca and B. Siciliano. Trajectory control of a nonlinear onelink ﬂexible arm. International Journal of Control, 50:1699–1715, 1989. 95. P. Lundstr¨m, S. Skogestad, and J.C. Doyle. Twodegreeoffreedom controller o design for an illconditioned distillation process using µsynthesis. IEEE Transactions on Control Systems Technology, 7:12–21, 1999. 96. J. Lunz. Robust Multivariable Feedback Control. Prentice Hall, London, 1989. 97. C.C. MacDuﬀee. The Theory of Matrices. Chelsea Publishing Co., New York, 1950. 98. J.M. Maciejowski. Multivariable Feedback Design. AddisonWesley, Wokingham, England, 1989. ISBN 0201182432. 99. D.P. Magee. Optimal ﬁltering to improve performance in hard disk drives: Simulation results. In Proceedings of the 1999 American Control Conference, pages 71–75, San Diego, CA, June 1999. 100. D. McFarlane and K. Glover. A loop shaping design procedure using H∞ synthesis. IEEE Transactions on Automatic Control, AC37:749–769, 1992. 101. D.C. McFarlane and K. Glover. Robust Controller Design Using Normalized Coprime Factor Plant Descriptions, volume 138 of Lecture Notes in Control and Information Sciences. SpringerVerlag, 1990. 102. G.A. MedranoCerda. Robust stabilization of a triple inverted pendulumcart. International Journal of Control, 68:849–865, 1997. 103. G.A. MedranoCerda. Robust computer control of an inverted pendulum. IEEE Control Systems Magazine, 19:58–67, 1999. 104. Z. Meier, H. Farwig, and H. Unbehauen. Discrete computer control of a tripleinverted pendulum. Optimal Control Applications & Methods, 11:157–171, 1990. 105. L. Meirovitch. Elements of Vibration Analysis. McGrawHill, New York, 1986. 106. W. Messner and R. Ehrlich. A tutorial on controls for disk drives. In Proceedings of the 2001 American Control Conference, pages 408–420, Arlington, VA, June 2001. 107. D.G. Meyer. Fractional balanced reduction: Model reduction via fractional representation. IEEE Transactions on Automatic Control, AC35(3):1341–1345, 1990. 108. B. C. Moore. Principle component analysis in linear systems: Controllability, observability, and model reduction. IEEE Transactions on Automatic Control, AC26:17–31, 1981. References 383 109. M. Morari and E. Zaﬁriou. Robust Process Control. PrenticeHall, Englewood Cliﬀs, NJ, 1989. 110. S. Mori, H. Nishihara, and K. Furuta. Control of an unstable mechanical system. Control of pendulum. International Journal of Control, 23:673–692, 1976. 111. G. Murad. Robust Multivariable Control of Industrial Production Processes: A DiscreteTime MultiObjective Approach. PhD thesis, Department of Engineering, University of Leicester, Leicester, UK, 1995. 112. G. Murad, DW. Gu, and I. Postlethwaite. A Direct Model Reduction Approach for DiscreteTime NonMinimal StateSpace Systems. Internal Report 9423, University of Leicester, Leicester, UK, September 1994. 113. G. Murad, D.W. Gu, and I. Postlethwaite. Robust internal model control of a binary distillation column. In IEEE International Conference on Industrial Technology, pages 194–198, Shanghai, China, December 1996. 114. G. Murad, I. Postlethwaite, D.W. Gu, and R. Samar. On the structure of an H∞ twodegreeoffreedom internal modelbased controller and its application to a glass tube production process. In Proceedings of the Third European Control Conference, pages 595–600, Rome, September 1995. 115. G. Murad, I. Postlethwaite, D.W. Gu, and J.F. Whidborne. Robust control of a glass tube shaping process. In Proceedings of the Second European Control Conference, volume 4, pages 2350–2355, Gr¨ningen, The Netherlands, Juneo July 1993. 116. Z. Nehari. On bounded bilinear forms. Annals of Mathematics, 65:153–162, 1957. 117. W.Y. Ng. Interactive MultiObjective Programming as a Framework for ComputerAided Control System Design. Lecture Notes in Control and Information Sciences. SpringerVerlag, 1989. 118. R.A. Nichols, R.T. Reichert, and W.J. Rugh. Gain scheduling for H∞ controllers: A ﬂight control example. IEEE Trans. Control Systems Technology, 1:69–53, 2001. 119. International Society Niconet. SLICOT: Numerical Subroutine Library for Control and Systems Theory. Available at http://www.win.tue.nl/niconet, 2001. 120. A. Packard and J.C. Doyle. The complex structured singular value. Automatica, Special Issue on Robust Control, 29:71–109, 1993. 121. A. Packard, M.K.H. Fan, and J.C. Doyle. A power method for the structured singular value. In Proceedings of the 27th IEEE Conference on Decision and Control, pages 2132–2137, Austin, Texas, December 1988. 122. A. Packard and P. Pandey. Continuity properties of the real/complex structured singular value. IEEE Transactions on Automatic Control, AC38:415– 428, 1993. 123. L.Y. Pao and G.F. Franklin. Timeoptimal control of ﬂexible structures. In Proceedings of the 29th IEEE Conference on Decision and Control, pages 2580– 2581, Honolulu, HI, December 1990. 124. T. Pappas, A.J. Laub, and N.R. Sandell. On the numerical solution of the discretetime algebraic Riccati equation. IEEE Transactions on Automatic Control, AC25:631–641, 1980. 125. J. Park and H. Asada. Dynamic analysis of noncollocated ﬂexible arms and design of torque transmission mechanisms. ASME Journal of Dynamic Systems, Measurements and Control, 116:201–207, 1994. 384 References 126. L. Pernebo and L.M. Silverman. Model reduction via balanced state space representations. IEEE Transactions on Automatic Control, AC27:382–387, 1982. 127. I. Postlethwaite, J.L. Lin, and D.W. Gu. Robust control of a high purity distillation column using µK iteration. In Proceedings of the 30th IEEE Conference on Decision and Control, Brighton, UK, December 1991. 128. R.M. Redheﬀer. Remarks on the basis of network theory. Journal of Mathematics and Physics, 28:237–258, 1950. 129. R.M. Redheﬀer. On a certain linear fractional transformation. Journal of Mathematics and Physics, 39:269–286, 1960. 130. R.T. Reichert. Dynamic scheduling of modernrobustcontrol autopilot design for missiles. IEEE Control Systems Magazine, 12:35–42, 1992. 131. W.J. Rugh and J.S. Shamma. Research on gain scheduling. Automatica, 36:1401–1425, 2000. 132. M.G. Safonov. Stability margins of diagonally perturbed multivariable feedback systems. IEE Proceedings  Part D, 129:251–256, 1982. 133. M.G. Safonov and R.Y. Chiang. A Schur method for balancedtruncation model reduction. IEEE Transactions on Automatic Control, AC34:729–733, 1989. 134. M.G. Safonov, R.Y. Chiang, and D.J.N. Limebeer. Hankel model reduction without balancing – A descriptor approach. In Proceedings of the 26th IEEE Conference on Decision and Control, Los Angeles, CA, December 1987. 135. M.G. Safonov, D.J.N. Limebeer, and R.Y. Chiang. Simplifying the H∞ theory via loopshifting, matrixpencil and descriptor concepts. International Journal of Control, 50:2467–2488, 1989. 136. R. Samar, I. Postlethwaite, and D.W. Gu. Model reduction with balanced realizations. International Journal of Control, 62:33–64, 1995. 137. R.S. S´nchezPe˜a and M. Sznaier. Robust Systems. Theory and Applications. a n John Wiley & Sons, Inc., New York, 1998. 138. J. Sefton and K. Glover. Polezero cancellations in the general H∞ problem with reference to a two block design. Systems & Control Letters, 14:295–306, 1990. 139. R.S. Sezginer and M.L. Overton. The largest singular value of eX Ao e−X is convex on convex sets of commuting matrices. IEEE Transactions on Automatic Control, AC35:229–230, 1990. 140. S. Skogestad. Dynamics and control of distillation columns. A tutorial introduction. Trans. IChemE, 75:1–36, 1997. 141. S. Skogestad, M. Morari, and J.C. Doyle. Robust control of illconditioned plants: High purity distillation. IEEE Transactions on Automatic Control, 33:1092–1105, 1988. 142. S. Skogestad and I. Postlethwaite. Multivariable Feedback Control. John Wiley and Sons Ltd, Chichester, UK, 1996. 143. M.S. Spillman. Robust longitudinal ﬂight control design using linear parametervarying feedback. Journal of Guidance, Control, and Dynamics, 23:101–108, 2000. 144. V. Sreeram, B.D.O. Anderson, and A.G. Madievski. New results on frequency weighted balanced reduction technique. In Proceedings of the 1995 American Control Conference, pages 4004–4009, Seattle, WA, June 1995. 145. A.A. Stoorvogel. The H∞ Control Problem: A State Space Approach. Prentice Hall, Englewood Cliﬀs, NJ, 1992. References 385 146. R. Sutton, G. Halikias, A. Plummer, and D. Wilson. Modelling and H∞ control of a singlelink ﬂexible manipulator. Proceedings of the Institution of Mechanical Engineers, Part I, Journal of Systems and Control Engineering, 213:85–104, 1999. 147. K.S. Tang, K.F. Man, and D.W. Gu. Structured Genetic Algorithm for Robust H∞ Control Systems Design. IEEE Transactions on Industrial Electronics, 43(5):575–582, 1996. 148. M.S. Tombs and I. Postlethwaite. Truncated balanced realization of a stable nonminimal state space system. International Journal of Control, 46(4):1319– 1330, 1987. 149. V.A. Tsacouridis and G.A. MedranoCerda. Discretetime H∞ control of a triple inverted pendulum with single control input. IEE ProceedingsControl Theory Appl., 146:567–577, 1999. 150. G.W. van der Linden and P.F. Lambrechts. H∞ control of an experimental inverted pendulum with dry friction. IEEE Control Systems Magazine, 19:44– 50, 1993. 151. A. Varga. Balancing free squareroot algorithm for computing singular perturbation approximations. In Proceedings of the 30th IEEE Conference on Decision and Control, pages 1062–1065, Brighton, UK, December 1991. 152. A. Varga. On stochastic balancing related model reduction. In Proceedings of the 39th IEEE Conference on Decision and Control, pages 2385–2390, Sydney, Australia, December 2000. 153. M. Vidyasagar and H. Kimura. Robust controllers for uncertain linear multivariable systems. Automatica, 22:85–94, 1986. 154. M. Vidyasagar, H. Schneider, and B. Francis. Algebraic and topological aspects of feedback stabilization. IEEE Transactions on Automatic Control, AC27:880–894, 1982. 155. D.J. Walker. Relationship between three discretetime H∞ algebraic Riccati equation solutions. International Journal of Control, 52:801–809, 1990. 156. F. Wang, T. Hurst, D. Abramovitch, and G. Franklin. Disk drive pivot nonlinearity modelling Part II: Time domain. In Proceedings of the 1994 American Control Conference, pages 2604–2607, Baltimore, MD, June 1994. 157. G. Wang, V. Sreeram, and W.Q. Liu. A new frequencyweighted balanced truncation method and an error bound. IEEE Transactions on Automatic Control, 44:1734–1737, 1999. 158. J.F. Whidborne, D.W. Gu, and I. Postlethwaite. Algorithms for solving the method of inequalities – A comparative study. In Proceedings of the 1995 American Control Conference, June 1995. 159. J.F. Whidborne and G.P. Liu. Critical Control Systems. Research Studies Press Ltd, Taunton, Somerset, UK, 1993. 160. J.F. Whidborne, G. Murad, D.W. Gu, and I. Postlethwaite. Robust control of an unknown plant – the IFAC 93 benchmark. International Journal of Control, 61:589–640, 1994. 161. J.F. Whidborne, I. Postlethwaite, and D.W. Gu. Robust controller design using H∞ loopshaping and the method of inequalities. IEEE Transactions on Control Systems Technology, 2:455–461, 1994. 162. J.F. Whidborne, I. Postlethwaite, and D.W. Gu. Multiobjective control system design – a mixed optimization approach. In R.P. Agarwal, editor, Recent Trends in Optimization Theory and Applications, volume 5 of World Scientiﬁc Series in Applicable Analysis, pages 467–482. World Scientiﬁc, 1995. 386 References 163. J.F. Whidborne, I. Postlethwaite, and D.W. Gu. Robust control of a paper machine. Control Engineering Practice, 3:1475–1478, 1995. 164. M.T. White, M. Tomizuka, and C. Smith. Rejection of disk drive vibration and shock disturbances with a disturbance observer. In Proceedings of the 1999 American Control Conference, pages 4127–4131, San Diego, CA, June 1999. 165. W.N. White and R.C. Fales. Control of a double inverted pendulum with hydraulic actuation: A case study. In Proceedings of the 1999 American Control Conference, pages 495–499, San Diego, CA, June 1999. 166. M. Yamakita, T. Hoshino, and K. Furuta. Control practice using pendulum. In Proceedings of the 1999 American Control Conference, pages 490–494, San Diego, CA, June 1999. 167. D.C. Youla, H.A. Jabr, and J.J. Bongiorno. Modern WeinerHopf design of optimal controllers, Part ii: The multivariable case. IEEE Transactions on Automatic Control, AC21:319–338, 1976. 168. D.C. Youla, H.A. Jabr, and C.N. Lu. Singleloop feedback stabilization of linear multivariable dynamical plants. Automatica, 10:159–173, 1974. 169. V. Zakian and U. AlNaib. Design of dynamical and control systems by the method of inequalities. IEE Proceedings  Control & Science, 120:1421–1427, 1973. 170. G. Zames. Feedback and optimal sensitivity: Model reference transformations, multiplicative seminorms and approximate inverses. IEEE Transactions on Automatic Control, AC26:301–320, 1981. 171. G. Zames and B.A. Francis. Feedback, minimax sensitivity, and optimal robustness. IEEE Transactions on Automatic Control, AC28:585–600, 1983. 172. P. Zarchan. Tactical and Strategic Missile Guidance, volume 176 of Progress in Astronautics and Aeronautics. AIAA, Washington, DC, 3rd edition, 1998. 173. H.P. Zeiger and A.J. McEwen. Approximate linear realization of given dimension via Ho’s algorithm. IEEE Transactions on Automatic Control, AC19:153, 1974. 174. K. Zhou and J.C. Doyle. Essentials of Robust Control. Prentice Hall, Upper Saddle River, NJ, 1998. 175. K. Zhou, J.C. Doyle, and K. Glover. Robust and Optimal Control. Prentice Hall, Upper Saddle River, NJ, 1995. Index M ∆ conﬁguration, 29 H∞ loopshaping design procedure, 59 H∞ suboptimal problem, 39 ∞norm of a system, 11 µK iteration method, 77 µsynthesis method, 75 2degreeoffreedom control scheme, 38 absoluteerror approximation methods, 80 accelerometer, 289 additive perturbation, 14 admissible point, 68 admissible set, 68 aerodynamic angle of roll, 291 aerodynamic centre of pressure, 291 aerodynamic coeﬃcients, 293 aerodynamic damping moments, 294 aerodynamic moments, 293 ailerons, 289 algebraic Riccati equation, 40 angle of attack, 290 assumedmodes method, 336 asymptotic stability, 6 Balanced Realisation Algorithm, 81 balanced residualisation, 83 Balanced Stochastic Truncation method, 90 balanced system, 81 balanced truncation method, 81 bank angle, 291 Bezout identity, 8 bodyﬁxed reference frame, 289 bottom product, 250 BoundedInputBoundedOutput stability, 6 central H∞ suboptimal controller, 49 central controller, 43 Cholesky factors, 42 clamping hub, 336 closedloop system, 4 complementary sensitivity function, 29 condensor, 252 continuoustime system, 5 controlsystem, 4 controllability gramian, 81 coprime factorisation, 8 coprime transfer functions, 8 DK iteration, 75 diagonal scaling problem, 33 discrete Lyapunov equations, 86 discretetime H∞ case, 50 discretetime Riccati equation, 51 discretetime system, 5 disk sectors, 204 disk tracks, 204 distillate product, 250 distillation column, 250 disturbance, 28 disturbance attenuation, 28 drag force, 293 dynamic pressure, 293 elastic deﬂection, 336 embedded servo, 205 388 Index lift force, 293 Linear Fractional Transformation lower, 21 upper, 21 loop shaping design procedure, 59 loworder controller, 79 lower bound on µ, 33 LQG methods, 3 LVconﬁguration of the distillation column, 253 Lyapunov equations, 81 Mach number, 293 massdamperspring system, 101 Matrix Inversion Lemma, 169 measurement noise, 28 method of inequalities, 67 MIMO system, 4 minimal system, 5 mixed optimisation loopshaping design method, 67 mixed sensitivity problem, 35 multivariable system, 5 natural frequencies, 339 noise rejection, 28 nominal model, 13 nominal parameter value, 18 nominal performance, 73 nominal stability, 73 noncollocated controller structure, 355 nonrepeatable runout, 205 norm of a signal, 9 normalised system, 43 observability gramian, 81 openloop system, 4 order reduction, 80 orthonormal matrix, 84 output, 4 output multiplicative perturbation, 15 parametric uncertainty, 20 performance speciﬁcations, 28 pitch angle, 290 platters, 203 position bursts, 205 Position Error Signal, 205 postcompensator, 59 error signal, 28 fast part, 17 feedback system, 4 feedforward compensator, 60 feedforward path, 38, 60 ﬁctitious output vector, 19 ﬁns, 289 ﬂexiblelink manipulator, 336 ﬂightpath angle, 291 ﬂightpath reference frame, 289 Fractional Balanced Truncation method, 88 Fractional Singular Perturbation Approximation method, 88 frequencyweighted approximation methods, 92 Frequencyweighted Balanced Truncation, 94 Frequencyweighted Modulii Truncation Method, 96 Frequencyweighted Singular Perturbation Approximation, 95 full uncertainty blocks, 23 gain scheduling, 332 generalised plant, 36 Hankel approximation problem, 58 Hankel norm, 58, 83 Hankel singular value, 81 Hankelnorm approximation, 83 Hard Disk Drive, 203 Hard Disk Drive servo control system, 205 illconditioned problem, 39 illposed feedback system, 53 induced norm, 11 input, 4 input multiplicative perturbation, 14 interconnected system, 36 internal stability, 6 inverse additive perturbation, 14 inverse input multiplicative perturbation, 15 inverse output multiplicative perturbation, 15 left coprime factor perturbations, 15 Index power signal, 10 precompensator, 59 rate gyro, 289 read/write heads, 204 reboiler, 252 reference area, 293 reference input, 28 relativeerror approximation methods, 90 repeatable runout, 205 resonant modes, 207 right coprime factor perturbations, 15 robust control system, 25 robust performance, 73 robust stabilisation conditions, 27 robust stability, 73 robustly stable system, 26 roll angle, 290 rotational motion of the rocket, 293 runout, 205 scalar uncertainty blocks, 23 scaled model, 253 scaling matrix input, 253 output, 254 seeking mode, 205 sensitivity function, 29 sideslip angle, 290 singular perturbation approximation, 83 singular value decomposition, 45 SISO system, 4 sliders, 204 slow part, 17 SmallGain Theorem, 25 389 space eigenfunction, 337 spectral radius of a matrix, 31 stabilising controller, 26 stability, 6 stability margin, 31 statically stable rocket, 291 structured singular value, 30 structured uncertainty, 20 suboptimal discretetime loopshaping controller, 62 system norms, 10 timeinvariant system, 5 track following mode, 205 tradeoﬀ between nominal performance and robustness of the closedloop system, 202 transfer function matrix, 5 triple inverted pendulum, 164 unmodelled dynamics, 13, 17 unstructured uncertainty, 13 upper bound on µ, 33 vehiclecarried vertical reference frame, 289 Voice Coil Motor, 205 weighting functions, 29 winged rocket, 289 XRiccati equation, 52 yaw angle, 290 Youla Parameterisation Theorem, 9 ZRiccati equation, 52 ...
View
Full
Document
This note was uploaded on 10/27/2010 for the course ECE 220 taught by Professor Strickland during the Spring '08 term at Arizona.
 Spring '08
 Strickland
 Signal Processing

Click to edit the document details