See discussions, stats, and author profiles for this publication at: https://www.researchgate.net/publication/257427351 Designing linear control systems with MATLAB: by Katsuhiko OGATA. MATLAB Curriculum Series; Prentice Hall; Englewood Cliffs, NJ, USA; 1994; ISBN: 0-13-293226-1- Book review Article in Control Engineering Practice · February 1996 DOI: 10.1016/S0967-0661(96)90087-8 CITATIONS READS 0 2,380 1 author: Popescu Theodor Institutul Naţional de Cercetare-Dezvoltare în Informatică 81 PUBLICATIONS 297 CITATIONS SEE PROFILE Some of the authors of this publication are also working on these related projects: Innovative platform for personalized monitoring and support in e-Health (MONISAN) View project Experimental Model for Change Detection and Diagnosis in Vibration Processes Using Advanced Measurement and Analysis Techniques Model Based View project All content following this page was uploaded by Popescu Theodor on 21 December 2017. The user has requested enhancement of the downloaded file. B o o k Reviews and extended, since then, to a highly appreciated commercial sottware product. The current MATLAB program is written in C by The MathWorks Inc., and is highly optimized to provide a solution package for addressing problems in a wide range of fields. Typical uses include generalpurpose numerical computations, algorithm prototyping, teaching linear algebra and other topics, and solving special-purpose matrix formulations such as those associated with automatic control, statistics, digital signal processing and other fields. Solving Control Engineering Problems with MATLAB, by Katsuhiko OGATA. MATLAB Curriculum Series; Prentice Hail; Englewood Cliffs, NJ, USA; 1994; 359 pp.; $35-80; ISBN: 0-13-045907-0 Designing Linear Control Systems with MATLAB, by Kats~hiko OGAT& MATLAB Curriculum Series; Prentice Hall; Englewood Cliffs, NJ, USA; 1994; 226 pp.; $33-40; ISBN: 0-13-293226-1 The books covered by this review can be divided into two groups: the first four are essentially intended for engineering students as well as for practising engineers who use MATLAB to solve control engineering problems, while the last book, including selected studies from expert users of CACSD (computeraided control system design) in a variety of areas, is the culmination of research experience over many years in the use of MATLAB toolboxes in robotics and automotive and aerospace control-system design. MATLAB Tools for Control System Analysis and Design, by Duane C. HANSELMAN and Benjamin C. KUO. Second Edition; MATLAB Curriculum Series; Prentice Hall; Englewood Cliffs, NJ, USA; 1995; 207 pp.; $36-80; ISBN: 0-13-202574-4 Using MATLAB to Analyze and Design Control Systems, by Naomi Enrich LEONARD and William S. LEVINE. Second Edition; Electrical/Computer Engineering/Control Systems Series; Benjamin/Cummings; Redwood City, CA, USA; 1995; 212 pp.; $20-39; ISBN: 0-8053-2193-4 The first Ogata book, Solving Control Engineering Problems with MATLAB, is a guide to using MATLAB in solving control engineering problems. The basic problems are presented in linear, timeinvariant control systems, which are normally part of any introductory control course. The many MATLAB programs are accompanied by user-friendly comments so that readers can follow each step easily. Many important and useful features are not discussed in this book, however; for these, the reader is referred to The Student Edition of MATLAB (Prentice Hall, 1992) and MATLAB User's Guide (MathWorks Inc., 1990). MATLAB Toolboxes and Applications for Control, by A.J. CHIPPERFIELD and P.J. FLEMING; lEE Control Engineering Series, No. 48; lEE Publications; Stevenage, UK; 1993; 237 pp.; £39-00; ISBN: 0-86341-290-4 Reviewed by: Theodor D. POPESCU Research Institute for Informatics, Bucharest, Romania The book is dedicated primarily to a detailed discussion of how the result of control-systems analysis can be represented in graphical terms. Chapter 1 contains introductory material, while Chapter 2 gives background information concerning matrix operations with MATLAB. Chapters 3 and 4 present the transient-response analysis of control systems with MATLAB. Chapter 3 is concerned with continuoustime systems and Chapter 4 with discrete-time systems. Chapter 5 deals with the root locus plots. The problems that may arise in plotting root loci for continuous- and discrete-time control systems with MATLAB are dlso discussed. Frequency-response analyses of closed-loop systems are presented in Chapter 6, for both continuous- and discrete-time control systems. Simple design problems based on the Bode diagram approach are treated in this last chapter. Rapidly becoming a de-facto standard for the control engineer, MATLAB is a high-performance interactive software tool for engineering, numerical analysis and scientific computations. The design and implementation of a high-level command language and interpreter lead to an environment that is both open in structure and extensible by the individual user. These properties have led to its wide-scale adoption by the control engineering community. Originally written in FORTRAN as an interface to the matrix routines of the Linpack and Eispack packages, by Cleve Moler in 1980, the first MATLAB program allowed users to define new functions and add them to the environment, access the file system and call other programs from within MATLAB, or MATLAB from within other programs. The MATLAB program has been refined 279 280 Book Reviews The second book by Ogata was written as a companion volume to the author's first booL to illustrate the power of MATLAB as a tool for synthesizing control systems, emphasizing pole placement, and optimal systems design. This book is intended to aid engineering students (at the senior or graduate level) and practising engineers in their study of the use of MATLAB in designing control systems. The book assumes that the reader is familiar with the material presented in the companion book or its equivalent. Chapter 1 presents the introductory material, an abbreviated_ version of the first two chapters of the companion book, while Chapters 2 and 3 discuss pole placement and observer design prob= lems solved with MATLAB. In particular, Chapter 2 deals with continuous-time systems, whereas Chapter 3 treats discrete-time systems. Chapter 4 is concerned with the design of optimal control systems; the quadratic optimal control problems, for both continuous- and discrete-time systems, are solved using MATLAB. Also, minimum-energy control of discrete-time systems is discussed in this last chapter of the book. Many examples in this book are reproduced from two earlier books by the author: Modem Control Engineering, (Second Edition, Prentice Hall, 1990), and Discrete-Time Control Systems (Prentice Hall, 1987). Both texts offer a clear, comprehensive approach to MATLAB so that future engineers can take full advantage of its problem-solving and design capabilities. Those readers who are not yet familiar with MATLAB will find these books very useful, in that they present details of how to write MATLAB programs to obtain solutions to typical control engineering problems. The routines that appear in these books work with the Student Edition of MATLAB and MATLAB versions 3.5 and 4.0, and the plots are produced from PostScript files generated with version 3.5 of MATLAB. The two books well illustrate, by a series of examples, the basic procedures that should be applied in order to solve a control-system analysis and design problem with the available soRware tools derived from the MATLAB package. Pedagogically, these books have a lot of merit. The material is well selected and well organized, with clear and logically correct arguments. It is worth mentioning the absence of printing errors and the clarity of the illustrations, which make the books easy to read. The second edition of Hanselman and Kuo's book, MATLAB Tools for Control System Analysis and Design, offers many changes from the first edition. Perhaps the most significant change is the compatibility with MATLAB version 4. The authors present a book/software package (available in both Windows and Macintosh versions) that provides readers with ready-to-use M-files in the CSAD Toolbox for the analysis and design of linear control systems. The book is organized in three parts, each containing one or more chapters. Part 1, Getting Started, introduces the reader to the jump start in running different MATLAB versions under MS-DOS and on the Macintosh, and to the main software changes of this second edition of the book. It also provides some advice for instructor and student, and some elements on the hardware and soRware requirements. Part 2, CSAD Toolbox Reference, documents the CSAD Toolbox in detail. Finally, Part 3, Theory and Tools, introduces important control-system concepts: mathematical foundations, state-space analysis, time-domain analysis, frequency-domain analysis and design of control systems, and, more importantly, illustrates problem solving using CSAD Toolbox functions. The software provided is user-friendly and takes care of the programming so that readers can spend more time on solving control-system problems. The disk enclosed with this text contains two CSAD Toolboxes, one compatible with MATLAB version 3.5 and one compatible with version 4. The software changes in this edition include: improvements to and generalization of some functions, availability of some automated design procedures, addition of new functions, improvement of plotting functions, and a multitude of more subtle changes; little effort is required from the user to become proficient with this second edition. As the authors mention, the rationale behind this new book is to provide a consistent, convenient, and productive approach, focused specifically on undergraduate courses in control-system analysis and design. The book offers a set of tools that minimize the amount of MATLAB knowledge required, and is of great assistance to both instructors and students. The key to providing this ease of use is the inclusion of many menu-driven, user-interactive tools (i.e., function M-files). Such menu options include finding the rise time, settling time, and percentage overshoot from a step response plot, finding asymptote angles, angles of departure and arrival, and marginal stability points on a root locus plot, and finding the peak resonance, bandwidth, and stability margins from a frequency response plot. In addition, specific menu-driven tools are provided for the design of PID, lead/lag, and state variable controllers. The book is well-written and concise, the concepts are introduced gradually and are easy to comprehend, and the examples provided help the reader in understanding the text. It also contains many exercises that can be solved using the CASD toolbox, thereby eliminating the need for a solution manual. Book Reviews Using MATLAB to Analyze and Design Control Systems has as its main objective, helping the users in the practice of control engineering, by teaching them bow to use MATLAB and SIMULINK, and how to learn from them. The reason for writing the second edition of this book was to improve on the earlier work by including SIMULINK, and by illustrating the new features of MATLAB 4.2. The intention of the authors was to present MATLAB by examples, and as far as possible to show how plots can be customized to best display important system and control information. The book includes eight chapters. Chapters 1 and 2 are devoted to the fundamentals and basic plotting capabilities of MATLAB. The rest of the book deals primarily with the use of MATLAB and its Control System Toolbox for the analysis and design of linear-invariant SISO control systems. Chapter 3 shows bow to use MATLAB m order to set up transfer-function and state-space descriptions of whatever system is of interest. Chapter 4 describes the MATLAB tools for studying the relation between the poles and zeros of a linear timc-invariant system and its time-domain responses; because control system specifications are often given in terms of the response to a unit step, the emphasis is on the step response. Chapter 5 starts by describing and illustrating the creation of root locus plots, the main emphasis being placed on bow to use these plots to learn about and design control systems. New, important commands arc also introduced in this section. Chapter 6 is dedicated to frequency-domain plots, for which the design techniques are much easier to apply to systems that are of very high order than either root-locus or state-space techniques. MATLAB provides many commands for state-space computations that not only allow users to construct controllers in state-spaoe form, but also help them to select control parameters so that their systems meet the performance requirements. Chapter 7 shows bow to use these commands for investigating and designing control systems in the state space. Chapter 8 of the book is focused on discrete-time systems, referred to as "sampled-data systems". This chapter is limited to the conversion of continuous-time systems to equivalent discrete-time systems, to the effects of sampling on system behaviour, and to the discretetime versions of root locus, Nyquist, Nichols, and Bode plots. The book represents, in essence, a collection of interesting examples in the practice of analysis and design of control systems, with a comrncntary. The exercises that end each chapter provide the reader with a minimum test for an understanding of the text. The material is well-organized, clear, concise and readable. This textbook addresses students in 281 control engineering in particular. It represents valuable material from the pedagogical point of view, similar to the three previous books reviewed. MATLAB Toolboxes and Applications for Control contains the material presented at three sessions of the IEE Conference on Control '91, organized in Edinburgh. The main objective of the book, as the editors mention, is to share experiences in developing tools and applications involving MATLAB, thereby stimulating readers to use these techniques, or to develop their own tools for their own purposes. The book is composed of three parts: Introduction, Toolboxes, and Appfications. For completeness, some introductory MATLAB material is included in Chapter 1. Chapter 2, ending the Introduction, considers a topical practical application concerned with automotive suspension, in which a variety of features of MATLAB are exercised to great effect. MATLAB, and in particular the Control Systems Toolbox, is used to motivate the desirability of advanced suspension systems, by comparing the responses of linear dynamic representations of passive and active design. This is done in both the time and the frequency domains. Built-in control analysis functions (such as root locus) are used to determine the necessary feedback structure for the closed loop. Chapter 3, the first in Part II, Toolboxes, discusses the development and integration of SIMULINK, a graphically oriented nonlinear simulation package, into MATLAB. The open-system philosophy of MATLAB is carried over into SIMULINK, where blocks and analysis tools can be added to the package, providing considerable versatility and enabling users to create application-specific functions, and interface efficiently with other MATLAB routines. Chapter 4 introduces the use of optimization as a control-system design tool, addresses specific uses for control engineers, and includes a worked example. This toolbox extends the usual complement of optimization routines by incorporating techniques such as goal attainment, used in commonly occurring optimization problems with multiple competing objectives rather than the conventional, but unrealistic, single objective. It is also noted how, through the open structure of MATLAB, a paralld-processing platform may be accessed to alleviate the computational burden associated with multi-objective optimization problems. Chapter 5 is dedicated to multivariate frequency domain methods addressing, in particular, the work of the "British School". Nyquist array and characteristic locus methods are accommodated, together with the important structured singular value 282 Book Reviews design criteria arising from the US research. The topics discussed in the three preceding chapters are addressed in Chapter 6, through alternative approaches and extensions. A simple language, SYM, for entering transfer function details in a natural way, is provided by the System Toolbox. This toolbox also supports the means of version comparison when developing certain designs, and l~s some matrix editing and multivariable frequency response tools with the ability to use symbolic representations. A tutorial example demonstrates many of these features. The chapter also describes the L-2 Toolbox, which performs specific optimization operations on control-system sensitivity and error measures. In Chapter 7 it is demonstrated how MATLAB can be incorporated into an expert-system environment, essentially providing the numerical engine to support this advanced design approach. Chapter 8 is concerned with PID controllers, and provides a set of tools for obtaining controller parameters by such means as the Ziegler-Nichols and AstrOm-Hagglund methods. In addition, this chapter includes an investigation into the optimization of integral performance criteria, providing new results. Similarly employing a menu-driven approach, in Chapter 9 programs are described for teaching various aspects of nonlinear control, and for the study of simple nonlinear feedback systems. MATLAB's mex-file facility is used to link with FORTRAN libraries and to simulation sottware. Stability analysis is accommodated by tools for the use of the describing function method, Popov and Circle criteria; Tsypldn's method is employed for the study of limit cycles and, thence, stability. The aim of Chapter 10, the first of Part III of the book, on Applications, is to illustrate how data recorded from a complex nonlinear system can be processed using the MATLAB package, employing state-space filtering methods. The example presented is based upon an aircraft engine, and shows how optimal and Kalman filtering are used to remove sensor noise, high-frequency structural responses of the airframe and aliasing effects arising from the sampled data. In Chapter 11 the eigenstructure assignment approach to an aerospace application is described. A number of algorithms are discussed, that are realized in MATLAB and applied to the control of a linear model of the lateral motion of an MS760 Paris fighter-trainer aircraft. Robot control constitutes the subject of Chapter 12, where MATLAB provides an excellent environment for the construction of tools to apply a frequencydomain-based approach to problems where performance tolerances are tight and plant dynamics have significant degrees of uncertainty. Chapter 13 consists of two advanced control applications of H °° View publication stats to practical systems: a novel robot, the Tetrabot, and a helicopter. These applications combine the use of the Control System Toolbox, the Robust Control Toolbox and SIMULINK. This book, in comparison with the first four books, is a more condensed one, with more information. The contributions included in the book come from leading researchers in academia and industry, and can be of interest to both prospective and existing users of MATLAB, providing in-depth descriptions and examples of its use. It will appeal to students, teachers and practising control engineers alike. Although the book is the result of thirteen contributions, the material is well organized and presented with clarity, the reader's understanding being helped with many examples, presented in sufficient detail. The conclusions of the chapters are convincing, original and significant for the application under study. Also, the references are up-to-date, and offer the reader information on the sources necessary for a better understanding the subjects being discussed. It can be concluded that MATLAB is now a widely accepted tool for the computer-aided analysis and design of control systems, with an open structure, encouraging users to devise new toolboxes and applications, customized, to varying degrees, for their particular problem domains. In this reviewer's opinion, the books represent a valuable addition to the existing books dedicated to MATLAB-based software tools, and to the control applications that can be developed by the use of these software tools. Engineering Problem Solving with MATLAB, by D.M. ETTER. MATLAB Curriculum Series; Prentice Hall; Englewood Cliffs, NJ, USA; 1993; xxiv + 434 pp., + 3.5-inch diskette; $39; ISBN: 0-13-280470-0 Numerical Analysis and Graphics Visualization with MATLAB, by Shoichiro NAKAMURA; Prentice Hall; Upper Saddle River, NJ, USA; 1996; xii + 477 pp., + diskette available from MathWorks; $55; ISBN: 0-13-051518-3 Computational Aids in Control Systems Using MATLAB, by Hadi SAADAT. McGraw-Hill Series in Electrical and Computer Engineering---Control Theory; McGraw-Hill; New York, USA; 1993; 141 pp, + 5.25-inch diskette; $26-82; ISBN: 0-07-911358-3 Reviewed by: Janusz ZALEWSKI Embry-Riddle Aeronautical University, Daytona Beach, FL, USA Some people think of MATLAB primarily as a tool for control engineering. This may seem true,