Springer Adavanced textbooks in control and Signal Processing
Robust and Adaptive Control with Aerospace Applications
The Solutions Manual
Eugene Lavretsky, Ph.D., Kevin A. Wise, Ph.D.
2/9/2014
The solutions manual covers all theoretical problems from the textbook and discusses several simulation-oriented exercises.

Chapter 1

Exercise 1.1. Detailed derivations of the aircraft dynamic modes can be found in many standard flight dynamics textbooks, such as [1]. Further insights can be obtained through approximations of these modes and their dynamics using time-scale separation properties of the equations that govern fight dynamics [3].

The time-scale separation concept will now be illustrated. Set control inputs to zero and change order of the states in (1.7) to: . Then the longitudinal dynamics can be partitioned into two subsystems:

or equivalently,

For most aircraft, their speeds are much greater than the vertical force and moment sensitivity derivatives due to speed, and so: . Also and so: . These assumptions are at the core of the time-scale separation principle: The aircraft fast dynamics (the short-period) is almost independent and decoupled of the vehicle slow dynamics (the phugoid). With , the short-period dynamics are:

The short-period characteristic equation is:

Comparing this to the second order polynomial, , gives the short-period natural frequency and the damping ratio.

For open-loop stable aircraft, , which allows for further simplification of the vehicle short-period modes.

Approximations for the phugoid dynamics can be derived by setting the short-period dynamics to zero and computing the remaining modes. This is often referred to as the “residualization of fast dynamics”.

The phugoid dynamics approximation takes the form , or equivalently

Explicit derivations for the phugoid mode natural frequency and damping ratio can be found in [3].

Exercise 1.3. Similar to Exercise 1.1 approach, based on the time-scale separation principle, can also be applied to the lateral-directional dynamics (1.29) to show that the dynamics (1.30) represent the “fast” motion and are comprised of the vehicle roll subsidence and the dutch-roll modes. The slow mode (called the “spiral”) has the root at the origin. The reader is referred to [1], [2], and [3] for details.

Chapter 2

Exercise 2.1. Same as Example 2.1.

Exercise 2.2. Scalar system is controllable. Use (2.38).

The Riccati equation is with boundary condition .

From integral table

The closed loop block diagram is

Exercise 2.3. For this problem we use the algebraic Riccati equation (2.45) to solve for the constant feedback gain matrix. From the problem set up

Check controllability (2.52) for the system: .

Check observability of the unstable modes through the penalty matrix (2.53) and (2.54) for the system. Factor into square roots (2.53): Check controllability (2.52) for the system: . Using (2.54), gives . Substituting the problem data into the ARE (2.45), yields: , and therefore:

Exercise 2.4. Use Matlab.

Exercise 2.5. For this problem we use the algebraic Riccati equation (2.45) to solve for the constant feedback gain matrix. From the problem set up

.

Check controllability (2.52) for the system: .

Check observability of the unstable modes through the penalty matrix (2.53) and (2.54) for the system. Factor into square roots (2.53): Check controllability (2.52) for the system: .

Using (2.54): .

The closed loop system matrix is

Exercise 2.6. . We answer this problem using (2.85). When well posed the LQR problem guarantees a stable closed loop system. When the overall penalty on the states goes to zero. From (2.85) , so the closed loop poles will be the stable zeros of , where is the open loop characteristic polynomial. If any open loop poles in are unstable, they are stable in .

When the overall penalty on the control goes to zero. This creates a high gain situation. From (2.89), some of the roots will go to infinity along asymptotes. Those that stay finite will approach the stable transmission zeros of the transfer function matrix . These finite zeros shaped by the matrix control the dynamic response of the optimal regulator.

Exercise 2.7. 1) The HJ equation is . Substituting the system data into the equation, gives

. Substitute this back into to form .

,

with boundary conditions .

2) If we try then

. Substitute back into the HJ equation.

Group terms:

.

