Fault Tolerant Control of Large Flexible Space Structures ...€¦ · program: Ernest Ho, Christina...
Transcript of Fault Tolerant Control of Large Flexible Space Structures ...€¦ · program: Ernest Ho, Christina...
Fault Tolerant Control of Large Flexible SpaceStructures under Sensor and Actuator Failures
by
Samuel Tien-Chieh Huang
A thesis submitted in conformity with the requirementsfor the degree of Doctor of Philosophy
Graduate Department of Electrical & Computer EngineeringUniversity of Toronto
Copyright c© 2013 by Samuel Tien-Chieh Huang
Abstract
Fault Tolerant Control of Large Flexible Space Structures under Sensor and Actuator
Failures
Samuel Tien-Chieh Huang
Doctor of Philosophy
Graduate Department of Electrical & Computer Engineering
University of Toronto
2013
In this thesis, we study fault tolerant control (FTC) for the decentralized robust ser-
vomechanism problem (DRSP) of a colocated large flexible space structure (LFSS) under
sensor and actuator failures (SAF). The control objective is to devise a decentralized con-
troller that maintains the stability of the LFSS, tracks a constant reference for healthy
outputs, regulates against an unknown constant disturbance for healthy outputs, and is ro-
bust against parametric uncertainties, so that “spillover effects” do not occur. Two FTC
frameworks are considered: An active FTC framework that assumes SAF are known, and
a passive FTC framework for which SAF are unknown. The active FTC framework ex-
tends existing work on DRSP of a nominal LFSS, and applies a PID controller that has
fault-dependent adjustments. Necessary and sufficient conditions for a solution to exist
are determined, notably an easy-to-test rank condition. For the passive FTC framework,
a PD controller that stabilizes an LFSS under unknown SAF is found. Although perfect
tracking and regulation are not attained under the PD controller, by applying high gains,
the errors for healthy outputs can be reduced to any desired level. However, outputs with
failed sensors and healthy actuators can reach undesirably high magnitude under high
gains. To improve performance under low gains, insights on steady-state outputs are
applied to develop a feed-forward control that has good performance in tracking, but not
regulation. Further analysis on the PD controller reveals a method to diagnose SAF using
ii
steady-state outputs. As a result, the PD controller and PID controller are found to have
complementary advantages, leading to an 3-stage integrated FTC procedure. First, the
PD controller can stabilize the LFSS under unknown SAF (passive FTC). Next, fault
diagnosis is performed while the LFSS is stabilized. Finally, a reconfigured PID con-
troller applying diagnosed SAF enables healthy outputs to meet control objectives (active
FTC). Three examples, including a benchmark space platform with 200 states obtained
by finite-element analysis, are used to illustrate the results throughout this thesis.
iii
To my parents
iv
Acknowledgements
First and foremost, I’d like to express my gratitude to my thesis supervisors: Prof.
Edward Davison and Prof. Raymond Kwong. Your mentorship, encouragement, and
inspiration made this thesis possible. I truly appreciate your gentle and skillful guidance;
you gave me much freedom to explore diverse ideas, and yet got me back on track when
focus is needed most. I look forward to continuing our collaboration in the future.
I’d like to extend my gratitude to the members of my supervision and examination
committee: Prof. Bruce Francis, Prof. Lacra Pavel, and Prof. Manfredi Maggiore, and
to my external examiner: Prof. Jin Jiang. Your suggestions have greatly improved the
quality of this thesis, and your challenges made my final oral examination engaging and
memorable. I also thank Prof. Peter Lehn and Prof. Ron Hofmann for serving as the
committee chair in my departmental examination and final oral examination, respectively.
I’d like to thank Prof. Murray Wonham and Prof. Mireille Broucke in the Systems
Control Group for helping me develop the mathematical skill sets crucial to my research.
I am grateful for the generous financial support from the Edward S. Roger Sr. Depart-
ment of Electrical & Computer Engineering throughout my graduate study, and from the
Ontario Graduate Scholarship Program in my final year.
My experience as a graduate student would have been incomplete without the won-
derful people I’ve met. I’d like to thank my friends from ACM programming competition,
Engineering Science, Google Inc., Hart House Singers, physics colloquiums, the Systems
Control Group, and Varsity Fencing, for shared adventures and fond memories. In partic-
ular, I’d like to acknowledge my friends who are completing, or have completed a Ph.D.
program: Ernest Ho, Christina Holmes, Usheer Kanjee, Jason Kereluk, Mohamed Khairy,
Eric Kopp, Karla Kvaternik, Simon Lam, Andriy Mnih, Edoardo Serpelloni, Alexander
Smith, Jimmy Tsai, Zheng Wang, Claire Xu, and RenYuan Zhang. Thank you for your
kind comradery in this journey of discovery.
Special thanks to my long-time friends: Henry Seeto, for the untimely distractions
and timely words of wisdom, and MingYao Ding, for being an exemplary host and great
listener whenever I visit Silicon Valley.
Words can hardly express my gratitude to my parents. Thank you for bring me to
this world, your sacrifices, and your unwavering dedication to my upbringing. Last, but
not least, I’d like to thank my sister Teresa Su-Yang and my brother Curtis Su-Tsun, for
the advices, companionship, and laughter in the years past and the years to come.
v
Table of Contents
List of Tables x
List of Figures xi
List of Symbols xv
List of Acronyms and Abbreviations xix
1 Introduction 1
1.1 Definitions and Problem Statement . . . . . . . . . . . . . . . . . . . . . 2
1.1.1 Large Flexible Space Structure . . . . . . . . . . . . . . . . . . . 2
1.1.2 Decentralized Robust Servomechanism Problem . . . . . . . . . . 4
1.1.3 Fault Tolerant Control . . . . . . . . . . . . . . . . . . . . . . . . 5
1.1.4 Sensor and/or Actuator Failures . . . . . . . . . . . . . . . . . . . 7
1.1.5 Problem Statement . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.3 Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.4 Organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2 Background 18
2.1 Mathematical Notations . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.1.1 Colons in Logical Expressions . . . . . . . . . . . . . . . . . . . . 18
2.1.2 Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.1.3 Vectors and Matrices . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.1.4 Special Matrices . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.2 Large Flexible Space Structures (LFSS) . . . . . . . . . . . . . . . . . . . 22
2.2.1 The Colocated LFSS Model in Standard Form . . . . . . . . . . . 23
vi
2.2.2 The Linear Mechanical Model . . . . . . . . . . . . . . . . . . . . 27
2.2.3 Transformation to Modal Representation . . . . . . . . . . . . . . 31
2.2.4 Spillover Effects and Sensor-Actuator Colocation . . . . . . . . . 34
2.3 Decentralized Robust Servomechanism Problem of the LFSS (DRSP) . . 38
2.3.1 Decentralized Control of Colocated LFSS . . . . . . . . . . . . . . 38
2.3.2 Problem Definition . . . . . . . . . . . . . . . . . . . . . . . . . . 40
2.3.3 Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
2.4 Fault Tolerant Control (FTC) of the LFSS . . . . . . . . . . . . . . . . . 42
2.4.1 Sensor and/or Actuator Failures . . . . . . . . . . . . . . . . . . . 43
2.4.2 The LFSS Model with Failure (LFSSF) . . . . . . . . . . . . . . . 47
2.4.3 Fault Diagnosis . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
3 Active FTC of LFSS using a PID Controller 51
3.1 The Nominal Closed Loop System . . . . . . . . . . . . . . . . . . . . . . 52
3.1.1 Derivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.1.2 Insights . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.2 Decentralized Robust Servomechanism Problem for LFSS under Failure
(DRSPF) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
3.2.1 The Effect of Failures . . . . . . . . . . . . . . . . . . . . . . . . . 54
3.2.2 Assumptions on Failures . . . . . . . . . . . . . . . . . . . . . . . 56
3.2.3 Problem Definition . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.3 Fault Accommodation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
3.3.1 Controller Adjustments . . . . . . . . . . . . . . . . . . . . . . . . 58
3.3.2 The LFSSF Closed Loop System under DCtrlFA (CLSF) . . . . . . . 60
3.3.3 Reduced LFSS Closed Loop System with Failure . . . . . . . . . . 62
3.3.4 Reduced Colocated LFSS Model . . . . . . . . . . . . . . . . . . . 65
3.3.5 Reducing the DRSPF to the DRSP . . . . . . . . . . . . . . . . . . 67
3.3.6 Existence of Solution to the DRSPF using the DCtrlFA . . . . . . . 69
3.3.7 Relaxing Diagnosis of Actuator Failures by Choosing Diagonal Gains 70
3.4 Steady-State Output for the CLSF . . . . . . . . . . . . . . . . . . . . . . 72
3.4.1 Derivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
3.4.2 Interpretation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
3.4.3 Applications to Tracking Recovery . . . . . . . . . . . . . . . . . 76
3.5 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
vii
4 Passive FTC of LFSS using a PD Controller 86
4.1 The Good Approximate Decentralized Robust Servomechanism Problem
for an LFSS under Failure (DRSPFGA) . . . . . . . . . . . . . . . . . . . . 87
4.1.1 Motivation: Integrator under Unknown Failures . . . . . . . . . . 87
4.1.2 Problem Statement . . . . . . . . . . . . . . . . . . . . . . . . . . 88
4.2 The Decentralized Proportional Derivative Controller (DCtrlPD) . . . . . 89
4.2.1 PD Controller for the LFSSF and the Closed Loop System . . . . 89
4.2.2 Stability of the Closed Loop System . . . . . . . . . . . . . . . . . 91
4.3 Steady-State Output for the CLSFPD . . . . . . . . . . . . . . . . . . . . . 94
4.3.1 Main Derivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
4.3.2 Auxiliary Results . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
4.4 Solving the DRSPFGA with DCtrlPD . . . . . . . . . . . . . . . . . . . . . . 100
4.4.1 Asymptotic Behaviour for Sref and Sw under Large Gains . . . . 100
4.4.2 Main Result . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
4.5 DCtrlPD with Feed-Forward Adjustment (DCtrlFFPD) . . . . . . . . . . . . . 108
4.5.1 The Controller for the Nominal LFSS . . . . . . . . . . . . . . . . 108
4.5.2 Special Case of Rigid Body Outputs as References . . . . . . . . . 110
4.5.3 Effect of Sensor and Actuator Failures . . . . . . . . . . . . . . . 111
4.6 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
5 Integrating the PID and the PD Controllers 120
5.1 Fault Diagnosis using the PD Controller . . . . . . . . . . . . . . . . . . 120
5.1.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
5.1.2 Extracting [FySref ] from Output Measurements . . . . . . . . . . 123
5.1.3 Main Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
5.1.4 Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
5.2 Linear Final Value Extrapolation . . . . . . . . . . . . . . . . . . . . . . 131
5.2.1 Problem Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
5.2.2 Signal Processing Basics . . . . . . . . . . . . . . . . . . . . . . . 134
5.2.3 Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
5.2.4 Computation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
5.2.5 Simulations and Practical Notes . . . . . . . . . . . . . . . . . . . 144
5.3 Integrating the PID and PD Controllers . . . . . . . . . . . . . . . . . . 149
5.3.1 Unifying the PID and PD controllers . . . . . . . . . . . . . . . . 150
viii
5.3.2 Integrated Fault Diagnosis and Fault Accommodation . . . . . . . 152
5.4 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
6 Conclusions and Future Work 165
6.1 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
6.2 Summaries of Chapters and Discussion . . . . . . . . . . . . . . . . . . . 168
6.3 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
6.3.1 General Extensions . . . . . . . . . . . . . . . . . . . . . . . . . . 172
6.3.2 Specific Extensions . . . . . . . . . . . . . . . . . . . . . . . . . . 173
A Mathematical Details 176
A.1 Linear Algebra . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
A.1.1 Matrix Inverses . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
A.1.2 Basic Properties of Positive Definite and Positive Semi-Definite
Matrices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
A.1.3 Matrix Decomposition and Transformation . . . . . . . . . . . . . 180
A.1.4 Additional Properties of Positive Definite Matrices . . . . . . . . 181
A.1.5 Asymptotic Stability of Mass-Damper-Spring Systems . . . . . . . 182
A.2 The Rigid Body Rank Test . . . . . . . . . . . . . . . . . . . . . . . . . . 184
A.3 Steady-State Output for the CLSFPD: Details . . . . . . . . . . . . . . . . 186
A.3.1 Simplifying Steady-State Reference Gain Matrix . . . . . . . . . . 186
A.3.2 Simplifying Steady-State Disturbance Gain Matrix . . . . . . . . 189
A.3.3 Additional Results and Insights . . . . . . . . . . . . . . . . . . . 191
B Specification and Derivation of LFSS Examples 197
B.1 LFSS Benchmark A: 1-D System . . . . . . . . . . . . . . . . . . . . . . 197
B.1.1 Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
B.1.2 Derivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
B.1.3 Parameters Choices . . . . . . . . . . . . . . . . . . . . . . . . . . 199
B.1.4 The Model (Summary) . . . . . . . . . . . . . . . . . . . . . . . . 200
B.2 LFSS Benchmark B: 4-Component System . . . . . . . . . . . . . . . . . 200
B.2.1 Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
B.2.2 The Model (Summary) . . . . . . . . . . . . . . . . . . . . . . . . 202
B.3 LFSS Benchmark C: Purdue Space Platform . . . . . . . . . . . . . . . . 203
B.3.1 High Level Description . . . . . . . . . . . . . . . . . . . . . . . . 203
ix
B.3.2 Derivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
B.3.3 Validation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220
B.3.4 Support Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
B.3.5 The Model (Summary) . . . . . . . . . . . . . . . . . . . . . . . . 225
Bibliography 226
x
List of Tables
1.1 Control challenges encountered in performing FTC of LFSS. . . . . . . . 9
2.1 Basic constant vectors and matrices. . . . . . . . . . . . . . . . . . . . . 20
2.2 Basic matrix operations. . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.3 Definitions of special matrices. . . . . . . . . . . . . . . . . . . . . . . . . 21
2.4 Local signals and their aggregated versions. . . . . . . . . . . . . . . . . . 39
2.5 Specifying various failure-related subsets of y using Fy, Fu and F . . . . 46
2.6 List of signals in LFSSF. . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
3.1 Closed loop eigenvalues in the example using LFSS Benchmark A. . . . . 78
3.2 Various failure scenarios in the example using LFSS Benchmark A. . . . 80
3.3 Various failure scenarios in the example using LFSS Benchmark B. . . . 82
3.4 Various failure scenarios in the example using LFSS Benchmark C. . . . 84
5.1 Diagonal components of [FySref ] for different cases of F . . . . . . . . . . 129
5.2 Transition conditions for DCtrlU operation modes to perform FTC of the
LFSSF. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
6.1 Summary of how our FTC schemes satisfy the DRSPF control objectives. 167
xi
List of Figures
1.1 Modal decomposition and modal truncation of a flexible structure specified
by 1-D Euler-Bernoulli beam [15] (with exaggerated scaling). . . . . . . . 3
2.1 Block diagram of the colocated LFSS model (LFSS). . . . . . . . . . . . . 24
3.1 An LFSS with a generic decentralized controller. . . . . . . . . . . . . . . 53
3.2 An LFSSF with a decentralized controller. . . . . . . . . . . . . . . . . . . 55
3.3 LFSS Benchmark A controlled by a DCtrl, with a failure occurs at t = 50 s
(Dashed lines depict the nominal case). . . . . . . . . . . . . . . . . . . . 56
3.4 The structure of a decentralized colocated controller [32]. . . . . . . . . . 59
3.5 An LFSSF combined with a DCtrlFA results in a CLSF. . . . . . . . . . . . 61
3.6 An LFSSF combined with a colocated controller. . . . . . . . . . . . . . . 64
3.7 Interrelationships among systems defined to solve the DRSPF. . . . . . . 65
3.8 A second perspective of the system in Figure 3.6. . . . . . . . . . . . . . 67
3.9 Step responses of LFSS Benchmark A CLSF with actuator failure in eT1u
at t = 50 s (Dashed lines depict nominal case). . . . . . . . . . . . . . . . 79
3.10 LFSS Benchmark A under control by the DCtrlFA, with a failure at t = 50 s
(Dashed lines depict nominal case). . . . . . . . . . . . . . . . . . . . . . 81
3.11 Step responses of LFSS Benchmark B CLSF with actuator failure in eT1u
at t = 10 s (Dashed lines depict nominal case). . . . . . . . . . . . . . . . 83
3.12 Step responses of LFSS Benchmark C CLSF with actuator failure in eT1u
at t = 1,000 s (Dashed lines depict nominal case). . . . . . . . . . . . . . 85
3.13 Various ways to place 4 additional colocated sensors/actuators in LFSS
Benchmark C. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
4.1 Step responses of LFSS Benchmark A CLSFPD with actuator failure in eT
2u. 115
xii
4.2 Step responses of LFSS Benchmark A CLSFPD with sensor failure in eT
3 v
(Dashed lines: low gain; Solid lines: high gain). . . . . . . . . . . . . . . 117
4.3 Step responses of LFSS Benchmark C CLSFPD with sensor failure in eT
1 y. . 119
5.1 Using an FIR filter to extrapolate the final value of y[k]. . . . . . . . . . 136
5.2 Signal before and after FIR filter to extrapolate the final value. . . . . . 145
5.3 Effects of adjusting p in final value extrapolation. . . . . . . . . . . . . . 146
5.4 Effects of adjusting p and v in final value extrapolation. . . . . . . . . . . 146
5.5 Sample signal with more poles. . . . . . . . . . . . . . . . . . . . . . . . 147
5.6 The results of applying computed filter to y[k]. . . . . . . . . . . . . . . . 148
5.7 The results of applying computed filter to y[k] with noise. . . . . . . . . 148
5.8 y(t) for nominal system under PID controller, then switching to PD con-
troller. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
5.9 y(t) from t = 0 to after SAF, where the LFSSF remains in PD control
while measuring Fyy0. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
5.10 y(t) during steady-state experiments to measure Fyy1, . . . , Fyy5. . . . . 158
5.11 y(t) after fault-adjusted PD controller is applied. . . . . . . . . . . . . . 159
5.12 y(t) after fault-adjusted PID controller is applied. . . . . . . . . . . . . . 160
5.13 y(t) from t = 0 to after SAF, where the LFSSF remains in PD control
while determining Fyy0 by applying final value extrapolation. . . . . . . 161
5.14 Filtered ym(t) from the experiment to extrapolate Fyy0. . . . . . . . . . 161
5.15 y(t) during steady-state experiments to extrapolate Fyy1, . . . , Fyy5. . . 162
5.16 Filtered ym(t) from the experiment to obtain Fyy1, . . . , Fyy5. . . . . . . 162
5.17 y(t) after fault-adjusted PD controller is applied. . . . . . . . . . . . . . 163
5.18 y(t) after fault-adjusted PID controller is applied. . . . . . . . . . . . . . 163
B.1 LFSS Benchmark A: 1-D System. . . . . . . . . . . . . . . . . . . . . . . 198
B.2 LFSS Benchmark B. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
B.3 LFSS Benchmark C. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
B.4 Dividing XY into Nx ×Ny rectangular elements. . . . . . . . . . . . . . 207
B.5 Plate ordering of states in w for Nx = Ny = 2. . . . . . . . . . . . . . . . 216
B.6 Plot of frequencies listed in [27] and computed in our simulation. . . . . . 221
B.7 Comparing the first 100 modal frequencies for simulations with different
number of elements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
xiii
B.8 Comparing modal frequencies 3 to 13, using 4× 4 versus 16× 16 element
simulations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
B.9 0-level curves of various flexible mode shapes from our simulation. . . . . 223
xiv
List of Symbols
Generic Mathematics
Symbol Meaning (page reference)
N Natural numbers (19)
N0 Whole numbers (19)
N Integers (19)
R Real numbers (19)
C Complex numbers (19)
(m,n)Z / (a, b)R Open integer / real interval (19)
[m,n)Z / [a, b)R (Lower) Semi-open integer / real interval (19)
(m,n]Z / (a, b]R (Upper) Semi-open integer / real interval (19)
[m,n]Z / [a, b]R Closed integer / real interval (19)
<(·) Real part of a complex number (19)
=(·) Imaginary part of a complex number (19)
σ(·) Set of eigenvalues of a matrix (21)
(·) Complex conjugate (19)
C− Open left half complex plane (19)
C+Closed right half complex plane (19)
0m Zero vector, length-m (20)
1m Constant one vector, length-m (20)
ek The k-th Euclidean vector (20)
0m,n The m× n zero matrix (20)
Im The m×m identity matrix (20)
δi,j Kronecker delta (20)
GLn The set of invertible matrices in Rn×n (21)
HURn The set of Hurwitz stable matrices in Rn×n (21)
SYMn The set of symmetric matrices in Rn×n (21)
UT RIn The set of upper-triangular matrices in Rn×n (21)
LT RIn The set of lower-triangular matrices in Rn×n (21)
xv
On The set of orthogonal matrices in Rn×n (21)
PDn The set of positive definite matrices in Rn×n (21)
PSDn The set of positive semi-definite matrices in Rn×n (21)
DIAGn The set of diagonal matrices in Rn×n (21)
DIAGn0,1 The set of binary diagonal matrices (22)
(·)T Matrix transpose (21)
[A1,A2] Horizontal concatenation of matrices (21)
[A1; A2] Vertical concatenation of matrices (21)
Z · Z-transform (134)
R[z−1] Set of all finite real polynomials in z−1 (135)
deg Degree of a polynomial in R[z−1] (135)
Large Flexible Space Structures
Symbol Meaning (page reference)
n Number of displacement states in the given LFSS (23)
m Number of colocated sensors/actuators in the given LFSS (23)
q Number of disturbance sources in the given LFSS (23)
n Number of rigid body modes in the given LFSS (25, 28)
M0 Generalized inertia matrix (27)
D0 Generalized damping matrix (27)
K0 Generalized stiffness matrix (27)
Λ0 Mechanical input matrix (27)
Ef0 Mechanical input disturbance force matrix (27)
A LFSS dynamics matrix (24)
B LFSS input matrix (24)
C LFSS output matrix (24)
E LFSS input disturbance matrix (24)
F Output disturbance matrix (26)
Ω2 Modal frequency matrix (25)
∆ Modal damping matrix (25)
L Colocated modal input/output matrix (25)
Ω2 Flexible body modal frequency matrix (26)
∆ Flexible body modal damping matrix (26)
L Rigid body model input/output matrix (25)
L Flexible body input/output matrix (25)
Ef Input disturbance force matrix (26)
ξ Generalized displacement (27)
xvi
d Modal displacement (47)
x Modal state (47)
u Actuator input (47)
y Physical output (47)
ym Measured output (47)
yref Tracking reference (47)
w Disturbance (47)
e Tracking error (47)
Controllers
Symbol Meaning (page reference)
N Number of local controllers (38)
S1, . . . ,SN Local controller agents (38)
KPi Proportional gain matrix for local controller (42)
KDi Derivative gain matrix for local controller (42)
KIi Integrao gain matrix for local controller (42)
KP/Di KP
i and/or KDi (90)
KP/D/Ii KP
i , KDi , and/or KI
i (42)
ηi Local integral state (42)
KP Combined proportional gain matrix (42)
KD Combined derivative gain matrix (42)
KI Combined integral gain matrix (42)
KP/D KP and/or KD (90)
KP/D/I KP, KD, and/or KI (42)
η Combined integral state (42)
ε Tuning factor for integral control (42)
ε? Supremum for ε in Theorem 2.2 (42)
Fyi Local sensor failure matrix (43)
Fui Local actuator failure matrix (44)
Fi Local combined failure matrix (45)
Fy Sensor failure matrix (45)
Fu Actuator failure matrix (45)
F Combined failure matrix (45)
Keff Effective modal stiffness matrix (60)
Deff Effective modal damping matrix (60)
A CLS dynamics matrix (53)
Bref CLS reference input matrix (53)
xvii
Bw CLS disturbance input matrix (53)
C CLS output matrix (53)
AF CLSF dynamics matrix (61)
BrefF CLSF reference input matrix (61)
BwF CLSF disturbance input matrix (61)
m? Number of healthy outputs (62)
R Fault reduction matrix (62)
L? Reduced modal input/output matrix (62)
F? Reduced output disturbance matrix (62)
KP? Combined proportional gain matrix for reduced system (62)
KD? Combined derivative gain matrix for reduced system (62)
KI? Combined integral gain matrix for reduced system (62)
KP?/D?/I? KP?, KD?, and/or KI? (62)
A?F Red(CLSF) dynamics matrix (63)
Bref?F Red(CLSF) reference input matrix (63)
Bw?F Red(CLSF) disturbance input matrix (63)
C?F Red(CLSF) output matrix (63)
y Steady-state physical output (72)
e Steady-state tracking error (110)
yrin Reference input (dummy variable) (108
T ref PID steady-state output reference gain matrix (73)
T w PID steady-state output disturbance gain matrix (73)
Sref PD steady-state output reference gain matrix (95)
Sw PD steady-state output disturbance gain matrix (95)
Γ PD reference-to-output characteristic matrix (97, 189)
Υ PD disturbance-to-output characteristic matrix (97, 191)
s(t) Integrator enable signal (150)
N (t) Sensor-actuator pair enable signal (150)
xviii
List of Acronyms and Abbreviations
Acronyms
Abbreviation Meaning (page reference)
p.d. Positive Definite (21)
p.s.d. Positive Semi-Definite (21)
PID Proportional-Integral-Derivative (42)
PD Proportional and Derivative (88)
LFSS colocated Large Flexible Space Structure (2)
SAF Sensor and/or Actuator Failure(s) (43)
FTC Fault Tolerant Control (5)
FIR Finite Impulse Response (136)
IMM Interacting Multiple Model (14)
EA Eigenstructure Assignment (13)
FEM Finite Element Method (29)
Technical Abbreviations (for Systems, Controllers, or Problems)
Abbreviation Meaning (page reference)
LFSS LFSS model in standard form (24)
DRSP Decentralized robust servomechanism problem for the LFSS (40)
DCtrl Decentralized tuning PID Controller (42)
CLS The nominal closed loop system (52)
LFSSF The LFSS model under SAF (47)
DRSPF Decentralized robust servomechanism problem for the LFSSF
(57)
DCtrlFA Fault-accommodating decentralized tuning PID controller (59)
CLSF LFSSF closed loop system under DCtrlFA (61)
xix
DRSPFGA Good approximate DRSP for an LFSSF (88)
DCtrlPD Decentralized PD controller (89)
DCtrlFFPD Decentralized PD controller with feed-forward adjustment (110)
CLSFPD LFSSF closed loop system with PD controller (90)
LFSS? Reduced colocated LFSS model (66)
DCtrlU Unified decentralized controller (150)
Precise Statements
Abbreviation Meaning (page reference)
〈A1〉–〈A3〉 Control objectives of the DRSP (40)
〈M1〉–〈M6〉 Equivalent conditions for the DRSP to have a solution (40)
〈B1〉–〈B3〉 Control objectives of the DRSPF (57)
〈C1〉–〈C4〉 Controller adjustments to the DCtrl to produce the DCtrlFA (58)
〈D1〉–〈D2〉 Equivalent conditions to establish link for LFSSF with LFSS?
(68)
〈E1〉–〈E5〉 Equivalent conditions for the DRSPF to have a solution under
DCtrlFA (69)
〈F1〉–〈F3〉 Conditions for DRSPFGA (88)
〈R1〉–〈R4〉 Equivalent conditions for rank test rank(LF) = n (185)
xx
Chapter 1
Introduction
Mankind’s ongoing exploration beyond Earth’s confines drives the increase in size and
complexity of structures deployed in space. Many of these structures and components
thereof can be modelled as unstable colocated large flexible space structures (LFSS),
which typically contain lightly-damped, low-frequency flexible modes, and whose full
model may have a high order [7, 10,39,61].
Some main control objectives for LFSS include orbital station-keeping, attitude con-
trol, and vibration suppression. These goals often involve stabilization about some equi-
librium, tracking of desired set-points, and regulation against unknown disturbances. It is
also imperative for controllers to tolerate parametric uncertainty. Moreover, to promote
scalability and modularity, it is advantageous to use a controller that consists of multiple
cooperative agents. The problem of designing controllers with the above characteristics
is the decentralized robust servomechanism problem (DRSP) [17–19,21,61].
Carrying out repairs in space is extremely costly and difficult. Therefore it is highly
desirable to develop control systems that withstand faults, i.e., structural changes that
can disrupt the normal operation of an LFSS. The design methodology to enable “grace-
ful degradation of performance” of the closed loop system when faults are present is
called fault tolerant control (FTC) [8, 23, 67]. Typical sub-problems in FTC are the
detection, isolation, and accommodation of a specified class of faults.
This thesis is concerned with developing FTC for LFSS. The specific control problem
of interest is the DRSP, and the class of faults considered is a particular form of sensor
and/or actuator failures (SAF).
1
Chapter 1. Introduction
1.1 Definitions and Problem Statement
In this section, we present key definitions at a high-level, and provide an overview of the
main ideas in LFSS, DRSP, FTC, and SAF. Technical details of the concepts presented
here will be addressed in Chapter 2. After introducing the definitions, we then present
our problem statement.
1.1.1 Large Flexible Space Structure
A large flexible space structures (LFSS) is a mechanical structure deployed in space,
in which structural vibration plays a dominant role in the dynamics of the system. Our
main references on modelling LFSS are [3, 33,39,40].
We will consider a linearized LFSS model, which is a linear time invariant system
that has the form of a general coupled mass-spring-damper system. Under this model,
motion in an LFSS can be decomposed into (i.e., written as a weighted sum of) rigid
body motion and flexible body motion.
Rigid body motion of an LFSS consists of translations and rotations, i.e., dynamics
that do not involve elastic deformation. Key LFSS control problems for rigid body motion
include station-keeping, and attitude (i.e., orientation) control.
Flexible body motion of an LFSS consists of mechanical deformation and vibration.
Due to the micro-gravity environment and the absence of atmospheric drag, damping
effects in space are much weaker than on ground. As a result, mechanical vibration tends
to persist, and active vibration control is essential. Flexible body motion of an LFSS can
be decomposed to a series of simple harmonic motions called vibration modes. Each
vibration mode consists of a mode frequency and a mode shape.
The dynamics of a complex LFSS tends to involve numerous states, and many vi-
bration modes can result. A common technique to reduce the LFSS model is modal
truncation. As illustrated in Figure 1.1, this consists of decomposing the LFSS motion
into rigid body motion and flexible body motion (this is a coordinate transformation of
states), and discarding high-frequency1flexible body motions. The process gives rise to a
reduced-dimension modal-truncated LFSS model. As seen in Figure 1.1, the rigid body
and vibration modes are listed on the third column, sorted by increasing mode frequency.
1Since the number of modes selected is finite, so there is a cut-off frequency beyond which all “high-frequency” modes are truncated. However, in applications, “low-frequency” modes that weakly interactswith sensors and actuators may also be truncated.
2
Chapter 1. Introduction
Figure 1.1: Modal decomposition and modal truncation of a flexible structure specifiedby 1-D Euler-Bernoulli beam [15] (with exaggerated scaling).
The outputs of an LFSS are generalized displacements (from equilibrium) and gener-
alized velocities. Generalized displacements can represent linear displacements or angular
displacements (also called slopes). The instruments to measure LFSS output are sen-
sors. The control inputs of an LFSS consist of applied force or torques, via thrusters,
motors, piezoelectric elements, reaction wheels, etc. These devices are collectively called
actuators. The specific implementations and internal dynamics of various sensors and
actuators are beyond the scope of this thesis.
A modal-truncated LFSS model is useful for designing and simulation LFSS con-
trollers. But once an LFSS controller is deployed, it would interact with unmodelled
modes of the system. Such an interaction may excite these unmodelled modes, and as
a result cause the closed loop system to become unstable. This phenomenon is called
spillover effects.
The standard technique to prevent spillover effects is sensor-actuator colocation.
In this scheme, the LFSS is designed to specify sensors and actuators in pairs, so that each
sensor-actuator pair has a common position and alignment for force/torque actuation and
displacement/slope measurement. Details on how sensor-actuator colocation prevents
spillover effects can be found in [39].
3
Chapter 1. Introduction
1.1.2 Decentralized Robust Servomechanism Problem
The main control problem we wish to study for the LFSS is the decentralized robust
servomechanism problem (DRSP). In summary, we seek a decentralized controller
that stabilizes a given LFSS, tracks a given constant reference, and regulates against
an unknown constant disturbance. The controller must also be robust to parametric
uncertainty. Also, spillover effects must be absent. Our main references for the DRSP
are [17,19,61]. Let us describe the above specifications in detail.
Stability (about some equilibrium) is the most important objective in DRSP, as it is
also a prerequisite for the other objectives. In the context of the linearized LFSS under
linear control, this is equivalent to requiring every eigenvalues of the closed loop system
to be found in the open left half complex plane.
The tracking objective requires LFSS outputs to asymptotically reach a specified
class of reference inputs, assuming no disturbance. The regulation objective requires
LFSS outputs to asymptotically reach the tracking reference when a given class of un-
known disturbance inputs are present. For a linear system, these two objectives are
independent. In this thesis, we focus on the class of constant reference signals and con-
stant disturbance inputs.
The stability, tracking, and regulation objectives are collectively known as the ser-
vomechanism problem.
An LFSS model obtained from simulations or experiments contains parametric un-
certainty, and appears as a perturbed version of a more accurate model. To tolerate
these perturbations, we require our controller to be robust, i.e., the stability, tracking,
and regulation objectives should continue to hold when the designed controller is applied
to an LFSS that is a perturbed version of the target LFSS model. We also require the
controller to accommodate unmodelled modes, i.e., prevent spillover effects.
Finally, decentralized control requires a controller to be implemented by multiple lo-
cal controller agents, whose overall actions give rise to the intended control behaviour.
In the context of colocated LFSS, decentralized control forms a partition of colocated
sensor-actuator pairs, so that each subset is assigned to a local controller agent. De-
centralization restricts information flow from sensors to actuators. Under linear output
feedback, decentralization is typically specified by imposing a block-diagonal structure
in feedback gain matrices.
The above objectives combine to form the DRSP of the LFSS. This problem is solved
4
Chapter 1. Introduction
in [61], which gives necessary and sufficient conditions for solutions to exist. It is also
shown that if a solution exists, then a class of tuning proportional-integral-derivative
(PID) controller can be used to solve the problem.
1.1.3 Fault Tolerant Control
Fault tolerant control (FTC) is a control design methodology that takes into account
of potential malfunctions in system components and features. Given a class of fault
scenarios, the primary goal of FTC is to find controllers that can extract information on
these faults, and/or diminish the negative effects of faults, so that the controlled system
would continue to operate, but possibly undergo a “graceful degradation of performance”.
Our primary references on FTC are [8, 23, 67]. Ref. [67] is a review paper on FTC,
which also provides numerous definitions that are adopted in this thesis. Ref. [23] is an
earlier survey paper on FTC. In [8] (a book), numerous techniques and implementation
of FTC in diverse system are described in detail.
Key FTC terminologies encountered in this thesis are introduced and discussed below.
Faults and Failures
Given a dynamical system, we define failures as significant departures of system be-
haviour from normal operation, and faults as changes in the system that can evolve into
failures. So loosely speaking, we consider faults as causes of failures; and failures as the
negative effects of faults. Therefore FTC can be considered as, “a control methodology
to prevent faults from evolving into failures”.
The main fault model considered in this thesis consists of sensor and/or actuator
failures (Section 1.1.4). Here, “failure” refers to malfunction in sensors and/or actuators,
i.e., from the perspective of components of an LFSS. But from the perspective of the
LFSS, these are faults.
Although it is desirable to meet all LFSS control objectives when faults are present,
often this is infeasible. Instead, one can study different control schemes, and evaluate the
trade-offs that can arise among the various control objectives. We note that the analysis
of these trade-offs greatly contributes to the richness and the challenge in FTC research.
Fault Diagnosis and Fault Accommodation
Two main areas in FTC research are fault diagnosis and fault accommodation.
5
Chapter 1. Introduction
Fault diagnosis involves developing methods to extract information on faults in a
system. This is an extensive field, and can be characterized in many ways:
• The system model (e.g., linear vs. nonlinear; continuous time vs. discrete time).
• The availability of system model: if the system model is available for diagnosis
procedures, then the FTC approach is model-based; otherwise it is model-free.
• Runtime requirements: online (implemented at runtime) vs. offline (post-processing
of data).
Fault accommodation involves implementing controls to mitigate the harmful ef-
fects of faults, i.e., preventing the faults from evolving into failures, and possibly regaining
controller functionalities to various extents.
This thesis initially focuses on fault accommodation, and then studies a fault diagnosis
approach that arises from our analysis.
Fault Detection and Fault Isolation
Fault diagnosis can be further divided into fault detection and fault isolation. Fault
detection involves determining whether or not a fault has occurred. Given that faults
have occurred, fault isolation involves determining the location (i.e., which component)
of faults. The distinction between fault detection and fault isolation is important in
implementation. For instance, fault detection may involve on-going monitoring of a
system’s outputs, and check them against expected outputs from a nominal system. By
contrast, fault isolation may involve more extensive analysis and probing, which may
cause some disruption to a system’s operation.
Passive FTC and Active FTC
Depending on the availability of data from fault diagnosis, FTC (in particular, fault
accommodation) can be classified as passive FTC or active FTC. In passive FTC,
controllers are designed to accommodate unknown faults of a specific class, without
requiring diagnosis data. In active FTC, controllers undergo control reconfiguration,
which typically utilizes information obtained from fault diagnosis.
Passive FTC tolerates unknown faults, i.e., FTC “kicks in” automatically, without
demanding additional resources to perform fault diagnosis. By contrast, active FTC
6
Chapter 1. Introduction
offers greater flexibility and performance for fault accommodation, but it requires that
faults are “diagnosable”, and that a fault diagnosis module is available. We refer to [36]
for detailed comparisons between passive FTC and active FTC.
Fault diagnosis and fault accommodation are typically considered to be distinct prob-
lems that are implemented by separate modules. An extension to this scheme is inte-
grated fault diagnosis and fault accommodation [55,56], which studies new possi-
bilities that may arise from their mutual interaction in closed loop. We will explore one
such scheme in Chapter 5.
1.1.4 Sensor and/or Actuator Failures
The specification of an FTC problem requires precise specification of the class of faults
under consideration. In this thesis, we will focus on sensor and/or actuator failures
(SAF). Again, here “failure” describes the sensor or actuator modules, which are consid-
ered as “faults” in the LFSS. However, to adapt to common terminology, we use “fault”
(of the system) and “failure” (of components) interchangeably.
We will focus on total failure of sensors and/or actuators. Therefore a failed sensor
is specified to produce an output of 0; and a failed actuator is specified to generate a
control signal of 0. By contrast, a partial failures model enables faults to assume a
range of values. This model is not considered in this thesis. Note that we do not consider
constant disturbances in the DRSP as faults.
In general, SAF may evolve as a function of time. With respect to persistence, SAF
can be classified to be permanent or intermittent. A permanent fault persists after it
initially occurs; and an intermittent fault may recover (therefore repeated failures may
occur). Another way to classify faults is by their transient behaviour. An abrupt fault
occurs within a short duration, and can be modelled as a step change. An incipient
fault can take long time to unfold, and are typically associated with component wear or
fatigue.
For simplicity, in this thesis we will only consider SAF that are total, abrupt, and
permanent. Therefore the occurrence of an SAF is represented as a one-time switching
transition to 0 in the LFSS. By contrast, intermittent SAF allows infinite number of
switching to occur, and it is well-known that multiple switching, even among stable
systems, can lead to instability [46]. This situation is avoided in this thesis by focus on
permanent SAF only. As a result, the number of switching is finite, and we focus on
7
Chapter 1. Introduction
the LFSS under some fixed SAF, and analyze asymptotic stability assuming that SAF
remains constant.
Two ways to model SAF are additive fault and multiplicative fault representations.
In an additive fault representation, SAF are represented as extra fault terms added to
input and/or output. In the case of total failure, these signals exactly cancel the failed
signals [55]. As a result, system matrices remained fixed, and the fault diagnosis problem
involves determining the fault terms. By contrast, in a multiplicative fault representa-
tion, system matrices undergo fault-dependent modifications. Although equivalent, the
two representations significantly alter how analysis proceeds. In this thesis, we will adopt
a multiplicative fault representation.
A common terminology we use throughout this thesis is as follows: a sensor-actuator
pair is called a failed output if it contains any (sensor and/or actuator) failure; otherwise
it is called healthy output.
1.1.5 Problem Statement
We are given a colocated LFSS under output feedback, and the objective is to solve the
DRSP [61]. Given the possibility that SAF (specified by total, abrupt, and permanent
failures for each sensor and actuator component) may occur, we wish to devise a FTC
that preserves the stability of the closed loop system, so that the controller is robust
against parametric uncertainties, and that no spillover effects occur. These goals are
essential. Next, we wish to have LFSS outputs track an arbitrary constant reference
and regulate an unknown constant disturbance. It is also desired that the controller
adjustments procedure and the resulting controllers are decentralized. If these remaining
DRSP goals cannot be satisfied under SAF, then we should determine the trade-offs
entailed by various controllers studied.
If SAF are known, then we seek an active FTC strategy, which includes a controller
design, with necessary and sufficient conditions for a solution to exist. Similarly, if SAF
are unknown, then we seek a passive FTC strategy, which includes a controller design,
with necessary and sufficient conditions for a solution to exist. Comparisons of the trade-
offs between the control schemes explored should be made.
In studying passive FTC, an opportunity to diagnose the SAF in the LFSS arises.
We wish to take advantage of this, by developing and analyzing an integrated FTC on
the LFSS, which unifies and the results on active and passive FTC that we obtain.
8
Chapter 1. Introduction
We note that the LFSS is a relatively easy system to stabilize [47]. However, as shown
in Table 1.1, in this thesis we also need to address a number of control challenges beyond
stabilizing the LFSS model. This poses a major challenge in our effort to develop FTC
for the DRSP of an LFSS under SAF.
Challenge Causes Solutions
Parametric uncertainty Difficulty in estimatingstiffness and damping pa-rameters
Modal truncation; DRSP
Spillover effects Unmodelled mode frommodal truncation
Sensor/actuator coloca-tion
Disturbances (constant) Solar wind; actuator mis-alignment; imperfect in-strument
Regulation with integralcontroller
Sensor and/or actuatorfailures (SAF)
Component wear; hostileenvironment in space
FTC (addressed in thisthesis)
Table 1.1: Control challenges encountered in performing FTC of LFSS.
1.2 Related Work
The main topics connected to this thesis are FTC, DRSP, LFSS, and SAF. These topics
have been covered in the literature in various combinations, under different emphases and
approaches. In this section, we summarize a number of existing works that are related
to the above topics, for comparison with the approaches taken in this thesis.
We begin with our main reference [61], which addresses the DRSP for the LFSS.
A main result in [61] gives necessary and sufficient conditions for the DRSP to have a
solution, one of which is a rank condition involving the rigid body motion of the LFSS.
Assuming that a solution exists, it is shown that a decentralized tuning PID controller
can be used to solve the DRSP. Details of this work are presented in Chapter 2.
This thesis inherits the LFSS model and the DRSP specifications from [61], and then
extends the work by introducing a specific SAF model, and studying the associated FTC
problem. We have relaxed the DRSP goals so that only healthy outputs need to satisfy
tracking and regulation requirements. Our initial effort in active FTC (Chapter 3) is
based on transforming our closed loop system so that the main result in [61] can be
9
Chapter 1. Introduction
applied.
In [13], the FTC of the DRSP for a generic open loop stable plant under SAF is stud-
ied. The main objective is to achieve “reliable control” without retuning the controller;
thus passive FTC is considered. Moreover, “complete reliability” is required, i.e., all
DRSP objectives must continue to hold under SAF. Two sets of sufficient conditions for
solutions to exist are presented. The first set of condition involves computing/measuring
“steady-state interaction matrices” for all proper subsets of failed actuators. If satisfied,
a proper linear controller is specified to solve the problem. The second set of sufficient
conditions involves computing “block transmission zeros”, and the controller that solves
the problem is a PID controller that may require high-order derivatives.
Since LFSS is not open loop stable, the results in [13] is not directly applicable.
However, this thesis also studies passive FTC, and relies greatly on steady-state analysis
of the closed loop system. The FTC goal in [13] requires full recovery in DRSP objectives
under SAF. By contrast, this thesis is less stringent in that various compromises in
DRSP objectives are allowed. This enables a richer class of behaviours and solution to
be studied, as we also explore active FTC and fault diagnosis.
Active FTC and passive FTC have complementary advantages [36]. In [31], a “hybrid
FTC” that combines the properties of active FTC and passive FTC is applied to a flight
control system. The passive FTC serves to slow down performance deterioration when
actuator failures, to “buy time” for fault diagnosis. After diagnosis is performed, the
active FTC is then engaged to improve system performance.
Chapter 5 of this thesis consider an “integrated FTC” scheme that implements the
“hybrid FTC” idea in [31]. However, in our analysis, we supplied details on carrying out
the diagnosis. Also, common features between our active FTC and passive FTC methods
are utilized to improve integration.
In [42], the decentralized FTC of a colocated LFSS is studied. The LFSS is modelled
as a collection of finite-dimensional subsystems connected by flexible links. Each sub-
system is stabilized by a robust local dynamic displacement feedback controller. Total
actuator failure may occur for entire subsystems, and the FTC goal is to achieve sta-
bility without changing controller, i.e., passive FTC. The main theorem states a failure-
dependent rank condition as a necessary and sufficient condition for the overall closed
loop system to be stable.
As with this thesis, [42] utilizes state-space formalism and the special structures
of LFSS. However, spillover effects are not acknowledged. Instead, they are implicitly
10
Chapter 1. Introduction
sidestepped, since only finite-dimensional LFSS is considered (no usage of modal anal-
ysis), and that failure is specified for entire subsystems, which automatically preserves
colocation. By contrast, in this thesis consider component-wise SAF that has a “finer
granularity” than subsystems, and need to worry about spillover effects. The DRSP
objectives in this thesis are also more general than the stabilization requirement in [42].
However, [42] employs a controller that is more sophisticated than the PID and PD
controllers used in this thesis.
We now consider other works that study FTC of the LFSS, but where the models
and/or FTC approaches differ significantly from those explored in this thesis.
In [30], robust passive FTC of a flexible spacecraft under actuator failure is considered.
The control objective is attitude stabilization about the origin. The dynamics of the
spacecraft consist of a nonlinear rotation model with disturbances. Moreover, vibration
motion is treated as a bounded uncertainty in the nonlinear dynamics of the system. The
fault model in [30] consists of time-dependent partial failure in torque actuators. System
uncertainty is approximated as a linear combination of nonlinear bias functions. Global
asymptotic stability under specified actuator failure is achieved by applying sliding mode
control. A proof utilizing Lyapunov methods is given.
The nonlinear attitude dynamics and the time-dependent partial actuator failure
mode in [30] are more sophisticated than the linearized LFSS dynamics in this thesis.
However, the modelling of vibration by finite-dimensional nonlinear approximations ig-
nores the challenges posed by spillover effects. The partial actuator failure model used
can encompass a wide range of phenomena, but it is significantly different from the total
SAF model adopted in this thesis.
In [63], a generic reconfigurable learning controller for an LFSS is proposed. The
framework primarily uses neural networks, which are systems that serve as universal
approximators of continuous functions, and are configured via “training” on pre-specified
data set. Neural networks are applied in multiple contexts: as a controller to map from
state to controller signal, as an associative memory to retrieve parameters for control
reconfiguration, and as a pattern classifier for fault diagnosis.
The flexibility of neural networks offers exciting FTC application for the LFSS. How-
ever, extensive computation is needed in the training process of a neural network. This
framework is very distinct from our “model-based” approach, which utilizes the mathe-
matical model of the LFSS extensively.
In [1,2], a FTC design for flexible structures with known structure failures is studied.
11
Chapter 1. Introduction
Structure failures alter the transfer matrix of the given flexible structure, and are assumed
to be known. The collection of all nominal and failed systems under consideration is used
to construct an interval transfer function that encompasses the transfer matrices of these
systems. The problem is then reformulated as robust control, for which powerful synthesis
and analysis tools exist in the literature. These lead to a controller that is able to stabilize
the failed structures, and is robust against perturbations thereof. Modal truncation and
sensor-actuator colocation are implicitly utilized
A key distinction of [1, 2] from our work is the treatment of robustness and the
utilization of powerful tools of Kharitonov polynomials and µ-synthesis. By comparison,
the notion of robustness explored in this thesis is simplistic, as we merely “inherit” the
robustness results from [61]. Also, the failure models considered in [1, 2] are component
failures, whereas we are concerned with SAF.
In [4], a passivity-based (not to be confused with passive FTC) decentralized FTC
is studied. The work considers a passive linear system controlled by multiple single-
input/single-output (SISO) passive local controllers. The FTC objective is “decentral-
ized unconditional stability”, i.e., maintaining closed loop stability when one or more
local controllers are deactivated or altered by fault. Various optimization objectives are
also stated. The control synthesis procedure requires numerical solutions (semi-definite
programming), and is a form of passive FTC.
The flexible body dynamics of the LFSS is a passive system [39]. Therefore passivity-
based approaches as seen in [4] can effectively be used for LFSS control, and can even
accommodate spillover effects. In this thesis we have followed [61], and adopted a state
model. So to some extent our choice is rather arbitrary. However, this choice gave us
a concrete perspective on controller implementation, and led to insights on representing
and using SAF in our analyses.
As additional background, we now consider some work in FTC for general systems,
i.e., not specific to LFSS or flexible structures. For generic reference on concepts and
terminologies in FTC, we refer to the review papers [23,57–59,67], and the book [8].
In [55, 56], a very general framework to study integrated FTC that combines fault
diagnosis with fault accommodation in a linear framework is proposed. The framework
handles tracking and regulation under SAF (using additive fault representation). Using
12
Chapter 1. Introduction
transfer function formalism, the framework identifies 6 transfer functions mappings:
disturbance, sensor failure, actuator failure → plant output error, diagnosis error.
By applying H∞ methods, the trade-offs among these objectives are determined. It is
found that the proposed weight selection process does not involve a trade-off between
plant output error reduction (i.e., tracking and regulation) and diagnosis error reduction.
This gives rise to a “separation principle” between fault diagnosis and fault accommoda-
tion in closed loop.
From a high level, the results proposed in [55, 56] are very encouraging, although we
use neither transfer function formalism nor H∞ methods in this thesis. It is to be noted
that our focus is initially fault accommodation, and our fault diagnosis algorithm arises
through steady-state analysis. We proceed to take advantage of this and develop an
integrated FTC framework, which differs from the framework proposed in [55,56].
In [35, 64–66, 69], eigenstructure assignment (EA) is applied to perform active FTC
in linear systems (continuous or discrete time). EA exploits actuator redundancies to
assign eigenvalues and eigenvectors of the closed loop system. If the state is available
and if there are enough outputs, then the nominal closed loop system can be recovered.
Otherwise choices on the best eigenvalues and eigenvectors to recover are made. An
observer or a Kalman filter may also be used.
As with pole placement, EA does not seem to be easily applicable for FTC of the
LFSS. The method requires the full system model to be known, and works best under
state feedback. By contrast, the LFSS model is likely to have undergone modal trun-
cation, and may have limited precision (this also limits the effectiveness of observers).
Therefore DRSP design methodologies seem more applicable.
In [37,70], passive FTC against actuator failures in a continuous linear system is con-
sidered. The importance of redundant actuators is emphasized. In [70], this redundancy
is manifested by requiring the system to be controllable with every scalar input compo-
nent. This condition is generalized in [37]. A multiplicative total actuator failure model
is used in [70], and in [37], an unknown constant offset is added. Steady-state tracking
using a proportional-integral controller is also applied in [37]. Finally, to accommodate
faults, a dynamic pre-compensator is applied to each input to improve uniformity. Robust
control methods are applied to place poles to a “Γ-stability region”
This thesis shares some similarities with [37,70]. Specifically, a common actuator fail-
13
Chapter 1. Introduction
ure model is used, and unknown actuator offsets can be modelled as input disturbances.
However, LFSS actuators do not have the degree of redundancies required by [37]. Also,
we consider active FTC with input failures, and again, we will need to worry about
robustness and spillover effects.
In [64, 66, 69], discrete-time stochastic linear systems are considered. The proposed
actuator failure model includes partial failures and total failures, which are treated as a
list of “fault parameters” with stochastic dynamics. Fault parameter are multiplied with
actuator inputs, and subsequently subtracted from state transition. A two-stage adaptive
Kalman filter is used to perform state estimation and fault parameter estimation, thus
accomplishing fault diagnosis and state estimation for control. For fault accommodation,
EA and feed-forward controllers are used. Therefore [64,66,69] perform integrated FTC,
and acknowledge the challenges that arise from conducting fault diagnosis in a closed
loop.
The integrated FTC approach in [64, 66, 69] considers a very general fault model,
which includes partial failures and incipient faults. It is also claimed that sensor failures
can be handled in a similar manner. As with [30], the fault model in [64,66,69] does not
consider total failure.
In [65], another integrated FTC setup is proposed, in which the interacting multiple
model (IMM) method is applied for fault diagnosis. A discrete-time stochastic linear
model is used, and a model is defined for every possible failure mode. The task of fault
diagnosis consists of maintaining and updating the probabilities for each model to be
the actual model. To this end, each model is assigned a Kalman filter. The inputs and
outputs of these filters are coordinated, to produce a controller signal for the plant, and
to update the probability map.
The method proposed in [65] is very general and very powerful. However, the number
of possible SAF combinations in our model is high, so the method in [65] may be costly to
implement. The approach taken in this thesis is to exploit the structure of the LFSS and
the SAF. We will see that this leads to FTC schemes that are much easier to implement
than the IMM method.
1.3 Contributions
The underlying problem of this thesis is the DRSP of the LFSS, which was solved in
the 1980’s [61]. Incorporating a SAF model into the LFSS introduces new challenges,
14
Chapter 1. Introduction
since the control objectives of DRSP are no longer satisfied as a result. In particular,
the closed loop system may become unstable, and spillover effects may arise. The main
contribution of this thesis is in analyzing various FTC schemes for the DRSP of the
LFSS under our SAF model, i.e., active FTC, passive FTC, and fault diagnosis. These
are combined (using heuristics) to form an integrated FTC scheme.
With regard to active FTC, where SAF are known, this thesis constructs a simple-
to-implement control reconfiguration that extends the tuning PID controller in [61] to
accommodate SAF. The resulting decentralized controller maintains closed loop stability,
is robust, and prevents spillover effects. However, tracking and regulation goals are only
maintained for healthy outputs.
With regard to passive FTC, this thesis shows that a simple PD controller can stabilize
the LFSS under unknown failure. Next, it is also shown that steady-state errors (arising
from using a PD controller) of healthy outputs can be arbitrarily diminished by increasing
gains — but under the assumption that actuator failures subsume sensor failures.
With regard to fault diagnosis, this thesis shows that experiments can be conducted
on an LFSS under unknown SAF that is stabilized by a PD controller, so that the
resulting steady-state output measurements can be used to identify failed outputs. An
in-depth analysis also results in threshold values to discern faulty from healthy cases,
thereby improving robustness against measurement noise. The fault diagnosis is not
decentralized.
The integrated FTC scheme first unifies the PID and PD controllers to combine
their advantages (good tracking and regulation from PID, and passive FTC from PD).
Under the presence of suspected SAF (heuristics needed), the controller enters “diagnosis
mode”. Finally, the diagnosis results are used in active FTC. Unfortunately, the method
is inefficient, and does not handle new SAF that may occur during diagnosis. Therefore
we consider the integrated FTC scheme a proof-of-concept.
In addition to the main contributions stated above, a number of analysis results also
form useful contributions of this thesis.
In developing the active FTC (using PID controller) and passive FTC (using PD
controller) results, we must determine the conditions under which the controller satisfies
the respective objectives. It turns out that the necessary and sufficient conditions for
both cases are equal: the rigid body model under only healthy sensor-actuator pairs is
controllable and observable. This condition is succinctly summarized by a rank condition,
which also provides insights on how to place colocated sensor/actuators to improve the
15
Chapter 1. Introduction
fault-tolerance properties of an LFSS.
For the active FTC, the main challenge is the analysis of the resulting closed loop
system. To this end, algebraic properties of fault matrices are used, so that the resulting
closed loop system is converted to a form where the results in [61] becomes applicable.
To study the behaviour of failed outputs, detailed steady-state output matrices for
both the PID (for active FTC) and PD (for passive FTC) controllers are determined.
The steady-state output matrices for the PID case are shown to be gain-independent.
We can also apply these matrices for a tracking recovery scheme that assumes negligible
disturbances. Under this scheme, reference signals are pre-adjusted in order for “mission-
critical” failed outputs to satisfy its original tracking objectives, and tracking objectives
of some other healthy inputs are sacrificed in the process.
The steady-state output matrices for the PD case are gain-dependent (thereby en-
abling the high-gain results). The derivations of these matrices are straightforward.
However, by applying matrix decomposition methods, we further simplified the formulae
of these matrices. The simplified forms of these matrices are essential for our passive
FTC and fault diagnosis results.
The simplification of PD steady-state output matrices also gives rise to the “PD
output-to-reference characteristic matrix”. The matrix can be directly used as an extra
term that eliminates the tracking reference portion of steady-state output error, in the
nominal case. Moreover, the matrix can be determined from experiment, thereby enabling
a form of system identification.
To address the inefficiency of our fault diagnosis method, we formulate the linear final
value extrapolation problem. Our solution consists of an optimization-based solution that
applies digital signal processing techniques.
1.4 Organization
The organization of this thesis is summarized below:
• Chapter 2 presents background information for the remainder of the thesis.
• Chapter 3 describes the use of PID controllers for active FTC of the LFSS under
known SAF.
• Chapter 4 describes the use of PD controllers for passive FTC of the LFSS under
16
Chapter 1. Introduction
unknown SAF. Tracking and regulation performance degradation compared to the
results from Chapter 3 are noted.
• Chapter 5 presents a method to diagnosis SAF, and an integrated FTC scheme
that uses both PD and PID controllers.
• Chapter 6 presents concluding remarks and directions for future work.
• Appendix A presents mathematical details on results used in this thesis.
• Appendix B presents derivations of LFSS examples.
17
Chapter 2
Background
In this chapter, we introduce the background ideas and foundations of this thesis. Section
2.1 lists mathematical notations and basic definitions. Section 2.2 introduces large flexible
space structures (LFSS) and their modelling. Section 2.3 states the decentralized robust
servomechanism problem (DRSP) for the LFSS, and specifies a family of proportional-
integral-derivative (PID) controller as solutions. Section 2.4 focuses on fault-tolerant
control (FTC), and presents a sensor and/or actuator failure (SAF) model.
2.1 Mathematical Notations
We will apply mathematical conventions common in literature on linear systems. In this
section, we review these conventions, and also introduce additional specialized notations.
Additional mathematical results and proofs are presented in Appendix A.
2.1.1 Colons in Logical Expressions
Logical expressions are hierarchical. Such hierarchy are typically represented by nested
parenthesis, but in long logical expressions, these tend to become difficult to untangle.
To prevent such a problem, we use the colon (:) as a grouping modifier within logical
expressions. When placed between sub-expressions A and B, the colon induces a pair of
parentheses that surround B. Two basic cases are shown below:
A : B is equivalent to A(B),
(A : B)C is equivalent to (A(B))C.
18
Chapter 2. Background
Grouping for multiple colons is applied in a right-to-left manner:
A : B : C is equivalent to A(B(C)).
Example 2.1. The following expressions are equivalent:
(∀a ∈ A) : (f(a) < 3) =⇒ (∃b ∈ B)(g(b) > 4),
(∀a ∈ A)((f(a) < 3) =⇒ (∃b ∈ B)(g(b) > 4)).
The above expressions (implicitly, b depends on a) are read, “for every element a in A, if
f(a) < 3 then there exists an element b in B so that g(b) > 4.” If we remove the colon,
(∀a ∈ A)(f(a) < 3) =⇒ (∃b ∈ B)(g(b) > 4),
then the meaning (implicitly, B depends on A) is changed to, “if every element a in A
satisfies f(a) < 3, then there exists an element b in B so that g(b) > 4.” 4
2.1.2 Sets
Following convention, N := 1, 2, 3, . . . denotes natural numbers, N0 := 0, 1, 2, . . .denotes whole numbers, Z := . . . ,−1, 0, 1, . . . denotes integers, R denotes real
numbers, and C denotes complex numbers. For m,n ∈ Z, a ∈ R ∪ −∞, and
b ∈ R ∪ ∞, intervals are specified as
(m,n)Z := i ∈ Z | m < i < n, (a, b)R := x ∈ R | a < x < b,
[m,n)Z := i ∈ Z | m ≤ i < n, [a, b)R := x ∈ R | a ≤ x < b,
(m,n]Z := i ∈ Z | m < i ≤ n, (a, b]R := x ∈ R | a < x ≤ b,
[m,n]Z := i ∈ Z | m ≤ i ≤ n, [a, b]R := x ∈ R | a ≤ x ≤ b.
Given z ∈ C, the real part of z is <(z), the imaginary part of z is =(z), and the
complex conjugate of z = <(z) + i=(z) is z = <(z)− i=(z).
The open left-half complex plane is C− := z ∈ C | <(z) < 0 and the closed
right-half complex plane is C+:= z ∈ C | <(z) ≥ 0.
19
Chapter 2. Background
2.1.3 Vectors and Matrices
A real (complex) vector with m elements is denoted Rm (Cm). An m× n real (complex)
matrix is denoted Rm×n (Cm×n). All vectors are considered as columns; so length-m
vectors are identified with m×1 matrices, i.e., Rm = Rm×1 (Cm = Cm×1). The dimensions
of a vector and matrix may be 0. For these degenerate cases, the usual rules for handling
empty matrices (e.g., as used by MATLAB) apply.
To describe components of matrices, we write A ∈ Cm×n as A = [ai,j], where ai,j is
the element of A on the i-th row and the j-th column. We also write a column vector
v ∈ Cm as v = [vi], where vi is the i-th element of v.
Using this above notation, we define basic constant vectors and matrices in Table
2.1. Here, δi,j denotes the Kronecker delta: δi,j =
1, if i = j,
0, otherwise.To avoid visual
Vector or Matrix Definition
Zero vector 0m = [0] ∈ Rm
Constant one vector 1m = [1] ∈ Rm
k-th Euclidean vector ek = [δi,k] ∈ Rm
Zero matrix 0m,n = [0] ∈ Rm×n
Identity matrix Im = [δi,j] ∈ Rm×m
Table 2.1: Basic constant vectors and matrices.
clutter, the dimensions of 0m,n or Im will often be omitted (i.e., written as 0 or I). The
dimensions of Euclidean vectors ek are also usually clear from the context. We use
these to extract components of vectors; in general, eTk [ai] = ak, and eT
k [ai,j]el = ak,l.
The index notation enables systematic and compact representation of matrix opera-
tions. For example, matrix multiplication of A ∈ Cm×p and B ∈ Cp×n is
AB = [ai,k][bk,j] =
[ci,j =
p∑k=1
ai,kbk,j
]∈ Cm×n.
Using this notation, we define basic matrix operations in Table 2.2. Horizontal/vertical
matrix concatenation can be combined in a “row-major” notation, as used in MATLAB.
For the special case of 2 block-rows and block-columns, we have
[[A11,A12]; [A21,A22]] = [A11,A12; A21,A22].
20
Chapter 2. Background
Operation Notation and Definition
Product Cm×n × Cn×p → Cm×p : A,B 7→ AB = [∑n
k=1 ai,kbk,j]
Transpose Cm×n → Cn×m : A 7→ AT = [aj,i]
Horizontal concatenationCm×n1 × Cm×n2 → Cm×(n1+n2) :
A1,A2 7→ [A1,A2] =[A1 A2
]Vertical concatenation
Cm1×n × Cm2×n → C(m1+m2)×n :A1,A2 7→ [A1; A2] = [AT
1 ,AT2 ]T
Table 2.2: Basic matrix operations.
If A ∈ Rn×n is invertible, then its inverse is A−1. We also write A−T = (AT)−1 =
(A−1)T. Given A ∈ Cn×n, the set of eigenvalues of A is denoted σ(A):
(∀A ∈ Cn×n) : σ(A) := λ ∈ C | det(λI −A) = 0.
2.1.4 Special Matrices
For n ∈ N0, various sets of special square matrices in Rn×n are defined in Table 2.3.
Set Description for A ∈ Rn×n Defining properties of A in set
GLn Invertible (∃B ∈ Rn×n) : AB = BA = I
HURn Hurwitz (stable) (∀λ ∈ σ(A)) : <(λ) < 0
SYMn Symmetric AT = A
UT RIn Upper Triangular (∀i, j ∈ [1, n]Z) : i > j =⇒ eTi Aej = 0
LT RIn Lower Triangular (∀i, j ∈ [1, n]Z) : i < j =⇒ eTi Aej = 0
DIAGn Diagonal (∀i, j ∈ [1, n]Z) : i 6= j =⇒ eTi Aej = 0
On Orthogonal ATA = AAT = I
PDn Positive definite (p.d.) (AT = A) ∧ (∀v ∈ Rn − 0)(vTAv > 0)
PSDn Positive semi-definite (p.s.d.) (AT = A) ∧ (∀v ∈ Rn)(vTAv ≥ 0)
Table 2.3: Definitions of special matrices.
Specifying these sets gives us a unified presentation of special matrices, and produces
leaner notations. For instance, we can specify “Let A ∈ PDn∩DIAGn”, instead of “Let
A ∈ Rn×n, so that A > 0 and A is diagonal”.
Clearly, PDn ⊂ PSDn ⊂ SYMn, DIAGn = SYMn ∩ UT RIn = UT RIn ∩
21
Chapter 2. Background
LT RIn = LT RIn ∩ SYMn, PDn ⊂ GLn, On ⊂ GLn, and HURn ⊂ GLn.
If we wish to define special matrix sets whose entries has a restriction different than
R, we would specify the set of interest as a subscript. In particular, let 0, 1n×n as the
set of n× n, 0-1 matrices, then the set of binary diagonal matrices DIAGn0,1 is
DIAGn0,1 := 0, 1n×n ∩ DIAGn. (2.1)
2.2 Large Flexible Space Structures (LFSS)
The main system studied in this thesis is the colocated large flexible space structure
(LFSS). Many definitions pertaining to the LFSS were introduced in Section 1.1.1. In
this section, we supply additional terminologies and technical details.
To better describe the transition from physical systems to abstract models, we define
the following hierarchy:
• Physical LFSS: the actual physical system.
• Full model: a nonlinear, abstract mathematical description of the physical LFSS.
This may be a finite-dimensional lumped-component system or an infinite-dimensional
distributed-parameter system.
• Linear mechanical model: a linearized, finite-dimensional system to represent
the full model, possibly obtained via finite element methods.
• LFSS model in standard form (LFSS): the main model used in this thesis for
control design, represented in modal coordinates, possibly obtained via modal trun-
cation (illustrated in Figure 1.1)
Typically the modelling process proceeds as
Physical LFSS −→ full model −→ linear mechanical model −→ LFSS model(LFSS).
Most of this thesis is concerned with the LFSS model (LFSS). We introduce the
above hierarchy to provide a framework to describe two key problems in LFSS modelling:
parametric uncertainty and spillover effects.
Ultimately we wish to control the physical LFSS. But for concreteness, we define the
full model as the idealized and abstract proxy of the physical LFSS, capturing all system
22
Chapter 2. Background
dynamics with perfect accuracy. We assume that the full model can be linearized into
a possibly infinite-dimensional model. Clearly, the full model and its linearized version
are unattainable abstract entities. Next, we specify the linear mechanical model as a
finite-dimensional approximation of this model, taking concrete numerical values that
are perturbed versions of the ideal. Finally, the LFSS model is obtained by performing
additional simplifications to the linear mechanical model.
Parametric uncertainty accounts for the numerical perturbations that are introduced
in the modelling process, which can introduce numerical errors. We handle this by
imposing robustness on controllers. Spillover effects are concerned with the interaction
between the controller and unmodelled modes in the linearized total model. This is
handled by imposing sensor-actuator colocation. However, under sensor and/or actuator
failures, colocation may no long hold. This poses a key consideration when we consider
fault-tolerant control on the LFSS.
Section 2.2.1 introduces the nominal LFSS model (2.3) used throughout this thesis,
and states key assumptions. The next two sections focus on the derivation of (2.3).
Section 2.2.2 describes the linearized mechanical model of the LFSS. Section 2.2.3 trans-
forms the mechanical model to a modal representation, and then (optionally) applies
modal truncation to obtain (2.3). Finally, Section 2.2.4 discusses spillover effects of the
LFSS.
Our main references on LFSS dynamics and modelling are [3, 39,40,52].
2.2.1 The Colocated LFSS Model in Standard Form
The Main Model
The nominal colocated LFSS model (LFSS) is a linear system with n displacements, m
inputs and outputs, and q independent sources of disturbance, specified by
d+ ∆d+ Ω2d = Lu+ Efw, (2.2a)
y = LTd+ Fw, (2.2b)
e = y − yref , (2.2c)
where d(t) ∈ Rn is the modal displacement, u(t) ∈ Rm is the actuator input,
y(t) ∈ Rm is the physical output (read by sensors), yref ∈ Rm is the constant tracking
reference, w ∈ Rq is the unknown constant disturbance, and e(t) ∈ Rm is the
23
Chapter 2. Background
tracking error. The dimensions of system matrices (Ω2,∆,L,Ef ,F) are clear from the
context.
Figure 2.1: Block diagram of the colocated LFSS model (LFSS).
The block diagram of LFSS (with e) is shown in Figure 2.1.
By defining the aggregate modal state vector x(t) := [d(t); d(t)] ∈ R2n, we can
rewrite (2.2) and obtain the standard form of the LFSS (LFSS):
x =
[0 I
−Ω2 −∆
]︸ ︷︷ ︸
A
x+
[0
L
]︸︷︷︸
B
u+
[0
Ef
]︸ ︷︷ ︸
E
w, (2.3a)
y =[LT 0
]︸ ︷︷ ︸
C
x+ Fw, (2.3b)
e = y − yref . (2.3c)
At runtime, x(t) is not directly accessible. Sensors are used to read y(t), and u(t) is
computed by a controller to achieve control objectives (typically via output feedback).
For numerical examples of LFSS, we will refer to 3 example models of differing com-
plexities. Detailed derivations of these models are found in Appendix B. Summaries for
these models are found in Section B.1.4 for LFSS Benchmark A (p. 200), Section B.2.2
for LFSS Benchmark B (p. 202), and Section B.3.5 for LFSS Benchmark C (p. 225).
System Matrices: Properties and Assumptions
Let us now describe the system matrices (Ω2,∆,L,Ef ,F) in (2.2) and (2.3). Here we
provide only terminologies, properties and assumptions (explicitly or implicitly found
24
Chapter 2. Background
in [61]); full explanations and derivations will be presented later.
Let Ω2 ∈ PSDn ∩ DIAGn be the modal frequency matrix. Since Ω2 has non-
negative diagonal elements, we write
Ω2 = diag(ω21, ω
22, . . . , ω
2n).
Without loss of generality, let ω21 ≤ ω2
2 ≤ . . . ≤ ω2n. For i ∈ [1, n]Z, ωi = 0 is associated
with a rigid body mode; and ωi > 0 is associated with a flexible mode, which has ωi
as its mode frequency. Let n ∈ N0 be the number of rigid body modes in Ω2, i.e.,
n := n− rank Ω2. (2.4)
Our first assumption pertains to n:
Assumption 2.1. There exists a nontrivial rigid body motion in the LFSS: n ≥ 1.
Therefore 0 = ω1 = . . . = ωn < ωn+1 ≤ . . . ≤ ωn. Also, Ω2 ∈ (PSDn − GLn) ∩ DIAGn.
Let ∆ ∈ PSDn be the modal damping matrix. The following relates Ω2 and ∆:
Assumption 2.2. Ω2 and ∆ have the same column space: Img Ω2 = Img ∆.
Since Ω2 and ∆ are both symmetric, so equivalently Ker Ω2 = Ker ∆.
Let L ∈ Rn×m be the colocated modal input/output matrix. Note that L
appears in B, and LT appears in C. Therefore we associate each sensor component eTi y
with the corresponding actuator component eTi u, for i ∈ [1,m]Z. This imposes a sensor-
actuator colocation on the LFSS. As will be discussed in Section 2.2.4, colocation is
essential for preventing the spillover effect.
Assumption 2.3. Individual inputs act on the LFSS independently, or alternatively,
all outputs are independent: rank L = m.
Assumption 2.1 and Assumption 2.2 induce the following structures on Ω2, ∆ and L:
Ω2 =
[0n 0
0 Ω2
], ∆ =
[0n 0
0 ∆
], L =
[L
L
], (2.5)
25
Chapter 2. Background
where Ω2 ∈ PDn−n ∩DIAGn−n, ∆ ∈ PDn−n. L ∈ Rn×m, and L ∈ R(n−n)×m. Here, L is
called the rigid body model input/output matrix, which is extensively throughout
this thesis. We impose another assumption:
Assumption 2.4. The rigid body model input/output matrix has full row rank:
rank(L) = n.
Note that L ∈ Rn×m, but rank L = m (Assumption 2.3); also L ∈ Rn×m, but rank L =
n (Assumption 2.4). Combined with n ≥ 1 (Assumption 2.1), our assumptions lead to
the following bounds on signal dimensions:
1 ≤ n ≤ m ≤ n. (2.6)
Example 2.2. Consider LFSS Benchmark A, which has
Ω2 =
0
1
1.2
, ∆ =
0
0.1
0.12
, L =
0.2887 0.2887 0.2887
−0.7071 0.0000 0.7071
−0.6455 0.1291 −0.6455
.From rank Ω2 = 2, we obtain n = 3 − 2 = 1 ≥ 1, so Assumption 2.1 holds. Img Ω2 =
spane2, e3 = Img ∆, so Assumption 2.2 holds. The columns of L are linearly indepen-
dent, so L has full rank, and Assumption 2.3 holds. Finally, from n = 1 we obtain
Ω2 =
[1 0
0 1.2
]∈ PD2, ∆ =
[0.1 0
0 0.12
]∈ PD2,
L =[0.2887 0.2887 0.2887
], L =
[−0.7071 0.000 0.7071
−0.6455 0.1291 −0.6455
].
Note that rank L = 1 = n, so Assumption 2.4 holds. 4
Finally, Ef ∈ Rn×q is the input disturbance matrix, and F ∈ Rm×q is the output
disturbance matrix. Our LFSS examples specify numerical values for these matrices.
However, these values are “overridden” in some examples, which would specify some
other Ef and F.
26
Chapter 2. Background
2.2.2 The Linear Mechanical Model
Having presented the main LFSS, we now provide a detailed derivation. We assume
that the full model exists, and proceed to approximate it by constructing the linear
mechanical model. One way to do this is to represent the linearized full model as in-
terconnected lumped-elements (Section B.1 and Section B.2). A finite-dimension linear
mechanical model can be derived directly. A second method is to represent the full model
as a distributed parameter system whose dynamics are described by partial differential
equations. In this case, finite element method (Section B.3) can be applied to obtain a
finite-dimensional linear mechanical model.
Some definitions and assumptions from Section 2.2.1 will be restated in the context
of the mechanical model. The equivalence of these definitions and assumptions will be
shown in Section 2.2.3.
Neglecting disturbances, the linear mechanical model1 of an LFSS is a second-order
system with n ∈ N displacements and m ∈ N colocated sensor-actuator pairs:
M0ξ + D0ξ + K0ξ = Λ0u+ Ef0w, (2.7a)
y = ΛT0 ξ + Fw, (2.7b)
where ξ(t) ∈ Rn is the vector of mechanical displacements/slopes (i.e., small angles)
relative to equilibrium, u(t) ∈ Rm is the actuator signal that describes the application
of force (e.g., thrusters) or torque (e.g., momentum wheels) to the LFSS, and y(t) ∈ Rm
is the output displacements or slopes of the LFSS, and w ∈ Rq is the unknown constant
disturbance. Moreover, M0 ∈ PDn is the generalized inertia matrix, to represent
masses or moments of inertia, D0 ∈ PSDn is the generalized damping matrix, to
represent mechanical damping, K0 ∈ PSDn is the generalized stiffness matrix, to
represent elastic deformation, Λ0 ∈ Rn×m is the mechanical input matrix, and Ef0 ∈
Rn×q is the mechanical input disturbance force matrix.
The system is colocated, i.e., Λ0 is used to specify actuator input, and ΛT0 is used
to specify sensor output.
1In some cases, linear electrical components of the full model can be incorporated by this model.However, for simplicity we will exclude this interpretation.
27
Chapter 2. Background
Rigid Body and Flexible Body Motions
Consider Ker K0 = ξ ∈ Rn | K0ξ = 0. Physically, this is the subspace of mechanical
displacements/slopes that cause no elastic deformations in the LFSS. Typically Ker K0
corresponds to translations and/or (linearized) rotations of the LFSS, and is therefore
called the space of rigid body motions of the LFSS. An orthogonal basis for Ker K0
can be determined, which constitute rigid body modes. The number of independent
rigid body modes needed to span Ker K0 is designated n:
n := dim Ker K0 = n− rank K0. (2.8)
Later we will show that this is equivalent to n defined in (2.4). Meanwhile, from As-
sumption 2.1, we obtain n ≥ 1.
Computing the orthogonal complement of Ker K0 yields (Ker K0)⊥ = Img KT0 =
Img K0, which characterizes the flexible body motion of the LFSS.
We can apply a similar analysis as the above to D0: Ker D0 = ξ ∈ Rn | D0ξ = 0 is
the space of ξ in which there is no energy loss due to damping. Its orthogonal complement
Img D0 characterizes the space of ξ in which energy is lost. Let us now restate Assumption
2.2 in terms of the mechanical model (2.7):
Assumption 2.2 (Restated). Mechanical damping is always present in the flexible
body motion of the LFSS, and is always absent in the rigid body motion. As a result,
we have Img K0 = Img D0 (equivalently, Ker K0 = Ker D0).
We also restate Assumption 2.3:
Assumption 2.3 (Restated). Individual inputs act on the LFSS independently, or
alternatively, all outputs are independent: rank Λ0 = m.
The equivalence of the different forms of Assumption 2.2 and Assumption 2.3 will be
addressed in Section 2.2.3.
28
Chapter 2. Background
Example 2.3. For LFSS Benchmark A (Appendix B.1.1), from (B.1) we obtain
M0 =
1
10
1
, D0 =
0.1 −0.1 0
−0.1 0.2 −0.1
0 −0.1 0.1
, K0 =
1 −1 0
−1 2 −1
0 −1 1
.It is easy to show M0 ∈ PD3, K0 ∈ PSD3, and D0 ∈ PSD3. Next,
Ker K0 = span
1
1
1
, Img K0 = span
1
−1
0
, 0
1
−1
.
So n = 1, and the rigid body motion corresponds to horizontal translation of all 3
components. Finally, Ker D0 = span[1; 1; 1] = Ker K0, so Assumption 2.2 holds. 4
Lumped Component Method and Finite Element Method
The LFSS mechanical model (2.7) requires M0 ∈ PDn, D0 ∈ PSDn, and K0 ∈ PSDn
to be determined. We will discuss two ways to specify an LFSS model and determine
these matrices: the lumped component method and the finite element method.
When applying the lumped component method, an LFSS is modelled as discrete
masses that are connected by springs and damping elements (dashpots). The states of
the system consists of displacements and velocities of each mass, with respect to some
equilibrium in which each spring is in neutral position and stores no energy. Small
rotational motion (involving angles, torques, moments of inertia, tortional springs, etc.)
can be incorporated by linearization.
Well-known techniques in classical mechanics can be applied to determine M0, D0,
and K0. The effects of actuator forces/torques on ξ give rise to Λ0 ∈ Rn×m. Colocation
is achieved by making measurements along the direction of force/torque application.
The lumped component method is helpful in obtaining examples for illustrative pur-
poses (LFSS Benchmark A, LFSS Benchmark B). However, to derive complex and real-
istic LFSS models, the finite element method is more suitable (LFSS Benchmark C).
When applying the finite element method (FEM), the LFSS is initially modelled
as a distributed parameter system. Displacements can be represented as a continuous
function relative to an equilibrium surface. System dynamics are specified as partial
differential equations, or abstracted into energy functions using Hamiltonian mechanics
29
Chapter 2. Background
[28]. In general, an LFSS can have complex geometry, under which analytical solutions
do not exist. FEM is used to extract an approximation of the total system, and proceeds
as follows: first, the LFSS is partition2 into numerous elements, each having a simple
geometry. Each element is then parameterized using a finite number of variables, which
are coefficients of various interpolating functions defined on the element. The dynamics
of each element are computed separately, and then reassembled to form M0, D0, and K0.
A detailed example of how FEM is carried out in Section B.3.
Comments on Damping
A full treatment of mechanical damping in LFSS would be beyond our scope. However,
we will emphasize two key points. First, mechanical damping, although always present in
elastic body motion (Assumption 2.2), is usually very weak in an LFSS. This is due to the
microgravity environment and the absence of atmospheric drag. As a result, mechanical
vibration is pronounced in LFSS, and active vibration suppression is essential.
The second issue is that the mechanical vibration in an LFSS is difficult to charac-
terize. Therefore an accurate representation of D0 matrix is often unavailable. However,
since the effects of damping are weak, it is common practise to impose various structural
assumptions on D0 to facilitate analysis.
Comments on Disturbances
Two types of disturbances are considered in (2.7): actuator disturbance Ef0w and output
disturbance Fw. Actuator disturbance is represented by an extra constant forcing term
in the equation (2.7a). This term can represent an external force applied on the LFSS,
such as the solar wind or an unresponsive “stuck-on” thruster. Output disturbance is
represented as an extra constant added to the output equation (2.7b).
It may seem redundant to specify disturbances as Ef0w and Fw; why not just use two
constant vectors? Our main motivation to use this notation is to retain the form of a
general servomechanism problem, in which w may arise from a more general exosystem.
We can interpret Ef0w as actuator noise that adversely affects the system dynamics.
From (2.7b) y = ΛT0 ξ + Fw, one may be inclined to interpret Fw as sensor noise that
distorts the “true output” ΛT0 ξ. However, this is an incorrect interpretation! Instead, y is
always the “true output”, and Fw acts as an unknown external influence that contributes
2“Partition” not in the strict definition, since elements can have shared boundaries.
30
Chapter 2. Background
to the overall physical output, in addition to the contribution ΛT0 ξ from the states.
It is to be noted that the assumption on constant disturbances can be restrictive in
some situations. In particular, the case of periodic disturbances is not incorporated in
this model.
Extra Measurable Outputs
In our main reference [61], the LFSS model includes “extra measurable outputs” along
with matching colocated inputs. The LFSS model in this thesis omits these extra mea-
surable outputs. The main reason is that including these terms would be inconvenient,
since many expressions would be duplicated.
If we wish to include extra outputs/inputs, we may m′ ≤ m as the number of outputs
to be tracked, yrefp ∈ Rm′ as the new tracking references, and
ep = Py − yrefp ,
where P = [Im′ ,0m−m′ ] ∈ Rm′×m is a matrix that extracts the output components we
wish to track, thus leaving the other components as “extra measurable outputs”. The
control goal is to have limt→∞ ep(t) = 0. Note that the setup can also be extended by
making P ∈ Rm′×m general. We will briefly explore a similar setup in Section 3.4.3.
For every (P ,yrefp ), we can solve for yref ∈ Rm so that yref
p = Pyref , which leads
to y − yref → 0 =⇒ Py − yrefp → 0. So for simplicity, we will not consider extra
outputs/inputs in our development.
2.2.3 Transformation to Modal Representation
The LFSS mechanical model (2.7) may have a very high dimension. We now show how
to use modal representation and obtain (2.3), which enables modal truncation.
Derivation of the modal representation is commonly found in work relating to vi-
brational mechanics and space systems [3, 39, 52]. A typical derivation is to solve for
vibration modes, and show that these form a complete basis, which are used to simul-
taneously diagonalize M0 and K0. We shall adopt a different approach: derive the final
result first by matrix transforms, and then interpret the result as vibration modes.
From (2.7) we have obtained M0 ∈ PDn, and K0 ∈ PSDn ⊆ SYMn. Applying
Lemma A.17 to these yields T0 ∈ GLn that simultaneously diagonalizes M0 and K0 by
31
Chapter 2. Background
congruent transformations:
TT0 M0T0 = I, TT
0 K0T0 ∈ DIAGm ∩ PSDm, (2.9)
where TT0 K0T0 ∈ PSDm follows from Lemma A.4. We define this matrix as Ω2, along
with other matrices:
Ω2 := TT0 K0T0 ∈ DIAGn ∩ PSDn, (2.10a)
∆ := TT0 D0T0 ∈ PSDn, (2.10b)
L := TT0 Λ0 ∈ Rn×m, (2.10c)
Ef := TT0 Ef
0 ∈ Rn×q. (2.10d)
Define modal state d ∈ Rn by d := T−10 ξ. Therefore ξ = T0d, which we substitute
into (2.7) to obtain
M0T0d+ D0T0d+ K0T0d = Λ0u+ Ef0w,
y = ΛT0 T0d+ Fw,
Left-multiplying the first equation by TT0 results in
(TT0 M0T0)d+ (TT
0 D0T0)d+ (TT0 K0T0)d = (TT
0 Λ0)u+ (TT0 Ef
0)w.
Finally, applying (2.9) and (2.10) results in the standard LFSS model (2.3):
d+ ∆d+ Ω2d = Lu+ Efw, (2.2a)
y = LTd+ Fw. (2.2b)
Now, since T0 ∈ GLm, so rank Ω2 = rank TT0 K0T0 = rank K0. Therefore the definition
of n in (2.4) and (2.8) are consistent. And since Ω2 ∈ DIAGm, so n diagonal elements
take the value of 0, and the remaining n− n elements are positive.
The transformation matrix T0 ∈ GLn is not unique. In particular, (2.9) is still
satisfied if we replace T0 ← T0P, where P ∈ On can permute columns of T0. The end
result is that diagonal elements of Ω2 become arbitrarily permuted. So without loss of
generality, we can assume that the diagonal elements of Ω2 are sorted by non-decreasing
32
Chapter 2. Background
magnitude, i.e.,
Ω2 = diag(ω21, . . . , ω
2n), 0 = ω1 = . . . = ωn < ωn+1 ≤ . . . ≤ ωn. (2.11)
From the alternative form of Assumption 2.2 (p. 28), we have Img K0 = Img D0. This is
equivalent to Img K0T0 = Img D0T0, and then Img Ω2 = Img TT0 K0T0 = Img TT
0 D0T0 =
Img ∆, i.e., the original form of Assumption 2.2 (p. 25). Of course, this leads to the struc-
tures of Ω2, ∆, and L in (2.5).
We can similarly reconcile the two forms of Assumption 2.3 by noting that L = TT0 Λ0.
Analysis and Insights
Let us now state the well-known modal-analysis interpretation of the LFSS (2.3).
Consider the homogeneous equation of (2.7) without damping, and juxtapose it with
the transformed version with ξ = T0d:
M0ξ + K0ξ = 0, (2.12)
d+ Ω2d = 0. (2.13)
Recall from (2.11), that the diagonal elements of Ω2 are sorted. Let d = [d1; . . . ; dn],
and so (2.13) consists of n decoupled scalar equations di + ω2i di = 0 for i ∈ [1, n]Z. The
solutions of these equations are affine functions di(t) = ai+ bit (for some ai, bi ∈ R) when
ωi = 0 (i.e., i ∈ [1, n]Z), or sinusoids di(t) = ci cos(ωit − θi) (for magnitude ci ∈ R and
phase θi ∈ [0, 2π)R) when ωi > 0 (i.e., i ∈ [n + 1, n]Z). We combine these solutions into
the vector d(t) (2.13), and transform it back to the physical displacement vector ξ(t):
d(t) =n∑i=1
(ai + bit)ei +n∑
i=n+1
(ci cos(ωit− θi)) ei,
ξ(t) =n∑i=1
(ai + bit)T0ei +n∑
i=n+1
(ci cos(ωit− θi)) T0ei. (2.14)
Definitions and insights from this result:
• For i ∈ [1, n]Z, each (ωi = 0,T0ei) pair is called a rigid body mode, and T0ei is
the rigid body mode shape.
• For i ∈ [n + 1, n]Z, each (ωi > 0,T0ei) pair is called a flexible body mode. ωi
33
Chapter 2. Background
is the mode frequency and T0ei is the vibration mode shape. Physically, if
ξ(0) = T0ei and ξ(0) = 0, then ξ(t) = cos(ωit)ξ(0), i.e., the LFSS undergoes
simple harmonic motion.
• The solution (2.14) of the homogeneous LESS (2.12) is a superposition of non-
interacting rigid and vibrating modes. This is why (2.3) is called the modal rep-
resentation of the LFSS.
• Suppose we reintroduce the damping term D0ξ, or ∆d. If ∆ ∈ DIAGn, then
modes are non-interacting once again. Otherwise the modes will affect one another
via damping, but the effect would be weak.
• We can interpret L ∈ Rn×m as how each input component eTj u for j ∈ [1,m]Z
is “coupled” to each modal displacement eTi d for i ∈ [1, n]Z. Let L = [`i,j]
ji . If
`i,j = 0, then the j-th input acts on a node of the i-th vibration mode, and cannot
(intentionally or unintentionally) affect this mode. Moreover, by colocation, `i,j = 0
implies that the dynamics of the i-th mode would not contribute to the j-th output.
2.2.4 Spillover Effects and Sensor-Actuator Colocation
Modal truncation is a method to reduce the dimensionality of the LFSS, thereby facili-
tating LFSS design and simulation. However, the truncated modes may be inadvertently
excited by a poorly designed controller, leading to instability. This phenomenon is called
“spillover effects”. This problem can be solved by imposing sensor-actuator colocation.
We also introduce the rigid body model.
Modal Truncation
The LFSS model obtained from FEM often has a high n, and is therefore impractical
for analysis and simulation. In Section 1.1.1, we introduced modal truncation, which
produces an approximation of the LFSS by discarding vibration modes (usually high-
frequency), and keeping the rigid modes and a finite number of vibration modes (see
Figure 1.1).
34
Chapter 2. Background
Let us consider (2.10) and (2.2), and rewrite (d,Ω2,∆,L,Ef) as
d =
dd1
d2
, Ω2 =
0n 0 0
0 Ω21 0
0 0 Ω22
, ∆ =
0n 0 0
0 ∆1 ∆T3
0 ∆3 ∆2
, L =
L
L1
L2
, Ef =
Ef
Ef1
Ef2
.where d(t), d1(t), and d2(t) are modal states corresponding to rigid body modes, modelled
vibration mode, and unmodelled vibration modes, respectively.
Modal truncation removes all dynamics related to d2, thereby changing (2.2) to
d2
dt2
[d
d1
]+
[0n 0
0 ∆1
]d
dt
[d
d1
]+
[0n 0
0 Ω21
][d
d1
]=
[L
L1
]u+
[Ef
Ef1
]w,
ytrunc =[LT LT
1
] [ dd1
]+ Fw.
where ytrunc ∈ Rm, and is a “low-pass” approximation of y. Therefore modal truncation
alters the system parameters by (n,∆,Ω2,L,Ef)old −→ (n,∆,Ω2,L,Ef)new. As long as
n ≥ m for the new modal-truncated parameters, then the assumptions and the properties
of the system matrices are preserved, and the form of the LFSS (2.3) is unchanged.
Our description of modal truncation seems to suggest that unmodelled modes are
obtained and explicitly removed. But in practise, one can directly obtain low-frequency
modes of the LFSS numerically or experimentally.
Spillover Effects
The modes d2 are excluded in a mode-truncated model. However, these modes are
present in the linearized full model. More specifically, d2 contribute to the physical
output y via LT2 , are affected by the input u via L2, and interact with d1 via ∆3. Since
∆ = [∆1, ∆T3 ; ∆3, ∆2] is positive definite, the interaction between d1 and d2 dissipates
energy, and is not a concern. However, the interaction of d2 with controller via y and u,
if not properly managed, can cause instability, as shown in the following example:
Example 2.4. Let us consider LFSS Benchmark A, but discard sensor/actuator pair 3,
35
Chapter 2. Background
and assign Ef = 0 and F = 0 for simplicity. So u,y ∈ R2, and we obtain
Ω2 =
0
1
1.2
, ∆ =
0
0.1
0.12
, L =
0.2887 0.2887
−0.7071 0
−0.6455 0.1291
. (2.15)
Applying modal truncation to remove eT3 d results in
Ω2t =
[0
1
], ∆t =
[0
0.1
], Lt =
[0.2887 0.2887
−0.7071 0
]. (2.16)
Let us apply the following proportional and derivative (PD) output-feedback controller
(i.e. assuming yref = 0):
u = −KPy −KDy. (2.17)
To obtain the closed loop system, we apply this to x = Ax + Bu, y = Cx (2.3), while
noting that CB = 0. This results in
x = Ax+ Bu = Ax−B(KPCx+ KDCx)
= (A−BKPC)x−BKD(CAx+CBu)) = (A−BKPC−BKDCA)x.
If we choose KP = [0, 1;−1, 0] and KD = [0, 1;−1, 0], then applying the PD controller
on the modal-truncated system (2.16) yields closed loop eigenvalues −0.0086 ± j0.9992
and −0.0414 ± j0.2000i, i.e., the system is asymptotically stable (although barely so).
However, applying the PD controller to (2.15) yields eigenvalues 0.0231± j1.1071,
−0.0831± j0.2732, −0.0500± j0.9987, i.e., the full model becomes unstable!
If we choose KP = [1, 0; 0, 1] and KD = [1, 0; 0, 1], then the PD controller stabilizes
the modal-truncated model (eigenvalues −0.3247± j1.1856 and −0.0586± j0.3667) and
the full model (−0.5395± j1.3196, −0.0567± j0.3598, and −0.0638± j1.0528). 4
So from the example, we see that it is possible to design a controller that stabilizes
the truncated system, but becomes unstable when applied to the full model. This is an
example of spillover effects described in Section 2.2.4.
36
Chapter 2. Background
Sensor-Actuator Colocation
A well-established method to prevent spillover effects in LFSS is to use colocated sensors
and actuators [7,39]. For a more comprehensive explanation, we refer the reader to these
references. Meanwhile, let us provide a quick illustration (but not full proof) of this fact.
Given an LFSS (2.3) with an arbitrary finite number of modes, suppose that a PD
controller (2.17) using output feedback is applied. In Example 2.4, the resulting closed
loop system matrix was shown to be A − BKPC − BKDCA. Rewriting this using
(∆,Ω2,L) yields
A−BKPC−BKDCA =
[0 I
−Ω2 − LKPLT −∆− LKDLT
].
Next, under colocation, Ω2+LKPLT and ∆+LKDLT are symmetric. From Lemma A.20,
these matrices are p.d., and a well-known fact is that the closed-loop system matrix is
stable as a result3This result holds regardless of the number of vibration modes included
in the model. Therefore a colocated LFSS can be stabilized by an output feedback
controller (we used a PD controller), so that the spillover effect is prevented.
The Rigid Body Model
Remove all flexible modes and ignoring disturbances results in the rigid body model:
¨d = Lu, y = LTd,
which is also written as (for x = [d;˙d])
˙x =
[0 I
0 0
]x+
[0
L
]u,
y =[LT 0
]x,
(2.18)
where y ∈ Rm. The rigid body model (in particular L) is easily determined by simulation
or experiments than the LFSS. Moreover, it plays a key role in the development of our
main results.
3We will restate this result in Corollary 4.5.
37
Chapter 2. Background
2.3 Decentralized Robust Servomechanism Problem
of the LFSS (DRSP)
The decentralized robust servomechanism problem for the nominal LFSS (DRSP) is a
problem that was formulated and solved in [61]. Our goal in this thesis is to extend
DRSP by applying a fault tolerant control framework (Section 2.4). In this section, we
define decentralized control of the LFSS, state the DRSP in detail, and present the main
results from [61].
2.3.1 Decentralized Control of Colocated LFSS
Let us consider an output-feedback controller for the LFSS. The physical output y ∈ Rm
of the LFSS (2.3) is measured by sensors. This results in measured output ym ∈ Rm.
Next, a controller takes ym and computes actuator input u ∈ Rm. Finally, u is passed
to the LFSS’s actuators. For the nominal LFSS, we can assume that ym = y. This will
change once we consider sensor and/or actuator failures (Section 2.4.1).
A controller that uses ym(t) to generate u(t) without restricting how components of
ym(t) can be used to compute components of u(t) is called a centralized controller.
Such a controller typically reads sensors measurements from all over the LFSS, performs
computation in a single location, and then dispatches control signals to each actuator.
This control scheme typically has a high communication overhead.
By contrast, a decentralized controller [61] is a modular design that uses N ∈N local controllers (designated Sii∈[1,N ]Z) to control the LFSS. In this approach,
sensors and actuators are each partitioned into N (vector) components; so ym and u
are partitioned into (ym1 , . . . ,y
mN) and (u1, . . . ,uN), respectively. For each i ∈ [1, N ]Z,
Si reads ymi and generates ui. Local controllers do not directly communicate with one
another.
We want to maintain colocation in local controllers. This is specified by keeping each
sensor/actuator pair within the same local controller. Therefore Si (for each i ∈ [1, N ]Z)
has mi ≥ 0 colocated inputs and outputs, where m = m1 + m2 + . . . + mN . The new
local signals and their aggregate versions are specified in Table 2.4:
38
Chapter 2. Background
Signal Name Local Signals Aggregate Signal
Actuator input ui(t) ∈ Rmi u = [u1;u2; . . . ;uN ]
Physical output yi(t) ∈ Rmi y = [y1;y2; . . . ;yN ]
Measured output ymi (t) ∈ Rmi ym = [ym
1 ;ym2 ; . . . ;ym
N ]
Tracking reference (constant) yrefi ∈ Rmi yref = [yref
1 ;yref2 ; . . . ;yref
N ]
Tracking error ei(t) ∈ Rmi e = [e1; e2; . . . ; eN ]
Table 2.4: Local signals and their aggregated versions.
The decentralized LFSS (also designated LFSS) is defined as
x =
[0 I
−Ω2 −∆
]x+
N∑i=1
[0
Li
]ui +
[0
Ef
]w, (2.19a)
yi =[LTi 0
]x+ Fiw, i ∈ [1, N ]Z, (2.19b)
ei = ymi − yref
i , i ∈ [1, N ]Z. (2.19c)
So for each i ∈ [1, N ]Z, Si reads ymi , takes yref
i , evaluates ei, and generates ui. Also,
Li ∈ Rn×mi , Fi ∈ Rmi×q satisfy
L =[L1 . . . LN
], F =
F1
...
FN
.Note that (2.19) resembles (2.3) superficially. The key difference is that in (2.3), no
constraints were imposed on how ym (= y) is used to produce u by output feedback. By
contrast, (2.19) requires that only ymi is used to generate ui, i.e., decentralized control is
a restriction on information flow on generating controller signals from measurements.
We consider the LFSS models (2.3) and (2.19) to be equivalent, and designate both
of them by LFSS. However, for conciseness we would prefer to use (2.3) in our derivation
and proofs. The decentralization structures of controllers will be specified as constraints,
which will be apparent when we specify these controllers in detail.
39
Chapter 2. Background
2.3.2 Problem Definition
The decentralized robust servomechanism problem for the LFSS (DRSP) is as
follows. Given an LFSS (2.3), find a decentralized controller (Section 2.3.1) so that:
〈A1〉 Every eigenvalue of the resulting closed loop system is found in the open left half
plane.
〈A2〉 Asymptotic tracking and regulation occurs, i.e., limt→∞ e(t) = 0, for all constant
references yref ∈ Rm, all constant disturbances w ∈ Rq, and all initial conditions
of the system.
〈A3〉 Property 〈A2〉 holds for all perturbations of the LFSS that do not cause the resulting
controlled system to become unstable. This includes the case of any unmodelled
elastic modes in (2.3).
The robustness condition in 〈A3〉 applies the notion of “perturbation” given in
[19]: (C,A,B) are modified so that each matrix element is shifted by an amount whose
magnitude is bounded by some ε > 0. For a sufficiently small ε, all closed loop system
produced from a fixed stabilizing controller would be stable for all perturbed systems.
〈A3〉 requires that these closed loop system also need to satisfy property 〈A2〉.In 〈A3〉, the “unmodelled elastic modes” specification is mainly intended for modal-
truncated LFSS. For these models, property 〈A2〉 must continue to hold even when the
given LFSS is augmented with additional flexible modes (thereby increasing n). The
original colocation property would continue to hold; this is important to ensure that a
stabilizing controller would continue to function (i.e., this prevents spillover effects).
2.3.3 Solution
Necessary and sufficient conditions for the DRSP to have a solution are given by the
following theorem proved in [61]:
Theorem 2.1. Given an LFSS (2.3), the following are equivalent:
〈M1〉 There exists a solution to the DRSP, i.e., a decentralized controller for (2.19)
that satisfies properties 〈A1〉–〈A3〉.
40
Chapter 2. Background
〈M2〉 The LFSS (2.3) has no transmission zeros [22] at 0, i.e.,
0 /∈
λ ∈ C
∣∣∣∣∣ rank
[A− λI B
C 0
]< 2n+m
.
〈M3〉 The LFSS (2.3) has no decentralized fixed modes at 0, i.e., (in the case of linear
control)
0 /∈⋂
K∈Rm×m
σ (A−BKC) .
〈M4〉 The LFSS rigid body model (2.18) has no decentralized fixed modes at 0, i.e.,
(in the case of linear control)
0 /∈⋂
Ki∈Rmi×mi | i∈[1,N ]Z
σ (A−B× block diag(K1, . . . ,KN)×C) .
〈M5〉 The LFSS rigid body model (2.18) is controllable, i.e.,
rank
[0
L
];
[0 I
0 0
][0
L
]; . . . ;
[0 I
0 0
]n−1 [0
L
] = 2n.
〈M6〉 rank(L) = n, where L ∈ Rn×m is defined in (2.5).
The proofs will not be reproduced here. However, for insight, we note that 〈M2〉–〈M5〉 can be reformulated equivalently (noting that a matrix has no 0 eigenvalues ⇔ it
is invertible ⇔ it has full rank) to
〈M2〉 rank
[A B
C 0
]= 2n+m.
〈M3〉 (∃K ∈ Rm×m) : rank(A−BKC) = 2n.
〈M4〉 (∃Ki ∈ Rmi×mi | i ∈ [1, N ]Z) : rank
A−B
K1
. . .
KN
C
= 2n.
〈M5〉 rank
[0 L
L 0
]= 2n.
Therefore 〈M2〉–〈M6〉 can all be expressed as some rank condition. 〈M6〉 is the most
concise among these, and will play an essential role in this thesis.
41
Chapter 2. Background
Proportional-integral-derivative (PID) controllers are well-known and are widely
applied. A family of PID controllers that solves the DRSP is stated below [61]:
Theorem 2.2. Assume that the DRSP for an LFSS (2.19) has a solution. Consider
a decentralized controller in which each local controller Si, i ∈ [1, N ]Z applies the fol-
lowing local implementation of the decentralized tuning PID controller (DCtrl):
ui = −KPi ei −KD
i ei − εKIiηi, (2.20a)
ηi = ei = ymi − yref
i , (2.20b)
where4 KP/D/Ii ∈ PDmi, and ηi ∈ Rmi is the local integrator state. Then there
exists ε? > 0 such that properties 〈A1〉–〈A3〉 hold for all ε ∈ (0, ε?)R.
Here, “tuning” refers to the ability to adjust ε > 0 in the designing of the DCtrl (2.23)
for the LFSS. A suitable ε ∈ (0, ε?)R is obtainable by applying a 1-dimensional search,
using methods found in [17, 20, 48]. To choose suitable KP/D/I1 , . . . ,K
P/D/IN , the methods
in [21,61] can be applied.
We can combine KP/D/I1 , . . . ,K
P/D/IN into combined gain matrices KP/D/I ∈ PDm,
and η1, . . . ,ηN into combined integrator state η ∈ Rm:
KP/D/I := block diag(KP/D/I1 , . . . ,K
P/D/IN ), (2.21)
η := [η1; . . . ;ηN ]. (2.22)
The combined actions of the local controllers from (2.20) can be represented as
u = −KPe−KDe− εKIη, (2.23a)
η = e = ym − yref . (2.23b)
Throughout this thesis, we will assume that KP/D/I ∈ PDm is block-diagonal in the form
in (2.21). Note that this automatically holds if KP/D/I ∈ DIAGm.
2.4 Fault Tolerant Control (FTC) of the LFSS
In Section 1.1.3, we introduced basic definitions for fault-tolerant control (FTC), and in
Section 1.2 we reviewed related work. We now provide technical details related to FTC.
42
Chapter 2. Background
Specifically, we will present the sensor and/or actuator failure (SAF) model, define the
LFSS model with failure (LFSSF), and provide additional reviews on fault diagnosis.
2.4.1 Sensor and/or Actuator Failures
The main types of faults considered in this thesis are sensor and/or actuator failures
(SAF). Only total-failures are considered, i.e., failed sensors or actuators become “stuck”
at 0. To develop the SAF model, we begin from a decentralized perspective (i.e., for local
controllers), and then present a unified, centralized framework that is easier to work with.
Let us consider a local controller Si, i ∈ [1, N ]Z, which reads local physical output
yi ∈ Rmi , produces local measured output ymi ∈ Rmi , and then computes local actuator
input ui ∈ Rmi .
Sensor Failure
Sensor failures may occur in each component of local output yi. Recall that eTj yi is the
j-th component of yi, where j ∈ [1,mi]Z. We are focusing on total failures, so a sensor
failure in eTj yi is modelled by assigning eT
j ymi = 0. The physical output quantity eT
j yi(t)
(which is the main focus of the DRSP) still exists, but sensor failure makes it inaccessible
to Si. In summary:
eTj y
mi =
0 , if sensor j of Si has a failure,
eTj yi, if sensor j of Si is healthy.
This is represented by defining the local sensor failure matrix Fyi ∈ DIAG
mi
0,1 by
(∀j ∈ [1,mi]Z) : eTj F
yi ej =
0, if sensor j of Si has a failure,
1, if sensor j of Si is healthy,(2.24)
Therefore sensor failures are modelled as a multiplicative fault:
ymi = Fy
i yi, ∀i ∈ [1, N ]Z.
If Si has no sensor failures, then Fyi = Imi
, i.e., for the nominal case we have ymi = yi.
For example, if mi = 4, and a sensor failure occurs on the 1st and 3rd components of
43
Chapter 2. Background
yi, then we would specify
Fyi = diag(0, 1, 0, 1) =
0
1
0
1
∈ DIAG40,1.
If sensor failures are diagnosed, then our model can represent more general classes
of sensor failures (beyond total failure), for which the controller purposely ignoring the
signal, thus making the sensor signal effectively 0. However, if passive FTC without
diagnosis is considered, then we are limited to a total failure model, which requires a
failed sensor to “die” and produce a readout of 0.
Actuator Failure
Actuator failures may occur in each component of local input ui. Recall that eTj ui is
the j-th component of ui, where j ∈ [1,mi]Z. We are focusing on total failures, so an
actuator failure in eTj ui is modelled by assigning 0 as the corresponding input into the
LFSS. Similar to the sensor failure case, we define the local actuator failure matrix
Fui ∈ DIAGn0,1 by
(∀j ∈ [1,mi]Z) : eTj Fu
i ej =
0, if actuator j of Si has a failure,
1, if actuator j of Si is healthy.(2.25)
We consider ui as “intended” signals for the physical actuators, and is unaffected by the
presence of actuator failures. Instead, under actuator failures we perform the following
substitution:
ui ← Fui ui, ∀i ∈ [1, N ]Z,
in the LFSS dynamics (2.19). Unlike the sensor failure case, we do not define a new signal
for this. If Si has no actuator failures, then Fui = Imi
.
If actuator failures are diagnosed, then our model can represent more general classes of
actuator failures (beyond total failure), for which the controller deactivating the actuator,
thus making the actuator signal effectively 0. However, if passive FTC without diagnosis
is considered, then we are limited to a total failure model, which requires a failed actuator
44
Chapter 2. Background
to “go limp” and apply no force/torque to the LFSS.
Our framework can actually model a more general class actuator failure, and in par-
ticular, the case where a failed actuator is stuck at some non-zero constant. We can
represent such an offset by modelling it as a component of the input disturbance Efw.
Unfortunately, this generalization does not extend to the case of stuck-at-constant sensor
failures; as mentioned in Section 2.2.2, Fw is a contributing part to the physical output
yref , and should not be considered as some offset arising from sensor failure.
Combined Failure
We define local combined failure matrix Fi ∈ DIAGn0,1 by
(∀j ∈ [1,mi]Z) : eTj Fej =
0, if sensor j and/or actuator j of Si has a failure,
1, if sensor j and actuator j of Si are healthy,
(2.26)
∴ Fi := Fyi Fu
i , ∀i ∈ [1, N ]Z.
Also, if Si has no SAF, then Fi = Imi.
To simplify terminology, we say that the physical output component eTj yi for j ∈
[1,mi]Z is a healthy output if its corresponding sensor and actuator are healthy. Also,
eTj yi is called a failed output if its corresponding sensor or actuator has failed.
Centralized Perspective
We introduced SAF in terms of local controllers, but for derivations and proofs, it is
more convenient to consider a centralized perspective to produce single matrices. Let
the sensor failure matrix Fy ∈ DIAGm0,1, the actuator failure matrix Fu ∈DIAGm0,1, and the combined failure matrix F ∈ DIAGm0,1 be defined as follows:
Fy := block diag(Fy1 , . . . ,F
yN), (2.27)
Fu := block diag(Fu1 , . . . ,Fu
N), (2.28)
F := block diag(F1, . . . ,FN) = FyFu. (2.29)
45
Chapter 2. Background
This allows us to write the measured output ym ∈ Rm as
ym = [ym1 ; . . . ;ym
N ] = [Fy1y1; . . . ;Fy
NyN ] = Fyy.
To represent actuator failures, we would substitute u← Fuu.
We can use failure matrices to specify components of the physical output. The pro-
totypical example is “healthy outputs asymptotically approaches zero”, which is written
“limt→∞Fy(t) = 0.” Here, Fy acts as a “filter” that nullifies failed output components
so that they become irrelevant.
We will abuse notation slightly, and express the set of healthy outputs by Fy. For
example, if F = diag(0, 1, 1, 0), then the set of healthy outputs eT2 y, e
T3 y would be
referred to as Fy; and the nullified components eT1 y, e
T4 y by (I −F)y. Table 2.5 lists
some extensions of this notation, by applying Fy and Fu. A similar representation is
Output subsets Notation
Healthy outputs FyFailed outputs (failed sensors or failed actuators) (I −F)y
Outputs with failed sensors (I −Fy)y
Outputs with failed actuators (I −Fu)y
Outputs with healthy actuators and failed sensors Fu(I −Fy)y
Outputs with healthy sensors and failed actuators Fy(I −Fu)y
Outputs with failed sensors and failed actuators (I −Fy)(I −Fu)y
Table 2.5: Specifying various failure-related subsets of y using Fy, Fu and F .
applied to signals other than y. For example, Fe specifies tracking error components
corresponding to healthy sensor/actuator pairs; and (I−F)yref specifies output reference
components corresponding to failed sensors or failed actuators.
In general, Boolean functions on sensor/actuator failures can be constructed with
failure matrices using some integer combination of I,Fy,Fu,F. This uses the fact
that for a, b ∈ 0, 1, NOT a = 1 − a, a AND b = ab, a2 = a, and any logical gates
can be constructed with AND and NOT (e.g., a OR b = a + b − ab). The matrix Fy
represents the predicate “healthy sensors”, and Fu represents the predicate “healthy
actuators”. The above computation readily extends to matrix computation. This leads
to “extractors” to specify and select desired component of y, ym = Fyy, e, yref , or η.
46
Chapter 2. Background
2.4.2 The LFSS Model with Failure (LFSSF)
Applying the SAF model developed in Section 2.4.1 to the LFSS results in the LFSS
model under SAF (LFSSF):
x =
[0 I
−Ω2 −∆
]︸ ︷︷ ︸
A
x+
[0
L
]︸︷︷︸
B
Fuu+
[0
Ef
]︸ ︷︷ ︸
E
w, (2.30a)
y =[LT 0
]︸ ︷︷ ︸
C
x+ Fw, (2.30b)
ym = Fyy, (2.30c)
e = y − yref . (2.30d)
em = ym − yref . (2.30e)
This is a generalization of the nominal LFSS (2.3), which can be recovered by assigning
Fy = Fu = Im. The names and dimensions of various signal vectors in the LFSS are
summarized in Table 2.6 (note that x = [d; d]). The LFSS is colocated, but LFSSF may
Name Signal
Modal displacement d(t) ∈ Rn
Modal state x(t) ∈ R2n
Actuator input u(t) ∈ Rm
Physical output y(t) ∈ Rm
Measured output ym(t) ∈ Rm
Tracking reference (constant) yref ∈ Rm
Disturbance (constant) w ∈ Rq
Tracking error e(t) ∈ Rm
Measured tracking error em(t) ∈ Rm
Table 2.6: List of signals in LFSSF.
be non-colocated if Fy 6= Fu. This presents new challenge in controlling LFSSF, since
spillover effects need to be taken into consideration once again.
47
Chapter 2. Background
2.4.3 Fault Diagnosis
The main FTC goal in this thesis is to perform fault accommodation on the LFSSF.
However, in our efforts to develop a passive FTC scheme for the LFSSF (Chapter 4),
an opportunity to perform fault diagnosis on SAF arises, and is subsequently developed
(Section 5.1). So as background, let us review some well-known fault diagnosis frame-
works for linear systems. The methods presented here are not implemented in this thesis,
but may be relevant for future development. Our main references are [8, 23,57–59,67].
We shall focus on on-line fault diagnosis of linear systems, in which runtime infor-
mation from a linear system is used to deduce the existence and location of faults. Basic
definitions in FTC and fault diagnosis were presented in Section 1.1.3.
Typically, fault diagnosis in a linear system proceeds as follows: at runtime, u(t) and
(measured) y(t) and are used to generate a residual signal r(t), which has the property
that r(t) = 0 if and only if no faults are present. A decision system then takes r(t) and
produces hypotheses on the existence (i.e., fault detection) and/or location (i.e., fault
isolation) of faults. System structure and properties that enable r(t) to be defined and
computed are known as analytical redundancies.
What follows is a high-level overview of well-known existing fault diagnosis frame-
works. Using the classification in [67], we will focus on model-based (instead of model-
free) and quantitative (instead of qualitative) methods of fault diagnosis. Therefore we
assume that the structure of the plant and the fault model are known.
Parity Space Approaches
A parity space approach checks the consistency of a system’s nominal dynamics from
measured data. As a basic example (simplified from [23]), let y = Cx+ ∆y, where ∆y
is an unknown additive fault. If there exists V so that VC = 0, then Vy = V∆y, i.e.,
x has been “decoupled”, and some information on ∆y can be determined. Given this
goal, one proceeds to find conditions and algorithms to enable the extraction of ∆y.
A more general approach utilizes a system’s temporal behaviour. For example, con-
sider the following discrete-time linear system with additive failures:
x(k + 1) = Ax(k) + Bu(k) + Fxf(k),
y(k) = Cx(k) + Du(k) + Fyf(k),
48
Chapter 2. Background
where f(k) is the additive failure. System dynamics may be used to derive linear rela-
tionships among x,u,y,f at k, k − 1, . . . , k − s, for some s. By cancelling x, linear
relations among u(k), . . . ,u(k − s),y(k), . . . ,y(k − s) (known as parity relations) are
determined. These parity relations can then used to generate the residual r(t), which
should depend solely on f(k), . . . ,f(k − s). Input and output disturbances can also be
incorporated into this framework. This would then require state and disturbances to be
decoupled to obtain parity relations. In general, the existence and the properties (e.g.,
the quantity s) of parity relations are highly dependent on the system considered, which
also determine the extent to which f(k) can be recovered.
For continuous linear time-invariant systems, one can obtain parity relations by con-
sidering high-order derivatives of the state, output, and input. An implementation of this
scheme would require the application of estimation filters (details are provided in [8]).
State Estimation Approaches
The main idea of state estimation approaches is that an observer can be used to estimate
the state x(k), from which residuals can be derived. For example, one can take “the
most reliable output(s)” as the input to the observer, use it to computes a state estimate
x(k), which is then use to produce an estimation y(k) of all other outputs. The residual
is calculated by r(k) = y(k)− y(k).
Different state estimation approaches are obtained by specifying different observer
designs. For example, the feedback loop in an observer can be designed to decouple the
effects of faults or unknown inputs [23]. One can also implement multiple observers to
takes different components of y(k) as inputs, or to have different specializations with
regard to fault sensitivity. This is also called the dedicated observer approach.
For stochastic discrete-time linear systems, a Kalman filter is used instead of an
observer. Fault diagnosis would involve statistical tests. Like the dedicated observer
approach, one can specify multiple Kalman filters. This is also called the multiple-
model approach.
Multiple-model approaches can be used for more generic classes of faults, including
partial failures and/or incipient faults arising from structural changes. A basic scheme
would implement multiple Kalman filters are independent from one another. However,
interacting multiple-model approach (IMM) [65, 68] extends the above by mixing
the state estimates from the multiple models, and using the results to generate control.
49
Chapter 2. Background
More specifically, a probability distribution is specified for the multiple models, and
is dynamically updated. This distribution provides diagnosis results, and is used as
weighting factors to produce a feedback controller for the main system.
Parameter Estimation Approaches
A parameter estimation [23] (or parameter identification) approach expresses the math-
ematical models of a given system in terms of physical parameters. Faults occur when
these parameters are altered. So the main goal of fault diagnosis is to determine these
parameters from observed data. These parameters are then compared to known values
for a nominal plant and/or various failure models. This generates the desired residual
vectors, from which fault hypotheses are made.
An advantage of parameter estimation approaches is that by expressing faulty plants
in terms of parameters, it can cover a continuum of failed plant models. This property
can be applied to diagnose incipient faults.
Joint State and Parameter Estimation Approaches
By treating parameters as a special state, one may apply a common framework to perform
joint state and parameter estimation. This approach is applied in [64, 66, 69], in which
actuator failures are represented as a parameter that is multiplied to inputs, and also has
dynamics of its own. To estimate states (for feedback control) and parameters (for FTC),
a two-stage adaptive Kalman filter is used. The resulting system can handle incipient
faults, and is applied to perform integrated fault diagnosis and fault accommodation.
50
Chapter 3
Active Fault-Tolerant Control of
Large Flexible Space Structures
using a PID Controller
In Chapter 2, the following are introduced: the decentralized colocated LFSS model
LFSS (2.3), the decentralized robust servomechanism problem DRSP of the LFSS, the
decentralized tuning PID controller DCtrl (2.23), and the sensor and/or actuator failure
(SAF) model, which when applied to the LFSS yields the LFSSF. For the DRSP of the
LFSS, necessary and sufficient conditions for a solution to exist [61] are given in Theorem
2.1. Moreover, if a solution exists, then Theorem 2.2 states that the controller DCtrl
(2.23) can be used to solve the DRSP.
In this chapter, we will extend these DRSP results for the LFSSF. Section 3.1 derives
the nominal closed loop system (CLS). Section 3.2 states the main problem (DRSPF),
which is a generalization of the DRSP that takes SAF (assumed to be known) into con-
sideration. Section 3.3 presents the fault-accommodating decentralized tuning PID con-
troller (DCtrlFA), and shows detailed analysis on how it can be used to solve the main
problem DRSPF. Section 3.4 presents the derivation of the steady-state output matrices
for the CLSF. The steady-state output matrices can be used to develop a feed-forward
control, which enables limited recovery of tracking objectives for failed sensors and ac-
tuators. Finally, Section 3.5 lists detailed examples and specific applications of the main
result.
Materials from this chapter up to and including Section 3.4 have been published in a
compressed form in [32].
51
Chapter 3. Active FTC of LFSS using a PID Controller
3.1 The Nominal Closed Loop System
Applying the decentralized tuning PID controller DCtrl (2.23) to the nominal colocated
large flexible space structure LFSS (2.3) yields the nominal closed loop system. This has
been studied in [61], but we present its derivation since we will examine it in detail.
3.1.1 Derivation
We apply the DCtrl (2.23) to the LFSS (2.3) to obtain a closed loop system. We begin
by eliminating y and isolating e and e (noting from (2.3) that CB = 0 and CE = 0):
e = ym − yref = y − yref = Cx+ Fw − yref ,
e = y = Cx = CAx+*
0CBu+
*0
CEw = CAx.
Substitute these into u, then into the expressions for x and η:
u = −KP(Cx+ Fw − yref)−KDCAx− εKIη,
x = Ax−B(KP(Cx+ Fw − yref) + KDCAx+ εKIη
)+ Ew
= (A−BKPC−BKDCA)x− εBKIη + BKPyref + (E−BKPF)w,
η = Cx+ Fw − yref .
Expanding A−BKPC−BKDCA yields the following:
A−BKPC−BKDCA =
[0 I
−Ω2 −∆
]−
[0
L
]KP[LT 0
]−
[0
L
]KP[0 LT
]=
[0 I
−Ω2 − LKPLT −∆− LKDLT
].
We now concatenate the system states x and η into an aggregate state [x;η] = [d; d;η].
The combined dynamics form the nominal LFSS closed loop system (CLS):[x
η
]= A
[x
η
]+ Brefyref + Bww, (3.1a)
y = C
[x
η
]+ Fw, (3.1b)
52
Chapter 3. Active FTC of LFSS using a PID Controller
where A ∈ R(2n+m)×(2n+m), Bref ∈ R(2n+m)×m, Bw ∈ R(2n+m)×q, and C ∈ Rm×(2n+m) are
A =
0 In 0
−Ω2 − LKPLT −∆− LKDLT −εLKI
LT 0 0
, (3.2)
Bref =
0
LKP
−Im
, Bw =
0
Ef − LKPF
F
, (3.3)
C =[
LT 0 0]. (3.4)
Theorem 2.2 (which was taken from [61]) states that if KP/D/I ∈ PDm, then for
sufficiently small ε > 0, the CLS is asymptotically stable, i.e., σ(A) ⊂ C−.
3.1.2 Insights
The high-level block diagram of a closed loop system obtained by applying a generic
decentralized controller to the LFSS is shown in Figure 3.1. A particular form the de-
Figure 3.1: An LFSS with a generic decentralized controller.
centralized controller is the DCtrl (2.23) and so Figure 3.1 also describes the CLS (3.1).
Note that the constant tracking reference yref and the (unknown) constant disturbance
w are considered as inputs to the closed loop system.
For concreteness, in our development we will focus on a class of decentralized PID
controller based on the DCtrl. However, following the development in [61], our main
results are applicable to a more general class of controllers. For illustrative purposes and
to appeal to the generalized perspective, we will present block diagram manipulations
(such as Figure 3.1) alongside detailed algebraic manipulations.
53
Chapter 3. Active FTC of LFSS using a PID Controller
3.2 Decentralized Robust Servomechanism Problem
for LFSS under Failure (DRSPF)
We have seen how the DRSP for the LFSS (2.3) can be solved, and that if a solution
exists, then the DCtrl (2.23) can be used. However, under SAF, the past results are no
longer applicable, and control objectives (in particular, stability, tracking and disturbance
regulation) are no longer satisfied. Therefore we need to design a new controller that
would allow the system to tolerate SAF. To this end, we first state key assumptions on
the nature of and the knowledge on SAF. These enable us to state our main problem:
The decentralized robust servomechanism problem for LFSS under failure (DRSPF).
3.2.1 The Effect of Failures
Recall that under failures (Fy,Fu), the LFSS (2.3) becomes the LFSSF (2.30), which was
found to be
x =
[0 I
−Ω2 −∆
]︸ ︷︷ ︸
A
x+
[0
L
]︸︷︷︸
B
Fuu+
[0
Ef
]︸ ︷︷ ︸
E
w, (2.30a)
y =[LT 0
]︸ ︷︷ ︸
C
x+ Fw, (2.30b)
ym = Fyy, (2.30c)
e = y − yref . (2.30d)
em = ym − yref . (2.30e)
Figure 3.2 depicts the closed loop system formed by applying a generic output-feedback
decentralized controller to an LFSSF. We see that fault matrices form an “interface
layer” between the nominal LFSS and the decentralized controller. The decentralized
controller is now given the measured output ym = Fyy. And instead of u, the signal
Fuu is applied to the LFSS. We have defined y independently (instead of just writing
ym = FyCx + FyFw) to emphasize that the physical output y is still defined, even
though it is inaccessible to the controller.
LFSSF is defined by grouping the LFSS with (Fy,Fu) (the shaded area in Figure 3.2).
The FTC problem involves finding a new controller that would accommodate this trans-
54
Chapter 3. Active FTC of LFSS using a PID Controller
Figure 3.2: An LFSSF with a decentralized controller.
formed plant. Alternatively, we can group (Fy,Fu) with the decentralized controller;
thus the FTC problem involves compensating for a “handicapped” controller for a nom-
inal LFSS. We will primarily follow the first perspective, but the other perspective (or
other combinations) can offer interesting insights.
Using the first perspective, under SAF the controller receives ym = Fyy instead of
y. So the DCtrl (2.23) becomes
u = −KPem −KDem − εKIη,
η = em = ym − yref .
Applying the DCtrl on the LFSSF does not yield the CLS (3.1), and so conditions 〈A1〉–〈A3〉 may cease to hold.
Example 3.1. All LFSS examples are described in detail in Appendix B. Consider LFSS
Benchmark A (described in Section B.1), and a DCtrl (2.23) specified by the following:
KP = 2×
1 0.2 0.2
0.2 1 0.2
0.2 0.2 1
, KD = 14×
1 0.2 0.2
0.2 1 0.2
0.2 0.2 1
, KI =
1 0.2 0.2
0.2 1 0.2
0.2 0.2 1
,and ε = 0.2. Note that the controller in this case is centralized (i.e., N = 1). Next, we
choose yref = [1;−1; 2] and assignw = [1; 1; 1]. Simulations plots are shown in Figure 3.3,
which simulates the nominal plant (with 0-initial condition) for 50 s, before introducing
a (a) sensor failure or (b) actuator failure to the second output/input.
For the sensor failure case, we see that eT1 y increases without bound under sensor
failure in eT1 y (note that this problem goes undetected due to actuator failure). Therefore
the system is unstable; so 〈A1〉 ceases to hold.
55
Chapter 3. Active FTC of LFSS using a PID Controller
0
10
20
y1
−1
0
1
2
y2
0 50 100 150
1
1.5
2
y3
Time(sec)
−1
0
1
y1
−1
0
1
2
y2
0 50 100 150
1
1.5
2
y3
Time(sec)
(a) Sensor failure in eT1 y. (b) Actuator failure in eT
1 u.
Figure 3.3: LFSS Benchmark A controlled by a DCtrl, with a failure occurs at t = 50 s(Dashed lines depict the nominal case).
For the actuator failure case, we see that eT1 y remains constant, and thus the plant
remains stable (about some equilibrium). However, the tracking objective for eT1 y 6→
eT1 y
ref = 1, i.e., the tracking objective in 〈A2〉 ceases to hold. In fact, we also see
“collateral damage” in the other two outputs. This phenomenon was also observed for
the sensor failure case. 4
In general, SAF changes the closed loop matrix A (3.2) to the following: 0 In 0
−Ω2 − LFuKPFyLT −∆− LFuKDFyLT −εLFuKI
FyLT 0 0
. (3.6)
Using Figure 3.2 as a guide, we can obtain this by symbolically replacing L← LFu (for
B) and LT ← FyLT (for C) in (3.2).
The closed loop matrix (3.6) may become unstable. And even if stable, since the
LFSSF is in general not colocated, so the spillover effect can cause instability in the
physical LFSS.
3.2.2 Assumptions on Failures
To develop our main problem, we need to state some assumptions on SAF first.
56
Chapter 3. Active FTC of LFSS using a PID Controller
Assumption 3.1. Sensor and/or actuator failures are diagnosed, and there is a
bounded delay between fault occurrence (changes to Fy and Fu) and fault diagno-
sis (Fy and Fu are available).
Fault diagnosis and fault accommodation are often considered as separate problems,
and Assumption 3.1 is stated to let us focus on fault accommodation for the LFSSF, and
not worry about details on how Fy and Fu are obtained. As a result of this assumption,
we are primarily concerned with active FTC of the LFSSF. In Chapter 4, we will relax
Assumption 3.1 and consider passive FTC of the LFSSF.
Assumption 3.2. Faults are permanent, i.e., once eTj yi (or eT
j ui) is nullified due
to a fault, it will remain at zero thereafter.
The purpose of Assumption 3.2 is to prevent the pathological situation in which
fault occurrence and fault recovery produce periodic switching of the system, which can
introduce instability in the overall system. Alternatively, we may opt for a less restrictive
condition, and simply require faults to be “quasi-static” by imposing that a finite number
of failure transition (occurrence and recovery) may occur within the foreseeable time
horizon.
3.2.3 Problem Definition
We now state the decentralized robust servomechanism problem for the LFSSF
(DRSPF), which is the main problem that we wish to solve in this chapter.
Given an LFSS (2.3), find a decentralized controller so that: (I) Conditions 〈A1〉–〈A3〉are all satisfied for the nominal LFSS (2.3), and (II) when failures occur and transform
(2.3) to the LFSSF (2.30), the closed loop system under the controller satisfies:
〈B1〉 Every eigenvalue of the resulting reduced-order closed loop system is contained in
the open left half plane.
〈B2〉 Asymptotic tracking and regulation occur for healthy outputs, i.e., limt→∞Fe(t) =
0, for all constant references yref ∈ Rm, all constant disturbances w ∈ Rq, and all
initial conditions of the system.
57
Chapter 3. Active FTC of LFSS using a PID Controller
〈B3〉 Property 〈B2〉 holds for all perturbations of the LFSS that do not cause the resulting
controlled system to become unstable. This includes the case of any unmodelled
elastic modes in (2.3).
The DRSPF is a generalization of the DRSP, since 〈B1〉–〈B3〉 degenerate to 〈A1〉–〈A3〉for the nominal LFSS with F = I.
3.3 Fault Accommodation
Having specified the assumptions on SAF and the main problem DRSPF, we proceed to
develop and analyze a fault accommodation scheme to achieve active FTC.
First we present the fault-accommodating decentralized tuning PID controller (DCtrlFA),
which is obtained by applying failure-dependent controller adjustments to the DCtrl. Ap-
plying the DCtrlFA to the LFSSF yields a new closed loop system CLSF. Although the CLSF
contains eigenvalues at 0, detailed analysis shows that these 0 eigenvalues do not partici-
pate in plant dynamics, and can therefore be eliminated. Finally, we obtain necessary and
sufficient conditions for the DRSPF to have a solution under DCtrlFA. This constitutes the
main results of this chapter (Theorem 3.2). Using ideas from [25], the main results can
be extended and applied to decentralized controllers that are more general than DCtrlFA.
We end this section with a discussion on how choosing diagonal gains enables us to only
require diagnosis of sensor failures, and allow unknown actuator failures to be present.
3.3.1 Controller Adjustments
To solve the DRSPF, we now propose a number of modifications to the DCtrl. Suppose
that a failure is detected in eTj yi or eT
j ui for some i ∈ [1, N ]Z, j ∈ 1, 2, . . . ,mi. We
propose that control agent Si makes the following adjustments:
〈C1〉 If an actuator failure is detected on eTj ui, then the sensor signal eT
j ymi is ignored
(i.e., eTj y
mi is set to 0).
〈C2〉 If a sensor failure is detected on eTj yi, then the actuator signal eT
j ui is deactivated
(i.e., eTj ui is set to 0).
〈C3〉 The tracking set point eTj y
refi is set to 0.
〈C4〉 The tracking error integral signal eTj ηi is set to 0.
58
Chapter 3. Active FTC of LFSS using a PID Controller
Adjustments 〈C1〉 and 〈C2〉 ensure that eTj y
mi = 0 if and only if eT
j ui = 0. As a result,
the LFSSF (2.30) appears colocated. Adjustment 〈C3〉 imposes that eTj ηi = eT
j ei = 0
(since η = Fym−Fyref), so eTj ηi will not grow without bound. Adjustment 〈C4〉 assigns
eTj ηi to 0, so eT
j ηi does not add a constant disturbance to the system.
The controller obtained from applying adjustments 〈C1〉–〈C4〉 to the DCtrl (2.23) is
called the fault-accommodating decentralized tuning PID controller (DCtrlFA),
and is given by
ui = −Fi(KPi Fiei + KD
i Fiei + εKIiFiηi), ∀i ∈ [1, N ]Z (3.7a)
ηi = Fiei = Fiymi −Fiyref
i . ∀i ∈ [1, N ]Z (3.7b)
In centralized form, this becomes
u = −F(KPFe+ KDF e+ εKIFη),
= −F(KPF(ym − yref) + KDF ym + εKIFη),(3.8a)
η = Fem = Fym −Fyref . (3.8b)
These adjustments are carried out by substituting ym ← Fym = Fy, u ← Fu, yref ←Fyref (hence em ← Fem = Fe), and η ← Fη. Note that the expressions for u and η
are each written in different forms. The first form is more compact, and the second form
more accurately describes the physical implementation of the controller.
Adjustments 〈C1〉–〈C4〉 are implemented by control agents upon diagnosing a failure.
Since SAF are defined in finite time (Assumption 3.1), and since the LFSSF is a linear
system, so between fault occurrence and fault diagnosis, LFSS states and outputs remain
finite. Since we are interested in the asymptotic behaviour, so we will ignore this transient
period, before 〈C1〉–〈C4〉 are applied.
c© IEEE, reprinted with permission.
Figure 3.4: The structure of a decentralized colocated controller [32].
59
Chapter 3. Active FTC of LFSS using a PID Controller
A key observation is that to implement the DCtrlFA, the diagnoser does not need to
distinguish a sensor failure in eTj yi from an actuator failure in eT
j ui.
We will focus on using the DCtrlFA to solve the DRSPF. This provides us with a
concrete closed loop system from which results can be derived. However, we wish to
consider a more general class of controllers. To this end, we define a decentralized
colocated controller of the LFSSF (2.30) as a stable controller that has the structure
shown in Figure 3.4, which can be considered as a generic decentralized controller with
adjustments 〈C1〉–〈C3〉 applied. More precisely, a decentralized colocated controller that:
• Is independent of (I − F)y, i.e., it ignores all failed outputs. In Figure 3.4, this is
represented by pre-multiplying input ym by F .
• Is independent of (I −F)yref .
• Generates a control signal u that satisfies Fu = u.
The DCtrlFA (3.8) is an instance of such a controller. Note that 〈C4〉 is absent in Figure
3.4. This is because the adjustment 〈C4〉 is specific to the DCtrlFA; its role is to reset
misleading information stored in integral components in DCtrlFA.
3.3.2 The LFSSF Closed Loop System under DCtrlFA (CLSF)
Let us apply the DCtrlFA to the LFSSF (2.30). First, we define the effective modal
stiffness matrix Keff ∈ Rm×m and the effective modal damping matrix Deff ∈Rm×m as
Keff = Ω2 + LFKPFLT, (3.9)
Deff = ∆ + LFKDFLT. (3.10)
60
Chapter 3. Active FTC of LFSS using a PID Controller
Figure 3.5: An LFSSF combined with a DCtrlFA results in a CLSF.
Let AF ∈ R(2n+m)×(2n+m), BrefF ∈ R(2n+m)×m, Bw
F ∈ R(2n+m)×q, and C ∈ Rm×(2n+m) be
AF =
0 In 0
−Keff −Deff −εLFKIFFLT 0 0
, (3.11)
BrefF =
0
LFKPF−F
, BwF =
0
Ef − LFKPFF
FF
, (3.12)
C =[
LT 0 0].
Using a similar derivation as in Section 3.1.1, we obtain the LFSSF closed loop system
under DCtrlFA (CLSF), which is a generalization of the CLS (3.1):[x
η
]= AF
[x
η
]+ Bref
F yref + Bw
Fw, (3.13a)
y = C
[x
η
]+ Fw, (3.13b)
ym = Fy. (3.13c)
Recall that y represents “physical” outputs that are defined independently of sensors,
whereas ym = Fyy represents sensor readings. Fym = FFyy = Fy is passed to the
DCtrlFA (3.8).
Recall that the decentralized colocated controller (Figure 3.4) is a generalization of
the DCtrlFA. Applying this controller to the LFSSF would result in the closed loop system
shown in Figure 3.5. The effects of controller adjustments 〈C1〉–〈C3〉 compared to the
baseline (i.e., no 〈C1〉–〈C3〉 blocks in Figure 3.5) are represented by the following algebraic
61
Chapter 3. Active FTC of LFSS using a PID Controller
substitutions: L ← LF , LT ← FLT, KP/D/I ← FKP/D/IF , and yref ← Fyref . Indeed,
applying these to the CLS (3.1) yields the CLSF.
Remark: By Assumption 3.2, the number of step changes that appears in the con-
troller (caused by fault or by adjustments 〈C1〉–〈C4〉) will be finite. Therefore switching
will not affect the asymptotic behaviour of the closed loop system, and in particular will
not cause instability.
3.3.3 Reduced LFSS Closed Loop System with Failure
When a failure occurs, the closed loop system AF will have eigenvalues at 0. However,
these eigenvalues are associated with the controller, and are rendered inert by 〈C3〉 and
〈C4〉. Therefore these 0 eigenvalues do not participate in CLSF dynamics. To facilitate
analysis, we now transform the CLSF into an equivalent reduced system.
Let us define m? ∈ Z as the number of healthy outputs, i.e., 1’s in F , or
m? := rank(F) ≤ m. (3.14)
Also, let the fault reduction matrix R ∈ Rm?×m be
R := F with all 0-rows removed. (3.15)
Without loss of generality, we may assume
F =
[Im? 0
0 0
], R =
[Im? 0
]. (3.16)
From these special forms, we arrive at the following identities:
F =
[R0
]=[RT 0
]= RTR, Im? = RRT, RF = R.
Next, L? ∈ Rn×m?, F? ∈ Rm?×q and KP?/D?/I? ∈ Rm?×m?
are defined as
L? = LRT, (3.17)
F? = RF, (3.18)
KP?/D?/I? = RKP/D/IRT. (3.19)
62
Chapter 3. Active FTC of LFSS using a PID Controller
These enable us to write LFKP/D/IF = LRTRKP/D/I[RT 0
]=[L?KP?/D?/I? 0
].
Using the above, we rewrite AF, BwF , and Bref
F as
AF =
0 In 0 0
−Keff −Deff −εL?KI? 0
L?T 0 0 0
0 0 0 0
,
BrefF =
0 0
L?KP? 0
−Im? 0
0 0
, BwF =
0
Ef − L?KP?F?
F?
0
.
The bottom block-row of AF, BrefF , and Bw
F are all 0, as are the rightmost block-column
of AF and BrefF . Components of η corresponding to these 0 blocks are fixed at 0 by
adjustments 〈C3〉–〈C4〉, and do not influence other variables. To remove these inert
states, we define
y? := RFym = Ry = R(LTd+ Fw),
yref? := Ryref ,
η? := Rη,
construct
A?F =
0 In 0
−Keff −Deff −εL?KI?
L?T 0 0
, (3.20)
Bref?F =
0
L?KP?
−Im?
, Bw?F =
0
Ef − L?KP?F?
F?
, (3.21)
C?F =
[L?T 0 0
], (3.22)
63
Chapter 3. Active FTC of LFSS using a PID Controller
and form the reduced LFSS closed loop system with failure (Red(CLSF)):[x
η?
]= A?
F
[x
η?
]+ Bref?
F yref? + Bw?F w,
y? = C?F
[x
η?
]+ F?w.
(3.23)
Compared to the original matrices in CLSF, these matrices all have reduced heights. A?F
and Bref?F also have reduced widths. The new output and measurement (now equal) is
y? ∈ Rm?. Keff and Deff are same as before, and can be written as
Keff = Ω2 + L?KP?L?T, Deff = ∆ + L?KD?L?T.
The Red(CLSF) (3.23) has the same form as the CLS (3.1); this can be verified by sub-
stituting η ← η?, ym ← y?, yref ← yref?, L← L?, F← F? and KP/D/I ← KP?/D?/I?.
The generalization of the Red(CLSF) is shown in Figure 3.6. This is similar to Figure
Figure 3.6: An LFSSF combined with a colocated controller.
3.5, but with F replaced with R or RT. The controller (grey box on the right) for
the LFSSF has the exact same input/output behaviour as the decentralized colocated
controller in Figure 3.4. However, the “internal” decentralized controller only ignores the
useless 0 components from Fym and Fyref (projected away by R), and generates some
reduced control signal u?, which is then “0-padded” to generate u = RTu?.
In general, F may not take the form of (3.16). However, we can permute the ordering
of outputs/inputs of the LFSSF (2.30), and obtain an equivalent system with F in (3.16).
We can then carry out the reduction in this section, undo the permutation of the η
components in the Red(CLSF) (3.23), and obtain a desired reduced system.1 Note that
1The transformed LFSSF (2.30) would lose the original decentralized structure, but this is compen-
64
Chapter 3. Active FTC of LFSS using a PID Controller
in general, RTR = F , RRT = Im? , and the Red(CLSF) structure in (3.23) all hold.
3.3.4 Reduced Colocated LFSS Model
Figure 3.7: Interrelationships among systems defined to solve the DRSPF.
Figure 3.7 lists the systems that we have defined so far to solve the DRSPF. Starting
from the LFSS (2.3), there are three development paths. The first path (right of LFSS)
shows that applying the DCtrl (2.23) to the LFSS (2.3) results in the CLS (3.1). The
DRSP, Theorem 2.1, and Theorem 2.2 are defined for and applied to this path. The
second path (top) shows that augmenting the LFSS (2.3) with (Fy,Fu) results in the
LFSSF (2.30). We then apply the DCtrlFA (3.8) to produce the CLSF (3.13), which is
reduced to Red(CLSF) (3.23). The DRSPF is defined on the second path, but Theorem
2.1 and Theorem 2.2 cannot be applied, because the LFSSF (2.30) is not colocated.
Now we introduce the third path in Figure 3.7 (bottom). From the LFSS (2.3), we will
construct the LFSS? (3.24), which is an abstract colocated LFSS to assist in our proofs.
Next, we will define the controller DCtrl? (3.26). Applying it to the LFSS? (3.24) will
result in a system called the CLS?. We will show that the CLS? has the same structure as
the Red(CLSF) (3.23). Therefore the third path admits Theorem 2.1 and Theorem 2.2,
which can now be applied to prove our main theorem involving the DRSPF.
Given an LFSS (2.3) and failure matrices Fy and Fu (thus defining F = FyFu, R,
sated by a proper choice of KP/D/I ∈ PDm (which in particular, can be diagonal).
65
Chapter 3. Active FTC of LFSS using a PID Controller
and m? = rank(F)) the reduced colocated LFSS model (LFSS?) is defined as
x =
[0 In
−Ω2 −∆
]︸ ︷︷ ︸
A
x+
[0
L?
]︸ ︷︷ ︸
B?
u? +
[0
Ef
]︸ ︷︷ ︸
E
w,
y? =[L?T 0
]︸ ︷︷ ︸
C?
x+ F?w,
e? = y? − yref?,
(3.24)
where u? ∈ Rm?, y? ∈ Rm?
, yref? := Ryref ∈ Rm?, L? = LRT, and F? = RF.
The LFSS? (3.24) has the structure of a colocated LFSS (2.3), under the substitutions
B ← B?, C ← C?, F ← F?, ym ← y?, and yref ← yref?, (A, n and E are unchanged).
The counterpart of the LFSS rigid body model (2.18) of the LFSS? (3.24) is the LFSS?
rigid body model:
˙x =
[0 In
0 0
]x+
[0
LRT
]u,
y =[RLT 0
]x,
(3.25)
where L is defined in (2.5). We will see this model again in Theorem 3.2.
The decentralized structures of the LFSS? (3.24) are as follows: For each i ∈ [1, N ]Z,
let m?i = rank(Fi) ≤ mi. We define Ri ∈ Rm?
i×mi , L?i ∈ Rn×m?
i and F?i ∈ Rm?
i×q as
Ri := Fi with all 0-rows removed,
L?i := LiRT
i , F?i := RiFi.
Note that m?i = 0 is allowed; we can apply usual calculation rules for empty matrices.
The inputs and outputs of the LFSS? (3.24) are u?i ∈ Rm?i , and y?i ∈ Rm?
i , where:
u? = [u?1;u?2; . . . ;u?N ]; y? = [y?1;y?2; . . . ;y?N ];
m? = m?1 +m?
2 + . . .+m?N , m?
i ≥ 0, i ∈ [1, N ]Z.
yref?i and e?i , i ∈ [1, N ]Z are similarly defined.
To control the LFSS? (3.24), we can apply a DCtrl that takes the form of (2.23). Let
66
Chapter 3. Active FTC of LFSS using a PID Controller
us call this the DCtrl?:
u?i = −KP?i e
?i −KD?
i e?i − εKI?
i η?i ,
η?i = y?i − yref?i .
(3.26)
The associated gains are specified by KP?/D?/I?i ∈ PDmi , i ∈ [1, N ]Z: Applying the DCtrl?
(3.26) to the LFSS? (3.24) results in a closed loop system called CLS?, which is obtained
by substituting L ← L?, F ← F? and KP/D/I ← KP?/D?/I? in the CLS (3.1). A key
observation is that the CLS? is identical to the Red(CLSF) (3.23).
The general case is illustrated in Figure 3.8. Observe that this is an identical closed
Figure 3.8: A second perspective of the system in Figure 3.6.
loop system to Figure 3.6. However, the R and RT “layer” is combined with the LFSSF
(2.30), which results in the colocated LFSS?. The “inner controller” is now just a regular
controller that takes yref? and controls the LFSSF. In summary, the LFSSF (2.30) under
a decentralized colocated controller (Figure 3.4) results in a closed loop system that is
identical to a LFSS? (3.24) under some decentralized controller.
3.3.5 Reducing the DRSPF to the DRSP
Recall that Theorem 2.1 and Theorem 2.2 cannot be directly applied to solve the DRSPF,
because the LFSSF (2.30) may not be colocated. However, the Red(CLSF) (3.23) and the
CLS? have an identical form. This suggests that the DRSPF on the LFSSF (2.30) can be
reduced to the DRSP on the LFSS? (3.24). We formalize this idea in Lemma 3.1:
Lemma 3.1. Let the LFSS (2.3) and failure matrices Fy, Fu (resulting in F , R,
m? = m?1 + m?
2 + . . . + m?N) be given. Let [K
P/D/Ii ∈ Rmi×mi ]i∈[1,N ]Z and [K
P?/D?/I?i ∈
67
Chapter 3. Active FTC of LFSS using a PID Controller
Rm?i×m?
i ]i∈[1,N ]Z satisfy KP/D/Ii ∈ PDmi and K
P?/D?/I?i := RiK
P/D/Ii RT
i ∈ PDm?i for all
i ∈ [1, N ]Z. Let ε > 0. Then the following statements are equivalent:
〈D1〉 The DCtrlFA (3.8) constructed from [KP/D/Ii ]i∈[1,N ]Z and ε satisfies conditions
〈B1〉–〈B3〉 for the LFSSF (2.30).
〈D2〉 The DCtrl? (3.26) constructed from [KP?/D?/I?i ]i∈[1,N ]Z and ε satisfies conditions
〈A1〉–〈A3〉 for the LFSS? (3.24).
Proof. The LFSSF (2.30) and LFSS? (3.24) are defined from the LFSS and F . The DCtrlFA
(3.8) and the DCtrl? (3.26) are determined from the given [KP/D/Ii ]i∈[1,N ]Z , [K
P?/D?/I?i ]i∈[1,N ]Z
and ε. Applying the DCtrlFA (3.8) to the LFSSF (2.30) results in a CLSF that reduces to
a Red(CLSF) (3.23). Applying the DCtrl? (3.26) to the LFSS? (3.24) results in a CLS?. In
this proof, 〈B1〉–〈B3〉 are stated for the LFSSF (2.30), and 〈A1〉–〈A3〉 are stated for the
LFSS? (3.24).
(〈B1〉 ⇔ 〈A1〉) Since by definition, KP?/D?/I? := RKP/D/IRT, this implies that the
Red(CLSF) (3.23) and CLS? have identical structures, and thus identical eigenvalues.
(〈B2〉 ⇔ 〈A2〉) 〈B2〉 and 〈A2〉 respectively state:
(∀yref ,w,x(0),η(0)) : limt→∞Fe(t) = 0,
(∀yref?,w,x(0),η?(0)) : limt→∞
e?(t) = 0.
The Red(CLSF) (3.23) and the CLS? are identical, so ifRyref = yref?, Rη(0) = η?(0), then
for common w and x(0), both systems will produce the same x(t) and e(t). Let us write
Fe(t) = RTRe(t), and e?(t) = y?(t) − yref? = R(y(t) − yref) = Re(t). Suppose 〈B2〉holds. For any given yref? (and η?(0)), we can define yref (η(0)) by zero-padding, so that
Ryref = yref? (Rη(0) = η?(0)). Note that RFe(t) = R(RTRe(t)) = (RRT)(Re(t)) =
e?(t), since RRT = I. Thus Fe(t)→ 0 implies e?(t)→ 0, and 〈A2〉 holds. Conversely,
suppose 〈A2〉 holds. For any given yref (and η(0)) we assign yref? := Ryref (η?(0) :=
Rη(0)) and then RTe?(t) = Fe(t), so e?(t)→ 0 implies Fe(t)→ 0, i.e., 〈B2〉.
(〈B3〉 ⇔ 〈A3〉) This follows from the equivalence of Red(CLSF) and CLS?.
The lemma follows from the above equivalences.
68
Chapter 3. Active FTC of LFSS using a PID Controller
3.3.6 Existence of Solution to the DRSPF using the DCtrlFA
Let the LFSS (2.3) and failure matrices Fy, Fu be given, from which we obtain F = FyFu
(2.29) and R (3.15). Our main result for solving the DRSPF is presented below.
Theorem 3.2. The following are equivalent:
〈E1〉 The DRSPF can be solved by using a DCtrlFA (3.8).
〈E2〉 The LFSS? rigid body model (3.25) has no decentralized fixed modes at 0, where
L is defined in (2.5).
〈E3〉 For every p.d. [KP/D/Ii ]i∈[1,N ]Z, there exists ε? > 0 so that for all ε ∈ (0, ε?)R, the
resulting DCtrlFA (3.8) solves the DRSPF.
〈E4〉 (Also 〈R1〉) The rank test rank(LF) = n holds, where n is the number of rigid
body modes in (2.3).
〈E5〉 There exists a decentralized colocated controller (Figure 3.4) that solves the
DRSPF.
Proof. Recall the definitions for the following: The LFSS (2.3), Fy (2.27), Fu (2.28), F(2.29), and R (3.15), respectively.
(〈E1〉 ⇒ 〈E2〉) 〈E1〉 states the existence of [KP/D/Ii ∈ PDmi ]i∈[1,N ]Z and ε > 0 under
which 〈D1〉 holds. Next, define [KP?/D?/I?i ]i∈[1,N ]Z by K
P?/D?/I?i := RiK
P/D/IRTi ∈ PDm
?i ,
then 〈D2〉 holds by Lemma 3.1. The LFSS? (3.24) from 〈D2〉 has the structure of an
LFSS, and the DCtrl? (3.26) satisfies 〈A1〉–〈A3〉, so the DRSP for the LFSS? (3.24) has a
solution (〈M1〉). Applying Theorem 2.1 to the LFSS? (3.24), reveals that 〈M3〉 the LFSS?
rigid body model (3.25) has no decentralized modes, i.e., 〈E2〉 holds.
(〈E2〉 ⇒ 〈E3〉) Take any p.d. [KP/D/Ii ]i∈[1,N ]Z , and construct [K
P?/D?/I?i ]i∈[1,N ]Z by
KP?/D?/I?i = RiK
P/D/Ii RT
i ∈ PDm?i . Applying Theorem 2.1 to the LFSS?, then 〈E2〉
corresponds to 〈M3〉, so by 〈M1〉, the DRSP for the LFSS? has a solution. Applying
Theorem 2.2 and choosing [KP?/D?/I?i ]i∈[1,N ]Z as gains, then there exists ε? > 0 so that
for all ε ∈ (0, ε?)R, the resulting DCtrl? (3.26) satisfies conditions 〈A1〉–〈A3〉 when ap-
plied to the LFSS? (3.24), i.e., 〈D2〉 holds. From Lemma 3.1, 〈D1〉 holds for the original
[KP/D/Ii ]i∈[1,N ]Z and any ε ∈ (0, ε?)R, i.e., 〈E3〉 holds.
69
Chapter 3. Active FTC of LFSS using a PID Controller
(〈E3〉 ⇒ 〈E1〉) This trivially holds.
(〈E2〉 ⇔ 〈E4〉) From Theorem 2.1, 〈E2〉 is equivalent to 〈M6〉 for LFSS?: rank(LRT) =
n. 〈E4〉 is obtained from rank(LF) = rank(LRT).
(〈E1〉 ⇒ 〈E5〉) A DCtrlFA (3.8) is a special case of a decentralized colocated controller.
(〈E5〉 ⇒ 〈E2〉) We prove the contrapositive. Suppose that (3.25) has a decentralized
fixed mode at 0, then from [61] the mode must be uncontrollable, which implies that it is
a quotient decentralized fixed mode [25], and so there exists no decentralized controller
(Linear time-invariant/Nonlinear/Time-Varying) that will stabilize (3.25). Thus, 〈B1〉,and therefore 〈E5〉 will not hold.
In Theorem 3.2, the rank test 〈E4〉
rank(LF) = n
is a simple algebraic test for DRSPF to have a solution, given a fixed F . Using the
equivalence of 〈M5〉 and 〈M6〉 in Theorem 2.1, we can also interpret the rank test as
follows:
The rigid body model that uses only healthy sensor/pairs is controllable and observable.
The successful deployment of an FTC system is closely tied to the presence of sensor/
actuator redundancies in the system. The rank test gives us a precise way to characterize
the nature of such redundancies. One way to apply this insight is to test hypothetical
values of F during the LFSS design process, in order to guide the placement and speci-
fications of redundant sensors/ actuators. We will further explore this topic in Example
3.6 and Example 3.7.
3.3.7 Relaxing Diagnosis of Actuator Failures by Choosing Di-
agonal Gains
The controller gains KP/D/I may be chosen to be diagonal matrices. This choice corre-
sponds to implementing a simplified decentralized controller in the system, where each
actuator uses feedback only from its matching sensor. Under this special case, the LFSS
behaves as if every agent were a single-input/single-output system, i.e., yi,ui ∈ R,
i ∈ [1, N ]Z.
Assume that the existence condition 〈E4〉 of Theorem 3.2 holds. Recall that the
70
Chapter 3. Active FTC of LFSS using a PID Controller
DCtrlFA (3.8) (with ym = Fyy and Fym = Fy substituted) is
u = −F(KPF(y − yref) + KDF y + εKIFη), (3.8a)
η = F(y − yref). (3.8b)
Suppose that we relax Assumption 3.1 by only diagnosing sensor failures (i.e., relaxing
diagnosis of actuator failures). In this case, failed outputs with healthy sensors and failed
actuators (specified by Fy(I−Fu)) would not trigger controller adjustments 〈C1〉–〈C4〉.As a result, we obtain (using u′ and η′ to distinguish from the DCtrlFA)
u′ = −F(KPFy(y − yref) + KDFyym + εKIFyη′),
η′ = Fy(y − yref),
i.e., every instance of F is replaced by Fy, except for the first instance where the un-
known Fu occurs by definition. Since we have chosen KP/D/I ∈ DIAGm, therefore
(KP/D/I,Fu,Fy) mutually commute. From this we obtain FKP/D/I = FFKP/D/I =
FKP/D/IF (and also FFy = F), so the controller is effectively
u′ = −F(KPF(y − yref) + KDF ym + εKIFη′),
η′ = Fy(y − yref),
i.e., almost identical to (3.8), except the expressions for η′. In fact, since Fη′ is used to
specify u′, so with everything else being equal, we have (∀t) : u(t) = u′(t), and so the
LFSS would be stabilized by u′(t).
Thus η′ is the main difference between the results here and the CLSF. Specifically,
suppose that F 6= Fy, so Fy(I − Fu) 6= 0, i.e., there are healthy sensors with failed
actuators. Let us take any j ∈ [1,m]Z, so that eTj Fy(I − Fu)ej 6= 0. So eT
j y − eTj y
ref
can be “stuck” at a non-zero value, and cause eTj η → ±∞. Since controller gains are
diagonal, eTj η would not influence u and destabilize the LFSS. Moreover, eT
j η is in fact
harmless, since it is typically implemented as a computer variable in the controller. It
is to be noted however, that Assumption 3.2 (permanence of fault) is essential for our
scheme.
Finally, let us examine the complementary case, in which only actuator failures are
71
Chapter 3. Active FTC of LFSS using a PID Controller
diagnosed, and sensor failures are unknown. In this case, (3.8) becomes
u′′ = −Fu(KP(Fy −Fuyref) + KDF y + εKIFuη′′),
η′′ = Fu(Fyy − yref),
Expand this under KP/D/I ∈ DIAGm results in Fuyref instead of Fyref . Suppose there
are failed sensors with healthy actuators (corresponding to F 6= Fu, or (I−Fy)Fu 6= 0).
Let us take any j ∈ [1,m]Z, so that eTj (I − Fy)Fu 6= 0. In this case, the corresponding
eTj y
ref (assumed to be non-zero) would not be reset by adjustment 〈C3〉. Since eTj y = 0,
we would have eTj η → ±∞. Finally, this unbounded value would be injected into eT
j u,
and cause instability.
In summary, sensor failure-only diagnosis and actuator failure-only diagnosis produce
asymmetric situations. Perhaps we may summarize our observations by the following
statement: “it is better not to act than to act blindly.”
3.4 Steady-State Output for the CLSF
We have found necessary and sufficient conditions for the DRSPF to have a solution under
the DCtrlFA (and in general, decentralized colocated controllers). Now we shift to the topic
of analyzing steady-state outputs of the CLSF. By noting that the relation from [yref ;w]
to steady-state output is linear, we derive the steady-state output matrices. Interpreting
the results verifies the main theorem, which states that tracking and disturbance rejection
holds for healthy outputs. Since the steady-state output matrices predict the steady-state
values of failed outputs, it is possible to recover steady-state output tracking for failed
outputs, assuming we can measure the disturbances in the system, or for the case of
negligible disturbances.
3.4.1 Derivation
Given an LFSSF (2.30) and a DCtrlFA (3.8), let us assume the resulting CLSF (3.13) is
asymptotically stable. In this case, x would converge to a steady-state value, and y
would converge to a steady-state physical output y ∈ Rm:
y := limt→∞
y(t). (3.27)
72
Chapter 3. Active FTC of LFSS using a PID Controller
The following theorem shows how y can be calculated.
Theorem 3.3. If the DCtrlFA (3.8) is applied to the LFSSF (2.30), and if the condi-
tions of Theorem 3.2 (〈E1〉–〈E5〉) hold, then y(t) converges to a steady-state output
y that is linear in yref and w:
(∀LFSSF)(∀DCtrlFA) : rank(LF) = n =⇒ (∀x(0),yref ,w) : y = T refyref + T ww,
(3.28)
where the PID steady-state output reference gain matrix T ref ∈ Rm×m and
PID steady-state output disturbance gain matrix T w ∈ Rm×q are independent
of gain parameters, and are given by
T ref = LTZLRT(RLTZLRT)−1R, (3.29a)
T w = (I − T ref)(LTZEf + F), (3.29b)
where R is defined in (3.15), and
Z := (Ω2 + L?L?T)−1 = (Ω2 + LRTRLT)−1.
Proof. Let the conditions 〈E1〉–〈E5〉 of Theorem 3.2 hold, and in particular, 〈R1〉 =
〈E4〉. So by Lemma A.20, we have 〈R4〉: Ω2 + L?L?T ∈ PDn. By Lemma A.10, Z =
(Ω2 +L?L?T)−1 ∈ PDn. The LFSSF under the DCtrlFA (3.8) can be modelled as the LFSS?
(3.24) under a DCtrl (2.23). Since 〈E1〉 holds, as t → ∞ we would have x → 0 (〈B1〉)and F(y − yref) → 0 (〈B2〉), which implies y? → yref?. Also, x → x and u? → u?, for
some steady-state constants x and u?. The LFSS? (3.24) becomes[0
I
]yref? =
[A B?
C? 0
]︸ ︷︷ ︸
G
[x
u?
]+
[E
F?
]w.
Let us show that G is invertible. Since rank L = m, its columns are linearly independent.
The matrix L? = LRT consists of m? sub-columns of L, so rank B? = rank L? = m?. We
can apply Theorem 2.1 to the LFSS? (specified with (Ω2,∆,L?)), and conclude that LFSS?
has no transmission zero at 0, i.e., λ = 0 is not a solution to rank[A − λI,B?; C?,0] <
2n+m?. Therefore G is invertible.
73
Chapter 3. Active FTC of LFSS using a PID Controller
We can compute G−1 to solve for x and u?. From y = Cx+ Fw, we have
y =[C 0
] [A B?
C? 0
]−1 [0 −E
I −F?
][yref?
w
]+ Fw, (3.30)
where[C 0
]=[LT 0 0
]and
G =
[A B?
C? 0
]=
0 I 0
−Ω2 −∆ L?
L?T 0 0
, [0 −E
I −F?
]=
0 0
0 −Ef
I −F?
. (3.31)
Applying (3.31) to (3.30) reveals that y only depends on the first of the three block-
rows in G−1. Let us denote this row as [V1,V2,V3]. From G−1G = I we obtain
−V2Ω2 + V3L
?T = I, V1 −V2∆ = 0, and V2L? = 0. So V1 = V2∆, and
[V2 V3
] [−Ω2 L?
L?T 0
]=[I 0
]. (3.32)
To invert the matrix, we apply the following transformation:[I −L?
2
0 I
][−Ω2 L?
L?T 0
][I 0
−L?T
2I
]=
[−(Ω2 + L?L?T) L?
L?T 0
]=
[−Z−1 L?
L?T 0
].
Recall that Z ∈ PDn, and L? = LRT has full (column) rank. Therefore L?TZL? ∈ PDm
(Lemma A.5), and is invertible. Let
W = (L?TZL?)−1 = (RLTZLRT)−1.
By block-matrix inversion, we obtain (verifiable by multiplication)
[−Z−1 L?
L?T 0
]−1
=
[ZL?WL?TZ− Z ZL?W
WL?TZ W
].
Therefore[−Ω2 L?
L?T 0
]−1
=
[I 0
−L?T
2I
][−Z−1 L?
L?T 0
]−1 [I −L?
2
0 I
]=
[ZL?WL?TZ− Z ZL?W
WL?TZ W − I
].
74
Chapter 3. Active FTC of LFSS using a PID Controller
So (3.32) is solved (recall L? = LRT):
V3 = ZL?W = ZLRTW,
V2 = ZL?WL?TZ− Z = V3L?TZ− Z = (V3RLT − I)Z.
Also, applying yref? = Ryref and F? = RF transforms (3.30) to
y = LT[V1 V2 V3
]0 0
0 −Ef
I −F?
[yref?
w
]+ Fw
= LTV3yref? + (F− LT(V2E
f + V3F?))w
= (LTV3R)yref + (F− LTV3RF− LTV2Ef)w.
By comparison with (3.28), we have
T ref = LTV3R = LTZLRTWR = LTZLRT(RLTZLRT)−1R,
T w = F− (LTV3R)F− LTV2Ef
= (I − T ref)F− (LTV3L?TZ− LTZ)Ef
= (I − T ref)F + (LTZ− (LTV3R)LTZ)Ef
= (I − T ref)(LTZEf + F).
3.4.2 Interpretation
The steady-state matrices quantify the effectiveness of tracking and disturbance rejection.
For the nominal case (F = R = I), (3.29) readily reduces to T ref = I and T w = 0,
i.e., asymptotic tracking and disturbance rejection occur. When faults are present, the
following result is directly obtained from the expressions of T ref and T w:
Corollary 3.4. Assuming the conditions of Theorem 3.3 hold, asymptotic tracking
and regulation are achieved for healthy outputs:
FT ref = F ∧ FT w = 0.
This result is unsurprising; it is implied by condition 〈B2〉 limt→∞Fe(t) = 0, which
75
Chapter 3. Active FTC of LFSS using a PID Controller
leads to y = T refyref + T ww = Fyref for all yref ∈ Rm and w ∈ Rq.
Proof. T ref and T w are assumed to be defined. From (3.29) and F = RTR, we obtain
FT ref = RTRLTZLRT(RLTZLRT)−1︸ ︷︷ ︸I
R = RTR = F ,
FT w = F(I − T ref)(LTZEf + F) = (F − FT ref︸ ︷︷ ︸F
)(LTZEf + F) = 0.
For concreteness, let us assume F =
[Im? 0
0 0
]again. L? = LRT implies L =[
L? L]
(for some L ∈ Rn×(m−m?)). Substituting these into (3.29) results in
T ref =
[L?T
LT
]ZL?(L?TZL?)−1
[Im? 0
]=
[Im? 0
? 0
],
T w =
[0 0
? I
](LTZEf + F) =
[0 0
? ?
].
where ? denotes some generic matrix. The structures of these matrices indicate that:
• Tracking and disturbance rejection occur for healthy sensor/actuators.
• yref components for faulty sensor/actuators are unused (they are nullified by ad-
justment 〈C3〉).
• Disturbance rejection fails for faulty sensors/actuators.
• yref components for healthy sensor/actuators determine the y components for faulty
sensors/actuators.
The final point admits an appealing physical interpretation: A failure in eTj ui or
eTj yi (through adjustment 〈C2〉) leads to eT
j ui = 0, i.e., the controller corresponding to
eTj ui is disengaged, and the associated component becomes “limp”. As a result, eT
j yi
is “towed” by healthy actuators through physical connections, and reach a steady-state
value (calculated by Theorem 3.3).
3.4.3 Applications to Tracking Recovery
The aforementioned “towing” phenomenon shows how steady-state outputs under failure
depend on yref . This gives rises to an interesting application, in which yref may be ad-
76
Chapter 3. Active FTC of LFSS using a PID Controller
justed to re-enable tracking for failed outputs that are “mission critical”. The restoration
is performed by sacrificing tracking objective of healthy outputs that are non-critical.
Suppose that conditions 〈E1〉–〈E5〉 of Theorem 3.2 hold. For the special case of
tracking, i.e., assuming that w is negligible (admittedly a strong assumption), the track-
ing requirement becomes F y = Fyref ; or more succinctly, Ry = yref?. We now define
the general tracking problem under SAF. Suppose there are mc ∈ [1,m]Z output
components whose tracking goals are mission critical. The general tracking objective is
specified as
Py = ycrit, (3.33)
where P ∈ Rmc×m is obtained by removing m−mc rows that correspond to non-critical
output components from Im; and ycrit ∈ Rmc specifies set points for critical outputs.
Example 3.2. Let m = 5, mc = 3, then
P =
0 1 0 0 0
0 0 1 0 0
0 0 0 0 1
, ycrit =
1
0
−2
.specify that y2, y3 and y5 are critical, with desired steady-state values set at 1, 0 and
−2, respectively. 4
Without failures, (3.33) is automatically satisfied by choosing yref so that ycrit =
Pyref . Under failures, we would like to find a yref? if possible, so that the resulting
y = T refyref (3.27) satisfies (3.33). PT refyref = ycrit follows from substitution. Next, we
expand T ref (3.29a) and extract yref? = Ryref to obtain (noting that the matrix inverse
exists from the proof of Theorem 3.3)
(PLTZLRT(RLTZLRT)−1
)︸ ︷︷ ︸∈Rmc×m?
yref? = ycrit.
A solution exists if and only if ycrit ∈ ImgPLTZLRT(RLTZLRT)−1. Assuming that
this holds, then we can reassign the set points yref? for healthy sensors/actuators so that
(3.33) is satisfied. If m? ≤ mc (i.e., there are at least as many more healthy colocated
inputs/outputs as critical inputs), then there may be multiple solutions for yref?.
The general tracking problem can be extended by specifying P ∈ Rmc×m and ycrit ∈
77
Chapter 3. Active FTC of LFSS using a PID Controller
Rmc as arbitrary affine constraints in y.
Example 3.3. For m = 3, if eT3 y fails, then to impose eT
3 y → eT1 y, and eT
2 y → 1.5 we
can choose
P =
[1 0 −1
0 1 0
], ycrit =
[0
1.5
]. 4
3.5 Examples
To illustrate our results, we present several detailed examples, from which additional
insights are also obtained.
Example 3.4. Consider LFSS Benchmark A. The LFSS rigid body model (2.18) has
L =[0.2887 0.2887 0.2887
].
Clearly n = 1 and L = 1. By Theorem 2.1 and Theorem 2.2, the DRSP has a solution
under a DCtrl (2.23). We choose KP = 2I3, KD = 14I3, KI = I3 and ε = 0.2. The
resulting CLS eigenvalues are all stable, as shown in Table 3.1.
Normal u1 fails
−13.8850 −13.8850
−13.8850 −1.1012
−1.0393 −0.2598
−0.4051 −0.0820± j1.0101
−0.1075± j0.0533 −0.0728± j0.0998
−0.0723± j0.0984 −0.0643
−0.0459 (0)
Table 3.1: Closed loop eigenvalues in the example using LFSS Benchmark A.
Now suppose an actuator failure occurs in u1, so F = Fu = diag(0, 1, 1). Applying
controller adjustments C1–C4 results in a DCtrlFA (3.8). Theorem 3.2 states that the
DRSPF has a solution under the DCtrlFA (3.8), since rank(LF) = 1 (E4). The eigenvalues
of the CLSF (using the same games) are listed in Table 3.1. These eigenvalues are stable,
78
Chapter 3. Active FTC of LFSS using a PID Controller
except for a benign eigenvalue at 0 corresponding to η1 (nullified by adjustment C4),
which is removed in the Red(CLSF) (3.23).
0
0.5
1
1.5
y1
0
0.5
1
y2
0 50 100 150
0
0.1
0.2
y3
Time(sec)
−3
−2
−1
0
y1
0
1
2
y2
0 50 100 150
−0.3
−0.2
−0.1
0
y3
Time(sec)
(a) Tracking resp. (yref = [0; 1; 0]). (b) Disturbance resp. (w = [0; 1; 0]).
Figure 3.9: Step responses of LFSS Benchmark A CLSF with actuator failure in eT1u at
t = 50 s (Dashed lines depict nominal case).
The step responses of the normal and u1-failure cases with yref = [0; 1; 0] (w = 0),
and with w = [0; 1; 0] (yref = 0) are shown in Figure 3.9. The solid lines depict the
scenario in which u1-failure occurs at t = 50 s. y2 and y3 are disrupted in transient,
but asymptotic tracking and disturbance rejection still occur (so condition B2 holds). In
Figure 3.9 (a), we see that y1(t) → y2(t) → yref2 = 1 as t → ∞. This occurs because
M2 “tows” M1 (now uncontrolled) via the spring-damper connection between them. In
Figure 3.9 (b), we see that y1(t) has a constant offset. This is caused by a constant
disturbance force on M1 in E, leading to deflection in the M1-M2 connection.
T ref1 and T w
1 for the u1-failure case evaluated by (3.29) are
T ref1 =
0 1 0
0 1 0
0 0 1
, T w1 =
2 −1.8 0.2
0 0 0
0 0 0
.These agree with simulation results; the second columns in T ref
1 and T w1 are steady-state
values in Figure 3.9 under the failure case. Using (3.27), we can evaluate y from any yref
and w .
79
Chapter 3. Active FTC of LFSS using a PID Controller
Now, let us keep the same KP/D/I and adjust ε. For each actuator failure scenario,
we apply a 1-dimensional search to find ε? > 0 so that for all ε ∈ (0, ε?), the resulting
Red(CLSF) (3.23) is stable. By Theorem 3.2, ε? > 0 exists if and only if the DRSPF has a
solution under F . The results are listed in Table 3.2,2 which also includes rank(LF). We
Failed controllers ε? rank(LF)
Normal 4.5755 1
S1; S3 3.2790 1
S2 1.8744 1
S1,2; S2,3 0.8588 1
S1,3 2.2621 1
All 3 failures (no solution) 0
Table 3.2: Various failure scenarios in the example using LFSS Benchmark A.
see that the LFSSF (2.30) can be stabilized by a DCtrlFA (3.8) whenever rank(LF) = 1.
This verifies 〈E4〉 in Theorem 3.2. Previously we have chosen ε = 0.2, which is less than
ε? for all failure cases in Table 3.2. Therefore the DCtrlFA stabilizes the system under each
failure scenario for which the DRSPF has a solution, and the gains require no adjustment.
4
Example 3.5. This example is a continuation of Example 3.1, using the same (non-
diagonal) gains KP/D/I, with the same reference signal yref = [1;−1; 2] and disturbance
signal w = [1; 1; 1]. Instead continuing with the DCtrl after failure in eT1 y or eT
1u at
t = 30 s (as with Example 3.1), we implement the DCtrlFA by applying 〈C1〉–〈C4〉. The
results (for both the sensor failure case and the actuator failure case) are plotted in Figure
3.10. We see that the healthy outputs eT2 y
m and eT3 y
m tracks the reference signal. For
the failed output eT1 y
m, although tracking fails, the value settles to some steady-state
value, and the closed loop system remain stable. 4
Example 3.6. Consider LFSS Benchmark B (described in Section B.2). It can be shown
2The notation “S1,2; S2,3” represents “the case where S1 and S2 fail; and the case where S2 and S3
fail,” etc.
80
Chapter 3. Active FTC of LFSS using a PID Controller
−1
0
1
y1
−1
0
1
2
y2
0 50 100 150
1
1.5
2
y3
Time(sec)
Figure 3.10: LFSS Benchmark A under control by the DCtrlFA, with a failure at t = 50 s(Dashed lines depict nominal case).
that LFSS Benchmark B has n = 5 rigid body modes. Therefore L (2.5) is
L =
. α . . α . . . . . . .
. . . . . . . α . . α .
α . . . . . . . . α . .
. . . α . . α . . . . .
. . β . . β . . β . . β
, (3.34)
where α = 0.1414, β = 0.2500, and the periods denote 0.
The fault model in [42] only allows Fi = 0 or Fi = I, i.e., each control agent is
either healthy or fails entirely. Using a dynamic displacement feedback controller [24],
the closed loop system is shown by [42] to be stable under the normal, S1-failure and
S1,3-failure cases; and unstable under S1,2-failure.
We now consider the DRSPF, and apply the DCtrlFA (3.8) with KP = 120I5, KD =
100I5 and KI = I5. As done in [42], we restrict faults to be either Fi = 0 or Fi = I,
i.e., a control agent is either normal or fails entirely. For each of the 16 failure cases, the
resulting ε? and rank(LF) are listed in Table 3.3. We see that a solution exists if and
only if rank(LF) = n = 5, and in this case our results agree with [42], i.e., the closed
loop system is stable under S1-failure and S1,3-failure, but is unstable under S1,2-failure.
Moreover, the DCtrlFA we applied performs tracking and disturbance rejection, which
81
Chapter 3. Active FTC of LFSS using a PID Controller
Failed controller ε? rank(LF)
Normal 480.0 5
Any 1 failure 232.8 5
S1,3; S2,4 232.8 5
S1,2; S3,4 (no solution) 4
S1,4; S2,3 (no solution) 4
Any 3 failures (no solution) 3
All 4 failures (no solution) 0
Table 3.3: Various failure scenarios in the example using LFSS Benchmark B.
were not considered in [42]. 4
Next, we simulate the step responses of the system with undiagnosed actuator failure
in eT1u1 occurring at t = 10 s. Disturbances are specified by E = B and F = 0, and
we choose ε = 40 < 232.8 (from Table 3.3). The step response for eT1 y
ref4 = 1 and
eT10w = 1 (both correspond to ξ4) are shown in Figure 3.11, and only output components
(eT1 y1, e
T2 y1, e
T3 y1, e
T1 y2, e
T1 y3, e
T1 y4) = (ξ1, ζ1, θ1, ξ2, ξ3, ξ4) are shown. For the eT
1u1-
failure case, we see that eT1 y4 = ξ4 tracks eT
1 yref4 , but eT
1 y1 = ξ1 (for failed eT1u1) tracks
eT1 y
ref4 = 1 instead of eT
1 yref1 = 0. This is caused by the horizontal connection between
components 1 and 4.
Finally, analyzing L in (3.34) results in some insights on how the LFSS physical
structure contributes to fault-tolerance. From Theorem 3.2, the DRSPF can be solved by
using a decentralized colocated controller if and only if rank(LF) = 5. The sparseness of
L enables this rank test to be carried out at ease, for all (212 = 4,096) F = Fu scenarios.
From row 1 in L, it is clear that rank(LF) is reduced by 1 if eT2u (for ζ1) and eT
5u (for
ζ2) both fail. This is explained by the vertical spring-damper connections between ζ1 and
ζ2 (Figure B.2). The same interpretation applies for rows 2, 3 and 4 in L. From row 5,
actuators (eT3u, e
T6u, e
T9u, e
T12u) (for (θ1, θ2, θ3, θ4)) must all fail to decrease rank(LF) by
1. Hence the controllers for angles θi are more robust to failures than those for ξi or ζi,
owing to additional linkage and control redundancy.
Example 3.7. Consider LFSS Benchmark C (described in Section B.3). We choose the
82
Chapter 3. Active FTC of LFSS using a PID Controller
0
1
2
ξ1
−1
0
1ζ1
−1
0
1
θ1
−1
0
1
ξ2
−1
0
1
ξ3
0 10 20 30 40 500
1
2
ξ4
Time(sec)
0123
x 10−3
ξ1
−1
0
1
ζ1
−1
0
1
θ1
−1
0
1
ξ2
−1
0
1
ξ3
0 10 20 30 40 500
2
4x 10
−3
ξ4
Time(sec)
(a) Tracking resp. (eT4 y
ref = 1). (b) Disturbance resp. (eT10w = 1).
Figure 3.11: Step responses of LFSS Benchmark B CLSF with actuator failure in eT1u at
t = 10 s (Dashed lines depict nominal case).
following gains:
KP = 1,000 diag(0.1, 0.1, 1, 0.1, 0.1),
KD = 3× 105 diag(0.1, 0.1, 1, 0.1, 0.1),
KI = diag(0.1, 0.1, 1, 0.1, 0.1).
ε? and rank(LF) for the CLSF under various actuator failure scenarios are shown in
Table 3.4. Based on the ε? in Table 3.4, we choose ε = 1.5. The step responses of the
normal and u1-failure (occurring at t = 1,000 s) cases are plotted in Figure 3.12. We
see that under u1 failure, tracking and disturbance rejection continue to hold for healthy
outputs.
As with LFSS Benchmark B, we can extract some insights on the fault-tolerant nature
of LFSS Benchmark C by examining L. Table 3.4 shows that the DRSPF has a solution
using the DCtrlFA (3.8) with 4 or more healthy sensors/actuators, and no solution with 2
or fewer healthy sensors/actuators. With 3 healthy sensors/actuators, a solution exists
83
Chapter 3. Active FTC of LFSS using a PID Controller
Failed controller ε? rank(LF)
Normal 19.1921 3
Any 1 corner 6.0429 3
Centre 3.6312 3
Centre and 1 corner 1.7122 3
S1,5; S2,4 3.9756 3
S1,2; S4,5 3.9834 3
S1,4; S2,5 (no solution) 2
Any 3/4/5 failures (no solution) 2/1/0
Table 3.4: Various failure scenarios in the example using LFSS Benchmark C.
if the locations of the sensors/actuators are not collinear. In fact, it can be shown this
holds in general:
Corollary 3.5. The DRSPF for the space platform system has a solution using a de-
centralized colocated controller (i.e., E5 holds) if and only if healthy sensors/actuators
are not collinear on XY.
Proof. From the FEM, the system’s rigid body mode shapes (as continuous functions)
are v1(x, y) = 1, v2(x, y) = xLx
, v3(x, y) = − yLy
. Given m? healthy actuators located at
[x1; y1], . . . , [xm? ; ym? ] ∈ XY , we have
LRT =
1 . . . 1x1Lx
. . . xm?
Lx
− y1Ly
. . . −ym?
Ly
.If rank(LF) < n = 3, then [a, b, c]LRT = 0 for some a, b, c ∈ R. Equivalently, b
Lxxi −
cLyyi = −a for all i ∈ [1,m?], i.e., the points [x1; y1], . . . , [xm? ; ym? ] are collinear.
Suppose we wish to add 4 extra colocated sensors/actuators to the LFSS, while main-
taining reflection symmetry across the x-axis and y-axis. Figure 3.13 lists a few possible
configurations. By inspection, configuration (a) has the most number of subsets of triplets
of collinear points, and configuration (c) has the least. Using the insights gained, we can
quickly conclude the following: With regard to solving the DRSPF using decentralized
colocated controllers, configuration (c) is the most fault-tolerant among the three pro-
posed designs. 4
84
Chapter 3. Active FTC of LFSS using a PID Controller
0
1
2y
1
00.10.20.3
y2
0
0.5
1
y3
−0.4−0.2
00.2
y4
0 1000 2000 3000 4000 5000
00.10.20.3
y5
Time(sec)
024
x 10−4
y1
−1012
x 10−4
y2
0246
x 10−4
y3
−2
0
2x 10
−4
y4
0 1000 2000 3000 4000 5000−1
012
x 10−4
y5
Time(sec)
(a) Tracking resp. (eT3 y
ref = 1). (b) Disturbance resp. (eT3w = 1).
Figure 3.12: Step responses of LFSS Benchmark C CLSF with actuator failure in eT1u at
t = 1,000 s (Dashed lines depict nominal case).
Figure 3.13: Various ways to place 4 additional colocated sensors/actuators in LFSSBenchmark C.
85
Chapter 4
Passive Fault-Tolerant Control of
Large Flexible Space Structures
using a PD Controller
In Chapter 3, we defined the DRSPF for the LFSSF (2.30), which generalizes the DRSP of
the LFSS (2.3). By applying the DCtrlFA (3.8) to the LFSSF, Theorem 3.2 gives necessary
and sufficient conditions for the existence of a solution, and the most notable condition
is the rank test 〈E4〉 (restated as 〈R1〉 in Section A.2).
In the above active FTC scheme, we assumed that F = FyFu is known a priori . This
assumption is valid if there are dedicated devices to detect and isolate SAF. However, to
extend the applicability of our work, it is desirable to obtain a passive FTC scheme, in
which the controller objectives can still be satisfied under unknown failures F = FyFu.
We would also like to characterize any performance degradation that may occur.
Section 4.1 proposes an alternative to the DRSPF, called the good approximate DRSPF
(DRSPFGA), which is based on [18]. Section 4.2 presents the decentralized proportional-
derivative (PD) controller (DCtrlPD), which is the main controller we will apply. The
resulting closed loop system is derived, and stability conditions determined. Section 4.3
presents the steady-state output gain matrices Sref and Sw for the closed loop system,
along with simplified expressions. Section 4.4 presents the main theorem in this chapter,
which shows that the family of DCtrlPD with scalable gains can be used to solve the
DRSPFGA. Section 4.5 introduces the DCtrlPD with feed-forward adjustment (DCtrlFFPD),
which adjusts reference input to improve tracking performances of nominal DCtrlPD. Sec-
tion 4.6 presents examples to illustrate our results.
86
Chapter 4. Passive FTC of LFSS using a PD Controller
4.1 The Good Approximate Decentralized Robust
Servomechanism Problem for an LFSS under Fail-
ure (DRSPFGA)
The role of the integrator in the DCtrl (2.23) is to eliminate steady-state tracking error in
the closed loop system. However, under SAF (Fy,Fu), the integrator can cause the closed
loop system to become unstable. The control strategy in Chapter 3 assumes that the SAF
are known, and proceeds to disable these integrators. But we cannot do this in passive
FTC, since (Fy,Fu) are unknown, and so we would like to avoid having integrators in
our controller. This choice diminishes our ability to perform robust, asymptotic tracking
and disturbance rejection. To compensate for this deficiency, we define a weaker control
problem compared to the DRSPF, called the good approximate DRSP for the LFSSF
(DRSPFGA). This is the main problem we wish to solve in this chapter.
4.1.1 Motivation: Integrator under Unknown Failures
Example 3.1 demonstrates that unknown SAF in an LFSSF (2.30) under the control of
a DCtrl (2.23) can cause the system to become unstable. As motivation, let us analyze
a specific failure scenario in detail. Suppose that we have a failed sensor at eTi y, for
i ∈ [1,m]R. This leads to eTi y(t) = 0, so the corresponding measured error is eT
i em(t) =
eTi y(t) − eT
i yref = −eT
i yref . If the reference signal eT
i yref 6= 0, then the integrator
dynamics has eTi η(t) = −eT
i yref , leading to eT
i η(t)→∞ as t→∞, which then “pollutes”
any component of u that draws from it. Even for the special case of KP/D/I ∈ DIAGm
(Section 3.3.7), in which only eTi u is affected, if the actuator corresponding to eT
i u is
healthy, an ever-increasing force would still be applied to the LFSSF.
In summary, the combination of the following 4 factors:
failed sensor eTi y, non-zero reference eT
i yref , integrator eT
i η, healthy actuator eTi u,
can cause the system to become unstable. Given that eTi y fails, in the DCtrlFA (3.8),
〈C2〉 prevents healthy actuator eTi u from causing problem, 〈C3〉 prevents eT
i η(t) → ∞,
and 〈C4〉 resets eTi η so it will not act as a disturbance to other components u, if KI is
not diagonal. Note that the fundamental assumption for this work is that Fy is known.
We are now interested in passive FTC, in which Fy is unknown. Therefore we cannot
87
Chapter 4. Passive FTC of LFSS using a PD Controller
assign eTi y
ref , eTi η, and eT
i u in response to failure in eTi y. However, we can still avoid the
above failure scenario by dispensing with the integrator η altogether. The problem with
this approach is that without the internal model of 1s, a linear feedback controller will
not be able to track the constant reference yref and to reject the constant disturbance
w for the healthy outputs. To remedy this, we weaken the requirements of DRSPF, and
present a new main problem for this chapter.
4.1.2 Problem Statement
We specify an alternative to the DRSPF, called the good approximate decentralized
robust servomechanism problem for an LFSS under failure (DRSPFGA):
Given an LFSSF (2.30) (consisting of known LFSS with unknown failures Fy and Fu),
find a family of linear decentralized controllers C(α) parameterized by α > 0 and
independent of F , so that:
〈F1〉 For every α, every eigenvalue of the closed loop system constructed using C(α) has
a negative real part.
〈F2〉 Tracking occurs for all outputs with healthy sensor and actuator, i.e., for all con-
stant disturbances w, constant set points yref , and initial conditions of the LFSSF,
the family C(α) satisfies
limα→∞
limt→∞Feα(t) = 0,
where eα(t) is the tracking error from the LFSSF controlled by C(α).
〈F3〉 Properties 〈F1〉 and 〈F2〉 hold for all perturbations of the LFSS, including any
unmodelled elastic modes in (2.30), i.e., LFSS with a higher n than modelled.
The idea and the naming of the DRSPFGA are obtained from [18], which defines the
arbitrarily good approximate error regulation (AGAER) for the DRSP of a more general
system. We adapt the AGAER to the special case of LFSS, and also include consider-
ations for unknown SAF. Similar to the AGAER, we will also consider a “high gain”
controller. However, we will specialize to a proportional-derivative (PD) controller.
We will also work within the state space framework, instead of the transfer function and
“error coefficients” framework found in [18].
88
Chapter 4. Passive FTC of LFSS using a PD Controller
4.2 The Decentralized Proportional Derivative Con-
troller (DCtrlPD)
The application of proportional derivative (PD) controller for LFSS stabilization has been
well-studied [38–40]. We wish to use a PD controller to solve the DRSPFGA. So in addition
to stabilization, we have to consider tracking, disturbance rejection and robustness, as
well as accommodating unknown SAF. We begin by reviewing the LFSSF, specifying the
decentralized PD controller (DCtrlPD), and applying it to the LFSSF to obtain the closed
loop system (CLSFPD). If gains are chosen to be diagonal, then a necessary and sufficient
condition for the CLSFPD to be asymptotically stable is shown to be the rank condition
seen in 〈E4〉 of Theorem 3.2.
4.2.1 PD Controller for the LFSSF and the Closed Loop System
Recall that the LFSSF (2.30) is specified by
x = Ax+ BFuu+ Ew, (2.30a)
y = Cx+ Fw, (2.30b)
ym = Fyy, (2.30c)
e = y − yref , (2.30d)
em = ym − yref . (2.30e)
We assume that the system matrices A ∈ R2n×2n, B ∈ R2n×m, C ∈ Rm×2n, E ∈ R2n×q,
and F ∈ Rm×q are known. The constant tracking reference yref ∈ Rm is known, and can
be adjusted. However, the constant disturbance input w ∈ Rq and the SAF matrices
Fy,Fu ∈ DIAGm0,1 are unknown. At runtime, a controller has access to ym and em.
Let us define the decentralized PD controller (DCtrlPD) as a collection of local
controllers Sii∈[1,N ]Z that applies the following control law:
ui = −KPi e
mi −KD
i emi , i ∈ [1, N ]Z, (4.1)
89
Chapter 4. Passive FTC of LFSS using a PD Controller
where KP/Di ∈ PDmi . The combined effect of the decentralized control is
u = −KPem −KDem,
= −KP(ym − yref)−KDym,(4.2)
where KP/D ∈ PDm satisfies the block-diagonal structure in (2.21).
Applying the DCtrlPD (4.2) to the LFSSF (2.30) results in
em = ym − yref = Fyy − yref = FyCx+ FyFw − yref ,
em = FyCx = FyCAx+ Fy*
0CBFuu+ Fy
*
0CEw = FyCAx,
u = −KP(FyCx+ FyFw − yref)−KDFyCAx,
x = Ax+ BFuu+ Ew
= Ax−BFu[KP(FyCx+ FyFw − yref) + KDFyCAx
]+ Ew
= (A−BFuKPFyC−BFuKDFyCA)x+ (BFuKP)yref + (E−BFuKPFyF)w.
This is the LFSSF closed loop system with PD controller (CLSFPD):
x = AFx+ BrefF y
ref + BwFw, (4.3a)
y = Cx+ Fw, (4.3b)
ym = Fyy, (4.3c)
where AF ∈ R2n×2n, BrefF ∈ R2n×m, Bw
F ∈ R2n×q, and C ∈ Rm×2n can be simplified from
the above to be
AF =
[0 In
−Ω2 − LFuKPFyLT −∆− LFuKDFyLT
], (4.4)
BrefF =
[0
LFuKP
], Bw
F =
[0
Ef − LFuKPFyF
], (4.5)
C =[LT 0
].
Note that Fy and Fu are unknown, and controller adjustments 〈C1〉–〈C3〉 are not applied.
Throughout this chapter we will adopt “implicit definition” i.e., when some systems
or matrices are given, any dependent structures or matrices are automatically defined,
within the appropriate context. This significantly simplifies statements we make. For
90
Chapter 4. Passive FTC of LFSS using a PD Controller
reference, here is a list of relations (A −→ B means that A fully determines B):
LFSS←→ (Ω2,∆,L,Ef ,F) −→ (n,m, q)
LFSS←→ (A,B,C,E,F) −→ (n,m, q),
m←− (Fy,Fu) −→ (F ,R,m?),
LFSSF ←→ (LFSS,Fy,Fu),
m←− DCtrlPD ←→ KP/D = (KP ∈ PDm,KD ∈ PDm),
CLSFPD ←→ (LFSSF,DCtrlPD),
CLSFPD −→ (AF, B
refF , Bw
F , C).
In particular, “(∀LFSSF)” represents “(∀LFSS)(∀Fy,Fu ∈ DIAGm0,1)”; and “(∀DCtrlPD)”
represents “(∀KP/D ∈ PDm)”.
4.2.2 Stability of the Closed Loop System
For the nominal case Fy = Fu = Im, it is well known that the CLSFPD is asymptotically
stable, i.e., AF ∈ HUR2n [39, 40]. We now study stability results for the general CLSFPD.
We will establish that under diagonal gains, the rank condition 〈R1〉 rank(LF) = n holds
if and only if the CLSFPD is asymptotically stable, and so no fault-dependent adjustments
are needed (unlike PID controllers). This gives our first result on passive FTC of the
LFSSF, using a PD controller. We are not addressing tracking and regulation yet.
By implicit definition, after we specify an LFSSF (with LFSS, and Fy,Fu ∈ DIAGm0,1)and a DCtrlPD (with KP/D ∈ PDm) AF is automatically defined by
AF =
[0 In
−Ω2 − LFuKPFyLT −∆− LFuKDFyLT
]. (4.4)
Moreover, F = FyFu, the effective stiffness matrix Keff (3.9), and the effective damping
matrices Deff (3.10) are also implicitly defined:
Keff := Ω2 + LFKPFLT, (3.9)
Deff := ∆ + LFKDFLT. (3.10)
These matrices are characterized by the following:
91
Chapter 4. Passive FTC of LFSS using a PD Controller
Proposition 4.1. Given an LFSSF (2.30) and a DCtrlPD (4.2), the resulting effective
stiffness and damping matrices are p.s.d.:
(∀LFSS)(∀DCtrlPD) : Keff ,Deff ∈ PSDn.
Proof. Since KP ∈ PDm, so ∀F = FyFu ∈ DIAGm0,1. Therefore LFKPFLT =
(FLT)TKPFLT ∈ PSDn (Lemma A.4). Combine this with Ω2 ∈ PSDn leads to
Keff ∈ PSDn (Lemma A.7). The proof for Deff ∈ PSDn is analogous.
Next, we show that choosing diagonal gains help us simplify AF:
Proposition 4.2. An LFSSF under PD controller with diagonal gains has a simplified
expression of AF:
(∀LFSSF)(∀DCtrlPD | KP/D ∈ DIAGm) : AF =
[0 In
−Keff −Deff
]. (4.6)
Proof. Take any Fy,Fu ∈ DIAGm0,1. Recall that F = FyFu and F2 = F . If KP/D ∈DIAGm, then Fy,Fu,KP/D all commute, so: FuKP/DFy = FyFuKP/D = FKP/D =
FFKP/D = FKP/DF . And then LFuKP/DFyLT = LFKP/DFLT. The result follows
from substituting these into the expression for AF.
Here is a general result (does not require diagonal gains) that is used in the proofs of
Theorem 4.6 and Theorem 4.7.
Proposition 4.3. If the CLSFPD is asymptotically stable, then Ω2 + LFuKPFyLT ∈
Rn×n is invertible:
(∀LFSSF)(∀DCtrlPD) : AF ∈ HUR2n =⇒ Ω2 + LFuKPFyLT ∈ GLn.
Proof. Consider the contrapositive and assume that Ω2 + LFuKPFyLT is singular, then
∃v1 ∈ Rn − 0 so that (Ω2 + LFuKPFyLT)v1 = 0. From (4.4), we have AF[v1; 0] = 0
with [v1; 0] 6= 0. Therefore AF is singular, and cannot be Hurwitz.
We now state a well-known result for the stability of a second-order system with p.d.
coefficient matrices:
92
Chapter 4. Passive FTC of LFSS using a PD Controller
Lemma 4.4. If M, D, and K are p.d., then the system Mξ+ Dξ+ Kξ = 0 has an
asymptotically stable origin.
Proof for this well-known result can be found in [39, 40], but we supply our own in
Section A.1.5, which also restates the above to the following:
Corollary 4.5. If X and Y are p.d., then
[0 I
−Y −X
]is Hurwitz.
Here is the main stability theorem for the CLSFPD for diagonal gains.
Theorem 4.6. Given a CLSF, if gains are diagonal and p.d., then the necessary and
sufficient condition for the CLSFPD to be asymptotically stable is the rank test 〈R1〉:
(∀LFSSF)(∀DCtrlPD | KP/D ∈ DIAGm) : rank(LF) = n ⇐⇒ AF ∈ HUR2n.
Proof. (=⇒): Given the LFSSF and KP/D ∈ PDm ∩DIAGm, Proposition 4.2 states that
AF = [0, I;−Keff ,−Deff ]. Given 〈R1〉 rank(LF) = n, by Lemma A.20 we obtain 〈R2〉Keff ∈ PDn and 〈R3〉 Deff ∈ PDn. Applying Corollary 4.5 with X← Deff and Y ← Keff
results in AF ∈ HUR2n.
(⇐=): Given AF ∈ HUR2n, let us choose any KP ∈ PDm. Proposition 4.3 states that
Ω2 + LFuKPFuLT ∈ GLn, and so Keff ∈ GLn (Proposition 4.2). Proposition 4.1 states
Keff ∈ PSDn, and so Keff ∈ PDn (Lemma A.8). The choice of KP is arbitrary, so 〈R2〉holds. Therefore rank(LF) = n follows from Lemma A.20.
Another way to view Theorem 4.6 is to apply the “reduced LFSS” idea from Chapter
3. Choosing diagonal gains enables us to replace Fy and Fu by F . Therefore effectively
〈C1〉–〈C2〉 were applied, and so the CLSFPD can be considered as a PD controller that
operates on the LFSS? (3.24). This perspective is useful for understanding stability, but
one should note that the situation depicted in Figure 3.6 does not apply here. This is
because F is unavailable, 〈C3〉 is not applied to substitute yref ← Fyref .
The KP/D ∈ DIAGm restriction simplifies the mathematics, thereby enabling the
proof for Theorem 4.6. For completeness, we present an example to show that if we
choose KP/D ∈ PDm −DIAGm, then under unknown SAF the
93
Chapter 4. Passive FTC of LFSS using a PD Controller
Example 4.1. Consider LFSS Benchmark A, and let us choose
KP = KD =
10 4 4
4 10 4
4 4 10
∈ PD3.
For the nominal case Fy = Fu = I3, we use (4.4) to calculate the closed loop system,
and then compute the eigenvalues:
σ
0 0 0 1 0 0
0 0 0 0 1 0
0 0 0 0 0 1
−4.5000 0.0000 6.0374 −4.5000 0.0000 6.0374
0.0000 −7.0000 0.0000 0.0000 −6.1000 0.0000
6.0374 0.0000 −11.7000 6.0374 0.0000 −10.6200
= −13.1822,−4.5674,−1.5326,−1.1334,−0.4022± j0.9605 ⊂ C−.
Clearly the system is stable. Next, if an actuator failure occurs in eT3 y, then Fy = I and
Fu = diag(1, 1, 0), and we obtain the following closed loop eigenvalues:
σ
0 0 0 1 0 0
0 0 0 0 1 0
0 0 0 0 0 1
−3.0000 1.2247 3.5777 −3.0000 1.2247 3.5777
3.6742 −4.0000 −6.0249 3.6742 −3.1000 −6.0249
2.6833 −2.7386 −6.2000 2.6833 −2.7386 −5.1200
= −9.0395,−1.2085,−0.5148± i0.8847,0.0288± j1.1213 .
Owing to 0.0288± j1.1213 ∈ C+, the closed loop system under failure is unstable. 4
4.3 Steady-State Output for the CLSFPD
Theorem 3.3 presents a formula to compute the steady-state output y for the CLSF, and
defines steady-state gain matrices T ref and T w, which were found to be independent of
controller gains. For the nominal LFSS, perfect tracking and regulation are achieved, i.e.,
T ref = I and T w = 0.
We wish to perform a similar steady-state analysis for the CLSFPD. This leads to
steady-state gain matrices Sref and Sw. These are the PD controller counterparts to T ref
94
Chapter 4. Passive FTC of LFSS using a PD Controller
and T w. Since F is inaccessible, and an integrator is absent, tracking and regulation
performances of a PD controller are inferior to a PID controller’s. In fact, Sref and Sw
are gain-dependent, and for the nominal LFSS, Sref 6= I and Sw 6= 0 may hold.
After applying in-depth analysis, simplified expressions for Sref and Sw are derived.
These expressions lead to definition of the Γ matrix, which will find many uses later, as
we continue to explore applying the PD controller on the LFSSF.
In this section, we present the derivation of the steady-state output for the CLSFPD.
We also summarize a number of auxiliary results that will be used later. The derivations
and additional technical of these results can be found in Section A.3.
4.3.1 Main Derivation
Given an LFSSF (2.30) and a DCtrlPD (4.2), let us assume the resulting CLSFPD (4.3) is
asymptotically stable. The physical output y(t) would then converge to a steady-state
physical output y ∈ Rm:
y := limt→∞
y(t) ∈ Rm.
The following theorem is the CLSFPD counterpart to Theorem 3.3:
Theorem 4.7. If the DCtrlPD (4.2) is applied to the LFSSF (2.30), and if the resulting
CLSFPD is asymptotically stable, then y(t) converges to a steady-state output y that is
linear in yref and w:
(∀LFSSF)(∀DCtrlPD) : AF ∈ HUR2n =⇒ (∀x(0),yref ,w) : y = Srefyref + Sww,
(4.7)
where the PD steady-state output reference gain matrix Sref ∈ Rm×m and the
PD steady-state output disturbance gain matrix Sw ∈ Rm×q are given by
Sref = LT(Ω2 + LFuKPFyLT)−1LFuKP, (4.8)
Sw = (I − SrefFy)F + LT(Ω2 + LFuKPFyLT)−1Ef . (4.9)
It should be noted that Theorem 4.7 only requires AF ∈ HUR2n, i.e., asymptotic
stability of the CLSFPD, and does not require KP/D to be diagonal (unlike Theorem 4.6).
95
Chapter 4. Passive FTC of LFSS using a PD Controller
Proof. Given AF ∈ HUR2n (i.e., the CLSFPD (4.3) is asymptotically stable), there exists
a unique equilibrium x := limt→∞
x(t) ∈ R2n that is independent of x(0). Steady-state
requires x|x=x = 0. Applying this to (4.3a) results in
0 = AFx+ BrefF y
ref + BwFw.
Expanding AF (4.4), BrefF , and Bw
F (4.5) produces two equations. The first is [0, I]x = 0,
which leads to x = [d; 0] for d ∈ Rn. Applying this to the second equation leads to
(Ω2 + LFuKPFyLT)d = LFuKPyref + (Ef − LFuKPFyF)w.
Since AF ∈ HUR2n, so by Proposition 4.3, Ω2 + LFuKPFyLT is invertible, and we can
solve for d. Noting that y = Cx+ Fw = LTd+ Fw, we obtain
y = [LT(Ω2 + LFuKPFyLT)−1LFuKP]yref
+ [LT(Ω2 + LFuKPFyLT)−1(Ef − LFuKPFyF) + F]w,
from which we extract Sref and Sw. Finally, Sw can be simplified by
Sw = LT(Ω2 + LFuKPFyLT)−1(Ef − LFuKPFyF) + F
= LT(Ω2 + LFuKPFyLT)−1Ef − SrefFyF + F
= (I − SrefFy)F + LT(Ω2 + LFuKPFyLT)−1Ef .
Sref and Sw for the CLSFPD depend on the gain KP (but not KD). By contrast, T ref
and T w for the CLSF (Chapter 3) are independent of gains. Also, the DCtrlPD will not
attain asymptotic tracking of yref and regulation against w, even under the nominal case
Fy = Fu = I. We will consider this issue later.
4.3.2 Auxiliary Results
We now present a number of results relating to Sref , Sw, Γ, and Υ. Additional proofs
and other results are found in Section A.3.1.
The next results are concerned with simplifying the computation of Sref and Sw.
These results give rise to the definition of two new matrices: Γ ∈ SYMm and Υ ∈ Rm×q.
96
Chapter 4. Passive FTC of LFSS using a PD Controller
Theorem 4.8. Assuming that the CLSFPD is asymptotically stable, an alternative for-
mula for Sref is the following:
Sref = (Γ + FuKPFy)−1FuKP, (4.10)
where Γ ∈ SYMm depends on Ω2 and L only.
We call Γ ∈ SYMm the PD reference-to-output characteristic matrix. The orig-
inal definition of Γ (A.3) is buried within the proof of Theorem 4.8 in Section A.3.1.
Shortly we will present an explicit formula for Γ.
Theorem 4.9. Assuming that the CLSFPD is asymptotically stable, an alternative for-
mula for Sw is the following:
Sw = (I − SrefFy)F + (Γ + FuKPFy)−1Υ,
= (I − (Γ + FuKPFy)−1FuKPFy)F + (Γ + FuKPFy)−1Υ,(4.11)
where Γ ∈ SYMm was defined in Theorem 4.8, and Υ ∈ Rm×q depends on Ω2, L
and Ef only.
We call Υ ∈ Rm×q the PD disturbance-to-output characteristic matrix. The
original definition of Υ (A.6) is buried within the proof of Theorem 4.9 in Section A.3.1.
Shortly we will present an explicit formula for Sref .
Let Srefnom and Sw
nom be Sref (4.8) and Sw (4.9) for the nominal case Fy = Fu = I,
respectively. From Theorem 4.7, Theorem 4.8, and Theorem 4.9, we obtain
Srefnom := Sref
∣∣Fy=Fu=I
= LT(Ω2 + LKPLT)−1LKP (4.12)
= (Γ + KP)−1KP = ((KP)−1Γ + I)−1, (4.13)
Swnom := Sw|Fy=Fu=I = (I − Sref
nom)F + LT(Ω2 + LKPLT)−1Ef (4.14)
= (I − Srefnom)F + (Γ + KP)−1Υ. (4.15)
Γ (A.3) and Υ (A.6) are collectively referred to as output characteristic matrices.
Using the multiple expressions for Srefnom and Sw
nom, explicit formulae for Γ can be obtained
(see Section A.3.3 for details):
97
Chapter 4. Passive FTC of LFSS using a PD Controller
Lemma 4.10. Γ can be calculated by
Γ = (LT(Ω2 + LLT)−1L)−1 − I, (4.16)
= (ΛT0 (K0 + Λ0Λ
T0 )−1Λ0)−1 − I. (4.17)
Note that Γ is independent of the inertia matrix M0. Similarly, we can arrive at explicit
formulae for Υ (see Section A.3.3 for details):
Lemma 4.11. Υ (A.6) can be calculated by
Υ = (Γ + I)LT(Ω2 + LLT)−1Ef , (4.18)
= [LT(Ω2 + LLT)−1L]−1LT(Ω2 + LLT)−1Ef . (4.19)
Γ will play a central role in our analysis. The following corollary (to Theorem 4.8)
characterizes the matrix.
Corollary 4.12. The Γ matrix is p.s.d., singular, and has rank m− n:
(Γ ∈ PSDm − GLm) ∧ (rank Γ = m− n).
The proof is found in Section A.3.3, along with additional results involving Γ.
Example 4.2. Consider LFSS Benchmark A. Using Lemma 4.10, we evaluate Γ (4.16):
Γ =
1 −1 0
−1 2 −1
0 −1 1
.So Γ ∈ PSD3, and rank Γ = 2. Recall that m = 3 and n = 1. So rank Γ = 2 = 3− 1 =
m− n, as stated in Corollary 4.12. 4
Example 4.3. Consider LFSS Benchmark B. Γ is evaluated to be
98
Chapter 4. Passive FTC of LFSS using a PD Controller
Γ =
500 0 0 0 0 0 0 0 0 −500 0 0
0 500 0 0 −500 0 0 0 0 0 0 0
0 0 90 0 0 −45 0 0 0 0 0 −45
0 0 0 500 0 0 −500 0 0 0 0 0
0 −500 0 0 500 0 0 0 0 0 0 0
0 0 −45 0 0 90 0 0 −45 0 0 0
0 0 0 −500 0 0 500 0 0 0 0 0
0 0 0 0 0 0 0 500 0 0 −500 0
0 0 0 0 0 −45 0 0 90 0 0 −45
−500 0 0 0 0 0 0 0 0 500 0 0
0 0 0 0 0 0 0 −500 0 0 500 0
0 0 −45 0 0 0 0 0 −45 0 0 90
.
This seems rather complicated. However, if we permute the input vector by
[y1;y10;y4;y7;y2;y5;y8;y11;y3;y6;y9;y12],
then the calculation yields
Γ =
500 −500 0 0 0 0 0 0 0 0 0 0
−500 500 0 0 0 0 0 0 0 0 0 0
0 0 500 −500 0 0 0 0 0 0 0 0
0 0 −500 500 0 0 0 0 0 0 0 0
0 0 0 0 500 −500 0 0 0 0 0 0
0 0 0 0 −500 500 0 0 0 0 0 0
0 0 0 0 0 0 500 −500 0 0 0 0
0 0 0 0 0 0 −500 500 0 0 0 0
0 0 0 0 0 0 0 0 90 −45 0 −45
0 0 0 0 0 0 0 0 −45 90 −45 0
0 0 0 0 0 0 0 0 0 −45 90 −45
0 0 0 0 0 0 0 0 −45 0 −45 90
,
i.e., we obtain a block-diagonal structure, corresponding to the interconnections in the
system. The 5 blocks have respective ranks 1, 1, 1, 1, 3, so the total rank is 7. Recall
that m = 12 and n = 5, so rank Γ = 7 = 12− 5 = m− n, as stated in Corollary 4.12. 4
99
Chapter 4. Passive FTC of LFSS using a PD Controller
Example 4.4. Consider LFSS Benchmark C. Γ is evaluated to be
Γ =
a b −2(a+ b) a b
b a −2(a+ b) b a
−2(a+ b) −2(a+ b) 8(a+ b) −2(a+ b) −2(a+ b)
a b −2(a+ b) a b
b a −2(a+ b) b a
,
where a = 61.7388, b = −32.4139, −2(a+ b) = −58.6499, and 8(a+ b) = 234.5996. The
last two rows are identical to the first two, and the middle row is the negative sum of
all other rows. Therefore rank Γ = 2. Recall that m = 5 and n = 3, so rank Γ = 2 =
5− 3 = m− n, as stated in Corollary 4.12. 4
4.4 Solving the DRSPFGA with DCtrlPD
This section contains the main result of this chapter, i.e., a solution to the DRSPFGA. The
key enabler of our solution is the stability result in Section 4.2.2. In our solution, we will
apply a family of DCtrlPD with scalable diagonal gains. To satisfy condition 〈F2〉, we study
the asymptotic behaviour of Sref and Sw under large gains. It is shown that tracking
errors for healthy outputs can be arbitrarily reduced by increasing gains. However, high
gains can cause outputs with failed sensors and healthy actuators (corresponding to
(I − Fy)Fu) to reach very large steady-state values. To prove the main theorem, this
problem is addressed by imposing an extra condition F = Fu. However, this is not
a strict requirement in implementation, if we are willing to accept low gains and the
accompanying performance trade-off.
4.4.1 Asymptotic Behaviour for Sref and Sw under Large Gains
Recall from Corollary 3.4 that FT ref = F and FT w = 0 for the CLSF. Unfortunately,
for the CLSFPD with (Sref ,Sw), this does not hold in general. In fact, for the nominal case,
we also do not have Sref 6= I and Sw 6= 0. This is the well-known effect of “steady-state
offset” in using a PD controller instead of a PID controller. However, since Sref and Sw
depend on KP, so it is possible to adjust KP to improve our result. In particular, we
wish to choose “high gains” to bring FSref close to F , and FSw to 0. To this end, we
only have partial success, as we need to impose an extra condition Fu = F .
100
Chapter 4. Passive FTC of LFSS using a PD Controller
We start by specifying more precisely what is meant by “high gain”. To follow the
results in Section 4.2.2, let KP/D ∈ PDm ∩ DIAGm. Next, let us write KP/D as
KP = αKP, KD = αKD,
where KP/D ∈ PDm ∩ DIAGm are fixed, and α > 0 is a scalar to adjust gains. Let us
write Sref (4.10) and Sw (4.11) from Theorem 4.8 and Theorem 4.9 as functions of α by
Sref(α) = (Γ + αFuKPFy)−1αFuKP,
Sw(α) = (I − Sref(α)Fy)F + (Γ + αFuKPFy)−1Υ.(4.20)
The following result characterizes Sref(α) and Sw(α), for large α 1:
Theorem 4.13. Given an LFSSF (2.30) and a DCtrlPD (4.2) with diagonal gains
KP/D = αKP/D, suppose that F = [Im? ,0; 0,0], where m? := rank(F), let us write
KP = block diag(KP1 , K
P2 ) where KP
1 ∈ PDm? ∩ DIAGm?
and KP2 ∈ PDm−m
? ∩DIAGm−m?
. Also, let Γ = [Γ1,Γ2; ΓT2 ,Γ3], using the same block partition as F . If
the CLSFPD (4.3) is asymptotically stable, then for large α 1, we have
Sref(α 1) ≈
[I −(KP
1 )−1Γ2Γ−13 KP
2
−Γ−13 ΓT
2 αΓ−13 KP
2 + Γ−13 ΓT
2 (KP1 )−1Γ2Γ
−13 KP
2
]Fu, (4.21)
Sw(α 1) ≈
[0 0
Γ−13 ΓT
2 I
]F +
[0 0
0 Γ−13
]Υ. (4.22)
It is noteworthy that α appears in the bottom-right block of Sref(α 1), i.e., some
portion of Sref may scale with gain.
The notation Sref(α 1) is a short hand for stating “limα→∞”; owing to the presence
of α, using limits would requires us to separately specify sub-blocks of limα→∞ Sref(α)
and limα→∞1αSref(α).
We stress that in application, α would be finite.
Example 4.5. Consider LFSS Benchmark C. Let
Fy = diag(1, 1, 1, 0, 1), Fu = diag(1, 1, 1, 1, 0),
which result in F = diag(1, 1, 1, 0, 0) and m? = 3. Γ for LFSS Benchmark C is found in
101
Chapter 4. Passive FTC of LFSS using a PD Controller
Example 4.4. Splitting Γ = [Γ1,Γ2; ΓT2 ,Γ3] yields
Γ1 =
61.7388 −32.4139 −58.6499
−32.4139 61.7388 −58.6499
−58.6499 −58.6499 234.5996
, Γ2 =
61.7388 −32.4139
−32.4139 61.7388
−58.6499 −58.6499
,ΓT
2 =
[61.7388 −32.4139 −58.6499
−32.4139 61.7388 −58.6499
], Γ3 =
[61.7388 −32.4139
−32.4139 61.7388
].
Next, we choose
KP = diag(0.1, 0.1, 1, 0.1, 0.1),
so KP1 = diag(0.1, 0.1, 1) and KP
2 = diag(0.1, 0.1). From (4.21), the portion of Sref(α 1)
that is independent of α is
[I −(KP
1 )−1Γ2Γ−13 KP
2
−Γ−13 ΓT
2 Γ−13 ΓT
2 (KP1 )−1Γ2Γ
−13 KP
2
]Fu =
1 0 0 −1 0
0 1 0 0 −1
0 0 1 0.2 0.2
−1 0 2 1.4 0.4
0 −1 2 0.4 1.4
Fu.
The lower-right block of Sref(α 1) depends on α, and has the following coefficient:
Γ−13 KP
2 = 10−3 ×
[2.2361 1.1740
1.1740 2.2361
].
Finally, we evaluate Sref(α) for various values of α:
Sref(1) =
1 0 0 −1 0
0 1 0 0 0
0 0 1 0.2 0
−1 0 2 1.4022 0
0 −1 2 0.4012 0
, Sref(103) =
1 0 0 −1 0
0 1 0 0 0
0 0 1 0.2 0
−1 0 2 3.6361 0
0 −1 2 1.5740 0
,
Sref(106) =
1 0 0 −1 0
0 1 0 0 0
0 0 1 0.2 0
−1 0 2 2, 237.5 0
0 −1 2 1, 174.4 0
, Sref(107) =
1 0 0 −1 0
0 1 0 0 0
0 0 1 0.2 0
−1 0 2 22, 362 0
0 −1 2 11, 740 0
.
102
Chapter 4. Passive FTC of LFSS using a PD Controller
Note that the rightmost column is nullified by Fu. Also, note that the 4th row is not
accessible, because only FySref can be observed.
In this example, Sref(α) contains fixed elements that are identical to α-independent
portion of Sref(α 1). This does not hold in general. In particular, if F = I, then
Sref(α 1) ≈ I, but Sref(α) 6= I for finite values of α. 4
Proof. Diagonal KP/D commutes with Fy,Fu,F . So (4.20) is rewritten as
Sref(α) = (Γ + αFKP)−1αKPFu,
Sw(α) = (I − Sref(α)F)F + (Γ + αFKP)−1Υ,
where Sref(α)Fy = Sref(α)FuFy = Sref(α)F is applied in the second line. Let P :=
(Γ + αFKP). Since Γ ∈ PSDn (Corollary 4.12) and αFKP ∈ PSDn, so P ∈ PSDn
(Lemma A.7). Moreover, P ∈ GLn (see proof of Theorem 4.8), so P ∈ PDn (Lemma
A.8). Writing Γ = [Γ1,Γ2; ΓT2 ,Γ3], we have
P =
[αKP
1 + Γ1 Γ2
ΓT2 Γ3
]∈ PDn.
We use Lemma A.12 to invert P. Let the result be (P)−1 = [Q1,Q2; QT2 ,Q3], then
Q1 = (αKP1 + Γ1 − Γ2Γ
−13 ΓT
2 )−1,
Q2 = −Q1Γ2Γ−13 ,
Q3 = Γ−13 + Γ−1
3 ΓT2 Q1Γ2Γ
−13 .
Note that
limα→∞
Q1 = limα→∞
(αKP1 + Γ1 − Γ2Γ
−13 ΓT
2 )−1 = limα→∞
1
α(KP
1 + (Γ1 − Γ2Γ−13 ΓT
2 )/α)−1
= limα→∞
1
α(KP
1 )−1,
and so for α 1, we have Q1 ≈ 0. This leads to
(P)−1∣∣α1≈
[0 0
0 Γ−13
].
103
Chapter 4. Passive FTC of LFSS using a PD Controller
Next, for (P)−1α = [αQ1, αQ2;αQT2 , αQ3] we have
αQ1 = (KP1 + (Γ1 − Γ2Γ
−13 ΓT
2 )/α)−1,
αQ2 = −(αQ1)Γ2Γ−13 ,
αQ3 = αΓ−13 + Γ−1
3 ΓT2 (αQ1)Γ2Γ
−13 .
For α 1, we have αQ1 ≈ (KP1 )−1, and then
(P)−1α∣∣α1≈
[(KP
1 )−1 −(KP1 )−1Γ2Γ
−13
−Γ−13 ΓT
2 (KP1 )−1 αΓ−1
3 + Γ−13 ΓT
2 (KP1 )−1Γ2Γ
−13
].
Substituting these to Sref = (P)−1αKPFu for α 1, we arrive at (4.21). As for (4.22),
the first term is obtained from I − Sref(α 1)F from (4.21), and the second term is
obtained from (P)−1Υ.
There is no loss of generality in assuming F = [Im? ,0; 0,0], since we can permute
sensor/actuator pairs to arrive at this form.
For good tracking and regulation, ideally we would obtain a result analogous to Corol-
lary 3.4 (FT ref = F and FT w = 0). From (4.21), we see that the FSref(α 1) nullifies
the bottom row. However, note that Sref(α 1) is right-multiplied by Fu, and not F ,
so the right column is not nullified. Let us analyze this more.
Suppose that F 6= Fu, or equivalently (I − Fy)Fu 6= 0, i.e., there are failed sensors
with healthy actuators. Physically, this corresponds to an actuator that “acts blindly.”
As a result, we obtain the following block-column from (4.21):[−(KP
1 )−1Γ2Γ−13 KP
2
αΓ−13 KP
2 + Γ−13 ΓT
2 (KP1 )−1Γ2Γ
−13 KP
2
],
which would not be nullified in Sref(α 1) (via right-multiplication by Fu). As a result,
F 6= Fu produces two harmful effects:
• The top block −(KP1 )−1Γ2Γ
−13 KP
2 is a “junk term” that interferes with tracking
performance for healthy steady-state outputs F y.
• The bottom block has a “rogue term” αΓ−13 KP
2 that scales with α, which produces
a large physical output.
The “junk term” presents a finite distortion to healthy outputs, which may be con-
104
Chapter 4. Passive FTC of LFSS using a PD Controller
sidered as degradation of performance due to SAF. The “rogue term” scales with α and
affects the physical output of the system (which may or may not be observable). This is
a more serious problem that affects our ability to use high gains.
Meanwhile, to proceed with development, we make the assumption that Fu = F(equivalently (I−Fy)Fu = 0), i.e., there are no outputs with failed sensors and healthy
actuators. We refer to the condition Fu = F as actuator failures subsume sensor
failures. A special case of this is Fy = I, i.e., no sensor failures exist. With this, we
can state a result concerned with F y (i.e., the steady-state values for healthy sensors/
actuators). This result is the PD controller counterpart to Corollary 3.4, and will be
important for solving the DRSPFGA.
Corollary 4.14. If the conditions of Theorem 4.13 hold, then large gains lead to
good regulation. Furthermore, if actuator failures subsume sensor failures, then large
gains lead to good tracking:(limα→∞
FSw(α) = 0)∧(Fu = F =⇒ lim
α→∞FSref(α) = F
).
Proof. For α 1, it is clear from (4.22) that FSw ≈ 0. Next, given Fu = F = [I,0; 0,0]
and α 1, (4.21) becomes Sref ≈ [I,0;−Γ−13 ΓT
2 ,0], and so FSref ≈ F .
4.4.2 Main Result
Our main result for solving the DRSPFGA with the DCtrlPD is as follows:
Theorem 4.15. Given an LFSSF (2.30) whose actuator failures subsume sensor fail-
ures, let KP/D be any two fixed diagonal, positive gains. Define a family of PD
controllers C(α) | α > 0 by
C(α) = DCtrlPD using KP = αKP as the proportional gain,
and KD = αKD as the derivative gain,
i.e., each C(α) applies the following feedback rule:
uα = −αKPem − αKDem.
The family C(α) | α > 0 solves the DRSPFGA if and only if the rank condition 〈R1〉
rank(LF) = n holds.
105
Chapter 4. Passive FTC of LFSS using a PD Controller
Proof. Fix KP/D ∈ PDm ∩ DIAGm. First we show that 〈R1〉 implies 〈F1〉–〈F3〉.(〈R1〉 ⇒ 〈F1〉): Take any α > 0 and fix C(α), which uses KP/D = αKP/D ∈ PDm ∩
DIAGm. Therefore DCtrlPD (4.2), CLSFPD (4.3), and AF are defined. Given that 〈R1〉
holds, Theorem 4.6 states that AF ∈ HUR2n, i.e., 〈F1〉 holds.
(〈R1〉 ⇒ 〈F2〉): Consider the family of DCtrlPD Cα | α > 0. Given that 〈R1〉 holds,
we have AF ∈ HUR2n. So the corresponding steady-state output yα is defined. Theorem
3.3 then states yα = Sref(α)yref + Sw(α)w, and so
limt→∞Feα(t) = F yα −Fyref
= FSref(α)yref + FSw(α)w −Fyref .
Given Fu = F and that gains are diagonal, Corollary 4.14 states FSref(α) = F and
FSw(α) = 0 as α→∞, so
limα→∞
limt→∞Feα(t) = Fyref + 0w −Fyref = 0.
(〈R1〉 ⇒ 〈F3〉): Let us perturb LFSS to define a new model LFSS that more accurately
describes the physical LFSS. An LFSS can have a large number of modes n′ n, a
different q′, and different system parameters Ω2, L, Ef , E. However, it satisfies the
structural assumptions of the LFSS. Also, the LFSS has m of colocated sensor/actuator
pairs (same as the LFSS). Therefore the same Fy and Fu specified in the given LFSSF
can be used to define LFSSF
from the LFSS. In this case, for the given diagonal KP/D,
Theorem 4.6, Theorem 3.3, and Corollary 4.14 all continue to hold, because they are
generally applicable to any LFSSF that satisfy the structural assumptions. Therefore
properties 〈F1〉 and 〈F2〉 hold, as required by 〈F3〉.To prove the converse, assume that the DRSPF
GA has a solution under C(α) | α > 0.Then in particular, 〈F1〉 holds. Choose (say) α = 1, so the resultant CLSF
PD (4.3) is
asymptotically stable. By Theorem 4.6, 〈R1〉 holds.
Note: in implementation the gain α will not be made arbitrarily large. Instead, one
would choose an acceptable error tolerance, and then find α to make limt→∞Feα(t) ≈ 0.
Comparison with Results from Chapter 3
We applied PID controllers to solve the DRSPF by active FTC, and the main theorem
is Theorem 3.2 (“PID results”). We also applied PD controllers to solve the DRSPFGA by
106
Chapter 4. Passive FTC of LFSS using a PD Controller
passive FTC, and the main theorem is Theorem 4.15 (“PD results”). Let us compare
these two approaches.
The main specification difference is that the F was available for the PID results,
and unavailable for the PD results. The PID results allows KP/D/I ∈ PDm to be ar-
bitrary (subject to the block-diagonal constraint for decentralized control), whereas the
PD results assumes KP/D ∈ PDm ∩ DIAGm, i.e., the gains are more restrictive.
For necessary and sufficient conditions for a solution to exist, the PID results and the
PD results both have the rank condition 〈E4〉/〈R1〉: rank(LF) = n in common. More
specifically, the condition is common for closed loop stability and exact/good regulation
against unknown disturbance. However, for tracking PD results requires an additional
condition additional condition Fu = F , actuator failures subsume sensor failures.
In Section 3.3.7, it was shown that by choosing diagonal gains, the PID results gains
the ability to tolerate unknown actuator failures. In fact, it can be shown that if Fu = F ,
then the need to diagnose Fy also vanishes, thereby achieving “passive PID results”.
We emphasize that passive PID results do not subsume the PD results. First, the PD
results do not involve “ever-accumulating but benign” integrators present in the passive
PID results, which critically requires Assumption 3.2 (permanence of SAF). If we relax
this assumption (and consider the possibility of fault recovery), then trouble would arise
for the PID case, but not for the PD case.
More notably, the Fu = F condition is critical for the passive PID scheme, since if
Fu 6= F , then the integrator component of a failed sensor can become unbounded, and
this value would be injected to the LFSSF via a healthy output. As for the PD results,
the Fu = F condition arises because DRSPFGA was specified with the condition α → ∞,
which would cause “rogue term” αΓ−13 KP
2 to become arbitrarily large.
Realistically α is finite and so Fu 6= F is not strictly forbidden for the PD control.
However, in this case one would be constrained to keep gains low, so that the “rogue
term” αΓ−13 KP
2 would be kept in check. As a result, we would not be able to make
tracking and regulation performances arbitrarily good by increasing gains. Note that
this design trade-off is absent in passive PID results. In Section 4.5, we will explore a
way to improve the tracking performance under low gains.
107
Chapter 4. Passive FTC of LFSS using a PD Controller
4.5 DCtrlPD with Feed-Forward Adjustment (DCtrlFFPD)
Choosing high gains for the DCtrlPD reduces steady-state tracking error for healthy out-
puts, i.e., F(y − yref) → 0. However, if Fu 6= F then high gains can make (I − Fy)y
unacceptably large (Theorem 4.13). In Theorem 4.15 we avoided this problem by as-
suming Fu = F . But in practise, Fu 6= F may be acceptable if we choose low gains,
although this would impact the performance of steady-state tracking and regulation.
Therefore we may opt to be “conservative” and choose low gains. In this case, if
failures occur so that Fu 6= F , then (I − Fy)y would reach a moderate level. However,
in the nominal case the PD controller would produce poor tracking and regulation per-
formances. In this section, we propose a way to resolve this trade-off, by introducing
a feed-forward term to the DCtrlPD. This would allow DCtrlPD to be specified with low
gains, and good tracking performance would still be maintained for the nominal case.
4.5.1 The Controller for the Nominal LFSS
Consider the nominal LFSS (2.3) under the DCtrlPD (4.2). Let us rewrite the DCtrlPD as
u = −KP(ym − yrin)−KDym, (4.23)
where yrin ∈ Rm is a “reference input” that serves as a “dummy” variable. In this case,
the steady-state output y (4.7) is calculated as
y = Srefnomy
rin + Swnomw. (4.24)
Up to this point, we have assigned yrin ← yref . For the DCtrlPD, we may have Sref 6= I
and Sw 6= 0, which lead to y 6= yref . Now let us assign yrin by
yrin ← (Srefnom)−1(yref − Sw
nomw). (4.25)
Substituting this to (4.24) produces the following:
y = Srefnom[(Sref
nom)−1(yref − Swnomw)] + Sw
nomw = yref ,
i.e., by adjusting yref and assigning the result to yrin, the resulting output (in the nominal
case) now satisfies perfect asymptotic tracking y = yref ! Also, note that since yrin is
108
Chapter 4. Passive FTC of LFSS using a PD Controller
constant, so AF (3.11) remains stable.
The modification (4.25) is interpreted as a feed-forward controller that requires Srefnom
and Swnomw to be available. General cases of feed-forward controllers are well-studied [17].
Nevertheless, let us proceed with a detailed analysis of our special case. This exercise
yields the following simplification:
Theorem 4.16. For the nominal LFSS (2.3), the DCtrlPD (4.2) with feed-forward
control (4.25) reduces to the original DCtrlPD control with added constant terms:
(∀LFSS)(∀DCtrlPD) : yrin ← (Srefnom)−1(yref − Sw
nomw)
=⇒ u = [−KP(ym − yref)−KDym]︸ ︷︷ ︸The original DCtrlPD
+ [Γyref − (Γ + KP)Swnomw]︸ ︷︷ ︸
Added constant terms
. (4.26)
Proof. Begin from DCtrlPD in (4.23) with “dummy” reference input yrin:
u = −KP(ym − yrin)−KDym, (4.23)
and substitute yrin ← (Srefnom)−1(yref − Sw
nomw) with (4.13) Srefnom = ((KP)−1Γ + I)−1 to
simplify results:
u = −KP[ym − (Srefnom)−1(yref − Sw
nomw)]−KDym
= −KP[ym − ((KP)−1Γ + I)(yref − Sw
nomw)]−KDym
= −KPym + (Γ + KP)(yref − Swnomw)−KDym
= −KP(ym − yref)−KDym + Γyref − (Γ + KP)Swnomw.
Although the feed-forward control was originally specified with (Srefnom)−1, the controller
obtained requires no matrix inverse, and contributes as an “add-on” term to the original
DCtrlPD (4.2).
The preceding case assumes the ideal situation where Sww is available. Unfortu-
nately, this is often an impractical assumption. Realistically, often we can only compen-
sate for Sref 6= I, i.e., tracking performance. This modification truncates (4.25) to
yrin ← (Srefnom)−1yref . (4.27)
109
Chapter 4. Passive FTC of LFSS using a PD Controller
Substituting this to (4.24) produces
y = Srefnom[(Sref
nom)−1yref ] + Swnomw = yref + Sw
nomw. (4.28)
Also, following Theorem 4.16, (4.27) can be simplified to the original DCtrlPD with an
added term. We call this controller the decentralized PD controller with feed-
forward compensation (DCtrlFFPD), which is specified by
u = [−KP(ym − yref)−KDym] + Γyref . (4.29)
Since Γ is a fixed matrix that can be determined from system parameters by (4.16), so
the DCtrlFFPD is easy to implement.
4.5.2 Special Case of Rigid Body Outputs as References
For the nominal case, let us define the steady-state tracking error e ∈ Rm as
e := limt→∞
e(t) = y − yref = Srefnomy
ref + Swnomw − yref = (Sref
nom − I)yref + Swnomw. (4.30)
The (Srefnom − I)yref term is the reference component of e; and the Sw
nomw term is
disturbance component of e. From (4.29) and (4.28), we see that including Γyref in
u leads to e = y − yref = Swnomw, i.e., (Sref
nom − I)yref = 0.
We now present a special case where the reference component of e vanishes, without
needing to include the Γyref term:
Corollary 4.17. For the nominal case, the class of all reference signals such that the
reference component of e vanishes coincides with the output space of the rigid body
model (2.18):
yref ∈ Rm | (Srefnom − I)yref = 0 = Img LT.
Proof. Let us rewrite the left side and apply Srefnom = ((KP)−1Γ + I)−1 (4.13):
yref ∈ Rm | (Srefnom − I)yref = 0 = Ker(Sref
nom − I) = Ker(I − (Srefnom)−1)
= Ker((Srefnom)−1 − I) = Ker((KP)−1Γ) = Ker Γ.
110
Chapter 4. Passive FTC of LFSS using a PD Controller
Theorem A.27 states that Ker Γ = Img LT, and the result follows.
Therefore Img LT is the subspace of tracking signals under which the DCtrlPD behaves
like DCtrlFFPD. Another way to interpret the result is to consider Theorem 4.16. If we use
the DCtrlFFPD (4.29) and choose yref ∈ Img LT = Ker Γ, then Γyref = 0, i.e., using the
DCtrlPD has the same effect as using the DCtrlFFPD.
Typically Srefnom 6= I is considered as an annoying artifact of PD controller; if we
compute the step response of y(t) for a given yref , then typically the steady-state y
obtained would be shifted from yref . This phenomenon often motivates the usage of PID
controllers. However, Corollary 4.17 shows that Srefnom has eigenvalues at 1, and therefore
has a nontrivial subspace of constant reference signals yref | Srefnomy
ref = yref, under
which the PD controller would track perfectly (if no disturbance is present).
Furthermore, the “special subspace” in Corollary 4.17 is Img LT, i.e., the output of
the rigid body model. Tracking signals in this subspace has direct application in orbital
station-keeping and attitude control of an LFSS, which are key problems in LFSS control.
A complementary perspective is that steady-state output errors from applying PD
controller to nominal LFSS are related to the elasticity of the LFSS, which acts “against”
the applied force. We interpret the extra Γyref term in the DCtrlFFPD as the extra “kick”
needed to overcome the elasticity of the LFSS to obtain perfect tracking under PD
controller, assuming negligible disturbance.
4.5.3 Effect of Sensor and Actuator Failures
We introduced the DCtrlFFPD (4.29) to improve tracking performance of the nominal LFSS
(2.3), so that a PD controller with low gains may be used. Under unknown SAF, if the
DCtrlFFPD is applied to the resulting LFSSF (2.30), we may lose the desired good results.
Our goal in this section is to show that replacing the DCtrlPD (4.2) with an im-
perfect DCtrlFFPD (4.29) under unknown SAF would not be “too disruptive” to tracking
and regulation performances of healthy outputs. Here “too disruptive” is quantified by
considering the asymptotic behaviour of the gain matrices as gains increase. Admit-
tedly this approach is not ideal, as we would like to maintain low gains. However, the
approach would show we would have the same performance trade-off as before, i.e., be-
tween reducing the effect of “rogue term” (when Fu 6= F) and maintaining good tracking
performance.
Recall that the DCtrlFFPD was obtained by replacing yrin ← (Srefnom)−1yref in the DCtrlPD
111
Chapter 4. Passive FTC of LFSS using a PD Controller
expressed in (4.23), which is then simplified to the following:
u = [−KP(ym − yref)−KDym] + Γyref . (4.29)
Recall that under SAF, we have ym = Fyy.
Next, we consider imperfection in DCtrlFFPD, and in particular, perturbations to Γ.
Here Γ represents the “true value” from the LFSS. Now suppose that in (4.29), instead
of adding Γyref , we add (Γ + ∆Γ)yref , where ∆Γ ∈ Rm×m is an error such that the
condition in Corollary 4.12 are satisfied, so
Γ + ∆Γ ∈ PSDm − GLm ∧ rank(Γ + ∆Γ) = m− n.
As a result, we obtain an imperfect DCtrlFFPD:
u = [−KP(ym − yref)−KDym] + (Γ + ∆Γ)yref . (4.31)
The following properties are desired:
• For the nominal LFSS, the imperfect DCtrlFFPD still “improves” steady-state track-
ing (of course, perfect tracking will not occur, owing to disturbances Sww and
modelling error ∆Γyref).
• Under SAF, for the LFSSF, the distortion caused by the imperfect DCtrlFFPD dimin-
ishes as we make gains high.
The first property holds if the individual components of ∆Γ are small in magnitude,
compared to the corresponding components on Γ. This is a reasonable assumption to
make (the technical details involving norms are omitted).
We shall focus on demonstrating the second property. The intuitive explanation
of how this might hold is as follows: we can interpret the imperfect DCtrlFFPD as the
original DCtrlFFPD with (Γ+∆Γ)yref added, which then appear as B(Γ+∆Γ)yref to x. By
considering this as a disturbance term, we can apply the previous analysis using DCtrlPD,
and obtain the same DRSPFGA results as before.
For completeness, let us carry out the calculations to prove the desired result. Let us
rewrite (4.31) as
u = −KP[ym − ((KP)−1(Γ + ∆Γ) + I)yref ]−KDym.
112
Chapter 4. Passive FTC of LFSS using a PD Controller
This is equivalent to substituting yrin ← ((KP)−1(Γ + ∆Γ) + I)yref in the DCtrlPD ex-
pression (4.23). Noting that the same AF as the CLSFPD is produced (and hence the same
stability result), we can obtain the steady-state output y = Srefyrin + Sww (4.7), which
leads to
y = [Sref((KP)−1(Γ + ∆Γ) + I)]yref + Sww.
Therefore Sw is unchanged, but we obtain a new steady-state output gain matrix:
SrefFF = Sref((KP)−1(Γ + ∆Γ) + I)
= Sref + Sref(KP)−1(Γ + ∆Γ)
= Sref + (Γ + FuKPFy)−1Fu(Γ + ∆Γ),
where we applied (4.10). Choosing KP ∈ DIAGm ∩ PDm, and KP = αKP leads to
SrefFF(α) = Sref(α) + (Γ + αFKP)−1Fu(Γ + ∆Γ). (4.32)
Repeating the analysis in Theorem 4.13 for the DCtrlFFPD leads to the following:
Theorem 4.18. Given an LFSSF (2.30) and an imperfect DCtrlFFPD (4.31) with diag-
onal gains KP/D = αKP/D, suppose that F = [Im? ,0; 0,0], where m? := rank(F).
Let KP1 , KP
2 , Γ1, Γ2, Γ3 be defined in the same manner as in Theorem 4.13. If the
CLSFPD (4.3) is asymptotically stable, then for large α 1, we have
SrefFF(α 1) ≈
[I −(KP
1 )−1Γ2Γ−13 KP
2
−Γ−13 ΓT
2 αΓ−13 KP
2 + ?
]Fu +
[0 0
0 Γ−13
]Fu(Γ + ∆Γ),
(4.33)
where ? is some finite value depending on Γ, ∆Γ, and KP.
The expression for ? is unimportant, since it easily dominated by αΓ−13 KP
2 for α 1.
Proof. Referring to the proof of Theorem 4.13, for α 1, the second term of (4.32) can
apply the (P)−1 |α1 result, which leads to
(Γ + αFKP)−1Fu(Γ + ∆Γ) ≈
[0 0
0 Γ−13
]Fu(Γ + ∆Γ).
113
Chapter 4. Passive FTC of LFSS using a PD Controller
The first term of (4.32) is simply Sref(α 1), which was determined in (4.22). Summing
the terms leads to our result.
The counterpart to Corollary 4.14 for the DCtrlFFPD is the following:
Corollary 4.19. If the conditions of Theorem 4.18 hold, and if actuator failures
subsume sensor failures, then large gains lead to good tracking:
Fu = F =⇒ limα→∞
FSrefFF(α) = F .
Proof. Given Fu = F = [I,0; 0,0] and α 1, (4.33) becomes Sref ≈ [I,0;−Γ−13 ΓT
2 ,0]
(cancellation by Fu = F), and so FSref ≈ F .
To summarize, DCtrlFFPD was specified to provide an alternative to manage degraded
performance in our passive FTC approach. The DCtrlFFPD improve tracking results for the
nominal LFSS under PD control, by allowing low gains to be chosen to achieve good
tracking performance (but not regulation). Low gains have the advantage that under a
SAF (in which F 6= Fu is possible) under which the CLSFPD is stable, the “rogue term”
problem mentioned in Section 4.4.1 would be reduced. Although the Γyref term serves as
a distortion under failure, since distortion does not scale with α, and is therefore benign,
especially compared to the “rogue term.”
4.6 Examples
We present detailed numerical simulations to illustrate the results from this chapter.
Example 4.6. Consider LFSS Benchmark A. The first set of simulations is plotted in
Figure 4.1, which shows the output components of y(t) from tracking step responses of
yref = [1; 0; 0], and disturbance step responses of w = [1; 0; 0]. Each plot consists of two
simulations: dashed lines plot a “low-gain” simulation using KP/Dlo , and solid lines plot a
“high-gain” simulation using KP/Dhi :
Low-gain: KPlo = 3 I3, KD
lo = 14 I3,
High-gain: KPhi = 90 I3, KD
hi = 420 I3.
In each simulation, the nominal LFSS runs for the first 100 s, and then an actuator failure
114
Chapter 4. Passive FTC of LFSS using a PD Controller
0
0.5
1
y1
0
0.5
1
y2
0 100 200 300 400
0
0.05
0.1
0.15
y3
Time(sec)
0
0.5
1
y1
−0.8
−0.6
−0.4
−0.2
0
y2
0 100 200 300 400
0
0.02
0.04
y3
Time(sec)
(a) Tracking resp. (yref = [1; 0; 0]). (b) Disturbance resp. (w = [1; 0; 0]).
Figure 4.1: Step responses of LFSS Benchmark A CLSFPD with actuator failure in eT
2u.
in eT2u takes place, i.e.,
Fy = diag(1, 1, 1), Fu = diag(1, 1, 1)→ diag(1, 0, 1).
The rank condition 〈R1〉 still holds after this failure: rank(LF) = rank[0.2887, 0, 0.2887] =
1 = n. Since gains are diagonal, and Fu = F , so Theorem 4.15 states the DRSPFGA has a
solution. This is verified in Figure 4.1: the system reaches a steady-state, in spite of a
failure. Therefore 〈F1〉 holds. Moreover, the high-gain simulations show superior track-
ing and disturbance rejection properties for the nominal case. With actuator failure, this
continues to hold for health outputs eT1 y and eT
3 y. These agree with 〈F2〉.Tracking and disturbance rejection fails for eT
2 y, corresponding to the failed actuator.
However, the steady-state values are still bounded.
Let us consider the steady-state output matrices Sref and Sw from (4.7). These
characterize steady output more efficiently and accurately than plots. We will apply
Theorem 4.7 (or Theorem 4.8 and Theorem 4.9). For the low-gain, nominal case (i.e.,
for t < 100 s), we obtain
Srefnom(lo) =
0.7917 0.1667 0.0417
0.1667 0.6667 0.1667
0.0417 0.1667 0.7917
, Swnom(lo) =
0.4861 −0.2222 0.0361
−0.0556 0.9111 −0.0556
0.0361 −0.2222 0.4861
.
115
Chapter 4. Passive FTC of LFSS using a PD Controller
Note that the first column of Srefnom(lo) matches the low-gain (dashed line) nominal steady-
state value in Figure 4.1 (a), just prior to t = 100 s. We would like to Srefnom to be close to
I, and Swnom close to 0. Therefore the low-gain DCtrlPD shows unsatisfactory performance.
By contrast, the high-gain, nominal case shows superior performance:
Srefnom(hi) =
0.9891 0.0108 0.0001
0.0108 0.9785 0.0108
0.0001 0.0108 0.9891
, Swnom(hi) =
0.0219 −0.0192 0.0021
−0.0084 0.0539 −0.0084
0.0021 −0.0192 0.0219
.(4.34)
Next, we consider the steady-state matrices under actuator failure. For the high-gain
case, these are
Srefhi =
0.9945 0 0.0055
0.5000 0 0.5000
0.0055 0 0.9945
, Swhi =
0.0177 0.0078 −0.0021
−0.3922 2.5078 −0.3922
−0.0021 0.0078 0.0177
. (4.35)
Sensors for healthy actuators correspond to row 1 and row 3. Clearly we still have good
tracking and disturbance rejection.
Let us see what happens if we no longer assume Fu = F , and observe the effect of
the “rogue term” discussed in Section 4.4.1. Suppose that a sensor failure occurs on eT3 y
at t = 100 s, and that the corresponding actuator is healthy:
Fy = diag(1, 1, 1)→ diag(1, 1, 0), Fu = diag(1, 1, 1).
The results are plotted in Figure 4.2. The system is still stable, but the healthy output
eT2 y no longer tracks 0. Moreover, under high gains, the steady-state failed output eT
3 y
reached 90 for the tracking response! The high gain effect is not observed in the distur-
bance response. Detailed information is obtained from the steady-state gain matrices:
Srefhi =
0.9891 0.0109 0.0109
0.0109 0.9891 0.9891
0.0109 0.9891 90.9891
, Swhi =
0.0219 −0.0194 0.0023
−0.0064 0.0350 0.0132
0.1936 −1.7650 2.0132
.Therefore the output with failed sensor with healthy actuator has a high steady-state
output. Although this is undesirable, the system is still stable. 4
116
Chapter 4. Passive FTC of LFSS using a PD Controller
0
0.1
0.2
y1
0
0.5
1y
2
0 100 200 300 400
0
50
100
150
y3
Time(sec)
0
0.05
0.1
y1
00.10.20.3
y2
0 100 200 300 400
0
2
4
y3
Time(sec)
(a) Tracking resp. (yref = [0; 0; 1]). (b) Disturbance resp. (w = [0; 0; 1]).
Figure 4.2: Step responses of LFSS Benchmark A CLSFPD with sensor failure in eT
3 v(Dashed lines: low gain; Solid lines: high gain).
Example 4.7. Consider LFSS Benchmark C, choosing E = B (i.e., disturbances act
through actuator) and F = 0. Recall that Γ for LFSS Benchmark C is computed in
Example 4.4.
Previously we chose gains in a somewhat arbitrary way. Let us now do so in a more
systematic manner. From Γ, we see that row 3 is the negative the sum of the other rows.
Since (4.12) Srefnom = ((KP)−1Γ + I)−1, choosing KP = diag(1, 1, 4, 1, 1) would create a
more “balanced” scaling. This leads to
(KP)−1Γ =
61.7388 −32.4139 −58.6499 61.7388 −32.4139
−32.4139 61.7388 −58.6499 −32.4139 61.7388
−14.6625 −14.6625 58.6499 −14.6625 −14.6625
61.7388 −32.4139 −58.6499 61.7388 −32.4139
−32.4139 61.7388 −58.6499 −32.4139 61.7388
.
This also has the advantage that the diagonal entries of (KP)−1Γ are ≈ 60. Next, let us
choose α so that the diagonal entries of Srefnom = ((αKP)−1Γ + I)−1 are ≈ 0.98. Using the
approximation (I + X)−1 ≈ I −X (where entries of X have small magnitude), then
Srefnom = ((αKP)−1Γ + I)−1 ≈ I − (αKP)−1Γ.
117
Chapter 4. Passive FTC of LFSS using a PD Controller
The diagonal entries of Srefnom were specified to be ≈ 0.98, so the diagonal entries of
(αKP)−1Γ = α−1(KP)−1Γ are ≈ 0.02. This leads to α−160 = 0.02, and finally α =
60/0.02 = 3,000. For consistency with theory, in which KP and KD share a common α,
we choose KD = 10KP = 10 diag(1, 1, 4, 1, 1). Therefore we choose
KP = 3,000× diag(1, 1, 4, 1, 1),
KD = 3,000× 10 diag(1, 1, 4, 1, 1).
These lead to
Srefnom =
0.981 0.010 0.019 −0.019 0.010
0.010 0.981 0.019 0.010 −0.019
0.005 0.005 0.981 0.005 0.005
−0.019 0.010 0.019 0.981 0.010
0.010 −0.019 0.019 0.010 0.981
.
Also, the elements of Swnom each has a magnitude less than 0.001 (details omitted), al-
though the main contributor to this is the fact that E has small entries.
As with LFSS Benchmark A, we simulate the LFSS to be the nominal system initially.
At t = 4,000 s, a combined sensor and/or actuator failure takes place on eT2 y and eT
2u.
The step responses of tracking/disturbance on eT3 y
ref and eT3w are shown in Figure 4.3.
As expected, we have good tracking and disturbance rejection performance for healthy
outputs. Next, under failure, we have
Sref =
0.986 0.000 0.029 −0.014 0.000
0.517 0.000 0.966 0.517 −1.000
0.007 0.000 0.986 0.007 0.000
−0.014 0.000 0.029 0.986 0.000
0.000 0.000 0.000 0.000 1.000
.
We will revisit this example in Example 5.3. 4
118
Chapter 4. Passive FTC of LFSS using a PD Controller
−0.10
0.10.20.3
y1
0
1
2
y2
0
0.5
1
y3
−0.10
0.10.20.3
y4
0 5000 10000
−0.10
0.10.20.3
y5
Time(sec)
−1012
x 10
y1
05
1015
x 10−5
y2
0
5
10
x 10−5
y3
−1012
x 10−5
y4
0 5000 10000
−1012
x 10−5
y5
Time(sec)
(a) Track. resp. (eT2 y
ref = 1). (b) Dist. resp. (eT2w = 1).
Figure 4.3: Step responses of LFSS Benchmark C CLSFPD with sensor failure in eT
1 y.
119
Chapter 5
Integrating the PID and the PD
Controllers
In Chapter 3, the PID controller DCtrlFA was applied to the LFSSF to solve the DRSPF,
thereby achieving active FTC. In Chapter 4, the PD controllers DCtrlPD and DCtrlFFPD were
applied to solve the DRSPFGA, thereby achieving passive FTC (with some degradation of
performance). In this chapter, we study fault diagnosis on the LFSSF, based on steady-
state analysis of the LFSSF under control by the DCtrlPD. This extension gives rise to an
integrated controller that diagnoses and accommodates faults in the LFSSF, combining
the advantages of PID and PD controllers.
The first two sections of this chapter introduce new concepts that may not appear
immediately relevant to the previous chapters. Section 5.1 provides details on how to
diagnose SAF by studying steady-state output measurements of the LFSSF, when a PD
controller is applied. Section 5.2 considers a general signal processing problem of final
value extrapolation, which will help us improve the efficiency of estimating steady-state
values. These ideas are then applied in Section 5.3, which proposes a methodology
to integrate PID and PD controllers to perform integrated fault diagnosis and fault
accommodation to solve the DRSPF. Finally, Section 5.4 presents integrated examples to
illustrate our ideas and heuristics.
5.1 Fault Diagnosis using the PD Controller
The PD controller DCtrlPD was specified to control the LFSSF under unknown SAF.
Additional analysis will reveal another application of the DCtrlPD: when the resulting
120
Chapter 5. Integrating the PID and the PD Controllers
CLSFPD is stable, it is possible to use measured steady-state output to diagnose SAF
(more specifically, F = FyFu). This new possibility shows that a PD controller nicely
complements the PID controllers in the FTC of the LFSSF.
It is to be noted that our fault diagnosis procedure requires coordination among the
various controller agents. Therefore we only have “centralized diagnosis”. However, there
is no explicit communication among controller agents.
5.1.1 Overview
We wish to perform fault diagnosis on the LFSSF at runtime to learn about Fy and Fu.
Heuristically, sensors failure can be isolated by identifying “stuck-at-zero components”
of ym, and actuator failures by the non-response of “probing” actuator signals applied at
individual actuators. However, we seek a more rigorous approach, so that false detection
from transients or chance is avoided. In particular, we will focus on fault diagnosis based
on steady-state outputs from an asymptotically stable CLSFPD.
As seen in (4.8), the steady-state output reference matrix Sref ∈ Rm×m is a function
of (Γ,Fy,Fu,KP). Γ ∈ PSDm − GLm is a fixed parameter of the LFSS; KP ∈ PDm is
a gain that can be chosen; and Fy and Fu are unknown SAF parameters that we wish
to deduce. More concretely, suppose that Sref , Γ, and KP are known, then we wish to
solve Fy and Fu from the relationship:
Sref = (Γ + FuKPFy)−1FuKP, (4.10)
At runtime, ym(t) = Fyy(t) can be measured from the LFSSF. Since we wish to
use steady-state data to perform diagnosis, so the primary data obtained by experiment
consist of Fyy, which from (4.7), is
Fyy = FySrefyref + FySww.
Note that Sref is combined with Fy. Therefore we are can extract only
[FySref ] = Fy(Γ + FuKPFy)−1FuKP, (5.1)
where the notation [FySref ] emphasizes that it is a single measurable unit. Details on
121
Chapter 5. Integrating the PID and the PD Controllers
obtaining [FySref ] are presented in Section 5.1.2. Next, let us calculate
[FySref ](KP)−1 = Fy(Γ + FuKPFy)−1Fu. (5.2)
From this, we see that Fy acts to nullify rows of (Γ+FuKPFy)−1, and Fu acts to nullify
columns. Therefore if we can choose KP so that (Γ + FuKPFy)−1 has no 0-entries for
all possible cases of (Fy,Fu) in which AF ∈ HUR2n, then it appears that zeroed rows
map to Fy, and zeroed columns map to Fu! Unfortunately, this method does not work
in general, as shown in the counterexample below:
Example 5.1. Let m = 2, n = 2, and n = 1. From Lemma A.28, we can choose any
Γ ∈ PSDm − GLm satisfying rank Γ = m− n as a potential Γ from some LFSSF. So let
Γ =
[0 0
0 1
], KP =
[a b
b c
]∈ PDm.
Indeed, using (4.16), Γ can be attained using Ω2 = [0, 0; 0, 1] and L = [1, 0; 0, 1]. Now
suppose Fy = diag(1, 0) and Fu = diag(1, 1) (the rank condition 〈R1〉 holds), then
(Γ + FuKPFy)−1 =
[a 0
b 1
]−1
=
[1/a 0
−b/a 1
], Fy(Γ + FuKPFy)−1Fu =
[1/a 0
0 0
].
Using the proposed method of zero row/column counting, we would wrongly conclude
that Fu = diag(1, 0). In fact, if Fy = diag(1, 0) and Fu = diag(1, 0), then
(Γ + FuKPFy)−1 =
[a 0
0 1
]−1
=
[1/a 0
0 1
], Fy(Γ + FuKPFy)−1Fu =
[1/a 0
0 0
],
i.e., an identical result is obtained, for all KP ∈ PDm. 4
Example 5.1 presents an instance of “aliasing”, in which distinct SAF specifications
i.e., (Fy1 ,Fu
1 ) 6= (Fy2 ,Fu
2 ) produce indistinguishable results. As a result, in general we
may not diagnose (Fy,Fu) solely from [FySref ].
Fortunately, our purpose for fault diagnosis is to allow DCtrlFA to be applied by
conducting controller adjustments 〈C1〉–〈C4〉, and this only requires F = FyFu to be
known, i.e., we need not extract (Fy,Fu). We will show that F can be extracted from
[FySref ](KP)−1. From (5.2), this corresponds to examining diagonal entries that are 0.
122
Chapter 5. Integrating the PID and the PD Controllers
However, for this approach to work, the diagonal entry of (Γ + FuKPFy)−1 must
not become 0 by chance. Moreover, it would be prudent to establish a threshold for
zero-detection. Both issues are addressed in Section 5.1.3.
5.1.2 Extracting [FySref ] from Output Measurements
To diagnose F we need to determine [FySref ]. We now present a method to determine
[FySref ] for a fixed KP by conducting a series steady-state experiments. The main idea
is to perturb yref to different values, measure the resulting steady-state observation Fyy,
and then solve for [FySref ].
Recall from Section 5.1.1 that
Fyy = [FySref ]yref + FySww.
Two problems can arise when we try to obtain [FySref ] from this. First, Sww is an
unknown constant vector that has to be eliminated somehow. Second, it may be incon-
venient to adjust yref to arbitrary values (for example, if the solar arrays of an LFSS
already have a good orientation, we might not want to change that by too much). For
concreteness, let us specify the following conditions and assumptions:
• The DCtrlPD is applied to the LFSSF, using some fixed gains KP/D ∈ PDm.
• The resulting CLSFPD is asymptotically stable (so Sref is defined).
• The current preferred reference is yref0 ∈ Rm.
• Sww remains constant throughout the experiment.
• Given any yref ∈ Rm, the resulting steady-state measurement Fyy can be acquired.
Let yrefi ∈ Rm (for some index i) be some specified fixed value. We can obtain [FySref ]yref
i
by applying the following:
Algorithm 5.1. Given the above assumptions, [FySref ]yrefi is extracted by the fol-
lowing:
123
Chapter 5. Integrating the PID and the PD Controllers
1. Choose ρi > 0 so that ρiyrefi is “reasonably small” compared to yref
0 . Choosing
a large ρi would improve numerical accuracy, but at the expense of introducing
more perturbation to yref0 .
2. Acquire the steady-state output measurement [Fyy0] (using square brackets to
emphasize that Fyy0 is a single measured quantity) for the current set-point
yref0 :
[Fyy0] := Fy(Srefyref0 + Sww). (5.3)
3. Assign/perturb the current reference from yref0 to yref
0 +ρiyrefi . Let the resulting
physical output be y0i.
4. Acquire the new steady-state output measurement:
[Fyy0i] := Fy(Sref(yref0 + ρiy
refi ) + Sww). (5.4)
5. Evaluate the difference between the two steady-state outputs measurements.
Next, divide by ρi:
[Fyy0i]− [Fyy0] = ρi[FySref ]yrefi ,
∴ [FySref ]yrefi =
1
ρi([Fyy0i]− [Fyy0]).
So under the assumptions, we can use Algorithm 5.1 to overcome the two problems
above and obtain [FySref ]yrefi for any yref
i . If we choose a linear independent basis
yref1 , . . . ,yref
m , (with some corresponding ρ1, . . . , ρm), then we can measure the resulting
[Fyy01], . . . , [Fyy0m], and obtain1:
[FySref ]m =[
1ρ1
([Fyy01]− [Fyy0]) . . . 1ρm
([Fyy0m]− [Fyy0])] [yref
1 . . . yrefm
]−1
In particular, if we choose yrefi = ei for i ∈ [1,m]Z, then we need not perform matrix
inversion, and obtain columns of [FySref ] by
[FySref ]m =[
1ρ1
([Fyy01]− [Fyy0]) . . . 1ρm
([Fyy0m]− [Fyy0])]. (5.5)
1The notation [·]m emphasizes the value was obtained from measurement and calculation.
124
Chapter 5. Integrating the PID and the PD Controllers
As an interesting aside, once we determine [FySref ], we can rearrange (5.4) to
FySww = (FySref)(yref0 + ρiy
refi )− [Fyy0i],
and obtain the vector [FySww]. Alternatively, if we wish to obtain FySww without
[FySref ], then we can change/perturb yref0 to (1 + ε)yref
0 , then we acquire
[Fyyε] := Fy[Sref(1 + ε)yref0 + Sww].
Subtracting this from (5.3) multiplied by (1 + ε) yields
(1 + ε)[Fyy0]− [Fyyε] = εFySww,
∴ [FySww] = [Fyy0] +1
ε([Fyy0]− [Fyyε]).
5.1.3 Main Algorithm
In Section 5.1.1, we saw that simultaneous extraction of Fy and Fu from [FySref ] may be
infeasible. Fortunately, for the purpose of FTC, we only need to extract F . We claimed
that this involves checking for 0’s on the diagonal entries of [FySref ](KP)−1. Let us now
prove this assertion, under KP/D ∈ DIAGm. Recall that given [FySref ], we can calculate
[FySref ](KP)−1 = Fy(Γ + FuKPFy)−1Fu. (5.2)
Lemma 5.2. Given an asymptotically stable CLSFPD (4.3) obtained from DCtrlPD with
diagonal gains, the i-th diagonal entry of [FySref ](KP)−1 is 0 if and only if the i-th
diagonal entry of F is 0:
(∀LFSSF)(∀DCtrlPD : KP/D ∈ DIAGm) : AF ∈ HUR2n =⇒
(∀i ∈ [1,m]Z) : eTi [FySref ](KP)−1ei = 0 ⇐⇒ eT
i Fei = 0.
Proof. Since AF ∈ HUR2n, so Sref is defined. Following Corollary A.26 and noting
KP/D ∈ DIAGm, define X := Γ + FuKPFy = Γ + FKP ∈ PDm. Thus (5.2) be-
comes [FySref ](KP)−1 = FyX−1Fu. Take any i ∈ [1,m]Z. Our goal is to show that
125
Chapter 5. Integrating the PID and the PD Controllers
eTi FyX−1Fuei = 0 ⇔ eT
i Fei = 0. X ∈ PDm ⇒ X−1 ∈ PDm (Lemma A.10), and so
eTi X−1ei > 0 (Lemma A.6). Since Fuei is either ei or 0 (and similarly for Fy), so
eTi FyX−1Fuei = 0 ⇐⇒ (eT
i Fy = 0T ∨ Fuei = 0) ⇐⇒ eTi Fei = eT
i FyFuei = 0.
Therefore F can be extracted by identifying 0’s along the diagonal of [FySref ](KP)−1.
But to implement this method, we cannot simply test for “x = 0”, since there may
be numerical or measurement noise. Practical zero-testing typically involves defining
some threshold τ > 0, and testing for “|x| < τ”. However, how can such a threshold
be chosen? What if it happens that a diagonal entry of [FySref ](KP)−1 is a very small
positive number? These questions are answered by the following results, which help us
find the desired thresholds.
Theorem 5.3. Given an asymptotically stable CLSFPD (4.3) obtained from DCtrlPD
with diagonal gains, (Γ + FuKPFy)−1 (from Sref) subtracted by (Γ + KP)−1 (from
Srefnom) results in a p.s.d. matrix:
(∀LFSSF)(∀DCtrlPD : KP ∈ DIAGm) : AF ∈ HUR2n =⇒
(Γ + FuKPFy)−1 − (Γ + KP)−1 ∈ PSDm.
We first illustrate this theorem with a simple example.
Example 5.2. Consider
Γ =
[4 2
2 1
]∈ PSD2, KP =
[1 0
0 3
]∈ DIAG2 ∩ PD2,
and let Fu = Fy = diag(1, 0) ∈ DIAG20,1. We obtain
Y := Γ + KP =
[5 2
2 4
]∈ PD2, X := Γ + FuKPFy =
[5 2
2 1
]∈ PD2.
126
Chapter 5. Integrating the PID and the PD Controllers
Note that Y −X =
[0 0
0 3
]∈ PSD2. Next,
X−1 =
[1 −2
−2 5
]∈ PD2, Y−1 =
[0.25 −0.125
−0.125 0.3125
]∈ PD2
And so X−1−Y−1 =
[0.75 −1.875
−1.875 4.6875
]∈ SYM2. The eigenvalues are 0 and 5.4375,
so X−1 −Y−1 ∈ PSD2, as stated by Theorem 5.3. 4
Proof. Following the proof of Lemma 5.2, we obtain X := Γ + FuKPFy = Γ + FKP ∈PDm. We also define Y := Γ + KP ∈ PDm. Next, Y−X = (I−F)KP ∈ DIAGn. The
product introduces diagonal zeros to KP ∈ PDm, so Y − X ∈ PSDm. From Lemma
A.18 (with X,Y ∈ PDm), we obtain X−1 −Y−1 ∈ PSDm.
The following corollary compares diagonal elements of matrices from Theorem 5.3.
Corollary 5.4. Given an asymptotically stable CLSFPD (4.3) obtained from DCtrlPD
with diagonal gains, each diagonal element of [FySref ] corresponding to healthy sen-
sor/actuator pairs is greater or equal to the matching diagonal element of Srefnom:
(∀LFSSF)(∀DCtrlPD : KP/D ∈ DIAGm) : AF ∈ HUR2n =⇒
(∀i ∈ [1,m]Z) : Fei = ei =⇒ eTi [FySref ]ei ≥ eT
i Srefnomei
Proof. We continue from the proof of Theorem 5.3 (which requires KP/D ∈ DIAGm).
Fix i ∈ [1,m]Z. Since (Γ + FuKPFy)−1 − (Γ + KP)−1 ∈ PSDm, by definition of p.s.d.,
eTi (Γ + FuKPFy)−1ei ≥ eT
i (Γ + KP)−1ei. Suppose that Fei = ei, then Fyei = ei
and Fuei = ei, and so eTi Fy(Γ + FuKPFy)−1Fuei ≥ eT
i (Γ + KP)−1ei. Next, KP ∈PDm ∩DIAGm ⇒ KPei = λiei for some λi > 0. Therefore we can insert KP and obtain
eTi Fy(Γ + FuKPFy)−1FuKPei ≥ eT
i (Γ + KP)−1KPei.
Finally, using (5.1) and (4.13), the above is rewritten as eTi [FySref ]ei ≥ eT
i Srefnomei.
When small measurement noise are present, each diagonal element of [FySref ] =
Fy(Γ + FuKPFy)−1KPFu would either cluster about 0 (for failed outputs), or cluster
about some value greater than or equal to the matching diagonal element of Srefnom (for
127
Chapter 5. Integrating the PID and the PD Controllers
healthy outputs). Therefore the diagonal elements of 12Sref
nom can be taken as thresholds
to distinguish between the two cases.
Applying the above, we arrived at the following diagnosis algorithm:
Algorithm 5.5. Diagnosing F :
1. (Preparation) For the nominal LFSS under control of DCtrlPD with diagonal
gains KP/D, acquire [Srefnom].
2. (Preparation) For each k ∈ [1,m]Z, choose threshold τk := 12eTk [Sref
nom]ek.
3. Suppose the LFSSF (with failure) under the control of DCtrlPD produces a stable
CLSFPD, and so y is defined (Theorem 4.15). We wish to diagnose F = FyFu.
4. Acquire [FySref ] (Section 5.1.2, applying Algorithm 5.1).
5. For each k ∈ [1,m]Z, if eTk [FySref ]ek < τk, then eT
k y is a failed output (eTkFek =
0); otherwise eTk y is a healthy output (eT
kFek = 1). This determines F .
In comparing [Srefnom] with [FySref ], we assumed that a common KP is shared. However,
this assumption can be relaxed. Suppose that a new KPnew ∈ PDm ∩ DIAGm is used in
Step 4, instead of the original KP, such that [FySref ]new is acquired. Then we do not
need to repeat Step 1 to acquire [Srefnom]new. Instead, from (4.13) Sref
nom = ((KP)−1Γ+ I)−1,
we can obtain Γ from [Srefnom] and KP; we then compute [Sref
nom]new from Γ and KPnew:
Γ = KP([Sref ]−1 − I),
[Srefnom]new = ((KP
new)−1Γ + I)−1 = ((KPnew)−1KP([Sref ]−1 − I) + I)−1.
In fact, since Srefnom ≈ I for high gains, so assigning τ1 = . . . = τm = 0.5 may be a good
approximation. This also raises an interesting point: although our diagnosis algorithm
is model-based, the dependence on modelling details of the LFSS can be adjusted by
adjusting the gain.
It is to be noted that unlike Theorems 4.15 and Corollary 4.14, we do not require
Fu = F to diagnose F . Also, our diagnosis approach is only specified for the DCtrlPD, but
not the DCtrlFFPD; therefore we do not apply the feed-forward term (to improve tracking
and regulation) during diagnosis.
128
Chapter 5. Integrating the PID and the PD Controllers
Example 5.3. To verify Theorem 5.3 and Corollary 5.4, let use revisit Example 4.6,
which uses LFSS Benchmark A. We focus on the “high-gain” scenario, with KPhi = 90I3
and KDhi = 420I3. The diagonal entries of Sref
nom (4.34) are [0.9891; 0.9785; 0.9891]. There-
fore we choose diagnosis thresholds to be 12[0.9891; 0.9785; 0.9891]. The diagonal entries
of [FySref ] for various scenarios of F that satisfies the rank condition 〈R1〉 rank(LF) = n
(i.e., CLSFPD is stable) are shown in Table 5.1. The results are independent on how Fy
F eT1 [FySref ]e1 eT
2 [FySref ]e2 eT3 [FySref ]e3
diag(1, 1, 1) (nominal) 0.9891 0.9785 0.9891
diag(0, 1, 1) 0 0.9891 0.9891
diag(1, 0, 1) 0.9945 0 0.9945
diag(0, 0, 1) 0 0 1.0000
diag(1, 1, 0) 0.9891 0.9891 0
diag(0, 1, 0) 0 1.0000 0
diag(1, 0, 0) 1.0000 0 0
Table 5.1: Diagonal components of [FySref ] for different cases of F .
and Fu are chosen, as long as F = FyFu. We see that the entries are either 0 (for failed
outputs), or some value that is no less than the nominal case (for healthy outputs). So
under modest noise (up to about ±0.4), the threshold chosen can effectively distinguish
between failed outputs from healthy outputs, for every sensor/actuator pair. 4
Example 5.4. We repeat the verification for LFSS Benchmark C, using the results from
Example 4.7. Recall that the diagonal entries of Srefnom (for the gains chosen) are
0.981, 0.981, 0.981, 0.981, 0.981.
Next, if a combined sensor and actuator failure takes place on eT2 y and eT
2u, then the
diagonal entries of the corresponding Sref is
0.986, 0.000, 0.986, 0.986, 1.000.
Again, this agrees with Theorem 5.3, eTi Srefei ≥ eT
i Srefnomei for i ∈ 1, 2, 4, 5, i.e., the
indexes of diagonal entries that are non-zero.
4
129
Chapter 5. Integrating the PID and the PD Controllers
5.1.4 Limitations
Compared to the various diagnosis frameworks seen in Section 2.4.3, our diagnosis ap-
proach Algorithm 5.5 is simple, and has well-established detection thresholds. However,
our approach also suffers from some limitations, the most serious of which are intrusive-
ness and lack of decentralization.
We consider Algorithm 5.5 to be “intrusive” because it needs the controller to enter
a “diagnosis mode”, in which fault diagnosis becomes top priority, and nominal tasks
of the plant are suspended. In particular, we need to inject probing signals into the
system by altering yref . This issue is partially addressed in Algorithm 5.1, by perturbing
yref relative to an arbitrary “current preferred reference” yref0 . Moreover, since we are
using a PD controller without using the feed-forward compensation, there would likely
be steady-state tracking error, and there is no disturbance regulation.
Recall that two aspects of fault diagnosis are fault detection (determining whether
or not a fault has occurred) and fault isolation (extracting information on faults that
have occurred). The intrusiveness problem makes Algorithm 5.5 more suitable for fault
isolation than for fault detection. Here are some heuristics on how to tackle the lack of
fault detection in our framework:
• Implement threshold-based detection rules, i.e., if some component of ym−yref are
“too large” for an “extended duration”, then a full diagnosis is applied. Thresholds
for value/duration testing are needed to qualify above conditions – but we do not
have results on these. Also, even with a good threshold, this heuristics is not
foolproof. For example, if eTi y
ref = 0 for some i ∈ [1,m]Z, then since a sensor
failure in eTi y
m cannot be detected by this method.
• Perform scheduled diagnosis on the LFSS, prioritizing on events when the likelihood
of failure is high, e.g., on initial deployment, or on significant changes to yref .
• We can prioritize on subsets of sensor-actuator pairs when running Algorithm 5.5,
as to reduce the overall intrusiveness of the diagnosis procedure.
Next, we consider the “lack of decentralization” limitation of Algorithm 5.5. Since the
approach utilizes probing signals, so coordination among local controllers is required. In
particular, in Step 5, the colocated sensors/actuators are tested sequentially. Therefore
the diagnosis approach requires a central coordinator, and is not decentralized.
130
Chapter 5. Integrating the PID and the PD Controllers
One way to mitigate communication overhead is to choose a threshold of τ1 = . . . =
τk = 0.5, since in this case Step 1 and Step 2 in Algorithm 5.5 can be skipped. Also,
Step 4 and Step 5 can be merged, since we can acquire the k-th column in [FySref ] by
steady-state experiment, and obtain eTk [FySref ](KP)−1ek directly for testing. Therefore
the role of the central supervisor need to dictate the timing to test each colocated sensors/
actuators, but there is no extensive information exchange among control agents.
5.2 Linear Final Value Extrapolation
In order to perform diagnosis using [FySref ], we need to acquire steady-state measure-
ments Fyy = limt→∞
ym(t) from the CLSFPD. One way to obtain the steady-state measure-
ments is to wait for all transients to disappear, leaving an essentially constant value to
be measured. However, this process may be time-consuming, especially if the closed
loop system has lightly-damped modes. To improve efficiency, it is desirable to estimate
steady-state output of the LFSSF from measurements, without having to wait for signals
to become essentially constant. In this section, we develop one such method.
The material in this section is generic, and does not require the LFSS model. Therefore
the notation used here are independent from other sections.
We refer to [50] for topics related to signal processing and linear systems.
5.2.1 Problem Setup
Let y(t) be a real continuous time scalar signal that is specified by the following:
(∀t ∈ R) : y(t) = c0 +m∑i=1
ni−1∑j=0
ci,jtjeλit, (5.6)
where λ1, . . . , λm ⊂ C− are m ∈ N0 distinct stable poles, (∀i ∈ [1,m]Z) : ni ∈ N0,
and (∀i ∈ [1,m]Z)(∀j ∈ [0, ni − 1]Z) : ci,j ∈ C (may be 0). Therefore y(t) is a linear
combination of products of decaying exponential functions, with possible sinusoids and
polynomials. We also define
n := 1 + n1 + . . .+ nm, (5.7)
131
Chapter 5. Integrating the PID and the PD Controllers
which also counts c0. Since <(λi) < 0 for i ∈ [1,m]Z, so (∀j ∈ [0, ni−1]Z) : limt→∞ tjeλit =
0. This ensures that a final value exists:
limt→∞
y(t) = c0.
Since y(t) is a real function, so the poles λi and coefficients ci,j obey the appropriate
conjugate symmetry.
The linear final value extrapolation problem is defined as follows: Given the
ability to sample y(t) for a finite (say K) choice of time instants t ∈ t0, t1, . . . , tK | 0 ≤t0 < t1 < . . . < tK−1, develop a practical algorithm to find c0 in finite time. Of course,
the values
c0,m, n1, . . . , nm, n, λ1, . . . , λm, c1,0, . . . , c1,n1−1, . . . , cm,0, . . . , cm,nm−1,
are unknown, although domain-specific knowledge may be used to bound n.
It is desirable to determine c0 efficiently (minimize tK−1 and/or K) and robustly (able
to estimate c0 reasonably well under noise).
The problem of on-line identification of steady-states is studied in [12]. In this work,
a signal is said to “reach steady-state” within some specified window, when it consists of
a constant with some independent zero-mean noise added. The goal is to detect when a
signal reaches steady-state for some present window, and then extract the steady-state
value by applying novel statistical tests.
In [41], an application of steady-state analysis for fault diagnosis of an air conditioner
is considered. As with [12], signals are assumed to reach steady-state. Moving-window
averaging is used to determine when this occurs, and to extract a steady-state. More
specifically, standard deviation of data within windows is calculated, and is called a
“feature”. These features are used to decide when a steady-state is reached, and are
applied for fault diagnosis using threshold-based comparison.
Our problem is different from [12, 41], since we are considering a structured signal
modelled by (5.6). Although we would like some robust against noise, noise is assumed
to be small (justifiable for space systems), and do not warrant dedicated statistical treat-
ment. Finally, we wish to extrapolate the steady-state during signal transients, rather
than waiting for steady-state to be reached.
The harmonic retrieval problem of a noisy signal in [43] considers sums of sinusoids
132
Chapter 5. Integrating the PID and the PD Controllers
and noise. Our work considers a larger class of signals, i.e., sum of products of decaying
exponential, polynomial, and sinusoids. And as mentioned before, we are focused on
extrapolation by exploiting the structures of relatively clean signals obtained from a
linear system.
Sampled Signal
We seek a practical algorithm to extrapolate final the value of a signal. This precludes
mathematically correct but impractical methods such as determining y(0), y′(0), y′′(0),
etc., using Taylor series to recover y(t), and finally evaluate c0 = limt→∞ y(t).
By performing sampling, we can reformulate the problem to a discrete-time problem,
and then apply digital signal processing methods. Let T > 0 be a sampling period, and
let y[k] be a sampled sequence from y(t), defined as
(∀k ∈ N0) : y[k] = y(kT ).
Substituting t← kT in (5.6), we obtain ∀k ∈ N0,
y[k] = c0 +m∑i=1
ni−1∑j=0
ci,j(kT )jeλikT = c0 +m∑i=1
ni−1∑j=0
(ci,jTj)kj(eλiT )k
= c0 +m∑i=1
ni−1∑j=0
ci,jkjrki , (5.8)
where ci,j := ci,jTj and ri := eλiT for all i ∈ [1,m]Z and j ∈ [0, ni − 1]Z. Note that
λi ∈ C− implies that
(∀i ∈ [1,m]Z) : 0 < |ri| < 1.
In general, sampling can introduce frequency aliasing, i.e., λi1 6= λi2 , but ri1 = ri2 .
Therefore we may need to reduce m and “merge” the coefficients for ri1 = ri2 , etc. For
convenience, we assume without loss of generality that r1, . . . , rm is a set of distinct
elements.
A more serious problem that may arise from aliasing is the possibility that some non-
constant terms become constant after sampling, thereby “polluting” c0. For example,
sampling cos(t) with period T = 2π yields cos(kT ) = 1. However, since |ri| < 1, this
133
Chapter 5. Integrating the PID and the PD Controllers
does not occur. Therefore we can disregard this issue, and focus on the discrete problem.
5.2.2 Signal Processing Basics
Let f [k] be a discrete-time real signal, i.e., f [k] ∈ R, ∀k ∈ N0. For completeness, we
assign f [−1] = f [−2] = . . . = 0. The Z-transform [50] of f [k] is defined by
Z f [k] = F (z) =∞∑k=0
f [k]z−k. (5.9)
For quick reference, some properties of Z-transforms are
Z δ[k] = 1,
Zrk
=1
1− rz−1,
(∀c ∈ N0) : Z f [k − c] = z−cZ f [k] ,
Z (f ∗ g)[k] = Z f [k] × Z g[k] ,
limk→∞
f [k] = limz→1
(1− z−1)F (z). (Final value theorem)
where δ[k] is the discrete delta function, and ∗ is the discrete convolution:
δ[k] =
1, if k = 0,
0, if k 6= 0,(∀k ∈ N0) : (f ∗ g)[k] = (g ∗ f)[k] =
k∑i=0
f [k − i]g[i].
And of course, the final value theorem is applicable only if a final value is defined.
The Z-transform of y[k] (5.8) is
Y (z) =c0
1− z−1+
m∑i=1
ni−1∑j=0
ci,j(1− riz−1)j+1
=B(z)
A(z), where (5.10a)
B(z) = b0 + b1z−1 + . . .+ bn−1z
−(n−1), (5.10b)
A(z) = 1 + a1z−1 + . . .+ anz
−n = (1− z−1)A(z), (5.10c)
A(z) =m∏i=1
(1− riz−1)ni . (5.10d)
The coefficients ai and bi are all in R. Compared to (5.8), note that ∀i ∈ [1,m]Z, we
used ci,0, . . . , ci,nm−1 instead of ci,0, . . . , ci,nm−1, because the polynomial basis we used
134
Chapter 5. Integrating the PID and the PD Controllers
isZ−1
1
1−riz−1
, . . . ,Z−1
1
(1−riz−1)nm
instead of 1, k, . . . , knm−1. This produces
a more concise representation. Also, we allow A(z) and B(z) to have common factors
(this happens if c0 = 0 or ci,ni−1 = 0).
Let R[z−1] denote the set of all real polynomials in z−1:
R[z−1] := F (z) | (∃d ∈ N0)(∃f0, . . . , fd ∈ R | fd 6= 0) :
F (z) = f0 + f1z−1 + . . .+ fdz
−d. (5.11)
The degree of F (z) ∈ R[z−1] is denoted deg(F (z)) or degF . If F (z) 6= 0, then degF is
the maximum k so that the coefficient of z−k is non-zero:
(∀F (z) ∈ R[z−1] | F (z) 6= 0) : degF := maxk∈N0
k | fk 6= 0. (5.12)
If F (z) = 0, then formally deg 0 = −∞. The following identities hold in general:
(∀F1(z), F2(z) ∈ R[z−1]) : deg(F1(z)F2(z)) = degF1 + degF2,
(∀F1(z), F2(z) ∈ R[z−1]) : deg(F1(z) + F2(z)) ≤ max(degF1, degF2).
In (5.10), clearly A(z) ∈ R[z−1], B(z) ∈ R[z−1], degA = n, and degB ≤ n− 1.
A well-known interpretation of Y (z) = B(z)A(z)
is that y[k] is the result of applying
an infinite impulse response filter to a finite-duration signal [b0; . . . ; bn−1]. This is
obtained from (5.10). The coefficient of z−k in B(z) = A(z)Y (z) is
y[k] + a1y[k − 1] + . . .+ any[k − n] = b0δ[k] + b1δ[k − 1] + . . .+ bn−1δ[k − (n− 1)],
∴ y[k] = −a1y[k − 1]− . . .− any[k − n] + b0δ[k] + b1δ[k − 1] + . . .+ bn−1δ[k − (n− 1)].
For k ≥ n, the δ[k], . . . , δ[k − (n − 1)] vanish. So if y[0], . . . , y[n − 1] are known, then
the following recurrence can be used to determine y[n], y[n+ 1], . . . :
(∀k ∈ [n,∞)Z) : y[k] =n∑i=1
−aiy[k − i]. (5.13)
135
Chapter 5. Integrating the PID and the PD Controllers
5.2.3 Solution
For the final value extrapolation problem, we are given y[k], and we wish to calculate
c0 = y[∞] = limk→∞
y[k],
by only using a finite number of samples of y[k]. Our solution approach is to find a finite
impulse response (FIR) filter G(z) ∈ R[z−1] specified by2
G(z) := g0 + g1z−1 + . . .+ gp−1z
−(p−1),
p := degG+ 1,
so that applying G(z) to Y (z) produces a new signal w[k] with Z w[k] = W (z):
W (z) := G(z)Y (z),
(∀k ∈ N0) : w[k] = (g ∗ y)[k] =k∑i=0
g[i]y[k − i] =
p−1∑i=0
giy[k − i], (5.14)
such that w[k] consists of some transients followed by repeated occurrences of c0:
(∃W (z) ∈ R[z−1]) : W (z) = G(z)Y (z) =c0
1− z−1+ W (z). (5.15)
The desired scheme is illustrated in Figure 5.1. Here, the initial transient region in
Figure 5.1: Using an FIR filter to extrapolate the final value of y[k].
w[k] is specified by W (z). Thereafter, a plateau region consisting of w[k] = c0 for
k ≥ deg W appears.
2We will use g0, g1, . . . , gp−1 and g[0], g[1], . . . , g[p− 1] interchangeably.
136
Chapter 5. Integrating the PID and the PD Controllers
G(z) should be calculated from finite samples y[0], . . . , y[s− 1], so we define
s := Number of samples of y[k] used to compute G(z).
Another way to consider the FIR filter G(z) is that it cancels the poles r1, . . . , rm. This
perspective is used in our existence proofs, but will not be stated as a requirement. That
is because we want to be able to accept some imprecision, and enable poles that have
sufficiently decayed to “slip through” without exact cancellation.
The advantage of using an FIR filter G(z) is that measurement noise would create
fluctuation in the plateau region (w[k] for k ≥ deg W ), thereby allowing us to determine
how accurately c0 has been estimated. Also, G(z) may be reused to extract final value
for other signals generated from the same process that produced Y (z).
Examining (5.15) and Figure 5.1 leads to the following sub-problems:
1. How can we choose G(z) so that the final value of W (z) is indeed c0?
2. What should degG = p− 1 be for a solution to exist?
3. Given G(z), what is the length of the transient region (i.e., deg W − 1)?
Problem #1 is solved by the following (note that we are applying implicit evaluation):
Lemma 5.6. Given Y (z) (5.10) and G(z) ∈ R[z−1], then W (z) = G(z)Y (z) has the
same final value as Y (z) (i.e., c0) if and only if G(1) = 1:
(∀Y (z))(∀G(z) ∈ R[z−1]) : limk→∞
w[k] = c0 ⇐⇒ G(1) = 1.
Proof. Implicitly W (z) = G(z)Y (z). Applying the final value theorem twice yields
limk→∞
w[k] = limz→1
(1− z−1)G(z)Y (z) = G(1) limz→1
(1− z−1)Y (z) = G(1) limk→∞
y[k] = G(1)c0.
Therefore limk→∞w[k] = c0 if and only if G(1) = 1.
Another interpretation of Lemma 5.6 is as follows: Let w[k] = (g ∗ y)[k] with g0 + . . . +
gp−1 = 1. Then for k ≥ p − 1, the convolution (5.14) becomes an affine combination
of y[k − p− 1], . . . , y[k]. Thus constant component (final value) of y[k] is preserved,
whereas the exponentially decaying components continue to decay.
To solve Problem #2, we present a sufficient condition for G(z) to exist:
137
Chapter 5. Integrating the PID and the PD Controllers
Lemma 5.7. For each p ≥ n (5.7), there exists G(z) ∈ R[z−1] with degG = p− 1 so
that (5.15) is satisfied:
(∀Y (z))(∀p ∈ [n,∞)Z)(∃G(z) ∈ R[z−1] | degG = p− 1) :
G(z)Y (z)− c0
1− z−1∈ R[z−1].
Note that p > n may occur because we may only have a bound on n, and so a
“sufficiently large” p is chosen.
Proof. We will apply the pole cancellation idea here. From (5.10),
Y (z) =B(z)
(1− z−1)A(z)=
B(z)
(1− z−1)∏m
i=1(1− riz−1)ni.
Since ri 6= 1 for all i ∈ [1,m]Z, so A(1) 6= 0, and we can define G?(z) by the following:
G?(z) =A(z)
A(1).
Clearly degG? = deg A =∑m
i=1 ni = n− 1, and G?(1) = 1. Let us valuate G?(z)Y (z):
G?(z)Y (z) =A(z)
A(1)× B(z)
(1− z−1)A(z)=
1
1− z−1
B(z)
A(1)=
1
1− z−1
(B(1)
A(1)
)︸ ︷︷ ︸
c
+B(z)
A(1),
for some B(z) ∈ R[z−1]. Here we applied long division to obtain B(z) = B(1) + (1 −z−1)B(z). Clearly, the final value of G?(z)Y (z) is c. And from G?(1) = 1, we obtain
c = c0 by Lemma 5.6. Assigning G(z) := G?(z), then G(z) satisfies p−1 = degG? = n−1,
so for p = n, we have G(z)Y (z)− c01−z−1 ∈ R[z−1].
For any p ∈ [n+ 1,∞)Z, we can take any P (z) ∈ R[z−1] with degP = p− n > 0 and
P (1) = 1. Let P (z) = P (1) + (1− z−1)P (z) and G(z) := P (z)G?(z), then
G(z)Y (z) = P (z)G?(z)Y (z) =
(*
1P (1) + (1− z−1)P (z)
)(c0
1− z−1+B(z)
A(1)
)
=c0
1− z−1+ c0P (z) +
B(z)
A(1)+ (1− z−1)P (z)
B(z)
A(1)︸ ︷︷ ︸∈R[z−1]
,
138
Chapter 5. Integrating the PID and the PD Controllers
and so G(z)Y (z)− c01−z−1 ∈ R[z−1].
We consider the proof to be non-constructive, because r1, . . . , rm and n1, . . . , nm are
unknown. We will find other properties of G(z), so that we can construct G(z) without
determining the poles of Y (z). Note that p ≥ n is sufficient, but in general not necessary.
To see this, expand (5.15) to obtain
G(z)Y (z) =G(z)B(z)
(1− z−1)A(z)=
c0
1− z−1+ W (z),
∴ G(z)B(z) = [c0 + (1− z−1)W (z)]︸ ︷︷ ︸∈R[z−1]
×A(z).
So A(z) =∏m
i=1(1 − riz−1)ni needs to divide G(z)B(z). But if B(z) has a common
factor with A(z) (this can occur if there are redundant highest-power terms in (5.10),
i.e., ci,ni−1 = 0 for some i ∈ [1,m]Z), then we can choose G(z) with a lower degree. In
spite of this possibility, we will be conservative, and assume p ≥ n in our analysis.
Problem #3 is solved by the following:
Lemma 5.8. The length of the transient region in w[k] is less than degG = p− 1:
(∀Y (z))(∀G(z)) : W (z) := G(z)Y (z)− c0
1− z−1∈ R[z−1] =⇒ deg W < degG.
For example, if p = 4 and p > n, then degG = p − 1 = 3, i.e., G(z) = g0 +
g1z−1 + g2z
−2 + g3z−3. Lemma 5.8 states that the transient region in W (z) = G(z)Y (z),
spans w[0], w[1], and w[2], i.e., we obtain some W (z) (with degree p − 2 = 2) that
“contaminates” these entries. Beyond the transient region, w[3] = w[4] = . . . = c0.
Proof. It is assumed that G(z) satisfies (5.15). Let W (z) = G(z) B(z)
(1−z−1)A(z)− c0
1−z−1 , so
(1− z−1)A(z)W (z) = G(z)B(z)− c0A(z),
deg((1− z−1)A(z)W (z)) = deg(G(z)B(z)− c0A(z)),
deg(1− z−1) + deg A+ deg W ≤ max(degG+ degB, deg(c0A(z))),
1 + (n− 1) + deg W ≤ max(degG+ (n− 1), n− 1,−∞)
= degG+ (n− 1),
∴ deg W ≤ degG− 1.
139
Chapter 5. Integrating the PID and the PD Controllers
Here, −∞ accounts for the possibility that c0 = 0. We write the results as deg W <
degG = p− 1 to emphasize that w[p− 1] = w[p] = . . . = c0.
Having determined the existence of G(z), let us study how to construct it. We cannot
directly apply the method used in the proof of Lemma 5.7, since A(z) is unavailable.
Instead, we will express the relationship between Y (z) andG(z) by expressing convolution
as linear equations, using matrices. Let g ∈ Rp, and let yv,0,yv,1, . . . ∈ Rv for any v ≥ 1
be defined as
g =
gp−1
gp−2
...
g0
, (∀v ∈ N)(∀k ∈ N0) : yv,k =
y[k]
y[k + 1]
. . .
y[k + v − 1]
. (5.16)
Next, we form Yv,p ∈ Rv×p by horizontally concatenating yv,0, . . . ,yv,p−1:
(∀p ∈ [n,∞)Z)(∀v ∈ N) : Yv,p =[yv,0 yv,1 . . . yv,p−1
]
=
y[0] y[1] · · · y[p− 1]
y[1] y[2] · · · y[p]...
... . .. ...
y[v − 1] y[v] · · · y[v + p− 2]
.(5.17)
Recall that s was defined as the number of samples of y[k] used to compute G(z). There-
fore v + p− 2 ≤ s− 1, and if we intend on using all data available, we would have
s = v + p− 1. (5.18)
The next result directly relates y[k] (or Y (z)), g (or G(z)), and c0:
Theorem 5.9. If we choose p ≥ n, then the data Y (z), the filter G(z), and the final
value c0 are related by the following:
(∀Y (z))(∀p ∈ [n,∞)Z)(∀v ∈ N)(∃g ∈ Rp) :
[0 1T
1 Yv,p
][−c0
g
]=
[1
0
]. (5.19)
Proof. Given p ≥ n and v ∈ N, Lemma 5.7 asserts the existence of G(z) (this defines g)
with degG = p − 1, so that W (z) := G(z)Y (z) = c01−z−1 + W (z), where W (z) ∈ R[z−1]
140
Chapter 5. Integrating the PID and the PD Controllers
(this defines w[k]). The final value of w[k] is c0, so by Lemma 5.6, G(1) = 1, which leads
to 1Tg = g0 + . . .+ gp−1 = G(1) = 1.
From Lemma 5.8, deg W < deg(G) = p − 1, so W (z) only affects w[0], . . . , w[p − 2],
and we have w[p− 1] = w[p] = . . . = c0. Combining this with (5.14) leads to
(∀k ∈ [p− 1,∞)Z) : w[k] =
p−1∑i=0
giy[k − i] =
p−1∑j=0
y[k − (p− 1) + j]gp−1−j = c0,
where j = p− 1− i. Substituting k = κ+ (p− 1), i.e., κ = k − (p− 1) leads to
(∀κ ∈ N0) : w[κ+ p− 1] =
p−1∑j=0
y[κ+ j]gp−1−j = c0,
∴p−1∑j=0
yv,jgp−1−j = 1vc0, using (5.16),
i.e., we have a linear combination of vectors. From (5.17), we obtain Yv,pg = 1c0, which
when combined with 1Tg = 1 yields (5.19).
Theorem 5.9 states that given p ≥ n and g ∈ Rp, then the equations (where g and c0
are unknowns)
1Tg = 1, Yv,pg = 1c0, (5.20)
will always have a solution. One such solution for c0 is the desired c0, but in general,
the solution may not be unique. For instance, if p > 2 and v = 1, then (5.19) would
be under-determined, and many solutions for c0 may exist. The obvious solution is to
increase v. The next result gives us a bound on v to ensure the uniqueness of solution
to (5.20)
Theorem 5.10. Suppose that the conditions of Theorem 5.9 hold, and that v ≥ n,
then the solution for c0 in (5.20) is indeed c0:
(∀Y (z))(∀p, v ∈ [n,∞]Z)(∀g ∈ Rp) : (1Tg = 1) ∧ (Yv,pg = 1c0) =⇒ c0 = c0.
Proof. Assume that Y (z) (which defines c0), p, v, g, and c0 ∈ R are given (leading to
Yv,p ∈ Rv×p), so that p ≥ n, v ≥ n, 1Tg = 1, and Yv,pg = 1c0. For v ≥ n, from
141
Chapter 5. Integrating the PID and the PD Controllers
Yv,pg = 1c0 we extract the following:
(∀k ∈ [0, n− 1]Z) :
p−1∑i=0
y[k + i]gp−1−i = c0. (5.21)
Let us calculate the same sum for k = n, then applying the recurrence relation (5.13):
p−1∑i=0
y[n+ i]gp−1−i =
p−1∑i=0
(n∑j=1
−ajy[n+ i− j]
)gp−1−i
=n∑j=1
−aj
(p−1∑i=0
y[(n− j) + i]gp−1−i
).
But since n− j ∈ [0, n− 1]Z, so the bracketed is c0 from (5.21), so
p−1∑i=0
y[n+ i]gp−1−i =n∑j=1
−aj c0 = −c0
(−1 + 1 +
n∑j=1
aj
)= −c0(−1 + A(1)) = c0,
where A(1) = 0 holds because (1− z−1) is a factor of A(z) (5.10c). We have shown that
(5.21) holds for k = n, and this result can be extended by induction. So
(∀k ∈ N0) :
p−1∑i=0
y[k + i]gp−1−i = c0 =
p−1∑i=0
y[k + (p− 1)− i]gi,
∴ (∀k ∈ [p− 1,∞)Z) :
p−1∑i=0
y[k − i]gi = c0.
This describes the result of applying an FIR filter G(z) = g0 + g1z−1 + . . .+ gp−1z
−(p−1)
to Y (z), forming W (z) = G(z)Y (z) that satisfies w[p − 1] = w[p] = . . . = c0. Since
G(1) = 1, so from Lemma 5.6, we conclude that c0 = c0.
5.2.4 Computation
Given y[k] and an upper bound on n, in the previous section we have shown that to solve
for g and c0, we should choose p ≥ n and v ≥ n, construct Y = Yv,p ∈ Rv×p (5.17)
142
Chapter 5. Integrating the PID and the PD Controllers
(dropping subscripts for conciseness), and solve[0 1T
1 Y
][−c0
g
]=
[1
0
]. (5.22)
By Theorem 5.9 and Theorem 5.10, there exists a unique solution for c0, and potentially
multiple solutions for g = [gp−1; gp−2; . . . ; g0]. Moreover, if we apply the FIR filter G(z) =
g0 + g1z−1 + . . . + gp−1z
−(p−1) to Y (z), then the resulting W (z) = G(z)Y (z) satisfies
w[p− 1] = w[p] = . . . = c0.
We have shown that some solution of g and c0 always exists in the ideal case. In
practise, however, measurement noise would be present. Moreover, if y[k] in (5.8) has a
“weak” term that is a rapidly-decaying exponential term and/or has a tiny coefficient,
then y[k] with n poles can be approximated as a “simpler” signal y′[k] generated from
n′ < n poles. Therefore the difference y[k] − y′[k] can be treated as noise. Next, if the
system of linear equations is over-determined (i.e., v is large), then noise can produce
inconsistencies. Due to these concerns, we will not solve (5.22) directly. Instead, we will
solve the following generalized problem:
Minimizeg∈Rp,c0∈R
∥∥∥∥∥[
0 1T
1 Y
][−c0
g
]−
[1
0
]∥∥∥∥∥2
. (5.23)
Let us rewrite (5.23) with
A =
[0 1T
1 Y
], x =
[−c0
g
], b =
[1
0
].
Therefore we wish to minimize ‖Ax−b‖2 by changing x. This is the well-known minimum
squares problem; the solution is given by applying the Moore-Penrose pseudo-inverse [6]
of A, which yields x = A†b, i.e.,[−c0
g
]=
[0 1T
1 Y
]† [1
0
].
Under perturbation, the obtained solution may not satisfy 1Tg = 1. Since this is critical
for preserving c0 when applying G(z) as a filter (Lemma 5.6), a heuristics is to normalize,
143
Chapter 5. Integrating the PID and the PD Controllers
and obtain[−c0
g
]=
[0 1T
1 Y
]† [1
0
], c0 =
c0
1Tg, g =
g
1Tg. (5.24)
Note that in MATLAB, the pseudo-inverse command automatically performs the proper
singular value decomposition and threshold detection. This allows a very easy implemen-
tation.
Quadratic Programming Perspective
An alternative method to solve (5.22) while accounting of possible perturbation is to
reformulate the problem as
Minimizeg∈Rp,c0∈R
∥∥∥∥∥[1 Y] [−c0
g
]∥∥∥∥∥2
subject to 1Tg = 1.
This is equivalent to
Minimizeg∈Rp,c0∈R
[−c0 gT
] [ 1 1TY
YT1 YTY
][−c0
g
]subject to 1Tg = 1,
which is a quadratic programming problem with linear equality constraints. However, for
our purposes, the pseudo-inverse method is adequate and simpler to implement. There-
fore we will not pursue the quadratic programming method further.
5.2.5 Simulations and Practical Notes
We now present some simulations to illustrate the effectiveness and limitations of our
final value extrapolation procedure. Without loss of generality, let us take T = 1 as the
sample rate. This allows us to easily overlay y(t) and y[k] in plots.
Example 5.5. Consider the continuous signal y(t), which is sampled as y[k]:
y(t) = 2− 2e−0.2t cos(t) + 0.4e−0.5t,
y[k] = 2− 2(e−0.2)k cos(k) + 0.4(e−0.5)k.
Therefore c0 = 2, and n = 1 + 2 + 1 = 4, since (e−0.2)k cos(k) produces 2 poles at
144
Chapter 5. Integrating the PID and the PD Controllers
e−0.2(cos(1)±j sin(1)) ≈ 0.4424±j0.6889, and (e−0.5)k produces 1 pole at e−0.5 ≈ 0.6065.
Suppose we acquire y[0], . . . , y[17], i.e., s = 18 samples of y[k]. Let us determine
c0 only from these acquired data. The plots for y(t) and y[k] are shown in Figure 5.2
(a). Now, n is unknown, but suppose we were “lucky” and choose p = n = 4. Clearly
0 5 10 150
1
2
3
4
y[k
]
0 5 10 150
1
2
3
4
w[k
]
(a) y(t) and y[k]. (b) c0 and w[k] using p = 4.
Figure 5.2: Signal before and after FIR filter to extrapolate the final value.
p ≥ n, and by Lemma 5.7, there exists a filter G(z) to solve the final value extrapolation
problem. Given that the highest index of acquired y[k] is s − 1 = 17, if we wish to use
all available data to construct Yv,p, from (5.17) we would have v+ p− 2 = s− 1, leading
to v = s− p+ 1 = 15. Clearly v ≥ n, and by Theorem 5.10, we can calculate G(z) that
can be used to recover c0 (ideally).
Applying (5.24) results in g = [3.235117;−4.824383; 3.904567;−1.315300] and (“c0
obtained from experiment”) cexp0 = 2.0000. Thus the filter obtained is
G(z) = g0 + g1z−1 + g2z
−2 + g3z−3
= 3.235117− 4.824383z−1 + 3.904567z−2 − 1.315300z−3.
Applying g[k] (p = 4 elements) to y[k] (s = 18 elements) yields a finite sequence
w[k] = g[k] ∗ y[k], which has 4 + 18 − 1 = 21 elements. However, w[18], . . . , w[20]
requires y[18], . . . , y[20], which are unavailable. So we discard these, and only consider
w[0], . . . , w[17]. These are plotted in Figure 5.2 (b). The “true value” c0 is marked for
comparison. We see transient region w[0], . . . , w[2] (corresponding to W (z)), has length
3 = p− 1, which agrees with Lemma 5.8. The plateau region shows excellent agreement.
The analysis above was based on choosing p = n = 4. In practise, n is usually
unknown, but a bound would be known. Suppose we know that n ≤ 8, and therefore
choose p = 8. In this case, we still have v = s − p + 1 = 11 ≥ n. The resulting w[k]
145
Chapter 5. Integrating the PID and the PD Controllers
is shown in Figure 5.3 (a). The transient region y[0], . . . , y[6] now has length p− 1 = 7;
0 5 10 150
1
2
3
4w
[k]
0 5 10 150
1
2
3
4
w[k
]
(a) c0 and w[k] using p = 8. (b) c0 and w[k] using p = 3.
Figure 5.3: Effects of adjusting p in final value extrapolation.
and the plateau region agrees with cexp0 = 2.0000 = c0 (although it has been shortened).
Suppose we choose p = 3. The result is plotted in Figure 5.3 (b). Since p < n, so
a solution for G(z) may not exist. Indeed, the plateau region is not constant, and we
obtain cexp0 = 2.1107. However, the signal fluctuates much less than the original y[k] in
Figure 5.2. This is in part due to Lemma 5.6, i.e., the final value c0 is preserved.
Currently we chose v = s − p + 1, which uses all acquired data for computation.
Suppose we wish to trade off efficiency for accuracy, then we can choose a smaller v.
For example, choosing p = 5 and v = 5 would involve computing the pseudo-inverse of
Yv,p ∈ Rv×p = R5×5. Once we apply the obtained filter G(z) to the entire y[0], . . . , y[17],
we still obtain cexp0 = 2.0000. The resultant w[k] as shown in Figure 5.4 (a), and has a
good plateau region.
0 5 10 150
1
2
3
4
w[k
]
0 5 10 150
1
2
3
4
w[k
]
(a) c0 and w[k] using p = 5, v = 5. (b) c0 and w[k] using p = 5, v = 3.
Figure 5.4: Effects of adjusting p and v in final value extrapolation.
Next, suppose we choose v = 3 < 4, thereby not satisfying the conditions of Theorem
5.10. In this case, there is agreement in w[4] = w[5] = w[6] = cexp0 = 2.1059 6= c0, as
146
Chapter 5. Integrating the PID and the PD Controllers
shown in Figure 5.4 (b). However, for the remaining part of the plateau region (w[7],
w[8, etc), the agreement is lost. 4
Example 5.5 verifies different parts of the theory, and suggests that it is advantageous
to choose p to be large. However, the next example suggests the contrary may hold when
noise is present.
Example 5.6. For our next example, we consider a more complicated signal. Let y(t)
be specified by
y(t) = −1− 0.2e−0.09t cos(t+ 0.5)− e−0.08t cos(0.25t+ 4.7)
+ 0.1(t2 − t+ 1)e−0.2t cos(0.5t+ 1.6) + 0.2te−0.15t cos(2t) + 0.3e−0.7t,
i.e., sums of products of decaying exponential functions, sinusoids (with various phases),
and polynomials. Sampling this with T = 1 yields y[k]. We have c0 = −1.
We acquire y[0], . . . , y[39], i.e., s = 40 samples of y[k]. y(t) and the acquired y[k]
are plotted in Figure 5.5 (a). The (discrete) poles of y[k], i.e., 1, r1, . . . , r9 with their
multiplicities are shown in Figure 5.5 (b) (all inside the unit circle). Clearly n = 16.
0 10 20 30 40−3
−2
−1
0
1
y[k
]
−1 0 1
−1
−0.5
0
0.5
1
3
3
2
2
Re(ri)
Im(r
i)
(a) y(t) and y[k]. (b) Poles of y[k] (with multiplicity).
Figure 5.5: Sample signal with more poles.
Choosing p = 20 and applying our final value extrapolation method yields cexp0 =
−1.0000. The resulting w[k] is plotted in Figure 5.6 (a), along with the true c0. The
plateau region shows excellent numerical agreement with c0. Note that the transient
region has large values that dwarf the plateau region in the plot. The huge transients
are caused by large coefficients in G(z), which in turn is caused by the need to cancel
poles close to 1. To illustrate this, suppose that A(z) = (1−r1z−1)(1−r2z
−1)(1−r3z−1),
and so G(z) would ideally have zeroes in r1, r2, and r3. Let us assume the simple case
147
Chapter 5. Integrating the PID and the PD Controllers
0 10 20 30 40−100
−50
0
50
100
150
0 10 20 30 40
−20
−10
0
10
20
(a) c0 and w[k] using p = 20. (b) c0 and w[k] using p = 12.
Figure 5.6: The results of applying computed filter to y[k].
G(z) = A(x)
A(1). The normalization factor is to satisfy G(1) = 1 (Lemma 5.6). Therefore
G(z) =
(1− r1z
−1
1− r1
)(1− r2z
−1
1− r2
)(1− r3z
−1
1− r3
).
If any r1, r2 or r3 are close to 1, then we would have large coefficients in G(z).
Let us repeat the simulation using p = 12 < n (but with increased v). The results
are plotted in Figure 5.6 (b). Since p < n, so Lemma 5.7 is not satisfied, and the
plateau region is not constant (small fluctuations are present). However, we obtain cexp0 =
0.994397, which is reasonable. Moreover, the transient region has smaller magnitudes.
Finally, let us consider the effect of noise. We add a uniformly-distributed noise in
(−0.01, 0.01)R to each sample of y[k]. Across multiple runs, we observed that cexp0 ≈ 0.98
is frequently obtained, although there are some outliers from −0.5 to −1.2! A sample run
is plotted in Figure 5.7 (a). We see that the plateau region has good agreement. However,
0 10 20 30 40−3
−2
−1
0
1
0 10 20 30 40−3
−2
−1
0
1
(a) c0 and w[k] using p = 20. (b) c0 and w[k] using p = 12.
Figure 5.7: The results of applying computed filter to y[k] with noise.
for the outlier cases, the last element of the plateau region would deviate strongly. So if
148
Chapter 5. Integrating the PID and the PD Controllers
a poor result is obtained, we would be able to tell that the result is poor
Next, let us choose p = 12 and repeat the simulation (with y[k] added with the same
noise). The result is plotted in Figure 5.7. We see that the transient region appears less
satisfactory. But in spite of this, across multiple runs, the cexp0 obtained tends to be closer
to the true value c0 = −1, and has less overhead when compared to the p = 20 case. 4
So when noise is present, choosing a relatively small value of p can lead to a more
robust result. We stress that even if an inaccurate cexp0 is produced, we will be able to
detect this phenomenon by examining the numerical agreement in the plateau region,
and by examining the magnitude of the filter coefficients in G(z). By choosing G(1) = 1,
we do not “destroy” the desired c0 value. Thereafter conventional techniques (such as
windowed averaging in [41]) can be applied on the plateau region to extract c0.
We believe the prime culprits of inaccurate estimates are poles close to 1. Intuitively,
these describe slowly-decaying, non-oscillatory (after sampling) exponential functions,
which are “disguised” as a constant signal, and are caused by having a poorly-chosen
sample rates.
Finally, if the final value extrapolation technique does not obtain a good result, the
following strategies can be applied:
• Acquire more data to obtain more constraints for pseudo-inverse.
• Discard earlier acquired data, which would contain more transients.
• Down-sample the data, which has the effect of moving poles away from 1.
• Adjust p based on a priori knowledge on the poles of the system. There are various
compromises in having a high p versus a low p.
• Adjust v to avoid “over-fitting” available data.
5.3 Integrating the PID and PD Controllers
By combining the strengths of the PID controller DCtrlFA (3.8) and the PD controllers
DCtrlPD (4.2) (or DCtrlFFPD (4.29)), it will be shown that the DRSPF can be solved without
needing to know F a priori .
Recall that the PD controllers can stabilize the LFSSF without needing to know F(Theorem 4.6). Moreover, while the LFSSF is stabilized by the DCtrlFFPD, F can be obtained
149
Chapter 5. Integrating the PID and the PD Controllers
by running steady-state experiments (Section 5.1), i.e., fault diagnosis is performed. Once
F is determined, we can apply the PID controller with controller adjustments 〈C1〉–〈C4〉.This yields the DCtrlFA, which solves the DRSPF, i.e., robust tracking and regulation for
healthy outputs, such that spillover effects do not occur.
We will propose a framework to integrate the PID and PD controllers. Detailed
descriptions on how to implement such a framework will be provided, and heuristics
required to implement the scheme will be described.
5.3.1 Unifying the PID and PD controllers
We have encountered the applications of the following decentralized controllers to the
LFSSF (these are expressed in terms of ym for uniformity):
DCtrl : u = −KP(ym − yref)−KDym − εKIη, (2.23a)
η = ym − yref , (2.23b)
DCtrlFA : u = −FKPF(ym − yref)−FKDF ym − εFKIFη, (3.8a)
η = Fym −Fyref , (3.8b)
DCtrlPD : u = −KP(ym − yref)−KDym, (4.2)
DCtrlFFPD : u = −KP(ym − yref)−KDym + Γyref . (4.29)
For the DCtrlPD and the DCtrlFFPD, we also require KP and KD to be diagonal. The
controllers listed above can be parameterized by the following unified decentralized
controller (DCtrlU):
u = −NKPN (ym − yref)−NKDN ym − εNKINη, (5.25a)
η = sN (ym − yref), (5.25b)
where s ∈ 0, 1 is a scalar integrator-enable signal, and N ∈ DIAGm0,1 is a ma-
trix sensor-actuator pair enable signal. The controllers above are represented by
150
Chapter 5. Integrating the PID and the PD Controllers
assigning the following:
DCtrl : s = 1, N = I,
DCtrlFA : s = 1, N = F , Fη(0) = 0,
DCtrlPD : s = 0, N = I, η(0) = 0,
DCtrlFFPD : s = 0, N = I, η(0) = −1ε(KI)−1Γyref .
So by specifying s(t) and N (t), we can reconfigure DCtrlU into the different types of
controllers that we have seen. Note that the value of η(t) may need to be reassigned
during transition between controllers. Also, in general, KP/D/I, ε, and η are adjustable
if the need arises.
In DCtrlU, η(t) now plays two roles: For s(t) = 1, η(t) behaves as an integrator used
by the integral control; for s(t) = 0, η(t) is fixed, and behaves as a constant offset, which
is needed by the DCtrlFFPD. In general, η(t) can be assigned to produce any constant offset
in u, since ε > 0, and KI is invertible.
N specifies the subset of sensor/actuator pairs to which controller adjustments 〈C1〉–〈C4〉 are applied (corresponding to 0 entries along the diagonal of N ).
Augmenting the PD Controller
The DCtrlU (5.25) is not constrained to operate in the modes specified above. In fact, we
can use it to augment the PD controllers DCtrlPD (4.2) and DCtrlFFPD (4.2). Suppose that
F is known, and we wish to use the PD controller. We can use it to augment DCtrlPD by
applying adjustments 〈C1〉–〈C3〉, which transforms the DCtrlPD to the following:
u = −FKPF(ym − yref)−FKDF ym. (5.26)
This corresponds to assigning s = 0 and N = F . Note that this has the structure of a
decentralized controller from (3.4)
We can repeat the analysis in Chapter 3: Recall that R (3.15) is defined as F with
all 0-rows removed, and that F = RTR. Now (5.26) is rewritten as
u = RT[−(RKPRT)(Rym −Ryref)− (RKDRT)(Rym)]
= RT[−KP?(ym? − yref?)−KD?y?],
151
Chapter 5. Integrating the PID and the PD Controllers
where KP?/D? = RKP/DRT, ym? = Rym, and yref? = Ryref . Now u represents a 0-
padded controller signal from the control signals of a DCtrlPD for the LFSS? (3.24).
Another way to augment the DCtrlPD is to make the constant integrator state η(t)
hold an arbitrary value, aside from 0 for the DCtrlPD (4.2) and −1ε(KI)−1Γyref for the
DCtrlFFPD (4.29). This gives us a
Henceforth we use the term augmented DCtrlPD to refer to the PD controller with
generalizations discussed here.
5.3.2 Integrated Fault Diagnosis and Fault Accommodation
Let us now discuss how the DCtrlU can be used to perform integrated fault diagnosis
and fault accommodation. We will describe the attributes and actions of a “supervisor”
who adjusts DCtrlU, to perform various tasks in FTC. This supervisor may be a human
operator, a computer program, or a discrete event system. Our intention is to provide
a high-level guide on how various components we have presented can be used; we will
to present heuristics on how to these components can be synthesized. A comprehensive
treatment would involve analysis using hybrid systems, and is beyond the scope of this
thesis.
Let Fkn ∈ DIAGm0,1 represent the set of known failures. By contrast, F ∈ DIAGm0,1represents the set of actual faults. The set of known failures is a subset of actual faults,
so Fkn−F ∈ PSDm. Since we disengage sensor-actuator pairs for known failed outputs,
we can consider Fkn as a “baseline” set of failures that no longer our concern; for the
purpose of FTC, we only need to consider new failures in F relative to Fkn.
Operation Modes
In general, we would like to consider DCtrlU to operate in three distinct modes: PID
mode, PD mode, and diagnosis mode. These are explained below.
• PID Mode: The DCtrlU is configured to be the DCtrlFA (s = 1, N = Fkn) if
we have performed diagnosis and have discovered all SAF. In the PID mode, all
healthy outputs satisfy the DRSPF objectives, i.e., robust tracking and regulation
occur, such that no spillover effects occur. Note that if yref and w change to a
different value, the LFSSF will adapt accordingly, with exponential convergence
(for healthy inputs).
152
Chapter 5. Integrating the PID and the PD Controllers
If new SAF occur under the PID mode, instability may occur.
• PD Mode: The DCtrlU is configured to be an augmented DCtrlPD (s = 0, N =
Fkn), with η(t) fixed to some offset. Also, we specify KP/D ∈ PDm to be diago-
nal. In the PD mode, all healthy outputs would approximately satisfy the DRSPF
objectives, due to the absence of an integrator. However, η(t) would provide a
feed-forward term that can be used to improve tracking performance.
If new SAF occur under the PD mode, as long as the rank condition 〈R1〉 is satisfied,
the closed loop system will remain stable (Theorem 4.6).
• Diagnosis Mode: This is similar to the PD Mode, but we assign η(t) = 0. By
using the PD controller, assuming that the rank condition 〈R1〉 holds, the LFSSF
is kept stable, while we try to diagnose F . The supervisor runs Algorithm 5.5 to
determine F , i.e., perturbing yref and estimating y in order to examine diagonal
elements of [FySref ](KP)−1, and determine if any new (relative to Fkn) failures have
occurred.
Transitions among Operation Modes
Let us now describe how a high-level supervisor might transit among the operation modes
of the DCtrlU above, in order to perform FTC on the LFSSF. Table 5.2 summarizes
the transition conditions for the operation modes. Here, each row specifies the current
From \ To PID Mode PD Mode Diagnosis Mode
PID Mode Asymptotic trackingand regulation whenFkn = F
Satisfactory steady-state reached, nowwanting to improvefault-tolerance
Fault detection (heuris-tics) or scheduled check
PD Mode yref and w may havechanged, now wantingto get better η(t)
Fault-tolerant trackingand regulation
Fault detection (heuris-tics) or scheduled check
Diagnosis Mode Completed diagnosis,wanting to update η(t)
Completed diagnosis,wanting fault-tolerance
(Diagnosis in progress)
Table 5.2: Transition conditions for DCtrlU operation modes to perform FTC of theLFSSF.
operation mode of the DCtrlU, and each column specifies the new mode that it switches
153
Chapter 5. Integrating the PID and the PD Controllers
do, given that the transition condition specified is satisfied. Let us provide detailed
comments on the switching.
• Switching between the PID mode and the PD mode: The DCtrlU “hovers”
between the PID mode and the PD mode, when there are no unknown SAF, i.e.,
when Fkn = F . In the PID mode, asymptotic robust tracking and regulation
occurs, and in the process a η(t) that enables these is “solved”. Once the tracking
steady-state is considered satisfactory (through some arbitrary threshold), then
DCtrlU can transit by s = 1 → s → 0, i.e., stop updating η(t). Now the DCtrlU
behaves as a DCtrlFFPD, but the “feed-forward term” −εKIη(t) now becomes a fixed
offset that would compensate for the inadequacies of finite KP, as well as regulate
unknown w.
The PD mode performs “fault-tolerant tracking and regulation”, since the CLSFPD
remains stable under unknown failure. However, if yref or w are changed, then the
steady-state output for healthy outputs would “drift” away from the elements in
yref . To remedy this, the DCtrlU can switch to the PID mode again, to properly
update η(t).
The PD mode requires KP/D ∈ DIAGm, but the PID mode does not. Although
the PID mode and the PD mode can share common (diagonal) KP/D, this is not
necessary. Note that the DCtrlU can also “redesign” KP/D/I if desired. However, if
this occurs then η(t) may require proper update.
• Switching between PID/PD modes to diagnosis mode: As mentioned in
Section 5.1.4, we only have heuristics for deciding when to perform diagnosis. Ide-
ally the DCtrlU would switch to diagnosis mode upon fault detection. We mentioned
that imposing output thresholds is one heuristics to do this. Another heuristics is
to have the DCtrlU enter diagnosis mode regularly for regular, planned diagnosis.
These two methods can be combined.
The diagnosis mode implements (5.5), and is supposed to produce Fkn := F upon
termination. However, a caveat is that we assign η(t) := 0 so that we can directly
apply the diagnosis threshold results Theorem 5.3 and Corollary 5.4.
Another problem that can occur during the diagnosis mode is that new, unknown
SAF may appear. To remedy this, one heuristics is to perform extra baseline steady-
state output measurements (i.e., [Fyyref0 ]) at the end of diagnosis, and verify that
154
Chapter 5. Integrating the PID and the PD Controllers
it is consistent with the original measurement. If the steady-state obtained is same
as the original, then there is a high likelihood that no SAF has occurred during
diagnosis; otherwise we would need to rerun everything.
When the diagnosis is complete, the DCtrlU has an option to switch to the PID
mode or the PD mode. The simplest method is to switch to PID mode so that
Fy(t) → Fyref . However, it may be advantageous to switch to PD mode at first
to obtain a faster response. One can also pre-adjust η(t) to a favourable value,
although we will not explore this possibility.
It remains to discuss what the initial operating mode should be. If it is deemed
that there is a high risk of failure, it would be helpful to initialize the DCtrlU in use the
diagnosis mode or the PD mode. Otherwise the PID mode, i.e., the default for DRSP
would also suffice – this will be done in our examples.
5.4 Examples
We conclude this chapter by presenting detailed examples to illustrate the integrated
fault diagnosis and fault accommodation scheme from Section 5.3.
The main system considered is LFSS Benchmark C. Wherever applicable, the sam-
pling rate we use is T = 60 (all time units are in seconds). The continuous time simulation
is performed using Simulink. To accommodate varying sampling rate by the software,
cubic spline interpolation is applied to obtain the desired sampled signal from the original
data.
To obtain the steady-state observation Fyy, here is our heuristic for deciding whether
not a steady-state is reached. Given ym(t) from simulation, and some “current time”
tcur, we obtain (by sampling) 16 output measurement vectors ym(tcur), ym(tcur−T ), . . . ,
ym(tcur− 15T ). Next, we evaluate the standard-deviation across the 16 samples for each
component of ym. When these standard deviations are all less than 0.01, then we assume
that the signal has reached steady-state, and the mean across samples is taken as the
steady-state value.
We begin from a basic example, in which steady-state is explicitly obtained by ap-
plying the above scheme.
155
Chapter 5. Integrating the PID and the PD Controllers
Example 5.7. Let us consider LFSS Benchmark C, with
q = 5, E = B, F = I5.
We specify the tracking signal yref = yref0 and (unknown) disturbance signal w,
yref0 = yref = [1; 2; 0.5;−2;−3] w = [1; 1;−1; 1; 1].
The following controller parameters are used:
KP = 500 diag([1, 1, 4, 1, 1]), KD = 4× 104 diag([1, 1, 4, 1, 1]),
KI = diag([1, 1, 4, 1, 1]), ε = 0.5.
The initial states x(0) and the initial integrator state η(0) are both specified to be 0. In
this example, we simulate a “run-through” of a controller that can perform FTC on the
LFSS, using the scheme presented in this chapter.
Initially the LFSS has no failure. We initialize the DCtrlU in the PID mode (i.e., assign
s(t) := 1), with Fkn = I. The resulting physical output y(t) is plotted in Figure 5.8.
Here, the PID controller (i.e., s(t) := 1) is applied to the nominal LFSS until t = 4,000.
0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000−4
−3
−2
−1
0
1
2
3
y1
y2
y3
y4
y5
y(t
)
Figure 5.8: y(t) for nominal system under PID controller, then switching to PD controller.
At this point, we judge (visually) that the tracking performance is acceptable. We then
switch the DCtrlU to the PD mode (i.e., assign s(t) := 0), while keeping the same value of
η(t) (which is now held constant), so −εKIη still contributes to u. The dashed vertical
lines mark transition (i.e., from the PID controller to the PD controller) boundaries. We
see that the change does not affect output. Note that the components of the output are
156
Chapter 5. Integrating the PID and the PD Controllers
labelled yi := eTi y, for i ∈ [1,m]Z. Also, the output at t = 0 is dominated by the Fw
term.
Suppose that at t = 5,000 s, a sensor failure occurs in eT1 y, and an actuator failure
occurs in eT5 y. This corresponds to assigning
Fy = diag(0, 1, 1, 1, 1), Fu = diag(1, 1, 1, 1, 0).
The resulting physical output y(t) is plotted in Figure 5.9. The failed outputs are now
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5
x 104
−5
0
5
10
15
20
25
30
y1
y2y3
y4
y5
y(t
)
Figure 5.9: y(t) from t = 0 to after SAF, where the LFSSF remains in PD control whilemeasuring Fyy0.
labelled with thick lines. Note that the controller can only observe ym = Fyy. Therefore
the controller does not detect the fact that eT1 y has become very large, but measures
eT1 y
m = 0 instead.
We now switch the DCtrlU to the diagnosis mode (assuming that fault detection has
taken place). The goal now is to diagnose F . The diagnoser waits until ym reached
steady-state (using the criteria stated above) at t = 47, 300. At this point, the following
is acquired:
Fyy0(@t = 47,300) = [0; 1.9998; 1.0027;−3.0002; 5.9131].
Next, we apply the method in Section 5.1.2 to diagnose F . We first determine [FySref ]
from the steady-state measurements, after perturbing the reference signal. We choose
the perturbation to be ρ = 0.1, and then specify yref := yref0 + ρei and acquire the
corresponding yi, for each i ∈ [1, 5]Z. The physical outputs y from these steady-state
experiments are shown in Figure 5.10. From the experiment, we acquire
157
Chapter 5. Integrating the PID and the PD Controllers
5 6 7 8 9 10 11 12 13 14
x 104
−5
0
5
10
15
20
y(t
)
Figure 5.10: y(t) during steady-state experiments to measure Fyy1, . . . , Fyy5.
Fyy1(@t = 73,400) = [0; 2.0003; 1.0521;−3.0997; 6.5896],
Fyy2(@t = 99,500) = [0; 2.0996; 1.0029;−3.0004; 5.8159],
Fyy3(@t = 118,400) = [0; 2.0002; 1.1023;−2.9998; 6.1040],
Fyy4(@t = 137,300) = [0; 1.9998; 1.0027;−2.9002; 5.9138],
Fyy5(@t = 146,300) = [0; 2.0002; 1.0023;−2.9998; 5.9041].
As shown in Figure 5.10, the healthy outputs are only slightly perturbed during the
diagnosis process. Using these, we obtain (the diagonals are bold for emphasis)
[FySref ]m =
0 0 0 0 0
0.0051 0.9980 0.0037 −0.0002 0.0038
0.4945 0.0023 0.9961 0.0003 −0.0040
−0.9950 −0.0021 0.0036 0.9996 0.0036
6.7646 −0.9723 1.9091 0.0065 −0.0904
By comparison, the calculate [FySref ] (i.e., with Fy and Fu known) is
[FySref ] =
0 0 0 0 0
0.0000 1.0000 0.0000 0.0000 0
0.5000 0.0000 1.0000 0.0000 0
−1.0000 0.0000 0.0000 1.0000 0
6.8699 1.0000 2.0000 0.0000 0
,
so we have reasonable agreement from simulation. In general, we can increase ρ to obtain
more accurate results (the trade-off is that we would perturb the system more as a result).
158
Chapter 5. Integrating the PID and the PD Controllers
The computed Srefnom (for the nominal system) is
Srefnom =
0.9079 0.0446 0.0950 −0.0921 0.0446
0.0446 0.9079 0.0950 0.0446 −0.0921
0.0238 0.0238 0.9050 0.0238 0.0238
−0.0921 0.0446 0.0950 0.9079 0.0446
0.0446 −0.0921 0.0950 0.0446 0.9079
So we can take half of the diagonal entries ( ≈ 0.45) as fault detection threshold. Applying
this to [FySref ]m, we correctly diagnose the following:
F = diag(0, 1, 1, 1, 0) = FyFu.
Now that F is known, we can apply controller adjustments 〈C1〉–〈C4〉 to perform active
FTC. This is done by assigning N = F . Let us implement the change, but keep s = 0,
i.e., stay in the PD mode. Note that η := 0, so the previous offset for the PD controller
is gone. The result of fault accommodation is shown in Figure 5.11. Therefore the failed
1.46 1.48 1.5 1.52 1.54 1.56
x 105
−15
−10
−5
0
5
10
15
20
y(t
)
Figure 5.11: y(t) after fault-adjusted PD controller is applied.
outputs become uncontrolled, and we leave natural damping to their s oscillation to a
halt. Finally, suppose we engage the PID controller at t = 156, 300. The results are
shown in Figure 5.12: The presence of the integrator compensates for the effect of the
disturbance and finite KP. Thus the healthy inputs Fy(t) recover their tracking objective
from before the SAF. 4
Example 5.7 presents a complete “flow” of how use the PD controller and the PID
controller to perform FTC on the LFSSF. A main disadvantage, however, is that the
159
Chapter 5. Integrating the PID and the PD Controllers
1.56 1.58 1.6 1.62 1.64 1.66 1.68 1.7 1.72
x 105
−2
0
2
4y
1
y2
y3
y4
y5
y(t
)
Figure 5.12: y(t) after fault-adjusted PID controller is applied.
diagnosis process is extremely time-consuming. One way to mitigate this problem is to
implement some heuristics to prioritize diagnosis of various inputs. For example, the
fact that eT1 y
m = 0 even though eT1 y
ref 6= 0 points to a high likelihood of sensor failure.
Therefore it is reasonable to conduct steady-state experiment on this sensor-actuator pair
first, and then obtain the corresponding column in [FySref ]m so that we can accommodate
it earlier, even before attempting diagnosis on the other inputs.
A better method to improve the required time for diagnosis is to apply the final value
extrapolation scheme that was explored in Section 5.2.
Example 5.8. Let us repeat the simulation in Example 5.7, using the same LFSS, yref ,
w, KP/D/I, x(0) and η(0). However, we now use the final value extrapolation method
seen in Section 5.2 to obtain steady-state.
Here is the procedure used to perform final value extrapolation: p = 15 was chosen.
The sampling time was chosen to be T = 60, as before. For each i ∈ [1, 5]Z, an FIR filter
Gi(z) was computed for eTi y
m, whose sampled data is denoted yi[k]. A sampling window
was specified with duration of 3pT = 2,700. This gave rise to s = 3p + 1 = 46 samples,
yi[k0], yi[k0 + 1], . . . , yi[k0 + 45]. From (5.18) then, v = s+ 1− p = 31 was obtained. The
effectiveness of Gi(z) was verified by applying Gi(z) to the 46 samples of yi[k] acquired.
From Lemma 5.8, the length of the plateau region is s−(p−1) = 45−(15−1) = 32. The
standard deviation in the plateau region was computed for each yi[k]. If the maximum
standard deviation (among different output channels) was less than 0.01, then the filters
G1(z), . . . , G5(z) were accepted; otherwise the observation window is shifted by pT , i.e.,
k0 := k0 + p, and the process was repeated.
Note that cubic spline interpolation was applied to the simulated data, when we
160
Chapter 5. Integrating the PID and the PD Controllers
obtain samples for yi[k].
Since the same setup as in Example 5.7, so the outputs prior to failures (i.e., sensor
failure in y1 and actuator failure in u5) are same as Figure 5.8. After the occurrence of
the SAF, we attempt to extract the steady-state observation Fyy0 using the procedure
above. The physical output from t = 0 to the end of this process is plotted in Figure
5.13. The failed (physical) output components in y(t) are plotted in bold. We see that
0 1000 2000 3000 4000 5000 6000 7000−10
0
10
20
30
y(t
)
Figure 5.13: y(t) from t = 0 to after SAF, where the LFSSF remains in PD control whiledetermining Fyy0 by applying final value extrapolation.
the final value extrapolation was obtained at t = 7,700, while outputs signals are still
undergoing transients (although the topmost signal eT1 y(t) is unobserved due to sensor
failure). The results of applying the obtained filters Gi(z) to each sampled observations
from t = 5,000 to t = 7,000 (interpolated and then overlaid onto time) are shown in
Figure 5.14. Thus the plateau regions show good regularity. Note that eT1 y
m = 0, which
5000 5500 6000 6500 7000 7500−10
−5
0
5
10
y(t
)
Figure 5.14: Filtered ym(t) from the experiment to extrapolate Fyy0.
161
Chapter 5. Integrating the PID and the PD Controllers
is also shown in the plot. The obtained steady-state is
Fyy0(@t = 7,700) = [0; 2.0000; 1.0025;−3.0001; 5.9086].
Next, we extract [FySref ] by perturbing yref and obtaining the resulting steady-state
measurement Fyy, but now applying final value extrapolation. The physical output
from this process is shown in Figure 5.15. Again, Fyy1, . . . , Fyy5 were obtained amid
0.8 1 1.2 1.4 1.6 1.8 2
x 104
−5
0
5
10
15
20
25
y(t
)
Figure 5.15: y(t) during steady-state experiments to extrapolate Fyy1, . . . , Fyy5.
transients. The results of applying each the obtained filters for each yref perturbation,
and each output are shown in Figure 5.16. Again, we see excellent plateau regions. The
0.8 1 1.2 1.4 1.6 1.8 2
x 104
−50
0
50
f[k] *
ym
[k] (inte
rpola
ted)
Figure 5.16: Filtered ym(t) from the experiment to obtain Fyy1, . . . , Fyy5.
steady-state experiments are completed at t = 21,200. Using the data gathered, we
162
Chapter 5. Integrating the PID and the PD Controllers
compute
[FySref ]m =
0 0 0 0 0
−0.0000 1.0001 0.0008 −0.0005 −0.0003
0.5000 0.0000 1.0000 0.0000 0.0000
−0.9988 0.0012 0.0014 1.0002 0.0012
6.8736 −0.9954 2.0038 0.0043 0.0037
,
which is close to the actual [FySref ]. We successfully diagnose F = diag(0, 1, 1, 1, 0) =
FyFu, and then apply the fault-adjusted controllers, as shown in Figure 5.17 and Figure
5.18. 4
2 2.2 2.4 2.6 2.8 3
x 104
−15
−10
−5
0
5
10
15
20
y(t
)
Figure 5.17: y(t) after fault-adjusted PD controller is applied.
3 3.2 3.4 3.6 3.8 4 4.2 4.4 4.6
x 104
−2
0
2
4y
1
y2
y3
y4
y5
y(t
)
Figure 5.18: y(t) after fault-adjusted PID controller is applied.
From Example 5.8, we see that by applying final value extrapolation with p = 15,
we are able to complete diagnosis is completed on t = 21,200. This is a significant
163
Chapter 5. Integrating the PID and the PD Controllers
improvement over diagnosis completion on t = 146,300) in Example 5.7.
Recall from Lemma 5.7, p ≥ n (here, n is the number of poles in y(t)) is a sufficient
condition to guarantee the existence of the desired FIR filter G(z). However, the LFSSF
can have an infinite number of modes, i.e., n =∞. Yet in (5.2.4), we cited the possibility
of treating weak signal components as noise as a motivation to adopting a least-squares
formulation to obtaining G(z). From this perspective then, ym(t) from the LFSSF would
“shed” signal components as t increases, i.e., effectively n decreases with time, as expo-
nentially decaying components fade into noise, then oblivion. Indeed, as t → ∞, ym(t)
would appear as the constant steady-state that we desire.
Thus a heuristic is as follows: we fix p, and choose the proper sampling time T based
on a priori knowledge. Next, choosing a large v (and hence large s) would extend the
plateau region, which would diminish the possibility of coincident. We recognize that
these problems are non-trivial, and further work is needed to enable a more systematic
design methodology.
164
Chapter 6
Conclusions and Future Work
This chapter concludes the thesis. Section 6.1 restates the main control objectives, and
evaluates the FTC schemes that we studied. Section 6.2 summarizes each content chapter,
and details the key insights thereof. Section 6.3 presents future directions to extend the
results in this thesis.
6.1 Conclusions
This thesis focuses on the fault tolerant control (FTC) of a specific family of systems,
namely, colocated large flexible space structures (LFSS). The main control problem of
interest is the decentralized robust servomechanism problem (DRSP). The class of faults
modelled consists of sensor and/or actuator failures (SAF), which are assumed to be
abrupt, total, and permanent.
Control Objectives and FTC
The main control objectives of the DRSP of the LFSS are as follows:
• Stabilization of the modelled (i.e., modal-truncated) closed loop system.
• Asymptotic tracking of an arbitrary constant reference, for each physical output
component. This objective requires closed loop stability.
• Asymptotic regulation against unknown constant disturbances, for each physical
output. This objective requires closed loop stability, and is independent from the
tracking goal.
165
Chapter 6. Conclusions and Future Work
• Robustness (of stability, tracking, and regulation) against LFSS parametric uncer-
tainty.
• In all cases there should be no “spillover effects”, i.e., under closed loop control
with or without failure, stability should continue to hold, when a LFSS model
is replaced with a more accurate model that retains any mixture of low or high
frequency modes.
• Decentralized control: the controller should be implemented using N independent
agents. Each controller agent is given a distinct subset of sensor readouts, and is
responsible for producing the input signals for matching actuator components.
In the presence of failures, ideally an FTC scheme would simultaneously satisfy all the
above objectives. However, it is more realistic, and more interesting to accept “graceful
degradation of performance”. This allowance gives rise to new freedom and new complex-
ity in controller design. The freedom to explore a wider array of designs is accompanied
by the requirement to identify the performance degradation that can arise in each design.
We note that stability, robustness, and avoidance of spillover effects are “core” control
objectives that must be satisfied. However, for tracking and regulation, we relaxed the
DRSP to form the DRSPF, which requires tracking and regulation objectives to hold only
for healthy outputs.
Effectiveness of FTC Schemes
In this thesis, four FTC schemes are considered: active FTC using a PID controller,
passive FTC using a PD controller, fault diagnosis using steady-state experiments, and
integrated FTC combining the above schemes. The extents to which each of these schemes
satisfies the DRSPF control objectives are summarized in Table 6.1.
X signifies that an objective is met by a scheme. This always holds for the “core”
objectives, i.e., asymptotic stability, robustness, and avoiding spillover effects.
It should be noted that the tracking and regulation objectives are stated for healthy
outputs only; so performance degradation takes place in failed outputs. This is the main
difference between the ideal objectives in DRSP and the modified objectives in DRSPF.
X? signifies the caveat in which F 6= Fu is incompatible with high gains; if F 6= Fu,
then choosing arbitrarily high gains would cause some failed outputs to reach arbitrarily
166
Chapter 6. Conclusions and Future Work
Active FTC Passive FTC Diagnosis Integrated FTC
Stability X X X X
Robustness X X X X
No “spillover effects” X X X X
Tracking (healthy) X X? X? X
Regulation (healthy) X X? X? X
Decentralization X X X†
Table 6.1: Summary of how our FTC schemes satisfy the DRSPF control objectives.
large steady-state values. In the integrated FTC scheme, this problem only exists in
transient, and disappears once active FTC is applied.
As seen in Table 6.1, the active FTC scheme (using PID controller) meets all the
objectives in DRSPF. Note that SAF information is available for this scheme. This
assumption no longer holds for the passive FTC scheme (using PD controller). As a
result, it becomes more difficult to find a suitable controller; the consequence is that we
need to restricting gains to be diagonal. Another caveat of the passive FTC scheme is
that the DRSPF is only partially met (as indicated by X?).
Our SAF diagnosis scheme utilizes “probing signals”, but is advantageous in that
well-defined detection thresholds is obtainable. A main caveat is that the method is not
decentralized. We still need a centralized coordination to cause the controller to enter
“diagnosis mode”, to perturb components of the reference signal sequentially, and to
wait while steady-state outputs are determined. But beyond the need of coordination,
diagnosis within each controller agent can operate independently.
For the integrated FTC scheme, X† indicates that diagnosis requires central coor-
dination, but passive FTC and active FTC (using the unified decentralized controller)
are decentralized. Using a similar idea as [36], passive FTC is applied to stabilize the
LFSSF to “buy time” for the diagnoser to find the SAF. Thereafter active FTC can be
applied. Thus the integrated FTC scheme combines the advantages of both active and
passive FTC schemes; and to a large extent, the main problem of this thesis is solved.
Nevertheless, further improvements are possible, since our diagnosis scheme still employs
many heuristics, and it requires centralized coordination.
More details on the results in this thesis are summarized and discussed in Section 6.2.
167
Chapter 6. Conclusions and Future Work
6.2 Summaries of Chapters and Discussion
Developments in Chapter 3
A controller that satisfies all DRSP control objectives for a nominal LFSS is given in [61].
Here, a decentralized tuning PID (output feedback) controller (DCtrl) is specified. This
controller serves as a natural starting point for our FTC research. Incorporating SAF
into the LFSS-DCtrl closed loop system reveals that spillover may arise, because faults
effectively destroy the colocated property of the LFSS. To restore colocation, we devise
the following control reconfiguration scheme: for each failed output, we deactivate for
corresponding sensor and actuator, and reset the corresponding integrator.
The proposed scheme is simple to implement, since there is no need to redesign or
store gains for multiple cases of SAF. The main theoretical challenge is to transform the
new closed loop system to a form for which previous results from [61] can be applied. As
a result, we obtain a simple-to-check rank condition for a solution to exist. The condition
is encountered throughout this thesis.
The control reconfiguration studied mostly satisfies most the control objectives of
the DRSP. The main exception (i.e., performance degradation) is that tracking and
regulation goals for failed outputs (i.e., sensor/actuator pairs that have a SAF) cease to
hold. For precision, the DRSPF is defined to incorporate the modified objectives. We note
that the control reconfiguration scheme is decentralized, since it can be independently
implemented by each colocated sensor-actuator pair.
To further analyze physical output under failure, steady-state output matrices are
derived. These matrices are independent of controller gains. Based on the insight that
components corresponding to failed outputs are “towed” by healthy components, we find
a way to apply steady-state output matrices to perform tracking recovery. In this scheme,
a feed-forward control can be used to reference input. As a result, tracking objectives for
“mission-critical” failed outputs can be re-enabled, at the cost of sacrificing the tracking
objectives for other healthy outputs. Note that the scheme requires disturbances to be
negligible, and so the regulation objectives are not satisfied.
The above-mentioned rank condition provides insight on the physical nature of sen-
sor/actuator redundancies in a benchmark LFSS example. This leads to qualitative
recommendations for sensor-actuator placement to improve fault tolerance.
The main approach taken in Chapter 3 belongs in the realm of active FTC, since
SAF information is available and is applied for control reconfiguration. If we adopt
168
Chapter 6. Conclusions and Future Work
different assumptions (actuator failures subsume sensor failures) and restrictions (gains
are diagonal), then we can obtain a passive FTC scheme. However, this passive FTC
scheme relies on the fact that integrator states are typically computer registers that can
be allowed to grow arbitrarily large, as long as they are unused.
Developments in Chapter 4
Having studied active FTC, next we focus on passive FTC of the LFSS, i.e., trying to
satisfy the DRSP control objectives under unknown SAF. The foundation of our method
is that a PD controller with positive and diagonal gains stabilizes an LFSS under unknown
SAF, given that the same rank condition from Chapter 3 holds. Diagonal gains make
the failed LFSS appear colocated for all SAF cases, thus avoiding the spillover problem.
Although the choice limits the design space of gains, other key advantages of diagonal
gains are that it is robust, fully decentralized, and easy to implement.
With respect to our control objectives, the remaining challenges involve satisfying
tracking and regulation. Unfortunately, owing to the absence of integrators, a PD feed-
back controller would produce steady-state offsets for constant references and constant
disturbances, even in the nominal case. This is clearly a degradation of performance, but
we still wish to achieve practical tracking and regulation in some form. To specify this,
we modify the basic requirements.
Instead of seeking asymptotic tracking and regulation with a single controller, we
now consider a family of controllers, so that tracking and regulation errors can be made
arbitrarily small by some choice of controller within the family. We expect that the family
of PD controllers with adjustable gains would satisfy the modified objective. Indeed, we
verified that tracking and regulation errors for healthy outputs can be arbitrarily reduced
by increasing the gains of PD controllers. This result appears to solve our problem, and
complement the active FTC result from before.
However, analyzing the steady-state output matrices reveals a caveat of using high-
gain PD controllers. First, we find that these matrices are gain-dependent (unlike the
PID controller case). Moreover, if actuator failures do not subsume sensor failures,
then some failed output component can scale with gains. These “rogue-outputs” make
it problematic to have arbitrarily high gains. This realization leads to the following
limitation for passive FTC by PD controllers: either we assume that actuator failures
subsume sensor failures, or we need to choose low gains, giving rise to steady-state
169
Chapter 6. Conclusions and Future Work
tracking/regulation errors.
For theoretical and computational interest, we find a way to rewrite PD controller
steady-state output matrices in a simpler form. In this form, the system parameters
of the LFSS are isolated into gain and fault independent “characteristic matrices”. A
result obtained is that in the nominal case, the subspace of rigid body mode outputs has
zero tracking error, under any gain. This insight has applications in station-keeping and
attitude control problems for the LFSS.
Using the characteristic matrices, we also devise a feed-forward control that can nul-
lify tracking error in the nominal case. Unfortunately, the regulation requirement remains
unsatisfied. Robustness issues can arise if the characteristic matrices are computed from
the modal-truncated, finite-dimensional LFSS model. However, it is also possible to em-
pirically determine the characteristic matrices, thereby achieving an application-specific
form of system identification for the LFSS.
Developments in Chapter 5
Up until this point, we have focused on fault accommodation. For active FTC, we
assume that SAF information is available by some unknown means; and for passive
FTC, we assume that SAF information is simply unavailable. In Chapter 5, we develop a
method to diagnose SAF, based on performing steady-state experiments and measuring
outputs. This diagnosis result enables an integrated FTC approach, which combines the
advantages of PID and PD controllers from the previous chapters.
Our diagnosis procedure relies on two facts on PD controller (the rank condition for
the existence of solution is assumed to be satisfied):
• The closed loop system is stable under unknown failures, and so we have the op-
portunity to carry out experiments.
• The steady-state output matrices are functions of LFSS parameters, gains, and
SAF.
The following steps are proposed for SAF diagnosis: sequentially perturb reference
signal components, measure the resulting changes in steady-state output, and then cal-
culate portions of the steady-state output matrices. It can be shown that when SAF
are present, diagonal entries of the measured matrix are zeroed. Otherwise these entries
170
Chapter 6. Conclusions and Future Work
are positive, with a calculable lower bound. This result allows us to define thresholds to
decide whether each output is faulty or healthy.
Our SAF diagnosis method is subject to a number of challenges. First, the need to
perturb reference signal components makes the method intrusive. Next, there is a trade-
off between intrusiveness and the accuracy of result under measurement noise – so some
tuning is required. Another caveat is that the experiment requires output components to
be coordinated, and so the method is centralized, rather than decentralized. Finally, our
diagnosis method uses steady-state output, which may take a long time to determine.
Therefore we consider our diagnosis method as a proof-of-concept, which shows that in
principle, it is possible to stabilize the LFSS under unknown SAF, while simultaneously
performing fault diagnosis.
To address the inefficiency in acquiring steady-state output data, we formulate and
solve the linear final value extrapolation problem. Without loss of generality, we refor-
mulate the problem in a discrete-time setting. Our solution involves designing a finite
impulse response filter from data. When applied to the measured signal, constant com-
ponents are preserved, and strong oscillatory or decaying signals are diminished. This
results in filtered data from which the final value can be read. The filter design problem
reduces to a least-squares optimization, which is well-studied and easy to implement. The
disadvantages of our final value extrapolation method are that some a priori knowledge
on the time constants of the signal is needed (to determine sampling time). Also, the
robustness of the method against noise requires more analysis.
Having obtained results on active FTC using PID controller, passive FTC using PD
controller, and SAF diagnosis, the last part of Chapter 5 combines these results to pro-
duce an integrated FTC for the DRSP of the LFSS under SAF. To this end, we unify
PID controller and the PD controller with a constant feed-forward term into a common
framework: the integrator is considered as a module that can “numerically solve” the
ideal feed-forward term for the DRSP. By switching between the two controllers, we gain
the advantages of both controllers: the PID controller enables good tracking and regula-
tion, and the PD controller (whose feed-forward term is taken from the integrator values)
maintains stability, in the event of unknown SAF. If a SAF takes place, we can apply our
diagnosis algorithm while the system is stabilized by the PD controller. Once the SAF
has been diagnosed, we can apply control reconfiguration.
Our integrated FTC approach involves many heuristics, as well as application-specific
parameter tuning. Therefore we consider our contribution to be largely theoretical. How-
171
Chapter 6. Conclusions and Future Work
ever, as a proof-of-concept, we performed a simulation of the integrated scheme on our
large benchmark example. The final value extrapolation method was also used to improve
the efficiency of our diagnosis algorithm.
6.3 Future Work
Some possibilities in extending the results in this thesis are discussed here. These exten-
sions are separated into two classes: General extensions and specific extensions.
6.3.1 General Extensions
The extensions proposed here are ambitious, and solving these would constitute signifi-
cant advancements to the results presented in this thesis and in the references.
Non-colocated Systems
Sensor-actuator colocation helps us avoid spillover effects, and simplifies our analysis by
creating ubiquitous positive-semi-definite matrices (e.g., LKP/D/ILT). However, coloca-
tion also places significant constraints on the LFSS design, thereby limiting the classes
of controllers for the nominal LFSS, and for FTC. Extending DRSP to nominal non-
colocated LFSS is already challenging. It would also be a significant contribution that
reveals insights for extension into FTC of LFSS.
Tracking and Disturbance Models
We have focused on constant reference signals and disturbance. However, existing results
in DRSP accommodate signals with other unstable poles, i.e., combinations of sinusoids,
polynomials and growing exponential functions [19]. To extend the DRSP for the LFSS
to perform tracking and regulation against these signals, a natural step would be to
change the integrator to a more general servo-compensator.
Extended Fault Models
In this thesis we consider a total and abrupt SAF model. To extend this, one may
consider a wider family of failure scenarios. Two extensions that are closely related to
our SAF model are partial failures (diagonal elements of Fy and Fu can take fractional
172
Chapter 6. Conclusions and Future Work
values) and constant-offset failures (a failed sensor or actuator is stuck at an arbitrary
constant, not just 0).
Another extension is to proceed beyond SAF, and consider structural failures, i.e.,
the mechanical model may change due to faults. A reasonable first step would be to
assume a small number of failures, and consider multiple LFSS models under failure.
Intermittent Faults
Throughout this thesis we assume that SAF are permanent. Removing this assumption
leads to the possibility of intermittent/recoverable faults. This means LFSS may switch
between different fault modes. New complexities arise, since it is well-known that such
behaviour may cause instability, even if the individual switching modes are asymptotically
stable linear systems.
For the case of active FTC, one way to address intermittent faults is to impose “arti-
ficial permanent SAF”, i.e., a disabled sensor/actuator remains permanently disabled. A
more interesting approach would be to study how fault recovery may be exploited. This
research may also involve applications of switching controls to DRSP and FTC of the
LFSS.
Transient Analysis and Optimization
We have outlined the main control objectives in this thesis, but we did not address
transient response, which is extremely important in application. For our examples, we
tuned the control parameters in a rather ad hoc manner. To improve the applicability of
our work on the FTC of the LFSS, one may systematically analyze transient behaviour,
and attempt to optimize it. A starting point would be to apply existing work on optimal
control for the nominal case, and then incorporate faults.
6.3.2 Specific Extensions
The extensions proposed here are specific problems that are related to the problems
solved in this thesis. These problems have a narrower scope than the general problems,
but nonetheless can still be interesting and nontrivial.
173
Chapter 6. Conclusions and Future Work
Parsimonious Fault Diagnosis
The proposed diagnosis procedure in this work involves determining [FySref ] by (ef-
fectively) measuring [FySref ]e1, . . . , [FySref ]em, i.e., performing multiple steady-state
experiments. The parsimonious fault diagnosis problem asks, “is it possible to deter-
mine F by performing far fewer experiments?” For instance, we may choose some yref so
that the results of evaluating [FySref ]yref for (Fy,Fu) would produce many different pos-
sibilities. Using a look-up-table, we can then reject many hypotheses on what (Fy,Fu)
should be. Ideally, we would be able to formalize this procedure by exploiting algebraic
structure of [FySref ] to extract more information from steady-state experiments.
Integration with Other Fault Diagnosis Methods
The fault diagnosis method proposed this thesis arises from structural insights in Sref
for the LFSS. As reviewed in Section 2.4.3, many fault diagnosis techniques exist for
more generic systems. We do not apply these diagnosis methods to perform integrated
FTC on the LFSSF, and this exercise may lead to alternative solutions to our problem.
However, we note that an advantage of our fault diagnosis method is that it operates in
closed loop, but many existing fault diagnosis methods assumes that the system operates
in open loop. Therefore detailed closed loop analysis is needed, to integrate other fault
diagnosis methods with fault accommodation of the LFSSF.
Tuning Integrated Fault Diagnosis and Fault Accommodation
Our integrated fault diagnosis and accommodation applies many heuristics. In particular,
there are many parameters (sample rate, thresholds, assumed number of states) that are
manually tuned. In our experience, it is not difficult to tweak these parameters to obtain a
working simulation – so this is promising, since our setup has some degree of “parametric
robustness.” However, there are still cases where seemingly good parameters fail. It
would therefore be practical and theoretically interesting to systematically study the
effects of these parameters, and then devise a systematic way to obtain good parameters.
Incorporating Redundant Sensors and Actuators
Assumption 2.3 states that rank L = m. Relaxing this requirement would allow m > n,
so that redundant sensors and/or actuators may exist. Exploiting this redundancy may
give rise to new opportunities in performing FTC on the LFSS under SAF.
174
Chapter 6. Conclusions and Future Work
In-Depth Study of Integrator State
Recall from Section 5.3.2 that when transiting from the PID mode to the PD mode, the
integrator states are kept fixed, so they act as constant offsets that help the PD controller
compensate against steady-state tracking error and unknown disturbances. From this
perspective, the integrator states are “special values” that hold valuable information.
One perspective is to consider the integral controller as a numerical search tool that
solves these special values. For the special case of constant yref and w, it may be
possible to replace or enhance the integral controller with a different solver module, so
the desired values are determined more efficiently.
Effects of Actuator Saturation
We have assumed that LFSS is a linear system, which allows components of u to be
arbitrary in R. However, real LFSS actuators have saturation effects (produced by hard-
ware or imposed limits). Modelling this would add a new complexity to the FTC of the
LFSS. In particular, Section 3.3.7 may be extended to allow unknown sensor failures to
be specified. In this case, a failed sensor can cause integrator states to grow indefinitely,
but saturation of the corresponding saturation would cap the constant damaging effect
this has on the LFSS. As a result, the misbehaving actuator behaves as a disturbance,
which is addressed by the regulation problem in the DRSP.
Unfortunately, actuator saturation also limits the ability of controllers to regulate
disturbances. Therefore competing effects exist, and a more in-depth analysis is needed,
which would also depend on detailed actuator specification. In the context of LFSS and
PID controller, to study the effect of actuator saturation, it may be helpful to consult
existing literature on passive systems and anti-windup controller.
A further generalization of studying actuator saturation would enable actuator com-
ponents to have different saturation values depending on the direction (positive or neg-
ative). In particular, this would allow the modelling of actuators that only act in one
direction.
175
Appendix A
Mathematical Details
This chapter contains generic mathematical results that are used throughout this thesis.
Notations and definitions from Section 2.1 are applied here.
A.1 Linear Algebra
In this section, we state a number of well-known results related to linear algebra. Our
main reference is [6]. Unless stated explicitly, all symbols are “generic”, i.e., they are
unrelated the systems defined in this thesis (e.g., the LFSS). In particular, we will use
m,n ∈ N0 as generic variables to represent the dimensions of a matrix.
A.1.1 Matrix Inverses
Lemma A.1. A matrix inverse can “absorb” surrounding invertible matrices:
(∀A,B,C ∈ GLn) : AB−1C =(C−1BA−1
)−1.
This basic fact is proved using the identity (AB)−1 = B−1A−1. A special case is the
seemingly perplexing identity:
(∀A,B ∈ GLn) : AB−1A−1 =(ABA−1
)−1.
176
Appendix A. Mathematical Details
Lemma A.2. Given a square block matrix [A,B; C,D], where A and D are square,
and where D and A−BD−1C (the Schur complement) are invertible, then[A B
C D
]−1
=
[(A−BD−1C)−1 −(A−BD−1C)−1BD−1
−D−1C(A−BD−1C)−1 D−1 + D−1C(A−BD−1C)−1BD−1
].
This result can be derived by Gaussian elimination, or verified by direct evaluation.
A.1.2 Basic Properties of Positive Definite and Positive Semi-
Definite Matrices
A symmetric square matrix A ∈ SYMn is positive definite (p.d.) if the associated
quadratic form vTAv is positive for non-zero v:
(∀v ∈ Rn − 0) : vTAv > 0.
This is commonly denoted A > 0, but in this thesis we write A ∈ PDn to explicitly show
matrix dimensions. Similarly, A ∈ SYMn is positive semi-definite (p.s.d.) if
(∀v ∈ Rn) : vTAv ≥ 0.
This is commonly denoted A ≥ 0, but in this thesis we write A ∈ PSDn. Note that
PDn ⊂ PSDn ⊆ SYMn.
P.d. and p.s.d. matrices are critical for proofs in this thesis. We now state a number
of elementary results pertaining to these matrices.
Lemma A.3. A symmetric matrix is p.d. (p.s.d.) if and only if its eigenvalues are
all positive (non-negative):
(∀A ∈ SYMn) : A ∈ PDn ⇐⇒ (∀λ ∈ σ(A))(λ > 0),
(∀A ∈ SYMn) : A ∈ PSDn ⇐⇒ (∀λ ∈ σ(A))(λ ≥ 0).
177
Appendix A. Mathematical Details
Lemma A.4. Right-multiplying a p.s.d. matrix A by a rectangular matrix B, fol-
lowed left-multiplying by the transpose of B results in a p.s.d. matrix.
(∀A ∈ PSDn)(∀B ∈ Rn×m) : BTAB ∈ PSDm.
Lemma A.5. Right-multiplying a p.d. matrix A by a “tall” and full-ranked matrix
B, followed left-multiplying by the transpose of B results in a p.d. matrix:
(∀A ∈ PDn)(∀B ∈ Rn×m) : rank B = m =⇒ BTAB ∈ PDm.
An important special case of Lemma A.4 and Lemma A.5 is that the congruent trans-
formation BTAB (for B ∈ GLn) of a p.d. (p.s.d.) matrix A is also p.d. (p.s.d.).
Choosing B = [I; 0] or B = [0; I], Lemma A.4 and Lemma A.5 yield the following:
Lemma A.6. Sub-matrices of p.d. (p.s.d.) matrices are also p.d. (p.s.d.):
(∀m ∈ [0, n]Z)
(∀
[A1 ∈ Rm×m A2
AT2 A3
]∈ PDn
): (A1 ∈ PDm) ∧ (A3 ∈ PDn−m),
(∀m ∈ [0, n]Z)
(∀
[A1 ∈ Rm×m A2
AT2 A3
]∈ PSDn
): (A1 ∈ PSDm) ∧ (A3 ∈ PSDn−m).
Lemma A.7. The positive combination of two p.d. (p.s.d.) matrices is p.d. (p.s.d.),
and the positive combination of a p.d. matrix with a p.s.d. matrix is p.d.:
(∀α, β ∈ (0,+∞)R)(∀A,B ∈ PDn)(∀X,Y ∈ PSDn) :
(αA + βB ∈ PDn) ∧ (αX + βY ∈ PSDn) ∧ (αA + βY ∈ PDn).
Lemma A.8. A matrix is p.s.d. and invertible if and only if it is p.d.:
PSDn ∩ GLn = PDn.
178
Appendix A. Mathematical Details
Proposition A.9. Given a p.s.d. matrix A, the set of vectors that annihilates the
quadratic form of A coincides with the kernel of A:
(∀A ∈ PSDn)(∀v ∈ Rn) : (vTAv = 0) ⇐⇒ (Av = 0) ⇐⇒ (vTA = 0T).
Lemma A.10. The inverse of a p.d. matrix is also p.d.:
(∀A ∈ PDn) : A−1 ∈ PDn.
Lemma A.11. The Schur complement of a p.d. matrix is invertible:
(∀m ∈ [0, n]Z)
(∀
[A1 ∈ Rm×m A2
AT2 A3
]∈ PDn
): A1 −A2A
−13 AT
2 ∈ PDm.
Proof. Since A3 ∈ PDn−m (Lemma A.6), so it invertible, and A1−A2A−13 AT
2 is defined.
Next, we apply a congruent transform using [I,0;−A−13 AT
2 , I] ∈ GLn to block-diagonalize
[A1,A2; AT2 ,A3] (noting that A−1
3 ∈ PDn−m ⊆ SYMn−m by Lemma A.10):[I −A2A
−13
0 I
][A1 A2
AT2 A3
][I 0
−A−13 AT
2 I
]=
[A1 −A2A
−13 AT
2 0
AT2 A3
][I 0
−A−13 AT
2 I
]
=
[A1 −A2A
−13 AT
2 0
0 A3
]∈ PDn.
This is p.d. since [A1,A2; AT2 ,A3] ∈ PDn (Lemma A.5). Finally, A1−A2A
−13 AT
2 ∈ PDm
follows from Lemma A.6.
Lemma A.12. The block matrix inverse formula for a p.d. matrix is the following:
(∀m ∈ [0, n]Z)
(∀
[A1 ∈ Rm×m A2
AT2 A3
]∈ PDn
):[
A1 A2
AT2 A3
]−1
=
[S−1 −S−1A2A
−13
−A−13 AT
2 S−1 A−13 + A−1
3 AT2 S−1A2A
−13
],
where S = A1 −A2A−13 AT
2 is a Schur complement of the matrix.
179
Appendix A. Mathematical Details
Proof. A3 ∈ PDn−m (Lemma A.6) and S = A1 − A2A−13 AT
2 ∈ PDm (Lemma A.11).
So A3 and S are invertible. These satisfy the conditions for Lemma A.2, which is then
applied to derive the formula.
A.1.3 Matrix Decomposition and Transformation
Well-known results on matrix decomposition and transformation are presented in this
section. We refer to [6, 51] for proofs and algorithms of these results.
Lemma A.13. Symmetric matrices have real eigenvalues, have a full complement of
orthonormal eigenvectors, and can be diagonalized by orthogonal matrices:
(∀A ∈ SYMn)(∃P ∈ On) : PTAP ∈ DIAGn.
Lemma A.14. (Cholesky decomposition) A p.d. matrix can be written as a product
of an invertible lower-triangular matrix and its transpose:
(∀A ∈ PDn)(∃B ∈ GLn ∩ LT RIn) : A = BBT.
Lemma A.15. (Matrix square root) A p.d. (p.s.d.) matrix has a square root that is
also p.d. (p.s.d.):
(∀A ∈ PDn)(∃A1/2 ∈ PDn) : A = A1/2A1/2,
(∀A ∈ PSDn)(∃A1/2 ∈ PSDn) : A = A1/2A1/2.
For the p.d. case, we write A−1/2 = (A1/2)−1.
Lemma A.16. (QR decomposition) A “tall” matrix can be decomposed into a prod-
uct of an orthogonal matrix and a “tall” upper-triangular matrix:
(∀A ∈ Rn×m : n ≥ m)(∃Q ∈ On)(∃R ∈ UT RIm) : A = Q
[R
0(n−m)×m
].
180
Appendix A. Mathematical Details
The QR factorization is usually stated for square matrices, and a constructive proof
involves left-multiplying A by successive orthogonal matrices to nullify the sub-diagonal
portions (e.g., using Householder reflection) [51]. The case of “tall” matrices is obtained
by 0-padding, which yields[A 0
]= Q
[R 0
0 0
], from which Lemma A.16 follows.
A.1.4 Additional Properties of Positive Definite Matrices
Lemma A.17. If A is p.d. and B is symmetric (same dimensions), then A and B
can be simultaneously diagonalized by congruent transformation under an invertible
T:
(∀A ∈ PDn,B ∈ SYMn)(∃T ∈ GLn) : (TTAT = I) ∧ (TTBT ∈ DIAGn).
Note that we applied a congruent transformation TT(·)T, and not a similarity transfor-
mation P−1(·)P. Therefore eigenvalues are not preserved.
Proof. A ∈ PDn ⇒ A−1 ∈ PDn (Lemma A.10). Applying Cholesky decomposition
(Lemma A.14) yields A−1 = PPT for some P ∈ GLn. Thus APPT = I. Applying
similarity transform PT(·)P−T results in PTAP = I. Next, B ∈ SYMn ⇒ PTBP ∈SYMn, which admits an orthogonal diagonalization (Lemma A.13), i.e., ∃Q ∈ GLn so
that QTQ = I and QT(PTBP)Q ∈ DIAGn. Assigning T = PQ ∈ GLn results in
TTAT = QT(PTAP)Q = QTQ = I,
TTBT = QT(PTBP)Q ∈ DIAGn.
Lemma A.17 can be combined with Lemma A.4 and Lemma A.5 to obtain the fol-
lowing specializations:
(∀A ∈ PDn,B ∈ PSDn)(∃T ∈ GLn) : (TTAT = I) ∧ (TTBT ∈ DIAGn ∩ PSDn),
(∀A,B ∈ PDn)(∃T ∈ GLn) : (TTAT = I) ∧ (TTBT ∈ DIAGn ∩ PDn).
181
Appendix A. Mathematical Details
Lemma A.18. Given p.d. matrices X and Y, Y subtracted by X is p.s.d. if and
only if the inverse of X subtracted by the inverse of Y is p.s.d.:
(∀X,Y ∈ PDn) : Y −X ∈ PSDn ⇐⇒ X−1 −Y−1 ∈ PSDn.
The proof of this result is found in [6], but we have found our own version.
Proof. Since X,Y ∈ PDn, by Lemma A.17, ∃T ∈ GLn so that TTYT = I and D :=
TTXT ∈ PDn ∩DIAGn. From Lemma A.1, T−1Y−1T−T = I and T−1X−1T−T = D−1,
so Y−1 = TTT and X−1 = TD−1TT.
We will apply Lemma A.5 multiple times. First, we have Y−X ∈ PSDn ⇔ TT(Y−X)T ∈ PSDn ⇔ I − D ∈ PSDn. Since D ∈ PDn ∩ DIAGn, so I − D ∈ PSDn
⇔ each diagonal entry of D is in (0, 1]R ⇔ each diagonal entry of D−1 is in [1,∞)R
⇔ D−1 − I ∈ PSDn ⇔ T(D−1 − I)TT ∈ PSDn ⇔ X−1 −Y−1 ∈ PSDn.
Lemma A.19. The sum of two p.s.d. matrices is p.d. if and only if horizontally
concatenating the two matrices produces a full-(row)-rank matrix:
(∀A,B ∈ PSDn) : A + B ∈ PDn ⇐⇒ rank[A B
]= n.
Proof. Since A + B ∈ PSDn (Lemma A.7), and so A + B ∈ PDn ⇔ A + B ∈ GLn
(Lemma A.8). We now focus on proving A + B ∈ GLn ⇔ rank[A,B] = n. Note that
rank[A,B] ≤ n.
(=⇒): A + B ∈ GLn ⇔ rank(A + B) = n ⇔ rank ([A,B][I; I]) = n ⇒ rank[A,B] ≥ n,
since rank is non-increasing with matrix multiplication. Therefore rank[A,B] = n.
(⇐=): Suppose A + B /∈ GLn, then ∃v ∈ Rn − 0 so that vT(A + B) = 0. Therefore
vTAv + vTBv = vT(A + B)v = 0 (Proposition A.9). A,B ∈ PSDn means vTAv ≥ 0
and vTAv ≥ 0, and so vTAv = vTBv = 0. Applying Proposition A.9 again, we have
vTA = vTB = 0T, and so vT[A,B] = 0T, which implies rank[A,B] 6= n, since v 6= 0.
A.1.5 Asymptotic Stability of Mass-Damper-Spring Systems
Recall that Lemma 4.4 is stated as follows:
182
Appendix A. Mathematical Details
Lemma 4.4. If M, D, and K are p.d., then the system Mξ+ Dξ+ Kξ = 0 has an
asymptotically stable origin.
The following corollary is also stated:
Corollary 4.5. If X and Y are p.d., then
[0 I
−Y −X
]is Hurwitz.
These are well-known results [39]. For comparison, we supply our own proof.
Proof. Take any M,D,K ∈ PDn. M is invertible with inverse M−1 ∈ PDn (Lemma
A.10). By Lemma A.15 we have M−1 = M−1/2M−1/2 with M−1/2 ∈ PDn, and so
M−1/2MM−1/2 = I. Defining d = M−1/2ξ, we can rewrite Mξ + Dξ + Kξ = 0 as
d+ (M−1/2DM−1/2)d+ (M−1/2KM−1/2)d = 0,
which is equivalent to
x =
[0 I
−Y −X
]x,
where x = [d; d], X = M−1/2DM−1/2, and Y = M−1/2KM−1/2.
M−1/2 ∈ SYMn, and so X,Y ∈ PDn (Lemma A.5). We have reduced Lemma 4.4
to Corollary 4.5, which is now our main focus. Therefore we wish to prove that
(∀X,Y ∈ PDn) : A ∈ HUR2n, where A =
[0 I
−Y −X
]∈ R2n×2n.
We will solve the Lyapunov equation for A, i.e., construct P,Q ∈ PD2n so that ATP +
PA = −Q. X ∈ PDn has positive eigenvalues (Lemma A.3). If we choose µ ∈(0,minσ(X))R then min σ(X− µI) > 0 (spectral mapping theorem), so X− µI ∈ PDn.
Next, let
P :=
[µX + Y µI
µI I
]∈ SYM2n,
183
Appendix A. Mathematical Details
Q := −(ATP + PA)
= −
([0 −Y
I −X
][µX + Y µI
µI I
]+
[µX + Y µI
µI I
][0 I
−Y −X
])
= −
([−µY −Y
Y µI −X
]+
[−µY Y
−Y µI −X
])=
[2µY 0
0 2(X− µI)
]∈ SYM2n.
The Lyapunov equation is satisfied by construction. It remains to show P,Q ∈ PD2n.
For Q: We have µY ∈ PDn (since µ > 0 and Y ∈ PDn) and X − µI ∈ PDn (by
choice of µ). Therefore Q = 2 block diag(µY,X− µI) ∈ PD2n.
For P: X− µI ∈ PDn ⇒ µ(X− µI) + Y ∈ PDn (Lemma A.7). Since In ∈ PDn, so[µ(X− µI) + Y 0
0 In
]∈ PD2n.
Applying Lemma A.5 leads to
P =
[µX + Y µI
µI I
]=
[I µI
0 I
][µ(X− µI) + Y 0
0 In
][I 0
µI I
]∈ PD2n.
A.2 The Rigid Body Rank Test
Suppose that an LFSS (2.3) is specified. So n, m, Ω2, ∆, and L are given, while As-
sumption 2.1, Assumption 2.2, Assumption 2.3, and Assumption 2.4 hold, i.e., the system
matrices Ω2 ∈ PSDn, ∆ ∈ DIAGn∩PSDn, and L ∈ Rn×m have the following structures:
Ω2 =
[0n 0
0 Ω2
], ∆ =
[0n 0
0 ∆
], L =
[L
L
]. (2.5)
with n = n − rank Ω2, Ω2 ∈ DIAGn−n ∩ PDn−n, and ∆ ∈ PDn−n. Moreover, 1 ≤ n ≤m ≤ n, rank L = m, rank L = n.
Given failures matrices Fy,Fu ∈ DIAGm0,1 the rigid body rank test is
rank(LF) = n,
where F := FyFu ∈ DIAGm0,1. The test plays an important role in this thesis, and we
now state important related results.
184
Appendix A. Mathematical Details
Lemma A.20. Given an LFSS, gains KP/D ∈ PDm, and F ∈ DIAGm0,1, the fol-
lowing are equivalent:
〈R1〉 The rank test holds: rank(LF) = n.
〈R2〉 (∀KP ∈ PDm) : Ω2 + LFKPFLT ∈ PDn.
〈R3〉 (∀KD ∈ PDm) : ∆ + LFKDFLT ∈ PDn.
〈R4〉 Ω2 + L?L?T ∈ PDn, where L? = LRT.
Proof. (〈R1〉 ⇒ 〈R2〉): KP ∈ PDm ⇒ LFKPFLT ∈ PSDn (Lemma A.4). Also,
Ω2 ∈ PSDn. We now consider rank[Ω2 LFKPFLT
], which has an upper bound of n.
n ≥ rank[Ω2 LFKPFLT
]= rank
[0 0 LFKPFLT LFKPFLT
0 Ω2 LFKPFLT LFKPFLT
]
≥ rank
[0 LFKPFLT
Ω2 0
]= rank Ω2 + rank LFKPFLT.
To get the second line, we applied column-operations to clear the bottom row using
(invertible) Ω2, and then removed the 0-column and the last column (hence the “≥”).
Now, rank(LF) = n implies LF has full row rank (since n ≤ m), and so (LF)KP(LF)T ∈PDn (Lemma A.5). Therefore rank LFKPFLT = n. Since rank Ω2 = n − n, and so
rank[Ω2 LFKPFLT
]= n. Ω2 + LFKPFLT ∈ PDn follows from Lemma A.19.
(〈R2〉 ⇒ 〈R1〉): Consider the contrapositive. Suppose rank(LF) < n, then ∃v1 ∈Rn − 0 so that vT
1 LF = 0T. Let v = [v1; 0] 6= 0, then by construction, vTΩ2 = 0T,
and vTL = vT1 L, which leads to vTLFKPFLT = (vT
1 LF)KPFLT = 0T. Therefore
rank[Ω2 LFKPFLT
]< n, and Ω2 + LFKPFLT /∈ PDn follows from Lemma A.19.
(〈R1〉 ⇔ 〈R3〉): Noting the structure of ∆ ∈ PSDm, the proof is similar to that of
〈R1〉 ⇒ 〈R2〉 ⇒ 〈R1〉.
(〈R2〉 ⇒ 〈R4〉): Choosing KP = I leads to Ω2 + LFFLT ∈ PDn. Since FF = F =
RTR, we have Ω2 + L?L?T = Ω2 + LRTRLT = Ω2 + LFFLT ∈ PDn.
(〈R4〉 ⇒ 〈R1〉): We repeat the proof for 〈R2〉 ⇒ 〈R1〉: Assume rank(LF) < n, and
choose KP = I. This leads to Ω2 + LFIFLT = Ω2 + L?L?T /∈ PDn.
185
Appendix A. Mathematical Details
A.3 Steady-State Output for the CLSFPD: Details
In this appendix, we present detailed proofs as well as detailed results for the material
presented in Section 4.3.
A.3.1 Simplifying Steady-State Reference Gain Matrix
Sref (4.8) is crucial for the steady-state analysis (for objective 〈F2〉) for the CLSFPD. To
facilitate analysis (and for aesthetic reasons), we wish to find a simpler formula for Sref .
Using implicit definition, we have the following relations:
(Ω2,L,KP,Fy,Fu) −→ Sref .
In this section, we fix Fy,Fu ∈ DIAGm0,1 and KP/D ∈ PDn (not necessarily diagonal),
and assume that AF ∈ HUR2n, so that Sref is defined. To emphasize the dependence of
Sref on the LFSS, we write the Sref (4.7) formula as
Sref(Ω2,L) = LT(Ω2 + LFuKPFyLT)−1LFuKP. (A.1)
The following result characterizes some symmetry in the formula.
Proposition A.21. Sref(Ω2,L) are invariant under the transforms Ω2 ← TΩ2TT
and L← TL for invertible T:
(∀LFSSF)(∀DCtrlPD)(∀T ∈ GLn) : Sref(TΩ2TT,TL) = Sref(Ω2,L).
Proof. Take any T ∈ GLn, so T−1 is defined. We have
Sref(TΩ2TT,TL) = (LTTT)[TΩ2TT + (TL)FuKPFy(LTTT)]−1(TL)FuKP
= LTTT[T(Ω2 + LFuKPFyLT)TT]−1TLFuKP
= LT(TTT−T)(Ω2 + LFuKPFyLT)−1(T−1T)LFuKP
= Sref(Ω2,L),
where Lemma A.1 was applied.
The transformation in Proposition A.21 merely expresses the modal states d ∈ Rn in
a different coordinate, so the result is unsurprising. In particular, we can use the original
186
Appendix A. Mathematical Details
displacement coordinates in (2.7) and write Sref(Ω2,L) = Sref(K0,Λ0). This reveals that
Sref depends on K0 and Λ0, but not the inertia matrix M0.
Here is a helper lemma:
Lemma A.22. For any p.d. KP, the matrix Ω2 + LKPLT is p.d.:
(∀KP ∈ PDm) : Ω2 + LKPLT ∈ PDn, (A.2)
and in particular Ω2 + LLT ∈ PDn.
Proof. By definition, rank(L) = n. We interpret this as 〈R1〉 with F = I. Applying
Assumption 2.3, this leads to 〈R2〉, i.e., (A.2).
Now we present a simpler formula for Sref . The key idea is to apply two transforms T1
and T2, so that the rectangular matrix L is divided into “useful” and “useless” portions
that can be truncated, thereby producing a formula consisting of square matrices only.
We rely on Assumption 2.3 rank L = m (full column rank) and m ≤ n, Assumption 2.1,
and Assumption 2.4 rank L = n ≥ 1.
Theorem 4.8. Assuming that the CLSFPD is asymptotically stable, an alternative for-
mula for Sref is the following:
Sref = (Γ + FuKPFy)−1FuKP, (4.10)
where Γ ∈ SYMm depends on Ω2 and L only.
Proof. Since m ≤ n, so L ∈ Rn×m has the following QR decomposition (Lemma A.16):
L = Q
[R
0(n−m)×m
],
where Q ∈ On and R ∈ UT RIm ∩ GLm (R is invertible because rank L = m).
Let the first transform be T1 = QT ∈ On. We assign N := T1Ω2TT
1 ∈ SYMn:
T1Ω2TT
1 = QTΩ2Q =: N =
[N1 N2
NT2 N3
],
T1L = QTQ
[R
0
]=
[R
0
].
187
Appendix A. Mathematical Details
So we transformed (Ω2,L)→ (N, [R; 0]), where N is partitioned to match [R; 0]. Note
that N ∈ PSDn (Lemma A.4), and so N1 ∈ PSDm and N3 ∈ PSDn−m (Lemma A.6).
Case 1: m < n. We claim that N3 is p.d. From Lemma A.22 we have Ω2 +LKPLT ∈PDn. Since TT
1 ∈ GLn, so T1
(Ω2 + LKPLT
)TT
1 ∈ PDn (Lemma A.5):
T1
(Ω2 + LKPLT
)TT
1 = N + (T1L)KP(T1L)T =
[N1 + RKPRT N2
NT2 N3
]∈ PDn.
So N3 ∈ PDn−n (Lemma A.6), and is invertible.
Let the second transform be T2 =
[I −N2N
−13
0 I
]. Applying this to (N, [R; 0]) yields
(noting that N−T3 = N−1
3 )
T2NTT2 =
[I −N2N
−13
0 I
][N1 N2
NT2 N3
][I 0
−N−13 NT
2 I
]
=
[N1 −N2N
−13 NT
2 0
NT2 N3
][I 0
−N−13 NT
2 I
]=
[N1 −N2N
−13 NT
2 0
0 N3
],
T2
[R
0
]=
[I −N2N
−13
0 I
][R
0
]=
[R
0
].
So we transformed (N, [R; 0])→ (block diag(N1−N2N−13 NT
2 ,N3), [R; 0]). From Propo-
sition A.21, we obtain
Sref(Ω2,L) = Sref(T2T1Ω2TT
1 TT2 ,T2T1L) = Sref
([N1 −N2N
−13 NT
2 0
0 N3
],
[R
0
]).
Expand the Sref formula (A.1), noting that R−1 is defined:
Sref =[RT 0T
]([N1 −N2N−13 NT
2 0
0 N3
]+
[R
0
]FuKPFy
[RT 0T
])−1 [R
0
]FuKP
=[RT 0T
] [N1 −N2N−13 NT
2 + RFuKPFyRT 0
0 N3
]−1 [R
0
]FuKP
= RT(N1 −N2N−13 NT
2 + RFuKPFyRT)−1RFuKP
=(R−1(N1 −N2N
−13 NT
2 )R−T + FuKPFy)−1FuKP
= (Γ + FuKPFy)−1FuKP,
188
Appendix A. Mathematical Details
where we defined the PD reference-to-output characteristic matrix Γ ∈ SYMm
as
Γ := R−1(N1 −N2N−13 NT
2 )R−T. (A.3)
Note that R and Q are derived from L, and N is derived from Ω2 and Q. Therefore Γ
is a function of Ω2 and L only.
Case 2: m = n, then we obtain T2 = I and N1 = N with empty matrices N2 ∈ Rm×0
and N3 ∈ R0×0. Formally, N2N−13 NT
2 = 0m. The derivation and the formula are still
valid.
For later usage, we state the following.
Corollary A.23. Given an asymptotically stable CLSFPD, then Γ + FuKPFy is in-
vertible:
(∀LFSSF)(∀DCtrlPD) : AF ∈ HUR2n =⇒ Γ + FuKPFy ∈ GLn.
Proof. From Proposition 4.3, AF ∈ HUR2n leads to Ω2 + LFuKPFyLT ∈ GLn, which
as seen in the proof of Theorem 4.8, is transformed to Γ + FuKPFy ∈ GLn.
A.3.2 Simplifying Steady-State Disturbance Gain Matrix
Similar to the last section, we would like to derive a simplified expression for Sw. Since
Sw is more complex than Sw, so the results are less “clean”. Using implicit definition,
we have the following relations:
(Ω2,L,Ef ,F,KP,Fy,Fu) −→ Sw.
In additional to fixing Fy,Fu ∈ DIAGm0,1 and KP/D ∈ PDn, and assuming that AF ∈HUR2n (so that Sw is defined), we also fix F. We now express Sw (4.8) explicitly as a
function of Ω2, L and Ef , while isolating the second term:
Sw(Ω2,L,Ef) = (I − Sref(Ω2,L)Fy)F + SwE (Ω2,L,Ef),
189
Appendix A. Mathematical Details
where
SwE (Ω2,L,Ef) := LT(Ω2 + LFuKPFyLT)−1Ef ∈ Rn×q. (A.4)
The following is the Sw counterpart to Proposition A.21:
Proposition A.24. Sw(Ω2,L,Ef) are invariant under the transforms Ω2 ←TΩ2TT, L← TL, and Ef ← TEf for invertible T:
(∀T ∈ GLn) : Sw(TΩ2TT,TL,TEf) = Sw(Ω2,L,Ef).
Proof. Take any T ∈ GLn, so T−1 is defined. Proposition A.21 already accounts for the
invariance of the first term (I−Sref(Ω2,L)Fy)F in Sw, so it suffices to consider SwE only.
We have
SwE (TΩ2TT,TL,TEf) = LTTT(TΩ2TT + TLFuKPFyLTTT)−1TEf
= LTTT(T−T)(Ω2 + LFuKPFyLT)−1(T−1)TEf
= LT(Ω2 + LFuKPFyLT)−1Ef
= SwE (Ω2,L,Ef).
Here is the counterpart to Theorem 4.8 to simplify Sw:
Theorem 4.9. Assuming that the CLSFPD is asymptotically stable, an alternative for-
mula for Sw is the following:
Sw = (I − SrefFy)F + (Γ + FuKPFy)−1Υ,
= (I − (Γ + FuKPFy)−1FuKPFy)F + (Γ + FuKPFy)−1Υ,(4.11)
where Γ ∈ SYMm was defined in Theorem 4.8, and Υ ∈ Rm×q depends on Ω2, L
and Ef only.
Proof. Repeating the proof of Theorem 4.8, we can use the same T2T1 to transform SwE
190
Appendix A. Mathematical Details
in the manner described in Proposition A.24:
SwE =
[RT 0T
]([N1 −N2N−13 NT
2 0
0 N3
]+
[R
0
]FuKPFy
[RT 0T
])−1
T2T1Ef
=[RT 0T
] [N1 −N2N−13 NT
2 + RFuKPFyRT 0
0 N3
]−1
T2T1Ef
=[RT(N1 −N2N
−13 NT
2 + RFuKPFyRT)−1 0]
T2T1Ef
= RT(N1 −N2N−13 NT
2 + RFuKPFyRT)−1(RR−1)[I 0
]T2T1E
f
=(R−1(N1 −N2N
−13 NT
2 )R−T + FuKPFy)−1[R−1 0
]T2T1E
f
= (Γ + FuKPFy)−1Υ, (A.5)
where we defined the PD disturbance-to-output characteristic matrix Υ ∈ Rm×q
as
Υ :=[R−1 0
]T2T1E
f , (A.6)
which is a function of Ω2, L and Ef only, and is independent of KP.
A.3.3 Additional Results and Insights
Summary of Alternative Formulae for Sref and Sw
The original formulae for Sref and Sw derived in Theorem 4.7 are
Sref = LT(Ω2 + LFuKPFyLT)−1LFuKP, (4.8)
Sw = (I − SrefFy)F + LT(Ω2 + LFuKPFyLT)−1Ef . (4.9)
The simplified formulae for Sref from Theorem 4.8, and for Sw from Theorem 4.9 are
Sref = (Γ + FuKPFy)−1FuKP, (4.10)
Sw = (I − SrefFy)F + (Γ + FuKPFy)−1Υ. (4.11)
The new formulae clearly use fewer operations. Moreover, these formulae replace (Ω2,L)
with Γ. Consequently, we have “factored out” a redundant degree of freedom that we
saw in Proposition A.21, Sref(Ω2,L) = Sref(TΩ2TT,LT). Along with Υ, the dependence
191
Appendix A. Mathematical Details
on (Γ,L,Ef) is replaced with the dependence on (Γ,Υ).
Explicit Formulae for Γ and Υ
Lemma 4.10. Γ can be calculated by
Γ = (LT(Ω2 + LLT)−1L)−1 − I, (4.16)
= (ΛT0 (K0 + Λ0Λ
T0 )−1Λ0)−1 − I. (4.17)
Proof. Since (4.12) and (4.13) are equivalent, we can solve for Γ:
LT(Ω2 + LKPLT)−1LKP = (Γ + KP)−1KP,
∴ Γ = (LT(Ω2 + LKPLT)−1L)−1 −KP. (A.7)
On noting that Γ is independent of KP, we choose KP = Im, and (A.7) simplifies to (4.16).
Next, (2.10) states that T−T0 Ω2T−1
0 = K0 and T−T0 L = Λ0. Applying Proposition A.21
to (4.12) results in the following,
ΛT0 (K0 + Λ0K
PΛT0 )−1Λ0K
P = (Γ + KP)−1KP.
from which (4.17) is obtained on substituting KP = I.
Lemma 4.11. Υ (A.6) can be calculated by
Υ = (Γ + I)LT(Ω2 + LLT)−1Ef , (4.18)
= [LT(Ω2 + LLT)−1L]−1LT(Ω2 + LLT)−1Ef . (4.19)
Proof. Since (4.14) and (4.15) are equivalent, we can solve for Υ (first cancelling out the
common term with F):
LT(Ω2 + LKPLT)−1Ef = (Γ + KP)−1Υ,
∴ Υ = (Γ + KP)LT(Ω2 + LKPLT)−1Ef .
192
Appendix A. Mathematical Details
On noting that Υ is independent of KP, we choose KP = Im, and the above simplifies to
(4.18). Next, substituting the Γ (4.16) from Lemma 4.10 yields (4.19).
In (4.19), the [LT(Ω2 +LLT)−1L]−1LT(Ω2 +LLT)−1 part is essentially a (Ω2-dependent)
pseudo-inverse of L. For the special case where Img Ef ⊆ Img L, i.e., disturbance forces
can be spanned by applied forces from actuators, we would have Ef = LX for some
X ∈ Rm×q, and then Υ = X. This also means that Υ does not depend on Ω2.
Obtaining Γ from Srefnom
The Γ formulae obtained from Lemma 4.10 uses (Γ,L) or (K0,Λ0). As seen in Section 2.2,
LFSS system matrices are usually obtained from modal-truncating a high-dimensional lin-
ear model. Therefore the calculated Γ will be an approximation. However, the following
result shows that Γ can be obtained from Srefnom.
Lemma A.25. The Γ matrix can be calculated by
Γ = KP((Srefnom)−1 − I). (A.8)
Proof. We invert (4.13) Srefnom = (Γ + KP)−1KP and obtain Γ = KP(Sref
nom)−1 − KP =
KP((Srefnom)−1 − I).
To obtain Γ experimentally, we can first choose KP, measure Srefnom (more on this
later), and then apply (A.8). It is to be noted that in this scheme, we do not need to
obtain LFSS first by simulation or on-ground experiments. So Lemma (A.25) gives us
a way to perform limited system identification of the LFSS, which also takes account of
existing high-frequency modes in the physical LFSS.
Additional Properties of Γ
Here we present a collection of properties of Γ. These results are applied in Chapter 4
and Chapter 5.
Lemma 4.12. The Γ matrix is p.s.d., singular, and has rank m− n:
(Γ ∈ PSDm − GLm) ∧ (rank Γ = m− n).
193
Appendix A. Mathematical Details
Proof. Continuing from the proof of Theorem 4.8, first we show that Γ ∈ PSDm:
Ω2 ∈ PSDn =⇒ T2T1Ω2TT
1 TT2 =
[N1 −N2N
−13 NT
2 0
0 N3
]∈ PSDn (Lemma A.4)
=⇒ N1 −N2N−13 NT
2 ∈ PSDm (Lemma A.6)
=⇒ Γ := R−1(N1 −N2N−13 NT
2 )R−T ∈ PSDm (Lemma A.4).
From rank Ω2 = n− n and rank N3 = n−m (since N3 ∈ PDn−m) we obtain
rank Γ = rank(N1 −N2N−13 NT
2 )
= rank
([N1 −N2N
−13 NT
2 0
0 N3
])− rank N3
= rank(T2T1Ω2TT
1 TT2 )− (n−m) = (n− n)− (n−m) = m− n.
By Assumption 2.1, n ≥ 1, so rank Γ < m and Γ /∈ GLm.
Corollary A.26. Given an asymptotically stable CLSFPD obtained from DCtrlPD with
diagonal gains, Γ + FuKPFy is p.d:
(∀LFSSF)(∀DCtrlPD | KP/D ∈ DIAGm) : AF ∈ HUR2n =⇒ Γ + FuKPFy ∈ PDn.
Proof. Denote X := Γ + FuKPFy. By Corollary A.23, X ∈ GLm. Since KP ∈ DIAGm,
we obtain X = Γ + FKP ∈ GLm ∩ SYMm. Γ ∈ PSDm (Corollary 4.12) and FKP ∈PSDm imply X ∈ PSDm (Lemma A.7). Combining with X ∈ GLm leads to X ∈ PDm
(Lemma A.8).
Theorem A.27. The kernel of Γ is the space of outputs of the rigid body model
(2.18):
Ker Γ = Img LT.
Proof. First we show Ker Γ ⊇ Img LT, which is equivalent to ΓLT = 0. We note from
194
Appendix A. Mathematical Details
(2.5) that LT = [LT, LT], and so (also applying Lemma A.22, Ω2 + LLT ∈ PDn)
LT = LT
[In
0
]= LT(Ω2 + LLT)−1(Ω2 + LLT)
[In
0
]
= LT(Ω2 + LLT)−1
(Ω2
[In
0
])+ LT(Ω2 + LLT)−1L
(LT
[In
0
]).
However, from (2.5) we have Ω2 = [0n,0; 0, Ω2], and so Ω2[In; 0] = 0. Therefore
LT = LT(Ω2 + LLT)−1LLT,
∴ (LT(Ω2 + LLT)−1L− I)︸ ︷︷ ︸Γ
LT = 0,
where the last line applies (4.16) from Lemma 4.10.
Finally, from Corollary 4.12 we have rank Γ = m − n, and so dim(Ker Γ) = n. By
definition, rank LT = rank L = n and LT ∈ Rm×n, so dim(Img LT) = n. Since Ker Γ and
Img LT have the same dimensions, and Ker Γ ⊇ Img LT, so Ker Γ = Img LT.
In general we specify Γ to be in PSDm−GLm. A question naturally arises from this:
are there addition restrictions on Γ? The following lemma shows the contrary.
Lemma A.28. For any Γ′ that is p.s.d. and singular, we can construct an LFSS
whose resulting Γ matches Γ′:
(∀m′ ∈ N)(∀n′ ∈ [1,m′]Z)(∀Γ′ ∈ PSDm − GLm | rank(Γ′) = m′ − n′)
(∃LFSS | m = m′, n = n′) : Γ = Γ′.
Proof. We will construct such an LFSS that satisfies the LFSS assumptions, so that the
resulting Γ matches Γ′. Given m′ ∈ N, n′ ∈ [1,m′]Z, and Γ′ ∈ PSDm − GLm so that
rank(Γ′) = m′− n′, we choose n = m = m′, n = n′. We seek Ω2 ∈ PSDn ∩DIAGn with
rank(Ω2) = n − n and satisfying (2.10a), and L ∈ Rn×m with full rank, so that (4.13)
holds:
Γ′ = Γ := (LT(Ω2 + LLT)−1L)−1 − I.
195
Appendix A. Mathematical Details
Since n = m, we have L ∈ PDn, and so the above reduces to
Γ′ = ((L−1Ω2L−T + I)−1)−1 − I = L−1Ω2L−T.
Since Γ ∈ PSDn, so it has an orthogonal eigen-decomposition Γ′ = PDPT, where
P ∈ On and D ∈ PSDn ∩ DIAGn with rank(D) = rank(Γ′) = n − n. We arrange D
so that all the n 0-eigenvalues appear first. So we choose Ω2 = D and L = P−1 = PT.
Finally, ∆, Ef and F that satisfy the LFSS assumptions can be arbitrarily chosen.
As a consequence of Lemma A.28, we can choose a random Γ that satisfies Corollary
4.12 to test results involving Sref for the CLSFPD.
196
Appendix B
Specification and Derivation of LFSS
Examples
To illustrate our results, three decentralized LFSS examples are used throughout this
thesis: LFSS Benchmark A (1-D system), LFSS Benchmark B (4-component system),
and LFSS Benchmark C (Purdue space platform).
In this chapter, we present detailed derivations and specifications of these LFSS (2.3)
examples. Specifically, we will provide n, m, Ω2, ∆, L for each example. The decentral-
ized controller parameters N , m1, . . . , mN are also given. The disturbance parameters,
q, Ef , and F, are stated only for LFSS Benchmark A and LFSS Benchmark C. Moreover,
to suit specific examples, these may be ignored or replaced with other values.
B.1 LFSS Benchmark A: 1-D System
B.1.1 Description
LFSS Benchmark A is a 1-dimensional mechanical system of horizontal motion, as shown
in Figure B.1. The system consists of 3 rigid components (with masses M1,M2,M3)
connected by ideal springs (with stiffnesses K12 and K23) and ideal dampers (represented
as dashpots, with damping coefficients D12 and D23). The main dynamical variables are
displacements ξ = [ξ1; ξ2; ξ3] ∈ R3 for each mass, defined relative to some equilibrium
position in which all springs are relaxed, and M1 at some absolute location.
The system is controlled by N = 3 local colocated single-input/single-output con-
trollers S1, S2, and S3. For each i ∈ 1, 2, 3, Si measures yi = ξi ∈ R from a sensor,
197
Appendix B. Specification and Derivation of LFSS Examples
Figure B.1: LFSS Benchmark A: 1-D System.
and generates control signal ui ∈ R, is applied horizontal force by a linear actuator. The
bold arrows in Figure B.1 indicate this input/output relationship (these do not denote
direction of force). Clearly, n = 3 and m = 3.
B.1.2 Derivation
Elementary classical mechanics produces the following equations of motion:
M1ξ1 = −K12(ξ1 − ξ2)−D12(ξ2 − ξ1) + u1,
M2ξ2 = −K12(ξ2 − ξ1)−K23(ξ2 − ξ3)−D12(ξ2 − ξ1)−D23(ξ2 − ξ3) + u2,
M3ξ3 = −K23(ξ3 − ξ2)−D23(ξ3 − ξ2) + u3.
Collecting terms leads to specification in terms of inertia, damping, and stiffness matrices:
M1 0 0
0 M2 0
0 0 M3
︸ ︷︷ ︸
M0
ξ +
D12 −D12 0
−D12 D12 +D23 −D23
0 −D23 D23
︸ ︷︷ ︸
D0
ξ
+
K12 −K12 0
−K12 K12 +K23 −K23
0 −K23 K23
︸ ︷︷ ︸
K0
ξ =
1 0 0
0 1 0
0 0 1
︸ ︷︷ ︸
Λ0
u1
u2
u3
.
The displacement is taken as output, so
y1
y2
y3
=
1 0 0
0 1 0
0 0 1
T
︸ ︷︷ ︸ΛT
0
ξ.
198
Appendix B. Specification and Derivation of LFSS Examples
B.1.3 Parameters Choices
For numerical computation, the following values are used: [M1,M2,M3] = [1, 10, 1];
[D12, D23] = [0.1, 0.1]; and [K12, K23] = [1, 1]. Therefore
M0 =
1
10
1
, D0 =
0.1 −0.1 0
−0.1 0.2 −0.1
0 −0.1 0.1
, K0 =
1 −1 0
−1 2 −1
0 −1 1
, Λ0 = I.
(B.1)
Next, we derive the stand form LFSS model (2.3). Following the steps shown in the
proof of (A.17), simultaneous diagonalization on M0 and K0 are applied: From M−10 =
diag(1, 0.1, 1) = PPT, we obtain P = diag(1, 0.3162, 1). So PTM0P = I, and
PTK0P =
1 −0.3162 0
−0.3162 0.2 −0.3162
0 −0.3162 1
.Diagonalizing this yields Ω2 = QTPTK0PQ = TT
0 K0T0, where
Ω2 =
0
1
1.2
, Q =
0.2887 −0.7071 −0.6455
0.9129 0 0.4082
0.2887 0.7071 −0.6455
, T0 = PQ.
MATLAB already made diagonal elements of Ω2 non-decreasing. If not, we can permute
columns of T0 to accomplish this, as discussed in Section 2.2.3. Having obtained T0, we
proceed to compute ∆ = TT0 D0T0 and L = TT
0 Λ0:
∆ =
0
0.1
0.12
, L =
0.2887 0.2887 0.2887
−0.7071 0 0.7071
−0.6455 0.1291 −0.6455
.Finally, for disturbance matrices, we choose
q = 3, Ef = L
1 0.2 0.2
0.2 1 0.2
0.2 0.2 1
, F =
1
2
1
.
199
Appendix B. Specification and Derivation of LFSS Examples
The purpose of including L in Ef is to provide a correlation between disturbance vector
w and input u. The[
1 0.2 0.20.2 1 0.20.2 0.2 1
]factor is to produce off-diagonal terms for variety.
B.1.4 The Model (Summary)
The system matrices for LFSS Benchmark A are specified below:
Ω2 =
0
1
1.2
, ∆ =
0
0.1
0.12
, L =
0.2887 0.2887 0.2887
−0.7071 0 0.7071
−0.6455 0.1291 −0.6455
,
Ef =
0.4041 0.4041 0.4041
−0.5657 0 0.5657
−0.7488 −0.1291 −0.7488
, F =
1
2
1
.B.2 LFSS Benchmark B: 4-Component System
B.2.1 Description
LFSS Benchmark B (taken from [42]) consists of 4 component connected by spring-
damper links, arranged in a 2-D plane. Its structure is shown in Figure B.2. Each
Figure B.2: LFSS Benchmark B [42].
component is enumerated by i ∈ [1, 4]Z, and is a mechanical structure whose states consist
200
Appendix B. Specification and Derivation of LFSS Examples
of horizontal displacement ξi, vertical displacement ζi, and counter-clockwise rotation θi.
The component states and the overall mechanical states are
(∀i ∈ [1, 4]Z) : ξi = [ξi; ζi; θi], ξ = [ξ1; ξ2; ξ3; ξ4] ∈ R12.
Clearly n = 12.
ξ is directly observed. By colocation, linear actuators are applied to ξi and ζi, and a
torque actuator is applied to θi. Therefore yi = ξi ∈ R3, i ∈ [1, 4]Z, and u ∈ R3. The
overall output of the LFSS consists of all mechanical displacements:
y = [ξ1; ζ1; θ1; ξ2; ζ2; θ2; ξ3; ζ3; θ3; ξ4; ζ4; θ4] ∈ R12.
These specify m = 12 colocated sensor-actuator pairs. Also, Λ0 = I12.
The components are chosen to have identical masses Mi = 25, moments of inertia
Ji = 4, Neglecting interconnections, the dynamics of each component i ∈ [1, 4]Z is:
Miξi = ui, where Mi = diag(Mi,Mi, Ji). Combining these leads to
M0 = block diag(M1,M2,M3,M4) ∈ PD12 ∩ DIAG12.
As shown in Figure B.2, there are 4 pairs of spring-damper connectors. These are
located between components 1–2, 2–3, 3–4, and 4–1. The connectors have identical
specifications, with stiffness Kijk = 250, damping Dijk = 75, and connector radii dij =
0.3. If component i is connected to component j, then their horizontal displacements
(ξi, ξj) (for 2–3 and 4–1) or vertical displacements (ζi, ζj) (for 1–2 and 3–4) are coupled
by the spring. Also, the angles (θi, θj) are also coupled by a torque (here is where dij is
used). The corresponding velocities (and angular velocities) are also coupled by dampers.
Details on using these to construct K0 ∈ PSD12 and D0 ∈ PSD12 are found in [42].
Since we are considering a linear approximation, so independence among the hori-
zontal, vertical, and rotational motions always hold. For instance, if components 1 and
component 2 move upward and component 3 and 4 move downward, physically the con-
nections 1–4 and 2–3 will be diagonal, but this effect is ignored.
We omit the details on transforming the mechanical system to standard form. It is
to be noted that the solution to the transformation matrix T0 is not unique. Recall
that I = TT0 M0T0, Ω2 = TT
0 K0T0 ∈ DIAGn ∩ PSDn, ∆ = TT0 D0T0 ∈ PSDn, and
201
Appendix B. Specification and Derivation of LFSS Examples
L = TT0 Λ0 ∈ Rn×m. If we substitute T0 ← T0U, so that U ∈ Om satisfies
U =
[U1 0
0 I
]U2,
where U1 ∈ On is a permutation matrix (acts on rigid body modes) and U2 ∈ On ∩DIAGn is a diagonal matrix whose diagonal elements are in −1, 1, then the transformed
T0U would not alter M0, K0, and D0 (as seen in (2.5)) invariant. However, the resulting
L′ = UTTT0 Λ0 = UTL, when compared to L, would have the first n rows arbitrarily
permuted, and each rows arbitrarily negated. When computing Ω2, it is found that
n = 5. We then used the above method to make the first 5 rows of L “look nicer” by
making them positive, and sorted in a more symmetric way.
Finally, each component i is associated with a local controller Si. Therefore N = 4.
Each Si, i ∈ [1, 4]Z reads ymi ∈ R3, and generates ui ∈ R3.
B.2.2 The Model (Summary)
Ω2 = diag(0, 0, 0, 0, 0, 22.5, 22.5, 40, 40, 40, 40, 45),
∆ = diag(0, 0, 0, 0, 0, 6.75, 6.75, 12, 12, 12, 12, 13.5),
L =
. α . . α . . . . . . .
. . . . . . . α . . α .
α . . . . . . . . α . .
. . . α . . α . . . . .
. . β . . β . . β . . β
. . −γ . . δ . . γ . . −δ
. . −δ . . −γ . . δ . . γ
. . . . . . . −α . . α .
. . . α . . −α . . . . .
. −α . . α . . . . . . .
α . . . . . . . . −α . .
. . β . . −β . . β . . −β
,
where α = 0.1414, β = 0.2500, γ = 0.0300, δ = 0.3523, and the periods denote 0. We do
not specify q, Ef , and F for this example.
202
Appendix B. Specification and Derivation of LFSS Examples
B.3 LFSS Benchmark C: Purdue Space Platform
The preceding LFSS examples are finite-dimensional. We wish to consider a larger ex-
ample that applies modal truncation. So for LFSS Benchmark C, we selected the Purdue
space platform example, which is a benchmark example from [27–29]. The example is
also used in our main reference [61].
Detailed physical parameters of the Purdue space platform model are specified in
[28, 29], but only high-level descriptions of the finite element method are provided. For-
tunately, 100 modal frequencies and some node shapes are given, against which we may
verify our results. A non-dimensionalized version of the same system is given in [27].
Here, 10 slope/slope velocity sensors with colocated torque actuators are specified. The
numerical entries of a truncated state model (with some state rearrangements) are also
listed in [27]. The simulation in [61] uses a dimensionalized version of [27], but applies 5
displacement/velocity measurements with colocated thrusters. We wish to use this model.
Unfortunately, the original dimensionalized numerical model became unavailable, and so
a re-derivation is necessary.
The derivation of LFSS Benchmark C uses FEM to convert an infinite-dimensional
continuum model to a 200-state linear mechanical model. Modal truncation is then
applied to produce a 24-state LFSS model. This chapter provides annotated MATLAB
code for this derivation. Although FEM is well-known, our goal is to complement [28],
and to provide detailed step-by-step descriptions on how to carry out basic FEM. A
number of interesting optimizations are also found, and explained in detail.
B.3.1 High Level Description
As shown in Figure B.3, LFSS Benchmark C consists of a rectangular platform E with a
rigid mass R rigidly attached to its centre (where x = y = 0). There are 5 displacement/
velocity sensors with colocated point-force actuators. These are found at the centre
and the corners, and measure/act in the z direction. E is approximated as a uniformly
distributed elastic continuum.
The only rigid body motions considered are translation in z, rotation about x (pitch)
and rotation about y (roll). In the linearized model, the surface of E is represented by a
203
Appendix B. Specification and Derivation of LFSS Examples
Figure B.3: LFSS Benchmark C [27].
time-dependent height map:
w(x, y, t) : XY × R→ R, where XY :=
[−Lx
2,Lx2
]R×[−Ly
2,Ly2
]R.
The total kinetic energy T (t) and strain energy U(t) are given in [28] as
T (t) =1
2
(Mrz
2c + Irxθ
2x + Iryθ
2y + µ
∫XY
w2 dA
),
U(t) =1
2
(D
∫XY
(∆2w)2 − 2(1− ν)∆w dA
),
where1∆2w = Dxxw+Dyyw, ∆w = DxxwDyyw−(Dxyw)2. Also, zc(t), θx(t), and θy(t) are
“rigid dynamics” ofR, interpret respectively as w(0, 0, t), Dyw(0, 0, t), and −Dxw(0, 0, t).
The LFSS model is obtained by FEM [11]. The domain XY is divided into 4×4 = 16
identical rectangular elements. The overlapping vertexes form an evenly distributed 5×5
grid. On each of the 25 vertexes, w, Dxw, Dyw and Dxyw are sampled. Therefore we
have n = 100. Each rectangular element is called the Bogner-Fox-Schmit element, and
is specified by 16 variables.
The sampled values form ξ(t) ∈ R100, which together with ξ(t), constitute the me-
chanical states of the system. For any ξ(t), bicubic Hermite polynomial interpolation is
used to approximate w(x, y, t) for any (x, y) ∈ XY . Under this approximation, evaluating
1Dx = ∂∂x ; Dy = ∂
∂y ; Dxx = DxDx = ∂2
∂2x ; Dyy = DyDy = ∂2
∂2y ; and Dxy = DxDy = ∂2
∂x∂y
204
Appendix B. Specification and Derivation of LFSS Examples
T (t) and U(t) produces the following quadratic forms:
T (t) =1
2ξ
T(t)M0ξ(t), U(t) =
1
2ξT(t)K0ξ(t).
M0 ∈ PD100 and K0 ∈ PSD100 are in fact inertia and stiffness matrices, respectively.
Since there are 3 rigid body modes, so rank K0 = 97. The damping matrix D0 is
approximated as K0 times a damping factor. We chose D0 = 10−4K0 ∈ PSD100.
The colocated sensors/actuators are specified by Λ0 = [l1, l2, l3, l4, l5] ∈ R100×5, where
column li corresponds to actuator i, whose placement in the LFSS is shown in Figure B.3.
For example, y1 and u1 are located at [−Lx
2;−Ly
2]. We are using only point actuators,
and so each li is in fact a Euclidean vector that extracts the appropriate displacement
state from ξ. ΛT0 specifies the colocated sensors of the system.
Having obtained M0, D0, K0, and Λ0, the equation of motion (without disturbances)
is obtained in (2.7), from which modal representation and modal truncation are applied
to obtain the final LFSS model (2.3).
B.3.2 Derivation
Physical Parameters
The physical parameters of the flexible component E are:
Width Lx = 12.5 km
Height Ly = 5 km
Flexural rigidity F = 20× 108 Nm
Mass/area µ = 0.2622 kg/m2
Poisson’s ratio ν = 0.3
For conciseness, let us define the integral over the domain of E (i.e., XY) by
∫XY
(·) dA :=
∫ Lx2
−Lx2
∫ Ly2
−Ly2
(·) dy dx.
The mass Me, moment of inertia Ixe about the x-axis, and moment of inertia Iye about
the y-axis of E are calculated by
Me = µ
∫XY
dA = µLxLy (kg),
205
Appendix B. Specification and Derivation of LFSS Examples
Ixe = µ
∫XY
y2 dA = µLxL
3y
12(kg ·m2),
Iye = µ
∫XY
x2 dA = µL3xLy12
(kg ·m2).
The physical parameters of the rigid mass R are:
Mass Mr = 0.1Me
Inertia about x-axis Ixr = 0.01Ixe
Inertia about y-axis Iyr = 0.01Iye
In MATLAB, the physical parameters are specified by
Lx = 12.5E3;Ly = 5E3;flex = 20E8; % Flexural rigidity.mu = 0.2622; % Mass/area.nu = 0.3; % Poisson’s ratio.Me = mu*Lx*Ly;Ixe = mu*Lx*Ly^3/12;Iye = mu*Lx^3*Ly/12;Mr = Me*0.1;Ixr = Ixe*0.01;Iyr = Iye*0.01;
Mechanical States and Energy Functions
Only 3 rigid body dynamics are considered: Translation in z, rotation about x-axis, and
rotation about y-axis. We disregard translation in x, translation in y and rotation about
the z-axis. Note that linear approximations are applied to rotations.2
For flexible-body dynamics, E is described by a displacement map w(x, y, t) for
(x, y) ∈ XY . Often we omit t and write w(x, y) for conciseness.
The states of the attached rigid mass R are zc(t), θx(t), and θy(t), which are specified
by (notice the sign convention)
zc(t) = w(0, 0, t), θx(t) =∂w
∂y(0, 0, t), θy(t) = −∂w
∂x(0, 0, t).
Therefore the motions of E and R are all represented in w(x, y, t).
2Rotation is approximated as shears, so “rotation about x” means shear about the y-z plane in thez direction. Another nonlinear effect that is discarded is the fact that z-rotation can be generated byx-rotation and y-rotation.
206
Appendix B. Specification and Derivation of LFSS Examples
Given w(x, y, t) (which contains zc(t), θx(t), θy(t)), the total kinetic energy T (t) and
the total strain energy U(t) are given by [28] as
T (t) =1
2
(Mrz
2c + Irxθ
2x + Iryθ
2y + µ
∫XY
w2(x, y, t) dA
), (B.2)
U(t) =1
2D
∫XY
(∆2w)2 − 2(1− ν)∆w dA, (B.3)
where
∆2w :=
(∂2
∂x2+
∂2
∂y2
)w = (D2
x +D2y)w,
∆w := det
([∂2
∂x2∂2
∂x∂y∂2
∂x∂y∂2
∂y2
]w
)=∂2w
∂x2
∂2w
∂y2−(∂2w
∂x∂y
)2
= (D2xwD
2yw)− (Dxyw)2.
The derivation of these energy functions are beyond our scope.
Dividing LFSS into Elements
To apply FEM on w(x, y) (omitting t for now), the entire domain XY is approximated
as a collection of Nx × Ny rectangular elements, each approximating a some portion of
w(x, y) with a fixed number of parameters (defined on corners). The layout is shown in
Figure B.4: Dividing XY into Nx ×Ny rectangular elements.
Figure B.4. We will choose Nx = Ny = 4, but in our analysis we consider the general
207
Appendix B. Specification and Derivation of LFSS Examples
case. We require Nx and Ny to be even, since we want the origin to be a grid point
(thereby representing w(0, 0) directly).
Also shown in Figure B.4, the elements are designated by E[i, j], for i ∈ [1, Nx]Z and
j ∈ [1, Ny]Z. Each element has dimensions lx × ly, where
lx =LxNx
, ly =LyNy
.
In MATLAB:
Nx = 4; % Must be even.Ny = 4; % Must be even.lx = Lx/Nx;ly = Ly/Ny;
1-D Cubic Polynomial Operations on MATLAB
Consider a cubic polynomial p(x) = p0 + p1x+ p2x2 + p3x
3 = tTxp, where
tTx (x) :=
[1 x x2 x3
], p :=
p0
p1
p2
p3
.
The differentiation operator Dx := ∂∂x
acts on tTx (x) by (this defines Der)
DxtTx =
[0 1 2x 3x2
]= tT
x
0 1 0 0
0 0 2 0
0 0 0 3
0 0 0 0
︸ ︷︷ ︸
Der
.
The product of two cubic polynomials p(x) = tTxp and q(x) = tT
xq is a quadratic form:3
p(x)q(x) = p(x)Tq(x) = pTtxtTxq = pT
1 x x2 x3
x x2 x3 x4
x2 x3 x4 x5
x3 x4 x5 x6
q.
3We are purposefully doing this instead of convolution, since the quadratic form will be useful lateron, when we derive inertia and stiffness matrices.
208
Appendix B. Specification and Derivation of LFSS Examples
Integrating p(x)q(x) from 0 to lx produces (this defines Int2x)
∫ lx
0
p(x)q(x) dx = pT
(∫ lx
0
txtTx dx
)q = pT
lx l2x/2 l3x/3 l4x/4
l2x/2 l3x/3 l4x/4 l5x/5
l3x/3 l4x/4 l5x/5 l6x/6
l4x/4 l5x/5 l6x/6 l7x/7
︸ ︷︷ ︸
Int2x
q.
The evaluation of p(0) and p(lx) can be represented as (this defines ptx)[p(0)
p(lx)
]=
[1 0 0 0
1 lx l2x l3x
]︸ ︷︷ ︸
ptx
p.
For the y direction (and length ly), we can similarly define tTy , Dy := ∂
∂y, Int2y and pty.
In MATLAB, the matrices discussed in this section are evaluated by
Der = [[0;0;0],diag([1,2,3]);[0,0,0,0]];pwr = hankel(1:4,4:7);Int2x = (lx.^pwr)./pwr; % Bilinear integration tensor.Int2y = (ly.^pwr)./pwr;ptx = [1,0,0,0;lx.^(0:3)];pty = [1,0,0,0;ly.^(0:3)];
2-D Bicubic Polynomial Operations on MATLAB
A bicubic polynomial in x and y contains 16 terms. We organize these terms by defining
tTyx := tT
y ⊗ tTx (⊗ denotes Kronecker product [45]):
tTyx =
[1 y y2 y3
]⊗[1 x x2 x3
]=[1 x x2 x3 y xy x2y x3y y2 xy2 x2y2 x3y2 y3 xy3 x2y3 x3y3
].
Let us write p(x, y) = tTyxp, where p ∈ R16 is a vector of coefficients.
209
Appendix B. Specification and Derivation of LFSS Examples
Partial derivatives on tTyx act as matrix multiplications (this defines Dx and Dy):
DxtTyx = tT
yx
I4 ⊗
0 1 0 0
0 0 2 0
0 0 0 3
0 0 0 0
︸ ︷︷ ︸Dx
, DytTyx = tT
yx
0 1 0 0
0 0 2 0
0 0 0 3
0 0 0 0
⊗ I4
︸ ︷︷ ︸
Dy
.
In general, DaxD
byt
Tyx = tT
yxDaxD
by for a, b ∈ N0. Note that Dx and Dy commute.
Finally, given p(x, y) = tTyxp and q(x, y) = tT
yxq, the double integral of their product
on [0, lx]× [0, ly] becomes (this defines Int2)
∫ lx
0
∫ ly
0
p(x, y)q(x, y) dy dx = pT
(∫ lx
0
∫ ly
0
tyxtTyx dy dx
)q = pT (Int2y ⊗ Int2x)︸ ︷︷ ︸
Int2
q.
The derived operators discussed above are evaluated in MATLAB by
Dx = kron(eye(4),Der); % d/dxDy = kron(Der,eye(4)); % d/dyDx2 = Dx*Dx;Dy2 = Dy*Dy;Dxy = Dx*Dy;Int2 = kron(Int2y,Int2x);
Cubic Hermite Polynomial Interpolation in 1-D
Consider a function w(x) defined on a 1-D line element [0, lx]R. Suppose we only store
values and slopes of w(x) at endpoints. From this we obtain
wT =[w(0) w(lx) Dxw(0) Dxw(lx)
].
We wish to approximate w(x) with w(x), computed from a given w ∈ R4. The mapping
w 7→ w(x) should satisfy superposition; i.e., if w1 7→ w1(x) and w2 7→ w2(x), then
αw1 + βw2 7→ αw1(x) + βw2(x) for all α, β ∈ R. This can be done by writing w(x) as a
linear combination of 4 “shape functions” fx(x), x ∈ [0, lx]R that are weighted by w:
w(x) = fTx w, fT
x (x) :=[fx1(x) fx2(x) fx3(x) fx4(x)
].
210
Appendix B. Specification and Derivation of LFSS Examples
For consistency, we require[w(0) w(lx) Dxw(0) Dxw(lx)
]= wT. This means
fx1(0) = 1, fx2(0) = 0, fx3(0) = 0, fx4(0) = 0,
fx1(lx) = 0, fx2(lx) = 1, fx3(lx) = 0, fx4(lx) = 0,
Dxfx1(0) = 0, Dxfx2(0) = 0, Dxfx3(0) = 1, Dxfx4(0) = 0,
Dxfx1(lx) = 0, Dxfx2(lx) = 0, Dxfx3(lx) = 0, Dxfx4(lx) = 1.
A solution is obtained by choosing fx to be cubic polynomials in x, and so
fTx (x) = tT
xFx,
where Fx ∈ R4×4 is a matrix whose columns specify coefficients for fx1(x), fx2(x), fx3(x),
and fx4(x), respectively. The consistency constraints now become[fTx (0)
fTx (lx)
]= ptx × Fx =
[1 0 0 0
0 1 0 0
],[
DxfTx (0)
DxfTx (lx)
]= ptx ×Der× Fx =
[0 0 1 0
0 0 0 1
].
Thus Fx can be solved by matrix inverse; MATLAB code:
Fx = inv([ptx;ptx*Der]); % Shape function in x direction.
fx(x) obtained from this are called cubic Hermite polynomials. Similarly, we also
define shape functions fy(y) for y ∈ [0, ly]R:
Fy = inv([pty;pty*Der]); % Shape function in y direction.
Bicubic Hermite Polynomial Interpolation in 2-D
Consider a function w(x, y) defined on a 2-D rectangular element [0, lx]R×[0, ly]R. Suppose
we sample w(x, y), Dxw(x, y), Dyw(x, y) and Dxyw(x, y) at vertexes [0; 0], [lx; 0], [0; ly],
[lx; ly]. This results in a vector w ∈ R16, which can then be used to form an interpolated
approximation w(x, y) of w(x, y) by
w(x, y) = fTw,
211
Appendix B. Specification and Derivation of LFSS Examples
where f(x, y) is a vector of 16 shape functions. Mirroring the previous development:
fT(x, y) = tTyxF, (B.4)
where F ∈ R16×16 is a matrix of coefficients that define bicubic Hermite polynomials
in x and y. In the literature, this rectangular element is called the Bogner-Fox-Schmit
element. It is in fact easy to compute F. Since partial derivatives in x and y are
independent, we can write [45]:
fT(x, y) = fTy (y)⊗ fT
x (x) =(tTy Fy
)⊗(tTxFx
)=(tTy ⊗ tT
x
)(Fy ⊗ Fx) .
But tTyx = tT
y ⊗ tTx , so by comparison with (B.4):
F = Fy ⊗ Fx.
In MATLAB:
F = kron(Fy,Fx); % 16 shape functions in columns.
Rearranging 2-D Shape Functions
We used Kronecker product to evaluate the bicubic Hermite polynomial coefficient matrix
F ∈ R16×16. This is convenient in MATLAB, but the columns of F induces a variable
ordering in w ∈ R16 that differs from what we prefer (this relates to the “plate ordering”
introduced later on).
First, let us identify a shape function (bicubic Hermite polynomial) by the conditions
under which it evaluates to 1. There are 4 such conditions:
1. Is function evaluated at x = 0 or at x = lx (apply label “1” if at x = lx)?
2. Is Dx applied to the function (apply label “2” if Dx is applied)?
3. Is function evaluated at y = 0 or at y = ly (apply label “3” if at y = ly)?
4. Is Dy applied to the function (apply label “4” if Dy is applied)?
212
Appendix B. Specification and Derivation of LFSS Examples
For example, the symbol [14] represents fi(x, y) such that Dyfi(lx, 0) = 1.
The ordering of shape functions in F = Fy ⊗ Fx is
[ ], [1 ], [ 2], [12], [3 ], [13 ], [32], [13
2],
[ 4], [14], [ 24], [12
4], [ 34], [134], [3
24], [13
24].
Our preferred ordering is to group shape functions by derivative types (none, Dx, Dy,
Dxy); and within each group, by evaluation at (0, 0), (lx, 0), (0, ly), (lx, ly). Thus
[ ], [1 ], [3 ], [13 ], [ 2], [12], [32], [13
2],
[ 4], [14], [ 34], [134], [ 2
4], [124], [3
24], [13
24].
The MATLAB code to perform the proper column permutation of F is
F = F(:,1+[0,1,4,5,2,3,6,7,8,9,12,13,10,11,14,15]);
Stiffness and Mass Matrices for a Single Element
Given w(x, y, t) restricted to a rectangular element [0, lx]R× [0, ly]R, the kinetic and strain
energy contributions (simplified from (B.2) and (B.3), with R contributions removed) are
Te(t) =1
2µ
∫ lx
0
∫ ly
0
w2(x, y, t) dy dx,
Ue(t) =1
2D
∫ lx
0
∫ ly
0
(∆2w)2 − 2(1− ν)∆w dy dx.
(B.5)
Recall that ∆2w = D2xw + D2
yw, ∆w = (D2xw)(D2
yw) − (Dxyw)2. For the Bogner-Fox-
Schmit element, w(x, y, t) is represented by a vector w(t) ∈ R16, and has the following
dynamical equation (without damping) in the linear model:
Mew + Kew = 0, (B.6)
where Me ∈ PD16 and Ke ∈ PSD16. The kinetic and strain energies are
Te(t) =1
2wTMew, Ue(t) =
1
2wTKew. (B.7)
213
Appendix B. Specification and Derivation of LFSS Examples
We wish to derive Me,Ke so that the energy expressions (B.5) and (B.7) agree. This is
accomplished by substituting w(x, y, t) in (B.5) with w(x, y, t):
w(x, y, t) = fT(x, y)w(t) = tTyx(x, y)Fw(t) = tT
yxFw.
For Te(t): ˙w = tTyxFw, so ˙w2 = ˙wT ˙w = wTFTtyxt
TyxFw, and
1
2µ
∫ lx
0
∫ ly
0
˙w2 dy dx =1
2wTµFT
(∫ lx
0
∫ ly
0
tyxtTyx dy dx
)Fw
=1
2wT [µFT × Int2× F]︸ ︷︷ ︸
Me
w.
For Ue(t): we treat the two terms in the integral separately. For (∆2w)2:
∆2w = D2xw +D2
yw = tTyxD
2xFw + tT
yxD2yFw = tT
yx(D2x + D2
y)Fw,
and so
(∆2w)2 = wTFT(D2x + D2
y)T(tyxt
Tyx)(D
2x + D2
y)Fw,∫ lx
0
∫ ly
0
(∆2w)2 dy dx = wT[FT(D2x + D2
y)T × Int2× (D2
x + D2y)F]w.
For ∆w: follow similar steps as above, we obtain
(D2xw)(D2
yw) = wTFT(D2x)
T(tyxtTyx)D
2yFw,
(Dxyw)2 = wTFT(DxDy)T(tyxt
Tyx)DxDyFw,
∴ ∆w = (D2xw)(D2
yw)− (Dxyw)2
= wT[FT(D2x)
T(tyxtTyx)D
2yF− FT(DxDy)
T(tyxtTyx)DxDyF]w.
Applying integration yields∫ lx
0
∫ ly
0
∆w dy dx = wT[FT(D2x)
T × Int2×D2yF− FT(DxDy)
T × Int2×DxDyF]w.
Since Ue(t) is a linear combination of integrals of (∆2w)2 and ∆w, and each of these take
214
Appendix B. Specification and Derivation of LFSS Examples
the form wT(·)w, so we extract:
K′e = D(FT(D2
x + D2y)
T × Int2× (D2x + D2
y)F
− 2(1− ν)(FT(D2
x)T × Int2×D2
yF− FT(DxDy)T × Int2×DxDyF
)).
K′e is not symmetric. However, since it is used to evaluate a quadratic form wTK′ew, so
can replace it with a symmetrized version without changing the resulting energy:
Ke :=1
2
((K′e)
T + K′e).
We also symmetrize Me to improve numeric results. Here is the (very concise) MATLAB
code to evaluate Me and Ke (note that Ke has an intermediate step):
Me = symmetrize(F’*Int2*F*mu);Ke = (Dx2+Dy2)’*Int2*(Dx2+Dy2)-2*(1-nu)*(Dx2’*Int2*Dy2-Dxy’*Int2*Dxy);Ke = symmetrize(F’*Ke*F*flex);
symmetrize() extracts the symmetrical component of the matrix (shown later).
Vertexes and States of the FEM Model
As seen in Figure B.4, E is divided into Nx ×Ny elements, producing (Nx + 1)(Ny + 1)
vertexes (black dots), which are located at V [a, b] | a ∈ [0, Nx]Z, b ∈ [0, Ny]Z, with
V [a, b] :=
[−1
2Lx + alx
−12Ly + bly
]∈[−Lx
2,Lx2
]R×[−Ly
2,Ly2
]R.
For FEM, w(x, y, t), Dxw(x, y, t), Dyw(x, y, t), and Dxy(x, y, t) are sampled at vertexes
V [a, b] at time t. The values are assembled into w(t) ∈ Rn, where
n := 4(Nx + 1)(Ny + 1).
In [27,28], Nx = Ny = 4 is used, which yields n = 100.
Let w[a, b, c] for a ∈ [0, Nx]Z, b ∈ [0, Ny]Z, and c ∈ 0, 1, 2, 3 denote the value sampled
at vertex V [a, b] = [x; y] = [−Lx
2+ alx;−Ly
2+ bly], with
w[a, b, 0](t) := w(x, y, t), w[a, b, 1](t) := Dxw(x, y, t),
w[a, b, 2](t) := Dyw(x, y, t), w[a, b, 3](t) := Dxyw(x, y, t).
215
Appendix B. Specification and Derivation of LFSS Examples
For computation, each w[a, b, c] matches a component of w. This is specified by plate
ordering, which evaluates a 1-based index within w for w[a, b, c], calculated by
plate(a, b, c) = 1 + a+ b(Nx + 1) + c(Nx + 1)(Ny + 1) ∈ [1, n]Z.
This is evaluated by MATLAB script plate idx (shown later). Figure B.5 shows an
example of plate ordering for Nx = Ny = 2 (and so n = 4(2 + 1)(2 + 1) = 36):
Figure B.5: Plate ordering of states in w for Nx = Ny = 2.
Now consider the rectangular element E[i, j] for i ∈ [1, Nx], j ∈ [1, Ny] (see Figure
B.4). The 4 adjacent vertexes are V [i− 1, j − 1], V [i− 1, j], V [i, j − 1], V [i, j], so the
corresponding w[·, ·, c] variables have the following indexes:
1 + (i− 1) + (j − 1)(Nx + 1) + 0, 1, Nx + 1, Nx + 2+ c(Nx + 1)(Ny + 1).
This can be seen in the MATLAB code in the next section.
Overall Inertia and Stiffness Matrices for E
We have determined the inertia matrix Me and stiffness matrix Ke for a single element.
Let us now combine them into the overall inertial matrix M′0 ∈ PDn (excluding the
kinetic energy of R) and the stiffness matrix K0 ∈ PSDn for E . We calculate these by
summing the kinetic/strain energies of elements to form total kinetic/strain energies:
T ′(t) =1
2wTM′
0w =1
2
Nx∑i=1
Ny∑j=1
wTijMewij,
U(t) =1
2wTK0w =
1
2
Nx∑i=1
Ny∑j=1
wTijKewij,
where wij ∈ R16 is a sub-vector of w associated with the element E[i, j].
To construct M′0 and K0, there are two competing approaches
216
Appendix B. Specification and Derivation of LFSS Examples
1. “Fetch” approach: iterate over each vertex V [a, b], and find adjacent rectangular
elements. For each w[a, b, c] on V [a, b], sum over the variables that are affected by
each adjacent element, sum the inertia/stiffness contributions from, and assign.
2. “Send” approach: initialize M′0 := 0 and K0 := 0. Iterate over each element E[i, j],
and consider the adjacent vertexes. The contribution of each element via Me (resp.
Ke) is accumulated to the associated entries in M′0 (resp. K0).
The “fetch” approach is more intuitive, since each element in M′0 and K0 is assigned
once and finalized. However, this approach requires us to consider separate special cases,
i.e., for vertexes at corners, edges, and the interior of E .
Instead, we will apply the “send” approach, which does not require the above special
cases to be handled. This is also easy to do in MATLAB by using the “matrix slices”
feature with vector indexes. The MATLAB code to allocate M′0, K0, and D0 (to be
specified later) is
sz = (Nx+1)*(Ny+1);M0 = zeros(sz*4); % Inertia.K0 = zeros(sz*4); % Stiffness.D0 = zeros(sz*4); % Damping.
The MATLAB code to iterate over elements E[i, j] and add the contributions to
the proper sub-matrices of M′0 and K0 is
for ii = 1:Nxfor jj = 1:NyrelIdx = ii+(jj-1)*(Nx+1)+[0,1,Nx+1,Nx+2];idx = [relIdx,relIdx+sz,relIdx+2*sz,relIdx+3*sz];K0(idx,idx) = K0(idx,idx)+Ke;M0(idx,idx) = M0(idx,idx)+Me;
endend
Here we calculated the “relative index” relIdx as
relIdx :=[plate(i− 1, j − 1, 0) plate(i, j − 1, 0) plate(i− 1, j, 0) plate(i, j, 0)
],
which is then adjusted to “absolute index” idx, which consists of 4 copies of relIdx,
adjusted by c = 0, 1, 2, 3.
The resultant matrices satisfy M′0 ∈ PDn and K0 ∈ PSDn. In fact, K0 has a defect
of 3, which corresponds to the 3 rigid body modes. However, in MATLAB, K0 may be
ill-conditioned, and rank(K) may provide the wrong answer. This can be remedied by
calculating rank(inv(M)*K) instead.
217
Appendix B. Specification and Derivation of LFSS Examples
Attaching Rigid Mass R and Damping
The full kinetic energy function (B.2) contains the terms
1
2Mrz
2c +
1
2Irxθ
2x +
1
2Iryθ
2y, (B.8)
in addition to E ’s total kinetic energy of T ′(t) = 12wTM′
0w (recall zc(t) = w(0, 0, t),
θx(t) = Dyw(0, 0, t), and θy(t) = −Dxw(0, 0, t)). Since we require Nx and Ny to be
even, so w contains w(0, 0, t), Dxw(0, 0, t), and Dyw(0, 0, t). Therefore (B.8) can be
incorporated into the total kinetic energy function by adding extra terms to M′0 to form
M0. This is done by adding Mr, Irx, and Iry to the diagonal entries of M0 corresponding
to w[Nx
2, Ny
2, c]
for c = 0, 1, and 2, respectively. Formally,
M0 = M′0 +Mreae
Ta + Irxebe
Tb + Iryece
Tc ,
where a = plate(Nx
2, Ny
2, 0), b = plate(Nx
2, Ny
2, 1), c = plate(Nx
2, Ny
2, 2), In MATLAB:
centIdx = (1+Nx/2+(Ny/2)*(Nx+1))+[0,1,2]*sz;M0(centIdx,centIdx) = M0(centIdx,centIdx)+diag([Mr,Iyr,Ixr]);
We will assume Rayleigh damping, and so the D0 is just a scaled version of K0. As
a result, ∆ will be diagonal.
D0 = K0*1E-4;
Calculating Frequencies and Mode Shapes
Having obtained M0 and K0, we can perform simultaneous diagonalization using the
procedure in the proof of (A.17), and obtain T0 ∈ GLn so that TT0 M0T0 = I, and
TT0 K0T0 = Ω2 ∈ PSDn ∩ DIAGn. As discussed in Section 2.2.3, diagonal entries of
Ω2 are rigid body modes or mode frequencies (squared), and the columns of T0 are
corresponding mode shapes (sampled at vertexes in FEM).
A problem that arises in MATLAB, when we calculate the rigid body mode 0, which
has multiplicity 3: MATLAB arbitrarily assign 3 orthogonal eigenvectors in this space.
However, we want “nice” rigid body modes that correspond to w1(x, y) = 1, w2(x, y) = x,
w3(x, y) = y. Our solution is to compute these modes directly a priori :
218
Appendix B. Specification and Derivation of LFSS Examples
zsz = zeros(sz,1);osz = ones(sz,1);v1 = [osz;zsz;zsz;zsz];v2 = [kron(1-(0:Ny)’/Ny*2,ones(Nx+1,1));zsz;-osz*2/Ly;zsz];v3 = [kron(ones(Ny+1,1),1-(0:Nx)’/Nx*2);-osz*2/Lx;zsz;zsz];
Note that Dxw(x, y), Dyw(x, y) and Dxyw(x, y) are also manually computed, but
these are simple for our rigid body modes. As verification, we evaluated inv(M0)*K0*v1,
inv(M0)*K0*v2 and inv(M0)*K0*v3, were calculated, and are shown to vanish.
Our script to calculate mode shapes is
V = calc modes(M0,K0,[v1,v2,v3]);
Here, calc modes is a stand-alone function to evaluate mode shapes, given known modes
(to replace rigid body modes), which are normalized by the script. Note that the script
assumes that 0-eigenvalues appear first.
% Given M and K, solve for KV = DMV where D is diagonal.% Allows known columns to be injected.% Identities: V’*M*V = I and V’*K*V = diagonal.function V = calc modes(M,K,knownCol)invU = inv(chol(M));t = symmetrize(invU’*K*invU);[Z,dummy] = eig(t); % Better result than eig(K,M,’chol’).V = invU*Z;for ii=1:size(knownCol,2) % Replace with known columns.v = knownCol(:,ii);V(:,ii) = v/sqrt(v’*M*v); % Normalize to ensure V’*M*V = I.
endend
calc modes calculates Ω2 (as dummy) but discards it, since it is diagonal matrix and
annoying to print. Alternatively, we can we obtain frequencies in the main script using
MATLAB eig’s built-in feature that uses Cholesky factorization:
freqs = sqrt(zerofy(eig(K,M,’chol’)));
However, when we tried to use obtain mode shapes from eig with ’chol’ parameter,
the resultant mode shapes are unsatisfactory. Therefore we continue to use calc modes.
Forming LFSS Model
To obtain the LFSS, we still need to specify Λ0. As shown in Figure B.3, we have 5
thrusters in the z-direction, located at the corners and the centre of E . This gives m = 5.
Since the corners and the centre (assuming Nx and Ny even) correspond to vertexes,
therefore forces are simply applied to existing variables in w. The script to construct Λ0
are
219
Appendix B. Specification and Derivation of LFSS Examples
Lambda0 = zeros(sz*4,m);Lambda0(plate idx(Nx,Ny,0,0,0),1) = 1;Lambda0(plate idx(Nx,Ny,0,0,Ny),2) = 1;Lambda0(plate idx(Nx,Ny,0,Nx/2,Ny/2),3) = 1;Lambda0(plate idx(Nx,Ny,0,Nx,Ny),4) = 1;Lambda0(plate idx(Nx,Ny,0,Nx,0),5) = 1;
We specified c = 0 in plate idx as the third parameter, because we have linear
actuators. If we were to apply torquers, then would specify c = 1 (about y-axis) or c = 2
(about x-axis).
Originally we have a model with n = 100, but we wish to now apply modal truncation
to obtain a model with n = 12 (3 rigid and 9 elastic). We evaluate A, B, and C in
MATLAB by the following:
n = nuse;m = 5;r = m;L = zerofy(V’*Lambda0,1E-10);Omega2 = zerofy(V’*K0*V,1E-10); % Should be diagonal.Delta = zerofy(V’*D0*V,1E-10); % Should have same image as Omega2.L = L(1:n,:);Omega2 = Omega2(1:n,1:n);Delta = Delta(1:n,1:n);A = [zeros(n),eye(n);-Omega2,-Delta];B = [zeros(n,m);L];C = [L’,zeros(m,n)];
B.3.3 Validation
We now show that our scripts produce results that agree with [28], which lists 100 frequen-
cies along with selected mode shapes. The first and the last 3 flexible mode frequencies
are listed below:
Modes Our script [28]
4 1.132244× 10−2 1.1320× 10−2
5 1.845131× 10−2 1.8447× 10−2
6 3.194185× 10−2 3.1936× 10−2
98 3.961666 3.9609
99 4.204430 4.2036
100 4.250415 4.2495
So the frequencies agree to the 4-th significant digit; this holds for the other frequencies,
too. As a more complete check, the 100 frequencies from [27] and from our simulations
are plotted in Figure B.6. Clearly, the differences in are minute.
220
Appendix B. Specification and Derivation of LFSS Examples
0 10 20 30 40 50 60 70 80 90 1000
1
2
3
4
5[Hab82]
Our Simulation
Figure B.6: Plot of frequencies listed in [27] and computed in our simulation.
Next, we wish to see how well do the frequency obtained compare to reality. We
do not have a closed-form solution for the actual frequencies. However, we can increase
Nx and Ny to obtain better approximations. The first 100 frequencies for 4 × 4, 6 × 6,
8 × 8 and 16 × 16 element cases are simulations are plotted in Figure B.7. We see that
0 10 20 30 40 50 60 70 80 90 1000
1
2
3
4
5
4x4
6x6
8x8
16x16
Figure B.7: Comparing the first 100 modal frequencies for simulations with differentnumber of elements.
the higher modes for the 4 × 4 element simulation are unreliable. For our linear model
we only consider the first 12 modes. So in Figure B.8 juxtaposes the low frequency
flexible modes between the 4× 4 case and the 16× 16 case. We see that the differences
are moderate (the maximum is a +10.4% error for mode 10). Finally, let us examine
the mode shapes. The 0-level curves of lower modes are shown in Figure B.9, and are
identical to the corresponding shapes listed in [28]. Plots for higher modes (not shown)
also agree.
221
Appendix B. Specification and Derivation of LFSS Examples
4 5 6 7 8 9 10 11 12 130
0.02
0.04
0.06
0.08
0.1
0.12
4x4
16x16
Figure B.8: Comparing modal frequencies 3 to 13, using 4 × 4 versus 16 × 16 elementsimulations.
These plots are also useful for actuator/actuator placement in the LFSS for vibration
control. If a linear actuator is placed on a node, then it will not excite the mode. And if
all the thrusters are located nodes of a mode, then the mode would become uncontrollable
and unobservable. Note that for mode 10, the colocated sensors/actuators are very clear
to node lines. As a result, this mode becomes difficult to control and detect.
To produce one of these plots, the MATLAB code (for say, mode 10) is simply
contour(chpmode2(101,41,V(:,10),Nx+1,lx,ly)’,[0,0],’k’);
Here, chpmode2 (listed later) is a script that performs bicubic Hermite polynomial
interpolation in 2-D. For this plot we are producing a 101× 41 point interpolation. Note
that 100 × 40 maintains the aspect ratio of the LFSS; 1 is added for end points. The
MATLAB command contour performs the plot, and the [0,0] parameter specifies that
a 0-level curve is desired.
B.3.4 Support Scripts
Support scripts for our FEM code and simulation are listed here.
zerofy.m: Takes a matrix, and converts all value in (−10−7,−107) (or a specified toler-
ance) to 0.
function ret = zerofy(A,tol)if (nargin < 2)tol = 1E-7;
end;ret = A.*(abs(A) > tol);
222
Appendix B. Specification and Derivation of LFSS Examples
4 5 6 7
8 9 10 11
12 13 14 15
16 17 18 19
20 21 22 23
Figure B.9: 0-level curves of various flexible mode shapes from our simulation.
symmetrize.m: Takes a matrix, and extracts the symmetrical part.
function ret = symmetrize(A)ret = (A+A’)/2;
plate idx.m: Converts a component in w ∈ Rn specified by (a, b, c) for a ∈ [0, Nx],
b ∈ [0, Ny] and c ∈ 0, 1, 2, 3 to its 1-based index in w, under the plate ordering.
function idx = plate idx(Nx,Ny,c,a,b)idx = 1+a+b*(Nx+1)+c*(Nx+1)*(Ny+1);
chpmode.m: Performs 1-D cubic Hermite polynomial interpolation efficiently, given the
output size M, input column vectors u and the x-separation xsep between evenly-spaced
sample points in the input. Multiple columns in u are processed independently. For
each column with even length 2N , the first N entries are evenly-sampled values, and the
second N entries are the corresponding slopes.
223
Appendix B. Specification and Derivation of LFSS Examples
function y = chpmode(M,u,xsep)chp = [1,0,0,0;0,0,1,0;-3,3,-2,-1;2,-2,1,1];[N,Q] = size(u); % Allow matrix u for parallel interpolation.N = N/2-1;idx = 1+(0:(M-2))’*(N/(M-1));lo = floor(idx);xi0 = ones(M-1,1);xi1 = idx-lo;xi2 = xi1.*xi1;xi3 = xi2.*xi1;y = zeros(M,Q);for ii=1:Qcoef = [u(lo,ii),u(lo+1,ii),xsep*u(lo+N+1,ii),xsep*u(lo+N+2,ii)];pows = [xi0,xi1,xi2,xi3]*chp;y(:,ii) = [sum(coef.*pows,2);u(N+1,ii)];
end;
chpmode2.m: Performs 2-D bicubic Hermite polynomial interpolation on a single grid of
sampled 2-D function that has been rearranged into a vector (in an ordering we used for
states in our application of FEM, i.e., w(x, y), Dxw(x, y), Dyw(x, y) and Dxyw(x, y)).
It turns out that the 2-D interpolation can be performed by performing 1-D interpo-
lations (w(x, y), Dxw(x, y)) → w′(x, y) and (Dyw(x, y), Dxyw(x, y)) → Dyw′(y), then
(w′(x, y), Dyw′(x, y))→ w′′(x, y).
function ret = chpmode2(Mx,My,u,Px,xsep,ysep)sz = size(u,1)/4; % Only allows vector u (unlike chpmode).Py = sz/Px;srcRow = reshape(u,[Px,Py,4]);t = chpmode(Mx,[srcRow(:,:,1);srcRow(:,:,2)],xsep);ty = chpmode(Mx,[srcRow(:,:,3);srcRow(:,:,4)],xsep);ret = chpmode(My,[t’;ty’],ysep)’;
224
Appendix B. Specification and Derivation of LFSS Examples
B.3.5 The Model (Summary)
Ω2 = 10−3 diag(0, 0, 0, 0.1282, 0.3405, 1.0203, 1.5466, 3.4202, 4.4507, 5.3301, 5.9289, 8.1838),
∆ = 10−7 diag(0, 0, 0, 0.1282, 0.3405, 1.0203, 1.5466, 3.4202, 4.4507, 5.3301, 5.9289, 8.1838),
L = 10−4
2.3553 2.3553 2.3553 2.3553 2.3553
4.2574 −4.2574 0 −4.2574 4.2574
4.2574 4.2574 0 −4.2574 −4.2574
4.8236 4.8236 −2.4918 4.8236 4.8236
6.3811 −6.3811 0 6.3811 −6.3811
4.4602 4.4602 0 −4.4602 −4.4602
−7.0293 7.0293 0 7.0293 −7.0293
2.5549 2.5549 3.4851 2.5549 2.5549
−7.6541 7.6541 0 −7.6541 7.6541
0.4755 0.4755 0 −0.4755 −0.4755
5.9501 5.9501 −1.1764 5.9501 5.9501
8.4492 8.4492 0 −8.4492 −8.4492
.
By default, disturbances are modelled by q = 5, E = B, and F = 0.
225
Bibliography
[1] S. S. Ahmad, J. S. Lew, and L. H. Keel. Fault tolerant controller design for large
space structures. In Control Applications, 1999. Proceedings of the 1999 IEEE
International Conference on, volume 1, pages 63–68, 1999.
[2] S. S. Ahmad, J. S. Lew, and L. H. Keel. Robust control of flexible structures against
structural damage. Control Systems Technology, IEEE Transactions on, 8(1):170–
182, Jan. 2000.
[3] M. Balas. Trends in large space structure control theory: Fondest hopes, wildest
dreams. Automatic Control, IEEE Transactions on, 27(3):522–535, Jun. 1982.
[4] J. Bao, W. Z. Zhang, and P. L. Lee. Passivity-based decentralized failure-tolerant
control. Industrial & Engineering Chemistry Research, 41(23):5702–5715, 2002.
[5] I. Bar-Kana, R. Fischl, and P. Kalata. Direct position plus velocity feedback con-
trol of large flexible space structures. Automatic Control, IEEE Transactions on,
36(10):1186 –1188, oct 1991.
[6] D. S. Bernstein. Matrix Mathematics: Theory, Facts, and Formulas. Princeton
University Press, 2009.
[7] A. Bhaya and C. Desoer. On the design of large flexible space structures (LFSS).
Automatic Control, IEEE Transactions on, 30(11):1118–1120, Nov. 1985.
[8] M. Blanke, M. Kinnaert, J. Lunze, M. Staroswiecki, and J. Schroder. Diagnosis and
Fault-Tolerant Control. Springer-Verlag New York, Inc., Secaucus, NJ, USA, 2006.
[9] D. L. Boley, F. T. Luk, and D. Vandevoorde. A general vandermonde factorization
of a hankel matrix. ILAS Symp. on Fast Algorithms for Control, Signals and Image
Processing, Winnipeg, 1997.
226
Bibliography
[10] B. Boulet. Modeling and Robust Control of Large Flexible Space Structures (Ph.D
Thesis). Canadian theses. University of Toronto, 1996, 1996.
[11] D. Braess. Finite Elements: Theory, Fast Solvers, and Applications in Elasticity
Theory. Cambridge University Press, 2007.
[12] S. Cao and R. R. Rhinehart. An efficient method for on-line identification of steady
state. Journal of Process Control, 5(6):363–374, 1995.
[13] T. Chang and Z. Chen. Reliable decentralized servomechanism problem for large-
scale systems. Journal of Dynamic Systems, Measurement, and Control, 128(2):441–
448, 2006.
[14] T. N. Chang and E. J. Davison. Steady-state interaction indices for decentralized un-
known multivariable systems. In Decision and Control, 1986 25th IEEE Conference
on, volume 25, pages 881–887, Dec. 1986.
[15] Y. K. Cheung and A. Y. T. Leung. Finite Element Methods in Dynamics. Solid
mechanics and its applications. Science Press, 1991.
[16] T. H. Cormen, C. Stein, R. L. Rivest, and C. E. Leiserson. Introduction to
Algorithms. McGraw-Hill Higher Education, 2nd edition, 2001.
[17] E. Davison. Multivariable tuning regulators: The feedforward and robust control of
a general servomechanism problem. volume 21, pages 35 – 47, Feb 1976.
[18] E. Davison and B. Scherzinger. Perfect control of the robust servomechanism prob-
lem. Automatic Control, IEEE Transactions on, 32(8):689–702, Aug. 1987.
[19] E. J. Davison. The robust decentralized control of a general servomechanism prob-
lem. Automatic Control, IEEE Transactions on, 21(1):14–24, Feb. 1976.
[20] E. J. Davison. Decentralized robust control of unknown systems using tuning regu-
lators. Automatic Control, IEEE Transactions on, 23(2):276–289, Apr. 1978.
[21] E. J. Davison and I. Ferguson. The design of controllers for the multivariable ro-
bust servomechanism problem using parameter optimization methods. Automatic
Control, IEEE Transactions on, 26(1):93–110, Feb. 1981.
227
Bibliography
[22] E. J. Davison and S. H. Wang. Properties and calculation of transmission zeros of
linear multivariable systems. Automatica, 10(6):643–658, 1974.
[23] P. M. Frank. Fault diagnosis in dynamic systems using analytical and knowledge-
based redundancy: A survey and some new results. Automatica, 26(3):459–474,
1990.
[24] Y. Fujisaki, M. Ikeda, and K. Miki. Robust stabilization of large space structures
via displacement feedback. Automatic Control, IEEE Transactions on, 46(12):1993–
1996, Dec. 2001.
[25] Z. Gong and M. Aldeen. Stabilization of decentralized control systems. Journal of
Mathematical Systems, Estimation, and Control, 7(1):1–16, 1997.
[26] R. Gran and M. Rossi. A survey of the large structures control problem. In Decision
and Control including the Symposium on Adaptive Processes, 1979 18th IEEE
Conference on, volume 18, pages 1002–1007, Dec. 1979.
[27] H. B. Hablani. Generic model of a large flexible space structure for control concept
evaluation. Journal of Guidance and Control, 4:558–561, Sept.–Oct. 1981.
[28] H. B. Hablani. Constrained and unconstrained modes: Some modeling aspects of
flexible spacecraft. Journal of Guidance and Control, 5:164–173, Mar.–Apr. 1982.
[29] H. B. Hablani and R. E. Skelton. Generic model of a large flexible space structure
for control concept evaluation. In AIAA 19th Aerospace Sciences Meeting. American
Institute of Aeronautics and Astronautics, Jan. 1981.
[30] Q. Hu, B. Xiao, and Y. Zhang. Robust fault tolerant attitude stabilization control
for flexible spacecraft under partial loss of actuator effectiveness. In Control and
Fault-Tolerant Systems (SysTol), 2010 Conference on, pages 263–268, Oct. 2010.
[31] X. Hu and J. Jiang. Hybrid fault-tolerant flight control system design against partial
actuator failures. Control Systems Technology, IEEE Transactions on, 20(4):871–
886, Jul. 2012.
[32] S. T. C. Huang, E. J. Davison, and R. H. Kwong. Decentralized robust servomech-
anism problem for large flexible space structures under sensor and actuator failures.
Automatic Control, IEEE Transactions on, 57(12):3219–3224, Dec. 2012.
228
Bibliography
[33] P. C. Hughes and R. E. Skelton. Modal truncation for flexible spacecraft. Journal
of Guidance and Control, 4:291–297, May.–Jun. 1981.
[34] R. Isermann. Model-based fault detection and diagnosis: status and applications. In
In Proceedings of the 16th IFAC Symposium on Automatic Control in Aerospace,
St, pages 71–85, 2004.
[35] J. Jiang. Design of reconfigurable control systems using eigenstructure assignment.
International Journal of Control, 59:395–410, 1994.
[36] J. Jiang and X. Yu. Fault-tolerant control systems: A comparative study between
active and passive approaches. Annual Reviews in Control, 36(1):60–72, 2012.
[37] J. Jiang and Q. Zhao. Design of reliable control systems possessing actuator redun-
dancy. Journal of Guidance, Control and Dynamics, 23(4):709–718, 2000.
[38] S. M. Joshi. Robustness of velocity feedback controllers for flexible spacecraft.
Aerospace and Electronic Systems, IEEE Transactions on, AES-21(1):2–7, Jan. 1985.
[39] S. M. Joshi. Control of Large Flexible Space Structures. Lecture notes in control
and information sciences. Springer-Verlag, 1998.
[40] J. L. Junkins and Y. Kim. Introduction to dynamics and control of flexible
structures. AIAA education series. American Institute of Aeronautics and Astro-
nautics, 1993.
[41] M. Kim, S. H. Yoonb, P. A. Domanskib, and W. V. Payneb. Design of a steady-
state detector for fault detection and diagnosis of a residential air conditioner.
International Journal of Refrigeration, 31:790–799, 2008.
[42] Y. Kobayashi, M. Ikeda, and Y. Fujisaki. Stability of large space structures pre-
served under failures of local controllers. Automatic Control, IEEE Transactions on,
52(2):318–322, Feb. 2007.
[43] S. Y. Kung, K. S. Arun, and D. V. Bhaskar Rao. State-space and singular-value
decomposition-based approximation methods for the harmonic retrieval problem. J.
Opt. Soc. Am., 73(12):1799–1811, Dec. 1983.
229
Bibliography
[44] A. Laub and W. Arnold. Controllability and observability criteria for multivariable
linear second-order models. Automatic Control, IEEE Transactions on, 29(2):163 –
165, Feb. 1984.
[45] A. J. Laub. Matrix Analysis for Scientists and Engineers. Society for Industrial and
Applied Mathematics, 2005.
[46] D. Liberzon and A. S. Morse. Basic problems in stability and design of switched
systems. Control Systems, IEEE, 19(5):59–70, Oct. 1999.
[47] J. L. Lin. On transmission zeros of mass-dashpot-spring systems. Journal of Dynamic
Systems, Measurement, and Control, 121(2):179–183, 1999.
[48] D. E. Miller and E. J. Davison. The self-tuning robust servomechanism problem.
Automatic Control, IEEE Transactions on, 34(5):511–523, May. 1989.
[49] C. Moler and C. V. Loan. Nineteen dubious ways to compute the exponential of a
matrix, twenty-five years later. SIAM Review, 45(1):3–49, 2003.
[50] A. V. Oppenheim, A. S. Willsky, and S. H. Nawab. Signals and Systems. Prentice-
Hall signal processing series. Prentice Hall, 1997.
[51] W. H. Press, S. A. Teukolsky, W. T. Vetterling, and B. P. Flannery. Numerical
Recipes: The Art of Scientific Computing. Cambridge University Press, 3rd edition,
2007.
[52] A. Preumont. Vibration Control of Active Structures: An Introduction. Solid
Mechanics and Its Applications. Springer, 2011.
[53] H. C. Razavi, R. K. Mehra, M. Vidyasagar, Inc Scientific Systems, and Langley Re-
search Center. Fault-tolerant Control of Large Space Structures Using the Stable
Factorization Approach. Number v. 3964 in NASA contractor report. National Aero-
nautics and Space Administration, Scientific and Technical Information Branch,
1986.
[54] J. Stoustrup and V. D. Blondel. A simultaneous stabilization approach to (passive)
fault tolerant control. In American Control Conference, 2004. Proceedings of the
2004, volume 2, pages 1817–1822, July 2004.
230
Bibliography
[55] J. Stoustrup and M. J. Grimble. Integrating control and fault diagnosis: A separation
result. In IFAC Sym. on Fault Detection, Supervision and Safety for Technical
Processes, pages 323–328, Hull, United Kingdom, Aug. 1997.
[56] J. Stoustrup, M. J. Grimble, and H. H. Niemann. Design of integrated systems for
control and detection of actuator/sensor faults. Sensor Review, 17:157–168, 1997.
[57] V. Venkatasubramanian, R. Rengaswamy, and S. N. Kavuri. A review of process fault
detection and diagnosis part II: Qualitative models and search strategies. Computers
& Chemical Engineering, 27(3):313–326, 2003.
[58] V. Venkatasubramanian, R. Rengaswamy, S. N. Kavuri, and K. Yin. A review
of process fault detection and diagnosis part III: Process history based methods.
Computers & Chemical Engineering, 27(3):327–346, 2003.
[59] V. Venkatasubramanian, R. Rengaswamy, K. Yin, and S. N. Kavuri. A review of
process fault detection and diagnosis part I: Quantitative model-based methods.
Computers & Chemical Engineering, 27(3):293–311, 2003.
[60] S. H. Wang and E. Davison. On the stabilization of decentralized control systems.
Automatic Control, IEEE Transactions on, 18(5):473–478, Oct. 1973.
[61] G. West-Vukovich, E. J. Davison, and P. Hughes. The decentralized control of large
flexible space structures. IEEE Transactions on Automatic Control, 29(10):866–879,
Oct. 1984.
[62] W. M. Wonham. Linear Multivariable Control: A Geometric Approach. Applications
of mathematics. Springer-Verlag, 1985.
[63] G. G. Yen. Reconfigurable learning control in large space structures. Control Systems
Technology, IEEE Transactions on, 2(4):362–370, Dec. 1994.
[64] Y Zhang and J Jiang. Design of integrated fault detection, diagnosis and reconfig-
urable control systems. Proceedings of the 38th IEEE Conference on Decision and
Control, 4(December):3587–3592, 1999.
[65] Y. Zhang and J. Jiang. Integrated active fault-tolerant control using IMM approach.
Aerospace and Electronic Systems, IEEE Transactions on, 37(4):1221–1235, Oct.
2001.
231
Bibliography
[66] Y. Zhang and J. Jiang. Fault tolerant control system design with explicit con-
sideration of performance degradation. Aerospace and Electronic Systems, IEEE
Transactions on, 39(3):838–848, Jul. 2003.
[67] Y. Zhang and J. Jiang. Bibliographical review on reconfigurable fault-tolerant con-
trol systems. Annual Reviews in Control, 32(2):229 – 252, 2008.
[68] Y. Zhang and X. R. Li. Detection and diagnosis of sensor and actuator failures
using IMM estimator. Aerospace and Electronic Systems, IEEE Transactions on,
34(4):1293–1313, Oct. 1998.
[69] Y. M. Zhang and J. Jiang. Active fault-tolerant control system against partial
actuator failures. Control Theory and Applications, IEEE Proceedings, 149(1):95–
104, Jan. 2002.
[70] Q. Zhao and J. Jiang. Reliable state feedback control system design against actuator
failures. Automatica, 34(10):1267–1272, 1998.
232