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γ
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
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.
19The multiplicative case can similarly be solved as exercise
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}
Despite the very convenient controller design tools, it is now necessary to derive an algebraic expression for the system, shown in 22(b), to be able to understand the
reason for the error message.
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 =
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 D-matrix, i.e. D12. There are two potential remedies to fix the problem: either the
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 performance 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.
The comparison of the two design show the following: with γ = 5 the closed loop bandwidth is increased. The cost of this is the resonance peak in the sensitivity function. The is due to the bode integral relation, see also Figure 6. The larger bandwidth is achieved with a controller that show double differential action, as it can be seen in Figure 26. Such a controller will most likely not be successful in an
−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
• special attention has to be given to the fact, that the H∞–problem is well defined for all frequencies, especially at ω = 0 and ω = ∞. This can usually be achieved with minor modifications which usually have a neglectable impact on the final result.
−40
Figure 24: Sensitivity function S(s)
−150
−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)
(b) γ = 5
Figure 27: Margins for worst case disturbance