We want this to hold for all . Get three equations inside the parentheses. To solve for the boundary conditions, expand and equate coefficients.

Chapter 3

Exercise 3.1. a) The suspended ball plant model is . The open loop eigenvalues are: , Since the model is in controllable canonic form, we see that it is controllable. The state feedback control law is which has two elements in the gain matrix. The closed loop system using the state feedback control is .

The poles are to be placed at -1/2, -1, which gives a desired closed loop characteristic polynomial . Equate the coefficients with the gains:

b) Here we need to design a full order observer that has poles at -4, -5. The output is defined to be . .An observability test shows the system is observable with this measurement.

A full order observer has the form

The poles of the observer, , are to be placed at -4, -5.

.

Using observer feedback for the control , yields

where , . Connecting the plant and controller to form the extended closed loop system, gives

Substituting the matrices to form , results in

.

c) For the reduced order observer, we will implement a Luenberger design that has the form . Choose the matrix to make the matrix nonsingular. Define . Then the reduced order observer matrices and control law are given by:

Where is the reduced order observer gain matrix. First we need :

Substituting into the observer matrices yields

The problem asks to place the observer pole at -6. Thus which gives and . So, . To form the state estimate we use . The control is where is computed from part c).

To form the controller as a single transfer function, take the Laplace transform and combine the above expressions. The block diagram showing the plant and controller is

Exercise 3.2. Use file Chapter3_Example3p5.m to solve this problem.

Exercise 3.3. Use file Chapter3_Example3p5.m to solve this problem.

Exercise 3.4. Use file Chapter3_Example3p5.m to solve this problem.

Chapter 4

Exercise 4.1. Use file Chapter4_Example4p5.m to solve this problem.

Exercise 4.2. Use file Chapter4_Example4p5.m to solve this problem.

Exercise 4.3. Use file Chapter4_Example4p5.m to solve this problem.

Chapter 5

Exercise 5.1. The following code will complete the problem:

% Set up frequency vector

w = logspace(-3,3,500);

% Loop through each frequency and compute the det[I+KH]

% The controller is a constant matrix so keep it outside the loop

K = [ 5. 0.

0. -10. ];

x_mnt = zeros(size(w));% pre-allocate for speed

x_rd = zeros(size(w));

x_sr = zeros(size(w));

% The plant is in transfer function form.

% Evaluate the plant at each frequency

for ii=1:numel(w),

s = sqrt(-1)*w(ii);

d_h = s*(s+6.02)*(s+30.3);

H = [ 3.04/s -278/d_h ;

0.052/s -206.6/d_h ];

L = K*H;

rd = eye(2)+L;

sr = eye(2)+inv(L);

x_mnt(ii) = det(rd);

x_rd(ii) = min(svd(rd));% this is sigma_min(I+L) since a scalar

x_sr(ii) = min(svd(sr));% this is sigma_min(I+invL) since a scalar

end

% Compute the min(min(singluar values))

rd_min = min(x_rd);

sr_min = min(x_sr);

% For part b) we need to compute the singular value stability margins

neg_gm = 20*log10( min([ (1/(1+rd_min)) (1-sr_min)])); % in dB

pos_gm = 20*log10( max([ (1/(1-rd_min)) (1+sr_min)])); % in dB

pm = 180*(min([2*asin(rd_min/2) 2*asin(sr_min/2)]))/pi;% in deg

To plot the multivariable Nyquist results, plot the real and imaginary components of x_mnt and count encirclements.

We see no encirclements.

b) Plot the minimum singular values of and versus frequency, converting to dB.

The singular value stability margins are computed using Eq. (5.53) and (5.54).

, . The singular value stability margins are: GM = [-5.2348 4.2746] dB, PM = +/- 44.4 deg.

Exercise 5.2. a) Neglect . From figure write loop equations and form ,

where should be the negative of the closed loop transfer function at the plant input loop break point. The state space model is not unique. Here we choose .

