Fault Tolerant Control of Large Flexible Space Structures under Sensor and Actuator Failures by Samuel Tien-Chieh Huang A thesis submitted in conformity with the requirements for the degree of Doctor of Philosophy Graduate Department of Electrical & Computer Engineering University of Toronto Copyright c 2013 by Samuel Tien-Chieh Huang
252
Embed
Fault Tolerant Control of Large Flexible Space Structures ...€¦ · program: Ernest Ho, Christina Holmes, Usheer Kanjee, Jason Kereluk, Mohamed Khairy, Eric Kopp, Karla Kvaternik,
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
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
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.
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
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:
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
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
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
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,
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
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,
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)
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)
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”
(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-
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
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
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.
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;
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
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