You are on page 1of 181

Discrete-Time Control System Design

with Applications
C. A. Rabbath • N. Léchevin

Discrete-Time Control
System Design with
Applications

2123
C. A. Rabbath N. Léchevin
Québec City, Québec Québec City, Québec
Canada Canada

ISBN 978-1-4614-9289-4 ISBN 978-1-4614-9290-0 (eBook)


DOI 10.1007/978-1-4614-9290-0
Springer New York Heidelberg Dordrecht London

Library of Congress Control Number: 2013950802

© Springer Science+Business Media New York 2014


This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the
material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation,
broadcasting, reproduction on microfilms or in any other physical way, and transmission or information
storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology
now known or hereafter developed. Exempted from this legal reservation are brief excerpts in connection
with reviews or scholarly analysis or material supplied specifically for the purpose of being entered and
executed on a computer system, for exclusive use by the purchaser of the work. Duplication of this
publication or parts thereof is permitted only under the provisions of the Copyright Law of the Publisher’s
location, in its current version, and permission for use must always be obtained from Springer. Permissions
for use may be obtained through RightsLink at the Copyright Clearance Center. Violations are liable to
prosecution under the respective Copyright Law.
The use of general descriptive names, registered names, trademarks, service marks, etc. in this publication
does not imply, even in the absence of a specific statement, that such names are exempt from the relevant
protective laws and regulations and therefore free for general use.
While the advice and information in this book are believed to be true and accurate at the date of publication,
neither the authors nor the editors nor the publisher can accept any legal responsibility for any errors or
omissions that may be made. The publisher makes no warranty, express or implied, with respect to the
material contained herein.

Printed on acid-free paper

Springer is part of Springer Science+Business Media (www.springer.com)


Preface

In practice, most control systems are implemented on digital hardware. Typically,


controllers designed in the continuous-time domain are individually converted to
digital form at the end of the design phase using standard discretization techniques.
This process, known as local digital redesign, is perfectly legitimate when the de-
signer can implement the controllers with the sampling and update rates of his or her
choice. Recall this simple rule of thumb: closed-loop stability is typically preserved
with a discrete-time compensator obtained with a classical local digital redesign
when the sampling rate is relatively fast. Furthermore, high-order discrete-time con-
trollers provide satisfactory performance in case the computing capabilities available
are sufficient. Yet, it may not always be possible to implement high-order controllers
at fast update rates. Then, what design methods can be used to ensure closed-loop
stability and satisfactory performance despite relatively slow update/sampling rates,
and possibly a limited number of bits for control law operations? This topic has been
studied by the authors for several years. This book offers a bridge between discrete-
time control theory and practice by proposing techniques suitable for a real-time
implementation at a relatively wide range of rates, and possibly a limited number
of bits.
This book is aimed at academics, graduate students, industry researchers, and
practitioners. The book provides a review of basic principles, followed by a presen-
tation of the design techniques and the applications. The techniques are presented
by way of sequential steps and algorithms. Although the book features two basic
application examples, the techniques of discrete-time control system design apply
to other dynamic systems.
We would like to thank a long-time collaborator of ours, Professor N. Hori
of the University of Tsukuba, Japan, who originally developed the concept
of plant input mapping with Dr. Markazi, and was Ph.D. thesis director of
the first author in the second half of the 90s. The first author would like to
thank the Natural Sciences and Engineering Research Council of Canada for
its support, and the faculty and staff at McGill and Concordia. The first au-
thor would also like to express his gratitude to his wife and two kids for their

v
vi Preface

constant encouragements and understanding throughout the preparation of this


book. The second author would like to thank his family and friends for their
support.

Québec City, Canada C. A. Rabbath


N. Léchevin
Contents

1 Control Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1 Fundamental Assumptions and Scope . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Linear Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.3 Digital Control Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.4 Application Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.4.1 Wheeled Robot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.4.2 Generic Airborne Platform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

2 Review of Signals and Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13


2.1 Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2 Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.3 Operators in the Discrete-time Domain . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.3.1 Shift Operator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.3.2 Delta Operator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.4 Transforms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.4.1 Z Transform and Transfer Function in z . . . . . . . . . . . . . . . . . 18
2.4.2 Z Transform and q Operator . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.4.3  Transform and Transfer Function in γ . . . . . . . . . . . . . . . . . 20
2.4.4  Transform and Delta Operator . . . . . . . . . . . . . . . . . . . . . . . . 20
2.4.5 Transfer Functions in Complex Variables z and γ . . . . . . . . . . 21
2.5 Instantaneous Sampler and Holds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.5.1 Instantaneous sampler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.5.2 Zero-order Hold . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.5.3 Generalized Holds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.6 Lifting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.6.1 Continuous-time Lifting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.6.2 Discrete-time Lifting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.7 Dual-rate Generalized Holds and Samplers . . . . . . . . . . . . . . . . . . . . . 26
2.7.1 Dual-rate Generalized Holds . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.7.2 Dual-rate Generalized Samplers . . . . . . . . . . . . . . . . . . . . . . . . 28

3 Discretization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.1 Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.2 Numerical Integration and Differentiation . . . . . . . . . . . . . . . . . . . . . . 32
vii
viii Contents

3.2.1 Numerical Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32


3.2.2 Approximation of the Derivative . . . . . . . . . . . . . . . . . . . . . . . . 38
3.2.3 Stability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.3 Hold Equivalence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.4 Matching Poles and Zeros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
3.5 Hold Equivalence and Multivariable Systems . . . . . . . . . . . . . . . . . . . 45
3.6 Hold Equivalence and Generalized Holds . . . . . . . . . . . . . . . . . . . . . . . 46
3.7 Discretization of Nonlinear Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
3.7.1 Incremental Model Approximation . . . . . . . . . . . . . . . . . . . . . . 48
3.7.2 Numerical Approximation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
3.7.3 Discretization of Affine-in-the-input Systems . . . . . . . . . . . . . 49

4 Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4.1 Models for Discrete-time Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4.1.1 Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4.1.2 Discretization Methods and Models . . . . . . . . . . . . . . . . . . . . . 53
4.1.3 Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
4.2 Single-rate Discrete-time Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
4.2.1 Convergence in Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
4.2.2 Convergence in Transfer Function . . . . . . . . . . . . . . . . . . . . . . 56
4.2.3 Realization and Transfer Function . . . . . . . . . . . . . . . . . . . . . . 56
4.2.4 Generalized Holds and Discrete-time Models . . . . . . . . . . . . . 58
4.3 Single-rate Sampled-data Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
4.3.1 Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
4.3.2 Conditions for Uniform-in-time Convergence . . . . . . . . . . . . . 62
4.4 Dual-rate Sampled-data Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
4.4.1 Systems and Equivalences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
4.4.2 Conditions for Uniform-in-time Convergence . . . . . . . . . . . . . 71

5 Global Digital Redesign . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79


5.1 Approaches to Control System Design . . . . . . . . . . . . . . . . . . . . . . . . . 79
5.2 Discretization and Stability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
5.3 Optimal Closed-loop Digital Redesign . . . . . . . . . . . . . . . . . . . . . . . . . 84
5.3.1 Fast Discretization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
5.3.2 Dual-rate Generalized Plant Model . . . . . . . . . . . . . . . . . . . . . . 85
5.3.3 Solution to Discrete-time H2 Optimal Control Problem . . . . . 86
5.3.4 Order Reduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
5.4 Plant Input Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
5.4.1 Basic Principle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
5.4.2 Continuous-time Closed-loop Transfer Function . . . . . . . . . . 92
5.4.3 Closed-loop Discretization . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
5.4.4 Open-loop Discretization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
5.4.5 Controllers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
5.4.6 Solution to Diophantine Equation . . . . . . . . . . . . . . . . . . . . . . . 95
5.5 Generalized Plant Input Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
5.5.1 Constrained Number of Controllers . . . . . . . . . . . . . . . . . . . . . 97
5.5.2 Constrained Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
Contents ix

5.6 PIM for Dual-rate, Two-loop Feedback Control . . . . . . . . . . . . . . . . . . 101

6 Flatness-based Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105


6.1 FACS Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
6.1.1 Nonlinear Differentially Flat System . . . . . . . . . . . . . . . . . . . . 105
6.1.2 Objectives of FACS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
6.1.3 Continuous-time Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
6.1.4 Discrete-time Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
6.1.5 State Estimator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
6.1.6 Compliance with Objective 2 . . . . . . . . . . . . . . . . . . . . . . . . . . 110
6.1.7 Intersample Behavior . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
6.1.8 Summary of FACS Computations . . . . . . . . . . . . . . . . . . . . . . . 114
6.2 Wheeled Mobile Robot Subsystems . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
6.3 Continuous-time Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
6.3.1 Plant Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
6.3.2 Feedback Linearization and Linear Control . . . . . . . . . . . . . . . 122
6.3.3 Wheel Velocity Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
6.4 Numerical Simulations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
6.4.1 Continuous-time Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
6.4.2 Local Digital Redesign of FLLC . . . . . . . . . . . . . . . . . . . . . . . . 126
6.4.3 FACS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
6.4.4 Reference Trajectory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
6.4.5 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
6.4.6 Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129

7 Digital Redesign of Autopilots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135


7.1 Guidance and Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
7.1.1 Acceleration Autopilot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
7.1.2 Gain Scheduling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
7.1.3 Proportional Navigation Guidance . . . . . . . . . . . . . . . . . . . . . . 137
7.2 H-infinity Control and Plant Input Mapping . . . . . . . . . . . . . . . . . . . . . 137
7.2.1 Assumptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
7.2.2 Continuous-time H-infinity Control . . . . . . . . . . . . . . . . . . . . . 138
7.2.3 Conversion to a Dual-rate Feedback System with PIM . . . . . 139
7.2.4 Plant Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
7.2.5 Controllers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
7.2.6 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
7.2.7 Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
7.3 Optimal Closed-loop Digital Redesign . . . . . . . . . . . . . . . . . . . . . . . . . 157
7.3.1 Design Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
7.3.2 Plant Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
7.3.3 Controllers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
7.3.4 Simulations and Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160

References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165

Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
List of Figures

Fig. 1.1 Local digital redesign ................................................... 2


Fig. 1.2 Global digital redesign.................................................. 2
Fig. 1.3 Generic block diagram of a digital control system .................. 4
Fig. 1.4 Computing tasks and sequencing for the discrete-time control
law. a The computational lag τ is small with respect to the
sampling period. The control signal can be released once its
computation is completed provided the software and hardware
allow this type of implementation. b When the computational
time is important, the control signal released at (k + 1)T is
computed from the control input received at kT .................... 5
Fig. 1.5 a Schematics of WMR. b Block diagram of WMR feedback
control system ........................................................... 8
Fig. 1.6 Simplified kinematics................................................... 9
Fig. 1.7 Basic principle of PNG ................................................. 10
Fig. 1.8 a Digital guidance and control loops. b Classical PID-type
continuous-time autopilot .............................................. 10
Fig. 2.1 Piecewise-continuous signal ........................................... 14
Fig. 2.2 Discrete-time signal as a sequence .................................... 14
Fig. 2.3 Four types of signals .................................................... 15
Fig. 2.4 Basic control system with continuous-time and discrete-time
signals and systems ..................................................... 16
Fig. 2.5 Instantaneous sampling................................................. 22
Fig. 2.6 Response of ZOH to unit discrete-time pulse ........................ 22
Fig. 2.7 Response of generalized hold to unit discrete-time pulse input.... 23
Fig. 2.8 Continuous-time lifting................................................. 24
Fig. 2.9 Discrete-time lifting of a signal........................................ 25

xi
xii List of Figures

Fig. 2.10 Discrete-time lifting of fast-rate systems ............................. 25


Fig. 2.11 Response of DT-ZOH to a unit discrete-time pulse ................. 27
Fig. 2.12 Response of dual-rate slewer hold to a unit discrete-time pulse ... 27
Fig. 3.1 Tustin’s method.......................................................... 33
Fig. 3.2 Structural interpretation of numerical approximation methods .... 34
Fig. 3.3 Tustin’s method. a Structural interpretation b Response of
triangular hold to a unit discrete-time pulse.......................... 36
Fig. 3.4 Example of a triangular hold. a Input signal b Response of the
hold for each input sample c Total response of hold as a sum of
contributions ............................................................. 36
Fig. 3.5 Forward difference method ............................................ 38
Fig. 3.6 Modified zero order hold ............................................... 39
Fig. 3.7 Internal stability regions for different numerical approximations 40
Fig. 3.8 a Hold equivalence b Unit step input example ...................... 41
Fig. 3.9 First-order hold .......................................................... 42
Fig. 3.10 Slewer hold .............................................................. 42
Fig. 3.11 Hold equivalence structure for a multi-input, multi-output system 45
Fig. 4.1 Discrete-time plant model.............................................. 52
Fig. 4.2 Example of discrete-time controller models and time trajectories 52
Fig. 4.3 Closed-loop system models ............................................ 53
Fig. 4.4 Continuous-time and discrete-time signals........................... 55
Fig. 4.5 a Continuous-time system. b Sampled-data control system.
c Approximation to the sampled-data feedback loop................ 63
Fig. 4.6 Schematics of two types of dual-rate feedback systems ............ 69
Fig. 4.7 Dual-rate sampled-data control systems .............................. 70
Fig. 4.8 Block diagrams of a Continuous-time, b FPOS, and c FCIU
control systems .......................................................... 72
Fig. 5.1 Stability regions ......................................................... 80
Fig. 5.2 Basic feedback control systems........................................ 82
Fig. 5.3 Feedback systems. a Original continuous-time control system
b Its fast discretization.................................................. 85
Fig. 5.4 Dual-rate generalized plant model .................................... 86
Fig. 5.5 Slow-rate closed-loop system.......................................... 87
Fig. 5.6 Feedback control systems .............................................. 87
Fig. 5.7 Control system after order reduction.................................. 90
List of Figures xiii

Fig. 5.8 Plant input mapping concept........................................... 91


Fig. 5.9 Closed-loop transfer functions. a Continuous-time
b Discrete-time control systems ....................................... 93
Fig. 5.10 Two-loop continuous-time linear, time-invariant feedback control
system .................................................................... 102
Fig. 5.11 Dual-rate, two-loop feedback control system ........................ 103
Fig. 5.12 Inner-loop system ....................................................... 104
Fig. 6.1 Block diagram of flatness-based averaging control system ........ 106
Fig. 6.2 Schematics of wheeled mobile robot.................................. 119
Fig. 6.3 Main subsystems in feedback loop .................................... 120
Fig. 6.4 Common indoor robot operation and off-platform tracking........ 121
Fig. 6.5 Simplified feedback loop ............................................... 122
Fig. 6.6 Continuous-time controllers ........................................... 123
Fig. 6.7 Double integrator and linear control law ............................. 124
Fig. 6.8 Discrete-time FLLC in closed-loop with WMR model ............. 127
Fig. 6.9 Planar trajectories ....................................................... 129
Fig. 6.10 Trajectories with respect to time....................................... 130
Fig. 6.11 Velocity control inputs .................................................. 131
Fig. 6.12 Actual velocity of WMR ............................................... 131
Fig. 6.13 WMR trajectories obtained with the use of FOH and SH at the
control input channel.................................................... 132
Fig. 6.14 WMR trajectories obtained with high-gain control.................. 132
Fig. 6.15 WMR trajectories for different values of n........................... 133
Fig. 6.16 WMR trajectories for a dual-rate implementation of DT-FLLC ... 133
Fig. 6.17 Trajectories of WMR subject to disturbances
and measurement noise ................................................. 134
Fig. 7.1 Generic schematics of guidance and control loops .................. 136
Fig. 7.2 Autopilot with acceleration and rate feedback ....................... 136
Fig. 7.3 a Continuous-time model b Formulation as a standard H-infinity
control problem.......................................................... 138
Fig. 7.4 Simplified block diagram of continuous-time linearized autopilot 139
Fig. 7.5 Block diagram of simplified autopilot ................................ 140
Fig. 7.6 Block diagram of dual-rate autopilot.................................. 141
Fig. 7.7 Alternative structure..................................................... 141
xiv List of Figures

Fig. 7.8 Direct form II structure for generic second-order transfer


function in γ ............................................................. 143
Fig. 7.9 Accelerations with local digital redesign of outer-loop controller
with Tustin’s method.................................................... 148
Fig. 7.10 Accelerations with local digital redesign of outer-loop controller
with ZOH equivalence .................................................. 148
Fig. 7.11 Accelerations with local digital redesign of outer-loop controller
with MPZ method ....................................................... 149
Fig. 7.12 Accelerations with HPIM .............................................. 149
Fig. 7.13 Control inputs for h = 0.001 and h = 0.01 .......................... 150
Fig. 7.14 Control inputs for h = 0.05 and h = 0.075 .......................... 150
Fig. 7.15 Pursuer body rate with local digital redesign of outer-loop
controller with Tustin’s method........................................ 151
Fig. 7.16 Pursuer body rates with local digital redesign of outer-loop
controller with ZOH equivalence...................................... 151
Fig. 7.17 Pursuer body rates with local digital redesign of outer-loop
controller with MPZ method........................................... 152
Fig. 7.18 Pursuer body rates with HPIM......................................... 152
Fig. 7.19 Step responses obtained with a quantized acceleration error
signal of 8 bits ........................................................... 153
Fig. 7.20 Step responses obtained with a quantized acceleration error
signal of 16 bits.......................................................... 153
Fig. 7.21 Accelerations obtained with the local digital redesign of the
full-order and the reduced-order outer-loop controllers ............ 154
Fig. 7.22 Disturbance responses with local digital redesign methods ........ 154
Fig. 7.23 Disturbance responses with HPIM .................................... 155
Fig. 7.24 Location of poles and zeros of outer-loop controllers obtained
with HPIM with respect to update period over range [− 1010, 2] 155
Fig. 7.25 Poles and zeros of outer-loop controllers obtained with HPIM
over range [− 11, 2]. .................................................... 156
Fig. 7.26 Fast discrete-time control system...................................... 157
Fig. 7.27 Dual-rate generalized plant model .................................... 158
Fig. 7.28 Three-loop autopilot .................................................... 159
Fig. 7.29 Restructured autopilot .................................................. 159
Fig. 7.30 Block digram of discrete-time system ................................ 160
Fig. 7.31 Accelerations obtained with discrete-time implementations
at h = 0.048 s ........................................................... 161
List of Figures xv

Fig. 7.32 Accelerations for discrete-time implementations at h = 0.008 s 161


Fig. 7.33 Pitch rates for discrete-time implementations at h = 0.048 s ...... 162
Fig. 7.34 Pitch rates for implementations at h = 0.008 s ...................... 162
Fig. 7.35 Actuator outputs for discrete-time implementations
at h = 0.048 s ........................................................... 163
Fig. 7.36 Actuator outputs obtained with implementations at h = 0.008 s 163
List of Tables

Table 3.1 Various hold expressions ............................................. 43


Table 6.1 Parameter values for continuous-time systems .................... 126
Table 6.2 Main parameter values for FACS.................................... 127
Table 6.3 Processing times....................................................... 131
Table 7.1 Discrete-time controller transfer functions in z obtained with
Tustin’s method ....................................................... 147
Table 7.2 Discrete-time controller transfer functions in z obtained with the
ZOH equivalence method ............................................ 147
Table 7.3 Discrete-time controller transfer functions in z obtained with the
matched pole-zero method ........................................... 147
Table 7.4 Outer-loop HPIM blocks for h = 0.0003 and T = 0.0001 s..... 147
Table 7.5 Outer-loop HPIM blocks for h = 0.015 and T = 0.0001 s ...... 147
Table 7.6 Outer-loop HPIM blocks for h = 0.075 and T = 0.0001 s ...... 147
Table 7.7 Outer-loop controllers obtained with local digital
redesign methods...................................................... 163

xvii
Chapter 1
Control Systems

1.1 Fundamental Assumptions and Scope

Today’s airborne, ground, and underwater vehicles, to name a few, rely on onboard
digital processing to efficiently move the control effectors, and to exploit available
sensor measurements and other information. Control systems ensure proper posi-
tioning and attitude of the moving body under the action of guidance commands.
In practice, control systems are implemented on digital hardware. This makes sense
for several reasons: compactness and light weight of the hardware, flexibility of the
software, and an enabler of a certain form of decision making, to name a few. Despite
such facts, most classical and novel control systems are designed as evolving in the
continuous-time domain with little attention given to the analysis of the effects of a
digital implementation on overall performance.
In general, control systems are converted to discrete-time, and then to digital form
at the end of the design phase. Such a process, known as digital redesign, is favored
in practice [16] since it takes advantage of a vast body of knowledge in continuous-
time control synthesis methods, and preserves the intuitive physical interpretation
that engineers are most comfortable with. The typical steps of a so-called local digital
redesign are given in Fig. 1.1. Local digital redesign is based on the following princi-
ple: convert each continuous-time controller to digital form. Discretization methods
such as hold invariance, matching poles and zeros, and numerical approximation
to differentiation and integration [4] may be used in the conversion. A closed-loop
sampled-data system obtained from the local digital redesign of a known continuous-
time control system is generally sensitive to sampling rate selection. This issue of
sensitivity to sampling rate may however be circumvented, to some extent, by taking
into account the feedback nature of the system in the conversion to the digital form.
Such a conversion process is referred to as a global digital redesign [1], [43], [69],
as this process considers the closed-loop dynamics as a whole.
The concept of global digital redesign is illustrated in Fig. 1.2. Discretization is the
key step. By discretization, we mean a conversion from the continuous-time domain
to the discrete-time domain. With global digital redesign, a closed-loop system is
discretized. This is different from a local digital redesign where a local system, i.e.,
a controller, is discretized. Yet, when applying global digital redesign approaches to

C. A. Rabbath, N. Léchevin, Discrete-Time Control System Design with Applications, 1


DOI 10.1007/978-1-4614-9290-0_1, © Springer Science+Business Media New York 2014
2 1 Control Systems

Fig. 1.1 Local digital


Continuous-time plant model
redesign

Control synthesis

Continuous-time controllers

Local discretization of each controller

Discrete-time controllers

Implementation on digital electronics

Digital controllers

Fig. 1.2 Global digital


redesign Continuous-time plant model

Control synthesis

Continuous-time controllers

Closed-loop discretization

Discrete-time controllers

Implementation on
digital electronics

Digital controllers

practical systems, designers must account for a potential complexity increase in going
from a continuous-time controller to a discrete-time controller. Also, designers must
employ sophisticated mathematical tools to formulate and solve the optimization
problem due in part to the mixed continuous-time and discrete-time nature of the
systems.
Following a presentation of relevant concepts in discrete-time control and dis-
cretization in Chaps. 2–4, a family of global digital redesign methods is presented
in Chap. 5. Some of those methods are applied to models of practical systems in
Chaps. 6 and 7.
1.2 Linear Systems 3

In this book we assume that digital hardware has constrained mass, volume, and
power consumption, and uses either floating or fixed-point arithmetic. Even though
computing capabilities are constantly improving, there is a limit in the performance
that can be achieved with any hardware, from processing units to sensors. Such a limit
is even more of a concern with the use of low-cost, commercial-off-the-shelf (COTS)
components, such as digital processors, acquisition cards, and sensors, aimed at
designers of research robots.
The assumption on the limitations of computing capabilities translates into some
uncertainty in the performance of digital control systems, which is particularly sig-
nificant for small-scale vehicles. In general this means that the discrete-time control
algorithms must be as simple as possible, for example, control laws should be imple-
mented as low-order transfer functions, while ensuring a satisfactory performance
for a wide range of sampling rates. Otherwise, the control law may not execute in
real-time, i.e., within the allowable time step, may not be able to stabilize the sys-
tem for relatively slow sampling rates, and may result in unsatisfactory time-domain
transient characteristics.
One of the main themes of the book is the effect of the value of the sampling
or control update rate on closed-loop performance. This topic is discussed in every
chapter. Controller order reduction allows designers to constrain the complexity of
the control law, and thus to comply with limited computing capabilities. This subject
is discussed in Chap. 5.

1.2 Linear Systems

Theory for the design of linear discrete-time control systems is well-established [16],
[28], [29], [63]. Linear system concepts can be applied to aircraft, rotorcraft, and mo-
bile robots, which are inherently nonlinear dynamic systems. Indeed, historically,
autopilots, for example, have been predominantly investigated in a linear system
framework, without much consideration of their properties when implemented dig-
itally. Autopilot designs are usually based on linear models of the dynamics of
the platform, from actuator to sensor, at particular flight conditions or equilibrium
points. Scheduling of the control parameters is done through the onboard computer
to account for varying flight conditions, such as changes in altitude and speed, for
example, with airborne platforms [10], [73]. For wheeled mobile robots, feedback
linearization is one technique enabling linear designs [80]. Prior to deployment of
the vehicles, the linear designs must be tested in simulations.
Our presentation of the theory of digital control concentrates mainly on linear
systems. Useful operators, transforms, sampling and hold processes, and lifting on
signals and systems are presented in Chap. 2. Chapter 3 is devoted to the conver-
sion of continuous-time systems to the discrete-time domain, a process known as
discretization. Modeling in a context of control design is the subject of Chap. 4.
Discretization and modeling are exploited in the design of controllers in Chap. 5,
whereas theoretical concepts are shown to apply to practical linear and nonlinear
systems in Chaps. 6 and 7.
4 1 Control Systems

Real-Ɵme clock

Analog to digital Control Digital to analog


Actuators
converter processing converter

Tx/Rx
ConƟnuous-
Sensors
Ɵme system

Fig. 1.3 Generic block diagram of a digital control system

1.3 Digital Control Systems

Figure 1.3 shows the generic block diagram of a digital control system. The closed-
loop system comprises discrete-time signals and systems, and continuous-time
signals and systems. In this book, the following terms bear the same mean-
ing: computer-controlled system, digital control system, and sampled-data control
system.
The main subsystems present in a digital control system are digital processors,
analog-to-digital and digital-to-analog converters (ADC and DAC respectively), ac-
tuators, sensors, and the continuous-time system or plant. The plant represents the
dynamics between the actuators and the sensors. T > 0 is the sampling period,
in units of time. The sampling period also corresponds to the time step at which a
discrete-time signal or system is running. In this book, we assume periodic sampling.
This means that the time interval between successive sampling instants is constant.
A discrete-time system can be interpreted as a system that receives inputs, generates
outputs, and updates its state at sampling instants.
With exact computations carried out on discrete-time signals, without quantization
effects, one has a discrete-time control system. When the conversion of signals and
the control computations are done with a finite number of bits, we are in the presence
of a digital control system. A clock synchronizes the various processes.
Two generic sequences of controller computing tasks, done at each time step,
can be implemented. This is shown in Fig. 1.4. The current controller state and
output are assumed available in memory. The state is the result of an update process
performed at the previous time step. Current input is assumed received and available
in memory for use by the controller before generating the controller output. The
controller output signal enters the actuator(s). The controller input typically comes
from sensor(s). At any given time step, the controller receives its input, calculates its
output, and then updates its state. Any other noncritical computation follows. The
structure of the controller programming has an impact on the computational delay.
For instance, a short computational delay allows releasing the control signal as soon
as its computation is completed. Figure 1.4a shows the situation where the state is
updated after the release of the control signal, which in turn tends to decrease the
computational lag τ.
1.3 Digital Control Systems 5

uc(k-1,T) yc(k-1,T) uc(k,T) yc(k,T)


T
T

xc(k+1,T)
τ xc(k,T)

… …

t
T T
k-1 k k+1

xc(k+1,T) = fc( xc(k,T), uc(k,T) )


yc(k,T) = gc( xc(k,T), uc(k,T) )

Controller input receive (uc) Other computations

Controller output computations (yc) T Sampling period

Controller state update (xc) k Time index


a
τ Computational lag
uc(k-1,T) yc(k,T) uc(k,T) yc(k+1,T)
T

xc(k,T) xc(k+1,T)

… …

t
T T
k-1 k k+1

xc(k+1,T) = fc( xc(k,T), uc(k,T) )


yc(k,T) = gc( xc(k,T), uc(k,T) )

Controller input receive (uc) Other computations

Controller output computations (yc) T Sampling period


b k Time index
Controller state update (xc)

Fig. 1.4 Computing tasks and sequencing for the discrete-time control law. a The computational
lag τ is small with respect to the sampling period. The control signal can be released once its
computation is completed provided the software and hardware allow this type of implementation.
b When the computational time is important, the control signal released at (k + 1)T is computed
from the control input received at kT
6 1 Control Systems

While not being covered in this book, other aspects of a digital implementation
should also be accounted for, especially when issuing certificates of worthiness for
safety-critical, digital control systems. Task scheduling, communication protocol,
and software semantics are among such topics. The reader is referred to [26] and
references therein for a discussion on stability and performance proofs for control
programs.
A digital implementation of the control law may, however, adversely affect the
performance of the platform due to computational delays, quantization and finite
update rates, for example [34]. For instance, instantaneous sampling, which models
analog-to-digital conversion, is a periodic operation which outputs the value of a
continuous-time signal at every T instant of time, with a finite number of bits rep-
resenting the value of the discrete-time signal. Intuitively, the faster the sampling
process, the closer the value of the sampler output to that of the continuous-time
input signal. The sensing update rate should be selected fast enough for sufficient
information to be available to the controller. Yet, sampling period T is a parameter
that cannot always be selected as small as required by the control designer, due to
constraints outside those pertaining to the operation of the feedback control system.
Studying the performance of discrete-time controllers in the face of adverse im-
plementation effects adds to an overall understanding of the robustness of control
systems besides the classical approach pertaining to uncertainties and variations in
the parameters of a plant model. This is probably one of the main motivations to
the book, especially knowing the fact that few studies have been published in open
literature on the topic of digital implementation of control laws.
In this book, the time required to convert the signals from one form to another is
assumed to be much smaller than the value of the sampling period. The functioning
of the ADC and DAC is not investigated. We assume ADC and DAC convert the
signals with some degree of accuracy.
With digital implementation of controllers, designers can readily (1) incorporate
logic, heuristics and nonlinear functions, such as saturation and rate limiting, before
a control signal is sent to the actuators, such as motors; (2) exploit table lookups
stored in memory to enable control parameter scheduling, for an aircraft autopilot
for example; and (3) modify parameters of a control law between operational tests
and experiments.
There are several challenges, however, associated with the design of a digital
control system. First, the performance is partly dependent on the selection of the
sampling period, the control design method, and the implementation scheme, in ad-
dition to being constrained by the performance of the sensors, actuators, and digital
hardware. Second, control systems rely on multiple feedback loops and various time
constants. For example, airborne platforms usually exhibit multiple dynamic scales,
as the inner-loop angular rate feedback has a faster response than the outer-loop
acceleration feedback [21]. Ideally, one would then sample the angular rate signal
with a faster rate than that used for acceleration. If multirate sampling and control
update is not implemented, the presence of multiple dynamic scales may result in a
control system with overly sampled slow signals to accommodate the sampling of
the fast signals, and may preclude real-time execution. Third, the variety of onboard
1.4 Application Examples 7

components, from digital processors, to sensors, to actuators, to acquisition cards,


to communication channels make the overall closed-loop system operate at multiple
rates, for both signals and systems. The integration of commercial processors, data
acquisition cards and input/output boards possibly operating at various rates and of
various makes further complicates the design task. Fourth, designers must find a
conceptual bridge between continuous-time and discrete-time systems and signals
for completeness and understanding of overall system performance. Concepts of
discrete-time models of continuous-time systems [13], [59], [60], [78] aim at es-
tablishing fundamental relationships between the two domains. Fifth, the amplitude
of continuous-time signals must be carefully constrained in between the sampling
instants to avoid unwanted oscillations and transients, not observed at sampling
time. Finally, the use of low-cost COTS components in small robots provides limited
accuracy, resolution, and reliability [76], [70].

1.4 Application Examples

We present the application of digital controller design techniques on simplified,


generic system models: a wheeled robot and an airborne pursuer. It is not our intent
to provide a lengthy description of the mathematical models of system dynamics.
We refer instead to relevant literature on the topic, and focus on control design
approaches.
Chapters 6 and 7 present the application of practical techniques of controller
design, digital redesign, and direct discrete-time design suitable for a real-time
implementation at multiple rates and with limited number of bits.

1.4.1 Wheeled Robot

A wheeled mobile robot, or WMR, is represented schematically in Fig. 1.5a. The


rear wheels provide the traction. Besides varying the wheel speed, the heading of the
robot is controlled with a differential rotation of the left and right rear wheels; that
is, the control system independently commands the angular rotations of the two rear
wheels and thus orients the robot in any direction. We do not consider traction and
terrain issues. We assume nominal operating conditions on a level plane.
Figure 1.5b shows the block diagram of a WMR feedback control system. The
Feedback linearization and state feedback block outputs velocity and heading com-
mands. Its inputs are the commanded positions and speeds, either obtained remotely
or calculated onboard the WMR to reach specified target locations or waypoints. The
Left and right wheel velocity control block outputs angular rotation commands for the
left and right wheels. Inputs, states and outputs of the discrete-time controller blocks
are updated at every T1 and T2 time instants. The periods may be set to different
values by the designer, resulting in a so-called dual-rate system.
8 1 Control Systems

• Electronics
Front wheel • Sensors
(free to rotate) • modem
r r
d

ωL ωR
Left wheel Right wheel

Front view

Top view
a
On digital hardware

Commanded positions and speeds

Feedback
Trajectory generator / linearization Left and right Digital to
Rx and state wheel velocity analog
Waypoint commands
feedback control converter

• Type of control T1 T2
• Commands Velocity and heading
commands
Left and right Motors
wheel angular
rotation
commands
Analog to
digital Sensors
converter Position and
heading
b feedback

Fig. 1.5 a Schematics of WMR. b Block diagram of WMR feedback control system

The feedback signals used by the controllers are outputs of sensors located onboard
and offboard the WMR. The onboard sensors and modem are connected to the digital
processor via a data acquisition card. Sensors that can be used for control include
onboard sensors, such as SONAR, cameras, and infrared range sensors; and offboard
sensors such as a tracking system that uses visual cameras to locate the position and
estimate the heading of the WMR.
With such WMR available, we study in Chap. 6 the design of a continuous-time
feedback linearization scheme converted to discrete-time.
1.4 Application Examples 9

Fig. 1.6 Simplified nm


kinematics

γm
θm vm
σ

nt vt
γt
θt

1.4.2 Generic Airborne Platform

The airborne platform is assumed to exhibit the salient characteristics of a known,


generic pursuer model [38], with a cylindrical body and a number of control ef-
fectors, typically fins and canards [77]. The systems onboard the airborne platform
perform the following tasks to achieve a successful flight [39], [83]. A seeker (sen-
sor) obtains target information. A guidance law processes the state estimates and the
body sensor information (mainly gyroscopes and accelerometers) to generate the ac-
celeration commands. The autopilot converts the acceleration command into control
effector motor commands, in pitch and yaw channels, based on the processing of the
airframe aerodynamic characteristics and sensed body angular rates and linear ac-
celerations. The autopilot is designed such that the air vehicle tracks the commands
of the guidance law, given known characteristics of the airframe for the current
operating conditions. Chapter 7 presents basic, linear discrete-time autopilots.
Figure 1.6 shows simplified kinematics of the airborne platform and the target.
The motion takes place on a plane. The figure follows the notation used by Zarchan
in [83]. In Fig. 1.6, subscript ‘t’ refers to target parameters and ‘m’ pertains to
parameters of the pursuer. Briefly, the acceleration command nm is perpendicular to
the velocity vector of the pursuer, vm , and σ is the line-of-sight (LOS) angle.
As is well known, the most basic guidance law is PNG, or proportional navigation
guidance [83]. The basic principle of PNG, first introduced in [82], is straightforward,
and is shown in Fig. 1.7. A navigation constant N > 3 multiplies the closing (relative)
velocity V between the airborne platform and the target, and the LOS rate. PNG tries
to make the LOS rate, the derivative of σ in Fig. 1.6, approach the reference input
LOS rate of zero. When the target is immobile or moving at a constant velocity,
and the dynamics of the pursuer platform are relatively fast with respect to those of
the target, a near-zero miss is guaranteed. This is true assuming that the guidance
update rate is sufficiently fast. If not, the digital implementation may actually limit
the performance achievable with PNG, or with any other guidance law, such as
10 1 Control Systems

Fig. 1.7 Basic principle of


0
PNG NV Autopilot & airborne platform

Sensors
LOS rate

Target

augmented PNG [67], nonlinear PNG [49], biased PNG [12], and optimal guidance
laws [6], [19].
Figure 1.8a shows generic schematics of the guidance and autopilot loops. Fig-
ure 1.8b exemplifies a typical continuous-time PID autopilot in one channel, either
yaw or pitch. For a digital implementation, the autopilot of part (b) must be converted
to a discrete-time system, with the input consisting of a discrete-time acceleration
command, and the output being a discrete-time command for fin deflection. In the
figure, a line may represent either a vector or a scalar. Part (a) of the figure shows a
dual-rate digital feedback system, where the guidance loop is updated at a rate 1/T1 ,
which is slower than the autopilot loop rate of 1/T2 . The inertial measurement units
(IMUs), provide attitude measurements and accelerations.

Digital guidance law

Estimator Digital autopilot DAC Actuators Pursuer dynamics

T2
ADC T1 ADC T2
IMUs

Seeker
T1 > T2
a
Converted to discrete-time, implemented on digital hardware
Commanded
acceleration + + Pursuer
K1 Actuators Sensors
dynamics
- +
+
1
K3
s Yaw & pitch rates
K2

Normal accelerations
K1, K2 , K3 are real gains
b
Fig. 1.8 a Digital guidance and control loops. b Classical PID-type continuous-time autopilot
1.4 Application Examples 11

The linear autopilots described in Chap. 7 are not aimed at a specific vehi-
cle or target. Controller digital redesign steps are presented, and an analysis of
the performance of linear control loops is given from an implementation point of
view. Importantly, we study sampling rate selection, performance under fixed-point
implementation, and dual-rate operation of a feedback system.
Chapter 2
Review of Signals and Systems

2.1 Signals

Signals correspond to inputs, outputs, and states of systems. Signals are defined in
the continuous-time and discrete-time domains.
A continuous-time signal is given as u ∈ R N . Signal u is a mapping from R to
N
R . The domain of u may be a subset of the set of real numbers R; for example,
the domain may begin at time t0 ∈ R + . A continuous-time signal may be piecewise
continuous, as is the case with the output of a DAC, and exemplified in Fig. 2.1 for
the case of a converter that holds the value of its output signal until the next update.
For brevity, a continuous-time signal u is equivalently written as u(t) to represent
both the signal and its value at a particular time instant t.
A discrete-time signal u(k, T ) maps an index in Z, the set of integers, for a given
sampling period T , to a value in R N . The first argument in the variable u(k, T )
is the time step, while the second argument is the period between two successive
values, when viewed from a continuous-time perspective. For example, the discrete-
time signal u(k, T ) in Fig. 2.1 has a value of u(0, T ) at time instant 0, a value of
u(1, T ) at time instant T , a value of u(2, T ) at time instant 2T , and so on. We
are interested in designing digital controllers for continuous-time plants. Dynamic
systems, formulated with ordinary differential equations (ODEs), evolve over a time
continuum t ∈ R. The signals associated with the digital controllers are defined at
time instants given by kT , for k ∈ Z, over the continuum of time, with T time units
between two successive values of a discrete-time signal.
Here, we assume uniformity in the time periods, although in reality the signals are
not available exactly at integer multiples of T . Fortunately, such assumption is not
detrimental in practice. This time-periodic sampling, also called Riemann sampling,
is to be contrasted with Lebesgue sampling [3] which, simply put, consists of sam-
pling a signal when it exceeds a given level. Discrete-event systems use Lebesgue
sampling.
A discrete-time signal may be interpreted as a sequence. The notation u(k, T )
represents both the discrete-time signal and its value for a specific pair (k, T ). The
infinite sequence can be written as

{u(k, T ); k ∈ Z} = {..., u( − 2, T ), u( − 1, T ), u(0, T ), u(1, T ), u(2, T ), ...}. (2.1)

C. A. Rabbath, N. Léchevin, Discrete-Time Control System Design with Applications, 13


DOI 10.1007/978-1-4614-9290-0_2, © Springer Science+Business Media New York 2014
14 2 Review of Signals and Systems

digital sequence
with finite number
of bits Analog signal
computer bus DAC

u(k,T) Digital to Analog y(t)


Converter

y(t) = u(k,T) for kT ≤ t < (k+1)T

value of signal
y(t)
u(2,T) u(5,T)
u(1,T)
u(3,T) u(4,T)

u(0,T)

Ɵme
0 T 2T 3T 4T 5T

Fig. 2.1 Piecewise-continuous signal

{…,u(-2,T), u(-1,T), u(0,T), u(1,T), u(2,T),…}

u(2,T)
u(-1,T) u(0,T)

… u(1,T)

u(-2,T)

time
-2T -T 0 T 2T

Fig. 2.2 Discrete-time signal as a sequence

The interpretation of a scalar discrete-time signal in the time domain and its repre-
sentation as a sequence is illustrated in Fig. 2.2. For a vector signal, each entry in
the right-hand side of Eq. (2.1) is a vector.
Figure 2.3 shows four types of signals. The signals found in a digital control
system are shown in Fig. 2.3a, b and d. An analog signal is shown in Fig. 2.3a.
An analog signal is continuous in amplitude and over time. The signal shown in
Fig. 2.3b may correspond to the output of a DAC, for instance. It is a piecewise
constant signal whose values belong to a finite set of real numbers. A discrete-time
signal u ∈ R N, with N = 1, is shown in Fig. 2.3c. There is no truncation or rounding
of the amplitude of a signal in Fig. 2.3c. A digital signal is represented in Fig. 2.3d.
A digital signal is discrete in magnitude (quantized values) and over time, such as
the output of an ADC, for example. The values for such a signal belong to a finite
set of real numbers.
2.2 Systems 15

Continuous in magnitude Discrete in magnitude

Discrete values

time time
Continuous in time Continuous in time
a b
Continuous in magnitude Discrete in magnitude
Discrete time
xxx x instants Discrete values
xxxx x xxxxxxx
xx xx Discrete time
xx instants

time time

Discrete in time Discrete in time


c d
Fig. 2.3 Four types of signals

2.2 Systems

Systems present in a digital control loop evolve either in the continuous-time or in


the discrete-time domain.
Definition 2.1 Linear, Time-invariant Continuous-time System A system with
inputs, outputs and states defined in the continuous-time domain; namely, for any
time t ∈ R. A linear, time-invariant continuous-time system may be represented
(1) as a transfer function in the complex variable s, and (2) as a finite-dimensional
state-space given by

dx
= Ax + Bu
dt
y = Cx + Du (2.2)

where x is the state vector of dimension n × 1, u is the input of dimension m × 1,


y is the output of dimension r × 1, and the matrices and vectors are A ∈ R n×n ,
B ∈ R n×m , C ∈ R r×n , and D ∈ R r×m .
A nonlinear, time-invariant continuous-time system is given in state-space form as

dx
= f (x, u)
dt
y = g(x, u). (2.3)

Definition 2.2 Discrete-time System A system with inputs, outputs, and states de-
fined in the discrete-time domain; that is, at discrete instants of time, also known as
the sampling instants. A linear system is represented as a transfer function in z or γ .
Finite dimensional linear and nonlinear discrete-time systems may be represented in
a state-space, in either the shift or the delta form.
16 2 Review of Signals and Systems

Dynamic
Actuators System governed Sensors
by ODEs
Plant

Digital to Analog Analog to Digital


Discrete-time
Converter Converter
Dynamic System
Controller

Continuous-time system

Discrete-time system

Converter

Continuous-time signal
Digital signal

Fig. 2.4 Basic control system with continuous-time and discrete-time signals and systems

Figure 2.4 shows a basic digital control loop, where the two types of systems
and signals are present. The part of the system comprising the dynamic system
under control with its actuators and sensors evolves in the continuous-time domain.
The digital control scheme implemented on digital hardware evolves in the digital
domain; namely, with finite wordlength computations and fixed- or floating-point
arithmetic. DACs and ADCs ensure the transition between the two domains.

2.3 Operators in the Discrete-time Domain

Two operators are of interest in this book: the shift and delta operators. They act
upon discrete-time signals. The numerical properties of these operators depend on
the value of T . The context dictates whether one is preferred over the other.
To present the main characteristics of shift and delta operators, consider a discrete-
time signal f : N → R n . The signal is also represented as f (k, T ), where T ∈ R +
is the sampling or update period and k ∈ N is the time step. Signal f (k, T ) can be
written as the following sequence of vectors in R n :

{..., f (0, T ), f (1, T ), f (2, T ), ...}. (2.4)

2.3.1 Shift Operator

The shift operator q acting on signal f given as

f (k, T ) = {..., f (0, T ), f (1, T ), f (2, T ), ...}. (2.5)


k=0 k=1 k=2
2.3 Operators in the Discrete-time Domain 17

results in
qf (k, T ) = {..., f (1, T ), f (2, T ), f (3, T ), ...}. (2.6)
k=0 k=1 k=2

Operator q acts on a discrete-time signal by shifting the whole signal to the left along
the time axis by one period T .
For a linear, time-invariant discrete-time system G with state x(k, T ) ∈ R n , input
u(k, T ) ∈ R m and output y(k, T ) ∈ R p , the state-space equation in the shift form is
given as
x(k + 1, T ) = Ax(k, T ) + Bu(k, T )
(2.7)
y(k, T ) = Cx(k, T ) + Du(k, T )
where A ∈ R n×n , B ∈ R n×m , C ∈ R p×n and D ∈ R p×m . Equation (2.7) is the
classical expression for discrete-time systems.
The right-shift operator q −1 acts on a discrete-time signal f (k, T ) as q −1 f (k, T ) =
f (k − 1, T ). The operation q −1 therefore shifts the discrete-time signal to the right
by one sampling interval.
The zero-state response of a linear, time-invariant (LTI) system, expressed in the
shift form with Eq. (2.7), subject to a unit discrete-time pulse given as

1, k = 0
u(k, T ) = (2.8)
0, k  = 0
is as follows

CAk−1 B, k ≥ 1
y(k, T ) = (2.9)
D, k = 0
In general, using the convolution sum [65], one writes the zero-state response as
a function of the state-space components of the discrete-time system and input
u(k, T ) as

k−1
y(k, T ) = C Ak−i−1 Bu(i, T ) + Du(k, T ). (2.10)
i=0

The shift operator is well-known and thoroughly employed in the discrete-time


control literature. There exist other ways, however, to operate on discrete-time
signals and to represent discrete-time systems. These representations may be used
for analysis, design, and implementation of a control law. The delta operator is an
alternative to the shift operator.

2.3.2 Delta Operator

It is well-known that a discrete-time system can be expressed in the so-called


delta form [31]. Using again the discrete-time signal f (k, T ), the delta operator is
defined as
18 2 Review of Signals and Systems

f (k + 1, T ) − f (k, T )
δf (k, T ) = (2.11)
T
which is reminiscent of the numerical approximation to the derivative using a forward
slope.
The delta operator can be expressed in terms of the shift operator as δ = (q −1)/T .
The delta operator produces a weighted difference between a shifted version of a
signal and the signal itself.
For a discrete-time system G, to obtain the state-space equations in the delta form,
one uses Eqs. (2.7) and (2.11), yielding
(A − I ) B
δx(k, T ) = x(k, T ) + u(k, T )
T 
  T
 (2.12)
=Aδ =Bδ
y(k, T ) = Cδ x(k, T ) + Dδ u(k, T )
where Cδ = C and Dδ = D. Inputs and outputs are unaffected by the choice of
either the shift or the delta form. Recall that (2.7) and (2.11) are two expressions for
the same system G. The difference lies in the expression for the update of the state.
The inverse delta operator δ −1 corresponds to area summation in the discrete-time
domain and is written as

k−1
δ −1 f (k, T ) = f (i, T )T . (2.13)
i=0

In Eq. (2.13), it is assumed that f (k, T ) is defined for k ≥ 0.


For the details on the numerical and the analytical properties of the delta form
representation, the reader is referred to [31], [59] and [78]. Briefly, in general, the
delta operator is favored over the shift operator in the representation of discrete-time
systems as the sampling or control update period T is relatively close to zero.

2.4 Transforms

For continuous-time signals and systems, the Laplace transform enables analysis
and design. In the discrete-time domain, various transforms exist. In this book, we
are interested in the Z and  transforms. The former relates to the shift operator,
whereas the latter pertains to the delta operator.

2.4.1 Z Transform and Transfer Function in z

The classical definition of the Z transform of a discrete-time signal f (k, T ), defined


for k = 0, 1, 2, ..., is given as


Z{f (k, T )} = f (k, T )z−k (2.14)
k=0
2.4 Transforms 19

where z is a complex variable [47], [72]. Clearly, Eq. (2.14) is a series in a complex
variable, and therefore has a region of convergence in the z-plane.
The transfer function of a single-input, single-output discrete-time system G with
input u(k, T ) and output y(k, T ) is given as
Z{y(k, T )}
G(z) =
Z{u(k, T )}
Y (z)
= (2.15)
U (z)
bn zn + bn−1 zn−1 + ... + b1 z + b0
=
an zn + an−1 zn−1 + ... + a1 z + a0

where ai , bi ∈ R. The extension to multi-input, multi-output systems is straightfor-


ward. For a discrete-time system expressed in the shift state-space form as
x(k + 1, T ) = Aq x(k, T ) + Bq u(k, T )
y(k, T ) = Cq x(k, T ) + Dq u(k, T )

with x(k, T ) ∈ R n×1 , u(k, T ) ∈ R r×1 , y(k, T ) ∈ R m×1 , Aq ∈ R n×n , Bq ∈ R n×r ,


Cq ∈ R m×n , Dq ∈ R m×r and initial condition x(0, T ), the relationship between
input, output and state in the complex variable z is written as
X(z) = (zI − Aq )−1 Bq u(z) + z(zI − Aq )−1 x(0, T )
Y (z) = Cq ((zI − Aq )−1 Bq + Dq )u(z) + Cq z(zI − Aq )−1 x(0, T ).
When the sampling period associated with a transfer function is ambiguous, for
example in case of dual-rate systems, the identifier of a transfer function may
include the sampling period as its second argument. For instance, we may write
X(z, T ) instead of X(z), without loss of generality, to make sure that it is understood
that the discrete-time transfer function is obtained with period T .

2.4.2 Z Transform and q Operator

Let the discrete-time signal x(k, T ) start at k = 0, the initial time. The relationship
between z and q is given as


Z{qx(k, T )} = x(k + 1, T )z−k
k=0
∞
=z x(m, T )z−m
m=1 (2.16)

 −m
=z x(m, T )z − x(0, T )
m=0
= zX(z) − zx(0, T ).
20 2 Review of Signals and Systems

2.4.3  Transform and Transfer Function in γ

The  transform of f (k, T ), defined for k = 0, 1, 2, ..., is given as




{f (k, T )} = f (k, T )(T γ + 1)−k T (2.17)
k=0

where γ is a complex variable [31]. As is the case with the Z transform, the series
in the complex variable γ is well-defined for some region in the complex γ plane.
The transfer function in the complex variable γ for a single-input, single-output
discrete-time system G with input u(k, T ) and output y(k, T ) is
{y(k, T )}
G(γ ) =
{u(k, T )}
Y (γ )
=
U (γ )
dn γ n + dn−1 γ n−1 + ... + d1 γ + d0
=
cn γ n + cn−1 γ n−1 + ... + c1 γ + c0
where ci , di ∈ R.
For a discrete-time system expressed in the delta state-space form as
δx(k, T ) = Aδ x(k, T ) + Bδ u(k, T )
y(k, T ) = Cδ x(k, T ) + Dδ u(k, T )
with x(k, T ) ∈ R n×1 , u(k, T ) ∈ R r×1 , y(k, T ) ∈ R m×1 , Aδ ∈ R n×n , Bδ ∈ R n×r ,
Cδ ∈ R m×n , Dδ ∈ R m×r and initial condition x(0, T ), the relationship between
input, output, and state in the complex variable γ is written as
X(γ ) = (γ I − Aδ )−1 Bδ u(γ ) + (T γ + 1)(γ I − Aδ )−1 x(0, T )
Y (γ ) = Cδ ((γ I − Aδ )−1 Bδ + Dδ )u(γ ) + Cδ (T γ + 1)(γ I − Aδ )−1 x(0, T ).

2.4.4  Transform and Delta Operator

Let the discrete-time signal x(k, T ) start at k = 0. The  transform of δx(k, T ) is


given as


{δx(k, T )} = δx(k, T ) (T γ + 1)−k T
k=0
∞ ∞
= x(k + 1, T ) (T γ + 1)−k − x(k, T ) (T γ + 1)−k
k=0 ∞ k=0

 −m 1
= (T γ + 1) x(m, T ) (T γ + 1) − x(0, T ) − X(γ )
m=0 T
1 1
= (T γ + 1) X(γ ) − (T γ + 1) x(0, T ) − X(γ )
T T
= γ X(γ ) − (T γ + 1) x(0, T ). (2.18)
2.5 Instantaneous Sampler and Holds 21

2.4.5 Transfer Functions in Complex Variables z and γ

The transfer function is unique for a given system, when expressed with a particular
complex variable. Therefore, a discrete-time system G has a unique transfer function
in z which can be mapped to a unique transfer function in γ , and vice-versa. To go
from one transfer function to the other, one has to substitute for the complex variable
by means of the relationships γ = (z − 1)/T and z = 1 + T γ . When the sampling
period T is changed, so are the values of the coefficients of the transfer function.
The principles of multiplicity of state representations, similarity transformations,
realization, controllability, and observability for linear state-space discrete-time sys-
tems readily apply to the shift and delta state-space forms. A detailed study can be
found in [4], [31] and [72].

2.5 Instantaneous Sampler and Holds

Since the plant is a continuous-time system and the controllers are implemented in a
discrete-time form, the feedback system relies on converters to go from one domain
to the other.

2.5.1 Instantaneous Sampler

An example of instantaneous sampler, or IS, is shown in Fig. 2.5. IS maps a signal in


the continuous-time domain to one evolving in the discrete-time domain. In Fig. 2.5,
IS outputs a discrete-time signal whose values correspond to those of the continuous-
time input at the sampling instants. Thus, IS in an idealization of the ADC, where
conversion is assumed to occur infinitely fast and with infinite resolution. There is
no quantization effect with IS. IS is represented by the symbol S in a block diagram.
As shown in Fig. 2.5, the input to S is a continuous-time signal, while the output is
a discrete-time signal with label X. For a continuous-time signal u(t), the output of
IS is y(k, T ) and is given by y(k, T ) = u(kT ), k > 0. This means signal y has the
value of signal u at each sampling instant.
A well-known phenomenon arising with IS is aliasing. Briefly, aliasing pertains
to the loss of information. Aliasing is therefore undesirable, and a designer typically
tries to reduce its impact on the performance of the system. Aliasing may be viewed
in the time and the frequency domains. In the time domain, multiple continuous-time
sinusoidal signals end up as the same discrete-time sinusoidal signal once sampled.
In the frequency domain, the spectrum folds back within the primary strip [4], [31].
To reduce the effect of aliasing, a designer may (1) precede the IS by a low-pass
continuous-time filter, thereby attenuating the high-frequency content of the signal
being sampled, and (2) design and implement a feedback control system at a shorter
sampling period T . The former is a straightforward design process, whereas the latter
may not always be possible. In practice, limitations in computing power constrain
the choice for T .
22 2 Review of Signals and Systems

digital sequence
with finite number
Analog signal of bits
ADC bus computer

u(t) Analog to Digital y(k,T) u(t) y(k,T)


Converter S
y(k,T) = u(t) at t =kT
Instantaneous sampler

signal
u(t)
y(2,T) y(3,T) y(4,T) y(5,T)
y(1,T) X X X
X X

y(0,T)
X
Ɵme
0 T 2T 3T 4T 5T

Fig. 2.5 Instantaneous sampling

1 X 1

t
t
0 T
ZOH 0 T

Continuous-time signal
Discrete-time signal

Fig. 2.6 Response of ZOH to unit discrete-time pulse

2.5.2 Zero-order Hold

The zero-order hold, or ZOH, is the typical model of the DAC process used by control
system designers. ZOH is an idealization of DAC with a conversion assumed to occur
infinitely fast. ZOH maps a signal in the discrete-time domain to one evolving in
continuous-time. Figure 2.1 shows the piecewise-constant output of a ZOH.
The output of the ZOH is written as y(t) = u(k, T ) for kT ≤ t < (k + 1)T , from
Fig. 2.1.
A hold is denoted with symbol H in the block diagrams. We use the symbol ZOH
for the zero-order hold.
A hold is typically defined in terms of its response to a unit discrete-time pulse.
This input-output relationship is shown in Fig. 2.6 for the ZOH.
2.6 Lifting 23

h-2(τ)
hm-1(τ)

h1(τ)
h0(τ)
h-l(τ) h-1(τ) h2(τ)

t
-lT (-l+1)T -2T -T 0 T 2T 3T (m-1)T mT

Fig. 2.7 Response of generalized hold to unit discrete-time pulse input

2.5.3 Generalized Holds

In the past, holds were considered as devices that serve only one purpose: conversion
of signals. More recently, researchers have included the hold in the design process.
The hold function can be tailored to satisfy closed-loop requirements. For example,
[41] showed that the so-called generalized hold cascaded in front of a controllable
and observable continuous-time system can be designed for arbitrary placement of
the zeros of the resulting discrete-time system.
Generalized holds, or simply GH, considered in this book present the following
response to a discrete-time input u(k, T ):

m−1
uk (τ ) = hj (τ )u(k − j , T ) (2.19)
j =−l

where hj (τ ) are piecewise-continuous functions of τ ∈ [0, T ), and uk (τ ) is such that


uk (τ ) = u(kT + τ ), for 0 ≤ τ < T and k ∈ Z = {· · · , −2, −1, 0, 1, 2, · · ·}.
The unit discrete-time pulse response of a GH is illustrated in Fig. 2.7, where the
unit discrete-time pulse input is such that u(k, T ) = 1, for k = 0, and u(k, T ) = 0,
elsewhere. A hold in this book, whether a GH or else, is represented by the generic
symbol H in the block diagrams, unless indicated otherwise.
Generalized holds are characterized by a non zero response over the first m sam-
pling intervals in t ≥ 0, i.e. within [0, mT ), and over the first l sampling intervals in
t < 0, i.e. in [ − lT , 0). In this book, m ≥ 1 whereas l ≥ 0.

2.6 Lifting

Lifting is a conceptual reformulation of continuous-time and discrete-time signals


and systems that helps the design and the analysis of digital control systems. In this
book, we apply lifting to linear systems, converters, and systems ensuring a transition
in rates.
24 2 Review of Signals and Systems

Lifted signal

Partitioning

CTL

0 T 0 T 0 T

time time
0 T 2T 3T 0 T 2T

Fig. 2.8 Continuous-time lifting

2.6.1 Continuous-time Lifting

Continuous-time lifting, or CTL, of a bounded continuous-time function f (t) is


visualized as a partitioning of its time trajectory into an infinite number of functions,
each of which being a copy of f (t) within the time interval [kT , (k + 1)T ), with k
being an index in Z, the set of integers. Figure 2.8 presents an example of CTL for
a scalar signal defined over t ≥ 0. CTL takes a function f (t) defined in the interval
[0, ∞) to a sequence {f (k, T , τ ))}∞k=0 .
CTL is useful to represent the response of a hold. For a GH, the CTL of its response
to a discrete-time input u(k, T ) is given by Eq. (2.19). CTL is performed at the same
update period, T , as that of the GH.

2.6.2 Discrete-time Lifting

Discrete-time lifting, or DTL, is an operation on discrete-time signals introduced in


the context of feedback control in [64], [1]. Carefully employed, DTL enables (1)
representing a multi-rate system as a slow, single-rate system, and (2) interpreting
a fast-rate system as a slow-rate system. Here, we employ DTL for the design of
digital control systems evolving at different update rates.
In this book, symbol L represents the discrete-time lifting operation and L−1 is
the inverse discrete-time lifting. Importantly, L−1 L = I so that no information is lost
when successively applying DTL and inverse DTL [16]. Lifting and inverse lifting
can be applied to scalar and vector signals. The price paid for the use of DTL is an
increase in the dimensions of the signals and the input-output spaces of systems. The
dimension of the state-space does not increase with the use of DTL. Since the total
amount of information entering and leaving the system is unchanged when using
DTL, norms and induced norms remain identical.
As an example, consider the discrete-time scalar signal x(k, T ) given as the
following sequence

{x(0, T ), x(1, T ), x(2, T ), x(3, T ), ...}. (2.20)


2.6 Lifting 25

x(0,T), x(1,T), x(2,T), x(3,T), x(4,T), ... x(0,T) x(4,T)


L x(1,T)
x(2,T)
, x(5,T)
x(6,T)
, …
x(3,T) x(7,T)

Fig. 2.9 Discrete-time lifting of a signal

G Tf
Fast signal
A B
Slow signal
C D

L-1 G Tf L

⎡ AN AN−1 B AN−2 B  B ⎤
⎢ C D 0  0⎥
⎢ ⎥
⎢ CA CB D  0⎥
⎢ ⎥
⎢     ⎥
⎢⎣CAN−1 CAN−2 B CAN−3 B  D ⎥⎦

Fig. 2.10 Discrete-time lifting of fast-rate systems

The signal is lifted, with N = 4, to a discrete-time vector signal x L (l, h), l ∈ Z + ,


updated at a period of h = 4T and expressed as
⎧⎡ ⎤ ⎡ ⎤ ⎫

⎪ x(0, T ) x(4, T ) ⎪

⎨⎢ ⎥ ⎢ x(5, T ) ⎥ ⎬
⎢ x(1, T ) ⎥, ⎢ ⎥ , ... .
⎣ x(2, T ) ⎦ ⎣ x(6, T ) ⎦ (2.21)

⎪ ⎪

⎩ ⎭
x(3, T ) x(7, T )

Figure 2.9 shows input and output signals for the example. A fast-rate scalar signal
enters L. The output is a slow-rate column vector of dimension N = 4 which is
updated at a period h.
Consider a fast-rate, linear, time-invariant discrete-time system denoted as GTf .
The system operates on signals with update period Tf . Let A ∈ R n×n , B ∈ R n×m ,
C ∈ R r×n , and D ∈ R r×m denote the state-space matrices and vectors of a state-
space shift form of the fast-rate discrete-time system. The system is lifted to the
slow-rate system expressed as G Ts = LGTf L−1 . The period of the lifted system
Ts is Ts , which is related to the period of the fast-rate system with the expression
G
Ts = NTf , N being a positive integer. The schematics and the packed notation are
presented in Fig. 2.10. The state-space matrices and vectors of the lifted system in
the shift form are given as

T = A ∈ R
N n×n
AG s
, (2.22)
26 2 Review of Signals and Systems
 N−1 
T = A
BG s
B AN−2 B · · · B ∈ R n×N m , (2.23)

⎡ ⎤
C
⎢ CA ⎥
CG
T =⎢

.. ⎥ ∈ R N r×n ,
⎦ (2.24)
s .
N−1
CA

⎡ ⎤
D 0r×m · · · 0r×m
..
⎢ CB D . ⎥
DG
T =⎢
⎣ .. .. ⎥ ∈ R N r×N m . (2.25)
s
. . 0r×m ⎦
CAN−2 B CAN−3 B ··· D

2.7 Dual-rate Generalized Holds and Samplers

Systems are required to enable the transition between discrete-time signals evolving
at different update rates. A dual-rate generalized sampler is needed to go from a fast
to a slow update rate. A dual-rate generalized hold enables going from a slow signal
to a fast signal. Discrete-time lifting is a useful tool to represent such systems.

2.7.1 Dual-rate Generalized Holds

The dual-rate generalized hold is defined as follows.


Definition 2.3 Dual-rate Generalized Hold or DRGH A DRGH expressed as Hh,T
is a system that receives a bounded discrete-time input signal with period h and
outputs a bounded discrete-time signal at period T , with 1/ h < 1/T . DRGH handles
slow-to-fast rate transition, at least conceptually, for the design of a dual-rate control
law.
For a discrete-time scalar input u(k, h), the lifted output of the DRGH, y L (k, h) ∈
, is given in (2.26), where Hi−1j (T , h) ∈ R, i = 1, ..., N and j = −l, ..., m − 1.
N×1
R
A DRGH has a non-zero discrete-time pulse response at t = −l · N T , −l · N T +
T , ..., (m − 1)N T + (N − 1)T .
In case of vector input signals in R M , Hh,T = diag{H1h,T , ..., HM h,T }, where diag{·}
is the diagonal matrix and Hih,T is the hold affected to the ith entry of the input vector
as given by (2.26).
⎡ 0 ⎤
Hj (T , h)
 ⎢
m−1
⎢ H1j (T , h) ⎥

y L (k, h) = ⎢ .. ⎥ u(k − j , h) (2.26)
j =−l ⎣ . ⎦
HN−1
j (T , h)
2.7 Dual-rate Generalized Holds and Samplers 27

1 X
1 X X …X

t
0 h 0 T (n-1)T t
DT-ZOH

Slow discrete-time signal


Fast discrete-time signal

Fig. 2.11 Response of DT-ZOH to a unit discrete-time pulse

1 X

X X

X X

X t
0 h 2h

Fig. 2.12 Response of dual-rate slewer hold to a unit discrete-time pulse

The simplest DRGH is the discrete-time zero-order hold, denoted as DT-ZOH, which
has the following lifted output to a discrete-time scalar input u(k, h)
⎡ ⎤
1
⎢1⎥
y (k, h) = ⎢
L .⎥
⎣ .. ⎦ u(k, h). (2.27)
1

The response of the DT-ZOH to a unit discrete-time pulse is illustrated in Fig. 2.11.
The lifted outputs of common DRGH are given in (2.29) to (2.33). As an example,
the slewer DRGH, whose unit discrete-time pulse response is shown in Fig. 2.12 for
N = 3, has the following lifted response to a discrete-time scalar input u(k, h)
⎡ ⎤ ⎡ ⎤
0 1
y L (k, h) = ⎣ T / h ⎦ u(k, h) + ⎣ 1 − T / h ⎦ u(k − 1, h). (2.28)
2T / h 1 − 2T / h

Dual-rate first-order hold (DR-FOH)


⎡ ⎤ ⎡ ⎤
1 0
⎢ h ⎥ ⎢ h ⎥
⎢ 1+ ⎥ ⎢ − ⎥
⎢ N ⎥ ⎢ N ⎥
⎢ .. ⎥ u(k, h) + ⎢ .. ⎥ u(k − 1, h) (2.29)
⎢ . ⎥ ⎢ . ⎥
⎣ N −1 ⎦ ⎣ N −1 ⎦
1+ h − h
N N
28 2 Review of Signals and Systems

Dual-rate triangular hold (DR-TH)


⎡ ⎤ ⎡ ⎤
1 0
⎢ h ⎥ ⎢ h ⎥
⎢ 1− ⎥ ⎢ ⎥
⎢ N ⎥ ⎢ N ⎥
⎢ .. ⎥ u(k, h) + ⎢ .. ⎥ u(k + 1, h) (2.30)
⎢ . ⎥ ⎢ . ⎥
⎣ N −1 ⎦ ⎣N −1 ⎦
1− h h
N N
Dual-rate slewer hold (DR-SH)
⎡ ⎤ ⎡ ⎤
0 1
⎢ h ⎥ ⎢ h ⎥
⎢ ⎥ ⎢ 1− ⎥
⎢ N. ⎥ ⎢ .. N ⎥
⎢ . ⎥ u(k, h) + ⎢ ⎥ u(k − 1, h) (2.31)
⎢ . ⎥ ⎢ . ⎥
⎣N −1 ⎦ ⎣ N −1 ⎦
h 1− h
N N
Dual-rate fractional-order hold (DR-FROH)
⎡ ⎤ ⎡ ⎤
1 0
⎢ εh ⎥ ⎢ εh ⎥
⎢ 1+ ⎥ ⎢ − ⎥
⎢ N ⎥ ⎢ N ⎥
⎢ .. ⎥ u(k, h) + ⎢ .. ⎥ u(k − 1, h) (2.32)
⎢ . ⎥ ⎢ . ⎥
⎣ N −1 ⎦ ⎣ N −1⎦
1 + εh −εh
N N
Dual-rate moving-average hold (DR-MAH), Q ∈ Z +
⎡ 1 ⎤ ⎡ 1 ⎤
⎢Q⎥ ⎢Q⎥
⎢ ⎥ ⎢ ⎥
⎢ 1 ⎥ ⎢ 1 ⎥
⎢ ⎥ ⎢ ⎥
⎢ Q ⎥ u(k, h) + . . . + ⎢ Q ⎥ u(k − Q + 1, h) (2.33)
⎢ . ⎥ ⎢ . ⎥
⎢ . ⎥ ⎢ . ⎥
⎢ . ⎥ ⎢ . ⎥
⎣ 1 ⎦ ⎣ 1 ⎦
Q Q

2.7.2 Dual-rate Generalized Samplers

The dual-rate generalized sampler is defined as follows.


Definition 2.4 Dual-rate Generalized Sampler or DRGS A DRGS expressed as
ST ,h is a system that receives a bounded discrete-time input signal with period T and
outputs a bounded discrete-time signal at period h. DRGS performs fast-to-slow rate
transition.
2.7 Dual-rate Generalized Holds and Samplers 29

The general expression for the DRGS is given as


⎡ ⎤
u(N (k + j ), T )
⎢ ⎥
 0
r−1
⎢ u(N (k + j ) + 1, T ) ⎥
y(k, h) = [Sj (T , h), Sj1 (T , h), ..., SjN−1 (T , h)] ⎢ . ⎥
j =−q ⎣ .. ⎦
u(N (k + j ) + N − 1, T )
 N−1
r−1 
= Sjw (T , h) u(N(k + j ) + w, T ).
j =−q w=0
(2.34)

A common DRGS is the decimator sampler, or DR-DS, which outputs every N th


input. For the DR-DS, r = 1, q = 0, Sj0 (T , h) = 1 and Sji (T , h) = 0 for i =
1, ..., N − 1. Another DRGS is the dual-rate averager, or DRA, which is given by
⎡ ⎤
  u(N k, T )
1 1 ⎣ ... ⎦
y(k, h) = ···
N N
u(N k + N − 1, T ) (2.35)
1 
N−1
= u(N k + w, T ).
N w=0

For a discrete-time scalar input u(k, T ), lifted as


⎧⎡ ⎤ ⎡ ⎤ ⎫

⎪ u(0, T ) u(N , T ) ⎪


⎨⎢ u(1, T ) ⎥ ⎢ u(N + 1, T ) ⎥ ⎪ ⎬
⎢ ⎥ ⎢ ⎥
u (l, h) = ⎢
L
.. ⎥, ⎢ .. ⎥ , ... (2.36)

⎪ ⎣ . ⎦ ⎣ . ⎦ ⎪ ⎪

⎩ ⎪

u(N − 1, T ) u(2N − 1, T )

the output of the DR-DS is given as

y(l, h) = [1, 0, ..., 0]uL (l, h). (2.37)

As is the case with the DRGH, a DRGS is applied to each entry of a vector signal;
that is, ST ,h = diag{ST1 ,h , ..., STM,h }, where the input vector is in R M and each STi ,h is
given by (2.34), i = 1, ..., M.
Two remarks are given on the DRGH and DR-DS. First, the DRGH can be imple-
mented as an up-sampler followed by a finite impulse response filter [65]. Second,
the DR-DS corresponds to a down-sampler. Decimation can be accomplished by
preceding the DR-DS by an appropriate low-pass filter [65].
Chapter 3
Discretization

Discretization consists of obtaining a discrete-time representation of a continuous-


time controller or system. Discretization is required when the known continuous-time
controllers have to be implemented on digital hardware. With digital computers
being widely spread, modeling and simulations are almost invariably performed in
the discrete-time domain with fixed time steps for relatively fast processing [79].
Discretization for the purpose of fixed time-step simulations is, however, outside the
scope of this book.
Key definitions pertaining to discretization and pathological sampling are given in
Sect. 3.1. The three classical discretization methods known as numerical approxima-
tion, hold equivalence, and matched poles and zeros are explained in Sects. 3.2–3.4.
The formulation of the hold equivalence discretization for multi-input, multi-output
systems is given in Sect. 3.5. A general discretization framework encompassing
multi-interval generalized holds is the subject of Sect. 3.6. Finally, a brief presentation
of nonlinear system discretization is given in Sect. 3.7.

3.1 Definitions

Let us establish the basis for the process of converting continuous-time systems to
discrete-time systems.
Definition 3.1 Discretization of a System A process by which a known continuous-
time system is converted to one evolving in discrete-time, with discrete-time inputs,
outputs and states. The signals evolve over fixed time steps, with a uniform period.
There is a multitude of approaches for the discretization of systems. For real-
time digital control, the controller resulting from the discretization process should
be as simple as possible to constrain the computational demand. This is particularly
important for aerospace systems where compactness, light weight, and low power
consumption are basic requirements.
The main approaches to converting a continuous-time system to a single-rate
discrete-time system are: (1) numerical integration and differentiation, (2) hold
equivalence, and (3) matched poles and zeros. System discretization methods falling

C. A. Rabbath, N. Léchevin, Discrete-Time Control System Design with Applications, 31


DOI 10.1007/978-1-4614-9290-0_3, © Springer Science+Business Media New York 2014
32 3 Discretization

in the first class readily apply to both linear and nonlinear continuous-time systems.
Methods found within these three classes are discussed in [4] and [29].
The traditional approach to digitally implement continuous-time controllers is to
employ a discretization method locally, on each controller, and to embed the resulting
discrete-time controllers on the digital hardware available.
The selection of a sampling or update period is central to the discretization of
a system; therefore, before we present the discretization schemes, we define the
concept of pathological sampling [16].
Definition 3.2 Pathological Sampling For a linear, time-invariant (LTI)
continuous-time system G expressed in state-space form with matrices and vec-
tors A, B, C, and D and discretized as SGH , where H is a hold device and S is the
instantaneous sampler (defined in Chap. 2), the sampling frequency ωs = 2π/T is
pathological if the A matrix has at least two eigenvalues with equal real parts and
imaginary parts that differ by an integral multiple of ωs .
Pathological sampling rarely occurs as one can readily select T , and hence ωs , to
be nonpathological when the continuous-time system model is known. Indeed, the
sampling frequency ωs is nonpathological if it is selected relatively high (small T ).
Pathological sampling affects the controllability and observability properties of a sys-
tem, as discussed in [16]. Briefly, with a pathological sampling frequency, there may
be unobservable or uncontrollable states, thus preventing the design of state feedback
controllers and state estimators. Another consequence of pathological sampling is
the potential for hidden oscillations in the response of a system. When T is patho-
logical, oscillatory modes, if any, of a continuous-time plant may be removed from
a discrete-time system point of view, but actually remain in the continuous-time do-
main. In the time domain, this means that, at the sampling instants, the oscillations
are not present, although they show in between the samples. This results in so-called
intersample ripples [4].

3.2 Numerical Integration and Differentiation

The first of three classical discretization techniques is named numerical integration


and differentiation. A continuous-time system is typically represented by a set of ordi-
nary differential equations, or ODEs. It is natural then to approximate the derivatives
by difference equations for a real-time, discrete-time approximation to the ODEs.
Assuming continuous derivatives for the states of a continuous-time system, an ap-
proximation at any given sampling instant can be performed. The three most widely
used approximations are Tustin’s method, the forward difference method (FDM) and
the backward difference method, or BDM.

3.2.1 Numerical Integration

Tustin’s method can be viewed as a trapezoidal approximation of integration. Tustin’s


method may also be referred to as the bilinear transformation or the trapezoidal
3.2 Numerical Integration and Differentiation 33

Fig. 3.1 Tustin’s method


Signal value

x(k,T) x(t)

x(k-1,T)

time
(k1)T-1)T kT

method. In practice, Tustin’s method is applied as follows [4]. A discrete-time system


approximation is obtained for the transfer function of a continuous-time system
simply by replacing s with
2 z−1
(3.1)
T z+1
or

(3.2)
Tγ +2
where z and γ are the complex variables used in the discrete-time system transfer
functions. The transfer functions are defined in Sect. 2.4.
The approximation of the integral with Tustin’s method is illustrated in Fig. 3.1.
Consider the integration of signal x(t) from 0 to t. The output of the integral is
u(t). We want to approximate this integral using the sampled values of x(t), and
output a discrete-time signal u(k, T ). Let u(k − 1, T ) be the value of the integration
approximation up to and including time t = (k − 1)T . With the understanding that
the integration between (k − 1)T and kT is actually the area under the curve of x(t)
and that we approximate using the discrete-time samples, we thus have a line joining
x(k − 1, T ) and x(kT ) and write the result of the integration approximation as

T
u(k, T ) = u(k − 1, T ) + x(k − 1, T )T + (x(k, T ) − x(k − 1, T )) (3.3)
2
or as
T q +1
u(k, T ) = x(k, T ) (3.4)
2 q −1
when employing the shift operator.
34 3 Discretization

Fig. 3.2 Structural


interpretation of numerical D
approximation methods +
u(t) + x(t) + y(t)
B ∫ C
+

A
x(t) Continuous-time state
u(t) Continuous-time
Ci ii input

a y(t) Continuous-time output

D
+
u(k,T) + + y(k,T)
B H ∫ S C
+
Hold equivalence of I / s

A
u(k,T) Discrete-time input
y(k,T) Discrete-time output
b

One may convert the expression for u(k, T ) to the complex domain, using the Z
transform, and obtain the following approximation to the integration
T z+1
U (z) = X(z) (3.5)
2 z−1
when using only the samples of the input to the integrator, and a straight-line ap-
proximation to the curve connecting the samples of x(t). The approximation to the
integration is then used to convert the transfer function of the continuous-time sys-
tem to one in discrete-time. To convert a continuous-time state-space form into a
discrete-time system, one (1) replaces the left-hand side derivative of the state by its
approximation, (2) formulates the equation for the states, inputs and outputs at the
sampling instants, and (3) writes in terms of the shift or the delta operator.
Alternatively, we can formulate the numerical approximation process by means
of a state-space structure. Figure 3.2a corresponds to the classical state-space form
of a continuous-time system with matrices and vectors A, B, C, and D. Figure 3.2b
is a numerical approximation given as a structure using the state-space matrices and
vectors of the continuous-time system, and carefully selected hold H and instan-
taneous sampler S. Interestingly, hold equivalence of the integration is part of the
numerical approximation process, as shown in Fig. 3.2b.
With reference to Fig. 3.2b, and using the expression for the GH given in Sect. 2.5,
the state and the output equations of the numerical approximation process formulated
as a state-space structure is described in delta form as
3.2 Numerical Integration and Differentiation 35

T 
m−1
δx(k, T ) = 1
T v=0 hj (v)Ax(k − j , T )dv
j =−l
T 
m−1
+ T1 v=0 hj (v)Bu(k − j , T )dv, (3.6)
j =−l

x(0, T ) = 0n×1 , m, l ∈ R,
y(k, T ) = Cx(k, T ) + Du(k, T ).

In Eq. (3.6), the discrete-time state corresponds to the output of the instantaneous
sampler.
With Tustin’s method, the state-space form is

2 q−1
T q+1
x(k, T )= Ax(k, T ) + Bu(k, T ),
 −1  2   −1
x(k + 1, T ) = T2 I − A T
I + A x(k, T ) + T2 I − A
(3.7)
B (u(k + 1, T ) + u(k, T )) ,
y(k, T ) = Cx(k, T ) + Du(k, T ).

The delta form is



T A −1 T A −1 B
δx(k, T ) = I − Ax(k, T ) + I − (u(k + 1, T ) + u(k, T )) ,
2 2 2
y(k, T ) = Cx(k, T ) + Du(k, T ). (3.8)

To eliminate the term u(k + 1, T ) in the right-hand side of Eqs. (3.7) and (3.8), define

AT T
v(k, T ) = I − x(k, T ) − Bu(k, T ). (3.9)
2 2
Then, the state equation in delta form and the output equation are written as

AT −1 AT −1
δv(k, T ) = I − Av(k, T ) + I − Bu(k, T )
2 2


!
AT −1 AT −1 T
y(k, T ) = C I − v(k, T ) + C I − B + D u(k, T ).
2 2 2
(3.10)

The structural interpretation of Tustin’s method is given in Fig. 3.3. A triangular hold,
or TH, is placed in front of the integrator. The response of TH to a unit discrete-time
pulse is shown in Fig. 3.3b.
The output of TH, written here as y(t), is given as follows when subject to an
input u(k, T )
u(k + 1, T ) − u(k, T )
y(t) = (t − kT ) + u(k, T ), t ∈ [kT , (k + 1)T ). (3.11)
T
36 3 Discretization

Fig. 3.3 Tustin’s method. a D


Structural interpretation b
+
Response of triangular hold to u(k,T) + + y(k,T)
a unit discrete-time pulse B TH ∫ S C
+

a A

1 X 1

t
t
0 T
TH -T 0 T

Fig. 3.4 Example of a


triangular hold. a Input signal u(1,T)
b Response of the hold for X
u(0,T)
each input sample c Total X
response of hold as a sum of u(2T)
u(2,
X
contributions

X X time

a -T 0 T 2T 3T

u(1,
u(1T)
X
u(0,T)
X u(2,T)
X

X X time

b -T 0 T 2T 3T

u(1,
u(1T)
X
u(0,T)
X u(2,T)
X

X X time

c -T 0 T 2T 3T

With respect to Eq. (3.6), TH is characterized by h0 (τ ) = (1 − τ )/T and


h−1 (τ ) = τ/T . Hold TH outputs a continuous-time signal made of segments
joining successive values of the discrete-time input. As an example, Fig. 3.4 presents
3.2 Numerical Integration and Differentiation 37

the response obtained with TH for some input u(k, T ). Fig. 3.4a shows the input.
Fig. 3.4b presents the response of the hold for each input sample. The total response
of the hold is a sum of the contributions, which is shown in Fig. 3.4c. In this example,
hold responses are cumulated within time intervals [0, T ) and [T , 2 T ).
With the structural interpretation of Tustin’s method, the state-space expression of
Eq. (3.7) is obtained as follows. For the sake of simplicity, the initial state is assumed
to be the origin. Let the output of the instantaneous sampler in Fig. 3.3a be the state
x(k, T ). Then, it follows that the output of the discrete-time system is given as

y(k, T ) = Cx(k, T ) + Du(k, T ). (3.12)

Let the input to the TH in Fig. 3.3a be represented as w(k, T ). Clearly,

w(k, T ) = Ax(k, T ) + Bu(k, T ). (3.13)

The relationship between w(k, T ) and x(k, T ) is given as


T
x(k + 1, T ) = x(k, T ) + T w(k, T ) + (w(k + 1, T ) − w(k, T )) (3.14)
2
where the signals are vectors of the same dimension. To obtain Eq. (3.14), write the
integrator system as
dx(t)
= u(t). (3.15)
dt
Use Eq. (3.15) along with the expression for the state of a LTI continuous-time system
given as
" t
x(t) = eA(t−t0 ) x(t0 ) + eA(t−τ ) Bu(τ )dτ (3.16)
τ =t0

to obtain the state of the integrator as


" t
x(t) = x(t0 ) + u(τ )dτ. (3.17)
τ =t0

Let t0 = kT and t = kT + T . Knowing that the input to the integrator is the output
of the TH, we write
" T
x(kT + T ) = x(kT ) + u(τ + kT )dτ (3.18)
τ =0

" #$
T
τ% τ &
x(kT + T ) = x(kT ) + 1− wk + wk+1 dτ (3.19)
τ =0 T T
38 3 Discretization

Fig. 3.5 Forward difference


method x((k+1)T)
x(kT)
x(t)

t
kT (k+1)T

T2 T2
x(kT + T ) = x(kT ) + T − wk + wk+1
2T 2T
T T
= x(kT ) + wk + wk+1 . (3.20)
2 2
At the output of the instantaneous sampler, we thus have Eq. (3.14).
Using Eq. (3.13), and substituting for w(k, T ) in Eq. (3.14), we obtain

x(k + 1, T ) = x(k, T ) + T Bu(k, T ) + T Ax(k, T )


+ T2 [B (u(k + 1, T ) − u(k, T )) + A (x(k + 1, T ) − x(k, T ))] ,
 −1  2   −1
= T2 I − A T
I + A x(k, T ) + T2 I − A B [u(k + 1, T )
+ u(k, T )] .
(3.21)

Alternatively, one could start with Eq. (3.6), use the expression for the TH, and derive
Eqs. (3.12) and (3.21).

3.2.2 Approximation of the Derivative

The numerical approximation technique known as FDM relies on an approximation


of the derivative of the state. The approximation is given as
'
dx '' x(t + T ) − x(t)
'  (3.22)
dt t=kT T

where one writes


x(t + T ) − x(t) q −1
= x(t), (3.23)
T T
as shown in Fig. 3.5. The discrete-time state-space form is written as

x(k + 1, T ) = (T A + I ) x(k, T ) + T Bu(k, T )


y(k, T ) = Cx(k, T ) + Du(k, T ), (3.24)
3.2 Numerical Integration and Differentiation 39

Fig. 3.6 Modified zero order


1 X 1
hold

t t
-T 0 T
0 T
MZOH

C ti
Continuous-time
ti signal
i l
Discrete-time signal

or in delta form as

δx(k, T ) = Ax(k, T ) + Bu(k, T )


y(k, T ) = Cx(k, T ) + Du(k, T ). (3.25)

The structural interpretation of FDM is depicted in Fig. 3.2b, with hold H being the
ZOH.
The technique known as BDM approximates the derivative of the state as
'
dx '' x(t) − x(t − T )
'  , (3.26)
dt t=kT T
with expression

x(t) − x(t − T ) 1 − q −1
= x(t). (3.27)
T T
State-space forms are obtained for a BDM-approximated system as

x(k + 1, T ) = (I − AT )−1 x(k, T ) + (I − AT )−1 T Bu(k, T )


 
y(k, T ) = C (I − AT )−1 x(k, T ) + C (I − AT )−1 T B + D u(k, T ) (3.28)

and

δx(k, T ) = (I − AT )−1 Ax(k, T ) + (I − AT )−1 Bu(k, T )


 
y(k, T ) = C (I − AT )−1 x(k, T ) + C (I − AT )−1 T B + D u(k, T ). (3.29)

It should be emphasized that state x(k, T ) in Eqs. (3.28) and (3.29) is not a sampled
version of state x(t) of the continuous-time system. The structural interpretation of
BDM is depicted in Fig. 3.2b, with hold H being the modified ZOH, or MZOH.
Figure 3.6 illustrates the response of MZOH to a unit discrete-time pulse.

3.2.3 Stability

The state matrix differs from one approximation to another. Hence, a continuous-
time eigenvalue is mapped at different locations in the complex plane, depending
40 3 Discretization

s-plane
Im(s) z-plane
FDM Im(z)

Re(s) Re(z)
0 1

z-plane z-plane
Im(z) Im(
Im(z)
Tustin
BDM
Re(
Re(z) Re(z)
0 1 1

Fig. 3.7 Internal stability regions for different numerical approximations

on the numerical approximation method used. z-plane stability regions for Tustin’s
method, FDM and BDM are shown in Fig. 3.7. With Tustin’s method, the left-hand
side of the s-plane is mapped within the unit circle in the z-plane. Instability may
result with FDM, since part of the left-hand side of the s-plane is mapped outside
of the unit circle in the z-plane. BDM places all eigenvalues within the unit circle of
the z-plane, albeit in a confined circular region. Recall that the internal stability of a
system depends on the location of its eigenvalues [72].
The numerical integration/differentiation methods readily apply to the discretiza-
tion of nonlinear continuous-time systems. As long as the dynamics of a system are
expressed as a set of ODEs, a numerical approximation is possible.

3.3 Hold Equivalence

The second classical discretization technique is known as hold equivalence. With


such a discretization, a discrete-time system can be designed such that it outputs the
same signal as that of a known continuous-time system, at the sampling instants, for
a given input signal.
To carry out hold equivalence, we consider three steps. Figure 3.8a shows the
block diagram. First, we assume that a particular input enters the continuous-time
system G; for example, the unit step. Second, we select a hold H , having update
period T , which outputs the required signal when receiving a certain type of discrete-
time input. For example, a discrete-time unit step followed by a ZOH results in a
3.3 Hold Equivalence 41

H G S
Hold Continuous-time system Instantaneous sampler

a Hold-equivalent discrete-time system

1X X X X X

t 1 X X
X
0 T 2T 3T 4T X
X t
1 0 T 2T 3T 4T

t
0

ZOH G S

1 1

t
0 G
b
Fig. 3.8 a Hold equivalence b Unit step input example

continuous-time unit step. Third, we place an instantaneous sampler S, with period


T , at the output of the continuous-time system. We end up with a discrete-time
system SGH . Outputs of SGH and G coincide at integral multiples of T .
The zero-order hold equivalence, or step-invariant model (SIM), is shown in
Fig. 3.8b. For such a case, the outputs of G and SGH agree at integral multiples of
T provided a unit discrete-time step is the input to SGH whereas a unit step is the
input to G.
With an LTI continuous-time system having state-space matrices and vectors given
as A, B, C, D, defined in the usual manner, the expression for the system obtained
with hold equivalence, also named a hold-equivalent discrete-time system, using the
generalized hold expression derived in Chap. 2, is given in the delta form as

$ %
eAT −I
δx(k, T ) = T
x(k, T )
T A(T −v)

m−1
+ T1 v=0 e B hj (v)dv · u(k − j , T ) (3.30)
j =−l

m−1
y(k, T ) = Cx(k, T ) + D hj (0) · u(k − j , T ).
j =−l
42 3 Discretization

Fig. 3.9 First-order hold 2

1 X 1

t
t
0 T
FOH 0 T 2T

-1

Fig. 3.10 Slewer hold


1 X 1

t t
0 T SH 0 T 2T

For the SIM, one uses the expression of the ZOH given in Chap. 2 and substitutes it
in Eq. (3.30) to obtain
AT
" T

e −I 1
δx(k, T ) = x(k, T ) + eA(T −v) Bdv u(k, T )
T T v=0
y(k, T ) = Cx(k, T ) + Du(k, T ). (3.31)

Note that [63]


" T " T
1 A(T −v) 1
e dv = eAw dw. (3.32)
T v=0 T w=0

The structure of a hold-equivalent discrete-time system is fixed. Several types of


holds can, however, be used to obtain different discrete-time systems. Besides the
ZOH, classical holds include the triangular hold (TH), the first-order hold (FOH),
and the slewer hold (SH), to name a few.
Figure 3.3b shows the triangular hold. With a TH, the discrete-time system ob-
tained is known as a ramp-invariant model (RIM). This means that the outputs of the
continuous-time system and the hold-equivalent model agree at the samples when
subject to a ramp input. Figure 3.9 shows the first-order hold (FOH). The output of
an FOH is given as
u(k, T ) − u(k − 1, T )
y(t) = (t − kT ) + u(k, T ), t ∈ [kT , (k + 1)T ). (3.33)
T
Figure 3.10 shows the slewer hold (SH) or delayed TH. The output of an SH is given
as
u(k, T ) − u(k − 1, T )
y(t) = (t − kT ) + u(k − 1, T ), t ∈ [kT , (k + 1)T ).
T
(3.34)
Other holds include the fractional-order hold (FROH), exponential hold (EH), mov-
ing average hold (MAH), and predictive weighted moving average hold on n samples
3.3 Hold Equivalence 43

Table 3.1 Various hold expressions


Zero-order hold (ZOH) (m = 1 and l = 0) h0 (τ ) = 1
First-order hold (FOH) (m = 2 and l = 0) h1 (τ ) = −τ/T
h0 (τ ) = 1 + τ/T
Triangular hold (TH) (m = 1 and l = 1) h0 (τ ) = 1 − τ/T
h−1 (τ ) = τ/T
Slewer hold (SH) (m = 2 and l = 0) h1 (τ ) = 1 − τ/T
h0 (τ ) = τ/T
Fractional-order hold (FROH) (m = 2 and l = 0) h1 (τ ) = −
· τ/T ,
∈ R
h0 (τ ) = 1 +
· τ/T
Exponential hold (EH) (m = 1 and l = 0) h0 (τ ) = e−aτ , a ∈ R
Moving average hold (MAH) h2 (τ ) = 1/3
on 3 samples (m = 3 and l = 0) h1 (τ ) = 1/3
h0 (τ ) = 1/3
Predictive weighted moving h1 (τ ) = h1 ∈ R
average hold on 4 samples (PWMAH4) h0 (τ ) = h0 ∈ R
(m = 2 and l = 2) h−1 (τ ) = h−1 ∈ R
h−2 (τ ) = h−2 ∈ R

(PWMAHn), to name a few. Table 3.1 provides the expressions for the holds
presented in this section. In short, to write the state and output equations of a discrete-
time system obtained with hold equivalence, one takes the expression for the hold
of interest from Table 3.1 and substitute it in Eq. (3.30).
A few remarks on hold equivalence are in order. First, causal holds are charac-
terized by the fact that their output depends on current and/or past inputs. This is
the case for ZOH and SH. When the current output of a hold depends on the value
of the input at the next time step(s), the hold is noncausal. A noncausal hold is un-
suitable for a real-time implementation. TH is a noncausal hold. Second, with hold
equivalence methods, the continuous-time eigenvalues λi of matrix A are mapped
to the discrete-time domain by means of the exponential eλi T when expressed in the
shift state-space form [4]. This is different from the mapping of eigenvalues resulting
from numerical integration and differentiation approximations. Third, hold equiva-
lence requires calculating an exponential matrix and an integral relating the state to
the input, when expressed in state-space form. The exponential and integral in series
form [29], [56] are given as

eAv = I + Av + 2!1 A2 v2 + 1 3 3
3!
A v + ...
∞
(3.35)
= 1 m m
m!
A v ,
m=0

and
T T  
w=0 eAw dw = w=0 I + Aw + 1 2 2
2!
A w + 1 3 3
3!
A w + . . . dw

∞ (3.36)
=T 1
(m+1)!
(AT )m .
m=0
44 3 Discretization

The series in Eqs. (3.35) and (3.36) is truncated to ensure that the update of the state
is done over a constrained time interval. There exist mathematical algorithms that
enable rapid convergence of a series, as discussed in [56].

3.4 Matching Poles and Zeros

The third classical discretization technique is known as matched poles and zeros. The
basic principle of the matched pole-zero, or MPZ, discretization is to map the finite
poles pj and the finite zeros zi of a continuous-time system to, respectively, poles
pjz and zeros ziz in the discrete-time z-plane according to pjz = epj T and ziz = ezi T
[29], where T is the sampling period.
An LTI continuous-time system G with transfer function
(
m
(s − zj )
j =1
G(s) = K m (3.37)
(
(s − pi )
i=1

is converted to a discrete-time system, with transfer function in z and with sampling


period T , by mapping the finite poles pi and zeros zi through the exponential given
as

piz = epi T , ziz = ezi T . (3.38)

The discrete-time transfer function in z is


(
m
(z − ezj T )
j =1
G(z, T ) = z
KMP Z (m , (3.39)
(z − e pi T )
i=1

whereas the transfer function in γ is


m $
( z T
%
(1−e j )
γ+ T
γ j =1
G(γ , T ) = KMP Z m $ %. (3.40)
( 1−epi T
γ+( T )
i=1

z γ
Gains KMP Z and KMP Z are generally calculated based on a steady-state requirement.
These gains may be functions of T . Actually, there exist some variants to the MPZ
method pertaining to the selection of the gains [58] and the addition of finite zeros
[42]. For matrix transfer functions, the MPZ technique may be applied to each matrix
entry.
3.5 Hold Equivalence and Multivariable Systems 45

Fig. 3.11 Hold equivalence u1(k,T)


y1(k,T)
structure for a multi-input, H1 S
multi-output system u2(k,T)
H2 S y2(k,T)
G


up(k,T)
Hp S yr(k,T)

3.5 Hold Equivalence and Multivariable Systems

For multi-input, multi-output systems, hold equivalence discretization requires one


hold per input channel, denoted as H i with i = 1, . . ., p for a p-input system, and one
instantaneous sampler per output channel. The samplers are represented by S in each
channel. A unique symbol is attributed to all the samplers since we consider one type
of sampler in this book, as opposed to the holds. The structure is shown in Fig. 3.11.
The continuous-time multi-input, multi-output system has the following state-
space representation

⎡ ⎤ ⎡ ⎤ ⎡ ⎤
ẋ1 (t) x1 (t) u1 (t)
⎢ ẋ2 (t) ⎥ ⎢ x2 (t) ⎥ ⎢ u2 (t) ⎥
⎢ ⎥ ⎢ ⎥ ⎢ ⎥
⎢ .. ⎥ = A⎢ .. ⎥+B⎢ .. ⎥
⎣ . ⎦ ⎣ . ⎦ ⎣ . ⎦
ẋn (t) xn (t) up (t)
⎡ ⎤ ⎡ ⎤ ⎡ ⎤ . (3.41)
y1 (t) x1 (t) u1 (t)
⎢ y2 (t) ⎥ ⎢ x2 (t) ⎥ ⎢ u2 (t) ⎥
⎢ ⎥ ⎢ ⎥ ⎢ ⎥
⎢ .. ⎥=C⎢ .. ⎥+D⎢ .. ⎥
⎣ . ⎦ ⎣ . ⎦ ⎣ . ⎦
yr (t) xn (t) up (t)

The B and D matrices are written as


⎡ ⎤
b11 b12 · · · b1p
⎢ b21 b22 · · · b2p ⎥
⎢ ⎥
B=⎢ . .. ⎥
⎣ .. . ⎦ (3.42)
bn1 bn2 ··· bnp
 
= b1 b2 b3 · · · bp ,

and
⎡ ⎤
d11 d12 · · · d1p
⎢ d21 d22 · · · d2p ⎥
⎢ ⎥
D=⎢ .. .. ⎥
⎣ . . ⎦ (3.43)
dr1 dr2 ··· drp
 
= d1 d2 d3 · · · dp .
46 3 Discretization

Matrices B and D are represented in terms of bij and dij scalar entries, or in terms
of bi and di column vectors. With this knowledge, we write the equations of the hold
equivalence discretization of system (3.41) as
" T  
p m−1
x(k + 1, T ) = e AT
x(k, T ) + eA(T −v) bi hij (v)ui (k − j , T )dv, (3.44)
v=0 i=1 j =−l

⎡ ⎤
y1 (k, T )
⎢ y2 (k, T ) ⎥ 
p
⎢ ⎥
⎢ .. ⎥ = Cx(k, T ) + di hi0 (0)ui (k, T ) (3.45)
⎣ . ⎦
i=1
yr (k, T )

following the structural interpretation shown in Fig. 3.11 and the expression for the
generalized hold given in Chap. 2.

3.6 Hold Equivalence and Generalized Holds

Hold equivalence discretization is performed with the multi-interval generalized


hold of Sect. 2.5. The structure is as shown in Fig. 3.8a with a GH preceding the
continuous-time system G. GH bears the symbol H . The resulting state-space and
output equations in the delta form are given in Eq. (3.30).
Actually, the SIM and RIM, and the other classical hold equivalences, are special
cases of multi-interval GH discretization. With the use of a GH that has a non-zero
response over several time intervals, there is an increase expected in the order of the
discrete-time transfer function and in the state-space. Theorem 3.1 clarifies this idea
for single-input, single-output (SISO) systems.
Theorem 3.1 Suppose hold H preceding the plant in the hold equivalence dis-
cretization structure is a multi-interval generalized hold. Hold H is assumed (1) not
to introduce discrete-time pole-zero cancelations to the discrete-time system result-
ing from hold equivalence, (2) to produce a bounded continuous-time output which
is a linear function of the discrete-time input, and (3) to have a nonzero discrete-time
pulse response over the first m sampling intervals in t ≥ 0, i.e. [0, T ), [T , 2 T ),
· · · , [(m − 1)T , mT ), and over the first l sampling intervals in t < 0, i.e. [0, −T ),
[ − T , −2 T ), · · · , [( − l + 1)T , −lT ), where m ∈ Z + and l ∈ Z + ∩ {0}. S is the
instantaneous sampler synchronized with H at an update period of T . Period T is
nonpathological with respect to the continuous-time system G.
System G is linear, time-invariant of order n, and defined in the usual manner in
state-space form as
dx(t)
= Ax(t) + Bu(t)
dt (3.46)
y(t) = Cx(t) + Du(t)
3.6 Hold Equivalence and Generalized Holds 47

with A ∈ R n×n , B ∈ R n×1 , C ∈ R 1×n , and D ∈ R.


Then, the discrete-time system obtained with hold equivalence is linear, shift
invariant of order m + n − 1. 1
Proof: With the integrand sum being finite in Eq. (3.30), one writes:



m−1 "
eAT − I 1 T
δx(k, T ) = x(k, T ) + eA(T −v) Bhj (v, T )dv · u(k − j , T ).
T T
j =−l  v=0
 
=Fj (A,B,T )
(3.47)
Take the Z-transform on each side of the last equation, assuming zero initial
conditions, we get
zX(z) = eAT X(z) + T F−l (A, B, T )zl U (z) + · · · + T F0 (A, B, T )U (z) + · · ·
+ T Fm−1 (A, B, T )z−m+1 U (z).
(3.48)
Then
Y (z)
U (z)
= C(zI − eAT )−1 (T F−l (A, B, T )zl + · · · + T F0 (A, B, T ) + · · ·

m−1 (3.49)
+ T Fm−1 (A, B, T )z−m+1 ) + D hj (0, T )z−j .
j =−l

Rewriting:
⎛ ⎞
CAdj (zI − eAT )(T F−l (A, B, T )zl+m−1 + · · · + T F0 (A, B, T )zm−1
⎝ ' ' m−1 ⎠
+ · · · + T Fm−1 (A, B, T )) + 'zI − eAT ' D hj (0, T )z−j +m−1
Y (z) j =−l
= ' ' .
U (z) zm−1 'zI − eAT '
(3.50)
With the assumptions on the generalized hold, the order of the resulting discrete-time
system with transfer function given by Eq. (3.50) is m + n − 1. 2
Equation (3.50) in the proof of Theorem 3.1 specifies the location of the additional
poles. The m − 1 additional poles are located at the origin of the z-plane. As T → 0,
these poles have a fixed location on the z-plane. The same poles, mapped to the
γ -plane, move towards −∞ since γ = (z − 1)/T .
Therefore, n poles of the transfer function given by

'
Y (γ ) Y (z) ''
= (3.51)
U (γ ) U (z) 'z=T γ +1

approach the eigenvalues of (sI −eAT )/T and m−1 poles approach −∞, as T → 0.
There is a decoupling taking place between fast and slow dynamics with a reduction
in the sampling period T .
48 3 Discretization

In determining l and m, one should recall that within the first l sampling intervals
for t < 0, and the first m sampling intervals for t ≥ 0, all of the nonzero discrete-time
pulse response components of the hold must appear. The conditions ensuring proper-
ness of the discrete-time system with hold equivalence are stated in Corollary 3.1.
Corollary 3.1 With the conditions of Theorem 3.1 satisfied, the discrete-time system
obtained with hold equivalence is proper if either of these two conditions is satisfied:
1) For strictly proper G(s), l ∈ {0, 1};
2) For biproper G(s), l = 0, or l = 1 and h−1 (0) = 0. 1
Proof: Immediate from proof of Theorem 3.1. 2
Even though a hold is noncausal, such as the triangular hold, the resulting discrete-
time system may be bi-proper.

3.7 Discretization of Nonlinear Systems

We present techniques to discretize certain classes of nonlinear continuous-time


systems.

3.7.1 Incremental Model Approximation

This classical approach relies on a linear approximation of a nonlinear system in


the neighborhood of specific states and inputs. A designer may apply numerical
approximation, hold equivalence, or matched poles and zeros on the linear, time-
invariant model.
With such an approach, one discretizes the nonlinear system given by Eq. (3.52)
around an equilibrium point. The nonlinear system models the mobile platform dy-
namics, and possibly the actuation and sensing components. The equilibrium point
may correspond to a specific combination of vehicle velocity, altitude, and angle of
attack, for which a model of the system exists. One obtains an incremental LTI model
of the continuous-time nonlinear system at the equilibrium point of interest, for ex-
ample using Taylor series approximation, and then applies any of the aforementioned
discretization methods.
One may repeat this process for all the equilibrium points and store the system
parameters in a table. Depending on the current state of the mobile platform, the
control system selects the appropriate system parameters from stored tables. This
parameter selection process is repeated at each time step. The latter is called gain
scheduling when managing discrete-time controller parameter selection [2], [73].

dx
= f (x, u)
dt (3.52)
y(t) = h(x, u)
3.7 Discretization of Nonlinear Systems 49

3.7.2 Numerical Approximation

Using a nonlinear state-space representation, one may approximate the derivative


numerically and include in the loop the signals at the discrete-time instants. To
discretize Eq. (3.52), one approximates the derivative on the left-hand side using
a numerical approximation, substitutes for the discrete-time signals on the right-
hand side, and obtains the equations for the update of the discrete-time state, output
and input signals at each time step. For example, consider applying FDM on the
continuous-time system given by Eq. (3.52). Starting with Eq. (3.52), the resulting
discrete-time state equation is

δx(k, T ) = f (x(k, T ), u(k, T )). (3.53)

The discrete-time output equation is

y(k, T ) = h(x(k, T ), u(k, T )). (3.54)

Alternatively, if one can describe a nonlinear system as an interconnection of inte-


grators, one can numerically approximate the system using the principles of hold
equivalence and numerical integration described in Sects. 3.2, 3.3, 3.5, and 3.6 as
applied to each integrator.

3.7.3 Discretization of Affine-in-the-input Systems

Consider the nonlinear system

dx(t)
dt
= f (x(t)) + g(x(t))u(t),
(3.55)
y(t) = h(x(t)).

The system is affine in the input. In Eq. (3.55) x ∈ R n , u ∈ R m , f : R n −→ R n ,


g : R n×m −→ R n and h : R n −→ R p . Define an auxiliary input

v(t) = f (x(t)) + g(x(t))u(t) (3.56)

to reformulate the state equation in Eq. (3.55) as


dx(t)
= v(t). (3.57)
dt
The solution to Eq. (3.57) is
" t
x(t) = x(t0 ) + v(τ )dτ. (3.58)
τ =t0
50 3 Discretization

Let v(t) be approximated by a generalized hold manipulating the result of Eq. (3.56),
which acts on discrete-time signals, namely

v(k, T ) = f (x(k, T )) + g(x(k, T ))u(k, T ), (3.59)

so that

m−1
v(t)  hj (τ ) (f (x(k − j , T )) + g(x(k − j , T ))u(k − j , T )) . (3.60)
j =−l

The state of the system given by Eq. (3.55) is approximated in the discrete-time
domain as
T 
x(k + 1, T ) = x(k, T ) + τ =0 m−1
j =−l hj (τ )dτ · vk−j
 T m−1
= x(k, T ) + τ =0 j =−l hj (τ )dτ · (f (x(k − j , T )) (3.61)
+ g(x(k − j , T ))u(k − j , T )).

The approximation of v(t) by v(k, T ) in Eq. (3.60) is performed with a single hold
device. Different holds may be employed for the two functions on the right-hand side
of Eq. (3.55). This allows the designer to take into account the possible time scale
separation, the causality constraint of the input signals, and the continuity property
of the input signals.
Therefore, we place a generalized hold, denoted as H f , at the output of f (x(k, T )),
and a generalized hold H g after g(x(k, T ))u(k, T ). The holds are defined according
to Eq. (2.19) (from Sect. 2.5) with the appropriate superscript. The hold is applied
to each entry of a vector signal. To approximate the auxiliary input, functions f
and g are applied to discrete-time state and input signals instead of the original
continuous-time signals. We obtain


m−1
f

m−1
g
v(t)  hj (τ )f (x(k − j , T )) + hj (τ )g(x(k − j , T ))u(k − j , T ), τ ∈ [0, T ),
j =−l j =−l
(3.62)

and the discrete-time state equation is


T  f
x(k + 1, T ) = x(k, T ) + τ =0 m−1 j =−l hj (τ )dτ · f (x(k − j , T ))
T  g
(3.63)
+ τ =0 m−1j =−l hj (τ )dτ · g(x(k − j , T ))u(k − j , T ).

We note that generalized hold H g is applied to g(x(k, T ))u(k, T ), not u(k, T ). For
output y(k, T ), function h takes argument x(k, T ) instead of the continuous-time
state.
Chapter 4
Models

In this chapter we establish the fundamental relationships that exist between discrete-
time and continuous-time control systems as the update rate is increased. The
objective is to formalize the idea that, with faster sampling, the behavior of a discrete-
time system resembles, or models, that of a continuous-time system. In this sense, a
discrete-time system is a model of a continuous-time system.
We present conditions on the elements present in a digital control loop which make
a system a model. Two types of model are put forth in this book: discrete-time and
sampled-data models. The former pertains to the discrete-time system only, whereas
the latter includes holds and samplers.
The concepts of discrete-time and sampled-data models apply to linear and
nonlinear systems, although the conditions we present pertain mostly to linear,
time-invariant systems.

4.1 Models for Discrete-time Control

The notion of model is helpful in the design of discrete-time controllers: the


time-domain performance of the loop signals of interest is guaranteed under certain
conditions.

4.1.1 Systems

A discrete-time approximation to the system under control, or plant, is required to


design discrete-time controllers. The controller receives a discrete-time signal com-
ing from the plant, and outputs a discrete-time signal directed to the hold preceding
the plant, as shown in Fig. 4.1. Clearly, the discrete-time plant is obtained from a hold
equivalence discretization, a concept presented in Chap. 3. When the discretization
results in a discrete-time plant model, the designer knows that the input-output be-
havior of the plant approaches that of the continuous-time plant in ways discussed in
Sects. 4.2 to 4.4; thus, ensuring known time trajectories for relatively fast sampling.

C. A. Rabbath, N. Léchevin, Discrete-Time Control System Design with Applications, 51


DOI 10.1007/978-1-4614-9290-0_4, © Springer Science+Business Media New York 2014
52 4 Models

Fig. 4.1 Discrete-time plant


model H G S
Hold Continuous-time Instantaneous
system or plant sampler

Discrete-time system

From To
controller controller

Fig. 4.2 Example of


discrete-time controller C3 DT
D N
models and time trajectories + + +
RDT + + + + YDT
C2 DT
-
H G S

C1 DT

C3 D N
+ + +
R + + + U + Y
C2 -
G

C1

The input-output time trajectories of a discrete-time controller model approach,


in some sense, those of a continuous-time controller with an increase in the sampling
rate. Then, the continuous-time controller may serve as a yardstick against which
the performance of the discrete-time controller is compared: at least, in the limit,
a known performance is expected. Intuitively, if each controller block (also termed
a subsystem) is a model of a continuous-time block, we expect that the signals of a
discrete-time closed-loop system encompassing several controller blocks approach
those respective signals of a known continuous-time system having the same feedback
structure. This idea is formalized in Sects. 4.2 to 4.4, and exemplified in Fig. 4.2. For
the example shown in Fig. 4.2, we expect time trajectories of UDT (discrete-time plant
input) and YDT to approach those of signals U and Y , respectively, as the sampling
or control update period T of the discrete-time controller blocks approaches zero,
provided C1DT , C2DT and C3DT are discrete-time models of C1 , C2 and C3 , respectively.
In this example, the controller blocks operate at the same rate of 1/T Hz.
Having a model for a closed-loop system ensures that a time-domain performance
can be achieved, in the limit, from exogenous inputs to control input and plant output.
For example, in Fig. 4.3, if the exogenous inputs to the discrete-time control system in
Fig. 4.3b, that is R(k, T ), D(t), N (t), approach those of the continuous-time system
in Fig. 4.3a, and systems M DT and F DT approach systems M and F , respectively,
one expects that the time-domain performance of signal YDT (k, T ) approaches that
of continuous-time signal Y (t) as the update rate is increased. This is so even if the
domains of the signals are different, as explained in Sect. 4.2.
4.1 Models for Discrete-time Control 53

D N
R + U +
+ + + Y
G
-

R R
D U D Y
M F
N N
Exogenous Control
Exogenous Plant output
inputs input
inputs
a

D N
RDT + +
+U
SD +
+ YDT
-
H G S

CDT

RDT RDT
D USD D YDT
MDT FDT
N N
Discrete- and Continuous-time Discrete- and Discrete-time
continuous-time plant input continuous-time plant output
inputs inputs
b
Fig. 4.3 Closed-loop system models

4.1.2 Discretization Methods and Models

The discretization methods presented in Chap. 3 provide various ways to approx-


imate a continuous-time system. The resulting discrete-time system, however, is
not automatically a model in the sense presented in this book. To obtain a model,
assuming that the only type of sampler considered is the instantaneous sampler,
the designer must carefully select the hold devices employed in the discretization.
54 4 Models

Furthermore, the steady-state behavior of the discrete-time system must be carefully


tuned so that a correspondence takes place between time trajectories of the discrete-
time and continuous-time systems, as is the case for example when performing
matched pole-zero (MPZ) discretization.

4.1.3 Limitations

When presenting the concepts of models, we ignore the effects associated with a
practical digital implementation. By constrained digital implementation, or CDI, we
refer to an implementation of a discrete-time control system subject to the following:
finite wordlength representation, fixed-point or (constrained) floating-point comput-
ing, control update and sampling rates limited by hardware and subject to variations,
and discrete-time signal quantization. The extent of the CDI effects on closed-loop
system performance depends on the severity of such effects, and on the sensitivity
of the control system to these implementation conditions.
Therefore, under CDI effects, the convergence of a digital control system to a
known continuous-time feedback system may not be achievable. Some of the CDI ef-
fects can be emulated in simulation and even be tested under controlled experimental
conditions. This is a topic of the latter chapters of this book.

4.2 Single-rate Discrete-time Models

The concept of a single-rate discrete-time model of a continuous-time system is in-


troduced in [59], [78]. Discrete-time models formalize the fundamental relationship
that intuitively exists between discrete-time and continuous-time systems in the limit:
the performance of a discrete-time model is expected to approach, in a sense defined
in this section, that of a continuous-time system as the sampling rate is increased.

4.2.1 Convergence in Time

An explanation on the type of convergence as the sampling period T approaches zero


is in order. Consider Fig. 4.4. The continuous-time signal is f (t) and the discrete-time
signal is f (k, T ). The solid line represents f (t). Xs mark the values of f (k, T ) at each
integer multiple of T . Only a portion of the time domain is shown in the figure. A
discrete-time signal that converges to a continuous-time signal exhibits the following
property. As the sampling period is reduced, besides an increase in the density of
f (k, T ) over any given portion of the time domain, the distances dk between f (t)|t=kT
and f (k, T ) for all integer multiples kT , at which the discrete-time signal is defined,
can be made arbitrarily small. A discrete-time model features such input-output
signal characteristics. This general concept is formalized in Definition 4.1.
4.2 Single-rate Discrete-time Models 55

X
dk-2
X dk-1
X dk
X dk+2
X dk+1
t
(k-2)T (k-1)T kT (k+1)T (k+2)T

Fig. 4.4 Continuous-time and discrete-time signals

Definition 4.1 A single-rate discrete-time system with input u(k, T ) and output
y(k, T ) is said to be a discrete-time model of a continuous-time system, with input
u(t) and output y(t), if the following condition is satisfied [59]:
For each fixed time t ∗ , if
- -
lim -u(t ∗ ) − u(κ, T )- = 0 (4.1)
T →0

then
- -
lim -y(t ∗ ) − y(κ, T )- = 0 (4.2)
T →0

where T is the uniform sampling period, and κ is an integer such that κT ≤ t ∗ <
(κ + 1)T . 1
In the above definition, it is assumed that the continuous-time and discrete-time
signals are finite at each finite time t and step k. Impulse signals are outside the scope
of this book.
With the knowledge of the convergence in time for input-output signals, one
is interested in obtaining conditions on the discrete-time system parameters that
ensure such behavior in the limit. Definition 4.2 provides such conditions for linear,
time-invariant (LTI) systems.
Definition 4.2 A single-rate, LTI discrete-time system labeled GDT and expressed
in the delta state-space form in Eq. (4.4) is said to be a discrete-time model of
continuous-time system G expressed in Eq. (4.5) provided [60]

lim Aδ = A, lim Bδ = B, lim Cδ = C, lim Dδ = D. (4.3)


T →0 T →0 T →0 T →0

1
δx(k, T ) = Aδ x(k, T ) + Bδ u(k, T )
(4.4)
y(k, T ) = Cδ x(k, T ) + Dδ u(k, T )
56 4 Models

dx(t)
= Ax(t) + Bu(t)
dt (4.5)
y(t) = Cx(t) + Du(t)

Definition 4.2 is the practical definition of a discrete-time model of a continuous-time


system. A designer may readily verify whether a system fulfills the conditions of this
definition.

4.2.2 Convergence in Transfer Function

Besides convergence in time, for the signals, and convergence in the elements of
the state-space representation, one may define a convergence in the parameters of a
transfer function. This is done in Definition 4.3.
Definition 4.3 A linear, time-invariant discrete-time system is expressed as

cn∗ γ n + · · · + c1 γ + c0 αn γ n + αn−1 γ n−1 + · · · + α1 γ + α0
GDT (γ ) = · (4.6)
dn∗ γ n∗ + · · · + d1 γ + d0 βn γ n + βn−1 γ n−1 + · · · + β1 γ + β0

where n∗ , n ∈ Z + . The linear, time-invariant continuous-time system is represented


as
an s n + an−1 s n−1 + · · · + a1 s + a0
G(s) = . (4.7)
bn s n + bn−1 s n−1 + · · · + b1 s + b0
Given that αj s and βj s can be written as

αj = aj + aj , βj = bj + bj , forj = 0, . . ., n (4.8)

discrete-time system GDT is said to converge in transfer function to G if

(i) lim aj = 0, lim bj = 0, for j = 0, . . ., n


T →0 T →0
(4.9)
(ii) lim (cj − dj ) = 0, for j = 0, . . ., n∗
T →0

given that cj s and dj s are finite real scalars for j = 0, . . ., n∗ , and at least one dj is
nonzero. 1

4.2.3 Realization and Transfer Function

We present conditions on the elements of a realization of a discrete-time system


and the coefficients of its transfer function to ensure that one obtains a discrete-time
model.
4.2 Single-rate Discrete-time Models 57

Proposition 4.1 Consider a discrete-time system given as

(an + an ) γ n + (an−1 + an−1 ) γ n−1 + · · · + (a0 + a0 )


WDT (γ ) = (4.10)
γ n + (bn−1 + bn−1 )γ n−1 + · · · + (b0 + b0 )
where aj s and bj s are the coefficients of the transfer function of a continuous-time
system given as

an s n + an−1 s n−1 + · · · + a0
W(s) = . (4.11)
s n + bn−1 s n−1 + · · · + b0
Then

lim aj = 0 and lim bj = 0 for j = 0, 1, . . ., n (4.12)


T →0 T →0

if and only if there exists at least one realization of WDT (γ ) in the delta form with
elements (A + A), (B + B), (C + C) and (D + D), where [A, B, C, D] are
the elements of a realization of the system W(s), such that

lim A = 0n×n , lim B = 0n×1


T →0 T →0
(4.13)
lim C = 01×n , lim D = 01×1 .
T →0 T →0

1
Proof. Sufficiency: Suppose one realization of W (γ ) is [A + A, B + B,
DT
C + C, D + D], where the · terms satisfy (4.13). Then
(C + C) Adj(γ I − (A + A))(B + B) + |γ I − (A + A)| (D + D)
WDT (γ ) =
|γ I − (A + A)|
(4.14)

whereas
C Adj(sI − A)B + |sI − A| D
W(s) = . (4.15)
|sI − A|
It is clear that the coefficients of the powers of γ in the numerator and denominator
parts of WDT (γ ) approach those of the corresponding powers of s in W(s) as T → 0
when the terms · approach zero.
Necessity: From the knowledge of the transfer function coefficients, one obtains
a realization. If both realizations are for instance in the observable canonical form,
then each element of the discrete-time realization will approach its corresponding
continuous-time element, as T → 0, provided the coefficients of the discrete-time
transfer function given by (4.10) satisfy Eq. (4.12).
58 4 Models

In more detail, let a realization of the discrete-time system be given by


⎡ ⎤
0 0 ··· 0 −(b0 + b0 )
⎢ 1 0 ··· 0 −(b1 + b1 ) ⎥
⎢ ⎥
⎢ 0 1 ··· 0 −(b 2 + b2 )

δx(k, T ) = ⎢ ⎥x(k, T )
⎢ .. .. .. .. .. ⎥
⎣ . . . . . ⎦
0 0 · · · 1 −(bn−1 + bn−1 )
  
=A+A
⎡ ⎤
(a0 + a0 ) − (b0 + b0 ) (an + an )
⎢ (a1 + a1 ) − (b1 + b1 ) (an + an ) ⎥ (4.16)
⎢ ⎥
⎢ (a2 + a2 ) − (b2 + b2 ) (an + an ) ⎥
+⎢ ⎥u(k, T )
⎢ .. ⎥
⎣ . ⎦
(an−1 + an−1 ) − (bn−1 + bn−1 ) (an + an )
  
=B+B
 
y(k, T ) = 0 ··· 0 1 x(k, T ) + (an + an )u(k, T )
     
=C+C =D+D

where u(k, T ) is the input and y(k, T ), the output of the system. The continuous-time
system realization is
⎡ ⎤ ⎡ ⎤
0 0 · · · 0 −b0 a 0 − b 0 an
⎢ 1 0 · · · 0 −b1 ⎥ ⎢ a1 − b 1 an ⎥
dx(t) ⎢ ⎢ 0 1 · · · 0 −b2 ⎥
⎥ ⎢



=⎢ ⎥x(t) + ⎢ a2 − b2 an ⎥u(t)
dt ⎢ .. .. .. .. .. ⎥ ⎢ .. ⎥
⎣ . . . . . ⎦ ⎣ . ⎦
0 0 · · · 1 −bn−1 an−1 − bn−1 an (4.17)
     
=A =B
 
y(t) = 0 ··· 0 1 x(t) + an u(t)
   
=C =D

where u(t) is the input and y(t), the output of the system. 2

4.2.4 Generalized Holds and Discrete-time Models

Consider the hold equivalence discretization with a series connection of multi-


interval GH, continuous-time system, and instantaneous sampler. The structure is
shown in Fig. 3.8a. Theorem 4.1 gives sufficient conditions on the GH function such
that the discrete-time system is a discrete-time model of a continuous-time system
4.2 Single-rate Discrete-time Models 59

in the sense of Definitions 4.1 and 4.2. The discrete-time model obtained may be of
higher order than that of the continuous-time system. The increase in order is due to
the presence of multiple intervals in the GH function.
Theorem 4.1 An LTI continuous-time system G is given by Eq. (4.18).
dx(t)
= Ax(t) + Bu(t)
dt (4.18)
y(t) = Cx(t) + Du(t)

System G is preceded by a GH, labeled as H , which has the following response to


a discrete-time input u(k, T ) expressed in lifted form:


m−1

u(k, T , τ ) = hj (τ ) u(k − j , T ), (4.19)
j =−l

as originally defined in Chap. 2. The instantaneous sampler S acts on the output of


G. The expression for the discrete-time system SGH is given by Eq. (4.20).
AT

e −I 1  T A(T −v) m−1 


δx(k, T ) = x(k, T ) + e B hj (v)dv · u(k − j , T )
T T v=0 j =−l

m−1
y(k, T ) = Cx(k, T ) + D hj (0) · u(k − j , T ). (4.20)
j =−l
System SGH is a discrete-time model of G in the sense of Definition 4.1 if


m−1 " T
1
lim eA(T −v) Bhj (v)dv = B, (4.21)
T →0 T v=0
j =−l

and

m−1
lim hj (0) = 1. (4.22)
T →0
j =−l

1
∗ ∗
Proof: Select any fixed time instant t . Let t = kT + τ , where τ ∈ [0, T ), k is
an integer, and T > 0. With continuous-time lifting, convert signal y(t) to its lifted
form expressed as y (k, T , τ ) and evaluated at t ∗ . Consider the discrete-time system
output y(k, T ) at the discrete time instant where k is such that kT ≤ t ∗ < (k + 1)T .
Lifted and discrete-time signals are assumed to be synchronized. For the sake of
demonstration, we assume that the signals are defined for time t greater than or
equal to zero.
60 4 Models

We bound the difference in outputs, at the specified time instants, as follows


(k, T , τ ) − y(k, T ) ≤
-yk−1
-  Aτ AT (k−1−i)  T A(T −v)
- Ce e u(i, T , v)dv
- v=0 e B
i=0 -
-
k−1 
m−1
-
−C e AT (k−1−i)
Fj u(i − j , T )-
-
i=0 j =−l -
  
- " τ =E1 -
- - (4.23)
+- -C u(k, T , v)dv-
eA(τ −v) B -
 v=0
 
- =E2 -
-  -
- m−1
-
-
+-D u(k, T , τ ) − D hj (0)u(k − j , T )--,
- j =−l -
  
=E3

where
" T
Fj = eA(T −v) Bhj (v)dv, j ∈ [− l, m − 1], (4.24)
v=0
and · is a signal norm. In (4.23), E2 can be made arbitrarily close to zero by
choosing T sufficiently small. For E1 and E3 , we assume that the discrete-time input
of SGH approaches that of G for each fixed time instant, from Definition 4.1. Then,
from Theorem 2.1.1 in [17], input u(t) is a continuous function of time. Therefore,
E1 is bounded as
E 1 ≤
-k−1
-  AT (k−1−i)
- Ce T
-
i=0
. /-
1  T A(T −v)  -
1 m−1 - (4.25)
· v=0 e u(i, T , v)dv −
B Fj u(i − j , T ) -
T T j =−l -
-k−1 -
-  -
+- - C(e − I )e
Aτ AT (k−1−i) T
v=0 e
A(T −v)
B u(i, T , v)dv--
i=0

m−1 each term on the right-hand side approaches zero as T → 0 provided (1/T ) ·
where
j =−l Fj can be made arbitrarily close to B; that is,


1 m−1 1  T A(T −v)
lim Fj = lim e Bdv
T →0 T j =−l T →0 T v=0 (4.26)
= B.
Furthermore, E3 is bounded as
- -
- -
- 
m−1
-
E3 ≤ D · -
u(k, T , τ ) − h (0)u(k − j , T ) -. (4.27)
- j -
- j =−l -
4.3 Single-rate Sampled-data Models 61

The boundon E3 can be made arbitrarily close to zero by choosing a sufficiently


short T if m−1
j =−l hj (0) can be made arbitrarily close to unity; that is,


m−1
lim hj (0) = 1. (4.28)
T →0
j =−l

The latter comes from the facts the input is continuous, and hence can only exhibit
a relatively small difference in amplitude from that of the continuous-time system,
when T can be made arbitrarily small, and the sum of the coefficients of the GH is
assumed to be unity.
Then, given any ε > 0, one selects a T1 such that E1 < ε/3, a T2 such
that E2 < ε/3 and a T3 such that E3 < ε/3. Let T = min {T1 , T2 , T3 }, then
y (k, T , τ ) − y(k, T ) ≤ ε for each fixed time t ∗ , where T is the uniform sampling

period, and k is an integer such that kT ≤ t ∗ < (k + 1)T . 2
The multi-interval GH conditions pertain to the behavior in the discrete-time
domain. This means that a GH could be such that the discrete-time system SGH
satisfies Theorem 4.1, although the time trajectories of the input (hold output) and
output of G are oscillatory in between the sampling instants.

4.3 Single-rate Sampled-data Models

The main feature of a sampled-data model is the uniform-in-time convergence of


the signals of interest. This is different from a discrete-time model for which a
pointwise-in-time convergence is guaranteed, as presented in Sect. 4.2. A sampled-
data system comprises systems operating in both discrete-time and continuous-time
domains. A continuous-time system is composed exclusively of systems evolving in
the continuous-time domain.

4.3.1 Definitions

The notion of sampled-data model is defined as follows.


Definition 4.4 A sampled-data system with discrete-time components synchronized
and operating at a single update or sampling rate is said to be a single-rate sampled-
data model of a continuous-time system if the continuous-time output of the sampled-
data system converges uniformly in time to that of the continuous-time system when
the continuous-time input to the sampled-data system converges uniformly in time
to that of the continuous-time system, as the update or sampling rate approaches
infinity.
Uniform-in-time convergence means that the least upper bound on the norm of the
difference between two signals can be made arbitrarily small, over all time instants,
62 4 Models

with a sufficiently fast sampling or update rate. In other words, a signal f (t) is said
to converge uniformly in time to a signal g(t) if

lim sup f (t) − g(t) = 0


T →0 t∈R

where T is the update or sampling period, and · indicates a norm. One simple
norm for scalar signals is the absolute value. One of the two signals in the above
equation pertains to the sampled-data system, and hence depends on T .

4.3.2 Conditions for Uniform-in-time Convergence

This section presents conditions on the discrete-time controllers, the hold, the sampler
and the exogenous inputs so that a sampled-data control system approaches, in some
sense, a known continuous-time control system. In particular, we propose sufficient
conditions that guarantee uniform-in-time convergence of the control input to and
the controlled output of a continuous-time system under sampled-data control, as
T → 0, to those corresponding signals of the same system under continuous-time
control. The importance of the uniform-in-time convergence lies in the avoidance of
undesired ripples or hidden oscillations, at least in the limit.
For the generic continuous-time feedback control system of Fig. 4.5a, the exoge-
nous inputs are assumed to have a finite supremum norm, be uniformly continuous,
and independent of T . These are termed the basic characteristics of the inputs.
Furthermore, the control system of Fig. 4.5a is assumed to comply with known per-
formance requirements, such as margins of stability, constrained transients, desired
steady-state values, and disturbance rejection.
Figure 4.5b shows the block diagram of a sampled-data control system having a
structure similar to that of Fig. 4.5a, although with controllers operating in discrete-
time. The system shown in Fig. 4.5c is an approximation to that of Fig. 4.5b; namely,
the disturbance input approximates the actual disturbance signal. This is done to
allow for an LTI formulation of the closed-loop systems in the discrete-time domain,
therefore, enabling design and analysis.
For single-input, single-output (SISO) closed-loop systems, the transfer functions
are
C3 + C4 C2
M=
1 + C 4 C1 G
1
P = (4.29)
1 + C 4 C1 G
C4 C1
Q=−
1 + C 4 C1 G
4.3 Single-rate Sampled-data Models 63

Fig. 4.5 a Continuous-time


system. b Sampled-data C3 D N
control system. + + +
R + + + U + Y
c Approximation to the C2 -
C4 G
sampled-data feedback loop

C1

R + U Y
M +
G
+
D
P
N
a Q

C3 DT
D N
+
R + + +
+U
SD +
+ YSD
S C2 DT
-
C4 DT
H G

b C1 DT
S

D S DDT N
S
C3 DT
NDT
+
H USD
+ +
R + + + + YDT
S C2
DT
-
C4 DT
H G S

C1 DT

R RDT + UDT USD YSD


S MDT +
H G
+
D DDT
S PDT
N NDT
c
S QDT

for Fig. 4.5a, and


C3DT + C4DT C2DT
M DT =
1 + C4DT C1DT H GS
1
P DT = (4.30)
1+ C4DT C1DT H GS
C4DT C1DT
QDT = −
1 + C4DT C1DT H GS
for Fig. 4.5c.
64 4 Models

Theorem 4.2 presents conditions on H M DT S such that it is a single-rate sampled-


data model of M. The theorem can be readily extended to systems H P DT S and
H QDT S.
Theorem 4.2 Systems M in Fig. 4.5a and M DT in Fig. 4.5c are described by the state-
space elements A, B, C, D and Aδ , Bδ , Cδ , Dδ , respectively. The latter set pertains to
a state-space in the delta form. Suppose that any of the following situations applies:
the same exogenous inputs enter both control systems or the inputs to the sampled-
data control system converge uniformly in time, as T → 0, to those respective inputs
of the continuous-time control system. In either case, the inputs to the continuous-
time feedback control system exhibit the aforementioned basic characteristics. It is
assumed that M and M DT internally stabilize the plant G, have the same order when
expressed in transfer function form and the same dimension when expressed in a
state-space form. Furthermore, the selected values of T are nonpathological. Then,
HM DT S is a sampled-data model of M and GHM DT S is a sampled-data model of
GM if the following conditions are satisfied.
Condition 1 (Hold): The hold H preceding the plant G is such that

lim sup |H (τ ) − 1| = 0. (4.31)


T →0 0≤τ <T

Condition 2 (Sampler): Sampler S is the instantaneous sampler.


Condition 3 (Discrete-time system): There exists at least one state-space form for
M DT that has parameters Aδ = A + A, Bδ = B + B, Cδ = C + C, and
Dδ = D + D, where the terms · depend on A, B, C, D, and T , satisfying

lim A = 0p×p , lim B = 0p×1 , lim C = 01×p , lim D = 0, (4.32)


T →0 T →0 T →0 T →0

where p is the dimension of the state-space of M DT . 1


Proof: 1) Plant input. Suppose the signals and systems are considered for t ≥ 0.
Let D and N be zero over the time instants of interest. Furthermore, refer to Fig. 4.5.
Using continuous-time lifting (CTL), with period T , let the error in control inputs
be defined as e(k, T , τ ) = uSD (k, T , τ ) −
u(k, T , τ ) for any k ≥ 0. Sampling period
T ∈ R + . The lifted equivalent of the reference input to the continuous-time control
system is
rk (k, T , τ ) and that to the sampled-data control system is rSD (k, T , τ ). Let
supk≥0 sup0≤τ <T | rk (k, T , τ )| = r1 ∈ R. Write rSD (k, T , 0) =
rk (k, T , 0)+ρ(k, T ),
where ρ(k, T ) → 0(T → 0) for each k and supk≥0 |ρ(k, T )| = ρ. Also, assume

the sum k−1j =0 is zero for k = 0. Then
 0
sup sup | e(k, T , τ )| ≤ C · (B + B) f1 r1 + C f2 f3 r1
0≤k<∞ 0≤τ <T
- -
+ C f5 f3 r2 + C sup -eAτ − I - f3 f5 r1
0≤τ <T

+ C f4 (B + B) r1 + f4 C + C · B + B · ρ
+ C · Tf5 r1 + |D| · r1 + |D| · r2 + |D + D| · ρ
4.3 Single-rate Sampled-data Models 65
'
'
' k−1
+ sup |H (τ ) − 1| · sup '' {(C + C)
0≤τ <T 0≤k<∞ ' j =0
1
·(T (A + A) + I )k−j −1 T (B + B)(
rj (k, T , 0) + ρ(j , T ))
+ (D + D)(
rk (k, T , 0) + ρ(k, T ))| (4.33)

where limT →0 f1 = 0, limT →0 f2 = 0, limT →0 f3 = c1 ∈ R, limT →0 f4 = c2 ∈ R,


limT →0 f5 = c3 ∈ R from Proposition 4.2, limT →0 r2 = 0 from Proposition 4.3, and
limT →0 sup0≤τ <T |H (τ ) − 1| = 0 from the hold condition. Given any ε > 0, one
thus selects a T such that

sup sup |
e(k, T , τ )| ≤ ε. (4.34)
k≥0 0≤τ <T

With the norm-preserving property of lifting [7], one chooses T such that

sup |uSD (t) − u(t)| ≤ ε. (4.35)


t≥0

2) Plant output. An upper bound on the error norm at controlled output is

sup ySD (k, T , τ ) −


sup | y (k, T , τ )| ≤ (4.36)
0≤k<∞0≤τ <T
- -
- k−1  " -
- Aτ - -  AT k−j −1 T A(T −ξ ) -
sup -Ce - · sup - - e e e(j , T , ξ )dξ -
B -
0≤τ <T 0≤k<∞ - j =0 ξ =0 -
  
=g1
' " '
' τ '
+ sup sup ''C e(k, T , ξ )dξ '' + sup sup |D
eA(τ −ξ ) B e(k, T , τ )| (4.37)
0≤k<∞0≤τ <T ξ =0 0≤k<∞0≤τ <T
     
=g2 =g3

where each term on the right-hand side of the inequality approaches zero, as T →
0, from Proposition 4.5. Therefore, given any ε > 0, one selects a T1 such that
g1 < ε/3, a T2 such that g2 < ε/3 and a T3 such that g3 < ε/3. Let T = min
ySD (k, T , τ ) −
{T1 , T2 , T3 }, then sup0≤k<∞ sup0≤τ <T | y (k, T , τ )| ≤ ε. Equivalently,
supt≥0 |ySD (t) − y(t)| ≤ ε. 2
Proposition 4.2 Consider a discrete-time system with state-space elements in the
delta form given as Aδ = A+A, Bδ = B +B, Cδ = C +C, and Dδ = D+D,
where the terms · depend on the elements of a continuous-time state-space form
given as A, B, C, D, and sampling period T , and satisfy (4.32). Then:

 - -
lim T -(T (A + A) + I )j − eATj - = 0,
T →0
j =0
  
=f1
66 4 Models
- " -
- 1 T A(T −ξ ) -
lim -- (B + B) − e Bdξ -=0
-
T →0 T ξ =0
  
=f2

 ∞

- - - -
lim T -eATj - = c1 , lim T -(T (A + A) + I )j - = c2 ,
T →0 T →0
j =0 j =0
     
=f3 =f4
"
1 T- A(T −ξ ) -
lim -e B - dξ = c3 , (4.38)
T →0 T ξ =0
  
=f5

where c1 , c2 , c3 ∈ R. 1
Proof: The first limit approaches zero when T → 0 since the terms of the series
approach zero in an exponentially-decaying fashion when k → ∞, and approach
zero for each step k. Alternatively, the series becomes close to an integral over [0, ∞)
with integrand approaching zero over all time instants, as T → 0, and decaying
exponentially as time becomes large. As T → 0, the second limit approaches zero
from the limiting value of B. Finally, the third, fourth and fifth limits approach finite
values c1 , c2 , and c3 , respectively, since A is Hurwitz from the basic assumptions
on the continuous-time feedback control system and consequently the infinite series
are finite. 2
Proposition 4.3 A bounded and uniformly continuous signal denoted as f (t) is lifted
as {f (k, T , τ )}∞ ∞
0 = {f (k, T ) + ω(k, T , τ )}0 , 0 ≤ τ < T , where ω(k, T , τ )|τ =0 = 0.
With r2 = sup0≤k<∞ sup0≤τ <T |ω(k, T , τ )| , limT →0 r2 = 0. 1
Proof: Obvious from the uniform continuity of the signal and the characteristics of
CTL. 2
Proposition 4.4 Let GDT = SGH. S is the instantaneous sampler, H is a hold
satisfying the hold condition of Theorem 4.2, and G is an LTI continuous-time system
with state-space elements given by [A, B, C, D]. Then, GDT has a realization in the
delta form with elements [Aδ , Bδ , Cδ , Dδ ] such that Aδ → A, Bδ → B, Cδ → C,
and Dδ → D, as T → 0. 1
Proof: GDT is represented as follows
AT
" T

e −I 1 A(T −ξ )
δx(k, T ) = x(k, T ) + e BH (ξ )dξ u(k, T ),
T T ξ =0
     
=Aδ =Bδ

x(0, T ) = 0n×1 ,
y(k, T ) = C x(k, T ) + D · H (τ )|τ =0 u(k, T ).
 (4.39)
  
=Cδ =Dδ
4.3 Single-rate Sampled-data Models 67

From the hold condition in the time domain: 1) limT →0 Dδ = D, and 2) given any
ε > 0, there exists a ϑ > 0 such that, whenever T < ϑ,
- -
-  -
-Bδ − 1 T eA(T −ξ ) BH (ξ )dξ -
- T ξ =0 -
- -
- 1  T A(T −ξ ) -
≤--Bδ − T ξ =0 e Bdξ -
- (4.40)
- -
- 1  T A(T −ξ ) -
+-- B(H (ξ ) − 1)dξ -
ξ =0 e -
T
≤ ε/2 + ε/2.

Furthermore, limT →0 Aδ = A and Cδ = C. 2


Proposition 4.5 With the conditions of Theorem 4.2,
- -
- k−1  " -
- Aτ - -  AT k−j −1 T A(T −ξ ) -
lim sup -Ce - · sup - - e e e(j , T , ξ )dξ -
B - = 0,
T →00≤τ <T 0≤k<∞ - j =0 ξ =0 -
(4.41)

' " '


' τ '
lim sup sup ''C e A(τ −ξ )
e(k, T , ξ )dξ '' = 0,
B (4.42)
T →00≤k<∞0≤τ <T ξ =0

lim sup sup |D


e(k, T , τ )| = 0. (4.43)
T →00≤k<∞0≤τ <T

1
Proof: From part (1) of the proof of Theorem 4.2, e(k, T , τ ) → 0 (T → 0) for each
τ ∈ [0, T ) and step k. In (4.41), the left-most term is finite whereas the right-most
term represents the supremum over all time steps of the norm of the difference in
the zero-state responses of the plant, at the sampling instants, as governed by the
sampled-data and continuous-time control inputs. In both cases, the plant is stabilized
and so, at each sampling instant, the two states are finite. Invoke Proposition 4.4. For
the continuous-time control system, the zero-state in the transform domain is given
by a rational transfer function vector having strictly proper entries

V (s) = ((Adj (sI − A)Bm(s))/d(s))R(s) (4.44)

which is realized with [A2 , B2 , C2 ], where A2 is Hurwitz from the assumptions on


the continuous-time feedback control system, and the lifted plant state evolution is


k−1 " T

v(k, T , 0) = C2 (eA2 T )k−j −1 eA2 (T −ξ ) B2
r(j , T , ξ )dξ. (4.45)
j =0 ξ =0
68 4 Models

Note that R(s) is the transform of the reference input applied to the continuous-time
control system, and m(s) and d(s) come from [54]

M(s) = m(s)a(s)/d(s). (4.46)

Furthermore, a(s) = |sI − A| when the plant transfer function is irreducible, and
V (s) = (sI − A)−1 B U (s). For the sampled-data control system, the zero-state of
the hold-equivalent model of the plant in the transform domain is
 $ T %
Adj γ I − (eAT − I )/T T1 ξ =0 eAξ BH (ξ )dξ m(γ )
V (γ ) = R(γ ) (4.47)
d(γ )
where R(γ ) is the transform of the discrete-time input applied to
' M, ρ(k), and m(γ )'
and d(γ ) come from M(γ ) = m(γ )a(γ )/d(γ ). Note that a(γ ) = 'γ I − (eAT − I )/T '
if the discrete-time system obtained with the hold equivalence discretization
of the plant transfer function is irreducible, and V (γ ) = (γ I − (eAT− I )/T )−1
T
(1/T )( ξ =0 eAξ BH (ξ )dξ )U (γ ). The transfer function vector (4.47) has the same
dimension as that of the continuous-time system and d(γ ) has the same de-
gree as d(s). Associate a realization to (4.47) with elements [Aδ,2 , Bδ,2 , Cδ,2 ],
where Aδ,2 has all its eigenvalues in the region |T γ + 1| < 1, which yields
  k−j −1
v(k) = Cδ,2 k−1
j =0 T Aδ,2 + I T Bδ,2 ρ(j ). With the assumption on the refer-
ence inputs, the fact the hold satisfies the hold condition in the time domain, and
Proposition 4.1, there exists one realization in the delta form for the discrete-time
system such that its elements satisfy: limT →0 Aδ,2 = A2 , limT →0 Bδ,2 = B2 , and
limT →0 Cδ,2 = C2 . Then

sup v(k, T ) −
v(k, T , 0)
0≤k<∞
k−1 -#
 -  k−j −1  A2 T k−j −1 &-
- - -
≤ C2 · sup - T Aδ,2 + I − e -T -Bδ,2 - · r1
0≤k<∞ j =0
  
→0(T →0)

k−1 - - - " -
 - A2 T k−j −1 - - 1 T A (T −ξ ) -
+ C2 · sup -
· -− B2 dξ + Bδ,2 -
- e -T - · r1
2
e
0≤k<∞ j =0 T ξ =0
  
→0(T →0)

k−1 -
 - "
- A2 T k−j −1 - 1 T - -
-eA2 (T −ξ ) B2 - dξ · r2
+ C2 · sup - e -T ·
0≤k<∞ j =0 T ξ =0
⎛ ⎞
∞ -
 -
- j - - - ⎜ ⎟
+ - T Aδ,2 + I - T · -Bδ,2 - · ⎝ C2 + C2 · ρ + C2 · r1 ⎠
   
j =0 →0(T →0) →0(T →0)
(4.48)
4.4 Dual-rate Sampled-data Models 69

Fig. 4.6 Schematics of two


Discrete-time
types of dual-rate feedback
systems
ST
Controllers
Hh G

a ST

Discrete-time
ST
Controllers
HT G

b Sh

where r2 → 0 (T → 0) from the assumption on the reference inputs to the sys-


tems. Then, (4.41) is satisfied. Limits in (4.43) come from part (1) of the proof for
Theorem 4.2. 2
Theorem 4.2 can be modified to consider the multi-input, multi-output (MIMO)
case. To do so, the basic characteristics on the exogenous inputs should apply to
each entry of the input vectors, the absolute values found in Eq. (4.31) and in the
proof should be replaced by vector norms, and the unity scalar in Eq. (4.31) should
be substituted with the identity matrix.
Corollary 4.1 presents conditions on the individual controllers shown in the block
diagrams of Fig. 4.5 to obtain a closed-loop sampled-data model.
Corollary 4.1 Suppose the first and second conditions of Theorem 4.2 are satisfied.
If each element of a realization in the delta form of discrete-time controller C1DT
approaches the corresponding element of a realization of continuous-time controller
C1 , as T → 0, and similarly for controllers C2DT , C3DT , and C4DT with respect to
controllers C2 , C3 , and C4 , respectively, H M DT S is a sampled-data model of M,
and GH M DT S is a sampled-data model of GM. 1

4.4 Dual-rate Sampled-data Models

A multirate discrete-time system comprises a minimum of two signals evolving at


different update rates. To simplify the analysis, one may assume that the rates are
integer-related. Figure 4.6 shows two dual-rate feedback systems. One relies on fast
plant output sampling (FPOS), in Fig. 4.6a, whereas the other provides fast control
input update (FCIU) in Fig. 4.6b. The sampling periods are labeled as T and h. Period
h is an integer multiple of period T .
Holds and samplers found in dual-rate feedback systems are updated at a period
of T or h units of time. To distinguish between the two update periods, a subscript
is used to indicate either period. Although not shown in the figure, each output of a
multivariable plant G is connected to ST or Sh .
A dual-rate sampled-data model is defined as a dual-rate system that complies with
Definition 4.4, with the exception that two integer-related update rates are present in
the loop.
70 4 Models

Fig. 4.7 Dual-rate


Sh C Hh,T HT G
sampled-data control systems

a ST,h ST

ST C HT G

b Hh,T Sh

In this section, we give conditions on the elements found in a class of dual-rate


sampled-data control systems to obtain a dual-rate sampled-data model. Before we
do so, we have to make several fundamental assumptions. First, the discrete-time
signals are updated at period h (slow rate of 1/ h Hz) or T (fast rate of 1/T Hz), with
h = N · T , N ∈ Z + , where Z + is the set of positive integers. Period T is chosen
to be nonpathological with respect to the plant transfer function. Second, ZOH Hp
and instantaneous sampler Sp may be updated at a period p equal to T or h, and
are synchronized at time t = 0. Third, the exogenous inputs to the control systems
are bounded, uniformly continuous functions over [0, ∞), and independent of T .
Fourth, the continuous-time (discrete-time) signals are considered for time t ≥ 0
(k ≥ 0). As the last assumption, the continuous-time plant G is LTI, has zero initial
conditions, and has a rational transfer function G(s) which is such that |G(s)| → 0
as |s| → ∞.
A remark on the notation is in order. The Z-transform of discrete-time signal
u(k, p) is given by u(z, p), for either sampling period p = T or p = h. For simplicity,
z represents the complex variable in either case. The same applies to a transfer
function in z.

4.4.1 Systems and Equivalences

We focus on the dual-rate sampled-data control systems of Fig. 4.7. The discrete-
time controller block (or subsystem) C may be either dynamic or static, and include
the dual-rate generalized holds and samplers presented in Chap. 2 to ensure rate
transition. An FPOS system is illustrated in Fig. 4.7a. An FCIU system is shown in
Fig. 4.7b.
Equivalences useful for an understanding of dual-rate sampled-data models are
given in Propositions 4.6 and 4.7.
Proposition 4.6 Assume Hh,T is the DT-ZOH and ST ,h is the DR-DS. Then

ST ,h Hh,T = I ,
HT Hh,T = Hh , (4.49)
ST ,h ST = Sh .
1
4.4 Dual-rate Sampled-data Models 71

Proof: Obvious from the definitions of DRGH and DRGS given in Chap. 2. 2
Proposition 4.7 Assume Hh,T is a DRGH, and let H 4h denote a GH. The DRGH
4
and GH are defined in Chap. 2. Subject HT Hh,T and Hh to a unit discrete-time pulse
input given by

1, k = 0
u(k, h) = (4.50)
0, k  = 0

For a fixed N,
- -
lim sup 4h u- = 0
sup -HT Hh,T u − H (4.51)
h→0 k∈[0,∞) τ ∈[0,h)

provided
' '
' i 4j (τ , h)'' = 0.
lim max max sup 'Hj (T , h) − H (4.52)
h→0 j ∈[−l,m−1] i∈[0,N−1] τ ∈[iT ,(i+1)T )

1
Proof: Decompose H4j (τ , h) into

40
⎪ Hj (τ , h), τ ∈ [0, T )


⎨ H 41 (τ , h), τ ∈ [T , 2 T )
H4j (τ , h) = .. j . (4.53)
⎪ .


⎩ H 4N−1 (τ , h), τ ∈ [(N − 1)T , T )
j

Then, from (4.19) and the expression for GH, write


4h u
HT Hh,T⎡u − H ⎤
Hj0 (T , h) − H40 (τ , h)
j
 ⎢ ⎢ Hj (T , h) − H
1 41 (τ , h) ⎥
m−1
⎥ (4.54)
= ⎢ .. j ⎥ u(k − j , h).
j =−l ⎣ . ⎦
HjN−1 (T , h) − H4N−1 (τ , h)
j

4h u can be made arbitrarily


If (4.52) is satisfied, it is clear from (4.54) that HT Hh,T u−H
small over all time instants by reducing h. 2

4.4.2 Conditions for Uniform-in-time Convergence

The conditions for the uniform-in-time convergence of the signals of interest are
provided in Theorem 4.3 for the systems shown in Fig. 4.8. In the theorem, we assume
the only nonzero exogenous input is the reference signal, although an extension to
disturbance and noise inputs is straightforward. The proof of Theorem 4.3 relies on
Lemmas 4.1 and 4.2.
72 4 Models

Fig. 4.8 Block diagrams of


R + U Y
a Continuous-time, b FPOS,
-
C2 G
and c FCIU control systems

R U Y
M G
a

R + USD YSD
ST ST,h -
C2(z,h)
DT
Hh G

ST,h C1(z,T)
DT
ST

R UDT USD YSD


ST ST,h MDT(z,h) Hh G
b

R + USD YSD
ST -
C2 (z,T)
DT
HT G

Hh,T Sh

R UDT USD YSD


ST MDT(z,T) HT G
c

Lemma 4.1 Let GDT = Hh,T Sh GHT , as shown in Fig. 4.8c. Define a fast discrete-
time system to be GDT2 = ST GHT . Subject G
DT
to the bounded input u(k, T ) and
G2 , to the bounded input 4
DT
u(k, T ), where HT 4 u can be made arbitrarily close to a
continuous signal u(t) by choosing a sufficiently small T . Denote the output of GDT
2 as 4
as y(k, T ) and that of GDT y (k, T ). Select a fixed N ∈ Z + . If, for each fixed
+
t ∈R ,

lim 4
u(κ, T ) − u(κ, T ) = 0, (4.55)
T →0

where κ is an integer such that κT ≤ t < (κ + 1)T , and


m−1
lim Hji (T , h) = 1,∀i ∈ [0, N − 1], (4.56)
T →0
j =−l
4.4 Dual-rate Sampled-data Models 73

then

lim 4
y (κ, T ) − y(κ, T ) = 0 (4.57)
T →0
κT ≤t<(κ+1)T

for each fixed t. 1


Proof: Let
dx(t)
= Ax(t) + Bu(t)
G: dt (4.58)
y(t) = Cx(t) + Du(t).

From the assumption on the continuous-time plant, D = 0. G is expressed by means


of the continuous-time lifting at an update period of T as
T
x(k + 1, T ) = eAT x(k, T ) + v=0 eA(T −v) Bu(k, T , v)dv
τ (4.59)
y(k, T , τ ) = CeAτ x(k, T ) + C v=0 eA(τ −v) Bu(k, T , v)dv

where τ ∈ [0, T ), x(k, T ) = x(t)|t=kT and {u(k, T , τ )}∞


k=0 is the signal obtained with
the continuous-time lifting of u(t). From (4.59), GDT 2 = ST GHT is expressed as
" T

A(T −v)
x(k + 1, T ) = 
e x(k, T ) +
AT
e Bdv 4 u(k, T )
GDT
2 : =A d  v=0
  (4.60)
=Bd
y(k, T ) = Cx(k, T )

where y(k, T ) = y(t)|t=kT and u(k, T ) is the discrete-time signal entering the ZOH.
Performing discrete-time lifting at period h on (4.60) yields

x L ((k + 1)N , T ) = eAT N L


 x (kN, T )
=AL
 d  L
+ AN−1 Bd . . . A d Bd Bd 4u (kN , T )
 d  
=BdL
⎡ ⎤
C
⎢ CAd ⎥ L
y L (kN, T ) = ⎢

.. ⎥x (kN , T )

.
CAN−1 (4.61)
 d 
=CdL
⎡ ⎤
0 0 ... 0
⎢ .. .. ⎥
⎢ CBd 0 . . ⎥ L
+⎢ .. .. ⎥4
u (kN , T ).
⎣ . ... . 0 ⎦
CAN−2
d Bd . . . CBd 0
  
=DdL
74 4 Models

Similarly, one may perform discrete-time lifting at period h on GDT = Hh,T Sh GHT
using the expression (4.19) to obtain
L
xG T
((k + 1)N, T ) = ALd xG L
T
(kN, T ) + BdL uL (kN , T )
⎡ ⎤
Hj0 (T , h)
 ⎢
m−1
⎢ Hj1 (T , h) ⎥ L
⎥ (4.62)
yGL
(kN, T ) = ⎢ .. ⎥ CxGT ((k − j )N , T ).
j =−l ⎣ ⎦
T
.
N−1
Hj (T , h)

Fix time t and, from the conditions puth forth in the Lemma, write uL (j N , T ) =
uL (j N, T ) + (j N , T ) where limT →0 sup0≤j <k (j N , T ) = 0, kN T ≤ t <
4
(kN + 1)T . Using (4.56), (4.61) and (4.62), the following bound on the norm of the
difference in lifted outputs can be made arbitrarily small with T :
- L -
-y (kN, T ) − y L (kN, T )-
GT
(4.63)
≤ 1 + 2 + 3

where
- ⎡ m−1 ⎤-
-⎡  0 -
- 1 ⎤ Hi (T , h) ⎥-
- ⎢ - - k−1 -
-⎢ 1 ⎥ ⎢ i=−l . ⎥- - -  -
-
-⎢ . ⎥ ⎢ ⎥- -
1 = -⎣ . ⎦ − ⎢ .
. ⎥- · -C (Ad ) L k−j −1 L L
Bd 4u (j N , T )-
-
- . ⎢ m−1 ⎥- - -
- ⎣  N−1 ⎦- j =0
- 1 H (T , h) -   
- i=−l
i - finite for each fixed t(T →0)
  
→0(T →0)
- ⎡ ⎤ -
-  Hi0 (T , h) -
- k−1 m−1 . -
+--
⎣ .. ⎦ C(ALd )k−j −1 BdL (j N , T )-
-
- j =0 i=−l H N−1 (T , h) -
i
  
→0(T →0)
(4.64)

- ⎡ ⎤-
-⎡ ⎤ 
m−1 -
- -
Hi0 (T , h)
- 1 ⎢ ⎥-
-⎢ 1 ⎥ ⎢ ⎥ - 
⎥- -  L -
i=−l
- ⎢ ..
2 = -⎢ .. ⎥ − ⎢ . ⎥- · - D 0 ... 0 4u (kN , T )-
-⎣ . ⎦ ⎢ ⎥-   
- ⎣  N−1
m−1 ⎦-
- 1 Hi (T , h) - =0
- i=−l
-
  
→0(T →0)
(4.65)
4.4 Dual-rate Sampled-data Models 75
-⎡ ⎤
-  0
m−1
- H (T , h)
-⎢ i ⎥
-⎢ i=−l . ⎥
-⎢ .. ⎥
3 = -⎢ ⎥
-⎢ m−1 ⎥
-⎣  N−1 ⎦
- H (T , h)
- i=−l i
  -
× D 0 . . . 0 (kN, T )-
  
-⎡ =0 ⎤ -
- 0 -
- -
-⎢ CBd ⎥  - (4.66)
-
+-⎣⎢ . ⎥ -
.. ⎦ 1 0 ... 0 -
- -
- CAN−2 B + . . . + CB -
d d d
  
-⎡ →0(T →0) ⎤-
- 0 -
- -
-⎢ D(N , T ) ⎥-
-
+-⎣⎢ ⎥ -
.. ⎦-.
- . -
- CAN−3d Bd (N , T ) + . . . + D(N − 1, T ) -
  
→0(T →0)

2
Lemma 4.2 Let Gh = ST ,h C1DT ST GHh , as shown in Fig. 4.8b. Define G = Sh GHh .
Subject Gh to a bounded input u(k, h) and G, to 4u(k, h) which is also bounded. Hh4 u
can be made arbitrarily close to a continuous signal u(t) by making h short enough.
Denote the output of Gh as y(k, h) and that of G as 4y (k, h). Select a fixed N ∈ Z + .
If, for each fixed t ∈ R + ,

lim 4
u(κ, h) − u(κ, h) = 0 (4.67)
h→0
κh≤t<(κ+1)h

and C1DT is an FIR (finite impulse response) filter such that

a0 zN + a1 zN−1 + . . . + aN
C1DT (z, T ) =
zN (4.68)

N
lim ai = 1,
T →0i=0

then

lim 4
y (κ, h) − y(κ, h) = 0 (4.69)
h→0
κh≤t<(κ+1)h

for each fixed t. 1


76 4 Models

Proof: Consider the plant model in Eq. (4.58). Fix time t, let u(j , h) = 4
u(j , h) +
(j , h) where limh→0 sup0≤j <k (j , h) = 0, kh ≤ t < (k + 1)h, from the
conditions on the input signals. Write the norm of the difference in the outputs
of ST ,h C1DT ST GHh and Sh GHh as

4 - h) − y(k, h) ≤
y (k, -
-k−1 -
-  Ah k−j −1  h A(h−v) -
1 - (e ) e Bdvu(j , h) - (4.70)
-j =0 v=0 -
+2 u(k, h) + 3

where
- -
1 = -C − ChL - ,
⎡ ⎤
C
 ⎢ CAd ⎥ −1 (4.71)
ChL = aN . . . a1 ⎢
⎣ .. ⎥ q + a0 C,

.
(N−1)
CAd

- -
2 = -D − DhL - ,
 
DhL = a0 D + aN . . . a1
⎡ ⎤
D (4.72)
⎢ CB d +D ⎥ −1
×⎢⎣ .. ⎥q ,

.
CAd (N−2) Bd + . . . + CBd + D

- -
- k−1 -
- L  Ah k−j −1  h A(h−v) -
3 = -Ch (e ) e Bdv(j , h) -
- j =0 v=0 - (4.73)
- L -
+ -Dh (k, h)- .

Each of the terms 1 , 2 and 3 approaches zero as h → 0 (fixed N ) from (4.68)


and the fact the effect of the delay operator q −1 vanishes with h → 0. 2
Theorem 4.3 Consider the control systems shown in Fig. 4.8, where G is defined
in Lemma 4.1. Either the control systems are subject to the same reference input,
or the reference inputs to the sampled-data control systems of Fig. 4.8b, c converge
uniformly in time, as the sampling periods approach zero, to that of the continuous-
time control system of Fig. 4.8a, which is continuous, bounded, and independent of
the sampling or update periods h and T . The control systems shown in Fig. 4.8b, c
are dual-rate sampled-data models of the continuous-time control system of Fig. 4.8a
if the following conditions are satisfied:
Condition 1 (Stability): The discrete-time controllers internally stabilize the discrete-
time plant at the sampling instants.
Condition 2 (FIR filter): C1DT satisfies Eq. (4.68).
4.4 Dual-rate Sampled-data Models 77

Condition 3 (DRGH): Hh,T fulfills Eq. (4.56).


Condition 4 (Discrete-time controller): With
dxC2 (t)
= AC2 xC2 (t) + BC2 e(t)
C2: dt (4.74)
u(t) = CC2 xC2 (t) + DC2 e(t),

where e(t) is controller input, xC2 (t) is controller state and u(t) is plant input, the
discrete-time controllers have at least one realization in the delta form [31]

δxC2DT (k, p) = AC2DT xC2DT (k, p) + BC2DT e(k, p)


C2DT : u(k, p) = CC2DT xC2DT (k, p) + DC2DT e(k, p) (4.75)
p ∈ {T , h}

such that
lim AC2DT = AC2 , lim BC2DT = BC2
p→0 p→0
(4.76)
lim CC2DT = CC2 , lim DC2DT = DC2 .
p→0 p→0

1
Proof: From Lemmas 4.1 and 4.2, and Conditions 1 and 3, Hh,T Sh GHT and
ST ,h C1DT ST GHh behave like the single-rate systems ST GHT and Sh GHh , respec-
tively, for each time instant as the sampling periods approach zero. With Conditions
1 and 4 satisfied, the closed-loop discrete-time systems are stable at the sampling
instants and there exists at least one realization of M DT approaching that of M as the
sampling periods approach zero. Then, from Theorem 4.2, uniform-in-time conver-
gence of the continuous-time plant input and output in Fig. 4.8b, c to those respective
signals of the continuous-time system of Fig. 4.8a is obtained. 2
With Lemma 4.1, the output of Hh,T Sh GHT can be made arbitrarily close to that of
ST GHT for each fixed time instant. A consequence of Lemma 4.1 is that Hh,T Sh GHT
is a discrete-time model of G in the sense of Definition 4.1. Furthermore, for a fixed T ,
the output of Hh,T Sh GHT in Lemma 4.1 approaches that of the single-rate system
ST GHT according to (4.57), as N → 1, from (4.56) and (4.63). Finally, when
C1DT = 1, the system of Fig. 4.8b conceptually reduces to a single-rate discrete-time
system with period h according to (4.49).
Chapter 5
Global Digital Redesign

This chapter presents methods of digital redesign that result in discrete-time feedback
controllers stabilizing a continuous-time system and satisfying closed-loop perfor-
mance requirements over a larger range of sampling and update periods than what
can be achieved with a local digital redesign. We present the optimal closed-loop
(or global) digital redesign of feedback control systems and the discretization of
closed-loop systems for single- and dual-rate implementations. Furthermore, we de-
scribe practical controller order reduction methods that find application in digital
implementations with constrained number of bits.

5.1 Approaches to Control System Design

By control system design we refer to the computation of the controller subsystems, or


blocks, as transfer functions or state-space forms. Once this information is known,
one may implement the controllers as software running on the digital hardware
onboard the mobile platform. The material we present in this chapter pertains to the
conceptual portion of the design cycle.
There exist three approaches to the design of discrete-time controllers. They bear
the names direct discrete-time design, sampled-data design, and digital redesign.
Direct discrete-time design consists of computing the controllers directly in the
discrete-time domain. For design purposes, input, output, and state of a continuous-
time system or plant under control are considered at the discrete-time instants only
[29]. Plant models are assumed available to the designer.
To consider the entirety of the continuous-time signals, namely over all time
instants, one may resort to the so-called sampled-data design techniques [16].
Sampled-data design aims at achieving optimality. In practice, such design ap-
proach requires a fast-rate approximation of the continuous-time components of
the sampled-data system, and thus is actually a multi-rate discrete-time design.
The digital redesign of a known continuous-time feedback control system is most
often done in a local manner. This means that each controller block present in a
feedback loop is discretized using any of the methods presented in Chap. 3, with the
structure of the closed-loop system preserved in the process. Such individual con-
version of the controllers is sometimes termed local digital redesign [68]. The main

C. A. Rabbath, N. Léchevin, Discrete-Time Control System Design with Applications, 79


DOI 10.1007/978-1-4614-9290-0_5, © Springer Science+Business Media New York 2014
80 5 Global Digital Redesign

Fig. 5.1 Stability regions Im(z)

Re(z)
0 1

a
Im(γ)

Re(γ)
-2/T -1/T 0

disadvantage of local digital redesign is that the resulting sampled-data feedback


control system may have to be implemented at relatively fast sampling and control
update rates to ensure closed-loop stability, or to obtain a performance relatively
close to that of the continuous-time control system [4]. Stability and discretization is
discussed in Sect. 5.2. To relax the requirement on the sampling and update rates, one
may include the information on the closed-loop nature of the continuous-time feed-
back control system in the conversion to the discrete-time domain. This is the topic
of Sects. 5.3–5.6. Various techniques are presented to ensure a bounded complexity
in the digital implementation of the controllers.

5.2 Discretization and Stability

Basically, the stability of linear, time-invariant (LTI) systems is determined from the
location of the eigenvalues or poles. Figure 5.1 shows stability regions in the complex
z and γ planes. In the z plane, shown in Fig. 5.1a, all eigenvalues must lie within the
5.2 Discretization and Stability 81

unit circle centered at the origin of the plane for the discrete-time system expressed
in the shift state-space form to be internally stable [72]. For input-output stability,
the poles of a discrete-time system expressed in the z operator must lie within the
same unit circle in the z plane [72]. The stability region for the poles (input-output
stability) of a system with transfer function in the γ operator and the eigenvalues
(internal stability) of a system expressed in the delta form is shown in Fig. 5.1b.
Interestingly, the stability circle shown in Fig. 5.1b approaches the entire left-hand
side in the γ plane. Clearly, any point in the stability circle of the z plane is mapped
to the stability circle of the γ plane via the expression γ = (z − 1)/T .
Before we proceed with closed-loop stability, a fact on discretization must be
stated. When a stable continuous-time controller is discretized, using for instance
any of the methods presented in Chap. 3, the stability property of the resulting
discrete-time controller depends on the discretization method and the value of the
sampling period T used in the conversion process. Hold-equivalence and matched
pole-zero (MPZ) discretizations preserve stability for any nonpathological T . How-
ever, numerical integration methods may result in an unstable controller if T is too
large.
Even though a continuous-time feedback control system is stable, when one dis-
cretizes each of the controllers present in the loops, individually, and place them in
closed-loop with a hold equivalence discretization of the plant, at the same sampling
and update rates, the resulting closed-loop system may be unstable. The basic ex-
planation to such a stable-to-unstable closed-loop system conversion is as follows.
Local discretization does not take into account the closed-loop nature of the overall
system. As a result, the roots of the discrete-time characteristic equation may be
unstable for the value of T and the local discretization methods selected. Yet, when
T is chosen sufficiently small, the problem of closed-loop instability can be solved.
In summary, if closed-loop stability is lost, it is not due to local controllers going
from stable continuous-time systems to unstable discrete-time systems, and it is not
solely due to the selection of a particular hold at the input of the continuous-time
plant. A loss of closed-loop stability is a consequence of the continuous-time closed-
loop characteristics not being mapped to the discrete-time domain via local controller
discretization.
Consider the basic feedback control systems shown in Fig. 5.2. Let the LTI
continuous-time systems be given as
nG (s) nC (s)
G(s) = , C(s) = ,
dG (s) dC (s)
and the discrete-time controller, as
nC (z)
C(z) = .
dC (z)
The discrete-time plant labeled as SGH corresponds to a hold equivalence discretiza-
tion of plant G and is written as
nG (z)
G(z) = .
dG (z)
82 5 Global Digital Redesign

D(s)

+ U(s)
R(s) + nC(s) + nG(s) Y(s)

- dC(s) dG(s)

a
D(s)

+
+
R(z) + nC(z,T) + nG(s) Y(z)
H S
- dC(z,T) dG(s)

b
Fig. 5.2 Basic feedback control systems

The hold is identified by H and the instantaneous sampler by S in Fig. 5.2b. The
output of the continuous-time single-input, single-output (SISO) closed-loop system
with block diagram shown in Fig. 5.2a is
nC (s)nG (s) nG (s)dC (s)
Y (s) = R(s) + D(s). (5.1)
dG (s)dC (s) + nG (s)nC (s) dG (s)dC (s) + nG (s)nC (s)
The input to the plant is
nC (s)dG (s) dG (s)dC (s)
U (s) = R(s) + D(s). (5.2)
dG (s)dC (s) + nG (s)nC (s) dG (s)dC (s) + nG (s)nC (s)
Eqs. (5.1) and (5.2) are obtained prior to any pole-zero cancelation. Let us concentrate
on the system relating the reference input to the plant input and plant output. We
define
U (s)
M(s) = (5.3)
R(s)
nC (s)dG (s)
=
dG (s)dC (s) + nG (s)nC (s)
and
Y (s)
W (s) = (5.4)
R(s)
nC (s)nG (s)
= .
dG (s)dC (s) + nG (s)nC (s)
From expressions (5.3) and (5.4), it becomes clear that feedback provides a natural
polynomial cancelation between M and G since
5.2 Discretization and Stability 83

W (s) = M(s)G(s)
nC (s)dG (s) nG (s)
= ·
dG (s)dC (s) + nG (s)nC (s) dG (s)
and dG (s) is eliminated from the numerator and denominator parts of W (s).
Another feature of a feedback system pertains to the characteristic equation. The
solution to the characteristic equation gives the closed-loop poles. The characteristic
equation for the continuous-time closed-loop system shown in Fig. 5.2a is

dG (s)dC (s) + nG (s)nC (s) = 0. (5.5)

When one performs a local discretization of controller C(s), yielding discrete-time


controller C(z, T ), and preserves the information flow or structure of the continuous-
time control system, one obtains a control system with a structure shown in Fig. 5.2b.
The control system of Fig. 5.2b is interpreted as a discrete-time system from reference
input R(z, T ) to discrete-time plant output Y (z, T ). Assuming that no disturbance acts
against the closed-loop system, one obtains
nC (z, T )nG (z, T )
Y (z, T ) = R(z, T )
dG (z, T )dC (z, T ) + nG (z, T )nC (z, T )
and
nC (z, T )dG (z, T )
U (z, T ) = R(z, T ).
dG (z, T )dC (z, T ) + nG (z, T )nC (z, T )
As is the case in the continuous-time domain, with a discrete-time feedback system,
a natural cancelation of polynomials occurs, as can be appreciated with the following
equation
Y (z, T ) U (z, T ) nG (z, T )
= · .
R(z, T ) R(z, T ) d (z, T )
      G
=WT (z,T ) =MT (z,T )

The discrete-time poles of the closed-loop system from R(z, T ) to Y (z, T ) are
obtained by solving the following characteristic equation

dG (z, T )dC (z, T ) + nG (z, T )nC (z, T ) = 0. (5.6)

The relationship between the characteristic equations of the continuous-time and


sampled-data feedback systems, given respectively by Eqs. (5.5) and (5.6), is not
straightforward. Because G and C are locally discretized, without preserving the
mapping of the closed-loop poles of Eq. (5.5) to the discrete-time domain, there
is no guarantee that the roots of Eq. (5.6) are inside the unit circle in the complex
z-plane.
Intuitively, if T is selected small enough, closed-loop stability is preserved, in
general.
84 5 Global Digital Redesign

5.3 Optimal Closed-loop Digital Redesign

For optimal closed-loop digital redesign, or OCDR, we rely on several assumptions.


The systems are linear and SISO. For the sake of brevity and clarity of presentation,
we assume the systems have zero initial conditions. OCDR is performed on a closed-
loop continuous-time control system, or a fast, single-rate discrete-time closed-loop
system. In either case, the original system exhibits satisfactory performance charac-
teristics, such as sufficient margins of stability, acceptable transient and steady-state
behaviors, and appropriate disturbance rejection properties. The uniform sampling
and update periods used in the design and in the implementation are h, corresponding
to a slow rate of 1/ h Hz, and T , or a fast rate of 1/T Hz. The periods are related
as h = N · T , N ∈ Z + . T is chosen to be nonpathological with respect to the plant
transfer function and the reference-to-plant-input transfer function (RPITF).
Hold devices and instantaneous samplers present in the sampled-data loops are
synchronized at time t = 0. Holds have a bounded response to a unit discrete-
time pulse input and do not introduce any discrete zero in the hold equivalence
discretization of the plant which cancels a pole of the plant model at nonpathological
T values. Finally, exogenous inputs entering the feedback control systems have a
finite supremum norm and are uniformly continuous over [0, ∞), and independent
of T .
In general, OCDR is performed with the objectives of preserving the reference-
input tracking and the disturbance rejection properties of the original closed-loop
system. We confine our development to a SISO system with the design objective
of preserving the reference-input tracking property of the closed-loop system. We
ignore the disturbance input when carrying out the conversion to discrete-time.
Past researches on OCDR include [1], [16], [43], [61]. The OCDR method
presented in this section originates from [16].

5.3.1 Fast Discretization

The control system to be redesigned is shown in Fig. 5.3a. Plant G(s) may comprise
actuator and sensor dynamics. Precede G(s) by a hold device H and place the
instantaneous sampler S at the output of G(s). The transfer function of SGH is given
by G(z, T ). Proceed similarly for controllers A(s), B(s) and C(s). There results a
fast, single-rate discrete-time closed-loop system shown in Fig. 5.3b. The selection
of T depends on the design specifications and on the dynamics of the system under
control.
Assume that G has a realization [AG , BG , CG , DG ], where AG ∈ R n×n , BG ∈
R , CG ∈ R 1×n , and DG ∈ R, with R being the set of real numbers. The hold
n×1

equivalence discretization of G, at the fast rate of 1/T , results in


x he (k + 1, T ) = eAG T x he (k, T )
T
+ v=0 eAG (T −v) BG dv · u(k, T ), x he (0, T ) = 0n×1 , (5.7)
y he (k, T ) = CG x he (k, T ) + DG · u(k, T )
5.3 Optimal Closed-loop Digital Redesign 85

Fig. 5.3 Feedback systems. U


a Original continuous-time D
control system b Its fast R + Y
+ +
discretization A(s) C(s) G(s)
-

B(s)
a
YSD
A(z,T) C(z,T) USD
D
R + + +
H A(s) S H C(s) S H G(s) S
-
G(z,T)
S B(s) H

B(z,T)
b

where superscript ‘he’ denotes hold equivalence. This allows us to distinguish the
state and output of this system from those obtained with another discretization or
those of G(s) at the sampling instants. Signal u(k, T ) is the input to the zero-order
hold (ZOH) preceding the plant. y he (k, T ) is the sampled plant output. The transfer
function of SGH is given by G(z, T ).
Proposition 5.1 ensures that the continuous-time control input and plant output
of the control system of Fig. 5.3b operating at the fast rate of 1/T approach their
counterpart in the original continuous-time control system, as the sampling rate
approaches infinity, following Theorem 4.2.
Proposition 5.1 For the control systems of Fig. 5.3, with H being the ZOH and S the
instantaneous sampler, synchronized at a period of T , and with the same exogenous
input signals entering the two systems, the continuous-time plant input USD and
output YSD of the sampled-data control system in Fig. 5.3b converge uniformly-in-
time to those respective signals U and Y of the continuous-time control system of
Fig. 5.3a, as T → 0. 1
Proof: Immediate from Theorem 4.2. 2
When the closed-loop system to be redesigned is a fast discrete-time feedback
system, the OCDR process begins with Sect. 5.3.2.

5.3.2 Dual-rate Generalized Plant Model

Build the dual-rate generalized plant model shown in Fig. 5.4, with discrete-time
systems A(z, T ), B(z, T ), C(z, T ), and G(z, T ) calculated in Sect. 5.3.1, or obtained
from other means. The block diagram of Fig. 5.4 is for reference-input tracking
86 5 Global Digital Redesign

+
Hh,T A(z,T) C(z,T) L L-1 G(z,T)
-
r(k,h)
B(z,T)
L
From
L +
Controller L-1 ST,h
u(k,h) -
+ y(k,h)
- z1(k,h)
Hh,T G(z,T) L L-1 ST,h To
Controller

L
- +
Period of T z2(k,h)
Period of h L-1 ST,h ρ

Fig. 5.4 Dual-rate generalized plant model

purposes, and incorporates closed-loop system information. The reference input


signal is r(k, h).
h), which has to be designed.
The model in Fig. 5.4 is connected to controller C(z,
h) is
The output of the controller is u(k, h) and its input is y(k, h). Controller C(z,
obtained such that the induced norm from reference input r(k, h) to measured outputs
z1 (k, h) and z2 (k, h) is minimized.
The generalized plant of Fig. 5.4 is a dual-rate system with gain ρ ∈ R being a
weight on the difference in plant input signals. The gain is tuned by the designer. The
h), with its input and outputs operating at the update period
plant is labeled as G(z,
of h.

5.3.3 Solution to Discrete-time H2 Optimal Control Problem

The dual-rate generalized plant obtained in Sect. 5.3.2 is placed in closed-loop with
h), the controller to be designed. The block diagram of the slow-rate system
C(z,
used in the synthesis is illustrated in Fig. 5.5.
h) can be part of a slow, single-rate or dual-rate control
In practice, controller C(z,
system. Two potential structures are shown in Fig. 5.6. As stated in Chap. 4, to distin-
guish between holds and samplers found in dual-rate feedback systems, a subscript is
used to indicate the update period associated with the holds and samplers, typically
T or h units of time. Although not shown in the figure, each output of a multivariable
plant G is connected to ST or Sh . When the designer exploits the flexibility offered
5.3 Optimal Closed-loop Digital Redesign 87

Fig. 5.5 Slow-rate


closed-loop system z1(k,h)
z2(k,h) r(k,h)
G(z,h)

y(k,h) u(k,h)

C(z,h)

by a dual-rate generalized hold (DRGH) other than the Discrete-time zero-order


hold (DT-ZOH), the dual-rate control system obtained is a FCIU system. When the
DRGH is a DT-ZOH and the Dual-rate generalized sampler (DRGS) is the dual-rate
decimator sampler (DR-DS), then we obtain a slow, single-rate feedback control
system.
The OCDR problem is formulated. Given a fast discrete-time control system,
design a discrete-time control system, operating either at a single or a dual rate, such
that its closed-loop step responses optimally match those of the fast discrete-time
control system in the sense that the cost function J , given by Eq. (5.8), is minimized
[14], [16].


J = |z1 (k, h)|2 + |z2 (k, h)|2 (5.8)
k=0

The minimization of J is a dual-rate discrete-time H2 problem. On the one hand,


the problem is dual-rate since systems and signals with periods h and T are present

+
Sh C(z,h) Hh,T HT G(s)
-

ST,h ST
Period of T
Period of h Sh
a
+
Sh C(z,h) Hh G(s)
-

Sh
b
Fig. 5.6 Feedback control systems
88 5 Global Digital Redesign

in the generalized plant, even though signals and systems having period T do not
explicitly appear in the expression for J . On the other hand, with a unit discrete-time
pulse input r(k, h) and a filter placed at the exogenous input channel to convert the
pulse signal to a step, the discrete-time H2 problem consists of obtaining controller
h) such that the discrete-time H2 norm of the closed-loop system relating r(k, h)
C(z,
to [z1 (k, h), z2 (k, h)]T is minimized or, equivalently, such that J is minimized. Blocks
Hh,T and ST ,h influence the performance of the closed-loop system. The selection of
these blocks is an integral part of the design process, although there are no formal
rules to select those blocks. To start the design process, one may opt for the DT-ZOH
and the DR-DS.
The discrete-time H2 problem is solved by using algebraic Riccati equations or lin-
ear matrix inequality techniques [48], [74], although the solution method constrains
the construction of the generalized plant model. For example, with generalized plant
h) given as
G(z,
⎡ ⎤
AG B1 B2
h) = ⎣ C1
G(z, D11 D12 ⎦ , (5.9)
C2 D21 D22
T
and forming algebraic Riccati equations to solve the H2 problem, D12 and D21
must have full column rank. Furthermore, the pair (AG , B2 ) must be stabilizable
h) must reflect these requirements; for
and (C2 , AG ), detectable [16]. Hence, G(z,
instance, by appropriately selecting DRGH Hh,T and DRGS ST ,h . The resulting
h) is strictly proper.
controller C(z,

5.3.4 Order Reduction

h) shown in Fig. 5.6a is


If the number of operations associated with controller C(z,
unacceptable for the computing power available, the order of the controller should
be reduced while aiming at maintaining closed-loop stability. Here, we assume that
hold HT is a ZOH, ST is the instantaneous sampler, ST ,h is the DR-DS, and the
continuous-time system is LTI and SISO. The order reduction method presented in
this section takes its origin from [68].

5.3.4.1 Computation of Closed-loop Transfer Function

Calculate W (z, h), the stable closed-loop system relating the sampled reference input
to the input to Hh,T . Furthermore, obtain the transfer function for Sh GHT Hh,T and
write it as a ratio of polynomials G(z, h) = nG (z, h)/dG (z, h). Let ∂[nG (z, h)] = nG
and ∂[dG (z, h)] = dG , where ∂[ · ] denotes the degree of its rational polynomial
argument.
Hh,T must be selected such that there exist discrete-time transfer functions for the
systems of interest. A DT-ZOH is one such hold.
5.3 Optimal Closed-loop Digital Redesign 89

5.3.4.2 Conversion to w-domain

(z, h) to W
Convert W (w, h) using

2 z−1
w= . (5.10)
T z+1
Poles inside the unit circle of the z-plane are known to be mapped to the left-hand
side of the w-plane [81]. Furthermore, conventional frequency domain synthesis and
analysis methods for continuous-time systems can be applied to W (w, h) even when
h is relatively long [81].

5.3.4.3 Application of Known Model Reduction Technique

Select the desired degree for the denominator polynomial of the closed-loop system.
Apply a continuous-time model reduction method on W (w, h); for instance,
balanced-truncation model reduction [75] or Routh-Padé model reduction [45]. This
r (w, h). With either method, closed-loop stability is preserved.
process results in W

5.3.4.4 Conversion to z-domain

r (w, h) to W
Discretize W r (z, h) using a discretization method such as the matched
pole-zero method.
Write
r (z, h) = nW (z, h)/dW (z, h),
W (5.11)

where ∂[nW (z, h)] = nW and ∂[dW (z, h)] = dW .

5.3.4.5 Calculation of Individual Controller Blocks for Reference-input


Tracking

Compute the discrete-time controllers from the knowledge of W r (z, h). To track a ref-
erence input R(z, h) = nR (z, h)/dR (z, h), solve the following Diophantine equation
for u(z, h) and v(z, h)

u(z, h)dR (z, h)dG (z, h) + v(z, h)nG (z, h) = dW (z, h) (5.12)

where

u(z, h) = ul zl + ul−1 zl−1 + · · · + u1 z + u0 (5.13)


90 5 Global Digital Redesign

Fig. 5.7 Control system after +


order reduction ~ ~
A(z,h) C(z,h) Hh,T HT G(s)
-

ST,h ST

Period of T
Period of h

v(z, h) = vr zr + vr−1 zr−1 + · · · + v1 z + v0 . (5.14)

If the denominator of the plant contains all of the roots of dR (z, h), then the latter
polynomial can be taken out of Eq. (5.12). Assuming v(z, h) does not contain any
unstable roots of the plant, if any, the discrete-time controller is obtained as

4 h) = v(z, h)
C(z, . (5.15)
u(z, h)dR (z, h)
4 h) = 1,
The resulting discrete-time control system is shown in Fig. 5.7, where A(z,
and

4 (z, h) = v(z, h)dG (z, h)


W . (5.16)
u(z, h)dR (z, h)dG (z, h) + v(z, h)nG (z, h)

It is clear that the denominator of W4 (z, h) equals that of W


r (z, h), thereby ensuring
closed-loop stability; however, the zeros of W4 (z, h) may differ from those of W
r (z, h).
The transient response obtained with the reduced-order control system thus exhibits
a very different behavior than that of the full-order control system. To have control
over the zeros, a discrete-time pre-filter is included at the reference input channel
with transfer function given as

4 h) = m(z, h)
A(z, (5.17)
v(z, h)
if all the roots of v(z, h) lie within the unit circle. Polynomial m(z, h) may include
the dominant zeros of W r (z, h) that are inside the unit circle. Furthermore, m(z, h)
should be selected such that
m(z, h)
lim =1 (5.18)
z→1 v(z, h)

to ensure zero steady-state error between reference input and plant output, at the
sampling instants. At steady-state, the reduced-order control system satisfies the
input-tracking requirement. Write the tracking error of the reduced-order discrete-
time control system of Fig. 5.7 as

E(z, h) = R(z, h) − Y (z, h)


u(z, h)dR (z, h)dG (z, h) nR (z, h) (5.19)
= .
u(z, h)dR (z, h)dG (z, h) + v(z, h)nG (z, h) dR (z, h)
5.4 Plant Input Mapping 91

Fig. 5.8 Plant input mapping Continuous-time plant models


concept

Continuous-time controllers

Continuous-time closed-loop systems

Discrete-time closed-loop systems Discrete-time plant models

Discrete-time controllers

Applying the final value theorem [47], the tracking error at steady-state, which is
written as
z−1 u(z, h)dG (z, h)nR (z, h)
lim e(k, h) = lim , (5.20)
k→∞ z→1 z u(z, h)dR (z, h)dG (z, h) + v(z, h)nG (z, h)
approaches zero provided the discrete-time closed-loop system is stable; that is, if
4 (z, h) contains no poles on or outside the unit circle. The same steady-state behavior
W
4 h) multiplies R(z, h) and Eq. (5.18) holds.
holds when pre-filter A(z,

5.4 Plant Input Mapping

Closed-loop discretization is the practical method of choice to ensure closed-loop


stability and a certain level of performance at sampling and update rates for which
local digital redesign fails. Typically, instability may occur at relatively slow rates
of sampling and control update when using local digital redesign.
It may happen that a digital control system operates at rates of sampling and
control update significantly slower than what is physically feasible with the latest
digital technology. This may arise for several reasons. For proven reliability and low
costs, older generation processors may be used. In emergency or critical conditions
of operation, a supervisory controller may slow down some of the control updates to
give precedence to other types of processing such as mission command and control,
situation awareness information processing and feed to ground control stations.
Besides optimal closed-loop digital redesign, there exists a closed-loop discretiza-
tion method named plant input mapping or PIM [35], [36], [54], [68].

5.4.1 Basic Principle

The design steps are shown in Fig. 5.8. With the knowledge of the continuous-time
control system, one may discretize the closed-loop systems and plant models. The
92 5 Global Digital Redesign

discrete-time closed-loop systems obtained become the desired or target discrete-


time systems. One then calculates the discrete-time controllers from the knowledge of
the desired discrete-time characteristic equations. Closed-loop discretization enables
preserving characteristics of the continuous-time control input in the discrete-time
domain, hence the name plant input mapping or PIM [54].
To apply PIM, we make several assumptions. The plant and controllers are as-
sumed to be LTI and to have zero initial conditions. Only the SISO case is presented.
Such a case finds applications in mobile platforms. The uniform sampling period T
is chosen to be nonpathological with respect to the plant transfer function and the
RPITF. Recall that the RPITF is the transfer function from reference input to plant
input. The assumption on T does not cause any practical inconvenience. On the one
hand, the nonpathologicity of T with respect to the plant is needed, for instance,
to prevent pole-zero cancelations in the discrete-time plant model that do not take
place with the corresponding poles and zeros of the continuous-time plant. On the
other hand, T being nonpathological with respect to the continuous-time RPITF is
required to preserve the order of the RPITF in the conversion to discrete-time. The
hold device and instantaneous sampler are synchronized at the sampling period T .
The hold has a bounded response to a unit discrete-time pulse input and does not
introduce any zero in the hold-equivalent model of the plant which cancels a pole of
the plant model at nonpathological T values [55]. The ZOH satisfies this condition.
The steps in PIM and the computation of the controllers are presented in
Sects. 5.4.2–5.4.6.

5.4.2 Continuous-time Closed-loop Transfer Function

The first step of PIM is to obtain a closed-loop transfer function. Given the
continuous-time plant model
b(s) bm s m + bm−1 s m−1 + · · · + b1 s + b0
G(s) = = , (5.21)
a(s) an s n + an−1 s n−1 + · · · + a1 s + a0
where m ≤ n and knowing the continuous-time control system of Fig. 5.9a with
controller transfer functions given by
n1 (s) n2 (s) n3 (s)
A(s) = , C(s) = , B(s) = , (5.22)
d1 (s) d2 (s) d3 (s)
the continuous-time RPITF M(s) is calculated as
U(s)
M(s)= (5.23)
R(s)
n1 (s)n2 (s)d3 (s)a(s)
= (5.24)
d1 (s)d2 (s)d3 (s)a(s) + d1 (s)n2 (s)n3 (s)b(s)
where the numerator degree is q and that of the denominator is p.
5.4 Plant Input Mapping 93

R + U Y
A(s) C(s) G(s)
-
B(s)

R U
M
Continuous-time Continuous-time
reference input plant input

a
RDT + UDT YDT
ADT(z,T) CDT(z,T) GDT(z,T)
-

BDT(z,T)

RDT UDT UDT YDT


MDT HT G ST
Discrete-time Discrete-time
reference input plant input

b
Fig. 5.9 Closed-loop transfer functions. a Continuous-time b Discrete-time control systems

There may be several plant models and closed-loop transfer functions available
to the designer. For example, one may have obtained one model for each operating
point. An operating point is typically characterized by the angle of attack, velocity,
and altitude of the air vehicle. In such situation, the process described in this chapter
is repeated for each operating point.

5.4.3 Closed-loop Discretization

As the second step of PIM, discretize the RPITF M(s) with the matched pole-zero
method at the sampling period T . Discretization by matching poles and zeros is
the subject of Sect. 3.4. The MPZ method allows us to preserve, in going from a
continuous-time control system to a discrete-time control system, the pole-zero can-
celation that naturally occurs with continuous-time feedback systems, as discussed
in Sect. 5.2.
94 5 Global Digital Redesign

The resulting discrete-time RPITF is labeled M DT . The following conditions have


to be satisfied when performing the discretization:
'
lim M DT (γ , T )'γ = esT −1 = M(s), pointwise in s,
T →0 ' T (5.25)
M DT (γ , T )'γ =γ0
= M(s)|s=s , 0

where s0 is a real constant such that 0 ≤ s0 << 1, γ0 = (es0 T − 1)/T , T > 0.

5.4.4 Open-loop Discretization

Third, discretize the plant model. Discretize G(s) with the hold equivalence
discretization to obtain ST GHT and write its transfer function as

b(γ ) bm γ m + bm−1 γ m−1 + · · · + b1 γ + b0


GDT (γ , T ) = = (5.26)
a(γ ) an γ n + an−1 γ n−1 + · · · + a1 γ + a0
where m ≤ m ≤ n, ST is the instantaneous sampler, and HT is the hold device.

5.4.5 Controllers

As the fourth and final step of PIM, obtain the discrete-time controllers.
Rewrite the RPITF as
m(γ )a(γ )
M DT (γ , T ) = , (5.27)
d(γ )
where ∂[m(γ )] = q − n, with ∂ denoting the degree of its argument. m(γ ) is that
portion of the numerator polynomial in M DT (γ , T ) whose roots are different from
the poles of GDT (γ , T ).
Rewrite the denominator polynomial as

d(γ ) = dp γ p + dp−1 γ p−1 + · · · + d1 γ + d0 . (5.28)

Solve the Diophantine equation [57] given by

u(γ )a(γ ) + v(γ )b(γ ) = d(γ ) (5.29)

for u(γ ) and v(γ ). In Eq. (5.29),

u(γ ) = ul γ l + ul−1 γ l−1 + · · · + u1 γ + u0 , (5.30)


v(γ ) = vr γ + vr−1 γ
r r−1
+ · · · + v1 γ + v 0 . (5.31)

Once the polynomials u(γ ) and v(γ ) are known, the controller transfer functions are
calculated. Let w(γ ) be an arbitrary stable polynomial of degree l, where max (r, q – n)
≤ l. By stable polynomial, we mean that the roots of the polynomial lie within the
5.4 Plant Input Mapping 95

circle of stability in the γ −plane, as shown in Fig. 5.1b, namely the roots satisfy
|T γ + 1| < 1. A controller triplet is given as
m(γ ) w(γ ) v(γ )
ADT (γ , T ) = , C DT (γ , T ) = , B DT (γ , T ) = . (5.32)
w(γ ) u(γ ) w(γ )
An implementation with a pair of non-unity controllers is possible when any of the
following conditions is satisfied.
1. If u(γ ) is stable and max (r, q – n) ≤ l, set
m(γ ) v(γ )
ADT (γ , T ) = , C DT (γ , T ) = 1, B DT (γ , T ) = . (5.33)
u(γ ) u(γ )
2. If m(γ ) is stable and r ≤ (q − n) ≤ l, set
m(γ ) v(γ )
ADT (γ , T ) = 1, C DT (γ , T ) = , B DT (γ , T ) = . (5.34)
u(γ ) m(γ )
3. If v(γ ) is stable and (q − n) ≤ r ≤ l, set
m(γ ) v(γ )
ADT (γ , T ) = , C DT (γ , T ) = , B DT (γ , T ) = 1. (5.35)
v(γ ) u(γ )
The conditions on the stability of the polynomials given in Eqs. (5.33)–(5.35) ensure
that the discrete-time closed-loop system is stable for any nonpathological finite T
[69].
The basic PIM method readily applies to decoupled multivariable systems having
equal number of inputs and outputs, where the off-diagonal elements of the transfer
function matrices are zero. The procedure is applicable to each non-zero diagonal
entry of the matrices of transfer functions.

5.4.6 Solution to Diophantine Equation

From the coefficients of like powers of γ on both sides of Eq. (5.29), one may write
the linear system of equations
l+1 r+1
     
⎡ ⎤
an
⎢ .. ⎥ ⎡ ⎤
⎢ an−1 . bm ⎥ ul ⎡ ⎤
⎢ ⎥ ⎢ .. ⎥ dp
⎢ .. .. .. ⎥ ⎢ . ⎥
⎢ . . an bm−1 . ⎥ ⎢ ⎥ ⎢ dp−1 ⎥

⎢ a1 .. .. ⎥
⎥ ⎢ u0 ⎥ = ⎢⎢
⎥ . (5.36)

⎢ an−1 . . bm ⎥ ⎢ ⎥ ⎢
..

⎢ ⎥ ⎢ vr ⎥ ⎢ . ⎥
⎢ a0 .. .. b0 bm−1 ⎥ ⎢ ⎥ ⎣ ⎦
⎢ . . ⎥ ⎢ . ⎥ d1
⎢ .. .. ⎥ ⎣ .. ⎦
⎣ .. . . ⎦ d0
. a1 v0   
a0 b0    =Y
   =X
=Am
96 5 Global Digital Redesign

Matrix Am ∈ R (p+1)×(l+r+2) is composed of the coefficients of the transfer function


of the discrete-time plant model. In Eq. (5.36), the entries of matrix Am not shown
have values of zero. The entries of vector X ∈ R (l+r+2)×1 are the controller transfer
function coefficients. The entries of vector Y ∈ R (p+1)×1 are the coefficients of
the denominator polynomial of the target discrete-time closed-loop system transfer
function.
A solution to the Diophantine equation is obtained when one solves Eq. (5.36) for
vector X. The solution to Am X = Y may be obtained via Gaussian elimination [30]
using any numerical software. With the degrees of u(γ ) and v(γ ) set to l = p − n
and r = n − 1, respectively, there exists a unique solution X if and only if b(γ ) and
a(γ ) are coprime [31], and

l + r + 1 = p. (5.37)

Another condition on the polynomial degrees, p ≥ 2n − 1, is required to obtain


proper controllers when using Eqs. (5.33)–(5.35). If this degree requirement is not
satisfied with the polynomials of the original system, one may add to the continuous-
time RPITF a stable, biproper, unity DC gain transfer function, (s), of order greater
than or equal to (2n − 1 − p) and having identical sets of poles and zeros. The second
step in the PIM design process then consists of discretizing M(s)(s) to M DT (γ , T ).
When p = 2n − 1 and m = n, Am is the so-called Sylvester Matrix [9] associated
with GDT (γ , T ).
Proposition 5.2 presents sufficient conditions to obtain coprime polynomials b(γ )
and a(γ ).
Proposition 5.2 [16], [68] When the plant G(s) = b(s)/a(s) is irreducible and the
assumptions given in Sect. 5.4.1 are satisfied, the discrete-time system obtained by
means of the hold equivalence discretization of G, and written as GDT (γ , T ) =
b(γ )/a(γ ), is composed of coprime polynomials b(γ ) and a(γ ). 1
Proof: An irreducible plant G(s) = b(s)/a(s) has a minimal realization. In other
words, the realization is observable and controllable. Let a minimal realization for
G(s) have state-space elements {A, B, C, D}. Recalling the assumptions presented in
Sect. 5.4.1, the discrete-time system obtained with the hold equivalence discretization
of G then has an observable and controllable realization.
To demonstrate that the discrete-time realization is observable, it must be shown
that [16]
⎡ ⎤
eAT − I e λi T − 1
rank ⎣ T − I ⎦ = n, for i = 1, 2, . . ., n (5.38)
T
C

knowing that, in the continuous-time domain,


 
A − λi I
rank = n, for i = 1, 2, . . ., n. (5.39)
C
5.5 Generalized Plant Input Mapping 97

In a procedure reminiscent of the proof of Theorem 3.2.1 in [16], assume (C, A) is


observable and T is nonpathological. Define
$ Ts % $ Tλ %
e −1
T
− e Ti −1
g(s) = for i = 1, 2, . . ., n (5.40)
s − λi
which is analytic for all s and which satisfies limT →0 g(s) = 1, for all s. The zeros of
g(s) are given by the set {s : s = λi ± j · 2πj/T , j = 1, 2, . . . and i = 1, 2, . . ., n}.
The fact that T is nonpathological means that no zero of g(s) equals to an eigenvalue
λi . From the spectral mapping theorem, the eigenvalues of g(A) correspond to the
values of g at the eigenvalues of A. Since 0 is not an eigenvalue of g(A), even if it
belongs to the set of eigenvalues of A, g(A) is non-singular. Therefore, one writes
⎡ ⎤
eAT − I e λi T − 1   
⎣ − I ⎦ = g(A) 0 A − λi I
T T . (5.41)
0 1 C
C

The right-most term on the right-hand side of (5.41) is invertible from the
observability of the continuous-time realization, whereas the matrix
 
g(A) 0
(5.42)
0 1
is nonsingular since g(A) is so.
For the controllability property, with the assumptions presented in Sect. 5.4.1, it is
T
clear that if the pair (A, B) is controllable, the pair ( e T−I , T1 v=0 eA(T −v) BH (v)dv)
AT

is controllable in a discrete-time sense, where H (v) is a hold having a single-interval


discrete-time pulse response. 2

5.5 Generalized Plant Input Mapping

The application of the basic PIM method results in two- and three-controller feedback
control structures even if the original continuous-time system is a single-loop, single-
controller feedback system. With plant models of relatively high order, basic PIM
may result in controllers with orders larger than those of the continuous-time feedback
system.
The basic PIM concept can be generalized to constrain the complexity of the
control system [68], [69].

5.5.1 Constrained Number of Controllers

When basic PIM is implemented with a structure comprising dynamic controller


ADT (γ , T ), while the continuous-time counterpart A(s) is a gain, ADT (γ , T ) is
98 5 Global Digital Redesign

modified to a gain block. The designer may tune this gain to force the closed-loop
system to meet a DC gain or a low-frequency gain requirement. The location of the
zeros of the closed-loop system are affected by this change. Closed-loop stability,
however, remains unchanged.
With this generalized PIM technique, the first three steps of basic PIM are again
followed. For the fourth step, the controller transfer functions are calculated with
any of Eqs. (5.43)–(5.45). In the equations, 0 ≤ γ0 << 1.
1. With a stable polynomial w(γ ) of degree l such that max (r, q – n) ≤ l, set
'
m(γ ) '' w(γ ) v(γ )
ADT = ' , C DT (γ , T ) = , B DT (γ , T ) = . (5.43)
w(γ ) γ =γ0 u(γ ) w(γ )

2. If u(γ ) is stable and max (r, q – n) ≤ l, set


'
m(γ ) '' v(γ )
A =DT
, C DT (γ , T ) = 1, B DT (γ , T ) = . (5.44)
u(γ ) 'γ =γ0 u(γ )

3. If v(γ ) is stable and (q − n) ≤ r ≤ l, set


'
m(γ ) '' v(γ )
A =DT
, C DT (γ , T ) = , B DT (γ , T ) = 1. (5.45)
v(γ ) 'γ =γ0 u(γ )

With Eq. (5.43), when all the roots of m(γ ) are within the circle of stability, polyno-
mial w(γ ) is selected such that its roots are stable and as close as desired to those of
m(γ ). Clearly, one then sets w(γ ) = m(γ ), and ADT is unity.

5.5.2 Constrained Order

By restricting the degrees of polynomials u(γ ) and v(γ ), in other words the dimension
of vector X in Eq. (5.36), one constrains the order of the controllers. With a relatively
small dimension enforced on X, the system of equations (5.36) is solved in a least-
squares sense as
 
= ATm Am −1 ATm Y.
X (5.46)

is the least-squares estimate of X provided Am has full column rank. Matrix Am has
X
full column rank when b(γ ) and a(γ ) are coprime. The controller transfer functions
are obtained from Eqs. (5.33)–(5.35) using the entries of X. Additional conditions
must be imposed to guarantee that the orders of at least C (γ , T ) and B DT (γ , T )
DT

are the same as those of the original continuous-time controllers.


For a control system composed of dynamic controllers C(s) and A(s) (with
B(s) = 1), or B(s) and A(s) (with C(s) = 1), as shown in Fig. 5.9a, the first
three steps of basic PIM are performed while ignoring the presence of A(s). Con-
troller A(s) is discretized with the matched pole-zero method to yield ADT (γ , T )
5.5 Generalized Plant Input Mapping 99

and is implemented as part of the closed-loop structure shown in Fig. 5.9b to pre-
serve the filter on the reference input channel. Then, knowing the entries of X, the
discrete-time controller transfer functions are obtained with Eqs. (5.33)–(5.35).
For continuous-time feedback systems that include three dynamic controllers or
two controllers C(s) and B(s), after X is calculated, write polynomials u(γ ) and
v(γ ) as u(γ ) = u1 (γ )u3 (γ ) and v(γ ) = v1 (γ )v3 (γ ) such that ∂[u1 (γ )] = ∂[d1 (s)],
∂[u3 (γ )] = ∂[d3 (s)], ∂[v1 (γ )] = ∂[n1 (s)], and ∂[v3 (γ )] = ∂[n3 (s)]. This procedure
is not performed if it results in a polynomial in γ with complex coefficients.
If v1 (γ ) and u3 (γ ) are stable,
∂[v1 (γ )] ≤ ∂[u1 (γ )], ∂[v3 (γ )] ≤ ∂[u3 (γ )], ∂[m(γ )] ≤ ∂[v1 (γ )u3 (γ )], (5.47)
then the controllers are calculated as
m(γ ) v1 (γ ) v3 (γ )
ADT (γ , T ) = , C DT (γ , T ) = , B DT (γ , T ) = . (5.48)
v1 (γ )u3 (γ ) u1 (γ ) u3 (γ )

The controllers form a system from RDT (γ ) to UDT (γ ) denoted as M  DT (γ , T ) with

a structure identical to that shown in Fig. 5.9b. System M DT (γ , T ) has the same set
DT
of zeros as that of M (γ , T ), but different pole locations. When M  DT (γ , T ) has all

its poles inside the stability region given by inequality |T γ + 1| < 1, a DC gain or
low-frequency requirement is met by adding a gain K in the input channel such that
' '

M DT (γ , T )'' · K = M DT (γ , T )'γ =γ0 . (5.49)
γ =γ0

Lemma 5.1 provides convergence conditions for the least-squares estimate of X.


Lemma 5.1 [69] Estimator X obtained with (5.46) approaches vector X CT
associated with the known continuous-time control system as T → 0. 1
Proof: For the continuous-time control system shown in Fig. 5.9a, knowing
Eqs. (5.22) and (5.23), one may calculate a polynomial d CT (s) given as
d CT (s) = d1 (s)d2 (s)d3 (s)a(s) + d1 (s)n2 (s)n3 (s)b(s), (5.50)
     
=uCT (s) =vCT (s)

where
d CT (s) = dpCT s p + dp−1
CT p−1
s + · · · + d1CT s + d0CT , (5.51)
u CT
(s) = ufCT s f + CT f−1
uf−1 s + ··· + u1CT s + u0CT , (5.52)
vCT (s) = vhCT s h + vh−1
CT h−1
s + · · · + v1CT s + v0CT . (5.53)
The polynomial given by Eq. (5.50) is the denominator polynomial of RPITF M(s),
and corresponds to the characteristic equation of the continuous-time control system
when it is set equal to zero. Degrees f and h are fixed, and follow from the available
continuous-time control system. One may associate with Eq. (5.50) a system of equa-
tions written as ACT X CT = Y CT , where ACT ∈ R (p+1)×(f+h+2) , XCT ∈ R (f+h+2)×1
and Y CT ∈ R (p+1)×1 whose entries correspond to the coefficients of the appropriate
powers of s in (5.50). The system of equations is given in Eq. (5.54).
100 5 Global Digital Redesign

f+1 h+1
     
⎡ ⎤
an 0 0 ⎡ ⎤
⎢ .. ⎥ ufCT ⎡ ⎤
⎢ an−1 . bm ⎥ dpCT
⎢ ⎥ ⎢ . ⎥
⎢ .. .. .. ⎥ ⎢ .. ⎥ ⎢ ⎥
⎢ . bm−1 . ⎥ ⎢ ⎥ CT
⎢ . an ⎥ ⎢ uCT ⎥ = ⎢ ⎢
dp−1 ⎥

⎢ a1 an−1 .. .. ⎥ ⎢ 0 ⎥ ⎢ .. ⎥
⎢ . . bm ⎥ ⎢ CT ⎥ ⎢ . ⎥
⎢ .. .. ⎥ ⎢ vh ⎥ ⎢ ⎥
⎢ a0 . . b0 bm−1 ⎥ ⎢ ⎥ ⎣ d1CT ⎦
⎢ ⎥ ⎢ .. ⎥
⎢ .. .. .. ⎥ ⎣ . ⎦
⎣ . a1 . . ⎦ d0CT
0 b0 v0CT   
0 a0    =Y CT
   =X CT
=ACT
(5.54)

Let l = f (f = p − n) and r = h, respectively, when (f + h + 1) < p. Since


GDT (γ , T ) is a discrete-time model of G(s), and convergence in transfer function
occurs according to Definition 4.3, and M DT (γ , T ) is a matched pole-zero model
of M(s), we write Am = ACT + A and Y = Y CT + Y , where limT →0 A =
0(p+1)×(l+r+2) and limT →0 Y = 0(p+1)×1 . Knowing solution XCT exists, from the
very existence of the continuous-time control system, if the columns of ACT are
linearly independent, the solution is unique and is expressed as

XCT = ((ACT )T ACT )−1 (ACT )T Y CT . (5.55)

− X CT is
Then, a bound on the vector norm of X
- -
- X − X CT - ≤ f1,T + f2,T + f3,T , (5.56)

where

-# -
-  CT T  CT &−1  CT T -
f1,T = -
- A + A A + A A + A - · Y
- (5.57)
-# -
-  CT T  CT &−1 - - CT - - -
-
f2,T = - A + A A + A - · -Y - · -AT - (5.58)
-
-# -
-  CT T CT −1  CT T &−1 -
f3,T = -
- I + (A ) A (A ) A+A T CT
A + A T
A − I -
-
- - - - - - −1 -
-
· -Y CT - · -(ACT )T - · - (ACT )T ACT -. (5.59)

With the knowledge of Eqs. (5.57)–(5.59), given any ξ > 0, there exists a T1 such
that f1,T < ξ/3 for all T < T1 , a T2 such that f2,T < ξ/3 for all T < T2 , and a T3
- for all T < T3 . Choosing T < κ, where κ = min {T1 , T2 , T3 } ,
such that- f3,T < ξ/3
implies - X − XCT - < ξ/3 + ξ/3 + ξ/3 = ξ. 2
With Lemma 5.2, we show that for a sufficiently small T the closed-loop system
with constrained-order controllers is stable.
5.6 PIM for Dual-rate, Two-loop Feedback Control 101

Lemma 5.2 [69] All poles of system M  DT (γ , T )K lie inside the stability region

|T γ + 1| < 1 if 0 < T < Ts , where Ts is some upper bound on the sampling and
update periods. 1
- -
Proof: Write Y Bound -
= Am X. Y − Y CT - as
- - - - - - - -
- Y − Y CT - ≤ -ACT - · - X − X CT - + A · - X- . (5.60)
- -
From the convergence of - X − X CT - presented in Lemma 5.1 and the fact
limT →0 A = 0(p+1)×(l+r+2) , given
- any -
> 0, there exists a κ > 0 such that
the condition T < κ implies - Y − Y CT - <
. This means that the coefficients
of the denominator polynomial, d(γ ), of M  DT (γ , T ) approach the corresponding

coefficients of the denominator of M(s), d (s), as T → 0. Thus, one writes


CT

     
) = dpCT + dp γ p + · · · + d1CT + d1 γ + d0CT + d0
d(γ (5.61)

where limT →0 dj = 0 for 0 ≤ j ≤ p. Apply, then, the w-transformation


w
γ = (5.62)
1 − T w/2
) and rewrite the polynomial as
to d(γ

p
  w
= dpCT + dp
d(w) + ···
1 − T w/2

  w  
+ d1CT + d1 + d0CT + d0 , (5.63)
1 − T w/2
where the region of stability in the γ -plane corresponds to the left-half w-plane.
From the facts that the roots of a characteristic equation is a continuous function
approach the poles of M(s) as
of the sampling interval [65] and the roots of d(w)
T → 0, it follows that M  DT (γ , T )K has all of its poles within the stability region

|T γ + 1| < 1 for a sufficiently small T . 2


Constraints on the number and the order of controllers is enforced with the meth-
ods of Sects. 5.5.1 and 5.5.2. However, the poles and zeros of the resulting closed-loop
system will generally differ from those of the feedback system obtained with the basic
PIM method.

5.6 PIM for Dual-rate, Two-loop Feedback Control

The concept of PIM is applied to two-loop, LTI feedback control systems. An ap-
plication for such a system is the acceleration autopilot of an airborne platform, a
topic of Chap. 7. Figure 5.10 presents the continuous-time structure with the known
dynamic blocks A(s), B(s), C1 (s), and C2 (s), and plant models G1 (s) and G2 (s).
A six-step procedure is presented to convert this continuous-time system to a
dual-rate, two-loop feedback control system.
102 5 Global Digital Redesign

U1

R + + U Y
A(s) C1(s) G1(s)
- -

C2(s) G2(s)
U2

B(s)
Fig. 5.10 Two-loop continuous-time linear, time-invariant feedback control system

First, obtain the expression for the inner-loop portion of the continuous-time
feedback system as
G1 (s)
Y (s) = U1 (s). (5.64)
1 + C2 (s)G2 (s)
Second, calculate a closed-loop transfer function and discretize it. Obtain M(s), the
closed-loop transfer function from reference input R to U1 , the output of C1 (s), as

C1 (s)A(s)[1 + C2 (s)G2 (s)]


M(s) = .
1 + C1 (s)B(s)G1 (s) + C2 (s)G2 (s)
Discretize M(s) using the matched pole-zero method with the (slow) update period
h. The resulting system is labeled M(z, h). A gain may have to be tuned such that

M(z, h)|z=z0 = M(s)|s=s0 , (5.65)

where s0 is a real constant such that 0 ≤ s0 << 1 and z0 = es0 h .


Express M(z, h) as
nm (z, h)
M(z, h) = (5.66)
dm (z, h)
where nm (z, h) and dm (z, h) are rational polynomials in z. Let ∂[nm (z, h)] = nm and
∂[dm (z, h)] = dm , where ∂ denotes the degree of its argument.
Third, define the structure of the control system and calculate the inner-loop
controller. The structure of the dual-rate control system is shown in Fig. 5.11. Inner-
loop controller C2 (z, T ) is simply a fast hold-equivalence discretization of C2 (s)
obtained at an update period of T .
Fourth, obtain an expression for the inner-loop system G(z,4 h) shown in Fig. 5.12.
In doing so, assume that the DRGS is the DR-DS. Express the fast discrete-time
system from U1,DT (z, T ) to YDT (z, T ), labeled W (z, T ), as
5.6 PIM for Dual-rate, Two-loop Feedback Control 103

+
Hh,T +
~ ~
A(z,h) C(z,h) HT G1(s) Sh
- -

ST C2(s) HT ST G2(s)

C2(z,T)

~
B(z,h)
B(

Period of T
Period of h

Fig. 5.11 Dual-rate, two-loop feedback control system

G1 (z, T )
W (z, T ) = . (5.67)
1 + C2 (z, T )G2 (z, T )
4 is equivalent to ST ,h W Hh,T . In practice, one performs (fast) hold-equivalence
G
discretizations of G1 (s), G2 (s) and C2 (s) and then calculates W (z, T ) in Eq. (5.67).
Let the state-space shift form for W (z, T ) be given as

x(k + 1, T ) = Ax(k, T ) + Bu(k, T )


(5.68)
y(k, T ) = Cx(k, T ) + Du(k, T ).

Using discrete-time lifting, the expression for ST ,h W Hh,T is


⎡ ⎤
1
 ⎢
⎢ 1 ⎥ m−1
⎥ 
x(k + 1, h) = AN x(k, h) + AN−1 B AN−2 B ··· B ⎢ .. ⎥ u(k − j , h)
⎣ . ⎦ j =−l
1

m−1
y(k, h) = Cx(k, h) + D · u(k − j , h).
j =−l
(5.69)

4 becomes
When Hh,T is a DT-ZOH, system G
⎡ ⎤
1
 ⎢
⎢ 1 ⎥ '
⎥ ' '
C(zI − AN ) AN−1 B AN−2 B ··· B ⎢ .. ⎥ + zI − AN ' · D
⎣ . ⎦
1
4 h) =
G(z, ' ' .
'zI − AN '
(5.70)
104 5 Global Digital Redesign

~
G(z,h)
G(

U1,DT G1(z,T) YDT

Hh,T + HT G1(s) ST ST,h


-

Period of T
ST C2 (s) HT ST G2(s) HT Period of h

C2(z,T) G2(z,T)

Fig. 5.12 Inner-loop system

4 h) as
Rewrite G(z,

4 h) = nG (z, h)
G(z, (5.71)
dG (z, h)
where ∂[nG (z, h)] = nG and ∂[dG (z, h)] = dG .
Fifth, modify M(z, h) to account for the feedback effect of the actual dual-rate
control system while preserving the low-frequency or DC gain. The resulting system,
4 h), will be implemented with the block diagram shown in
which is termed M(z,
4
Fig. 5.11. M(z, h) is the transfer function from the reference input to the output of
4 h). From Fig. 5.11, the closed-loop transfer function from reference input to
C(z,
4 h), is
plant input, M(z,

4 h) = K · m(z, h)dG (z, h)


M(z, (5.72)
dm (z, h)
where K ∈ R. Gain K and polynomial m(z, h) have to be determined. At this
point, the only known characteristic of polynomial m(z, h) is its degree, which is
constrained to be less than or equal to (dm − dG ) to ensure properness of the RPITF.
One approach to obtain monic polynomial m(z, h) is to set the roots of m(z, h) to be
the (dm − dG ) zeros of M(z, h) that are closest to the boundary of the unit circle. It
is assumed that (dm − dG ) < nm . Then, adjust K such that the low-frequency or DC
4 h) matches that of M(z, h).
gain of M(z,
4 h), B(z,
Finally, compute controllers A(z, 4 h) and C(z, 4 h) from the knowl-
4 h) using the procedure described in Sects. 5.4.5 and 5.4.6 with an
edge of M(z,
implementation at period h.
Chapter 6
Flatness-based Control

We present a flatness-based averaging control system (FACS) for the purpose of


controlling a class of nonlinear systems, namely differentially flat systems. Discrete-
time control system design methods are first presented. The methods pertain to FACS
and classical feedback linearization and linear control. The methods are then applied
to the control of the motion of a wheeled mobile robot (WMR). The chapter concludes
with simulation results.

6.1 FACS Design

The block diagram of FACS is shown in Fig. 6.1. In the figure, AVC stands for
averager and controller, SE is the state estimator, and G is the continuous-time
nonlinear plant. The discrete-time portion of the closed-loop system is updated at a
period of T seconds. The principle of flatness applied to the simplified WMR model
is explained in Sect. 6.1.1. The discrete-time control system is designed to meet the
objectives stated in Sect. 6.1.2. The design of FACS is a three-step design process
detailed in Sects. 6.1.3–6.1.5. A basic version of FACS was first presented in [50]
for the case of a unicycle.

6.1.1 Nonlinear Differentially Flat System

Consider the following nonlinear affine-in-the-input continuous-time system


·
X = f (X) + G(X)u. (6.1)
In Eq. (6.1), X ∈ R , u ∈ R , 1 ≤ p ≤ n, and
n p
 
0(n−p)×p
G(X) = ,
g1 (X)
with g1 (X) ∈ R p×p . The development presented in this chapter also applies to systems
described by G(x) = g1 (x). Functions f and G are assumed Lipschitz, with Lipschitz
f g
constants Lk > 0 and Lk > 0, respectively [44].

C. A. Rabbath, N. Léchevin, Discrete-Time Control System Design with Applications, 105


DOI 10.1007/978-1-4614-9290-0_6, © Springer Science+Business Media New York 2014
106 6 Flatness-based Control

Fig. 6.1 Block diagram of Control input State


flatness-based averaging Reference state
control system AVC H G S

SE

Equation (6.1) pertains to the WMR:


⎡ ⎤
dx
⎢ dt ⎥
⎢ ⎥ ⎡ ⎤ ⎡ ⎤
⎢ dy ⎥ v cos θ 0 0  
⎢ ⎥
⎢ dt ⎥ ⎢ v sin θ ⎥ ⎢ 0 0 ⎥ vc
⎢ ⎥ ⎢ ⎥ ⎢ ⎥
⎢ dv ⎥ = ⎣ −αv ⎦ + ⎣ α 0 ⎦ θ c , (6.2)
⎢ ⎥
⎢ ⎥
⎢ dt ⎥  −βθ 0 β
    
⎣ dθ ⎦
=f (X) =G(X)
dt
with n = 4 and p = 2. The generic label for the plant input is u. Here,
 c
v
u= .
θc
The output equation is written as
⎡ ⎤
    x
x 1 0 0 0 ⎢ ⎥
⎢y ⎥.
= (6.3)
y 0 1 0 0 ⎣v⎦
θ
The WMR model is a nonlinear differentially flat system [52], [53], corresponding
to plant G in Fig. 6.1. A system is differentially flat if the states and inputs can be
expressed algebraically in terms of an output z and a finite number of its higher-order
derivatives. Signal z, referred to as the flat output, has the same dimension as the
control input, here z = [x, y]T .
A nonlinear differentially flat system exhibits the following attributes [52], [53]:
(1) it can be linearized, (2) it is controllable, and (3) its dynamics can be inverted
without having to integrate its states.
For the flat system of Eq. (6.1), and hence the WMR model, there exist functions
υ and χ such that [52]
$ · ·· ··· %
u = υ z, z, z, z , . . . (6.4)
$ · ·· ··· %
X = χ z, z, z, z , . . . .
· ·· ···
A simplifying notation is used in this section: zω = (z, z, z, z , . . .), where ω ∈ {υ, χ }
· ·· ···
specifies whether the list (z, z, z, z , . . .) is one of function υ(·) or function χ(·).
6.1 FACS Design 107

6.1.2 Objectives of FACS

FACS fulfills two objectives. In the first design step, a continuous-time controller
is obtained with the objective of fulfilling a discrete-time convergence condition.
This is Objective 1. In the second step of the design, a piecewise-continuous control
signal is tailored such that a discrete-time convergence condition is satisfied by the
discrete-time controller. This is Objective 2.
We let X(k, T ) be the state of the plant at discrete-time instants uniformly separated
by a period of T units of time. We assume that the plant is under the action of a
continuous-time controller. We also let X d (t) be the trajectory to be tracked, which is
assumed known. At discrete-time instants synchronized with those of signal X(k, T ),
the desired trajectory is written as X d (k, T ).
Objective 1: The continuous-time controller must comply with an objective of con-
vergence in time, at the sampling instants; namely, the continuous-time control input
must ensure that a convergence in the state is obtained as follows
- -
lim -X(k, T ) − X d (k, T )- = 0, (6.5)
k→∞

where · is the Euclidean norm.


Objective 2: The discrete-time controller generates a control input, assumed to go
through a zero-order hold (ZOH) at a period of T , before entering the nonlinear
continuous-time plant, that must be such that the states comply with the following
limit
- -  
- e -
lim -X d (k, T ) − X (k, T )- = O T 2 . (6.6)
k→∞

e
In Eq. (6.6), X (k, T ) is the state of the continuous-time plant, at the sampling
instants, under the action of the discrete-time controller in closed-loop with a
state estimator. Signal X(k, T ) represents the estimate of the state of the nonlinear
continuous-time plant under discrete-time control, at discrete-time instants uniformly
separated by a period of T units of time. A state estimate is used in the discrete-time
control system actually implemented onboard the WMR, not the actual plant state.

6.1.3 Continuous-time Controller

The state of the nonlinear system of Eq. (6.1) is expressed by means of continuous-
time lifting (CTL) as
" τ
(k, T , τ ) = X
X (k, T , 0) + (k, T , ν)) dν
f (X
v=0
" τ
+ (k, T , ν))
G (X u (k, T , ν) dν. (6.7)
v=0
108 6 Flatness-based Control

In Eq. (6.7), X(t) and u(t) are lifted to X (k, T , τ ) and


u (k, T , τ ), respectively. The
hat-like symbol pertains to a signal expressed with CTL. We assume synchronized
lifting, sampling and control update rates. We assume that an ideal, although unreal-
istic, case holds; that is, X(k, T ) is available at time t = kT for the computation of a
discrete-time control input u(k, T ) at the same time instant. Furthermore, we do not
include consideration of the uncertainties in the design.
The continuous-time controller generates a control input which may serve as the
baseline signal to be followed by the output of a discrete-time controller. When
viewed from a discrete-time perspective, the continuous-time controller steers the
nonlinear system from state X(k, T ) at time t = kT to the so-called desired state, or
trajectory to be tracked, Xd (k + 1, T ) at time t = (k+1)T. For the continuous-time
design, the flatness property of the continuous-time plant is exploited to ensure that
the convergence of (6.5) is achieved.
We let the target state X t (k + 1, T ) be defined as

X t (k + 1, T ) = Xd (k + 1, T ) + μk (X(k, T ) − X d (k, T )). (6.8)

We want to ensure that the control input is such that


- t - - -
-X (k + 1, T ) − X d (k + 1, T )- ≤ μk -X(k, T ) − Xd (k, T )- . (6.9)

The norm on matrix μk is an induced norm. Matrix μk ∈ R n×n has eigenvalues


λik , i ∈ {1, 2, . . .n} , that are inside the unit circle in the complex plane.
From the selection of a suitable interpolation function, which is such that
p(k, T , 0) = X(k, T ) and p(k + 1, T ) = X t (k + 1, T ), and by the flatness $ property of%
the continuous-time plant, one obtains a control input υ
u(k, T , τ ) = υ z (k, T , τ )
such that the state of the closed-loop system starts at X(k, T ) and ends at Xt (k +1, T )
4
- interval [kT , (k + 1)T ). If we let X(1, T ) = X(1, T ) − X (1, T ), with
d
within
- each
-4 -
X(1, T )  = 0, we then obtain
j =k−1
- - - - 5
lim -X t (k, T ) − X d (k, T )- = -4
X(1, T )- lim μj = 0. (6.10)
k→∞ k→∞
j =1

Equation (6.10) satisfies the first objective of FACS.

6.1.4 Discrete-time Controller

Two issues must be addressed by the designer when implementing the WMR con-
troller in discrete-time. First, the continuous-time control scheme of Sect. 6.1.3 is
not causal. The nonlinear plant state must be available at the same time instant at
which the discrete-time controller is expected to issue the control input update. This
is an assumption we made to facilitate the continuous-time design. For a realistic,
causal controller implementation, a state estimator, or predictor, must be added in
6.1 FACS Design 109

the feedback loop, as shown in Fig. 6.1. Another element of implementation that
must be taken into account by the designer is the fact the actual control input is con-
stant within each interval [kT , (k + 1)T ), with a ZOH assumed to precede the WMR
model. The lifted continuous-time control input u(k, T , τ ) obtained in Sect. 6.1.3 is
not constant over [kT , (k + 1)T ).
This section addresses the second implementation issue. We assume that the state
X(k, T ) is available at time t = kT . We lift the state of the continuous-time nonlinear
T , τ ). We define a piecewise-constant signal U(k, T ), constant over each
plant to X(k,
interval [kT , (k + 1)T ), as being an approximation to u(k, T , τ ). At τ = T , Eq. (6.7)
becomes
" T " T
X(k + 1, T ) = X(k, T ) +
f (X(k, T , ν))dν + T , ν))U(k, T )dν
G(X(k,
v=0 v=0

" T
+ T , ν)) (
G(X(k, u(k, T , v) − U(k, T )) dν. (6.11)
v=0

With
" T
−1 " T
U(k, T ) = T , ν))dν
g1 (X(k, T , ν))
g1 (X(k, u(k, T , v)dν, (6.12)
v=0 v=0

Eq. (6.11) can be written as


" T
T , ν)) (
G(X(k, u(k, T , v) − U(k, T )) dν = 0 (6.13)
v=0

as long as
" T
T , ν))dν
g1 (X(k, (6.14)
v=0

is nonsingular. Otherwise, a time-averaged value may be computed or estimated for


U(k, T ), such as
"
1 T
U(k, T ) =
u(k, T , v)dv. (6.15)
T v=0
$ χ %
T , τ ), which is equal to χ
From the flatness property, X(k, z (k, T , τ ) , can be
computed in each interval [kT , (k + 1)T ) by considering an interpolation function
T , τ ) is obtained such that the discrete-time con-
(k, T , τ ) and Eq. (6.8). X(k,
p
trol signal U(k, T ) in Eq. (6.12) steers the state of the plant from X(k, T , 0) to
X (k + 1, T ). Therefore, Objective 1 is fulfilled with the discrete-time controller of
t

Eq. (6.12).
110 6 Flatness-based Control

6.1.5 State Estimator

For the realistic case of X(k, T ) not being equal to X(k, T ), U(k, T ) steers the
continuous-time state estimate X(k, T ), at the discrete-time instant t = kT , to a
neighborhood of the target state Xt (k + 1, T ) at t = (k + 1)T . The estimate is calcu-
lated, for example, with a fixed-step numerical integration method on [kT , (k +1)T ),
expressed as

X(k, T ) = Rq (X(k − 1, T ), U(k − 1, T )) . (6.16)

We select the one-step estimator Rq to provide an estimation error in O (T q ), where


q ∈ N + depends on the numerical integration order. A fixed-step Runge-Kutta
method of sufficiently high order is known to provide a good trade-off between com-
putational complexity and integration accuracy for systems that are not significantly
stiff [24], [79].
Since the state estimate is used in the feedback loop, the target state Xt (k + 1, T ),
originally obtained in Eq. (6.8) in the ideal case, now becomes an estimator-related
target state
t  
X (k + 1, T ) = Xd (k + 1, T ) + μk X(k, T ) − X d (k, T ) . (6.17)

6.1.6 Compliance with Objective 2

We assume that the trajectories and interpolation functions are sufficiently smooth
to prevent a singularity and an unbounded control input.
Assumption 6.1 Desired trajectory X d (k, T ) and interpolation function p(k, T ), at
discrete-time instants uniformly separated by a period of T units of time, are such
that
u(k, T , τ ) is bounded and the integral (6.14) is nonsingular.
Proposition 6.1 shows the compliance of the discrete-time controller with the sec-
e
ond objective of FACS. In the proposition, we use the fact that X(k, T ) = X (k, T ).
The initial value of the estimate, at each time step t = kT , corresponds to that of the
actual state of the plant at the same time instant.
Proposition 6.1 Discrete-time control law U(k, T ) in Eq. (6.12) fulfils Objective 2
given the following conditions: first, it is calculated with the interpolation func-
(k, T , τ ), whose starting and ending points are obtained with Eq. (6.17),
tion p
and, second, it relies on a state estimate obtained with estimator Rq (q ≥ 2)
in Eq. (6.16). 1
Proof: State estimator Rq is assumed to be of order q. The error in estimate is thus
- -  
-X(k, T ) − X(k, T )- = O T q (6.18)
6.1 FACS Design 111

at the discrete time instants [79]. The state of plant (6.1) subject to the action of the
discrete-time control law and state estimator, over each interval [kT , (k + 1)T ) with
time τ ∈ [0, T ), is written in lifted form as
" τ
6e 6e 6e
X (k, T , τ ) = X (k, T , 0) + f (X (k, T , v))dν
v=0
" τ
6e
+ G(X (k, T , v))U(k, T )dν. (6.19)
v=0

The error in estimation is bounded as


- -  
- 6e T , τ )-
-X (k, T , τ ) − X(k, - ≤ O Tq
" τ - -
f - 6e T , v)-
+ Lk -X (k, T , v) − X(k, - dν
v=0
" τ - -
g - 6e T , v)-
+ Lk -X (k, T , v) − X(k, - U(k, T ) dν (6.20)
v=0
-" -
- τ
6e -
+-- u(k, T , v)) dν -
G(X (k, T , ν)) (U(k, T ) − -,
v=0

e
following the fact that X(k, T ) = X (k, T ) at the beginning of each interval [kT ,
f g
(k +1)T ). The Lipschitz constants for f and G are Lk > 0 and Lk > 0, respectively.
When τ = T , the last term on the right-hand side of inequality (6.20) is zero from
Eq. (6.13). We apply Gronwall-Bellman’s lemma [44] and let τ = T to obtain the
following bound at the discrete-time instants
- -  
- e -
-X (k + 1, T ) − X(k + 1, T )- ≤ O T q + Ik , (6.21)

where
" T T
Ik = λ(s)μ(s)e r=s μ(r)dr
ds. (6.22)
s=0

In Eq. (6.22),
 
λ(s) = O T q + κ(s), (6.23)
" s
κ(s) = T , ν)) (U(k, T ) −
G(X(k, u(k, T , v)) dν,
ν=0
f g
μ(s) = Lk + Lk · |U(k, T )| .

To bound the error in estimation, we need to solve the integral in Eq. (6.22). We use
Eq. (6.13) and the following two expressions
" T   T  
O T q μ(s)e r=s μ(r)dr ds = O T q , (6.24)
s=0
112 6 Flatness-based Control

and
" "
T T  0 T
dκ(s) L(T −s)
κ(s)μ(s)e r=s μ(r)dr
ds = eL(T −s) κ(s) s=T + e ds, (6.25)
s=0 s=0 ds
to write

Ik
"
  T
=O T q
+ T , s)) (U(k, T ) −
G(X(k, u(k, T , s)) eLk (T −s) ds
s=0
" +∞
!
  T  Lk (T − s)i
= O Tq + T , s)) (U(k, T ) −
G(X(k, u(k, T , s)) 1 + ds
s=0 i=1
i!
" +∞

  T
Lk (T − s)i
= O Tq + T , s)) (U(k, T ) −
G(X(k, u(k, T , s))
ds
s=0 i=1
i!
  - -  
= O T q + sups∈[0,T ) -G(X(k, u(k, T , s))- · O T 2 .
T , s)) (U(k, T ) − (6.26)
f g
In Eq. (6.26), Lk = Lk + Lk · |U(k, T )|.
We write the following inequality from the fact that the continuous-time control
law
u(k, T , τ ) is designed to achieve Xd (k + 1, T ) = X t (k + 1, T ), from Eq. (6.8),
and by noting that

t  
X (k + 1, T ) − X t (k + 1, T ) = μk X(k, T ) − X(k, T ) ,

- - - -
- d e - - t -
-X (k + 1, T ) − X (k + 1, T )- ≤ -Xd (k + 1, T ) − X (k + 1, T )-
- - - -
- t - - e -
+ -X (k + 1, T ) − X t (k + 1, T )- + -X (k + 1, T ) − X(k + 1, T )-
- -    
- e -
≤ μk -X d (k, T ) − X (k, T )- + (1 + μk ) O T q + Hk O T 2

 q 5
i=k - -
- e -
≤O T + μi -X d (1, T ) − X (1, T )-
i=1
⎛ ⎛ ⎞⎞
j =k

i=k−1 5  
+ ⎝Hk + ⎝Hi μj ⎠⎠ O T 2 . (6.27)
i=1 j =i+1

In (6.27),
t e
X (k + 1, T ) = X (k + 1, T ),
Xt (k + 1, T ) = X(k + 1, T ),
Hk = Hk + μk Hk−1 ,
H0 = 0,
Hk = sups∈[0,T ) G(xk (s)) (Uk − uk (s)) .
6.1 FACS Design 113

Hk exists and is finite from Assumption 6.1. Let μj ≤ μ < 1 for all j , then we bound
the last term on the right-hand side of (6.27):
⎛ ⎛ ⎞⎞
j =k

i=k−1 5  
⎝Hk + ⎝Hi μj ⎠⎠ · O T 2
i=1 j =i+1
⎛ ⎞
j =k−1
  
≤ ⎝ sup Hi μj ⎠ · O T 2
i∈{1,...,k} j =0
!
1 − μk  
≤ sup Hi ·O T2 . (6.28)
i∈{1,...,k} 1−μ

Since μ < 1, the last term on the right-hand side of (6.27) is finite and the limit in
Eq. (6.6) follows immediately if q ≥ 2. 2

6.1.7 Intersample Behavior

We bound the difference between the state of the plant under continuous-time con-
trol and that of the plant in closed-loop with a discrete-time controller and a state
estimator, over all time instants. We show that the difference in state trajectories is
in the order of τ ∈ [0, T ) with FACS. The notion we present relates to the concept
of nonlinear sampled-data system stability introduced in [62].
Proposition 6.2 Again, we invoke Assumption 6.1. Discrete-time control law
U(k, T ) in Eq. (6.12) is applied to the nonlinear affine-in-the-input continuous-time
system (6.1). The state of the plant in closed-loop with the discrete-time controller
6e
and the estimator is given in lifted form as X (k, T , τ ). The plant state is such that
the following inequality is verified for all τ ∈ [0, T ),
- -  
- 6e -
-X(k, T , τ ) − X (k, T , τ )- ≤ O T q + Hk · O (τ ) . (6.29)

1
Proof: From Assumption 6.1 and using Hk defined in Sect. 6.1.6, we write
" τ
T , v)) (U(k, T ) −
G(X(k, u(k, T , τ )) dν ≤ Hk · τ. (6.30)
v=0

We apply Gronwall-Bellman’s lemma, to obtain the following expression at the


discrete time instants
- -  
- e -
-X (k + 1, T ) − X(k + 1, T )- ≤ O T q + Hk · τ + Ik (6.31)
114 6 Flatness-based Control

where
" τ τ
μ (r)dr
Ik = λ (s)μ (s)e r=s ds, (6.32)
s=0

and

 
λ (s) = O T q + Hk s,
μ (s) = Lk . (6.33)
We solve the integral to obtain
"
  τ
Ik = O T q + Lk Hk seLk (τ −s) ds
s=0
  H k  Lk τ 
= O T q − Hk τ + e −1 . (6.34)
Lk
We substitute the expression for Ik derived in Eq. (6.34) into Eq. (6.31). Then, we
obtain the bound in (6.29). 2

6.1.8 Summary of FACS Computations

Vector [x, y]T is flat and represents the output of the WMR, as given in Eq. (6.3). Two
of the state-space variables, namely v and θ , and the inputs vc and θ c are expressed
as functions of x and y, and their derivatives, as
7
·2 ·2
v = x +y ,
· !
−1 y
θ = tan · ,
x


1 ·2 ·2 · ·· · ··
v = 7
c
α x + y + x · x + y · y, (6.35)
·2 ·2
α x +y
8 · ·· · ·· · !9
1 x·y−y·x −1 y
θ =
c
+ β tan · .
β ·2 ·2
x +y x

Part of the state trajectory to be tracked, given by vector X d , is the commanded


position on the x − y plane for each time instant, labeled x d and y d , or equivalently
x ∗ and y ∗ using the terminology of Sect. 6.3.2, with subscript DT indicating either
a discrete-time signal or a system. The error between desired and actual positions is
given by Eqs. (6.57). The linearized continuous-time system is given by Eqs. (6.55),
(6.56), and (6.58). The third and fourth entries in the state vector can be written as
functions of the first two entries given by Eqs. (6.35).
6.1 FACS Design 115

6.1.8.1 State Estimation

An important issue with a discrete-time implementation is that, at time t = kT , the


nonlinear continuous-time plant state and its derivative, X(k, T ) and [dX/dt]t=kT ,
are not available due to the inherent computational delay in generating the control
input.
 Therefore,
 the discrete-time controller relies on state estimates X(k, T ) and
dX/dt t=kT . The estimates are calculated with a fourth-order Runge-Kutta method
[24] expressed as
X(k, T ) = R4 (X(k − 1, T ), U(k − 1, T )),
. /
dX
= f (X(k, T )) + G(X(k, T ))U(k − 1, T ). (6.36)
dt
t=kT

In Eqs. (6.36), we obtain estimates for the plant state and its derivative at the current
time step, t = kT , from the knowledge of the plant state and the discrete-time control
input at the previous time step t = (k − 1)T .

6.1.8.2 Target State

We write
⎡ ⎤ ⎡ d ⎤
x e (k, T ) x (k, T )
⎢ y e (k, T ) ⎥ d ⎢ d ⎥
X (k, T ) = ⎢
e
⎥ , X (k, T ) = ⎢ yd (k, T ) ⎥ . (6.37)
⎣ v (k, T ) ⎦
e ⎣ v (k, T ) ⎦
e
θ (k, T ) θ d (k, T )
Using portions of the estimated and desired states, those entries pertaining to the
position of the robot on the x − y plane, we let

⎡ ⎤
x e (k, T ) − x d (k, T )
⎢ y e (k, T ) − y d (k, T ) ⎥
⎢. /  d ⎥
⎢ dx ⎥
⎢ dx ⎥
ξ =⎢ − ⎥. (6.38)
⎢ dt dt t=kT ⎥
⎢ . /t=kT   ⎥
⎢ dy dy d ⎥
⎣ ⎦

dt dt t=kT
t=kT

We define the error between the state of the continuous-time plant, under the action
of the discrete-time controller and state estimator, and the desired components of the
state corresponding to the position and its derivative as
⎡ ⎤ ⎡ e ⎤
4
x (t) x (t) − x d (t)
⎢ 4 ⎥ ⎢ y e (t) − y d (t) ⎥
⎢ y (t) ⎥ ⎢ ⎥
4 =⎢
X(t) ⎢
d4x (t) ⎥ ⎢ d(x e (t) − x d (t)) ⎥
⎥=⎢ ⎥.
⎢ dt ⎥ ⎢ dt d ⎥
⎣ d4 y (t) ⎦ ⎣ d(y (t) − y (t)) ⎦
e

dt dt
116 6 Flatness-based Control

An error system is identified by


4
d X(t) 4X(t).
=A 4 (6.39)
dt
4 matrix is of the same form as that used in an error system obtained
In Eq. (6.39), the A
with feedback linearization and linear control, as discussed in the latter part of the
chapter. With the knowledge of a desired state and an error system (6.39), the target
state is calculated as
⎡ t ⎤ ⎡ d ⎤
x (k + 1, T ) x (k + 1, T )
⎢ y (k + 1, T ) ⎥ ⎢ y (k + 1, T ) ⎥
t d
⎢ ⎥ ⎢ ⎥
⎢ dx t ⎥ ⎢ dx d ⎥ 4
⎢ ⎥=⎢ ⎥
⎢ dt t=(k+1)T ⎥ ⎢ dt t=(k+1)T ⎥ + e ξ.
AT
(6.40)
⎢ t  ⎥ ⎢ d ⎥
⎣ dy ⎦ ⎣ dy ⎦
dt t=(k+1)T dt t=(k+1)T

6.1.8.3 Control Input

We calculate U(k, T ) from Eq. (6.12) and (6.35). We start with


 
−1   c 
T 0
α T α 0 v (k, T , ν)
U(k, T ) = dν dν,
v=0 0
β v=0 0 β θ c (k, T , ν)
 −1    c 
α 0 α 0 T v (k, T , ν)
= 1
dν, (6.41)
T 0 β 0 β v=0 θ c (k, T , ν)
 c 
T v (k, T , ν)
= 1
v=0 dν.
T θ c (k, T , ν)

With the knowledge of the plant dynamics, we write


1 dv(t)
vc (t) = + v(t),
α dt
(6.42)
1 dθ(t)
θ c (t) = + θ (t).
β dt
With Eqs. (6.42) and (6.41), U(k, T ) is expressed as
⎡ ⎤
1 d v(k, T , ν)
" T + v(k, T , ν)
1 ⎢α dv ⎥
U(k, T ) = ⎢ ⎥ dν. (6.43)

T v=0 1 d θ (k, T , ν) ⎦
β
+ θ (k, T , ν)
dv
6.1 FACS Design 117

We divide the control input into two components:


⎡ ⎤
1 d v(k, T , ν) . /
T ⎢ Tα dv ⎥ T v(k, T , ν)
U(k, T ) = v=0 ⎢ ⎣ 1 d
⎥ dν + 1
dν,
θ (k, T , ν) ⎦ T v=0
θ (k, T , ν)
Tβ dv ⎡ ⎤
⎡ ⎤ d v(k, T , ν)
1 . /
0  ⎢ ⎥ 
1 ⎢ α ⎥ T ⎢ dv v(k, T , ν)
=T ⎣ ⎥ 1 T
dν + T v=0
1 ⎦ v=0 ⎣ d θ (k, T , ν) ⎦
θ (k, T , ν)
dν,
0
β dv
⎡ ⎤
1
⎢ 0 ⎥ 8. / . / 9
1 ⎢ α

v(k, T , ν)
v(k, T , ν)
=T ⎣ ⎥ −
1⎦
θ (k, T , ν)
θ (k, T , ν)
0 v=T v=0
β
. /
T v(k, T , ν)
+ T1 v=0 dν,
θ (k, T , ν)
⎡ ⎤ ⎧⎡ 7 ⎤ ⎡ 7 ⎤⎫
1 ⎪ ⎪
1 ⎢α 0 ⎨ t 2
+ t 2
e1 2
⎥⎬
2
+ e 2
⎥ ⎢ 1 2
⎥ ⎢
= ⎣ 1 ⎦ ⎪⎣ −1 t2 ⎦ − ⎣ −1 e2 ⎦⎪
T 0 ⎩ tan tan ⎭
β t1 e1
  
=U 1 (k,T )
" . /
1 T
v(k, T , ν)
+ dν .
T v=0

θ (k, T , ν)
  
=U 2 (k,T ) (6.44)

In Eq. (6.44), we assume that the value of the lifted signal at step k, and for time v
approaching T , is equal to the value of the lifted signal at the next time step, that
is k + 1, and for time v equal to zero. Such assumption is reasonable for the states
of the continuous-time plant. Knowing that (1) a state estimate is available online
and (2) a target state estimate given by Eq. (6.40) must be reached at t = (k + 1)T ,
signals t1 , t2 , e1 , and e2 can be defined as follows:
 t
dx
t1 = ,
dt
 t t=(k+1)T
dy
t2 = ,
dt
. / t=(k+1)T
dx (6.45)
e1 = ,
dt
. /t=kT
dy
e2 = .
dt
t=kT
118 6 Flatness-based Control

The state estimate and target state are calculated with Eqs. (6.36) and (6.40). The
first right-hand side term of Eq. (6.44), U 1 (k, T ), is calculated exactly. This term
corresponds to Eq. (6.54) with v̇ = vc and θ̇ = θ c . The second term, however, which
is given as
"  
1 T
v(k, T , ν)
U 2 (k, T ) = dν, (6.46)
T v=0 θ (k, T , ν)

is not available at the time the control input is generated. Therefore, we approximate
the expression for U 2 (k, T ).
Write the solution to Eq. (6.39) as
4
4 = eA(t−t 0) 4
X(t) X(t0 ), (6.47)

where t ≥ t0 , and t0 is the initial time instant. Using CTL, and setting t = kT + τ
and t0 = kT ,

X(k,
4
4 T , τ ) = eAτ 4 T , 0)
X(k, (6.48)

and
6e 4
6d (k, T , τ ) + eAτ 4 T , 0).
X (k, T , τ ) = X X(k, (6.49)

Then, from Eq. (6.39),



v(k, T , τ ) =
:
;⎛⎡ ⎤T ⎞2 ⎛⎡ ⎤T ⎞2
; 0 0
;
;⎜⎢ 0 ⎥ 6d 4
⎟ ⎜⎢ 0 ⎥ 6d 4

;⎜⎣ 4 ⎟ ⎜ 4 T , 0))⎟
<⎝ 1 ⎦ (X (k, T , τ ) + e X(k, T , 0))⎠ + ⎝⎣ 0 ⎦
(X (k, T , τ ) + eAτ
Aτ X(k, ⎠
0 1
  6 4
!
0 0 0 1 (X d (k, T , τ ) + eAτ 4 T , 0))
X(k,

θ (k, T , τ ) = tan−1   6 . (6.50)
4
d (k, T , τ ) + eAτ 4 T , 0))
0 0 1 0 (X X(k,

And control input U 2 (k, T ) can be calculated using the result of Eq. (6.50) as
" T .   6 4
/
1 0 0 1 0 ( X d (k, T , v) + eAv 4
X(k, T , 0))
U 2 (k, T ) =   6 4 dν,
T v=0 0 0 0 1 (X d (k, T , v) + eAv 4 T , 0))
X(k,
  
=F (v)
(6.51)

where estimates of the states v and θ are used by the controller, not the true plant
states. There is no issue of causality with Eq. (6.51) since the state estimate and the
desired state are both available for the computation of U 2 (k, T ).
6.2 Wheeled Mobile Robot Subsystems 119

Fig. 6.2 Schematics of


wheeled mobile robot
Front wheel
(free to rotate)

Left wheel Right wheel

Side view

Bottom view

6.1.8.4 Numerical Integration

We use a numerical integration method to solve the integral of Eq. (6.51). One of the
simplest approximation is the trapezoidal rule [5]:
" T
F (T ) + F (0)
F (v)dv  T · . (6.52)
v=0 2
To improve the approximation, we may divide the integration from 0 to T into n
intervals, {[0, T /n), [T /n, 2 T /n), . . ., [(n − 2)T /n, (n − 1)T /n}, and approximate
the entire integral by means of an iterative rule [5] as follows
⎛ ⎞
" T
T ⎝ F (T ) + F (0) 
n−1
T ⎠
F (v)dv  + F (j ) . (6.53)
v=0 n 2 j =1
n

Selecting the right numerical integration method, and the number of intervals for the
approximation, is a trade-off between accuracy and processing time. Interestingly,
in [40], an observer is proposed instead of a numerical integrator for a flatness-based
control system.

6.2 Wheeled Mobile Robot Subsystems

Figure 6.2 shows a simple representation of the WMR. Such schematics pertain to
the commercial robot known as iRobot’s Roomba ® . The rear wheels provide linear
and rotational motion to the robot. The digital control system steers the rear wheels
in response to high-level waypoint commands.
The block diagram of a typical feedback control system is shown in Fig. 6.3. The
rectangle formed by the dashed lines encloses the subsystems implemented on the
digital processor onboard the WMR. A solid line indicates a continuous-time sig-
nal whereas a dotted-dashed line corresponds to a discrete-time signal. DT Control
120 6 Flatness-based Control

Trajectory generator /
Waypoint commands
. ..
x* x* x*
. .. DT DT DT
y* y* y*
DT DT DT

DT
. c
ωR
xDT , xDT Control vDT
. (DT- WVC DAC Motors
yDT , yDT FLLC
θ DT
c
ωL
Rx or
vDT FACS)
Vehicle
θDT
dynamics

Tx Tracking
Sensors
system

Fig. 6.3 Main subsystems in feedback loop

indicates a discrete-time control subsystem. DT-FLLC stands for discrete-time feed-


back linearization and linear control, WVC is wheel velocity control, Tx is a
transmitter, Rx is a receiver, and DAC is a digital-to-analog converter. Commanded
∗ ∗
positions on the x-y plane are expressed with symbols xDT and yDT . Commanded
∗ ∗ ∗ ∗
speeds are ẋDT and ẏDT . Commanded accelerations are ẍDT and ÿDT . Signals xDT
and yDT are the measured WMR positions obtained, for example with a set of cam-
eras and a tracking system, and transmitted by means of the wireless medium from
the central processing unit, or CPU, to the WMR’s onboard digital processor. Es-
timates of the derivatives of the position along the x and y axes is also an input to
DT Control. Signals vDT and θDT are estimated vehicle velocity and heading angle,
c c
respectively. The commanded velocity and heading angle are denoted vDT and θDT ,
respectively. Finally, ωR and ωL are the commanded continuous-time right and left
wheel velocities, respectively, that enter the motor drive.
For indoor operations, a tracking system may provide discrete-time feedback
signals pertaining to WMR position, heading and time. A typical indoor installation
is illustrated in Fig. 6.4. The cameras are connected to a motion capture software.
The software takes the information of the cameras and estimates the position and
heading of the WMR. This estimation is done by localizing the position of reflective
balls mounted on the WMR. The estimated heading and location of the robot are
sent to CPU 2 at each time step, and then transmitted to the WMR via a wireless
Wi-Fi connection using TCP (transmission control protocol) or UDP (user datagram
protocol) [18], [33], [37]. The WMR moves within a finite operational area. The size
of this area depends on the coverage provided by the array of cameras.
For outdoor operations, the WMR may rely on a global navigation satellite system
[8]. A receiver onboard the WMR receives the signals emanating from a group of
6.3 Continuous-time Models 121

Camera 1 Camera 2 … Camera n

Tracking
software CPU 1
Rx WMR subsystems
High-level
robot control Wheeled robot
processing CPU 2 Tx
(waypoint
commands)

Fig. 6.4 Common indoor robot operation and off-platform tracking

satellites as the feedback on the position of the robot. Attitude of the robot, specifically
its heading, is estimated by using a magnetometer, or a combination of vision/acoustic
sensors and off-vehicle beacons. Alternatively, for increased autonomy, an onboard
localization system may be devised. Typically, simultaneous localization and map-
ping (SLAM), is done by mobile robots to position themselves with respect to their
environment [23]. SLAM is a subject outside the scope of this book.
The objective of the feedback control law is to move the robot to the prescribed
waypoints. We assume that the waypoint commands are available to the control
system at each time step. We do not study the component of the system labeled
Trajectory generator/Waypoint commands in Fig. 6.3. References [25], [46] explore
trajectory generation and motion planning for WMRs.

6.3 Continuous-time Models

To design the control system, simplifications are made to the model. The basic feed-
back loop is shown in Fig. 6.5. The simplified plant model is from commanded
velocity and heading angle to vehicle position, velocity and heading. Feedback lin-
earization and linear control are applied to the open-loop model, with the objective of
making the robot track the reference inputs, identified with the * symbol in the figures.

6.3.1 Plant Model

Motion of the WMR on the x-y plane (inertial frame) is modeled as:
·
x = v cos (θ )
·
y = v sin (θ ) (6.54)
·
v = α(vc − v)
·
θ = β(θ c − θ ).
122 6 Flatness-based Control

Fig. 6.5 Simplified feedback


loop Trajectory generator/
Waypoint commands
. ..
. .. x* x* x*
DT DT DT
y*
DT
y* y*
DT DT

vc
.
x, x
. FLLC
y, y θc
v
θ

Simplified
plant model

Symbol v represents magnitude of velocity, whereas θ is heading angle. Superscript


c indicates a command or a reference signal. Similar models are used for unmanned
vehicles equipped with stabilizing low-level control systems and autopilots, and
wheeled robots of various kinds [20], [27], [71], [80]. Here, the plant model has
first-order dynamics in velocity and heading with time constants 1/α and 1/β, re-
spectively. Constants α and β are positive real numbers. Using finite time constants
adds a certain level of realism to the model.

6.3.2 Feedback Linearization and Linear Control

We design the continuous-time FLLC scheme of Fig. 6.5 for the plant model given by
Eq. (6.54). First, the nonlinear terms are eliminated with proper dynamic feedback.
Poles of the linear closed-loop system are then placed at specific locations on the
left-hand side of the s-plane via static feedback. Figure 6.6 and Eqs. (6.55) and (6.56)
give in detail the continuous-time FLLC system.
The linear control (LC) law is given by

u1 (t) = Kp (x ∗ (t) − x(t)) + Kd (ẋ ∗ (t) − ẋ(t)) + ẍ ∗ (t),


u2 (t) = Kp (y ∗ (t) − y(t)) + Kd (ẏ ∗ (t) − ẏ(t)) + ÿ ∗ (t),
(6.55)
u3 (t) = v(t),
u4 (t) = θ (t).
6.3 Continuous-time Models 123

Fig. 6.6 Continuous-time


. ..
controllers x* x* x*
DT DT DT
. .. u1
y* y* y*
DT DT DT
. LC u2 vc
x, x
.
y, y u3 FL
θc
u4

The feedback linearization (FL) scheme is


u1 (t) cos θ (t) + u2 (t) sin θ (t)
vc (t) = v(t) + ,
α (6.56)
u 2 (t) cos θ (t) − u 1 (t) sin θ (t)
θ c (t) = θ (t) + .
βv(t)
Clearly, to employ FL, v(t) must be non-zero. With feedback linearization based
on the position of the WMR, the system from control input vector [u1 , u2 ] to plant
outputs x, y is actually a double integrator [27]. The linear controller takes the form
of sums of weighted errors along the x and y axes. A gain Kp acts on the difference
between actual and commanded vehicle positions. A gain Kd modulates the differ-
ence between actual and commanded vehicle speeds. Figure 6.7 shows the linearized
continuous-time system interpretation.
The error system is formulated as follows. Let

x (t) = x ∗ (t) − x(t),


4
d4x (t)
= ẋ ∗ (t) − ẋ(t), (6.57)
dt
d 24
x (t)
= ẍ ∗ (t) − ẍ(t).
dt 2
We define similar quantities along the y axis, with the position error labeled 4
y (t).
The error system is written as
⎡ d4 x (t) ⎤
⎡ ⎤
⎢ dt ⎥ 4
x (t)
⎢ ⎥ ⎡ ⎤
⎢ d4 y (t) ⎥ 0 0 1 0 ⎢ 4 ⎥
⎢ ⎥ ⎢ y (t) ⎥
⎢ dt ⎥ ⎢ 0 0 0 1 ⎥ ⎢ d4 ⎥
⎢ ⎥=⎢ ⎥ ⎢ x (t) ⎥. (6.58)
⎢ d 24x (t) ⎥ ⎣ −Kp 0 −K 0 ⎦ ⎢ ⎥
⎢ ⎥ d ⎢ dt ⎥
⎢ ⎥ 0 −Kp 0 −Kd ⎣ d4 y (t) ⎦
⎢ dt 2 ⎥   
⎣ 2 ⎦
d 4y (t) 4
=A dt
dt 2

4 are
The four eigenvalues of matrix A
7
4 = − 1 Kd ± 1 K 2 − 4Kp , i ∈ {1, 2, 3, 4}.
λi (A) d
2 2
124 6 Flatness-based Control

.. .
x* u1 x x
.. .
yy* + u2 y y
1 1
s s
+
.
x**
.
y* +
Kd Kd
+ -

Kp
x*
y*
+
-

Fig. 6.7 Double integrator and linear control law

In case

Kd2 − 4Kp > 0,

the eigenvalues are real. All the eigenvalues are on the left-hand side of the s-plane
when
7
1 1
− Kd + Kd2 − 4Kp < 0
2 2
and
7
1 1
− Kd − Kd2 − 4Kp < 0.
2 2
With the values of the gains selected such that

Kd2 − 4Kp < 0,

the eigenvalues are complex pairs given as


7
4 = − 1 Kd ± j 1 4Kp − K 2 ,
λi (A) d
2 2
and are located on the left-hand side of the s-plane when Kd > 0. Therefore, for a
continuous-time control design, one makes 4 x (t) and 4
y (t) approach zero, with time,
at a desired rate by carefully selecting gains Kp and Kd .
6.4 Numerical Simulations 125

6.3.3 Wheel Velocity Control

As shown in Fig. 6.3, the block labeled WVC takes the discrete-time commands in
velocity and heading, and translates them into angular velocity reference signals to
the left (ωL ) and right (ωR ) wheels. WVC is a discrete-time dynamic block present
in the actual WMR control loop, but absent from the continuous-time FLLC design
and the simulations.
The wheels are controlled independently. The radius of each wheel is r. The dis-
tance between the wheels is d. The velocity of the wheeled mobile robot is written as
r(ωR + ωL )
V = , (6.59)
2
and the angular velocity, as
r(ωR − ωL )
ω= . (6.60)
d
Commands in velocity and heading are translated into angular velocity reference
signals to the left and right wheels by using Eqs. (6.59) and (6.60), and solving for
the right and left wheel angular velocities.

6.4 Numerical Simulations

We simulate the WMR under feedback control. The performances of the discrete-
time control systems, namely discrete-time FLLC and FACS, are measured against
those obtained with the continuous-time control system presented in Sects. 6.2 and
6.3. We simulate various implementation conditions and present the main results in
the form of graphs and tables, with a focus on the characteristics of the systems in
the time-domain.

6.4.1 Continuous-time Systems

The simplified plant model given by Eq. (6.54) is in closed-loop with the continuous-
time FLLC system designed in Sect. 6.3.2. The resulting closed-loop system is shown
in Fig. 6.5. The parameters of the WMR model and the continuous-time FLLC
scheme are given in Table 6.1. Two sets of controller gain values are used for FLLC,
identified by subscript 1 and 2 in the table. These controller gains result in a stable
continuous-time closed-loop system.
Initial conditions at time t0 = 0 are velocity v(0) = 0.5 m/s, heading angle
θ(0) = 0 radian, and position (x, y) = (2, −2) m. The ordinary differential equations
are solved with a variable-step solver [32] in the Matlab − Simulink ® environment.
126 6 Flatness-based Control

Table 6.1 Parameter values α 2.2


for continuous-time systems β 1506
(Kp , Kd )1 (0.4762, 3.5)
(Kp , Kd )2 (1400, 1400)

The models include a saturator of 1 m/s in the velocity command channel. To simulate
the intrinsic delay in digital processing, there is a single time step delay of T seconds
in the feedback path of the models.

6.4.2 Local Digital Redesign of FLLC

Local digital redesign of FLLC results in a discrete-time closed-loop system which


is termed discrete-time FLLC, or simply DT-FLLC. DT-FLLC is actually the sim-
plest discrete-time implementation of FLLC, and is obtained as follows. First, one
applies the FLLC computations described in Section 6.3.2 directly to the discrete-
time signals. The parameter values of FLLC are those presented in Sect. 6.4.1. Then,
one places instantaneous samplers at the feedback channels and a hold H at each
controller output channel. The closed-loop system obtained is shown in Fig. 6.8. The
update period for the discrete-time portion of the closed-loop system is T units of
time. The units are in seconds.

6.4.3 FACS

FACS described in Sect. 6.1 is obtained with the parameter values given in Table 6.2.
The entire discrete-time portion of the resulting closed-loop system is updated at
a period of T seconds. One may add a low-pass filter to the velocity control input
channel to smooth the velocity command signal. Clearly, closed-loop stability and the
resulting robot motion must be checked, via simulations, prior to the implementation
of such a filter with the actual robot. Here, no filter with such a purpose is included
in the simulations.
FACS relies on two pairs of controller gains: a small-gain pair used for im-
plementations with relatively short update periods, and a high-gain pair employed
with control updates and sampling done at relatively long periods. High gains have
a tendency to bring the control inputs to their saturation limit for relatively short
update/sampling periods.
6.4 Numerical Simulations 127

. ..
x* x* x*
DT DT DT
. ..
y* y* y*
DT DT DT

. vc
x, x
S H
.
y, y FLLC
S θc
H
v
S
θ
S

Simplified
Delay
plant model

Fig. 6.8 Discrete-time FLLC in closed-loop with WMR model

Table 6.2 Main parameter α 2.2


values for FACS β 1506
(Kp , Kd ) (1400, 1400), (0.4762, 3.5)
State estimator solver 4-step Runge-Kutta method
(n = 4)
Intervals in numerical integration 10

6.4.4 Reference Trajectory

The reference trajectory given by the equation below is applied as exogenous input to
the WMR control system. The trajectory is sinusoidal along the x axis and ramp-like
along y. Variables At , ωt , and Wyt are fixed to 3.6, π/60, and 0.02, respectively,
in the simulations. Again, T is the update period for the discrete-time part of the
closed-loop systems. Integer k is the discrete-time index.
⎡ ∗ ⎤ ⎡ ⎤
xDT (k, T ) At sin (ωt · kT )
⎢ y ∗ (k, T ) ⎥ ⎢ Wyt · kT ⎥
⎢ DT ⎥ ⎢ ⎥
⎢ ẋ ∗ (k, T ) ⎥ ⎢ At ωt cos (ωt · kT ) ⎥
⎢ DT ⎥ ⎢ ⎥
⎢ ẏ ∗ (k, T ) ⎥ = ⎢ Wyt ⎥
⎢ DT ⎥ ⎢ ⎥
⎣ ẍDT

(k, T ) ⎦ ⎣ −At ωt sin (ωt · kT ) ⎦
2

ÿDT (k, T ) 0

6.4.5 Results

The planar trajectories of the WMR are shown in Fig. 6.9. Trajectories with respect to
time are given in Fig. 6.10. Figure 6.11 presents velocity control inputs with respect
128 6 Flatness-based Control

to time, whereas Fig. 6.12 shows WMR velocities. In Figs. 6.9–6.12, a ZOH is used
at the control input channels, and the controllers are implemented with the sets of
low gains of Tables 6.1 and 6.2. The curves pertaining to the heading angle show a
similar pattern to those associated with the velocity.
Instead of holding the control input over each update period with a ZOH, we
simulate DT-FLLC control with first-order hold (FOH) and slewer hold (SH). Both
holds are described in Chap. 3. The resulting trajectories are shown in Fig. 6.13. The
DT-FLLC controllers and holds are simulated at update periods of T = 0.005 and
T = 0.01 second. For the purpose of comparing with FACS and show its superior
performance over that obtained with DT-FLLC, at the longer update periods, FACS
is implemented with ZOH at the control input channels and at the relatively long
update period of T = 1 second. FACS is not implemented with FOH or SH since its
design assumes a constant control input between successive discrete time steps.
Trajectories obtained with WMR control using the high gain sets of Tables 6.1
and 6.2 are shown in Fig. 6.14. The figure shows the trajectories obtained with DT-
FLLC implemented with three short update periods, and those obtained with FACS
implemented with three large update periods. The trajectory of the WMR completely
deviates with the use of the DT-FLLC controller running at periods larger than or
equal to 0.001 s, namely the robot moves away from its desired path, in opposite
direction, which is not the case with FACS.
As parameter n influences the performance of FACS and its processing time, we
provide the timings obtained in the non compiled, Simulink®simulations for various
values of n in Table 6.3. Furthermore, Fig. 6.15 presents a representative portion of
the WMR trajectories obtained with high-gain FACS at T = 0.01 s with the set of
values of n of interest.
For DT-FLLC, with T = 0.01 s, the shortest processing time obtained is 0.0001 s.
Such a processing time is, as expected, shorter than that obtained with FACS.
The trajectories of the WMR obtained with a dual-rate implementation of DT-
FLLC are shown in Fig. 6.16. Trajectories obtained with single-rate DT-FLLC and
CT-FLLC are included in the figure for the purpose of comparison. The short sam-
pling period is set to one tenth the length of the long control update period. In the
figure, the different values for the long control update period are shown. The dual-
rate closed-loop system operates with the short sampling period and long control
update period. This is a system with fast plant output sampling (FPOS) according
to the definitions given in Chap. 4. The single-rate system runs at the long sam-
pling/control update period. For the dual-rate FPOS system, an averager is placed
at the velocity control input channel. The averager is a type of dual-rate generalized
sampler, as discussed in Chap. 2. The averager outputs, at the slow control update
rate, a discrete-time output followed by a ZOH, the average of the last ten velocity
control input samples, which are obtained at the fast rate.
Trajectories of the WMR subject to external disturbances on velocity and heading
commands (square waves with period below 10 s, amplitude of unity or less, and
applied for 40 s) and position measurement noise (normal distribution with mean of
0.05 m and variance of 0.03 m) are shown in Fig. 6.17. The feedback control scheme
is CT-FLLC, DT-FLLC or FACS. There is a ZOH at the control input channels of
6.4 Numerical Simulations 129

1.5

0.5

0
0.001
* 0.05
y (m)

-0.5 0.005 0.1


x 0.01 0.5
-1
0.02 0.75
-1.5
DT – FLLC
FACS
-2
1.8 2 2.2 2.4 2.6 2.8 3 3.2 3.4 3.6 3.8
x (m)

-0.4 DT – FLLC
FACS
-0.6

-0.8

-1
y (m)

-1.2

-1.4

-1.6 CT – FLLC

-1.8

-2
2 2.05 2.1 2.15 2.2 2.25 2.3 2.35
x (m)

Fig. 6.9 Planar trajectories

DT-FLLC and FACS. Despite operating at an update period 100 times longer than
that of DT-FLLC (0.001 s), FACS results in a stable WMR trajectory. The WMR
is unstable when placed in closed-loop with DT-FLLC and operated at an update
period of 0.1 s.

6.4.6 Analysis

We make a number of observations.


Observation 1 Discrete-time controllers FACS and DT-FLLC implemented at rela-
tively small values of T result in WMR trajectories approaching those obtained with
130 6 Flatness-based Control

3.6
DT – FLLC
3.4 FACS

3.2

3
x (m)

2.8

2.6

2.4
0.001
* 0.05
0.005 0.1
2.2 x 0.01 0.5

2
0.02 0.75
CT – FLLC
0 5 10 15 20 25 30
Time (s)

0.5 DT – FLLC
FACS

-0.5
y (m)

CT– FLLC 0.001


-1
* 0.05
0.005 0.1
-15. x 001 0.5
0.02 0.75
-2
0 5 10 15 20 25 30
Time(s)

Fig. 6.10 Trajectories with respect to time

CT-FLLC. There is a form of convergence as T approaches zero, a uniform-in-time


convergence according to the simulations. Uniform-in-time convergence is defined
in Chap. 4. The planar trajectories of the robot are shown in Figs. 6.9, 6.10 and 6.14.
Control inputs and WMR velocities obtained with the discrete-time control schemes
approach those signals obtained with CT-FLLC from Figs. 6.11 and 6.12.
Observation 2 According to Figs. 6.9, 6.10 and 6.14 using either low-gain or high-
gain sets for FACS results in acceptable performance, namely a stable closed-loop
system and WMR trajectories relatively close to those obtained with CT-FLLC, at rel-
atively long values of T for which the closed-loop system with DT-FLLC is unstable.
Observation 3 Placing a hold more sophisticated than ZOH at the control input
channels must be done with caution. We refer to holds that carry out a more complex
6.4 Numerical Simulations 131

0.4

I III III
0.2
III
mand (m/s)

0
0.01
II 0.75
v comm

-0.2
1.0
II
-0.4
II I CT-FLLC
II DT-FLLC
-0.6
III FACS
1 2 3 4 5 6 7 8
t (seconds)

Fig. 6.11 Velocity control inputs

0.4 III
0.3 I III
0.2
III
0.1
01

0 II
v (m/s)

-0.1

-0.2

-0.3 II 0.01
00.75
75 I CT-FLLC
-0.4 II II DT-FLLC
1.0
-0.5
III FACS
-0.6
0.5 1 1.5 2 2.5 3 3.5 4 4.5
t (seconds)

Fig. 6.12 Actual velocity of WMR

Table 6.3 Processing times n=1 0.00019 s


n=2 0.00025 s
n=4 0.00036 s
n = 10 0.00069 s

function than simply maintaining the value of a signal constant between consecu-
tive control updates. Examples include the FOH, the SH, and the generalized holds
presented in Chap. 2. Naively substituting the ZOH with another hold may actu-
ally deteriorate the performance of the WMR under feedback control. Figure 6.13
indicates that FOH provides superior performance than SH for a given value of T ,
132 6 Flatness-based Control

0.5
DT – FLLC
FACS
0

0.005, FOH
y (m)

-0 5
-0.5
0.005, SH

-1 x 0.01, FOH
0 01 SH
0.01,
-1.5
1.0, ZOH

-2
18
1.8 2 22
2.2 2
2.4
4 2
2.6
6 2.8
28 3 3.2
32 3.4
34 3.6
36
x (m)

Fig. 6.13 WMR trajectories obtained with the use of FOH and SH at the control input channel

0.5

0.0005
-0.5
DT – FLLC x 0.00055
y (m)

-1
* 0.001
0.1
-1.5
CT – FLLC FACS 0.5

-2
0.75

1 1.5 2 2.5 3 3.5


x (m)

Fig. 6.14 WMR trajectories obtained with high-gain control

when implemented with DT-FLLC, when considering the closeness of the WMR tra-
jectory with respect to that obtained with CT-FLLC. The figure also shows that the
performance of FACS, equipped with a ZOH and operating at a value of T a hundred
times larger than that of DT-FLLC, is comparable to that obtained with DT-FLLC.
Observation 4 The saturator at control input and the size of T significantly influence
the performance achieved by the WMR under high-gain control. The impact is more
severe with DT-FLLC. High gains tend to make the control input large. The velocity
saturation of 1 m/s results in applied control input values that are orders of magnitude
smaller than those calculated, resulting in potentially oscillatory response. This is
6.4 Numerical Simulations 133

-1.35

-1.4

-1.45

- 15. n = 10

-1.55
y (m)

-1.6 n = 1, 2, 4
-1.65

-1.7

- 175.

-1.8

-1.85
1.78 1.8 1.82 1.84 1.86 1.88
x (m)

Fig. 6.15 WMR trajectories for different values of n

1.5

05
0.5

0
y (m)

CT
CT–FLLC 0.01
-0.5
0.02

-1
x 0.03

-1.5 Single-rate DT - FLLC


Dual-rate DT - FLLC
-2
2 2.2 2.4 2.6 2.8 3 3.2 3.4 3.6
x (m)

Fig. 6.16 WMR trajectories for a dual-rate implementation of DT-FLLC

true for both FACS and DT-FLLC and occurs in the early part of the simulations.
Figure 6.14 indicates that the early part of the WMR trajectory is relatively distant
from that obtained with CT-FLLC, although the error reduces with time for the case
of FACS. With DT-FLLC, a value of T as small as 0.001 second makes the WMR
move erratically. The planar trajectory of the WMR in closed-loop with FACS stays
relatively close to that obtained with CT-FLLC at values of T several hundred times
longer than those values of T obtained with DT-FLLC.
134 6 Flatness-based Control

0.5
CT-FLLC
0
y (m)

-0.5 DT-FLLC, update period: 0.0005 s


DT-FLLC, update period: 0.001 s
-1

FACS, update period: 0.1 s


-1.5

-2
0.5 1 1.5 2 2.5 3 3.5
x (m)

Fig. 6.17 Trajectories of WMR subject to disturbances and measurement noise

Observation 5 For FACS, the value of n is expected to influence both the processing
time of the control law and the closed-loop performance. Table 6.3 indicates that
FACS may run in real-time, as its processing is approximately 15 times shorter than
the size of the update period T = 0.01 for the larger value of n tested. The processing
time for FACS increases by a factor of approximately 4 when n goes from 1 to 10.
Figure 6.15 shows that the trajectory of the WMR does not vary significantly with
values of n ranging from 1 to 10. For DT-FLLC, the processing time is at least twice
as short as that obtained with FACS. DT-FLLC is to be used in case of relatively
fast sampling and control update rates. FACS does not provide any advantage over
DT-FLLC in terms of performance and processing time when T is relatively short.
Observation 6 A dual-rate implementation of DT-FLLC may provide a superior
WMR performance than that obtained with a single-rate DT-FLLC scheme. This is so
in terms of planar trajectories. The simulation results are shown in Fig. 6.16. Again,
for the purpose of comparing various control laws, the WMR trajectory obtained
with CT-FLLC is our reference. For all three long control update periods tested,
the dual-rate implementation performs better than the single-rate one. Clearly, the
best performance is obtained with the smallest value of T . FACS does not perform
well with an FPOS implementation done a posteriori to its design, as opposed to
DT-FLLC which is well suited for such an approach. The design of FACS relies on
the assumption of a single-rate implementation.
Chapter 7
Digital Redesign of Autopilots

This chapter presents digital acceleration autopilots. The autopilots enable aerial ve-
hicle tracking of a reference acceleration signal. The guidance law has for objective to
steer the pursuer toward a prescribed location by issuing the acceleration commands
that are inputs to the autopilot. We assume that the necessary onboard components
are available and function normally.
Section 7.1 gives an overview of the main components and subsystems found in
the guidance and control loops. Sections 7.2 and 7.3 present the discrete-time accel-
eration autopilots. The design of the autopilots relies on the global digital redesign
techniques of Chap. 5.

7.1 Guidance and Control

The guidance law and the autopilot are two elements, among several systems and
components, enabling an airborne platform to reach a target [77]. Fig. 7.1 shows
simplified, generic schematics of the components present in the guidance and control
loops. The guidance law issues acceleration commands to the autopilot. The autopilot
outputs commands to the actuators such that the platform tracks the commanded
acceleration. Actuators move the control surfaces, such as fins and canards. Sensors
provide information on the body of the pursuer using inertial measurement units
(IMU) such as accelerometers and gyroscopes. Furthermore, the aerial vehicle may
be equipped with a receiver device that outputs its position by means of the global
navigation satellite system (GNSS). The position of the target with respect to that
of the aerial vehicle may be obtained via an onboard seeker, or be available prior
to launch as GNSS coordinates. Information on the pursuer and the target is the
feedback signal used by both the autopilot and the guidance law. Estimators provide
filtered, in some instances predicted, values of a subset of the feedback signals, such
as predicted target position if it is moving.

C. A. Rabbath, N. Léchevin, Discrete-Time Control System Design with Applications, 135


DOI 10.1007/978-1-4614-9290-0_7, © Springer Science+Business Media New York 2014
136 7 Digital Redesign of Autopilots

Fig. 7.1 Generic schematics Acceleration Motor


of guidance and control loops Guidance commands commands Pursuer
law Autopilot Actuators dynamics

Estimators Sensors

Target

Fig. 7.2 Autopilot with Commanded


acceleration and rate feedback acceleration
+ + K3 +
K1 K2 K4 G1(s)
s
- - -

Angular rate
G2(s)
Acceleration

7.1.1 Acceleration Autopilot

A basic acceleration autopilot is shown in Fig. 7.2. Transfer function G1(s) represents
the dynamics between fin or canard deflection to the actual acceleration. Transfer
function G2(s) relates fin or canard deflection to angular rate. Feedback consists
of acceleration and body attitude rate signals. For example, for the pitch-plane dy-
namics, the angular body rate is the pitch rate and the acceleration is the so-called
normal acceleration. The gains of the PID-like controller shown in Fig. 7.2, namely
K1, K2, K3 and K4, are obtained by means of standard linear controller design
techniques, such as root-locus and frequency-response designs [22], at the operating
points of interest. Numerical simulations are helpful to validate the effectiveness
of the designed controller gains, at least around the operating points. Performance
requirements are the classical ones: reference signal tracking, disturbance rejection,
and robustness to variations in plant parameters [51].
A linear plant model is needed for the design of the controller. The calculation of
linear plants at selected operating points is outside the scope of this book. A detailed,
generic model of an airborne pursuer platform can be found in [11], [38].
A single set of controller gains cannot ensure closed-loop stability and perfor-
mance for the entire flight envelope. Hence, an algorithm to switch from one set of
controller parameters to another, or to interpolate linearly between known parameter
values, has to be devised. Such an algorithm is termed gain scheduling.

7.1.2 Gain Scheduling

The typical digital autopilot design process consists of the following steps. First,
one linearizes the nonlinear continuous-time plant using small-signal linearization
7.2 H-infinity Control and Plant Input Mapping 137

at a set of operating points. An operating point is characterized by the (altitude,


speed, angle of attack) triplet. Second, at a given operating point, one performs a
direct discrete-time design, by discretizing the linearized plant model at a selected
sampling period, then carries out the linear discrete-time controller design. Alterna-
tively, one may design a linear continuous-time control law for the LTI incremental
plant model, then discretize the controller using any of the methods discussed in
Chap. 3. The designer obtains controllers for each operating (equilibrium) point of
interest. Third, one implements a controller parameter selection logic. Such logic
determines the controller to activate for the given operating conditions, or the val-
ues assigned to the controller parameters. When the airborne platform is in-between
the operating points, linear interpolation among controller parameter values may be
done.
In general, an airborne platform experiences a variation in aerodynamic charac-
teristics as it moves through the air. Such changes in the system can be interpreted
as a variation in its transfer function from one triplet of speed, altitude, and angle
of attack to another. A logic must therefore be available onboard the platform to
switch, or interpolate, among the different controller parameter values in flight. Gain
scheduling is surveyed in [73], and discussed from a control theoretic point of view
in [2] and [15].

7.1.3 Proportional Navigation Guidance

The most basic guidance law is proportional navigation guidance (PNG) [83]. Its
principle is straightforward, and is described in Chap. 1.
The basic PNG law may, however, result in relatively poor performance when
(1) the maneuverability of the pursuer is not at an advantage with respect to that
of the target, (2) there is a stringent requirement on the terminal impact angle,
(3) estimation and noise effects are significant, (4) the dynamics of the autopilot
are relatively slow, and (5) there are realistic limits imposed on the acceleration
commands.
To improve pursuer performance for different scenarios, several sophisticated
guidance laws have been proposed as alternatives to PNG [6], [12], [19], [49], [67],
[77], [83]

7.2 H-infinity Control and Plant Input Mapping

We carry out a continuous-time H-infinity, or H∞ , control system design for a lin-


earized model of the aerial vehicle dynamics, assuming that a linear model is available
at each operating point. We employ the plant input mapping (PIM) method presented
in Chap. 5 to convert the continuous-time controllers to the discrete-time form. We
do not explore gain scheduling, and do not delve into the formulation of the plant
model. Instead, we work on a known, generic model.
138 7 Digital Redesign of Autopilots

Fig. 7.3 a Continuous-time Z3(s) Z1(s) Z2(s)


model b Formulation as a
standard H-infinity control W4(s)
problem W3(s) W1(s) d(s)

E(s) U(s) +
R(s) + +
C(s) G1(s)
-
Y1(s)
G2(s) Y(s)
+ +
W2(s) N(s)

Z1(s) N(s)
Z2(s) R(s)
Z3(s) d(s)
Ggen (s)

E(s)
U(s)
Y1(s)

C(s)

7.2.1 Assumptions

A few assumptions are made for the purpose of design. The uniform sampling periods
found in the autopilot loops are h and T . Period h corresponds to a rate of 1/ h Hz,
whereas T pertains to a rate of 1/T Hz. Period h is longer than T . The two periods are
related by h = N ·T , where N is a positive integer. T is chosen to be nonpathological
with respect to the plant transfer functions. Exogenous inputs to the autopilot, such
as reference accelerations and disturbances, are assumed to have a finite supremum
norm and be uniformly continuous over [0, ∞), and independent of T and h.

7.2.2 Continuous-time H-infinity Control

First, one performs a continuous-time control system design. With the knowledge of
the linearized dynamics, we construct the continuous-time model shown in Fig. 7.3.
7.2 H-infinity Control and Plant Input Mapping 139

Controller Airframe

Reference + Control input a(s)


C(s)
- δp(s)

q(s)
Angular rate feedback
δp(s)

Acceleration feedback

Fig. 7.4 Simplified block diagram of continuous-time linearized autopilot

R(s) is the reference normal acceleration, N (s) is noise, d(s) is the disturbance,
G1 (s) is the transfer function from control surface deflection to acceleration, or
G1 (s) = a(s)/δp (s), and G2 (s) is the transfer function from control surface deflection
to body rate, or G2 (s) = q(s)/δp (s). In the pitch plane, the body rate is actually the
pitch rate, and the acceleration is normal to the body [77]. The low-order weighting
functions are W1 (s), W2 (s), W3 (s) and W4 (s). Weighting function W1 (s) constrains
the control input signal, W2 (s) models the frequency contents of the sensor noise,
W3 (s) shapes the transfer function from reference input to error, and W4 (s) constrains
the effect of the disturbance on the control deflection. The objective is to obtain
a stabilizing controller C(s) that minimizes the H∞ norm of the system relating
[N (s), R(s), d(s)]T to [Z1 (s), Z2 (s), Z3 (s)]T .
The H∞ control problem can be solved with a bisection algorithm, using known
conditions applied to some of the matrices of the generalized continuous-time
plant, as discussed in [84]. Alternatively, instead of designing the controller in the
continuous-time domain, the H∞ control problem can be solved by using a fast
discrete-time system. A fast discrete-time design is done as follows. Discretize the
weighting functions W1 (s), W2 (s), W3 (s) and W4 (s), and plants G1 (s) and G2 (s).
Formulate the discrete-time generalized plant with a topology similar to that shown
in Fig. 7.3a. Obtain an internally stabilizing controller C(z, T ) that yields the greatest
lower bound on the H∞ norm of the system relating [N (z, T ), R(z, T ), d(z, T )]T to
[Z1 (z, T ), Z2 (z, T ), Z3 (z, T )]T . By employing a sufficiently small T , we expect the
performance of the discrete-time feedback system to follow relatively closely that
of the continuous-time system, in the time domain, from an input-output point of
view.

7.2.3 Conversion to a Dual-rate Feedback System with PIM

As the second step in the design, the H∞ controller C(s) obtained in Sect. 7.2.2 is
converted to the discrete-time form with PIM.
140 7 Digital Redesign of Autopilots

G(s)

+ C1(s)
+ a(s)
δp(s)
- -
q(s)
C2(s)
δp(s)

Fig. 7.5 Block diagram of simplified autopilot

We portion controller C(s) into C1 (s) and C2 (s), as shown in Fig. 7.5. The SISO
plant G(s) is given as
G1 (s)
G(s) = . (7.1)
1 + C2 (s)G2 (s)
We label M(s) as the transfer function from the reference input, to the closed-loop
system, to the output of C1 (s). We calculate M(s) from the knowledge of the block
diagram of Fig. 7.5. Transfer function M(s) is
C1 (s)[1+C2 (s)G2 (s)]
M(s) = .
1 + C1 (s)G1 (s) + C2 (s)G2 (s)
We discretize M(s) using the matched pole-zero method and an update period h to
obtain M(z, h) such that

M(z, h)|z=z0 = M(s)|s=s0 , (7.2)

where s0 is a real constant such that 0 ≤ s0 << 1 and z0 = es0 h . Write M(z, h) as
nm (z, h)
M(z, h) = (7.3)
dm (z, h)
where nm (z, h) and dm (z, h) are rational polynomials in z. Let ∂[nm (z, h)] = nm and
∂[dm (z, h)] = dm . Symbol ∂ denotes the degree of its argument.
We set the structure of the dual-rate autopilot to that shown in Fig. 7.6. In Fig. 7.6,
Hh,T is a dual-rate generalized hold. Following the terminology used in Chap. 2,
Hh,T is a system that receives a bounded discrete-time input signal with period h
and outputs a bounded discrete-time signal with period T , with 1/ h < 1/T . In the
4 h), B(z,
structure of Fig. 7.6, controllers A(z, 4 h) and C(z, 4 h) have to be calculated.
Inner-loop controller C2 (z, T ) is simply a fast hold equivalence discretization of
C2 (s), as presented in Chap. 3.
We re-arrange the structure of discrete-time system G(z, 4 h) shown in Fig. 7.6 to
that shown in Fig. 7.7. In the figure, we employ a dual-rate generalized sampler,
7.2 H-infinity Control and Plant Input Mapping 141

~ ~
A(z,h) G(z,h)

+ ~ +
C(z,h) Hh,T HT
- -

ST C2(s) HT ST G2(s)

C2(z,T)

~
B(z,h) Sh G1(s)

Fig. 7.6 Block diagram of dual-rate autopilot

U(z,T)
+
Hh,T
-

ST C2(s) HT ST G2(s) HT

C2(z,T) G2(z,T)

Y(z,T)
ST,h ST G1(s) HT

G1 (z,T)

Fig. 7.7 Alternative structure

DRGS, identified as ST ,h . Actually, ST ,h is the dual-rate decimator sampler that


outputs every N th input sample.
Then, using the systems and signals shown in Fig. 7.7, a fast discrete-time system
from U (z, T ) to Y (z, T ), labeled W (z, T ), can be formulated as
G1 (z, T )
W (z, T ) = . (7.4)
1 + C2 (z, T )G2 (z, T )
4 is equivalent to ST ,h W Hh,T . In practice,
With the knowledge of W , it is clear that G
one can perform (fast) hold equivalence discretizations of G1 (s), G2 (s) and C2 (s) and
142 7 Digital Redesign of Autopilots

then calculate W (z, T ) with Eq. (7.4). We write the state-space equation of W (z, T )
in the shift form as

x(k + 1, T ) = Ax(k, T ) + Bu(k, T )


y(k, T ) = Cx(k, T ) + Du(k, T ). (7.5)

Using discrete-time lifting (DTL), presented in Chap. 2, we obtain the expression


for ST ,h W Hh,T as
⎡ ⎤
1
 ⎢ ⎥ m−1
⎢ 1 ⎥
x(k + 1, h) = AN x(k, h) + AN−1 B AN−2 B · · · B ⎢ . ⎥ u(k − j , h)
⎣ .. ⎦
j =−l
1

m−1
y(k, h) = Cx(k, h) + D · u(k − j , h). (7.6)
j =−l

4 becomes
When Hh,T is a discrete-time zero-order hold (DT-ZOH), system G
⎡ ⎤
1
 ⎢ 1 ⎥ ' '
CAdj(zI − AN ) AN−1 B AN−2 B · · · B ⎢ ⎥ ' N'
⎣ ... ⎦ + zI − A · D
1
4 h) =
G(z, ' ' .
'zI − AN '
(7.7)

4 h) as
We rewrite G(z,

4 h) = nG (z, h)
G(z, (7.8)
dG (z, h)
where ∂[nG (z, h)] = nG and ∂[dG (z, h)] = dG .
We modify M(z, h) to account for the feedback effect of the actual dual-rate control
system while preserving the low-frequency or DC gain. The resulting system, which
4 h) is implemented with the block diagram shown in Fig. 7.6. Transfer
is termed M(z,
4 4 h). From Fig. 7.6 and
function M(z, h) relates the reference input to the output of C(z,
knowing (7.3) and (7.8), we write the closed-loop transfer function from reference
4 h), as the following transfer function
input to plant input, M(z,

4 h) = K · m(z, h)dG (z, h)


M(z, (7.9)
dm (z, h)
where K ∈ R and m(z, h) have to be determined. At this point, the only known
characteristic of polynomial m(z, h) is its degree, which is constrained to be smaller
than or equal to (dm − dG ) to ensure properness. Monic polynomial m(z, h) can be
7.2 H-infinity Control and Plant Input Mapping 143

Fig. 7.8 Direct form II


structure for generic + a2
+
second-order transfer
function in γ + +
-b1 a1 +
+ + +

-b0 a0

obtained by setting the roots of m(z, h) to be equal to the (dm − dG ) zeros of M(z, h)
that are closest to the unit circle, for example. We assume that (dm − dG ) < nm . We
adjust K such that the low-frequency or DC gain of M(z,4 h) matches that of M(z, h).
We calculate controllers A(z,4 h), B(z,
4 h) and C(z,
4 h) using the concept of PIM
presented in Chap. 5. To obtain the controllers, we solve the Diophantine equation
given by

u(z, h)dG (z, h) + v(z, h)nG (z, h) = dm (z, h) (7.10)

for u(z, h) and v(z, h),where

u(z, h) = ul zl + ul−1 zl−1 + ... + u1 z + u0 (7.11)


v(z, h) = vr zr + vr−1 zr−1 + ... + v1 z + v0 . (7.12)

4 h), B(z,
With the knowledge of u(z, h) and v(z, h), A(z, 4 h) and C(z,
4 h) can always
be obtained by letting w(z, h) be an arbitrary stable polynomial of degree l, where
max (r, dm – dG ) ≤ l. The three controller transfer functions are given as

4 h) = w(z, h) , B(z,
4 h) = m(z, h) , C(z,
A(z, 4 h) = v(z, h) . (7.13)
w(z, h) u(z, h) w(z, h)
Alternatively, a two-controller implementation is possible. If m(z, h) is stable and
r ≤ (dm − dG ) ≤ l, we use

4 h) = 1, C(z,
A(z, 4 h) = v(z, h) .
4 h) = m(z, h) , B(z, (7.14)
u(z, h) m(z, h)
If v(z, h) is stable and (dm − dG ) ≤ r ≤ l, we can set

A(z, 4 h) = v(z, h) , B(z,


4 h) = m(z, h) , C(z, 4 h) = 1. (7.15)
v(z, h) u(z, h)
A single-controller implementation is also possible with the presence of the dynamics
4 or C.
of either B 4 Either block maintains the stable closed-loop pole set. Block A 4 is
replaced by a gain, and so this choice affects the zeros of the closed-loop system.
4 is determined from a steady-state requirement,
The gain taking the place of block A
for example.
144 7 Digital Redesign of Autopilots

7.2.4 Plant Model

Obtaining a model of the dynamics of an airborne pursuer platform is the subject of


[11], [38], and [77]. Here, we focus on linearized pitch plane dynamics assuming
(1) motion on the vertical plane (up and down), (2) constant pursuer speed V , (3)
relatively small angle of attack α, and (4) acceleration commands perpendicular to
the body of the pursuer, as discussed in [38]. We follow the derivation of the model
presented in [38]. The equations give us the dynamics of the aerial vehicle for small
perturbations around the operating point. Angle of attack α is equal to pitch angle
θ minus flight-path angle γp . The pitch angle is the angle between the nose of the
body and the inertial reference frame in the plane of motion. The flight-path angle
is the angle between the velocity vector and the inertial reference frame, also in the
plane of motion. Then,
dα dθ dγp
= − . (7.16)
dt dt dt
Angular acceleration is

d2θ M(α, δp )
2
= (7.17)
dt J
where M(α, δp ) is the moment as a function of pitch angle α and fin deflection δp ,
and J , the relevant moment of inertia of the pursuer. Normal acceleration is
F (α, δp )
a= (7.18)
m
where F (α, δp ) is the force applied to the body at its center of mass, and m is the
(constant) mass. Angular rate dγp /dt is given by

dγp cos −1 (α)


= . (7.19)
dt V
Let
1 ∂F (α, δp )
Zα = , (7.20)
m ∂α

1 ∂F (α, δp )
Zδp = , (7.21)
m ∂δp
and
1 ∂M(α, δp )
Mα = , (7.22)
J ∂α

1 ∂M(α, δp )
M δp = . (7.23)
J ∂δp
7.2 H-infinity Control and Plant Input Mapping 145

Assuming relatively small angle α, defining the state as [α, θ̇ ]T , and expanding the
expressions for dθ/dt and d 2 θ/dt 2 as Taylor series about an operating point, the
state-space equations of the linearized plant model can be written as
   −Zα    . −Zδp /
d α 1 α
= V + V δp
dt θ̇ Mα 0 θ̇ Mδp
       (7.24)
a Zα 0 α Z δp
= + δp .
θ̇ 0 1 θ̇ 0

With the following set of parameters, 0 < α < 10 degrees, V of approximately Mach
3.1, Zα = 3.3, Zδp = 0.22, Mα = −81, and Mδp = −125, one obtains a nonmin-
imum phase, stable dynamic system. Such dynamics are typical of tail-controlled
airborne pursuers [38]. Incorporating small perturbations on some elements of the
model, we use the generic state-space model of Eq. (7.25) for the design and the sim-
ulations. The model (7.25) exhibits the features of nonminimum phase and stable
dynamics.

      
d α −1.1 1 α −0.07
= + δ
dt θ̇ −81 0 θ̇ −125 p
       (7.25)
a 3.3 0 α 0.22
= + δp .
θ̇ 0 1 θ̇ 0

7.2.5 Controllers

We apply the procedure described in Sect. 7.2.2. We calculate controllers C1 (s)


and C2 (s) for the feedback system shown in Fig. 7.5. For the purpose of design,
we assume that the sensors and the actuators are ideal, namely that they are unity
gains, and ignore the control mixing subsystem. One may include such models, when
available, in the design process. We select the low-order weighting functions as
s+1
W1 (s) = ,
(1/200)s + 1
W2 (s) = 0.001,
(7.26)
1000
W3 (s) = ,
s + 0.0001
W4 (s) = 0.

We execute the command hinfsyn in Matlab® . The resulting sixth-order H∞


controllers are given by Eqs. (7.27) and (7.28).
 0
−8.461 × 104 s 5 − 1.382 × 1010 s 4 − 2.791 × 1012 s 3
−7.208 × 1012 s 2 − 2.28 × 1014 s − 2.236 × 1014
C1 (s) =  6 0 (7.27)
s + 5.376 × 105 s 5 + 3.792 × 1010 s 4 + 8.347 × 1010 s 3
+3.117 × 1012 s 2 + 3.072 × 1012 s + 3.072 × 108
146 7 Digital Redesign of Autopilots
 0
1.164 × 108 s 5 + 2.631 × 1010 s 4 + 6.187 × 1011 s 3
+2.813 × 1012 s 2 + 4.68 × 1013 s + 4.68 × 109
C2 (s) =  0 (7.28)
s 6 + 5.376 × 105 s 5 + 3.792 × 1010 s 4 + 8.347 × 1010 s 3
+3.117 × 1012 s 2 + 3.072 × 1012 s + 3.072 × 108

The reduced-order continuous-time controllers are given by Eqs. (7.29) and (7.30).
Order reduction is obtained by using the command modred in Matlab® on a balanced
realization of the controllers. States that do not contribute significantly, to an extent
determined by the designer, are eliminated. The low-order controllers are such that
the plant in closed-loop with these subsystems can be placed into a minimal realiza-
tion, which eases the process of global digital redesign. We simulate the low-order
controllers given by Eqs. (7.29) and (7.30).

−0.3637s − 72.79
C1 (s) = (7.29)
s + 0.0001

2.421 × 10−7 s 3 + 1.164 × 108 s 2 + 2.617 × 1010 s + 5.778 × 1011


C2 (s) =
s 3 + 5.376 × 105 s 2 + 3.792 × 1010 s + 3.792 × 1010
(7.30)

We introduce a saturator at the control input channel δp to prevent an excessive


demand on the actuators. Limits are loosely fixed to ±π radians. An actuator having
the following dynamics is placed at the control input channel

ω2
(7.31)
s2 + 2ζ ωs + ω2
with ζ = 0.7 and ω = 300.
Local digital redesign of controller C1 (s) is done with (1) Tustin’s numerical
integration method, (2) the ZOH equivalence method, and (3) the matched pole-zero
method. Controller C2 (s) is discretized with the ZOH equivalence method. A dual-
rate implementation is simulated. Inner-loop controller C2 is updated at the fixed
period of T , whereas outer-loop controller C1 operates at period h.
Inner-loop controller C2 (z, T ) with update period T = 0.0001 s is given as

2.421 × 10−7 z3 + 0.7624z2 − 0.835z + 0.07417


C2 (z, T ) = . (7.32)
z3 − z2 + 0.0002362z
The expressions for C1 (z, h) are given in Tables 7.1–7.3 for three update periods:
h = 0.0003, h = 0.015, and h = 0.075. The update periods are given in units of
seconds.
We carry out the PIM process of Sect. 7.2.3 on the continuous-time feedback
system having reduced-order controllers C1 (s) and C2 (s) in Eqs. (7.29) and (7.30).
We constrain the number of computations using the approach of Sect. 5.5, forcing the
outer-loop controller to be of second order. The inner-loop discrete-time controller
7.2 H-infinity Control and Plant Input Mapping 147

Table 7.1 Discrete-time −0.374z + 0.3528


controller transfer functions h = 0.0003 C1 (z, h) =
z−1
in z obtained with Tustin’s −0.909z − 0.1822
method h = 0.015 C1 (z, h) =
z−1
−3.093z − 2.3659
h = 0.075 C1 (z, h) =
z−1

Table 7.2 Discrete-time −0.3637z + 0.3418


controller transfer functions h = 0.0003 C1 (z, h) =
z−1
in z obtained with the ZOH −0.3637z − 0.7281
equivalence method h = 0.015 C1 (z, h) =
z−1
−0.3637z − 5.0955
h = 0.075 C1 (z, h) =
z−1

Table 7.3 Discrete-time −0.3747z + 0.3529


controller transfer functions h = 0.0003 C1 (z, h) =
z−1
in z obtained with the −1.1489z + 0.0571
matched pole-zero method h = 0.015 C1 (z, h) =
z−1
−5.4593z
h = 0.075 C1 (z, h) =
z−1

Table 7.4 Outer-loop HPIM


Ã(z, h) 1
blocks for h = 0.0003 and
B̃(z, h) 1
T = 0.0001 s
−0.403377z2 + 0.38034z
C̃(z, h)
1.08067z2 − 1.102467z + 0.02179

Table 7.5 Outer-loop HPIM


Ã(z, h) 1.057
blocks for h = 0.015 and
B̃(z, h) 1
T = 0.0001 s
−1.39155z2 + 0.2443z
C̃(z, h)
1.27831z2 − 1.28184z + 0.014

Table 7.6 Outer-loop HPIM


Ã(z, h) 1.02
blocks for h = 0.075 and
B̃(z, h) 1
T = 0.0001 s
−5.41277z2 − 0.016961z
C̃(z, h)
2.082555z2 − 2.06312z − 0.00097

is a ZOH equivalence discretization of C2 . C1 operates at the long sampling period


h. C2 is updated at the short period T . The dual-rate generalized hold Hh,T is the DT
ZOH. HT is the ZOH. ST and Sh are ideal samplers.
Numerical expressions are given in Tables 7.4–7.6 for three implementation con-
ditions. The closed-loop system obtained with H-infinity control and PIM is labeled
HPIM, and has the block diagram shown in Fig. 7.6.
148 7 Digital Redesign of Autopilots

0.8
Acceleration

0.6
Continuous-time
0.4 x 0.0003
0.001
0.2 0.01
0.015
0
0.05
-0.2
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4
Time

Fig. 7.9 Accelerations with local digital redesign of outer-loop controller with Tustin’s method

0.8
Acceleration

0.6 Continuous-time
x 0.0003
0.4 0.001
0.01
0.2
0.015
0 0.05

-0.2
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4
Time

Fig. 7.10 Accelerations with local digital redesign of outer-loop controller with ZOH equivalence

7.2.6 Results

We test the acceleration autopilots in simulation. The performance of HPIM is


evaluated against that obtained with the continuous-time autopilot and local digital
redesign at the selected operating point. The comparison of the different systems is
made in the time domain. The controllers are implemented over a range of sampling
and control update rates.
Step responses of the closed-loop systems are shown in Figs. 7.9–7.21. Figs. 7.9,
7.10, 7.11 and 7.12 show the acceleration. Fig. 7.13 and 7.14 show the control in-
put deflections with respect to time. Figs. 7.15, 7.16, 7.17, and 7.18 present body
7.2 H-infinity Control and Plant Input Mapping 149

0.8
Acceleration

Continuous-time
0.6
x 0.0003
0.4 0.001
0.01
0.2 0.015
0.05
0
+ 0.1
-0.2
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4
Time

Fig. 7.11 Accelerations with local digital redesign of outer-loop controller with MPZ method

0.8
Acceleration

0.6 Continuous-time
x 0.0003
0.4 0.001
0.01
0.2
0.015
0.05
0
0.1
0.25
-0.2
0 0.1 0.2 0.3 0.4 0.5
Time

Fig. 7.12 Accelerations with HPIM

rates with respect to time. The step responses obtained with a quantized acceleration
error signal are shown in Figs. 7.19 and 7.20 for HPIM. The outer-loop controller
is implemented with the δ operator in the direct form II structure [66]. The imple-
mentation structure is illustrated in Fig. 7.8 for the following generic second-order
transfer function in the γ operator

a 2 γ 2 + a1 γ + a 0
H (γ ) = . (7.33)
γ 2 + b1 γ + b 0
150 7 Digital Redesign of Autopilots

0.2

-0.2
Control input

-0.4 Continuous-time

HPIM
-0.6
Tustin
ZOH equivalence
-0.8
MPZ

-1
0 0.05 0.1 0.15 0.2 0.25 0.3
Time

Fig. 7.13 Control inputs for h = 0.001 and h = 0.01

0.4 Continuous-time
HPIM
0.2 Tustin
ZOH equivalence
Control input

0 MPZ

-0.2

-0.4

-0.6

0 0.1 0.2 0.3 0.4 0.5


Time

Fig. 7.14 Control inputs for h = 0.05 and h = 0.075

Figure 7.21 shows step responses for the closed-loop systems that comprise a con-
troller C2 obtained with the local digital redesign of the full-order and the low-order
controllers C2 (s) for h ≤ 0.05 s. Disturbance responses are shown in Figs. 7.22
and 7.23. The disturbance is a unit step in the control input channel that is non-zero
within the time interval [0.1, 0.7], in units of seconds. The reference acceleration
input signal is set to zero.
Figs. 7.24 and 7.25 show the poles and zeros of controllers C2 in the γ plane.
Controllers C2 are obtained with HPIM for various values of h. A circle represents
a zero. Symbol x is a pole.
7.2 H-infinity Control and Plant Input Mapping 151

4.5

4 Continuous-time
x 0.0003
3.5
0.001
3
0.01
Body rate

2.5
0.015
2 0.05
1.5
1

0.5

-0.5
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35
Time

Fig. 7.15 Pursuer body rate with local digital redesign of outer-loop controller with Tustin’s method

4.5

4 Continuous-time
3.5 x 0.0003
3 0.001
0.01
Body rate

2.5
0.015
2
0.05
1.5

0.5

-0.5
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4
Time

Fig. 7.16 Pursuer body rates with local digital redesign of outer-loop controller with ZOH
equivalence

7.2.7 Analysis

We make a few observations.


Observation 1 The dual-rate discrete-time closed-loop system obtained with the
PIM conversion of the reduced-order H∞ outer-loop controller is stable over a wider
range of control update and sampling periods than that resulting from a local dig-
ital redesign. For instance, at approximately h = 0.15 s, the closed-loop system
becomes unstable with the matched pole-zero (MPZ) conversion of the H∞ outer-
loop controller, whereas the closed-loop system obtained with HPIM remains stable
152 7 Digital Redesign of Autopilots

4.5

4 Continuous-time
3.5 x 0.0003
0.001
3
0.01
Body rate

2.5
0.015
2
0.05
1.5
+ 0.1
1
0.5

-0.5
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4
Time

Fig. 7.17 Pursuer body rates with local digital redesign of outer-loop controller with MPZ method

3.5 Continuous-time
x 0.0003
3 0.001
2.5 0.01
Body rate

0.015
2 0.05
0.1
1.5
0.25
1

0.5

0
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
Time

Fig. 7.18 Pursuer body rates with HPIM

for all the control update and sampling periods tested, namely from h = 0.0003 to
h = 0.25, in units of seconds.
Observation 2 Outer-loop controllers obtained with HPIM and the local digital
redesign methods simulated in this chapter under the effect of a step accelera-
tion command result in pursuer accelerations approaching those obtained with the
continuous-time autopilot as we shorten period h. Recall that the inner-loop con-
troller is implemented at the fast rate, and is obtained with a local digital redesign
of the continuous-time inner-loop controller. The accelerations of the pursuer are
7.2 H-infinity Control and Plant Input Mapping 153

1.2

1 8-bit word

0.8

0.6 Continuous-time
Acceleration

0.0003
0.4
0.1
0.2 x Fraction length 1

0
+ Fraction length 2
Fraction length 4
-0.2 Fraction length 8

-0.4
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45
Time

Fig. 7.19 Step responses obtained with a quantized acceleration error signal of 8 bits

1
16-bit word

0.5 Continuous-time
Acceleration

0.0003
0.1
x Fraction length 1
0
+ Fraction length 2
Fraction length 4
Fraction length 8

-0.5
0 0.1 0.2 0.3 0.4 0.5
Time

Fig. 7.20 Step responses obtained with a quantized acceleration error signal of 16 bits

shown in Figs. 7.9, 7.10, 7.11 7.12, 7.19, 7.20, and 7.21. The control inputs, the
body rates, and the disturbance responses exhibit the uniform-in-time convergence
as shown in Figs. 7.13, 7.14, 7.15, 7.16, 7.17, 7.18, 7.22, and 7.23.
Observation 3 Local digital redesign of the full-order H∞ outer-loop controller
results in a controller of the same order, namely sixth order. Local digital redesign of
the reduced-order H∞ outer-loop controller gives a first-order controller, essentially
a PI controller. The HPIM outer-loop controller is of second-order. Fig. 7.21 shows
the accelerations obtained with the three local digital redesign methods for a period
h ≤ 0.05 s. Digital redesign done on either the full-order or the reduced-order
154 7 Digital Redesign of Autopilots

Full-order MPZ at h = 0.05


1.4

1.2

1
Acceleration

0.8

0.6

0.4 Full-order & reduced order


ZOH equivalence at h = 0.05
0.2
Continuous-time
0 Full-order and
reduced-order
-0.2
controllers
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45
Time

Fig. 7.21 Accelerations obtained with the local digital redesign of the full-order and the reduced-
order outer-loop controllers

0.2

0.15

0.1

0.05

0
Acceleration

-0.05

-0.1

-0.15
x 0.0003 Continuous-time
0.05 Tustin
-0.2
0.1 ZOH equivalence
-0.25 MPZ

0 0.1 0.2 0.3 0.4 0.5


Time

Fig. 7.22 Disturbance responses with local digital redesign methods

controller ends up in highly oscillatory responses as the value of the implementation


period h is increased. As h is reduced, the accelerations approach that obtained with
the continuous-time autopilot. Overall, diminishing the outer-loop controller order
is not the main factor in the deterioration of performance. Augmenting h is the major
cause for poor performance.
Observation 4 The notion of convergence of the discrete-time autopilots to their
continuous-time counterpart can be tackled from several angles. Observation 2 is
7.2 H-infinity Control and Plant Input Mapping 155

0.2

0.15

0.1

0.05
Acceleration

-0.05 x 0.0003
0.001
-0.1
0.01
-0.15 0.015
Continuous-time
-0.2 0.05
HPIM
-0.25 0.1
0.25
0 0.1 0.2 0.3 0.4 0.5
Time

Fig. 7.23 Disturbance responses with HPIM

0.01
0.008
Continuous-time zero
0.006
Continuous-time pole
0.004
Imaginary part

0.002
0

-0.002
-0.004 h = 0.001
h = 0.01
-0.006 h = 0.001

-0.008

-0.01
-1000 -900 -800 -700 -600 -500 -400 -300 -200 -100 0

Real part

Fig. 7.24 Location of poles and zeros of outer-loop controllers obtained with HPIM with respect
to update period over range [− 1010, 2]

a time-domain assessment. Studying the movement of poles and zeros with the
sampling or control update period is another take on convergence. Figs. 7.24 and
7.25 show the locations of poles and zeros of the outer-loop controllers, obtained
with HPIM, for a limited number of values of h. The poles and zeros are shown in the
complex γ plane. Recall that the continuous-time, reduced-order controller C2 (s)
given by Eq. (7.30) has a pole at origin and a zero at −200. The outer-loop controller
obtained with HPIM has its left-most pole and zero approach one another, indicating
a pole-zero cancellation, while its other pole approaches the origin and its other zero
156 7 Digital Redesign of Autopilots

0.01

0.008

0.006 Continuous-time pole


0.004
Imaginary part

0.002

-0.002

-0.004 h = 0.01 h = 0.001


-0.006 h = 0.1
h = 0.1
-0.008

-0.01
-10 -8 -6 -4 -2 0
Real part

Fig. 7.25 Poles and zeros of outer-loop controllers obtained with HPIM over range [− 11, 2].

approaches −200. This pole-zero movement of the discrete-time controller expressed


in the complex γ plane also takes place with the poles and zeros of the inner-loop
controller.
Observation 5 For the HPIM feedback system, we simulate the quantization error
resulting from an analog-to-digital conversion of the acceleration error signal. The
results are shown in Figs. 7.19 and 7.20 for two signed, fixed-point wordlength,
namely 8 and 16 bits, with fraction length of 1, 2, 4 and 8 bits, and for two extreme
values of h, h = 0.1 s and h = 0.0003 s. At each time step, the value of the
signal is rounded to the nearest finite wordlength value. The outer-loop controller is
implemented with the δ operator in the direct form II structure shown in Fig. 7.8. For
the 8-bit word, the step response has a short rise time with a small fraction length,
especially for h = 0.0003 in units of seconds. The difference among the various
fraction lengths is more pronounced in the early part of the response. As expected,
the responses are worst with the long period of h = 0.1 s than with the shorter of
the two periods tested. With 16 bits, the difference between responses obtained with
h = 0.0003 s and h = 0.1 s is more evident. For the short period h = 0.0003 and
the 16-bit word, an acceleration error signal with a fraction length of either 1, 2, 4 or
8 bits does not significantly change the response. For the long period h = 0.1 s and
words of 16 bits, a fraction of unity length results in a shorter rise time although it has
a longer settling time than that obtained with each of the other three fraction lengths.
Observation 6 In the design of HPIM, we assume ideal actuator dynamics and no
saturation. However, the model of the linear autopilot and pursuer includes, at the
control input channel, a saturator and the second-order dynamics of an actuator. The
simulated HPIM feedback system is stable for all values of T and h employed in
7.3 Optimal Closed-loop Digital Redesign 157

+ + a(s)
H C1(s) S H
- δp(s)
-
H S
q(s)
S C2(s) H S
δp(s)

Fig. 7.26 Fast discrete-time control system

the simulations. The properties of tracking and disturbance rejection are satisfactory
despite a design performed with unmodeled dynamics.

7.3 Optimal Closed-loop Digital Redesign

We design a discrete-time autopilot by means of an optimal closed-loop digital re-


design (OCDR) of a continuous-time autopilot. The discrete-time control system is
obtained for a linearized model of the aerial vehicle dynamics at a single operating
point. The digital redesign follows the procedure presented in Sect. 5.3.

7.3.1 Design Process

The design begins with a continuous-time autopilot in closed-loop with pursuer


dynamics. The feedback system is shown in Fig. 7.5. We place a ZOH H in front of
each continuous-time subsystem, and add an ideal sampler S at the output of each
subsystem. Hold H and sampler S are synchronized at the fast update rate of 1/T .
We obtain a fast, single-rate discrete-time closed-loop system shown in Fig. 7.26.
Having the fast discrete-time closed-loop system, we construct the dual-rate gen-
eralized plant model shown in Fig. 7.27. The real gain ρ is a weight on the difference
in plant input signals or fin deflections δp . We assume that the model of Fig. 7.27 is
connected to the discrete-time controller to be synthesized. The controller, expressed
as transfer function C61 (z, h), has input y(k, h) and output u(k, h). The controller is
calculated such that the induced norm from reference input r(k, h) to the vector of
measured outputs, z1 (k, h) and z2 (k, h), is minimized in a discrete-time H2 sense
as discussed in Sect. 5.3. The discrete-time autopilot also comprises the fast, inner-
loop controller C2 (z, T ), which is actually part of the generalized plant illustrated in
Fig. 7.27. Block L is the discrete-time lifting (DTL) operation. Block L−1 is inverse
DTL. The model shown in Fig. 7.27 employs dual-rate generalized hold and sampler,
respectively Hh,T and ST ,h .
158 7 Digital Redesign of Autopilots

L
r(k,h) + +
Hh,T C1 (z,T) G1(z,T)
- -

C2 (z,T) G2(z,T)

L
u(k,h)
+
L L-1
Hh,T -
+
+ - y(k,h) ST,h
G1(z,T) L L-1 ST,h
-
z1(k,h)
C2(z,T) G2(z,T)

-
L
+
z2(k,h)
L-1 ST,h ρ

Fig. 7.27 Dual-rate generalized plant model

7.3.2 Plant Model

The airborne platform is modeled as transfer functions G1 (s) = a(s)/δp (s) and
G2 (s) = q(s)/δp (s). The transfer functions are calculated from Eq. (7.25), using
slightly perturbed numerical values, to yield the generic nonminimum phase, stable
dynamic model

a(s) 0.2s 2 − 394


= 2 , (7.34)
δp (s) s + 1.2s + 81

q(s) −127s − 127


= 2 . (7.35)
δp (s) s + 1.2s + 81

7.3.3 Controllers

The continuous-time autopilot has the structure shown in Fig. 7.28. The gains are
K1 = 1.12, K2 = −0.4, Ki = 20, and Kp = 3. For the OCDR process, we assume
that sensors and actuators are unity gains.
7.3 Optimal Closed-loop Digital Redesign 159

K1

+ + Ki + a(s)
Kp K2
- - s
- δp(s)

q(s)
δp(s)

Fig. 7.28 Three-loop autopilot

K1
Outer-loop controller

+ Ki + a(s)
Kp K2
- s
- δp(s)

Ki
s q(s)
+ δp(s)
K2
+
Inner-loop controller

Fig. 7.29 Restructured autopilot

In the OCDR process, we restructure the three-loop autopilot of Fig. 7.28 to the
two-loop autopilot of Fig. 7.29, and redesign the outer-loop controller assuming that
the plant is composed of the inner-loop controller and transfer functions a(s)/δp (s)
and q(s)/δp (s). We employ the function dh2lqg in Matlab® .
The block diagram of the feedback system obtained with OCDR is shown in
Fig. 7.30. Subsystem 1/s of the inner-loop controller is approximated by means of
the backward difference method. The inner-loop controller operates at the fast rate
of 1/T (in units of seconds) whereas the outer-loop controller runs at the slow rate
of 1/ h s.
Numerical expressions for the outer-loop OCDR controller are given in Eqs. (7.36)
and (7.37) for two implementation conditions. Eq. (7.36) relates to an implementation
with h = 0.048 and T = 0.0012. Eq. (7.37) is for an implementation with h = 0.008
and T = 0.0002. The expressions for the outer-loop controllers obtained with the
local digital redesign methods are given in Table 7.7.

C̃1 (z, h) =
−1.66z7 + 4.78z6 − 5.38z5 + 3.17z4 − 1.14z3 + 0.26z2 − 0.03z + 0.002
z8 − 2.86z7 + 2.57z6 − 0.47z5 − 0.38z4 + 0.19z3 − 0.052z2 + 0.0037z − 0.00028
(7.36)
160 7 Digital Redesign of Autopilots

+ ~ u1 + a(s)
C1(z,h) Hh,T HT
- δp(s)
-

u2
Ki Tz
(z-1) q(s)
+ ST
δp(s)
K2
+

Sh

Fig. 7.30 Block digram of discrete-time system

C̃1 (z, h) =
−0.28z7 + 1.51z6 − 3.36z5 + 4.04z4 − 2.78z3 + 1.06z2 − 0.19z + 0.0098
z8 − 6.14z7 + 16.15z6 − 23.59z5 + 20.68z4 − 10.87z3 + 3.17z2 − 0.39z − 0.0022
(7.37)

7.3.4 Simulations and Analysis

The block diagram of the simulated feedback system is shown in Fig. 7.30. The
autopilots operate at inner-loop rate 1/T and outer-loop rate 1/ h, with h = 40T .
The dual-rate generalized hold Hh,T is the DT ZOH. We subject the autopilots and
linear plant dynamics to a unit step input. In the simulations, we include a saturator
with limits set to ±π radians at the control input, and an actuator with dynamics given
by Eq. (7.31). For the slow-rate implementation, we include low-pass filters with a
corner frequency of 8 rad/sec prior to the sampling operation. The main simulation
results are presented in Figs. 7.31 to 7.36.
We make a number of observations on the simulation results.

Observation 7 For relatively short outer-loop update periods, a local digital redesign
of the controllers results in satisfactory performance. Local digital redesign results
in low-order discrete-time controllers, which is not the case with OCDR. Therefore,
the evidence favors the local digital redesign over the OCDR for implementations at
relatively short outer-loop update periods. For the relatively long outer-loop update
periods, however, OCDR results in a feedback system with step responses in pitch
rate and in acceleration which are less oscillatory than those obtained with feedback
systems whose controllers are calculated with local digital redesign methods as evi-
denced by Figs. 7.31 to 7.34. With OCDR, the control input exhibits a faster settling
time and fewer transients, albeit a greater overshoot, than those characteristics of
control inputs of feedback systems obtained with the local digital redesign methods,
as seen on Figs. 7.35 and 7.36.
7.3 Optimal Closed-loop Digital Redesign 161

1.8 Continuous-time
1.6 Discrete-time
1.4
1.2
Acceleration

1
0.8
0.6 x OCDR
0.4 o MPZ
BDM
0.2
FDM
0
Tustin
-0.2
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
Time

Fig. 7.31 Accelerations obtained with discrete-time implementations at h = 0.048 s

Continuous-time
0.8
Discrete-time
Acceleration

0.6

x OCDR
0.4
o MPZ
BDM
0.2
FDM
0 Tustin

0 0.2 0.4 0.6 0.8 1


Time

Fig. 7.32 Accelerations for discrete-time implementations at h = 0.008 s

Observation 8 Convergence takes place with local digital redesign, but not nec-
essarily with OCDR. We observe a time-domain convergence, as periods of
implementation h and T approach zero, in the plots of acceleration, pitch rate, and
actuator output. Convergence in the transfer functions also occurs. With reference
to Fig. 7.30, we can write the transfer function in the γ operator of the inner-loop
controller from input q(k, T ) to output u2 (k, T ) as
u2 (γ , T ) K 2 Ki
= K2 (1 + T Ki ) +
q(γ , T ) γ
162 7 Digital Redesign of Autopilots

4 Continuous-time
Discrete-time
x OCDR
3 o MPZ
BDM
FDM
2
Pitch rate

Tustin

-1

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8


Time

Fig. 7.33 Pitch rates for discrete-time implementations at h = 0.048 s

3
Continuous-time x OCDR
2.5 Discrete-time o MPZ
BDM
2
FDM
Pitch rate

1.5 Tustin

0.5

-0.5

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8


Time

Fig. 7.34 Pitch rates for implementations at h = 0.008 s

and then the limit as T goes to zero is


u2 (γ , T ) K2 K i
lim = K2 + lim
T →0 q(γ , T ) T →0 γ
and the convergence is obvious.
The outer-loop controller transfer functions obtained with the local digital redesign
methods, namely FDM, BDM, MPZ and Tustin, converge to Kp Ki K2 /s when taking
the limit as h approaches zero and writing γ in terms of the complex variable s as
γ = (esh − 1)/ h.
7.3 Optimal Closed-loop Digital Redesign 163

0.8
Continuous-time x OCDR
0.6 Discrete-time o MPZ
0.4 BDM
0.2 FDM
Control input

0 Tustin

-0.2

-0.4

-0.6

-0.8

-1

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1


Time

Fig. 7.35 Actuator outputs for discrete-time implementations at h = 0.048 s

0.1

Continuous-time
0 Discrete-time

-0.1
Control input

-0.2

x OCDR
-0.3 o MPZ
BDM
-0.4 FDM
Tustin
0 0.1 0.2 0.3 0.4 0.5 0.6
Time

Fig. 7.36 Actuator outputs obtained with implementations at h = 0.008 s

Table 7.7 Outer-loop


controllers obtained h
with local digital redesign Forward difference method (FDM) C̃1 (z, h) = Kp Ki K2
z−1
methods hz
Backward difference method (BDM) C̃1 (z, h) = Kp Ki K2
z−1
h
MPZ C̃1 (z, h) = Kp Ki K2
z−1
h
Tustin C̃1 (z, h) = Kp Ki K2 z+1
2 z−1
References

1. Anderson BDO (1993) Controller design: moving from theory to practice. IEEE Contr Syst
Mag 13(4):16–25
2. Apkarian P, Adams RJ (1998) Advanced gain-scheduling techniques for uncertain systems.
IEEE Trans Contr Syst Technol 6(1):21–32
3. Astrom KJ, Bernhardsson BM (2002) Comparison of riemann and lebesgue sampling for first
order stochastic systems. In Proceedings of the 41st IEEE Conference on Decision and Control,
Las Vegas, Nevada
4. Astrom KJ, Wittenmark B (1997) Computer-controlled systems: theory and design, 3rd ed.
Prentice Hall
5. Atkinson KE (1989) An introduction to numerical analysis. Wiley
6. Pathirana PN, Savkin AV, Faruqi FA (2003) Problem of precision missile guidance: Lqr and
H-infinity control frameworks. IEEE Trans Aerosp Electron Syst 39(3):901–910
7. Francis BA, Bamieh B, Pearson JB, Tannenbaum A (1991) A lifting technique for linear
periodic systems with applications to sampled-data control. Syst Contr Lett 17:79–88
8. Wasle E, Hofmann-Wellenhof B, Lichtenegger H (2008) GNSS global navigation satellite
systems. Springer
9. Barnett S (1983) Polynomials and linear control systems. Marcel Dekker, Inc., New York
10. Bates D, Postlethwaite I (2002) Robust multivariable control of aerospace systems. Delft
University Press
11. Blakelock JH (1991) Automatic control of aircraft and missiles, 2nd ed. Wiley
12. Kim BS, Lee JG, Han HS (1998) Biased PNG law for impact with angular constraint. IEEE
Trans Aerosp Electron Syst 34(1):277–288
13. Hori N, Rabbath CA, Léchevin N (2004) Convergence of sampled-data models in digital
redesign. IEEE Trans Autom Contr 49(5):850–855
14. Léchevin N, Rabbath CA, Hori N (2004) Optimal dual-rate digital redesign with application
to missile control. AIAA J Guid, Contr Dyn 27(6):1083–1087
15. Calise AJ, Rysdyk RT (1998) Nonlinear adaptive flight control using neural networks. IEEE
Contr Syst Mag 18(6)
16. Chen T, Francis B (1995) Optimal sampled-data control systems. Springer-Verlag, London
17. Comeau AR (1997) Higher order discrete-time models with applications to multi-rate control.
PhD thesis, McGill University, Montreal, Canada
18. Comer D (2006) Internetworking with TCP/IP: Principles, protocols, and architecture. Prentice
Hall
19. Cottrel RG (1971) Optimal intercept guidance for short-range tactical missiles. AIAA J 9:
1414–1415
20. Mullhaupt P, Jiang Z-P, Buccieri D, Perritaz D, Bonvin D (2009) Velocity-scheduling control
for a unicycle mobile robot: Theory and experiments. IEEE Trans Robot 25(2):451–458
21. Duc G, Farret D, Harcaut JP (2002) Multirate LPV synthesis: a loop-shaping approach for
missile control. In Proceedings of the American Control Conference, pages 4092–4097

C. A. Rabbath, N. Léchevin, Discrete-Time Control System Design with Applications, 165


DOI 10.1007/978-1-4614-9290-0, © Springer Science+Business Media New York 2014
166 References

22. Dorf RC, Bishop RH (2008) Modern control systems. Prentice-Hall


23. Durrant-Whyte H, Bailey T (2006) Simultaneous localization and mapping (SLAM): part i the
essential algorithms. Robotics & Automation Mag 13(2):99110
24. Norsett SP, Hairer E, Wanner G (1993) Solving ordinary differential equations I: nonstiff
problems. Springer.
25. Ollero A, Cuesta F (20005) Intelligent mobile robot navigation. Springer
26. Feron E (2010) From control systems to control software. IEEE Contr Syst Mag 30(6):50–71
27. De Luca A, Oriolo G, Vendittelli M (2002) WMR control via dynamic feedback lineariza-
tion: design, implementation, and experimental validation. IEEE Trans Contr Sys Technol
10(6):835–852
28. Powell JD, Franklin GF, Emami-Naeini A (2010) Feedback control of dynamic systems, 6th
edn. Prentice Hall
29. Powell JD, Franklin GF, Workman ML (1990) Digital control of dynamic systems, 2nd edn.
Addison-Wesley, Reading
30. Golub GH, Van Loan CF (1996) Matrix computation. The Johns Hopkins University Press,
Baltimore
31. Goodwin GC, Middleton RH (1990) Digital control and estimation—a unified approach.
prentice Hall, Englewood Cliffs
32. Gray MA (2011) Introduction to the simulation of dynamics using Simulink® . CRC Press
33. De Santis C, Labiod H, Afifi H (2007) Wi-Fi, Bluetooth, Zigbee and WiMAX. Springer
34. Holder EJ, Sylvester VB (1990) An analysis of modern versus classical homing guidance. IEEE
Trans Aerosp Electron Syst 26(4):599–606
35. Hori N, Markazi AHD (1988) A new approach to the design of digital model reference control
systems. JSME Int J 38(4):712–718
36. Hori N, Markazi AHD (1992) A new approach to digital control system design. In Proceedings
of the Motion and Vibration International Conference (MOVIC). Yokohama, Japan, pp 918–
923
37. Ross KW, Kurose JF (2009) Computer networking: a top-down approach. Addison Wesley
38. Jackson PB (2010) Overview of missile flight control systems. Johns Hopkins APL Technical
Digest 29(1):9–24
39. Evers JH, Cloutier JR, Feeley JJ (1989) Assessment of air-to-air missile guidance and control
technology. IEEE Control Systems Magazine, pp 27–34
40. Rudolph J, Lowis JV, Woittennek F (2000) Discrete-time flatness-based control of an electro-
magnetically levitated rotating shaft. In 14th International Symposium of Mathematical Theory
of Networks and Systems, Perpignan, France
41. Kabamba PT (1987) Control of linear systems using generalized sampled-data hold functions.
IEEE Trans Autom Contr 32(9):772–783
42. Katz P (1981) Digital control using microprocessors. Prentice Hall, Englewood Cliffs
43. Keller JP, Anderson BDO (1992) A new approach to the discretization of continuous-time
controllers. IEEE Trans Autom Contr 37:214–233
44. Khalil HK (2002) Nonlinear systems, 3rd ed. Prentice Hall, Upper Saddle River
45. Krishnamurthy V, Seshadri V (1978) Model reduction using the routh stability criterion. IEEE
Trans Autom Contr 23(4):729–731
46. Kr`‘oger T (2010) On-line trajectory generation in robotic systems: basic concepts for
instantaneous reactions to unforeseen (sensor) events. Springer
47. Kuo BC (1992) Digital control systems. Saunders College Publishing, Philadelphia
48. Lancaster P, Rodman L (1995) Algebraic riccati equations. Oxford Science Publications
49. Léchevin N, Rabbath CA (2004) Lyapunov-based nonlinear missile guidance. J Guid Contr
Dyn 27(6):1096–1102
50. Léchevin N, Rabbath CA (2006) Sampled-data control of a class of nonlinear flat systems with
application to unicycle trajectory tracking. J Dyn Syst Meas Contr 128:722–728
51. Lin C-F (1991) Modern navigation, guidance, and control processing—volume II. Prentice-
Hall
References 167

52. Martin Ph, Fliess M, Lévine J, Rouchon P (1995) Flatness and defect of nonlinear systems:
introductory theory and application. Int J Contr 61(6):1327–1361
53. Martin Ph, Fliess M, Lévine J, Rouchon P (1999) A lie-bäcklund approach to equivalence and
flatness of nonlinear systems. IEEE Trans Autom Contr 44(5):922–937
54. Markazi AHD, Hori N (1992) A new method with guaranteed stability for discretization
of continuous-time control systems. In Proceedings of the American Control Conference,
pp. 1397–1402, Chicago, Illinois
55. Middleton R, Xie J (1993) Non-pathological sampling for high order generalised sampled-data
hold functions. In Proceedings of the 1993 American Control Conference, pp. 1498–1502,
Seattle, USA
56. Moler C, Van Loan C (2003) Nineteen dubious ways to compute the exponential of a matrix,
twenty-five years later. SIAM Review 45(1):1–46
57. Mordell LJ (1969) Diophantine equations. Academic Press
58. Cormier R, Hori N, Kanai K (1992) On matched pole-zero discrete-time models. IEE
Proceedings-D 139(3):273–278
59. Mori T, Hori N, Nikiforuk PN (1992) A new perspective for discrete-time models of a
continuous-time system. IEEE Trans Autom Contr 37(7):1013–1017
60. Mori T, Hori N, Nikiforuk PN (1994) Discrete-time models of continuous-time systems. Contr
Dyn Syst 66:1–45
61. Chen T, Rafee N, Malik OP (1997) A technique for optimal digital redesign of analog
controllers. IEEE Trans Contr Syst Technol 5(1):89–99
62. Nesic D, Teel AR (2004) A framework for stabilization of nonlinear sampled-data systems
based on their approximate discrete-time models. IEEE Trans Autom Contr 49(7):1103–1122
63. Ogata K (1995) Discrete-time Control Systems, 2nd ed. Prentice Hall
64. Poolla K, Khargonekar P, Tannenbaum A (1985) Robust control of linear time-invariant plants
using periodic compensation. IEEE Trans Autom Contr 30(11):1088–1096
65. Proakis JG, Manolakis DG (1992) Digital signal processing—principles, algorithms, and
applications. Macmillan Publishing Co., New York
66. Proakis JG, Manolakis DG (2007) Digital signal processing. Pearson Prentice Hall
67. Weiss H, Atir R, Hexner G, Shima T (2010 May–June ) Target maneuver adaptive guidance
law for a bounded acceleration missile. J Guid Contr Dyn 33(3):695–706
68. Rabbath CA, Hori N (2003) Reduced-order pim methods for digital redesign. IEE Proc Contr
Theory Appl 150(4):335–346
69. Rabbath CA (1999) A characterization and performance evaluation of digitally redesigned
control systems. PhD thesis, McGill University, Montreal, Canada
70. Rabbath CA, Léchevin N (2010) Safety and reliability in cooperating unmanned aerial systems.
World Scientific Publishing
71. Ren W, Beard RW (2004) Trajectory tracking for unmanned air vehicles with velocity and
heading rate constraints. IEEE Trans Contr Sys Technol 12(5):706–716
72. Rugh WJ (1996) Linear system theory. Prentice Hall
73. Rugh WJ, Shamma JS (2000) Research on gain scheduling. Automatica 36:1401–1425
74. Feron E, Boyd S, Ghaoui LEl, Balakrishnan V (1994) Linear matrix inequalities in system and
control theory. SIAM
75. Safonov MG, Chiang RY (1989) A schur method for balanced-truncation model reduction.
IEEE Trans Autom Contr 34:729–733
76. Shore D, Bodson M (2005) Flight testing of a reconfigurable control system on an unmanned
aircraft. J Guid Contr Dyn 28(4):698–707
77. Siouris GM (2004) Missile guidance and control systems. Springer
78. Gupta MM, Mori T, Nikiforuk PN, Hori N (1989) A class of discrete-time models for a
continuous-time system. IEE Proceedings-D 136(2):79–83
79. Beatle GO, Hartley TT, Chicatelli SP (1994) Digital simulation of dynamic systems – a control
theory approach. Prentice Hall, Englewood Cliffs
80. Beard R, Ren W, Sun J-S, McLain T (2007) Experimental validation of an autonomous control
system on a mobile robot platform. IET Contr Theory Appl 6:1621–1629
168 References

81. Whitbeck RF, Hofmann LG (1978) Digital control law synthesis in the w’ domain. J Guid
Contr 1(5):319–326
82. Yuan L (1948) Homing and navigational courses of automatic target-seeking devices. J Appl
Phys 19(12):1122–1128
83. Zarchan P (2012) Tactical and strategic missile guidance. Number 219 in Progress in
Astronautics and Aeronautics Series. AIAA
84. Zhou K, Doyle JC (1998) Essentials of robust control. Prentice Hall
Index

A Discretization, 1–3, 31, 32, 40, 44–48, 51, 58,


Acceleration autopilot, 101, 135, 136, 148 68, 80–85, 89, 96, 102, 103, 140, 147
Affine-in-the-input systems, 49 Affine-in-the-input systems, 49
Airborne pursuer, 7, 136, 144, 145 Closed-loop, 91–93
Analog-to-digital converter, 4, 6, 156 definition of, 31
Autopilots, 3, 9, 11, 122, 135–162 methods and models, 53
Non linear systems, 48
C Open-loop, 94
Closed-loop stability, 80, 81, 83, 88–91, 98, Disturbance rejection, 62, 84, 136, 157
126, 136 Dual-rate, 10, 19, 26–29, 69–71, 76, 79, 85–87,
Closed-loop systems, 7, 52, 54, 62, 79, 81–89, 101–104, 128, 139–142, 147, 151, 157,
91, 92, 95, 96, 98, 100, 105, 108, 122, 160
125–130, 140, 143, 147, 148, 150, 157 Dual-rate generalized holds, 26–29, 70
Commercial-off-the-shelf, 3, 7 Dual-rate generalized plant model, 85, 157
Computing tasks, 4 Dual-rate generalized samplers, 28
Continuous-time signal, 4, 6, 7, 13, 18, 21, 50, Dual-rate sampled-data models, 69–77
52, 54, 79, 119
Continuous-time system, 3, 4, 7, 15, 21, 23, E
31–34, 37–44, 48–59, 61, 66, 68, 77, 81, Equivalence, 31, 34, 40–43, 46–49, 51, 58, 68,
88, 89, 97, 101, 113, 123, 125, 139 70, 81, 84, 94, 140, 146
Convergence in time, 54–56, 107
Convergence in transfer function, 56, 100
F
D Fast discretization, 84
Delta operator, 16–18, 20, 34 Feedback linearization, 3, 7, 8, 105, 116,
Digital control, 3, 4, 6, 7, 14–16, 23, 24, 31, 51, 120–123
54, 91, 119 Flatness, 105, 108
Digital-to-analog converter, 4, 120 Flatness-based averaging control system, 105,
Diophantine equation, 84, 85, 95, 143 110–134
Direct form II structure, 143, 149, 156
Discrete-time control system design, 87 G
Discrete-time H2 optimal control, 86 Gain scheduling, 48, 136, 137
Discrete-time models, 7, 52–61, 77, 100 Gamma transform, 21
Discrete-time operators, 16, 17 Generalized plant input mapping, 97, 99
Discrete-time signal, 4, 6, 13–28, 33, 49, 50, Global digital redesign, 1, 2, 79–104, 135, 146
54, 70, 114, 119, 140 Guidance laws, 10, 137
Discrete-time system, 4, 7, 10, 15, 17–21, 23,
25, 31–34, 37, 40–48, 51–59, 64, 66, 81, H
83, 85, 96, 102, 139–141, 160 H-infinity control, 137–155

C. A. Rabbath, N. Léchevin, Discrete-Time Control System Design with Applications, 169


DOI 10.1007/978-1-4614-9290-0, © Springer Science+Business Media New York 2014
170 Index

Hold equivalence, 31, 34, 40–49, 51, 58, 68, Proportional navigation guidance, 9, 137
81, 84, 85, 94, 96, 102, 140, 141 Pursuer, 7, 9, 135–137, 144, 145, 152, 153
Holds, 13, 21, 23, 26–29, 31, 42–47, 50, 51,
58, 69, 84, 86, 91, 108, 128–131 Q
Quantization error, 156
I
Interpolation function, 108–110 R
Intersample behavior, 113 Realization, 21, 56–58, 66–69, 77, 84, 96, 97,
Iterative rule, 119 146
Reference-input tracking, 84, 85, 89
L Reference-to-plant-input transfer function, 84
Lifting, 3, 23, 24,
Discrete-time lifting, 24, 26, 73, 74, 103, S
142, 157 Samplers, 26–29, 45, 51, 69, 70, 84, 86, 126,
Continuous-time lifting, 24, 59, 73, 107, 147
108 Sequence, 13–16, 24, 32, 77, 81
Linear control, 105, 116, 120–123, 136 Sequencing, 4, 5
Linear systems, 3, 23 Shift operator, 16–18, 33
Local digital redesign, 1, 79, 80, 91, 126, 146, Single-rate discrete-time models, 54–59
148, 150–153, 159, 160 Single-rate sampled-data models, 61–67
Stability, 6, 39, 40, 62, 76, 80–84, 89, 90, 95,
M 98, 99, 101, 113, 126, 136
Matched poles and zeros, 31, 44, 48 State estimator, 32, 105, 107, 110, 111, 113,
Multivariable systems, 45, 95 115, 127

N T
Nonlinear differentially flat system, 105, 106 Target state, 108, 115–118
Nonlinear systems, 51, 105 Transfer functions, 3, 15, 18–21, 33, 34, 44–48,
Numerical derivative, 32, 34, 49 56, 57, 62, 64, 67, 68, 70, 79, 81, 84, 85,
Numerical integration, 31–40, 43, 49, 81, 110, 88, 90, 92–100, 102, 136–140, 142, 143,
119, 146 157–162
Two-loop feedback control, 101, 103
O
Optimal closed-loop digital redesign, 84, 85, W
87, 89, 91, 157–163 Wheeled mobile robot, 3, 7, 105, 125
Order reduction, 3, 79, 88, 146 Wheeled robot, 7, 121, 122
Wheel velocity control, 7, 120, 125
P W-plane, 89, 101
Pathological sampling, 31, 32
PID, 10, 136 Z
Plant input mapping, 91–99, 137–155 Z transform, 18, 19, 47, 70

You might also like