b) For stability we need the pole in the transfer function to be stable. Thus .

c) From equation (5.92) we plot :

d) The small gain theorem (5.92) says that . The above plot shows that as long as this will be satisfied. If we compute the closed loop transfer function from command to output in problem figure i), we have

As long as , the uncertainty cannot create a negative coefficient on the gain in the denominator.

Exercise 5.3. a) Populate the problem data into the plant (5.8) and controller (5.18). Then use (1.42) to form the closed loop system.

% Pitch Dynamics

Vm = 886.78;

ZapV = -1.3046; ZdpV = -0.2142;

Ma = 47.7109; Md = -104.8346;

Ka = -0.0015; Kq = -0.32;

az = 2.0; aq = 6.0;

w = logspace(-3,3,500);

t = 0.:0.01:2.;

% Plant states are AOA (rad) q (rps)

% Input is fin deflection (rad)

% Output is Accel Az (fps) and pitch rate q (rps)

A = [ ZapV 1.; Ma 0.];

B = [ZdpV; Md];

C = [Vm*ZapV 0.; 0. 1.];

D = [Vm*ZdpV; 0.];

% Controller uses PI elements to close the pitch rate loop and the Accel

% loop

Ac = [ 0. 0.; Kq*aq 0.];

Bc = [ Ka*az 0.; Ka*Kq*aq Kq*aq];

Cc = [ Kq 1.];

Dc = [ Ka*Kq Kq];

% Form closed loop system

[kl,kl]=size(D*Dc); Z=inv(eye(kl)+D*Dc);

[kl,kl]=size(Dc*Z*D);EE=eye(kl)-Dc*Z*D;

[kl,kl]=size(Z*D*Dc);FF=eye(kl)-Z*D*Dc;

Acl=[(A-B*Dc*Z*C) (B*EE*Cc);

(-Bc*Z*C) (Ac-Bc*Z*D*Cc)];

Bcl=[(B*EE*Dc);

(Bc*FF)];

Ccl = [(Z*C) (Z*D*Cc)];

Dcl=(Z*D*Dc);

% Step Response

y=step(Acl,Bcl,Ccl,Dcl,1,t);

az = y(:,1);

q = y(:,2);

b)

% Break the loop at the plant input

A_L = [ A 0.*B*Cc; -Bc*C Ac];

B_L = [ B; Bc*D];

C_L = -[ -Dc*C Cc]; % change sign for loop gain

D_L = -[ -Dc*D];

theta = pi:.01:3*pi/2;

x1=cos(theta);y1=sin(theta);

[re,im]=nyquist(A_L,B_L,C_L,D_L,1,w);

L = re + sqrt(-1)*im;

rd_min = min(abs(ones(size(L))+L));

sr_min = min(abs(ones(size(L))+ones(size(L))./L));

The singular value stability margins are computed using Eq. (5.53) and (5.54).

% Compute singluar value margins

neg_gm = 20*log10( min([ (1/(1+rd_min)) (1-sr_min)])); % in dB

pos_gm = 20*log10( max([ (1/(1-rd_min)) (1+sr_min)])); % in dB

pm = 180*(min([2*asin(rd_min/2) 2*asin(sr_min/2)]))/pi;% in deg

Min Singular value I+L = 0.90921. Min Singular value I+inv(L) = 0.75411. Singular value gain margins = [-12.1852 dB, +20.8393 dB ]. Singular value phase margins = +/-44.3027 deg.

c) From Figure 5.23, we want to model the actuator using an uncertainty model at the plant input : . Note that we have a negative sign on the summer, which is different from Figure 5.23. The modified block diagram would be:

The problem requires to model the actuator using a first order transfer function . We equate these and solve for the uncertainty:

d) Form the analysis model where the uncertainty is from part c). The matrix from (5.70) can be easily modified here (due to the negative feedback). It is derived as follows:

