LMIs in Control/Applications/Mixed H2 and Hinf Satellite Attitude Control

The System


Using the same formulation of the problem as in the H2 and Hinf feedback applications (linked below) the system is of the form:


This formulation comes from the process described in Duan, page 371-373, steps 12.1 to 12.8.

  • Tc and Td are the flywheel torque and the disturbance torque respectively.
  • Ix, Iy, and Iz are the diagonalized inertias from the inertia matrix Ib.
  • ω0 = 7.292115 x 10-5 rad/s is the rotational angular velocity of the Earth, and θ, Φ, and ψ are the three Euler angles.

The LMI below utilizes the state space representation of the above system, which is described on the H2 and Hinf pages as well:



  • Iab = Ia - Ib, Iabc = Ia - Ib - Ic
  •  , x = [q q']T , M = diag(Ix, Iy, Iz), zinf = 10-3 M q''', z2 = q

These formulations are found in Duan, page 374-375, steps 12.10 to 12.15.

The Data


Data required for this problem include the moment of inertias and angular velocities of the system. Knowledge of expected disturbances d would be beneficial.

The Optimization Problem


There are two requirements of this problem:

  • Closed-loop poles are restricted to a desired LMI region
    • Where  , L and M are matrices of correct dimensions and L is symmetric
  • Minimize the effect of disturbance d on output vectors z2 and zinf.

Design a state feedback control law

u = Kx

such that

  1. The closed-loop eigenvalues are located in  ,
    • λ(A+BK)  
  2. That the H2 and Hinf performance conditions below are satisfied with a small   and  :

The LMI: Mixed H2/Hinf Feedback Control




  • trace(Z) <  
  • AX + B1W + (AX + B1W)T + BBT < 0

Gives a set of solutions to  , and W, Z and X > 0, where   is equal to  .



Once the solutions are calculated, the state feedback gain matrix can be constructed as K = WX-1, and   =  



This LMI can be translated into MATLAB code that uses YALMIP and an LMI solver of choice such as MOSEK or CPLEX.