An Overview on Robust Control
P
'
C
Scope allow the student to assess the potential of different methods in
robust control without entering deep into theory. Sensitize for the necessity of robust feedback control.
Keywords uncertainty representations, H∞,µ synthesis, LMI
Prerequisites Nyquist criterion, gain and phase margin, LQG state space
control
Contact Raoul Herzog1, J¨urg Keller2
Version 5.1
Date October 4, 2010
Contents
1 Introduction to Robust Control . . . 4
1.1 Motivation of Robust Control . . . 4
1.2 An Attempt to define Robust Control . . . 5
1.3 Structure of this Document . . . 5
2 Review of Norms for Signals and Systems . . . 6
3 The Nyquist Criterion and the Small Gain Theorem . . . 8
3.1 Review of the Nyquist Criterion and Classical Stability Margins 8 3.2 The Small Gain Theorem . . . 10
3.3 Applications of the Small Gain Theorem to Robust Control . 11 4 Description of Model Uncertainty . . . 12
4.1 Unstructured Uncertainty . . . 13
4.2 Structured Uncertainty . . . 19
5 Formulation of the Standard H∞ Problem . . . 22
6 A Glimpse on the H∞ State Space Solution . . . 25
7 Limitation of H∞ Methods . . . 26
8 Outlook: µ Synthesis and LMI Methods . . . 27
8.1 Structured Singular Values (SSV) and µ Synthesis . . . 27
8.2 Linear Matrix Inequalities (LMI) . . . 27
9 Conclusion . . . 29
A.1 Examples . . . 30
A.1.1 Example 1 . . . 30
A.1.2 Example 2 . . . 37
A.2 Exercise 1: Linear Fractional Transformation . . . 47
A.3 Exercise 2: Small gain theorem . . . 47
A.4 Exercise 3: Drawback of classical stability margins . . . 48
A.5 Exercise 4: Two cart problem . . . 49
1
Introduction to Robust Control
1.1 Motivation of Robust Control
System modeling is generally one of the most important tasks in engineering, and in particular in control engineering. Modeling is always a delicate task, since the physical reality is often complicated, and all attempt to mathematically describe a real physical process involves simplifications and assumptions, e.g.:
• dynamics are often consciously neglected1 to make the model tractable, e.g.
unmodeled sensor and actuator dynamics, higher order modes from large scale structures modeled by finite elements (FEM),
• nonlinearities are often either hard to model or too complicated,
• parameters are often not exactly known, either because they are hard to
mea-sure precisely, or because of varying manufacturing conditions2.
Furthermore, it is desirable to end up with simple plant models. Indeed, in modern control, the controller is the output of an optimization problem, and the complex-ity of the controller is directly linked with the complexcomplex-ity of the plant model: a complicated high–order plant will automatically lead to a complicated high–order controller, which is undesirable.
Robust control deals with system analysis and control design for such imperfectly known process models. One of the main goals of feedback control is to maintain overall stability and system performance despite uncertainties in the plant.
In general, robustness does not “come for free” from a controller designed via optimal control and estimation theory (observer design): a controller designed for a nominal process model generally works fine for the nominal plant model, but may
fail3 for even a “nearby” plant model.
An important point of all feedback control synthesis methods is the control en-gineer’s awareness of inherent trade–offs : increasing the robustness will generally make the controller “less aggressive”, and will thereby decrease system performance. Robust control allows to specify more or less directly the plant uncertainty, and allows to predict the possible trade–offs between robustness and closed–loop perfor-mance.
Sometimes bachelor–level courses in control may give the impression that every-thing is feasible with control, and that it’s only a matter of finding a “good” con-troller. But this impression is completely false: the plant itself implies inherent
lim-itations4, especially if the plant is unstable. The achievable performance/robustness
1It’s common to say: “My model is precise up to . . . Hz.”
2For serial production of devices incorporating feedback control, individual tuning is not
desir-able. The robustness of the system should be sufficient to tolerate all uncertainties and tolerances from the manufacturing processes. For mechatronical systems, the manufacturing uncertainties are coming from the mechanical and electronical parts. Generally, there are no manufacturing tolerances inside the digital controller because software is perfectly reproducable.
3Instability or unacceptable performance degradations may occur.
trade–offs strictly depend on the plant, and cannot be overcome by any sophisticated control [1].
1.2 An Attempt to define Robust Control
A definition of robust control could be stated as:
Robust control aims at designing a fixed (non–adaptive) controller such that some
defined level of performance5 of the controlled system is guaranteed, irrespective of
changes in plant dynamics within a predefined class.
Robust control offers a collection of powerful mathematical tools and efficient
software algorithms able to partly6 answer the following key questions:
Describing and characterizing plant uncertainty: What is a good way to de-scribe plant variations or plant uncertainty? Some descriptions attempt to faithfully describe the real situation (e.g. probability distributions on physical parameters), but unfortunately there may exist no efficient method to solve the problem. Other uncertainty descriptions are less direct, but more convenient for the theory (e.g. analytic solutions exist).
Robustness analysis problems: As an example consider a nominal plant and a given stabilizing controller. The uncertainty in the plant model is defined by a class of perturbations. There is no “true” model, we have to deal with a given set of possible plant models. Now, we would like to know whether or not the closed–loop remains stable for the whole class of plants. This is a typical robustness analysis problem.
Robustness synthesis problems: Find a controller which stabilizes a given class of plants. Generally, synthesis problems are more difficult to solve than ana-lysis problems.
1.3 Structure of this Document
The document is structured as follows: In section 2, norms for signals and systems are reviewed for the single input single output case (SISO). Section 3 recapitulates the Nyquist criterion and the small gain theorem, an important working horse in robust control. Section 4 addresses the question how to describe model uncertainty.
Sections 5 introduces the setup of H∞control. It is not the goal of this document to
describe the underlying mathematical theory, which is quite demanding. Therefore,
5
e.g. closed–loop stability, reference tracking performance, and disturbance rejection perfor-mance.
6
section 6 only sketches the H∞solution from a user point of view. Section 7 discusses
some limitations and drawbacks of standard H∞ methods. Finally, section 8 gives
an outlook to the actual state–of–the–art in robust control. Section 9 concludes with some general remarks on robust control.
2
Review of Norms for Signals and Systems
Norms are used in many places of engineering to quantify the magnitude of an object (e.g. the amplitude of a signal), or to quantify the proximity of two objects (e.g. the proximity of two systems). In robust control, norms play a crucial role:
• the choice of metric used to quantify the amount of process uncertainty, • the choice of norm used in the optimization problem associated with the
con-troller synthesis. The linear quadratic gaussian LQG control is based on the
optimization of a ||·||2 norm, whereas H∞control is based on the optimization
of a || · ||∞ norm.
The L2 (Euclidean) norm of a time–domain scalar signal u(t) is defined as:
||u||2 =
s
Z ∞
−∞u
2(t) dt. (1)
If this integral is finite, then the signal u is square integrable, denoted as u ∈ L2.
For vector–valued signals u(t),
u(t) = u1(t) u2(t) ... un(t) . (2)
the 2–norm is defined as
||u||2 = s Z ∞ −∞||u(t)|| 2 2dt = s Z ∞ −∞u T(t) u(t) dt, (3)
where the superscript T denotes transposition.
A Linear Time–Invariant (LTI) system G can be described either by a state space realization
˙x = Ax + Bu y = Cx + Du or by its corresponding transfer function
Similar to signals, we would like to define different norms for systems, respectively for
transfer functions. Two systems G1 and G2 are “close” if the norm of the difference
of their transfer functions ||G1− G2|| is “small”. Two systems might be “close” with
respect to one defined norm, but “far” with respect to another norm7.
The H2 norm of a stable system G(s) is defined as the L2 norm of its impulse
response g(t). When dealing with stochastic signals, the H2 norm of a system
corresponds to the variance E[||y||2] of the system response y(t) when the system is
excited by a unit intensity white noise input u(t).
The H∞ norm of a stable transfer function G(s) is defined as the maximum RMS
amplification over arbitrary square integrable input signals u 6= 0.
||G||∞= sup
u∈L2
||y||2
||u||2 (5)
Note that the H∞ norm for a system is induced by the L2 norm for signals. The
physical interpretation of the H∞norm corresponds simply to the maximum energy
amplification over all input signals. It can be shown that for single–input single–
output systems ||G||∞equals the peak magnitude in the Bode diagram of the transfer
function G(j ω):
||G||∞ = sup
ω |G(j ω)| (6)
In H∞control the performance to be optimized is defined in terms of minimizing
the H∞ norm of closed–loop transfer functions, e.g. the sensitivity function S(s)
and the complementary sensitivity function T (s). This type of optimization
prob-lem is also called min–max probprob-lem: H∞ control seeks to minimize the worst–case
scenario, i.e. when the closed–loop function has its peak. In contrast, classical LQG
control minimizes the closed–loop behaviour for known input signals8, whereas H∞
control works with unknown input signals and tries to optimize the worst–case
sce-nario. Therefore, the solution of H∞control problems typically inhibits “flat9” Bode
magnitude plots (no more peak). When minimizing the absolute peak in the Bode magnitude diagram, automatically other local peaks pop up. This effect is called “waterbed–effect”. Finally, the value of all local peaks join the value of the absolute peak, and the response becomes “flat”. The theoretical background of this comes from the Bode integral theorem, see equation (12) and figure 6 page 12.
Instead of “flat” Bode magnitude plots we can also impose a given shape. This corresponds to a modern version of classical loop–shaping. In this context, important design parameters are frequency dependent weighting functions W (s). They allow
7With the metric induced by the H
∞ norm, the two systems P1(s) =
1
s+ǫ and P2(s) =
1 s are
infinitely“far”, no matter how small ǫ is. This may seem illogical because a reasonable controller
will stabilize both plants P1 and P2 simultaneously, and the resulting closed–loop systems will be
nearly identical. A remedy consists in using the so–called Vinnicombe metric, which also allows to treat marginally stable and unstable systems.
8e.g. the energy of the resulting closed–loop impulse response
10−1 100 101 102 Magnitude (abs) 10−2 10−1 100 −180 −135 −90 −45 0 Phase (deg) Bode Diagram Frequency (Hz)
Figure 1: Example: The || · ||∞ norm of G(s) = 1
s2+0.1s+1 is ||G||∞≈ 10.
to shape given closed–loop functions, e.g. the sensitivity S(s), by optimizing their weighted norm ||W S||∞.
The H∞ norm of a multivariable (MIMO) transfer matrix G(s) needs the
im-portant concept of singular values which is beyond the scope of this document.
3
The Nyquist Criterion and the Small Gain Theorem
The Nyquist criterion is a cornerstone of classical control, and is of fundamental importance in robust control. The following chapter recapitulates the Nyquist cri-terion, the small gain theorem, and shows its application to robust control.
3.1 Review of the Nyquist Criterion and Classical Stability Margins
The Nyquist criterion allows to check closed–loop stability based on the inspection of the loop gain L(s) = C(s) · P (s), without computing the closed–loop poles, i.e. the roots of 1 + L(s) = 0. The Nyquist criterion is based on Cauchy’s argument, and says:
The closed–loop system with loop gain L(s) and a negative feedback polarity is
stable if and only if the complete10 Nyquist plot of L(jω) encircles the critical point
scrit = −1 exactly NP anticlockwise times in the complex plane, where NP is the
number of unstable (right halfplane) poles of L(s).
As a special case, if L(s) already is a stable open loop transfer function, NP is
zero, and the Nyquist plot of L(jω) must not encircle the critical point −1 in order
10−1 100 10−3 10−2 10−1 100 101 frequency Hz
magnitude of a closed−loop function
Waterbed effect
minimize the peak !
magnitude will pop up elsewhere !
Figure 2: Illustrating the waterbed effect.
loop gain L(s)
feedback with minus polarity
Figure 3: Elementary feedback system with loop gain L(s)
to ensure closed–loop stability. Figure 4 recapitulates the definition of the classical
gain margin Am and phase margin φm. For example a gain margin of Am = 2 means
that the closed-loop stays stable even if the loop gain doubles. The phase margin
φm indicates the amount of additional delay the feedback loop can tolerate before
becoming unstable. Robust control does not work with the classical stability margins
Am and φm for two reasons: 1) there exist no analytical optimization techniques for
these margins, and 2) there are cases where the classical margins indicate a good robustness against individual gain and phase tolerances, whereas the feedback loop is not at all robust against simultaneous variations of gain and phase, see exercice 2, page 48. For these reasons, robust control prefers as margin the critical distance
dcrit between the Nyquist plot of L(jω) and the critical point scrit = −1:
dcrit = min
ω (dist(L(jω), scrit)) = minω |L(jω) − scrit| = minω |1 + L(jω)|. (7)
−1.5 −1 −0.5 0 0.5 1 1.5 2 −1 −0.5 0 0.5 1 real part imaginary part Nyquist plot of L(s) complex plane −1 d crit L(j ω) φm L(j 0) L(j ∞) 1/A m
Figure 4: Definition of the critical distance dcrit and the classical stability margins.
Here, the Nyquist plot is only drawn for positive frequencies ω > 0.
peak:
dcrit= 1
||S||∞, where S(jω) =
1
1 + L(jω). (8)
Maximizing the critical distance dcrit corresponds to minimizing the || · ||∞ norm of
the sensitivity function. Therefore, one of the natural objectives11 of robust control
consists of minimizing the || · ||∞ norm of the sensitivity function.
3.2 The Small Gain Theorem
The small gain theorem follows directly from the Nyquist criterion: if L(s) is stable
and ||L||∞ < 1, then the loop gain |L(jω)| is smaller than 1 for all frequencies ω,
and hence L(jω) does not encircle the critical point −1. It follows that the small
gain condition ||L||∞ < 1 is a sufficient but not necessary condition for closed–loop
11
It is important to see that sensitivity peak minimization is not the only objective in real world
problems. In fact, minimizing only the || · ||∞ norm of the sensitivity function turns out to be an
stability. The small gain condition corresponds to an infinite phase margin φm = ∞.
If ||L||∞ < 1, the closed loop stays stable even if the feedback polarity is wrong!
The small gain theorem is not limited to linear feedback control: it can even be generalized to nonlinear feedback control. In this case, L becomes a nonlinear
operator in time domain, and the || · ||∞ norm condition on L(s) must be replaced
by an operator norm condition. This may sound abstract, but a simple application is the feedback of a linear dynamic system in cascade with a static nonlinearity. In
this case, the small gain theorem yields a sector bounded12nonlinearity as a sufficient
condition for closed–loop stability.
It makes no sense to apply the small gain theorem directly for controller syn-thesis: for good tracking performance a high loop gain is needed within the control
bandwidth13. However, the small gain theorem has a great utility for analyzing
feedback loops with unstructured uncertainty.
3.3 Applications of the Small Gain Theorem to Robust Control
Suppose that P0(s) denotes the nominal plant, and C(s) a stabilizing controller. Now consider an additive perturbation which yields a “cloud” of plants P (s) = P0(s)+∆a(s), where ∆a(s) denotes an unknown stable transfer function representing the modeling uncertainty of P0. The question arises “how much” uncertainty the closed loop may tolerate before becoming unstable. Figure 5 shows that the feedback
'
a-C
1+P
0C
'
aP
0C
perturbed plant P + +'
aP
0-C
+ + controller nominal plant additive uncertainty feedback seen by'Figure 5: Application of the Small Gain Theorem to additive plant uncertainty.
12
also called Popov criterion.
13If the controller includes an integral action (e.g. the I part of PID), the loop gain is infinite at
seen by ∆a is −C
1+P0C. The corresponding loop gain is ∆a·
−C
1+P0C. Since both ∆a and
the nominal closed–loop are stable we can apply the small gain theorem for the feedback loop seen by ∆a. A sufficient condition for the stability of the perturbed system is therefore: ∆a · −C 1 + P0C ∞ < 1. (9)
Using the submultiplicative property of norms ||AB|| ≤ ||A|| · ||B||, the sufficient stability condition becomes:
||∆a||∞ · C 1 + P0C ∞ < 1 =⇒ ||∆a||∞< 1 C 1+P0C ∞ . (10)
Equation (10) is a conservative bound indicating the amount of tolerated additive uncertainty which preserves stability.
In case of multiplicative unstructured uncertainty, the set of perturbed plants is
described as P (s) = P0(s) · (1 + ∆m(s)). Using the small gain theorem, the following
stability bound can be found:
||∆m||∞ < 1 P0C 1+P0C ∞ = 1 ||T ||∞. (11)
A high complementary sensitivity peak value ||T ||∞ leads to a small tolerable
multi-plicative perturbation ∆m. We will now discuss an extremely fundamental relation-ship, called Bode integral theorem:
Z ∞
0 ln |S(jω)| dω = π
X
unstable poles p of L(s)
Re(p). (12)
This law can be seen as a conservation law: the integrated value of the log of the magnitude of sensitivity function S(jω) is conserved under the action of feedback. If the open–loop L(s) is stable, then the integral becomes zero. At low frequencies, in order to have good tracking performance, the sensitivity must be much smaller than 1 (negative dB levels), i.e. ln |S(jω)| must become negative. The Bode in-tegral theorem states that the average sensitivity improvement at low frequencies is compensated by the average sensitivity deterioration at high frequencies. This is illustrated by figure 6. If the plant is unstable, the situation is becoming worse since the right hand side of equation (12) is now positive. This means that the average sensitivity deterioration is always larger than the improvement. The more unstable the plant is, the more positive the real part of the unstable poles, the more diffi-cult the situation becomes. This applies to every controller, no matter how it was designed. Unstable plants are inherently more difficult to control than stable plants [1].
4
Description of Model Uncertainty
10 0.1 e d uti n g a M g o L 1.0 2.0 0.0 0.5 1.0 1.5 Frequency
Figure 6: Loopshaping constraints: Sensitivity reduction at low frequencies in-evitably leads to sensitivity increase at higher frequencies. Picture taken from [1].
the plant dynamics. Disturbances are external stochastic inputs which are not under control. Examples of disturbance signals are sensor and actuator noise or changes of the environment. Dynamic perturbations are model uncertainties caused by not exactly known or slowly changing plant parameters, and unmodeled or approximated system dynamics. In a house temperature control, disturbances and dynamic plant perturbations would be :
• Disturbances:
changing outdoor temperature, wind speed, open windows and doors, heating due to electrical equipment or human bodies, sun radiation
• Dynamic plant perturbations:
not exactly known isolation coefficients, unknown and changing heat capaci-ties, uncertain efficiency of the heating device
The example shows that it is not always clear how to classify the disturbances. Therefore, it is not surprising that in µ–synthesis the two categories of disturbances
are handled within the same formalism. For H∞–controller design plant uncertainty
results from approximating the real system with a mathematical model of tractable complexity. Additionally its physical parameters are not exactly known.
As explained in the motivation section, the aim of H∞–based controller design is to include uncertainty into controller design. To achieve this it is necessary to have a mathematical description of model uncertainty. In this section, two different types of uncertainty descriptions will be introduced. The first is unstructured uncertainty, whereas the second is structured uncertainty.
4.1 Unstructured Uncertainty
tractable with a formalism which can easily be used in controller design. A simple solution is found, if all dynamics, time–invariant perturbations that may occur in different parts of the system, are represented with a single perturbation transfer function ∆(s). There are many possibilities to include ∆(s) into a control system, but only the two most commonly used will be presented in the following. These are shown in figures 7 and 8. The focus is on SISO systems. Figure 7 shows ∆a(s) as an additive perturbation of the plant transfer function P (s):
P (s) = Po(s) + ∆a(s), (13)
where P (s) is the actual, perturbed plant, and P0(s) is the nominal plant.
The transfer function ∆a(s) is used to describe a frequency dependent unstruc-tured uncertainty as follows:
∆a(s) = W2(s) · ˜∆a(s) (14)
where the normalized perturbation ˜∆a(s) is any stable transfer function with:
|| ˜∆a||∞ ≤ 1 (15)
This uncertainity description is closely related to a plant transfer function
repre-sentation in C, the Nyquist plot, as shown in figure 9a). || ˜∆a||∞ = 1 defines a circle,
whose radius is scaled14 with W
2(s).
a
Figure 7: Additive uncertainty
Dynamic perturbations can also be described with multiplicative uncertainty. The corresponding block diagram is shown in figure 8.
P (s) = P0(s) · (1 + ∆m(s)) (16)
In multivariable systems, transfer functions are matrices. It is known that matrix
multiplication is not commutative, so for matrix–valued P0 and ∆m, P0(s) · (I +
∆m(s)) is generally different from (I + ∆m(s)) · P0(s). As a consequence, input and output multiplicative perturbations have to be distinguished. Input multiplicative perturbations are able to model actuator uncertainty, whereas output multiplicative perturbations are used to describe sensor related uncertainties.
m
Figure 8: Multiplicative uncertainty at plant input
The capabilities of additive or multiplicative uncertainty representation are il-lustrated with an example. For comparison purposes the unmodeled high frequency dynamic is specified. It will be investigated how this a priori known model error can be represented with an additive or multiplicative uncertainty.
Example:
Many plants can roughly be approximated by a first order system, e.g. PT1. Such a model usually neglects the high frequency dynamic of the system. As it is well known, a control system with a PT1-plant can achieve any required closed loop performance. Consequently, we are interested in an uncertainty description which incorporates possible unmodeled phase loss into controller design and prevents a controller design with unrealistic high bandwidth.
The nominal plant model is
P0(s) = 5
s + 1. (17)
The unmodeled dynamic is represented with a set of transfer functions with the following elements:
P∆(s) = 1
(τ s + 1)2, τ ∈ [0.02 . . . 0.05]. (18)
The plants to be controlled are:
P (s) = Po(s) · P∆(s). (19)
Additive unstructured perturbation:
∆a(s) = P (s) − P0(s). (20)
Multiplicative unstructured perturbation:
∆m(s) = P (s) P0(s)− 1. (21) −1 0 1 2 3 4 5 −3 −2.5 −2 −1.5 −1 −0.5 0 0.5 nominal plant perturbed plant set
(a) Additive uncertainty
10−1 100 101 102 103 100 105 10−1 100 101 102 103 −300 −200 −100 0 (b) Multiplicative uncertainty Figure 9: Plant uncertainty
The magnitude of the perturbations ∆a(jω) and ∆m(jω) are shown in figure 10. As defined in (14), frequency dependency is specified with the weighting transfer function W2(s). The solid line in the figures is an envelope of all error frequency responses and ∆(s) = W2(s) · ∆(s) is therefore an upper bound for the uncertainty. Additive weighting: W2a(s) = 7.5s (s + 1)(s + 15). (22) Multiplicative weighting: W2m(s) = 0.997s(s + 170) (s + 9)(s + 135). (23)
In figure 11 the resulting uncertainty regions are plotted in the corresponding plots.
10−1 100 101 102 103 10−3 10−2 10−1 100
approx. error bound additive. errors
(a) Additive uncertainty
10−1 100 101 102 103 10−3 10−2 10−1 100 101
approx. error bound multipl. errors
(b) Multiplicative uncertainty Figure 10: Uncertainty descriptions
−1 0 1 2 3 4 5 6 −3 −2.5 −2 −1.5 −1 −0.5 0 0.5
perturbed plant set(w)
(a) Additive bounds
10−1 100 101 102 103 10−5 100 105 10−1 100 101 102 103 −300 −200 −100 0 100 (b) Multiplicative bounds Figure 11: Uncertainty bounds
plant phase cannot be determined anymore. In the Bode diagram of figure phase bounds are set to −270 and 90 degrees, in order to get a nice bode plot.
In a similar way, static nonlinearities (sector criterion) or uncertain dead–time can be described with unstructured uncertainties.
There arises the question, which of the representations of uncertainty should be used. Since the optimal H∞–controller has the order of the plant plus the orders of all the weighting functions, it is preferable to choose a representation which leads to a minimal order weighting. In the SISO case, additive uncertainty can be recast into multiplicative uncertainty with simple algebraic operations:
P0(s) ∆m(s) = ∆a(s) (24)
which is independent of the the plant:
P (s) = Po(s) · e−sT (25)
∆m(s) = e−sT − 1 (26)
This function is shown in the amplitude plot of figure 12. It can be bounded with a DT1 transfer function. 10−1 100 101 102 103 10−3 10−2 10−1 100 101
Figure 12: Dead–time uncertainty
The chosen uncertainty representation determines which closed–loop transfer function has to be considered in H∞–controller design in order to guarantee robust-ness with respect to stability and performance.
Additive and multiplicative uncertainty are special cases of a more general frame-work which will be explained below. First, notice that we have to distinguish two different feedback loops: the feedback loop formed by the controller and the per-turbed plant, and the feedback loop in which the uncertainty ∆ resides. A general solution for all different uncertainty descriptions can be obtained, if the control system is described in the feedback structure shown in figure 13. The plant P is partitioned according to the dimensions of ∆.
P = " P11 P12 P21 P22 # . (27)
With simple algebraic calculations it follows:
g h
Figure 13: Standard P–∆ configuration
if (I − P11∆)−1 exists.
Define:
F(P, ∆) := P22+ P21∆(I − P11∆)−1P12 (29)
F(P, ∆) is called a linear fractional transformation LFT of P and ∆. In the single input single output case the LFT corresponds to a bilinear transform. This represen-tation is also used for more sophisticated uncertainty represenrepresen-tation (next section)
and also to formulate the general H∞–controller design problem.
Additive and multiplicative uncertainty representations are special cases of a linear fractional transformation. For additive perturbations, the matrix P becomes:
P = " 0 I I P0 # . (30)
For multiplicative perturbations at the plant output, the matrix P becomes: P = " 0 P0 I P0 # . (31)
The example before shows that the conservative error bounds on the plant can be large, compared to the real plant perturbation. An unstructured uncertainty model is also not suited for perturbations which only affects a part of an interconnected system. This motivates a more general representation of uncertainty which will be introduced in the next section.
4.2 Structured Uncertainty
Structured uncertainty means uncertainty (tolerances) of concrete physical parame-ters. Some examples are listed below:
• electrical components like resistors or capacitors are always affected with tol-erances, e.g. 2% for a standard resistor.
• The relative permeability µrof a magnetic material is usually not very precisely known
The internal structure of a linear plant can be represented as a block diagram with integrators, summators, and gains. The physical parameters are gains in the block diagram. It can be shown that the plant transfer function is always an LFT (linear fractional transform) with respect to every physical parameter p1, . . . , pn.
As an example, consider the uncertain plant equation (17), (18) and (19) page 15. We will treat the time constant τ in P∆(s) as uncertain parameter lying in the range
of 0.02 . . . 0.05. Suppose that the nominal value τ0 corresponds to the mid–range
value τ0 = 0.035, and τ = τ0 + ∆τ, where ∆τ is a real parameter varying between
−0.015 . . . + 0.015. The uncertain system P (s) = P0(s) · P∆(s) = s+15 · (τ s+1)1 2 can
be recasted with the following linear fractional transform in figure 14. Note that
Paug
'W
'W
diagonal uncertainty block
'
w z
g h
Figure 14: Structured uncertainty with an unknown time constant τ appearing twice.
the uncertainty block ∆ in figure 14 is diagonal with the same diagonal element ∆τ repeated twice. The reason is that the uncertain time constant τ appears twice in
the second order term P∆(s). The augmented plant Paug(s) will be of third order
with 3 inputs and 3 outputs.
Exercise : Calculate Paug(s) and show that the associated linear fractional transform yields F(Paug, ∆) = 5 s + 1· 1 ((τ0+ ∆τ)s + 1)2 (32) There are available software tools capable to directly define and handle systems with structured or unstructured uncertainty. Using the Robust Control toolbox of Matlab the example above can be entered as follows :
5 ---s + 1
>> tau = ureal(’tau’, 0.035, ’range’, [0.02, 0.05])
Uncertain Real Parameter: Name tau, NominalValue 0.035, Range [0.02 0.05]
>> Pdelta = tf(1, [tau, 1])*tf(1, [tau, 1])
USS: 2 States, 1 Output, 1 Input, Continuous System
tau: real, nominal = 0.035, range = [0.02 0.05], 2 occurrences
>> P = P0 * Pdelta
USS: 3 States, 1 Output, 1 Input, Continuous System
tau: real, nominal = 0.035, range = [0.02 0.05], 2 occurrences
>> bode(P)
which gives the family of Bode plot in figure 15.
−150 −100 −50 0 50 Magnitude (dB) 10−2 10−1 100 101 102 103 −270 −180 −90 0 Phase (deg) Bode Diagram Frequency (rad/sec)
Figure 15: Example : structured uncertainty with an unknown time constant τ .
In contrast to unstructured uncertainty, see figure 13, structured uncertainty leads to a feedback configuration figure 15 with a static diagonal block ∆. In addi-tion, the diagonal terms are real–valued, whereas in the unstructured case they are mostly complex–valued norm–bounded transfer functions ∆(s).
We disadvise from recasting highly structured parameter uncertainty as additive or multiplicative unstructured uncertainty, because this implies a high degree of con-servativeness. Indeed, the class of perturbations may become excessively large, and the resulting controller, if there is any complying with the robustness specifications is likely to show poor performance.
5
Formulation of the Standard H
∞Problem
In this section the controller design problem is formulated in the H∞ formalism.
The objective is to design a controller, which does not only have nominal stability and performance, but has this properties with all the plants represented by some uncertainty description. H∞–controller design was specially developped, to solve this problem in a systematic manner. As system which is stable with all the plants of the uncertainty set is called robustly stable. It has a robust performance, if the performance specifications are met for all the admissible plant behaviors.
The control system with controller and uncertainty model is shown in figure 16. In H∞–controller design, the H∞–norm of the mapping from w to z can be mini-mized. As a consequence the control problem has to be formulated in this formalism. The inputs w are typically reference or disturbance signals, whereas the outputs z can be the control error or the controller output. The H∞–controller design problem
Figure 16: Control system with uncertainty
cannot directly by solved in the structure of figure 16. Since performance specifi-cations and stability conditions can both be expressed as H∞–norm conditions on some transfer functions, there are two ways to simplify the control system of figure 16. Either the stability conditions are formulated in the same formalism as perfor-mance specifications, resulting in a structure as in figure 17(a), or the perforperfor-mance
specification is formulated similarly to the uncertainty description ∆p (see figure
17(b)). For unstructured uncertainties the structure of figure 17(a) is easier to go, but for structured uncertainties, only the structure in figure 17(b) leads to an ele-gant representation. The structured uncertainty problem is solved with µ-synthesis, which is beyond the scope of this introduction. Consequently, the first approach will be followed in the sequel.
(a) Robust Stability as norm condition (b) Performance as artificial plant uncer-tainty
Figure 17: Possible system representations
10−2 10−1 100 101 102
100 101 102
Figure 18: Performance Weighting Function
for additive uncertainty:
||W2C(I + P C)−1||∞ ≤ 1 (33)
for multiplicative uncertainty:
||W2P C(I + P C)−1||∞ ≤ 1 (34)
In a control system as shown in figure 19 the robust stability condition corre-sponds to the H∞–norm of the mapping from r to u for the additive case and from r to y for the multiplicative case.
System performance is usually specified by conditions on disturbance attenua-tion, i.e. on the H∞–norm of the mapping from d to y, or for reference tracking on the H∞–norm of r → e. For both mappings an acceptable performance is achieved,
if the following condition on the sensitivity function S = (I + P C)−1 is met:
||γW1(I + P C)−1||∞ ≤ 1 (35)
This condition is fulfilled, if S(jω) ≤ |W 1
1(jω)|. Consequently, a typical weighting
the sensitivity function to be zero at ω = 0. The parameter γ < 1 is used as an optimization parameter. The larger γ the better the disturbance attenuation.
Performance and robust stability can therefore be achieved, if the two conditions are combined to the following condition (mixed sensitivity approach):
Additive uncertainty: " γW1(I + P C)−1 W2,aC(I + P C)−1 # ∞ . (36) Multiplicative uncertainty: " γW1(I + P C)−1 W2,mP C(I + P C)−1 # ∞ . (37)
Figure 19: Control System for mixed Sensitivity Optimization
The block diagram representation of the mixed sensitivity problem is shown in 19. Here it becomes obvious, that the robust stability condition can be viewed as a mapping of signals.
A controller can be found by solving the following optimization problem: Additive uncertainty: max γ " γW1(s)(I + P C)−1 W2,a(s)C(I + P C)−1 # ∞ = 1, (38)
(Similarly for the multiplicative uncertainty)
With some matrix algebra, the equation (38) can be transformed into a lower linear fractional transformation F(P, C) as shown in figure 20. Therefore, the fol-lowing problem has to be solved:
Find a stabilizing controller C, for which:
||F(P, C)||∞:= ||P11+ P12C(I − P22C)−1P21||∞ = 1 (39)
Nowadays, various solutions to this problem are known. The two most important are state space methods based on the solution of two Riccati equation and the solution based on linear matrix inequalities (LMI). Special attention has to be payed on additional assumptions, that are imposed for the algorithms. Some of them will be treated in the next chapter.
6
A Glimpse on the H
∞State Space Solution
H∞–controller design problems can be formulated in different ways, but finally, the problem has to be brought to a representation as shown in figure 20. Its state space representation is:
˙x = Ax + B1w + B2u (40)
z = C1x + D11w + D12u (41)
y = C2x + D21w + D22u (42)
(43) The system matrices are usually represented as follows:
Gs= A ... B1 B2 · · · · C1 ... D11 D12 C2 ... D21 D22 . (44)
A closed optimal solution for the above general system is not yet published. For
the H∞problem a closed solution was first developped in [2] for the following special
case: Gs = A ... B1 B2 · · · · C1 ... 0 " 0 I # C2 ... h 0 I i 0 . (45)
In a design tool the general state space description of equation (44) is transformed into the representation of equation (45) by means of loop shifting [3]. The
matrices have full rank. This condition is usually violated, when weighting func-tions are strictly proper, i.e. have a zero D–matrix. To circumvent this problem, the weighting D-matrix can usually be set to a small value, without influencing the controller design.
The conditions for existence of a solution are: • (A, B2) is stabilisable and (C2, A) is detectable
• D12 and D21 must be of full rank
• "
A − jωI B2
C1 D12
#
has ful column rank for all ω
• "
A − jωI B1
C2 D21
#
has ful column rank for all ω
Another important aspect is that the H∞ problem must have a solution at
ω = ∞. An unappropriate weighting at ω = ∞ can lead to unsatisfactory con-troller designs. For a closed loop system with plant as in equation (44) the direct feedthrough term (gain at ω = ∞) is:
Dcl = D11+ D12(I − DcD22)−1DcD21 (46)
where Dc is the controller D-matrix.
The term D11 is modified with the controller Dc-matrix. This can only be done
to a limited extent, which is depending on the sizes of D12 and D21. Bounds are
documented in [3].
7
Limitation of H
∞Methods
In this section some of the limitations of H∞–controller design will be summarized. • The H∞–controller design methods offers powerful tools to solve various design
problems. Nevertheless H∞ performance measures are not always adequate
for the investigated design problem and although robustness and performance measures are combined in the design procedure, it does not really guarantee, that performance is robust with respect to plant uncertainty. Consequently
it was proposed to combine H∞ robustness measures with other performance
measures, for example measures similar to the LQR-design, the mixed H2/H∞ design. Also LMI (see chapter ’outlook’) offers many possibilities for ’mixed’ design problems.
the system itself (size of the A-matrix). The order of the system is the order of the plant to be controlled and the sum of the orders of all the weighting functions, see figure 19. As already mentioned in the section on uncertainty description, the weighting functions have to be of minimal order. The prob-lem of high order controllers can be diminished with order reduction methods. There are several order reduction methods available. These can be applied
either on plant before H∞–controller design or after design on the controller
itself. The designer should be cautious not to spoil the controller design with a radical order reduction. There are also suboptimal H∞–controller design algo-rithm which allow a direct design of a reduced order controller, but these are not currently available in the commercially available controller design tools, although a direct low order controller design is doubtless the way to go. • As it can be seen from figures 11 the uncertainty description is not tight in
the sense, that it incorporates a much larger set of plants than necessary. This leads to a conservative controller design, which might result in very poor closed loop performance. This problem is reduced, when a structured uncertainty description is used in conjuction with µ–synthesis (see Chapter ’Outlook’).
8
Outlook: µ Synthesis and LMI Methods
8.1 Structured Singular Values (SSV) and µ Synthesis
The standard H∞minimizes an H∞norm between input signal w and output signal
z. Often these signals are vector–valued (MIMO), as it is already the case for z in the mixed–sensitivity approach. In practice we are interested to individual transfer
functions between a scalar component wkand a scalar component zl. A large amount
of conservativeness is introduced in the design when optimizing an overall H∞–norm. The µ framework allows a more selective optimization related to structured un-certainty. A detailed description is out of the scope of this document. Basically the µ framework introduces a new norm based on structured singular values which is the new quantity to be minimized. The solution procedure is iterative (D–K iteration) and involves a sequence of minimizations, first over the controller K (holding the scaling variable D associated with the µ), and then optimizing over the scaling D (holding the controller K fixed). The D–K procedure is not guaranteed to converge neither to the global minimum nor to a local minimum of the µ value, but often works well in practice. It has been applied to a number of real–world applications with success. These applications include vibration suppression for flexible structures, flight control, chemical process control, and acoustic reverberation suppression in enclosures.
8.2 Linear Matrix Inequalities (LMI)
The canonical form of linear matrix inequality is any constraint of the form
M (v) = M0+ v1M1 + v2M2+ . . . + vnMn< 0 (47)
where v = [v1, . . . , vn] is a vector of unknowns called decision variables, and M0, . . . , Mn are given symmetric matrices. M (v) < 0 stands for negative definite, i.e. all eigen-values of M (v) are negative.
The scalar decision variables v1, . . . , vn are often related to unknown matrices in
control problems, e.g. quadratic Lyapunov functions V (x) = xT P x with P > 0.
Here the entries of the symmetric matrix P correspond to decision variables. It is common to express LMI’s in matrix form instead of the scalar formulation (47).
There are three generic LMI problems:
Feasibility problem: Find a solution v to the LMI system M (v) < 0. The set of all solutions is also called feasibility set. A simple example for an LMI feasibility problem is the determination of stability. The system ˙x = A x is
stable if there exist a Lyapunov function V (x) = xT P x > 0 with a negative
derivative ˙V = ATP + P A < 0. This turns out to be an LMI problem with
an unknown matrix P . Another frequent example is a state space system with bounded infinity norm. This turns out to be an LMI problem.
It is easy to show that the feasibility set of equation (47) is convex. Convexity has an important consequence: even though the optimization problem has no analytical solution in general, it can be solved numerically with a guaranteed convergence to the solution when one exists. This is in sharp contrast to general nonlinear optimization algorithms which may not converge towards the global optimum.
v1 v2 non-convex constraint convex constraint v1 v 2 Figure 21: Convexity
Linear objective minimization problem: Minimize the linear function cT v
sub-ject to the LMI constraint M (v) < 0.
Generalized eigenvalue minimization problem: Minimize λ subject to M (v) < λ B(v), B(v) > 0, and C(v) < 0.
Efficient15 interior–point algorithms [4] are available to solve these three generic
15
However the complexity of LMI computations can grow quickly with the problem order. For
example, the number of operations required to solve a standard Riccati equation is o(n3) where n
LMI problems. Many control problems and general design specifications can be formulated in terms of LMI. The main strength of LMI formulations is the ability to combine various convex design constraints or objectives in a numerically tractable manner [5] [6].
A non–exhaustive list of problems addressed by LMI techniques include the fol-lowing:
1. robust pole placement 2. optimal LQG control
3. robust H∞ control
4. multi–objective synthesis
5. robust stability of systems with structured parameter uncertainty (µ–analysis) It is fair to say the advent of LMI optimization has significantly influenced the direction of research in robust control. A widely–accepted technique for numerically solving robust control problems is to reduce them to LMI problems.
9
Conclusion
Robust control emerged around 1980, and the progress in theory and numerical algorithms during the last 25 years has been enormous. Efficient commercial and public domain software tools are available nowadays. It is possible to successfully use these tools without understanding the deepest details of the underlying theory. However, a minimum of theoretical knowledge is necessary, and as it is the case with
any complex scientific software tools16, a lot of practical experience is needed before
being able to solve real–world17 problems.
In robust control, specific reasons for this are the following: Modeling is a chal-lenging engineering task, and finding an estimation the modeling uncertainty needs some experience. Additionally, either control specifications are not entirely known
in the beginning, i.e. incomplete, or real–world specifications may be very complex18
to such an extent that no direct synthesis procedure exist. No matter which con-troller synthesis method is used it remains an iterative process which also needs some experience. In robust control, the user often needs to play around with frequency weighting functions in order to understand the performance/robustness trade–offs of his specific problem.
One of the main achievements in robust control might be the consciousness about the industrial importance of robustness. Generally speaking, system failure is not accepted in our society, and robustness considerations will remain very important.
16
e.g. tools for finite element modeling, or any other complex scientific tool
17= non–academic
A.1
Examples
A.1.1 Example 1
H∞–controller design will be demonstrated on the first order system with unstruc-tured additive uncertainty, already introduced in 4.1. The nominal plant model is a first order system, for which any closed-loop performance is achievable, if there were no model uncertainty. The uncertainty description is given by equation (22) and
for controller design the mixed sensitivity approach will be used (see (33))19. The
performance requirements are: zero steady-state error and maximum closed loop bandwidth. We will investigate, how model uncertainty limits closed loop band-width.
The nominal plant is:
P0(s) = 5
s + 1. (48)
In the mixed sensitivity approach, the following design problem is solved: max γ " γW1(s)(I + P C)−1 W2,a(s)C(I + P C)−1 # ∞ ≤ 1, (49)
For additive uncertainty, the weighting function is:
W2a(s) =
7.5s
(s + 1)(s + 15). (50)
What is an appropriate performance weighing W1(s)? To answer that question, one has to know, how the frequency response of a desirable sensitivity function
S(s) = (I + P C)−1 looks like. If the above norm condition of is met, there is also
h γW1(s)(I + P C)−1i ∞ ≤ 1, (51)
For scalar system it is easily seen, that h (I + P C)−1i ≤ h (γW1(jω))−1i , (52)
The sensitivity function is bounded by the inverse of the weighting function W1(s). Zero steady-state error is attained if W1(s) has a pole at ω = 0, i.e. if it has an integrator.
W1(s) =
1
s (53)
An unsuitable selection of W1(s) may lead to an unsolvable H∞–controller design problem. Remember that the sensitivity function has to meet the Bode integral
theorem (12). Consequently, also W1(s)−1 has to be in compliance with the integral
equation. The weighting (53) has the drawback, that there is now limit to possible resonance peaks of the sensitivity function. With an additional zero, which should be larger than the expected closed loop bandwidth, this drawback could be eliminated.
Furthermore, the H∞–problem has to be solvable at ω = ∞ and the technical conditions for solving the design problem, summarized in (5) have to be fulfilled.
To be able to solve the H∞–controller design problem, the mixed sensitivity problem has to be formulated as an LFT as shown in 22(a) and 22(b).
(a) System blockdiagram (b) LFT
Figure 22: System Blockdiagram This can be defined in MATLAB with the following m-file: gam=2.5; P=nd2sys(5,[1 1],1); W1=nd2sys(1,[1 0],gam); W1a=nd2sys([1 0],[1 16 15],7.5); systemnames = ’P W1 W1a’; inputvar = ’[w; u]’; outputvar = ’[W1; W1a; P]’; input_to_P = ’[u]’; input_to_W1 = ’[w-P]’; input_to_W1a = ’[u]’; sysoutname = ’add_sys_LF’; cleanupsysic = ’yes’; sysic
% now calculate the hinf controller
n_ctr=1;n_meas=1;gmin=1;gmax=10;tol=0.001;
[K_hin,clp] = hinfsyn(add_sys_LF,n_meas,n_ctr,gmin,gmax,tol);
After executing the m-file, which tries also to calculate the H∞–optimal controller, the following error message is obtained:
[a b1;c2 d21] does not have full row rank at s=0}
reason for the error message. z1 z(2a) · · · y = W1 ... −PW1 0 ... W2a · · I ... P " w u # (54)
We will see, that the message shows that, when setting the weighting functions, we didn’t concern about solvability of the H∞-Problem. Therefore, some more problems have to be expected!
First, let us have a closer look at the system matrix add sys LF, which represents the state space model of the LFT-plant:
Gs = −1 0 0 0 ... 0 ... 2.5 −2.2 0 0 0 ... −1.1 ... 0 0 0 −15 −7.7 ... 0 ... −3.0 0 0 0 −1 ... 0 ... −0.8 · · · · 0 0.9 0 0 ... 0 ... 0 0 0 −2.4 −0.6 ... 0 ... 0 · · · · 2.0 0 0 0 ... 1 ... 0 (55)
The pair (A, B2) must be stabilisable. The only unstable pole, due to the
inte-grator in the weighting function W1 is not stabilisable, because the matrix B2 has
a zero in the corresponding row. Equivalently, it can be seen in the block diagram (22(a)), that there is no mean to stabilize a possibly unstable transfer function W1.
Furthermore, D21 and D12 have to be of full rank. This is fullfilled for D21 but not
for D12. Finally, as indicated in the error message, one of the two rank conditions
is not met.
How can the design be improved, so that an H∞–solution exists? As it can be seen from (54) the above quantities are determined by the weighting functions W1
and W2a. The weighting functions W1 and W2a can be slightly modified, so that the
conditions are met. For the performance weight W1, the integrator is replaced with a stable pole close to the origin, i.e.
W1(s) = 1
s + 10−5 (56)
This causes no perfect integral action, but this can be achieved by a subsequent controller approximation.
With the chosen scaling W2a also the upper right block in (54), has a singular
plant transfer function or the model uncertainty description is modified to be strictly proper. It’s reasonable to modify the plant uncertainty description by adding a small zero to the transfer function. This causes only a neglectable effect to the uncertainty description.
W2a(s) = 0.0075s(s + 1000)
(s + 1)(s + 15) . (57)
The resulting m-file is: gam=2.5;
P=nd2sys(5,[1 1],1);
% gamma is defined in workspace W1=nd2sys(1,[1 0.00001],gam); W1a=nd2sys(conv([1 0],[1 1000]),[1 16 15],7.5/1000); systemnames = ’P W1 W1a’; inputvar = ’[w; u]’; outputvar = ’[W1; W1a; P+w]’; input_to_P = ’[u]’; input_to_W1 = ’[-w-P]’; input_to_W1a = ’[u]’; sysoutname = ’add_sys_LF’; cleanupsysic = ’yes’; sysic
% now calculate the hinf controller
n_ctr=1;n_meas=1;gmin=0.5;gmax=1;tol=0.001;
[K_hin,clp] = hinfsyn(add_sys_LF,n_meas,n_ctr,gmin,gmax,tol);
With this m-file, a controller is successfully calculated. The achieved value of the
H∞–norm is 0.5. The system clp is the closed loop system. Its frequency response is
shown in Figure 23. The upper Bode-diagram shows the contribution of the perfor-mance measure W1(s) ∗ S(s) to the H∞–norm. Obviously, the perforperfor-mance measure contributes the major part for ω < 5rad/s. Above that frequency the robustness condition, shown in the lower diagram, is dominant. When γ is maximized, the same behavior is observed.
The parameter γ is used to tune the controller. The larger, the more bandwidth is achieved. If γ > 25 there exist no solution to the H∞-problem. In the sequel, the design for γ = 2.5 and γ = 5 will be compared and it will become appearant, that it might not be optimal to completely maximize γ. We will investigate the resulting sensitivity function, gain and phase margin and the resulting controller frequency response.
−100 −50 0 To: Out(1) 90 180 To: Out(1) −100 −50 0 To: Out(2) 10−1 100 101 102 103 104 0 180 360 To: Out(2) Bode Diagram Frequency (rad/sec)
Magnitude (dB) ; Phase (deg)
Figure 23: H∞–solution
industrial control application, whereas the controller for γ = 2.5 has the shape of a PI–controller with additional low pass filter. Therefore, no practical problems will be expected. The control system with γ = 5 has another drawback: the open loop has quite a small roll-off after crossing over.
How does the control system operate for the worst case disturbance? To answer that question the open-loop with worst case disturbance can be analyzed, see Figure 27. For both designs, phase margin is sufficiently large and the open-loop in the high-gain freuquency range is similar to the design system.
Summary
The simple design example shows, that
• the unstructured uncertainty description limits the closed–loop bandwidth to the frequency range, where the plant is sufficiently well known.
• stable weighting functions are powerful instruments to achieve the required closed loop properties
−40 −30 −20 −10 0 Magnitude (dB) 10−1 100 101 102 103 104 −90 −45 0 Phase (deg) Bode Diagram Frequency (rad/sec) (a) γ = 2.5 −40 −30 −20 −10 0 10 Magnitude (dB) 10−1 100 101 102 103 104 −90 −45 0 Phase (deg) Bode Diagram Frequency (rad/sec) (b) γ = 5 Figure 24: Sensitivity function S(s)
−150 −100 −50 0 50 Magnitude (dB) 10−1 100 101 102 103 104 105 −180 −135 −90 Phase (deg) Bode Diagram
Gm = Inf dB (at Inf rad/sec) , Pm = 89.8 deg (at 5.26 rad/sec)
Frequency (rad/sec) (a) γ = 2.5 −80 −60 −40 −20 0 20 40 Magnitude (dB) 10−1 100 101 102 103 104 105 −180 −135 −90 −45 0 Phase (deg) Bode Diagram
Gm = Inf dB (at Inf rad/sec) , Pm = 125 deg (at 11 rad/sec)
−300 −200 −100 0 100 Magnitude (dB) 10−1 100 101 102 103 104 105 −360 −270 −180 −90 Phase (deg) Bode Diagram
Gm = 17.3 dB (at 19.6 rad/sec) , Pm = 61.9 deg (at 4.95 rad/sec)
Frequency (rad/sec) (a) γ = 2.5 −250 −200 −150 −100 −50 0 50 Magnitude (dB) 10−1 100 101 102 103 104 105 −360 −270 −180 −90 Phase (deg) Bode Diagram
Gm = 34 dB (at 107 rad/sec) , Pm = 72.1 deg (at 8.64 rad/sec)
Frequency (rad/sec)
A.1.2 Example 2
In this example, H∞–controller design with structured uncertainty will be demon-strated. The system shown in Figure 28 is a typical example for an industrial
rotational control problem. A DC-motor with inertia J1 drives a load inertia J2.
The positions of the two inertias are measured and the second inertia is controlled to a required position. The two inertia are coupled with an ideal spring, rotation is damped with viscous friction in the bearings. The electric circuit of the DC-motor is modeled as an RL-Element. Model uncertainty arises from changing load inertia, varying friction and changing resistance due to temperature changes in the motor. It is not sensible to assume that all model parameters are uncertain although this is the reality. Every uncertain parameter adds complexity to the controller design, par-ticularly if the controller is calculated with µ–synthesis. The following uncertainties will be modeled:
J2 = ¯J2(1 + ∆J2δJ2), c2 = ¯c2(1 + ∆c2δc2), R = ¯R(1 + ∆RδR) (58)
δJ2, δp2 and δRrepresent the possible, relative perturbations on the corresponding
parameters. Their range is [−1, 1].
Figure 28: Model for the rotational system
Modeling the system leads to the following differential equations:
L˙i = u − Ri − Φω1 (59)
Φi = J1ω1˙ + c1ω1+ k(ϕ1− ϕ2) (60)
k(ϕ1− ϕ2) = J2ω2˙ + c2ω2+ d (61)
d is a disturbance torque acting upon the load inertia. With some algebraic manipulations the equations are reordered as follows:
˙i = 1
˙ ω1 = 1 J1(−c1ω1− k(ϕ1− ϕ2) + Φi) (63) ˙ ω2 = 1 J2(k(ϕ1− ϕ2) − c2ω2− d) (64)
For solving the structured uncertainty design problem, the system must be trans-formed into the form shown in Figure 13. This can be a tedious task if the procedure is not formalized in such a way, that it can be done with a suitable tool. A closer look to the above equation reveals, that the uncertain parameters are either factors on variables, e.g. Ri and c2ω2, or the inverse of the parameter is a factor on an
algebraic term, e.g. J12(k(ϕ1 − ϕ2) − c2ω2 − d). The idea to formalize the model
construction process is, to define new variables for the algebraic terms and to repre-sent the uncertain parameter as LFT models. Afterwards a CACSD-Tool (CACSD: Computer aided control system design) can interconnect the model an build its state space representation.
The term J12 is represented as an upper LF T in δJ2 as follows:
1 J2 = 1 ¯ J2(1 + ∆J2δJ2) (65) = 1¯ J2 − ∆J2¯ J2 δJ2(1 + ∆J2δJ2) −1 = F(MJ2, δJ2) MJ2 = " −∆J2 1 ¯ J2 −∆J2 1 ¯ J2 #
The term c2 = ¯c2(1 + ∆c2δp2) is represented as an upper LF T in δp2 as follows:
c2 = F(Mc2, δc2), Mc2 = " 0 c2¯ ∆c2 c2¯ # (66)
and R = ¯R(1 + ∆RδR) is represented as an upper LF T in δR as follows:
R = F(MR, δR), MR = " 0 R¯ ∆R R¯ # (67) The LFTs block diagram are shown in Figure 29. In the figure also input variables are defined, if necessary. All together, the system model is:
Figure 29: LFT of uncertain parameters ˙ ω1 = −1 J1c1ω1− 1 J1kϕ1+ 1 J1kϕ2+ Φi ˙ω2 = pJ2 pJ2 = F(MJ2)fJ2 fJ2 = k(ϕ1− ϕ2) − pc2 − d pc2 = F(Mc2)ω2
It’s state space representation is: ˙i ˙ω1 ˙ω2 ˙ ϕ1 ˙ ϕ2 = 0 −L1Φ 0 0 0 Φ −J11c1 0 −J11k J11k 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 i ω1 ω2 ϕ1 ϕ2 + 1 L 0 − 1 L 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 u d pr pJ2 pc2 ϕ1 ϕ2 ω2 i fJ2 = 0 0 0 1 0 0 0 0 0 1 0 0 1 0 0 1 0 0 0 0 1 0 0 k −k i ω1 ω2 ϕ1 ϕ2 + 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 −1 0 0 −1 u d pr pJ2 pc2 (69) Together with the system equations (69) the plant is now completely defined. We let MATLAB calculate the interconnections of all the subsystems. In Figure 31 the build process is visualized. In the variable ’systemnames’ all block are specified, the system output names are listed in the variables ’inputvar’ and ’outputvar’ and the interconnection are defined with ’input to . . . ’ variables. The numerical parameter values are documented in table 1
The resulting set of plant frequency responses are drawn in Figure 30.
name nominal variance J1 0.1 kg m2 0 J2 1.5 kg m2 50% c1 0.002 N ms/rad 0 c2 0.003 N ms/rad 10% k 100 N m/rad 0 R 18Ω 10% L 2.1 10−3H 0 Φ 0.1 N m/A 0
Table 1: Parameter values
−200 −150 −100 −50 0 50 100 Magnitude (dB) 10−3 10−2 10−1 100 101 102 103 −450 −360 −270 −180 −90 Phase (deg) set of plants Frequency (rad/sec) (a) u to ϕ1 −200 −150 −100 −50 0 50 100 Magnitude (dB) 10−3 10−2 10−1 100 101 102 103 −225 −180 −135 −90 −45 0 Phase (deg) set of plants Frequency (rad/sec) (b) u to ϕ2
Figure 30: Closed-loop frequency response
measurements are corrupted with measurement noise and the plant is disturbed with torque changes d on the second inertia. Performance outputs are the control error and controller output u, both weighted with a suitable transfer function.
Again, one has to be very careful to define a sensible H∞–optimization problem, i.e. the problem has to be well defined for all frequencies, especially at ω = ∞.
Technically, this follows from the full rank condition on the matrices D12 and D21.
Consequently, the mapping from any input to the two controller input must have a direct feed-through term of rank two. Both, the perturbation inputs and the torque disturbance d have zero direct feed-through terms to the position measurement. The
reference signal r and the measurement noise n1 and n2 can contribute to a full rank
matrix D12, if the measurement noise weightings are chosen to be strictly propper.
This becomes obvious, if the control system is drawn as an LFT as shown in Figure 33. A full rank matrix D21, which is the direct feed-through term from the control
signal u to the system outputs, is guaranteed, if the weighting Wu is strictly proper.
Figure 31: System model
inevitable measurement noise, the actuator will be heavily stressed and will not have a large life-time. As a remedy, the measurement noise weighting function offer the possibility to add high frequency content to the measurements spectra. The spectra of load disturbances are modeled with the weighting Wd. This physically motivated weighting introduces low frequency disturbances into the system.
Disturbance attenuation and tracking error are tuned with the control error
weight We. The function will be similarly to W1 of example 1. With Wu
closed-loop bandwidth can be influenced, because it can be used to limit controller gain in around the crossing-over frequency.
The weight are chosen as follows:
We = 0.085 (s + 10)
s + 10−5
Wd = 0.000018 (s + 1)
Figure 32: Control structure Wϕ1 = 0.003 (s + 1) s + 100 Wϕ2 = Wϕ2 Wu = 0.1s s + 100 (71) The frequency responses are shown in Figure 34.
Now, all is defined for the controller design. In MATLAB, a system can be build according to Figure 33 and an H∞–controller can be calculated. If the block diagonal structure of the uncertainty matrix ∆ is not taken into account, the minimal value of the H∞-Norm is 15.9 and the resulting control system is unstable. This shows, that for structured uncertainties, the simple H∞–approach is not a good choice. To circumvent the problem µ-synthesis was developed. As described in 8.1 this involves optimization of the H∞-Norm over all possible frequency dependent scalings of the structured uncertainty ∆. Using D-K-Iteration, the controller, described in the se-quel is obtained.
The controller frequency response is shown in Figure 35. The mapping of the control
error r − ϕ2 to the input u is shown on the left. On the right the frequency response
of ϕ1 to u drawn. The controller is of order 22 and exhibits large gain at frequency
above 1 rad/s. The frequency responses cannot be easily be approximated with a simple PIDT1-controller. The closed-loop frequency responses from the setpoint r
to ϕ1 and ϕ2 can be analyzed in Figure 36 and the corresponding step responses are
in Figure 37.
Analysis of the closed-loop performance shows, that the attained bandwidth is not very large. This is due to the large controller gain, necessary to achieve a
cross-ing over frequency above 2 rad/s. Due to the control signal weight Wu this can not
become arbitrarily large. In order to achieved larger bandwidth, the noise
weight-ings Wn or Wu have to be relaxed.
10−4 10−2 100 102 104 −100 −90 −80 −70 −60 −50 −40 −30 W d 10−4 10−2 100 102 104 −40 −20 0 20 40 60 W e 10−4 10−2 100 102 104 −100 −90 −80 −70 −60 −50 W
phi1 and Wphi2
10−4 10−2 100 102 104 −140 −120 −100 −80 −60 −40 −20 W u
Figure 34: Weighting functions
mat_c2=[0 c2;Dc2 c2]; gam=2.5;
systemnames = ’P mat_R mat_J2 mat_c2’; inputvar = ’[uR; uJ2; uc2; d; u]’;
input_to_P = ’[u; d; mat_R(2); mat_J2(2); mat_c2(2)]’;
input_to_mat_R = ’[uR; P(4)]’; %P(4) is current i
input_to_mat_J2 = ’[uJ2; P(5)]’; %P(5) is fJ2 input_to_mat_c2 = ’[uc2; P(3)]’; %P(3) is omega_2
outputvar = ’[mat_R(1); mat_J2(1); mat_c2(1); P(1); P(2)]’;
%Phi2 for performance, all disturbance ’outputs’, phi1 and phi2 for control sysoutname = ’Ex2_Plant_LF’;
cleanupsysic = ’yes’; sysic}
M-File to define control system with weghtings % now calculate the hinf controller system gam = 0.085; W_e=nd2sys([1 10],[1 0.00001],gam); W_d=nd2sys(0.0018*[0.01 0.01],[1 0.001]); W_phi1=nd2sys(0.003*[1 1],[1 100]); W_phi2=W_phi1; W_u=nd2sys([0.1 0],[1 100]);
systemnames = ’Ex2_Plant_LF W_e W_d W_phi1 W_phi2 W_u’; inputvar = ’[uPert{3}; dw; n1; n2; r; u]’;
input_to_Ex2_Plant_LF = ’[uPert; W_d; u]’; input_to_W_e = ’[r-Ex2_Plant_LF(5)-W_phi2]’; input_to_W_d = ’[dw]’;
input_to_W_phi1 = ’[n1]’; input_to_W_phi2 = ’[n2]’; input_to_W_u = ’[u]’;
outputvar = ’[Ex2_Plant_LF(1:3); W_u; W_e; r-Ex2_Plant_LF(5)-W_phi2; Ex2_Plant_LF(4)+W_phi1]’; sysoutname = ’Ex2_Sys_LF’;
cleanupsysic = ’yes’; sysic
−20 0 20 40 60 80 100 From: In(1) To: Out(1) 100 −360 −180 0 180 360 540 To: Out(1) From: In(2) 100 Bode Diagram Frequency (rad/sec)
Magnitude (dB) ; Phase (deg)
Figure 35: Controller frequency response
% now calculate the hinf controller system DK_DEF_NAME = ’dk_mds’;
dkit
K_mu = k_dk3mds;
% Analysis with nominal plant
Ex2_Plant_nom=sel(Ex2_Plant_LF, 4:5, 4:5); figure(2), clf, bode_dm(K_mu,omega) systemnames = ’Ex2_Plant_nom K_mu’; inputvar = ’[dw; n1; n2; r]’;
input_to_Ex2_Plant_nom = ’[dw; K_mu]’;
input_to_K_mu = ’[r-Ex2_Plant_nom(2)-n2; Ex2_Plant_nom(1)+n1]’; outputvar = ’[Ex2_Plant_nom(1:2); K_mu]’;
sysoutname = ’Ex2_Closed_Loop’; cleanupsysic = ’yes’;
sysic
M-File with parameter for µ-controller design NOMINAL_DK = Ex2_Sys_LF;
NMEAS_DK = 2; NCONT_DK = 1;
BLK_DK = [-1 1; -1 1; -1 1; 4 2] OMEGA_DK = logspace(-2, 3,100);
AUTOINFO_DK = [1 3 1 4*ones(1, size(BLK_DK,1))]; NAME_DK = ’mds’;
−150 −100 −50 0 50 Magnitude (dB) 10−2 10−1 100 101 102 −450 −360 −270 −180 −90 0 Phase (deg)
set of closed loop systems
Frequency (rad/sec) (a) r to ϕ1 −100 −80 −60 −40 −20 0 20 Magnitude (dB) 10−2 10−1 100 101 102 −360 −270 −180 −90 0 Phase (deg)
set of closed loop systems
Frequency (rad/sec)
(b) r to ϕ2
Figure 36: Closed-loop frequency response
0 2 4 6 8 10 12 14 0 0.2 0.4 0.6 0.8 1 1.2 1.4 Step Response Time (sec) Amplitude (a) r to ϕ1 0 2 4 6 8 10 12 14 0 0.2 0.4 0.6 0.8 1 1.2 1.4 Step Response Time (sec) Amplitude (b) r to ϕ2