e) Here we pick a time constant for the actuator transfer function in part c) and plot . For this problem , since is a scalar, and we can reuse the result from b).

From the figure we see that an actuator with time constant of 0.08 sec overlaps (red curve).

Exercise 5.4. Matlab code from example 5.2 can be used here. The Bode plots:

The Nyquist curve:

and singular value plots.

Exercise 5.5. Form the closed loop system model using (1.42).

Use (5.72) through (5.81) to isolate the uncertain parameters in and form the matrices to build .

% Build State space matrices for M(s)

[nxcl,~]=size(Acl);

E1 = 0.*ones(nxcl,nxcl);

E1(:,1) = Acl(:,1);

E1(2,1) = 0.;

E1(3,1) = 0.;

[U1,P1,V1]=svd(E1);

b1=sqrt(P1(1,1))*U1(:,1);

a1=sqrt(P1(1,1))*V1(:,1).';

E2 = 0.*ones(nxcl,nxcl);

E2(:,3) = Acl(:,3);

E2(2,3) = 0.;

E2(3,3) = 0.;

[U2,P2,V2]=svd(E2);

b2=sqrt(P2(1,1))*U2(:,1);

a2=sqrt(P2(1,1))*V2(:,1).';

E3 = 0.*ones(nxcl,nxcl);

E3(2,1) = Acl(2,1);

[U3,P3,V3]=svd(E3);

b3=sqrt(P3(1,1))*U3(:,1);

a3=sqrt(P3(1,1))*V3(:,1).';

E4 = 0.*ones(nxcl,nxcl);

E4(2,3) = Acl(2,3);

[U4,P4,V4]=svd(E4);

b4=sqrt(P4(1,1))*U4(:,1);

a4=sqrt(P4(1,1))*V4(:,1).';

% M(s) = Cm inv(sI - Am) Bm

Am=Acl;

Bm=[b1 b2 b3 b4];

Cm=[a1;a2;a3;a4];

Using the model for compute the structure singular value and the small gain theorem bound. Extract the minimum value of and .

Chapter 6

Exercise 6.1. Use file Chapter6_Example6p1_rev.m to solve this problem.

Exercise 6.2. Use file Chapter6_Example6p2.m to solve this problem.

Exercise 6.3. Use file Chapter6_Example6p3.m to solve this problem.

Chapter 7

Exercise 7.2. Substituting the adaptive controller

and the reference model into the open-loop roll dynamics , gives the closed-loop system (7.28). To derive (7.29), use in the error dynamics (7.18), and in the adaptive laws (7.24). Since the system unknown parameters are assumed to be constant, the second and the third equations in (7.29) immediately follow. The stabilization solution (7.30) is a special case of (7.28) when the external command is set to zero.

Chapter 8

Exercise 8.2. The trajectories of , starting at , can be derived by direct integration of the system dynamics on time intervals where the sign of remains constant: . Suppose that for some . Then equating the left hand side of the trajectory equation to zero, gives . Multiplying both sides by , results in , and so , which implies that any two solutions with the same value of become zero at the same time . Finally, it is evident that all solutions are discontinuous at any instant in time when , and thus the solutions are not continuously differentiable.

Exercise 8.3. Rewrite the system dynamics as . Since

then , and consequently is the system unique trajectory, with the initial condition . The system phase portrait is easy to draw. It represents a monotonically strictly increasing cubic polynomial . These dynamics are locally Lipschitz. Indeed, since then , for any with , where is a finite positive constant, that is the system dynamics are locally Lipschitz. However, the dynamics are not globally Lipschitz since is unbounded.

Exercise 8.4. Suppose that the scalar autonomous system has a unique non-monotonic trajectory . Then there must exist a finite time instant where . Therefore for all , is constant, which in turn contradicts the argument of the trajectory being non-monotonic.

Exercise 8.5. If then the system has the unique isolated equilibrium . Otherwise, the equilibrium set of the system is defined by the linear manifold, implying an infinite number of solutions.