print.tex, v1.27 2008/01/25 21:53:54 (murray)
Feedback Systems
An Introduction for Scientists and Engineers
Karl Johan ˚Aström
Richard M. Murray
PRINCETON UNIVERSITY PRESS
PRINCETON AND OXFORD
print.tex, v1.27 2008/01/25 21:53:54 (murray)
Copyright © 2008 by Princeton University Press
Published by Princeton University Press
41 William Street, Princeton, New Jersey 08540
In the United Kingdom: Princeton University Press
6 Oxford Street, Woodstock, Oxfordshire OX20 1TW
All Rights Reserved
Library of Congress Cataloging-in-Publication Data
Åström, Karl J. (Karl Johan), 1934-
Feedback systems : an introduction for scientists and engineers / Karl Johan
Åström and Richard M. Murray
p. cm.
Includes bibliographical references and index.
ISBN-13: 978-0-691-13576-2 (alk. paper)
ISBN-10: 0-691-13576-2 (alk. paper)
1. Feedback control systems. I. Murray, Richard M., 1963-. II. Title.
2007061033
TJ216.A78 2008
629.8
3–dc22
British Library Cataloging-in-Publication Data is available
This book has been composed in LATEX
The publisher would like to acknowledge the authors of this volume for providing
the camera-ready copy from which this book was printed.
Printed on acid-free paper. ∞
press.princeton.edu
Printed in the United States of America
10 9 8 7 6 5 4 3 2 1
Frontmatter.tex, v1.80 2008/01/30 07:21:04 (murray)
Contents
Preface
Chapter 1. Introduction
1.1 What Is Feedback?
1.2 What Is Control?
1.3
1.4
1.5
1.6
Feedback Examples
Feedback Properties
Simple Forms of Feedback
Further Reading
Exercises
Chapter 2. System Modeling
2.1 Modeling Concepts
2.2
State Space Models
2.3 Modeling Methodology
2.4 Modeling Examples
2.5
Further Reading
Exercises
Bicycle Dynamics
Chapter 3. Examples
3.1 Cruise Control
3.2
3.3 Operational Amplifier Circuits
3.4 Computing Systems and Networks
3.5
3.6 Drug Administration
Population Dynamics
3.7
Exercises
Atomic Force Microscopy
Chapter 4. Dynamic Behavior
Solving Differential Equations
4.1
4.2 Qualitative Analysis
4.3
4.4
4.5
Stability
Lyapunov Stability Analysis
Parametric and Nonlocal Behavior
ix
1
1
3
5
17
23
25
25
27
27
34
44
51
61
61
65
65
69
71
75
81
84
89
91
95
95
98
102
110
120
Frontmatter.tex, v1.80 2008/01/30 07:21:04 (murray)
vi
4.6
Further Reading
Exercises
Chapter 5. Linear Systems
5.1
5.2
5.3
5.4
5.5
Basic Definitions
The Matrix Exponential
Input/Output Response
Linearization
Further Reading
Exercises
Chapter 6. State Feedback
6.1 Reachability
6.2
6.3
6.4
6.5
Stabilization by State Feedback
State Feedback Design
Integral Action
Further Reading
Exercises
Chapter 7. Output Feedback
State Estimation
7.1 Observability
7.2
7.3 Control Using Estimated State
7.4
7.5
7.6
Kalman Filtering
A General Controller Structure
Further Reading
Exercises
Chapter 8. Transfer Functions
Frequency Domain Modeling
8.1
8.2 Derivation of the Transfer Function
8.3
8.4
8.5
8.6
Block Diagrams and Transfer Functions
The Bode Plot
Laplace Transforms
Further Reading
Exercises
Chapter 9. Frequency Domain Analysis
The Loop Transfer Function
The Nyquist Criterion
Stability Margins
Bode’s Relations and Minimum Phase Systems
9.1
9.2
9.3
9.4
9.5 Generalized Notions of Gain and Phase
9.6
Further Reading
CONTENTS
126
126
131
131
136
145
158
163
164
167
167
175
183
195
197
197
201
201
206
211
215
219
226
226
229
229
231
242
250
259
262
262
267
267
270
278
283
285
290
Frontmatter.tex, v1.80 2008/01/30 07:21:04 (murray)
CONTENTS
Exercises
Chapter 10. PID Control
10.1 Basic Control Functions
10.2 Simple Controllers for Complex Systems
10.3 PID Tuning
10.4 Integrator Windup
10.5 Implementation
10.6 Further Reading
Exercises
Chapter 11. Frequency Domain Design
11.1 Sensitivity Functions
11.2 Feedforward Design
11.3 Performance Specifications
11.4 Feedback Design via Loop Shaping
11.5 Fundamental Limitations
11.6 Design Example
11.7 Further Reading
Exercises
Chapter 12. Robust Performance
12.1 Modeling Uncertainty
12.2 Stability in the Presence of Uncertainty
12.3 Performance in the Presence of Uncertainty
12.4 Robust Pole Placement
12.5 Design for Robust Performance
12.6 Further Reading
Exercises
Bibliography
Index
vii
290
293
293
298
302
306
308
312
313
315
315
319
322
326
331
340
343
344
347
347
352
358
361
369
374
374
377
387
Frontmatter.tex, v1.80 2008/01/30 07:21:04 (murray)
Preface
This book provides an introduction to the basic principles and tools for the design
and analysis of feedback systems. It is intended to serve a diverse audience of
scientists and engineers who are interested in understanding and utilizing feedback
in physical, biological, information and social systems. We have attempted to keep
the mathematical prerequisites to a minimum while being careful not to sacrifice
rigor in the process. We have also attempted to make use of examples from a variety
of disciplines, illustrating the generality of many of the tools while at the same time
showing how they can be applied in specific application domains.
A major goal of this book is to present a concise and insightful view of the
current knowledge in feedback and control systems. The field of control started
by teaching everything that was known at the time and, as new knowledge was
acquired, additional courses were developed to cover new techniques. A conse-
quence of this evolution is that introductory courses have remained the same for
many years, and it is often necessary to take many individual courses in order to
obtain a good perspective on the field. In developing this book, we have attempted
to condense the current knowledge by emphasizing fundamental concepts. We be-
lieve that it is important to understand why feedback is useful, to know the language
and basic mathematics of control and to grasp the key paradigms that have been
developed over the past half century. It is also important to be able to solve simple
feedback problems using back-of-the-envelope techniques, to recognize fundamen-
tal limitations and difficult control problems and to have a feel for available design
methods.
This book was originally developed for use in an experimental course at Caltech
involving students from a wide set of backgrounds. The course was offered to
undergraduates at the junior and senior levels in traditional engineering disciplines,
as well as first- and second-year graduate students in engineering and science. This
latter group included graduate students in biology, computer science and physics.
Over the course of several years, the text has been classroom tested at Caltech and
at Lund University, and the feedback from many students and colleagues has been
incorporated to help improve the readability and accessibility of the material.
Because of its intended audience, this book is organized in a slightly unusual
fashion compared to many other books on feedback and control. In particular, we
introduce a number of concepts in the text that are normally reserved for second-
year courses on control and hence often not available to students who are not
control systems majors. This has been done at the expense of certain traditional
topics, which we felt that the astute student could learn independently and are often
Frontmatter.tex, v1.80 2008/01/30 07:21:04 (murray)
x
PREFACE
explored through the exercises. Examples of topics that we have included are non-
linear dynamics, Lyapunov stability analysis, the matrix exponential, reachability
and observability, and fundamental limits of performance and robustness. Topics
that we have deemphasized include root locus techniques, lead/lag compensation
and detailed rules for generating Bode and Nyquist plots by hand.
Several features of the book are designed to facilitate its dual function as a basic
engineering text and as an introduction for researchers in natural, information and
social sciences. The bulk of the material is intended to be used regardless of the
audience and covers the core principles and tools in the analysis and design of
feedback systems. Advanced sections, marked by the “dangerous bend” symbol
shown here, contain material that requires a slightly more technical background,
of the sort that would be expected of senior undergraduates in engineering. A few
sections are marked by two dangerous bend symbols and are intended for readers
with more specialized backgrounds, identified at the beginning of the section. To
limit the length of the text, several standard results and extensions are given in the
exercises, with appropriate hints toward their solutions.
To further augment the printed material contained here, a companion web site
has been developed and is available from the publisher’s web page:
http://press.princeton.edu/titles/8701.html
The web site contains a database of frequently asked questions, supplemental exam-
ples and exercises, and lecture material for courses based on this text. The material is
organized by chapter and includes a summary of the major points in the text as well
as links to external resources. The web site also contains the source code for many
examples in the book, as well as utilities to implement the techniques described in
the text. Most of the code was originally written using MATLAB M-files but was
also tested with LabView MathScript to ensure compatibility with both packages.
Many files can also be run using other scripting languages such as Octave, SciLab,
SysQuake and Xmath.
The first half of the book focuses almost exclusively on state space control
systems. We begin in Chapter 2 with a description of modeling of physical, biolog-
ical and information systems using ordinary differential equations and difference
equations. Chapter 3 presents a number of examples in some detail, primarily as a
reference for problems that will be used throughout the text. Following this, Chap-
ter 4 looks at the dynamic behavior of models, including definitions of stability
and more complicated nonlinear behavior. We provide advanced sections in this
chapter on Lyapunov stability analysis because we find that it is useful in a broad
array of applications and is frequently a topic that is not introduced until later in
one’s studies.
The remaining three chapters of the first half of the book focus on linear systems,
beginning with a description of input/output behavior in Chapter 5. In Chapter 6,
we formally introduce feedback systems by demonstrating how state space control
laws can be designed. This is followed in Chapter 7 by material on output feed-
back and estimators. Chapters 6 and 7 introduce the key concepts of reachability
Frontmatter.tex, v1.80 2008/01/30 07:21:04 (murray)
PREFACE
xi
and observability, which give tremendous insight into the choice of actuators and
sensors, whether for engineered or natural systems.
The second half of the book presents material that is often considered to be
from the field of “classical control.” This includes the transfer function, introduced
in Chapter 8, which is a fundamental tool for understanding feedback systems.
Using transfer functions, one can begin to analyze the stability of feedback systems
using frequency domain analysis, including the ability to reason about the closed
loop behavior of a system from its open loop characteristics. This is the subject of
Chapter 9, which revolves around the Nyquist stability criterion.
In Chapters 10 and 11, we again look at the design problem, focusing first
on proportional-integral-derivative (PID) controllers and then on the more general
process of loop shaping. PID control is by far the most common design technique
in control systems and a useful tool for any student. The chapter on frequency
domain design introduces many of the ideas of modern control theory, including
the sensitivity function. In Chapter 12, we combine the results from the second half
of the book to analyze some of the fundamental trade-offs between robustness and
performance. This is also a key chapter illustrating the power of the techniques that
have been developed and serving as an introduction for more advanced studies.
The book is designed for use in a 10- to 15-week course in feedback systems
that provides many of the key concepts needed in a variety of disciplines. For a
10-week course, Chapters 1–2, 4–6 and 8–11 can each be covered in a week’s time,
with the omission of some topics from the final chapters. A more leisurely course,
spread out over 14–15 weeks, could cover the entire book, with 2 weeks on modeling
(Chapters 2 and 3)—particularly for students without much background in ordinary
differential equations—and 2 weeks on robust performance (Chapter 12).
The mathematical prerequisites for the book are modest and in keeping with
our goal of providing an introduction that serves a broad audience. We assume
familiarity with the basic tools of linear algebra, including matrices, vectors and
eigenvalues. These are typically covered in a sophomore-level course on the sub-
ject, and the textbooks by Apostol [10], Arnold [13] and Strang [187] can serve as
good references. Similarly, we assume basic knowledge of differential equations,
including the concepts of homogeneous and particular solutions for linear ordinary
differential equations in one variable. Apostol [10] and Boyce and DiPrima [42]
cover this material well. Finally, we also make use of complex numbers and func-
tions and, in some of the advanced sections, more detailed concepts in complex
variables that are typically covered in a junior-level engineering or physics course
in mathematical methods. Apostol [9] or Stewart [186] can be used for the basic
material, with Ahlfors [6], Marsden and Hoffman [146] or Saff and Snider [172]
being good references for the more advanced material. We have chosen not to in-
clude appendices summarizing these various topics since there are a number of
good books available.
One additional choice that we felt was important was the decision not to rely
on a knowledge of Laplace transforms in the book. While their use is by far the
most common approach to teaching feedback systems in engineering, many stu-