# \(H_{2}/H_{\infty}\) Output Tracking Control with a Performance Compensator for Aeroengines
## 1 Introduction  
An aeroengine is a complicated aerothermodynamic system working in harsh environments. It is important to make aeroengines operate reliably in the presence of external disturbances, measurement noises, and modeling uncertainties [1; 2]. Therefore, robust performance of the closed-loop system should be considered in the design of the controller. Robust control has been applied to aeroengines since the 1970s since it can attenuate the effect of the uncertainties on system performance without destabilizing the system [3; 4; 5; 6]. As a sub-field of robust control, \(H_{\infty}\) control is an important, robust approach to attenuate the effect of external disturbances [7]. Due to the lack of the consideration on the linear quadratic performance, \(H_{\infty}\) control is usually combined with \(H_{2}\) control to obtain good transient behaviors for the system [8; 9; 10]. \(H_{2}/H_{\infty}\) control is an ideal approach to maintain the balance between the transient tracking performance and the robust performance for the control of aeroengines [11]. Most robust controllers are designed as a state regulator or a state tracker [12; 13; 14]. As for the traditional state tracker, the desired thrust of aeroengines is obtained in an indirect way by controlling the state. By contrast, it is more effective to design an output tracking controller [15; 16]. The design of the tracking controller aims at minimizing the output tracking error. To achieve this objective, there are two mainstream approaches: linear quadratic (LQ) tracker and robust tracker. LQ tracker is a well-established traditional method based on optimal control, and the controller consists of a feedback controller (i.e., nominal controller) and a feedforward controller (i.e., compensator), see [17; 18]. However, the solution is obtained by calculating the recursive algebraic Riccati equations (ARE) and auxiliary differential equations, and thereby the reference is assumed to be knownin advance, which restricts its practical application [18; 19]. A solution for this problem is to design an online controller calculated without knowing the reference ahead of time. Robust tracker is usually designed based on robust control for a certain known reference. the output tracking error is augmented into the state of a new dynamic system, and thereby the output tracking problem becomes the stabilization of the constructed dynamic system [20; 21]. In control design, the variation of the reference over time is regarded as a power-bounded uncertainty of the system, and the robust performance and the stability of the system are guaranteed. However, the robust tracker may have poor tracking performance when the reference is quite different from the designed reference. Therefore, a compensator is required to deal with this problem. Aiming at dealing with the above problems of LQ tracker and robust tracker, a novel \(H_{2}/H_{\infty}\) controller, which consists of a nominal controller and a compensator as LQ tracker does, is designed. Concretely, based on \(H_{2}/H_{\infty}\) control theory, the nominal controller is designed at first for a step reference. Different from the robust tracker in [21], the proposed nominal controller is derived from the game algebraic Riccati equation (GARE) so as to obtain a compensator. Then, the compensator is calculated online by the practical reference to improve the transient tracking performance. Meanwhile, the solvability of the compensator is guaranteed for stable reference. Moreover, due to the robust design, the proposed controller can deal with the tracking control for bounded unstable reference by regarding the reference as a stable reference with a power-bounded disturbance. The remainder of this paper is organized as follows. Section 2 formulates the robust tracking problem. Section 3 presents the main theorem for the design of a robust nominal controller. Afterwards, the performance compensator are introduced in Section 4.